// === Escena 02 — Llenar el ticket ===
// Pantalla completa (TPVU): a la derecha la pestaña «Agregar» con «¿Qué desea Vender?» y el «Catálogo»
// (BuscadorConceptosGaleriaU); el botón verde + de cada producto (ProductoCardUv2) lo pasa a
// «SELECCIONADOS», con «Und», «Precio», «Subtotal» y «Total» (ItemGenericoEditorDePreciosU). Abajo la
// barra «Sub.» · «IVA» · «Total» (TPVSummaryBarU) y en el pie «Cobrar» (TPVFooterU).
function EscenaTPV02({ t }){
  const G = window.GUION[1];
  const T = {
    catalogo:   B(G, "A la derecha tienes"),          // "A la derecha tienes el catálogo"
    busca:      B(G, "Busca arriba"),                 // "Busca arriba"
    verde:      B(G, "pulsa el botón verde"),         // "o pulsa el botón verde de cada producto"
    guantes:    B(G, "guantes de trabajo"),           // "unos guantes de trabajo"
    cinta:      B(G, "cinta americana"),              // "y una cinta americana"
    izquierda:  B(G, "pasa a la izquierda"),          // "pasa a la izquierda"
    unidades:   B(G, "unidades, su precio"),          // "con sus unidades"
    precio:     B(G, "precio y su total"),            // "su precio"
    total:      B(G, "total. Si se lleva"),           // "y su total"
    cambias:    B(G, "cambias las unidades"),         // "cambias las unidades ahí mismo"
    barra:      B(G, "la barra suma"),                // "Abajo, la barra suma la venta"
    sub:        B(G, "subtotal, impuestos"),          // "subtotal"
    iva:        B(G, "impuestos y total"),            // "impuestos"
    totalBarra: B(G, "total. Trece"),                 // "y total"
    trece:      B(G, "Trece euros"),                  // "Trece euros con sesenta"
    listo:      B(G, "El ticket está listo"),         // "El ticket está listo"
    cobrar:     B(G, "pulsa cobrar"),                 // "pulsa cobrar"
  };
  const clicG = T.guantes + 0.4, clicC = T.cinta + 0.4, clicCobrar = T.cobrar + 0.5;
  const [g, c] = PRODUCTOS;
  const lineas = [];
  if (t >= clicG) lineas.push({ prod:g, p:(t - clicG) / 0.7 });
  if (t >= clicC) lineas.push({ prod:c, p:(t - clicC) / 0.7 });
  const totales = t >= clicC + 0.2
    ? { sub: base(g.precio) + base(c.precio), iva: g.precio + c.precio - base(g.precio) - base(c.precio), total: g.precio + c.precio }
    : (t >= clicG + 0.2 ? { sub: base(g.precio), iva: g.precio - base(g.precio), total: g.precio } : null);

  const r = {
    catalogo:   foco(t, T.catalogo, T.busca),
    buscar:     foco(t, T.busca, T.verde),
    lista:      foco(t, T.izquierda, T.unidades),
    und:        Math.max(foco(t, T.unidades, T.precio), foco(t, T.cambias, T.barra)),
    precio:     foco(t, T.precio, T.total),
    totalLinea: foco(t, T.total, T.cambias),
    barra:      foco(t, T.barra, T.sub),
    sub:        foco(t, T.sub, T.iva),
    iva:        foco(t, T.iva, T.totalBarra),
    total:      foco(t, T.totalBarra, T.listo + 0.6),
    totalPulso: pulso(t, T.trece),
    cobrar:     foco(t, T.cobrar, 99),
  };
  const verdeA = foco(t, T.verde, T.guantes);
  const verdes = { guantes: Math.max(verdeA, foco(t, T.guantes, clicG + 0.4)), cinta: Math.max(verdeA, foco(t, T.cinta, clicC + 0.4)), pilas: verdeA, bridas: verdeA };
  const pulsados = { guantes: pulso(t, clicG, 0.3), cinta: pulso(t, clicC, 0.3) };

  return (
    <Fondo>
      <Rotulo t={t} s={0} paso="PASO 2 · EL TICKET" titulo="Añade los productos"/>
      <Ventana url="play.dinaup.com/App/TPV/POS">
        <PantallaVenta t={t} lineas={lineas} totales={totales} r={r} verdes={verdes} pulsados={pulsados}/>
        <Cursor t={t}
          kf={[[T.guantes - 1.2, 1150, 520], [clicG - 0.1, 1263, 394], [T.cinta - 0.5, 1263, 394], [clicC - 0.1, 1625, 394],
               [T.cambias - 0.6, 1625, 394], [T.cambias + 0.2, 88, 280], [T.cobrar - 0.8, 88, 280], [clicCobrar - 0.1, 1471, 799]]}
          clics={[clicG, clicC, clicCobrar]}/>
      </Ventana>
    </Fondo>
  );
}
Object.assign(window, { EscenaTPV02 });
