solana-messenger-sdk 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { buildSendMessageInstruction, buildRegisterInstruction, buildUpdateEncryptionKeyInstruction, buildDeregisterInstruction, buildSetMinFeeInstruction, buildInitializeConfigInstruction, buildUpdateConfigInstruction, buildMigrateRegistryInstruction, } from "./instructions";
2
- export { deriveRegistryPda, deriveConfigPda } from "./pda";
1
+ export { buildSendMessageInstruction, buildRegisterInstruction, buildUpdateEncryptionKeyInstruction, buildDeregisterInstruction, buildSetMinFeeInstruction, buildInitializeConfigInstruction, buildUpdateConfigInstruction, buildMigrateRegistryInstruction, buildCreateGroupInstruction, buildUpdateGroupInstruction, buildSendGroupMessageInstruction, buildCloseGroupInstruction, } from "./instructions";
2
+ export { deriveRegistryPda, deriveConfigPda, deriveGroupPda } from "./pda";
3
3
  export { lookupEncryptionKey } from "./registry";
4
4
  export { loadOrGenerateEncryptionKeypair } from "./keys";
5
5
  export { convertEd25519ToX25519, encrypt, decrypt, decryptRaw, encodeMessage, decodeMessage, } from "./crypto";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,mCAAmC,EACnC,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,4BAA4B,EAC5B,+BAA+B,GAChC,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAG3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,QAAQ,CAAC;AAGzD,OAAO,EACL,sBAAsB,EACtB,OAAO,EACP,OAAO,EACP,UAAU,EACV,aAAa,EACb,aAAa,GACd,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,OAAO,GACR,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,mCAAmC,EACnC,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,4BAA4B,EAC5B,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,gCAAgC,EAChC,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,QAAQ,CAAC;AAGzD,OAAO,EACL,sBAAsB,EACtB,OAAO,EACP,OAAO,EACP,UAAU,EACV,aAAa,EACb,aAAa,GACd,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGlD,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,OAAO,GACR,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SolanaMessenger = exports.parseMessageSentEvents = exports.decodeMessage = exports.encodeMessage = exports.decryptRaw = exports.decrypt = exports.encrypt = exports.convertEd25519ToX25519 = exports.loadOrGenerateEncryptionKeypair = exports.lookupEncryptionKey = exports.deriveConfigPda = exports.deriveRegistryPda = exports.buildMigrateRegistryInstruction = exports.buildUpdateConfigInstruction = exports.buildInitializeConfigInstruction = exports.buildSetMinFeeInstruction = exports.buildDeregisterInstruction = exports.buildUpdateEncryptionKeyInstruction = exports.buildRegisterInstruction = exports.buildSendMessageInstruction = void 0;
3
+ exports.SolanaMessenger = exports.parseMessageSentEvents = exports.decodeMessage = exports.encodeMessage = exports.decryptRaw = exports.decrypt = exports.encrypt = exports.convertEd25519ToX25519 = exports.loadOrGenerateEncryptionKeypair = exports.lookupEncryptionKey = exports.deriveGroupPda = exports.deriveConfigPda = exports.deriveRegistryPda = exports.buildCloseGroupInstruction = exports.buildSendGroupMessageInstruction = exports.buildUpdateGroupInstruction = exports.buildCreateGroupInstruction = exports.buildMigrateRegistryInstruction = exports.buildUpdateConfigInstruction = exports.buildInitializeConfigInstruction = exports.buildSetMinFeeInstruction = exports.buildDeregisterInstruction = exports.buildUpdateEncryptionKeyInstruction = exports.buildRegisterInstruction = exports.buildSendMessageInstruction = void 0;
4
4
  // Instruction builders (core — use these for custom signing)
5
5
  var instructions_1 = require("./instructions");
6
6
  Object.defineProperty(exports, "buildSendMessageInstruction", { enumerable: true, get: function () { return instructions_1.buildSendMessageInstruction; } });
@@ -11,10 +11,15 @@ Object.defineProperty(exports, "buildSetMinFeeInstruction", { enumerable: true,
11
11
  Object.defineProperty(exports, "buildInitializeConfigInstruction", { enumerable: true, get: function () { return instructions_1.buildInitializeConfigInstruction; } });
12
12
  Object.defineProperty(exports, "buildUpdateConfigInstruction", { enumerable: true, get: function () { return instructions_1.buildUpdateConfigInstruction; } });
13
13
  Object.defineProperty(exports, "buildMigrateRegistryInstruction", { enumerable: true, get: function () { return instructions_1.buildMigrateRegistryInstruction; } });
14
+ Object.defineProperty(exports, "buildCreateGroupInstruction", { enumerable: true, get: function () { return instructions_1.buildCreateGroupInstruction; } });
15
+ Object.defineProperty(exports, "buildUpdateGroupInstruction", { enumerable: true, get: function () { return instructions_1.buildUpdateGroupInstruction; } });
16
+ Object.defineProperty(exports, "buildSendGroupMessageInstruction", { enumerable: true, get: function () { return instructions_1.buildSendGroupMessageInstruction; } });
17
+ Object.defineProperty(exports, "buildCloseGroupInstruction", { enumerable: true, get: function () { return instructions_1.buildCloseGroupInstruction; } });
14
18
  // PDA
15
19
  var pda_1 = require("./pda");
16
20
  Object.defineProperty(exports, "deriveRegistryPda", { enumerable: true, get: function () { return pda_1.deriveRegistryPda; } });
17
21
  Object.defineProperty(exports, "deriveConfigPda", { enumerable: true, get: function () { return pda_1.deriveConfigPda; } });
22
+ Object.defineProperty(exports, "deriveGroupPda", { enumerable: true, get: function () { return pda_1.deriveGroupPda; } });
18
23
  // Registry lookup
19
24
  var registry_1 = require("./registry");
20
25
  Object.defineProperty(exports, "lookupEncryptionKey", { enumerable: true, get: function () { return registry_1.lookupEncryptionKey; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,6DAA6D;AAC7D,+CASwB;AARtB,2HAAA,2BAA2B,OAAA;AAC3B,wHAAA,wBAAwB,OAAA;AACxB,mIAAA,mCAAmC,OAAA;AACnC,0HAAA,0BAA0B,OAAA;AAC1B,yHAAA,yBAAyB,OAAA;AACzB,gIAAA,gCAAgC,OAAA;AAChC,4HAAA,4BAA4B,OAAA;AAC5B,+HAAA,+BAA+B,OAAA;AAGjC,MAAM;AACN,6BAA2D;AAAlD,wGAAA,iBAAiB,OAAA;AAAE,sGAAA,eAAe,OAAA;AAE3C,kBAAkB;AAClB,uCAAiD;AAAxC,+GAAA,mBAAmB,OAAA;AAE5B,iBAAiB;AACjB,+BAAyD;AAAhD,uHAAA,+BAA+B,OAAA;AAExC,SAAS;AACT,mCAOkB;AANhB,gHAAA,sBAAsB,OAAA;AACtB,iGAAA,OAAO,OAAA;AACP,iGAAA,OAAO,OAAA;AACP,oGAAA,UAAU,OAAA;AACV,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AAGf,SAAS;AACT,mCAAkD;AAAzC,gHAAA,sBAAsB,OAAA;AAU/B,oBAAoB;AACpB,yCAA8C;AAArC,4GAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,6DAA6D;AAC7D,+CAawB;AAZtB,2HAAA,2BAA2B,OAAA;AAC3B,wHAAA,wBAAwB,OAAA;AACxB,mIAAA,mCAAmC,OAAA;AACnC,0HAAA,0BAA0B,OAAA;AAC1B,yHAAA,yBAAyB,OAAA;AACzB,gIAAA,gCAAgC,OAAA;AAChC,4HAAA,4BAA4B,OAAA;AAC5B,+HAAA,+BAA+B,OAAA;AAC/B,2HAAA,2BAA2B,OAAA;AAC3B,2HAAA,2BAA2B,OAAA;AAC3B,gIAAA,gCAAgC,OAAA;AAChC,0HAAA,0BAA0B,OAAA;AAG5B,MAAM;AACN,6BAA2E;AAAlE,wGAAA,iBAAiB,OAAA;AAAE,sGAAA,eAAe,OAAA;AAAE,qGAAA,cAAc,OAAA;AAE3D,kBAAkB;AAClB,uCAAiD;AAAxC,+GAAA,mBAAmB,OAAA;AAE5B,iBAAiB;AACjB,+BAAyD;AAAhD,uHAAA,+BAA+B,OAAA;AAExC,SAAS;AACT,mCAOkB;AANhB,gHAAA,sBAAsB,OAAA;AACtB,iGAAA,OAAO,OAAA;AACP,iGAAA,OAAO,OAAA;AACP,oGAAA,UAAU,OAAA;AACV,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AAGf,SAAS;AACT,mCAAkD;AAAzC,gHAAA,sBAAsB,OAAA;AAU/B,oBAAoB;AACpB,yCAA8C;AAArC,4GAAA,eAAe,OAAA"}
@@ -74,6 +74,51 @@ export declare function buildMigrateRegistryInstruction(params: {
74
74
  accounts: any[];
75
75
  data: Uint8Array;
76
76
  };
77
+ export declare function buildCreateGroupInstruction(params: {
78
+ creator: string;
79
+ groupPda: string;
80
+ groupId: Uint8Array;
81
+ members: string[];
82
+ programId?: string;
83
+ }): {
84
+ programAddress: ReturnType<typeof address>;
85
+ accounts: any[];
86
+ data: Uint8Array;
87
+ };
88
+ export declare function buildUpdateGroupInstruction(params: {
89
+ creator: string;
90
+ groupPda: string;
91
+ members: string[];
92
+ programId?: string;
93
+ }): {
94
+ programAddress: ReturnType<typeof address>;
95
+ accounts: any[];
96
+ data: Uint8Array;
97
+ };
98
+ export declare function buildSendGroupMessageInstruction(params: {
99
+ sender: string;
100
+ groupPda: string;
101
+ configPda: string;
102
+ feeVault: string;
103
+ ciphertext: Uint8Array;
104
+ nonce: Uint8Array;
105
+ keyWraps: Uint8Array[];
106
+ keyNonces: Uint8Array[];
107
+ programId?: string;
108
+ }): {
109
+ programAddress: ReturnType<typeof address>;
110
+ accounts: any[];
111
+ data: Uint8Array;
112
+ };
113
+ export declare function buildCloseGroupInstruction(params: {
114
+ creator: string;
115
+ groupPda: string;
116
+ programId?: string;
117
+ }): {
118
+ programAddress: ReturnType<typeof address>;
119
+ accounts: any[];
120
+ data: Uint8Array;
121
+ };
77
122
  export declare function buildDeregisterInstruction(params: {
78
123
  owner: string;
79
124
  registryPda: string;
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ exports.buildSetMinFeeInstruction = buildSetMinFeeInstruction;
7
7
  exports.buildInitializeConfigInstruction = buildInitializeConfigInstruction;
8
8
  exports.buildUpdateConfigInstruction = buildUpdateConfigInstruction;
9
9
  exports.buildMigrateRegistryInstruction = buildMigrateRegistryInstruction;
10
+ exports.buildCreateGroupInstruction = buildCreateGroupInstruction;
11
+ exports.buildUpdateGroupInstruction = buildUpdateGroupInstruction;
12
+ exports.buildSendGroupMessageInstruction = buildSendGroupMessageInstruction;
13
+ exports.buildCloseGroupInstruction = buildCloseGroupInstruction;
10
14
  exports.buildDeregisterInstruction = buildDeregisterInstruction;
11
15
  const kit_1 = require("@solana/kit");
12
16
  const utils_1 = require("./utils");
@@ -17,6 +21,10 @@ const DEREGISTER_DISC = new Uint8Array([161, 178, 39, 189, 231, 224, 13, 187]);
17
21
  const SET_MIN_FEE_DISC = new Uint8Array([114, 198, 35, 3, 41, 196, 194, 246]);
18
22
  const INITIALIZE_CONFIG_DISC = new Uint8Array([208, 127, 21, 1, 194, 190, 196, 70]);
19
23
  const UPDATE_CONFIG_DISC = new Uint8Array([29, 158, 252, 191, 10, 83, 219, 99]);
24
+ const CREATE_GROUP_DISC = new Uint8Array([79, 60, 158, 134, 61, 199, 56, 248]);
25
+ const UPDATE_GROUP_DISC = new Uint8Array([9, 242, 1, 110, 91, 22, 172, 97]);
26
+ const SEND_GROUP_MESSAGE_DISC = new Uint8Array([140, 132, 193, 112, 163, 204, 84, 254]);
27
+ const CLOSE_GROUP_DISC = new Uint8Array([40, 187, 201, 187, 18, 194, 122, 232]);
20
28
  const DEFAULT_PROGRAM_ID = "msg1jhfewu1hGDnQKGhXDmqas6JZTq7Lg7PbSX5jY9y";
21
29
  const SYSTEM_PROGRAM = "11111111111111111111111111111111";
22
30
  function serializeSendMessageData(recipientPubkey, ciphertext, nonce) {
@@ -153,6 +161,121 @@ function buildMigrateRegistryInstruction(params) {
153
161
  data,
154
162
  };
155
163
  }
164
+ function buildCreateGroupInstruction(params) {
165
+ const programId = params.programId ?? DEFAULT_PROGRAM_ID;
166
+ // disc(8) + group_id(32) + vec_len(4) + members(32 * N)
167
+ const len = 8 + 32 + 4 + (32 * params.members.length);
168
+ const data = new Uint8Array(len);
169
+ let offset = 0;
170
+ data.set(CREATE_GROUP_DISC, offset);
171
+ offset += 8;
172
+ data.set(params.groupId, offset);
173
+ offset += 32;
174
+ const view = new DataView(data.buffer, data.byteOffset, data.byteLength);
175
+ view.setUint32(offset, params.members.length, true);
176
+ offset += 4;
177
+ for (const member of params.members) {
178
+ data.set((0, utils_1.addressToBytes)(member), offset);
179
+ offset += 32;
180
+ }
181
+ return {
182
+ programAddress: (0, kit_1.address)(programId),
183
+ accounts: [
184
+ { address: (0, kit_1.address)(params.groupPda), role: kit_1.AccountRole.WRITABLE },
185
+ { address: (0, kit_1.address)(params.creator), role: kit_1.AccountRole.WRITABLE_SIGNER },
186
+ { address: (0, kit_1.address)(SYSTEM_PROGRAM), role: kit_1.AccountRole.READONLY },
187
+ ],
188
+ data,
189
+ };
190
+ }
191
+ function buildUpdateGroupInstruction(params) {
192
+ const programId = params.programId ?? DEFAULT_PROGRAM_ID;
193
+ const len = 8 + 4 + (32 * params.members.length);
194
+ const data = new Uint8Array(len);
195
+ let offset = 0;
196
+ data.set(UPDATE_GROUP_DISC, offset);
197
+ offset += 8;
198
+ const view = new DataView(data.buffer, data.byteOffset, data.byteLength);
199
+ view.setUint32(offset, params.members.length, true);
200
+ offset += 4;
201
+ for (const member of params.members) {
202
+ data.set((0, utils_1.addressToBytes)(member), offset);
203
+ offset += 32;
204
+ }
205
+ return {
206
+ programAddress: (0, kit_1.address)(programId),
207
+ accounts: [
208
+ { address: (0, kit_1.address)(params.groupPda), role: kit_1.AccountRole.WRITABLE },
209
+ { address: (0, kit_1.address)(params.creator), role: kit_1.AccountRole.READONLY_SIGNER },
210
+ ],
211
+ data,
212
+ };
213
+ }
214
+ function buildSendGroupMessageInstruction(params) {
215
+ const programId = params.programId ?? DEFAULT_PROGRAM_ID;
216
+ // disc(8) + vec<u8> ciphertext(4+len) + nonce(24) + vec<vec<u8>> key_wraps + vec<[u8;24]> key_nonces
217
+ let totalLen = 8 + 4 + params.ciphertext.length + 24;
218
+ // key_wraps: vec len (4) + for each: inner vec len (4) + data
219
+ totalLen += 4;
220
+ for (const kw of params.keyWraps) {
221
+ totalLen += 4 + kw.length;
222
+ }
223
+ // key_nonces: vec len (4) + 24 * N
224
+ totalLen += 4 + (24 * params.keyNonces.length);
225
+ const data = new Uint8Array(totalLen);
226
+ const view = new DataView(data.buffer, data.byteOffset, data.byteLength);
227
+ let offset = 0;
228
+ data.set(SEND_GROUP_MESSAGE_DISC, offset);
229
+ offset += 8;
230
+ // ciphertext
231
+ view.setUint32(offset, params.ciphertext.length, true);
232
+ offset += 4;
233
+ data.set(params.ciphertext, offset);
234
+ offset += params.ciphertext.length;
235
+ // nonce
236
+ data.set(params.nonce, offset);
237
+ offset += 24;
238
+ // key_wraps
239
+ view.setUint32(offset, params.keyWraps.length, true);
240
+ offset += 4;
241
+ for (const kw of params.keyWraps) {
242
+ view.setUint32(offset, kw.length, true);
243
+ offset += 4;
244
+ data.set(kw, offset);
245
+ offset += kw.length;
246
+ }
247
+ // key_nonces
248
+ view.setUint32(offset, params.keyNonces.length, true);
249
+ offset += 4;
250
+ for (const kn of params.keyNonces) {
251
+ data.set(kn, offset);
252
+ offset += 24;
253
+ }
254
+ return {
255
+ programAddress: (0, kit_1.address)(programId),
256
+ accounts: [
257
+ { address: (0, kit_1.address)(params.sender), role: kit_1.AccountRole.WRITABLE_SIGNER },
258
+ { address: (0, kit_1.address)(params.groupPda), role: kit_1.AccountRole.READONLY },
259
+ { address: (0, kit_1.address)(params.configPda), role: kit_1.AccountRole.READONLY },
260
+ { address: (0, kit_1.address)(params.feeVault), role: kit_1.AccountRole.WRITABLE },
261
+ { address: (0, kit_1.address)(SYSTEM_PROGRAM), role: kit_1.AccountRole.READONLY },
262
+ ],
263
+ data,
264
+ };
265
+ }
266
+ function buildCloseGroupInstruction(params) {
267
+ const programId = params.programId ?? DEFAULT_PROGRAM_ID;
268
+ const data = new Uint8Array(8);
269
+ data.set(CLOSE_GROUP_DISC, 0);
270
+ return {
271
+ programAddress: (0, kit_1.address)(programId),
272
+ accounts: [
273
+ { address: (0, kit_1.address)(params.groupPda), role: kit_1.AccountRole.WRITABLE },
274
+ { address: (0, kit_1.address)(params.creator), role: kit_1.AccountRole.WRITABLE_SIGNER },
275
+ ],
276
+ data,
277
+ };
278
+ }
156
279
  function buildDeregisterInstruction(params) {
157
280
  const programId = params.programId ?? DEFAULT_PROGRAM_ID;
158
281
  const data = new Uint8Array(8);
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,27 @@ export declare class SolanaMessenger {
60
60
  updateEncryptionKey(newEncryptionPubkey: Uint8Array): Promise<string>;
61
61
  deregister(): Promise<string>;
62
62
  setMinFee(minFee: number): Promise<string>;
63
+ /**
64
+ * Create a group chat. Returns the group PDA address.
65
+ * Creator (you) must be in the members list.
66
+ */
67
+ createGroup(members: string[]): Promise<{
68
+ groupId: Uint8Array;
69
+ groupPda: string;
70
+ signature: string;
71
+ }>;
72
+ /**
73
+ * Update group members (creator only).
74
+ */
75
+ updateGroup(groupPda: string, members: string[]): Promise<string>;
76
+ /**
77
+ * Send an encrypted message to a group. All members can decrypt.
78
+ */
79
+ sendGroup(groupPda: string, message: string): Promise<string>;
80
+ /**
81
+ * Close a group (creator only). Reclaims rent.
82
+ */
83
+ closeGroup(groupPda: string): Promise<string>;
63
84
  lookupEncryptionKey(walletAddress: string): Promise<string | null>;
64
85
  private sendInstruction;
65
86
  private getSubscriptions;
@@ -1 +1 @@
1
- {"version":3,"file":"messenger.d.ts","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,OAAO,EAAoB,MAAM,SAAS,CAAC;AAkBpD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC/B,OAAO,EAAE,UAAU,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;AAM7E,qBAAa,eAAe;IAC1B,OAAO,CAAC,GAAG,CAAqC;IAChD,OAAO,CAAC,gBAAgB,CAAgE;IACxF,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,iBAAiB,CAAiE;IAC1F,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,QAAQ,CAAuB;IAGvC,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,YAAY,CAA2B;IAG/C,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,cAAc,CAAuB;gBAEjC,MAAM,EAAE,qBAAqB;IAqBnC,IAAI,IAAI,OAAO,CAAC;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,YAAY,GAAG,oBAAoB,GAAG,SAAS,CAAA;KAAE,CAAC;IAsD7G,sBAAsB,IAAI,UAAU;IAKpC,sBAAsB,IAAI,UAAU;IAK9B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAMnC,OAAO,CAAC,gBAAgB;IAIlB,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAsD1F,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IA6DtE,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC;IAmE7D,QAAQ,CAAC,gBAAgB,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBvD,mBAAmB,CAAC,mBAAmB,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBrE,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAiB7B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkB1C,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;YAI1D,eAAe;IA2D7B,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,kBAAkB;IA2D1B,OAAO,CAAC,cAAc;CA8BvB"}
1
+ {"version":3,"file":"messenger.d.ts","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"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"}
package/dist/messenger.js CHANGED
@@ -1,4 +1,7 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.SolanaMessenger = void 0;
4
7
  const kit_1 = require("@solana/kit");
@@ -6,6 +9,7 @@ const helius_sdk_1 = require("helius-sdk");
6
9
  const crypto_1 = require("./crypto");
7
10
  const events_1 = require("./events");
8
11
  const utils_1 = require("./utils");
12
+ const tweetnacl_1 = __importDefault(require("tweetnacl"));
9
13
  const instructions_1 = require("./instructions");
10
14
  const pda_1 = require("./pda");
11
15
  const registry_1 = require("./registry");
@@ -349,6 +353,138 @@ class SolanaMessenger {
349
353
  }
350
354
  return this.sendInstruction(ix);
351
355
  }
356
+ /**
357
+ * Create a group chat. Returns the group PDA address.
358
+ * Creator (you) must be in the members list.
359
+ */
360
+ async createGroup(members) {
361
+ const myAddress = await this.getAddress();
362
+ if (!members.includes(myAddress)) {
363
+ members = [myAddress, ...members];
364
+ }
365
+ if (members.length > 10)
366
+ throw new Error("Groups can have at most 10 members.");
367
+ if (members.length < 1)
368
+ throw new Error("Groups must have at least 1 member.");
369
+ const groupId = tweetnacl_1.default.randomBytes(32);
370
+ const groupPda = await (0, pda_1.deriveGroupPda)(groupId, this.programId);
371
+ const ix = (0, instructions_1.buildCreateGroupInstruction)({
372
+ creator: myAddress,
373
+ groupPda,
374
+ groupId,
375
+ members,
376
+ programId: this.programId,
377
+ });
378
+ if (this.signerPromise) {
379
+ const signer = await this.signerPromise;
380
+ ix.accounts[1] = { ...ix.accounts[1], signer };
381
+ }
382
+ const signature = await this.sendInstruction(ix);
383
+ return { groupId, groupPda, signature };
384
+ }
385
+ /**
386
+ * Update group members (creator only).
387
+ */
388
+ async updateGroup(groupPda, members) {
389
+ const myAddress = await this.getAddress();
390
+ if (!members.includes(myAddress)) {
391
+ throw new Error("Creator must remain in the members list.");
392
+ }
393
+ if (members.length > 10)
394
+ throw new Error("Groups can have at most 10 members.");
395
+ const ix = (0, instructions_1.buildUpdateGroupInstruction)({
396
+ creator: myAddress,
397
+ groupPda,
398
+ members,
399
+ programId: this.programId,
400
+ });
401
+ if (this.signerPromise) {
402
+ const signer = await this.signerPromise;
403
+ ix.accounts[1] = { ...ix.accounts[1], signer };
404
+ }
405
+ return this.sendInstruction(ix);
406
+ }
407
+ /**
408
+ * Send an encrypted message to a group. All members can decrypt.
409
+ */
410
+ async sendGroup(groupPda, message) {
411
+ if (!this.initialized)
412
+ throw new Error("Not initialized. Call init() first.");
413
+ if (!this.configPda || !this.feeVault)
414
+ throw new Error("Platform config not loaded.");
415
+ if (!this.encryptionKeypair)
416
+ throw new Error("No encryption keypair. Call init() first.");
417
+ const myAddress = await this.getAddress();
418
+ // Fetch group members from on-chain
419
+ const groupAccount = await this.rpc.getAccountInfo((0, kit_1.address)(groupPda), { encoding: "base64" }).send();
420
+ if (!groupAccount.value)
421
+ throw new Error("Group not found.");
422
+ const groupData = Buffer.from(groupAccount.value.data[0], "base64");
423
+ // Parse group: disc(8) + creator(32) + group_id(32) + vec_len(4) + members(32*N)
424
+ const memberCount = groupData.readUInt32LE(72);
425
+ const members = [];
426
+ const { getBase58Decoder } = await import("@solana/kit");
427
+ for (let i = 0; i < memberCount; i++) {
428
+ const start = 76 + i * 32;
429
+ members.push(getBase58Decoder().decode(groupData.subarray(start, start + 32)));
430
+ }
431
+ // Recipients = members except sender
432
+ const recipients = members.filter(m => m !== myAddress);
433
+ if (recipients.length === 0)
434
+ throw new Error("No recipients in group (only you).");
435
+ // Generate symmetric key and encrypt message
436
+ const symmetricKey = tweetnacl_1.default.randomBytes(32);
437
+ const chunks = (0, crypto_1.encodeMessage)(message);
438
+ const messageNonce = tweetnacl_1.default.randomBytes(24);
439
+ const ciphertext = tweetnacl_1.default.secretbox(chunks[0], messageNonce, symmetricKey);
440
+ // Wrap symmetric key for each recipient
441
+ const senderX25519Sk = (0, crypto_1.convertEd25519ToX25519)(this.encryptionKeypair.publicKey, this.encryptionKeypair.secretKey).secretKey;
442
+ const keyWraps = [];
443
+ const keyNonces = [];
444
+ for (const recipientAddr of recipients) {
445
+ const encKey = await (0, registry_1.lookupEncryptionKey)(this.rpc, recipientAddr, this.programId);
446
+ if (!encKey)
447
+ throw new Error(`Recipient ${recipientAddr} is not registered.`);
448
+ const recipientPubBytes = (0, utils_1.addressToBytes)(encKey);
449
+ const recipientX25519Pk = (0, crypto_1.convertEd25519ToX25519)(recipientPubBytes, recipientPubBytes).publicKey;
450
+ const keyNonce = tweetnacl_1.default.randomBytes(24);
451
+ const keyWrap = tweetnacl_1.default.box(symmetricKey, keyNonce, recipientX25519Pk, senderX25519Sk);
452
+ keyWraps.push(keyWrap);
453
+ keyNonces.push(keyNonce);
454
+ }
455
+ const ix = (0, instructions_1.buildSendGroupMessageInstruction)({
456
+ sender: myAddress,
457
+ groupPda,
458
+ configPda: this.configPda,
459
+ feeVault: this.feeVault,
460
+ ciphertext,
461
+ nonce: messageNonce,
462
+ keyWraps,
463
+ keyNonces,
464
+ programId: this.programId,
465
+ });
466
+ if (this.signerPromise) {
467
+ const signer = await this.signerPromise;
468
+ ix.accounts[0] = { ...ix.accounts[0], signer };
469
+ }
470
+ return this.sendInstruction(ix);
471
+ }
472
+ /**
473
+ * Close a group (creator only). Reclaims rent.
474
+ */
475
+ async closeGroup(groupPda) {
476
+ const myAddress = await this.getAddress();
477
+ const ix = (0, instructions_1.buildCloseGroupInstruction)({
478
+ creator: myAddress,
479
+ groupPda,
480
+ programId: this.programId,
481
+ });
482
+ if (this.signerPromise) {
483
+ const signer = await this.signerPromise;
484
+ ix.accounts[1] = { ...ix.accounts[1], signer };
485
+ }
486
+ return this.sendInstruction(ix);
487
+ }
352
488
  async lookupEncryptionKey(walletAddress) {
353
489
  return (0, registry_1.lookupEncryptionKey)(this.rpc, walletAddress, this.programId);
354
490
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messenger.js","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messenger.js","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"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"}
package/dist/pda.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export declare function deriveConfigPda(programId?: string): Promise<string>;
2
+ export declare function deriveGroupPda(groupId: Uint8Array, programId?: string): Promise<string>;
2
3
  export declare function deriveRegistryPda(walletAddress: string, programId?: string): Promise<string>;
3
4
  //# sourceMappingURL=pda.d.ts.map
package/dist/pda.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pda.d.ts","sourceRoot":"","sources":["../src/pda.ts"],"names":[],"mappings":"AAKA,wBAAsB,eAAe,CACnC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAOjB"}
1
+ {"version":3,"file":"pda.d.ts","sourceRoot":"","sources":["../src/pda.ts"],"names":[],"mappings":"AAKA,wBAAsB,eAAe,CACnC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,UAAU,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAOjB"}
package/dist/pda.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.deriveConfigPda = deriveConfigPda;
4
+ exports.deriveGroupPda = deriveGroupPda;
4
5
  exports.deriveRegistryPda = deriveRegistryPda;
5
6
  const kit_1 = require("@solana/kit");
6
7
  const utils_1 = require("./utils");
@@ -12,6 +13,13 @@ async function deriveConfigPda(programId) {
12
13
  });
13
14
  return pda;
14
15
  }
16
+ async function deriveGroupPda(groupId, programId) {
17
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
18
+ programAddress: (0, kit_1.address)(programId ?? DEFAULT_PROGRAM_ID),
19
+ seeds: [new TextEncoder().encode("group"), groupId],
20
+ });
21
+ return pda;
22
+ }
15
23
  async function deriveRegistryPda(walletAddress, programId) {
16
24
  const walletBytes = (0, utils_1.addressToBytes)(walletAddress);
17
25
  const [pda] = await (0, kit_1.getProgramDerivedAddress)({
package/dist/pda.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pda.js","sourceRoot":"","sources":["../src/pda.ts"],"names":[],"mappings":";;AAKA,0CAQC;AAED,8CAUC;AAzBD,qCAAgE;AAChE,mCAAyC;AAEzC,MAAM,kBAAkB,GAAG,6CAA6C,CAAC;AAElE,KAAK,UAAU,eAAe,CACnC,SAAkB;IAElB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,IAAA,aAAO,EAAC,SAAS,IAAI,kBAAkB,CAAC;QACxD,KAAK,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;KAC5C,CAAC,CAAC;IACH,OAAO,GAAa,CAAC;AACvB,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,aAAqB,EACrB,SAAkB;IAElB,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,aAAa,CAAC,CAAC;IAClD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,IAAA,aAAO,EAAC,SAAS,IAAI,kBAAkB,CAAC;QACxD,KAAK,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;KAC5D,CAAC,CAAC;IACH,OAAO,GAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"pda.js","sourceRoot":"","sources":["../src/pda.ts"],"names":[],"mappings":";;AAKA,0CAQC;AAED,wCASC;AAED,8CAUC;AApCD,qCAAgE;AAChE,mCAAyC;AAEzC,MAAM,kBAAkB,GAAG,6CAA6C,CAAC;AAElE,KAAK,UAAU,eAAe,CACnC,SAAkB;IAElB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,IAAA,aAAO,EAAC,SAAS,IAAI,kBAAkB,CAAC;QACxD,KAAK,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;KAC5C,CAAC,CAAC;IACH,OAAO,GAAa,CAAC;AACvB,CAAC;AAEM,KAAK,UAAU,cAAc,CAClC,OAAmB,EACnB,SAAkB;IAElB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,IAAA,aAAO,EAAC,SAAS,IAAI,kBAAkB,CAAC;QACxD,KAAK,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;KACpD,CAAC,CAAC;IACH,OAAO,GAAa,CAAC;AACvB,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,aAAqB,EACrB,SAAkB;IAElB,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,aAAa,CAAC,CAAC;IAClD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,IAAA,aAAO,EAAC,SAAS,IAAI,kBAAkB,CAAC;QACxD,KAAK,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;KAC5D,CAAC,CAAC;IACH,OAAO,GAAa,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solana-messenger-sdk",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "TypeScript SDK for Solana Messenger — encrypted agent-to-agent messaging",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",