@indra.ai/deva 1.5.40 → 1.5.42

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.
Files changed (2) hide show
  1. package/index.js +50 -33
  2. package/package.json +3 -2
package/index.js CHANGED
@@ -182,7 +182,9 @@ class Deva {
182
182
  packet.a.hash = this.lib.hash(packet.a);
183
183
  delete packet.hash;
184
184
  packet.hash = this.lib.hash(packet);
185
-
185
+ packet.sha256 = this.lib.hash(packet, 'sha256');
186
+ packet.sha512 = this.lib.hash(packet, 'sha512');
187
+
186
188
  this.state('invalid', `${packet.q.meta.method}:${packet.id}`);
187
189
  return packet;
188
190
  }
@@ -726,6 +728,9 @@ class Deva {
726
728
  created: Date.now(),
727
729
  }
728
730
  data.hash = this.lib.hash(data);
731
+ data.sha256 = this.lib.hash(data, 'sha256');
732
+ data.sha512 = this.lib.hash(data, 'sha512');
733
+
729
734
  return new Promise((resolve, reject) => {
730
735
  this.events.setMaxListeners(this.maxListeners);
731
736
  this._assignInherit().then(() => {
@@ -790,6 +795,9 @@ class Deva {
790
795
  delete data.hash;
791
796
  data.value = 'start';
792
797
  data.hash = this.lib.hash(data);
798
+ data.sha256 = this.lib.hash(data, 'sha256');
799
+ data.sha512 = this.lib.hash(data, 'sha512');
800
+
793
801
  const hasOnStart = this.onStart && typeof this.onStart === 'function' ? true : false;
794
802
 
795
803
  this.state('start', data.id);
@@ -816,6 +824,8 @@ class Deva {
816
824
  delete data.hash;
817
825
  data.value = 'enter';
818
826
  data.hash = this.lib.hash(data);
827
+ data.sha256 = this.lib.hash(data, 'sha256');
828
+ data.sha512 = this.lib.hash(data, 'sha512');
819
829
 
820
830
  this.state('enter', data.id);
821
831
  return hasOnEnter ? this.onEnter(data, resolve) : this.done(data, resolve)
@@ -841,6 +851,8 @@ class Deva {
841
851
  delete data.hash;
842
852
  data.value = 'done';
843
853
  data.hash = this.lib.hash(data);
854
+ data.sha256 = this.lib.hash(data, 'sha256');
855
+ data.sha512 = this.lib.hash(data, 'sha512');
844
856
 
845
857
  this.state('done', data.id);
846
858
  return hasOnDone ? this.onDone(data, resolve) : this.ready(data, resolve);
@@ -863,6 +875,8 @@ class Deva {
863
875
  delete data.hash;
864
876
  data.value = 'ready';
865
877
  data.hash = this.lib.hash(data);// hash the entire data before completeing.
878
+ data.sha256 = this.lib.hash(data, 'sha256');
879
+ data.sha512 = this.lib.hash(data, 'sha512');
866
880
 
867
881
  this.state('ready', data.id);
868
882
  return hasOnReady ? this.onReady(data, resolve) : resolve(data);
@@ -887,6 +901,8 @@ class Deva {
887
901
  delete packet.hash; // delete packet hash to update for finish time
888
902
  packet.finish = Date.now(); // set the finish timestamp
889
903
  packet.hash = this.lib.hash(packet); // rehash the packet;
904
+ packet.sha256 = this.lib.hash(packet, 'sha256');
905
+ packet.sha512 = this.lib.hash(packet, 'sha512');
890
906
 
891
907
  this.state('finish', packet.id); // set finish state
892
908
  return hasOnFinish ? this.onFinish(packet, resolve) : this.complete(packet, resolve);
@@ -910,6 +926,8 @@ class Deva {
910
926
  delete packet.hash;
911
927
  packet.complete = Date.now();// set the complete date on the whole packet.
912
928
  packet.hash = this.lib.hash(packet);// hash the entire packet before complete.
929
+ packet.sha256 = this.lib.hash(packet, 'sha256');
930
+ packet.sha512 = this.lib.hash(packet, 'sha512');
913
931
 
914
932
  this.state('complete', packet.id);
915
933
  return hasOnComplete ? this.onComplete(packet, resolve) : resolve(packet);
@@ -945,13 +963,15 @@ class Deva {
945
963
  created: Date.now(), // set the created date
946
964
  }
947
965
  data.hash = this.lib.hash(data);
966
+ data.sha256 = this.lib.hash(data, 'sha256');
967
+ data.sha512 = this.lib.hash(data, 'sha512');
968
+
948
969
  // has stop function then set hasOnStop variable
949
970
  // if: has on stop then run on stop function or return exit function.
950
971
  this.state('stop', id); // set the state to stop
951
972
  return hasOnStop ? this.onStop(data) : this.exit()
952
973
  }
953
974
 
954
-
955
975
  /**************
956
976
  func: exit
957
977
  params:
@@ -1020,6 +1040,8 @@ class Deva {
1020
1040
  created: Date.now(), // set the data created date.
1021
1041
  };
1022
1042
  data.hash = this.lib.hash(data); // hash the data
1043
+ data.sha256 = this.lib.hash(data, 'sha256');
1044
+ data.sha512 = this.lib.hash(data, 'sha512');
1023
1045
  this.talk(config.events.state, data); // broadcasat the state event
1024
1046
  return data;
1025
1047
  } catch (e) { // catch any errors
@@ -1042,6 +1064,8 @@ class Deva {
1042
1064
  created: Date.now(),
1043
1065
  }
1044
1066
  data.hash = this.lib.hash(data);
1067
+ data.sha256 = this.lib.hash(data, 'sha256');
1068
+ data.sha512 = this.lib.hash(data, 'sha512');
1045
1069
  this.state('return', `states:${id}`);
1046
1070
  return data;
1047
1071
  }
@@ -1071,6 +1095,8 @@ class Deva {
1071
1095
  created: Date.now(),
1072
1096
  };
1073
1097
  data.hash = this.lib.hash(data);
1098
+ data.sha256 = this.lib.hash(data, 'sha256');
1099
+ data.sha512 = this.lib.hash(data, 'sha512');
1074
1100
  this.talk(config.events.zone, data);
1075
1101
  return data;
1076
1102
  } catch (e) {
@@ -1126,6 +1152,8 @@ class Deva {
1126
1152
  created: Date.now(), // action time stamp
1127
1153
  };
1128
1154
  data.hash = this.lib.hash(data); // generate a hash of the action packet.
1155
+ data.sha256 = this.lib.hash(data, 'sha256');
1156
+ data.sha512 = this.lib.hash(data, 'sha512');
1129
1157
  this.talk(config.events.action, data); // talk the core action event
1130
1158
  return data;
1131
1159
  } catch (e) { // catch any errors that occur
@@ -1150,7 +1178,9 @@ class Deva {
1150
1178
  value: this._actions, // set the value to the actions list
1151
1179
  created: Date.now(), // set the data created date
1152
1180
  };
1153
- data.hash = this.lib.hash(data)
1181
+ data.hash = this.lib.hash(data);
1182
+ data.sha256 = this.lib.hash(data, 'sha256');
1183
+ data.sha512 = this.lib.hash(data, 'sha512');
1154
1184
  this.state('return', `actions:${id}`);
1155
1185
  return data;
1156
1186
  }
@@ -1179,6 +1209,8 @@ class Deva {
1179
1209
  created: Date.now(), // set the creation date
1180
1210
  };
1181
1211
  data.hash = this.lib.hash(data); // generate the hash value of the data packet
1212
+ data.sha256 = this.lib.hash(data, 'sha256');
1213
+ data.sha512 = this.lib.hash(data, 'sha512');
1182
1214
  this.talk(config.events.feature, data); // talk the feature event with data
1183
1215
  return data;
1184
1216
  } catch (e) { // catch any errors
@@ -1205,6 +1237,8 @@ class Deva {
1205
1237
  created: Date.now(), // set the created date.
1206
1238
  };
1207
1239
  data.hash = this.lib.hash(data);
1240
+ data.sha256 = this.lib.hash(data, 'sha256');
1241
+ data.sha512 = this.lib.hash(data, 'sha512');
1208
1242
  this.state('return', `features:${id}`);
1209
1243
  return data;
1210
1244
  }
@@ -1235,6 +1269,8 @@ class Deva {
1235
1269
  created: Date.now(),
1236
1270
  };
1237
1271
  data.hash = this.lib.hash(data);
1272
+ data.sha256 = this.lib.hash(data, 'sha256');
1273
+ data.sha512 = this.lib.hash(data, 'sha512');
1238
1274
  this.talk(config.events.context, data);
1239
1275
  return data;
1240
1276
  } catch (e) {
@@ -1257,6 +1293,8 @@ class Deva {
1257
1293
  created: Date.now(),
1258
1294
  };
1259
1295
  data.hash = this.lib.hash(data);
1296
+ data.sha256 = this.lib.hash(data, 'sha256');
1297
+ data.sha512 = this.lib.hash(data, 'sha512');
1260
1298
  this.state('return', `contexts:${id}`);
1261
1299
  return data;
1262
1300
  }
@@ -1269,9 +1307,12 @@ class Deva {
1269
1307
  ***************/
1270
1308
  client() {
1271
1309
  if (!this._active) return this._messages.offline; // check the active status
1272
- const client_copy = this.lib.copy(this._client); // create a copy of the client data
1273
- client_copy.hash = this.lib.hash(client_copy);
1310
+ const client_copy = this.lib.copy(this._client); // create a copy of the client data
1274
1311
  client_copy.created = Date.now();
1312
+ client_copy.hash = this.lib.hash(client_copy);
1313
+ client_copy.sha256 = this.lib.hash(client_copy, 'sha256');
1314
+ client_copy.sha512 = this.lib.hash(client_copy, 'sha512');
1315
+
1275
1316
  return client_copy; // return the copy of the client data.
1276
1317
  }
1277
1318
 
@@ -1284,8 +1325,10 @@ class Deva {
1284
1325
  agent() {
1285
1326
  if (!this._active) return this._messages.offline; // check the active status
1286
1327
  const agent_copy = this.lib.copy(this._agent); // create a copy of the agent data.
1287
- agent_copy.hash = this.lib.hash(agent_copy);
1288
1328
  agent_copy.created = Date.now();
1329
+ agent_copy.hash = this.lib.hash(agent_copy);
1330
+ agent_copy.sha256 = this.lib.hash(agent_copy, 'sha256');
1331
+ agent_copy.sha512 = this.lib.hash(agent_copy, 'sha512');
1289
1332
  return agent_copy; // return the copy of the agent data.
1290
1333
  }
1291
1334
 
@@ -1516,32 +1559,6 @@ class Deva {
1516
1559
  return `${this._agent.profile.name} active since ${dateFormat}`; // return final text string
1517
1560
  }
1518
1561
 
1519
- /******
1520
- func: signature
1521
- params:
1522
- - data: the data to sign
1523
- describe: function to provide a digital signature to data.
1524
- ******/
1525
- signature(data) {
1526
- if (!this._active) return this._messages.offline;
1527
- const id = this.lib.uid();
1528
- this.action('signature', id);
1529
-
1530
- const client = this.client();
1531
- const agent = this.agent();
1532
- this.state('set', `signature:${id}`);
1533
- const signature = {
1534
- id,
1535
- uid: this.lib.uid(true),
1536
- name: client.profile.name,
1537
- md5: this.lib.hash(data),
1538
- sha256: this.lib.hash(data, 'sha256'),
1539
- sha512: this.lib.hash(data, 'sha512'),
1540
- date: Date.now(),
1541
- };
1542
- this.state('return', `signature:${id}`);
1543
- return signature;
1544
- }
1545
1562
  /**************
1546
1563
  func: help
1547
1564
  params:
@@ -1567,7 +1584,7 @@ class Deva {
1567
1584
 
1568
1585
  const splitText = params[0].split(':');
1569
1586
  const part = splitText[1] ? splitText[1].toUpperCase() : 'MAIN';
1570
- const helpFile = splitText[0];
1587
+ const helpFile = splitText[0] ? splitText[0] : 'main';
1571
1588
 
1572
1589
  const helpPath = this.lib.path.join(help_dir, 'help', `${helpFile}.feecting`);
1573
1590
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@indra.ai/deva",
3
- "version": "1.5.40",
3
+ "version": "1.5.42",
4
4
  "description": "The Deva Core",
5
5
  "main": "index.js",
6
6
  "copyright": "(c)2025 Quinn Michaels; All rights reserved.",
@@ -186,7 +186,8 @@
186
186
  "insert": "👉 Insert",
187
187
  "update": "👆 Update",
188
188
  "delete": "🗑️ Delete",
189
- "return": "🤿 Return"
189
+ "return": "🤿 Return",
190
+ "hash": "#️⃣ Hash"
190
191
  },
191
192
  "action": false,
192
193
  "actions": {