@clickview/library-editor 1.1.21-rc.1 → 1.1.21-rc.2

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 (350) hide show
  1. package/dist/scripts/{bundle-59190acd1d.min.js → bundle-d9f54fa2e3.min.js} +1 -1
  2. package/dist/scripts/bundles.json +1 -1
  3. package/package.json +1 -1
  4. package/dist/css/1.chunk.css.map +0 -1
  5. package/dist/css/10.chunk.css.map +0 -1
  6. package/dist/css/11.chunk.css +0 -137
  7. package/dist/css/11.chunk.css.map +0 -1
  8. package/dist/css/12.chunk.css.map +0 -1
  9. package/dist/css/13.chunk.css.map +0 -1
  10. package/dist/css/14.chunk.css.map +0 -1
  11. package/dist/css/16.chunk.css.map +0 -1
  12. package/dist/css/17.chunk.css.map +0 -1
  13. package/dist/css/18.chunk.css +0 -20
  14. package/dist/css/18.chunk.css.map +0 -1
  15. package/dist/css/2.chunk.css +0 -145
  16. package/dist/css/2.chunk.css.map +0 -1
  17. package/dist/css/21.chunk.css.map +0 -1
  18. package/dist/css/22.chunk.css.map +0 -1
  19. package/dist/css/23.chunk.css.map +0 -1
  20. package/dist/css/25.chunk.css.map +0 -1
  21. package/dist/css/26.chunk.css.map +0 -1
  22. package/dist/css/28.chunk.css.map +0 -1
  23. package/dist/css/29.chunk.css.map +0 -1
  24. package/dist/css/3.chunk.css.map +0 -1
  25. package/dist/css/30.chunk.css.map +0 -1
  26. package/dist/css/31.chunk.css.map +0 -1
  27. package/dist/css/32.chunk.css.map +0 -1
  28. package/dist/css/33.chunk.css +0 -4
  29. package/dist/css/33.chunk.css.map +0 -1
  30. package/dist/css/34.chunk.css +0 -21
  31. package/dist/css/34.chunk.css.map +0 -1
  32. package/dist/css/35.chunk.css +0 -20
  33. package/dist/css/35.chunk.css.map +0 -1
  34. package/dist/css/36.chunk.css.map +0 -1
  35. package/dist/css/37.chunk.css.map +0 -1
  36. package/dist/css/38.chunk.css.map +0 -1
  37. package/dist/css/40.chunk.css.map +0 -1
  38. package/dist/css/41.chunk.css.map +0 -1
  39. package/dist/css/42.chunk.css.map +0 -1
  40. package/dist/css/43.chunk.css.map +0 -1
  41. package/dist/css/44.chunk.css.map +0 -1
  42. package/dist/css/45.chunk.css.map +0 -1
  43. package/dist/css/46.chunk.css.map +0 -1
  44. package/dist/css/47.chunk.css.map +0 -1
  45. package/dist/css/48.chunk.css +0 -2
  46. package/dist/css/48.chunk.css.map +0 -1
  47. package/dist/css/49.chunk.css.map +0 -1
  48. package/dist/css/50.chunk.css.map +0 -1
  49. package/dist/css/51.chunk.css +0 -2
  50. package/dist/css/51.chunk.css.map +0 -1
  51. package/dist/css/52.chunk.css +0 -66
  52. package/dist/css/52.chunk.css.map +0 -1
  53. package/dist/css/55.chunk.css.map +0 -1
  54. package/dist/css/56.chunk.css.map +0 -1
  55. package/dist/css/58.chunk.css.map +0 -1
  56. package/dist/css/59.chunk.css +0 -2
  57. package/dist/css/59.chunk.css.map +0 -1
  58. package/dist/css/6.chunk.css.map +0 -1
  59. package/dist/css/60.chunk.css.map +0 -1
  60. package/dist/css/62.chunk.css +0 -2
  61. package/dist/css/62.chunk.css.map +0 -1
  62. package/dist/css/63.chunk.css +0 -170
  63. package/dist/css/63.chunk.css.map +0 -1
  64. package/dist/css/67.chunk.css +0 -78
  65. package/dist/css/67.chunk.css.map +0 -1
  66. package/dist/css/68.chunk.css +0 -17
  67. package/dist/css/68.chunk.css.map +0 -1
  68. package/dist/css/69.chunk.css +0 -17
  69. package/dist/css/69.chunk.css.map +0 -1
  70. package/dist/css/7.chunk.css.map +0 -1
  71. package/dist/css/70.chunk.css +0 -23
  72. package/dist/css/70.chunk.css.map +0 -1
  73. package/dist/css/71.chunk.css +0 -40
  74. package/dist/css/71.chunk.css.map +0 -1
  75. package/dist/css/72.chunk.css +0 -16
  76. package/dist/css/72.chunk.css.map +0 -1
  77. package/dist/css/73.chunk.css +0 -37
  78. package/dist/css/73.chunk.css.map +0 -1
  79. package/dist/css/74.chunk.css +0 -29
  80. package/dist/css/74.chunk.css.map +0 -1
  81. package/dist/css/75.chunk.css +0 -6
  82. package/dist/css/75.chunk.css.map +0 -1
  83. package/dist/css/76.chunk.css +0 -6
  84. package/dist/css/76.chunk.css.map +0 -1
  85. package/dist/css/8.chunk.css.map +0 -1
  86. package/dist/css/library-editor-app.css.map +0 -1
  87. package/dist/projects/library-editor/src/polyfills.d.ts +0 -2
  88. package/dist/scripts/0-ca679202dc.chunk.js +0 -1
  89. package/dist/scripts/0.chunk.js +0 -1034
  90. package/dist/scripts/0.chunk.js.map +0 -1
  91. package/dist/scripts/1-e99f6a4b40.chunk.js +0 -1
  92. package/dist/scripts/1.chunk.js +0 -442
  93. package/dist/scripts/1.chunk.js.map +0 -1
  94. package/dist/scripts/10-db266215e5.chunk.js +0 -1
  95. package/dist/scripts/10.chunk.js +0 -820
  96. package/dist/scripts/10.chunk.js.map +0 -1
  97. package/dist/scripts/11-51ab13cf04.chunk.js +0 -11
  98. package/dist/scripts/11.chunk.js +0 -4091
  99. package/dist/scripts/11.chunk.js.map +0 -1
  100. package/dist/scripts/12-a8ad430f3a.chunk.js +0 -1
  101. package/dist/scripts/12.chunk.js +0 -555
  102. package/dist/scripts/12.chunk.js.map +0 -1
  103. package/dist/scripts/13-107ba2526f.chunk.js +0 -1
  104. package/dist/scripts/13.chunk.js +0 -373
  105. package/dist/scripts/13.chunk.js.map +0 -1
  106. package/dist/scripts/14-d19ac2872e.chunk.js +0 -1
  107. package/dist/scripts/14.chunk.js +0 -2386
  108. package/dist/scripts/14.chunk.js.map +0 -1
  109. package/dist/scripts/15-979015a718.chunk.js +0 -1
  110. package/dist/scripts/15.chunk.js +0 -314
  111. package/dist/scripts/15.chunk.js.map +0 -1
  112. package/dist/scripts/16-2a8bfb08cb.chunk.js +0 -1
  113. package/dist/scripts/16.chunk.js +0 -1290
  114. package/dist/scripts/16.chunk.js.map +0 -1
  115. package/dist/scripts/17-b7d5d41f7e.chunk.js +0 -1
  116. package/dist/scripts/17.chunk.js +0 -381
  117. package/dist/scripts/17.chunk.js.map +0 -1
  118. package/dist/scripts/18.chunk.js +0 -393
  119. package/dist/scripts/18.chunk.js.map +0 -1
  120. package/dist/scripts/19.chunk.js +0 -364
  121. package/dist/scripts/19.chunk.js.map +0 -1
  122. package/dist/scripts/2-4e0702e404.chunk.js +0 -1
  123. package/dist/scripts/2.chunk.js +0 -519
  124. package/dist/scripts/2.chunk.js.map +0 -1
  125. package/dist/scripts/20-3c3507043d.chunk.js +0 -1
  126. package/dist/scripts/20.chunk.js +0 -317
  127. package/dist/scripts/20.chunk.js.map +0 -1
  128. package/dist/scripts/21-e1b652cbbd.chunk.js +0 -1
  129. package/dist/scripts/21.chunk.js +0 -531
  130. package/dist/scripts/21.chunk.js.map +0 -1
  131. package/dist/scripts/22-6ff4c8acc9.chunk.js +0 -1
  132. package/dist/scripts/22.chunk.js +0 -354
  133. package/dist/scripts/22.chunk.js.map +0 -1
  134. package/dist/scripts/23-84f6d42051.chunk.js +0 -1
  135. package/dist/scripts/23.chunk.js +0 -604
  136. package/dist/scripts/23.chunk.js.map +0 -1
  137. package/dist/scripts/24-71d0e5af84.chunk.js +0 -1
  138. package/dist/scripts/24.chunk.js +0 -318
  139. package/dist/scripts/24.chunk.js.map +0 -1
  140. package/dist/scripts/25-63e55b94d1.chunk.js +0 -1
  141. package/dist/scripts/25.chunk.js +0 -365
  142. package/dist/scripts/25.chunk.js.map +0 -1
  143. package/dist/scripts/26-03148e2beb.chunk.js +0 -1
  144. package/dist/scripts/26.chunk.js +0 -442
  145. package/dist/scripts/26.chunk.js.map +0 -1
  146. package/dist/scripts/27-4c1566e168.chunk.js +0 -1
  147. package/dist/scripts/27.chunk.js +0 -3565
  148. package/dist/scripts/27.chunk.js.map +0 -1
  149. package/dist/scripts/28-8b6147f186.chunk.js +0 -1
  150. package/dist/scripts/28.chunk.js +0 -3173
  151. package/dist/scripts/28.chunk.js.map +0 -1
  152. package/dist/scripts/29-ab744bc76f.chunk.js +0 -1
  153. package/dist/scripts/29.chunk.js +0 -3088
  154. package/dist/scripts/29.chunk.js.map +0 -1
  155. package/dist/scripts/3-948dad23b7.chunk.js +0 -1
  156. package/dist/scripts/3.chunk.js +0 -833
  157. package/dist/scripts/3.chunk.js.map +0 -1
  158. package/dist/scripts/30-ca11897c8c.chunk.js +0 -1
  159. package/dist/scripts/30.chunk.js +0 -1852
  160. package/dist/scripts/30.chunk.js.map +0 -1
  161. package/dist/scripts/31-c52013832c.chunk.js +0 -1
  162. package/dist/scripts/31.chunk.js +0 -958
  163. package/dist/scripts/31.chunk.js.map +0 -1
  164. package/dist/scripts/32-800ff7a3d2.chunk.js +0 -1
  165. package/dist/scripts/32.chunk.js +0 -1235
  166. package/dist/scripts/32.chunk.js.map +0 -1
  167. package/dist/scripts/33-a78c3eebd5.chunk.js +0 -1
  168. package/dist/scripts/33.chunk.js +0 -792
  169. package/dist/scripts/33.chunk.js.map +0 -1
  170. package/dist/scripts/34-3c4c65d69b.chunk.js +0 -1
  171. package/dist/scripts/34.chunk.js +0 -990
  172. package/dist/scripts/34.chunk.js.map +0 -1
  173. package/dist/scripts/35-8f001c740f.chunk.js +0 -1
  174. package/dist/scripts/35.chunk.js +0 -518
  175. package/dist/scripts/35.chunk.js.map +0 -1
  176. package/dist/scripts/36-3aeb2db7b1.chunk.js +0 -1
  177. package/dist/scripts/36.chunk.js +0 -335
  178. package/dist/scripts/36.chunk.js.map +0 -1
  179. package/dist/scripts/37-f837b37da6.chunk.js +0 -1
  180. package/dist/scripts/37.chunk.js +0 -236
  181. package/dist/scripts/37.chunk.js.map +0 -1
  182. package/dist/scripts/38-96a70abc7e.chunk.js +0 -1
  183. package/dist/scripts/38.chunk.js +0 -315
  184. package/dist/scripts/38.chunk.js.map +0 -1
  185. package/dist/scripts/39-2c91ed5792.chunk.js +0 -1
  186. package/dist/scripts/39.chunk.js +0 -116
  187. package/dist/scripts/39.chunk.js.map +0 -1
  188. package/dist/scripts/4-47a1458dff.chunk.js +0 -1
  189. package/dist/scripts/4.chunk.js +0 -335
  190. package/dist/scripts/4.chunk.js.map +0 -1
  191. package/dist/scripts/40-f3651a4572.chunk.js +0 -1
  192. package/dist/scripts/40.chunk.js +0 -1782
  193. package/dist/scripts/40.chunk.js.map +0 -1
  194. package/dist/scripts/41-908d353ede.chunk.js +0 -1
  195. package/dist/scripts/41.chunk.js +0 -2347
  196. package/dist/scripts/41.chunk.js.map +0 -1
  197. package/dist/scripts/42-7de5d85207.chunk.js +0 -1
  198. package/dist/scripts/42.chunk.js +0 -2116
  199. package/dist/scripts/42.chunk.js.map +0 -1
  200. package/dist/scripts/43-f1361f956d.chunk.js +0 -1
  201. package/dist/scripts/43.chunk.js +0 -2243
  202. package/dist/scripts/43.chunk.js.map +0 -1
  203. package/dist/scripts/44-50769e406b.chunk.js +0 -1
  204. package/dist/scripts/44.chunk.js +0 -1024
  205. package/dist/scripts/44.chunk.js.map +0 -1
  206. package/dist/scripts/45-9a434a5bd6.chunk.js +0 -1
  207. package/dist/scripts/45.chunk.js +0 -1065
  208. package/dist/scripts/45.chunk.js.map +0 -1
  209. package/dist/scripts/46-a9ca193eb7.chunk.js +0 -1
  210. package/dist/scripts/46.chunk.js +0 -656
  211. package/dist/scripts/46.chunk.js.map +0 -1
  212. package/dist/scripts/47-a919e008e6.chunk.js +0 -1
  213. package/dist/scripts/47.chunk.js +0 -735
  214. package/dist/scripts/47.chunk.js.map +0 -1
  215. package/dist/scripts/48-8b8ad444c6.chunk.js +0 -1
  216. package/dist/scripts/48.chunk.js +0 -994
  217. package/dist/scripts/48.chunk.js.map +0 -1
  218. package/dist/scripts/49-1060332c94.chunk.js +0 -1
  219. package/dist/scripts/49.chunk.js +0 -759
  220. package/dist/scripts/49.chunk.js.map +0 -1
  221. package/dist/scripts/5-cbac37484e.chunk.js +0 -1
  222. package/dist/scripts/5.chunk.js +0 -15
  223. package/dist/scripts/5.chunk.js.map +0 -1
  224. package/dist/scripts/50-421fc85bef.chunk.js +0 -1
  225. package/dist/scripts/50.chunk.js +0 -528
  226. package/dist/scripts/50.chunk.js.map +0 -1
  227. package/dist/scripts/51-7677f7ff70.chunk.js +0 -1
  228. package/dist/scripts/51.chunk.js +0 -932
  229. package/dist/scripts/51.chunk.js.map +0 -1
  230. package/dist/scripts/52-d4c61c1996.chunk.js +0 -1
  231. package/dist/scripts/52.chunk.js +0 -408
  232. package/dist/scripts/52.chunk.js.map +0 -1
  233. package/dist/scripts/53-8ae575251b.chunk.js +0 -1
  234. package/dist/scripts/53.chunk.js +0 -754
  235. package/dist/scripts/53.chunk.js.map +0 -1
  236. package/dist/scripts/54-6068a4d6c5.chunk.js +0 -1
  237. package/dist/scripts/54.chunk.js +0 -681
  238. package/dist/scripts/54.chunk.js.map +0 -1
  239. package/dist/scripts/55-989847d37e.chunk.js +0 -1
  240. package/dist/scripts/55.chunk.js +0 -645
  241. package/dist/scripts/55.chunk.js.map +0 -1
  242. package/dist/scripts/56-1215f5b596.chunk.js +0 -1
  243. package/dist/scripts/56.chunk.js +0 -346
  244. package/dist/scripts/56.chunk.js.map +0 -1
  245. package/dist/scripts/57-862310acde.chunk.js +0 -1
  246. package/dist/scripts/57.chunk.js +0 -422
  247. package/dist/scripts/57.chunk.js.map +0 -1
  248. package/dist/scripts/58-15786678f5.chunk.js +0 -1
  249. package/dist/scripts/58.chunk.js +0 -437
  250. package/dist/scripts/58.chunk.js.map +0 -1
  251. package/dist/scripts/59-0eaa35b612.chunk.js +0 -1
  252. package/dist/scripts/59.chunk.js +0 -342
  253. package/dist/scripts/59.chunk.js.map +0 -1
  254. package/dist/scripts/6-c9648df42d.chunk.js +0 -1
  255. package/dist/scripts/6.chunk.js +0 -484
  256. package/dist/scripts/6.chunk.js.map +0 -1
  257. package/dist/scripts/60-fd82862934.chunk.js +0 -1
  258. package/dist/scripts/60.chunk.js +0 -254
  259. package/dist/scripts/60.chunk.js.map +0 -1
  260. package/dist/scripts/61-51fca2bf0e.chunk.js +0 -1
  261. package/dist/scripts/61.chunk.js +0 -409
  262. package/dist/scripts/61.chunk.js.map +0 -1
  263. package/dist/scripts/62-2a372f4810.chunk.js +0 -1
  264. package/dist/scripts/62.chunk.js +0 -142
  265. package/dist/scripts/62.chunk.js.map +0 -1
  266. package/dist/scripts/63-3efa945b24.chunk.js +0 -1
  267. package/dist/scripts/63.chunk.js +0 -147
  268. package/dist/scripts/63.chunk.js.map +0 -1
  269. package/dist/scripts/64-eafdec6ee2.chunk.js +0 -1
  270. package/dist/scripts/64.chunk.js +0 -439
  271. package/dist/scripts/64.chunk.js.map +0 -1
  272. package/dist/scripts/65-7de035024e.chunk.js +0 -1
  273. package/dist/scripts/65.chunk.js +0 -582
  274. package/dist/scripts/65.chunk.js.map +0 -1
  275. package/dist/scripts/66-b42ac9bb08.chunk.js +0 -1
  276. package/dist/scripts/66.chunk.js +0 -442
  277. package/dist/scripts/66.chunk.js.map +0 -1
  278. package/dist/scripts/67-07f4863ec4.chunk.js +0 -1
  279. package/dist/scripts/67.chunk.js +0 -295
  280. package/dist/scripts/67.chunk.js.map +0 -1
  281. package/dist/scripts/68-6c49662638.chunk.js +0 -1
  282. package/dist/scripts/68.chunk.js +0 -165
  283. package/dist/scripts/68.chunk.js.map +0 -1
  284. package/dist/scripts/69-30f7b9bd2b.chunk.js +0 -1
  285. package/dist/scripts/69.chunk.js +0 -248
  286. package/dist/scripts/69.chunk.js.map +0 -1
  287. package/dist/scripts/7-06de2dc87e.chunk.js +0 -1
  288. package/dist/scripts/7.chunk.js +0 -309
  289. package/dist/scripts/7.chunk.js.map +0 -1
  290. package/dist/scripts/70-9a7afc7f7c.chunk.js +0 -1
  291. package/dist/scripts/70.chunk.js +0 -207
  292. package/dist/scripts/70.chunk.js.map +0 -1
  293. package/dist/scripts/71-8b092d42ed.chunk.js +0 -1
  294. package/dist/scripts/71.chunk.js +0 -237
  295. package/dist/scripts/71.chunk.js.map +0 -1
  296. package/dist/scripts/72-f1b9669186.chunk.js +0 -1
  297. package/dist/scripts/72.chunk.js +0 -331
  298. package/dist/scripts/72.chunk.js.map +0 -1
  299. package/dist/scripts/73.chunk.js +0 -404
  300. package/dist/scripts/73.chunk.js.map +0 -1
  301. package/dist/scripts/74.chunk.js +0 -301
  302. package/dist/scripts/74.chunk.js.map +0 -1
  303. package/dist/scripts/75.chunk.js +0 -231
  304. package/dist/scripts/75.chunk.js.map +0 -1
  305. package/dist/scripts/76.chunk.js +0 -157
  306. package/dist/scripts/76.chunk.js.map +0 -1
  307. package/dist/scripts/77.chunk.js +0 -307
  308. package/dist/scripts/77.chunk.js.map +0 -1
  309. package/dist/scripts/78.chunk.js +0 -249
  310. package/dist/scripts/78.chunk.js.map +0 -1
  311. package/dist/scripts/79.chunk.js +0 -282
  312. package/dist/scripts/79.chunk.js.map +0 -1
  313. package/dist/scripts/8-7a1c9219fe.chunk.js +0 -1
  314. package/dist/scripts/8.chunk.js +0 -307
  315. package/dist/scripts/8.chunk.js.map +0 -1
  316. package/dist/scripts/80.chunk.js +0 -308
  317. package/dist/scripts/80.chunk.js.map +0 -1
  318. package/dist/scripts/81.chunk.js +0 -366
  319. package/dist/scripts/81.chunk.js.map +0 -1
  320. package/dist/scripts/82.chunk.js +0 -314
  321. package/dist/scripts/82.chunk.js.map +0 -1
  322. package/dist/scripts/83.chunk.js +0 -328
  323. package/dist/scripts/83.chunk.js.map +0 -1
  324. package/dist/scripts/84.chunk.js +0 -313
  325. package/dist/scripts/84.chunk.js.map +0 -1
  326. package/dist/scripts/85.chunk.js +0 -291
  327. package/dist/scripts/85.chunk.js.map +0 -1
  328. package/dist/scripts/86.chunk.js +0 -119
  329. package/dist/scripts/86.chunk.js.map +0 -1
  330. package/dist/scripts/87.chunk.js +0 -219
  331. package/dist/scripts/87.chunk.js.map +0 -1
  332. package/dist/scripts/88.chunk.js +0 -194
  333. package/dist/scripts/88.chunk.js.map +0 -1
  334. package/dist/scripts/89.chunk.js +0 -522
  335. package/dist/scripts/89.chunk.js.map +0 -1
  336. package/dist/scripts/9-5bc6861938.chunk.js +0 -1
  337. package/dist/scripts/9.chunk.js +0 -222
  338. package/dist/scripts/9.chunk.js.map +0 -1
  339. package/dist/scripts/90.chunk.js +0 -337
  340. package/dist/scripts/90.chunk.js.map +0 -1
  341. package/dist/scripts/91.chunk.js +0 -131
  342. package/dist/scripts/91.chunk.js.map +0 -1
  343. package/dist/scripts/92.chunk.js +0 -266
  344. package/dist/scripts/92.chunk.js.map +0 -1
  345. package/dist/scripts/bundle-d83d171bc0.min.js +0 -1
  346. package/dist/scripts/bundle.js +0 -60670
  347. package/dist/scripts/bundle.js.map +0 -1
  348. package/dist/scripts/polyfills-cf8a15183c.min.js +0 -1
  349. package/dist/scripts/polyfills.js +0 -14844
  350. package/dist/scripts/polyfills.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/library-editor/components/folder-select/FolderSelect.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/library-editor/components/folder-select/FolderSelectComponent.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/index.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-actions/UploadActions.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-actions/UploadActionsComponent.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-folder-select/UploadFolderSelect.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-folder-select/UploadFolderSelectComponent.ts","webpack://@clickview/library-editor/./src/apps/upload/components/upload-folder-select/upload-folder-select.scss?d6ec","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-progress/UploadProgress.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-progress/UploadProgressComponent.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-video/TextProgress.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-video/UploadTitle.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-video/UploadVideo.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-video/UploadVideoComponent.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/components/upload-video/UploadVideoComponentCollection.ts","webpack://@clickview/library-editor/./src/apps/upload/components/upload-video/upload-title.scss?ec49","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/views/upload-videos/UploadVideos.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/apps/upload/views/upload-videos/UploadVideosView.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/shared/components/dropdown/DropdownComponentCollection.ts","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/shared/components/tree-dropdown/TreeDropdown.hbs","file://C:/ClickView/front-end/clickview/packages/projects/library-editor/src/shared/components/tree-dropdown/TreeDropdownComponent.ts","webpack://@clickview/library-editor/./src/shared/components/tree-dropdown/tree-dropdown.scss?bcb5"],"names":[],"mappings":"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","file":"scripts/41.chunk.js","sourcesContent":["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=\\\"dropdown-menu-region\\\"></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 { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport { Folder } from 'shared/models/Folder';\r\nimport { Library } from 'shared/models/Library';\r\nimport { FolderCollection } from 'shared/collections/FolderCollection';\r\nimport { FolderTreeHelpers } from 'shared/utils/FolderTreeHelpers';\r\nimport { MasterObjectTypes } from 'shared/enums/MasterObjectTypes';\r\nimport { SelectComponent } from 'shared/components/select/SelectComponent';\r\nimport { CollectionHelpers } from 'shared/utils';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport FolderSelectTemplate from './FolderSelect.hbs';\r\n\r\ninterface FolderSelectComponentOptions extends Core.ComponentOptions {\r\n collection: FolderCollection;\r\n library?: Library;\r\n channelName: string;\r\n currentFolderId?: string;\r\n placeholderText?: string;\r\n currentSelectedMessage?: string;\r\n inputName?: string;\r\n disabled?: boolean;\r\n disableLibraries?: boolean;\r\n disabledFolderIds?: string[];\r\n\r\n /**\r\n * Determines if the + Create new folder\r\n * item will show as the last drop down item\r\n */\r\n canCreateFolder: boolean;\r\n}\r\n\r\nexport class FolderSelectComponent extends Core.Component {\r\n public collection: FolderCollection;\r\n public options: FolderSelectComponentOptions;\r\n\r\n constructor(options: FolderSelectComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.prepareData();\r\n this.bindListeners();\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.folderSelect';\r\n }\r\n\r\n private prepareData(): void {\r\n /**\r\n * Include library in collection if it has been passed in as an option.\r\n */\r\n const collection = this.options.library ? this.options.library.collection : this.collection;\r\n\r\n /**\r\n * Flatten will clone the collection, which means this view will not respond\r\n * if the LibraryDataService updates the folder collection.\r\n */\r\n this.collection = FolderTreeHelpers.flatten(collection as FolderCollection);\r\n CollectionHelpers.setSelected(this.options.currentFolderId, this.collection);\r\n\r\n if (!this.options.canCreateFolder)\r\n return;\r\n\r\n this.collection.add({\r\n name: LanguageService.getPhrase(this.lang, 'createNew'),\r\n eventName: 'create:folder'\r\n });\r\n }\r\n\r\n private bindListeners(): void {\r\n this.listenTo(this.channelName, 'create:folder', this.onClickCreateFolder);\r\n this.listenTo(this.channelName, 'select:option:selected', (model: Folder) => {\r\n const channel = Radio.channel(this.options.channelName);\r\n channel.trigger('folder:selected', model);\r\n });\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 folderTreeKey(): string {\r\n return `folderselect:${this.cid}`;\r\n }\r\n\r\n public get name(): string {\r\n return 'FolderSelectView';\r\n }\r\n\r\n public get className(): string {\r\n return 'position-relative';\r\n }\r\n\r\n public get template(): any {\r\n return FolderSelectTemplate;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n dropdown: {\r\n el: '.dropdown-menu-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public onClickCreateFolder(): void {\r\n const channel = Radio.channel(this.options.channelName);\r\n channel.trigger('create:folder:clicked');\r\n }\r\n\r\n private generatePrefix(): string {\r\n const depth = this.model.get('depth');\r\n\r\n if (!_.isNumber(depth) || this.model.get('hidePrefix'))\r\n return '';\r\n\r\n let prefix = '';\r\n\r\n for (let j = 0; j < depth; j++)\r\n prefix += '&nbsp;&nbsp;';\r\n\r\n\r\n if (depth)\r\n prefix += '- ';\r\n\r\n return prefix;\r\n }\r\n\r\n private getIsOptionDisabledFn(): (model: Folder) => boolean {\r\n const disableLibraries = this.options.disableLibraries;\r\n const disabledFolderIds = this.options.disabledFolderIds;\r\n\r\n /**\r\n * This is intentionally a function and not an arrow function\r\n * so that the context can be set.\r\n */\r\n return function(model: Folder): boolean {\r\n const data = model || this.model;\r\n\r\n if (disableLibraries && data.get('type') === MasterObjectTypes.CustomLibrary)\r\n return true;\r\n\r\n if (disabledFolderIds && _.contains(disabledFolderIds, data.get('id').toString()))\r\n return true;\r\n\r\n return false;\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.showChildView('dropdown', new SelectComponent({\r\n collection: this.collection,\r\n channelName: this.channelName,\r\n childOptions: {\r\n titleProperty: 'name',\r\n eventName: 'select:option:click',\r\n prefixHandler: this.generatePrefix,\r\n currentSelectedMessage: this.options.currentSelectedMessage || LanguageService.getPhrase(this.lang, 'current'),\r\n isDisabled: this.getIsOptionDisabledFn(),\r\n truncateOptionNames: true\r\n },\r\n placeholderText: this.options.placeholderText || LanguageService.getPhrase(this.lang, 'placeholder'),\r\n noOptionsText: LanguageService.getPhrase(this.lang, 'noFolders'),\r\n inputName: this.options.inputName,\r\n disabled: this.collection.length === 0 || this.options.disabled,\r\n analyticsHelper: AnalyticsHelper\r\n }));\r\n }\r\n}","export * from './processing-progress/ProcessProgressComponentCollection';\r\nexport * from './progress-info/ProgressInfoComponent';\r\nexport * from './upload-actions/UploadActionsComponent';\r\nexport * from './upload-folder-select/UploadFolderSelectComponent';\r\nexport * from './upload-progress/UploadProgressComponent';\r\nexport * from './upload-video/UploadVideoComponent';\r\nexport * from './upload-video/UploadVideoComponentCollection';","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable;\n\n return \"<div class=\\\"finish-button-region\\\"></div>\\r\\n<button class=\\\"btn btn-secondary float-right add-more-videos\\\">\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"addMore\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</button>\";\n},\"useData\":true});","import { Radio } from 'backbone';\r\nimport * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { UploadType } from 'libs/shared/apps/upload/services/UploadService';\r\n\r\nimport { FileSelectBehavior } from 'shared/behaviors';\r\nimport { SpinnerSize, SpinnerType } from 'shared/utils';\r\nimport { SpinnerButtonComponent, SpinnerButtonEvents } from 'shared/components/spinner-button/SpinnerButtonComponent';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport UploadActionsTemplate from './UploadActions.hbs';\r\n\r\ninterface UploadActionsComponentOptions extends Core.ComponentOptions {\r\n uploadChannelName: string;\r\n}\r\n\r\nexport class UploadActionsComponent extends Core.Component {\r\n public options: UploadActionsComponentOptions;\r\n\r\n constructor(options: UploadActionsComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.model = ViewModelService.get(`upload:progress:${UploadType.Video}`);\r\n\r\n this.listenTo(this.model, 'change:done', this.render);\r\n\r\n this.listenTo(this.channelName, 'continue', this.onClickContinue);\r\n\r\n this.listenTo(this.options.uploadChannelName, 'start:spinner', this.startSpinner);\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadActionsComponent';\r\n }\r\n\r\n public get lang(): string {\r\n return 'upload.uploadActions';\r\n }\r\n\r\n public get template(): any {\r\n return UploadActionsTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'clearfix my-3';\r\n }\r\n\r\n public get channelName(): string {\r\n return `${this.name}${this.cid}`;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n finishButton: {\r\n el: '.finish-button-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [\r\n {\r\n behaviorClass: FileSelectBehavior,\r\n buttonSelector: '.add-more-videos',\r\n channelName: this.options.uploadChannelName,\r\n acceptMultiple: true,\r\n mimeType: 'video/*'\r\n }\r\n ];\r\n }\r\n\r\n private startSpinner(): void {\r\n const spinnerChannel = Radio.channel(this.channelName);\r\n spinnerChannel.trigger(SpinnerButtonEvents.ShowSpinner);\r\n }\r\n\r\n private onClickContinue(): void {\r\n if (!this.model.get('done')) return;\r\n\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('continue');\r\n }\r\n\r\n public onRender(): void {\r\n this.showChildView('finishButton', new SpinnerButtonComponent({\r\n channelName: this.channelName,\r\n disabled: !this.model.get('done'),\r\n saveEvent: 'continue',\r\n extraButtonClass: 'btn-primary float-right ml-3',\r\n buttonText: LanguageService.getPhrase(this.lang, 'finish'),\r\n spinnerOptions: {\r\n size: SpinnerSize.Small,\r\n type: SpinnerType.Light,\r\n extraClasses: 'mx-auto'\r\n },\r\n tooltip: {\r\n title: this.model.get('done') ? '' : LanguageService.getPhrase(this.lang, 'stillUploading')\r\n }\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;\n\n return \"<span class=\\\"\"\n + container.escapeExpression(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.requiredStar : stack1), depth0))\n + \"\\\">*</span>\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n return \" <div class=\\\"library-select-region form-group col-6\\\"></div>\\r\\n\";\n},\"5\":function(container,depth0,helpers,partials,data) {\n return \"col-6\";\n},\"7\":function(container,depth0,helpers,partials,data) {\n return \"col-12\";\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 \"<h5>\"\n + container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(alias2,\"uploadDestination\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.requiredFields : stack1)) != null ? stack1.uploadDestination : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"</h5>\\r\\n <div class=\\\"container-fluid px-0\\\">\\r\\n <div class=\\\"row\\\">\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasMultipleLibraries : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \" <div class=\\\"folder-select-region form-group \"\n + ((stack1 = helpers[\"if\"].call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.hasMultipleLibraries : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(5, data, 0),\"inverse\":container.program(7, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \"\\\"></div>\\r\\n </div>\\r\\n </div>\\r\\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 { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { LibraryCollection } from 'shared/collections/LibraryCollection';\r\nimport { Library } from 'shared/models/Library';\r\nimport { Folder } from 'shared/models/Folder';\r\nimport { Video } from 'shared/models/Video';\r\nimport { TreeDropdownComponent } from 'shared/components/tree-dropdown/TreeDropdownComponent';\r\nimport { FolderTreeHelpers } from 'shared/utils';\r\n\r\nimport { FolderSelectComponent } from 'apps/library-editor/components/folder-select/FolderSelectComponent';\r\n\r\nimport styles from './upload-folder-select.scss';\r\nimport UploadFolderSelectTemplate from './UploadFolderSelect.hbs';\r\n\r\ninterface UploadFolderSelectComponentOptions extends Core.ComponentOptions {\r\n collection: LibraryCollection;\r\n selectId: string;\r\n model: Video;\r\n channelName: string;\r\n requiredFields?: ObjectHash;\r\n preselectedFolderId?: string;\r\n}\r\n\r\nexport class UploadFolderSelectComponent extends Core.Component {\r\n public collection: LibraryCollection;\r\n public librariesWithoutFolders: LibraryCollection;\r\n public options: UploadFolderSelectComponentOptions;\r\n\r\n constructor(options: UploadFolderSelectComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.librariesWithoutFolders = new LibraryCollection();\r\n this.collection.each(l => this.librariesWithoutFolders.add(l.toFlatJSON()));\r\n\r\n this.listenTo(this.libraryChannelName, 'folder:selected', this.onLibrarySelected);\r\n\r\n this.listenTo(this.channelName, 'folder:selected new:folder:selected', this.onFolderSelected);\r\n this.listenTo(this.channelName, 'create:folder:clicked', this.onCreateFolderClicked);\r\n\r\n if (!this.hasMultipleLibraries() && this.librariesWithoutFolders.first())\r\n this.model.set('libraryId', this.librariesWithoutFolders.first().get('id'));\r\n\r\n const selectedLibrary = this.collection.get(this.model.get('libraryId'));\r\n if (selectedLibrary) {\r\n const selection = FolderTreeHelpers.getSelected(this.folderTreeKey, selectedLibrary.children);\r\n if (this.options.preselectedFolderId && !selection)\r\n this.onFolderSelected(this.options.preselectedFolderId);\r\n }\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadFolderSelectComponent';\r\n }\r\n\r\n public get template(): any {\r\n return UploadFolderSelectTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'upload.uploadFolderSelect';\r\n }\r\n\r\n public get folderTreeKey(): string {\r\n return `folder:tree:${this.model.cid}`;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n librarySelect: '.library-select-region',\r\n folderSelect: '.folder-select-region'\r\n };\r\n }\r\n\r\n private hasMultipleLibraries(): boolean {\r\n return this.librariesWithoutFolders.length > 1;\r\n }\r\n\r\n private get libraryChannelName(): string {\r\n return `${this.channelName}:${this.options.selectId}:libraries`;\r\n }\r\n\r\n public get channelName(): string {\r\n return `${this.name}${this.cid}${this.options.selectId}`;\r\n }\r\n\r\n private onLibrarySelected(library: Library): void {\r\n this.model.set('libraryId', library.get('id'));\r\n this.model.unset('folderId');\r\n this.render();\r\n }\r\n\r\n private onFolderSelected(folder: Folder | string): void {\r\n let folderId = folder;\r\n if (folder instanceof Folder)\r\n folderId = folder.get('id');\r\n\r\n this.model.set('folderId', folderId);\r\n\r\n const folders = this.collection.get(this.model.get('libraryId')).children;\r\n FolderTreeHelpers.setSelected(this.folderTreeKey, folderId, folders);\r\n\r\n this.model.validate();\r\n }\r\n\r\n private onCreateFolderClicked(): void {\r\n const channel = Radio.channel(this.options.channelName);\r\n channel.trigger('show:new:folder', this.model.get('libraryId'), this.channelName);\r\n }\r\n\r\n private renderLibrarySelect(): void {\r\n if (!this.hasMultipleLibraries())\r\n return;\r\n\r\n const librarySelect = new FolderSelectComponent({\r\n collection: this.librariesWithoutFolders,\r\n channelName: this.libraryChannelName,\r\n placeholderText: LanguageService.getPhrase(this.lang, 'selectLibraryPlaceholder'),\r\n currentFolderId: this.model.get('libraryId'),\r\n currentSelectedMessage: LanguageService.getPhrase(this.lang, 'currentLibrary'),\r\n inputName: 'libraryId',\r\n canCreateFolder: false\r\n });\r\n this.showChildView('librarySelect', librarySelect);\r\n }\r\n\r\n private renderFolderSelect(): void {\r\n const libraryId = this.model.get('libraryId');\r\n if (!libraryId)\r\n return;\r\n\r\n const library = this.collection.get(libraryId);\r\n\r\n this.showChildView('folderSelect', new TreeDropdownComponent({\r\n collection: library.children,\r\n channelName: this.channelName,\r\n folderTreeKey: this.folderTreeKey,\r\n canCreateNew: true,\r\n name: 'folderId'\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n hasMultipleLibraries: this.hasMultipleLibraries(),\r\n requiredFields: this.options.requiredFields\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderLibrarySelect();\r\n this.renderFolderSelect();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"requiredStar\":\"cv--requiredStar--3m_pH\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=\"function\", alias5=container.escapeExpression;\n\n return \"<div class=\\\"progress-bar bg-info\\\" style=\\\"width: \"\n + alias5(((helper = (helper = helpers.progress || (depth0 != null ? depth0.progress : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{\"name\":\"progress\",\"hash\":{},\"data\":data}) : helper)))\n + \"%\\\" aria-valuenow=\\\"\"\n + alias5(((helper = (helper = helpers.progress || (depth0 != null ? depth0.progress : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{\"name\":\"progress\",\"hash\":{},\"data\":data}) : helper)))\n + \"\\\" aria-valuemin=\\\"0\\\" aria-valuemax=\\\"100\\\"></div>\";\n},\"useData\":true});","import { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport UploadProgressTemplate from './UploadProgress.hbs';\r\n\r\nexport class UploadProgressComponent extends Core.Component {\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:progress', this.update);\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadProgressComponent';\r\n }\r\n\r\n public get template(): any {\r\n return UploadProgressTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'progress my-3';\r\n }\r\n\r\n public get elements(): ObjectHash {\r\n return {\r\n progressBar: '.progress-bar',\r\n };\r\n }\r\n\r\n private update(): void {\r\n const percentage = this.model.get('progress');\r\n const progressBar = this.getUI('progressBar');\r\n\r\n if (progressBar && progressBar.get(0))\r\n $(progressBar.get(0)).css('width', `${percentage}%`);\r\n }\r\n}","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"uploading\",{\"name\":\"lang\",\"hash\":{\"percentage\":((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.percentage : stack1)},\"data\":data}));\n},\"useData\":true});","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.name : stack1), depth0));\n},\"useData\":true});","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 || {}),\"hideMetadata\",{\"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 || {}),\"addMetadata\",{\"name\":\"lang\",\"hash\":{},\"data\":data}));\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":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=\\\"upload-title-region\\\"></div>\\r\\n<div class=\\\"container-fluid border-bottom\\\">\\r\\n <div class=\\\"row\\\">\\r\\n <div class=\\\"col-4 p-3\\\">\\r\\n <div class=\\\"thumbnail-region\\\"></div>\\r\\n <div class=\\\"upload-progress-region\\\"></div>\\r\\n <div class=\\\"my-3\\\">\\r\\n <h5 class=\\\"\"\n + alias2(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.title : stack1), depth0))\n + \"\\\">\"\n + alias2(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : alias4),(typeof helper === \"function\" ? helper.call(alias3,{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</h5>\\r\\n <div class=\\\"text-progress-region\\\"></div>\\r\\n <button class=\\\"btn btn-secondary cancel-upload\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||alias4).call(alias3,\"cancel\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</button>\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n <div class=\\\"col-8 py-3 pr-3\\\">\\r\\n <div class=\\\"video-details-region\\\"></div>\\r\\n <div class=\\\"folder-select-region\\\"></div>\\r\\n <div class=\\\"additional-info-region\\\"></div>\\r\\n <div class=\\\"production-info-region\\\"></div>\\r\\n </div>\\r\\n </div>\\r\\n</div>\\r\\n<div class=\\\"p-2 text-center\\\">\\r\\n <button class=\\\"add-advanced-metadata btn btn-link\\\">\"\n + ((stack1 = helpers[\"if\"].call(alias3,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.showAdvanced : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\")\n + \"</a>\\r\\n</div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash, Validation } from 'backbone';\r\nimport { Radio } from 'backbone';\r\nimport * as moment from 'moment';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { ThumbnailComponent } from 'libs/shared/legacy/components/thumbnail/ThumbnailComponent';\r\nimport { ImageSize } from 'libs/shared/enums/Images';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { Series } from 'shared/models/Series';\r\nimport { Season } from 'shared/models/Season';\r\nimport { Distributor } from 'shared/models/Distributor';\r\nimport { ProductionCompany } from 'shared/models/ProductionCompany';\r\nimport { Producer } from 'shared/models/Producer';\r\nimport { Director } from 'shared/models/Director';\r\nimport { EditBasicInfoComponent } from 'shared/components/edit-video/edit-basic-info/EditBasicInfoComponent';\r\nimport { EditAdditionalInfoComponent } from 'shared/components/edit-video/edit-additional-info/EditAdditionalInfoComponent';\r\nimport { EditProductionInfoComponent } from 'shared/components/edit-video/edit-production-info/EditProductionInfoComponent';\r\nimport { DialogHelper, CollectionHelpers } from 'shared/utils';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { LibraryCollection } from 'shared/collections/LibraryCollection';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { UploadVideoValidation } from 'apps/library-editor/utils/UploadVideoValidation';\r\nimport { UploadProgressComponent, UploadFolderSelectComponent } from 'apps/upload/components';\r\n\r\nimport UploadVideoTemplate from './UploadVideo.hbs';\r\nimport UploadTitleTemplate from './UploadTitle.hbs';\r\nimport TextProgressTemplate from './TextProgress.hbs';\r\nimport styles from './upload-title.scss';\r\n\r\n/**\r\n * This view exists only so we don't have to re-render the entire\r\n * UploadVideoComponent when the title is changed.\r\n */\r\nclass UploadTitleComponent extends Core.Component {\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:name', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadTitleComponent';\r\n }\r\n\r\n public get template(): any {\r\n return UploadTitleTemplate;\r\n }\r\n\r\n public get tagName(): string {\r\n return 'h3';\r\n }\r\n\r\n public get className(): string {\r\n return `mb-0 border-bottom p-3 ${styles.title}`;\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n name: this.model.get('name') || this.model.get('fileName')\r\n };\r\n }\r\n}\r\n\r\nclass TextProgressComponent extends Core.Component {\r\n public initialize(): void {\r\n this.listenTo(this.model, 'change:progress', this.render);\r\n }\r\n\r\n public get name(): string {\r\n return 'TextProgressComponent';\r\n }\r\n\r\n public get template(): any {\r\n return TextProgressTemplate;\r\n }\r\n\r\n public get lang(): string {\r\n return 'upload.uploadVideo';\r\n }\r\n\r\n public get className(): string {\r\n return ' text-muted';\r\n }\r\n\r\n public get tagName(): string {\r\n return 'p';\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n percentage: Math.round(this.model.get('progress') || 0)\r\n };\r\n }\r\n}\r\n\r\nexport interface UploadVideoComponentOptions extends Core.ComponentOptions {\r\n ratings: RatingCollection;\r\n libraries: LibraryCollection;\r\n hostedLibraries: LibraryCollection;\r\n uploadChannelName: string;\r\n openAdvancedMetadata: boolean;\r\n folderId?: string;\r\n libraryId?: string;\r\n}\r\n\r\nexport class UploadVideoComponent extends Core.Component {\r\n public options: UploadVideoComponentOptions;\r\n public viewModel: Video;\r\n\r\n constructor(options: UploadVideoComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.viewModel = ViewModelService.get<Video>(`upload:${this.model.get('id')}`, {\r\n name: this.model.get('name'),\r\n fileName: this.model.get('name'),\r\n showAdvanced: this.options.openAdvancedMetadata,\r\n rating: this.options.ratings.findWhere({ value: 0 }),\r\n folderId: this.options.folderId,\r\n libraryId: this.options.libraryId,\r\n timeInitialized: moment()\r\n }, {\r\n ctor: Video\r\n });\r\n\r\n this.viewModel.addValidation(UploadVideoValidation);\r\n\r\n // Tap into changes occuring within child components\r\n this.listenTo(this.channelName, 'select:rating', _.partial(this.onAssociationSelected, _, 'rating'));\r\n this.listenTo(this.channelName, 'select:channel', _.partial(this.onAssociationSelected, _, 'channel'));\r\n this.listenTo(this.channelName, 'add:producers', this.onSelectProducer);\r\n this.listenTo(this.channelName, 'add:distributors', this.onSelectDistributor);\r\n this.listenTo(this.channelName, 'add:productionCompanies', this.onSelectProductionCompany);\r\n this.listenTo(this.channelName, 'add:directors', this.onSelectDirector);\r\n this.listenTo(this.channelName, 'select:series', this.onSelectSeries);\r\n this.listenTo(this.channelName, 'add:season', this.onSelectSeason);\r\n\r\n this.listenTo(this.options.uploadChannelName, `invalid:${this.model.get('id')}`, this.scrollTo);\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadVideoComponent';\r\n }\r\n\r\n public get template(): any {\r\n return UploadVideoTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'bg-white mb-3';\r\n }\r\n\r\n public get lang(): string {\r\n return 'upload.uploadVideo';\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .add-advanced-metadata': 'onClickAddAdvancedMetadata',\r\n 'click .cancel-upload': 'onClickCancelUpload'\r\n };\r\n }\r\n\r\n public get channelName(): string {\r\n return `${this.name}${this.cid}`;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n progress: { el: '.upload-progress-region', replaceElement: true },\r\n thumbnail: { el: '.thumbnail-region', replaceElement: true },\r\n uploadTitle: { el: '.upload-title-region', replaceElement: true },\r\n folderSelect: { el: '.folder-select-region', replaceElement: true },\r\n textProgress: { el: '.text-progress-region', replaceElement: true },\r\n videoDetails: { el: '.video-details-region', replaceElement: true },\r\n productionInfo: { el: '.production-info-region', replaceElement: true },\r\n advancedDetails: { el: '.additional-info-region', replaceElement: true },\r\n };\r\n }\r\n\r\n private onClickAddAdvancedMetadata(): void {\r\n this.viewModel.set('showAdvanced', !this.viewModel.get('showAdvanced'));\r\n this.render();\r\n }\r\n\r\n private onClickCancelUpload(): void {\r\n const dialogOptions = {\r\n title: LanguageService.getPhrase(this.lang, 'cancelHeading'),\r\n text: LanguageService.getPhrase(this.lang, 'cancelBody', {\r\n videoTitle: this.model.get('name')\r\n }),\r\n buttons: [{\r\n text: LanguageService.getPhrase(this.lang, 'yes'),\r\n className: 'btn btn-primary',\r\n success: true,\r\n }, {\r\n text: LanguageService.getPhrase(this.lang, 'no'),\r\n className: 'btn btn-link',\r\n close: true,\r\n }],\r\n channelName: this.channelName\r\n };\r\n\r\n const dialog = new DialogHelper(dialogOptions);\r\n const promise = dialog.render();\r\n\r\n promise.done(() => {\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('cancel:upload', this.model.get('id'));\r\n });\r\n }\r\n\r\n private onAssociationSelected(model: ObjectHash, modelType: string): void {\r\n const field = this.viewModel.get(modelType);\r\n\r\n if (field instanceof Core.Collection) {\r\n const existingModels = field.filter(existing => !existing.id || existing.name === model.name);\r\n _.each(existingModels, existing => field.remove(existing));\r\n\r\n this.viewModel.get(modelType).add(model);\r\n } else {\r\n this.viewModel.set(modelType, model);\r\n }\r\n }\r\n\r\n private onSelectSeries(seriesObject: ObjectHash): void {\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n\r\n // Handle the assoc against an existing series\r\n if (seriesObject.id) {\r\n channel.trigger('get:series', seriesObject.id, (series: Series) => {\r\n this.onAssociationSelected(series.toJSON(), 'series');\r\n this.renderAdvancedVideoDetails();\r\n });\r\n return;\r\n }\r\n\r\n if (!seriesObject.name)\r\n return;\r\n\r\n channel.trigger('create:series', seriesObject.name, (newSeries: Series) => {\r\n this.onAssociationSelected(newSeries.toJSON(), 'series');\r\n this.renderAdvancedVideoDetails();\r\n });\r\n }\r\n\r\n private onSelectSeason(season: ObjectHash): void {\r\n if (_.isNull(season)) {\r\n this.viewModel.get('season').clear({ silent: true });\r\n CollectionHelpers.deselectAll(this.viewModel.get('series.seasons'));\r\n this.onAssociationSelected(null, 'season');\r\n this.renderAdvancedVideoDetails();\r\n return;\r\n }\r\n\r\n // If user select an option from the season dropdown\r\n if (season.id) {\r\n CollectionHelpers.setSelected(season.id, this.viewModel.get('series.seasons'));\r\n this.onAssociationSelected(season, 'season');\r\n this.renderAdvancedVideoDetails();\r\n return;\r\n }\r\n\r\n if (!season.number)\r\n return;\r\n\r\n // Creating a new season\r\n const seriesId = this.viewModel.get('series.id');\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('create:season', season, seriesId, (newSeason: Season) => {\r\n this.viewModel.get('series.seasons').add(newSeason.toJSON());\r\n CollectionHelpers.setSelected(newSeason.id, this.viewModel.get('series.seasons'));\r\n\r\n this.onAssociationSelected(newSeason.toJSON(), 'season');\r\n this.renderAdvancedVideoDetails();\r\n });\r\n }\r\n\r\n private onSelectDistributor(distributorObject: ObjectHash): void {\r\n if (distributorObject.id) {\r\n this.onAssociationSelected(distributorObject, 'distributors');\r\n return;\r\n }\r\n\r\n if (!distributorObject.name) return;\r\n\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('create:company', distributorObject.name, (newDistributor: Distributor) => {\r\n this.onAssociationSelected(newDistributor.toJSON(), 'distributors');\r\n });\r\n }\r\n\r\n private onSelectProductionCompany(productionCompanyObject: ObjectHash): void {\r\n if (productionCompanyObject.id) {\r\n this.onAssociationSelected(productionCompanyObject, 'productionCompanies');\r\n return;\r\n }\r\n\r\n if (!productionCompanyObject.name) return;\r\n\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('create:company', productionCompanyObject.name, (newProductionCompany: ProductionCompany) => {\r\n this.onAssociationSelected(newProductionCompany.toJSON(), 'productionCompanies');\r\n });\r\n }\r\n\r\n private onSelectDirector(director: ObjectHash): void {\r\n if (director.id) {\r\n this.onAssociationSelected(director, 'directors');\r\n return;\r\n }\r\n\r\n if (!director.name) return;\r\n\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('create:person', director.name, (newDirector: Director) => {\r\n this.onAssociationSelected(newDirector.toJSON(), 'directors');\r\n });\r\n }\r\n\r\n private onSelectProducer(producer: ObjectHash): void {\r\n if (producer.id) {\r\n this.onAssociationSelected(producer, 'producers');\r\n return;\r\n }\r\n\r\n if (!producer.name) return;\r\n\r\n const channel = Radio.channel(this.options.uploadChannelName);\r\n channel.trigger('create:person', producer.name, (newProducer: Producer) => {\r\n this.onAssociationSelected(newProducer.toJSON(), 'producers');\r\n });\r\n }\r\n\r\n private getRequiredFields(): ObjectHash {\r\n return {\r\n uploadDestination: true\r\n };\r\n }\r\n\r\n private renderTitle(): void {\r\n const titleView = new UploadTitleComponent({ model: this.viewModel });\r\n this.showChildView('uploadTitle', titleView);\r\n }\r\n\r\n private renderThumbnail(): void {\r\n const thumbnailComponent = new ThumbnailComponent({\r\n model: this.viewModel,\r\n thumbnailOptions: { size: ImageSize.Medium }\r\n });\r\n this.showChildView('thumbnail', thumbnailComponent);\r\n }\r\n\r\n private renderProgress(): void {\r\n const progressComponent = new UploadProgressComponent({\r\n model: this.model\r\n });\r\n\r\n this.showChildView('progress', progressComponent);\r\n\r\n const textProgressComponent = new TextProgressComponent({\r\n model: this.model\r\n });\r\n\r\n this.showChildView('textProgress', textProgressComponent);\r\n }\r\n\r\n private renderBasicVideoDetails(): void {\r\n const basicVideoInfo = new EditBasicInfoComponent({\r\n model: this.viewModel,\r\n channelName: this.channelName,\r\n ratings: this.options.ratings,\r\n requiredFields: this.getRequiredFields(),\r\n editable: true\r\n });\r\n this.showChildView('videoDetails', basicVideoInfo);\r\n }\r\n\r\n private renderFolderSelect(): void {\r\n const folderSelect = new UploadFolderSelectComponent({\r\n collection: this.options.libraries,\r\n selectId: this.model.get('id'),\r\n model: this.viewModel,\r\n channelName: this.options.uploadChannelName,\r\n requiredFields: this.getRequiredFields(),\r\n preselectedFolderId: this.options.folderId\r\n });\r\n this.showChildView('folderSelect', folderSelect);\r\n }\r\n\r\n private renderAdvancedVideoDetails(): void {\r\n if (!this.viewModel.get('showAdvanced'))\r\n return;\r\n\r\n const advancedDetails = new EditAdditionalInfoComponent({\r\n channelName: this.channelName,\r\n model: this.viewModel,\r\n libraries: this.options.libraries,\r\n hostedLibraries: this.options.hostedLibraries,\r\n editable: true\r\n });\r\n\r\n const productionInfo = new EditProductionInfoComponent({\r\n channelName: this.channelName,\r\n model: this.viewModel,\r\n editable: true\r\n });\r\n\r\n this.showChildView('advancedDetails', advancedDetails);\r\n this.showChildView('productionInfo', productionInfo);\r\n }\r\n\r\n private scrollTo(): void {\r\n $('html,body').animate({ scrollTop: this.$el.offset().top }, 250);\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n ...this.viewModel.toJSON()\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderTitle();\r\n this.renderThumbnail();\r\n this.renderProgress();\r\n this.renderBasicVideoDetails();\r\n this.renderFolderSelect();\r\n this.renderAdvancedVideoDetails();\r\n\r\n Validation.bind(this, { model: this.viewModel });\r\n }\r\n\r\n public onDestroy(): void {\r\n Validation.unbind(this);\r\n }\r\n}","import * as _ from 'underscore';\r\nimport { Core } from 'libs/common/core';\r\nimport { UploadVideoComponent, UploadVideoComponentOptions } from 'apps/upload/components/upload-video/UploadVideoComponent';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { LibraryCollection } from 'shared/collections/LibraryCollection';\r\n\r\nexport interface UploadVideoComponentCollectionOptions extends Core.ComponentCollectionOptions{\r\n ratings: RatingCollection;\r\n libraries: LibraryCollection;\r\n hostedLibraries: LibraryCollection;\r\n uploadChannelName: string;\r\n folderId?: string;\r\n libraryId?: string;\r\n}\r\n\r\nexport class UploadVideoComponentCollection extends Core.ComponentCollection {\r\n public options: UploadVideoComponentCollectionOptions;\r\n\r\n constructor(options: UploadVideoComponentCollectionOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadVideoComponentCollection';\r\n }\r\n\r\n public get childView(): typeof UploadVideoComponent {\r\n return UploadVideoComponent;\r\n }\r\n\r\n public get childViewOptions(): UploadVideoComponentOptions {\r\n return {\r\n ratings: this.options.ratings,\r\n libraries: this.options.libraries,\r\n hostedLibraries: this.options.hostedLibraries,\r\n uploadChannelName: this.options.uploadChannelName,\r\n folderId: this.options.folderId,\r\n libraryId: this.options.libraryId,\r\n\r\n /**\r\n * Load into open advanced metadata if it's only 1 video\r\n */\r\n openAdvancedMetadata: this.collection.length <= 1\r\n };\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"title\":\"cv--title--2yTdm\"};","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=\\\"top-actions-region\\\"></div>\\r\\n<div class=\\\"videos-region\\\"></div>\\r\\n<div class=\\\"bottom-actions-region\\\"></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 { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { AlertType } from 'libs/common/backbone/services/BaseAlertService';\r\nimport { CommonChannels } from 'libs/common/backbone/constants/CommonChannels';\r\n\r\nimport UploadVideosTemplate from './UploadVideos.hbs';\r\nimport { UploadActionsComponent } from 'apps/upload/components/upload-actions/UploadActionsComponent';\r\nimport { UploadVideoComponentCollection, UploadVideoComponentCollectionOptions } from 'apps/upload/components/upload-video/UploadVideoComponentCollection';\r\nimport { Actions, DataServices, Services, DataChannels, AppChannels, DataPrefixes } from 'shared/constants';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { LibraryCollection } from 'shared/collections/LibraryCollection';\r\nimport { NavLockService } from 'shared/services/NavigationLockService';\r\nimport { ConfigDataServiceHelper } from 'shared/services/ConfigDataService';\r\nimport { AlertService } from 'shared/services/AlertService';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Folder } from 'shared/models/Folder';\r\nimport { Series } from 'shared/models/Series';\r\nimport { Season } from 'shared/models/Season';\r\nimport { Config } from 'shared/models/Config';\r\nimport { UserDataServiceHelper } from 'shared/services/UserDataService';\r\nimport { User } from 'shared/models/User';\r\nimport { VideoUploadDataService } from 'apps/upload/services/VideoUploadDataService';\r\nimport { VideoUploadService } from 'apps/upload/services';\r\nimport { SeriesDataService } from 'apps/library-editor/services/SeriesDataService';\r\nimport { RatingsDataService } from 'apps/library-editor/services/RatingsDataService';\r\nimport { VideoDataService } from 'apps/library-editor/services/VideoDataService';\r\nimport { LibraryDataService, LibraryDataServiceHelper } from 'apps/library-editor/services/LibraryDataService';\r\nimport { CompanyDataService } from 'apps/library-editor/services/CompanyDataService';\r\nimport { PersonDataService } from 'apps/library-editor/services/PersonDataService';\r\nimport { FolderTreeHelpers } from 'shared/utils';\r\nimport { InteractionType } from 'shared/enums';\r\nimport { AnalyticsOptions, WorkflowPhase, OperationDescriptor } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\nimport { UploadEventNames } from 'libs/shared/apps/upload/constants/UploadConstants';\r\nimport { PendingItemsHelper } from 'libs/shared/apps/upload/utils/PendingItemsHelper';\r\nimport { PendingItemsService } from 'apps/upload/services';\r\n\r\ninterface UploadVideosViewOptions extends Core.ViewOptions {\r\n folderId?: string;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nexport class UploadVideosView extends Core.View {\r\n protected options: UploadVideosViewOptions;\r\n\r\n private videoDataService: VideoDataService;\r\n private libraryDataService: LibraryDataService;\r\n private videoUploadService: VideoUploadService;\r\n private videoUploadDataService: VideoUploadDataService;\r\n private seriesDataService: SeriesDataService;\r\n private ratingsDataService: RatingsDataService;\r\n private companyDataService: CompanyDataService;\r\n private personDataService: PersonDataService;\r\n private alertService: AlertService;\r\n private navLockService: NavLockService;\r\n\r\n private setFolderChannel: string;\r\n\r\n private ratings: RatingCollection;\r\n private libraries: LibraryCollection;\r\n private hostedLibraries: LibraryCollection;\r\n private currentUser: User;\r\n private config: Config;\r\n\r\n constructor(options?: UploadVideosViewOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.initServices();\r\n this.initDataListeners();\r\n this.initComponentListeners();\r\n this.initCollectionListeners();\r\n this.initShellListeners();\r\n }\r\n\r\n public get name(): string {\r\n return 'UploadVideosView';\r\n }\r\n\r\n public get title(): string {\r\n return LanguageService.getPhrase(this.lang, 'title');\r\n }\r\n\r\n public get lang(): string {\r\n return 'upload.uploadVideos';\r\n }\r\n\r\n public get template(): any {\r\n return UploadVideosTemplate;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n topActions: {\r\n el: '.top-actions-region',\r\n replaceElement: true\r\n },\r\n bottomActions: {\r\n el: '.bottom-actions-region',\r\n replaceElement: true\r\n },\r\n videos: {\r\n el: '.videos-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public get channelName(): string {\r\n return `${this.name}${this.cid}`;\r\n }\r\n\r\n private initServices(): void {\r\n this.videoDataService = InstanceManager.getInstance(DataServices.Video, this);\r\n this.libraryDataService = InstanceManager.getInstance(DataServices.Library, this);\r\n this.videoUploadService = InstanceManager.getInstance(Services.VideoUpload, this);\r\n this.videoUploadDataService = InstanceManager.getInstance(DataServices.VideoUpload, this);\r\n this.seriesDataService = InstanceManager.getInstance(DataServices.Series, this);\r\n this.ratingsDataService = InstanceManager.getInstance(DataServices.Ratings, this);\r\n this.companyDataService = InstanceManager.getInstance(DataServices.Company, this);\r\n this.personDataService = InstanceManager.getInstance(DataServices.Person, this);\r\n this.alertService = InstanceManager.getInstance(Services.Alerts, this);\r\n this.navLockService = InstanceManager.getInstance(Services.NavLock, this);\r\n }\r\n\r\n private initDataListeners(): void {\r\n this.listenTo(DataChannels.RATINGS, `${DataPrefixes.RATINGS}:sync`, this.render);\r\n this.listenTo(DataChannels.LIBRARY, `hosted:libraries:sync`, this.render);\r\n this.listenTo(DataChannels.LIBRARY, 'folder:created', this.onFolderCreated);\r\n }\r\n\r\n private initComponentListeners(): void {\r\n this.listenTo(this.channelName, 'continue', this.onClickContinue);\r\n this.listenTo(this.channelName, 'cancel:upload', this.cancelUpload);\r\n\r\n this.listenTo(this.channelName, UploadEventNames.FILES_SELECTED, this.onFilesSelected);\r\n\r\n this.listenTo(this.channelName, 'show:new:folder', this.onClickNewFolder);\r\n this.listenTo(this.channelName, 'get:series', this.onSelectSeries);\r\n this.listenTo(this.channelName, 'create:series', this.onCreateSeries);\r\n this.listenTo(this.channelName, 'create:season', this.onCreateSeason);\r\n this.listenTo(this.channelName, 'create:company', this.onCreateCompany);\r\n this.listenTo(this.channelName, 'create:person', this.onCreatePerson);\r\n }\r\n\r\n private initCollectionListeners(): void {\r\n const collection = this.videoUploadService.getCollection();\r\n this.listenTo(collection, 'remove', this.onCollectionChange);\r\n }\r\n\r\n private initShellListeners(): void {\r\n this.listenTo(CommonChannels.SHELL, Core.EventNames.NAV_UNLOCKED_BY_USER, this.onNavigateAway);\r\n }\r\n\r\n private cancelUpload(id: string): void {\r\n // Logging must occur first to ensure we can access the upload model \r\n this.logCancelAction(id);\r\n\r\n this.videoUploadService.cancelUpload(id);\r\n }\r\n\r\n private onNavigateAway(): void {\r\n // Logging must occur first to ensure we can access the upload model \r\n this.logCancelAction();\r\n\r\n this.videoUploadService.cancelAllUploads();\r\n }\r\n\r\n private onCollectionChange(model: Core.Model, collection: Core.Collection): void {\r\n if (collection.length)\r\n return;\r\n\r\n this.navLockService.unlock();\r\n Core.AppLinkHelper.trigger({\r\n application: AppChannels.UPLOAD,\r\n action: Actions.Upload.FILE_SELECTION,\r\n });\r\n }\r\n\r\n private onSelectSeries(id: string, callback: (series: Series) => void): void {\r\n this.seriesDataService.getSeries(id, callback);\r\n }\r\n\r\n private onCreateSeries(name: string, callback: (series: Series) => void): void {\r\n this.seriesDataService.createSeries(name, callback);\r\n }\r\n\r\n private onCreateSeason(season: ObjectHash, seriesId: string, callback: (season: Season) => void): void {\r\n this.seriesDataService.createSeason(season, seriesId, callback);\r\n }\r\n\r\n private onCreateCompany(name: string, callback: (company: any) => void): void {\r\n this.companyDataService.createCompany(name, callback);\r\n }\r\n\r\n private onCreatePerson(name: string, callback: (person: any) => void): void {\r\n this.personDataService.createPerson(name, callback);\r\n }\r\n\r\n private onClickContinue(): void {\r\n const channel = Radio.channel(this.channelName);\r\n const collection = this.videoUploadService.getCollection();\r\n\r\n let firstInvalidModelId: string;\r\n\r\n let isValid = true;\r\n\r\n collection.each((model => {\r\n const viewModel = ViewModelService.get<Video>(`upload:${model.get('id')}`, null, { ctor: Video });\r\n viewModel.validate();\r\n\r\n const viewModelIsValid = viewModel.isValid();\r\n\r\n if (viewModelIsValid === false && !firstInvalidModelId)\r\n firstInvalidModelId = model.id;\r\n\r\n isValid = isValid && viewModelIsValid;\r\n }));\r\n\r\n if (firstInvalidModelId) {\r\n channel.trigger(`invalid:${firstInvalidModelId}`);\r\n }\r\n\r\n if (!isValid)\r\n return;\r\n\r\n channel.trigger('start:spinner');\r\n\r\n const videos: Video[] = [];\r\n\r\n collection.each(model => {\r\n const file = model.get('file');\r\n const viewModel = ViewModelService.get<Video>(`upload:${model.get('id')}`, null, { ctor: Video });\r\n\r\n if (PendingItemsHelper.hasExpired(viewModel, this.config.get('uploadSessionExpiryTime'))) {\r\n this.alertService.createAlert({\r\n heading: LanguageService.getPhrase(this.lang, 'uploadErrorHeading'),\r\n message: LanguageService.getPhrase(this.lang, 'uploadErrorBody', {\r\n videoName: viewModel.get('name')\r\n }),\r\n type: AlertType.Fail\r\n });\r\n\r\n collection.remove(model);\r\n\r\n return;\r\n }\r\n\r\n viewModel.set('fileUrl', (file as any).cvUpload.fileUrl);\r\n viewModel.set('fileSize', (file as any).size);\r\n videos.push(viewModel);\r\n });\r\n\r\n this.videoUploadDataService.completeVideoUploads(\r\n this.currentUser.get('id'),\r\n this.currentUser.get('customerId'),\r\n videos,\r\n () => {\r\n this.navLockService.unlock();\r\n\r\n const pendingItemsService: PendingItemsService = InstanceManager.getInstance(Services.PendingItems);\r\n pendingItemsService.forceFetchPendingItems();\r\n InstanceManager.releaseInstance(Services.PendingItems);\r\n\r\n Core.AppLinkHelper.trigger({\r\n application: AppChannels.UPLOAD,\r\n action: videos.length ? Actions.Upload.UPLOAD_COMPLETE : Actions.Upload.FILE_SELECTION\r\n });\r\n\r\n this.logFinishAction(videos);\r\n\r\n /**\r\n * We clear the video cache because the above api calls will have added\r\n * videos to folders and/or series.\r\n */\r\n this.videoDataService.clearVideoCache();\r\n }\r\n );\r\n }\r\n\r\n private onFilesSelected(files: File[], type?: InteractionType): void {\r\n this.videoUploadService.addFiles(files);\r\n\r\n this.logStartAction(files, type);\r\n }\r\n\r\n private onClickNewFolder(libraryId: string, setFolderChannel: string): void {\r\n this.setFolderChannel = setFolderChannel;\r\n\r\n this.navLockService.unlock();\r\n Core.AppLinkHelper.trigger({\r\n application: AppChannels.UPLOAD,\r\n action: Actions.Shared.NEW_FOLDER,\r\n args: [libraryId]\r\n });\r\n this.lockNav();\r\n }\r\n\r\n private onFolderCreated(folder: Folder): void {\r\n if (!this.setFolderChannel)\r\n return;\r\n\r\n const channel = Radio.channel(this.setFolderChannel);\r\n channel.trigger('new:folder:selected', folder);\r\n\r\n this.render();\r\n }\r\n\r\n private logStartAction(files: File[], type: InteractionType): void {\r\n const options = AnalyticsHelper.mergeOptions(this.options.analyticsOptions, {\r\n workflowPhase: WorkflowPhase.Start,\r\n descriptor: AnalyticsHelper.mapInteractionType(type)\r\n });\r\n\r\n AnalyticsHelper.logUserAction(files, options);\r\n }\r\n\r\n private logCancelAction(id?: string): void {\r\n const currentUploads = this.videoUploadService.getCollection();\r\n\r\n if (!currentUploads.length)\r\n return;\r\n\r\n // It's only possible to cancel one upload or all of them from a single action\r\n const data = id ? currentUploads.get(id) : currentUploads;\r\n\r\n const options = AnalyticsHelper.mergeOptions(this.options.analyticsOptions, {\r\n workflowPhase: WorkflowPhase.Discard,\r\n descriptor: id ? OperationDescriptor.Single : OperationDescriptor.All\r\n });\r\n\r\n // Need to call toJSON as the event will be emitted on next tick, after the\r\n // the current uploads collection has been modified.\r\n AnalyticsHelper.logUserAction(data.toJSON(), options);\r\n }\r\n\r\n private logFinishAction(videos: Video[]): void {\r\n if (!videos.length)\r\n return;\r\n\r\n const data = _.map(videos, v => v.toJSON());\r\n\r\n const options = AnalyticsHelper.mergeOptions(this.options.analyticsOptions, {\r\n workflowPhase: WorkflowPhase.Complete,\r\n });\r\n\r\n AnalyticsHelper.logUserAction(data, options);\r\n }\r\n\r\n private fetchData(): void {\r\n this.ratings = this.ratingsDataService.getAllRatings();\r\n this.hostedLibraries = this.libraryDataService.getLibraries();\r\n }\r\n\r\n private renderUploadActions(): void {\r\n this.showChildView('topActions', new UploadActionsComponent({\r\n uploadChannelName: this.channelName\r\n }));\r\n this.showChildView('bottomActions', new UploadActionsComponent({\r\n uploadChannelName: this.channelName\r\n }));\r\n }\r\n\r\n private renderVideos(): void {\r\n const options: UploadVideoComponentCollectionOptions = {\r\n collection: this.videoUploadService.getCollection(),\r\n ratings: this.ratings,\r\n libraries: this.libraries,\r\n hostedLibraries: this.hostedLibraries,\r\n uploadChannelName: this.channelName,\r\n };\r\n\r\n if (this.options.folderId) {\r\n const library = FolderTreeHelpers.getLibrary(this.options.folderId, this.libraries);\r\n\r\n if (library) {\r\n options.folderId = this.options.folderId;\r\n options.libraryId = library.get('id');\r\n }\r\n }\r\n\r\n const videosComponentCollection = new UploadVideoComponentCollection(options);\r\n\r\n this.showChildView('videos', videosComponentCollection);\r\n }\r\n\r\n private lockNav(): void {\r\n this.navLockService.lock({\r\n title: LanguageService.getPhrase(this.lang, 'navLockHeading'),\r\n text: LanguageService.getPhrase(this.lang, 'navLockBody')\r\n });\r\n }\r\n\r\n public get requiredResources(): Core.RequiredResourceHash {\r\n return {\r\n currentUser: UserDataServiceHelper.currentUser,\r\n libraries: LibraryDataServiceHelper.libraries,\r\n config: ConfigDataServiceHelper.config\r\n };\r\n }\r\n\r\n public onBeforeRender(): boolean {\r\n this.fetchData();\r\n return !!this.ratings && !!this.hostedLibraries;\r\n }\r\n\r\n public onRender(): void {\r\n this.lockNav();\r\n\r\n this.renderUploadActions();\r\n this.renderVideos();\r\n }\r\n}","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { DropdownItemComponent } from 'shared/components/dropdown/DropdownItemComponent';\r\n\r\nexport interface DropdownDisplayOptions {\r\n alignment?: string;\r\n extraClasses?: string;\r\n}\r\n\r\nexport interface DropdownAnalyticsHelper {\r\n logUserAction(data: ObjectHash | ObjectHash[], analyticsOptions: any): void;\r\n}\r\n\r\nexport interface DropdownChildOptions {\r\n channelName?: string;\r\n titleProperty?: string;\r\n eventName?: string;\r\n extraClasses?: string;\r\n prefixHandler?: () => string;\r\n currentSelectedMessage?: string;\r\n isDisabled?: (model: Core.Model) => boolean;\r\n getTooltip?: (model: Core.Model) => ObjectHash;\r\n truncateOptionNames?: boolean;\r\n}\r\n\r\nexport interface DropdownComponentCollectionOptions extends Core.ComponentCollectionOptions {\r\n channelName: string;\r\n childOptions?: DropdownChildOptions;\r\n displayOptions?: DropdownDisplayOptions;\r\n analyticsHelper: DropdownAnalyticsHelper;\r\n}\r\n\r\nexport class DropdownComponentCollection extends Core.ComponentCollection {\r\n public options: DropdownComponentCollectionOptions;\r\n\r\n constructor(options?: DropdownComponentCollectionOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'DropdownCollectionComponent';\r\n }\r\n\r\n public get className(): string {\r\n return `dropdown-menu items-viewpart ${this.getExtraClasses(this.options.displayOptions)}`;\r\n }\r\n\r\n public get attributes(): ObjectHash {\r\n return {\r\n 'aria-labelledby': 'dropdownSelector'\r\n };\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.options.channelName, 'center:dropdown', this.centerSelectedItem);\r\n }\r\n\r\n public get childView(): any {\r\n return DropdownItemComponent;\r\n }\r\n\r\n public get childViewOptions(): ObjectHash {\r\n const baseChildOptions: ObjectHash = {\r\n channelName: this.options.channelName,\r\n analyticsHelper: this.options.analyticsHelper\r\n };\r\n\r\n return _.extend(baseChildOptions, this.options.childOptions);\r\n }\r\n\r\n private getExtraClasses(displayOptions: DropdownDisplayOptions = {}): string {\r\n const { alignment = 'left', extraClasses } = displayOptions;\r\n\r\n let className = `dropdown-menu-${alignment}`;\r\n\r\n if (extraClasses)\r\n className = `${className} ${extraClasses}`;\r\n\r\n return className;\r\n }\r\n\r\n private centerSelectedItem(): void {\r\n const active = this.$el.find('.active');\r\n\r\n if (!active.length)\r\n return;\r\n\r\n const halfRatio = 0.5;\r\n const top = this.$el.scrollTop() + active.position().top;\r\n const distance = this.$el.height() * halfRatio + active.height() * halfRatio;\r\n this.$el.scrollTop(top - distance);\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 \" <button class=\\\"create-new btn font-weight-bold rounded-0 w-100 text-left \"\n + alias2(container.lambda(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.customItem : stack1), depth0))\n + \"\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"createNew\",{\"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=container.lambda, alias3=container.escapeExpression;\n\n return \"<button\\r\\n class=\\\"\"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.selectBtn : stack1), depth0))\n + \" custom-select form-control\\\"\\r\\n data-toggle=\\\"dropdown\\\"\\r\\n aria-haspopup=\\\"true\\\"\\r\\n aria-expanded=\\\"false\\\"\\r\\n name=\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.name : stack1), depth0))\n + \"\\r\\n>\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.buttonText : stack1), depth0))\n + \"</button>\\r\\n<div class=\\\"dropdown-menu \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.selector : stack1), depth0))\n + \"\\\">\\r\\n <div class=\\\"selector-region\\\"></div>\\r\\n\"\n + ((stack1 = helpers[\"if\"].call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.canCreateNew : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"</div>\\r\\n<div class=\\\"form-feedback\\\"></div>\";\n},\"useData\":true});","import { ObjectHash, Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { FolderCollection } from 'shared/collections/FolderCollection';\r\nimport { LeftNavComponent } from 'shared/components/left-nav/LeftNavComponent';\r\nimport { FolderTreeHelpers } from 'shared/utils';\r\n\r\nimport TreeDropdownTemplate from './TreeDropdown.hbs';\r\nimport styles from './tree-dropdown.scss';\r\n\r\ninterface TreeDropdownComponentOptions extends Core.ComponentOptions {\r\n folderTreeKey: string;\r\n canCreateNew?: boolean;\r\n disabledIds?: string[];\r\n name?: string;\r\n}\r\n\r\nexport class TreeDropdownComponent extends Core.Component {\r\n public options: TreeDropdownComponentOptions;\r\n public collection: FolderCollection;\r\n\r\n private buttonText: string;\r\n private disabledIds: ObjectHash;\r\n\r\n constructor(options: TreeDropdownComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.listenTo(this.options.channelName, 'folder:selected new:folder:selected', this.setButtonText);\r\n this.listenTo(this.options.channelName, 're:render:selector', this.renderSelector);\r\n\r\n this.disabledIds = this.options.disabledIds && this.options.disabledIds.reduce((obj, id) => ({\r\n ...obj,\r\n [id]: true\r\n }), {});\r\n }\r\n\r\n public get name(): string {\r\n return 'TreeDropdownComponent';\r\n }\r\n\r\n public get template(): string {\r\n return TreeDropdownTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'position-relative';\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.treeDropdown';\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n selector: {\r\n el: '.selector-region',\r\n replaceElement: false\r\n }\r\n };\r\n }\r\n\r\n public events(): ObjectHash {\r\n return {\r\n 'click .create-new': 'onClickCreateNew'\r\n };\r\n }\r\n\r\n public get defaults(): ObjectHash {\r\n return {\r\n disabledIds: []\r\n };\r\n }\r\n\r\n public get elements(): ObjectHash {\r\n return {\r\n button: '.custom-select'\r\n };\r\n }\r\n\r\n public onClickCreateNew(e: JQuery.Event): void {\r\n e.preventDefault();\r\n\r\n const channel = Radio.channel(this.options.channelName);\r\n channel.trigger('create:folder:clicked');\r\n }\r\n\r\n private setButtonText(model?: Core.Model, isDisabled?: boolean): void {\r\n if (!model || isDisabled) {\r\n const selection = FolderTreeHelpers.getSelected(this.options.folderTreeKey, this.collection);\r\n\r\n const text = selection ? selection.get('name') : LanguageService.getPhrase(this.lang, 'button');\r\n this.getUI('button').text(text);\r\n\r\n return;\r\n }\r\n\r\n const name = model.get('name');\r\n\r\n this.getUI('button').text(name);\r\n }\r\n\r\n private renderSelector(): void {\r\n // TODO: analytics\r\n this.showChildView('selector', new LeftNavComponent({\r\n styles,\r\n collection: this.collection,\r\n channelName: this.options.channelName,\r\n childrenProperty: 'children',\r\n folderTreeId: this.options.folderTreeKey,\r\n extraClass: styles.list,\r\n extraClasses: styles.list,\r\n isSelector: true,\r\n disabledIds: this.disabledIds || {}\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n name: this.options.name || this.options.channelName,\r\n buttonText: this.buttonText,\r\n canCreateNew: this.options.canCreateNew\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.setButtonText();\r\n this.renderSelector();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"selectBtn\":\"cv--selectBtn--2TTgs\",\"list\":\"cv--list--3wN7o\",\"selector\":\"cv--selector--3Xf1P\",\"customItem\":\"cv--customItem--199PI\"};"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- (window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[42],{1380:function(e,t,n){e.exports={smart:"_1dRs0",leftNav:"_3dpUO"}},1381:function(e,t,n){e.exports={item:"_13Gu_",text:"_2mbEb",folderTree:"_2NhVk",node:"_1dMK1",selected:"_1AACi"}},1382:function(e,t,n){var i=n(9);e.exports=(i.default||i).template({compiler:[8,">= 4.3.0"],main:function(e,t,n,i,r){var o;e.propertyIsEnumerable;return'<div class="selected-banner-region"></div>\r\n<div class="search-region"></div>\r\n<div class="banner-region"></div>\r\n<div class="col-4 '+e.escapeExpression(e.lambda(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.leftNav:o,t))+'">\r\n <div class="left-nav-region"></div>\r\n</div>\r\n<div class="col">\r\n <div class="header-region"></div>\r\n <div class="video-list-region"></div>\r\n</div>\r\n<div class="footer-region"></div>'},useData:!0})},1383:function(e,t,n){var i=n(9);e.exports=(i.default||i).template({1:function(e,t,n,i,r){e.propertyIsEnumerable;var o,a=e.lambda,s=e.escapeExpression;return' <a class="applink-goback '+s(a(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.back:o,t))+'">\r\n <span class="align-middle d-inline-block '+s(a(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.backSvgContainer:o,t))+'">'+(null!=(o=a(null!=(o=null!=t?t.options:t)?o.backSvg:o,t))?o:"")+"</span>\r\n </a>\r\n"},3:function(e,t,n,i,r){var o;e.propertyIsEnumerable;return" "+(null!=(o=(n.lang||t&&t.lang||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"resultsFor",{name:"lang",hash:{searchTerm:null!=(o=null!=t?t.options:t)?o.searchTerm:o,smartCount:null!=(o=null!=t?t.options:t)?o.results:o},data:r}))?o:"")+"\r\n"},5:function(e,t,n,i,r){var o;e.propertyIsEnumerable;return" "+e.escapeExpression(e.lambda(null!=(o=null!=t?t.options:t)?o.name:o,t))+"\r\n"},7:function(e,t,n,i,r){e.propertyIsEnumerable;var o,a=e.lambda,s=e.escapeExpression,l=null!=t?t:e.nullContext||{};return'<div class="col-4 text-right py-2 '+s(a(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.subheader:o,t))+'">\r\n <div class="cursor-pointer toggle-migrated h-100">\r\n <span class="'+s(a(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.svg:o,t))+'">'+(null!=(o=a(null!=(o=null!=t?t.options:t)?o.svg:o,t))?o:"")+"</span>\r\n <span>"+(null!=(o=n.if.call(l,null!=(o=null!=t?t.options:t)?o.hidden:o,{name:"if",hash:{},fn:e.program(8,r,0),inverse:e.program(10,r,0),data:r}))?o:"")+" "+s((n.lang||t&&t.lang||e.hooks.helperMissing).call(l,"migrated",{name:"lang",hash:{},data:r}))+"</span>\r\n </div>\r\n</div>\r\n"},8:function(e,t,n,i,r){e.propertyIsEnumerable;return e.escapeExpression((n.lang||t&&t.lang||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"show",{name:"lang",hash:{},data:r}))},10:function(e,t,n,i,r){e.propertyIsEnumerable;return e.escapeExpression((n.lang||t&&t.lang||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"hide",{name:"lang",hash:{},data:r}))},compiler:[8,">= 4.3.0"],main:function(e,t,n,i,r){e.propertyIsEnumerable;var o,a=null!=t?t:e.nullContext||{};return'<div class="col-8">\r\n'+(null!=(o=n.if.call(a,null!=(o=null!=t?t.options:t)?o.goBack:o,{name:"if",hash:{},fn:e.program(1,r,0),inverse:e.noop,data:r}))?o:"")+' <h4 class="'+e.escapeExpression(e.lambda(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.header:o,t))+' py-2">\r\n'+(null!=(o=n.if.call(a,null!=(o=null!=t?t.options:t)?o.searchTerm:o,{name:"if",hash:{},fn:e.program(3,r,0),inverse:e.program(5,r,0),data:r}))?o:"")+" </h4>\r\n</div>\r\n\r\n"+(null!=(o=n.if.call(a,null!=(o=null!=t?t.options:t)?o.showMigrationToggle:o,{name:"if",hash:{},fn:e.program(7,r,0),inverse:e.noop,data:r}))?o:"")},useData:!0})},1443:function(e,t,n){"use strict";n.r(t);var i=n(2),r=n(3),o=n(50),a=n(97),s=n(1380),l=n.n(s),c=n(1381),u=n.n(c),d=n(1382),h=n.n(d),f=n(6),g=n(1036),p=n(1097),v=n(1),m=n(7),y=n(5),b=n(14),S=n(295),w=n(1383),k=n.n(w),M=n(45),I=n(140),C=n(0);function T(e){return(T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function O(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function R(e,t){return(R=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function A(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,i=V(e);if(t){var r=V(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return E(this,n)}}function E(e,t){return!t||"object"!==T(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function V(e){return(V=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var _=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&R(e,t)}(o,e);var t,n,i,r=A(o);function o(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),r.call(this,e)}return t=o,(n=[{key:"initialize",value:function(){this.localOptionsService=y.a.getInstance(C.x.LocalOptions,this),this.migrationVideoDataService=y.a.getInstance(C.g.MigrationVideo,this);var e=this.localOptionsService.getOption(M.b.MigratedHidden);v.isUndefined(e)?(this.setMigrationHiddenOption(!1),this.migratedHidden=!1):this.migratedHidden=e}},{key:"events",value:function(){return{"click @ui.toggleMigrated":"toggleMigrated"}}},{key:"viewOptions",value:function(){return{styles:S,name:this.options.searchTerm||this.model&&this.model.get("name"),hidden:this.migratedHidden,svg:b.a.getSvg(this.migratedHidden?b.b.VisibleOn:b.b.VisibleOff),goBack:this.options.searchTerm,showMigrationToggle:!this.options.initialMigration,backSvg:b.a.getSvg("arrow-left",{prefix:"fas"}),searchTerm:this.options.searchTerm,results:10}}},{key:"onBeforeRender",value:function(){var e=this;return!(!this.model&&!this.options.searchTerm&&(this.migrationVideoDataService.getSelected((function(t){t&&(e.model=t,e.triggerToggle(),e.render())})),!this.model))}},{key:"toggleMigrated",value:function(){this.migratedHidden=!this.migratedHidden,this.setMigrationHiddenOption(this.migratedHidden),this.triggerToggle(),this.render()}},{key:"triggerToggle",value:function(){m.Radio.channel(I.b.MIGRATION).trigger(C.i.MigrationWizard.TOGGLE_MIGRATED,this.migratedHidden)}},{key:"setMigrationHiddenOption",value:function(e){this.localOptionsService.setOption(M.b.MigratedHidden,e)}},{key:"name",get:function(){return"CurrentSectionHeaderView"}},{key:"title",get:function(){return!1}},{key:"lang",get:function(){return"migrationWizard.currentSectionHeader"}},{key:"className",get:function(){return"row px-2 ".concat(S.currentHeader)}},{key:"template",get:function(){return k.a}},{key:"elements",get:function(){return{toggleMigrated:".toggle-migrated"}}},{key:"appLinks",get:function(){return{".applink-goback":{application:I.a.MIGRATION_WIZARD,action:this.options.initialMigration?C.a.MigrationWizard.SMART:C.a.MigrationWizard.HOME}}}}])&&O(t.prototype,n),i&&O(t,i),o}(i.a.View);function x(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return N(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return N(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw o}}}}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}var L={getSelectedInFolder:function(e,t){var n,i=x(p.a.getSelectedVideosCollection(e).toArray());try{for(i.s();!(n=i.n()).done;){var r=n.value;if(r.get("category")===t)return r.get("count")}}catch(e){i.e(e)}finally{i.f()}return 0},findFolder:function(e,t){var n;if(e)return e.forEach((function(e){if(e.get("categoryGuid")===t)n=e;else{var i=L.findFolder(e.get("children"),t);i&&(n=i)}})),n}},P=n(54),D=n(82),B=n(28),H=n(180),G=n(1089),j=n(12),W=n(84),F=n(179);function z(e){return(z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Z(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function U(e,t){return(U=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function q(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,i=$(e);if(t){var r=$(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return J(this,n)}}function J(e,t){return!t||"object"!==z(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function $(e){return($=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}n.d(t,"SmartMigrationView",(function(){return K}));var K=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&U(e,t)}(d,e);var t,n,s,c=q(d);function d(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,d),c.call(this,e)}return t=d,(n=[{key:"initialize",value:function(){this.viewModel=B.a.get(this.viewModelName,{bannerShown:!0},{ctor:D.e,storage:{type:a.c.LocalStorage,persistProps:["bannerShown"]}}),this.bindListeners(),this.initializeServices()}},{key:"regions",value:function(){return{selectedBanner:{replaceElement:!0,el:".selected-banner-region"},search:{replaceElement:!0,el:".search-region",partialLoading:f.j.PublisherArchiveSearchBar},banner:{replaceElement:!0,el:".banner-region"},leftNav:{replaceElement:!0,el:".left-nav-region",partialLoading:f.j.PublisherArchiveLeftNav},header:{replaceElement:!0,el:".header-region",partialLoading:f.j.PublisherArchiveSectionHeader},videoList:{replaceElement:!0,el:".video-list-region",partialLoading:f.j.PublisherArchiveVideoList},footer:{replaceElement:!0,el:".footer-region",partialLoading:f.j.PublisherArchiveStatusBar}}}},{key:"initializeServices",value:function(){this.folderCacheService=y.a.getInstance(C.x.FolderCache,this),this.selectedVideoService=y.a.getInstance(C.x.SelectedVideo,this),this.migrationVideoDataService=y.a.getInstance(C.g.MigrationVideo,this),this.alertService=y.a.getInstance(C.x.Alerts)}},{key:"bindListeners",value:function(){this.listenTo(C.e.MIGRATION,C.i.MigrationWizard.SELECTED_CHANGED,this.setSelectedVideos),this.listenTo(C.e.MIGRATION,"manual:review:video:count:sync",this.render),this.listenTo(C.e.MIGRATION,"".concat(C.f.CUSTOMER_VIDEO,":count:sync"),this.render),this.listenTo(C.e.MIGRATION,"".concat(C.f.CUSTOMER_METADATA,":sync"),this.render),this.listenTo(C.b.MIGRATION_WIZARD,C.i.MigrationWizard.CLOSE_BANNER,this.closeSelectionBanner),this.listenTo(this.channelName,"add:selected",this.addSelected),this.listenTo(this.channelName,"remove:selected",this.removeSelected),this.listenTo(this.viewModel,"change:selectedVideoCount",this.renderStatusBar)}},{key:"fetchVideos",value:function(){var e=this;!this.videos&&this.options.folderChord&&this.migrationVideoDataService.getCustomerVideos(this.options.folderChord,(function(t){e.videos||(e.videos=p.a.toggleMigrated(t,!0),e.setSelectedVideos(),e.isRendering||e.render())}))}},{key:"fetchFolders",value:function(){var e=this;this.folders||this.migrationVideoDataService.getCustomerFolders((function(t){if(!e.folders){if(e.folders=t,e.options.folderChord){var n=e.folderCacheService.getFolderByChord(e.options.folderChord,t);j.f.setSelected(W.a.MIGRATION_WIZARD,n,e.folders),e.selectedFolder=j.f.getSelected(W.a.MIGRATION_WIZARD,t)}else{var r=e.folders.first();if(r)return void i.a.AppLinkHelper.trigger({application:C.b.MIGRATION_WIZARD,action:C.a.MigrationWizard.HOME,params:{folder:r.get("chord")}},{replace:!0})}e.isRendering||e.render()}}))}},{key:"setFolderText",value:function(e,t){var n=this,i=e.get("chord"),r=e.get("name"),o=this.folderCacheService.getFolderCache(),a=this.options.folderChord;if(a){var s,l=L.getSelectedInFolder(t,r);if(i===a){var c=this.migrationVideoDataService.getCustomerVideos(i);if(!this.selectedFolder)return;c&&(o[a]=c.length),s=o[a]}o[i]&&(s=o[i]),l&&s?e.set("text","".concat(r," (").concat(l,"/").concat(s,")")):e.set("text",r),e.children.forEach((function(e){return n.setFolderText(e,t)}))}else e.set("text",r)}},{key:"closeSelectionBanner",value:function(){var e=this.getRegion("selectedBanner");e&&(this.viewModel.set("bannerShown",!1),e.destroy())}},{key:"setSelectedVideos",value:function(){var e=this,t=this.selectedVideoService.getSelectedVideoIds();this.videos&&this.videos.forEach((function(n){return p.a.setChecked(n,t,e.isInitialMigration())})),t&&this.viewModel.set("selectedVideoCount",t.length)}},{key:"addSelected",value:function(e,t){this.selectedVideoService.addSelectedVideos(e,t)}},{key:"removeSelected",value:function(e,t){this.selectedVideoService.removeSelectedVideos(e,t)}},{key:"isInitialMigration",value:function(){return P.a.isInitialMigration(this.customerMetadata)}},{key:"onClickBack",value:function(){var e=this;new j.d({title:r.a.getPhrase(this.lang,"backHeading"),text:r.a.getPhrase(this.lang,"backBody"),buttons:[{text:r.a.getPhrase(this.lang,"discard"),className:"btn btn-danger",success:!0},{text:r.a.getPhrase(this.lang,"cancel"),className:"btn btn-secondary",close:!0}]}).render().done((function(){e.selectedVideoService.removeAllSelectedVideos(),e.viewModel.set("alertShown",!1),i.a.AppLinkHelper.trigger({application:C.b.MIGRATION_WIZARD,action:C.a.MigrationWizard.START_MIGRATION})}))}},{key:"centerSelectedItem",value:function(){var e=this.$el.find(".".concat(l.a.leftNav)),t=e.find(".".concat(u.a.selected));if(t.length&&!(t.offset().top-e.offset().top+t.height()<e.height())){var n=e.scrollTop()+(t.offset().top-e.offset().top),i=.5*e.height()+.5*t.height();e.scrollTop(n-i)}}},{key:"renderEmptyMessage",value:function(){this.showChildView("videoList",new G.b({text:"No folder selected"}))}},{key:"renderSelectedBanner",value:function(){if(this.isInitialMigration()&&!this.viewModel.get("alertShown")){this.viewModel.set("alertShown",!0);var e={heading:r.a.getPhrase(this.lang,"smartSelected"),message:r.a.getPhrase(this.lang,"last3Years"),type:o.a.Success};this.alertService.createAlert(e)}}},{key:"renderLeftNav",value:function(){var e=this,t=new g.a({styles:u.a,appLink:{action:C.a.MigrationWizard.HOME,application:C.b.MIGRATION_WIZARD},linkParams:function(e){return{folder:e.get("chord")}},collection:this.folders,channelName:"".concat(this.cid),childrenProperty:"children",textProperty:"name",extraClass:"p-0",folderTreeId:W.a.MIGRATION_WIZARD});this.showChildView("leftNav",t),window.requestAnimationFrame((function(){window.requestAnimationFrame((function(){e.centerSelectedItem()}))}))}},{key:"renderSearchBar",value:function(){this.showChildView("search",new G.h({selected:this.errorCount.get("count")?"publisher-archive":"none"}))}},{key:"renderStatusBar",value:function(){var e=this;if(this.videoCount){var t={application:C.b.MIGRATION_WIZARD,action:C.a.MigrationWizard.SELECTED,args:[this.options.folderChord]},n=this.videoCount.get("successCount"),i=this.selectedVideoService.getNumberSelected(),o=new G.k({nextAppLink:t,showSelected:!0,nextDisabled:0===i,showBackButton:this.isInitialMigration(),text:this.isInitialMigration()?r.a.getPhrase(this.lang,"next"):r.a.getPhrase(this.lang,"addToLibrary"),numberSelected:i,numberAvailable:n,onClickBack:function(){return e.onClickBack()}});this.showChildView("footer",o)}}},{key:"renderVideoList",value:function(){var e=this.options,t=e.folderChord,n=e.searchTerm;if(this.videos||!t&&!n)if(this.selectedFolder){this.showChildView("videoList",new G.l({model:this.selectedFolder,initialMigration:this.isInitialMigration(),folderChord:t,searchTerm:n,collection:this.videos,channelName:this.channelName,supportSiteUrl:this.config.get("supportSiteUrl")}));var i=n||t;j.a.GetViewModel(i,F.a.MIGRATION_VIDEO_LIST).trigger("change")}else this.renderEmptyMessage();else this.renderPartialLoading("videoList")}},{key:"renderCurrentSection",value:function(){this.showChildView("header",new _({searchTerm:this.options.searchTerm,initialMigration:this.isInitialMigration()}))}},{key:"renderBanner",value:function(){this.isInitialMigration()&&this.showChildView("banner",new G.a({config:this.config}))}},{key:"onBeforeRender",value:function(){this.isRendering=!0,this.fetchVideos(),this.fetchFolders(),this.customerMetadata=this.migrationVideoDataService.getCustomerMetadata(),this.errorCount=this.migrationVideoDataService.getManualReviewVideoCount(),this.videoCount=this.migrationVideoDataService.getCustomerVideoCountCached();var e=!!(this.customerMetadata&&this.folders&&this.videoCount&&this.errorCount);return e||(this.isRendering=!1),e}},{key:"viewOptions",value:function(){return{styles:l.a}}},{key:"onRender",value:function(){if(this.renderSelectedBanner(),this.renderLeftNav(),this.renderSearchBar(),this.renderStatusBar(),this.renderBanner(),!this.videos)return this.renderPartialLoading("header"),this.renderPartialLoading("videoList"),void(this.isRendering=!1);this.options.folderChord||this.options.searchTerm?(this.renderVideoList(),this.renderCurrentSection()):this.renderEmptyMessage(),this.isRendering=!1}},{key:"name",get:function(){return"SmartMigrationView"}},{key:"title",get:function(){return r.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"migrationWizard.smartMigration"}},{key:"viewModelName",get:function(){return"".concat(this.name,":viewmodel")}},{key:"channelName",get:function(){return"".concat(this.name,":").concat(this.cid)}},{key:"template",get:function(){return h.a}},{key:"className",get:function(){return"row no-gutters w-100 ".concat(l.a.smart)}},{key:"requiredResources",get:function(){return{config:H.b.config}}}])&&Z(t.prototype,n),s&&Z(t,s),d}(i.a.View)}}]);