@yuneta/gobj-js 7.25.7 → 7.25.8

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.
@@ -2955,11 +2955,10 @@ var gobjJs = (function(exports) {
2955
2955
  let __global__ = kw_get_dict(publisher, subs, "__global__", null, 0);
2956
2956
  let __local__ = kw_get_dict(publisher, subs, "__local__", null, 0);
2957
2957
  let __filter__ = kw_get_dict_value(publisher, subs, "__filter__", null, 0);
2958
- let kw2publish = kw;
2959
2958
  let topublish = 1;
2960
- if (publisher.gclass.gmt.mt_publication_filter) topublish = publisher.gclass.gmt.mt_publication_filter(publisher, event, kw2publish, subscriber);
2959
+ if (publisher.gclass.gmt.mt_publication_filter) topublish = publisher.gclass.gmt.mt_publication_filter(publisher, event, kw, subscriber);
2961
2960
  else if (json_size(__filter__) > 0) {
2962
- topublish = kw_match_simple(kw2publish, __filter__) ? 1 : 0;
2961
+ topublish = kw_match_simple(kw, __filter__) ? 1 : 0;
2963
2962
  if (tracea) {
2964
2963
  trace_machine(sprintf("💜💜🔄%s publishing with filter, event '%s', subscriber'%s', publisher %s", topublish ? "👍" : "👎", event ? event : "", gobj_short_name(subscriber), gobj_short_name(publisher)));
2965
2964
  trace_json(__filter__);
@@ -2973,9 +2972,11 @@ var gobjJs = (function(exports) {
2973
2972
  if (!gobj_has_event(subscriber, ev_.event_name, 0)) continue;
2974
2973
  }
2975
2974
  }
2976
- if (__local__) kw_pop(kw2publish, __local__);
2975
+ let kw2publish = kw;
2976
+ if (json_size(__local__) > 0 || json_size(__global__) > 0) kw2publish = Object.assign({}, kw);
2977
+ if (json_size(__local__) > 0) kw_pop(kw2publish, __local__);
2977
2978
  if (__config__) {}
2978
- if (__global__) json_object_update(kw2publish, __global__);
2979
+ if (json_size(__global__) > 0) json_object_update(kw2publish, json_deep_copy(__global__));
2979
2980
  if (tracea) {
2980
2981
  if (__trace_machine_format__ === 1) trace_machine(sprintf("🔝🔄 %s (%s) %s%s", event ? event : "", event ? event : "", !subscriber.running ? "!!" : "", gobj_short_name(subscriber)));
2981
2982
  else trace_machine(sprintf("🔝🔄 mach(%s%s), st: %s, ev: %s, from(%s%s)", !subscriber.running ? "!!" : "", gobj_short_name(subscriber), gobj_current_state(subscriber), event ? event : "", publisher && !publisher.running ? "!!" : "", gobj_short_name(publisher)));
@@ -6708,7 +6709,8 @@ var gobjJs = (function(exports) {
6708
6709
  window.console.error(`Not in session`);
6709
6710
  return -1;
6710
6711
  }
6711
- if (!kw) kw = {};
6712
+ kw = Object.assign({}, is_object(kw) ? kw : {});
6713
+ if (is_object(kw["__md_iev__"])) kw["__md_iev__"] = json_deep_copy(kw["__md_iev__"]);
6712
6714
  if (msg_iev_get_stack(gobj, kw, IEVENT_STACK_ID)) {} else {
6713
6715
  let jn_ievent_id = build_cli_ievent_request(gobj, gobj_name(src), kw_get_str(gobj, kw, "__service__", 0, 0));
6714
6716
  json_object_del(kw, "__service__");