# PFL EC Modules

## Modularisation <a href="#modularisation" id="modularisation"></a>

The MMA Event Centre supports being initialised in 7 different modular configurations. This is done by providing the module name within the "targetModule" field.

| **Module name** | **Description**                                        |
| --------------- | ------------------------------------------------------ |
| full            | Access to the full MMA Event Centre                    |
| fight           | single fight                                           |
| fightCard       | Only displays the fightcard - allows no navigation     |
| striking        | Only displays the striking view - allows no navigation |
| stats           | Only displays the stats view - allows no navigation    |
| matchup         | Only displays the matchup view - allows no navigation  |
| tape            | Only displays the tape view - allows no navigation     |

## Message Topics

All the tables below detail the data fields present in the message data objects that are **sent and received** for each message topic.

## Handshake Failed

Dedicated topic to signify the handshake between Event Centre and your site failed to complete. This topic is emitted by the integration library, it **should only be subscribed to, not emitted**.

<table data-header-hidden><thead><tr><th>Field</th><th width="150" align="center">Type</th><th>Description</th><th align="center">Required</th></tr></thead><tbody><tr><td><strong>Field</strong></td><td align="center"><strong>Type</strong></td><td><strong>Description</strong></td><td align="center"><strong>Required</strong></td></tr><tr><td>timestamp</td><td align="center">number</td><td>unix timestamp from time of failure</td><td align="center">✅</td></tr></tbody></table>

## Context Update

Topic for covering general UI state updates via the initialContext object, for example: navigating to a specific fight card or fight

| **Field** | **Description**                                                                                                             |
| --------- | --------------------------------------------------------------------------------------------------------------------------- |
| view      | Defines the view the event centre should load on. Possible values are fightcard / Fight / striking / stats / tape / matchup |
| eventId   | Event ID as defined by the DDE.                                                                                             |
| fightId   | Fight ID as defined by DDE. Available for view = fight/ striking / stats / tape / matchup                                   |

## Full Fight Card

To embed the full MMA Event Centre, you must specify the following fields specific to your build.

| **Field** | **Value**                                                                                |
| --------- | ---------------------------------------------------------------------------------------- |
| operator  | your unique operator Id name                                                             |
| sport     | "mma"                                                                                    |
| eventId   | Event Id of the fight card                                                               |
| version   | The version of MMA Event Centre.                                                         |
| theme     | <p>default = light version</p><p>"light" = light version</p><p>"dark" = dark version</p> |

* 'targetModule' specifies whether the app should display the full fight card, single fight, fightcard, striking, matchup, stats or tape.
* 'eventId' refers to the MMA fightcard/event that you wish to display.

##
