@maestro_io/maestro-web-sdk 3.1.2 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/maestro-web-sdk.esm.js +5 -5
- package/dist/maestro-web-sdk.esm.js.map +1 -1
- package/dist/maestro-web-sdk.umd.js +5 -5
- package/dist/maestro-web-sdk.umd.js.map +1 -1
- package/dist/src/components/atoms/SvgIcon/FantasyIcon.d.ts +7 -0
- package/dist/src/components/atoms/SvgIcon/Icon.d.ts +2 -0
- package/dist/src/components/molecules/HeadshotImage/HeadshotImage.d.ts +16 -0
- package/dist/src/components/molecules/HeadshotImage/index.d.ts +2 -0
- package/dist/src/development/MaestroEventDelegate.d.ts +2 -1
- package/dist/src/helpers/strings.d.ts +1 -0
- package/dist/src/index.d.ts +3 -3
- package/dist/src/interfaces/IMaestroEventDelegate.d.ts +15 -0
- package/dist/src/interfaces/IUserSettings.d.ts +4 -0
- package/dist/src/models/IPanel.d.ts +1 -6
- package/dist/src/modules/bets/view-model/BetsViewModel.d.ts +0 -5
- package/dist/src/modules/fantasy/components/ExpandedAthleteList/ExpandedAthletesList.d.ts +28 -0
- package/dist/src/modules/fantasy/components/ExpandedAthleteList/index.d.ts +1 -0
- package/dist/src/modules/fantasy/components/LeagueCard/LeagueCard.d.ts +56 -0
- package/dist/src/modules/fantasy/components/LeagueCard/index.d.ts +2 -0
- package/dist/src/modules/fantasy/components/TopPlayerCard/TopPlayerCard.d.ts +53 -0
- package/dist/src/modules/fantasy/components/TopPlayerCard/index.d.ts +2 -0
- package/dist/src/modules/fantasy/types.d.ts +176 -0
- package/dist/src/modules/fantasy/view/ActiveAthletesMarquee/ActiveAthletesMarquee.d.ts +21 -0
- package/dist/src/modules/fantasy/view/ActiveAthletesMarquee/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/FantasyItemView.d.ts +21 -0
- package/dist/src/modules/fantasy/view/FantasyView.d.ts +27 -0
- package/dist/src/modules/fantasy/view/InactiveLeague/DraftDateCountdown.d.ts +23 -0
- package/dist/src/modules/fantasy/view/InactiveLeague/InactiveLeague.d.ts +52 -0
- package/dist/src/modules/fantasy/view/InactiveLeague/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/LoginView/LoginView.d.ts +48 -0
- package/dist/src/modules/fantasy/view/LoginView/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/MatchupPair/DoubleAthleteCard/DoubleAthleteCard.d.ts +49 -0
- package/dist/src/modules/fantasy/view/MatchupPair/DoubleAthleteCard/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/MatchupPair/ExpandedDoubleAthleteCards.d.ts +14 -0
- package/dist/src/modules/fantasy/view/MatchupPair/MatchupPair.d.ts +54 -0
- package/dist/src/modules/fantasy/view/MatchupPair/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/MatchupSingle/ExpandedSingleAthleteCards.d.ts +14 -0
- package/dist/src/modules/fantasy/view/MatchupSingle/MatchupSingle.d.ts +54 -0
- package/dist/src/modules/fantasy/view/MatchupSingle/SingleAthleteCard/SingleAthleteCard.d.ts +49 -0
- package/dist/src/modules/fantasy/view/MatchupSingle/SingleAthleteCard/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/MatchupSingle/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/PromoView/PromoView.d.ts +52 -0
- package/dist/src/modules/fantasy/view/PromoView/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view/index.d.ts +2 -0
- package/dist/src/modules/fantasy/view-model/FantasyViewModel.FantasyPolling.d.ts +34 -0
- package/dist/src/modules/fantasy/view-model/FantasyViewModel.LeagueManagerPolling.d.ts +32 -0
- package/dist/src/modules/fantasy/view-model/FantasyViewModel.d.ts +146 -0
- package/dist/src/modules/stats/view-model/StatsViewModel.d.ts +0 -5
- package/dist/src/services/AnalyticsService/AnalyticsService.d.ts +10 -3
- package/dist/src/services/FantasyService.d.ts +54 -0
- package/dist/src/services/NetworkManager/types.d.ts +1 -0
- package/dist/src/view-models/MaestroEventViewModel.d.ts +3 -1
- package/package.json +1 -1
|
@@ -7,6 +7,7 @@ import WarningIcon from './WarningIcon';
|
|
|
7
7
|
import FlameIcon from './FlameIcon';
|
|
8
8
|
import BetsWarningIcon from './BetsWarningIcon';
|
|
9
9
|
import MobilePhoneIcon from './MobilePhoneIcon';
|
|
10
|
+
import FantasyIcon from './FantasyIcon';
|
|
10
11
|
declare const iconImports: {
|
|
11
12
|
keyPlays: typeof KeyPlaysIcon;
|
|
12
13
|
play: typeof PlayIcon;
|
|
@@ -20,6 +21,7 @@ declare const iconImports: {
|
|
|
20
21
|
flame: typeof FlameIcon;
|
|
21
22
|
betsWarning: typeof BetsWarningIcon;
|
|
22
23
|
mobilePhone: typeof MobilePhoneIcon;
|
|
24
|
+
fantasy: typeof FantasyIcon;
|
|
23
25
|
};
|
|
24
26
|
export type IconsName = keyof typeof iconImports;
|
|
25
27
|
export type IconProps = {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React, { ImgHTMLAttributes } from 'react';
|
|
2
|
+
export declare const BASE_64_HEADSHOT_THUMBNAIL_FALLBACK = "data:image/jpeg;base64,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";
|
|
3
|
+
interface HeadshotImageProps extends ImgHTMLAttributes<HTMLImageElement> {
|
|
4
|
+
}
|
|
5
|
+
declare class HeadshotImage extends React.Component<HeadshotImageProps> {
|
|
6
|
+
private mounted;
|
|
7
|
+
state: {
|
|
8
|
+
loaded: boolean;
|
|
9
|
+
};
|
|
10
|
+
constructor(props: HeadshotImageProps);
|
|
11
|
+
componentDidMount(): void;
|
|
12
|
+
componentWillUnmount(): void;
|
|
13
|
+
onLoad: () => void;
|
|
14
|
+
render(): React.JSX.Element;
|
|
15
|
+
}
|
|
16
|
+
export default HeadshotImage;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import IMaestroEventDelegate from '../interfaces/IMaestroEventDelegate';
|
|
1
|
+
import IMaestroEventDelegate, { PanelEvent } from '../interfaces/IMaestroEventDelegate';
|
|
2
2
|
import { ActionTrackEvent, ImpressionTrackEvent } from '../services/AnalyticsService/types';
|
|
3
3
|
type Environment = 'development' | 'production';
|
|
4
4
|
/**
|
|
@@ -11,6 +11,7 @@ export default class MaestroEventDelegate implements IMaestroEventDelegate {
|
|
|
11
11
|
env: Environment;
|
|
12
12
|
loggedIn: boolean;
|
|
13
13
|
});
|
|
14
|
+
onPanelEvent(event: PanelEvent): void;
|
|
14
15
|
toggleLogin(): void;
|
|
15
16
|
trackImpression(impression: ImpressionTrackEvent): void;
|
|
16
17
|
trackAction(action: ActionTrackEvent): void;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import IMaestroEventDelegate from './interfaces/IMaestroEventDelegate';
|
|
1
|
+
import IMaestroEventDelegate, { PanelEvent } from './interfaces/IMaestroEventDelegate';
|
|
2
2
|
import IMaestroManager, { SDKConfigParams } from './interfaces/IMaestroManager';
|
|
3
3
|
import IMaestroEvent from './interfaces/IMaestroEvent';
|
|
4
4
|
import { MaestroEventViewModel } from './view-models/MaestroEventViewModel';
|
|
@@ -10,7 +10,7 @@ export { default as Overlay } from './components/molecules/Overlay/Overlay';
|
|
|
10
10
|
export { OverlayType, IMaestroOverlayEvent, IOverlaySize, IOverlayPosition, IFantasyPayload, IOverlayAnalyticsEvent, } from './types/OverlayTypes';
|
|
11
11
|
export { IWinningBet } from './models/IWinningBet';
|
|
12
12
|
export { ActionTrackEvent, ImpressionTrackEvent, Metadata, PanelClickAction, PanelViewAction, } from './services/AnalyticsService/types';
|
|
13
|
-
export { IMaestroEventDelegate, IMaestroEvent, IMaestroKeyPlaysResponse, MaestroPanelType, };
|
|
13
|
+
export { PanelEvent, IMaestroEventDelegate, IMaestroEvent, IMaestroKeyPlaysResponse, MaestroPanelType, };
|
|
14
14
|
export { IUserSettings, DEFAULT_USER_SETTINGS, } from './interfaces/IUserSettings';
|
|
15
15
|
/**
|
|
16
16
|
* Main SDK class that serves as the entry point for the Maestro TV SDK
|
|
@@ -30,7 +30,7 @@ declare class MaestroWebSDK implements IMaestroManager {
|
|
|
30
30
|
*/
|
|
31
31
|
static getInstance(): MaestroWebSDK;
|
|
32
32
|
userDidStartWatchingEvent(eventID: string, delegate: IMaestroEventDelegate, userSettings?: IUserSettings): Promise<IMaestroEvent>;
|
|
33
|
-
userDidStopWatchingEvent(_: string): void
|
|
33
|
+
userDidStopWatchingEvent(_: string): Promise<void>;
|
|
34
34
|
configure(configParams: SDKConfigParams): void;
|
|
35
35
|
/**
|
|
36
36
|
* Checks if this is an authorized client based on siteID
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import { ActionTrackEvent, ImpressionTrackEvent } from '@/services/AnalyticsService/types';
|
|
2
|
+
export type RequestLoginPanelEvent = {
|
|
3
|
+
type: 'fantasy:request:login';
|
|
4
|
+
payload: {
|
|
5
|
+
/**
|
|
6
|
+
* @description Callback to be called by the client app once the login process is completed, so the SDK can refresh its state accordingly.
|
|
7
|
+
*/
|
|
8
|
+
onLoginSuccess: () => void;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export type PanelEvent = RequestLoginPanelEvent;
|
|
2
12
|
/**
|
|
3
13
|
* @description Interface for the client app to implement in order to handle Maestro TV SDK events.
|
|
4
14
|
*/
|
|
@@ -56,4 +66,9 @@ export default interface IMaestroEventDelegate {
|
|
|
56
66
|
* https://developers.maestro.io/sdk/web/event-delegate/trackImpression
|
|
57
67
|
*/
|
|
58
68
|
trackImpression(impression: ImpressionTrackEvent): void;
|
|
69
|
+
/**
|
|
70
|
+
* @description Notify the client app of a panel event within the SDK that may require handling by the client app. (i.e. request login)
|
|
71
|
+
* https://developers.maestro.io/sdk/web/event-delegate/onPanelEvent
|
|
72
|
+
*/
|
|
73
|
+
onPanelEvent(event: PanelEvent): void;
|
|
59
74
|
}
|
|
@@ -2,18 +2,13 @@ export declare const MaestroPanelType: {
|
|
|
2
2
|
readonly KEY_PLAYS: "keyPlays";
|
|
3
3
|
readonly STATS: "stats";
|
|
4
4
|
readonly BETS: "bets";
|
|
5
|
+
readonly FANTASY: "fantasy";
|
|
5
6
|
};
|
|
6
7
|
export type MaestroPanelType = typeof MaestroPanelType[keyof typeof MaestroPanelType];
|
|
7
8
|
export interface PanelTypeInfo {
|
|
8
9
|
id: MaestroPanelType;
|
|
9
10
|
name: string;
|
|
10
11
|
imageNamePrefix: string;
|
|
11
|
-
usesSectionHeaders: boolean;
|
|
12
12
|
iconName: string;
|
|
13
13
|
}
|
|
14
14
|
export declare const PANEL_TYPE_INFO: Record<MaestroPanelType, PanelTypeInfo>;
|
|
15
|
-
export declare const getPanelName: (panelType: MaestroPanelType) => string;
|
|
16
|
-
export declare const getImageNamePrefix: (panelType: MaestroPanelType) => string;
|
|
17
|
-
export declare const usesSectionHeaders: (panelType: MaestroPanelType) => boolean;
|
|
18
|
-
export declare const getIconName: (panelType: MaestroPanelType) => string;
|
|
19
|
-
export declare const getAllPanelTypes: () => MaestroPanelType[];
|
|
@@ -216,9 +216,4 @@ export declare class BetsViewModel extends ViewModel {
|
|
|
216
216
|
private updateHideWagersFromSettings;
|
|
217
217
|
private refreshBetItemsWithNewSettings;
|
|
218
218
|
}
|
|
219
|
-
declare global {
|
|
220
|
-
interface String {
|
|
221
|
-
hashCode(): number;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
219
|
export default BetsViewModel;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Direction } from '@/external/spatial-navigation/utils';
|
|
3
|
+
import { TopPlayer } from '../../view-model/FantasyViewModel';
|
|
4
|
+
type Props<T> = {
|
|
5
|
+
items: T[];
|
|
6
|
+
topPlayers: TopPlayer[];
|
|
7
|
+
focusKey: string;
|
|
8
|
+
className: string;
|
|
9
|
+
onArrowPress: (index: number) => (d: Direction) => boolean;
|
|
10
|
+
onBackPress: () => void;
|
|
11
|
+
renderItem: (item: T, index: number, onArrowPress: (d: Direction) => boolean, onBackPress: () => void, onBecameFocused: () => void) => React.ReactNode;
|
|
12
|
+
getItemKey: (item: T, index: number) => string;
|
|
13
|
+
};
|
|
14
|
+
type State = {
|
|
15
|
+
maxHeight: string;
|
|
16
|
+
isLastItem: boolean;
|
|
17
|
+
};
|
|
18
|
+
declare class ExpandedAthletesList<T> extends React.Component<Props<T>, State> {
|
|
19
|
+
refsArray: HTMLDivElement[];
|
|
20
|
+
titleContainer: HTMLDivElement | null;
|
|
21
|
+
wrapperRef: HTMLDivElement | null;
|
|
22
|
+
state: State;
|
|
23
|
+
updateMaxHeight(focusedIndex: number): void;
|
|
24
|
+
scrollToElement(focusedIndex: number): void;
|
|
25
|
+
onBecameFocused: (index: number) => () => void;
|
|
26
|
+
render(): React.JSX.Element;
|
|
27
|
+
}
|
|
28
|
+
export default ExpandedAthletesList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './ExpandedAthletesList';
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/// <reference types="prop-types" />
|
|
2
|
+
import { WithFocusableProps } from '@/external/spatial-navigation';
|
|
3
|
+
import './LeagueCard.styles.css';
|
|
4
|
+
import React from 'react';
|
|
5
|
+
type Props = {
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
leagueColor: string;
|
|
8
|
+
leagueLogo: string;
|
|
9
|
+
renderTitle: () => React.ReactNode;
|
|
10
|
+
expanded: boolean;
|
|
11
|
+
shouldExpand: boolean;
|
|
12
|
+
};
|
|
13
|
+
declare const _default: {
|
|
14
|
+
new (props?: (Props & WithFocusableProps) | undefined, context?: any): {
|
|
15
|
+
state: import("../../../../external/spatial-navigation/withFocusable").WithFocusableState;
|
|
16
|
+
navigation: import("../../../../external/spatial-navigation/spatialNavigation").default;
|
|
17
|
+
getChildContext(): {
|
|
18
|
+
parentFocusKey: string;
|
|
19
|
+
};
|
|
20
|
+
setFocus: (focusKey: string) => void;
|
|
21
|
+
navigateByDirection: (direction: import("../../../../external/spatial-navigation/utils").Direction, details?: Record<string, any>) => void;
|
|
22
|
+
stealFocus: () => void;
|
|
23
|
+
onUpdateFocus: (focused: boolean) => void;
|
|
24
|
+
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
25
|
+
onEnterPressHandler: (details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
26
|
+
onEnterReleaseHandler: () => void;
|
|
27
|
+
onBackPressHandler: (details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
28
|
+
onArrowPressHandler: (direction: import("../../../../external/spatial-navigation/utils").Direction, details: import("../../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
29
|
+
onBecameFocusedHandler: (layout: import("../../../../external/spatial-navigation/utils").Layout, details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
30
|
+
onBecameBlurredHandler: (layout: import("../../../../external/spatial-navigation/utils").Layout, details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
31
|
+
componentDidMount(): void;
|
|
32
|
+
componentDidUpdate(): void;
|
|
33
|
+
componentWillUnmount(): void;
|
|
34
|
+
render(): React.ReactElement<Props & WithFocusableProps>;
|
|
35
|
+
setState<K extends keyof import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>(state: import("../../../../external/spatial-navigation/withFocusable").WithFocusableState | ((prevState: Readonly<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>, props: Props & WithFocusableProps) => import("../../../../external/spatial-navigation/withFocusable").WithFocusableState | Pick<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState, K>) | Pick<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState, K>, callback?: (() => any) | undefined): void;
|
|
36
|
+
forceUpdate(callBack?: (() => any) | undefined): void;
|
|
37
|
+
props: Readonly<{
|
|
38
|
+
children?: React.ReactNode;
|
|
39
|
+
}> & Readonly<Props & WithFocusableProps>;
|
|
40
|
+
context: any;
|
|
41
|
+
refs: {
|
|
42
|
+
[key: string]: React.ReactInstance;
|
|
43
|
+
};
|
|
44
|
+
componentWillMount?(): void;
|
|
45
|
+
componentWillReceiveProps?(nextProps: Readonly<Props & WithFocusableProps>, nextContext: any): void;
|
|
46
|
+
shouldComponentUpdate?(nextProps: Readonly<Props & WithFocusableProps>, nextState: Readonly<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): boolean;
|
|
47
|
+
componentWillUpdate?(nextProps: Readonly<Props & WithFocusableProps>, nextState: Readonly<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
48
|
+
};
|
|
49
|
+
contextTypes: {
|
|
50
|
+
parentFocusKey: import("prop-types").Requireable<string>;
|
|
51
|
+
};
|
|
52
|
+
childContextTypes: {
|
|
53
|
+
parentFocusKey: import("prop-types").Requireable<string>;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
export default _default;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/// <reference types="prop-types" />
|
|
2
|
+
import { WithFocusableProps } from '@/external/spatial-navigation';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import './TopPlayerCard.styles.css';
|
|
5
|
+
import { TopPlayer } from '../../view-model/FantasyViewModel';
|
|
6
|
+
export type TopPlayerCardProps = {
|
|
7
|
+
player: TopPlayer;
|
|
8
|
+
index: number;
|
|
9
|
+
};
|
|
10
|
+
declare const _default: {
|
|
11
|
+
new (props?: (TopPlayerCardProps & WithFocusableProps) | undefined, context?: any): {
|
|
12
|
+
state: import("../../../../external/spatial-navigation/withFocusable").WithFocusableState;
|
|
13
|
+
navigation: import("../../../../external/spatial-navigation/spatialNavigation").default;
|
|
14
|
+
getChildContext(): {
|
|
15
|
+
parentFocusKey: string;
|
|
16
|
+
};
|
|
17
|
+
setFocus: (focusKey: string) => void;
|
|
18
|
+
navigateByDirection: (direction: import("../../../../external/spatial-navigation/utils").Direction, details?: Record<string, any>) => void;
|
|
19
|
+
stealFocus: () => void;
|
|
20
|
+
onUpdateFocus: (focused: boolean) => void;
|
|
21
|
+
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
22
|
+
onEnterPressHandler: (details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
23
|
+
onEnterReleaseHandler: () => void;
|
|
24
|
+
onBackPressHandler: (details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
25
|
+
onArrowPressHandler: (direction: import("../../../../external/spatial-navigation/utils").Direction, details: import("../../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
26
|
+
onBecameFocusedHandler: (layout: import("../../../../external/spatial-navigation/utils").Layout, details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
27
|
+
onBecameBlurredHandler: (layout: import("../../../../external/spatial-navigation/utils").Layout, details: import("../../../../external/spatial-navigation/utils").Details) => void;
|
|
28
|
+
componentDidMount(): void;
|
|
29
|
+
componentDidUpdate(): void;
|
|
30
|
+
componentWillUnmount(): void;
|
|
31
|
+
render(): React.ReactElement<TopPlayerCardProps & WithFocusableProps>;
|
|
32
|
+
setState<K extends keyof import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>(state: import("../../../../external/spatial-navigation/withFocusable").WithFocusableState | ((prevState: Readonly<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>, props: TopPlayerCardProps & WithFocusableProps) => import("../../../../external/spatial-navigation/withFocusable").WithFocusableState | Pick<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState, K>) | Pick<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState, K>, callback?: (() => any) | undefined): void;
|
|
33
|
+
forceUpdate(callBack?: (() => any) | undefined): void;
|
|
34
|
+
props: Readonly<{
|
|
35
|
+
children?: React.ReactNode;
|
|
36
|
+
}> & Readonly<TopPlayerCardProps & WithFocusableProps>;
|
|
37
|
+
context: any;
|
|
38
|
+
refs: {
|
|
39
|
+
[key: string]: React.ReactInstance;
|
|
40
|
+
};
|
|
41
|
+
componentWillMount?(): void;
|
|
42
|
+
componentWillReceiveProps?(nextProps: Readonly<TopPlayerCardProps & WithFocusableProps>, nextContext: any): void;
|
|
43
|
+
shouldComponentUpdate?(nextProps: Readonly<TopPlayerCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): boolean;
|
|
44
|
+
componentWillUpdate?(nextProps: Readonly<TopPlayerCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
45
|
+
};
|
|
46
|
+
contextTypes: {
|
|
47
|
+
parentFocusKey: import("prop-types").Requireable<string>;
|
|
48
|
+
};
|
|
49
|
+
childContextTypes: {
|
|
50
|
+
parentFocusKey: import("prop-types").Requireable<string>;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
export default _default;
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
export interface IPromoResponse {
|
|
2
|
+
fantasy: {
|
|
3
|
+
promotion: {
|
|
4
|
+
title: string;
|
|
5
|
+
description: string;
|
|
6
|
+
background: string;
|
|
7
|
+
logo: string;
|
|
8
|
+
qrCode: string;
|
|
9
|
+
fallbackUrl: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export interface IFantasyResponse {
|
|
14
|
+
preferences?: Preference[];
|
|
15
|
+
fantasyData?: FantasyData;
|
|
16
|
+
}
|
|
17
|
+
export interface Preference {
|
|
18
|
+
id?: string;
|
|
19
|
+
createDate?: number;
|
|
20
|
+
lastUpdateDate?: number;
|
|
21
|
+
metaData?: {
|
|
22
|
+
entry?: {
|
|
23
|
+
entryId?: number;
|
|
24
|
+
entryMetadata?: {
|
|
25
|
+
teamName?: string;
|
|
26
|
+
teamAbbrev?: string;
|
|
27
|
+
leagueFormatTypeId?: number;
|
|
28
|
+
leagueSubTypeId?: number;
|
|
29
|
+
customizable?: boolean;
|
|
30
|
+
active?: boolean;
|
|
31
|
+
draftComplete?: boolean;
|
|
32
|
+
scoringTypeId?: number;
|
|
33
|
+
leagueTypeId?: number;
|
|
34
|
+
draftInProgress?: boolean;
|
|
35
|
+
};
|
|
36
|
+
firstScoringPeriodId?: number;
|
|
37
|
+
gameId?: number;
|
|
38
|
+
groups?: {
|
|
39
|
+
groupId?: number;
|
|
40
|
+
groupSize?: number;
|
|
41
|
+
groupName?: string;
|
|
42
|
+
groupManager?: boolean;
|
|
43
|
+
draftDate?: number;
|
|
44
|
+
draftType?: number;
|
|
45
|
+
draftStatus?: number;
|
|
46
|
+
leagueStatus?: number;
|
|
47
|
+
fantasyCastHref?: string;
|
|
48
|
+
href?: string;
|
|
49
|
+
}[];
|
|
50
|
+
logoType?: string;
|
|
51
|
+
logoUrl?: string;
|
|
52
|
+
restrictionType?: number;
|
|
53
|
+
seasonId?: number;
|
|
54
|
+
entryURL?: string;
|
|
55
|
+
scoreboardFeedURL?: string;
|
|
56
|
+
abbrev?: string;
|
|
57
|
+
name?: string;
|
|
58
|
+
description?: string;
|
|
59
|
+
logoURL?: string;
|
|
60
|
+
signupURL?: string;
|
|
61
|
+
href?: string;
|
|
62
|
+
};
|
|
63
|
+
inSeason?: boolean;
|
|
64
|
+
isLive?: boolean;
|
|
65
|
+
currentScoringPeriodId?: number;
|
|
66
|
+
};
|
|
67
|
+
contentSourceId?: number;
|
|
68
|
+
sortGlobal?: number;
|
|
69
|
+
isHidden?: boolean;
|
|
70
|
+
typeId?: number;
|
|
71
|
+
type?: {
|
|
72
|
+
id?: number;
|
|
73
|
+
name?: string;
|
|
74
|
+
code?: string;
|
|
75
|
+
isDeletable?: boolean;
|
|
76
|
+
isDelegated?: boolean;
|
|
77
|
+
maxAllowed?: number;
|
|
78
|
+
};
|
|
79
|
+
bu?: number;
|
|
80
|
+
}
|
|
81
|
+
export interface FantasyData {
|
|
82
|
+
totalFantasyLeagues?: number;
|
|
83
|
+
leaguesBySportLeague?: Record<string, number>;
|
|
84
|
+
totalChallengeEntries?: number;
|
|
85
|
+
}
|
|
86
|
+
export interface ILeagueManagerResponse {
|
|
87
|
+
gameId?: number;
|
|
88
|
+
id?: number;
|
|
89
|
+
leagueName?: string;
|
|
90
|
+
livePlayers?: any[];
|
|
91
|
+
matchups?: Matchup[];
|
|
92
|
+
scoringPeriodId?: number;
|
|
93
|
+
scoringType?: string;
|
|
94
|
+
seasonId?: number;
|
|
95
|
+
segmentId?: number;
|
|
96
|
+
sportColor?: string;
|
|
97
|
+
sportLogo?: string;
|
|
98
|
+
topPlayers?: Player[];
|
|
99
|
+
}
|
|
100
|
+
export interface Matchup {
|
|
101
|
+
away?: Team;
|
|
102
|
+
home?: Team;
|
|
103
|
+
id?: number;
|
|
104
|
+
name?: string;
|
|
105
|
+
}
|
|
106
|
+
export interface Team {
|
|
107
|
+
currentScoringPeriodPoints?: number;
|
|
108
|
+
id?: number;
|
|
109
|
+
logo?: string;
|
|
110
|
+
name?: string;
|
|
111
|
+
owners?: Owner[];
|
|
112
|
+
points?: number;
|
|
113
|
+
score?: string;
|
|
114
|
+
record?: string;
|
|
115
|
+
roster?: RosterItem[];
|
|
116
|
+
winProbability?: number;
|
|
117
|
+
projectedPoints?: string;
|
|
118
|
+
}
|
|
119
|
+
export interface Owner {
|
|
120
|
+
firstName?: string;
|
|
121
|
+
id?: string;
|
|
122
|
+
lastName?: string;
|
|
123
|
+
}
|
|
124
|
+
export interface RosterItem {
|
|
125
|
+
displayOrder?: number;
|
|
126
|
+
player?: Player;
|
|
127
|
+
slot?: string;
|
|
128
|
+
}
|
|
129
|
+
export interface Player {
|
|
130
|
+
abbrevName?: string;
|
|
131
|
+
currentlyWatching?: boolean;
|
|
132
|
+
firstName?: string;
|
|
133
|
+
fullName?: string;
|
|
134
|
+
headshot?: string;
|
|
135
|
+
id?: number;
|
|
136
|
+
injuryStatus?: string;
|
|
137
|
+
lastName?: string;
|
|
138
|
+
lastNewsDate?: number;
|
|
139
|
+
percentRostered?: number;
|
|
140
|
+
points?: number;
|
|
141
|
+
projectedPoints?: number;
|
|
142
|
+
positions?: string;
|
|
143
|
+
statLine?: string;
|
|
144
|
+
playerStatus?: string;
|
|
145
|
+
proGameStatusLines?: string[];
|
|
146
|
+
proTeam?: ProTeam;
|
|
147
|
+
}
|
|
148
|
+
export interface ProTeam {
|
|
149
|
+
alternateColor?: string;
|
|
150
|
+
color?: string;
|
|
151
|
+
darkLogo?: string;
|
|
152
|
+
id?: number;
|
|
153
|
+
live?: boolean;
|
|
154
|
+
triCode?: string;
|
|
155
|
+
}
|
|
156
|
+
export interface ILeagueManagerRotoResponse {
|
|
157
|
+
gameId?: number;
|
|
158
|
+
id?: number;
|
|
159
|
+
leagueName?: string;
|
|
160
|
+
name?: string;
|
|
161
|
+
livePlayers?: any[];
|
|
162
|
+
matchups?: MatchupSingleEntry[];
|
|
163
|
+
scoringPeriodId?: number;
|
|
164
|
+
scoringType?: string;
|
|
165
|
+
seasonId?: number;
|
|
166
|
+
segmentId?: number;
|
|
167
|
+
sportColor?: string;
|
|
168
|
+
sportLogo?: string;
|
|
169
|
+
topPlayers?: Player[];
|
|
170
|
+
}
|
|
171
|
+
export interface MatchupSingleEntry {
|
|
172
|
+
id?: number;
|
|
173
|
+
teams?: Team[];
|
|
174
|
+
}
|
|
175
|
+
export declare const isLeagueManagerRotoResponse: (response: ILeagueManagerResponse | ILeagueManagerRotoResponse) => response is ILeagueManagerRotoResponse;
|
|
176
|
+
export declare const isLeagueManagerHeadToHeadResponse: (response: ILeagueManagerResponse | ILeagueManagerRotoResponse) => response is ILeagueManagerResponse;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './ActiveAthletesMarquee.styles.css';
|
|
3
|
+
type Props = {
|
|
4
|
+
activeAthletes: {
|
|
5
|
+
abbrevName: string;
|
|
6
|
+
points: string;
|
|
7
|
+
}[];
|
|
8
|
+
};
|
|
9
|
+
type State = {
|
|
10
|
+
shouldAnimate: boolean;
|
|
11
|
+
};
|
|
12
|
+
declare class ActiveAthletesMarquee extends React.Component<Props, State> {
|
|
13
|
+
private containerRef;
|
|
14
|
+
private marqueeRef;
|
|
15
|
+
constructor(props: Props);
|
|
16
|
+
componentDidMount(): void;
|
|
17
|
+
componentDidUpdate(prevProps: Props): void;
|
|
18
|
+
checkOverflow: () => void;
|
|
19
|
+
render(): React.JSX.Element;
|
|
20
|
+
}
|
|
21
|
+
export default ActiveAthletesMarquee;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Direction, Layout } from '@/external/spatial-navigation/utils';
|
|
3
|
+
import { FantasyItem } from '../view-model/FantasyViewModel';
|
|
4
|
+
type Props = {
|
|
5
|
+
item: FantasyItem;
|
|
6
|
+
onEnterPress: (item: FantasyItem) => void;
|
|
7
|
+
};
|
|
8
|
+
declare class FantasyItemView extends React.Component<Props> {
|
|
9
|
+
static contextTypes: {
|
|
10
|
+
refsMap: React.Requireable<any>;
|
|
11
|
+
setRef: React.Requireable<any>;
|
|
12
|
+
scrollToFocusedElement: React.Requireable<any>;
|
|
13
|
+
};
|
|
14
|
+
context: import("@/components/core/ScrollableContainer/ScrollableContainer").ScrollableContainerContextType;
|
|
15
|
+
onBecameFocused: (layout: Layout) => void;
|
|
16
|
+
onArrowPress: (d: Direction) => void;
|
|
17
|
+
onEnterPress: () => void;
|
|
18
|
+
renderItem(): React.JSX.Element | null;
|
|
19
|
+
render(): React.JSX.Element;
|
|
20
|
+
}
|
|
21
|
+
export default FantasyItemView;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import './FantasyView.styles.css';
|
|
3
|
+
import { Direction } from '@/external/spatial-navigation/utils';
|
|
4
|
+
import FantasyViewModel, { FantasyErrorState, FantasyItem } from '../view-model/FantasyViewModel';
|
|
5
|
+
interface State {
|
|
6
|
+
container: HTMLDivElement | null;
|
|
7
|
+
items: FantasyItem[];
|
|
8
|
+
isDataLoading: boolean;
|
|
9
|
+
errorState: FantasyErrorState;
|
|
10
|
+
}
|
|
11
|
+
declare class FantasyView extends Component<{}, State> {
|
|
12
|
+
private container;
|
|
13
|
+
private itemsListener;
|
|
14
|
+
private isDataLoadingListener;
|
|
15
|
+
private errorStateListener;
|
|
16
|
+
private vm;
|
|
17
|
+
constructor(props: {});
|
|
18
|
+
get viewModel(): FantasyViewModel;
|
|
19
|
+
componentDidMount(): void;
|
|
20
|
+
componentWillUnmount(): void;
|
|
21
|
+
clearTabLoadFailure: () => void;
|
|
22
|
+
onArrowPress: (d: Direction) => void;
|
|
23
|
+
onEnterPress: (item: FantasyItem) => void;
|
|
24
|
+
renderItems: () => React.JSX.Element | React.JSX.Element[] | null;
|
|
25
|
+
render(): React.JSX.Element;
|
|
26
|
+
}
|
|
27
|
+
export default FantasyView;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import React from 'react';
|
|
3
|
+
declare class DraftDateCountDown extends React.Component<{
|
|
4
|
+
draftDate: number;
|
|
5
|
+
}> {
|
|
6
|
+
interval: NodeJS.Timer | null;
|
|
7
|
+
state: {
|
|
8
|
+
days: string;
|
|
9
|
+
hours: string;
|
|
10
|
+
minutes: string;
|
|
11
|
+
seconds: string;
|
|
12
|
+
};
|
|
13
|
+
componentDidMount(): void;
|
|
14
|
+
componentWillUnmount(): void;
|
|
15
|
+
updateDate(): void;
|
|
16
|
+
getFormattedTimestamp(): string;
|
|
17
|
+
get items(): {
|
|
18
|
+
label: string;
|
|
19
|
+
value: string;
|
|
20
|
+
}[];
|
|
21
|
+
render(): React.JSX.Element;
|
|
22
|
+
}
|
|
23
|
+
export default DraftDateCountDown;
|