@24i/bigscreen-sdk 0.9.9-alpha.2147
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -0
- package/package.json +272 -0
- package/packages/adobe-heartbeat/README.md +46 -0
- package/packages/adobe-heartbeat/src/AdobeHeartbeat.ts +244 -0
- package/packages/adobe-heartbeat/src/__external__/Adobe/Adobe.d.ts +24 -0
- package/packages/adobe-heartbeat/src/__external__/Adobe/MediaSDK.min.d.ts +126 -0
- package/packages/adobe-heartbeat/src/__external__/Adobe/MediaSDK.min.js +76 -0
- package/packages/adobe-heartbeat/src/index.ts +5 -0
- package/packages/adobe-heartbeat/src/types.ts +67 -0
- package/packages/animations/README.md +74 -0
- package/packages/animations/src/AnimationUtils.ts +232 -0
- package/packages/animations/src/JSAnimations.ts +142 -0
- package/packages/animations/src/index.ts +3 -0
- package/packages/announcement-banner/README.md +49 -0
- package/packages/announcement-banner/examples/example1.gif +0 -0
- package/packages/announcement-banner/src/AnnouncementBanner.scss +8 -0
- package/packages/announcement-banner/src/AnnouncementBanner.tsx +136 -0
- package/packages/announcement-banner/src/index.ts +1 -0
- package/packages/async-image/README.md +47 -0
- package/packages/async-image/src/AsyncImage.tsx +96 -0
- package/packages/async-image/src/index.ts +2 -0
- package/packages/conviva/README.md +48 -0
- package/packages/conviva/src/ConvivaSDK.ts +38 -0
- package/packages/conviva/src/index.ts +1 -0
- package/packages/conviva/src/theoPlugin/ConvivaConviguration.ts +19 -0
- package/packages/conviva/src/theoPlugin/__external__/Conviva_4.0.15.js +699 -0
- package/packages/conviva/src/theoPlugin/__external__/convivaTheoPlugin.d.ts +7 -0
- package/packages/conviva/src/theoPlugin/__external__/convivaTheoPlugin.js +636 -0
- package/packages/conviva/src/theoPlugin/convivaTheoPluginWrapper.ts +61 -0
- package/packages/conviva/src/theoPlugin/index.ts +2 -0
- package/packages/developer-tools/DeveloperConsole/README.md +114 -0
- package/packages/developer-tools/DeveloperConsole/index.ts +3 -0
- package/packages/developer-tools/DeveloperConsole/unstyled.ts +1 -0
- package/packages/developer-tools/DeveloperToolsService/README.md +54 -0
- package/packages/developer-tools/DeveloperToolsService/index.ts +3 -0
- package/packages/developer-tools/DeveloperToolsService/unstyled.ts +1 -0
- package/packages/developer-tools/EnvironmentSelection/README.md +77 -0
- package/packages/developer-tools/EnvironmentSelection/index.ts +3 -0
- package/packages/developer-tools/EnvironmentSelection/unstyled.ts +1 -0
- package/packages/developer-tools/PlayerDebugWindow/README.md +65 -0
- package/packages/developer-tools/PlayerDebugWindow/index.ts +3 -0
- package/packages/developer-tools/PlayerDebugWindow/unstyled.ts +1 -0
- package/packages/developer-tools/README.md +24 -0
- package/packages/developer-tools/TechnicalInfo/README.md +90 -0
- package/packages/developer-tools/TechnicalInfo/index.ts +9 -0
- package/packages/developer-tools/TechnicalInfo/unstyled.ts +6 -0
- package/packages/developer-tools/src/DeveloperConsole/ControlButton.tsx +16 -0
- package/packages/developer-tools/src/DeveloperConsole/DeveloperConsole.tsx +388 -0
- package/packages/developer-tools/src/DeveloperConsole/Panel.tsx +108 -0
- package/packages/developer-tools/src/DeveloperConsole/PanelMessage.tsx +33 -0
- package/packages/developer-tools/src/DeveloperConsole/helpers/Queue.ts +38 -0
- package/packages/developer-tools/src/DeveloperConsole/helpers/index.ts +2 -0
- package/packages/developer-tools/src/DeveloperConsole/helpers/instrumentHandler.ts +165 -0
- package/packages/developer-tools/src/DeveloperConsole/index.ts +2 -0
- package/packages/developer-tools/src/DeveloperConsole/initDeveloperConsole.tsx +8 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.scss +91 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.styles.1080.scss +2 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/DeveloperConsole.styles.scss +2 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/_sizes.1080.scss +16 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/DeveloperConsole/_sizes.scss +16 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.scss +87 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.styles.1080.scss +2 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/Panel/Panel.styles.scss +2 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/Panel/_sizes.1080.scss +9 -0
- package/packages/developer-tools/src/DeveloperConsole/styles/Panel/_sizes.scss +9 -0
- package/packages/developer-tools/src/DeveloperConsole/styles.ts +2 -0
- package/packages/developer-tools/src/DeveloperConsole/types.ts +49 -0
- package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolItem.tsx +21 -0
- package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsList.tsx +114 -0
- package/packages/developer-tools/src/DeveloperToolsService/DeveloperToolsService.tsx +122 -0
- package/packages/developer-tools/src/DeveloperToolsService/index.ts +1 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.scss +64 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.1080.scss +2 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.animated.1080.scss +3 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.animated.scss +4 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/DeveloperToolsService.styles.scss +2 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/_animated.scss +5 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/_sizes.1080.scss +16 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles/_sizes.scss +16 -0
- package/packages/developer-tools/src/DeveloperToolsService/styles.ts +1 -0
- package/packages/developer-tools/src/EnvironmentSelection/EnvironmentList.tsx +93 -0
- package/packages/developer-tools/src/EnvironmentSelection/EnvironmentListItem.tsx +73 -0
- package/packages/developer-tools/src/EnvironmentSelection/EnvironmentSelection.tsx +100 -0
- package/packages/developer-tools/src/EnvironmentSelection/assets/checkmark.svg +18 -0
- package/packages/developer-tools/src/EnvironmentSelection/assets/development-stripe.png +0 -0
- package/packages/developer-tools/src/EnvironmentSelection/config.ts +43 -0
- package/packages/developer-tools/src/EnvironmentSelection/constants.ts +1 -0
- package/packages/developer-tools/src/EnvironmentSelection/index.ts +2 -0
- package/packages/developer-tools/src/EnvironmentSelection/sizes.1080.ts +9 -0
- package/packages/developer-tools/src/EnvironmentSelection/sizes.ts +9 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.scss +107 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.1080.scss +2 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.animated.1080.scss +3 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.animated.scss +3 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/EnvironmentSelection.styles.scss +2 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/_animated.scss +9 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/_sizes.1080.scss +25 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles/_sizes.scss +25 -0
- package/packages/developer-tools/src/EnvironmentSelection/styles.ts +1 -0
- package/packages/developer-tools/src/EnvironmentSelection/types.ts +10 -0
- package/packages/developer-tools/src/IDeveloperTool.ts +14 -0
- package/packages/developer-tools/src/PlayerDebugWindow/PlayerDebugWindow.tsx +115 -0
- package/packages/developer-tools/src/PlayerDebugWindow/constants.ts +113 -0
- package/packages/developer-tools/src/PlayerDebugWindow/index.ts +1 -0
- package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.scss +29 -0
- package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.styles.1080.scss +2 -0
- package/packages/developer-tools/src/PlayerDebugWindow/styles/PlayerDebugWindow.styles.scss +2 -0
- package/packages/developer-tools/src/PlayerDebugWindow/styles/_sizes.1080.scss +11 -0
- package/packages/developer-tools/src/PlayerDebugWindow/styles/_sizes.scss +11 -0
- package/packages/developer-tools/src/PlayerDebugWindow/styles.ts +1 -0
- package/packages/developer-tools/src/TechnicalInfo/ITechnicalInfoProvider.ts +5 -0
- package/packages/developer-tools/src/TechnicalInfo/TechnicalInfo.tsx +123 -0
- package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoDetail.tsx +76 -0
- package/packages/developer-tools/src/TechnicalInfo/TechnicalInfoProvider.ts +318 -0
- package/packages/developer-tools/src/TechnicalInfo/icons/arrow-down.svg +18 -0
- package/packages/developer-tools/src/TechnicalInfo/icons/arrow-up.svg +18 -0
- package/packages/developer-tools/src/TechnicalInfo/index.ts +5 -0
- package/packages/developer-tools/src/TechnicalInfo/sizes.1080.ts +1 -0
- package/packages/developer-tools/src/TechnicalInfo/sizes.ts +1 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.scss +186 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.1080.scss +2 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.animated.1080.scss +3 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.animated.scss +3 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/TechnicalInfo.styles.scss +2 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/_animated.scss +16 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/_sizes.1080.scss +50 -0
- package/packages/developer-tools/src/TechnicalInfo/styles/_sizes.scss +50 -0
- package/packages/developer-tools/src/TechnicalInfo/styles.ts +1 -0
- package/packages/developer-tools/src/TechnicalInfo/translations.ts +75 -0
- package/packages/device/README.md +219 -0
- package/packages/device/keymap.ts +1 -0
- package/packages/device/resolver/index.ts +2 -0
- package/packages/device/resolver/keymap.ts +1 -0
- package/packages/device/src/DeviceEventMap.ts +1 -0
- package/packages/device/src/device.ts +6 -0
- package/packages/device/src/driver/index.entone.ts +1 -0
- package/packages/device/src/driver/index.hbbtv.tv.ts +1 -0
- package/packages/device/src/driver/index.kreatv.ts +1 -0
- package/packages/device/src/driver/index.saphi.tv.ts +1 -0
- package/packages/device/src/driver/index.tizen.tv.ts +1 -0
- package/packages/device/src/driver/index.ts +1 -0
- package/packages/device/src/driver/index.webos.tv.ts +1 -0
- package/packages/device/src/getKeyDigit.ts +35 -0
- package/packages/device/src/getKeyMap.ts +4 -0
- package/packages/device/src/index.ts +8 -0
- package/packages/device/src/isClickOrEnter.ts +3 -0
- package/packages/device/src/resolver/index.ts +2 -0
- package/packages/device/src/resolver/resolver.ts +60 -0
- package/packages/digital-clock/README.md +26 -0
- package/packages/digital-clock/src/DigitalClock.tsx +67 -0
- package/packages/digital-clock/src/index.ts +1 -0
- package/packages/driver-base/DeviceBase.md +139 -0
- package/packages/driver-base/README.md +44 -0
- package/packages/driver-base/src/ConnectionType.ts +1 -0
- package/packages/driver-base/src/DeviceBase.ts +218 -0
- package/packages/driver-base/src/KeyMap/Key.ts +41 -0
- package/packages/driver-base/src/KeyMap/KeyMap.ts +386 -0
- package/packages/driver-base/src/KeyMap/generateKeyCodeKeyMap.ts +11 -0
- package/packages/driver-base/src/KeyMap/index.ts +5 -0
- package/packages/driver-base/src/KeyMap/interface.ts +7 -0
- package/packages/driver-base/src/KeyMap/overrideValues.ts +16 -0
- package/packages/driver-base/src/KeyMap/switchByKey.ts +18 -0
- package/packages/driver-base/src/ScreenSize.ts +1 -0
- package/packages/driver-base/src/VolumeRange.ts +5 -0
- package/packages/driver-base/src/bindPreventDefaultEvent.ts +5 -0
- package/packages/driver-base/src/errors.ts +32 -0
- package/packages/driver-base/src/index.ts +10 -0
- package/packages/driver-base/src/loadObject.ts +30 -0
- package/packages/driver-base/src/types/DeviceEvent.ts +9 -0
- package/packages/driver-base/src/types/ExitOptions.ts +1 -0
- package/packages/driver-base/src/types/KeycodeKeyMap.ts +85 -0
- package/packages/driver-base/src/types/ScreenSaverStatus.ts +3 -0
- package/packages/driver-base/src/utils.ts +10 -0
- package/packages/driver-browser/src/DeviceBrowser.ts +170 -0
- package/packages/driver-browser/src/getBrowser.ts +51 -0
- package/packages/driver-browser/src/getOsName.ts +30 -0
- package/packages/driver-browser/src/index.ts +1 -0
- package/packages/driver-browser/src/keymap.ts +14 -0
- package/packages/driver-browser/src/patchSuitestKeys.ts +27 -0
- package/packages/driver-entone/README.md +9 -0
- package/packages/driver-entone/src/DeviceEntone.ts +232 -0
- package/packages/driver-entone/src/IEntone.ts +460 -0
- package/packages/driver-entone/src/constants.ts +73 -0
- package/packages/driver-entone/src/index.ts +1 -0
- package/packages/driver-entone/src/keymap.ts +56 -0
- package/packages/driver-hbbtv/src/DeviceHbbTV.ts +313 -0
- package/packages/driver-hbbtv/src/constants.ts +28 -0
- package/packages/driver-hbbtv/src/deviceInfo.ts +23 -0
- package/packages/driver-hbbtv/src/getVersion.ts +16 -0
- package/packages/driver-hbbtv/src/index.ts +1 -0
- package/packages/driver-hbbtv/src/keymap.ts +45 -0
- package/packages/driver-hbbtv/src/types.ts +366 -0
- package/packages/driver-kreatv/src/DeviceKreaTV.ts +271 -0
- package/packages/driver-kreatv/src/IToi.ts +379 -0
- package/packages/driver-kreatv/src/index.ts +1 -0
- package/packages/driver-kreatv/src/keymap.ts +31 -0
- package/packages/driver-kreatv/src/toi2.ts +107 -0
- package/packages/driver-kreatv/src/toi3.ts +102 -0
- package/packages/driver-kreatv/src/types.ts +35 -0
- package/packages/driver-saphi/src/DeviceSaphi.ts +144 -0
- package/packages/driver-saphi/src/constants.ts +1 -0
- package/packages/driver-saphi/src/formatUserAgent.ts +19 -0
- package/packages/driver-saphi/src/index.ts +1 -0
- package/packages/driver-saphi/src/keymap.ts +64 -0
- package/packages/driver-saphi/src/types.ts +75 -0
- package/packages/driver-tizen/src/DeviceTizen.ts +296 -0
- package/packages/driver-tizen/src/ITizen.ts +212 -0
- package/packages/driver-tizen/src/IWebapis.ts +95 -0
- package/packages/driver-tizen/src/TizenKeys.ts +94 -0
- package/packages/driver-tizen/src/constants.ts +197 -0
- package/packages/driver-tizen/src/index.ts +1 -0
- package/packages/driver-tizen/src/types.ts +14 -0
- package/packages/driver-webos/scripts/exportWebOSTVjs.ts +23 -0
- package/packages/driver-webos/scripts/template.ts +12 -0
- package/packages/driver-webos/src/DeviceWebos.ts +305 -0
- package/packages/driver-webos/src/constants.ts +20 -0
- package/packages/driver-webos/src/index.ts +1 -0
- package/packages/driver-webos/src/keymap.ts +9 -0
- package/packages/driver-webos/src/types.ts +344 -0
- package/packages/driver-webos/src/utils.ts +60 -0
- package/packages/driver-webos/src/webOSTVjs/webOSTVjs-1.2.3/LICENSE-2.0.txt +202 -0
- package/packages/driver-webos/src/webOSTVjs/webOSTVjs-1.2.3/webOSTV-dev.js +1 -0
- package/packages/driver-webos/src/webOSTVjs/webOSTVjs-1.2.3/webOSTV.js +1 -0
- package/packages/driver-xbox/__external__/winjs/directionalnavigation-1.0.0.0.js +1015 -0
- package/packages/driver-xbox/src/DeviceXbox.ts +231 -0
- package/packages/driver-xbox/src/index.ts +1 -0
- package/packages/driver-xbox/src/interfaces.ts +138 -0
- package/packages/driver-xbox/src/keymap.ts +96 -0
- package/packages/driver-xbox/src/utils.ts +23 -0
- package/packages/epg/IMPLEMENTATION.md +228 -0
- package/packages/epg/MockGenerator.md +102 -0
- package/packages/epg/README.md +582 -0
- package/packages/epg/src/v2/Cell.tsx +208 -0
- package/packages/epg/src/v2/CellsManager.ts +1 -0
- package/packages/epg/src/v2/DataManager.ts +301 -0
- package/packages/epg/src/v2/DatePicker.tsx +104 -0
- package/packages/epg/src/v2/DateToast/DateToast.scss +28 -0
- package/packages/epg/src/v2/DateToast/DateToast.styles.1080.scss +2 -0
- package/packages/epg/src/v2/DateToast/DateToast.styles.scss +2 -0
- package/packages/epg/src/v2/DateToast/DateToast.tsx +87 -0
- package/packages/epg/src/v2/DateToast/_sizes.1080.scss +7 -0
- package/packages/epg/src/v2/DateToast/_sizes.scss +7 -0
- package/packages/epg/src/v2/DateToast/index.tsx +1 -0
- package/packages/epg/src/v2/DateToast/styles.ts +1 -0
- package/packages/epg/src/v2/Day.tsx +30 -0
- package/packages/epg/src/v2/Epg.tsx +444 -0
- package/packages/epg/src/v2/Header.tsx +41 -0
- package/packages/epg/src/v2/InputEvents.ts +294 -0
- package/packages/epg/src/v2/MockGenerator/config.1080.ts +2 -0
- package/packages/epg/src/v2/MockGenerator/config.ts +2 -0
- package/packages/epg/src/v2/MockGenerator/generator.ts +173 -0
- package/packages/epg/src/v2/MockGenerator/index.ts +2 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_1.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_10.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_11.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_12.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_13.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_14.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_15.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_16.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_17.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_18.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_19.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_2.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_20.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_3.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_4.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_5.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_6.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_7.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_8.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/assets/channel_logo_9.png +0 -0
- package/packages/epg/src/v2/MockGenerator/mocks/data.ts +102 -0
- package/packages/epg/src/v2/MockGenerator/types.ts +25 -0
- package/packages/epg/src/v2/MockGenerator/utils.ts +28 -0
- package/packages/epg/src/v2/MouseNavigation/MouseNavigation.tsx +88 -0
- package/packages/epg/src/v2/MouseNavigation/MouseNavigationFallback.ts +4 -0
- package/packages/epg/src/v2/MouseNavigation/index.tizen.tv.ts +1 -0
- package/packages/epg/src/v2/MouseNavigation/index.ts +1 -0
- package/packages/epg/src/v2/MouseNavigation/index.web.ts +1 -0
- package/packages/epg/src/v2/MouseNavigation/index.webos.tv.ts +1 -0
- package/packages/epg/src/v2/NowLine.tsx +66 -0
- package/packages/epg/src/v2/Program.tsx +58 -0
- package/packages/epg/src/v2/ProgramInfo/ProgramInfo.scss +67 -0
- package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.1080.scss +3 -0
- package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.animated.1080.scss +2 -0
- package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.animated.scss +2 -0
- package/packages/epg/src/v2/ProgramInfo/ProgramInfo.styles.scss +3 -0
- package/packages/epg/src/v2/ProgramInfo/ProgramInfo.tsx +149 -0
- package/packages/epg/src/v2/ProgramInfo/_animated.scss +8 -0
- package/packages/epg/src/v2/ProgramInfo/_mixins.scss +5 -0
- package/packages/epg/src/v2/ProgramInfo/_sizes.1080.scss +21 -0
- package/packages/epg/src/v2/ProgramInfo/_sizes.scss +21 -0
- package/packages/epg/src/v2/ProgramInfo/index.ts +1 -0
- package/packages/epg/src/v2/ProgramInfo/rtl.scss +7 -0
- package/packages/epg/src/v2/ProgramInfo/sizes.1080.ts +3 -0
- package/packages/epg/src/v2/ProgramInfo/sizes.ts +3 -0
- package/packages/epg/src/v2/ProgramInfo/styles.ts +1 -0
- package/packages/epg/src/v2/ProgramInfo/utils.ts +27 -0
- package/packages/epg/src/v2/Row.tsx +132 -0
- package/packages/epg/src/v2/RowsManager.ts +1 -0
- package/packages/epg/src/v2/TimeManager.ts +58 -0
- package/packages/epg/src/v2/Timeline.ts +1 -0
- package/packages/epg/src/v2/TimelineSection.tsx +47 -0
- package/packages/epg/src/v2/basic/CellsManager.tsx +295 -0
- package/packages/epg/src/v2/basic/RowsManager.tsx +500 -0
- package/packages/epg/src/v2/basic/Timeline.tsx +88 -0
- package/packages/epg/src/v2/index.ts +1 -0
- package/packages/epg/src/v2/interface.ts +1489 -0
- package/packages/epg/src/v2/sizes.1080.ts +2 -0
- package/packages/epg/src/v2/sizes.ts +2 -0
- package/packages/epg/src/v2/styles/Basic/Basic.scss +116 -0
- package/packages/epg/src/v2/styles/Basic/index.ts +1 -0
- package/packages/epg/src/v2/styles/Whitelabel/index.ts +1 -0
- package/packages/epg/src/v2/utils.ts +40 -0
- package/packages/events-manager/src/EventsManager.ts +56 -0
- package/packages/events-manager/src/index.ts +2 -0
- package/packages/floating-focus/README.md +64 -0
- package/packages/floating-focus/src/FloatingFocus.ts +106 -0
- package/packages/floating-focus/src/Horizontal.tsx +20 -0
- package/packages/floating-focus/src/Vertical.tsx +20 -0
- package/packages/floating-focus/src/index.ts +4 -0
- package/packages/floating-focus/src/types.ts +20 -0
- package/packages/floating-focus/src/utils.ts +43 -0
- package/packages/focus/README.md +294 -0
- package/packages/focus/src/IFocusable.ts +3 -0
- package/packages/focus/src/Layout/Base.tsx +128 -0
- package/packages/focus/src/Layout/Horizontal.ts +12 -0
- package/packages/focus/src/Layout/Matrix.tsx +305 -0
- package/packages/focus/src/Layout/Vertical.ts +12 -0
- package/packages/focus/src/Layout/__test__/Base.spec.ts +162 -0
- package/packages/focus/src/Layout/__test__/Horizontal.spec.ts +46 -0
- package/packages/focus/src/Layout/__test__/Matrix.spec.ts +261 -0
- package/packages/focus/src/Layout/__test__/Vertical.spec.ts +46 -0
- package/packages/focus/src/Layout/__test__/shared.ts +15 -0
- package/packages/focus/src/Layout/constants.ts +10 -0
- package/packages/focus/src/Layout/types.ts +6 -0
- package/packages/focus/src/__test__/candidate.spec.tsx +245 -0
- package/packages/focus/src/__test__/focusFirstExisting.spec.tsx +21 -0
- package/packages/focus/src/__test__/refocusAfterHashChange.spec.tsx +41 -0
- package/packages/focus/src/__test__/safeFocus.spec.tsx +41 -0
- package/packages/focus/src/candidate.ts +106 -0
- package/packages/focus/src/focusFirstExisting.ts +13 -0
- package/packages/focus/src/index.ts +15 -0
- package/packages/focus/src/refocusAfterHashChange.ts +19 -0
- package/packages/focus/src/safeFocus.ts +15 -0
- package/packages/gallup/README.md +27 -0
- package/packages/gallup/src/Gallup.ts +80 -0
- package/packages/gallup/src/GallupMock.ts +7 -0
- package/packages/gallup/src/__external__/SpringStreams.d.ts +39 -0
- package/packages/gallup/src/__external__/SpringStreams.js +1 -0
- package/packages/gallup/src/index.ts +1 -0
- package/packages/grid/BasicGrid/README.md +78 -0
- package/packages/grid/BasicGrid/examples/example1.gif +0 -0
- package/packages/grid/BasicGrid/examples/example2.gif +0 -0
- package/packages/grid/BasicGrid/index.ts +1 -0
- package/packages/grid/FirstOnlyGrid/README.md +43 -0
- package/packages/grid/FirstOnlyGrid/examples/example1.gif +0 -0
- package/packages/grid/FirstOnlyGrid/index.ts +1 -0
- package/packages/grid/FixedToEndGrid/README.md +45 -0
- package/packages/grid/FixedToEndGrid/examples/example1.gif +0 -0
- package/packages/grid/FixedToEndGrid/index.ts +1 -0
- package/packages/grid/Item/index.ts +1 -0
- package/packages/grid/README.md +150 -0
- package/packages/grid/src/Base/Base.mouse.tsx +24 -0
- package/packages/grid/src/Base/Base.tsx +450 -0
- package/packages/grid/src/Base/index.tizen.tv.ts +1 -0
- package/packages/grid/src/Base/index.ts +1 -0
- package/packages/grid/src/Base/index.webos.tv.ts +1 -0
- package/packages/grid/src/Base/index.webtv.ts +1 -0
- package/packages/grid/src/BasicGrid/BasicGrid.tsx +137 -0
- package/packages/grid/src/BasicGrid/config.ts +13 -0
- package/packages/grid/src/FastFocusingOptimizer/FastFocusingOptimizer.ts +54 -0
- package/packages/grid/src/FirstOnlyGrid/FirstOnlyGrid.tsx +110 -0
- package/packages/grid/src/FirstOnlyGrid/config.ts +13 -0
- package/packages/grid/src/FirstOnlyGrid/controller.ts +10 -0
- package/packages/grid/src/FixedToEndGrid/FixedToEndGrid.tsx +112 -0
- package/packages/grid/src/FixedToEndGrid/config.ts +13 -0
- package/packages/grid/src/FixedToEndGrid/controller.ts +36 -0
- package/packages/grid/src/UnifiedGridController/UnifiedGridController.ts +550 -0
- package/packages/grid/src/UnifiedGridController/index.ts +2 -0
- package/packages/grid/src/UnifiedGridController/interface.ts +92 -0
- package/packages/grid/src/animate.animated.ts +1 -0
- package/packages/grid/src/animate.ts +1 -0
- package/packages/grid/src/interface.ts +28 -0
- package/packages/grid/src/mocks/index.tsx +41 -0
- package/packages/grid/src/types.ts +63 -0
- package/packages/grid/src/utils.ts +69 -0
- package/packages/i18n/README.md +460 -0
- package/packages/i18n/src/I18n.ts +246 -0
- package/packages/i18n/src/Translation.tsx +36 -0
- package/packages/i18n/src/addResourceBundle.ts +73 -0
- package/packages/i18n/src/direction.ts +33 -0
- package/packages/i18n/src/index.ts +4 -0
- package/packages/i18n/src/isRtl.ts +3 -0
- package/packages/i18n/src/middlewares/i18next/Context/Context.ts +25 -0
- package/packages/i18n/src/middlewares/i18next/Context/index.ts +1 -0
- package/packages/i18n/src/middlewares/i18next/Interpolation/Interpolation.ts +95 -0
- package/packages/i18n/src/middlewares/i18next/Interpolation/index.ts +1 -0
- package/packages/i18n/src/middlewares/i18next/Nesting/Nesting.ts +38 -0
- package/packages/i18n/src/middlewares/i18next/Nesting/index.ts +1 -0
- package/packages/i18n/src/middlewares/i18next/Plurals/Plurals.ts +123 -0
- package/packages/i18n/src/middlewares/i18next/Plurals/Resolvers.ts +124 -0
- package/packages/i18n/src/middlewares/i18next/Plurals/index.ts +1 -0
- package/packages/i18n/src/middlewares/i18next/Plurals/types.ts +6 -0
- package/packages/i18n/src/middlewares/icu/DateInterpolation/DateInterpolation.ts +64 -0
- package/packages/i18n/src/middlewares/icu/DateInterpolation/index.ts +1 -0
- package/packages/i18n/src/middlewares/icu/Interpolation/Interpolation.ts +39 -0
- package/packages/i18n/src/middlewares/icu/Interpolation/index.ts +1 -0
- package/packages/i18n/src/middlewares/icu/NumberInterpolation/NumberInterpolation.ts +41 -0
- package/packages/i18n/src/middlewares/icu/NumberInterpolation/index.ts +1 -0
- package/packages/i18n/src/middlewares/icu/Plurals/Plurals.ts +65 -0
- package/packages/i18n/src/middlewares/icu/Plurals/Resolvers.ts +130 -0
- package/packages/i18n/src/middlewares/icu/Plurals/index.ts +1 -0
- package/packages/i18n/src/middlewares/icu/Plurals/types.ts +15 -0
- package/packages/i18n/src/middlewares/icu/Select/Select.ts +36 -0
- package/packages/i18n/src/middlewares/icu/Select/index.ts +1 -0
- package/packages/i18n/src/middlewares/icu/TimeInterpolation/TimeInterpolation.ts +65 -0
- package/packages/i18n/src/middlewares/icu/TimeInterpolation/index.ts +1 -0
- package/packages/i18n/src/middlewares/icu/shared/hasVariable.ts +5 -0
- package/packages/i18n/src/middlewares/icu/shared/matchSwitchCase.ts +80 -0
- package/packages/i18n/src/middlewares/icu/shared/unwrap.ts +1 -0
- package/packages/i18n/src/pluralsCommon/PluralsHelper.ts +54 -0
- package/packages/i18n/src/pluralsCommon/ResolverByLanguage.ts +129 -0
- package/packages/i18n/src/t.tsx +6 -0
- package/packages/i18n/src/typedTranslate.ts +31 -0
- package/packages/i18n/src/types.ts +66 -0
- package/packages/i18n/src/utils.ts +76 -0
- package/packages/icon/README.md +107 -0
- package/packages/icon/src/Icon.tsx +49 -0
- package/packages/icon/src/index.ts +1 -0
- package/packages/ime/README.md +72 -0
- package/packages/ime/src/IKeyboard.ts +6 -0
- package/packages/ime/src/IKeyboardEvent.ts +7 -0
- package/packages/ime/src/ImeManager.ts +33 -0
- package/packages/ime/src/SystemKeyboard/SystemKeyboard.ts +33 -0
- package/packages/ime/src/SystemKeyboard/SystemKeyboardBase.ts +98 -0
- package/packages/ime/src/SystemKeyboard/TizenSystemKeyboard.ts +66 -0
- package/packages/ime/src/SystemKeyboard/WebosSystemKeyboard.ts +74 -0
- package/packages/ime/src/SystemKeyboard/index.tizen.tv.ts +1 -0
- package/packages/ime/src/SystemKeyboard/index.ts +1 -0
- package/packages/ime/src/SystemKeyboard/index.webos.tv.ts +1 -0
- package/packages/ime/src/index.ts +3 -0
- package/packages/input/README.md +62 -0
- package/packages/input/src/Input.scss +5 -0
- package/packages/input/src/Input.tsx +216 -0
- package/packages/input/src/handleOverflow.ts +16 -0
- package/packages/input/src/index.ts +1 -0
- package/packages/interactable/README.md +37 -0
- package/packages/interactable/src/Interactable.tsx +27 -0
- package/packages/interactable/src/index.ts +1 -0
- package/packages/interactable/src/interface.ts +6 -0
- package/packages/ipify/README.md +30 -0
- package/packages/ipify/src/index.ts +1 -0
- package/packages/ipify/src/ipify.ts +41 -0
- package/packages/jsx/README.md +388 -0
- package/packages/jsx/src/Component.ts +68 -0
- package/packages/jsx/src/createRef.ts +5 -0
- package/packages/jsx/src/forwardRef.ts +8 -0
- package/packages/jsx/src/index.ts +31 -0
- package/packages/jsx/src/jsx-runtime.ts +5 -0
- package/packages/jsx/src/manipulation/attachNode.ts +30 -0
- package/packages/jsx/src/manipulation/attachNodeBefore.ts +44 -0
- package/packages/jsx/src/manipulation/clearNode.ts +14 -0
- package/packages/jsx/src/manipulation/detachNode.ts +26 -0
- package/packages/jsx/src/manipulation/index.ts +7 -0
- package/packages/jsx/src/manipulation/removeNode.ts +18 -0
- package/packages/jsx/src/manipulation/replaceNode.ts +42 -0
- package/packages/jsx/src/manipulation/swapNodes.ts +53 -0
- package/packages/jsx/src/mount/guards.ts +26 -0
- package/packages/jsx/src/mount/handleLifecycle.ts +71 -0
- package/packages/jsx/src/mount/index.ts +1 -0
- package/packages/jsx/src/mount/lifecycle.ts +38 -0
- package/packages/jsx/src/mount/lifecycleHelpers.ts +29 -0
- package/packages/jsx/src/mount/mount.ts +141 -0
- package/packages/jsx/src/mount/namespaces.ts +7 -0
- package/packages/jsx/src/mount/props.ts +121 -0
- package/packages/jsx/src/nodeUtils.ts +69 -0
- package/packages/jsx/src/setText.ts +15 -0
- package/packages/jsx/src/test-utils/MountedComponent.ts +50 -0
- package/packages/jsx/src/test-utils/README.md +73 -0
- package/packages/jsx/src/test-utils/click.ts +7 -0
- package/packages/jsx/src/test-utils/enter.ts +4 -0
- package/packages/jsx/src/test-utils/index.ts +5 -0
- package/packages/jsx/src/test-utils/keydown.ts +21 -0
- package/packages/jsx/src/test-utils/shallow.ts +33 -0
- package/packages/jsx/src/test-utils/spec-utils.ts +6 -0
- package/packages/jsx/src/textNode.ts +9 -0
- package/packages/jsx/src/types.ts +128 -0
- package/packages/jsx/src/utils.ts +35 -0
- package/packages/jsx/src/virtualDOM.ts +121 -0
- package/packages/key-sequence/README.md +44 -0
- package/packages/key-sequence/src/KeySequence.ts +56 -0
- package/packages/key-sequence/src/arrayEndsWithKeyCombo.ts +22 -0
- package/packages/key-sequence/src/index.ts +1 -0
- package/packages/key-sequence/src/types.ts +13 -0
- package/packages/keyboard/README.md +235 -0
- package/packages/keyboard/src/AndroidKeyboard/Keyboard.scss +140 -0
- package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.1080.scss +2 -0
- package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.animated.1080.scss +3 -0
- package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.animated.scss +3 -0
- package/packages/keyboard/src/AndroidKeyboard/Keyboard.styles.scss +2 -0
- package/packages/keyboard/src/AndroidKeyboard/Keyboard.tsx +228 -0
- package/packages/keyboard/src/AndroidKeyboard/_animated.scss +7 -0
- package/packages/keyboard/src/AndroidKeyboard/_sizes.1080.scss +15 -0
- package/packages/keyboard/src/AndroidKeyboard/_sizes.scss +15 -0
- package/packages/keyboard/src/AndroidKeyboard/icons/arrow_left.svg +7 -0
- package/packages/keyboard/src/AndroidKeyboard/icons/arrow_right.svg +7 -0
- package/packages/keyboard/src/AndroidKeyboard/icons/key_backspace.svg +13 -0
- package/packages/keyboard/src/AndroidKeyboard/index.ts +1 -0
- package/packages/keyboard/src/AndroidKeyboard/makeLayout.ts +19 -0
- package/packages/keyboard/src/Backdrop/Backdrop.scss +15 -0
- package/packages/keyboard/src/Backdrop/Backdrop.styles.1080.scss +2 -0
- package/packages/keyboard/src/Backdrop/Backdrop.styles.scss +2 -0
- package/packages/keyboard/src/Backdrop/Backdrop.tsx +31 -0
- package/packages/keyboard/src/Backdrop/_sizes.1080.scss +2 -0
- package/packages/keyboard/src/Backdrop/_sizes.scss +2 -0
- package/packages/keyboard/src/DefaultKeyboard/Keyboard.scss +73 -0
- package/packages/keyboard/src/DefaultKeyboard/Keyboard.styles.1080.scss +2 -0
- package/packages/keyboard/src/DefaultKeyboard/Keyboard.styles.scss +2 -0
- package/packages/keyboard/src/DefaultKeyboard/Keyboard.tsx +154 -0
- package/packages/keyboard/src/DefaultKeyboard/_sizes.1080.scss +12 -0
- package/packages/keyboard/src/DefaultKeyboard/_sizes.scss +12 -0
- package/packages/keyboard/src/DefaultKeyboard/index.ts +1 -0
- package/packages/keyboard/src/KeyboardBase.tsx +325 -0
- package/packages/keyboard/src/MobiKeyboard/Keyboard.scss +180 -0
- package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.1080.scss +2 -0
- package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.animated.1080.scss +3 -0
- package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.animated.scss +3 -0
- package/packages/keyboard/src/MobiKeyboard/Keyboard.styles.scss +2 -0
- package/packages/keyboard/src/MobiKeyboard/Keyboard.tsx +267 -0
- package/packages/keyboard/src/MobiKeyboard/_animated.scss +7 -0
- package/packages/keyboard/src/MobiKeyboard/_sizes.1080.scss +10 -0
- package/packages/keyboard/src/MobiKeyboard/_sizes.scss +10 -0
- package/packages/keyboard/src/MobiKeyboard/icons/arrow_left.svg +7 -0
- package/packages/keyboard/src/MobiKeyboard/icons/arrow_right.svg +7 -0
- package/packages/keyboard/src/MobiKeyboard/icons/key_backspace.svg +13 -0
- package/packages/keyboard/src/MobiKeyboard/icons/key_space.svg +7 -0
- package/packages/keyboard/src/MobiKeyboard/index.ts +1 -0
- package/packages/keyboard/src/MobiKeyboard/utils.ts +19 -0
- package/packages/keyboard/src/QwertyKeyboardBase/QwertyKeyboardBase.tsx +54 -0
- package/packages/keyboard/src/ShiftMode.ts +25 -0
- package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.scss +159 -0
- package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.styles.1080.scss +2 -0
- package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.styles.scss +2 -0
- package/packages/keyboard/src/WhitelabelKeyboard/Keyboard.tsx +354 -0
- package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/_sizes.1080.scss +7 -0
- package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/_sizes.scss +7 -0
- package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/index.ts +1 -0
- package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.scss +77 -0
- package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.styles.1080.scss +2 -0
- package/packages/keyboard/src/WhitelabelKeyboard/WhitelabelStyles/whitelabel.styles.scss +2 -0
- package/packages/keyboard/src/WhitelabelKeyboard/_sizes.1080.scss +31 -0
- package/packages/keyboard/src/WhitelabelKeyboard/_sizes.scss +31 -0
- package/packages/keyboard/src/WhitelabelKeyboard/focusMatrix.ts +19 -0
- package/packages/keyboard/src/WhitelabelKeyboard/icons/arrow_left.svg +10 -0
- package/packages/keyboard/src/WhitelabelKeyboard/icons/arrow_right.svg +10 -0
- package/packages/keyboard/src/WhitelabelKeyboard/icons/key_backspace.svg +10 -0
- package/packages/keyboard/src/WhitelabelKeyboard/icons/key_shift.svg +10 -0
- package/packages/keyboard/src/WhitelabelKeyboard/icons/key_shift_active.svg +10 -0
- package/packages/keyboard/src/WhitelabelKeyboard/index.ts +2 -0
- package/packages/keyboard/src/WhitelabelKeyboard/types.ts +8 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.scss +105 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.styles.1080.scss +2 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.styles.scss +2 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/NumericKeyboard.tsx +158 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/_sizes.1080.scss +7 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/_sizes.scss +7 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/index.ts +1 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.scss +62 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.styles.1080.scss +2 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/WhitelabelStyles/whitelabel.styles.scss +2 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/_sizes.1080.scss +29 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/_sizes.scss +29 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/icons/key_backspace.svg +10 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/index.ts +2 -0
- package/packages/keyboard/src/WhitelabelNumericKeyboard/layout.ts +14 -0
- package/packages/keyboard/src/hwKeyboardEventToChar.ts +11 -0
- package/packages/keyboard/src/types/index.ts +11 -0
- package/packages/l10n/README.md +102 -0
- package/packages/l10n/interface.ts +1 -0
- package/packages/l10n/locales/cs.ts +4 -0
- package/packages/l10n/locales/en-001.ts +4 -0
- package/packages/l10n/locales/en-us.ts +4 -0
- package/packages/l10n/src/Locale.tsx +44 -0
- package/packages/l10n/src/date/common.ts +153 -0
- package/packages/l10n/src/date/cs.ts +95 -0
- package/packages/l10n/src/date/en-001.ts +76 -0
- package/packages/l10n/src/date/en-common.ts +54 -0
- package/packages/l10n/src/date/en-us.ts +83 -0
- package/packages/l10n/src/date/iso.ts +64 -0
- package/packages/l10n/src/date/types.ts +47 -0
- package/packages/l10n/src/index.ts +2 -0
- package/packages/l10n/src/l10n.ts +54 -0
- package/packages/l10n/src/types.ts +22 -0
- package/packages/list/AttachDetachItem/README.md +128 -0
- package/packages/list/AttachDetachItem/index.ts +3 -0
- package/packages/list/BasicList/README.md +71 -0
- package/packages/list/BasicList/examples/example1.gif +0 -0
- package/packages/list/BasicList/examples/example2.gif +0 -0
- package/packages/list/BasicList/index.ts +1 -0
- package/packages/list/CenteredList/README.md +42 -0
- package/packages/list/CenteredList/examples/example1.gif +0 -0
- package/packages/list/CenteredList/index.ts +1 -0
- package/packages/list/EdgeOffsetList/README.md +58 -0
- package/packages/list/EdgeOffsetList/examples/example1.gif +0 -0
- package/packages/list/EdgeOffsetList/examples/example2.gif +0 -0
- package/packages/list/EdgeOffsetList/index.ts +1 -0
- package/packages/list/FirstOnlyList/README.md +39 -0
- package/packages/list/FirstOnlyList/examples/example1.gif +0 -0
- package/packages/list/FirstOnlyList/index.ts +1 -0
- package/packages/list/FirstOnlyVariedList/README.md +105 -0
- package/packages/list/FirstOnlyVariedList/index.ts +1 -0
- package/packages/list/FixedToEndList/README.md +42 -0
- package/packages/list/FixedToEndList/examples/example1.gif +0 -0
- package/packages/list/FixedToEndList/index.ts +1 -0
- package/packages/list/Item/index.ts +1 -0
- package/packages/list/README.md +176 -0
- package/packages/list/src/AttachDetachItem/AttachDetachItem.tsx +96 -0
- package/packages/list/src/AttachDetachItem/prepareAttachDetachItemData.ts +13 -0
- package/packages/list/src/Base/Base.mouse.tsx +28 -0
- package/packages/list/src/Base/Base.tsx +355 -0
- package/packages/list/src/Base/index.tizen.tv.ts +1 -0
- package/packages/list/src/Base/index.ts +1 -0
- package/packages/list/src/Base/index.webos.tv.ts +1 -0
- package/packages/list/src/Base/index.webtv.ts +1 -0
- package/packages/list/src/BasicList/BasicList.tsx +175 -0
- package/packages/list/src/BasicList/config.ts +13 -0
- package/packages/list/src/CenteredList/CenteredList.tsx +116 -0
- package/packages/list/src/CenteredList/config.ts +13 -0
- package/packages/list/src/CenteredList/controller.ts +47 -0
- package/packages/list/src/CenteredList/interface.ts +10 -0
- package/packages/list/src/EdgeOffsetList/EdgeOffsetList.tsx +172 -0
- package/packages/list/src/EdgeOffsetList/config.ts +13 -0
- package/packages/list/src/FastFocusingOptimizer/FastFocusingOptimizer.ts +54 -0
- package/packages/list/src/FirstOnlyList/FirstOnlyList.tsx +122 -0
- package/packages/list/src/FirstOnlyList/config.ts +13 -0
- package/packages/list/src/FirstOnlyList/controller.ts +11 -0
- package/packages/list/src/FirstOnlyVariedList/FirstOnlyVariedList.tsx +132 -0
- package/packages/list/src/FirstOnlyVariedList/config.ts +13 -0
- package/packages/list/src/FixedToEndList/FixedToEndList.tsx +125 -0
- package/packages/list/src/FixedToEndList/config.ts +13 -0
- package/packages/list/src/FixedToEndList/controller.ts +44 -0
- package/packages/list/src/UnifiedListController/UnifiedListController.ts +254 -0
- package/packages/list/src/UnifiedListController/UnifiedListControllerBase.ts +241 -0
- package/packages/list/src/UnifiedListController/UnifiedVariedListController.ts +241 -0
- package/packages/list/src/UnifiedListController/interface.ts +81 -0
- package/packages/list/src/__test__/utils.spec.ts +59 -0
- package/packages/list/src/animate.animated.ts +1 -0
- package/packages/list/src/animate.ts +1 -0
- package/packages/list/src/index.ts +1 -0
- package/packages/list/src/interface.ts +41 -0
- package/packages/list/src/mocks/index.tsx +55 -0
- package/packages/list/src/types.ts +120 -0
- package/packages/list/src/utils.ts +142 -0
- package/packages/logger/README.md +117 -0
- package/packages/logger/src/LoggerManager.ts +60 -0
- package/packages/logger/src/LoggerService.ts +43 -0
- package/packages/logger/src/index.ts +3 -0
- package/packages/logger/src/loggers/ConsoleLogger/ConsoleLogger.ts +51 -0
- package/packages/logger/src/loggers/ConsoleLogger/README.md +39 -0
- package/packages/logger/src/loggers/ConsoleLogger/index.ts +1 -0
- package/packages/logger/src/loggers/LoggerBase/LoggerBase.ts +67 -0
- package/packages/logger/src/loggers/LoggerBase/README.md +69 -0
- package/packages/logger/src/loggers/LoggerBase/index.ts +1 -0
- package/packages/logger/src/loggers/SentryLogger/README.md +98 -0
- package/packages/logger/src/loggers/SentryLogger/Sentry.ts +1 -0
- package/packages/logger/src/loggers/SentryLogger/SentryLogger.ts +179 -0
- package/packages/logger/src/loggers/SentryLogger/index.ts +2 -0
- package/packages/logger/src/loggers/index.ts +2 -0
- package/packages/logger/src/types.ts +46 -0
- package/packages/lottie-animations/README.md +217 -0
- package/packages/lottie-animations/src/LottieAnimation.tsx +125 -0
- package/packages/lottie-animations/src/index.ts +7 -0
- package/packages/menu/README.md +90 -0
- package/packages/menu/WhitelabelMenu/index.ts +1 -0
- package/packages/menu/WhitelabelMenu/interface.ts +2 -0
- package/packages/menu/WhitelabelMenu/styles.ts +2 -0
- package/packages/menu/interface.ts +3 -0
- package/packages/menu/src/MenuAndContentContainer/MenuAndContentContainer.tsx +166 -0
- package/packages/menu/src/MenuAndContentContainer/index.ts +1 -0
- package/packages/menu/src/MenuAndContentContainer/interface.ts +164 -0
- package/packages/menu/src/MenuAndContentContainer/service.ts +5 -0
- package/packages/menu/src/WhitelabelMenu/SideMenu.scss +41 -0
- package/packages/menu/src/WhitelabelMenu/SideMenu.styles.1080.scss +2 -0
- package/packages/menu/src/WhitelabelMenu/SideMenu.styles.animated.1080.scss +3 -0
- package/packages/menu/src/WhitelabelMenu/SideMenu.styles.animated.scss +3 -0
- package/packages/menu/src/WhitelabelMenu/SideMenu.styles.scss +2 -0
- package/packages/menu/src/WhitelabelMenu/SideMenu.tsx +248 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.scss +56 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.1080.scss +2 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.animated.1080.scss +3 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.animated.scss +3 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.styles.scss +2 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/SideMenuItem.tsx +78 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/_animated.scss +12 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/_sizes.1080.scss +17 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/_sizes.scss +17 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/index.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/interface.ts +49 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/rtl.scss +12 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/sizes.1080.ts +2 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/sizes.ts +2 -0
- package/packages/menu/src/WhitelabelMenu/SideMenuItem/styles.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/VisualController.animated.ts +48 -0
- package/packages/menu/src/WhitelabelMenu/VisualController.ts +20 -0
- package/packages/menu/src/WhitelabelMenu/VisualControllerBase.ts +71 -0
- package/packages/menu/src/WhitelabelMenu/_animated.scss +39 -0
- package/packages/menu/src/WhitelabelMenu/_sizes.1080.scss +14 -0
- package/packages/menu/src/WhitelabelMenu/_sizes.scss +14 -0
- package/packages/menu/src/WhitelabelMenu/assets/shadow.1080.png +0 -0
- package/packages/menu/src/WhitelabelMenu/assets/shadow.720.png +0 -0
- package/packages/menu/src/WhitelabelMenu/constants.animated.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/constants.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/index.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/interface.ts +14 -0
- package/packages/menu/src/WhitelabelMenu/rtl.scss +22 -0
- package/packages/menu/src/WhitelabelMenu/sizes.1080.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/sizes.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/styles.ts +1 -0
- package/packages/menu/src/WhitelabelMenu/utils.ts +34 -0
- package/packages/menu/src/index.ts +2 -0
- package/packages/modal-service/README.md +48 -0
- package/packages/modal-service/src/IModal.ts +3 -0
- package/packages/modal-service/src/ModalService.scss +7 -0
- package/packages/modal-service/src/ModalService.styles.1080.scss +2 -0
- package/packages/modal-service/src/ModalService.styles.scss +2 -0
- package/packages/modal-service/src/ModalService.tsx +76 -0
- package/packages/modal-service/src/_sizes.1080.scss +2 -0
- package/packages/modal-service/src/_sizes.scss +2 -0
- package/packages/modal-service/src/index.ts +2 -0
- package/packages/mouse-navigation/README.md +105 -0
- package/packages/mouse-navigation/src/ArrowNavigation/Arrow.tsx +58 -0
- package/packages/mouse-navigation/src/ArrowNavigation/ArrowNavigation.tsx +95 -0
- package/packages/mouse-navigation/src/ArrowNavigation/__test__/Arrow.spec.tsx +35 -0
- package/packages/mouse-navigation/src/ArrowNavigation/__test__/ArrowNavigation.spec.tsx +45 -0
- package/packages/mouse-navigation/src/ArrowNavigation/index.tsx +1 -0
- package/packages/mouse-navigation/src/MouseElementWrapper.tsx +70 -0
- package/packages/mouse-navigation/src/MouseNavigation.tsx +139 -0
- package/packages/mouse-navigation/src/MouseNavigationInterface.ts +8 -0
- package/packages/mouse-navigation/src/__test__/MouseElementWrapper.spec.tsx +61 -0
- package/packages/mouse-navigation/src/__test__/MouseNavigation.spec.tsx +107 -0
- package/packages/mouse-navigation/src/index.ts +3 -0
- package/packages/numeric-zapper/README.md +153 -0
- package/packages/numeric-zapper/src/NumericZapper.scss +20 -0
- package/packages/numeric-zapper/src/NumericZapper.styles.1080.scss +2 -0
- package/packages/numeric-zapper/src/NumericZapper.styles.scss +2 -0
- package/packages/numeric-zapper/src/NumericZapper.tsx +256 -0
- package/packages/numeric-zapper/src/ZapperAllower.ts +15 -0
- package/packages/numeric-zapper/src/ZapperService.tsx +8 -0
- package/packages/numeric-zapper/src/_sizes.1080.scss +7 -0
- package/packages/numeric-zapper/src/_sizes.scss +7 -0
- package/packages/numeric-zapper/src/index.ts +4 -0
- package/packages/numeric-zapper/src/interface.ts +1 -0
- package/packages/numeric-zapper/src/styles.ts +1 -0
- package/packages/perf-utils/README.md +127 -0
- package/packages/perf-utils/src/array/filter.ts +54 -0
- package/packages/perf-utils/src/array/find.ts +43 -0
- package/packages/perf-utils/src/array/findIndex.ts +43 -0
- package/packages/perf-utils/src/array/forEach.ts +48 -0
- package/packages/perf-utils/src/array/includes.ts +41 -0
- package/packages/perf-utils/src/array/includesNaN.ts +32 -0
- package/packages/perf-utils/src/array/index.ts +7 -0
- package/packages/perf-utils/src/array/map.ts +52 -0
- package/packages/picker/README.md +70 -0
- package/packages/picker/src/DatePicker.tsx +55 -0
- package/packages/picker/src/ModalPicker/Checkbox.tsx +38 -0
- package/packages/picker/src/ModalPicker/PickerItem.tsx +86 -0
- package/packages/picker/src/ModalPicker/PickerModal.tsx +98 -0
- package/packages/picker/src/ModalPicker/index.ts +1 -0
- package/packages/picker/src/ModalPicker/modalPicker.tsx +48 -0
- package/packages/picker/src/Picker.tsx +127 -0
- package/packages/picker/src/index.ts +3 -0
- package/packages/picker/src/types.ts +25 -0
- package/packages/pin-input/README.md +55 -0
- package/packages/pin-input/src/PinInput.scss +5 -0
- package/packages/pin-input/src/PinInput.tsx +169 -0
- package/packages/pin-input/src/index.ts +1 -0
- package/packages/player-ui/README.md +207 -0
- package/packages/player-ui/src/BackwardButton.tsx +41 -0
- package/packages/player-ui/src/CurrentTime.tsx +56 -0
- package/packages/player-ui/src/Duration.tsx +60 -0
- package/packages/player-ui/src/ForwardButton.tsx +41 -0
- package/packages/player-ui/src/PauseButton.tsx +57 -0
- package/packages/player-ui/src/PlayButton.tsx +57 -0
- package/packages/player-ui/src/PlayPauseButton.tsx +63 -0
- package/packages/player-ui/src/PlayerInteractable.tsx +66 -0
- package/packages/player-ui/src/PlayerTime.tsx +55 -0
- package/packages/player-ui/src/PlayerUI.tsx +238 -0
- package/packages/player-ui/src/RemainingTime.tsx +74 -0
- package/packages/player-ui/src/Seekbar.tsx +184 -0
- package/packages/player-ui/src/Seeking.ts +122 -0
- package/packages/player-ui/src/StopButton.tsx +35 -0
- package/packages/player-ui/src/Subtitles.tsx +151 -0
- package/packages/player-ui/src/index.ts +14 -0
- package/packages/player-ui/src/mocks.ts +41 -0
- package/packages/player-ui/src/timeUtils.ts +139 -0
- package/packages/player-ui/src/types.ts +42 -0
- package/packages/progress-bar/README.md +31 -0
- package/packages/progress-bar/src/ProgressBar.tsx +41 -0
- package/packages/progress-bar/src/index.ts +1 -0
- package/packages/progress-bar/src/interface.ts +14 -0
- package/packages/qr-code/README.md +80 -0
- package/packages/qr-code/src/QRCode.tsx +39 -0
- package/packages/qr-code/src/index.ts +2 -0
- package/packages/qr-code/src/qrGenerator/__external__/constants.ts +23 -0
- package/packages/qr-code/src/qrGenerator/__external__/qrcode.d.ts +31 -0
- package/packages/qr-code/src/qrGenerator/__external__/qrcode.js +618 -0
- package/packages/qr-code/src/qrGenerator/generateQr.ts +7 -0
- package/packages/qr-code/src/qrGenerator/index.ts +3 -0
- package/packages/router/README.md +163 -0
- package/packages/router/src/Route.tsx +132 -0
- package/packages/router/src/Router.tsx +174 -0
- package/packages/router/src/focusActiveRoute.ts +5 -0
- package/packages/router/src/history.ts +24 -0
- package/packages/router/src/index.ts +5 -0
- package/packages/router/src/types.ts +13 -0
- package/packages/router/src/utils.ts +24 -0
- package/packages/runtime-config/README.md +37 -0
- package/packages/runtime-config/src/Config.ts +44 -0
- package/packages/runtime-config/src/index.ts +1 -0
- package/packages/sass-utils/README.md +197 -0
- package/packages/sass-utils/src/box-shadow.scss +5 -0
- package/packages/sass-utils/src/ellipsis.scss +15 -0
- package/packages/sass-utils/src/linear-gradient.scss +43 -0
- package/packages/sass-utils/src/prefix-property.scss +7 -0
- package/packages/sass-utils/src/prefix-value.scss +6 -0
- package/packages/sass-utils/src/prefix.scss +6 -0
- package/packages/sass-utils/src/scale.1080.scss +3 -0
- package/packages/sass-utils/src/scale.720.scss +5 -0
- package/packages/sass-utils/src/transform.scss +5 -0
- package/packages/sass-utils/src/transition.scss +6 -0
- package/packages/scheduler/README.md +55 -0
- package/packages/scheduler/src/Scheduler.ts +43 -0
- package/packages/scheduler/src/Task.ts +72 -0
- package/packages/scheduler/src/index.ts +4 -0
- package/packages/scheduler/src/timeProvider.ts +3 -0
- package/packages/scroll-text/README.md +78 -0
- package/packages/scroll-text/src/Base.tsx +141 -0
- package/packages/scroll-text/src/ScrollText.animated.tsx +80 -0
- package/packages/scroll-text/src/ScrollText.tsx +53 -0
- package/packages/scroll-text/src/ScrollTextBaseClass.tsx +86 -0
- package/packages/scroll-text/src/index.ts +1 -0
- package/packages/scroller/README.md +77 -0
- package/packages/scroller/src/Scroller.tsx +51 -0
- package/packages/scroller/src/index.ts +1 -0
- package/packages/splash/AnimatedSplash.ts +1 -0
- package/packages/splash/AnimatedSplashAnimated.ts +1 -0
- package/packages/splash/AnimatedSplashBasic.ts +1 -0
- package/packages/splash/AutomaticSplashAnimated.ts +1 -0
- package/packages/splash/AutomaticSplashBasic.ts +1 -0
- package/packages/splash/README.md +93 -0
- package/packages/splash/StaticSplash.ts +1 -0
- package/packages/splash/StaticSplashAnimated.ts +1 -0
- package/packages/splash/StaticSplashBasic.ts +1 -0
- package/packages/splash/src/AnimatedSplash.animated.tsx +78 -0
- package/packages/splash/src/AnimatedSplash.basic.tsx +37 -0
- package/packages/splash/src/AutomaticSplash.animated.tsx +20 -0
- package/packages/splash/src/AutomaticSplash.basic.tsx +20 -0
- package/packages/splash/src/Splash.scss +8 -0
- package/packages/splash/src/StaticSplash.animated.tsx +48 -0
- package/packages/splash/src/StaticSplash.basic.tsx +26 -0
- package/packages/splash/src/index.animated.ts +1 -0
- package/packages/splash/src/index.ts +1 -0
- package/packages/splash/src/styles.ts +1 -0
- package/packages/splash/src/types.ts +20 -0
- package/packages/storage/README.md +61 -0
- package/packages/storage/src/CookieStorage/CookieStorage.ts +57 -0
- package/packages/storage/src/CookieStorage/index.ts +1 -0
- package/packages/storage/src/LocalStorage/LocalStorage.ts +58 -0
- package/packages/storage/src/LocalStorage/index.ts +1 -0
- package/packages/storage/src/index.ts +2 -0
- package/packages/storage/src/shared.ts +41 -0
- package/packages/storage/src/types.ts +33 -0
- package/packages/throbber/README.md +53 -0
- package/packages/throbber/src/Throbber.scss +52 -0
- package/packages/throbber/src/Throbber.tsx +19 -0
- package/packages/throbber/src/ThrobberService.tsx +55 -0
- package/packages/throbber/src/controlsHandling.ts +14 -0
- package/packages/throbber/src/index.ts +2 -0
- package/packages/time/README.md +113 -0
- package/packages/time/src/Time.ts +245 -0
- package/packages/time/src/adapters/worldTimeApi.ts +74 -0
- package/packages/time/src/constants.ts +13 -0
- package/packages/time/src/index.ts +1 -0
- package/packages/time/src/services/worldTimeApi/index.ts +7 -0
- package/packages/time/src/services/worldTimeApi/types.ts +75 -0
- package/packages/time/src/services/worldTimeApi/worldTimeApi.ts +77 -0
- package/packages/time/src/types.ts +39 -0
- package/packages/time/src/utils.ts +79 -0
- package/packages/toast/README.md +116 -0
- package/packages/toast/src/Toast/IVisualController.ts +7 -0
- package/packages/toast/src/Toast/Toast.scss +22 -0
- package/packages/toast/src/Toast/Toast.styles.1080.scss +2 -0
- package/packages/toast/src/Toast/Toast.styles.scss +2 -0
- package/packages/toast/src/Toast/Toast.tsx +83 -0
- package/packages/toast/src/Toast/VisualController.animated.ts +20 -0
- package/packages/toast/src/Toast/VisualController.ts +9 -0
- package/packages/toast/src/Toast/_sizes.1080.scss +8 -0
- package/packages/toast/src/Toast/_sizes.scss +8 -0
- package/packages/toast/src/Toast/index.ts +2 -0
- package/packages/toast/src/Toast/styles.ts +1 -0
- package/packages/toast/src/ToastService.scss +7 -0
- package/packages/toast/src/ToastService.styles.1080.scss +2 -0
- package/packages/toast/src/ToastService.styles.scss +2 -0
- package/packages/toast/src/ToastService.tsx +48 -0
- package/packages/toast/src/_sizes.1080.scss +2 -0
- package/packages/toast/src/_sizes.scss +2 -0
- package/packages/toast/src/index.ts +4 -0
- package/packages/toast/src/types.ts +4 -0
- package/packages/types-bigscreen-jsx/README.md +11 -0
- package/packages/types-bigscreen-jsx/global.d.ts +155 -0
- package/packages/types-bigscreen-jsx/index.d.ts +3323 -0
- package/packages/types-bigscreen-jsx/index.js +0 -0
- package/packages/types-bigscreen-jsx/src/copyTypes.js +14 -0
- package/packages/volume-control/README.md +79 -0
- package/packages/volume-control/src/IVolumeControlUI.ts +26 -0
- package/packages/volume-control/src/VolumeControlService.tsx +110 -0
- package/packages/volume-control/src/VolumeControlUI/VisualController.animated.ts +28 -0
- package/packages/volume-control/src/VolumeControlUI/VisualController.ts +3 -0
- package/packages/volume-control/src/VolumeControlUI/VisualControllerBase.ts +26 -0
- package/packages/volume-control/src/VolumeControlUI/VolumeControl.scss +18 -0
- package/packages/volume-control/src/VolumeControlUI/VolumeControl.styles.animated.scss +2 -0
- package/packages/volume-control/src/VolumeControlUI/VolumeControl.styles.scss +1 -0
- package/packages/volume-control/src/VolumeControlUI/VolumeControlUI.tsx +80 -0
- package/packages/volume-control/src/VolumeControlUI/_animated.scss +8 -0
- package/packages/volume-control/src/VolumeControlUI/index.ts +1 -0
- package/packages/volume-control/src/index.ts +2 -0
- package/packages/zapping/README.md +88 -0
- package/packages/zapping/src/ChannelZapping.ts +134 -0
- package/packages/zapping/src/Zapping.tsx +105 -0
- package/packages/zapping/src/index.ts +1 -0
- package/packages/zapping/src/interface.ts +1 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: AttachDetachItem
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: AttachDetachItem
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# AttachDetachItem
|
|
9
|
+
This is a wrapper item that is used when you don't want to use `updateData` method on items, but instead,
|
|
10
|
+
you want to render the item only once during the list's lifetime. The most common use case is when you
|
|
11
|
+
need to have more complex items in the list such as other List components (e.g. Home scene).
|
|
12
|
+
Rendered item is then attached or detached by the list during scrolling when it's needed.
|
|
13
|
+
|
|
14
|
+
## Item Specific Props
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
type Props<T extends AttachDetachItemData<any, any>> = {
|
|
18
|
+
data: T,
|
|
19
|
+
index: number,
|
|
20
|
+
children: (data: T['data'], index: number, ref: T['ref']) => JSX.Element,
|
|
21
|
+
className?: string,
|
|
22
|
+
};
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Interfaces
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
type AttachDetachItemData<T, U> = {
|
|
29
|
+
data: U,
|
|
30
|
+
ref: Reference<T>,
|
|
31
|
+
isFastScrolling: boolean,
|
|
32
|
+
node?: HTMLElement,
|
|
33
|
+
};
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Usage
|
|
37
|
+
First you need to wrap your original list types with `AttachDetachItemData` type. It is because you need to provide
|
|
38
|
+
to your list another layer of additional information, where the references and rendered items are stored.
|
|
39
|
+
|
|
40
|
+
### Defining data types
|
|
41
|
+
Lets assume that this is our original list, where `Teaser` is an item and `Asset` is the type of your data inserted into the list:
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
type MyCustomList = BasicList<Teaser, Asset>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Now, the `Teaser` and `Asset` are the T and U types of the `AttachDetachItemData` type. This represents our wrapped list data.
|
|
48
|
+
We also need to define, what type would be the actual item. For simplifying we will use two types `ListData` and `ListItem`.
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
type ListData = AttachDetachItemData<Teaser, Asset>;
|
|
52
|
+
type ListItem = AttachDetachItem<ListData>;
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Now we can define our new list type, which uses `AttachDetachItem`:
|
|
56
|
+
|
|
57
|
+
```ts
|
|
58
|
+
type MyCustomList = BasicList<ListItem, ListData>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
or without support types like this:
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
type MyCustomList = BasicList<AttachDetachItem<AttachDetachItemData<Teaser, Asset>>, AttachDetachItemData<Teaser, Asset>>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Preparing data
|
|
68
|
+
Next we need to prepare our data. It basically means that we will create a list of `ListData` type, where would be our references and
|
|
69
|
+
rendered items stored. For this procedure, there is a function `prepareAttachDetachItemData` from the AttachDetachItem item package.
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
function prepareAttachDetachItemData<T, U>(data: U[]): AttachDetachItemData<T, U>[]
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
const preparedData = prepareAttachDetachItemData<Teaser, Asset>(models) as ListData[];
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
this step will wrap our original data like this:
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
[
|
|
83
|
+
{
|
|
84
|
+
data: <original data on index 0>,
|
|
85
|
+
ref: { current: null },
|
|
86
|
+
isFastScrolling: false,
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
data: <original data on index 1>,
|
|
90
|
+
ref: { current: null },
|
|
91
|
+
isFastScrolling: false,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
data: <original data on index 2>,
|
|
95
|
+
ref: { current: null },
|
|
96
|
+
isFastScrolling: false,
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
data: <original data on index 3>,
|
|
100
|
+
ref: { current: null },
|
|
101
|
+
isFastScrolling: false,
|
|
102
|
+
}
|
|
103
|
+
]
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
This structure is ready to be used instead of the original data in the list.
|
|
107
|
+
|
|
108
|
+
### Wrapping the original item
|
|
109
|
+
Final step is to wrap our original list item with `AttachDetachItem` in the `renderItem` method of the list.
|
|
110
|
+
AttachDetachItem as its children prop takes function for rendering the actual original item.
|
|
111
|
+
|
|
112
|
+
```tsx
|
|
113
|
+
renderItem: (data: ListData, index: number, ref: Reference<ListItem>) => (
|
|
114
|
+
<AttachDetachItem
|
|
115
|
+
data={data}
|
|
116
|
+
index={index}
|
|
117
|
+
ref={ref}
|
|
118
|
+
className="stack-panel-item"
|
|
119
|
+
>
|
|
120
|
+
{(asset: Asset, index: number, itemRef: Reference<Teaser>) => (
|
|
121
|
+
<Teaser
|
|
122
|
+
model={asset}
|
|
123
|
+
ref={itemRef}
|
|
124
|
+
/>
|
|
125
|
+
)}
|
|
126
|
+
</AttachDetachItem>
|
|
127
|
+
)
|
|
128
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: BasicList
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: BasicList
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# BasicList
|
|
9
|
+
Basic List is a type of list that prefers moving the focus first and only after the focus reaches the last fully visible item
|
|
10
|
+
it starts scrolling and keeping the focus at the same position (on the edge).
|
|
11
|
+
|
|
12
|
+
## List Specific Props
|
|
13
|
+
- `firstScrollStep` - value in pixels to move on the first scroll
|
|
14
|
+
- `scrollStep` - value to move on other scrolls (should be equal to item width + its spacing)
|
|
15
|
+
|
|
16
|
+
## Default Animation Configuration
|
|
17
|
+
- normal: 700ms with easeOutQuart
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
Most of the use cases of the Basic List are that you have an N amount of fully visible items and navigatable items.
|
|
22
|
+
Then you also have 2 partially visible items (1 on each side) to indicate the possibility to scroll in that direction.
|
|
23
|
+
|
|
24
|
+
Therefore you usually set visible items to the number of fully visible (=== navigatable) items + 2.
|
|
25
|
+
|
|
26
|
+
There can be cases when you do not indicate the possibility to scroll with a partial item but with some other technique (e.g. an arrow).
|
|
27
|
+
For this case see Example 2
|
|
28
|
+
|
|
29
|
+
## Examples
|
|
30
|
+
|
|
31
|
+
### Example 1
|
|
32
|
+
Probably the most common usage of the BasicList.
|
|
33
|
+
- `firstScrollStep` is slightly smaller to keep the first item partially visible.
|
|
34
|
+
- `scrollStep` is equal to an item width + the space between two items
|
|
35
|
+
- `visibleItems` is set to 5 because there can be 5 visible items (3 fully visible and navigatable and 2 partially visible)
|
|
36
|
+
```tsx
|
|
37
|
+
<BasicList
|
|
38
|
+
data={[1, 2, 3, 4, 5]}
|
|
39
|
+
renderItem={(item: number, index, ref) => (
|
|
40
|
+
<Item title={item} ref={ref} />
|
|
41
|
+
)}
|
|
42
|
+
visibleItems={5}
|
|
43
|
+
firstScrollStep={280}
|
|
44
|
+
scrollStep={300}
|
|
45
|
+
horizontal
|
|
46
|
+
/>
|
|
47
|
+
```
|
|
48
|
+

|
|
49
|
+
|
|
50
|
+
### Example 2
|
|
51
|
+
This example shows how to use BasicList when you have some other way to indicate scrolling.
|
|
52
|
+
- `firstScrollStep` is equal to `scrollStep`
|
|
53
|
+
- `scrollStep` is equal to an item width + the space between two items
|
|
54
|
+
- `visibleItems` is set to 6 (4 fully visible and navigatable + 2)
|
|
55
|
+
|
|
56
|
+
To better understand why it needs to be 6 here. Imagine that each item would be 1px narrower. Then the 1st and the last items would become partial indicators thus increasing the number of maximal visible items to 6.
|
|
57
|
+
|
|
58
|
+
This is a quiet an edge case. But this setting will also solve preload of image for you.
|
|
59
|
+
```tsx
|
|
60
|
+
<BasicList
|
|
61
|
+
data={[1, 2, 3, 4, 5, 6]}
|
|
62
|
+
renderItem={(item: number, index, ref) => (
|
|
63
|
+
<Item title={item} ref={ref} />
|
|
64
|
+
)}
|
|
65
|
+
visibleItems={6}
|
|
66
|
+
firstScrollStep={316}
|
|
67
|
+
scrollStep={316}
|
|
68
|
+
horizontal
|
|
69
|
+
>
|
|
70
|
+
```
|
|
71
|
+

|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { BasicList } from '../src/BasicList/BasicList';
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: CenteredList
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: CenteredList
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# CenteredList
|
|
9
|
+
Centered List is a type of list that keeps the focus in the center and scroll the list underneath.
|
|
10
|
+
The center item is determined from `visibleItems`.
|
|
11
|
+
If `visibleItems` is odd then the correct center item is used.
|
|
12
|
+
If `visibleItems` is even then the "closer to the start" center item is used.
|
|
13
|
+
|
|
14
|
+
## List Specific Props
|
|
15
|
+
- `scrollStep` - value to move on scrolls (should be equal to item width + its spacing)
|
|
16
|
+
|
|
17
|
+
## Default Animation Configuration
|
|
18
|
+
- normal: 700ms with easeOutQuart
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
Most of the use cases are that you keep the focus in the center of the screen and you scroll the list
|
|
22
|
+
underneath this focus. Something like Time/Date selector in iOS.
|
|
23
|
+
|
|
24
|
+
## Examples
|
|
25
|
+
|
|
26
|
+
### Example 1
|
|
27
|
+
Probably the most common usage of the CenteredList.
|
|
28
|
+
- `scrollStep` is equal to an item width + the space between two items
|
|
29
|
+
- `visibleItems` is set to 5 because there can be 5 visible items (3 fully visible and 2 partially visible)
|
|
30
|
+
```tsx
|
|
31
|
+
<CenteredList
|
|
32
|
+
data={[1, 2, 3, 4, 5]}
|
|
33
|
+
renderItem={(item: number, index, ref) => (
|
|
34
|
+
<Item title={item} ref={ref} />
|
|
35
|
+
)}
|
|
36
|
+
visibleItems={5}
|
|
37
|
+
firstScrollStep={280}
|
|
38
|
+
scrollStep={300}
|
|
39
|
+
horizontal
|
|
40
|
+
/>
|
|
41
|
+
```
|
|
42
|
+

|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { CenteredList } from '../src/CenteredList/CenteredList';
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: EdgeOffsetList
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: EdgeOffsetList
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# EdgeOffsetList
|
|
9
|
+
EdgeOffset List is a type of list that prefers moving the focus first like BasicList. Unlike in BasicList,
|
|
10
|
+
the focus stops `edgeOffset` items from the end. Then it starts scrolling and when the scroll reaches
|
|
11
|
+
the end, focus continues to the rest of the items.
|
|
12
|
+
|
|
13
|
+
## List Specific Props
|
|
14
|
+
- `edgeOffset` - number of visible items from the edge where to start scroll (defaults to 1)
|
|
15
|
+
- `scrollStep` - value to move on scrolls (should be equal to item width + its spacing)
|
|
16
|
+
|
|
17
|
+
## Default Animation Configuration
|
|
18
|
+
- normal: 700ms with easeOutQuart
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
There aren't any typical use cases for EdgeOffsetList. The only known usage at the time of writing this document is in the WL menu.
|
|
22
|
+
|
|
23
|
+
## Examples
|
|
24
|
+
|
|
25
|
+
### Example 1
|
|
26
|
+
- `edgeOffset` is omitted so it defaults to 1
|
|
27
|
+
- `scrollStep` is equal to an item width + the space between two items
|
|
28
|
+
- `visibleItems` is set to 5 because there can be 5 visible items
|
|
29
|
+
```tsx
|
|
30
|
+
<EdgeOffsetList
|
|
31
|
+
data={[1, 2, 3, 4, 5, 6, 7, 8]}
|
|
32
|
+
renderItem={(item: number, index, ref) => (
|
|
33
|
+
<Item title={item} ref={ref} />
|
|
34
|
+
)}
|
|
35
|
+
visibleItems={5}
|
|
36
|
+
scrollStep={300}
|
|
37
|
+
horizontal
|
|
38
|
+
/>
|
|
39
|
+
```
|
|
40
|
+

|
|
41
|
+
|
|
42
|
+
### Example 2
|
|
43
|
+
- `edgeOffset` is set to 2
|
|
44
|
+
- `scrollStep` is equal to an item width + the space between two items
|
|
45
|
+
- `visibleItems` is set to 5 because there can be 5 visible items
|
|
46
|
+
```tsx
|
|
47
|
+
<EdgeOffsetList
|
|
48
|
+
data={[1, 2, 3, 4, 5, 6, 7, 8]}
|
|
49
|
+
renderItem={(item: number, index, ref) => (
|
|
50
|
+
<Item title={item} ref={ref} />
|
|
51
|
+
)}
|
|
52
|
+
visibleItems={5}
|
|
53
|
+
edgeOffset={2}
|
|
54
|
+
scrollStep={300}
|
|
55
|
+
horizontal
|
|
56
|
+
/>
|
|
57
|
+
```
|
|
58
|
+

|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { EdgeOffsetList } from '../src/EdgeOffsetList/EdgeOffsetList';
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: FirstOnlyList
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: FirstOnlyList
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# FirstOnlyList
|
|
9
|
+
FirstOnly List is a type of list that keeps the focus on the first item
|
|
10
|
+
and scrolls the list underneath.
|
|
11
|
+
|
|
12
|
+
## List Specific Props
|
|
13
|
+
- `scrollStep` - value to move on scrolls (should be equal to item width + its spacing)
|
|
14
|
+
|
|
15
|
+
## Default Animation Configuration
|
|
16
|
+
- normal: 700ms with easeOutQuart
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
Most of the use cases are that you keep the focus on the first item and you scroll the list
|
|
20
|
+
underneath this focus. Something like Netflix lists.
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
### Example 1
|
|
25
|
+
Probably the most common usage of the FirstOnlyList.
|
|
26
|
+
- `scrollStep` is equal to an item width + the space between two items
|
|
27
|
+
- `visibleItems` is set to 5 because there can be 5 visible items (3 fully visible and 2 partially visible)
|
|
28
|
+
```tsx
|
|
29
|
+
<FirstOnlyList
|
|
30
|
+
data={[1, 2, 3, 4, 5]}
|
|
31
|
+
renderItem={(item: number, index, ref) => (
|
|
32
|
+
<Item title={item} ref={ref} />
|
|
33
|
+
)}
|
|
34
|
+
visibleItems={6}
|
|
35
|
+
scrollStep={300}
|
|
36
|
+
horizontal
|
|
37
|
+
/>
|
|
38
|
+
```
|
|
39
|
+

|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { FirstOnlyList } from '../src/FirstOnlyList/FirstOnlyList';
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: FirstOnlyVariedList
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: FirstOnlyVariedList
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# FirstOnlyVariedList
|
|
9
|
+
FirstOnly Varied List is a type of list component where
|
|
10
|
+
- *Varied* means list can contains items with various sizes, and
|
|
11
|
+
- *FirstOnly* means that keeps the focus on the first item
|
|
12
|
+
and scrolls the list underneath.
|
|
13
|
+
|
|
14
|
+
## Props
|
|
15
|
+
- `data`*: U[]* - Array of data items, be passed to render
|
|
16
|
+
- `renderItem`*: (item: U, index: number, ref: Reference<T>) => JSX.Element* - Function to render item in list where
|
|
17
|
+
- `item` - The data item to be rendered
|
|
18
|
+
- `index` - Index of item in the array
|
|
19
|
+
- `ref` - Reference has to be set to rendered item component
|
|
20
|
+
- `viewportSizePx`*: number* - Size of visible list area in pixels. Provide width size of viewport for horizontal list, otherwise height size.
|
|
21
|
+
- `itemsSizesPx`*: number[]* - Sizes of data items in pixels. Provide width size of items for horizontal list, otherwise height size.
|
|
22
|
+
- `visibleItems`*: number* - Number of visible items, which be rendered in list's DOM element.
|
|
23
|
+
- `extraPrevItems?`*: number* (default: `0`) - optional, Number of rendered items above visibleItems at beginning side of list.
|
|
24
|
+
- `extraNextItems?`*: number* (default: `0`) - optional, Number of rendered items above visibleItems at end side of list.
|
|
25
|
+
- `firstScrollStepPx?`*: number* (default: `0`) - optional, size in pixels applied to first scroll. Enables previous item to be partially visible in viewport while another content scrolls, should be used in combination with `extraPrevItems=1`
|
|
26
|
+
- `className?`*: string* (default: `''`) - optional, Additional class name to add to list's DOM element
|
|
27
|
+
- `horizontal?`*: boolean* (default: `false`) - optional, Flag of list orientation. `true` for horizontal, otherwise vertical.
|
|
28
|
+
- `onFocusChanged?`*: (item: Reference\<T\>, index: number) => void* - optional, Function called every time when focus of item is changed in list, where
|
|
29
|
+
- `item` - Reference to new focused item
|
|
30
|
+
- `index` - Index of item in the array
|
|
31
|
+
- `animation?`*: Partial\<AnimationConfiguration\>* - optional, [Animation configuration](../README.md#animationconfiguration) that is deep merged with default configuration of the list. Default object is:
|
|
32
|
+
- `normal`: 700ms with easeOutQuart
|
|
33
|
+
- `fast`: 100ms with easeOutQuart
|
|
34
|
+
- `normalToFast`: after 2 items with 0.65 sensitivity
|
|
35
|
+
|
|
36
|
+
## Usage
|
|
37
|
+
Most of the use cases are that you keep the focus on the first item and you scroll the list
|
|
38
|
+
underneath this focus. Something like Netflix lists.
|
|
39
|
+
|
|
40
|
+
## Examples
|
|
41
|
+
|
|
42
|
+
### Example 1
|
|
43
|
+
Probably the most common usage of the FirstOnlyVariedList.
|
|
44
|
+
```tsx
|
|
45
|
+
import { FirstOnlyVariedList } from '@24i/bigscreen-sdk/list/FirstOnlyVariedList';
|
|
46
|
+
import { calcVisibleItemCount } from '@24i/bigscreen-sdk/list/utils';
|
|
47
|
+
|
|
48
|
+
<FirstOnlyVariedList
|
|
49
|
+
data={[1, 2, 3, 4, 5]}
|
|
50
|
+
renderItem={(item: number, index, ref) => (
|
|
51
|
+
<Item title={item} ref={ref} />
|
|
52
|
+
)}
|
|
53
|
+
viewportSizePx={1280}
|
|
54
|
+
itemsSizesPx={[350, 200, 350, 200, 350]}
|
|
55
|
+
visibleItems={calcVisibleItemCount(1280, 200)} // is 7
|
|
56
|
+
horizontal
|
|
57
|
+
/>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
- `viewportSizePx` - defines size of viewport of list, area in which ensures to display items. Size should be equal to width of `.scroll-wrap` element
|
|
61
|
+
- `itemsSizesPx` - array contains width in px of items from data
|
|
62
|
+
- `visibleItems` - number of items to cover viewport area. It is set to 7 because there can be 7 visible items (5 fully visible and 2 partially visible) in case of 200px-width items.
|
|
63
|
+
To simplify determination, there is provided `calcVisibleItemCount` util function.
|
|
64
|
+
|
|
65
|
+
`calcVisibleItemCount(viewportSizePx: number, minItemSizePx: number): number`
|
|
66
|
+
- `viewportSizePx` - Size (in pixels) of viewport of list. For vertical list, use height size.
|
|
67
|
+
- `minItemSizePx` - Size (in pixels) of item in list. If list can contain items with different size, use the smallest item size.
|
|
68
|
+
|
|
69
|
+
Function returns maximum number of visible items in list viewport.
|
|
70
|
+
|
|
71
|
+
### Example 2
|
|
72
|
+
Illustrates case list keeps part-visible previous item.
|
|
73
|
+
```tsx
|
|
74
|
+
import { FirstOnlyVariedList } from '@24i/bigscreen-sdk/list/FirstOnlyVariedList';
|
|
75
|
+
import { calcVisibleItemCount } from '@24i/bigscreen-sdk/list/utils';
|
|
76
|
+
|
|
77
|
+
<FirstOnlyVariedList
|
|
78
|
+
data={[1, 2, 3, 4, 5]}
|
|
79
|
+
renderItem={(item: number, index, ref) => (
|
|
80
|
+
<Item title={item} ref={ref} />
|
|
81
|
+
)}
|
|
82
|
+
viewportSizePx={1280}
|
|
83
|
+
itemsSizesPx={[350, 200, 350, 200, 350]}
|
|
84
|
+
visibleItems={calcVisibleItemCount(1280, 200)}
|
|
85
|
+
firstScrollStepPx={300}
|
|
86
|
+
extraPrevItems={1}
|
|
87
|
+
horizontal
|
|
88
|
+
/>
|
|
89
|
+
```
|
|
90
|
+
- `firstScrollStepPx` - on first scroll, content is moved by 300px, which enables previous item to be partially visible (50px) for another content scrolls
|
|
91
|
+
- `extraPrevItems` - is set to 1, to keep one extra previous item present in list DOM
|
|
92
|
+
|
|
93
|
+
## Required Styles
|
|
94
|
+
Please note that you should set specific SCSS values for DOM items depending on kind of list.
|
|
95
|
+
```SCSS
|
|
96
|
+
// non-animated/animated list
|
|
97
|
+
.animated .item {
|
|
98
|
+
position: absolute;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// static non-animated list
|
|
102
|
+
.basic .item {
|
|
103
|
+
position: static;
|
|
104
|
+
}
|
|
105
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { FirstOnlyVariedList } from '../src/FirstOnlyVariedList/FirstOnlyVariedList';
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: README
|
|
3
|
+
title: FixedToEndList
|
|
4
|
+
hide_title: true
|
|
5
|
+
sidebar_label: FixedToEndList
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# FixedToEndList
|
|
9
|
+
Fixed To End List is a type of list that prefers scrolling before moving the focus.
|
|
10
|
+
First the focus remains at the same position. Only after the last item is fully visible it starts moving the focus to the end of the list.
|
|
11
|
+
Going back it first moves the focus to the first position and then scrolls to the start.
|
|
12
|
+
|
|
13
|
+
## List Specific Props
|
|
14
|
+
- `scrollStep` - value to move on scroll
|
|
15
|
+
|
|
16
|
+
## Default Animation Configuration
|
|
17
|
+
- normal: 700ms with easeOutQuart
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
FixedToEnd list is most often used for portrait Packshots in apps that want to have similar behaviour as Netflix.
|
|
21
|
+
|
|
22
|
+
Unlike Netflix's list, it does not scroll until the last item. Rather it starts moving the focus once it reaches the last item.
|
|
23
|
+
|
|
24
|
+
## Examples
|
|
25
|
+
|
|
26
|
+
### Example 1
|
|
27
|
+
Probably the most common usage of the FixedToEndList.
|
|
28
|
+
Similar to BasicList it also counts with two partially visible items on each end.
|
|
29
|
+
Therefore `visibleItems` is equal to fully visible/navigatable items + 2.
|
|
30
|
+
`scrollStep` is equal to item width + the space between two items
|
|
31
|
+
```tsx
|
|
32
|
+
<FixedToEndList
|
|
33
|
+
data={[1, 2, 3, 4, 5, 6, 7]}
|
|
34
|
+
renderItem={(item: number, index, ref) => (
|
|
35
|
+
<Item title={item} ref={ref} />
|
|
36
|
+
)}
|
|
37
|
+
visibleItems={6}
|
|
38
|
+
scrollStep={139}
|
|
39
|
+
horizontal
|
|
40
|
+
/>
|
|
41
|
+
```
|
|
42
|
+

|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { FixedToEndList } from '../src/FixedToEndList/FixedToEndList';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Item } from '../src/types';
|