@withmarsha/embed
v1.0.0
Published
Marsha Web Receptionist embed loader (script-tag widget).
Readme
@withmarsha/embed
Loader del widget de la Recepcionista web de Marsha, distribuido por npm para poder servirlo vía CDN (unpkg).
La fuente única del loader es public/embed.js (en la raíz del repo). Este
paquete no tiene su propia copia: el script prepublishOnly copia
public/embed.js aquí justo antes de publicar, así que nunca hay drift.
Una sola vez: cuenta y login
- Tener una cuenta npm con acceso al scope
@withmarsha(crear la org en npmjs.com; gratis para paquetes públicos). - Iniciar sesión en la máquina:
La sesión queda guardada; no hay que repetirlo en cada publicación.npm login # abre el navegador para autenticar npm whoami # confirma que estás logueado
Publicar una versión nueva
- Edita el loader en
public/embed.js(no aquí). - Sube la versión en
packages/embed/package.json(semver):- parche (
1.0.0→1.0.1) para fixes, - minor (
1.0.0→1.1.0) para cambios compatibles, - major (
1.0.0→2.0.0) para cambios que rompen el snippet del cliente.
- parche (
- Publica:
cd packages/embed npm publishprepublishOnlycopiapublic/embed.jsypublishConfig.access: "public"ya lo deja como paquete público.
unpkg lo sirve automáticamente (no se "sube" nada a unpkg):
https://unpkg.com/@withmarsha/[email protected]/embed.jsComprobar qué se va a publicar sin publicar:
cp ../../public/embed.js ./embed.js && npm pack --dry-run && rm embed.jsSnippet que pega el cliente
<script async
src="https://unpkg.com/@withmarsha/embed@^1.0.0/embed.js"
data-receptionist="recp_xxx"></script>^1.0.0= el cliente recibe la última1.xautomáticamente; un cambio que rompa exige publicar2.0.0y que el cliente actualice el rango a mano.data-receptionist=publicIdde una Recepcionista web en estadopublished, con el dominio del cliente en suallowedDomains.data-origin= opcional, solo para apuntar a un backend que no sea prod (dev/staging/preview). Por defecto el loader usahttps://withmarsha.com.
Alternativa: self-host
public/embed.js también se sirve desde el propio dominio
(https://withmarsha.com/embed.js). Ese canal se auto-actualiza con cada deploy
sin publicar nada. unpkg solo aporta versionado pineado por cliente.
