@clickview/lite 0.0.22-dev.1 → 0.0.22-rc.1

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 (407) hide show
  1. package/dist/css/0.chunk.css.map +1 -0
  2. package/dist/css/1.chunk.css +156 -0
  3. package/dist/css/1.chunk.css.map +1 -0
  4. package/dist/css/11.chunk.css +7 -0
  5. package/dist/css/11.chunk.css.map +1 -0
  6. package/dist/css/12.chunk.css +3 -1
  7. package/dist/css/12.chunk.css.map +1 -0
  8. package/dist/css/13.chunk.css.map +1 -0
  9. package/dist/css/14.chunk.css.map +1 -0
  10. package/dist/css/15.chunk.css +3 -1
  11. package/dist/css/15.chunk.css.map +1 -0
  12. package/dist/css/16.chunk.css +2 -2
  13. package/dist/css/16.chunk.css.map +1 -0
  14. package/dist/css/17.chunk.css.map +1 -0
  15. package/dist/css/18.chunk.css.map +1 -0
  16. package/dist/css/2.chunk.css.map +1 -0
  17. package/dist/css/20.chunk.css.map +1 -0
  18. package/dist/css/21.chunk.css.map +1 -0
  19. package/dist/css/22.chunk.css.map +1 -0
  20. package/dist/css/23.chunk.css.map +1 -0
  21. package/dist/css/24.chunk.css.map +1 -0
  22. package/dist/css/25.chunk.css.map +1 -0
  23. package/dist/css/26.chunk.css +2 -2
  24. package/dist/css/26.chunk.css.map +1 -0
  25. package/dist/css/27.chunk.css +2 -2
  26. package/dist/css/27.chunk.css.map +1 -0
  27. package/dist/css/28.chunk.css.map +1 -0
  28. package/dist/css/29.chunk.css.map +1 -0
  29. package/dist/css/3.chunk.css +4 -2
  30. package/dist/css/30.chunk.css +30 -2
  31. package/dist/css/30.chunk.css.map +1 -0
  32. package/dist/css/31.chunk.css +4 -0
  33. package/dist/css/31.chunk.css.map +1 -0
  34. package/dist/css/32.chunk.css.map +1 -0
  35. package/dist/css/33.chunk.css +8 -0
  36. package/dist/css/33.chunk.css.map +1 -0
  37. package/dist/css/34.chunk.css +6 -0
  38. package/dist/css/34.chunk.css.map +1 -0
  39. package/dist/css/35.chunk.css.map +1 -0
  40. package/dist/css/37.chunk.css +7 -0
  41. package/dist/css/37.chunk.css.map +1 -0
  42. package/dist/css/38.chunk.css +6 -0
  43. package/dist/css/38.chunk.css.map +1 -0
  44. package/dist/css/39.chunk.css +38 -2
  45. package/dist/css/39.chunk.css.map +1 -0
  46. package/dist/css/4.chunk.css +1 -1
  47. package/dist/css/41.chunk.css +4 -0
  48. package/dist/css/43.chunk.css +38 -0
  49. package/dist/css/43.chunk.css.map +1 -0
  50. package/dist/css/5.chunk.css +2 -8
  51. package/dist/css/5.chunk.css.map +1 -0
  52. package/dist/css/52.chunk.css +9 -0
  53. package/dist/css/52.chunk.css.map +1 -0
  54. package/dist/css/6.chunk.css +8 -2
  55. package/dist/css/6.chunk.css.map +1 -0
  56. package/dist/css/7.chunk.css +94 -0
  57. package/dist/css/7.chunk.css.map +1 -0
  58. package/dist/css/lite-app.css +2 -2
  59. package/dist/css/lite-app.css.map +1 -0
  60. package/dist/en.json +1 -1
  61. package/dist/libs/analytics/src/utils/VideoDataFormatHelper.d.ts +42 -0
  62. package/dist/libs/shared/src/apps/content-updates/interfaces/ClassificationVideosGrouping.d.ts +3 -2
  63. package/dist/libs/shared/src/apps/content-updates/interfaces/index.d.ts +0 -1
  64. package/dist/libs/shared/src/apps/notifications/utils/NotificationsHelper.d.ts +1 -1
  65. package/dist/libs/shared/src/apps/playlists/components/empty-state/EmptyVideoList.d.ts +3 -0
  66. package/dist/libs/shared/src/apps/playlists/components/playlist-list/PlaylistItem.d.ts +8 -3
  67. package/dist/libs/shared/src/apps/playlists/components/playlist-list/PlaylistList.d.ts +9 -3
  68. package/dist/libs/shared/src/apps/playlists/components/playlist-list/PlaylistOwnerAvatar.d.ts +9 -0
  69. package/dist/{projects/lite → libs/shared}/src/apps/playlists/components/sort-select/PlaylistSortSelect.d.ts +2 -2
  70. package/dist/libs/shared/src/apps/playlists/enums/PlaylistSortType.d.ts +4 -2
  71. package/dist/libs/shared/src/apps/playlists/enums/PlaylistType.d.ts +5 -0
  72. package/dist/libs/shared/src/apps/playlists/interfaces/identifiers/PlaylistCollectionIdentifier.d.ts +4 -1
  73. package/dist/libs/shared/src/apps/playlists/utils/PlaylistSortHelper.d.ts +0 -1
  74. package/dist/libs/shared/src/apps/subjects/components/preferences/index.d.ts +1 -1
  75. package/dist/libs/shared/src/apps/subjects/components/preferences/nav/PreferencesNav.d.ts +12 -0
  76. package/dist/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.d.ts +1 -0
  77. package/dist/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItemStatus.d.ts +1 -0
  78. package/dist/libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/SubjectPreferenceGrid.d.ts +2 -1
  79. package/dist/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItem.d.ts +1 -0
  80. package/dist/libs/shared/src/apps/subjects/interfaces/ClassificationPreference.d.ts +0 -1
  81. package/dist/libs/shared/src/components/actions/ActionButton.d.ts +4 -0
  82. package/dist/libs/shared/src/components/actions/Actions.d.ts +4 -0
  83. package/dist/libs/shared/src/components/app-link/AppLink.d.ts +4 -0
  84. package/dist/libs/shared/src/components/avatar/Avatar.d.ts +8 -0
  85. package/dist/libs/shared/src/components/clickview-avatar/ClickViewAvatar.d.ts +2 -0
  86. package/dist/libs/shared/src/components/forms/form-buttons/FormButtons.d.ts +3 -0
  87. package/dist/libs/shared/src/components/icon-button/IconButton.d.ts +4 -0
  88. package/dist/libs/shared/src/components/svg-container/SvgContainer.d.ts +2 -1
  89. package/dist/libs/shared/src/components/svgs/clickview-logo/ClickViewLogo.d.ts +1 -0
  90. package/dist/libs/shared/src/components/toggle-switch/ToggleSwitch.d.ts +1 -0
  91. package/dist/libs/shared/src/components/widgets/fixed-widget/FixedWidget.d.ts +4 -0
  92. package/dist/libs/shared/src/constants/WithStatements.d.ts +5 -0
  93. package/dist/libs/shared/src/enums/SettingName.d.ts +2 -1
  94. package/dist/libs/shared/src/flight-requests/PlaylistRequests.d.ts +3 -3
  95. package/dist/libs/shared/src/flight-requests/PreferenceRequests.d.ts +2 -2
  96. package/dist/libs/shared/src/flight-requests/UserRequests.d.ts +1 -0
  97. package/dist/libs/shared/src/images/svg/ImportedSvgs.d.ts +4 -1
  98. package/dist/libs/shared/src/images/svg/objects/index.d.ts +4 -1
  99. package/dist/libs/shared/src/interfaces/models/Avatar.d.ts +3 -0
  100. package/dist/libs/shared/src/interfaces/models/Customer.d.ts +1 -0
  101. package/dist/libs/shared/src/interfaces/models/Playlist.d.ts +1 -0
  102. package/dist/libs/shared/src/interfaces/models/Presentation.d.ts +2 -2
  103. package/dist/libs/shared/src/interfaces/models/User.d.ts +2 -1
  104. package/dist/libs/shared/src/interfaces/models/index.d.ts +2 -0
  105. package/dist/libs/shared/src/utils/UserHelper.d.ts +3 -0
  106. package/dist/projects/lite/src/app.d.ts +2 -1
  107. package/dist/projects/lite/src/apps/playlists/components/playlist-header/PlaylistHeader.d.ts +1 -1
  108. package/dist/projects/lite/src/apps/playlists/views/playlists/PlaylistsView.d.ts +0 -1
  109. package/dist/projects/lite/src/apps/search/utils/FilterHelper.d.ts +1 -1
  110. package/dist/projects/lite/src/apps/user-manager/interfaces/mocks/MockStudent.d.ts +0 -1
  111. package/dist/projects/lite/src/shared/components/user-options/UserOptions.d.ts +1 -0
  112. package/dist/scripts/0-50522b3859.chunk.js +1 -0
  113. package/dist/scripts/0-a394f6ba51.chunk.js +1 -0
  114. package/dist/scripts/0.chunk.js +346 -0
  115. package/dist/scripts/0.chunk.js.map +1 -0
  116. package/dist/scripts/1-5f19a96e0e.chunk.js +17 -0
  117. package/dist/scripts/1.chunk.js +656 -0
  118. package/dist/scripts/1.chunk.js.map +1 -0
  119. package/dist/scripts/10.chunk.js +607 -0
  120. package/dist/scripts/10.chunk.js.map +1 -0
  121. package/dist/scripts/11.chunk.js +380 -0
  122. package/dist/scripts/11.chunk.js.map +1 -0
  123. package/dist/scripts/12-30c98e5929.chunk.js +1 -0
  124. package/dist/scripts/12-b43caafe9d.chunk.js +1 -0
  125. package/dist/scripts/12.chunk.js +434 -0
  126. package/dist/scripts/12.chunk.js.map +1 -0
  127. package/dist/scripts/{13-55a4846990.chunk.js → 13-2f23193421.chunk.js} +1 -1
  128. package/dist/scripts/13-6981d3de8f.chunk.js +1 -0
  129. package/dist/scripts/13.chunk.js +1287 -0
  130. package/dist/scripts/13.chunk.js.map +1 -0
  131. package/dist/scripts/14-6e492c7088.chunk.js +1 -0
  132. package/dist/scripts/14-d110a60532.chunk.js +1 -0
  133. package/dist/scripts/14.chunk.js +739 -0
  134. package/dist/scripts/14.chunk.js.map +1 -0
  135. package/dist/scripts/15-00a639e1e2.chunk.js +1 -0
  136. package/dist/scripts/15-4b21593cdc.chunk.js +1 -0
  137. package/dist/scripts/15.chunk.js +808 -0
  138. package/dist/scripts/15.chunk.js.map +1 -0
  139. package/dist/scripts/16-8c55fc37a5.chunk.js +1 -0
  140. package/dist/scripts/16-fc5fb342de.chunk.js +1 -0
  141. package/dist/scripts/16.chunk.js +482 -0
  142. package/dist/scripts/16.chunk.js.map +1 -0
  143. package/dist/scripts/{17-955a29c4e0.chunk.js → 17-3c1d005bed.chunk.js} +1 -1
  144. package/dist/scripts/17-c95e61dec6.chunk.js +1 -0
  145. package/dist/scripts/17.chunk.js +766 -0
  146. package/dist/scripts/17.chunk.js.map +1 -0
  147. package/dist/scripts/{18-e6136d62c6.chunk.js → 18-0546a616e0.chunk.js} +1 -1
  148. package/dist/scripts/18-2366e66947.chunk.js +1 -0
  149. package/dist/scripts/18.chunk.js +647 -0
  150. package/dist/scripts/18.chunk.js.map +1 -0
  151. package/dist/scripts/{19-880910202d.chunk.js → 19-6166dd7d95.chunk.js} +1 -1
  152. package/dist/scripts/19-67e91b254a.chunk.js +1 -0
  153. package/dist/scripts/19.chunk.js +212 -0
  154. package/dist/scripts/19.chunk.js.map +1 -0
  155. package/dist/scripts/2-7c9b489c8f.chunk.js +1 -0
  156. package/dist/scripts/2-b9b8ae6df7.chunk.js +1 -0
  157. package/dist/scripts/2.chunk.js +859 -0
  158. package/dist/scripts/2.chunk.js.map +1 -0
  159. package/dist/scripts/{20-44be150b5d.chunk.js → 20-3084a104f8.chunk.js} +1 -1
  160. package/dist/scripts/20-6d9f7aa2a4.chunk.js +1 -0
  161. package/dist/scripts/20.chunk.js +1694 -0
  162. package/dist/scripts/20.chunk.js.map +1 -0
  163. package/dist/scripts/{21-0ed98b49d9.chunk.js → 21-2baf62770b.chunk.js} +1 -1
  164. package/dist/scripts/21-5949049d34.chunk.js +1 -0
  165. package/dist/scripts/21.chunk.js +1348 -0
  166. package/dist/scripts/21.chunk.js.map +1 -0
  167. package/dist/scripts/{22-0af19d7662.chunk.js → 22-4610dd4c22.chunk.js} +1 -1
  168. package/dist/scripts/22-d4db8ae24f.chunk.js +1 -0
  169. package/dist/scripts/22.chunk.js +1109 -0
  170. package/dist/scripts/22.chunk.js.map +1 -0
  171. package/dist/scripts/{23-864af936a5.chunk.js → 23-274e435f65.chunk.js} +1 -1
  172. package/dist/scripts/23-e8c0570d4f.chunk.js +1 -0
  173. package/dist/scripts/23.chunk.js +1144 -0
  174. package/dist/scripts/23.chunk.js.map +1 -0
  175. package/dist/scripts/{24-4d8f7bcedd.chunk.js → 24-9a76b40556.chunk.js} +1 -1
  176. package/dist/scripts/24-9c745baf04.chunk.js +1 -0
  177. package/dist/scripts/24.chunk.js +841 -0
  178. package/dist/scripts/24.chunk.js.map +1 -0
  179. package/dist/scripts/{25-8ace9850cd.chunk.js → 25-339ceebd38.chunk.js} +1 -1
  180. package/dist/scripts/25-fc58f37bb7.chunk.js +1 -0
  181. package/dist/scripts/25.chunk.js +956 -0
  182. package/dist/scripts/25.chunk.js.map +1 -0
  183. package/dist/scripts/26-50b8765208.chunk.js +1 -0
  184. package/dist/scripts/26-8779aa5972.chunk.js +1 -0
  185. package/dist/scripts/26.chunk.js +655 -0
  186. package/dist/scripts/26.chunk.js.map +1 -0
  187. package/dist/scripts/27-2e0582e3c5.chunk.js +1 -0
  188. package/dist/scripts/27-6d0e2b1308.chunk.js +1 -0
  189. package/dist/scripts/27.chunk.js +615 -0
  190. package/dist/scripts/27.chunk.js.map +1 -0
  191. package/dist/scripts/{28-fbaeae6ce9.chunk.js → 28-1546a0f0e2.chunk.js} +1 -1
  192. package/dist/scripts/28-604cc4e821.chunk.js +1 -0
  193. package/dist/scripts/28.chunk.js +622 -0
  194. package/dist/scripts/28.chunk.js.map +1 -0
  195. package/dist/scripts/{29-5cc304ffac.chunk.js → 29-77f2322249.chunk.js} +1 -1
  196. package/dist/scripts/29-e48cfa43c6.chunk.js +1 -0
  197. package/dist/scripts/29.chunk.js +721 -0
  198. package/dist/scripts/29.chunk.js.map +1 -0
  199. package/dist/scripts/3-b2e5a75e22.chunk.js +7 -0
  200. package/dist/scripts/3-fd65b2bb74.chunk.js +7 -0
  201. package/dist/scripts/3.chunk.js +18851 -0
  202. package/dist/scripts/3.chunk.js.map +1 -0
  203. package/dist/scripts/{31-b251e1cc9f.chunk.js → 30-926ab83f2b.chunk.js} +1 -1
  204. package/dist/scripts/30-f11047c1dd.chunk.js +1 -0
  205. package/dist/scripts/30.chunk.js +468 -0
  206. package/dist/scripts/30.chunk.js.map +1 -0
  207. package/dist/scripts/31-0d1e7212f8.chunk.js +1 -0
  208. package/dist/scripts/31-b437762b2e.chunk.js +1 -0
  209. package/dist/scripts/31.chunk.js +441 -0
  210. package/dist/scripts/31.chunk.js.map +1 -0
  211. package/dist/scripts/{32-89eee7291c.chunk.js → 32-8be947e35c.chunk.js} +1 -1
  212. package/dist/scripts/32-abadeccf08.chunk.js +1 -0
  213. package/dist/scripts/32.chunk.js +424 -0
  214. package/dist/scripts/32.chunk.js.map +1 -0
  215. package/dist/scripts/{33-fc331f7e45.chunk.js → 33-4acb319295.chunk.js} +1 -1
  216. package/dist/scripts/33-f65a2fba85.chunk.js +1 -0
  217. package/dist/scripts/33.chunk.js +638 -0
  218. package/dist/scripts/33.chunk.js.map +1 -0
  219. package/dist/scripts/{34-7abcf2c85d.chunk.js → 34-891e281505.chunk.js} +1 -1
  220. package/dist/scripts/34-9329d51dc2.chunk.js +1 -0
  221. package/dist/scripts/34.chunk.js +509 -0
  222. package/dist/scripts/34.chunk.js.map +1 -0
  223. package/dist/scripts/35-1536100df2.chunk.js +1 -0
  224. package/dist/scripts/35-9c9e7af68d.chunk.js +1 -0
  225. package/dist/scripts/35.chunk.js +957 -0
  226. package/dist/scripts/35.chunk.js.map +1 -0
  227. package/dist/scripts/{36-4487d884c4.chunk.js → 36-3f65f197f1.chunk.js} +1 -1
  228. package/dist/scripts/36-88f23c1af6.chunk.js +1 -0
  229. package/dist/scripts/36.chunk.js +938 -0
  230. package/dist/scripts/36.chunk.js.map +1 -0
  231. package/dist/scripts/{37-3756ebfbf8.chunk.js → 37-a833585532.chunk.js} +1 -1
  232. package/dist/scripts/37-cac99df2ec.chunk.js +1 -0
  233. package/dist/scripts/37.chunk.js +416 -0
  234. package/dist/scripts/37.chunk.js.map +1 -0
  235. package/dist/scripts/38-cd29a5bb33.chunk.js +1 -0
  236. package/dist/scripts/38-e8e6b09b5d.chunk.js +1 -0
  237. package/dist/scripts/38.chunk.js +482 -0
  238. package/dist/scripts/38.chunk.js.map +1 -0
  239. package/dist/scripts/39-41ed17d1f8.chunk.js +1 -0
  240. package/dist/scripts/39-549a0389b7.chunk.js +1 -0
  241. package/dist/scripts/39.chunk.js +245 -0
  242. package/dist/scripts/39.chunk.js.map +1 -0
  243. package/dist/scripts/4-0b79336993.chunk.js +1 -0
  244. package/dist/scripts/4-b611ebe99d.chunk.js +1 -0
  245. package/dist/scripts/4.chunk.js +403 -0
  246. package/dist/scripts/4.chunk.js.map +1 -0
  247. package/dist/scripts/40-9e01cffd38.chunk.js +1 -0
  248. package/dist/scripts/40-b754c5bf16.chunk.js +1 -0
  249. package/dist/scripts/40.chunk.js +337 -0
  250. package/dist/scripts/40.chunk.js.map +1 -0
  251. package/dist/scripts/{39-40fb064bfa.chunk.js → 41-3c305d8a8a.chunk.js} +1 -1
  252. package/dist/scripts/41-a5c400ad15.chunk.js +1 -0
  253. package/dist/scripts/41.chunk.js +350 -0
  254. package/dist/scripts/41.chunk.js.map +1 -0
  255. package/dist/scripts/{40-06a34b9e0e.chunk.js → 42-0079f90e3f.chunk.js} +1 -1
  256. package/dist/scripts/42-1854788acf.chunk.js +1 -0
  257. package/dist/scripts/42.chunk.js +381 -0
  258. package/dist/scripts/42.chunk.js.map +1 -0
  259. package/dist/scripts/{41-37fb45611f.chunk.js → 43-3d24bccf11.chunk.js} +1 -1
  260. package/dist/scripts/43-6f8279fdc6.chunk.js +1 -0
  261. package/dist/scripts/43.chunk.js +345 -0
  262. package/dist/scripts/43.chunk.js.map +1 -0
  263. package/dist/scripts/{42-2e0a141dd0.chunk.js → 44-067cac7c5c.chunk.js} +1 -1
  264. package/dist/scripts/44-273c2a48ec.chunk.js +1 -0
  265. package/dist/scripts/44.chunk.js +404 -0
  266. package/dist/scripts/44.chunk.js.map +1 -0
  267. package/dist/scripts/{43-3b21cd4021.chunk.js → 45-be8c19698d.chunk.js} +1 -1
  268. package/dist/scripts/45-d417ea05ac.chunk.js +1 -0
  269. package/dist/scripts/45.chunk.js +221 -0
  270. package/dist/scripts/45.chunk.js.map +1 -0
  271. package/dist/scripts/{46-92ef9358e1.chunk.js → 46-c94f8ad682.chunk.js} +1 -1
  272. package/dist/scripts/46-f1a37a04d3.chunk.js +1 -0
  273. package/dist/scripts/46.chunk.js +230 -0
  274. package/dist/scripts/46.chunk.js.map +1 -0
  275. package/dist/scripts/{47-73308b0e36.chunk.js → 47-7ff74e9140.chunk.js} +1 -1
  276. package/dist/scripts/47-c64b41de11.chunk.js +1 -0
  277. package/dist/scripts/47.chunk.js +409 -0
  278. package/dist/scripts/47.chunk.js.map +1 -0
  279. package/dist/scripts/{48-4e1c2af176.chunk.js → 48-277e2c2a38.chunk.js} +1 -1
  280. package/dist/scripts/48-4f33f35994.chunk.js +1 -0
  281. package/dist/scripts/48.chunk.js +272 -0
  282. package/dist/scripts/48.chunk.js.map +1 -0
  283. package/dist/scripts/{49-6860509ec9.chunk.js → 49-0a0303fc9b.chunk.js} +1 -1
  284. package/dist/scripts/49-9a37819019.chunk.js +1 -0
  285. package/dist/scripts/49.chunk.js +267 -0
  286. package/dist/scripts/49.chunk.js.map +1 -0
  287. package/dist/scripts/5-3b52becb23.chunk.js +1 -0
  288. package/dist/scripts/5-926010c03d.chunk.js +1 -0
  289. package/dist/scripts/5.chunk.js +1088 -0
  290. package/dist/scripts/5.chunk.js.map +1 -0
  291. package/dist/scripts/{50-ce92cdc08d.chunk.js → 50-30bb15a353.chunk.js} +1 -1
  292. package/dist/scripts/50-c5e8376786.chunk.js +1 -0
  293. package/dist/scripts/50.chunk.js +225 -0
  294. package/dist/scripts/50.chunk.js.map +1 -0
  295. package/dist/scripts/{51-f7ca510503.chunk.js → 51-020d240398.chunk.js} +1 -1
  296. package/dist/scripts/51-9bbad0bfb6.chunk.js +1 -0
  297. package/dist/scripts/51.chunk.js +318 -0
  298. package/dist/scripts/51.chunk.js.map +1 -0
  299. package/dist/scripts/{52-f1cd5fb0bf.chunk.js → 52-46cde58ace.chunk.js} +1 -1
  300. package/dist/scripts/52-fbaa41eb77.chunk.js +1 -0
  301. package/dist/scripts/52.chunk.js +64 -0
  302. package/dist/scripts/52.chunk.js.map +1 -0
  303. package/dist/scripts/{53-048ecda135.chunk.js → 53-527e7f7403.chunk.js} +1 -1
  304. package/dist/scripts/53-8faa05dc7b.chunk.js +1 -0
  305. package/dist/scripts/53.chunk.js +108 -0
  306. package/dist/scripts/53.chunk.js.map +1 -0
  307. package/dist/scripts/{54-65486573ee.chunk.js → 54-1d0763934e.chunk.js} +1 -1
  308. package/dist/scripts/54-3f6d4400a5.chunk.js +1 -0
  309. package/dist/scripts/54.chunk.js +110 -0
  310. package/dist/scripts/54.chunk.js.map +1 -0
  311. package/dist/scripts/{55-294432b05b.chunk.js → 55-6c166a980c.chunk.js} +1 -1
  312. package/dist/scripts/55-b7831607fd.chunk.js +1 -0
  313. package/dist/scripts/55.chunk.js +162 -0
  314. package/dist/scripts/55.chunk.js.map +1 -0
  315. package/dist/scripts/{56-386250e4ec.chunk.js → 56-5dc77fbbed.chunk.js} +1 -1
  316. package/dist/scripts/56-966257962b.chunk.js +1 -0
  317. package/dist/scripts/56.chunk.js +145 -0
  318. package/dist/scripts/56.chunk.js.map +1 -0
  319. package/dist/scripts/{57-b59de63c5a.chunk.js → 57-6f61e67fbb.chunk.js} +1 -1
  320. package/dist/scripts/57-7716124eee.chunk.js +1 -0
  321. package/dist/scripts/57.chunk.js +139 -0
  322. package/dist/scripts/57.chunk.js.map +1 -0
  323. package/dist/scripts/{58-5b7bee48c2.chunk.js → 58-0da9b42725.chunk.js} +1 -1
  324. package/dist/scripts/58-cbff52ace0.chunk.js +1 -0
  325. package/dist/scripts/58.chunk.js +142 -0
  326. package/dist/scripts/58.chunk.js.map +1 -0
  327. package/dist/scripts/{59-00659eeeca.chunk.js → 59-023ba91f45.chunk.js} +1 -1
  328. package/dist/scripts/59-39caa8ff7e.chunk.js +1 -0
  329. package/dist/scripts/59.chunk.js +173 -0
  330. package/dist/scripts/59.chunk.js.map +1 -0
  331. package/dist/scripts/{5-8cac703d8e.chunk.js → 6-081f3686a7.chunk.js} +1 -1
  332. package/dist/scripts/6-19163a3d76.chunk.js +1 -0
  333. package/dist/scripts/6.chunk.js +406 -0
  334. package/dist/scripts/6.chunk.js.map +1 -0
  335. package/dist/scripts/{60-d2c07fa4ea.chunk.js → 60-1b7fe463bf.chunk.js} +1 -1
  336. package/dist/scripts/60-6b95f83bfc.chunk.js +1 -0
  337. package/dist/scripts/60.chunk.js +160 -0
  338. package/dist/scripts/60.chunk.js.map +1 -0
  339. package/dist/scripts/{61-89b6e187bd.chunk.js → 61-e45710e150.chunk.js} +1 -1
  340. package/dist/scripts/61.chunk.js +98 -0
  341. package/dist/scripts/61.chunk.js.map +1 -0
  342. package/dist/scripts/62.chunk.js +48 -0
  343. package/dist/scripts/62.chunk.js.map +1 -0
  344. package/dist/scripts/63.chunk.js +32 -0
  345. package/dist/scripts/63.chunk.js.map +1 -0
  346. package/dist/scripts/64.chunk.js +29 -0
  347. package/dist/scripts/64.chunk.js.map +1 -0
  348. package/dist/scripts/65.chunk.js +27 -0
  349. package/dist/scripts/65.chunk.js.map +1 -0
  350. package/dist/scripts/66.chunk.js +65 -0
  351. package/dist/scripts/66.chunk.js.map +1 -0
  352. package/dist/scripts/67.chunk.js +67 -0
  353. package/dist/scripts/67.chunk.js.map +1 -0
  354. package/dist/scripts/68.chunk.js +104 -0
  355. package/dist/scripts/68.chunk.js.map +1 -0
  356. package/dist/scripts/69.chunk.js +102 -0
  357. package/dist/scripts/69.chunk.js.map +1 -0
  358. package/dist/scripts/7-49ae7b6074.chunk.js +1 -0
  359. package/dist/scripts/7-65ca87564a.chunk.js +1 -0
  360. package/dist/scripts/7.chunk.js +2614 -0
  361. package/dist/scripts/7.chunk.js.map +1 -0
  362. package/dist/scripts/70.chunk.js +1001 -0
  363. package/dist/scripts/70.chunk.js.map +1 -0
  364. package/dist/scripts/71.chunk.js +36 -0
  365. package/dist/scripts/71.chunk.js.map +1 -0
  366. package/dist/scripts/{8-d64d1cc3c2.chunk.js → 8-23f94941b7.chunk.js} +1 -1
  367. package/dist/scripts/8-cf6e1f3b76.chunk.js +1 -0
  368. package/dist/scripts/8.chunk.js +24 -0
  369. package/dist/scripts/8.chunk.js.map +1 -0
  370. package/dist/scripts/{9-45dbfb578e.chunk.js → 9-11c21b9609.chunk.js} +1 -1
  371. package/dist/scripts/9-593ef0b4f8.chunk.js +1 -0
  372. package/dist/scripts/9.chunk.js +327 -0
  373. package/dist/scripts/9.chunk.js.map +1 -0
  374. package/dist/scripts/bundle-2e43bd8225.min.js +8 -0
  375. package/dist/scripts/bundle-b9ea7224b0.min.js +8 -0
  376. package/dist/scripts/bundle.js +44515 -0
  377. package/dist/scripts/bundle.js.map +1 -0
  378. package/dist/scripts/bundles.json +2 -2
  379. package/dist/scripts/polyfills-69bebbe22a.min.js +1 -0
  380. package/dist/scripts/polyfills-bbe21b4875.min.js +1 -0
  381. package/dist/scripts/polyfills.js +15254 -0
  382. package/dist/scripts/polyfills.js.map +1 -0
  383. package/package.json +3 -3
  384. package/dist/libs/shared/src/apps/content-updates/interfaces/VideoClassificationMapping.d.ts +0 -5
  385. package/dist/libs/shared/src/apps/subjects/components/preferences/progress/PreferenceProgress.d.ts +0 -12
  386. package/dist/projects/lite/src/apps/playlists/interfaces/PlaylistCollectionIdentifier.d.ts +0 -5
  387. package/dist/projects/lite/src/shared/components/avatar/Avatar.d.ts +0 -6
  388. package/dist/scripts/0-06e6d224db.chunk.js +0 -1
  389. package/dist/scripts/1-887b4b1b62.chunk.js +0 -17
  390. package/dist/scripts/12-c3a787026a.chunk.js +0 -1
  391. package/dist/scripts/14-388f94a450.chunk.js +0 -1
  392. package/dist/scripts/15-77df8b5af3.chunk.js +0 -1
  393. package/dist/scripts/16-0ffeb64f54.chunk.js +0 -1
  394. package/dist/scripts/2-fd038171b4.chunk.js +0 -1
  395. package/dist/scripts/26-cdbba9cd45.chunk.js +0 -1
  396. package/dist/scripts/27-e37f663d43.chunk.js +0 -1
  397. package/dist/scripts/3-80777701d5.chunk.js +0 -7
  398. package/dist/scripts/30-eacfd37725.chunk.js +0 -1
  399. package/dist/scripts/35-6c3ad9d973.chunk.js +0 -1
  400. package/dist/scripts/38-dc36b72523.chunk.js +0 -1
  401. package/dist/scripts/4-921a74ad8c.chunk.js +0 -1
  402. package/dist/scripts/44-a689986917.chunk.js +0 -1
  403. package/dist/scripts/45-929a705c77.chunk.js +0 -1
  404. package/dist/scripts/6-176dc103e5.chunk.js +0 -1
  405. package/dist/scripts/7-26644d5b55.chunk.js +0 -1
  406. package/dist/scripts/bundle-697354e29e.min.js +0 -8
  407. package/dist/scripts/polyfills-b6dc96dd56.min.js +0 -1
@@ -0,0 +1,956 @@
1
+ (window["webpackJsonp_clickview_lite"] = window["webpackJsonp_clickview_lite"] || []).push([[25],{
2
+
3
+ /***/ "../../libs/shared/src/apps/playlists/components/empty-state/EmptyVideoList.tsx":
4
+ /*!*************************************************************************************************************************!*\
5
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/apps/playlists/components/empty-state/EmptyVideoList.tsx ***!
6
+ \*************************************************************************************************************************/
7
+ /*! exports provided: EmptyVideoListComponent */
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__, "EmptyVideoListComponent", function() { return EmptyVideoListComponent; });
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_utils_UrlHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../common/src/backbone/utils/UrlHelper */ "../../libs/common/src/backbone/utils/UrlHelper.ts");
16
+ /* harmony import */ var _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
17
+ /* harmony import */ var _common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../common/src/react/hooks/UseService */ "../../libs/common/src/react/hooks/UseService.ts");
18
+ /* harmony import */ var _constants_SharedServices__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../constants/SharedServices */ "../../libs/shared/src/constants/SharedServices.ts");
19
+ /* harmony import */ var _constants_SupportArticles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../constants/SupportArticles */ "../../libs/shared/src/constants/SupportArticles.ts");
20
+ /* harmony import */ var _components_empty_state_EmptyState__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../components/empty-state/EmptyState */ "../../libs/shared/src/components/empty-state/EmptyState.tsx");
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+ var getPhrase = _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__["LanguageService"].encloseNamespace('playlists.emptyState');
29
+ function EmptyVideoListComponent(props) {
30
+ var _a;
31
+
32
+ var imageUrlService = Object(_common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_3__["useService"])(_constants_SharedServices__WEBPACK_IMPORTED_MODULE_4__["SharedServices"].ImageUrl);
33
+ var imageUrls = imageUrlService.getImageUrls();
34
+ var supportArticleUrl = _common_src_backbone_utils_UrlHelper__WEBPACK_IMPORTED_MODULE_1__["UrlHelper"].safeUrlConcat(props.supportSiteUrl, _constants_SupportArticles__WEBPACK_IMPORTED_MODULE_5__["SupportArticles"].ADD_TO_PLAYLIST);
35
+ var currentUserIsPlaylistOwner = ((_a = props.playlist.owner) === null || _a === void 0 ? void 0 : _a.id) === props.currentUser.id;
36
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_empty_state_EmptyState__WEBPACK_IMPORTED_MODULE_6__["EmptyState"], {
37
+ imageUrl: imageUrls.EmptyStates.VIDEOS,
38
+ heading: getPhrase('noVideosHeading'),
39
+ description: currentUserIsPlaylistOwner && "<a href=\"".concat(supportArticleUrl, "\" target=\"_blank\">").concat(getPhrase('noVideosInfo'), "</a>")
40
+ });
41
+ }
42
+
43
+ /***/ }),
44
+
45
+ /***/ "../../libs/shared/src/apps/playlists/hooks/UseHandlePlaylistError.ts":
46
+ /*!***************************************************************************************************************!*\
47
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/apps/playlists/hooks/UseHandlePlaylistError.ts ***!
48
+ \***************************************************************************************************************/
49
+ /*! exports provided: useHandlePlaylistError */
50
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
51
+
52
+ "use strict";
53
+ __webpack_require__.r(__webpack_exports__);
54
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useHandlePlaylistError", function() { return useHandlePlaylistError; });
55
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
56
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
57
+ /* harmony import */ var _common_src_backbone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../common/src/backbone */ "../../libs/common/src/backbone/index.ts");
58
+ /* harmony import */ var _common_src_backbone_enums_HttpStatus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../common/src/backbone/enums/HttpStatus */ "../../libs/common/src/backbone/enums/HttpStatus.ts");
59
+ /* harmony import */ var _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
60
+ /* harmony import */ var _common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../common/src/react/hooks/UseService */ "../../libs/common/src/react/hooks/UseService.ts");
61
+ /* harmony import */ var _common_src_backbone_constants_CommonServices__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../common/src/backbone/constants/CommonServices */ "../../libs/common/src/backbone/constants/CommonServices.ts");
62
+
63
+
64
+
65
+
66
+
67
+
68
+ var namespace = 'playlists.hooks';
69
+
70
+ function handlePlaylistError(statusCode, alertService, appLinks) {
71
+ var appLink;
72
+
73
+ switch (statusCode) {
74
+ case _common_src_backbone_enums_HttpStatus__WEBPACK_IMPORTED_MODULE_2__["HttpStatus"].Forbidden:
75
+ appLink = appLinks.forbidden;
76
+ break;
77
+
78
+ case _common_src_backbone_enums_HttpStatus__WEBPACK_IMPORTED_MODULE_2__["HttpStatus"].NotFound:
79
+ appLink = appLinks.notFound;
80
+ }
81
+
82
+ if (!appLink) {
83
+ alertService.error(_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__["LanguageService"].getPhrase(namespace, 'somethingWentWrong'))();
84
+ return;
85
+ }
86
+
87
+ _common_src_backbone__WEBPACK_IMPORTED_MODULE_1__["Core"].AppLinkHelper.trigger(appLink);
88
+ }
89
+
90
+ function useHandlePlaylistError(response) {
91
+ var appLinks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
92
+ var alertService = Object(_common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_4__["useService"])(_common_src_backbone_constants_CommonServices__WEBPACK_IMPORTED_MODULE_5__["CommonServices"].ALERT);
93
+ Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
94
+ if (response.hasError) handlePlaylistError(response.statusCode, alertService, appLinks);
95
+ }, [response.hasError]);
96
+ }
97
+
98
+ /***/ }),
99
+
100
+ /***/ "../../libs/shared/src/components/video-list/PartialVideoList.tsx":
101
+ /*!***********************************************************************************************************!*\
102
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/components/video-list/PartialVideoList.tsx ***!
103
+ \***********************************************************************************************************/
104
+ /*! exports provided: PartialVideoList */
105
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
106
+
107
+ "use strict";
108
+ __webpack_require__.r(__webpack_exports__);
109
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PartialVideoList", function() { return PartialVideoList; });
110
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
111
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
112
+
113
+ function PartialVideoList(props) {
114
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
115
+ }
116
+
117
+ /***/ }),
118
+
119
+ /***/ "../../libs/shared/src/constants/SupportArticles.ts":
120
+ /*!*********************************************************************************************!*\
121
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/constants/SupportArticles.ts ***!
122
+ \*********************************************************************************************/
123
+ /*! exports provided: SupportArticles */
124
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
125
+
126
+ "use strict";
127
+ __webpack_require__.r(__webpack_exports__);
128
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SupportArticles", function() { return SupportArticles; });
129
+ var SupportArticles = {
130
+ ADD_TO_PLAYLIST: 'hc/articles/115005679748'
131
+ };
132
+
133
+ /***/ }),
134
+
135
+ /***/ "../../libs/shared/src/flight-requests/FavouriteVideoRequests.ts":
136
+ /*!**********************************************************************************************************!*\
137
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/flight-requests/FavouriteVideoRequests.ts ***!
138
+ \**********************************************************************************************************/
139
+ /*! exports provided: FavouriteVideoRequests */
140
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
141
+
142
+ "use strict";
143
+ __webpack_require__.r(__webpack_exports__);
144
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FavouriteVideoRequests", function() { return FavouriteVideoRequests; });
145
+ /* harmony import */ var _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/src/backbone/enums/HttpVerbs */ "../../libs/common/src/backbone/enums/HttpVerbs.ts");
146
+ /* harmony import */ var _constants_WithStatements__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../constants/WithStatements */ "../../libs/shared/src/constants/WithStatements.ts");
147
+ var __rest = undefined && undefined.__rest || function (s, e) {
148
+ var t = {};
149
+
150
+ for (var p in s) {
151
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
152
+ }
153
+
154
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
155
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
156
+ }
157
+ return t;
158
+ };
159
+
160
+
161
+
162
+
163
+ function favouriteVideo(videoId, userId, success, error) {
164
+ return {
165
+ url: "/api/domain/v2/objects/".concat(userId),
166
+ key: "favourite:video:".concat(userId, ":").concat(videoId),
167
+ data: {
168
+ favouriteVideos: videoId
169
+ },
170
+ type: _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_0__["HttpVerbs"].PUT,
171
+ invalidationKeys: ["favourite:videos:".concat(userId), "video:is:favourited:".concat(userId)],
172
+ success: success,
173
+ error: error
174
+ };
175
+ }
176
+
177
+ function unfavouriteVideo(videoId, userId, success, error) {
178
+ return {
179
+ url: "/api/domain/v2/objects/".concat(userId, "/favouriteVideos/").concat(videoId),
180
+ key: "favourite:video:".concat(userId, ":").concat(videoId),
181
+ type: _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_0__["HttpVerbs"].DELETE,
182
+ invalidationKeys: ["favourite:videos:".concat(userId), "video:is:favourited:".concat(userId)],
183
+ success: success,
184
+ error: error
185
+ };
186
+ }
187
+
188
+ var FavouriteVideoRequests = {
189
+ favouriteVideos: function favouriteVideos(userId, cursor) {
190
+ var query = "".concat(_constants_WithStatements__WEBPACK_IMPORTED_MODULE_1__["SharedWithStatements"].VIDEO_COLLECTION).concat(addCursor(cursor));
191
+ return {
192
+ url: "/api/domain/v2/objects/".concat(userId, "/favouriteVideos?query=").concat(query),
193
+ key: "favourite:videos:".concat(userId).concat(cursor ? ":".concat(cursor) : '')
194
+ };
195
+ },
196
+ updateIsVideoFavourited: function updateIsVideoFavourited(videoId, userId, shouldFavourite, success, error) {
197
+ var requestFn = shouldFavourite ? favouriteVideo : unfavouriteVideo;
198
+ return requestFn(videoId, userId, success, error);
199
+ },
200
+ isFavourited: function isFavourited(userId, ids) {
201
+ var sortedIds = ids.slice().sort();
202
+ var params = sortedIds.map(function (i) {
203
+ return "id=".concat(i);
204
+ });
205
+ return {
206
+ url: "/api/domain/v2/objects?query=favouritedBy{id:".concat(userId, "}&").concat(params.join('&')),
207
+ key: "video:is:favourited:".concat(userId, ":by:id:").concat(sortedIds.join(',')),
208
+ formatData: function formatData(videos) {
209
+ var _a;
210
+
211
+ if (!((_a = videos) === null || _a === void 0 ? void 0 : _a.length)) return videos;
212
+
213
+ var setIsFavourited = function setIsFavourited(video) {
214
+ var _a, _b;
215
+
216
+ var favouritedBy = video.favouritedBy,
217
+ v = __rest(video, ["favouritedBy"]); // As we filtered by userId, if there are any users, set isFavourited to true.
218
+
219
+
220
+ return Object.assign(Object.assign({}, v), {
221
+ isFavourited: !!((_b = (_a = favouritedBy) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length)
222
+ });
223
+ };
224
+
225
+ return videos.map(setIsFavourited);
226
+ }
227
+ };
228
+ }
229
+ };
230
+
231
+ function addCursor(cursor) {
232
+ return cursor ? "&cursor=".concat(cursor) : '';
233
+ }
234
+
235
+ /***/ }),
236
+
237
+ /***/ "../../libs/shared/src/hooks/UseInfiniteList.ts":
238
+ /*!*****************************************************************************************!*\
239
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/hooks/UseInfiniteList.ts ***!
240
+ \*****************************************************************************************/
241
+ /*! exports provided: useInfiniteList */
242
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
243
+
244
+ "use strict";
245
+ __webpack_require__.r(__webpack_exports__);
246
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useInfiniteList", function() { return useInfiniteList; });
247
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
248
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
249
+ /* harmony import */ var _UseSelectAllPages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./UseSelectAllPages */ "../../libs/shared/src/hooks/UseSelectAllPages.ts");
250
+ /* harmony import */ var _UseInfiniteScroll__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./UseInfiniteScroll */ "../../libs/shared/src/hooks/UseInfiniteScroll.ts");
251
+
252
+
253
+
254
+ /**
255
+ * Hook to extract an infinite list from the application state,
256
+ * save it locally in state and only update when new data
257
+ * is fetched.
258
+ *
259
+ * @param getRequest - callback function to get the request for each page.
260
+ * Can be false if the request requires data that hasn't yet been fetched - e.g. user id.
261
+ *
262
+ * @param fetchNext - callback function to fetch a page.
263
+ * Can be false if the request requires data that hasn't yet been fetched - e.g. user id.
264
+ */
265
+
266
+ function useInfiniteList(getRequest, fetchNext) {
267
+ var fetchNextFn = fetchNext;
268
+ var response = Object(_UseSelectAllPages__WEBPACK_IMPORTED_MODULE_1__["useSelectAllPages"])(getRequest && function (cursor) {
269
+ return getRequest(cursor).key;
270
+ });
271
+ Object(_UseInfiniteScroll__WEBPACK_IMPORTED_MODULE_2__["useInfiniteScroll"])(function () {
272
+ return fetchNext && fetchNextFn(response.nextCursor);
273
+ }, !!response.nextCursor, response.isFetching);
274
+ Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
275
+ if (response.shouldInitialFetch && fetchNext) fetchNextFn();
276
+ }, [response.shouldInitialFetch, fetchNext]);
277
+ return {
278
+ items: response.items,
279
+ hasMore: !!response.nextCursor,
280
+ isFetching: response.isFetching
281
+ };
282
+ }
283
+
284
+ /***/ }),
285
+
286
+ /***/ "../../libs/shared/src/hooks/UseReorderedItems.ts":
287
+ /*!*******************************************************************************************!*\
288
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/hooks/UseReorderedItems.ts ***!
289
+ \*******************************************************************************************/
290
+ /*! exports provided: useReorderedItems */
291
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
292
+
293
+ "use strict";
294
+ __webpack_require__.r(__webpack_exports__);
295
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useReorderedItems", function() { return useReorderedItems; });
296
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
297
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
298
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
299
+
300
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
301
+
302
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
303
+
304
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
305
+
306
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
307
+
308
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
309
+
310
+
311
+
312
+ function isOrderEqual(arr1, arr2) {
313
+ var isEqual = true;
314
+ if (arr1.length !== arr2.length) return false;
315
+
316
+ for (var i = 0; i < arr1.length; i++) {
317
+ if (arr1[i].id !== arr2[i].id) {
318
+ isEqual = false;
319
+ break;
320
+ }
321
+ }
322
+
323
+ return isEqual;
324
+ }
325
+ /**
326
+ * This function can be used to temporarily store an array of reordered objects
327
+ * until the array obtained from the application store updates to the new order.
328
+ *
329
+ * @param items array of objects from application store.
330
+ */
331
+
332
+
333
+ function useReorderedItems(items) {
334
+ var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(),
335
+ _useState2 = _slicedToArray(_useState, 2),
336
+ reorderedItems = _useState2[0],
337
+ setReorderedItems = _useState2[1];
338
+
339
+ Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
340
+ if (!reorderedItems) return;
341
+ if (items.length !== reorderedItems.length || isOrderEqual(items, reorderedItems)) setReorderedItems(null);
342
+ }, [items]);
343
+ return [reorderedItems, setReorderedItems];
344
+ }
345
+
346
+ /***/ }),
347
+
348
+ /***/ "../../libs/shared/src/utils/RatingHelper.ts":
349
+ /*!**************************************************************************************!*\
350
+ !*** C:/ClickView Projects/clickview/packages/libs/shared/src/utils/RatingHelper.ts ***!
351
+ \**************************************************************************************/
352
+ /*! exports provided: RatingHelper */
353
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
354
+
355
+ "use strict";
356
+ __webpack_require__.r(__webpack_exports__);
357
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RatingHelper", function() { return RatingHelper; });
358
+ /* harmony import */ var _enums_UserRole__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums/UserRole */ "../../libs/shared/src/enums/UserRole.ts");
359
+
360
+ var RatingHelper = {
361
+ getMaxAllowedRatingForUser: function getMaxAllowedRatingForUser(user) {
362
+ var _a, _b;
363
+
364
+ if (((_a = user) === null || _a === void 0 ? void 0 : _a.onlineRole) === _enums_UserRole__WEBPACK_IMPORTED_MODULE_0__["OnlineUserRole"].Staff) return;
365
+ return (_b = user) === null || _b === void 0 ? void 0 : _b.maxAllowedRating;
366
+ }
367
+ };
368
+
369
+ /***/ }),
370
+
371
+ /***/ "./src/apps/playlists/components/playlist-header/PlaylistHeader.tsx":
372
+ /*!**************************************************************************!*\
373
+ !*** ./src/apps/playlists/components/playlist-header/PlaylistHeader.tsx ***!
374
+ \**************************************************************************/
375
+ /*! exports provided: PlaylistHeader */
376
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
377
+
378
+ "use strict";
379
+ __webpack_require__.r(__webpack_exports__);
380
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlaylistHeader", function() { return PlaylistHeader; });
381
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
382
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
383
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
384
+ /* harmony import */ var _libs_shared_src_hooks_UseMediaQuery__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/UseMediaQuery */ "../../libs/shared/src/hooks/UseMediaQuery.tsx");
385
+ /* harmony import */ var _libs_shared_src_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
386
+ /* harmony import */ var _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
387
+ /* harmony import */ var _libs_shared_src_components_banner_header_BannerHeader__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/banner-header/BannerHeader */ "../../libs/shared/src/components/banner-header/BannerHeader.tsx");
388
+ /* harmony import */ var _libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
389
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
390
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
391
+
392
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
393
+
394
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
395
+
396
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
397
+
398
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
399
+
400
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
401
+
402
+
403
+
404
+
405
+
406
+
407
+
408
+
409
+
410
+ var namespace = 'playlists.playlistHeader';
411
+ function PlaylistHeader(props) {
412
+ // Store isFollowing in local state so that it updates immediately.
413
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](props.isFollowing),
414
+ _React$useState2 = _slicedToArray(_React$useState, 2),
415
+ isFollowing = _React$useState2[0],
416
+ setIsFollowing = _React$useState2[1];
417
+
418
+ var isMobile = Object(_libs_shared_src_hooks_UseMediaQuery__WEBPACK_IMPORTED_MODULE_2__["useMediaQuery"])(_libs_shared_src_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_3__["MediaQueryStrings"].XS);
419
+ if (props.showPartialLoading) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
420
+ var description = props.playlist.description;
421
+ var application = props.application;
422
+ var args = [props.playlist.id];
423
+ var actions = [];
424
+
425
+ if (props.canEdit) {
426
+ actions.push({
427
+ label: _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].getPhrase(namespace, 'edit'),
428
+ appLink: {
429
+ application: application,
430
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_7__["Actions"].Playlists.EDIT_PLAYLIST,
431
+ args: args
432
+ },
433
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__["cvSvgLibrary"].Edit,
434
+ className: 'btn btn-light',
435
+ button: !isMobile
436
+ }, {
437
+ label: _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].getPhrase(namespace, 'delete'),
438
+ appLink: {
439
+ application: application,
440
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_7__["Actions"].Playlists.DELETE_PLAYLIST,
441
+ args: args
442
+ },
443
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__["cvSvgLibrary"].Share,
444
+ className: 'text-danger'
445
+ });
446
+ }
447
+
448
+ if (!props.canEdit) {
449
+ actions.push({
450
+ label: _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].getPhrase(namespace, isFollowing ? 'following' : 'follow'),
451
+ onClick: function onClick() {
452
+ setIsFollowing(!isFollowing);
453
+ props.follow(!isFollowing, function () {
454
+ return setIsFollowing(isFollowing);
455
+ });
456
+ },
457
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__["cvSvgLibrary"].Bell,
458
+ className: "btn btn-".concat(isFollowing ? 'dark' : 'light'),
459
+ button: !isMobile
460
+ });
461
+ }
462
+
463
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_banner_header_BannerHeader__WEBPACK_IMPORTED_MODULE_5__["BannerHeader"], {
464
+ heading: props.playlist.name,
465
+ banner: props.playlist.banner,
466
+ imageCdnUrl: props.imageCdnUrl,
467
+ actions: actions.length && actions
468
+ }), !!description && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h4", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_6__["Text"], {
469
+ namespace: namespace,
470
+ phrase: 'description'
471
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", null, description)));
472
+ }
473
+
474
+ /***/ }),
475
+
476
+ /***/ "./src/apps/playlists/components/video-list/SortableVideoListContainer.tsx":
477
+ /*!*********************************************************************************!*\
478
+ !*** ./src/apps/playlists/components/video-list/SortableVideoListContainer.tsx ***!
479
+ \*********************************************************************************/
480
+ /*! exports provided: SortableVideoListContainer */
481
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
482
+
483
+ "use strict";
484
+ __webpack_require__.r(__webpack_exports__);
485
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SortableVideoListContainer", function() { return SortableVideoListContainer; });
486
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
487
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
488
+ /* harmony import */ var _libs_common_src_backbone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone */ "../../libs/common/src/backbone/index.ts");
489
+ /* harmony import */ var _libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
490
+ /* harmony import */ var _libs_common_src_backbone_errors_DevError__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/errors/DevError */ "../../libs/common/src/backbone/errors/DevError.ts");
491
+ /* harmony import */ var _libs_shared_src_components_video_list_VideoList__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/video-list/VideoList */ "../../libs/shared/src/components/video-list/VideoList.tsx");
492
+ /* harmony import */ var _libs_shared_src_components_video_list_PartialVideoList__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/video-list/PartialVideoList */ "../../libs/shared/src/components/video-list/PartialVideoList.tsx");
493
+ /* harmony import */ var _sortable_video_list_container_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./sortable-video-list-container.scss */ "./src/apps/playlists/components/video-list/sortable-video-list-container.scss");
494
+ /* harmony import */ var _sortable_video_list_container_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_sortable_video_list_container_scss__WEBPACK_IMPORTED_MODULE_6__);
495
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
496
+
497
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
498
+
499
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
500
+
501
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
502
+
503
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
504
+
505
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
506
+
507
+ var __rest = undefined && undefined.__rest || function (s, e) {
508
+ var t = {};
509
+
510
+ for (var p in s) {
511
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
512
+ }
513
+
514
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
515
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
516
+ }
517
+ return t;
518
+ };
519
+
520
+
521
+
522
+
523
+
524
+
525
+
526
+
527
+ function SortableVideoListContainer(props) {
528
+ var onSortComplete = props.onSortComplete,
529
+ onSortStart = props.onSortStart,
530
+ showPartialLoading = props.showPartialLoading,
531
+ videoListProps = __rest(props, ["onSortComplete", "onSortStart", "showPartialLoading"]);
532
+
533
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](),
534
+ _React$useState2 = _slicedToArray(_React$useState, 2),
535
+ currentSortingIndex = _React$useState2[0],
536
+ setCurrentSortingIndex = _React$useState2[1];
537
+
538
+ var onSortStartHandler = function onSortStartHandler(index) {
539
+ if (_libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].isFunction(onSortStart)) onSortStart(index);
540
+ };
541
+
542
+ var onSortEnd = function onSortEnd(sort) {
543
+ setCurrentSortingIndex(null);
544
+
545
+ if (!_libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].isFunction(onSortComplete)) {
546
+ _libs_common_src_backbone__WEBPACK_IMPORTED_MODULE_1__["Core"].ErrorHelper["throw"](new _libs_common_src_backbone_errors_DevError__WEBPACK_IMPORTED_MODULE_3__["DevError"]('An onSortComplete callback function must be passed to SortableVideoListComponent'));
547
+ return;
548
+ }
549
+
550
+ onSortComplete(sort.oldIndex, sort.newIndex);
551
+ };
552
+
553
+ if (showPartialLoading) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_video_list_PartialVideoList__WEBPACK_IMPORTED_MODULE_5__["PartialVideoList"], null);
554
+ if (!props.canEdit) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_video_list_VideoList__WEBPACK_IMPORTED_MODULE_4__["VideoList"], Object.assign({}, videoListProps));
555
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_video_list_VideoList__WEBPACK_IMPORTED_MODULE_4__["SortableVideoList"], Object.assign({}, videoListProps, {
556
+ currentSortingIndex: currentSortingIndex,
557
+ updateBeforeSortStart: function updateBeforeSortStart(_ref) {
558
+ var index = _ref.index;
559
+ return setCurrentSortingIndex(index);
560
+ },
561
+ onSortStart: function onSortStart(_ref2) {
562
+ var index = _ref2.index;
563
+ return onSortStartHandler(index);
564
+ },
565
+ onSortEnd: onSortEnd,
566
+ lockAxis: 'y',
567
+ lockToContainerEdges: true,
568
+ lockOffset: ['0%', '100%'],
569
+ helperClass: "bg-white ".concat(_sortable_video_list_container_scss__WEBPACK_IMPORTED_MODULE_6___default.a.sortableItem),
570
+ distance: 1,
571
+ useDragHandle: true
572
+ }));
573
+ }
574
+
575
+ /***/ }),
576
+
577
+ /***/ "./src/apps/playlists/components/video-list/sortable-video-list-container.scss":
578
+ /*!*************************************************************************************!*\
579
+ !*** ./src/apps/playlists/components/video-list/sortable-video-list-container.scss ***!
580
+ \*************************************************************************************/
581
+ /*! no static exports found */
582
+ /***/ (function(module, exports, __webpack_require__) {
583
+
584
+ // extracted by mini-css-extract-plugin
585
+ module.exports = {"sortableItem":"cv--sortableItem--2eiPB"};
586
+
587
+ /***/ }),
588
+
589
+ /***/ "./src/apps/playlists/utils/PlaylistVideoActionAppLinkHelper.ts":
590
+ /*!**********************************************************************!*\
591
+ !*** ./src/apps/playlists/utils/PlaylistVideoActionAppLinkHelper.ts ***!
592
+ \**********************************************************************/
593
+ /*! exports provided: getVideoActionAppLink */
594
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
595
+
596
+ "use strict";
597
+ __webpack_require__.r(__webpack_exports__);
598
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getVideoActionAppLink", function() { return getVideoActionAppLink; });
599
+ /* harmony import */ var _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../libs/shared/src/utils/video-actions/VideoActionsHelper */ "../../libs/shared/src/utils/video-actions/VideoActionsHelper.ts");
600
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
601
+
602
+
603
+ function getVideoActionAppLink(application, playlistId) {
604
+ return function (video, action) {
605
+ switch (action) {
606
+ case _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_0__["VideoAction"].RemoveFromPlaylist:
607
+ return {
608
+ application: application,
609
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_1__["Actions"].Playlists.REMOVE_VIDEO_FROM_PLAYLIST,
610
+ args: [video.id, playlistId]
611
+ };
612
+
613
+ case _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_0__["VideoAction"].AddToPlaylist:
614
+ return {
615
+ application: application,
616
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_1__["Actions"].Playlists.ADD_TO_PLAYLIST,
617
+ args: [video.id]
618
+ };
619
+ // TODO Replace this with proper appLink
620
+
621
+ case _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_0__["VideoAction"].Share:
622
+ return {
623
+ application: application,
624
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_1__["Actions"].Playlists.HOME
625
+ };
626
+ }
627
+ };
628
+ }
629
+
630
+ /***/ }),
631
+
632
+ /***/ "./src/apps/playlists/views/playlist/PlaylistView.tsx":
633
+ /*!************************************************************!*\
634
+ !*** ./src/apps/playlists/views/playlist/PlaylistView.tsx ***!
635
+ \************************************************************/
636
+ /*! exports provided: PlaylistView */
637
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
638
+
639
+ "use strict";
640
+ __webpack_require__.r(__webpack_exports__);
641
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlaylistView", function() { return PlaylistView; });
642
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
643
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
644
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-redux */ "react-redux");
645
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
646
+ /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
647
+ /* harmony import */ var _libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
648
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
649
+ /* harmony import */ var _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../libs/analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
650
+ /* harmony import */ var _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../../libs/analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
651
+ /* harmony import */ var _libs_shared_src_apps_playlists_components_empty_state_EmptyVideoList__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/playlists/components/empty-state/EmptyVideoList */ "../../libs/shared/src/apps/playlists/components/empty-state/EmptyVideoList.tsx");
652
+ /* harmony import */ var _libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/ConfigRequests */ "../../libs/shared/src/flight-requests/ConfigRequests.ts");
653
+ /* harmony import */ var _libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/UserRequests */ "../../libs/shared/src/flight-requests/UserRequests.ts");
654
+ /* harmony import */ var _libs_shared_src_flight_requests_FavouriteVideoRequests__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/FavouriteVideoRequests */ "../../libs/shared/src/flight-requests/FavouriteVideoRequests.ts");
655
+ /* harmony import */ var _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/PlaylistRequests */ "../../libs/shared/src/flight-requests/PlaylistRequests.ts");
656
+ /* harmony import */ var _libs_shared_src_hooks_useSetPageTitle__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/useSetPageTitle */ "../../libs/shared/src/hooks/useSetPageTitle.ts");
657
+ /* harmony import */ var _libs_shared_src_hooks_UseInfiniteList__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/UseInfiniteList */ "../../libs/shared/src/hooks/UseInfiniteList.ts");
658
+ /* harmony import */ var _libs_shared_src_components_infinite_scroll_footer_InfiniteScrollFooter__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/infinite-scroll-footer/InfiniteScrollFooter */ "../../libs/shared/src/components/infinite-scroll-footer/InfiniteScrollFooter.tsx");
659
+ /* harmony import */ var _libs_shared_src_utils_ReorderHelper__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/ReorderHelper */ "../../libs/shared/src/utils/ReorderHelper.ts");
660
+ /* harmony import */ var _libs_shared_src_utils_RatingHelper__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/RatingHelper */ "../../libs/shared/src/utils/RatingHelper.ts");
661
+ /* harmony import */ var _libs_shared_src_apps_playlists_hooks_UseHandlePlaylistError__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/playlists/hooks/UseHandlePlaylistError */ "../../libs/shared/src/apps/playlists/hooks/UseHandlePlaylistError.ts");
662
+ /* harmony import */ var _libs_shared_src_hooks_UseReorderedItems__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/UseReorderedItems */ "../../libs/shared/src/hooks/UseReorderedItems.ts");
663
+ /* harmony import */ var _libs_shared_src_context_VideoActionsContext__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/context/VideoActionsContext */ "../../libs/shared/src/context/VideoActionsContext.tsx");
664
+ /* harmony import */ var _libs_shared_src_hooks_UseAlerts__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/UseAlerts */ "../../libs/shared/src/hooks/UseAlerts.ts");
665
+ /* harmony import */ var shared_hooks_useVideoMixin__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! shared/hooks/useVideoMixin */ "./src/shared/hooks/useVideoMixin.ts");
666
+ /* harmony import */ var shared_flight_requests_VideoRequests__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! shared/flight-requests/VideoRequests */ "./src/shared/flight-requests/VideoRequests.ts");
667
+ /* harmony import */ var apps_playlists_components_playlist_header_PlaylistHeader__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! apps/playlists/components/playlist-header/PlaylistHeader */ "./src/apps/playlists/components/playlist-header/PlaylistHeader.tsx");
668
+ /* harmony import */ var apps_playlists_components_video_list_SortableVideoListContainer__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! apps/playlists/components/video-list/SortableVideoListContainer */ "./src/apps/playlists/components/video-list/SortableVideoListContainer.tsx");
669
+ /* harmony import */ var apps_playlists_utils_PlaylistVideoActionAppLinkHelper__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! apps/playlists/utils/PlaylistVideoActionAppLinkHelper */ "./src/apps/playlists/utils/PlaylistVideoActionAppLinkHelper.ts");
670
+ /* harmony import */ var _PlaylistViewUtils__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./PlaylistViewUtils */ "./src/apps/playlists/views/playlist/PlaylistViewUtils.ts");
671
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
672
+
673
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
674
+
675
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
676
+
677
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
678
+
679
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
680
+
681
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
682
+
683
+
684
+
685
+
686
+
687
+
688
+
689
+
690
+
691
+
692
+
693
+
694
+
695
+
696
+
697
+
698
+
699
+
700
+
701
+
702
+
703
+
704
+
705
+
706
+
707
+
708
+
709
+
710
+ var namespace = 'playlists.playlist';
711
+ function PlaylistView(props) {
712
+ var _a;
713
+
714
+ var dispatch = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["useDispatch"])();
715
+ var alerts = Object(_libs_shared_src_hooks_UseAlerts__WEBPACK_IMPORTED_MODULE_20__["useAlerts"])();
716
+ var config = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_8__["ConfigRequests"].config);
717
+ var user = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_9__["UserRequests"].currentUser);
718
+ var isUserSignedIn = !_libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_3__["ObjectHelper"].isEmpty(user.data);
719
+ var maxAllowedRating = props.filterByRating ? isUserSignedIn && _libs_shared_src_utils_RatingHelper__WEBPACK_IMPORTED_MODULE_16__["RatingHelper"].getMaxAllowedRatingForUser(user.data) : null;
720
+ var playlistRequest = props.isShared ? !!user.data && _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].getSharedPlaylist(props.playlistId, maxAllowedRating) : _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].getPlaylist(props.playlistId);
721
+ var playlist = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(playlistRequest);
722
+ Object(_libs_shared_src_apps_playlists_hooks_UseHandlePlaylistError__WEBPACK_IMPORTED_MODULE_17__["useHandlePlaylistError"])(playlist);
723
+
724
+ var getVideosRequest = !!user.data && function (cursor) {
725
+ var request = props.isShared ? _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].getSharedPlaylistVideos : _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].getPlaylistVideos;
726
+ return request(props.playlistId, maxAllowedRating, cursor);
727
+ };
728
+
729
+ var following = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(!!user.data && _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].getIsFollowingPlaylist(props.playlistId, user.data.id));
730
+
731
+ var fetchNext = function fetchNext(cursor) {
732
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].getFetch(dispatch, getVideosRequest(cursor))();
733
+ };
734
+
735
+ var _useInfiniteList = Object(_libs_shared_src_hooks_UseInfiniteList__WEBPACK_IMPORTED_MODULE_13__["useInfiniteList"])(getVideosRequest, fetchNext),
736
+ videos = _useInfiniteList.items,
737
+ hasMore = _useInfiniteList.hasMore,
738
+ isFetching = _useInfiniteList.isFetching;
739
+
740
+ Object(shared_hooks_useVideoMixin__WEBPACK_IMPORTED_MODULE_21__["useVideoMixin"])(videos); // Locally stored array of videos used to immediately reflect changes in order.
741
+
742
+ var _useReorderedItems = Object(_libs_shared_src_hooks_UseReorderedItems__WEBPACK_IMPORTED_MODULE_18__["useReorderedItems"])(videos),
743
+ _useReorderedItems2 = _slicedToArray(_useReorderedItems, 2),
744
+ reorderedVideos = _useReorderedItems2[0],
745
+ setReorderedVideos = _useReorderedItems2[1];
746
+
747
+ var restrictionsRequest = isUserSignedIn && !!videos && !!videos.length && shared_flight_requests_VideoRequests__WEBPACK_IMPORTED_MODULE_22__["VideoRequests"].getRestrictions(videos.map(function (v) {
748
+ return v.id;
749
+ }));
750
+ var restrictions = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useGetResponse(restrictionsRequest && restrictionsRequest.key);
751
+ var fetchRestrictions = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useGetFetch(restrictionsRequest);
752
+
753
+ if (restrictionsRequest && restrictions.shouldFetch) {
754
+ fetchRestrictions();
755
+ }
756
+
757
+ Object(_libs_shared_src_hooks_useSetPageTitle__WEBPACK_IMPORTED_MODULE_12__["useSetPageTitle"])(!!playlist.data && playlist.data.name, [playlist.data]);
758
+
759
+ var onSortStart = function onSortStart(index) {
760
+ var video = videos[index];
761
+ if (video) _PlaylistViewUtils__WEBPACK_IMPORTED_MODULE_26__["logSortAction"](props.playlistId, video.id, _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["WorkflowPhase"].Start);
762
+ };
763
+
764
+ var onSortComplete = function onSortComplete(oldIdx, newIdx) {
765
+ if (oldIdx === newIdx) return;
766
+ var video = videos[oldIdx];
767
+ if (!video) return;
768
+
769
+ var _ReorderHelper$reorde = _libs_shared_src_utils_ReorderHelper__WEBPACK_IMPORTED_MODULE_15__["ReorderHelper"].reorder(videos, oldIdx, newIdx),
770
+ reorderedItems = _ReorderHelper$reorde.reorderedItems,
771
+ reorderRequest = _ReorderHelper$reorde.reorderRequest;
772
+
773
+ setReorderedVideos(reorderedItems);
774
+ _PlaylistViewUtils__WEBPACK_IMPORTED_MODULE_26__["logSortAction"](props.playlistId, video.id, _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["WorkflowPhase"].Complete);
775
+
776
+ var onError = function onError() {
777
+ setReorderedVideos(null);
778
+ };
779
+
780
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].fetch(dispatch, _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].reorderVideos(props.playlistId, reorderRequest, null, onError));
781
+ };
782
+
783
+ var follow = function follow(shouldFollow, onError) {
784
+ var req = shouldFollow ? _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].followPlaylist : _libs_shared_src_flight_requests_PlaylistRequests__WEBPACK_IMPORTED_MODULE_11__["PlaylistRequests"].unfollowPlaylist;
785
+
786
+ var error = function error() {
787
+ onError();
788
+ alerts.error(_libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_4__["LanguageService"].getPhrase(namespace, shouldFollow ? 'followError' : 'unfollowError'));
789
+ };
790
+
791
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].fetch(dispatch, req(props.playlistId, user.data.id, null, error));
792
+ };
793
+
794
+ var setFavourite = function setFavourite(videoId, shouldFavourite, onError) {
795
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].fetch(dispatch, _libs_shared_src_flight_requests_FavouriteVideoRequests__WEBPACK_IMPORTED_MODULE_10__["FavouriteVideoRequests"].updateIsVideoFavourited(videoId, user.data.id, shouldFavourite, function () {
796
+ _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_6__["AnalyticsHelper"].logUserAction({
797
+ id: videoId
798
+ }, {
799
+ entity: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["EntityType"].Video,
800
+ actionType: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["UserAction"].Favourite,
801
+ descriptor: shouldFavourite ? _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["ToggleDescriptor"].On : _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["ToggleDescriptor"].Off,
802
+ location: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["LocationContext"].VideoThumbnail,
803
+ workflowPhase: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_5__["WorkflowPhase"].Complete
804
+ });
805
+ }, onError));
806
+ };
807
+
808
+ var canEdit = !!props.allowEdit && _PlaylistViewUtils__WEBPACK_IMPORTED_MODULE_26__["canEditPlaylist"](playlist.data, user.data);
809
+ var playlistIsEmpty = !!videos && videos.length === 0;
810
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_context_VideoActionsContext__WEBPACK_IMPORTED_MODULE_19__["VideoActionsContext"].Provider, {
811
+ value: {
812
+ videoActions: _PlaylistViewUtils__WEBPACK_IMPORTED_MODULE_26__["getVideoActions"](canEdit),
813
+ getActionAppLink: Object(apps_playlists_utils_PlaylistVideoActionAppLinkHelper__WEBPACK_IMPORTED_MODULE_25__["getVideoActionAppLink"])(props.application, props.playlistId)
814
+ }
815
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
816
+ className: 'bg-white padding-gutter'
817
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](apps_playlists_components_playlist_header_PlaylistHeader__WEBPACK_IMPORTED_MODULE_23__["PlaylistHeader"], {
818
+ playlistId: props.playlistId,
819
+ playlist: playlist.data,
820
+ hasVideos: !playlistIsEmpty,
821
+ isFollowing: (_a = following.data) === null || _a === void 0 ? void 0 : _a.isFollowing,
822
+ follow: follow,
823
+ application: props.application,
824
+ canEdit: canEdit,
825
+ isShared: props.isShared,
826
+ showBreadcrumbs: props.showBreadcrumbs,
827
+ showDateMetadata: props.showDateMetadata,
828
+ playAllAppLink: props.playAllAppLink,
829
+ showPartialLoading: !playlist.data || !videos || !user.data || !config.data || !following.data,
830
+ lastUpdated: !!videos && _PlaylistViewUtils__WEBPACK_IMPORTED_MODULE_26__["getLastUpdatedDate"](videos),
831
+ imageCdnUrl: !!config.data && config.data.imageCdnUrl,
832
+ returnAppLink: props.returnAppLink
833
+ }), playlistIsEmpty ? !!config.data && !!user.data && !!playlist.data && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_playlists_components_empty_state_EmptyVideoList__WEBPACK_IMPORTED_MODULE_7__["EmptyVideoListComponent"], {
834
+ playlist: playlist.data,
835
+ currentUser: user.data,
836
+ supportSiteUrl: config.data.supportSiteUrl
837
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](apps_playlists_components_video_list_SortableVideoListContainer__WEBPACK_IMPORTED_MODULE_24__["SortableVideoListContainer"], {
838
+ videos: reorderedVideos || videos,
839
+ playlistId: !!playlist.data && playlist.data.id,
840
+ onSortStart: onSortStart,
841
+ onSortComplete: onSortComplete,
842
+ isUserSignedIn: isUserSignedIn,
843
+ canEdit: canEdit,
844
+ showPartialLoading: !videos || !user.data || !config.data,
845
+ getVideoAppLink: props.getVideoAppLink,
846
+ getSeriesAppLink: props.getSeriesAppLink,
847
+ fetchRestrictions: fetchRestrictions,
848
+ setFavourite: setFavourite
849
+ }), !!hasMore && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_infinite_scroll_footer_InfiniteScrollFooter__WEBPACK_IMPORTED_MODULE_14__["InfiniteScrollFooter"], {
850
+ isFetching: isFetching,
851
+ onClick: fetchNext
852
+ })));
853
+ }
854
+
855
+ /***/ }),
856
+
857
+ /***/ "./src/apps/playlists/views/playlist/PlaylistViewUtils.ts":
858
+ /*!****************************************************************!*\
859
+ !*** ./src/apps/playlists/views/playlist/PlaylistViewUtils.ts ***!
860
+ \****************************************************************/
861
+ /*! exports provided: getLastUpdatedDate, getVideoActions, logSortAction, canEditPlaylist */
862
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
863
+
864
+ "use strict";
865
+ __webpack_require__.r(__webpack_exports__);
866
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLastUpdatedDate", function() { return getLastUpdatedDate; });
867
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getVideoActions", function() { return getVideoActions; });
868
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "logSortAction", function() { return logSortAction; });
869
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "canEditPlaylist", function() { return canEditPlaylist; });
870
+ /* harmony import */ var _libs_common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react/utils/ArrayHelper */ "../../libs/common/src/react/utils/ArrayHelper.ts");
871
+ /* harmony import */ var _libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
872
+ /* harmony import */ var _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/video-actions/VideoActionsHelper */ "../../libs/shared/src/utils/video-actions/VideoActionsHelper.ts");
873
+ /* harmony import */ var _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
874
+ /* harmony import */ var _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
875
+
876
+
877
+
878
+
879
+
880
+ /**
881
+ * NOTE:
882
+ * This will be wrong if we increase the playlist limit from 100, or
883
+ * stop fetching all 100 videos at once.
884
+ */
885
+
886
+ function getLastUpdatedDate(videos) {
887
+ var videoLastUpdatedDates = videos && videos.length && videos.map(function (v) {
888
+ return v.dateAssociated;
889
+ });
890
+ return videoLastUpdatedDates && videoLastUpdatedDates.length ? _libs_common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_0__["ArrayHelper"].max(videoLastUpdatedDates, function (date) {
891
+ return new Date(date).getTime();
892
+ }) : null;
893
+ }
894
+ function getVideoActions(canEdit) {
895
+ return [canEdit ? _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_2__["VideoAction"].RemoveFromPlaylist : _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_2__["VideoAction"].AddToPlaylist, _libs_shared_src_utils_video_actions_VideoActionsHelper__WEBPACK_IMPORTED_MODULE_2__["VideoAction"].Share];
896
+ }
897
+ function logSortAction(playlistId, videoId, workflowPhase) {
898
+ _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_4__["AnalyticsHelper"].logUserAction({
899
+ id: videoId,
900
+ playlistId: playlistId
901
+ }, {
902
+ location: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_3__["LocationContext"].VideoList,
903
+ entity: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_3__["EntityType"].Video,
904
+ actionType: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_3__["UserAction"].Move,
905
+ workflowPhase: workflowPhase
906
+ });
907
+ }
908
+ function canEditPlaylist(playlist, user) {
909
+ if (_libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__["ObjectHelper"].isEmpty(user) || !playlist || _libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__["ObjectHelper"].isEmpty(playlist.owner)) return false;
910
+ return playlist.owner.id === user.id;
911
+ }
912
+
913
+ /***/ }),
914
+
915
+ /***/ "./src/shared/hooks/useVideoMixin.ts":
916
+ /*!*******************************************!*\
917
+ !*** ./src/shared/hooks/useVideoMixin.ts ***!
918
+ \*******************************************/
919
+ /*! exports provided: useVideoMixin */
920
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
921
+
922
+ "use strict";
923
+ __webpack_require__.r(__webpack_exports__);
924
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useVideoMixin", function() { return useVideoMixin; });
925
+ /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
926
+ /* harmony import */ var _libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../libs/shared/src/flight-requests/UserRequests */ "../../libs/shared/src/flight-requests/UserRequests.ts");
927
+ /* harmony import */ var _libs_shared_src_flight_requests_FavouriteVideoRequests__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../libs/shared/src/flight-requests/FavouriteVideoRequests */ "../../libs/shared/src/flight-requests/FavouriteVideoRequests.ts");
928
+ /* harmony import */ var shared_flight_requests_VideoRequests__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! shared/flight-requests/VideoRequests */ "./src/shared/flight-requests/VideoRequests.ts");
929
+
930
+
931
+
932
+
933
+
934
+ function fetchAttribute(videosFetched, request) {
935
+ var attribute = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__["Flight"].useGetResponse(request && request.key);
936
+ var fetch = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__["Flight"].useGetFetch(request);
937
+ if (videosFetched && attribute.shouldFetch) fetch();
938
+ }
939
+
940
+ function useVideoMixin(videos) {
941
+ var currentUser = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_1__["UserRequests"].currentUser);
942
+ var videoIds = videos && (Array.isArray(videos) ? videos.map(function (v) {
943
+ return v.id;
944
+ }) : videos.data.map(function (v) {
945
+ return v.id;
946
+ }));
947
+ var requests = [videoIds && shared_flight_requests_VideoRequests__WEBPACK_IMPORTED_MODULE_3__["VideoRequests"].videoRatings(videoIds), videoIds && currentUser.data && _libs_shared_src_flight_requests_FavouriteVideoRequests__WEBPACK_IMPORTED_MODULE_2__["FavouriteVideoRequests"].isFavourited(currentUser.data.id, videoIds)];
948
+ requests.forEach(function (r) {
949
+ return fetchAttribute(!!videos, r);
950
+ });
951
+ }
952
+
953
+ /***/ })
954
+
955
+ }]);
956
+ //# sourceMappingURL=25.chunk.js.map