@yuneta/gobj-ui 5.4.0 → 5.6.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/README.md +114 -0
- package/dist/gobj-ui.cjs.js +562 -216
- package/dist/gobj-ui.es.js +559 -217
- package/index.js +6 -0
- package/package.json +44 -44
- package/src/c_yui_nav.js +6 -1
- package/src/c_yui_node.js +34 -2
- package/src/c_yui_service_view.js +362 -0
- package/src/c_yui_shell.css +47 -0
- package/src/c_yui_shell.js +148 -16
package/dist/gobj-ui.cjs.js
CHANGED
|
@@ -799,7 +799,7 @@ function secondary_nav_renders(item, layout) {
|
|
|
799
799
|
/***************************************************************
|
|
800
800
|
* Constants
|
|
801
801
|
***************************************************************/
|
|
802
|
-
var GCLASS_NAME$
|
|
802
|
+
var GCLASS_NAME$18 = "C_YUI_SHELL";
|
|
803
803
|
var __last_shell__ = null;
|
|
804
804
|
var ZONE_IDS = [
|
|
805
805
|
"top",
|
|
@@ -821,7 +821,7 @@ var LAYER_DEFS = [
|
|
|
821
821
|
/***************************************************************
|
|
822
822
|
* Attrs
|
|
823
823
|
***************************************************************/
|
|
824
|
-
var attrs_table$
|
|
824
|
+
var attrs_table$18 = [
|
|
825
825
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
826
826
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_JSON, "config", 0, null, "Shell declarative config (zones, menu, stages, toolbar)"),
|
|
827
827
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "default_route", 0, "", "Fallback route if hash is empty"),
|
|
@@ -832,7 +832,7 @@ var attrs_table$17 = [
|
|
|
832
832
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "Root HTMLElement of the shell"),
|
|
833
833
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
834
834
|
];
|
|
835
|
-
var PRIVATE_DATA$
|
|
835
|
+
var PRIVATE_DATA$18 = {
|
|
836
836
|
zones: {},
|
|
837
837
|
layers: {},
|
|
838
838
|
stages: {},
|
|
@@ -854,14 +854,14 @@ var PRIVATE_DATA$17 = {
|
|
|
854
854
|
conn_nodes: [],
|
|
855
855
|
active_dropdown: null
|
|
856
856
|
};
|
|
857
|
-
var __gclass__$
|
|
857
|
+
var __gclass__$18 = null;
|
|
858
858
|
/******************************
|
|
859
859
|
* Framework Methods
|
|
860
860
|
******************************/
|
|
861
861
|
/***************************************************************
|
|
862
862
|
* Framework Method: Create
|
|
863
863
|
***************************************************************/
|
|
864
|
-
function mt_create$
|
|
864
|
+
function mt_create$18(gobj) {
|
|
865
865
|
const subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
|
|
866
866
|
if (subscriber) (0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
|
|
867
867
|
__last_shell__ = gobj;
|
|
@@ -870,7 +870,7 @@ function mt_create$17(gobj) {
|
|
|
870
870
|
/***************************************************************
|
|
871
871
|
* Framework Method: Start
|
|
872
872
|
***************************************************************/
|
|
873
|
-
function mt_start$
|
|
873
|
+
function mt_start$15(gobj) {
|
|
874
874
|
let config = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "config") || {};
|
|
875
875
|
let priv = gobj.priv;
|
|
876
876
|
if (!validate_config(config)) {
|
|
@@ -939,7 +939,7 @@ function mt_start$14(gobj) {
|
|
|
939
939
|
/***************************************************************
|
|
940
940
|
* Framework Method: Stop
|
|
941
941
|
***************************************************************/
|
|
942
|
-
function mt_stop$
|
|
942
|
+
function mt_stop$15(gobj) {
|
|
943
943
|
let priv = gobj.priv;
|
|
944
944
|
if (!priv) return;
|
|
945
945
|
close_toolbar_dropdown(gobj);
|
|
@@ -980,7 +980,7 @@ function mt_stop$14(gobj) {
|
|
|
980
980
|
/***************************************************************
|
|
981
981
|
* Framework Method: Destroy
|
|
982
982
|
***************************************************************/
|
|
983
|
-
function mt_destroy$
|
|
983
|
+
function mt_destroy$18(gobj) {
|
|
984
984
|
close_toolbar_dropdown(gobj);
|
|
985
985
|
let $container = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container");
|
|
986
986
|
if ($container && $container.parentNode) $container.parentNode.removeChild($container);
|
|
@@ -1590,8 +1590,7 @@ function build_view_gobj(gobj, entry, route, stage) {
|
|
|
1590
1590
|
}
|
|
1591
1591
|
stage.el.appendChild($view);
|
|
1592
1592
|
(0, _yuneta_gobj_js.gobj_start)(view);
|
|
1593
|
-
|
|
1594
|
-
if (priv && typeof priv.translator === "function" && target.gclass === "C_YUI_NAV") (0, _yuneta_gobj_js.refresh_language)($view, priv.translator);
|
|
1593
|
+
if (target.gclass === "C_YUI_NAV") yui_shell_translate(gobj, $view);
|
|
1595
1594
|
return view;
|
|
1596
1595
|
}
|
|
1597
1596
|
function safe_id(s) {
|
|
@@ -1657,17 +1656,59 @@ function build_toolbar(gobj, config) {
|
|
|
1657
1656
|
$zone.appendChild($bar);
|
|
1658
1657
|
}
|
|
1659
1658
|
/************************************************************
|
|
1659
|
+
* The badge node of a toolbar item — the little count pinned to
|
|
1660
|
+
* the corner of its icon (unread notifications, active alarms).
|
|
1661
|
+
*
|
|
1662
|
+
* ALWAYS rendered, hidden when empty, so the runtime setter has a
|
|
1663
|
+
* node to write into and does not have to rebuild the button.
|
|
1664
|
+
*
|
|
1665
|
+
* EMPTY IS 0, "" AND null ALIKE: a badge reading "0" is worse than
|
|
1666
|
+
* no badge — it draws the eye to say nothing. A count is only
|
|
1667
|
+
* worth a pixel when there IS something.
|
|
1668
|
+
*
|
|
1669
|
+
* Capped at 99+: the toolbar is a fixed-width row, and a four
|
|
1670
|
+
* digit pill pushes the items next to it off a phone screen.
|
|
1671
|
+
*
|
|
1672
|
+
* role="status" and NOT aria-hidden, deliberately. The button
|
|
1673
|
+
* carries an explicit aria-label, and an explicit label REPLACES
|
|
1674
|
+
* the element's content for a screen reader — so a badge inside
|
|
1675
|
+
* it would be silent. As its own live region it is both read and
|
|
1676
|
+
* announced when the count changes, which is the whole point of a
|
|
1677
|
+
* badge that means "something needs you".
|
|
1678
|
+
************************************************************/
|
|
1679
|
+
function badge_text(value) {
|
|
1680
|
+
if (value === null || value === void 0 || value === false) return "";
|
|
1681
|
+
if (typeof value === "number") {
|
|
1682
|
+
if (!isFinite(value) || value <= 0) return "";
|
|
1683
|
+
return value > 99 ? "99+" : String(Math.floor(value));
|
|
1684
|
+
}
|
|
1685
|
+
return String(value).trim();
|
|
1686
|
+
}
|
|
1687
|
+
function badge_node(value) {
|
|
1688
|
+
let text = badge_text(value);
|
|
1689
|
+
let attrs = {
|
|
1690
|
+
class: "yui-toolbar-badge",
|
|
1691
|
+
role: "status"
|
|
1692
|
+
};
|
|
1693
|
+
if (!text) attrs.hidden = "hidden";
|
|
1694
|
+
return [
|
|
1695
|
+
"span",
|
|
1696
|
+
attrs,
|
|
1697
|
+
text
|
|
1698
|
+
];
|
|
1699
|
+
}
|
|
1700
|
+
/************************************************************
|
|
1660
1701
|
* Renderer for the default ("action") item kind.
|
|
1661
1702
|
************************************************************/
|
|
1662
1703
|
function build_toolbar_action_item(gobj, it) {
|
|
1663
1704
|
let children = [];
|
|
1664
1705
|
if (!(0, _yuneta_gobj_js.empty_string)(it.icon)) children.push([
|
|
1665
1706
|
"span",
|
|
1666
|
-
{ class: "icon" },
|
|
1667
|
-
["i", {
|
|
1707
|
+
{ class: "icon yui-toolbar-icon" },
|
|
1708
|
+
[["i", {
|
|
1668
1709
|
class: it.icon,
|
|
1669
1710
|
"aria-hidden": "true"
|
|
1670
|
-
}]
|
|
1711
|
+
}], badge_node(it.badge)]
|
|
1671
1712
|
]);
|
|
1672
1713
|
if (!(0, _yuneta_gobj_js.empty_string)(it.name)) children.push([
|
|
1673
1714
|
"span",
|
|
@@ -1962,7 +2003,7 @@ function open_toolbar_dropdown(gobj, item, action, $trigger) {
|
|
|
1962
2003
|
} else style_parts.push(`left:${Math.max(0, Math.round(rect.left))}px`);
|
|
1963
2004
|
$panel.setAttribute("style", style_parts.join(";"));
|
|
1964
2005
|
priv.layers.popup.appendChild($panel);
|
|
1965
|
-
|
|
2006
|
+
yui_shell_translate(gobj, $panel);
|
|
1966
2007
|
let backdrop = (ev) => {
|
|
1967
2008
|
if ($panel.contains(ev.target)) return;
|
|
1968
2009
|
if ($trigger && $trigger.contains(ev.target)) return;
|
|
@@ -2375,14 +2416,14 @@ function ac_nav_item_close(gobj, event, kw, src) {
|
|
|
2375
2416
|
/***************************************************************
|
|
2376
2417
|
* FSM
|
|
2377
2418
|
***************************************************************/
|
|
2378
|
-
var gmt$
|
|
2379
|
-
mt_create: mt_create$
|
|
2380
|
-
mt_start: mt_start$
|
|
2381
|
-
mt_stop: mt_stop$
|
|
2382
|
-
mt_destroy: mt_destroy$
|
|
2419
|
+
var gmt$18 = {
|
|
2420
|
+
mt_create: mt_create$18,
|
|
2421
|
+
mt_start: mt_start$15,
|
|
2422
|
+
mt_stop: mt_stop$15,
|
|
2423
|
+
mt_destroy: mt_destroy$18
|
|
2383
2424
|
};
|
|
2384
|
-
function create_gclass$
|
|
2385
|
-
if (__gclass__$
|
|
2425
|
+
function create_gclass$18(gclass_name) {
|
|
2426
|
+
if (__gclass__$18) {
|
|
2386
2427
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
2387
2428
|
return -1;
|
|
2388
2429
|
}
|
|
@@ -2403,19 +2444,19 @@ function create_gclass$17(gclass_name) {
|
|
|
2403
2444
|
null
|
|
2404
2445
|
]
|
|
2405
2446
|
]]];
|
|
2406
|
-
__gclass__$
|
|
2447
|
+
__gclass__$18 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
2407
2448
|
["EV_NAV_CLICKED", 0],
|
|
2408
2449
|
["EV_DRAWER_CLOSE_REQUESTED", 0],
|
|
2409
2450
|
["EV_NAV_ITEM_CLOSE", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
2410
2451
|
["EV_ROUTE_REQUESTED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
2411
2452
|
["EV_ROUTE_CHANGED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
2412
2453
|
["EV_LANGUAGE_CHANGED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_PUBLIC_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS]
|
|
2413
|
-
], states, gmt$
|
|
2414
|
-
if (!__gclass__$
|
|
2454
|
+
], states, gmt$18, 0, attrs_table$18, PRIVATE_DATA$18, 0, 0, 0, _yuneta_gobj_js.gclass_flag_t.gcflag_no_check_output_events);
|
|
2455
|
+
if (!__gclass__$18) return -1;
|
|
2415
2456
|
return 0;
|
|
2416
2457
|
}
|
|
2417
2458
|
function register_c_yui_shell() {
|
|
2418
|
-
return create_gclass$
|
|
2459
|
+
return create_gclass$18(GCLASS_NAME$18);
|
|
2419
2460
|
}
|
|
2420
2461
|
/***************************************************************
|
|
2421
2462
|
* Public helpers — exported alongside register_c_yui_shell().
|
|
@@ -2474,7 +2515,7 @@ function remembered_position(gobj, route) {
|
|
|
2474
2515
|
function yui_shell_of(gobj) {
|
|
2475
2516
|
let g = gobj;
|
|
2476
2517
|
while (g) {
|
|
2477
|
-
if ((0, _yuneta_gobj_js.gobj_gclass_name)(g) === GCLASS_NAME$
|
|
2518
|
+
if ((0, _yuneta_gobj_js.gobj_gclass_name)(g) === GCLASS_NAME$18) return g;
|
|
2478
2519
|
g = (0, _yuneta_gobj_js.gobj_parent)(g);
|
|
2479
2520
|
}
|
|
2480
2521
|
return __last_shell__;
|
|
@@ -2611,9 +2652,10 @@ function yui_shell_refresh_avatars(shell_gobj) {
|
|
|
2611
2652
|
* Register the host's i18n translator (a t-function:
|
|
2612
2653
|
* key => translated string). The host still translates the
|
|
2613
2654
|
* static shell tree itself via refresh_language($container, t);
|
|
2614
|
-
* this is only so the shell
|
|
2615
|
-
*
|
|
2616
|
-
*
|
|
2655
|
+
* this is only so the shell — and the library components that
|
|
2656
|
+
* build DOM under it — can translate DOM built LAZILY, after
|
|
2657
|
+
* that one-shot pass and often outside $container.
|
|
2658
|
+
* Optional: with no translator such DOM renders raw keys
|
|
2617
2659
|
* (the previous behaviour).
|
|
2618
2660
|
************************************************************/
|
|
2619
2661
|
function yui_shell_set_translator(shell_gobj, t) {
|
|
@@ -2622,6 +2664,33 @@ function yui_shell_set_translator(shell_gobj, t) {
|
|
|
2622
2664
|
priv.translator = typeof t === "function" ? t : null;
|
|
2623
2665
|
}
|
|
2624
2666
|
/************************************************************
|
|
2667
|
+
* Apply the registered translator to a FRESHLY BUILT subtree.
|
|
2668
|
+
*
|
|
2669
|
+
* Carrying the `i18n` key on a node is not enough for it to
|
|
2670
|
+
* render translated: the node is born holding the raw English
|
|
2671
|
+
* key, and the host's refresh_language() passes walk what
|
|
2672
|
+
* ALREADY exists — the shell tree at start up, document.body on
|
|
2673
|
+
* a language switch. Anything built after that (a dropdown
|
|
2674
|
+
* panel, a nav a node renders when you walk into it) is reached
|
|
2675
|
+
* by neither, so it renders the key: lower-case English that
|
|
2676
|
+
* never changes language, i.e. exactly what a MISSING key looks
|
|
2677
|
+
* like.
|
|
2678
|
+
*
|
|
2679
|
+
* The division of labour, unchanged: LIBRARY-built DOM is
|
|
2680
|
+
* translated through here; APP view gclasses translate their own
|
|
2681
|
+
* DOM (they own a `t` — see mount_view).
|
|
2682
|
+
*
|
|
2683
|
+
* Silent no-op with no shell or no translator: an app that never
|
|
2684
|
+
* registered one keeps the previous behaviour instead of losing
|
|
2685
|
+
* its chrome.
|
|
2686
|
+
************************************************************/
|
|
2687
|
+
function yui_shell_translate(shell_gobj, $el) {
|
|
2688
|
+
if (!$el || !shell_gobj || !(0, _yuneta_gobj_js.is_gobj)(shell_gobj)) return;
|
|
2689
|
+
let priv = shell_gobj.priv;
|
|
2690
|
+
if (!priv || typeof priv.translator !== "function") return;
|
|
2691
|
+
(0, _yuneta_gobj_js.refresh_language)($el, priv.translator);
|
|
2692
|
+
}
|
|
2693
|
+
/************************************************************
|
|
2625
2694
|
* Set the backend-connection state painted by every
|
|
2626
2695
|
* type:"connection" toolbar item. Host/event-driven: the
|
|
2627
2696
|
* app calls this from its transport handlers (EV_ON_OPEN →
|
|
@@ -2650,6 +2719,41 @@ function yui_shell_set_toolbar_item_icon(shell_gobj, item_id, icon_class) {
|
|
|
2650
2719
|
if ($i) $i.className = icon_class;
|
|
2651
2720
|
}
|
|
2652
2721
|
/************************************************************
|
|
2722
|
+
* Set (or clear) a toolbar item's badge — the count pinned to
|
|
2723
|
+
* its icon.
|
|
2724
|
+
*
|
|
2725
|
+
* yui_shell_set_toolbar_item_badge(shell, "alarms", 3);
|
|
2726
|
+
* yui_shell_set_toolbar_item_badge(shell, "alarms", 0); // hidden
|
|
2727
|
+
*
|
|
2728
|
+
* This is the API that matters: a count is a RUNTIME fact. The
|
|
2729
|
+
* `badge` field of a toolbar item only seeds the first paint, and
|
|
2730
|
+
* an app whose number never changes did not need a badge.
|
|
2731
|
+
*
|
|
2732
|
+
* 0 / "" / null / false all clear it, and a number over 99 renders
|
|
2733
|
+
* "99+" — see badge_node(). Accepts a string for the states that
|
|
2734
|
+
* are not counts ("!", "…").
|
|
2735
|
+
*
|
|
2736
|
+
* Silent no-op on an unknown item id: a toolbar that does not
|
|
2737
|
+
* declare the item (an app without alarms) must not be an error
|
|
2738
|
+
* at every tick of whatever feeds the number.
|
|
2739
|
+
************************************************************/
|
|
2740
|
+
function yui_shell_set_toolbar_item_badge(shell_gobj, item_id, value) {
|
|
2741
|
+
if (!shell_gobj || !(0, _yuneta_gobj_js.is_gobj)(shell_gobj) || (0, _yuneta_gobj_js.empty_string)(item_id)) return;
|
|
2742
|
+
let $container = (0, _yuneta_gobj_js.gobj_read_attr)(shell_gobj, "$container");
|
|
2743
|
+
if (!$container) return;
|
|
2744
|
+
let $badge = $container.querySelector(`[data-toolbar-item-id="${item_id}"] .yui-toolbar-badge`);
|
|
2745
|
+
if (!$badge) return;
|
|
2746
|
+
let text = badge_text(value);
|
|
2747
|
+
if (!text) {
|
|
2748
|
+
$badge.textContent = "";
|
|
2749
|
+
$badge.setAttribute("hidden", "hidden");
|
|
2750
|
+
return;
|
|
2751
|
+
}
|
|
2752
|
+
if ($badge.textContent === text && !$badge.hasAttribute("hidden")) return;
|
|
2753
|
+
$badge.textContent = text;
|
|
2754
|
+
$badge.removeAttribute("hidden");
|
|
2755
|
+
}
|
|
2756
|
+
/************************************************************
|
|
2653
2757
|
* Programmatic close of any open toolbar dropdown. Useful for
|
|
2654
2758
|
* external triggers (e.g. EV_LOGOUT firing from elsewhere) that
|
|
2655
2759
|
* want to dismiss whatever menu is on screen.
|
|
@@ -3131,7 +3235,7 @@ function yui_shell_confirm_yesnocancel(shell, message, opts) {
|
|
|
3131
3235
|
/***************************************************************
|
|
3132
3236
|
* Constants
|
|
3133
3237
|
***************************************************************/
|
|
3134
|
-
var GCLASS_NAME$
|
|
3238
|
+
var GCLASS_NAME$17 = "C_YUI_WINDOW";
|
|
3135
3239
|
var WC_MIN = "<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><rect x=\"3\" y=\"11\" width=\"10\" height=\"1.6\" rx=\"0.8\" fill=\"currentColor\"/></svg>";
|
|
3136
3240
|
var WC_MAX = "<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><rect x=\"3.3\" y=\"3.3\" width=\"9.4\" height=\"9.4\" rx=\"1.6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"/></svg>";
|
|
3137
3241
|
var WC_RESTORE = "<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><rect x=\"5.2\" y=\"3\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"/><rect x=\"3\" y=\"5.2\" width=\"7.8\" height=\"7.8\" rx=\"1.3\" fill=\"var(--bulma-scheme-main)\" stroke=\"currentColor\" stroke-width=\"1.4\"/></svg>";
|
|
@@ -3140,7 +3244,7 @@ var MOBILE_MAX = 768;
|
|
|
3140
3244
|
/***************************************************************
|
|
3141
3245
|
* Data
|
|
3142
3246
|
***************************************************************/
|
|
3143
|
-
var attrs_table$
|
|
3247
|
+
var attrs_table$17 = [
|
|
3144
3248
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
3145
3249
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$parent", 0, null, "$container will be appended to $parent if not null, else to document.body"),
|
|
3146
3250
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_INTEGER, "x", 0, "300", "X position"),
|
|
@@ -3178,15 +3282,15 @@ var attrs_table$16 = [
|
|
|
3178
3282
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "win_resize_handler", 0, null, "Internal: native window 'resize' listener"),
|
|
3179
3283
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
3180
3284
|
];
|
|
3181
|
-
var PRIVATE_DATA$
|
|
3182
|
-
var __gclass__$
|
|
3285
|
+
var PRIVATE_DATA$17 = { prevSize: 0 };
|
|
3286
|
+
var __gclass__$17 = null;
|
|
3183
3287
|
/******************************
|
|
3184
3288
|
* Framework Methods
|
|
3185
3289
|
******************************/
|
|
3186
3290
|
/***************************************************************
|
|
3187
3291
|
* Framework Method: Create
|
|
3188
3292
|
***************************************************************/
|
|
3189
|
-
function mt_create$
|
|
3293
|
+
function mt_create$17(gobj) {
|
|
3190
3294
|
const subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
|
|
3191
3295
|
if (subscriber) (0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
|
|
3192
3296
|
(0, _yuneta_gobj_js.gobj_write_attr)(gobj, "window_id", "window-" + (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_short_name)(gobj)));
|
|
@@ -3222,7 +3326,7 @@ function mt_create$16(gobj) {
|
|
|
3222
3326
|
/***************************************************************
|
|
3223
3327
|
* Framework Method: Destroy
|
|
3224
3328
|
***************************************************************/
|
|
3225
|
-
function mt_destroy$
|
|
3329
|
+
function mt_destroy$17(gobj) {
|
|
3226
3330
|
let manager = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "manager");
|
|
3227
3331
|
if (manager) (0, _yuneta_gobj_js.gobj_send_event)(manager, "EV_UNREGISTER_WINDOW", { window: gobj }, gobj);
|
|
3228
3332
|
let back_overlay = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "back_overlay");
|
|
@@ -3951,15 +4055,15 @@ function ac_close(gobj, event, kw, src) {
|
|
|
3951
4055
|
/***************************
|
|
3952
4056
|
* FSM
|
|
3953
4057
|
***************************/
|
|
3954
|
-
var gmt$
|
|
3955
|
-
mt_create: mt_create$
|
|
3956
|
-
mt_destroy: mt_destroy$
|
|
4058
|
+
var gmt$17 = {
|
|
4059
|
+
mt_create: mt_create$17,
|
|
4060
|
+
mt_destroy: mt_destroy$17
|
|
3957
4061
|
};
|
|
3958
4062
|
/***************************************************************
|
|
3959
4063
|
* Create the GClass
|
|
3960
4064
|
***************************************************************/
|
|
3961
|
-
function create_gclass$
|
|
3962
|
-
if (__gclass__$
|
|
4065
|
+
function create_gclass$17(gclass_name) {
|
|
4066
|
+
if (__gclass__$17) {
|
|
3963
4067
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
3964
4068
|
return -1;
|
|
3965
4069
|
}
|
|
@@ -3985,7 +4089,7 @@ function create_gclass$16(gclass_name) {
|
|
|
3985
4089
|
null
|
|
3986
4090
|
]
|
|
3987
4091
|
]]];
|
|
3988
|
-
__gclass__$
|
|
4092
|
+
__gclass__$17 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
3989
4093
|
["EV_WINDOW_TO_CLOSE", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
3990
4094
|
["EV_WINDOW_MOVED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
3991
4095
|
["EV_WINDOW_RESIZED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
@@ -3993,15 +4097,15 @@ function create_gclass$16(gclass_name) {
|
|
|
3993
4097
|
["EV_SHOW", 0],
|
|
3994
4098
|
["EV_HIDE", 0],
|
|
3995
4099
|
["EV_CLOSE_WINDOW", 0]
|
|
3996
|
-
], states, gmt$
|
|
3997
|
-
if (!__gclass__$
|
|
4100
|
+
], states, gmt$17, 0, attrs_table$17, PRIVATE_DATA$17, 0, 0, 0, 0);
|
|
4101
|
+
if (!__gclass__$17) return -1;
|
|
3998
4102
|
return 0;
|
|
3999
4103
|
}
|
|
4000
4104
|
/***************************************************************
|
|
4001
4105
|
* Register GClass
|
|
4002
4106
|
***************************************************************/
|
|
4003
4107
|
function register_c_yui_window() {
|
|
4004
|
-
return create_gclass$
|
|
4108
|
+
return create_gclass$17(GCLASS_NAME$17);
|
|
4005
4109
|
}
|
|
4006
4110
|
//#endregion
|
|
4007
4111
|
//#region src/c_yui_window_manager.js
|
|
@@ -4039,13 +4143,13 @@ function register_c_yui_window() {
|
|
|
4039
4143
|
/***************************************************************
|
|
4040
4144
|
* Constants
|
|
4041
4145
|
***************************************************************/
|
|
4042
|
-
var GCLASS_NAME$
|
|
4146
|
+
var GCLASS_NAME$16 = "C_YUI_WINDOW_MANAGER";
|
|
4043
4147
|
var DOCK_Z = 1e6;
|
|
4044
4148
|
var WC_X = "<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M4.5 4.5 L11.5 11.5 M11.5 4.5 L4.5 11.5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\"/></svg>";
|
|
4045
4149
|
/***************************************************************
|
|
4046
4150
|
* Data
|
|
4047
4151
|
***************************************************************/
|
|
4048
|
-
var attrs_table$
|
|
4152
|
+
var attrs_table$16 = [
|
|
4049
4153
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
4050
4154
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "dock_mode", 0, "floating", "floating | inline | responsive (floating on wide screens, inline on narrow)"),
|
|
4051
4155
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "dock_corner", 0, "bottom-left", "Floating placement: top-left | top-right | bottom-left | bottom-right"),
|
|
@@ -4055,20 +4159,20 @@ var attrs_table$15 = [
|
|
|
4055
4159
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "Internal: the dock element"),
|
|
4056
4160
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
4057
4161
|
];
|
|
4058
|
-
var PRIVATE_DATA$
|
|
4162
|
+
var PRIVATE_DATA$16 = {
|
|
4059
4163
|
windows: null,
|
|
4060
4164
|
z: 0,
|
|
4061
4165
|
mql: null,
|
|
4062
4166
|
mql_handler: null
|
|
4063
4167
|
};
|
|
4064
|
-
var __gclass__$
|
|
4168
|
+
var __gclass__$16 = null;
|
|
4065
4169
|
/******************************
|
|
4066
4170
|
* Framework Methods
|
|
4067
4171
|
******************************/
|
|
4068
4172
|
/***************************************************************
|
|
4069
4173
|
* Framework Method: Create
|
|
4070
4174
|
***************************************************************/
|
|
4071
|
-
function mt_create$
|
|
4175
|
+
function mt_create$16(gobj) {
|
|
4072
4176
|
let priv = gobj.priv;
|
|
4073
4177
|
priv.windows = [];
|
|
4074
4178
|
priv.z = 10;
|
|
@@ -4087,7 +4191,7 @@ function mt_create$15(gobj) {
|
|
|
4087
4191
|
/***************************************************************
|
|
4088
4192
|
* Framework Method: Destroy
|
|
4089
4193
|
***************************************************************/
|
|
4090
|
-
function mt_destroy$
|
|
4194
|
+
function mt_destroy$16(gobj) {
|
|
4091
4195
|
let priv = gobj.priv;
|
|
4092
4196
|
if (priv.mql && priv.mql_handler) {
|
|
4093
4197
|
priv.mql.removeEventListener("change", priv.mql_handler);
|
|
@@ -4446,19 +4550,19 @@ function ac_focus_window(gobj, event, kw, src) {
|
|
|
4446
4550
|
/***************************
|
|
4447
4551
|
* FSM
|
|
4448
4552
|
***************************/
|
|
4449
|
-
var gmt$
|
|
4450
|
-
mt_create: mt_create$
|
|
4451
|
-
mt_destroy: mt_destroy$
|
|
4553
|
+
var gmt$16 = {
|
|
4554
|
+
mt_create: mt_create$16,
|
|
4555
|
+
mt_destroy: mt_destroy$16
|
|
4452
4556
|
};
|
|
4453
4557
|
/***************************************************************
|
|
4454
4558
|
* Create the GClass
|
|
4455
4559
|
***************************************************************/
|
|
4456
|
-
function create_gclass$
|
|
4457
|
-
if (__gclass__$
|
|
4560
|
+
function create_gclass$16(gclass_name) {
|
|
4561
|
+
if (__gclass__$16) {
|
|
4458
4562
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
4459
4563
|
return -1;
|
|
4460
4564
|
}
|
|
4461
|
-
__gclass__$
|
|
4565
|
+
__gclass__$16 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
4462
4566
|
["EV_REGISTER_WINDOW", 0],
|
|
4463
4567
|
["EV_UNREGISTER_WINDOW", 0],
|
|
4464
4568
|
["EV_MINIMIZE_WINDOW", 0],
|
|
@@ -4484,15 +4588,15 @@ function create_gclass$15(gclass_name) {
|
|
|
4484
4588
|
ac_focus_window,
|
|
4485
4589
|
null
|
|
4486
4590
|
]
|
|
4487
|
-
]]], gmt$
|
|
4488
|
-
if (!__gclass__$
|
|
4591
|
+
]]], gmt$16, 0, attrs_table$16, PRIVATE_DATA$16, 0, 0, 0, 0);
|
|
4592
|
+
if (!__gclass__$16) return -1;
|
|
4489
4593
|
return 0;
|
|
4490
4594
|
}
|
|
4491
4595
|
/***************************************************************
|
|
4492
4596
|
* Register GClass
|
|
4493
4597
|
***************************************************************/
|
|
4494
4598
|
function register_c_yui_window_manager() {
|
|
4495
|
-
return create_gclass$
|
|
4599
|
+
return create_gclass$16(GCLASS_NAME$16);
|
|
4496
4600
|
}
|
|
4497
4601
|
//#endregion
|
|
4498
4602
|
//#region src/pager_helpers.js
|
|
@@ -4578,11 +4682,11 @@ function pager_back_action(stack, back_on_root) {
|
|
|
4578
4682
|
/***************************************************************
|
|
4579
4683
|
* Constants
|
|
4580
4684
|
***************************************************************/
|
|
4581
|
-
var GCLASS_NAME$
|
|
4685
|
+
var GCLASS_NAME$15 = "C_YUI_PAGER";
|
|
4582
4686
|
/***************************************************************
|
|
4583
4687
|
* Data
|
|
4584
4688
|
***************************************************************/
|
|
4585
|
-
var attrs_table$
|
|
4689
|
+
var attrs_table$15 = [
|
|
4586
4690
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
4587
4691
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "root_title", 0, "", "Title shown on the root page"),
|
|
4588
4692
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_BOOLEAN, "back_on_root", 0, true, "On the root page the back affordance emits EV_PAGER_EXIT"),
|
|
@@ -4590,15 +4694,15 @@ var attrs_table$14 = [
|
|
|
4590
4694
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "HTMLElement root, mounted by the parent"),
|
|
4591
4695
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
4592
4696
|
];
|
|
4593
|
-
var PRIVATE_DATA$
|
|
4594
|
-
var __gclass__$
|
|
4697
|
+
var PRIVATE_DATA$15 = { stack: null };
|
|
4698
|
+
var __gclass__$15 = null;
|
|
4595
4699
|
/******************************
|
|
4596
4700
|
* Framework Methods
|
|
4597
4701
|
******************************/
|
|
4598
4702
|
/***************************************************************
|
|
4599
4703
|
* Framework Method: Create
|
|
4600
4704
|
***************************************************************/
|
|
4601
|
-
function mt_create$
|
|
4705
|
+
function mt_create$15(gobj) {
|
|
4602
4706
|
let priv = gobj.priv;
|
|
4603
4707
|
priv.stack = [];
|
|
4604
4708
|
build_ui$13(gobj);
|
|
@@ -4609,17 +4713,17 @@ function mt_create$14(gobj) {
|
|
|
4609
4713
|
/***************************************************************
|
|
4610
4714
|
* Framework Method: Start
|
|
4611
4715
|
***************************************************************/
|
|
4612
|
-
function mt_start$
|
|
4716
|
+
function mt_start$14(gobj) {}
|
|
4613
4717
|
/***************************************************************
|
|
4614
4718
|
* Framework Method: Stop
|
|
4615
4719
|
***************************************************************/
|
|
4616
|
-
function mt_stop$
|
|
4720
|
+
function mt_stop$14(gobj) {
|
|
4617
4721
|
(0, _yuneta_gobj_js.gobj_stop_children)(gobj);
|
|
4618
4722
|
}
|
|
4619
4723
|
/***************************************************************
|
|
4620
4724
|
* Framework Method: Destroy
|
|
4621
4725
|
***************************************************************/
|
|
4622
|
-
function mt_destroy$
|
|
4726
|
+
function mt_destroy$15(gobj) {
|
|
4623
4727
|
destroy_ui$9(gobj);
|
|
4624
4728
|
}
|
|
4625
4729
|
/***************************
|
|
@@ -4777,7 +4881,7 @@ function ac_push_page(gobj, event, kw, src) {
|
|
|
4777
4881
|
let priv = gobj.priv;
|
|
4778
4882
|
let resolved = resolve_panel$1(kw.content);
|
|
4779
4883
|
if (!resolved.$el) {
|
|
4780
|
-
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
4884
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$15}: EV_PUSH_PAGE without content`);
|
|
4781
4885
|
return -1;
|
|
4782
4886
|
}
|
|
4783
4887
|
let $body = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container").querySelector(".yui-pager-body");
|
|
@@ -4830,7 +4934,7 @@ function ac_replace_page(gobj, event, kw, src) {
|
|
|
4830
4934
|
let priv = gobj.priv;
|
|
4831
4935
|
let resolved = resolve_panel$1(kw.content);
|
|
4832
4936
|
if (!resolved.$el) {
|
|
4833
|
-
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
4937
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$15}: EV_REPLACE_PAGE without content`);
|
|
4834
4938
|
return -1;
|
|
4835
4939
|
}
|
|
4836
4940
|
let $body = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container").querySelector(".yui-pager-body");
|
|
@@ -4897,17 +5001,17 @@ function ac_resize$4(gobj, event, kw, src) {
|
|
|
4897
5001
|
/***************************
|
|
4898
5002
|
* FSM
|
|
4899
5003
|
***************************/
|
|
4900
|
-
var gmt$
|
|
4901
|
-
mt_create: mt_create$
|
|
4902
|
-
mt_start: mt_start$
|
|
4903
|
-
mt_stop: mt_stop$
|
|
4904
|
-
mt_destroy: mt_destroy$
|
|
5004
|
+
var gmt$15 = {
|
|
5005
|
+
mt_create: mt_create$15,
|
|
5006
|
+
mt_start: mt_start$14,
|
|
5007
|
+
mt_stop: mt_stop$14,
|
|
5008
|
+
mt_destroy: mt_destroy$15
|
|
4905
5009
|
};
|
|
4906
5010
|
/***************************************************************
|
|
4907
5011
|
* Create the GClass
|
|
4908
5012
|
***************************************************************/
|
|
4909
|
-
function create_gclass$
|
|
4910
|
-
if (__gclass__$
|
|
5013
|
+
function create_gclass$15(gclass_name) {
|
|
5014
|
+
if (__gclass__$15) {
|
|
4911
5015
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
4912
5016
|
return -1;
|
|
4913
5017
|
}
|
|
@@ -4958,7 +5062,7 @@ function create_gclass$14(gclass_name) {
|
|
|
4958
5062
|
null
|
|
4959
5063
|
]
|
|
4960
5064
|
]]];
|
|
4961
|
-
__gclass__$
|
|
5065
|
+
__gclass__$15 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
4962
5066
|
["EV_PUSH_PAGE", 0],
|
|
4963
5067
|
["EV_POP_PAGE", 0],
|
|
4964
5068
|
["EV_BACK", 0],
|
|
@@ -4971,15 +5075,15 @@ function create_gclass$14(gclass_name) {
|
|
|
4971
5075
|
["EV_PAGE_SHOWN", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS],
|
|
4972
5076
|
["EV_PAGE_DISCARD", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT],
|
|
4973
5077
|
["EV_PAGER_EXIT", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT]
|
|
4974
|
-
], states, gmt$
|
|
4975
|
-
if (!__gclass__$
|
|
5078
|
+
], states, gmt$15, 0, attrs_table$15, PRIVATE_DATA$15, 0, 0, 0, 0);
|
|
5079
|
+
if (!__gclass__$15) return -1;
|
|
4976
5080
|
return 0;
|
|
4977
5081
|
}
|
|
4978
5082
|
/***************************************************************
|
|
4979
5083
|
* Register GClass
|
|
4980
5084
|
***************************************************************/
|
|
4981
5085
|
function register_c_yui_pager() {
|
|
4982
|
-
return create_gclass$
|
|
5086
|
+
return create_gclass$15(GCLASS_NAME$15);
|
|
4983
5087
|
}
|
|
4984
5088
|
//#endregion
|
|
4985
5089
|
//#region src/wizard_helpers.js
|
|
@@ -5100,11 +5204,11 @@ function wizard_should_validate(linear, has_gobj) {
|
|
|
5100
5204
|
/***************************************************************
|
|
5101
5205
|
* Constants
|
|
5102
5206
|
***************************************************************/
|
|
5103
|
-
var GCLASS_NAME$
|
|
5207
|
+
var GCLASS_NAME$14 = "C_YUI_WIZARD";
|
|
5104
5208
|
/***************************************************************
|
|
5105
5209
|
* Data
|
|
5106
5210
|
***************************************************************/
|
|
5107
|
-
var attrs_table$
|
|
5211
|
+
var attrs_table$14 = [
|
|
5108
5212
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
5109
5213
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "confirm_label", 0, "confirm", "i18n key of the last-step primary button"),
|
|
5110
5214
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "next_label", 0, "next", "i18n key of the primary button (not last step)"),
|
|
@@ -5114,20 +5218,20 @@ var attrs_table$13 = [
|
|
|
5114
5218
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "HTMLElement root, mounted by the parent"),
|
|
5115
5219
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
5116
5220
|
];
|
|
5117
|
-
var PRIVATE_DATA$
|
|
5221
|
+
var PRIVATE_DATA$14 = {
|
|
5118
5222
|
steps: null,
|
|
5119
5223
|
idx: 0,
|
|
5120
5224
|
acc: null,
|
|
5121
5225
|
awaiting: false
|
|
5122
5226
|
};
|
|
5123
|
-
var __gclass__$
|
|
5227
|
+
var __gclass__$14 = null;
|
|
5124
5228
|
/******************************
|
|
5125
5229
|
* Framework Methods
|
|
5126
5230
|
******************************/
|
|
5127
5231
|
/***************************************************************
|
|
5128
5232
|
* Framework Method: Create
|
|
5129
5233
|
***************************************************************/
|
|
5130
|
-
function mt_create$
|
|
5234
|
+
function mt_create$14(gobj) {
|
|
5131
5235
|
let priv = gobj.priv;
|
|
5132
5236
|
priv.steps = [];
|
|
5133
5237
|
priv.idx = 0;
|
|
@@ -5141,17 +5245,17 @@ function mt_create$13(gobj) {
|
|
|
5141
5245
|
/***************************************************************
|
|
5142
5246
|
* Framework Method: Start
|
|
5143
5247
|
***************************************************************/
|
|
5144
|
-
function mt_start$
|
|
5248
|
+
function mt_start$13(gobj) {}
|
|
5145
5249
|
/***************************************************************
|
|
5146
5250
|
* Framework Method: Stop
|
|
5147
5251
|
***************************************************************/
|
|
5148
|
-
function mt_stop$
|
|
5252
|
+
function mt_stop$13(gobj) {
|
|
5149
5253
|
(0, _yuneta_gobj_js.gobj_stop_children)(gobj);
|
|
5150
5254
|
}
|
|
5151
5255
|
/***************************************************************
|
|
5152
5256
|
* Framework Method: Destroy
|
|
5153
5257
|
***************************************************************/
|
|
5154
|
-
function mt_destroy$
|
|
5258
|
+
function mt_destroy$14(gobj) {
|
|
5155
5259
|
destroy_ui$8(gobj);
|
|
5156
5260
|
}
|
|
5157
5261
|
/***************************
|
|
@@ -5358,7 +5462,7 @@ function ac_set_steps(gobj, event, kw, src) {
|
|
|
5358
5462
|
let priv = gobj.priv;
|
|
5359
5463
|
let steps_in = kw && kw.steps || [];
|
|
5360
5464
|
if (steps_in.length === 0) {
|
|
5361
|
-
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
5465
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$14}: EV_SET_STEPS with no steps`);
|
|
5362
5466
|
return -1;
|
|
5363
5467
|
}
|
|
5364
5468
|
let $body = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container").querySelector(".yui-wizard-body");
|
|
@@ -5368,7 +5472,7 @@ function ac_set_steps(gobj, event, kw, src) {
|
|
|
5368
5472
|
let st = steps_in[i];
|
|
5369
5473
|
let resolved = resolve_panel(st.content);
|
|
5370
5474
|
if (!resolved.$el) {
|
|
5371
|
-
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
5475
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$14}: step '${st.id}' has no content`);
|
|
5372
5476
|
return -1;
|
|
5373
5477
|
}
|
|
5374
5478
|
resolved.$el.classList.add("is-hidden");
|
|
@@ -5502,17 +5606,17 @@ function ac_resize$3(gobj, event, kw, src) {
|
|
|
5502
5606
|
/***************************
|
|
5503
5607
|
* FSM
|
|
5504
5608
|
***************************/
|
|
5505
|
-
var gmt$
|
|
5506
|
-
mt_create: mt_create$
|
|
5507
|
-
mt_start: mt_start$
|
|
5508
|
-
mt_stop: mt_stop$
|
|
5509
|
-
mt_destroy: mt_destroy$
|
|
5609
|
+
var gmt$14 = {
|
|
5610
|
+
mt_create: mt_create$14,
|
|
5611
|
+
mt_start: mt_start$13,
|
|
5612
|
+
mt_stop: mt_stop$13,
|
|
5613
|
+
mt_destroy: mt_destroy$14
|
|
5510
5614
|
};
|
|
5511
5615
|
/***************************************************************
|
|
5512
5616
|
* Create the GClass
|
|
5513
5617
|
***************************************************************/
|
|
5514
|
-
function create_gclass$
|
|
5515
|
-
if (__gclass__$
|
|
5618
|
+
function create_gclass$14(gclass_name) {
|
|
5619
|
+
if (__gclass__$14) {
|
|
5516
5620
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
5517
5621
|
return -1;
|
|
5518
5622
|
}
|
|
@@ -5573,7 +5677,7 @@ function create_gclass$13(gclass_name) {
|
|
|
5573
5677
|
null
|
|
5574
5678
|
]
|
|
5575
5679
|
]]];
|
|
5576
|
-
__gclass__$
|
|
5680
|
+
__gclass__$14 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
5577
5681
|
["EV_SET_STEPS", 0],
|
|
5578
5682
|
["EV_NEXT", 0],
|
|
5579
5683
|
["EV_PREV", 0],
|
|
@@ -5589,15 +5693,15 @@ function create_gclass$13(gclass_name) {
|
|
|
5589
5693
|
["EV_WIZARD_DONE", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT],
|
|
5590
5694
|
["EV_WIZARD_CANCEL", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT],
|
|
5591
5695
|
["EV_STEP_VALIDATE", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS]
|
|
5592
|
-
], states, gmt$
|
|
5593
|
-
if (!__gclass__$
|
|
5696
|
+
], states, gmt$14, 0, attrs_table$14, PRIVATE_DATA$14, 0, 0, 0, 0);
|
|
5697
|
+
if (!__gclass__$14) return -1;
|
|
5594
5698
|
return 0;
|
|
5595
5699
|
}
|
|
5596
5700
|
/***************************************************************
|
|
5597
5701
|
* Register GClass
|
|
5598
5702
|
***************************************************************/
|
|
5599
5703
|
function register_c_yui_wizard() {
|
|
5600
|
-
return create_gclass$
|
|
5704
|
+
return create_gclass$14(GCLASS_NAME$14);
|
|
5601
5705
|
}
|
|
5602
5706
|
//#endregion
|
|
5603
5707
|
//#region src/yui_inputs.js
|
|
@@ -5767,11 +5871,11 @@ function yui_watch_theme(gobj, event = "EV_THEME") {
|
|
|
5767
5871
|
/***************************************************************
|
|
5768
5872
|
* Constants
|
|
5769
5873
|
***************************************************************/
|
|
5770
|
-
var GCLASS_NAME$
|
|
5874
|
+
var GCLASS_NAME$13 = "C_YUI_FORM";
|
|
5771
5875
|
/***************************************************************
|
|
5772
5876
|
* Data
|
|
5773
5877
|
***************************************************************/
|
|
5774
|
-
var attrs_table$
|
|
5878
|
+
var attrs_table$13 = [
|
|
5775
5879
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of publishing messages"),
|
|
5776
5880
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$parent", 0, null, "$container will be appended to $parent if not null, else do it manually"),
|
|
5777
5881
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "template", 0, "<div>You must supply a template for form</div>", "Template for form, object -> TEMPLATE, array -> DESC"),
|
|
@@ -5799,15 +5903,15 @@ var attrs_table$12 = [
|
|
|
5799
5903
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_BOOLEAN, "changes", 0, false, "Indicates if changes have been made"),
|
|
5800
5904
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
5801
5905
|
];
|
|
5802
|
-
var PRIVATE_DATA$
|
|
5803
|
-
var __gclass__$
|
|
5906
|
+
var PRIVATE_DATA$13 = {};
|
|
5907
|
+
var __gclass__$13 = null;
|
|
5804
5908
|
/***************************
|
|
5805
5909
|
* Framework Methods
|
|
5806
5910
|
***************************/
|
|
5807
5911
|
/************************************************************
|
|
5808
5912
|
* Framework Method create
|
|
5809
5913
|
************************************************************/
|
|
5810
|
-
function mt_create$
|
|
5914
|
+
function mt_create$13(gobj) {
|
|
5811
5915
|
let subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
|
|
5812
5916
|
if (!subscriber) subscriber = (0, _yuneta_gobj_js.gobj_parent)(gobj);
|
|
5813
5917
|
(0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
|
|
@@ -5819,20 +5923,20 @@ function mt_create$12(gobj) {
|
|
|
5819
5923
|
* In this point, all children
|
|
5820
5924
|
* and subscriptions are already deleted.
|
|
5821
5925
|
************************************************************/
|
|
5822
|
-
function mt_destroy$
|
|
5926
|
+
function mt_destroy$13(gobj) {
|
|
5823
5927
|
destroy_ui$7(gobj);
|
|
5824
5928
|
}
|
|
5825
5929
|
/************************************************************
|
|
5826
5930
|
* Framework Method start
|
|
5827
5931
|
************************************************************/
|
|
5828
|
-
function mt_start$
|
|
5932
|
+
function mt_start$12(gobj) {
|
|
5829
5933
|
let record = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "record");
|
|
5830
5934
|
if (record) (0, _yuneta_gobj_js.gobj_send_event)(gobj, "EV_LOAD_RECORD", record, gobj);
|
|
5831
5935
|
}
|
|
5832
5936
|
/************************************************************
|
|
5833
5937
|
* Framework Method stop
|
|
5834
5938
|
************************************************************/
|
|
5835
|
-
function mt_stop$
|
|
5939
|
+
function mt_stop$12(gobj) {}
|
|
5836
5940
|
/***************************
|
|
5837
5941
|
* Local Methods
|
|
5838
5942
|
***************************/
|
|
@@ -7843,17 +7947,17 @@ function ac_timeout(gobj, event, kw, src) {
|
|
|
7843
7947
|
/***************************
|
|
7844
7948
|
* FSM
|
|
7845
7949
|
***************************/
|
|
7846
|
-
var gmt$
|
|
7847
|
-
mt_create: mt_create$
|
|
7848
|
-
mt_start: mt_start$
|
|
7849
|
-
mt_stop: mt_stop$
|
|
7850
|
-
mt_destroy: mt_destroy$
|
|
7950
|
+
var gmt$13 = {
|
|
7951
|
+
mt_create: mt_create$13,
|
|
7952
|
+
mt_start: mt_start$12,
|
|
7953
|
+
mt_stop: mt_stop$12,
|
|
7954
|
+
mt_destroy: mt_destroy$13
|
|
7851
7955
|
};
|
|
7852
7956
|
/***************************************************************
|
|
7853
7957
|
* Create the GClass
|
|
7854
7958
|
***************************************************************/
|
|
7855
|
-
function create_gclass$
|
|
7856
|
-
if (__gclass__$
|
|
7959
|
+
function create_gclass$13(gclass_name) {
|
|
7960
|
+
if (__gclass__$13) {
|
|
7857
7961
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
7858
7962
|
return -1;
|
|
7859
7963
|
}
|
|
@@ -7934,7 +8038,7 @@ function create_gclass$12(gclass_name) {
|
|
|
7934
8038
|
null
|
|
7935
8039
|
]
|
|
7936
8040
|
]]];
|
|
7937
|
-
__gclass__$
|
|
8041
|
+
__gclass__$13 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
7938
8042
|
["EV_LOAD_RECORD", 0],
|
|
7939
8043
|
["EV_SAVE_RECORD", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT],
|
|
7940
8044
|
["EV_UNDO_RECORD", 0],
|
|
@@ -7950,16 +8054,16 @@ function create_gclass$12(gclass_name) {
|
|
|
7950
8054
|
["EV_SHOW", 0],
|
|
7951
8055
|
["EV_HIDE", 0],
|
|
7952
8056
|
["EV_TIMEOUT", 0]
|
|
7953
|
-
], states, gmt$
|
|
7954
|
-
if (!__gclass__$
|
|
8057
|
+
], states, gmt$13, 0, attrs_table$13, PRIVATE_DATA$13, 0, 0, 0, 0);
|
|
8058
|
+
if (!__gclass__$13) return -1;
|
|
7955
8059
|
return 0;
|
|
7956
8060
|
}
|
|
7957
8061
|
/***************************************************************
|
|
7958
8062
|
* Register GClass
|
|
7959
8063
|
***************************************************************/
|
|
7960
8064
|
function register_c_yui_form() {
|
|
7961
|
-
if ((0, _yuneta_gobj_js.gclass_find_by_name)(GCLASS_NAME$
|
|
7962
|
-
return create_gclass$
|
|
8065
|
+
if ((0, _yuneta_gobj_js.gclass_find_by_name)(GCLASS_NAME$13, false)) return 0;
|
|
8066
|
+
return create_gclass$13(GCLASS_NAME$13);
|
|
7963
8067
|
}
|
|
7964
8068
|
//#endregion
|
|
7965
8069
|
//#region src/lib_maplibre.js
|
|
@@ -8119,11 +8223,11 @@ var MarkerControl = class {
|
|
|
8119
8223
|
/***************************************************************
|
|
8120
8224
|
* Constants
|
|
8121
8225
|
***************************************************************/
|
|
8122
|
-
var GCLASS_NAME$
|
|
8226
|
+
var GCLASS_NAME$12 = "C_YUI_MAP";
|
|
8123
8227
|
/***************************************************************
|
|
8124
8228
|
* Data
|
|
8125
8229
|
***************************************************************/
|
|
8126
|
-
var attrs_table$
|
|
8230
|
+
var attrs_table$12 = [
|
|
8127
8231
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
8128
8232
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_JSON, "devices", "[]", null, "List of devices"),
|
|
8129
8233
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_JSON, "map_settings", 0, {
|
|
@@ -8144,7 +8248,7 @@ var attrs_table$11 = [
|
|
|
8144
8248
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_INTEGER, "timeout_idle", 0, 5, "Idle timeout in seconds"),
|
|
8145
8249
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
8146
8250
|
];
|
|
8147
|
-
var PRIVATE_DATA$
|
|
8251
|
+
var PRIVATE_DATA$12 = {
|
|
8148
8252
|
xmap: null,
|
|
8149
8253
|
geojson: null,
|
|
8150
8254
|
resizeObserver: null,
|
|
@@ -8153,21 +8257,21 @@ var PRIVATE_DATA$11 = {
|
|
|
8153
8257
|
markers: {},
|
|
8154
8258
|
draggedFeature: null
|
|
8155
8259
|
};
|
|
8156
|
-
var __gclass__$
|
|
8260
|
+
var __gclass__$12 = null;
|
|
8157
8261
|
/******************************
|
|
8158
8262
|
* Framework Methods
|
|
8159
8263
|
******************************/
|
|
8160
8264
|
/***************************************************************
|
|
8161
8265
|
* Framework Method: Create
|
|
8162
8266
|
***************************************************************/
|
|
8163
|
-
function mt_create$
|
|
8267
|
+
function mt_create$12(gobj) {
|
|
8164
8268
|
let priv = gobj.priv;
|
|
8165
8269
|
let subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
|
|
8166
8270
|
if (!subscriber) subscriber = (0, _yuneta_gobj_js.gobj_parent)(gobj);
|
|
8167
8271
|
(0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
|
|
8168
8272
|
let map_settings = (0, _yuneta_gobj_js.json_deep_copy)((0, _yuneta_gobj_js.gobj_read_attr)(gobj, "map_settings"));
|
|
8169
8273
|
let $map = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$map");
|
|
8170
|
-
if ($map) $map.classList.add(GCLASS_NAME$
|
|
8274
|
+
if ($map) $map.classList.add(GCLASS_NAME$12);
|
|
8171
8275
|
Object.assign(map_settings, { container: $map });
|
|
8172
8276
|
priv.onClick = (ev) => {
|
|
8173
8277
|
onClick(gobj, ev);
|
|
@@ -8216,7 +8320,7 @@ function mt_create$11(gobj) {
|
|
|
8216
8320
|
/***************************************************************
|
|
8217
8321
|
* Framework Method: Destroy
|
|
8218
8322
|
***************************************************************/
|
|
8219
|
-
function mt_destroy$
|
|
8323
|
+
function mt_destroy$12(gobj) {
|
|
8220
8324
|
let priv = gobj.priv;
|
|
8221
8325
|
if (priv.resizeObserver) {
|
|
8222
8326
|
priv.resizeObserver.disconnect();
|
|
@@ -8632,19 +8736,19 @@ function ac_hide$7(gobj, event, kw, src) {
|
|
|
8632
8736
|
/***************************
|
|
8633
8737
|
* FSM
|
|
8634
8738
|
***************************/
|
|
8635
|
-
var gmt$
|
|
8636
|
-
mt_create: mt_create$
|
|
8637
|
-
mt_destroy: mt_destroy$
|
|
8739
|
+
var gmt$12 = {
|
|
8740
|
+
mt_create: mt_create$12,
|
|
8741
|
+
mt_destroy: mt_destroy$12
|
|
8638
8742
|
};
|
|
8639
8743
|
/***************************************************************
|
|
8640
8744
|
* Create the GClass
|
|
8641
8745
|
***************************************************************/
|
|
8642
|
-
function create_gclass$
|
|
8643
|
-
if (__gclass__$
|
|
8746
|
+
function create_gclass$12(gclass_name) {
|
|
8747
|
+
if (__gclass__$12) {
|
|
8644
8748
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
8645
8749
|
return -1;
|
|
8646
8750
|
}
|
|
8647
|
-
__gclass__$
|
|
8751
|
+
__gclass__$12 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
8648
8752
|
["EV_EDIT_MAP", 0],
|
|
8649
8753
|
["EV_CONTROL_MAP", 0],
|
|
8650
8754
|
["EV_MAP_ON_LOAD", 0],
|
|
@@ -8688,15 +8792,15 @@ function create_gclass$11(gclass_name) {
|
|
|
8688
8792
|
ac_hide$7,
|
|
8689
8793
|
null
|
|
8690
8794
|
]
|
|
8691
|
-
]]], gmt$
|
|
8692
|
-
if (!__gclass__$
|
|
8795
|
+
]]], gmt$12, 0, attrs_table$12, PRIVATE_DATA$12, 0, 0, 0, 0);
|
|
8796
|
+
if (!__gclass__$12) return -1;
|
|
8693
8797
|
return 0;
|
|
8694
8798
|
}
|
|
8695
8799
|
/***************************************************************
|
|
8696
8800
|
* Register GClass
|
|
8697
8801
|
***************************************************************/
|
|
8698
8802
|
function register_c_yui_map() {
|
|
8699
|
-
return create_gclass$
|
|
8803
|
+
return create_gclass$12(GCLASS_NAME$12);
|
|
8700
8804
|
}
|
|
8701
8805
|
//#endregion
|
|
8702
8806
|
//#region src/c_yui_uplot.js
|
|
@@ -8711,11 +8815,11 @@ function register_c_yui_map() {
|
|
|
8711
8815
|
/***************************************************************
|
|
8712
8816
|
* Constants
|
|
8713
8817
|
***************************************************************/
|
|
8714
|
-
var GCLASS_NAME$
|
|
8818
|
+
var GCLASS_NAME$11 = "C_YUI_UPLOT";
|
|
8715
8819
|
/***************************************************************
|
|
8716
8820
|
* Data
|
|
8717
8821
|
***************************************************************/
|
|
8718
|
-
var attrs_table$
|
|
8822
|
+
var attrs_table$11 = [
|
|
8719
8823
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
8720
8824
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "title", 0, "", "Chart title"),
|
|
8721
8825
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_INTEGER, "width", 0, 800, "Chart width"),
|
|
@@ -8750,15 +8854,15 @@ var attrs_table$10 = [
|
|
|
8750
8854
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_INTEGER, "timeout_idle", 0, 5, "Idle timeout (seconds)"),
|
|
8751
8855
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
8752
8856
|
];
|
|
8753
|
-
var PRIVATE_DATA$
|
|
8754
|
-
var __gclass__$
|
|
8857
|
+
var PRIVATE_DATA$11 = {};
|
|
8858
|
+
var __gclass__$11 = null;
|
|
8755
8859
|
/******************************
|
|
8756
8860
|
* Framework Methods
|
|
8757
8861
|
******************************/
|
|
8758
8862
|
/***************************************************************
|
|
8759
8863
|
* Framework Method: Create
|
|
8760
8864
|
***************************************************************/
|
|
8761
|
-
function mt_create$
|
|
8865
|
+
function mt_create$11(gobj) {
|
|
8762
8866
|
build_ui$10(gobj);
|
|
8763
8867
|
let subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
|
|
8764
8868
|
if (!subscriber) subscriber = (0, _yuneta_gobj_js.gobj_parent)(gobj);
|
|
@@ -8767,15 +8871,15 @@ function mt_create$10(gobj) {
|
|
|
8767
8871
|
/***************************************************************
|
|
8768
8872
|
* Framework Method: Start
|
|
8769
8873
|
***************************************************************/
|
|
8770
|
-
function mt_start$
|
|
8874
|
+
function mt_start$11(gobj) {}
|
|
8771
8875
|
/***************************************************************
|
|
8772
8876
|
* Framework Method: Stop
|
|
8773
8877
|
***************************************************************/
|
|
8774
|
-
function mt_stop$
|
|
8878
|
+
function mt_stop$11(gobj) {}
|
|
8775
8879
|
/***************************************************************
|
|
8776
8880
|
* Framework Method: Destroy
|
|
8777
8881
|
***************************************************************/
|
|
8778
|
-
function mt_destroy$
|
|
8882
|
+
function mt_destroy$11(gobj) {
|
|
8779
8883
|
let uplot$1 = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "uplot");
|
|
8780
8884
|
if (uplot$1) {
|
|
8781
8885
|
uplot$1.destroy();
|
|
@@ -8941,21 +9045,21 @@ function ac_clear(gobj, event, kw, src) {
|
|
|
8941
9045
|
/***************************
|
|
8942
9046
|
* FSM
|
|
8943
9047
|
***************************/
|
|
8944
|
-
var gmt$
|
|
8945
|
-
mt_create: mt_create$
|
|
8946
|
-
mt_start: mt_start$
|
|
8947
|
-
mt_stop: mt_stop$
|
|
8948
|
-
mt_destroy: mt_destroy$
|
|
9048
|
+
var gmt$11 = {
|
|
9049
|
+
mt_create: mt_create$11,
|
|
9050
|
+
mt_start: mt_start$11,
|
|
9051
|
+
mt_stop: mt_stop$11,
|
|
9052
|
+
mt_destroy: mt_destroy$11
|
|
8949
9053
|
};
|
|
8950
9054
|
/***************************************************************
|
|
8951
9055
|
* Create the GClass
|
|
8952
9056
|
***************************************************************/
|
|
8953
|
-
function create_gclass$
|
|
8954
|
-
if (__gclass__$
|
|
9057
|
+
function create_gclass$11(gclass_name) {
|
|
9058
|
+
if (__gclass__$11) {
|
|
8955
9059
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
8956
9060
|
return -1;
|
|
8957
9061
|
}
|
|
8958
|
-
__gclass__$
|
|
9062
|
+
__gclass__$11 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
8959
9063
|
["EV_LOAD_DATA", 0],
|
|
8960
9064
|
["EV_ADD_SERIE", 0],
|
|
8961
9065
|
["EV_DEL_SERIE", 0],
|
|
@@ -8981,15 +9085,15 @@ function create_gclass$10(gclass_name) {
|
|
|
8981
9085
|
ac_clear,
|
|
8982
9086
|
null
|
|
8983
9087
|
]
|
|
8984
|
-
]]], gmt$
|
|
8985
|
-
if (!__gclass__$
|
|
9088
|
+
]]], gmt$11, 0, attrs_table$11, PRIVATE_DATA$11, 0, 0, 0, 0);
|
|
9089
|
+
if (!__gclass__$11) return -1;
|
|
8986
9090
|
return 0;
|
|
8987
9091
|
}
|
|
8988
9092
|
/***************************************************************
|
|
8989
9093
|
* Register GClass
|
|
8990
9094
|
***************************************************************/
|
|
8991
9095
|
function register_c_yui_uplot() {
|
|
8992
|
-
return create_gclass$
|
|
9096
|
+
return create_gclass$11(GCLASS_NAME$11);
|
|
8993
9097
|
}
|
|
8994
9098
|
//#endregion
|
|
8995
9099
|
//#region src/yui_toolbar.js
|
|
@@ -9196,11 +9300,11 @@ function ensure_drag_canvas_patch() {
|
|
|
9196
9300
|
/***************************************************************
|
|
9197
9301
|
* Constants
|
|
9198
9302
|
***************************************************************/
|
|
9199
|
-
var GCLASS_NAME$
|
|
9303
|
+
var GCLASS_NAME$10 = "C_YUI_JSON_GRAPH";
|
|
9200
9304
|
/***************************************************************
|
|
9201
9305
|
* Data
|
|
9202
9306
|
***************************************************************/
|
|
9203
|
-
var attrs_table$
|
|
9307
|
+
var attrs_table$10 = [
|
|
9204
9308
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
9205
9309
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "path", 0, "", "Root path label"),
|
|
9206
9310
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_JSON, "json_data", 0, null, "JSON data to visualize"),
|
|
@@ -9209,7 +9313,7 @@ var attrs_table$9 = [
|
|
|
9209
9313
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "wide", 0, "36px", "Height of header"),
|
|
9210
9314
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
9211
9315
|
];
|
|
9212
|
-
var PRIVATE_DATA$
|
|
9316
|
+
var PRIVATE_DATA$10 = {
|
|
9213
9317
|
canvas_id: "",
|
|
9214
9318
|
graph: null,
|
|
9215
9319
|
node_counter: 0,
|
|
@@ -9218,7 +9322,7 @@ var PRIVATE_DATA$9 = {
|
|
|
9218
9322
|
resize_observer: null,
|
|
9219
9323
|
_resize_raf: 0
|
|
9220
9324
|
};
|
|
9221
|
-
var __gclass__$
|
|
9325
|
+
var __gclass__$10 = null;
|
|
9222
9326
|
var __layout_registered__$1 = false;
|
|
9223
9327
|
/***************************************************************
|
|
9224
9328
|
* Type colors matching the original mx_json_viewer
|
|
@@ -9283,7 +9387,7 @@ function type_color(type, dark) {
|
|
|
9283
9387
|
/***************************************************************
|
|
9284
9388
|
* Framework Method: Create
|
|
9285
9389
|
***************************************************************/
|
|
9286
|
-
function mt_create$
|
|
9390
|
+
function mt_create$10(gobj) {
|
|
9287
9391
|
let priv = gobj.priv;
|
|
9288
9392
|
priv.canvas_id = "json-canvas-" + (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_name)(gobj));
|
|
9289
9393
|
(0, _yuneta_gobj_js.gobj_write_str_attr)(gobj, "canvas_id", priv.canvas_id);
|
|
@@ -9302,18 +9406,18 @@ function mt_create$9(gobj) {
|
|
|
9302
9406
|
/***************************************************************
|
|
9303
9407
|
* Framework Method: Start
|
|
9304
9408
|
***************************************************************/
|
|
9305
|
-
function mt_start$
|
|
9409
|
+
function mt_start$10(gobj) {
|
|
9306
9410
|
build_graph$3(gobj);
|
|
9307
9411
|
load_json(gobj);
|
|
9308
9412
|
}
|
|
9309
9413
|
/***************************************************************
|
|
9310
9414
|
* Framework Method: Stop
|
|
9311
9415
|
***************************************************************/
|
|
9312
|
-
function mt_stop$
|
|
9416
|
+
function mt_stop$10(gobj) {}
|
|
9313
9417
|
/***************************************************************
|
|
9314
9418
|
* Framework Method: Destroy
|
|
9315
9419
|
***************************************************************/
|
|
9316
|
-
function mt_destroy$
|
|
9420
|
+
function mt_destroy$10(gobj) {
|
|
9317
9421
|
let priv = gobj.priv;
|
|
9318
9422
|
if (priv.theme_observer) {
|
|
9319
9423
|
priv.theme_observer.disconnect();
|
|
@@ -9909,17 +10013,17 @@ function ac_hide$6(gobj, event, kw, src) {
|
|
|
9909
10013
|
/***************************
|
|
9910
10014
|
* FSM
|
|
9911
10015
|
***************************/
|
|
9912
|
-
var gmt$
|
|
9913
|
-
mt_create: mt_create$
|
|
9914
|
-
mt_start: mt_start$
|
|
9915
|
-
mt_stop: mt_stop$
|
|
9916
|
-
mt_destroy: mt_destroy$
|
|
10016
|
+
var gmt$10 = {
|
|
10017
|
+
mt_create: mt_create$10,
|
|
10018
|
+
mt_start: mt_start$10,
|
|
10019
|
+
mt_stop: mt_stop$10,
|
|
10020
|
+
mt_destroy: mt_destroy$10
|
|
9917
10021
|
};
|
|
9918
10022
|
/***************************************************************
|
|
9919
10023
|
* Create the GClass
|
|
9920
10024
|
***************************************************************/
|
|
9921
|
-
function create_gclass$
|
|
9922
|
-
if (__gclass__$
|
|
10025
|
+
function create_gclass$10(gclass_name) {
|
|
10026
|
+
if (__gclass__$10) {
|
|
9923
10027
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
9924
10028
|
return -1;
|
|
9925
10029
|
}
|
|
@@ -9980,7 +10084,7 @@ function create_gclass$9(gclass_name) {
|
|
|
9980
10084
|
null
|
|
9981
10085
|
]
|
|
9982
10086
|
]]];
|
|
9983
|
-
__gclass__$
|
|
10087
|
+
__gclass__$10 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
9984
10088
|
["EV_LOAD_DATA", 0],
|
|
9985
10089
|
["EV_REFRESH", 0],
|
|
9986
10090
|
["EV_THEME", 0],
|
|
@@ -9993,15 +10097,15 @@ function create_gclass$9(gclass_name) {
|
|
|
9993
10097
|
["EV_SHOW", 0],
|
|
9994
10098
|
["EV_HIDE", 0],
|
|
9995
10099
|
["EV_JSON_ITEM_CLICKED", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT]
|
|
9996
|
-
], states, gmt$
|
|
9997
|
-
if (!__gclass__$
|
|
10100
|
+
], states, gmt$10, 0, attrs_table$10, PRIVATE_DATA$10, 0, 0, 0, 0);
|
|
10101
|
+
if (!__gclass__$10) return -1;
|
|
9998
10102
|
return 0;
|
|
9999
10103
|
}
|
|
10000
10104
|
/***************************************************************
|
|
10001
10105
|
* Register GClass
|
|
10002
10106
|
***************************************************************/
|
|
10003
10107
|
function register_c_yui_json_graph() {
|
|
10004
|
-
return create_gclass$
|
|
10108
|
+
return create_gclass$10(GCLASS_NAME$10);
|
|
10005
10109
|
}
|
|
10006
10110
|
/************************************************************
|
|
10007
10111
|
* JSON type discriminator (viewer vocabulary)
|
|
@@ -10178,19 +10282,19 @@ function format_epoch(value) {
|
|
|
10178
10282
|
/***************************************************************
|
|
10179
10283
|
* Constants
|
|
10180
10284
|
***************************************************************/
|
|
10181
|
-
var GCLASS_NAME$
|
|
10285
|
+
var GCLASS_NAME$9 = "C_YUI_JSON";
|
|
10182
10286
|
var MAX_RENDER_ROWS = 5e3;
|
|
10183
10287
|
/***************************************************************
|
|
10184
10288
|
* Data
|
|
10185
10289
|
***************************************************************/
|
|
10186
|
-
var attrs_table$
|
|
10290
|
+
var attrs_table$9 = [
|
|
10187
10291
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
10188
10292
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "title", 0, "", "Optional header title (i18n key)"),
|
|
10189
10293
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_JSON, "json_data", 0, null, "Initial JSON to render (usually already collapsed)"),
|
|
10190
10294
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "HTMLElement root, mounted by the parent"),
|
|
10191
10295
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
10192
10296
|
];
|
|
10193
|
-
var PRIVATE_DATA$
|
|
10297
|
+
var PRIVATE_DATA$9 = {
|
|
10194
10298
|
root: null,
|
|
10195
10299
|
expanded: null,
|
|
10196
10300
|
pending: null,
|
|
@@ -10199,14 +10303,14 @@ var PRIVATE_DATA$8 = {
|
|
|
10199
10303
|
$tree: null,
|
|
10200
10304
|
$search: null
|
|
10201
10305
|
};
|
|
10202
|
-
var __gclass__$
|
|
10306
|
+
var __gclass__$9 = null;
|
|
10203
10307
|
/******************************
|
|
10204
10308
|
* Framework Methods
|
|
10205
10309
|
******************************/
|
|
10206
10310
|
/***************************************************************
|
|
10207
10311
|
* Framework Method: Create
|
|
10208
10312
|
***************************************************************/
|
|
10209
|
-
function mt_create$
|
|
10313
|
+
function mt_create$9(gobj) {
|
|
10210
10314
|
let priv = gobj.priv;
|
|
10211
10315
|
priv.expanded = /* @__PURE__ */ new Set();
|
|
10212
10316
|
priv.pending = /* @__PURE__ */ new Set();
|
|
@@ -10222,17 +10326,17 @@ function mt_create$8(gobj) {
|
|
|
10222
10326
|
/***************************************************************
|
|
10223
10327
|
* Framework Method: Start
|
|
10224
10328
|
***************************************************************/
|
|
10225
|
-
function mt_start$
|
|
10329
|
+
function mt_start$9(gobj) {
|
|
10226
10330
|
render_tree(gobj);
|
|
10227
10331
|
}
|
|
10228
10332
|
/***************************************************************
|
|
10229
10333
|
* Framework Method: Stop
|
|
10230
10334
|
***************************************************************/
|
|
10231
|
-
function mt_stop$
|
|
10335
|
+
function mt_stop$9(gobj) {}
|
|
10232
10336
|
/***************************************************************
|
|
10233
10337
|
* Framework Method: Destroy
|
|
10234
10338
|
***************************************************************/
|
|
10235
|
-
function mt_destroy$
|
|
10339
|
+
function mt_destroy$9(gobj) {
|
|
10236
10340
|
destroy_ui$4(gobj);
|
|
10237
10341
|
}
|
|
10238
10342
|
/***************************
|
|
@@ -10736,7 +10840,7 @@ function ac_subtree_error(gobj, event, kw, src) {
|
|
|
10736
10840
|
let path = kw.path || "";
|
|
10737
10841
|
priv.pending.delete(path);
|
|
10738
10842
|
priv.errors.set(path, kw.error || "error");
|
|
10739
|
-
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
10843
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$9}: subtree load failed at '${path}': ${kw.error || ""}`);
|
|
10740
10844
|
render_tree(gobj);
|
|
10741
10845
|
return 0;
|
|
10742
10846
|
}
|
|
@@ -10811,9 +10915,9 @@ function ac_copy_all(gobj, event, kw, src) {
|
|
|
10811
10915
|
if (priv.root === null || priv.root === void 0) return 0;
|
|
10812
10916
|
let text = JSON.stringify(priv.root, null, 4);
|
|
10813
10917
|
if (navigator.clipboard && navigator.clipboard.writeText) navigator.clipboard.writeText(text).catch(function(e) {
|
|
10814
|
-
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
10918
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$9}: clipboard write failed: ${e}`);
|
|
10815
10919
|
});
|
|
10816
|
-
else (0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$
|
|
10920
|
+
else (0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$9}: clipboard API unavailable`);
|
|
10817
10921
|
return 0;
|
|
10818
10922
|
}
|
|
10819
10923
|
/************************************************************
|
|
@@ -10852,17 +10956,17 @@ function ac_refresh$3(gobj, event, kw, src) {
|
|
|
10852
10956
|
/***************************
|
|
10853
10957
|
* FSM
|
|
10854
10958
|
***************************/
|
|
10855
|
-
var gmt$
|
|
10856
|
-
mt_create: mt_create$
|
|
10857
|
-
mt_start: mt_start$
|
|
10858
|
-
mt_stop: mt_stop$
|
|
10859
|
-
mt_destroy: mt_destroy$
|
|
10959
|
+
var gmt$9 = {
|
|
10960
|
+
mt_create: mt_create$9,
|
|
10961
|
+
mt_start: mt_start$9,
|
|
10962
|
+
mt_stop: mt_stop$9,
|
|
10963
|
+
mt_destroy: mt_destroy$9
|
|
10860
10964
|
};
|
|
10861
10965
|
/***************************************************************
|
|
10862
10966
|
* Create the GClass
|
|
10863
10967
|
***************************************************************/
|
|
10864
|
-
function create_gclass$
|
|
10865
|
-
if (__gclass__$
|
|
10968
|
+
function create_gclass$9(gclass_name) {
|
|
10969
|
+
if (__gclass__$9) {
|
|
10866
10970
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
10867
10971
|
return -1;
|
|
10868
10972
|
}
|
|
@@ -10959,7 +11063,7 @@ function create_gclass$8(gclass_name) {
|
|
|
10959
11063
|
null
|
|
10960
11064
|
]
|
|
10961
11065
|
]]];
|
|
10962
|
-
__gclass__$
|
|
11066
|
+
__gclass__$9 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
10963
11067
|
["EV_SET_JSON", 0],
|
|
10964
11068
|
["EV_SUBTREE_LOADED", 0],
|
|
10965
11069
|
["EV_SUBTREE_ERROR", 0],
|
|
@@ -10974,15 +11078,15 @@ function create_gclass$8(gclass_name) {
|
|
|
10974
11078
|
["EV_SHOW", 0],
|
|
10975
11079
|
["EV_HIDE", 0],
|
|
10976
11080
|
["EV_EXPAND_PATH", _yuneta_gobj_js.event_flag_t.EVF_OUTPUT_EVENT | _yuneta_gobj_js.event_flag_t.EVF_NO_WARN_SUBS]
|
|
10977
|
-
], states, gmt$
|
|
10978
|
-
if (!__gclass__$
|
|
11081
|
+
], states, gmt$9, 0, attrs_table$9, PRIVATE_DATA$9, 0, 0, 0, 0);
|
|
11082
|
+
if (!__gclass__$9) return -1;
|
|
10979
11083
|
return 0;
|
|
10980
11084
|
}
|
|
10981
11085
|
/***************************************************************
|
|
10982
11086
|
* Register GClass
|
|
10983
11087
|
***************************************************************/
|
|
10984
11088
|
function register_c_yui_json() {
|
|
10985
|
-
return create_gclass$
|
|
11089
|
+
return create_gclass$9(GCLASS_NAME$9);
|
|
10986
11090
|
}
|
|
10987
11091
|
//#endregion
|
|
10988
11092
|
//#region src/c_yui_gobj_tree_js.js
|
|
@@ -10997,11 +11101,11 @@ function register_c_yui_json() {
|
|
|
10997
11101
|
/***************************************************************
|
|
10998
11102
|
* Constants
|
|
10999
11103
|
***************************************************************/
|
|
11000
|
-
var GCLASS_NAME$
|
|
11104
|
+
var GCLASS_NAME$8 = "C_YUI_GOBJ_TREE_JS";
|
|
11001
11105
|
/***************************************************************
|
|
11002
11106
|
* Data
|
|
11003
11107
|
***************************************************************/
|
|
11004
|
-
var attrs_table$
|
|
11108
|
+
var attrs_table$8 = [
|
|
11005
11109
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
11006
11110
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "Container element"),
|
|
11007
11111
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "canvas_id", 0, "", "Canvas ID"),
|
|
@@ -11010,7 +11114,7 @@ var attrs_table$7 = [
|
|
|
11010
11114
|
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_INTEGER, "collapse_threshold", 0, 10, "Auto-collapse a node whose direct children exceed this number. 0 disables auto-collapse."),
|
|
11011
11115
|
(0, _yuneta_gobj_js.SDATA_END)()
|
|
11012
11116
|
];
|
|
11013
|
-
var PRIVATE_DATA$
|
|
11117
|
+
var PRIVATE_DATA$8 = {
|
|
11014
11118
|
canvas_id: "",
|
|
11015
11119
|
graph: null,
|
|
11016
11120
|
node_counter: 0,
|
|
@@ -11025,7 +11129,7 @@ var PRIVATE_DATA$7 = {
|
|
|
11025
11129
|
resize_observer: null,
|
|
11026
11130
|
_resize_raf: 0
|
|
11027
11131
|
};
|
|
11028
|
-
var __gclass__$
|
|
11132
|
+
var __gclass__$8 = null;
|
|
11029
11133
|
var __layout_registered__ = false;
|
|
11030
11134
|
/***************************************************************
|
|
11031
11135
|
* Node colors by role
|
|
@@ -11204,7 +11308,7 @@ function get_layout_cfg(layout_key) {
|
|
|
11204
11308
|
/***************************************************************
|
|
11205
11309
|
* Framework Method: Create
|
|
11206
11310
|
***************************************************************/
|
|
11207
|
-
function mt_create$
|
|
11311
|
+
function mt_create$8(gobj) {
|
|
11208
11312
|
let priv = gobj.priv;
|
|
11209
11313
|
priv.canvas_id = "gobj-tree-canvas-" + (0, _yuneta_gobj_js.clean_name)((0, _yuneta_gobj_js.gobj_name)(gobj));
|
|
11210
11314
|
(0, _yuneta_gobj_js.gobj_write_str_attr)(gobj, "canvas_id", priv.canvas_id);
|
|
@@ -11227,18 +11331,18 @@ function mt_create$7(gobj) {
|
|
|
11227
11331
|
/***************************************************************
|
|
11228
11332
|
* Framework Method: Start
|
|
11229
11333
|
***************************************************************/
|
|
11230
|
-
function mt_start$
|
|
11334
|
+
function mt_start$8(gobj) {
|
|
11231
11335
|
build_graph$2(gobj);
|
|
11232
11336
|
load_tree(gobj);
|
|
11233
11337
|
}
|
|
11234
11338
|
/***************************************************************
|
|
11235
11339
|
* Framework Method: Stop
|
|
11236
11340
|
***************************************************************/
|
|
11237
|
-
function mt_stop$
|
|
11341
|
+
function mt_stop$8(gobj) {}
|
|
11238
11342
|
/***************************************************************
|
|
11239
11343
|
* Framework Method: Destroy
|
|
11240
11344
|
***************************************************************/
|
|
11241
|
-
function mt_destroy$
|
|
11345
|
+
function mt_destroy$8(gobj) {
|
|
11242
11346
|
let priv = gobj.priv;
|
|
11243
11347
|
if (priv.theme_observer) {
|
|
11244
11348
|
priv.theme_observer.disconnect();
|
|
@@ -12457,21 +12561,21 @@ function ac_hide$4(gobj, event, kw, src) {
|
|
|
12457
12561
|
/***************************
|
|
12458
12562
|
* FSM
|
|
12459
12563
|
***************************/
|
|
12460
|
-
var gmt$
|
|
12461
|
-
mt_create: mt_create$
|
|
12462
|
-
mt_start: mt_start$
|
|
12463
|
-
mt_stop: mt_stop$
|
|
12464
|
-
mt_destroy: mt_destroy$
|
|
12564
|
+
var gmt$8 = {
|
|
12565
|
+
mt_create: mt_create$8,
|
|
12566
|
+
mt_start: mt_start$8,
|
|
12567
|
+
mt_stop: mt_stop$8,
|
|
12568
|
+
mt_destroy: mt_destroy$8
|
|
12465
12569
|
};
|
|
12466
12570
|
/***************************************************************
|
|
12467
12571
|
* Create the GClass
|
|
12468
12572
|
***************************************************************/
|
|
12469
|
-
function create_gclass$
|
|
12470
|
-
if (__gclass__$
|
|
12573
|
+
function create_gclass$8(gclass_name) {
|
|
12574
|
+
if (__gclass__$8) {
|
|
12471
12575
|
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
12472
12576
|
return -1;
|
|
12473
12577
|
}
|
|
12474
|
-
__gclass__$
|
|
12578
|
+
__gclass__$8 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [
|
|
12475
12579
|
["EV_REFRESH", 0],
|
|
12476
12580
|
["EV_THEME", 0],
|
|
12477
12581
|
["EV_CHANGE_LAYOUT", 0],
|
|
@@ -12557,14 +12661,247 @@ function create_gclass$7(gclass_name) {
|
|
|
12557
12661
|
ac_hide$4,
|
|
12558
12662
|
null
|
|
12559
12663
|
]
|
|
12560
|
-
]]], gmt$
|
|
12561
|
-
if (!__gclass__$
|
|
12664
|
+
]]], gmt$8, 0, attrs_table$8, PRIVATE_DATA$8, 0, 0, 0, 0);
|
|
12665
|
+
if (!__gclass__$8) return -1;
|
|
12562
12666
|
return 0;
|
|
12563
12667
|
}
|
|
12564
12668
|
/***************************************************************
|
|
12565
12669
|
* Register GClass
|
|
12566
12670
|
***************************************************************/
|
|
12567
12671
|
function register_c_yui_gobj_tree_js() {
|
|
12672
|
+
return create_gclass$8(GCLASS_NAME$8);
|
|
12673
|
+
}
|
|
12674
|
+
//#endregion
|
|
12675
|
+
//#region src/c_yui_service_view.js
|
|
12676
|
+
/***********************************************************************
|
|
12677
|
+
* c_yui_service_view.js
|
|
12678
|
+
*
|
|
12679
|
+
* Mounting a view that TALKS TO A BACKEND.
|
|
12680
|
+
*
|
|
12681
|
+
* THE PROBLEM
|
|
12682
|
+
* -----------
|
|
12683
|
+
* A view that asks the backend for data does it with
|
|
12684
|
+
* gobj_command(remote, "...", kw, src = itself)
|
|
12685
|
+
* and C_IEVENT_CLI routes the answer back with
|
|
12686
|
+
* gobj_find_service(gobj_name(src))
|
|
12687
|
+
* which only finds REGISTERED SERVICES.
|
|
12688
|
+
*
|
|
12689
|
+
* Neither host creates one: C_YUI_SHELL mounts a route's view with
|
|
12690
|
+
* `gobj_create()` and C_YUI_NODE with `gobj_create_pure_child()`.
|
|
12691
|
+
* So a backend-talking view mounted directly never receives a single
|
|
12692
|
+
* answer — and not quietly: the ievent logs "service not found" once
|
|
12693
|
+
* per answer while the view sits empty forever.
|
|
12694
|
+
*
|
|
12695
|
+
* There is a second half. A route's `target.kw` is STATIC JSON, so
|
|
12696
|
+
* it cannot carry the live transport pointer the view needs. It has
|
|
12697
|
+
* to be resolved at mount time and injected.
|
|
12698
|
+
*
|
|
12699
|
+
* THE PIECE
|
|
12700
|
+
* ---------
|
|
12701
|
+
* Both halves had been written four separate times, in three repos,
|
|
12702
|
+
* each wrapper saying the same thing in its own header. They are
|
|
12703
|
+
* here now, in two shapes, because the four callers are not alike:
|
|
12704
|
+
*
|
|
12705
|
+
* yui_mount_service_view(host, spec) — the helper. For a wrapper
|
|
12706
|
+
* that has its OWN extras on top (bridging url segments to the
|
|
12707
|
+
* hosted view, rebinding it when a connection drops). Those
|
|
12708
|
+
* extras are app or route logic and do NOT belong here; the
|
|
12709
|
+
* wrapper keeps them and drops only the boilerplate.
|
|
12710
|
+
*
|
|
12711
|
+
* C_YUI_SERVICE_VIEW — the gclass, for a route with NO extras:
|
|
12712
|
+
* declare it in the route/node and name the view it hosts. It
|
|
12713
|
+
* is the helper plus a lifecycle, nothing more.
|
|
12714
|
+
*
|
|
12715
|
+
* CONTRACT of the hosted gclass:
|
|
12716
|
+
* - declares the attr the transport is injected under
|
|
12717
|
+
* (`gobj_remote_yuno` by default),
|
|
12718
|
+
* - builds its `$container` in mt_create (re-exposed as the
|
|
12719
|
+
* host's, which is what the shell/node mounts),
|
|
12720
|
+
* - flags EVF_PUBLIC_EVENT on what arrives from the backend
|
|
12721
|
+
* (EV_MT_COMMAND_ANSWER and anything the remote publishes): the
|
|
12722
|
+
* ievent drops events that are not public.
|
|
12723
|
+
*
|
|
12724
|
+
* NAMES: the service name must be UNIQUE per mount. A duplicate is
|
|
12725
|
+
* not fatal and that is the danger — gobj-js logs "service ALREADY
|
|
12726
|
+
* REGISTERED. Will be UPDATED" and REBINDS the name, so the answers
|
|
12727
|
+
* of one view would land in the other. Derive it from the route (or
|
|
12728
|
+
* from whatever else makes the mount unique: a connection id, a
|
|
12729
|
+
* workspace) and never from the gclass alone.
|
|
12730
|
+
*
|
|
12731
|
+
* Copyright (c) 2026, ArtGins.
|
|
12732
|
+
* All Rights Reserved.
|
|
12733
|
+
***********************************************************************/
|
|
12734
|
+
/***************************************************************
|
|
12735
|
+
* Constants
|
|
12736
|
+
***************************************************************/
|
|
12737
|
+
var GCLASS_NAME$7 = "C_YUI_SERVICE_VIEW";
|
|
12738
|
+
var DEFAULT_TRANSPORT_SERVICE = "__remote_service__";
|
|
12739
|
+
var DEFAULT_TRANSPORT_ATTR = "gobj_remote_yuno";
|
|
12740
|
+
/***************************************************************
|
|
12741
|
+
* Data
|
|
12742
|
+
***************************************************************/
|
|
12743
|
+
var attrs_table$7 = [
|
|
12744
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "subscriber", 0, null, "Subscriber of output events"),
|
|
12745
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "view_gclass", 0, "", "GClass of the hosted view (must be registered)"),
|
|
12746
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "service_name", 0, "", "Service name of the hosted view — UNIQUE per mount"),
|
|
12747
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_JSON, "view_kw", 0, null, "kw passed to the hosted view"),
|
|
12748
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "transport_service", 0, DEFAULT_TRANSPORT_SERVICE, "Service name of the live transport"),
|
|
12749
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_STRING, "transport_attr", 0, DEFAULT_TRANSPORT_ATTR, "Attr of the hosted view the transport is injected under"),
|
|
12750
|
+
(0, _yuneta_gobj_js.SDATA)(_yuneta_gobj_js.data_type_t.DTP_POINTER, "$container", 0, null, "Root HTMLElement"),
|
|
12751
|
+
(0, _yuneta_gobj_js.SDATA_END)()
|
|
12752
|
+
];
|
|
12753
|
+
var PRIVATE_DATA$7 = { view: null };
|
|
12754
|
+
var __gclass__$7 = null;
|
|
12755
|
+
/***************************
|
|
12756
|
+
* Public helper
|
|
12757
|
+
***************************/
|
|
12758
|
+
/************************************************************
|
|
12759
|
+
* Create `spec.gclass` as a NAMED SERVICE under `host`, with the
|
|
12760
|
+
* live transport injected, and return it (null on failure, error
|
|
12761
|
+
* already logged). The caller owns what happens next — starting
|
|
12762
|
+
* it, exposing its DOM, bridging routes into it.
|
|
12763
|
+
*
|
|
12764
|
+
* spec = {
|
|
12765
|
+
* gclass, // string, required — must be registered
|
|
12766
|
+
* name, // string, required — service name, unique per mount
|
|
12767
|
+
* kw, // object, optional — the view's kw
|
|
12768
|
+
* transport, // gobj | service name | omitted:
|
|
12769
|
+
* // a gobj is used as-is (the caller already
|
|
12770
|
+
* // resolved it — e.g. per connection), a string
|
|
12771
|
+
* // is looked up with gobj_find_service(), and
|
|
12772
|
+
* // omitted means "__remote_service__".
|
|
12773
|
+
* // null DISABLES injection: for a hosted view
|
|
12774
|
+
* // that takes its transport some other way.
|
|
12775
|
+
* transport_attr // string, optional — default "gobj_remote_yuno"
|
|
12776
|
+
* }
|
|
12777
|
+
************************************************************/
|
|
12778
|
+
function yui_mount_service_view(host, spec) {
|
|
12779
|
+
if (!host || !(0, _yuneta_gobj_js.is_gobj)(host) || !spec) {
|
|
12780
|
+
(0, _yuneta_gobj_js.log_error)(`${GCLASS_NAME$7}: yui_mount_service_view without host or spec`);
|
|
12781
|
+
return null;
|
|
12782
|
+
}
|
|
12783
|
+
const gclass = spec.gclass;
|
|
12784
|
+
const name = spec.name;
|
|
12785
|
+
if ((0, _yuneta_gobj_js.empty_string)(gclass) || (0, _yuneta_gobj_js.empty_string)(name)) {
|
|
12786
|
+
(0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(host)}: mounting a service view needs gclass and name`);
|
|
12787
|
+
return null;
|
|
12788
|
+
}
|
|
12789
|
+
if (!(0, _yuneta_gobj_js.gclass_find_by_name)(gclass)) {
|
|
12790
|
+
(0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(host)}: gclass '${gclass}' is not registered`);
|
|
12791
|
+
return null;
|
|
12792
|
+
}
|
|
12793
|
+
let kw = Object.assign({}, spec.kw || {});
|
|
12794
|
+
let transport = Object.prototype.hasOwnProperty.call(spec, "transport") ? spec.transport : DEFAULT_TRANSPORT_SERVICE;
|
|
12795
|
+
if (transport !== null) {
|
|
12796
|
+
if ((0, _yuneta_gobj_js.is_string)(transport)) {
|
|
12797
|
+
const service_name = transport;
|
|
12798
|
+
transport = (0, _yuneta_gobj_js.gobj_find_service)(service_name);
|
|
12799
|
+
if (!transport) {
|
|
12800
|
+
(0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(host)}: transport service '${service_name}' not found`);
|
|
12801
|
+
return null;
|
|
12802
|
+
}
|
|
12803
|
+
}
|
|
12804
|
+
if (!(0, _yuneta_gobj_js.is_gobj)(transport)) {
|
|
12805
|
+
(0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(host)}: transport is not a gobj`);
|
|
12806
|
+
return null;
|
|
12807
|
+
}
|
|
12808
|
+
kw[spec.transport_attr || DEFAULT_TRANSPORT_ATTR] = transport;
|
|
12809
|
+
}
|
|
12810
|
+
const view = (0, _yuneta_gobj_js.gobj_create_service)(name, gclass, kw, host);
|
|
12811
|
+
if (!view) {
|
|
12812
|
+
(0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(host)}: cannot create '${gclass}' as '${name}'`);
|
|
12813
|
+
return null;
|
|
12814
|
+
}
|
|
12815
|
+
return view;
|
|
12816
|
+
}
|
|
12817
|
+
/************************************************************
|
|
12818
|
+
* The hosted view's $container, re-exposed as the host's — the
|
|
12819
|
+
* shell/node mounts the HOST, so without this nothing is drawn.
|
|
12820
|
+
* Never returns without setting one: an empty div beats a blank
|
|
12821
|
+
* screen with the reason only in the console.
|
|
12822
|
+
************************************************************/
|
|
12823
|
+
function expose_view_container(host, view) {
|
|
12824
|
+
let $c = view ? (0, _yuneta_gobj_js.gobj_read_attr)(view, "$container") : null;
|
|
12825
|
+
if (!$c) {
|
|
12826
|
+
(0, _yuneta_gobj_js.log_error)(`${(0, _yuneta_gobj_js.gobj_short_name)(host)}: hosted view does not expose $container — check its mt_create`);
|
|
12827
|
+
$c = (0, _yuneta_gobj_js.createElement2)([
|
|
12828
|
+
"div",
|
|
12829
|
+
{},
|
|
12830
|
+
""
|
|
12831
|
+
]);
|
|
12832
|
+
}
|
|
12833
|
+
(0, _yuneta_gobj_js.gobj_write_attr)(host, "$container", $c);
|
|
12834
|
+
return $c;
|
|
12835
|
+
}
|
|
12836
|
+
/***************************
|
|
12837
|
+
* Framework Methods
|
|
12838
|
+
***************************/
|
|
12839
|
+
/***************************************************************
|
|
12840
|
+
* Framework Method: Create
|
|
12841
|
+
***************************************************************/
|
|
12842
|
+
function mt_create$7(gobj) {
|
|
12843
|
+
let priv = gobj.priv;
|
|
12844
|
+
let subscriber = (0, _yuneta_gobj_js.gobj_read_pointer_attr)(gobj, "subscriber");
|
|
12845
|
+
if (!subscriber) subscriber = (0, _yuneta_gobj_js.gobj_parent)(gobj);
|
|
12846
|
+
(0, _yuneta_gobj_js.gobj_subscribe_event)(gobj, null, {}, subscriber);
|
|
12847
|
+
priv.view = yui_mount_service_view(gobj, {
|
|
12848
|
+
gclass: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "view_gclass"),
|
|
12849
|
+
name: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "service_name"),
|
|
12850
|
+
kw: (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "view_kw") || {},
|
|
12851
|
+
transport: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "transport_service"),
|
|
12852
|
+
transport_attr: (0, _yuneta_gobj_js.gobj_read_str_attr)(gobj, "transport_attr")
|
|
12853
|
+
});
|
|
12854
|
+
expose_view_container(gobj, priv.view);
|
|
12855
|
+
}
|
|
12856
|
+
/***************************************************************
|
|
12857
|
+
* Framework Method: Start
|
|
12858
|
+
*
|
|
12859
|
+
* The view starts HERE and not in mt_create, so its first
|
|
12860
|
+
* request goes out when the host shows it.
|
|
12861
|
+
***************************************************************/
|
|
12862
|
+
function mt_start$7(gobj) {
|
|
12863
|
+
const view = gobj.priv.view;
|
|
12864
|
+
if (view && !(0, _yuneta_gobj_js.gobj_is_running)(view)) (0, _yuneta_gobj_js.gobj_start)(view);
|
|
12865
|
+
}
|
|
12866
|
+
/***************************************************************
|
|
12867
|
+
* Framework Method: Stop
|
|
12868
|
+
***************************************************************/
|
|
12869
|
+
function mt_stop$7(gobj) {
|
|
12870
|
+
const view = gobj.priv.view;
|
|
12871
|
+
if (view && (0, _yuneta_gobj_js.gobj_is_running)(view)) (0, _yuneta_gobj_js.gobj_stop)(view);
|
|
12872
|
+
}
|
|
12873
|
+
/***************************************************************
|
|
12874
|
+
* Framework Method: Destroy
|
|
12875
|
+
*
|
|
12876
|
+
* The view is a SERVICE created with this gobj as its parent, so
|
|
12877
|
+
* gobj_destroy cascades onto it — and deregisters its name. Do
|
|
12878
|
+
* NOT destroy it again here.
|
|
12879
|
+
***************************************************************/
|
|
12880
|
+
function mt_destroy$7(gobj) {
|
|
12881
|
+
let priv = gobj.priv;
|
|
12882
|
+
priv.view = null;
|
|
12883
|
+
const $c = (0, _yuneta_gobj_js.gobj_read_attr)(gobj, "$container");
|
|
12884
|
+
if ($c && $c.parentNode) $c.parentNode.removeChild($c);
|
|
12885
|
+
(0, _yuneta_gobj_js.gobj_write_attr)(gobj, "$container", null);
|
|
12886
|
+
}
|
|
12887
|
+
/***************************
|
|
12888
|
+
* FSM
|
|
12889
|
+
***************************/
|
|
12890
|
+
var gmt$7 = {
|
|
12891
|
+
mt_create: mt_create$7,
|
|
12892
|
+
mt_start: mt_start$7,
|
|
12893
|
+
mt_stop: mt_stop$7,
|
|
12894
|
+
mt_destroy: mt_destroy$7
|
|
12895
|
+
};
|
|
12896
|
+
function create_gclass$7(gclass_name) {
|
|
12897
|
+
if (__gclass__$7) {
|
|
12898
|
+
(0, _yuneta_gobj_js.log_error)(`GClass ALREADY created: ${gclass_name}`);
|
|
12899
|
+
return -1;
|
|
12900
|
+
}
|
|
12901
|
+
__gclass__$7 = (0, _yuneta_gobj_js.gclass_create)(gclass_name, [], [["ST_IDLE", []]], gmt$7, 0, attrs_table$7, PRIVATE_DATA$7, 0, 0, 0, 0);
|
|
12902
|
+
return __gclass__$7 ? 0 : -1;
|
|
12903
|
+
}
|
|
12904
|
+
function register_c_yui_service_view() {
|
|
12568
12905
|
return create_gclass$7(GCLASS_NAME$7);
|
|
12569
12906
|
}
|
|
12570
12907
|
//#endregion
|
|
@@ -12683,7 +13020,12 @@ function cards_grid_descriptor(items, show_label) {
|
|
|
12683
13020
|
* container; build_ui re-applies them on every rebuild.
|
|
12684
13021
|
*
|
|
12685
13022
|
* Each item supports:
|
|
12686
|
-
* id, name, icon (CSS class or svg id), route,
|
|
13023
|
+
* id, name, icon (CSS class or svg id), route, disabled
|
|
13024
|
+
* (`badge` was listed here for a long time and NOTHING ever
|
|
13025
|
+
* rendered it — a menu item cannot carry a count today. The
|
|
13026
|
+
* toolbar can: `badge` on a toolbar item plus
|
|
13027
|
+
* yui_shell_set_toolbar_item_badge(). Implement it here the
|
|
13028
|
+
* day a menu entry needs one, rather than re-listing it.)
|
|
12687
13029
|
* class — extra CSS class(es) on the item (tabs layout), e.g.
|
|
12688
13030
|
* a per-item state colour like "yui-nav-disconnected"
|
|
12689
13031
|
* closable — render a trailing ✕ that emits EV_NAV_ITEM_CLOSE
|
|
@@ -53297,6 +53639,7 @@ exports.disableElements = disableElements;
|
|
|
53297
53639
|
exports.enableElements = enableElements;
|
|
53298
53640
|
exports.epoch_to_local_input = epoch_to_local_input;
|
|
53299
53641
|
exports.epoch_to_ms = epoch_to_ms;
|
|
53642
|
+
exports.expose_view_container = expose_view_container;
|
|
53300
53643
|
exports.fmt_epoch = fmt_epoch;
|
|
53301
53644
|
exports.getStrokeColor = getStrokeColor;
|
|
53302
53645
|
exports.infer_period = infer_period;
|
|
@@ -53323,6 +53666,7 @@ exports.register_c_yui_map = register_c_yui_map;
|
|
|
53323
53666
|
exports.register_c_yui_nav = register_c_yui_nav;
|
|
53324
53667
|
exports.register_c_yui_pager = register_c_yui_pager;
|
|
53325
53668
|
exports.register_c_yui_period = register_c_yui_period;
|
|
53669
|
+
exports.register_c_yui_service_view = register_c_yui_service_view;
|
|
53326
53670
|
exports.register_c_yui_shell = register_c_yui_shell;
|
|
53327
53671
|
exports.register_c_yui_treedb_graph = register_c_yui_treedb_graph;
|
|
53328
53672
|
exports.register_c_yui_treedb_schema = register_c_yui_treedb_schema;
|
|
@@ -53343,6 +53687,7 @@ exports.setup_dev = setup_dev;
|
|
|
53343
53687
|
exports.setup_frontend_view = setup_frontend_view;
|
|
53344
53688
|
exports.toggleClasses = toggleClasses;
|
|
53345
53689
|
exports.yui_is_dark = yui_is_dark;
|
|
53690
|
+
exports.yui_mount_service_view = yui_mount_service_view;
|
|
53346
53691
|
exports.yui_shell_close_drawer = yui_shell_close_drawer;
|
|
53347
53692
|
exports.yui_shell_close_dropdown = yui_shell_close_dropdown;
|
|
53348
53693
|
exports.yui_shell_confirm_ok = yui_shell_confirm_ok;
|
|
@@ -53359,6 +53704,7 @@ exports.yui_shell_register_overlay = yui_shell_register_overlay;
|
|
|
53359
53704
|
exports.yui_shell_set_avatar_provider = yui_shell_set_avatar_provider;
|
|
53360
53705
|
exports.yui_shell_set_connection_state = yui_shell_set_connection_state;
|
|
53361
53706
|
exports.yui_shell_set_sub_routes = yui_shell_set_sub_routes;
|
|
53707
|
+
exports.yui_shell_set_toolbar_item_badge = yui_shell_set_toolbar_item_badge;
|
|
53362
53708
|
exports.yui_shell_set_toolbar_item_icon = yui_shell_set_toolbar_item_icon;
|
|
53363
53709
|
exports.yui_shell_set_translator = yui_shell_set_translator;
|
|
53364
53710
|
exports.yui_shell_show_error = yui_shell_show_error;
|