@clickview/lite 0.0.24-rc.4 → 0.0.24

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 (194) hide show
  1. package/dist/css/11.chunk.css.map +1 -1
  2. package/dist/css/12.chunk.css.map +1 -1
  3. package/dist/css/13.chunk.css.map +1 -1
  4. package/dist/css/14.chunk.css.map +1 -1
  5. package/dist/css/15.chunk.css.map +1 -1
  6. package/dist/css/16.chunk.css.map +1 -1
  7. package/dist/css/17.chunk.css.map +1 -1
  8. package/dist/css/18.chunk.css.map +1 -1
  9. package/dist/css/20.chunk.css.map +1 -1
  10. package/dist/css/29.chunk.css.map +1 -1
  11. package/dist/css/3.chunk.css.map +1 -1
  12. package/dist/css/30.chunk.css.map +1 -1
  13. package/dist/css/31.chunk.css.map +1 -1
  14. package/dist/css/33.chunk.css.map +1 -1
  15. package/dist/css/38.chunk.css +11 -34
  16. package/dist/css/38.chunk.css.map +1 -1
  17. package/dist/css/4.chunk.css +3 -3
  18. package/dist/css/44.chunk.css +11 -3
  19. package/dist/css/44.chunk.css.map +1 -1
  20. package/dist/css/45.chunk.css +38 -0
  21. package/dist/css/45.chunk.css.map +1 -0
  22. package/dist/css/5.chunk.css.map +1 -1
  23. package/dist/css/52.chunk.css +52 -0
  24. package/dist/css/52.chunk.css.map +1 -0
  25. package/dist/css/59.chunk.css +14 -0
  26. package/dist/css/59.chunk.css.map +1 -0
  27. package/dist/css/6.chunk.css.map +1 -1
  28. package/dist/css/60.chunk.css +43 -0
  29. package/dist/css/60.chunk.css.map +1 -0
  30. package/dist/en.json +1 -1
  31. package/dist/libs/shared/src/components/curriculum-links/CurriculumLinks.d.ts +9 -0
  32. package/dist/libs/shared/src/components/widgets/items/resource-widget-item/ResourceWidgetItem.d.ts +12 -0
  33. package/dist/libs/shared/src/enums/CurriculumType.d.ts +6 -0
  34. package/dist/libs/shared/src/flight-requests/ClassificationRequests.d.ts +1 -0
  35. package/dist/libs/shared/src/flight-requests/ResourceRequests.d.ts +11 -0
  36. package/dist/libs/shared/src/interfaces/collections/SubtitleCollection.d.ts +3 -0
  37. package/dist/libs/shared/src/interfaces/models/Curriculum.d.ts +14 -0
  38. package/dist/libs/shared/src/interfaces/models/FileUpload.d.ts +20 -0
  39. package/dist/libs/shared/src/interfaces/models/Language.d.ts +4 -0
  40. package/dist/libs/shared/src/interfaces/models/Pdf.d.ts +4 -0
  41. package/dist/libs/shared/src/interfaces/models/Subtitle.d.ts +7 -0
  42. package/dist/libs/shared/src/interfaces/models/index.d.ts +1 -0
  43. package/dist/libs/shared/src/interfaces/requests/UpdateObjectChannel.d.ts +3 -0
  44. package/dist/libs/shared/src/interfaces/requests/UpdateObjectRating.d.ts +3 -0
  45. package/dist/libs/shared/src/interfaces/requests/UpdateResourceRequest.d.ts +3 -0
  46. package/dist/projects/lite/src/app.d.ts +1 -0
  47. package/dist/projects/lite/src/shared/components/play-page/PlayPage.d.ts +2 -1
  48. package/dist/projects/lite/src/shared/components/synopsis/Synopsis.d.ts +3 -1
  49. package/dist/projects/lite/src/shared/components/video-details/VideoDetails.d.ts +2 -0
  50. package/dist/projects/lite/src/shared/constants/MinimumGlanceHeight.d.ts +1 -0
  51. package/dist/projects/lite/src/shared/views/preview-pdf/PreviewPdfView.d.ts +7 -0
  52. package/dist/scripts/0-b02efe11fb.chunk.js +1 -0
  53. package/dist/scripts/1-4f19a5caea.chunk.js +17 -0
  54. package/dist/scripts/1.chunk.js.map +1 -1
  55. package/dist/scripts/10.chunk.js +484 -1203
  56. package/dist/scripts/10.chunk.js.map +1 -1
  57. package/dist/scripts/11-32e30d10ce.chunk.js +1 -0
  58. package/dist/scripts/11.chunk.js +289 -1388
  59. package/dist/scripts/11.chunk.js.map +1 -1
  60. package/dist/scripts/12-72a5373486.chunk.js +1 -0
  61. package/dist/scripts/12.chunk.js +1371 -283
  62. package/dist/scripts/12.chunk.js.map +1 -1
  63. package/dist/scripts/13-1cd85ad3ee.chunk.js +1 -0
  64. package/dist/scripts/13.chunk.js +361 -394
  65. package/dist/scripts/13.chunk.js.map +1 -1
  66. package/dist/scripts/14-3d60b8ee85.chunk.js +1 -0
  67. package/dist/scripts/14.chunk.js +793 -332
  68. package/dist/scripts/14.chunk.js.map +1 -1
  69. package/dist/scripts/15-90226fb996.chunk.js +1 -0
  70. package/dist/scripts/15.chunk.js +295 -214
  71. package/dist/scripts/15.chunk.js.map +1 -1
  72. package/dist/scripts/16-913b2535ea.chunk.js +1 -0
  73. package/dist/scripts/16.chunk.js +530 -434
  74. package/dist/scripts/16.chunk.js.map +1 -1
  75. package/dist/scripts/17-d6c19ccb60.chunk.js +1 -0
  76. package/dist/scripts/17.chunk.js +296 -170
  77. package/dist/scripts/17.chunk.js.map +1 -1
  78. package/dist/scripts/18-33efcac0c6.chunk.js +1 -0
  79. package/dist/scripts/18.chunk.js +265 -199
  80. package/dist/scripts/18.chunk.js.map +1 -1
  81. package/dist/scripts/19-2380200cfb.chunk.js +1 -0
  82. package/dist/scripts/19.chunk.js +7 -3
  83. package/dist/scripts/19.chunk.js.map +1 -1
  84. package/dist/scripts/2-53e37c2047.chunk.js +1 -0
  85. package/dist/scripts/2.chunk.js +18673 -622
  86. package/dist/scripts/2.chunk.js.map +1 -1
  87. package/dist/scripts/20-ca85f0514e.chunk.js +1 -0
  88. package/dist/scripts/20.chunk.js +1824 -221
  89. package/dist/scripts/20.chunk.js.map +1 -1
  90. package/dist/scripts/21-ef4a226771.chunk.js +1 -0
  91. package/dist/scripts/22-99c04e164f.chunk.js +1 -0
  92. package/dist/scripts/23-028eb81a43.chunk.js +1 -0
  93. package/dist/scripts/23.chunk.js +1 -1
  94. package/dist/scripts/23.chunk.js.map +1 -1
  95. package/dist/scripts/24-68f8df3eca.chunk.js +1 -0
  96. package/dist/scripts/24.chunk.js.map +1 -1
  97. package/dist/scripts/25-7ad07f87d4.chunk.js +1 -0
  98. package/dist/scripts/25.chunk.js.map +1 -1
  99. package/dist/scripts/26-f3dcacfe4f.chunk.js +1 -0
  100. package/dist/scripts/26.chunk.js +1 -1
  101. package/dist/scripts/26.chunk.js.map +1 -1
  102. package/dist/scripts/27-e844268f38.chunk.js +1 -0
  103. package/dist/scripts/28-853bc5de1f.chunk.js +1 -0
  104. package/dist/scripts/29-b164ecafe9.chunk.js +1 -0
  105. package/dist/scripts/29.chunk.js +435 -500
  106. package/dist/scripts/29.chunk.js.map +1 -1
  107. package/dist/scripts/3-a1bd8c9016.chunk.js +7 -0
  108. package/dist/scripts/3.chunk.js +625 -18676
  109. package/dist/scripts/3.chunk.js.map +1 -1
  110. package/dist/scripts/30-2cfcf52ea1.chunk.js +1 -0
  111. package/dist/scripts/30.chunk.js +634 -429
  112. package/dist/scripts/30.chunk.js.map +1 -1
  113. package/dist/scripts/31-e6a8291d2f.chunk.js +1 -0
  114. package/dist/scripts/31.chunk.js +371 -670
  115. package/dist/scripts/31.chunk.js.map +1 -1
  116. package/dist/scripts/32-7030dc98ed.chunk.js +1 -0
  117. package/dist/scripts/32.chunk.js +27 -54
  118. package/dist/scripts/32.chunk.js.map +1 -1
  119. package/dist/scripts/33-47b0ac90bd.chunk.js +1 -0
  120. package/dist/scripts/33.chunk.js +700 -312
  121. package/dist/scripts/33.chunk.js.map +1 -1
  122. package/dist/scripts/34-2de007b628.chunk.js +1 -0
  123. package/dist/scripts/34.chunk.js +3 -3
  124. package/dist/scripts/34.chunk.js.map +1 -1
  125. package/dist/scripts/35-d2fb66920b.chunk.js +1 -0
  126. package/dist/scripts/36-bc85df33de.chunk.js +1 -0
  127. package/dist/scripts/36.chunk.js.map +1 -1
  128. package/dist/scripts/37-e26652840b.chunk.js +1 -0
  129. package/dist/scripts/37.chunk.js +288 -464
  130. package/dist/scripts/37.chunk.js.map +1 -1
  131. package/dist/scripts/38-0b6a6b9619.chunk.js +1 -0
  132. package/dist/scripts/39-6549f483c6.chunk.js +1 -0
  133. package/dist/scripts/39.chunk.js +1 -1
  134. package/dist/scripts/39.chunk.js.map +1 -1
  135. package/dist/scripts/4-9e83a22d7a.chunk.js +1 -0
  136. package/dist/scripts/4.chunk.js +259 -1021
  137. package/dist/scripts/4.chunk.js.map +1 -1
  138. package/dist/scripts/40-8e6e9d285f.chunk.js +1 -0
  139. package/dist/scripts/41-2b44a2e66f.chunk.js +1 -0
  140. package/dist/scripts/42-9e75f420d8.chunk.js +1 -0
  141. package/dist/scripts/42.chunk.js.map +1 -1
  142. package/dist/scripts/43-1141245420.chunk.js +1 -0
  143. package/dist/scripts/44-9bc4201e0f.chunk.js +1 -0
  144. package/dist/scripts/45-5ded8ca3db.chunk.js +1 -0
  145. package/dist/scripts/46-2afd7ee1fb.chunk.js +1 -0
  146. package/dist/scripts/47-ab30686138.chunk.js +1 -0
  147. package/dist/scripts/48-d9cd99d55e.chunk.js +1 -0
  148. package/dist/scripts/49-f43a08f90b.chunk.js +1 -0
  149. package/dist/scripts/5-974660e17b.chunk.js +1 -0
  150. package/dist/scripts/5.chunk.js +1017 -259
  151. package/dist/scripts/5.chunk.js.map +1 -1
  152. package/dist/scripts/50-af699c531e.chunk.js +1 -0
  153. package/dist/scripts/51-aa7b835007.chunk.js +1 -0
  154. package/dist/scripts/52-805f7fe04d.chunk.js +1 -0
  155. package/dist/scripts/53-d75ca53045.chunk.js +1 -0
  156. package/dist/scripts/54-2e75bad46f.chunk.js +1 -0
  157. package/dist/scripts/55-ed637c4847.chunk.js +1 -0
  158. package/dist/scripts/55.chunk.js.map +1 -1
  159. package/dist/scripts/56-2ed3b5764b.chunk.js +1 -0
  160. package/dist/scripts/57-e51101c8a1.chunk.js +1 -0
  161. package/dist/scripts/58-9a32a6fb2d.chunk.js +1 -0
  162. package/dist/scripts/59-da8a8c97a9.chunk.js +1 -0
  163. package/dist/scripts/6-6ac39034e0.chunk.js +1 -0
  164. package/dist/scripts/6.chunk.js +291 -1250
  165. package/dist/scripts/6.chunk.js.map +1 -1
  166. package/dist/scripts/60-5713de53e2.chunk.js +1 -0
  167. package/dist/scripts/61-7d2ad17963.chunk.js +1 -0
  168. package/dist/scripts/62-a0a69501ac.chunk.js +1 -0
  169. package/dist/scripts/63-c921b87f3f.chunk.js +1 -0
  170. package/dist/scripts/64-87c1cf6985.chunk.js +1 -0
  171. package/dist/scripts/65-2322082836.chunk.js +1 -0
  172. package/dist/scripts/66-6d5356f6ce.chunk.js +1 -0
  173. package/dist/scripts/67-2e0d661c52.chunk.js +1 -0
  174. package/dist/scripts/7-5ac5be64dd.chunk.js +1 -0
  175. package/dist/scripts/7.chunk.js +1 -1
  176. package/dist/scripts/76.chunk.js +3 -3
  177. package/dist/scripts/76.chunk.js.map +1 -1
  178. package/dist/scripts/79.chunk.js +931 -347
  179. package/dist/scripts/79.chunk.js.map +1 -1
  180. package/dist/scripts/8-95563e3d36.chunk.js +1 -0
  181. package/dist/scripts/8.chunk.js +14 -920
  182. package/dist/scripts/8.chunk.js.map +1 -1
  183. package/dist/scripts/80.chunk.js +22 -313
  184. package/dist/scripts/80.chunk.js.map +1 -1
  185. package/dist/scripts/9.chunk.js +320 -17
  186. package/dist/scripts/9.chunk.js.map +1 -1
  187. package/dist/scripts/bundle-9ed1e126dd.min.js +15 -0
  188. package/dist/scripts/bundle.js +147 -121
  189. package/dist/scripts/bundle.js.map +1 -1
  190. package/dist/scripts/bundles.json +2 -2
  191. package/dist/scripts/pdf.worker.entry.worker.js +46239 -0
  192. package/dist/scripts/pdf.worker.entry.worker.js.map +1 -0
  193. package/dist/scripts/polyfills-2723daf478.min.js +1 -0
  194. package/package.json +2 -2
@@ -1,203 +1,1521 @@
1
1
  (window["webpackJsonp_clickview_lite"] = window["webpackJsonp_clickview_lite"] || []).push([[20],{
2
2
 
3
- /***/ "../../libs/shared/src/components/back-button/BackButton.tsx":
4
- /*!*******************************************************************************************************!*\
5
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/back-button/BackButton.tsx ***!
6
- \*******************************************************************************************************/
7
- /*! exports provided: BackButton */
3
+ /***/ "../../libs/shared/src/apps/playlists/components/playlist-list/PlaylistList.tsx":
4
+ /*!**************************************************************************************************************************!*\
5
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/playlists/components/playlist-list/PlaylistList.tsx ***!
6
+ \**************************************************************************************************************************/
7
+ /*! exports provided: PlaylistList */
8
8
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9
9
 
10
10
  "use strict";
11
11
  __webpack_require__.r(__webpack_exports__);
12
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BackButton", function() { return BackButton; });
12
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlaylistList", function() { return PlaylistList; });
13
13
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
14
14
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
15
- /* harmony import */ var _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
16
- /* harmony import */ var _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
17
- /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
18
- /* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
15
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
16
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
17
+ /* harmony import */ var _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
18
+ /* harmony import */ var _PlaylistItem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./PlaylistItem */ "../../libs/shared/src/apps/playlists/components/playlist-list/PlaylistItem.tsx");
19
19
 
20
20
 
21
21
 
22
22
 
23
+ var analyticsOptions = {
24
+ actionType: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_2__["UserAction"].Click,
25
+ entity: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_2__["EntityType"].Playlist,
26
+ location: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_2__["LocationContext"].PlaylistListItem,
27
+ descriptor: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_2__["ClickDescriptor"].Cover
28
+ };
29
+ function PlaylistList(props) {
30
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Row"], null, props.playlists.map(function (p) {
31
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Col"], {
32
+ key: p.id,
33
+ xs: 6,
34
+ sm: 4,
35
+ lg: 3,
36
+ className: "mb-3 ".concat(props.itemContainerClassName ? props.itemContainerClassName : '')
37
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_PlaylistItem__WEBPACK_IMPORTED_MODULE_3__["PlaylistItem"], {
38
+ data: p,
39
+ appLink: props.getPlaylistAppLink(p),
40
+ imageCdnUrl: props.imageCdnUrl,
41
+ currentUser: props.currentUser,
42
+ presentationAudiences: props.presentationAudiences,
43
+ bgColourClassNames: props.bgColourClassNames,
44
+ showCount: props.showCount,
45
+ showOwner: props.showOwner,
46
+ showFallbackImage: props.showFallbackImage,
47
+ showLastUpdated: props.showLastUpdated,
48
+ analyticsData: props.analyticsData,
49
+ analyticsOptions: Object.assign(Object.assign({}, props.analyticsOptions), analyticsOptions)
50
+ }));
51
+ }));
52
+ }
53
+
54
+ /***/ }),
55
+
56
+ /***/ "../../libs/shared/src/apps/playlists/components/playlist-list/index.ts":
57
+ /*!******************************************************************************************************************!*\
58
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/playlists/components/playlist-list/index.ts ***!
59
+ \******************************************************************************************************************/
60
+ /*! exports provided: PartialPlaylistList, PlaylistList, PlaylistItem */
61
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
62
+
63
+ "use strict";
64
+ __webpack_require__.r(__webpack_exports__);
65
+ /* harmony import */ var _PartialPlaylistList__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PartialPlaylistList */ "../../libs/shared/src/apps/playlists/components/playlist-list/PartialPlaylistList.tsx");
66
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PartialPlaylistList", function() { return _PartialPlaylistList__WEBPACK_IMPORTED_MODULE_0__["PartialPlaylistList"]; });
67
+
68
+ /* harmony import */ var _PlaylistList__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PlaylistList */ "../../libs/shared/src/apps/playlists/components/playlist-list/PlaylistList.tsx");
69
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PlaylistList", function() { return _PlaylistList__WEBPACK_IMPORTED_MODULE_1__["PlaylistList"]; });
70
+
71
+ /* harmony import */ var _PlaylistItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PlaylistItem */ "../../libs/shared/src/apps/playlists/components/playlist-list/PlaylistItem.tsx");
72
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PlaylistItem", function() { return _PlaylistItem__WEBPACK_IMPORTED_MODULE_2__["PlaylistItem"]; });
73
+
74
+
75
+
76
+
77
+
78
+ /***/ }),
79
+
80
+ /***/ "../../libs/shared/src/apps/subjects/components/audience-filter/AudienceFilter.tsx":
81
+ /*!*****************************************************************************************************************************!*\
82
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-filter/AudienceFilter.tsx ***!
83
+ \*****************************************************************************************************************************/
84
+ /*! exports provided: AudienceFilter, PartialAudienceFilter */
85
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
86
+
87
+ "use strict";
88
+ __webpack_require__.r(__webpack_exports__);
89
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AudienceFilter", function() { return AudienceFilter; });
90
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PartialAudienceFilter", function() { return PartialAudienceFilter; });
91
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
92
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
93
+ /* harmony import */ var _utils_PartialLoadingHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utils/PartialLoadingHelper */ "../../libs/shared/src/utils/PartialLoadingHelper.ts");
94
+ /* harmony import */ var _audience_item_AudienceItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../audience-item/AudienceItem */ "../../libs/shared/src/apps/subjects/components/audience-item/AudienceItem.tsx");
95
+ /* harmony import */ var _reducers_AudienceReducer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../reducers/AudienceReducer */ "../../libs/shared/src/apps/subjects/reducers/AudienceReducer.ts");
96
+
97
+
98
+
99
+
100
+ function AudienceFilter(props) {
101
+ var audiences = props.audiences,
102
+ activeAudiences = props.activeAudiences,
103
+ _setAudience = props.setAudience,
104
+ disabled = props.disabled;
105
+ if (!audiences || !audiences.length) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
106
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
107
+ className: 'pt-3'
108
+ }, audiences.map(function (a) {
109
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_audience_item_AudienceItem__WEBPACK_IMPORTED_MODULE_2__["AudienceItem"], {
110
+ key: a.masterId,
111
+ audience: a,
112
+ highlight: !!activeAudiences && !!activeAudiences[a.masterId],
113
+ setAudience: function setAudience(audience, isSelected) {
114
+ return _setAudience({
115
+ type: _reducers_AudienceReducer__WEBPACK_IMPORTED_MODULE_3__["AudienceActions"].Toggle,
116
+ payload: {
117
+ audience: audience,
118
+ isSelected: isSelected
119
+ }
120
+ });
121
+ },
122
+ isDisabled: disabled
123
+ });
124
+ }));
125
+ }
126
+ var PARTIAL_AUDIENCES = _utils_PartialLoadingHelper__WEBPACK_IMPORTED_MODULE_1__["PartialLoadingHelper"].getPartialLoadingItems({
127
+ numItems: 6
128
+ });
129
+ var PartialAudienceFilter = function PartialAudienceFilter() {
130
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
131
+ className: 'pt-3'
132
+ }, PARTIAL_AUDIENCES.map(function (_ref, idx) {
133
+ var width = _ref.width;
134
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
135
+ key: idx,
136
+ className: 'd-inline-block badge-pill partial-loading-background mr-1',
137
+ dangerouslySetInnerHTML: {
138
+ __html: '&nbsp'
139
+ },
140
+ style: {
141
+ width: width
142
+ }
143
+ });
144
+ }));
145
+ };
146
+
147
+ /***/ }),
148
+
149
+ /***/ "../../libs/shared/src/apps/subjects/components/audience-item/AudienceItem.tsx":
150
+ /*!*************************************************************************************************************************!*\
151
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-item/AudienceItem.tsx ***!
152
+ \*************************************************************************************************************************/
153
+ /*! exports provided: AudienceItem */
154
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
155
+
156
+ "use strict";
157
+ __webpack_require__.r(__webpack_exports__);
158
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AudienceItem", function() { return AudienceItem; });
159
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
160
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
161
+ /* harmony import */ var _audience_item_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./audience-item.scss */ "../../libs/shared/src/apps/subjects/components/audience-item/audience-item.scss");
162
+ /* harmony import */ var _audience_item_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_audience_item_scss__WEBPACK_IMPORTED_MODULE_1__);
163
+ /* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
164
+
165
+
166
+
167
+
168
+ function lowerCaseToTitleCase(str) {
169
+ return str.split(' ').map(function (s) {
170
+ return s.charAt(0).toUpperCase() + s.substring(1);
171
+ }).join(' ');
172
+ }
173
+
174
+ function getColourClass(highlight, isDisabled) {
175
+ if (highlight) return isDisabled ? "".concat(_audience_item_scss__WEBPACK_IMPORTED_MODULE_1___default.a.disabledHighlighted, " text-light") : 'badge-info text-light';
176
+ if (isDisabled) return "".concat(_audience_item_scss__WEBPACK_IMPORTED_MODULE_1___default.a.disabled, " text-muted");
177
+ return 'badge-light';
178
+ }
179
+
180
+ AudienceItem.defaultProps = {
181
+ extraClasses: ''
182
+ };
183
+ function AudienceItem(props) {
184
+ var audience = props.audience,
185
+ highlight = props.highlight,
186
+ setAudience = props.setAudience,
187
+ isDisabled = props.isDisabled,
188
+ extraClasses = props.extraClasses;
189
+ var colourClass = getColourClass(highlight, isDisabled);
190
+ var cursorClass = isDisabled ? 'cursor-default' : 'cursor-pointer';
191
+ var className = "badge-pill d-inline-block mr-1 ".concat(cursorClass, " ").concat(colourClass, " ").concat(extraClasses);
192
+
193
+ var onClick = function onClick() {
194
+ if (isDisabled || !_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].isFunction(setAudience)) return;
195
+ setAudience(audience, !highlight);
196
+ };
197
+
198
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
199
+ className: className,
200
+ onClick: onClick,
201
+ role: 'checkbox',
202
+ "aria-checked": highlight
203
+ }, lowerCaseToTitleCase(audience.name));
204
+ }
205
+
206
+ /***/ }),
207
+
208
+ /***/ "../../libs/shared/src/apps/subjects/components/audience-item/audience-item.scss":
209
+ /*!***************************************************************************************************************************!*\
210
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/audience-item/audience-item.scss ***!
211
+ \***************************************************************************************************************************/
212
+ /*! no static exports found */
213
+ /***/ (function(module, exports, __webpack_require__) {
214
+
215
+ // extracted by mini-css-extract-plugin
216
+ module.exports = {"disabled":"cv--disabled--1KxF9","disabledHighlighted":"cv--disabledHighlighted--pbuec"};
217
+
218
+ /***/ }),
219
+
220
+ /***/ "../../libs/shared/src/apps/subjects/components/classification-list/ClassificationList.tsx":
221
+ /*!*************************************************************************************************************************************!*\
222
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/classification-list/ClassificationList.tsx ***!
223
+ \*************************************************************************************************************************************/
224
+ /*! exports provided: ClassificationList */
225
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
226
+
227
+ "use strict";
228
+ __webpack_require__.r(__webpack_exports__);
229
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ClassificationList", function() { return ClassificationList; });
230
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
231
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
232
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
233
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
234
+ /* harmony import */ var _components_widgets_items_subject_widget_item_SubjectWidgetItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../components/widgets/items/subject-widget-item/SubjectWidgetItem */ "../../libs/shared/src/components/widgets/items/subject-widget-item/SubjectWidgetItem.tsx");
235
+ /* harmony import */ var _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
236
+
237
+
238
+
239
+
240
+
241
+ function ClassificationItem(props) {
242
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
243
+ className: "position-relative px-2 mb-2"
244
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_widgets_items_subject_widget_item_SubjectWidgetItem__WEBPACK_IMPORTED_MODULE_2__["SubjectWidgetItem"], {
245
+ data: props.classification,
246
+ appLink: props.appLink,
247
+ isLarge: true,
248
+ analyticsData: props.analyticsData,
249
+ analyticsOptions: Object.assign(Object.assign({}, props.analyticsOptions), {
250
+ location: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_3__["LocationContext"].ClassificationListItem
251
+ })
252
+ }));
253
+ }
254
+
255
+ function ClassificationList(props) {
256
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Row"], null, props.classifications.map(function (c) {
257
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Col"], {
258
+ key: c.id,
259
+ xs: 12,
260
+ sm: 6,
261
+ lg: 4
262
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](ClassificationItem, {
263
+ key: c.id,
264
+ classification: c,
265
+ appLink: props.getItemAppLink(c),
266
+ analyticsData: props.analyticsData,
267
+ analyticsOptions: props.analyticsOptions
268
+ }));
269
+ }));
270
+ }
271
+
272
+ /***/ }),
273
+
274
+ /***/ "../../libs/shared/src/apps/subjects/components/coming-soon/ComingSoon.tsx":
275
+ /*!*********************************************************************************************************************!*\
276
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/coming-soon/ComingSoon.tsx ***!
277
+ \*********************************************************************************************************************/
278
+ /*! exports provided: ComingSoon */
279
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
280
+
281
+ "use strict";
282
+ __webpack_require__.r(__webpack_exports__);
283
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ComingSoon", function() { return ComingSoon; });
284
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
285
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
286
+ /* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
287
+ /* harmony import */ var _utils_ImageHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../utils/ImageHelper */ "../../libs/shared/src/utils/ImageHelper.ts");
288
+ /* harmony import */ var _enums_Images__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../enums/Images */ "../../libs/shared/src/enums/Images.ts");
289
+ /* harmony import */ var _components_spinner_button_SpinnerButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../components/spinner-button/SpinnerButton */ "../../libs/shared/src/components/spinner-button/SpinnerButton.tsx");
290
+ /* harmony import */ var _components_text_Text__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
291
+ /* harmony import */ var _components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../components/svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
292
+ /* harmony import */ var _coming_soon_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./coming-soon.scss */ "../../libs/shared/src/apps/subjects/components/coming-soon/coming-soon.scss");
293
+ /* harmony import */ var _coming_soon_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_coming_soon_scss__WEBPACK_IMPORTED_MODULE_7__);
294
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
295
+
296
+ 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."); }
297
+
298
+ 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); }
299
+
300
+ 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; }
301
+
302
+ 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; }
303
+
304
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
305
+
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+ var namespace = 'subjects.comingSoon';
315
+ function ComingSoon(props) {
316
+ var _a, _b;
317
+
318
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](false),
319
+ _React$useState2 = _slicedToArray(_React$useState, 2),
320
+ isFollowing = _React$useState2[0],
321
+ setIsFollowing = _React$useState2[1];
322
+
323
+ var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_0__["useState"](false),
324
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
325
+ showSpinner = _React$useState4[0],
326
+ setShowSpinner = _React$useState4[1];
327
+
328
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
329
+ var _a, _b;
330
+
331
+ setIsFollowing(!!((_b = (_a = props.data.followers) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length));
332
+ setShowSpinner(false);
333
+ }, [(_b = (_a = props.data.followers) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length]);
334
+
335
+ function onClick() {
336
+ setShowSpinner(true);
337
+ props.onToggleFollow();
338
+ }
339
+
340
+ var footerImageUrl = _utils_ImageHelper__WEBPACK_IMPORTED_MODULE_2__["ImageHelper"].createBannerUrl(props.data.banner, {
341
+ fallbackBaseUrl: props.imageCdnUrl,
342
+ fallbackCategoryName: props.data.name,
343
+ type: _enums_Images__WEBPACK_IMPORTED_MODULE_3__["ImageType"].Banners
344
+ }, {
345
+ size: _enums_Images__WEBPACK_IMPORTED_MODULE_3__["ImageSize"].Large
346
+ });
347
+ var buttonProps = {
348
+ className: isFollowing ? 'btn-white' : 'btn-dark',
349
+ showSpinner: showSpinner,
350
+ onClick: onClick,
351
+ variant: null
352
+ };
353
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_5__["LanguageNamespaceContext"].Provider, {
354
+ value: namespace
355
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
356
+ className: 'd-flex flex-column align-items-center text-center py-3'
357
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h2", {
358
+ className: 'display-4 font-weight-bold mb-3'
359
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_5__["Text"], {
360
+ phrase: 'comingSoon'
361
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
362
+ className: 'w-33'
363
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_5__["Text"], {
364
+ phrase: 'info'
365
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_spinner_button_SpinnerButton__WEBPACK_IMPORTED_MODULE_4__["SpinnerButton"], Object.assign({}, buttonProps), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_6__["SvgContainer"], {
366
+ svgName: isFollowing ? _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_1__["cvSvgLibrary"].Check : _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_1__["cvSvgLibrary"].Bell,
367
+ className: 'align-middle d-inline-block svg-container'
368
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
369
+ className: 'align-middle pl-1'
370
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_5__["Text"], {
371
+ phrase: 'remindMe'
372
+ })))), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
373
+ className: _coming_soon_scss__WEBPACK_IMPORTED_MODULE_7___default.a.footerImageContainer
374
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
375
+ className: "".concat(_coming_soon_scss__WEBPACK_IMPORTED_MODULE_7___default.a.footerImage, " banner position-relative"),
376
+ style: {
377
+ backgroundImage: "url('".concat(footerImageUrl, "')")
378
+ }
379
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_6__["SvgContainer"], {
380
+ className: _coming_soon_scss__WEBPACK_IMPORTED_MODULE_7___default.a.wave,
381
+ size: _components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_6__["SvgContainerSize"].ExtraLarge,
382
+ svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_1__["cvSvgLibrary"].WhiteWave
383
+ }))));
384
+ }
385
+
386
+ /***/ }),
387
+
388
+ /***/ "../../libs/shared/src/apps/subjects/components/coming-soon/coming-soon.scss":
389
+ /*!***********************************************************************************************************************!*\
390
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/coming-soon/coming-soon.scss ***!
391
+ \***********************************************************************************************************************/
392
+ /*! no static exports found */
393
+ /***/ (function(module, exports, __webpack_require__) {
394
+
395
+ // extracted by mini-css-extract-plugin
396
+ module.exports = {"footerImageContainer":"cv--footerImageContainer--2lUo1","footerImage":"cv--footerImage--Q_m9i","wave":"cv--wave--2WUUq"};
397
+
398
+ /***/ }),
399
+
400
+ /***/ "../../libs/shared/src/apps/subjects/components/hero-video/HeroVideo.tsx":
401
+ /*!*******************************************************************************************************************!*\
402
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/hero-video/HeroVideo.tsx ***!
403
+ \*******************************************************************************************************************/
404
+ /*! exports provided: HeroVideo, PartialHeroVideo */
405
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
406
+
407
+ "use strict";
408
+ __webpack_require__.r(__webpack_exports__);
409
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HeroVideo", function() { return HeroVideo; });
410
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PartialHeroVideo", function() { return PartialHeroVideo; });
411
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
412
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
413
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
414
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
415
+ /* harmony import */ var _components_thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../components/thumbnails/video/VideoThumbnail */ "../../libs/shared/src/components/thumbnails/video/VideoThumbnail.tsx");
416
+ /* harmony import */ var _components_series_link_SeriesLink__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../components/series-link/SeriesLink */ "../../libs/shared/src/components/series-link/SeriesLink.tsx");
417
+ /* harmony import */ var _components_badges_BadgeListContainer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../components/badges/BadgeListContainer */ "../../libs/shared/src/components/badges/BadgeListContainer.tsx");
418
+ /* harmony import */ var _components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../components/badges/Badge */ "../../libs/shared/src/components/badges/Badge.tsx");
419
+ /* harmony import */ var _components_audience_label_AudienceLabel__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../components/audience-label/AudienceLabel */ "../../libs/shared/src/components/audience-label/AudienceLabel.tsx");
420
+ /* harmony import */ var _components_tags_TagList__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../components/tags/TagList */ "../../libs/shared/src/components/tags/TagList.tsx");
421
+ /* harmony import */ var _components_text_Text__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
422
+ /* harmony import */ var _components_app_link_AppLink__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../components/app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
423
+ /* harmony import */ var _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../enums/ThumbnailSize */ "../../libs/shared/src/enums/ThumbnailSize.ts");
424
+ /* harmony import */ var _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../enums/ThumbnailTextPosition */ "../../libs/shared/src/enums/ThumbnailTextPosition.ts");
425
+ /* harmony import */ var _utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../utils/AudienceHelper */ "../../libs/shared/src/utils/AudienceHelper.ts");
426
+ /* harmony import */ var _hero_video_scss__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./hero-video.scss */ "../../libs/shared/src/apps/subjects/components/hero-video/hero-video.scss");
427
+ /* harmony import */ var _hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13__);
428
+
429
+
430
+
431
+
432
+
433
+
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+
442
+
443
+ var has = function has(obj) {
444
+ return !!(obj && obj.data && obj.data.length);
445
+ };
446
+
447
+ function HeroVideo(props) {
448
+ var video = props.video,
449
+ presentationAudiences = props.presentationAudiences,
450
+ videoAppLink = props.videoAppLink,
451
+ seriesAppLink = props.seriesAppLink,
452
+ hideInteractiveBadge = props.hideInteractiveBadge;
453
+ if (!video) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
454
+ var filteredAudiences = _utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_12__["AudienceHelper"].getSortedPresentationAudiences(video.subjectPresentationAudiences.data, presentationAudiences);
455
+ var mergedAudience = _utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_12__["AudienceHelper"].getMergedPresentationAudienceString(filteredAudiences);
456
+ var hasSeries = video.series && !!video.series.id;
457
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["LanguageNamespaceContext"].Provider, {
458
+ value: 'subjects.heroVideo'
459
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h4", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
460
+ phrase: 'heading'
461
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Row"], {
462
+ className: 'pb-3'
463
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Col"], {
464
+ xs: 6
465
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_2__["VideoThumbnail"], {
466
+ video: video,
467
+ appLink: videoAppLink,
468
+ seriesAppLink: hasSeries ? seriesAppLink : null,
469
+ size: _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_10__["ThumbnailSize"].Medium,
470
+ textPosition: _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_11__["ThumbnailTextPosition"].Independent,
471
+ type: 'static'
472
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Col"], {
473
+ xs: 6,
474
+ className: 'p-1'
475
+ }, hasSeries && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_series_link_SeriesLink__WEBPACK_IMPORTED_MODULE_3__["SeriesLink"], {
476
+ video: video,
477
+ appLink: seriesAppLink,
478
+ className: 'text-reset d-block'
479
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_app_link_AppLink__WEBPACK_IMPORTED_MODULE_9__["AppLink"], {
480
+ appLink: videoAppLink
481
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h4", null, video.name)), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_badges_BadgeListContainer__WEBPACK_IMPORTED_MODULE_4__["BadgeListContainer"], {
482
+ className: 'pb-1'
483
+ }, !hideInteractiveBadge && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
484
+ type: _components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].Interactive,
485
+ data: video.interactives
486
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
487
+ type: _components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].Rating,
488
+ data: video.rating
489
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
490
+ type: _components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].ProductionYear,
491
+ data: video.productionYear
492
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
493
+ className: 'mb-1 clamp-4'
494
+ }, video.description), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_audience_label_AudienceLabel__WEBPACK_IMPORTED_MODULE_6__["AudienceLabel"], {
495
+ audience: mergedAudience,
496
+ border: 'dark'
497
+ }), props.showExtraMetadata && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Row"], {
498
+ className: 'pt-2'
499
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Col"], {
500
+ xs: 2
501
+ }, has(video.resources) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
502
+ className: 'font-weight-bold'
503
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
504
+ phrase: 'resourcesHeading'
505
+ })), has(video.links) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
506
+ className: 'font-weight-bold'
507
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
508
+ phrase: 'linksHeading'
509
+ })), has(video.clips) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
510
+ className: 'font-weight-bold'
511
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
512
+ phrase: 'clipsHeading'
513
+ })), has(video.tags) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
514
+ className: 'font-weight-bold'
515
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
516
+ phrase: 'tagsHeading'
517
+ }))), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Col"], {
518
+ xs: 10
519
+ }, has(video.resources) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
520
+ phrase: 'resources',
521
+ options: {
522
+ smartCount: video.resources.data.length
523
+ }
524
+ })), has(video.links) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
525
+ phrase: 'links',
526
+ options: {
527
+ smartCount: video.links.data.length
528
+ }
529
+ })), has(video.clips) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_text_Text__WEBPACK_IMPORTED_MODULE_8__["Text"], {
530
+ phrase: 'clips',
531
+ options: {
532
+ smartCount: video.clips.data.length
533
+ }
534
+ })), has(video.tags) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_tags_TagList__WEBPACK_IMPORTED_MODULE_7__["TagList"], {
535
+ tags: video.tags
536
+ }))))));
537
+ }
538
+ function PartialHeroVideo() {
539
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
540
+ className: "partial-loading-background mb-2 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialHeading)
541
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
542
+ className: 'row pb-3'
543
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
544
+ className: 'col-6 p1'
545
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
546
+ className: "".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialHeroThumbnail, " partial-loading-background")
547
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
548
+ className: 'col-6 p1'
549
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
550
+ className: "partial-loading-background mb-1 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialSeriesText)
551
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
552
+ className: "partial-loading-background my-1 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialVideoTitleText)
553
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
554
+ className: 'd-flex'
555
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
556
+ className: "partial-loading-background my-1 mr-1 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialBadge)
557
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
558
+ className: "partial-loading-background my-1 ml-1 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialBadge)
559
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
560
+ className: "partial-loading-background my-1 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialDescription)
561
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
562
+ className: "partial-loading-background mt-2 ".concat(_hero_video_scss__WEBPACK_IMPORTED_MODULE_13___default.a.partialSubject)
563
+ }))));
564
+ }
565
+
566
+ /***/ }),
567
+
568
+ /***/ "../../libs/shared/src/apps/subjects/components/hero-video/hero-video.scss":
569
+ /*!*********************************************************************************************************************!*\
570
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/hero-video/hero-video.scss ***!
571
+ \*********************************************************************************************************************/
572
+ /*! no static exports found */
573
+ /***/ (function(module, exports, __webpack_require__) {
574
+
575
+ // extracted by mini-css-extract-plugin
576
+ module.exports = {"partialHeroThumbnail":"cv--partialHeroThumbnail--mBd7D","partialSeriesText":"cv--partialSeriesText--2MXtV","partialVideoTitleText":"cv--partialVideoTitleText--3AoSO","partialBadge":"cv--partialBadge--33OjS","partialDescription":"cv--partialDescription--2uRQA","partialSubject":"cv--partialSubject--3YJIE","partialHeading":"cv--partialHeading--2UT-Z"};
577
+
578
+ /***/ }),
579
+
580
+ /***/ "../../libs/shared/src/apps/subjects/hooks/useAudienceParams.tsx":
581
+ /*!***********************************************************************************************************!*\
582
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/hooks/useAudienceParams.tsx ***!
583
+ \***********************************************************************************************************/
584
+ /*! exports provided: useParseAudienceParams */
585
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
586
+
587
+ "use strict";
588
+ __webpack_require__.r(__webpack_exports__);
589
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useParseAudienceParams", function() { return useParseAudienceParams; });
590
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
591
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
592
+ /* harmony import */ var _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
593
+ /* harmony import */ var _reducers_AudienceReducer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../reducers/AudienceReducer */ "../../libs/shared/src/apps/subjects/reducers/AudienceReducer.ts");
594
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
595
+
596
+ 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."); }
597
+
598
+ 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); }
599
+
600
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
601
+
602
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
603
+
604
+ 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; }
605
+
606
+
607
+
608
+ // Set initial state in some fashion
609
+
610
+ var SPACE_REGEX = /\s|\+/ig;
611
+
612
+ function normalizeAudienceName(audienceName) {
613
+ if (!audienceName) return '';
614
+ return audienceName.replace(SPACE_REGEX, '').toLowerCase();
615
+ }
616
+
617
+ function useParseAudienceParams(params, audiences, dispatch) {
618
+ var dependencies = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
619
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
620
+ if (!_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__["ObjectHelper"].isObject(params) || _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_1__["ObjectHelper"].isEmpty(params)) return;
621
+ if (!audiences || !audiences.length) return; // 'a' is shorthand for audience
622
+
623
+ var a = params.a;
624
+ if (!a) return; // Only a single query param was passed, we'll wrap it in an array
625
+
626
+ if (typeof a === 'string') a = [a]; // Build an audience lookup
627
+
628
+ var audienceLookup = a.reduce(function (state, audienceStr) {
629
+ state[normalizeAudienceName(audienceStr)] = audienceStr;
630
+ return state;
631
+ }, {}); // Filter out our active audience based on whether their name matches the lookup object
632
+
633
+ var activeAudiences = audiences.filter(function (audience) {
634
+ return audienceLookup[normalizeAudienceName(audience.name)];
635
+ });
636
+ dispatch({
637
+ type: _reducers_AudienceReducer__WEBPACK_IMPORTED_MODULE_2__["AudienceActions"].Init,
638
+ payload: activeAudiences
639
+ });
640
+ }, _toConsumableArray(dependencies));
641
+ }
642
+
643
+ /***/ }),
644
+
645
+ /***/ "../../libs/shared/src/apps/subjects/reducers/AudienceReducer.ts":
646
+ /*!***********************************************************************************************************!*\
647
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/reducers/AudienceReducer.ts ***!
648
+ \***********************************************************************************************************/
649
+ /*! exports provided: AudienceActions, InitialAudienceState, AudienceReducer */
650
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
651
+
652
+ "use strict";
653
+ __webpack_require__.r(__webpack_exports__);
654
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AudienceActions", function() { return AudienceActions; });
655
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InitialAudienceState", function() { return InitialAudienceState; });
656
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AudienceReducer", function() { return AudienceReducer; });
657
+ var AudienceActions;
658
+
659
+ (function (AudienceActions) {
660
+ AudienceActions["Init"] = "init";
661
+ AudienceActions["Toggle"] = "toggle";
662
+ })(AudienceActions || (AudienceActions = {}));
663
+
664
+ var InitialAudienceState = {};
665
+
666
+ function initSelectedAudiences(payload) {
667
+ var selectedAudiences = payload;
668
+ return selectedAudiences.reduce(function (state, audience) {
669
+ state[audience.masterId] = audience;
670
+ return state;
671
+ }, {});
672
+ }
673
+
674
+ function toggleSelectedAudience(prevState, payload) {
675
+ var audience = payload.audience;
676
+ var isSelected = payload.isSelected;
677
+ if (!audience) return prevState;
678
+ var id = audience.masterId;
679
+ var newState = Object.assign({}, prevState); // We want to activate a filter
680
+
681
+ if (isSelected) {
682
+ // Only update if it's not already in the object
683
+ if (!newState[id]) newState[id] = audience;
684
+ } else {
685
+ // We want to remove an existing active filter
686
+ delete newState[id];
687
+ }
688
+
689
+ return newState;
690
+ }
691
+
692
+ function AudienceReducer(prevState, action) {
693
+ switch (action.type) {
694
+ case AudienceActions.Init:
695
+ return Object.assign(Object.assign({}, prevState), initSelectedAudiences(action.payload));
696
+
697
+ case AudienceActions.Toggle:
698
+ return Object.assign({}, toggleSelectedAudience(prevState, action.payload));
699
+
700
+ default:
701
+ return prevState;
702
+ }
703
+ }
704
+
705
+ /***/ }),
706
+
707
+ /***/ "../../libs/shared/src/components/actions/ActionButton.tsx":
708
+ /*!*****************************************************************************************************!*\
709
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/ActionButton.tsx ***!
710
+ \*****************************************************************************************************/
711
+ /*! exports provided: ActionButton */
712
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
713
+
714
+ "use strict";
715
+ __webpack_require__.r(__webpack_exports__);
716
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ActionButton", function() { return ActionButton; });
717
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
718
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
719
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
720
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
721
+ /* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
722
+ /* harmony import */ var _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
723
+ /* harmony import */ var _icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../icon-button/IconButton */ "../../libs/shared/src/components/icon-button/IconButton.tsx");
724
+ /* harmony import */ var _tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../tooltip/Tooltip */ "../../libs/shared/src/components/tooltip/Tooltip.tsx");
725
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
726
+
727
+
728
+
729
+
730
+
731
+
732
+
733
+ function ActionButton(props) {
734
+ var className = 'ml-2';
735
+ if (props.className) className += " ".concat(props.className);
736
+ var buttonContent = props.showSpinner ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Spinner"], {
737
+ as: 'span',
738
+ animation: 'border',
739
+ role: 'status',
740
+ size: 'sm'
741
+ }) : props.children;
742
+
743
+ if (props.tooltip) {
744
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_5__["Tooltip"], {
745
+ title: props.tooltip
746
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__["IconButton"], {
747
+ appLink: props.appLink,
748
+ svgName: props.svgName,
749
+ onClick: props.onClick,
750
+ className: className,
751
+ analyticsData: props.analyticsData,
752
+ analyticsOptions: props.analyticsOptions
753
+ }, buttonContent)));
754
+ }
755
+
756
+ if (props.svgName) {
757
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__["IconButton"], {
758
+ onClick: props.onClick,
759
+ appLink: props.appLink,
760
+ svgName: props.svgName,
761
+ className: className,
762
+ analyticsData: props.analyticsData,
763
+ analyticsOptions: props.analyticsOptions
764
+ }, buttonContent);
765
+ }
766
+
767
+ if (props.appLink) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_6__["AppLink"], {
768
+ onClick: props.onClick,
769
+ appLink: props.appLink,
770
+ className: className,
771
+ analyticsData: props.analyticsData,
772
+ analyticsOptions: props.analyticsOptions
773
+ }, buttonContent);
774
+
775
+ function onClickButton(e) {
776
+ if (props.analyticsData && props.analyticsOptions) _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__["AnalyticsHelper"].logUserAction(props.analyticsData, props.analyticsOptions);
777
+ if (_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].isFunction(props.onClick)) props.onClick(e);
778
+ }
779
+
780
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("button", {
781
+ onClick: onClickButton,
782
+ className: className
783
+ }, buttonContent);
784
+ }
785
+
786
+ /***/ }),
787
+
788
+ /***/ "../../libs/shared/src/components/actions/Actions.tsx":
789
+ /*!************************************************************************************************!*\
790
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/Actions.tsx ***!
791
+ \************************************************************************************************/
792
+ /*! exports provided: Actions */
793
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
794
+
795
+ "use strict";
796
+ __webpack_require__.r(__webpack_exports__);
797
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Actions", function() { return Actions; });
798
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
799
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
800
+ /* harmony import */ var _ActionsDropdown__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ActionsDropdown */ "../../libs/shared/src/components/actions/ActionsDropdown.tsx");
801
+ /* harmony import */ var _ActionButton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ActionButton */ "../../libs/shared/src/components/actions/ActionButton.tsx");
802
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./actions.scss */ "../../libs/shared/src/components/actions/actions.scss");
803
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_actions_scss__WEBPACK_IMPORTED_MODULE_3__);
804
+ /* harmony import */ var _icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../icon-button/IconButton */ "../../libs/shared/src/components/icon-button/IconButton.tsx");
805
+
806
+
807
+
808
+
809
+
810
+ function Actions(props) {
811
+ var buttonActions = [];
812
+ var moreActions = [];
813
+ props.actions.forEach(function (a) {
814
+ if (a.button) buttonActions.push(a);else moreActions.push(a);
815
+ });
816
+ var className = 'd-flex';
817
+ if (props.className) className += " ".concat(props.className);
818
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
819
+ className: className
820
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, !!buttonActions.length && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
821
+ className: _actions_scss__WEBPACK_IMPORTED_MODULE_3___default.a.buttonList
822
+ }, buttonActions.map(function (a, idx) {
823
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], {
824
+ key: idx
825
+ }, a.label ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_ActionButton__WEBPACK_IMPORTED_MODULE_2__["ActionButton"], {
826
+ appLink: a.appLink,
827
+ onClick: a.onClick,
828
+ svgName: a.svgName,
829
+ className: a.className,
830
+ tooltip: a.tooltip,
831
+ showSpinner: a.showSpinner,
832
+ analyticsData: a.analyticsData,
833
+ analyticsOptions: a.analyticsOptions
834
+ }, a.label) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__["IconButton"], {
835
+ appLink: a.appLink,
836
+ onClick: a.onClick,
837
+ svgName: a.svgName,
838
+ className: a.className,
839
+ analyticsData: a.analyticsData,
840
+ analyticsOptions: a.analyticsOptions
841
+ }));
842
+ })), props.sortComponent ? props.sortComponent : '', !!moreActions.length && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_ActionsDropdown__WEBPACK_IMPORTED_MODULE_1__["ActionsDropdown"], {
843
+ actions: moreActions,
844
+ className: !!buttonActions.length && 'ml-2',
845
+ dropdownToggleClassName: props.actionsDropdownClassName
846
+ })));
847
+ }
848
+
849
+ /***/ }),
850
+
851
+ /***/ "../../libs/shared/src/components/actions/ActionsDropdown.tsx":
852
+ /*!********************************************************************************************************!*\
853
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/ActionsDropdown.tsx ***!
854
+ \********************************************************************************************************/
855
+ /*! exports provided: ActionsDropdown */
856
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
857
+
858
+ "use strict";
859
+ __webpack_require__.r(__webpack_exports__);
860
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ActionsDropdown", function() { return ActionsDropdown; });
861
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
862
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
863
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
864
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
865
+ /* harmony import */ var _common_src_react_utils_RandomHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../common/src/react/utils/RandomHelper */ "../../libs/common/src/react/utils/RandomHelper.ts");
866
+ /* harmony import */ var _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
867
+ /* harmony import */ var _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
868
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
869
+ /* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
870
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./actions.scss */ "../../libs/shared/src/components/actions/actions.scss");
871
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_actions_scss__WEBPACK_IMPORTED_MODULE_7__);
872
+ /* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
873
+
874
+
875
+
876
+
877
+
878
+
879
+
880
+
881
+
882
+
883
+ function getDropdownItemClassName(actionClassName) {
884
+ var className = 'dropdown-item';
885
+ if (actionClassName) className += " ".concat(actionClassName);
886
+ return className;
887
+ }
888
+
889
+ function ActionsDropdownItem(props) {
890
+ if (props.action.appLink) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_5__["AppLink"], {
891
+ appLink: props.action.appLink,
892
+ onClick: props.action.onClick,
893
+ className: getDropdownItemClassName(props.action.className),
894
+ analyticsData: props.action.analyticsData,
895
+ analyticsOptions: props.action.analyticsOptions
896
+ }, props.action.label);
897
+
898
+ function onClick(e) {
899
+ if (props.action.analyticsData && props.action.analyticsOptions) _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__["AnalyticsHelper"].logUserAction(props.action.analyticsData, props.action.analyticsOptions);
900
+ if (_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_8__["FunctionHelper"].isFunction(props.action.onClick)) props.action.onClick(e);
901
+ }
902
+
903
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
904
+ className: "cursor-pointer ".concat(getDropdownItemClassName(props.action.className)),
905
+ onClick: onClick
906
+ }, props.action.label);
907
+ }
908
+
909
+ ActionsDropdown.defaultProps = {
910
+ dropdownToggleClassName: 'btn btn-light'
911
+ };
912
+ function ActionsDropdown(props) {
913
+ if (!props.actions || !props.actions.length) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null); // Generate unique id to avoid collisions.
914
+
915
+ var dropdownToggleId = "actions-dropdown-".concat(_common_src_react_utils_RandomHelper__WEBPACK_IMPORTED_MODULE_2__["RandomHelper"].getRandomInt());
916
+ var dropdownToggleClassName = "px-0 ".concat(_actions_scss__WEBPACK_IMPORTED_MODULE_7___default.a.dropdownToggle);
917
+ if (props.dropdownToggleClassName) dropdownToggleClassName += " ".concat(props.dropdownToggleClassName);
918
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"], {
919
+ className: props.className ? props.className : '',
920
+ alignRight: true
921
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"].Toggle, {
922
+ as: 'button',
923
+ type: 'button',
924
+ id: dropdownToggleId,
925
+ className: dropdownToggleClassName
926
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_4__["SvgContainer"], {
927
+ svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__["cvSvgLibrary"].More,
928
+ size: _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_4__["SvgContainerSize"].Small
929
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"].Menu, null, props.actions.map(function (a, idx) {
930
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](ActionsDropdownItem, {
931
+ key: idx,
932
+ action: a
933
+ });
934
+ })));
935
+ }
936
+
937
+ /***/ }),
938
+
939
+ /***/ "../../libs/shared/src/components/actions/actions.scss":
940
+ /*!*************************************************************************************************!*\
941
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/actions.scss ***!
942
+ \*************************************************************************************************/
943
+ /*! no static exports found */
944
+ /***/ (function(module, exports, __webpack_require__) {
945
+
946
+ // extracted by mini-css-extract-plugin
947
+ module.exports = {"buttonList":"cv--buttonList--2v9CT","dropdownToggle":"cv--dropdownToggle--AYBvQ"};
948
+
949
+ /***/ }),
950
+
951
+ /***/ "../../libs/shared/src/components/tags/TagItem.tsx":
952
+ /*!*********************************************************************************************!*\
953
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/tags/TagItem.tsx ***!
954
+ \*********************************************************************************************/
955
+ /*! exports provided: TagItem */
956
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
957
+
958
+ "use strict";
959
+ __webpack_require__.r(__webpack_exports__);
960
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TagItem", function() { return TagItem; });
961
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
962
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
963
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
964
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tags.scss */ "../../libs/shared/src/components/tags/tags.scss");
965
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_tags_scss__WEBPACK_IMPORTED_MODULE_2__);
966
+
967
+
968
+
969
+ function TagItem(_ref) {
970
+ var tag = _ref.tag,
971
+ appLink = _ref.appLink,
972
+ disabled = _ref.disabled;
973
+ var classNames = 'badge-pill tag py-1 px-2 my-1 mr-1';
974
+ if (appLink && !disabled) classNames += ' cursor-pointer';
975
+ if (disabled) classNames += ' ' + _tags_scss__WEBPACK_IMPORTED_MODULE_2___default.a.disabled;
976
+ return appLink ? react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__["AppLink"], {
977
+ appLink: appLink,
978
+ className: classNames
979
+ }, tag.name) : react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
980
+ className: classNames
981
+ }, tag.name);
982
+ }
983
+
984
+ /***/ }),
985
+
986
+ /***/ "../../libs/shared/src/components/tags/TagList.tsx":
987
+ /*!*********************************************************************************************!*\
988
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/tags/TagList.tsx ***!
989
+ \*********************************************************************************************/
990
+ /*! exports provided: TagList */
991
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
992
+
993
+ "use strict";
994
+ __webpack_require__.r(__webpack_exports__);
995
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TagList", function() { return TagList; });
996
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
997
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
998
+ /* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
999
+ /* harmony import */ var _TagItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TagItem */ "../../libs/shared/src/components/tags/TagItem.tsx");
1000
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./tags.scss */ "../../libs/shared/src/components/tags/tags.scss");
1001
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_tags_scss__WEBPACK_IMPORTED_MODULE_3__);
1002
+
1003
+
1004
+
1005
+
1006
+ function TagList(_ref) {
1007
+ var tags = _ref.tags,
1008
+ getAppLink = _ref.getAppLink;
1009
+ if (!tags || !tags.data) return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null);
1010
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
1011
+ className: _tags_scss__WEBPACK_IMPORTED_MODULE_3___default.a.tagList
1012
+ }, tags.data.map(function (tag) {
1013
+ var appLink = _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__["FunctionHelper"].isFunction(getAppLink) ? getAppLink(tag) : null;
1014
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_TagItem__WEBPACK_IMPORTED_MODULE_2__["TagItem"], {
1015
+ key: tag.id,
1016
+ tag: tag,
1017
+ appLink: appLink
1018
+ });
1019
+ }));
1020
+ }
1021
+
1022
+ /***/ }),
1023
+
1024
+ /***/ "../../libs/shared/src/components/tags/tags.scss":
1025
+ /*!*******************************************************************************************!*\
1026
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/tags/tags.scss ***!
1027
+ \*******************************************************************************************/
1028
+ /*! no static exports found */
1029
+ /***/ (function(module, exports, __webpack_require__) {
23
1030
 
24
- var namespace = 'shared.backButton';
25
- BackButton.defaultProps = {
26
- color: 'black',
27
- extraClasses: ''
28
- };
29
- function BackButton(_ref) {
30
- var backToName = _ref.backToName,
31
- appLink = _ref.appLink,
32
- color = _ref.color,
33
- extraClasses = _ref.extraClasses;
34
- var backPhrase = backToName ? _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].getPhrase(namespace, 'backTo', {
35
- backToName: backToName
36
- }) : _common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].getPhrase(namespace, 'back');
37
- var colorClass = color === 'black' ? '' : 'text-light';
38
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_3__["AppLink"], {
39
- appLink: appLink,
40
- className: "d-inline-flex align-items-center h5 mb-0 ".concat(extraClasses, " ").concat(colorClass)
41
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_2__["SvgContainer"], {
42
- svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__["cvSvgLibrary"].ChevronLeft,
43
- size: _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_2__["SvgContainerSize"].Medium
44
- }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
45
- className: 'ml-1'
46
- }, backPhrase));
1031
+ // extracted by mini-css-extract-plugin
1032
+ module.exports = {"tagList":"cv--tagList--yvetE","disabled":"cv--disabled--3ZfKv"};
1033
+
1034
+ /***/ }),
1035
+
1036
+ /***/ "../../libs/shared/src/components/widgets/fixed-widget/index.ts":
1037
+ /*!**********************************************************************************************************!*\
1038
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/index.ts ***!
1039
+ \**********************************************************************************************************/
1040
+ /*! exports provided: FixedWidget, initialWidgetState, FixedWidgetReducer, lazyWidgetInit, PartialFixedWidget */
1041
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1042
+
1043
+ "use strict";
1044
+ __webpack_require__.r(__webpack_exports__);
1045
+ /* harmony import */ var _FixedWidget__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FixedWidget */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidget.tsx");
1046
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FixedWidget", function() { return _FixedWidget__WEBPACK_IMPORTED_MODULE_0__["FixedWidget"]; });
1047
+
1048
+ /* harmony import */ var _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FixedWidgetReducer */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetReducer.tsx");
1049
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "initialWidgetState", function() { return _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__["initialWidgetState"]; });
1050
+
1051
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FixedWidgetReducer", function() { return _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__["FixedWidgetReducer"]; });
1052
+
1053
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "lazyWidgetInit", function() { return _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__["lazyWidgetInit"]; });
1054
+
1055
+ /* harmony import */ var _PartialFixedWidget__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PartialFixedWidget */ "../../libs/shared/src/components/widgets/fixed-widget/PartialFixedWidget.tsx");
1056
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PartialFixedWidget", function() { return _PartialFixedWidget__WEBPACK_IMPORTED_MODULE_2__["PartialFixedWidget"]; });
1057
+
1058
+
1059
+
1060
+
1061
+
1062
+ /***/ }),
1063
+
1064
+ /***/ "../../libs/shared/src/components/widgets/items/series-widget-item/SeriesWidgetItem.tsx":
1065
+ /*!**********************************************************************************************************************************!*\
1066
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/series-widget-item/SeriesWidgetItem.tsx ***!
1067
+ \**********************************************************************************************************************************/
1068
+ /*! exports provided: SeriesWidgetItem */
1069
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1070
+
1071
+ "use strict";
1072
+ __webpack_require__.r(__webpack_exports__);
1073
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SeriesWidgetItem", function() { return SeriesWidgetItem; });
1074
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
1075
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1076
+ /* harmony import */ var _common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
1077
+ /* harmony import */ var _hooks_UseHover__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../hooks/UseHover */ "../../libs/shared/src/hooks/UseHover.ts");
1078
+ /* harmony import */ var _utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../utils/AudienceHelper */ "../../libs/shared/src/utils/AudienceHelper.ts");
1079
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
1080
+ /* harmony import */ var _thumbnails_base_BaseThumbnail__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../thumbnails/base/BaseThumbnail */ "../../libs/shared/src/components/thumbnails/base/BaseThumbnail.tsx");
1081
+ /* harmony import */ var _thumbnails_base_ThumbnailFallback__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../thumbnails/base/ThumbnailFallback */ "../../libs/shared/src/components/thumbnails/base/ThumbnailFallback.tsx");
1082
+ /* harmony import */ var _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../enums/ThumbnailSize */ "../../libs/shared/src/enums/ThumbnailSize.ts");
1083
+ /* harmony import */ var _audience_label_AudienceLabel__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../audience-label/AudienceLabel */ "../../libs/shared/src/components/audience-label/AudienceLabel.tsx");
1084
+ /* harmony import */ var _badges_Badge__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../badges/Badge */ "../../libs/shared/src/components/badges/Badge.tsx");
1085
+ /* harmony import */ var _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../../analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
1086
+ /* harmony import */ var _series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./series-widget-item.scss */ "../../libs/shared/src/components/widgets/items/series-widget-item/series-widget-item.scss");
1087
+ /* harmony import */ var _series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11__);
1088
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
1089
+
1090
+ 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."); }
1091
+
1092
+ 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); }
1093
+
1094
+ 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; }
1095
+
1096
+ 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; }
1097
+
1098
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
1099
+
1100
+
1101
+
1102
+
1103
+
1104
+
1105
+
1106
+
1107
+
1108
+
1109
+
1110
+
1111
+
1112
+ function SeriesWidgetItem(props) {
1113
+ var _a, _b;
1114
+
1115
+ var series = props.data,
1116
+ appLink = props.appLink,
1117
+ preloadImage = props.preloadImage;
1118
+ var seriesAppLink = Object.assign(Object.assign({}, appLink), {
1119
+ args: [series.id, _common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_1__["TextHelper"].slugify(series.name)]
1120
+ });
1121
+ /**
1122
+ * Subject audiences currently take render precedence over rating.
1123
+ *
1124
+ * This means that until we properly add productionCompanies to series, we
1125
+ * should expect only CV series to have a subject audience. Any TV series
1126
+ * from the Exchange should only have a rating.
1127
+ */
1128
+
1129
+ var audiences = series && series.subjectPresentationAudiences && series.subjectPresentationAudiences.data || [];
1130
+ var filteredAudiences = _utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_3__["AudienceHelper"].getSortedPresentationAudiences(audiences, props.audiences);
1131
+ var mergedAudience = _utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_3__["AudienceHelper"].getMergedPresentationAudienceString(filteredAudiences);
1132
+
1133
+ var _useHoverIntent = Object(_hooks_UseHover__WEBPACK_IMPORTED_MODULE_2__["useHoverIntent"])(_series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11___default.a.hoverActive),
1134
+ _useHoverIntent2 = _slicedToArray(_useHoverIntent, 2),
1135
+ hoverRef = _useHoverIntent2[0],
1136
+ isHovering = _useHoverIntent2[1];
1137
+
1138
+ var analyticsData = Object.assign(Object.assign({}, props.analyticsData), {
1139
+ id: (_a = series) === null || _a === void 0 ? void 0 : _a.id,
1140
+ name: (_b = series) === null || _b === void 0 ? void 0 : _b.name
1141
+ });
1142
+ var analyticsOptions = Object.assign(Object.assign({}, props.analyticsOptions), {
1143
+ actionType: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_10__["UserAction"].Click,
1144
+ entity: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_10__["EntityType"].Series,
1145
+ descriptor: _analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_10__["ClickDescriptor"].TallPoster
1146
+ });
1147
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_4__["AppLink"], {
1148
+ key: series.id,
1149
+ appLink: seriesAppLink,
1150
+ className: "position-relative p-1 flex-shrink-0 ".concat(_series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11___default.a.width),
1151
+ analyticsData: analyticsData,
1152
+ analyticsOptions: analyticsOptions
1153
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1154
+ ref: hoverRef
1155
+ }, isHovering && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1156
+ className: "p-3 text-white text-center ".concat(_series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11___default.a.mask)
1157
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h3", {
1158
+ className: 'h4'
1159
+ }, series.name), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", null, series.description)), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_thumbnails_base_BaseThumbnail__WEBPACK_IMPORTED_MODULE_5__["BaseThumbnail"], {
1160
+ data: series.tallPoster,
1161
+ aspectRatio: _thumbnails_base_BaseThumbnail__WEBPACK_IMPORTED_MODULE_5__["AspectRatio"].NineBySixteen,
1162
+ preload: preloadImage,
1163
+ size: _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_7__["ThumbnailSize"].Large
1164
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_thumbnails_base_ThumbnailFallback__WEBPACK_IMPORTED_MODULE_6__["ThumbnailFallback"], {
1165
+ type: _thumbnails_base_ThumbnailFallback__WEBPACK_IMPORTED_MODULE_6__["ThumbnailFallbackType"].Series
1166
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1167
+ className: "position-absolute text-white ".concat(_series_widget_item_scss__WEBPACK_IMPORTED_MODULE_11___default.a.labelContainer)
1168
+ }, !!audiences && audiences.length ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_audience_label_AudienceLabel__WEBPACK_IMPORTED_MODULE_8__["AudienceLabel"], {
1169
+ audience: mergedAudience,
1170
+ border: 'white'
1171
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_badges_Badge__WEBPACK_IMPORTED_MODULE_9__["Badge"], {
1172
+ type: _badges_Badge__WEBPACK_IMPORTED_MODULE_9__["BadgeType"].Rating,
1173
+ data: series.rating
1174
+ })))));
47
1175
  }
48
1176
 
49
1177
  /***/ }),
50
1178
 
51
- /***/ "../../libs/shared/src/components/banner-header/BannerHeader.tsx":
52
- /*!***********************************************************************************************************!*\
53
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/banner-header/BannerHeader.tsx ***!
54
- \***********************************************************************************************************/
55
- /*! exports provided: BannerHeader, PartialBannerHeader */
1179
+ /***/ "../../libs/shared/src/components/widgets/items/series-widget-item/index.ts":
1180
+ /*!**********************************************************************************************************************!*\
1181
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/series-widget-item/index.ts ***!
1182
+ \**********************************************************************************************************************/
1183
+ /*! exports provided: SeriesWidgetItem, PartialSeriesList */
1184
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1185
+
1186
+ "use strict";
1187
+ __webpack_require__.r(__webpack_exports__);
1188
+ /* harmony import */ var _SeriesWidgetItem__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SeriesWidgetItem */ "../../libs/shared/src/components/widgets/items/series-widget-item/SeriesWidgetItem.tsx");
1189
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SeriesWidgetItem", function() { return _SeriesWidgetItem__WEBPACK_IMPORTED_MODULE_0__["SeriesWidgetItem"]; });
1190
+
1191
+ /* harmony import */ var _PartialSeriesList__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PartialSeriesList */ "../../libs/shared/src/components/widgets/items/series-widget-item/PartialSeriesList.tsx");
1192
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PartialSeriesList", function() { return _PartialSeriesList__WEBPACK_IMPORTED_MODULE_1__["PartialSeriesList"]; });
1193
+
1194
+
1195
+
1196
+
1197
+ /***/ }),
1198
+
1199
+ /***/ "../../libs/shared/src/components/widgets/items/series-widget-item/series-widget-item.scss":
1200
+ /*!*************************************************************************************************************************************!*\
1201
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/series-widget-item/series-widget-item.scss ***!
1202
+ \*************************************************************************************************************************************/
1203
+ /*! no static exports found */
1204
+ /***/ (function(module, exports, __webpack_require__) {
1205
+
1206
+ // extracted by mini-css-extract-plugin
1207
+ module.exports = {"partialLoadingHeading":"cv--partialLoadingHeading--1RLPq","partialLoading":"cv--partialLoading--oArG4","labelContainer":"cv--labelContainer--QLCgm","hoverActive":"cv--hoverActive--3Aleb","mask":"cv--mask--2M2Zz","width":"cv--width--TQg2K"};
1208
+
1209
+ /***/ }),
1210
+
1211
+ /***/ "../../libs/shared/src/components/widgets/items/video-widget-item/VideoWidgetItem.tsx":
1212
+ /*!********************************************************************************************************************************!*\
1213
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/video-widget-item/VideoWidgetItem.tsx ***!
1214
+ \********************************************************************************************************************************/
1215
+ /*! exports provided: VideoWidgetItem */
56
1216
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
57
1217
 
58
1218
  "use strict";
59
1219
  __webpack_require__.r(__webpack_exports__);
60
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BannerHeader", function() { return BannerHeader; });
61
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PartialBannerHeader", function() { return PartialBannerHeader; });
1220
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VideoWidgetItem", function() { return VideoWidgetItem; });
62
1221
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
63
1222
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
64
- /* harmony import */ var _back_button_BackButton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../back-button/BackButton */ "../../libs/shared/src/components/back-button/BackButton.tsx");
65
- /* harmony import */ var _utils_ImageHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/ImageHelper */ "../../libs/shared/src/utils/ImageHelper.ts");
66
- /* harmony import */ var _enums_Images__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../enums/Images */ "../../libs/shared/src/enums/Images.ts");
67
- /* harmony import */ var _actions_Actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../actions/Actions */ "../../libs/shared/src/components/actions/Actions.tsx");
68
- /* harmony import */ var _banner_header_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./banner-header.scss */ "../../libs/shared/src/components/banner-header/banner-header.scss");
69
- /* harmony import */ var _banner_header_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_banner_header_scss__WEBPACK_IMPORTED_MODULE_5__);
1223
+ /* harmony import */ var _common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
1224
+ /* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../interfaces */ "../../libs/shared/src/interfaces/index.ts");
1225
+ /* harmony import */ var _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../enums/ThumbnailTextPosition */ "../../libs/shared/src/enums/ThumbnailTextPosition.ts");
1226
+ /* harmony import */ var _thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../thumbnails/video/VideoThumbnail */ "../../libs/shared/src/components/thumbnails/video/VideoThumbnail.tsx");
1227
+ /* harmony import */ var _hooks_UseHover__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../hooks/UseHover */ "../../libs/shared/src/hooks/UseHover.ts");
1228
+ /* harmony import */ var _video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./video-widget-item.scss */ "../../libs/shared/src/components/widgets/items/video-widget-item/video-widget-item.scss");
1229
+ /* harmony import */ var _video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6__);
1230
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
70
1231
 
1232
+ 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."); }
71
1233
 
1234
+ 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); }
72
1235
 
1236
+ 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; }
73
1237
 
1238
+ 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; }
74
1239
 
1240
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
75
1241
 
76
- var BannerHeader = react__WEBPACK_IMPORTED_MODULE_0__["memo"](function (props) {
77
- var heading = props.heading,
78
- banner = props.banner,
79
- imageCdnUrl = props.imageCdnUrl,
80
- actions = props.actions,
81
- sortComponent = props.sortComponent;
82
- var url = _utils_ImageHelper__WEBPACK_IMPORTED_MODULE_2__["ImageHelper"].createBannerUrl(banner, {
83
- fallbackBaseUrl: imageCdnUrl,
84
- fallbackCategoryName: heading,
85
- type: _enums_Images__WEBPACK_IMPORTED_MODULE_3__["ImageType"].Banners
86
- }, {
87
- size: _enums_Images__WEBPACK_IMPORTED_MODULE_3__["ImageSize"].Large,
88
- resizeType: _enums_Images__WEBPACK_IMPORTED_MODULE_3__["ResizeType"].Cover
1242
+
1243
+
1244
+
1245
+
1246
+
1247
+
1248
+
1249
+ var VideoWidgetItem = react__WEBPACK_IMPORTED_MODULE_0__["memo"](function (props) {
1250
+ var video = props.data,
1251
+ appLink = props.appLink,
1252
+ seriesAppLink = props.seriesAppLink,
1253
+ context = props.context,
1254
+ thumbnailSize = props.thumbnailSize,
1255
+ preloadImage = props.preloadImage;
1256
+
1257
+ var _useHoverIntent = Object(_hooks_UseHover__WEBPACK_IMPORTED_MODULE_5__["useHoverIntent"])(_video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default.a.hovering),
1258
+ _useHoverIntent2 = _slicedToArray(_useHoverIntent, 2),
1259
+ ref = _useHoverIntent2[0],
1260
+ isHovering = _useHoverIntent2[1];
1261
+
1262
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
1263
+ props.onHover(isHovering);
1264
+ }, [isHovering]);
1265
+ var videoAppLink = Object.assign(Object.assign({}, appLink), {
1266
+ args: [video.id, _common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_1__["TextHelper"].slugify(video.name)]
89
1267
  });
1268
+ var width = _video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default.a.rowWidth;
1269
+ if (context.type === _interfaces__WEBPACK_IMPORTED_MODULE_2__["WidgetType"].LargeRow || context.collectionSize === 3) width = _video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default.a.largeRowWidth;
90
1270
  return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
91
- className: 'banner-header',
92
- style: {
93
- backgroundImage: "url('".concat(url, "')")
94
- }
95
- }, props.backButtonAppLink && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
96
- className: 'pt-3'
97
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_back_button_BackButton__WEBPACK_IMPORTED_MODULE_1__["BackButton"], {
98
- appLink: props.backButtonAppLink,
99
- backToName: props.backButtonText,
100
- extraClasses: props.backButtonClasses,
101
- color: 'white'
102
- })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h1", {
103
- className: "".concat(_banner_header_scss__WEBPACK_IMPORTED_MODULE_5___default.a.text, " text-white text-shadow position-absolute mb-3 clamp-2")
104
- }, heading), !!actions && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
105
- className: _banner_header_scss__WEBPACK_IMPORTED_MODULE_5___default.a.actionsContainer
106
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_actions_Actions__WEBPACK_IMPORTED_MODULE_4__["Actions"], {
107
- actions: actions,
108
- sortComponent: sortComponent
109
- })));
1271
+ ref: ref,
1272
+ className: "p-1 flex-shrink-0 position-relative ".concat(width, " ").concat(_video_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default.a.transition)
1273
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_4__["VideoThumbnail"], {
1274
+ video: video,
1275
+ type: 'expandable',
1276
+ appLink: videoAppLink,
1277
+ seriesAppLink: seriesAppLink,
1278
+ textPosition: _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_3__["ThumbnailTextPosition"].Overlay,
1279
+ size: thumbnailSize,
1280
+ preload: preloadImage,
1281
+ hovering: isHovering,
1282
+ analyticsData: props.analyticsData,
1283
+ analyticsOptions: props.analyticsOptions
1284
+ }));
110
1285
  }, function (prevProps, nextProps) {
111
- return prevProps.actions === nextProps.actions;
1286
+ var _a, _b, _c, _d, _e, _f;
1287
+
1288
+ return prevProps.preloadImage === nextProps.preloadImage && ((_a = prevProps.data) === null || _a === void 0 ? void 0 : _a.name) === ((_b = nextProps.data) === null || _b === void 0 ? void 0 : _b.name) && ((_d = (_c = prevProps.data) === null || _c === void 0 ? void 0 : _c.series) === null || _d === void 0 ? void 0 : _d.id) === ((_f = (_e = nextProps.data) === null || _e === void 0 ? void 0 : _e.series) === null || _f === void 0 ? void 0 : _f.id) && prevProps.onHover === nextProps.onHover;
112
1289
  });
113
- var PartialBannerHeader = function PartialBannerHeader() {
114
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
115
- className: "partial-banner partial-loading-background"
116
- });
117
- };
118
1290
 
119
1291
  /***/ }),
120
1292
 
121
- /***/ "../../libs/shared/src/components/banner-header/banner-header.scss":
122
- /*!*************************************************************************************************************!*\
123
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/banner-header/banner-header.scss ***!
124
- \*************************************************************************************************************/
1293
+ /***/ "../../libs/shared/src/components/widgets/items/video-widget-item/video-widget-item.scss":
1294
+ /*!***********************************************************************************************************************************!*\
1295
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/video-widget-item/video-widget-item.scss ***!
1296
+ \***********************************************************************************************************************************/
125
1297
  /*! no static exports found */
126
1298
  /***/ (function(module, exports, __webpack_require__) {
127
1299
 
128
1300
  // extracted by mini-css-extract-plugin
129
- module.exports = {"actionsContainer":"cv--actionsContainer--286KF","text":"cv--text--3TSgh"};
1301
+ module.exports = {"rowWidth":"cv--rowWidth--8IgrO","largeRowWidth":"cv--largeRowWidth--q46rm","hovering":"cv--hovering--IeeJA","transition":"cv--transition--1s6UK"};
130
1302
 
131
1303
  /***/ }),
132
1304
 
133
- /***/ "../../libs/shared/src/components/breadcrumbs/BreadcrumbList.tsx":
134
- /*!***********************************************************************************************************!*\
135
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/breadcrumbs/BreadcrumbList.tsx ***!
136
- \***********************************************************************************************************/
137
- /*! exports provided: BreadcrumbItem, BreadcrumbList */
1305
+ /***/ "../../libs/shared/src/flight-requests/FollowRequests.ts":
1306
+ /*!***************************************************************************************************!*\
1307
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/flight-requests/FollowRequests.ts ***!
1308
+ \***************************************************************************************************/
1309
+ /*! exports provided: FollowRequests */
138
1310
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
139
1311
 
140
1312
  "use strict";
141
1313
  __webpack_require__.r(__webpack_exports__);
142
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BreadcrumbItem", function() { return BreadcrumbItem; });
143
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BreadcrumbList", function() { return BreadcrumbList; });
144
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
145
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
146
- /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
1314
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FollowRequests", function() { return FollowRequests; });
1315
+ /* harmony import */ var _common_src_backbone_utils_UrlHelper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/src/backbone/utils/UrlHelper */ "../../libs/common/src/backbone/utils/UrlHelper.ts");
1316
+ /* harmony import */ var _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/src/backbone/enums/HttpVerbs */ "../../libs/common/src/backbone/enums/HttpVerbs.ts");
1317
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
147
1318
 
1319
+ 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."); }
148
1320
 
149
- var BreadcrumbItem = function BreadcrumbItem(_ref) {
150
- var _ref$breadcrumb = _ref.breadcrumb,
151
- label = _ref$breadcrumb.label,
152
- appLink = _ref$breadcrumb.appLink,
153
- active = _ref$breadcrumb.active;
154
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("li", {
155
- className: "breadcrumb-item".concat(active ? ' active' : '')
156
- }, active ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("strong", null, label) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__["AppLink"], {
157
- appLink: appLink
158
- }, label));
159
- };
160
- var BreadcrumbList = function BreadcrumbList(_ref2) {
161
- var breadcrumbs = _ref2.breadcrumbs;
162
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("ol", {
163
- className: 'breadcrumb m-0 p-0'
164
- }, breadcrumbs.map(function (b, idx) {
165
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](BreadcrumbItem, {
166
- key: idx,
167
- breadcrumb: b
1321
+ 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); }
1322
+
1323
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
1324
+
1325
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
1326
+
1327
+ 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; }
1328
+
1329
+
1330
+
1331
+ var endpoints = {
1332
+ follow: function follow() {
1333
+ return "/api/domain/v1/subjects/classifications/following";
1334
+ },
1335
+ unfollow: function unfollow(ids) {
1336
+ return _common_src_backbone_utils_UrlHelper__WEBPACK_IMPORTED_MODULE_0__["UrlHelper"].urlBuilder('/api/domain/v1/subjects/classifications/following', {
1337
+ id: ids
168
1338
  });
169
- }));
1339
+ }
1340
+ };
1341
+ var FollowRequests = {
1342
+ /**
1343
+ * @param data - array of object ids the user is going to follow
1344
+ */
1345
+ follow: function follow(ids, success, error) {
1346
+ return {
1347
+ url: endpoints.follow(),
1348
+ key: "follow:".concat(ids.join(',')),
1349
+ type: _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_1__["HttpVerbs"].POST,
1350
+ data: ids,
1351
+ success: success,
1352
+ error: error,
1353
+ invalidationKeys: [].concat(_toConsumableArray(ids.map(function (id) {
1354
+ return "classification:".concat(id);
1355
+ })), ['my:subject:preferences'])
1356
+ };
1357
+ },
1358
+ unfollow: function unfollow(ids, success, error) {
1359
+ return {
1360
+ url: endpoints.unfollow(ids),
1361
+ key: "unfollow:".concat(ids.join(',')),
1362
+ type: _common_src_backbone_enums_HttpVerbs__WEBPACK_IMPORTED_MODULE_1__["HttpVerbs"].DELETE,
1363
+ success: success,
1364
+ error: error,
1365
+ invalidationKeys: [].concat(_toConsumableArray(ids.map(function (id) {
1366
+ return "classification:".concat(id);
1367
+ })), ['my:subject:preferences'])
1368
+ };
1369
+ }
170
1370
  };
171
1371
 
172
1372
  /***/ }),
173
1373
 
174
- /***/ "../../libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx":
175
- /*!********************************************************************************************************!*\
176
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx ***!
177
- \********************************************************************************************************/
178
- /*! exports provided: BreadcrumbType, Breadcrumbs, PartialBreadcrumbs */
1374
+ /***/ "../../libs/shared/src/hooks/useQueryString.tsx":
1375
+ /*!******************************************************************************************!*\
1376
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/useQueryString.tsx ***!
1377
+ \******************************************************************************************/
1378
+ /*! exports provided: useSetQueryString */
179
1379
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
180
1380
 
181
1381
  "use strict";
182
1382
  __webpack_require__.r(__webpack_exports__);
183
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BreadcrumbType", function() { return BreadcrumbType; });
184
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Breadcrumbs", function() { return Breadcrumbs; });
185
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PartialBreadcrumbs", function() { return PartialBreadcrumbs; });
1383
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useSetQueryString", function() { return useSetQueryString; });
186
1384
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
187
1385
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
188
- /* harmony import */ var _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
189
- /* harmony import */ var _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
190
- /* harmony import */ var _common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../common/src/react/utils/ArrayHelper */ "../../libs/common/src/react/utils/ArrayHelper.ts");
191
- /* harmony import */ var _utils_PartialLoadingHelper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/PartialLoadingHelper */ "../../libs/shared/src/utils/PartialLoadingHelper.ts");
192
- /* harmony import */ var _BreadcrumbList__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./BreadcrumbList */ "../../libs/shared/src/components/breadcrumbs/BreadcrumbList.tsx");
1386
+ /* harmony import */ var _common_src_backbone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/src/backbone */ "../../libs/common/src/backbone/index.ts");
193
1387
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
194
1388
 
195
1389
  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."); }
196
1390
 
1391
+ 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); }
1392
+
197
1393
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
198
1394
 
199
1395
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
200
1396
 
1397
+ 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; }
1398
+
1399
+
1400
+
1401
+
1402
+ function isValidAppLink(appLink, isValid) {
1403
+ if (!appLink) return false;
1404
+ if (!appLink.application || !appLink.action) return false;
1405
+ if (!isValid()) return false;
1406
+ return true;
1407
+ }
1408
+
1409
+ function useSetQueryString(queryOptions) {
1410
+ var dependencies = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
1411
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
1412
+ var appLink = queryOptions.appLink,
1413
+ paramBuilder = queryOptions.paramBuilder,
1414
+ isValid = queryOptions.isValid,
1415
+ appLinkOptions = queryOptions.appLinkOptions;
1416
+ if (!isValidAppLink(appLink, isValid)) return;
1417
+ appLink.params = paramBuilder();
1418
+ _common_src_backbone__WEBPACK_IMPORTED_MODULE_1__["Core"].AppLinkHelper.trigger(appLink, appLinkOptions);
1419
+ }, _toConsumableArray(dependencies));
1420
+ }
1421
+
1422
+ /***/ }),
1423
+
1424
+ /***/ "./src/apps/subjects/utils/ClassificationAppLinks.ts":
1425
+ /*!***********************************************************!*\
1426
+ !*** ./src/apps/subjects/utils/ClassificationAppLinks.ts ***!
1427
+ \***********************************************************/
1428
+ /*! exports provided: getClassificationAppLink, getPlaylistAppLink, getDashboardAppLink */
1429
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1430
+
1431
+ "use strict";
1432
+ __webpack_require__.r(__webpack_exports__);
1433
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getClassificationAppLink", function() { return getClassificationAppLink; });
1434
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPlaylistAppLink", function() { return getPlaylistAppLink; });
1435
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDashboardAppLink", function() { return getDashboardAppLink; });
1436
+ /* harmony import */ var _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../libs/common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
1437
+ /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
1438
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
1439
+
1440
+
1441
+
1442
+ var getClassificationAppLink = function getClassificationAppLink(params) {
1443
+ return function (classification) {
1444
+ return {
1445
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_1__["AppChannels"].SUBJECT,
1446
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_2__["Actions"].Subjects.CLASSIFICATION,
1447
+ args: classification ? [classification.id, _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_0__["TextHelper"].slugify(classification.name)] : [],
1448
+ params: params ? params : {}
1449
+ };
1450
+ };
1451
+ };
1452
+ var getPlaylistAppLink = function getPlaylistAppLink(playlist) {
1453
+ return {
1454
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_1__["AppChannels"].PLAYLISTS,
1455
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_2__["Actions"].Playlists.PLAYLIST,
1456
+ args: [playlist.id, _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_0__["TextHelper"].slugify(playlist.name)]
1457
+ };
1458
+ };
1459
+ var getDashboardAppLink = function getDashboardAppLink() {
1460
+ return {
1461
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_1__["AppChannels"].DASHBOARD,
1462
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_2__["Actions"].Dashboard.HOME
1463
+ };
1464
+ };
1465
+
1466
+ /***/ }),
1467
+
1468
+ /***/ "./src/apps/subjects/views/classification/ClassificationView.tsx":
1469
+ /*!***********************************************************************!*\
1470
+ !*** ./src/apps/subjects/views/classification/ClassificationView.tsx ***!
1471
+ \***********************************************************************/
1472
+ /*! exports provided: getBannerActions, ClassificationView */
1473
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1474
+
1475
+ "use strict";
1476
+ __webpack_require__.r(__webpack_exports__);
1477
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getBannerActions", function() { return getBannerActions; });
1478
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ClassificationView", function() { return ClassificationView; });
1479
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
1480
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1481
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-redux */ "react-redux");
1482
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
1483
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
1484
+ /* harmony import */ var _libs_common_src_backbone__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone */ "../../libs/common/src/backbone/index.ts");
1485
+ /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
1486
+ /* harmony import */ var _libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react/utils/ObjectHelper */ "../../libs/common/src/react/utils/ObjectHelper.ts");
1487
+ /* harmony import */ var _libs_common_src_backbone_enums_HttpStatus__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/enums/HttpStatus */ "../../libs/common/src/backbone/enums/HttpStatus.ts");
1488
+ /* harmony import */ var _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
1489
+ /* harmony import */ var _libs_common_src_react_hooks_UseSetPageTitle__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react/hooks/UseSetPageTitle */ "../../libs/common/src/react/hooks/UseSetPageTitle.ts");
1490
+ /* harmony import */ var _libs_shared_src_interfaces__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/interfaces */ "../../libs/shared/src/interfaces/index.ts");
1491
+ /* harmony import */ var _libs_shared_src_components_banner_header_BannerHeader__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/banner-header/BannerHeader */ "../../libs/shared/src/components/banner-header/BannerHeader.tsx");
1492
+ /* harmony import */ var _libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/breadcrumbs/Breadcrumbs */ "../../libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx");
1493
+ /* harmony import */ var _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
1494
+ /* harmony import */ var _libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/ConfigRequests */ "../../libs/shared/src/flight-requests/ConfigRequests.ts");
1495
+ /* harmony import */ var _libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/UserRequests */ "../../libs/shared/src/flight-requests/UserRequests.ts");
1496
+ /* harmony import */ var _libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/ClassificationRequests */ "../../libs/shared/src/flight-requests/ClassificationRequests.ts");
1497
+ /* harmony import */ var _libs_shared_src_flight_requests_FollowRequests__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/FollowRequests */ "../../libs/shared/src/flight-requests/FollowRequests.ts");
1498
+ /* harmony import */ var _libs_shared_src_flight_requests_AudienceRequests__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/flight-requests/AudienceRequests */ "../../libs/shared/src/flight-requests/AudienceRequests.ts");
1499
+ /* harmony import */ var _libs_shared_src_enums_WidgetContents__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/enums/WidgetContents */ "../../libs/shared/src/enums/WidgetContents.ts");
1500
+ /* harmony import */ var _libs_shared_src_hooks_useQueryString__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/useQueryString */ "../../libs/shared/src/hooks/useQueryString.tsx");
1501
+ /* harmony import */ var _libs_shared_src_apps_playlists_components_playlist_list__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/playlists/components/playlist-list */ "../../libs/shared/src/apps/playlists/components/playlist-list/index.ts");
1502
+ /* harmony import */ var _libs_shared_src_apps_subjects_hooks_useAudienceParams__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/subjects/hooks/useAudienceParams */ "../../libs/shared/src/apps/subjects/hooks/useAudienceParams.tsx");
1503
+ /* harmony import */ var _libs_shared_src_apps_subjects_reducers_AudienceReducer__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/subjects/reducers/AudienceReducer */ "../../libs/shared/src/apps/subjects/reducers/AudienceReducer.ts");
1504
+ /* harmony import */ var _libs_shared_src_apps_subjects_components_audience_filter_AudienceFilter__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/subjects/components/audience-filter/AudienceFilter */ "../../libs/shared/src/apps/subjects/components/audience-filter/AudienceFilter.tsx");
1505
+ /* harmony import */ var _libs_shared_src_apps_subjects_components_coming_soon_ComingSoon__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/subjects/components/coming-soon/ComingSoon */ "../../libs/shared/src/apps/subjects/components/coming-soon/ComingSoon.tsx");
1506
+ /* harmony import */ var _libs_shared_src_apps_subjects_components_classification_list_ClassificationList__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/subjects/components/classification-list/ClassificationList */ "../../libs/shared/src/apps/subjects/components/classification-list/ClassificationList.tsx");
1507
+ /* harmony import */ var _libs_shared_src_apps_subjects_components_hero_video_HeroVideo__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/apps/subjects/components/hero-video/HeroVideo */ "../../libs/shared/src/apps/subjects/components/hero-video/HeroVideo.tsx");
1508
+ /* harmony import */ var _libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/widgets/fixed-widget */ "../../libs/shared/src/components/widgets/fixed-widget/index.ts");
1509
+ /* harmony import */ var _libs_shared_src_components_widgets_dynamic_widget_DynamicWidget__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/widgets/dynamic-widget/DynamicWidget */ "../../libs/shared/src/components/widgets/dynamic-widget/DynamicWidget.tsx");
1510
+ /* harmony import */ var _libs_shared_src_components_widgets_items_video_widget_item_VideoWidgetItem__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/widgets/items/video-widget-item/VideoWidgetItem */ "../../libs/shared/src/components/widgets/items/video-widget-item/VideoWidgetItem.tsx");
1511
+ /* harmony import */ var _libs_shared_src_components_widgets_items_subject_widget_item_SubjectWidgetItem__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/widgets/items/subject-widget-item/SubjectWidgetItem */ "../../libs/shared/src/components/widgets/items/subject-widget-item/SubjectWidgetItem.tsx");
1512
+ /* harmony import */ var _libs_shared_src_components_widgets_items_series_widget_item__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/widgets/items/series-widget-item */ "../../libs/shared/src/components/widgets/items/series-widget-item/index.ts");
1513
+ /* harmony import */ var _libs_shared_src_utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/AudienceHelper */ "../../libs/shared/src/utils/AudienceHelper.ts");
1514
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
1515
+ /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
1516
+ /* harmony import */ var shared_errors_general_not_found_LiteNotFoundError__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! shared/errors/general/not-found/LiteNotFoundError */ "./src/shared/errors/general/not-found/LiteNotFoundError.ts");
1517
+ /* harmony import */ var apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! apps/subjects/utils/ClassificationAppLinks */ "./src/apps/subjects/utils/ClassificationAppLinks.ts");
1518
+ /* harmony import */ var _ClassificationViewUtils__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./ClassificationViewUtils */ "./src/apps/subjects/views/classification/ClassificationViewUtils.ts");
201
1519
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
202
1520
 
203
1521
  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."); }
@@ -217,121 +1535,406 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
217
1535
 
218
1536
 
219
1537
 
220
- var BreadcrumbType;
221
1538
 
222
- (function (BreadcrumbType) {
223
- BreadcrumbType[BreadcrumbType["Static"] = 0] = "Static";
224
- BreadcrumbType[BreadcrumbType["Dynamic"] = 1] = "Dynamic";
225
- })(BreadcrumbType || (BreadcrumbType = {}));
226
1539
 
227
- function buildBreadcrumb(item, getItemAppLink, active) {
228
- return {
229
- label: item.name,
230
- appLink: getItemAppLink(item),
231
- active: active
232
- };
1540
+
1541
+
1542
+
1543
+
1544
+
1545
+
1546
+
1547
+
1548
+
1549
+
1550
+
1551
+
1552
+
1553
+
1554
+
1555
+
1556
+
1557
+
1558
+
1559
+
1560
+
1561
+
1562
+
1563
+
1564
+
1565
+
1566
+
1567
+
1568
+
1569
+ var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__["LanguageService"].encloseNamespace('subjects.classification');
1570
+ function getBannerActions(classification, onFollow, showFollowButtonSpinner) {
1571
+ var _a, _b;
1572
+
1573
+ var isFollowing = !!((_b = (_a = classification.followers) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length);
1574
+ return [{
1575
+ label: getPhrase(isFollowing ? 'unfollow' : 'follow'),
1576
+ onClick: onFollow,
1577
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_12__["cvSvgLibrary"].Bell,
1578
+ className: "btn follow-btn ".concat(isFollowing ? 'btn-dark' : 'btn-light'),
1579
+ button: true,
1580
+ tooltip: isFollowing ? undefined : getPhrase('followBtnTooltip'),
1581
+ showSpinner: showFollowButtonSpinner
1582
+ }, {
1583
+ label: getPhrase('share'),
1584
+ appLink: {
1585
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_34__["AppChannels"].DEFAULT,
1586
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_33__["Actions"].Default.SHARE,
1587
+ args: [classification.id],
1588
+ params: {
1589
+ entityType: 'subject'
1590
+ }
1591
+ },
1592
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_12__["cvSvgLibrary"].Share,
1593
+ className: 'btn btn-light',
1594
+ button: true
1595
+ }];
233
1596
  }
1597
+ function ClassificationView(_ref) {
1598
+ var id = _ref.id,
1599
+ queryParams = _ref.queryParams;
234
1600
 
235
- function useGetBreadcrumbs(props, isDynamic) {
236
- var _a;
1601
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
237
1602
 
238
- var currentItem = props.currentItem,
239
- getItemAppLink = props.getItemAppLink,
240
- getParent = props.getParent,
241
- rootItem = props.rootItem,
242
- data = props.data,
243
- subview = props.subview;
1603
+ var _React$useReducer = react__WEBPACK_IMPORTED_MODULE_0__["useReducer"](_libs_shared_src_apps_subjects_reducers_AudienceReducer__WEBPACK_IMPORTED_MODULE_22__["AudienceReducer"], {}),
1604
+ _React$useReducer2 = _slicedToArray(_React$useReducer, 2),
1605
+ activeAudiences = _React$useReducer2[0],
1606
+ audienceDispatch = _React$useReducer2[1];
244
1607
 
245
- var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])([]),
246
- _useState2 = _slicedToArray(_useState, 2),
247
- breadcrumbs = _useState2[0],
248
- setBreadcrumbs = _useState2[1];
1608
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](),
1609
+ _React$useState2 = _slicedToArray(_React$useState, 2),
1610
+ showFollowButtonSpinner = _React$useState2[0],
1611
+ setShowFollowButtonSpinner = _React$useState2[1];
249
1612
 
250
- var key = (_a = data) === null || _a === void 0 ? void 0 : _a.map(function (o) {
251
- var _a;
1613
+ var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_0__["useState"](false),
1614
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
1615
+ enableAudienceFilters = _React$useState4[0],
1616
+ setEnableAudienceFilters = _React$useState4[1];
1617
+
1618
+ var dispatch = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["useDispatch"])();
252
1619
 
253
- return (_a = o) === null || _a === void 0 ? void 0 : _a.name;
254
- }).join('-'); // Uss static/pre-defined array of data to build the breadcrumb structure
1620
+ var onClassificationError = function onClassificationError(xhr) {
1621
+ // TODO: When Kev fixes domain to 404 instead of 400, remove the BadRequest here
1622
+ if (xhr.status === _libs_common_src_backbone_enums_HttpStatus__WEBPACK_IMPORTED_MODULE_6__["HttpStatus"].BadRequest || xhr.status === _libs_common_src_backbone_enums_HttpStatus__WEBPACK_IMPORTED_MODULE_6__["HttpStatus"].NotFound) _libs_common_src_backbone__WEBPACK_IMPORTED_MODULE_3__["Core"].ErrorHelper["throw"](new shared_errors_general_not_found_LiteNotFoundError__WEBPACK_IMPORTED_MODULE_35__["NotFoundError"]());
1623
+ };
1624
+ /**
1625
+ * Data fetching
1626
+ */
1627
+
1628
+
1629
+ var currentUser = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_UserRequests__WEBPACK_IMPORTED_MODULE_14__["UserRequests"].currentUser(), {
1630
+ optimize: true
1631
+ });
1632
+ var config = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_13__["ConfigRequests"].config, {
1633
+ optimize: true
1634
+ });
1635
+ var presentation = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].presentation(), {
1636
+ optimize: true
1637
+ });
1638
+ var audiences = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_AudienceRequests__WEBPACK_IMPORTED_MODULE_17__["AudienceRequests"].presentationAudiences(), {
1639
+ optimize: true
1640
+ });
1641
+ var classification = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(((_a = currentUser.data) === null || _a === void 0 ? void 0 : _a.id) && _libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].classification(id, (_b = currentUser.data) === null || _b === void 0 ? void 0 : _b.id, onClassificationError), {
1642
+ optimize: true
1643
+ });
1644
+ var path = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].path(id), {
1645
+ optimize: true
1646
+ });
1647
+ var children = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].children(id), {
1648
+ optimize: true
1649
+ });
1650
+ Object(_libs_common_src_react_hooks_UseSetPageTitle__WEBPACK_IMPORTED_MODULE_8__["useSetPageTitle"])((_c = classification.data) === null || _c === void 0 ? void 0 : _c.name);
1651
+ /**
1652
+ * We use the current active audiences to re-fetch content for that specific audience set.
1653
+ */
1654
+
1655
+ var activeAudienceIds = _libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_5__["ObjectHelper"].keys(activeAudiences);
1656
+ var activeAudienceValues = _libs_common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_5__["ObjectHelper"].values(activeAudiences);
1657
+ /**
1658
+ * Where we have no active audiences, we want to implicitly set the active audiences to be all audiences.
1659
+ * This ensure that we only fetch data that is relevant to the user's current audience set.
1660
+ */
1661
+
1662
+ if (!activeAudienceIds || !activeAudienceIds.length) activeAudienceIds = [];
1663
+ var presentationId = (_e = (_d = presentation) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.id;
1664
+ var seriesRequest = _libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].series(id, presentationId, activeAudienceIds);
1665
+ var playlistsRequest = _libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].playlists(id, presentationId, activeAudienceIds);
1666
+ var videosRequest = _libs_shared_src_flight_requests_ClassificationRequests__WEBPACK_IMPORTED_MODULE_15__["ClassificationRequests"].videos(id, presentationId, activeAudienceIds);
1667
+ var series = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useGetResponse(seriesRequest && seriesRequest.key);
1668
+ var playlists = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useGetResponse(playlistsRequest && playlistsRequest.key);
1669
+ var videos = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useGetResponse(videosRequest && videosRequest.key);
1670
+ var fetchSeries = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useGetFetch(seriesRequest);
1671
+ var fetchPlaylists = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useGetFetch(playlistsRequest);
1672
+ var fetchVideos = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].useGetFetch(videosRequest);
1673
+ var fetchKey = activeAudienceIds.length ? activeAudienceIds.join(':') : presentationId;
1674
+ /**
1675
+ * Only fire off fetches where our fetchKey differs to the previous render (after modifying a filter).
1676
+ */
255
1677
 
256
1678
  react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
257
- if (isDynamic || _common_src_react_utils_ObjectHelper__WEBPACK_IMPORTED_MODULE_2__["ObjectHelper"].isEmpty(data)) return;
1679
+ if (!presentationId) return;
1680
+ fetchSeries();
1681
+ fetchPlaylists();
1682
+ fetchVideos();
1683
+ }, [fetchKey]);
1684
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
1685
+ if (enableAudienceFilters) return;
258
1686
 
259
- var _breadcrumbs = data.map(function (d, index) {
260
- return buildBreadcrumb(d, getItemAppLink, index + 1 === data.length);
261
- });
1687
+ if (!classification.data) {
1688
+ setEnableAudienceFilters(false);
1689
+ return;
1690
+ }
1691
+
1692
+ setEnableAudienceFilters(!!classification.data.series.count || !!classification.data.playlists.count || !!classification.data.videos.count);
1693
+ }, [classification.data]);
1694
+ /**
1695
+ * Following
1696
+ */
262
1697
 
263
- if (rootItem) _breadcrumbs.unshift(rootItem);
264
- setBreadcrumbs(_breadcrumbs);
265
- }, [key]); // Dynamically build the breadcrumb structure
1698
+ function onToggleFollow() {
1699
+ var _a, _b;
1700
+
1701
+ setShowFollowButtonSpinner(true);
1702
+ var request = ((_b = (_a = classification.data.followers) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length) ? _libs_shared_src_flight_requests_FollowRequests__WEBPACK_IMPORTED_MODULE_16__["FollowRequests"].unfollow : _libs_shared_src_flight_requests_FollowRequests__WEBPACK_IMPORTED_MODULE_16__["FollowRequests"].follow;
1703
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_4__["Flight"].fetch(dispatch, request([classification.data.id]));
1704
+ }
266
1705
 
267
1706
  react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
268
- if (!isDynamic || !_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__["FunctionHelper"].isFunction(getParent)) return;
269
- var _breadcrumbs = [buildBreadcrumb(currentItem, getItemAppLink, true)];
270
- currentItem = getParent(currentItem);
1707
+ setShowFollowButtonSpinner(false);
1708
+ }, [(_h = (_g = (_f = classification.data) === null || _f === void 0 ? void 0 : _f.followers) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h.length]);
1709
+ /**
1710
+ * Where our selected presentation audiences change, always update the URL
1711
+ */
1712
+
1713
+ Object(_libs_shared_src_hooks_useQueryString__WEBPACK_IMPORTED_MODULE_19__["useSetQueryString"])({
1714
+ appLink: Object(apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__["getClassificationAppLink"])()(classification.data),
1715
+ paramBuilder: function paramBuilder() {
1716
+ return {
1717
+ a: activeAudienceValues.map(function (v) {
1718
+ return v.name;
1719
+ })
1720
+ };
1721
+ },
1722
+ isValid: function isValid() {
1723
+ var _a;
1724
+
1725
+ return !!((_a = classification.data) === null || _a === void 0 ? void 0 : _a.id);
1726
+ },
1727
+ appLinkOptions: {
1728
+ replace: true
1729
+ }
1730
+ }, [activeAudienceValues.length]);
1731
+ /**
1732
+ * On page load, we will parse the querystring and automatically
1733
+ * select any applicable presentation audiences. This should only be performed
1734
+ * once we have access to the audience data for the selected classification.
1735
+ */
1736
+
1737
+ var shouldParseParams = !!(audiences.data && audiences.data.length);
1738
+ Object(_libs_shared_src_apps_subjects_hooks_useAudienceParams__WEBPACK_IMPORTED_MODULE_21__["useParseAudienceParams"])(queryParams, audiences.data, audienceDispatch, [shouldParseParams]);
1739
+ /**
1740
+ * Render Variables
1741
+ */
1742
+
1743
+ var bannerDataLoaded = !!classification.data && !!config.data;
1744
+ var breadcrumbsDataLoaded = !!classification.data && !!path.data;
1745
+ var childrenDataLoaded = !!children.data;
1746
+ var audienceDataLoaded = !!audiences.data;
1747
+ var playlistsDataLoaded = !!classification.data && !!playlists.data;
1748
+ var videosDataLoaded = !!classification.data && !!videos.data;
1749
+ var seriesDataLoaded = !!classification.data && !!series.data && !!audiences.data;
1750
+ /**
1751
+ * Hero Video logic
1752
+ */
1753
+
1754
+ var _extractHeroVideo = Object(_ClassificationViewUtils__WEBPACK_IMPORTED_MODULE_37__["extractHeroVideo"])(series.data, playlists.data, videos.data, classification.data),
1755
+ heroVideo = _extractHeroVideo.heroVideo,
1756
+ videoList = _extractHeroVideo.videoList;
1757
+
1758
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1759
+ className: 'bg-white px-3'
1760
+ }, bannerDataLoaded ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_banner_header_BannerHeader__WEBPACK_IMPORTED_MODULE_10__["BannerHeader"], {
1761
+ heading: classification.data.name,
1762
+ banner: classification.data.banner,
1763
+ imageCdnUrl: config.data.imageCdnUrl,
1764
+ actions: !((_j = classification.data) === null || _j === void 0 ? void 0 : _j.comingSoon) ? getBannerActions(classification.data, onToggleFollow, showFollowButtonSpinner) : []
1765
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_banner_header_BannerHeader__WEBPACK_IMPORTED_MODULE_10__["PartialBannerHeader"], null), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1766
+ className: 'px-3'
1767
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1768
+ className: "py-3 mb-3 ".concat(!((_k = classification.data) === null || _k === void 0 ? void 0 : _k.comingSoon) ? 'border-bottom' : '')
1769
+ }, breadcrumbsDataLoaded ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_11__["Breadcrumbs"], {
1770
+ currentItem: classification.data,
1771
+ type: _libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_11__["BreadcrumbType"].Static,
1772
+ getItemAppLink: Object(apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__["getClassificationAppLink"])(),
1773
+ data: path.data,
1774
+ rootItem: {
1775
+ label: getPhrase('dashboard'),
1776
+ appLink: Object(apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__["getDashboardAppLink"])()
1777
+ }
1778
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_breadcrumbs_Breadcrumbs__WEBPACK_IMPORTED_MODULE_11__["PartialBreadcrumbs"], null), !((_l = classification.data) === null || _l === void 0 ? void 0 : _l.comingSoon) && (audienceDataLoaded && playlistsDataLoaded && seriesDataLoaded && videosDataLoaded ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_subjects_components_audience_filter_AudienceFilter__WEBPACK_IMPORTED_MODULE_23__["AudienceFilter"], {
1779
+ audiences: audiences.data,
1780
+ activeAudiences: activeAudiences,
1781
+ setAudience: audienceDispatch,
1782
+ disabled: !enableAudienceFilters
1783
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_subjects_components_audience_filter_AudienceFilter__WEBPACK_IMPORTED_MODULE_23__["PartialAudienceFilter"], null)))), !!config.data && !!((_m = classification.data) === null || _m === void 0 ? void 0 : _m.comingSoon) ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_subjects_components_coming_soon_ComingSoon__WEBPACK_IMPORTED_MODULE_24__["ComingSoon"], {
1784
+ data: classification.data,
1785
+ imageCdnUrl: config.data.imageCdnUrl,
1786
+ onToggleFollow: onToggleFollow
1787
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1788
+ className: 'overflow-hidden-x px-3'
1789
+ }, function () {
1790
+ var _a;
271
1791
 
272
- while (currentItem) {
273
- _breadcrumbs.unshift(buildBreadcrumb(currentItem, getItemAppLink));
1792
+ if (!childrenDataLoaded || !playlistsDataLoaded || !seriesDataLoaded || !videosDataLoaded) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_dynamic_widget_DynamicWidget__WEBPACK_IMPORTED_MODULE_28__["PartialDynamicWidget"], null);
1793
+ if (!((_a = children.data) === null || _a === void 0 ? void 0 : _a.length)) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
1794
+
1795
+ if (Object(_ClassificationViewUtils__WEBPACK_IMPORTED_MODULE_37__["hasMembers"])(playlists.data, series.data, videos.data) || heroVideo) {
1796
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1797
+ className: 'pb-3 mx-n1'
1798
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_dynamic_widget_DynamicWidget__WEBPACK_IMPORTED_MODULE_28__["DynamicWidget"], {
1799
+ collection: children.data,
1800
+ childAppLink: Object(apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__["getClassificationAppLink"])()(),
1801
+ childComponent: _libs_shared_src_components_widgets_items_subject_widget_item_SubjectWidgetItem__WEBPACK_IMPORTED_MODULE_30__["SubjectWidgetItem"],
1802
+ headingPhraseKey: 'topics'
1803
+ }));
1804
+ }
274
1805
 
275
- currentItem = getParent(currentItem);
1806
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1807
+ className: 'mx-n2'
1808
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_subjects_components_classification_list_ClassificationList__WEBPACK_IMPORTED_MODULE_25__["ClassificationList"], {
1809
+ classifications: children.data,
1810
+ getItemAppLink: Object(apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__["getClassificationAppLink"])()
1811
+ }));
1812
+ }(), seriesDataLoaded && playlistsDataLoaded && videosDataLoaded && audienceDataLoaded ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_subjects_components_hero_video_HeroVideo__WEBPACK_IMPORTED_MODULE_26__["HeroVideo"], {
1813
+ video: heroVideo,
1814
+ presentationAudiences: audiences.data,
1815
+ videoAppLink: {
1816
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_34__["AppChannels"].DEFAULT,
1817
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_33__["Actions"].Default.PLAY_VIDEO,
1818
+ args: [(_o = heroVideo) === null || _o === void 0 ? void 0 : _o.id, _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_7__["TextHelper"].slugify((_p = heroVideo) === null || _p === void 0 ? void 0 : _p.name)],
1819
+ params: ((_q = heroVideo) === null || _q === void 0 ? void 0 : _q.lastProgressPoint) ? {
1820
+ t: Math.floor(heroVideo.lastProgressPoint)
1821
+ } : {}
1822
+ },
1823
+ seriesAppLink: {
1824
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_34__["AppChannels"].DEFAULT,
1825
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_33__["Actions"].Default.SERIES,
1826
+ args: ((_r = heroVideo) === null || _r === void 0 ? void 0 : _r.series) ? [heroVideo.series.id, _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_7__["TextHelper"].slugify(heroVideo.series.name)] : []
276
1827
  }
1828
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_subjects_components_hero_video_HeroVideo__WEBPACK_IMPORTED_MODULE_26__["PartialHeroVideo"], null), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", null, function () {
1829
+ var _a, _b;
1830
+
1831
+ if (!playlistsDataLoaded || !audienceDataLoaded) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1832
+ className: 'pb-3'
1833
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_playlists_components_playlist_list__WEBPACK_IMPORTED_MODULE_20__["PartialPlaylistList"], {
1834
+ showHeading: true,
1835
+ itemClassName: 'columns-of-five'
1836
+ }));
1837
+ if (!((_b = (_a = playlists.data) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length)) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
1838
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1839
+ className: 'pb-2'
1840
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h4", null, getPhrase('playlists')), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_apps_playlists_components_playlist_list__WEBPACK_IMPORTED_MODULE_20__["PlaylistList"], {
1841
+ playlists: _libs_shared_src_utils_AudienceHelper__WEBPACK_IMPORTED_MODULE_32__["AudienceHelper"].sortMembersWithDuplicateNamesByAudience(playlists.data.data),
1842
+ getPlaylistAppLink: apps_subjects_utils_ClassificationAppLinks__WEBPACK_IMPORTED_MODULE_36__["getPlaylistAppLink"],
1843
+ presentationAudiences: audiences.data,
1844
+ itemContainerClassName: 'columns-of-five',
1845
+ showFallbackImage: true
1846
+ }));
1847
+ }(), videosDataLoaded ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_27__["FixedWidget"], {
1848
+ name: getPhrase('popular'),
1849
+ type: _libs_shared_src_interfaces__WEBPACK_IMPORTED_MODULE_9__["WidgetType"].LargeRow,
1850
+ contents: _libs_shared_src_enums_WidgetContents__WEBPACK_IMPORTED_MODULE_18__["WidgetContents"].Videos,
1851
+ collection: videoList,
1852
+ childComponent: _libs_shared_src_components_widgets_items_video_widget_item_VideoWidgetItem__WEBPACK_IMPORTED_MODULE_29__["VideoWidgetItem"],
1853
+ childAppLink: {
1854
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_34__["AppChannels"].DEFAULT,
1855
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_33__["Actions"].Default.PLAY_VIDEO
1856
+ },
1857
+ prefetched: true
1858
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_27__["PartialFixedWidget"], {
1859
+ type: _libs_shared_src_interfaces__WEBPACK_IMPORTED_MODULE_9__["WidgetType"].LargeRow
1860
+ }), seriesDataLoaded ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_27__["FixedWidget"], {
1861
+ name: getPhrase('series'),
1862
+ type: _libs_shared_src_interfaces__WEBPACK_IMPORTED_MODULE_9__["WidgetType"].Row,
1863
+ contents: _libs_shared_src_enums_WidgetContents__WEBPACK_IMPORTED_MODULE_18__["WidgetContents"].Series,
1864
+ collection: series.data,
1865
+ setData: function setData(seriesCollection) {
1866
+ return seriesCollection.data;
1867
+ },
1868
+ childComponent: function childComponent(props) {
1869
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_items_series_widget_item__WEBPACK_IMPORTED_MODULE_31__["SeriesWidgetItem"], Object.assign({
1870
+ audiences: audiences.data
1871
+ }, props));
1872
+ },
1873
+ childAppLink: {
1874
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_34__["AppChannels"].DEFAULT,
1875
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_33__["Actions"].Default.SERIES
1876
+ },
1877
+ prefetched: true
1878
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_widgets_items_series_widget_item__WEBPACK_IMPORTED_MODULE_31__["PartialSeriesList"], null))));
1879
+ }
1880
+
1881
+ /***/ }),
277
1882
 
278
- if (rootItem) _breadcrumbs.unshift(rootItem);
279
- return setBreadcrumbs(_breadcrumbs);
280
- }, [currentItem, getParent, getItemAppLink, rootItem]);
1883
+ /***/ "./src/apps/subjects/views/classification/ClassificationViewUtils.ts":
1884
+ /*!***************************************************************************!*\
1885
+ !*** ./src/apps/subjects/views/classification/ClassificationViewUtils.ts ***!
1886
+ \***************************************************************************/
1887
+ /*! exports provided: hasMembers, extractHeroVideo */
1888
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
281
1889
 
282
- var _React$useRef = react__WEBPACK_IMPORTED_MODULE_0__["useRef"]({
283
- label: subview,
284
- appLink: null,
285
- active: true
286
- }),
287
- subviewBreadcrumb = _React$useRef.current; // Replace "active" item with the subview
1890
+ "use strict";
1891
+ __webpack_require__.r(__webpack_exports__);
1892
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hasMembers", function() { return hasMembers; });
1893
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "extractHeroVideo", function() { return extractHeroVideo; });
1894
+ /* 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");
288
1895
 
1896
+ /**
1897
+ * Member helpers
1898
+ */
289
1899
 
290
- if (subview) {
291
- if (!breadcrumbs.includes(subviewBreadcrumb)) setBreadcrumbs([].concat(_toConsumableArray(breadcrumbs), [subviewBreadcrumb]));
292
- var selectedBreadcrumb = breadcrumbs.filter(function (crumb) {
293
- return crumb.active && crumb !== subviewBreadcrumb;
294
- });
295
- if (selectedBreadcrumb.length) _common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_3__["ArrayHelper"].first(selectedBreadcrumb).active = false;
1900
+ function hasMembers(playlists) {
1901
+ if (playlists.data.length) return true;
1902
+
1903
+ for (var _len = arguments.length, DynamicWidgetCollections = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1904
+ DynamicWidgetCollections[_key - 1] = arguments[_key];
296
1905
  }
297
1906
 
298
- return breadcrumbs;
1907
+ return DynamicWidgetCollections.some(function (c) {
1908
+ return !!c.data.length;
1909
+ });
299
1910
  }
1911
+ function extractHeroVideo(series, playlists, videos, classification) {
1912
+ if (!series || !playlists || !videos || !classification) return {
1913
+ heroVideo: null,
1914
+ videoList: videos && videos.data
1915
+ }; // If the subject has no series/playlists, and has only 1 video, that video is displayed as the hero.
1916
+
1917
+ if (!series.data.length && !playlists.data.length && videos.data.length === 1) {
1918
+ return {
1919
+ heroVideo: _libs_common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_0__["ArrayHelper"].first(videos.data),
1920
+ videoList: []
1921
+ };
1922
+ }
300
1923
 
301
- function Breadcrumbs(props) {
302
- var type = props.type;
303
- var isDynamic = type === BreadcrumbType.Dynamic;
304
- var breadcrumbs = useGetBreadcrumbs(props, isDynamic);
305
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("nav", {
306
- "aria-label": 'breadcrumb'
307
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_BreadcrumbList__WEBPACK_IMPORTED_MODULE_5__["BreadcrumbList"], {
308
- breadcrumbs: breadcrumbs
309
- }));
1924
+ var pinnedVideoIndex = videos.data.findIndex(function (video) {
1925
+ return video.id === classification.pinnedVideoMasterId;
1926
+ });
1927
+ if (pinnedVideoIndex === -1) return {
1928
+ heroVideo: null,
1929
+ videoList: videos.data
1930
+ };
1931
+ return {
1932
+ heroVideo: videos.data[pinnedVideoIndex],
1933
+ videoList: videos.data.filter(function (vid) {
1934
+ return vid.id !== classification.pinnedVideoMasterId;
1935
+ })
1936
+ };
310
1937
  }
311
- var PARTIAL_BREADCRUMB_ITEMS = _utils_PartialLoadingHelper__WEBPACK_IMPORTED_MODULE_4__["PartialLoadingHelper"].getPartialLoadingItems({
312
- numItems: 3
313
- });
314
- var PartialBreadcrumbs = function PartialBreadcrumbs() {
315
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("nav", {
316
- "aria-label": 'breadcrumb'
317
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("ol", {
318
- className: 'breadcrumb m-0 p-0'
319
- }, PARTIAL_BREADCRUMB_ITEMS.map(function (_ref, idx) {
320
- var width = _ref.width;
321
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("li", {
322
- key: idx,
323
- className: 'breadcrumb-item'
324
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
325
- className: 'd-inline-block partial-loading-background',
326
- style: {
327
- width: width
328
- },
329
- dangerouslySetInnerHTML: {
330
- __html: '&nbsp'
331
- }
332
- }));
333
- })));
334
- };
335
1938
 
336
1939
  /***/ })
337
1940