@clickview/lite 0.0.20-rc.1 → 0.0.20

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 (196) hide show
  1. package/dist/scripts/{bundle-df3f2fe30a.min.js → bundle-0a051d30d1.min.js} +1 -1
  2. package/dist/scripts/bundles.json +1 -1
  3. package/package.json +1 -1
  4. package/dist/css/0.chunk.css.map +0 -1
  5. package/dist/css/1.chunk.css +0 -146
  6. package/dist/css/1.chunk.css.map +0 -1
  7. package/dist/css/11.chunk.css.map +0 -1
  8. package/dist/css/12.chunk.css.map +0 -1
  9. package/dist/css/13.chunk.css.map +0 -1
  10. package/dist/css/14.chunk.css.map +0 -1
  11. package/dist/css/15.chunk.css.map +0 -1
  12. package/dist/css/16.chunk.css.map +0 -1
  13. package/dist/css/17.chunk.css.map +0 -1
  14. package/dist/css/18.chunk.css.map +0 -1
  15. package/dist/css/19.chunk.css.map +0 -1
  16. package/dist/css/21.chunk.css.map +0 -1
  17. package/dist/css/22.chunk.css.map +0 -1
  18. package/dist/css/23.chunk.css.map +0 -1
  19. package/dist/css/24.chunk.css.map +0 -1
  20. package/dist/css/25.chunk.css.map +0 -1
  21. package/dist/css/26.chunk.css.map +0 -1
  22. package/dist/css/27.chunk.css.map +0 -1
  23. package/dist/css/28.chunk.css.map +0 -1
  24. package/dist/css/29.chunk.css.map +0 -1
  25. package/dist/css/3.chunk.css.map +0 -1
  26. package/dist/css/30.chunk.css +0 -32
  27. package/dist/css/30.chunk.css.map +0 -1
  28. package/dist/css/31.chunk.css.map +0 -1
  29. package/dist/css/32.chunk.css +0 -6
  30. package/dist/css/32.chunk.css.map +0 -1
  31. package/dist/css/33.chunk.css +0 -5
  32. package/dist/css/33.chunk.css.map +0 -1
  33. package/dist/css/34.chunk.css.map +0 -1
  34. package/dist/css/36.chunk.css +0 -6
  35. package/dist/css/36.chunk.css.map +0 -1
  36. package/dist/css/37.chunk.css +0 -7
  37. package/dist/css/37.chunk.css.map +0 -1
  38. package/dist/css/38.chunk.css.map +0 -1
  39. package/dist/css/41.chunk.css +0 -38
  40. package/dist/css/41.chunk.css.map +0 -1
  41. package/dist/css/5.chunk.css.map +0 -1
  42. package/dist/css/51.chunk.css +0 -9
  43. package/dist/css/51.chunk.css.map +0 -1
  44. package/dist/css/6.chunk.css.map +0 -1
  45. package/dist/css/7.chunk.css +0 -66
  46. package/dist/css/7.chunk.css.map +0 -1
  47. package/dist/css/lite-app.css.map +0 -1
  48. package/dist/projects/lite/src/polyfills.d.ts +0 -2
  49. package/dist/scripts/0.chunk.js +0 -308
  50. package/dist/scripts/0.chunk.js.map +0 -1
  51. package/dist/scripts/1.chunk.js +0 -623
  52. package/dist/scripts/1.chunk.js.map +0 -1
  53. package/dist/scripts/10.chunk.js +0 -530
  54. package/dist/scripts/10.chunk.js.map +0 -1
  55. package/dist/scripts/11.chunk.js +0 -380
  56. package/dist/scripts/11.chunk.js.map +0 -1
  57. package/dist/scripts/12.chunk.js +0 -434
  58. package/dist/scripts/12.chunk.js.map +0 -1
  59. package/dist/scripts/13.chunk.js +0 -1287
  60. package/dist/scripts/13.chunk.js.map +0 -1
  61. package/dist/scripts/14.chunk.js +0 -575
  62. package/dist/scripts/14.chunk.js.map +0 -1
  63. package/dist/scripts/15.chunk.js +0 -806
  64. package/dist/scripts/15.chunk.js.map +0 -1
  65. package/dist/scripts/16.chunk.js +0 -482
  66. package/dist/scripts/16.chunk.js.map +0 -1
  67. package/dist/scripts/17.chunk.js +0 -428
  68. package/dist/scripts/17.chunk.js.map +0 -1
  69. package/dist/scripts/18.chunk.js +0 -766
  70. package/dist/scripts/18.chunk.js.map +0 -1
  71. package/dist/scripts/19.chunk.js +0 -647
  72. package/dist/scripts/19.chunk.js.map +0 -1
  73. package/dist/scripts/2.chunk.js +0 -18882
  74. package/dist/scripts/2.chunk.js.map +0 -1
  75. package/dist/scripts/20.chunk.js +0 -212
  76. package/dist/scripts/20.chunk.js.map +0 -1
  77. package/dist/scripts/21.chunk.js +0 -1591
  78. package/dist/scripts/21.chunk.js.map +0 -1
  79. package/dist/scripts/22.chunk.js +0 -1348
  80. package/dist/scripts/22.chunk.js.map +0 -1
  81. package/dist/scripts/23.chunk.js +0 -1181
  82. package/dist/scripts/23.chunk.js.map +0 -1
  83. package/dist/scripts/24.chunk.js +0 -1141
  84. package/dist/scripts/24.chunk.js.map +0 -1
  85. package/dist/scripts/25.chunk.js +0 -907
  86. package/dist/scripts/25.chunk.js.map +0 -1
  87. package/dist/scripts/26.chunk.js +0 -979
  88. package/dist/scripts/26.chunk.js.map +0 -1
  89. package/dist/scripts/27.chunk.js +0 -655
  90. package/dist/scripts/27.chunk.js.map +0 -1
  91. package/dist/scripts/28.chunk.js +0 -615
  92. package/dist/scripts/28.chunk.js.map +0 -1
  93. package/dist/scripts/29.chunk.js +0 -622
  94. package/dist/scripts/29.chunk.js.map +0 -1
  95. package/dist/scripts/3.chunk.js +0 -809
  96. package/dist/scripts/3.chunk.js.map +0 -1
  97. package/dist/scripts/30.chunk.js +0 -468
  98. package/dist/scripts/30.chunk.js.map +0 -1
  99. package/dist/scripts/31.chunk.js +0 -441
  100. package/dist/scripts/31.chunk.js.map +0 -1
  101. package/dist/scripts/32.chunk.js +0 -509
  102. package/dist/scripts/32.chunk.js.map +0 -1
  103. package/dist/scripts/33.chunk.js +0 -957
  104. package/dist/scripts/33.chunk.js.map +0 -1
  105. package/dist/scripts/34.chunk.js +0 -502
  106. package/dist/scripts/34.chunk.js.map +0 -1
  107. package/dist/scripts/35.chunk.js +0 -938
  108. package/dist/scripts/35.chunk.js.map +0 -1
  109. package/dist/scripts/36.chunk.js +0 -537
  110. package/dist/scripts/36.chunk.js.map +0 -1
  111. package/dist/scripts/37.chunk.js +0 -414
  112. package/dist/scripts/37.chunk.js.map +0 -1
  113. package/dist/scripts/38.chunk.js +0 -245
  114. package/dist/scripts/38.chunk.js.map +0 -1
  115. package/dist/scripts/39.chunk.js +0 -337
  116. package/dist/scripts/39.chunk.js.map +0 -1
  117. package/dist/scripts/4.chunk.js +0 -402
  118. package/dist/scripts/4.chunk.js.map +0 -1
  119. package/dist/scripts/40.chunk.js +0 -350
  120. package/dist/scripts/40.chunk.js.map +0 -1
  121. package/dist/scripts/41.chunk.js +0 -343
  122. package/dist/scripts/41.chunk.js.map +0 -1
  123. package/dist/scripts/42.chunk.js +0 -404
  124. package/dist/scripts/42.chunk.js.map +0 -1
  125. package/dist/scripts/43.chunk.js +0 -221
  126. package/dist/scripts/43.chunk.js.map +0 -1
  127. package/dist/scripts/44.chunk.js +0 -230
  128. package/dist/scripts/44.chunk.js.map +0 -1
  129. package/dist/scripts/45.chunk.js +0 -409
  130. package/dist/scripts/45.chunk.js.map +0 -1
  131. package/dist/scripts/46.chunk.js +0 -272
  132. package/dist/scripts/46.chunk.js.map +0 -1
  133. package/dist/scripts/47.chunk.js +0 -267
  134. package/dist/scripts/47.chunk.js.map +0 -1
  135. package/dist/scripts/48.chunk.js +0 -359
  136. package/dist/scripts/48.chunk.js.map +0 -1
  137. package/dist/scripts/49.chunk.js +0 -225
  138. package/dist/scripts/49.chunk.js.map +0 -1
  139. package/dist/scripts/5.chunk.js +0 -1104
  140. package/dist/scripts/5.chunk.js.map +0 -1
  141. package/dist/scripts/50.chunk.js +0 -318
  142. package/dist/scripts/50.chunk.js.map +0 -1
  143. package/dist/scripts/51.chunk.js +0 -64
  144. package/dist/scripts/51.chunk.js.map +0 -1
  145. package/dist/scripts/52.chunk.js +0 -108
  146. package/dist/scripts/52.chunk.js.map +0 -1
  147. package/dist/scripts/53.chunk.js +0 -110
  148. package/dist/scripts/53.chunk.js.map +0 -1
  149. package/dist/scripts/54.chunk.js +0 -162
  150. package/dist/scripts/54.chunk.js.map +0 -1
  151. package/dist/scripts/55.chunk.js +0 -145
  152. package/dist/scripts/55.chunk.js.map +0 -1
  153. package/dist/scripts/56.chunk.js +0 -139
  154. package/dist/scripts/56.chunk.js.map +0 -1
  155. package/dist/scripts/57.chunk.js +0 -142
  156. package/dist/scripts/57.chunk.js.map +0 -1
  157. package/dist/scripts/58.chunk.js +0 -173
  158. package/dist/scripts/58.chunk.js.map +0 -1
  159. package/dist/scripts/59.chunk.js +0 -160
  160. package/dist/scripts/59.chunk.js.map +0 -1
  161. package/dist/scripts/6.chunk.js +0 -335
  162. package/dist/scripts/6.chunk.js.map +0 -1
  163. package/dist/scripts/60.chunk.js +0 -98
  164. package/dist/scripts/60.chunk.js.map +0 -1
  165. package/dist/scripts/61.chunk.js +0 -48
  166. package/dist/scripts/61.chunk.js.map +0 -1
  167. package/dist/scripts/62.chunk.js +0 -70
  168. package/dist/scripts/62.chunk.js.map +0 -1
  169. package/dist/scripts/63.chunk.js +0 -32
  170. package/dist/scripts/63.chunk.js.map +0 -1
  171. package/dist/scripts/64.chunk.js +0 -29
  172. package/dist/scripts/64.chunk.js.map +0 -1
  173. package/dist/scripts/65.chunk.js +0 -27
  174. package/dist/scripts/65.chunk.js.map +0 -1
  175. package/dist/scripts/66.chunk.js +0 -65
  176. package/dist/scripts/66.chunk.js.map +0 -1
  177. package/dist/scripts/67.chunk.js +0 -67
  178. package/dist/scripts/67.chunk.js.map +0 -1
  179. package/dist/scripts/68.chunk.js +0 -104
  180. package/dist/scripts/68.chunk.js.map +0 -1
  181. package/dist/scripts/69.chunk.js +0 -89
  182. package/dist/scripts/69.chunk.js.map +0 -1
  183. package/dist/scripts/7.chunk.js +0 -2579
  184. package/dist/scripts/7.chunk.js.map +0 -1
  185. package/dist/scripts/70.chunk.js +0 -1001
  186. package/dist/scripts/70.chunk.js.map +0 -1
  187. package/dist/scripts/71.chunk.js +0 -36
  188. package/dist/scripts/71.chunk.js.map +0 -1
  189. package/dist/scripts/8.chunk.js +0 -24
  190. package/dist/scripts/8.chunk.js.map +0 -1
  191. package/dist/scripts/9.chunk.js +0 -327
  192. package/dist/scripts/9.chunk.js.map +0 -1
  193. package/dist/scripts/bundle.js +0 -38145
  194. package/dist/scripts/bundle.js.map +0 -1
  195. package/dist/scripts/polyfills.js +0 -15232
  196. package/dist/scripts/polyfills.js.map +0 -1
@@ -1,404 +0,0 @@
1
- (window["webpackJsonp_clickview_lite"] = window["webpackJsonp_clickview_lite"] || []).push([[42],{
2
-
3
- /***/ "../../libs/shared/src/components/video-list/PartialVideoList.tsx":
4
- /*!************************************************************************************************************!*\
5
- !*** C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/PartialVideoList.tsx ***!
6
- \************************************************************************************************************/
7
- /*! exports provided: PartialVideoList */
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__, "PartialVideoList", function() { return PartialVideoList; });
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
-
16
- function PartialVideoList(props) {
17
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
18
- }
19
-
20
- /***/ }),
21
-
22
- /***/ "../../libs/shared/src/flight-requests/FavouriteVideoRequests.ts":
23
- /*!***********************************************************************************************************!*\
24
- !*** C:/ClickView/front-end/clickview/packages/libs/shared/src/flight-requests/FavouriteVideoRequests.ts ***!
25
- \***********************************************************************************************************/
26
- /*! exports provided: FavouriteVideoRequests */
27
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
28
-
29
- "use strict";
30
- __webpack_require__.r(__webpack_exports__);
31
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FavouriteVideoRequests", function() { return FavouriteVideoRequests; });
32
- /* 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");
33
- /* harmony import */ var _constants_WithStatements__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../constants/WithStatements */ "../../libs/shared/src/constants/WithStatements.ts");
34
- var __rest = undefined && undefined.__rest || function (s, e) {
35
- var t = {};
36
-
37
- for (var p in s) {
38
- if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
39
- }
40
-
41
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
42
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
43
- }
44
- return t;
45
- };
46
-
47
-
48
-
49
-
50
- function favouriteVideo(videoId, userId, success, error) {
51
- return {
52
- url: "/api/domain/v2/objects/".concat(userId),
53
- key: "favourite:video:".concat(userId, ":").concat(videoId),
54
- data: {
55
- favouriteVideos: videoId
56
- },
57
- type: _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_0__["HttpVerbs"].PUT,
58
- invalidationKeys: ["favourite:videos:".concat(userId), "video:is:favourited:".concat(userId)],
59
- success: success,
60
- error: error
61
- };
62
- }
63
-
64
- function unfavouriteVideo(videoId, userId, success, error) {
65
- return {
66
- url: "/api/domain/v2/objects/".concat(userId, "/favouriteVideos/").concat(videoId),
67
- key: "favourite:video:".concat(userId, ":").concat(videoId),
68
- type: _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_0__["HttpVerbs"].DELETE,
69
- invalidationKeys: ["favourite:videos:".concat(userId), "video:is:favourited:".concat(userId)],
70
- success: success,
71
- error: error
72
- };
73
- }
74
-
75
- var FavouriteVideoRequests = {
76
- favouriteVideos: function favouriteVideos(userId, cursor) {
77
- var query = "".concat(_constants_WithStatements__WEBPACK_IMPORTED_MODULE_1__["SharedWithStatements"].VIDEO_COLLECTION).concat(addCursor(cursor));
78
- return {
79
- url: "/api/domain/v2/objects/".concat(userId, "/favouriteVideos?query=").concat(query),
80
- key: "favourite:videos:".concat(userId).concat(cursor ? ":".concat(cursor) : '')
81
- };
82
- },
83
- updateIsVideoFavourited: function updateIsVideoFavourited(videoId, userId, shouldFavourite, success, error) {
84
- var requestFn = shouldFavourite ? favouriteVideo : unfavouriteVideo;
85
- return requestFn(videoId, userId, success, error);
86
- },
87
- isFavourited: function isFavourited(userId, ids) {
88
- var sortedIds = ids.slice().sort();
89
- var params = sortedIds.map(function (i) {
90
- return "id=".concat(i);
91
- });
92
- return {
93
- url: "/api/domain/v2/objects?query=favouritedBy{id:".concat(userId, "}&").concat(params.join('&')),
94
- key: "video:is:favourited:".concat(userId, ":by:id:").concat(sortedIds.join(',')),
95
- formatData: function formatData(videos) {
96
- var _a;
97
-
98
- if (!((_a = videos) === null || _a === void 0 ? void 0 : _a.length)) return videos;
99
-
100
- var setIsFavourited = function setIsFavourited(video) {
101
- var _a, _b;
102
-
103
- var favouritedBy = video.favouritedBy,
104
- v = __rest(video, ["favouritedBy"]); // As we filtered by userId, if there are any users, set isFavourited to true.
105
-
106
-
107
- return Object.assign(Object.assign({}, v), {
108
- isFavourited: !!((_b = (_a = favouritedBy) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length)
109
- });
110
- };
111
-
112
- return videos.map(setIsFavourited);
113
- }
114
- };
115
- }
116
- };
117
-
118
- function addCursor(cursor) {
119
- return cursor ? "&cursor=".concat(cursor) : '';
120
- }
121
-
122
- /***/ }),
123
-
124
- /***/ "./src/shared/flight-requests/SeriesRequests.ts":
125
- /*!******************************************************!*\
126
- !*** ./src/shared/flight-requests/SeriesRequests.ts ***!
127
- \******************************************************/
128
- /*! exports provided: SeriesRequests */
129
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
130
-
131
- "use strict";
132
- __webpack_require__.r(__webpack_exports__);
133
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SeriesRequests", function() { return SeriesRequests; });
134
- /* harmony import */ var shared_constants_WithStatements__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! shared/constants/WithStatements */ "./src/shared/constants/WithStatements.ts");
135
-
136
- var endpoints = {
137
- series: function series(id) {
138
- return "/api/domain/v2/objects/".concat(id);
139
- },
140
- seriesVideos: function seriesVideos(id, cursor) {
141
- return "/api/domain/v2/objects/".concat(id, "/videos?query=").concat(shared_constants_WithStatements__WEBPACK_IMPORTED_MODULE_0__["WithStatements"].VIDEO_COLLECTION).concat(addCursor(cursor));
142
- },
143
- breadcrumbs: function breadcrumbs(id) {
144
- return "/api/domain/v1/subjects/".concat(id, "/path");
145
- }
146
- };
147
- var SeriesRequests = {
148
- series: function series(id) {
149
- return {
150
- url: endpoints.series(id),
151
- key: "series:".concat(id)
152
- };
153
- },
154
- seriesVideos: function seriesVideos(id, cursor) {
155
- return {
156
- url: endpoints.seriesVideos(id, cursor),
157
- key: "series:".concat(id, ":videos:").concat(cursor)
158
- };
159
- },
160
- breadcrumbs: function breadcrumbs(classificationId) {
161
- if (!classificationId) return;
162
- return {
163
- url: endpoints.breadcrumbs(classificationId),
164
- key: "series:".concat(classificationId, ":breadcrumbs")
165
- };
166
- }
167
- };
168
-
169
- function addCursor(cursor) {
170
- return cursor ? "&cursor=".concat(cursor) : '';
171
- }
172
-
173
- /***/ }),
174
-
175
- /***/ "./src/shared/hooks/useVideoMixin.ts":
176
- /*!*******************************************!*\
177
- !*** ./src/shared/hooks/useVideoMixin.ts ***!
178
- \*******************************************/
179
- /*! exports provided: useVideoMixin */
180
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
181
-
182
- "use strict";
183
- __webpack_require__.r(__webpack_exports__);
184
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useVideoMixin", function() { return useVideoMixin; });
185
- /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
186
- /* 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");
187
- /* 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");
188
- /* harmony import */ var shared_flight_requests_VideoRequests__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! shared/flight-requests/VideoRequests */ "./src/shared/flight-requests/VideoRequests.ts");
189
-
190
-
191
-
192
-
193
-
194
- function fetchAttribute(videosFetched, request) {
195
- var attribute = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__["Flight"].useGetResponse(request && request.key);
196
- var fetch = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__["Flight"].useGetFetch(request);
197
- if (videosFetched && attribute.shouldFetch) fetch();
198
- }
199
-
200
- function useVideoMixin(videos) {
201
- var currentUser = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_0__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_1__["UserRequests"].currentUser);
202
- var videoIds = videos && (Array.isArray(videos) ? videos.map(function (v) {
203
- return v.id;
204
- }) : videos.data.map(function (v) {
205
- return v.id;
206
- }));
207
- 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)];
208
- requests.forEach(function (r) {
209
- return fetchAttribute(!!videos, r);
210
- });
211
- }
212
-
213
- /***/ }),
214
-
215
- /***/ "./src/shared/views/series/SeriesView.tsx":
216
- /*!************************************************!*\
217
- !*** ./src/shared/views/series/SeriesView.tsx ***!
218
- \************************************************/
219
- /*! exports provided: SeriesView */
220
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
221
-
222
- "use strict";
223
- __webpack_require__.r(__webpack_exports__);
224
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SeriesView", function() { return SeriesView; });
225
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
226
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
227
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-redux */ "react-redux");
228
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
229
- /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
230
- /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
231
- /* harmony import */ var _libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../libs/shared/src/flight-requests/UserRequests */ "../../libs/shared/src/flight-requests/UserRequests.ts");
232
- /* harmony import */ var _libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../libs/shared/src/flight-requests/ConfigRequests */ "../../libs/shared/src/flight-requests/ConfigRequests.ts");
233
- /* harmony import */ var _libs_shared_src_flight_requests_FavouriteVideoRequests__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../libs/shared/src/flight-requests/FavouriteVideoRequests */ "../../libs/shared/src/flight-requests/FavouriteVideoRequests.ts");
234
- /* harmony import */ var _libs_shared_src_components_banner_header_BannerHeader__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/banner-header/BannerHeader */ "../../libs/shared/src/components/banner-header/BannerHeader.tsx");
235
- /* harmony import */ var _libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/breadcrumbs/Breadcrumbs */ "../../libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx");
236
- /* harmony import */ var _libs_shared_src_components_video_list_VideoList__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/video-list/VideoList */ "../../libs/shared/src/components/video-list/VideoList.tsx");
237
- /* harmony import */ var _libs_shared_src_components_video_list_PartialVideoList__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/video-list/PartialVideoList */ "../../libs/shared/src/components/video-list/PartialVideoList.tsx");
238
- /* harmony import */ var _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../../libs/shared/src/utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
239
- /* harmony import */ var shared_flight_requests_SeriesRequests__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! shared/flight-requests/SeriesRequests */ "./src/shared/flight-requests/SeriesRequests.ts");
240
- /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
241
- /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
242
- /* harmony import */ var shared_hooks_useVideoMixin__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! shared/hooks/useVideoMixin */ "./src/shared/hooks/useVideoMixin.ts");
243
- /* harmony import */ var _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../../libs/analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
244
- /* harmony import */ var _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../../libs/analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
245
- /* harmony import */ var _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../../libs/common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
246
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
247
-
248
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
249
-
250
- 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); }
251
-
252
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
253
-
254
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
255
-
256
- 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; }
257
-
258
-
259
-
260
-
261
-
262
-
263
-
264
-
265
-
266
-
267
-
268
-
269
-
270
-
271
-
272
-
273
-
274
-
275
-
276
-
277
- /**
278
- * This will need to change when this is moved into its own application directory.
279
- */
280
-
281
- var namespace = 'shared.series';
282
- var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__["LanguageService"].encloseNamespace(namespace); // Update this applink when we pull dashboard in
283
-
284
- var getClassificationAppLink = function getClassificationAppLink(classification) {
285
- return {
286
- application: null,
287
- action: null,
288
- args: [classification.id]
289
- };
290
- };
291
-
292
- var getVideoAppLink = function getVideoAppLink(video) {
293
- return {
294
- application: null,
295
- action: null,
296
- args: [video.id]
297
- };
298
- };
299
-
300
- var getSeriesAppLink = function getSeriesAppLink(series) {
301
- return {
302
- application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_14__["AppChannels"].DEFAULT,
303
- action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_13__["Actions"].Default.SERIES,
304
- args: [series.id, _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_18__["TextHelper"].slugify(series.name)]
305
- };
306
- };
307
-
308
- var getHeaderActions = function getHeaderActions() {
309
- return [{
310
- label: _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__["LanguageService"].getPhrase(namespace, 'share'),
311
- appLink: {
312
- application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_14__["AppChannels"].DEFAULT,
313
- action: 'index'
314
- },
315
- svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_11__["cvSvgLibrary"].Share,
316
- className: 'btn btn-light mr-2',
317
- button: true
318
- }, {
319
- label: _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__["LanguageService"].getPhrase(namespace, 'follow'),
320
- appLink: {
321
- application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_14__["AppChannels"].DEFAULT,
322
- action: 'index'
323
- },
324
- svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_11__["cvSvgLibrary"].Edit,
325
- className: 'btn btn-light',
326
- button: true
327
- }];
328
- };
329
-
330
- function SeriesView(props) {
331
- var dispatch = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["useDispatch"])();
332
- var config = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_5__["ConfigRequests"].config);
333
- var currentUser = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_4__["UserRequests"].currentUser);
334
- var series = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(shared_flight_requests_SeriesRequests__WEBPACK_IMPORTED_MODULE_12__["SeriesRequests"].series(props.id));
335
- var seriesVideos = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(shared_flight_requests_SeriesRequests__WEBPACK_IMPORTED_MODULE_12__["SeriesRequests"].seriesVideos(props.id, props.cursor));
336
- Object(shared_hooks_useVideoMixin__WEBPACK_IMPORTED_MODULE_15__["useVideoMixin"])(seriesVideos.data);
337
- var breadcrumbs = [series.data];
338
-
339
- if (props.classificationId) {
340
- var subjectPath = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(shared_flight_requests_SeriesRequests__WEBPACK_IMPORTED_MODULE_12__["SeriesRequests"].breadcrumbs(props.classificationId));
341
-
342
- if (subjectPath.data) {
343
- breadcrumbs.unshift.apply(breadcrumbs, _toConsumableArray(subjectPath.data));
344
- }
345
- }
346
-
347
- function setFavourite(videoId, shouldFavourite, onError) {
348
- _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].fetch(dispatch, _libs_shared_src_flight_requests_FavouriteVideoRequests__WEBPACK_IMPORTED_MODULE_6__["FavouriteVideoRequests"].updateIsVideoFavourited(videoId, currentUser.data.id, shouldFavourite, function () {
349
- _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_16__["AnalyticsHelper"].logUserAction({
350
- id: videoId
351
- }, {
352
- entity: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__["EntityType"].Video,
353
- actionType: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__["UserAction"].Favourite,
354
- descriptor: shouldFavourite ? _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__["ToggleDescriptor"].On : _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__["ToggleDescriptor"].Off,
355
- location: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__["LocationContext"].VideoThumbnail,
356
- workflowPhase: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_17__["WorkflowPhase"].Complete
357
- });
358
- }, onError));
359
- }
360
-
361
- if (!seriesVideos.data || !config.data || !series.data) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
362
- var heading = getPhrase('series', {
363
- seriesName: series.data.name
364
- });
365
- 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_7__["BannerHeader"], {
366
- heading: heading,
367
- banner: null,
368
- imageCdnUrl: config.data.imageCdnUrl,
369
- backButtonAppLink: {
370
- application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_14__["AppChannels"].DASHBOARD,
371
- action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_13__["Actions"].Dashboard.HOME
372
- },
373
- backButtonText: 'Home' // this needs to be changed eventually
374
- ,
375
- actions: getHeaderActions()
376
- }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
377
- className: 'border-bottom py-3 mb-3'
378
- }, props.classificationId && breadcrumbs.length < 2 ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_8__["PartialBreadcrumbs"], null) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_8__["Breadcrumbs"], {
379
- currentItem: series.data,
380
- type: _libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_8__["BreadcrumbType"].Static,
381
- getItemAppLink: getClassificationAppLink,
382
- data: breadcrumbs,
383
- rootItem: {
384
- label: getPhrase('dashboard'),
385
- appLink: {
386
- application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_14__["AppChannels"].DASHBOARD,
387
- action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_13__["Actions"].Dashboard.HOME
388
- }
389
- }
390
- }), series.data.description && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
391
- className: 'pt-3'
392
- }, series.data.description)), seriesVideos.data ? !seriesVideos.isFetching ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_video_list_VideoList__WEBPACK_IMPORTED_MODULE_9__["VideoList"], {
393
- videos: seriesVideos.data.data,
394
- cursors: seriesVideos.data.pagination.cursors,
395
- getVideoAppLink: getVideoAppLink,
396
- getSeriesAppLink: getSeriesAppLink,
397
- setFavourite: setFavourite
398
- }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_video_list_PartialVideoList__WEBPACK_IMPORTED_MODULE_10__["PartialVideoList"], null) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, "Empty State")));
399
- }
400
-
401
- /***/ })
402
-
403
- }]);
404
- //# sourceMappingURL=42.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/PartialVideoList.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/flight-requests/FavouriteVideoRequests.ts","file://C:/ClickView/front-end/clickview/packages/projects/lite/src/shared/flight-requests/SeriesRequests.ts","file://C:/ClickView/front-end/clickview/packages/projects/lite/src/shared/hooks/useVideoMixin.ts","file://C:/ClickView/front-end/clickview/packages/projects/lite/src/shared/views/series/SeriesView.tsx"],"names":[],"mappings":"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","file":"scripts/42.chunk.js","sourcesContent":["import * as React from 'react';\r\n\r\ninterface PartialVideoListProps {\r\n\r\n}\r\n\r\nexport function PartialVideoList(props: PartialVideoListProps): JSX.Element {\r\n return (\r\n <>\r\n </>\r\n );\r\n}","import { Flight } from 'libs/common/flight';\r\nimport { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\r\nimport { Xhr } from 'libs/common/backbone/interfaces';\r\nimport { HashObject } from 'libs/common/react/interfaces/HashObject';\r\n\r\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\r\n\r\nfunction favouriteVideo(\r\n videoId: string, userId: string, success?: () => void, error?: (Xhr: Xhr) => void\r\n): Flight.Request {\r\n return {\r\n url: `/api/domain/v2/objects/${userId}`,\r\n key: `favourite:video:${userId}:${videoId}`,\r\n data: { favouriteVideos: videoId },\r\n type: HttpVerbs.PUT,\r\n invalidationKeys: [ `favourite:videos:${userId}`, `video:is:favourited:${userId}` ],\r\n success,\r\n error\r\n };\r\n}\r\n\r\nfunction unfavouriteVideo(\r\n videoId: string, userId: string, success?: () => void, error?: (Xhr: Xhr) => void\r\n): Flight.Request {\r\n return {\r\n url: `/api/domain/v2/objects/${userId}/favouriteVideos/${videoId}`,\r\n key: `favourite:video:${userId}:${videoId}`,\r\n type: HttpVerbs.DELETE,\r\n invalidationKeys: [ `favourite:videos:${userId}`, `video:is:favourited:${userId}` ],\r\n success,\r\n error\r\n };\r\n}\r\n\r\nexport const FavouriteVideoRequests = {\r\n favouriteVideos(userId: string, cursor?: string): Flight.Request {\r\n const query = `${SharedWithStatements.VIDEO_COLLECTION}${addCursor(cursor)}`;\r\n\r\n return {\r\n url: `/api/domain/v2/objects/${userId}/favouriteVideos?query=${query}`,\r\n key: `favourite:videos:${userId}${cursor ? `:${cursor}` : ''}`\r\n };\r\n },\r\n\r\n updateIsVideoFavourited(\r\n videoId: string, userId: string, shouldFavourite: boolean, success?: () => void, error?: (Xhr: Xhr) => void\r\n ): Flight.Request {\r\n const requestFn = shouldFavourite\r\n ? favouriteVideo\r\n : unfavouriteVideo;\r\n\r\n return requestFn(videoId, userId, success, error);\r\n },\r\n\r\n isFavourited(userId: string, ids: string[]): Flight.Request {\r\n const sortedIds = ids.slice().sort();\r\n\r\n const params = sortedIds.map(i => `id=${i}`);\r\n\r\n return {\r\n url: `/api/domain/v2/objects?query=favouritedBy{id:${userId}}&${params.join('&')}`,\r\n key: `video:is:favourited:${userId}:by:id:${sortedIds.join(',')}`,\r\n formatData: (videos: HashObject[]) => {\r\n if (!videos?.length)\r\n return videos;\r\n\r\n const setIsFavourited = (video: HashObject) => {\r\n const { favouritedBy, ...v } = video;\r\n\r\n // As we filtered by userId, if there are any users, set isFavourited to true.\r\n return {\r\n ...v,\r\n isFavourited: !!favouritedBy?.data?.length\r\n };\r\n };\r\n\r\n return videos.map(setIsFavourited);\r\n }\r\n };\r\n }\r\n};\r\n\r\nfunction addCursor(cursor: string): string {\r\n return cursor ? `&cursor=${cursor}` : '';\r\n}","import { Flight } from 'libs/common/flight';\r\nimport { WithStatements } from 'shared/constants/WithStatements';\r\n\r\nconst endpoints = {\r\n series: (id: string) => `/api/domain/v2/objects/${id}`,\r\n seriesVideos: (id: string, cursor: string) =>\r\n `/api/domain/v2/objects/${id}/videos?query=${WithStatements.VIDEO_COLLECTION}${addCursor(cursor)}`,\r\n\r\n breadcrumbs: (id: string) => `/api/domain/v1/subjects/${id}/path`\r\n};\r\n\r\nexport const SeriesRequests = {\r\n series(id: string): Flight.Request {\r\n return {\r\n url: endpoints.series(id),\r\n key: `series:${id}`\r\n };\r\n },\r\n seriesVideos(id: string, cursor: string): Flight.Request {\r\n return {\r\n url: endpoints.seriesVideos(id, cursor),\r\n key: `series:${id}:videos:${cursor}`\r\n };\r\n },\r\n breadcrumbs(classificationId: string): Flight.Request {\r\n if (!classificationId)\r\n return;\r\n\r\n return {\r\n url: endpoints.breadcrumbs(classificationId),\r\n key: `series:${classificationId}:breadcrumbs`\r\n };\r\n }\r\n};\r\n\r\nfunction addCursor(cursor: string): string {\r\n return cursor ? `&cursor=${cursor}` : '';\r\n}","import { Flight } from 'libs/common/flight';\r\nimport { VideoCollection, User, Video } from 'libs/shared/interfaces';\r\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\r\nimport { FavouriteVideoRequests } from 'libs/shared/flight-requests/FavouriteVideoRequests';\r\n\r\nimport { VideoRequests } from 'shared/flight-requests/VideoRequests';\r\n\r\nfunction fetchAttribute(videosFetched: boolean, request: Flight.Request): void {\r\n const attribute = Flight.useGetResponse<VideoCollection>(request && request.key);\r\n const fetch = Flight.useGetFetch(request);\r\n\r\n if (videosFetched && attribute.shouldFetch)\r\n fetch();\r\n}\r\n\r\nexport function useVideoMixin(videos: VideoCollection | Video[]): void {\r\n const currentUser = Flight.useBasicFetch<User>(UserRequests.currentUser);\r\n\r\n const videoIds = videos && (Array.isArray(videos)\r\n ? videos.map(v => v.id)\r\n : videos.data.map(v => v.id));\r\n\r\n const requests: Flight.Request[] = [\r\n videoIds && VideoRequests.videoRatings(videoIds),\r\n videoIds && currentUser.data && FavouriteVideoRequests.isFavourited(currentUser.data.id, videoIds)\r\n ];\r\n\r\n requests.forEach(r => fetchAttribute(!!videos, r));\r\n}","import * as React from 'react';\r\nimport { useDispatch } from 'react-redux';\r\n\r\nimport { Flight } from 'libs/common/flight';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { Core } from 'libs/common/core';\r\nimport { Series, Config, Video, Classification, VideoCollection, BaseObject, User } from 'libs/shared/interfaces';\r\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\r\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\r\nimport { FavouriteVideoRequests } from 'libs/shared/flight-requests/FavouriteVideoRequests';\r\nimport { BannerHeader } from 'libs/shared/components/banner-header/BannerHeader';\r\nimport { Breadcrumbs, BreadcrumbType, PartialBreadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\r\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\r\nimport { PartialVideoList } from 'libs/shared/components/video-list/PartialVideoList';\r\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { SeriesRequests } from 'shared/flight-requests/SeriesRequests';\r\nimport { Actions } from 'shared/constants/LiteActions';\r\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\r\nimport { useVideoMixin } from 'shared/hooks/useVideoMixin';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\nimport { EntityType, UserAction, LocationContext, WorkflowPhase, ToggleDescriptor } from 'libs/analytics/interfaces';\r\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\r\n\r\n/**\r\n * This will need to change when this is moved into its own application directory.\r\n */\r\nconst namespace = 'shared.series';\r\nconst getPhrase = LanguageService.encloseNamespace(namespace);\r\n\r\n// Update this applink when we pull dashboard in\r\nconst getClassificationAppLink = (classification: Classification): Core.AppLink => ({\r\n application: null,\r\n action: null,\r\n args: [classification.id]\r\n});\r\n\r\nconst getVideoAppLink = (video: Video): Core.AppLink => ({\r\n application: null,\r\n action: null,\r\n args: [video.id]\r\n});\r\n\r\nconst getSeriesAppLink = (series: Series): Core.AppLink => ({\r\n application: AppChannels.DEFAULT,\r\n action: Actions.Default.SERIES,\r\n args: [ series.id, TextHelper.slugify(series.name) ]\r\n});\r\n\r\nconst getHeaderActions = (): ActionOptions[] => ([\r\n {\r\n label: LanguageService.getPhrase(namespace, 'share'),\r\n appLink: { application: AppChannels.DEFAULT, action: 'index' },\r\n svgName: cvSvgLibrary.Share,\r\n className: 'btn btn-light mr-2',\r\n button: true\r\n },\r\n {\r\n label: LanguageService.getPhrase(namespace, 'follow'),\r\n appLink: { application: AppChannels.DEFAULT, action: 'index' },\r\n svgName: cvSvgLibrary.Edit, // TODO: Change to \"Follow\" icon\r\n className: 'btn btn-light',\r\n button: true\r\n }\r\n]);\r\n\r\ninterface SeriesViewProps {\r\n id: string;\r\n classificationId?: string;\r\n cursor?: string;\r\n}\r\n\r\nexport function SeriesView(props: SeriesViewProps): JSX.Element {\r\n const dispatch = useDispatch();\r\n\r\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config);\r\n const currentUser = Flight.useBasicFetch<User>(UserRequests.currentUser);\r\n const series = Flight.useBasicFetch<Series>(SeriesRequests.series(props.id));\r\n const seriesVideos = Flight.useBasicFetch<VideoCollection>(SeriesRequests.seriesVideos(props.id, props.cursor));\r\n\r\n useVideoMixin(seriesVideos.data);\r\n\r\n let breadcrumbs: BaseObject[] = [series.data];\r\n if (props.classificationId) {\r\n const subjectPath = Flight.useBasicFetch<Classification[]>(SeriesRequests.breadcrumbs(props.classificationId));\r\n if (subjectPath.data) {\r\n breadcrumbs.unshift(...subjectPath.data);\r\n }\r\n }\r\n\r\n function setFavourite(videoId: string, shouldFavourite: boolean, onError?: () => void): void {\r\n Flight.fetch(\r\n dispatch,\r\n FavouriteVideoRequests.updateIsVideoFavourited(videoId, currentUser.data.id, shouldFavourite, () => {\r\n AnalyticsHelper.logUserAction({ id: videoId }, {\r\n entity: EntityType.Video,\r\n actionType: UserAction.Favourite,\r\n descriptor: shouldFavourite ? ToggleDescriptor.On : ToggleDescriptor.Off,\r\n location: LocationContext.VideoThumbnail,\r\n workflowPhase: WorkflowPhase.Complete\r\n });\r\n }, onError)\r\n );\r\n }\r\n\r\n if (!seriesVideos.data || !config.data || !series.data)\r\n return <></>;\r\n\r\n const heading = getPhrase('series', { seriesName: series.data.name });\r\n\r\n return (\r\n <>\r\n <BannerHeader\r\n heading={heading}\r\n banner={null}\r\n imageCdnUrl={config.data.imageCdnUrl}\r\n backButtonAppLink={{\r\n application: AppChannels.DASHBOARD,\r\n action: Actions.Dashboard.HOME\r\n }}\r\n backButtonText='Home' // this needs to be changed eventually\r\n actions={getHeaderActions()}\r\n />\r\n <div>\r\n <div className='border-bottom py-3 mb-3'>\r\n {(props.classificationId && breadcrumbs.length < 2)\r\n ? <PartialBreadcrumbs />\r\n : <Breadcrumbs\r\n currentItem={series.data}\r\n type={BreadcrumbType.Static}\r\n getItemAppLink={getClassificationAppLink}\r\n data={breadcrumbs}\r\n rootItem={{\r\n label: getPhrase('dashboard'),\r\n appLink: {\r\n application: AppChannels.DASHBOARD,\r\n action: Actions.Dashboard.HOME\r\n }\r\n }}\r\n />\r\n }\r\n\r\n {series.data.description && (\r\n <p className='pt-3'>{series.data.description}</p>\r\n )}\r\n </div>\r\n\r\n {seriesVideos.data\r\n ? !seriesVideos.isFetching\r\n ? <VideoList\r\n videos={seriesVideos.data.data}\r\n cursors={seriesVideos.data.pagination.cursors}\r\n getVideoAppLink={getVideoAppLink}\r\n getSeriesAppLink={getSeriesAppLink}\r\n setFavourite={setFavourite}\r\n />\r\n : <PartialVideoList />\r\n : <>Empty State</>\r\n }\r\n </div>\r\n </>\r\n );\r\n}"],"sourceRoot":""}