@clickview/lite 0.0.18-dev.2 → 0.0.18-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/0.chunk.css.map +1 -0
- package/dist/css/1.chunk.css +144 -2
- package/dist/css/1.chunk.css.map +1 -0
- package/dist/css/10.chunk.css +10 -12
- package/dist/css/10.chunk.css.map +1 -0
- package/dist/css/11.chunk.css +5 -9
- package/dist/css/11.chunk.css.map +1 -0
- package/dist/css/12.chunk.css.map +1 -0
- package/dist/css/13.chunk.css.map +1 -0
- package/dist/css/14.chunk.css.map +1 -0
- package/dist/css/16.chunk.css.map +1 -0
- package/dist/css/18.chunk.css.map +1 -0
- package/dist/css/19.chunk.css +6 -2
- package/dist/css/19.chunk.css.map +1 -0
- package/dist/css/2.chunk.css +14 -0
- package/dist/css/20.chunk.css +2 -6
- package/dist/css/21.chunk.css +1 -3
- package/dist/css/21.chunk.css.map +1 -0
- package/dist/css/22.chunk.css +2 -2
- package/dist/css/22.chunk.css.map +1 -0
- package/dist/css/23.chunk.css +3 -1
- package/dist/css/23.chunk.css.map +1 -0
- package/dist/css/24.chunk.css +1 -3
- package/dist/css/24.chunk.css.map +1 -0
- package/dist/css/25.chunk.css +2 -2
- package/dist/css/25.chunk.css.map +1 -0
- package/dist/css/26.chunk.css +3 -1
- package/dist/css/26.chunk.css.map +1 -0
- package/dist/css/27.chunk.css +66 -2
- package/dist/css/27.chunk.css.map +1 -0
- package/dist/css/28.chunk.css +48 -2
- package/dist/css/28.chunk.css.map +1 -0
- package/dist/css/29.chunk.css +43 -4
- package/dist/css/29.chunk.css.map +1 -0
- package/dist/css/3.chunk.css +13 -7
- package/dist/css/3.chunk.css.map +1 -0
- package/dist/css/30.chunk.css +1 -3
- package/dist/css/30.chunk.css.map +1 -0
- package/dist/css/31.chunk.css +5 -2
- package/dist/css/31.chunk.css.map +1 -0
- package/dist/css/32.chunk.css +4 -1
- package/dist/css/32.chunk.css.map +1 -0
- package/dist/css/34.chunk.css +4 -2
- package/dist/css/34.chunk.css.map +1 -0
- package/dist/css/35.chunk.css +7 -0
- package/dist/css/35.chunk.css.map +1 -0
- package/dist/css/36.chunk.css +4 -0
- package/dist/css/36.chunk.css.map +1 -0
- package/dist/css/37.chunk.css +3 -1
- package/dist/css/37.chunk.css.map +1 -0
- package/dist/css/38.chunk.css +36 -2
- package/dist/css/38.chunk.css.map +1 -0
- package/dist/css/4.chunk.css +5 -13
- package/dist/css/4.chunk.css.map +1 -0
- package/dist/css/44.chunk.css +1 -1
- package/dist/css/45.chunk.css +9 -0
- package/dist/css/45.chunk.css.map +1 -0
- package/dist/css/5.chunk.css +2 -8
- package/dist/css/5.chunk.css.map +1 -0
- package/dist/css/9.chunk.css +15 -7
- package/dist/css/lite-app.css.map +1 -0
- package/dist/libs/analytics/src/AnalyticsService.d.ts +52 -0
- package/dist/libs/analytics/src/clients/BaseAnalyticsClient.d.ts +24 -0
- package/dist/libs/analytics/src/clients/CollectionApiClient.d.ts +48 -0
- package/dist/libs/analytics/src/clients/DebuggerClient.d.ts +7 -0
- package/dist/libs/analytics/src/constants/ApplicationOptionsKey.d.ts +1 -0
- package/dist/libs/analytics/src/constants/CountryRegionMapping.d.ts +7 -0
- package/dist/libs/analytics/src/constants/Regions.d.ts +6 -0
- package/dist/libs/analytics/src/enrichers/BaseAnalyticsEnricher.d.ts +19 -0
- package/dist/libs/analytics/src/enrichers/CoreContextEnricher.d.ts +22 -0
- package/dist/libs/analytics/src/enrichers/UserDataEnricher.d.ts +10 -0
- package/dist/libs/analytics/src/enums/CountryCode.d.ts +5 -0
- package/dist/libs/analytics/src/interfaces/AnalyticsTypes.d.ts +49 -5
- package/dist/libs/analytics/src/interfaces/VersionData.d.ts +4 -0
- package/dist/libs/analytics/src/models/CollectionEvent.d.ts +55 -0
- package/dist/libs/analytics/src/transport/EventTransport.d.ts +39 -0
- package/dist/libs/analytics/src/utils/CollectionApiClientHelper.d.ts +6 -0
- package/dist/libs/analytics/src/utils/DataFormatHelper.d.ts +14 -0
- package/dist/libs/analytics/src/utils/EventWhitelistHelper.d.ts +19 -0
- package/dist/libs/analytics/src/utils/TypeHelper.d.ts +4 -0
- package/dist/libs/analytics/src/utils/UploadDataFormatHelper.d.ts +10 -0
- package/dist/libs/analytics/src/utils/UserAgentHelper.d.ts +10 -0
- package/dist/libs/analytics/src/utils/VideoDataFormatHelper.d.ts +42 -0
- package/dist/libs/common/src/backbone/core/BaseAppRouter.d.ts +5 -1
- package/dist/libs/common/src/react/constants/ViewModelActions.d.ts +3 -0
- package/dist/libs/common/src/react/hooks/useViewModel.d.ts +4 -0
- package/dist/libs/common/src/react/interfaces/ApplicationState.d.ts +3 -1
- package/dist/libs/common/src/react/interfaces/ViewModelAction.d.ts +5 -0
- package/dist/libs/common/src/react/interfaces/ViewModelPayload.d.ts +5 -0
- package/dist/libs/common/src/react/reducers/ViewModelReducer.d.ts +3 -0
- package/dist/libs/common/src/react/utils/ArrayHelper.d.ts +1 -2
- package/dist/libs/shared/src/apps/content-updates/interfaces/VideoClassificationMapping.d.ts +2 -1
- package/dist/libs/shared/src/apps/upload/services/UploadService.d.ts +3 -2
- package/dist/libs/shared/src/components/lazy-image/LazyImage.d.ts +1 -1
- package/dist/libs/shared/src/components/search-bar/SearchBar.d.ts +5 -0
- package/dist/libs/shared/src/components/widgets/fixed-widget/FixedWidget.d.ts +4 -2
- package/dist/libs/shared/src/components/widgets/items/subject-widget-item/SubjectWidgetItem.d.ts +4 -3
- package/dist/libs/shared/src/constants/BootstrapKeys.d.ts +1 -0
- package/dist/libs/shared/src/constants/WithStatements.d.ts +1 -1
- package/dist/libs/shared/src/enums/CountryCode.d.ts +5 -0
- package/dist/libs/shared/src/enums/SubtitleExtractionOptions.d.ts +4 -0
- package/dist/libs/shared/src/enums/WidgetContents.d.ts +2 -1
- package/dist/libs/shared/src/flight-requests/FavouriteVideoRequests.d.ts +1 -1
- package/dist/libs/shared/src/flight-requests/PreferenceRequests.d.ts +4 -4
- package/dist/libs/shared/src/hooks/UseReorderedItems.d.ts +9 -0
- package/dist/libs/shared/src/interfaces/models/Config.d.ts +3 -1
- package/dist/libs/shared/src/interfaces/models/UserChannel.d.ts +7 -0
- package/dist/libs/shared/src/interfaces/models/index.d.ts +1 -0
- package/dist/libs/shared/src/services/ConfigDataService.d.ts +1 -0
- package/dist/libs/shared/src/utils/AudienceHelper.d.ts +5 -1
- package/dist/projects/lite/src/apps/classrooms/components/classroom-group-dropdown/ClassroomGroupDropdown.d.ts +3 -2
- package/dist/projects/lite/src/apps/classrooms/components/tile-actions/TileActions.d.ts +1 -0
- package/dist/projects/lite/src/apps/classrooms/flight-requests/ClassroomRequests.d.ts +1 -1
- package/dist/projects/lite/src/apps/classrooms/views/add-students-to-classroom/AddStudentsToClassroomView.d.ts +3 -3
- package/dist/projects/lite/src/apps/classrooms/views/create-classroom/CreateClassroomView.d.ts +3 -4
- package/dist/projects/lite/src/apps/classrooms/views/create-classroom-group/CreateClassroomGroupView.d.ts +3 -3
- package/dist/projects/lite/src/apps/classrooms/views/delete-classroom/DeleteClassroomView.d.ts +4 -4
- package/dist/projects/lite/src/apps/classrooms/views/delete-classroom-group/DeleteClassroomGroupView.d.ts +3 -3
- package/dist/projects/lite/src/apps/classrooms/views/edit-classroom/EditClassroomView.d.ts +3 -3
- package/dist/projects/lite/src/apps/classrooms/views/edit-classroom-group/EditClassroomGroupView.d.ts +3 -3
- package/dist/projects/lite/src/apps/classrooms/views/remove-students-from-classroom/RemoveStudentsFromClassroomView.d.ts +3 -3
- package/dist/projects/lite/src/apps/content-updates/LiteContentUpdatesApplication.d.ts +1 -1
- package/dist/projects/lite/src/apps/default/LiteDefaultApplication.d.ts +2 -2
- package/dist/projects/lite/src/apps/playlists/LitePlaylistsApplication.d.ts +2 -1
- package/dist/projects/lite/src/apps/playlists/views/delete-playlist/DeletePlaylistView.d.ts +2 -2
- package/dist/projects/lite/src/apps/playlists/views/edit-playlist/EditPlaylistView.d.ts +2 -2
- package/dist/projects/lite/src/apps/playlists/views/new-playlist/NewPlaylistView.d.ts +2 -2
- package/dist/projects/lite/src/apps/playlists/views/playlist/PlaylistViewUtils.d.ts +0 -8
- package/dist/projects/lite/src/apps/playlists/views/remove-video-from-playlist/RemoveVideoFromPlaylistView.d.ts +2 -2
- package/dist/projects/lite/src/apps/search/components/filter-actions/FilterActions.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/filter-button/FilterButton.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/filter-types/checkbox-filter/CheckboxFilter.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/filter-types/dropdown-filter/DropdownFilter.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/filter-types/radio-filter/RadioFilter.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/filter-types/radio-filter/year-level/YearLevelRadioFilter.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/reset-button/ResetButton.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/components/search-filters/SearchFilters.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/interfaces/FilterProps.d.ts +3 -2
- package/dist/projects/lite/src/apps/search/utils/FilterHelper.d.ts +4 -2
- package/dist/projects/lite/src/apps/subjects/LiteSubjectApplication.d.ts +2 -2
- package/dist/projects/lite/src/apps/upload/services/FlightVideoUploadDataService.d.ts +5 -0
- package/dist/projects/lite/src/apps/user-manager/components/delete-uploaded-student-popup/DeleteUploadedStudentPopup.d.ts +4 -4
- package/dist/projects/lite/src/apps/user-manager/components/delete-uploaded-teacher-popup/DeleteUploadedTeacherPopup.d.ts +4 -4
- package/dist/projects/lite/src/apps/user-manager/components/edit-uploaded-user-popup/EditUploadedUserPopup.d.ts +4 -4
- package/dist/projects/lite/src/apps/user-manager/components/manage-users-list/ManageUsersList.d.ts +3 -2
- package/dist/projects/lite/src/apps/user-manager/flight-requests/SchoolUserRequests.d.ts +3 -3
- package/dist/projects/lite/src/apps/user-manager/views/create-student/CreateStudentView.d.ts +3 -4
- package/dist/projects/lite/src/apps/user-manager/views/create-teacher/CreateTeacherView.d.ts +3 -4
- package/dist/projects/lite/src/apps/user-manager/views/edit-student/EditStudentView.d.ts +4 -4
- package/dist/projects/lite/src/apps/user-manager/views/edit-teacher/EditTeacherView.d.ts +4 -4
- package/dist/projects/lite/src/apps/user-manager/views/remove-user/RemoveUserView.d.ts +4 -4
- package/dist/projects/lite/src/apps/user-manager/views/student-upload-review/StudentUploadReviewView.d.ts +4 -2
- package/dist/projects/lite/src/apps/user-manager/views/teacher-upload-review/TeacherUploadReviewView.d.ts +4 -2
- package/dist/projects/lite/src/shared/components/immersive-reader/ImmersiveReader.d.ts +7 -2
- package/dist/projects/lite/src/shared/components/share/copy-embed-html/CopyEmbedHtml.d.ts +4 -2
- package/dist/projects/lite/src/shared/constants/LiteViewModels.d.ts +6 -0
- package/dist/projects/lite/src/shared/{contexts/player/PlayerContext.d.ts → hooks/useInitPlayerContext.d.ts} +4 -10
- package/dist/projects/lite/src/shared/hooks/useNavLock.d.ts +1 -0
- package/dist/projects/lite/src/shared/views/share/main-view/MainShareView.d.ts +3 -3
- package/dist/projects/lite/src/shared/views/share/settings-view/ShareSettingsView.d.ts +4 -3
- package/dist/projects/lite/src/startup/RegisterAnalytics.d.ts +3 -0
- package/dist/projects/lite/src/startup/index.d.ts +1 -0
- package/dist/scripts/0-525bd75473.chunk.js +1 -0
- package/dist/scripts/0.chunk.js +478 -1
- package/dist/scripts/0.chunk.js.map +1 -0
- package/dist/scripts/1-f6fa17226d.chunk.js +17 -0
- package/dist/scripts/1.chunk.js +621 -17
- package/dist/scripts/1.chunk.js.map +1 -0
- package/dist/scripts/10-f3b34b2d35.chunk.js +1 -0
- package/dist/scripts/10.chunk.js +400 -7
- package/dist/scripts/10.chunk.js.map +1 -0
- package/dist/scripts/11-a698af3f1c.chunk.js +1 -0
- package/dist/scripts/11.chunk.js +1289 -7
- package/dist/scripts/11.chunk.js.map +1 -0
- package/dist/scripts/12-9ace90fcbc.chunk.js +1 -0
- package/dist/scripts/12.chunk.js +1059 -7
- package/dist/scripts/12.chunk.js.map +1 -0
- package/dist/scripts/13-3a4f103546.chunk.js +1 -0
- package/dist/scripts/13.chunk.js +751 -7
- package/dist/scripts/13.chunk.js.map +1 -0
- package/dist/scripts/14-11868e2868.chunk.js +1 -0
- package/dist/scripts/14.chunk.js +425 -7
- package/dist/scripts/14.chunk.js.map +1 -0
- package/dist/scripts/15-78ff5e8be2.chunk.js +1 -0
- package/dist/scripts/15.chunk.js +609 -7
- package/dist/scripts/15.chunk.js.map +1 -0
- package/dist/scripts/16-22f6224811.chunk.js +1 -0
- package/dist/scripts/16.chunk.js +648 -7
- package/dist/scripts/16.chunk.js.map +1 -0
- package/dist/scripts/17-afe6281dd5.chunk.js +1 -0
- package/dist/scripts/17.chunk.js +541 -7
- package/dist/scripts/17.chunk.js.map +1 -0
- package/dist/scripts/18-47be31c0b6.chunk.js +1 -0
- package/dist/scripts/18.chunk.js +766 -7
- package/dist/scripts/18.chunk.js.map +1 -0
- package/dist/scripts/19-89c0b2c20e.chunk.js +1 -0
- package/dist/scripts/19.chunk.js +647 -7
- package/dist/scripts/19.chunk.js.map +1 -0
- package/dist/scripts/2-3b37480a80.chunk.js +7 -0
- package/dist/scripts/2.chunk.js +8259 -1
- package/dist/scripts/2.chunk.js.map +1 -0
- package/dist/scripts/20-32ac3fe0b9.chunk.js +1 -0
- package/dist/scripts/20.chunk.js +122 -7
- package/dist/scripts/20.chunk.js.map +1 -0
- package/dist/scripts/21-891207049a.chunk.js +1 -0
- package/dist/scripts/21.chunk.js +1571 -1
- package/dist/scripts/21.chunk.js.map +1 -0
- package/dist/scripts/22-24236e6723.chunk.js +1 -0
- package/dist/scripts/22.chunk.js +1387 -1
- package/dist/scripts/22.chunk.js.map +1 -0
- package/dist/scripts/23-7b425169bc.chunk.js +1 -0
- package/dist/scripts/23.chunk.js +1121 -1
- package/dist/scripts/23.chunk.js.map +1 -0
- package/dist/scripts/24-40edd30087.chunk.js +1 -0
- package/dist/scripts/24.chunk.js +1348 -1
- package/dist/scripts/24.chunk.js.map +1 -0
- package/dist/scripts/25-887b9ef587.chunk.js +1 -0
- package/dist/scripts/25.chunk.js +1137 -1
- package/dist/scripts/25.chunk.js.map +1 -0
- package/dist/scripts/26-cbe0ff0f77.chunk.js +1 -0
- package/dist/scripts/26.chunk.js +906 -1
- package/dist/scripts/26.chunk.js.map +1 -0
- package/dist/scripts/27-f26afdae78.chunk.js +1 -0
- package/dist/scripts/27.chunk.js +1143 -1
- package/dist/scripts/27.chunk.js.map +1 -0
- package/dist/scripts/28-70414fd373.chunk.js +1 -0
- package/dist/scripts/28.chunk.js +656 -1
- package/dist/scripts/28.chunk.js.map +1 -0
- package/dist/scripts/29-944b5c01a7.chunk.js +1 -0
- package/dist/scripts/29.chunk.js +616 -1
- package/dist/scripts/29.chunk.js.map +1 -0
- package/dist/scripts/3-233f573a92.chunk.js +1 -0
- package/dist/scripts/3.chunk.js +585 -1
- package/dist/scripts/3.chunk.js.map +1 -0
- package/dist/scripts/30-3a229887e9.chunk.js +1 -0
- package/dist/scripts/30.chunk.js +557 -1
- package/dist/scripts/30.chunk.js.map +1 -0
- package/dist/scripts/31-ab038bfc0c.chunk.js +1 -0
- package/dist/scripts/31.chunk.js +731 -1
- package/dist/scripts/31.chunk.js.map +1 -0
- package/dist/scripts/32-8bd6703eef.chunk.js +1 -0
- package/dist/scripts/32.chunk.js +957 -1
- package/dist/scripts/32.chunk.js.map +1 -0
- package/dist/scripts/{35-8b4ce9fc27.chunk.js → 33-4579af9cf9.chunk.js} +1 -1
- package/dist/scripts/33.chunk.js +938 -1
- package/dist/scripts/33.chunk.js.map +1 -0
- package/dist/scripts/{36-cbd8837f89.chunk.js → 34-d8b96d9f9f.chunk.js} +1 -1
- package/dist/scripts/34.chunk.js +523 -1
- package/dist/scripts/34.chunk.js.map +1 -0
- package/dist/scripts/35-666d815525.chunk.js +1 -0
- package/dist/scripts/35.chunk.js +414 -1
- package/dist/scripts/35.chunk.js.map +1 -0
- package/dist/scripts/36-02ce5f3538.chunk.js +1 -0
- package/dist/scripts/36.chunk.js +404 -1
- package/dist/scripts/36.chunk.js.map +1 -0
- package/dist/scripts/37-afd3d321e3.chunk.js +1 -0
- package/dist/scripts/37.chunk.js +245 -1
- package/dist/scripts/37.chunk.js.map +1 -0
- package/dist/scripts/{39-e2aa1689e2.chunk.js → 38-6ad53aa15b.chunk.js} +1 -1
- package/dist/scripts/38.chunk.js +343 -1
- package/dist/scripts/38.chunk.js.map +1 -0
- package/dist/scripts/{40-53d132e3b4.chunk.js → 39-46c747b1d9.chunk.js} +1 -1
- package/dist/scripts/39.chunk.js +318 -1
- package/dist/scripts/39.chunk.js.map +1 -0
- package/dist/scripts/4-6942fee782.chunk.js +1 -0
- package/dist/scripts/4.chunk.js +1030 -1
- package/dist/scripts/4.chunk.js.map +1 -0
- package/dist/scripts/{41-023d613070.chunk.js → 40-c1b8806b1c.chunk.js} +1 -1
- package/dist/scripts/40.chunk.js +236 -1
- package/dist/scripts/40.chunk.js.map +1 -0
- package/dist/scripts/{42-ba3779218d.chunk.js → 41-f4c23477e3.chunk.js} +1 -1
- package/dist/scripts/41.chunk.js +231 -1
- package/dist/scripts/41.chunk.js.map +1 -0
- package/dist/scripts/42-7a5b92d70b.chunk.js +1 -0
- package/dist/scripts/42.chunk.js +350 -1
- package/dist/scripts/42.chunk.js.map +1 -0
- package/dist/scripts/43-97193a87df.chunk.js +1 -0
- package/dist/scripts/43.chunk.js +225 -1
- package/dist/scripts/43.chunk.js.map +1 -0
- package/dist/scripts/{46-6501968ace.chunk.js → 44-7f92272274.chunk.js} +1 -1
- package/dist/scripts/44.chunk.js +318 -1
- package/dist/scripts/44.chunk.js.map +1 -0
- package/dist/scripts/45-265f1a7a42.chunk.js +1 -0
- package/dist/scripts/45.chunk.js +64 -1
- package/dist/scripts/45.chunk.js.map +1 -0
- package/dist/scripts/46-a594ad7eba.chunk.js +1 -0
- package/dist/scripts/46.chunk.js +108 -1
- package/dist/scripts/46.chunk.js.map +1 -0
- package/dist/scripts/47-99777c20cf.chunk.js +1 -0
- package/dist/scripts/47.chunk.js +110 -1
- package/dist/scripts/47.chunk.js.map +1 -0
- package/dist/scripts/48-9880523c82.chunk.js +1 -0
- package/dist/scripts/48.chunk.js +148 -1
- package/dist/scripts/48.chunk.js.map +1 -0
- package/dist/scripts/{50-00ffd5d7c6.chunk.js → 49-5e718594e5.chunk.js} +1 -1
- package/dist/scripts/49.chunk.js +142 -1
- package/dist/scripts/49.chunk.js.map +1 -0
- package/dist/scripts/5-2f631dcd74.chunk.js +1 -0
- package/dist/scripts/5.chunk.js +3262 -1
- package/dist/scripts/5.chunk.js.map +1 -0
- package/dist/scripts/50-8cb0d9cd7d.chunk.js +1 -0
- package/dist/scripts/50.chunk.js +145 -1
- package/dist/scripts/50.chunk.js.map +1 -0
- package/dist/scripts/{52-e5dfa5a640.chunk.js → 51-211b643ca5.chunk.js} +1 -1
- package/dist/scripts/51.chunk.js +176 -1
- package/dist/scripts/51.chunk.js.map +1 -0
- package/dist/scripts/{53-79d5905fc6.chunk.js → 52-bfb2683b5d.chunk.js} +1 -1
- package/dist/scripts/52.chunk.js +160 -1
- package/dist/scripts/52.chunk.js.map +1 -0
- package/dist/scripts/{54-4950ec1d52.chunk.js → 53-3cf5cd5f69.chunk.js} +1 -1
- package/dist/scripts/53.chunk.js +98 -1
- package/dist/scripts/53.chunk.js.map +1 -0
- package/dist/scripts/{55-accb81090d.chunk.js → 54-26807e3e49.chunk.js} +1 -1
- package/dist/scripts/54.chunk.js +48 -1
- package/dist/scripts/54.chunk.js.map +1 -0
- package/dist/scripts/55-d38be4860b.chunk.js +1 -0
- package/dist/scripts/55.chunk.js +99 -1
- package/dist/scripts/55.chunk.js.map +1 -0
- package/dist/scripts/56-d4abc25ec3.chunk.js +1 -0
- package/dist/scripts/56.chunk.js +64 -1
- package/dist/scripts/56.chunk.js.map +1 -0
- package/dist/scripts/57.chunk.js +72 -0
- package/dist/scripts/57.chunk.js.map +1 -0
- package/dist/scripts/58.chunk.js +73 -0
- package/dist/scripts/58.chunk.js.map +1 -0
- package/dist/scripts/59.chunk.js +70 -0
- package/dist/scripts/59.chunk.js.map +1 -0
- package/dist/scripts/6-4d72a3c3fc.chunk.js +1 -0
- package/dist/scripts/6.chunk.js +24 -1
- package/dist/scripts/6.chunk.js.map +1 -0
- package/dist/scripts/60.chunk.js +32 -0
- package/dist/scripts/60.chunk.js.map +1 -0
- package/dist/scripts/61.chunk.js +29 -0
- package/dist/scripts/61.chunk.js.map +1 -0
- package/dist/scripts/62.chunk.js +27 -0
- package/dist/scripts/62.chunk.js.map +1 -0
- package/dist/scripts/63.chunk.js +67 -0
- package/dist/scripts/63.chunk.js.map +1 -0
- package/dist/scripts/64.chunk.js +80 -0
- package/dist/scripts/64.chunk.js.map +1 -0
- package/dist/scripts/65.chunk.js +65 -0
- package/dist/scripts/65.chunk.js.map +1 -0
- package/dist/scripts/66.chunk.js +67 -0
- package/dist/scripts/66.chunk.js.map +1 -0
- package/dist/scripts/67.chunk.js +104 -0
- package/dist/scripts/67.chunk.js.map +1 -0
- package/dist/scripts/68.chunk.js +69 -0
- package/dist/scripts/68.chunk.js.map +1 -0
- package/dist/scripts/69.chunk.js +89 -0
- package/dist/scripts/69.chunk.js.map +1 -0
- package/dist/scripts/7-90ad392b55.chunk.js +1 -0
- package/dist/scripts/7.chunk.js +327 -1
- package/dist/scripts/7.chunk.js.map +1 -0
- package/dist/scripts/70.chunk.js +36 -0
- package/dist/scripts/70.chunk.js.map +1 -0
- package/dist/scripts/8.chunk.js +470 -0
- package/dist/scripts/8.chunk.js.map +1 -0
- package/dist/scripts/9-52877087ef.chunk.js +1 -0
- package/dist/scripts/9.chunk.js +471 -7
- package/dist/scripts/9.chunk.js.map +1 -0
- package/dist/scripts/bundle-99976c17a2.min.js +1 -0
- package/dist/scripts/bundle.js +34769 -1
- package/dist/scripts/bundle.js.map +1 -0
- package/dist/scripts/bundles.json +1 -1
- package/package.json +50 -49
- package/typings/libs/Trackers.d.ts +10 -0
- package/dist/css/33.chunk.css +0 -4
- package/dist/css/41.chunk.css +0 -4
- package/dist/css/46.chunk.css +0 -2
- package/dist/libs/shared/src/context/SearchAppContext.d.ts +0 -9
- package/dist/scripts/0-7ab5925809.chunk.js +0 -1
- package/dist/scripts/1-08c7a79a47.chunk.js +0 -1
- package/dist/scripts/10-20d3430ce2.chunk.js +0 -1
- package/dist/scripts/11-7a25650335.chunk.js +0 -1
- package/dist/scripts/12-6609af3add.chunk.js +0 -1
- package/dist/scripts/13-5adebd80b3.chunk.js +0 -1
- package/dist/scripts/14-dbd27fa3a5.chunk.js +0 -1
- package/dist/scripts/15-5a0e1ed526.chunk.js +0 -1
- package/dist/scripts/16-3adc733311.chunk.js +0 -1
- package/dist/scripts/17-a942a8ff32.chunk.js +0 -1
- package/dist/scripts/18-ab78fe1ad4.chunk.js +0 -1
- package/dist/scripts/19-04ba4906ea.chunk.js +0 -1
- package/dist/scripts/2-41fe2d7e77.chunk.js +0 -1
- package/dist/scripts/20-f0dcfc47a9.chunk.js +0 -1
- package/dist/scripts/21-33e50c0d6b.chunk.js +0 -1
- package/dist/scripts/22-d85dfba692.chunk.js +0 -1
- package/dist/scripts/23-90201310df.chunk.js +0 -1
- package/dist/scripts/24-bc8f0f5709.chunk.js +0 -1
- package/dist/scripts/25-317106a5da.chunk.js +0 -1
- package/dist/scripts/26-4a3372406a.chunk.js +0 -1
- package/dist/scripts/27-074f7ed617.chunk.js +0 -1
- package/dist/scripts/28-3f552efb1d.chunk.js +0 -1
- package/dist/scripts/29-3b0fed6546.chunk.js +0 -1
- package/dist/scripts/3-4c7cdc97d7.chunk.js +0 -7
- package/dist/scripts/30-efc1720b45.chunk.js +0 -1
- package/dist/scripts/31-fd10b2d2e3.chunk.js +0 -1
- package/dist/scripts/32-77df1d4c39.chunk.js +0 -1
- package/dist/scripts/33-7c092bbe19.chunk.js +0 -1
- package/dist/scripts/34-3c94a6fffe.chunk.js +0 -1
- package/dist/scripts/37-ecd001861c.chunk.js +0 -1
- package/dist/scripts/38-a42dc5fd6c.chunk.js +0 -1
- package/dist/scripts/4-9b843edce7.chunk.js +0 -1
- package/dist/scripts/43-9b84379d80.chunk.js +0 -1
- package/dist/scripts/44-1bedb97d4b.chunk.js +0 -1
- package/dist/scripts/45-b004111b2b.chunk.js +0 -1
- package/dist/scripts/47-cece788594.chunk.js +0 -1
- package/dist/scripts/48-722f37b837.chunk.js +0 -1
- package/dist/scripts/49-cb04b28057.chunk.js +0 -1
- package/dist/scripts/5-841e3d083b.chunk.js +0 -1
- package/dist/scripts/51-ed260ddadd.chunk.js +0 -1
- package/dist/scripts/56-83e51af2a6.chunk.js +0 -1
- package/dist/scripts/6-c429467dba.chunk.js +0 -1
- package/dist/scripts/7-3c52b41cbf.chunk.js +0 -1
- package/dist/scripts/9-fef5ef0698.chunk.js +0 -1
- package/dist/scripts/bundle-7782a79aa5.min.js +0 -1
package/dist/scripts/4.chunk.js
CHANGED
|
@@ -1 +1,1030 @@
|
|
|
1
|
-
(window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[4],{406:function(e,t,n){"use strict";n.d(t,"b",(function(){return a})),n.d(t,"a",(function(){return d}));var a,r,i=n(0),c=n(75),s=n(33),o=n(9),l=n(8),u=n(465),m=n.n(u);function d(e){const{type:t,mediaType:n,extraClasses:u}=e,d=(Object(c.a)(l.b.ImageUrl).getImageUrls(),function(e){return e===a.Video?m.a.videoFallback:e===a.Playlist?m.a.playlistFallback:e===a.Series||e===a.TallSubject?m.a.posterFallback:e===a.Subject?m.a.subjectFallback:""}(t)),p=function(e,t){return e===a.Video?o.b.Play:e===a.Playlist?o.b.Playlist:e===a.Series?o.b.Series:e===a.Subject||e===a.TallSubject?o.b.Subject:""}(t);let b=""+function(e,t){return t===a.Subject?m.a.subjectFallbackContainer:e===r.Svg?m.a.svgFallbackContainer:m.a.baseFallbackContainer}(n,t);return u&&(b+=" "+e.extraClasses),i.createElement("div",{className:b},n===r.Svg?i.createElement(s.a,{svgName:p,className:d,tagName:"div"}):i.createElement("div",{className:m.a.fallbackThumbnailImage,style:{backgroundImage:`url('${p}')`}}))}!function(e){e[e.Video=0]="Video",e[e.Playlist=1]="Playlist",e[e.Series=2]="Series",e[e.Subject=3]="Subject",e[e.TallSubject=4]="TallSubject"}(a||(a={})),function(e){e[e.Svg=0]="Svg",e[e.Image=1]="Image"}(r||(r={})),d.defaultProps={mediaType:r.Svg}},407:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));const a=/([0-9]+)/gi,r=/(^\w+)/gi;const i={getSortedPresentationAudiences(e,t){const n=e.map(e=>e.id.toString());return t.filter(e=>n.includes(e.masterId.toString()))},getMergedPresentationAudienceString(e){if(1===e.length)return e[0];const t=e.map(e=>e.name).join(","),n=t.match(a),i=t.match(r);if(!n||!i)return e[0];const c=function(e){let t,n,a=!1;const r=[];let i,c;for(e=e.sort(),i=0;i<e.length;i++)c=i+1,a||(t=e[i]),n=e[c],e[i]+1===n?a=!0:a?(r.push(`${t} - ${e[i]}`),a=!1):(r.push(""+e[i]),a=!1);return r}(n.map(e=>+e)||[]);return{name:`${i[0]} ${c.join(" , ")}`}}}},408:function(e,t,n){"use strict";n.d(t,"a",(function(){return c})),n.d(t,"b",(function(){return s}));var a=n(0),r=n(421),i=n.n(r);function c(e){return e.audience?a.createElement("div",{className:"border rounded-pill d-inline-block px-2 mt-1 "+("border-"+e.border)},e.audience.name):a.createElement(a.Fragment,null)}function s(e){return e.audiences&&e.audiences.length?a.createElement(a.Fragment,null,e.audiences.map((t,n)=>a.createElement("span",{key:n,className:i.a.audienceLabelListItem},a.createElement(c,{audience:t,border:e.border})))):a.createElement(a.Fragment,null)}},413:function(e,t,n){"use strict";var a=n(0),r=n(34),i=n(388),c=n(463),s=n.n(c),o=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n};function l(e){var{forceLoad:t}=e,n=o(e,["forceLoad"]);const[r,c]=i.useInView({triggerOnce:!0});if(void 0===window.IntersectionObserver&&!t)return a.createElement("img",Object.assign({alt:""},n));const{src:l}=n,u=o(n,["src"]),m=Object.assign(Object.assign({alt:""},u),c||t?{src:l}:{});return a.createElement("img",Object.assign({className:s.a.image,ref:r},m))}var u,m=n(32),d=n(425),p=n(464),b=n.n(p);function g(e){let t="thumbnail "+b.a.thumbnail,n="";return e.aspectRatio===u.SixteenByNine&&(n=b.a.sixteenByNine),e.aspectRatio===u.NineBySixteen&&(n=b.a.nineBySixteen),e.aspectRatio===u.OneByOne&&(n=b.a.oneByOne),e.aspectRatio===u.TwoByThree&&(n=b.a.twoByThree),n&&(t+=" "+n),e.className&&(t+=" "+e.className),t}function f(e){const{data:t,size:n,appLink:i,preload:c}=e;let s="";"string"==typeof t?s=t:r.a.isObject(t)&&(s=t.url);const o=s&&function(e,t=d.a.Small){return`${e}?size=${t}`}(s,n);return a.createElement("div",{className:g(e)},a.createElement(m.a,{appLink:i},e.children,o&&a.createElement(l,{src:o,forceLoad:c})))}n.d(t,"a",(function(){return u})),n.d(t,"b",(function(){return f})),function(e){e[e.SixteenByNine=0]="SixteenByNine",e[e.OneByOne=1]="OneByOne",e[e.TwoByThree=2]="TwoByThree",e[e.NineBySixteen=3]="NineBySixteen"}(u||(u={}))},421:function(e,t,n){e.exports={audienceLabelListItem:"_2YGVO"}},422:function(e,t,n){e.exports={partialLoadingHeading:"_1RLPq",partialLoading:"oArG4",labelContainer:"QLCgm",hoverActive:"_3Aleb",mask:"_2M2Zz",width:"TQg2K"}},423:function(e,t,n){"use strict";n.d(t,"a",(function(){return b}));var a=n(0),r=n(437),i=n(407),c=n(32),s=n(413),o=n(406),l=n(425),u=n(408),m=n(426),d=n(422),p=n.n(d);function b(e){const{data:t,appLink:n,preloadImage:d}=e,b=Object.assign(Object.assign({},n),{args:[t.id]});let g=t&&t.subjectPresentationAudiences&&t.subjectPresentationAudiences.data||[];const f=i.a.getSortedPresentationAudiences(g,e.audiences),v=i.a.getMergedPresentationAudienceString(f),[h,k]=Object(r.b)(p.a.hoverActive);return a.createElement(c.a,{key:t.id,appLink:b,className:"position-relative p-1 flex-shrink-0 "+p.a.width},a.createElement("div",{ref:h},k&&a.createElement("div",{className:"p-3 text-white text-center "+p.a.mask},a.createElement("h3",{className:"h4"},t.name),a.createElement("p",null,t.description)),a.createElement(s.b,{data:t.tallPoster,aspectRatio:s.a.NineBySixteen,preload:d,size:l.a.Large},a.createElement(o.a,{type:o.b.Series}),a.createElement("div",{className:"position-absolute text-white "+p.a.labelContainer},g&&g.length?a.createElement(u.a,{audience:v,border:"white"}):a.createElement(m.a,{type:m.b.Rating,data:t.rating})))))}},425:function(e,t,n){"use strict";var a;n.d(t,"a",(function(){return a})),function(e){e.Small="small",e.Medium="medium",e.Large="large",e.Raw="raw"}(a||(a={}))},426:function(e,t,n){"use strict";var a=n(0),r=n(27);const i={mapRatingToClass(e){if(!e)return"";return(e=>{switch(!0){case e<32:return"bg-purple";case e<48:return"bg-success";case e<80:return"bg-info";case e<96:return"bg-danger";case e<128:return"bg-pink";case e>=128:return"bg-warning";default:return""}})(e)}};var c,s=n(125),o=n(460),l=n.n(o);function u(e){const{type:t,data:n}=e;if(!function(e,t){return e===c.Rating?t&&!!t.value:!!t}(t,n))return a.createElement(a.Fragment,null);const o=function(e,t){let n="";return e===c.Duration&&(n=l.a.duration),e===c.Interactive&&(n=l.a.interactive),e===c.Rating&&(n=`${l.a.rating} ${i.mapRatingToClass(t.value)}`),e===c.ProductionYear&&(n=l.a.productionYear),"badge "+n}(t,n),u=function(e,t){return e===c.Interactive?"Interactive":e===c.Duration?s.a.ToDisplayDuration(t):e===c.Rating?t.code:e===c.ProductionYear?t:void 0}(t,n),m=function(e,t){return e===c.Rating?{title:t.name,placement:"top"}:null}(t,n);return m?a.createElement(r.OverlayTrigger,{placement:m.placement,overlay:a.createElement(r.Tooltip,{id:m.title},m.title)},a.createElement("span",{className:o},u)):a.createElement("span",{className:o},u)}n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return u})),function(e){e.Duration="duration",e.Interactive="interactive",e.Rating="rating",e.ProductionYear="production-year"}(c||(c={}))},443:function(e,t,n){"use strict";var a=n(0),r=n(27),i=n(124),c=n(33),s=n(32),o=n(9),l=n(458),u=n.n(l);function m(e){let t="dropdown-item";return e&&(t+=" "+e),t}function d(e){if(!e.actions||!e.actions.length)return a.createElement(a.Fragment,null);const t="actions-dropdown-"+i.a.getRandomInt();let n="px-0 "+u.a.dropdownToggle;return e.dropdownToggleClassName&&(n+=" "+e.dropdownToggleClassName),a.createElement(r.Dropdown,{className:e.className?e.className:"",alignRight:!0},a.createElement(r.Dropdown.Toggle,{as:"button",type:"button",id:t,className:n},a.createElement(c.a,{svgName:o.b.More,size:c.b.Small})),a.createElement(r.Dropdown.Menu,null,e.actions.map((e,t)=>a.createElement(s.a,{key:t,appLink:e.appLink,className:m(e.className)},e.label))))}d.defaultProps={dropdownToggleClassName:"btn btn-light"};var p=n(111),b=n(80);function g(e){const{onClick:t,appLink:n,svgName:r,tooltip:i}=e.actionOptions;let c="ml-2";return e.actionOptions.className&&(c+=" "+e.actionOptions.className),i?a.createElement(b.a,{title:i},a.createElement(p.a,{appLink:n,svgName:r,onClick:t,className:c},e.children)):r?a.createElement(p.a,{onClick:t,appLink:n,svgName:r,className:c},e.children):n?a.createElement(s.a,{onClick:t,appLink:n,className:c},e.children):a.createElement("button",{onClick:t,className:c},e.children)}function f(e){const t=[],n=[];e.actions.forEach(e=>{e.button?t.push(e):n.push(e)});let r="d-flex";return e.className&&(r+=" "+e.className),a.createElement("div",{className:r},a.createElement(a.Fragment,null,!!t.length&&a.createElement("span",{className:u.a.buttonList},t.map((e,t)=>a.createElement(g,{key:t,actionOptions:e},e.label))),e.sortComponent?e.sortComponent:"",!!n.length&&a.createElement(d,{actions:n,className:!!t.length&&"ml-2",dropdownToggleClassName:e.actionsDropdownClassName})))}n.d(t,"a",(function(){return f}))},444:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var a=n(0),r=n(5),i=n(33),c=n(32),s=n(9);function o({backToName:e,appLink:t,color:n}){const o=e?r.a.getPhrase("shared.backButton","backTo",{backToName:e}):r.a.getPhrase("shared.backButton","back"),l="black"===n?"":"text-light";return a.createElement(c.a,{appLink:t,className:"d-inline-flex align-items-center h5 mb-0 "+l},a.createElement(i.a,{svgName:s.b.ChevronLeft,size:i.b.Medium}),a.createElement("span",{className:"ml-1"},o))}o.defaultProps={color:"black"}},445:function(e,t,n){"use strict";n.d(t,"a",(function(){return u})),n.d(t,"b",(function(){return m}));var a=n(0),r=n(444),i=n(113),c=n(76),s=n(443),o=n(446),l=n.n(o);const u=a.memo((function(e){const{heading:t,banner:n,imageCdnUrl:o,actions:u,sortComponent:m}=e,d=i.a.createBannerUrl(n,{fallbackBaseUrl:o,fallbackCategoryName:t,type:c.b.Banners},{size:c.a.Large});return a.createElement("div",{className:"banner",style:{backgroundImage:`url('${d}')`}},e.backButtonAppLink&&a.createElement("div",{className:"pt-3"},a.createElement(r.a,{appLink:e.backButtonAppLink,backToName:e.backButtonText,color:"white"})),a.createElement("h1",{className:"text-white text-shadow position-absolute m-0 pb-3"},t),!!u&&a.createElement("div",{className:l.a.actionsContainer},a.createElement(s.a,{actions:u,sortComponent:m})))}),(e,t)=>e.actions===t.actions),m=()=>a.createElement("div",{className:"partial-banner partial-loading-background"})},446:function(e,t,n){e.exports={actionsContainer:"_286KF"}},458:function(e,t,n){e.exports={buttonList:"_2v9CT",dropdownToggle:"AYBvQ"}},460:function(e,t,n){e.exports={duration:"_3XH_S",interactive:"INxgX",productionYear:"Bt6Bx",rating:"_3bOtF",badgeList:"_1BsVS"}},463:function(e,t,n){e.exports={image:"_1YW-E"}},464:function(e,t,n){e.exports={thumbnail:"_3lfBf",sixteenByNine:"_2LqZ8",nineBySixteen:"_136ry",oneByOne:"_2wYLa",twoByThree:"_1eC6Q"}},465:function(e,t,n){e.exports={baseFallbackContainer:"_1wRjB",svgFallbackContainer:"_2t1jq",subjectFallbackContainer:"_12D74",videoFallback:"_6BPy-",playlistFallback:"_1slQX",posterFallback:"i0o8n",subjectFallback:"_2Srdd",fallbackThumbnailImage:"_2L_tV"}},466:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));const a=5,r=50,i=100,c={getPartialLoadingItems(e={}){const{numItems:t=a,minWidth:n=r,maxWidth:c=i}=e;return[...Array(t)].map(()=>({width:Math.max(Math.floor(Math.random()*c),n)+"px"}))}}},469:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));const a=()=>"/api/domain/v1/subjects/audiences",r={presentationAudiences:()=>({bootstrapName:"presentationAudiences",url:a(),key:"presentation:audiences",normalize:!1})}},491:function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var a=n(0),r=n(422),i=n.n(r);const c=[...Array(4)],s=()=>a.createElement("div",{className:"pb-3"},a.createElement("div",{className:"partial-loading-background "+i.a.partialLoadingHeading,dangerouslySetInnerHTML:{__html:" "}}),a.createElement("div",{className:"row"},c.map((e,t)=>a.createElement("div",{key:t,className:"col-6 col-sm-4 col-lg-3 "},a.createElement("div",{className:"py-2"},a.createElement("div",{className:i.a.partialLoading+" partial-loading-background"}))))))},492:function(e,t,n){"use strict";var a;function r(e,t){switch(t.type){case a.Init:return Object.assign(Object.assign({},e),t.payload.reduce((e,t)=>(e[t.masterId]=t,e),{}));case a.Toggle:return Object.assign({},function(e,t){const n=t.audience,a=t.isSelected;if(!n)return e;const r=n.masterId,i=Object.assign({},e);return a?i[r]||(i[r]=n):delete i[r],i}(e,t.payload));default:return e}}n.d(t,"a",(function(){return a})),n.d(t,"b",(function(){return r})),function(e){e.Init="init",e.Toggle="toggle"}(a||(a={}))},493:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var a=n(0),r=n(520),i=n.n(r);function c(e){const{audience:t,highlight:n,setAudience:r,isDisabled:c,extraClasses:s}=e,o=function(e,t){return e?"badge-info text-light":t?i.a.disabled+" text-muted":"badge-light"}(n,c),l=`badge-pill d-inline-block mr-1 ${c?"cursor-default":"cursor-pointer"} ${o} ${s}`;return a.createElement("span",{className:l,onClick:()=>{c||r(t,!n)},role:"checkbox","aria-checked":n},t.name.split(" ").map(e=>e.charAt(0).toUpperCase()+e.substring(1)).join(" "))}c.defaultProps={extraClasses:""}},495:function(e,t,n){"use strict";var a=n(0),r=n(31),i=n(34),c=n(63),s=n(466),o=n(32);const l=({breadcrumb:{label:e,appLink:t,active:n}})=>a.createElement("li",{className:"breadcrumb-item"+(n?" active":"")},n?a.createElement("strong",null,e):a.createElement(o.a,{appLink:t},e)),u=({breadcrumbs:e})=>a.createElement("ol",{className:"breadcrumb m-0 p-0"},e.map((e,t)=>a.createElement(l,{key:t,breadcrumb:e})));var m;function d(e,t,n){return{label:e.name,appLink:t(e),active:n}}function p(e){const{type:t}=e,n=function(e,t){let{currentItem:n,getItemAppLink:s,getParent:o,rootItem:l,data:u,subview:m}=e;const[p,b]=Object(a.useState)([]);a.useMemo(()=>{if(t||i.a.isEmpty(u))return;const e=u.map((e,t)=>d(e,s,t+1===u.length));l&&e.unshift(l),b(e)},[u]),a.useMemo(()=>{if(!t||!r.a.isFunction(o))return;const e=[d(n,s,!0)];for(n=o(n);n;)e.unshift(d(n,s)),n=o(n);return l&&e.unshift(l),b(e)},[n,o,s,l]);const{current:g}=a.useRef({label:m,appLink:null,active:!0});if(m){p.includes(g)||b([...p,g]);const e=p.filter(e=>e.active&&e!==g);e.length&&(c.a.first(e).active=!1)}return p}(e,t===m.Dynamic);return a.createElement("nav",{"aria-label":"breadcrumb"},a.createElement(u,{breadcrumbs:n}))}n.d(t,"a",(function(){return m})),n.d(t,"b",(function(){return p})),n.d(t,"c",(function(){return g})),function(e){e[e.Static=0]="Static",e[e.Dynamic=1]="Dynamic"}(m||(m={}));const b=s.a.getPartialLoadingItems({numItems:3}),g=()=>a.createElement("nav",{"aria-label":"breadcrumb"},a.createElement("ol",{className:"breadcrumb m-0 p-0"},b.map(({width:e},t)=>a.createElement("li",{key:t,className:"breadcrumb-item"},a.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:e},dangerouslySetInnerHTML:{__html:" "}})))))},520:function(e,t,n){e.exports={disabled:"_1KxF9"}},542:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var a=n(0),r=n(2);function i(e,t=[]){a.useEffect(()=>{const{appLink:t,paramBuilder:n,isValid:a,appLinkOptions:i}=e;(function(e,t){return!!e&&(!(!e.application||!e.action)&&!!t())})(t,a)&&(t.params=n(),r.a.AppLinkHelper.trigger(t,i))},[...t])}},543:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var a=n(0),r=n(34),i=n(492);const c=/\s|\+/gi;function s(e){return e?e.replace(c,"").toLowerCase():""}function o(e,t,n,c=[]){a.useEffect(()=>{if(!r.a.isObject(e)||r.a.isEmpty(e))return;if(!t||!t.length)return;let{a:a}=e;if(!a)return;"string"==typeof a&&(a=[a]);const c=a.reduce((e,t)=>(e[s(t)]=t,e),{}),o=t.filter(e=>c[s(e.name)]);n({type:i.a.Init,payload:o})},[...c])}},544:function(e,t,n){"use strict";n.d(t,"a",(function(){return s})),n.d(t,"b",(function(){return l}));var a=n(0),r=n(466),i=n(493),c=n(492);function s(e){const{audiences:t,activeAudiences:n,setAudience:r,disabled:s}=e;return t&&t.length?a.createElement("div",{className:"pt-3"},t.map(e=>a.createElement(i.a,{key:e.masterId,audience:e,highlight:!!n&&!!n[e.masterId],setAudience:(e,t)=>r({type:c.a.Toggle,payload:{audience:e,isSelected:t}}),isDisabled:s}))):a.createElement(a.Fragment,null)}const o=r.a.getPartialLoadingItems({numItems:6}),l=()=>a.createElement("div",{className:"pt-3"},o.map(({width:e},t)=>a.createElement("span",{key:t,className:"d-inline-block badge-pill partial-loading-background mr-1",dangerouslySetInnerHTML:{__html:" "},style:{width:e}})))},546:function(e,t,n){"use strict";var a=n(423);n.d(t,"b",(function(){return a.a}));var r=n(491);n.d(t,"a",(function(){return r.a}))},547:function(e,t,n){"use strict";n.d(t,"a",(function(){return i})),n.d(t,"d",(function(){return c})),n.d(t,"c",(function(){return s})),n.d(t,"b",(function(){return o}));var a=n(3),r=n(10),i=function(e){return function(t){return{application:a.a.SUBJECT,action:r.a.Subjects.CLASSIFICATION,args:t?[t.id]:[],params:e||{}}}},c=function(e){return{application:a.a.SUBJECT,action:r.a.Subjects.CLASSIFICATION_SERIES,args:[e.id]}},s=function(e){return{application:a.a.PLAYLISTS,action:r.a.Playlists.PLAYLIST,args:[e.id]}},o=function(){return{application:a.a.DASHBOARD,action:r.a.Dashboard.HOME}}}}]);
|
|
1
|
+
(window["webpackJsonp_clickview_lite"] = window["webpackJsonp_clickview_lite"] || []).push([[4],{
|
|
2
|
+
|
|
3
|
+
/***/ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidget.tsx":
|
|
4
|
+
/*!*****************************************************************************************************************!*\
|
|
5
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/FixedWidget.tsx ***!
|
|
6
|
+
\*****************************************************************************************************************/
|
|
7
|
+
/*! exports provided: FixedWidget */
|
|
8
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
9
|
+
|
|
10
|
+
"use strict";
|
|
11
|
+
__webpack_require__.r(__webpack_exports__);
|
|
12
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FixedWidget", function() { return Memoized; });
|
|
13
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
14
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
15
|
+
/* harmony import */ var _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
|
|
16
|
+
/* harmony import */ var _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
|
|
17
|
+
/* harmony import */ var _enums_CssMeasurement__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../enums/CssMeasurement */ "../../libs/shared/src/enums/CssMeasurement.ts");
|
|
18
|
+
/* harmony import */ var _widget_button_WidgetButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../widget-button/WidgetButton */ "../../libs/shared/src/components/widgets/widget-button/WidgetButton.tsx");
|
|
19
|
+
/* harmony import */ var _sliding_list_SlidingListContainer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../sliding-list/SlidingListContainer */ "../../libs/shared/src/components/widgets/sliding-list/SlidingListContainer.tsx");
|
|
20
|
+
/* harmony import */ var _hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../hooks/UseGetMediaQueryString */ "../../libs/shared/src/hooks/UseGetMediaQueryString.ts");
|
|
21
|
+
/* harmony import */ var _hooks_UseHover__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../hooks/UseHover */ "../../libs/shared/src/hooks/UseHover.ts");
|
|
22
|
+
/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../interfaces */ "../../libs/shared/src/interfaces/index.ts");
|
|
23
|
+
/* harmony import */ var _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../enums/WidgetInteraction */ "../../libs/shared/src/enums/WidgetInteraction.ts");
|
|
24
|
+
/* harmony import */ var _hooks_UseLazyLoad__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../hooks/UseLazyLoad */ "../../libs/shared/src/hooks/UseLazyLoad.ts");
|
|
25
|
+
/* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
|
|
26
|
+
/* harmony import */ var _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
|
|
27
|
+
/* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
|
|
28
|
+
/* harmony import */ var _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../enums/ThumbnailSize */ "../../libs/shared/src/enums/ThumbnailSize.ts");
|
|
29
|
+
/* harmony import */ var _PartialFixedWidget__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./PartialFixedWidget */ "../../libs/shared/src/components/widgets/fixed-widget/PartialFixedWidget.tsx");
|
|
30
|
+
/* harmony import */ var _FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./FixedWidgetUtils */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetUtils.ts");
|
|
31
|
+
/* harmony import */ var _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./FixedWidgetReducer */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetReducer.tsx");
|
|
32
|
+
/* harmony import */ var _fixed_widget_scss__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./fixed-widget.scss */ "../../libs/shared/src/components/widgets/fixed-widget/fixed-widget.scss");
|
|
33
|
+
/* harmony import */ var _fixed_widget_scss__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_fixed_widget_scss__WEBPACK_IMPORTED_MODULE_18__);
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
const namespace = 'shared.fixedWidget';
|
|
54
|
+
FixedWidget.defaultProps = {
|
|
55
|
+
type: _interfaces__WEBPACK_IMPORTED_MODULE_8__["WidgetType"].Row
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
function FixedWidget(props) {
|
|
59
|
+
var _a, _b;
|
|
60
|
+
|
|
61
|
+
const [initialTouchX, setInitialTouchX] = react__WEBPACK_IMPORTED_MODULE_0__["useState"](null);
|
|
62
|
+
const [containerWidth, setContainerWidth] = react__WEBPACK_IMPORTED_MODULE_0__["useState"](null);
|
|
63
|
+
const [percentageDragged, setPercentageDragged] = react__WEBPACK_IMPORTED_MODULE_0__["useState"](0);
|
|
64
|
+
const [state, dispatch] = react__WEBPACK_IMPORTED_MODULE_0__["useReducer"](_FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_17__["FixedWidgetReducer"], _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_17__["initialWidgetState"], _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_17__["lazyWidgetInit"]);
|
|
65
|
+
const containerRef = react__WEBPACK_IMPORTED_MODULE_0__["useRef"](null);
|
|
66
|
+
const [buttonsRef, isHovering] = Object(_hooks_UseHover__WEBPACK_IMPORTED_MODULE_7__["useHover"])();
|
|
67
|
+
const [isHoveringOnFarLeft, setIsHoveringOnFarLeft] = react__WEBPACK_IMPORTED_MODULE_0__["useState"](false);
|
|
68
|
+
const [isHoveringOnFarRight, setIsHoveringOnFarRight] = react__WEBPACK_IMPORTED_MODULE_0__["useState"](false);
|
|
69
|
+
const {
|
|
70
|
+
ref,
|
|
71
|
+
inView
|
|
72
|
+
} = Object(_hooks_UseLazyLoad__WEBPACK_IMPORTED_MODULE_10__["useLazyLoad"])(props.lazyLoad);
|
|
73
|
+
const mediaQuery = Object(_hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_6__["useGetMediaQueryString"])();
|
|
74
|
+
react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](() => {
|
|
75
|
+
dispatch({
|
|
76
|
+
type: _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_9__["WidgetInteraction"].Resize,
|
|
77
|
+
payload: {
|
|
78
|
+
mediaQuery,
|
|
79
|
+
type: props.type,
|
|
80
|
+
contents: props.contents,
|
|
81
|
+
collection: state.collection
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}, [mediaQuery]);
|
|
85
|
+
const response = Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__["useFetchData"])(props, dispatch, state, mediaQuery, !props.lazyLoad || inView);
|
|
86
|
+
|
|
87
|
+
function onSetIsHovering(hovering, index) {
|
|
88
|
+
// This callback will hide the far left button if the user is hovering on the far left widget item.
|
|
89
|
+
// Same goes for the far right button & widget item.
|
|
90
|
+
if ((index + 1) / state.viewableItems % 1 === 0) {
|
|
91
|
+
setIsHoveringOnFarRight(hovering);
|
|
92
|
+
} else if (index / state.viewableItems % 1 === 0) {
|
|
93
|
+
setIsHoveringOnFarLeft(hovering);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
const widgetContext = {
|
|
98
|
+
type: state.type,
|
|
99
|
+
size: state.currentSize,
|
|
100
|
+
collectionSize: state.collection.length,
|
|
101
|
+
contents: props.contents
|
|
102
|
+
};
|
|
103
|
+
const data = Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__["formatData"])(props, ((_a = response) === null || _a === void 0 ? void 0 : _a.data) || props.collection);
|
|
104
|
+
if ((_b = response) === null || _b === void 0 ? void 0 : _b.hasError) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
|
|
105
|
+
|
|
106
|
+
if (!data || _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_2__["ObjectHelper"].isEmpty(data) && !props.prefetched) {
|
|
107
|
+
return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
108
|
+
ref: ref
|
|
109
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_PartialFixedWidget__WEBPACK_IMPORTED_MODULE_15__["PartialFixedWidget"], {
|
|
110
|
+
type: props.type
|
|
111
|
+
}));
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if (!state.collection.length) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
|
|
115
|
+
const WidgetItemComponent = props.childComponent;
|
|
116
|
+
return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
117
|
+
className: 'pb-3'
|
|
118
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
119
|
+
className: 'mb-1'
|
|
120
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_11__["AppLink"], {
|
|
121
|
+
appLink: Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__["getCollectionAppLink"])(props.appLink, data)
|
|
122
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h2", {
|
|
123
|
+
className: 'h4 mb-0 d-inline-block align-top pl-1 text-dark'
|
|
124
|
+
}, data.name, !!props.appLink && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_12__["SvgContainer"], {
|
|
125
|
+
svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_13__["cvSvgLibrary"].ChevronRight,
|
|
126
|
+
size: _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_12__["SvgContainerSize"].Small
|
|
127
|
+
})), props.settingsAppLink && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_11__["AppLink"], {
|
|
128
|
+
appLink: props.settingsAppLink
|
|
129
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_12__["SvgContainer"], {
|
|
130
|
+
svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_13__["cvSvgLibrary"].Cog,
|
|
131
|
+
className: 'd-inline-block svg-container cursor-pointer',
|
|
132
|
+
title: _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].getPhrase(namespace, 'preferencesTooltip'),
|
|
133
|
+
tooltipPlacement: 'right'
|
|
134
|
+
}))), data.description && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
|
|
135
|
+
className: 'text-truncate pl-1 mb-0 description'
|
|
136
|
+
}, data.description)), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
137
|
+
ref: buttonsRef,
|
|
138
|
+
className: 'position-relative'
|
|
139
|
+
}, !isHoveringOnFarLeft && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
140
|
+
className: _fixed_widget_scss__WEBPACK_IMPORTED_MODULE_18___default.a.leftOverflowGradient
|
|
141
|
+
}), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_widget_button_WidgetButton__WEBPACK_IMPORTED_MODULE_4__["WidgetButton"], {
|
|
142
|
+
direction: _widget_button_WidgetButton__WEBPACK_IMPORTED_MODULE_4__["WidgetButtonDirection"].Left,
|
|
143
|
+
onClick: () => dispatch({
|
|
144
|
+
type: _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_9__["WidgetInteraction"].Previous
|
|
145
|
+
}),
|
|
146
|
+
hide: isHoveringOnFarLeft || state.offset <= state.collection.length && !(isHovering && state.offset !== state.viewableItems),
|
|
147
|
+
contents: props.contents
|
|
148
|
+
}), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_sliding_list_SlidingListContainer__WEBPACK_IMPORTED_MODULE_5__["SlidingListContainer"], {
|
|
149
|
+
position: state.position,
|
|
150
|
+
positionType: _enums_CssMeasurement__WEBPACK_IMPORTED_MODULE_3__["CssMeasurement"].Percentage,
|
|
151
|
+
onTouchMove: Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__["getOnTouchStart"])(state, containerRef, containerWidth, setContainerWidth, initialTouchX, setInitialTouchX, setPercentageDragged),
|
|
152
|
+
onTouchEnd: Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__["getOnTouchEnd"])(containerRef, setInitialTouchX, percentageDragged, setPercentageDragged, dispatch),
|
|
153
|
+
ref: containerRef,
|
|
154
|
+
percentageDragged: percentageDragged
|
|
155
|
+
}, state.collection.map((widgetItem, index) => {
|
|
156
|
+
return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](WidgetItemComponent, {
|
|
157
|
+
key: widgetItem.id,
|
|
158
|
+
data: widgetItem,
|
|
159
|
+
appLink: props.childAppLink,
|
|
160
|
+
context: widgetContext,
|
|
161
|
+
preloadImage: Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_16__["getShouldPreload"])(state)(widgetItem),
|
|
162
|
+
thumbnailSize: _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_14__["ThumbnailSize"].Medium,
|
|
163
|
+
onHover: hovering => {
|
|
164
|
+
/**
|
|
165
|
+
* For some reason this needs to be called after a set timeout, otherwise
|
|
166
|
+
* the `useHover` listener on the `buttonsRef` element will not detect it's hover
|
|
167
|
+
* event. - Josh
|
|
168
|
+
*/
|
|
169
|
+
window.setTimeout(() => {
|
|
170
|
+
onSetIsHovering(hovering, index);
|
|
171
|
+
}, 0);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
})), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_widget_button_WidgetButton__WEBPACK_IMPORTED_MODULE_4__["WidgetButton"], {
|
|
175
|
+
direction: _widget_button_WidgetButton__WEBPACK_IMPORTED_MODULE_4__["WidgetButtonDirection"].Right,
|
|
176
|
+
onClick: () => dispatch({
|
|
177
|
+
type: _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_9__["WidgetInteraction"].Next
|
|
178
|
+
}),
|
|
179
|
+
hide: isHoveringOnFarRight || (state.offset > state.viewableItems || state.offset === state.collection.length) && !(isHovering && state.offset < state.collection.length),
|
|
180
|
+
contents: props.contents
|
|
181
|
+
}), !isHoveringOnFarRight && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
182
|
+
className: _fixed_widget_scss__WEBPACK_IMPORTED_MODULE_18___default.a.rightOverflowGradient
|
|
183
|
+
})));
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
const Memoized = react__WEBPACK_IMPORTED_MODULE_0__["memo"](FixedWidget);
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
/***/ }),
|
|
190
|
+
|
|
191
|
+
/***/ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetReducer.tsx":
|
|
192
|
+
/*!************************************************************************************************************************!*\
|
|
193
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/FixedWidgetReducer.tsx ***!
|
|
194
|
+
\************************************************************************************************************************/
|
|
195
|
+
/*! exports provided: initialWidgetState, FixedWidgetReducer, lazyWidgetInit */
|
|
196
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
197
|
+
|
|
198
|
+
"use strict";
|
|
199
|
+
__webpack_require__.r(__webpack_exports__);
|
|
200
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initialWidgetState", function() { return initialWidgetState; });
|
|
201
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FixedWidgetReducer", function() { return FixedWidgetReducer; });
|
|
202
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lazyWidgetInit", function() { return lazyWidgetInit; });
|
|
203
|
+
/* harmony import */ var _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
|
|
204
|
+
/* harmony import */ var _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../enums/WidgetInteraction */ "../../libs/shared/src/enums/WidgetInteraction.ts");
|
|
205
|
+
/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../interfaces */ "../../libs/shared/src/interfaces/index.ts");
|
|
206
|
+
/* harmony import */ var _FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./FixedWidgetUtils */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetUtils.ts");
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
const initialWidgetState = {
|
|
212
|
+
offset: 0,
|
|
213
|
+
viewableItems: 4,
|
|
214
|
+
position: 0,
|
|
215
|
+
collection: [],
|
|
216
|
+
currentSize: _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].LG,
|
|
217
|
+
type: _interfaces__WEBPACK_IMPORTED_MODULE_2__["WidgetType"].Row
|
|
218
|
+
};
|
|
219
|
+
|
|
220
|
+
const computeNextPosition = prevState => {
|
|
221
|
+
const {
|
|
222
|
+
collection,
|
|
223
|
+
viewableItems,
|
|
224
|
+
offset,
|
|
225
|
+
position
|
|
226
|
+
} = prevState;
|
|
227
|
+
const remainingCount = collection.length - offset;
|
|
228
|
+
/**
|
|
229
|
+
* If the remaining items are evening divisible by the items in view, or,
|
|
230
|
+
* we have more items that can be displayed in the view, move the slider a full 100%.
|
|
231
|
+
*/
|
|
232
|
+
|
|
233
|
+
if (remainingCount % viewableItems === 0 || remainingCount > viewableItems) return {
|
|
234
|
+
position: position - 100,
|
|
235
|
+
offset: offset + viewableItems
|
|
236
|
+
};
|
|
237
|
+
/**
|
|
238
|
+
* Where there are less items than we can show in a full slide,
|
|
239
|
+
* calculate the % movement required to only show those items.
|
|
240
|
+
*/
|
|
241
|
+
|
|
242
|
+
if (remainingCount < viewableItems) return {
|
|
243
|
+
position: position - remainingCount / viewableItems * 100,
|
|
244
|
+
offset: offset + remainingCount
|
|
245
|
+
};
|
|
246
|
+
/**
|
|
247
|
+
* Default back to the current state as a fallback
|
|
248
|
+
*/
|
|
249
|
+
|
|
250
|
+
return {
|
|
251
|
+
position: position,
|
|
252
|
+
offset: offset
|
|
253
|
+
};
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
const computePreviousPosition = prevState => {
|
|
257
|
+
const {
|
|
258
|
+
viewableItems,
|
|
259
|
+
offset,
|
|
260
|
+
position
|
|
261
|
+
} = prevState;
|
|
262
|
+
const remainingCount = offset - viewableItems;
|
|
263
|
+
if (remainingCount % viewableItems === 0 || remainingCount > viewableItems) return {
|
|
264
|
+
position: position + 100,
|
|
265
|
+
offset: offset - viewableItems
|
|
266
|
+
};
|
|
267
|
+
if (remainingCount < viewableItems) return {
|
|
268
|
+
position: position + remainingCount / viewableItems * 100,
|
|
269
|
+
offset: offset - remainingCount
|
|
270
|
+
};
|
|
271
|
+
return {
|
|
272
|
+
position: position,
|
|
273
|
+
offset: offset
|
|
274
|
+
};
|
|
275
|
+
};
|
|
276
|
+
|
|
277
|
+
function FixedWidgetReducer(prevState, action) {
|
|
278
|
+
var _a, _b;
|
|
279
|
+
|
|
280
|
+
const {
|
|
281
|
+
type,
|
|
282
|
+
payload = {}
|
|
283
|
+
} = action;
|
|
284
|
+
|
|
285
|
+
switch (type) {
|
|
286
|
+
case _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_1__["WidgetInteraction"].Next:
|
|
287
|
+
{
|
|
288
|
+
return Object.assign(Object.assign({}, prevState), computeNextPosition(prevState));
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
case _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_1__["WidgetInteraction"].Previous:
|
|
292
|
+
{
|
|
293
|
+
return Object.assign(Object.assign({}, prevState), computePreviousPosition(prevState));
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
case _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_1__["WidgetInteraction"].Resize:
|
|
297
|
+
{
|
|
298
|
+
const computeViewableItems = Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_3__["getComputeFunction"])(payload.contents);
|
|
299
|
+
const initialSeen = computeViewableItems(payload.mediaQuery, payload.type, (_a = payload.collection) === null || _a === void 0 ? void 0 : _a.length);
|
|
300
|
+
return Object.assign(Object.assign({}, prevState), {
|
|
301
|
+
currentSize: payload.mediaQuery,
|
|
302
|
+
position: 0,
|
|
303
|
+
offset: initialSeen,
|
|
304
|
+
viewableItems: initialSeen,
|
|
305
|
+
type: payload.type
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
case _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_1__["WidgetInteraction"].Init:
|
|
310
|
+
{
|
|
311
|
+
const computeViewableItems = Object(_FixedWidgetUtils__WEBPACK_IMPORTED_MODULE_3__["getComputeFunction"])(payload.contents);
|
|
312
|
+
const initialSeen = computeViewableItems(payload.mediaQuery, payload.type, (_b = payload.collection) === null || _b === void 0 ? void 0 : _b.length);
|
|
313
|
+
return lazyWidgetInit(Object.assign(Object.assign({}, prevState), {
|
|
314
|
+
collection: payload.collection,
|
|
315
|
+
currentSize: payload.mediaQuery,
|
|
316
|
+
offset: initialSeen,
|
|
317
|
+
viewableItems: initialSeen,
|
|
318
|
+
type: payload.type
|
|
319
|
+
}));
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
default:
|
|
323
|
+
return prevState;
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
function lazyWidgetInit(newState) {
|
|
327
|
+
return Object.assign(Object.assign({}, initialWidgetState), newState);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
/***/ }),
|
|
331
|
+
|
|
332
|
+
/***/ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetUtils.ts":
|
|
333
|
+
/*!*********************************************************************************************************************!*\
|
|
334
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/FixedWidgetUtils.ts ***!
|
|
335
|
+
\*********************************************************************************************************************/
|
|
336
|
+
/*! exports provided: useFetchData, getShouldPreload, getCollectionAppLink, formatData, getComputeFunction, getOnTouchStart, getOnTouchEnd */
|
|
337
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
338
|
+
|
|
339
|
+
"use strict";
|
|
340
|
+
__webpack_require__.r(__webpack_exports__);
|
|
341
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useFetchData", function() { return useFetchData; });
|
|
342
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getShouldPreload", function() { return getShouldPreload; });
|
|
343
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getCollectionAppLink", function() { return getCollectionAppLink; });
|
|
344
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "formatData", function() { return formatData; });
|
|
345
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getComputeFunction", function() { return getComputeFunction; });
|
|
346
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getOnTouchStart", function() { return getOnTouchStart; });
|
|
347
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getOnTouchEnd", function() { return getOnTouchEnd; });
|
|
348
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
349
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
350
|
+
/* harmony import */ var _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
|
|
351
|
+
/* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
|
|
352
|
+
/* harmony import */ var _common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
|
|
353
|
+
/* harmony import */ var _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
|
|
354
|
+
/* harmony import */ var _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../enums/WidgetInteraction */ "../../libs/shared/src/enums/WidgetInteraction.ts");
|
|
355
|
+
/* harmony import */ var _enums_WidgetContents__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../enums/WidgetContents */ "../../libs/shared/src/enums/WidgetContents.ts");
|
|
356
|
+
/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../interfaces */ "../../libs/shared/src/interfaces/index.ts");
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
function useFetchData(props, dispatch, state, mediaQueryType, shouldFetch) {
|
|
366
|
+
const {
|
|
367
|
+
fetch,
|
|
368
|
+
setData,
|
|
369
|
+
type,
|
|
370
|
+
collection: items,
|
|
371
|
+
prefetched,
|
|
372
|
+
contents
|
|
373
|
+
} = props;
|
|
374
|
+
let data = items;
|
|
375
|
+
let res;
|
|
376
|
+
|
|
377
|
+
if (!data || _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__["ObjectHelper"].isEmpty(data) && !prefetched) {
|
|
378
|
+
res = fetch(shouldFetch);
|
|
379
|
+
data = res.data;
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* Once we have the widget data, lazily update our state with the new collection
|
|
383
|
+
*/
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](() => {
|
|
387
|
+
if (!data || _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__["ObjectHelper"].isEmpty(data)) return;
|
|
388
|
+
dispatch({
|
|
389
|
+
type: _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_5__["WidgetInteraction"].Init,
|
|
390
|
+
payload: {
|
|
391
|
+
collection: _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].isFunction(setData) ? setData(data) : data,
|
|
392
|
+
mediaQuery: mediaQueryType,
|
|
393
|
+
type,
|
|
394
|
+
contents
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
}, [data]);
|
|
398
|
+
return res;
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* This function wrapper determines which widget item images should be pre-fetched by the LazyImage component.
|
|
402
|
+
* It does this by looking at which images are going to be shown after the users clicks on the "Next"
|
|
403
|
+
* widget button.
|
|
404
|
+
*/
|
|
405
|
+
|
|
406
|
+
function getShouldPreload(state) {
|
|
407
|
+
const {
|
|
408
|
+
offset,
|
|
409
|
+
viewableItems,
|
|
410
|
+
collection
|
|
411
|
+
} = state; // The index of the latest item that has been fetched
|
|
412
|
+
|
|
413
|
+
const maxLoadedIndex = offset;
|
|
414
|
+
/**
|
|
415
|
+
* The indicesToPreload is an array of indices of widget items that should be prefetched by the
|
|
416
|
+
* LazyImage component
|
|
417
|
+
*/
|
|
418
|
+
|
|
419
|
+
const indicesToPreload = [];
|
|
420
|
+
|
|
421
|
+
for (let i = 0; i < maxLoadedIndex + viewableItems; i++) {
|
|
422
|
+
indicesToPreload.push(i);
|
|
423
|
+
}
|
|
424
|
+
/**
|
|
425
|
+
* A widget item calls this function to determine whether or not its image can be pre-fetched.
|
|
426
|
+
* This is determined by whether or not its index has been deemed valid to be pre-fetched
|
|
427
|
+
* by the scope above
|
|
428
|
+
*/
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
return function shouldPreload(widgetItem) {
|
|
432
|
+
const index = collection.indexOf(widgetItem);
|
|
433
|
+
return indicesToPreload.includes(index);
|
|
434
|
+
};
|
|
435
|
+
}
|
|
436
|
+
function getCollectionAppLink(appLink, data) {
|
|
437
|
+
if (!appLink) return;
|
|
438
|
+
return Object.assign(Object.assign({}, appLink), {
|
|
439
|
+
args: appLink.args || [data.id, _common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_3__["TextHelper"].slugify(data.name)]
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Allow explicit name and description props to override the fetched
|
|
444
|
+
* data properties.
|
|
445
|
+
*
|
|
446
|
+
* @param props
|
|
447
|
+
* @param data
|
|
448
|
+
*/
|
|
449
|
+
|
|
450
|
+
function formatData(props, data) {
|
|
451
|
+
const {
|
|
452
|
+
name,
|
|
453
|
+
description
|
|
454
|
+
} = props;
|
|
455
|
+
const overrideProps = {};
|
|
456
|
+
if (Array.isArray(data)) return {
|
|
457
|
+
name,
|
|
458
|
+
description
|
|
459
|
+
};
|
|
460
|
+
if (props.name) overrideProps.name = name;
|
|
461
|
+
if (props.description) overrideProps.description = description;
|
|
462
|
+
return Object.assign(Object.assign({}, data), overrideProps);
|
|
463
|
+
}
|
|
464
|
+
function getComputeFunction(contents) {
|
|
465
|
+
switch (contents) {
|
|
466
|
+
case _enums_WidgetContents__WEBPACK_IMPORTED_MODULE_6__["WidgetContents"].Playlists:
|
|
467
|
+
return computeViewablePlaylists;
|
|
468
|
+
|
|
469
|
+
case _enums_WidgetContents__WEBPACK_IMPORTED_MODULE_6__["WidgetContents"].Videos:
|
|
470
|
+
return computeViewableVideos;
|
|
471
|
+
|
|
472
|
+
case _enums_WidgetContents__WEBPACK_IMPORTED_MODULE_6__["WidgetContents"].Subjects:
|
|
473
|
+
return computeViewableSubjects;
|
|
474
|
+
|
|
475
|
+
case _enums_WidgetContents__WEBPACK_IMPORTED_MODULE_6__["WidgetContents"].UserChannels:
|
|
476
|
+
return computeViewableUserChannels;
|
|
477
|
+
|
|
478
|
+
case _enums_WidgetContents__WEBPACK_IMPORTED_MODULE_6__["WidgetContents"].Series:
|
|
479
|
+
default:
|
|
480
|
+
return computeViewableSeries;
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
function computeViewablePlaylists(mediaQuery, type, itemCount) {
|
|
485
|
+
let maxItems = 5;
|
|
486
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XS) maxItems = 2;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].SM) maxItems = 3;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].MD) maxItems = 4;
|
|
487
|
+
if (itemCount < maxItems) maxItems = itemCount;
|
|
488
|
+
return maxItems;
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
function computeViewableVideos(mediaQuery, type, itemCount) {
|
|
492
|
+
let maxItems = 4;
|
|
493
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XS) maxItems = 2;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].SM) maxItems = 3;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].MD) maxItems = 4;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].LG || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XL || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XXL) {
|
|
494
|
+
if (type === _interfaces__WEBPACK_IMPORTED_MODULE_7__["WidgetType"].LargeRow) maxItems = 3;else if (itemCount < 4) maxItems = 3;else maxItems = 4;
|
|
495
|
+
}
|
|
496
|
+
if (itemCount < maxItems) maxItems = itemCount;
|
|
497
|
+
return maxItems;
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
function computeViewableSubjects(mediaQuery, type, itemCount) {
|
|
501
|
+
let maxItems = 6;
|
|
502
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].SM || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XS) maxItems = 3;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].MD) maxItems = 4;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].LG) maxItems = 5;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XL || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XXL) maxItems = 6;
|
|
503
|
+
if (itemCount < maxItems) maxItems = itemCount;
|
|
504
|
+
return maxItems;
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
function computeViewableUserChannels(mediaQuery, type, itemCount) {
|
|
508
|
+
let maxItems = 6;
|
|
509
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].SM || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XS) maxItems = 3;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].MD) maxItems = 4;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].LG) maxItems = 5;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XL || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XXL) maxItems = 6;
|
|
510
|
+
if (itemCount < maxItems) maxItems = itemCount;
|
|
511
|
+
return maxItems;
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
function computeViewableSeries(mediaQuery, type, itemCount) {
|
|
515
|
+
let maxItems = 4;
|
|
516
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].XS) maxItems = 2;else if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_4__["MediaQueryStrings"].SM) maxItems = 3;
|
|
517
|
+
if (itemCount < maxItems) maxItems = itemCount;
|
|
518
|
+
return maxItems;
|
|
519
|
+
}
|
|
520
|
+
/**
|
|
521
|
+
* Touch event handlers
|
|
522
|
+
*/
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
function getOnTouchStart(widgetState, containerRef, containerWidth, setContainerWidth, initialTouchX, setInitialTouchX, setPercentageDragged) {
|
|
526
|
+
return function (event) {
|
|
527
|
+
const firstTouch = event.touches.item(0);
|
|
528
|
+
const touchX = firstTouch.clientX;
|
|
529
|
+
/**
|
|
530
|
+
* Runs only on the very first touch event.
|
|
531
|
+
*
|
|
532
|
+
* Sets the initial x-coordinate as a reference point to calculate how far the user has dragged before
|
|
533
|
+
* they release their finder
|
|
534
|
+
*/
|
|
535
|
+
|
|
536
|
+
if (!initialTouchX) {
|
|
537
|
+
containerRef.current.style.transition = '';
|
|
538
|
+
setContainerWidth(containerRef.current.getBoundingClientRect().width);
|
|
539
|
+
setInitialTouchX(touchX);
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
const pixelsDragged = initialTouchX - touchX; // Calculate how far the user has moved their finger as a percentage of the widget's container element
|
|
543
|
+
|
|
544
|
+
let currentPercentageDragged = pixelsDragged / containerWidth * 100;
|
|
545
|
+
/**
|
|
546
|
+
* These 2 if statements prevent the user from dragging the widget beyond its limits.
|
|
547
|
+
* One if statement handles if they have dragged to the left, and the other is for dragging to the right.
|
|
548
|
+
*
|
|
549
|
+
* The same logic is used to hide the widget buttons (see the `hide` prop passed to `<WidgetButton />`)
|
|
550
|
+
*/
|
|
551
|
+
|
|
552
|
+
if (currentPercentageDragged < 0 && widgetState.offset === widgetState.viewableItems) currentPercentageDragged = 0;else if (currentPercentageDragged > 0 && widgetState.offset === widgetState.collection.length) currentPercentageDragged = 0;
|
|
553
|
+
setPercentageDragged(currentPercentageDragged);
|
|
554
|
+
};
|
|
555
|
+
}
|
|
556
|
+
const DRAG_TOLERANCE = 7.5; // % of container width using to trigger a transition.
|
|
557
|
+
|
|
558
|
+
function getOnTouchEnd(containerRef, setInitialTouchX, percentageDragged, setPercentageDragged, dispatch) {
|
|
559
|
+
return function () {
|
|
560
|
+
containerRef.current.style.transition = 'transform 500ms ease-in-out 100ms';
|
|
561
|
+
setInitialTouchX(null);
|
|
562
|
+
/**
|
|
563
|
+
* Only trigger a Next/Previous widget event if the user has dragged beyond DRAG_TOLERANCE% either way of the
|
|
564
|
+
* container's width. This means if the user only drags left/right a tiny little bit, the widget
|
|
565
|
+
* will simply slide back into its original place.
|
|
566
|
+
*/
|
|
567
|
+
|
|
568
|
+
if (Math.abs(percentageDragged) >= DRAG_TOLERANCE) {
|
|
569
|
+
const reducerAction = percentageDragged > 0 ? _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_5__["WidgetInteraction"].Next : _enums_WidgetInteraction__WEBPACK_IMPORTED_MODULE_5__["WidgetInteraction"].Previous;
|
|
570
|
+
dispatch({
|
|
571
|
+
type: reducerAction
|
|
572
|
+
});
|
|
573
|
+
}
|
|
574
|
+
|
|
575
|
+
setPercentageDragged(0);
|
|
576
|
+
};
|
|
577
|
+
}
|
|
578
|
+
|
|
579
|
+
/***/ }),
|
|
580
|
+
|
|
581
|
+
/***/ "../../libs/shared/src/components/widgets/fixed-widget/PartialFixedWidget.tsx":
|
|
582
|
+
/*!************************************************************************************************************************!*\
|
|
583
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/PartialFixedWidget.tsx ***!
|
|
584
|
+
\************************************************************************************************************************/
|
|
585
|
+
/*! exports provided: PartialFixedWidget */
|
|
586
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
587
|
+
|
|
588
|
+
"use strict";
|
|
589
|
+
__webpack_require__.r(__webpack_exports__);
|
|
590
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PartialFixedWidget", function() { return PartialFixedWidget; });
|
|
591
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
592
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
593
|
+
/* harmony import */ var _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
|
|
594
|
+
/* harmony import */ var _hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../hooks/UseGetMediaQueryString */ "../../libs/shared/src/hooks/UseGetMediaQueryString.ts");
|
|
595
|
+
/* harmony import */ var _fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./fixed-widget.scss */ "../../libs/shared/src/components/widgets/fixed-widget/fixed-widget.scss");
|
|
596
|
+
/* harmony import */ var _fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3__);
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
|
|
600
|
+
|
|
601
|
+
|
|
602
|
+
function useMediaQueryListeners() {
|
|
603
|
+
const mediaQuery = Object(_hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_2__["useGetMediaQueryString"])();
|
|
604
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__["MediaQueryStrings"].XS) return {
|
|
605
|
+
itemCount: 1,
|
|
606
|
+
colSize: 12
|
|
607
|
+
};
|
|
608
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__["MediaQueryStrings"].SM) return {
|
|
609
|
+
itemCount: 2,
|
|
610
|
+
colSize: 6
|
|
611
|
+
};
|
|
612
|
+
if (mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__["MediaQueryStrings"].MD) return {
|
|
613
|
+
itemCount: 3,
|
|
614
|
+
colSize: 4
|
|
615
|
+
};
|
|
616
|
+
return {
|
|
617
|
+
itemCount: 4,
|
|
618
|
+
colSize: 3
|
|
619
|
+
};
|
|
620
|
+
}
|
|
621
|
+
|
|
622
|
+
const PartialLoadingItem = ({
|
|
623
|
+
colSize
|
|
624
|
+
}) => react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
625
|
+
className: `col-${colSize}`
|
|
626
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
627
|
+
className: `${_fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3___default.a.partialItem} mx-1 partial-loading-background`
|
|
628
|
+
}));
|
|
629
|
+
|
|
630
|
+
function PartialFixedWidget(props) {
|
|
631
|
+
const {
|
|
632
|
+
itemCount,
|
|
633
|
+
colSize
|
|
634
|
+
} = useMediaQueryListeners();
|
|
635
|
+
let items = [];
|
|
636
|
+
|
|
637
|
+
for (let i = 0; i < itemCount; i++) {
|
|
638
|
+
items.push(react__WEBPACK_IMPORTED_MODULE_0__["createElement"](PartialLoadingItem, {
|
|
639
|
+
key: i,
|
|
640
|
+
colSize: colSize
|
|
641
|
+
}));
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
645
|
+
className: 'widget pb-3'
|
|
646
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
647
|
+
className: `${_fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3___default.a.partialHeading} mx-1 mb-1 partial-loading-background`
|
|
648
|
+
}), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
649
|
+
className: `${_fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3___default.a.partialDescription} mx-1 my-1 partial-loading-background`
|
|
650
|
+
}), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
651
|
+
className: `${_fixed_widget_scss__WEBPACK_IMPORTED_MODULE_3___default.a.slidingContainer} row`
|
|
652
|
+
}, items));
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
/***/ }),
|
|
656
|
+
|
|
657
|
+
/***/ "../../libs/shared/src/components/widgets/fixed-widget/fixed-widget.scss":
|
|
658
|
+
/*!*******************************************************************************************************************!*\
|
|
659
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/fixed-widget.scss ***!
|
|
660
|
+
\*******************************************************************************************************************/
|
|
661
|
+
/*! no static exports found */
|
|
662
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
663
|
+
|
|
664
|
+
// extracted by mini-css-extract-plugin
|
|
665
|
+
module.exports = {"leftOverflowGradient":"cv--leftOverflowGradient--u_MPi","rightOverflowGradient":"cv--rightOverflowGradient--38ooL","partialHeading":"cv--partialHeading--OVsdA","partialDescription":"cv--partialDescription--1HtA2","partialItem":"cv--partialItem--3G2hG","largePartialItem":"cv--largePartialItem--NnK8O"};
|
|
666
|
+
|
|
667
|
+
/***/ }),
|
|
668
|
+
|
|
669
|
+
/***/ "../../libs/shared/src/components/widgets/sliding-list/SlidingListContainer.tsx":
|
|
670
|
+
/*!**************************************************************************************************************************!*\
|
|
671
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/sliding-list/SlidingListContainer.tsx ***!
|
|
672
|
+
\**************************************************************************************************************************/
|
|
673
|
+
/*! exports provided: SlidingListContainer */
|
|
674
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
675
|
+
|
|
676
|
+
"use strict";
|
|
677
|
+
__webpack_require__.r(__webpack_exports__);
|
|
678
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SlidingListContainer", function() { return SlidingListContainer; });
|
|
679
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
680
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
681
|
+
/* harmony import */ var _common_src_backbone_utils_UserAgentHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../common/src/backbone/utils/UserAgentHelper */ "../../libs/common/src/backbone/utils/UserAgentHelper.ts");
|
|
682
|
+
/* harmony import */ var _enums_CssMeasurement__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../enums/CssMeasurement */ "../../libs/shared/src/enums/CssMeasurement.ts");
|
|
683
|
+
/* harmony import */ var _utils_DragHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../utils/DragHelper */ "../../libs/shared/src/utils/DragHelper.ts");
|
|
684
|
+
|
|
685
|
+
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
const isTouchScreen = _common_src_backbone_utils_UserAgentHelper__WEBPACK_IMPORTED_MODULE_1__["UserAgentHelper"].isTouchScreen();
|
|
689
|
+
|
|
690
|
+
function getPositionStyling(xPosition, measurement, dragPercentage) {
|
|
691
|
+
// Used in situations where a touch screen user is dragging the `<FixedWidget />`
|
|
692
|
+
if (measurement === _enums_CssMeasurement__WEBPACK_IMPORTED_MODULE_2__["CssMeasurement"].Percentage && dragPercentage) xPosition = xPosition - dragPercentage;
|
|
693
|
+
return {
|
|
694
|
+
transform: `translate3d(${xPosition}${measurement}, 0px, 0px)`,
|
|
695
|
+
transition: 'transform 500ms ease-in-out 100ms'
|
|
696
|
+
};
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
const SlidingListContainer = react__WEBPACK_IMPORTED_MODULE_0__["forwardRef"]((props, ref) => {
|
|
700
|
+
const {
|
|
701
|
+
children,
|
|
702
|
+
positionType,
|
|
703
|
+
onDrag,
|
|
704
|
+
onDragEnd,
|
|
705
|
+
onTouchMove,
|
|
706
|
+
onTouchEnd,
|
|
707
|
+
percentageDragged,
|
|
708
|
+
position = 0
|
|
709
|
+
} = props;
|
|
710
|
+
|
|
711
|
+
function getEventListeners() {
|
|
712
|
+
const listenerProps = {};
|
|
713
|
+
|
|
714
|
+
if (onDrag && onDragEnd) {
|
|
715
|
+
listenerProps.draggable = true;
|
|
716
|
+
listenerProps.onDrag = onDrag;
|
|
717
|
+
listenerProps.onDragEnd = onDragEnd;
|
|
718
|
+
listenerProps.onDragStart = _utils_DragHelper__WEBPACK_IMPORTED_MODULE_3__["DragHelper"].hideDragImage;
|
|
719
|
+
|
|
720
|
+
listenerProps.onDragOver = e => e.preventDefault();
|
|
721
|
+
}
|
|
722
|
+
|
|
723
|
+
if (onTouchMove && onTouchEnd && isTouchScreen) {
|
|
724
|
+
listenerProps.onTouchMoveCapture = onTouchMove;
|
|
725
|
+
listenerProps.onTouchEndCapture = onTouchEnd;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
return listenerProps;
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", Object.assign({
|
|
732
|
+
className: 'd-flex flex-nowrap position-relative w-100',
|
|
733
|
+
style: getPositionStyling(position, positionType, percentageDragged),
|
|
734
|
+
ref: ref
|
|
735
|
+
}, getEventListeners()), children);
|
|
736
|
+
});
|
|
737
|
+
|
|
738
|
+
/***/ }),
|
|
739
|
+
|
|
740
|
+
/***/ "../../libs/shared/src/components/widgets/widget-button/WidgetButton.tsx":
|
|
741
|
+
/*!*******************************************************************************************************************!*\
|
|
742
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/widget-button/WidgetButton.tsx ***!
|
|
743
|
+
\*******************************************************************************************************************/
|
|
744
|
+
/*! exports provided: WidgetButtonDirection, WidgetButton */
|
|
745
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
746
|
+
|
|
747
|
+
"use strict";
|
|
748
|
+
__webpack_require__.r(__webpack_exports__);
|
|
749
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "WidgetButtonDirection", function() { return WidgetButtonDirection; });
|
|
750
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "WidgetButton", function() { return WidgetButton; });
|
|
751
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
752
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
753
|
+
/* harmony import */ var _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
|
|
754
|
+
/* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
|
|
755
|
+
/* harmony import */ var _widget_button_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./widget-button.scss */ "../../libs/shared/src/components/widgets/widget-button/widget-button.scss");
|
|
756
|
+
/* harmony import */ var _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_widget_button_scss__WEBPACK_IMPORTED_MODULE_3__);
|
|
757
|
+
|
|
758
|
+
|
|
759
|
+
|
|
760
|
+
|
|
761
|
+
var WidgetButtonDirection;
|
|
762
|
+
|
|
763
|
+
(function (WidgetButtonDirection) {
|
|
764
|
+
WidgetButtonDirection[WidgetButtonDirection["Left"] = 0] = "Left";
|
|
765
|
+
WidgetButtonDirection[WidgetButtonDirection["Right"] = 1] = "Right";
|
|
766
|
+
})(WidgetButtonDirection || (WidgetButtonDirection = {}));
|
|
767
|
+
|
|
768
|
+
function getPositionClass(contents, isLeftDirection) {
|
|
769
|
+
let className = _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.topPos; // Left / Right
|
|
770
|
+
|
|
771
|
+
if (isLeftDirection) className += ' ' + _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.left;else className += ' ' + _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.right;
|
|
772
|
+
return className;
|
|
773
|
+
}
|
|
774
|
+
|
|
775
|
+
const WidgetButton = react__WEBPACK_IMPORTED_MODULE_0__["memo"](function (props) {
|
|
776
|
+
const isLeft = props.direction === WidgetButtonDirection.Left;
|
|
777
|
+
const arrowSvg = isLeft ? _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_2__["cvSvgLibrary"].ChevronLeft : _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_2__["cvSvgLibrary"].ChevronRight;
|
|
778
|
+
const positionClass = getPositionClass(props.contents, isLeft);
|
|
779
|
+
if (props.hide) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
|
|
780
|
+
return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
781
|
+
role: 'button',
|
|
782
|
+
className: `${positionClass} ${_widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.button}`,
|
|
783
|
+
onClick: props.onClick
|
|
784
|
+
}, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_1__["SvgContainer"], {
|
|
785
|
+
svgName: arrowSvg,
|
|
786
|
+
size: _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_1__["SvgContainerSize"].Medium,
|
|
787
|
+
className: 'svg-container d-inline-block'
|
|
788
|
+
})), props.useGradientBackdrop && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
789
|
+
className: isLeft ? _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.gradientLeft : _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.gradientRight
|
|
790
|
+
}), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
|
|
791
|
+
role: 'button',
|
|
792
|
+
onClick: props.onClick,
|
|
793
|
+
className: isLeft ? _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.extendedClickableAreaLeft : _widget_button_scss__WEBPACK_IMPORTED_MODULE_3___default.a.extendedClickableAreaRight
|
|
794
|
+
}));
|
|
795
|
+
}, (prevProps, nextProps) => prevProps.hide === nextProps.hide);
|
|
796
|
+
|
|
797
|
+
/***/ }),
|
|
798
|
+
|
|
799
|
+
/***/ "../../libs/shared/src/components/widgets/widget-button/widget-button.scss":
|
|
800
|
+
/*!*********************************************************************************************************************!*\
|
|
801
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/widget-button/widget-button.scss ***!
|
|
802
|
+
\*********************************************************************************************************************/
|
|
803
|
+
/*! no static exports found */
|
|
804
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
805
|
+
|
|
806
|
+
// extracted by mini-css-extract-plugin
|
|
807
|
+
module.exports = {"left":"cv--left--789pr","right":"cv--right--1P8qt","button":"cv--button--24q_F","gradientLeft":"cv--gradientLeft--3fkiw","gradientRight":"cv--gradientRight--2RDDy","extendedClickableAreaRight":"cv--extendedClickableAreaRight--13dgy","extendedClickableAreaLeft":"cv--extendedClickableAreaLeft--37LtK","videoTopPos":"cv--videoTopPos--1XTRO","topPos":"cv--topPos--3_p_J"};
|
|
808
|
+
|
|
809
|
+
/***/ }),
|
|
810
|
+
|
|
811
|
+
/***/ "../../libs/shared/src/enums/CssMeasurement.ts":
|
|
812
|
+
/*!*****************************************************************************************!*\
|
|
813
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/CssMeasurement.ts ***!
|
|
814
|
+
\*****************************************************************************************/
|
|
815
|
+
/*! exports provided: CssMeasurement */
|
|
816
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
817
|
+
|
|
818
|
+
"use strict";
|
|
819
|
+
__webpack_require__.r(__webpack_exports__);
|
|
820
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CssMeasurement", function() { return CssMeasurement; });
|
|
821
|
+
var CssMeasurement;
|
|
822
|
+
|
|
823
|
+
(function (CssMeasurement) {
|
|
824
|
+
CssMeasurement["Percentage"] = "%";
|
|
825
|
+
CssMeasurement["Pixels"] = "px";
|
|
826
|
+
})(CssMeasurement || (CssMeasurement = {}));
|
|
827
|
+
|
|
828
|
+
/***/ }),
|
|
829
|
+
|
|
830
|
+
/***/ "../../libs/shared/src/enums/WidgetContents.ts":
|
|
831
|
+
/*!*****************************************************************************************!*\
|
|
832
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/WidgetContents.ts ***!
|
|
833
|
+
\*****************************************************************************************/
|
|
834
|
+
/*! exports provided: WidgetContents */
|
|
835
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
836
|
+
|
|
837
|
+
"use strict";
|
|
838
|
+
__webpack_require__.r(__webpack_exports__);
|
|
839
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "WidgetContents", function() { return WidgetContents; });
|
|
840
|
+
var WidgetContents;
|
|
841
|
+
|
|
842
|
+
(function (WidgetContents) {
|
|
843
|
+
WidgetContents["Videos"] = "videos";
|
|
844
|
+
WidgetContents["Series"] = "series";
|
|
845
|
+
WidgetContents["Subjects"] = "subjects";
|
|
846
|
+
WidgetContents["Playlists"] = "playlists";
|
|
847
|
+
WidgetContents["UserChannels"] = "user channels";
|
|
848
|
+
})(WidgetContents || (WidgetContents = {}));
|
|
849
|
+
|
|
850
|
+
/***/ }),
|
|
851
|
+
|
|
852
|
+
/***/ "../../libs/shared/src/enums/WidgetInteraction.ts":
|
|
853
|
+
/*!********************************************************************************************!*\
|
|
854
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/WidgetInteraction.ts ***!
|
|
855
|
+
\********************************************************************************************/
|
|
856
|
+
/*! exports provided: WidgetInteraction */
|
|
857
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
858
|
+
|
|
859
|
+
"use strict";
|
|
860
|
+
__webpack_require__.r(__webpack_exports__);
|
|
861
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "WidgetInteraction", function() { return WidgetInteraction; });
|
|
862
|
+
var WidgetInteraction;
|
|
863
|
+
|
|
864
|
+
(function (WidgetInteraction) {
|
|
865
|
+
WidgetInteraction["Init"] = "init";
|
|
866
|
+
WidgetInteraction["Next"] = "next";
|
|
867
|
+
WidgetInteraction["Previous"] = "previous";
|
|
868
|
+
WidgetInteraction["Resize"] = "resize";
|
|
869
|
+
WidgetInteraction["Drag"] = "drag";
|
|
870
|
+
})(WidgetInteraction || (WidgetInteraction = {}));
|
|
871
|
+
|
|
872
|
+
/***/ }),
|
|
873
|
+
|
|
874
|
+
/***/ "../../libs/shared/src/hooks/UseGetMediaQueryString.ts":
|
|
875
|
+
/*!*************************************************************************************************!*\
|
|
876
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseGetMediaQueryString.ts ***!
|
|
877
|
+
\*************************************************************************************************/
|
|
878
|
+
/*! exports provided: useGetMediaQueryString */
|
|
879
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
880
|
+
|
|
881
|
+
"use strict";
|
|
882
|
+
__webpack_require__.r(__webpack_exports__);
|
|
883
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useGetMediaQueryString", function() { return useGetMediaQueryString; });
|
|
884
|
+
/* harmony import */ var _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
|
|
885
|
+
/* harmony import */ var _UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./UseMediaQuery */ "../../libs/shared/src/hooks/UseMediaQuery.tsx");
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
function useGetMediaQueryString() {
|
|
889
|
+
/**
|
|
890
|
+
* I tried to do this by looping through `MediaQueryStrings`'s keys, but you can't run
|
|
891
|
+
* hooks in a loop :(
|
|
892
|
+
*/
|
|
893
|
+
const isXS = Object(_UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__["useMediaQuery"])(_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].XS);
|
|
894
|
+
const isSM = Object(_UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__["useMediaQuery"])(_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].SM);
|
|
895
|
+
const isMD = Object(_UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__["useMediaQuery"])(_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].MD);
|
|
896
|
+
const isLG = Object(_UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__["useMediaQuery"])(_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].LG);
|
|
897
|
+
const isXL = Object(_UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__["useMediaQuery"])(_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].XL);
|
|
898
|
+
const isXXL = Object(_UseMediaQuery__WEBPACK_IMPORTED_MODULE_1__["useMediaQuery"])(_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].XXL);
|
|
899
|
+
let currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].LG; // default
|
|
900
|
+
|
|
901
|
+
if (isXS) currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].XS;
|
|
902
|
+
if (isSM) currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].SM;
|
|
903
|
+
if (isMD) currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].MD;
|
|
904
|
+
if (isLG) currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].LG;
|
|
905
|
+
if (isXL) currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].XL;
|
|
906
|
+
if (isXXL) currentString = _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_0__["MediaQueryStrings"].XXL;
|
|
907
|
+
return currentString;
|
|
908
|
+
}
|
|
909
|
+
|
|
910
|
+
/***/ }),
|
|
911
|
+
|
|
912
|
+
/***/ "../../libs/shared/src/hooks/UseHover.ts":
|
|
913
|
+
/*!***********************************************************************************!*\
|
|
914
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseHover.ts ***!
|
|
915
|
+
\***********************************************************************************/
|
|
916
|
+
/*! exports provided: useHover, useHoverIntent */
|
|
917
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
918
|
+
|
|
919
|
+
"use strict";
|
|
920
|
+
__webpack_require__.r(__webpack_exports__);
|
|
921
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useHover", function() { return useHover; });
|
|
922
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useHoverIntent", function() { return useHoverIntent; });
|
|
923
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
924
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
925
|
+
/* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
|
|
926
|
+
|
|
927
|
+
|
|
928
|
+
const defaultOptions = {
|
|
929
|
+
className: '',
|
|
930
|
+
delay: 0
|
|
931
|
+
};
|
|
932
|
+
/**
|
|
933
|
+
* This hook detects hover events on an element.
|
|
934
|
+
* This should only be used where CSS hover events won't suffice for what you are trying to achieve.
|
|
935
|
+
*/
|
|
936
|
+
|
|
937
|
+
function useHover(options = defaultOptions) {
|
|
938
|
+
const [isHovering, setHovering] = react__WEBPACK_IMPORTED_MODULE_0__["useState"](false);
|
|
939
|
+
const ref = react__WEBPACK_IMPORTED_MODULE_0__["useRef"](null);
|
|
940
|
+
const triggerHover = _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__["FunctionHelper"].throttle(() => {
|
|
941
|
+
var _a, _b;
|
|
942
|
+
|
|
943
|
+
if (options.className) (_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.classList) === null || _b === void 0 ? void 0 : _b.add(options.className);
|
|
944
|
+
setHovering(true);
|
|
945
|
+
}, options.delay, {
|
|
946
|
+
leading: false
|
|
947
|
+
});
|
|
948
|
+
|
|
949
|
+
const handleMouseOut = () => {
|
|
950
|
+
var _a, _b;
|
|
951
|
+
|
|
952
|
+
if (_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__["FunctionHelper"].isFunction(triggerHover.cancel)) triggerHover.cancel();
|
|
953
|
+
if (options.className) (_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.classList) === null || _b === void 0 ? void 0 : _b.remove(options.className);
|
|
954
|
+
setHovering(false);
|
|
955
|
+
};
|
|
956
|
+
|
|
957
|
+
react__WEBPACK_IMPORTED_MODULE_0__["useLayoutEffect"](() => {
|
|
958
|
+
const node = ref.current;
|
|
959
|
+
|
|
960
|
+
if (node) {
|
|
961
|
+
node.addEventListener('mouseenter', triggerHover);
|
|
962
|
+
node.addEventListener('mouseleave', handleMouseOut);
|
|
963
|
+
return () => {
|
|
964
|
+
node.removeEventListener('mouseenter', triggerHover);
|
|
965
|
+
node.removeEventListener('mouseleave', handleMouseOut);
|
|
966
|
+
};
|
|
967
|
+
}
|
|
968
|
+
}, [ref.current]);
|
|
969
|
+
return [ref, isHovering];
|
|
970
|
+
}
|
|
971
|
+
function useHoverIntent(className) {
|
|
972
|
+
return useHover({
|
|
973
|
+
className,
|
|
974
|
+
delay: 275
|
|
975
|
+
});
|
|
976
|
+
}
|
|
977
|
+
|
|
978
|
+
/***/ }),
|
|
979
|
+
|
|
980
|
+
/***/ "../../libs/shared/src/hooks/UseLazyLoad.ts":
|
|
981
|
+
/*!**************************************************************************************!*\
|
|
982
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseLazyLoad.ts ***!
|
|
983
|
+
\**************************************************************************************/
|
|
984
|
+
/*! exports provided: useLazyLoad */
|
|
985
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
986
|
+
|
|
987
|
+
"use strict";
|
|
988
|
+
__webpack_require__.r(__webpack_exports__);
|
|
989
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useLazyLoad", function() { return useLazyLoad; });
|
|
990
|
+
/* harmony import */ var react_intersection_observer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-intersection-observer */ "react-intersection-observer");
|
|
991
|
+
/* harmony import */ var react_intersection_observer__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_intersection_observer__WEBPACK_IMPORTED_MODULE_0__);
|
|
992
|
+
|
|
993
|
+
function useLazyLoad(lazyLoadProp) {
|
|
994
|
+
const lazyLoad = lazyLoadProp && !(typeof window.IntersectionObserver === 'undefined');
|
|
995
|
+
let [ref, inView] = react_intersection_observer__WEBPACK_IMPORTED_MODULE_0__["useInView"]({
|
|
996
|
+
triggerOnce: true
|
|
997
|
+
});
|
|
998
|
+
if (!lazyLoad) inView = true;
|
|
999
|
+
return {
|
|
1000
|
+
ref,
|
|
1001
|
+
inView
|
|
1002
|
+
};
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
/***/ }),
|
|
1006
|
+
|
|
1007
|
+
/***/ "../../libs/shared/src/utils/DragHelper.ts":
|
|
1008
|
+
/*!*************************************************************************************!*\
|
|
1009
|
+
!*** C:/ClickView Projects/@clickview/packages/libs/shared/src/utils/DragHelper.ts ***!
|
|
1010
|
+
\*************************************************************************************/
|
|
1011
|
+
/*! exports provided: DragHelper */
|
|
1012
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
1013
|
+
|
|
1014
|
+
"use strict";
|
|
1015
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1016
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DragHelper", function() { return DragHelper; });
|
|
1017
|
+
const blankImage = new Image();
|
|
1018
|
+
blankImage.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=';
|
|
1019
|
+
const DragHelper = {
|
|
1020
|
+
// This removes the image that appears when you drag a draggable HTML element
|
|
1021
|
+
hideDragImage(event) {
|
|
1022
|
+
event.dataTransfer.setDragImage(blankImage, 0, 0);
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
};
|
|
1026
|
+
|
|
1027
|
+
/***/ })
|
|
1028
|
+
|
|
1029
|
+
}]);
|
|
1030
|
+
//# sourceMappingURL=4.chunk.js.map
|