talkdom 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/talkdom.min.js +1 -1
- package/dist/talkdom.min.js.map +1 -0
- package/index.js +7 -6
- package/package.json +6 -2
package/dist/talkdom.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(){function e(e){for(var t=e.trim(),r=t.split(/\s+/),n=r[0],o=t.substring(n.length).trim(),i=r.slice(1),c=[],
|
|
1
|
+
!function(){function e(e){for(var t=e.trim(),r=t.split(/\s+/),n=r[0],o=t.substring(n.length).trim(),i=r.slice(1),c=[],u=[],s=[],a=0;a<i.length;a++){var l=i[a];l.endsWith(":")?(c.length>0&&s.length>0?(u.push(s.join(" ")),s=[]):c.length>0&&u.push(""),c.push(l)):s.push(l)}return c.length>0&&u.push(s.join(" ")),{receiver:n,selector:c.join(""),keywords:c,args:u,body:o}}function t(e){return e.getAttribute("receiver").trim().split(/\s+/)[0]}function r(e){return document.querySelectorAll('[receiver~="'+e+'"]')}function n(e,r,n){if(function(e,t){var r=e.getAttribute("accepts");return!r||-1!==r.split(/\s+/).indexOf(t)}(e,r)){switch(r){case"inner":e.innerHTML=n;break;case"text":e.textContent=n;break;case"append":e.insertAdjacentHTML("beforeend",n);break;case"outer":e.outerHTML=n}return function(e,r){if(e.hasAttribute("receiver")&&e.hasAttribute("persist")){var n="talkDOM:"+t(e);"outer"===r?localStorage.setItem(n,JSON.stringify({op:r,content:e.outerHTML})):localStorage.setItem(n,JSON.stringify({op:r,content:e.innerHTML}))}}(e,r),n}console.error(t(e)+" does not accept "+r)}function o(e,t,r){var n,o={"X-TalkDOM-Request":"true","X-TalkDOM-Current-URL":location.href};if(r&&(o["X-TalkDOM-Receiver"]=r),"GET"!==e){var i=(n=document.querySelector('meta[name="csrf-token"]'))?n.getAttribute("content"):"";i?o["X-CSRF-Token"]=i:console.warn("talkDOM: no CSRF token found for "+e+" "+t)}return fetch(t,{method:e,headers:o}).then(function(r){if(!r.ok)return console.error("talkDOM: "+e+" "+t+" "+r.status),Promise.reject(r.status);var n=r.headers.get("X-TalkDOM-Trigger");return r.text().then(function(e){return n&&f(n),e})},function(r){return console.error("talkDOM: "+e+" "+t+" failed",r),Promise.reject(r)})}function i(e){return e.hasAttribute("receiver")?t(e):""}const c={"get:":function(e,t){return o("GET",t,i(e))},"post:":function(e,t){return o("POST",t,i(e))},"put:":function(e,t){return o("PUT",t,i(e))},"delete:":function(e,t){return o("DELETE",t,i(e))},"confirm:":function(e,t){if(!confirm(t))return Promise.reject("cancelled")},"apply:":function(e,t,r){return n(e,r,t)},"get:apply:":function(e,t,r){return o("GET",t,i(e)).then(function(t){return n(e,r,t)})},"post:apply:":function(e,t,r){return o("POST",t,i(e)).then(function(t){return n(e,r,t)})},"put:apply:":function(e,t,r){return o("PUT",t,i(e)).then(function(t){return n(e,r,t)})},"delete:apply:":function(e,t,r){return o("DELETE",t,i(e)).then(function(t){return n(e,r,t)})}};var u=!1;function s(e){e&&e.sender&&(u=!0,f(e.sender),u=!1)}function a(e,t){var n=r(e.receiver);if(0!==n.length){var o=c[e.selector];if(o){var i,u=void 0!==t?[t].concat(e.args):e.args;return n.forEach(function(t){var n={receiver:e.receiver,selector:e.selector,args:e.args},c=t.parentNode,s=t.nextElementSibling;function a(){return t.isConnected?t:(s&&s.isConnected?s.previousElementSibling:c&&c.isConnected?c.lastElementChild:null)||r(e.receiver)[0]}if((i=o(t,...u))&&"function"==typeof i.then)i.then(function(){var e=a();e&&e.dispatchEvent(new CustomEvent("talkdom:done",{bubbles:!0,detail:n}))},function(e){n.error=e;var t=a();t&&t.dispatchEvent(new CustomEvent("talkdom:error",{bubbles:!0,detail:n}))});else{var l=a();l&&l.dispatchEvent(new CustomEvent("talkdom:done",{bubbles:!0,detail:n}))}}),i}console.error(e.receiver+" does not understand "+e.selector)}else console.error(e.receiver+" not found")}function l(t){var r=t.split(";").map(function(t){var r=t.trim();if(!r)return Promise.resolve();var n=r.split("|").map(function(e){return e.trim()}).filter(Boolean);return 1===n.length?Promise.resolve(a(e(n[0]))):n.reduce(function(t,r){var n=e(r);return Promise.resolve(t).then(function(e){return a(n,e)})},void 0)});return Promise.all(r)}function f(e){l(e).catch(function(e){console.warn("talkDOM:",e)})}function d(t){var r=t.getAttribute("sender");f(r),u||function(t,r){if(t.hasAttribute("push-url")){var n=t.getAttribute("push-url");n||(n=e(r.split(";")[0].split("|")[0].trim()).args[0]||""),n&&location.pathname+location.search!==n&&history.pushState({sender:r},"",n)}}(t,r)}window.addEventListener("popstate",function(e){s(e.state)}),document.addEventListener("click",function(e){const t=e.target.closest("[sender]");t&&(e.preventDefault(),d(t))}),document.querySelectorAll("[persist]").forEach(function(e){if(e.hasAttribute("receiver")){var r=t(e),n=localStorage.getItem("talkDOM:"+r);if(n){var o;try{o=JSON.parse(n)}catch(e){return void localStorage.removeItem("talkDOM:"+r)}"outer"===o.op?e.outerHTML=o.content:e.innerHTML=o.content}}}),s(history.state),document.querySelectorAll("[receiver]").forEach(function(t){var n=e(t.getAttribute("receiver"));if("poll:"===n.keywords[n.keywords.length-1]){var o=function(e){var t=e.match(/^(\d+)(s|ms)$/);if(!t)return null;var r=parseInt(t[1],10);return"s"===t[2]?1e3*r:r}(n.args[n.args.length-1]);if(o)var i=n.keywords.slice(0,-1).join(""),u=n.args.slice(0,-1),s=n.receiver,a=r(s),l=setInterval(function(){if(t.isConnected){if(0!==a.length&&a[0].isConnected||(a=r(s)),0!==a.length){var e=c[i];e?a.forEach(function(t){e(t,...u)}):console.error(s+" does not understand "+i)}}else clearInterval(l)},o);else console.error("poll: invalid interval for "+n.receiver)}}),window.talkDOM={methods:c,send:l}}();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["parseMessage","str","trimmed","trim","tokens","split","receiver","body","substring","length","rest","slice","keywords","args","currentArg","i","token","endsWith","push","join","selector","receiverName","el","getAttribute","findReceivers","name","document","querySelectorAll","apply","op","content","attr","indexOf","accepts","innerHTML","textContent","insertAdjacentHTML","outerHTML","hasAttribute","key","localStorage","setItem","JSON","stringify","persist","console","error","request","method","url","meta","headers","location","href","querySelector","warn","fetch","then","r","ok","status","Promise","reject","trigger","get","text","dispatchRaw","err","recName","methods","message","confirm","t","pushing","replayState","state","sender","send","msg","piped","els","result","undefined","concat","forEach","detail","parent","parentNode","next","nextElementSibling","resolveTarget","isConnected","previousElementSibling","lastElementChild","target","dispatchEvent","CustomEvent","bubbles","run","raw","chains","map","chain","resolve","steps","s","filter","Boolean","reduce","prev","step","all","catch","dispatch","senderEl","pathname","search","history","pushState","pushUrl","window","addEventListener","e","closest","preventDefault","getItem","parse","removeItem","interval","match","n","parseInt","parseInterval","cachedTargets","id","setInterval","clearInterval","talkDOM"],"sources":["index.js"],"mappings":"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","ignoreList":[]}
|
package/index.js
CHANGED
|
@@ -114,6 +114,7 @@
|
|
|
114
114
|
if (method !== "GET") {
|
|
115
115
|
var token = csrfToken();
|
|
116
116
|
if (token) headers["X-CSRF-Token"] = token;
|
|
117
|
+
else console.warn("talkDOM: no CSRF token found for " + method + " " + url);
|
|
117
118
|
}
|
|
118
119
|
return fetch(url, { method: method, headers: headers }).then(function (r) {
|
|
119
120
|
if (!r.ok) {
|
|
@@ -143,11 +144,11 @@
|
|
|
143
144
|
"put:": function (el, url) { return request("PUT", url, recName(el)); },
|
|
144
145
|
"delete:": function (el, url) { return request("DELETE", url, recName(el)); },
|
|
145
146
|
"confirm:": function (el, message) { if (!confirm(message)) return Promise.reject("cancelled"); },
|
|
146
|
-
"apply:": function (el, content, op) { apply(el, op, content); },
|
|
147
|
-
"get:apply:": function (el, url, op) { return request("GET", url, recName(el)).then(function (t) { apply(el, op, t); }); },
|
|
148
|
-
"post:apply:": function (el, url, op) { return request("POST", url, recName(el)).then(function (t) { apply(el, op, t); }); },
|
|
149
|
-
"put:apply:": function (el, url, op) { return request("PUT", url, recName(el)).then(function (t) { apply(el, op, t); }); },
|
|
150
|
-
"delete:apply:": function (el, url, op) { return request("DELETE", url, recName(el)).then(function (t) { apply(el, op, t); }); },
|
|
147
|
+
"apply:": function (el, content, op) { return apply(el, op, content); },
|
|
148
|
+
"get:apply:": function (el, url, op) { return request("GET", url, recName(el)).then(function (t) { return apply(el, op, t); }); },
|
|
149
|
+
"post:apply:": function (el, url, op) { return request("POST", url, recName(el)).then(function (t) { return apply(el, op, t); }); },
|
|
150
|
+
"put:apply:": function (el, url, op) { return request("PUT", url, recName(el)).then(function (t) { return apply(el, op, t); }); },
|
|
151
|
+
"delete:apply:": function (el, url, op) { return request("DELETE", url, recName(el)).then(function (t) { return apply(el, op, t); }); },
|
|
151
152
|
};
|
|
152
153
|
|
|
153
154
|
var pushing = false;
|
|
@@ -242,7 +243,7 @@
|
|
|
242
243
|
|
|
243
244
|
// Fire-and-forget dispatch used by declarative senders and server triggers.
|
|
244
245
|
function dispatchRaw(raw) {
|
|
245
|
-
run(raw).catch(function () {});
|
|
246
|
+
run(raw).catch(function (err) { console.warn("talkDOM:", err); });
|
|
246
247
|
}
|
|
247
248
|
|
|
248
249
|
// Entry point for a sender click: dispatch its message and optionally push URL.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "talkdom",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Smalltalk-inspired message passing for the DOM",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"jsdelivr": "dist/talkdom.min.js",
|
|
@@ -10,7 +10,9 @@
|
|
|
10
10
|
"dist/"
|
|
11
11
|
],
|
|
12
12
|
"scripts": {
|
|
13
|
-
"build": "
|
|
13
|
+
"build": "node -e \"require('fs').mkdirSync('dist',{recursive:true})\" && terser index.js -o dist/talkdom.min.js -c -m --source-map",
|
|
14
|
+
"test": "node test-runner.js",
|
|
15
|
+
"lint": "eslint index.js",
|
|
14
16
|
"prepublishOnly": "npm run build"
|
|
15
17
|
},
|
|
16
18
|
"homepage": "https://talkdom.org",
|
|
@@ -27,6 +29,8 @@
|
|
|
27
29
|
],
|
|
28
30
|
"license": "MIT",
|
|
29
31
|
"devDependencies": {
|
|
32
|
+
"eslint": "^10.1.0",
|
|
33
|
+
"jsdom": "^29.0.1",
|
|
30
34
|
"terser": "^5.46.1"
|
|
31
35
|
}
|
|
32
36
|
}
|