@24i/bigscreen-sdk 1.0.40-alpha.2687 → 1.0.40

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 (1084) hide show
  1. package/README.md +47 -47
  2. package/__mocks__/@24i/bigscreen-sdk/animations.ts +2 -2
  3. package/package.json +1 -1
  4. package/packages/adobe-heartbeat/README.md +46 -46
  5. package/packages/adobe-heartbeat/src/AdobeHeartbeat.ts +244 -244
  6. package/packages/adobe-heartbeat/src/__external__/Adobe/Adobe.d.ts +24 -24
  7. package/packages/adobe-heartbeat/src/__external__/Adobe/MediaSDK.min.d.ts +126 -126
  8. package/packages/adobe-heartbeat/src/__external__/Adobe/MediaSDK.min.js +76 -76
  9. package/packages/adobe-heartbeat/src/index.ts +5 -5
  10. package/packages/adobe-heartbeat/src/types.ts +67 -67
  11. package/packages/analytics/README.md +7 -7
  12. package/packages/analytics/src/A.ts +1 -1
  13. package/packages/analytics/src/Analytics.ts +1 -1
  14. package/packages/analytics/src/analyticsOnScroll.ts +1 -1
  15. package/packages/analytics/src/clients/ConsoleAnalytics/ConsoleAnalytics.ts +1 -1
  16. package/packages/analytics/src/clients/ConsoleAnalytics/index.ts +1 -1
  17. package/packages/analytics/src/clients/GoogleAnalytics/GoogleAnalytics.ts +200 -200
  18. package/packages/analytics/src/clients/GoogleAnalytics/constants.ts +118 -118
  19. package/packages/analytics/src/clients/GoogleAnalytics/getUrl.ts +17 -17
  20. package/packages/analytics/src/clients/GoogleAnalytics/index.ts +2 -2
  21. package/packages/analytics/src/clients/GoogleAnalytics/interface.ts +77 -77
  22. package/packages/analytics/src/clients/GoogleAnalytics/mapPayload.ts +50 -50
  23. package/packages/analytics/src/clients/GoogleAnalytics/prepareBody.ts +14 -14
  24. package/packages/analytics/src/clients/TealiumAnalytics/TealiumAnalytics.ts +169 -169
  25. package/packages/analytics/src/clients/TealiumAnalytics/constants.ts +102 -102
  26. package/packages/analytics/src/clients/TealiumAnalytics/findIdForLanguage.ts +9 -9
  27. package/packages/analytics/src/clients/TealiumAnalytics/index.ts +4 -4
  28. package/packages/analytics/src/clients/TealiumAnalytics/interface.ts +33 -33
  29. package/packages/analytics/src/clients/TealiumAnalytics/mappers/__mocks__/mediaPayload.ts +70 -70
  30. package/packages/analytics/src/clients/TealiumAnalytics/mappers/helper.ts +36 -36
  31. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapAppError.ts +13 -13
  32. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteAdd.ts +11 -11
  33. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteRemove.ts +11 -11
  34. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerClose.ts +15 -15
  35. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerOpen.ts +15 -15
  36. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSceneView.ts +18 -18
  37. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearch.ts +18 -18
  38. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchFailed.ts +8 -8
  39. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchSuccess.ts +8 -8
  40. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoPause.ts +15 -15
  41. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoProgress.ts +18 -18
  42. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoResume.ts +15 -15
  43. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStart.ts +15 -15
  44. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStop.ts +15 -15
  45. package/packages/analytics/src/clients/TealiumAnalytics/types.ts +156 -156
  46. package/packages/analytics/src/clients/TwentyFourIQ/TwentyFourIQClient.ts +116 -116
  47. package/packages/analytics/src/clients/TwentyFourIQ/constants.ts +99 -99
  48. package/packages/analytics/src/clients/TwentyFourIQ/helper.ts +34 -34
  49. package/packages/analytics/src/clients/TwentyFourIQ/index.ts +2 -2
  50. package/packages/analytics/src/clients/TwentyFourIQ/interface.ts +31 -31
  51. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdLoaded.ts +13 -13
  52. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdSkipped.ts +16 -16
  53. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBase.ts +21 -21
  54. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBuffering.ts +15 -15
  55. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerClose.ts +24 -24
  56. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerOpen.ts +18 -18
  57. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapSceneView.ts +15 -15
  58. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapScroll.ts +17 -17
  59. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoComplete.ts +21 -21
  60. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoPause.ts +24 -24
  61. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoProgress.ts +24 -24
  62. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStart.ts +34 -34
  63. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStop.ts +32 -32
  64. package/packages/analytics/src/clients/TwentyFourIQ/types.ts +115 -115
  65. package/packages/analytics/src/constants.ts +1 -1
  66. package/packages/analytics/src/index.ts +3 -3
  67. package/packages/analytics/src/interface.ts +1 -1
  68. package/packages/analytics/src/utils/generateSessionId.ts +8 -8
  69. package/packages/animations/README.md +85 -85
  70. package/packages/animations/src/AnimationUtils.ts +238 -238
  71. package/packages/animations/src/JSAnimations.ts +144 -144
  72. package/packages/animations/src/__mocks__/JSAnimations.ts +30 -30
  73. package/packages/animations/src/index.ts +3 -3
  74. package/packages/announcement-banner/README.md +49 -49
  75. package/packages/announcement-banner/src/AnnouncementBanner.scss +8 -8
  76. package/packages/announcement-banner/src/AnnouncementBanner.tsx +136 -136
  77. package/packages/announcement-banner/src/index.ts +1 -1
  78. package/packages/async-image/README.md +47 -47
  79. package/packages/async-image/src/AsyncImage.tsx +101 -101
  80. package/packages/async-image/src/index.ts +2 -2
  81. package/packages/conviva/README.md +47 -47
  82. package/packages/conviva/src/ConvivaSDK.ts +38 -38
  83. package/packages/conviva/src/__mocks__/ConvivaMock.ts +36 -36
  84. package/packages/conviva/src/index.ts +1 -1
  85. package/packages/conviva/src/theoPlugin/ConvivaConviguration.ts +19 -19
  86. package/packages/conviva/src/theoPlugin/__external__/Conviva_4.0.15.js +698 -698
  87. package/packages/conviva/src/theoPlugin/__external__/convivaTheoPlugin.d.ts +7 -7
  88. package/packages/conviva/src/theoPlugin/__external__/convivaTheoPlugin.js +635 -635
  89. package/packages/conviva/src/theoPlugin/convivaTheoPluginWrapper.ts +61 -61
  90. package/packages/conviva/src/theoPlugin/index.ts +2 -2
  91. package/packages/developer-tools/DeveloperConsole/README.md +114 -114
  92. package/packages/developer-tools/DeveloperConsole/index.ts +3 -3
  93. package/packages/developer-tools/DeveloperConsole/unstyled.ts +1 -1
  94. package/packages/developer-tools/DeveloperToolsService/README.md +54 -54
  95. package/packages/developer-tools/DeveloperToolsService/index.ts +3 -3
  96. package/packages/developer-tools/DeveloperToolsService/unstyled.ts +1 -1
  97. package/packages/developer-tools/EnvironmentSelection/README.md +77 -77
  98. package/packages/developer-tools/EnvironmentSelection/index.ts +3 -3
  99. package/packages/developer-tools/EnvironmentSelection/unstyled.ts +1 -1
  100. package/packages/developer-tools/PlayerDebugWindow/README.md +65 -65
  101. package/packages/developer-tools/PlayerDebugWindow/index.ts +3 -3
  102. package/packages/developer-tools/PlayerDebugWindow/unstyled.ts +1 -1
  103. package/packages/developer-tools/README.md +24 -24
  104. package/packages/developer-tools/TechnicalInfo/README.md +90 -90
  105. package/packages/developer-tools/TechnicalInfo/index.ts +9 -9
  106. package/packages/developer-tools/TechnicalInfo/unstyled.ts +6 -6
  107. package/packages/developer-tools/src/DeveloperConsole/ControlButton.tsx +16 -16
  108. package/packages/developer-tools/src/DeveloperConsole/DeveloperConsole.tsx +389 -389
  109. package/packages/developer-tools/src/DeveloperConsole/Panel.tsx +108 -108
  110. package/packages/developer-tools/src/DeveloperConsole/PanelMessage.tsx +33 -33
  111. package/packages/developer-tools/src/DeveloperConsole/helpers/Queue.ts +38 -38
  112. package/packages/developer-tools/src/DeveloperConsole/helpers/index.ts +2 -2
  113. package/packages/developer-tools/src/DeveloperConsole/helpers/instrumentHandler.ts +165 -165
  114. package/packages/developer-tools/src/DeveloperConsole/index.ts +2 -2
  115. package/packages/developer-tools/src/DeveloperConsole/initDeveloperConsole.tsx +8 -8
  116. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.scss +91 -91
  117. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.styles.1080.scss +2 -2
  118. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.styles.scss +2 -2
  119. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/_sizes.1080.scss +16 -16
  120. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/_sizes.scss +16 -16
  121. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.scss +87 -87
  122. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.styles.1080.scss +2 -2
  123. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.styles.scss +2 -2
  124. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/_sizes.1080.scss +9 -9
  125. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/_sizes.scss +9 -9
  126. package/packages/developer-tools/src/DeveloperConsole/styles.ts +2 -2
  127. package/packages/developer-tools/src/DeveloperConsole/types.ts +49 -49
  128. package/packages/developer-tools/src/DeveloperConsole/utils/formatTime.ts +13 -13
  129. package/packages/developer-tools/src/DeveloperConsole/utils/index.ts +3 -3
  130. package/packages/developer-tools/src/DeveloperConsole/utils/stringify.ts +10 -10
  131. package/packages/developer-tools/src/DeveloperConsole/utils/styles.ts +24 -24
  132. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolItem.tsx +21 -21
  133. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsList.tsx +125 -125
  134. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsService.tsx +122 -122
  135. package/packages/developer-tools/src/DeveloperToolsService/index.ts +1 -1
  136. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.scss +64 -64
  137. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.1080.scss +2 -2
  138. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.animated.1080.scss +3 -3
  139. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.animated.scss +4 -4
  140. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.scss +2 -2
  141. package/packages/developer-tools/src/DeveloperToolsService/styles/_animated.scss +5 -5
  142. package/packages/developer-tools/src/DeveloperToolsService/styles/_sizes.1080.scss +16 -16
  143. package/packages/developer-tools/src/DeveloperToolsService/styles/_sizes.scss +16 -16
  144. package/packages/developer-tools/src/DeveloperToolsService/styles.ts +1 -1
  145. package/packages/developer-tools/src/EnvironmentSelection/EnvironmentList.tsx +90 -90
  146. package/packages/developer-tools/src/EnvironmentSelection/EnvironmentListItem.tsx +106 -106
  147. package/packages/developer-tools/src/EnvironmentSelection/EnvironmentSelection.tsx +102 -102
  148. package/packages/developer-tools/src/EnvironmentSelection/assets/checkmark.svg +18 -18
  149. package/packages/developer-tools/src/EnvironmentSelection/config.ts +43 -43
  150. package/packages/developer-tools/src/EnvironmentSelection/constants.ts +1 -1
  151. package/packages/developer-tools/src/EnvironmentSelection/index.ts +2 -2
  152. package/packages/developer-tools/src/EnvironmentSelection/sizes.1080.ts +5 -5
  153. package/packages/developer-tools/src/EnvironmentSelection/sizes.ts +5 -5
  154. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.scss +141 -141
  155. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.1080.scss +2 -2
  156. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.animated.1080.scss +3 -3
  157. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.animated.scss +3 -3
  158. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.scss +2 -2
  159. package/packages/developer-tools/src/EnvironmentSelection/styles/_animated.scss +9 -9
  160. package/packages/developer-tools/src/EnvironmentSelection/styles/_sizes.1080.scss +26 -26
  161. package/packages/developer-tools/src/EnvironmentSelection/styles/_sizes.scss +26 -26
  162. package/packages/developer-tools/src/EnvironmentSelection/styles.ts +1 -1
  163. package/packages/developer-tools/src/EnvironmentSelection/types.ts +10 -10
  164. package/packages/developer-tools/src/EnvironmentSelection/utils/format.ts +4 -4
  165. package/packages/developer-tools/src/IDeveloperTool.ts +14 -14
  166. package/packages/developer-tools/src/PlayerDebugWindow/PlayerDebugWindow.tsx +115 -115
  167. package/packages/developer-tools/src/PlayerDebugWindow/constants.ts +128 -128
  168. package/packages/developer-tools/src/PlayerDebugWindow/index.ts +1 -1
  169. package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.scss +29 -29
  170. package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.styles.1080.scss +2 -2
  171. package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.styles.scss +2 -2
  172. package/packages/developer-tools/src/PlayerDebugWindow/styles/_sizes.1080.scss +11 -11
  173. package/packages/developer-tools/src/PlayerDebugWindow/styles/_sizes.scss +11 -11
  174. package/packages/developer-tools/src/PlayerDebugWindow/styles.ts +1 -1
  175. package/packages/developer-tools/src/TechnicalInfo/ITechnicalInfoProvider.ts +5 -5
  176. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfo.tsx +125 -125
  177. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoDetail.tsx +77 -77
  178. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoProvider.ts +349 -349
  179. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Device.ts +55 -55
  180. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Player.ts +7 -7
  181. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Storage.ts +9 -9
  182. package/packages/developer-tools/src/TechnicalInfo/icons/arrow-down.svg +18 -18
  183. package/packages/developer-tools/src/TechnicalInfo/icons/arrow-up.svg +18 -18
  184. package/packages/developer-tools/src/TechnicalInfo/index.ts +5 -5
  185. package/packages/developer-tools/src/TechnicalInfo/sizes.1080.ts +1 -1
  186. package/packages/developer-tools/src/TechnicalInfo/sizes.ts +1 -1
  187. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.scss +187 -187
  188. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.1080.scss +2 -2
  189. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.animated.1080.scss +3 -3
  190. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.animated.scss +3 -3
  191. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.scss +2 -2
  192. package/packages/developer-tools/src/TechnicalInfo/styles/_animated.scss +16 -16
  193. package/packages/developer-tools/src/TechnicalInfo/styles/_sizes.1080.scss +50 -50
  194. package/packages/developer-tools/src/TechnicalInfo/styles/_sizes.scss +50 -50
  195. package/packages/developer-tools/src/TechnicalInfo/styles.ts +1 -1
  196. package/packages/developer-tools/src/TechnicalInfo/translations.ts +79 -79
  197. package/packages/developer-tools/src/TechnicalInfo/utils/eme01bSupport.ts +58 -58
  198. package/packages/developer-tools/src/TechnicalInfo/utils/emeSupport.ts +84 -84
  199. package/packages/developer-tools/src/TechnicalInfo/utils/formatTimezone.ts +15 -15
  200. package/packages/developer-tools/src/TechnicalInfo/utils/mseSupport.ts +14 -14
  201. package/packages/developer-tools/src/utils/reload.ts +6 -6
  202. package/packages/device/README.md +219 -219
  203. package/packages/device/keymap.ts +1 -1
  204. package/packages/device/resolver/index.ts +2 -2
  205. package/packages/device/resolver/keymap.ts +1 -1
  206. package/packages/device/src/DeviceEventMap.ts +1 -1
  207. package/packages/device/src/device.ts +6 -6
  208. package/packages/device/src/driver/index.android.tv.ts +1 -1
  209. package/packages/device/src/driver/index.entone.ts +1 -1
  210. package/packages/device/src/driver/index.firetv.ts +1 -1
  211. package/packages/device/src/driver/index.hbbtv.tv.ts +1 -1
  212. package/packages/device/src/driver/index.kreatv.ts +1 -1
  213. package/packages/device/src/driver/index.saphi.tv.ts +1 -1
  214. package/packages/device/src/driver/index.smartcast.tv.ts +1 -1
  215. package/packages/device/src/driver/index.tizen.tv.ts +1 -1
  216. package/packages/device/src/driver/index.ts +1 -1
  217. package/packages/device/src/driver/index.vidaa.tv.ts +1 -1
  218. package/packages/device/src/driver/index.webos.tv.ts +1 -1
  219. package/packages/device/src/getKeyDigit.ts +35 -35
  220. package/packages/device/src/getKeyMap.ts +4 -4
  221. package/packages/device/src/index.ts +8 -8
  222. package/packages/device/src/isClickOrEnter.ts +3 -3
  223. package/packages/device/src/resolver/index.ts +2 -2
  224. package/packages/device/src/resolver/resolver.ts +84 -84
  225. package/packages/digital-clock/README.md +26 -26
  226. package/packages/digital-clock/src/DigitalClock.tsx +78 -78
  227. package/packages/digital-clock/src/index.ts +1 -1
  228. package/packages/driver-androidtv/src/DeviceAndroidTV.ts +224 -224
  229. package/packages/driver-androidtv/src/__mocks__/javaScriptBridge.ts +36 -36
  230. package/packages/driver-androidtv/src/formatUserAgent.ts +11 -11
  231. package/packages/driver-androidtv/src/index.ts +1 -1
  232. package/packages/driver-androidtv/src/keymap.ts +27 -27
  233. package/packages/driver-androidtv/src/types.ts +113 -113
  234. package/packages/driver-base/DeviceBase.md +139 -139
  235. package/packages/driver-base/README.md +44 -44
  236. package/packages/driver-base/src/ConnectionType.ts +1 -1
  237. package/packages/driver-base/src/DeviceBase.ts +279 -279
  238. package/packages/driver-base/src/KeyMap/Key.ts +48 -48
  239. package/packages/driver-base/src/KeyMap/KeyMap.ts +390 -390
  240. package/packages/driver-base/src/KeyMap/generateKeyCodeKeyMap.ts +11 -11
  241. package/packages/driver-base/src/KeyMap/index.ts +5 -5
  242. package/packages/driver-base/src/KeyMap/interface.ts +8 -8
  243. package/packages/driver-base/src/KeyMap/overrideValues.ts +17 -17
  244. package/packages/driver-base/src/KeyMap/switchByKey.ts +18 -18
  245. package/packages/driver-base/src/ScreenSize.ts +1 -1
  246. package/packages/driver-base/src/VolumeRange.ts +5 -5
  247. package/packages/driver-base/src/__mocks__/DeviceBase.ts +100 -100
  248. package/packages/driver-base/src/__mocks__/keyMap.ts +42 -42
  249. package/packages/driver-base/src/bindPreventDefaultEvent.ts +5 -5
  250. package/packages/driver-base/src/errors.ts +32 -32
  251. package/packages/driver-base/src/index.ts +10 -10
  252. package/packages/driver-base/src/loadObject.ts +30 -30
  253. package/packages/driver-base/src/types/DeviceEvent.ts +11 -11
  254. package/packages/driver-base/src/types/ExitOptions.ts +1 -1
  255. package/packages/driver-base/src/types/KeycodeKeyMap.ts +86 -86
  256. package/packages/driver-base/src/types/ScreenSaverStatus.ts +3 -3
  257. package/packages/driver-base/src/utils.ts +10 -10
  258. package/packages/driver-browser/src/DeviceBrowser.ts +170 -170
  259. package/packages/driver-browser/src/getBrowser.ts +51 -51
  260. package/packages/driver-browser/src/getOsName.ts +30 -30
  261. package/packages/driver-browser/src/index.ts +1 -1
  262. package/packages/driver-browser/src/keymap.ts +22 -22
  263. package/packages/driver-browser/src/patchSuitestKeys.ts +27 -27
  264. package/packages/driver-entone/README.md +9 -9
  265. package/packages/driver-entone/src/DeviceEntone.ts +232 -232
  266. package/packages/driver-entone/src/IEntone.ts +460 -460
  267. package/packages/driver-entone/src/__mocks__/entone.ts +177 -177
  268. package/packages/driver-entone/src/constants.ts +73 -73
  269. package/packages/driver-entone/src/index.ts +1 -1
  270. package/packages/driver-entone/src/keymap.ts +57 -57
  271. package/packages/driver-firetv/src/DeviceFireTV.ts +18 -18
  272. package/packages/driver-firetv/src/__mocks__/javaScriptBridge.ts +36 -36
  273. package/packages/driver-firetv/src/index.ts +1 -1
  274. package/packages/driver-hbbtv/src/DeviceHbbTV.ts +313 -313
  275. package/packages/driver-hbbtv/src/__mocks__/hbbtv.ts +17 -17
  276. package/packages/driver-hbbtv/src/constants.ts +28 -28
  277. package/packages/driver-hbbtv/src/deviceInfo.ts +23 -23
  278. package/packages/driver-hbbtv/src/getVersion.ts +16 -16
  279. package/packages/driver-hbbtv/src/index.ts +1 -1
  280. package/packages/driver-hbbtv/src/keymap.ts +45 -45
  281. package/packages/driver-hbbtv/src/types.ts +366 -366
  282. package/packages/driver-kreatv/src/DeviceKreaTV.ts +271 -271
  283. package/packages/driver-kreatv/src/IToi.ts +379 -379
  284. package/packages/driver-kreatv/src/__mocks__/toi2.ts +76 -76
  285. package/packages/driver-kreatv/src/__mocks__/toi3.ts +43 -43
  286. package/packages/driver-kreatv/src/index.ts +1 -1
  287. package/packages/driver-kreatv/src/keymap.ts +31 -31
  288. package/packages/driver-kreatv/src/toi2.ts +107 -107
  289. package/packages/driver-kreatv/src/toi3.ts +102 -102
  290. package/packages/driver-kreatv/src/types.ts +35 -35
  291. package/packages/driver-saphi/src/DeviceSaphi.ts +144 -144
  292. package/packages/driver-saphi/src/__mocks__/SmartTvA_API.ts +11 -11
  293. package/packages/driver-saphi/src/__mocks__/userAgent.ts +4 -4
  294. package/packages/driver-saphi/src/constants.ts +1 -1
  295. package/packages/driver-saphi/src/formatUserAgent.ts +19 -19
  296. package/packages/driver-saphi/src/index.ts +1 -1
  297. package/packages/driver-saphi/src/keymap.ts +64 -64
  298. package/packages/driver-saphi/src/types.ts +75 -75
  299. package/packages/driver-smartcast/src/DeviceSmartCast.ts +317 -317
  300. package/packages/driver-smartcast/src/__mocks__/api.ts +49 -49
  301. package/packages/driver-smartcast/src/index.ts +1 -1
  302. package/packages/driver-smartcast/src/keymap.ts +9 -9
  303. package/packages/driver-smartcast/src/types.ts +65 -65
  304. package/packages/driver-tizen/src/DeviceTizen.ts +298 -298
  305. package/packages/driver-tizen/src/ITizen.ts +212 -212
  306. package/packages/driver-tizen/src/IWebapis.ts +95 -95
  307. package/packages/driver-tizen/src/TizenKeys.ts +96 -96
  308. package/packages/driver-tizen/src/__mocks__/tizen.ts +35 -35
  309. package/packages/driver-tizen/src/constants.ts +197 -197
  310. package/packages/driver-tizen/src/index.ts +1 -1
  311. package/packages/driver-tizen/src/types.ts +14 -14
  312. package/packages/driver-vidaa/src/DeviceVidaa.ts +141 -141
  313. package/packages/driver-vidaa/src/__mocks__/vidaa.ts +21 -21
  314. package/packages/driver-vidaa/src/constants.ts +8 -8
  315. package/packages/driver-vidaa/src/formatUserAgent.ts +16 -16
  316. package/packages/driver-vidaa/src/index.ts +1 -1
  317. package/packages/driver-vidaa/src/keymap.ts +56 -56
  318. package/packages/driver-vidaa/src/types.ts +90 -90
  319. package/packages/driver-webos/src/DeviceWebos.ts +313 -313
  320. package/packages/driver-webos/src/__mocks__/webos.ts +172 -172
  321. package/packages/driver-webos/src/constants.ts +20 -20
  322. package/packages/driver-webos/src/index.ts +1 -1
  323. package/packages/driver-webos/src/keymap.ts +10 -10
  324. package/packages/driver-webos/src/types.ts +344 -344
  325. package/packages/driver-webos/src/utils.ts +60 -60
  326. package/packages/driver-webos/src/webOSTVjs/webOSTVjs.js +12 -12
  327. package/packages/driver-xbox/__external__/winjs/directionalnavigation-1.0.0.0.js +1015 -1015
  328. package/packages/driver-xbox/src/DeviceXbox.ts +231 -231
  329. package/packages/driver-xbox/src/__mocks__/Windows.ts +94 -94
  330. package/packages/driver-xbox/src/index.ts +1 -1
  331. package/packages/driver-xbox/src/interfaces.ts +138 -138
  332. package/packages/driver-xbox/src/keymap.ts +96 -96
  333. package/packages/driver-xbox/src/utils.ts +23 -23
  334. package/packages/epg/IMPLEMENTATION.md +228 -228
  335. package/packages/epg/MockGenerator.md +102 -102
  336. package/packages/epg/README.md +585 -585
  337. package/packages/epg/src/v2/Cell.tsx +222 -222
  338. package/packages/epg/src/v2/CellsManager.ts +1 -1
  339. package/packages/epg/src/v2/DataManager.ts +372 -372
  340. package/packages/epg/src/v2/DatePicker.tsx +110 -110
  341. package/packages/epg/src/v2/DateToast/DateToast.scss +28 -28
  342. package/packages/epg/src/v2/DateToast/DateToast.styles.1080.scss +2 -2
  343. package/packages/epg/src/v2/DateToast/DateToast.styles.scss +2 -2
  344. package/packages/epg/src/v2/DateToast/DateToast.tsx +90 -90
  345. package/packages/epg/src/v2/DateToast/_sizes.1080.scss +7 -7
  346. package/packages/epg/src/v2/DateToast/_sizes.scss +7 -7
  347. package/packages/epg/src/v2/DateToast/index.tsx +1 -1
  348. package/packages/epg/src/v2/DateToast/styles.ts +1 -1
  349. package/packages/epg/src/v2/Day.tsx +33 -33
  350. package/packages/epg/src/v2/Epg.tsx +462 -462
  351. package/packages/epg/src/v2/Header.tsx +41 -41
  352. package/packages/epg/src/v2/IdleController.ts +25 -25
  353. package/packages/epg/src/v2/InputEvents.ts +301 -301
  354. package/packages/epg/src/v2/MockGenerator/config.1080.ts +2 -2
  355. package/packages/epg/src/v2/MockGenerator/config.ts +2 -2
  356. package/packages/epg/src/v2/MockGenerator/generator.ts +174 -174
  357. package/packages/epg/src/v2/MockGenerator/index.ts +2 -2
  358. package/packages/epg/src/v2/MockGenerator/mocks/data.ts +102 -102
  359. package/packages/epg/src/v2/MockGenerator/types.ts +25 -25
  360. package/packages/epg/src/v2/MockGenerator/utils.ts +28 -28
  361. package/packages/epg/src/v2/MouseNavigation/MouseNavigation.tsx +88 -88
  362. package/packages/epg/src/v2/MouseNavigation/MouseNavigationFallback.ts +4 -4
  363. package/packages/epg/src/v2/MouseNavigation/index.tizen.tv.ts +1 -1
  364. package/packages/epg/src/v2/MouseNavigation/index.ts +1 -1
  365. package/packages/epg/src/v2/MouseNavigation/index.web.ts +1 -1
  366. package/packages/epg/src/v2/MouseNavigation/index.webos.tv.ts +1 -1
  367. package/packages/epg/src/v2/NowLine.tsx +66 -66
  368. package/packages/epg/src/v2/Program.tsx +58 -58
  369. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.scss +67 -67
  370. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.1080.scss +3 -3
  371. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.animated.1080.scss +2 -2
  372. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.animated.scss +2 -2
  373. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.scss +3 -3
  374. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.tsx +149 -149
  375. package/packages/epg/src/v2/ProgramInfo/_animated.scss +8 -8
  376. package/packages/epg/src/v2/ProgramInfo/_mixins.scss +5 -5
  377. package/packages/epg/src/v2/ProgramInfo/_sizes.1080.scss +21 -21
  378. package/packages/epg/src/v2/ProgramInfo/_sizes.scss +21 -21
  379. package/packages/epg/src/v2/ProgramInfo/index.ts +1 -1
  380. package/packages/epg/src/v2/ProgramInfo/rtl.scss +7 -7
  381. package/packages/epg/src/v2/ProgramInfo/sizes.1080.ts +3 -3
  382. package/packages/epg/src/v2/ProgramInfo/sizes.ts +3 -3
  383. package/packages/epg/src/v2/ProgramInfo/styles.ts +1 -1
  384. package/packages/epg/src/v2/ProgramInfo/utils.ts +28 -28
  385. package/packages/epg/src/v2/Row.tsx +134 -134
  386. package/packages/epg/src/v2/RowsManager.ts +1 -1
  387. package/packages/epg/src/v2/TimeManager.ts +58 -58
  388. package/packages/epg/src/v2/Timeline.ts +1 -1
  389. package/packages/epg/src/v2/TimelineSection.tsx +50 -50
  390. package/packages/epg/src/v2/basic/CellsManager.tsx +300 -300
  391. package/packages/epg/src/v2/basic/RowsManager.tsx +503 -503
  392. package/packages/epg/src/v2/basic/Timeline.tsx +88 -88
  393. package/packages/epg/src/v2/index.ts +1 -1
  394. package/packages/epg/src/v2/interface.ts +1519 -1519
  395. package/packages/epg/src/v2/sizes.1080.ts +2 -2
  396. package/packages/epg/src/v2/sizes.ts +2 -2
  397. package/packages/epg/src/v2/styles/Basic/Basic.scss +116 -116
  398. package/packages/epg/src/v2/styles/Basic/index.ts +1 -1
  399. package/packages/epg/src/v2/styles/Whitelabel/index.ts +1 -1
  400. package/packages/epg/src/v2/utils.ts +40 -40
  401. package/packages/events-manager/src/EventsManager.ts +1 -1
  402. package/packages/events-manager/src/index.ts +2 -2
  403. package/packages/floating-focus/README.md +64 -64
  404. package/packages/floating-focus/src/FloatingFocus.ts +106 -106
  405. package/packages/floating-focus/src/Horizontal.tsx +20 -20
  406. package/packages/floating-focus/src/Vertical.tsx +20 -20
  407. package/packages/floating-focus/src/index.ts +4 -4
  408. package/packages/floating-focus/src/types.ts +20 -20
  409. package/packages/floating-focus/src/utils.ts +43 -43
  410. package/packages/focus/README.md +348 -348
  411. package/packages/focus/src/IFocusable.ts +5 -5
  412. package/packages/focus/src/Layout/Base.tsx +166 -166
  413. package/packages/focus/src/Layout/Horizontal.ts +15 -15
  414. package/packages/focus/src/Layout/Matrix.tsx +357 -357
  415. package/packages/focus/src/Layout/Vertical.ts +12 -12
  416. package/packages/focus/src/Layout/constants.ts +10 -10
  417. package/packages/focus/src/Layout/isRtl.ts +12 -12
  418. package/packages/focus/src/Layout/types.ts +7 -7
  419. package/packages/focus/src/candidate.ts +106 -106
  420. package/packages/focus/src/focusFirstExisting.ts +19 -19
  421. package/packages/focus/src/hasFocus.ts +36 -36
  422. package/packages/focus/src/index.ts +16 -16
  423. package/packages/focus/src/refocusAfterHashChange.ts +19 -19
  424. package/packages/focus/src/safeFocus.ts +15 -15
  425. package/packages/gallup/README.md +27 -27
  426. package/packages/gallup/src/Gallup.ts +80 -80
  427. package/packages/gallup/src/GallupMock.ts +7 -7
  428. package/packages/gallup/src/__external__/SpringStreams.d.ts +39 -39
  429. package/packages/gallup/src/__mocks__/SpringStreams.js +18 -18
  430. package/packages/gallup/src/index.ts +1 -1
  431. package/packages/grid/BasicGrid/README.md +78 -78
  432. package/packages/grid/BasicGrid/index.ts +1 -1
  433. package/packages/grid/FirstOnlyGrid/README.md +43 -43
  434. package/packages/grid/FirstOnlyGrid/index.ts +1 -1
  435. package/packages/grid/FixedToEndGrid/README.md +45 -45
  436. package/packages/grid/FixedToEndGrid/index.ts +1 -1
  437. package/packages/grid/Item/index.ts +1 -1
  438. package/packages/grid/README.md +169 -169
  439. package/packages/grid/src/Base/Base.tsx +492 -492
  440. package/packages/grid/src/Base/MouseNavigation/MouseNavigation.tsx +82 -82
  441. package/packages/grid/src/Base/MouseNavigation/MouseNavigationFallback.ts +4 -4
  442. package/packages/grid/src/Base/MouseNavigation/index.tizen.tv.ts +1 -1
  443. package/packages/grid/src/Base/MouseNavigation/index.ts +1 -1
  444. package/packages/grid/src/Base/MouseNavigation/index.webos.tv.ts +1 -1
  445. package/packages/grid/src/Base/MouseNavigation/index.webtv.ts +1 -1
  446. package/packages/grid/src/Base/index.ts +1 -1
  447. package/packages/grid/src/Base/interface.ts +47 -47
  448. package/packages/grid/src/BasicGrid/BasicGrid.tsx +137 -137
  449. package/packages/grid/src/BasicGrid/config.ts +13 -13
  450. package/packages/grid/src/FastFocusingOptimizer/FastFocusingOptimizer.ts +54 -54
  451. package/packages/grid/src/FirstOnlyGrid/FirstOnlyGrid.tsx +112 -112
  452. package/packages/grid/src/FirstOnlyGrid/config.ts +13 -13
  453. package/packages/grid/src/FirstOnlyGrid/controller.ts +10 -10
  454. package/packages/grid/src/FixedToEndGrid/FixedToEndGrid.tsx +112 -112
  455. package/packages/grid/src/FixedToEndGrid/config.ts +13 -13
  456. package/packages/grid/src/FixedToEndGrid/controller.ts +36 -36
  457. package/packages/grid/src/UnifiedGridController/UnifiedGridController.ts +555 -555
  458. package/packages/grid/src/UnifiedGridController/index.ts +2 -2
  459. package/packages/grid/src/UnifiedGridController/interface.ts +92 -92
  460. package/packages/grid/src/animate.animated.ts +1 -1
  461. package/packages/grid/src/animate.ts +1 -1
  462. package/packages/grid/src/interface.ts +30 -30
  463. package/packages/grid/src/mocks/index.tsx +41 -41
  464. package/packages/grid/src/types.ts +69 -69
  465. package/packages/grid/src/utils.ts +69 -69
  466. package/packages/i18n/README.md +460 -460
  467. package/packages/i18n/src/I18n.ts +246 -246
  468. package/packages/i18n/src/Translation.tsx +36 -36
  469. package/packages/i18n/src/addResourceBundle.ts +73 -73
  470. package/packages/i18n/src/direction.ts +33 -33
  471. package/packages/i18n/src/index.ts +4 -4
  472. package/packages/i18n/src/isRtl.ts +3 -3
  473. package/packages/i18n/src/middlewares/i18next/Context/Context.ts +25 -25
  474. package/packages/i18n/src/middlewares/i18next/Context/index.ts +1 -1
  475. package/packages/i18n/src/middlewares/i18next/Interpolation/Interpolation.ts +95 -95
  476. package/packages/i18n/src/middlewares/i18next/Interpolation/index.ts +1 -1
  477. package/packages/i18n/src/middlewares/i18next/Nesting/Nesting.ts +38 -38
  478. package/packages/i18n/src/middlewares/i18next/Nesting/index.ts +1 -1
  479. package/packages/i18n/src/middlewares/i18next/Plurals/Plurals.ts +123 -123
  480. package/packages/i18n/src/middlewares/i18next/Plurals/Resolvers.ts +124 -124
  481. package/packages/i18n/src/middlewares/i18next/Plurals/index.ts +1 -1
  482. package/packages/i18n/src/middlewares/i18next/Plurals/types.ts +6 -6
  483. package/packages/i18n/src/middlewares/icu/DateInterpolation/DateInterpolation.ts +64 -64
  484. package/packages/i18n/src/middlewares/icu/DateInterpolation/index.ts +1 -1
  485. package/packages/i18n/src/middlewares/icu/Interpolation/Interpolation.ts +39 -39
  486. package/packages/i18n/src/middlewares/icu/Interpolation/index.ts +1 -1
  487. package/packages/i18n/src/middlewares/icu/NumberInterpolation/NumberInterpolation.ts +41 -41
  488. package/packages/i18n/src/middlewares/icu/NumberInterpolation/index.ts +1 -1
  489. package/packages/i18n/src/middlewares/icu/Plurals/Plurals.ts +65 -65
  490. package/packages/i18n/src/middlewares/icu/Plurals/Resolvers.ts +130 -130
  491. package/packages/i18n/src/middlewares/icu/Plurals/index.ts +1 -1
  492. package/packages/i18n/src/middlewares/icu/Plurals/types.ts +15 -15
  493. package/packages/i18n/src/middlewares/icu/Select/Select.ts +36 -36
  494. package/packages/i18n/src/middlewares/icu/Select/index.ts +1 -1
  495. package/packages/i18n/src/middlewares/icu/TimeInterpolation/TimeInterpolation.ts +65 -65
  496. package/packages/i18n/src/middlewares/icu/TimeInterpolation/index.ts +1 -1
  497. package/packages/i18n/src/middlewares/icu/shared/hasVariable.ts +5 -5
  498. package/packages/i18n/src/middlewares/icu/shared/matchSwitchCase.ts +80 -80
  499. package/packages/i18n/src/middlewares/icu/shared/unwrap.ts +1 -1
  500. package/packages/i18n/src/pluralsCommon/PluralsHelper.ts +54 -54
  501. package/packages/i18n/src/pluralsCommon/ResolverByLanguage.ts +129 -129
  502. package/packages/i18n/src/t.tsx +6 -6
  503. package/packages/i18n/src/typedTranslate.ts +31 -31
  504. package/packages/i18n/src/types.ts +66 -66
  505. package/packages/i18n/src/utils.ts +76 -76
  506. package/packages/icon/README.md +107 -107
  507. package/packages/icon/src/Icon.tsx +71 -71
  508. package/packages/icon/src/index.ts +1 -1
  509. package/packages/ime/README.md +72 -72
  510. package/packages/ime/src/IKeyboard.ts +6 -6
  511. package/packages/ime/src/IKeyboardEvent.ts +7 -7
  512. package/packages/ime/src/ImeManager.ts +33 -33
  513. package/packages/ime/src/SystemKeyboard/SystemKeyboard.ts +33 -33
  514. package/packages/ime/src/SystemKeyboard/SystemKeyboardBase.ts +98 -98
  515. package/packages/ime/src/SystemKeyboard/TizenSystemKeyboard.ts +66 -66
  516. package/packages/ime/src/SystemKeyboard/WebosSystemKeyboard.ts +74 -74
  517. package/packages/ime/src/SystemKeyboard/index.tizen.tv.ts +1 -1
  518. package/packages/ime/src/SystemKeyboard/index.ts +1 -1
  519. package/packages/ime/src/SystemKeyboard/index.webos.tv.ts +1 -1
  520. package/packages/ime/src/index.ts +3 -3
  521. package/packages/input/README.md +65 -65
  522. package/packages/input/__mocks__/MockKeyboard.ts +40 -40
  523. package/packages/input/src/Input.scss +9 -9
  524. package/packages/input/src/Input.tsx +267 -267
  525. package/packages/input/src/index.ts +1 -1
  526. package/packages/input/src/utils.ts +71 -71
  527. package/packages/interactable/README.md +38 -38
  528. package/packages/interactable/src/Interactable.tsx +33 -33
  529. package/packages/interactable/src/index.ts +1 -1
  530. package/packages/interactable/src/interface.ts +7 -7
  531. package/packages/ipify/README.md +30 -30
  532. package/packages/ipify/src/index.ts +1 -1
  533. package/packages/ipify/src/ipify.ts +41 -41
  534. package/packages/jsx/README.md +388 -388
  535. package/packages/jsx/src/Component.ts +68 -68
  536. package/packages/jsx/src/createRef.ts +5 -5
  537. package/packages/jsx/src/forwardRef.ts +8 -8
  538. package/packages/jsx/src/index.ts +31 -31
  539. package/packages/jsx/src/jsx-runtime.ts +5 -5
  540. package/packages/jsx/src/manipulation/attachNode.ts +30 -30
  541. package/packages/jsx/src/manipulation/attachNodeBefore.ts +44 -44
  542. package/packages/jsx/src/manipulation/clearNode.ts +14 -14
  543. package/packages/jsx/src/manipulation/detachNode.ts +26 -26
  544. package/packages/jsx/src/manipulation/index.ts +7 -7
  545. package/packages/jsx/src/manipulation/removeNode.ts +18 -18
  546. package/packages/jsx/src/manipulation/replaceNode.ts +42 -42
  547. package/packages/jsx/src/manipulation/swapNodes.ts +53 -53
  548. package/packages/jsx/src/mount/guards.ts +26 -26
  549. package/packages/jsx/src/mount/handleLifecycle.ts +71 -71
  550. package/packages/jsx/src/mount/index.ts +1 -1
  551. package/packages/jsx/src/mount/lifecycle.ts +38 -38
  552. package/packages/jsx/src/mount/lifecycleHelpers.ts +29 -29
  553. package/packages/jsx/src/mount/mount.ts +141 -141
  554. package/packages/jsx/src/mount/namespaces.ts +7 -7
  555. package/packages/jsx/src/mount/props.ts +121 -121
  556. package/packages/jsx/src/nodeUtils.ts +69 -69
  557. package/packages/jsx/src/setText.ts +15 -15
  558. package/packages/jsx/src/test-utils/MountedComponent.ts +50 -50
  559. package/packages/jsx/src/test-utils/README.md +72 -72
  560. package/packages/jsx/src/test-utils/click.ts +7 -7
  561. package/packages/jsx/src/test-utils/enter.ts +4 -4
  562. package/packages/jsx/src/test-utils/index.ts +6 -6
  563. package/packages/jsx/src/test-utils/keydown.ts +27 -27
  564. package/packages/jsx/src/test-utils/keyup.ts +27 -27
  565. package/packages/jsx/src/test-utils/shallow.ts +33 -33
  566. package/packages/jsx/src/test-utils/spec-utils.ts +6 -6
  567. package/packages/jsx/src/textNode.ts +9 -9
  568. package/packages/jsx/src/types.ts +128 -128
  569. package/packages/jsx/src/utils.ts +35 -35
  570. package/packages/jsx/src/virtualDOM.ts +121 -121
  571. package/packages/key-sequence/README.md +44 -44
  572. package/packages/key-sequence/src/KeySequence.ts +56 -56
  573. package/packages/key-sequence/src/arrayEndsWithKeyCombo.ts +22 -22
  574. package/packages/key-sequence/src/index.ts +1 -1
  575. package/packages/key-sequence/src/types.ts +13 -13
  576. package/packages/keyboard/README.md +237 -237
  577. package/packages/keyboard/src/AndroidKeyboard/Keyboard.scss +140 -140
  578. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.1080.scss +2 -2
  579. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.animated.1080.scss +3 -3
  580. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.animated.scss +3 -3
  581. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.scss +2 -2
  582. package/packages/keyboard/src/AndroidKeyboard/Keyboard.tsx +235 -235
  583. package/packages/keyboard/src/AndroidKeyboard/_animated.scss +7 -7
  584. package/packages/keyboard/src/AndroidKeyboard/_sizes.1080.scss +15 -15
  585. package/packages/keyboard/src/AndroidKeyboard/_sizes.scss +15 -15
  586. package/packages/keyboard/src/AndroidKeyboard/icons/arrow_left.svg +6 -6
  587. package/packages/keyboard/src/AndroidKeyboard/icons/arrow_right.svg +6 -6
  588. package/packages/keyboard/src/AndroidKeyboard/icons/key_backspace.svg +12 -12
  589. package/packages/keyboard/src/AndroidKeyboard/index.ts +1 -1
  590. package/packages/keyboard/src/AndroidKeyboard/makeLayout.ts +19 -19
  591. package/packages/keyboard/src/Backdrop/Backdrop.scss +17 -17
  592. package/packages/keyboard/src/Backdrop/Backdrop.styles.1080.scss +2 -2
  593. package/packages/keyboard/src/Backdrop/Backdrop.styles.scss +2 -2
  594. package/packages/keyboard/src/Backdrop/Backdrop.tsx +31 -31
  595. package/packages/keyboard/src/Backdrop/_sizes.1080.scss +2 -2
  596. package/packages/keyboard/src/Backdrop/_sizes.scss +2 -2
  597. package/packages/keyboard/src/DefaultKeyboard/Keyboard.scss +73 -73
  598. package/packages/keyboard/src/DefaultKeyboard/Keyboard.styles.1080.scss +2 -2
  599. package/packages/keyboard/src/DefaultKeyboard/Keyboard.styles.scss +2 -2
  600. package/packages/keyboard/src/DefaultKeyboard/Keyboard.tsx +155 -155
  601. package/packages/keyboard/src/DefaultKeyboard/_sizes.1080.scss +12 -12
  602. package/packages/keyboard/src/DefaultKeyboard/_sizes.scss +12 -12
  603. package/packages/keyboard/src/DefaultKeyboard/index.ts +1 -1
  604. package/packages/keyboard/src/KeyboardBase.tsx +344 -344
  605. package/packages/keyboard/src/MobiKeyboard/Keyboard.scss +180 -180
  606. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.1080.scss +2 -2
  607. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.animated.1080.scss +3 -3
  608. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.animated.scss +3 -3
  609. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.scss +2 -2
  610. package/packages/keyboard/src/MobiKeyboard/Keyboard.tsx +278 -278
  611. package/packages/keyboard/src/MobiKeyboard/_animated.scss +7 -7
  612. package/packages/keyboard/src/MobiKeyboard/_sizes.1080.scss +10 -10
  613. package/packages/keyboard/src/MobiKeyboard/_sizes.scss +10 -10
  614. package/packages/keyboard/src/MobiKeyboard/icons/arrow_left.svg +6 -6
  615. package/packages/keyboard/src/MobiKeyboard/icons/arrow_right.svg +6 -6
  616. package/packages/keyboard/src/MobiKeyboard/icons/key_backspace.svg +12 -12
  617. package/packages/keyboard/src/MobiKeyboard/icons/key_space.svg +6 -6
  618. package/packages/keyboard/src/MobiKeyboard/index.ts +1 -1
  619. package/packages/keyboard/src/MobiKeyboard/utils.ts +19 -19
  620. package/packages/keyboard/src/QwertyKeyboardBase/QwertyKeyboardBase.tsx +54 -54
  621. package/packages/keyboard/src/ShiftMode.ts +25 -25
  622. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.scss +168 -168
  623. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.styles.1080.scss +2 -2
  624. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.styles.scss +2 -2
  625. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.tsx +353 -353
  626. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/_sizes.1080.scss +7 -7
  627. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/_sizes.scss +7 -7
  628. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/index.ts +1 -1
  629. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.scss +81 -81
  630. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.styles.1080.scss +2 -2
  631. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.styles.scss +2 -2
  632. package/packages/keyboard/src/WhitelabelKeyboard/_sizes.1080.scss +32 -32
  633. package/packages/keyboard/src/WhitelabelKeyboard/_sizes.scss +32 -32
  634. package/packages/keyboard/src/WhitelabelKeyboard/icons/arrow_left.svg +9 -9
  635. package/packages/keyboard/src/WhitelabelKeyboard/icons/arrow_right.svg +9 -9
  636. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_backspace.svg +9 -9
  637. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_language.svg +20 -20
  638. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_shift.svg +9 -9
  639. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_shift_active.svg +9 -9
  640. package/packages/keyboard/src/WhitelabelKeyboard/index.ts +2 -2
  641. package/packages/keyboard/src/WhitelabelKeyboard/layouts/arabic.ts +27 -27
  642. package/packages/keyboard/src/WhitelabelKeyboard/layouts/burmese.ts +27 -27
  643. package/packages/keyboard/src/WhitelabelKeyboard/layouts/dari.ts +28 -28
  644. package/packages/keyboard/src/WhitelabelKeyboard/layouts/hebrew.ts +28 -28
  645. package/packages/keyboard/src/WhitelabelKeyboard/layouts/index.ts +15 -15
  646. package/packages/keyboard/src/WhitelabelKeyboard/layouts/korean.ts +26 -26
  647. package/packages/keyboard/src/WhitelabelKeyboard/layouts/latin.ts +26 -26
  648. package/packages/keyboard/src/WhitelabelKeyboard/layouts/pashto.ts +27 -27
  649. package/packages/keyboard/src/WhitelabelKeyboard/layouts/persian.ts +27 -27
  650. package/packages/keyboard/src/WhitelabelKeyboard/layouts/russian.ts +27 -27
  651. package/packages/keyboard/src/WhitelabelKeyboard/layouts/spanish.ts +26 -26
  652. package/packages/keyboard/src/WhitelabelKeyboard/layouts/special.ts +28 -28
  653. package/packages/keyboard/src/WhitelabelKeyboard/layouts/tibetan.ts +26 -26
  654. package/packages/keyboard/src/WhitelabelKeyboard/layouts/turkish.ts +26 -26
  655. package/packages/keyboard/src/WhitelabelKeyboard/layouts/ukrainian.ts +27 -27
  656. package/packages/keyboard/src/WhitelabelKeyboard/layouts/urdu.ts +26 -26
  657. package/packages/keyboard/src/WhitelabelKeyboard/types.ts +28 -28
  658. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.scss +105 -105
  659. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.styles.1080.scss +2 -2
  660. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.styles.scss +2 -2
  661. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.tsx +161 -161
  662. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/_sizes.1080.scss +7 -7
  663. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/_sizes.scss +7 -7
  664. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/index.ts +1 -1
  665. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.scss +62 -62
  666. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.styles.1080.scss +2 -2
  667. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.styles.scss +2 -2
  668. package/packages/keyboard/src/WhitelabelNumericKeyboard/_sizes.1080.scss +29 -29
  669. package/packages/keyboard/src/WhitelabelNumericKeyboard/_sizes.scss +29 -29
  670. package/packages/keyboard/src/WhitelabelNumericKeyboard/icons/key_backspace.svg +9 -9
  671. package/packages/keyboard/src/WhitelabelNumericKeyboard/index.ts +2 -2
  672. package/packages/keyboard/src/WhitelabelNumericKeyboard/layout.ts +14 -14
  673. package/packages/keyboard/src/hwKeyboardEventToChar.ts +11 -11
  674. package/packages/keyboard/src/types/index.ts +11 -11
  675. package/packages/keyboard/src/utils/caret.ts +48 -48
  676. package/packages/keyboard/src/utils/generateFocusMatrixFromStringMatrix.ts +12 -12
  677. package/packages/keyboard/src/utils/input.ts +40 -40
  678. package/packages/l10n/README.md +120 -120
  679. package/packages/l10n/interface.ts +1 -1
  680. package/packages/l10n/locales/cs.ts +4 -4
  681. package/packages/l10n/locales/en-001.ts +4 -4
  682. package/packages/l10n/locales/en-us.ts +4 -4
  683. package/packages/l10n/src/Locale.tsx +44 -44
  684. package/packages/l10n/src/date/common.ts +165 -165
  685. package/packages/l10n/src/date/cs.ts +89 -89
  686. package/packages/l10n/src/date/de.ts +97 -97
  687. package/packages/l10n/src/date/en-001.ts +76 -76
  688. package/packages/l10n/src/date/en-common.ts +55 -55
  689. package/packages/l10n/src/date/en-us.ts +83 -83
  690. package/packages/l10n/src/date/es.ts +71 -71
  691. package/packages/l10n/src/date/fr.ts +94 -94
  692. package/packages/l10n/src/date/he.ts +101 -101
  693. package/packages/l10n/src/date/iso.ts +63 -63
  694. package/packages/l10n/src/date/types.ts +56 -56
  695. package/packages/l10n/src/index.ts +2 -2
  696. package/packages/l10n/src/l10n.ts +112 -112
  697. package/packages/l10n/src/types.ts +22 -22
  698. package/packages/list/AttachDetachItem/README.md +128 -128
  699. package/packages/list/AttachDetachItem/index.ts +3 -3
  700. package/packages/list/BasicList/README.md +71 -71
  701. package/packages/list/BasicList/index.ts +1 -1
  702. package/packages/list/CenteredList/README.md +42 -42
  703. package/packages/list/CenteredList/index.ts +1 -1
  704. package/packages/list/EdgeOffsetList/README.md +58 -58
  705. package/packages/list/EdgeOffsetList/index.ts +1 -1
  706. package/packages/list/FirstOnlyList/README.md +39 -39
  707. package/packages/list/FirstOnlyList/index.ts +1 -1
  708. package/packages/list/FirstOnlyVariedList/README.md +105 -105
  709. package/packages/list/FirstOnlyVariedList/index.ts +1 -1
  710. package/packages/list/FixedToEndList/README.md +42 -42
  711. package/packages/list/FixedToEndList/index.ts +1 -1
  712. package/packages/list/Item/index.ts +1 -1
  713. package/packages/list/README.md +193 -193
  714. package/packages/list/src/AttachDetachItem/AttachDetachItem.tsx +96 -96
  715. package/packages/list/src/AttachDetachItem/prepareAttachDetachItemData.ts +13 -13
  716. package/packages/list/src/Base/Base.tsx +392 -392
  717. package/packages/list/src/Base/MouseNavigation/MouseNavigation.tsx +82 -82
  718. package/packages/list/src/Base/MouseNavigation/MouseNavigationFallback.ts +4 -4
  719. package/packages/list/src/Base/MouseNavigation/index.tizen.tv.ts +1 -1
  720. package/packages/list/src/Base/MouseNavigation/index.ts +1 -1
  721. package/packages/list/src/Base/MouseNavigation/index.webos.tv.ts +1 -1
  722. package/packages/list/src/Base/MouseNavigation/index.webtv.ts +1 -1
  723. package/packages/list/src/Base/index.ts +1 -1
  724. package/packages/list/src/Base/interface.ts +39 -39
  725. package/packages/list/src/BasicList/BasicList.tsx +178 -178
  726. package/packages/list/src/BasicList/config.ts +13 -13
  727. package/packages/list/src/CenteredList/CenteredList.tsx +116 -116
  728. package/packages/list/src/CenteredList/config.ts +13 -13
  729. package/packages/list/src/CenteredList/controller.ts +46 -46
  730. package/packages/list/src/CenteredList/interface.ts +10 -10
  731. package/packages/list/src/EdgeOffsetList/EdgeOffsetList.tsx +173 -173
  732. package/packages/list/src/EdgeOffsetList/config.ts +13 -13
  733. package/packages/list/src/FastFocusingOptimizer/FastFocusingOptimizer.ts +54 -54
  734. package/packages/list/src/FirstOnlyList/FirstOnlyList.tsx +122 -122
  735. package/packages/list/src/FirstOnlyList/config.ts +13 -13
  736. package/packages/list/src/FirstOnlyList/controller.ts +11 -11
  737. package/packages/list/src/FirstOnlyVariedList/FirstOnlyVariedList.tsx +132 -132
  738. package/packages/list/src/FirstOnlyVariedList/config.ts +13 -13
  739. package/packages/list/src/FixedToEndList/FixedToEndList.tsx +125 -125
  740. package/packages/list/src/FixedToEndList/config.ts +13 -13
  741. package/packages/list/src/FixedToEndList/controller.ts +44 -44
  742. package/packages/list/src/UnifiedListController/UnifiedListController.ts +258 -258
  743. package/packages/list/src/UnifiedListController/UnifiedListControllerBase.ts +241 -241
  744. package/packages/list/src/UnifiedListController/UnifiedVariedListController.ts +241 -241
  745. package/packages/list/src/UnifiedListController/interface.ts +81 -81
  746. package/packages/list/src/__test__/utils.spec.ts +59 -59
  747. package/packages/list/src/animate.animated.ts +1 -1
  748. package/packages/list/src/animate.ts +1 -1
  749. package/packages/list/src/index.ts +1 -1
  750. package/packages/list/src/interface.ts +48 -48
  751. package/packages/list/src/mocks/index.tsx +55 -55
  752. package/packages/list/src/types.ts +132 -132
  753. package/packages/list/src/utils.ts +142 -142
  754. package/packages/list/utils/index.ts +1 -1
  755. package/packages/logger/README.md +117 -117
  756. package/packages/logger/src/LoggerManager.ts +60 -60
  757. package/packages/logger/src/LoggerService.ts +43 -43
  758. package/packages/logger/src/__mocks__/LoggerBase.ts +13 -13
  759. package/packages/logger/src/index.ts +3 -3
  760. package/packages/logger/src/loggers/ConsoleLogger/ConsoleLogger.ts +51 -51
  761. package/packages/logger/src/loggers/ConsoleLogger/README.md +39 -39
  762. package/packages/logger/src/loggers/ConsoleLogger/index.ts +1 -1
  763. package/packages/logger/src/loggers/LoggerBase/LoggerBase.ts +67 -67
  764. package/packages/logger/src/loggers/LoggerBase/README.md +69 -69
  765. package/packages/logger/src/loggers/LoggerBase/index.ts +1 -1
  766. package/packages/logger/src/loggers/SentryLogger/README.md +98 -98
  767. package/packages/logger/src/loggers/SentryLogger/Sentry.ts +2 -2
  768. package/packages/logger/src/loggers/SentryLogger/SentryLogger.ts +179 -179
  769. package/packages/logger/src/loggers/SentryLogger/index.ts +2 -2
  770. package/packages/logger/src/loggers/SentryLogger/mock.ts +6 -6
  771. package/packages/logger/src/loggers/index.ts +2 -2
  772. package/packages/logger/src/types.ts +46 -46
  773. package/packages/logger/src/utils/deviceInfo.ts +25 -25
  774. package/packages/logger/src/utils/index.ts +1 -1
  775. package/packages/lottie-animations/README.md +217 -217
  776. package/packages/lottie-animations/src/LottieAnimation.tsx +125 -125
  777. package/packages/lottie-animations/src/index.ts +7 -7
  778. package/packages/menu/README.md +90 -90
  779. package/packages/menu/WhitelabelMenu/index.ts +1 -1
  780. package/packages/menu/WhitelabelMenu/interface.ts +2 -2
  781. package/packages/menu/WhitelabelMenu/styles.ts +2 -2
  782. package/packages/menu/interface.ts +3 -3
  783. package/packages/menu/src/MenuAndContentContainer/MenuAndContentContainer.tsx +211 -211
  784. package/packages/menu/src/MenuAndContentContainer/index.ts +1 -1
  785. package/packages/menu/src/MenuAndContentContainer/interface.ts +164 -164
  786. package/packages/menu/src/MenuAndContentContainer/service.ts +5 -5
  787. package/packages/menu/src/WhitelabelMenu/SideMenu.scss +41 -41
  788. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.1080.scss +2 -2
  789. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.animated.1080.scss +3 -3
  790. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.animated.scss +3 -3
  791. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.scss +2 -2
  792. package/packages/menu/src/WhitelabelMenu/SideMenu.tsx +248 -248
  793. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.scss +56 -56
  794. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.1080.scss +2 -2
  795. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.animated.1080.scss +3 -3
  796. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.animated.scss +3 -3
  797. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.scss +2 -2
  798. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.tsx +78 -78
  799. package/packages/menu/src/WhitelabelMenu/SideMenuItem/_animated.scss +12 -12
  800. package/packages/menu/src/WhitelabelMenu/SideMenuItem/_sizes.1080.scss +17 -17
  801. package/packages/menu/src/WhitelabelMenu/SideMenuItem/_sizes.scss +17 -17
  802. package/packages/menu/src/WhitelabelMenu/SideMenuItem/index.ts +1 -1
  803. package/packages/menu/src/WhitelabelMenu/SideMenuItem/interface.ts +49 -49
  804. package/packages/menu/src/WhitelabelMenu/SideMenuItem/rtl.scss +12 -12
  805. package/packages/menu/src/WhitelabelMenu/SideMenuItem/sizes.1080.ts +2 -2
  806. package/packages/menu/src/WhitelabelMenu/SideMenuItem/sizes.ts +2 -2
  807. package/packages/menu/src/WhitelabelMenu/SideMenuItem/styles.ts +1 -1
  808. package/packages/menu/src/WhitelabelMenu/VisualController.animated.ts +48 -48
  809. package/packages/menu/src/WhitelabelMenu/VisualController.ts +20 -20
  810. package/packages/menu/src/WhitelabelMenu/VisualControllerBase.ts +71 -71
  811. package/packages/menu/src/WhitelabelMenu/_animated.scss +39 -39
  812. package/packages/menu/src/WhitelabelMenu/_sizes.1080.scss +14 -14
  813. package/packages/menu/src/WhitelabelMenu/_sizes.scss +14 -14
  814. package/packages/menu/src/WhitelabelMenu/constants.animated.ts +1 -1
  815. package/packages/menu/src/WhitelabelMenu/constants.ts +1 -1
  816. package/packages/menu/src/WhitelabelMenu/index.ts +1 -1
  817. package/packages/menu/src/WhitelabelMenu/interface.ts +14 -14
  818. package/packages/menu/src/WhitelabelMenu/rtl.scss +22 -22
  819. package/packages/menu/src/WhitelabelMenu/sizes.1080.ts +1 -1
  820. package/packages/menu/src/WhitelabelMenu/sizes.ts +1 -1
  821. package/packages/menu/src/WhitelabelMenu/styles.ts +1 -1
  822. package/packages/menu/src/WhitelabelMenu/utils.ts +34 -34
  823. package/packages/menu/src/index.ts +2 -2
  824. package/packages/modal-service/README.md +50 -50
  825. package/packages/modal-service/src/IModal.ts +3 -3
  826. package/packages/modal-service/src/ModalService.scss +7 -7
  827. package/packages/modal-service/src/ModalService.styles.1080.scss +2 -2
  828. package/packages/modal-service/src/ModalService.styles.scss +2 -2
  829. package/packages/modal-service/src/ModalService.tsx +102 -102
  830. package/packages/modal-service/src/_sizes.1080.scss +2 -2
  831. package/packages/modal-service/src/_sizes.scss +2 -2
  832. package/packages/modal-service/src/index.ts +2 -2
  833. package/packages/mouse-navigation/README.md +105 -105
  834. package/packages/mouse-navigation/src/ArrowNavigation/Arrow.tsx +58 -58
  835. package/packages/mouse-navigation/src/ArrowNavigation/ArrowNavigation.tsx +95 -95
  836. package/packages/mouse-navigation/src/ArrowNavigation/__test__/Arrow.spec.tsx +35 -35
  837. package/packages/mouse-navigation/src/ArrowNavigation/__test__/ArrowNavigation.spec.tsx +45 -45
  838. package/packages/mouse-navigation/src/ArrowNavigation/index.tsx +1 -1
  839. package/packages/mouse-navigation/src/MouseElementWrapper.tsx +70 -70
  840. package/packages/mouse-navigation/src/MouseNavigation.tsx +157 -157
  841. package/packages/mouse-navigation/src/MouseNavigationInterface.ts +8 -8
  842. package/packages/mouse-navigation/src/index.ts +3 -3
  843. package/packages/numeric-zapper/README.md +153 -153
  844. package/packages/numeric-zapper/src/NumericZapper.scss +20 -20
  845. package/packages/numeric-zapper/src/NumericZapper.styles.1080.scss +2 -2
  846. package/packages/numeric-zapper/src/NumericZapper.styles.scss +2 -2
  847. package/packages/numeric-zapper/src/NumericZapper.tsx +257 -257
  848. package/packages/numeric-zapper/src/ZapperAllower.ts +15 -15
  849. package/packages/numeric-zapper/src/ZapperService.tsx +8 -8
  850. package/packages/numeric-zapper/src/_sizes.1080.scss +7 -7
  851. package/packages/numeric-zapper/src/_sizes.scss +7 -7
  852. package/packages/numeric-zapper/src/index.ts +4 -4
  853. package/packages/numeric-zapper/src/interface.ts +1 -1
  854. package/packages/numeric-zapper/src/styles.ts +1 -1
  855. package/packages/perf-utils/README.md +7 -7
  856. package/packages/perf-utils/src/array/filter.ts +1 -1
  857. package/packages/perf-utils/src/array/find.ts +1 -1
  858. package/packages/perf-utils/src/array/findIndex.ts +1 -1
  859. package/packages/perf-utils/src/array/forEach.ts +1 -1
  860. package/packages/perf-utils/src/array/includes.ts +1 -1
  861. package/packages/perf-utils/src/array/includesNaN.ts +1 -1
  862. package/packages/perf-utils/src/array/index.ts +1 -1
  863. package/packages/perf-utils/src/array/map.ts +1 -1
  864. package/packages/picker/README.md +70 -70
  865. package/packages/picker/src/DatePicker.tsx +55 -55
  866. package/packages/picker/src/ModalPicker/Checkbox.tsx +38 -38
  867. package/packages/picker/src/ModalPicker/PickerItem.tsx +86 -86
  868. package/packages/picker/src/ModalPicker/PickerModal.tsx +98 -98
  869. package/packages/picker/src/ModalPicker/index.ts +1 -1
  870. package/packages/picker/src/ModalPicker/modalPicker.tsx +48 -48
  871. package/packages/picker/src/Picker.tsx +127 -127
  872. package/packages/picker/src/index.ts +3 -3
  873. package/packages/picker/src/types.ts +25 -25
  874. package/packages/pin-input/README.md +55 -55
  875. package/packages/pin-input/src/PinInput.scss +5 -5
  876. package/packages/pin-input/src/PinInput.tsx +169 -169
  877. package/packages/pin-input/src/index.ts +1 -1
  878. package/packages/player-ui/README.md +207 -207
  879. package/packages/player-ui/src/BackwardButton.tsx +41 -41
  880. package/packages/player-ui/src/CurrentTime.tsx +56 -56
  881. package/packages/player-ui/src/Duration.tsx +60 -60
  882. package/packages/player-ui/src/ForwardButton.tsx +41 -41
  883. package/packages/player-ui/src/PauseButton.tsx +65 -65
  884. package/packages/player-ui/src/PlayButton.tsx +57 -57
  885. package/packages/player-ui/src/PlayPauseButton.tsx +63 -63
  886. package/packages/player-ui/src/PlayerInteractable.tsx +67 -67
  887. package/packages/player-ui/src/PlayerTime.tsx +57 -57
  888. package/packages/player-ui/src/PlayerUI.tsx +267 -267
  889. package/packages/player-ui/src/RemainingTime.tsx +74 -74
  890. package/packages/player-ui/src/Seekbar.tsx +276 -276
  891. package/packages/player-ui/src/Seeking.ts +163 -163
  892. package/packages/player-ui/src/StopButton.tsx +35 -35
  893. package/packages/player-ui/src/Subtitles.tsx +151 -151
  894. package/packages/player-ui/src/index.ts +15 -15
  895. package/packages/player-ui/src/mocks.ts +65 -65
  896. package/packages/player-ui/src/timeUtils.ts +142 -142
  897. package/packages/player-ui/src/types.ts +48 -48
  898. package/packages/progress-bar/README.md +31 -31
  899. package/packages/progress-bar/src/ProgressBar.tsx +41 -41
  900. package/packages/progress-bar/src/index.ts +1 -1
  901. package/packages/progress-bar/src/interface.ts +14 -14
  902. package/packages/qr-code/README.md +79 -79
  903. package/packages/qr-code/src/QRCode.tsx +39 -39
  904. package/packages/qr-code/src/index.ts +2 -2
  905. package/packages/qr-code/src/qrGenerator/__external__/constants.ts +23 -23
  906. package/packages/qr-code/src/qrGenerator/__external__/qrcode.d.ts +31 -31
  907. package/packages/qr-code/src/qrGenerator/__external__/qrcode.js +618 -618
  908. package/packages/qr-code/src/qrGenerator/generateQr.ts +7 -7
  909. package/packages/qr-code/src/qrGenerator/index.ts +3 -3
  910. package/packages/router/README.md +163 -163
  911. package/packages/router/src/Route.tsx +166 -166
  912. package/packages/router/src/Router.tsx +220 -220
  913. package/packages/router/src/focusActiveRoute.ts +5 -5
  914. package/packages/router/src/history.ts +31 -31
  915. package/packages/router/src/index.ts +6 -6
  916. package/packages/router/src/types.ts +13 -13
  917. package/packages/router/src/utils.ts +37 -37
  918. package/packages/runtime-config/README.md +37 -37
  919. package/packages/runtime-config/src/Config.ts +44 -44
  920. package/packages/runtime-config/src/index.ts +1 -1
  921. package/packages/sass-utils/README.md +197 -197
  922. package/packages/sass-utils/src/box-shadow.scss +5 -5
  923. package/packages/sass-utils/src/ellipsis.scss +15 -15
  924. package/packages/sass-utils/src/linear-gradient.scss +48 -48
  925. package/packages/sass-utils/src/prefix-property.scss +7 -7
  926. package/packages/sass-utils/src/prefix-value.scss +6 -6
  927. package/packages/sass-utils/src/prefix.scss +6 -6
  928. package/packages/sass-utils/src/scale.1080.scss +5 -5
  929. package/packages/sass-utils/src/scale.720.scss +5 -5
  930. package/packages/sass-utils/src/transform.scss +5 -5
  931. package/packages/sass-utils/src/transition.scss +6 -6
  932. package/packages/scheduler/README.md +55 -55
  933. package/packages/scheduler/src/Scheduler.ts +43 -43
  934. package/packages/scheduler/src/Task.ts +72 -72
  935. package/packages/scheduler/src/index.ts +4 -4
  936. package/packages/scheduler/src/timeProvider.ts +3 -3
  937. package/packages/scroll-text/README.md +77 -77
  938. package/packages/scroll-text/src/Base.tsx +146 -146
  939. package/packages/scroll-text/src/ScrollText.animated.tsx +80 -80
  940. package/packages/scroll-text/src/ScrollText.tsx +53 -53
  941. package/packages/scroll-text/src/ScrollTextBaseClass.tsx +86 -86
  942. package/packages/scroll-text/src/index.ts +1 -1
  943. package/packages/scroller/README.md +77 -77
  944. package/packages/scroller/src/Scroller.tsx +51 -51
  945. package/packages/scroller/src/index.ts +1 -1
  946. package/packages/splash/AnimatedSplash.ts +1 -1
  947. package/packages/splash/AnimatedSplashAnimated.ts +1 -1
  948. package/packages/splash/AnimatedSplashBasic.ts +1 -1
  949. package/packages/splash/AutomaticSplashAnimated.ts +1 -1
  950. package/packages/splash/AutomaticSplashBasic.ts +1 -1
  951. package/packages/splash/README.md +93 -93
  952. package/packages/splash/StaticSplash.ts +1 -1
  953. package/packages/splash/StaticSplashAnimated.ts +1 -1
  954. package/packages/splash/StaticSplashBasic.ts +1 -1
  955. package/packages/splash/src/AnimatedSplash.animated.tsx +78 -78
  956. package/packages/splash/src/AnimatedSplash.basic.tsx +37 -37
  957. package/packages/splash/src/AutomaticSplash.animated.tsx +20 -20
  958. package/packages/splash/src/AutomaticSplash.basic.tsx +20 -20
  959. package/packages/splash/src/Splash.scss +8 -8
  960. package/packages/splash/src/StaticSplash.animated.tsx +48 -48
  961. package/packages/splash/src/StaticSplash.basic.tsx +26 -26
  962. package/packages/splash/src/index.animated.ts +1 -1
  963. package/packages/splash/src/index.ts +1 -1
  964. package/packages/splash/src/styles.ts +1 -1
  965. package/packages/splash/src/types.ts +20 -20
  966. package/packages/storage/README.md +61 -61
  967. package/packages/storage/src/CookieStorage/CookieStorage.ts +57 -57
  968. package/packages/storage/src/CookieStorage/index.ts +1 -1
  969. package/packages/storage/src/LocalStorage/LocalStorage.ts +58 -58
  970. package/packages/storage/src/LocalStorage/index.ts +1 -1
  971. package/packages/storage/src/index.ts +2 -2
  972. package/packages/storage/src/shared.ts +41 -41
  973. package/packages/storage/src/types.ts +33 -33
  974. package/packages/throbber/README.md +53 -53
  975. package/packages/throbber/src/Throbber.scss +52 -52
  976. package/packages/throbber/src/Throbber.tsx +19 -19
  977. package/packages/throbber/src/ThrobberService.tsx +55 -55
  978. package/packages/throbber/src/controlsHandling.ts +14 -14
  979. package/packages/throbber/src/index.ts +2 -2
  980. package/packages/time/README.md +116 -116
  981. package/packages/time/src/Time.ts +267 -267
  982. package/packages/time/src/adapters/24iMediaTimeApi.ts +47 -47
  983. package/packages/time/src/adapters/worldTimeApi.ts +74 -74
  984. package/packages/time/src/constants.ts +14 -14
  985. package/packages/time/src/index.ts +1 -1
  986. package/packages/time/src/services/24iMediaTimeApi/24iMediaTimeApi.ts +43 -43
  987. package/packages/time/src/services/24iMediaTimeApi/index.ts +6 -6
  988. package/packages/time/src/services/worldTimeApi/index.ts +7 -7
  989. package/packages/time/src/services/worldTimeApi/types.ts +75 -75
  990. package/packages/time/src/services/worldTimeApi/worldTimeApi.ts +77 -77
  991. package/packages/time/src/types.ts +39 -39
  992. package/packages/time/src/utils.ts +79 -79
  993. package/packages/toast/README.md +116 -116
  994. package/packages/toast/src/Toast/IVisualController.ts +7 -7
  995. package/packages/toast/src/Toast/Toast.scss +22 -22
  996. package/packages/toast/src/Toast/Toast.styles.1080.scss +2 -2
  997. package/packages/toast/src/Toast/Toast.styles.scss +2 -2
  998. package/packages/toast/src/Toast/Toast.tsx +83 -83
  999. package/packages/toast/src/Toast/VisualController.animated.ts +20 -20
  1000. package/packages/toast/src/Toast/VisualController.ts +9 -9
  1001. package/packages/toast/src/Toast/_sizes.1080.scss +8 -8
  1002. package/packages/toast/src/Toast/_sizes.scss +8 -8
  1003. package/packages/toast/src/Toast/index.ts +2 -2
  1004. package/packages/toast/src/Toast/styles.ts +1 -1
  1005. package/packages/toast/src/ToastService.scss +8 -8
  1006. package/packages/toast/src/ToastService.styles.1080.scss +2 -2
  1007. package/packages/toast/src/ToastService.styles.scss +2 -2
  1008. package/packages/toast/src/ToastService.tsx +59 -59
  1009. package/packages/toast/src/_sizes.1080.scss +2 -2
  1010. package/packages/toast/src/_sizes.scss +2 -2
  1011. package/packages/toast/src/index.ts +4 -4
  1012. package/packages/toast/src/types.ts +4 -4
  1013. package/packages/types-bigscreen-jsx/README.md +12 -12
  1014. package/packages/types-bigscreen-jsx/global.d.ts +0 -0
  1015. package/packages/types-bigscreen-jsx/index.d.ts +32 -32
  1016. package/packages/types-bigscreen-jsx/src/copyTypes.js +14 -14
  1017. package/packages/utils/README.md +363 -363
  1018. package/packages/utils/src/addClass.ts +9 -9
  1019. package/packages/utils/src/counter.ts +49 -49
  1020. package/packages/utils/src/debounce.ts +54 -54
  1021. package/packages/utils/src/displayToggler.scss +3 -3
  1022. package/packages/utils/src/displayToggler.ts +38 -38
  1023. package/packages/utils/src/elementUtils.ts +105 -105
  1024. package/packages/utils/src/forceReflow.ts +14 -14
  1025. package/packages/utils/src/generateUuid.ts +19 -19
  1026. package/packages/utils/src/index.ts +43 -43
  1027. package/packages/utils/src/keyPress/index.ts +6 -6
  1028. package/packages/utils/src/keyPress/keyPressSimulator.ts +74 -74
  1029. package/packages/utils/src/keyPress/simulateKeyPress.ts +25 -25
  1030. package/packages/utils/src/memoryInfo.ts +21 -21
  1031. package/packages/utils/src/nTimes.ts +9 -9
  1032. package/packages/utils/src/noop.ts +1 -1
  1033. package/packages/utils/src/offsetPosition.ts +56 -56
  1034. package/packages/utils/src/removeClass.ts +9 -9
  1035. package/packages/utils/src/scaledImage.ts +24 -24
  1036. package/packages/utils/src/sizes.1080.ts +1 -1
  1037. package/packages/utils/src/sizes.ts +1 -1
  1038. package/packages/utils/src/stopEvent.ts +10 -10
  1039. package/packages/utils/src/textUtils.ts +57 -57
  1040. package/packages/utils/src/timeConstants.ts +11 -11
  1041. package/packages/utils/src/timers/createInterval.ts +19 -19
  1042. package/packages/utils/src/timers/createTimeout.ts +22 -22
  1043. package/packages/utils/src/timers/index.ts +4 -4
  1044. package/packages/utils/src/timers/runAsync.ts +3 -3
  1045. package/packages/utils/src/timers/types.ts +9 -9
  1046. package/packages/utils/src/wait.ts +3 -3
  1047. package/packages/utils/src/xhr/__mocks__/xhr.ts +29 -29
  1048. package/packages/utils/src/xhr/index.ts +11 -11
  1049. package/packages/utils/src/xhr/xhrSend.ts +141 -141
  1050. package/packages/utils/src/xhr/xhrSendRetry.ts +79 -79
  1051. package/packages/volume-control/README.md +79 -79
  1052. package/packages/volume-control/src/IVolumeControlUI.ts +26 -26
  1053. package/packages/volume-control/src/VolumeControlService.tsx +110 -110
  1054. package/packages/volume-control/src/VolumeControlUI/VisualController.animated.ts +28 -28
  1055. package/packages/volume-control/src/VolumeControlUI/VisualController.ts +3 -3
  1056. package/packages/volume-control/src/VolumeControlUI/VisualControllerBase.ts +26 -26
  1057. package/packages/volume-control/src/VolumeControlUI/VolumeControl.scss +18 -18
  1058. package/packages/volume-control/src/VolumeControlUI/VolumeControl.styles.animated.scss +2 -2
  1059. package/packages/volume-control/src/VolumeControlUI/VolumeControl.styles.scss +1 -1
  1060. package/packages/volume-control/src/VolumeControlUI/VolumeControlUI.tsx +80 -80
  1061. package/packages/volume-control/src/VolumeControlUI/_animated.scss +8 -8
  1062. package/packages/volume-control/src/VolumeControlUI/index.ts +1 -1
  1063. package/packages/volume-control/src/__mocks__/VolumeControlUIMock.tsx +22 -22
  1064. package/packages/volume-control/src/index.ts +2 -2
  1065. package/packages/zapping/README.md +87 -87
  1066. package/packages/zapping/src/ChannelZapping.ts +143 -143
  1067. package/packages/zapping/src/Zapping.tsx +115 -115
  1068. package/packages/zapping/src/index.ts +1 -1
  1069. package/packages/zapping/src/interface.ts +1 -1
  1070. package/utils/create-export-maps/index.ts +3 -3
  1071. package/utils/create-export-maps/src/__tests__/createExportMaps.spec.ts +50 -50
  1072. package/utils/create-export-maps/src/createExportMaps.ts +61 -61
  1073. package/utils/create-package/README.md +39 -39
  1074. package/utils/create-package/src/createPackage.ts +72 -72
  1075. package/utils/create-package/src/index.ts +3 -3
  1076. package/utils/create-package/src/questionnaire/questions.ts +19 -19
  1077. package/utils/create-package/src/settings/Settings.ts +5 -5
  1078. package/utils/create-package/src/types.ts +4 -4
  1079. package/utils/create-package/templates/typescript/README.md +8 -8
  1080. package/utils/create-package/templates/typescript/exports.json +6 -6
  1081. package/utils/release/release.ts +156 -156
  1082. package/utils/run-scripts/index.ts +3 -3
  1083. package/utils/run-scripts/src/__tests__/runScripts.spec.ts +45 -45
  1084. package/utils/run-scripts/src/runScripts.ts +20 -20
@@ -1,42 +1,42 @@
1
- ---
2
- id: README
3
- title: FixedToEndList
4
- hide_title: true
5
- sidebar_label: FixedToEndList
6
- ---
7
-
8
- # FixedToEndList
9
- Fixed To End List is a type of list that prefers scrolling before moving the focus.
10
- First the focus remains at the same position. Only after the last item is fully visible it starts moving the focus to the end of the list.
11
- Going back it first moves the focus to the first position and then scrolls to the start.
12
-
13
- ## List Specific Props
14
- - `scrollStep` - value to move on scroll
15
-
16
- ## Default Animation Configuration
17
- - normal: 700ms with easeOutQuart
18
-
19
- ## Usage
20
- FixedToEnd list is most often used for portrait Packshots in apps that want to have similar behaviour as Netflix.
21
-
22
- Unlike Netflix's list, it does not scroll until the last item. Rather it starts moving the focus once it reaches the last item.
23
-
24
- ## Examples
25
-
26
- ### Example 1
27
- Probably the most common usage of the FixedToEndList.
28
- Similar to BasicList it also counts with two partially visible items on each end.
29
- Therefore `visibleItems` is equal to fully visible/navigatable items + 2.
30
- `scrollStep` is equal to item width + the space between two items
31
- ```tsx
32
- <FixedToEndList
33
- data={[1, 2, 3, 4, 5, 6, 7]}
34
- renderItem={(item: number, index, ref) => (
35
- <Item title={item} ref={ref} />
36
- )}
37
- visibleItems={6}
38
- scrollStep={139}
39
- horizontal
40
- />
41
- ```
42
- ![Example 1](./examples/example1.gif)
1
+ ---
2
+ id: README
3
+ title: FixedToEndList
4
+ hide_title: true
5
+ sidebar_label: FixedToEndList
6
+ ---
7
+
8
+ # FixedToEndList
9
+ Fixed To End List is a type of list that prefers scrolling before moving the focus.
10
+ First the focus remains at the same position. Only after the last item is fully visible it starts moving the focus to the end of the list.
11
+ Going back it first moves the focus to the first position and then scrolls to the start.
12
+
13
+ ## List Specific Props
14
+ - `scrollStep` - value to move on scroll
15
+
16
+ ## Default Animation Configuration
17
+ - normal: 700ms with easeOutQuart
18
+
19
+ ## Usage
20
+ FixedToEnd list is most often used for portrait Packshots in apps that want to have similar behaviour as Netflix.
21
+
22
+ Unlike Netflix's list, it does not scroll until the last item. Rather it starts moving the focus once it reaches the last item.
23
+
24
+ ## Examples
25
+
26
+ ### Example 1
27
+ Probably the most common usage of the FixedToEndList.
28
+ Similar to BasicList it also counts with two partially visible items on each end.
29
+ Therefore `visibleItems` is equal to fully visible/navigatable items + 2.
30
+ `scrollStep` is equal to item width + the space between two items
31
+ ```tsx
32
+ <FixedToEndList
33
+ data={[1, 2, 3, 4, 5, 6, 7]}
34
+ renderItem={(item: number, index, ref) => (
35
+ <Item title={item} ref={ref} />
36
+ )}
37
+ visibleItems={6}
38
+ scrollStep={139}
39
+ horizontal
40
+ />
41
+ ```
42
+ ![Example 1](./examples/example1.gif)
@@ -1 +1 @@
1
- export { FixedToEndList } from '../src/FixedToEndList/FixedToEndList';
1
+ export { FixedToEndList } from '../src/FixedToEndList/FixedToEndList';
@@ -1 +1 @@
1
- export { Item } from '../src/types';
1
+ export { Item } from '../src/types';
@@ -1,193 +1,193 @@
1
- ---
2
- id: README
3
- title: List
4
- hide_title: true
5
- sidebar_label: List
6
- ---
7
-
8
- # List
9
- This package contains a variety of prepared lists with different focus/scroll
10
- behaviours and configuration. If you cannot find the list with your desired
11
- behaviour, feel free to add it. The interface for adding new behaviours is
12
- rather simple. Check one of the existing implementations for inspiration on
13
- how to do it.
14
-
15
- To programatically scroll to certain index, use:
16
- - `scrollTo(index)` - This method scrolls the list to given index as if the user moved there manually.
17
- So e.g. BasicList if you scroll to index 7 from index 0, it will be at the bottom. If you scroll to
18
- index 7 from index 20, it will be at the top. IMPORTANT: This function does not focus.
19
-
20
- Lists also support updating data with these two methods:
21
- - `appendData` - inserts new data at the end
22
- - `prependData` - inserts new data at the beginning
23
-
24
- ## Importing List
25
- List package does not allow to import just the index file. Instead, please use
26
- the path import of the implementation that you require or the interface.
27
- ```ts
28
- import { BasicList } from '@24i/bigscreen-sdk/list/Basic';
29
- import { FixedToEndList } from '@24i/bigscreen-sdk/list/FixedToEnd';
30
- import { CenteredList } from '@24i/bigscreen-sdk/list/Centered';
31
- import { FirstOnlyList } from '@24i/bigscreen-sdk/list/FirstOnly';
32
- import { FirstOnlyVariedList } from '@24i/bigscreen-sdk/list/FirstOnlyVaried';
33
- import { EdgeOffsetList } from '@24i/bigscreen-sdk/list/EdgeOffset';
34
- import { Props, List, ListComponent, Item, ItemComponent } from '@24i/bigscreen-sdk/list/interface';
35
- ```
36
-
37
- ## Mouse support (MRCU)
38
- This component takes advantage of a MouseNavigation component and is
39
- automatically taking care of Mouse Support. This is enabled for
40
- `web, tizen, and webOS`. For other platform it is disabled.
41
-
42
- ## ListBase
43
- This is an underlying component used by all lists. It is also exported so you
44
- could use it in your project as well.
45
-
46
- **Props**
47
- - `data` - array of data to pass into items during render
48
- - `renderItem` - function that will render one item - (item, index, ref) - ref must be passed onto item
49
- - `visibleItems` - number of maximal visible items (including partially)
50
- - `horizontal` - sets List to horizontal mode (default is vertical)
51
- - `onFocusChanged` - optional callback that receives focused item and its index
52
- - `onScrollChanged` - optional callback that receives item and index of current scroll performed every time list is scrolled.
53
- - `animation` - optional AnimationConfiguration that is deep merged with default configuration of the list
54
- - `className` - optional, class name for wrap element
55
- - `animate` - optional, enables scrolling animation
56
- - `fastScrolling` - optional, enables fast scrolling on list
57
- - `fastFocusingOptimization` - optional, enables fast focusing optimization
58
-
59
- **Props provided by behaviour controlling component (actual list implementations)**
60
- - `limit` - optional limit to the number of rendered items
61
- - `forward` - function that is called when list should move in forward direction. Returns boolean whether it processed the move.
62
- - `backward` - function that is called when list should move in backward direction. Returns boolean whether it processed the move.
63
-
64
- The result in renderItem needs to implement one of these interfaces depending
65
- on your list type:
66
-
67
- ## Item<Model> interface
68
- ```ts
69
- focus: (options?: FocusOptions) => void,
70
- show: () => void,
71
- hide: () => void, // expects the item to still occupy layout, just not be visible (do not use `display: none`)
72
- updateData: (item: Model, index: number) => void, // change item content according to new model
73
- hasDom?: (target: HTMLElement) => boolean, // returns whether passed target is the dom representation of the item
74
- onFastScrolling?: (isFastScrolling: boolean) => void,
75
- ```
76
-
77
- ## List scrolling
78
- All lists consist of a finite number of item elements. In the basic and animated
79
- variant, those elements are moved from the left side of the list to the right
80
- side and vice versa. This creates a scrolling effect. There is an `updateData`
81
- method called on the items, so the content is properly changed during scrolling.
82
- There are situations, however, in which you can't use `updateData` method on the item,
83
- because the content is too complex for being updated, or it is not possible
84
- (for example the item is whole another List component). For these situations,
85
- there is a special wrapper item called `AttachDetachItem`. The item inside is not updated,
86
- but instead, it is rendered only once inside the wrapper item during scrolling.
87
- For more information check [AttachDetachItem](./AttachDetachItem/README.md) docs.
88
-
89
- ## List fast scrolling
90
- List scrolling could be also optimized by reducing elements on items during
91
- scrolling. For this, fast scrolling could be enabled and list will call
92
- `onFastScrolling(true)` on each item when started and `onFastScrolling(false)`
93
- when finished. When enabled, fast scrolling on the animated list is turned on
94
- until the animation is finished.
95
-
96
- ## List fast focusing
97
- List scrolling could be also optimized by preventing focusing items during
98
- scrolling. For this, fast focusing optimization could be enabled by setting
99
- `fastFocusingOptimization: true` in props. When enabled, it will not focus items
100
- during scrolling until the animation is finished or key up is emitted.
101
-
102
- ## onFocusChanged and onScrollChanged
103
- `onFocusChanged` is called every time next item in list is focused, but after
104
- various optimization improvements, items are not focused step by step during scrolling.
105
- Because of this behavior, actions frequently used in onFocusChanged representing
106
- scroll change can't be used. For this purpose there is `onScrollChanged` callback,
107
- which is called every time list is performing scroll operation.
108
-
109
- ## Prevent blur on long press
110
- When the user holds a navigation key, he usually scrolls to the end (or start) of the list
111
- and then releases the key. This operation is very quick and most of the time he releases
112
- the key too late, so the keydown event from the list will propagate to another component
113
- in the layout. This causes for example opening of the menu even though the user is still holding
114
- the key and scrolling the list. For those situations and to have better control above the layout
115
- navigation, there is a prop `preventBlurOnLongPress`. When the user scrolls to the end (or start)
116
- of the list, he needs to release the key and press it again to propagate the event higher
117
- and focus another component.
118
-
119
- ```ts
120
- preventBlurOnLongPress: {
121
- forward?: boolean, // apply when user scroll forward
122
- backward?: boolean, // apply when user scroll backward
123
- }
124
- ```
125
-
126
- ## Prepared lists
127
- - Fixed item size lists
128
- - [BasicList - (slow/animated)](./BasicList/README.md)
129
- - [CenteredList - (slow/animated)](./CenteredList/README.md)
130
- - [EdgeOffsetList - (slow/animated)](./EdgeOffsetList/README.md)
131
- - [FirstOnlyList - (slow/animated)](./FirstOnlyList/README.md)
132
- - [FixedToEndList - (slow/animated)](./FixedToEndList/README.md)
133
- - Variable item size lists
134
- - [FirstOnlyVariedList - (slow/animated)](./FirstOnlyVariedList/README.md)
135
-
136
- ## Usage (with BasicList example)
137
- ```jsx
138
- <BasicList<Packshot, MovieModel>
139
- ref={this.lists[categoryIndex]}
140
- data={movies}
141
- renderItem={(movie, index, ref) => (
142
- <Packshot
143
- ref={ref}
144
- movie={movie}
145
- />
146
- )}
147
- visibleItems={6}
148
- firstScrollStep={150}
149
- scrollStep={240}
150
- horizontal
151
- />
152
- ```
153
-
154
- ## AnimationConfiguration
155
- ```ts
156
- type AnimationConfiguration = {
157
- normal: {
158
- time: number,
159
- easing: EasingType,
160
- },
161
- fastLinear?: {
162
- time: number,
163
- startRatio: number,
164
- endRatio?: number,
165
- }
166
- slowdownRatio?: number,
167
- }
168
- ```
169
-
170
- ### Properties
171
- - normal - main animation type used for scrolling
172
- - fastLinear - optional - linear animation type used during fast scrolling (when user holds a key
173
- and scroll with the list for longer period)
174
- - slowdownRatio - optional - number between 0 > and <= 1, determines how much scroll would be slowed down.
175
- Less the number, slower the scrolling. Undefined or 0 is unlimited scroll speed. Slowing down the scroll
176
- speed could improve overall animation performance in some cases.
177
-
178
- ### fastLinear property
179
- List animation provides possibility of optimizing the animation during slow speeds and smoother
180
- the scrolling effect without easing in `normal` property interfering the movement.
181
- This is achieved by changing the ease of the animation to linear when the scroll is longer
182
- and user is moving the list further.
183
- `fastLinear` property have these settings:
184
- - time - duration of the animation, same as in `normal` property
185
- - startRatio - this number represents the threshold, when should linear animation start.
186
- Under the hood, threshold is one `scrollStep` (or an average item size in case of varied list variant).
187
- This number is basically multiplied by scrollStep number, so the linear animation will start,
188
- when the current scroll size is larger than `threshold * startRatio`. When the number is 1,
189
- threshold is exactly one scrollStep.
190
- - endRatio - optional - this number represents when the scroll animation should switch from fast linear back
191
- to normal. Threshold is the same as in `startRatio`, but animation will switch when scroll length is less
192
- than `threshold * startRatio`. Parameter is optional, so if it is not set, animation will finish in fast linear
193
- mode.
1
+ ---
2
+ id: README
3
+ title: List
4
+ hide_title: true
5
+ sidebar_label: List
6
+ ---
7
+
8
+ # List
9
+ This package contains a variety of prepared lists with different focus/scroll
10
+ behaviours and configuration. If you cannot find the list with your desired
11
+ behaviour, feel free to add it. The interface for adding new behaviours is
12
+ rather simple. Check one of the existing implementations for inspiration on
13
+ how to do it.
14
+
15
+ To programatically scroll to certain index, use:
16
+ - `scrollTo(index)` - This method scrolls the list to given index as if the user moved there manually.
17
+ So e.g. BasicList if you scroll to index 7 from index 0, it will be at the bottom. If you scroll to
18
+ index 7 from index 20, it will be at the top. IMPORTANT: This function does not focus.
19
+
20
+ Lists also support updating data with these two methods:
21
+ - `appendData` - inserts new data at the end
22
+ - `prependData` - inserts new data at the beginning
23
+
24
+ ## Importing List
25
+ List package does not allow to import just the index file. Instead, please use
26
+ the path import of the implementation that you require or the interface.
27
+ ```ts
28
+ import { BasicList } from '@24i/bigscreen-sdk/list/Basic';
29
+ import { FixedToEndList } from '@24i/bigscreen-sdk/list/FixedToEnd';
30
+ import { CenteredList } from '@24i/bigscreen-sdk/list/Centered';
31
+ import { FirstOnlyList } from '@24i/bigscreen-sdk/list/FirstOnly';
32
+ import { FirstOnlyVariedList } from '@24i/bigscreen-sdk/list/FirstOnlyVaried';
33
+ import { EdgeOffsetList } from '@24i/bigscreen-sdk/list/EdgeOffset';
34
+ import { Props, List, ListComponent, Item, ItemComponent } from '@24i/bigscreen-sdk/list/interface';
35
+ ```
36
+
37
+ ## Mouse support (MRCU)
38
+ This component takes advantage of a MouseNavigation component and is
39
+ automatically taking care of Mouse Support. This is enabled for
40
+ `web, tizen, and webOS`. For other platform it is disabled.
41
+
42
+ ## ListBase
43
+ This is an underlying component used by all lists. It is also exported so you
44
+ could use it in your project as well.
45
+
46
+ **Props**
47
+ - `data` - array of data to pass into items during render
48
+ - `renderItem` - function that will render one item - (item, index, ref) - ref must be passed onto item
49
+ - `visibleItems` - number of maximal visible items (including partially)
50
+ - `horizontal` - sets List to horizontal mode (default is vertical)
51
+ - `onFocusChanged` - optional callback that receives focused item and its index
52
+ - `onScrollChanged` - optional callback that receives item and index of current scroll performed every time list is scrolled.
53
+ - `animation` - optional AnimationConfiguration that is deep merged with default configuration of the list
54
+ - `className` - optional, class name for wrap element
55
+ - `animate` - optional, enables scrolling animation
56
+ - `fastScrolling` - optional, enables fast scrolling on list
57
+ - `fastFocusingOptimization` - optional, enables fast focusing optimization
58
+
59
+ **Props provided by behaviour controlling component (actual list implementations)**
60
+ - `limit` - optional limit to the number of rendered items
61
+ - `forward` - function that is called when list should move in forward direction. Returns boolean whether it processed the move.
62
+ - `backward` - function that is called when list should move in backward direction. Returns boolean whether it processed the move.
63
+
64
+ The result in renderItem needs to implement one of these interfaces depending
65
+ on your list type:
66
+
67
+ ## Item<Model> interface
68
+ ```ts
69
+ focus: (options?: FocusOptions) => void,
70
+ show: () => void,
71
+ hide: () => void, // expects the item to still occupy layout, just not be visible (do not use `display: none`)
72
+ updateData: (item: Model, index: number) => void, // change item content according to new model
73
+ hasDom?: (target: HTMLElement) => boolean, // returns whether passed target is the dom representation of the item
74
+ onFastScrolling?: (isFastScrolling: boolean) => void,
75
+ ```
76
+
77
+ ## List scrolling
78
+ All lists consist of a finite number of item elements. In the basic and animated
79
+ variant, those elements are moved from the left side of the list to the right
80
+ side and vice versa. This creates a scrolling effect. There is an `updateData`
81
+ method called on the items, so the content is properly changed during scrolling.
82
+ There are situations, however, in which you can't use `updateData` method on the item,
83
+ because the content is too complex for being updated, or it is not possible
84
+ (for example the item is whole another List component). For these situations,
85
+ there is a special wrapper item called `AttachDetachItem`. The item inside is not updated,
86
+ but instead, it is rendered only once inside the wrapper item during scrolling.
87
+ For more information check [AttachDetachItem](./AttachDetachItem/README.md) docs.
88
+
89
+ ## List fast scrolling
90
+ List scrolling could be also optimized by reducing elements on items during
91
+ scrolling. For this, fast scrolling could be enabled and list will call
92
+ `onFastScrolling(true)` on each item when started and `onFastScrolling(false)`
93
+ when finished. When enabled, fast scrolling on the animated list is turned on
94
+ until the animation is finished.
95
+
96
+ ## List fast focusing
97
+ List scrolling could be also optimized by preventing focusing items during
98
+ scrolling. For this, fast focusing optimization could be enabled by setting
99
+ `fastFocusingOptimization: true` in props. When enabled, it will not focus items
100
+ during scrolling until the animation is finished or key up is emitted.
101
+
102
+ ## onFocusChanged and onScrollChanged
103
+ `onFocusChanged` is called every time next item in list is focused, but after
104
+ various optimization improvements, items are not focused step by step during scrolling.
105
+ Because of this behavior, actions frequently used in onFocusChanged representing
106
+ scroll change can't be used. For this purpose there is `onScrollChanged` callback,
107
+ which is called every time list is performing scroll operation.
108
+
109
+ ## Prevent blur on long press
110
+ When the user holds a navigation key, he usually scrolls to the end (or start) of the list
111
+ and then releases the key. This operation is very quick and most of the time he releases
112
+ the key too late, so the keydown event from the list will propagate to another component
113
+ in the layout. This causes for example opening of the menu even though the user is still holding
114
+ the key and scrolling the list. For those situations and to have better control above the layout
115
+ navigation, there is a prop `preventBlurOnLongPress`. When the user scrolls to the end (or start)
116
+ of the list, he needs to release the key and press it again to propagate the event higher
117
+ and focus another component.
118
+
119
+ ```ts
120
+ preventBlurOnLongPress: {
121
+ forward?: boolean, // apply when user scroll forward
122
+ backward?: boolean, // apply when user scroll backward
123
+ }
124
+ ```
125
+
126
+ ## Prepared lists
127
+ - Fixed item size lists
128
+ - [BasicList - (slow/animated)](./BasicList/README.md)
129
+ - [CenteredList - (slow/animated)](./CenteredList/README.md)
130
+ - [EdgeOffsetList - (slow/animated)](./EdgeOffsetList/README.md)
131
+ - [FirstOnlyList - (slow/animated)](./FirstOnlyList/README.md)
132
+ - [FixedToEndList - (slow/animated)](./FixedToEndList/README.md)
133
+ - Variable item size lists
134
+ - [FirstOnlyVariedList - (slow/animated)](./FirstOnlyVariedList/README.md)
135
+
136
+ ## Usage (with BasicList example)
137
+ ```jsx
138
+ <BasicList<Packshot, MovieModel>
139
+ ref={this.lists[categoryIndex]}
140
+ data={movies}
141
+ renderItem={(movie, index, ref) => (
142
+ <Packshot
143
+ ref={ref}
144
+ movie={movie}
145
+ />
146
+ )}
147
+ visibleItems={6}
148
+ firstScrollStep={150}
149
+ scrollStep={240}
150
+ horizontal
151
+ />
152
+ ```
153
+
154
+ ## AnimationConfiguration
155
+ ```ts
156
+ type AnimationConfiguration = {
157
+ normal: {
158
+ time: number,
159
+ easing: EasingType,
160
+ },
161
+ fastLinear?: {
162
+ time: number,
163
+ startRatio: number,
164
+ endRatio?: number,
165
+ }
166
+ slowdownRatio?: number,
167
+ }
168
+ ```
169
+
170
+ ### Properties
171
+ - normal - main animation type used for scrolling
172
+ - fastLinear - optional - linear animation type used during fast scrolling (when user holds a key
173
+ and scroll with the list for longer period)
174
+ - slowdownRatio - optional - number between 0 > and <= 1, determines how much scroll would be slowed down.
175
+ Less the number, slower the scrolling. Undefined or 0 is unlimited scroll speed. Slowing down the scroll
176
+ speed could improve overall animation performance in some cases.
177
+
178
+ ### fastLinear property
179
+ List animation provides possibility of optimizing the animation during slow speeds and smoother
180
+ the scrolling effect without easing in `normal` property interfering the movement.
181
+ This is achieved by changing the ease of the animation to linear when the scroll is longer
182
+ and user is moving the list further.
183
+ `fastLinear` property have these settings:
184
+ - time - duration of the animation, same as in `normal` property
185
+ - startRatio - this number represents the threshold, when should linear animation start.
186
+ Under the hood, threshold is one `scrollStep` (or an average item size in case of varied list variant).
187
+ This number is basically multiplied by scrollStep number, so the linear animation will start,
188
+ when the current scroll size is larger than `threshold * startRatio`. When the number is 1,
189
+ threshold is exactly one scrollStep.
190
+ - endRatio - optional - this number represents when the scroll animation should switch from fast linear back
191
+ to normal. Threshold is the same as in `startRatio`, but animation will switch when scroll length is less
192
+ than `threshold * startRatio`. Parameter is optional, so if it is not set, animation will finish in fast linear
193
+ mode.