wao 0.8.4 → 0.8.5

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/cjs/aoconnect.js CHANGED
@@ -340,14 +340,18 @@ var connect = exports.connect = function connect(mem) {
340
340
  name: "Type",
341
341
  value: "Process"
342
342
  });
343
- _context3.next = 18;
343
+ if (opt["for"]) opt.tags.push({
344
+ name: "Pushed-For",
345
+ value: opt["for"]
346
+ });
347
+ _context3.next = 19;
344
348
  return ar.dataitem({
345
349
  item: opt.item,
346
350
  data: opt.data,
347
351
  signer: opt.signer,
348
352
  tags: (0, _utils.tags)(opt.tags)
349
353
  });
350
- case 18:
354
+ case 19:
351
355
  _yield$ar$dataitem = _context3.sent;
352
356
  id = _yield$ar$dataitem.id;
353
357
  owner = _yield$ar$dataitem.owner;
@@ -355,23 +359,23 @@ var connect = exports.connect = function connect(mem) {
355
359
  __tags = _yield$ar$dataitem.tags;
356
360
  opt.tags = (0, _utils.buildTags)(null, __tags);
357
361
  if (opt.item) opt.data = _base64url["default"].decode(item.data);
358
- _context3.next = 27;
362
+ _context3.next = 28;
359
363
  return ar.postItems(item, _test.su.jwk);
360
- case 27:
364
+ case 28:
361
365
  now = Date.now;
362
366
  t = (0, _utils.tags)(opt.tags);
363
367
  ext = t.Extension || "WeaveDrive";
364
368
  wdrive = extensions[ext];
365
369
  handle = null;
366
- _context3.prev = 32;
370
+ _context3.prev = 33;
367
371
  _context3.t0 = _aoLoader["default"];
368
372
  _context3.t1 = wasm;
369
373
  _context3.t2 = format;
370
374
  _context3.t3 = wdrive;
371
375
  _context3.t4 = item;
372
- _context3.next = 40;
376
+ _context3.next = 41;
373
377
  return mem.get("txs", mod);
374
- case 40:
378
+ case 41:
375
379
  _context3.t5 = _context3.sent;
376
380
  _context3.t6 = {
377
381
  format: _context3.t2,
@@ -379,22 +383,22 @@ var connect = exports.connect = function connect(mem) {
379
383
  spawn: _context3.t4,
380
384
  module: _context3.t5
381
385
  };
382
- _context3.next = 44;
386
+ _context3.next = 45;
383
387
  return (0, _context3.t0)(_context3.t1, _context3.t6);
384
- case 44:
388
+ case 45:
385
389
  handle = _context3.sent;
386
- _context3.next = 49;
390
+ _context3.next = 50;
387
391
  break;
388
- case 47:
389
- _context3.prev = 47;
390
- _context3.t7 = _context3["catch"](32);
391
- case 49:
392
+ case 48:
393
+ _context3.prev = 48;
394
+ _context3.t7 = _context3["catch"](33);
395
+ case 50:
392
396
  if (handle) {
393
- _context3.next = 51;
397
+ _context3.next = 52;
394
398
  break;
395
399
  }
396
400
  return _context3.abrupt("return", null);
397
- case 51:
401
+ case 52:
398
402
  _module = null;
399
403
  _module = {
400
404
  handle: handle,
@@ -422,124 +426,124 @@ var connect = exports.connect = function connect(mem) {
422
426
  opt: opt
423
427
  };
424
428
  if (!memory) {
425
- _context3.next = 61;
429
+ _context3.next = 62;
426
430
  break;
427
431
  }
428
- _context3.next = 103;
432
+ _context3.next = 104;
429
433
  break;
430
- case 61:
434
+ case 62:
431
435
  if (!(_tags["On-Boot"] || true)) {
432
- _context3.next = 102;
436
+ _context3.next = 103;
433
437
  break;
434
438
  }
435
439
  data = "";
436
440
  if (!(_tags["On-Boot"] === "Data")) {
437
- _context3.next = 67;
441
+ _context3.next = 68;
438
442
  break;
439
443
  }
440
444
  data = (_opt$data = opt.data) !== null && _opt$data !== void 0 ? _opt$data : "";
441
- _context3.next = 88;
445
+ _context3.next = 89;
442
446
  break;
443
- case 67:
444
- _context3.next = 69;
447
+ case 68:
448
+ _context3.next = 70;
445
449
  return mem.get("msgs", _tags["On-Boot"]);
446
- case 69:
450
+ case 70:
447
451
  _context3.t10 = _yield$mem$get3 = _context3.sent;
448
452
  _context3.t9 = _context3.t10 === null;
449
453
  if (_context3.t9) {
450
- _context3.next = 73;
454
+ _context3.next = 74;
451
455
  break;
452
456
  }
453
457
  _context3.t9 = _yield$mem$get3 === void 0;
454
- case 73:
458
+ case 74:
455
459
  if (!_context3.t9) {
456
- _context3.next = 77;
460
+ _context3.next = 78;
457
461
  break;
458
462
  }
459
463
  _context3.t11 = void 0;
460
- _context3.next = 78;
464
+ _context3.next = 79;
461
465
  break;
462
- case 77:
463
- _context3.t11 = _yield$mem$get3.data;
464
466
  case 78:
467
+ _context3.t11 = _yield$mem$get3.data;
468
+ case 79:
465
469
  _context3.t12 = _yield$mem$get$data = _context3.t11;
466
470
  _context3.t8 = _context3.t12 !== null;
467
471
  if (!_context3.t8) {
468
- _context3.next = 82;
472
+ _context3.next = 83;
469
473
  break;
470
474
  }
471
475
  _context3.t8 = _yield$mem$get$data !== void 0;
472
- case 82:
476
+ case 83:
473
477
  if (!_context3.t8) {
474
- _context3.next = 86;
478
+ _context3.next = 87;
475
479
  break;
476
480
  }
477
481
  _context3.t13 = _yield$mem$get$data;
478
- _context3.next = 87;
482
+ _context3.next = 88;
479
483
  break;
480
- case 86:
481
- _context3.t13 = "";
482
484
  case 87:
483
- data = _context3.t13;
485
+ _context3.t13 = "";
484
486
  case 88:
485
- _context3.next = 90;
487
+ data = _context3.t13;
488
+ case 89:
489
+ _context3.next = 91;
486
490
  return genMsg(id, p, data, opt.tags, owner, _test.mu.addr, true);
487
- case 90:
491
+ case 91:
488
492
  msg = _context3.sent;
489
- _context3.next = 93;
493
+ _context3.next = 94;
490
494
  return genEnv({
491
495
  pid: p.id,
492
496
  owner: p.owner,
493
497
  module: p.module
494
498
  });
495
- case 93:
499
+ case 94:
496
500
  _env = _context3.sent;
497
- _context3.next = 96;
501
+ _context3.next = 97;
498
502
  return _module.handle(null, msg, _env);
499
- case 96:
503
+ case 97:
500
504
  res = _context3.sent;
501
505
  p.memory = res.Memory;
502
506
  delete res.Memory;
503
507
  p.res[id] = res;
504
- _context3.next = 103;
508
+ _context3.next = 104;
505
509
  break;
506
- case 102:
507
- p.height += 1;
508
510
  case 103:
509
- _context3.next = 105;
511
+ p.height += 1;
512
+ case 104:
513
+ _context3.next = 106;
510
514
  return mem.set(opt, "msgs", id);
511
- case 105:
515
+ case 106:
512
516
  if (!_tags["Cron-Interval"]) {
513
- _context3.next = 129;
517
+ _context3.next = 130;
514
518
  break;
515
519
  }
516
520
  _tags$CronInterval$s = _tags["Cron-Interval"].split("-"), _tags$CronInterval$s2 = _slicedToArray(_tags$CronInterval$s, 2), num = _tags$CronInterval$s2[0], unit = _tags$CronInterval$s2[1];
517
521
  _int = 0;
518
522
  _context3.t14 = unit.replace(/s$/, "");
519
- _context3.next = _context3.t14 === "millisecond" ? 111 : _context3.t14 === "second" ? 113 : _context3.t14 === "minute" ? 115 : _context3.t14 === "hour" ? 117 : _context3.t14 === "day" ? 119 : _context3.t14 === "month" ? 121 : _context3.t14 === "year" ? 123 : 125;
523
+ _context3.next = _context3.t14 === "millisecond" ? 112 : _context3.t14 === "second" ? 114 : _context3.t14 === "minute" ? 116 : _context3.t14 === "hour" ? 118 : _context3.t14 === "day" ? 120 : _context3.t14 === "month" ? 122 : _context3.t14 === "year" ? 124 : 126;
520
524
  break;
521
- case 111:
525
+ case 112:
522
526
  _int = num;
523
- return _context3.abrupt("break", 125);
524
- case 113:
527
+ return _context3.abrupt("break", 126);
528
+ case 114:
525
529
  _int = num * 1000;
526
- return _context3.abrupt("break", 125);
527
- case 115:
530
+ return _context3.abrupt("break", 126);
531
+ case 116:
528
532
  _int = num * 1000 * 60;
529
- return _context3.abrupt("break", 125);
530
- case 117:
533
+ return _context3.abrupt("break", 126);
534
+ case 118:
531
535
  _int = num * 1000 * 60 * 60;
532
- return _context3.abrupt("break", 125);
533
- case 119:
536
+ return _context3.abrupt("break", 126);
537
+ case 120:
534
538
  _int = num * 1000 * 60 * 60 * 24;
535
- return _context3.abrupt("break", 125);
536
- case 121:
539
+ return _context3.abrupt("break", 126);
540
+ case 122:
537
541
  _int = num * 1000 * 60 * 60 * 24 * 30;
538
- return _context3.abrupt("break", 125);
539
- case 123:
542
+ return _context3.abrupt("break", 126);
543
+ case 124:
540
544
  _int = num * 1000 * 60 * 60 * 24 * 365;
541
- return _context3.abrupt("break", 125);
542
- case 125:
545
+ return _context3.abrupt("break", 126);
546
+ case 126:
543
547
  cronTags = [];
544
548
  for (_k in _tags) {
545
549
  if (/^Cron-Tag-/.test(_k)) {
@@ -551,16 +555,16 @@ var connect = exports.connect = function connect(mem) {
551
555
  }
552
556
  p.cronTags = cronTags;
553
557
  p.span = _int;
554
- case 129:
555
- _context3.next = 131;
558
+ case 130:
559
+ _context3.next = 132;
556
560
  return mem.set(p, "env", id);
557
- case 131:
558
- return _context3.abrupt("return", id);
559
561
  case 132:
562
+ return _context3.abrupt("return", id);
563
+ case 133:
560
564
  case "end":
561
565
  return _context3.stop();
562
566
  }
563
- }, _callee3, null, [[32, 47]]);
567
+ }, _callee3, null, [[33, 48]]);
564
568
  }));
565
569
  return function spawn() {
566
570
  return _ref7.apply(this, arguments);
@@ -762,6 +766,7 @@ var connect = exports.connect = function connect(mem) {
762
766
  }
763
767
  _context4.next = 108;
764
768
  return message({
769
+ "for": opt.message,
765
770
  process: v.Target,
766
771
  tags: v.Tags,
767
772
  data: v.Data,
@@ -795,6 +800,7 @@ var connect = exports.connect = function connect(mem) {
795
800
  __tags = (0, _utils.tags)(_v.Tags);
796
801
  _context4.next = 126;
797
802
  return spawn({
803
+ "for": opt.message,
798
804
  module: __tags.Module,
799
805
  scheduler: _test.scheduler,
800
806
  tags: _v.Tags,
@@ -891,7 +897,7 @@ var connect = exports.connect = function connect(mem) {
891
897
  var message = /*#__PURE__*/function () {
892
898
  var _ref10 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5(opt) {
893
899
  var _opt$item$id, _opt$item, _opt$owner;
894
- var p, ex, id, owner, item, _opt$tags3, _iterator6, _step6, v, _yield$ar$dataitem3;
900
+ var p, ex, id, owner, item, _opt$tags3, _iterator6, _step6, v, _yield$mem$get$tags3, _yield$mem$get4, pr, module, _yield$ar$dataitem3;
895
901
  return _regeneratorRuntime().wrap(function _callee5$(_context5) {
896
902
  while (1) switch (_context5.prev = _context5.next) {
897
903
  case 0:
@@ -910,7 +916,7 @@ var connect = exports.connect = function connect(mem) {
910
916
  owner = (_opt$owner = opt.owner) !== null && _opt$owner !== void 0 ? _opt$owner : "";
911
917
  item = opt.item;
912
918
  if (!(!opt.item && opt.signer)) {
913
- _context5.next = 19;
919
+ _context5.next = 46;
914
920
  break;
915
921
  }
916
922
  _iterator6 = _createForOfIteratorHelper(opt.tags);
@@ -930,23 +936,82 @@ var connect = exports.connect = function connect(mem) {
930
936
  Type: "Message",
931
937
  SDK: "aoconnect"
932
938
  }));
933
- _context5.next = 15;
939
+ if (!opt["for"]) {
940
+ _context5.next = 39;
941
+ break;
942
+ }
943
+ opt.tags.push({
944
+ name: "Pushed-For",
945
+ value: opt["for"]
946
+ });
947
+ opt.tags.push({
948
+ name: "From-Process",
949
+ value: opt.from
950
+ });
951
+ _context5.next = 18;
952
+ return mem.get("txs", opt.from);
953
+ case 18:
954
+ _context5.t2 = _yield$mem$get4 = _context5.sent;
955
+ _context5.t1 = _context5.t2 === null;
956
+ if (_context5.t1) {
957
+ _context5.next = 22;
958
+ break;
959
+ }
960
+ _context5.t1 = _yield$mem$get4 === void 0;
961
+ case 22:
962
+ if (!_context5.t1) {
963
+ _context5.next = 26;
964
+ break;
965
+ }
966
+ _context5.t3 = void 0;
967
+ _context5.next = 27;
968
+ break;
969
+ case 26:
970
+ _context5.t3 = _yield$mem$get4.tags;
971
+ case 27:
972
+ _context5.t4 = _yield$mem$get$tags3 = _context5.t3;
973
+ _context5.t0 = _context5.t4 !== null;
974
+ if (!_context5.t0) {
975
+ _context5.next = 31;
976
+ break;
977
+ }
978
+ _context5.t0 = _yield$mem$get$tags3 !== void 0;
979
+ case 31:
980
+ if (!_context5.t0) {
981
+ _context5.next = 35;
982
+ break;
983
+ }
984
+ _context5.t5 = _yield$mem$get$tags3;
985
+ _context5.next = 36;
986
+ break;
987
+ case 35:
988
+ _context5.t5 = [];
989
+ case 36:
990
+ pr = _context5.t5;
991
+ module = (0, _utils.tags)(pr).Module;
992
+ if (module) opt.tags.push({
993
+ name: "From-Module",
994
+ value: module
995
+ });
996
+ case 39:
997
+ ;
998
+ _context5.next = 42;
934
999
  return ar.dataitem({
935
1000
  data: opt.data,
936
1001
  signer: opt.signer,
937
1002
  tags: (0, _utils.tags)(opt.tags),
938
1003
  target: opt.process
939
1004
  });
940
- case 15:
1005
+ case 42:
941
1006
  _yield$ar$dataitem3 = _context5.sent;
942
1007
  item = _yield$ar$dataitem3.item;
943
1008
  id = _yield$ar$dataitem3.id;
944
1009
  owner = _yield$ar$dataitem3.owner;
945
- case 19:
946
- _context5.next = 21;
1010
+ case 46:
1011
+ _context5.next = 48;
947
1012
  return mem.set(opt, "msgs", id);
948
- case 21:
949
- _context5.next = 23;
1013
+ case 48:
1014
+ _context5.next = 50;
950
1015
  return _assign({
951
1016
  message_item: item,
952
1017
  message: id,
@@ -954,9 +1019,9 @@ var connect = exports.connect = function connect(mem) {
954
1019
  from: owner,
955
1020
  signer: _test.mu.signer
956
1021
  });
957
- case 23:
1022
+ case 50:
958
1023
  return _context5.abrupt("return", id);
959
- case 24:
1024
+ case 51:
960
1025
  case "end":
961
1026
  return _context5.stop();
962
1027
  }
@@ -1038,15 +1103,33 @@ var connect = exports.connect = function connect(mem) {
1038
1103
  ar: ar,
1039
1104
  result: function () {
1040
1105
  var _result = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(opt) {
1106
+ var _yield$mem$get5;
1041
1107
  return _regeneratorRuntime().wrap(function _callee9$(_context9) {
1042
1108
  while (1) switch (_context9.prev = _context9.next) {
1043
1109
  case 0:
1044
1110
  _context9.next = 2;
1045
1111
  return mem.get("env", opt.process);
1046
1112
  case 2:
1047
- _context9.t0 = opt.message;
1048
- return _context9.abrupt("return", _context9.sent.res[_context9.t0]);
1049
- case 4:
1113
+ _context9.t1 = _yield$mem$get5 = _context9.sent;
1114
+ _context9.t0 = _context9.t1 === null;
1115
+ if (_context9.t0) {
1116
+ _context9.next = 6;
1117
+ break;
1118
+ }
1119
+ _context9.t0 = _yield$mem$get5 === void 0;
1120
+ case 6:
1121
+ if (!_context9.t0) {
1122
+ _context9.next = 10;
1123
+ break;
1124
+ }
1125
+ _context9.t2 = void 0;
1126
+ _context9.next = 11;
1127
+ break;
1128
+ case 10:
1129
+ _context9.t2 = _yield$mem$get5.res[opt.message];
1130
+ case 11:
1131
+ return _context9.abrupt("return", _context9.t2);
1132
+ case 12:
1050
1133
  case "end":
1051
1134
  return _context9.stop();
1052
1135
  }
Binary file
package/cjs/utils.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.isData = exports.isCheckComplete = exports.getTagVal = exports.getTag = exports.dirname = exports.checkTag = exports.buildTags = exports.action = void 0;
6
+ exports.isData = exports.isCheckComplete = exports.getTagVal = exports.getTag = exports.dirname = exports.checkTag = exports.buildTags = exports.allChecked = exports.action = void 0;
7
7
  exports.isJSON = isJSON;
8
8
  exports.wait = exports.validAddress = exports.udl = exports.toGraphObj = exports.tags = exports.tagEq = exports.tag = exports.srcs = exports.searchTag = exports.optServer = exports.optAO = exports.mergeOut = exports.mergeChecks = exports.ltags = exports.jsonToStr = exports.isRegExp = exports.isOutComplete = exports.isLocalhost = void 0;
9
9
  var _graphql = require("graphql");
@@ -200,6 +200,8 @@ var isData = exports.isData = function isData(data, res) {
200
200
  try {
201
201
  if (data.test(v.Data)) return true;
202
202
  } catch (e) {}
203
+ } else if (typeof data === "function") {
204
+ return data(v.Data);
203
205
  } else {
204
206
  if (data === true || v.Data === data) return true;
205
207
  }
@@ -274,21 +276,21 @@ var modGet = function modGet(get) {
274
276
  } finally {
275
277
  _iterator4.f();
276
278
  }
277
- } else if ((0, _ramda.is)(Object, get) && (0, _ramda.isNil)(get.data) && (0, _ramda.isNil)(get.json) && (0, _ramda.isNil)(get.name) && (0, _ramda.isNil)(get.obj)) {
279
+ } else if ((0, _ramda.is)(Object, get) && (0, _ramda.isNil)(get.data) && (0, _ramda.isNil)(get.from) && (0, _ramda.isNil)(get.json) && (0, _ramda.isNil)(get.name) && (0, _ramda.isNil)(get.obj)) {
278
280
  _get = {
279
281
  obj: get
280
282
  };
281
283
  }
282
284
  return _get;
283
285
  };
284
- var _getTagVal2 = function _getTagVal(get, res) {
286
+ var _getTagVal2 = function _getTagVal(get, res, from) {
285
287
  var out = null;
286
288
  var _get = modGet(get);
287
289
  if (_typeof(_get) === "object" && _get.obj) {
288
290
  out = {};
289
291
  for (var k in (_get$obj = _get.obj) !== null && _get$obj !== void 0 ? _get$obj : {}) {
290
292
  var _get$obj;
291
- out[k] = _getTagVal2(_get.obj[k], res);
293
+ out[k] = _getTagVal2(_get.obj[k], res, from);
292
294
  }
293
295
  } else {
294
296
  var _res$Messages2;
@@ -298,13 +300,22 @@ var _getTagVal2 = function _getTagVal(get, res) {
298
300
  for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
299
301
  var _v$Tags2;
300
302
  var v = _step5.value;
303
+ if (_typeof(_get) === "object" && (0, _ramda.isNil)(_get.name) && (0, _ramda.isNil)(_get.data)) {
304
+ _get.data = true;
305
+ }
301
306
  if (_typeof(_get) === "object" && _get.data || typeof _get === "boolean") {
307
+ var _from = null;
308
+ if ((0, _ramda.is)(Object, _get) && _get.from) _from = _get.from;
309
+ if (_from && _from !== from) break;
302
310
  if (v.Data) out = v.Data;
303
311
  try {
304
312
  if (_get.json || _get === true) out = JSON.parse(out);
305
313
  } catch (e) {}
306
314
  } else if (_typeof(_get) === "object" && typeof _get.name === "string") {
307
315
  var _v$Tags;
316
+ var _from2 = null;
317
+ if ((0, _ramda.is)(Object, _get) && _get.from) _from2 = _get.from;
318
+ if (_from2 && _from2 !== from) break;
308
319
  out = getTag((_v$Tags = v.Tags) !== null && _v$Tags !== void 0 ? _v$Tags : [], _get.name);
309
320
  try {
310
321
  if (_get.json) out = JSON.parse(out);
@@ -320,9 +331,9 @@ var _getTagVal2 = function _getTagVal(get, res) {
320
331
  }
321
332
  return out;
322
333
  };
323
- var getTagVal = exports.getTagVal = function getTagVal(get, res) {
334
+ var getTagVal = exports.getTagVal = function getTagVal(get, res, from) {
324
335
  var _get = modGet(get);
325
- return _getTagVal2(_get, res);
336
+ return _getTagVal2(_get, res, from);
326
337
  };
327
338
  var srcs = exports.srcs = {
328
339
  module: "cNlipBptaF9JeFAf4wUmpi43EojNanIBos3EfNrEOWo",
@@ -361,7 +372,7 @@ var buildTags = exports.buildTags = function buildTags(act, tags) {
361
372
  };
362
373
  var mergeOut = exports.mergeOut = function mergeOut(out, out2, get) {
363
374
  var _get = modGet(get);
364
- if (_get.obj) {
375
+ if (_get !== null && _get !== void 0 && _get.obj) {
365
376
  for (var k in out2 !== null && out2 !== void 0 ? out2 : {}) {
366
377
  var _out;
367
378
  if ((0, _ramda.isNil)((_out = out) === null || _out === void 0 ? void 0 : _out[k])) {
@@ -385,27 +396,20 @@ var isOutComplete = exports.isOutComplete = function isOutComplete(out, get) {
385
396
  if ((0, _ramda.isNil)(get)) return true;
386
397
  if ((0, _ramda.isNil)(out)) return false;
387
398
  var _get = modGet(get);
388
- if (_get.obj) {
389
- for (var k in out !== null && out !== void 0 ? out : {}) {
390
- if ((0, _ramda.isNil)(out[k])) return false;
391
- }
392
- }
399
+ if (_get.obj) for (var k in out !== null && out !== void 0 ? out : {}) if ((0, _ramda.isNil)(out[k])) return false;
393
400
  return true;
394
401
  };
395
402
  var isCheckComplete = exports.isCheckComplete = function isCheckComplete(checks, check) {
396
403
  var i = 0;
397
- var _iterator7 = _createForOfIteratorHelper(checks),
404
+ var _iterator7 = _createForOfIteratorHelper(checks || []),
398
405
  _step7;
399
406
  try {
400
407
  for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
401
408
  var v = _step7.value;
409
+ if (!v) return false;
402
410
  if (isRegExp(check[i]) || (0, _ramda.includes)(_typeof(check[i]))(["string", "boolean"])) {
403
411
  if (!v) return false;
404
- } else {
405
- for (var k in v) {
406
- if (!v[k]) return false;
407
- }
408
- }
412
+ } else for (var k in v) if (!v[k]) return false;
409
413
  i++;
410
414
  }
411
415
  } catch (err) {
@@ -614,4 +618,114 @@ var optServer = exports.optServer = function optServer(port) {
614
618
  su: port + 3,
615
619
  cu: port + 4
616
620
  };
621
+ };
622
+ var allChecked = exports.allChecked = function allChecked(check, res, from) {
623
+ var checks = [];
624
+ var i = 0;
625
+ var _iterator11 = _createForOfIteratorHelper(check || []),
626
+ _step11;
627
+ try {
628
+ var _loop = function _loop() {
629
+ var _checks$i;
630
+ var v = _step11.value;
631
+ var _checks = (_checks$i = checks[i]) !== null && _checks$i !== void 0 ? _checks$i : null;
632
+ if (isRegExp(v) || (0, _ramda.includes)(_typeof(v))(["string", "boolean", "function"])) {
633
+ _checks = isData(v, res);
634
+ } else {
635
+ var _checkVal2 = function _checkVal(val, data) {
636
+ if (isRegExp(val)) {
637
+ try {
638
+ if (val.test(data)) return true;
639
+ } catch (e) {}
640
+ } else if (typeof val === "function") {
641
+ return val(data);
642
+ } else if (_typeof(val) === "object" && !(0, _ramda.isNil)(val.json)) {
643
+ try {
644
+ data = JSON.parse(data);
645
+ if (typeof val.json === "function") {
646
+ return val.json(data);
647
+ } else if (_typeof(val.json) === "object") {
648
+ if (val.eq) return (0, _ramda.equals)(data, val.json);
649
+ var ok = true;
650
+ for (var k in val.json) {
651
+ if (!_checkVal2(val.json[k], data[k])) {
652
+ ok = false;
653
+ break;
654
+ }
655
+ }
656
+ return ok;
657
+ } else if (val.json === true) {
658
+ return true;
659
+ }
660
+ } catch (e) {
661
+ return false;
662
+ }
663
+ } else {
664
+ if (val === true || data === val) return true;
665
+ }
666
+ return false;
667
+ };
668
+ var checkVal = function checkVal(res, val, name) {
669
+ var _iterator12 = _createForOfIteratorHelper(res.Messages || []),
670
+ _step12;
671
+ try {
672
+ for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {
673
+ var _v2 = _step12.value;
674
+ var data = _v2.Data;
675
+ if (!(0, _ramda.isNil)(name)) {
676
+ var t = tags(_v2.Tags || []);
677
+ data = t[name];
678
+ }
679
+ if ((0, _ramda.isNil)(data)) return false;
680
+ return _checkVal2(val, data);
681
+ }
682
+ } catch (err) {
683
+ _iterator12.e(err);
684
+ } finally {
685
+ _iterator12.f();
686
+ }
687
+ return false;
688
+ };
689
+ if (_typeof(v) === "object") {
690
+ var _v$from;
691
+ if (!(0, _ramda.isNil)(v.json)) {
692
+ var _from3 = v.from;
693
+ v = {
694
+ data: v,
695
+ from: _from3
696
+ };
697
+ } else if ((0, _ramda.isNil)(v.tags) && (0, _ramda.isNil)(v.data) && (0, _ramda.isNil)(v.from)) {
698
+ v = {
699
+ tags: v
700
+ };
701
+ }
702
+ var _from = (_v$from = v.from) !== null && _v$from !== void 0 ? _v$from : null;
703
+ var checks2 = {};
704
+ if (!(0, _ramda.isNil)(v.from) && v.from !== from) {
705
+ _checks = false;
706
+ } else {
707
+ var ok = true;
708
+ if (!(0, _ramda.isNil)(v.data)) {
709
+ if (!checkVal(res, v.data)) ok = false;
710
+ }
711
+ for (var k in (_v$tags = v.tags) !== null && _v$tags !== void 0 ? _v$tags : {}) {
712
+ var _v$tags;
713
+ if (!checkVal(res, v.tags[k], k)) ok = false;
714
+ }
715
+ _checks = ok;
716
+ }
717
+ }
718
+ }
719
+ checks[i] = _checks;
720
+ i++;
721
+ };
722
+ for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) {
723
+ _loop();
724
+ }
725
+ } catch (err) {
726
+ _iterator11.e(err);
727
+ } finally {
728
+ _iterator11.f();
729
+ }
730
+ return isCheckComplete(checks, check);
617
731
  };
@@ -0,0 +1 @@
1
+ {"name":"Bob","age":40}