@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
|
@@ -4,6 +4,7 @@ import './KeyPlaysView.styles.css';
|
|
|
4
4
|
import KeyPlayErrorStateView from './KeyPlayErrorStateView';
|
|
5
5
|
import SDK from '@/index';
|
|
6
6
|
import ScrollableContainer from '@/components/core/ScrollableContainer';
|
|
7
|
+
import { setupMaxHeightToBottom } from '@/hooks/useMaxHeightToBottom';
|
|
7
8
|
const STICKY_HEADER_HEIGHT = 32;
|
|
8
9
|
export class KeyPlays extends Component {
|
|
9
10
|
constructor(props) {
|
|
@@ -32,6 +33,12 @@ export class KeyPlays extends Component {
|
|
|
32
33
|
writable: true,
|
|
33
34
|
value: null
|
|
34
35
|
});
|
|
36
|
+
Object.defineProperty(this, "maxHeightCleanup", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
configurable: true,
|
|
39
|
+
writable: true,
|
|
40
|
+
value: null
|
|
41
|
+
});
|
|
35
42
|
Object.defineProperty(this, "vm", {
|
|
36
43
|
enumerable: true,
|
|
37
44
|
configurable: true,
|
|
@@ -46,7 +53,27 @@ export class KeyPlays extends Component {
|
|
|
46
53
|
await this.viewModel.playKeyPlay(index);
|
|
47
54
|
}
|
|
48
55
|
});
|
|
49
|
-
this
|
|
56
|
+
Object.defineProperty(this, "setContainerRef", {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
configurable: true,
|
|
59
|
+
writable: true,
|
|
60
|
+
value: (e) => {
|
|
61
|
+
if (e && !this.container) {
|
|
62
|
+
this.container = e;
|
|
63
|
+
}
|
|
64
|
+
if (this.container !== e) {
|
|
65
|
+
this.container = e;
|
|
66
|
+
if (this.maxHeightCleanup) {
|
|
67
|
+
this.maxHeightCleanup();
|
|
68
|
+
}
|
|
69
|
+
if (this.container) {
|
|
70
|
+
this.maxHeightCleanup = setupMaxHeightToBottom(() => this.container);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
this.vm = SDK.getMaestroEventViewModel()
|
|
76
|
+
.keyPlaysViewModel;
|
|
50
77
|
this.state = {
|
|
51
78
|
scrollableContainer: null,
|
|
52
79
|
playbackProgress: this.viewModel.currentClipPlaybackProgress.value ?? null,
|
|
@@ -75,18 +102,18 @@ export class KeyPlays extends Component {
|
|
|
75
102
|
this.setState({
|
|
76
103
|
scrollableContainer: this.container,
|
|
77
104
|
});
|
|
105
|
+
this.maxHeightCleanup = setupMaxHeightToBottom(() => this.container);
|
|
78
106
|
}
|
|
79
107
|
componentWillUnmount() {
|
|
80
108
|
this.playbackProgressUnsub && this.playbackProgressUnsub();
|
|
81
109
|
this.playbackIndexUnsub && this.playbackIndexUnsub();
|
|
82
110
|
this.itemsUnsub && this.itemsUnsub();
|
|
111
|
+
this.maxHeightCleanup && this.maxHeightCleanup();
|
|
83
112
|
}
|
|
84
113
|
render() {
|
|
85
114
|
const { playbackProgress, playbackIndex, items, scrollableContainer, } = this.state;
|
|
86
115
|
return (React.createElement(ScrollableContainer, { scrollableContainerRef: scrollableContainer, containerTopOffset: STICKY_HEADER_HEIGHT },
|
|
87
|
-
React.createElement("div", { ref:
|
|
88
|
-
this.container = el;
|
|
89
|
-
}, className: "key-plays-view" },
|
|
116
|
+
React.createElement("div", { ref: this.setContainerRef, className: "key-plays-view" },
|
|
90
117
|
items.map((section, sectionIndex) => (React.createElement("div", { key: `section-${sectionIndex}`, className: "key-plays-section" },
|
|
91
118
|
section.title && (React.createElement("h3", { className: "key-plays-section-title T10" }, section.title)),
|
|
92
119
|
React.createElement("div", { className: "key-plays-section-items" }, section.items.map((item) => {
|
|
@@ -121,7 +148,8 @@ export default class KeyPlaysWithErrorState extends Component {
|
|
|
121
148
|
await this.viewModel.userRequestedNewKeyPlaysData();
|
|
122
149
|
}
|
|
123
150
|
});
|
|
124
|
-
this.vm = SDK.getMaestroEventViewModel()
|
|
151
|
+
this.vm = SDK.getMaestroEventViewModel()
|
|
152
|
+
.keyPlaysViewModel;
|
|
125
153
|
this.state = {
|
|
126
154
|
errorState: this.viewModel.errorState.value,
|
|
127
155
|
};
|
|
@@ -17,7 +17,7 @@ declare class KeyPlaysViewModel {
|
|
|
17
17
|
items: Observable<KeyPlayItem[]>;
|
|
18
18
|
filteredItems: Observable<KeyPlayItem[]>;
|
|
19
19
|
analyticsService: AnalyticsService;
|
|
20
|
-
constructor();
|
|
20
|
+
constructor(analyticsService: AnalyticsService);
|
|
21
21
|
onUpdatePlayerTimeCode(playerTimeCode: number | null): void;
|
|
22
22
|
private filterItemsByPlayerTimeCode;
|
|
23
23
|
private shouldShowKeyPlay;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import SDK from '@/index';
|
|
2
2
|
import { Observable } from '@/helpers/Observable';
|
|
3
3
|
import { setImageDimensions } from '@/helpers/url';
|
|
4
|
-
import AnalyticsService from '@/services/AnalyticsService/AnalyticsService';
|
|
5
4
|
class KeyPlaysViewModel {
|
|
6
|
-
constructor() {
|
|
5
|
+
constructor(analyticsService) {
|
|
7
6
|
Object.defineProperty(this, "currentlyPlayingClipIndex", {
|
|
8
7
|
enumerable: true,
|
|
9
8
|
configurable: true,
|
|
@@ -52,7 +51,7 @@ class KeyPlaysViewModel {
|
|
|
52
51
|
writable: true,
|
|
53
52
|
value: void 0
|
|
54
53
|
});
|
|
55
|
-
this.analyticsService =
|
|
54
|
+
this.analyticsService = analyticsService;
|
|
56
55
|
}
|
|
57
56
|
onUpdatePlayerTimeCode(playerTimeCode) {
|
|
58
57
|
this.filterItemsByPlayerTimeCode(playerTimeCode);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import NetworkManager from '
|
|
2
|
-
import { IShopResponse } from '../
|
|
3
|
-
import { ResponseWithHeaders } from '
|
|
1
|
+
import NetworkManager from '../../../../services/NetworkManager/NetworkManager';
|
|
2
|
+
import { IShopResponse } from '../types';
|
|
3
|
+
import { ResponseWithHeaders } from '../../../../services/NetworkManager/types';
|
|
4
4
|
/**
|
|
5
5
|
* Service for handling shop-related API calls
|
|
6
6
|
*/
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { HttpMethod } from '
|
|
2
|
-
import NetworkManagerFactory from './NetworkManager/NetworkManagerFactory';
|
|
1
|
+
import NetworkManager, { HttpMethod, } from '../../../../services/NetworkManager/NetworkManager';
|
|
3
2
|
/**
|
|
4
3
|
* Service for handling shop-related API calls
|
|
5
4
|
*/
|
|
@@ -18,9 +17,8 @@ class ShopService {
|
|
|
18
17
|
value: void 0
|
|
19
18
|
});
|
|
20
19
|
this.eventId = eventId;
|
|
21
|
-
this.networkManager =
|
|
20
|
+
this.networkManager = new NetworkManager({
|
|
22
21
|
externalBaseURL: 'https://site.api.espn.com',
|
|
23
|
-
serviceType: 'shop',
|
|
24
22
|
});
|
|
25
23
|
}
|
|
26
24
|
/**
|
|
@@ -4,6 +4,7 @@ import { WithFocusableProps } from '@/external/spatial-navigation';
|
|
|
4
4
|
export type ProductDetailViewProps = {
|
|
5
5
|
product: IShopProduct | IShopBrowseCard;
|
|
6
6
|
focusKey: string;
|
|
7
|
+
onBecomeFocused?: () => void;
|
|
7
8
|
};
|
|
8
9
|
declare const ProductDetailView: (props: ProductDetailViewProps & WithFocusableProps) => JSX.Element;
|
|
9
10
|
export default ProductDetailView;
|
|
@@ -19,6 +19,7 @@ declare class ShopView extends Component<{}, State> {
|
|
|
19
19
|
private isDataLoadingListener;
|
|
20
20
|
private errorStateListener;
|
|
21
21
|
private promoDataListener;
|
|
22
|
+
private maxHeightCleanup;
|
|
22
23
|
private vm;
|
|
23
24
|
constructor(props: {});
|
|
24
25
|
get viewModel(): ShopViewModel;
|
|
@@ -26,10 +27,12 @@ declare class ShopView extends Component<{}, State> {
|
|
|
26
27
|
componentWillUnmount(): void;
|
|
27
28
|
clearTabLoadFailure: () => void;
|
|
28
29
|
onArrowPress: (d: Direction) => void;
|
|
30
|
+
onBecameFocused: () => void;
|
|
29
31
|
openItemDetail: (selectedItem: IShopProduct | IShopBrowseCard, selectedShopSection: IShopSection, selectedItemFocusKey: string) => void;
|
|
30
32
|
closeProductDetail: () => void;
|
|
31
33
|
trackPromoEnterPress: () => void;
|
|
32
34
|
renderContent: () => JSX.Element | JSX.Element[];
|
|
35
|
+
setContainerRef: (e: HTMLDivElement | null) => void;
|
|
33
36
|
render(): JSX.Element;
|
|
34
37
|
}
|
|
35
38
|
export default ShopView;
|
|
@@ -7,6 +7,7 @@ import { isShopProduct, } from '../types';
|
|
|
7
7
|
import ShopSection from './components/ShopSection';
|
|
8
8
|
import ProductDetailView from './ProductDetailView';
|
|
9
9
|
import ShopPromoView from './components/ShopPromoView';
|
|
10
|
+
import { setupMaxHeightToBottom } from '@/hooks/useMaxHeightToBottom';
|
|
10
11
|
class ShopView extends Component {
|
|
11
12
|
constructor(props) {
|
|
12
13
|
super(props);
|
|
@@ -40,6 +41,12 @@ class ShopView extends Component {
|
|
|
40
41
|
writable: true,
|
|
41
42
|
value: null
|
|
42
43
|
});
|
|
44
|
+
Object.defineProperty(this, "maxHeightCleanup", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
configurable: true,
|
|
47
|
+
writable: true,
|
|
48
|
+
value: null
|
|
49
|
+
});
|
|
43
50
|
Object.defineProperty(this, "vm", {
|
|
44
51
|
enumerable: true,
|
|
45
52
|
configurable: true,
|
|
@@ -64,6 +71,16 @@ class ShopView extends Component {
|
|
|
64
71
|
}
|
|
65
72
|
}
|
|
66
73
|
});
|
|
74
|
+
Object.defineProperty(this, "onBecameFocused", {
|
|
75
|
+
enumerable: true,
|
|
76
|
+
configurable: true,
|
|
77
|
+
writable: true,
|
|
78
|
+
value: () => {
|
|
79
|
+
if (this.container) {
|
|
80
|
+
this.container.scrollTop = 0;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
});
|
|
67
84
|
Object.defineProperty(this, "openItemDetail", {
|
|
68
85
|
enumerable: true,
|
|
69
86
|
configurable: true,
|
|
@@ -113,7 +130,7 @@ class ShopView extends Component {
|
|
|
113
130
|
const { sections, errorState, selectedItem, promoData } = this.state;
|
|
114
131
|
// Show product detail view if a product is selected
|
|
115
132
|
if (selectedItem) {
|
|
116
|
-
return (React.createElement(ProductDetailView, { product: selectedItem, onEnterPress: this.closeProductDetail, onArrowPress: this.onArrowPress, focusKey: "product-detail-view" }));
|
|
133
|
+
return (React.createElement(ProductDetailView, { product: selectedItem, onBecameFocused: this.onBecameFocused, onEnterPress: this.closeProductDetail, onArrowPress: this.onArrowPress, focusKey: "product-detail-view" }));
|
|
117
134
|
}
|
|
118
135
|
// Show error state if tab load failed
|
|
119
136
|
if (errorState === 'tabLoadFailure') {
|
|
@@ -127,7 +144,27 @@ class ShopView extends Component {
|
|
|
127
144
|
return sections.map((section, index) => (React.createElement(ShopSection, { key: index, sectionIndex: index, section: section, onArrowPress: this.onArrowPress, onItemClick: this.openItemDetail })));
|
|
128
145
|
}
|
|
129
146
|
});
|
|
130
|
-
this
|
|
147
|
+
Object.defineProperty(this, "setContainerRef", {
|
|
148
|
+
enumerable: true,
|
|
149
|
+
configurable: true,
|
|
150
|
+
writable: true,
|
|
151
|
+
value: (e) => {
|
|
152
|
+
if (e && !this.state.container) {
|
|
153
|
+
this.setState({ container: e });
|
|
154
|
+
}
|
|
155
|
+
if (this.container !== e) {
|
|
156
|
+
this.container = e;
|
|
157
|
+
if (this.maxHeightCleanup) {
|
|
158
|
+
this.maxHeightCleanup();
|
|
159
|
+
}
|
|
160
|
+
if (this.container) {
|
|
161
|
+
this.maxHeightCleanup = setupMaxHeightToBottom(() => this.container);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
this.vm = SDK.getMaestroEventViewModel()
|
|
167
|
+
.shopViewModel;
|
|
131
168
|
this.state = {
|
|
132
169
|
container: null,
|
|
133
170
|
sections: this.viewModel.sections.value,
|
|
@@ -149,6 +186,7 @@ class ShopView extends Component {
|
|
|
149
186
|
this.setState({
|
|
150
187
|
container: this.container,
|
|
151
188
|
});
|
|
189
|
+
this.maxHeightCleanup = setupMaxHeightToBottom(() => this.container);
|
|
152
190
|
this.sectionsListener = this.viewModel.sections.subscribe((sections) => {
|
|
153
191
|
this.setState({ sections });
|
|
154
192
|
});
|
|
@@ -169,12 +207,15 @@ class ShopView extends Component {
|
|
|
169
207
|
this.isDataLoadingListener && this.isDataLoadingListener();
|
|
170
208
|
this.errorStateListener && this.errorStateListener();
|
|
171
209
|
this.promoDataListener && this.promoDataListener();
|
|
210
|
+
this.maxHeightCleanup && this.maxHeightCleanup();
|
|
172
211
|
// Clean up the view model
|
|
173
212
|
this.viewModel.cleanup();
|
|
174
213
|
}
|
|
175
214
|
render() {
|
|
176
|
-
return (React.createElement(ScrollableContainer, { scrollableContainerRef: this.state.container, containerTopOffset: 40, "data-has-product-selected": !!this.state.selectedItem, "data-has-error": this.state.errorState !== 'none'
|
|
177
|
-
|
|
215
|
+
return (React.createElement(ScrollableContainer, { scrollableContainerRef: this.state.container, containerTopOffset: 40, "data-has-product-selected": !!this.state.selectedItem, "data-has-error": this.state.errorState !== 'none', style: {
|
|
216
|
+
maxHeight: 'auto',
|
|
217
|
+
} },
|
|
218
|
+
React.createElement("div", { className: "shop-view", ref: this.setContainerRef },
|
|
178
219
|
this.renderContent(),
|
|
179
220
|
React.createElement("div", { className: "shop-bottom-padding" }))));
|
|
180
221
|
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/// <reference types="prop-types" />
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import './BrowseCard.styles.css';
|
|
4
|
+
import { WithFocusableProps } from '@/external/spatial-navigation';
|
|
5
|
+
import { IShopBrowseCard } from '../../../types';
|
|
6
|
+
export type BrowseCardProps = {
|
|
7
|
+
browseCard: IShopBrowseCard;
|
|
8
|
+
};
|
|
9
|
+
export declare class BrowseCardView extends React.Component<BrowseCardProps & WithFocusableProps> {
|
|
10
|
+
render(): JSX.Element;
|
|
11
|
+
}
|
|
12
|
+
declare const _default: {
|
|
13
|
+
new (props: (BrowseCardProps & WithFocusableProps) | Readonly<BrowseCardProps & WithFocusableProps>): {
|
|
14
|
+
state: import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState;
|
|
15
|
+
navigation: import("../../../../../../external/spatial-navigation/spatialNavigation").default;
|
|
16
|
+
getChildContext(): {
|
|
17
|
+
parentFocusKey: string;
|
|
18
|
+
};
|
|
19
|
+
setFocus: (focusKey: string) => void;
|
|
20
|
+
navigateByDirection: (direction: import("../../../../../../external/spatial-navigation/utils").Direction, details?: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
21
|
+
stealFocus: () => void;
|
|
22
|
+
onUpdateFocus: (focused: boolean) => void;
|
|
23
|
+
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
24
|
+
onEnterPressHandler: (details: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
25
|
+
onClickPressHandler: (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<BrowseCardProps & WithFocusableProps, string | React.JSXElementConstructor<any>>;
|
|
35
|
+
context: any;
|
|
36
|
+
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: Readonly<BrowseCardProps & WithFocusableProps>) => import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null) | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null, callback?: (() => void) | undefined): void;
|
|
37
|
+
forceUpdate(callback?: (() => void) | undefined): void;
|
|
38
|
+
readonly props: Readonly<BrowseCardProps & WithFocusableProps> & Readonly<{
|
|
39
|
+
children?: React.ReactNode;
|
|
40
|
+
}>;
|
|
41
|
+
refs: {
|
|
42
|
+
[key: string]: React.ReactInstance;
|
|
43
|
+
};
|
|
44
|
+
shouldComponentUpdate?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): boolean;
|
|
45
|
+
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
|
46
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<BrowseCardProps & WithFocusableProps>, prevState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>): any;
|
|
47
|
+
componentWillMount?(): void;
|
|
48
|
+
UNSAFE_componentWillMount?(): void;
|
|
49
|
+
componentWillReceiveProps?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextContext: any): void;
|
|
50
|
+
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextContext: any): void;
|
|
51
|
+
componentWillUpdate?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
52
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
53
|
+
};
|
|
54
|
+
new (props: BrowseCardProps & WithFocusableProps, context: any): {
|
|
55
|
+
state: import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState;
|
|
56
|
+
navigation: import("../../../../../../external/spatial-navigation/spatialNavigation").default;
|
|
57
|
+
getChildContext(): {
|
|
58
|
+
parentFocusKey: string;
|
|
59
|
+
};
|
|
60
|
+
setFocus: (focusKey: string) => void;
|
|
61
|
+
navigateByDirection: (direction: import("../../../../../../external/spatial-navigation/utils").Direction, details?: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
62
|
+
stealFocus: () => void;
|
|
63
|
+
onUpdateFocus: (focused: boolean) => void;
|
|
64
|
+
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
65
|
+
onEnterPressHandler: (details: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
66
|
+
onClickPressHandler: (details: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
67
|
+
onEnterReleaseHandler: () => void;
|
|
68
|
+
onBackPressHandler: (details: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
69
|
+
onArrowPressHandler: (direction: import("../../../../../../external/spatial-navigation/utils").Direction, details: import("../../../../../../external/spatial-navigation/utils").Details) => boolean | void;
|
|
70
|
+
onBecameFocusedHandler: (layout: import("../../../../../../external/spatial-navigation/utils").Layout, details: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
71
|
+
onBecameBlurredHandler: (layout: import("../../../../../../external/spatial-navigation/utils").Layout, details: import("../../../../../../external/spatial-navigation/utils").Details) => void;
|
|
72
|
+
componentDidMount(): void;
|
|
73
|
+
componentDidUpdate(): void;
|
|
74
|
+
componentWillUnmount(): void;
|
|
75
|
+
render(): React.ReactElement<BrowseCardProps & WithFocusableProps, string | React.JSXElementConstructor<any>>;
|
|
76
|
+
context: any;
|
|
77
|
+
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: Readonly<BrowseCardProps & WithFocusableProps>) => import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null) | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null, callback?: (() => void) | undefined): void;
|
|
78
|
+
forceUpdate(callback?: (() => void) | undefined): void;
|
|
79
|
+
readonly props: Readonly<BrowseCardProps & WithFocusableProps> & Readonly<{
|
|
80
|
+
children?: React.ReactNode;
|
|
81
|
+
}>;
|
|
82
|
+
refs: {
|
|
83
|
+
[key: string]: React.ReactInstance;
|
|
84
|
+
};
|
|
85
|
+
shouldComponentUpdate?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): boolean;
|
|
86
|
+
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
|
87
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<BrowseCardProps & WithFocusableProps>, prevState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>): any;
|
|
88
|
+
componentWillMount?(): void;
|
|
89
|
+
UNSAFE_componentWillMount?(): void;
|
|
90
|
+
componentWillReceiveProps?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextContext: any): void;
|
|
91
|
+
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextContext: any): void;
|
|
92
|
+
componentWillUpdate?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
93
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<BrowseCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
94
|
+
};
|
|
95
|
+
contextTypes: {
|
|
96
|
+
parentFocusKey: import("prop-types").Requireable<string>;
|
|
97
|
+
};
|
|
98
|
+
childContextTypes: {
|
|
99
|
+
parentFocusKey: import("prop-types").Requireable<string>;
|
|
100
|
+
};
|
|
101
|
+
contextType?: React.Context<any> | undefined;
|
|
102
|
+
};
|
|
103
|
+
export default _default;
|
|
@@ -16,7 +16,7 @@ export class BrowseCardView extends React.Component {
|
|
|
16
16
|
} },
|
|
17
17
|
React.createElement("div", { className: "browse-card-content" },
|
|
18
18
|
!!name && (React.createElement("div", { className: "browse-card-tagline T20 FONT_BOLD" }, name)),
|
|
19
|
-
React.createElement("div", { className: "browse-card-caption
|
|
19
|
+
React.createElement("div", { className: "browse-card-caption T05_ALT" }, caption || 'Browse all merch')),
|
|
20
20
|
image?.href && (React.createElement(Image, { src: image.href, width: 72, height: 72, alt: name || 'Logo', className: "browse-card-logo-image" }))));
|
|
21
21
|
}
|
|
22
22
|
}
|
|
@@ -12,17 +12,18 @@ export type ProductSummaryCardProps = {
|
|
|
12
12
|
};
|
|
13
13
|
declare const _default: {
|
|
14
14
|
new (props: (ProductSummaryCardProps & WithFocusableProps) | Readonly<ProductSummaryCardProps & WithFocusableProps>): {
|
|
15
|
-
state: import("
|
|
16
|
-
navigation: import("
|
|
15
|
+
state: import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState;
|
|
16
|
+
navigation: import("../../../../../../external/spatial-navigation/spatialNavigation").default;
|
|
17
17
|
getChildContext(): {
|
|
18
18
|
parentFocusKey: string;
|
|
19
19
|
};
|
|
20
20
|
setFocus: (focusKey: string) => void;
|
|
21
|
-
navigateByDirection: (direction: Direction, details?:
|
|
21
|
+
navigateByDirection: (direction: Direction, details?: import("@/external/spatial-navigation/utils").Details) => void;
|
|
22
22
|
stealFocus: () => void;
|
|
23
23
|
onUpdateFocus: (focused: boolean) => void;
|
|
24
24
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
25
25
|
onEnterPressHandler: (details: import("@/external/spatial-navigation/utils").Details) => void;
|
|
26
|
+
onClickPressHandler: (details: import("@/external/spatial-navigation/utils").Details) => void;
|
|
26
27
|
onEnterReleaseHandler: () => void;
|
|
27
28
|
onBackPressHandler: (details: import("@/external/spatial-navigation/utils").Details) => void;
|
|
28
29
|
onArrowPressHandler: (direction: Direction, details: import("@/external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -33,7 +34,7 @@ declare const _default: {
|
|
|
33
34
|
componentWillUnmount(): void;
|
|
34
35
|
render(): React.ReactElement<ProductSummaryCardProps & WithFocusableProps, string | React.JSXElementConstructor<any>>;
|
|
35
36
|
context: any;
|
|
36
|
-
setState<K extends keyof import("
|
|
37
|
+
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: Readonly<ProductSummaryCardProps & WithFocusableProps>) => import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null) | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null, callback?: (() => void) | undefined): void;
|
|
37
38
|
forceUpdate(callback?: (() => void) | undefined): void;
|
|
38
39
|
readonly props: Readonly<ProductSummaryCardProps & WithFocusableProps> & Readonly<{
|
|
39
40
|
children?: React.ReactNode;
|
|
@@ -41,28 +42,29 @@ declare const _default: {
|
|
|
41
42
|
refs: {
|
|
42
43
|
[key: string]: React.ReactInstance;
|
|
43
44
|
};
|
|
44
|
-
shouldComponentUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("
|
|
45
|
+
shouldComponentUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): boolean;
|
|
45
46
|
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
|
46
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, prevState: Readonly<import("
|
|
47
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, prevState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>): any;
|
|
47
48
|
componentWillMount?(): void;
|
|
48
49
|
UNSAFE_componentWillMount?(): void;
|
|
49
50
|
componentWillReceiveProps?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextContext: any): void;
|
|
50
51
|
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextContext: any): void;
|
|
51
|
-
componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("
|
|
52
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("
|
|
52
|
+
componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
53
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
53
54
|
};
|
|
54
55
|
new (props: ProductSummaryCardProps & WithFocusableProps, context: any): {
|
|
55
|
-
state: import("
|
|
56
|
-
navigation: import("
|
|
56
|
+
state: import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState;
|
|
57
|
+
navigation: import("../../../../../../external/spatial-navigation/spatialNavigation").default;
|
|
57
58
|
getChildContext(): {
|
|
58
59
|
parentFocusKey: string;
|
|
59
60
|
};
|
|
60
61
|
setFocus: (focusKey: string) => void;
|
|
61
|
-
navigateByDirection: (direction: Direction, details?:
|
|
62
|
+
navigateByDirection: (direction: Direction, details?: import("@/external/spatial-navigation/utils").Details) => void;
|
|
62
63
|
stealFocus: () => void;
|
|
63
64
|
onUpdateFocus: (focused: boolean) => void;
|
|
64
65
|
onUpdateHasFocusedChild: (hasFocusedChild: boolean) => void;
|
|
65
66
|
onEnterPressHandler: (details: import("@/external/spatial-navigation/utils").Details) => void;
|
|
67
|
+
onClickPressHandler: (details: import("@/external/spatial-navigation/utils").Details) => void;
|
|
66
68
|
onEnterReleaseHandler: () => void;
|
|
67
69
|
onBackPressHandler: (details: import("@/external/spatial-navigation/utils").Details) => void;
|
|
68
70
|
onArrowPressHandler: (direction: Direction, details: import("@/external/spatial-navigation/utils").Details) => boolean | void;
|
|
@@ -73,7 +75,7 @@ declare const _default: {
|
|
|
73
75
|
componentWillUnmount(): void;
|
|
74
76
|
render(): React.ReactElement<ProductSummaryCardProps & WithFocusableProps, string | React.JSXElementConstructor<any>>;
|
|
75
77
|
context: any;
|
|
76
|
-
setState<K extends keyof import("
|
|
78
|
+
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: Readonly<ProductSummaryCardProps & WithFocusableProps>) => import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null) | Pick<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState, K> | null, callback?: (() => void) | undefined): void;
|
|
77
79
|
forceUpdate(callback?: (() => void) | undefined): void;
|
|
78
80
|
readonly props: Readonly<ProductSummaryCardProps & WithFocusableProps> & Readonly<{
|
|
79
81
|
children?: React.ReactNode;
|
|
@@ -81,15 +83,15 @@ declare const _default: {
|
|
|
81
83
|
refs: {
|
|
82
84
|
[key: string]: React.ReactInstance;
|
|
83
85
|
};
|
|
84
|
-
shouldComponentUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("
|
|
86
|
+
shouldComponentUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): boolean;
|
|
85
87
|
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
|
86
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, prevState: Readonly<import("
|
|
88
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, prevState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>): any;
|
|
87
89
|
componentWillMount?(): void;
|
|
88
90
|
UNSAFE_componentWillMount?(): void;
|
|
89
91
|
componentWillReceiveProps?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextContext: any): void;
|
|
90
92
|
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextContext: any): void;
|
|
91
|
-
componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("
|
|
92
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("
|
|
93
|
+
componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
94
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<ProductSummaryCardProps & WithFocusableProps>, nextState: Readonly<import("../../../../../../external/spatial-navigation/withFocusable").WithFocusableState>, nextContext: any): void;
|
|
93
95
|
};
|
|
94
96
|
contextTypes: {
|
|
95
97
|
parentFocusKey: import("prop-types").Requireable<string>;
|
|
@@ -6,9 +6,9 @@ const ShopPromoView = (props) => {
|
|
|
6
6
|
const promo = props.promoData;
|
|
7
7
|
return (React.createElement("div", { className: "shop-promo-view focus-ring T20", "data-focused": props.focused, style: { backgroundImage: `url(${promo.detail?.backgroundImage})` } },
|
|
8
8
|
React.createElement(Image, { src: promo.image?.href, alt: "Promo Logo", className: "shop-promo-logo" }),
|
|
9
|
-
React.createElement("div", { className: "shop-promo-title T30" }, promo.detail?.title),
|
|
9
|
+
React.createElement("div", { className: "shop-promo-title T30 FONT_BOLD" }, promo.detail?.title),
|
|
10
10
|
React.createElement(Image, { src: promo.detail?.qrCode, alt: "QR Code", className: "shop-promo-qr-code" }),
|
|
11
|
-
React.createElement("p", { className: "shop-promo-description T20" }, promo.detail?.link?.text)));
|
|
11
|
+
React.createElement("p", { className: "shop-promo-description T20 FONT_BOLD" }, promo.detail?.link?.text)));
|
|
12
12
|
};
|
|
13
13
|
const FocusablePromoView = withFocusable()(ShopPromoView);
|
|
14
14
|
const ShopPromoViewWrapper = (props) => {
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './ShopSection.styles.css';
|
|
3
|
+
import { IShopBrowseCard, IShopProduct, IShopSection } from '../../../types';
|
|
4
|
+
import { Direction } from '@/external/spatial-navigation/utils';
|
|
5
|
+
export type ShopSectionProps = {
|
|
6
|
+
sectionIndex: number;
|
|
7
|
+
section: IShopSection;
|
|
8
|
+
onArrowPress: (direction: Direction) => void;
|
|
9
|
+
onItemClick: (item: IShopProduct | IShopBrowseCard, section: IShopSection, focusKey: string) => void;
|
|
10
|
+
};
|
|
11
|
+
declare const ShopSection: React.FC<ShopSectionProps>;
|
|
12
|
+
export default ShopSection;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './ShopSection.styles.css';
|
|
3
|
+
import ProductSummaryCard from '../ProductSummaryCard';
|
|
4
|
+
import { useScrollableContainer } from '@/components/core/ScrollableContainer';
|
|
5
|
+
import FocusableItem from '@/components/core/ScrollableContainer/FocusableItem';
|
|
6
|
+
import BrowseCard from '../BrowseCard';
|
|
7
|
+
const ShopSection = ({ section, sectionIndex, onArrowPress, onItemClick, }) => {
|
|
8
|
+
const { scrollToFocusedElement } = useScrollableContainer();
|
|
9
|
+
const onBecameFocused = (layout) => {
|
|
10
|
+
scrollToFocusedElement(layout, {
|
|
11
|
+
offsetTop: 40,
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
const onEnterPress = (item, section, focusKey) => () => {
|
|
15
|
+
onItemClick(item, section, focusKey);
|
|
16
|
+
};
|
|
17
|
+
return (React.createElement("div", { className: "shop-section" },
|
|
18
|
+
React.createElement("h2", { className: "shop-section-title TEXT_200" }, section.title),
|
|
19
|
+
React.createElement("div", { className: "shop-section-items" }, section.items?.map((item, itemIndex) => {
|
|
20
|
+
const focusKey = `shop-section-${sectionIndex}-item-${itemIndex}`;
|
|
21
|
+
if (item.type === 'product') {
|
|
22
|
+
return (React.createElement(FocusableItem, { key: itemIndex },
|
|
23
|
+
React.createElement(ProductSummaryCard, { product: item, onEnterPress: onEnterPress(item, section, focusKey), onArrowPress: onArrowPress, onBecameFocused: onBecameFocused, focusKey: focusKey })));
|
|
24
|
+
}
|
|
25
|
+
else if (item.type === 'browse') {
|
|
26
|
+
return (React.createElement(FocusableItem, { key: itemIndex },
|
|
27
|
+
React.createElement(BrowseCard, { key: itemIndex, browseCard: item, onArrowPress: onArrowPress, onEnterPress: onEnterPress(item, section, focusKey), onBecameFocused: onBecameFocused, focusKey: focusKey })));
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
}))));
|
|
33
|
+
};
|
|
34
|
+
export default ShopSection;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Observable } from '
|
|
2
|
-
import
|
|
1
|
+
import { Observable } from '../../../../helpers/Observable';
|
|
2
|
+
import AnalyticsService from '@/services/AnalyticsService/AnalyticsService';
|
|
3
|
+
import { ViewModel } from '../../../../view-models/ViewModel';
|
|
3
4
|
import { IShopSection, IShopProduct, IShopBrowseCard, IShopDefaultItem } from '../types';
|
|
4
|
-
import { TestUseCase } from '@/interfaces/IMaestroEvent';
|
|
5
5
|
declare const SHOP_ERROR_STATE: {
|
|
6
6
|
readonly NONE: "none";
|
|
7
7
|
readonly TAB_LOAD_FAILURE: "tabLoadFailure";
|
|
@@ -24,7 +24,7 @@ export declare class ShopViewModel extends ViewModel {
|
|
|
24
24
|
private useMockData;
|
|
25
25
|
private mockDataType;
|
|
26
26
|
initialized: boolean;
|
|
27
|
-
constructor(eventId: string, options?: {
|
|
27
|
+
constructor(eventId: string, analyticsService: AnalyticsService, options?: {
|
|
28
28
|
useMockData?: boolean;
|
|
29
29
|
mockDataType?: 'nfl' | 'nba' | 'ncf' | 'empty' | 'single';
|
|
30
30
|
});
|
|
@@ -65,10 +65,6 @@ export declare class ShopViewModel extends ViewModel {
|
|
|
65
65
|
* Fetch mock data for testing
|
|
66
66
|
*/
|
|
67
67
|
private fetchMockData;
|
|
68
|
-
/**
|
|
69
|
-
* Simulate different use cases for testing
|
|
70
|
-
*/
|
|
71
|
-
simulateUseCase<T = any>(useCase: TestUseCase, data: T): void;
|
|
72
68
|
/**
|
|
73
69
|
* Clear tab load failure and retry
|
|
74
70
|
*/
|