@clickview/library-editor 1.1.23-dev.1 → 1.1.23-rc.1
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.
- package/dist/css/1.chunk.css.map +1 -1
- package/dist/css/10.chunk.css.map +1 -1
- package/dist/css/11.chunk.css.map +1 -1
- package/dist/css/12.chunk.css.map +1 -1
- package/dist/css/13.chunk.css.map +1 -1
- package/dist/css/14.chunk.css.map +1 -1
- package/dist/css/16.chunk.css.map +1 -1
- package/dist/css/17.chunk.css.map +1 -1
- package/dist/css/18.chunk.css.map +1 -1
- package/dist/css/2.chunk.css.map +1 -1
- package/dist/css/21.chunk.css.map +1 -1
- package/dist/css/22.chunk.css.map +1 -1
- package/dist/css/23.chunk.css.map +1 -1
- package/dist/css/25.chunk.css.map +1 -1
- package/dist/css/26.chunk.css +1 -1
- package/dist/css/26.chunk.css.map +1 -1
- package/dist/css/28.chunk.css.map +1 -1
- package/dist/css/29.chunk.css.map +1 -1
- package/dist/css/3.chunk.css.map +1 -1
- package/dist/css/30.chunk.css.map +1 -1
- package/dist/css/31.chunk.css.map +1 -1
- package/dist/css/32.chunk.css.map +1 -1
- package/dist/css/33.chunk.css.map +1 -1
- package/dist/css/34.chunk.css.map +1 -1
- package/dist/css/35.chunk.css.map +1 -1
- package/dist/css/36.chunk.css.map +1 -1
- package/dist/css/37.chunk.css.map +1 -1
- package/dist/css/38.chunk.css.map +1 -1
- package/dist/css/40.chunk.css.map +1 -1
- package/dist/css/41.chunk.css.map +1 -1
- package/dist/css/42.chunk.css.map +1 -1
- package/dist/css/43.chunk.css.map +1 -1
- package/dist/css/44.chunk.css.map +1 -1
- package/dist/css/45.chunk.css.map +1 -1
- package/dist/css/46.chunk.css.map +1 -1
- package/dist/css/47.chunk.css.map +1 -1
- package/dist/css/48.chunk.css.map +1 -1
- package/dist/css/49.chunk.css.map +1 -1
- package/dist/css/50.chunk.css.map +1 -1
- package/dist/css/51.chunk.css.map +1 -1
- package/dist/css/52.chunk.css.map +1 -1
- package/dist/css/55.chunk.css.map +1 -1
- package/dist/css/56.chunk.css.map +1 -1
- package/dist/css/58.chunk.css.map +1 -1
- package/dist/css/59.chunk.css.map +1 -1
- package/dist/css/6.chunk.css.map +1 -1
- package/dist/css/60.chunk.css.map +1 -1
- package/dist/css/62.chunk.css.map +1 -1
- package/dist/css/63.chunk.css.map +1 -1
- package/dist/css/67.chunk.css.map +1 -1
- package/dist/css/68.chunk.css.map +1 -1
- package/dist/css/69.chunk.css.map +1 -1
- package/dist/css/7.chunk.css.map +1 -1
- package/dist/css/70.chunk.css.map +1 -1
- package/dist/css/71.chunk.css.map +1 -1
- package/dist/css/72.chunk.css.map +1 -1
- package/dist/css/73.chunk.css.map +1 -1
- package/dist/css/74.chunk.css.map +1 -1
- package/dist/css/75.chunk.css.map +1 -1
- package/dist/css/76.chunk.css.map +1 -1
- package/dist/css/8.chunk.css.map +1 -1
- package/dist/css/library-editor-app.css.map +1 -1
- package/dist/en.json +1 -1
- package/dist/libs/shared/src/enums/SettingName.d.ts +2 -1
- package/dist/libs/shared/src/images/svg/ImportedSvgs.d.ts +4 -1
- package/dist/libs/shared/src/images/svg/objects/index.d.ts +4 -1
- package/dist/libs/shared/src/interfaces/models/Avatar.d.ts +3 -0
- package/dist/libs/shared/src/interfaces/models/Customer.d.ts +1 -0
- package/dist/libs/shared/src/interfaces/models/Playlist.d.ts +1 -0
- package/dist/libs/shared/src/interfaces/models/Presentation.d.ts +2 -2
- package/dist/libs/shared/src/interfaces/models/User.d.ts +2 -1
- package/dist/libs/shared/src/interfaces/models/index.d.ts +2 -0
- package/dist/projects/library-editor/src/app.d.ts +1 -0
- package/dist/projects/library-editor/src/apps/library-editor/components/video-collection-actions/VideoCollectionActionsComponent.d.ts +1 -0
- package/dist/scripts/{0-09e1e33a5c.chunk.js → 0-2765595d0a.chunk.js} +1 -1
- package/dist/scripts/0-f82360fd03.chunk.js +1 -0
- package/dist/scripts/0.chunk.js +1 -1
- package/dist/scripts/0.chunk.js.map +1 -1
- package/dist/scripts/{1-a66bb44471.chunk.js → 1-35f87e4cdc.chunk.js} +1 -1
- package/dist/scripts/1-b6dedae131.chunk.js +1 -0
- package/dist/scripts/1.chunk.js.map +1 -1
- package/dist/scripts/{10-6c79d8c6f9.chunk.js → 10-227e797872.chunk.js} +1 -1
- package/dist/scripts/10-8307f8e248.chunk.js +1 -0
- package/dist/scripts/10.chunk.js.map +1 -1
- package/dist/scripts/{11-6eef9e160e.chunk.js → 11-9dbae07504.chunk.js} +1 -1
- package/dist/scripts/11.chunk.js.map +1 -1
- package/dist/scripts/{12-dbffa50a92.chunk.js → 12-06cf65b136.chunk.js} +1 -1
- package/dist/scripts/12-43e54b0a2d.chunk.js +1 -0
- package/dist/scripts/12.chunk.js.map +1 -1
- package/dist/scripts/{13-37e5cfab3e.chunk.js → 13-01ee41eb1e.chunk.js} +1 -1
- package/dist/scripts/13-3d84e237b9.chunk.js +1 -0
- package/dist/scripts/13.chunk.js.map +1 -1
- package/dist/scripts/{14-b524fbd295.chunk.js → 14-988bab314d.chunk.js} +1 -1
- package/dist/scripts/14-cf307e51d9.chunk.js +1 -0
- package/dist/scripts/14.chunk.js.map +1 -1
- package/dist/scripts/{15-1ff1252d1a.chunk.js → 15-bedb9ff6d0.chunk.js} +1 -1
- package/dist/scripts/15-eed00bc875.chunk.js +1 -0
- package/dist/scripts/15.chunk.js.map +1 -1
- package/dist/scripts/{16-b27142fe98.chunk.js → 16-339a29fa2f.chunk.js} +1 -1
- package/dist/scripts/16-3a99050a93.chunk.js +1 -0
- package/dist/scripts/16.chunk.js.map +1 -1
- package/dist/scripts/{17-c3bbe50816.chunk.js → 17-66da06be62.chunk.js} +1 -1
- package/dist/scripts/17-bff211f26a.chunk.js +1 -0
- package/dist/scripts/17.chunk.js +1 -1
- package/dist/scripts/17.chunk.js.map +1 -1
- package/dist/scripts/18.chunk.js.map +1 -1
- package/dist/scripts/19.chunk.js +1 -1
- package/dist/scripts/19.chunk.js.map +1 -1
- package/dist/scripts/{2-2cc3988222.chunk.js → 2-5079f4b088.chunk.js} +1 -1
- package/dist/scripts/2.chunk.js.map +1 -1
- package/dist/scripts/{20-6d9086f5db.chunk.js → 20-6019ccb462.chunk.js} +1 -1
- package/dist/scripts/20-d4470b4a53.chunk.js +1 -0
- package/dist/scripts/20.chunk.js.map +1 -1
- package/dist/scripts/{21-2f10553302.chunk.js → 21-77f6ddec3d.chunk.js} +1 -1
- package/dist/scripts/21-7bd1977005.chunk.js +1 -0
- package/dist/scripts/21.chunk.js.map +1 -1
- package/dist/scripts/{22-59ae44b448.chunk.js → 22-9ef39722d1.chunk.js} +1 -1
- package/dist/scripts/22-d88b8e9c20.chunk.js +1 -0
- package/dist/scripts/22.chunk.js.map +1 -1
- package/dist/scripts/{23-11e008ee63.chunk.js → 23-c8071cb869.chunk.js} +1 -1
- package/dist/scripts/23-e8a0f60c53.chunk.js +1 -0
- package/dist/scripts/23.chunk.js +3 -3
- package/dist/scripts/23.chunk.js.map +1 -1
- package/dist/scripts/{24-7f21e384d2.chunk.js → 24-b655377e1f.chunk.js} +1 -1
- package/dist/scripts/24-f62e7ff166.chunk.js +1 -0
- package/dist/scripts/24.chunk.js.map +1 -1
- package/dist/scripts/{25-f0f7fa16a4.chunk.js → 25-acda0ed17e.chunk.js} +1 -1
- package/dist/scripts/25-f814e3921c.chunk.js +1 -0
- package/dist/scripts/25.chunk.js.map +1 -1
- package/dist/scripts/{26-e65533bd94.chunk.js → 26-39f6c3ca17.chunk.js} +1 -1
- package/dist/scripts/26-9dd482e1e6.chunk.js +1 -0
- package/dist/scripts/26.chunk.js.map +1 -1
- package/dist/scripts/{27-9dc0f5a4df.chunk.js → 27-1313c7d392.chunk.js} +1 -1
- package/dist/scripts/27-5ecd204dab.chunk.js +1 -0
- package/dist/scripts/27.chunk.js +3 -3
- package/dist/scripts/27.chunk.js.map +1 -1
- package/dist/scripts/{28-26e5c371c7.chunk.js → 28-b583483a6e.chunk.js} +1 -1
- package/dist/scripts/28-e9b8962af8.chunk.js +1 -0
- package/dist/scripts/28.chunk.js +6 -6
- package/dist/scripts/28.chunk.js.map +1 -1
- package/dist/scripts/{29-61415c2af0.chunk.js → 29-44119e600a.chunk.js} +1 -1
- package/dist/scripts/29-e3391b4e4b.chunk.js +1 -0
- package/dist/scripts/29.chunk.js.map +1 -1
- package/dist/scripts/{3-5eff8c9df5.chunk.js → 3-079c0b4d3b.chunk.js} +1 -1
- package/dist/scripts/3-bea2c1c371.chunk.js +1 -0
- package/dist/scripts/3.chunk.js +25 -13
- package/dist/scripts/3.chunk.js.map +1 -1
- package/dist/scripts/{30-6075c28972.chunk.js → 30-a6a7291b5e.chunk.js} +1 -1
- package/dist/scripts/30-aef6a19cde.chunk.js +1 -0
- package/dist/scripts/30.chunk.js +6 -6
- package/dist/scripts/30.chunk.js.map +1 -1
- package/dist/scripts/31-4f1ea6d067.chunk.js +1 -0
- package/dist/scripts/31-70fe14b490.chunk.js +1 -0
- package/dist/scripts/31.chunk.js.map +1 -1
- package/dist/scripts/{32-d5a50a7592.chunk.js → 32-0b05da2f4c.chunk.js} +1 -1
- package/dist/scripts/32-96ac2f9c32.chunk.js +1 -0
- package/dist/scripts/32.chunk.js.map +1 -1
- package/dist/scripts/{33-5ae90ed7d7.chunk.js → 33-04b1fbcdeb.chunk.js} +1 -1
- package/dist/scripts/33-061a87935f.chunk.js +1 -0
- package/dist/scripts/33.chunk.js.map +1 -1
- package/dist/scripts/{34-50402c1835.chunk.js → 34-4f2c861480.chunk.js} +1 -1
- package/dist/scripts/34-56f92b9a87.chunk.js +1 -0
- package/dist/scripts/34.chunk.js.map +1 -1
- package/dist/scripts/{35-ec8c190357.chunk.js → 35-08ead0d078.chunk.js} +1 -1
- package/dist/scripts/35-cdd788a4b5.chunk.js +1 -0
- package/dist/scripts/35.chunk.js.map +1 -1
- package/dist/scripts/{36-4d467bc42e.chunk.js → 36-4db22bf8bb.chunk.js} +1 -1
- package/dist/scripts/36-7d33d11b58.chunk.js +1 -0
- package/dist/scripts/36.chunk.js.map +1 -1
- package/dist/scripts/{37-37e8965783.chunk.js → 37-4de2537ff4.chunk.js} +1 -1
- package/dist/scripts/37-fbd149e569.chunk.js +1 -0
- package/dist/scripts/37.chunk.js.map +1 -1
- package/dist/scripts/{38-3dc24b8867.chunk.js → 38-57af633fa1.chunk.js} +1 -1
- package/dist/scripts/38-7733a3d81e.chunk.js +1 -0
- package/dist/scripts/38.chunk.js.map +1 -1
- package/dist/scripts/{39-350ff66a2b.chunk.js → 39-5451786b7d.chunk.js} +1 -1
- package/dist/scripts/39-cc627dfe2b.chunk.js +1 -0
- package/dist/scripts/39.chunk.js.map +1 -1
- package/dist/scripts/{4-b3f3c7c71c.chunk.js → 4-0a8a5ac2f0.chunk.js} +1 -1
- package/dist/scripts/4-84fa8e49e2.chunk.js +1 -0
- package/dist/scripts/4.chunk.js.map +1 -1
- package/dist/scripts/{40-3443f99cb2.chunk.js → 40-31940ddf04.chunk.js} +1 -1
- package/dist/scripts/40-78639874b5.chunk.js +1 -0
- package/dist/scripts/40.chunk.js.map +1 -1
- package/dist/scripts/{41-b5dfd35e9e.chunk.js → 41-0366a0332e.chunk.js} +1 -1
- package/dist/scripts/41-2c6722e410.chunk.js +1 -0
- package/dist/scripts/41.chunk.js.map +1 -1
- package/dist/scripts/{42-103fecb7b6.chunk.js → 42-9b7795d20a.chunk.js} +1 -1
- package/dist/scripts/42-c87c36d7d4.chunk.js +1 -0
- package/dist/scripts/42.chunk.js.map +1 -1
- package/dist/scripts/{43-57b07579f7.chunk.js → 43-006ce08a8f.chunk.js} +1 -1
- package/dist/scripts/43-591954817b.chunk.js +1 -0
- package/dist/scripts/43.chunk.js.map +1 -1
- package/dist/scripts/{44-210d64dffe.chunk.js → 44-b4c134efe8.chunk.js} +1 -1
- package/dist/scripts/44-fc3a1d45c5.chunk.js +1 -0
- package/dist/scripts/44.chunk.js.map +1 -1
- package/dist/scripts/{45-632b07e926.chunk.js → 45-32ce8dd910.chunk.js} +1 -1
- package/dist/scripts/45-3e85e78a77.chunk.js +1 -0
- package/dist/scripts/45.chunk.js.map +1 -1
- package/dist/scripts/{46-82cce63cbf.chunk.js → 46-1256828b60.chunk.js} +1 -1
- package/dist/scripts/46-e096df45ef.chunk.js +1 -0
- package/dist/scripts/46.chunk.js +6 -6
- package/dist/scripts/46.chunk.js.map +1 -1
- package/dist/scripts/{47-595b4aae87.chunk.js → 47-61b53964c2.chunk.js} +1 -1
- package/dist/scripts/47-9e514e7536.chunk.js +1 -0
- package/dist/scripts/47.chunk.js +2 -1
- package/dist/scripts/47.chunk.js.map +1 -1
- package/dist/scripts/{48-fcf6378889.chunk.js → 48-3f804b22a4.chunk.js} +1 -1
- package/dist/scripts/48-9af8b50e4f.chunk.js +1 -0
- package/dist/scripts/48.chunk.js.map +1 -1
- package/dist/scripts/{49-d8a4899eb1.chunk.js → 49-79b28e90c9.chunk.js} +1 -1
- package/dist/scripts/49-883d9131af.chunk.js +1 -0
- package/dist/scripts/49.chunk.js.map +1 -1
- package/dist/scripts/{5-06bc197b1e.chunk.js → 5-093c9ee130.chunk.js} +1 -1
- package/dist/scripts/5-f5ad097d2b.chunk.js +1 -0
- package/dist/scripts/5.chunk.js +3 -3
- package/dist/scripts/5.chunk.js.map +1 -1
- package/dist/scripts/{50-11b1a49916.chunk.js → 50-198f89794c.chunk.js} +1 -1
- package/dist/scripts/50-ce04770db1.chunk.js +1 -0
- package/dist/scripts/50.chunk.js.map +1 -1
- package/dist/scripts/{51-72a75e0265.chunk.js → 51-177fe97a9b.chunk.js} +1 -1
- package/dist/scripts/51-61bb2b80fe.chunk.js +1 -0
- package/dist/scripts/51.chunk.js.map +1 -1
- package/dist/scripts/{52-195f73bcd6.chunk.js → 52-d8cf26c75f.chunk.js} +1 -1
- package/dist/scripts/52-e7fd215888.chunk.js +1 -0
- package/dist/scripts/52.chunk.js.map +1 -1
- package/dist/scripts/{53-bb4f37ee25.chunk.js → 53-595b1efa1a.chunk.js} +1 -1
- package/dist/scripts/53-e78a58c963.chunk.js +1 -0
- package/dist/scripts/53.chunk.js.map +1 -1
- package/dist/scripts/{54-7a201d8285.chunk.js → 54-646c8458e0.chunk.js} +1 -1
- package/dist/scripts/54-7976c21511.chunk.js +1 -0
- package/dist/scripts/54.chunk.js.map +1 -1
- package/dist/scripts/{55-be3d7b8805.chunk.js → 55-5e3b70736e.chunk.js} +1 -1
- package/dist/scripts/55-dac67eae0b.chunk.js +1 -0
- package/dist/scripts/55.chunk.js.map +1 -1
- package/dist/scripts/{56-6aeece1bf1.chunk.js → 56-3c520aec72.chunk.js} +1 -1
- package/dist/scripts/56-9a02efb9a1.chunk.js +1 -0
- package/dist/scripts/56.chunk.js.map +1 -1
- package/dist/scripts/{57-59ee15161b.chunk.js → 57-6f84e1bb9d.chunk.js} +1 -1
- package/dist/scripts/57-bf72265d49.chunk.js +1 -0
- package/dist/scripts/57.chunk.js.map +1 -1
- package/dist/scripts/{58-8ff58b194a.chunk.js → 58-1c37240b43.chunk.js} +1 -1
- package/dist/scripts/58-34ef45f4b6.chunk.js +1 -0
- package/dist/scripts/58.chunk.js.map +1 -1
- package/dist/scripts/{59-3d33954fcb.chunk.js → 59-05cbb57b32.chunk.js} +1 -1
- package/dist/scripts/59-f3d473090d.chunk.js +1 -0
- package/dist/scripts/59.chunk.js.map +1 -1
- package/dist/scripts/{6-a469872b10.chunk.js → 6-a5f6258253.chunk.js} +1 -1
- package/dist/scripts/6-e49b6b4c08.chunk.js +1 -0
- package/dist/scripts/6.chunk.js.map +1 -1
- package/dist/scripts/{60-f092baa91c.chunk.js → 60-ac4f11764a.chunk.js} +1 -1
- package/dist/scripts/60-dd50d4179f.chunk.js +1 -0
- package/dist/scripts/60.chunk.js.map +1 -1
- package/dist/scripts/{61-bd9ef62ccd.chunk.js → 61-62ec9b3628.chunk.js} +1 -1
- package/dist/scripts/61-e759f86871.chunk.js +1 -0
- package/dist/scripts/61.chunk.js +12 -12
- package/dist/scripts/61.chunk.js.map +1 -1
- package/dist/scripts/{62-f15b3bf74c.chunk.js → 62-4d0e82f903.chunk.js} +1 -1
- package/dist/scripts/62-bfd5450b13.chunk.js +1 -0
- package/dist/scripts/62.chunk.js.map +1 -1
- package/dist/scripts/{63-92757f75e7.chunk.js → 63-47af37825d.chunk.js} +1 -1
- package/dist/scripts/63-8521e39a2e.chunk.js +1 -0
- package/dist/scripts/63.chunk.js.map +1 -1
- package/dist/scripts/{64-c5a1c55521.chunk.js → 64-12150ef48b.chunk.js} +1 -1
- package/dist/scripts/64-c42635a917.chunk.js +1 -0
- package/dist/scripts/64.chunk.js.map +1 -1
- package/dist/scripts/{65-6bb10ae23b.chunk.js → 65-7780441e5e.chunk.js} +1 -1
- package/dist/scripts/65-a4fdf8777b.chunk.js +1 -0
- package/dist/scripts/65.chunk.js.map +1 -1
- package/dist/scripts/{66-f047027f7d.chunk.js → 66-029947cf5c.chunk.js} +1 -1
- package/dist/scripts/66-7f2750cd97.chunk.js +1 -0
- package/dist/scripts/66.chunk.js.map +1 -1
- package/dist/scripts/{67-2e1a011200.chunk.js → 67-47f208342a.chunk.js} +1 -1
- package/dist/scripts/67-564ff2bd16.chunk.js +1 -0
- package/dist/scripts/67.chunk.js.map +1 -1
- package/dist/scripts/{68-d5c0ab3fc1.chunk.js → 68-5656cc45fe.chunk.js} +1 -1
- package/dist/scripts/68-df9024fadc.chunk.js +1 -0
- package/dist/scripts/68.chunk.js.map +1 -1
- package/dist/scripts/{69-fc8325afc9.chunk.js → 69-4d32ddddbc.chunk.js} +1 -1
- package/dist/scripts/69-a4b3442e68.chunk.js +1 -0
- package/dist/scripts/69.chunk.js.map +1 -1
- package/dist/scripts/{7-58dd909fa3.chunk.js → 7-2696f5afc4.chunk.js} +1 -1
- package/dist/scripts/7-b39ab430b9.chunk.js +1 -0
- package/dist/scripts/7.chunk.js.map +1 -1
- package/dist/scripts/{70-ceda95013e.chunk.js → 70-0f070c1596.chunk.js} +1 -1
- package/dist/scripts/70-2a427b3dd0.chunk.js +1 -0
- package/dist/scripts/70.chunk.js.map +1 -1
- package/dist/scripts/{71-6e8fc95beb.chunk.js → 71-215cac8b69.chunk.js} +1 -1
- package/dist/scripts/71-c43ee23686.chunk.js +1 -0
- package/dist/scripts/71.chunk.js.map +1 -1
- package/dist/scripts/{72-53fe3338bf.chunk.js → 72-6eb3ef092e.chunk.js} +1 -1
- package/dist/scripts/72-f5a8cfc8b7.chunk.js +1 -0
- package/dist/scripts/72.chunk.js.map +1 -1
- package/dist/scripts/73.chunk.js.map +1 -1
- package/dist/scripts/74.chunk.js.map +1 -1
- package/dist/scripts/75.chunk.js.map +1 -1
- package/dist/scripts/76.chunk.js.map +1 -1
- package/dist/scripts/77.chunk.js.map +1 -1
- package/dist/scripts/78.chunk.js.map +1 -1
- package/dist/scripts/79.chunk.js.map +1 -1
- package/dist/scripts/{8-6974afed28.chunk.js → 8-1e0751e30b.chunk.js} +1 -1
- package/dist/scripts/8-f4f18356f7.chunk.js +1 -0
- package/dist/scripts/8.chunk.js.map +1 -1
- package/dist/scripts/80.chunk.js.map +1 -1
- package/dist/scripts/81.chunk.js.map +1 -1
- package/dist/scripts/82.chunk.js.map +1 -1
- package/dist/scripts/83.chunk.js.map +1 -1
- package/dist/scripts/84.chunk.js.map +1 -1
- package/dist/scripts/85.chunk.js.map +1 -1
- package/dist/scripts/86.chunk.js.map +1 -1
- package/dist/scripts/87.chunk.js.map +1 -1
- package/dist/scripts/88.chunk.js.map +1 -1
- package/dist/scripts/89.chunk.js.map +1 -1
- package/dist/scripts/{9-9279038caa.chunk.js → 9-bb567e1c99.chunk.js} +1 -1
- package/dist/scripts/9-cd0bcefa7f.chunk.js +1 -0
- package/dist/scripts/9.chunk.js.map +1 -1
- package/dist/scripts/90.chunk.js.map +1 -1
- package/dist/scripts/91.chunk.js.map +1 -1
- package/dist/scripts/92.chunk.js.map +1 -1
- package/dist/scripts/bundle-e7f4d4e659.min.js +8 -0
- package/dist/scripts/bundle-f73bcaa857.min.js +8 -0
- package/dist/scripts/bundle.js +1492 -1364
- package/dist/scripts/bundle.js.map +1 -1
- package/dist/scripts/bundles.json +2 -2
- package/dist/scripts/polyfills-9517d7e647.min.js +1 -0
- package/dist/scripts/polyfills-e442ebbfb0.min.js +1 -0
- package/dist/scripts/polyfills.js +1050 -1050
- package/dist/scripts/polyfills.js.map +1 -1
- package/package.json +3 -3
- package/dist/scripts/31-e35ae4e153.chunk.js +0 -1
- package/dist/scripts/bundle-06dc1f4908.min.js +0 -8
- package/dist/scripts/polyfills-efb4d7caa3.min.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[47],{
|
|
1
|
+
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[47],{1023:function(e,t,n){"use strict";n.d(t,"a",(function(){return p}));var r=n(2),o=n(244);function i(e){return(i="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 a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(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,r=f(e);if(t){var o=f(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return s(this,n)}}function s(e,t){return!t||"object"!==i(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 f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var p=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&&c(e,t)}(s,e);var t,n,r,i=l(s);function s(){return a(this,s),i.apply(this,arguments)}return t=s,(n=[{key:"defaults",value:function(){return e={},t=o.c.Disabled,n=!0,t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e;var e,t,n}}])&&u(t.prototype,n),r&&u(t,r),s}(r.a.Model)},1174:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n(1),o=n(3),i=n(47);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u="migrationWizard.utils",c={getReportOptions:function(){var e;return a(e={},i.d.Migrated,{id:"migrated",type:"homemigrator.le.migration.migrated.report",labelText:o.a.getPhrase(u,"migratedOption")}),a(e,i.d.Remaining,{id:"remaining",type:"homemigrator.le.migration.videos.remaining.report",labelText:o.a.getPhrase(u,"remainingOption")}),a(e,i.d.Errored,{id:"errored",type:"homemigrator.le.migration.error.report",labelText:o.a.getPhrase(u,"erroredOption")}),a(e,i.d.ContentMatched,{id:"content-matched",type:"homemigrator.le.migration.content.matched.report",labelText:o.a.getPhrase(u,"linkedOption")}),e},processValidReportOptions:function(e){var t=this.getReportOptions(),n={};return r.each(r.keys(t),(function(o){r.contains(e,t[o].type)&&(n[o]=t[o])})),n},filterSelectedOptions:function(e){return r.filter(r.keys(e),(function(t){return e[t].selected})).map((function(t){return e[t].id}))},getSelectedOptionsText:function(e){var t=this.getReportOptions();return r.filter(r.keys(t),(function(n){return r.contains(e,t[n].id)})).map((function(e){return t[e].labelText}))}}},1397:function(e,t,n){e.exports={image:"_2A7jn"}},1398:function(e,t,n){var r=n(10);e.exports=(r.default||r).template({1:function(e,t,n,r,o){return" <li>"+e.escapeExpression(e.lambda(t,t))+"</li>\r\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){e.propertyIsEnumerable;var i,a=e.lambda,u=e.escapeExpression,c=null!=t?t:e.nullContext||{},l=e.hooks.helperMissing;return'<div class="pb-3 text-center">\r\n <img src="'+u(a(null!=(i=null!=t?t.options:t)?i.imageUrl:i,t))+'" class="'+u(a(null!=(i=null!=(i=null!=t?t.options:t)?i.styles:i)?i.image:i,t))+'" />\r\n</div>\r\n<p class="m-0">'+u((n.lang||t&&t.lang||l).call(c,"reportInfo1",{name:"lang",hash:{},data:o}))+"</p>\r\n<ul>\r\n"+(null!=(i=n.each.call(c,null!=(i=null!=t?t.options:t)?i.reportOptions:i,{name:"each",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o}))?i:"")+'</ul>\r\n<p class="mt-2">'+(null!=(i=(n.lang||t&&t.lang||l).call(c,"reportInfo2",{name:"lang",hash:{email:null!=(i=null!=t?t.options:t)?i.email:i},data:o}))?i:"")+"</p>\r\n"},useData:!0})},1447:function(e,t,n){"use strict";n.r(t),n.d(t,"GenerateCsvReportView",(function(){return S}));var r=n(7),o=n(2),i=n(5),a=n(3),u=n(281),c=n(13),l=n(0),s=n(135),f=n(1023),p=n(244),y=n(1174),h=n(1397),g=n.n(h),m=n(1398),b=n.n(m);function d(e){return(d="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 v(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function O(e,t){return(O=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function w(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,r=R(e);if(t){var o=R(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return k(this,n)}}function k(e,t){return!t||"object"!==d(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 R(e){return(R=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var S=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&&O(e,t)}(m,e);var t,n,o,h=w(m);function m(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,m),h.call(this,e)}return t=m,(n=[{key:"initialize",value:function(){this.migrationVideoDataService=i.a.getInstance(l.g.MigrationVideo,this),this.bindListeners()}},{key:"bindListeners",value:function(){this.listenTo(this.channelName,"generate:csv",this.onClickGenerateCsv)}},{key:"onClickGenerateCsv",value:function(){var e=this;r.Radio.channel(this.channelName).trigger(p.b.ShowSpinner),this.migrationVideoDataService.generateMigrationReportCsv(this.options.options,(function(){return e.triggerMethod("hide")}))}},{key:"viewOptions",value:function(){return{styles:g.a,reportOptions:y.a.getSelectedOptionsText(this.options.options),imageUrl:l.l.Shared.GenerateCsv,email:this.currentUser.get("email")}}},{key:"onBeforeRender",value:function(){this.spinnerModel.set(p.c.Disabled,!1)}},{key:"name",get:function(){return"GenerateCsvReportView"}},{key:"title",get:function(){return a.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"migrationWizard.generateCsvReport"}},{key:"channelName",get:function(){return c.k.generateUniqueChannelName(this)}},{key:"template",get:function(){return b.a}},{key:"behaviors",get:function(){return[{behaviorClass:u.f,title:a.a.getPhrase(this.lang,"heading"),spinnerButtonOptions:{model:this.spinnerModel=new f.a,saveEvent:"generate:csv",channelName:this.channelName,buttonText:a.a.getPhrase(this.lang,"generateReport"),extraButtonClass:"btn-primary",spinnerOptions:{size:c.r.Small,type:c.s.Light,extraClasses:"mx-auto"}}}]}},{key:"requiredResources",get:function(){return{currentUser:s.b.currentUser}}}])&&v(t.prototype,n),o&&v(t,o),m}(o.a.View)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[47],{1023:function(e,t,n){"use strict";n.d(t,"a",(function(){return p}));var r=n(2),o=n(244);function i(e){return(i="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 a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(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,r=f(e);if(t){var o=f(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return s(this,n)}}function s(e,t){return!t||"object"!==i(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 f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var p=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&&c(e,t)}(s,e);var t,n,r,i=l(s);function s(){return a(this,s),i.apply(this,arguments)}return t=s,(n=[{key:"defaults",value:function(){return e={},t=o.c.Disabled,n=!0,t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e;var e,t,n}}])&&u(t.prototype,n),r&&u(t,r),s}(r.a.Model)},1174:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n(1),o=n(3),i=n(47);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u="migrationWizard.utils",c={getReportOptions:function(){var e;return a(e={},i.d.Migrated,{id:"migrated",type:"homemigrator.le.migration.migrated.report",labelText:o.a.getPhrase(u,"migratedOption")}),a(e,i.d.Remaining,{id:"remaining",type:"homemigrator.le.migration.videos.remaining.report",labelText:o.a.getPhrase(u,"remainingOption")}),a(e,i.d.Errored,{id:"errored",type:"homemigrator.le.migration.error.report",labelText:o.a.getPhrase(u,"erroredOption")}),a(e,i.d.ContentMatched,{id:"content-matched",type:"homemigrator.le.migration.content.matched.report",labelText:o.a.getPhrase(u,"linkedOption")}),e},processValidReportOptions:function(e){var t=this.getReportOptions(),n={};return r.each(r.keys(t),(function(o){r.contains(e,t[o].type)&&(n[o]=t[o])})),n},filterSelectedOptions:function(e){return r.filter(r.keys(e),(function(t){return e[t].selected})).map((function(t){return e[t].id}))},getSelectedOptionsText:function(e){var t=this.getReportOptions();return r.filter(r.keys(t),(function(n){return r.contains(e,t[n].id)})).map((function(e){return t[e].labelText}))}}},1397:function(e,t,n){e.exports={image:"_2A7jn"}},1398:function(e,t,n){var r=n(10);e.exports=(r.default||r).template({1:function(e,t,n,r,o){return" <li>"+e.escapeExpression(e.lambda(t,t))+"</li>\r\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,o){e.propertyIsEnumerable;var i,a=e.lambda,u=e.escapeExpression,c=null!=t?t:e.nullContext||{},l=e.hooks.helperMissing;return'<div class="pb-3 text-center">\r\n <img src="'+u(a(null!=(i=null!=t?t.options:t)?i.imageUrl:i,t))+'" class="'+u(a(null!=(i=null!=(i=null!=t?t.options:t)?i.styles:i)?i.image:i,t))+'" />\r\n</div>\r\n<p class="m-0">'+u((n.lang||t&&t.lang||l).call(c,"reportInfo1",{name:"lang",hash:{},data:o}))+"</p>\r\n<ul>\r\n"+(null!=(i=n.each.call(c,null!=(i=null!=t?t.options:t)?i.reportOptions:i,{name:"each",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o}))?i:"")+'</ul>\r\n<p class="mt-2">'+(null!=(i=(n.lang||t&&t.lang||l).call(c,"reportInfo2",{name:"lang",hash:{email:null!=(i=null!=t?t.options:t)?i.email:i},data:o}))?i:"")+"</p>\r\n"},useData:!0})},1447:function(e,t,n){"use strict";n.r(t),n.d(t,"GenerateCsvReportView",(function(){return S}));var r=n(7),o=n(2),i=n(5),a=n(3),u=n(281),c=n(13),l=n(0),s=n(135),f=n(1023),p=n(244),y=n(1174),h=n(1397),g=n.n(h),m=n(1398),b=n.n(m);function d(e){return(d="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 v(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function O(e,t){return(O=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function w(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,r=R(e);if(t){var o=R(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return k(this,n)}}function k(e,t){return!t||"object"!==d(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 R(e){return(R=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var S=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&&O(e,t)}(m,e);var t,n,o,h=w(m);function m(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,m),h.call(this,e)}return t=m,(n=[{key:"initialize",value:function(){this.migrationVideoDataService=i.a.getInstance(l.g.MigrationVideo,this),this.bindListeners()}},{key:"bindListeners",value:function(){this.listenTo(this.channelName,"generate:csv",this.onClickGenerateCsv)}},{key:"onClickGenerateCsv",value:function(){var e=this;r.Radio.channel(this.channelName).trigger(p.b.ShowSpinner),this.migrationVideoDataService.generateMigrationReportCsv(this.options.options,(function(){return e.triggerMethod("hide")}))}},{key:"viewOptions",value:function(){return{styles:g.a,reportOptions:y.a.getSelectedOptionsText(this.options.options),imageUrl:l.l.Shared.GenerateCsv,email:this.currentUser.get("email")}}},{key:"onBeforeRender",value:function(){this.spinnerModel.set(p.c.Disabled,!1)}},{key:"name",get:function(){return"GenerateCsvReportView"}},{key:"title",get:function(){return a.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"migrationWizard.generateCsvReport"}},{key:"channelName",get:function(){return c.k.generateUniqueChannelName(this)}},{key:"template",get:function(){return b.a}},{key:"behaviors",get:function(){return[{behaviorClass:u.f,title:a.a.getPhrase(this.lang,"heading"),spinnerButtonOptions:{model:this.spinnerModel=new f.a,saveEvent:"generate:csv",channelName:this.channelName,buttonText:a.a.getPhrase(this.lang,"generateReport"),extraButtonClass:"btn-primary",spinnerOptions:{size:c.r.Small,type:c.s.Light,extraClasses:"mx-auto"}}}]}},{key:"requiredResources",get:function(){return{currentUser:s.b.currentUser}}}])&&v(t.prototype,n),o&&v(t,o),m}(o.a.View)}}]);
|
package/dist/scripts/47.chunk.js
CHANGED
|
@@ -347,7 +347,8 @@ var LibraryFolderItemComponent = /*#__PURE__*/function (_Core$Component) {
|
|
|
347
347
|
buttonClass: 'text-light',
|
|
348
348
|
analyticsOptions: {
|
|
349
349
|
location: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_8__["LocationContext"].LibraryTiles
|
|
350
|
-
}
|
|
350
|
+
},
|
|
351
|
+
overrideClasses: true
|
|
351
352
|
}));
|
|
352
353
|
}
|
|
353
354
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/behaviors/draggable-video/DraggableVideoBehavior.ts","webpack://@clickview/library-editor/./src/apps/library-editor/behaviors/draggable-video/draggable-video.scss?83c4","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/behaviors/index.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/components/library-folders/LibraryFolderItem.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/components/library-folders/LibraryFolderListComponent.ts","webpack://@clickview/library-editor/./src/apps/library-editor/components/library-folders/library-folder-item.scss?6e25","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/views/library/Library.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/views/library/LibraryView.ts","webpack://@clickview/library-editor/./src/apps/library-editor/views/library/library.scss?025d"],"names":[],"mappings":"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","file":"scripts/47.chunk.js","sourcesContent":["import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { DevError } from 'libs/common/backbone/errors/DevError';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { ServiceChannels } from 'shared/constants';\r\nimport { VideoCollectionIdentifier } from 'shared/interfaces/VideoCollectionIdentifier';\r\nimport { BulkCheckboxHelper } from 'shared/utils';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { DraggableItemComponent, DragOptions, styles } from 'apps/library-editor/behaviors/shared';\r\nimport { CheckboxTypes } from 'apps/library-editor/constants';\r\n\r\nimport videoStyles from './draggable-video.scss';\r\n\r\ninterface DraggableVideoOptions {\r\n model: Video;\r\n collectionIdentifier: VideoCollectionIdentifier;\r\n selector?: string;\r\n}\r\n\r\nexport class DraggableVideoBehavior extends Core.Behavior {\r\n public options: DraggableVideoOptions;\r\n\r\n public initialize(): void {\r\n if (!this.options.model)\r\n Core.ErrorHelper.throw(new DevError('DraggableVideoBehavior must be passed a Video model'));\r\n\r\n this.listenTo(ServiceChannels.VIDEO_DRAG_DROP, `drag:style:${this.options.model.id}`, this.styleDragStart);\r\n\r\n this.listenTo(ServiceChannels.VIDEO_DRAG_DROP, 'drag:stop', this.styleDragStop);\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.behaviors';\r\n }\r\n\r\n private helper(): any {\r\n const models = this.getVideoModels();\r\n\r\n const draggableItemComponent = new DraggableItemComponent({\r\n text: models.length > 1\r\n ? LanguageService.getPhrase(this.lang, 'videos', { videoCount: models.length })\r\n : models[0].get('name'),\r\n svg: SvgHelper.getSvg(cvSvgLibrary.Play)\r\n });\r\n return draggableItemComponent.render().el;\r\n }\r\n\r\n private getSelector(): JQuery<HTMLElement> {\r\n return this.view.getUI(this.options.selector);\r\n }\r\n\r\n private styleDragStart(): void {\r\n const $el = this.getSelector();\r\n $el.addClass(videoStyles.draggingVideo);\r\n }\r\n\r\n private styleDragStop(): void {\r\n const $el = this.getSelector();\r\n $el.removeClass(videoStyles.draggingVideo);\r\n }\r\n\r\n private start(): void {\r\n let models = this.getVideoModels();\r\n\r\n /**\r\n * This relies on an instance of VideoDragDropService existing\r\n * This instanced should be retreived from the instance manager\r\n * by the application.\r\n */\r\n const channel = Radio.channel(ServiceChannels.VIDEO_DRAG_DROP);\r\n\r\n channel.trigger('drag:start', models, this.options.collectionIdentifier);\r\n _.each(models, m => channel.trigger(`drag:style:${m.id}`));\r\n }\r\n\r\n private stop(): void {\r\n Radio.channel(ServiceChannels.VIDEO_DRAG_DROP)\r\n .trigger('drag:stop');\r\n }\r\n\r\n private getVideoModels(): Core.Model[] {\r\n let models = BulkCheckboxHelper.GetSelectedModels({\r\n key: this.options.collectionIdentifier.toString(),\r\n type: CheckboxTypes.VIDEO_LIST,\r\n collection: this.view.model.collection\r\n });\r\n\r\n if (!_.any(models, m => m.id === this.view.model.id))\r\n models = [this.view.model];\r\n\r\n if (models.length)\r\n return models;\r\n\r\n return [this.view.model];\r\n }\r\n\r\n private getClassMappings(): ObjectHash {\r\n return {\r\n 'ui-draggable': styles.draggable,\r\n 'ui-draggable-disabled': styles.disabled,\r\n 'ui-draggable-handle': styles.handle,\r\n 'ui-draggable-dragging': styles.dragging\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n const $el = this.getSelector();\r\n\r\n const options: JQueryUI.DraggableOptions = {\r\n helper: _.bind(this.helper, this),\r\n start: _.bind(this.start, this),\r\n stop: _.bind(this.stop, this)\r\n };\r\n (options as any).classes = this.getClassMappings();\r\n $el.draggable(_.extend({}, DragOptions, options));\r\n }\r\n\r\n public onBeforeDestroy(): void {\r\n /**\r\n * Because JQuery.UI's draggable is a piece of shit\r\n * it sometimes errors out on 'destroy' if the element has otherwise\r\n * been disposed of before this fire. So we need to first check if\r\n * there is still an instance of $.fn.draggable before we call destroy on it\r\n */\r\n const $el = this.getSelector();\r\n if ($el.draggable('instance'))\r\n $el.draggable('destroy');\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"draggingVideo\":\"cv--draggingVideo--3cCHx\"};","export * from './draggable-folder/DraggableFolderBehavior';\r\nexport * from './draggable-video/DraggableVideoBehavior';\r\nexport * from './droppable/DroppableBehavior';","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \"<a\\r\\n class=\\\"d-block cursor-pointer no-decoration \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.folder : stack1), depth0))\n + \"\\\"\\r\\n style=\\\"background-image: url('\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.imageUrl : stack1), depth0))\n + \"')\\\"\\r\\n>\\r\\n <h3 class=\\\"position-absolute text-white text-center m-0\\\">\"\n + alias3(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</h3>\\r\\n</a>\\r\\n<div class=\\\"actions-region\\\"></div>\";\n},\"useData\":true});","import { Core } from 'libs/common/core';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport LibraryFolderItemTemplate from './LibraryFolderItem.hbs';\r\nimport styles from './library-folder-item.scss';\r\nimport { ImageHelper } from 'shared/utils';\r\nimport { Folder } from 'shared/models/Folder';\r\nimport { Actions, ServiceChannels, AppChannels } from 'shared/constants';\r\nimport { ImageType } from 'shared/enums';\r\nimport { DroppableBehavior, DraggableFolderBehavior } from 'apps/library-editor/behaviors';\r\nimport { VideoCollectionActionsComponent } from 'apps/library-editor/components/video-collection-actions/VideoCollectionActionsComponent';\r\nimport { LocationContext } from 'libs/analytics/interfaces';\r\n\r\ninterface LibraryFolderItemComponentOptions extends Core.ComponentOptions<Folder> {\r\n imageCdnUrl: string;\r\n}\r\n\r\nclass LibraryFolderItemComponent extends Core.Component<Folder> {\r\n public options: LibraryFolderItemComponentOptions;\r\n\r\n constructor(options: LibraryFolderItemComponentOptions) {\r\n super(options);\r\n }\r\n\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 'LibraryFolderItemComponent';\r\n }\r\n\r\n public get template(): string {\r\n return LibraryFolderItemTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'col-3 p-2';\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n a: {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.FOLDER,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n actions: {\r\n el: '.actions-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: DroppableBehavior,\r\n channelNames: [\r\n ServiceChannels.VIDEO_DRAG_DROP,\r\n ServiceChannels.FOLDER_DRAG_DROP\r\n ],\r\n analyticsOptions: {\r\n location: LocationContext.LibraryTiles\r\n }\r\n }, {\r\n behaviorClass: DraggableFolderBehavior\r\n }];\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n const imageUrl = ImageHelper.createFolderThumbnailUrl(this.model.thumbnail, {\r\n fallbackBaseUrl: this.options.imageCdnUrl,\r\n fallbackCategoryName: this.model.get('name'),\r\n type: ImageType.Thumbnails\r\n });\r\n\r\n return {\r\n styles,\r\n imageUrl\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.showChildView('actions', new VideoCollectionActionsComponent({\r\n model: this.model,\r\n extraClasses: `${styles.actions} rounded-circle`,\r\n buttonClass: 'text-light',\r\n analyticsOptions: {\r\n location: LocationContext.LibraryTiles\r\n }\r\n }));\r\n }\r\n}\r\n\r\ninterface LibraryFolderListComponentOptions extends Core.ComponentCollectionOptions {\r\n childOptions: LibraryFolderItemComponentOptions;\r\n}\r\n\r\nexport class LibraryFolderListComponent extends Core.ComponentCollection {\r\n public options: LibraryFolderListComponentOptions;\r\n\r\n constructor(options: LibraryFolderListComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'LibraryFolderListComponent';\r\n }\r\n\r\n public get className(): string {\r\n return 'row';\r\n }\r\n\r\n public get childView(): typeof LibraryFolderItemComponent {\r\n return LibraryFolderItemComponent;\r\n }\r\n\r\n public get childViewOptions(): ObjectHash {\r\n return this.options.childOptions;\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"folder\":\"cv--folder--1MHyt\",\"actions\":\"cv--actions--3-hwy\"};","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;\n\n return \"<h1 class=\\\"h3\\\">\"\n + container.escapeExpression(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</h1>\\r\\n<div class=\\\"folders-region\\\"></div>\\r\\n<div class=\\\"actions-region\\\"></div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { LocationContext } from 'libs/analytics/interfaces';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { EmptyStateBehavior } from 'libs/shared/legacy/behaviors/empty-state/EmptyStateBehavior';\r\nimport { SortType } from 'libs/shared/legacy/enums/SortType';\r\n\r\nimport { Library } from 'shared/models/Library';\r\nimport { Config } from 'shared/models/Config';\r\nimport { ConfigDataServiceHelper } from 'shared/services/ConfigDataService';\r\nimport { DataServices, EmptyStateComponents, DataChannels } from 'shared/constants';\r\nimport { LibraryCollection } from 'shared/collections/LibraryCollection';\r\nimport { FolderCollection } from 'shared/collections/FolderCollection';\r\nimport { EmptyState, PartialLoading } from 'shared/enums';\r\nimport { LibraryFoldersIdentifier } from 'shared/interfaces';\r\n\r\nimport { LibraryFolderListComponent } from 'apps/library-editor/components/library-folders/LibraryFolderListComponent';\r\nimport { LibraryActionsComponent } from 'apps/library-editor/components/library-actions/LibraryActionsComponent';\r\nimport { LibraryDataService } from 'apps/library-editor/services/LibraryDataService';\r\n\r\nimport LibraryTemplate from './Library.hbs';\r\nimport styles from './library.scss';\r\n\r\ninterface LibraryViewOptions extends Core.ViewOptions<Library> {\r\n libraryId: string;\r\n}\r\n\r\nexport class LibraryView extends Core.View<Library> {\r\n public options: LibraryViewOptions;\r\n private libraryDataService: LibraryDataService;\r\n private config: Config;\r\n\r\n private folders: FolderCollection;\r\n private scrollBound: boolean;\r\n private currentIdentifier: LibraryFoldersIdentifier;\r\n\r\n public constructor(options: LibraryViewOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.libraryDataService = InstanceManager.getInstance(DataServices.Library, this);\r\n\r\n this.listenTo(DataChannels.LIBRARY, 'clear:library:folder:cache', () => {\r\n this.folders = null;\r\n this.render();\r\n });\r\n }\r\n\r\n public get name(): string {\r\n return 'LibraryView';\r\n }\r\n\r\n public get title(): string {\r\n return !!this.model && this.model.get('name');\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.library';\r\n }\r\n\r\n public get template(): string {\r\n return LibraryTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return `bg-white px-3 pt-3 pb-2 position-relative ${styles.library}`;\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [\r\n {\r\n behaviorClass: EmptyStateBehavior,\r\n region: 'folders',\r\n type: EmptyState.Library,\r\n shouldRender: () => this.model && !this.model.children.length,\r\n componentOptions: {\r\n libraryId: this.options.libraryId,\r\n moreSvg: SvgHelper.getSvg(cvSvgLibrary.More),\r\n heading: LanguageService.getPhrase(this.lang, 'emptyStateHeading'),\r\n description: LanguageService.getPhrase(this.lang, 'emptyStateInfo', {\r\n moreSvg: `<span class=\"d-inline-block svg-container align-top\">\r\n ${SvgHelper.getSvg(cvSvgLibrary.More)}</span>`\r\n })\r\n },\r\n emptyStateComponents: EmptyStateComponents\r\n }\r\n ];\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n folders: {\r\n el: '.folders-region',\r\n replaceElement: true,\r\n partialLoading: PartialLoading.LibraryFolders\r\n },\r\n actions: {\r\n el: '.actions-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n private renderFolders(): void {\r\n this.showChildView('folders', new LibraryFolderListComponent({\r\n collection: this.folders,\r\n childOptions: {\r\n imageCdnUrl: this.config.get('imageCdnUrl')\r\n }\r\n }));\r\n }\r\n\r\n private renderActions(): void {\r\n this.showChildView('actions', new LibraryActionsComponent({\r\n model: this.model,\r\n extraClasses: `${styles.actions} rounded-circle mr-2 mt-2`,\r\n analyticsOptions: {\r\n location: LocationContext.Banner\r\n }\r\n }));\r\n }\r\n\r\n public get requiredResources(): Core.RequiredResourceHash {\r\n return {\r\n config: ConfigDataServiceHelper.config\r\n };\r\n }\r\n\r\n private bindScrollListener(): void {\r\n if (this.scrollBound) return;\r\n this.scrollBound = true;\r\n\r\n const $window = $(window);\r\n const onScroll = _.debounce(() => {\r\n const isBottom = $window.scrollTop() + $window.height() > this.$el.offset().top + this.$el.height();\r\n\r\n if (!isBottom) return;\r\n\r\n if (!this.currentIdentifier) return;\r\n\r\n const cursors = this.libraryDataService.getLibraryFoldersCursors(this.currentIdentifier);\r\n\r\n if (!cursors || !cursors.next) return;\r\n\r\n this.libraryDataService.getLibraryFolders(this.getNewCollectionIdentifier(cursors.next), data => {\r\n this.folders.add(data.toJSON());\r\n });\r\n }, 333);\r\n\r\n $window.scroll(onScroll);\r\n\r\n /**\r\n * Call onScroll the first time we render, after the view is rendered so we have our height set\r\n */\r\n window.setTimeout(onScroll, 100);\r\n }\r\n\r\n private getNewCollectionIdentifier(cursor?: string): LibraryFoldersIdentifier {\r\n return this.currentIdentifier = new LibraryFoldersIdentifier(this.model.categoryTree.get('id'), SortType.AtoZ, cursor);\r\n }\r\n\r\n public onBeforeRender(): boolean {\r\n if (!this.model) {\r\n this.libraryDataService.getLibraries((data: LibraryCollection) => {\r\n this.model = data.get(this.options.libraryId);\r\n\r\n this.listenTo(this.model, 'change:name', this.render);\r\n\r\n this.render();\r\n });\r\n return;\r\n }\r\n\r\n if (!this.folders) {\r\n this.libraryDataService.getLibraryFolders(this.getNewCollectionIdentifier(), data => {\r\n this.folders = data;\r\n\r\n this.render();\r\n });\r\n }\r\n\r\n return !!this.model && !!this.folders;\r\n }\r\n\r\n public onRender(): void {\r\n this.renderFolders();\r\n this.renderActions();\r\n this.bindScrollListener();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"actions\":\"cv--actions--3vCmp\"};"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/behaviors/draggable-video/DraggableVideoBehavior.ts","webpack://@clickview/library-editor/./src/apps/library-editor/behaviors/draggable-video/draggable-video.scss?2209","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/behaviors/index.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/components/library-folders/LibraryFolderItem.hbs","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/components/library-folders/LibraryFolderListComponent.ts","webpack://@clickview/library-editor/./src/apps/library-editor/components/library-folders/library-folder-item.scss?e529","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/views/library/Library.hbs","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/views/library/LibraryView.ts","webpack://@clickview/library-editor/./src/apps/library-editor/views/library/library.scss?43e8"],"names":[],"mappings":"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","file":"scripts/47.chunk.js","sourcesContent":["import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { Radio } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { DevError } from 'libs/common/backbone/errors/DevError';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport { Video } from 'shared/models/Video';\r\nimport { ServiceChannels } from 'shared/constants';\r\nimport { VideoCollectionIdentifier } from 'shared/interfaces/VideoCollectionIdentifier';\r\nimport { BulkCheckboxHelper } from 'shared/utils';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { DraggableItemComponent, DragOptions, styles } from 'apps/library-editor/behaviors/shared';\r\nimport { CheckboxTypes } from 'apps/library-editor/constants';\r\n\r\nimport videoStyles from './draggable-video.scss';\r\n\r\ninterface DraggableVideoOptions {\r\n model: Video;\r\n collectionIdentifier: VideoCollectionIdentifier;\r\n selector?: string;\r\n}\r\n\r\nexport class DraggableVideoBehavior extends Core.Behavior {\r\n public options: DraggableVideoOptions;\r\n\r\n public initialize(): void {\r\n if (!this.options.model)\r\n Core.ErrorHelper.throw(new DevError('DraggableVideoBehavior must be passed a Video model'));\r\n\r\n this.listenTo(ServiceChannels.VIDEO_DRAG_DROP, `drag:style:${this.options.model.id}`, this.styleDragStart);\r\n\r\n this.listenTo(ServiceChannels.VIDEO_DRAG_DROP, 'drag:stop', this.styleDragStop);\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.behaviors';\r\n }\r\n\r\n private helper(): any {\r\n const models = this.getVideoModels();\r\n\r\n const draggableItemComponent = new DraggableItemComponent({\r\n text: models.length > 1\r\n ? LanguageService.getPhrase(this.lang, 'videos', { videoCount: models.length })\r\n : models[0].get('name'),\r\n svg: SvgHelper.getSvg(cvSvgLibrary.Play)\r\n });\r\n return draggableItemComponent.render().el;\r\n }\r\n\r\n private getSelector(): JQuery<HTMLElement> {\r\n return this.view.getUI(this.options.selector);\r\n }\r\n\r\n private styleDragStart(): void {\r\n const $el = this.getSelector();\r\n $el.addClass(videoStyles.draggingVideo);\r\n }\r\n\r\n private styleDragStop(): void {\r\n const $el = this.getSelector();\r\n $el.removeClass(videoStyles.draggingVideo);\r\n }\r\n\r\n private start(): void {\r\n let models = this.getVideoModels();\r\n\r\n /**\r\n * This relies on an instance of VideoDragDropService existing\r\n * This instanced should be retreived from the instance manager\r\n * by the application.\r\n */\r\n const channel = Radio.channel(ServiceChannels.VIDEO_DRAG_DROP);\r\n\r\n channel.trigger('drag:start', models, this.options.collectionIdentifier);\r\n _.each(models, m => channel.trigger(`drag:style:${m.id}`));\r\n }\r\n\r\n private stop(): void {\r\n Radio.channel(ServiceChannels.VIDEO_DRAG_DROP)\r\n .trigger('drag:stop');\r\n }\r\n\r\n private getVideoModels(): Core.Model[] {\r\n let models = BulkCheckboxHelper.GetSelectedModels({\r\n key: this.options.collectionIdentifier.toString(),\r\n type: CheckboxTypes.VIDEO_LIST,\r\n collection: this.view.model.collection\r\n });\r\n\r\n if (!_.any(models, m => m.id === this.view.model.id))\r\n models = [this.view.model];\r\n\r\n if (models.length)\r\n return models;\r\n\r\n return [this.view.model];\r\n }\r\n\r\n private getClassMappings(): ObjectHash {\r\n return {\r\n 'ui-draggable': styles.draggable,\r\n 'ui-draggable-disabled': styles.disabled,\r\n 'ui-draggable-handle': styles.handle,\r\n 'ui-draggable-dragging': styles.dragging\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n const $el = this.getSelector();\r\n\r\n const options: JQueryUI.DraggableOptions = {\r\n helper: _.bind(this.helper, this),\r\n start: _.bind(this.start, this),\r\n stop: _.bind(this.stop, this)\r\n };\r\n (options as any).classes = this.getClassMappings();\r\n $el.draggable(_.extend({}, DragOptions, options));\r\n }\r\n\r\n public onBeforeDestroy(): void {\r\n /**\r\n * Because JQuery.UI's draggable is a piece of shit\r\n * it sometimes errors out on 'destroy' if the element has otherwise\r\n * been disposed of before this fire. So we need to first check if\r\n * there is still an instance of $.fn.draggable before we call destroy on it\r\n */\r\n const $el = this.getSelector();\r\n if ($el.draggable('instance'))\r\n $el.draggable('destroy');\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"draggingVideo\":\"cv--draggingVideo--3cCHx\"};","export * from './draggable-folder/DraggableFolderBehavior';\r\nexport * from './draggable-video/DraggableVideoBehavior';\r\nexport * from './droppable/DroppableBehavior';","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, alias1=container.propertyIsEnumerable, alias2=container.lambda, alias3=container.escapeExpression;\n\n return \"<a\\r\\n class=\\\"d-block cursor-pointer no-decoration \"\n + alias3(alias2(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.folder : stack1), depth0))\n + \"\\\"\\r\\n style=\\\"background-image: url('\"\n + alias3(alias2(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.imageUrl : stack1), depth0))\n + \"')\\\"\\r\\n>\\r\\n <h3 class=\\\"position-absolute text-white text-center m-0\\\">\"\n + alias3(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</h3>\\r\\n</a>\\r\\n<div class=\\\"actions-region\\\"></div>\";\n},\"useData\":true});","import { Core } from 'libs/common/core';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport LibraryFolderItemTemplate from './LibraryFolderItem.hbs';\r\nimport styles from './library-folder-item.scss';\r\nimport { ImageHelper } from 'shared/utils';\r\nimport { Folder } from 'shared/models/Folder';\r\nimport { Actions, ServiceChannels, AppChannels } from 'shared/constants';\r\nimport { ImageType } from 'shared/enums';\r\nimport { DroppableBehavior, DraggableFolderBehavior } from 'apps/library-editor/behaviors';\r\nimport { VideoCollectionActionsComponent } from 'apps/library-editor/components/video-collection-actions/VideoCollectionActionsComponent';\r\nimport { LocationContext } from 'libs/analytics/interfaces';\r\n\r\ninterface LibraryFolderItemComponentOptions extends Core.ComponentOptions<Folder> {\r\n imageCdnUrl: string;\r\n}\r\n\r\nclass LibraryFolderItemComponent extends Core.Component<Folder> {\r\n public options: LibraryFolderItemComponentOptions;\r\n\r\n constructor(options: LibraryFolderItemComponentOptions) {\r\n super(options);\r\n }\r\n\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 'LibraryFolderItemComponent';\r\n }\r\n\r\n public get template(): string {\r\n return LibraryFolderItemTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return 'col-3 p-2';\r\n }\r\n\r\n public get appLinks(): Core.AppLinkHash {\r\n return {\r\n a: {\r\n application: AppChannels.LIBRARY_EDITOR,\r\n action: Actions.LibraryEditor.FOLDER,\r\n args: [this.model.get('id')]\r\n }\r\n };\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n actions: {\r\n el: '.actions-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [{\r\n behaviorClass: DroppableBehavior,\r\n channelNames: [\r\n ServiceChannels.VIDEO_DRAG_DROP,\r\n ServiceChannels.FOLDER_DRAG_DROP\r\n ],\r\n analyticsOptions: {\r\n location: LocationContext.LibraryTiles\r\n }\r\n }, {\r\n behaviorClass: DraggableFolderBehavior\r\n }];\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n const imageUrl = ImageHelper.createFolderThumbnailUrl(this.model.thumbnail, {\r\n fallbackBaseUrl: this.options.imageCdnUrl,\r\n fallbackCategoryName: this.model.get('name'),\r\n type: ImageType.Thumbnails\r\n });\r\n\r\n return {\r\n styles,\r\n imageUrl\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.showChildView('actions', new VideoCollectionActionsComponent({\r\n model: this.model,\r\n extraClasses: `${styles.actions} rounded-circle`,\r\n buttonClass: 'text-light',\r\n analyticsOptions: {\r\n location: LocationContext.LibraryTiles\r\n },\r\n overrideClasses: true\r\n }));\r\n }\r\n}\r\n\r\ninterface LibraryFolderListComponentOptions extends Core.ComponentCollectionOptions {\r\n childOptions: LibraryFolderItemComponentOptions;\r\n}\r\n\r\nexport class LibraryFolderListComponent extends Core.ComponentCollection {\r\n public options: LibraryFolderListComponentOptions;\r\n\r\n constructor(options: LibraryFolderListComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'LibraryFolderListComponent';\r\n }\r\n\r\n public get className(): string {\r\n return 'row';\r\n }\r\n\r\n public get childView(): typeof LibraryFolderItemComponent {\r\n return LibraryFolderItemComponent;\r\n }\r\n\r\n public get childViewOptions(): ObjectHash {\r\n return this.options.childOptions;\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"folder\":\"cv--folder--1MHyt\",\"actions\":\"cv--actions--3-hwy\"};","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;\n\n return \"<h1 class=\\\"h3\\\">\"\n + container.escapeExpression(((helper = (helper = helpers.name || (depth0 != null ? depth0.name : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === \"function\" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{\"name\":\"name\",\"hash\":{},\"data\":data}) : helper)))\n + \"</h1>\\r\\n<div class=\\\"folders-region\\\"></div>\\r\\n<div class=\\\"actions-region\\\"></div>\";\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { LocationContext } from 'libs/analytics/interfaces';\r\nimport { SvgHelper, cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { EmptyStateBehavior } from 'libs/shared/legacy/behaviors/empty-state/EmptyStateBehavior';\r\nimport { SortType } from 'libs/shared/legacy/enums/SortType';\r\n\r\nimport { Library } from 'shared/models/Library';\r\nimport { Config } from 'shared/models/Config';\r\nimport { ConfigDataServiceHelper } from 'shared/services/ConfigDataService';\r\nimport { DataServices, EmptyStateComponents, DataChannels } from 'shared/constants';\r\nimport { LibraryCollection } from 'shared/collections/LibraryCollection';\r\nimport { FolderCollection } from 'shared/collections/FolderCollection';\r\nimport { EmptyState, PartialLoading } from 'shared/enums';\r\nimport { LibraryFoldersIdentifier } from 'shared/interfaces';\r\n\r\nimport { LibraryFolderListComponent } from 'apps/library-editor/components/library-folders/LibraryFolderListComponent';\r\nimport { LibraryActionsComponent } from 'apps/library-editor/components/library-actions/LibraryActionsComponent';\r\nimport { LibraryDataService } from 'apps/library-editor/services/LibraryDataService';\r\n\r\nimport LibraryTemplate from './Library.hbs';\r\nimport styles from './library.scss';\r\n\r\ninterface LibraryViewOptions extends Core.ViewOptions<Library> {\r\n libraryId: string;\r\n}\r\n\r\nexport class LibraryView extends Core.View<Library> {\r\n public options: LibraryViewOptions;\r\n private libraryDataService: LibraryDataService;\r\n private config: Config;\r\n\r\n private folders: FolderCollection;\r\n private scrollBound: boolean;\r\n private currentIdentifier: LibraryFoldersIdentifier;\r\n\r\n public constructor(options: LibraryViewOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.libraryDataService = InstanceManager.getInstance(DataServices.Library, this);\r\n\r\n this.listenTo(DataChannels.LIBRARY, 'clear:library:folder:cache', () => {\r\n this.folders = null;\r\n this.render();\r\n });\r\n }\r\n\r\n public get name(): string {\r\n return 'LibraryView';\r\n }\r\n\r\n public get title(): string {\r\n return !!this.model && this.model.get('name');\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.library';\r\n }\r\n\r\n public get template(): string {\r\n return LibraryTemplate;\r\n }\r\n\r\n public get className(): string {\r\n return `bg-white px-3 pt-3 pb-2 position-relative ${styles.library}`;\r\n }\r\n\r\n public get behaviors(): any[] {\r\n return [\r\n {\r\n behaviorClass: EmptyStateBehavior,\r\n region: 'folders',\r\n type: EmptyState.Library,\r\n shouldRender: () => this.model && !this.model.children.length,\r\n componentOptions: {\r\n libraryId: this.options.libraryId,\r\n moreSvg: SvgHelper.getSvg(cvSvgLibrary.More),\r\n heading: LanguageService.getPhrase(this.lang, 'emptyStateHeading'),\r\n description: LanguageService.getPhrase(this.lang, 'emptyStateInfo', {\r\n moreSvg: `<span class=\"d-inline-block svg-container align-top\">\r\n ${SvgHelper.getSvg(cvSvgLibrary.More)}</span>`\r\n })\r\n },\r\n emptyStateComponents: EmptyStateComponents\r\n }\r\n ];\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n folders: {\r\n el: '.folders-region',\r\n replaceElement: true,\r\n partialLoading: PartialLoading.LibraryFolders\r\n },\r\n actions: {\r\n el: '.actions-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n private renderFolders(): void {\r\n this.showChildView('folders', new LibraryFolderListComponent({\r\n collection: this.folders,\r\n childOptions: {\r\n imageCdnUrl: this.config.get('imageCdnUrl')\r\n }\r\n }));\r\n }\r\n\r\n private renderActions(): void {\r\n this.showChildView('actions', new LibraryActionsComponent({\r\n model: this.model,\r\n extraClasses: `${styles.actions} rounded-circle mr-2 mt-2`,\r\n analyticsOptions: {\r\n location: LocationContext.Banner\r\n }\r\n }));\r\n }\r\n\r\n public get requiredResources(): Core.RequiredResourceHash {\r\n return {\r\n config: ConfigDataServiceHelper.config\r\n };\r\n }\r\n\r\n private bindScrollListener(): void {\r\n if (this.scrollBound) return;\r\n this.scrollBound = true;\r\n\r\n const $window = $(window);\r\n const onScroll = _.debounce(() => {\r\n const isBottom = $window.scrollTop() + $window.height() > this.$el.offset().top + this.$el.height();\r\n\r\n if (!isBottom) return;\r\n\r\n if (!this.currentIdentifier) return;\r\n\r\n const cursors = this.libraryDataService.getLibraryFoldersCursors(this.currentIdentifier);\r\n\r\n if (!cursors || !cursors.next) return;\r\n\r\n this.libraryDataService.getLibraryFolders(this.getNewCollectionIdentifier(cursors.next), data => {\r\n this.folders.add(data.toJSON());\r\n });\r\n }, 333);\r\n\r\n $window.scroll(onScroll);\r\n\r\n /**\r\n * Call onScroll the first time we render, after the view is rendered so we have our height set\r\n */\r\n window.setTimeout(onScroll, 100);\r\n }\r\n\r\n private getNewCollectionIdentifier(cursor?: string): LibraryFoldersIdentifier {\r\n return this.currentIdentifier = new LibraryFoldersIdentifier(this.model.categoryTree.get('id'), SortType.AtoZ, cursor);\r\n }\r\n\r\n public onBeforeRender(): boolean {\r\n if (!this.model) {\r\n this.libraryDataService.getLibraries((data: LibraryCollection) => {\r\n this.model = data.get(this.options.libraryId);\r\n\r\n this.listenTo(this.model, 'change:name', this.render);\r\n\r\n this.render();\r\n });\r\n return;\r\n }\r\n\r\n if (!this.folders) {\r\n this.libraryDataService.getLibraryFolders(this.getNewCollectionIdentifier(), data => {\r\n this.folders = data;\r\n\r\n this.render();\r\n });\r\n }\r\n\r\n return !!this.model && !!this.folders;\r\n }\r\n\r\n public onRender(): void {\r\n this.renderFolders();\r\n this.renderActions();\r\n this.bindScrollListener();\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"actions\":\"cv--actions--3vCmp\"};"],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[48],{
|
|
1
|
+
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[48],{1023:function(e,t,n){"use strict";n.d(t,"a",(function(){return h}));var r=n(2),i=n(244);function o(e){return(o="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 a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(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,r=f(e);if(t){var i=f(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return u(this,n)}}function u(e,t){return!t||"object"!==o(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 f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var h=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&&l(e,t)}(u,e);var t,n,r,o=s(u);function u(){return a(this,u),o.apply(this,arguments)}return t=u,(n=[{key:"defaults",value:function(){return e={},t=i.c.Disabled,n=!0,t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e;var e,t,n}}])&&c(t.prototype,n),r&&c(t,r),u}(r.a.Model)},1284:function(e,t,n){var r=n(10);e.exports=(r.default||r).template({1:function(e,t,n,r,i){var o;e.propertyIsEnumerable;return(null!=(o=e.lambda(null!=(o=null!=t?t.options:t)?o.spinnerEl:o,t))?o:"")+"\r\n"},3:function(e,t,n,r,i){e.propertyIsEnumerable;var o,a=e.lambda,c=e.escapeExpression;return'<div class="pb-3 text-center">\r\n <img src="'+c(a(null!=(o=null!=t?t.options:t)?o.imageUrl:o,t))+'" class="'+c(a(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.image:o,t))+'" />\r\n</div>\r\n<p class="m-0">'+(null!=(o=(n.lang||t&&t.lang||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"info",{name:"lang",hash:{email:null!=(o=null!=t?t.options:t)?o.email:o,name:null!=t?t.name:t},data:i}))?o:"")+"</p>\r\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,i){var o;e.propertyIsEnumerable;return null!=(o=n.unless.call(null!=t?t:e.nullContext||{},null!=(o=null!=t?t.options:t)?o.dataFetched:o,{name:"unless",hash:{},fn:e.program(1,i,0),inverse:e.program(3,i,0),data:i}))?o:""},useData:!0})},1285:function(e,t,n){e.exports={image:"J9jn_"}},1418:function(e,t,n){"use strict";n.r(t),n.d(t,"GeneratePdfView",(function(){return E}));var r=n(7),i=n(2),o=n(5),a=n(3),c=n(4),l=n(42),s=n(37),u=n(281),f=n(244),h=n(1023),p=n(135),y=n(0),d=n(13),b=n(191),g=n(1284),m=n.n(g),v=n(1285),w=n.n(v);function P(e){return(P="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 r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function k(e,t){return(k=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function S(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,r=D(e);if(t){var i=D(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return _(this,n)}}function _(e,t){return!t||"object"!==P(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 D(e){return(D=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var E=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&&k(e,t)}(P,e);var t,n,g,v=S(P);function P(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,P),v.call(this,e)}return t=P,(n=[{key:"initialize",value:function(){this.collectionIdentifier=this.options.collectionIdentifier,this.libraryDataService=o.a.getInstance(y.g.Library,this),this.videoDataService=o.a.getInstance(y.g.Video,this),this.exportDataService=o.a.getInstance(y.g.Export,this),this.bindListeners()}},{key:"bindListeners",value:function(){var e=this;this.listenTo(this.channelName,"generate:pdf",this.onClickGeneratePdf),this.listenTo(y.e.LIBRARY,"".concat(y.f.FOLDER,":").concat(this.collectionIdentifier.id,":sync"),this.render),this.listenTo(y.e.VIDEO,"".concat(this.collectionIdentifier.toString(),":sync"),this.render),this.listenTo(y.e.EXPORT,"".concat(y.f.GENERATE_COLLECTION_PDF,":").concat(this.collectionIdentifier.id,":sync"),(function(){return e.triggerMethod("hide")}))}},{key:"onClickGeneratePdf",value:function(){this.hasDataFetched()&&(r.Radio.channel(this.channelName).trigger(f.b.ShowSpinner),this.exportDataService.generateCollectionPdf(this.library.id,this.collectionIdentifier.id,this.currentUser,this.collectionIdentifier.sort),this.logAction(this.collectionIdentifier.id,this.collectionIdentifier.sort))}},{key:"fetchData",value:function(){var e=this;this.videos=this.videoDataService.getCollectionVideos(this.collectionIdentifier),this.model=this.libraryDataService.getFolder(this.collectionIdentifier.id),this.library||this.libraryDataService.getLibraries((function(t){e.library=d.f.getLibrary(e.collectionIdentifier.id,t),e.render()}))}},{key:"logAction",value:function(e,t){var n={location:c.k.Popup,actionType:c.q.Create,entity:c.e.PDF,workflowPhase:c.r.Complete},r={id:e,sort:s.a[t]};l.a.logUserAction(r,n)}},{key:"hasDataFetched",value:function(){return!!this.model&&!!this.videos&&!!this.library}},{key:"onBeforeRender",value:function(){var e=this;return this.fetchData(),!!this.hasDataFetched()&&(this.videos&&!this.videos.length?(window.setTimeout((function(){e.triggerMethod("hide"),i.a.ErrorHelper.throw(new b.a(a.a.getPhrase(e.lang,"errorHeading")))}),y.s.POPUP_FADE_TIMEOUT),!1):(this.hasDataFetched()&&this.spinnerModel.set(f.c.Disabled,!1),!0))}},{key:"viewOptions",value:function(){return{dataFetched:this.hasDataFetched(),spinnerEl:d.q.getSpinner({size:d.r.Large,extraClasses:"mx-auto"}),email:this.currentUser.get("email"),imageUrl:y.l.Shared.GeneratePdf,styles:w.a}}},{key:"name",get:function(){return"GeneratePdfView"}},{key:"title",get:function(){return a.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"libraryEditor.generatePdf"}},{key:"template",get:function(){return m.a}},{key:"channelName",get:function(){return d.k.generateUniqueChannelName(this)}},{key:"behaviors",get:function(){return[{behaviorClass:u.f,title:a.a.getPhrase(this.lang,"heading"),spinnerButtonOptions:{model:this.spinnerModel=new h.a,saveEvent:"generate:pdf",channelName:this.channelName,buttonText:a.a.getPhrase(this.lang,"generate"),extraButtonClass:"btn-primary",spinnerOptions:{size:d.r.Small,type:d.s.Light,extraClasses:"mx-auto"}}}]}},{key:"requiredResources",get:function(){return{currentUser:p.b.currentUser}}}])&&O(t.prototype,n),g&&O(t,g),P}(i.a.View)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[48],{1023:function(e,t,n){"use strict";n.d(t,"a",(function(){return h}));var r=n(2),i=n(244);function o(e){return(o="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 a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(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,r=f(e);if(t){var i=f(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return u(this,n)}}function u(e,t){return!t||"object"!==o(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 f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var h=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&&l(e,t)}(u,e);var t,n,r,o=s(u);function u(){return a(this,u),o.apply(this,arguments)}return t=u,(n=[{key:"defaults",value:function(){return e={},t=i.c.Disabled,n=!0,t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e;var e,t,n}}])&&c(t.prototype,n),r&&c(t,r),u}(r.a.Model)},1284:function(e,t,n){var r=n(10);e.exports=(r.default||r).template({1:function(e,t,n,r,i){var o;e.propertyIsEnumerable;return(null!=(o=e.lambda(null!=(o=null!=t?t.options:t)?o.spinnerEl:o,t))?o:"")+"\r\n"},3:function(e,t,n,r,i){e.propertyIsEnumerable;var o,a=e.lambda,c=e.escapeExpression;return'<div class="pb-3 text-center">\r\n <img src="'+c(a(null!=(o=null!=t?t.options:t)?o.imageUrl:o,t))+'" class="'+c(a(null!=(o=null!=(o=null!=t?t.options:t)?o.styles:o)?o.image:o,t))+'" />\r\n</div>\r\n<p class="m-0">'+(null!=(o=(n.lang||t&&t.lang||e.hooks.helperMissing).call(null!=t?t:e.nullContext||{},"info",{name:"lang",hash:{email:null!=(o=null!=t?t.options:t)?o.email:o,name:null!=t?t.name:t},data:i}))?o:"")+"</p>\r\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,r,i){var o;e.propertyIsEnumerable;return null!=(o=n.unless.call(null!=t?t:e.nullContext||{},null!=(o=null!=t?t.options:t)?o.dataFetched:o,{name:"unless",hash:{},fn:e.program(1,i,0),inverse:e.program(3,i,0),data:i}))?o:""},useData:!0})},1285:function(e,t,n){e.exports={image:"J9jn_"}},1418:function(e,t,n){"use strict";n.r(t),n.d(t,"GeneratePdfView",(function(){return E}));var r=n(7),i=n(2),o=n(5),a=n(3),c=n(4),l=n(42),s=n(37),u=n(281),f=n(244),h=n(1023),p=n(135),y=n(0),d=n(13),b=n(191),g=n(1284),m=n.n(g),v=n(1285),w=n.n(v);function P(e){return(P="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 r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function k(e,t){return(k=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function S(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,r=D(e);if(t){var i=D(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return _(this,n)}}function _(e,t){return!t||"object"!==P(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 D(e){return(D=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var E=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&&k(e,t)}(P,e);var t,n,g,v=S(P);function P(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,P),v.call(this,e)}return t=P,(n=[{key:"initialize",value:function(){this.collectionIdentifier=this.options.collectionIdentifier,this.libraryDataService=o.a.getInstance(y.g.Library,this),this.videoDataService=o.a.getInstance(y.g.Video,this),this.exportDataService=o.a.getInstance(y.g.Export,this),this.bindListeners()}},{key:"bindListeners",value:function(){var e=this;this.listenTo(this.channelName,"generate:pdf",this.onClickGeneratePdf),this.listenTo(y.e.LIBRARY,"".concat(y.f.FOLDER,":").concat(this.collectionIdentifier.id,":sync"),this.render),this.listenTo(y.e.VIDEO,"".concat(this.collectionIdentifier.toString(),":sync"),this.render),this.listenTo(y.e.EXPORT,"".concat(y.f.GENERATE_COLLECTION_PDF,":").concat(this.collectionIdentifier.id,":sync"),(function(){return e.triggerMethod("hide")}))}},{key:"onClickGeneratePdf",value:function(){this.hasDataFetched()&&(r.Radio.channel(this.channelName).trigger(f.b.ShowSpinner),this.exportDataService.generateCollectionPdf(this.library.id,this.collectionIdentifier.id,this.currentUser,this.collectionIdentifier.sort),this.logAction(this.collectionIdentifier.id,this.collectionIdentifier.sort))}},{key:"fetchData",value:function(){var e=this;this.videos=this.videoDataService.getCollectionVideos(this.collectionIdentifier),this.model=this.libraryDataService.getFolder(this.collectionIdentifier.id),this.library||this.libraryDataService.getLibraries((function(t){e.library=d.f.getLibrary(e.collectionIdentifier.id,t),e.render()}))}},{key:"logAction",value:function(e,t){var n={location:c.k.Popup,actionType:c.q.Create,entity:c.e.PDF,workflowPhase:c.r.Complete},r={id:e,sort:s.a[t]};l.a.logUserAction(r,n)}},{key:"hasDataFetched",value:function(){return!!this.model&&!!this.videos&&!!this.library}},{key:"onBeforeRender",value:function(){var e=this;return this.fetchData(),!!this.hasDataFetched()&&(this.videos&&!this.videos.length?(window.setTimeout((function(){e.triggerMethod("hide"),i.a.ErrorHelper.throw(new b.a(a.a.getPhrase(e.lang,"errorHeading")))}),y.s.POPUP_FADE_TIMEOUT),!1):(this.hasDataFetched()&&this.spinnerModel.set(f.c.Disabled,!1),!0))}},{key:"viewOptions",value:function(){return{dataFetched:this.hasDataFetched(),spinnerEl:d.q.getSpinner({size:d.r.Large,extraClasses:"mx-auto"}),email:this.currentUser.get("email"),imageUrl:y.l.Shared.GeneratePdf,styles:w.a}}},{key:"name",get:function(){return"GeneratePdfView"}},{key:"title",get:function(){return a.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"libraryEditor.generatePdf"}},{key:"template",get:function(){return m.a}},{key:"channelName",get:function(){return d.k.generateUniqueChannelName(this)}},{key:"behaviors",get:function(){return[{behaviorClass:u.f,title:a.a.getPhrase(this.lang,"heading"),spinnerButtonOptions:{model:this.spinnerModel=new h.a,saveEvent:"generate:pdf",channelName:this.channelName,buttonText:a.a.getPhrase(this.lang,"generate"),extraButtonClass:"btn-primary",spinnerOptions:{size:d.r.Small,type:d.s.Light,extraClasses:"mx-auto"}}}]}},{key:"requiredResources",get:function(){return{currentUser:p.b.currentUser}}}])&&O(t.prototype,n),g&&O(t,g),P}(i.a.View)}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/components/suggest-edit/SuggestEdit.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/components/suggest-edit/SuggestEditComponent.ts","webpack://@clickview/library-editor/./src/apps/library-editor/components/suggest-edit/suggest-edit.scss?b993","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/views/suggest-an-edit/SuggestAnEdit.hbs","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/library-editor/views/suggest-an-edit/SuggestAnEditView.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/notifications/utils/Constants.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/notifications/utils/NotificationsHelper.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/apps/notifications/utils/index.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/components/dropdown/DropdownComponentCollection.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/models/DisabledSpinnerModel.ts","file://C:/ClickView Projects/@clickview/packages/projects/library-editor/src/shared/models/Metadata.ts"],"names":[],"mappings":"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","file":"scripts/48.chunk.js","sourcesContent":["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, alias3=container.lambda;\n\n return \"<p class=\\\"font-weight-bold mb-0\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"currentType\",{\"name\":\"lang\",\"hash\":{\"metadataType\":((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.metadataType : stack1)},\"data\":data}))\n + \"</p>\\r\\n<p class=\\\"mb-3 \"\n + alias2(alias3(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.metadataValue : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias3(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.metadataValue : stack1), depth0)) != null ? stack1 : \"\")\n + \"</p>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return \" <textarea\\r\\n id=\\\"suggest-edit\\\"\\r\\n placeholder=\\\"\"\n + container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.suggestionPlaceholder : stack1), depth0))\n + \"\\\"\\r\\n class=\\\"form-control\\\"\\r\\n name=\\\"suggestion\\\"\\r\\n ></textarea>\\r\\n <div class=\\\"form-feedback\\\"></div>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=container.escapeExpression;\n\n return ((stack1 = helpers.unless.call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.isOtherType : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n<div class=\\\"dropdown-divider\\\"></div>\\r\\n\\r\\n<div class=\\\"form-group\\\">\\r\\n <label for=\\\"suggest-edit\\\" class=\\\"font-weight-bold\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"suggestionSubheading\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</label>\\r\\n <div class=\\\"rating-select-region\\\"></div>\\r\\n <div class=\\\"rating-form-feedback invalid-feedback\\\"></div>\\r\\n\"\n + ((stack1 = helpers.unless.call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.useRatingSelect : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"</div>\\r\\n\\r\\n<div class=\\\"form-group\\\">\\r\\n <label for=\\\"reason-for-edit\\\" class=\\\"font-weight-bold\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"reasoningSubheading\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</label>\\r\\n <textarea\\r\\n id=\\\"reason-for-edit\\\"\\r\\n placeholder=\\\"\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"reasoningPlaceholder\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\\"\\r\\n class=\\\"form-control\\\"\\r\\n name=\\\"reason\\\"\\r\\n ></textarea>\\r\\n <div class=\\\"form-feedback\\\"></div>\\r\\n</div>\";\n},\"useData\":true});","import { ObjectHash, Validation } from 'backbone';\r\nimport * as moment from 'moment';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { TimeType } from 'shared/enums';\r\nimport { SelectRatingComponent } from 'shared/components/edit-video/select-rating/SelectRatingComponent';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { Rating } from 'shared/models/Rating';\r\n\r\nimport { MetadataType } from 'apps/library-editor/constants';\r\nimport { VideoDetailsHelper } from 'apps/library-editor/utils';\r\n\r\nimport SuggestEditTemplate from './SuggestEdit.hbs';\r\nimport styles from './suggest-edit.scss';\r\n\r\ninterface SuggestEditComponentOptions extends Core.ComponentOptions {\r\n metadataType: MetadataType;\r\n metadataValue?: any;\r\n ratings: RatingCollection;\r\n currentRating: Rating;\r\n ratingValidationMessage?: string;\r\n}\r\n\r\nexport class SuggestEditComponent extends Core.Component {\r\n public options: SuggestEditComponentOptions;\r\n\r\n public constructor(options: SuggestEditComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'SuggestEditComponent';\r\n }\r\n\r\n public get template(): string {\r\n return SuggestEditTemplate;\r\n }\r\n\r\n public get tagName(): string {\r\n return 'form';\r\n }\r\n\r\n public get className(): string {\r\n return 'mt-3';\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.suggestEdit';\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n ratingSelect: {\r\n el: '.rating-select-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public get bindings(): ObjectHash {\r\n return {\r\n '[name=suggestion]': {\r\n observe: 'suggestion',\r\n setOptions: { validate: true }\r\n },\r\n '[name=reason]': {\r\n observe: 'reason',\r\n setOptions: { validate: true }\r\n }\r\n };\r\n }\r\n\r\n public get elements(): ObjectHash {\r\n return {\r\n ratingValidation: '.rating-form-feedback'\r\n };\r\n }\r\n\r\n private getMetadataValue(): string {\r\n if (this.options.metadataType === MetadataType.BroadcastDate) {\r\n if (!this.options.metadataValue)\r\n return LanguageService.getPhrase(this.lang, 'noMetadataValue');\r\n\r\n return moment(this.options.metadataValue).format(TimeType.FULL_YEAR);\r\n }\r\n\r\n if (this.options.metadataValue instanceof Core.Collection) {\r\n if (!this.options.metadataValue.length)\r\n return LanguageService.getPhrase(this.lang, 'noMetadataValue');\r\n\r\n return this.options.metadataValue.map((value: Core.Model) => value.get('name')).join(', ');\r\n }\r\n\r\n return this.options.metadataValue || LanguageService.getPhrase(this.lang, 'noMetadataValue');\r\n }\r\n\r\n private getSuggestionPlaceholder(): string {\r\n return this.options.metadataType === MetadataType.Other\r\n ? LanguageService.getPhrase(this.lang, 'otherSuggestionPlaceholder')\r\n : LanguageService.getPhrase(this.lang, 'suggestionPlaceholder', {\r\n metadataType: VideoDetailsHelper.translateMetadataName(this.options.metadataType).toLowerCase()\r\n });\r\n }\r\n\r\n private renderRatingSelect(): void {\r\n if (this.options.ratingValidationMessage) {\r\n this.getUI('ratingValidation').text(this.options.ratingValidationMessage).attr('style', 'display: block;');\r\n } else {\r\n this.getUI('ratingValidation').hide();\r\n }\r\n\r\n if (this.options.metadataType !== MetadataType.Rating)\r\n return;\r\n\r\n this.showChildView('ratingSelect', new SelectRatingComponent({\r\n model: this.options.currentRating,\r\n collection: this.options.ratings,\r\n parentChannelName: this.options.channelName,\r\n hideHeaderText: true,\r\n hideRemove: true\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n metadataValue: this.getMetadataValue(),\r\n useRatingSelect: this.options.metadataType === MetadataType.Rating,\r\n isOtherType: this.options.metadataType === MetadataType.Other,\r\n metadataType: VideoDetailsHelper.translateMetadataName(this.options.metadataType).toLowerCase(),\r\n suggestionPlaceholder: this.getSuggestionPlaceholder()\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderRatingSelect();\r\n\r\n this.stickit();\r\n Validation.bind(this);\r\n }\r\n\r\n public onDestroy(): void {\r\n this.unstickit();\r\n Validation.unbind(this);\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"metadataValue\":\"cv--metadataValue--3nkrW\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=container.escapeExpression;\n\n return \"<p>\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"guidelines\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n<p class=\\\"font-weight-bold mb-1\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"dropdownHeading\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n<div class=\\\"metadata-dropdown-region position-relative\\\"></div>\\r\\n<div class=\\\"suggest-edit-region\\\"></div>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return ((stack1 = container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.spinnerEl : stack1), depth0)) != null ? stack1 : \"\")\n + \"\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return ((stack1 = helpers[\"if\"].call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.dataFetched : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\");\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { Core } from 'libs/common/core';\r\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\r\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { NotificationDataService } from 'libs/shared/apps/notifications/services/NotificationDataService';\r\nimport { SuggestionDescriptor, LocationContext, UserAction, EntityType } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport { RadioChannelHelper, VideoHelper, CollectionHelpers, SpinnerHelper, SpinnerSize } from 'shared/utils';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Metadata } from 'shared/models/Metadata';\r\nimport { User } from 'shared/models/User';\r\nimport { Rating } from 'shared/models/Rating';\r\nimport { Config } from 'shared/models/Config';\r\nimport { DisabledSpinnerModel } from 'shared/models/DisabledSpinnerModel';\r\nimport { UserDataServiceHelper } from 'shared/services/UserDataService';\r\nimport { ConfigDataServiceHelper } from 'shared/services/ConfigDataService';\r\nimport { DataServices, DataChannels, DataPrefixes } from 'shared/constants';\r\nimport { MetadataCollection } from 'shared/collections/MetadataCollection';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { SelectComponent } from 'shared/components/select/SelectComponent';\r\nimport { SpinnerButtonModelAttributes } from 'shared/components/spinner-button/SpinnerButtonComponent';\r\nimport { PopupBehavior } from 'shared/behaviors';\r\nimport { MasterObjectTypes } from 'shared/enums';\r\n\r\nimport { VideoDataService } from 'apps/library-editor/services/VideoDataService';\r\nimport { RatingsDataService } from 'apps/library-editor/services/RatingsDataService';\r\nimport { SuggestEditComponent } from 'apps/library-editor/components/suggest-edit/SuggestEditComponent';\r\nimport { MetadataTypes, MetadataType } from 'apps/library-editor/constants';\r\nimport { SuggestEditValidation, SuggestEditRatingValidation, VideoDetailsHelper } from 'apps/library-editor/utils';\r\nimport { NotificationsHelper } from 'apps/notifications/utils';\r\n\r\nimport SuggestAnEditTemplate from './SuggestAnEdit.hbs';\r\n\r\ninterface SuggestAnEditViewOptions extends Core.ViewOptions {\r\n videoId: string;\r\n metadata?: string;\r\n}\r\n\r\nexport class SuggestAnEditView extends Core.View {\r\n public options: SuggestAnEditViewOptions;\r\n\r\n public model: Video;\r\n private selectedMetadata: Metadata;\r\n private spinnerModel: DisabledSpinnerModel;\r\n\r\n private ratingCollection: RatingCollection;\r\n private metadataCollection: MetadataCollection;\r\n\r\n private videoDataService: VideoDataService;\r\n private ratingsDataService: RatingsDataService;\r\n private notificationDataService: NotificationDataService;\r\n\r\n private currentUser: User;\r\n private config: Config;\r\n\r\n public constructor(options: SuggestAnEditViewOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.getViewModel();\r\n\r\n this.videoDataService = InstanceManager.getInstance(DataServices.Video, this);\r\n this.ratingsDataService = InstanceManager.getInstance(DataServices.Ratings, this);\r\n this.notificationDataService = InstanceManager.getInstance(DataServices.Notifications, this);\r\n\r\n this.selectedMetadata = new Metadata();\r\n this.metadataCollection = this.getMetadataCollection();\r\n\r\n this.bindListeners();\r\n }\r\n\r\n public get name(): string {\r\n return 'SuggestAnEditView';\r\n }\r\n\r\n public get template(): string {\r\n return SuggestAnEditTemplate;\r\n }\r\n\r\n public get tagName(): string {\r\n return 'form';\r\n }\r\n\r\n public get className(): string {\r\n return 'form-group';\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.suggestAnEdit';\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 channelName(): string {\r\n return RadioChannelHelper.generateUniqueChannelName(this);\r\n }\r\n\r\n public get viewModelName(): string {\r\n return `${this.name}:${this.options.videoId}`;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n dropdown: {\r\n el: '.metadata-dropdown-region',\r\n replaceElement: false\r\n },\r\n suggestEdit: {\r\n el: '.suggest-edit-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: PopupBehavior,\r\n title: LanguageService.getPhrase(this.lang, 'heading'),\r\n spinnerButtonOptions: {\r\n model: this.spinnerModel = new DisabledSpinnerModel(),\r\n channelName: this.channelName,\r\n buttonText: LanguageService.getPhrase(this.lang, 'submit'),\r\n onClick: (e: JQuery.Event) => this.onSubmit(e)\r\n }\r\n }\r\n ];\r\n }\r\n\r\n public get requiredResources(): Core.RequiredResourceHash {\r\n return {\r\n config: ConfigDataServiceHelper.config,\r\n currentUser: UserDataServiceHelper.currentUser\r\n };\r\n }\r\n\r\n private bindListeners(): void {\r\n this.listenTo(this.channelName, 'select:option:selected', this.onMetadataSelect);\r\n this.listenTo(this.channelName, 'select:rating', this.onSelectRating);\r\n this.listenTo(DataChannels.VIDEO, `${DataPrefixes.VIDEOS}:${this.options.videoId}:sync`, this.render);\r\n this.listenTo(DataChannels.NOTIFICATIONS, `${DataPrefixes.SUGGEST_EDIT}:error`, this.onError);\r\n }\r\n\r\n private onSubmit(e: JQuery.Event): void {\r\n const isValid = this.validateForm();\r\n if (!isValid)\r\n return;\r\n\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.ShowSpinner, true);\r\n\r\n const suggestion = this.selectedMetadata.get('metadataType') === MetadataType.Rating\r\n ? this.viewModel.get('ratingSuggestion')\r\n : this.viewModel.get('suggestion');\r\n\r\n const groupId = this.config.get('suggestEditMetadataGroupId');\r\n\r\n const data = NotificationsHelper.createSuggestEditNotification({\r\n groupId,\r\n countryCode: this.currentUser.get('countryCode'),\r\n video: this.model.toJSON(),\r\n user: this.currentUser.toJSON(),\r\n property: this.selectedMetadata.get('metadataType').toLowerCase(),\r\n suggestion,\r\n reason: this.viewModel.get('reason'),\r\n currentValue: this.selectedMetadata.get('metadataValue')\r\n });\r\n\r\n this.notificationDataService.suggestEdit(data, () => {\r\n this.triggerMethod('hide');\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.ShowSpinner, false);\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.Disabled, true);\r\n });\r\n\r\n this.logAction();\r\n\r\n this.viewModel.clear();\r\n }\r\n\r\n private onError(): void {\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.ShowSpinner, false);\r\n }\r\n\r\n private onMetadataSelect(metadata: Metadata): void {\r\n this.selectMetadata(metadata);\r\n this.renderSuggestEdit();\r\n }\r\n\r\n private onSelectRating(rating: Rating): void {\r\n /**\r\n * A field separate to `suggestion` is used for ratings so that the inputs for\r\n * the other suggestions can be persisted across changes to the metadata selection\r\n * without interference from selecting a rating.\r\n */\r\n this.viewModel.set('ratingSuggestion', rating.get('name'));\r\n this.renderSuggestEdit();\r\n }\r\n\r\n private selectMetadata(metadata: Metadata): void {\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.Disabled, false);\r\n\r\n CollectionHelpers.setSelected(metadata.get('id'), this.metadataCollection);\r\n\r\n this.selectedMetadata.set({\r\n metadataType: metadata.get('name'),\r\n metadataValue: metadata.get('name') !== MetadataType.Other\r\n ? this.model.get(metadata.get('property'))\r\n : null\r\n });\r\n\r\n if (metadata.get('name') !== MetadataType.Rating)\r\n this.viewModel.set('ratingSuggestion', '');\r\n }\r\n\r\n private getMetadataCollection(): MetadataCollection {\r\n return new MetadataCollection(Object.keys(MetadataTypes).map((key: string) => MetadataTypes[key]));\r\n }\r\n\r\n private getMetadataByType(type: string): Metadata {\r\n return this.metadataCollection.findWhere({ name: type });\r\n }\r\n\r\n private getViewModel(): void {\r\n this.viewModel = ViewModelService.get(this.viewModelName);\r\n this.viewModel.addValidation(SuggestEditValidation);\r\n }\r\n\r\n /**\r\n * The view model is manually validated as opposed to using `.isValid()`\r\n * due to the `ratingSuggestion` field not fulfilling the \"required\"\r\n * check for the regular `suggestion` field.\r\n */\r\n private validateForm(): boolean {\r\n this.renderSuggestEdit();\r\n\r\n this.viewModel.validate();\r\n\r\n const { reason, suggestion } = this.viewModel.toJSON();\r\n\r\n if (this.getRatingValidationMessage()) return false;\r\n if (this.selectedMetadata.get('metadataType') !== MetadataType.Rating && !suggestion) return false;\r\n\r\n return !!reason;\r\n }\r\n\r\n private getRatingValidationMessage(): string {\r\n if (this.selectedMetadata.get('metadataType') !== MetadataType.Rating)\r\n return '';\r\n\r\n const currentRating = this.selectedMetadata.get('metadataValue');\r\n const userSelectedRating = this.viewModel.get('ratingSuggestion');\r\n\r\n if (!userSelectedRating)\r\n return SuggestEditRatingValidation.empty();\r\n\r\n if (currentRating === userSelectedRating)\r\n return SuggestEditRatingValidation.original();\r\n\r\n return '';\r\n }\r\n\r\n // Checks for a pre-selected metadata option passed with the applink parameter.\r\n private checkPreselection(): void {\r\n if (this.selectedMetadata.get('metadataType') || !this.options.metadata || !this.dataFetched())\r\n return;\r\n\r\n const preselection: Metadata = this.getMetadataByType(this.options.metadata);\r\n this.selectMetadata(preselection);\r\n }\r\n\r\n private logAction(): void {\r\n let sourceTypes = VideoHelper.getSourceTypes(this.model);\r\n sourceTypes = _.filter(sourceTypes, s => s !== MasterObjectTypes.CustomLibrary);\r\n const videoSourceTypes = _.sortBy(_.unique(sourceTypes), a => a).join(',');\r\n\r\n const data = {\r\n videoSourceTypes,\r\n videoId: this.model.get('id'),\r\n metadataProperty: this.selectedMetadata.get('metadataType'),\r\n metadataPropertyValue: this.selectedMetadata.get('metadataValue'),\r\n suggestion: this.viewModel.get('suggestion'),\r\n reason: this.viewModel.get('reason')\r\n };\r\n\r\n AnalyticsHelper.logUserAction(data, {\r\n descriptor: SuggestionDescriptor.Edit,\r\n location: LocationContext.Popup,\r\n actionType: UserAction.Suggest,\r\n entity: EntityType.Video\r\n });\r\n }\r\n\r\n private dataFetched(): boolean {\r\n return !!this.model && !!this.ratingCollection;\r\n }\r\n\r\n private renderMetadataDropdown(): void {\r\n this.showChildView('dropdown', new SelectComponent({\r\n collection: VideoDetailsHelper.translateMetadataCollectionNames(this.metadataCollection),\r\n channelName: this.channelName,\r\n childOptions: {\r\n titleProperty: 'name',\r\n eventName: 'select:option:click'\r\n },\r\n placeholderText: this.selectedMetadata.get('metadataType') || LanguageService.getPhrase(this.lang, 'dropdownPlaceholder'),\r\n analyticsHelper: AnalyticsHelper\r\n }));\r\n }\r\n\r\n private renderSuggestEdit(): void {\r\n if (!this.selectedMetadata.get('metadataType'))\r\n return;\r\n\r\n this.showChildView('suggestEdit', new SuggestEditComponent({\r\n model: this.viewModel,\r\n channelName: this.channelName,\r\n ratings: this.ratingCollection,\r\n currentRating: this.viewModel.get('ratingSuggestion')\r\n ? new Rating(this.ratingCollection.findWhere({ name: this.viewModel.get('ratingSuggestion') }))\r\n : null,\r\n metadataType: this.selectedMetadata.get('metadataType'),\r\n metadataValue: this.selectedMetadata.get('metadataValue'),\r\n ratingValidationMessage: this.getRatingValidationMessage()\r\n }));\r\n }\r\n\r\n public onBeforeRender(): void {\r\n if (!this.dataFetched()) {\r\n this.model = this.videoDataService.getVideo(this.options.videoId);\r\n this.ratingCollection = this.ratingsDataService.getAllRatings();\r\n }\r\n\r\n this.checkPreselection();\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n dataFetched: this.dataFetched(),\r\n spinnerEl: SpinnerHelper.getSpinner({ size: SpinnerSize.Large, extraClasses: 'mx-auto' })\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n if (!this.dataFetched()) return;\r\n\r\n this.renderMetadataDropdown();\r\n this.renderSuggestEdit();\r\n }\r\n}","export enum NotificationChannels {\r\n Email = 0\r\n}","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { NotificationsHelper as SharedNotificationsHelper } from 'libs/shared/apps/notifications/utils/NotificationsHelper';\r\nimport { NotificationType } from 'libs/shared/apps/notifications/enums/NotificationType';\r\nimport { NotificationChannels } from 'apps/notifications/utils/Constants';\r\n\r\nexport const NotificationsHelper = {\r\n ...SharedNotificationsHelper,\r\n createSuggestEditNotification: (data: ObjectHash): ObjectHash => {\r\n return {\r\n _type: NotificationType.SuggestEdit,\r\n groupId: data.groupId,\r\n receiverId: 0, // This is not used, although it is a required field.\r\n countryCode: data.countryCode,\r\n channels: [NotificationChannels.Email],\r\n data: {\r\n video: data.video,\r\n user: data.user,\r\n property: data.property,\r\n suggestion: data.suggestion,\r\n reason: data.reason,\r\n currentValue: data.currentValue\r\n }\r\n };\r\n }\r\n};\r\n","export * from './Constants';\r\nexport * from './NotificationsHelper';\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}","import { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { SpinnerButtonModelAttributes } from 'shared/components/spinner-button/SpinnerButtonComponent';\r\n\r\nexport class DisabledSpinnerModel extends Core.Model {\r\n public defaults(): ObjectHash {\r\n return {\r\n [SpinnerButtonModelAttributes.Disabled]: true\r\n };\r\n }\r\n}","import { Core } from 'libs/common/core';\r\n\r\nexport class Metadata extends Core.Model {}"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/components/suggest-edit/SuggestEdit.hbs","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/components/suggest-edit/SuggestEditComponent.ts","webpack://@clickview/library-editor/./src/apps/library-editor/components/suggest-edit/suggest-edit.scss?151f","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/views/suggest-an-edit/SuggestAnEdit.hbs","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/library-editor/views/suggest-an-edit/SuggestAnEditView.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/notifications/utils/Constants.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/notifications/utils/NotificationsHelper.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/apps/notifications/utils/index.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/shared/components/dropdown/DropdownComponentCollection.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/shared/models/DisabledSpinnerModel.ts","file://C:/ClickView Projects/clickview/packages/projects/library-editor/src/shared/models/Metadata.ts"],"names":[],"mappings":"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","file":"scripts/48.chunk.js","sourcesContent":["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, alias3=container.lambda;\n\n return \"<p class=\\\"font-weight-bold mb-0\\\">\"\n + alias2((helpers.lang||(depth0 && depth0.lang)||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),\"currentType\",{\"name\":\"lang\",\"hash\":{\"metadataType\":((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.metadataType : stack1)},\"data\":data}))\n + \"</p>\\r\\n<p class=\\\"mb-3 \"\n + alias2(alias3(((stack1 = ((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.styles : stack1)) != null ? stack1.metadataValue : stack1), depth0))\n + \"\\\">\"\n + ((stack1 = alias3(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.metadataValue : stack1), depth0)) != null ? stack1 : \"\")\n + \"</p>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return \" <textarea\\r\\n id=\\\"suggest-edit\\\"\\r\\n placeholder=\\\"\"\n + container.escapeExpression(container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.suggestionPlaceholder : stack1), depth0))\n + \"\\\"\\r\\n class=\\\"form-control\\\"\\r\\n name=\\\"suggestion\\\"\\r\\n ></textarea>\\r\\n <div class=\\\"form-feedback\\\"></div>\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=container.escapeExpression;\n\n return ((stack1 = helpers.unless.call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.isOtherType : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"\\r\\n<div class=\\\"dropdown-divider\\\"></div>\\r\\n\\r\\n<div class=\\\"form-group\\\">\\r\\n <label for=\\\"suggest-edit\\\" class=\\\"font-weight-bold\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"suggestionSubheading\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</label>\\r\\n <div class=\\\"rating-select-region\\\"></div>\\r\\n <div class=\\\"rating-form-feedback invalid-feedback\\\"></div>\\r\\n\"\n + ((stack1 = helpers.unless.call(alias2,((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.useRatingSelect : stack1),{\"name\":\"unless\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data})) != null ? stack1 : \"\")\n + \"</div>\\r\\n\\r\\n<div class=\\\"form-group\\\">\\r\\n <label for=\\\"reason-for-edit\\\" class=\\\"font-weight-bold\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"reasoningSubheading\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</label>\\r\\n <textarea\\r\\n id=\\\"reason-for-edit\\\"\\r\\n placeholder=\\\"\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"reasoningPlaceholder\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"\\\"\\r\\n class=\\\"form-control\\\"\\r\\n name=\\\"reason\\\"\\r\\n ></textarea>\\r\\n <div class=\\\"form-feedback\\\"></div>\\r\\n</div>\";\n},\"useData\":true});","import { ObjectHash, Validation } from 'backbone';\r\nimport * as moment from 'moment';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { TimeType } from 'shared/enums';\r\nimport { SelectRatingComponent } from 'shared/components/edit-video/select-rating/SelectRatingComponent';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { Rating } from 'shared/models/Rating';\r\n\r\nimport { MetadataType } from 'apps/library-editor/constants';\r\nimport { VideoDetailsHelper } from 'apps/library-editor/utils';\r\n\r\nimport SuggestEditTemplate from './SuggestEdit.hbs';\r\nimport styles from './suggest-edit.scss';\r\n\r\ninterface SuggestEditComponentOptions extends Core.ComponentOptions {\r\n metadataType: MetadataType;\r\n metadataValue?: any;\r\n ratings: RatingCollection;\r\n currentRating: Rating;\r\n ratingValidationMessage?: string;\r\n}\r\n\r\nexport class SuggestEditComponent extends Core.Component {\r\n public options: SuggestEditComponentOptions;\r\n\r\n public constructor(options: SuggestEditComponentOptions) {\r\n super(options);\r\n }\r\n\r\n public get name(): string {\r\n return 'SuggestEditComponent';\r\n }\r\n\r\n public get template(): string {\r\n return SuggestEditTemplate;\r\n }\r\n\r\n public get tagName(): string {\r\n return 'form';\r\n }\r\n\r\n public get className(): string {\r\n return 'mt-3';\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.suggestEdit';\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n ratingSelect: {\r\n el: '.rating-select-region',\r\n replaceElement: true\r\n }\r\n };\r\n }\r\n\r\n public get bindings(): ObjectHash {\r\n return {\r\n '[name=suggestion]': {\r\n observe: 'suggestion',\r\n setOptions: { validate: true }\r\n },\r\n '[name=reason]': {\r\n observe: 'reason',\r\n setOptions: { validate: true }\r\n }\r\n };\r\n }\r\n\r\n public get elements(): ObjectHash {\r\n return {\r\n ratingValidation: '.rating-form-feedback'\r\n };\r\n }\r\n\r\n private getMetadataValue(): string {\r\n if (this.options.metadataType === MetadataType.BroadcastDate) {\r\n if (!this.options.metadataValue)\r\n return LanguageService.getPhrase(this.lang, 'noMetadataValue');\r\n\r\n return moment(this.options.metadataValue).format(TimeType.FULL_YEAR);\r\n }\r\n\r\n if (this.options.metadataValue instanceof Core.Collection) {\r\n if (!this.options.metadataValue.length)\r\n return LanguageService.getPhrase(this.lang, 'noMetadataValue');\r\n\r\n return this.options.metadataValue.map((value: Core.Model) => value.get('name')).join(', ');\r\n }\r\n\r\n return this.options.metadataValue || LanguageService.getPhrase(this.lang, 'noMetadataValue');\r\n }\r\n\r\n private getSuggestionPlaceholder(): string {\r\n return this.options.metadataType === MetadataType.Other\r\n ? LanguageService.getPhrase(this.lang, 'otherSuggestionPlaceholder')\r\n : LanguageService.getPhrase(this.lang, 'suggestionPlaceholder', {\r\n metadataType: VideoDetailsHelper.translateMetadataName(this.options.metadataType).toLowerCase()\r\n });\r\n }\r\n\r\n private renderRatingSelect(): void {\r\n if (this.options.ratingValidationMessage) {\r\n this.getUI('ratingValidation').text(this.options.ratingValidationMessage).attr('style', 'display: block;');\r\n } else {\r\n this.getUI('ratingValidation').hide();\r\n }\r\n\r\n if (this.options.metadataType !== MetadataType.Rating)\r\n return;\r\n\r\n this.showChildView('ratingSelect', new SelectRatingComponent({\r\n model: this.options.currentRating,\r\n collection: this.options.ratings,\r\n parentChannelName: this.options.channelName,\r\n hideHeaderText: true,\r\n hideRemove: true\r\n }));\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n styles,\r\n metadataValue: this.getMetadataValue(),\r\n useRatingSelect: this.options.metadataType === MetadataType.Rating,\r\n isOtherType: this.options.metadataType === MetadataType.Other,\r\n metadataType: VideoDetailsHelper.translateMetadataName(this.options.metadataType).toLowerCase(),\r\n suggestionPlaceholder: this.getSuggestionPlaceholder()\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n this.renderRatingSelect();\r\n\r\n this.stickit();\r\n Validation.bind(this);\r\n }\r\n\r\n public onDestroy(): void {\r\n this.unstickit();\r\n Validation.unbind(this);\r\n }\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"metadataValue\":\"cv--metadataValue--3nkrW\"};","var Handlebars = require('handlebars');\nmodule.exports = (Handlebars['default'] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var alias1=container.propertyIsEnumerable, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4=container.escapeExpression;\n\n return \"<p>\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"guidelines\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n<p class=\\\"font-weight-bold mb-1\\\">\"\n + alias4((helpers.lang||(depth0 && depth0.lang)||alias3).call(alias2,\"dropdownHeading\",{\"name\":\"lang\",\"hash\":{},\"data\":data}))\n + \"</p>\\r\\n<div class=\\\"metadata-dropdown-region position-relative\\\"></div>\\r\\n<div class=\\\"suggest-edit-region\\\"></div>\\r\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return ((stack1 = container.lambda(((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.spinnerEl : stack1), depth0)) != null ? stack1 : \"\")\n + \"\\r\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, alias1=container.propertyIsEnumerable;\n\n return ((stack1 = helpers[\"if\"].call(depth0 != null ? depth0 : (container.nullContext || {}),((stack1 = (depth0 != null ? depth0.options : depth0)) != null ? stack1.dataFetched : stack1),{\"name\":\"if\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.program(3, data, 0),\"data\":data})) != null ? stack1 : \"\");\n},\"useData\":true});","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\n\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\nimport { Core } from 'libs/common/core';\r\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\r\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\r\nimport { NotificationDataService } from 'libs/shared/apps/notifications/services/NotificationDataService';\r\nimport { SuggestionDescriptor, LocationContext, UserAction, EntityType } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport { RadioChannelHelper, VideoHelper, CollectionHelpers, SpinnerHelper, SpinnerSize } from 'shared/utils';\r\nimport { Video } from 'shared/models/Video';\r\nimport { Metadata } from 'shared/models/Metadata';\r\nimport { User } from 'shared/models/User';\r\nimport { Rating } from 'shared/models/Rating';\r\nimport { Config } from 'shared/models/Config';\r\nimport { DisabledSpinnerModel } from 'shared/models/DisabledSpinnerModel';\r\nimport { UserDataServiceHelper } from 'shared/services/UserDataService';\r\nimport { ConfigDataServiceHelper } from 'shared/services/ConfigDataService';\r\nimport { DataServices, DataChannels, DataPrefixes } from 'shared/constants';\r\nimport { MetadataCollection } from 'shared/collections/MetadataCollection';\r\nimport { RatingCollection } from 'shared/collections/RatingCollection';\r\nimport { SelectComponent } from 'shared/components/select/SelectComponent';\r\nimport { SpinnerButtonModelAttributes } from 'shared/components/spinner-button/SpinnerButtonComponent';\r\nimport { PopupBehavior } from 'shared/behaviors';\r\nimport { MasterObjectTypes } from 'shared/enums';\r\n\r\nimport { VideoDataService } from 'apps/library-editor/services/VideoDataService';\r\nimport { RatingsDataService } from 'apps/library-editor/services/RatingsDataService';\r\nimport { SuggestEditComponent } from 'apps/library-editor/components/suggest-edit/SuggestEditComponent';\r\nimport { MetadataTypes, MetadataType } from 'apps/library-editor/constants';\r\nimport { SuggestEditValidation, SuggestEditRatingValidation, VideoDetailsHelper } from 'apps/library-editor/utils';\r\nimport { NotificationsHelper } from 'apps/notifications/utils';\r\n\r\nimport SuggestAnEditTemplate from './SuggestAnEdit.hbs';\r\n\r\ninterface SuggestAnEditViewOptions extends Core.ViewOptions {\r\n videoId: string;\r\n metadata?: string;\r\n}\r\n\r\nexport class SuggestAnEditView extends Core.View {\r\n public options: SuggestAnEditViewOptions;\r\n\r\n public model: Video;\r\n private selectedMetadata: Metadata;\r\n private spinnerModel: DisabledSpinnerModel;\r\n\r\n private ratingCollection: RatingCollection;\r\n private metadataCollection: MetadataCollection;\r\n\r\n private videoDataService: VideoDataService;\r\n private ratingsDataService: RatingsDataService;\r\n private notificationDataService: NotificationDataService;\r\n\r\n private currentUser: User;\r\n private config: Config;\r\n\r\n public constructor(options: SuggestAnEditViewOptions) {\r\n super(options);\r\n }\r\n\r\n public initialize(): void {\r\n this.getViewModel();\r\n\r\n this.videoDataService = InstanceManager.getInstance(DataServices.Video, this);\r\n this.ratingsDataService = InstanceManager.getInstance(DataServices.Ratings, this);\r\n this.notificationDataService = InstanceManager.getInstance(DataServices.Notifications, this);\r\n\r\n this.selectedMetadata = new Metadata();\r\n this.metadataCollection = this.getMetadataCollection();\r\n\r\n this.bindListeners();\r\n }\r\n\r\n public get name(): string {\r\n return 'SuggestAnEditView';\r\n }\r\n\r\n public get template(): string {\r\n return SuggestAnEditTemplate;\r\n }\r\n\r\n public get tagName(): string {\r\n return 'form';\r\n }\r\n\r\n public get className(): string {\r\n return 'form-group';\r\n }\r\n\r\n public get lang(): string {\r\n return 'libraryEditor.suggestAnEdit';\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 channelName(): string {\r\n return RadioChannelHelper.generateUniqueChannelName(this);\r\n }\r\n\r\n public get viewModelName(): string {\r\n return `${this.name}:${this.options.videoId}`;\r\n }\r\n\r\n public regions(): ObjectHash {\r\n return {\r\n dropdown: {\r\n el: '.metadata-dropdown-region',\r\n replaceElement: false\r\n },\r\n suggestEdit: {\r\n el: '.suggest-edit-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: PopupBehavior,\r\n title: LanguageService.getPhrase(this.lang, 'heading'),\r\n spinnerButtonOptions: {\r\n model: this.spinnerModel = new DisabledSpinnerModel(),\r\n channelName: this.channelName,\r\n buttonText: LanguageService.getPhrase(this.lang, 'submit'),\r\n onClick: (e: JQuery.Event) => this.onSubmit(e)\r\n }\r\n }\r\n ];\r\n }\r\n\r\n public get requiredResources(): Core.RequiredResourceHash {\r\n return {\r\n config: ConfigDataServiceHelper.config,\r\n currentUser: UserDataServiceHelper.currentUser\r\n };\r\n }\r\n\r\n private bindListeners(): void {\r\n this.listenTo(this.channelName, 'select:option:selected', this.onMetadataSelect);\r\n this.listenTo(this.channelName, 'select:rating', this.onSelectRating);\r\n this.listenTo(DataChannels.VIDEO, `${DataPrefixes.VIDEOS}:${this.options.videoId}:sync`, this.render);\r\n this.listenTo(DataChannels.NOTIFICATIONS, `${DataPrefixes.SUGGEST_EDIT}:error`, this.onError);\r\n }\r\n\r\n private onSubmit(e: JQuery.Event): void {\r\n const isValid = this.validateForm();\r\n if (!isValid)\r\n return;\r\n\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.ShowSpinner, true);\r\n\r\n const suggestion = this.selectedMetadata.get('metadataType') === MetadataType.Rating\r\n ? this.viewModel.get('ratingSuggestion')\r\n : this.viewModel.get('suggestion');\r\n\r\n const groupId = this.config.get('suggestEditMetadataGroupId');\r\n\r\n const data = NotificationsHelper.createSuggestEditNotification({\r\n groupId,\r\n countryCode: this.currentUser.get('countryCode'),\r\n video: this.model.toJSON(),\r\n user: this.currentUser.toJSON(),\r\n property: this.selectedMetadata.get('metadataType').toLowerCase(),\r\n suggestion,\r\n reason: this.viewModel.get('reason'),\r\n currentValue: this.selectedMetadata.get('metadataValue')\r\n });\r\n\r\n this.notificationDataService.suggestEdit(data, () => {\r\n this.triggerMethod('hide');\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.ShowSpinner, false);\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.Disabled, true);\r\n });\r\n\r\n this.logAction();\r\n\r\n this.viewModel.clear();\r\n }\r\n\r\n private onError(): void {\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.ShowSpinner, false);\r\n }\r\n\r\n private onMetadataSelect(metadata: Metadata): void {\r\n this.selectMetadata(metadata);\r\n this.renderSuggestEdit();\r\n }\r\n\r\n private onSelectRating(rating: Rating): void {\r\n /**\r\n * A field separate to `suggestion` is used for ratings so that the inputs for\r\n * the other suggestions can be persisted across changes to the metadata selection\r\n * without interference from selecting a rating.\r\n */\r\n this.viewModel.set('ratingSuggestion', rating.get('name'));\r\n this.renderSuggestEdit();\r\n }\r\n\r\n private selectMetadata(metadata: Metadata): void {\r\n this.spinnerModel.set(SpinnerButtonModelAttributes.Disabled, false);\r\n\r\n CollectionHelpers.setSelected(metadata.get('id'), this.metadataCollection);\r\n\r\n this.selectedMetadata.set({\r\n metadataType: metadata.get('name'),\r\n metadataValue: metadata.get('name') !== MetadataType.Other\r\n ? this.model.get(metadata.get('property'))\r\n : null\r\n });\r\n\r\n if (metadata.get('name') !== MetadataType.Rating)\r\n this.viewModel.set('ratingSuggestion', '');\r\n }\r\n\r\n private getMetadataCollection(): MetadataCollection {\r\n return new MetadataCollection(Object.keys(MetadataTypes).map((key: string) => MetadataTypes[key]));\r\n }\r\n\r\n private getMetadataByType(type: string): Metadata {\r\n return this.metadataCollection.findWhere({ name: type });\r\n }\r\n\r\n private getViewModel(): void {\r\n this.viewModel = ViewModelService.get(this.viewModelName);\r\n this.viewModel.addValidation(SuggestEditValidation);\r\n }\r\n\r\n /**\r\n * The view model is manually validated as opposed to using `.isValid()`\r\n * due to the `ratingSuggestion` field not fulfilling the \"required\"\r\n * check for the regular `suggestion` field.\r\n */\r\n private validateForm(): boolean {\r\n this.renderSuggestEdit();\r\n\r\n this.viewModel.validate();\r\n\r\n const { reason, suggestion } = this.viewModel.toJSON();\r\n\r\n if (this.getRatingValidationMessage()) return false;\r\n if (this.selectedMetadata.get('metadataType') !== MetadataType.Rating && !suggestion) return false;\r\n\r\n return !!reason;\r\n }\r\n\r\n private getRatingValidationMessage(): string {\r\n if (this.selectedMetadata.get('metadataType') !== MetadataType.Rating)\r\n return '';\r\n\r\n const currentRating = this.selectedMetadata.get('metadataValue');\r\n const userSelectedRating = this.viewModel.get('ratingSuggestion');\r\n\r\n if (!userSelectedRating)\r\n return SuggestEditRatingValidation.empty();\r\n\r\n if (currentRating === userSelectedRating)\r\n return SuggestEditRatingValidation.original();\r\n\r\n return '';\r\n }\r\n\r\n // Checks for a pre-selected metadata option passed with the applink parameter.\r\n private checkPreselection(): void {\r\n if (this.selectedMetadata.get('metadataType') || !this.options.metadata || !this.dataFetched())\r\n return;\r\n\r\n const preselection: Metadata = this.getMetadataByType(this.options.metadata);\r\n this.selectMetadata(preselection);\r\n }\r\n\r\n private logAction(): void {\r\n let sourceTypes = VideoHelper.getSourceTypes(this.model);\r\n sourceTypes = _.filter(sourceTypes, s => s !== MasterObjectTypes.CustomLibrary);\r\n const videoSourceTypes = _.sortBy(_.unique(sourceTypes), a => a).join(',');\r\n\r\n const data = {\r\n videoSourceTypes,\r\n videoId: this.model.get('id'),\r\n metadataProperty: this.selectedMetadata.get('metadataType'),\r\n metadataPropertyValue: this.selectedMetadata.get('metadataValue'),\r\n suggestion: this.viewModel.get('suggestion'),\r\n reason: this.viewModel.get('reason')\r\n };\r\n\r\n AnalyticsHelper.logUserAction(data, {\r\n descriptor: SuggestionDescriptor.Edit,\r\n location: LocationContext.Popup,\r\n actionType: UserAction.Suggest,\r\n entity: EntityType.Video\r\n });\r\n }\r\n\r\n private dataFetched(): boolean {\r\n return !!this.model && !!this.ratingCollection;\r\n }\r\n\r\n private renderMetadataDropdown(): void {\r\n this.showChildView('dropdown', new SelectComponent({\r\n collection: VideoDetailsHelper.translateMetadataCollectionNames(this.metadataCollection),\r\n channelName: this.channelName,\r\n childOptions: {\r\n titleProperty: 'name',\r\n eventName: 'select:option:click'\r\n },\r\n placeholderText: this.selectedMetadata.get('metadataType') || LanguageService.getPhrase(this.lang, 'dropdownPlaceholder'),\r\n analyticsHelper: AnalyticsHelper\r\n }));\r\n }\r\n\r\n private renderSuggestEdit(): void {\r\n if (!this.selectedMetadata.get('metadataType'))\r\n return;\r\n\r\n this.showChildView('suggestEdit', new SuggestEditComponent({\r\n model: this.viewModel,\r\n channelName: this.channelName,\r\n ratings: this.ratingCollection,\r\n currentRating: this.viewModel.get('ratingSuggestion')\r\n ? new Rating(this.ratingCollection.findWhere({ name: this.viewModel.get('ratingSuggestion') }))\r\n : null,\r\n metadataType: this.selectedMetadata.get('metadataType'),\r\n metadataValue: this.selectedMetadata.get('metadataValue'),\r\n ratingValidationMessage: this.getRatingValidationMessage()\r\n }));\r\n }\r\n\r\n public onBeforeRender(): void {\r\n if (!this.dataFetched()) {\r\n this.model = this.videoDataService.getVideo(this.options.videoId);\r\n this.ratingCollection = this.ratingsDataService.getAllRatings();\r\n }\r\n\r\n this.checkPreselection();\r\n }\r\n\r\n public viewOptions(): ObjectHash {\r\n return {\r\n dataFetched: this.dataFetched(),\r\n spinnerEl: SpinnerHelper.getSpinner({ size: SpinnerSize.Large, extraClasses: 'mx-auto' })\r\n };\r\n }\r\n\r\n public onRender(): void {\r\n if (!this.dataFetched()) return;\r\n\r\n this.renderMetadataDropdown();\r\n this.renderSuggestEdit();\r\n }\r\n}","export enum NotificationChannels {\r\n Email = 0\r\n}","import * as _ from 'underscore';\r\nimport { ObjectHash } from 'backbone';\r\nimport { NotificationsHelper as SharedNotificationsHelper } from 'libs/shared/apps/notifications/utils/NotificationsHelper';\r\nimport { NotificationType } from 'libs/shared/apps/notifications/enums/NotificationType';\r\nimport { NotificationChannels } from 'apps/notifications/utils/Constants';\r\n\r\nexport const NotificationsHelper = {\r\n ...SharedNotificationsHelper,\r\n createSuggestEditNotification: (data: ObjectHash): ObjectHash => {\r\n return {\r\n _type: NotificationType.SuggestEdit,\r\n groupId: data.groupId,\r\n receiverId: 0, // This is not used, although it is a required field.\r\n countryCode: data.countryCode,\r\n channels: [NotificationChannels.Email],\r\n data: {\r\n video: data.video,\r\n user: data.user,\r\n property: data.property,\r\n suggestion: data.suggestion,\r\n reason: data.reason,\r\n currentValue: data.currentValue\r\n }\r\n };\r\n }\r\n};\r\n","export * from './Constants';\r\nexport * from './NotificationsHelper';\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}","import { ObjectHash } from 'backbone';\r\nimport { Core } from 'libs/common/core';\r\nimport { SpinnerButtonModelAttributes } from 'shared/components/spinner-button/SpinnerButtonComponent';\r\n\r\nexport class DisabledSpinnerModel extends Core.Model {\r\n public defaults(): ObjectHash {\r\n return {\r\n [SpinnerButtonModelAttributes.Disabled]: true\r\n };\r\n }\r\n}","import { Core } from 'libs/common/core';\r\n\r\nexport class Metadata extends Core.Model {}"],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[49],{
|
|
1
|
+
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[49],{1056:function(t,n,e){"use strict";e.d(n,"a",(function(){return g}));var o=e(1),i=e(2),r=e(4),a=e(42),s=e(1057),c=e.n(s);function u(t){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function p(t,n){return(p=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function f(t){var n=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(t){return!1}}();return function(){var e,o=y(t);if(n){var i=y(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return h(this,e)}}function h(t,n){return!n||"object"!==u(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function y(t){return(y=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var g=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&p(t,n)}(u,t);var n,e,i,s=f(u);function u(t){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,u),s.call(this,t)}return n=u,(e=[{key:"events",value:function(){return{"click .previous-applink":"onClickPrevious","click .next-applink":"onClickNext"}}},{key:"buildCursor",value:function(t){return{application:this.options.appLink.application,action:this.options.appLink.action,args:this.options.appLink.args,params:o.extend({},this.options.appLink.params,(n={},e=this.options.cursorParamName,i=t,e in n?Object.defineProperty(n,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[e]=i,n))};var n,e,i}},{key:"onClickPrevious",value:function(){this.logAction("previous")}},{key:"onClickNext",value:function(){this.logAction("next")}},{key:"logAction",value:function(t){var n=a.a.mergeOptions(this.options.analyticsOptions,{location:r.k.Pagination,entity:r.e.Pagination,actionType:r.q.Navigate,workflowPhase:r.r.Complete}),e={id:this.options.collectionId,page:t};a.a.logUserAction(e,n)}},{key:"viewOptions",value:function(){return{cursors:this.options.cursors}}},{key:"onBeforeRender",value:function(){return!!this.options.cursors}},{key:"defaults",get:function(){return{cursors:{},cursorParamName:"cursor"}}},{key:"name",get:function(){return"PaginationComponent"}},{key:"template",get:function(){return c.a}},{key:"lang",get:function(){return"shared._pagination"}},{key:"appLinks",get:function(){var t={};if(!this.options.cursors)return{};if(this.options.cursors.previous){var n=this.options.cursors.previous,e=this.buildCursor(this.options.cursors.previous);+n<=1&&!0!==this.options.allowFirstPageCursor&&delete e.params.cursor,t[".previous-applink"]=e}return this.options.cursors.next&&(t[".next-applink"]=this.buildCursor(this.options.cursors.next)),t}}])&&l(n.prototype,e),i&&l(n,i),u}(i.a.Component)},1057:function(t,n,e){var o=e(10);t.exports=(o.default||o).template({1:function(t,n,e,o,i){return"disabled"},compiler:[8,">= 4.3.0"],main:function(t,n,e,o,i){t.propertyIsEnumerable;var r,a=null!=n?n:t.nullContext||{},s=t.hooks.helperMissing,c=t.escapeExpression;return'<div class="p-3">\r\n <a class="btn previous-applink btn-secondary '+(null!=(r=e.unless.call(a,null!=(r=null!=(r=null!=n?n.options:n)?r.cursors:r)?r.previous:r,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?r:"")+'">'+c((e.lang||n&&n.lang||s).call(a,"previous",{name:"lang",hash:{},data:i}))+'</a>\r\n <a class="btn next-applink btn-secondary '+(null!=(r=e.unless.call(a,null!=(r=null!=(r=null!=n?n.options:n)?r.cursors:r)?r.next:r,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?r:"")+'">'+c((e.lang||n&&n.lang||s).call(a,"next",{name:"lang",hash:{},data:i}))+"</a>\r\n</div>"},useData:!0})},1331:function(t,n,e){var o=e(10);t.exports=(o.default||o).template({compiler:[8,">= 4.3.0"],main:function(t,n,e,o,i){t.propertyIsEnumerable;return'<div class="container-fluid bg-white p-3">\r\n <h1 class="h3 header border-bottom pb-2 m-0">'+t.escapeExpression((e.lang||n&&n.lang||t.hooks.helperMissing).call(null!=n?n:t.nullContext||{},"notifications",{name:"lang",hash:{},data:i}))+'</h1>\r\n <div class="list-region"></div>\r\n <div class="pagination-region"></div>\r\n</div>'},useData:!0})},1434:function(t,n,e){"use strict";e.r(n),e.d(n,"NotificationsView",(function(){return x}));var o=e(2),i=e(3),r=e(5),a=e(25),s=e(53),c=e(22),u=e(46),l=e(187),p=e(1056),f=e(222),h=e(1331),y=e.n(h),g=e(410),v=e.n(g),b=e(411),d=e.n(b);function m(t){return(m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function k(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function w(t,n){return(w=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function O(t){var n=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(t){return!1}}();return function(){var e,o=C(t);if(n){var i=C(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return P(this,e)}}function P(t,n){return!n||"object"!==m(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function C(t){return(C=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var x=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&w(t,n)}(g,t);var n,e,o,h=O(g);function g(t){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,g),h.call(this,t)}return n=g,(e=[{key:"regions",value:function(){return{notifications:{replaceElement:!0,el:".list-region",partialLoading:{component:a.a.ComponentCollection,options:{collectionLength:5,childOptions:{template:v.a,className:"px-1 py-2",viewOptions:{styles:d.a}}}}},pagination:{replaceElement:!0,el:".pagination-region"}}}},{key:"initialize",value:function(){this.notificationService=r.a.getInstance(c.b.Notification,this),this.appVariables=r.a.getInstance(u.a.NOTIFICATIONS,this)}},{key:"onData",value:function(t){this.collection=t,this.render()}},{key:"getCollectionIdentifier",value:function(){return this.collectionIdentifier?this.collectionIdentifier:this.collectionIdentifier=new l.a(Object.assign({collectionPrefix:s.a.NOTIFICATIONS},this.options.params))}},{key:"renderNotificationList",value:function(){var t=new f.b({collection:this.collection,childType:f.a.Default});this.showChildView("notifications",t)}},{key:"renderPagination",value:function(){if(this.collection.length){var t=this.notificationService.getNotificationsCursors(this.getCollectionIdentifier()),n=new p.a({cursors:t,appLink:Object.assign(Object.assign({},this.appVariables.appLinks.notifications),{args:[],params:this.getCollectionIdentifier().toParams()})});this.showChildView("pagination",n)}}},{key:"onBeforeRender",value:function(){var t=this;return this.collection||this.notificationService.getNotifications(this.options.params,this.getCollectionIdentifier(),(function(n){return t.onData(n)})),!!this.collection}},{key:"onRender",value:function(){this.renderNotificationList(),this.renderPagination()}},{key:"name",get:function(){return"NotificationsView"}},{key:"title",get:function(){return i.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"notifications.notifications"}},{key:"className",get:function(){return"notifications-container"}},{key:"template",get:function(){return y.a}}])&&k(n.prototype,e),o&&k(n,o),g}(o.a.View)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(window.webpackJsonp_clickview_library_editor=window.webpackJsonp_clickview_library_editor||[]).push([[49],{1056:function(t,n,e){"use strict";e.d(n,"a",(function(){return g}));var o=e(1),i=e(2),r=e(4),a=e(42),s=e(1057),c=e.n(s);function u(t){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function p(t,n){return(p=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function f(t){var n=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(t){return!1}}();return function(){var e,o=y(t);if(n){var i=y(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return h(this,e)}}function h(t,n){return!n||"object"!==u(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function y(t){return(y=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var g=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&p(t,n)}(u,t);var n,e,i,s=f(u);function u(t){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,u),s.call(this,t)}return n=u,(e=[{key:"events",value:function(){return{"click .previous-applink":"onClickPrevious","click .next-applink":"onClickNext"}}},{key:"buildCursor",value:function(t){return{application:this.options.appLink.application,action:this.options.appLink.action,args:this.options.appLink.args,params:o.extend({},this.options.appLink.params,(n={},e=this.options.cursorParamName,i=t,e in n?Object.defineProperty(n,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[e]=i,n))};var n,e,i}},{key:"onClickPrevious",value:function(){this.logAction("previous")}},{key:"onClickNext",value:function(){this.logAction("next")}},{key:"logAction",value:function(t){var n=a.a.mergeOptions(this.options.analyticsOptions,{location:r.k.Pagination,entity:r.e.Pagination,actionType:r.q.Navigate,workflowPhase:r.r.Complete}),e={id:this.options.collectionId,page:t};a.a.logUserAction(e,n)}},{key:"viewOptions",value:function(){return{cursors:this.options.cursors}}},{key:"onBeforeRender",value:function(){return!!this.options.cursors}},{key:"defaults",get:function(){return{cursors:{},cursorParamName:"cursor"}}},{key:"name",get:function(){return"PaginationComponent"}},{key:"template",get:function(){return c.a}},{key:"lang",get:function(){return"shared._pagination"}},{key:"appLinks",get:function(){var t={};if(!this.options.cursors)return{};if(this.options.cursors.previous){var n=this.options.cursors.previous,e=this.buildCursor(this.options.cursors.previous);+n<=1&&!0!==this.options.allowFirstPageCursor&&delete e.params.cursor,t[".previous-applink"]=e}return this.options.cursors.next&&(t[".next-applink"]=this.buildCursor(this.options.cursors.next)),t}}])&&l(n.prototype,e),i&&l(n,i),u}(i.a.Component)},1057:function(t,n,e){var o=e(10);t.exports=(o.default||o).template({1:function(t,n,e,o,i){return"disabled"},compiler:[8,">= 4.3.0"],main:function(t,n,e,o,i){t.propertyIsEnumerable;var r,a=null!=n?n:t.nullContext||{},s=t.hooks.helperMissing,c=t.escapeExpression;return'<div class="p-3">\r\n <a class="btn previous-applink btn-secondary '+(null!=(r=e.unless.call(a,null!=(r=null!=(r=null!=n?n.options:n)?r.cursors:r)?r.previous:r,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?r:"")+'">'+c((e.lang||n&&n.lang||s).call(a,"previous",{name:"lang",hash:{},data:i}))+'</a>\r\n <a class="btn next-applink btn-secondary '+(null!=(r=e.unless.call(a,null!=(r=null!=(r=null!=n?n.options:n)?r.cursors:r)?r.next:r,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?r:"")+'">'+c((e.lang||n&&n.lang||s).call(a,"next",{name:"lang",hash:{},data:i}))+"</a>\r\n</div>"},useData:!0})},1331:function(t,n,e){var o=e(10);t.exports=(o.default||o).template({compiler:[8,">= 4.3.0"],main:function(t,n,e,o,i){t.propertyIsEnumerable;return'<div class="container-fluid bg-white p-3">\r\n <h1 class="h3 header border-bottom pb-2 m-0">'+t.escapeExpression((e.lang||n&&n.lang||t.hooks.helperMissing).call(null!=n?n:t.nullContext||{},"notifications",{name:"lang",hash:{},data:i}))+'</h1>\r\n <div class="list-region"></div>\r\n <div class="pagination-region"></div>\r\n</div>'},useData:!0})},1434:function(t,n,e){"use strict";e.r(n),e.d(n,"NotificationsView",(function(){return x}));var o=e(2),i=e(3),r=e(5),a=e(25),s=e(53),c=e(22),u=e(46),l=e(187),p=e(1056),f=e(222),h=e(1331),y=e.n(h),g=e(410),v=e.n(g),b=e(411),d=e.n(b);function m(t){return(m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function k(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function w(t,n){return(w=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function O(t){var n=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(t){return!1}}();return function(){var e,o=C(t);if(n){var i=C(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return P(this,e)}}function P(t,n){return!n||"object"!==m(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function C(t){return(C=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var x=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&w(t,n)}(g,t);var n,e,o,h=O(g);function g(t){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,g),h.call(this,t)}return n=g,(e=[{key:"regions",value:function(){return{notifications:{replaceElement:!0,el:".list-region",partialLoading:{component:a.a.ComponentCollection,options:{collectionLength:5,childOptions:{template:v.a,className:"px-1 py-2",viewOptions:{styles:d.a}}}}},pagination:{replaceElement:!0,el:".pagination-region"}}}},{key:"initialize",value:function(){this.notificationService=r.a.getInstance(c.b.Notification,this),this.appVariables=r.a.getInstance(u.a.NOTIFICATIONS,this)}},{key:"onData",value:function(t){this.collection=t,this.render()}},{key:"getCollectionIdentifier",value:function(){return this.collectionIdentifier?this.collectionIdentifier:this.collectionIdentifier=new l.a(Object.assign({collectionPrefix:s.a.NOTIFICATIONS},this.options.params))}},{key:"renderNotificationList",value:function(){var t=new f.b({collection:this.collection,childType:f.a.Default});this.showChildView("notifications",t)}},{key:"renderPagination",value:function(){if(this.collection.length){var t=this.notificationService.getNotificationsCursors(this.getCollectionIdentifier()),n=new p.a({cursors:t,appLink:Object.assign(Object.assign({},this.appVariables.appLinks.notifications),{args:[],params:this.getCollectionIdentifier().toParams()})});this.showChildView("pagination",n)}}},{key:"onBeforeRender",value:function(){var t=this;return this.collection||this.notificationService.getNotifications(this.options.params,this.getCollectionIdentifier(),(function(n){return t.onData(n)})),!!this.collection}},{key:"onRender",value:function(){this.renderNotificationList(),this.renderPagination()}},{key:"name",get:function(){return"NotificationsView"}},{key:"title",get:function(){return i.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"notifications.notifications"}},{key:"className",get:function(){return"notifications-container"}},{key:"template",get:function(){return y.a}}])&&k(n.prototype,e),o&&k(n,o),g}(o.a.View)}}]);
|