Closed sprig closed 2 months ago
Very strange! It looks like the io context is not working. Are you running Pluto with any custom configurations?
Does this snippet work for you?
# βββ‘ 9354c037-06aa-4a44-9c95-d1206857fbf1
begin
struct GiveMeCellID
end
function Base.show(io::IO, m::MIME"text/javascript", x::GiveMeCellID)
write(io, "'", string(get(io, :pluto_cell_id, "unknown")), "'")
end
function Base.show(io::IO, m::MIME"text/html", x::GiveMeCellID)
@info sprint(show, "text/plain", Dict(k => get(io, k, nothing) for k in keys(io)))
write(io, string(get(io, :pluto_cell_id, "unknown")))
end
end
# βββ‘ 7b34b1dd-c1b1-4965-9b47-b6a46b22b95e
@htl """
<script>
console.log($(GiveMeCellID()))
</script>
"""
# βββ‘ f92841a0-b75d-4b5d-96d3-669a4eec5f00
GiveMeCellID()
Can you share the output of the last cell? Ideally just send an HTML export file. Otherwise send a screenshot, but try to include the whole screen so I don't need to guess which error you are sending :) Feel free to update the screenshots in your last post.
You should get:
Ah sorry, with_js_link
was recently added in https://github.com/fonsp/Pluto.jl/pull/2726 but not yet released. I updated the PR text to explain this and instructions for how to use it.
Please try it out and share how it went! The feature is not yet released because I am waiting for more feedback :)
I should clarify that I get the same results with βpublished_to_jsβ. Iβll try running your notebook on the current release and try the code as well as your notebook on HEAD as well.
The docs mention that @bind is preferable when it is viable. My alternative plan for bidirectional links was to open a websocket in julia in a separate thread and connect to it from js, updating the value of a bound input whenever something is pushed from the julia side. Should this work?
No, just use with_js_link :)
The snippet you provided does work; html export attached:
<!DOCTYPE html><html lang="en"><head><meta name="viewport" content="width=device-width"><meta charset="utf-8">
<meta name="pluto-insertion-spot-meta">
<meta name="theme-color" media="(prefers-color-scheme: light)" content="white"><meta name="theme-color" media="(prefers-color-scheme: dark)" content="#2a2928"><meta name="color-scheme" content="light dark"><link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/favicon-16x16.347d2855.png" integrity="sha384-3qsGeVLdddzV9oIkj3PhXXQX2CZCjOD/CiyrPQOX6InOWw3HAHClrsQhPfX9uRAj" crossorigin="anonymous"><link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/favicon-32x32.8789add4.png" integrity="sha384-cOe5vSoBIgKNgkUL27p9RpsGVY0uBg9PejLccDy+fR8ZD1Iv5dF1MGHjIZAIZwm6" crossorigin="anonymous"><link rel="icon" type="image/png" sizes="96x96" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/favicon-96x96.48689391.png" integrity="sha384-TN49cYb8GyNmrZT14bsYXXo4l1x1NJeJ/EHuVAauAKsNPopPHLojijs9jFT4Vs8c" crossorigin="anonymous"><link rel="pluto-logo-big" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/logo.004c1d7c.svg" integrity="sha384-GkQkODcGxsrSRJCkeakBXihum0GUM44cwBgKyutDimectXCbCgj6Vu3jlrueqEcN" crossorigin="anonymous"><link rel="pluto-logo-small" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/favicon_unsaturated.d1387b25.svg" integrity="sha384-omwjH+Qy3hpAVf5FYd/pkaDBuVAfsEDRN7eBxEA8Ek00OAWP+aiV+GpEYk3I7lyo" crossorigin="anonymous"><script type="module" src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.0c13a924.js" integrity="sha384-q8cO+lFO46JfgnUPjKIx0Wq2bi7VUEL3IC7rlX48twUcwXr23VYfIwsIa/V7Ok+N" crossorigin="anonymous"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/juliamono.c6034ab4.css" integrity="sha384-n0za6lUXlyf4XC+nGkZWj3TLDnRbNpAcoi4PZGSlQMPoyqGa9kGY+ZXkUgZGIhQt" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.3719a8dd.css" integrity="sha384-yhudY09uOGgdlEiCzzRwQjbXaVz42f4OmYwW7HQgngnxJzuq6TT6xhnT3iPemJAF" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/vollkorn.089565a8.css" integrity="sha384-jnV/84VtSgBLF70H+s2rxJcOUZIMDR+X/ElFZA83i9ZtZSWiIMFAgPyrWkOJV08q" crossorigin="anonymous"><script defer="">console.log("Pluto.jl, by Fons van der Plas (https://github.com/fonsp), MikoΕaj Bochenski (https://github.com/malyvsen), Michiel Dral (https://github.com/dralletje) and friends π");</script><script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.b8733d72.js" defer="" integrity="sha384-84yPd6AGZ/1IUiaBlssipmMKMFz9WGFQ+u8vYZ9cWicH6bZm7ZOej+kLDXnIIAQJ" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.9f9dc874.js" defer="" integrity="sha384-tkFo1EK72I9JvoTmHFa199dfRzW8mkXPUkHb/N7UhYI+bxKzX3Kh8LNCZz1ltsFF" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.90ede145.js" defer="" integrity="sha384-CuNU9gQg6fa/yynNqNWjHWzPm4nj+d7O6+HXsNGSqClhs/bYQIbBC3Lw/kh8Ukui" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.dbeed08a.js" defer="" integrity="sha384-1BEdQwXfZi4ZpsNV8w1X8pQcVK1/DS/+/M8OTo3gol7mdEspSN7nT6llX57NQCSt" crossorigin="anonymous"></script><script id="iframe-resizer-content-window-script" src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.6386bd9d.js" crossorigin="anonymous" defer="" integrity="sha384-tgN2a0VDi/lCYwZuDqT7L+A/Y/9kpxf3HV7zv2BJ5Fu7zW0EClq0nM4crfK3TRPs"></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.36dc5b0a.css" type="text/css" integrity="sha384-Z/uEiiiLk3ulLFo6D/X8V2lY2Hxs5UXQH+xtY4bS072roR77TRSGaE9jp58FW5L9" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.52bd66ba.css" type="text/css" media="all" data-pluto-file="hide-ui" integrity="sha384-mZn6RuXF1UXCTqkld9/QJshMPUFGT/EBEcr0lZfUV7TULrxk0fZqe+YHXMk+6Qb0" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.ec3a6a5b.css" type="text/css" integrity="sha384-SuGFZkuBuG+lmfz6RbnvjtcyIh8W1xDYi1sebwn7bl9VMQnhmr6EniSmIdcHJ55l" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.bc0bd8d4.css" type="text/css" integrity="sha384-gr3OhYFI4bbMe91xbdUoBh8mmEYRN8obb40FeevBAfwVD1162FI9d6zAuXKy+D13" crossorigin="anonymous"><link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/juliamono.c6034ab4.css" as="style" integrity="sha384-n0za6lUXlyf4XC+nGkZWj3TLDnRbNpAcoi4PZGSlQMPoyqGa9kGY+ZXkUgZGIhQt" crossorigin="anonymous"><link rel="preload" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/vollkorn.089565a8.css" as="style" integrity="sha384-jnV/84VtSgBLF70H+s2rxJcOUZIMDR+X/ElFZA83i9ZtZSWiIMFAgPyrWkOJV08q" crossorigin="anonymous"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.e82e08bd.css" type="text/css" integrity="sha384-7YN+h8b6N4N65qk8TG/J2KPF95D8z3sGNd06rokz4CX9oWu0KnRAF5cVWu3BkkaN" crossorigin="anonymous"><script data-pluto-file="launch-parameters">
window.pluto_notebook_id = undefined;
window.pluto_isolated_cell_ids = undefined;
window.pluto_notebookfile = "data:text/julia;charset=utf-8;base64,IyMjIEEgUGx1dG8uamwgbm90ZWJvb2sgIyMjCiMgdjAuMTkuNDAKCnVzaW5nIE1hcmtkb3duCnVzaW5nIEludGVyYWN0aXZlVXRpbHMKCiMg4pWU4pWQ4pWhIDNhOWRjY2YwLWUzNDItNGIzMS1iNjU1LTQ5YjJhYzgxNzU1NwppbXBvcnQgSHlwZXJ0ZXh0TGl0ZXJhbDogQGh0bCwgSmF2YVNjcmlwdAoKIyDilZTilZDilaEgYWY4MzE3ZTUtZDMxOS00YmE0LTg5MTgtMzM3M2ZmMzIxMzE0CmJlZ2luCglzdHJ1Y3QgR2l2ZU1lQ2VsbElECgllbmQKCglmdW5jdGlvbiBCYXNlLnNob3coaW86OklPLCBtOjpNSU1FInRleHQvamF2YXNjcmlwdCIsIHg6OkdpdmVNZUNlbGxJRCkKCQl3cml0ZShpbywgIiciLCBzdHJpbmcoZ2V0KGlvLCA6cGx1dG9fY2VsbF9pZCwgInVua25vd24iKSksICInIikKCWVuZAoKCQoJZnVuY3Rpb24gQmFzZS5zaG93KGlvOjpJTywgbTo6TUlNRSJ0ZXh0L2h0bWwiLCB4OjpHaXZlTWVDZWxsSUQpCgkJQGluZm8gc3ByaW50KHNob3csICJ0ZXh0L3BsYWluIiwgRGljdChrID0+IGdldChpbywgaywgbm90aGluZykgZm9yIGsgaW4ga2V5cyhpbykpKQoKCQl3cml0ZShpbywgc3RyaW5nKGdldChpbywgOnBsdXRvX2NlbGxfaWQsICJ1bmtub3duIikpKQoJZW5kCmVuZAoKIyDilZTilZDilaEgOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYzCkBodGwgIiIiCjxzY3JpcHQ+CmNvbnNvbGUubG9nKCQoR2l2ZU1lQ2VsbElEKCkpKQo8L3NjcmlwdD4KIiIiCgojIOKVlOKVkOKVoSA1NGE3ZDBhYy01OGFmLTQ3NGUtYTBkOS05Y2YwZGVjOGQxZDIKR2l2ZU1lQ2VsbElEKCkKCiMg4pWU4pWQ4pWhIDAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMQpQTFVUT19QUk9KRUNUX1RPTUxfQ09OVEVOVFMgPSAiIiIKW2RlcHNdCkh5cGVydGV4dExpdGVyYWwgPSAiYWMxMTkyYTgtZjRiMy00YmZlLWJhMjItYWY1YjkyY2QzYWIyIgoKW2NvbXBhdF0KSHlwZXJ0ZXh0TGl0ZXJhbCA9ICJ+MC45LjUiCiIiIgoKIyDilZTilZDilaEgMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAyClBMVVRPX01BTklGRVNUX1RPTUxfQ09OVEVOVFMgPSAiIiIKIyBUaGlzIGZpbGUgaXMgbWFjaGluZS1nZW5lcmF0ZWQgLSBlZGl0aW5nIGl0IGRpcmVjdGx5IGlzIG5vdCBhZHZpc2VkCgpqdWxpYV92ZXJzaW9uID0gIjEuOS4zIgptYW5pZmVzdF9mb3JtYXQgPSAiMi4wIgpwcm9qZWN0X2hhc2ggPSAiNWIzN2FiZGY3Mzk4ZGM1ZGE0Y2QzNDdkMDYwOTk5MDIzOGQ4OTViYiIKCltbZGVwcy5IeXBlcnRleHRMaXRlcmFsXV0KZGVwcyA9IFsiVHJpY2tzIl0KZ2l0LXRyZWUtc2hhMSA9ICI3MTM0ODEwYjFhZmNlMDRiYmMxMDQ1Y2ExOTg1ZmJlODFjZTE3NjUzIgp1dWlkID0gImFjMTE5MmE4LWY0YjMtNGJmZS1iYTIyLWFmNWI5MmNkM2FiMiIKdmVyc2lvbiA9ICIwLjkuNSIKCltbZGVwcy5Ucmlja3NdXQpnaXQtdHJlZS1zaGExID0gImVhZTFiYjQ4NGNkNjNiMzY5OTllZTU4YmUyZGU2YzE3ODEwNTExMmYiCnV1aWQgPSAiNDEwYTRiNGQtNDllNC00ZmJjLWFiNmQtY2I3MWIxN2IzNzc1Igp2ZXJzaW9uID0gIjAuMS44IgoiIiIKCiMg4pWU4pWQ4pWhIENlbGwgb3JkZXI6CiMg4pWg4pWQM2E5ZGNjZjAtZTM0Mi00YjMxLWI2NTUtNDliMmFjODE3NTU3CiMg4pWg4pWQYWY4MzE3ZTUtZDMxOS00YmE0LTg5MTgtMzM3M2ZmMzIxMzE0CiMg4pWg4pWQOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYzCiMg4pWg4pWQNTRhN2QwYWMtNThhZi00NzRlLWEwZDktOWNmMGRlYzhkMWQyCiMg4pWf4pSAMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAxCiMg4pWf4pSAMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAyCg==";
window.pluto_disable_ui = true;
window.pluto_slider_server_url = undefined;
window.pluto_binder_url = "https://mybinder.org/v2/gh/fonsp/pluto-on-binder/v0.19.40";
window.pluto_statefile = "data:;base64,3gASpWJvbmRzgKxjZWxsX3Jlc3VsdHOE2SQ5OTkwNDU2NS1mNzllLTRkOGQtYjM1NC0zMmIwMWZiZWFjNjOKpnF1ZXVlZMKkbG9nc5CncnVubmluZ8Kmb3V0cHV0hqRib2R52Uc8c2NyaXB0Pgpjb25zb2xlLmxvZygnOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYzJykKPC9zY3JpcHQ+CqRtaW1lqXRleHQvaHRtbKxyb290YXNzaWduZWXAsmxhc3RfcnVuX3RpbWVzdGFtcMtB2YaxamzhQ7BwZXJzaXN0X2pzX3N0YXRlwrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8KnY2VsbF9pZNkkOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYzuWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOHkw5DLVwdWJsaXNoZWRfb2JqZWN0X2tleXOQuGRlcGVuZHNfb25fc2tpcHBlZF9jZWxsc8KnZXJyb3JlZMLZJGFmODMxN2U1LWQzMTktNGJhNC04OTE4LTMzNzNmZjMyMTMxNIqmcXVldWVkwqRsb2dzkKdydW5uaW5nwqZvdXRwdXSGpGJvZHmgpG1pbWWqdGV4dC9wbGFpbqxyb290YXNzaWduZWXAsmxhc3RfcnVuX3RpbWVzdGFtcMtB2YaxWzFh9rBwZXJzaXN0X2pzX3N0YXRlwrdoYXNfcGx1dG9faG9va19mZWF0dXJlc8KnY2VsbF9pZNkkYWY4MzE3ZTUtZDMxOS00YmE0LTg5MTgtMzM3M2ZmMzIxMzE0uWRlcGVuZHNfb25fZGlzYWJsZWRfY2VsbHPCp3J1bnRpbWXOAebTy7VwdWJsaXNoZWRfb2JqZWN0X2tleXOQuGRlcGVuZHNfb25fc2tpcHBlZF9jZWxsc8KnZXJyb3JlZMLZJDU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMoqmcXVldWVkwqRsb2dzkYikbGluZf+jbXNnktoBpURpY3R7U3ltYm9sLCBBbnl9IHdpdGggMTAgZW50cmllczoKICA6Y29sb3IgPT4gZmFsc2UKICA6ZXh0cmFfaXRlbXMgPT4gRGljdHtUdXBsZXtVSW50NjQsIEludDY0fSwgSW50NjR9KCkKICA6bW9kdWxlID0+IE1haW4udmFyIndvcmtzcGFjZSMxMSIKICA6cGx1dG9fcHVibGlzaGVkX3RvX2pzID0+ICM2MQogIDpwbHV0b19jZWxsX2lkID0+IFVVSUQoIjU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMiIpCiAgOnBsdXRvX3N1cHBvcnRlZF9pbnRlZ3JhdGlvbl9mZWF0dXJlcyA9PiBBbnlbXQogIDpkaXNwbGF5c2l6ZSA9PiAoMTgsIDg4KQogIDpsaW1pdCA9PiB0cnVlCiAgOnBsdXRvX25vdGVib29rX2lkID0+IFVVSUQoIjUwZGJiNWNlLWY3ZDAtMTFlZS0xMWMxLWNmMzM5MDBhMTVkOCIpCiAgOmlzX3BsdXRvID0+IHRydWWqdGV4dC9wbGFpbqdjZWxsX2lk2SQ1NGE3ZDBhYy01OGFmLTQ3NGUtYTBkOS05Y2YwZGVjOGQxZDKma3dhcmdzkKJpZLlNYWluX3dvcmtzcGFjZSM2XzI1NDViNGE2pGZpbGXZUi9vcHQvanVsaWEvcGx1dG9fbm90ZWJvb2tzL1Rpbnkgc2NpZW5jZS5qbCM9PSNhZjgzMTdlNS1kMzE5LTRiYTQtODkxOC0zMzczZmYzMjEzMTSlZ3JvdXCsVGlueSBzY2llbmNlpWxldmVspEluZm+ncnVubmluZ8Kmb3V0cHV0hqRib2R52SQ1NGE3ZDBhYy01OGFmLTQ3NGUtYTBkOS05Y2YwZGVjOGQxZDKkbWltZal0ZXh0L2h0bWyscm9vdGFzc2lnbmVlwLJsYXN0X3J1bl90aW1lc3RhbXDLQdmGsW3djDewcGVyc2lzdF9qc19zdGF0ZcK3aGFzX3BsdXRvX2hvb2tfZmVhdHVyZXPCp2NlbGxfaWTZJDU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMrlkZXBlbmRzX29uX2Rpc2FibGVkX2NlbGxzwqdydW50aW1lzTKhtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwtkkM2E5ZGNjZjAtZTM0Mi00YjMxLWI2NTUtNDliMmFjODE3NTU3iqZxdWV1ZWTCpGxvZ3OQp3J1bm5pbmfCpm91dHB1dIakYm9keaCkbWltZap0ZXh0L3BsYWlurHJvb3Rhc3NpZ25lZcCybGFzdF9ydW5fdGltZXN0YW1wy0HZhrFqI4kSsHBlcnNpc3RfanNfc3RhdGXCt2hhc19wbHV0b19ob29rX2ZlYXR1cmVzwqdjZWxsX2lk2SQzYTlkY2NmMC1lMzQyLTRiMzEtYjY1NS00OWIyYWM4MTc1NTe5ZGVwZW5kc19vbl9kaXNhYmxlZF9jZWxsc8KncnVudGltZc4BoUMVtXB1Ymxpc2hlZF9vYmplY3Rfa2V5c5C4ZGVwZW5kc19vbl9za2lwcGVkX2NlbGxzwqdlcnJvcmVkwqtzdGF0dXNfdHJlZYSkbmFtZahub3RlYm9va6hzdWJ0YXNrc4Smc2F2aW5nhKRuYW1lpnNhdmluZ6hzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdmGsYGAps6qc3RhcnRlZF9hdMtB2YaxgYChFql3b3Jrc3BhY2WEpG5hbWWpd29ya3NwYWNlqHN1YnRhc2tzgqxpbml0X3Byb2Nlc3OEpG5hbWWsaW5pdF9wcm9jZXNzqHN1YnRhc2tzhKE0hKRuYW1loTSoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZheJIWt/0qnN0YXJ0ZWRfYXTLQdmF4kgv9mahMYSkbmFtZaExqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2YXiSCtM06pzdGFydGVkX2F0y0HZheJIIOIJoTKEpG5hbWWhMqhzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdmF4kgrai+qc3RhcnRlZF9hdMtB2YXiSCtbn6EzhKRuYW1loTOoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZheJIL+dcqnN0YXJ0ZWRfYXTLQdmF4kgrakSrZmluaXNoZWRfYXTLQdmF4kha7tSqc3RhcnRlZF9hdMtB2YXiSCDgcq5jcmVhdGVfcHJvY2Vzc4SkbmFtZa5jcmVhdGVfcHJvY2Vzc6hzdWJ0YXNrc4CrZmluaXNoZWRfYXTLQdmF4kgg0N2qc3RhcnRlZF9hdMtB2YXiRr1v9KtmaW5pc2hlZF9hdMtB2YXiSFru4apzdGFydGVkX2F0y0HZheJGvW+5o3BrZ4SkbmFtZaNwa2eoc3VidGFza3OBqGFuYWx5c2lzhKRuYW1lqGFuYWx5c2lzqHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2YaxgYB1EKpzdGFydGVkX2F0y0HZhrGBgHDnq2ZpbmlzaGVkX2F0y0HZhrGBgHUUqnN0YXJ0ZWRfYXTLQdmGsYGAcL2jcnVuhKRuYW1lo3J1bqhzdWJ0YXNrc4KwcmVzb2x2ZV90b3BvbG9neYSkbmFtZbByZXNvbHZlX3RvcG9sb2d5qHN1YnRhc2tzgKtmaW5pc2hlZF9hdMtB2YaxgYCm36pzdGFydGVkX2F0y0HZhrGBgJmRqGV2YWx1YXRlhKRuYW1lqGV2YWx1YXRlqHN1YnRhc2tzgaExhKRuYW1loTGoc3VidGFza3OAq2ZpbmlzaGVkX2F0y0HZhrGBgNxuqnN0YXJ0ZWRfYXTLQdmGsYGAs0qrZmluaXNoZWRfYXTLQdmGsYGA866qc3RhcnRlZF9hdMtB2YaxgYCm46tmaW5pc2hlZF9hdMtB2YaxgYDzrqpzdGFydGVkX2F0y0HZhrGBgJljq2ZpbmlzaGVkX2F0wKpzdGFydGVkX2F0y0HZheJGgGORsWNlbGxfZGVwZW5kZW5jaWVzhNkkOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYzhLRwcmVjZWRlbmNlX2hldXJpc3RpYwmnY2VsbF9pZNkkOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYztGRvd25zdHJlYW1fY2VsbHNfbWFwgLJ1cHN0cmVhbV9jZWxsc19tYXCGrEdpdmVNZUNlbGxJRJHZJGFmODMxN2U1LWQzMTktNGJhNC04OTE4LTMzNzNmZjMyMTMxNLdIeXBlcnRleHRMaXRlcmFsLkJ5cGFzc5C3SHlwZXJ0ZXh0TGl0ZXJhbC5SZXN1bHSQsEh5cGVydGV4dExpdGVyYWyQukh5cGVydGV4dExpdGVyYWwuU2NyaXB0VGFnkKRAaHRskdkkM2E5ZGNjZjAtZTM0Mi00YjMxLWI2NTUtNDliMmFjODE3NTU32SRhZjgzMTdlNS1kMzE5LTRiYTQtODkxOC0zMzczZmYzMjEzMTSEtHByZWNlZGVuY2VfaGV1cmlzdGljCadjZWxsX2lk2SRhZjgzMTdlNS1kMzE5LTRiYTQtODkxOC0zMzczZmYzMjEzMTS0ZG93bnN0cmVhbV9jZWxsc19tYXCCrEdpdmVNZUNlbGxJRJPZJGFmODMxN2U1LWQzMTktNGJhNC04OTE4LTMzNzNmZjMyMTMxNNkkOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYz2SQ1NGE3ZDBhYy01OGFmLTQ3NGUtYTBkOS05Y2YwZGVjOGQxZDKpQmFzZS5zaG93kLJ1cHN0cmVhbV9jZWxsc19tYXCOpERpY3SQpnN0cmluZ5CiSU+QpGtleXOQuiNfX190aGlzX3BsdXRvX21vZHVsZV9uYW1lkKlATUlNRV9zdHKQoj0+kKNnZXSQp25vdGhpbmeQrEdpdmVNZUNlbGxJRJHZJGFmODMxN2U1LWQzMTktNGJhNC04OTE4LTMzNzNmZjMyMTMxNKRCYXNlkKV3cml0ZZClQGluZm+QpnNwcmludJDZJDU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMoS0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMrRkb3duc3RyZWFtX2NlbGxzX21hcICydXBzdHJlYW1fY2VsbHNfbWFwgaxHaXZlTWVDZWxsSUSR2SRhZjgzMTdlNS1kMzE5LTRiYTQtODkxOC0zMzczZmYzMjEzMTTZJDNhOWRjY2YwLWUzNDItNGIzMS1iNjU1LTQ5YjJhYzgxNzU1N4S0cHJlY2VkZW5jZV9oZXVyaXN0aWMJp2NlbGxfaWTZJDNhOWRjY2YwLWUzNDItNGIzMS1iNjU1LTQ5YjJhYzgxNzU1N7Rkb3duc3RyZWFtX2NlbGxzX21hcIKqSmF2YVNjcmlwdJCkQGh0bJHZJDk5OTA0NTY1LWY3OWUtNGQ4ZC1iMzU0LTMyYjAxZmJlYWM2M7J1cHN0cmVhbV9jZWxsc19tYXCAtGNlbGxfZXhlY3V0aW9uX29yZGVylNkkM2E5ZGNjZjAtZTM0Mi00YjMxLWI2NTUtNDliMmFjODE3NTU32SRhZjgzMTdlNS1kMzE5LTRiYTQtODkxOC0zMzczZmYzMjEzMTTZJDk5OTA0NTY1LWY3OWUtNGQ4ZC1iMzU0LTMyYjAxZmJlYWM2M9kkNTRhN2QwYWMtNThhZi00NzRlLWEwZDktOWNmMGRlYzhkMWQytGxhc3RfaG90X3JlbG9hZF90aW1lywAAAAAAAAAAqXNob3J0cGF0aK9UaW55IHNjaWVuY2UuamyucHJvY2Vzc19zdGF0dXOlcmVhZHmkcGF0aNkqL29wdC9qdWxpYS9wbHV0b19ub3RlYm9va3MvVGlueSBzY2llbmNlLmpsrXBsdXRvX3ZlcnNpb26odjAuMTkuNDCubGFzdF9zYXZlX3RpbWXLQdmGsYGAoRKqY2VsbF9vcmRlcpTZJDNhOWRjY2YwLWUzNDItNGIzMS1iNjU1LTQ5YjJhYzgxNzU1N9kkYWY4MzE3ZTUtZDMxOS00YmE0LTg5MTgtMzM3M2ZmMzIxMzE02SQ5OTkwNDU2NS1mNzllLTRkOGQtYjM1NC0zMmIwMWZiZWFjNjPZJDU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMrFwdWJsaXNoZWRfb2JqZWN0c4ClbmJwa2eKr2luc3RhbGxfdGltZV9uc88AAAACUkRcsqxpbnN0YW50aWF0ZWTDsmluc3RhbGxlZF92ZXJzaW9uc4GwSHlwZXJ0ZXh0TGl0ZXJhbKUwLjkuNbB0ZXJtaW5hbF9vdXRwdXRzgqpuYnBrZ19zeW5j2gHxCkFkZGluZyBwYWNrYWdlcy4uLgobWzMybRtbMW0gICBSZXNvbHZpbmcbWzIybRtbMzltIHBhY2thZ2UgdmVyc2lvbnMuLi4KG1szMm0bWzFtICAgIFVwZGF0aW5nG1syMm0bWzM5bSBgL3RtcC9qbF9qWW5FdTQvUHJvamVjdC50b21sYAogIBtbOTBtW2FjMTE5MmE4XSAbWzM5bRtbOTJtKyBIeXBlcnRleHRMaXRlcmFsIHYwLjkuNRtbMzltChtbMzJtG1sxbSAgICBVcGRhdGluZxtbMjJtG1szOW0gYC90bXAvamxfalluRXU0L01hbmlmZXN0LnRvbWxgCiAgG1s5MG1bYWMxMTkyYThdIBtbMzltG1s5Mm0rIEh5cGVydGV4dExpdGVyYWwgdjAuOS41G1szOW0KICAbWzkwbVs0MTBhNGI0ZF0gG1szOW0bWzkybSsgVHJpY2tzIHYwLjEuOBtbMzltChtbMzJtG1sxbUxvYWRpbmcbWzIybRtbMzltIHBhY2thZ2VzLi4uCgpJbnN0YW50aWF0aW5nLi4uCgpQcmVjb21waWxpbmcuLi4KG1szMm0bWzFtICBBY3RpdmF0aW5nG1syMm0bWzM5bSBwcm9qZWN0IGF0IGAvdG1wL2psX2pZbkV1NGCwSHlwZXJ0ZXh0TGl0ZXJhbNoB8QpBZGRpbmcgcGFja2FnZXMuLi4KG1szMm0bWzFtICAgUmVzb2x2aW5nG1syMm0bWzM5bSBwYWNrYWdlIHZlcnNpb25zLi4uChtbMzJtG1sxbSAgICBVcGRhdGluZxtbMjJtG1szOW0gYC90bXAvamxfalluRXU0L1Byb2plY3QudG9tbGAKICAbWzkwbVthYzExOTJhOF0gG1szOW0bWzkybSsgSHlwZXJ0ZXh0TGl0ZXJhbCB2MC45LjUbWzM5bQobWzMybRtbMW0gICAgVXBkYXRpbmcbWzIybRtbMzltIGAvdG1wL2psX2pZbkV1NC9NYW5pZmVzdC50b21sYAogIBtbOTBtW2FjMTE5MmE4XSAbWzM5bRtbOTJtKyBIeXBlcnRleHRMaXRlcmFsIHYwLjkuNRtbMzltCiAgG1s5MG1bNDEwYTRiNGRdIBtbMzltG1s5Mm0rIFRyaWNrcyB2MC4xLjgbWzM5bQobWzMybRtbMW1Mb2FkaW5nG1syMm0bWzM5bSBwYWNrYWdlcy4uLgoKSW5zdGFudGlhdGluZy4uLgoKUHJlY29tcGlsaW5nLi4uChtbMzJtG1sxbSAgQWN0aXZhdGluZxtbMjJtG1szOW0gcHJvamVjdCBhdCBgL3RtcC9qbF9qWW5FdTRgp2VuYWJsZWTDt3Jlc3RhcnRfcmVjb21tZW5kZWRfbXNnwLRyZXN0YXJ0X3JlcXVpcmVkX21zZ8CtYnVzeV9wYWNrYWdlc5C2d2FpdGluZ19mb3JfcGVybWlzc2lvbsLZLHdhaXRpbmdfZm9yX3Blcm1pc3Npb25fYnV0X3Byb2JhYmx5X2Rpc2FibGVkwqtjZWxsX2lucHV0c4TZJDk5OTA0NTY1LWY3OWUtNGQ4ZC1iMzU0LTMyYjAxZmJlYWM2M4SnY2VsbF9pZNkkOTk5MDQ1NjUtZjc5ZS00ZDhkLWIzNTQtMzJiMDFmYmVhYzYzpGNvZGXZPkBodGwgIiIiCjxzY3JpcHQ+CmNvbnNvbGUubG9nKCQoR2l2ZU1lQ2VsbElEKCkpKQo8L3NjcmlwdD4KIiIiqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SRhZjgzMTdlNS1kMzE5LTRiYTQtODkxOC0zMzczZmYzMjEzMTSEp2NlbGxfaWTZJGFmODMxN2U1LWQzMTktNGJhNC04OTE4LTMzNzNmZjMyMTMxNKRjb2Rl2gGJYmVnaW4KCXN0cnVjdCBHaXZlTWVDZWxsSUQKCWVuZAoKCWZ1bmN0aW9uIEJhc2Uuc2hvdyhpbzo6SU8sIG06Ok1JTUUidGV4dC9qYXZhc2NyaXB0IiwgeDo6R2l2ZU1lQ2VsbElEKQoJCXdyaXRlKGlvLCAiJyIsIHN0cmluZyhnZXQoaW8sIDpwbHV0b19jZWxsX2lkLCAidW5rbm93biIpKSwgIiciKQoJZW5kCgoJCglmdW5jdGlvbiBCYXNlLnNob3coaW86OklPLCBtOjpNSU1FInRleHQvaHRtbCIsIHg6OkdpdmVNZUNlbGxJRCkKCQlAaW5mbyBzcHJpbnQoc2hvdywgInRleHQvcGxhaW4iLCBEaWN0KGsgPT4gZ2V0KGlvLCBrLCBub3RoaW5nKSBmb3IgayBpbiBrZXlzKGlvKSkpCgoJCXdyaXRlKGlvLCBzdHJpbmcoZ2V0KGlvLCA6cGx1dG9fY2VsbF9pZCwgInVua25vd24iKSkpCgllbmQKZW5kqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SQ1NGE3ZDBhYy01OGFmLTQ3NGUtYTBkOS05Y2YwZGVjOGQxZDKEp2NlbGxfaWTZJDU0YTdkMGFjLTU4YWYtNDc0ZS1hMGQ5LTljZjBkZWM4ZDFkMqRjb2RlrkdpdmVNZUNlbGxJRCgpqG1ldGFkYXRhg6lzaG93X2xvZ3PDqGRpc2FibGVkwq5za2lwX2FzX3NjcmlwdMKrY29kZV9mb2xkZWTC2SQzYTlkY2NmMC1lMzQyLTRiMzEtYjY1NS00OWIyYWM4MTc1NTeEp2NlbGxfaWTZJDNhOWRjY2YwLWUzNDItNGIzMS1iNjU1LTQ5YjJhYzgxNzU1N6Rjb2Rl2SlpbXBvcnQgSHlwZXJ0ZXh0TGl0ZXJhbDogQGh0bCwgSmF2YVNjcmlwdKhtZXRhZGF0YYOpc2hvd19sb2dzw6hkaXNhYmxlZMKuc2tpcF9hc19zY3JpcHTCq2NvZGVfZm9sZGVkwqtub3RlYm9va19pZNkkNTBkYmI1Y2UtZjdkMC0xMWVlLTExYzEtY2YzMzkwMGExNWQ4q2luX3RlbXBfZGlyw6htZXRhZGF0YYA=";
window.pluto_preamble_html = undefined;
</script>
<meta name="pluto-insertion-spot-parameters">
<script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.375e8ab9.js" type="module" defer="" integrity="sha384-xrjq9O20k12wqCcs0JEpII3UTmnlRQbG+fEUbQQCucZFurEZNEPMQjLeHP1a4x3P" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/gh/fonsp/Pluto.jl@0.19.40/frontend-dist/editor.8a3292da.js" integrity="sha384-itp4oE2PRbSrrTHVpWh8sqAuVUsz7ja6L2Dgp/JRfMCD2AwVdTk56K96POF3oLmu" crossorigin="anonymous"></script><script type="text/javascript" id="MathJax-script" integrity="sha384-4kE/rQ11E8xT9QgrCBTyvenkuPfQo8rXYQvJZuMgxyPOoUfpatjQPlgdv6V5yhUK" crossorigin="" not-the-src-yet="https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg-full.js" async=""></script></head><body class="loading no-MΞ±ΞΈJax"> <div style="display:flex;min-height:100vh;"> <pluto-editor class="fullscreen"></pluto-editor> </div> </body></html>
It turns out that published_to_js
does work - I did not expect it, but with_js_link
was attempting to get interpolated even though the js code was commented (in js), since the interpolation happens before the js is parsed by the browser. I'll report regarding with_js_link
from main branch.
I was able to test #2726 via 61478b13a7fbab964af64e9ee56d575f62187604. Happily, everything works, including the mandelbrot notebook by @disberd!
FYI, I also experience some flickering when zooming fast in that notebook as reported in https://github.com/fonsp/Pluto.jl/pull/2726#issuecomment-1972154727 and I even noticed it happening once in the referenced video @disberd in https://github.com/fonsp/Pluto.jl/issues/2726#issuecomment-1972822863_ - at first glance it seems to me that this happens due to multiple zoom events overriding overriding each other's updated responses.
Happy to hear!
I made the documentation a bit more clear about using bind instead of with_js_link
: https://github.com/JuliaPluto/AbstractPlutoDingetjes.jl/commit/939e107533d68b519146802ad68c3f8b04215e13 Your case sounds like a good use case of with_js_link
!
I'm very curious for feedback of this new API. If you want, please share a bit about what you're working on! If you don't want to share it publicly, you can also send me a secret email fons@plutojl.org
Have a nice day!
Sure :)
I'm working on a suite of dashboards that aid in dissecting and curating portfolios of certain exotic financial instruments. Those integrate with existing tools from a variety of languages via a websocket API. It is very helpful to be able to integrate a streamlined dashboard experience with ad-hoc data munging.
Thank you for your great work!
Hi!
Thank you for bringing Pluto to life!
While attempting to use
AbstractPlutoDingetjes.Display.with_js_link
(and likewise withpublished_to_js
) I get the error from the title. Notably, theMain.PlutoRunner.publish_to_js
form from the featured js notebook, does work, although in Pluto v0.19.40 I get a deprecation warning. Attached stack trace, MWE. I tried to attach some screenshots but they just disappear, I'll try to add them in a separate comment.Thanks in advance for any help!