@yuneta/gobj-js 7.10.0 → 7.12.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/gobj-js.cjs.js +138 -135
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +15 -10
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +138 -135
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +15 -10
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +138 -135
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +15 -10
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +138 -135
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +15 -10
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +4 -4
package/dist/gobj-js.iife.js
CHANGED
|
@@ -88,9 +88,7 @@ var gobjJs = (function(exports) {
|
|
|
88
88
|
case "x":
|
|
89
89
|
arg = (parseInt(arg, 10) >>> 0).toString(16);
|
|
90
90
|
break;
|
|
91
|
-
case "X":
|
|
92
|
-
arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase();
|
|
93
|
-
break;
|
|
91
|
+
case "X": arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase();
|
|
94
92
|
}
|
|
95
93
|
if (re.json.test(ph.type)) output += arg;
|
|
96
94
|
else {
|
|
@@ -778,9 +776,7 @@ var gobjJs = (function(exports) {
|
|
|
778
776
|
}
|
|
779
777
|
else jn_value = svalue;
|
|
780
778
|
break;
|
|
781
|
-
case data_type_t.DTP_POINTER:
|
|
782
|
-
jn_value = svalue;
|
|
783
|
-
break;
|
|
779
|
+
case data_type_t.DTP_POINTER: jn_value = svalue;
|
|
784
780
|
}
|
|
785
781
|
if (jn_value === void 0) {
|
|
786
782
|
log_error(`default_value WRONG, it: ${it.name}, value: ${it.default_value}`);
|
|
@@ -850,9 +846,7 @@ var gobjJs = (function(exports) {
|
|
|
850
846
|
return -1;
|
|
851
847
|
}
|
|
852
848
|
break;
|
|
853
|
-
case data_type_t.DTP_POINTER:
|
|
854
|
-
jn_value2 = jn_value_;
|
|
855
|
-
break;
|
|
849
|
+
case data_type_t.DTP_POINTER: jn_value2 = jn_value_;
|
|
856
850
|
}
|
|
857
851
|
if (jn_value2 === void 0) log_error(`${gobj_short_name(gobj)}: attr undefined: ${it.name}`);
|
|
858
852
|
sdata[it.name] = jn_value2;
|
|
@@ -1131,6 +1125,7 @@ var gobjJs = (function(exports) {
|
|
|
1131
1125
|
} catch (e) {}
|
|
1132
1126
|
if (!gclass) {
|
|
1133
1127
|
if (verbose) log_error(`gclass not found: ${gclass_name}`);
|
|
1128
|
+
return null;
|
|
1134
1129
|
}
|
|
1135
1130
|
return gclass;
|
|
1136
1131
|
}
|
|
@@ -1155,8 +1150,8 @@ var gobjJs = (function(exports) {
|
|
|
1155
1150
|
function gobj_find_service(service_name, verbose) {
|
|
1156
1151
|
service_name = service_name.toLowerCase();
|
|
1157
1152
|
let service_gobj = __jn_services__[service_name];
|
|
1158
|
-
if (!service_gobj
|
|
1159
|
-
log_error(`gobj service not found: ${service_name}`);
|
|
1153
|
+
if (!service_gobj) {
|
|
1154
|
+
if (verbose) log_error(`gobj service not found: ${service_name}`);
|
|
1160
1155
|
return null;
|
|
1161
1156
|
}
|
|
1162
1157
|
return service_gobj;
|
|
@@ -1572,12 +1567,14 @@ var gobjJs = (function(exports) {
|
|
|
1572
1567
|
log_error(`${gobj_short_name(gobj)}: GObj DISABLED`);
|
|
1573
1568
|
return -1;
|
|
1574
1569
|
}
|
|
1575
|
-
if (!gobj_is_running(gobj))
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1570
|
+
if (!gobj_is_running(gobj)) {
|
|
1571
|
+
if (!(gobj.gclass.gclass_flag & gclass_flag_t.gcflag_required_start_to_play)) {
|
|
1572
|
+
log_warning(`${gobj_short_name(gobj)}: GObj playing without previous start`);
|
|
1573
|
+
gobj_start(gobj);
|
|
1574
|
+
} else {
|
|
1575
|
+
log_error(`${gobj_short_name(gobj)}: Cannot play, start not done`);
|
|
1576
|
+
return -1;
|
|
1577
|
+
}
|
|
1581
1578
|
}
|
|
1582
1579
|
if (__trace_gobj_start_stop__(gobj)) trace_machine(sprintf("⏯ ⏯ play: %s", gobj_full_name(gobj)));
|
|
1583
1580
|
gobj.playing = true;
|
|
@@ -2682,7 +2679,7 @@ var gobjJs = (function(exports) {
|
|
|
2682
2679
|
log_error(`subscriber NULL: ev ${event}`);
|
|
2683
2680
|
return 0;
|
|
2684
2681
|
}
|
|
2685
|
-
const IGNORED_KEYS = new Set([
|
|
2682
|
+
const IGNORED_KEYS = /* @__PURE__ */ new Set([
|
|
2686
2683
|
"__config__",
|
|
2687
2684
|
"__global__",
|
|
2688
2685
|
"__local__",
|
|
@@ -2738,7 +2735,7 @@ var gobjJs = (function(exports) {
|
|
|
2738
2735
|
log_error(`subscriber NULL: ev ${event}`);
|
|
2739
2736
|
return 0;
|
|
2740
2737
|
}
|
|
2741
|
-
const IGNORED_KEYS = new Set([
|
|
2738
|
+
const IGNORED_KEYS = /* @__PURE__ */ new Set([
|
|
2742
2739
|
"__config__",
|
|
2743
2740
|
"__global__",
|
|
2744
2741
|
"__local__",
|
|
@@ -2932,9 +2929,10 @@ var gobjJs = (function(exports) {
|
|
|
2932
2929
|
if (tracea > 1) trace_json(kw);
|
|
2933
2930
|
}
|
|
2934
2931
|
if (gobj.gclass.gmt.mt_command_parser) return gobj.gclass.gmt.mt_command_parser(gobj, command, kw, src);
|
|
2935
|
-
if (gobj.gclass.command_table)
|
|
2936
|
-
|
|
2937
|
-
|
|
2932
|
+
if (gobj.gclass.command_table) {
|
|
2933
|
+
if (__global_command_parser_fn__) return __global_command_parser_fn__(gobj, command, kw, src);
|
|
2934
|
+
else return build_command_response(gobj, -1, sprintf("%s: global command parser not available", gobj_short_name(gobj)), 0, 0);
|
|
2935
|
+
} else return build_command_response(gobj, -1, sprintf("%s: command table not available", gobj_short_name(gobj)), 0, 0);
|
|
2938
2936
|
}
|
|
2939
2937
|
/************************************************************
|
|
2940
2938
|
* Exec gobj stats. Return a webix
|
|
@@ -3041,22 +3039,26 @@ var gobjJs = (function(exports) {
|
|
|
3041
3039
|
function log_error(format) {
|
|
3042
3040
|
let msg = format_log(format);
|
|
3043
3041
|
let hora = current_timestamp();
|
|
3044
|
-
if (f_error)
|
|
3045
|
-
if (
|
|
3046
|
-
|
|
3047
|
-
|
|
3048
|
-
|
|
3042
|
+
if (f_error) {
|
|
3043
|
+
if (f_error === _console.error) {
|
|
3044
|
+
if (__console_output_enabled__) f_error("%c" + hora + " ERROR: " + String(msg), "color:red");
|
|
3045
|
+
} else {
|
|
3046
|
+
if (__console_output_enabled__) _console.error("%c" + hora + " ERROR: " + String(msg), "color:red");
|
|
3047
|
+
f_error(`${hora} ERROR: ${String(msg)}`);
|
|
3048
|
+
}
|
|
3049
3049
|
}
|
|
3050
3050
|
emit_log_callback("error", msg, hora);
|
|
3051
3051
|
}
|
|
3052
3052
|
function log_warning(format) {
|
|
3053
3053
|
let msg = format_log(format);
|
|
3054
3054
|
let hora = current_timestamp();
|
|
3055
|
-
if (f_warning)
|
|
3056
|
-
if (
|
|
3057
|
-
|
|
3058
|
-
|
|
3059
|
-
|
|
3055
|
+
if (f_warning) {
|
|
3056
|
+
if (f_warning === _console.warn) {
|
|
3057
|
+
if (__console_output_enabled__) f_warning("%c" + hora + " WARNING: " + String(msg), "color:yellow");
|
|
3058
|
+
} else {
|
|
3059
|
+
if (__console_output_enabled__) _console.warn("%c" + hora + " WARNING: " + String(msg), "color:yellow");
|
|
3060
|
+
f_warning(`${hora} WARNING: ${String(msg)}`);
|
|
3061
|
+
}
|
|
3060
3062
|
}
|
|
3061
3063
|
emit_log_callback("warning", msg, hora);
|
|
3062
3064
|
}
|
|
@@ -4092,10 +4094,12 @@ var gobjJs = (function(exports) {
|
|
|
4092
4094
|
vv["id"] = field_id;
|
|
4093
4095
|
vv["value"] = v[field_id];
|
|
4094
4096
|
} else {
|
|
4095
|
-
if (!kw_has_key(v, field_value))
|
|
4096
|
-
|
|
4097
|
-
|
|
4098
|
-
|
|
4097
|
+
if (!kw_has_key(v, field_value)) {
|
|
4098
|
+
if (json_size(v) > 0) field_value = Object.keys(v)[0];
|
|
4099
|
+
else {
|
|
4100
|
+
log_error("list2options(): object without field value: " + field_value);
|
|
4101
|
+
continue;
|
|
4102
|
+
}
|
|
4099
4103
|
}
|
|
4100
4104
|
vv["id"] = v[field_id];
|
|
4101
4105
|
vv["value"] = v[field_value];
|
|
@@ -4411,13 +4415,15 @@ var gobjJs = (function(exports) {
|
|
|
4411
4415
|
if (is_object(v)) v = kw_get_dict_value(null, v, jdb.hook, [], 1);
|
|
4412
4416
|
v = _jdb_get(v, null, id, false);
|
|
4413
4417
|
}
|
|
4414
|
-
if (ids.length === 0 && v)
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
|
|
4418
|
-
|
|
4419
|
-
|
|
4420
|
-
|
|
4418
|
+
if (ids.length === 0 && v) {
|
|
4419
|
+
if (is_array(v)) v.push(kw);
|
|
4420
|
+
else if (v["id"] === kw["id"]) Object.assign(v, kw);
|
|
4421
|
+
else {
|
|
4422
|
+
let v_ = kw_get_dict_value(null, v, jdb.hook, [], 1);
|
|
4423
|
+
let v__ = _jdb_get(v_, jdb.hook, kw["id"], false);
|
|
4424
|
+
if (v__) Object.assign(v__, kw);
|
|
4425
|
+
else v_.push(kw);
|
|
4426
|
+
}
|
|
4421
4427
|
}
|
|
4422
4428
|
return topic;
|
|
4423
4429
|
}
|
|
@@ -4443,13 +4449,15 @@ var gobjJs = (function(exports) {
|
|
|
4443
4449
|
if (is_object(v)) v = kw_get_dict_value(null, v, jdb.hook, null, 0);
|
|
4444
4450
|
v = _jdb_get(v, null, id, false);
|
|
4445
4451
|
}
|
|
4446
|
-
if (ids.length === 0 && v)
|
|
4447
|
-
|
|
4448
|
-
|
|
4449
|
-
|
|
4450
|
-
|
|
4451
|
-
|
|
4452
|
-
|
|
4452
|
+
if (ids.length === 0 && v) {
|
|
4453
|
+
if (is_array(v)) {
|
|
4454
|
+
let idx = id_index_in_obj_list(v, kw["id"]);
|
|
4455
|
+
if (idx >= 0) v.splice(idx, 1);
|
|
4456
|
+
} else {
|
|
4457
|
+
let v_ = kw_get_dict_value(null, v, jdb.hook, null, 0);
|
|
4458
|
+
let idx = id_index_in_obj_list(v_, kw["id"]);
|
|
4459
|
+
if (idx >= 0) v_.splice(idx, 1);
|
|
4460
|
+
}
|
|
4453
4461
|
}
|
|
4454
4462
|
return topic;
|
|
4455
4463
|
}
|
|
@@ -5176,41 +5184,42 @@ var gobjJs = (function(exports) {
|
|
|
5176
5184
|
* }
|
|
5177
5185
|
************************************************************/
|
|
5178
5186
|
function treedb_decoder_fkey(col, fkey) {
|
|
5179
|
-
if (is_string(fkey))
|
|
5180
|
-
|
|
5181
|
-
|
|
5182
|
-
|
|
5183
|
-
|
|
5184
|
-
|
|
5185
|
-
|
|
5186
|
-
|
|
5187
|
-
|
|
5188
|
-
|
|
5189
|
-
|
|
5190
|
-
|
|
5191
|
-
|
|
5192
|
-
|
|
5193
|
-
|
|
5194
|
-
|
|
5195
|
-
|
|
5196
|
-
|
|
5197
|
-
|
|
5198
|
-
|
|
5199
|
-
|
|
5200
|
-
|
|
5201
|
-
|
|
5202
|
-
|
|
5203
|
-
|
|
5204
|
-
|
|
5205
|
-
|
|
5187
|
+
if (is_string(fkey)) {
|
|
5188
|
+
if (fkey.indexOf("^") === -1) {
|
|
5189
|
+
let fkey_desc = col.fkey;
|
|
5190
|
+
if (json_object_size(fkey_desc) !== 1) {
|
|
5191
|
+
log_error("bad fkey 1");
|
|
5192
|
+
log_error(col);
|
|
5193
|
+
log_error(fkey);
|
|
5194
|
+
return null;
|
|
5195
|
+
}
|
|
5196
|
+
let topic_name;
|
|
5197
|
+
let hook_name;
|
|
5198
|
+
for (const k of Object.keys(fkey_desc)) {
|
|
5199
|
+
topic_name = k;
|
|
5200
|
+
hook_name = fkey_desc[k];
|
|
5201
|
+
break;
|
|
5202
|
+
}
|
|
5203
|
+
return {
|
|
5204
|
+
topic_name,
|
|
5205
|
+
id: fkey,
|
|
5206
|
+
hook_name
|
|
5207
|
+
};
|
|
5208
|
+
} else {
|
|
5209
|
+
let tt = fkey.split("^");
|
|
5210
|
+
if (tt.length !== 3) {
|
|
5211
|
+
log_error("bad fkey 2");
|
|
5212
|
+
log_error(col);
|
|
5213
|
+
log_error(fkey);
|
|
5214
|
+
return null;
|
|
5215
|
+
}
|
|
5216
|
+
return {
|
|
5217
|
+
topic_name: tt[0],
|
|
5218
|
+
id: tt[1],
|
|
5219
|
+
hook_name: tt[2]
|
|
5220
|
+
};
|
|
5206
5221
|
}
|
|
5207
|
-
|
|
5208
|
-
topic_name: tt[0],
|
|
5209
|
-
id: tt[1],
|
|
5210
|
-
hook_name: tt[2]
|
|
5211
|
-
};
|
|
5212
|
-
}
|
|
5213
|
-
else if (is_object(fkey)) return {
|
|
5222
|
+
} else if (is_object(fkey)) return {
|
|
5214
5223
|
topic_name: fkey.topic_name,
|
|
5215
5224
|
id: fkey.id,
|
|
5216
5225
|
hook_name: fkey.hook_name
|
|
@@ -5252,38 +5261,39 @@ var gobjJs = (function(exports) {
|
|
|
5252
5261
|
* }
|
|
5253
5262
|
********************************************/
|
|
5254
5263
|
function treedb_decoder_hook(col, hook) {
|
|
5255
|
-
if (is_string(hook))
|
|
5256
|
-
|
|
5257
|
-
|
|
5258
|
-
|
|
5259
|
-
|
|
5260
|
-
|
|
5261
|
-
|
|
5262
|
-
|
|
5263
|
-
|
|
5264
|
-
|
|
5265
|
-
|
|
5266
|
-
|
|
5267
|
-
|
|
5268
|
-
|
|
5269
|
-
|
|
5270
|
-
|
|
5271
|
-
|
|
5272
|
-
|
|
5273
|
-
|
|
5274
|
-
|
|
5275
|
-
|
|
5276
|
-
|
|
5277
|
-
|
|
5278
|
-
|
|
5279
|
-
|
|
5264
|
+
if (is_string(hook)) {
|
|
5265
|
+
if (hook.indexOf("^") === -1) {
|
|
5266
|
+
let hook_desc = col.hook;
|
|
5267
|
+
if (json_object_size(hook_desc) !== 1) {
|
|
5268
|
+
log_error("bad hook 1");
|
|
5269
|
+
log_error(col);
|
|
5270
|
+
log_error(hook);
|
|
5271
|
+
return null;
|
|
5272
|
+
}
|
|
5273
|
+
let topic_name;
|
|
5274
|
+
for (let k of Object.keys(hook_desc)) {
|
|
5275
|
+
topic_name = k;
|
|
5276
|
+
hook_desc[k];
|
|
5277
|
+
break;
|
|
5278
|
+
}
|
|
5279
|
+
return {
|
|
5280
|
+
topic_name,
|
|
5281
|
+
id: hook
|
|
5282
|
+
};
|
|
5283
|
+
} else {
|
|
5284
|
+
let tt = hook.split("^");
|
|
5285
|
+
if (tt.length !== 2) {
|
|
5286
|
+
log_error("bad hook 2");
|
|
5287
|
+
log_error(col);
|
|
5288
|
+
log_error(hook);
|
|
5289
|
+
return null;
|
|
5290
|
+
}
|
|
5291
|
+
return {
|
|
5292
|
+
topic_name: tt[0],
|
|
5293
|
+
id: tt[1]
|
|
5294
|
+
};
|
|
5280
5295
|
}
|
|
5281
|
-
|
|
5282
|
-
topic_name: tt[0],
|
|
5283
|
-
id: tt[1]
|
|
5284
|
-
};
|
|
5285
|
-
}
|
|
5286
|
-
else if (is_object(hook)) return {
|
|
5296
|
+
} else if (is_object(hook)) return {
|
|
5287
5297
|
topic_name: hook.topic_name,
|
|
5288
5298
|
id: hook.id
|
|
5289
5299
|
};
|
|
@@ -5389,9 +5399,7 @@ var gobjJs = (function(exports) {
|
|
|
5389
5399
|
case "template":
|
|
5390
5400
|
field_desc.enum_list = col.template;
|
|
5391
5401
|
break;
|
|
5392
|
-
case "table":
|
|
5393
|
-
field_desc.enum_list = col.table;
|
|
5394
|
-
break;
|
|
5402
|
+
case "table": field_desc.enum_list = col.table;
|
|
5395
5403
|
}
|
|
5396
5404
|
field_desc.type = f;
|
|
5397
5405
|
} else if (str_in_list(treedb_field_attributes, f)) switch (f) {
|
|
@@ -5404,9 +5412,7 @@ var gobjJs = (function(exports) {
|
|
|
5404
5412
|
case "required":
|
|
5405
5413
|
field_desc.is_required = true;
|
|
5406
5414
|
break;
|
|
5407
|
-
case "hidden":
|
|
5408
|
-
field_desc.is_hidden = true;
|
|
5409
|
-
break;
|
|
5415
|
+
case "hidden": field_desc.is_hidden = true;
|
|
5410
5416
|
}
|
|
5411
5417
|
}
|
|
5412
5418
|
return field_desc;
|
|
@@ -5443,9 +5449,7 @@ var gobjJs = (function(exports) {
|
|
|
5443
5449
|
case "required":
|
|
5444
5450
|
field_desc.is_required = true;
|
|
5445
5451
|
break;
|
|
5446
|
-
case "hidden":
|
|
5447
|
-
field_desc.is_hidden = true;
|
|
5448
|
-
break;
|
|
5452
|
+
case "hidden": field_desc.is_hidden = true;
|
|
5449
5453
|
}
|
|
5450
5454
|
}
|
|
5451
5455
|
if (!field_desc.real_type) field_desc.real_type = "string";
|
|
@@ -5469,7 +5473,8 @@ var gobjJs = (function(exports) {
|
|
|
5469
5473
|
Object.entries(template).forEach(([field, col]) => {
|
|
5470
5474
|
let default_value;
|
|
5471
5475
|
if (is_object(col)) default_value = col.default;
|
|
5472
|
-
|
|
5476
|
+
let value = kw_get_dict_value(null, kw, field, default_value);
|
|
5477
|
+
new_record[field] = value;
|
|
5473
5478
|
});
|
|
5474
5479
|
return new_record;
|
|
5475
5480
|
}
|
|
@@ -5550,7 +5555,6 @@ var gobjJs = (function(exports) {
|
|
|
5550
5555
|
if (priv.msec > 0) {
|
|
5551
5556
|
if (!gobj_is_running(gobj)) gobj_start(gobj);
|
|
5552
5557
|
} else if (gobj_is_running(gobj)) gobj_stop(gobj);
|
|
5553
|
-
break;
|
|
5554
5558
|
}
|
|
5555
5559
|
}
|
|
5556
5560
|
/***************************************************************
|
|
@@ -5909,9 +5913,7 @@ var gobjJs = (function(exports) {
|
|
|
5909
5913
|
case "remote_yuno_role":
|
|
5910
5914
|
priv.remote_yuno_role = gobj_read_str_attr(gobj, "remote_yuno_role");
|
|
5911
5915
|
break;
|
|
5912
|
-
case "remote_yuno_service":
|
|
5913
|
-
priv.remote_yuno_service = gobj_read_str_attr(gobj, "remote_yuno_service");
|
|
5914
|
-
break;
|
|
5916
|
+
case "remote_yuno_service": priv.remote_yuno_service = gobj_read_str_attr(gobj, "remote_yuno_service");
|
|
5915
5917
|
}
|
|
5916
5918
|
}
|
|
5917
5919
|
/***************************************************************
|
|
@@ -6453,12 +6455,13 @@ var gobjJs = (function(exports) {
|
|
|
6453
6455
|
return 0;
|
|
6454
6456
|
}
|
|
6455
6457
|
let gobj_service = gobj_find_service(iev_dst_service, true);
|
|
6456
|
-
if (gobj_service)
|
|
6457
|
-
|
|
6458
|
-
|
|
6459
|
-
|
|
6460
|
-
|
|
6461
|
-
|
|
6458
|
+
if (gobj_service) {
|
|
6459
|
+
if (gobj_has_event(gobj_service, iev_event, event_flag_t.EVF_PUBLIC_EVENT)) gobj_send_event(gobj_service, iev_event, iev_kw, gobj);
|
|
6460
|
+
else {
|
|
6461
|
+
log_error(`${gobj_short_name(gobj)}: Service found but no event or not public, service '${gobj_short_name(gobj_service)}', ev '${iev_event}'`);
|
|
6462
|
+
return -1;
|
|
6463
|
+
}
|
|
6464
|
+
} else if (gobj_is_pure_child(gobj)) gobj_send_event(gobj_parent(gobj), iev_event, iev_kw, gobj);
|
|
6462
6465
|
else gobj_publish_event(gobj, iev_event, iev_kw);
|
|
6463
6466
|
return 0;
|
|
6464
6467
|
}
|