@maestro_io/maestro-web-sdk 4.0.2 → 5.1.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/1.maestro-web-sdk.esm.js +1 -1
- package/dist/1.maestro-web-sdk.esm.js.map +1 -1
- package/dist/10.maestro-web-sdk.esm.js +1 -1
- package/dist/10.maestro-web-sdk.esm.js.map +1 -1
- package/dist/11.maestro-web-sdk.esm.js +1 -1
- package/dist/11.maestro-web-sdk.esm.js.map +1 -1
- package/dist/12.maestro-web-sdk.esm.js +1 -1
- package/dist/12.maestro-web-sdk.esm.js.map +1 -1
- package/dist/13.maestro-web-sdk.esm.js +1 -1
- package/dist/13.maestro-web-sdk.esm.js.map +1 -1
- package/dist/14.maestro-web-sdk.esm.js +1 -1
- package/dist/14.maestro-web-sdk.esm.js.map +1 -1
- package/dist/15.maestro-web-sdk.esm.js +1 -1
- package/dist/15.maestro-web-sdk.esm.js.map +1 -1
- package/dist/16.maestro-web-sdk.esm.js +1 -1
- package/dist/16.maestro-web-sdk.esm.js.map +1 -1
- package/dist/17.maestro-web-sdk.esm.js +1 -1
- package/dist/17.maestro-web-sdk.esm.js.map +1 -1
- package/dist/18.maestro-web-sdk.esm.js +1 -1
- package/dist/18.maestro-web-sdk.esm.js.map +1 -1
- package/dist/19.maestro-web-sdk.esm.js +1 -1
- package/dist/19.maestro-web-sdk.esm.js.map +1 -1
- package/dist/2.maestro-web-sdk.esm.js +1 -1
- package/dist/2.maestro-web-sdk.esm.js.map +1 -1
- package/dist/20.maestro-web-sdk.esm.js +1 -1
- package/dist/20.maestro-web-sdk.esm.js.map +1 -1
- package/dist/21.maestro-web-sdk.esm.js +1 -1
- package/dist/21.maestro-web-sdk.esm.js.map +1 -1
- package/dist/22.maestro-web-sdk.esm.js +1 -1
- package/dist/22.maestro-web-sdk.esm.js.map +1 -1
- package/dist/23.maestro-web-sdk.esm.js +1 -1
- package/dist/23.maestro-web-sdk.esm.js.map +1 -1
- package/dist/24.maestro-web-sdk.esm.js +1 -1
- package/dist/24.maestro-web-sdk.esm.js.map +1 -1
- package/dist/25.maestro-web-sdk.esm.js +2 -0
- package/dist/25.maestro-web-sdk.esm.js.map +1 -0
- package/dist/26.maestro-web-sdk.esm.js +2 -0
- package/dist/26.maestro-web-sdk.esm.js.map +1 -0
- package/dist/27.maestro-web-sdk.esm.js +2 -0
- package/dist/27.maestro-web-sdk.esm.js.map +1 -0
- package/dist/28.maestro-web-sdk.esm.js +2 -0
- package/dist/28.maestro-web-sdk.esm.js.map +1 -0
- package/dist/29.maestro-web-sdk.esm.js +2 -0
- package/dist/29.maestro-web-sdk.esm.js.map +1 -0
- package/dist/3.maestro-web-sdk.esm.js +1 -1
- package/dist/3.maestro-web-sdk.esm.js.map +1 -1
- package/dist/30.maestro-web-sdk.esm.js +2 -0
- package/dist/30.maestro-web-sdk.esm.js.map +1 -0
- package/dist/31.maestro-web-sdk.esm.js +2 -0
- package/dist/31.maestro-web-sdk.esm.js.map +1 -0
- package/dist/32.maestro-web-sdk.esm.js +2 -0
- package/dist/32.maestro-web-sdk.esm.js.map +1 -0
- package/dist/33.maestro-web-sdk.esm.js +2 -0
- package/dist/33.maestro-web-sdk.esm.js.map +1 -0
- package/dist/34.maestro-web-sdk.esm.js +2 -0
- package/dist/34.maestro-web-sdk.esm.js.map +1 -0
- package/dist/35.maestro-web-sdk.esm.js +2 -0
- package/dist/35.maestro-web-sdk.esm.js.map +1 -0
- package/dist/36.maestro-web-sdk.esm.js +2 -0
- package/dist/36.maestro-web-sdk.esm.js.map +1 -0
- package/dist/37.maestro-web-sdk.esm.js +2 -0
- package/dist/37.maestro-web-sdk.esm.js.map +1 -0
- package/dist/38.maestro-web-sdk.esm.js +2 -0
- package/dist/38.maestro-web-sdk.esm.js.map +1 -0
- package/dist/4.maestro-web-sdk.esm.js +1 -1
- package/dist/4.maestro-web-sdk.esm.js.map +1 -1
- package/dist/5.maestro-web-sdk.esm.js +1 -1
- package/dist/5.maestro-web-sdk.esm.js.map +1 -1
- package/dist/6.maestro-web-sdk.esm.js +1 -1
- package/dist/6.maestro-web-sdk.esm.js.map +1 -1
- package/dist/7.maestro-web-sdk.esm.js +1 -1
- package/dist/7.maestro-web-sdk.esm.js.map +1 -1
- package/dist/8.maestro-web-sdk.esm.js +1 -1
- package/dist/8.maestro-web-sdk.esm.js.map +1 -1
- package/dist/9.maestro-web-sdk.esm.js +1 -1
- package/dist/9.maestro-web-sdk.esm.js.map +1 -1
- package/dist/index.d.ts +233 -1144
- package/dist/maestro-web-sdk.esm.js +3 -32
- package/dist/maestro-web-sdk.esm.js.map +1 -1
- package/dist/maestro-web-sdk.umd.js +3 -32
- package/dist/maestro-web-sdk.umd.js.map +1 -1
- package/dist/package.json +7 -5
- package/dist/src/components/atoms/Rive/index.d.ts +4 -2
- package/dist/src/components/atoms/SvgIcon/BuilderIcon.d.ts +3 -0
- package/dist/src/components/atoms/SvgIcon/BuilderIcon.js +8 -0
- package/dist/src/components/atoms/SvgIcon/FoxKeyPlaysIcon.d.ts +3 -0
- package/dist/src/components/atoms/SvgIcon/FoxKeyPlaysIcon.js +7 -0
- package/dist/src/components/atoms/SvgIcon/FoxMultiViewIcon.d.ts +3 -0
- package/dist/src/components/atoms/SvgIcon/FoxMultiViewIcon.js +10 -0
- package/dist/src/components/atoms/SvgIcon/FoxStatsIcon.d.ts +3 -0
- package/dist/src/components/atoms/SvgIcon/FoxStatsIcon.js +7 -0
- package/dist/src/components/atoms/SvgIcon/Icon.d.ts +1 -25
- package/dist/src/components/atoms/SvgIcon/Icon.js +46 -22
- package/dist/src/components/core/PanelManager/PanelManager.js +28 -12
- package/dist/src/components/core/ScrollableContainer/FocusableItem.d.ts +7 -2
- package/dist/src/components/core/ScrollableContainer/FocusableItem.js +19 -33
- package/dist/src/components/core/ScrollableContainer/ScrollableContainer.d.ts +10 -34
- package/dist/src/components/core/ScrollableContainer/ScrollableContainer.js +89 -147
- package/dist/src/components/core/ScrollableContainer/index.d.ts +4 -0
- package/dist/src/components/core/ScrollableContainer/index.js +3 -0
- package/dist/src/components/core/ScrollableContainer/useScrollableContainer.d.ts +14 -0
- package/dist/src/components/core/ScrollableContainer/useScrollableContainer.js +22 -0
- package/dist/src/components/molecules/ActionButton/ActionButton.d.ts +4 -2
- package/dist/src/components/molecules/ActionButton/ActionButton.js +6 -1
- package/dist/src/components/molecules/HeadshotImage/HeadshotImage.js +1 -1
- package/dist/src/components/molecules/PanelNavButton/PanelNavButton.d.ts +4 -2
- package/dist/src/components/molecules/PanelNavButton/PanelNavButton.js +1 -1
- package/dist/src/components/molecules/TabLoadError/TabLoadError.d.ts +4 -2
- package/dist/src/components/organisms/SegmentController/SegmentController.d.ts +1 -19
- package/dist/src/components/organisms/SegmentController/SegmentController.js +31 -72
- package/dist/src/development/MaestroEventDelegate.js +1 -1
- package/dist/src/development/development.js +4 -1
- package/dist/src/external/ReactRenderer.js +5 -4
- package/dist/src/external/spatial-navigation/spatialNavigation.d.ts +13 -8
- package/dist/src/external/spatial-navigation/spatialNavigation.js +73 -5
- package/dist/src/external/spatial-navigation/utils.d.ts +2 -0
- package/dist/src/external/spatial-navigation/withFocusable.d.ts +10 -2
- package/dist/src/external/spatial-navigation/withFocusable.js +12 -3
- package/dist/src/hooks/useMaxHeightToBottom.d.ts +11 -0
- package/dist/src/hooks/useMaxHeightToBottom.js +48 -0
- package/dist/src/index.d.ts +10 -11
- package/dist/src/index.js +51 -19
- package/dist/src/interfaces/IMaestroEvent.d.ts +1 -19
- package/dist/src/interfaces/IMaestroEvent.js +0 -17
- package/dist/src/interfaces/IMaestroManager.d.ts +39 -3
- package/dist/src/models/IPanel.d.ts +10 -6
- package/dist/src/models/IPanel.js +10 -38
- package/dist/src/modules/espn/bets/interfaces/IBetsViewModel.d.ts +5 -0
- package/dist/src/{services → modules/espn/bets/services}/BetsService.d.ts +3 -3
- package/dist/src/{services → modules/espn/bets/services}/BetsService.js +4 -3
- package/dist/src/modules/{bets → espn/bets}/view/BetsView.d.ts +4 -2
- package/dist/src/modules/{bets → espn/bets}/view/BetsView.js +38 -12
- package/dist/src/modules/{bets → espn/bets}/view/HotProps/HotPropsView.d.ts +21 -18
- package/dist/src/modules/{bets → espn/bets}/view/HotProps/HotPropsView.js +17 -34
- package/dist/src/modules/espn/bets/view/SixPack/SixPackView.d.ts +9 -0
- package/dist/src/modules/{bets → espn/bets}/view/SixPack/SixPackView.js +19 -52
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/BetsCard/BetsCard.d.ts +22 -19
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/BetsCard/BetsCard.js +16 -25
- package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCardEvent.d.ts +16 -0
- package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCardEvent.js +8 -0
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/BetsCard/BetsCardFooter.d.ts +1 -1
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/BetsCard/BetsCardFooter.js +1 -1
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/Boost/Boost.d.ts +1 -1
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/Parlay/Parlay.d.ts +1 -1
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/Straight/Straight.d.ts +1 -1
- package/dist/src/modules/{bets → espn/bets}/view/UserBets/Teaser/Teaser.d.ts +1 -1
- package/dist/src/modules/espn/bets/view/components/Bet/Bet.d.ts +10 -0
- package/dist/src/modules/{bets → espn/bets}/view/components/Bet/Bet.js +12 -3
- package/dist/src/modules/{bets → espn/bets}/view/components/BetsCard/BetsCard.d.ts +2 -2
- package/dist/src/modules/espn/bets/view/components/BetsCard/BetsCard.js +24 -0
- package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/GamblingDisclaimer.d.ts +7 -0
- package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/GamblingDisclaimer.js +31 -0
- package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/index.d.ts +1 -0
- package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/index.js +1 -0
- package/dist/src/modules/espn/bets/view/components/PromoCodeBanner/PromoCodeBanner.d.ts +5 -0
- package/dist/src/modules/espn/bets/view/components/PromoCodeBanner/PromoCodeBanner.js +45 -0
- package/dist/src/modules/{bets → espn/bets}/view-model/BetsViewModel.d.ts +4 -5
- package/dist/src/modules/{bets → espn/bets}/view-model/BetsViewModel.js +6 -33
- package/dist/src/modules/espn/fantasy/components/LeagueCard/LeagueCard.d.ts +104 -0
- package/dist/src/modules/espn/fantasy/components/TopPlayerCard/TopPlayerCard.d.ts +101 -0
- package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/TournamentOverflowQR.d.ts +103 -0
- package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/TournamentOverflowQR.js +94 -0
- package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/index.d.ts +1 -0
- package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/index.js +1 -0
- package/dist/src/{services → modules/espn/fantasy/services}/FantasyService.d.ts +27 -4
- package/dist/src/modules/espn/fantasy/services/FantasyService.js +124 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/types.d.ts +118 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/types.js +3 -0
- package/dist/src/modules/espn/fantasy/view/FantasyHeaderView.d.ts +8 -0
- package/dist/src/modules/espn/fantasy/view/FantasyHeaderView.js +8 -0
- package/dist/src/modules/espn/fantasy/view/FantasyItemView.d.ts +8 -0
- package/dist/src/modules/espn/fantasy/view/FantasyItemView.js +48 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/view/FantasyView.d.ts +7 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/view/FantasyView.js +86 -7
- package/dist/src/modules/espn/fantasy/view/InactiveLeague/InactiveLeague.d.ts +100 -0
- package/dist/src/modules/espn/fantasy/view/LoginView/LoginView.d.ts +96 -0
- package/dist/src/modules/espn/fantasy/view/MatchupPair/DoubleAthleteCard/DoubleAthleteCard.d.ts +97 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/MatchupPair.d.ts +18 -16
- package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/MatchupSingle.d.ts +18 -16
- package/dist/src/modules/espn/fantasy/view/MatchupSingle/SingleAthleteCard/SingleAthleteCard.d.ts +97 -0
- package/dist/src/modules/{fantasy/view/MatchupPair/DoubleAthleteCard/DoubleAthleteCard.d.ts → espn/fantasy/view/PromoView/PromoView.d.ts} +30 -25
- package/dist/src/modules/{fantasy → espn/fantasy}/view/PromoView/PromoView.js +2 -2
- package/dist/src/modules/espn/fantasy/view/TournamentBracketCard/TournamentBracketCard.d.ts +101 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/view/TournamentBracketCard/TournamentBracketCard.js +10 -6
- package/dist/src/modules/{fantasy → espn/fantasy}/view-model/FantasyViewModel.FantasyPolling.d.ts +1 -1
- package/dist/src/modules/{fantasy → espn/fantasy}/view-model/FantasyViewModel.LeagueManagerPolling.d.ts +1 -1
- package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.TournamentPolling.d.ts +32 -0
- package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.TournamentPolling.js +140 -0
- package/dist/src/modules/{fantasy → espn/fantasy}/view-model/FantasyViewModel.d.ts +22 -3
- package/dist/src/modules/{fantasy → espn/fantasy}/view-model/FantasyViewModel.js +310 -46
- package/dist/src/modules/espn/key-plays/interfaces/IKeyPlaysViewModel.d.ts +17 -0
- package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlayCardView.d.ts +2 -14
- package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlayCardView.js +18 -42
- package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlayErrorStateView.js +13 -13
- package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlaysView.d.ts +2 -0
- package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlaysView.js +33 -5
- package/dist/src/modules/{key-plays → espn/key-plays}/view-model/KeyPlaysViewModel.d.ts +1 -1
- package/dist/src/modules/{key-plays → espn/key-plays}/view-model/KeyPlaysViewModel.js +2 -3
- package/dist/src/{services → modules/espn/shop/services}/ShopService.d.ts +3 -3
- package/dist/src/{services → modules/espn/shop/services}/ShopService.js +2 -4
- package/dist/src/modules/{shop → espn/shop}/types.d.ts +3 -0
- package/dist/src/modules/{shop → espn/shop}/view/ProductDetailView/ProductDetailView.d.ts +1 -0
- package/dist/src/modules/{shop → espn/shop}/view/ShopView.d.ts +3 -0
- package/dist/src/modules/{shop → espn/shop}/view/ShopView.js +45 -4
- package/dist/src/modules/espn/shop/view/components/BrowseCard/BrowseCard.d.ts +103 -0
- package/dist/src/modules/{shop → espn/shop}/view/components/BrowseCard/BrowseCard.js +1 -1
- package/dist/src/modules/{shop → espn/shop}/view/components/ProductSummaryCard/ProductSummaryCard.d.ts +18 -16
- package/dist/src/modules/{shop → espn/shop}/view/components/ShopPromoView/ShopPromoView.js +2 -2
- package/dist/src/modules/espn/shop/view/components/ShopSection/ShopSection.d.ts +12 -0
- package/dist/src/modules/espn/shop/view/components/ShopSection/ShopSection.js +34 -0
- package/dist/src/modules/{shop → espn/shop}/view-model/ShopViewModel.ShopPolling.d.ts +1 -1
- package/dist/src/modules/{shop → espn/shop}/view-model/ShopViewModel.d.ts +4 -8
- package/dist/src/modules/{shop → espn/shop}/view-model/ShopViewModel.js +5 -39
- package/dist/src/modules/{stats/utils/renderTeamStatistic.d.ts → espn/stats/components/TeamStatistic.d.ts} +2 -6
- package/dist/src/modules/{stats/utils/renderTeamStatistic.js → espn/stats/components/TeamStatistic.js} +4 -7
- package/dist/src/modules/{stats → espn/stats}/interfaces/IStats.d.ts +124 -20
- package/dist/src/modules/espn/stats/interfaces/IStats.js +46 -0
- package/dist/src/modules/espn/stats/interfaces/IStatsViewModel.d.ts +7 -0
- package/dist/src/modules/espn/stats/interfaces/IStatsViewModel.js +1 -0
- package/dist/src/{services → modules/espn/stats/services}/StatsService.d.ts +3 -3
- package/dist/src/{services → modules/espn/stats/services}/StatsService.js +5 -4
- package/dist/src/modules/{stats → espn/stats}/utils/playerStatusUtils.js +1 -0
- package/dist/src/modules/espn/stats/view/CareerMatchup/CareerMatchup.d.ts +101 -0
- package/dist/src/modules/{stats → espn/stats}/view/CareerMatchup/CareerMatchup.js +6 -6
- package/dist/src/modules/espn/stats/view/DriveSummary/DrivePlayCard.d.ts +105 -0
- package/dist/src/modules/espn/stats/view/DriveSummary/DrivePlayCard.js +32 -0
- package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/DriveSummary.d.ts +2 -9
- package/dist/src/modules/espn/stats/view/DriveSummary/DriveSummary.js +40 -0
- package/dist/src/modules/espn/stats/view/GameLeaders/GameLeaders.d.ts +9 -0
- package/dist/src/modules/espn/stats/view/GameLeaders/GameLeaders.js +22 -0
- package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/DonutChart/DonutChart.js +2 -2
- package/dist/src/modules/{fantasy/view/MatchupSingle/SingleAthleteCard/SingleAthleteCard.d.ts → espn/stats/view/MatchPredictor/MatchPredictorView.d.ts} +30 -25
- package/dist/src/modules/{stats → espn/stats}/view/Penalties/Penalties.js +1 -1
- package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/ExpandedPlayerStats.js +11 -8
- package/dist/src/modules/{stats/view/ScoringSummary/ScoreItem/ScoreItem.d.ts → espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsCard.d.ts} +6 -5
- package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/PlayerSeasonStatsCard.js +2 -2
- package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/PlayerSeasonStatsMinified.js +1 -1
- package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/PlayerSeasonStatsView.js +1 -1
- package/dist/src/modules/{stats/view/components/AthletesStatistics/AthletesStatistics.d.ts → espn/stats/view/RecentGames/RecentGames.d.ts} +29 -42
- package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ExpandedScores/ExpandedScores.d.ts +1 -1
- package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/ExpandedSummary.d.ts +100 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/ExpandedSummary.js +24 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/index.d.ts +2 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/index.js +2 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/ScoreItem/ScoreItem.d.ts +100 -0
- package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoreItem/ScoreItem.js +1 -1
- package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoresSection/ScoresSection.d.ts +1 -1
- package/dist/src/modules/espn/stats/view/ScoringSummary/ScoringSummary.d.ts +12 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/ScoringSummary.js +167 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/index.d.ts +1 -0
- package/dist/src/modules/espn/stats/view/ScoringSummary/index.js +1 -0
- package/dist/src/modules/espn/stats/view/StatsItemView.d.ts +8 -0
- package/dist/src/modules/espn/stats/view/StatsItemView.js +66 -0
- package/dist/src/modules/espn/stats/view/StatsQRCode/StatsQRCodeView.d.ts +100 -0
- package/dist/src/modules/{stats → espn/stats}/view/StatsView.d.ts +2 -0
- package/dist/src/modules/{stats → espn/stats}/view/StatsView.js +31 -4
- package/dist/src/modules/{stats → espn/stats}/view/TeamStats/TeamStatsView.d.ts +29 -26
- package/dist/src/modules/espn/stats/view/TeamStats/TeamStatsView.js +77 -0
- package/dist/src/modules/espn/stats/view/Teams/Teams.d.ts +100 -0
- package/dist/src/modules/{stats → espn/stats}/view/Teams/Teams.js +15 -19
- package/dist/src/modules/espn/stats/view/WinProbability/WinProbability.d.ts +100 -0
- package/dist/src/modules/{stats → espn/stats}/view/WinProbability/WinProbability.js +1 -1
- package/dist/src/modules/espn/stats/view/components/AthletesStatistics/AthletesStatistics.d.ts +115 -0
- package/dist/src/modules/{stats → espn/stats}/view/components/AthletesStatistics/AthletesStatistics.js +1 -1
- package/dist/src/modules/{stats → espn/stats}/view-model/StatsViewModel.d.ts +101 -20
- package/dist/src/modules/{stats → espn/stats}/view-model/StatsViewModel.js +527 -100
- package/dist/src/modules/fox/key-plays/view/FoxKeyPlays.d.ts +2 -0
- package/dist/src/modules/fox/key-plays/view/FoxKeyPlays.js +5 -0
- package/dist/src/modules/fox/multi-view/view/FoxMultiView.d.ts +2 -0
- package/dist/src/modules/fox/multi-view/view/FoxMultiView.js +5 -0
- package/dist/src/modules/fox/stats/view/FoxStatsView.d.ts +2 -0
- package/dist/src/modules/fox/stats/view/FoxStatsView.js +5 -0
- package/dist/src/modules/maestro/builder/components/BuilderSection/BuilderSection.d.ts +11 -0
- package/dist/src/modules/maestro/builder/components/BuilderSection/BuilderSection.js +52 -0
- package/dist/src/modules/maestro/builder/components/BuilderSection/index.d.ts +2 -0
- package/dist/src/modules/maestro/builder/components/BuilderSection/index.js +2 -0
- package/dist/src/modules/maestro/builder/components/ExpandableCard/ExpandableCard.d.ts +110 -0
- package/dist/src/modules/maestro/builder/components/ExpandableCard/ExpandableCard.js +37 -0
- package/dist/src/modules/maestro/builder/components/ExpandableCard/index.d.ts +2 -0
- package/dist/src/modules/maestro/builder/components/ExpandableCard/index.js +2 -0
- package/dist/src/modules/{shop/view/components/BrowseCard/BrowseCard.d.ts → maestro/builder/components/SimpleCard/SimpleCard.d.ts} +32 -29
- package/dist/src/modules/maestro/builder/components/SimpleCard/SimpleCard.js +12 -0
- package/dist/src/modules/maestro/builder/components/SimpleCard/index.d.ts +2 -0
- package/dist/src/modules/maestro/builder/components/SimpleCard/index.js +2 -0
- package/dist/src/modules/maestro/builder/index.d.ts +7 -0
- package/dist/src/modules/maestro/builder/index.js +7 -0
- package/dist/src/modules/maestro/builder/mocks/mockBuilderPanel.d.ts +149 -0
- package/dist/src/modules/maestro/builder/mocks/mockBuilderPanel.js +240 -0
- package/dist/src/modules/maestro/builder/types.d.ts +52 -0
- package/dist/src/modules/maestro/builder/types.js +1 -0
- package/dist/src/modules/maestro/builder/view/BuilderPanelView.d.ts +4 -0
- package/dist/src/modules/maestro/builder/view/BuilderPanelView.js +52 -0
- package/dist/src/modules/maestro/builder/view-model/BuilderPanelViewModel.d.ts +40 -0
- package/dist/src/modules/maestro/builder/view-model/BuilderPanelViewModel.js +229 -0
- package/dist/src/modules/maestro/builder/view-model/index.d.ts +1 -0
- package/dist/src/modules/maestro/builder/view-model/index.js +1 -0
- package/dist/src/sentry.d.ts +1 -1
- package/dist/src/sentry.js +41 -21
- package/dist/src/services/AnalyticsService/AnalyticsService.d.ts +3 -2
- package/dist/src/services/AnalyticsService/AnalyticsService.js +3 -1
- package/dist/src/services/InsightsService/InsightsPayloadBuilder.d.ts +1 -1
- package/dist/src/services/InsightsService/InsightsPayloadBuilder.js +1 -2
- package/dist/src/services/InsightsService/InsightsService.js +1 -1
- package/dist/src/services/NetworkManager/NetworkManager.d.ts +6 -0
- package/dist/src/services/NetworkManager/NetworkManager.js +39 -62
- package/dist/src/services/NetworkManager/types.d.ts +0 -96
- package/dist/src/services/NetworkManager/types.js +1 -10
- package/dist/src/services/StaticService/StaticService.d.ts +10 -2
- package/dist/src/services/StaticService/StaticService.js +32 -7
- package/dist/src/services/StaticService/mocks.d.ts +1 -0
- package/dist/src/services/StaticService/mocks.js +114 -99
- package/dist/src/services/StaticService/types.d.ts +3 -1
- package/dist/src/services/UserSettingsManager.js +9 -6
- package/dist/src/view-models/MaestroEventViewModel.d.ts +47 -16
- package/dist/src/view-models/MaestroEventViewModel.js +124 -58
- package/dist/src/view-models/PanelManagerViewModel.d.ts +4 -1
- package/dist/src/view-models/PanelManagerViewModel.js +41 -58
- package/package.json +7 -5
- package/dist/1.maestro-web-sdk.umd.js +0 -2
- package/dist/1.maestro-web-sdk.umd.js.map +0 -1
- package/dist/10.maestro-web-sdk.umd.js +0 -2
- package/dist/10.maestro-web-sdk.umd.js.map +0 -1
- package/dist/11.maestro-web-sdk.umd.js +0 -2
- package/dist/11.maestro-web-sdk.umd.js.map +0 -1
- package/dist/12.maestro-web-sdk.umd.js +0 -2
- package/dist/12.maestro-web-sdk.umd.js.map +0 -1
- package/dist/13.maestro-web-sdk.umd.js +0 -2
- package/dist/13.maestro-web-sdk.umd.js.map +0 -1
- package/dist/14.maestro-web-sdk.umd.js +0 -2
- package/dist/14.maestro-web-sdk.umd.js.map +0 -1
- package/dist/15.maestro-web-sdk.umd.js +0 -2
- package/dist/15.maestro-web-sdk.umd.js.map +0 -1
- package/dist/16.maestro-web-sdk.umd.js +0 -2
- package/dist/16.maestro-web-sdk.umd.js.map +0 -1
- package/dist/17.maestro-web-sdk.umd.js +0 -2
- package/dist/17.maestro-web-sdk.umd.js.map +0 -1
- package/dist/18.maestro-web-sdk.umd.js +0 -2
- package/dist/18.maestro-web-sdk.umd.js.map +0 -1
- package/dist/19.maestro-web-sdk.umd.js +0 -2
- package/dist/19.maestro-web-sdk.umd.js.map +0 -1
- package/dist/2.maestro-web-sdk.umd.js +0 -2
- package/dist/2.maestro-web-sdk.umd.js.map +0 -1
- package/dist/20.maestro-web-sdk.umd.js +0 -2
- package/dist/20.maestro-web-sdk.umd.js.map +0 -1
- package/dist/21.maestro-web-sdk.umd.js +0 -2
- package/dist/21.maestro-web-sdk.umd.js.map +0 -1
- package/dist/22.maestro-web-sdk.umd.js +0 -2
- package/dist/22.maestro-web-sdk.umd.js.map +0 -1
- package/dist/23.maestro-web-sdk.umd.js +0 -2
- package/dist/23.maestro-web-sdk.umd.js.map +0 -1
- package/dist/24.maestro-web-sdk.umd.js +0 -2
- package/dist/24.maestro-web-sdk.umd.js.map +0 -1
- package/dist/3.maestro-web-sdk.umd.js +0 -2
- package/dist/3.maestro-web-sdk.umd.js.map +0 -1
- package/dist/4.maestro-web-sdk.umd.js +0 -2
- package/dist/4.maestro-web-sdk.umd.js.map +0 -1
- package/dist/5.maestro-web-sdk.umd.js +0 -2
- package/dist/5.maestro-web-sdk.umd.js.map +0 -1
- package/dist/6.maestro-web-sdk.umd.js +0 -2
- package/dist/6.maestro-web-sdk.umd.js.map +0 -1
- package/dist/7.maestro-web-sdk.umd.js +0 -2
- package/dist/7.maestro-web-sdk.umd.js.map +0 -1
- package/dist/8.maestro-web-sdk.umd.js +0 -2
- package/dist/8.maestro-web-sdk.umd.js.map +0 -1
- package/dist/9.maestro-web-sdk.umd.js +0 -2
- package/dist/9.maestro-web-sdk.umd.js.map +0 -1
- package/dist/bundle-report.html +0 -53
- package/dist/src/components/molecules/Overlay/Overlay.d.ts +0 -34
- package/dist/src/components/molecules/Overlay/Overlay.js +0 -139
- package/dist/src/components/molecules/Overlay/index.d.ts +0 -2
- package/dist/src/components/molecules/Overlay/index.js +0 -2
- package/dist/src/models/IWinningBet.d.ts +0 -7
- package/dist/src/modules/bets/view/SixPack/SixPackView.d.ts +0 -23
- package/dist/src/modules/bets/view/UserBets/BetsCard/BetsCardEvent.d.ts +0 -26
- package/dist/src/modules/bets/view/UserBets/BetsCard/BetsCardEvent.js +0 -34
- package/dist/src/modules/bets/view/components/Bet/Bet.d.ts +0 -158
- package/dist/src/modules/bets/view/components/BetsCard/BetsCard.js +0 -15
- package/dist/src/modules/bets/view/components/GamblingDisclaimer/GamblingDisclaimer.d.ts +0 -8
- package/dist/src/modules/bets/view/components/GamblingDisclaimer/GamblingDisclaimer.js +0 -14
- package/dist/src/modules/bets/view/components/PromoCodeBanner/PromoCodeBanner.d.ts +0 -18
- package/dist/src/modules/bets/view/components/PromoCodeBanner/PromoCodeBanner.js +0 -78
- package/dist/src/modules/fantasy/components/LeagueCard/LeagueCard.d.ts +0 -102
- package/dist/src/modules/fantasy/components/TopPlayerCard/TopPlayerCard.d.ts +0 -99
- package/dist/src/modules/fantasy/view/FantasyItemView.d.ts +0 -22
- package/dist/src/modules/fantasy/view/FantasyItemView.js +0 -74
- package/dist/src/modules/fantasy/view/InactiveLeague/InactiveLeague.d.ts +0 -98
- package/dist/src/modules/fantasy/view/LoginView/LoginView.d.ts +0 -94
- package/dist/src/modules/fantasy/view/PromoView/PromoView.d.ts +0 -98
- package/dist/src/modules/fantasy/view/TournamentBracketCard/TournamentBracketCard.d.ts +0 -99
- package/dist/src/modules/shop/view/components/ShopSection/ShopSection.d.ts +0 -23
- package/dist/src/modules/shop/view/components/ShopSection/ShopSection.js +0 -61
- package/dist/src/modules/stats/view/CareerMatchup/CareerMatchup.d.ts +0 -100
- package/dist/src/modules/stats/view/DriveSummary/DrivePlayCard.d.ts +0 -106
- package/dist/src/modules/stats/view/DriveSummary/DrivePlayCard.js +0 -70
- package/dist/src/modules/stats/view/DriveSummary/DriveSummary.js +0 -87
- package/dist/src/modules/stats/view/GameLeaders/GameLeaders.d.ts +0 -21
- package/dist/src/modules/stats/view/GameLeaders/GameLeaders.js +0 -48
- package/dist/src/modules/stats/view/MatchPredictor/MatchPredictorView.d.ts +0 -98
- package/dist/src/modules/stats/view/PlayerSeasonStats/PlayerSeasonStatsCard.d.ts +0 -97
- package/dist/src/modules/stats/view/RecentGames/RecentGames.d.ts +0 -98
- package/dist/src/modules/stats/view/ScoringSummary/ExpandedScores/index.d.ts +0 -2
- package/dist/src/modules/stats/view/ScoringSummary/ExpandedScores/index.js +0 -2
- package/dist/src/modules/stats/view/ScoringSummary/ScoringSummary.d.ts +0 -29
- package/dist/src/modules/stats/view/ScoringSummary/ScoringSummary.js +0 -125
- package/dist/src/modules/stats/view/ScoringSummary/index.d.ts +0 -2
- package/dist/src/modules/stats/view/ScoringSummary/index.js +0 -2
- package/dist/src/modules/stats/view/StatsItemView.d.ts +0 -22
- package/dist/src/modules/stats/view/StatsItemView.js +0 -92
- package/dist/src/modules/stats/view/StatsQRCode/StatsQRCodeView.d.ts +0 -98
- package/dist/src/modules/stats/view/TeamStats/TeamStatsView.js +0 -43
- package/dist/src/modules/stats/view/Teams/Teams.d.ts +0 -98
- package/dist/src/modules/stats/view/WinProbability/WinProbability.d.ts +0 -98
- package/dist/src/services/FantasyService.js +0 -92
- package/dist/src/services/NetworkManager/NetworkManagerFactory.d.ts +0 -42
- package/dist/src/services/NetworkManager/NetworkManagerFactory.js +0 -101
- package/dist/src/types/OverlayTypes.d.ts +0 -43
- package/dist/src/types/OverlayTypes.js +0 -4
- package/dist/src/view-models/OverlayViewModel.d.ts +0 -33
- package/dist/src/view-models/OverlayViewModel.js +0 -222
- /package/dist/src/modules/{bets → espn/bets}/interfaces/IBets.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/interfaces/IBets.js +0 -0
- /package/dist/src/{models/IWinningBet.js → modules/espn/bets/interfaces/IBetsViewModel.js} +0 -0
- /package/dist/src/modules/{bets → espn/bets}/mocks.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/mocks.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/types/BetsAnalyticsTypes.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/types/BetsAnalyticsTypes.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/BetResult/BetResult.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/BetResult/BetResult.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/Boost/Boost.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/OutcomeBadge/OutcomeBadge.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/OutcomeBadge/OutcomeBadge.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/Parlay/Parlay.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/Straight/Straight.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/Teaser/Teaser.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/UserBetsView.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/UserBets/UserBetsView.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/BetPill/BetPill.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/BetPill/BetPill.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/BetsCard/BetsCardHeader.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/BetsCard/BetsCardHeader.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/LocationWarning/LocationWarning.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/LocationWarning/LocationWarning.js +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/PromoCodeBanner/index.d.ts +0 -0
- /package/dist/src/modules/{bets → espn/bets}/view/components/PromoCodeBanner/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/ExpandedAthleteList/ExpandedAthletesList.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/ExpandedAthleteList/ExpandedAthletesList.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/ExpandedAthleteList/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/ExpandedAthleteList/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/LeagueCard/LeagueCard.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/LeagueCard/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/LeagueCard/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/TopPlayerCard/TopPlayerCard.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/TopPlayerCard/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/components/TopPlayerCard/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/mocks.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/mocks.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/ActiveAthletesMarquee/ActiveAthletesMarquee.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/ActiveAthletesMarquee/ActiveAthletesMarquee.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/ActiveAthletesMarquee/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/ActiveAthletesMarquee/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/InactiveLeague/DraftDateCountdown.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/InactiveLeague/DraftDateCountdown.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/InactiveLeague/InactiveLeague.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/InactiveLeague/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/InactiveLeague/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/LoginView/LoginView.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/LoginView/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/LoginView/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/DoubleAthleteCard/DoubleAthleteCard.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/DoubleAthleteCard/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/DoubleAthleteCard/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/ExpandedDoubleAthleteCards.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/ExpandedDoubleAthleteCards.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/MatchupPair.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupPair/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/ExpandedSingleAthleteCards.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/ExpandedSingleAthleteCards.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/MatchupSingle.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/SingleAthleteCard/SingleAthleteCard.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/SingleAthleteCard/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/SingleAthleteCard/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/MatchupSingle/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/PromoView/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/PromoView/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/TournamentBracketCard/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/TournamentBracketCard/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/index.d.ts +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view/index.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view-model/FantasyViewModel.FantasyPolling.js +0 -0
- /package/dist/src/modules/{fantasy → espn/fantasy}/view-model/FantasyViewModel.LeagueManagerPolling.js +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/constants.d.ts +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/constants.js +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/interfaces/IKeyPlays.d.ts +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/interfaces/IKeyPlays.js +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/interfaces/IKeyPlaysResponse.d.ts +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/interfaces/IKeyPlaysResponse.js +0 -0
- /package/dist/src/modules/{stats/interfaces/IStats.js → espn/key-plays/interfaces/IKeyPlaysViewModel.js} +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlayCardScoreTagView.d.ts +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlayCardScoreTagView.js +0 -0
- /package/dist/src/modules/{key-plays → espn/key-plays}/view/KeyPlayErrorStateView.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/mocks.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/mocks.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/types.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/ProductDetailView/ProductDetailView.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/ProductDetailView/index.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/ProductDetailView/index.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/BrowseCard/index.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/BrowseCard/index.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ProductSummaryCard/ProductSummaryCard.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ProductSummaryCard/index.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ProductSummaryCard/index.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ShopPromoView/ShopPromoView.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ShopPromoView/index.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ShopPromoView/index.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ShopSection/index.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/components/ShopSection/index.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/index.d.ts +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view/index.js +0 -0
- /package/dist/src/modules/{shop → espn/shop}/view-model/ShopViewModel.ShopPolling.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/mocks.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/mocks.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/utils/driveSummaryUtils.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/utils/driveSummaryUtils.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/utils/playerStatusUtils.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/utils.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/utils.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/ActiveAthletes.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/ActiveAthletes.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/CollapsedAthletes/CollapsedAthletes.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/CollapsedAthletes/CollapsedAthletes.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/ExpandedAthletes/ExpandedAthletes.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/ExpandedAthletes/ExpandedAthletes.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ActiveAthletes/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/CareerMatchup/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/CareerMatchup/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/ExpandedItems/DriveSummaryExpanded.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/ExpandedItems/DriveSummaryExpanded.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/Header/DriveSummaryHeader.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/Header/DriveSummaryHeader.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/MainStat/MainStat.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/MainStat/MainStat.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/DriveSummary/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/GameLeaders/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/GameLeaders/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/DonutChart/DonutChart.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/DonutChart/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/DonutChart/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/MatchPredictorView.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/MatchPredictor/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Penalties/Penalties.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Penalties/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Penalties/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/ExpandedPlayerStats.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/PlayerSeasonStatsMinified.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/PlayerSeasonStatsView.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/PlayerSeasonStats/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/RecentGames/RecentGames.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/RecentGames/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/RecentGames/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ExpandedScores/ExpandedScores.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoreItem/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoreItem/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoresSection/ScoresSection.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoresSection/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/ScoringSummary/ScoresSection/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/StatsQRCode/StatsQRCodeView.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/StatsQRCode/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/StatsQRCode/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/TeamStats/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/TeamStats/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Teams/StatsCarousel.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Teams/StatsCarousel.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Teams/StatsProgressBar.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Teams/StatsProgressBar.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Teams/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/Teams/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/WinProbability/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/WinProbability/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/components/AthletesStatistics/StatisticTable.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/components/AthletesStatistics/StatisticTable.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/components/AthletesStatistics/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/components/AthletesStatistics/index.js +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/index.d.ts +0 -0
- /package/dist/src/modules/{stats → espn/stats}/view/index.js +0 -0
- /package/dist/src/modules/{hello-world → maestro/hello-world}/HelloWorldImage.d.ts +0 -0
- /package/dist/src/modules/{hello-world → maestro/hello-world}/HelloWorldImage.js +0 -0
- /package/dist/src/modules/{hello-world → maestro/hello-world}/HelloWorldView.d.ts +0 -0
- /package/dist/src/modules/{hello-world → maestro/hello-world}/HelloWorldView.js +0 -0
- /package/dist/src/modules/{hello-world → maestro/hello-world}/index.d.ts +0 -0
- /package/dist/src/modules/{hello-world → maestro/hello-world}/index.js +0 -0
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
1
|
+
import React, { useState, useRef, useCallback, useMemo } from 'react';
|
|
3
2
|
import './ScrollableContainer.styles.css';
|
|
4
3
|
const wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
4
|
+
/**
|
|
5
|
+
* Context for ScrollableContainer
|
|
6
|
+
*/
|
|
7
|
+
export const ScrollableContainerContext = React.createContext({
|
|
8
|
+
setRef: () => { },
|
|
9
|
+
removeRef: () => { },
|
|
10
|
+
scrollToFocusedElement: () => { },
|
|
11
|
+
});
|
|
5
12
|
/**
|
|
6
13
|
* ScrollableContainer component provides a context for focusable items
|
|
7
14
|
* that allows them to register themselves and handle scrolling
|
|
@@ -15,155 +22,90 @@ const wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
|
15
22
|
* </ScrollableContainer>
|
|
16
23
|
* ```
|
|
17
24
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
export const ScrollableContainer = ({ children, scrollableContainerRef, containerTopOffset = 0, ...rest }) => {
|
|
26
|
+
const [scrolled, setScrolled] = useState(false);
|
|
27
|
+
const refsSet = useRef(new Set());
|
|
28
|
+
const hashRef = useRef('');
|
|
29
|
+
const lastHashRef = useRef('');
|
|
30
|
+
const sortedRefsCache = useRef([]);
|
|
31
|
+
const setRef = useCallback((ref) => {
|
|
32
|
+
refsSet.current.add(ref);
|
|
33
|
+
hashRef.current = Math.random().toString(36).substring(2, 15);
|
|
34
|
+
}, []);
|
|
35
|
+
const removeRef = useCallback((ref) => {
|
|
36
|
+
refsSet.current.delete(ref);
|
|
37
|
+
hashRef.current = Math.random().toString(36).substring(2, 15);
|
|
38
|
+
}, []);
|
|
39
|
+
const getOrderedRefs = useCallback(() => {
|
|
40
|
+
if (hashRef.current === lastHashRef.current) {
|
|
41
|
+
return sortedRefsCache.current;
|
|
42
|
+
}
|
|
43
|
+
const refsArray = Array.from(refsSet.current);
|
|
44
|
+
sortedRefsCache.current = refsArray.sort((a, b) => {
|
|
45
|
+
if (!scrollableContainerRef)
|
|
46
|
+
return 0;
|
|
47
|
+
const containerRect = scrollableContainerRef.getBoundingClientRect();
|
|
48
|
+
const aRect = a ? a.getBoundingClientRect() : { top: 0, bottom: 0 };
|
|
49
|
+
const bRect = b ? b.getBoundingClientRect() : { top: 0, bottom: 0 };
|
|
50
|
+
// Calculate the actual distance from container top (positive means below, negative means above)
|
|
51
|
+
const aDistance = aRect.top - containerRect.top;
|
|
52
|
+
const bDistance = bRect.top - containerRect.top;
|
|
53
|
+
return aDistance - bDistance;
|
|
26
54
|
});
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
55
|
+
lastHashRef.current = hashRef.current;
|
|
56
|
+
return sortedRefsCache.current;
|
|
57
|
+
}, [scrollableContainerRef]);
|
|
58
|
+
/**
|
|
59
|
+
* @description - Scrolls the container to the focused element if necessary
|
|
60
|
+
*/
|
|
61
|
+
const scrollToFocusedElement = useCallback(async (layout, options) => {
|
|
62
|
+
if (!scrollableContainerRef || !layout.node)
|
|
63
|
+
return;
|
|
64
|
+
const offsetTop = options?.offsetTop || 0;
|
|
65
|
+
const refs = getOrderedRefs();
|
|
66
|
+
// Wait for the next frame to ensure the layout is updated
|
|
67
|
+
if (process.env.NODE_ENV !== 'test') {
|
|
68
|
+
await wait(0);
|
|
69
|
+
}
|
|
70
|
+
const containerRect = scrollableContainerRef.getBoundingClientRect();
|
|
71
|
+
const nodeRect = layout.node.getBoundingClientRect();
|
|
72
|
+
let index = -1;
|
|
73
|
+
for (let i = refs.length - 1; i >= 0; i--) {
|
|
74
|
+
if (refs[i].contains(layout.node)) {
|
|
75
|
+
index = i;
|
|
76
|
+
break;
|
|
45
77
|
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
78
|
+
}
|
|
79
|
+
if (index === -1) {
|
|
80
|
+
console.warn('Element not found in refsMap to focus to. Register the element wrapping it with <FocusableItem />');
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
let hasOutside = false;
|
|
84
|
+
refs.slice(index).forEach((el) => {
|
|
85
|
+
const rect = el.getBoundingClientRect();
|
|
86
|
+
if (rect.bottom > containerRect.bottom ||
|
|
87
|
+
rect.top < containerRect.top) {
|
|
88
|
+
hasOutside = true;
|
|
54
89
|
}
|
|
55
90
|
});
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return 0;
|
|
67
|
-
const containerRect = this.props.scrollableContainerRef.getBoundingClientRect();
|
|
68
|
-
const aRect = a ? a.getBoundingClientRect() : { top: 0, bottom: 0 };
|
|
69
|
-
const bRect = b ? b.getBoundingClientRect() : { top: 0, bottom: 0 };
|
|
70
|
-
// Calculate the actual distance from container top (positive means below, negative means above)
|
|
71
|
-
const aDistance = aRect.top - containerRect.top;
|
|
72
|
-
const bDistance = bRect.top - containerRect.top;
|
|
73
|
-
return aDistance - bDistance;
|
|
74
|
-
});
|
|
75
|
-
this.lastHash = this.hash;
|
|
76
|
-
return this.refsMap;
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
/**
|
|
80
|
-
* @description - Scrolls the container to the focused element if necessary
|
|
81
|
-
*/
|
|
82
|
-
Object.defineProperty(this, "scrollToFocusedElement", {
|
|
83
|
-
enumerable: true,
|
|
84
|
-
configurable: true,
|
|
85
|
-
writable: true,
|
|
86
|
-
value: async (layout, options) => {
|
|
87
|
-
if (!this.props.scrollableContainerRef || !layout.node)
|
|
88
|
-
return;
|
|
89
|
-
const offsetTop = options?.offsetTop || 0;
|
|
90
|
-
const refs = this.getOrderedRefs();
|
|
91
|
-
// Wait for the next frame to ensure the layout is updated
|
|
92
|
-
if (process.env.NODE_ENV !== 'test') {
|
|
93
|
-
await wait(0);
|
|
94
|
-
}
|
|
95
|
-
const containerRect = this.props.scrollableContainerRef.getBoundingClientRect();
|
|
96
|
-
const nodeRect = layout.node.getBoundingClientRect();
|
|
97
|
-
let index = -1;
|
|
98
|
-
for (let i = refs.length - 1; i >= 0; i--) {
|
|
99
|
-
if (refs[i].contains(layout.node)) {
|
|
100
|
-
index = i;
|
|
101
|
-
break;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
if (index === -1) {
|
|
105
|
-
console.warn('Element not found in refsMap to focus to. Register the element wrapping it with <FocusableItem />');
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
let hasOutside = false;
|
|
109
|
-
refs.slice(index).forEach((el) => {
|
|
110
|
-
const rect = el.getBoundingClientRect();
|
|
111
|
-
if (rect.bottom > containerRect.bottom || rect.top < containerRect.top) {
|
|
112
|
-
hasOutside = true;
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
if (!hasOutside)
|
|
116
|
-
return;
|
|
117
|
-
const target = index === 0
|
|
118
|
-
? 0
|
|
119
|
-
: this.props.scrollableContainerRef.scrollTop +
|
|
120
|
-
(nodeRect.top -
|
|
121
|
-
containerRect.top -
|
|
122
|
-
(this.props.containerTopOffset || 0) -
|
|
123
|
-
offsetTop);
|
|
124
|
-
this.props.scrollableContainerRef.scrollTop = target;
|
|
125
|
-
const newScrolled = target > 0;
|
|
126
|
-
if (this.state.scrolled !== newScrolled) {
|
|
127
|
-
this.setState({ scrolled: newScrolled });
|
|
128
|
-
}
|
|
129
|
-
}
|
|
91
|
+
if (!hasOutside)
|
|
92
|
+
return;
|
|
93
|
+
const target = index === 0
|
|
94
|
+
? 0
|
|
95
|
+
: scrollableContainerRef.scrollTop +
|
|
96
|
+
(nodeRect.top - containerRect.top - containerTopOffset - offsetTop);
|
|
97
|
+
scrollableContainerRef.scrollTop = target;
|
|
98
|
+
setScrolled((prev) => {
|
|
99
|
+
const newScrolled = target > 0;
|
|
100
|
+
return prev !== newScrolled ? newScrolled : prev;
|
|
130
101
|
});
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
componentWillUnmount() {
|
|
140
|
-
this.refsMap = [];
|
|
141
|
-
this.hash = '';
|
|
142
|
-
this.lastHash = '';
|
|
143
|
-
}
|
|
144
|
-
render() {
|
|
145
|
-
const { scrollableContainerRef: _, containerTopOffset: __, ...rest } = this.props;
|
|
146
|
-
return (React.createElement("div", { className: "scrollable-container", "data-scrolled": this.state.scrolled, ...rest }, this.props.children));
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
Object.defineProperty(ScrollableContainer, "childContextTypes", {
|
|
150
|
-
enumerable: true,
|
|
151
|
-
configurable: true,
|
|
152
|
-
writable: true,
|
|
153
|
-
value: {
|
|
154
|
-
refsMap: PropTypes.arrayOf(PropTypes.instanceOf(HTMLElement)),
|
|
155
|
-
setRef: PropTypes.func,
|
|
156
|
-
scrollToFocusedElement: PropTypes.func,
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
export const DEFAULT_SCROLLABLE_CONTAINER_CONTEXT = {
|
|
160
|
-
setRef: (_) => { },
|
|
161
|
-
scrollToFocusedElement: () => { },
|
|
162
|
-
refsMap: [],
|
|
163
|
-
};
|
|
164
|
-
export const SCROLLABLE_CONTEXT_TYPE = {
|
|
165
|
-
refsMap: PropTypes.arrayOf(PropTypes.instanceOf(HTMLElement)),
|
|
166
|
-
setRef: PropTypes.func,
|
|
167
|
-
scrollToFocusedElement: PropTypes.func,
|
|
102
|
+
}, [scrollableContainerRef, containerTopOffset, getOrderedRefs]);
|
|
103
|
+
const contextValue = useMemo(() => ({
|
|
104
|
+
setRef,
|
|
105
|
+
removeRef,
|
|
106
|
+
scrollToFocusedElement,
|
|
107
|
+
}), [setRef, removeRef, scrollToFocusedElement]);
|
|
108
|
+
return (React.createElement(ScrollableContainerContext.Provider, { value: contextValue },
|
|
109
|
+
React.createElement("div", { className: "scrollable-container", "data-scrolled": scrolled, ...rest }, children)));
|
|
168
110
|
};
|
|
169
111
|
export default ScrollableContainer;
|
|
@@ -1,2 +1,6 @@
|
|
|
1
1
|
import ScrollableContainer from './ScrollableContainer';
|
|
2
|
+
export { ScrollableContainerContext } from './ScrollableContainer';
|
|
3
|
+
export { useScrollableContainer } from './useScrollableContainer';
|
|
4
|
+
export { default as FocusableItem } from './FocusableItem';
|
|
5
|
+
export type { ScrollableContainerContextType } from './ScrollableContainer';
|
|
2
6
|
export default ScrollableContainer;
|
|
@@ -1,2 +1,5 @@
|
|
|
1
1
|
import ScrollableContainer from './ScrollableContainer';
|
|
2
|
+
export { ScrollableContainerContext } from './ScrollableContainer';
|
|
3
|
+
export { useScrollableContainer } from './useScrollableContainer';
|
|
4
|
+
export { default as FocusableItem } from './FocusableItem';
|
|
2
5
|
export default ScrollableContainer;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom hook to access the ScrollableContainer context.
|
|
3
|
+
* Use this hook in components that need to interact with the scrollable container.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```tsx
|
|
7
|
+
* const { scrollToFocusedElement } = useScrollableContainer();
|
|
8
|
+
*
|
|
9
|
+
* const handleFocus = (layout: Layout) => {
|
|
10
|
+
* scrollToFocusedElement(layout, { offsetTop: 20 });
|
|
11
|
+
* };
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export declare const useScrollableContainer: () => import("./ScrollableContainer").ScrollableContainerContextType;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { useContext } from 'react';
|
|
2
|
+
import { ScrollableContainerContext } from './ScrollableContainer';
|
|
3
|
+
/**
|
|
4
|
+
* Custom hook to access the ScrollableContainer context.
|
|
5
|
+
* Use this hook in components that need to interact with the scrollable container.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* const { scrollToFocusedElement } = useScrollableContainer();
|
|
10
|
+
*
|
|
11
|
+
* const handleFocus = (layout: Layout) => {
|
|
12
|
+
* scrollToFocusedElement(layout, { offsetTop: 20 });
|
|
13
|
+
* };
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const useScrollableContainer = () => {
|
|
17
|
+
const context = useContext(ScrollableContainerContext);
|
|
18
|
+
if (!context) {
|
|
19
|
+
throw new Error('useScrollableContainer must be used within a ScrollableContainer');
|
|
20
|
+
}
|
|
21
|
+
return context;
|
|
22
|
+
};
|
|
@@ -10,11 +10,12 @@ declare const _default: {
|
|
|
10
10
|
parentFocusKey: string;
|
|
11
11
|
};
|
|
12
12
|
setFocus: (focusKey: string) => void;
|
|
13
|
-
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?:
|
|
13
|
+
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
14
14
|
stealFocus: () => void;
|
|
15
15
|
onUpdateFocus: (focused: boolean) => void;
|
|
16
16
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
17
17
|
onEnterPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
18
|
+
onClickPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
18
19
|
onEnterReleaseHandler: () => void;
|
|
19
20
|
onBackPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
20
21
|
onArrowPressHandler: (direction: import("../../../external/spatial-navigation/utils").Direction, details: import("../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -50,11 +51,12 @@ declare const _default: {
|
|
|
50
51
|
parentFocusKey: string;
|
|
51
52
|
};
|
|
52
53
|
setFocus: (focusKey: string) => void;
|
|
53
|
-
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?:
|
|
54
|
+
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
54
55
|
stealFocus: () => void;
|
|
55
56
|
onUpdateFocus: (focused: boolean) => void;
|
|
56
57
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
57
58
|
onEnterPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
59
|
+
onClickPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
58
60
|
onEnterReleaseHandler: () => void;
|
|
59
61
|
onBackPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
60
62
|
onArrowPressHandler: (direction: import("../../../external/spatial-navigation/utils").Direction, details: import("../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -4,7 +4,12 @@ import { withFocusable, } from '@/external/spatial-navigation';
|
|
|
4
4
|
import React from 'react';
|
|
5
5
|
class ActionButton extends React.Component {
|
|
6
6
|
render() {
|
|
7
|
-
|
|
7
|
+
const { children,
|
|
8
|
+
// spatial-navigation props (must not hit DOM)
|
|
9
|
+
focused: _focused, focusKey: _focusKey, parentFocusKey: _parentFocusKey, preferredChildFocusKey: _preferredChildFocusKey, forgetLastFocusedChild: _forgetLastFocusedChild, trackChildren: _trackChildren, autoRestoreFocus: _autoRestoreFocus, blockNavigationOut: _blockNavigationOut, hasFocusedChild: _hasFocusedChild, focusable: _focusable, onEnterPress: _onEnterPress, onEnterRelease: _onEnterRelease, onBackPress: _onBackPress, onArrowPress: _onArrowPress, onBecameFocused: _onBecameFocused, onBecameBlurred: _onBecameBlurred,
|
|
10
|
+
// injected/internal props (also must not hit DOM)
|
|
11
|
+
realFocusKey: _realFocusKey, setFocus: _setFocus, navigateByDirection: _navigateByDirection, stealFocus: _stealFocus, onUpdateFocus: _onUpdateFocus, onUpdateHasFocusedChild: _onUpdateHasFocusedChild, ...buttonProps } = this.props;
|
|
12
|
+
return (React.createElement(BaseButton, { className: "action-button T05_ALT", ...buttonProps }, children));
|
|
8
13
|
}
|
|
9
14
|
}
|
|
10
15
|
export default withFocusable()(ActionButton);
|
|
@@ -39,7 +39,7 @@ class HeadshotImage extends React.Component {
|
|
|
39
39
|
this.mounted = false;
|
|
40
40
|
}
|
|
41
41
|
render() {
|
|
42
|
-
return (React.createElement(
|
|
42
|
+
return (React.createElement(React.Fragment, null,
|
|
43
43
|
!this.state.loaded && (React.createElement(Image, { crossOrigin: "anonymous", ...this.props, src: BASE_64_HEADSHOT_THUMBNAIL_FALLBACK, alt: "Player Headshot Loading" })),
|
|
44
44
|
React.createElement(Image, { crossOrigin: "anonymous", onLoad: this.onLoad, alt: "Athlete Thumbnail", style: {
|
|
45
45
|
...(this.props.style || {}),
|
|
@@ -20,11 +20,12 @@ declare const _default: {
|
|
|
20
20
|
parentFocusKey: string;
|
|
21
21
|
};
|
|
22
22
|
setFocus: (focusKey: string) => void;
|
|
23
|
-
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?:
|
|
23
|
+
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
24
24
|
stealFocus: () => void;
|
|
25
25
|
onUpdateFocus: (focused: boolean) => void;
|
|
26
26
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
27
27
|
onEnterPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
28
|
+
onClickPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
28
29
|
onEnterReleaseHandler: () => void;
|
|
29
30
|
onBackPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
30
31
|
onArrowPressHandler: (direction: import("../../../external/spatial-navigation/utils").Direction, details: import("../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -60,11 +61,12 @@ declare const _default: {
|
|
|
60
61
|
parentFocusKey: string;
|
|
61
62
|
};
|
|
62
63
|
setFocus: (focusKey: string) => void;
|
|
63
|
-
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?:
|
|
64
|
+
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
64
65
|
stealFocus: () => void;
|
|
65
66
|
onUpdateFocus: (focused: boolean) => void;
|
|
66
67
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
67
68
|
onEnterPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
69
|
+
onClickPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
68
70
|
onEnterReleaseHandler: () => void;
|
|
69
71
|
onBackPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
70
72
|
onArrowPressHandler: (direction: import("../../../external/spatial-navigation/utils").Direction, details: import("../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -15,7 +15,7 @@ class PanelNavButton extends React.Component {
|
|
|
15
15
|
} },
|
|
16
16
|
React.createElement(BaseButton, null,
|
|
17
17
|
React.createElement(Icon, { iconName: iconName, height: 36, width: 36 })),
|
|
18
|
-
React.createElement("div", { className: "FONT_BOLD" }, children)));
|
|
18
|
+
React.createElement("div", { className: "panel-nav-label FONT_BOLD" }, children)));
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
Object.defineProperty(PanelNavButton, "displayName", {
|
|
@@ -10,11 +10,12 @@ declare const _default: {
|
|
|
10
10
|
parentFocusKey: string;
|
|
11
11
|
};
|
|
12
12
|
setFocus: (focusKey: string) => void;
|
|
13
|
-
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?:
|
|
13
|
+
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
14
14
|
stealFocus: () => void;
|
|
15
15
|
onUpdateFocus: (focused: boolean) => void;
|
|
16
16
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
17
17
|
onEnterPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
18
|
+
onClickPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
18
19
|
onEnterReleaseHandler: () => void;
|
|
19
20
|
onBackPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
20
21
|
onArrowPressHandler: (direction: import("../../../external/spatial-navigation/utils").Direction, details: import("../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -50,11 +51,12 @@ declare const _default: {
|
|
|
50
51
|
parentFocusKey: string;
|
|
51
52
|
};
|
|
52
53
|
setFocus: (focusKey: string) => void;
|
|
53
|
-
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?:
|
|
54
|
+
navigateByDirection: (direction: import("../../../external/spatial-navigation/utils").Direction, details?: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
54
55
|
stealFocus: () => void;
|
|
55
56
|
onUpdateFocus: (focused: boolean) => void;
|
|
56
57
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
57
58
|
onEnterPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
59
|
+
onClickPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
58
60
|
onEnterReleaseHandler: () => void;
|
|
59
61
|
onBackPressHandler: (details: import("../../../external/spatial-navigation/utils").Details) => void;
|
|
60
62
|
onArrowPressHandler: (direction: import("../../../external/spatial-navigation/utils").Direction, details: import("../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
/// <reference types="prop-types" />
|
|
2
1
|
import React from 'react';
|
|
3
2
|
import './SegmentController.styles.css';
|
|
4
|
-
import { Direction, Layout } from '@/external/spatial-navigation/utils';
|
|
5
|
-
import { WithFocusableProps } from '@/external/spatial-navigation';
|
|
6
3
|
export type SegmentItem = {
|
|
7
4
|
title: string;
|
|
8
5
|
onEnter: () => void;
|
|
@@ -11,20 +8,5 @@ interface SegmentControllerProps {
|
|
|
11
8
|
backgroundColor?: string;
|
|
12
9
|
items: SegmentItem[];
|
|
13
10
|
}
|
|
14
|
-
declare
|
|
15
|
-
context: import("@/components/core/ScrollableContainer/ScrollableContainer").ScrollableContainerContextType;
|
|
16
|
-
static contextTypes: {
|
|
17
|
-
refsMap: import("prop-types").Requireable<(HTMLElement | null | undefined)[]>;
|
|
18
|
-
setRef: import("prop-types").Requireable<(...args: any[]) => any>;
|
|
19
|
-
scrollToFocusedElement: import("prop-types").Requireable<(...args: any[]) => any>;
|
|
20
|
-
};
|
|
21
|
-
state: {
|
|
22
|
-
activeIndex: number;
|
|
23
|
-
lastActiveIndex: number;
|
|
24
|
-
};
|
|
25
|
-
onBecameFocused: (item: SegmentItem, i: number) => (layout: Layout) => void;
|
|
26
|
-
onEnterPress: (item: SegmentItem) => () => void;
|
|
27
|
-
handleArrowPress: (index: number) => (direction: Direction, _props: WithFocusableProps) => void;
|
|
28
|
-
render(): JSX.Element;
|
|
29
|
-
}
|
|
11
|
+
declare const SegmentController: React.FC<SegmentControllerProps>;
|
|
30
12
|
export default SegmentController;
|
|
@@ -1,76 +1,35 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
2
|
import SegmentButton from '@/components/molecules/SegmentButton';
|
|
3
3
|
import './SegmentController.styles.css';
|
|
4
|
-
import {
|
|
4
|
+
import { useScrollableContainer } from '@/components/core/ScrollableContainer';
|
|
5
5
|
import SDK from '@/index';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
activeIndex: i,
|
|
36
|
-
lastActiveIndex: null,
|
|
37
|
-
});
|
|
38
|
-
item.onEnter();
|
|
39
|
-
this.context.scrollToFocusedElement(layout);
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
Object.defineProperty(this, "onEnterPress", {
|
|
43
|
-
enumerable: true,
|
|
44
|
-
configurable: true,
|
|
45
|
-
writable: true,
|
|
46
|
-
value: (item) => () => {
|
|
47
|
-
item.onEnter();
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
Object.defineProperty(this, "handleArrowPress", {
|
|
51
|
-
enumerable: true,
|
|
52
|
-
configurable: true,
|
|
53
|
-
writable: true,
|
|
54
|
-
value: (index) => (direction, _props) => {
|
|
55
|
-
if (direction === 'down' || direction === 'up') {
|
|
56
|
-
this.setState({ lastActiveIndex: this.state.activeIndex });
|
|
57
|
-
}
|
|
58
|
-
if (direction === 'left' && index === 0) {
|
|
59
|
-
SDK.getMaestroEventViewModel().deliverFocus();
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
render() {
|
|
65
|
-
return (React.createElement("div", { className: "segment-controller", style: {
|
|
66
|
-
backgroundColor: this.props.backgroundColor,
|
|
67
|
-
} }, this.props.items.map((item, index) => (React.createElement(SegmentButton, { focusKey: `segment-controller-${index}`, key: item.title, onBecameFocused: this.onBecameFocused(item, index), onArrowPress: this.handleArrowPress(index), onEnterPress: this.onEnterPress(item), active: this.state.activeIndex === index }, item.title)))));
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
Object.defineProperty(SegmentController, "contextTypes", {
|
|
71
|
-
enumerable: true,
|
|
72
|
-
configurable: true,
|
|
73
|
-
writable: true,
|
|
74
|
-
value: SCROLLABLE_CONTEXT_TYPE
|
|
75
|
-
});
|
|
6
|
+
const SegmentController = ({ backgroundColor, items, }) => {
|
|
7
|
+
const { scrollToFocusedElement } = useScrollableContainer();
|
|
8
|
+
const [activeIndex, setActiveIndex] = useState(0);
|
|
9
|
+
const [lastActiveIndex, setLastActiveIndex] = useState(0);
|
|
10
|
+
const onBecameFocused = (item, i) => (layout) => {
|
|
11
|
+
if (lastActiveIndex !== i && lastActiveIndex !== null) {
|
|
12
|
+
SDK.getMaestroEventViewModel().navigation.setFocus(`segment-controller-${lastActiveIndex}`);
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
setActiveIndex(i);
|
|
16
|
+
setLastActiveIndex(null);
|
|
17
|
+
item.onEnter();
|
|
18
|
+
scrollToFocusedElement(layout);
|
|
19
|
+
};
|
|
20
|
+
const onEnterPress = (item) => () => {
|
|
21
|
+
item.onEnter();
|
|
22
|
+
};
|
|
23
|
+
const handleArrowPress = (index) => (direction, _props) => {
|
|
24
|
+
if (direction === 'down' || direction === 'up') {
|
|
25
|
+
setLastActiveIndex(activeIndex);
|
|
26
|
+
}
|
|
27
|
+
if (direction === 'left' && index === 0) {
|
|
28
|
+
SDK.getMaestroEventViewModel().deliverFocus();
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
return (React.createElement("div", { className: "segment-controller", style: {
|
|
32
|
+
backgroundColor,
|
|
33
|
+
} }, items.map((item, index) => (React.createElement(SegmentButton, { focusKey: `segment-controller-${index}`, key: item.title, onBecameFocused: onBecameFocused(item, index), onArrowPress: handleArrowPress(index), onEnterPress: onEnterPress(item), active: activeIndex === index }, item.title)))));
|
|
34
|
+
};
|
|
76
35
|
export default SegmentController;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import SDK from '..';
|
|
2
|
-
import { KEY_PLAYS_RESPONSE_MOCK_DATA } from '../modules/key-plays/constants';
|
|
2
|
+
import { KEY_PLAYS_RESPONSE_MOCK_DATA } from '../modules/espn/key-plays/constants';
|
|
3
3
|
const playbackProgressIntervals = {};
|
|
4
4
|
let keyPlayClipError = true;
|
|
5
5
|
const LOGGED_IN_USER_SWID = '{45636D22-B82E-494E-B0BD-DBF25AB34BB5}';
|
|
@@ -20,7 +20,10 @@ const EVENT_ID = '401790363'; // fallback
|
|
|
20
20
|
*/
|
|
21
21
|
const init = async () => {
|
|
22
22
|
const keyplays = await (await fetch(`https://site.api.espn.com/apis/site/v2/sports/keyplays/${EVENT_ID}`)).json();
|
|
23
|
-
await SDK.userDidStartWatchingEvent(
|
|
23
|
+
await SDK.userDidStartWatchingEvent({
|
|
24
|
+
eventId: EVENT_ID,
|
|
25
|
+
delegate: eventDelegate,
|
|
26
|
+
});
|
|
24
27
|
SDK.getMaestroEventViewModel().startFocusManagement();
|
|
25
28
|
await SDK.getMaestroEventViewModel().updateKeyPlaysData(keyplays);
|
|
26
29
|
setTimeout(async () => {
|
|
@@ -52,10 +52,11 @@ class ReactRenderer {
|
|
|
52
52
|
ReactDOM.render(children, el);
|
|
53
53
|
},
|
|
54
54
|
unmount: () => {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
// Use the captured element reference so unmount still works even if
|
|
56
|
+
// the node was detached from the DOM.
|
|
57
|
+
ReactDOM.unmountComponentAtNode(el);
|
|
58
|
+
// Defensive cleanup in case any nodes remain.
|
|
59
|
+
el.innerHTML = '';
|
|
59
60
|
},
|
|
60
61
|
};
|
|
61
62
|
this.renderersMap.set(id, renderer);
|