El cual realiza una importación ESM del paquete npm extract-timestamp, el cual fue generado usando boundation, que genera una edición CommonJS para Node.js y una edición ESM para navegadores.
El archivo JavaScript del componente de tema source/index.js importa la dependencia extract-timestamp de la siguiente manera:
El cual utiliza el archivo build.bash para convertir el archivo source/index.js, que contiene la lógica de nuestro componente de tema, en un archivo common/header.html para Discourse:
Esto se ejecuta mediante bash ./build.bash o, si estás utilizando un flujo de trabajo de scripts npm, mediante npm run build con:
Lo que resulta en un archivo common/header.html que se empaqueta en un solo archivo (agrupando las importaciones anteriores):
Esto podría ser útil para otros que desarrollen sus propios componentes de tema.
Probablemente agregaré soporte de generación de código de primera clase para componentes de tema de Discourse en boundation en una etapa posterior, para automatizar esta guía.