@yuneta/gobj-js 7.10.0 → 7.13.2
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 +139 -135
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +16 -10
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +139 -135
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +16 -10
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +139 -135
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +16 -10
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +139 -135
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +16 -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
|
};
|
|
@@ -5344,6 +5354,7 @@ var gobjJs = (function(exports) {
|
|
|
5344
5354
|
"template",
|
|
5345
5355
|
"uuid",
|
|
5346
5356
|
"rowid",
|
|
5357
|
+
"qualified",
|
|
5347
5358
|
"password",
|
|
5348
5359
|
"email",
|
|
5349
5360
|
"url",
|
|
@@ -5389,9 +5400,7 @@ var gobjJs = (function(exports) {
|
|
|
5389
5400
|
case "template":
|
|
5390
5401
|
field_desc.enum_list = col.template;
|
|
5391
5402
|
break;
|
|
5392
|
-
case "table":
|
|
5393
|
-
field_desc.enum_list = col.table;
|
|
5394
|
-
break;
|
|
5403
|
+
case "table": field_desc.enum_list = col.table;
|
|
5395
5404
|
}
|
|
5396
5405
|
field_desc.type = f;
|
|
5397
5406
|
} else if (str_in_list(treedb_field_attributes, f)) switch (f) {
|
|
@@ -5404,9 +5413,7 @@ var gobjJs = (function(exports) {
|
|
|
5404
5413
|
case "required":
|
|
5405
5414
|
field_desc.is_required = true;
|
|
5406
5415
|
break;
|
|
5407
|
-
case "hidden":
|
|
5408
|
-
field_desc.is_hidden = true;
|
|
5409
|
-
break;
|
|
5416
|
+
case "hidden": field_desc.is_hidden = true;
|
|
5410
5417
|
}
|
|
5411
5418
|
}
|
|
5412
5419
|
return field_desc;
|
|
@@ -5443,9 +5450,7 @@ var gobjJs = (function(exports) {
|
|
|
5443
5450
|
case "required":
|
|
5444
5451
|
field_desc.is_required = true;
|
|
5445
5452
|
break;
|
|
5446
|
-
case "hidden":
|
|
5447
|
-
field_desc.is_hidden = true;
|
|
5448
|
-
break;
|
|
5453
|
+
case "hidden": field_desc.is_hidden = true;
|
|
5449
5454
|
}
|
|
5450
5455
|
}
|
|
5451
5456
|
if (!field_desc.real_type) field_desc.real_type = "string";
|
|
@@ -5469,7 +5474,8 @@ var gobjJs = (function(exports) {
|
|
|
5469
5474
|
Object.entries(template).forEach(([field, col]) => {
|
|
5470
5475
|
let default_value;
|
|
5471
5476
|
if (is_object(col)) default_value = col.default;
|
|
5472
|
-
|
|
5477
|
+
let value = kw_get_dict_value(null, kw, field, default_value);
|
|
5478
|
+
new_record[field] = value;
|
|
5473
5479
|
});
|
|
5474
5480
|
return new_record;
|
|
5475
5481
|
}
|
|
@@ -5550,7 +5556,6 @@ var gobjJs = (function(exports) {
|
|
|
5550
5556
|
if (priv.msec > 0) {
|
|
5551
5557
|
if (!gobj_is_running(gobj)) gobj_start(gobj);
|
|
5552
5558
|
} else if (gobj_is_running(gobj)) gobj_stop(gobj);
|
|
5553
|
-
break;
|
|
5554
5559
|
}
|
|
5555
5560
|
}
|
|
5556
5561
|
/***************************************************************
|
|
@@ -5909,9 +5914,7 @@ var gobjJs = (function(exports) {
|
|
|
5909
5914
|
case "remote_yuno_role":
|
|
5910
5915
|
priv.remote_yuno_role = gobj_read_str_attr(gobj, "remote_yuno_role");
|
|
5911
5916
|
break;
|
|
5912
|
-
case "remote_yuno_service":
|
|
5913
|
-
priv.remote_yuno_service = gobj_read_str_attr(gobj, "remote_yuno_service");
|
|
5914
|
-
break;
|
|
5917
|
+
case "remote_yuno_service": priv.remote_yuno_service = gobj_read_str_attr(gobj, "remote_yuno_service");
|
|
5915
5918
|
}
|
|
5916
5919
|
}
|
|
5917
5920
|
/***************************************************************
|
|
@@ -6453,12 +6456,13 @@ var gobjJs = (function(exports) {
|
|
|
6453
6456
|
return 0;
|
|
6454
6457
|
}
|
|
6455
6458
|
let gobj_service = gobj_find_service(iev_dst_service, true);
|
|
6456
|
-
if (gobj_service)
|
|
6457
|
-
|
|
6458
|
-
|
|
6459
|
-
|
|
6460
|
-
|
|
6461
|
-
|
|
6459
|
+
if (gobj_service) {
|
|
6460
|
+
if (gobj_has_event(gobj_service, iev_event, event_flag_t.EVF_PUBLIC_EVENT)) gobj_send_event(gobj_service, iev_event, iev_kw, gobj);
|
|
6461
|
+
else {
|
|
6462
|
+
log_error(`${gobj_short_name(gobj)}: Service found but no event or not public, service '${gobj_short_name(gobj_service)}', ev '${iev_event}'`);
|
|
6463
|
+
return -1;
|
|
6464
|
+
}
|
|
6465
|
+
} else if (gobj_is_pure_child(gobj)) gobj_send_event(gobj_parent(gobj), iev_event, iev_kw, gobj);
|
|
6462
6466
|
else gobj_publish_event(gobj, iev_event, iev_kw);
|
|
6463
6467
|
return 0;
|
|
6464
6468
|
}
|