Restore click handler logging + use logInfo for errors (SES-safe)
SES lockdown may suppress console.error. Use logInfo for error reporting since we know it works ([sx-ref] prefix visible). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -14,7 +14,7 @@
|
|||||||
// =========================================================================
|
// =========================================================================
|
||||||
|
|
||||||
var NIL = Object.freeze({ _nil: true, toString: function() { return "nil"; } });
|
var NIL = Object.freeze({ _nil: true, toString: function() { return "nil"; } });
|
||||||
var SX_VERSION = "2026-03-06T21:53:47Z";
|
var SX_VERSION = "2026-03-06T21:57:37Z";
|
||||||
|
|
||||||
function isNil(x) { return x === NIL || x === null || x === undefined; }
|
function isNil(x) { return x === NIL || x === null || x === undefined; }
|
||||||
function isSxTruthy(x) { return x !== false && !isNil(x); }
|
function isSxTruthy(x) { return x !== false && !isNil(x); }
|
||||||
@@ -1842,7 +1842,8 @@ return postSwap(target); });
|
|||||||
var timer = NIL;
|
var timer = NIL;
|
||||||
var lastVal = NIL;
|
var lastVal = NIL;
|
||||||
var listenTarget = (isSxTruthy(get(mods, "from")) ? domQuery(get(mods, "from")) : el);
|
var listenTarget = (isSxTruthy(get(mods, "from")) ? domQuery(get(mods, "from")) : el);
|
||||||
return (isSxTruthy(listenTarget) ? domAddListener(listenTarget, eventName, function(e) { return (function() {
|
return (isSxTruthy(listenTarget) ? domAddListener(listenTarget, eventName, function(e) { logInfo((String("sx:click ") + String(eventName) + String(" ") + String(domTagName(el)) + String(" href=") + String(domGetAttr(el, "href"))));
|
||||||
|
return (function() {
|
||||||
var shouldFire = true;
|
var shouldFire = true;
|
||||||
if (isSxTruthy(get(mods, "changed"))) {
|
if (isSxTruthy(get(mods, "changed"))) {
|
||||||
(function() {
|
(function() {
|
||||||
@@ -2994,7 +2995,7 @@ callExpr.push(dictGet(kwargs, k)); } }
|
|||||||
if (opts.once || opts["once"]) o.once = true;
|
if (opts.once || opts["once"]) o.once = true;
|
||||||
}
|
}
|
||||||
el.addEventListener(event, function(e) {
|
el.addEventListener(event, function(e) {
|
||||||
try { fn(e); } catch (err) { console.error("[sx-ref] event handler error:", event, err); }
|
try { fn(e); } catch (err) { logInfo("EVENT ERROR: " + event + " " + (err && err.message ? err.message : err)); console.error("[sx-ref] event handler error:", event, err); }
|
||||||
}, o);
|
}, o);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2515,7 +2515,7 @@ PLATFORM_ORCHESTRATION_JS = """
|
|||||||
if (opts.once || opts["once"]) o.once = true;
|
if (opts.once || opts["once"]) o.once = true;
|
||||||
}
|
}
|
||||||
el.addEventListener(event, function(e) {
|
el.addEventListener(event, function(e) {
|
||||||
try { fn(e); } catch (err) { console.error("[sx-ref] event handler error:", event, err); }
|
try { fn(e); } catch (err) { logInfo("EVENT ERROR: " + event + " " + (err && err.message ? err.message : err)); console.error("[sx-ref] event handler error:", event, err); }
|
||||||
}, o);
|
}, o);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -373,6 +373,7 @@
|
|||||||
(when listen-target
|
(when listen-target
|
||||||
(dom-add-listener listen-target event-name
|
(dom-add-listener listen-target event-name
|
||||||
(fn (e)
|
(fn (e)
|
||||||
|
(log-info (str "sx:click " event-name " " (dom-tag-name el) " href=" (dom-get-attr el "href")))
|
||||||
(let ((should-fire true))
|
(let ((should-fire true))
|
||||||
;; Changed modifier: skip if value unchanged
|
;; Changed modifier: skip if value unchanged
|
||||||
(when (get mods "changed")
|
(when (get mods "changed")
|
||||||
|
|||||||
Reference in New Issue
Block a user