No se pueden importar las librerías de Discourse en las extensiones de Markdown

Continuando la discusión desde Guía para desarrolladores de extensiones de Markdown:


Mi código de extensión es así:

import { iconHTML } from 'discourse-common/lib/icon-library'

export function setup(helper) {
   ...
}

Al ejecutar bundle exec rake db:create db:migrate, obtengo este error:

== Seed from /home/jack/discourse/db/fixtures/500_categories.rb
rake aborted!
MiniRacer::RuntimeError: Error: Could not find module `discourse-common/lib/icon-library` imported from `lib/discourse-markdown/my_bbcode_plugin`

Al ejecutar el plugin, todo funciona correctamente en el compositor: puedo usar mi nuevo bbcode como se espera. Pero al guardar la publicación, obtengo este error:

MiniRacer::RuntimeError at /posts/30
====================================

> Error: Could not find module `discourse-common/lib/icon-library` imported from `discourse-markdown/discpage`

De hecho, por lo que puedo ver, el problema ocurre al intentar importar cualquier archivo de Discourse, excepto los de la carpeta pretty-text.

¿Es este el comportamiento esperado?

Estoy en Windows WSL y noté este problema algo similar de @vinothkannans

Creo que lo entiendo: el motor de Markdown también se ejecuta en el servidor (para generar la versión procesada de la publicación). De ahí que no pueda depender de bibliotecas del lado del cliente.