@clickview/library-editor 1.1.26-rc.0 → 1.1.26

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 (596) hide show
  1. package/dist/css/1.chunk.css.map +1 -0
  2. package/dist/css/10.chunk.css.map +1 -0
  3. package/dist/css/11.chunk.css +137 -0
  4. package/dist/css/11.chunk.css.map +1 -0
  5. package/dist/css/12.chunk.css.map +1 -0
  6. package/dist/css/13.chunk.css.map +1 -0
  7. package/dist/css/14.chunk.css.map +1 -0
  8. package/dist/css/16.chunk.css.map +1 -0
  9. package/dist/css/17.chunk.css.map +1 -0
  10. package/dist/css/18.chunk.css +20 -0
  11. package/dist/css/18.chunk.css.map +1 -0
  12. package/dist/css/2.chunk.css +145 -0
  13. package/dist/css/2.chunk.css.map +1 -0
  14. package/dist/css/21.chunk.css.map +1 -0
  15. package/dist/css/22.chunk.css.map +1 -0
  16. package/dist/css/23.chunk.css.map +1 -0
  17. package/dist/css/25.chunk.css.map +1 -0
  18. package/dist/css/26.chunk.css.map +1 -0
  19. package/dist/css/28.chunk.css.map +1 -0
  20. package/dist/css/29.chunk.css.map +1 -0
  21. package/dist/css/3.chunk.css.map +1 -0
  22. package/dist/css/30.chunk.css.map +1 -0
  23. package/dist/css/31.chunk.css.map +1 -0
  24. package/dist/css/32.chunk.css.map +1 -0
  25. package/dist/css/33.chunk.css.map +1 -0
  26. package/dist/css/34.chunk.css +21 -0
  27. package/dist/css/34.chunk.css.map +1 -0
  28. package/dist/css/35.chunk.css +20 -0
  29. package/dist/css/35.chunk.css.map +1 -0
  30. package/dist/css/36.chunk.css +14 -0
  31. package/dist/css/36.chunk.css.map +1 -0
  32. package/dist/css/37.chunk.css.map +1 -0
  33. package/dist/css/38.chunk.css.map +1 -0
  34. package/dist/css/40.chunk.css.map +1 -0
  35. package/dist/css/41.chunk.css.map +1 -0
  36. package/dist/css/42.chunk.css.map +1 -0
  37. package/dist/css/43.chunk.css.map +1 -0
  38. package/dist/css/44.chunk.css.map +1 -0
  39. package/dist/css/45.chunk.css.map +1 -0
  40. package/dist/css/46.chunk.css.map +1 -0
  41. package/dist/css/47.chunk.css.map +1 -0
  42. package/dist/css/48.chunk.css.map +1 -0
  43. package/dist/css/49.chunk.css +35 -0
  44. package/dist/css/49.chunk.css.map +1 -0
  45. package/dist/css/50.chunk.css.map +1 -0
  46. package/dist/css/51.chunk.css.map +1 -0
  47. package/dist/css/52.chunk.css +66 -0
  48. package/dist/css/52.chunk.css.map +1 -0
  49. package/dist/css/55.chunk.css.map +1 -0
  50. package/dist/css/56.chunk.css.map +1 -0
  51. package/dist/css/58.chunk.css.map +1 -0
  52. package/dist/css/59.chunk.css.map +1 -0
  53. package/dist/css/6.chunk.css.map +1 -0
  54. package/dist/css/60.chunk.css +18 -0
  55. package/dist/css/60.chunk.css.map +1 -0
  56. package/dist/css/62.chunk.css.map +1 -0
  57. package/dist/css/63.chunk.css +170 -0
  58. package/dist/css/63.chunk.css.map +1 -0
  59. package/dist/css/67.chunk.css +78 -0
  60. package/dist/css/67.chunk.css.map +1 -0
  61. package/dist/css/68.chunk.css +17 -0
  62. package/dist/css/68.chunk.css.map +1 -0
  63. package/dist/css/69.chunk.css +17 -0
  64. package/dist/css/69.chunk.css.map +1 -0
  65. package/dist/css/7.chunk.css.map +1 -0
  66. package/dist/css/70.chunk.css +23 -0
  67. package/dist/css/70.chunk.css.map +1 -0
  68. package/dist/css/71.chunk.css +40 -0
  69. package/dist/css/71.chunk.css.map +1 -0
  70. package/dist/css/72.chunk.css +16 -0
  71. package/dist/css/72.chunk.css.map +1 -0
  72. package/dist/css/73.chunk.css +37 -0
  73. package/dist/css/73.chunk.css.map +1 -0
  74. package/dist/css/74.chunk.css +29 -0
  75. package/dist/css/74.chunk.css.map +1 -0
  76. package/dist/css/75.chunk.css +6 -0
  77. package/dist/css/75.chunk.css.map +1 -0
  78. package/dist/css/76.chunk.css +6 -0
  79. package/dist/css/76.chunk.css.map +1 -0
  80. package/dist/css/8.chunk.css.map +1 -0
  81. package/dist/css/library-editor-app.css.map +1 -0
  82. package/dist/libs/common/src/react/flight/enums/RequestStatus.d.ts +6 -0
  83. package/dist/libs/common/src/react/flight/enums/index.d.ts +1 -0
  84. package/dist/libs/common/src/react/flight/interfaces/FlightState.d.ts +22 -0
  85. package/dist/libs/common/src/react/flight/interfaces/NormalizeOptions.d.ts +4 -0
  86. package/dist/libs/common/src/react/flight/interfaces/Request.d.ts +29 -0
  87. package/dist/libs/common/src/react/flight/interfaces/UpdateStateOptions.d.ts +15 -0
  88. package/dist/libs/common/src/react/interfaces/ApplicationData.d.ts +3 -0
  89. package/dist/libs/common/src/react/interfaces/ApplicationState.d.ts +8 -0
  90. package/dist/libs/common/src/react/interfaces/BaseReducerActions.d.ts +4 -0
  91. package/dist/libs/common/src/react/interfaces/index.d.ts +4 -0
  92. package/dist/libs/shared/src/enums/MasterObjectTypes.d.ts +8 -0
  93. package/dist/libs/shared/src/enums/ObjectOwnerType.d.ts +4 -0
  94. package/dist/libs/shared/src/enums/UploadInteractionType.d.ts +4 -0
  95. package/dist/libs/shared/src/interfaces/collections/SubtitleCollection.d.ts +3 -0
  96. package/dist/libs/shared/src/interfaces/models/FileUpload.d.ts +20 -0
  97. package/dist/libs/shared/src/interfaces/models/Language.d.ts +4 -0
  98. package/dist/libs/shared/src/interfaces/models/Pdf.d.ts +4 -0
  99. package/dist/libs/shared/src/interfaces/models/Subtitle.d.ts +7 -0
  100. package/dist/libs/shared/src/interfaces/requests/UpdateObjectChannel.d.ts +3 -0
  101. package/dist/libs/shared/src/interfaces/requests/UpdateObjectRating.d.ts +3 -0
  102. package/dist/libs/shared/src/interfaces/requests/UpdateResourceRequest.d.ts +3 -0
  103. package/dist/libs/shared/src/interfaces/services/BaseConfigDataService.d.ts +5 -0
  104. package/dist/libs/shared/src/legacy/behaviors/file-drop/FileDropBehavior.d.ts +19 -0
  105. package/dist/libs/shared/src/legacy/behaviors/file-drop/FileDropHelper.d.ts +4 -0
  106. package/dist/libs/shared/src/legacy/behaviors/file-drop/FileDropMaskBehavior.d.ts +19 -0
  107. package/dist/libs/shared/src/legacy/behaviors/file-select/FileSelectBehavior.d.ts +16 -0
  108. package/dist/libs/shared/src/legacy/components/file-select/FileSelectComponent.d.ts +29 -0
  109. package/dist/libs/shared/src/legacy/components/file-uploads/FileUploadComponent.d.ts +15 -0
  110. package/dist/libs/shared/src/legacy/components/resource-item/ResourceItemComponent.d.ts +22 -0
  111. package/dist/libs/shared/src/legacy/components/subtitle-item/SubtitleItemComponent.d.ts +17 -0
  112. package/dist/libs/shared/src/legacy/errors/too-many-files/TooManyFilesError.d.ts +7 -0
  113. package/dist/libs/shared/src/legacy/errors/too-many-resources/TooManyResourcesError.d.ts +8 -0
  114. package/dist/libs/shared/src/legacy/errors/too-many-subtitles/TooManySubtitlesError.d.ts +8 -0
  115. package/dist/libs/shared/src/utils/SubtitleHelper.d.ts +9 -0
  116. package/dist/libs/shared/src/utils/VideoDetailsHelper.d.ts +21 -0
  117. package/dist/scripts/0-1c2bb7e28a.chunk.js +1 -0
  118. package/dist/scripts/0-1dbc79e4e7.chunk.js +1 -0
  119. package/dist/scripts/0-93276429bf.chunk.js +1 -0
  120. package/dist/scripts/0.chunk.js +1039 -0
  121. package/dist/scripts/0.chunk.js.map +1 -0
  122. package/dist/scripts/1-480e5932a6.chunk.js +1 -0
  123. package/dist/scripts/1-6051b28de6.chunk.js +1 -0
  124. package/dist/scripts/1-b85c11fc30.chunk.js +1 -0
  125. package/dist/scripts/1.chunk.js +442 -0
  126. package/dist/scripts/1.chunk.js.map +1 -0
  127. package/dist/scripts/10-3ff370d548.chunk.js +1 -0
  128. package/dist/scripts/10-923c4b075a.chunk.js +1 -0
  129. package/dist/scripts/10-e2fea45a6c.chunk.js +1 -0
  130. package/dist/scripts/10.chunk.js +820 -0
  131. package/dist/scripts/10.chunk.js.map +1 -0
  132. package/dist/scripts/11-3dec7d2c7e.chunk.js +11 -0
  133. package/dist/scripts/11-74bc3f2d9f.chunk.js +11 -0
  134. package/dist/scripts/11.chunk.js +4091 -0
  135. package/dist/scripts/11.chunk.js.map +1 -0
  136. package/dist/scripts/12-07999b80e0.chunk.js +1 -0
  137. package/dist/scripts/12-24bd360be0.chunk.js +1 -0
  138. package/dist/scripts/12-e522e64a94.chunk.js +1 -0
  139. package/dist/scripts/12.chunk.js +555 -0
  140. package/dist/scripts/12.chunk.js.map +1 -0
  141. package/dist/scripts/13-081c0e5887.chunk.js +1 -0
  142. package/dist/scripts/13-54fe4fe53b.chunk.js +1 -0
  143. package/dist/scripts/13-958a8fd026.chunk.js +1 -0
  144. package/dist/scripts/13.chunk.js +380 -0
  145. package/dist/scripts/13.chunk.js.map +1 -0
  146. package/dist/scripts/14-16f84b2721.chunk.js +1 -0
  147. package/dist/scripts/14-45cd4dc6ef.chunk.js +1 -0
  148. package/dist/scripts/14-68c85d6674.chunk.js +1 -0
  149. package/dist/scripts/14.chunk.js +2386 -0
  150. package/dist/scripts/14.chunk.js.map +1 -0
  151. package/dist/scripts/15-12fa4c3471.chunk.js +1 -0
  152. package/dist/scripts/15-5544e6bde6.chunk.js +1 -0
  153. package/dist/scripts/15-8c96c3288e.chunk.js +1 -0
  154. package/dist/scripts/15.chunk.js +314 -0
  155. package/dist/scripts/15.chunk.js.map +1 -0
  156. package/dist/scripts/16-670c43d26f.chunk.js +1 -0
  157. package/dist/scripts/16-742a776f88.chunk.js +1 -0
  158. package/dist/scripts/16-7bcffb06e7.chunk.js +1 -0
  159. package/dist/scripts/16.chunk.js +1290 -0
  160. package/dist/scripts/16.chunk.js.map +1 -0
  161. package/dist/scripts/17-140fec014b.chunk.js +1 -0
  162. package/dist/scripts/17-b5e44e8b17.chunk.js +1 -0
  163. package/dist/scripts/17-f6b0159da3.chunk.js +1 -0
  164. package/dist/scripts/17.chunk.js +381 -0
  165. package/dist/scripts/17.chunk.js.map +1 -0
  166. package/dist/scripts/18.chunk.js +393 -0
  167. package/dist/scripts/18.chunk.js.map +1 -0
  168. package/dist/scripts/19.chunk.js +364 -0
  169. package/dist/scripts/19.chunk.js.map +1 -0
  170. package/dist/scripts/2-0c5fba8b60.chunk.js +1 -0
  171. package/dist/scripts/2-7cc9176e8a.chunk.js +1 -0
  172. package/dist/scripts/2.chunk.js +523 -0
  173. package/dist/scripts/2.chunk.js.map +1 -0
  174. package/dist/scripts/20-4d88ede0e0.chunk.js +1 -0
  175. package/dist/scripts/20-732a7a549d.chunk.js +1 -0
  176. package/dist/scripts/20-df9f6f7661.chunk.js +1 -0
  177. package/dist/scripts/20.chunk.js +317 -0
  178. package/dist/scripts/20.chunk.js.map +1 -0
  179. package/dist/scripts/21-0b84d33cef.chunk.js +1 -0
  180. package/dist/scripts/21-c9983ca8ad.chunk.js +1 -0
  181. package/dist/scripts/21-ee85b6d208.chunk.js +1 -0
  182. package/dist/scripts/21.chunk.js +531 -0
  183. package/dist/scripts/21.chunk.js.map +1 -0
  184. package/dist/scripts/22-151cf38018.chunk.js +1 -0
  185. package/dist/scripts/22-3b2207c8f6.chunk.js +1 -0
  186. package/dist/scripts/22-6e6ed9f607.chunk.js +1 -0
  187. package/dist/scripts/22.chunk.js +354 -0
  188. package/dist/scripts/22.chunk.js.map +1 -0
  189. package/dist/scripts/23-1af21bf234.chunk.js +1 -0
  190. package/dist/scripts/23-94f9fe4222.chunk.js +1 -0
  191. package/dist/scripts/23-ab8f73ee87.chunk.js +1 -0
  192. package/dist/scripts/23.chunk.js +604 -0
  193. package/dist/scripts/23.chunk.js.map +1 -0
  194. package/dist/scripts/24-74ab289589.chunk.js +1 -0
  195. package/dist/scripts/24-7aa9b43511.chunk.js +1 -0
  196. package/dist/scripts/24-d1ffdd4755.chunk.js +1 -0
  197. package/dist/scripts/24.chunk.js +318 -0
  198. package/dist/scripts/24.chunk.js.map +1 -0
  199. package/dist/scripts/25-5a38ce3533.chunk.js +1 -0
  200. package/dist/scripts/25-76d9011eea.chunk.js +1 -0
  201. package/dist/scripts/25-866cfc0ef5.chunk.js +1 -0
  202. package/dist/scripts/25.chunk.js +365 -0
  203. package/dist/scripts/25.chunk.js.map +1 -0
  204. package/dist/scripts/26-d166e3c313.chunk.js +1 -0
  205. package/dist/scripts/26-e53ba8e00f.chunk.js +1 -0
  206. package/dist/scripts/26-ea028a6276.chunk.js +1 -0
  207. package/dist/scripts/26.chunk.js +442 -0
  208. package/dist/scripts/26.chunk.js.map +1 -0
  209. package/dist/scripts/27-2109d41afa.chunk.js +1 -0
  210. package/dist/scripts/27-c1241fcd84.chunk.js +1 -0
  211. package/dist/scripts/27-ee88c84482.chunk.js +1 -0
  212. package/dist/scripts/27.chunk.js +3630 -0
  213. package/dist/scripts/27.chunk.js.map +1 -0
  214. package/dist/scripts/28-5c540e74cc.chunk.js +1 -0
  215. package/dist/scripts/28-76b9766891.chunk.js +1 -0
  216. package/dist/scripts/28-e490147f6b.chunk.js +1 -0
  217. package/dist/scripts/28.chunk.js +3172 -0
  218. package/dist/scripts/28.chunk.js.map +1 -0
  219. package/dist/scripts/29-2da59b1589.chunk.js +1 -0
  220. package/dist/scripts/29-69389908f8.chunk.js +1 -0
  221. package/dist/scripts/29-bb7e39304b.chunk.js +1 -0
  222. package/dist/scripts/29.chunk.js +3090 -0
  223. package/dist/scripts/29.chunk.js.map +1 -0
  224. package/dist/scripts/3-6e67dd4b74.chunk.js +1 -0
  225. package/dist/scripts/3-81b501ac1e.chunk.js +1 -0
  226. package/dist/scripts/3-c69e4454ce.chunk.js +1 -0
  227. package/dist/scripts/3.chunk.js +845 -0
  228. package/dist/scripts/3.chunk.js.map +1 -0
  229. package/dist/scripts/30-9d32d88d76.chunk.js +1 -0
  230. package/dist/scripts/30-a1df3e37da.chunk.js +1 -0
  231. package/dist/scripts/30-fa390c35f6.chunk.js +1 -0
  232. package/dist/scripts/30.chunk.js +1851 -0
  233. package/dist/scripts/30.chunk.js.map +1 -0
  234. package/dist/scripts/31-ce31250e42.chunk.js +1 -0
  235. package/dist/scripts/31-f15802825c.chunk.js +1 -0
  236. package/dist/scripts/31-fc63c4629d.chunk.js +1 -0
  237. package/dist/scripts/31.chunk.js +958 -0
  238. package/dist/scripts/31.chunk.js.map +1 -0
  239. package/dist/scripts/32-1ad8193581.chunk.js +1 -0
  240. package/dist/scripts/32-4173874dbe.chunk.js +1 -0
  241. package/dist/scripts/32-9bca57f408.chunk.js +1 -0
  242. package/dist/scripts/32.chunk.js +1235 -0
  243. package/dist/scripts/32.chunk.js.map +1 -0
  244. package/dist/scripts/33-20ac0ab4a1.chunk.js +1 -0
  245. package/dist/scripts/33-350334db4c.chunk.js +1 -0
  246. package/dist/scripts/33-7efae85b8b.chunk.js +1 -0
  247. package/dist/scripts/33.chunk.js +958 -0
  248. package/dist/scripts/33.chunk.js.map +1 -0
  249. package/dist/scripts/34-3adf309726.chunk.js +1 -0
  250. package/dist/scripts/34-c4f0495750.chunk.js +1 -0
  251. package/dist/scripts/34-f6eea83a09.chunk.js +1 -0
  252. package/dist/scripts/34.chunk.js +990 -0
  253. package/dist/scripts/34.chunk.js.map +1 -0
  254. package/dist/scripts/35-17b30890a5.chunk.js +1 -0
  255. package/dist/scripts/35-7f90628b77.chunk.js +1 -0
  256. package/dist/scripts/35-9c3899dfbd.chunk.js +1 -0
  257. package/dist/scripts/35.chunk.js +518 -0
  258. package/dist/scripts/35.chunk.js.map +1 -0
  259. package/dist/scripts/36-2ec95df618.chunk.js +1 -0
  260. package/dist/scripts/36-b5ad543fba.chunk.js +1 -0
  261. package/dist/scripts/36-cdbe95bd06.chunk.js +1 -0
  262. package/dist/scripts/36.chunk.js +335 -0
  263. package/dist/scripts/36.chunk.js.map +1 -0
  264. package/dist/scripts/37-3f3a603b60.chunk.js +1 -0
  265. package/dist/scripts/37-6fa4b8fc60.chunk.js +1 -0
  266. package/dist/scripts/37-c649a307d4.chunk.js +1 -0
  267. package/dist/scripts/37.chunk.js +236 -0
  268. package/dist/scripts/37.chunk.js.map +1 -0
  269. package/dist/scripts/38-1c98f19489.chunk.js +1 -0
  270. package/dist/scripts/38-6fc346f964.chunk.js +1 -0
  271. package/dist/scripts/38-7ffe535b0d.chunk.js +1 -0
  272. package/dist/scripts/38.chunk.js +315 -0
  273. package/dist/scripts/38.chunk.js.map +1 -0
  274. package/dist/scripts/39-13d6669c3f.chunk.js +1 -0
  275. package/dist/scripts/39-71c4bb46b2.chunk.js +1 -0
  276. package/dist/scripts/39-e5983a5d53.chunk.js +1 -0
  277. package/dist/scripts/39.chunk.js +107 -0
  278. package/dist/scripts/39.chunk.js.map +1 -0
  279. package/dist/scripts/4-435484d217.chunk.js +1 -0
  280. package/dist/scripts/4-7274621693.chunk.js +1 -0
  281. package/dist/scripts/4-85ba8523ad.chunk.js +1 -0
  282. package/dist/scripts/4.chunk.js +335 -0
  283. package/dist/scripts/4.chunk.js.map +1 -0
  284. package/dist/scripts/40-2ecbd41570.chunk.js +1 -0
  285. package/dist/scripts/40-a691a401ff.chunk.js +1 -0
  286. package/dist/scripts/40-f1d72b1049.chunk.js +1 -0
  287. package/dist/scripts/40.chunk.js +2493 -0
  288. package/dist/scripts/40.chunk.js.map +1 -0
  289. package/dist/scripts/41-0368ba16dc.chunk.js +1 -0
  290. package/dist/scripts/41-85fcb15184.chunk.js +1 -0
  291. package/dist/scripts/41-bb9aef24f7.chunk.js +1 -0
  292. package/dist/scripts/41.chunk.js +1782 -0
  293. package/dist/scripts/41.chunk.js.map +1 -0
  294. package/dist/scripts/42-389acb6e55.chunk.js +1 -0
  295. package/dist/scripts/42-3ef41f40f5.chunk.js +1 -0
  296. package/dist/scripts/42-61a626d7f4.chunk.js +1 -0
  297. package/dist/scripts/42.chunk.js +2327 -0
  298. package/dist/scripts/42.chunk.js.map +1 -0
  299. package/dist/scripts/43-2fe5b1c9cc.chunk.js +1 -0
  300. package/dist/scripts/43-49f13dab14.chunk.js +1 -0
  301. package/dist/scripts/43-a5b882d502.chunk.js +1 -0
  302. package/dist/scripts/43.chunk.js +1206 -0
  303. package/dist/scripts/43.chunk.js.map +1 -0
  304. package/dist/scripts/44-0703eb0ad8.chunk.js +1 -0
  305. package/dist/scripts/44-de22428999.chunk.js +1 -0
  306. package/dist/scripts/44-ee6a740a16.chunk.js +1 -0
  307. package/dist/scripts/44.chunk.js +2245 -0
  308. package/dist/scripts/44.chunk.js.map +1 -0
  309. package/dist/scripts/45-806dd5b78c.chunk.js +1 -0
  310. package/dist/scripts/45-da34a8b6b2.chunk.js +1 -0
  311. package/dist/scripts/45-e4a92a40fd.chunk.js +1 -0
  312. package/dist/scripts/45.chunk.js +1065 -0
  313. package/dist/scripts/45.chunk.js.map +1 -0
  314. package/dist/scripts/46-4aa05464fe.chunk.js +1 -0
  315. package/dist/scripts/46-cccef3e874.chunk.js +1 -0
  316. package/dist/scripts/46-ebf8eee4ac.chunk.js +1 -0
  317. package/dist/scripts/46.chunk.js +655 -0
  318. package/dist/scripts/46.chunk.js.map +1 -0
  319. package/dist/scripts/47-1e3d829757.chunk.js +1 -0
  320. package/dist/scripts/47-56d22af6ba.chunk.js +1 -0
  321. package/dist/scripts/47-c61fa52c53.chunk.js +1 -0
  322. package/dist/scripts/47.chunk.js +736 -0
  323. package/dist/scripts/47.chunk.js.map +1 -0
  324. package/dist/scripts/48-877e9e02b8.chunk.js +1 -0
  325. package/dist/scripts/48-e05ab3ecac.chunk.js +1 -0
  326. package/dist/scripts/48-fc96b968fc.chunk.js +1 -0
  327. package/dist/scripts/48.chunk.js +994 -0
  328. package/dist/scripts/48.chunk.js.map +1 -0
  329. package/dist/scripts/49-13c5f8e87d.chunk.js +1 -0
  330. package/dist/scripts/49-4a6c119f58.chunk.js +1 -0
  331. package/dist/scripts/49-f9151c7e06.chunk.js +1 -0
  332. package/dist/scripts/49.chunk.js +761 -0
  333. package/dist/scripts/49.chunk.js.map +1 -0
  334. package/dist/scripts/5-1ba89c4774.chunk.js +1 -0
  335. package/dist/scripts/5-515b264fbc.chunk.js +1 -0
  336. package/dist/scripts/5-d6a7d71167.chunk.js +1 -0
  337. package/dist/scripts/5.chunk.js +15 -0
  338. package/dist/scripts/5.chunk.js.map +1 -0
  339. package/dist/scripts/50-0741587a02.chunk.js +1 -0
  340. package/dist/scripts/50-3924907655.chunk.js +1 -0
  341. package/dist/scripts/50-4de0b758d5.chunk.js +1 -0
  342. package/dist/scripts/50.chunk.js +530 -0
  343. package/dist/scripts/50.chunk.js.map +1 -0
  344. package/dist/scripts/51-a5f1309ada.chunk.js +1 -0
  345. package/dist/scripts/51-dca2a9cc86.chunk.js +1 -0
  346. package/dist/scripts/51-ea33746146.chunk.js +1 -0
  347. package/dist/scripts/51.chunk.js +932 -0
  348. package/dist/scripts/51.chunk.js.map +1 -0
  349. package/dist/scripts/52-50230b48c8.chunk.js +1 -0
  350. package/dist/scripts/52-a3c8ed29ca.chunk.js +1 -0
  351. package/dist/scripts/52-bc48f1f9e8.chunk.js +1 -0
  352. package/dist/scripts/52.chunk.js +408 -0
  353. package/dist/scripts/52.chunk.js.map +1 -0
  354. package/dist/scripts/53-0e253f9f3e.chunk.js +1 -0
  355. package/dist/scripts/53-36007500cf.chunk.js +1 -0
  356. package/dist/scripts/53-d8f0dea552.chunk.js +1 -0
  357. package/dist/scripts/53.chunk.js +756 -0
  358. package/dist/scripts/53.chunk.js.map +1 -0
  359. package/dist/scripts/54-7cdbdcebf9.chunk.js +1 -0
  360. package/dist/scripts/54-d1bc70c7b5.chunk.js +1 -0
  361. package/dist/scripts/54-ead54d0b34.chunk.js +1 -0
  362. package/dist/scripts/54.chunk.js +681 -0
  363. package/dist/scripts/54.chunk.js.map +1 -0
  364. package/dist/scripts/55-3c60601030.chunk.js +1 -0
  365. package/dist/scripts/55-a5fa20b497.chunk.js +1 -0
  366. package/dist/scripts/55-e29d6a6ba9.chunk.js +1 -0
  367. package/dist/scripts/55.chunk.js +645 -0
  368. package/dist/scripts/55.chunk.js.map +1 -0
  369. package/dist/scripts/56-36d54fa08f.chunk.js +1 -0
  370. package/dist/scripts/56-370078d597.chunk.js +1 -0
  371. package/dist/scripts/56-df0a32000b.chunk.js +1 -0
  372. package/dist/scripts/56.chunk.js +346 -0
  373. package/dist/scripts/56.chunk.js.map +1 -0
  374. package/dist/scripts/57-6e622c6480.chunk.js +1 -0
  375. package/dist/scripts/57-a4f4d6fe41.chunk.js +1 -0
  376. package/dist/scripts/57-c1faec8b32.chunk.js +1 -0
  377. package/dist/scripts/57.chunk.js +422 -0
  378. package/dist/scripts/57.chunk.js.map +1 -0
  379. package/dist/scripts/58-17706ccb46.chunk.js +1 -0
  380. package/dist/scripts/58-a0fe201826.chunk.js +1 -0
  381. package/dist/scripts/58-e996405f2b.chunk.js +1 -0
  382. package/dist/scripts/58.chunk.js +437 -0
  383. package/dist/scripts/58.chunk.js.map +1 -0
  384. package/dist/scripts/59-0a7bdc86b0.chunk.js +1 -0
  385. package/dist/scripts/59-381a49ed7f.chunk.js +1 -0
  386. package/dist/scripts/59-4f2fcb6412.chunk.js +1 -0
  387. package/dist/scripts/59.chunk.js +342 -0
  388. package/dist/scripts/59.chunk.js.map +1 -0
  389. package/dist/scripts/6-40c8ba5007.chunk.js +1 -0
  390. package/dist/scripts/6-51a379e066.chunk.js +1 -0
  391. package/dist/scripts/6-b3d36065dc.chunk.js +1 -0
  392. package/dist/scripts/6.chunk.js +484 -0
  393. package/dist/scripts/6.chunk.js.map +1 -0
  394. package/dist/scripts/60-0d8896555f.chunk.js +1 -0
  395. package/dist/scripts/60-b4a91c86fa.chunk.js +1 -0
  396. package/dist/scripts/60-c57f161f18.chunk.js +1 -0
  397. package/dist/scripts/60.chunk.js +254 -0
  398. package/dist/scripts/60.chunk.js.map +1 -0
  399. package/dist/scripts/61-5d6e59d408.chunk.js +1 -0
  400. package/dist/scripts/61-7d81d27c31.chunk.js +1 -0
  401. package/dist/scripts/61-a342a0d501.chunk.js +1 -0
  402. package/dist/scripts/61.chunk.js +408 -0
  403. package/dist/scripts/61.chunk.js.map +1 -0
  404. package/dist/scripts/62-758f5e505b.chunk.js +1 -0
  405. package/dist/scripts/62-b572d8b80d.chunk.js +1 -0
  406. package/dist/scripts/62-f5fd35fdc0.chunk.js +1 -0
  407. package/dist/scripts/62.chunk.js +142 -0
  408. package/dist/scripts/62.chunk.js.map +1 -0
  409. package/dist/scripts/63-568008965e.chunk.js +1 -0
  410. package/dist/scripts/63-6700b4d00a.chunk.js +1 -0
  411. package/dist/scripts/63-c88b9860e9.chunk.js +1 -0
  412. package/dist/scripts/63.chunk.js +147 -0
  413. package/dist/scripts/63.chunk.js.map +1 -0
  414. package/dist/scripts/64-9c88ee6161.chunk.js +1 -0
  415. package/dist/scripts/64-e177d4c971.chunk.js +1 -0
  416. package/dist/scripts/64-fa2facacbb.chunk.js +1 -0
  417. package/dist/scripts/64.chunk.js +439 -0
  418. package/dist/scripts/64.chunk.js.map +1 -0
  419. package/dist/scripts/65-93567fe088.chunk.js +1 -0
  420. package/dist/scripts/65-e4568d1f06.chunk.js +1 -0
  421. package/dist/scripts/65-f750573f69.chunk.js +1 -0
  422. package/dist/scripts/65.chunk.js +582 -0
  423. package/dist/scripts/65.chunk.js.map +1 -0
  424. package/dist/scripts/66-c84a3a3c3f.chunk.js +1 -0
  425. package/dist/scripts/66-f325ff3187.chunk.js +1 -0
  426. package/dist/scripts/66-f6d213b33c.chunk.js +1 -0
  427. package/dist/scripts/66.chunk.js +442 -0
  428. package/dist/scripts/66.chunk.js.map +1 -0
  429. package/dist/scripts/67-3c9628d296.chunk.js +1 -0
  430. package/dist/scripts/67-97c694c3d5.chunk.js +1 -0
  431. package/dist/scripts/67-c5af18680c.chunk.js +1 -0
  432. package/dist/scripts/67.chunk.js +295 -0
  433. package/dist/scripts/67.chunk.js.map +1 -0
  434. package/dist/scripts/68-488cd1552f.chunk.js +1 -0
  435. package/dist/scripts/68-7b1d5e8e75.chunk.js +1 -0
  436. package/dist/scripts/68-eb8700aeb1.chunk.js +1 -0
  437. package/dist/scripts/68.chunk.js +165 -0
  438. package/dist/scripts/68.chunk.js.map +1 -0
  439. package/dist/scripts/69-3d2063cd0f.chunk.js +1 -0
  440. package/dist/scripts/69-b0ea71d7c5.chunk.js +1 -0
  441. package/dist/scripts/69-be2be90b7c.chunk.js +1 -0
  442. package/dist/scripts/69.chunk.js +248 -0
  443. package/dist/scripts/69.chunk.js.map +1 -0
  444. package/dist/scripts/7-3151397d74.chunk.js +1 -0
  445. package/dist/scripts/7-aac8c84ccb.chunk.js +1 -0
  446. package/dist/scripts/7-dfddb8ffa8.chunk.js +1 -0
  447. package/dist/scripts/7.chunk.js +309 -0
  448. package/dist/scripts/7.chunk.js.map +1 -0
  449. package/dist/scripts/70-27e9e5792a.chunk.js +1 -0
  450. package/dist/scripts/70-39dc936989.chunk.js +1 -0
  451. package/dist/scripts/70-e6ebb44667.chunk.js +1 -0
  452. package/dist/scripts/70.chunk.js +207 -0
  453. package/dist/scripts/70.chunk.js.map +1 -0
  454. package/dist/scripts/71-8e3682a7d7.chunk.js +1 -0
  455. package/dist/scripts/71-a80858069c.chunk.js +1 -0
  456. package/dist/scripts/71-c5923e2d2d.chunk.js +1 -0
  457. package/dist/scripts/71.chunk.js +237 -0
  458. package/dist/scripts/71.chunk.js.map +1 -0
  459. package/dist/scripts/72-245f28bf97.chunk.js +1 -0
  460. package/dist/scripts/72-550438db4e.chunk.js +1 -0
  461. package/dist/scripts/72-65364adff1.chunk.js +1 -0
  462. package/dist/scripts/72.chunk.js +331 -0
  463. package/dist/scripts/72.chunk.js.map +1 -0
  464. package/dist/scripts/73.chunk.js +404 -0
  465. package/dist/scripts/73.chunk.js.map +1 -0
  466. package/dist/scripts/74.chunk.js +301 -0
  467. package/dist/scripts/74.chunk.js.map +1 -0
  468. package/dist/scripts/75.chunk.js +231 -0
  469. package/dist/scripts/75.chunk.js.map +1 -0
  470. package/dist/scripts/76.chunk.js +157 -0
  471. package/dist/scripts/76.chunk.js.map +1 -0
  472. package/dist/scripts/77.chunk.js +307 -0
  473. package/dist/scripts/77.chunk.js.map +1 -0
  474. package/dist/scripts/78.chunk.js +249 -0
  475. package/dist/scripts/78.chunk.js.map +1 -0
  476. package/dist/scripts/79.chunk.js +282 -0
  477. package/dist/scripts/79.chunk.js.map +1 -0
  478. package/dist/scripts/8-c4955c2009.chunk.js +1 -0
  479. package/dist/scripts/8-d46f48d03c.chunk.js +1 -0
  480. package/dist/scripts/8-e5d19252c8.chunk.js +1 -0
  481. package/dist/scripts/8.chunk.js +307 -0
  482. package/dist/scripts/8.chunk.js.map +1 -0
  483. package/dist/scripts/80.chunk.js +308 -0
  484. package/dist/scripts/80.chunk.js.map +1 -0
  485. package/dist/scripts/81.chunk.js +366 -0
  486. package/dist/scripts/81.chunk.js.map +1 -0
  487. package/dist/scripts/82.chunk.js +314 -0
  488. package/dist/scripts/82.chunk.js.map +1 -0
  489. package/dist/scripts/83.chunk.js +328 -0
  490. package/dist/scripts/83.chunk.js.map +1 -0
  491. package/dist/scripts/84.chunk.js +313 -0
  492. package/dist/scripts/84.chunk.js.map +1 -0
  493. package/dist/scripts/85.chunk.js +291 -0
  494. package/dist/scripts/85.chunk.js.map +1 -0
  495. package/dist/scripts/86.chunk.js +119 -0
  496. package/dist/scripts/86.chunk.js.map +1 -0
  497. package/dist/scripts/87.chunk.js +219 -0
  498. package/dist/scripts/87.chunk.js.map +1 -0
  499. package/dist/scripts/88.chunk.js +194 -0
  500. package/dist/scripts/88.chunk.js.map +1 -0
  501. package/dist/scripts/89.chunk.js +522 -0
  502. package/dist/scripts/89.chunk.js.map +1 -0
  503. package/dist/scripts/9-4589726554.chunk.js +1 -0
  504. package/dist/scripts/9-66021549bd.chunk.js +1 -0
  505. package/dist/scripts/9-df99ba6ce1.chunk.js +1 -0
  506. package/dist/scripts/9.chunk.js +222 -0
  507. package/dist/scripts/9.chunk.js.map +1 -0
  508. package/dist/scripts/90.chunk.js +337 -0
  509. package/dist/scripts/90.chunk.js.map +1 -0
  510. package/dist/scripts/91.chunk.js +131 -0
  511. package/dist/scripts/91.chunk.js.map +1 -0
  512. package/dist/scripts/92.chunk.js +266 -0
  513. package/dist/scripts/92.chunk.js.map +1 -0
  514. package/dist/scripts/bundle-1b984e2fd9.min.js +8 -0
  515. package/dist/scripts/{bundle-8862b095c0.min.js → bundle-203920eb14.min.js} +1 -1
  516. package/dist/scripts/bundle-7d13ba933b.min.js +8 -0
  517. package/dist/scripts/bundle-d5b23160b1.min.js +8 -0
  518. package/dist/scripts/bundle.js +67100 -0
  519. package/dist/scripts/bundle.js.map +1 -0
  520. package/dist/scripts/bundles.json +2 -2
  521. package/dist/scripts/polyfills-9b0be1bd72.min.js +1 -0
  522. package/dist/scripts/polyfills-cd3d0a9f6d.min.js +1 -0
  523. package/dist/scripts/polyfills-d891a77823.min.js +1 -0
  524. package/dist/scripts/polyfills.js +14866 -0
  525. package/dist/scripts/polyfills.js.map +1 -0
  526. package/package.json +2 -2
  527. /package/dist/scripts/{0-1deffb42bf.chunk.js → 0-8b75adf540.chunk.js} +0 -0
  528. /package/dist/scripts/{1-a4065968c1.chunk.js → 1-22a3bd404f.chunk.js} +0 -0
  529. /package/dist/scripts/{10-0adc529f9b.chunk.js → 10-31317a2d02.chunk.js} +0 -0
  530. /package/dist/scripts/{12-18ae0dfa89.chunk.js → 12-6ecdd79b85.chunk.js} +0 -0
  531. /package/dist/scripts/{13-a9ed73e93d.chunk.js → 13-282f8add17.chunk.js} +0 -0
  532. /package/dist/scripts/{14-e0828acdfa.chunk.js → 14-5e443cb402.chunk.js} +0 -0
  533. /package/dist/scripts/{15-c67caabb0a.chunk.js → 15-1f779dd0d3.chunk.js} +0 -0
  534. /package/dist/scripts/{16-31fefb2cac.chunk.js → 16-427a8933c8.chunk.js} +0 -0
  535. /package/dist/scripts/{17-b9c5bbda43.chunk.js → 17-7093f50dff.chunk.js} +0 -0
  536. /package/dist/scripts/{20-2bca62d1c0.chunk.js → 20-a84733c89f.chunk.js} +0 -0
  537. /package/dist/scripts/{21-c70d40dc61.chunk.js → 21-9b28a13702.chunk.js} +0 -0
  538. /package/dist/scripts/{22-0e9dca307f.chunk.js → 22-082c94a39c.chunk.js} +0 -0
  539. /package/dist/scripts/{23-b4a5ffb3a6.chunk.js → 23-2b00ff99bf.chunk.js} +0 -0
  540. /package/dist/scripts/{24-88056bc5c9.chunk.js → 24-c94049500e.chunk.js} +0 -0
  541. /package/dist/scripts/{25-ec294abf37.chunk.js → 25-34c0406f50.chunk.js} +0 -0
  542. /package/dist/scripts/{26-2a038b6df5.chunk.js → 26-d19e3f755c.chunk.js} +0 -0
  543. /package/dist/scripts/{27-9f06d5bb5d.chunk.js → 27-3aa629dd67.chunk.js} +0 -0
  544. /package/dist/scripts/{28-4e62071464.chunk.js → 28-738b88c816.chunk.js} +0 -0
  545. /package/dist/scripts/{29-5ab940b23f.chunk.js → 29-3faa153e38.chunk.js} +0 -0
  546. /package/dist/scripts/{3-dbf1f0bdbc.chunk.js → 3-42e8af9f39.chunk.js} +0 -0
  547. /package/dist/scripts/{30-87ec7ee868.chunk.js → 30-109f8ddd5c.chunk.js} +0 -0
  548. /package/dist/scripts/{31-24f9dc350e.chunk.js → 31-639090fee3.chunk.js} +0 -0
  549. /package/dist/scripts/{32-a06209da52.chunk.js → 32-3de9c7454b.chunk.js} +0 -0
  550. /package/dist/scripts/{33-c33020ec6f.chunk.js → 33-675467f07d.chunk.js} +0 -0
  551. /package/dist/scripts/{34-116a50814d.chunk.js → 34-0a7f3b55fe.chunk.js} +0 -0
  552. /package/dist/scripts/{35-33ea39c18e.chunk.js → 35-4254e160f0.chunk.js} +0 -0
  553. /package/dist/scripts/{36-ccb493b3f6.chunk.js → 36-1fde696d6a.chunk.js} +0 -0
  554. /package/dist/scripts/{37-bb5a5bdad3.chunk.js → 37-97b84a8be5.chunk.js} +0 -0
  555. /package/dist/scripts/{38-64d5f34871.chunk.js → 38-0cf8029bec.chunk.js} +0 -0
  556. /package/dist/scripts/{39-14259bc6fe.chunk.js → 39-748eb61732.chunk.js} +0 -0
  557. /package/dist/scripts/{4-dbbff4289b.chunk.js → 4-5c50e71b83.chunk.js} +0 -0
  558. /package/dist/scripts/{40-ea678bbe5b.chunk.js → 40-2691dfbd5a.chunk.js} +0 -0
  559. /package/dist/scripts/{41-2d35060d0e.chunk.js → 41-1df587ee3a.chunk.js} +0 -0
  560. /package/dist/scripts/{42-898076e213.chunk.js → 42-3480033857.chunk.js} +0 -0
  561. /package/dist/scripts/{43-0616177a42.chunk.js → 43-72d1bc0ae2.chunk.js} +0 -0
  562. /package/dist/scripts/{44-861ac46f36.chunk.js → 44-756fd6622b.chunk.js} +0 -0
  563. /package/dist/scripts/{45-7446535f17.chunk.js → 45-610d098194.chunk.js} +0 -0
  564. /package/dist/scripts/{46-26620d2a5f.chunk.js → 46-cadf3f46ee.chunk.js} +0 -0
  565. /package/dist/scripts/{47-a4034122c9.chunk.js → 47-22a83e5974.chunk.js} +0 -0
  566. /package/dist/scripts/{48-76b2c74863.chunk.js → 48-e577124476.chunk.js} +0 -0
  567. /package/dist/scripts/{49-505e968070.chunk.js → 49-0f9a6a1782.chunk.js} +0 -0
  568. /package/dist/scripts/{5-2051149282.chunk.js → 5-06b97501c3.chunk.js} +0 -0
  569. /package/dist/scripts/{50-5fc4da3bc5.chunk.js → 50-0d5aed7730.chunk.js} +0 -0
  570. /package/dist/scripts/{51-fc0310c5cd.chunk.js → 51-cd37c8efa2.chunk.js} +0 -0
  571. /package/dist/scripts/{52-bf7eecfbac.chunk.js → 52-8b53a5c0b1.chunk.js} +0 -0
  572. /package/dist/scripts/{53-ec51fba164.chunk.js → 53-54b0df474f.chunk.js} +0 -0
  573. /package/dist/scripts/{54-d3990092dd.chunk.js → 54-dd4d101665.chunk.js} +0 -0
  574. /package/dist/scripts/{55-e4665da63e.chunk.js → 55-078bb9b0ea.chunk.js} +0 -0
  575. /package/dist/scripts/{56-21b33b42c3.chunk.js → 56-7a6c662f14.chunk.js} +0 -0
  576. /package/dist/scripts/{57-07deff9444.chunk.js → 57-0e126120b9.chunk.js} +0 -0
  577. /package/dist/scripts/{58-68ca09ffdf.chunk.js → 58-5729cbaa5c.chunk.js} +0 -0
  578. /package/dist/scripts/{59-c7705e6551.chunk.js → 59-333f38ee3b.chunk.js} +0 -0
  579. /package/dist/scripts/{6-9bc788ce4c.chunk.js → 6-1045293de4.chunk.js} +0 -0
  580. /package/dist/scripts/{60-319578f49a.chunk.js → 60-b17c6609cd.chunk.js} +0 -0
  581. /package/dist/scripts/{61-25fcfd00c9.chunk.js → 61-57fa6b5248.chunk.js} +0 -0
  582. /package/dist/scripts/{62-d07ddf14ff.chunk.js → 62-67458b7fb4.chunk.js} +0 -0
  583. /package/dist/scripts/{63-08c93c2e53.chunk.js → 63-420b10f5f2.chunk.js} +0 -0
  584. /package/dist/scripts/{64-ffead99364.chunk.js → 64-e6598113a7.chunk.js} +0 -0
  585. /package/dist/scripts/{65-86eee87750.chunk.js → 65-a7e499ceee.chunk.js} +0 -0
  586. /package/dist/scripts/{66-79a4d8629a.chunk.js → 66-f00f29ccae.chunk.js} +0 -0
  587. /package/dist/scripts/{67-bc34473155.chunk.js → 67-1ebaab7a2d.chunk.js} +0 -0
  588. /package/dist/scripts/{68-c3fe0c028e.chunk.js → 68-38a6d7fb50.chunk.js} +0 -0
  589. /package/dist/scripts/{69-f4f1f07045.chunk.js → 69-870856c6fb.chunk.js} +0 -0
  590. /package/dist/scripts/{7-74c0fcd6fe.chunk.js → 7-d41d3bf60c.chunk.js} +0 -0
  591. /package/dist/scripts/{70-4681989887.chunk.js → 70-6ef72cd9b6.chunk.js} +0 -0
  592. /package/dist/scripts/{71-8ae59fd304.chunk.js → 71-4e4a47d601.chunk.js} +0 -0
  593. /package/dist/scripts/{72-8615720ce0.chunk.js → 72-0a6c88f9fe.chunk.js} +0 -0
  594. /package/dist/scripts/{8-039e714b81.chunk.js → 8-7278f3247c.chunk.js} +0 -0
  595. /package/dist/scripts/{9-e76ba48df5.chunk.js → 9-576592d419.chunk.js} +0 -0
  596. /package/dist/scripts/{polyfills-57fccaae30.min.js → polyfills-5a81b67408.min.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/behaviors/draggable-video/DraggableVideoBehavior.ts","webpack://@clickview/library-editor/./src/apps/library-editor/behaviors/draggable-video/draggable-video.scss?83c4","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/components/expandable-tag-list/ExpandableTagList.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/components/expandable-tag-list/ExpandableTagListComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item-preview/VideoItemPreview.handlebars","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item-preview/VideoItemPreviewComponent.ts","webpack://@clickview/library-editor/./src/shared/components/video-item-preview/video-item-preview.scss?70dc","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/VideoItem.handlebars","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/VideoItemComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/utils/VideoItemBehaviors.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/utils/VideoItemComponentHelper.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/utils/VideoItemComponentTypes.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/utils/VideoItemComponents.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/base/VideoItemActions.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/base/VideoItemActionsComponent.ts","webpack://@clickview/library-editor/./src/shared/components/video-item/video-item-actions/base/video-item-actions.scss?d902","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/video-item-processing-actions/VideoItemProcessingActions.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/video-item-processing-actions/VideoItemProcessingActionsComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/video-item-review-actions/VideoItemReviewActions.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/video-item-review-actions/VideoItemReviewActionsComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/video-item-video-access-actions/VideoItemVideoAccessActions.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-actions/video-item-video-access-actions/VideoItemVideoAccessActionsComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/base/VideoItemMetadata.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/base/VideoItemMetadataComponent.ts","webpack://@clickview/library-editor/./src/shared/components/video-item/video-item-metadata/base/video-item-metadata.scss?ac08","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-awaiting-review-metadata/VideoItemAwaitingReviewMetadata.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-awaiting-review-metadata/VideoItemAwaitingReviewMetadataComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadges.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadgesComponent.ts","webpack://@clickview/library-editor/./src/shared/components/video-item/video-item-metadata/video-item-badges/video-item-badges.scss?4213","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-past-releases-metadata/VideoItemPastReleasesMetadata.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-past-releases-metadata/VideoItemPastReleasesMetadataComponent.ts","webpack://@clickview/library-editor/./src/shared/components/video-item/video-item-metadata/video-item-past-releases-metadata/video-item-past-releases-metadata.scss?2ea1","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-processing-metadata/VideoItemProcessingMetadata.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-processing-metadata/VideoItemProcessingMetadataComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-search-metadata/VideoItemSearchMetadata.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-search-metadata/VideoItemSearchMetadataComponent.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-video-access-metadata/VideoItemVideoAccessMetadata.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-item/video-item-metadata/video-item-video-access-metadata/VideoItemVideoAccessMetadataComponent.ts","webpack://@clickview/library-editor/./src/shared/components/video-item/video-item.scss?f159","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-list/VideoList.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/video-list/VideoListComponent.ts"],"names":[],"mappings":"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","file":"scripts/11.chunk.js","sourcesContent":["import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { DevError } from 'libs/common/backbone/errors/DevError';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { ServiceChannels } from 'shared/constants';\r\nimport { VideoCollectionIdentifier } from 'shared/interfaces/VideoCollectionIdentifier';\r\nimport { BulkCheckboxHelper } from 'shared/utils';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { DraggableItemComponent, DragOptions, styles } from 'apps/library-editor/behaviors/shared';\r\nimport { CheckboxTypes } from 'apps/library-editor/constants';\r\n\r\nimport videoStyles from './draggable-video.scss';\r\n\r\ninterface DraggableVideoOptions {\r\n model: Video;\r\n collectionIdentifier: VideoCollectionIdentifier;\r\n selector?: string;\r\n}\r\n\r\nexport class DraggableVideoBehavior extends Core.Behavior {\r\n public options: DraggableVideoOptions;\r\n\r\n public initialize(): void {\r\n if (!this.options.model)\r\n Core.ErrorHelper.throw(new DevError('DraggableVideoBehavior must be passed a Video model'));\r\n\r\n this.listenTo(ServiceChannels.VIDEO_DRAG_DROP, `drag:style:${this.options.model.id}`, this.styleDragStart);\r\n\r\n this.listenTo(ServiceChannels.VIDEO_DRAG_DROP, 'drag:stop', this.styleDragStop);\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.behaviors';\r\n }\r\n\r\n private helper(): any {\r\n const models = this.getVideoModels();\r\n\r\n const draggableItemComponent = new DraggableItemComponent({\r\n text: models.length > 1\r\n ? LanguageService.getPhrase(this.lang, 'videos', { videoCount: models.length })\r\n : models[0].get('name'),\r\n svg: SvgHelper.getSvg(cvSvgLibrary.Play)\r\n });\r\n return draggableItemComponent.render().el;\r\n }\r\n\r\n private getSelector(): JQuery<HTMLElement> {\r\n return this.view.getUI(this.options.selector);\r\n }\r\n\r\n private styleDragStart(): void {\r\n const $el = this.getSelector();\r\n $el.addClass(videoStyles.draggingVideo);\r\n }\r\n\r\n private styleDragStop(): void {\r\n const $el = this.getSelector();\r\n $el.removeClass(videoStyles.draggingVideo);\r\n }\r\n\r\n private start(): void {\r\n const models = this.getVideoModels();\r\n\r\n /**\r\n * This relies on an instance of VideoDragDropService existing\r\n * This instanced should be retreived from the instance manager\r\n * by the application.\r\n */\r\n const channel = Radio.channel(ServiceChannels.VIDEO_DRAG_DROP);\r\n\r\n channel.trigger('drag:start', models, this.options.collectionIdentifier);\r\n _.each(models, m => channel.trigger(`drag:style:${m.id}`));\r\n }\r\n\r\n private stop(): void {\r\n Radio.channel(ServiceChannels.VIDEO_DRAG_DROP)\r\n .trigger('drag:stop');\r\n }\r\n\r\n private getVideoModels(): Core.Model[] {\r\n let models = BulkCheckboxHelper.GetSelectedModels({\r\n key: this.options.collectionIdentifier.toString(),\r\n type: CheckboxTypes.VIDEO_LIST,\r\n collection: this.view.model.collection\r\n });\r\n\r\n if (!_.any(models, m => m.id === this.view.model.id))\r\n models = [this.view.model];\r\n\r\n if (models.length)\r\n return models;\r\n\r\n return [this.view.model];\r\n }\r\n\r\n private getClassMappings(): ObjectHash {\r\n return {\r\n 'ui-draggable': styles.draggable,\r\n 'ui-draggable-disabled': styles.disabled,\r\n 'ui-draggable-handle': styles.handle,\r\n 'ui-draggable-dragging': styles.dragging\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n const $el = this.getSelector();\r\n\r\n const options: JQueryUI.DraggableOptions = {\r\n helper: _.bind(this.helper, this),\r\n start: _.bind(this.start, this),\r\n stop: _.bind(this.stop, this)\r\n };\r\n (options as any).classes = this.getClassMappings();\r\n $el.draggable(_.extend({}, DragOptions, options));\r\n }\r\n\r\n public onBeforeDestroy(): void {\r\n /**\r\n * Because JQuery.UI's draggable is a piece of shit\r\n * it sometimes errors out on 'destroy' if the element has otherwise\r\n * been disposed of before this fire. So we need to first check if\r\n * there is still an instance of $.fn.draggable before we call destroy on it\r\n */\r\n const $el = this.getSelector();\r\n if ($el.draggable('instance'))\r\n $el.draggable('destroy');\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"draggingVideo\":\"cv--draggingVideo--3cCHx\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return \" <a class=\\\"info-link show-more-tags\\\">\"\n + container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.extraTagsText : stack1), depth0))\n + \"</a>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return \" <a class=\\\"info-link applink-video-details\\\">\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"viewAllTags\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</a>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"tags-region\\\"></div>\\r\\n\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.expandable : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.moreTags : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\");\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash, Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { TagCollection } from 'shared/collections/TagCollection';\r\nimport { AppChannels, Actions } from 'shared/constants';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { TagComponentCollection } from 'apps/library-editor/components/tag-list/TagComponentCollection';\r\nimport { TagBehavior } from 'apps/library-editor/enums';\r\n\r\nimport ExpandableTagListTemplate from './ExpandableTagList.hbs';\r\n\r\ninterface VideoItemDescriptionComponentOptions extends Core.ComponentOptions {\r\n initialTagDisplayCount?: number;\r\n expandedTagDisplayCount?: number;\r\n videoId?: number;\r\n}\r\n\r\nexport class ExpandableTagListComponent extends Core.Component {\r\n public options: VideoItemDescriptionComponentOptions;\r\n private showingMoreTags: boolean;\r\n\r\n constructor(options: VideoItemDescriptionComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'ExpandableTagListComponent';\r\n }\r\n\r\n public get template(): any {\r\n return ExpandableTagListTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.expandableTagList';\r\n }\r\n\r\n public get defaults(): ObjectHash {\r\n return {\r\n initialTagDisplayCount: 5,\r\n expandedTagDisplayCount: 10\r\n };\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n '.applink-video-details': {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.VIDEO_DETAILS,\r\n args: [this.options.videoId]\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .show-more-tags': 'onClickShowMoreTags'\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n tags: {\r\n replaceElement: true,\r\n el: '.tags-region'\r\n }\r\n };\r\n }\r\n\r\n private onClickShowMoreTags(): void {\r\n this.showingMoreTags = true;\r\n\r\n if (this.options.channelName)\r\n Radio.channel(this.options.channelName).trigger('show:more:tags');\r\n\r\n this.render();\r\n }\r\n\r\n private getTagCollection(): TagCollection {\r\n const collectionLength = this.showingMoreTags\r\n ? this.options.expandedTagDisplayCount\r\n : this.options.initialTagDisplayCount;\r\n\r\n return new TagCollection(this.collection.slice(0, collectionLength));\r\n }\r\n\r\n private getExtraTagsInfo(): string {\r\n if (this.showingMoreTags)\r\n return;\r\n\r\n return LanguageService.getPhrase(this.lang, 'extraTags', {\r\n smartCount: _.max([ this.collection.length - this.options.initialTagDisplayCount, 0 ])\r\n });\r\n }\r\n\r\n public renderTags(): void {\r\n const view = new TagComponentCollection({\r\n collection: this.getTagCollection(),\r\n behavior: TagBehavior.Link\r\n });\r\n\r\n this.showChildView('tags', view);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n expandable: this.collection.length > this.options.initialTagDisplayCount && !this.showingMoreTags,\r\n extraTagsText: this.getExtraTagsInfo(),\r\n moreTags: this.showingMoreTags && this.collection.length > this.options.expandedTagDisplayCount\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderTags();\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return \" <p>\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"noDescription\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n return \" <div class=\\\"description-region\\\"></div>\\r\\n\";\n},\"5\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <div class=\\\"col-6 pb-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"rating\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <div class=\\\"col-6 mb-0 pb-1\\\">\\r\\n <span class=\\\"badge p-1 text-white tool-tip \"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.ratingClass : stack1), depth0))\n + \"\\\" title=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.rating : depth0)) != null ? stack1.name : stack1), depth0))\n + \"\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.rating : depth0)) != null ? stack1.code : stack1), depth0))\n + \"</span>\\r\\n </div>\\r\\n\";\n},\"7\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=container.escapeExpression, alias3=depth0 != null ? depth0 : (container.nullContext || {}), alias4=container.hooks.helperMissing;\n\n return \" <div class=\\\"col-6 py-1 \"\n + alias2(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||alias4).call(alias3,\"productionYear\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <p class=\\\"col-6 mb-0 py-1\\\">\"\n + alias2(((helper = (helper = helpers.productionYear || (depth0 != null ? depth0.productionYear : depth0)) != null ? helper : alias4),(typeof helper === \"function\" ? helper.call(alias3,{\"name\":\"productionYear\",\"hash\":{},\"data\":data}) : helper)))\n + \"</p>\\r\\n\";\n},\"9\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \" <div class=\\\"col-6 py-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(alias4,\"chapters\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <a\\r\\n class=\\\"col-6 info-link mb-0 py-1 \"\n + ((stack1 = helpers.unless.call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(10, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\\"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(12, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" >\\r\\n \"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.chapters : stack1), depth0))\n + \"\\r\\n \"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(14, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n </a>\\r\\n\";\n},\"10\":function(container,depth0,helpers,partials,data) {\n return \"applink-video-details\";\n},\"12\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return \" href=\\\"\"\n + container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1), depth0))\n + \"\\\"\\r\\n target=\\\"_blank\\\"\\r\\n\";\n},\"14\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda;\n\n return \"<div class=\\\"d-inline-block \"\n + container.escapeExpression(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.smallSvgContainer : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.openExternalSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</div>\";\n},\"16\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <div class=\\\"col-6 py-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"interactives\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <p class=\\\"col-6 mb-0 py-1\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.interactives : stack1), depth0))\n + \"</p>\\r\\n\";\n},\"18\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <div class=\\\"col-6 py-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"subtitles\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <p class=\\\"col-6 mb-0 py-1\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.subtitles : stack1), depth0))\n + \"</p>\\r\\n\";\n},\"20\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \" <div class=\\\"col-6 py-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(alias4,\"resources\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <a\\r\\n class=\\\"col-6 info-link mb-0 py-1 \"\n + ((stack1 = helpers.unless.call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(10, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\\"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(12, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" >\\r\\n \"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.resources : stack1), depth0))\n + \"\\r\\n \"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(14, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n </a>\\r\\n\";\n},\"22\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \" <div class=\\\"col-6 py-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(alias4,\"links\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <a\\r\\n class=\\\"col-6 info-link mb-0 py-1 \"\n + ((stack1 = helpers.unless.call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(10, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\\"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(12, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" >\\r\\n \"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.links : stack1), depth0))\n + \"\\r\\n \"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(14, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n </a>\\r\\n\";\n},\"24\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.escapeExpression;\n\n return \" <div class=\\\"py-1 \"\n + alias2(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"tags\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <div class=\\\"tags-region\\\"></div>\\r\\n <div class=\\\"col-12\\\">&nbsp;</div>\\r\\n\";\n},\"26\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <a href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\" class=\\\"info-link d-inline-block pt-3 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\\r\\n \"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"goToVideo\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\r\\n <div class=\\\"d-inline-block svg-container\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.openExternalSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</div>\\r\\n </a>\\r\\n\";\n},\"28\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.escapeExpression;\n\n return \" <a class=\\\"info-link applink-video-details d-inline-block pt-3 \"\n + alias2(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"viewFullDetails\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</a>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {}), alias5=container.hooks.helperMissing;\n\n return \"<div class=\\\"content-container-region row w-100 pl-0\\\">\\r\\n <div class=\\\"col-8 border-right pt-3\\\">\\r\\n <p class=\\\"text-uppercase text-muted \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||alias5).call(alias4,\"description\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n \\r\\n\"\n + ((stack1 = helpers.unless.call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.description : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \" \\r\\n <div class=\\\"video-preview-region col-7 my-3 pl-0\\\"></div>\\r\\n </div>\\r\\n <div class=\\\"col-4 my-3 pr-0 pl-3\\\">\\r\\n <p class=\\\"text-uppercase text-muted \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||alias5).call(alias4,\"details\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n\\r\\n <div class=\\\"row\\\">\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.rating : depth0)) != null ? stack1.code : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(5, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,(depth0 != null ? depth0.productionYear : depth0),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(7, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n <div class=\\\"col-6 py-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.columnNames : stack1), depth0))\n + \"\\\">\"\n + alias3((helpers.lang||(depth0 && depth0.lang)||alias5).call(alias4,\"duration\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</div>\\r\\n <p class=\\\"col-6 mb-0 py-1\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.duration : stack1), depth0))\n + \"</p>\\r\\n\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.chapters : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(9, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.interactives : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(16, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.subtitles : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(18, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.resources : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(20, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.links : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(22, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" </div>\\r\\n\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.showTags : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(24, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.externalLink : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(26, data, 0),\"inverse\":container.program(28, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \" </div>\\r\\n</div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { LocationContext } from 'libs/analytics/interfaces';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { TooltipBehavior } from 'libs/shared/legacy/behaviors/tooltip/TooltipBehavior';\r\n\r\nimport { TagCollection } from 'shared/collections/TagCollection';\r\nimport { VideoDescriptionComponent, VideoDescriptionTruncationSize } from 'shared/components/video-description/VideoDescriptionComponent';\r\nimport { VideoPreviewComponent } from 'shared/components/video-preview/VideoPreviewComponent';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Subtitle } from 'shared/models/Subtitle';\r\nimport { DurationHelper } from 'shared/utils';\r\nimport { AppChannels, Actions } from 'shared/constants';\r\nimport { PartialLoading } from 'shared/enums';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { VideoDetailsHelper } from 'apps/library-editor/utils';\r\nimport { ExpandableTagListComponent } from 'apps/library-editor/components/expandable-tag-list/ExpandableTagListComponent';\r\n\r\nimport VideoItemPreviewTemplate from './VideoItemPreview.handlebars';\r\nimport styles from './video-item-preview.scss';\r\n\r\nexport interface VideoItemPreviewComponentOptions extends Core.ComponentOptions<Video> {\r\n videoId: string;\r\n channelName: string;\r\n collectionViewChannel: string;\r\n webPlayerUrl: string;\r\n tags?: TagCollection;\r\n externalLink?: string;\r\n}\r\n\r\nexport class VideoItemPreviewComponent extends Core.Component<Video> {\r\n public options: VideoItemPreviewComponentOptions;\r\n\r\n constructor(options: VideoItemPreviewComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change', this.render);\r\n this.listenTo(this.channelName, 'show:more:tags', this.onClickShowMoreTags);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemPreviewComponent';\r\n }\r\n\r\n public get template(): any {\r\n return VideoItemPreviewTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemPreview';\r\n }\r\n\r\n public get className(): string {\r\n return 'row border-top px-3 m-0';\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 appLinks(): Core.AppLinkHash {\r\n return {\r\n '.applink-video-details': {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.VIDEO_DETAILS,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: TooltipBehavior,\r\n selector: '.tool-tip'\r\n }];\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n partialLoadingContainer: {\r\n el: '.content-container-region',\r\n replaceElement: false,\r\n partialLoading: PartialLoading.VideoItemPreview\r\n },\r\n description: '.description-region',\r\n preview: '.video-preview-region',\r\n tags: {\r\n replaceElement: true,\r\n el: '.tags-region'\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n click: 'onClick'\r\n };\r\n }\r\n\r\n private onClick(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n private onClickShowMoreTags(): void {\r\n Radio.channel(this.options.channelName).trigger('resize:preview');\r\n }\r\n\r\n private showTags(): boolean {\r\n return !!(this.model.tags && this.model.tags.length);\r\n }\r\n\r\n private renderDescription(): void {\r\n if (!(this.model && this.model.get('description'))) return;\r\n\r\n const view = new VideoDescriptionComponent({\r\n model: this.model,\r\n highlighter: true,\r\n size: VideoDescriptionTruncationSize.Small,\r\n truncate: true\r\n });\r\n this.showChildView('description', view);\r\n }\r\n\r\n private renderTags(): void {\r\n if (!this.showTags()) return;\r\n\r\n const view = new ExpandableTagListComponent({\r\n collection: this.model.tags,\r\n videoId: this.model.id && this.model.get('id'),\r\n channelName: this.channelName\r\n });\r\n this.showChildView('tags', view);\r\n }\r\n\r\n private renderVideoPreview(): void {\r\n const view = new VideoPreviewComponent({\r\n model: this.model,\r\n webPlayerUrl: this.options.webPlayerUrl,\r\n analyticsOptions: { location: LocationContext.VideoItemPreview }\r\n });\r\n this.showChildView('preview', view);\r\n }\r\n\r\n private getSubtitleLanguage(): string {\r\n if (!(this.model.subtitles && this.model.get('subtitles').length)) return '';\r\n\r\n const languageCodes: string[] = _.uniq(this.model.get('subtitles').map((subtitle: Subtitle) => subtitle.get('language')));\r\n\r\n return _.map(languageCodes, (language: string) => CVLanguages.getFullEnglishName(language)).join(', ');\r\n }\r\n\r\n private getDetails(item: string): string {\r\n if (!(this.model[item] && this.model.get(item).length)) return '';\r\n\r\n const items = this.model.get(item).length;\r\n return items > 1 ? `${items} ${item}` : `${LanguageService.getPhrase(this.lang, 'one')} ${item.slice(0, -1)}`;\r\n }\r\n\r\n public onBeforeRender(): boolean {\r\n if (this.model && this.model.get('dataFetched'))\r\n return true;\r\n\r\n Radio.channel(this.options.collectionViewChannel)\r\n .trigger('fetch:video:with:metadata', this.options.videoId);\r\n\r\n if (!this.model || !this.model.get('dataFetched'))\r\n return false;\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n if (!this.model || !this.model.get('dataFetched'))\r\n return;\r\n\r\n const duration = this.model.get('duration');\r\n\r\n return {\r\n styles,\r\n ratingClass: this.model.rating && VideoDetailsHelper.mapRatingToClass(this.model.rating.get('value')),\r\n showTags: this.showTags(),\r\n description: this.model.get('description'),\r\n duration: duration && DurationHelper.ToDisplayDuration(duration),\r\n chapters: this.getDetails('chapters'),\r\n interactives: this.model.interactives && this.model.get('interactives').length,\r\n subtitles: this.getSubtitleLanguage(),\r\n resources: this.getDetails('resources'),\r\n links: this.getDetails('links'),\r\n externalLink: this.options.externalLink,\r\n openExternalSvg: SvgHelper.getSvg(cvSvgLibrary.NewWindow)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderDescription();\r\n this.renderTags();\r\n this.renderVideoPreview();\r\n }\r\n}\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"columnNames\":\"cv--columnNames--QvhY0\",\"smallSvgContainer\":\"cv--smallSvgContainer--2qax8\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n return \" cursor-pointer\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return \" <div class=\\\"bulk-checkbox-region \"\n + ((stack1 = helpers[\"if\"].call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.bulkPlaceholder : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(4, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\\"></div>\\r\\n\";\n},\"4\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.bulkPlaceholder : stack1), depth0));\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"d-flex justify-content-between align-items-stretch p-3 drag-item \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.videoItem : stack1), depth0))\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.isClickable : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\\">\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.allowBulk : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" <div class=\\\"thumbnail-region d-inline-block \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.thumbnailContainer : stack1), depth0))\n + \"\\\"></div>\\r\\n <div class=\\\"metadata-region d-inline-block px-3 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.metaContainer : stack1), depth0))\n + \"\\\"></div>\\r\\n <div class=\\\"video-actions-region d-inline-block \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.actionsContainer : stack1), depth0))\n + \"\\\"></div>\\r\\n</div>\\r\\n<div class=\\\"video-info-region \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.previewContainer : stack1), depth0))\n + \"\\\"></div>\";\n},\"useData\":true});","import { ObjectHash } from 'backbone';\r\nimport { Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { CommonChannels } from 'libs/common/backbone/constants/CommonChannels';\r\nimport { AnalyticsOptions, WorkflowPhase, UserAction, ClickDescriptor } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport { LazyLoadMinBrowserSupportVersion } from 'shared/constants';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Config } from 'shared/models/Config';\r\nimport { VideoCollectionIdentifier } from 'shared/interfaces';\r\nimport { LazyLoadHelper, RadioChannelHelper } from 'shared/utils';\r\n\r\nimport { VideoSourcesMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoItemComponentHelper } from 'shared/components/video-item/utils/VideoItemComponentHelper';\r\nimport { VideoItemComponentRegion, VideoItemComponentType } from 'shared/components/video-item/utils/VideoItemComponentTypes';\r\n\r\nimport { VideoCollectionSource } from 'apps/library-editor/enums';\r\n\r\nimport VideoItemTemplate from './VideoItem.handlebars';\r\nimport styles from './video-item.scss';\r\n\r\nexport interface VideoItemComponentOptions extends Core.ComponentOptions<Video> {\r\n componentType?: VideoItemComponentType;\r\n videoWithMetadata?: Video;\r\n collectionIdentifier: VideoCollectionIdentifier;\r\n allowBulk?: boolean;\r\n application: string;\r\n config: Config;\r\n sourceMetadataOptions?: VideoSourcesMetadataComponentOptions;\r\n pendingItems?: Core.Collection;\r\n collectionViewChannel: string;\r\n customerHasLocalCache?: boolean;\r\n customerHasExchange?: boolean;\r\n customerHasCustomLibrary?: boolean;\r\n analyticsOptions?: AnalyticsOptions;\r\n videoItemSelector?: string;\r\n videoCollectionSource: VideoCollectionSource;\r\n}\r\n\r\nexport class VideoItemComponent extends Core.Component<Video> {\r\n public options: VideoItemComponentOptions;\r\n public collectionIdentifier: VideoCollectionIdentifier;\r\n public thumbnailLoaded: boolean;\r\n\r\n constructor(options?: VideoItemComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.initViewModel();\r\n\r\n this.listenTo(this.channelName, 'thumbnail:load', this.onThumbnailLoad);\r\n\r\n this.listenTo(this.channelName, 'click:show:preview', this.onClickTogglePreview);\r\n\r\n this.listenTo(this.options.collectionViewChannel, 'close:preview', this.onCloseCollectionPreview);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemComponent';\r\n }\r\n\r\n public get defaults(): ObjectHash {\r\n return {\r\n componentType: VideoItemComponentType.Base,\r\n allowBulk: false\r\n };\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return VideoItemComponentHelper.getBehaviors(this, this.options.componentType);\r\n }\r\n\r\n public get template(): any {\r\n return VideoItemTemplate;\r\n }\r\n\r\n public get channelName(): string {\r\n return RadioChannelHelper.generateUniqueChannelName(this);\r\n }\r\n\r\n public getTypeClassName(): string {\r\n switch (this.options.componentType) {\r\n case VideoItemComponentType.ProcessingVideo:\r\n return styles.processingVideo;\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n public get className(): string {\r\n let className = 'border-bottom';\r\n\r\n if (this.options.allowBulk)\r\n className += ` ${styles.allowBulk}`;\r\n\r\n if (this.options.componentType)\r\n className += ` ${this.getTypeClassName()}`;\r\n\r\n return className;\r\n }\r\n\r\n public get props(): string[] {\r\n return ['collectionIdentifier'];\r\n }\r\n\r\n public get elements(): ObjectHash {\r\n return {\r\n 'drag-selector': '.drag-item',\r\n 'previewContainer': `.${styles.previewContainer}`\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n [VideoItemComponentRegion.Checkbox]: {\r\n replaceElement: true,\r\n el: '.bulk-checkbox-region'\r\n },\r\n [VideoItemComponentRegion.Thumbnail]: '.thumbnail-region',\r\n [VideoItemComponentRegion.Metadata]: '.metadata-region',\r\n [VideoItemComponentRegion.VideoActions]: '.video-actions-region',\r\n [VideoItemComponentRegion.VideoInfo]: '.video-info-region'\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n click: 'onClick'\r\n };\r\n }\r\n\r\n private initViewModel(): void {\r\n this.viewModel = ViewModelService.get(`${this.name}:${this.model.get('id')}`, { previewOpen: false });\r\n }\r\n\r\n private isClickable(): boolean {\r\n return this.options.componentType !== VideoItemComponentType.ProcessingVideo;\r\n }\r\n\r\n private onThumbnailLoad(): void {\r\n this.thumbnailLoaded = true;\r\n }\r\n\r\n public onClick(): void {\r\n if (!this.isClickable())\r\n return;\r\n\r\n this.onClickTogglePreview(false);\r\n }\r\n\r\n public onClickTogglePreview(buttonClicked: boolean = true): void {\r\n Radio.channel(this.options.collectionViewChannel)\r\n .trigger('close:preview', this.cid);\r\n\r\n this.togglePreview(!this.viewModel.get('previewOpen'));\r\n\r\n this.logTogglePreviewAction(buttonClicked);\r\n }\r\n\r\n private onNavigateAway(): void {\r\n this.viewModel.set({ previewOpen: false });\r\n }\r\n\r\n public togglePreview(previewOpen: boolean): void {\r\n this.viewModel.set({ previewOpen });\r\n\r\n if (previewOpen) {\r\n this.setPreviewHeight();\r\n\r\n /**\r\n * On navigate away, set the previewOpen state to false in the view model.\r\n */\r\n this.listenToOnce(CommonChannels.SHELL, Core.EventNames.ROUTE, this.onNavigateAway);\r\n\r\n this.render();\r\n return;\r\n }\r\n\r\n /**\r\n * The preview has been closed so we can stop listening to the navigate event.\r\n */\r\n this.stopListening(Radio.channel(CommonChannels.SHELL), Core.EventNames.ROUTE);\r\n\r\n /**\r\n * Set preview container height to 0.\r\n */\r\n this.getUI('previewContainer').height(0);\r\n\r\n /**\r\n * Wrapping this.render in a setTimeout so that the preview\r\n * closing transition has time to animate.\r\n * This time corresponds to the transition time in video-item.scss\r\n */\r\n window.setTimeout(() => this.render(), 300);\r\n }\r\n\r\n private setPreviewHeight(): void {\r\n /**\r\n * We have to wait until the child view has been rendered into the\r\n * region to change the height otherwise the transition will be missed.\r\n */\r\n this.listenToOnce(this.getRegion(VideoItemComponentRegion.VideoInfo), 'show', () => {\r\n const view = this.getRegion(VideoItemComponentRegion.VideoInfo).currentView;\r\n\r\n this.listenTo(view, 'render', () => {\r\n this.getUI('previewContainer').height(view.$el.outerHeight());\r\n });\r\n\r\n /**\r\n * If the VideoItemPreview is resized, e.g. when expanding tags,\r\n * we need to resize the container el.\r\n */\r\n this.listenTo(this.channelName, 'resize:preview', () => {\r\n window.setTimeout(() => this.getUI('previewContainer').height(view.$el.outerHeight()), 0);\r\n });\r\n\r\n if ((view as any).isRendered())\r\n this.getUI('previewContainer').height(view.$el.outerHeight());\r\n });\r\n }\r\n\r\n private onCloseCollectionPreview(cid: string): void {\r\n if (this.cid === cid || !this.viewModel.get('previewOpen'))\r\n return;\r\n\r\n this.togglePreview(false);\r\n }\r\n\r\n public shouldLazyLoadThumbnail(): boolean {\r\n if (!LazyLoadHelper.isLazyLoadSupported(LazyLoadMinBrowserSupportVersion))\r\n return false;\r\n\r\n return !this.thumbnailLoaded;\r\n }\r\n\r\n private logTogglePreviewAction(buttonClicked: boolean): void {\r\n const analyticsOptions = AnalyticsHelper.mergeOptions(this.options.analyticsOptions, {\r\n actionType: UserAction.Click,\r\n descriptor: ClickDescriptor.TogglePreview,\r\n workflowPhase: WorkflowPhase.Complete\r\n });\r\n\r\n const data = {\r\n buttonClicked,\r\n show: this.viewModel.get('previewOpen')\r\n };\r\n\r\n AnalyticsHelper.logUserAction(data, analyticsOptions);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n allowBulk: this.options.allowBulk,\r\n bulkPlaceholder: this.options.componentType === VideoItemComponentType.ProcessingVideo && this.options.allowBulk,\r\n isClickable: this.isClickable()\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n VideoItemComponentHelper.renderRegions(this, this.options.componentType);\r\n }\r\n\r\n public onAttach(): void {\r\n /**\r\n * If the video collection in which this component exists\r\n * is refreshed while the preview is open, re-open it\r\n * on re-render.\r\n */\r\n if (this.viewModel.get('previewOpen'))\r\n this.togglePreview(true);\r\n }\r\n}\r\n","import { VideoItemComponentType } from 'shared/components/video-item/utils/VideoItemComponentTypes';\r\nimport { VideoItemComponent } from 'shared/components/video-item/VideoItemComponent';\r\nimport { DraggableVideoBehavior } from 'apps/library-editor/behaviors/draggable-video/DraggableVideoBehavior';\r\n\r\nconst draggable = (self: VideoItemComponent) => {\r\n return [{\r\n behaviorClass: DraggableVideoBehavior,\r\n collectionIdentifier: self.options.collectionIdentifier,\r\n model: self.options.model,\r\n selector: 'drag-selector'\r\n }];\r\n};\r\n\r\nexport const VideoItemBehaviors: {[key: string]: (self: VideoItemComponent) => any[]} = {\r\n [VideoItemComponentType.Draggable]: draggable\r\n};","import { Core } from 'libs/common/core';\r\nimport * as _ from 'underscore';\r\n\r\nimport { VideoItemComponentType } from './VideoItemComponentTypes';\r\nimport { VideoItemComponents } from './VideoItemComponents';\r\nimport { VideoItemBehaviors } from 'shared/components/video-item/utils/VideoItemBehaviors';\r\nimport { DevError } from 'libs/common/backbone/errors/DevError';\r\n\r\nconst DEFAULT_TYPE = VideoItemComponentType.Base;\r\n\r\nconst Components = VideoItemComponents;\r\n\r\nexport const VideoItemComponentHelper = {\r\n renderRegions(self: any, type: VideoItemComponentType): void {\r\n _.each(self.regions, (value, key: string) => {\r\n if (Helper.onBeforeRenderRegion(self, type, key))\r\n Helper.renderRegion(self, type, key);\r\n });\r\n },\r\n\r\n onBeforeRenderRegion(self: any, type: VideoItemComponentType, region: string): boolean {\r\n let typeFns = Components.onBeforeRender[type];\r\n\r\n if (!typeFns)\r\n typeFns = Components.onBeforeRender[DEFAULT_TYPE];\r\n\r\n if (!typeFns)\r\n return true;\r\n\r\n const fn = typeFns[region];\r\n\r\n if (!fn)\r\n return true;\r\n\r\n return _.isFunction(fn) ? fn(self) : true;\r\n },\r\n\r\n renderRegion(self: any, type: VideoItemComponentType, region: string): void {\r\n const component = Helper.getComponent(self, type, region);\r\n\r\n self.showChildView(region, component);\r\n },\r\n\r\n getComponent(self: any, type: VideoItemComponentType, region: string): any {\r\n const typeOptions = Components.componentOptions[type];\r\n\r\n if (!typeOptions)\r\n Core.ErrorHelper.throw(\r\n new DevError(`Must define VideoItemComponent type options: ${VideoItemComponentType[type]}.`)\r\n );\r\n\r\n let regionFn = typeOptions[region];\r\n\r\n if (!regionFn)\r\n regionFn = Components.componentOptions[DEFAULT_TYPE][region];\r\n\r\n if (!regionFn)\r\n Core.ErrorHelper.throw(new DevError(`Must define VideoItemComponent region options: ${region}.`));\r\n\r\n const regionOptions = regionFn(self);\r\n\r\n if (!regionOptions.component)\r\n Core.ErrorHelper.throw(new DevError(`Must define component for region: ${region},\r\n in VideoItemComponent type: ${VideoItemComponentType[type]}.`));\r\n\r\n return new regionOptions.component(regionOptions.options || {});\r\n },\r\n\r\n getBehaviors(self: any, type: VideoItemComponentType): any[] {\r\n if (VideoItemBehaviors[type])\r\n return VideoItemBehaviors[type](self);\r\n\r\n return null;\r\n }\r\n};\r\n\r\nconst Helper = VideoItemComponentHelper;","export enum VideoItemComponentType {\r\n Base,\r\n AwaitingReview,\r\n PastReleases,\r\n VideoAccess,\r\n ProcessingVideo,\r\n Draggable,\r\n Search\r\n}\r\n\r\nexport enum VideoItemComponentRegion {\r\n Checkbox = 'checkbox',\r\n Thumbnail = 'thumbnail',\r\n Metadata = 'metadata',\r\n VideoActions = 'videoActions',\r\n VideoInfo = 'videoInfo',\r\n}","import { Actions, AppChannels } from 'shared/constants';\r\n\r\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\r\nimport { ThumbnailComponent, ThumbnailComponentOptions } from 'libs/shared/legacy/components/thumbnail/ThumbnailComponent';\r\nimport { ImageSize } from 'libs/shared/enums/Images';\r\n\r\nimport { CheckboxComponent, CheckboxComponentOptions } from 'shared/components/checkbox/CheckboxComponent';\r\nimport { VideoItemComponent } from 'shared/components/video-item/VideoItemComponent';\r\nimport { VideoItemMetadataComponent, VideoItemMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/base/VideoItemMetadataComponent';\r\nimport { VideoItemVideoAccessMetadataComponent, VideoItemVideoAccessMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-item-video-access-metadata/VideoItemVideoAccessMetadataComponent';\r\nimport { VideoItemProcessingMetadataComponent, VideoItemProcessingMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-item-processing-metadata/VideoItemProcessingMetadataComponent';\r\nimport { VideoItemAwaitingReviewMetadataComponent, VideoItemAwaitingReviewMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-item-awaiting-review-metadata/VideoItemAwaitingReviewMetadataComponent';\r\nimport { VideoItemPastReleasesMetadataComponent, VideoItemPastReleasesMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-item-past-releases-metadata/VideoItemPastReleasesMetadataComponent';\r\nimport { VideoItemSearchMetadataComponent } from 'shared/components/video-item/video-item-metadata/video-item-search-metadata/VideoItemSearchMetadataComponent';\r\nimport { VideoItemActionsComponent, VideoItemActionsComponentOptions } from 'shared/components/video-item/video-item-actions/base/VideoItemActionsComponent';\r\nimport { VideoItemReviewActionsComponent, VideoItemReviewActionsComponentOptions } from 'shared/components/video-item/video-item-actions/video-item-review-actions/VideoItemReviewActionsComponent';\r\nimport { VideoItemVideoAccessActionsComponent, VideoItemVideoAccessActionsComponentOptions } from 'shared/components/video-item/video-item-actions/video-item-video-access-actions/VideoItemVideoAccessActionsComponent';\r\nimport { VideoItemPreviewComponent, VideoItemPreviewComponentOptions } from 'shared/components/video-item-preview/VideoItemPreviewComponent';\r\nimport { VideoItemProcessingActionsComponent, VideoItemProcessingActionsComponentOptions } from 'shared/components/video-item/video-item-actions/video-item-processing-actions/VideoItemProcessingActionsComponent';\r\n\r\nimport styles from 'shared/components/video-item/video-item.scss';\r\n\r\nimport { VideoHelper } from 'shared/utils';\r\n\r\nimport { CheckboxTypes } from 'apps/library-editor/constants';\r\n\r\nimport { VideoItemComponentType, VideoItemComponentRegion } from './VideoItemComponentTypes';\r\n\r\n\r\nconst Types = VideoItemComponentType;\r\nconst Regions = VideoItemComponentRegion;\r\n\r\ninterface VideoItemRegionOptions<T> {\r\n component: any;\r\n options?: T;\r\n}\r\n\r\n// Region Options Functions\r\nconst checkbox = (self: VideoItemComponent): VideoItemRegionOptions<CheckboxComponentOptions> => ({\r\n component: CheckboxComponent,\r\n options: {\r\n className: `d-inline-flex align-items-center mr-3 ${styles.checkboxContainer}`,\r\n checkboxClassName: styles.checkbox,\r\n itemId: self.model.id,\r\n key: self.collectionIdentifier.toString(),\r\n type: CheckboxTypes.VIDEO_LIST\r\n }\r\n});\r\n\r\nconst thumbnail = (self: VideoItemComponent): VideoItemRegionOptions<ThumbnailComponentOptions> => {\r\n return {\r\n component: ThumbnailComponent,\r\n options: {\r\n model: self.model,\r\n lazyload: self.shouldLazyLoadThumbnail(),\r\n thumbnailOptions: {\r\n size: ImageSize.Small\r\n },\r\n appLink: {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.VIDEO_DETAILS,\r\n args: [self.model.id]\r\n },\r\n channelName: self.channelName\r\n }\r\n };\r\n};\r\n\r\nconst linkToOnlineThumbnail = (self: VideoItemComponent): VideoItemRegionOptions<ThumbnailComponentOptions> => {\r\n return {\r\n component: ThumbnailComponent,\r\n options: {\r\n model: self.model,\r\n lazyload: self.shouldLazyLoadThumbnail(),\r\n thumbnailOptions: {\r\n size: ImageSize.Small\r\n },\r\n href: UrlHelper.safeUrlConcat(self.options.config.get('onlineUrl'), `videos/${self.model.id}`),\r\n channelName: self.channelName\r\n }\r\n };\r\n};\r\n\r\nconst baseMetadata = (self: VideoItemComponent): VideoItemRegionOptions<VideoItemMetadataComponentOptions> => ({\r\n component: VideoItemMetadataComponent,\r\n options: {\r\n model: self.model,\r\n sourceMetadataOptions: self.options.sourceMetadataOptions\r\n }\r\n});\r\n\r\nconst videoAccessMetadata = (\r\n self: VideoItemComponent\r\n): VideoItemRegionOptions<VideoItemVideoAccessMetadataComponentOptions> => ({\r\n component: VideoItemVideoAccessMetadataComponent,\r\n options: {\r\n model: self.model,\r\n config: self.options.config,\r\n sourceMetadataOptions: {\r\n showFolder: true\r\n }\r\n }\r\n});\r\n\r\nconst processingMetadata = (\r\n self: VideoItemComponent\r\n): VideoItemRegionOptions<VideoItemProcessingMetadataComponentOptions> => ({\r\n component: VideoItemProcessingMetadataComponent,\r\n options: {\r\n model: self.model,\r\n pendingItems: self.options.pendingItems\r\n }\r\n});\r\n\r\nconst searchMetadata = (self: VideoItemComponent): VideoItemRegionOptions<VideoItemMetadataComponentOptions> => ({\r\n component: VideoItemSearchMetadataComponent,\r\n options: {\r\n model: self.model,\r\n sourceMetadataOptions: {\r\n showFolder: true,\r\n highlight: true\r\n }\r\n }\r\n});\r\n\r\nconst awaitingReviewMetadata = (self: VideoItemComponent):\r\n VideoItemRegionOptions<VideoItemAwaitingReviewMetadataComponentOptions> => ({\r\n component: VideoItemAwaitingReviewMetadataComponent,\r\n options: {\r\n model: self.model,\r\n config: self.options.config\r\n }\r\n});\r\n\r\nconst pastReleasesMetadata = (\r\n self: VideoItemComponent\r\n): VideoItemRegionOptions<VideoItemPastReleasesMetadataComponentOptions> => ({\r\n component: VideoItemPastReleasesMetadataComponent,\r\n options: {\r\n model: self.model,\r\n config: self.options.config\r\n }\r\n});\r\n\r\nconst baseVideoActions = (self: VideoItemComponent): VideoItemRegionOptions<VideoItemActionsComponentOptions> => ({\r\n component: VideoItemActionsComponent,\r\n options: {\r\n model: self.model,\r\n channelName: self.channelName,\r\n previewDisplayed: self.viewModel.get('previewOpen'),\r\n videoActionsOptions: {\r\n model: self.model,\r\n application: self.options.application,\r\n collectionIdentifier: self.options.collectionIdentifier,\r\n customerHasLocalCache: self.options.customerHasLocalCache,\r\n customerHasExchange: self.options.customerHasExchange,\r\n customerHasCustomLibrary: self.options.customerHasCustomLibrary,\r\n analyticsOptions: self.options.analyticsOptions,\r\n config: self.options.config,\r\n collectionSource: self.options.videoCollectionSource\r\n }\r\n }\r\n});\r\n\r\nconst awaitingReviewVideoActions = (\r\n self: VideoItemComponent\r\n): VideoItemRegionOptions<VideoItemReviewActionsComponentOptions> => ({\r\n component: VideoItemReviewActionsComponent,\r\n options: {\r\n model: self.model,\r\n channelName: self.channelName,\r\n previewDisplayed: self.viewModel.get('previewOpen'),\r\n analyticsOptions: self.options.analyticsOptions\r\n }\r\n});\r\n\r\nconst videoAccessVideoActions = (\r\n self: VideoItemComponent\r\n): VideoItemRegionOptions<VideoItemVideoAccessActionsComponentOptions> => ({\r\n component: VideoItemVideoAccessActionsComponent,\r\n options: {\r\n model: self.model,\r\n channelName: self.channelName,\r\n previewDisplayed: self.viewModel.get('previewOpen'),\r\n analyticsOptions: self.options.analyticsOptions\r\n }\r\n});\r\n\r\nconst videoProcessingVideoActions = (\r\n self: VideoItemComponent\r\n): VideoItemRegionOptions<VideoItemProcessingActionsComponentOptions> => ({\r\n component: VideoItemProcessingActionsComponent,\r\n options: {\r\n model: self.model,\r\n pendingItems: self.options.pendingItems,\r\n channelName: self.options.collectionViewChannel,\r\n analyticsOptions: self.options.analyticsOptions\r\n }\r\n});\r\n\r\nconst videoItemPreview = (self: VideoItemComponent): VideoItemRegionOptions<VideoItemPreviewComponentOptions> => {\r\n return {\r\n component: VideoItemPreviewComponent,\r\n options: {\r\n model: self.options.videoWithMetadata,\r\n videoId: self.model.id.toString(),\r\n channelName: self.channelName,\r\n collectionViewChannel: self.options.collectionViewChannel,\r\n webPlayerUrl: self.options.config.get('webPlayerUrl')\r\n }\r\n };\r\n};\r\n\r\nconst linkToOnlineVideoItemPreview\r\n = (self: VideoItemComponent): VideoItemRegionOptions<VideoItemPreviewComponentOptions> => {\r\n return {\r\n component: VideoItemPreviewComponent,\r\n options: {\r\n model: self.options.videoWithMetadata,\r\n videoId: self.model.id.toString(),\r\n channelName: self.channelName,\r\n collectionViewChannel: self.options.collectionViewChannel,\r\n webPlayerUrl: self.options.config.get('webPlayerUrl'),\r\n externalLink: UrlHelper.safeUrlConcat(self.options.config.get('onlineUrl'), `videos/${self.model.id}`),\r\n }\r\n };\r\n };\r\n\r\nconst videoAccessVideoItemPreview = (self: VideoItemComponent):\r\n VideoItemRegionOptions<VideoItemPreviewComponentOptions> => {\r\n return VideoHelper.hasCustomLibrary(self.model)\r\n ? videoItemPreview(self)\r\n : linkToOnlineVideoItemPreview(self);\r\n};\r\n\r\n// onBeforeRender Functions\r\nconst checkboxOnBeforeRender = (self: VideoItemComponent) => !!self.options.allowBulk;\r\n\r\nconst videoInfoOnBeforeRender = (self: VideoItemComponent) => !!self.viewModel.get('previewOpen');\r\n\r\n// Components\r\nexport const VideoItemComponents: { [key: string]: { [type: number]: { [region: string]: (...args: any) => any } }} = {\r\n componentOptions: {\r\n [Types.Base]: {\r\n [Regions.Checkbox]: checkbox,\r\n [Regions.Thumbnail]: thumbnail,\r\n [Regions.Metadata]: baseMetadata,\r\n [Regions.VideoActions]: baseVideoActions,\r\n [Regions.VideoInfo]: videoItemPreview\r\n },\r\n [Types.AwaitingReview]: {\r\n [Regions.Thumbnail]: linkToOnlineThumbnail,\r\n [Regions.Metadata]: awaitingReviewMetadata,\r\n [Regions.VideoActions]: awaitingReviewVideoActions,\r\n [Regions.VideoInfo]: linkToOnlineVideoItemPreview\r\n },\r\n [Types.PastReleases]: {\r\n [Regions.Thumbnail]: linkToOnlineThumbnail,\r\n [Regions.Metadata]: pastReleasesMetadata,\r\n [Regions.VideoInfo]: linkToOnlineVideoItemPreview\r\n },\r\n [Types.VideoAccess]: {\r\n [Regions.VideoActions]: videoAccessVideoActions,\r\n [Regions.Metadata]: videoAccessMetadata,\r\n [Regions.VideoInfo]: videoAccessVideoItemPreview\r\n },\r\n [Types.ProcessingVideo]: {\r\n [Regions.Metadata]: processingMetadata,\r\n [Regions.VideoActions]: videoProcessingVideoActions\r\n },\r\n [Types.Draggable]: {},\r\n [Types.Search]: {\r\n [Regions.Metadata]: searchMetadata\r\n }\r\n },\r\n\r\n onBeforeRender: {\r\n [Types.Base]: {\r\n [Regions.Checkbox]: checkboxOnBeforeRender,\r\n [Regions.VideoInfo]: videoInfoOnBeforeRender\r\n },\r\n [Types.ProcessingVideo]: {\r\n [Regions.Checkbox]: () => false,\r\n [Regions.VideoInfo]: () => false\r\n }\r\n }\r\n};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"hide\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"3\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"show\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"video-actions-region row no-gutters video-item-actions \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.actions : stack1), depth0))\n + \"\\\"></div>\\r\\n<div class=\\\"row no-gutters cursor-pointer video-item-show-preview \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.showPreview : stack1), depth0))\n + \"\\\">\\r\\n <span class=\\\"svg-container\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.previewSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n \"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.previewDisplayed : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \" \"\n + alias3((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(alias4,\"preview\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\r\\n</div>\";\n},\"useData\":true});","import { ObjectHash, Radio } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { VideoActionsComponent, VideoActionsComponentOptions } from 'shared/components/video-actions/VideoActionsComponent';\r\nimport { Video } from 'shared/models/Video';\r\n\r\nimport VideoItemActionsTemplate from './VideoItemActions.hbs';\r\nimport styles from './video-item-actions.scss';\r\n\r\nexport interface VideoItemActionsComponentOptions extends Core.ComponentOptions<Video> {\r\n actionsClassName?: string;\r\n previewDisplayed?: boolean;\r\n videoActionsOptions: VideoActionsComponentOptions;\r\n}\r\n\r\nexport class VideoItemActionsComponent extends Core.Component<Video> {\r\n public options: VideoItemActionsComponentOptions;\r\n\r\n constructor(options: VideoItemActionsComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemActionsComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemActionsTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'd-flex h-100 flex-column align-items-end justify-content-between';\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared._videoItemActions';\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n videoActions: '.video-actions-region'\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n [`click .${styles.showPreview}`]: 'onClickShowPreview'\r\n };\r\n }\r\n\r\n private onClickShowPreview(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n\r\n if (!this.options.channelName)\r\n return;\r\n\r\n Radio.channel(this.options.channelName).trigger('click:show:preview');\r\n }\r\n\r\n private renderVideoActions(): void {\r\n this.showChildView('videoActions', new VideoActionsComponent(this.options.videoActionsOptions));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n previewDisplayed: this.options.previewDisplayed,\r\n previewSvg: SvgHelper.getSvg(cvSvgLibrary.Preview)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderVideoActions();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"actions\":\"cv--actions--34Z19\",\"showPreview\":\"cv--showPreview--cZAmH\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return \" <button class=\\\"btn btn-light retry\\\">\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"retry\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</button>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasError : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" <button class=\\\"btn btn-light cancel\\\">\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(alias2,\"cancel\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</button>\\r\\n</div>\\r\\n\";\n},\"useData\":true});","import { Core } from 'libs/common/core';\r\nimport { ObjectHash, Radio } from 'backbone';\r\n\r\nimport { CurationStatus } from 'libs/shared/enums/CurationStatus';\r\nimport { PendingItemsHelper } from 'libs/shared/apps/upload/utils/PendingItemsHelper';\r\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\r\nimport { CancelProcessingHelper } from 'shared/utils';\r\n\r\nimport VideoItemProcessingActionsTemplate from './VideoItemProcessingActions.hbs';\r\n\r\nexport interface VideoItemProcessingActionsComponentOptions extends Core.ComponentOptions {\r\n pendingItems: Core.Collection;\r\n channelName: string;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nexport class VideoItemProcessingActionsComponent extends Core.Component {\r\n public options: VideoItemProcessingActionsComponentOptions;\r\n private pendingItem: Core.Model;\r\n\r\n constructor(options: VideoItemProcessingActionsComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.bindListeners();\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemProcessingActionsComponent';\r\n }\r\n\r\n public get template(): any {\r\n return VideoItemProcessingActionsTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemProcessingActions';\r\n }\r\n\r\n public get className(): string {\r\n return 'd-flex h-100 flex-column align-items-end justify-content-between';\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .cancel': 'onClickCancel',\r\n 'click .retry': 'onClickRetry'\r\n };\r\n }\r\n\r\n private onClickCancel(): void {\r\n const videoTitle = this.pendingItem.get('video').get('name');\r\n CancelProcessingHelper.generateDialog(\r\n videoTitle, this.options.channelName, 'cancel:pending:item', this.pendingItem\r\n );\r\n }\r\n\r\n private onClickRetry(): void {\r\n const channel = Radio.channel(this.options.channelName);\r\n channel.trigger('retry:pending:item', this.pendingItem);\r\n }\r\n\r\n private bindListeners(): void {\r\n if (this.model.get('status') !== CurationStatus.Processing)\r\n return;\r\n\r\n if (!this.options.pendingItems)\r\n return;\r\n\r\n if (this.pendingItem)\r\n return;\r\n\r\n this.listenTo(this.options.pendingItems, 'update', this.mapPendingItem);\r\n this.mapPendingItem();\r\n }\r\n\r\n private mapPendingItem(): void {\r\n this.pendingItem = this.options.pendingItems.get(this.model.get('id'));\r\n\r\n this.render();\r\n\r\n if (!this.pendingItem)\r\n return;\r\n\r\n this.stopListening(this.options.pendingItems, 'update');\r\n this.listenTo(this.pendingItem, 'change:pendingProcessStatus', this.render);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n hasError: PendingItemsHelper.hasError(this.pendingItem)\r\n };\r\n }\r\n\r\n public onBeforeRender(): boolean {\r\n return !!this.pendingItem;\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"hide\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"3\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"show\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=container.escapeExpression, alias5=container.lambda;\n\n return \"<button class=\\\"approve d-flex btn btn-sm btn-outline-success\\\" type=\\\"button\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"approve\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</button>\\r\\n<a class=\\\"applink-manage-video-access cursor-pointer hover-text-underline py-1\\\">\"\n + ((stack1 = (helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"manageAccess\",{\"name\":\"lang\",\"hash\":{},\"data\":data})) != null ? stack1 : \"\")\n + \"</a> \\r\\n<div class=\\\"row no-gutters cursor-pointer video-item-show-preview \"\n + alias4(alias5(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.showPreview : stack1), depth0))\n + \"\\\"> \\r\\n <span class=\\\"svg-container\\\">\"\n + ((stack1 = alias5(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.previewSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span> \\r\\n \"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.previewDisplayed : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \" \"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"preview\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\r\\n</div> \";\n},\"useData\":true});","import { ObjectHash, Radio } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { Actions, DataServices, AppChannels } from 'shared/constants';\r\nimport { RestrictedVideoDataService } from 'shared/services/RestrictedVideoDataService';\r\nimport { Video } from 'shared/models/Video';\r\nimport { AnalyticsOptions, LocationContext, UserAction, EntityType, OperationDescriptor, WorkflowPhase } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport styles from 'shared/components/video-item/video-item-actions/base/video-item-actions.scss';\r\nimport VideoItemReviewActionsTemplate from './VideoItemReviewActions.hbs';\r\n\r\nexport interface VideoItemReviewActionsComponentOptions extends Core.ComponentOptions<Video> {\r\n previewDisplayed?: boolean;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nexport class VideoItemReviewActionsComponent extends Core.Component<Video> {\r\n public options: VideoItemReviewActionsComponentOptions;\r\n private restrictedVideoDataService: RestrictedVideoDataService;\r\n\r\n constructor(options: VideoItemReviewActionsComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.restrictedVideoDataService = InstanceManager.getInstance(DataServices.RestrictedVideo, this);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemReviewActionsComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemReviewActionsTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemReviewActions';\r\n }\r\n\r\n public get className(): string {\r\n return 'd-flex h-100 flex-column align-items-end';\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .approve': 'onClickApprove',\r\n 'click .applink-manage-video-access': 'onClickManageVideoAccess',\r\n [`click .${styles.showPreview}`]: 'onClickShowPreview'\r\n };\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n '.applink-manage-video-access': {\r\n application: AppChannels.CONTENT_UPDATES,\r\n action: Actions.Shared.MANAGE_VIDEO_ACCESS,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n private onClickApprove(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n\r\n this.restrictedVideoDataService.deleteVideoRestriction(this.model.get('id'));\r\n\r\n this.logApproveAction();\r\n }\r\n\r\n private onClickManageVideoAccess(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n\r\n this.logManageAccessAction();\r\n }\r\n\r\n private onClickShowPreview(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n\r\n if (!this.options.channelName)\r\n return;\r\n\r\n Radio.channel(this.options.channelName).trigger('click:show:preview');\r\n }\r\n\r\n private logApproveAction(): void {\r\n const analyticsOptions = {\r\n location: LocationContext.AwaitingReviewVideoItem,\r\n actionType: UserAction.Approve,\r\n entity: EntityType.Video,\r\n descriptor: OperationDescriptor.Single,\r\n workflowPhase: WorkflowPhase.Complete\r\n };\r\n\r\n const data: ObjectHash = {\r\n id: this.model.get('id')\r\n };\r\n\r\n AnalyticsHelper.logUserAction(data, analyticsOptions);\r\n }\r\n\r\n private logManageAccessAction(): void {\r\n const analyticsOptions = {\r\n location: LocationContext.AwaitingReviewVideoItem,\r\n actionType: UserAction.SetAccess,\r\n entity: EntityType.Video,\r\n workflowPhase: WorkflowPhase.Start\r\n };\r\n\r\n const data = {\r\n id: this.model.get('id')\r\n };\r\n\r\n AnalyticsHelper.logUserAction(data, analyticsOptions);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n previewDisplayed: this.options.previewDisplayed,\r\n previewSvg: SvgHelper.getSvg(cvSvgLibrary.Preview)\r\n };\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"hide\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"3\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"show\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=container.escapeExpression, alias5=container.lambda;\n\n return \"<button class=\\\"applink-manage-video-access d-flex btn btn-sm btn-secondary\\\" type=\\\"button\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"manageAccess\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</button>\\r\\n<div class=\\\"row no-gutters cursor-pointer video-item-show-preview \"\n + alias4(alias5(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.showPreview : stack1), depth0))\n + \"\\\">\\r\\n <span class=\\\"svg-container\\\">\"\n + ((stack1 = alias5(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.previewSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n \"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.previewDisplayed : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \" \"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"preview\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\r\\n</div>\";\n},\"useData\":true});","import { ObjectHash, Radio } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { Actions, AppChannels } from 'shared/constants';\r\nimport { Video } from 'shared/models/Video';\r\nimport { AnalyticsOptions, LocationContext, UserAction, EntityType, WorkflowPhase } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport styles from 'shared/components/video-item/video-item-actions/base/video-item-actions.scss';\r\nimport VideoItemVideoAccessActionsTemplate from './VideoItemVideoAccessActions.hbs';\r\n\r\nexport interface VideoItemVideoAccessActionsComponentOptions extends Core.ComponentOptions<Video> {\r\n previewDisplayed?: boolean;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nexport class VideoItemVideoAccessActionsComponent extends Core.Component {\r\n public options: VideoItemVideoAccessActionsComponentOptions;\r\n\r\n constructor(options: VideoItemVideoAccessActionsComponentOptions) {\r\n super(options);\r\n }\r\n public get name(): string {\r\n return 'VideoItemVideoAccessComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemVideoAccessActionsTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemVideoAccessActions';\r\n }\r\n\r\n public get className(): string {\r\n return 'd-flex h-100 flex-column align-items-end justify-content-between';\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n '.applink-manage-video-access': {\r\n application: AppChannels.VIDEO_ACCESS,\r\n action: Actions.Shared.MANAGE_VIDEO_ACCESS,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .applink-manage-video-access': 'onClickManageVideoAccess',\r\n [`click .${styles.showPreview}`]: 'onClickShowPreview'\r\n };\r\n }\r\n\r\n private onClickManageVideoAccess(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n\r\n this.logAction();\r\n }\r\n\r\n private onClickShowPreview(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n\r\n if (!this.options.channelName)\r\n return;\r\n\r\n Radio.channel(this.options.channelName).trigger('click:show:preview');\r\n }\r\n\r\n private logAction(): void {\r\n const analyticsOptions = {\r\n location: LocationContext.VideoListItem,\r\n actionType: UserAction.SetAccess,\r\n entity: EntityType.Video,\r\n workflowPhase: WorkflowPhase.Start\r\n };\r\n\r\n const data = {\r\n id: this.model.get('id')\r\n };\r\n\r\n AnalyticsHelper.logUserAction(data, analyticsOptions);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n previewDisplayed: this.options.previewDisplayed,\r\n previewSvg: SvgHelper.getSvg(cvSvgLibrary.Preview)\r\n };\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <span class=\\\"d-inline-block ml-1 tool-tip \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.svgContainer : stack1), depth0))\n + \"\\\" title=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.restrictionMessage : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.lockSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"series-region\\\"></div>\\r\\n<a class=\\\"cursor-pointer applink-show-video h6 text-dark\\\">\"\n + container.escapeExpression(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(alias2,{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</a>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasAdminRestriction : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"<div class=\\\"sources-region\\\"></div>\\r\\n<div class=\\\"badges-region\\\"></div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { TooltipBehavior } from 'libs/shared/legacy/behaviors/tooltip/TooltipBehavior';\r\n\r\nimport { Actions, AppChannels } from 'shared/constants';\r\nimport { Video } from 'shared/models/Video';\r\nimport { RestrictedAccessHelper } from 'shared/utils';\r\n\r\nimport { VideoItemBadgesComponent } from 'shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadgesComponent';\r\nimport { VideoSourcesMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoSourcesMetadataComponent } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoItemSeriesComponent } from 'shared/components/video-item/video-item-metadata/video-item-series/VideoItemSeriesComponent';\r\n\r\nimport VideoItemMetadataTemplate from './VideoItemMetadata.hbs';\r\nimport styles from './video-item-metadata.scss';\r\n\r\nexport interface VideoItemMetadataComponentOptions extends Core.ComponentOptions<Video> {\r\n sourceMetadataOptions?: VideoSourcesMetadataComponentOptions;\r\n}\r\n\r\nexport class VideoItemMetadataComponent extends Core.Component<Video> {\r\n public options: VideoItemMetadataComponentOptions;\r\n\r\n public constructor(options: VideoItemMetadataComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:restrictions', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemMetadataComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemMetadataTemplate;\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: TooltipBehavior,\r\n selector: '.tool-tip'\r\n }];\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n '.applink-show-video': {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.VIDEO_DETAILS,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n sources: {\r\n el: '.sources-region',\r\n replaceElement: true\r\n },\r\n badges: {\r\n el: '.badges-region',\r\n replaceElement: true\r\n },\r\n series: {\r\n el: '.series-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n [`click .${styles.svgContainer}`]: 'onClickBadge'\r\n };\r\n }\r\n\r\n private onClickBadge(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n private renderSources(): void {\r\n const options = _.extend({}, { model: this.model }, this.options.sourceMetadataOptions);\r\n this.showChildView('sources', new VideoSourcesMetadataComponent(options));\r\n }\r\n\r\n private renderSeries(): void {\r\n this.showChildView('series', new VideoItemSeriesComponent({\r\n model: this.model,\r\n highlight: this.options.sourceMetadataOptions && !!this.options.sourceMetadataOptions.highlight\r\n }));\r\n }\r\n\r\n private renderBadges(): void {\r\n this.showChildView('badges', new VideoItemBadgesComponent({\r\n model: this.model\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n hasAdminRestriction: RestrictedAccessHelper.hasAdminRestriction(this.model),\r\n restrictionMessage: RestrictedAccessHelper.getRestrictionTooltipMessage(this.model),\r\n lockSvg: SvgHelper.getSvg(cvSvgLibrary.Lock)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderSeries();\r\n this.renderSources();\r\n this.renderBadges();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"lock\":\"cv--lock--25RMJ\",\"svgContainer\":\"cv--svgContainer--1k8KB\"};","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, helper, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \"<div class=\\\"series-region\\\"></div>\\r\\n<a class=\\\"cursor-pointer h6 video-title text-dark\\\" href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.videoUrl : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\">\"\n + alias3(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</a>\\r\\n<a class=\\\"svg-container d-inline-block align-bottom text-muted no-decoration\\\" href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.videoUrl : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.openExternalSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</a>\\r\\n<div class=\\\"badges-region\\\"></div>\";\n},\"useData\":true});","import { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { Config } from 'shared/models/Config';\r\nimport baseStyles from 'shared/components/video-item/video-item-metadata/base/video-item-metadata.scss';\r\nimport { VideoItemBadgesComponent } from 'shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadgesComponent';\r\nimport { VideoItemSeriesComponent } from 'shared/components/video-item/video-item-metadata/video-item-series/VideoItemSeriesComponent';\r\n\r\nimport VideoItemAwaitingReviewMetadataTemplate from './VideoItemAwaitingReviewMetadata.hbs';\r\n\r\nexport interface VideoItemAwaitingReviewMetadataComponentOptions extends Core.ComponentOptions<Video> {\r\n config: Config;\r\n}\r\n\r\nexport class VideoItemAwaitingReviewMetadataComponent extends Core.Component<Video> {\r\n public options: VideoItemAwaitingReviewMetadataComponentOptions;\r\n\r\n public constructor(options: VideoItemAwaitingReviewMetadataComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemAwaitingReviewMetadataComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemAwaitingReviewMetadataTemplate;\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .video-title': 'onClickMetadata',\r\n 'click .svg-container': 'onClickMetadata'\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n badges: {\r\n el: '.badges-region',\r\n replaceElement: true\r\n },\r\n series: {\r\n el: '.series-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n private onClickMetadata(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n private getVideoUrl(): string {\r\n return UrlHelper.safeUrlConcat(this.options.config.get('onlineUrl'), `videos/${this.model.get('id')}`);\r\n }\r\n\r\n private getSeriesUrl(): string {\r\n if (!this.model.series) return;\r\n\r\n return UrlHelper.safeUrlConcat(this.options.config.get('onlineUrl'), `series/${this.model.series.id}`);\r\n }\r\n\r\n private renderBadges(): void {\r\n this.showChildView('badges', new VideoItemBadgesComponent({\r\n model: this.model,\r\n showReviewBadge: true\r\n }));\r\n }\r\n\r\n private renderSeries(): void {\r\n this.showChildView('series', new VideoItemSeriesComponent({\r\n model: this.model,\r\n highlight: false,\r\n seriesUrl: this.getSeriesUrl()\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles: baseStyles,\r\n videoUrl: this.getVideoUrl(),\r\n openExternalSvg: SvgHelper.getSvg(cvSvgLibrary.NewWindow)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderSeries();\r\n this.renderBadges();\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.escapeExpression;\n\n return \" <span class=\\\"badge p-1 \"\n + alias2(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.interactive : stack1), depth0))\n + \"\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"interactive\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</span>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <span class=\\\"badge p-1 tool-tip \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.rating : stack1), depth0))\n + \" \"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.ratingColorClass : stack1), depth0))\n + \"\\\" title=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.rating : depth0)) != null ? stack1.name : stack1), depth0))\n + \"\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.rating : depth0)) != null ? stack1.code : stack1), depth0))\n + \"</span>\\r\\n\";\n},\"5\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda;\n\n return \" <span class=\\\"d-inline-block tool-tip \"\n + container.escapeExpression(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.svgContainer : stack1), depth0))\n + \"\\\" title=\\\"Subtitles\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.closeCaptionSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"7\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda;\n\n return \" <span class=\\\"d-inline-block tool-tip \"\n + container.escapeExpression(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.svgContainer : stack1), depth0))\n + \"\\\" title=\\\"Resources\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.resourcesSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"9\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <span class=\\\"badge p-1 \"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.awaitingReviewBadgeClass : stack1), depth0))\n + \"\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.awaitingReviewMsg : stack1), depth0))\n + \"</span>\\r\\n\";\n},\"11\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <span class=\\\"badge p-1 \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.restrictionBadgeClass : stack1), depth0))\n + \"\\\">\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.restrictionMessage : stack1), depth0))\n + \"</span>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"mt-1 \"\n + container.escapeExpression(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.badgesWrapper : stack1), depth0))\n + \"\\\">\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.interactive : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.rating : depth0)) != null ? stack1.code : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.subtitles : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(5, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.resources : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(7, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.awaitingReviewMsg : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(9, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.restrictionMessage : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(11, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"</div>\";\n},\"useData\":true});","import { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { TooltipBehavior } from 'libs/shared/legacy/behaviors/tooltip/TooltipBehavior';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { RestrictedAccessHelper } from 'shared/utils';\r\n\r\nimport { VideoDetailsHelper } from 'apps/library-editor/utils';\r\n\r\nimport VideoItemBadgesTemplate from './VideoItemBadges.hbs';\r\nimport styles from './video-item-badges.scss';\r\n\r\ninterface VideoItemBadgesComponentOptions extends Core.ComponentOptions<Video> {\r\n showReviewBadge?: boolean;\r\n showRestrictionBadge?: boolean;\r\n}\r\n\r\nexport class VideoItemBadgesComponent extends Core.Component<Video> {\r\n public options: VideoItemBadgesComponentOptions;\r\n\r\n public constructor(options: VideoItemBadgesComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemBadgesComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemBadgesTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemBadges';\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: TooltipBehavior,\r\n selector: '.tool-tip'\r\n }];\r\n }\r\n\r\n public get defaults(): ObjectHash {\r\n return {\r\n showRestrictionBadge: false,\r\n showReviewBadge: false\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click span': 'onClick'\r\n };\r\n }\r\n\r\n private onClick(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n const awaitingReviewMessage = this.options.showReviewBadge &&\r\n RestrictedAccessHelper.getRestrictionTooltipMessage(this.model);\r\n\r\n const restrictionMessage = this.options.showRestrictionBadge &&\r\n RestrictedAccessHelper.getRestrictionTooltipMessage(this.model);\r\n\r\n return {\r\n styles,\r\n interactive: VideoDetailsHelper.isInteractive(this.model),\r\n // subtitles: this.model.subtitles && this.model.get('subtitles').length,\r\n // resources: this.model.resources && this.model.get('resources').length,\r\n subtitles: false,\r\n resources: false,\r\n ratingColorClass: VideoDetailsHelper.mapRatingToClass(this.model.rating.get('value')),\r\n closeCaptionSvg: SvgHelper.getSvg(cvSvgLibrary.CloseCaptionBadge),\r\n resourcesSvg: SvgHelper.getSvg(cvSvgLibrary.Resources),\r\n awaitingReviewMessage,\r\n awaitingReviewBadgeClass: RestrictedAccessHelper.getReviewBadgeClassName(\r\n this.model,\r\n styles.reviewBadge,\r\n styles.urgentReviewBadge\r\n ),\r\n restrictionMessage\r\n };\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"interactive\":\"cv--interactive--37GpR\",\"rating\":\"cv--rating--2lAYT\",\"svgContainer\":\"cv--svgContainer--19ncQ\",\"badgesWrapper\":\"cv--badgesWrapper--26lCi\",\"restrictionBadgeClass\":\"cv--restrictionBadgeClass--UdQeS\",\"reviewBadge\":\"cv--reviewBadge--ExFLF\",\"urgentReviewBadge\":\"cv--urgentReviewBadge--3dcfL\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <span class=\\\"d-inline-block svg-container align-bottom tool-tip \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.lock : stack1), depth0))\n + \"\\\" title=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.restrictionMessage : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.lockSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression, alias4=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"series-region\\\"></div>\\r\\n<a class=\\\"cursor-pointer h6 video-title text-dark\\\" href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.videoUrl : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\">\"\n + alias3(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(alias4,{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</a>\\r\\n<a class=\\\"svg-container d-inline-block align-bottom text-muted no-decoration\\\" href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.videoUrl : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.openExternalSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</a>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias4,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasAdminRestriction : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"<div class=\\\"badges-region\\\"></div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { TooltipBehavior } from 'libs/shared/legacy/behaviors/tooltip/TooltipBehavior';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { Config } from 'shared/models/Config';\r\nimport { RestrictedAccessHelper } from 'shared/utils';\r\n\r\nimport { VideoItemBadgesComponent } from 'shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadgesComponent';\r\nimport baseStyles from 'shared/components/video-item/video-item-metadata/base/video-item-metadata.scss';\r\n\r\nimport VideoItemPastReleasesMetadataTemplate from './VideoItemPastReleasesMetadata.hbs';\r\nimport styles from './video-item-past-releases-metadata.scss';\r\nimport { VideoItemSeriesComponent } from '../video-item-series/VideoItemSeriesComponent';\r\n\r\nexport interface VideoItemPastReleasesMetadataComponentOptions extends Core.ComponentOptions<Video> {\r\n config: Config;\r\n}\r\n\r\nexport class VideoItemPastReleasesMetadataComponent extends Core.Component<Video> {\r\n public options: VideoItemPastReleasesMetadataComponentOptions;\r\n\r\n public constructor(options: VideoItemPastReleasesMetadataComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:restrictions', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemPastReleasesMetadataComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemPastReleasesMetadataTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemPastReleasesMetadata';\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: TooltipBehavior,\r\n selector: '.tool-tip'\r\n }];\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n badges: {\r\n el: '.badges-region',\r\n replaceElement: true\r\n },\r\n series: {\r\n el: '.series-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .video-title': 'onClickMetadata',\r\n [`click .${styles.series}`]: 'onClickMetadata',\r\n 'click .svg-container': 'onClickMetadata'\r\n };\r\n }\r\n\r\n private onClickMetadata(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n private getVideoUrl(): string {\r\n return UrlHelper.safeUrlConcat(this.options.config.get('onlineUrl'), `videos/${this.model.get('id')}`);\r\n }\r\n\r\n private getSeriesUrl(): string {\r\n if (!this.model.series) return;\r\n\r\n return UrlHelper.safeUrlConcat(this.options.config.get('onlineUrl'), `series/${this.model.series.id}`);\r\n }\r\n\r\n private renderBadges(): void {\r\n this.showChildView('badges', new VideoItemBadgesComponent({\r\n model: this.model\r\n }));\r\n }\r\n\r\n private renderSeries(): void {\r\n this.showChildView('series', new VideoItemSeriesComponent({\r\n model: this.model,\r\n highlight: false,\r\n seriesUrl: this.getSeriesUrl()\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles: _.extend({}, baseStyles, styles),\r\n videoUrl: this.getVideoUrl(),\r\n openExternalSvg: SvgHelper.getSvg(cvSvgLibrary.NewWindow),\r\n hasAdminRestriction: RestrictedAccessHelper.hasAdminRestriction(this.model),\r\n restrictionMessage: RestrictedAccessHelper.getRestrictionTooltipMessage(this.model),\r\n lockSvg: SvgHelper.getSvg(cvSvgLibrary.Lock)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderSeries();\r\n this.renderBadges();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"series\":\"cv--series--P3914\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda;\n\n return \" <span class=\\\"d-inline-block align-middle ml-1 \"\n + container.escapeExpression(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.lockSvgContainer : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.lockSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n return \"text-danger\";\n},\"5\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return \" \"\n + container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.status : stack1), depth0))\n + \"\\r\\n\";\n},\"7\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return \" \"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"waiting\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\r\\n\";\n},\"9\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return \" <br><i>\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"anotherAdmin\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</i>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<a class=\\\"applink-show-video h6 text-dark\\\">\"\n + container.escapeExpression(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(alias2,{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</a>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasAdminRestriction : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"<div class=\\\"processing \"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasError : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\\">\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasPendingItem : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(5, data, 0),\"inverse\":container.program(7, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + ((stack1 = helpers.unless.call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasPendingItem : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(9, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"</div>\";\n},\"useData\":true});","import { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { Actions, AppChannels } from 'shared/constants';\r\nimport { Video } from 'shared/models/Video';\r\nimport { CurationStatus } from 'libs/shared/enums/CurationStatus';\r\nimport { PendingItemsHelper } from 'libs/shared/apps/upload/utils/PendingItemsHelper';\r\n\r\nimport VideoItemProcessingMetadataTemplate from './VideoItemProcessingMetadata.hbs';\r\n\r\nexport interface VideoItemProcessingMetadataComponentOptions extends Core.ComponentOptions<Video> {\r\n pendingItems: Core.Collection;\r\n}\r\n\r\nexport class VideoItemProcessingMetadataComponent extends Core.Component<Video> {\r\n public options: VideoItemProcessingMetadataComponentOptions;\r\n private pendingItem: Core.Model;\r\n\r\n constructor(options: VideoItemProcessingMetadataComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.bindListeners();\r\n }\r\n\r\n private bindListeners(): void {\r\n if (this.model.get('status') !== CurationStatus.Processing)\r\n return;\r\n\r\n if (!this.options.pendingItems)\r\n return;\r\n\r\n if (this.pendingItem)\r\n return;\r\n\r\n this.listenTo(this.options.pendingItems, 'update', this.mapPendingItem);\r\n this.mapPendingItem();\r\n }\r\n\r\n public get lang(): string {\r\n return 'shared.videoItemProcessingMetadata';\r\n }\r\n\r\n private mapPendingItem(): void {\r\n this.pendingItem = this.options.pendingItems.get(this.model.get('id'));\r\n\r\n this.render();\r\n\r\n if (!this.pendingItem)\r\n return;\r\n\r\n this.stopListening(this.options.pendingItems, 'update');\r\n this.listenTo(this.pendingItem, 'change:foregroundProgress change:backgroundProgress change:pendingProcessStatus', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemProcessingMetadataComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemProcessingMetadataTemplate;\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n const seriesId = this.model.series ? this.model.series.id : '';\r\n\r\n return {\r\n '.applink-series': {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.FOLDER,\r\n args: [seriesId]\r\n }\r\n };\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n if (!this.pendingItem) {\r\n return {\r\n hasPendingItem: false\r\n };\r\n }\r\n\r\n return {\r\n status: PendingItemsHelper.getStatus(this.pendingItem),\r\n hasError: PendingItemsHelper.hasError(this.pendingItem),\r\n hasPendingItem: true\r\n };\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \" <span class=\\\"d-inline-block ml-1 tool-tip \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.svgContainer : stack1), depth0))\n + \"\\\" title=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.restrictionMessage : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.lockSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1;\n\n return \" <span class=\\\"d-block pt-1\\\">\"\n + ((stack1 = container.lambda(depth0, depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {});\n\n return \"<div class=\\\"series-region\\\"></div>\\r\\n<a class=\\\"cursor-pointer applink-show-video h6 text-dark\\\">\"\n + ((stack1 = container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.name : stack1), depth0)) != null ? stack1 : \"\")\n + \"</a>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasAdminRestriction : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"<div class=\\\"sources-region\\\"></div>\\r\\n<div class=\\\"badges-region\\\"></div>\\r\\n\"\n + ((stack1 = helpers.each.call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.keyPhrases : stack1),{\"name\":\"each\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\");\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { TooltipBehavior } from 'libs/shared/legacy/behaviors/tooltip/TooltipBehavior';\r\n\r\nimport { Actions, AppChannels } from 'shared/constants';\r\nimport { Video } from 'shared/models/Video';\r\nimport { RestrictedAccessHelper, TextHelper } from 'shared/utils';\r\nimport { VideoSourcesMetadataComponent } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoItemBadgesComponent } from 'shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadgesComponent';\r\nimport { VideoItemMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/base/VideoItemMetadataComponent';\r\n\r\nimport styles from '../base/video-item-metadata.scss';\r\nimport VideoItemSearchMetadataTemplate from './VideoItemSearchMetadata.hbs';\r\nimport { VideoItemSeriesComponent } from '../video-item-series/VideoItemSeriesComponent';\r\n\r\nexport class VideoItemSearchMetadataComponent extends Core.Component<Video> {\r\n public options: VideoItemMetadataComponentOptions;\r\n\r\n public constructor(options: VideoItemMetadataComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:restrictions', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemSearchMetadataComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemSearchMetadataTemplate;\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: TooltipBehavior,\r\n selector: '.tool-tip'\r\n }];\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n '.applink-show-video': {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.VIDEO_DETAILS,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n sources: {\r\n el: '.sources-region',\r\n replaceElement: true\r\n },\r\n badges: {\r\n el: '.badges-region',\r\n replaceElement: true\r\n },\r\n series: {\r\n el: '.series-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n click: 'onClick',\r\n [`click ${styles.svgContainer}`]: 'onClickSvg'\r\n };\r\n }\r\n\r\n private onClickSvg(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n private getKeyPhrases(): string[] {\r\n const phrases = TextHelper.extractKeyPhrases(this.model.get('description'), this.model.get('_matchedWords'), 100, 2);\r\n\r\n return phrases.map(p => TextHelper.wordsHighlighter(TextHelper.escapeExpression(p), this.model.get('_matchedWords')));\r\n }\r\n\r\n private renderSources(): void {\r\n const options = _.extend({}, { model: this.model }, this.options.sourceMetadataOptions);\r\n this.showChildView('sources', new VideoSourcesMetadataComponent(options));\r\n }\r\n\r\n private renderSeries(): void {\r\n this.showChildView('series', new VideoItemSeriesComponent({\r\n model: this.model,\r\n highlight: this.options.sourceMetadataOptions && !!this.options.sourceMetadataOptions.highlight\r\n }));\r\n }\r\n\r\n private renderBadges(): void {\r\n this.showChildView('badges', new VideoItemBadgesComponent({\r\n model: this.model\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n name: TextHelper.wordsHighlighter(TextHelper.escapeExpression(this.model.get('name')), this.model.get('_matchedWords')),\r\n keyPhrases: this.getKeyPhrases(),\r\n hasAdminRestriction: RestrictedAccessHelper.hasAdminRestriction(this.model),\r\n restrictionMessage: RestrictedAccessHelper.getRestrictionTooltipMessage(this.model),\r\n lockSvg: SvgHelper.getSvg(cvSvgLibrary.Lock)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderSeries();\r\n this.renderSources();\r\n this.renderBadges();\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \"<a class=\\\"cursor-pointer h6 video-title text-dark\\\" href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.videoUrl : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\">\"\n + alias3(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</a>\\r\\n<a class=\\\"svg-container d-inline-block align-bottom text-muted no-decoration\\\" href=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.videoUrl : stack1), depth0))\n + \"\\\" target=\\\"_blank\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.openExternalSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</a>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=container.propertyIsEnumerable;\n\n return \"<a class=\\\"cursor-pointer applink-show-video h6\\\">\"\n + container.escapeExpression(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</a>\\r\\n\";\n},\"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 \"<div class=\\\"series-region\\\"></div>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.linkToOnline : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \"<span class=\\\"d-inline-block ml-1 tool-tip \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.lock : stack1), depth0))\n + \" \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.svgContainer : stack1), depth0))\n + \"\\\" title=\\\"\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.restrictionMessage : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.lockSvg : stack1), depth0)) != null ? stack1 : \"\")\n + \"</span>\\r\\n<div class=\\\"sources-region\\\"></div>\\r\\n<div class=\\\"badges-region\\\"></div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { TooltipBehavior } from 'libs/shared/legacy/behaviors/tooltip/TooltipBehavior';\r\n\r\nimport { Actions, AppChannels } from 'shared/constants';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Config } from 'shared/models/Config';\r\nimport { VideoItemBadgesComponent } from 'shared/components/video-item/video-item-metadata/video-item-badges/VideoItemBadgesComponent';\r\nimport { VideoSourcesMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoSourcesMetadataComponent } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoItemSeriesComponent } from 'shared/components/video-item/video-item-metadata/video-item-series/VideoItemSeriesComponent';\r\nimport { RestrictedAccessHelper, VideoHelper } from 'shared/utils';\r\n\r\nimport VideoItemVideoAccessMetadataTemplate from './VideoItemVideoAccessMetadata.hbs';\r\nimport styles from '../base/video-item-metadata.scss';\r\n\r\nexport interface VideoItemVideoAccessMetadataComponentOptions extends Core.ComponentOptions<Video> {\r\n sourceMetadataOptions?: VideoSourcesMetadataComponentOptions;\r\n config: Config;\r\n}\r\n\r\nexport class VideoItemVideoAccessMetadataComponent extends Core.Component<Video> {\r\n public options: VideoItemVideoAccessMetadataComponentOptions;\r\n\r\n public constructor(options: VideoItemVideoAccessMetadataComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:restrictions', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemVideoAccessMetadataComponent';\r\n }\r\n\r\n public get template(): string {\r\n return VideoItemVideoAccessMetadataTemplate;\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: TooltipBehavior,\r\n selector: '.tool-tip'\r\n }];\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n if (!VideoHelper.hasCustomLibrary(this.model))\r\n return;\r\n\r\n return {\r\n '.applink-show-video': {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.VIDEO_DETAILS,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n sources: {\r\n el: '.sources-region',\r\n replaceElement: true\r\n },\r\n badges: {\r\n el: '.badges-region',\r\n replaceElement: true\r\n },\r\n series: {\r\n el: '.series-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click': 'onClick',\r\n 'click .video-title': 'onClickMetadata',\r\n [`click .${styles.svgContainer}`]: 'onClickMetadata'\r\n };\r\n }\r\n\r\n private onClickMetadata(e: JQuery.Event): void {\r\n e.stopPropagation();\r\n }\r\n\r\n private getVideoUrl(): string {\r\n return UrlHelper.safeUrlConcat(this.options.config.get('onlineUrl'), `videos/${this.model.get('id')}`);\r\n }\r\n\r\n private renderSources(): void {\r\n if (!VideoHelper.hasCustomLibrary(this.model))\r\n return;\r\n\r\n const options = _.extend({}, { model: this.model }, this.options.sourceMetadataOptions);\r\n this.showChildView('sources', new VideoSourcesMetadataComponent(options));\r\n }\r\n\r\n private renderSeries(): void {\r\n if (!VideoHelper.hasCustomLibrary(this.model))\r\n return;\r\n\r\n this.showChildView('series', new VideoItemSeriesComponent({\r\n model: this.model,\r\n highlight: this.options.sourceMetadataOptions && !!this.options.sourceMetadataOptions.highlight\r\n }));\r\n }\r\n\r\n private renderBadges(): void {\r\n this.showChildView('badges', new VideoItemBadgesComponent({\r\n model: this.model,\r\n showRestrictionBadge: true\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n restrictionMessage: RestrictedAccessHelper.getRestrictionTooltipMessage(this.model),\r\n lockSvg: SvgHelper.getSvg(cvSvgLibrary.Lock),\r\n linkToOnline: !VideoHelper.hasCustomLibrary(this.model),\r\n videoUrl: this.getVideoUrl(),\r\n openExternalSvg: SvgHelper.getSvg(cvSvgLibrary.NewWindow)\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderSeries();\r\n this.renderSources();\r\n this.renderBadges();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"checkboxContainer\":\"cv--checkboxContainer--3BLCF\",\"thumbnailContainer\":\"cv--thumbnailContainer--16jlV\",\"metaContainer\":\"cv--metaContainer--2mMws\",\"actionsContainer\":\"cv--actionsContainer--I31I0\",\"allowBulk\":\"cv--allowBulk--2VkOe\",\"videoItem\":\"cv--videoItem--PoHa-\",\"processingVideo\":\"cv--processingVideo--qFjv2\",\"bulkPlaceholder\":\"cv--bulkPlaceholder--3iAFa\",\"previewContainer\":\"cv--previewContainer--2UBZX\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n return \"<div class=\\\"videos-region\\\"></div>\";\n},\"useData\":true});","import { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { AnalyticsOptions, EntityType, LocationContext } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\nimport { EmptyStateBehavior } from 'libs/shared/legacy/behaviors/empty-state/EmptyStateBehavior';\r\n\r\nimport { VideoCollectionIdentifier } from 'shared/interfaces';\r\nimport { VideoItemComponent, VideoItemComponentOptions } from 'shared/components/video-item/VideoItemComponent';\r\nimport { VideoSourcesMetadataComponentOptions } from 'shared/components/video-item/video-item-metadata/video-sources-metadata/VideoSourcesMetadataComponent';\r\nimport { VideoItemComponentType } from 'shared/components/video-item/utils/VideoItemComponentTypes';\r\nimport { LazyLoadBehavior } from 'shared/behaviors';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Config } from 'shared/models/Config';\r\nimport { CurationStatus } from 'libs/shared/enums/CurationStatus';\r\nimport { EmptyState } from 'shared/enums';\r\nimport { LazyLoadMinBrowserSupportVersion, EmptyStateComponents, EmptyStateOptions } from 'shared/constants';\r\nimport { VideoCollection } from 'shared/collections/VideoCollection';\r\n\r\nimport { VideoCollectionSource } from 'apps/library-editor/enums';\r\n\r\nimport VideoListTemplate from './VideoList.hbs';\r\n\r\ninterface VideoItemComponentCollectionOptions extends Core.ComponentCollectionOptions {\r\n videoItemComponentType: VideoItemComponentType;\r\n videosWithMetadata?: VideoCollection;\r\n allowBulk?: boolean;\r\n collectionIdentifier: VideoCollectionIdentifier;\r\n application: string;\r\n config: Config;\r\n sourceMetadataOptions?: VideoSourcesMetadataComponentOptions;\r\n pendingItems?: Core.Collection;\r\n collectionViewChannel: string;\r\n customerHasLocalCache?: boolean;\r\n customerHasExchange?: boolean;\r\n customerHasCustomLibrary?: boolean;\r\n analyticsOptions?: AnalyticsOptions;\r\n videoCollectionSource: VideoCollectionSource;\r\n}\r\n\r\nclass VideoItemComponentCollection extends Core.ComponentCollection {\r\n public options: VideoItemComponentCollectionOptions;\r\n\r\n constructor(options: VideoItemComponentCollectionOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoItemListComponent';\r\n }\r\n\r\n public get childView(): typeof VideoItemComponent {\r\n return VideoItemComponent;\r\n }\r\n\r\n public get childViewOptions(): ((model: Video) => VideoItemComponentOptions) {\r\n return (model: Video) => {\r\n const isProcessing = model.get('status') === CurationStatus.Processing;\r\n\r\n return {\r\n componentType: isProcessing ? VideoItemComponentType.ProcessingVideo : this.options.videoItemComponentType,\r\n videoWithMetadata: this.options.videosWithMetadata && this.options.videosWithMetadata.get(model.get('id')),\r\n allowBulk: this.options.allowBulk,\r\n collectionIdentifier: this.options.collectionIdentifier,\r\n application: this.options.application,\r\n pendingItems: this.options.pendingItems,\r\n config: this.options.config,\r\n sourceMetadataOptions: this.options.sourceMetadataOptions,\r\n collectionViewChannel: this.options.collectionViewChannel,\r\n customerHasLocalCache: this.options.customerHasLocalCache,\r\n customerHasExchange: this.options.customerHasExchange,\r\n customerHasCustomLibrary: this.options.customerHasCustomLibrary,\r\n analyticsOptions: this.options.analyticsOptions,\r\n videoCollectionSource: this.options.videoCollectionSource\r\n };\r\n };\r\n }\r\n}\r\n\r\ninterface VideoListComponentOptions extends Core.ComponentOptions {\r\n videoItemComponentType?: VideoItemComponentType;\r\n videosWithMetadata?: VideoCollection;\r\n allowBulk?: boolean;\r\n collectionIdentifier: VideoCollectionIdentifier;\r\n application: string;\r\n config: Config;\r\n sourceMetadataOptions?: VideoSourcesMetadataComponentOptions;\r\n pendingItems?: Core.Collection;\r\n emptyStateType?: EmptyState;\r\n emptyStateOptions?: EmptyStateOptions;\r\n supportSiteUrl?: string;\r\n collectionViewChannel: string;\r\n customerHasLocalCache?: boolean;\r\n customerHasExchange?: boolean;\r\n customerHasCustomLibrary?: boolean;\r\n analyticsOptions?: AnalyticsOptions;\r\n videoCollectionSource?: VideoCollectionSource;\r\n}\r\n\r\nexport class VideoListComponent extends Core.Component {\r\n public options: VideoListComponentOptions;\r\n private collectionIdentifier: VideoCollectionIdentifier;\r\n\r\n constructor(options: VideoListComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'VideoListView';\r\n }\r\n\r\n public get className(): string {\r\n return `bg-white`;\r\n }\r\n\r\n public get props(): string[] {\r\n return ['collectionIdentifier'];\r\n }\r\n\r\n public get template(): string {\r\n return VideoListTemplate;\r\n }\r\n\r\n public get defaults(): ObjectHash {\r\n return {\r\n videoItemComponentType: VideoItemComponentType.Base,\r\n allowBulk: false,\r\n emptyState: EmptyState.Default,\r\n videoCollectionSource: VideoCollectionSource.Folder\r\n };\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [\r\n {\r\n behaviorClass: LazyLoadBehavior,\r\n selector: '.lazy-img',\r\n minBrowserSupportVersion: LazyLoadMinBrowserSupportVersion\r\n },\r\n {\r\n behaviorClass: EmptyStateBehavior,\r\n region: 'videos',\r\n type: this.options.emptyStateType,\r\n componentOptions: this.options.emptyStateOptions,\r\n emptyStateComponents: EmptyStateComponents\r\n }\r\n ];\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n videos: '.videos-region'\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n const videoItemComponent = new VideoItemComponentCollection({\r\n collection: this.collection,\r\n videosWithMetadata: this.options.videosWithMetadata,\r\n videoItemComponentType: this.options.videoItemComponentType,\r\n allowBulk: this.options.allowBulk,\r\n collectionIdentifier: this.collectionIdentifier,\r\n application: this.options.application,\r\n pendingItems: this.options.pendingItems,\r\n config: this.options.config,\r\n sourceMetadataOptions: this.options.sourceMetadataOptions,\r\n collectionViewChannel: this.options.collectionViewChannel,\r\n customerHasLocalCache: this.options.customerHasLocalCache,\r\n customerHasExchange: this.options.customerHasExchange,\r\n customerHasCustomLibrary: this.options.customerHasCustomLibrary,\r\n analyticsOptions: AnalyticsHelper.mergeOptions(this.options.analyticsOptions, {\r\n location: LocationContext.VideoListItem, entity: EntityType.Video\r\n }),\r\n videoCollectionSource: this.options.videoCollectionSource\r\n });\r\n\r\n this.showChildView('videos', videoItemComponent);\r\n }\r\n}\r\n"],"sourceRoot":""}