@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.
Files changed (415) hide show
  1. package/dist/css/0.chunk.css.map +1 -0
  2. package/dist/css/1.chunk.css +144 -2
  3. package/dist/css/1.chunk.css.map +1 -0
  4. package/dist/css/10.chunk.css +10 -12
  5. package/dist/css/10.chunk.css.map +1 -0
  6. package/dist/css/11.chunk.css +5 -9
  7. package/dist/css/11.chunk.css.map +1 -0
  8. package/dist/css/12.chunk.css.map +1 -0
  9. package/dist/css/13.chunk.css.map +1 -0
  10. package/dist/css/14.chunk.css.map +1 -0
  11. package/dist/css/16.chunk.css.map +1 -0
  12. package/dist/css/18.chunk.css.map +1 -0
  13. package/dist/css/19.chunk.css +6 -2
  14. package/dist/css/19.chunk.css.map +1 -0
  15. package/dist/css/2.chunk.css +14 -0
  16. package/dist/css/20.chunk.css +2 -6
  17. package/dist/css/21.chunk.css +1 -3
  18. package/dist/css/21.chunk.css.map +1 -0
  19. package/dist/css/22.chunk.css +2 -2
  20. package/dist/css/22.chunk.css.map +1 -0
  21. package/dist/css/23.chunk.css +3 -1
  22. package/dist/css/23.chunk.css.map +1 -0
  23. package/dist/css/24.chunk.css +1 -3
  24. package/dist/css/24.chunk.css.map +1 -0
  25. package/dist/css/25.chunk.css +2 -2
  26. package/dist/css/25.chunk.css.map +1 -0
  27. package/dist/css/26.chunk.css +3 -1
  28. package/dist/css/26.chunk.css.map +1 -0
  29. package/dist/css/27.chunk.css +66 -2
  30. package/dist/css/27.chunk.css.map +1 -0
  31. package/dist/css/28.chunk.css +48 -2
  32. package/dist/css/28.chunk.css.map +1 -0
  33. package/dist/css/29.chunk.css +43 -4
  34. package/dist/css/29.chunk.css.map +1 -0
  35. package/dist/css/3.chunk.css +13 -7
  36. package/dist/css/3.chunk.css.map +1 -0
  37. package/dist/css/30.chunk.css +1 -3
  38. package/dist/css/30.chunk.css.map +1 -0
  39. package/dist/css/31.chunk.css +5 -2
  40. package/dist/css/31.chunk.css.map +1 -0
  41. package/dist/css/32.chunk.css +4 -1
  42. package/dist/css/32.chunk.css.map +1 -0
  43. package/dist/css/34.chunk.css +4 -2
  44. package/dist/css/34.chunk.css.map +1 -0
  45. package/dist/css/35.chunk.css +7 -0
  46. package/dist/css/35.chunk.css.map +1 -0
  47. package/dist/css/36.chunk.css +4 -0
  48. package/dist/css/36.chunk.css.map +1 -0
  49. package/dist/css/37.chunk.css +3 -1
  50. package/dist/css/37.chunk.css.map +1 -0
  51. package/dist/css/38.chunk.css +36 -2
  52. package/dist/css/38.chunk.css.map +1 -0
  53. package/dist/css/4.chunk.css +5 -13
  54. package/dist/css/4.chunk.css.map +1 -0
  55. package/dist/css/44.chunk.css +1 -1
  56. package/dist/css/45.chunk.css +9 -0
  57. package/dist/css/45.chunk.css.map +1 -0
  58. package/dist/css/5.chunk.css +2 -8
  59. package/dist/css/5.chunk.css.map +1 -0
  60. package/dist/css/9.chunk.css +15 -7
  61. package/dist/css/lite-app.css.map +1 -0
  62. package/dist/libs/analytics/src/AnalyticsService.d.ts +52 -0
  63. package/dist/libs/analytics/src/clients/BaseAnalyticsClient.d.ts +24 -0
  64. package/dist/libs/analytics/src/clients/CollectionApiClient.d.ts +48 -0
  65. package/dist/libs/analytics/src/clients/DebuggerClient.d.ts +7 -0
  66. package/dist/libs/analytics/src/constants/ApplicationOptionsKey.d.ts +1 -0
  67. package/dist/libs/analytics/src/constants/CountryRegionMapping.d.ts +7 -0
  68. package/dist/libs/analytics/src/constants/Regions.d.ts +6 -0
  69. package/dist/libs/analytics/src/enrichers/BaseAnalyticsEnricher.d.ts +19 -0
  70. package/dist/libs/analytics/src/enrichers/CoreContextEnricher.d.ts +22 -0
  71. package/dist/libs/analytics/src/enrichers/UserDataEnricher.d.ts +10 -0
  72. package/dist/libs/analytics/src/enums/CountryCode.d.ts +5 -0
  73. package/dist/libs/analytics/src/interfaces/AnalyticsTypes.d.ts +49 -5
  74. package/dist/libs/analytics/src/interfaces/VersionData.d.ts +4 -0
  75. package/dist/libs/analytics/src/models/CollectionEvent.d.ts +55 -0
  76. package/dist/libs/analytics/src/transport/EventTransport.d.ts +39 -0
  77. package/dist/libs/analytics/src/utils/CollectionApiClientHelper.d.ts +6 -0
  78. package/dist/libs/analytics/src/utils/DataFormatHelper.d.ts +14 -0
  79. package/dist/libs/analytics/src/utils/EventWhitelistHelper.d.ts +19 -0
  80. package/dist/libs/analytics/src/utils/TypeHelper.d.ts +4 -0
  81. package/dist/libs/analytics/src/utils/UploadDataFormatHelper.d.ts +10 -0
  82. package/dist/libs/analytics/src/utils/UserAgentHelper.d.ts +10 -0
  83. package/dist/libs/analytics/src/utils/VideoDataFormatHelper.d.ts +42 -0
  84. package/dist/libs/common/src/backbone/core/BaseAppRouter.d.ts +5 -1
  85. package/dist/libs/common/src/react/constants/ViewModelActions.d.ts +3 -0
  86. package/dist/libs/common/src/react/hooks/useViewModel.d.ts +4 -0
  87. package/dist/libs/common/src/react/interfaces/ApplicationState.d.ts +3 -1
  88. package/dist/libs/common/src/react/interfaces/ViewModelAction.d.ts +5 -0
  89. package/dist/libs/common/src/react/interfaces/ViewModelPayload.d.ts +5 -0
  90. package/dist/libs/common/src/react/reducers/ViewModelReducer.d.ts +3 -0
  91. package/dist/libs/common/src/react/utils/ArrayHelper.d.ts +1 -2
  92. package/dist/libs/shared/src/apps/content-updates/interfaces/VideoClassificationMapping.d.ts +2 -1
  93. package/dist/libs/shared/src/apps/upload/services/UploadService.d.ts +3 -2
  94. package/dist/libs/shared/src/components/lazy-image/LazyImage.d.ts +1 -1
  95. package/dist/libs/shared/src/components/search-bar/SearchBar.d.ts +5 -0
  96. package/dist/libs/shared/src/components/widgets/fixed-widget/FixedWidget.d.ts +4 -2
  97. package/dist/libs/shared/src/components/widgets/items/subject-widget-item/SubjectWidgetItem.d.ts +4 -3
  98. package/dist/libs/shared/src/constants/BootstrapKeys.d.ts +1 -0
  99. package/dist/libs/shared/src/constants/WithStatements.d.ts +1 -1
  100. package/dist/libs/shared/src/enums/CountryCode.d.ts +5 -0
  101. package/dist/libs/shared/src/enums/SubtitleExtractionOptions.d.ts +4 -0
  102. package/dist/libs/shared/src/enums/WidgetContents.d.ts +2 -1
  103. package/dist/libs/shared/src/flight-requests/FavouriteVideoRequests.d.ts +1 -1
  104. package/dist/libs/shared/src/flight-requests/PreferenceRequests.d.ts +4 -4
  105. package/dist/libs/shared/src/hooks/UseReorderedItems.d.ts +9 -0
  106. package/dist/libs/shared/src/interfaces/models/Config.d.ts +3 -1
  107. package/dist/libs/shared/src/interfaces/models/UserChannel.d.ts +7 -0
  108. package/dist/libs/shared/src/interfaces/models/index.d.ts +1 -0
  109. package/dist/libs/shared/src/services/ConfigDataService.d.ts +1 -0
  110. package/dist/libs/shared/src/utils/AudienceHelper.d.ts +5 -1
  111. package/dist/projects/lite/src/apps/classrooms/components/classroom-group-dropdown/ClassroomGroupDropdown.d.ts +3 -2
  112. package/dist/projects/lite/src/apps/classrooms/components/tile-actions/TileActions.d.ts +1 -0
  113. package/dist/projects/lite/src/apps/classrooms/flight-requests/ClassroomRequests.d.ts +1 -1
  114. package/dist/projects/lite/src/apps/classrooms/views/add-students-to-classroom/AddStudentsToClassroomView.d.ts +3 -3
  115. package/dist/projects/lite/src/apps/classrooms/views/create-classroom/CreateClassroomView.d.ts +3 -4
  116. package/dist/projects/lite/src/apps/classrooms/views/create-classroom-group/CreateClassroomGroupView.d.ts +3 -3
  117. package/dist/projects/lite/src/apps/classrooms/views/delete-classroom/DeleteClassroomView.d.ts +4 -4
  118. package/dist/projects/lite/src/apps/classrooms/views/delete-classroom-group/DeleteClassroomGroupView.d.ts +3 -3
  119. package/dist/projects/lite/src/apps/classrooms/views/edit-classroom/EditClassroomView.d.ts +3 -3
  120. package/dist/projects/lite/src/apps/classrooms/views/edit-classroom-group/EditClassroomGroupView.d.ts +3 -3
  121. package/dist/projects/lite/src/apps/classrooms/views/remove-students-from-classroom/RemoveStudentsFromClassroomView.d.ts +3 -3
  122. package/dist/projects/lite/src/apps/content-updates/LiteContentUpdatesApplication.d.ts +1 -1
  123. package/dist/projects/lite/src/apps/default/LiteDefaultApplication.d.ts +2 -2
  124. package/dist/projects/lite/src/apps/playlists/LitePlaylistsApplication.d.ts +2 -1
  125. package/dist/projects/lite/src/apps/playlists/views/delete-playlist/DeletePlaylistView.d.ts +2 -2
  126. package/dist/projects/lite/src/apps/playlists/views/edit-playlist/EditPlaylistView.d.ts +2 -2
  127. package/dist/projects/lite/src/apps/playlists/views/new-playlist/NewPlaylistView.d.ts +2 -2
  128. package/dist/projects/lite/src/apps/playlists/views/playlist/PlaylistViewUtils.d.ts +0 -8
  129. package/dist/projects/lite/src/apps/playlists/views/remove-video-from-playlist/RemoveVideoFromPlaylistView.d.ts +2 -2
  130. package/dist/projects/lite/src/apps/search/components/filter-actions/FilterActions.d.ts +3 -2
  131. package/dist/projects/lite/src/apps/search/components/filter-button/FilterButton.d.ts +3 -2
  132. package/dist/projects/lite/src/apps/search/components/filter-types/checkbox-filter/CheckboxFilter.d.ts +3 -2
  133. package/dist/projects/lite/src/apps/search/components/filter-types/dropdown-filter/DropdownFilter.d.ts +3 -2
  134. package/dist/projects/lite/src/apps/search/components/filter-types/radio-filter/RadioFilter.d.ts +3 -2
  135. package/dist/projects/lite/src/apps/search/components/filter-types/radio-filter/year-level/YearLevelRadioFilter.d.ts +3 -2
  136. package/dist/projects/lite/src/apps/search/components/reset-button/ResetButton.d.ts +3 -2
  137. package/dist/projects/lite/src/apps/search/components/search-filters/SearchFilters.d.ts +3 -2
  138. package/dist/projects/lite/src/apps/search/interfaces/FilterProps.d.ts +3 -2
  139. package/dist/projects/lite/src/apps/search/utils/FilterHelper.d.ts +4 -2
  140. package/dist/projects/lite/src/apps/subjects/LiteSubjectApplication.d.ts +2 -2
  141. package/dist/projects/lite/src/apps/upload/services/FlightVideoUploadDataService.d.ts +5 -0
  142. package/dist/projects/lite/src/apps/user-manager/components/delete-uploaded-student-popup/DeleteUploadedStudentPopup.d.ts +4 -4
  143. package/dist/projects/lite/src/apps/user-manager/components/delete-uploaded-teacher-popup/DeleteUploadedTeacherPopup.d.ts +4 -4
  144. package/dist/projects/lite/src/apps/user-manager/components/edit-uploaded-user-popup/EditUploadedUserPopup.d.ts +4 -4
  145. package/dist/projects/lite/src/apps/user-manager/components/manage-users-list/ManageUsersList.d.ts +3 -2
  146. package/dist/projects/lite/src/apps/user-manager/flight-requests/SchoolUserRequests.d.ts +3 -3
  147. package/dist/projects/lite/src/apps/user-manager/views/create-student/CreateStudentView.d.ts +3 -4
  148. package/dist/projects/lite/src/apps/user-manager/views/create-teacher/CreateTeacherView.d.ts +3 -4
  149. package/dist/projects/lite/src/apps/user-manager/views/edit-student/EditStudentView.d.ts +4 -4
  150. package/dist/projects/lite/src/apps/user-manager/views/edit-teacher/EditTeacherView.d.ts +4 -4
  151. package/dist/projects/lite/src/apps/user-manager/views/remove-user/RemoveUserView.d.ts +4 -4
  152. package/dist/projects/lite/src/apps/user-manager/views/student-upload-review/StudentUploadReviewView.d.ts +4 -2
  153. package/dist/projects/lite/src/apps/user-manager/views/teacher-upload-review/TeacherUploadReviewView.d.ts +4 -2
  154. package/dist/projects/lite/src/shared/components/immersive-reader/ImmersiveReader.d.ts +7 -2
  155. package/dist/projects/lite/src/shared/components/share/copy-embed-html/CopyEmbedHtml.d.ts +4 -2
  156. package/dist/projects/lite/src/shared/constants/LiteViewModels.d.ts +6 -0
  157. package/dist/projects/lite/src/shared/{contexts/player/PlayerContext.d.ts → hooks/useInitPlayerContext.d.ts} +4 -10
  158. package/dist/projects/lite/src/shared/hooks/useNavLock.d.ts +1 -0
  159. package/dist/projects/lite/src/shared/views/share/main-view/MainShareView.d.ts +3 -3
  160. package/dist/projects/lite/src/shared/views/share/settings-view/ShareSettingsView.d.ts +4 -3
  161. package/dist/projects/lite/src/startup/RegisterAnalytics.d.ts +3 -0
  162. package/dist/projects/lite/src/startup/index.d.ts +1 -0
  163. package/dist/scripts/0-525bd75473.chunk.js +1 -0
  164. package/dist/scripts/0.chunk.js +478 -1
  165. package/dist/scripts/0.chunk.js.map +1 -0
  166. package/dist/scripts/1-f6fa17226d.chunk.js +17 -0
  167. package/dist/scripts/1.chunk.js +621 -17
  168. package/dist/scripts/1.chunk.js.map +1 -0
  169. package/dist/scripts/10-f3b34b2d35.chunk.js +1 -0
  170. package/dist/scripts/10.chunk.js +400 -7
  171. package/dist/scripts/10.chunk.js.map +1 -0
  172. package/dist/scripts/11-a698af3f1c.chunk.js +1 -0
  173. package/dist/scripts/11.chunk.js +1289 -7
  174. package/dist/scripts/11.chunk.js.map +1 -0
  175. package/dist/scripts/12-9ace90fcbc.chunk.js +1 -0
  176. package/dist/scripts/12.chunk.js +1059 -7
  177. package/dist/scripts/12.chunk.js.map +1 -0
  178. package/dist/scripts/13-3a4f103546.chunk.js +1 -0
  179. package/dist/scripts/13.chunk.js +751 -7
  180. package/dist/scripts/13.chunk.js.map +1 -0
  181. package/dist/scripts/14-11868e2868.chunk.js +1 -0
  182. package/dist/scripts/14.chunk.js +425 -7
  183. package/dist/scripts/14.chunk.js.map +1 -0
  184. package/dist/scripts/15-78ff5e8be2.chunk.js +1 -0
  185. package/dist/scripts/15.chunk.js +609 -7
  186. package/dist/scripts/15.chunk.js.map +1 -0
  187. package/dist/scripts/16-22f6224811.chunk.js +1 -0
  188. package/dist/scripts/16.chunk.js +648 -7
  189. package/dist/scripts/16.chunk.js.map +1 -0
  190. package/dist/scripts/17-afe6281dd5.chunk.js +1 -0
  191. package/dist/scripts/17.chunk.js +541 -7
  192. package/dist/scripts/17.chunk.js.map +1 -0
  193. package/dist/scripts/18-47be31c0b6.chunk.js +1 -0
  194. package/dist/scripts/18.chunk.js +766 -7
  195. package/dist/scripts/18.chunk.js.map +1 -0
  196. package/dist/scripts/19-89c0b2c20e.chunk.js +1 -0
  197. package/dist/scripts/19.chunk.js +647 -7
  198. package/dist/scripts/19.chunk.js.map +1 -0
  199. package/dist/scripts/2-3b37480a80.chunk.js +7 -0
  200. package/dist/scripts/2.chunk.js +8259 -1
  201. package/dist/scripts/2.chunk.js.map +1 -0
  202. package/dist/scripts/20-32ac3fe0b9.chunk.js +1 -0
  203. package/dist/scripts/20.chunk.js +122 -7
  204. package/dist/scripts/20.chunk.js.map +1 -0
  205. package/dist/scripts/21-891207049a.chunk.js +1 -0
  206. package/dist/scripts/21.chunk.js +1571 -1
  207. package/dist/scripts/21.chunk.js.map +1 -0
  208. package/dist/scripts/22-24236e6723.chunk.js +1 -0
  209. package/dist/scripts/22.chunk.js +1387 -1
  210. package/dist/scripts/22.chunk.js.map +1 -0
  211. package/dist/scripts/23-7b425169bc.chunk.js +1 -0
  212. package/dist/scripts/23.chunk.js +1121 -1
  213. package/dist/scripts/23.chunk.js.map +1 -0
  214. package/dist/scripts/24-40edd30087.chunk.js +1 -0
  215. package/dist/scripts/24.chunk.js +1348 -1
  216. package/dist/scripts/24.chunk.js.map +1 -0
  217. package/dist/scripts/25-887b9ef587.chunk.js +1 -0
  218. package/dist/scripts/25.chunk.js +1137 -1
  219. package/dist/scripts/25.chunk.js.map +1 -0
  220. package/dist/scripts/26-cbe0ff0f77.chunk.js +1 -0
  221. package/dist/scripts/26.chunk.js +906 -1
  222. package/dist/scripts/26.chunk.js.map +1 -0
  223. package/dist/scripts/27-f26afdae78.chunk.js +1 -0
  224. package/dist/scripts/27.chunk.js +1143 -1
  225. package/dist/scripts/27.chunk.js.map +1 -0
  226. package/dist/scripts/28-70414fd373.chunk.js +1 -0
  227. package/dist/scripts/28.chunk.js +656 -1
  228. package/dist/scripts/28.chunk.js.map +1 -0
  229. package/dist/scripts/29-944b5c01a7.chunk.js +1 -0
  230. package/dist/scripts/29.chunk.js +616 -1
  231. package/dist/scripts/29.chunk.js.map +1 -0
  232. package/dist/scripts/3-233f573a92.chunk.js +1 -0
  233. package/dist/scripts/3.chunk.js +585 -1
  234. package/dist/scripts/3.chunk.js.map +1 -0
  235. package/dist/scripts/30-3a229887e9.chunk.js +1 -0
  236. package/dist/scripts/30.chunk.js +557 -1
  237. package/dist/scripts/30.chunk.js.map +1 -0
  238. package/dist/scripts/31-ab038bfc0c.chunk.js +1 -0
  239. package/dist/scripts/31.chunk.js +731 -1
  240. package/dist/scripts/31.chunk.js.map +1 -0
  241. package/dist/scripts/32-8bd6703eef.chunk.js +1 -0
  242. package/dist/scripts/32.chunk.js +957 -1
  243. package/dist/scripts/32.chunk.js.map +1 -0
  244. package/dist/scripts/{35-8b4ce9fc27.chunk.js → 33-4579af9cf9.chunk.js} +1 -1
  245. package/dist/scripts/33.chunk.js +938 -1
  246. package/dist/scripts/33.chunk.js.map +1 -0
  247. package/dist/scripts/{36-cbd8837f89.chunk.js → 34-d8b96d9f9f.chunk.js} +1 -1
  248. package/dist/scripts/34.chunk.js +523 -1
  249. package/dist/scripts/34.chunk.js.map +1 -0
  250. package/dist/scripts/35-666d815525.chunk.js +1 -0
  251. package/dist/scripts/35.chunk.js +414 -1
  252. package/dist/scripts/35.chunk.js.map +1 -0
  253. package/dist/scripts/36-02ce5f3538.chunk.js +1 -0
  254. package/dist/scripts/36.chunk.js +404 -1
  255. package/dist/scripts/36.chunk.js.map +1 -0
  256. package/dist/scripts/37-afd3d321e3.chunk.js +1 -0
  257. package/dist/scripts/37.chunk.js +245 -1
  258. package/dist/scripts/37.chunk.js.map +1 -0
  259. package/dist/scripts/{39-e2aa1689e2.chunk.js → 38-6ad53aa15b.chunk.js} +1 -1
  260. package/dist/scripts/38.chunk.js +343 -1
  261. package/dist/scripts/38.chunk.js.map +1 -0
  262. package/dist/scripts/{40-53d132e3b4.chunk.js → 39-46c747b1d9.chunk.js} +1 -1
  263. package/dist/scripts/39.chunk.js +318 -1
  264. package/dist/scripts/39.chunk.js.map +1 -0
  265. package/dist/scripts/4-6942fee782.chunk.js +1 -0
  266. package/dist/scripts/4.chunk.js +1030 -1
  267. package/dist/scripts/4.chunk.js.map +1 -0
  268. package/dist/scripts/{41-023d613070.chunk.js → 40-c1b8806b1c.chunk.js} +1 -1
  269. package/dist/scripts/40.chunk.js +236 -1
  270. package/dist/scripts/40.chunk.js.map +1 -0
  271. package/dist/scripts/{42-ba3779218d.chunk.js → 41-f4c23477e3.chunk.js} +1 -1
  272. package/dist/scripts/41.chunk.js +231 -1
  273. package/dist/scripts/41.chunk.js.map +1 -0
  274. package/dist/scripts/42-7a5b92d70b.chunk.js +1 -0
  275. package/dist/scripts/42.chunk.js +350 -1
  276. package/dist/scripts/42.chunk.js.map +1 -0
  277. package/dist/scripts/43-97193a87df.chunk.js +1 -0
  278. package/dist/scripts/43.chunk.js +225 -1
  279. package/dist/scripts/43.chunk.js.map +1 -0
  280. package/dist/scripts/{46-6501968ace.chunk.js → 44-7f92272274.chunk.js} +1 -1
  281. package/dist/scripts/44.chunk.js +318 -1
  282. package/dist/scripts/44.chunk.js.map +1 -0
  283. package/dist/scripts/45-265f1a7a42.chunk.js +1 -0
  284. package/dist/scripts/45.chunk.js +64 -1
  285. package/dist/scripts/45.chunk.js.map +1 -0
  286. package/dist/scripts/46-a594ad7eba.chunk.js +1 -0
  287. package/dist/scripts/46.chunk.js +108 -1
  288. package/dist/scripts/46.chunk.js.map +1 -0
  289. package/dist/scripts/47-99777c20cf.chunk.js +1 -0
  290. package/dist/scripts/47.chunk.js +110 -1
  291. package/dist/scripts/47.chunk.js.map +1 -0
  292. package/dist/scripts/48-9880523c82.chunk.js +1 -0
  293. package/dist/scripts/48.chunk.js +148 -1
  294. package/dist/scripts/48.chunk.js.map +1 -0
  295. package/dist/scripts/{50-00ffd5d7c6.chunk.js → 49-5e718594e5.chunk.js} +1 -1
  296. package/dist/scripts/49.chunk.js +142 -1
  297. package/dist/scripts/49.chunk.js.map +1 -0
  298. package/dist/scripts/5-2f631dcd74.chunk.js +1 -0
  299. package/dist/scripts/5.chunk.js +3262 -1
  300. package/dist/scripts/5.chunk.js.map +1 -0
  301. package/dist/scripts/50-8cb0d9cd7d.chunk.js +1 -0
  302. package/dist/scripts/50.chunk.js +145 -1
  303. package/dist/scripts/50.chunk.js.map +1 -0
  304. package/dist/scripts/{52-e5dfa5a640.chunk.js → 51-211b643ca5.chunk.js} +1 -1
  305. package/dist/scripts/51.chunk.js +176 -1
  306. package/dist/scripts/51.chunk.js.map +1 -0
  307. package/dist/scripts/{53-79d5905fc6.chunk.js → 52-bfb2683b5d.chunk.js} +1 -1
  308. package/dist/scripts/52.chunk.js +160 -1
  309. package/dist/scripts/52.chunk.js.map +1 -0
  310. package/dist/scripts/{54-4950ec1d52.chunk.js → 53-3cf5cd5f69.chunk.js} +1 -1
  311. package/dist/scripts/53.chunk.js +98 -1
  312. package/dist/scripts/53.chunk.js.map +1 -0
  313. package/dist/scripts/{55-accb81090d.chunk.js → 54-26807e3e49.chunk.js} +1 -1
  314. package/dist/scripts/54.chunk.js +48 -1
  315. package/dist/scripts/54.chunk.js.map +1 -0
  316. package/dist/scripts/55-d38be4860b.chunk.js +1 -0
  317. package/dist/scripts/55.chunk.js +99 -1
  318. package/dist/scripts/55.chunk.js.map +1 -0
  319. package/dist/scripts/56-d4abc25ec3.chunk.js +1 -0
  320. package/dist/scripts/56.chunk.js +64 -1
  321. package/dist/scripts/56.chunk.js.map +1 -0
  322. package/dist/scripts/57.chunk.js +72 -0
  323. package/dist/scripts/57.chunk.js.map +1 -0
  324. package/dist/scripts/58.chunk.js +73 -0
  325. package/dist/scripts/58.chunk.js.map +1 -0
  326. package/dist/scripts/59.chunk.js +70 -0
  327. package/dist/scripts/59.chunk.js.map +1 -0
  328. package/dist/scripts/6-4d72a3c3fc.chunk.js +1 -0
  329. package/dist/scripts/6.chunk.js +24 -1
  330. package/dist/scripts/6.chunk.js.map +1 -0
  331. package/dist/scripts/60.chunk.js +32 -0
  332. package/dist/scripts/60.chunk.js.map +1 -0
  333. package/dist/scripts/61.chunk.js +29 -0
  334. package/dist/scripts/61.chunk.js.map +1 -0
  335. package/dist/scripts/62.chunk.js +27 -0
  336. package/dist/scripts/62.chunk.js.map +1 -0
  337. package/dist/scripts/63.chunk.js +67 -0
  338. package/dist/scripts/63.chunk.js.map +1 -0
  339. package/dist/scripts/64.chunk.js +80 -0
  340. package/dist/scripts/64.chunk.js.map +1 -0
  341. package/dist/scripts/65.chunk.js +65 -0
  342. package/dist/scripts/65.chunk.js.map +1 -0
  343. package/dist/scripts/66.chunk.js +67 -0
  344. package/dist/scripts/66.chunk.js.map +1 -0
  345. package/dist/scripts/67.chunk.js +104 -0
  346. package/dist/scripts/67.chunk.js.map +1 -0
  347. package/dist/scripts/68.chunk.js +69 -0
  348. package/dist/scripts/68.chunk.js.map +1 -0
  349. package/dist/scripts/69.chunk.js +89 -0
  350. package/dist/scripts/69.chunk.js.map +1 -0
  351. package/dist/scripts/7-90ad392b55.chunk.js +1 -0
  352. package/dist/scripts/7.chunk.js +327 -1
  353. package/dist/scripts/7.chunk.js.map +1 -0
  354. package/dist/scripts/70.chunk.js +36 -0
  355. package/dist/scripts/70.chunk.js.map +1 -0
  356. package/dist/scripts/8.chunk.js +470 -0
  357. package/dist/scripts/8.chunk.js.map +1 -0
  358. package/dist/scripts/9-52877087ef.chunk.js +1 -0
  359. package/dist/scripts/9.chunk.js +471 -7
  360. package/dist/scripts/9.chunk.js.map +1 -0
  361. package/dist/scripts/bundle-99976c17a2.min.js +1 -0
  362. package/dist/scripts/bundle.js +34769 -1
  363. package/dist/scripts/bundle.js.map +1 -0
  364. package/dist/scripts/bundles.json +1 -1
  365. package/package.json +50 -49
  366. package/typings/libs/Trackers.d.ts +10 -0
  367. package/dist/css/33.chunk.css +0 -4
  368. package/dist/css/41.chunk.css +0 -4
  369. package/dist/css/46.chunk.css +0 -2
  370. package/dist/libs/shared/src/context/SearchAppContext.d.ts +0 -9
  371. package/dist/scripts/0-7ab5925809.chunk.js +0 -1
  372. package/dist/scripts/1-08c7a79a47.chunk.js +0 -1
  373. package/dist/scripts/10-20d3430ce2.chunk.js +0 -1
  374. package/dist/scripts/11-7a25650335.chunk.js +0 -1
  375. package/dist/scripts/12-6609af3add.chunk.js +0 -1
  376. package/dist/scripts/13-5adebd80b3.chunk.js +0 -1
  377. package/dist/scripts/14-dbd27fa3a5.chunk.js +0 -1
  378. package/dist/scripts/15-5a0e1ed526.chunk.js +0 -1
  379. package/dist/scripts/16-3adc733311.chunk.js +0 -1
  380. package/dist/scripts/17-a942a8ff32.chunk.js +0 -1
  381. package/dist/scripts/18-ab78fe1ad4.chunk.js +0 -1
  382. package/dist/scripts/19-04ba4906ea.chunk.js +0 -1
  383. package/dist/scripts/2-41fe2d7e77.chunk.js +0 -1
  384. package/dist/scripts/20-f0dcfc47a9.chunk.js +0 -1
  385. package/dist/scripts/21-33e50c0d6b.chunk.js +0 -1
  386. package/dist/scripts/22-d85dfba692.chunk.js +0 -1
  387. package/dist/scripts/23-90201310df.chunk.js +0 -1
  388. package/dist/scripts/24-bc8f0f5709.chunk.js +0 -1
  389. package/dist/scripts/25-317106a5da.chunk.js +0 -1
  390. package/dist/scripts/26-4a3372406a.chunk.js +0 -1
  391. package/dist/scripts/27-074f7ed617.chunk.js +0 -1
  392. package/dist/scripts/28-3f552efb1d.chunk.js +0 -1
  393. package/dist/scripts/29-3b0fed6546.chunk.js +0 -1
  394. package/dist/scripts/3-4c7cdc97d7.chunk.js +0 -7
  395. package/dist/scripts/30-efc1720b45.chunk.js +0 -1
  396. package/dist/scripts/31-fd10b2d2e3.chunk.js +0 -1
  397. package/dist/scripts/32-77df1d4c39.chunk.js +0 -1
  398. package/dist/scripts/33-7c092bbe19.chunk.js +0 -1
  399. package/dist/scripts/34-3c94a6fffe.chunk.js +0 -1
  400. package/dist/scripts/37-ecd001861c.chunk.js +0 -1
  401. package/dist/scripts/38-a42dc5fd6c.chunk.js +0 -1
  402. package/dist/scripts/4-9b843edce7.chunk.js +0 -1
  403. package/dist/scripts/43-9b84379d80.chunk.js +0 -1
  404. package/dist/scripts/44-1bedb97d4b.chunk.js +0 -1
  405. package/dist/scripts/45-b004111b2b.chunk.js +0 -1
  406. package/dist/scripts/47-cece788594.chunk.js +0 -1
  407. package/dist/scripts/48-722f37b837.chunk.js +0 -1
  408. package/dist/scripts/49-cb04b28057.chunk.js +0 -1
  409. package/dist/scripts/5-841e3d083b.chunk.js +0 -1
  410. package/dist/scripts/51-ed260ddadd.chunk.js +0 -1
  411. package/dist/scripts/56-83e51af2a6.chunk.js +0 -1
  412. package/dist/scripts/6-c429467dba.chunk.js +0 -1
  413. package/dist/scripts/7-3c52b41cbf.chunk.js +0 -1
  414. package/dist/scripts/9-fef5ef0698.chunk.js +0 -1
  415. package/dist/scripts/bundle-7782a79aa5.min.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-item/AudienceItem.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-item/audience-item.scss?e8ce","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-item/index.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-item/partial-loading/PartialAudiences.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/footer/PreferenceFooter.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/footer/preference-footer.scss?29ba","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/index.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/progress/PreferenceProgress.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/progress/preference-progress.scss?8615","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/SubjectPreferenceGrid.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/subject-preference-grid.scss?3ca9","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItem.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItemStatus.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/partial-loading/PartialSubjectPreferences.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/partial-loading/partial-subject-preferences.scss?5403","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/subject-preference-item.scss?3323","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/contexts/SubjectPreferencesContext.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/flight-requests/PreferenceRequests.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseGetMediaQueryString.ts","file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/subjects/views/preferences/PreferencesView.tsx","file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/subjects/views/preferences/index.ts","file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/subjects/views/preferences/level-preferences/LevelPreferencesView.tsx","webpack://@clickview/lite/./src/apps/subjects/views/preferences/level-preferences/level-preferences.scss?eff2","webpack://@clickview/lite/./src/apps/subjects/views/preferences/preferences.scss?5d3c","file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/subjects/views/preferences/subject-preferences/SubjectPreferencesView.tsx","file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/subjects/views/preferences/summary/PreferencesSummaryView.tsx","webpack://@clickview/lite/./src/apps/subjects/views/preferences/summary/preferences-summary.scss?de02"],"names":[],"mappings":"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","file":"scripts/21.chunk.js","sourcesContent":["import * as React from 'react';\r\n\r\nimport { PresentationAudience } from 'libs/shared/interfaces';\r\n\r\nimport styles from './audience-item.scss';\r\n\r\nfunction lowerCaseToTitleCase(str: string): string {\r\n return str.split(' ').map((s: string) => s.charAt(0).toUpperCase() + s.substring(1)).join(' ');\r\n}\r\n\r\nfunction getColourClass(highlight: boolean, isDisabled: boolean): string {\r\n if (highlight) return 'badge-info text-light';\r\n if (isDisabled) return `${styles.disabled} text-muted`;\r\n return 'badge-light';\r\n}\r\n\r\ninterface AudienceItemProps {\r\n audience: PresentationAudience;\r\n highlight: boolean;\r\n setAudience?: (audience: PresentationAudience, highlight: boolean) => void;\r\n isDisabled?: boolean;\r\n extraClasses?: string;\r\n}\r\n\r\nAudienceItem.defaultProps = {\r\n extraClasses: ''\r\n};\r\n\r\nexport function AudienceItem(props: AudienceItemProps): React.ReactElement {\r\n const { audience, highlight, setAudience, isDisabled, extraClasses } = props;\r\n\r\n const colourClass = getColourClass(highlight, isDisabled);\r\n const cursorClass = isDisabled ? 'cursor-default' : 'cursor-pointer';\r\n const className = `badge-pill d-inline-block mr-1 ${cursorClass} ${colourClass} ${extraClasses}`;\r\n\r\n const onClick = () => {\r\n if (isDisabled)\r\n return;\r\n\r\n setAudience(audience, !highlight);\r\n };\r\n\r\n return (\r\n <span\r\n className={className}\r\n onClick={onClick}\r\n role='checkbox'\r\n aria-checked={highlight}\r\n >\r\n {lowerCaseToTitleCase(audience.name)}\r\n </span>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"disabled\":\"cv--disabled--1KxF9\"};","export * from './AudienceItem';\r\nexport * from './partial-loading/PartialAudiences';","import * as React from 'react';\r\n\r\ninterface PartialAudiencesProps {\r\n count?: number;\r\n width?: number;\r\n height?: number;\r\n align?: 'left' | 'center';\r\n}\r\n\r\nexport function PartialAudiences({ width = 90, height = 35, count = 5, align = 'left' }: PartialAudiencesProps): JSX.Element {\r\n const justifyClass = align === 'center' ? 'justify-content-center' : 'justify-content-start';\r\n\r\n return (\r\n <ul className={`d-flex flex-wrap pl-0 m-0 ${justifyClass}`}>\r\n {Array(count).fill(\r\n <li\r\n className='partial-loading-background mx-1 mb-1 badge-pill list-unstyled'\r\n style={{ height: `${height}px`, width: `${width}px` }}\r\n />\r\n )}\r\n </ul>\r\n );\r\n}","import * as React from 'react';\r\n\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\r\n\r\nimport styles from './preference-footer.scss';\r\n\r\ninterface PreferenceFooterProps extends React.PropsWithChildren<{}> {\r\n align?: 'right' | 'center';\r\n}\r\n\r\nexport function PreferenceFooter(props: PreferenceFooterProps): JSX.Element {\r\n const mediaQuery = useGetMediaQueryString();\r\n const widthClass = (mediaQuery === MediaQueryStrings.SM || mediaQuery === MediaQueryStrings.XS) ? 'w-100' : 'w-75';\r\n\r\n let justifyClass = 'justify-content-between';\r\n if (props.align === 'right')\r\n justifyClass = 'justify-content-end';\r\n else if (props.align === 'center')\r\n justifyClass = 'justify-content-center';\r\n\r\n return (\r\n <div className={`${widthClass} ${justifyClass} ${styles.preferenceFooter} d-flex px-3`}>\r\n {props.children}\r\n </div>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"preferenceFooter\":\"cv--preferenceFooter--P29kw\"};","export * from './footer/PreferenceFooter';\r\nexport * from './progress/PreferenceProgress';\r\nexport * from './subject-preference-grid/SubjectPreferenceGrid';\r\nexport * from './subject-preference-item/SubjectPreferenceItem';","import * as React from 'react';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport styles from './preference-progress.scss';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\n\r\nexport interface PreferenceStepHash {\r\n appLink: Core.AppLink;\r\n active: boolean;\r\n}\r\n\r\nfunction getClass(active: boolean): string {\r\n const baseClasses = 'rounded-circle mx-2 cursor-pointer ' + styles.progressItem;\r\n const colourClass = active ? 'bg-info' : 'bg-light';\r\n\r\n return `${baseClasses} ${colourClass}`;\r\n}\r\n\r\ninterface PreferenceProgressProps {\r\n steps: PreferenceStepHash[];\r\n}\r\n\r\nexport function PreferenceProgress(props: PreferenceProgressProps): JSX.Element {\r\n return (\r\n <nav className='d-flex justify-content-center pt-3'>\r\n {props.steps.map((step, i) => {\r\n return (\r\n <AppLink\r\n key={i}\r\n appLink={!step.active ? step.appLink : null}\r\n className={getClass(step.active)}\r\n />\r\n );\r\n })}\r\n </nav>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"progressItem\":\"cv--progressItem--1Znll\"};","import * as React from 'react';\r\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\r\n\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { Classification } from 'libs/shared/interfaces';\r\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\r\n\r\nimport { SubjectPreferenceItem } from 'libs/shared/apps/subjects/components/preferences';\r\nimport { SubjectPreferencesContext } from 'libs/shared/apps/subjects/contexts/SubjectPreferencesContext';\r\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\r\n\r\nimport styles from './subject-preference-grid.scss';\r\n\r\nfunction useGetRowItemCapacity(): number {\r\n const viewportWidth = useGetMediaQueryString();\r\n\r\n switch (viewportWidth) {\r\n case MediaQueryStrings.LG:\r\n default:\r\n return 5;\r\n\r\n case MediaQueryStrings.MD:\r\n return 4;\r\n\r\n case MediaQueryStrings.SM:\r\n return 3;\r\n\r\n case MediaQueryStrings.XS:\r\n return 2;\r\n }\r\n}\r\n\r\nfunction isDisabled(subject: ClassificationPreference, expandedSubject: ClassificationPreference): boolean {\r\n if (!expandedSubject || subject.id === expandedSubject.id)\r\n return false;\r\n\r\n if (expandedSubject.children.find(child => child.id === subject.id))\r\n return false;\r\n\r\n return true;\r\n}\r\n\r\ninterface SubjectPreferenceGridRowProps extends SubjectPreferenceGridProps {}\r\n\r\nfunction SubjectPreferenceGridRow(props: SubjectPreferenceGridRowProps): JSX.Element {\r\n const context = React.useContext(SubjectPreferencesContext);\r\n\r\n return (\r\n <>\r\n {/* Props here are hardcoded to be \"Selectable\" type - need to change this */}\r\n {props.subjects.map(subject => {\r\n const clickHandler = subject.isExpandableOption ? props.onExpand : props.onSelect;\r\n\r\n return (\r\n <SubjectPreferenceItem\r\n key={subject.id}\r\n subject={subject}\r\n selected={context.selectedSubjects.includes(subject.id)}\r\n disabled={isDisabled(subject, context.expandedSubject)}\r\n onClick={(e: React.MouseEvent<HTMLLIElement, MouseEvent>) => clickHandler(subject)}\r\n />\r\n );\r\n })}\r\n </>\r\n );\r\n}\r\n\r\ninterface SubjectPreferenceGridProps {\r\n subjects: ClassificationPreference[];\r\n onSelect: (subject: Classification) => void;\r\n onExpand: (subject: Classification) => void;\r\n}\r\n\r\nexport function SubjectPreferenceGrid({ subjects, ...eventHandlers }: SubjectPreferenceGridProps): JSX.Element {\r\n const { expandedSubject } = React.useContext(SubjectPreferencesContext);\r\n\r\n const itemsPerRow = useGetRowItemCapacity();\r\n\r\n /**\r\n * This is an array of arrays, where each sub-array is a row of classifications.\r\n * We do this to make sure any sub-grid's of child preference options get rendered in the row\r\n * directly beneath their parent's row.\r\n */\r\n const subjectRows = subjects.reduce((\r\n acc: ClassificationPreference[][], subject: ClassificationPreference, index: number\r\n ) => {\r\n index % itemsPerRow === 0\r\n ? acc.push([subject]) // Start a new row\r\n : ArrayHelper.last(acc).push(subject); // Fill up an existing row\r\n\r\n return acc;\r\n }, []);\r\n\r\n return (\r\n <ul className={styles.grid}>\r\n {subjectRows.map((row, i) => {\r\n const isExpanded = expandedSubject && !!row.find(subject => {\r\n return expandedSubject.id === subject.id && subject.isExpandableOption;\r\n });\r\n\r\n return (\r\n <React.Fragment key={i}>\r\n <SubjectPreferenceGridRow\r\n subjects={row}\r\n {...eventHandlers}\r\n />\r\n\r\n {isExpanded && (\r\n <li className={`${styles.subgrid} m-0`}>\r\n <SubjectPreferenceGrid\r\n subjects={expandedSubject.children as ClassificationPreference[]}\r\n {...eventHandlers}\r\n />\r\n </li>\r\n )}\r\n </React.Fragment>\r\n );\r\n })}\r\n </ul>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"grid\":\"cv--grid--G_RXX\",\"subgrid\":\"cv--subgrid--38ohZ\"};","import * as React from 'react';\r\n\r\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\r\nimport { ImageSize } from 'libs/shared/enums/Images';\r\nimport { SubjectPreferencesContext } from 'libs/shared/apps/subjects/contexts/SubjectPreferencesContext';\r\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\r\n\r\nimport { SelectableItemStatus, ExpandableItemStatus } from './SubjectPreferenceItemStatus';\r\nimport styles from './subject-preference-item.scss';\r\n\r\ninterface SubjectPreferenceItemProps {\r\n subject: ClassificationPreference;\r\n selected: boolean;\r\n disabled?: boolean;\r\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\r\n extraClasses?: string;\r\n}\r\n\r\nexport function SubjectPreferenceItem(props: SubjectPreferenceItemProps): JSX.Element {\r\n const context = React.useContext(SubjectPreferencesContext);\r\n\r\n function getContainerClass(): string {\r\n let baseClass = styles.subjectPreferenceItem;\r\n\r\n if (props.extraClasses)\r\n baseClass += ' ' + props.extraClasses;\r\n\r\n if (props.disabled)\r\n baseClass += ' ' + styles.disabled;\r\n\r\n if (props.selected)\r\n baseClass += ' ' + styles.selected;\r\n\r\n return baseClass;\r\n }\r\n\r\n const coverUrl = props.subject.cover ? ImageHelper.createUrl(props.subject.cover.url, { size: ImageSize.Small }) : '';\r\n\r\n const childIds = props.subject.isExpandableOption ? props.subject.children.map(child => child.id) : [];\r\n const selectedChildCount = context?.selectedSubjects?.filter(selection => childIds.includes(selection)).length;\r\n\r\n const onClick = (!props.disabled && props.onClick) ? props.onClick : () => {};\r\n\r\n const isExpanded = context?.expandedSubject?.id === props.subject.id;\r\n const caretClass = `${styles.expandCaret} ${isExpanded ? styles.up : styles.down}`;\r\n\r\n return (\r\n <li\r\n className={getContainerClass()}\r\n onClick={onClick}\r\n aria-checked={props.selected}\r\n aria-haspopup={props.subject.isExpandableOption}\r\n role={props.subject.isExpandableOption ? 'button' : 'checkbox'}\r\n style={{ backgroundImage: `url(${coverUrl})` }}\r\n tabIndex={0}\r\n title={props.subject.name}\r\n >\r\n <div className={`${styles.textBox} p-2`}>\r\n <p className='m-0 text-truncate'>\r\n {props.subject.name}\r\n <span className={props.subject.isExpandableOption ? caretClass : ''} />\r\n </p>\r\n\r\n {props.subject.isExpandableOption\r\n ? <ExpandableItemStatus selectedChildrenCount={selectedChildCount} />\r\n : <SelectableItemStatus selected={props.selected} />\r\n }\r\n </div>\r\n </li>\r\n );\r\n}","import * as React from 'react';\r\n\r\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport styles from './subject-preference-item.scss';\r\n\r\ninterface ExpandableItemStatusProps {\r\n selectedChildrenCount: number;\r\n}\r\n\r\nexport const ExpandableItemStatus = (props: ExpandableItemStatusProps): JSX.Element => {\r\n if (!props.selectedChildrenCount)\r\n return <></>;\r\n\r\n return (\r\n <div className={`${styles.itemStatus} ${styles.green}`}>\r\n {props.selectedChildrenCount}\r\n </div>\r\n );\r\n};\r\n\r\ninterface SelectableItemStatusProps {\r\n selected: boolean;\r\n}\r\n\r\nexport const SelectableItemStatus = (props: SelectableItemStatusProps): JSX.Element => {\r\n return (\r\n <div className={`${styles.itemStatus} ${props.selected ? styles.green : styles.unchecked}`}>\r\n {props.selected\r\n ? <SvgContainer svgName={cvSvgLibrary.Check} />\r\n : <SvgContainer svgName={cvSvgLibrary.Plus} />\r\n }\r\n </div>\r\n );\r\n};\r\n","import * as React from 'react';\r\n\r\nimport gridStyles from '../../subject-preference-grid/subject-preference-grid.scss';\r\nimport styles from './partial-subject-preferences.scss';\r\n\r\ninterface PartialSubjectPreferencesProps {\r\n count: number;\r\n style: 'grid' | 'list';\r\n}\r\n\r\nexport function PartialSubjectPreferences(props: PartialSubjectPreferencesProps): JSX.Element {\r\n const className = props.style === 'grid' ? gridStyles.grid : styles.partialSubjectList;\r\n\r\n return (\r\n <ul className={className}>\r\n {Array(props.count).fill(<li className={`${styles.partialSubject} partial-loading-background`} />)}\r\n </ul>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"partialSubject\":\"cv--partialSubject--1rrH2\",\"partialSubjectList\":\"cv--partialSubjectList--15Qdz\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"subjectPreferenceItem\":\"cv--subjectPreferenceItem--2qd2_\",\"expandCaret\":\"cv--expandCaret--1SmX9\",\"down\":\"cv--down--dE3mQ\",\"up\":\"cv--up--2vvzg\",\"disabled\":\"cv--disabled--3xx8o\",\"selected\":\"cv--selected--12fy7\",\"textBox\":\"cv--textBox--3ic5e\",\"itemStatus\":\"cv--itemStatus--2d1iD\",\"unchecked\":\"cv--unchecked--L-HyS\",\"green\":\"cv--green--1pWm4\"};","import { createContext } from 'react';\r\nimport { ClassificationPreference } from '../interfaces/ClassificationPreference';\r\n\r\ninterface SubjectPreferencesContextFields {\r\n selectedSubjects: string[];\r\n expandedSubject: ClassificationPreference;\r\n}\r\n\r\nexport const SubjectPreferencesContext = createContext<SubjectPreferencesContextFields>(undefined);","import { Flight } from 'libs/common/flight';\r\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\r\nimport { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\r\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\r\n\r\nconst classificationQuery = SharedWithStatements.CLASSIFICATION;\r\n\r\nconst endpoints = {\r\n // Subjects\r\n allSubjectPreferences: () => `/api/domain/v1/subjects/preferences?query=${classificationQuery}`,\r\n mySubjectPreferences: () => `/api/domain/v1/subjects/classifications/following?query=${classificationQuery}`,\r\n followSubjects: () => '/api/domain/v1/subjects/classifications/following',\r\n unfollowSubjects: (ids: string[]) => UrlHelper.urlBuilder('/api/domain/v1/subjects/classifications/following', { id: ids }),\r\n\r\n // Levels\r\n allLevelPreferences: () => `/api/domain/v1/subjects/audiences`,\r\n myLevelPreferences: () => `/api/domain/v1/subjects/audiences/following`,\r\n followLevels: () => `/api/domain/v1/subjects/audiences/following`,\r\n unfollowLevels: (ids: string[]) => UrlHelper.urlBuilder('/api/domain/v1/subjects/audiences/following', { id: ids })\r\n};\r\n\r\nexport const PreferenceRequests = {\r\n /**\r\n * Subjects\r\n */\r\n allSubjectPreferences(): Flight.Request {\r\n return {\r\n url: endpoints.allSubjectPreferences(),\r\n key: `subject:preference:options`\r\n };\r\n },\r\n\r\n mySubjectPreferences(): Flight.Request {\r\n return {\r\n url: endpoints.mySubjectPreferences(),\r\n key: `my:subject:preferences`,\r\n normalize: false\r\n };\r\n },\r\n\r\n followSubjects(subjectIds: string[], success: () => void, always: () => void): Flight.Request {\r\n return {\r\n url: endpoints.followSubjects(),\r\n key: `follow:subjects`,\r\n data: subjectIds,\r\n type: HttpVerbs.POST,\r\n success,\r\n always,\r\n invalidationKeys: ['my:subject:preferences']\r\n };\r\n },\r\n\r\n unfollowSubjects(subjectIds: string[], success: () => void, always: () => void): Flight.Request {\r\n return {\r\n url: endpoints.unfollowSubjects(subjectIds),\r\n key: `unfollow:subjects`,\r\n type: HttpVerbs.DELETE,\r\n success,\r\n always,\r\n invalidationKeys: ['my:subject:preferences']\r\n };\r\n },\r\n\r\n /**\r\n * Levels\r\n */\r\n allLevelPreferences(): Flight.Request {\r\n return {\r\n url: endpoints.allLevelPreferences(),\r\n key: `level:preference:options`,\r\n normalize: false\r\n };\r\n },\r\n\r\n myLevelPreferences(): Flight.Request {\r\n return {\r\n url: endpoints.myLevelPreferences(),\r\n key: `my:level:preferences`,\r\n normalize: false\r\n };\r\n },\r\n\r\n followLevels(levelIds: string[], success: () => void, always: () => void): Flight.Request {\r\n return {\r\n url: endpoints.followLevels(),\r\n key: `follow:levels`,\r\n data: levelIds,\r\n type: HttpVerbs.POST,\r\n success,\r\n always,\r\n invalidationKeys: ['my:level:preferences']\r\n };\r\n },\r\n\r\n unfollowLevels(levelIds: string[], success: () => void, always: () => void): Flight.Request {\r\n return {\r\n url: endpoints.unfollowLevels(levelIds),\r\n key: `unfollow:levels`,\r\n type: HttpVerbs.DELETE,\r\n success,\r\n always,\r\n invalidationKeys: ['my:level:preferences']\r\n };\r\n }\r\n};","import { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { useMediaQuery } from './UseMediaQuery';\r\n\r\nexport function useGetMediaQueryString(): MediaQueryStrings {\r\n /**\r\n * I tried to do this by looping through `MediaQueryStrings`'s keys, but you can't run\r\n * hooks in a loop :(\r\n */\r\n const isXS = useMediaQuery(MediaQueryStrings.XS);\r\n const isSM = useMediaQuery(MediaQueryStrings.SM);\r\n const isMD = useMediaQuery(MediaQueryStrings.MD);\r\n const isLG = useMediaQuery(MediaQueryStrings.LG);\r\n const isXL = useMediaQuery(MediaQueryStrings.XL);\r\n const isXXL = useMediaQuery(MediaQueryStrings.XXL);\r\n\r\n let currentString = MediaQueryStrings.LG; // default\r\n if (isXS) currentString = MediaQueryStrings.XS;\r\n if (isSM) currentString = MediaQueryStrings.SM;\r\n if (isMD) currentString = MediaQueryStrings.MD;\r\n if (isLG) currentString = MediaQueryStrings.LG;\r\n if (isXL) currentString = MediaQueryStrings.XL;\r\n if (isXXL) currentString = MediaQueryStrings.XXL;\r\n\r\n return currentString;\r\n}","import * as React from 'react';\r\n\r\nimport { PreferenceStepHash, PreferenceProgress } from 'libs/shared/apps/subjects/components/preferences/progress/PreferenceProgress';\r\n\r\nimport { Actions } from 'shared/constants/LiteActions';\r\n\r\nimport { SubjectPreferencesView, LevelPreferencesView, PreferencesSummaryView } from 'apps/subjects/views/preferences';\r\n\r\nimport styles from './preferences.scss';\r\n\r\ntype PreferenceStep = 'subjects' | 'levels' | 'summary';\r\n\r\nfunction getComponent(step: PreferenceStep, application: string): JSX.Element | null {\r\n /**\r\n * Gonna need a way to work out whether the user is going through onboarding, or if they\r\n * are just modifying their previously set preferences. Hardcoding this for now\r\n */\r\n const onboarding = true;\r\n\r\n switch (step) {\r\n case 'levels':\r\n return <LevelPreferencesView application={application} />;\r\n\r\n case 'subjects':\r\n return <SubjectPreferencesView application={application} />;\r\n\r\n case 'summary':\r\n return <PreferencesSummaryView application={application} onboarding={onboarding} />;\r\n\r\n default:\r\n return null;\r\n }\r\n}\r\n\r\nfunction getSteps(currentStep: PreferenceStep, application: string): PreferenceStepHash[] {\r\n const baseAppLink = {\r\n application,\r\n action: Actions.Subjects.PREFERENCES\r\n };\r\n\r\n return [\r\n {\r\n active: currentStep === 'levels',\r\n appLink: { ...baseAppLink, params: { step: 'levels' } }\r\n },\r\n {\r\n active: currentStep === 'subjects',\r\n appLink: { ...baseAppLink, params: { step: 'subjects' } }\r\n },\r\n {\r\n active: currentStep === 'summary',\r\n appLink: { ...baseAppLink, params: { step: 'summary' } }\r\n }\r\n ];\r\n}\r\n\r\ninterface PreferencesViewProps {\r\n step: PreferenceStep;\r\n application: string;\r\n}\r\n\r\nexport function PreferencesView({ step: currentStep = 'levels', application }: PreferencesViewProps): JSX.Element {\r\n const component = getComponent(currentStep, application);\r\n return (\r\n <div className={`p-3 position-relative ${styles.preferencesContainer}`}>\r\n <PreferenceProgress steps={getSteps(currentStep, application)} />\r\n {component}\r\n </div>\r\n );\r\n}","export * from './PreferencesView';\r\nexport * from './subject-preferences/SubjectPreferencesView';\r\nexport * from './level-preferences/LevelPreferencesView';\r\nexport * from './summary/PreferencesSummaryView';","import * as React from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { Button, Spinner } from 'react-bootstrap';\r\n\r\nimport { Flight } from 'libs/common/flight';\r\nimport { Core } from 'libs/common/core';\r\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\r\n\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\nimport { LocationContext, WorkflowPhase, UserAction, EntityType, ToggleDescriptor } from 'libs/analytics/interfaces';\r\n\r\nimport { PresentationAudience } from 'libs/shared/interfaces';\r\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\r\nimport { PreferenceRequests } from 'libs/shared/flight-requests/PreferenceRequests';\r\nimport { PreferenceFooter } from 'libs/shared/apps/subjects/components/preferences/footer/PreferenceFooter';\r\nimport { AudienceItem, PartialAudiences } from 'libs/shared/apps/subjects/components/audience-item';\r\n\r\nimport { Actions } from 'shared/constants/LiteActions';\r\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\r\n\r\nimport styles from './level-preferences.scss';\r\n\r\nconst namespace = 'subjects.levelPreferences';\r\n\r\ninterface LevelPreferencesViewProps {\r\n application: string;\r\n}\r\n\r\nexport function LevelPreferencesView({ application }: LevelPreferencesViewProps): JSX.Element {\r\n const [ selectedLevels, setSelectedLevels ] = React.useState<string[]>([]);\r\n const [ showSpinner, setShowSpinner ] = React.useState<boolean>(false);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const preferenceOptions = Flight.useBasicFetch<PresentationAudience[]>(\r\n PreferenceRequests.allLevelPreferences());\r\n const preselections = Flight.useBasicFetch<PresentationAudience[]>(\r\n PreferenceRequests.myLevelPreferences());\r\n\r\n /**\r\n * Set initial selections\r\n */\r\n React.useEffect(() => {\r\n if (!preselections.data)\r\n return;\r\n\r\n const preselectedIds = preselections.data.map(level => level.masterId);\r\n setSelectedLevels(ArrayHelper.uniq([ ...selectedLevels, ...preselectedIds ]));\r\n }, [preselections.data]);\r\n\r\n function onSelectLevel(level: PresentationAudience): void {\r\n const newSelections = ArrayHelper.addOrRemoveImmutable(selectedLevels, level.masterId);\r\n setSelectedLevels(newSelections);\r\n }\r\n\r\n function onSelectAllLevels(): void {\r\n setSelectedLevels(preferenceOptions.data.map(option => option.masterId));\r\n }\r\n\r\n function onSave(): void {\r\n if (!hasChanged()) {\r\n Core.AppLinkHelper.trigger({\r\n application,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'subjects' }\r\n });\r\n return;\r\n }\r\n\r\n setShowSpinner(true);\r\n\r\n const addedLevels = selectedLevels.filter(id => !preselections.data.find(level => level.masterId === id));\r\n const removedLevels = preselections.data?.filter(level => !selectedLevels.includes(level.masterId));\r\n\r\n if (addedLevels?.length)\r\n Flight.fetch(dispatch, PreferenceRequests.followLevels(addedLevels, () => {\r\n AnalyticsHelper.logUserAction({\r\n levelCount: addedLevels.length\r\n }, {\r\n location: LocationContext.PreferencesSettings,\r\n workflowPhase: WorkflowPhase.Complete,\r\n actionType: UserAction.Prefer,\r\n descriptor: ToggleDescriptor.On,\r\n entity: EntityType.Audience\r\n });\r\n }, onSaveComplete));\r\n\r\n if (removedLevels.length)\r\n Flight.fetch(dispatch, PreferenceRequests.unfollowLevels(removedLevels.map(l => l.masterId), () => {\r\n AnalyticsHelper.logUserAction({\r\n levelCount: removedLevels.length\r\n }, {\r\n location: LocationContext.PreferencesSettings,\r\n workflowPhase: WorkflowPhase.Complete,\r\n actionType: UserAction.Prefer,\r\n descriptor: ToggleDescriptor.Off,\r\n entity: EntityType.Audience\r\n });\r\n }, onSaveComplete));\r\n }\r\n\r\n function onSaveComplete(): void {\r\n setShowSpinner(false);\r\n\r\n Core.AppLinkHelper.trigger({\r\n application: AppChannels.SUBJECT,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'subjects' }\r\n });\r\n }\r\n\r\n function hasChanged(): boolean {\r\n if (!preselections.data)\r\n return false;\r\n\r\n const preselectedIds = preselections.data.map(p => p.masterId);\r\n return preselectedIds.sort().toString() !== selectedLevels.sort().toString();\r\n }\r\n\r\n return (\r\n <LanguageNamespaceContext.Provider value={namespace}>\r\n <form className='p-3'>\r\n <div className='text-center mb-4'>\r\n <h1 className='mb-3'>\r\n <Text phrase='heading' options={{ highlightClass: 'text-primary' }} />\r\n </h1>\r\n </div>\r\n\r\n {preferenceOptions.data\r\n ? <ul className={`d-flex flex-wrap justify-content-center mx-auto mb-0 pl-0 pt-3 pb-5 ${styles.levelList}`}>\r\n {preferenceOptions.data.map(option => (\r\n <AudienceItem\r\n key={option.masterId}\r\n audience={option}\r\n highlight={selectedLevels.includes(option.masterId)}\r\n setAudience={onSelectLevel}\r\n extraClasses='h4 py-1 px-3 mx-1 mb-1'\r\n />\r\n ))}\r\n </ul>\r\n : <div className='w-33 mx-auto pb-5 pt-3'><PartialAudiences align='center' /></div>\r\n }\r\n\r\n <PreferenceFooter align='right'>\r\n <div className='d-flex justify-content-right'>\r\n <div\r\n role='button'\r\n onClick={onSelectAllLevels}\r\n className='text-dark font-weight-bold cursor-pointer d-flex align-items-center mr-3'\r\n >\r\n <Text phrase='allLevels' />\r\n </div>\r\n\r\n <Button variant='dark' disabled={showSpinner} onClick={onSave} >\r\n {showSpinner\r\n ? <Spinner as='span' animation='border' role='status' size='sm' />\r\n : <Text phrase='next' />\r\n }\r\n </Button>\r\n </div>\r\n </PreferenceFooter>\r\n </form>\r\n </LanguageNamespaceContext.Provider>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"levelList\":\"cv--levelList--3ClyO\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"preferencesContainer\":\"cv--preferencesContainer--1sGnn\"};","import * as React from 'react';\r\nimport { Button, Spinner } from 'react-bootstrap';\r\nimport { useDispatch } from 'react-redux';\r\n\r\nimport { Flight } from 'libs/common/flight';\r\nimport { Core } from 'libs/common/core';\r\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { SubjectPreferenceGrid } from 'libs/shared/apps/subjects/components/preferences/subject-preference-grid/SubjectPreferenceGrid';\r\nimport { SubjectPreferencesContext } from 'libs/shared/apps/subjects/contexts/SubjectPreferencesContext';\r\nimport { Classification } from 'libs/shared/interfaces';\r\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\nimport { PreferenceRequests } from 'libs/shared/flight-requests/PreferenceRequests';\r\nimport { PartialSubjectPreferences } from 'libs/shared/apps/subjects/components/preferences/subject-preference-item/partial-loading/PartialSubjectPreferences';\r\nimport { PreferenceFooter } from 'libs/shared/apps/subjects/components/preferences/footer/PreferenceFooter';\r\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\r\n\r\nimport { Actions } from 'shared/constants/LiteActions';\r\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\nimport { LocationContext, WorkflowPhase, UserAction, EntityType, ToggleDescriptor } from 'libs/analytics/interfaces';\r\n\r\nconst namespace = 'subjects.subjectPreferencesView';\r\n\r\nfunction mixinBulkOptions(rawPreferenceOptions: ClassificationPreference[]): ClassificationPreference[] {\r\n if (!rawPreferenceOptions?.length)\r\n return [];\r\n\r\n const preferenceOptions: ClassificationPreference[] = [];\r\n\r\n rawPreferenceOptions.forEach(option => {\r\n if (!option.children || !option.children.length) {\r\n preferenceOptions.push({ ...option });\r\n return;\r\n }\r\n\r\n /**\r\n * Add a \"bulk\" preference option to an expandable subject's children e.g. \"All of Science\"\r\n */\r\n const bulkOption = {\r\n ...option,\r\n name: LanguageService.getPhrase(namespace, 'allOfParent', { parent: option.name }),\r\n isBulkOption: true\r\n };\r\n\r\n preferenceOptions.push({\r\n ...option,\r\n isExpandableOption: true,\r\n children: [ bulkOption, ...option.children ]\r\n });\r\n });\r\n\r\n return preferenceOptions;\r\n}\r\n\r\ninterface SubjectPreferencesViewProps {\r\n application: string;\r\n}\r\n\r\nexport function SubjectPreferencesView({ application }: SubjectPreferencesViewProps): JSX.Element {\r\n const [ selectedSubjects, setSelectedSubjects ] = React.useState<string[]>([]);\r\n const [ expandedSubject, setExpandedSubject ] = React.useState<ClassificationPreference>(null);\r\n\r\n const [ showSpinner, setShowSpinner ] = React.useState<boolean>(false);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const rawPreferenceOptions =\r\n Flight.useBasicFetch<ClassificationPreference[]>(PreferenceRequests.allSubjectPreferences());\r\n const preselections = Flight.useBasicFetch<Classification[]>(PreferenceRequests.mySubjectPreferences());\r\n\r\n /**\r\n * Set initial selections\r\n */\r\n React.useEffect(() => {\r\n if (!preselections.data)\r\n return;\r\n\r\n setSelectedSubjects(ArrayHelper.uniq([ ...selectedSubjects, ...preselections.data.map(p => p.id) ]));\r\n }, [preselections.data]);\r\n\r\n /**\r\n * Event handlers\r\n */\r\n function onSelect(subject: ClassificationPreference): void {\r\n let newSelections: string[] = [];\r\n\r\n if (subject.isBulkOption) {\r\n const childIds = subject.children.map(child => child.id);\r\n\r\n if (selectedSubjects.includes(subject.id)) { // Deselect all child subjects\r\n newSelections = selectedSubjects.filter(selectedId => {\r\n return selectedId !== subject.id && !childIds.includes(selectedId);\r\n });\r\n } else { // Select all child subjects\r\n newSelections = ArrayHelper.uniq([ ...selectedSubjects, subject.id, ...childIds ]);\r\n }\r\n } else {\r\n newSelections = ArrayHelper.addOrRemoveImmutable(selectedSubjects, subject.id);\r\n }\r\n\r\n setSelectedSubjects(newSelections);\r\n }\r\n\r\n function onExpand(subject: ClassificationPreference): void {\r\n setExpandedSubject(expandedSubject && expandedSubject.id === subject.id ? null : subject);\r\n }\r\n\r\n function hasChanged(): boolean {\r\n if (!preselections.data)\r\n return false;\r\n\r\n const preselectedIds = preselections.data.map(p => p.id);\r\n return preselectedIds.sort().toString() !== selectedSubjects.sort().toString();\r\n }\r\n\r\n function onSave(): void {\r\n if (!hasChanged()) {\r\n Core.AppLinkHelper.trigger({\r\n application,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'summary' }\r\n });\r\n return;\r\n }\r\n\r\n setShowSpinner(true);\r\n\r\n const addedSubjects = selectedSubjects.filter(id => !preselections.data.find(p => p.id === id));\r\n const removedSubjects = preselections.data?.filter(p => !selectedSubjects.includes(p.id));\r\n\r\n if (addedSubjects?.length)\r\n Flight.fetch(dispatch, PreferenceRequests.followSubjects(addedSubjects, () => {\r\n AnalyticsHelper.logUserAction({\r\n classificationCount: addedSubjects.length\r\n }, {\r\n location: LocationContext.PreferencesSettings,\r\n workflowPhase: WorkflowPhase.Complete,\r\n actionType: UserAction.Follow,\r\n descriptor: ToggleDescriptor.On,\r\n entity: EntityType.Classification\r\n });\r\n }, onSaveComplete));\r\n\r\n if (removedSubjects.length)\r\n Flight.fetch(dispatch, PreferenceRequests.unfollowSubjects(removedSubjects.map(s => s.id), () => {\r\n AnalyticsHelper.logUserAction({\r\n classificationCount: removedSubjects.length\r\n }, {\r\n location: LocationContext.PreferencesSettings,\r\n workflowPhase: WorkflowPhase.Complete,\r\n descriptor: ToggleDescriptor.Off,\r\n actionType: UserAction.Follow,\r\n entity: EntityType.Classification\r\n });\r\n }, onSaveComplete));\r\n }\r\n\r\n function onSaveComplete(): void {\r\n setShowSpinner(false);\r\n\r\n Core.AppLinkHelper.trigger({\r\n application,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'summary' }\r\n });\r\n }\r\n\r\n function onSelectAllSubjects(): void {\r\n const allOptionIds: string[] = [];\r\n\r\n rawPreferenceOptions.data.forEach(option => {\r\n if (option.children && option.children.length) {\r\n option.children.forEach(child => allOptionIds.push(child.id));\r\n }\r\n\r\n allOptionIds.push(option.id);\r\n });\r\n\r\n setSelectedSubjects(allOptionIds);\r\n setExpandedSubject(null);\r\n }\r\n\r\n const preferenceOptions = mixinBulkOptions(rawPreferenceOptions.data);\r\n\r\n return (\r\n <LanguageNamespaceContext.Provider value={namespace}>\r\n <SubjectPreferencesContext.Provider value={{ selectedSubjects, expandedSubject }}>\r\n <form className='p-3 pb-5'>\r\n\r\n <div className='text-center mb-4'>\r\n <h1 className='mb-3'><Text phrase='heading' options={{ highlightClass: 'text-primary' }} /></h1>\r\n <p className='m-0 h6'><Text phrase='infoRow1' /></p>\r\n <p className='h6'><Text phrase='infoRow2' /></p>\r\n </div>\r\n\r\n {rawPreferenceOptions.data && preselections.data\r\n ? <SubjectPreferenceGrid\r\n subjects={preferenceOptions}\r\n onSelect={onSelect}\r\n onExpand={onExpand}\r\n />\r\n : <PartialSubjectPreferences style='grid' count={7} />\r\n }\r\n\r\n <PreferenceFooter>\r\n {/* Footer LHS */}\r\n <div>\r\n <AppLink appLink={{\r\n application: AppChannels.SUBJECT,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'levels' }\r\n }} className='btn btn-light'>\r\n <Text phrase='back' />\r\n </AppLink>\r\n </div>\r\n\r\n {/* Footer RHS */}\r\n <div className='d-flex justify-content-right'>\r\n <div\r\n role='button'\r\n onClick={onSelectAllSubjects}\r\n className='text-dark font-weight-bold cursor-pointer d-flex align-items-center mr-3'\r\n >\r\n <Text phrase='allSubjects' />\r\n </div>\r\n\r\n <Button variant='dark' disabled={showSpinner} onClick={onSave} >\r\n {showSpinner\r\n ? <Spinner as='span' animation='border' role='status' size='sm' />\r\n : <Text phrase={hasChanged() ? 'followSubjects' : 'next'} options={{ smartCount: selectedSubjects.length }} />\r\n }\r\n </Button>\r\n </div>\r\n </PreferenceFooter>\r\n </form>\r\n </SubjectPreferencesContext.Provider>\r\n </LanguageNamespaceContext.Provider>\r\n );\r\n}","import * as React from 'react';\r\nimport { Button } from 'react-bootstrap';\r\n\r\nimport { PresentationAudience, Classification } from 'libs/shared/interfaces';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\r\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\nimport { AudienceItem, PartialAudiences } from 'libs/shared/apps/subjects/components/audience-item';\r\nimport { PreferenceRequests } from 'libs/shared/flight-requests/PreferenceRequests';\r\nimport { SubjectPreferenceItem } from 'libs/shared/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItem';\r\nimport { PartialSubjectPreferences } from 'libs/shared/apps/subjects/components/preferences/subject-preference-item/partial-loading/PartialSubjectPreferences';\r\nimport { PreferenceFooter } from 'libs/shared/apps/subjects/components/preferences/footer/PreferenceFooter';\r\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\r\n\r\nimport { Flight } from 'libs/common/flight';\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\r\nimport { Actions } from 'shared/constants/LiteActions';\r\n\r\nimport styles from './preferences-summary.scss';\r\n\r\nfunction onClickNext(): void {\r\n Core.AppLinkHelper.trigger({\r\n application: AppChannels.DASHBOARD,\r\n action: Actions.Dashboard.HOME\r\n });\r\n}\r\n\r\ninterface PreferencesSummaryViewProps {\r\n application: string;\r\n onboarding: boolean;\r\n}\r\n\r\nexport function PreferencesSummaryView(props: PreferencesSummaryViewProps): JSX.Element {\r\n const levelPreferences = Flight.useBasicFetch<PresentationAudience[]>(PreferenceRequests.myLevelPreferences());\r\n const subjectPreferences = Flight.useBasicFetch<Classification[]>(PreferenceRequests.mySubjectPreferences());\r\n\r\n return (\r\n <LanguageNamespaceContext.Provider value='subjects.preferencesSummary'>\r\n <div className={`p-3 pb-5 mx-auto ${styles.container}`}>\r\n {/* Heading */}\r\n <div className='text-center'>\r\n <h1 className='mb-3'><Text phrase='heading' options={{ highlightClass: 'text-primary' }} /></h1>\r\n <p className='w-25 mx-auto h6'><Text phrase='info' /></p>\r\n </div>\r\n\r\n {/* Levels */}\r\n <div className='pb-3'>\r\n <div className='pb-1 d-flex align-items-center'>\r\n <h2 className='h3 mb-0 pr-1'><Text phrase='levels' /></h2>\r\n <AppLink appLink={{\r\n application: props.application,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'levels' }\r\n }}>\r\n <SvgContainer svgName={cvSvgLibrary.Edit} />\r\n </AppLink>\r\n </div>\r\n {levelPreferences.data\r\n ? levelPreferences.data.length\r\n ? (\r\n <ul className='m-0 p-0'>\r\n {levelPreferences.data.map(level => (\r\n <AudienceItem\r\n key={level.masterId}\r\n audience={level}\r\n extraClasses='h4 py-1 px-3 mx-1 cursor-default'\r\n highlight\r\n />\r\n ))}\r\n </ul>\r\n )\r\n : <p><Text phrase='noLevelPreferences' /></p>\r\n : <PartialAudiences count={2} />\r\n }\r\n </div>\r\n\r\n {/* Subjects */}\r\n <div className='pb-3'>\r\n <div className='pb-1 d-flex align-items-center'>\r\n <h2 className='h3 mb-0 pr-1'><Text phrase='subjects' /></h2>\r\n <AppLink appLink={{\r\n application: props.application,\r\n action: Actions.Subjects.PREFERENCES,\r\n params: { step: 'subjects' }\r\n }}>\r\n <SvgContainer svgName={cvSvgLibrary.Edit} />\r\n </AppLink>\r\n </div>\r\n {subjectPreferences.data\r\n ? subjectPreferences.data.length\r\n ? (\r\n <ul className='m-0 p-0 d-flex flex-wrap'>\r\n {subjectPreferences.data.map(subject => (\r\n <SubjectPreferenceItem\r\n key={subject.id}\r\n subject={subject as ClassificationPreference}\r\n extraClasses='m-1 cursor-default'\r\n selected\r\n />\r\n ))}\r\n </ul>\r\n )\r\n : <p><Text phrase='noSubjectPreferences' /></p>\r\n : <PartialSubjectPreferences style='list' count={5} />\r\n }\r\n </div>\r\n\r\n {/* Footer */}\r\n {props.onboarding && (\r\n <PreferenceFooter align='center'>\r\n <Button variant='dark' onClick={onClickNext} className='px-4'>\r\n <Text phrase='getStarted' />\r\n </Button>\r\n </PreferenceFooter>\r\n )}\r\n </div>\r\n </LanguageNamespaceContext.Provider>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"cv--container--VG65e\"};"],"sourceRoot":""}
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[22],{445:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var a=n(0);function r(e){return a.createElement(a.Fragment,null)}},476:function(e,t,n){"use strict";n.d(t,"a",(function(){return m}));var a=n(0),r=n(2),i=n(26),o=n(13),s=n(444),c=n(445),l=n(493),u=n.n(l);function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],a=!0,r=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(a=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);a=!0);}catch(e){r=!0,i=e}finally{try{a||null==s.return||s.return()}finally{if(r)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}var p=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 m(e){var t=e.onSortComplete,n=e.onSortStart,l=e.showPartialLoading,f=p(e,["onSortComplete","onSortStart","showPartialLoading"]),m=d(a.useState(),2),b=m[0],v=m[1],y=function(e){i.a.isFunction(n)&&n(e)};return l?a.createElement(c.a,null):e.canEdit?a.createElement(s.b,Object.assign({},f,{currentSortingIndex:b,updateBeforeSortStart:function(e){var t=e.index;return v(t)},onSortStart:function(e){var t=e.index;return y(t)},onSortEnd:function(e){v(null),i.a.isFunction(t)?t(e.oldIndex,e.newIndex):r.a.ErrorHelper.throw(new o.a("An onSortComplete callback function must be passed to SortableVideoListComponent"))},lockAxis:"y",lockToContainerEdges:!0,lockOffset:["0%","100%"],helperClass:"bg-white ".concat(u.a.sortableItem),distance:1,useDragHandle:!0})):a.createElement(s.c,Object.assign({},f))}},492:function(e,t,n){"use strict";n.d(t,"a",(function(){return m}));var a=n(59),r=n(16);const i=n(27).a.CLASSIFICATION,o=()=>"/api/domain/v1/subjects/preferences?query="+i,s=()=>"/api/domain/v1/subjects/classifications/following?query="+i,c=()=>"/api/domain/v1/subjects/classifications/following",l=e=>a.a.urlBuilder("/api/domain/v1/subjects/classifications/following",{id:e}),u=()=>"/api/domain/v1/subjects/audiences",d=()=>"/api/domain/v1/subjects/audiences/following",f=()=>"/api/domain/v1/subjects/audiences/following",p=e=>a.a.urlBuilder("/api/domain/v1/subjects/audiences/following",{id:e}),m={allSubjectPreferences:()=>({url:o(),key:"subject:preference:options"}),mySubjectPreferences:()=>({url:s(),key:"my:subject:preferences",normalize:!1}),followSubjects:(e,t,n)=>({url:c(),key:"follow:subjects",data:e,type:r.a.POST,success:t,always:n,invalidationKeys:["my:subject:preferences"]}),unfollowSubjects:(e,t,n)=>({url:l(e),key:"unfollow:subjects",type:r.a.DELETE,success:t,always:n,invalidationKeys:["my:subject:preferences"]}),allLevelPreferences:()=>({url:u(),key:"level:preference:options",normalize:!1}),myLevelPreferences:()=>({url:d(),key:"my:level:preferences",normalize:!1}),followLevels:(e,t,n)=>({url:f(),key:"follow:levels",data:e,type:r.a.POST,success:t,always:n,invalidationKeys:["my:level:preferences"]}),unfollowLevels:(e,t,n)=>({url:p(e),key:"unfollow:levels",type:r.a.DELETE,success:t,always:n,invalidationKeys:["my:level:preferences"]})}},493:function(e,t,n){e.exports={sortableItem:"_2eiPB"}},507:function(e,t,n){"use strict";var a=n(0),r=n(48),i=n(34),o="playlists.liteWhatsNewBreadcrumbs";function s(e){return a.createElement(a.Fragment,null,a.createElement("h1",null,a.createElement(r.b,{namespace:o,phrase:"whatsNew"})),a.createElement("nav",{"aria-label":"breadcrumb"},a.createElement("ol",{className:"breadcrumb p-0"},a.createElement("li",{className:"breadcrumb-item"},a.createElement(i.a,{appLink:e.dashboardAppLink},a.createElement(r.b,{namespace:o,phrase:"dashboard"}))),a.createElement("li",{className:"breadcrumb-item active","aria-current":"page"},a.createElement(r.b,{namespace:o,phrase:"whatsNew"})))))}var c=n(10),l=n(119),u=n(524),d=n.n(u);function f(e){var t=e.classification,n=e.backgroundUrl,o=e.followed,s=e.follow;return a.createElement("div",{className:"banner mb-2 d-flex justify-content-between ".concat(d.a.banner),style:{backgroundImage:"url('".concat(n,"')")}},a.createElement(i.a,{className:"text-white text-shadow",appLink:e.getClassificationAppLink(t)},a.createElement("h2",{className:"h3 mb-0"},t.name)),a.createElement(l.a,{className:"btn ".concat(o?"btn-dark":"btn-white"),svgName:c.b.Bell,onClick:function(){return s(t.id,!o)}},a.createElement(r.b,{namespace:"liteContentUpdates.classificationBanner",phrase:o?"unfollow":"follow"})))}function p(e){var t=e.classification;return a.createElement(a.Fragment,null,a.createElement("nav",{"aria-label":"breadcrumb"},a.createElement("ol",{className:"breadcrumb p-0"},a.createElement("li",{className:"breadcrumb-item"},a.createElement(i.a,{appLink:e.dashboardAppLink},a.createElement(r.b,{namespace:"playlists.liteClassificationUpdateBreadcrumbs",phrase:"dashboard"}))),a.createElement("li",{className:"breadcrumb-item"},a.createElement(i.a,{appLink:e.contentUpdatesAppLink},a.createElement(r.b,{namespace:"playlists.liteClassificationUpdateBreadcrumbs",phrase:"whatsNew"}))),a.createElement("li",{className:"breadcrumb-item active","aria-current":"page"},t.name))))}n.d(t,"c",(function(){return s})),n.d(t,"a",(function(){return f})),n.d(t,"b",(function(){return p}))},522:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var a=n(39),r=n(12),i=n(67);function o(e,t){const n=Object(a.useDispatch)();return Object(a.useSelector)(a=>{var o;if(!(null===(o=e)||void 0===o?void 0:o.length))return null;const s=i.a.uniq(e);let c={};const l={};for(let e=0;e<s.length;e+=25){const i=s.slice(e,e+25),o=t(i),u=r.a.getResponse(a,o.key);l[e]=!!u.data,u.shouldFetch&&r.a.fetch(n,o),u.data&&u.data.forEach(e=>c[e.id]=e)}return Object.keys(l).every(e=>l[e])?c:null})}},523:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var a=n(27);const r={getContentUpdates:(e,t)=>({url:`/api/domain/v1/subjects/content-updates?from=${e}&to=${t}&query=`+a.a.VIDEO_COLLECTION,key:"content:updates",normalize:!1}),getClassifications(e){const t=[];return e.forEach(e=>t.push("id="+e)),{url:`/api/domain/v1/subjects?${t.join("&")}&query=banner`,key:"classifications:"+e.join(",")}},getClassification:e=>({url:`/api/domain/v1/subjects/${e}?query=banner`,key:"classification:"+e}),videos:(e,t)=>({url:`/api/domain/v1/videos?ids=${e.join(",")}&with=${a.a.VIDEO_COLLECTION}`,key:"videos:by:id:"+e.join(","),success:t})}},524:function(e,t,n){e.exports={banner:"_1ZGpQ"}},664:function(e,t,n){"use strict";n.r(t);var a=n(0),r=n(53),i=n(39),o=n(12),s=n(7),c=n(31),l=n(3),u=n(492),d=n(126),f=n(412),p=n(522),m=n(523),b=n(507),v=n(34),y=n(48),w=n(122),h=n(80),g=n(476);function E(e){var t=e.classification,n=e.videos,r=e.imageCdnUrl,i=e.showMore,o=e.followed,s=w.a.createBannerUrl(t.banner,{fallbackBaseUrl:r,fallbackCategoryName:t.name,type:h.b.Banners});return a.createElement("div",{className:"mb-3"},a.createElement(b.a,{classification:t,backgroundUrl:s,getClassificationAppLink:e.appLinks.getClassificationAppLink,followed:o,follow:e.follow}),a.createElement(g.a,{playlistId:"0",isUserSignedIn:!0,onSortComplete:function(){},videos:n,getVideoAppLink:e.appLinks.getVideoAppLink,getSeriesAppLink:e.appLinks.getSeriesAppLink}),i&&a.createElement("div",{className:"show-more"},a.createElement(v.a,{className:"info-link",appLink:e.appLinks.getClassificationUpdateAppLink(t)},a.createElement(y.b,{namespace:"contentUpdates.contentUpdatesView",phrase:"showMore",options:{classificationName:t.name}}))))}n.d(t,"ContentUpdatesView",(function(){return k}));function k(e){var t=Object(i.useDispatch)(),n=Object(f.a)(),v=r().subtract(1,"year").toISOString(),y=r().toISOString(),w=o.a.useBasicFetch(d.a.config),h=o.a.useBasicFetch(m.a.getContentUpdates(v,y)),g=o.a.useBasicFetch(u.a.mySubjectPreferences()),k=[],j=[];h.data&&h.data.forEach((function(e){j.push(e.classificationId),e.videos.slice(0,3).forEach((function(e){k.push(e.video.id),j.push(e.classificationId)}))}));var S=Object(p.a)(k,(function(e){return m.a.videos(e)})),L=Object(p.a)(j,(function(e){return m.a.getClassifications(e)}));function C(e,a){var r=function(){c.a.logUserAction({id:e},{location:l.j.ContentUpdatesClassificationBanner,workflowPhase:l.o.Complete,descriptor:a?l.m.On:l.m.Off,actionType:l.n.Follow,entity:l.d.Classification})},i=function(){n.success(s.a.getPhrase("contentUpdates.contentUpdatesView",a?"followed":"unfollowed",{classification:L[e].name}))},d=a?u.a.followSubjects([e],r,i):u.a.unfollowSubjects([e],r,i);o.a.fetch(t,d)}if(!(h.data&&w.data&&g.data&&S&&L))return a.createElement(a.Fragment,null);var O=function(e,t,n){return e&&t&&n?e.map((function(e){return{showMore:e.videos.length>3,classification:n[e.classificationId],videos:e.videos.slice(0,3).map((function(e){var a=t[e.videoId];return a?(a.classification=n[e.classificationId],a):null})).filter((function(e){return e}))}})):null}(h.data,S,L),I=g.data.map((function(e){return e.id}));return a.createElement("div",{className:"bg-white padding-gutter content-updates"},a.createElement(b.c,{dashboardAppLink:e.appLinks.dashboardAppLink}),O.map((function(t){return a.createElement(E,{classification:t.classification,videos:t.videos,imageCdnUrl:w.data.imageCdnUrl,showMore:t.showMore,key:t.classification.id,appLinks:e.appLinks,followed:I.includes(t.classification.id),follow:C})})))}}}]);