Skip to content

feat(new-plan-selection): implementación de flujos por Envios y selección inicial segura#2881

Merged
jhoffman-ms merged 8 commits into
masterfrom
feat/new-plan-selection-by-email-implementation
May 21, 2026
Merged

feat(new-plan-selection): implementación de flujos por Envios y selección inicial segura#2881
jhoffman-ms merged 8 commits into
masterfrom
feat/new-plan-selection-by-email-implementation

Conversation

@jhoffman-ms
Copy link
Copy Markdown
Contributor

@jhoffman-ms jhoffman-ms commented May 21, 2026

Resumen

Este PR implementa y ajusta el comportamiento de NewPlanSelection para usuarios que compran por Envios y por Contactos, incorporando escenarios comerciales, reglas de selección inicial más seguras y mejoras de consistencia en UI/tests.

Contexto funcional

El objetivo fue alinear la implementación con el spec más reciente para que:

  • el usuario arranque en un plan comprable (sin downgrades automáticos al entrar),
  • vea mensajes/CTA correctos en escenarios especiales,
  • y no se apliquen promociones en contextos no válidos.

Referencias visuales del spec

Picture 13 (pantalla base para plan por Envios)

Picture 13

Picture 14 (escenario alto volumen: Más de 10.000.000)

Picture 14

Picture 15 (escenario downgrade)

Picture 15

Cambios implementados

1) Implementación de flujo byEmail en New Plan Selection

  • Se incorporó la variante para usuarios con plan por Envios.
  • Se agregaron y contemplaron los casos especiales del dropdown:
    • Menos de 100.000
    • Más de 10.000.000
  • Se sincronizó comportamiento con sticky summary y CTA según el escenario activo.

2) Selección inicial en Contactos (sin downgrade automático)

  • Se ajustó la lógica para no bajar de plan al entrar.
  • Se selecciona el siguiente plan válido según subscribersCount y capacidad del plan actual.
  • Si corresponde mantenerse en el mismo, se toma el siguiente disponible según reglas acordadas.

3) Habilitación de suscripción en Contactos para usuarios free

  • Se corrigió el caso donde la suscripción aparecía deshabilitada en free.
  • Ahora solo se deshabilita cuando el usuario tiene plan asignado (regla esperada).

4) Promocode en usuarios pagos no mensuales

  • Se evitó prepopular promocode cuando el usuario tiene plan pago con suscripción no mensual.
  • Esto evita aplicar/mostrar promo en contextos de frecuencia no válidos.

5) Ajustes de copy/UI e i18n

  • Se actualizaron textos y mensajes necesarios para los nuevos escenarios.
  • Se ajustaron traducciones en ES/EN para mantener consistencia del flujo.

Archivos modificados

  • src/components/BuyProcess/NewPlanSelection/index.js
  • src/components/BuyProcess/NewPlanSelection/index.styles.js
  • src/components/BuyProcess/NewPlanSelection/index.test.js
  • src/components/BuyProcess/NewPlanSelection/EmailsPlan/index.js
  • src/components/BuyProcess/NewPlanSelection/ContactsPlan/index.js
  • src/components/BuyProcess/NewPlanSelection/StickyPlanSummary/index.js
  • src/components/MyPlan/SubscriptionDetails/EmailMarketingPlan/index.js
  • src/i18n/es.js
  • src/i18n/en.js

Validaciones ejecutadas

  • yarn prettier --check en archivos modificados de NewPlanSelection.
  • yarn test:related --runInBand src/components/BuyProcess/NewPlanSelection/ContactsPlan/index.js src/components/BuyProcess/NewPlanSelection/index.test.js
  • Se actualizaron tests de NewPlanSelection para cubrir los nuevos escenarios y no regresión.

Escenarios cubiertos por tests

  • Selección inicial correcta para usuarios byContact según plan actual y subscribersCount.
  • Casos especiales de byEmail (Menos de 100.000 y Más de 10.000.000) con prioridad de mensajes/CTA.
  • Sincronización de sticky summary con CTA del plan seleccionado.
  • Suscripción de contactos habilitada para free.
  • No prepopulación de promocode para pagos no mensuales.

Foco sugerido para review

  • Reglas de selección inicial (evitar downgrade automático al entrar).
  • Precedencia de escenarios comerciales/mensajes en byEmail.
  • Reglas de inicialización de promocode según tipo de cuenta y frecuencia.

@jhoffman-ms jhoffman-ms requested a review from homecavs May 21, 2026 14:32
@jhoffman-ms jhoffman-ms changed the title feat(new-plan-selection): implement by-email flows and safer initial plan selection feat(new-plan-selection): implementación de flujos por Envios y selección inicial segura May 21, 2026
Copy link
Copy Markdown
Contributor

@homecavs homecavs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@jhoffman-ms jhoffman-ms merged commit 21f7a5f into master May 21, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants