@getparallel/parx 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,10 @@ changes). Entries are generated by `npm run release` from the git history of `ap
6
6
 
7
7
  <!-- Notes written under «## Unreleased» are used as the next entry instead of the git log. -->
8
8
 
9
+ ## 0.8.0 (2026-10-18)
10
+
11
+ - Publicar desde parx (t464): la web construida con parx sale en <nombre>.getparallel.net o en su dominio
12
+
9
13
  ## 0.7.0 (2026-10-18)
10
14
 
11
15
  - Un paso corto ya no tumba el plan; «Llévalo a tu negocio» lleva a la misión en marcha y sin palabras que disparen la plantilla de clientes
package/dist/api.js CHANGED
@@ -131,6 +131,9 @@ export function ordenesRemotas(servidor, token, id, esperaMs, señal) {
131
131
  export function subirVistaRemota(servidor, token, id, cuerpo) {
132
132
  return llamar(servidor, `/api/terminal/remoto/${encodeURIComponent(id)}/vista`, { token, cuerpo, plazoMs: 60_000 });
133
133
  }
134
+ export function publicarWebRemota(servidor, token, id) {
135
+ return llamar(servidor, `/api/terminal/remoto/${encodeURIComponent(id)}/publicar`, { token, cuerpo: {}, plazoMs: 90_000 });
136
+ }
134
137
  export function cerrarRemoto(servidor, token, id, plazoMs = 3000) {
135
138
  return llamar(servidor, `/api/terminal/remoto/${encodeURIComponent(id)}`, { token, metodo: 'DELETE', plazoMs });
136
139
  }
package/dist/cli.js CHANGED
@@ -9,7 +9,7 @@ import { ALIAS_COMANDO, ALIAS_SI_NO, COMANDOS, t, USO } from "./textos.js";
9
9
  import { c, capacidades, colorDeModo, fijarCapacidades, sep, signo, sinColor, SIMBOLOS } from "./marca.js";
10
10
  import { guardarAjustes, leerAjustes, migrarCarpetaVieja, VERSION } from "./config.js";
11
11
  import { MODELO_POR_DEFECTO, MODELOS, modeloDe, nombreDeModelo } from "./modelos.js";
12
- import { cicloDeMision, compartirMision, correoVisible, crearMision, equipo, ErrorDeParallel, leerBandeja, leerConexiones, leerCuenta, leerMisionDeLaCuenta, leerMisiones, leerPlantillas, quienEs, responderBandeja, verMision, } from "./api.js";
12
+ import { cicloDeMision, compartirMision, correoVisible, crearMision, equipo, ErrorDeParallel, leerBandeja, leerConexiones, leerCuenta, leerMisionDeLaCuenta, leerMisiones, leerPlantillas, quienEs, responderBandeja, verMision, publicarWebRemota, } from "./api.js";
13
13
  import { abrirNavegador, comoHasEntrado, credencialesActivas, entrar, formaDeLaOpcion, salir } from "./cuenta.js";
14
14
  import { accionesDeUnaMision, filtrarPorTitulo, hace } from "./comandos.js";
15
15
  import { hacerTarea, mensajeDeError, nuevaSesion, reiniciarConversacion } from "./agente.js";
@@ -1354,6 +1354,30 @@ async function principal() {
1354
1354
  pantalla.escribir(t('vista.lista', { url: c.marca(r.url) }));
1355
1355
  break;
1356
1356
  }
1357
+ case 'publish': {
1358
+ const r0 = remoto;
1359
+ if (!r0?.encendido || !r0.id) {
1360
+ pantalla.escribir(t('publicar.sin_remoto'));
1361
+ break;
1362
+ }
1363
+ const subida = await actualizarVista(true);
1364
+ if (!subida) {
1365
+ pantalla.escribir(t('vista.sin_web'));
1366
+ break;
1367
+ }
1368
+ if ('error' in subida) {
1369
+ pantalla.error(t('vista.no_subida', { motivo: subida.error }));
1370
+ break;
1371
+ }
1372
+ try {
1373
+ const p = await publicarWebRemota(cred.servidor, cred.token, r0.id);
1374
+ pantalla.escribir(t('publicar.lista', { url: c.marca(p.url) }));
1375
+ }
1376
+ catch (e) {
1377
+ pantalla.error(t('publicar.error', { motivo: e instanceof ErrorDeParallel ? `${e.codigo}${e.detalle ? ` ${e.detalle}` : ''}` : 'red' }));
1378
+ }
1379
+ break;
1380
+ }
1357
1381
  case 'autoupdate': {
1358
1382
  const si = ALIAS_SI_NO[arg] ?? (autoactualizarApagada() ? 'si' : 'no');
1359
1383
  guardarAjustes({ autoactualizar: si === 'si' });
package/dist/textos.js CHANGED
@@ -238,10 +238,13 @@ export const TEXTOS = {
238
238
  'remoto.parado': 'Stopped from your phone.',
239
239
  'remoto.solo_interactiva': 'Remote control works in an interactive session: run parx and then /remote.',
240
240
  'mision.sugerencia': 'Next: /mission send it to my client · or announce it, or charge for it. It asks before sending anything.',
241
- 'vista.lista': 'Preview on your phone (updates after each task): {url}',
241
+ 'vista.lista': 'Preview on your phone (updates after each task): {url} · /publish puts it online.',
242
242
  'vista.sin_remoto': 'Turn on /remote first: the preview opens from your phone.',
243
243
  'vista.sin_web': 'No web to preview: there is no index.html here or in dist/, build/ or out/.',
244
244
  'vista.no_subida': 'The preview could not be uploaded: {motivo}.',
245
+ 'publicar.lista': 'Live at {url} · the same address every time you /publish. Your own domain: from Sessions on your phone.',
246
+ 'publicar.sin_remoto': 'Turn on /remote first: publishing goes through your Parallel account.',
247
+ 'publicar.error': 'Could not publish: {motivo}.',
245
248
  'servicio.on': 'Your Mac is ready. From Sessions on your phone you can start a task in: {carpetas}. It starts again every time you log in.',
246
249
  'servicio.off': 'The service is off. Your phone can no longer start tasks on this Mac.',
247
250
  'servicio.anadida': 'Added {ruta}. Your phone can start tasks there.',
@@ -345,6 +348,7 @@ export const COMANDOS = [
345
348
  ['lanes', 'Run 2 or 3 tasks at once'],
346
349
  ['remote', 'Control this parx from your phone'],
347
350
  ['preview', 'See the web it is building on your phone'],
351
+ ['publish', 'Put the web online at name.getparallel.net'],
348
352
  ['mission', 'Keep it running on Parallel, phone alert when done'],
349
353
  ['missions', 'Pick a mission and control it from here'],
350
354
  ['inbox', 'Answer what your missions are waiting for'],
@@ -373,6 +377,7 @@ export const ALIAS_COMANDO = {
373
377
  lanes: 'lanes', carriles: 'lanes',
374
378
  remote: 'remote', 'remote-control': 'remote', rc: 'remote', remoto: 'remote', phone: 'remote',
375
379
  preview: 'preview', vista: 'preview', previa: 'preview',
380
+ publish: 'publish', publica: 'publish', publicar: 'publish', deploy: 'publish', online: 'publish',
376
381
  mission: 'mission', mision: 'mission', misión: 'mission',
377
382
  missions: 'missions', misiones: 'missions',
378
383
  inbox: 'inbox', bandeja: 'inbox', approvals: 'inbox', waiting: 'inbox',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getparallel/parx",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "parx: the coding agent of Parallel in your terminal. Reads and edits your project, runs commands and tests, and does coding tasks end to end. Mac, Windows and Linux.",
5
5
  "keywords": [
6
6
  "parx",