@24i/bigscreen-sdk 1.0.34 → 1.0.35-alpha.2578

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 (1081) 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 +161 -161
  25. package/packages/analytics/src/clients/TealiumAnalytics/constants.ts +102 -102
  26. package/packages/analytics/src/clients/TealiumAnalytics/index.ts +3 -3
  27. package/packages/analytics/src/clients/TealiumAnalytics/interface.ts +33 -33
  28. package/packages/analytics/src/clients/TealiumAnalytics/mappers/__mocks__/mediaPayload.ts +40 -40
  29. package/packages/analytics/src/clients/TealiumAnalytics/mappers/helper.ts +21 -21
  30. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapAppError.ts +14 -14
  31. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteAdd.ts +11 -11
  32. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapFavoriteRemove.ts +11 -11
  33. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerClose.ts +15 -15
  34. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapPlayerOpen.ts +15 -15
  35. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSceneView.ts +15 -15
  36. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearch.ts +18 -18
  37. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchFailed.ts +8 -8
  38. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapSearchSuccess.ts +8 -8
  39. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoPause.ts +15 -15
  40. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoProgress.ts +18 -18
  41. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoResume.ts +15 -15
  42. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStart.ts +15 -15
  43. package/packages/analytics/src/clients/TealiumAnalytics/mappers/mapVideoStop.ts +15 -15
  44. package/packages/analytics/src/clients/TealiumAnalytics/types.ts +139 -139
  45. package/packages/analytics/src/clients/TwentyFourIQ/TwentyFourIQClient.ts +116 -116
  46. package/packages/analytics/src/clients/TwentyFourIQ/constants.ts +99 -99
  47. package/packages/analytics/src/clients/TwentyFourIQ/helper.ts +34 -34
  48. package/packages/analytics/src/clients/TwentyFourIQ/index.ts +2 -2
  49. package/packages/analytics/src/clients/TwentyFourIQ/interface.ts +31 -31
  50. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdLoaded.ts +13 -13
  51. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapAdSkipped.ts +16 -16
  52. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBase.ts +21 -21
  53. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapBuffering.ts +15 -15
  54. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerClose.ts +24 -24
  55. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapPlayerOpen.ts +18 -18
  56. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapSceneView.ts +15 -15
  57. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapScroll.ts +17 -17
  58. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoComplete.ts +21 -21
  59. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoPause.ts +24 -24
  60. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoProgress.ts +24 -24
  61. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStart.ts +34 -34
  62. package/packages/analytics/src/clients/TwentyFourIQ/mappers/mapVideoStop.ts +32 -32
  63. package/packages/analytics/src/clients/TwentyFourIQ/types.ts +115 -115
  64. package/packages/analytics/src/constants.ts +1 -1
  65. package/packages/analytics/src/index.ts +3 -3
  66. package/packages/analytics/src/interface.ts +1 -1
  67. package/packages/analytics/src/utils/generateSessionId.ts +8 -8
  68. package/packages/animations/README.md +85 -85
  69. package/packages/animations/src/AnimationUtils.ts +238 -238
  70. package/packages/animations/src/JSAnimations.ts +144 -144
  71. package/packages/animations/src/__mocks__/JSAnimations.ts +30 -30
  72. package/packages/animations/src/index.ts +3 -3
  73. package/packages/announcement-banner/README.md +49 -49
  74. package/packages/announcement-banner/src/AnnouncementBanner.scss +8 -8
  75. package/packages/announcement-banner/src/AnnouncementBanner.tsx +136 -136
  76. package/packages/announcement-banner/src/index.ts +1 -1
  77. package/packages/async-image/README.md +47 -47
  78. package/packages/async-image/src/AsyncImage.tsx +101 -101
  79. package/packages/async-image/src/index.ts +2 -2
  80. package/packages/conviva/README.md +47 -47
  81. package/packages/conviva/src/ConvivaSDK.ts +38 -38
  82. package/packages/conviva/src/__mocks__/ConvivaMock.ts +36 -36
  83. package/packages/conviva/src/index.ts +1 -1
  84. package/packages/conviva/src/theoPlugin/ConvivaConviguration.ts +19 -19
  85. package/packages/conviva/src/theoPlugin/__external__/Conviva_4.0.15.js +698 -698
  86. package/packages/conviva/src/theoPlugin/__external__/convivaTheoPlugin.d.ts +7 -7
  87. package/packages/conviva/src/theoPlugin/__external__/convivaTheoPlugin.js +635 -635
  88. package/packages/conviva/src/theoPlugin/convivaTheoPluginWrapper.ts +61 -61
  89. package/packages/conviva/src/theoPlugin/index.ts +2 -2
  90. package/packages/developer-tools/DeveloperConsole/README.md +114 -114
  91. package/packages/developer-tools/DeveloperConsole/index.ts +3 -3
  92. package/packages/developer-tools/DeveloperConsole/unstyled.ts +1 -1
  93. package/packages/developer-tools/DeveloperToolsService/README.md +54 -54
  94. package/packages/developer-tools/DeveloperToolsService/index.ts +3 -3
  95. package/packages/developer-tools/DeveloperToolsService/unstyled.ts +1 -1
  96. package/packages/developer-tools/EnvironmentSelection/README.md +77 -77
  97. package/packages/developer-tools/EnvironmentSelection/index.ts +3 -3
  98. package/packages/developer-tools/EnvironmentSelection/unstyled.ts +1 -1
  99. package/packages/developer-tools/PlayerDebugWindow/README.md +65 -65
  100. package/packages/developer-tools/PlayerDebugWindow/index.ts +3 -3
  101. package/packages/developer-tools/PlayerDebugWindow/unstyled.ts +1 -1
  102. package/packages/developer-tools/README.md +24 -24
  103. package/packages/developer-tools/TechnicalInfo/README.md +90 -90
  104. package/packages/developer-tools/TechnicalInfo/index.ts +9 -9
  105. package/packages/developer-tools/TechnicalInfo/unstyled.ts +6 -6
  106. package/packages/developer-tools/src/DeveloperConsole/ControlButton.tsx +16 -16
  107. package/packages/developer-tools/src/DeveloperConsole/DeveloperConsole.tsx +389 -389
  108. package/packages/developer-tools/src/DeveloperConsole/Panel.tsx +108 -108
  109. package/packages/developer-tools/src/DeveloperConsole/PanelMessage.tsx +33 -33
  110. package/packages/developer-tools/src/DeveloperConsole/helpers/Queue.ts +38 -38
  111. package/packages/developer-tools/src/DeveloperConsole/helpers/index.ts +2 -2
  112. package/packages/developer-tools/src/DeveloperConsole/helpers/instrumentHandler.ts +165 -165
  113. package/packages/developer-tools/src/DeveloperConsole/index.ts +2 -2
  114. package/packages/developer-tools/src/DeveloperConsole/initDeveloperConsole.tsx +8 -8
  115. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.scss +91 -91
  116. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.styles.1080.scss +2 -2
  117. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.styles.scss +2 -2
  118. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/_sizes.1080.scss +16 -16
  119. package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/_sizes.scss +16 -16
  120. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.scss +87 -87
  121. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.styles.1080.scss +2 -2
  122. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.styles.scss +2 -2
  123. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/_sizes.1080.scss +9 -9
  124. package/packages/developer-tools/src/DeveloperConsole/styles/Panel/_sizes.scss +9 -9
  125. package/packages/developer-tools/src/DeveloperConsole/styles.ts +2 -2
  126. package/packages/developer-tools/src/DeveloperConsole/types.ts +49 -49
  127. package/packages/developer-tools/src/DeveloperConsole/utils/formatTime.ts +13 -13
  128. package/packages/developer-tools/src/DeveloperConsole/utils/index.ts +3 -3
  129. package/packages/developer-tools/src/DeveloperConsole/utils/stringify.ts +10 -10
  130. package/packages/developer-tools/src/DeveloperConsole/utils/styles.ts +24 -24
  131. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolItem.tsx +21 -21
  132. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsList.tsx +125 -125
  133. package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsService.tsx +122 -122
  134. package/packages/developer-tools/src/DeveloperToolsService/index.ts +1 -1
  135. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.scss +64 -64
  136. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.1080.scss +2 -2
  137. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.animated.1080.scss +3 -3
  138. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.animated.scss +4 -4
  139. package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.scss +2 -2
  140. package/packages/developer-tools/src/DeveloperToolsService/styles/_animated.scss +5 -5
  141. package/packages/developer-tools/src/DeveloperToolsService/styles/_sizes.1080.scss +16 -16
  142. package/packages/developer-tools/src/DeveloperToolsService/styles/_sizes.scss +16 -16
  143. package/packages/developer-tools/src/DeveloperToolsService/styles.ts +1 -1
  144. package/packages/developer-tools/src/EnvironmentSelection/EnvironmentList.tsx +90 -90
  145. package/packages/developer-tools/src/EnvironmentSelection/EnvironmentListItem.tsx +106 -106
  146. package/packages/developer-tools/src/EnvironmentSelection/EnvironmentSelection.tsx +102 -102
  147. package/packages/developer-tools/src/EnvironmentSelection/assets/checkmark.svg +18 -18
  148. package/packages/developer-tools/src/EnvironmentSelection/config.ts +43 -43
  149. package/packages/developer-tools/src/EnvironmentSelection/constants.ts +1 -1
  150. package/packages/developer-tools/src/EnvironmentSelection/index.ts +2 -2
  151. package/packages/developer-tools/src/EnvironmentSelection/sizes.1080.ts +5 -5
  152. package/packages/developer-tools/src/EnvironmentSelection/sizes.ts +5 -5
  153. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.scss +141 -141
  154. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.1080.scss +2 -2
  155. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.animated.1080.scss +3 -3
  156. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.animated.scss +3 -3
  157. package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.scss +2 -2
  158. package/packages/developer-tools/src/EnvironmentSelection/styles/_animated.scss +9 -9
  159. package/packages/developer-tools/src/EnvironmentSelection/styles/_sizes.1080.scss +26 -26
  160. package/packages/developer-tools/src/EnvironmentSelection/styles/_sizes.scss +26 -26
  161. package/packages/developer-tools/src/EnvironmentSelection/styles.ts +1 -1
  162. package/packages/developer-tools/src/EnvironmentSelection/types.ts +10 -10
  163. package/packages/developer-tools/src/EnvironmentSelection/utils/format.ts +4 -4
  164. package/packages/developer-tools/src/IDeveloperTool.ts +14 -14
  165. package/packages/developer-tools/src/PlayerDebugWindow/PlayerDebugWindow.tsx +115 -115
  166. package/packages/developer-tools/src/PlayerDebugWindow/constants.ts +128 -128
  167. package/packages/developer-tools/src/PlayerDebugWindow/index.ts +1 -1
  168. package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.scss +29 -29
  169. package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.styles.1080.scss +2 -2
  170. package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.styles.scss +2 -2
  171. package/packages/developer-tools/src/PlayerDebugWindow/styles/_sizes.1080.scss +11 -11
  172. package/packages/developer-tools/src/PlayerDebugWindow/styles/_sizes.scss +11 -11
  173. package/packages/developer-tools/src/PlayerDebugWindow/styles.ts +1 -1
  174. package/packages/developer-tools/src/TechnicalInfo/ITechnicalInfoProvider.ts +5 -5
  175. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfo.tsx +125 -125
  176. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoDetail.tsx +77 -77
  177. package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoProvider.ts +349 -349
  178. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Device.ts +55 -55
  179. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Player.ts +7 -7
  180. package/packages/developer-tools/src/TechnicalInfo/__mocks__/Storage.ts +9 -9
  181. package/packages/developer-tools/src/TechnicalInfo/icons/arrow-down.svg +18 -18
  182. package/packages/developer-tools/src/TechnicalInfo/icons/arrow-up.svg +18 -18
  183. package/packages/developer-tools/src/TechnicalInfo/index.ts +5 -5
  184. package/packages/developer-tools/src/TechnicalInfo/sizes.1080.ts +1 -1
  185. package/packages/developer-tools/src/TechnicalInfo/sizes.ts +1 -1
  186. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.scss +187 -187
  187. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.1080.scss +2 -2
  188. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.animated.1080.scss +3 -3
  189. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.animated.scss +3 -3
  190. package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.scss +2 -2
  191. package/packages/developer-tools/src/TechnicalInfo/styles/_animated.scss +16 -16
  192. package/packages/developer-tools/src/TechnicalInfo/styles/_sizes.1080.scss +50 -50
  193. package/packages/developer-tools/src/TechnicalInfo/styles/_sizes.scss +50 -50
  194. package/packages/developer-tools/src/TechnicalInfo/styles.ts +1 -1
  195. package/packages/developer-tools/src/TechnicalInfo/translations.ts +79 -79
  196. package/packages/developer-tools/src/TechnicalInfo/utils/eme01bSupport.ts +58 -58
  197. package/packages/developer-tools/src/TechnicalInfo/utils/emeSupport.ts +84 -84
  198. package/packages/developer-tools/src/TechnicalInfo/utils/formatTimezone.ts +15 -15
  199. package/packages/developer-tools/src/TechnicalInfo/utils/mseSupport.ts +14 -14
  200. package/packages/developer-tools/src/utils/reload.ts +6 -6
  201. package/packages/device/README.md +219 -219
  202. package/packages/device/keymap.ts +1 -1
  203. package/packages/device/resolver/index.ts +2 -2
  204. package/packages/device/resolver/keymap.ts +1 -1
  205. package/packages/device/src/DeviceEventMap.ts +1 -1
  206. package/packages/device/src/device.ts +6 -6
  207. package/packages/device/src/driver/index.android.tv.ts +1 -1
  208. package/packages/device/src/driver/index.entone.ts +1 -1
  209. package/packages/device/src/driver/index.firetv.ts +1 -1
  210. package/packages/device/src/driver/index.hbbtv.tv.ts +1 -1
  211. package/packages/device/src/driver/index.kreatv.ts +1 -1
  212. package/packages/device/src/driver/index.saphi.tv.ts +1 -1
  213. package/packages/device/src/driver/index.smartcast.tv.ts +1 -1
  214. package/packages/device/src/driver/index.tizen.tv.ts +1 -1
  215. package/packages/device/src/driver/index.ts +1 -1
  216. package/packages/device/src/driver/index.vidaa.tv.ts +1 -1
  217. package/packages/device/src/driver/index.webos.tv.ts +1 -1
  218. package/packages/device/src/getKeyDigit.ts +35 -35
  219. package/packages/device/src/getKeyMap.ts +4 -4
  220. package/packages/device/src/index.ts +8 -8
  221. package/packages/device/src/isClickOrEnter.ts +3 -3
  222. package/packages/device/src/resolver/index.ts +2 -2
  223. package/packages/device/src/resolver/resolver.ts +84 -84
  224. package/packages/digital-clock/README.md +26 -26
  225. package/packages/digital-clock/src/DigitalClock.tsx +78 -78
  226. package/packages/digital-clock/src/index.ts +1 -1
  227. package/packages/driver-androidtv/src/DeviceAndroidTV.ts +224 -224
  228. package/packages/driver-androidtv/src/__mocks__/javaScriptBridge.ts +36 -36
  229. package/packages/driver-androidtv/src/formatUserAgent.ts +11 -11
  230. package/packages/driver-androidtv/src/index.ts +1 -1
  231. package/packages/driver-androidtv/src/keymap.ts +27 -27
  232. package/packages/driver-androidtv/src/types.ts +113 -113
  233. package/packages/driver-base/DeviceBase.md +139 -139
  234. package/packages/driver-base/README.md +44 -44
  235. package/packages/driver-base/src/ConnectionType.ts +1 -1
  236. package/packages/driver-base/src/DeviceBase.ts +279 -279
  237. package/packages/driver-base/src/KeyMap/Key.ts +48 -48
  238. package/packages/driver-base/src/KeyMap/KeyMap.ts +390 -390
  239. package/packages/driver-base/src/KeyMap/generateKeyCodeKeyMap.ts +11 -11
  240. package/packages/driver-base/src/KeyMap/index.ts +5 -5
  241. package/packages/driver-base/src/KeyMap/interface.ts +8 -8
  242. package/packages/driver-base/src/KeyMap/overrideValues.ts +17 -17
  243. package/packages/driver-base/src/KeyMap/switchByKey.ts +18 -18
  244. package/packages/driver-base/src/ScreenSize.ts +1 -1
  245. package/packages/driver-base/src/VolumeRange.ts +5 -5
  246. package/packages/driver-base/src/__mocks__/DeviceBase.ts +100 -100
  247. package/packages/driver-base/src/__mocks__/keyMap.ts +42 -42
  248. package/packages/driver-base/src/bindPreventDefaultEvent.ts +5 -5
  249. package/packages/driver-base/src/errors.ts +32 -32
  250. package/packages/driver-base/src/index.ts +10 -10
  251. package/packages/driver-base/src/loadObject.ts +30 -30
  252. package/packages/driver-base/src/types/DeviceEvent.ts +11 -11
  253. package/packages/driver-base/src/types/ExitOptions.ts +1 -1
  254. package/packages/driver-base/src/types/KeycodeKeyMap.ts +86 -86
  255. package/packages/driver-base/src/types/ScreenSaverStatus.ts +3 -3
  256. package/packages/driver-base/src/utils.ts +10 -10
  257. package/packages/driver-browser/src/DeviceBrowser.ts +170 -170
  258. package/packages/driver-browser/src/getBrowser.ts +51 -51
  259. package/packages/driver-browser/src/getOsName.ts +30 -30
  260. package/packages/driver-browser/src/index.ts +1 -1
  261. package/packages/driver-browser/src/keymap.ts +22 -22
  262. package/packages/driver-browser/src/patchSuitestKeys.ts +27 -27
  263. package/packages/driver-entone/README.md +9 -9
  264. package/packages/driver-entone/src/DeviceEntone.ts +232 -232
  265. package/packages/driver-entone/src/IEntone.ts +460 -460
  266. package/packages/driver-entone/src/__mocks__/entone.ts +177 -177
  267. package/packages/driver-entone/src/constants.ts +73 -73
  268. package/packages/driver-entone/src/index.ts +1 -1
  269. package/packages/driver-entone/src/keymap.ts +57 -57
  270. package/packages/driver-firetv/src/DeviceFireTV.ts +18 -18
  271. package/packages/driver-firetv/src/__mocks__/javaScriptBridge.ts +36 -36
  272. package/packages/driver-firetv/src/index.ts +1 -1
  273. package/packages/driver-hbbtv/src/DeviceHbbTV.ts +313 -313
  274. package/packages/driver-hbbtv/src/__mocks__/hbbtv.ts +17 -17
  275. package/packages/driver-hbbtv/src/constants.ts +28 -28
  276. package/packages/driver-hbbtv/src/deviceInfo.ts +23 -23
  277. package/packages/driver-hbbtv/src/getVersion.ts +16 -16
  278. package/packages/driver-hbbtv/src/index.ts +1 -1
  279. package/packages/driver-hbbtv/src/keymap.ts +45 -45
  280. package/packages/driver-hbbtv/src/types.ts +366 -366
  281. package/packages/driver-kreatv/src/DeviceKreaTV.ts +271 -271
  282. package/packages/driver-kreatv/src/IToi.ts +379 -379
  283. package/packages/driver-kreatv/src/__mocks__/toi2.ts +76 -76
  284. package/packages/driver-kreatv/src/__mocks__/toi3.ts +43 -43
  285. package/packages/driver-kreatv/src/index.ts +1 -1
  286. package/packages/driver-kreatv/src/keymap.ts +31 -31
  287. package/packages/driver-kreatv/src/toi2.ts +107 -107
  288. package/packages/driver-kreatv/src/toi3.ts +102 -102
  289. package/packages/driver-kreatv/src/types.ts +35 -35
  290. package/packages/driver-saphi/src/DeviceSaphi.ts +144 -144
  291. package/packages/driver-saphi/src/__mocks__/SmartTvA_API.ts +11 -11
  292. package/packages/driver-saphi/src/__mocks__/userAgent.ts +4 -4
  293. package/packages/driver-saphi/src/constants.ts +1 -1
  294. package/packages/driver-saphi/src/formatUserAgent.ts +19 -19
  295. package/packages/driver-saphi/src/index.ts +1 -1
  296. package/packages/driver-saphi/src/keymap.ts +64 -64
  297. package/packages/driver-saphi/src/types.ts +75 -75
  298. package/packages/driver-smartcast/src/DeviceSmartCast.ts +316 -310
  299. package/packages/driver-smartcast/src/__mocks__/api.ts +49 -49
  300. package/packages/driver-smartcast/src/index.ts +1 -1
  301. package/packages/driver-smartcast/src/keymap.ts +9 -9
  302. package/packages/driver-smartcast/src/types.ts +65 -65
  303. package/packages/driver-tizen/src/DeviceTizen.ts +298 -298
  304. package/packages/driver-tizen/src/ITizen.ts +212 -212
  305. package/packages/driver-tizen/src/IWebapis.ts +95 -95
  306. package/packages/driver-tizen/src/TizenKeys.ts +96 -96
  307. package/packages/driver-tizen/src/__mocks__/tizen.ts +35 -35
  308. package/packages/driver-tizen/src/constants.ts +197 -197
  309. package/packages/driver-tizen/src/index.ts +1 -1
  310. package/packages/driver-tizen/src/types.ts +14 -14
  311. package/packages/driver-vidaa/src/DeviceVidaa.ts +141 -141
  312. package/packages/driver-vidaa/src/__mocks__/vidaa.ts +21 -21
  313. package/packages/driver-vidaa/src/constants.ts +8 -8
  314. package/packages/driver-vidaa/src/formatUserAgent.ts +16 -16
  315. package/packages/driver-vidaa/src/index.ts +1 -1
  316. package/packages/driver-vidaa/src/keymap.ts +56 -56
  317. package/packages/driver-vidaa/src/types.ts +90 -90
  318. package/packages/driver-webos/src/DeviceWebos.ts +313 -313
  319. package/packages/driver-webos/src/__mocks__/webos.ts +172 -172
  320. package/packages/driver-webos/src/constants.ts +20 -20
  321. package/packages/driver-webos/src/index.ts +1 -1
  322. package/packages/driver-webos/src/keymap.ts +10 -10
  323. package/packages/driver-webos/src/types.ts +344 -344
  324. package/packages/driver-webos/src/utils.ts +60 -60
  325. package/packages/driver-webos/src/webOSTVjs/webOSTVjs.js +12 -12
  326. package/packages/driver-xbox/__external__/winjs/directionalnavigation-1.0.0.0.js +1015 -1015
  327. package/packages/driver-xbox/src/DeviceXbox.ts +231 -231
  328. package/packages/driver-xbox/src/__mocks__/Windows.ts +94 -94
  329. package/packages/driver-xbox/src/index.ts +1 -1
  330. package/packages/driver-xbox/src/interfaces.ts +138 -138
  331. package/packages/driver-xbox/src/keymap.ts +96 -96
  332. package/packages/driver-xbox/src/utils.ts +23 -23
  333. package/packages/epg/IMPLEMENTATION.md +228 -228
  334. package/packages/epg/MockGenerator.md +102 -102
  335. package/packages/epg/README.md +585 -585
  336. package/packages/epg/src/v2/Cell.tsx +222 -222
  337. package/packages/epg/src/v2/CellsManager.ts +1 -1
  338. package/packages/epg/src/v2/DataManager.ts +372 -372
  339. package/packages/epg/src/v2/DatePicker.tsx +110 -110
  340. package/packages/epg/src/v2/DateToast/DateToast.scss +28 -28
  341. package/packages/epg/src/v2/DateToast/DateToast.styles.1080.scss +2 -2
  342. package/packages/epg/src/v2/DateToast/DateToast.styles.scss +2 -2
  343. package/packages/epg/src/v2/DateToast/DateToast.tsx +90 -90
  344. package/packages/epg/src/v2/DateToast/_sizes.1080.scss +7 -7
  345. package/packages/epg/src/v2/DateToast/_sizes.scss +7 -7
  346. package/packages/epg/src/v2/DateToast/index.tsx +1 -1
  347. package/packages/epg/src/v2/DateToast/styles.ts +1 -1
  348. package/packages/epg/src/v2/Day.tsx +33 -33
  349. package/packages/epg/src/v2/Epg.tsx +462 -462
  350. package/packages/epg/src/v2/Header.tsx +41 -41
  351. package/packages/epg/src/v2/IdleController.ts +25 -25
  352. package/packages/epg/src/v2/InputEvents.ts +301 -301
  353. package/packages/epg/src/v2/MockGenerator/config.1080.ts +2 -2
  354. package/packages/epg/src/v2/MockGenerator/config.ts +2 -2
  355. package/packages/epg/src/v2/MockGenerator/generator.ts +174 -174
  356. package/packages/epg/src/v2/MockGenerator/index.ts +2 -2
  357. package/packages/epg/src/v2/MockGenerator/mocks/data.ts +102 -102
  358. package/packages/epg/src/v2/MockGenerator/types.ts +25 -25
  359. package/packages/epg/src/v2/MockGenerator/utils.ts +28 -28
  360. package/packages/epg/src/v2/MouseNavigation/MouseNavigation.tsx +88 -88
  361. package/packages/epg/src/v2/MouseNavigation/MouseNavigationFallback.ts +4 -4
  362. package/packages/epg/src/v2/MouseNavigation/index.tizen.tv.ts +1 -1
  363. package/packages/epg/src/v2/MouseNavigation/index.ts +1 -1
  364. package/packages/epg/src/v2/MouseNavigation/index.web.ts +1 -1
  365. package/packages/epg/src/v2/MouseNavigation/index.webos.tv.ts +1 -1
  366. package/packages/epg/src/v2/NowLine.tsx +66 -66
  367. package/packages/epg/src/v2/Program.tsx +58 -58
  368. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.scss +67 -67
  369. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.1080.scss +3 -3
  370. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.animated.1080.scss +2 -2
  371. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.animated.scss +2 -2
  372. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.scss +3 -3
  373. package/packages/epg/src/v2/ProgramInfo/ProgramInfo.tsx +149 -149
  374. package/packages/epg/src/v2/ProgramInfo/_animated.scss +8 -8
  375. package/packages/epg/src/v2/ProgramInfo/_mixins.scss +5 -5
  376. package/packages/epg/src/v2/ProgramInfo/_sizes.1080.scss +21 -21
  377. package/packages/epg/src/v2/ProgramInfo/_sizes.scss +21 -21
  378. package/packages/epg/src/v2/ProgramInfo/index.ts +1 -1
  379. package/packages/epg/src/v2/ProgramInfo/rtl.scss +7 -7
  380. package/packages/epg/src/v2/ProgramInfo/sizes.1080.ts +3 -3
  381. package/packages/epg/src/v2/ProgramInfo/sizes.ts +3 -3
  382. package/packages/epg/src/v2/ProgramInfo/styles.ts +1 -1
  383. package/packages/epg/src/v2/ProgramInfo/utils.ts +28 -28
  384. package/packages/epg/src/v2/Row.tsx +134 -134
  385. package/packages/epg/src/v2/RowsManager.ts +1 -1
  386. package/packages/epg/src/v2/TimeManager.ts +58 -58
  387. package/packages/epg/src/v2/Timeline.ts +1 -1
  388. package/packages/epg/src/v2/TimelineSection.tsx +50 -50
  389. package/packages/epg/src/v2/basic/CellsManager.tsx +300 -300
  390. package/packages/epg/src/v2/basic/RowsManager.tsx +503 -503
  391. package/packages/epg/src/v2/basic/Timeline.tsx +88 -88
  392. package/packages/epg/src/v2/index.ts +1 -1
  393. package/packages/epg/src/v2/interface.ts +1519 -1519
  394. package/packages/epg/src/v2/sizes.1080.ts +2 -2
  395. package/packages/epg/src/v2/sizes.ts +2 -2
  396. package/packages/epg/src/v2/styles/Basic/Basic.scss +116 -116
  397. package/packages/epg/src/v2/styles/Basic/index.ts +1 -1
  398. package/packages/epg/src/v2/styles/Whitelabel/index.ts +1 -1
  399. package/packages/epg/src/v2/utils.ts +40 -40
  400. package/packages/events-manager/src/EventsManager.ts +1 -1
  401. package/packages/events-manager/src/index.ts +2 -2
  402. package/packages/floating-focus/README.md +64 -64
  403. package/packages/floating-focus/src/FloatingFocus.ts +106 -106
  404. package/packages/floating-focus/src/Horizontal.tsx +20 -20
  405. package/packages/floating-focus/src/Vertical.tsx +20 -20
  406. package/packages/floating-focus/src/index.ts +4 -4
  407. package/packages/floating-focus/src/types.ts +20 -20
  408. package/packages/floating-focus/src/utils.ts +43 -43
  409. package/packages/focus/README.md +348 -348
  410. package/packages/focus/src/IFocusable.ts +5 -5
  411. package/packages/focus/src/Layout/Base.tsx +166 -166
  412. package/packages/focus/src/Layout/Horizontal.ts +15 -15
  413. package/packages/focus/src/Layout/Matrix.tsx +357 -357
  414. package/packages/focus/src/Layout/Vertical.ts +12 -12
  415. package/packages/focus/src/Layout/constants.ts +10 -10
  416. package/packages/focus/src/Layout/isRtl.ts +12 -12
  417. package/packages/focus/src/Layout/types.ts +7 -7
  418. package/packages/focus/src/candidate.ts +106 -106
  419. package/packages/focus/src/focusFirstExisting.ts +19 -19
  420. package/packages/focus/src/hasFocus.ts +36 -36
  421. package/packages/focus/src/index.ts +16 -16
  422. package/packages/focus/src/refocusAfterHashChange.ts +19 -19
  423. package/packages/focus/src/safeFocus.ts +15 -15
  424. package/packages/gallup/README.md +27 -27
  425. package/packages/gallup/src/Gallup.ts +80 -80
  426. package/packages/gallup/src/GallupMock.ts +7 -7
  427. package/packages/gallup/src/__external__/SpringStreams.d.ts +39 -39
  428. package/packages/gallup/src/__mocks__/SpringStreams.js +18 -18
  429. package/packages/gallup/src/index.ts +1 -1
  430. package/packages/grid/BasicGrid/README.md +78 -78
  431. package/packages/grid/BasicGrid/index.ts +1 -1
  432. package/packages/grid/FirstOnlyGrid/README.md +43 -43
  433. package/packages/grid/FirstOnlyGrid/index.ts +1 -1
  434. package/packages/grid/FixedToEndGrid/README.md +45 -45
  435. package/packages/grid/FixedToEndGrid/index.ts +1 -1
  436. package/packages/grid/Item/index.ts +1 -1
  437. package/packages/grid/README.md +169 -169
  438. package/packages/grid/src/Base/Base.tsx +492 -492
  439. package/packages/grid/src/Base/MouseNavigation/MouseNavigation.tsx +82 -82
  440. package/packages/grid/src/Base/MouseNavigation/MouseNavigationFallback.ts +4 -4
  441. package/packages/grid/src/Base/MouseNavigation/index.tizen.tv.ts +1 -1
  442. package/packages/grid/src/Base/MouseNavigation/index.ts +1 -1
  443. package/packages/grid/src/Base/MouseNavigation/index.webos.tv.ts +1 -1
  444. package/packages/grid/src/Base/MouseNavigation/index.webtv.ts +1 -1
  445. package/packages/grid/src/Base/index.ts +1 -1
  446. package/packages/grid/src/Base/interface.ts +47 -47
  447. package/packages/grid/src/BasicGrid/BasicGrid.tsx +137 -137
  448. package/packages/grid/src/BasicGrid/config.ts +13 -13
  449. package/packages/grid/src/FastFocusingOptimizer/FastFocusingOptimizer.ts +54 -54
  450. package/packages/grid/src/FirstOnlyGrid/FirstOnlyGrid.tsx +112 -112
  451. package/packages/grid/src/FirstOnlyGrid/config.ts +13 -13
  452. package/packages/grid/src/FirstOnlyGrid/controller.ts +10 -10
  453. package/packages/grid/src/FixedToEndGrid/FixedToEndGrid.tsx +112 -112
  454. package/packages/grid/src/FixedToEndGrid/config.ts +13 -13
  455. package/packages/grid/src/FixedToEndGrid/controller.ts +36 -36
  456. package/packages/grid/src/UnifiedGridController/UnifiedGridController.ts +555 -555
  457. package/packages/grid/src/UnifiedGridController/index.ts +2 -2
  458. package/packages/grid/src/UnifiedGridController/interface.ts +92 -92
  459. package/packages/grid/src/animate.animated.ts +1 -1
  460. package/packages/grid/src/animate.ts +1 -1
  461. package/packages/grid/src/interface.ts +30 -30
  462. package/packages/grid/src/mocks/index.tsx +41 -41
  463. package/packages/grid/src/types.ts +69 -69
  464. package/packages/grid/src/utils.ts +69 -69
  465. package/packages/i18n/README.md +460 -460
  466. package/packages/i18n/src/I18n.ts +246 -246
  467. package/packages/i18n/src/Translation.tsx +36 -36
  468. package/packages/i18n/src/addResourceBundle.ts +73 -73
  469. package/packages/i18n/src/direction.ts +33 -33
  470. package/packages/i18n/src/index.ts +4 -4
  471. package/packages/i18n/src/isRtl.ts +3 -3
  472. package/packages/i18n/src/middlewares/i18next/Context/Context.ts +25 -25
  473. package/packages/i18n/src/middlewares/i18next/Context/index.ts +1 -1
  474. package/packages/i18n/src/middlewares/i18next/Interpolation/Interpolation.ts +95 -95
  475. package/packages/i18n/src/middlewares/i18next/Interpolation/index.ts +1 -1
  476. package/packages/i18n/src/middlewares/i18next/Nesting/Nesting.ts +38 -38
  477. package/packages/i18n/src/middlewares/i18next/Nesting/index.ts +1 -1
  478. package/packages/i18n/src/middlewares/i18next/Plurals/Plurals.ts +123 -123
  479. package/packages/i18n/src/middlewares/i18next/Plurals/Resolvers.ts +124 -124
  480. package/packages/i18n/src/middlewares/i18next/Plurals/index.ts +1 -1
  481. package/packages/i18n/src/middlewares/i18next/Plurals/types.ts +6 -6
  482. package/packages/i18n/src/middlewares/icu/DateInterpolation/DateInterpolation.ts +64 -64
  483. package/packages/i18n/src/middlewares/icu/DateInterpolation/index.ts +1 -1
  484. package/packages/i18n/src/middlewares/icu/Interpolation/Interpolation.ts +39 -39
  485. package/packages/i18n/src/middlewares/icu/Interpolation/index.ts +1 -1
  486. package/packages/i18n/src/middlewares/icu/NumberInterpolation/NumberInterpolation.ts +41 -41
  487. package/packages/i18n/src/middlewares/icu/NumberInterpolation/index.ts +1 -1
  488. package/packages/i18n/src/middlewares/icu/Plurals/Plurals.ts +65 -65
  489. package/packages/i18n/src/middlewares/icu/Plurals/Resolvers.ts +130 -130
  490. package/packages/i18n/src/middlewares/icu/Plurals/index.ts +1 -1
  491. package/packages/i18n/src/middlewares/icu/Plurals/types.ts +15 -15
  492. package/packages/i18n/src/middlewares/icu/Select/Select.ts +36 -36
  493. package/packages/i18n/src/middlewares/icu/Select/index.ts +1 -1
  494. package/packages/i18n/src/middlewares/icu/TimeInterpolation/TimeInterpolation.ts +65 -65
  495. package/packages/i18n/src/middlewares/icu/TimeInterpolation/index.ts +1 -1
  496. package/packages/i18n/src/middlewares/icu/shared/hasVariable.ts +5 -5
  497. package/packages/i18n/src/middlewares/icu/shared/matchSwitchCase.ts +80 -80
  498. package/packages/i18n/src/middlewares/icu/shared/unwrap.ts +1 -1
  499. package/packages/i18n/src/pluralsCommon/PluralsHelper.ts +54 -54
  500. package/packages/i18n/src/pluralsCommon/ResolverByLanguage.ts +129 -129
  501. package/packages/i18n/src/t.tsx +6 -6
  502. package/packages/i18n/src/typedTranslate.ts +31 -31
  503. package/packages/i18n/src/types.ts +66 -66
  504. package/packages/i18n/src/utils.ts +76 -76
  505. package/packages/icon/README.md +107 -107
  506. package/packages/icon/src/Icon.tsx +71 -71
  507. package/packages/icon/src/index.ts +1 -1
  508. package/packages/ime/README.md +72 -72
  509. package/packages/ime/src/IKeyboard.ts +6 -6
  510. package/packages/ime/src/IKeyboardEvent.ts +7 -7
  511. package/packages/ime/src/ImeManager.ts +33 -33
  512. package/packages/ime/src/SystemKeyboard/SystemKeyboard.ts +33 -33
  513. package/packages/ime/src/SystemKeyboard/SystemKeyboardBase.ts +98 -98
  514. package/packages/ime/src/SystemKeyboard/TizenSystemKeyboard.ts +66 -66
  515. package/packages/ime/src/SystemKeyboard/WebosSystemKeyboard.ts +74 -74
  516. package/packages/ime/src/SystemKeyboard/index.tizen.tv.ts +1 -1
  517. package/packages/ime/src/SystemKeyboard/index.ts +1 -1
  518. package/packages/ime/src/SystemKeyboard/index.webos.tv.ts +1 -1
  519. package/packages/ime/src/index.ts +3 -3
  520. package/packages/input/README.md +65 -65
  521. package/packages/input/__mocks__/MockKeyboard.ts +40 -40
  522. package/packages/input/src/Input.scss +9 -9
  523. package/packages/input/src/Input.tsx +267 -267
  524. package/packages/input/src/index.ts +1 -1
  525. package/packages/input/src/utils.ts +71 -71
  526. package/packages/interactable/README.md +38 -38
  527. package/packages/interactable/src/Interactable.tsx +33 -33
  528. package/packages/interactable/src/index.ts +1 -1
  529. package/packages/interactable/src/interface.ts +7 -7
  530. package/packages/ipify/README.md +30 -30
  531. package/packages/ipify/src/index.ts +1 -1
  532. package/packages/ipify/src/ipify.ts +41 -41
  533. package/packages/jsx/README.md +388 -388
  534. package/packages/jsx/src/Component.ts +68 -68
  535. package/packages/jsx/src/createRef.ts +5 -5
  536. package/packages/jsx/src/forwardRef.ts +8 -8
  537. package/packages/jsx/src/index.ts +31 -31
  538. package/packages/jsx/src/jsx-runtime.ts +5 -5
  539. package/packages/jsx/src/manipulation/attachNode.ts +30 -30
  540. package/packages/jsx/src/manipulation/attachNodeBefore.ts +44 -44
  541. package/packages/jsx/src/manipulation/clearNode.ts +14 -14
  542. package/packages/jsx/src/manipulation/detachNode.ts +26 -26
  543. package/packages/jsx/src/manipulation/index.ts +7 -7
  544. package/packages/jsx/src/manipulation/removeNode.ts +18 -18
  545. package/packages/jsx/src/manipulation/replaceNode.ts +42 -42
  546. package/packages/jsx/src/manipulation/swapNodes.ts +53 -53
  547. package/packages/jsx/src/mount/guards.ts +26 -26
  548. package/packages/jsx/src/mount/handleLifecycle.ts +71 -71
  549. package/packages/jsx/src/mount/index.ts +1 -1
  550. package/packages/jsx/src/mount/lifecycle.ts +38 -38
  551. package/packages/jsx/src/mount/lifecycleHelpers.ts +29 -29
  552. package/packages/jsx/src/mount/mount.ts +141 -141
  553. package/packages/jsx/src/mount/namespaces.ts +7 -7
  554. package/packages/jsx/src/mount/props.ts +121 -121
  555. package/packages/jsx/src/nodeUtils.ts +69 -69
  556. package/packages/jsx/src/setText.ts +15 -15
  557. package/packages/jsx/src/test-utils/MountedComponent.ts +50 -50
  558. package/packages/jsx/src/test-utils/README.md +72 -72
  559. package/packages/jsx/src/test-utils/click.ts +7 -7
  560. package/packages/jsx/src/test-utils/enter.ts +4 -4
  561. package/packages/jsx/src/test-utils/index.ts +6 -6
  562. package/packages/jsx/src/test-utils/keydown.ts +27 -27
  563. package/packages/jsx/src/test-utils/keyup.ts +27 -27
  564. package/packages/jsx/src/test-utils/shallow.ts +33 -33
  565. package/packages/jsx/src/test-utils/spec-utils.ts +6 -6
  566. package/packages/jsx/src/textNode.ts +9 -9
  567. package/packages/jsx/src/types.ts +128 -128
  568. package/packages/jsx/src/utils.ts +35 -35
  569. package/packages/jsx/src/virtualDOM.ts +121 -121
  570. package/packages/key-sequence/README.md +44 -44
  571. package/packages/key-sequence/src/KeySequence.ts +56 -56
  572. package/packages/key-sequence/src/arrayEndsWithKeyCombo.ts +22 -22
  573. package/packages/key-sequence/src/index.ts +1 -1
  574. package/packages/key-sequence/src/types.ts +13 -13
  575. package/packages/keyboard/README.md +237 -237
  576. package/packages/keyboard/src/AndroidKeyboard/Keyboard.scss +140 -140
  577. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.1080.scss +2 -2
  578. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.animated.1080.scss +3 -3
  579. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.animated.scss +3 -3
  580. package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.scss +2 -2
  581. package/packages/keyboard/src/AndroidKeyboard/Keyboard.tsx +235 -235
  582. package/packages/keyboard/src/AndroidKeyboard/_animated.scss +7 -7
  583. package/packages/keyboard/src/AndroidKeyboard/_sizes.1080.scss +15 -15
  584. package/packages/keyboard/src/AndroidKeyboard/_sizes.scss +15 -15
  585. package/packages/keyboard/src/AndroidKeyboard/icons/arrow_left.svg +6 -6
  586. package/packages/keyboard/src/AndroidKeyboard/icons/arrow_right.svg +6 -6
  587. package/packages/keyboard/src/AndroidKeyboard/icons/key_backspace.svg +12 -12
  588. package/packages/keyboard/src/AndroidKeyboard/index.ts +1 -1
  589. package/packages/keyboard/src/AndroidKeyboard/makeLayout.ts +19 -19
  590. package/packages/keyboard/src/Backdrop/Backdrop.scss +17 -17
  591. package/packages/keyboard/src/Backdrop/Backdrop.styles.1080.scss +2 -2
  592. package/packages/keyboard/src/Backdrop/Backdrop.styles.scss +2 -2
  593. package/packages/keyboard/src/Backdrop/Backdrop.tsx +31 -31
  594. package/packages/keyboard/src/Backdrop/_sizes.1080.scss +2 -2
  595. package/packages/keyboard/src/Backdrop/_sizes.scss +2 -2
  596. package/packages/keyboard/src/DefaultKeyboard/Keyboard.scss +73 -73
  597. package/packages/keyboard/src/DefaultKeyboard/Keyboard.styles.1080.scss +2 -2
  598. package/packages/keyboard/src/DefaultKeyboard/Keyboard.styles.scss +2 -2
  599. package/packages/keyboard/src/DefaultKeyboard/Keyboard.tsx +155 -155
  600. package/packages/keyboard/src/DefaultKeyboard/_sizes.1080.scss +12 -12
  601. package/packages/keyboard/src/DefaultKeyboard/_sizes.scss +12 -12
  602. package/packages/keyboard/src/DefaultKeyboard/index.ts +1 -1
  603. package/packages/keyboard/src/KeyboardBase.tsx +344 -344
  604. package/packages/keyboard/src/MobiKeyboard/Keyboard.scss +180 -180
  605. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.1080.scss +2 -2
  606. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.animated.1080.scss +3 -3
  607. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.animated.scss +3 -3
  608. package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.scss +2 -2
  609. package/packages/keyboard/src/MobiKeyboard/Keyboard.tsx +278 -278
  610. package/packages/keyboard/src/MobiKeyboard/_animated.scss +7 -7
  611. package/packages/keyboard/src/MobiKeyboard/_sizes.1080.scss +10 -10
  612. package/packages/keyboard/src/MobiKeyboard/_sizes.scss +10 -10
  613. package/packages/keyboard/src/MobiKeyboard/icons/arrow_left.svg +6 -6
  614. package/packages/keyboard/src/MobiKeyboard/icons/arrow_right.svg +6 -6
  615. package/packages/keyboard/src/MobiKeyboard/icons/key_backspace.svg +12 -12
  616. package/packages/keyboard/src/MobiKeyboard/icons/key_space.svg +6 -6
  617. package/packages/keyboard/src/MobiKeyboard/index.ts +1 -1
  618. package/packages/keyboard/src/MobiKeyboard/utils.ts +19 -19
  619. package/packages/keyboard/src/QwertyKeyboardBase/QwertyKeyboardBase.tsx +54 -54
  620. package/packages/keyboard/src/ShiftMode.ts +25 -25
  621. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.scss +168 -168
  622. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.styles.1080.scss +2 -2
  623. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.styles.scss +2 -2
  624. package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.tsx +353 -353
  625. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/_sizes.1080.scss +7 -7
  626. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/_sizes.scss +7 -7
  627. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/index.ts +1 -1
  628. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.scss +81 -81
  629. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.styles.1080.scss +2 -2
  630. package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.styles.scss +2 -2
  631. package/packages/keyboard/src/WhitelabelKeyboard/_sizes.1080.scss +32 -32
  632. package/packages/keyboard/src/WhitelabelKeyboard/_sizes.scss +32 -32
  633. package/packages/keyboard/src/WhitelabelKeyboard/icons/arrow_left.svg +9 -9
  634. package/packages/keyboard/src/WhitelabelKeyboard/icons/arrow_right.svg +9 -9
  635. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_backspace.svg +9 -9
  636. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_language.svg +20 -20
  637. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_shift.svg +9 -9
  638. package/packages/keyboard/src/WhitelabelKeyboard/icons/key_shift_active.svg +9 -9
  639. package/packages/keyboard/src/WhitelabelKeyboard/index.ts +2 -2
  640. package/packages/keyboard/src/WhitelabelKeyboard/layouts/arabic.ts +27 -27
  641. package/packages/keyboard/src/WhitelabelKeyboard/layouts/burmese.ts +27 -27
  642. package/packages/keyboard/src/WhitelabelKeyboard/layouts/dari.ts +28 -28
  643. package/packages/keyboard/src/WhitelabelKeyboard/layouts/hebrew.ts +28 -28
  644. package/packages/keyboard/src/WhitelabelKeyboard/layouts/index.ts +14 -14
  645. package/packages/keyboard/src/WhitelabelKeyboard/layouts/korean.ts +26 -26
  646. package/packages/keyboard/src/WhitelabelKeyboard/layouts/latin.ts +26 -26
  647. package/packages/keyboard/src/WhitelabelKeyboard/layouts/pashto.ts +27 -27
  648. package/packages/keyboard/src/WhitelabelKeyboard/layouts/persian.ts +27 -27
  649. package/packages/keyboard/src/WhitelabelKeyboard/layouts/russian.ts +27 -27
  650. package/packages/keyboard/src/WhitelabelKeyboard/layouts/special.ts +28 -28
  651. package/packages/keyboard/src/WhitelabelKeyboard/layouts/tibetan.ts +26 -26
  652. package/packages/keyboard/src/WhitelabelKeyboard/layouts/turkish.ts +26 -26
  653. package/packages/keyboard/src/WhitelabelKeyboard/layouts/ukrainian.ts +27 -27
  654. package/packages/keyboard/src/WhitelabelKeyboard/layouts/urdu.ts +26 -26
  655. package/packages/keyboard/src/WhitelabelKeyboard/types.ts +28 -28
  656. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.scss +105 -105
  657. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.styles.1080.scss +2 -2
  658. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.styles.scss +2 -2
  659. package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.tsx +161 -161
  660. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/_sizes.1080.scss +7 -7
  661. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/_sizes.scss +7 -7
  662. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/index.ts +1 -1
  663. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.scss +62 -62
  664. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.styles.1080.scss +2 -2
  665. package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.styles.scss +2 -2
  666. package/packages/keyboard/src/WhitelabelNumericKeyboard/_sizes.1080.scss +29 -29
  667. package/packages/keyboard/src/WhitelabelNumericKeyboard/_sizes.scss +29 -29
  668. package/packages/keyboard/src/WhitelabelNumericKeyboard/icons/key_backspace.svg +9 -9
  669. package/packages/keyboard/src/WhitelabelNumericKeyboard/index.ts +2 -2
  670. package/packages/keyboard/src/WhitelabelNumericKeyboard/layout.ts +14 -14
  671. package/packages/keyboard/src/hwKeyboardEventToChar.ts +11 -11
  672. package/packages/keyboard/src/types/index.ts +11 -11
  673. package/packages/keyboard/src/utils/caret.ts +48 -48
  674. package/packages/keyboard/src/utils/generateFocusMatrixFromStringMatrix.ts +12 -12
  675. package/packages/keyboard/src/utils/input.ts +40 -40
  676. package/packages/l10n/README.md +120 -120
  677. package/packages/l10n/interface.ts +1 -1
  678. package/packages/l10n/locales/cs.ts +4 -4
  679. package/packages/l10n/locales/en-001.ts +4 -4
  680. package/packages/l10n/locales/en-us.ts +4 -4
  681. package/packages/l10n/src/Locale.tsx +44 -44
  682. package/packages/l10n/src/date/common.ts +165 -165
  683. package/packages/l10n/src/date/cs.ts +89 -89
  684. package/packages/l10n/src/date/de.ts +97 -97
  685. package/packages/l10n/src/date/en-001.ts +76 -76
  686. package/packages/l10n/src/date/en-common.ts +55 -55
  687. package/packages/l10n/src/date/en-us.ts +83 -83
  688. package/packages/l10n/src/date/es.ts +71 -71
  689. package/packages/l10n/src/date/fr.ts +94 -94
  690. package/packages/l10n/src/date/he.ts +101 -101
  691. package/packages/l10n/src/date/iso.ts +63 -63
  692. package/packages/l10n/src/date/types.ts +56 -56
  693. package/packages/l10n/src/index.ts +2 -2
  694. package/packages/l10n/src/l10n.ts +112 -112
  695. package/packages/l10n/src/types.ts +22 -22
  696. package/packages/list/AttachDetachItem/README.md +128 -128
  697. package/packages/list/AttachDetachItem/index.ts +3 -3
  698. package/packages/list/BasicList/README.md +71 -71
  699. package/packages/list/BasicList/index.ts +1 -1
  700. package/packages/list/CenteredList/README.md +42 -42
  701. package/packages/list/CenteredList/index.ts +1 -1
  702. package/packages/list/EdgeOffsetList/README.md +58 -58
  703. package/packages/list/EdgeOffsetList/index.ts +1 -1
  704. package/packages/list/FirstOnlyList/README.md +39 -39
  705. package/packages/list/FirstOnlyList/index.ts +1 -1
  706. package/packages/list/FirstOnlyVariedList/README.md +105 -105
  707. package/packages/list/FirstOnlyVariedList/index.ts +1 -1
  708. package/packages/list/FixedToEndList/README.md +42 -42
  709. package/packages/list/FixedToEndList/index.ts +1 -1
  710. package/packages/list/Item/index.ts +1 -1
  711. package/packages/list/README.md +193 -193
  712. package/packages/list/src/AttachDetachItem/AttachDetachItem.tsx +96 -96
  713. package/packages/list/src/AttachDetachItem/prepareAttachDetachItemData.ts +13 -13
  714. package/packages/list/src/Base/Base.tsx +392 -392
  715. package/packages/list/src/Base/MouseNavigation/MouseNavigation.tsx +82 -82
  716. package/packages/list/src/Base/MouseNavigation/MouseNavigationFallback.ts +4 -4
  717. package/packages/list/src/Base/MouseNavigation/index.tizen.tv.ts +1 -1
  718. package/packages/list/src/Base/MouseNavigation/index.ts +1 -1
  719. package/packages/list/src/Base/MouseNavigation/index.webos.tv.ts +1 -1
  720. package/packages/list/src/Base/MouseNavigation/index.webtv.ts +1 -1
  721. package/packages/list/src/Base/index.ts +1 -1
  722. package/packages/list/src/Base/interface.ts +39 -39
  723. package/packages/list/src/BasicList/BasicList.tsx +178 -178
  724. package/packages/list/src/BasicList/config.ts +13 -13
  725. package/packages/list/src/CenteredList/CenteredList.tsx +116 -116
  726. package/packages/list/src/CenteredList/config.ts +13 -13
  727. package/packages/list/src/CenteredList/controller.ts +46 -46
  728. package/packages/list/src/CenteredList/interface.ts +10 -10
  729. package/packages/list/src/EdgeOffsetList/EdgeOffsetList.tsx +173 -173
  730. package/packages/list/src/EdgeOffsetList/config.ts +13 -13
  731. package/packages/list/src/FastFocusingOptimizer/FastFocusingOptimizer.ts +54 -54
  732. package/packages/list/src/FirstOnlyList/FirstOnlyList.tsx +122 -122
  733. package/packages/list/src/FirstOnlyList/config.ts +13 -13
  734. package/packages/list/src/FirstOnlyList/controller.ts +11 -11
  735. package/packages/list/src/FirstOnlyVariedList/FirstOnlyVariedList.tsx +132 -132
  736. package/packages/list/src/FirstOnlyVariedList/config.ts +13 -13
  737. package/packages/list/src/FixedToEndList/FixedToEndList.tsx +125 -125
  738. package/packages/list/src/FixedToEndList/config.ts +13 -13
  739. package/packages/list/src/FixedToEndList/controller.ts +44 -44
  740. package/packages/list/src/UnifiedListController/UnifiedListController.ts +258 -258
  741. package/packages/list/src/UnifiedListController/UnifiedListControllerBase.ts +241 -241
  742. package/packages/list/src/UnifiedListController/UnifiedVariedListController.ts +241 -241
  743. package/packages/list/src/UnifiedListController/interface.ts +81 -81
  744. package/packages/list/src/__test__/utils.spec.ts +59 -59
  745. package/packages/list/src/animate.animated.ts +1 -1
  746. package/packages/list/src/animate.ts +1 -1
  747. package/packages/list/src/index.ts +1 -1
  748. package/packages/list/src/interface.ts +48 -48
  749. package/packages/list/src/mocks/index.tsx +55 -55
  750. package/packages/list/src/types.ts +132 -132
  751. package/packages/list/src/utils.ts +142 -142
  752. package/packages/list/utils/index.ts +1 -1
  753. package/packages/logger/README.md +117 -117
  754. package/packages/logger/src/LoggerManager.ts +60 -60
  755. package/packages/logger/src/LoggerService.ts +43 -43
  756. package/packages/logger/src/__mocks__/LoggerBase.ts +13 -13
  757. package/packages/logger/src/index.ts +3 -3
  758. package/packages/logger/src/loggers/ConsoleLogger/ConsoleLogger.ts +51 -51
  759. package/packages/logger/src/loggers/ConsoleLogger/README.md +39 -39
  760. package/packages/logger/src/loggers/ConsoleLogger/index.ts +1 -1
  761. package/packages/logger/src/loggers/LoggerBase/LoggerBase.ts +67 -67
  762. package/packages/logger/src/loggers/LoggerBase/README.md +69 -69
  763. package/packages/logger/src/loggers/LoggerBase/index.ts +1 -1
  764. package/packages/logger/src/loggers/SentryLogger/README.md +98 -98
  765. package/packages/logger/src/loggers/SentryLogger/Sentry.ts +2 -2
  766. package/packages/logger/src/loggers/SentryLogger/SentryLogger.ts +179 -179
  767. package/packages/logger/src/loggers/SentryLogger/index.ts +2 -2
  768. package/packages/logger/src/loggers/SentryLogger/mock.ts +6 -6
  769. package/packages/logger/src/loggers/index.ts +2 -2
  770. package/packages/logger/src/types.ts +46 -46
  771. package/packages/logger/src/utils/deviceInfo.ts +25 -25
  772. package/packages/logger/src/utils/index.ts +1 -1
  773. package/packages/lottie-animations/README.md +217 -217
  774. package/packages/lottie-animations/src/LottieAnimation.tsx +125 -125
  775. package/packages/lottie-animations/src/index.ts +7 -7
  776. package/packages/menu/README.md +90 -90
  777. package/packages/menu/WhitelabelMenu/index.ts +1 -1
  778. package/packages/menu/WhitelabelMenu/interface.ts +2 -2
  779. package/packages/menu/WhitelabelMenu/styles.ts +2 -2
  780. package/packages/menu/interface.ts +3 -3
  781. package/packages/menu/src/MenuAndContentContainer/MenuAndContentContainer.tsx +211 -211
  782. package/packages/menu/src/MenuAndContentContainer/index.ts +1 -1
  783. package/packages/menu/src/MenuAndContentContainer/interface.ts +164 -164
  784. package/packages/menu/src/MenuAndContentContainer/service.ts +5 -5
  785. package/packages/menu/src/WhitelabelMenu/SideMenu.scss +41 -41
  786. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.1080.scss +2 -2
  787. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.animated.1080.scss +3 -3
  788. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.animated.scss +3 -3
  789. package/packages/menu/src/WhitelabelMenu/SideMenu.styles.scss +2 -2
  790. package/packages/menu/src/WhitelabelMenu/SideMenu.tsx +248 -248
  791. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.scss +56 -56
  792. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.1080.scss +2 -2
  793. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.animated.1080.scss +3 -3
  794. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.animated.scss +3 -3
  795. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.scss +2 -2
  796. package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.tsx +78 -78
  797. package/packages/menu/src/WhitelabelMenu/SideMenuItem/_animated.scss +12 -12
  798. package/packages/menu/src/WhitelabelMenu/SideMenuItem/_sizes.1080.scss +17 -17
  799. package/packages/menu/src/WhitelabelMenu/SideMenuItem/_sizes.scss +17 -17
  800. package/packages/menu/src/WhitelabelMenu/SideMenuItem/index.ts +1 -1
  801. package/packages/menu/src/WhitelabelMenu/SideMenuItem/interface.ts +49 -49
  802. package/packages/menu/src/WhitelabelMenu/SideMenuItem/rtl.scss +12 -12
  803. package/packages/menu/src/WhitelabelMenu/SideMenuItem/sizes.1080.ts +2 -2
  804. package/packages/menu/src/WhitelabelMenu/SideMenuItem/sizes.ts +2 -2
  805. package/packages/menu/src/WhitelabelMenu/SideMenuItem/styles.ts +1 -1
  806. package/packages/menu/src/WhitelabelMenu/VisualController.animated.ts +48 -48
  807. package/packages/menu/src/WhitelabelMenu/VisualController.ts +20 -20
  808. package/packages/menu/src/WhitelabelMenu/VisualControllerBase.ts +71 -71
  809. package/packages/menu/src/WhitelabelMenu/_animated.scss +39 -39
  810. package/packages/menu/src/WhitelabelMenu/_sizes.1080.scss +14 -14
  811. package/packages/menu/src/WhitelabelMenu/_sizes.scss +14 -14
  812. package/packages/menu/src/WhitelabelMenu/constants.animated.ts +1 -1
  813. package/packages/menu/src/WhitelabelMenu/constants.ts +1 -1
  814. package/packages/menu/src/WhitelabelMenu/index.ts +1 -1
  815. package/packages/menu/src/WhitelabelMenu/interface.ts +14 -14
  816. package/packages/menu/src/WhitelabelMenu/rtl.scss +22 -22
  817. package/packages/menu/src/WhitelabelMenu/sizes.1080.ts +1 -1
  818. package/packages/menu/src/WhitelabelMenu/sizes.ts +1 -1
  819. package/packages/menu/src/WhitelabelMenu/styles.ts +1 -1
  820. package/packages/menu/src/WhitelabelMenu/utils.ts +34 -34
  821. package/packages/menu/src/index.ts +2 -2
  822. package/packages/modal-service/README.md +50 -50
  823. package/packages/modal-service/src/IModal.ts +3 -3
  824. package/packages/modal-service/src/ModalService.scss +7 -7
  825. package/packages/modal-service/src/ModalService.styles.1080.scss +2 -2
  826. package/packages/modal-service/src/ModalService.styles.scss +2 -2
  827. package/packages/modal-service/src/ModalService.tsx +102 -102
  828. package/packages/modal-service/src/_sizes.1080.scss +2 -2
  829. package/packages/modal-service/src/_sizes.scss +2 -2
  830. package/packages/modal-service/src/index.ts +2 -2
  831. package/packages/mouse-navigation/README.md +105 -105
  832. package/packages/mouse-navigation/src/ArrowNavigation/Arrow.tsx +58 -58
  833. package/packages/mouse-navigation/src/ArrowNavigation/ArrowNavigation.tsx +95 -95
  834. package/packages/mouse-navigation/src/ArrowNavigation/__test__/Arrow.spec.tsx +35 -35
  835. package/packages/mouse-navigation/src/ArrowNavigation/__test__/ArrowNavigation.spec.tsx +45 -45
  836. package/packages/mouse-navigation/src/ArrowNavigation/index.tsx +1 -1
  837. package/packages/mouse-navigation/src/MouseElementWrapper.tsx +70 -70
  838. package/packages/mouse-navigation/src/MouseNavigation.tsx +157 -157
  839. package/packages/mouse-navigation/src/MouseNavigationInterface.ts +8 -8
  840. package/packages/mouse-navigation/src/index.ts +3 -3
  841. package/packages/numeric-zapper/README.md +153 -153
  842. package/packages/numeric-zapper/src/NumericZapper.scss +20 -20
  843. package/packages/numeric-zapper/src/NumericZapper.styles.1080.scss +2 -2
  844. package/packages/numeric-zapper/src/NumericZapper.styles.scss +2 -2
  845. package/packages/numeric-zapper/src/NumericZapper.tsx +257 -257
  846. package/packages/numeric-zapper/src/ZapperAllower.ts +15 -15
  847. package/packages/numeric-zapper/src/ZapperService.tsx +8 -8
  848. package/packages/numeric-zapper/src/_sizes.1080.scss +7 -7
  849. package/packages/numeric-zapper/src/_sizes.scss +7 -7
  850. package/packages/numeric-zapper/src/index.ts +4 -4
  851. package/packages/numeric-zapper/src/interface.ts +1 -1
  852. package/packages/numeric-zapper/src/styles.ts +1 -1
  853. package/packages/perf-utils/README.md +7 -7
  854. package/packages/perf-utils/src/array/filter.ts +1 -1
  855. package/packages/perf-utils/src/array/find.ts +1 -1
  856. package/packages/perf-utils/src/array/findIndex.ts +1 -1
  857. package/packages/perf-utils/src/array/forEach.ts +1 -1
  858. package/packages/perf-utils/src/array/includes.ts +1 -1
  859. package/packages/perf-utils/src/array/includesNaN.ts +1 -1
  860. package/packages/perf-utils/src/array/index.ts +1 -1
  861. package/packages/perf-utils/src/array/map.ts +1 -1
  862. package/packages/picker/README.md +70 -70
  863. package/packages/picker/src/DatePicker.tsx +55 -55
  864. package/packages/picker/src/ModalPicker/Checkbox.tsx +38 -38
  865. package/packages/picker/src/ModalPicker/PickerItem.tsx +86 -86
  866. package/packages/picker/src/ModalPicker/PickerModal.tsx +98 -98
  867. package/packages/picker/src/ModalPicker/index.ts +1 -1
  868. package/packages/picker/src/ModalPicker/modalPicker.tsx +48 -48
  869. package/packages/picker/src/Picker.tsx +127 -127
  870. package/packages/picker/src/index.ts +3 -3
  871. package/packages/picker/src/types.ts +25 -25
  872. package/packages/pin-input/README.md +55 -55
  873. package/packages/pin-input/src/PinInput.scss +5 -5
  874. package/packages/pin-input/src/PinInput.tsx +169 -169
  875. package/packages/pin-input/src/index.ts +1 -1
  876. package/packages/player-ui/README.md +207 -207
  877. package/packages/player-ui/src/BackwardButton.tsx +41 -41
  878. package/packages/player-ui/src/CurrentTime.tsx +56 -56
  879. package/packages/player-ui/src/Duration.tsx +60 -60
  880. package/packages/player-ui/src/ForwardButton.tsx +41 -41
  881. package/packages/player-ui/src/PauseButton.tsx +65 -65
  882. package/packages/player-ui/src/PlayButton.tsx +57 -57
  883. package/packages/player-ui/src/PlayPauseButton.tsx +63 -63
  884. package/packages/player-ui/src/PlayerInteractable.tsx +67 -67
  885. package/packages/player-ui/src/PlayerTime.tsx +57 -57
  886. package/packages/player-ui/src/PlayerUI.tsx +267 -267
  887. package/packages/player-ui/src/RemainingTime.tsx +74 -74
  888. package/packages/player-ui/src/Seekbar.tsx +274 -274
  889. package/packages/player-ui/src/Seeking.ts +163 -163
  890. package/packages/player-ui/src/StopButton.tsx +35 -35
  891. package/packages/player-ui/src/Subtitles.tsx +151 -151
  892. package/packages/player-ui/src/index.ts +15 -15
  893. package/packages/player-ui/src/mocks.ts +65 -65
  894. package/packages/player-ui/src/timeUtils.ts +142 -142
  895. package/packages/player-ui/src/types.ts +48 -48
  896. package/packages/progress-bar/README.md +31 -31
  897. package/packages/progress-bar/src/ProgressBar.tsx +41 -41
  898. package/packages/progress-bar/src/index.ts +1 -1
  899. package/packages/progress-bar/src/interface.ts +14 -14
  900. package/packages/qr-code/README.md +79 -79
  901. package/packages/qr-code/src/QRCode.tsx +39 -39
  902. package/packages/qr-code/src/index.ts +2 -2
  903. package/packages/qr-code/src/qrGenerator/__external__/constants.ts +23 -23
  904. package/packages/qr-code/src/qrGenerator/__external__/qrcode.d.ts +31 -31
  905. package/packages/qr-code/src/qrGenerator/__external__/qrcode.js +618 -618
  906. package/packages/qr-code/src/qrGenerator/generateQr.ts +7 -7
  907. package/packages/qr-code/src/qrGenerator/index.ts +3 -3
  908. package/packages/router/README.md +163 -163
  909. package/packages/router/src/Route.tsx +166 -166
  910. package/packages/router/src/Router.tsx +220 -220
  911. package/packages/router/src/focusActiveRoute.ts +5 -5
  912. package/packages/router/src/history.ts +31 -31
  913. package/packages/router/src/index.ts +6 -6
  914. package/packages/router/src/types.ts +13 -13
  915. package/packages/router/src/utils.ts +37 -35
  916. package/packages/runtime-config/README.md +37 -37
  917. package/packages/runtime-config/src/Config.ts +44 -44
  918. package/packages/runtime-config/src/index.ts +1 -1
  919. package/packages/sass-utils/README.md +197 -197
  920. package/packages/sass-utils/src/box-shadow.scss +5 -5
  921. package/packages/sass-utils/src/ellipsis.scss +15 -15
  922. package/packages/sass-utils/src/linear-gradient.scss +43 -43
  923. package/packages/sass-utils/src/prefix-property.scss +7 -7
  924. package/packages/sass-utils/src/prefix-value.scss +6 -6
  925. package/packages/sass-utils/src/prefix.scss +6 -6
  926. package/packages/sass-utils/src/scale.1080.scss +3 -3
  927. package/packages/sass-utils/src/scale.720.scss +5 -5
  928. package/packages/sass-utils/src/transform.scss +5 -5
  929. package/packages/sass-utils/src/transition.scss +6 -6
  930. package/packages/scheduler/README.md +55 -55
  931. package/packages/scheduler/src/Scheduler.ts +43 -43
  932. package/packages/scheduler/src/Task.ts +72 -72
  933. package/packages/scheduler/src/index.ts +4 -4
  934. package/packages/scheduler/src/timeProvider.ts +3 -3
  935. package/packages/scroll-text/README.md +77 -77
  936. package/packages/scroll-text/src/Base.tsx +146 -146
  937. package/packages/scroll-text/src/ScrollText.animated.tsx +80 -80
  938. package/packages/scroll-text/src/ScrollText.tsx +53 -53
  939. package/packages/scroll-text/src/ScrollTextBaseClass.tsx +86 -86
  940. package/packages/scroll-text/src/index.ts +1 -1
  941. package/packages/scroller/README.md +77 -77
  942. package/packages/scroller/src/Scroller.tsx +51 -51
  943. package/packages/scroller/src/index.ts +1 -1
  944. package/packages/splash/AnimatedSplash.ts +1 -1
  945. package/packages/splash/AnimatedSplashAnimated.ts +1 -1
  946. package/packages/splash/AnimatedSplashBasic.ts +1 -1
  947. package/packages/splash/AutomaticSplashAnimated.ts +1 -1
  948. package/packages/splash/AutomaticSplashBasic.ts +1 -1
  949. package/packages/splash/README.md +93 -93
  950. package/packages/splash/StaticSplash.ts +1 -1
  951. package/packages/splash/StaticSplashAnimated.ts +1 -1
  952. package/packages/splash/StaticSplashBasic.ts +1 -1
  953. package/packages/splash/src/AnimatedSplash.animated.tsx +78 -78
  954. package/packages/splash/src/AnimatedSplash.basic.tsx +37 -37
  955. package/packages/splash/src/AutomaticSplash.animated.tsx +20 -20
  956. package/packages/splash/src/AutomaticSplash.basic.tsx +20 -20
  957. package/packages/splash/src/Splash.scss +8 -8
  958. package/packages/splash/src/StaticSplash.animated.tsx +48 -48
  959. package/packages/splash/src/StaticSplash.basic.tsx +26 -26
  960. package/packages/splash/src/index.animated.ts +1 -1
  961. package/packages/splash/src/index.ts +1 -1
  962. package/packages/splash/src/styles.ts +1 -1
  963. package/packages/splash/src/types.ts +20 -20
  964. package/packages/storage/README.md +61 -61
  965. package/packages/storage/src/CookieStorage/CookieStorage.ts +57 -57
  966. package/packages/storage/src/CookieStorage/index.ts +1 -1
  967. package/packages/storage/src/LocalStorage/LocalStorage.ts +58 -58
  968. package/packages/storage/src/LocalStorage/index.ts +1 -1
  969. package/packages/storage/src/index.ts +2 -2
  970. package/packages/storage/src/shared.ts +41 -41
  971. package/packages/storage/src/types.ts +33 -33
  972. package/packages/throbber/README.md +53 -53
  973. package/packages/throbber/src/Throbber.scss +52 -52
  974. package/packages/throbber/src/Throbber.tsx +19 -19
  975. package/packages/throbber/src/ThrobberService.tsx +55 -55
  976. package/packages/throbber/src/controlsHandling.ts +14 -14
  977. package/packages/throbber/src/index.ts +2 -2
  978. package/packages/time/README.md +116 -116
  979. package/packages/time/src/Time.ts +257 -257
  980. package/packages/time/src/adapters/24iMediaTimeApi.ts +47 -47
  981. package/packages/time/src/adapters/worldTimeApi.ts +74 -74
  982. package/packages/time/src/constants.ts +14 -14
  983. package/packages/time/src/index.ts +1 -1
  984. package/packages/time/src/services/24iMediaTimeApi/24iMediaTimeApi.ts +43 -43
  985. package/packages/time/src/services/24iMediaTimeApi/index.ts +6 -6
  986. package/packages/time/src/services/worldTimeApi/index.ts +7 -7
  987. package/packages/time/src/services/worldTimeApi/types.ts +75 -75
  988. package/packages/time/src/services/worldTimeApi/worldTimeApi.ts +77 -77
  989. package/packages/time/src/types.ts +39 -39
  990. package/packages/time/src/utils.ts +79 -79
  991. package/packages/toast/README.md +116 -116
  992. package/packages/toast/src/Toast/IVisualController.ts +7 -7
  993. package/packages/toast/src/Toast/Toast.scss +22 -22
  994. package/packages/toast/src/Toast/Toast.styles.1080.scss +2 -2
  995. package/packages/toast/src/Toast/Toast.styles.scss +2 -2
  996. package/packages/toast/src/Toast/Toast.tsx +83 -83
  997. package/packages/toast/src/Toast/VisualController.animated.ts +20 -20
  998. package/packages/toast/src/Toast/VisualController.ts +9 -9
  999. package/packages/toast/src/Toast/_sizes.1080.scss +8 -8
  1000. package/packages/toast/src/Toast/_sizes.scss +8 -8
  1001. package/packages/toast/src/Toast/index.ts +2 -2
  1002. package/packages/toast/src/Toast/styles.ts +1 -1
  1003. package/packages/toast/src/ToastService.scss +8 -8
  1004. package/packages/toast/src/ToastService.styles.1080.scss +2 -2
  1005. package/packages/toast/src/ToastService.styles.scss +2 -2
  1006. package/packages/toast/src/ToastService.tsx +59 -59
  1007. package/packages/toast/src/_sizes.1080.scss +2 -2
  1008. package/packages/toast/src/_sizes.scss +2 -2
  1009. package/packages/toast/src/index.ts +4 -4
  1010. package/packages/toast/src/types.ts +4 -4
  1011. package/packages/types-bigscreen-jsx/README.md +12 -12
  1012. package/packages/types-bigscreen-jsx/global.d.ts +0 -0
  1013. package/packages/types-bigscreen-jsx/index.d.ts +32 -32
  1014. package/packages/types-bigscreen-jsx/src/copyTypes.js +14 -14
  1015. package/packages/utils/README.md +363 -363
  1016. package/packages/utils/src/addClass.ts +9 -9
  1017. package/packages/utils/src/counter.ts +49 -49
  1018. package/packages/utils/src/debounce.ts +54 -54
  1019. package/packages/utils/src/displayToggler.scss +3 -3
  1020. package/packages/utils/src/displayToggler.ts +38 -38
  1021. package/packages/utils/src/elementUtils.ts +105 -105
  1022. package/packages/utils/src/forceReflow.ts +14 -14
  1023. package/packages/utils/src/generateUuid.ts +19 -19
  1024. package/packages/utils/src/index.ts +43 -43
  1025. package/packages/utils/src/keyPress/index.ts +6 -6
  1026. package/packages/utils/src/keyPress/keyPressSimulator.ts +74 -74
  1027. package/packages/utils/src/keyPress/simulateKeyPress.ts +25 -25
  1028. package/packages/utils/src/memoryInfo.ts +21 -21
  1029. package/packages/utils/src/nTimes.ts +9 -9
  1030. package/packages/utils/src/noop.ts +1 -1
  1031. package/packages/utils/src/offsetPosition.ts +56 -56
  1032. package/packages/utils/src/removeClass.ts +9 -9
  1033. package/packages/utils/src/scaledImage.ts +24 -24
  1034. package/packages/utils/src/sizes.1080.ts +1 -1
  1035. package/packages/utils/src/sizes.ts +1 -1
  1036. package/packages/utils/src/stopEvent.ts +10 -10
  1037. package/packages/utils/src/textUtils.ts +57 -57
  1038. package/packages/utils/src/timeConstants.ts +11 -11
  1039. package/packages/utils/src/timers/createInterval.ts +19 -19
  1040. package/packages/utils/src/timers/createTimeout.ts +22 -22
  1041. package/packages/utils/src/timers/index.ts +4 -4
  1042. package/packages/utils/src/timers/runAsync.ts +3 -3
  1043. package/packages/utils/src/timers/types.ts +9 -9
  1044. package/packages/utils/src/wait.ts +3 -3
  1045. package/packages/utils/src/xhr/__mocks__/xhr.ts +29 -29
  1046. package/packages/utils/src/xhr/index.ts +11 -11
  1047. package/packages/utils/src/xhr/xhrSend.ts +141 -141
  1048. package/packages/utils/src/xhr/xhrSendRetry.ts +79 -79
  1049. package/packages/volume-control/README.md +79 -79
  1050. package/packages/volume-control/src/IVolumeControlUI.ts +26 -26
  1051. package/packages/volume-control/src/VolumeControlService.tsx +110 -110
  1052. package/packages/volume-control/src/VolumeControlUI/VisualController.animated.ts +28 -28
  1053. package/packages/volume-control/src/VolumeControlUI/VisualController.ts +3 -3
  1054. package/packages/volume-control/src/VolumeControlUI/VisualControllerBase.ts +26 -26
  1055. package/packages/volume-control/src/VolumeControlUI/VolumeControl.scss +18 -18
  1056. package/packages/volume-control/src/VolumeControlUI/VolumeControl.styles.animated.scss +2 -2
  1057. package/packages/volume-control/src/VolumeControlUI/VolumeControl.styles.scss +1 -1
  1058. package/packages/volume-control/src/VolumeControlUI/VolumeControlUI.tsx +80 -80
  1059. package/packages/volume-control/src/VolumeControlUI/_animated.scss +8 -8
  1060. package/packages/volume-control/src/VolumeControlUI/index.ts +1 -1
  1061. package/packages/volume-control/src/__mocks__/VolumeControlUIMock.tsx +22 -22
  1062. package/packages/volume-control/src/index.ts +2 -2
  1063. package/packages/zapping/README.md +87 -87
  1064. package/packages/zapping/src/ChannelZapping.ts +143 -143
  1065. package/packages/zapping/src/Zapping.tsx +115 -115
  1066. package/packages/zapping/src/index.ts +1 -1
  1067. package/packages/zapping/src/interface.ts +1 -1
  1068. package/utils/create-export-maps/index.ts +3 -3
  1069. package/utils/create-export-maps/src/__tests__/createExportMaps.spec.ts +50 -50
  1070. package/utils/create-export-maps/src/createExportMaps.ts +61 -61
  1071. package/utils/create-package/README.md +39 -39
  1072. package/utils/create-package/src/createPackage.ts +72 -72
  1073. package/utils/create-package/src/index.ts +3 -3
  1074. package/utils/create-package/src/questionnaire/questions.ts +19 -19
  1075. package/utils/create-package/src/settings/Settings.ts +5 -5
  1076. package/utils/create-package/src/types.ts +4 -4
  1077. package/utils/create-package/templates/typescript/README.md +8 -8
  1078. package/utils/create-package/templates/typescript/exports.json +6 -6
  1079. package/utils/run-scripts/index.ts +3 -3
  1080. package/utils/run-scripts/src/__tests__/runScripts.spec.ts +45 -45
  1081. package/utils/run-scripts/src/runScripts.ts +20 -20
@@ -1,107 +1,107 @@
1
- ---
2
- id: README
3
- title: Icon
4
- hide_title: true
5
- sidebar_label: Icon
6
- ---
7
-
8
- # Icon
9
- Icon component provides a typesafe way for displaying icons defined in a spritemap. In SmartApps BIGscreen
10
- Template based projects, icons are handled automatically during build process. We currently support
11
- `svg` and `png` formats. All your icons are stored in `project_root/icons` directory and the build engine
12
- will process icons recursively from any sub-directory structure you will prepare. Icons are then
13
- converted into a spritemap and build engine will produce two main files:
14
-
15
- - `project_root/platformAssets/icons.json` - JSON object contains all icon names as object keys used for types
16
- - `project_root/platformAssets/runtime/icons.css` - CSS file with all generated icon styles (for you to import)
17
-
18
- Additional files:
19
- - `project_root/platformAssets/svg_icons.json` - JSON object containing only svg icon names (exists only if svg images are present)
20
- - `project_root/platformAssets/png_icons.json` - JSON object containing only png icon names with more detailed config for each icon
21
- generated from spritesmith plugin (exists only if png images are present)
22
-
23
- Icon names are generated in the following way:
24
- - file `featured scene.svg` will have icon name `featured-scene` and css class `icon-featured-scene`
25
- - file `home_scene.png` will have icon name `home_scene` and css class `icon-home_scene`
26
-
27
- ## Props
28
- - `icon` - optional, icon name (`featured-scene` or `home_scene`)
29
- - `domRef` - optional, allows you to manage icons DOM
30
-
31
- ## Usage
32
- In your project you should have a file similar to following
33
- ```tsx
34
- // src/components/Icon/index.tsx
35
- import { Icon } from '@24i/bigscreen-sdk/icon';
36
- import * as Icons from '../../platformAssets/icons.json';
37
-
38
- class TypedIcon extends Icon<typeof Icons> {}
39
-
40
- export { TypedIcon as Icon };
41
- ```
42
-
43
- Then you can do
44
- ```tsx
45
- import { Icon } from '../components/Icon';
46
-
47
- class MyComponent {
48
- ...
49
- render () {
50
- return (<Icon icon="my-symbol" />);
51
- }
52
- }
53
- ```
54
-
55
- Which will render
56
- ```html
57
- <div class="icon icon-my-symbol"></div>
58
- ```
59
-
60
- Component also has methods:
61
- - `setIcon` - change the current icon, can be either for different icon, or for focused state
62
- - `clearIcon` - clear the current icon, so the component will stay blank
63
-
64
- ## "Coloring" svg icons
65
- For every SVG icon file name you put into the `maskList` array of rnv configuration (`svgIconsMaskList` in renative.json)
66
- a `mask-<icon-name>` variant is also generated in spritemap. This one uses css property `-webkit-mask` instead of `background`.
67
- This renders the icon in single color, but allows you to change it via `background-color` css property.
68
-
69
- You may want to use global style similar to this one when using svg icons:
70
- ```scss
71
- .icon {
72
- background-repeat: no-repeat;
73
- background-position: center;
74
- background-size: contain;
75
- -webkit-mask-size: contain;
76
- mask-size: contain;
77
- -webkit-mask-repeat: no-repeat;
78
- mask-repeat: no-repeat;
79
- -webkit-mask-position: center;
80
- mask-position: center;
81
- }
82
- ```
83
-
84
- ## Custom icon prefix
85
- When you have both icon types and they have same names, you can specify custom
86
- prefix for both png and svg icons in renative.json file in your project.
87
- - property `svgIconPrefix` for svg files, when prefix is `"svg-"`:
88
- - file `featured scene.svg` will have icon name `svg-featured-scene` (`mask-svg-featured-scene` for mask)
89
- and css class `icon-svg-featured-scene` (`icon-mask-svg-featured-scene`)
90
- - property `pngIconPrefix` for png files, when prefix is `"png-"`:
91
- - file `home_scene.png` will have icon name `png-home_scene` and css class `icon-png-home_scene`.
92
-
93
- Prefix `icon-` in class names can't be changed.
94
-
95
- ## Generating icon files for jest tests
96
- If you are using icon types in your tests, you will probably also need icon json files. You can use utility
97
- `generateIcons` from build engine as standalone functionality without need to run the whole build procedure.
98
-
99
- In those cases, put this code snippet into `jest-global-setup.js` file in your project.
100
-
101
- ```js
102
- const { generateIcons } = require('./node_modules/@24i/bigscreen-sdk/rnv-build-engine/dist/src/scripts/utils/generateIcons');
103
-
104
- module.exports = async () => {
105
- await generateIcons();
106
- };
107
- ```
1
+ ---
2
+ id: README
3
+ title: Icon
4
+ hide_title: true
5
+ sidebar_label: Icon
6
+ ---
7
+
8
+ # Icon
9
+ Icon component provides a typesafe way for displaying icons defined in a spritemap. In SmartApps BIGscreen
10
+ Template based projects, icons are handled automatically during build process. We currently support
11
+ `svg` and `png` formats. All your icons are stored in `project_root/icons` directory and the build engine
12
+ will process icons recursively from any sub-directory structure you will prepare. Icons are then
13
+ converted into a spritemap and build engine will produce two main files:
14
+
15
+ - `project_root/platformAssets/icons.json` - JSON object contains all icon names as object keys used for types
16
+ - `project_root/platformAssets/runtime/icons.css` - CSS file with all generated icon styles (for you to import)
17
+
18
+ Additional files:
19
+ - `project_root/platformAssets/svg_icons.json` - JSON object containing only svg icon names (exists only if svg images are present)
20
+ - `project_root/platformAssets/png_icons.json` - JSON object containing only png icon names with more detailed config for each icon
21
+ generated from spritesmith plugin (exists only if png images are present)
22
+
23
+ Icon names are generated in the following way:
24
+ - file `featured scene.svg` will have icon name `featured-scene` and css class `icon-featured-scene`
25
+ - file `home_scene.png` will have icon name `home_scene` and css class `icon-home_scene`
26
+
27
+ ## Props
28
+ - `icon` - optional, icon name (`featured-scene` or `home_scene`)
29
+ - `domRef` - optional, allows you to manage icons DOM
30
+
31
+ ## Usage
32
+ In your project you should have a file similar to following
33
+ ```tsx
34
+ // src/components/Icon/index.tsx
35
+ import { Icon } from '@24i/bigscreen-sdk/icon';
36
+ import * as Icons from '../../platformAssets/icons.json';
37
+
38
+ class TypedIcon extends Icon<typeof Icons> {}
39
+
40
+ export { TypedIcon as Icon };
41
+ ```
42
+
43
+ Then you can do
44
+ ```tsx
45
+ import { Icon } from '../components/Icon';
46
+
47
+ class MyComponent {
48
+ ...
49
+ render () {
50
+ return (<Icon icon="my-symbol" />);
51
+ }
52
+ }
53
+ ```
54
+
55
+ Which will render
56
+ ```html
57
+ <div class="icon icon-my-symbol"></div>
58
+ ```
59
+
60
+ Component also has methods:
61
+ - `setIcon` - change the current icon, can be either for different icon, or for focused state
62
+ - `clearIcon` - clear the current icon, so the component will stay blank
63
+
64
+ ## "Coloring" svg icons
65
+ For every SVG icon file name you put into the `maskList` array of rnv configuration (`svgIconsMaskList` in renative.json)
66
+ a `mask-<icon-name>` variant is also generated in spritemap. This one uses css property `-webkit-mask` instead of `background`.
67
+ This renders the icon in single color, but allows you to change it via `background-color` css property.
68
+
69
+ You may want to use global style similar to this one when using svg icons:
70
+ ```scss
71
+ .icon {
72
+ background-repeat: no-repeat;
73
+ background-position: center;
74
+ background-size: contain;
75
+ -webkit-mask-size: contain;
76
+ mask-size: contain;
77
+ -webkit-mask-repeat: no-repeat;
78
+ mask-repeat: no-repeat;
79
+ -webkit-mask-position: center;
80
+ mask-position: center;
81
+ }
82
+ ```
83
+
84
+ ## Custom icon prefix
85
+ When you have both icon types and they have same names, you can specify custom
86
+ prefix for both png and svg icons in renative.json file in your project.
87
+ - property `svgIconPrefix` for svg files, when prefix is `"svg-"`:
88
+ - file `featured scene.svg` will have icon name `svg-featured-scene` (`mask-svg-featured-scene` for mask)
89
+ and css class `icon-svg-featured-scene` (`icon-mask-svg-featured-scene`)
90
+ - property `pngIconPrefix` for png files, when prefix is `"png-"`:
91
+ - file `home_scene.png` will have icon name `png-home_scene` and css class `icon-png-home_scene`.
92
+
93
+ Prefix `icon-` in class names can't be changed.
94
+
95
+ ## Generating icon files for jest tests
96
+ If you are using icon types in your tests, you will probably also need icon json files. You can use utility
97
+ `generateIcons` from build engine as standalone functionality without need to run the whole build procedure.
98
+
99
+ In those cases, put this code snippet into `jest-global-setup.js` file in your project.
100
+
101
+ ```js
102
+ const { generateIcons } = require('./node_modules/@24i/bigscreen-sdk/rnv-build-engine/dist/src/scripts/utils/generateIcons');
103
+
104
+ module.exports = async () => {
105
+ await generateIcons();
106
+ };
107
+ ```
@@ -1,71 +1,71 @@
1
- import { createRef, Reference, Component } from '@24i/bigscreen-sdk/jsx';
2
- import {
3
- getDisplayToggler,
4
- IDisplayToggler,
5
- removeClass,
6
- addClass,
7
- DISPLAY_NONE,
8
- } from '@24i/bigscreen-sdk/utils';
9
-
10
- const ICON_PREFIX = 'icon-';
11
-
12
- type Props<SpritesJSON> = {
13
- icon?: keyof SpritesJSON,
14
- domRef?: Reference<HTMLDivElement>,
15
- className?: string,
16
- initialIsHidden?: boolean,
17
- };
18
-
19
- export class Icon<T> extends Component<Props<T>> {
20
- ref: Reference<HTMLDivElement>;
21
-
22
- currentIcon: keyof T | undefined;
23
-
24
- iconDisplay: IDisplayToggler;
25
-
26
- constructor(props: Props<T>) {
27
- super(props);
28
- this.ref = props.domRef || createRef();
29
- this.currentIcon = props.icon;
30
- this.iconDisplay = getDisplayToggler(this.ref, props.initialIsHidden);
31
- }
32
-
33
- getClass(icon: keyof T): string {
34
- return `${ICON_PREFIX}${icon as string}`;
35
- }
36
-
37
- setIcon(icon: keyof T) {
38
- if (icon === this.currentIcon) return;
39
- if (this.currentIcon) removeClass(this.ref, this.getClass(this.currentIcon));
40
- addClass(this.ref, this.getClass(icon));
41
- this.currentIcon = icon;
42
- }
43
-
44
- show() {
45
- if (!this.currentIcon) return;
46
- this.iconDisplay.show();
47
- }
48
-
49
- hide() {
50
- if (!this.currentIcon) return;
51
- this.iconDisplay.hide();
52
- }
53
-
54
- clearIcon() {
55
- if (!this.currentIcon) return;
56
- removeClass(this.ref, this.getClass(this.currentIcon));
57
- this.currentIcon = undefined;
58
- }
59
-
60
- render() {
61
- const { icon, className, initialIsHidden } = this.props;
62
- return (
63
- <div
64
- ref={this.ref}
65
- className={`${className || ''} icon ${icon
66
- ? this.getClass(icon) : ''} ${initialIsHidden
67
- ? DISPLAY_NONE : ''}`}
68
- />
69
- );
70
- }
71
- }
1
+ import { createRef, Reference, Component } from '@24i/bigscreen-sdk/jsx';
2
+ import {
3
+ getDisplayToggler,
4
+ IDisplayToggler,
5
+ removeClass,
6
+ addClass,
7
+ DISPLAY_NONE,
8
+ } from '@24i/bigscreen-sdk/utils';
9
+
10
+ const ICON_PREFIX = 'icon-';
11
+
12
+ type Props<SpritesJSON> = {
13
+ icon?: keyof SpritesJSON,
14
+ domRef?: Reference<HTMLDivElement>,
15
+ className?: string,
16
+ initialIsHidden?: boolean,
17
+ };
18
+
19
+ export class Icon<T> extends Component<Props<T>> {
20
+ ref: Reference<HTMLDivElement>;
21
+
22
+ currentIcon: keyof T | undefined;
23
+
24
+ iconDisplay: IDisplayToggler;
25
+
26
+ constructor(props: Props<T>) {
27
+ super(props);
28
+ this.ref = props.domRef || createRef();
29
+ this.currentIcon = props.icon;
30
+ this.iconDisplay = getDisplayToggler(this.ref, props.initialIsHidden);
31
+ }
32
+
33
+ getClass(icon: keyof T): string {
34
+ return `${ICON_PREFIX}${icon as string}`;
35
+ }
36
+
37
+ setIcon(icon: keyof T) {
38
+ if (icon === this.currentIcon) return;
39
+ if (this.currentIcon) removeClass(this.ref, this.getClass(this.currentIcon));
40
+ addClass(this.ref, this.getClass(icon));
41
+ this.currentIcon = icon;
42
+ }
43
+
44
+ show() {
45
+ if (!this.currentIcon) return;
46
+ this.iconDisplay.show();
47
+ }
48
+
49
+ hide() {
50
+ if (!this.currentIcon) return;
51
+ this.iconDisplay.hide();
52
+ }
53
+
54
+ clearIcon() {
55
+ if (!this.currentIcon) return;
56
+ removeClass(this.ref, this.getClass(this.currentIcon));
57
+ this.currentIcon = undefined;
58
+ }
59
+
60
+ render() {
61
+ const { icon, className, initialIsHidden } = this.props;
62
+ return (
63
+ <div
64
+ ref={this.ref}
65
+ className={`${className || ''} icon ${icon
66
+ ? this.getClass(icon) : ''} ${initialIsHidden
67
+ ? DISPLAY_NONE : ''}`}
68
+ />
69
+ );
70
+ }
71
+ }
@@ -1 +1 @@
1
- export { Icon } from './Icon';
1
+ export { Icon } from './Icon';
@@ -1,72 +1,72 @@
1
- ---
2
- id: README
3
- title: IME
4
- hide_title: true
5
- sidebar_label: IME
6
- ---
7
-
8
- # Input Method Editor
9
- Input method editor (ime for short) is a package that connects input method (system/virtual keyboard) and input.
10
-
11
- ## Usage
12
- From application perspective the only interaction you do with ime is setting the keyboard.
13
- Ideal place to do so is either in a scene component on `(re)activate` or if you have only
14
- one keyboard in the whole app in componentDidMount of the App component.
15
- If you have scene special keyboard you should clear it on `deactivate`
16
- ```tsx
17
- class Scene extends Component {
18
- keyboard = createRef<Keyboard>();
19
-
20
- activate() { // or reactivate or both
21
- ime.setKeyboard(this.keyboard.current);
22
- }
23
-
24
- deactivate() {
25
- ime.clearKeyboard();
26
- }
27
-
28
- render() {
29
- // ...
30
- <Keyboard ref={this.keyboard} />
31
- // ...
32
- }
33
- }
34
- ```
35
-
36
- ## Interface - Input
37
- If you are preparing a custom Input you will be interested in `async ime.input(this.inputElement.current)`.
38
-
39
- This function returns a promise that is resolved when the keyboard is closed. You should also start listening on `caretpositionchange` to get new caret position. You can use this event to also update
40
- input value.
41
- ```ts
42
- onInputEnter() {
43
- this.startInput(); // Prepare visuals (caret, border, etc.)
44
- ime.addEventListener('caretpositionchange', this.onCaretPositionChange);
45
- await ime.input(this.inputElement.current);
46
- ime.removeEventListener('caretpositionchange', this.onCaretPositionChange);
47
- this.endInput(); // Clean visuals again
48
- }
49
- ```
50
-
51
- ## Interface - Keyboard
52
- If you are preparing custom Keyboard you need to implement `IKeyboard` interface exported by ime package.
53
-
54
- That currently is:
55
- ```ts
56
- type CaretPositionChangeListener = (payload: number) => void;
57
-
58
- export interface IKeyboardEvents extends EventMapType {
59
- 'caretpositionchange': CaretPositionChangeListener,
60
- }
61
-
62
- interface IKeyboard extends IEvents<IKeyboardEvents> {
63
- async input(inputElement: HTMLInputElement) => Promise<void>;
64
- }
65
- ```
66
-
67
- Calling the input function should cause keyboard to appear and to take over the control. With each change keyboard should trigger `caretpositionchange`. (Ime relays `addEventListener` and `removeEventListener` between Input and Keyboard.)
68
-
69
- It is the keyboard's responsibility to edit input's value and caret position.
70
-
71
- Once the user finishes typing and hides the keyboard. It is also keyboard's responsibility to return the focus
72
- and to resolve the Promise so the Input code execution can continue.
1
+ ---
2
+ id: README
3
+ title: IME
4
+ hide_title: true
5
+ sidebar_label: IME
6
+ ---
7
+
8
+ # Input Method Editor
9
+ Input method editor (ime for short) is a package that connects input method (system/virtual keyboard) and input.
10
+
11
+ ## Usage
12
+ From application perspective the only interaction you do with ime is setting the keyboard.
13
+ Ideal place to do so is either in a scene component on `(re)activate` or if you have only
14
+ one keyboard in the whole app in componentDidMount of the App component.
15
+ If you have scene special keyboard you should clear it on `deactivate`
16
+ ```tsx
17
+ class Scene extends Component {
18
+ keyboard = createRef<Keyboard>();
19
+
20
+ activate() { // or reactivate or both
21
+ ime.setKeyboard(this.keyboard.current);
22
+ }
23
+
24
+ deactivate() {
25
+ ime.clearKeyboard();
26
+ }
27
+
28
+ render() {
29
+ // ...
30
+ <Keyboard ref={this.keyboard} />
31
+ // ...
32
+ }
33
+ }
34
+ ```
35
+
36
+ ## Interface - Input
37
+ If you are preparing a custom Input you will be interested in `async ime.input(this.inputElement.current)`.
38
+
39
+ This function returns a promise that is resolved when the keyboard is closed. You should also start listening on `caretpositionchange` to get new caret position. You can use this event to also update
40
+ input value.
41
+ ```ts
42
+ onInputEnter() {
43
+ this.startInput(); // Prepare visuals (caret, border, etc.)
44
+ ime.addEventListener('caretpositionchange', this.onCaretPositionChange);
45
+ await ime.input(this.inputElement.current);
46
+ ime.removeEventListener('caretpositionchange', this.onCaretPositionChange);
47
+ this.endInput(); // Clean visuals again
48
+ }
49
+ ```
50
+
51
+ ## Interface - Keyboard
52
+ If you are preparing custom Keyboard you need to implement `IKeyboard` interface exported by ime package.
53
+
54
+ That currently is:
55
+ ```ts
56
+ type CaretPositionChangeListener = (payload: number) => void;
57
+
58
+ export interface IKeyboardEvents extends EventMapType {
59
+ 'caretpositionchange': CaretPositionChangeListener,
60
+ }
61
+
62
+ interface IKeyboard extends IEvents<IKeyboardEvents> {
63
+ async input(inputElement: HTMLInputElement) => Promise<void>;
64
+ }
65
+ ```
66
+
67
+ Calling the input function should cause keyboard to appear and to take over the control. With each change keyboard should trigger `caretpositionchange`. (Ime relays `addEventListener` and `removeEventListener` between Input and Keyboard.)
68
+
69
+ It is the keyboard's responsibility to edit input's value and caret position.
70
+
71
+ Once the user finishes typing and hides the keyboard. It is also keyboard's responsibility to return the focus
72
+ and to resolve the Promise so the Input code execution can continue.
@@ -1,6 +1,6 @@
1
- import { IEvents } from '@24i/bigscreen-sdk/events-manager';
2
- import { IKeyboardEvents } from './IKeyboardEvent';
3
-
4
- export interface IKeyboard extends IEvents<IKeyboardEvents> {
5
- input(input: HTMLInputElement): Promise<any>
6
- }
1
+ import { IEvents } from '@24i/bigscreen-sdk/events-manager';
2
+ import { IKeyboardEvents } from './IKeyboardEvent';
3
+
4
+ export interface IKeyboard extends IEvents<IKeyboardEvents> {
5
+ input(input: HTMLInputElement): Promise<any>
6
+ }
@@ -1,7 +1,7 @@
1
- import { EventMapType } from '@24i/bigscreen-sdk/events-manager';
2
-
3
- type CaretPositionChangeListener = (payload: number | null) => void;
4
-
5
- export interface IKeyboardEvents extends EventMapType {
6
- 'caretpositionchange': CaretPositionChangeListener,
7
- }
1
+ import { EventMapType } from '@24i/bigscreen-sdk/events-manager';
2
+
3
+ type CaretPositionChangeListener = (payload: number | null) => void;
4
+
5
+ export interface IKeyboardEvents extends EventMapType {
6
+ 'caretpositionchange': CaretPositionChangeListener,
7
+ }
@@ -1,33 +1,33 @@
1
- import { SystemKeyboard } from './SystemKeyboard';
2
- import { IKeyboard } from './IKeyboard';
3
- import { IKeyboardEvents } from './IKeyboardEvent';
4
-
5
- class ImeManager {
6
- keyboard: IKeyboard = new SystemKeyboard();
7
-
8
- setKeyboard(keyboard: IKeyboard) {
9
- this.keyboard = keyboard;
10
- }
11
-
12
- clearKeyboard() {
13
- this.keyboard = new SystemKeyboard();
14
- }
15
-
16
- async input(input: HTMLInputElement): Promise<any> {
17
- return this.keyboard.input(input);
18
- }
19
-
20
- addEventListener <K extends keyof IKeyboardEvents>(
21
- eventName: K, listener: IKeyboardEvents[K],
22
- ) {
23
- this.keyboard.addEventListener(eventName, listener);
24
- }
25
-
26
- removeEventListener <K extends keyof IKeyboardEvents>(
27
- eventName: K, listener: IKeyboardEvents[K],
28
- ) {
29
- this.keyboard.removeEventListener(eventName, listener);
30
- }
31
- }
32
-
33
- export const ime = new ImeManager();
1
+ import { SystemKeyboard } from './SystemKeyboard';
2
+ import { IKeyboard } from './IKeyboard';
3
+ import { IKeyboardEvents } from './IKeyboardEvent';
4
+
5
+ class ImeManager {
6
+ keyboard: IKeyboard = new SystemKeyboard();
7
+
8
+ setKeyboard(keyboard: IKeyboard) {
9
+ this.keyboard = keyboard;
10
+ }
11
+
12
+ clearKeyboard() {
13
+ this.keyboard = new SystemKeyboard();
14
+ }
15
+
16
+ async input(input: HTMLInputElement): Promise<any> {
17
+ return this.keyboard.input(input);
18
+ }
19
+
20
+ addEventListener <K extends keyof IKeyboardEvents>(
21
+ eventName: K, listener: IKeyboardEvents[K],
22
+ ) {
23
+ this.keyboard.addEventListener(eventName, listener);
24
+ }
25
+
26
+ removeEventListener <K extends keyof IKeyboardEvents>(
27
+ eventName: K, listener: IKeyboardEvents[K],
28
+ ) {
29
+ this.keyboard.removeEventListener(eventName, listener);
30
+ }
31
+ }
32
+
33
+ export const ime = new ImeManager();