@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,76 +1,532 @@
1
1
  (window["webpackJsonp_clickview_lite"] = window["webpackJsonp_clickview_lite"] || []).push([[12],{
2
2
 
3
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/footer/PreferenceFooter.tsx":
4
- /*!**********************************************************************************************************************************!*\
5
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/footer/PreferenceFooter.tsx ***!
6
- \**********************************************************************************************************************************/
7
- /*! exports provided: PreferenceFooter */
3
+ /***/ "../../libs/shared/src/components/actions/ActionButton.tsx":
4
+ /*!*****************************************************************************************************!*\
5
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/ActionButton.tsx ***!
6
+ \*****************************************************************************************************/
7
+ /*! exports provided: ActionButton */
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__, "PreferenceFooter", function() { return PreferenceFooter; });
12
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ActionButton", function() { return ActionButton; });
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 _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
16
- /* harmony import */ var _hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../hooks/UseGetMediaQueryString */ "../../libs/shared/src/hooks/UseGetMediaQueryString.ts");
17
- /* harmony import */ var _preference_footer_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./preference-footer.scss */ "../../libs/shared/src/apps/subjects/components/preferences/footer/preference-footer.scss");
18
- /* harmony import */ var _preference_footer_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_preference_footer_scss__WEBPACK_IMPORTED_MODULE_3__);
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 _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
18
+ /* harmony import */ var _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
19
+ /* harmony import */ var _icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../icon-button/IconButton */ "../../libs/shared/src/components/icon-button/IconButton.tsx");
20
+ /* harmony import */ var _tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../tooltip/Tooltip */ "../../libs/shared/src/components/tooltip/Tooltip.tsx");
21
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
19
22
 
20
23
 
21
24
 
22
25
 
23
- PreferenceFooter.defaultProps = {
24
- justify: 'between'
26
+
27
+
28
+
29
+ function ActionButton(props) {
30
+ var className = 'ml-2';
31
+ if (props.className) className += " ".concat(props.className);
32
+ var buttonContent = props.showSpinner ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Spinner"], {
33
+ as: 'span',
34
+ animation: 'border',
35
+ role: 'status',
36
+ size: 'sm'
37
+ }) : props.children;
38
+
39
+ if (props.tooltip) {
40
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_5__["Tooltip"], {
41
+ title: props.tooltip
42
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__["IconButton"], {
43
+ appLink: props.appLink,
44
+ svgName: props.svgName,
45
+ onClick: props.onClick,
46
+ className: className,
47
+ analyticsData: props.analyticsData,
48
+ analyticsOptions: props.analyticsOptions
49
+ }, buttonContent)));
50
+ }
51
+
52
+ if (props.svgName) {
53
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__["IconButton"], {
54
+ onClick: props.onClick,
55
+ appLink: props.appLink,
56
+ svgName: props.svgName,
57
+ className: className,
58
+ analyticsData: props.analyticsData,
59
+ analyticsOptions: props.analyticsOptions
60
+ }, buttonContent);
61
+ }
62
+
63
+ if (props.appLink) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_6__["AppLink"], {
64
+ onClick: props.onClick,
65
+ appLink: props.appLink,
66
+ className: className,
67
+ analyticsData: props.analyticsData,
68
+ analyticsOptions: props.analyticsOptions
69
+ }, buttonContent);
70
+
71
+ function onClickButton(e) {
72
+ if (props.analyticsData && props.analyticsOptions) _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__["AnalyticsHelper"].logUserAction(props.analyticsData, props.analyticsOptions);
73
+ if (_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].isFunction(props.onClick)) props.onClick(e);
74
+ }
75
+
76
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("button", {
77
+ onClick: onClickButton,
78
+ className: className
79
+ }, buttonContent);
80
+ }
81
+
82
+ /***/ }),
83
+
84
+ /***/ "../../libs/shared/src/components/actions/Actions.tsx":
85
+ /*!************************************************************************************************!*\
86
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/Actions.tsx ***!
87
+ \************************************************************************************************/
88
+ /*! exports provided: Actions */
89
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
90
+
91
+ "use strict";
92
+ __webpack_require__.r(__webpack_exports__);
93
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Actions", function() { return Actions; });
94
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
95
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
96
+ /* harmony import */ var _ActionsDropdown__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ActionsDropdown */ "../../libs/shared/src/components/actions/ActionsDropdown.tsx");
97
+ /* harmony import */ var _ActionButton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ActionButton */ "../../libs/shared/src/components/actions/ActionButton.tsx");
98
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./actions.scss */ "../../libs/shared/src/components/actions/actions.scss");
99
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_actions_scss__WEBPACK_IMPORTED_MODULE_3__);
100
+ /* harmony import */ var _icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../icon-button/IconButton */ "../../libs/shared/src/components/icon-button/IconButton.tsx");
101
+
102
+
103
+
104
+
105
+
106
+ function Actions(props) {
107
+ var buttonActions = [];
108
+ var moreActions = [];
109
+ props.actions.forEach(function (a) {
110
+ if (a.button) buttonActions.push(a);else moreActions.push(a);
111
+ });
112
+ var className = 'd-flex';
113
+ if (props.className) className += " ".concat(props.className);
114
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
115
+ className: className
116
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, !!buttonActions.length && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
117
+ className: _actions_scss__WEBPACK_IMPORTED_MODULE_3___default.a.buttonList
118
+ }, buttonActions.map(function (a, idx) {
119
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], {
120
+ key: idx
121
+ }, a.label ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_ActionButton__WEBPACK_IMPORTED_MODULE_2__["ActionButton"], {
122
+ appLink: a.appLink,
123
+ onClick: a.onClick,
124
+ svgName: a.svgName,
125
+ className: a.className,
126
+ tooltip: a.tooltip,
127
+ showSpinner: a.showSpinner,
128
+ analyticsData: a.analyticsData,
129
+ analyticsOptions: a.analyticsOptions
130
+ }, a.label) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_icon_button_IconButton__WEBPACK_IMPORTED_MODULE_4__["IconButton"], {
131
+ appLink: a.appLink,
132
+ onClick: a.onClick,
133
+ svgName: a.svgName,
134
+ className: a.className,
135
+ analyticsData: a.analyticsData,
136
+ analyticsOptions: a.analyticsOptions
137
+ }));
138
+ })), props.sortComponent ? props.sortComponent : '', !!moreActions.length && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_ActionsDropdown__WEBPACK_IMPORTED_MODULE_1__["ActionsDropdown"], {
139
+ actions: moreActions,
140
+ className: !!buttonActions.length && 'ml-2',
141
+ dropdownToggleClassName: props.actionsDropdownClassName
142
+ })));
143
+ }
144
+
145
+ /***/ }),
146
+
147
+ /***/ "../../libs/shared/src/components/actions/ActionsDropdown.tsx":
148
+ /*!********************************************************************************************************!*\
149
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/ActionsDropdown.tsx ***!
150
+ \********************************************************************************************************/
151
+ /*! exports provided: ActionsDropdown */
152
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
153
+
154
+ "use strict";
155
+ __webpack_require__.r(__webpack_exports__);
156
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ActionsDropdown", function() { return ActionsDropdown; });
157
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
158
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
159
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
160
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
161
+ /* 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");
162
+ /* harmony import */ var _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
163
+ /* harmony import */ var _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
164
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
165
+ /* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
166
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./actions.scss */ "../../libs/shared/src/components/actions/actions.scss");
167
+ /* harmony import */ var _actions_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_actions_scss__WEBPACK_IMPORTED_MODULE_7__);
168
+ /* 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");
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+ function getDropdownItemClassName(actionClassName) {
180
+ var className = 'dropdown-item';
181
+ if (actionClassName) className += " ".concat(actionClassName);
182
+ return className;
183
+ }
184
+
185
+ function ActionsDropdownItem(props) {
186
+ if (props.action.appLink) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_app_link_AppLink__WEBPACK_IMPORTED_MODULE_5__["AppLink"], {
187
+ appLink: props.action.appLink,
188
+ onClick: props.action.onClick,
189
+ className: getDropdownItemClassName(props.action.className),
190
+ analyticsData: props.action.analyticsData,
191
+ analyticsOptions: props.action.analyticsOptions
192
+ }, props.action.label);
193
+
194
+ function onClick(e) {
195
+ if (props.action.analyticsData && props.action.analyticsOptions) _analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_3__["AnalyticsHelper"].logUserAction(props.action.analyticsData, props.action.analyticsOptions);
196
+ if (_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_8__["FunctionHelper"].isFunction(props.action.onClick)) props.action.onClick(e);
197
+ }
198
+
199
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", {
200
+ className: "cursor-pointer ".concat(getDropdownItemClassName(props.action.className)),
201
+ onClick: onClick
202
+ }, props.action.label);
203
+ }
204
+
205
+ ActionsDropdown.defaultProps = {
206
+ dropdownToggleClassName: 'btn btn-light'
25
207
  };
26
- function PreferenceFooter(props) {
27
- var mediaQuery = Object(_hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_2__["useGetMediaQueryString"])();
28
- var widthClass = mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__["MediaQueryStrings"].SM || mediaQuery === _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_1__["MediaQueryStrings"].XS ? 'w-100' : 'w-75';
29
- var justifyClass = "justify-content-".concat(props.justify);
208
+ function ActionsDropdown(props) {
209
+ 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.
210
+
211
+ var dropdownToggleId = "actions-dropdown-".concat(_common_src_react_utils_RandomHelper__WEBPACK_IMPORTED_MODULE_2__["RandomHelper"].getRandomInt());
212
+ var dropdownToggleClassName = "px-0 ".concat(_actions_scss__WEBPACK_IMPORTED_MODULE_7___default.a.dropdownToggle);
213
+ if (props.dropdownToggleClassName) dropdownToggleClassName += " ".concat(props.dropdownToggleClassName);
214
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"], {
215
+ className: props.className ? props.className : '',
216
+ alignRight: true
217
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"].Toggle, {
218
+ as: 'button',
219
+ type: 'button',
220
+ id: dropdownToggleId,
221
+ className: dropdownToggleClassName
222
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_4__["SvgContainer"], {
223
+ svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__["cvSvgLibrary"].More,
224
+ size: _svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_4__["SvgContainerSize"].Small
225
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"].Menu, null, props.actions.map(function (a, idx) {
226
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](ActionsDropdownItem, {
227
+ key: idx,
228
+ action: a
229
+ });
230
+ })));
231
+ }
232
+
233
+ /***/ }),
234
+
235
+ /***/ "../../libs/shared/src/components/actions/actions.scss":
236
+ /*!*************************************************************************************************!*\
237
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/actions/actions.scss ***!
238
+ \*************************************************************************************************/
239
+ /*! no static exports found */
240
+ /***/ (function(module, exports, __webpack_require__) {
241
+
242
+ // extracted by mini-css-extract-plugin
243
+ module.exports = {"buttonList":"cv--buttonList--2v9CT","dropdownToggle":"cv--dropdownToggle--AYBvQ"};
244
+
245
+ /***/ }),
246
+
247
+ /***/ "../../libs/shared/src/components/curriculum-links/CurriculumLinks.tsx":
248
+ /*!*****************************************************************************************************************!*\
249
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/curriculum-links/CurriculumLinks.tsx ***!
250
+ \*****************************************************************************************************************/
251
+ /*! exports provided: CurriculumLinks */
252
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
253
+
254
+ "use strict";
255
+ __webpack_require__.r(__webpack_exports__);
256
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CurriculumLinks", function() { return CurriculumLinks; });
257
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
258
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
259
+ /* harmony import */ var react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-custom-scrollbars */ "react-custom-scrollbars");
260
+ /* harmony import */ var react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1__);
261
+ /* harmony import */ var _text_Text__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../text/Text */ "../../libs/shared/src/components/text/Text.tsx");
262
+ /* harmony import */ var _enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../enums/CurriculumType */ "../../libs/shared/src/enums/CurriculumType.ts");
263
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
264
+ /* harmony import */ var _curriculum_links_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./curriculum-links.scss */ "../../libs/shared/src/components/curriculum-links/curriculum-links.scss");
265
+ /* harmony import */ var _curriculum_links_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_curriculum_links_scss__WEBPACK_IMPORTED_MODULE_5__);
266
+ /* harmony import */ var _div_button_DivButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../div-button/DivButton */ "../../libs/shared/src/components/div-button/DivButton.tsx");
267
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
268
+
269
+
270
+
271
+
272
+
273
+
274
+
275
+
276
+ var namespace = 'shared.curriculumLinks';
277
+
278
+ function CurriculumLeaf(props) {
279
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_app_link_AppLink__WEBPACK_IMPORTED_MODULE_4__["AppLink"], {
280
+ appLink: null,
281
+ className: 'd-flex'
282
+ }, props.leaf.name && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h5", {
283
+ className: "".concat(_curriculum_links_scss__WEBPACK_IMPORTED_MODULE_5___default.a.curriculumCode, " align-self-start text-nowrap font-size-normal badge-pill tag py-1 px-2 my-0 mr-1")
284
+ }, props.leaf.name), props.leaf.description && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("p", {
285
+ className: 'm-0 align-self-center'
286
+ }, props.leaf.description));
287
+ }
288
+
289
+ function CurriculumSubject(props) {
290
+ var _structure;
291
+
292
+ var structure = (_structure = {}, _defineProperty(_structure, _enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Subject, null), _defineProperty(_structure, _enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Audience, null), _defineProperty(_structure, _enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Area, []), _defineProperty(_structure, _enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Leaf, []), _structure);
293
+ props.linkSet.forEach(function (curriculumObj) {
294
+ if (Array.isArray(structure[curriculumObj.type])) structure[curriculumObj.type].push(curriculumObj);else structure[curriculumObj.type] = curriculumObj;
295
+ });
296
+ var areaText = structure[_enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Area].map(function (ca) {
297
+ return ca.name;
298
+ }).join(' - ').toUpperCase();
299
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h3", {
300
+ className: 'font-size-normal font-weight-500 mb-2'
301
+ }, structure[_enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Audience].name, " - ", structure[_enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Subject].name), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
302
+ className: 'ml-1 mr-2'
303
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h4", {
304
+ className: "".concat(_curriculum_links_scss__WEBPACK_IMPORTED_MODULE_5___default.a.area, " text-muted mb-2 font-weight-normal")
305
+ }, areaText), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("ul", {
306
+ className: 'list-unstyled'
307
+ }, structure[_enums_CurriculumType__WEBPACK_IMPORTED_MODULE_3__["CurriculumType"].Leaf].map(function (leaf) {
308
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("li", {
309
+ key: leaf.id,
310
+ className: 'mb-2'
311
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(CurriculumLeaf, {
312
+ leaf: leaf
313
+ }));
314
+ }))));
315
+ }
316
+
317
+ function CurriculumLinks(props) {
318
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
319
+ className: 'rounded border p-3 mb-3'
320
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1___default.a, {
321
+ autoHeight: true,
322
+ autoHeightMax: props.height
323
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
324
+ className: 'mb-2 d-flex justify-content-between align-items-center'
325
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h2", {
326
+ className: 'h6 mb-0'
327
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_text_Text__WEBPACK_IMPORTED_MODULE_2__["Text"], {
328
+ namespace: namespace,
329
+ phrase: 'curriculumLinks'
330
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_div_button_DivButton__WEBPACK_IMPORTED_MODULE_6__["DivButton"], {
331
+ className: 'text-muted',
332
+ onClick: props.onClickSeeLess
333
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_text_Text__WEBPACK_IMPORTED_MODULE_2__["Text"], {
334
+ namespace: namespace,
335
+ phrase: 'seeLess'
336
+ }))), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("ul", {
337
+ className: 'list-unstyled m-0'
338
+ }, props.curriculumLinks.map(function (linkSet, i) {
339
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("li", {
340
+ key: "linkset-".concat(i),
341
+ className: _curriculum_links_scss__WEBPACK_IMPORTED_MODULE_5___default.a.curriculumSet
342
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(CurriculumSubject, {
343
+ linkSet: linkSet
344
+ }));
345
+ }))));
346
+ }
347
+
348
+ /***/ }),
349
+
350
+ /***/ "../../libs/shared/src/components/curriculum-links/curriculum-links.scss":
351
+ /*!*******************************************************************************************************************!*\
352
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/curriculum-links/curriculum-links.scss ***!
353
+ \*******************************************************************************************************************/
354
+ /*! no static exports found */
355
+ /***/ (function(module, exports, __webpack_require__) {
356
+
357
+ // extracted by mini-css-extract-plugin
358
+ module.exports = {"curriculumSet":"cv--curriculumSet--rYMeg","area":"cv--area--F-oQE","curriculumCode":"cv--curriculumCode--TOD1n"};
359
+
360
+ /***/ }),
361
+
362
+ /***/ "../../libs/shared/src/components/div-button/DivButton.tsx":
363
+ /*!*****************************************************************************************************!*\
364
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/div-button/DivButton.tsx ***!
365
+ \*****************************************************************************************************/
366
+ /*! exports provided: DivButton */
367
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
368
+
369
+ "use strict";
370
+ __webpack_require__.r(__webpack_exports__);
371
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DivButton", function() { return DivButton; });
372
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
373
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
374
+
375
+ /**
376
+ * This element lets us use `div` elements as buttons without losing the accessibility of
377
+ * a regular HTML button element
378
+ */
379
+
380
+ function DivButton(props) {
30
381
  return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
31
- className: "".concat(widthClass, " ").concat(justifyClass, " ").concat(_preference_footer_scss__WEBPACK_IMPORTED_MODULE_3___default.a.preferenceFooter, " d-flex px-3")
382
+ role: 'button',
383
+ tabIndex: 0,
384
+ className: "".concat(props.className ? props.className : '', " cursor-pointer"),
385
+ onKeyDown: function onKeyDown(e) {
386
+ return e.key === 'Enter' && props.onClick(e);
387
+ },
388
+ onClick: props.onClick,
389
+ style: props.style ? props.style : {}
32
390
  }, props.children);
33
391
  }
34
392
 
35
393
  /***/ }),
36
394
 
37
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/footer/preference-footer.scss":
38
- /*!************************************************************************************************************************************!*\
39
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/footer/preference-footer.scss ***!
40
- \************************************************************************************************************************************/
395
+ /***/ "../../libs/shared/src/components/tags/TagItem.tsx":
396
+ /*!*********************************************************************************************!*\
397
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/tags/TagItem.tsx ***!
398
+ \*********************************************************************************************/
399
+ /*! exports provided: TagItem */
400
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
401
+
402
+ "use strict";
403
+ __webpack_require__.r(__webpack_exports__);
404
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TagItem", function() { return TagItem; });
405
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
406
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
407
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
408
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tags.scss */ "../../libs/shared/src/components/tags/tags.scss");
409
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_tags_scss__WEBPACK_IMPORTED_MODULE_2__);
410
+
411
+
412
+
413
+ function TagItem(_ref) {
414
+ var tag = _ref.tag,
415
+ appLink = _ref.appLink,
416
+ disabled = _ref.disabled;
417
+ var classNames = 'badge-pill tag py-1 px-2 my-1 mr-1';
418
+ if (appLink && !disabled) classNames += ' cursor-pointer';
419
+ if (disabled) classNames += ' ' + _tags_scss__WEBPACK_IMPORTED_MODULE_2___default.a.disabled;
420
+ return appLink ? react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__["AppLink"], {
421
+ appLink: appLink,
422
+ className: classNames
423
+ }, tag.name) : react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
424
+ className: classNames
425
+ }, tag.name);
426
+ }
427
+
428
+ /***/ }),
429
+
430
+ /***/ "../../libs/shared/src/components/tags/TagList.tsx":
431
+ /*!*********************************************************************************************!*\
432
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/tags/TagList.tsx ***!
433
+ \*********************************************************************************************/
434
+ /*! exports provided: TagList */
435
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
436
+
437
+ "use strict";
438
+ __webpack_require__.r(__webpack_exports__);
439
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TagList", function() { return TagList; });
440
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
441
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
442
+ /* 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");
443
+ /* harmony import */ var _TagItem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./TagItem */ "../../libs/shared/src/components/tags/TagItem.tsx");
444
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./tags.scss */ "../../libs/shared/src/components/tags/tags.scss");
445
+ /* harmony import */ var _tags_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_tags_scss__WEBPACK_IMPORTED_MODULE_3__);
446
+
447
+
448
+
449
+
450
+ function TagList(_ref) {
451
+ var tags = _ref.tags,
452
+ getAppLink = _ref.getAppLink;
453
+ if (!tags || !tags.data) return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null);
454
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
455
+ className: _tags_scss__WEBPACK_IMPORTED_MODULE_3___default.a.tagList
456
+ }, tags.data.map(function (tag) {
457
+ var appLink = _common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__["FunctionHelper"].isFunction(getAppLink) ? getAppLink(tag) : null;
458
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_TagItem__WEBPACK_IMPORTED_MODULE_2__["TagItem"], {
459
+ key: tag.id,
460
+ tag: tag,
461
+ appLink: appLink
462
+ });
463
+ }));
464
+ }
465
+
466
+ /***/ }),
467
+
468
+ /***/ "../../libs/shared/src/components/tags/tags.scss":
469
+ /*!*******************************************************************************************!*\
470
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/tags/tags.scss ***!
471
+ \*******************************************************************************************/
41
472
  /*! no static exports found */
42
473
  /***/ (function(module, exports, __webpack_require__) {
43
474
 
44
475
  // extracted by mini-css-extract-plugin
45
- module.exports = {"preferenceFooter":"cv--preferenceFooter--P29kw"};
476
+ module.exports = {"tagList":"cv--tagList--yvetE","disabled":"cv--disabled--3ZfKv"};
46
477
 
47
478
  /***/ }),
48
479
 
49
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/index.ts":
50
- /*!***************************************************************************************************************!*\
51
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/index.ts ***!
52
- \***************************************************************************************************************/
53
- /*! exports provided: PreferenceFooter, PreferencesNav, PreferenceItem, SubjectPreferenceGrid, SubjectPreferenceItem */
480
+ /***/ "../../libs/shared/src/components/video-owner-text/VideoOwnerText.tsx":
481
+ /*!****************************************************************************************************************!*\
482
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/video-owner-text/VideoOwnerText.tsx ***!
483
+ \****************************************************************************************************************/
484
+ /*! exports provided: VideoOwnerText */
54
485
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
55
486
 
56
487
  "use strict";
57
488
  __webpack_require__.r(__webpack_exports__);
58
- /* harmony import */ var _footer_PreferenceFooter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./footer/PreferenceFooter */ "../../libs/shared/src/apps/subjects/components/preferences/footer/PreferenceFooter.tsx");
59
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PreferenceFooter", function() { return _footer_PreferenceFooter__WEBPACK_IMPORTED_MODULE_0__["PreferenceFooter"]; });
489
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VideoOwnerText", function() { return VideoOwnerText; });
490
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
491
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
60
492
 
61
- /* harmony import */ var _nav_PreferencesNav__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./nav/PreferencesNav */ "../../libs/shared/src/apps/subjects/components/preferences/nav/PreferencesNav.tsx");
62
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PreferencesNav", function() { return _nav_PreferencesNav__WEBPACK_IMPORTED_MODULE_1__["PreferencesNav"]; });
493
+ function VideoOwnerText(props) {
494
+ var _a, _b, _c, _d;
63
495
 
64
- /* harmony import */ var _subject_preference_grid_SubjectPreferenceGrid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./subject-preference-grid/SubjectPreferenceGrid */ "../../libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/SubjectPreferenceGrid.tsx");
65
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SubjectPreferenceGrid", function() { return _subject_preference_grid_SubjectPreferenceGrid__WEBPACK_IMPORTED_MODULE_2__["SubjectPreferenceGrid"]; });
496
+ if (!props.owner) return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null);
497
+ var name = props.owner.name;
498
+ if (props.owner.surname) name += " ".concat(props.owner.surname.substr(0, 1)).toUpperCase();
499
+ var customer = (_b = (_a = props.owner.customers) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b[0];
500
+ var customerName = (_d = (_c = customer) === null || _c === void 0 ? void 0 : _c.name, _d !== null && _d !== void 0 ? _d : '');
501
+ if (customerName) name += ', ';
502
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("small", {
503
+ className: 'clamp-1'
504
+ }, name, customerName && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("em", null, customerName), customerName === 'ClickView' && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, "CV Icon"));
505
+ }
506
+
507
+ /***/ }),
508
+
509
+ /***/ "../../libs/shared/src/components/widgets/fixed-widget/index.ts":
510
+ /*!**********************************************************************************************************!*\
511
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/index.ts ***!
512
+ \**********************************************************************************************************/
513
+ /*! exports provided: FixedWidget, initialWidgetState, FixedWidgetReducer, lazyWidgetInit, PartialFixedWidget */
514
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
515
+
516
+ "use strict";
517
+ __webpack_require__.r(__webpack_exports__);
518
+ /* harmony import */ var _FixedWidget__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./FixedWidget */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidget.tsx");
519
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FixedWidget", function() { return _FixedWidget__WEBPACK_IMPORTED_MODULE_0__["FixedWidget"]; });
66
520
 
67
- /* harmony import */ var _subject_preference_item_SubjectPreferenceItem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./subject-preference-item/SubjectPreferenceItem */ "../../libs/shared/src/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItem.tsx");
68
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SubjectPreferenceItem", function() { return _subject_preference_item_SubjectPreferenceItem__WEBPACK_IMPORTED_MODULE_3__["SubjectPreferenceItem"]; });
521
+ /* harmony import */ var _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./FixedWidgetReducer */ "../../libs/shared/src/components/widgets/fixed-widget/FixedWidgetReducer.tsx");
522
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "initialWidgetState", function() { return _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__["initialWidgetState"]; });
69
523
 
70
- /* harmony import */ var _preference_item_PreferenceItem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./preference-item/PreferenceItem */ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.tsx");
71
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PreferenceItem", function() { return _preference_item_PreferenceItem__WEBPACK_IMPORTED_MODULE_4__["PreferenceItem"]; });
524
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FixedWidgetReducer", function() { return _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__["FixedWidgetReducer"]; });
72
525
 
526
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "lazyWidgetInit", function() { return _FixedWidgetReducer__WEBPACK_IMPORTED_MODULE_1__["lazyWidgetInit"]; });
73
527
 
528
+ /* harmony import */ var _PartialFixedWidget__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PartialFixedWidget */ "../../libs/shared/src/components/widgets/fixed-widget/PartialFixedWidget.tsx");
529
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "PartialFixedWidget", function() { return _PartialFixedWidget__WEBPACK_IMPORTED_MODULE_2__["PartialFixedWidget"]; });
74
530
 
75
531
 
76
532
 
@@ -78,145 +534,312 @@ __webpack_require__.r(__webpack_exports__);
78
534
 
79
535
  /***/ }),
80
536
 
81
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.tsx":
82
- /*!*****************************************************************************************************************************************!*\
83
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.tsx ***!
84
- \*****************************************************************************************************************************************/
85
- /*! exports provided: PreferenceItem */
537
+ /***/ "../../libs/shared/src/components/widgets/items/clip-widget-item/ClipWidgetItem.tsx":
538
+ /*!******************************************************************************************************************************!*\
539
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/clip-widget-item/ClipWidgetItem.tsx ***!
540
+ \******************************************************************************************************************************/
541
+ /*! exports provided: ClipWidgetItem */
86
542
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
87
543
 
88
544
  "use strict";
89
545
  __webpack_require__.r(__webpack_exports__);
90
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PreferenceItem", function() { return PreferenceItem; });
546
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ClipWidgetItem", function() { return ClipWidgetItem; });
91
547
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
92
548
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
93
- /* harmony import */ var _PreferenceItemStatus__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PreferenceItemStatus */ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItemStatus.tsx");
94
- /* harmony import */ var _preference_item_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./preference-item.scss */ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/preference-item.scss");
95
- /* harmony import */ var _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_preference_item_scss__WEBPACK_IMPORTED_MODULE_2__);
549
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
550
+ /* harmony import */ var _thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../thumbnails/video/VideoThumbnail */ "../../libs/shared/src/components/thumbnails/video/VideoThumbnail.tsx");
551
+ /* harmony import */ var _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../enums/ThumbnailSize */ "../../libs/shared/src/enums/ThumbnailSize.ts");
552
+ /* harmony import */ var _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../enums/ThumbnailTextPosition */ "../../libs/shared/src/enums/ThumbnailTextPosition.ts");
553
+ /* harmony import */ var _video_owner_text_VideoOwnerText__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../video-owner-text/VideoOwnerText */ "../../libs/shared/src/components/video-owner-text/VideoOwnerText.tsx");
554
+ /* harmony import */ var _clip_widget_item_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./clip-widget-item.scss */ "../../libs/shared/src/components/widgets/items/clip-widget-item/clip-widget-item.scss");
555
+ /* harmony import */ var _clip_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_clip_widget_item_scss__WEBPACK_IMPORTED_MODULE_6__);
96
556
 
97
557
 
98
558
 
99
- function PreferenceItem(props) {
100
- function getContainerClass() {
101
- var baseClass = _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.preferenceItem;
102
- if (props.extraClasses) baseClass += ' ' + props.extraClasses;
103
- if (props.isDisabled) baseClass += ' ' + _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.disabled;
104
- if (props.isSelected && !props.isExpandable) baseClass += ' ' + _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.selected;
105
- if (props.hideStatus) baseClass += ' ' + _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.noBorder;
106
- return baseClass;
107
- }
108
559
 
109
- var caretClass = "".concat(_preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.expandCaret, " ").concat(props.expand ? _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.up : _preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.down);
110
- return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("li", {
111
- className: getContainerClass(),
112
- onClick: props.onClick,
113
- "aria-checked": props.isSelected,
114
- "aria-haspopup": props.isExpandable,
115
- role: props.isExpandable ? 'button' : 'checkbox',
116
- style: {
117
- backgroundImage: "url(".concat(props.imageUrl, ")")
118
- },
119
- tabIndex: 0
560
+
561
+
562
+
563
+ var ClipWidgetItem = react__WEBPACK_IMPORTED_MODULE_0___default.a.memo(function (props) {
564
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
565
+ className: "flex-shrink-0 px-1 ".concat(_clip_widget_item_scss__WEBPACK_IMPORTED_MODULE_6___default.a.item)
120
566
  }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
121
- className: "".concat(_preference_item_scss__WEBPACK_IMPORTED_MODULE_2___default.a.textBox, " p-2")
122
- }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("p", {
123
- className: 'm-0 text-truncate'
124
- }, props.name, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
125
- className: props.isExpandable ? caretClass : ''
126
- })), !props.hideStatus && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, props.isExpandable ? react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_PreferenceItemStatus__WEBPACK_IMPORTED_MODULE_1__["ExpandableItemStatus"], {
127
- selectedChildrenCount: props.selectedChildCount
128
- }) : react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_PreferenceItemStatus__WEBPACK_IMPORTED_MODULE_1__["SelectableItemStatus"], {
129
- selected: props.isSelected,
130
- radioButton: props.radioButton
131
- }))));
132
- }
567
+ className: 'row m-0 border rounded p-2 h-100'
568
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
569
+ className: 'col-6 p-0'
570
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_2__["VideoThumbnail"], {
571
+ video: props.video,
572
+ appLink: props.appLink,
573
+ type: 'static',
574
+ videoType: 'clip',
575
+ clip: props.data,
576
+ size: _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_3__["ThumbnailSize"].Small,
577
+ textPosition: _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_4__["ThumbnailTextPosition"].Independent,
578
+ preload: true
579
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
580
+ className: 'col-6 p-0'
581
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
582
+ className: 'pl-3'
583
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__["AppLink"], {
584
+ appLink: props.appLink
585
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h3", {
586
+ className: 'h6 mb-1 clamp-2'
587
+ }, props.data.name)), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_video_owner_text_VideoOwnerText__WEBPACK_IMPORTED_MODULE_5__["VideoOwnerText"], {
588
+ owner: props.data.owner
589
+ })))));
590
+ });
591
+
592
+ /***/ }),
593
+
594
+ /***/ "../../libs/shared/src/components/widgets/items/clip-widget-item/clip-widget-item.scss":
595
+ /*!*********************************************************************************************************************************!*\
596
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/clip-widget-item/clip-widget-item.scss ***!
597
+ \*********************************************************************************************************************************/
598
+ /*! no static exports found */
599
+ /***/ (function(module, exports, __webpack_require__) {
600
+
601
+ // extracted by mini-css-extract-plugin
602
+ module.exports = {"item":"cv--item--pYl_b","thumbnail":"cv--thumbnail--92H1z","smallItemIconWidth":"cv--smallItemIconWidth--3DbAB","smallItemInfoWidth":"cv--smallItemInfoWidth--1D2_c","smallProgressBarContainer":"cv--smallProgressBarContainer--1gwy8","smallItemNameWidth":"cv--smallItemNameWidth--3TPSf"};
603
+
604
+ /***/ }),
605
+
606
+ /***/ "../../libs/shared/src/components/widgets/items/interactive-widget-item/InteractiveWidgetItem.tsx":
607
+ /*!********************************************************************************************************************************************!*\
608
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/interactive-widget-item/InteractiveWidgetItem.tsx ***!
609
+ \********************************************************************************************************************************************/
610
+ /*! exports provided: InteractiveWidgetItem */
611
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
612
+
613
+ "use strict";
614
+ __webpack_require__.r(__webpack_exports__);
615
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InteractiveWidgetItem", function() { return InteractiveWidgetItem; });
616
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
617
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
618
+ /* harmony import */ var _app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../app-link/AppLink */ "../../libs/shared/src/components/app-link/AppLink.tsx");
619
+ /* harmony import */ var _thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../thumbnails/video/VideoThumbnail */ "../../libs/shared/src/components/thumbnails/video/VideoThumbnail.tsx");
620
+ /* harmony import */ var _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../enums/ThumbnailSize */ "../../libs/shared/src/enums/ThumbnailSize.ts");
621
+ /* harmony import */ var _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../enums/ThumbnailTextPosition */ "../../libs/shared/src/enums/ThumbnailTextPosition.ts");
622
+ /* harmony import */ var _text_Text__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../text/Text */ "../../libs/shared/src/components/text/Text.tsx");
623
+ /* harmony import */ var _video_owner_text_VideoOwnerText__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../video-owner-text/VideoOwnerText */ "../../libs/shared/src/components/video-owner-text/VideoOwnerText.tsx");
624
+ /* harmony import */ var _interactive_widget_item_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./interactive-widget-item.scss */ "../../libs/shared/src/components/widgets/items/interactive-widget-item/interactive-widget-item.scss");
625
+ /* harmony import */ var _interactive_widget_item_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_interactive_widget_item_scss__WEBPACK_IMPORTED_MODULE_7__);
626
+
627
+
628
+
629
+
630
+
631
+
632
+
633
+
634
+ var namespace = 'shared.interactiveWidgetItem';
635
+ var InteractiveWidgetItem = react__WEBPACK_IMPORTED_MODULE_0___default.a.memo(function (props) {
636
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
637
+ className: "flex-shrink-0 px-1 ".concat(_interactive_widget_item_scss__WEBPACK_IMPORTED_MODULE_7___default.a.item)
638
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
639
+ className: 'row m-0 border rounded p-2 h-100'
640
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
641
+ className: 'col-6 p-0'
642
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_thumbnails_video_VideoThumbnail__WEBPACK_IMPORTED_MODULE_2__["VideoThumbnail"], {
643
+ video: props.video,
644
+ interactive: props.data,
645
+ appLink: props.appLink,
646
+ type: 'static',
647
+ videoType: 'interactive',
648
+ size: _enums_ThumbnailSize__WEBPACK_IMPORTED_MODULE_3__["ThumbnailSize"].Small,
649
+ textPosition: _enums_ThumbnailTextPosition__WEBPACK_IMPORTED_MODULE_4__["ThumbnailTextPosition"].Independent,
650
+ preload: true
651
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
652
+ className: 'col-6 p-0'
653
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
654
+ className: 'pl-3'
655
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__["AppLink"], {
656
+ appLink: props.appLink
657
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h3", {
658
+ className: 'h6 mb-1 clamp-2'
659
+ }, props.data.name)), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_video_owner_text_VideoOwnerText__WEBPACK_IMPORTED_MODULE_6__["VideoOwnerText"], {
660
+ owner: props.data.owner
661
+ }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_app_link_AppLink__WEBPACK_IMPORTED_MODULE_1__["AppLink"], {
662
+ className: 'info-link',
663
+ appLink: props.appLink
664
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_text_Text__WEBPACK_IMPORTED_MODULE_5__["Text"], {
665
+ namespace: namespace,
666
+ phrase: 'previewQuestions'
667
+ }))))));
668
+ });
133
669
 
134
670
  /***/ }),
135
671
 
136
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItemStatus.tsx":
672
+ /***/ "../../libs/shared/src/components/widgets/items/interactive-widget-item/interactive-widget-item.scss":
137
673
  /*!***********************************************************************************************************************************************!*\
138
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItemStatus.tsx ***!
674
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/items/interactive-widget-item/interactive-widget-item.scss ***!
139
675
  \***********************************************************************************************************************************************/
140
- /*! exports provided: ExpandableItemStatus, SelectableItemStatus */
676
+ /*! no static exports found */
677
+ /***/ (function(module, exports, __webpack_require__) {
678
+
679
+ // extracted by mini-css-extract-plugin
680
+ module.exports = {"item":"cv--item--2An5o","thumbnail":"cv--thumbnail--Wvc5s","smallItemIconWidth":"cv--smallItemIconWidth--2IdDd","smallItemInfoWidth":"cv--smallItemInfoWidth--1Iat7","smallProgressBarContainer":"cv--smallProgressBarContainer--17I8T"};
681
+
682
+ /***/ }),
683
+
684
+ /***/ "../../libs/shared/src/enums/CurriculumType.ts":
685
+ /*!*****************************************************************************************!*\
686
+ !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/CurriculumType.ts ***!
687
+ \*****************************************************************************************/
688
+ /*! exports provided: CurriculumType */
141
689
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
142
690
 
143
691
  "use strict";
144
692
  __webpack_require__.r(__webpack_exports__);
145
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ExpandableItemStatus", function() { return ExpandableItemStatus; });
146
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SelectableItemStatus", function() { return SelectableItemStatus; });
693
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CurriculumType", function() { return CurriculumType; });
694
+ var CurriculumType;
695
+
696
+ (function (CurriculumType) {
697
+ CurriculumType["Subject"] = "CurriculumSubject";
698
+ CurriculumType["Audience"] = "CurriculumAudience";
699
+ CurriculumType["Area"] = "CurriculumArea";
700
+ CurriculumType["Leaf"] = "CurriculumLeaf";
701
+ })(CurriculumType || (CurriculumType = {}));
702
+
703
+ /***/ }),
704
+
705
+ /***/ "./src/shared/components/immersive-reader/ImmersiveReader.tsx":
706
+ /*!********************************************************************!*\
707
+ !*** ./src/shared/components/immersive-reader/ImmersiveReader.tsx ***!
708
+ \********************************************************************/
709
+ /*! exports provided: ImmersiveReader */
710
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
711
+
712
+ "use strict";
713
+ __webpack_require__.r(__webpack_exports__);
714
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ImmersiveReader", function() { return ImmersiveReader; });
147
715
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
148
716
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
149
- /* harmony import */ var _components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../components/svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
150
- /* harmony import */ var _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
151
- /* harmony import */ var _preference_item_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./preference-item.scss */ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/preference-item.scss");
152
- /* harmony import */ var _preference_item_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_preference_item_scss__WEBPACK_IMPORTED_MODULE_3__);
717
+ /* harmony import */ var _microsoft_immersive_reader_sdk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @microsoft/immersive-reader-sdk */ "@microsoft/immersive-reader-sdk");
718
+ /* harmony import */ var _microsoft_immersive_reader_sdk__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_microsoft_immersive_reader_sdk__WEBPACK_IMPORTED_MODULE_1__);
719
+ /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
720
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
721
+ /* harmony import */ var _libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../libs/shared/src/flight-requests/ConfigRequests */ "../../libs/shared/src/flight-requests/ConfigRequests.ts");
722
+ /* harmony import */ var _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../libs/analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
723
+ /* harmony import */ var _immersive_reader_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./immersive-reader.scss */ "./src/shared/components/immersive-reader/immersive-reader.scss");
724
+ /* harmony import */ var _immersive_reader_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_immersive_reader_scss__WEBPACK_IMPORTED_MODULE_6__);
153
725
 
154
726
 
155
727
 
156
728
 
157
- var ExpandableItemStatus = function ExpandableItemStatus(props) {
158
- if (!props.selectedChildrenCount) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
159
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
160
- className: "".concat(_preference_item_scss__WEBPACK_IMPORTED_MODULE_3___default.a.itemStatus, " ").concat(_preference_item_scss__WEBPACK_IMPORTED_MODULE_3___default.a.green)
161
- }, props.selectedChildrenCount);
162
- };
163
- var SelectableItemStatus = function SelectableItemStatus(props) {
164
- var svg;
165
- if (props.selected) svg = react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_1__["SvgContainer"], {
166
- svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_2__["cvSvgLibrary"].Check
167
- });else if (!props.radioButton) svg = react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_1__["SvgContainer"], {
168
- svgName: _utils_SvgHelper__WEBPACK_IMPORTED_MODULE_2__["cvSvgLibrary"].Plus
169
- });else svg = react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, "\xA0");
729
+
730
+
731
+
732
+ var namespace = 'shared.immersiveReader';
733
+ function ImmersiveReader(props) {
734
+ var config = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch(_libs_shared_src_flight_requests_ConfigRequests__WEBPACK_IMPORTED_MODULE_4__["ConfigRequests"].config);
735
+ var immersiveReaderResponse = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_2__["Flight"].useBasicFetch({
736
+ url: '/api/integrations/token/immersive-reader',
737
+ key: 'immersive:reader:token'
738
+ });
739
+ if (!config.data || !immersiveReaderResponse.data) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
740
+ if (!props.title) props.title = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__["LanguageService"].getPhrase(namespace, 'titleFallback');
741
+
742
+ function launchImmersiveReader() {
743
+ _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_5__["AnalyticsHelper"].logUserAction(props.analyticsData, props.analyticsOptions);
744
+ var content = {
745
+ title: props.title,
746
+ chunks: [{
747
+ content: props.text
748
+ }]
749
+ };
750
+ var _immersiveReaderRespo = immersiveReaderResponse.data,
751
+ subdomain = _immersiveReaderRespo.subdomain,
752
+ token = _immersiveReaderRespo.token;
753
+ var options = {
754
+ uiZIndex: 5000 // Should always appear above our content
755
+
756
+ };
757
+ _microsoft_immersive_reader_sdk__WEBPACK_IMPORTED_MODULE_1__["launchAsync"](token, subdomain, content, options);
758
+ }
759
+
170
760
  return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
171
- className: "".concat(_preference_item_scss__WEBPACK_IMPORTED_MODULE_3___default.a.itemStatus, " ").concat(props.selected ? _preference_item_scss__WEBPACK_IMPORTED_MODULE_3___default.a.green : _preference_item_scss__WEBPACK_IMPORTED_MODULE_3___default.a.unchecked)
172
- }, svg);
173
- };
761
+ className: "".concat(_immersive_reader_scss__WEBPACK_IMPORTED_MODULE_6___default.a.button, " ").concat(props.className || ''),
762
+ onClick: launchImmersiveReader
763
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("svg", {
764
+ viewBox: '0 0 40 37'
765
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("path", {
766
+ d: 'M37.4,0.9 L37.4,9.6 L35.4,9.6 L35.4,2.9 L24.4,2.9 C22.9,3.3 20,4.5 20,6 L20,17.2 L18,17.2 L18,6 C18,5 15.6,3.6 13.8,2.9 L2,2.9 L2,29 L12.4,29 L12.4,31 L0,31 L0,0.9 L14.1,0.9 L14.3,1 C15,1.2 17.5,2.2 18.9,3.7 C20.5,1.9 23.5,1.1 23.9,1 L24.1,1 L37.4,1 L37.4,0.9 Z',
767
+ fill: '#000000'
768
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("path", {
769
+ d: 'M27.4,37 L25.8,37 L18.4,29.4 L14,29.4 L14,21 L18.4,20.9 L26.1,13 L27.4,13 L27.4,37 Z M16,27.4 L19.2,27.4 L25.3,33.7 L25.3,16.6 L19.2,22.9 L15.9,22.9 L15.9,27.4 L16,27.4 Z',
770
+ fill: '#0197F2'
771
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("path", {
772
+ d: 'M31.3,32.7 L29.6,31.7 C29.6,31.7 31.7,28.3 31.7,25.2 C31.7,21.9 29.6,18.5 29.6,18.4 L31.3,17.4 C31.4,17.6 33.7,21.3 33.7,25.2 C33.7,28.8 31.4,32.6 31.3,32.7 Z',
773
+ fill: '#0197F2'
774
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("path", {
775
+ d: 'M36.4,36.2 L34.8,35 C34.8,35 38,30.8 38,25.2 C38,19.6 34.8,15.4 34.8,15.4 L36.4,14.2 C36.5,14.4 40,19 40,25.3 C40,31.5 36.5,36 36.4,36.2 Z',
776
+ fill: '#0197F2'
777
+ })));
778
+ }
174
779
 
175
780
  /***/ }),
176
781
 
177
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/preference-item.scss":
178
- /*!*******************************************************************************************************************************************!*\
179
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/preference-item.scss ***!
180
- \*******************************************************************************************************************************************/
782
+ /***/ "./src/shared/components/immersive-reader/immersive-reader.scss":
783
+ /*!**********************************************************************!*\
784
+ !*** ./src/shared/components/immersive-reader/immersive-reader.scss ***!
785
+ \**********************************************************************/
181
786
  /*! no static exports found */
182
787
  /***/ (function(module, exports, __webpack_require__) {
183
788
 
184
789
  // extracted by mini-css-extract-plugin
185
- module.exports = {"preferenceItem":"cv--preferenceItem--1LDb6","expandCaret":"cv--expandCaret--3QEWB","down":"cv--down--2y-iF","up":"cv--up--1kGNY","disabled":"cv--disabled--2w4FH","selected":"cv--selected--1lSYv","noBorder":"cv--noBorder--3Mxuo","textBox":"cv--textBox--3HCeK","itemStatus":"cv--itemStatus--2msq4","unchecked":"cv--unchecked--2VQLv","green":"cv--green--AHd64"};
790
+ module.exports = {"button":"cv--button--10_KK"};
186
791
 
187
792
  /***/ }),
188
793
 
189
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/SubjectPreferenceGrid.tsx":
190
- /*!********************************************************************************************************************************************************!*\
191
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/SubjectPreferenceGrid.tsx ***!
192
- \********************************************************************************************************************************************************/
193
- /*! exports provided: SubjectPreferenceGrid */
794
+ /***/ "./src/shared/components/play-page/PlayPage.tsx":
795
+ /*!******************************************************!*\
796
+ !*** ./src/shared/components/play-page/PlayPage.tsx ***!
797
+ \******************************************************/
798
+ /*! exports provided: onUpdateViewport, PlayPage */
194
799
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
195
800
 
196
801
  "use strict";
197
802
  __webpack_require__.r(__webpack_exports__);
198
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubjectPreferenceGrid", function() { return SubjectPreferenceGrid; });
803
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "onUpdateViewport", function() { return onUpdateViewport; });
804
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlayPage", function() { return PlayPage; });
199
805
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
200
806
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
201
- /* harmony import */ var _common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../common/src/react/utils/ArrayHelper */ "../../libs/common/src/react/utils/ArrayHelper.ts");
202
- /* harmony import */ var _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
203
- /* harmony import */ var _hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../hooks/UseGetMediaQueryString */ "../../libs/shared/src/hooks/UseGetMediaQueryString.ts");
204
- /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./.. */ "../../libs/shared/src/apps/subjects/components/preferences/index.ts");
205
- /* harmony import */ var _contexts_SubjectPreferencesContext__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../contexts/SubjectPreferencesContext */ "../../libs/shared/src/apps/subjects/contexts/SubjectPreferencesContext.ts");
206
- /* harmony import */ var _subject_preference_grid_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./subject-preference-grid.scss */ "../../libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/subject-preference-grid.scss");
207
- /* harmony import */ var _subject_preference_grid_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_subject_preference_grid_scss__WEBPACK_IMPORTED_MODULE_6__);
208
- var __rest = undefined && undefined.__rest || function (s, e) {
209
- var t = {};
210
-
211
- for (var p in s) {
212
- if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
213
- }
807
+ /* harmony import */ var _libs_common_src_react_hooks_useViewModel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../libs/common/src/react/hooks/useViewModel */ "../../libs/common/src/react/hooks/useViewModel.ts");
808
+ /* harmony import */ var _libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
809
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
810
+ /* harmony import */ var _libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
811
+ /* harmony import */ var _libs_shared_src_components_actions_Actions__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/actions/Actions */ "../../libs/shared/src/components/actions/Actions.tsx");
812
+ /* harmony import */ var _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../libs/shared/src/utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
813
+ /* harmony import */ var _libs_shared_src_hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../../libs/shared/src/hooks/UseGetMediaQueryString */ "../../libs/shared/src/hooks/UseGetMediaQueryString.ts");
814
+ /* harmony import */ var _libs_shared_src_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../libs/shared/src/enums/MediaQueries */ "../../libs/shared/src/enums/MediaQueries.ts");
815
+ /* harmony import */ var _libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/widgets/fixed-widget */ "../../libs/shared/src/components/widgets/fixed-widget/index.ts");
816
+ /* harmony import */ var _libs_shared_src_enums_WidgetContents__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../../libs/shared/src/enums/WidgetContents */ "../../libs/shared/src/enums/WidgetContents.ts");
817
+ /* harmony import */ var _libs_shared_src_components_widgets_items_interactive_widget_item_InteractiveWidgetItem__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/widgets/items/interactive-widget-item/InteractiveWidgetItem */ "../../libs/shared/src/components/widgets/items/interactive-widget-item/InteractiveWidgetItem.tsx");
818
+ /* harmony import */ var _libs_shared_src_components_widgets_items_clip_widget_item_ClipWidgetItem__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/widgets/items/clip-widget-item/ClipWidgetItem */ "../../libs/shared/src/components/widgets/items/clip-widget-item/ClipWidgetItem.tsx");
819
+ /* harmony import */ var _libs_shared_src_components_curriculum_links_CurriculumLinks__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/curriculum-links/CurriculumLinks */ "../../libs/shared/src/components/curriculum-links/CurriculumLinks.tsx");
820
+ /* harmony import */ var shared_components_resources_Resources__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! shared/components/resources/Resources */ "./src/shared/components/resources/Resources.tsx");
821
+ /* harmony import */ var shared_components_video_details_VideoDetails__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! shared/components/video-details/VideoDetails */ "./src/shared/components/video-details/VideoDetails.tsx");
822
+ /* harmony import */ var shared_hooks_useWindowListeners__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! shared/hooks/useWindowListeners */ "./src/shared/hooks/useWindowListeners.ts");
823
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
824
+ /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
825
+ /* harmony import */ var shared_constants_LiteViewModels__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! shared/constants/LiteViewModels */ "./src/shared/constants/LiteViewModels.ts");
826
+ /* harmony import */ var shared_components_synopsis_Synopsis__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! shared/components/synopsis/Synopsis */ "./src/shared/components/synopsis/Synopsis.tsx");
827
+ /* harmony import */ var _VideoTitle__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./VideoTitle */ "./src/shared/components/play-page/VideoTitle.tsx");
828
+ /* harmony import */ var shared_constants_MinimumGlanceHeight__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! shared/constants/MinimumGlanceHeight */ "./src/shared/constants/MinimumGlanceHeight.ts");
829
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
830
+
831
+ 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."); }
832
+
833
+ 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); }
834
+
835
+ 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; }
836
+
837
+ 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; }
838
+
839
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
840
+
841
+
214
842
 
215
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
216
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
217
- }
218
- return t;
219
- };
220
843
 
221
844
 
222
845
 
@@ -226,218 +849,683 @@ var __rest = undefined && undefined.__rest || function (s, e) {
226
849
 
227
850
 
228
851
 
229
- function useGetRowItemCapacity() {
230
- var viewportWidth = Object(_hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_3__["useGetMediaQueryString"])();
231
852
 
232
- switch (viewportWidth) {
233
- case _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_2__["MediaQueryStrings"].LG:
234
- default:
235
- return 5;
236
853
 
237
- case _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_2__["MediaQueryStrings"].MD:
238
- return 4;
239
854
 
240
- case _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_2__["MediaQueryStrings"].SM:
241
- return 3;
242
855
 
243
- case _enums_MediaQueries__WEBPACK_IMPORTED_MODULE_2__["MediaQueryStrings"].XS:
244
- return 2;
856
+
857
+
858
+
859
+
860
+
861
+
862
+
863
+
864
+ var namespace = 'shared.playPage';
865
+ var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_3__["LanguageService"].encloseNamespace(namespace); // TODO: Add analytics to these actions
866
+
867
+ var getActions = function getActions(video, isIPad, isMobile) {
868
+ return [{
869
+ label: getPhrase('makeInteractive'),
870
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__["cvSvgLibrary"].Plus,
871
+ className: !isIPad ? 'btn btn-light ml-2' : '',
872
+ button: !isIPad
873
+ }, {
874
+ label: getPhrase('addToPlaylist'),
875
+ appLink: {
876
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_18__["AppChannels"].PLAYLISTS,
877
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_17__["Actions"].Playlists.ADD_TO_PLAYLIST,
878
+ args: [video.id]
879
+ },
880
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__["cvSvgLibrary"].AddToPlaylists,
881
+ className: !isMobile ? 'btn btn-light ml-2' : '',
882
+ button: !isMobile
883
+ }, {
884
+ label: getPhrase('share'),
885
+ appLink: {
886
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_18__["AppChannels"].DEFAULT,
887
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_17__["Actions"].Default.SHARE,
888
+ args: [video.id],
889
+ params: {
890
+ entityType: 'video'
891
+ }
892
+ },
893
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_6__["cvSvgLibrary"].Share2,
894
+ className: !isMobile ? 'btn btn-light ml-2' : '',
895
+ button: !isMobile
896
+ }, {
897
+ label: getPhrase('createClip') // TODO: Add appLink
898
+
899
+ }];
900
+ };
901
+
902
+ function onUpdateViewport(playerRef, setPlayerData) {
903
+ if (!playerRef.current) return;
904
+ var rect = playerRef.current.getBoundingClientRect();
905
+ var left = window.pageXOffset || document.documentElement.scrollLeft;
906
+ var top = window.pageYOffset || document.documentElement.scrollTop;
907
+ /**
908
+ * Only show floating player
909
+ * if the normal player is no longer in view
910
+ */
911
+
912
+ if (rect.top < -rect.height) {
913
+ setPlayerData('viewportPosition', null);
914
+ return;
245
915
  }
916
+
917
+ setPlayerData('viewportPosition', {
918
+ top: top + rect.top,
919
+ left: left + rect.left,
920
+ width: rect.width
921
+ });
246
922
  }
923
+ function PlayPage(props) {
924
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
925
+
926
+ var video = props.video,
927
+ glanceTheme = props.glanceTheme,
928
+ curriculumLinks = props.curriculumLinks;
929
+ var hasGlanceData = ((_a = video.glance) === null || _a === void 0 ? void 0 : _a.content) && video.glance.format === 'text/markdown';
930
+ var rating = video.rating,
931
+ productionYear = video.productionYear,
932
+ interactives = video.interactives,
933
+ resources = video.resources,
934
+ productionCompanies = video.productionCompanies,
935
+ distributors = video.distributors,
936
+ producers = video.producers,
937
+ directors = video.directors,
938
+ tags = video.tags; // tslint:disable-next-line
939
+
940
+ var hasPPDD = !!((_b = productionCompanies.data) === null || _b === void 0 ? void 0 : _b.length) || !!((_c = distributors.data) === null || _c === void 0 ? void 0 : _c.length) || !!((_d = producers.data) === null || _d === void 0 ? void 0 : _d.length) || !!((_e = directors.data) === null || _e === void 0 ? void 0 : _e.length);
941
+ var hasBadges = !!((_f = rating) === null || _f === void 0 ? void 0 : _f.value) || !!productionYear || !!((_g = interactives.data) === null || _g === void 0 ? void 0 : _g.length) || !!((_h = resources.data) === null || _h === void 0 ? void 0 : _h.length);
942
+ var hasDetails = !!video.description || hasBadges || hasPPDD || !!((_j = tags.data) === null || _j === void 0 ? void 0 : _j.length);
943
+
944
+ var _useViewModel = Object(_libs_common_src_react_hooks_useViewModel__WEBPACK_IMPORTED_MODULE_1__["useViewModel"])(shared_constants_LiteViewModels__WEBPACK_IMPORTED_MODULE_19__["ViewModelKeys"].WEB_PLAYER_DATA),
945
+ _useViewModel2 = _slicedToArray(_useViewModel, 2),
946
+ setPlayerData = _useViewModel2[1];
947
+
948
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default.a.useState(hasGlanceData ? 'synopsis' : 'details'),
949
+ _React$useState2 = _slicedToArray(_React$useState, 2),
950
+ detailsView = _React$useState2[0],
951
+ setDetailsView = _React$useState2[1];
952
+
953
+ var mediaQuery = Object(_libs_shared_src_hooks_UseGetMediaQueryString__WEBPACK_IMPORTED_MODULE_7__["useGetMediaQueryString"])();
954
+ var isMobile = mediaQuery === _libs_shared_src_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_8__["MediaQueryStrings"].XS;
955
+ var isIPad = mediaQuery === _libs_shared_src_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_8__["MediaQueryStrings"].SM || mediaQuery === _libs_shared_src_enums_MediaQueries__WEBPACK_IMPORTED_MODULE_8__["MediaQueryStrings"].MD || isMobile; // Get reference to the player dom element
956
+
957
+ var player = react__WEBPACK_IMPORTED_MODULE_0___default.a.useRef(null); // Memoize so we don't call throttle repeatedly
958
+
959
+ var throttledOnUpdateViewport = react__WEBPACK_IMPORTED_MODULE_0___default.a.useMemo(function () {
960
+ return _libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_2__["FunctionHelper"].throttle(function () {
961
+ return onUpdateViewport(player, setPlayerData);
962
+ }, 100, {
963
+ leading: true,
964
+ trailing: false
965
+ });
966
+ }, []);
967
+ Object(shared_hooks_useWindowListeners__WEBPACK_IMPORTED_MODULE_16__["useOnScroll"])(throttledOnUpdateViewport);
968
+ Object(shared_hooks_useWindowListeners__WEBPACK_IMPORTED_MODULE_16__["useOnResize"])(throttledOnUpdateViewport);
969
+ var playerRef = react__WEBPACK_IMPORTED_MODULE_0___default.a.useCallback(function (node) {
970
+ if (!node) return;
971
+ player.current = node;
972
+ throttledOnUpdateViewport();
973
+ }, []);
974
+ react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {
975
+ setPlayerData('isOnPlayPage', true); // Clear the position when this component is closed
247
976
 
248
- function isDisabled(subject, expandedSubject) {
249
- if (!expandedSubject || subject.id === expandedSubject.id) return false;
250
- if (expandedSubject.children.find(function (child) {
251
- return child.id === subject.id;
252
- })) return false;
253
- return true;
977
+ return function () {
978
+ setPlayerData('viewportPosition', null);
979
+ setPlayerData('isOnPlayPage', false);
980
+ };
981
+ }, []);
982
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_4__["LanguageNamespaceContext"].Provider, {
983
+ value: namespace
984
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
985
+ className: 'embed-responsive embed-responsive-16by9 mb-3',
986
+ ref: playerRef
987
+ }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
988
+ className: 'd-flex justify-content-between align-items-center pb-3'
989
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_VideoTitle__WEBPACK_IMPORTED_MODULE_21__["VideoTitle"], {
990
+ video: video,
991
+ setFavourite: props.setFavourite
992
+ }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_actions_Actions__WEBPACK_IMPORTED_MODULE_5__["Actions"], {
993
+ actions: getActions(video, isIPad, isMobile)
994
+ })), detailsView === 'synopsis' && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(shared_components_synopsis_Synopsis__WEBPACK_IMPORTED_MODULE_20__["Synopsis"], {
995
+ theme: glanceTheme,
996
+ video: video,
997
+ hasGlanceData: hasGlanceData,
998
+ hasDetails: hasDetails,
999
+ onClickShowDescription: function onClickShowDescription() {
1000
+ return setDetailsView('details');
1001
+ },
1002
+ hasCurriculumLinks: !!((_k = curriculumLinks) === null || _k === void 0 ? void 0 : _k.length),
1003
+ onClickShowCurriculumLinks: function onClickShowCurriculumLinks() {
1004
+ return setDetailsView('curriculumLinks');
1005
+ }
1006
+ }), detailsView === 'details' && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(shared_components_video_details_VideoDetails__WEBPACK_IMPORTED_MODULE_15__["VideoDetailsWithScrollbar"], {
1007
+ video: video,
1008
+ hasBadges: hasBadges,
1009
+ hasPPDD: hasPPDD,
1010
+ hasGlanceData: hasGlanceData,
1011
+ onClickShowSynopsis: function onClickShowSynopsis() {
1012
+ return setDetailsView('synopsis');
1013
+ },
1014
+ hasCurriculumLinks: !!((_l = curriculumLinks) === null || _l === void 0 ? void 0 : _l.length),
1015
+ onClickSeeCurriculumLinks: function onClickSeeCurriculumLinks() {
1016
+ return setDetailsView('curriculumLinks');
1017
+ }
1018
+ }), detailsView === 'curriculumLinks' && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_curriculum_links_CurriculumLinks__WEBPACK_IMPORTED_MODULE_13__["CurriculumLinks"], {
1019
+ height: shared_constants_MinimumGlanceHeight__WEBPACK_IMPORTED_MODULE_22__["MINIMUM_GLANCE_HEIGHT"],
1020
+ curriculumLinks: curriculumLinks,
1021
+ onClickSeeLess: function onClickSeeLess() {
1022
+ return setDetailsView(hasGlanceData ? 'synopsis' : 'details');
1023
+ }
1024
+ }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(shared_components_resources_Resources__WEBPACK_IMPORTED_MODULE_14__["Resources"], {
1025
+ video: video
1026
+ }), !!((_o = (_m = video.interactives) === null || _m === void 0 ? void 0 : _m.data) === null || _o === void 0 ? void 0 : _o.length) && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
1027
+ className: 'mx-n1'
1028
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_9__["FixedWidget"], {
1029
+ name: getPhrase('interactives', {
1030
+ count: video.interactives.data.length
1031
+ }),
1032
+ contents: _libs_shared_src_enums_WidgetContents__WEBPACK_IMPORTED_MODULE_10__["WidgetContents"].Interactives,
1033
+ collection: video.interactives.data,
1034
+ prefetched: true,
1035
+ childComponent: function childComponent(itemProps) {
1036
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_widgets_items_interactive_widget_item_InteractiveWidgetItem__WEBPACK_IMPORTED_MODULE_11__["InteractiveWidgetItem"], Object.assign({}, itemProps, {
1037
+ video: video
1038
+ }));
1039
+ },
1040
+ analyticsData: {
1041
+ widgetId: 'interactives'
1042
+ }
1043
+ })), !!((_q = (_p = video.clips) === null || _p === void 0 ? void 0 : _p.data) === null || _q === void 0 ? void 0 : _q.length) && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
1044
+ className: 'mx-n1'
1045
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_widgets_fixed_widget__WEBPACK_IMPORTED_MODULE_9__["FixedWidget"], {
1046
+ name: getPhrase('clips', {
1047
+ count: video.interactives.data.length
1048
+ }),
1049
+ contents: _libs_shared_src_enums_WidgetContents__WEBPACK_IMPORTED_MODULE_10__["WidgetContents"].Clips,
1050
+ collection: video.clips.data,
1051
+ prefetched: true,
1052
+ childComponent: function childComponent(itemProps) {
1053
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_widgets_items_clip_widget_item_ClipWidgetItem__WEBPACK_IMPORTED_MODULE_12__["ClipWidgetItem"], Object.assign({}, itemProps, {
1054
+ video: video
1055
+ }));
1056
+ },
1057
+ analyticsData: {
1058
+ widgetId: 'clips'
1059
+ }
1060
+ })));
254
1061
  }
255
1062
 
256
- function SubjectPreferenceGridRow(props) {
257
- var _React$useContext = react__WEBPACK_IMPORTED_MODULE_0__["useContext"](_contexts_SubjectPreferencesContext__WEBPACK_IMPORTED_MODULE_5__["SubjectPreferencesContext"]),
258
- expandedSubject = _React$useContext.expandedSubject,
259
- selections = _React$useContext.selectedSubjects;
260
-
261
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, props.subjects.map(function (subject) {
262
- var itemDisabled = isDisabled(subject, expandedSubject);
263
- var clickHandler = props.onSelect;
264
- if (subject.isExpandableOption) clickHandler = props.onExpand;
265
- if (itemDisabled) clickHandler = props.onCollapse;
266
- if (props.hasSelectedBulk) clickHandler = function clickHandler() {};
267
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](___WEBPACK_IMPORTED_MODULE_4__["SubjectPreferenceItem"], {
268
- key: subject.id,
269
- subject: subject,
270
- selected: !props.hasSelectedBulk && selections.includes(subject.id),
271
- disabled: props.hasSelectedBulk || itemDisabled,
272
- onClick: function onClick(e) {
273
- return clickHandler(subject);
274
- },
275
- hasSelectedBulk: props.hasSelectedBulk
276
- });
1063
+ /***/ }),
1064
+
1065
+ /***/ "./src/shared/components/play-page/VideoTitle.tsx":
1066
+ /*!********************************************************!*\
1067
+ !*** ./src/shared/components/play-page/VideoTitle.tsx ***!
1068
+ \********************************************************/
1069
+ /*! exports provided: VideoTitle */
1070
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1071
+
1072
+ "use strict";
1073
+ __webpack_require__.r(__webpack_exports__);
1074
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VideoTitle", function() { return VideoTitle; });
1075
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
1076
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1077
+ /* harmony import */ var _libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone/utils/FunctionHelper */ "../../libs/common/src/backbone/utils/FunctionHelper.ts");
1078
+ /* harmony import */ var _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../libs/common/src/react/utils/TextHelper */ "../../libs/common/src/react/utils/TextHelper.ts");
1079
+ /* harmony import */ var _libs_shared_src_components_series_link_SeriesLink__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/series-link/SeriesLink */ "../../libs/shared/src/components/series-link/SeriesLink.tsx");
1080
+ /* harmony import */ var _libs_shared_src_components_favourite_button_FavouriteButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/favourite-button/FavouriteButton */ "../../libs/shared/src/components/favourite-button/FavouriteButton.tsx");
1081
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
1082
+ /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
1083
+ /* harmony import */ var _play_page_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./play-page.scss */ "./src/shared/components/play-page/play-page.scss");
1084
+ /* harmony import */ var _play_page_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_play_page_scss__WEBPACK_IMPORTED_MODULE_7__);
1085
+
1086
+
1087
+
1088
+
1089
+
1090
+
1091
+
1092
+
1093
+ function VideoTitle(props) {
1094
+ var video = props.video;
1095
+ var appLink = {
1096
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_6__["AppChannels"].DEFAULT,
1097
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_5__["Actions"].Default.SERIES,
1098
+ args: video.series ? [video.series.id, _libs_common_src_react_utils_TextHelper__WEBPACK_IMPORTED_MODULE_2__["TextHelper"].slugify(video.series.name)] : []
1099
+ };
1100
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", null, !!video.series && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_series_link_SeriesLink__WEBPACK_IMPORTED_MODULE_3__["SeriesLink"], {
1101
+ video: video,
1102
+ appLink: appLink,
1103
+ className: "".concat(_play_page_scss__WEBPACK_IMPORTED_MODULE_7___default.a.series, " clamp-1")
1104
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1105
+ className: 'd-flex align-items-center'
1106
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h1", {
1107
+ className: 'h3 d-inline-block m-0'
1108
+ }, video.name), !!_libs_common_src_backbone_utils_FunctionHelper__WEBPACK_IMPORTED_MODULE_1__["FunctionHelper"].isFunction(props.setFavourite) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_favourite_button_FavouriteButton__WEBPACK_IMPORTED_MODULE_4__["FavouriteButton"], {
1109
+ setFavourite: props.setFavourite,
1110
+ video: video,
1111
+ className: 'd-inline-block ml-2 align-text-bottom'
1112
+ })));
1113
+ }
1114
+
1115
+ /***/ }),
1116
+
1117
+ /***/ "./src/shared/components/play-page/play-page.scss":
1118
+ /*!********************************************************!*\
1119
+ !*** ./src/shared/components/play-page/play-page.scss ***!
1120
+ \********************************************************/
1121
+ /*! no static exports found */
1122
+ /***/ (function(module, exports, __webpack_require__) {
1123
+
1124
+ // extracted by mini-css-extract-plugin
1125
+ module.exports = {"series":"cv--series--2vEW0"};
1126
+
1127
+ /***/ }),
1128
+
1129
+ /***/ "./src/shared/components/resources/Resources.tsx":
1130
+ /*!*******************************************************!*\
1131
+ !*** ./src/shared/components/resources/Resources.tsx ***!
1132
+ \*******************************************************/
1133
+ /*! exports provided: Resources */
1134
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1135
+
1136
+ "use strict";
1137
+ __webpack_require__.r(__webpack_exports__);
1138
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Resources", function() { return Resources; });
1139
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
1140
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1141
+ /* harmony import */ var _libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
1142
+
1143
+
1144
+ function Resources(props) {
1145
+ var video = props.video;
1146
+ if (!video.resources || !video.resources.data || !video.resources.data.length) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
1147
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1148
+ className: 'pb-3'
1149
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h2", {
1150
+ className: 'h4'
1151
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_1__["Text"], {
1152
+ phrase: 'resources',
1153
+ options: {
1154
+ count: video.resources.data.length
1155
+ }
1156
+ })), video.resources.data.map(function (r, i) {
1157
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1158
+ key: i
1159
+ }, r.name);
277
1160
  }));
278
1161
  }
279
1162
 
280
- function SubjectPreferenceGrid(props) {
281
- var subjects = props.subjects,
282
- hasSelectedBulk = props.hasSelectedBulk,
283
- eventHandlers = __rest(props, ["subjects", "hasSelectedBulk"]);
1163
+ /***/ }),
1164
+
1165
+ /***/ "./src/shared/components/synopsis/Synopsis.tsx":
1166
+ /*!*****************************************************!*\
1167
+ !*** ./src/shared/components/synopsis/Synopsis.tsx ***!
1168
+ \*****************************************************/
1169
+ /*! exports provided: Synopsis */
1170
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
1171
+
1172
+ "use strict";
1173
+ __webpack_require__.r(__webpack_exports__);
1174
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Synopsis", function() { return Synopsis; });
1175
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
1176
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
1177
+ /* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! marked */ "marked");
1178
+ /* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(marked__WEBPACK_IMPORTED_MODULE_1__);
1179
+ /* harmony import */ var _libs_common_src_backbone__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone */ "../../libs/common/src/backbone/index.ts");
1180
+ /* harmony import */ var _libs_common_src_react_hooks_useViewModel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../libs/common/src/react/hooks/useViewModel */ "../../libs/common/src/react/hooks/useViewModel.ts");
1181
+ /* harmony import */ var _libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
1182
+ /* harmony import */ var _libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/div-button/DivButton */ "../../libs/shared/src/components/div-button/DivButton.tsx");
1183
+ /* harmony import */ var _libs_shared_src_utils_ImageHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../libs/shared/src/utils/ImageHelper */ "../../libs/shared/src/utils/ImageHelper.ts");
1184
+ /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
1185
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
1186
+ /* harmony import */ var shared_constants_LiteViewModels__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! shared/constants/LiteViewModels */ "./src/shared/constants/LiteViewModels.ts");
1187
+ /* harmony import */ var _synopsis_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./synopsis.scss */ "./src/shared/components/synopsis/synopsis.scss");
1188
+ /* harmony import */ var _synopsis_scss__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_synopsis_scss__WEBPACK_IMPORTED_MODULE_10__);
1189
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
1190
+
1191
+ 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."); }
1192
+
1193
+ 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); }
1194
+
1195
+ 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; }
1196
+
1197
+ 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; }
1198
+
1199
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
1200
+
1201
+
1202
+
1203
+
1204
+
284
1205
 
285
- var _React$useContext2 = react__WEBPACK_IMPORTED_MODULE_0__["useContext"](_contexts_SubjectPreferencesContext__WEBPACK_IMPORTED_MODULE_5__["SubjectPreferencesContext"]),
286
- expandedSubject = _React$useContext2.expandedSubject;
287
1206
 
288
- var itemsPerRow = useGetRowItemCapacity();
1207
+
1208
+
1209
+
1210
+
1211
+
1212
+ var namespace = 'shared.synopsis';
1213
+ function Synopsis(props) {
1214
+ var _a;
1215
+
1216
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_0__["useState"](''),
1217
+ _React$useState2 = _slicedToArray(_React$useState, 2),
1218
+ markdownHTML = _React$useState2[0],
1219
+ setMarkdownHTML = _React$useState2[1];
1220
+
1221
+ var _useViewModel = Object(_libs_common_src_react_hooks_useViewModel__WEBPACK_IMPORTED_MODULE_3__["useViewModel"])(shared_constants_LiteViewModels__WEBPACK_IMPORTED_MODULE_9__["ViewModelKeys"].WEB_PLAYER_DATA),
1222
+ _useViewModel2 = _slicedToArray(_useViewModel, 2),
1223
+ setPlayerData = _useViewModel2[1];
1224
+
1225
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
1226
+ if (!props.hasGlanceData) return;
1227
+ var html = marked__WEBPACK_IMPORTED_MODULE_1__(props.video.glance.content); // Add styling to any tags
1228
+
1229
+ var wrappedTags = html.split('a href="cv-tag://').join('a class="badge-pill tag mr-1 my-1 px-2 py-1" href="cv-tag://');
1230
+ setMarkdownHTML(wrappedTags);
1231
+ }, [(_a = props.video.glance) === null || _a === void 0 ? void 0 : _a.content]);
289
1232
  /**
290
- * This is an array of arrays, where each sub-array is a row of classifications.
291
- * We do this to make sure any sub-grid's of child preference options get rendered in the row
292
- * directly beneath their parent's row.
1233
+ * If we don't have a glance, or our glance is not markdown
1234
+ * we tell the PlayPage to render the description instead and return.
293
1235
  */
294
1236
 
295
- var subjectRows = subjects.reduce(function (acc, subject, index) {
296
- index % itemsPerRow === 0 ? acc.push([subject]) // Start a new row
297
- : _common_src_react_utils_ArrayHelper__WEBPACK_IMPORTED_MODULE_1__["ArrayHelper"].last(acc).push(subject); // Fill up an existing row
1237
+ if (!props.hasGlanceData && props.hasDetails) {
1238
+ props.onClickShowDescription();
1239
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
1240
+ }
1241
+ /**
1242
+ * Because the markdown is injected as a HTML string, we cannot attach click event handlers directly onto
1243
+ * the links that we want to. Instead, we attach one click handler to the entire markdown container, meaning
1244
+ * click events bubble up, and we can use `event.target` to see which element was clicked.
1245
+ */
298
1246
 
299
- return acc;
300
- }, []);
301
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("ul", {
302
- className: _subject_preference_grid_scss__WEBPACK_IMPORTED_MODULE_6___default.a.grid
303
- }, subjectRows.map(function (row, i) {
304
- var isExpanded = expandedSubject && !!row.find(function (subject) {
305
- return expandedSubject.id === subject.id && subject.isExpandableOption;
1247
+
1248
+ function onClickMarkDown(event) {
1249
+ event.preventDefault();
1250
+ var href = event.target.getAttribute('href'); // Ignore click events that do not have a href
1251
+
1252
+ if (!href) return; // When a timestamp is clicked, we update the player time
1253
+
1254
+ if (href.includes('cv-timestamp://')) {
1255
+ var time = href.split('cv-timestamp://')[1];
1256
+ setPlayerData('startTime', time);
1257
+ return;
1258
+ } // When a tag is clicked, we navigate to search results for that tag
1259
+
1260
+
1261
+ if (href.includes('cv-tag://')) {
1262
+ var tag = href.split('cv-tag://')[1];
1263
+ _libs_common_src_backbone__WEBPACK_IMPORTED_MODULE_2__["Core"].AppLinkHelper.trigger({
1264
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_7__["AppChannels"].SEARCH,
1265
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_8__["Actions"].Search.HOME,
1266
+ params: {
1267
+ tag: tag
1268
+ }
1269
+ });
1270
+ return;
1271
+ }
1272
+ }
1273
+
1274
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1275
+ className: "rounded border px-3 mb-3 position-relative d-flex align-items-center justify-content-center ".concat(_synopsis_scss__WEBPACK_IMPORTED_MODULE_10___default.a.container)
1276
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1277
+ className: "".concat(_synopsis_scss__WEBPACK_IMPORTED_MODULE_10___default.a.content, " py-5")
1278
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h2", null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_4__["Text"], {
1279
+ namespace: namespace,
1280
+ phrase: 'videoAtAGlance'
1281
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1282
+ onClick: onClickMarkDown,
1283
+ dangerouslySetInnerHTML: {
1284
+ __html: markdownHTML
1285
+ }
1286
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1287
+ className: 'mt-3'
1288
+ }, props.hasDetails && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_5__["DivButton"], {
1289
+ onClick: props.onClickShowDescription,
1290
+ className: 'cursor-pointer d-inline-block mr-4 font-weight-500'
1291
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_4__["Text"], {
1292
+ namespace: namespace,
1293
+ phrase: 'readFullDescription'
1294
+ })), props.hasCurriculumLinks && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_5__["DivButton"], {
1295
+ onClick: props.onClickShowCurriculumLinks,
1296
+ className: 'cursor-pointer d-inline-block font-weight-500'
1297
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_4__["Text"], {
1298
+ namespace: namespace,
1299
+ phrase: 'seeCurriculumLinks'
1300
+ })))), props.theme ? Object.keys(props.theme.data).map(function (imageDataKey) {
1301
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1302
+ key: props.theme.data[imageDataKey].fileId,
1303
+ className: "".concat(_synopsis_scss__WEBPACK_IMPORTED_MODULE_10___default.a[imageDataKey], " ").concat(_synopsis_scss__WEBPACK_IMPORTED_MODULE_10___default.a.background),
1304
+ style: {
1305
+ backgroundImage: "url('".concat(_libs_shared_src_utils_ImageHelper__WEBPACK_IMPORTED_MODULE_6__["ImageHelper"].createUrl(props.theme.data[imageDataKey].url, {
1306
+ format: 'png'
1307
+ }), "')")
1308
+ }
306
1309
  });
307
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], {
308
- key: i
309
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](SubjectPreferenceGridRow, Object.assign({
310
- subjects: row,
311
- hasSelectedBulk: hasSelectedBulk
312
- }, eventHandlers)), isExpanded && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("li", {
313
- className: "".concat(_subject_preference_grid_scss__WEBPACK_IMPORTED_MODULE_6___default.a.subgrid, " m-0")
314
- }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](SubjectPreferenceGrid, Object.assign({
315
- subjects: expandedSubject.children,
316
- hasSelectedBulk: hasSelectedBulk
317
- }, eventHandlers))));
318
- }));
1310
+ }) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null));
319
1311
  }
320
1312
 
321
1313
  /***/ }),
322
1314
 
323
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/subject-preference-grid.scss":
324
- /*!***********************************************************************************************************************************************************!*\
325
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-grid/subject-preference-grid.scss ***!
326
- \***********************************************************************************************************************************************************/
1315
+ /***/ "./src/shared/components/synopsis/synopsis.scss":
1316
+ /*!******************************************************!*\
1317
+ !*** ./src/shared/components/synopsis/synopsis.scss ***!
1318
+ \******************************************************/
327
1319
  /*! no static exports found */
328
1320
  /***/ (function(module, exports, __webpack_require__) {
329
1321
 
330
1322
  // extracted by mini-css-extract-plugin
331
- module.exports = {"grid":"cv--grid--G_RXX","subgrid":"cv--subgrid--38ohZ"};
1323
+ module.exports = {"container":"cv--container--1XOYA","content":"cv--content--UcxNO","background":"cv--background--3gpaY","topLeft":"cv--topLeft--2s7I6","bottomLeft":"cv--bottomLeft--23UKL","topRight":"cv--topRight--ec_-l","bottomRight":"cv--bottomRight--1xMKp"};
332
1324
 
333
1325
  /***/ }),
334
1326
 
335
- /***/ "../../libs/shared/src/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItem.tsx":
336
- /*!********************************************************************************************************************************************************!*\
337
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/components/preferences/subject-preference-item/SubjectPreferenceItem.tsx ***!
338
- \********************************************************************************************************************************************************/
339
- /*! exports provided: SubjectPreferenceItem */
1327
+ /***/ "./src/shared/components/video-details/VideoDetails.tsx":
1328
+ /*!**************************************************************!*\
1329
+ !*** ./src/shared/components/video-details/VideoDetails.tsx ***!
1330
+ \**************************************************************/
1331
+ /*! exports provided: VideoDetailsWithScrollbar */
340
1332
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
341
1333
 
342
1334
  "use strict";
343
1335
  __webpack_require__.r(__webpack_exports__);
344
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubjectPreferenceItem", function() { return SubjectPreferenceItem; });
1336
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "VideoDetailsWithScrollbar", function() { return VideoDetailsWithScrollbar; });
345
1337
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
346
1338
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
347
- /* harmony import */ var _utils_ImageHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../utils/ImageHelper */ "../../libs/shared/src/utils/ImageHelper.ts");
348
- /* harmony import */ var _enums_Images__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../enums/Images */ "../../libs/shared/src/enums/Images.ts");
349
- /* harmony import */ var _contexts_SubjectPreferencesContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../contexts/SubjectPreferencesContext */ "../../libs/shared/src/apps/subjects/contexts/SubjectPreferencesContext.ts");
350
- /* harmony import */ var _preference_item_PreferenceItem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../preference-item/PreferenceItem */ "../../libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.tsx");
351
- /* harmony import */ var _components_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../components/tooltip/Tooltip */ "../../libs/shared/src/components/tooltip/Tooltip.tsx");
1339
+ /* harmony import */ var react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-custom-scrollbars */ "react-custom-scrollbars");
1340
+ /* harmony import */ var react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1__);
1341
+ /* 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");
1342
+ /* harmony import */ var _libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
1343
+ /* harmony import */ var _libs_shared_src_components_badges_BadgeListContainer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/badges/BadgeListContainer */ "../../libs/shared/src/components/badges/BadgeListContainer.tsx");
1344
+ /* harmony import */ var _libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/badges/Badge */ "../../libs/shared/src/components/badges/Badge.tsx");
1345
+ /* harmony import */ var _libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/div-button/DivButton */ "../../libs/shared/src/components/div-button/DivButton.tsx");
1346
+ /* harmony import */ var _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../../libs/analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
1347
+ /* harmony import */ var _libs_shared_src_components_tags_TagList__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../libs/shared/src/components/tags/TagList */ "../../libs/shared/src/components/tags/TagList.tsx");
1348
+ /* harmony import */ var shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! shared/constants/LiteRadioChannels */ "./src/shared/constants/LiteRadioChannels.ts");
1349
+ /* harmony import */ var shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! shared/constants/LiteActions */ "./src/shared/constants/LiteActions.ts");
1350
+ /* harmony import */ var shared_components_immersive_reader_ImmersiveReader__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! shared/components/immersive-reader/ImmersiveReader */ "./src/shared/components/immersive-reader/ImmersiveReader.tsx");
1351
+ /* harmony import */ var shared_constants_MinimumGlanceHeight__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! shared/constants/MinimumGlanceHeight */ "./src/shared/constants/MinimumGlanceHeight.ts");
352
1352
 
353
1353
 
354
1354
 
355
1355
 
356
1356
 
357
1357
 
358
- function SubjectPreferenceItem(props) {
359
- var _a, _b, _c, _d;
360
1358
 
361
- var context = react__WEBPACK_IMPORTED_MODULE_0__["useContext"](_contexts_SubjectPreferencesContext__WEBPACK_IMPORTED_MODULE_3__["SubjectPreferencesContext"]);
362
- var coverUrl = props.subject.cover ? _utils_ImageHelper__WEBPACK_IMPORTED_MODULE_1__["ImageHelper"].createUrl(props.subject.cover.url, {
363
- size: _enums_Images__WEBPACK_IMPORTED_MODULE_2__["ImageSize"].Small
364
- }) : '';
365
- var childIds = props.subject.isExpandableOption ? props.subject.children.map(function (child) {
366
- return child.id;
367
- }) : [];
368
- var selectedChildCount = !props.hasSelectedBulk ? (_b = (_a = context) === null || _a === void 0 ? void 0 : _a.selectedSubjects) === null || _b === void 0 ? void 0 : _b.filter(function (selection) {
369
- return childIds.includes(selection);
370
- }).length : 0;
371
- var component = react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_preference_item_PreferenceItem__WEBPACK_IMPORTED_MODULE_4__["PreferenceItem"], {
372
- name: props.subject.name,
373
- imageUrl: coverUrl,
374
- onClick: props.onClick,
375
- isSelected: props.selected,
376
- isDisabled: props.disabled,
377
- isExpandable: props.subject.isExpandableOption,
378
- expand: ((_d = (_c = context) === null || _c === void 0 ? void 0 : _c.expandedSubject) === null || _d === void 0 ? void 0 : _d.id) === props.subject.id,
379
- selectedChildCount: selectedChildCount,
380
- extraClasses: props.extraClasses,
381
- hideStatus: props.hideStatus
382
- });
383
- return props.disabled ? react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("span", null, component) : react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_5__["Tooltip"], {
384
- title: props.subject.name
385
- }, component);
1359
+
1360
+
1361
+
1362
+
1363
+
1364
+
1365
+ var namespace = 'shared.videoDetails';
1366
+ var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__["LanguageService"].encloseNamespace(namespace);
1367
+
1368
+ function CommaList(props) {
1369
+ var label = props.label,
1370
+ items = props.items,
1371
+ className = props.className;
1372
+ var hasItems = items && items.data && items.data.length;
1373
+ if (!hasItems) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
1374
+ var commaSeperated = items.data.map(function (i) {
1375
+ return i.name;
1376
+ }).join(', ');
1377
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1378
+ className: className
1379
+ }, label, ": ", commaSeperated);
1380
+ }
1381
+
1382
+ function VideoDetailsWithScrollbar(props) {
1383
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
1384
+
1385
+ var video = props.video;
1386
+ if (!props.hasBadges && !props.hasPPDD && !((_b = (_a = props.video.tags) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.length) && !props.video.description) return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null);
1387
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_3__["LanguageNamespaceContext"].Provider, {
1388
+ value: namespace
1389
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1390
+ className: 'rounded border p-3 mb-3'
1391
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react_custom_scrollbars__WEBPACK_IMPORTED_MODULE_1___default.a, {
1392
+ autoHeight: true,
1393
+ autoHeightMax: shared_constants_MinimumGlanceHeight__WEBPACK_IMPORTED_MODULE_12__["MINIMUM_GLANCE_HEIGHT"]
1394
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1395
+ className: video.description ? 'pb-2' : ''
1396
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1397
+ className: 'mb-2 d-flex align-items-center justify-content-between'
1398
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h2", {
1399
+ className: 'h6 mb-0'
1400
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_3__["Text"], {
1401
+ phrase: 'details'
1402
+ })), (props.hasGlanceData || props.hasCurriculumLinks) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_6__["DivButton"], {
1403
+ className: 'text-muted',
1404
+ onClick: props.hasGlanceData ? props.onClickShowSynopsis : props.onClickSeeCurriculumLinks
1405
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_3__["Text"], {
1406
+ phrase: props.hasGlanceData ? 'seeGlance' : 'seeCurriculumLinks'
1407
+ }))), props.hasBadges && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_badges_BadgeListContainer__WEBPACK_IMPORTED_MODULE_4__["BadgeListContainer"], {
1408
+ className: 'pb-1'
1409
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
1410
+ type: _libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].Rating,
1411
+ data: video.rating
1412
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
1413
+ type: _libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].ProductionYear,
1414
+ data: video.productionYear
1415
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
1416
+ type: _libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].Interactive,
1417
+ data: video.interactives
1418
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["Badge"], {
1419
+ type: _libs_shared_src_components_badges_Badge__WEBPACK_IMPORTED_MODULE_5__["BadgeType"].Resources,
1420
+ data: video.resources
1421
+ })), props.hasPPDD && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1422
+ className: 'pb-2'
1423
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](CommaList, {
1424
+ label: getPhrase('productionCompanies', {
1425
+ smartCount: (_d = (_c = video.productionCompanies) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.length
1426
+ }),
1427
+ items: video.productionCompanies
1428
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](CommaList, {
1429
+ label: getPhrase('distributors', {
1430
+ smartCount: (_f = (_e = video.distributors) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.length
1431
+ }),
1432
+ items: video.distributors
1433
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](CommaList, {
1434
+ label: getPhrase('producers', {
1435
+ smartCount: (_h = (_g = video.producers) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h.length
1436
+ }),
1437
+ items: video.producers
1438
+ }), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](CommaList, {
1439
+ label: getPhrase('directors', {
1440
+ smartCount: (_k = (_j = video.directors) === null || _j === void 0 ? void 0 : _j.data) === null || _k === void 0 ? void 0 : _k.length
1441
+ }),
1442
+ items: video.directors
1443
+ })), !!((_m = (_l = video.tags) === null || _l === void 0 ? void 0 : _l.data) === null || _m === void 0 ? void 0 : _m.length) && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_tags_TagList__WEBPACK_IMPORTED_MODULE_8__["TagList"], {
1444
+ tags: video.tags,
1445
+ getAppLink: function getAppLink(tag) {
1446
+ return {
1447
+ application: shared_constants_LiteRadioChannels__WEBPACK_IMPORTED_MODULE_9__["AppChannels"].SEARCH,
1448
+ action: shared_constants_LiteActions__WEBPACK_IMPORTED_MODULE_10__["Actions"].Search.HOME,
1449
+ params: {
1450
+ tag: tag.name
1451
+ }
1452
+ };
1453
+ }
1454
+ })), !!video.description && react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
1455
+ className: "d-flex align-items-center ".concat(props.hasBadges || props.hasPPDD || ((_p = (_o = video.tags) === null || _o === void 0 ? void 0 : _o.data) === null || _p === void 0 ? void 0 : _p.length) ? 'pt-2' : '')
1456
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("h2", {
1457
+ className: 'h6 mb-1'
1458
+ }, react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_3__["Text"], {
1459
+ phrase: 'description'
1460
+ })), react__WEBPACK_IMPORTED_MODULE_0__["createElement"](shared_components_immersive_reader_ImmersiveReader__WEBPACK_IMPORTED_MODULE_11__["ImmersiveReader"], {
1461
+ text: video.description,
1462
+ title: video.name,
1463
+ className: 'pl-2',
1464
+ analyticsOptions: {
1465
+ location: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_7__["LocationContext"].PlayPage,
1466
+ entity: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_7__["EntityType"].Video,
1467
+ actionType: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_7__["UserAction"].Click,
1468
+ descriptor: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_7__["ClickDescriptor"].LaunchImmersiveReader
1469
+ },
1470
+ analyticsData: {
1471
+ id: video.id,
1472
+ type: 'description'
1473
+ }
1474
+ })), props.video.description && react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("p", {
1475
+ className: 'mb-0'
1476
+ }, props.video.description)))));
386
1477
  }
387
1478
 
388
1479
  /***/ }),
389
1480
 
390
- /***/ "../../libs/shared/src/apps/subjects/contexts/SubjectPreferencesContext.ts":
391
- /*!*********************************************************************************************************************!*\
392
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/apps/subjects/contexts/SubjectPreferencesContext.ts ***!
393
- \*********************************************************************************************************************/
394
- /*! exports provided: SubjectPreferencesContext */
1481
+ /***/ "./src/shared/constants/MinimumGlanceHeight.ts":
1482
+ /*!*****************************************************!*\
1483
+ !*** ./src/shared/constants/MinimumGlanceHeight.ts ***!
1484
+ \*****************************************************/
1485
+ /*! exports provided: MINIMUM_GLANCE_HEIGHT */
395
1486
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
396
1487
 
397
1488
  "use strict";
398
1489
  __webpack_require__.r(__webpack_exports__);
399
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SubjectPreferencesContext", function() { return SubjectPreferencesContext; });
400
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
401
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
402
-
403
- var SubjectPreferencesContext = Object(react__WEBPACK_IMPORTED_MODULE_0__["createContext"])(undefined);
1490
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MINIMUM_GLANCE_HEIGHT", function() { return MINIMUM_GLANCE_HEIGHT; });
1491
+ // 368 is the min height of Video at a glance which is defined as $glanceHeight in synopsis.scss
1492
+ var MINIMUM_GLANCE_HEIGHT = 368; // px
404
1493
 
405
1494
  /***/ }),
406
1495
 
407
- /***/ "../../libs/shared/src/hooks/UseAlerts.ts":
408
- /*!************************************************************************************!*\
409
- !*** C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseAlerts.ts ***!
410
- \************************************************************************************/
411
- /*! exports provided: useAlerts */
1496
+ /***/ "./src/shared/hooks/useWindowListeners.ts":
1497
+ /*!************************************************!*\
1498
+ !*** ./src/shared/hooks/useWindowListeners.ts ***!
1499
+ \************************************************/
1500
+ /*! exports provided: useOnScroll, useOnResize */
412
1501
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
413
1502
 
414
1503
  "use strict";
415
1504
  __webpack_require__.r(__webpack_exports__);
416
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useAlerts", function() { return useAlerts; });
417
- /* harmony import */ var _common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/src/react/hooks/UseService */ "../../libs/common/src/react/hooks/UseService.ts");
418
- /* harmony import */ var _common_src_backbone_services_BaseAlertService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/src/backbone/services/BaseAlertService */ "../../libs/common/src/backbone/services/BaseAlertService.ts");
419
- /* harmony import */ var _common_src_backbone_constants_CommonServices__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/src/backbone/constants/CommonServices */ "../../libs/common/src/backbone/constants/CommonServices.ts");
420
-
1505
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useOnScroll", function() { return useOnScroll; });
1506
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useOnResize", function() { return useOnResize; });
1507
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
1508
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
421
1509
 
422
1510
 
423
- var useAlerts = function useAlerts() {
424
- var alertService = Object(_common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_0__["useService"])(_common_src_backbone_constants_CommonServices__WEBPACK_IMPORTED_MODULE_2__["CommonServices"].ALERT);
425
- return {
426
- success: function success(alertContent) {
427
- alertService.success(alertContent)();
428
- },
429
- error: function error(alertContent) {
430
- alertService.error(alertContent)();
431
- },
432
- warning: function warning(alertContent) {
433
- alertService.createAlert({
434
- type: _common_src_backbone_services_BaseAlertService__WEBPACK_IMPORTED_MODULE_1__["AlertType"].Warning,
435
- heading: _common_src_backbone_services_BaseAlertService__WEBPACK_IMPORTED_MODULE_1__["DefaultAlertHeading"].Warning,
436
- message: alertContent
437
- });
438
- }
1511
+ function createUseWindowListener(event) {
1512
+ return function useWindowListener(callback) {
1513
+ /**
1514
+ * Memoize the callback so it's the same function
1515
+ * when we call removeEventListener
1516
+ */
1517
+ var memoCallback = react__WEBPACK_IMPORTED_MODULE_0__["useCallback"](callback, []);
1518
+ react__WEBPACK_IMPORTED_MODULE_0__["useEffect"](function () {
1519
+ window.addEventListener(event, memoCallback);
1520
+ return function () {
1521
+ return window.removeEventListener(event, memoCallback);
1522
+ };
1523
+ }, []);
439
1524
  };
440
- };
1525
+ }
1526
+
1527
+ var useOnScroll = createUseWindowListener('scroll');
1528
+ var useOnResize = createUseWindowListener('resize');
441
1529
 
442
1530
  /***/ })
443
1531