@wscsports/blaze-rtn-sdk
Version:
WSC Sports Blaze SDK component for React Native
149 lines (146 loc) • 4.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.BlazeBasePlayerDelegateHandler = void 0;
var _commonParser = require("./common-parser");
var _blazeError = require("../interfaces/blaze-error.interface");
// Shared parameter interfaces for base player delegate
// Base player delegate interface - shared between Widget and EntryPoint delegates
// Base player delegate handler - eliminates duplicate code between Widget and EntryPoint delegates
class BlazeBasePlayerDelegateHandler {
static extractPlayerType(data) {
return data['playerType'];
}
static extractCTAActionType(data) {
return data['actionType'];
}
static handleDataLoadStarted(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
callback({
playerType,
sourceId
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handleDataLoadStarted', e);
}
}
static handleDataLoadComplete(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
const itemsCount = data['itemsCount'];
const error = (0, _blazeError.parseBlazeError)(data['error']);
callback({
playerType,
sourceId,
itemsCount,
error
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handleDataLoadComplete', e);
}
}
static handlePlayerDidAppear(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
callback({
playerType,
sourceId
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handlePlayerDidAppear', e);
}
}
static handlePlayerDidDismiss(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
callback({
playerType,
sourceId
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handlePlayerDidDismiss', e);
}
}
static handleTriggerCTA(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
const actionType = this.extractCTAActionType(data);
const actionParam = data['actionParam'];
callback({
playerType,
sourceId,
actionType,
actionParam
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handleTriggerCTA', e);
}
}
static handleTriggerPlayerBodyTextLink(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
const actionParam = data['actionParam'];
callback({
playerType,
sourceId,
actionParam
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handleTriggerPlayerBodyTextLink', e);
}
}
static handlePlayerEventTriggered(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
const playerEventType = data['playerEventType'];
const playerEventParams = data['playerEventParams'];
const result = _commonParser.CommonParser.extractPlayerEvent(playerEventType, playerEventParams);
if (result != null) {
callback({
playerType,
sourceId,
playerEvent: result
});
}
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handlePlayerEventTriggered', e);
}
}
static handleTriggerCustomActionButton(data, callback) {
if (!callback) return;
try {
const playerType = this.extractPlayerType(data);
const sourceId = data['sourceId'];
const buttonId = data['buttonId'];
const buttonName = data['buttonName'];
const appMetadata = data['appMetadata'];
callback({
playerType,
sourceId,
buttonId,
buttonName,
appMetadata
});
} catch (e) {
console.error('BlazeBasePlayerDelegateHandler.handleTriggerCustomActionButton', e);
}
}
}
exports.BlazeBasePlayerDelegateHandler = BlazeBasePlayerDelegateHandler;
//# sourceMappingURL=base-player-delegate.js.map