Skip to content

Acciones de UI ​

Usa ui.actions para conectar los botones de llamada a la acción de la plataforma (login, suscripción, compartir...) con los propios modales o flujos de tu sitio.


js
MindtrainingPlatform.init('mindtraining', {
  ui: {
    mode: 'web', // 'web' (por defecto) | 'app'
    actions: {
      openLogin: function () {
        // abre tu modal de login
      },
      openRegister: function () {
        // abre tu modal de registro
      },
      openSubscribe: function () {
        // abre tu página o modal de suscripción
      },
      openUrl: function (url) {
        window.open(url, '_blank')
      },
      share: function (payload) {
        // payload: { url?: string, title?: string }
        navigator.share({ url: payload.url, title: payload.title })
      },
    },
  },
})

Configura ui.mode como 'app' cuando incrustes la plataforma dentro de una WebView nativa móvil para ajustar ciertos comportamientos de UI.

showBackNavigation es un booleano opcional de nivel superior que controla la visibilidad de los botones de navegación hacia atrás de la plataforma. Su valor predeterminado es true.

Establécelo en false cuando la aplicación anfitriona proporcione su propia navegación hacia atrás y hacia delante:

js
MindtrainingPlatform.init('mindtraining', {
  showBackNavigation: false,
})

Esta opción oculta los botones de volver del juego, la subhome, el archivo, las estadísticas y los paneles de juego presentados como páginas. No desactiva el historial del navegador ni modifica los eventos de navegación, las reglas de acceso o los controles para cerrar diálogos y paneles laterales.

La aplicación anfitriona debe ofrecer una forma de volver desde estas pantallas. Para mostrar los botones de nuevo sin volver a montar la plataforma:

js
MindtrainingPlatform.updateConfig({ showBackNavigation: true })

Las llamadas a updateConfig() que modifican otras opciones conservan el valor actual. setConfig() reemplaza la configuración, por lo que omitir esta opción restablece su valor a true.

Esquema de color ​

ui.colorScheme selecciona la paleta de colores en los sitios que tienen habilitado este soporte. Los sitios compatibles incluyen Entrenamentes y Le Monde.

  • 'light' (valor predeterminado): fuerza la paleta clara.
  • 'dark': fuerza la paleta oscura.
  • 'system': sigue la preferencia del dispositivo mediante prefers-color-scheme y responde a sus cambios mientras la plataforma está montada.

Configura la preferencia inicial al montar la plataforma:

js
MindtrainingPlatform.init('mindtraining', {
  ui: { colorScheme: 'system' },
})

La aplicación anfitriona puede cambiarla durante la ejecución sin volver a montar la plataforma:

js
MindtrainingPlatform.updateConfig({ ui: { colorScheme: 'dark' } })
MindtrainingPlatform.updateConfig({ ui: { colorScheme: 'light' } })
MindtrainingPlatform.updateConfig({ ui: { colorScheme: 'system' } })

La plataforma no añade botones ni selectores de tema; la aplicación anfitriona controla la preferencia y cualquier interfaz para cambiarla. Esta propiedad es independiente de ui.mode ('web' / 'app'). Los sitios sin soporte de esquemas de color conservan su presentación actual.

Las llamadas a updateConfig() que modifican otras opciones conservan la preferencia seleccionada. setConfig() reemplaza la configuración, por lo que omitir ui.colorScheme restablece 'light'.

Las paletas clara y oscura se editan por separado en el administrador. Las configuraciones existentes parten de los mismos colores para ambos modos: seleccionar el modo oscuro no oscurece automáticamente la paleta; hay que personalizar sus colores en el administrador.

Visibilidad de la pantalla de juego ​

Estos booleanos opcionales de nivel superior tienen un valor predeterminado de true en los diseños de juego compatibles.

showMobileGameHeader: false oculta la barra móvil de título y fecha debajo de los controles. El título de escritorio y los controles permanecen visibles.

showOtherGames: false oculta la sección de otros juegos debajo del tablero en cualquier ancho de contenedor, incluido el espacio reservado. No afecta a los directorios de otras pantallas ni a las recomendaciones de finalización.

Ambas opciones son independientes de ui.mode y de los permisos de acceso. Los diseños sin soporte conservan su presentación actual.

js
MindtrainingPlatform.init('mindtraining', {
  showMobileGameHeader: false,
  showOtherGames: false,
})

Usa updateConfig() para cambiar cada opción sin volver a montar la plataforma. Las actualizaciones no relacionadas conservan ambos valores. setConfig() reemplaza la configuración; las opciones omitidas vuelven a true.

js
MindtrainingPlatform.updateConfig({
  showMobileGameHeader: true,
  showOtherGames: true,
})

Los sitios hijos heredan estas opciones del diseño de juego de su sitio padre, salvo que sobrescriban explícitamente ese comportamiento.

Intercepción de navegación ​

Todos los sitios heredan el callback opcional ui.actions.navigate. Recibe una solicitud serializable antes de navegar dentro del SDK y funciona en los modos web y app. Intercepción de navegación.

Client integration documentation maintained in-repo.