@maestro_io/maestro-web-sdk 5.2.0 → 5.2.2

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.
Files changed (680) hide show
  1. package/README.md +25 -0
  2. package/dist/index.d.ts +4 -3
  3. package/dist/maestro-web-sdk.esm.js +3 -3
  4. package/dist/maestro-web-sdk.esm.js.map +1 -1
  5. package/dist/maestro-web-sdk.umd.js +3 -3
  6. package/dist/maestro-web-sdk.umd.js.map +1 -1
  7. package/package.json +1 -1
  8. package/dist/1.maestro-web-sdk.esm.js +0 -2
  9. package/dist/1.maestro-web-sdk.esm.js.map +0 -1
  10. package/dist/10.maestro-web-sdk.esm.js +0 -2
  11. package/dist/10.maestro-web-sdk.esm.js.map +0 -1
  12. package/dist/11.maestro-web-sdk.esm.js +0 -2
  13. package/dist/11.maestro-web-sdk.esm.js.map +0 -1
  14. package/dist/12.maestro-web-sdk.esm.js +0 -2
  15. package/dist/12.maestro-web-sdk.esm.js.map +0 -1
  16. package/dist/13.maestro-web-sdk.esm.js +0 -2
  17. package/dist/13.maestro-web-sdk.esm.js.map +0 -1
  18. package/dist/14.maestro-web-sdk.esm.js +0 -2
  19. package/dist/14.maestro-web-sdk.esm.js.map +0 -1
  20. package/dist/15.maestro-web-sdk.esm.js +0 -2
  21. package/dist/15.maestro-web-sdk.esm.js.map +0 -1
  22. package/dist/16.maestro-web-sdk.esm.js +0 -2
  23. package/dist/16.maestro-web-sdk.esm.js.map +0 -1
  24. package/dist/17.maestro-web-sdk.esm.js +0 -2
  25. package/dist/17.maestro-web-sdk.esm.js.map +0 -1
  26. package/dist/18.maestro-web-sdk.esm.js +0 -2
  27. package/dist/18.maestro-web-sdk.esm.js.map +0 -1
  28. package/dist/19.maestro-web-sdk.esm.js +0 -2
  29. package/dist/19.maestro-web-sdk.esm.js.map +0 -1
  30. package/dist/2.maestro-web-sdk.esm.js +0 -2
  31. package/dist/2.maestro-web-sdk.esm.js.map +0 -1
  32. package/dist/20.maestro-web-sdk.esm.js +0 -2
  33. package/dist/20.maestro-web-sdk.esm.js.map +0 -1
  34. package/dist/21.maestro-web-sdk.esm.js +0 -2
  35. package/dist/21.maestro-web-sdk.esm.js.map +0 -1
  36. package/dist/22.maestro-web-sdk.esm.js +0 -2
  37. package/dist/22.maestro-web-sdk.esm.js.map +0 -1
  38. package/dist/23.maestro-web-sdk.esm.js +0 -2
  39. package/dist/23.maestro-web-sdk.esm.js.map +0 -1
  40. package/dist/24.maestro-web-sdk.esm.js +0 -2
  41. package/dist/24.maestro-web-sdk.esm.js.map +0 -1
  42. package/dist/25.maestro-web-sdk.esm.js +0 -2
  43. package/dist/25.maestro-web-sdk.esm.js.map +0 -1
  44. package/dist/26.maestro-web-sdk.esm.js +0 -2
  45. package/dist/26.maestro-web-sdk.esm.js.map +0 -1
  46. package/dist/27.maestro-web-sdk.esm.js +0 -2
  47. package/dist/27.maestro-web-sdk.esm.js.map +0 -1
  48. package/dist/28.maestro-web-sdk.esm.js +0 -2
  49. package/dist/28.maestro-web-sdk.esm.js.map +0 -1
  50. package/dist/29.maestro-web-sdk.esm.js +0 -2
  51. package/dist/29.maestro-web-sdk.esm.js.map +0 -1
  52. package/dist/3.maestro-web-sdk.esm.js +0 -2
  53. package/dist/3.maestro-web-sdk.esm.js.map +0 -1
  54. package/dist/30.maestro-web-sdk.esm.js +0 -2
  55. package/dist/30.maestro-web-sdk.esm.js.map +0 -1
  56. package/dist/31.maestro-web-sdk.esm.js +0 -2
  57. package/dist/31.maestro-web-sdk.esm.js.map +0 -1
  58. package/dist/32.maestro-web-sdk.esm.js +0 -2
  59. package/dist/32.maestro-web-sdk.esm.js.map +0 -1
  60. package/dist/33.maestro-web-sdk.esm.js +0 -2
  61. package/dist/33.maestro-web-sdk.esm.js.map +0 -1
  62. package/dist/34.maestro-web-sdk.esm.js +0 -2
  63. package/dist/34.maestro-web-sdk.esm.js.map +0 -1
  64. package/dist/35.maestro-web-sdk.esm.js +0 -2
  65. package/dist/35.maestro-web-sdk.esm.js.map +0 -1
  66. package/dist/36.maestro-web-sdk.esm.js +0 -2
  67. package/dist/36.maestro-web-sdk.esm.js.map +0 -1
  68. package/dist/37.maestro-web-sdk.esm.js +0 -2
  69. package/dist/37.maestro-web-sdk.esm.js.map +0 -1
  70. package/dist/38.maestro-web-sdk.esm.js +0 -2
  71. package/dist/38.maestro-web-sdk.esm.js.map +0 -1
  72. package/dist/39.maestro-web-sdk.esm.js +0 -2
  73. package/dist/39.maestro-web-sdk.esm.js.map +0 -1
  74. package/dist/4.maestro-web-sdk.esm.js +0 -2
  75. package/dist/4.maestro-web-sdk.esm.js.map +0 -1
  76. package/dist/40.maestro-web-sdk.esm.js +0 -2
  77. package/dist/40.maestro-web-sdk.esm.js.map +0 -1
  78. package/dist/5.maestro-web-sdk.esm.js +0 -2
  79. package/dist/5.maestro-web-sdk.esm.js.map +0 -1
  80. package/dist/6.maestro-web-sdk.esm.js +0 -2
  81. package/dist/6.maestro-web-sdk.esm.js.map +0 -1
  82. package/dist/7.maestro-web-sdk.esm.js +0 -2
  83. package/dist/7.maestro-web-sdk.esm.js.map +0 -1
  84. package/dist/8.maestro-web-sdk.esm.js +0 -2
  85. package/dist/8.maestro-web-sdk.esm.js.map +0 -1
  86. package/dist/9.maestro-web-sdk.esm.js +0 -2
  87. package/dist/9.maestro-web-sdk.esm.js.map +0 -1
  88. package/dist/package.json +0 -94
  89. package/dist/src/components/atoms/BaseButton/BaseButton.d.ts +0 -7
  90. package/dist/src/components/atoms/BaseButton/BaseButton.js +0 -11
  91. package/dist/src/components/atoms/BaseButton/index.d.ts +0 -2
  92. package/dist/src/components/atoms/BaseButton/index.js +0 -2
  93. package/dist/src/components/atoms/Image/index.d.ts +0 -13
  94. package/dist/src/components/atoms/Image/index.js +0 -34
  95. package/dist/src/components/atoms/Rive/index.d.ts +0 -221
  96. package/dist/src/components/atoms/Rive/index.js +0 -53
  97. package/dist/src/components/atoms/SvgIcon/AddIcon.d.ts +0 -3
  98. package/dist/src/components/atoms/SvgIcon/AddIcon.js +0 -6
  99. package/dist/src/components/atoms/SvgIcon/BetGeneralIcon.d.ts +0 -3
  100. package/dist/src/components/atoms/SvgIcon/BetGeneralIcon.js +0 -9
  101. package/dist/src/components/atoms/SvgIcon/BetsIcon.d.ts +0 -3
  102. package/dist/src/components/atoms/SvgIcon/BetsIcon.js +0 -8
  103. package/dist/src/components/atoms/SvgIcon/BetsWarningIcon.d.ts +0 -7
  104. package/dist/src/components/atoms/SvgIcon/BetsWarningIcon.js +0 -11
  105. package/dist/src/components/atoms/SvgIcon/BuilderIcon.d.ts +0 -3
  106. package/dist/src/components/atoms/SvgIcon/BuilderIcon.js +0 -8
  107. package/dist/src/components/atoms/SvgIcon/ChatIcon.d.ts +0 -3
  108. package/dist/src/components/atoms/SvgIcon/ChatIcon.js +0 -6
  109. package/dist/src/components/atoms/SvgIcon/CheckmarkIcon.d.ts +0 -3
  110. package/dist/src/components/atoms/SvgIcon/CheckmarkIcon.js +0 -6
  111. package/dist/src/components/atoms/SvgIcon/CollapseIcon.d.ts +0 -3
  112. package/dist/src/components/atoms/SvgIcon/CollapseIcon.js +0 -6
  113. package/dist/src/components/atoms/SvgIcon/ExpandIcon.d.ts +0 -3
  114. package/dist/src/components/atoms/SvgIcon/ExpandIcon.js +0 -6
  115. package/dist/src/components/atoms/SvgIcon/FantasyIcon.d.ts +0 -7
  116. package/dist/src/components/atoms/SvgIcon/FantasyIcon.js +0 -15
  117. package/dist/src/components/atoms/SvgIcon/FlameIcon.d.ts +0 -7
  118. package/dist/src/components/atoms/SvgIcon/FlameIcon.js +0 -11
  119. package/dist/src/components/atoms/SvgIcon/FoxKeyPlaysIcon.d.ts +0 -3
  120. package/dist/src/components/atoms/SvgIcon/FoxKeyPlaysIcon.js +0 -7
  121. package/dist/src/components/atoms/SvgIcon/FoxMultiViewIcon.d.ts +0 -3
  122. package/dist/src/components/atoms/SvgIcon/FoxMultiViewIcon.js +0 -10
  123. package/dist/src/components/atoms/SvgIcon/FoxStatsIcon.d.ts +0 -3
  124. package/dist/src/components/atoms/SvgIcon/FoxStatsIcon.js +0 -7
  125. package/dist/src/components/atoms/SvgIcon/HelloWorldIcon.d.ts +0 -3
  126. package/dist/src/components/atoms/SvgIcon/HelloWorldIcon.js +0 -6
  127. package/dist/src/components/atoms/SvgIcon/Icon.d.ts +0 -15
  128. package/dist/src/components/atoms/SvgIcon/Icon.js +0 -70
  129. package/dist/src/components/atoms/SvgIcon/KeyPlaysIcon.d.ts +0 -6
  130. package/dist/src/components/atoms/SvgIcon/KeyPlaysIcon.js +0 -10
  131. package/dist/src/components/atoms/SvgIcon/MobilePhoneIcon.d.ts +0 -7
  132. package/dist/src/components/atoms/SvgIcon/MobilePhoneIcon.js +0 -11
  133. package/dist/src/components/atoms/SvgIcon/PlayIcon.d.ts +0 -6
  134. package/dist/src/components/atoms/SvgIcon/PlayIcon.js +0 -8
  135. package/dist/src/components/atoms/SvgIcon/ShopIcon.d.ts +0 -5
  136. package/dist/src/components/atoms/SvgIcon/ShopIcon.js +0 -7
  137. package/dist/src/components/atoms/SvgIcon/ShopifyIcon.d.ts +0 -3
  138. package/dist/src/components/atoms/SvgIcon/ShopifyIcon.js +0 -6
  139. package/dist/src/components/atoms/SvgIcon/StatsIcon.d.ts +0 -6
  140. package/dist/src/components/atoms/SvgIcon/StatsIcon.js +0 -12
  141. package/dist/src/components/atoms/SvgIcon/TimesIcon.d.ts +0 -3
  142. package/dist/src/components/atoms/SvgIcon/TimesIcon.js +0 -6
  143. package/dist/src/components/atoms/SvgIcon/WarningIcon.d.ts +0 -6
  144. package/dist/src/components/atoms/SvgIcon/WarningIcon.js +0 -8
  145. package/dist/src/components/atoms/SvgIcon/index.d.ts +0 -2
  146. package/dist/src/components/atoms/SvgIcon/index.js +0 -2
  147. package/dist/src/components/core/App/App.d.ts +0 -11
  148. package/dist/src/components/core/App/App.js +0 -35
  149. package/dist/src/components/core/App/index.d.ts +0 -2
  150. package/dist/src/components/core/App/index.js +0 -2
  151. package/dist/src/components/core/PanelManager/PanelManager.d.ts +0 -21
  152. package/dist/src/components/core/PanelManager/PanelManager.js +0 -104
  153. package/dist/src/components/core/PanelManager/index.d.ts +0 -2
  154. package/dist/src/components/core/PanelManager/index.js +0 -2
  155. package/dist/src/components/core/ScrollableContainer/FocusableItem.d.ts +0 -11
  156. package/dist/src/components/core/ScrollableContainer/FocusableItem.js +0 -24
  157. package/dist/src/components/core/ScrollableContainer/ScrollableContainer.d.ts +0 -54
  158. package/dist/src/components/core/ScrollableContainer/ScrollableContainer.js +0 -111
  159. package/dist/src/components/core/ScrollableContainer/index.d.ts +0 -6
  160. package/dist/src/components/core/ScrollableContainer/index.js +0 -5
  161. package/dist/src/components/core/ScrollableContainer/useScrollableContainer.d.ts +0 -14
  162. package/dist/src/components/core/ScrollableContainer/useScrollableContainer.js +0 -22
  163. package/dist/src/components/molecules/ActionButton/ActionButton.d.ts +0 -96
  164. package/dist/src/components/molecules/ActionButton/ActionButton.js +0 -15
  165. package/dist/src/components/molecules/ActionButton/index.d.ts +0 -2
  166. package/dist/src/components/molecules/ActionButton/index.js +0 -2
  167. package/dist/src/components/molecules/HeadshotImage/HeadshotImage.d.ts +0 -16
  168. package/dist/src/components/molecules/HeadshotImage/HeadshotImage.js +0 -50
  169. package/dist/src/components/molecules/HeadshotImage/index.d.ts +0 -2
  170. package/dist/src/components/molecules/HeadshotImage/index.js +0 -2
  171. package/dist/src/components/molecules/NetworkDialog/NetworkDialog.d.ts +0 -11
  172. package/dist/src/components/molecules/NetworkDialog/NetworkDialog.js +0 -34
  173. package/dist/src/components/molecules/NetworkDialog/index.d.ts +0 -2
  174. package/dist/src/components/molecules/NetworkDialog/index.js +0 -2
  175. package/dist/src/components/molecules/NetworkError/NetworkError.d.ts +0 -104
  176. package/dist/src/components/molecules/NetworkError/NetworkError.js +0 -26
  177. package/dist/src/components/molecules/NetworkError/index.d.ts +0 -2
  178. package/dist/src/components/molecules/NetworkError/index.js +0 -2
  179. package/dist/src/components/molecules/PanelNavButton/PanelNavButton.d.ts +0 -107
  180. package/dist/src/components/molecules/PanelNavButton/PanelNavButton.js +0 -36
  181. package/dist/src/components/molecules/PanelNavButton/index.d.ts +0 -2
  182. package/dist/src/components/molecules/PanelNavButton/index.js +0 -2
  183. package/dist/src/components/molecules/SegmentButton/SegmentButton.d.ts +0 -9
  184. package/dist/src/components/molecules/SegmentButton/SegmentButton.js +0 -10
  185. package/dist/src/components/molecules/SegmentButton/index.d.ts +0 -2
  186. package/dist/src/components/molecules/SegmentButton/index.js +0 -2
  187. package/dist/src/components/molecules/TabLoadError/TabLoadError.d.ts +0 -96
  188. package/dist/src/components/molecules/TabLoadError/TabLoadError.js +0 -14
  189. package/dist/src/components/molecules/TabLoadError/index.d.ts +0 -2
  190. package/dist/src/components/molecules/TabLoadError/index.js +0 -2
  191. package/dist/src/components/molecules/WatchButton/WatchButton.d.ts +0 -10
  192. package/dist/src/components/molecules/WatchButton/WatchButton.js +0 -15
  193. package/dist/src/components/molecules/WatchButton/index.d.ts +0 -2
  194. package/dist/src/components/molecules/WatchButton/index.js +0 -2
  195. package/dist/src/components/organisms/PanelNavigation/PanelNavigation.d.ts +0 -17
  196. package/dist/src/components/organisms/PanelNavigation/PanelNavigation.js +0 -64
  197. package/dist/src/components/organisms/PanelNavigation/index.d.ts +0 -2
  198. package/dist/src/components/organisms/PanelNavigation/index.js +0 -2
  199. package/dist/src/components/organisms/SegmentController/SegmentController.d.ts +0 -12
  200. package/dist/src/components/organisms/SegmentController/SegmentController.js +0 -35
  201. package/dist/src/components/organisms/SegmentController/index.d.ts +0 -3
  202. package/dist/src/components/organisms/SegmentController/index.js +0 -2
  203. package/dist/src/development/MaestroEventDelegate.d.ts +0 -27
  204. package/dist/src/development/MaestroEventDelegate.js +0 -110
  205. package/dist/src/development/TimeSeek.d.ts +0 -22
  206. package/dist/src/development/TimeSeek.js +0 -218
  207. package/dist/src/development/development.d.ts +0 -1
  208. package/dist/src/development/development.js +0 -39
  209. package/dist/src/external/AxiosNetworkClient.d.ts +0 -28
  210. package/dist/src/external/AxiosNetworkClient.js +0 -110
  211. package/dist/src/external/LocalStorageCacheManager.d.ts +0 -65
  212. package/dist/src/external/LocalStorageCacheManager.js +0 -213
  213. package/dist/src/external/ReactRenderer.d.ts +0 -17
  214. package/dist/src/external/ReactRenderer.js +0 -66
  215. package/dist/src/external/mocks/MockExternalNetworkClient.d.ts +0 -104
  216. package/dist/src/external/mocks/MockExternalNetworkClient.js +0 -187
  217. package/dist/src/external/ports/cacheManager.d.ts +0 -17
  218. package/dist/src/external/ports/cacheManager.js +0 -1
  219. package/dist/src/external/ports/networkClient.d.ts +0 -19
  220. package/dist/src/external/ports/networkClient.js +0 -1
  221. package/dist/src/external/ports/renderer.d.ts +0 -4
  222. package/dist/src/external/ports/renderer.js +0 -1
  223. package/dist/src/external/spatial-navigation/__mocks__/withFocusable.d.ts +0 -8
  224. package/dist/src/external/spatial-navigation/__mocks__/withFocusable.js +0 -7
  225. package/dist/src/external/spatial-navigation/index.d.ts +0 -4
  226. package/dist/src/external/spatial-navigation/index.js +0 -3
  227. package/dist/src/external/spatial-navigation/measureLayout.d.ts +0 -2
  228. package/dist/src/external/spatial-navigation/measureLayout.js +0 -30
  229. package/dist/src/external/spatial-navigation/spatialNavigation.d.ts +0 -160
  230. package/dist/src/external/spatial-navigation/spatialNavigation.js +0 -944
  231. package/dist/src/external/spatial-navigation/utils.d.ts +0 -22
  232. package/dist/src/external/spatial-navigation/utils.js +0 -6
  233. package/dist/src/external/spatial-navigation/visualDebugger.d.ts +0 -17
  234. package/dist/src/external/spatial-navigation/visualDebugger.js +0 -76
  235. package/dist/src/external/spatial-navigation/withFocusable.d.ts +0 -131
  236. package/dist/src/external/spatial-navigation/withFocusable.js +0 -254
  237. package/dist/src/helpers/Observable.d.ts +0 -12
  238. package/dist/src/helpers/Observable.js +0 -37
  239. package/dist/src/helpers/site.d.ts +0 -1
  240. package/dist/src/helpers/site.js +0 -6
  241. package/dist/src/helpers/siteConfig.d.ts +0 -1
  242. package/dist/src/helpers/siteConfig.js +0 -5
  243. package/dist/src/helpers/strings.d.ts +0 -2
  244. package/dist/src/helpers/strings.js +0 -14
  245. package/dist/src/helpers/url.d.ts +0 -1
  246. package/dist/src/helpers/url.js +0 -12
  247. package/dist/src/hooks/useMaxHeightToBottom.d.ts +0 -11
  248. package/dist/src/hooks/useMaxHeightToBottom.js +0 -48
  249. package/dist/src/index.d.ts +0 -53
  250. package/dist/src/index.js +0 -197
  251. package/dist/src/interfaces/IMaestroEvent.d.ts +0 -108
  252. package/dist/src/interfaces/IMaestroEvent.js +0 -1
  253. package/dist/src/interfaces/IMaestroEventDelegate.d.ts +0 -81
  254. package/dist/src/interfaces/IMaestroEventDelegate.js +0 -1
  255. package/dist/src/interfaces/IMaestroManager.d.ts +0 -81
  256. package/dist/src/interfaces/IMaestroManager.js +0 -1
  257. package/dist/src/interfaces/IUserSettings.d.ts +0 -44
  258. package/dist/src/interfaces/IUserSettings.js +0 -20
  259. package/dist/src/models/IModel.d.ts +0 -7
  260. package/dist/src/models/IModel.js +0 -1
  261. package/dist/src/models/IPanel.d.ts +0 -19
  262. package/dist/src/models/IPanel.js +0 -12
  263. package/dist/src/models/ITheme.d.ts +0 -77
  264. package/dist/src/models/ITheme.js +0 -20
  265. package/dist/src/modules/espn/bets/interfaces/IBets.d.ts +0 -192
  266. package/dist/src/modules/espn/bets/interfaces/IBets.js +0 -1
  267. package/dist/src/modules/espn/bets/interfaces/IBetsViewModel.d.ts +0 -5
  268. package/dist/src/modules/espn/bets/interfaces/IBetsViewModel.js +0 -1
  269. package/dist/src/modules/espn/bets/mocks.d.ts +0 -2
  270. package/dist/src/modules/espn/bets/mocks.js +0 -573
  271. package/dist/src/modules/espn/bets/services/BetsService.d.ts +0 -81
  272. package/dist/src/modules/espn/bets/services/BetsService.js +0 -123
  273. package/dist/src/modules/espn/bets/types/BetsAnalyticsTypes.d.ts +0 -8
  274. package/dist/src/modules/espn/bets/types/BetsAnalyticsTypes.js +0 -1
  275. package/dist/src/modules/espn/bets/view/BetsView.d.ts +0 -30
  276. package/dist/src/modules/espn/bets/view/BetsView.js +0 -169
  277. package/dist/src/modules/espn/bets/view/HotProps/HotPropsView.d.ts +0 -103
  278. package/dist/src/modules/espn/bets/view/HotProps/HotPropsView.js +0 -133
  279. package/dist/src/modules/espn/bets/view/SixPack/SixPackView.d.ts +0 -9
  280. package/dist/src/modules/espn/bets/view/SixPack/SixPackView.js +0 -77
  281. package/dist/src/modules/espn/bets/view/UserBets/BetResult/BetResult.d.ts +0 -6
  282. package/dist/src/modules/espn/bets/view/UserBets/BetResult/BetResult.js +0 -6
  283. package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCard.d.ts +0 -104
  284. package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCard.js +0 -140
  285. package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCardEvent.d.ts +0 -16
  286. package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCardEvent.js +0 -8
  287. package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCardFooter.d.ts +0 -7
  288. package/dist/src/modules/espn/bets/view/UserBets/BetsCard/BetsCardFooter.js +0 -18
  289. package/dist/src/modules/espn/bets/view/UserBets/Boost/Boost.d.ts +0 -7
  290. package/dist/src/modules/espn/bets/view/UserBets/Boost/Boost.js +0 -6
  291. package/dist/src/modules/espn/bets/view/UserBets/OutcomeBadge/OutcomeBadge.d.ts +0 -6
  292. package/dist/src/modules/espn/bets/view/UserBets/OutcomeBadge/OutcomeBadge.js +0 -9
  293. package/dist/src/modules/espn/bets/view/UserBets/Parlay/Parlay.d.ts +0 -8
  294. package/dist/src/modules/espn/bets/view/UserBets/Parlay/Parlay.js +0 -13
  295. package/dist/src/modules/espn/bets/view/UserBets/Straight/Straight.d.ts +0 -7
  296. package/dist/src/modules/espn/bets/view/UserBets/Straight/Straight.js +0 -6
  297. package/dist/src/modules/espn/bets/view/UserBets/Teaser/Teaser.d.ts +0 -7
  298. package/dist/src/modules/espn/bets/view/UserBets/Teaser/Teaser.js +0 -13
  299. package/dist/src/modules/espn/bets/view/UserBets/UserBetsView.d.ts +0 -25
  300. package/dist/src/modules/espn/bets/view/UserBets/UserBetsView.js +0 -107
  301. package/dist/src/modules/espn/bets/view/components/Bet/Bet.d.ts +0 -10
  302. package/dist/src/modules/espn/bets/view/components/Bet/Bet.js +0 -41
  303. package/dist/src/modules/espn/bets/view/components/BetPill/BetPill.d.ts +0 -6
  304. package/dist/src/modules/espn/bets/view/components/BetPill/BetPill.js +0 -6
  305. package/dist/src/modules/espn/bets/view/components/BetsCard/BetsCard.d.ts +0 -10
  306. package/dist/src/modules/espn/bets/view/components/BetsCard/BetsCard.js +0 -24
  307. package/dist/src/modules/espn/bets/view/components/BetsCard/BetsCardHeader.d.ts +0 -16
  308. package/dist/src/modules/espn/bets/view/components/BetsCard/BetsCardHeader.js +0 -20
  309. package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/GamblingDisclaimer.d.ts +0 -7
  310. package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/GamblingDisclaimer.js +0 -31
  311. package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/index.d.ts +0 -1
  312. package/dist/src/modules/espn/bets/view/components/GamblingDisclaimer/index.js +0 -1
  313. package/dist/src/modules/espn/bets/view/components/LocationWarning/LocationWarning.d.ts +0 -10
  314. package/dist/src/modules/espn/bets/view/components/LocationWarning/LocationWarning.js +0 -16
  315. package/dist/src/modules/espn/bets/view/components/PromoCodeBanner/PromoCodeBanner.d.ts +0 -5
  316. package/dist/src/modules/espn/bets/view/components/PromoCodeBanner/PromoCodeBanner.js +0 -45
  317. package/dist/src/modules/espn/bets/view/components/PromoCodeBanner/index.d.ts +0 -1
  318. package/dist/src/modules/espn/bets/view/components/PromoCodeBanner/index.js +0 -1
  319. package/dist/src/modules/espn/bets/view-model/BetsViewModel.d.ts +0 -218
  320. package/dist/src/modules/espn/bets/view-model/BetsViewModel.js +0 -947
  321. package/dist/src/modules/espn/components/TabLoadError/TabLoadError.d.ts +0 -96
  322. package/dist/src/modules/espn/components/TabLoadError/TabLoadError.js +0 -14
  323. package/dist/src/modules/espn/components/TabLoadError/index.d.ts +0 -2
  324. package/dist/src/modules/espn/components/TabLoadError/index.js +0 -2
  325. package/dist/src/modules/espn/fantasy/components/ExpandedAthleteList/ExpandedAthletesList.d.ts +0 -28
  326. package/dist/src/modules/espn/fantasy/components/ExpandedAthleteList/ExpandedAthletesList.js +0 -107
  327. package/dist/src/modules/espn/fantasy/components/ExpandedAthleteList/index.d.ts +0 -1
  328. package/dist/src/modules/espn/fantasy/components/ExpandedAthleteList/index.js +0 -1
  329. package/dist/src/modules/espn/fantasy/components/LeagueCard/LeagueCard.d.ts +0 -104
  330. package/dist/src/modules/espn/fantasy/components/LeagueCard/LeagueCard.js +0 -20
  331. package/dist/src/modules/espn/fantasy/components/LeagueCard/index.d.ts +0 -2
  332. package/dist/src/modules/espn/fantasy/components/LeagueCard/index.js +0 -2
  333. package/dist/src/modules/espn/fantasy/components/TopPlayerCard/TopPlayerCard.d.ts +0 -101
  334. package/dist/src/modules/espn/fantasy/components/TopPlayerCard/TopPlayerCard.js +0 -29
  335. package/dist/src/modules/espn/fantasy/components/TopPlayerCard/index.d.ts +0 -2
  336. package/dist/src/modules/espn/fantasy/components/TopPlayerCard/index.js +0 -2
  337. package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/TournamentOverflowQR.d.ts +0 -103
  338. package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/TournamentOverflowQR.js +0 -28
  339. package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/index.d.ts +0 -1
  340. package/dist/src/modules/espn/fantasy/components/TournamentOverflowQR/index.js +0 -1
  341. package/dist/src/modules/espn/fantasy/mocks.d.ts +0 -7620
  342. package/dist/src/modules/espn/fantasy/mocks.js +0 -3682
  343. package/dist/src/modules/espn/fantasy/services/FantasyService.d.ts +0 -76
  344. package/dist/src/modules/espn/fantasy/services/FantasyService.js +0 -124
  345. package/dist/src/modules/espn/fantasy/types.d.ts +0 -294
  346. package/dist/src/modules/espn/fantasy/types.js +0 -9
  347. package/dist/src/modules/espn/fantasy/view/ActiveAthletesMarquee/ActiveAthletesMarquee.d.ts +0 -21
  348. package/dist/src/modules/espn/fantasy/view/ActiveAthletesMarquee/ActiveAthletesMarquee.js +0 -74
  349. package/dist/src/modules/espn/fantasy/view/ActiveAthletesMarquee/index.d.ts +0 -2
  350. package/dist/src/modules/espn/fantasy/view/ActiveAthletesMarquee/index.js +0 -2
  351. package/dist/src/modules/espn/fantasy/view/FantasyHeaderView.d.ts +0 -8
  352. package/dist/src/modules/espn/fantasy/view/FantasyHeaderView.js +0 -8
  353. package/dist/src/modules/espn/fantasy/view/FantasyItemView.d.ts +0 -8
  354. package/dist/src/modules/espn/fantasy/view/FantasyItemView.js +0 -48
  355. package/dist/src/modules/espn/fantasy/view/FantasyView.d.ts +0 -34
  356. package/dist/src/modules/espn/fantasy/view/FantasyView.js +0 -212
  357. package/dist/src/modules/espn/fantasy/view/InactiveLeague/DraftDateCountdown.d.ts +0 -23
  358. package/dist/src/modules/espn/fantasy/view/InactiveLeague/DraftDateCountdown.js +0 -95
  359. package/dist/src/modules/espn/fantasy/view/InactiveLeague/InactiveLeague.d.ts +0 -100
  360. package/dist/src/modules/espn/fantasy/view/InactiveLeague/InactiveLeague.js +0 -13
  361. package/dist/src/modules/espn/fantasy/view/InactiveLeague/index.d.ts +0 -2
  362. package/dist/src/modules/espn/fantasy/view/InactiveLeague/index.js +0 -2
  363. package/dist/src/modules/espn/fantasy/view/LoginView/LoginView.d.ts +0 -96
  364. package/dist/src/modules/espn/fantasy/view/LoginView/LoginView.js +0 -27
  365. package/dist/src/modules/espn/fantasy/view/LoginView/index.d.ts +0 -2
  366. package/dist/src/modules/espn/fantasy/view/LoginView/index.js +0 -2
  367. package/dist/src/modules/espn/fantasy/view/MatchupPair/DoubleAthleteCard/DoubleAthleteCard.d.ts +0 -97
  368. package/dist/src/modules/espn/fantasy/view/MatchupPair/DoubleAthleteCard/DoubleAthleteCard.js +0 -25
  369. package/dist/src/modules/espn/fantasy/view/MatchupPair/DoubleAthleteCard/index.d.ts +0 -2
  370. package/dist/src/modules/espn/fantasy/view/MatchupPair/DoubleAthleteCard/index.js +0 -2
  371. package/dist/src/modules/espn/fantasy/view/MatchupPair/ExpandedDoubleAthleteCards.d.ts +0 -14
  372. package/dist/src/modules/espn/fantasy/view/MatchupPair/ExpandedDoubleAthleteCards.js +0 -9
  373. package/dist/src/modules/espn/fantasy/view/MatchupPair/MatchupPair.d.ts +0 -102
  374. package/dist/src/modules/espn/fantasy/view/MatchupPair/MatchupPair.js +0 -118
  375. package/dist/src/modules/espn/fantasy/view/MatchupPair/index.d.ts +0 -2
  376. package/dist/src/modules/espn/fantasy/view/MatchupPair/index.js +0 -2
  377. package/dist/src/modules/espn/fantasy/view/MatchupSingle/ExpandedSingleAthleteCards.d.ts +0 -14
  378. package/dist/src/modules/espn/fantasy/view/MatchupSingle/ExpandedSingleAthleteCards.js +0 -9
  379. package/dist/src/modules/espn/fantasy/view/MatchupSingle/MatchupSingle.d.ts +0 -102
  380. package/dist/src/modules/espn/fantasy/view/MatchupSingle/MatchupSingle.js +0 -108
  381. package/dist/src/modules/espn/fantasy/view/MatchupSingle/SingleAthleteCard/SingleAthleteCard.d.ts +0 -97
  382. package/dist/src/modules/espn/fantasy/view/MatchupSingle/SingleAthleteCard/SingleAthleteCard.js +0 -18
  383. package/dist/src/modules/espn/fantasy/view/MatchupSingle/SingleAthleteCard/index.d.ts +0 -2
  384. package/dist/src/modules/espn/fantasy/view/MatchupSingle/SingleAthleteCard/index.js +0 -2
  385. package/dist/src/modules/espn/fantasy/view/MatchupSingle/index.d.ts +0 -2
  386. package/dist/src/modules/espn/fantasy/view/MatchupSingle/index.js +0 -2
  387. package/dist/src/modules/espn/fantasy/view/PromoView/PromoView.d.ts +0 -100
  388. package/dist/src/modules/espn/fantasy/view/PromoView/PromoView.js +0 -12
  389. package/dist/src/modules/espn/fantasy/view/PromoView/index.d.ts +0 -2
  390. package/dist/src/modules/espn/fantasy/view/PromoView/index.js +0 -2
  391. package/dist/src/modules/espn/fantasy/view/TournamentBracketCard/TournamentBracketCard.d.ts +0 -101
  392. package/dist/src/modules/espn/fantasy/view/TournamentBracketCard/TournamentBracketCard.js +0 -37
  393. package/dist/src/modules/espn/fantasy/view/TournamentBracketCard/index.d.ts +0 -2
  394. package/dist/src/modules/espn/fantasy/view/TournamentBracketCard/index.js +0 -2
  395. package/dist/src/modules/espn/fantasy/view/index.d.ts +0 -2
  396. package/dist/src/modules/espn/fantasy/view/index.js +0 -2
  397. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.FantasyPolling.d.ts +0 -32
  398. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.FantasyPolling.js +0 -132
  399. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.LeagueManagerPolling.d.ts +0 -32
  400. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.LeagueManagerPolling.js +0 -141
  401. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.TournamentPolling.d.ts +0 -32
  402. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.TournamentPolling.js +0 -140
  403. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.d.ts +0 -167
  404. package/dist/src/modules/espn/fantasy/view-model/FantasyViewModel.js +0 -805
  405. package/dist/src/modules/espn/key-plays/constants.d.ts +0 -3
  406. package/dist/src/modules/espn/key-plays/constants.js +0 -292
  407. package/dist/src/modules/espn/key-plays/interfaces/IKeyPlays.d.ts +0 -32
  408. package/dist/src/modules/espn/key-plays/interfaces/IKeyPlays.js +0 -14
  409. package/dist/src/modules/espn/key-plays/interfaces/IKeyPlaysResponse.d.ts +0 -44
  410. package/dist/src/modules/espn/key-plays/interfaces/IKeyPlaysResponse.js +0 -1
  411. package/dist/src/modules/espn/key-plays/interfaces/IKeyPlaysViewModel.d.ts +0 -17
  412. package/dist/src/modules/espn/key-plays/interfaces/IKeyPlaysViewModel.js +0 -1
  413. package/dist/src/modules/espn/key-plays/view/KeyPlayCardScoreTagView.d.ts +0 -9
  414. package/dist/src/modules/espn/key-plays/view/KeyPlayCardScoreTagView.js +0 -16
  415. package/dist/src/modules/espn/key-plays/view/KeyPlayCardView.d.ts +0 -27
  416. package/dist/src/modules/espn/key-plays/view/KeyPlayCardView.js +0 -115
  417. package/dist/src/modules/espn/key-plays/view/KeyPlayErrorStateView.d.ts +0 -13
  418. package/dist/src/modules/espn/key-plays/view/KeyPlayErrorStateView.js +0 -65
  419. package/dist/src/modules/espn/key-plays/view/KeyPlaysView.d.ts +0 -39
  420. package/dist/src/modules/espn/key-plays/view/KeyPlaysView.js +0 -179
  421. package/dist/src/modules/espn/key-plays/view-model/KeyPlaysViewModel.d.ts +0 -37
  422. package/dist/src/modules/espn/key-plays/view-model/KeyPlaysViewModel.js +0 -245
  423. package/dist/src/modules/espn/shop/mocks.d.ts +0 -22
  424. package/dist/src/modules/espn/shop/mocks.js +0 -391
  425. package/dist/src/modules/espn/shop/services/ShopService.d.ts +0 -23
  426. package/dist/src/modules/espn/shop/services/ShopService.js +0 -44
  427. package/dist/src/modules/espn/shop/types.d.ts +0 -164
  428. package/dist/src/modules/espn/shop/types.js +0 -7
  429. package/dist/src/modules/espn/shop/view/ProductDetailView/ProductDetailView.d.ts +0 -10
  430. package/dist/src/modules/espn/shop/view/ProductDetailView/ProductDetailView.js +0 -60
  431. package/dist/src/modules/espn/shop/view/ProductDetailView/index.d.ts +0 -2
  432. package/dist/src/modules/espn/shop/view/ProductDetailView/index.js +0 -2
  433. package/dist/src/modules/espn/shop/view/ShopView.d.ts +0 -38
  434. package/dist/src/modules/espn/shop/view/ShopView.js +0 -223
  435. package/dist/src/modules/espn/shop/view/components/BrowseCard/BrowseCard.d.ts +0 -103
  436. package/dist/src/modules/espn/shop/view/components/BrowseCard/BrowseCard.js +0 -23
  437. package/dist/src/modules/espn/shop/view/components/BrowseCard/index.d.ts +0 -2
  438. package/dist/src/modules/espn/shop/view/components/BrowseCard/index.js +0 -2
  439. package/dist/src/modules/espn/shop/view/components/ProductSummaryCard/ProductSummaryCard.d.ts +0 -104
  440. package/dist/src/modules/espn/shop/view/components/ProductSummaryCard/ProductSummaryCard.js +0 -26
  441. package/dist/src/modules/espn/shop/view/components/ProductSummaryCard/index.d.ts +0 -2
  442. package/dist/src/modules/espn/shop/view/components/ProductSummaryCard/index.js +0 -1
  443. package/dist/src/modules/espn/shop/view/components/ShopPromoView/ShopPromoView.d.ts +0 -8
  444. package/dist/src/modules/espn/shop/view/components/ShopPromoView/ShopPromoView.js +0 -19
  445. package/dist/src/modules/espn/shop/view/components/ShopPromoView/index.d.ts +0 -1
  446. package/dist/src/modules/espn/shop/view/components/ShopPromoView/index.js +0 -1
  447. package/dist/src/modules/espn/shop/view/components/ShopSection/ShopSection.d.ts +0 -12
  448. package/dist/src/modules/espn/shop/view/components/ShopSection/ShopSection.js +0 -34
  449. package/dist/src/modules/espn/shop/view/components/ShopSection/index.d.ts +0 -1
  450. package/dist/src/modules/espn/shop/view/components/ShopSection/index.js +0 -1
  451. package/dist/src/modules/espn/shop/view/index.d.ts +0 -2
  452. package/dist/src/modules/espn/shop/view/index.js +0 -2
  453. package/dist/src/modules/espn/shop/view-model/ShopViewModel.ShopPolling.d.ts +0 -31
  454. package/dist/src/modules/espn/shop/view-model/ShopViewModel.ShopPolling.js +0 -111
  455. package/dist/src/modules/espn/shop/view-model/ShopViewModel.d.ts +0 -73
  456. package/dist/src/modules/espn/shop/view-model/ShopViewModel.js +0 -323
  457. package/dist/src/modules/espn/stats/components/TeamStatistic.d.ts +0 -16
  458. package/dist/src/modules/espn/stats/components/TeamStatistic.js +0 -13
  459. package/dist/src/modules/espn/stats/interfaces/IStats.d.ts +0 -330
  460. package/dist/src/modules/espn/stats/interfaces/IStats.js +0 -46
  461. package/dist/src/modules/espn/stats/interfaces/IStatsViewModel.d.ts +0 -7
  462. package/dist/src/modules/espn/stats/interfaces/IStatsViewModel.js +0 -1
  463. package/dist/src/modules/espn/stats/mocks.d.ts +0 -2
  464. package/dist/src/modules/espn/stats/mocks.js +0 -746
  465. package/dist/src/modules/espn/stats/services/StatsService.d.ts +0 -54
  466. package/dist/src/modules/espn/stats/services/StatsService.js +0 -155
  467. package/dist/src/modules/espn/stats/utils/driveSummaryUtils.d.ts +0 -18
  468. package/dist/src/modules/espn/stats/utils/driveSummaryUtils.js +0 -48
  469. package/dist/src/modules/espn/stats/utils/playerStatusUtils.d.ts +0 -4
  470. package/dist/src/modules/espn/stats/utils/playerStatusUtils.js +0 -17
  471. package/dist/src/modules/espn/stats/utils.d.ts +0 -39
  472. package/dist/src/modules/espn/stats/utils.js +0 -62
  473. package/dist/src/modules/espn/stats/view/ActiveAthletes/ActiveAthletes.d.ts +0 -22
  474. package/dist/src/modules/espn/stats/view/ActiveAthletes/ActiveAthletes.js +0 -98
  475. package/dist/src/modules/espn/stats/view/ActiveAthletes/CollapsedAthletes/CollapsedAthletes.d.ts +0 -4
  476. package/dist/src/modules/espn/stats/view/ActiveAthletes/CollapsedAthletes/CollapsedAthletes.js +0 -27
  477. package/dist/src/modules/espn/stats/view/ActiveAthletes/ExpandedAthletes/ExpandedAthletes.d.ts +0 -22
  478. package/dist/src/modules/espn/stats/view/ActiveAthletes/ExpandedAthletes/ExpandedAthletes.js +0 -89
  479. package/dist/src/modules/espn/stats/view/ActiveAthletes/index.d.ts +0 -2
  480. package/dist/src/modules/espn/stats/view/ActiveAthletes/index.js +0 -2
  481. package/dist/src/modules/espn/stats/view/CareerMatchup/CareerMatchup.d.ts +0 -101
  482. package/dist/src/modules/espn/stats/view/CareerMatchup/CareerMatchup.js +0 -59
  483. package/dist/src/modules/espn/stats/view/CareerMatchup/index.d.ts +0 -1
  484. package/dist/src/modules/espn/stats/view/CareerMatchup/index.js +0 -1
  485. package/dist/src/modules/espn/stats/view/DriveSummary/DrivePlayCard.d.ts +0 -105
  486. package/dist/src/modules/espn/stats/view/DriveSummary/DrivePlayCard.js +0 -32
  487. package/dist/src/modules/espn/stats/view/DriveSummary/DriveSummary.d.ts +0 -10
  488. package/dist/src/modules/espn/stats/view/DriveSummary/DriveSummary.js +0 -40
  489. package/dist/src/modules/espn/stats/view/DriveSummary/ExpandedItems/DriveSummaryExpanded.d.ts +0 -27
  490. package/dist/src/modules/espn/stats/view/DriveSummary/ExpandedItems/DriveSummaryExpanded.js +0 -129
  491. package/dist/src/modules/espn/stats/view/DriveSummary/Header/DriveSummaryHeader.d.ts +0 -12
  492. package/dist/src/modules/espn/stats/view/DriveSummary/Header/DriveSummaryHeader.js +0 -26
  493. package/dist/src/modules/espn/stats/view/DriveSummary/MainStat/MainStat.d.ts +0 -10
  494. package/dist/src/modules/espn/stats/view/DriveSummary/MainStat/MainStat.js +0 -24
  495. package/dist/src/modules/espn/stats/view/DriveSummary/index.d.ts +0 -2
  496. package/dist/src/modules/espn/stats/view/DriveSummary/index.js +0 -2
  497. package/dist/src/modules/espn/stats/view/GameLeaders/GameLeaders.d.ts +0 -9
  498. package/dist/src/modules/espn/stats/view/GameLeaders/GameLeaders.js +0 -22
  499. package/dist/src/modules/espn/stats/view/GameLeaders/index.d.ts +0 -2
  500. package/dist/src/modules/espn/stats/view/GameLeaders/index.js +0 -2
  501. package/dist/src/modules/espn/stats/view/MatchPredictor/DonutChart/DonutChart.d.ts +0 -17
  502. package/dist/src/modules/espn/stats/view/MatchPredictor/DonutChart/DonutChart.js +0 -55
  503. package/dist/src/modules/espn/stats/view/MatchPredictor/DonutChart/index.d.ts +0 -2
  504. package/dist/src/modules/espn/stats/view/MatchPredictor/DonutChart/index.js +0 -1
  505. package/dist/src/modules/espn/stats/view/MatchPredictor/MatchPredictorView.d.ts +0 -100
  506. package/dist/src/modules/espn/stats/view/MatchPredictor/MatchPredictorView.js +0 -60
  507. package/dist/src/modules/espn/stats/view/MatchPredictor/index.d.ts +0 -3
  508. package/dist/src/modules/espn/stats/view/MatchPredictor/index.js +0 -2
  509. package/dist/src/modules/espn/stats/view/Penalties/Penalties.d.ts +0 -9
  510. package/dist/src/modules/espn/stats/view/Penalties/Penalties.js +0 -6
  511. package/dist/src/modules/espn/stats/view/Penalties/index.d.ts +0 -2
  512. package/dist/src/modules/espn/stats/view/Penalties/index.js +0 -2
  513. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/ExpandedPlayerStats.d.ts +0 -16
  514. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/ExpandedPlayerStats.js +0 -66
  515. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsCard.d.ts +0 -99
  516. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsCard.js +0 -26
  517. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsMinified.d.ts +0 -6
  518. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsMinified.js +0 -17
  519. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsView.d.ts +0 -8
  520. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/PlayerSeasonStatsView.js +0 -165
  521. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/index.d.ts +0 -1
  522. package/dist/src/modules/espn/stats/view/PlayerSeasonStats/index.js +0 -1
  523. package/dist/src/modules/espn/stats/view/RecentGames/RecentGames.d.ts +0 -100
  524. package/dist/src/modules/espn/stats/view/RecentGames/RecentGames.js +0 -23
  525. package/dist/src/modules/espn/stats/view/RecentGames/index.d.ts +0 -2
  526. package/dist/src/modules/espn/stats/view/RecentGames/index.js +0 -2
  527. package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/ExpandedScores.d.ts +0 -30
  528. package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/ExpandedScores.js +0 -123
  529. package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/ExpandedSummary.d.ts +0 -100
  530. package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/ExpandedSummary.js +0 -24
  531. package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/index.d.ts +0 -2
  532. package/dist/src/modules/espn/stats/view/ScoringSummary/ExpandedScores/index.js +0 -2
  533. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoreItem/ScoreItem.d.ts +0 -100
  534. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoreItem/ScoreItem.js +0 -62
  535. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoreItem/index.d.ts +0 -2
  536. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoreItem/index.js +0 -2
  537. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoresSection/ScoresSection.d.ts +0 -6
  538. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoresSection/ScoresSection.js +0 -23
  539. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoresSection/index.d.ts +0 -2
  540. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoresSection/index.js +0 -2
  541. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoringSummary.d.ts +0 -12
  542. package/dist/src/modules/espn/stats/view/ScoringSummary/ScoringSummary.js +0 -167
  543. package/dist/src/modules/espn/stats/view/ScoringSummary/index.d.ts +0 -1
  544. package/dist/src/modules/espn/stats/view/ScoringSummary/index.js +0 -1
  545. package/dist/src/modules/espn/stats/view/StatsItemView.d.ts +0 -8
  546. package/dist/src/modules/espn/stats/view/StatsItemView.js +0 -66
  547. package/dist/src/modules/espn/stats/view/StatsQRCode/StatsQRCodeView.d.ts +0 -100
  548. package/dist/src/modules/espn/stats/view/StatsQRCode/StatsQRCodeView.js +0 -36
  549. package/dist/src/modules/espn/stats/view/StatsQRCode/index.d.ts +0 -2
  550. package/dist/src/modules/espn/stats/view/StatsQRCode/index.js +0 -1
  551. package/dist/src/modules/espn/stats/view/StatsView.d.ts +0 -29
  552. package/dist/src/modules/espn/stats/view/StatsView.js +0 -164
  553. package/dist/src/modules/espn/stats/view/TeamStats/TeamStatsView.d.ts +0 -101
  554. package/dist/src/modules/espn/stats/view/TeamStats/TeamStatsView.js +0 -77
  555. package/dist/src/modules/espn/stats/view/TeamStats/index.d.ts +0 -2
  556. package/dist/src/modules/espn/stats/view/TeamStats/index.js +0 -1
  557. package/dist/src/modules/espn/stats/view/Teams/StatsCarousel.d.ts +0 -25
  558. package/dist/src/modules/espn/stats/view/Teams/StatsCarousel.js +0 -83
  559. package/dist/src/modules/espn/stats/view/Teams/StatsProgressBar.d.ts +0 -6
  560. package/dist/src/modules/espn/stats/view/Teams/StatsProgressBar.js +0 -19
  561. package/dist/src/modules/espn/stats/view/Teams/Teams.d.ts +0 -100
  562. package/dist/src/modules/espn/stats/view/Teams/Teams.js +0 -39
  563. package/dist/src/modules/espn/stats/view/Teams/index.d.ts +0 -2
  564. package/dist/src/modules/espn/stats/view/Teams/index.js +0 -2
  565. package/dist/src/modules/espn/stats/view/WinProbability/WinProbability.d.ts +0 -100
  566. package/dist/src/modules/espn/stats/view/WinProbability/WinProbability.js +0 -28
  567. package/dist/src/modules/espn/stats/view/WinProbability/index.d.ts +0 -2
  568. package/dist/src/modules/espn/stats/view/WinProbability/index.js +0 -2
  569. package/dist/src/modules/espn/stats/view/components/AthletesStatistics/AthletesStatistics.d.ts +0 -115
  570. package/dist/src/modules/espn/stats/view/components/AthletesStatistics/AthletesStatistics.js +0 -89
  571. package/dist/src/modules/espn/stats/view/components/AthletesStatistics/StatisticTable.d.ts +0 -3
  572. package/dist/src/modules/espn/stats/view/components/AthletesStatistics/StatisticTable.js +0 -12
  573. package/dist/src/modules/espn/stats/view/components/AthletesStatistics/index.d.ts +0 -2
  574. package/dist/src/modules/espn/stats/view/components/AthletesStatistics/index.js +0 -2
  575. package/dist/src/modules/espn/stats/view/index.d.ts +0 -2
  576. package/dist/src/modules/espn/stats/view/index.js +0 -2
  577. package/dist/src/modules/espn/stats/view-model/StatsViewModel.d.ts +0 -322
  578. package/dist/src/modules/espn/stats/view-model/StatsViewModel.js +0 -1416
  579. package/dist/src/modules/fox/components/TabLoadError/TabLoadError.d.ts +0 -96
  580. package/dist/src/modules/fox/components/TabLoadError/TabLoadError.js +0 -19
  581. package/dist/src/modules/fox/components/TabLoadError/index.d.ts +0 -2
  582. package/dist/src/modules/fox/components/TabLoadError/index.js +0 -2
  583. package/dist/src/modules/fox/key-plays/view/FoxKeyPlays.d.ts +0 -2
  584. package/dist/src/modules/fox/key-plays/view/FoxKeyPlays.js +0 -5
  585. package/dist/src/modules/fox/multi-view/interfaces/IMultiViewViewModel.d.ts +0 -3
  586. package/dist/src/modules/fox/multi-view/interfaces/IMultiViewViewModel.js +0 -1
  587. package/dist/src/modules/fox/multi-view/services/MultiViewService.d.ts +0 -99
  588. package/dist/src/modules/fox/multi-view/services/MultiViewService.js +0 -94
  589. package/dist/src/modules/fox/multi-view/types.d.ts +0 -48
  590. package/dist/src/modules/fox/multi-view/types.js +0 -86
  591. package/dist/src/modules/fox/multi-view/view/CuratedMultiview/CuratedMultiviews.d.ts +0 -8
  592. package/dist/src/modules/fox/multi-view/view/CuratedMultiview/CuratedMultiviews.js +0 -91
  593. package/dist/src/modules/fox/multi-view/view/CuratedMultiview/index.d.ts +0 -2
  594. package/dist/src/modules/fox/multi-view/view/CuratedMultiview/index.js +0 -2
  595. package/dist/src/modules/fox/multi-view/view/FoxMultiView.d.ts +0 -3
  596. package/dist/src/modules/fox/multi-view/view/FoxMultiView.js +0 -65
  597. package/dist/src/modules/fox/multi-view/view/components/CustomMultiviewStreamsCard/CustomMultiviewStreamsCard.d.ts +0 -122
  598. package/dist/src/modules/fox/multi-view/view/components/CustomMultiviewStreamsCard/CustomMultiviewStreamsCard.js +0 -51
  599. package/dist/src/modules/fox/multi-view/view/components/CustomMultiviewStreamsCard/index.d.ts +0 -2
  600. package/dist/src/modules/fox/multi-view/view/components/CustomMultiviewStreamsCard/index.js +0 -2
  601. package/dist/src/modules/fox/multi-view/view/components/LayoutSelector/LayoutSelector.d.ts +0 -13
  602. package/dist/src/modules/fox/multi-view/view/components/LayoutSelector/LayoutSelector.js +0 -40
  603. package/dist/src/modules/fox/multi-view/view/components/LayoutSelector/index.d.ts +0 -2
  604. package/dist/src/modules/fox/multi-view/view/components/LayoutSelector/index.js +0 -2
  605. package/dist/src/modules/fox/multi-view/view/components/curated-multiview-card/CuratedMultiviewCard.d.ts +0 -101
  606. package/dist/src/modules/fox/multi-view/view/components/curated-multiview-card/CuratedMultiviewCard.js +0 -21
  607. package/dist/src/modules/fox/multi-view/view/components/curated-multiview-card/index.d.ts +0 -2
  608. package/dist/src/modules/fox/multi-view/view/components/curated-multiview-card/index.js +0 -2
  609. package/dist/src/modules/fox/multi-view/view-model/MultiViewViewModel.d.ts +0 -63
  610. package/dist/src/modules/fox/multi-view/view-model/MultiViewViewModel.js +0 -328
  611. package/dist/src/modules/fox/multi-view/view-model/index.d.ts +0 -1
  612. package/dist/src/modules/fox/multi-view/view-model/index.js +0 -1
  613. package/dist/src/modules/fox/stats/view/FoxStatsView.d.ts +0 -2
  614. package/dist/src/modules/fox/stats/view/FoxStatsView.js +0 -5
  615. package/dist/src/modules/maestro/builder/components/BuilderSection/BuilderSection.d.ts +0 -11
  616. package/dist/src/modules/maestro/builder/components/BuilderSection/BuilderSection.js +0 -52
  617. package/dist/src/modules/maestro/builder/components/BuilderSection/index.d.ts +0 -2
  618. package/dist/src/modules/maestro/builder/components/BuilderSection/index.js +0 -2
  619. package/dist/src/modules/maestro/builder/components/ExpandableCard/ExpandableCard.d.ts +0 -110
  620. package/dist/src/modules/maestro/builder/components/ExpandableCard/ExpandableCard.js +0 -37
  621. package/dist/src/modules/maestro/builder/components/ExpandableCard/index.d.ts +0 -2
  622. package/dist/src/modules/maestro/builder/components/ExpandableCard/index.js +0 -2
  623. package/dist/src/modules/maestro/builder/components/SimpleCard/SimpleCard.d.ts +0 -104
  624. package/dist/src/modules/maestro/builder/components/SimpleCard/SimpleCard.js +0 -12
  625. package/dist/src/modules/maestro/builder/components/SimpleCard/index.d.ts +0 -2
  626. package/dist/src/modules/maestro/builder/components/SimpleCard/index.js +0 -2
  627. package/dist/src/modules/maestro/builder/index.d.ts +0 -7
  628. package/dist/src/modules/maestro/builder/index.js +0 -7
  629. package/dist/src/modules/maestro/builder/mocks/mockBuilderPanel.d.ts +0 -149
  630. package/dist/src/modules/maestro/builder/mocks/mockBuilderPanel.js +0 -240
  631. package/dist/src/modules/maestro/builder/types.d.ts +0 -52
  632. package/dist/src/modules/maestro/builder/types.js +0 -1
  633. package/dist/src/modules/maestro/builder/view/BuilderPanelView.d.ts +0 -4
  634. package/dist/src/modules/maestro/builder/view/BuilderPanelView.js +0 -52
  635. package/dist/src/modules/maestro/builder/view-model/BuilderPanelViewModel.d.ts +0 -40
  636. package/dist/src/modules/maestro/builder/view-model/BuilderPanelViewModel.js +0 -229
  637. package/dist/src/modules/maestro/builder/view-model/index.d.ts +0 -1
  638. package/dist/src/modules/maestro/builder/view-model/index.js +0 -1
  639. package/dist/src/modules/maestro/hello-world/HelloWorldImage.d.ts +0 -2
  640. package/dist/src/modules/maestro/hello-world/HelloWorldImage.js +0 -32
  641. package/dist/src/modules/maestro/hello-world/HelloWorldView.d.ts +0 -11
  642. package/dist/src/modules/maestro/hello-world/HelloWorldView.js +0 -40
  643. package/dist/src/modules/maestro/hello-world/index.d.ts +0 -2
  644. package/dist/src/modules/maestro/hello-world/index.js +0 -2
  645. package/dist/src/sentry.d.ts +0 -3
  646. package/dist/src/sentry.js +0 -51
  647. package/dist/src/services/AnalyticsService/AnalyticsService.d.ts +0 -85
  648. package/dist/src/services/AnalyticsService/AnalyticsService.js +0 -406
  649. package/dist/src/services/AnalyticsService/types.d.ts +0 -65
  650. package/dist/src/services/AnalyticsService/types.js +0 -1
  651. package/dist/src/services/InsightsService/InsightsPayloadBuilder.d.ts +0 -279
  652. package/dist/src/services/InsightsService/InsightsPayloadBuilder.js +0 -385
  653. package/dist/src/services/InsightsService/InsightsService.d.ts +0 -11
  654. package/dist/src/services/InsightsService/InsightsService.js +0 -74
  655. package/dist/src/services/NetworkManager/NetworkManager.d.ts +0 -153
  656. package/dist/src/services/NetworkManager/NetworkManager.js +0 -434
  657. package/dist/src/services/NetworkManager/errors.d.ts +0 -19
  658. package/dist/src/services/NetworkManager/errors.js +0 -59
  659. package/dist/src/services/NetworkManager/types.d.ts +0 -7
  660. package/dist/src/services/NetworkManager/types.js +0 -1
  661. package/dist/src/services/StaticService/StaticService.d.ts +0 -20
  662. package/dist/src/services/StaticService/StaticService.js +0 -86
  663. package/dist/src/services/StaticService/index.d.ts +0 -2
  664. package/dist/src/services/StaticService/index.js +0 -2
  665. package/dist/src/services/StaticService/mocks.d.ts +0 -3
  666. package/dist/src/services/StaticService/mocks.js +0 -119
  667. package/dist/src/services/StaticService/types.d.ts +0 -78
  668. package/dist/src/services/StaticService/types.js +0 -1
  669. package/dist/src/services/ThemeManager/constants.d.ts +0 -2
  670. package/dist/src/services/ThemeManager/constants.js +0 -47
  671. package/dist/src/services/UserSettingsManager.d.ts +0 -63
  672. package/dist/src/services/UserSettingsManager.js +0 -158
  673. package/dist/src/test-polyfills.d.ts +0 -1
  674. package/dist/src/test-polyfills.js +0 -15
  675. package/dist/src/view-models/MaestroEventViewModel.d.ts +0 -96
  676. package/dist/src/view-models/MaestroEventViewModel.js +0 -386
  677. package/dist/src/view-models/PanelManagerViewModel.d.ts +0 -49
  678. package/dist/src/view-models/PanelManagerViewModel.js +0 -195
  679. package/dist/src/view-models/ViewModel.d.ts +0 -12
  680. package/dist/src/view-models/ViewModel.js +0 -32
@@ -1,944 +0,0 @@
1
- import measureLayout from './measureLayout';
2
- import { KEY_BACK } from './utils';
3
- import { DIRECTION_DOWN, KEY_ENTER } from './utils';
4
- import { DIRECTION_LEFT, DIRECTION_RIGHT, DIRECTION_UP } from './utils';
5
- import VisualDebugger from './visualDebugger';
6
- export const ROOT_FOCUS_KEY = 'SN:ROOT';
7
- const ADJACENT_SLICE_THRESHOLD = 0.2;
8
- /**
9
- * Adjacent slice is 5 times more important than diagonal
10
- */
11
- const ADJACENT_SLICE_WEIGHT = 5;
12
- const DIAGONAL_SLICE_WEIGHT = 1;
13
- /**
14
- * Main coordinate distance is 5 times more important
15
- */
16
- const MAIN_COORDINATE_WEIGHT = 5;
17
- const DEFAULT_KEY_MAP = {
18
- [DIRECTION_LEFT]: [37],
19
- [DIRECTION_UP]: [38],
20
- [DIRECTION_RIGHT]: [39],
21
- [DIRECTION_DOWN]: [40],
22
- [KEY_ENTER]: [13],
23
- [KEY_BACK]: [8, 10009, 461],
24
- };
25
- const DEBUG_FN_COLORS = ['#0FF', '#FF0', '#F0F'];
26
- const THROTTLE_OPTIONS = {
27
- leading: true,
28
- trailing: false,
29
- };
30
- export const getChildClosestToOrigin = (children) => {
31
- const childrenClosestToOrigin = sortBy(children, ({ layout }) => Math.abs(layout.left) + Math.abs(layout.top));
32
- return first(childrenClosestToOrigin);
33
- };
34
- const throttle = (func, wait, options = {}) => {
35
- let timeout = null;
36
- let previous = 0;
37
- const { leading = true, trailing = true } = options;
38
- return function (...args) {
39
- const now = Date.now();
40
- if (!previous && !leading)
41
- previous = now;
42
- const remaining = wait - (now - previous);
43
- if (remaining <= 0 || remaining > wait) {
44
- if (timeout) {
45
- clearTimeout(timeout);
46
- timeout = null;
47
- }
48
- previous = now;
49
- func.apply(this, args);
50
- }
51
- else if (!timeout && trailing) {
52
- timeout = window.setTimeout(() => {
53
- previous = leading ? Date.now() : 0;
54
- timeout = null;
55
- func.apply(this, args);
56
- }, remaining);
57
- }
58
- };
59
- };
60
- const sortBy = (array, iteratee) => [...array].sort((a, b) => {
61
- const aValue = iteratee(a);
62
- const bValue = iteratee(b);
63
- return aValue < bValue ? -1 : aValue > bValue ? 1 : 0;
64
- });
65
- const first = (array) => array[0];
66
- const difference = (array, values) => array.filter((x) => !values.includes(x));
67
- const forEach = (array, iteratee) => array.forEach(iteratee);
68
- /* eslint-disable no-nested-ternary */
69
- class SpatialNavigation {
70
- /**
71
- * Used to determine the coordinate that will be used to filter items that are over the "edge"
72
- */
73
- static getCutoffCoordinate(isVertical, isIncremental, isSibling, layout) {
74
- const itemX = layout.left;
75
- const itemY = layout.top;
76
- const itemWidth = layout.width;
77
- const itemHeight = layout.height;
78
- const coordinate = isVertical ? itemY : itemX;
79
- const itemSize = isVertical ? itemHeight : itemWidth;
80
- return isIncremental
81
- ? isSibling
82
- ? coordinate
83
- : coordinate + itemSize
84
- : isSibling
85
- ? coordinate + itemSize
86
- : coordinate;
87
- }
88
- /**
89
- * Returns two corners (a and b) coordinates that are used as a reference points
90
- * Where "a" is always leftmost and topmost corner, and "b" is rightmost bottommost corner
91
- */
92
- static getRefCorners(direction, isSibling, layout) {
93
- const itemX = layout.left;
94
- const itemY = layout.top;
95
- const itemWidth = layout.width;
96
- const itemHeight = layout.height;
97
- const result = {
98
- a: {
99
- x: 0,
100
- y: 0,
101
- },
102
- b: {
103
- x: 0,
104
- y: 0,
105
- },
106
- };
107
- switch (direction) {
108
- case DIRECTION_UP: {
109
- const y = isSibling ? itemY + itemHeight : itemY;
110
- result.a = {
111
- x: itemX,
112
- y,
113
- };
114
- result.b = {
115
- x: itemX + itemWidth,
116
- y,
117
- };
118
- break;
119
- }
120
- case DIRECTION_DOWN: {
121
- const y = isSibling ? itemY : itemY + itemHeight;
122
- result.a = {
123
- x: itemX,
124
- y,
125
- };
126
- result.b = {
127
- x: itemX + itemWidth,
128
- y,
129
- };
130
- break;
131
- }
132
- case DIRECTION_LEFT: {
133
- const x = isSibling ? itemX + itemWidth : itemX;
134
- result.a = {
135
- x,
136
- y: itemY,
137
- };
138
- result.b = {
139
- x,
140
- y: itemY + itemHeight,
141
- };
142
- break;
143
- }
144
- case DIRECTION_RIGHT: {
145
- const x = isSibling ? itemX : itemX + itemWidth;
146
- result.a = {
147
- x,
148
- y: itemY,
149
- };
150
- result.b = {
151
- x,
152
- y: itemY + itemHeight,
153
- };
154
- break;
155
- }
156
- default:
157
- break;
158
- }
159
- return result;
160
- }
161
- /**
162
- * Calculates if the sibling node is intersecting enough with the ref node by the secondary coordinate
163
- */
164
- static isAdjacentSlice(refCorners, siblingCorners, isVerticalDirection) {
165
- const { a: refA, b: refB } = refCorners;
166
- const { a: siblingA, b: siblingB } = siblingCorners;
167
- const coordinate = isVerticalDirection ? 'x' : 'y';
168
- const refCoordinateA = refA[coordinate];
169
- const refCoordinateB = refB[coordinate];
170
- const siblingCoordinateA = siblingA[coordinate];
171
- const siblingCoordinateB = siblingB[coordinate];
172
- const thresholdDistance = (refCoordinateB - refCoordinateA) * ADJACENT_SLICE_THRESHOLD;
173
- const intersectionLength = Math.max(0, Math.min(refCoordinateB, siblingCoordinateB) -
174
- Math.max(refCoordinateA, siblingCoordinateA));
175
- return intersectionLength >= thresholdDistance;
176
- }
177
- static getPrimaryAxisDistance(refCorners, siblingCorners, isVerticalDirection) {
178
- const { a: refA } = refCorners;
179
- const { a: siblingA } = siblingCorners;
180
- const coordinate = isVerticalDirection ? 'y' : 'x';
181
- return Math.abs(siblingA[coordinate] - refA[coordinate]);
182
- }
183
- static getSecondaryAxisDistance(refCorners, siblingCorners, isVerticalDirection) {
184
- const { a: refA, b: refB } = refCorners;
185
- const { a: siblingA, b: siblingB } = siblingCorners;
186
- const coordinate = isVerticalDirection ? 'x' : 'y';
187
- const refCoordinateA = refA[coordinate];
188
- const refCoordinateB = refB[coordinate];
189
- const siblingCoordinateA = siblingA[coordinate];
190
- const siblingCoordinateB = siblingB[coordinate];
191
- const distancesToCompare = [];
192
- distancesToCompare.push(Math.abs(siblingCoordinateA - refCoordinateA));
193
- distancesToCompare.push(Math.abs(siblingCoordinateA - refCoordinateB));
194
- distancesToCompare.push(Math.abs(siblingCoordinateB - refCoordinateA));
195
- distancesToCompare.push(Math.abs(siblingCoordinateB - refCoordinateB));
196
- return Math.min(...distancesToCompare);
197
- }
198
- /**
199
- * Inspired by: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS_for_TV/TV_remote_control_navigation#Algorithm_design
200
- * Ref Corners are the 2 corners of the current component in the direction of navigation
201
- * They used as a base to measure adjacent slices
202
- */
203
- sortSiblingsByPriority(siblings, currentLayout, direction, _focusKey) {
204
- const isVerticalDirection = direction === DIRECTION_DOWN || direction === DIRECTION_UP;
205
- const refCorners = SpatialNavigation.getRefCorners(direction, false, currentLayout);
206
- return [...siblings].sort((a, b) => {
207
- const aCorners = SpatialNavigation.getRefCorners(direction, true, a.layout);
208
- const bCorners = SpatialNavigation.getRefCorners(direction, true, b.layout);
209
- const aIsAdjacentSlice = SpatialNavigation.isAdjacentSlice(refCorners, aCorners, isVerticalDirection);
210
- const bIsAdjacentSlice = SpatialNavigation.isAdjacentSlice(refCorners, bCorners, isVerticalDirection);
211
- const aPrimaryAxisFunction = aIsAdjacentSlice
212
- ? SpatialNavigation.getPrimaryAxisDistance
213
- : SpatialNavigation.getSecondaryAxisDistance;
214
- const bPrimaryAxisFunction = bIsAdjacentSlice
215
- ? SpatialNavigation.getPrimaryAxisDistance
216
- : SpatialNavigation.getSecondaryAxisDistance;
217
- const aSecondaryAxisFunction = aIsAdjacentSlice
218
- ? SpatialNavigation.getSecondaryAxisDistance
219
- : SpatialNavigation.getPrimaryAxisDistance;
220
- const bSecondaryAxisFunction = bIsAdjacentSlice
221
- ? SpatialNavigation.getSecondaryAxisDistance
222
- : SpatialNavigation.getPrimaryAxisDistance;
223
- const aPrimaryAxisDistance = aPrimaryAxisFunction(refCorners, aCorners, isVerticalDirection);
224
- const bPrimaryAxisDistance = bPrimaryAxisFunction(refCorners, bCorners, isVerticalDirection);
225
- const aSecondaryAxisDistance = aSecondaryAxisFunction(refCorners, aCorners, isVerticalDirection);
226
- const bSecondaryAxisDistance = bSecondaryAxisFunction(refCorners, bCorners, isVerticalDirection);
227
- const aTotalDistancePoints = aPrimaryAxisDistance * MAIN_COORDINATE_WEIGHT +
228
- aSecondaryAxisDistance;
229
- const bTotalDistancePoints = bPrimaryAxisDistance * MAIN_COORDINATE_WEIGHT +
230
- bSecondaryAxisDistance;
231
- const aPriority = (aTotalDistancePoints + 1) /
232
- (aIsAdjacentSlice ? ADJACENT_SLICE_WEIGHT : DIAGONAL_SLICE_WEIGHT);
233
- const bPriority = (bTotalDistancePoints + 1) /
234
- (bIsAdjacentSlice ? ADJACENT_SLICE_WEIGHT : DIAGONAL_SLICE_WEIGHT);
235
- return aPriority - bPriority;
236
- });
237
- }
238
- constructor(options = {}) {
239
- Object.defineProperty(this, "focusableComponents", {
240
- enumerable: true,
241
- configurable: true,
242
- writable: true,
243
- value: void 0
244
- });
245
- Object.defineProperty(this, "focusKey", {
246
- enumerable: true,
247
- configurable: true,
248
- writable: true,
249
- value: void 0
250
- });
251
- Object.defineProperty(this, "parentsHavingFocusedChild", {
252
- enumerable: true,
253
- configurable: true,
254
- writable: true,
255
- value: void 0
256
- });
257
- Object.defineProperty(this, "nativeMode", {
258
- enumerable: true,
259
- configurable: true,
260
- writable: true,
261
- value: void 0
262
- });
263
- Object.defineProperty(this, "throttle", {
264
- enumerable: true,
265
- configurable: true,
266
- writable: true,
267
- value: void 0
268
- });
269
- Object.defineProperty(this, "throttleKeypresses", {
270
- enumerable: true,
271
- configurable: true,
272
- writable: true,
273
- value: void 0
274
- });
275
- Object.defineProperty(this, "pressedKeys", {
276
- enumerable: true,
277
- configurable: true,
278
- writable: true,
279
- value: void 0
280
- });
281
- Object.defineProperty(this, "paused", {
282
- enumerable: true,
283
- configurable: true,
284
- writable: true,
285
- value: void 0
286
- });
287
- Object.defineProperty(this, "keyDownEventListener", {
288
- enumerable: true,
289
- configurable: true,
290
- writable: true,
291
- value: void 0
292
- });
293
- Object.defineProperty(this, "clickEventListener", {
294
- enumerable: true,
295
- configurable: true,
296
- writable: true,
297
- value: void 0
298
- });
299
- Object.defineProperty(this, "keyUpEventListener", {
300
- enumerable: true,
301
- configurable: true,
302
- writable: true,
303
- value: void 0
304
- });
305
- Object.defineProperty(this, "keyMap", {
306
- enumerable: true,
307
- configurable: true,
308
- writable: true,
309
- value: void 0
310
- });
311
- Object.defineProperty(this, "debug", {
312
- enumerable: true,
313
- configurable: true,
314
- writable: true,
315
- value: void 0
316
- });
317
- Object.defineProperty(this, "visualDebugger", {
318
- enumerable: true,
319
- configurable: true,
320
- writable: true,
321
- value: void 0
322
- });
323
- Object.defineProperty(this, "logIndex", {
324
- enumerable: true,
325
- configurable: true,
326
- writable: true,
327
- value: void 0
328
- });
329
- this.focusableComponents = {};
330
- this.focusKey = null;
331
- this.parentsHavingFocusedChild = [];
332
- this.nativeMode = false;
333
- this.throttle = 0;
334
- this.throttleKeypresses = false;
335
- this.pressedKeys = {};
336
- this.paused = true;
337
- this.keyDownEventListener = null;
338
- this.clickEventListener = null;
339
- this.keyUpEventListener = null;
340
- this.keyMap = DEFAULT_KEY_MAP;
341
- this.debug = false;
342
- this.visualDebugger = null;
343
- this.logIndex = 0;
344
- this.onKeyEvent = this.onKeyEvent.bind(this);
345
- this.pause = this.pause.bind(this);
346
- this.resume = this.resume.bind(this);
347
- this.setFocus = this.setFocus.bind(this);
348
- this.updateAllLayouts = this.updateAllLayouts.bind(this);
349
- this.navigateByDirection = this.navigateByDirection.bind(this);
350
- this.init = this.init.bind(this);
351
- this.setKeyMap = this.setKeyMap.bind(this);
352
- this.init(options);
353
- }
354
- init({ debug = false, visualDebug = false, nativeMode = false, throttle = 0, throttleKeypresses = false, } = {}) {
355
- this.nativeMode = nativeMode;
356
- this.throttleKeypresses = throttleKeypresses;
357
- this.debug = debug;
358
- if (!this.nativeMode) {
359
- if (Number.isInteger(throttle) && throttle > 0) {
360
- this.throttle = throttle;
361
- }
362
- this.bindEventHandlers();
363
- if (visualDebug) {
364
- this.visualDebugger = new VisualDebugger();
365
- this.startDrawLayouts();
366
- }
367
- }
368
- }
369
- startDrawLayouts() {
370
- const draw = () => {
371
- requestAnimationFrame(() => {
372
- this.visualDebugger?.clearLayouts();
373
- Object.entries(this.focusableComponents).forEach(([focusKey, component]) => {
374
- this.visualDebugger?.drawLayout(component.layout, focusKey, component.parentFocusKey);
375
- });
376
- draw();
377
- });
378
- };
379
- draw();
380
- }
381
- destroy() {
382
- this.unbindEventHandlers();
383
- }
384
- getEventType(keyCode) {
385
- return Object.keys(this.getKeyMap()).find((key) => this.getKeyMap()[key].includes(keyCode));
386
- }
387
- bindEventHandlers() {
388
- if (typeof window !== 'undefined' && window.addEventListener) {
389
- const keyDownHandler = (event) => {
390
- if (this.paused === true) {
391
- return;
392
- }
393
- if (this.debug) {
394
- this.logIndex += 1;
395
- }
396
- const eventType = this.getEventType(event.keyCode);
397
- if (!eventType) {
398
- return;
399
- }
400
- this.pressedKeys[eventType] = this.pressedKeys[eventType]
401
- ? this.pressedKeys[eventType] + 1
402
- : 1;
403
- event.preventDefault();
404
- event.stopPropagation();
405
- const details = {
406
- pressedKeys: this.pressedKeys,
407
- };
408
- if (this.focusKey && this.getNodeLayoutByFocusKey(this.focusKey)) {
409
- details.layout = this.getNodeLayoutByFocusKey(this.focusKey);
410
- }
411
- if (eventType === KEY_ENTER && this.focusKey) {
412
- this.onEnterPress(details);
413
- return;
414
- }
415
- if (eventType === KEY_BACK && this.focusKey) {
416
- this.onBackPress(details);
417
- return;
418
- }
419
- const preventDefaultNavigation = this.onArrowPress(eventType, details) === false;
420
- if (preventDefaultNavigation) {
421
- this.log('keyDownEventListener', 'default navigation prevented');
422
- this.visualDebugger?.clear();
423
- }
424
- else {
425
- this.onKeyEvent(event);
426
- }
427
- };
428
- this.keyDownEventListener = this.throttle
429
- ? throttle(keyDownHandler, this.throttle, THROTTLE_OPTIONS)
430
- : keyDownHandler;
431
- this.keyUpEventListener = (event) => {
432
- const eventType = this.getEventType(event.keyCode);
433
- if (eventType) {
434
- delete this.pressedKeys[eventType];
435
- }
436
- if (this.throttle && !this.throttleKeypresses) {
437
- // @ts-ignore
438
- this.keyDownEventListener?.cancel?.();
439
- }
440
- if (eventType === KEY_ENTER && this.focusKey) {
441
- this.onEnterRelease();
442
- }
443
- };
444
- // Click handler for mouse/touch support
445
- this.clickEventListener = (event) => {
446
- if (this.paused === true) {
447
- return;
448
- }
449
- const target = event.target;
450
- if (!target) {
451
- return;
452
- }
453
- // Find the focusable component that contains the clicked element
454
- const focusKey = this.findFocusKeyForElement(target);
455
- if (!focusKey) {
456
- return;
457
- }
458
- const details = {
459
- pressedKeys: {},
460
- event,
461
- mouseClick: true,
462
- };
463
- const layout = this.getNodeLayoutByFocusKey(focusKey);
464
- if (layout) {
465
- details.layout = layout;
466
- }
467
- const isAlreadyFocused = this.focusKey === focusKey;
468
- if (!isAlreadyFocused) {
469
- this.setFocus(focusKey, details);
470
- }
471
- this.onClickPress(details);
472
- };
473
- window.addEventListener('keyup', this.keyUpEventListener);
474
- window.addEventListener('keydown', this.keyDownEventListener);
475
- window.addEventListener('click', this.clickEventListener);
476
- }
477
- }
478
- unbindEventHandlers() {
479
- if (typeof window !== 'undefined' && window.removeEventListener) {
480
- window.removeEventListener('keydown', this.keyDownEventListener);
481
- window.removeEventListener('click', this.clickEventListener);
482
- this.keyDownEventListener = null;
483
- this.clickEventListener = null;
484
- if (this.throttle) {
485
- window.removeEventListener('keyup', this.keyUpEventListener);
486
- this.keyUpEventListener = null;
487
- }
488
- }
489
- }
490
- findFocusKeyForElement(element) {
491
- for (const focusKey of Object.keys(this.focusableComponents)) {
492
- const component = this.focusableComponents[focusKey];
493
- if (component && component.node && component.focusable) {
494
- if (component.node === element || component.node.contains(element)) {
495
- return focusKey;
496
- }
497
- }
498
- }
499
- return null;
500
- }
501
- onClickPress(details) {
502
- const component = this.focusableComponents[this.focusKey];
503
- if (!component) {
504
- this.log('onClickPress', 'noComponent');
505
- return;
506
- }
507
- if (!component.focusable) {
508
- this.log('onClickPress', 'componentNotFocusable');
509
- return;
510
- }
511
- component.onClickPressHandler?.(details);
512
- }
513
- onEnterPress(details) {
514
- const component = this.focusableComponents[this.focusKey];
515
- if (!component) {
516
- this.log('onEnterPress', 'noComponent');
517
- return;
518
- }
519
- if (!component.focusable) {
520
- this.log('onEnterPress', 'componentNotFocusable');
521
- return;
522
- }
523
- component.onEnterPressHandler?.(details);
524
- }
525
- onBackPress(details) {
526
- const component = this.focusableComponents[this.focusKey];
527
- if (!component) {
528
- this.log('onBackPress', 'noComponent');
529
- return;
530
- }
531
- if (!component.focusable) {
532
- this.log('onBackPress', 'componentNotFocusable');
533
- return;
534
- }
535
- component.onBackPressHandler?.(details);
536
- }
537
- onEnterRelease() {
538
- const component = this.focusableComponents[this.focusKey];
539
- if (!component) {
540
- this.log('onEnterRelease', 'noComponent');
541
- return;
542
- }
543
- if (!component.focusable) {
544
- this.log('onEnterRelease', 'componentNotFocusable');
545
- return;
546
- }
547
- component.onEnterReleaseHandler?.();
548
- }
549
- onArrowPress(direction, details) {
550
- const component = this.focusableComponents[this.focusKey];
551
- if (!component) {
552
- this.log('onArrowPress', 'noComponent');
553
- return undefined;
554
- }
555
- return component.onArrowPressHandler?.(direction, details);
556
- }
557
- navigateByDirection(direction, details = { pressedKeys: {} }) {
558
- if (this.paused === true) {
559
- return;
560
- }
561
- const validDirections = [
562
- DIRECTION_DOWN,
563
- DIRECTION_UP,
564
- DIRECTION_LEFT,
565
- DIRECTION_RIGHT,
566
- ];
567
- if (validDirections.includes(direction)) {
568
- this.log('navigateByDirection', 'direction', direction);
569
- this.smartNavigate(direction, null, details);
570
- }
571
- else {
572
- this.log('navigateByDirection', `Invalid direction. You passed: \`${direction}\`, but you can use only these: `, validDirections);
573
- }
574
- }
575
- onKeyEvent(event) {
576
- this.visualDebugger?.clear();
577
- const direction = Object.keys(this.getKeyMap()).find((key) => this.getKeyMap()[key].includes(event.keyCode));
578
- if (direction) {
579
- this.smartNavigate(direction, null, {
580
- pressedKeys: {},
581
- event,
582
- });
583
- }
584
- }
585
- smartNavigate(direction, fromParentFocusKey, details) {
586
- this.log('smartNavigate', 'direction', direction);
587
- this.log('smartNavigate', 'fromParentFocusKey', fromParentFocusKey);
588
- this.log('smartNavigate', 'this.focusKey', this.focusKey);
589
- if (!this.nativeMode && !fromParentFocusKey) {
590
- Object.values(this.focusableComponents).forEach((component) => {
591
- component.layoutUpdated = false;
592
- });
593
- }
594
- const currentComponent = this.focusableComponents[fromParentFocusKey || this.focusKey];
595
- this.log('smartNavigate', 'currentComponent', currentComponent ? currentComponent.focusKey : undefined, currentComponent ? currentComponent.node : undefined);
596
- if (currentComponent) {
597
- this.updateLayout(currentComponent.focusKey);
598
- const { parentFocusKey, focusKey, layout } = currentComponent;
599
- const isVerticalDirection = direction === DIRECTION_DOWN || direction === DIRECTION_UP;
600
- const isIncrementalDirection = direction === DIRECTION_DOWN || direction === DIRECTION_RIGHT;
601
- const currentCutoffCoordinate = SpatialNavigation.getCutoffCoordinate(isVerticalDirection, isIncrementalDirection, false, layout);
602
- /**
603
- * Get only the siblings with the coords on the way of our moving direction
604
- */
605
- const siblings = Object.values(this.focusableComponents).filter((component) => {
606
- if (component.parentFocusKey === parentFocusKey &&
607
- component.focusable) {
608
- this.updateLayout(component.focusKey);
609
- const siblingCutoffCoordinate = SpatialNavigation.getCutoffCoordinate(isVerticalDirection, isIncrementalDirection, true, component.layout);
610
- return isIncrementalDirection
611
- ? siblingCutoffCoordinate >= currentCutoffCoordinate
612
- : siblingCutoffCoordinate <= currentCutoffCoordinate;
613
- }
614
- return false;
615
- });
616
- if (this.debug) {
617
- this.log('smartNavigate', 'siblings', siblings);
618
- }
619
- if (siblings.length > 0) {
620
- const sortedSiblings = this.sortSiblingsByPriority(siblings, layout, direction, focusKey);
621
- if (this.debug) {
622
- this.log('smartNavigate', 'sortedSiblings', sortedSiblings);
623
- }
624
- const nextComponent = sortedSiblings[0];
625
- if (nextComponent) {
626
- this.setFocus(nextComponent.focusKey, details);
627
- }
628
- }
629
- else {
630
- this.log('smartNavigate', 'noSiblings');
631
- if (parentFocusKey) {
632
- this.smartNavigate(direction, parentFocusKey, details);
633
- }
634
- }
635
- }
636
- }
637
- saveLastFocusedChildKey(component, focusKey) {
638
- if (component) {
639
- this.log('saveLastFocusedChildKey', `${component.focusKey} lastFocusedChildKey set`, focusKey);
640
- component.lastFocusedChildKey = focusKey;
641
- }
642
- }
643
- log(functionName, debugString, ...rest) {
644
- if (this.debug) {
645
- console.log(`%c${functionName}%c${debugString}`, `background: ${DEBUG_FN_COLORS[this.logIndex % DEBUG_FN_COLORS.length]}; color: black; padding: 1px 5px;`, 'background: #333; color: #BADA55; padding: 1px 5px;', ...rest);
646
- }
647
- }
648
- getNextFocusKey(targetFocusKey) {
649
- this.log('getNextFocusKey', 'targetFocusKey', targetFocusKey);
650
- const targetComponent = this.focusableComponents[targetFocusKey];
651
- if (!targetComponent) {
652
- return targetFocusKey;
653
- }
654
- const { trackChildren } = targetComponent;
655
- if (!trackChildren) {
656
- return targetFocusKey;
657
- }
658
- const children = Object.values(this.focusableComponents).filter((component) => component.parentFocusKey === targetFocusKey && component.focusable);
659
- if (children.length === 0) {
660
- return targetFocusKey;
661
- }
662
- const { lastFocusedChildKey, preferredChildFocusKey } = targetComponent;
663
- /**
664
- * First of all trying to focus last focused child
665
- */
666
- if (lastFocusedChildKey &&
667
- !targetComponent.forgetLastFocusedChild &&
668
- this.isParticipatingFocusableComponent(lastFocusedChildKey)) {
669
- this.log('getNextFocusKey', 'lastFocusedChildKey will be focused', lastFocusedChildKey);
670
- return this.getNextFocusKey(lastFocusedChildKey);
671
- }
672
- /**
673
- * If there is no lastFocusedChild, trying to focus the preferred focused key
674
- */
675
- if (preferredChildFocusKey &&
676
- this.isParticipatingFocusableComponent(preferredChildFocusKey)) {
677
- this.log('getNextFocusKey', 'preferredChildFocusKey will be focused', preferredChildFocusKey);
678
- return this.getNextFocusKey(preferredChildFocusKey);
679
- }
680
- /**
681
- * Otherwise, trying to focus something by coordinates
682
- */
683
- children.forEach((component) => this.updateLayout(component.focusKey));
684
- const { focusKey: childKey } = getChildClosestToOrigin(children);
685
- this.log('getNextFocusKey', 'childKey will be focused', childKey);
686
- return this.getNextFocusKey(childKey);
687
- }
688
- addFocusable({ focusKey, node, parentFocusKey, onEnterPressHandler, onEnterReleaseHandler, onBackPressHandler, onArrowPressHandler, onBecameFocusedHandler, onBecameBlurredHandler, forgetLastFocusedChild, trackChildren, onUpdateFocus, onUpdateHasFocusedChild, preferredChildFocusKey, onClickPressHandler, autoRestoreFocus, focusable = true, blockNavigationOut, }) {
689
- this.focusableComponents[focusKey] = {
690
- focusKey,
691
- node,
692
- parentFocusKey,
693
- onClickPressHandler,
694
- onEnterPressHandler,
695
- onEnterReleaseHandler,
696
- onBackPressHandler,
697
- onArrowPressHandler,
698
- onBecameFocusedHandler,
699
- onBecameBlurredHandler,
700
- onUpdateFocus,
701
- onUpdateHasFocusedChild,
702
- forgetLastFocusedChild,
703
- trackChildren,
704
- lastFocusedChildKey: null,
705
- preferredChildFocusKey,
706
- focusable,
707
- blockNavigationOut,
708
- autoRestoreFocus,
709
- layout: {
710
- x: 0,
711
- y: 0,
712
- width: 0,
713
- height: 0,
714
- left: 0,
715
- top: 0,
716
- node,
717
- },
718
- layoutUpdated: false,
719
- };
720
- if (this.nativeMode) {
721
- return;
722
- }
723
- this.updateLayout(focusKey);
724
- /**
725
- * If for some reason this component was already focused before it was added, call the update
726
- */
727
- if (focusKey === this.focusKey) {
728
- this.setFocus(focusKey);
729
- }
730
- }
731
- removeFocusable({ focusKey }) {
732
- const componentToRemove = this.focusableComponents[focusKey];
733
- if (componentToRemove) {
734
- const { parentFocusKey } = componentToRemove;
735
- Reflect.deleteProperty(this.focusableComponents, focusKey);
736
- const parentComponent = this.focusableComponents[parentFocusKey];
737
- const wasFocused = focusKey === this.focusKey;
738
- // If a component was unmounted and it was focused, we need to clear focusKey if the focus is in the Client App so the focus don't get lost.
739
- if (wasFocused) {
740
- if (this.paused) {
741
- this.focusKey = null;
742
- }
743
- else {
744
- // if its not paused, we need to focus on a component that is visible so we don't lose focus
745
- this.setFocus('PANEL_NAVIGATION');
746
- }
747
- }
748
- /**
749
- * If the component was stored as lastFocusedChild, clear lastFocusedChildKey from parent
750
- */
751
- parentComponent &&
752
- parentComponent.lastFocusedChildKey === focusKey &&
753
- (parentComponent.lastFocusedChildKey = null);
754
- if (this.nativeMode) {
755
- return;
756
- }
757
- /**
758
- * If the component was also focused at this time, focus another one
759
- */
760
- if (wasFocused &&
761
- parentComponent &&
762
- parentComponent.autoRestoreFocus &&
763
- !this.paused) {
764
- this.setFocus(parentFocusKey);
765
- }
766
- }
767
- }
768
- getNodeLayoutByFocusKey(focusKey) {
769
- const component = this.focusableComponents[focusKey];
770
- if (component) {
771
- this.updateLayout(component.focusKey);
772
- return component.layout;
773
- }
774
- return null;
775
- }
776
- setCurrentFocusedKey(newFocusKey, details = { pressedKeys: {} }) {
777
- if (this.isFocusableComponent(this.focusKey) &&
778
- newFocusKey !== this.focusKey) {
779
- const oldComponent = this.focusableComponents[this.focusKey];
780
- const parentComponent = this.focusableComponents[oldComponent.parentFocusKey];
781
- this.saveLastFocusedChildKey(parentComponent, this.focusKey);
782
- oldComponent.onUpdateFocus?.(false);
783
- oldComponent.onBecameBlurredHandler?.(this.getNodeLayoutByFocusKey(this.focusKey), details);
784
- }
785
- this.focusKey = newFocusKey;
786
- if (this.isFocusableComponent(this.focusKey)) {
787
- const newComponent = this.focusableComponents[this.focusKey];
788
- newComponent.onUpdateFocus?.(true);
789
- this.updateParentsHasFocusedChild(this.focusKey, details);
790
- newComponent.onBecameFocusedHandler?.(this.getNodeLayoutByFocusKey(this.focusKey), details);
791
- }
792
- }
793
- updateParentsHasFocusedChild(focusKey, details) {
794
- const parents = [];
795
- let currentComponent = this.focusableComponents[focusKey];
796
- /**
797
- * Recursively iterate the tree up and find all the parents' focus keys
798
- */
799
- while (currentComponent) {
800
- const { parentFocusKey } = currentComponent;
801
- const parentComponent = this.focusableComponents[parentFocusKey];
802
- if (parentComponent) {
803
- const { focusKey: currentParentFocusKey } = parentComponent;
804
- parents.push(currentParentFocusKey);
805
- }
806
- currentComponent = parentComponent;
807
- }
808
- const parentsToRemoveFlag = difference(this.parentsHavingFocusedChild, parents);
809
- const parentsToAddFlag = difference(parents, this.parentsHavingFocusedChild);
810
- forEach(parentsToRemoveFlag, (parentFocusKey) => {
811
- const parentComponent = this.focusableComponents[parentFocusKey];
812
- parentComponent &&
813
- parentComponent.trackChildren &&
814
- parentComponent.onUpdateHasFocusedChild?.(false);
815
- this.onIntermediateNodeBecameBlurred(parentFocusKey, details);
816
- });
817
- forEach(parentsToAddFlag, (parentFocusKey) => {
818
- const parentComponent = this.focusableComponents[parentFocusKey];
819
- parentComponent &&
820
- parentComponent.trackChildren &&
821
- parentComponent.onUpdateHasFocusedChild?.(true);
822
- this.onIntermediateNodeBecameFocused(parentFocusKey, details);
823
- });
824
- this.parentsHavingFocusedChild = parents;
825
- }
826
- updateParentsLastFocusedChild(focusKey) {
827
- let currentComponent = this.focusableComponents[focusKey];
828
- /**
829
- * Recursively iterate the tree up and update all the parent's lastFocusedChild
830
- */
831
- while (currentComponent) {
832
- const { parentFocusKey } = currentComponent;
833
- const parentComponent = this.focusableComponents[parentFocusKey];
834
- if (parentComponent) {
835
- this.saveLastFocusedChildKey(parentComponent, currentComponent.focusKey);
836
- }
837
- currentComponent = parentComponent;
838
- }
839
- }
840
- getKeyMap() {
841
- return this.keyMap;
842
- }
843
- setKeyMap(keyMap) {
844
- this.keyMap = {
845
- ...this.getKeyMap(),
846
- ...keyMap,
847
- };
848
- }
849
- isFocusableComponent(focusKey) {
850
- return !!this.focusableComponents[focusKey];
851
- }
852
- /**
853
- * Checks whether the focusableComponent is actually participating in spatial navigation (in other words, is a
854
- * 'focusable' focusableComponent). Seems less confusing than calling it isFocusableFocusableComponent()
855
- */
856
- isParticipatingFocusableComponent(focusKey) {
857
- return (this.isFocusableComponent(focusKey) &&
858
- this.focusableComponents[focusKey].focusable);
859
- }
860
- onIntermediateNodeBecameFocused(focusKey, details) {
861
- this.isParticipatingFocusableComponent(focusKey) &&
862
- this.focusableComponents[focusKey].onBecameFocusedHandler?.(this.getNodeLayoutByFocusKey(focusKey), details);
863
- }
864
- onIntermediateNodeBecameBlurred(focusKey, details) {
865
- this.isParticipatingFocusableComponent(focusKey) &&
866
- this.focusableComponents[focusKey].onBecameBlurredHandler?.(this.getNodeLayoutByFocusKey(focusKey), details);
867
- }
868
- pause() {
869
- this.parentsHavingFocusedChild = [];
870
- this.pressedKeys = {};
871
- this.log('pause', 'paused');
872
- this.visualDebugger?.clear();
873
- this.visualDebugger?.clearLayouts();
874
- this.getFocusableComponents().forEach((component) => {
875
- component.onUpdateFocus?.(false);
876
- component.onUpdateHasFocusedChild?.(false);
877
- });
878
- this.paused = true;
879
- }
880
- resume() {
881
- this.paused = false;
882
- }
883
- setFocus(targetFocusKey, details = { pressedKeys: {} }) {
884
- const lastFocusedKey = this.focusKey;
885
- const newFocusKey = this.getNextFocusKey(targetFocusKey);
886
- this.log('setFocus', 'newFocusKey', newFocusKey);
887
- this.setCurrentFocusedKey(newFocusKey, details);
888
- this.updateParentsHasFocusedChild(newFocusKey, details);
889
- this.updateParentsLastFocusedChild(lastFocusedKey);
890
- }
891
- updateAllLayouts() {
892
- if (this.nativeMode) {
893
- return;
894
- }
895
- Object.entries(this.focusableComponents).forEach(([focusKey]) => {
896
- this.updateLayout(focusKey);
897
- });
898
- }
899
- updateLayout(focusKey) {
900
- const component = this.focusableComponents[focusKey];
901
- if (!component || this.nativeMode || component.layoutUpdated) {
902
- return;
903
- }
904
- const { node } = component;
905
- measureLayout(node, (x, y, width, height, left, top) => {
906
- component.layout = {
907
- x,
908
- y,
909
- width,
910
- height,
911
- left,
912
- top,
913
- node,
914
- };
915
- });
916
- }
917
- updateFocusable(focusKey, { node, preferredChildFocusKey, focusable, blockNavigationOut, }) {
918
- if (this.nativeMode) {
919
- return;
920
- }
921
- const component = this.focusableComponents[focusKey];
922
- if (component) {
923
- component.preferredChildFocusKey = preferredChildFocusKey;
924
- component.focusable = focusable ?? component.focusable;
925
- component.blockNavigationOut = blockNavigationOut;
926
- if (node) {
927
- component.node = node;
928
- }
929
- }
930
- }
931
- isNativeMode() {
932
- return this.nativeMode;
933
- }
934
- getFocusableComponents() {
935
- return Object.values(this.focusableComponents);
936
- }
937
- getFocusableComponentsByParentFocusKey(parentFocusKey) {
938
- return Object.values(this.focusableComponents).filter((component) => component.parentFocusKey === parentFocusKey);
939
- }
940
- }
941
- /**
942
- * Export singleton
943
- */
944
- export default SpatialNavigation;