@peers-app/peers-sdk 0.16.3 → 0.16.4

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.
@@ -84,7 +84,7 @@ const getPrimaryAssistant = async (dataContext) => {
84
84
  if (a)
85
85
  return a;
86
86
  }
87
- const fallback = await Assistants(dataContext).get(system_ids_1.openCodeAssistantId);
87
+ const fallback = await Assistants(dataContext).get(system_ids_1.defaultAssistantId);
88
88
  if (!fallback)
89
89
  throw new Error("Primary assistant not found");
90
90
  return fallback;
@@ -29,6 +29,6 @@ function Devices(dataContext) {
29
29
  return (0, user_context_singleton_1.getTableContainer)(dataContext).getTable(metaData, exports.deviceSchema);
30
30
  }
31
31
  exports.trustedServers = (0, persistent_vars_1.groupVar)("trustedServers", {
32
- defaultValue: ["https://peers.app", "https://peers-services.azurewebsites.net"],
32
+ defaultValue: ["https://peers.app"],
33
33
  });
34
34
  exports.thisDeviceId = (0, persistent_vars_1.deviceVar)("thisDeviceId");
@@ -61,7 +61,7 @@ class PersistentVarsTable extends table_1.Table {
61
61
  persistentVar.persistentVarId = (0, utils_1.newid)();
62
62
  }
63
63
  const dbVar = await this.get(persistentVar.persistentVarId);
64
- if (persistentVar.isSecret && persistentVar.value.value !== undefined && !rpc_types_1.isClient) {
64
+ if (persistentVar.isSecret && persistentVar.value.value !== undefined && (!rpc_types_1.isClient || (0, rpc_types_1.isSingleProcessClient)())) {
65
65
  if (!dbVar ||
66
66
  dbVar.value.value !== persistentVar.value.value ||
67
67
  dbVar.isSecret !== persistentVar.isSecret) {
package/dist/events.js CHANGED
@@ -64,7 +64,7 @@ async function emit(event, dontPropagate) {
64
64
  // : rpcClientCalls.emitEvent(event).catch((err) => { console.error(`Error while propagating event to client`, err); return false; })
65
65
  // );
66
66
  // }
67
- if (!(dontPropagate || unitTests)) {
67
+ if (!(dontPropagate || unitTests || (0, rpc_types_1.isSingleProcessClient)())) {
68
68
  matchedHandlerPromises.push(rpc_types_1.rpcClientCalls.emitEvent(event).catch((err) => {
69
69
  console.error(`Error while propagating event to client`, err);
70
70
  return false;
package/dist/keys.js CHANGED
@@ -221,15 +221,25 @@ function encryptString(data, secretKey) {
221
221
  return `${encodeBase64(encryptedData)}~${encodeBase64(nonce)}`;
222
222
  }
223
223
  function decryptString(data, secretKey) {
224
- const _secretKey = decodeBase64(secretKey);
225
- const [encryptedData, nonce] = data.split("~");
226
- const _data = decodeBase64(encryptedData);
227
- const _nonce = decodeBase64(nonce);
228
- const decryptedData = nacl.secretbox.open(_data, _nonce, _secretKey.slice(0, 32));
229
- if (decryptedData === null) {
230
- throw new Error("Failed to decrypt data");
224
+ const preview = typeof data === "string" ? data.slice(0, 24) : String(data);
225
+ const hasSeparator = typeof data === "string" && data.includes("~");
226
+ try {
227
+ const _secretKey = decodeBase64(secretKey);
228
+ const [encryptedData, nonce] = data.split("~");
229
+ const _data = decodeBase64(encryptedData);
230
+ const _nonce = decodeBase64(nonce);
231
+ const decryptedData = nacl.secretbox.open(_data, _nonce, _secretKey.slice(0, 32));
232
+ if (decryptedData === null) {
233
+ throw new Error("secretbox.open returned null (wrong key or corrupted ciphertext)");
234
+ }
235
+ return (0, tweetnacl_util_1.encodeUTF8)(decryptedData);
236
+ }
237
+ catch (err) {
238
+ const reason = hasSeparator
239
+ ? "base64 decode or secretbox failed"
240
+ : "value does not look encrypted (missing '~' separator — was it saved without encryption?)";
241
+ throw new Error(`decryptString failed: ${reason}. Preview: "${preview}…" | Original error: ${err?.message ?? err}`);
231
242
  }
232
- return (0, tweetnacl_util_1.encodeUTF8)(decryptedData);
233
243
  }
234
244
  /** JSON-serializes `data` then NaCl `secretbox` with a random nonce; returns base64 payload `~` base64 nonce. */
235
245
  function encryptData(data, secretKey) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peers-app/peers-sdk",
3
- "version": "0.16.3",
3
+ "version": "0.16.4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/peers-app/peers-sdk.git"