@yuneta/gobj-js 7.26.26 → 7.26.27
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/README.md +24 -6
- package/dist/gobj-js.cjs.js +140 -40
- package/dist/gobj-js.cjs.js.map +1 -1
- package/dist/gobj-js.cjs.min.js +329 -273
- package/dist/gobj-js.cjs.min.js.map +1 -1
- package/dist/gobj-js.es.js +140 -41
- package/dist/gobj-js.es.js.map +1 -1
- package/dist/gobj-js.es.min.js +380 -324
- package/dist/gobj-js.es.min.js.map +1 -1
- package/dist/gobj-js.iife.js +140 -40
- package/dist/gobj-js.iife.js.map +1 -1
- package/dist/gobj-js.iife.min.js +329 -273
- package/dist/gobj-js.iife.min.js.map +1 -1
- package/dist/gobj-js.umd.js +140 -40
- package/dist/gobj-js.umd.js.map +1 -1
- package/dist/gobj-js.umd.min.js +329 -273
- package/dist/gobj-js.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/gobj-js.es.js
CHANGED
|
@@ -2391,11 +2391,13 @@ function rc_walk_by_list(iter_, walk_type, cb_walking, user_data, user_data2) {
|
|
|
2391
2391
|
let child;
|
|
2392
2392
|
if (walk_type & walk_type_t.WALK_LAST2FIRST) for (let i = iter.length; i > 0; i--) {
|
|
2393
2393
|
child = iter[i - 1];
|
|
2394
|
+
if (gobj_is_destroying(child)) continue;
|
|
2394
2395
|
let ret = walk_ret(cb_walking(child, user_data, user_data2));
|
|
2395
2396
|
if (ret < 0) return ret;
|
|
2396
2397
|
}
|
|
2397
2398
|
else for (let i = 0; i < iter.length; i++) {
|
|
2398
2399
|
child = iter[i];
|
|
2400
|
+
if (gobj_is_destroying(child)) continue;
|
|
2399
2401
|
let ret = walk_ret(cb_walking(child, user_data, user_data2));
|
|
2400
2402
|
if (ret < 0) return ret;
|
|
2401
2403
|
}
|
|
@@ -2410,18 +2412,21 @@ function rc_walk_by_list(iter_, walk_type, cb_walking, user_data, user_data2) {
|
|
|
2410
2412
|
* or
|
|
2411
2413
|
* WALK_LAST2FIRST
|
|
2412
2414
|
***************************************************************/
|
|
2413
|
-
function rc_walk_by_level(
|
|
2415
|
+
function rc_walk_by_level(iter_, walk_type, cb_walking, user_data, user_data2) {
|
|
2416
|
+
let iter = [...iter_];
|
|
2414
2417
|
let ret = rc_walk_by_list(iter, walk_type, cb_walking, user_data, user_data2);
|
|
2415
2418
|
if (ret < 0) return ret;
|
|
2416
2419
|
let child;
|
|
2417
2420
|
if (walk_type & walk_type_t.WALK_LAST2FIRST) for (let i = iter.length; i > 0; i--) {
|
|
2418
2421
|
child = iter[i - 1];
|
|
2419
|
-
|
|
2422
|
+
if (gobj_is_destroying(child)) continue;
|
|
2423
|
+
ret = rc_walk_by_level(child.dl_children, walk_type, cb_walking, user_data, user_data2);
|
|
2420
2424
|
if (ret < 0) return ret;
|
|
2421
2425
|
}
|
|
2422
2426
|
else for (let i = 0; i < iter.length; i++) {
|
|
2423
2427
|
child = iter[i];
|
|
2424
|
-
|
|
2428
|
+
if (gobj_is_destroying(child)) continue;
|
|
2429
|
+
ret = rc_walk_by_level(child.dl_children, walk_type, cb_walking, user_data, user_data2);
|
|
2425
2430
|
if (ret < 0) return ret;
|
|
2426
2431
|
}
|
|
2427
2432
|
return ret;
|
|
@@ -2441,23 +2446,27 @@ function rc_walk_by_level(iter, walk_type, cb_walking, user_data, user_data2) {
|
|
|
2441
2446
|
* or
|
|
2442
2447
|
* WALK_LAST2FIRST
|
|
2443
2448
|
***************************************************************/
|
|
2444
|
-
function rc_walk_by_tree(
|
|
2445
|
-
if (walk_type & walk_type_t.WALK_BYLEVEL) return rc_walk_by_level(
|
|
2449
|
+
function rc_walk_by_tree(iter_, walk_type, cb_walking, user_data, user_data2) {
|
|
2450
|
+
if (walk_type & walk_type_t.WALK_BYLEVEL) return rc_walk_by_level(iter_, walk_type, cb_walking, user_data, user_data2);
|
|
2451
|
+
let iter = [...iter_];
|
|
2446
2452
|
let ret;
|
|
2447
2453
|
let child;
|
|
2448
2454
|
if (walk_type & walk_type_t.WALK_BOTTOM2TOP) for (let i = iter.length; i > 0; i--) {
|
|
2449
2455
|
child = iter[i - 1];
|
|
2450
|
-
|
|
2456
|
+
if (gobj_is_destroying(child)) continue;
|
|
2457
|
+
ret = rc_walk_by_tree(child.dl_children, walk_type, cb_walking, user_data, user_data2);
|
|
2451
2458
|
if (ret < 0) return ret;
|
|
2459
|
+
if (gobj_is_destroying(child)) continue;
|
|
2452
2460
|
ret = walk_ret(cb_walking(child, user_data, user_data2));
|
|
2453
2461
|
if (ret < 0) return ret;
|
|
2454
2462
|
}
|
|
2455
2463
|
else for (let i = 0; i < iter.length; i++) {
|
|
2456
2464
|
child = iter[i];
|
|
2465
|
+
if (gobj_is_destroying(child)) continue;
|
|
2457
2466
|
ret = walk_ret(cb_walking(child, user_data, user_data2));
|
|
2458
2467
|
if (ret < 0) return ret;
|
|
2459
|
-
else if (ret === 0) {
|
|
2460
|
-
ret = rc_walk_by_tree(
|
|
2468
|
+
else if (ret === 0 && !gobj_is_destroying(child)) {
|
|
2469
|
+
ret = rc_walk_by_tree(child.dl_children, walk_type, cb_walking, user_data, user_data2);
|
|
2461
2470
|
if (ret < 0) return ret;
|
|
2462
2471
|
}
|
|
2463
2472
|
}
|
|
@@ -6042,40 +6051,83 @@ function kw_clone_by_not_keys(gobj, kw, keys, verbose) {
|
|
|
6042
6051
|
return kw_clone;
|
|
6043
6052
|
}
|
|
6044
6053
|
/********************************************
|
|
6054
|
+
* The browser's localStorage, or null when there is none (outside a
|
|
6055
|
+
* browser).
|
|
6056
|
+
*
|
|
6057
|
+
* With the site's data blocked (Chrome with cookies blocked, a sandboxed
|
|
6058
|
+
* iframe), READING the window.localStorage property already throws a
|
|
6059
|
+
* SecurityError, not only its getItem(): every app reads its locale at
|
|
6060
|
+
* start, so the app did not start. Such a store is answered as one whose
|
|
6061
|
+
* every call throws that error, so each helper fails as it fails for any
|
|
6062
|
+
* store that refuses it: a read gives the default, a write -1.
|
|
6063
|
+
********************************************/
|
|
6064
|
+
function local_store() {
|
|
6065
|
+
if (typeof window === "undefined") return null;
|
|
6066
|
+
let store;
|
|
6067
|
+
try {
|
|
6068
|
+
store = window.localStorage;
|
|
6069
|
+
} catch (e) {
|
|
6070
|
+
const refuse = () => {
|
|
6071
|
+
throw e;
|
|
6072
|
+
};
|
|
6073
|
+
return {
|
|
6074
|
+
getItem: refuse,
|
|
6075
|
+
setItem: refuse,
|
|
6076
|
+
removeItem: refuse
|
|
6077
|
+
};
|
|
6078
|
+
}
|
|
6079
|
+
return store || null;
|
|
6080
|
+
}
|
|
6081
|
+
/********************************************
|
|
6082
|
+
* A failure of the store that would repeat on every read is warned
|
|
6083
|
+
* once per key, until a read of the key goes well again.
|
|
6084
|
+
********************************************/
|
|
6085
|
+
var local_storage_warned = /* @__PURE__ */ new Set();
|
|
6086
|
+
function warn_local_storage_once(key, msg) {
|
|
6087
|
+
if (local_storage_warned.has(key)) return;
|
|
6088
|
+
local_storage_warned.add(key);
|
|
6089
|
+
log_warning(msg);
|
|
6090
|
+
}
|
|
6091
|
+
/********************************************
|
|
6045
6092
|
* Get a local attribute
|
|
6046
6093
|
*
|
|
6047
6094
|
* The json the entry holds, or `default_value` when there is none
|
|
6048
6095
|
* (written there too with `create`). A json null is no value, as
|
|
6049
6096
|
* json_absent() in C: the default. An entry that is not json (a
|
|
6050
|
-
* corrupt or foreign write) is
|
|
6097
|
+
* corrupt or foreign write) is a WARNING and is REMOVED, so the
|
|
6051
6098
|
* next read finds no entry: it used to console.warn on every read,
|
|
6052
|
-
* for ever
|
|
6053
|
-
* error, and an entry can hold a
|
|
6054
|
-
*
|
|
6099
|
+
* for ever; a new corrupt entry is a new WARNING. Its text is never
|
|
6100
|
+
* shown (JSON.parse() quotes it in its error, and an entry can hold a
|
|
6101
|
+
* token). A store that cannot be read (blocked) is warned once per
|
|
6102
|
+
* key, and the default is NOT written there. Outside a browser: the
|
|
6103
|
+
* default.
|
|
6055
6104
|
********************************************/
|
|
6056
|
-
var local_storage_warned = /* @__PURE__ */ new Set();
|
|
6057
|
-
function warn_local_storage_once(key, what) {
|
|
6058
|
-
if (local_storage_warned.has(key)) return;
|
|
6059
|
-
local_storage_warned.add(key);
|
|
6060
|
-
log_warning(`kw_get_local_storage_value(): localStorage key "${key}" ${what}`);
|
|
6061
|
-
}
|
|
6062
6105
|
function kw_get_local_storage_value(key, default_value, create = false) {
|
|
6063
|
-
|
|
6106
|
+
const store = local_store();
|
|
6107
|
+
if (!store) return default_value;
|
|
6108
|
+
const where = `kw_get_local_storage_value(): localStorage key "${key}"`;
|
|
6064
6109
|
let text;
|
|
6065
6110
|
try {
|
|
6066
|
-
text =
|
|
6111
|
+
text = store.getItem(key);
|
|
6067
6112
|
} catch (e) {
|
|
6068
|
-
warn_local_storage_once(key,
|
|
6113
|
+
warn_local_storage_once(key, `${where} cannot be read (storage blocked?): the default is used`);
|
|
6069
6114
|
return default_value;
|
|
6070
6115
|
}
|
|
6071
6116
|
let value = null;
|
|
6072
6117
|
if (text !== null) try {
|
|
6073
6118
|
value = JSON.parse(text);
|
|
6074
6119
|
} catch (e) {
|
|
6075
|
-
warn_local_storage_once(key, "does not hold json: removed, the default is used");
|
|
6076
|
-
kw_remove_local_storage_value(key);
|
|
6077
6120
|
value = null;
|
|
6121
|
+
try {
|
|
6122
|
+
store.removeItem(key);
|
|
6123
|
+
log_warning(`${where} does not hold json: removed, the default is used`);
|
|
6124
|
+
local_storage_warned.delete(key);
|
|
6125
|
+
} catch (e2) {
|
|
6126
|
+
warn_local_storage_once(key, `${where} does not hold json and cannot be removed: the default is used`);
|
|
6127
|
+
}
|
|
6128
|
+
text = void 0;
|
|
6078
6129
|
}
|
|
6130
|
+
if (text !== void 0) local_storage_warned.delete(key);
|
|
6079
6131
|
if (value === null) {
|
|
6080
6132
|
if (create) kw_set_local_storage_value(key, default_value);
|
|
6081
6133
|
return default_value;
|
|
@@ -6091,15 +6143,26 @@ function kw_get_local_storage_value(key, default_value, create = false) {
|
|
|
6091
6143
|
* reported success on a store that had rejected the write: a full or blocked
|
|
6092
6144
|
* localStorage (quota, private mode) silently discarded the change while the
|
|
6093
6145
|
* UI showed it as saved.
|
|
6146
|
+
*
|
|
6147
|
+
* A value with no json text is refused with an ERROR, as a typed writer
|
|
6148
|
+
* refuses it (json_text_of()): a function was stored as the text
|
|
6149
|
+
* "undefined", and a NaN, a Date or a Map as a text that reads back as
|
|
6150
|
+
* another value. Checked in Node.js too, where there is no store.
|
|
6094
6151
|
********************************************/
|
|
6095
6152
|
function kw_set_local_storage_value(key, value) {
|
|
6096
|
-
if (
|
|
6097
|
-
|
|
6098
|
-
log_error(`kw_set_local_storage_value(): invalid key or value: key=${key}`);
|
|
6153
|
+
if (!key) {
|
|
6154
|
+
log_error(`kw_set_local_storage_value(): invalid key: key=${key}`);
|
|
6099
6155
|
return -1;
|
|
6100
6156
|
}
|
|
6157
|
+
const text = json_text_of(value);
|
|
6158
|
+
if (text === void 0) {
|
|
6159
|
+
log_error(`kw_set_local_storage_value(): cannot save "${key}": a value with no json text`);
|
|
6160
|
+
return -1;
|
|
6161
|
+
}
|
|
6162
|
+
const store = local_store();
|
|
6163
|
+
if (!store) return 0;
|
|
6101
6164
|
try {
|
|
6102
|
-
|
|
6165
|
+
store.setItem(key, text);
|
|
6103
6166
|
return 0;
|
|
6104
6167
|
} catch (e) {
|
|
6105
6168
|
log_error(`kw_set_local_storage_value(): cannot save "${key}" (storage full or blocked?): ${e && e.message ? e.message : e}`);
|
|
@@ -6110,15 +6173,16 @@ function kw_set_local_storage_value(key, value) {
|
|
|
6110
6173
|
* Remove local attribute
|
|
6111
6174
|
********************************************/
|
|
6112
6175
|
function kw_remove_local_storage_value(key) {
|
|
6113
|
-
|
|
6176
|
+
const store = local_store();
|
|
6177
|
+
if (!store) return;
|
|
6114
6178
|
if (!key) {
|
|
6115
|
-
|
|
6179
|
+
log_error(`kw_remove_local_storage_value(): invalid key: key=${key}`);
|
|
6116
6180
|
return;
|
|
6117
6181
|
}
|
|
6118
6182
|
try {
|
|
6119
|
-
|
|
6183
|
+
store.removeItem(key);
|
|
6120
6184
|
} catch (e) {
|
|
6121
|
-
|
|
6185
|
+
log_warning(`kw_remove_local_storage_value(): cannot remove "${key}" (storage blocked?): ${e && e.message ? e.message : e}`);
|
|
6122
6186
|
}
|
|
6123
6187
|
}
|
|
6124
6188
|
/*************************************************************
|
|
@@ -7311,11 +7375,21 @@ function index_in_list(list, elm) {
|
|
|
7311
7375
|
************************************************************/
|
|
7312
7376
|
function node_uuid() {
|
|
7313
7377
|
let uuid = "";
|
|
7314
|
-
|
|
7315
|
-
|
|
7378
|
+
const store = local_store();
|
|
7379
|
+
if (store) {
|
|
7380
|
+
try {
|
|
7381
|
+
uuid = store.getItem("host_uuid");
|
|
7382
|
+
} catch (e) {
|
|
7383
|
+
uuid = null;
|
|
7384
|
+
warn_local_storage_once("host_uuid", "node_uuid(): localStorage cannot be read (storage blocked?): a uuid of this page only");
|
|
7385
|
+
}
|
|
7316
7386
|
if (!uuid && window.crypto?.randomUUID) {
|
|
7317
7387
|
uuid = window.crypto.randomUUID();
|
|
7318
|
-
|
|
7388
|
+
try {
|
|
7389
|
+
store.setItem("host_uuid", uuid);
|
|
7390
|
+
} catch (e) {
|
|
7391
|
+
warn_local_storage_once("host_uuid", "node_uuid(): localStorage cannot be written (storage full or blocked?): a uuid of this page only");
|
|
7392
|
+
}
|
|
7319
7393
|
}
|
|
7320
7394
|
} else if (typeof globalThis !== "undefined" && globalThis.crypto?.randomUUID) uuid = globalThis.crypto.randomUUID();
|
|
7321
7395
|
else uuid = "00000000-0000-0000-0000-000000000000";
|
|
@@ -8604,7 +8678,7 @@ var attrs_table = [
|
|
|
8604
8678
|
SDATA(data_type_t.DTP_STRING, "cert_pem", sdata_flag_t.SDF_PERSIST, "", "SSL server certification, PEM str format"),
|
|
8605
8679
|
SDATA(data_type_t.DTP_JSON, "extra_info", sdata_flag_t.SDF_RD, "{}", "dict data set by user, added to the identity card msg."),
|
|
8606
8680
|
SDATA(data_type_t.DTP_LIST, "required_services", sdata_flag_t.SDF_RD, "[]", "Services this LINK requires (identity card). Empty = the yuno's `required_services`, as before. A yuno with several links to DIFFERENT backends must set it per link: the yuno-wide list is the union, so every backend is told the service names of all the others."),
|
|
8607
|
-
SDATA(data_type_t.DTP_INTEGER, "timeout_retry", sdata_flag_t.SDF_RD, "5000", "First reconnect delay (ms). It BACKS OFF from here, doubling up to timeout_retry_max, and resets when a session is reached"),
|
|
8681
|
+
SDATA(data_type_t.DTP_INTEGER, "timeout_retry", sdata_flag_t.SDF_RD, "5000", "First reconnect delay (ms), at least 1000. It BACKS OFF from here, doubling up to timeout_retry_max, and resets when a session is reached"),
|
|
8608
8682
|
SDATA(data_type_t.DTP_INTEGER, "timeout_retry_max", sdata_flag_t.SDF_RD, "60000", "Cap of the reconnect backoff (ms). Set it equal to timeout_retry for the old fixed-interval behaviour"),
|
|
8609
8683
|
SDATA(data_type_t.DTP_INTEGER, "timeout_idack", sdata_flag_t.SDF_RD, "5000", "timeout waiting idAck"),
|
|
8610
8684
|
SDATA(data_type_t.DTP_POINTER, "subscriber", 0, 0, "subscriber of output-events. If null then subscriber is the parent"),
|
|
@@ -8629,7 +8703,8 @@ var PRIVATE_DATA = {
|
|
|
8629
8703
|
inside_on_open: false,
|
|
8630
8704
|
retry_ms: 0,
|
|
8631
8705
|
retry_ms_before_session: 0,
|
|
8632
|
-
session_since: 0
|
|
8706
|
+
session_since: 0,
|
|
8707
|
+
retry_floor_warned: false
|
|
8633
8708
|
};
|
|
8634
8709
|
var __gclass__ = null;
|
|
8635
8710
|
/******************************
|
|
@@ -8901,7 +8976,7 @@ var CLOSE_PEER_FAULT = 4002;
|
|
|
8901
8976
|
function close_for_peer_fault(gobj, reason) {
|
|
8902
8977
|
let priv = gobj.priv;
|
|
8903
8978
|
if (gobj_current_state(gobj) === "ST_SESSION") {
|
|
8904
|
-
if (performance.now() - priv.session_since <
|
|
8979
|
+
if (performance.now() - priv.session_since < retry_bounds(gobj).max) priv.retry_ms = priv.retry_ms_before_session;
|
|
8905
8980
|
priv.retry_ms_before_session = 0;
|
|
8906
8981
|
}
|
|
8907
8982
|
close_websocket(gobj, CLOSE_PEER_FAULT, reason);
|
|
@@ -9173,6 +9248,32 @@ function ac_on_close(gobj, event, kw, src) {
|
|
|
9173
9248
|
return 0;
|
|
9174
9249
|
}
|
|
9175
9250
|
/***************************************************************
|
|
9251
|
+
* The first delay of the backoff and its cap.
|
|
9252
|
+
*
|
|
9253
|
+
* A first delay below RETRY_FLOOR_MS is raised to it, with a WARNING
|
|
9254
|
+
* once: `timeout_retry` 0 never left 0 (0 doubled is 0), so a server
|
|
9255
|
+
* that closed before the ack was reconnected in a loop with no wait,
|
|
9256
|
+
* hundreds of connections a second.
|
|
9257
|
+
***************************************************************/
|
|
9258
|
+
var RETRY_FLOOR_MS = 1e3;
|
|
9259
|
+
function retry_bounds(gobj) {
|
|
9260
|
+
let priv = gobj.priv;
|
|
9261
|
+
let base = gobj_read_integer_attr(gobj, "timeout_retry");
|
|
9262
|
+
let max = gobj_read_integer_attr(gobj, "timeout_retry_max");
|
|
9263
|
+
if (!(base >= RETRY_FLOOR_MS)) {
|
|
9264
|
+
if (!priv.retry_floor_warned) {
|
|
9265
|
+
priv.retry_floor_warned = true;
|
|
9266
|
+
log_warning(`${gobj_short_name(gobj)}: timeout_retry ${base} ms is below ${RETRY_FLOOR_MS} ms: ${RETRY_FLOOR_MS} ms is used`);
|
|
9267
|
+
}
|
|
9268
|
+
base = RETRY_FLOOR_MS;
|
|
9269
|
+
}
|
|
9270
|
+
if (!(max >= base)) max = base;
|
|
9271
|
+
return {
|
|
9272
|
+
base,
|
|
9273
|
+
max
|
|
9274
|
+
};
|
|
9275
|
+
}
|
|
9276
|
+
/***************************************************************
|
|
9176
9277
|
* How long to wait before the next reconnect attempt.
|
|
9177
9278
|
*
|
|
9178
9279
|
* The delay used to be a constant (`timeout_retry`, 5s), for ever. A
|
|
@@ -9193,9 +9294,7 @@ function ac_on_close(gobj, event, kw, src) {
|
|
|
9193
9294
|
***************************************************************/
|
|
9194
9295
|
function next_retry(gobj) {
|
|
9195
9296
|
let priv = gobj.priv;
|
|
9196
|
-
|
|
9197
|
-
let max = gobj_read_integer_attr(gobj, "timeout_retry_max");
|
|
9198
|
-
if (max < base) max = base;
|
|
9297
|
+
const { base, max } = retry_bounds(gobj);
|
|
9199
9298
|
priv.retry_ms = priv.retry_ms ? Math.min(priv.retry_ms * 2, max) : base;
|
|
9200
9299
|
let jitter = priv.retry_ms * .2;
|
|
9201
9300
|
let ms = priv.retry_ms - jitter + Math.random() * 2 * jitter;
|
|
@@ -9488,6 +9587,6 @@ function register_c_ievent_cli() {
|
|
|
9488
9587
|
return create_gclass(GCLASS_NAME);
|
|
9489
9588
|
}
|
|
9490
9589
|
//#endregion
|
|
9491
|
-
export { GObj, SDATA, SDATAAUTHZ, SDATACM, SDATACM2, SDATADF, SDATAPM, SDATAPM0, SDATA_END, SDataDesc, YUNETA_VERSION, __yuno__, build_command_response, build_path, build_stats_response, clean_name, clear_timeout, cmp_two_simple_json, command_parameter_from_json, command_parameter_from_text, command_parser, createElement2, createOneHtml, create_json_record, create_template_record, current_timestamp, data_type_t, db_list_persistent_attrs, db_load_persistent_attrs, db_remove_persistent_attrs, db_save_persistent_attrs, debounce, delete_from_list, duplicate_objects, empty_json, empty_string, escapeHtml, event_flag_t, flat2json, flat_apply, flat_diff, flat_key_join, flat_key_split, gclass_add_ev_action, gclass_add_event_type, gclass_add_state, gclass_check_fsm, gclass_create, gclass_event_type, gclass_find_by_name, gclass_flag_t, gclass_unregister, getPositionRelativeToBody, get_function_name, get_now, gobj_bottom_gobj, gobj_change_parent, gobj_change_state, gobj_command, gobj_create, gobj_create2, gobj_create_default_service, gobj_create_pure_child, gobj_create_service, gobj_create_volatil, gobj_create_yuno, gobj_current_state, gobj_default_service, gobj_deliver_posted_events, gobj_destroy, gobj_find_child, gobj_find_event_type, gobj_find_gobj, gobj_find_service, gobj_find_subscribings, gobj_find_subscriptions, gobj_flag_t, gobj_full_name, gobj_gclass_name, gobj_get_gclass_trace_level, gobj_get_gclass_trace_level2, gobj_get_gclass_trace_no_level, gobj_get_global_trace_level, gobj_get_global_trace_no_level, gobj_global_trace_level, gobj_global_trace_no_level, gobj_has_attr, gobj_has_event, gobj_has_output_event, gobj_hsdata, gobj_is_destroying, gobj_is_playing, gobj_is_pure_child, gobj_is_running, gobj_is_service, gobj_is_volatil, gobj_list_persistent_attrs, gobj_list_subscriptions, gobj_load_persistent_attrs, gobj_match_children, gobj_match_children_tree, gobj_match_gobj, gobj_name, gobj_parent, gobj_pause, gobj_play, gobj_post_event, gobj_posted_events_size, gobj_publish_event, gobj_read_attr, gobj_read_attrs, gobj_read_bool_attr, gobj_read_integer_attr, gobj_read_pointer_attr, gobj_read_str_attr, gobj_remove_persistent_attrs, gobj_repr_global_trace_levels, gobj_reset_volatil_attrs, gobj_save_persistent_attrs, gobj_search_path, gobj_send_event, gobj_services, gobj_set_bottom_gobj, gobj_set_deep_trace, gobj_set_gclass_no_trace, gobj_set_gclass_trace, gobj_set_global_no_trace, gobj_set_global_no_trace2, gobj_set_global_trace, gobj_set_global_trace2, gobj_set_gobj_no_trace, gobj_set_gobj_trace, gobj_set_trace_machine_format, gobj_short_name, gobj_start, gobj_start_children, gobj_start_tree, gobj_start_up, gobj_stats, gobj_stop, gobj_stop_children, gobj_stop_tree, gobj_subscribe_event, gobj_trace_level, gobj_trace_machine_format, gobj_trace_no_level, gobj_unsubscribe_event, gobj_unsubscribe_list, gobj_walk_gobj_children, gobj_walk_gobj_children_tree, gobj_write_attr, gobj_write_attrs, gobj_write_bool_attr, gobj_write_integer_attr, gobj_write_str_attr, gobj_yuno, gobj_yuno_id, gobj_yuno_name, gobj_yuno_role, html_markup, id_index_in_obj_list, index_in_list, is_array, is_boolean, is_date, is_function, is_gobj, is_html_markup, is_metadata_key, is_null, is_number, is_object, is_private_key, is_pure_number, is_secret_name, is_string, jdb_delete, jdb_get, jdb_get_by_idx, jdb_get_topic, jdb_init, jdb_update, json2flat, json_array_append, json_array_append_new, json_array_extend, json_array_remove, json_array_size, json_deep_copy, json_is_identical, json_mask_secrets, json_object_del, json_object_get, json_object_set, json_object_set_new, json_object_size, json_object_update, json_object_update_existing, json_object_update_missing, json_size, jwt2json, jwtDecode, kw_clone_by_keys, kw_clone_by_not_keys, kw_collect, kw_delete, kw_find_json_in_list, kw_find_path, kw_flag_t, kw_get_bool, kw_get_dict, kw_get_dict_value, kw_get_int, kw_get_list, kw_get_local_storage_value, kw_get_pointer, kw_get_real, kw_get_str, kw_has_key, kw_match_simple, kw_pop, kw_remove_local_storage_value, kw_select, kw_set_dict_value, kw_set_local_storage_value, kw_set_subdict_value, kwid_collect, kwid_find_one_record, kwid_get_ids, kwid_match_id, kwid_new_dict, kwid_new_list, list2options, load_json_file, log_debug, log_error, log_info, log_warning, mask_secrets_inline, msg_iev_get_msg_type, msg_iev_get_stack, msg_iev_push_stack, msg_iev_read_key, msg_iev_set_msg_type, msg_iev_write_key, node_uuid, parseBoolean, parseSVG, refresh_language, register_c_ievent_cli, register_c_timer, register_c_yuno, safeSrc, sdata_flag_t, send_http_json_post, set_console_log_enabled, set_console_log_filter, set_log_callback, set_remote_log_functions, set_strings_are_text, set_timeout, set_timeout_periodic, sprintf, stats_parser, str_in_list, strcasecmp, strcmp, strings_are_text, strncmp, strs_in_list, strstr, template_get_field_desc, timeTracker, trace_json, trace_json_masked, trace_level_t, trace_msg, treedb_decoder_fkey, treedb_decoder_hook, treedb_encoder_fkey, treedb_get_field_desc, treedb_hook_data_size, vsprintf, walk_type_t };
|
|
9590
|
+
export { GObj, SDATA, SDATAAUTHZ, SDATACM, SDATACM2, SDATADF, SDATAPM, SDATAPM0, SDATA_END, SDataDesc, YUNETA_VERSION, __yuno__, build_command_response, build_path, build_stats_response, clean_name, clear_timeout, cmp_two_simple_json, command_parameter_from_json, command_parameter_from_text, command_parser, createElement2, createOneHtml, create_json_record, create_template_record, current_timestamp, data_type_t, db_list_persistent_attrs, db_load_persistent_attrs, db_remove_persistent_attrs, db_save_persistent_attrs, debounce, delete_from_list, duplicate_objects, empty_json, empty_string, escapeHtml, event_flag_t, flat2json, flat_apply, flat_diff, flat_key_join, flat_key_split, gclass_add_ev_action, gclass_add_event_type, gclass_add_state, gclass_check_fsm, gclass_create, gclass_event_type, gclass_find_by_name, gclass_flag_t, gclass_unregister, getPositionRelativeToBody, get_function_name, get_now, gobj_bottom_gobj, gobj_change_parent, gobj_change_state, gobj_command, gobj_create, gobj_create2, gobj_create_default_service, gobj_create_pure_child, gobj_create_service, gobj_create_volatil, gobj_create_yuno, gobj_current_state, gobj_default_service, gobj_deliver_posted_events, gobj_destroy, gobj_find_child, gobj_find_event_type, gobj_find_gobj, gobj_find_service, gobj_find_subscribings, gobj_find_subscriptions, gobj_flag_t, gobj_full_name, gobj_gclass_name, gobj_get_gclass_trace_level, gobj_get_gclass_trace_level2, gobj_get_gclass_trace_no_level, gobj_get_global_trace_level, gobj_get_global_trace_no_level, gobj_global_trace_level, gobj_global_trace_no_level, gobj_has_attr, gobj_has_event, gobj_has_output_event, gobj_hsdata, gobj_is_destroying, gobj_is_playing, gobj_is_pure_child, gobj_is_running, gobj_is_service, gobj_is_volatil, gobj_list_persistent_attrs, gobj_list_subscriptions, gobj_load_persistent_attrs, gobj_match_children, gobj_match_children_tree, gobj_match_gobj, gobj_name, gobj_parent, gobj_pause, gobj_play, gobj_post_event, gobj_posted_events_size, gobj_publish_event, gobj_read_attr, gobj_read_attrs, gobj_read_bool_attr, gobj_read_integer_attr, gobj_read_pointer_attr, gobj_read_str_attr, gobj_remove_persistent_attrs, gobj_repr_global_trace_levels, gobj_reset_volatil_attrs, gobj_save_persistent_attrs, gobj_search_path, gobj_send_event, gobj_services, gobj_set_bottom_gobj, gobj_set_deep_trace, gobj_set_gclass_no_trace, gobj_set_gclass_trace, gobj_set_global_no_trace, gobj_set_global_no_trace2, gobj_set_global_trace, gobj_set_global_trace2, gobj_set_gobj_no_trace, gobj_set_gobj_trace, gobj_set_trace_machine_format, gobj_short_name, gobj_start, gobj_start_children, gobj_start_tree, gobj_start_up, gobj_stats, gobj_stop, gobj_stop_children, gobj_stop_tree, gobj_subscribe_event, gobj_trace_level, gobj_trace_machine_format, gobj_trace_no_level, gobj_unsubscribe_event, gobj_unsubscribe_list, gobj_walk_gobj_children, gobj_walk_gobj_children_tree, gobj_write_attr, gobj_write_attrs, gobj_write_bool_attr, gobj_write_integer_attr, gobj_write_str_attr, gobj_yuno, gobj_yuno_id, gobj_yuno_name, gobj_yuno_role, html_markup, id_index_in_obj_list, index_in_list, is_array, is_boolean, is_date, is_function, is_gobj, is_html_markup, is_metadata_key, is_null, is_number, is_object, is_private_key, is_pure_number, is_secret_name, is_string, jdb_delete, jdb_get, jdb_get_by_idx, jdb_get_topic, jdb_init, jdb_update, json2flat, json_array_append, json_array_append_new, json_array_extend, json_array_remove, json_array_size, json_deep_copy, json_is_identical, json_mask_secrets, json_object_del, json_object_get, json_object_set, json_object_set_new, json_object_size, json_object_update, json_object_update_existing, json_object_update_missing, json_size, json_text_of, jwt2json, jwtDecode, kw_clone_by_keys, kw_clone_by_not_keys, kw_collect, kw_delete, kw_find_json_in_list, kw_find_path, kw_flag_t, kw_get_bool, kw_get_dict, kw_get_dict_value, kw_get_int, kw_get_list, kw_get_local_storage_value, kw_get_pointer, kw_get_real, kw_get_str, kw_has_key, kw_match_simple, kw_pop, kw_remove_local_storage_value, kw_select, kw_set_dict_value, kw_set_local_storage_value, kw_set_subdict_value, kwid_collect, kwid_find_one_record, kwid_get_ids, kwid_match_id, kwid_new_dict, kwid_new_list, list2options, load_json_file, log_debug, log_error, log_info, log_warning, mask_secrets_inline, msg_iev_get_msg_type, msg_iev_get_stack, msg_iev_push_stack, msg_iev_read_key, msg_iev_set_msg_type, msg_iev_write_key, node_uuid, parseBoolean, parseSVG, refresh_language, register_c_ievent_cli, register_c_timer, register_c_yuno, safeSrc, sdata_flag_t, send_http_json_post, set_console_log_enabled, set_console_log_filter, set_log_callback, set_remote_log_functions, set_strings_are_text, set_timeout, set_timeout_periodic, sprintf, stats_parser, str_in_list, strcasecmp, strcmp, strings_are_text, strncmp, strs_in_list, strstr, template_get_field_desc, timeTracker, trace_json, trace_json_masked, trace_level_t, trace_msg, treedb_decoder_fkey, treedb_decoder_hook, treedb_encoder_fkey, treedb_get_field_desc, treedb_hook_data_size, vsprintf, walk_type_t };
|
|
9492
9591
|
|
|
9493
9592
|
//# sourceMappingURL=gobj-js.es.js.map
|