@clickview/library-editor 1.1.27-dev.1 → 1.1.27-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. package/dist/en.json +1 -1
  2. package/dist/libs/analytics/src/interfaces/AnalyticsTypes.d.ts +1 -0
  3. package/dist/libs/common/src/backbone/utils/LocalStorageHelper.d.ts +1 -1
  4. package/dist/libs/shared/src/interfaces/models/ClassroomGroup.d.ts +1 -1
  5. package/dist/projects/library-editor/src/app.d.ts +1 -0
  6. package/dist/projects/library-editor/src/apps/library-editor/components/tags/TagsComponent.d.ts +1 -0
  7. package/dist/projects/library-editor/src/shared/components/typeahead-input/SearchTypeaheadComponent.d.ts +1 -0
  8. package/dist/scripts/{0-e25d47c666.chunk.js → 0-93a3cbfbb6.chunk.js} +1 -1
  9. package/dist/scripts/{1-620c685eee.chunk.js → 1-69d9709724.chunk.js} +1 -1
  10. package/dist/scripts/{10-3baf058564.chunk.js → 10-8b01d98b20.chunk.js} +1 -1
  11. package/dist/scripts/{11-9f5f0c25dc.chunk.js → 11-cbe69fa3f0.chunk.js} +1 -1
  12. package/dist/scripts/{12-b460ad405e.chunk.js → 12-9b10cdc17d.chunk.js} +1 -1
  13. package/dist/scripts/13-1e10e6e87f.chunk.js +1 -0
  14. package/dist/scripts/{14-670309ef33.chunk.js → 14-ab7a30ee22.chunk.js} +1 -1
  15. package/dist/scripts/{15-39010184ed.chunk.js → 15-74a4408ee9.chunk.js} +1 -1
  16. package/dist/scripts/{16-0971cabfc8.chunk.js → 16-42f9f38a5b.chunk.js} +1 -1
  17. package/dist/scripts/{17-f364868870.chunk.js → 17-b1675f5397.chunk.js} +1 -1
  18. package/dist/scripts/{2-cd7f1d10b5.chunk.js → 2-cfce7347b3.chunk.js} +1 -1
  19. package/dist/scripts/{20-42dc06da39.chunk.js → 20-9f938a6f3e.chunk.js} +1 -1
  20. package/dist/scripts/{21-05615559be.chunk.js → 21-3a0591790a.chunk.js} +1 -1
  21. package/dist/scripts/{22-70b4c18dd2.chunk.js → 22-75ca7c2ae2.chunk.js} +1 -1
  22. package/dist/scripts/23-6cc6df1006.chunk.js +1 -0
  23. package/dist/scripts/{24-6fbd14025b.chunk.js → 24-857f2e7cba.chunk.js} +1 -1
  24. package/dist/scripts/{25-3d067b8b9a.chunk.js → 25-30d6eaa470.chunk.js} +1 -1
  25. package/dist/scripts/{26-468305820a.chunk.js → 26-7e0e9534cf.chunk.js} +1 -1
  26. package/dist/scripts/27-460f20f83b.chunk.js +1 -0
  27. package/dist/scripts/{28-f3f43a3001.chunk.js → 28-c4655d4bd8.chunk.js} +1 -1
  28. package/dist/scripts/{29-268278d2ac.chunk.js → 29-3629c8b906.chunk.js} +1 -1
  29. package/dist/scripts/{3-4694b66aa5.chunk.js → 3-34f154b85d.chunk.js} +1 -1
  30. package/dist/scripts/{30-694b0a0d4b.chunk.js → 30-9d7a8c6475.chunk.js} +1 -1
  31. package/dist/scripts/{31-4c542c18dc.chunk.js → 31-a80eb231ed.chunk.js} +1 -1
  32. package/dist/scripts/{32-a1543ffe27.chunk.js → 32-db0c763740.chunk.js} +1 -1
  33. package/dist/scripts/{33-9685703df6.chunk.js → 33-b9fef236ae.chunk.js} +1 -1
  34. package/dist/scripts/{34-eb9f6709b3.chunk.js → 34-d2a7193286.chunk.js} +1 -1
  35. package/dist/scripts/{35-1ff49137e7.chunk.js → 35-1b97d95b2a.chunk.js} +1 -1
  36. package/dist/scripts/{36-9e89154ca2.chunk.js → 36-179634ea36.chunk.js} +1 -1
  37. package/dist/scripts/{37-80589d542e.chunk.js → 37-e6d9fbefd1.chunk.js} +1 -1
  38. package/dist/scripts/{38-7e88534f67.chunk.js → 38-0c6051fb45.chunk.js} +1 -1
  39. package/dist/scripts/{39-99824f3b64.chunk.js → 39-5fffd05811.chunk.js} +1 -1
  40. package/dist/scripts/{4-ad1e4b43da.chunk.js → 4-2a04f5b2b3.chunk.js} +1 -1
  41. package/dist/scripts/{40-dbfd665c74.chunk.js → 40-5d3d9611b5.chunk.js} +1 -1
  42. package/dist/scripts/{41-25fbac3d17.chunk.js → 41-f3b2533950.chunk.js} +1 -1
  43. package/dist/scripts/42-075fbbf19d.chunk.js +1 -0
  44. package/dist/scripts/{43-5ef29feb2c.chunk.js → 43-205ccfa9a4.chunk.js} +1 -1
  45. package/dist/scripts/{44-223f602431.chunk.js → 44-4be8465afa.chunk.js} +1 -1
  46. package/dist/scripts/{45-344492a36f.chunk.js → 45-541254a177.chunk.js} +1 -1
  47. package/dist/scripts/{46-9ca7afd6a4.chunk.js → 46-fe575b6c9f.chunk.js} +1 -1
  48. package/dist/scripts/{47-ac0c9c5ce1.chunk.js → 47-18d84f7b83.chunk.js} +1 -1
  49. package/dist/scripts/{48-6bf590b9a0.chunk.js → 48-40adeb652e.chunk.js} +1 -1
  50. package/dist/scripts/{49-8e3e782ffb.chunk.js → 49-ac59f2a6fd.chunk.js} +1 -1
  51. package/dist/scripts/{5-b236603e85.chunk.js → 5-ce9948090c.chunk.js} +1 -1
  52. package/dist/scripts/{50-30ba08212e.chunk.js → 50-8cc4935ea5.chunk.js} +1 -1
  53. package/dist/scripts/{51-828972defb.chunk.js → 51-cd80402e6e.chunk.js} +1 -1
  54. package/dist/scripts/{52-b2acf3e742.chunk.js → 52-7e11748c73.chunk.js} +1 -1
  55. package/dist/scripts/{53-5d6ea94871.chunk.js → 53-e807e56657.chunk.js} +1 -1
  56. package/dist/scripts/{54-2d8bd6fde0.chunk.js → 54-265c2852ce.chunk.js} +1 -1
  57. package/dist/scripts/{55-4a8d360746.chunk.js → 55-68bef0b859.chunk.js} +1 -1
  58. package/dist/scripts/{56-ad12ebab5f.chunk.js → 56-f52cc13b44.chunk.js} +1 -1
  59. package/dist/scripts/{57-53b89c2ef0.chunk.js → 57-77549e4856.chunk.js} +1 -1
  60. package/dist/scripts/{58-b246abe78c.chunk.js → 58-3f44c0ba1a.chunk.js} +1 -1
  61. package/dist/scripts/{59-19290686e0.chunk.js → 59-bf231da287.chunk.js} +1 -1
  62. package/dist/scripts/{6-6fb543aa78.chunk.js → 6-97a29c3fdd.chunk.js} +1 -1
  63. package/dist/scripts/{60-0c075e7b5c.chunk.js → 60-c6a9325b5e.chunk.js} +1 -1
  64. package/dist/scripts/{61-2725bbfab2.chunk.js → 61-5fe4279f6d.chunk.js} +1 -1
  65. package/dist/scripts/{62-472d10a18e.chunk.js → 62-ff1c8453b6.chunk.js} +1 -1
  66. package/dist/scripts/{63-7d00e50441.chunk.js → 63-47a43e2399.chunk.js} +1 -1
  67. package/dist/scripts/{64-1b42f78644.chunk.js → 64-398f9ac217.chunk.js} +1 -1
  68. package/dist/scripts/{65-14af88c745.chunk.js → 65-d75308a09e.chunk.js} +1 -1
  69. package/dist/scripts/{66-bc274df13a.chunk.js → 66-ec32c5588a.chunk.js} +1 -1
  70. package/dist/scripts/{67-d1edef09d6.chunk.js → 67-6805e53bfb.chunk.js} +1 -1
  71. package/dist/scripts/{68-52468201b9.chunk.js → 68-046ada4945.chunk.js} +1 -1
  72. package/dist/scripts/{69-b681e9a99c.chunk.js → 69-235a8e6754.chunk.js} +1 -1
  73. package/dist/scripts/{7-2807a666bc.chunk.js → 7-55f3aed0f4.chunk.js} +1 -1
  74. package/dist/scripts/{70-d4018838a9.chunk.js → 70-150be3f4a2.chunk.js} +1 -1
  75. package/dist/scripts/{71-29cce07c7f.chunk.js → 71-c63b7a2a30.chunk.js} +1 -1
  76. package/dist/scripts/{72-6f83214b8d.chunk.js → 72-53bdb8c37f.chunk.js} +1 -1
  77. package/dist/scripts/{8-8f44e8bfc4.chunk.js → 8-94205353a6.chunk.js} +1 -1
  78. package/dist/scripts/{9-b8f9ea66c4.chunk.js → 9-0776e647a0.chunk.js} +1 -1
  79. package/dist/scripts/bundle-704119eb6d.min.js +8 -0
  80. package/dist/scripts/bundles.json +2 -2
  81. package/dist/scripts/polyfills-44c21c47b6.min.js +1 -0
  82. package/package.json +4 -4
  83. package/dist/css/1.chunk.css.map +0 -1
  84. package/dist/css/10.chunk.css.map +0 -1
  85. package/dist/css/11.chunk.css +0 -137
  86. package/dist/css/11.chunk.css.map +0 -1
  87. package/dist/css/12.chunk.css.map +0 -1
  88. package/dist/css/13.chunk.css.map +0 -1
  89. package/dist/css/14.chunk.css.map +0 -1
  90. package/dist/css/16.chunk.css.map +0 -1
  91. package/dist/css/17.chunk.css.map +0 -1
  92. package/dist/css/18.chunk.css +0 -20
  93. package/dist/css/18.chunk.css.map +0 -1
  94. package/dist/css/2.chunk.css +0 -145
  95. package/dist/css/2.chunk.css.map +0 -1
  96. package/dist/css/21.chunk.css.map +0 -1
  97. package/dist/css/22.chunk.css.map +0 -1
  98. package/dist/css/23.chunk.css.map +0 -1
  99. package/dist/css/25.chunk.css.map +0 -1
  100. package/dist/css/26.chunk.css.map +0 -1
  101. package/dist/css/28.chunk.css.map +0 -1
  102. package/dist/css/29.chunk.css.map +0 -1
  103. package/dist/css/3.chunk.css.map +0 -1
  104. package/dist/css/30.chunk.css.map +0 -1
  105. package/dist/css/31.chunk.css.map +0 -1
  106. package/dist/css/32.chunk.css.map +0 -1
  107. package/dist/css/33.chunk.css.map +0 -1
  108. package/dist/css/34.chunk.css +0 -21
  109. package/dist/css/34.chunk.css.map +0 -1
  110. package/dist/css/35.chunk.css +0 -20
  111. package/dist/css/35.chunk.css.map +0 -1
  112. package/dist/css/36.chunk.css +0 -14
  113. package/dist/css/36.chunk.css.map +0 -1
  114. package/dist/css/37.chunk.css.map +0 -1
  115. package/dist/css/38.chunk.css.map +0 -1
  116. package/dist/css/40.chunk.css.map +0 -1
  117. package/dist/css/41.chunk.css.map +0 -1
  118. package/dist/css/42.chunk.css.map +0 -1
  119. package/dist/css/43.chunk.css.map +0 -1
  120. package/dist/css/44.chunk.css.map +0 -1
  121. package/dist/css/45.chunk.css.map +0 -1
  122. package/dist/css/46.chunk.css.map +0 -1
  123. package/dist/css/47.chunk.css.map +0 -1
  124. package/dist/css/48.chunk.css.map +0 -1
  125. package/dist/css/49.chunk.css +0 -35
  126. package/dist/css/49.chunk.css.map +0 -1
  127. package/dist/css/50.chunk.css.map +0 -1
  128. package/dist/css/51.chunk.css.map +0 -1
  129. package/dist/css/52.chunk.css +0 -66
  130. package/dist/css/52.chunk.css.map +0 -1
  131. package/dist/css/55.chunk.css.map +0 -1
  132. package/dist/css/56.chunk.css.map +0 -1
  133. package/dist/css/58.chunk.css.map +0 -1
  134. package/dist/css/59.chunk.css.map +0 -1
  135. package/dist/css/6.chunk.css.map +0 -1
  136. package/dist/css/60.chunk.css +0 -18
  137. package/dist/css/60.chunk.css.map +0 -1
  138. package/dist/css/62.chunk.css.map +0 -1
  139. package/dist/css/63.chunk.css +0 -170
  140. package/dist/css/63.chunk.css.map +0 -1
  141. package/dist/css/67.chunk.css +0 -78
  142. package/dist/css/67.chunk.css.map +0 -1
  143. package/dist/css/68.chunk.css +0 -17
  144. package/dist/css/68.chunk.css.map +0 -1
  145. package/dist/css/69.chunk.css +0 -17
  146. package/dist/css/69.chunk.css.map +0 -1
  147. package/dist/css/7.chunk.css.map +0 -1
  148. package/dist/css/70.chunk.css +0 -23
  149. package/dist/css/70.chunk.css.map +0 -1
  150. package/dist/css/71.chunk.css +0 -40
  151. package/dist/css/71.chunk.css.map +0 -1
  152. package/dist/css/72.chunk.css +0 -16
  153. package/dist/css/72.chunk.css.map +0 -1
  154. package/dist/css/73.chunk.css +0 -37
  155. package/dist/css/73.chunk.css.map +0 -1
  156. package/dist/css/74.chunk.css +0 -29
  157. package/dist/css/74.chunk.css.map +0 -1
  158. package/dist/css/75.chunk.css +0 -6
  159. package/dist/css/75.chunk.css.map +0 -1
  160. package/dist/css/76.chunk.css +0 -6
  161. package/dist/css/76.chunk.css.map +0 -1
  162. package/dist/css/8.chunk.css.map +0 -1
  163. package/dist/css/library-editor-app.css.map +0 -1
  164. package/dist/libs/shared/src/enums/PlayerMediaType.d.ts +0 -5
  165. package/dist/libs/shared/src/interfaces/models/interactive.d.ts +0 -9
  166. package/dist/scripts/0.chunk.js +0 -1039
  167. package/dist/scripts/0.chunk.js.map +0 -1
  168. package/dist/scripts/1.chunk.js +0 -442
  169. package/dist/scripts/1.chunk.js.map +0 -1
  170. package/dist/scripts/10.chunk.js +0 -820
  171. package/dist/scripts/10.chunk.js.map +0 -1
  172. package/dist/scripts/11.chunk.js +0 -4091
  173. package/dist/scripts/11.chunk.js.map +0 -1
  174. package/dist/scripts/12.chunk.js +0 -555
  175. package/dist/scripts/12.chunk.js.map +0 -1
  176. package/dist/scripts/13-89b3a0aebb.chunk.js +0 -1
  177. package/dist/scripts/13.chunk.js +0 -380
  178. package/dist/scripts/13.chunk.js.map +0 -1
  179. package/dist/scripts/14.chunk.js +0 -2386
  180. package/dist/scripts/14.chunk.js.map +0 -1
  181. package/dist/scripts/15.chunk.js +0 -314
  182. package/dist/scripts/15.chunk.js.map +0 -1
  183. package/dist/scripts/16.chunk.js +0 -1290
  184. package/dist/scripts/16.chunk.js.map +0 -1
  185. package/dist/scripts/17.chunk.js +0 -381
  186. package/dist/scripts/17.chunk.js.map +0 -1
  187. package/dist/scripts/18.chunk.js +0 -393
  188. package/dist/scripts/18.chunk.js.map +0 -1
  189. package/dist/scripts/19.chunk.js +0 -364
  190. package/dist/scripts/19.chunk.js.map +0 -1
  191. package/dist/scripts/2.chunk.js +0 -523
  192. package/dist/scripts/2.chunk.js.map +0 -1
  193. package/dist/scripts/20.chunk.js +0 -317
  194. package/dist/scripts/20.chunk.js.map +0 -1
  195. package/dist/scripts/21.chunk.js +0 -531
  196. package/dist/scripts/21.chunk.js.map +0 -1
  197. package/dist/scripts/22.chunk.js +0 -354
  198. package/dist/scripts/22.chunk.js.map +0 -1
  199. package/dist/scripts/23-3166dfeef5.chunk.js +0 -1
  200. package/dist/scripts/23.chunk.js +0 -604
  201. package/dist/scripts/23.chunk.js.map +0 -1
  202. package/dist/scripts/24.chunk.js +0 -318
  203. package/dist/scripts/24.chunk.js.map +0 -1
  204. package/dist/scripts/25.chunk.js +0 -365
  205. package/dist/scripts/25.chunk.js.map +0 -1
  206. package/dist/scripts/26.chunk.js +0 -442
  207. package/dist/scripts/26.chunk.js.map +0 -1
  208. package/dist/scripts/27-d03a99658e.chunk.js +0 -1
  209. package/dist/scripts/27.chunk.js +0 -3630
  210. package/dist/scripts/27.chunk.js.map +0 -1
  211. package/dist/scripts/28.chunk.js +0 -3172
  212. package/dist/scripts/28.chunk.js.map +0 -1
  213. package/dist/scripts/29.chunk.js +0 -3090
  214. package/dist/scripts/29.chunk.js.map +0 -1
  215. package/dist/scripts/3.chunk.js +0 -845
  216. package/dist/scripts/3.chunk.js.map +0 -1
  217. package/dist/scripts/30.chunk.js +0 -1851
  218. package/dist/scripts/30.chunk.js.map +0 -1
  219. package/dist/scripts/31.chunk.js +0 -958
  220. package/dist/scripts/31.chunk.js.map +0 -1
  221. package/dist/scripts/32.chunk.js +0 -1239
  222. package/dist/scripts/32.chunk.js.map +0 -1
  223. package/dist/scripts/33.chunk.js +0 -971
  224. package/dist/scripts/33.chunk.js.map +0 -1
  225. package/dist/scripts/34.chunk.js +0 -990
  226. package/dist/scripts/34.chunk.js.map +0 -1
  227. package/dist/scripts/35.chunk.js +0 -518
  228. package/dist/scripts/35.chunk.js.map +0 -1
  229. package/dist/scripts/36.chunk.js +0 -335
  230. package/dist/scripts/36.chunk.js.map +0 -1
  231. package/dist/scripts/37.chunk.js +0 -236
  232. package/dist/scripts/37.chunk.js.map +0 -1
  233. package/dist/scripts/38.chunk.js +0 -315
  234. package/dist/scripts/38.chunk.js.map +0 -1
  235. package/dist/scripts/39.chunk.js +0 -107
  236. package/dist/scripts/39.chunk.js.map +0 -1
  237. package/dist/scripts/4.chunk.js +0 -335
  238. package/dist/scripts/4.chunk.js.map +0 -1
  239. package/dist/scripts/40.chunk.js +0 -2493
  240. package/dist/scripts/40.chunk.js.map +0 -1
  241. package/dist/scripts/41.chunk.js +0 -1782
  242. package/dist/scripts/41.chunk.js.map +0 -1
  243. package/dist/scripts/42-9f757567db.chunk.js +0 -1
  244. package/dist/scripts/42.chunk.js +0 -2327
  245. package/dist/scripts/42.chunk.js.map +0 -1
  246. package/dist/scripts/43.chunk.js +0 -1206
  247. package/dist/scripts/43.chunk.js.map +0 -1
  248. package/dist/scripts/44.chunk.js +0 -2245
  249. package/dist/scripts/44.chunk.js.map +0 -1
  250. package/dist/scripts/45.chunk.js +0 -1065
  251. package/dist/scripts/45.chunk.js.map +0 -1
  252. package/dist/scripts/46.chunk.js +0 -655
  253. package/dist/scripts/46.chunk.js.map +0 -1
  254. package/dist/scripts/47.chunk.js +0 -736
  255. package/dist/scripts/47.chunk.js.map +0 -1
  256. package/dist/scripts/48.chunk.js +0 -994
  257. package/dist/scripts/48.chunk.js.map +0 -1
  258. package/dist/scripts/49.chunk.js +0 -761
  259. package/dist/scripts/49.chunk.js.map +0 -1
  260. package/dist/scripts/5.chunk.js +0 -15
  261. package/dist/scripts/5.chunk.js.map +0 -1
  262. package/dist/scripts/50.chunk.js +0 -530
  263. package/dist/scripts/50.chunk.js.map +0 -1
  264. package/dist/scripts/51.chunk.js +0 -932
  265. package/dist/scripts/51.chunk.js.map +0 -1
  266. package/dist/scripts/52.chunk.js +0 -408
  267. package/dist/scripts/52.chunk.js.map +0 -1
  268. package/dist/scripts/53.chunk.js +0 -756
  269. package/dist/scripts/53.chunk.js.map +0 -1
  270. package/dist/scripts/54.chunk.js +0 -681
  271. package/dist/scripts/54.chunk.js.map +0 -1
  272. package/dist/scripts/55.chunk.js +0 -645
  273. package/dist/scripts/55.chunk.js.map +0 -1
  274. package/dist/scripts/56.chunk.js +0 -346
  275. package/dist/scripts/56.chunk.js.map +0 -1
  276. package/dist/scripts/57.chunk.js +0 -422
  277. package/dist/scripts/57.chunk.js.map +0 -1
  278. package/dist/scripts/58.chunk.js +0 -437
  279. package/dist/scripts/58.chunk.js.map +0 -1
  280. package/dist/scripts/59.chunk.js +0 -342
  281. package/dist/scripts/59.chunk.js.map +0 -1
  282. package/dist/scripts/6.chunk.js +0 -484
  283. package/dist/scripts/6.chunk.js.map +0 -1
  284. package/dist/scripts/60.chunk.js +0 -254
  285. package/dist/scripts/60.chunk.js.map +0 -1
  286. package/dist/scripts/61.chunk.js +0 -408
  287. package/dist/scripts/61.chunk.js.map +0 -1
  288. package/dist/scripts/62.chunk.js +0 -142
  289. package/dist/scripts/62.chunk.js.map +0 -1
  290. package/dist/scripts/63.chunk.js +0 -147
  291. package/dist/scripts/63.chunk.js.map +0 -1
  292. package/dist/scripts/64.chunk.js +0 -439
  293. package/dist/scripts/64.chunk.js.map +0 -1
  294. package/dist/scripts/65.chunk.js +0 -582
  295. package/dist/scripts/65.chunk.js.map +0 -1
  296. package/dist/scripts/66.chunk.js +0 -442
  297. package/dist/scripts/66.chunk.js.map +0 -1
  298. package/dist/scripts/67.chunk.js +0 -295
  299. package/dist/scripts/67.chunk.js.map +0 -1
  300. package/dist/scripts/68.chunk.js +0 -165
  301. package/dist/scripts/68.chunk.js.map +0 -1
  302. package/dist/scripts/69.chunk.js +0 -248
  303. package/dist/scripts/69.chunk.js.map +0 -1
  304. package/dist/scripts/7.chunk.js +0 -309
  305. package/dist/scripts/7.chunk.js.map +0 -1
  306. package/dist/scripts/70.chunk.js +0 -207
  307. package/dist/scripts/70.chunk.js.map +0 -1
  308. package/dist/scripts/71.chunk.js +0 -237
  309. package/dist/scripts/71.chunk.js.map +0 -1
  310. package/dist/scripts/72.chunk.js +0 -331
  311. package/dist/scripts/72.chunk.js.map +0 -1
  312. package/dist/scripts/73.chunk.js +0 -404
  313. package/dist/scripts/73.chunk.js.map +0 -1
  314. package/dist/scripts/74.chunk.js +0 -301
  315. package/dist/scripts/74.chunk.js.map +0 -1
  316. package/dist/scripts/75.chunk.js +0 -231
  317. package/dist/scripts/75.chunk.js.map +0 -1
  318. package/dist/scripts/76.chunk.js +0 -157
  319. package/dist/scripts/76.chunk.js.map +0 -1
  320. package/dist/scripts/77.chunk.js +0 -307
  321. package/dist/scripts/77.chunk.js.map +0 -1
  322. package/dist/scripts/78.chunk.js +0 -249
  323. package/dist/scripts/78.chunk.js.map +0 -1
  324. package/dist/scripts/79.chunk.js +0 -282
  325. package/dist/scripts/79.chunk.js.map +0 -1
  326. package/dist/scripts/8.chunk.js +0 -307
  327. package/dist/scripts/8.chunk.js.map +0 -1
  328. package/dist/scripts/80.chunk.js +0 -308
  329. package/dist/scripts/80.chunk.js.map +0 -1
  330. package/dist/scripts/81.chunk.js +0 -366
  331. package/dist/scripts/81.chunk.js.map +0 -1
  332. package/dist/scripts/82.chunk.js +0 -314
  333. package/dist/scripts/82.chunk.js.map +0 -1
  334. package/dist/scripts/83.chunk.js +0 -328
  335. package/dist/scripts/83.chunk.js.map +0 -1
  336. package/dist/scripts/84.chunk.js +0 -313
  337. package/dist/scripts/84.chunk.js.map +0 -1
  338. package/dist/scripts/85.chunk.js +0 -291
  339. package/dist/scripts/85.chunk.js.map +0 -1
  340. package/dist/scripts/86.chunk.js +0 -119
  341. package/dist/scripts/86.chunk.js.map +0 -1
  342. package/dist/scripts/87.chunk.js +0 -219
  343. package/dist/scripts/87.chunk.js.map +0 -1
  344. package/dist/scripts/88.chunk.js +0 -194
  345. package/dist/scripts/88.chunk.js.map +0 -1
  346. package/dist/scripts/89.chunk.js +0 -522
  347. package/dist/scripts/89.chunk.js.map +0 -1
  348. package/dist/scripts/9.chunk.js +0 -222
  349. package/dist/scripts/9.chunk.js.map +0 -1
  350. package/dist/scripts/90.chunk.js +0 -337
  351. package/dist/scripts/90.chunk.js.map +0 -1
  352. package/dist/scripts/91.chunk.js +0 -131
  353. package/dist/scripts/91.chunk.js.map +0 -1
  354. package/dist/scripts/92.chunk.js +0 -266
  355. package/dist/scripts/92.chunk.js.map +0 -1
  356. package/dist/scripts/bundle-f28b86bf5b.min.js +0 -8
  357. package/dist/scripts/bundle.js +0 -67206
  358. package/dist/scripts/bundle.js.map +0 -1
  359. package/dist/scripts/polyfills-1d2233ebcc.min.js +0 -1
  360. package/dist/scripts/polyfills.js +0 -14866
  361. package/dist/scripts/polyfills.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["file://C:/ClickView/front-end/clickview/packages/libs/analytics/src/utils/ObjectFormatHelper.ts","file://C:/ClickView/front-end/clickview/packages/libs/analytics/src/utils/VideoAnalyticsTracker.ts","file://C:/ClickView/front-end/clickview/packages/libs/common/src/backbone/constants/Webplayer.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/shared/components/web-player/WebPlayer.handlebars","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/shared/components/web-player/WebPlayerComponent.ts","webpack://@clickview/library-editor/./src/shared/components/web-player/webplayer.scss?6643"],"names":[],"mappings":"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","file":"scripts/3.chunk.js","sourcesContent":["import * as Backbone from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\n\r\ntype BackboneDataStructure = Core.Model | Core.Collection | Backbone.Model | Backbone.Collection;\r\n\r\n// Convert backbone models/collection to regular arrays/objects.\r\nexport const ObjectFormatHelper = {\r\n toJSON<T>(object: BackboneDataStructure | T): T {\r\n return (\r\n object instanceof Core.Model ||\r\n object instanceof Core.Collection ||\r\n object instanceof Backbone.Model ||\r\n object instanceof Backbone.Collection\r\n ) ? object.toJSON() : object;\r\n }\r\n};","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { CVEventsApi } from 'CVEvents';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { DevError } from 'libs/common/backbone/errors/DevError';\r\nimport { WebplayerEvents } from 'libs/common/backbone/constants/Webplayer';\r\n\r\nimport { ObjectFormatHelper } from 'libs/analytics/utils/ObjectFormatHelper';\r\nimport { Video, AnalyticsOptions, UserAction, PlaybackDescriptor, ActionDescriptor } from 'libs/analytics/interfaces';\r\nimport { Analytics } from 'libs/analytics/Analytics';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport { PlaybackStatus, VideoWatchAnalyticsEvent } from './VideoDataFormatHelper';\r\n\r\n// Record progress watch progress every minute\r\nconst DEFAULT_LOG_INTERVAL = 60; // Seconds\r\n\r\n// Legacy watch event was recorded after viewing for 8 seconds\r\nconst LEGACY_WATCH_ELAPSE = 8;\r\n\r\nconst SHOULD_LOG_VERBOSE = false; // See logVerbose function below.\r\n\r\ninterface StreamRawAnalyticsEvent {\r\n id: string;\r\n}\r\n\r\nexport interface VideoAnalyticsTrackerOptions extends Core.ServiceOptions {\r\n eventsApi: CVEventsApi;\r\n video: Video;\r\n captureInterval?: number;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nexport class VideoAnalyticsTracker extends Core.Service {\r\n protected options: VideoAnalyticsTrackerOptions;\r\n private eventsApi: CVEventsApi;\r\n private model: Video;\r\n private captureInterval: number = DEFAULT_LOG_INTERVAL;\r\n private playbackStatus: PlaybackStatus;\r\n\r\n constructor(options: VideoAnalyticsTrackerOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoAnalyticsTracker';\r\n }\r\n\r\n public initialize(): void {\r\n this.eventsApi = this.options.eventsApi;\r\n\r\n if (!this.options.video)\r\n Core.ErrorHelper.throw(new DevError('Video logging requires video to be passed in.'));\r\n\r\n this.model = this.options.video;\r\n\r\n this.playbackStatus = this.getNewPlaybackStatus();\r\n\r\n if (this.options.captureInterval)\r\n this.captureInterval = this.options.captureInterval;\r\n\r\n this.bindListeners();\r\n this.getChapters();\r\n }\r\n\r\n private bindListeners(): void {\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.TIME_UPDATE, _.bind(this.onPlayerTimeUpdate, this));\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.VIDEO_END, _.bind(this.onEnd, this));\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.FULLSCREEN_CHANGE, _.bind(this.onFullScreen, this));\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.CHAPTER_CHANGE, _.bind(this.onChapterChange, this));\r\n }\r\n\r\n private unbindListeners(): void {\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.TIME_UPDATE);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.VIDEO_END);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.FULLSCREEN_CHANGE);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.CHAPTER_CHANGE);\r\n }\r\n\r\n private getChapters(): void {\r\n this.queryWebplayer(WebplayerEvents.QUERIES.GET_CHAPTERS, (e: JQuery.Event, chapters: ObjectHash[]) => {\r\n this.setInitialChapter(chapters);\r\n this.setVideoDuration(chapters);\r\n });\r\n }\r\n\r\n private queryWebplayer(queryEvent: string, callback: (...args: any) => any): void {\r\n const uniqueTrackerId = _.uniqueId(this.name);\r\n const queryCallbackEvent = `${WebplayerEvents.RECEIVE.QUERY_CALLBACK}-${uniqueTrackerId}`;\r\n\r\n this.eventsApi.one(queryCallbackEvent, callback);\r\n this.eventsApi.trigger(WebplayerEvents.TRIGGER.QUERY, queryEvent, uniqueTrackerId);\r\n }\r\n\r\n private onEnd(): void {\r\n this.setCurrentPosition(this.playbackStatus.totalDuration);\r\n this.logVerbose(PlaybackDescriptor.Finish);\r\n this.resetPlaybackStatus();\r\n }\r\n\r\n private onFullScreen(e: JQuery.Event, isFullScreen: boolean): void {\r\n const descriptor = isFullScreen ? PlaybackDescriptor.FullScreenEnter : PlaybackDescriptor.FullScreenExit;\r\n this.logVerbose(descriptor);\r\n }\r\n\r\n\r\n private onPlayerTimeUpdate(e: JQuery.Event, rawTime: number): void {\r\n this.queryWebplayer(WebplayerEvents.QUERIES.IS_PAUSED, (ev: JQuery.Event, isPaused: boolean) => {\r\n this.updateTime(rawTime, isPaused);\r\n });\r\n }\r\n\r\n private onChapterChange(e: JQuery.Event, nextChapter: ObjectHash): void {\r\n if (!_.isObject(nextChapter)) return;\r\n this.setCurrentChapter(nextChapter.number);\r\n }\r\n\r\n private updateTime(rawTime: number, isPaused: boolean): void {\r\n const time = Math.floor(rawTime);\r\n\r\n /**\r\n * Ignore the first time update at 0 and duplicate events with the same rawTime point. \r\n * This is necessary to avoid subtle bugs where the webplayer is reset at the end of playback.\r\n */\r\n if (!time || time === this.getCurrentPositon()) return;\r\n\r\n /**\r\n * Always set the position first, so we can restore state when the user continues\r\n * playback of the same video from a different location. \r\n */\r\n this.setCurrentPosition(time);\r\n\r\n /**\r\n * Only update watch time and log if we are actually playing a video\r\n */\r\n if (isPaused)\r\n return;\r\n\r\n // Log the start event\r\n if (!this.playbackHasStarted()) {\r\n this.logVerbose(PlaybackDescriptor.Start);\r\n this.setPlaybackStarted();\r\n }\r\n\r\n this.incrementWatchTime();\r\n\r\n // Log at each interval period\r\n if (this.getWatchTime() % this.captureInterval === 0)\r\n this.logVerbose(PlaybackDescriptor.Playback);\r\n\r\n if (this.getWatchTime() === LEGACY_WATCH_ELAPSE)\r\n this.logStream();\r\n }\r\n\r\n private setInitialChapter(chapters: ObjectHash[]): void {\r\n const currentChapter = _.find(chapters, (c: ObjectHash) => c.current === true);\r\n\r\n if (!_.isObject(currentChapter)) return;\r\n\r\n this.setCurrentChapter(currentChapter.number);\r\n }\r\n\r\n private setVideoDuration(chapters: ObjectHash[]): void {\r\n let totalDuration = _.reduce(chapters, (d: number, c: ObjectHash) => d + c.duration, 0);\r\n\r\n if (_.isNaN(totalDuration) || !_.isNumber(totalDuration))\r\n return;\r\n\r\n // Always round down to the current second\r\n this.playbackStatus.totalDuration = Math.floor(totalDuration);\r\n }\r\n\r\n // Store the current playback position\r\n private setCurrentPosition(time: number): void {\r\n this.playbackStatus.position = time;\r\n }\r\n\r\n private getCurrentPositon(): number {\r\n return this.playbackStatus.position;\r\n }\r\n\r\n private setCurrentChapter(chapter: number): void {\r\n this.playbackStatus.chapter = chapter;\r\n }\r\n\r\n private setPlaybackStarted(): void {\r\n this.playbackStatus.hasStarted = true;\r\n }\r\n\r\n private playbackHasStarted(): boolean {\r\n return this.playbackStatus.hasStarted;\r\n }\r\n\r\n private getWatchTime(): number {\r\n return this.playbackStatus.totalWatched;\r\n }\r\n\r\n private incrementWatchTime(): void {\r\n this.playbackStatus.totalWatched += 1;\r\n }\r\n\r\n private getNewPlaybackStatus(options: ObjectHash = {}): PlaybackStatus {\r\n const { duration, watched } = options;\r\n\r\n return {\r\n position: 0,\r\n chapter: 0,\r\n hasStarted: false,\r\n totalWatched: watched ? watched : 0,\r\n totalDuration: duration ? duration : 0\r\n };\r\n }\r\n\r\n private resetPlaybackStatus(): void {\r\n const preservedState = {\r\n duration: this.playbackStatus.totalDuration,\r\n watched: this.playbackStatus.totalWatched\r\n };\r\n\r\n this.playbackStatus = this.getNewPlaybackStatus(preservedState);\r\n }\r\n\r\n private unbindUnload(): void {\r\n $(window).off('unload');\r\n }\r\n\r\n private bindUnload(): void {\r\n $(window).on('unload', _.bind(this.logUnload, this));\r\n }\r\n\r\n private logUnload(): void {\r\n if (!this.playbackHasStarted())\r\n return;\r\n\r\n this.logVerbose(PlaybackDescriptor.Terminate);\r\n }\r\n\r\n private logStream(): void {\r\n const action = AnalyticsHelper.buildActionContext(this.options.analyticsOptions);\r\n\r\n // TODO: Remove when migration to StreamRaw is finalised.\r\n Analytics.log(UserAction.Stream, this.getPlaybackData(), action);\r\n\r\n // This won't actually log as it's blocked in CollectionApiClientHelper.shouldLog\r\n Analytics.log(UserAction.StreamRaw, this.getStreamRawData(), action);\r\n }\r\n\r\n /**\r\n * logVerbose is used for more granular logging than logStream, however as of June 2020\r\n * we are only logging the simpler stream event which is the same as videoWatched in Online.\r\n */\r\n private logVerbose(descriptor: ActionDescriptor): void {\r\n if (!SHOULD_LOG_VERBOSE)\r\n return;\r\n\r\n const analyticsOptions = AnalyticsHelper.mergeOptions(this.options.analyticsOptions, { descriptor });\r\n const action = AnalyticsHelper.buildActionContext(analyticsOptions);\r\n\r\n Analytics.log(UserAction.StreamRaw, this.getStreamRawData(), action);\r\n }\r\n\r\n // TODO: Remove when migration to StreamRaw is finalised.\r\n private getPlaybackData(): VideoWatchAnalyticsEvent {\r\n return {\r\n model: ObjectFormatHelper.toJSON<Video>(this.model),\r\n /**\r\n * Clone the playback status to ensure that the object is not mutated prior to being logged by\r\n * the AnalyticsService. Remove view-specific properties.\r\n */\r\n playbackStatus: _.omit(this.playbackStatus, 'hasStarted')\r\n };\r\n }\r\n\r\n private getStreamRawData(): StreamRawAnalyticsEvent {\r\n const model = ObjectFormatHelper.toJSON<Video>(this.model);\r\n\r\n return {\r\n id: model.id.toString()\r\n };\r\n }\r\n\r\n public onDestroy(): void {\r\n this.unbindListeners();\r\n this.unbindUnload();\r\n this.logUnload();\r\n }\r\n}\r\n","/**\r\n * Events are mapped against those in Webplayer.\r\n * @see http://gitlab.cvinternal.net/WebPlayer/WebPlayer/blob/master/ClickView.Html5.WebPlayer.Web/Scripts/CVPlayerEventsApi.js\r\n */\r\nconst WebplayerEvents = {\r\n /**\r\n * Events emitted from webplayer via CVEventsAPI\r\n */\r\n RECEIVE: {\r\n PLAY: 'cv-player-play',\r\n PAUSE: 'cv-player-pause',\r\n VIDEO_END: 'cv-player-ended',\r\n VOLUME_CHANGE: 'cv-player-volumechange',\r\n CHAPTER_CHANGE: 'cv-player-chapterchange',\r\n TIME_UPDATE: 'cv-player-timeupdate',\r\n FULLSCREEN_CHANGE: 'cv-player-fullscreenchange',\r\n CLIP_POINTS_UPDATE: 'cv-player-cliptoolupdate',\r\n QUALITY_CHANGE: 'cv-player-qualitychange',\r\n QUERY_CALLBACK: 'cv-player-querycallback',\r\n SUBTITLES_ENABLED: 'cv-player-hassubtitles',\r\n SUBTITLES: 'cv-player-subtitles',\r\n PONG: 'cv-player-pong',\r\n\r\n // User-initiated events from webplayer UI\r\n FULLSCREEN_CLICK: '_cvwp:fsc',\r\n DEVICES_BTN_CLICK: '_cvwp:devices:click',\r\n },\r\n\r\n /**\r\n * Events to trigger on CVEventsAPI to manage/update webplayer\r\n */\r\n TRIGGER: {\r\n PLAY: 'cv-player-play',\r\n PAUSE: 'cv-player-pause',\r\n SET_VOLUME: 'cv-player-setvolume',\r\n NEXT_CHAPTER: 'cv-player-nextchapter',\r\n PREV_CHAPTER: 'cv-player-previouschapter',\r\n CHANGE_CHAPTER: 'cv-player-changechapter',\r\n TOGGLE_CLIPPING: 'cv-player-cliptooltoggle',\r\n SET_CLIP_POINTS: 'cv-player-cliptoolset',\r\n CLIP: 'cv-player-setclip',\r\n CLEAR_CLIP: 'cv-player-clearclip',\r\n SEEK_TO: 'cv-player-seekto',\r\n CONTROLS: 'cv-player-showcontrols',\r\n SUBTITLES: 'cv-player-subtitles',\r\n SET_QUALITY: 'cv-player-setquality',\r\n QUERY: 'cv-player-query',\r\n ADD_LISTENER: 'cv-player-addlistener',\r\n REMOVE_LISTENER: 'cv-player-removelistener',\r\n PING: 'cv-player-ping',\r\n\r\n // Update Webplayer UI\r\n TOGGLE_DEVICES_BTN: '_cv:toggledevicesbtn',\r\n SHOW_DEVICES_BTN: '_cv:showdevicesbtn',\r\n SHOW_FS_BTN: '_cv:showfsbtn'\r\n },\r\n\r\n /**\r\n * The webplayer can be queried directly for the following data.\r\n * Listen on QUERY_CALLBACK for result and trigger on QUERY.\r\n */\r\n QUERIES: {\r\n GET_AVAILABLE_QUALITIES: 'getAvailableQualities',\r\n GET_CURRENT_QUALITY: 'currentQuality',\r\n IS_PAUSED: 'paused',\r\n GET_CURRENT_TIME: 'currentTime',\r\n GET_CHAPTERS: 'getChapters',\r\n HAS_METADATA_CHAPTERS: 'hasMetadataChapters',\r\n }\r\n};\r\n\r\nexport { WebplayerEvents };","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \"<iframe class=\\\"\"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.webPlayer : stack1), depth0))\n + \" embed-responsive-item\\\" id=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.id : stack1), depth0))\n + \"\\\" allowfullscreen webkitallowfullscreen mozallowfullscreen allow=\\\"autoplay; fullscreen\\\" frameborder=\\\"0\\\" width=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.width : stack1), depth0))\n + \"\\\" height=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.height : stack1), depth0))\n + \"\\\" src=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.url : stack1), depth0))\n + \"\\\"></iframe>\\r\\n<div class=\\\"\"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.svgContainer : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.playSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash, Radio } from 'backbone';\r\nimport { signUrl } from '@clickview/url-signer';\r\n\r\nimport { WebplayerEvents } from 'libs/common/backbone/constants/Webplayer';\r\nimport { Core } from 'libs/common/core';\r\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { DevError } from 'libs/common/backbone/errors/DevError';\r\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { CVEventsApi } from 'CVEvents';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { Webplayer } from 'shared/constants';\r\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\r\nimport { VideoAnalyticsTracker } from 'libs/analytics/utils/VideoAnalyticsTracker';\r\n\r\nimport WebPlayerTemplate from './WebPlayer.handlebars';\r\nimport styles from './webplayer.scss';\r\n\r\nexport interface WebPlayerComponentOptions extends Core.ComponentOptions<Video> {\r\n isPreview?: boolean;\r\n autoplay?: boolean;\r\n parentChannelName?: string;\r\n webPlayerUrl: string;\r\n showDevicesButton?: boolean;\r\n captureAnalytics?: boolean;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nexport class WebPlayerComponent extends Core.Component<Video> {\r\n protected options: WebPlayerComponentOptions;\r\n\r\n public viewModel: Core.Model;\r\n private eventsApi: CVEventsApi;\r\n private enableIeFs: boolean;\r\n private isPreview: boolean;\r\n private iframeReady: boolean;\r\n private tracker: VideoAnalyticsTracker;\r\n\r\n constructor(options?: WebPlayerComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get elements(): ObjectHash {\r\n return {\r\n iframe: 'iframe'\r\n };\r\n }\r\n\r\n public get name(): string {\r\n return 'WebPlayerView';\r\n }\r\n\r\n public get template(): any {\r\n return WebPlayerTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return `${styles.webPlayerContainer} embed-responsive embed-responsive-16by9`;\r\n }\r\n\r\n public get channelName(): string {\r\n return `${this.name}${this.cid}`;\r\n }\r\n\r\n public get defaults(): ObjectHash {\r\n return {\r\n captureAnalytics: true,\r\n showDevicesButton: false\r\n };\r\n }\r\n\r\n private get viewModelDefaults(): ObjectHash {\r\n return {\r\n width: 640,\r\n height: 360,\r\n autoplay: !!this.options.autoplay,\r\n parameters: {\r\n s: false, // Hide the splash\r\n bc: false, // Hide chapters and resources\r\n bf: false // Hide fullscreen button\r\n },\r\n webPlayerHost: this.options.webPlayerUrl\r\n };\r\n }\r\n\r\n public initialize(): void {\r\n this.enableIeFs = this.isTop();\r\n\r\n this.getViewModel();\r\n }\r\n\r\n public seekTo(time: number): void {\r\n if (this.eventsApi)\r\n this.eventsApi.trigger(WebplayerEvents.TRIGGER.SEEK_TO, time);\r\n }\r\n\r\n public seekToChapter(chapterIndex: number): void {\r\n if (this.eventsApi)\r\n this.eventsApi.trigger('cv-player-changechapter', chapterIndex);\r\n }\r\n\r\n private getViewModel(): void {\r\n let id = this.model.get('id');\r\n\r\n if (!id)\r\n id = this.model.get('trackingCode');\r\n\r\n this.viewModel = ViewModelService.get(`${Webplayer.NAME}-${id}`);\r\n\r\n if (!this.viewModel.get('initialized'))\r\n this.initViewModel();\r\n\r\n this.setUrl();\r\n }\r\n\r\n private initViewModel(): void {\r\n let videoModel = this.model.pick('id');\r\n\r\n if (!videoModel.id)\r\n videoModel = this.model.pick('trackingCode');\r\n\r\n if (!videoModel.id && !videoModel.trackingCode) {\r\n Core.ErrorHelper.throw(new DevError(`Must provide either a master id or a tracking code to ${this.name}`));\r\n }\r\n\r\n const attrs = _.extend({},\r\n this.viewModelDefaults,\r\n videoModel,\r\n this.viewModel.toJSON(),\r\n {\r\n initialized: true\r\n }\r\n );\r\n\r\n this.viewModel.set(attrs);\r\n }\r\n\r\n private initWebPlayerEvents(): void {\r\n if (!this.enableIeFs) return;\r\n\r\n const $iframe = this.getUI('iframe');\r\n if (!$iframe || $iframe.length === 0)\r\n return;\r\n\r\n $iframe.on('load', this.bindWebPlayerEvents.bind(this));\r\n }\r\n\r\n private bindWebPlayerEvents(): void {\r\n if (this.iframeReady)\r\n return;\r\n\r\n const iframe = this.getUI('iframe').get(0) as HTMLIFrameElement;\r\n\r\n this.eventsApi = new CVEventsApi(iframe.contentWindow);\r\n\r\n // Ping to see if we are ready\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.PONG, this.onPong.bind(this));\r\n this.eventsApi.trigger(WebplayerEvents.TRIGGER.PING);\r\n\r\n // Bind events\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.FULLSCREEN_CLICK, this.onFullscreenChange.bind(this));\r\n this.eventsApi.trigger(WebplayerEvents.TRIGGER.SHOW_FS_BTN);\r\n\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.TIME_UPDATE, this.onTimeUpdate.bind(this));\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.PLAY, this.onPlay.bind(this));\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.PAUSE, this.onPause.bind(this));\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.VIDEO_END, this.onEnded.bind(this));\r\n\r\n // TODO: Push to device is not yet supported in LE. Also needs to check the user is an Admin.\r\n // Update default in future. \r\n if (this.options.showDevicesButton) {\r\n this.eventsApi.on(WebplayerEvents.RECEIVE.DEVICES_BTN_CLICK, this.showDeviceToggle.bind(this));\r\n this.eventsApi.trigger(WebplayerEvents.TRIGGER.SHOW_DEVICES_BTN);\r\n }\r\n\r\n if (this.options.captureAnalytics)\r\n this.tracker = new VideoAnalyticsTracker({\r\n video: this.model.toJSON(),\r\n eventsApi: this.eventsApi,\r\n analyticsOptions: this.options.analyticsOptions\r\n });\r\n }\r\n\r\n private unbindWebPlayerEvents(): void {\r\n if (!this.eventsApi) return;\r\n\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.FULLSCREEN_CLICK);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.TIME_UPDATE);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.PLAY);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.PAUSE);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.VIDEO_END);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.PONG);\r\n this.eventsApi.off(WebplayerEvents.RECEIVE.DEVICES_BTN_CLICK);\r\n }\r\n\r\n private setUrl(): void {\r\n const webPlayerHost = `${this.viewModel.get('webPlayerHost')}embed`;\r\n\r\n const reservedParams = [ 'p', 'vid' ];\r\n const webPlayerParams = _.omit(this.viewModel.get('parameters'), reservedParams) || {};\r\n\r\n webPlayerParams.a = !!this.viewModel.get('autoplay');\r\n\r\n const id = this.viewModel.get('id');\r\n\r\n if (id)\r\n webPlayerParams.vid = id;\r\n\r\n const trackingCode = this.viewModel.get('trackingCode');\r\n\r\n if (trackingCode)\r\n webPlayerParams.p = trackingCode;\r\n\r\n if (this.viewModel.get('currenttime')) {\r\n webPlayerParams.t = this.viewModel.get('currenttime');\r\n webPlayerParams.a = !this.viewModel.get('paused');\r\n }\r\n\r\n const url = UrlHelper.urlBuilder(webPlayerHost, webPlayerParams);\r\n const signedUrl = signUrl(url, { timestamp: true });\r\n\r\n this.viewModel.set({ url: signedUrl });\r\n }\r\n\r\n private isTop(): boolean {\r\n return window.top === window;\r\n }\r\n\r\n private onTimeUpdate(e: JQuery.Event, time: Date): void {\r\n this.viewModel.set('ready', true);\r\n this.viewModel.set('currenttime', time);\r\n }\r\n\r\n private onPlay(): void {\r\n this.viewModel.set('ready', true);\r\n this.viewModel.set('paused', false);\r\n }\r\n\r\n private onPause(): void {\r\n this.viewModel.set('ready', true);\r\n this.viewModel.set('paused', true);\r\n }\r\n\r\n private onEnded(): void {\r\n this.viewModel.trigger('ended');\r\n }\r\n\r\n private onPong(): void {\r\n this.iframeReady = true;\r\n this.viewModel.set('ready', true);\r\n\r\n const channel = Radio.channel(this.channelName);\r\n channel.trigger('loaded');\r\n\r\n // Notify any parent components once the webpalyer is ready\r\n if (this.options.parentChannelName)\r\n Radio.channel(this.options.parentChannelName).trigger('webplayer:loaded');\r\n }\r\n\r\n private onFullscreenChange(e: JQuery.Event, isFs: boolean, hasFsApi: boolean): void {\r\n if (isFs) {\r\n this.requestFs(hasFsApi);\r\n return;\r\n }\r\n\r\n this.cancelFs(hasFsApi);\r\n }\r\n\r\n private requestFs(hasFsApi: boolean): void {\r\n // If the request wasn't sent using the fullscreen API, add the fs class\r\n if (!hasFsApi)\r\n $('html').addClass('player-fullscreen');\r\n }\r\n\r\n private cancelFs(hasFsApi: boolean): void {\r\n // If the request wasn't sent using the fullscreen API, add the fs class\r\n if (!hasFsApi)\r\n $('html').removeClass('player-fullscreen');\r\n }\r\n\r\n private showDeviceToggle(shouldShow: boolean): void {\r\n this.viewModel.trigger('showDevices', !!shouldShow);\r\n }\r\n\r\n public query(queryName: string, callback: (...args: any[]) => void): void {\r\n if (!this.iframeReady) {\r\n this.listenToOnce(this.channelName, 'loaded', () => this.query(queryName, callback));\r\n return;\r\n }\r\n\r\n const uniqueId = _.uniqueId(`cveventsapi`);\r\n\r\n this.eventsApi.one(`${WebplayerEvents.RECEIVE.QUERY_CALLBACK}-${uniqueId}`, (event: any, data: any) => {\r\n callback(data);\r\n });\r\n\r\n this.eventsApi.trigger(WebplayerEvents.TRIGGER.QUERY, queryName, uniqueId);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return _.extend({},\r\n {\r\n styles,\r\n playSvg: SvgHelper.getSvg(cvSvgLibrary.Play),\r\n },\r\n this.viewModel.toJSON()\r\n );\r\n }\r\n\r\n public onRender(): void {\r\n this.initWebPlayerEvents();\r\n }\r\n\r\n public onBeforeDestroy(): void {\r\n this.unbindWebPlayerEvents();\r\n\r\n // Clean up our analytics tracker\r\n if (this.tracker)\r\n this.tracker.destroy();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"webPlayerContainer\":\"cv--webPlayerContainer--2S4VF\",\"webPlayer\":\"cv--webPlayer--3569L\",\"svgContainer\":\"cv--svgContainer--1WsxD\"};"],"sourceRoot":""}