JSComponent in Pyodide

The code below works with pn.serve but not when I convert it to a pyodide application. Not sure if this is a bug? Is it possible to include JSComponents in Pyodide?

import param
import panel as pn
import os
import pathlib
from panel.custom import JSComponent

COMPILING = False

class Slideshow(JSComponent):

    index = param.Integer(default=0)

    # _esm = pathlib.Path("accounter/slideshow.js")
    _esm = """
export function render({ model, el }) {
  const div = document.createElement('div')

  function update(){
    div.innerText = model.index
  }

  model.on('index', update)
  el.appendChild(div)
}
"""


class Test(param.Parameterized):

    slideshow = param.ClassSelector(default = Slideshow(), class_=Slideshow)

    def __init__(self, **params):
        super().__init__(**params)

        self.view = pn.Column(self.slideshow, self.slideshow.param["index"])


if COMPILING:
    test=Test()
    test.view.servable()
elif __name__ == "__main__":
    test = Test()
    pn.serve(test.view)
else:
    ...

I’m converting to Pyodide like this:

import panel.io.convert

filename = "/path/to/my/file/test.py"

files = panel.io.convert.convert_app(
    filename,
    dest_path = "./dist",
    runtime = 'pyodide-worker',
    prerender = False,
)

Did a bit more testing and am pretty sure this is a bug, see here for more info (and a work-around): `.on('<parameter>', callback)` in `_esm` of `JSComponent` not working in Pyodide · Issue #8094 · holoviz/panel · GitHub