@clickview/lite 0.52.1 → 0.52.2-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/dist/bundles.json +1 -1
  2. package/dist/css/{1329-lite-ec64553644.chunk.css → 1329-lite-55772b1036.chunk.css} +2 -2
  3. package/dist/css/{986-lite-6bdd43b250.chunk.css → 3532-lite-a3c7435ba4.chunk.css} +1 -1
  4. package/dist/css/{3969-lite-cb4c4824f6.chunk.css → 3969-lite-94ca677007.chunk.css} +1 -1
  5. package/dist/css/{4489-lite-e971ca8ab6.chunk.css → 4489-lite-49c28410f9.chunk.css} +1 -1
  6. package/dist/css/4690-lite-e1f88a6b47.chunk.css +4 -0
  7. package/dist/css/{537-lite-53bb989a96.chunk.css → 537-lite-390b70028c.chunk.css} +1 -1
  8. package/dist/css/{6489-lite-5ffcd32447.chunk.css → 6489-lite-a917e953c8.chunk.css} +1 -1
  9. package/dist/css/{8192-lite-cf3253f7b8.chunk.css → 8192-lite-282a716c03.chunk.css} +1 -1
  10. package/dist/css/{841-lite-93cc5f2469.chunk.css → 841-lite-4a007cd7be.chunk.css} +1 -1
  11. package/dist/css/{1820-lite-eaf5a9db1c.chunk.css → 999-lite-02c517e917.chunk.css} +1 -1
  12. package/dist/languages/en.json +1 -1
  13. package/dist/scripts/{1080-5b00242a31-lite.chunk.js → 1080-d24c9657ec-lite.chunk.js} +2 -2
  14. package/dist/scripts/{1080-5b00242a31-lite.chunk.js.map → 1080-d24c9657ec-lite.chunk.js.map} +1 -1
  15. package/dist/scripts/{9173-2392d447a6-lite.chunk.js → 1104-f057c6dea1-lite.chunk.js} +3 -3
  16. package/dist/scripts/{9173-2392d447a6-lite.chunk.js.map → 1104-f057c6dea1-lite.chunk.js.map} +1 -1
  17. package/dist/scripts/{1125-aac132b88f-lite.chunk.js → 1125-55dc0a4586-lite.chunk.js} +2 -2
  18. package/dist/scripts/1125-55dc0a4586-lite.chunk.js.map +1 -0
  19. package/dist/scripts/1169-3de585be6a-lite.chunk.js +2 -0
  20. package/dist/scripts/1169-3de585be6a-lite.chunk.js.map +1 -0
  21. package/dist/scripts/1329-850346e6e6-lite.chunk.js +3 -0
  22. package/dist/scripts/1329-850346e6e6-lite.chunk.js.map +1 -0
  23. package/dist/scripts/{1379-082bbab71a-lite.chunk.js → 1379-976d20185f-lite.chunk.js} +3 -3
  24. package/dist/scripts/{1379-082bbab71a-lite.chunk.js.map → 1379-976d20185f-lite.chunk.js.map} +1 -1
  25. package/dist/scripts/1672-60a3ab42f5-lite.chunk.js +3 -0
  26. package/dist/scripts/1672-60a3ab42f5-lite.chunk.js.map +1 -0
  27. package/dist/scripts/1725-1e864ba78a-lite.chunk.js +2 -0
  28. package/dist/scripts/1725-1e864ba78a-lite.chunk.js.map +1 -0
  29. package/dist/scripts/1891-109e674486-lite.chunk.js +2 -0
  30. package/dist/scripts/1891-109e674486-lite.chunk.js.map +1 -0
  31. package/dist/scripts/193-797b89797a-lite.chunk.js +2 -0
  32. package/dist/scripts/193-797b89797a-lite.chunk.js.map +1 -0
  33. package/dist/scripts/2004-7d1bf8b246-lite.chunk.js +3 -0
  34. package/dist/scripts/2004-7d1bf8b246-lite.chunk.js.map +1 -0
  35. package/dist/scripts/209-d2e6b93965-lite.chunk.js +2 -0
  36. package/dist/scripts/209-d2e6b93965-lite.chunk.js.map +1 -0
  37. package/dist/scripts/2134-b9145f8ce8-lite.chunk.js +2 -0
  38. package/dist/scripts/2134-b9145f8ce8-lite.chunk.js.map +1 -0
  39. package/dist/scripts/2952-6a32a90314-lite.chunk.js +2 -0
  40. package/dist/scripts/2952-6a32a90314-lite.chunk.js.map +1 -0
  41. package/dist/scripts/3003-7685240aed-lite.chunk.js +2 -0
  42. package/dist/scripts/3003-7685240aed-lite.chunk.js.map +1 -0
  43. package/dist/scripts/3020-6c9c7d2176-lite.chunk.js +2 -0
  44. package/dist/scripts/3020-6c9c7d2176-lite.chunk.js.map +1 -0
  45. package/dist/scripts/338-e21a3cd6fe-lite.chunk.js +3 -0
  46. package/dist/scripts/338-e21a3cd6fe-lite.chunk.js.map +1 -0
  47. package/dist/scripts/3532-2fed0eb7a4-lite.chunk.js +3 -0
  48. package/dist/scripts/3532-2fed0eb7a4-lite.chunk.js.map +1 -0
  49. package/dist/scripts/3633-025f418c19-lite.chunk.js +2 -0
  50. package/dist/scripts/3633-025f418c19-lite.chunk.js.map +1 -0
  51. package/dist/scripts/3640-694d1d6d2a-lite.chunk.js +2 -0
  52. package/dist/scripts/3640-694d1d6d2a-lite.chunk.js.map +1 -0
  53. package/dist/scripts/3728-2c71d3021e-lite.chunk.js +2 -0
  54. package/dist/scripts/3728-2c71d3021e-lite.chunk.js.map +1 -0
  55. package/dist/scripts/3966-0e3c4f329e-lite.chunk.js +2 -0
  56. package/dist/scripts/3966-0e3c4f329e-lite.chunk.js.map +1 -0
  57. package/dist/scripts/{3969-6d5f2f272f-lite.chunk.js → 3969-e36f1922eb-lite.chunk.js} +1 -1
  58. package/dist/scripts/{3969-6d5f2f272f-lite.chunk.js.map → 3969-e36f1922eb-lite.chunk.js.map} +1 -1
  59. package/dist/scripts/4063-5fa157657f-lite.chunk.js +2 -0
  60. package/dist/scripts/4063-5fa157657f-lite.chunk.js.map +1 -0
  61. package/dist/scripts/4182-7ae9edf4a5-lite.chunk.js +2 -0
  62. package/dist/scripts/4182-7ae9edf4a5-lite.chunk.js.map +1 -0
  63. package/dist/scripts/4395-37537617e2-lite.chunk.js +2 -0
  64. package/dist/scripts/4395-37537617e2-lite.chunk.js.map +1 -0
  65. package/dist/scripts/4502-83e4017e54-lite.chunk.js +2 -0
  66. package/dist/scripts/4502-83e4017e54-lite.chunk.js.map +1 -0
  67. package/dist/scripts/4690-d64efe8020-lite.chunk.js +2 -0
  68. package/dist/scripts/4690-d64efe8020-lite.chunk.js.map +1 -0
  69. package/dist/scripts/4850-bb9541d3ed-lite.chunk.js +2 -0
  70. package/dist/scripts/4850-bb9541d3ed-lite.chunk.js.map +1 -0
  71. package/dist/scripts/5143-d46f032e9e-lite.chunk.js +2 -0
  72. package/dist/scripts/5143-d46f032e9e-lite.chunk.js.map +1 -0
  73. package/dist/scripts/5157-855821ccce-lite.chunk.js +2 -0
  74. package/dist/scripts/5157-855821ccce-lite.chunk.js.map +1 -0
  75. package/dist/scripts/537-f63ad5863e-lite.chunk.js +3 -0
  76. package/dist/scripts/537-f63ad5863e-lite.chunk.js.map +1 -0
  77. package/dist/scripts/5549-bb01b24470-lite.chunk.js +2 -0
  78. package/dist/scripts/5549-bb01b24470-lite.chunk.js.map +1 -0
  79. package/dist/scripts/5573-304fea77a6-lite.chunk.js +2 -0
  80. package/dist/scripts/5573-304fea77a6-lite.chunk.js.map +1 -0
  81. package/dist/scripts/5595-842c05064c-lite.chunk.js +2 -0
  82. package/dist/scripts/5595-842c05064c-lite.chunk.js.map +1 -0
  83. package/dist/scripts/5606-680582b817-lite.chunk.js +2 -0
  84. package/dist/scripts/5606-680582b817-lite.chunk.js.map +1 -0
  85. package/dist/scripts/5877-e75dcce0ef-lite.chunk.js +2 -0
  86. package/dist/scripts/5877-e75dcce0ef-lite.chunk.js.map +1 -0
  87. package/dist/scripts/5936-b509535ec7-lite.chunk.js +2 -0
  88. package/dist/scripts/5936-b509535ec7-lite.chunk.js.map +1 -0
  89. package/dist/scripts/6054-1e9b86d631-lite.chunk.js +2 -0
  90. package/dist/scripts/6054-1e9b86d631-lite.chunk.js.map +1 -0
  91. package/dist/scripts/6094-6c1e95073a-lite.chunk.js +2 -0
  92. package/dist/scripts/6094-6c1e95073a-lite.chunk.js.map +1 -0
  93. package/dist/scripts/6138-5791b93cc1-lite.chunk.js +2 -0
  94. package/dist/scripts/6138-5791b93cc1-lite.chunk.js.map +1 -0
  95. package/dist/scripts/{624-7ab5fb3f3b-lite.chunk.js → 624-bf0ff6257f-lite.chunk.js} +3 -3
  96. package/dist/scripts/{624-7ab5fb3f3b-lite.chunk.js.map → 624-bf0ff6257f-lite.chunk.js.map} +1 -1
  97. package/dist/scripts/6263-cfd4ebfe8b-lite.chunk.js +2 -0
  98. package/dist/scripts/6263-cfd4ebfe8b-lite.chunk.js.map +1 -0
  99. package/dist/scripts/6290-eb223883fe-lite.chunk.js +2 -0
  100. package/dist/scripts/6290-eb223883fe-lite.chunk.js.map +1 -0
  101. package/dist/scripts/6470-1012a7889c-lite.chunk.js +2 -0
  102. package/dist/scripts/6470-1012a7889c-lite.chunk.js.map +1 -0
  103. package/dist/scripts/6481-39b72a58ef-lite.chunk.js +2 -0
  104. package/dist/scripts/6481-39b72a58ef-lite.chunk.js.map +1 -0
  105. package/dist/scripts/6489-9287613d14-lite.chunk.js +3 -0
  106. package/dist/scripts/6489-9287613d14-lite.chunk.js.map +1 -0
  107. package/dist/scripts/6532-9edab80cc6-lite.chunk.js +2 -0
  108. package/dist/scripts/6532-9edab80cc6-lite.chunk.js.map +1 -0
  109. package/dist/scripts/6604-2353daa8c0-lite.chunk.js +2 -0
  110. package/dist/scripts/6604-2353daa8c0-lite.chunk.js.map +1 -0
  111. package/dist/scripts/6741-572db2d1e9-lite.chunk.js +3 -0
  112. package/dist/scripts/6741-572db2d1e9-lite.chunk.js.map +1 -0
  113. package/dist/scripts/6746-72d35335ba-lite.chunk.js +2 -0
  114. package/dist/scripts/6746-72d35335ba-lite.chunk.js.map +1 -0
  115. package/dist/scripts/6852-f49f6f19d3-lite.chunk.js +2 -0
  116. package/dist/scripts/6852-f49f6f19d3-lite.chunk.js.map +1 -0
  117. package/dist/scripts/714-67adeb44da-lite.chunk.js +2 -0
  118. package/dist/scripts/714-67adeb44da-lite.chunk.js.map +1 -0
  119. package/dist/scripts/7163-8b5ab059b6-lite.chunk.js +2 -0
  120. package/dist/scripts/7163-8b5ab059b6-lite.chunk.js.map +1 -0
  121. package/dist/scripts/7178-4b9c33a63e-lite.chunk.js +2 -0
  122. package/dist/scripts/7178-4b9c33a63e-lite.chunk.js.map +1 -0
  123. package/dist/scripts/7223-e2f8a43b89-lite.chunk.js +2 -0
  124. package/dist/scripts/7223-e2f8a43b89-lite.chunk.js.map +1 -0
  125. package/dist/scripts/7234-595d44446f-lite.chunk.js +2 -0
  126. package/dist/scripts/7234-595d44446f-lite.chunk.js.map +1 -0
  127. package/dist/scripts/7267-dac72aeb98-lite.chunk.js +2 -0
  128. package/dist/scripts/7267-dac72aeb98-lite.chunk.js.map +1 -0
  129. package/dist/scripts/{7293-687e60dba2-lite.chunk.js → 7293-1ad518e385-lite.chunk.js} +2 -2
  130. package/dist/scripts/7293-1ad518e385-lite.chunk.js.map +1 -0
  131. package/dist/scripts/7679-f43777e02e-lite.chunk.js +2 -0
  132. package/dist/scripts/7679-f43777e02e-lite.chunk.js.map +1 -0
  133. package/dist/scripts/7757-2785d666ad-lite.chunk.js +2 -0
  134. package/dist/scripts/7757-2785d666ad-lite.chunk.js.map +1 -0
  135. package/dist/scripts/7795-b641104969-lite.chunk.js +2 -0
  136. package/dist/scripts/7795-b641104969-lite.chunk.js.map +1 -0
  137. package/dist/scripts/7818-cff0f2276c-lite.chunk.js +2 -0
  138. package/dist/scripts/7818-cff0f2276c-lite.chunk.js.map +1 -0
  139. package/dist/scripts/{8192-f26370c5a6-lite.chunk.js → 8192-ea5cee15d7-lite.chunk.js} +1 -1
  140. package/dist/scripts/{8192-f26370c5a6-lite.chunk.js.map → 8192-ea5cee15d7-lite.chunk.js.map} +1 -1
  141. package/dist/scripts/8200-1e4518c5d8-lite.chunk.js +3 -0
  142. package/dist/scripts/8200-1e4518c5d8-lite.chunk.js.map +1 -0
  143. package/dist/scripts/8323-fb330a8f47-lite.chunk.js +3 -0
  144. package/dist/scripts/8323-fb330a8f47-lite.chunk.js.map +1 -0
  145. package/dist/scripts/841-d69c7f4b4d-lite.chunk.js +3 -0
  146. package/dist/scripts/841-d69c7f4b4d-lite.chunk.js.map +1 -0
  147. package/dist/scripts/8709-f360baa021-lite.chunk.js +2 -0
  148. package/dist/scripts/8709-f360baa021-lite.chunk.js.map +1 -0
  149. package/dist/scripts/8722-00d7443d09-lite.chunk.js +2 -0
  150. package/dist/scripts/8722-00d7443d09-lite.chunk.js.map +1 -0
  151. package/dist/scripts/8982-6848480133-lite.chunk.js +2 -0
  152. package/dist/scripts/8982-6848480133-lite.chunk.js.map +1 -0
  153. package/dist/scripts/9016-e17da8b633-lite.chunk.js +3 -0
  154. package/dist/scripts/9016-e17da8b633-lite.chunk.js.map +1 -0
  155. package/dist/scripts/9173-a0c6c7be25-lite.chunk.js +2 -0
  156. package/dist/scripts/9173-a0c6c7be25-lite.chunk.js.map +1 -0
  157. package/dist/scripts/9226-a7c61f9129-lite.chunk.js +2 -0
  158. package/dist/scripts/9226-a7c61f9129-lite.chunk.js.map +1 -0
  159. package/dist/scripts/9230-537f1fcc38-lite.chunk.js +3 -0
  160. package/dist/scripts/9230-537f1fcc38-lite.chunk.js.map +1 -0
  161. package/dist/scripts/9359-deb452cb10-lite.chunk.js +2 -0
  162. package/dist/scripts/9359-deb452cb10-lite.chunk.js.map +1 -0
  163. package/dist/scripts/{9395-90b87097fa-lite.chunk.js → 9395-e9b5cdbdce-lite.chunk.js} +3 -3
  164. package/dist/scripts/{9395-90b87097fa-lite.chunk.js.map → 9395-e9b5cdbdce-lite.chunk.js.map} +1 -1
  165. package/dist/scripts/9399-721a368168-lite.chunk.js +2 -0
  166. package/dist/scripts/9399-721a368168-lite.chunk.js.map +1 -0
  167. package/dist/scripts/{9478-99486906b9-lite.chunk.js → 9478-abfa7ed3cc-lite.chunk.js} +3 -3
  168. package/dist/scripts/{9478-99486906b9-lite.chunk.js.map → 9478-abfa7ed3cc-lite.chunk.js.map} +1 -1
  169. package/dist/scripts/{953-cbc7f0571e-lite.chunk.js → 953-bf3d621a33-lite.chunk.js} +3 -3
  170. package/dist/scripts/{953-cbc7f0571e-lite.chunk.js.map → 953-bf3d621a33-lite.chunk.js.map} +1 -1
  171. package/dist/scripts/9719-ed1956607c-lite.chunk.js +3 -0
  172. package/dist/scripts/9719-ed1956607c-lite.chunk.js.map +1 -0
  173. package/dist/scripts/999-d7e93dac12-lite.chunk.js +2 -0
  174. package/dist/scripts/999-d7e93dac12-lite.chunk.js.map +1 -0
  175. package/dist/scripts/bundle-9a72d04e7d.min.js +3 -0
  176. package/dist/scripts/bundle-9a72d04e7d.min.js.map +1 -0
  177. package/package.json +1 -2
  178. package/dist/css/4690-lite-a4fdd7e61e.chunk.css +0 -4
  179. package/dist/scripts/1125-aac132b88f-lite.chunk.js.map +0 -1
  180. package/dist/scripts/1169-5a0d974a94-lite.chunk.js +0 -2
  181. package/dist/scripts/1169-5a0d974a94-lite.chunk.js.map +0 -1
  182. package/dist/scripts/1329-7064e95200-lite.chunk.js +0 -3
  183. package/dist/scripts/1329-7064e95200-lite.chunk.js.map +0 -1
  184. package/dist/scripts/1466-735d7dad48-lite.chunk.js +0 -3
  185. package/dist/scripts/1466-735d7dad48-lite.chunk.js.map +0 -1
  186. package/dist/scripts/1672-672f298d82-lite.chunk.js +0 -3
  187. package/dist/scripts/1672-672f298d82-lite.chunk.js.map +0 -1
  188. package/dist/scripts/1725-075015497e-lite.chunk.js +0 -2
  189. package/dist/scripts/1725-075015497e-lite.chunk.js.map +0 -1
  190. package/dist/scripts/1818-4949c9b748-lite.chunk.js +0 -2
  191. package/dist/scripts/1818-4949c9b748-lite.chunk.js.map +0 -1
  192. package/dist/scripts/1820-345bf53a3c-lite.chunk.js +0 -2
  193. package/dist/scripts/1820-345bf53a3c-lite.chunk.js.map +0 -1
  194. package/dist/scripts/1867-6f801de383-lite.chunk.js +0 -2
  195. package/dist/scripts/1867-6f801de383-lite.chunk.js.map +0 -1
  196. package/dist/scripts/1891-e80f9f17ee-lite.chunk.js +0 -2
  197. package/dist/scripts/1891-e80f9f17ee-lite.chunk.js.map +0 -1
  198. package/dist/scripts/193-f08b054631-lite.chunk.js +0 -2
  199. package/dist/scripts/193-f08b054631-lite.chunk.js.map +0 -1
  200. package/dist/scripts/2004-d891104ed4-lite.chunk.js +0 -3
  201. package/dist/scripts/2004-d891104ed4-lite.chunk.js.map +0 -1
  202. package/dist/scripts/209-57b05f6c83-lite.chunk.js +0 -2
  203. package/dist/scripts/209-57b05f6c83-lite.chunk.js.map +0 -1
  204. package/dist/scripts/2134-bca2f4697e-lite.chunk.js +0 -2
  205. package/dist/scripts/2134-bca2f4697e-lite.chunk.js.map +0 -1
  206. package/dist/scripts/2703-591ccf069c-lite.chunk.js +0 -2
  207. package/dist/scripts/2703-591ccf069c-lite.chunk.js.map +0 -1
  208. package/dist/scripts/3020-dbc723b098-lite.chunk.js +0 -2
  209. package/dist/scripts/3020-dbc723b098-lite.chunk.js.map +0 -1
  210. package/dist/scripts/3633-66d28be6f8-lite.chunk.js +0 -2
  211. package/dist/scripts/3633-66d28be6f8-lite.chunk.js.map +0 -1
  212. package/dist/scripts/3728-d7ecfc6667-lite.chunk.js +0 -2
  213. package/dist/scripts/3728-d7ecfc6667-lite.chunk.js.map +0 -1
  214. package/dist/scripts/3966-a3bb0e0161-lite.chunk.js +0 -2
  215. package/dist/scripts/3966-a3bb0e0161-lite.chunk.js.map +0 -1
  216. package/dist/scripts/4182-7aecc28a6f-lite.chunk.js +0 -2
  217. package/dist/scripts/4182-7aecc28a6f-lite.chunk.js.map +0 -1
  218. package/dist/scripts/4395-64da004753-lite.chunk.js +0 -2
  219. package/dist/scripts/4395-64da004753-lite.chunk.js.map +0 -1
  220. package/dist/scripts/4502-2e30d86385-lite.chunk.js +0 -2
  221. package/dist/scripts/4502-2e30d86385-lite.chunk.js.map +0 -1
  222. package/dist/scripts/4690-03372d68ac-lite.chunk.js +0 -2
  223. package/dist/scripts/4690-03372d68ac-lite.chunk.js.map +0 -1
  224. package/dist/scripts/5143-b6896dad98-lite.chunk.js +0 -2
  225. package/dist/scripts/5143-b6896dad98-lite.chunk.js.map +0 -1
  226. package/dist/scripts/5157-54aeb51bdf-lite.chunk.js +0 -2
  227. package/dist/scripts/5157-54aeb51bdf-lite.chunk.js.map +0 -1
  228. package/dist/scripts/537-536e52ef91-lite.chunk.js +0 -3
  229. package/dist/scripts/537-536e52ef91-lite.chunk.js.map +0 -1
  230. package/dist/scripts/5562-e011962a62-lite.chunk.js +0 -3
  231. package/dist/scripts/5562-e011962a62-lite.chunk.js.map +0 -1
  232. package/dist/scripts/5573-6cd98b69f2-lite.chunk.js +0 -2
  233. package/dist/scripts/5573-6cd98b69f2-lite.chunk.js.map +0 -1
  234. package/dist/scripts/5595-96a0649af0-lite.chunk.js +0 -2
  235. package/dist/scripts/5595-96a0649af0-lite.chunk.js.map +0 -1
  236. package/dist/scripts/5606-6c25caedc4-lite.chunk.js +0 -2
  237. package/dist/scripts/5606-6c25caedc4-lite.chunk.js.map +0 -1
  238. package/dist/scripts/5877-ddfaf6a7f5-lite.chunk.js +0 -2
  239. package/dist/scripts/5877-ddfaf6a7f5-lite.chunk.js.map +0 -1
  240. package/dist/scripts/5936-f0177219db-lite.chunk.js +0 -2
  241. package/dist/scripts/5936-f0177219db-lite.chunk.js.map +0 -1
  242. package/dist/scripts/6054-14d4ceeae3-lite.chunk.js +0 -2
  243. package/dist/scripts/6054-14d4ceeae3-lite.chunk.js.map +0 -1
  244. package/dist/scripts/6094-7ec9341357-lite.chunk.js +0 -2
  245. package/dist/scripts/6094-7ec9341357-lite.chunk.js.map +0 -1
  246. package/dist/scripts/6138-d419f62f77-lite.chunk.js +0 -2
  247. package/dist/scripts/6138-d419f62f77-lite.chunk.js.map +0 -1
  248. package/dist/scripts/6263-af99de5a35-lite.chunk.js +0 -2
  249. package/dist/scripts/6263-af99de5a35-lite.chunk.js.map +0 -1
  250. package/dist/scripts/6290-56412c6663-lite.chunk.js +0 -2
  251. package/dist/scripts/6290-56412c6663-lite.chunk.js.map +0 -1
  252. package/dist/scripts/6415-8b354a10c7-lite.chunk.js +0 -2
  253. package/dist/scripts/6415-8b354a10c7-lite.chunk.js.map +0 -1
  254. package/dist/scripts/6470-6216086d63-lite.chunk.js +0 -2
  255. package/dist/scripts/6470-6216086d63-lite.chunk.js.map +0 -1
  256. package/dist/scripts/6481-03a4f1082e-lite.chunk.js +0 -2
  257. package/dist/scripts/6481-03a4f1082e-lite.chunk.js.map +0 -1
  258. package/dist/scripts/6489-953bb87f64-lite.chunk.js +0 -3
  259. package/dist/scripts/6489-953bb87f64-lite.chunk.js.map +0 -1
  260. package/dist/scripts/6532-a6b65c91a7-lite.chunk.js +0 -2
  261. package/dist/scripts/6532-a6b65c91a7-lite.chunk.js.map +0 -1
  262. package/dist/scripts/6546-bc3a8099ba-lite.chunk.js +0 -2
  263. package/dist/scripts/6546-bc3a8099ba-lite.chunk.js.map +0 -1
  264. package/dist/scripts/6587-23e7b1d196-lite.chunk.js +0 -2
  265. package/dist/scripts/6587-23e7b1d196-lite.chunk.js.map +0 -1
  266. package/dist/scripts/6604-92193d6d68-lite.chunk.js +0 -2
  267. package/dist/scripts/6604-92193d6d68-lite.chunk.js.map +0 -1
  268. package/dist/scripts/6741-ff3e4a33a5-lite.chunk.js +0 -3
  269. package/dist/scripts/6741-ff3e4a33a5-lite.chunk.js.map +0 -1
  270. package/dist/scripts/6746-b5b2739944-lite.chunk.js +0 -2
  271. package/dist/scripts/6746-b5b2739944-lite.chunk.js.map +0 -1
  272. package/dist/scripts/679-92bb80f478-lite.chunk.js +0 -2
  273. package/dist/scripts/679-92bb80f478-lite.chunk.js.map +0 -1
  274. package/dist/scripts/714-432082f4fa-lite.chunk.js +0 -2
  275. package/dist/scripts/714-432082f4fa-lite.chunk.js.map +0 -1
  276. package/dist/scripts/7178-e603ea6b58-lite.chunk.js +0 -2
  277. package/dist/scripts/7178-e603ea6b58-lite.chunk.js.map +0 -1
  278. package/dist/scripts/7223-135cc7d675-lite.chunk.js +0 -2
  279. package/dist/scripts/7223-135cc7d675-lite.chunk.js.map +0 -1
  280. package/dist/scripts/729-c704d587d3-lite.chunk.js +0 -2
  281. package/dist/scripts/729-c704d587d3-lite.chunk.js.map +0 -1
  282. package/dist/scripts/7293-687e60dba2-lite.chunk.js.map +0 -1
  283. package/dist/scripts/7679-81c2a40df4-lite.chunk.js +0 -2
  284. package/dist/scripts/7679-81c2a40df4-lite.chunk.js.map +0 -1
  285. package/dist/scripts/7757-b149c4c215-lite.chunk.js +0 -2
  286. package/dist/scripts/7757-b149c4c215-lite.chunk.js.map +0 -1
  287. package/dist/scripts/7795-3ca0855d3a-lite.chunk.js +0 -2
  288. package/dist/scripts/7795-3ca0855d3a-lite.chunk.js.map +0 -1
  289. package/dist/scripts/7818-2eafc5f812-lite.chunk.js +0 -2
  290. package/dist/scripts/7818-2eafc5f812-lite.chunk.js.map +0 -1
  291. package/dist/scripts/8200-8a55f1631f-lite.chunk.js +0 -3
  292. package/dist/scripts/8200-8a55f1631f-lite.chunk.js.map +0 -1
  293. package/dist/scripts/8323-99cb03891e-lite.chunk.js +0 -3
  294. package/dist/scripts/8323-99cb03891e-lite.chunk.js.map +0 -1
  295. package/dist/scripts/841-0c50273ad2-lite.chunk.js +0 -3
  296. package/dist/scripts/841-0c50273ad2-lite.chunk.js.map +0 -1
  297. package/dist/scripts/8722-c5f95553f2-lite.chunk.js +0 -2
  298. package/dist/scripts/8722-c5f95553f2-lite.chunk.js.map +0 -1
  299. package/dist/scripts/8766-9605550480-lite.chunk.js +0 -2
  300. package/dist/scripts/8766-9605550480-lite.chunk.js.map +0 -1
  301. package/dist/scripts/8800-c88fefeace-lite.chunk.js +0 -2
  302. package/dist/scripts/8800-c88fefeace-lite.chunk.js.map +0 -1
  303. package/dist/scripts/8982-63c31685bf-lite.chunk.js +0 -2
  304. package/dist/scripts/8982-63c31685bf-lite.chunk.js.map +0 -1
  305. package/dist/scripts/9016-0c078a39cb-lite.chunk.js +0 -3
  306. package/dist/scripts/9016-0c078a39cb-lite.chunk.js.map +0 -1
  307. package/dist/scripts/9226-c236c0eeb1-lite.chunk.js +0 -2
  308. package/dist/scripts/9226-c236c0eeb1-lite.chunk.js.map +0 -1
  309. package/dist/scripts/9230-6dee40b1fb-lite.chunk.js +0 -3
  310. package/dist/scripts/9230-6dee40b1fb-lite.chunk.js.map +0 -1
  311. package/dist/scripts/9359-fa72fcdedc-lite.chunk.js +0 -2
  312. package/dist/scripts/9359-fa72fcdedc-lite.chunk.js.map +0 -1
  313. package/dist/scripts/9399-b724e4fb06-lite.chunk.js +0 -2
  314. package/dist/scripts/9399-b724e4fb06-lite.chunk.js.map +0 -1
  315. package/dist/scripts/9719-cf7d4172b6-lite.chunk.js +0 -3
  316. package/dist/scripts/9719-cf7d4172b6-lite.chunk.js.map +0 -1
  317. package/dist/scripts/986-e9379d557d-lite.chunk.js +0 -3
  318. package/dist/scripts/986-e9379d557d-lite.chunk.js.LICENSE.txt +0 -1
  319. package/dist/scripts/986-e9379d557d-lite.chunk.js.map +0 -1
  320. package/dist/scripts/bundle-d646383f3e.min.js +0 -3
  321. package/dist/scripts/bundle-d646383f3e.min.js.map +0 -1
  322. /package/dist/css/{9173-lite-b361d438f6.chunk.css → 1104-lite-b361d438f6.chunk.css} +0 -0
  323. /package/dist/css/{679-lite-00eb7dadb2.chunk.css → 2952-lite-00eb7dadb2.chunk.css} +0 -0
  324. /package/dist/css/{1867-lite-ae7bb51ed6.chunk.css → 3640-lite-ae7bb51ed6.chunk.css} +0 -0
  325. /package/dist/css/{4860-lite-93d7fad455.chunk.css → 4063-lite-93d7fad455.chunk.css} +0 -0
  326. /package/dist/css/{729-lite-93d7fad455.chunk.css → 4850-lite-93d7fad455.chunk.css} +0 -0
  327. /package/dist/css/{6546-lite-ae7bb51ed6.chunk.css → 5549-lite-ae7bb51ed6.chunk.css} +0 -0
  328. /package/dist/css/{8766-lite-8c5d7658ec.chunk.css → 7163-lite-8c5d7658ec.chunk.css} +0 -0
  329. /package/dist/css/{1818-lite-5ef1706d69.chunk.css → 7234-lite-5ef1706d69.chunk.css} +0 -0
  330. /package/dist/css/{6415-lite-707657102b.chunk.css → 9173-lite-707657102b.chunk.css} +0 -0
  331. /package/dist/scripts/{1329-7064e95200-lite.chunk.js.LICENSE.txt → 1104-f057c6dea1-lite.chunk.js.LICENSE.txt} +0 -0
  332. /package/dist/scripts/{1379-082bbab71a-lite.chunk.js.LICENSE.txt → 1329-850346e6e6-lite.chunk.js.LICENSE.txt} +0 -0
  333. /package/dist/scripts/{1466-735d7dad48-lite.chunk.js.LICENSE.txt → 1379-976d20185f-lite.chunk.js.LICENSE.txt} +0 -0
  334. /package/dist/scripts/{1672-672f298d82-lite.chunk.js.LICENSE.txt → 1672-60a3ab42f5-lite.chunk.js.LICENSE.txt} +0 -0
  335. /package/dist/scripts/{2004-d891104ed4-lite.chunk.js.LICENSE.txt → 2004-7d1bf8b246-lite.chunk.js.LICENSE.txt} +0 -0
  336. /package/dist/scripts/{537-536e52ef91-lite.chunk.js.LICENSE.txt → 338-e21a3cd6fe-lite.chunk.js.LICENSE.txt} +0 -0
  337. /package/dist/scripts/{5562-e011962a62-lite.chunk.js.LICENSE.txt → 3532-2fed0eb7a4-lite.chunk.js.LICENSE.txt} +0 -0
  338. /package/dist/scripts/{624-7ab5fb3f3b-lite.chunk.js.LICENSE.txt → 537-f63ad5863e-lite.chunk.js.LICENSE.txt} +0 -0
  339. /package/dist/scripts/{6489-953bb87f64-lite.chunk.js.LICENSE.txt → 624-bf0ff6257f-lite.chunk.js.LICENSE.txt} +0 -0
  340. /package/dist/scripts/{6741-ff3e4a33a5-lite.chunk.js.LICENSE.txt → 6489-9287613d14-lite.chunk.js.LICENSE.txt} +0 -0
  341. /package/dist/scripts/{8200-8a55f1631f-lite.chunk.js.LICENSE.txt → 6741-572db2d1e9-lite.chunk.js.LICENSE.txt} +0 -0
  342. /package/dist/scripts/{8323-99cb03891e-lite.chunk.js.LICENSE.txt → 8200-1e4518c5d8-lite.chunk.js.LICENSE.txt} +0 -0
  343. /package/dist/scripts/{841-0c50273ad2-lite.chunk.js.LICENSE.txt → 8323-fb330a8f47-lite.chunk.js.LICENSE.txt} +0 -0
  344. /package/dist/scripts/{9173-2392d447a6-lite.chunk.js.LICENSE.txt → 841-d69c7f4b4d-lite.chunk.js.LICENSE.txt} +0 -0
  345. /package/dist/scripts/{9016-0c078a39cb-lite.chunk.js.LICENSE.txt → 9016-e17da8b633-lite.chunk.js.LICENSE.txt} +0 -0
  346. /package/dist/scripts/{9230-6dee40b1fb-lite.chunk.js.LICENSE.txt → 9230-537f1fcc38-lite.chunk.js.LICENSE.txt} +0 -0
  347. /package/dist/scripts/{9395-90b87097fa-lite.chunk.js.LICENSE.txt → 9395-e9b5cdbdce-lite.chunk.js.LICENSE.txt} +0 -0
  348. /package/dist/scripts/{9478-99486906b9-lite.chunk.js.LICENSE.txt → 9478-abfa7ed3cc-lite.chunk.js.LICENSE.txt} +0 -0
  349. /package/dist/scripts/{953-cbc7f0571e-lite.chunk.js.LICENSE.txt → 953-bf3d621a33-lite.chunk.js.LICENSE.txt} +0 -0
  350. /package/dist/scripts/{9719-cf7d4172b6-lite.chunk.js.LICENSE.txt → 9719-ed1956607c-lite.chunk.js.LICENSE.txt} +0 -0
  351. /package/dist/scripts/{bundle-d646383f3e.min.js.LICENSE.txt → bundle-9a72d04e7d.min.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/7178-e603ea6b58-lite.chunk.js","mappings":"6NAuBaA,EAAiB,SAAH,WAAMC,WAAcC,EAAI,EAAJA,KAAMC,EAAO,EAAPA,QAASC,EAAM,EAANA,OAAUC,EAAY,EAAZA,aAAY,OAClF,sBAAIC,UAAS,yBAAoBF,EAAS,UAAY,KACnDA,EACG,8BAASF,GACT,gBAAC,IAAO,CAACC,QAASA,GACjBE,GAAgB,gBAAC,IAAY,CAACE,QAAS,iBAA0BC,KAAM,EAAAC,EAAA,QACxE,wBAAMH,UAAWD,EAAe,OAAS,IAAKH,IAG/C,EAOMQ,EAAc,SAAH,GAAyC,IAAnCC,EAAW,EAAXA,YACtBC,GAAW,OAAc,QAEzBC,EAASF,aAAW,EAAXA,EAAaE,OAE5B,OAAKA,GAAWD,GAAYC,EAAS,EAC5B,iCAELD,EAEA,oCAAgB,cACd,sBAAIN,UAAU,sBACZ,gBAACN,EAAc,CAACC,WAAYU,EAAYE,EAAS,GAAIR,cAAY,MAMvE,oCAAgB,cACd,sBAAIC,UAAU,sBACXK,EAAYG,KAAI,SAACC,EAAGC,GAAG,OAAK,gBAAChB,EAAc,CAACiB,IAAKD,EAAKf,WAAYc,GAAK,KAIhF,EAEaG,EAAqB,QAAW,YAAiD,QAAtCC,SAAAA,OAAQ,IAAG,IAAC,EAGlE,OAFiB,OAAc,QAI3B,uBAAKb,UAAU,6BAA6Bc,MAAO,CAAEC,OAAQ,YAAaC,MAAO,UAKnF,oCAAgB,cACd,sBAAIhB,UAAU,sBACX,2BAA4C,CAAEa,SAAAA,IAAYL,KAAI,WAAYE,GAAG,IAAZM,EAAK,EAALA,MAAK,OACrE,sBAAIL,IAAKD,EAAKV,UAAU,mBACtB,wBAAMA,UAAU,4CAA4Cc,MAAO,CAAEE,MAAAA,GAASC,wBAAyB,CAAEC,OAAQ,WAC9G,KAKf,G,kBCrFA,IAAYC,E,iBAAZ,SAAYA,GACV,qCACA,mCACA,cACA,oBACD,CALD,CAAYA,IAAAA,EAAa,I,kBCEzB,IAAYC,EAcAC,E,iBAdZ,SAAYD,GACV,+BACA,kCAGA,+BACA,6BACA,+BACA,uCACA,+BACA,8BACA,8BACD,CAZD,CAAYA,IAAAA,EAAoB,KAchC,SAAYC,GACV,+BACA,6BACA,kCACA,kCACA,yCACA,+BACA,uCACA,iCACA,sCACA,kCACA,qCACA,6BACA,mCACA,sCACA,0BACD,CAhBD,CAAYA,IAAAA,EAAkB,I,wECTxBC,EAAY,qBADA,uBAGLC,EAAoB,CAC/BC,qBAAoB,SAACC,EAAiCC,GACpD,MAAO,CACL,CACEC,GAAI,oBACJ/B,KAAM0B,EAAU,mBAChBM,QAASH,EACTI,YAAa,4BAEf,CACEF,GAAI,mBACJ/B,KAAM0B,EAAU,aAChBM,QAASF,EACTG,YAAa,2BAGnB,E,wICzBF,IAAMC,EAAyD,CAC7DjB,SAAU,EACVkB,SAAU,GACVC,SAAU,KAaCC,EAAuB,CAClCC,uBAAsB,WAAoC,I,EAAnCC,EAAA,uDAAiC,CAAC,EACjDC,EAAO,OAAH,wBACLN,GACAK,GAKL,O,EAAWE,MAAMD,EAAKvB,U,omBAAWL,KAAI,iBAAO,CAAEQ,MAAO,GAAF,OAFhBsB,KAAKC,IAAID,KAAKE,MAAMF,KAAKG,SAAWL,EAAKJ,UAAWI,EAAKL,UAEd,MAAM,GACtF,E,qOCZF,IAAMW,EAAY,0BAKLC,EAAuB,SAACC,GACnC,IAAQC,GAAmB,SAAnBA,eACFC,GAAiB,SAOvB,GAAIF,EACF,OAAOC,EAAeD,GAExB,IAAMG,EAAe,2BAOrB,OAAIA,EAAaC,cAAgB,cAG1BF,EAAeG,MAAK,SAAAC,GACzB,OAAOA,EAAMC,QAAQF,MAAK,SAAAG,GACxB,MAAI,YAAaA,GACRA,EAAevD,QAAQwD,SAAWN,EAAaM,MAI1D,GACF,GACF,EAUM,SAAUC,EAAeC,G,MACvBC,EAAYb,EAAqBY,EAAMX,qBAW7C,GATA,aAAgB,WACTY,GACH,eAA2B,CACzBR,YAAa,aACbK,OAAQ,mBACP,CAAEI,SAAS,GAElB,GAAG,CAACD,KAECA,EACH,OAAO,iCAET,I,EAAMnD,EAAckD,EAAMlD,YAAYG,KAAI,SAACZ,EAAM8D,GAAC,MAAM,CACtD9D,KAAAA,EACAC,QAAS,CACPmD,YAAa,aACbK,OAAQ,mBAEVvD,OAAQ4D,IAAMH,EAAMlD,YAAYE,OAAS,EAC1C,IAED,OACE,uBAAKP,UAAU,QACb,uBAAKA,UAAU,qDACb,sBAAIA,UAAU,MAAMuD,EAAMI,SACN,QAAnB,EAAAJ,EAAMK,qBAAa,wBAEtB,uBAAK5D,UAAU,QACb,gBAAC,KAAW,CACVK,YAAW,CACT,CACET,KAAM,cAA0B8C,EAAW,sBAC3C7C,QAAS,CACPmD,YAAa,aACbK,OAAQ,qBAEX,Q,EACEhD,E,wmBAIRkD,EAAMM,aACL,gCACE,yBAAIN,EAAMM,aACV,4BAIHN,EAAMO,SAGb,C,2UCjHA,SAAgB,gBAAkB,QAAQ,6BAA+B,QAAQ,kBAAoB,QAAQ,qBAAuB,QAAQ,gBAAkB,QAAQ,gBAAkB,QAAQ,yBAA2B,QAAQ,4BAA8B,QAAQ,yBAA2B,S,2tBCmBpS,IACMxC,EAAYyC,EAAA,mBADA,8BAOZC,EAAwB,WAC3B7C,EAAA,kBAAgC8C,EAAA,gCAChC9C,EAAA,iBAA+B8C,EAAA,+BAC/B9C,EAAA,OAAqB8C,EAAA,qBACrB9C,EAAA,UAAwB8C,EAAA,wBAGrBC,EAAuB,SAC1B/C,EAAA,kBAAgC,gCAChCA,EAAA,OAAqB,qBACrBA,EAAA,UAAwB,wBAGrBgD,EAAuB,EAAH,SACvBhD,EAAA,kBAAgC,kBAChCA,EAAA,iBAA+B,kBAC/BA,EAAA,OAAqB,qBACrBA,EAAA,UAAwB,wBAUrB,SAAUiD,EAAkBb,G,UAEyC,G,EAAzC,WAAeA,EAAMc,YAAYzC,S,EAAQ,E,o4BAAjEA,EAAO,KAAE0C,EAAU,KAK3B,aAAgB,WACdA,EAAWf,EAAMc,YAAYzC,QAC/B,GAAG,CAAC2B,EAAMgB,cAEV,IAAMC,EAAWR,EAAyBT,EAAMc,YAAY1C,IACtD8C,EAAkE,QAA7C,EAAAP,EAAwBX,EAAMc,YAAY1C,WAAG,QAAI,GACtE+C,EAASnB,EAAMc,YAAYK,OAC3BC,EAAWD,GAAUA,IAAWE,EAAAC,EAAA,UAEtC,OACE,uBAAK7E,UAAU,oBACb,uBAAKA,UAAS,8FAAyFyE,IACrG,gBAACK,EAAuB,CACtBJ,OAAQA,EACRK,iBAAkBxB,EAAMc,YAAYU,iBACpCC,iBAAkBzB,EAAMc,YAAYW,mBAEtC,uBAAKC,IAAKT,EAAUxE,UAAW,qBAEjC,uBAAKA,UAAU,kBACb,uBAAKA,UAAU,qDACb,wBAAMA,UAAU,QACbuD,EAAMc,YAAYzE,MAErB,gBAACsF,EAAA,EAAY,CACXC,QAAS,WACP5B,EAAM6B,oBAAoB7B,EAAMc,aAAczC,GAC9C0C,GAAY1C,EACd,EACAyD,GAAIzD,EACJ+C,SAAUA,KAGd,2BACE,qBACEW,KAAMC,EAAA,iBAA6BpB,EAAqBZ,EAAMc,YAAY1C,KAC1E6D,OAAO,SACPxF,UAAU,aAETsB,EAAU,gBAMvB,CAMA,IAAMmE,EAAyB,SAC5Bb,EAAAC,EAAA,UAA8B,4BAC9BD,EAAAC,EAAA,aAAiC,+BACjCD,EAAAC,EAAA,UAA8B,4BAG3Ba,EAAqB,SACxBd,EAAAC,EAAA,UAA8BvD,EAAU,yBACxCsD,EAAAC,EAAA,aAAiCvD,EAAU,4BAC3CsD,EAAAC,EAAA,UAA8BvD,EAAU,yBAS3C,SAASwD,EAAwB,GAIF,I,IAH7BJ,EAAM,EAANA,OACAK,EAAgB,EAAhBA,iBACAC,EAAgB,EAAhBA,iBASMW,EAA4D,QAAjC,EAAAF,EAA0Bf,UAAO,QAAI,GAChEkB,EAA2C,QAA7B,EAAAF,EAAsBhB,UAAO,QAAI,GAErD,OACE,uBAAK1E,UAAS,0FAAqF,oBACjG,uBAAKA,UAAU,sCACX2F,GAA4B,wBAAM3F,UAAS,uBAAkB,kBAAsB,YAAI2F,KACvFC,GAAe,wBAAM5F,UAAS,mBAAsB4F,IAEtDZ,GACA,gBAACa,EAAA,EAAS,CAAC7F,UAAS,4BAA+BmF,QAjBzD,SAA0BW,GACxBA,EAAEC,kBACFD,EAAEE,iBAEF,eAA2BhB,EAC7B,GAaQ,gBAACiB,EAAA,EAAY,CACX/F,KAAM+F,EAAA9F,EAAA,OACNF,QAAS,SACTiG,MAAOnB,EACPoB,iBAAiB,MACjBC,iBAAe,KAM3B,C,eCnKA,SAAgB,cAAgB,SCOhC,SAASC,EAAyB9C,GAChC,OACE,uBAAKvD,UAAWuD,EAAMvD,WACpB,uBAAKA,UAAS,sDAAiD,kBAAsB,KAK3F,CAMM,SAAUsG,EAA2B/C,GACzC,OACE,gCACE,gBAAC8C,EAAwB,CAACrG,UAAWuD,EAAMvD,YAC3C,gBAACqG,EAAwB,CAACrG,UAAWuD,EAAMvD,YAGjD,CC5BA,SAAgB,gBAAkB,S,2tBC4BlC,IACM,EAAY+D,EAAA,mBADA,gCAGZwC,EAAqB,EAAH,OACrB3B,EAAAC,EAAA,UAA8B,EAAU,+BACxCD,EAAAC,EAAA,aAAiC,EAAU,kCAC3CD,EAAAC,EAAA,UAA8B,EAAU,+BAGrC,SAAU2B,I,YAKsF,G,EAA1D,WAAuD,CAAC,G,EAAE,E,o4BAA5FC,EAAY,KAAEC,EAAe,KAE/BC,GAAS,SAETC,EAAc,kBAAkCC,EAAA,iBAChDC,EAAS,kBAA6BC,EAAA,YACtCC,EAAa,mBACD,QAAhB,EAAAJ,EAAYK,YAAI,eAAEC,kBAAmBC,EAAA,8BAGvC,GAOI,EAAAC,EAAA,GAAY,eANdC,EAAsB,EAAtBA,uBACAC,EAAqB,EAArBA,sBACAC,EAAyB,EAAzBA,0BACAC,EAAsB,EAAtBA,uBACAC,EAAa,EAAbA,cACAC,EAAiB,EAAjBA,kBAGIC,EAAoBpG,EAAA,uBAAuC8F,EAAwBC,GAEnFM,EAAqB,CACzB,CACEjG,GAAIR,EAAA,UACJvB,KAAM,EAAU,WAChBiC,YAAagG,EAAA,4BACb7C,iBAAkB,CAChBhC,YAAa,aACbK,OAAQ,uBAEV0B,iBAAkB,EAAU,kBAC5BnD,QAAS2F,GAEX,CACE5F,GAAIR,EAAA,OACJvB,KAAM,EAAU,QAChBiC,YAAagG,EAAA,yBACb7C,iBAAkB,CAChBhC,YAAa,aACbK,OAAQ,mBAEV0B,iBAAqD,QAAnC,EAAAwB,EAAmBS,EAAWC,aAAK,QAAI,GACzDrF,QAAS4F,EACT9C,OAAQsC,EAAWC,OAIjBa,IAAelB,EAAYK,QAC7BH,EAAOG,MACTD,EAAWe,eACVL,EAEGM,EAAyBJ,EAAmBrH,OAAS,EAE3D,SAAS6E,EAAoBf,EAA0B4D,GACrD,IAAMC,EAAmBD,EAAS,2BAA6B,4BACzDE,EAAiBF,EAAS,yBAA2B,0BAYrDG,EAAa,CACjBxI,KAAMyE,EAAYxC,YAClBwG,MAAOJ,EACPK,KAAMC,EAAA,aAGRd,EAAcb,EAAYK,KAAKuB,WAAYJ,GAhB3C,WACEzB,EAAO8B,QAAQ,EAAUP,EAAkB,CAAEQ,gBAAiBrE,EAAYzE,KAAM+I,YAAY,KAC5FjC,GAAgB,SAAAkC,GAAM,OAAI,+BAAMA,GAAM,KAAGvE,EAAYzE,MAAO,GAAK,GACnE,IAEA,WACE+G,EAAOkC,MAAM,EAAUV,EAAgB,CAAEO,gBAAiBrE,EAAYzE,KAAM+I,YAAY,KACxFjC,GAAgB,SAAAkC,GAAM,OAAI,+BAAMA,GAAM,KAAGvE,EAAYzE,MAAO,GAAI,GAClE,GASF,CAEA,OACE,gBAAC0D,EAAA,EAAc,CACbK,QAAS,EAAU,gBACnBtD,YAAa,CAAC,EAAU,kBAExB,sBAAIL,UAAU,MAAM,EAAU,sBAC9B,qBAAGA,UAAU,QAAQ,EAAU,iCAC/B,uBAAKA,UAAU,SACZ8H,EACGH,EAAkBnH,KAAI,SAAC6D,EAAayE,G,MAAU,OAC9C,uBAAKnI,IAAKmI,EAAO9I,UAAS,6BAAwB,oBAChD,gBAACoE,EAAiB,CAChBC,YAAaA,EACbe,oBAAqBA,EACrBb,YAA2C,QAA9B,EAAAkC,EAAapC,EAAYzE,aAAK,SAC3CmJ,gBAAiBnC,EAAYK,KAAK+B,c,IAItC,gBAAC1C,EAA0B,CAACtG,UAAS,6BAAwB,sBAIlEgI,GACC,gCACE,sBAAIhI,UAAU,WAAW,EAAU,uBACnC,qBAAGA,UAAU,QAAQ,EAAU,kCAC/B,uBAAKA,UAAU,SACZ8H,EACGF,EAAmBpH,KAAI,SAAC6D,EAAayE,G,MAAU,OAC/C,uBAAKnI,IAAKmI,EAAO9I,UAAS,6BAAwB,oBAChD,gBAACoE,EAAiB,CAChBC,YAAaA,EACbe,oBAAqBA,EACrBb,YAA2C,QAA9B,EAAAkC,EAAapC,EAAYzE,aAAK,SAC3CmJ,gBAAiBnC,EAAYK,KAAK+B,c,IAItC,gBAAC1C,EAA0B,CAACtG,UAAS,6BAAwB,uBAO7E,C","sources":["file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/enums/IntegrationId.ts","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/libs/shared/src/utils/IntegrationHelper.ts","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/integration-toggle.scss","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/IntegrationToggle.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/partial-integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/PartialIntegrationSettings.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/IntegrationSettingsView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: '&nbsp' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","export enum IntegrationId {\n GoogleClassroom = 'google-classroom',\n MicrosoftTeams = 'microsoft-teams',\n Vivi = 'vivi',\n AppleTv = 'apply-tv'\n}","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '22110291468057',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097'\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { Integration } from 'libs/shared/interfaces';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport const IntegrationHelper = {\n getShareIntegrations(googleClassroomSetting: boolean, msftTeamsSetting: boolean): Integration[] {\n return [\n {\n id: IntegrationId.GoogleClassroom,\n name: getPhrase('googleClassroom'),\n enabled: googleClassroomSetting,\n settingName: SettingName.ShareToGoogleClassroom\n },\n {\n id: IntegrationId.MicrosoftTeams,\n name: getPhrase('msftTeams'),\n enabled: msftTeamsSetting,\n settingName: SettingName.ShareToMicrosoftTeams\n }\n ];\n }\n};\n","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"integrationIcon\":\"bqV8U\",\"googleClassroomIconContainer\":\"Rl7gP\",\"viviIconContainer\":\"qCgv4\",\"appleTvIconContainer\":\"ASg8C\",\"headerContainer\":\"GmPjw\",\"statusIndicator\":\"_2Tuy\",\"connectedStatusIndicator\":\"Q9uug\",\"notConnectedStatusIndicator\":\"kn43h\",\"reconnectStatusIndicator\":\"Kx6Vr\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { CountryCode } from 'libs/shared/enums/CountryCode';\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { Integration } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './integration-toggle.scss';\n\nconst namespace = 'settings.integrationToggle';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype IntegrationLookup = {\n [key in IntegrationId]?: string;\n}\n\nconst IntegrationIconImageUrls: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: ImageUrls.Integrations.GoogleClassroom,\n [IntegrationId.MicrosoftTeams]: ImageUrls.Integrations.MicrosoftTeams,\n [IntegrationId.Vivi]: ImageUrls.Integrations.Vivi,\n [IntegrationId.AppleTv]: ImageUrls.Integrations.AppleTV\n};\n\nconst IconContainerClassNames: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: styles.googleClassroomIconContainer,\n [IntegrationId.Vivi]: styles.viviIconContainer,\n [IntegrationId.AppleTv]: styles.appleTvIconContainer\n};\n\nconst IntregrationArticles = {\n [IntegrationId.GoogleClassroom]: LiteSupportArticle.Integrations,\n [IntegrationId.MicrosoftTeams]: LiteSupportArticle.Integrations,\n [IntegrationId.Vivi]: LiteSupportArticle.ViviIntegration,\n [IntegrationId.AppleTv]: LiteSupportArticle.AppleTvIntegration\n};\n\ninterface IntegrationToggleProps {\n integration: Integration;\n onToggleIntegration: (integration: Integration, enable: boolean) => void;\n updateError: boolean;\n userCountryCode: CountryCode;\n}\n\nexport function IntegrationToggle(props: IntegrationToggleProps): JSX.Element {\n // Store enabled in local state so the toggle updated immediately\n const [ enabled, setEnabled ] = React.useState(props.integration.enabled);\n\n /**\n * Resync enabled with api value if there is an error\n */\n React.useEffect(() => {\n setEnabled(props.integration.enabled);\n }, [props.updateError]);\n\n const imageUrl = IntegrationIconImageUrls[props.integration.id];\n const containerClassName = IconContainerClassNames[props.integration.id] ?? '';\n const status = props.integration.status;\n const disabled = status && status !== IntegrationStatus.Connected;\n\n return (\n <div className='border rounded-3'>\n <div className={`position-relative d-flex align-items-center justify-content-center py-4 rounded-top ${containerClassName}`}>\n <IntegrationToggleHeader\n status={status}\n configureTooltip={props.integration.configureTooltip}\n configureAppLink={props.integration.configureAppLink}\n />\n <img src={imageUrl} className={styles.integrationIcon} />\n </div>\n <div className='border-top p-2'>\n <div className='d-flex align-items-center justify-content-between'>\n <span className='me-2'>\n {props.integration.name}\n </span>\n <ToggleSwitch\n onClick={() => {\n props.onToggleIntegration(props.integration, !enabled);\n setEnabled(!enabled);\n }}\n on={enabled}\n disabled={disabled}\n />\n </div>\n <div>\n <a\n href={ArticleHelper.getLiteArticle(IntregrationArticles[props.integration.id])}\n target='_blank'\n className='text-info'\n >\n {getPhrase('learnMore')}\n </a>\n </div>\n </div>\n </div>\n );\n}\n\ntype StatusLookup = {\n [key in IntegrationStatus]?: string;\n}\n\nconst StatusIndicatorClassNames: StatusLookup = {\n [IntegrationStatus.Connected]: styles.connectedStatusIndicator,\n [IntegrationStatus.NotConnected]: styles.notConnectedStatusIndicator,\n [IntegrationStatus.Reconnect]: styles.reconnectStatusIndicator\n};\n\nconst StatusIndicatorLabels: StatusLookup = {\n [IntegrationStatus.Connected]: getPhrase('connectedStatusLabel'),\n [IntegrationStatus.NotConnected]: getPhrase('notConnectedStatusLabel'),\n [IntegrationStatus.Reconnect]: getPhrase('reconnectStatusLabel')\n};\n\ninterface IntegrationToggleHeaderProps {\n status?: IntegrationStatus;\n configureTooltip?: string;\n configureAppLink?: Core.AppLink;\n}\n\nfunction IntegrationToggleHeader({\n status,\n configureTooltip,\n configureAppLink\n}: IntegrationToggleHeaderProps): JSX.Element {\n function onClickConfigure(e: React.MouseEvent): void {\n e.stopPropagation();\n e.preventDefault();\n\n Core.AppLinkHelper.trigger(configureAppLink);\n }\n\n const statusIndicatorClassName = StatusIndicatorClassNames[status] ?? '';\n const statusLabel = StatusIndicatorLabels[status] ?? '';\n\n return (\n <div className={`d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ${styles.headerContainer}`}>\n <div className='d-flex flex-row align-items-center'>\n { statusIndicatorClassName && <span className={`inline-block ${styles.statusIndicator} ${statusIndicatorClassName}`} /> }\n { statusLabel && <span className={`ms-1 text-white`}>{statusLabel}</span> }\n </div>\n { configureAppLink && (\n <DivButton className={`cursor-pointer text-white`} onClick={onClickConfigure}>\n <SvgContainer\n size={SvgContainerSize.Medium}\n svgName={cvSvgLibrary.Cog}\n title={configureTooltip}\n tooltipPlacement='top'\n tooltipSpanHack\n />\n </DivButton>\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialToggle\":\"p5int\"};","import React from 'react';\n\nimport styles from './partial-integration-settings.scss';\n\ninterface PartialIntegrationToggleProps {\n className: string;\n}\n\nfunction PartialIntegrationToggle(props: PartialIntegrationToggleProps): JSX.Element {\n return (\n <div className={props.className}>\n <div className={`border rounded-3 partial-loading-background ${styles.partialToggle}`}>\n &nbsp;\n </div>\n </div>\n );\n}\n\ninterface PartialIntegrationSettingsProps {\n className: string;\n}\n\nexport function PartialIntegrationSettings(props: PartialIntegrationSettingsProps): JSX.Element {\n return (\n <>\n <PartialIntegrationToggle className={props.className} />\n <PartialIntegrationToggle className={props.className} />\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"toggleContainer\":\"roVyL\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { SettingKind } from 'libs/shared/enums/SettingKind';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlayerIntegrationsRequests } from 'libs/shared/flight-requests/PlayerIntegrationsRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Config, CurrentUser, Integration } from 'libs/shared/interfaces';\nimport { IntegrationHelper } from 'libs/shared/utils/IntegrationHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { IntegrationToggle } from 'apps/settings/components/integration-toggle/IntegrationToggle';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport { PartialIntegrationSettings } from './partial-loading/PartialIntegrationSettings';\n\nimport styles from './integration-settings.scss';\n\nconst namespace = 'settings.integrationSettings';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst viviTooltipPhrases = {\n [IntegrationStatus.Connected]: getPhrase('viviConnectedStatusTooltip'),\n [IntegrationStatus.NotConnected]: getPhrase('viviNotConnectedStatusTooltip'),\n [IntegrationStatus.Reconnect]: getPhrase('viviReconnectStatusTooltip')\n};\n\nexport function IntegrationSettingsView(): JSX.Element {\n /**\n * IntegrationToggle will blindly update the UI before the api call is returned so we need a way\n * to let if know if there is an error updating the setting\n */\n const [ updateErrors, setUpdateErrors ] = React.useState<{ [integrationName: string ]: boolean}>({});\n\n const alerts = useAlerts();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const viviStatus = Flight.useBasicFetch<IntegrationStatus>(\n currentUser.data?.isAuthenticated && PlayerIntegrationsRequests.getViviIntegrationStatus()\n );\n\n const {\n shareToGoogleClassroom,\n shareToMicrosoftTeams,\n hasEnabledAppleTvPlayback,\n hasEnabledViviPlayback,\n updateSetting,\n isLoadingSettings\n } = useSettings(LocationContext.Settings);\n\n const shareIntegrations = IntegrationHelper.getShareIntegrations(shareToGoogleClassroom, shareToMicrosoftTeams);\n\n const playerIntegrations = [\n {\n id: IntegrationId.AppleTv,\n name: getPhrase('appleTv'),\n settingName: SettingName.HasEnabledAppleTvPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.APPLE_TV\n },\n configureTooltip: getPhrase('appleTvTooltip'),\n enabled: hasEnabledAppleTvPlayback\n },\n {\n id: IntegrationId.Vivi,\n name: getPhrase('vivi'),\n settingName: SettingName.HasEnabledViviPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIVI\n },\n configureTooltip: viviTooltipPhrases[viviStatus.data] ?? '',\n enabled: hasEnabledViviPlayback,\n status: viviStatus.data\n }\n ];\n\n const dataLoaded = !!currentUser.data &&\n !!config.data &&\n viviStatus.hasCompleted &&\n !isLoadingSettings;\n\n const showPlayerIntegrations = playerIntegrations.length > 0;\n\n function onToggleIntegration(integration: Integration, enable: boolean): void {\n const successPhraseKey = enable ? 'enableIntegrationSuccess' : 'disableIntegrationSuccess';\n const errorPhraseKey = enable ? 'enableIntegrationError' : 'disableIntegrationError';\n\n function success(): void {\n alerts.success(getPhrase(successPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: false }));\n }\n\n function error(): void {\n alerts.error(getPhrase(errorPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: true }));\n }\n\n const newSetting = {\n name: integration.settingName,\n value: enable,\n kind: SettingKind.Temporary\n };\n\n updateSetting(currentUser.data.customerId, newSetting, success, error);\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('integrations')}\n breadcrumbs={[getPhrase('integrations')]}\n >\n <h2 className='h4'>{getPhrase('shareIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('shareIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? shareIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n\n {showPlayerIntegrations && (\n <>\n <h2 className='h4 mt-3'>{getPhrase('playerIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('playerIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? playerIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n </>\n )}\n </SettingsLayout>\n );\n}"],"names":["BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","className","svgName","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","IntegrationId","OnlineSupportArticle","LiteSupportArticle","getPhrase","IntegrationHelper","getShareIntegrations","googleClassroomSetting","msftTeamsSetting","id","enabled","settingName","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Array","Math","max","floor","random","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","action","SettingsLayout","props","canAccess","replace","i","heading","headingButton","description","children","LanguageService","IntegrationIconImageUrls","ImageUrls","IconContainerClassNames","IntregrationArticles","IntegrationToggle","integration","setEnabled","updateError","imageUrl","containerClassName","status","disabled","IntegrationStatus","I","IntegrationToggleHeader","configureTooltip","configureAppLink","src","ToggleSwitch","onClick","onToggleIntegration","on","href","ArticleHelper","target","StatusIndicatorClassNames","StatusIndicatorLabels","statusIndicatorClassName","statusLabel","DivButton","e","stopPropagation","preventDefault","SvgContainer","title","tooltipPlacement","tooltipSpanHack","PartialIntegrationToggle","PartialIntegrationSettings","viviTooltipPhrases","IntegrationSettingsView","updateErrors","setUpdateErrors","alerts","currentUser","UserRequests","config","ConfigRequests","viviStatus","data","isAuthenticated","PlayerIntegrationsRequests","useSettings","shareToGoogleClassroom","shareToMicrosoftTeams","hasEnabledAppleTvPlayback","hasEnabledViviPlayback","updateSetting","isLoadingSettings","shareIntegrations","playerIntegrations","SettingName","dataLoaded","hasCompleted","showPlayerIntegrations","enable","successPhraseKey","errorPhraseKey","newSetting","value","kind","SettingKind","customerId","success","integrationName","escapeText","errors","error","index","userCountryCode","countryCode"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7223],{49935:(e,t,a)=>{a.d(t,{Oo:()=>u,b2:()=>d});var n=a(32735),r=a(36848),i=a(86764),c=a(3747),s=a(5859),o=a(35223),l=a(83914),m=function(e){var t=e.breadcrumb,a=t.name,i=t.appLink,c=t.active,s=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(c?" active":"")},c?n.createElement("strong",null,a):n.createElement(r.F,{appLink:i},s&&n.createElement(l.x,{svgName:o.vn.ChevronLeft,size:l.S.Small}),n.createElement("span",{className:s?"ms-2":""},a)))},u=function(e){var t=e.breadcrumbs,a=(0,c.a)(i.r.XS),r=null==t?void 0:t.length;return!r||a&&r<2?n.createElement(n.Fragment,null):a?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(m,{breadcrumb:t[r-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},t.map((function(e,t){return n.createElement(m,{key:t,breadcrumb:e})}))))},d=n.memo((function(e){var t=e.numItems,a=void 0===t?3:t;return(0,c.a)(i.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},s.u.getPartialLoadingItems({numItems:a}).map((function(e,t){var a=e.width;return n.createElement("li",{key:t,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:a},dangerouslySetInnerHTML:{__html:"&nbsp"}}))}))))}))},38502:(e,t,a)=>{a.d(t,{r:()=>u});var n=a(32735),r=a(49985),i=a(36848),c=a(18559),s=a(11607),o=a(83914),l=a(87432);function m(e){return n.createElement(n.Fragment,null,!!e.tab.svgName&&n.createElement("div",{className:e.tab.name?"pe-1":""},n.createElement(o.x,{svgName:e.tab.svgName})),e.tab.name,"number"==typeof e.tab.count&&n.createElement("div",{className:"ps-2"},n.createElement(c.C,{type:c.g.Count,data:e.tab.count})))}function u(e){var t;return n.createElement("nav",{className:null!==(t=e.className)&&void 0!==t?t:"",ref:e.containerRef},n.createElement("ul",{className:"\n list-unstyled d-inline-block m-0 ".concat(l.Z.pillTabSelector,"\n ").concat(e.borderRadius?l.Z.radiusSmall:"","\n ").concat(e.listClassName,"\n ")},e.tabs.map((function(e,t){return n.createElement("li",{className:"\n p-0 ".concat(l.Z.tab," ").concat(e.active?"btn btn-dark":"btn btn-outline-dark","\n ").concat(e.name?l.Z.minWidth:""," ").concat(e.className,"\n "),key:t},e.appLink?n.createElement(i.F,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ".concat(l.Z.tabLink,"\n ")},n.createElement(m,{tab:e})):n.createElement(s.L,{className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ".concat(l.Z.tabLink,"\n "),onClick:function(){return function(e){!e.active&&e.onSelect&&(e.onSelect(),e.analyticsData&&e.analyticsOptions&&r.k.logUserAction(e.analyticsData,e.analyticsOptions))}(e)}},n.createElement(m,{tab:e})))}))))}u.defaultProps={borderRadius:"lg"}},74696:(e,t,a)=>{a.d(t,{S:()=>l});var n=a(32735),r=a(68050),i=a(69111),c=a(9977),s=a(79967);const o={partialOptions:"Gufgq",partialName:"SicQQ",partialDescription:"dPGMq",partialThumbnail:"vZrnb",partialDragHandle:"iq73R"};function l(e){return n.createElement("div",{className:"mx-2"},Array(e.numVideos).fill(null).map((function(t,a){return n.createElement("div",{className:"d-flex",key:a},e.allowBulkActions&&n.createElement("div",{className:"form-check pe-3 pe-sm-2 mx-0 mx-md-2"}),n.createElement(m,Object.assign({},e)))})))}function m(e){var t=(0,s.k)(),a="sm"===c.O.getSize(t,"md"),l=e.withReordering&&!t.xs;return n.createElement(r.Z,{className:"".concat(a?"":"py-2"," flex-grow-1")},n.createElement(i.Z,Object.assign({},c.O.getThumbnailColumns(),{className:"flex-column align-items-flex-start ".concat(a?"pb-2 pe-1":"mb-1 pe-3 pe-md-2")}),n.createElement(r.Z,null,!!l&&n.createElement("div",{className:"d-flex align-items-center justify-content-center col-2"},n.createElement("div",{className:"partial-loading-background ".concat(o.partialDragHandle)})),n.createElement(i.Z,{xs:c.O.getThumbnailColSize(l)},n.createElement("div",{className:"partial-loading-background ".concat(a?"rounded":"rounded-3"," ").concat(o.partialThumbnail)})))),n.createElement(i.Z,Object.assign({},c.O.getDetailsColumns(),{className:a?"pb-2":"px-2"}),n.createElement("div",{className:"partial-loading-background mb-1 ".concat(o.partialName)}),n.createElement("div",{className:"partial-loading-background ".concat(o.partialDescription)})))}l.defaultProps={numVideos:15}},99705:(e,t,a)=>{var n,r;a.d(t,{b:()=>r}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(n||(n={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="22110291468057",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097"}(r||(r={}))},5859:(e,t,a)=>{function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}a.d(t,{u:()=>i});var r={numItems:5,minWidth:50,maxWidth:100},i={getPartialLoadingItems:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=Object.assign(Object.assign({},r),t);return(e=Array(a.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*a.maxWidth),a.minWidth),"px")}}))}}},23224:(e,t,a)=>{a.d(t,{j:()=>p});var n=a(32735),r=a(39202),i=a(23481),c=a(65858),s=a(38502),o=a(14070),l=a(97291),m="settings.restrictedVideosTabs",u=i.T.encloseNamespace(m),d={restrictedVideos:{application:l.O.SETTINGS,action:o.e.Settings.VIDEO_RESTRICTIONS},contentReview:{application:l.O.SETTINGS,action:o.e.Settings.CONTENT_REVIEW},contentReviewSettings:{application:l.O.SETTINGS,action:o.e.Settings.CONTENT_REVIEW_SETTINGS}};function p(e){return n.createElement("div",{className:"mb-3"},n.createElement(s.r,{tabs:[{name:u("restrictedVideos"),appLink:d.restrictedVideos,active:"restricted-videos"===e.active,analyticsData:{name:u("restrictedVideos"),url:r.C$.getHref(d.restrictedVideos)},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}},{name:u("contentReview"),appLink:d.contentReview,active:"content-review"===e.active,analyticsData:{name:i.T.getPhrase(m,"contentReview"),url:r.C$.getHref(d.contentReview)},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}},{name:u("contentReviewSettings"),appLink:d.contentReviewSettings,active:"content-review-settings"===e.active,analyticsData:{name:i.T.getPhrase(m,"contentReviewSettings"),url:r.C$.getHref(d.contentReviewSettings)},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}}]}))}},81803:(e,t,a)=>{a.d(t,{d:()=>v});var n=a(32735),r=a(81886),i=a(23481),c=a(49935),s=a(22902),o=a(14070),l=a(97291),m=a(96368);function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}var d="settings.settingsLayout",p=function(e){var t=(0,s.T)().hasPermissions,a=(0,m.e)();if(e)return t(e);var n=r.Q.C$.getCurrentAppLink();return n.application!==l.O.SETTINGS||a.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===n.action}))}))};function v(e){var t,a=p(e.requiredPermissions);if(n.useEffect((function(){a||r.Q.C$.trigger({application:l.O.SETTINGS,action:o.e.Settings.HOME},{replace:!0})}),[a]),!a)return n.createElement(n.Fragment,null);var s,m=e.breadcrumbs.map((function(t,a){return{name:t,appLink:{application:l.O.SETTINGS,action:o.e.Settings.HOME},active:a===e.breadcrumbs.length-1}}));return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"d-flex align-items-center justify-content-between"},n.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),n.createElement("div",{className:"pb-3"},n.createElement(c.Oo,{breadcrumbs:[{name:i.T.getPhrase(d,"settingsBreadcrumb"),appLink:{application:l.O.SETTINGS,action:o.e.Settings.HOME}}].concat((s=m,function(e){if(Array.isArray(e))return u(e)}(s)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(s)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?u(e,t):void 0}}(s)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&n.createElement(n.Fragment,null,n.createElement("p",null,e.description),n.createElement("hr",null)),e.children)}},97383:(e,t,a)=>{a.r(t),a.d(t,{VideoRestrictionsView:()=>M});var n=a(32735),r=a(23481),i=a(20354),c=a(65858),s=a(36848),o=a(37395),l=a(83345),m=a(74696),u=a(13231),d=a(51365),p=a(16714),v=a(5345),b=a(1666),g=a(31949),E=a(22902),f=a(26361),y=a(14070),S=a(97291),N=a(21491),k=a(51855),T=a(27638),h=a(10741),I=a(22490),O=a(82431),w=a(23224),L=a(81803),C=a(23232),A=a(99705),R=a(12778),x=a(99742),j="settings.videoRestrictions",V=r.T.encloseNamespace(j);function P(){var e=R.o.getLiteArticle(A.b.ContentReview);return n.createElement(C.u,null,n.createElement(C.u.Image,{src:x.W.EmptyStates.ContentReview.RESTRICTED_VIDEOS}),n.createElement(C.u.Heading,null,n.createElement(l.x,{namespace:j,phrase:"emptyHeading"})),n.createElement(C.u.Cta,{href:e,text:V("emptyCta"),className:"btn btn-link info-link"}))}var G="settings.videoRestrictions",D=r.T.encloseNamespace(G),F={application:S.O.SETTINGS,action:y.e.Settings.CONTENT_PERMISSIONS};function M(e){var t,a,r,C,A,R=(0,T.u)(c.LZ.VideoThumbnail),x=R.setFavourite,j=R.canFavourite,V=(0,E.T)().hasPermissions,M=(0,k.G)().isPlugin,_=i.a.useBasicFetch(N.I.getRestrictedObjects([v.c.User],e.cursor)),Z=i.a.useBasicFetch(g.N.currentUser()),W=i.a.useBasicFetch(Z.data&&b.h.yearGroups(Z.data.customerId));return n.createElement(L.d,{heading:D("heading"),breadcrumbs:[D("breadcrumb")],requiredPermissions:p.C.ManageVideoAccess},n.createElement(w.j,{active:"restricted-videos"}),n.createElement("div",{className:"d-flex justify-content-between align-items-center"},n.createElement("p",{className:"mb-0"},n.createElement(l.x,{namespace:G,phrase:"description"})," ",n.createElement(s.F,{appLink:F,className:"info-link"},n.createElement(l.x,{namespace:G,phrase:"contentPermissions"})))),n.createElement("hr",null),!_.hasCompleted&&n.createElement(m.S,null),_.hasCompleted&&!(null===(a=null===(t=_.data)||void 0===t?void 0:t.data)||void 0===a?void 0:a.length)&&n.createElement(P,null),!!(null===(C=null===(r=_.data)||void 0===r?void 0:r.data)||void 0===C?void 0:C.length)&&n.createElement(n.Fragment,null,n.createElement(d.M.Provider,{value:{getVideoActions:function(e,t){return[{order:1,label:D("manageVideoAccess"),button:!0,className:"btn btn-outline-dark text-nowrap",appLink:{application:S.O.DEFAULT,action:y.e.Default.MANAGE_ACCCESS,params:{objectId:e.id,objectTypeId:e.typeId}},analyticsOptions:Object.assign(Object.assign({},t.analyticsOptions),{actionType:c.Vw.SetAccess,workflowPhase:c.eu.Start}),analyticsData:t.analyticsData}]}}},n.createElement(u.E4,{videos:_.data.data.filter((function(e){return!!f.l.getRestrictionByType(e,v.c.User)})),yearGroups:W.data,getVideoAppLink:I.W.getAppLink,getSubTextAppLink:function(e){return O.j.getSeriesAppLink(e.series)},setFavourite:x,canFavourite:j,hasPermissions:V,presentationAudiences:[],getPreviewQuestionsAppLink:function(e){return h.j.getPreviewQuestionsAppLink(e)},isPlugin:M,getClassroomGuideAppLink:I.W.getClassroomGuideAppLink,getInteractiveGuidanceAppLink:I.W.getInteractiveGuidanceAppLink,getResourceGuidanceAppLink:I.W.getResourceGuidanceAppLink})),(null===(A=_.data.pagination)||void 0===A?void 0:A.cursors)&&n.createElement("div",{className:"clearfix"},n.createElement(o.t,{cursors:_.data.pagination.cursors,appLink:{application:S.O.SETTINGS,action:y.e.Settings.VIDEO_RESTRICTIONS},buttonVariant:"outline-dark",className:"py-2 float-end"}))))}},21491:(e,t,a)=>{a.d(t,{I:()=>c});var n=a(99940),r=a(97395),i=a(62803),c={getRestrictions:function(e){return{key:"restrictions:".concat(e),url:r._.urlBuilder("{gateway}/v1/objects/restrictions",{id:e})}},addRestriction:function(e){return{type:n.k.POST,key:"restrictions:".concat(e.objectTypeId,":").concat(e.objectId,":add"),url:"{gateway}/v1/restrictions",data:[e],invalidationKeys:["restrictions"]}},deleteRestrictions:function(e){return{url:r._.urlBuilder("{gateway}/v1/restrictions",{objectId:e}),key:"restrictions:delete",type:n.k.DELETE,invalidationKeys:["restrictions"]}},getRestrictedObjects:function(e,t){var a={type:e,"query.video":i.v.VIDEO_COLLECTION,"query.interactive":i.v.INTERACTIVE_COLLECTION,"query.clip":i.v.CLIP_COLLECTION};return t&&(a.cursor=t),{url:r._.urlBuilder("{gateway}/v1/restrictions/objects",a),key:"restrictions:objects:".concat(e.sort().join(","),":").concat(t)}},approveAll:function(){return{url:"{gateway}/v1/library-reviews/restrictions",key:"restrictions:approve:all",type:n.k.DELETE}}}},87432:(e,t,a)=>{a.d(t,{Z:()=>n});const n={pillTabSelector:"Hdi6o",tab:"RvNxr",minWidth:"GHSz9",radiusSmall:"VhJJa",tabLink:"WFyvo"}},68050:(e,t,a)=>{a.d(t,{Z:()=>l});var n=a(95685),r=a.n(n),i=a(32735),c=a(46304),s=a(74512);const o=i.forwardRef((({bsPrefix:e,className:t,as:a="div",...n},i)=>{const o=(0,c.vE)(e,"row"),l=(0,c.pi)(),m=(0,c.zG)(),u=`${o}-cols`,d=[];return l.forEach((e=>{const t=n[e];let a;delete n[e],null!=t&&"object"==typeof t?({cols:a}=t):a=t;const r=e!==m?`-${e}`:"";null!=a&&d.push(`${u}${r}-${a}`)})),(0,s.jsx)(a,{ref:i,...n,className:r()(t,o,...d)})}));o.displayName="Row";const l=o}}]);
2
- //# sourceMappingURL=7223-135cc7d675-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/7223-135cc7d675-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/components/video-list/partial-loading/partial-video-list.scss","file:///app/packages/libs/shared/src/components/video-list/partial-loading/PartialVideoList.tsx","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/restricted-videos-tabs/RestrictedVideosTabs.tsx","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/views/video-restrictions/VideoRestrictionsEmptyState.tsx","file:///app/packages/projects/lite/src/apps/settings/views/video-restrictions/VideoRestrictionsView.tsx","file:///app/packages/projects/lite/src/shared/flight-requests/RestrictionRequests.ts","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss","file:///app/node_modules/react-bootstrap/esm/Row.js"],"sourcesContent":["import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: '&nbsp' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svgName && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svgName={props.tab.svgName} />\n </div>\n )}\n\n {props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svgName?: string;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n containerRef?: (el: HTMLElement) => void;\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg'\n}\n\nPillTabSelector.defaultProps = {\n borderRadius: 'lg'\n};\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n\n return (\n <nav className={props.className ?? ''} ref={props.containerRef}>\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${props.borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"partialOptions\":\"Gufgq\",\"partialName\":\"SicQQ\",\"partialDescription\":\"dPGMq\",\"partialThumbnail\":\"vZrnb\",\"partialDragHandle\":\"iq73R\"};","import React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport { VideoListHelper } from 'libs/shared/components/video-list/VideoListHelper';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\n\nimport styles from './partial-video-list.scss';\n\ninterface PartialVideoListProps {\n withReordering?: boolean;\n numVideos?: number;\n allowBulkActions?: boolean;\n}\n\nPartialVideoList.defaultProps = {\n numVideos: 15\n};\n\nexport function PartialVideoList(props: PartialVideoListProps): JSX.Element {\n return (\n <div className='mx-2'>\n {Array(props.numVideos).fill(null).map((_, i) => (\n <div className='d-flex' key={i}>\n {props.allowBulkActions && <div className='form-check pe-3 pe-sm-2 mx-0 mx-md-2' />}\n <PartialVideoItem {...props} />\n </div>\n ))}\n </div>\n );\n}\n\nexport function PartialVideoItem(props: PartialVideoListProps): JSX.Element {\n const breakpoints = useBreakpoints();\n\n const size = VideoListHelper.getSize(breakpoints, 'md');\n const isSmall = size === 'sm';\n\n const withDragHandle = props.withReordering && !breakpoints.xs;\n\n return (\n <Row className={`${isSmall ? '' : 'py-2'} flex-grow-1`}>\n <Col {...VideoListHelper.getThumbnailColumns()} className={`flex-column align-items-flex-start ${isSmall ? `pb-2 pe-1` : 'mb-1 pe-3 pe-md-2'}`}>\n <Row>\n {!!withDragHandle && (\n <div className='d-flex align-items-center justify-content-center col-2'>\n <div className={`partial-loading-background ${styles.partialDragHandle}`} />\n </div>\n )}\n <Col xs={VideoListHelper.getThumbnailColSize(withDragHandle)}>\n <div className={`partial-loading-background ${isSmall ? 'rounded' : 'rounded-3'} ${styles.partialThumbnail}`} />\n </Col>\n </Row>\n </Col>\n <Col {...VideoListHelper.getDetailsColumns()} className={isSmall ? 'pb-2' : 'px-2'}>\n <div className={`partial-loading-background mb-1 ${styles.partialName}`} />\n <div className={`partial-loading-background ${styles.partialDescription}`} />\n </Col>\n </Row>\n );\n}\n\n","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '22110291468057',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097'\n}\n","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'settings.restrictedVideosTabs';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst APPLINKS = {\n restrictedVideos: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIDEO_RESTRICTIONS\n },\n contentReview: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_REVIEW\n },\n contentReviewSettings: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_REVIEW_SETTINGS\n }\n};\n\ninterface RestrictionTabsProps {\n active: 'restricted-videos' | 'content-review' | 'content-review-settings'\n}\n\nexport function RestrictionTabs(props: RestrictionTabsProps): JSX.Element {\n return (\n <div className='mb-3'>\n <PillTabSelector\n tabs={[{\n name: getPhrase('restrictedVideos'),\n appLink: APPLINKS.restrictedVideos,\n active: props.active === 'restricted-videos',\n analyticsData: {\n name: getPhrase('restrictedVideos'),\n url: AppLinkHelper.getHref(APPLINKS.restrictedVideos)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('contentReview'),\n appLink: APPLINKS.contentReview,\n active: props.active === 'content-review',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'contentReview'),\n url: AppLinkHelper.getHref(APPLINKS.contentReview)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('contentReviewSettings'),\n appLink: APPLINKS.contentReviewSettings,\n active: props.active === 'content-review-settings',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'contentReviewSettings'),\n url: AppLinkHelper.getHref(APPLINKS.contentReviewSettings)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }]}\n />\n </div>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'settings.videoRestrictions';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function VideoRestrictionsEmptyState(): JSX.Element {\n const href = ArticleHelper.getLiteArticle(LiteSupportArticle.ContentReview);\n\n return (\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.ContentReview.RESTRICTED_VIDEOS} />\n <EmptyState.Heading><Text namespace={namespace} phrase='emptyHeading' /></EmptyState.Heading>\n <EmptyState.Cta\n href={href}\n text={getPhrase('emptyCta')}\n className='btn btn-link info-link'\n />\n </EmptyState>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Pagination } from 'libs/shared/components/pagination/Pagination';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoActionsContext, VideoActionsOptions } from 'libs/shared/context/VideoActionsContext';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { CurrentUser, VideoTypes, VideoTypesCollection, YearGroup } from 'libs/shared/interfaces';\nimport { RestrictionHelper } from 'libs/shared/utils/RestrictionHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { RestrictionRequests } from 'shared/flight-requests/RestrictionRequests';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useLiteFavourites } from 'shared/hooks/useLiteFavourites';\nimport { InteractiveHelpers } from 'shared/utils/InteractiveHelper';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\nimport { RestrictionTabs } from 'apps/settings/components/restricted-videos-tabs/RestrictedVideosTabs';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\nimport { VideoRestrictionsEmptyState } from 'apps/settings/views/video-restrictions/VideoRestrictionsEmptyState';\n\nconst namespace = 'settings.videoRestrictions';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst ContentPermissionAppLink = {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_PERMISSIONS\n};\n\ninterface VideoRestrictionsViewProps {\n cursor?: string;\n}\n\nexport function VideoRestrictionsView(props: VideoRestrictionsViewProps): JSX.Element {\n const { setFavourite, canFavourite } = useLiteFavourites(LocationContext.VideoThumbnail);\n const { hasPermissions } = usePermissions();\n const { isPlugin } = usePluginHelper();\n\n const videos = Flight.useBasicFetch<VideoTypesCollection>(\n RestrictionRequests.getRestrictedObjects([RestrictionType.User], props.cursor)\n );\n \n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n function getVideoActions(video: VideoTypes, options: VideoActionsOptions): ActionOptions[] {\n return [{\n order: 1,\n label: getPhrase('manageVideoAccess'),\n button: true,\n className: 'btn btn-outline-dark text-nowrap',\n appLink: {\n application: AppChannels.DEFAULT,\n action: Actions.Default.MANAGE_ACCCESS,\n params: {\n objectId: video.id,\n objectTypeId: video.typeId\n }\n },\n analyticsOptions: {\n ...options.analyticsOptions,\n actionType: UserAction.SetAccess,\n workflowPhase: WorkflowPhase.Start\n },\n analyticsData: options.analyticsData\n }];\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('heading')}\n breadcrumbs={[getPhrase('breadcrumb')]}\n requiredPermissions={PermissionName.ManageVideoAccess}\n >\n <RestrictionTabs active='restricted-videos' />\n <div className='d-flex justify-content-between align-items-center'>\n <p className='mb-0'>\n <Text namespace={namespace} phrase='description'/>\n &nbsp;\n <AppLink appLink={ContentPermissionAppLink} className='info-link'>\n <Text namespace={namespace} phrase='contentPermissions'/>\n </AppLink>\n </p>\n </div>\n <hr />\n {!videos.hasCompleted &&\n <PartialVideoList />\n }\n\n {videos.hasCompleted && !videos.data?.data?.length &&\n <VideoRestrictionsEmptyState />\n }\n\n {!!videos.data?.data?.length &&\n <>\n <VideoActionsContext.Provider value={{ getVideoActions }}>\n <VideoList\n videos={videos.data.data.filter(v =>\n !!RestrictionHelper.getRestrictionByType(v, RestrictionType.User))}\n yearGroups={yearGroups.data}\n getVideoAppLink={VideoAppLinkHelper.getAppLink}\n getSubTextAppLink={video => SeriesAppLinkHelper.getSeriesAppLink(video.series)}\n setFavourite={setFavourite}\n canFavourite={canFavourite}\n hasPermissions={hasPermissions}\n // we want to show rating badge not year group badge all the time\n presentationAudiences={[]}\n getPreviewQuestionsAppLink={interactive => InteractiveHelpers.getPreviewQuestionsAppLink(interactive)}\n isPlugin={isPlugin}\n getClassroomGuideAppLink={VideoAppLinkHelper.getClassroomGuideAppLink}\n getInteractiveGuidanceAppLink={VideoAppLinkHelper.getInteractiveGuidanceAppLink}\n getResourceGuidanceAppLink={VideoAppLinkHelper.getResourceGuidanceAppLink}\n />\n </VideoActionsContext.Provider>\n {videos.data.pagination?.cursors &&\n <div className='clearfix'>\n <Pagination\n cursors={videos.data.pagination.cursors}\n appLink={{\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIDEO_RESTRICTIONS\n }}\n buttonVariant='outline-dark'\n className='py-2 float-end'\n />\n </div>\n }\n </>\n }\n </SettingsLayout>\n );\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\n\nimport { AddRestrictionRequest } from 'shared/interfaces/requests/AddRestrictionRequest';\n\nexport const RestrictionRequests = {\n getRestrictions(id: string): Flight.Request {\n return {\n key: `restrictions:${id}`,\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/restrictions`, { id })\n };\n },\n\n addRestriction(data: AddRestrictionRequest): Flight.Request {\n return {\n type: HttpVerbs.POST,\n key: `restrictions:${data.objectTypeId}:${data.objectId}:add`,\n url: `{gateway}/v1/restrictions`,\n data: [data],\n invalidationKeys: ['restrictions']\n };\n },\n\n\n deleteRestrictions(objectId: string): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/restrictions', { objectId }),\n key: 'restrictions:delete',\n type: HttpVerbs.DELETE,\n invalidationKeys: ['restrictions']\n };\n },\n\n\n getRestrictedObjects(\n type: RestrictionType[],\n cursor?: string\n ): Flight.Request {\n const params: any = {\n 'type': type,\n 'query.video': SharedWithStatements.VIDEO_COLLECTION,\n 'query.interactive': SharedWithStatements.INTERACTIVE_COLLECTION,\n 'query.clip': SharedWithStatements.CLIP_COLLECTION\n };\n\n if (cursor)\n params.cursor = cursor;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/restrictions/objects', params),\n key: `restrictions:objects:${type.sort().join(',')}:${cursor}`\n };\n },\n\n approveAll(): Flight.Request {\n return {\n url: '{gateway}/v1/library-reviews/restrictions',\n key: 'restrictions:approve:all',\n type: HttpVerbs.DELETE\n };\n }\n};","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"tab\":\"RvNxr\",\"minWidth\":\"GHSz9\",\"radiusSmall\":\"VhJJa\",\"tabLink\":\"WFyvo\"};","\"use client\";\n\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix, useBootstrapBreakpoints, useBootstrapMinBreakpoint } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Row = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n className,\n // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\n as: Component = 'div',\n ...props\n}, ref) => {\n const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'row');\n const breakpoints = useBootstrapBreakpoints();\n const minBreakpoint = useBootstrapMinBreakpoint();\n const sizePrefix = `${decoratedBsPrefix}-cols`;\n const classes = [];\n breakpoints.forEach(brkPoint => {\n const propValue = props[brkPoint];\n delete props[brkPoint];\n let cols;\n if (propValue != null && typeof propValue === 'object') {\n ({\n cols\n } = propValue);\n } else {\n cols = propValue;\n }\n const infix = brkPoint !== minBreakpoint ? `-${brkPoint}` : '';\n if (cols != null) classes.push(`${sizePrefix}${infix}-${cols}`);\n });\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n ...props,\n className: classNames(className, decoratedBsPrefix, ...classes)\n });\n});\nRow.displayName = 'Row';\nexport default Row;"],"names":["BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","className","svgName","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","TabContents","props","tab","count","type","data","PillTabSelector","ref","containerRef","borderRadius","listClassName","tabs","index","analyticsData","analyticsOptions","onClick","onSelect","onSelectTab","defaultProps","PartialVideoList","Array","numVideos","fill","_","i","allowBulkActions","PartialVideoItem","breakpoints","useBreakpoints","isSmall","VideoListHelper","withDragHandle","withReordering","xs","Row","Col","OnlineSupportArticle","LiteSupportArticle","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Math","max","floor","random","namespace","getPhrase","APPLINKS","restrictedVideos","application","action","contentReview","contentReviewSettings","RestrictionTabs","url","actionType","entity","location","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","some","group","modules","settingsModule","SettingsLayout","canAccess","replace","heading","headingButton","description","children","LanguageService","VideoRestrictionsEmptyState","href","ArticleHelper","EmptyState","src","ImageUrls","Text","phrase","text","ContentPermissionAppLink","VideoRestrictionsView","useLiteFavourites","u","setFavourite","canFavourite","usePermissions","isPlugin","usePluginHelper","videos","RestrictionRequests","RestrictionType","cursor","currentUser","UserRequests","yearGroups","CustomerRequests","customerId","PermissionName","AppLink","hasCompleted","VideoActionsContext","value","getVideoActions","video","order","label","button","params","objectId","id","objectTypeId","typeId","workflowPhase","VideoList","filter","v","RestrictionHelper","getVideoAppLink","VideoAppLinkHelper","getSubTextAppLink","SeriesAppLinkHelper","series","presentationAudiences","getPreviewQuestionsAppLink","interactive","InteractiveHelper","getClassroomGuideAppLink","getInteractiveGuidanceAppLink","getResourceGuidanceAppLink","pagination","cursors","Pagination","buttonVariant","getRestrictions","addRestriction","invalidationKeys","deleteRestrictions","getRestrictedObjects","sort","join","approveAll","bsPrefix","as","Component","decoratedBsPrefix","minBreakpoint","sizePrefix","classes","forEach","brkPoint","propValue","cols","infix","push","displayName"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[729,4860],{96922:(e,i,t)=>{t.r(i),t.d(i,{SharedSeriesView:()=>d});var r=t(32735),c=t(81886),n=t(183),s=t(58800);function d(e){var i=c.Q.C$.getCurrentAppLink();return r.createElement(s.SeriesView,{key:e.objectId,id:e.objectId,shareId:e.shareId,getVideoAppLink:function(t){return Object.assign(Object.assign({},i),{params:{videoId:t.id,contextId:e.objectId,context:n.Q.Series}})}})}}}]);
2
- //# sourceMappingURL=729-c704d587d3-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/729-c704d587d3-lite.chunk.js","mappings":"4MAWM,SAAUA,EAAiBC,GAC/B,IAAMC,EAAiB,2BAWvB,OACE,gBAAC,EAAAC,WAAU,CACTC,IAAKH,EAAMI,SACXC,GAAIL,EAAMI,SACVE,QAASN,EAAMM,QACfC,gBAdoB,SAACC,GAAY,OAAK,+BACrCP,GAAc,CACjBQ,OAAQ,CACNC,QAASF,EAAMH,GACfM,UAAWX,EAAMI,SACjBQ,QAAS,aACV,GAWL,C","sources":["file:///app/packages/projects/lite/src/apps/share/views/shared-series/SharedSeriesView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { RelatedVideosContext } from 'libs/shared/enums/RelatedVideosContext';\nimport { Video } from 'libs/shared/interfaces';\n\nimport { SeriesView } from 'shared/views/series/SeriesView';\n\nimport { ShareLinkViewProps } from 'apps/share/interfaces/ShareLinkViewProps';\n\nexport function SharedSeriesView(props: ShareLinkViewProps): JSX.Element {\n const currentAppLink = Core.AppLinkHelper.getCurrentAppLink();\n\n const getVideoAppLink = (video: Video) => ({\n ...currentAppLink,\n params: {\n videoId: video.id,\n contextId: props.objectId,\n context: RelatedVideosContext.Series\n }\n });\n\n return (\n <SeriesView\n key={props.objectId}\n id={props.objectId}\n shareId={props.shareId}\n getVideoAppLink={getVideoAppLink}\n />\n );\n}"],"names":["SharedSeriesView","props","currentAppLink","SeriesView","key","objectId","id","shareId","getVideoAppLink","video","params","videoId","contextId","context"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/7293-687e60dba2-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/playlists/components/playlist-list/PartialPlaylistList.tsx","file:///app/packages/libs/shared/src/apps/playlists/components/playlist-count/PlaylistCount.tsx","file:///app/packages/libs/shared/src/apps/playlists/components/playlist-list/PlaylistOwnerAvatar.tsx","file:///app/packages/libs/shared/src/apps/playlists/components/playlist-list/PlaylistItem.tsx","file:///app/packages/libs/shared/src/apps/playlists/components/playlist-list/PlaylistList.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/hero-video/hero-video.scss","file:///app/packages/libs/shared/src/apps/subjects/components/hero-video/HeroVideo.tsx","file:///app/packages/libs/shared/src/components/series-tall-poster/series-tall-poster.scss","file:///app/packages/libs/shared/src/components/series-tall-poster/SeriesTallPoster.tsx","file:///app/packages/libs/shared/src/components/widgets/items/subject-widget-item/CoverPill.tsx","file:///app/packages/libs/shared/src/components/widgets/items/subject-widget-item/PartialSubjectWidgetItem.tsx","file:///app/packages/libs/shared/src/components/widgets/items/subject-widget-item/SubjectWidgetItem.tsx","file:///app/packages/libs/shared/src/components/widgets/items/subject-widget-item/EditSubjectsWidgetLink.tsx","file:///app/packages/libs/shared/src/components/widgets/items/subject-widget-item/AllSubjectsWidgetLink.tsx","file:///app/packages/libs/shared/src/enums/ClassificationStatus.ts","file:///app/packages/libs/shared/src/apps/playlists/components/playlist-list/playlist.scss","file:///app/packages/libs/shared/src/components/widgets/items/subject-widget-item/cover-pill.scss","file:///app/node_modules/react-bootstrap/esm/Row.js","file:///app/node_modules/timeago.js/esm/lang/en_US.js","file:///app/node_modules/timeago.js/esm/lang/zh_CN.js","file:///app/node_modules/timeago.js/esm/register.js","file:///app/node_modules/timeago.js/esm/utils/date.js","file:///app/node_modules/timeago.js/esm/format.js","file:///app/node_modules/timeago.js/esm/index.js"],"sourcesContent":["import * as React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport styles from './playlist.scss';\n\ninterface PartialPlaylistListProps {\n numItems?: number;\n itemClassName?: string;\n showHeading?: boolean;\n}\n\nPartialPlaylistList.defaultProps = {\n numItems: 8\n};\n\nexport function PartialPlaylistList(props: PartialPlaylistListProps): JSX.Element {\n const PARTIAL_PLAYLISTS = [...Array(props.numItems)];\n\n const className = props.itemClassName || '';\n\n return (\n <>\n {props.showHeading && <div className={`${styles.partialHeading} mb-1 partial-loading-background`} />}\n <Row className='mx-n1 mb-n2'>\n {PARTIAL_PLAYLISTS.map((p, idx) => (\n <Col key={idx} xs={6} sm={4} lg={3} className={`${className} px-1 pb-2`}>\n <div className={`${styles.playlistItem} partial-loading-background rounded-3`} />\n </Col>\n ))}\n </Row>\n </>\n );\n}","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Playlist } from 'libs/shared/interfaces';\n\nconst namespace = 'playlists.playlistCount';\n\nfunction getCount(playlist: Playlist): number | false {\n if (!playlist)\n return false;\n\n const videos = playlist.videos?.count ?? 0;\n const interactives = playlist.interactives?.count ?? 0;\n const clips = playlist.clips?.count ?? 0;\n\n return videos + interactives + clips;\n}\n\ninterface PlaylistCountProps {\n playlist: Playlist;\n}\n\nexport function PlaylistCount(props: PlaylistCountProps): JSX.Element {\n const count = getCount(props.playlist);\n\n if (count === false || Number.isNaN(count))\n return <></>;\n\n return (\n <span className='text-shadow font-size-sm'>\n <Text namespace={namespace} phrase='count' options={{ smartCount: count }} />\n </span>\n );\n}","import * as React from 'react';\n\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { ClickViewAvatar } from 'libs/shared/components/clickview-avatar/ClickViewAvatar';\nimport { CurrentUser, Playlist } from 'libs/shared/interfaces';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\ninterface PlaylistOwnerAvatarProps {\n playlist: Playlist;\n imageCdnUrl: string;\n currentUser?: CurrentUser;\n}\n\nexport function PlaylistOwnerAvatar(props: PlaylistOwnerAvatarProps): JSX.Element {\n const { _liteOwner } = props.playlist;\n\n if (props.playlist._isClickViewCurated?.value)\n return (\n <ClickViewAvatar />\n );\n\n if (!_liteOwner?.id || !props.currentUser?.id)\n return <></>;\n\n const currentUserIsOwner = _liteOwner.id.toString() === props.currentUser.id.toString();\n\n if (currentUserIsOwner)\n return <></>;\n\n const url = typeof _liteOwner.avatar === 'string' ? _liteOwner.avatar : _liteOwner.avatar?.url;\n\n return (\n <Avatar\n imageUrl={url}\n imageCdnUrl={props.imageCdnUrl}\n initials={UserHelper.getInitials(_liteOwner.name, _liteOwner.surname)}\n />\n );\n}","import * as React from 'react';\nimport { format } from 'timeago.js';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { AnalyticsOptions, EntityType, HashObject } from 'libs/analytics/interfaces';\n\nimport { PlaylistCount } from 'libs/shared/apps/playlists/components/playlist-count/PlaylistCount';\nimport { PlaylistOwnerAvatar } from 'libs/shared/apps/playlists/components/playlist-list/PlaylistOwnerAvatar';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { AudienceLabel } from 'libs/shared/components/audience-label/AudienceLabel';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageSize, ResizeType } from 'libs/shared/enums/Images';\nimport { useMergeAudiences } from 'libs/shared/hooks/UseMergeAudiences';\nimport { CurrentUser, Playlist, PresentationAudience } from 'libs/shared/interfaces';\nimport { getBgColorClass } from 'libs/shared/utils/getBgColorClass';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport styles from './playlist.scss';\n\nconst namespace = 'playlists.playlistList';\n\nexport type PlaylistItemStyle = 'square' | 'round' | 'round-left';\n\nexport interface PlaylistItemProps {\n data: Playlist;\n appLink: Core.AppLink;\n currentUser?: CurrentUser;\n presentationAudiences?: PresentationAudience[];\n bgColourClassNames?: string[];\n titleClassName?: string;\n imageCdnUrl?: string;\n itemStyle?: PlaylistItemStyle;\n showCount?: boolean;\n showOwner?: boolean;\n showFallbackImage?: boolean;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n audienceLabelClass?: string;\n}\n\nPlaylistItem.defaultProps = {\n itemStyle: 'square'\n};\n\nexport function PlaylistItem(props: PlaylistItemProps): JSX.Element {\n const imageUrl = ImageHelper.createUrl(props.data.cover && props.data.cover.url, {\n size: ImageSize.Medium,\n resizeType: ResizeType.Cover\n });\n\n const audiences = props.data.subjectPresentationAudiences &&\n props.data.subjectPresentationAudiences.data;\n\n const mergedAudience = useMergeAudiences(audiences, props.presentationAudiences);\n\n let className = styles.playlistItem;\n\n const showImage = !!imageUrl || !!props.showFallbackImage;\n\n if (showImage)\n className += ` ${styles.playlistItemGradient}`;\n\n if (!showImage && props.bgColourClassNames)\n className += ` ${styles.playlistItem} ${getBgColorClass(props.data.name, props.bgColourClassNames)}`;\n\n if (props.itemStyle === 'round')\n className += ` rounded-3 overflow-hidden`;\n\n if (props.itemStyle === 'round-left')\n className += ` rounded-start-lg overflow-hidden`;\n\n const analyticsData = { ...props.analyticsData,\n id: props.data?.id,\n name: props.data?.name\n };\n\n const analyticsOptions = {\n ...props.analyticsOptions,\n entity: EntityType.Playlist\n };\n\n const getTitle = () => {\n if (!props.data.contentModifiedDate || props.data._isClickViewCurated?.value)\n return '';\n\n return LanguageService.getPhrase(namespace, 'lastUpdated', {\n timeago: format(DateHelper.convertUTCToLocal(props.data.contentModifiedDate))\n });\n };\n\n return (\n <AppLink\n appLink={props.appLink}\n analyticsData={analyticsData}\n analyticsOptions={analyticsOptions}\n title={getTitle()}\n >\n <BaseImage data={imageUrl} alt={props.data.name} className={className}>\n {!!props.showFallbackImage && <ImageFallback type={ImageFallbackType.Playlist} />}\n <div className={`text-white ${styles.playlistMetadata}`}>\n {!!props.showCount && (\n <PlaylistCount playlist={props.data} />\n )}\n <h5 className={`mb-0 ${props.titleClassName || ''}`}><span className='text-shadow clamp-2'>{props.data.name}</span></h5>\n {!!audiences && !!audiences.length && !!mergedAudience &&\n <AudienceLabel\n className={`${props.audienceLabelClass ? props.audienceLabelClass : ''} mt-1`}\n audience={mergedAudience}\n border='white'\n />\n }\n </div>\n {!!props.showOwner && !!props.imageCdnUrl &&\n <div className={styles.ownerAvatarContainer}>\n <PlaylistOwnerAvatar\n playlist={props.data}\n currentUser={props.currentUser}\n imageCdnUrl={props.imageCdnUrl}\n />\n </div>\n }\n </BaseImage>\n </AppLink>\n );\n}","import * as React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport { Core } from 'libs/common/core';\n\nimport { AnalyticsOptions, ClickDescriptor, EntityType, HashObject, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { CurrentUser, Playlist, PresentationAudience } from 'libs/shared/interfaces';\n\nimport { PlaylistItem, PlaylistItemStyle } from './PlaylistItem';\n\ninterface PlaylistListProps {\n playlists: Playlist[];\n getPlaylistAppLink: (playlist: Playlist) => Core.AppLink;\n currentUser?: CurrentUser;\n presentationAudiences?: PresentationAudience[];\n itemContainerClassName?: string;\n itemTitleClassName?: string;\n bgColourClassNames?: string[];\n itemStyle?: PlaylistItemStyle;\n imageCdnUrl?: string;\n showCount?: boolean;\n showOwner?: boolean;\n showFallbackImage?: boolean;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n extraPlaylistItem?: JSX.Element;\n}\n\nconst analyticsOptions: AnalyticsOptions = {\n actionType: UserAction.Click,\n entity: EntityType.Playlist,\n location: LocationContext.PlaylistListItem,\n descriptor: ClickDescriptor.Cover\n};\n\nexport function PlaylistList(props: PlaylistListProps): JSX.Element {\n return (\n <Row as='ul' className='list-unstyled mx-n1'>\n {props.extraPlaylistItem && (\n <Col as='li' key='extra-playlist-item' xs={6} sm={4} lg={3} className={`mb-2 px-1 ${props.itemContainerClassName ? props.itemContainerClassName : ''}`}>\n {props.extraPlaylistItem}\n </Col>\n )}\n\n {props.playlists.map(p => (\n <Col as='li' key={p.id} xs={6} sm={4} lg={3} className={`mb-2 px-1 ${props.itemContainerClassName ? props.itemContainerClassName : ''}`}>\n <PlaylistItem\n data={p}\n appLink={props.getPlaylistAppLink(p)}\n imageCdnUrl={props.imageCdnUrl}\n currentUser={props.currentUser}\n presentationAudiences={props.presentationAudiences}\n bgColourClassNames={props.bgColourClassNames}\n showCount={props.showCount}\n showOwner={props.showOwner}\n showFallbackImage={props.showFallbackImage}\n titleClassName={props.itemTitleClassName}\n itemStyle={props.itemStyle}\n analyticsData={props.analyticsData}\n analyticsOptions={{ ...props.analyticsOptions, ...analyticsOptions }}\n />\n </Col>\n ))}\n </Row>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialHeroThumbnail\":\"z0_Sm\",\"partialSeriesText\":\"xuWtC\",\"partialVideoTitleText\":\"fXYdC\",\"partialBadge\":\"FlUpr\",\"partialDescription\":\"YgWxP\",\"partialSubject\":\"QBKwQ\",\"partialHeading\":\"S__E9\",\"guidance\":\"Ax9h2\",\"responsiveGuidance\":\"s3W_4\",\"description\":\"zejMP\",\"details\":\"MRyVe\"};","import React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport { Core } from 'libs/common/core';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions, HashObject, LocationContext } from 'libs/analytics/interfaces';\n\nimport { AudienceLabel } from 'libs/shared/components/audience-label/AudienceLabel';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { BadgeListContainer } from 'libs/shared/components/badges/BadgeListContainer';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { VideoItemGuidance } from 'libs/shared/components/video-list/components/video-guidance/VideoItemGuidance';\nimport { VideoItemActions } from 'libs/shared/components/video-list/components/video-item-actions/VideoItemActions';\nimport { VideoItemTitle } from 'libs/shared/components/video-list/components/video-item-title/VideoItemTitle';\nimport { VideoSubText, VideoSubTextType } from 'libs/shared/components/video-sub-text/VideoSubText';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\nimport { useMergeAudiences } from 'libs/shared/hooks/UseMergeAudiences';\nimport { CanFavouriteFunc, FavouriteFunc, PresentationAudience, Video, YearGroup } from 'libs/shared/interfaces';\nimport { GetVideoAppLinkOptions } from 'libs/shared/interfaces/VideoAppLinkOptions';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './hero-video.scss';\n\ninterface HeroVideoProps {\n video: Video;\n presentationAudiences: PresentationAudience[];\n showVideoGuidance: boolean;\n getVideoAppLink: (video: Video, opts: GetVideoAppLinkOptions) => Core.AppLink;\n subTextAppLink: Core.AppLink;\n hideInteractiveBadge?: boolean;\n setFavourite?: FavouriteFunc;\n canFavourite?: CanFavouriteFunc;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n newDurationStyle?: boolean;\n badgePosition?: 'thumbnail' | 'info-panel';\n yearGroups: YearGroup[];\n companyLogoFallbackUrl?: string;\n subTextType?: VideoSubTextType;\n imageCdnUrl: string;\n isPlugin: boolean;\n getInteractiveGuidanceAppLink?: (id: string, type: MasterType) => Core.AppLink;\n getResourceGuidanceAppLink?: (id: string, type: MasterType) => Core.AppLink;\n getClassroomGuideAppLink?: (id: string, type: MasterType) => Core.AppLink;\n}\n\nHeroVideo.defaultProps = {\n newDurationStyle: true,\n badgePosition: 'thumbnail'\n};\n\nexport function HeroVideo(props: HeroVideoProps): JSX.Element {\n const { video, presentationAudiences, getVideoAppLink, subTextAppLink, hideInteractiveBadge } = props;\n\n const videoAudiences = video?.subjectPresentationAudiences?.data;\n const mergedAudience = useMergeAudiences(videoAudiences, presentationAudiences);\n\n const analyticsOptions = AnalyticsHelper.mergeOptions(props.analyticsOptions, {\n location: LocationContext.ClassificationHero,\n entity: VideoHelper.getAnalyticsEntity(video)\n });\n\n const containerRef = React.useRef();\n \n if (!video)\n return <></>;\n\n return (\n <Row>\n <Col xs={12} md={6}>\n <div ref={containerRef} >\n <VideoThumbnail\n analyticsData={props.analyticsData}\n analyticsOptions={analyticsOptions}\n video={video}\n appLink={getVideoAppLink?.(props.video, {})}\n imageOptions={{ size: ImageSize.Medium }}\n textPosition={ThumbnailTextPosition.Independent}\n type='static'\n setFavourite={props.setFavourite}\n canFavourite={props.canFavourite}\n audience={props.badgePosition === 'thumbnail' ? mergedAudience : null}\n newDurationStyle={props.newDurationStyle}\n hideRating={props.badgePosition === 'thumbnail' ? !!mergedAudience : true}\n companyLogoFallbackUrl={props.companyLogoFallbackUrl}\n subTextType='none'\n imageCdnUrl={props.imageCdnUrl}\n isPlugin={props.isPlugin}\n />\n </div>\n </Col>\n <Col xs={12} md={6} className={`${styles.details} position-relative`}>\n <div className='d-flex justify-content-between'>\n <div>\n <VideoSubText\n type={props.subTextType}\n analyticsData={props.analyticsData}\n analyticsOptions={analyticsOptions}\n video={video}\n appLink={subTextAppLink}\n className='text-reset'\n />\n <VideoItemTitle\n video={video}\n analyticsData={props.analyticsData}\n analyticsOptions={analyticsOptions}\n appLink={getVideoAppLink?.(props.video, {})}\n textClassName='h4'\n yearGroups={props.yearGroups}\n />\n </div>\n <VideoItemActions\n analyticsData={props.analyticsData}\n analyticsOptions={analyticsOptions}\n video={video}\n />\n </div>\n\n {props.badgePosition === 'info-panel' && (\n <BadgeListContainer className='pb-1'>\n {!hideInteractiveBadge && <Badge type={ BadgeType.Interactive } data={video.interactives} />}\n <Badge type={ BadgeType.Rating } data={video.rating} />\n <Badge type={ BadgeType.ProductionYear } data={video.productionYear} />\n </BadgeListContainer>\n )}\n\n <p className='mb-1'><span className={styles.description}>{video.description}</span></p>\n \n {props.badgePosition === 'info-panel' && (\n <AudienceLabel\n audience={mergedAudience}\n className='mt-1'\n border='dark'\n />\n )}\n\n {props.showVideoGuidance && (\n <VideoItemGuidance\n getClassroomGuideAppLink={props.getClassroomGuideAppLink}\n getResourceGuidanceAppLink={props.getResourceGuidanceAppLink}\n getInteractiveGuidanceAppLink={props.getInteractiveGuidanceAppLink}\n video={video}\n analyticsData={props.analyticsData}\n analyticsOptions={analyticsOptions}\n containerClassName={`d-flex ${styles.guidance}`}\n responsiveClassName={styles.responsiveGuidance}\n />\n )}\n </Col>\n </Row>\n );\n}\n\nexport function PartialHeroVideo(): JSX.Element {\n return (\n <>\n <div className={`partial-loading-background mb-2 ${styles.partialHeading}`} />\n <div className='row pb-3'>\n <div className='col-6 p1'>\n <div className={`${styles.partialHeroThumbnail} partial-loading-background rounded-3`}></div>\n </div>\n <div className='col-6 p1'>\n <div className={`partial-loading-background mb-1 ${styles.partialSeriesText}`}></div>\n <div className={`partial-loading-background my-1 ${styles.partialVideoTitleText}`}></div>\n <div className='d-flex'>\n <div className={`partial-loading-background my-1 me-1 ${styles.partialBadge}`}></div>\n <div className={`partial-loading-background my-1 ms-1 ${styles.partialBadge}`}></div>\n </div>\n <div className={`partial-loading-background my-1 ${styles.partialDescription}`}></div>\n <div className={`partial-loading-background mt-2 ${styles.partialSubject}`}></div>\n </div>\n </div>\n </>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"labelContainer\":\"ieonz\",\"hoverActive\":\"vqHCl\",\"mask\":\"qEOPN\",\"largeHoverTitle\":\"ZYApF\",\"smallHoverTitle\":\"qcfHO\",\"largeHoverDescription\":\"Uh4gM\",\"smallHoverDescription\":\"TiqqV\"};","import React from 'react';\n\nimport { AudienceLabel } from 'libs/shared/components/audience-label/AudienceLabel';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { useHoverIntent } from 'libs/shared/hooks/UseHover';\nimport { useMergeAudiences } from 'libs/shared/hooks/UseMergeAudiences';\nimport { PresentationAudience, Series } from 'libs/shared/interfaces';\n\nimport styles from './series-tall-poster.scss';\n\ninterface SeriesTallPosterMaskProps {\n series: Series;\n presentationAudiences: PresentationAudience[];\n preloadImage: boolean;\n imageClass?: string;\n isSmall?: boolean;\n}\n\nexport function SeriesTallPoster(props: SeriesTallPosterMaskProps): JSX.Element {\n const [ hoverRef, isHovering ] = useHoverIntent<HTMLDivElement>({ className: styles.hoverActive });\n \n const audiences = props.series && props.series.subjectPresentationAudiences &&\n props.series.subjectPresentationAudiences.data || [];\n\n const mergedAudience = useMergeAudiences(audiences, props.presentationAudiences);\n const displayAudience = !!(audiences && audiences.length && mergedAudience);\n\n return (\n <div ref={hoverRef}>\n {isHovering &&\n <div className={`py-3 text-white text-center mb-3 ${styles.mask}`}>\n <h3 className={`fw-semibold ${styles.hoverTitle} ${props.isSmall ? styles.smallHoverTitle : styles.largeHoverTitle}`}>\n <span className='clamp-3'>\n {props.series.name}\n </span>\n </h3>\n {!!props.series.description && (\n <p className={`${styles.hoverDescription} ${props.isSmall ? styles.smallHoverDescription : styles.largeHoverDescription} mb-0`}>{props.series.description}</p>\n )}\n </div>\n }\n <BaseImage\n data={props.series.tallPoster}\n alt={props.series.name}\n imageType={ImageType.TallPosters}\n preload={props.preloadImage}\n imageOptions={{ size: ImageSize.Large }}\n imageClassName={props.imageClass ? props.imageClass : 'rounded-3'}\n >\n <ImageFallback type={ImageFallbackType.Series} />\n <div className={`position-absolute text-white text-shadow ${styles.labelContainer}`}>\n {displayAudience\n ? <AudienceLabel audience={mergedAudience} border='white' />\n : <Badge type={BadgeType.Rating} data={props.series.rating} />\n }\n </div>\n </BaseImage>\n </div>\n );\n}\n","import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { RandomHelper } from 'libs/common/react/utils/RandomHelper';\n\nimport { AnalyticsOptions, HashObject } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { BaseObject, Presentation } from 'libs/shared/interfaces';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './cover-pill.scss';\n\nconst namespace = 'shared.subjectWidgetItem';\n\ninterface NamePanelProps {\n name: string;\n multiline?: boolean;\n subtitle?: string;\n}\n\nconst ComingSoonNamePanel = ({ name, multiline }: NamePanelProps) => {\n let wrapperClassName = `${styles.comingSoonPanel} \n d-flex flex-column align-items-center justify-content-center px-3 text-center`;\n\n let textClassName = '';\n\n if (!multiline) {\n wrapperClassName += ' text-nowrap';\n textClassName += ' text-truncate';\n } else {\n textClassName += ` ${styles.clamped} clamp-2`;\n }\n\n return (\n <div className={wrapperClassName}>\n <small className='text-secondary'><Text namespace={namespace} phrase='comingSoon' /></small>\n <p className={`${styles.name} h6`}><span className={textClassName}>{name}</span></p>\n </div>\n );\n};\n\nconst NormalNamePanel = ({ name, multiline, subtitle }: NamePanelProps) => {\n let wrapperClassName = 'px-3 d-flex flex-column justify-content-center';\n let textClassName = `${styles.name} h6`;\n\n if (!multiline) {\n wrapperClassName += ' text-nowrap text-truncate';\n textClassName += ' text-truncate mb-0 pb-1';\n } else {\n textClassName += ' clamp-3 text-start';\n }\n\n return (\n <div className={wrapperClassName}>\n {subtitle && <div className={`text-secondary clamp-1 ${styles.text}`}>{subtitle}</div>}\n <div className={textClassName} title={name}>{name}</div>\n </div>\n );\n};\n\nexport interface CoverPillWidgetItemProps<T extends BaseObject> {\n data: T;\n getChildAppLink?: (data: T) => Core.AppLink;\n getChildAppLinkOptions?: () => Core.AppLinkOptions;\n isLarge?: boolean;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n availablePresentations?: Presentation[];\n getSubtitle?: (data: T) => string;\n multiline?: boolean;\n}\n\ninterface CoverPillWidgetContentProps<T> extends CoverPillWidgetItemProps<T> {\n coverUrl?: string;\n subtitle?: string;\n isComingSoon?: boolean;\n className?: string;\n imageClassName?: string;\n isSelected?: boolean;\n hideFallback?: boolean;\n hideCheckmark?: boolean;\n}\n\nexport function CoverPillWidgetContent(props: CoverPillWidgetContentProps<BaseObject>): JSX.Element {\n const coverUrl = ImageHelper.createUrl(props.coverUrl, { size: props.isLarge ? ImageSize.Medium : ImageSize.Small });\n\n const childProps = {\n name: props.data.name,\n multiline: props.isLarge || props.multiline,\n subtitle: props.subtitle\n };\n\n return (\n <div\n className={`border d-flex position-relative ${props.className} ${styles.widgetItem} ${props.isSelected ? 'border-success border-2' : ''}`}\n id={`${props.data.id}-${RandomHelper.getRandomInt()}`}\n >\n {props.isSelected && (\n <div className={`${styles.selectedMask} border-2`} />\n )}\n\n <div className={`${styles.imagePanel} ${props.isLarge ? styles.large : ''}`}>\n {props.isSelected && !props.hideCheckmark && (\n <div className={styles.selected}>\n <IconCircle svgName={cvSvgLibrary.Check} svgSize={SvgContainerSize.Large} textVariant='white' variant='green' />\n </div>\n )}\n\n <div\n className={`${styles.image} ${props.imageClassName}`}\n style={props.coverUrl ? { backgroundImage: `url('${coverUrl}')` } : {}}\n />\n {!props.hideFallback && (\n <ImageFallback\n type={ImageFallbackType.Subject}\n extraClasses={props.isLarge ? styles.large : ''}\n />\n )}\n </div>\n\n {props.isComingSoon\n ? <ComingSoonNamePanel {...childProps} />\n : <NormalNamePanel {...childProps} />\n }\n </div>\n );\n}\n\nexport function CoverPillWidgetContentWrapper(props: CoverPillWidgetContentProps<BaseObject>) {\n const appLink = props.getChildAppLink ? props.getChildAppLink(props.data) : null;\n\n return (\n <>\n {appLink ? (\n <AppLink\n className={styles.appLink}\n appLink={appLink}\n analyticsData={props.analyticsData}\n analyticsOptions={props.analyticsOptions}\n appLinkOptions={props.getChildAppLinkOptions?.()}\n >\n <CoverPillWidgetContent {...props} />\n </AppLink>\n ) : (<CoverPillWidgetContent {...props} />)\n }\n </>\n );\n}","import * as React from 'react';\n\nimport { RandomHelper } from 'libs/common/react/utils/RandomHelper';\n\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\n\nimport styles from './cover-pill.scss';\n\nexport const PartialSubjectWidgetItem = () => {\n const [width] = React.useState(RandomHelper.getRandomInt(5) + 3 + 'rem');\n\n return (\n <div className={`border d-flex position-relative me-2 ${styles.widgetItem}`}>\n <div className={styles.imagePanel} />\n <div className='px-2' style={{ width }} />\n <div className={styles.partialIcon}>\n <ImageFallback type={ImageFallbackType.Subject} />\n </div>\n </div>\n );\n};\n\nexport const PartialLargeSubjectWidgetItem = () => {\n return (\n <div className={`border d-flex position-relative me-2 ${styles.widgetItem}`}>\n <div className={`${styles.partialLargeImage}`} />\n <div className='px-2' />\n <div className={styles.partialIcon}>\n <ImageFallback type={ImageFallbackType.Subject} extraClasses={styles.partialLargeFallback} />\n </div>\n </div>\n );\n};","import * as React from 'react';\n\nimport { ClickDescriptor, EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { CoverPillWidgetContentWrapper, CoverPillWidgetItemProps } from 'libs/shared/components/widgets/items/subject-widget-item/CoverPill';\nimport { TopicsConstants } from 'libs/shared/constants/TopicsConstants';\nimport { ClassificationStatus } from 'libs/shared/enums/ClassificationStatus';\nimport { Classification, Presentation } from 'libs/shared/interfaces';\n\nfunction usePresentationName(presentationId: string, availablePresentations: Presentation[]): string {\n const showPresentationName = availablePresentations?.length >= TopicsConstants.MULTI_PRESENTATION_THRESHOLD;\n\n if (!showPresentationName) {\n return undefined;\n }\n\n return availablePresentations?.find(p => p.id === presentationId)?.name;\n}\n\nfunction SubjectWidgetItem(props: CoverPillWidgetItemProps<Classification>): JSX.Element {\n const isComingSoon = props.data?.status === ClassificationStatus.ComingSoon;\n const presentationName = usePresentationName(props.data.presentationId, props?.availablePresentations);\n\n const analyticsData = {\n ...props.analyticsData,\n id: props.data?.id,\n name: props.data?.name,\n presentationId: props.data.presentationId,\n comingSoon: !!isComingSoon\n };\n\n const analyticsOptions = {\n location: LocationContext.ClassificationListItem,\n ...props.analyticsOptions,\n actionType: UserAction.Click,\n entity: EntityType.Classification,\n descriptor: ClickDescriptor.Cover\n };\n\n return (\n <CoverPillWidgetContentWrapper\n {...props}\n analyticsData={analyticsData}\n analyticsOptions={analyticsOptions}\n coverUrl={props.data.cover?.url}\n subtitle={props.getSubtitle?.(props.data) || presentationName}\n isComingSoon={isComingSoon}\n />\n );\n}\n\nconst Memoized = React.memo(SubjectWidgetItem);\n\nexport { Memoized as SubjectWidgetItem };","import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AnalyticsOptions, ClickDescriptor, EntityType, HashObject, UserAction } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './cover-pill.scss';\n\ninterface EditSubjectsWidgetLinkProps {\n appLink: Core.AppLink;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n}\n\nconst analyticsOptions: AnalyticsOptions = {\n actionType: UserAction.Click,\n entity: EntityType.UserSetting,\n descriptor: ClickDescriptor.Tile\n};\n\nexport function EditSubjectsWidgetLink(props: EditSubjectsWidgetLinkProps): JSX.Element {\n const className =\n `${styles.editSubjectsItem} d-flex position-relative px-3 justify-content-center align-items-center`;\n\n return (\n <AppLink\n appLink={props.appLink}\n className='text-decoration-none'\n analyticsData={{ ...props.analyticsData, type: 'subject-preference' }}\n analyticsOptions={ { ...props.analyticsOptions, ...analyticsOptions }}\n >\n <div className={className}>\n <SvgContainer svgName={cvSvgLibrary.Edit} className='me-2 align-middle d-inline-block svg-container' />\n <p className='h6 align-middle text-truncate'><Text namespace='shared.subjectWidgetItem' phrase='edit' /></p>\n </div>\n </AppLink>\n );\n}","import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AnalyticsOptions, ClickDescriptor, EntityType, HashObject, UserAction } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { ClickViewLogoInverted } from 'libs/shared/components/svgs/clickview-logo/ClickViewLogo';\nimport { Text } from 'libs/shared/components/text/Text';\n\nimport styles from './cover-pill.scss';\n\ninterface AllSubjectsWidgetLinkProps {\n appLink: Core.AppLink;\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n}\n\nconst analyticsOptions: AnalyticsOptions = {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n descriptor: ClickDescriptor.Tile\n};\n\nexport function AllSubjectsWidgetLink(props: AllSubjectsWidgetLinkProps): JSX.Element {\n const className =\n `${styles.allSubjectsItem}\n d-flex flex-column position-relative px-2\n align-items-center justify-content-center text-nowrap bg-navy`;\n\n return (\n <AppLink\n appLink={props.appLink}\n className='text-decoration-none'\n analyticsData={{ ...props.analyticsData, type: 'subject-all' }}\n analyticsOptions={ { ...props.analyticsOptions, ...analyticsOptions }}\n >\n <div className={className}>\n <div className={styles.logoContainer}>\n <ClickViewLogoInverted />\n </div>\n <p className='h6 pt-2 px-3 mb-0'><Text namespace='shared.subjectWidgetItem' phrase='all' /></p>\n </div>\n </AppLink>\n );\n}\n","// Maps to enum in SubjectApi but uses the\n// key rather than the value as SubjectsApi returns the key.\nexport enum ClassificationStatus {\n Draft = 'Draft',\n ComingSoon = 'ComingSoon',\n Published = 'Published'\n}","// extracted by mini-css-extract-plugin\nexport default {\"playlistItem\":\"CaRJx\",\"playlistItemGradient\":\"BI7p2\",\"playlistMetadata\":\"eDk1l\",\"partialHeading\":\"w4lWh\",\"ownerAvatarContainer\":\"JImqE\"};","// extracted by mini-css-extract-plugin\nexport default {\"appLink\":\"fFjKN\",\"name\":\"A_by9\",\"selectedMask\":\"xSQtR\",\"widgetItem\":\"Ys9W_\",\"text\":\"JfAoy\",\"imagePanel\":\"aUNDc\",\"partialLargeImage\":\"RuLxv\",\"selected\":\"BViJb\",\"image\":\"LkTep\",\"dragHandle\":\"CJqvP\",\"large\":\"R5clw\",\"comingSoonPanel\":\"Wa2PG\",\"editSubjectsItem\":\"gGNFD\",\"allSubjectsItem\":\"IHdlJ\",\"logoContainer\":\"Nzaes\",\"draggingItem\":\"zUOye\",\"partialLargeFallback\":\"FmJP9\",\"partialIcon\":\"sdZuo\"};","\"use client\";\n\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix, useBootstrapBreakpoints, useBootstrapMinBreakpoint } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Row = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n className,\n // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\n as: Component = 'div',\n ...props\n}, ref) => {\n const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'row');\n const breakpoints = useBootstrapBreakpoints();\n const minBreakpoint = useBootstrapMinBreakpoint();\n const sizePrefix = `${decoratedBsPrefix}-cols`;\n const classes = [];\n breakpoints.forEach(brkPoint => {\n const propValue = props[brkPoint];\n delete props[brkPoint];\n let cols;\n if (propValue != null && typeof propValue === 'object') {\n ({\n cols\n } = propValue);\n } else {\n cols = propValue;\n }\n const infix = brkPoint !== minBreakpoint ? `-${brkPoint}` : '';\n if (cols != null) classes.push(`${sizePrefix}${infix}-${cols}`);\n });\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n ...props,\n className: classNames(className, decoratedBsPrefix, ...classes)\n });\n});\nRow.displayName = 'Row';\nexport default Row;","var EN_US = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['just now', 'right now'];\n var unit = EN_US[Math.floor(idx / 2)];\n if (diff > 1)\n unit += 's';\n return [diff + \" \" + unit + \" ago\", \"in \" + diff + \" \" + unit];\n}\n//# sourceMappingURL=en_US.js.map","var ZH_CN = ['秒', '分钟', '小时', '天', '周', '个月', '年'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['刚刚', '片刻后'];\n var unit = ZH_CN[~~(idx / 2)];\n return [diff + \" \" + unit + \"\\u524D\", diff + \" \" + unit + \"\\u540E\"];\n}\n//# sourceMappingURL=zh_CN.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\n/**\n * All supported locales\n */\nvar Locales = {};\n/**\n * register a locale\n * @param locale\n * @param func\n */\nexport var register = function (locale, func) {\n Locales[locale] = func;\n};\n/**\n * get a locale, default is en_US\n * @param locale\n * @returns {*}\n */\nexport var getLocale = function (locale) {\n return Locales[locale] || Locales['en_US'];\n};\n//# sourceMappingURL=register.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nvar SEC_ARRAY = [\n 60,\n 60,\n 24,\n 7,\n 365 / 7 / 12,\n 12,\n];\n/**\n * format Date / string / timestamp to timestamp\n * @param input\n * @returns {*}\n */\nexport function toDate(input) {\n if (input instanceof Date)\n return input;\n // @ts-ignore\n if (!isNaN(input) || /^\\d+$/.test(input))\n return new Date(parseInt(input));\n input = (input || '')\n // @ts-ignore\n .trim()\n .replace(/\\.\\d+/, '') // remove milliseconds\n .replace(/-/, '/')\n .replace(/-/, '/')\n .replace(/(\\d)T(\\d)/, '$1 $2')\n .replace(/Z/, ' UTC') // 2017-2-5T3:57:52Z -> 2017-2-5 3:57:52UTC\n .replace(/([+-]\\d\\d):?(\\d\\d)/, ' $1$2'); // -04:00 -> -0400\n return new Date(input);\n}\n/**\n * format the diff second to *** time ago, with setting locale\n * @param diff\n * @param localeFunc\n * @returns\n */\nexport function formatDiff(diff, localeFunc) {\n /**\n * if locale is not exist, use defaultLocale.\n * if defaultLocale is not exist, use build-in `en`.\n * be sure of no error when locale is not exist.\n *\n * If `time in`, then 1\n * If `time ago`, then 0\n */\n var agoIn = diff < 0 ? 1 : 0;\n /**\n * Get absolute value of number (|diff| is non-negative) value of x\n * |diff| = diff if diff is positive\n * |diff| = -diff if diff is negative\n * |0| = 0\n */\n diff = Math.abs(diff);\n /**\n * Time in seconds\n */\n var totalSec = diff;\n /**\n * Unit of time\n */\n var idx = 0;\n for (; diff >= SEC_ARRAY[idx] && idx < SEC_ARRAY.length; idx++) {\n diff /= SEC_ARRAY[idx];\n }\n /**\n * Math.floor() is alternative of ~~\n *\n * The differences and bugs:\n * Math.floor(3.7) -> 4 but ~~3.7 -> 3\n * Math.floor(1559125440000.6) -> 1559125440000 but ~~1559125440000.6 -> 52311552\n *\n * More information about the performance of algebraic:\n * https://www.youtube.com/watch?v=65-RbBwZQdU\n */\n diff = Math.floor(diff);\n idx *= 2;\n if (diff > (idx === 0 ? 9 : 1))\n idx += 1;\n return localeFunc(diff, idx, totalSec)[agoIn].replace('%s', diff.toString());\n}\n/**\n * calculate the diff second between date to be formatted an now date.\n * @param date\n * @param relativeDate\n * @returns {number}\n */\nexport function diffSec(date, relativeDate) {\n var relDate = relativeDate ? toDate(relativeDate) : new Date();\n return (+relDate - +toDate(date)) / 1000;\n}\n/**\n * nextInterval: calculate the next interval time.\n * - diff: the diff sec between now and date to be formatted.\n *\n * What's the meaning?\n * diff = 61 then return 59\n * diff = 3601 (an hour + 1 second), then return 3599\n * make the interval with high performance.\n **/\nexport function nextInterval(diff) {\n var rst = 1, i = 0, d = Math.abs(diff);\n for (; diff >= SEC_ARRAY[i] && i < SEC_ARRAY.length; i++) {\n diff /= SEC_ARRAY[i];\n rst *= SEC_ARRAY[i];\n }\n d = d % rst;\n d = d ? rst - d : rst;\n return Math.ceil(d);\n}\n//# sourceMappingURL=date.js.map","import { formatDiff, diffSec } from './utils/date';\nimport { getLocale } from './register';\n/**\n * format a TDate into string\n * @param date\n * @param locale\n * @param opts\n */\nexport var format = function (date, locale, opts) {\n // diff seconds\n var sec = diffSec(date, opts && opts.relativeDate);\n // format it with locale\n return formatDiff(sec, getLocale(locale));\n};\n//# sourceMappingURL=format.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nimport en_US from './lang/en_US';\nimport zh_CN from './lang/zh_CN';\nimport { register } from './register';\nregister('en_US', en_US);\nregister('zh_CN', zh_CN);\nexport { format } from './format';\nexport { render, cancel } from './realtime';\nexport { register };\n//# sourceMappingURL=index.js.map"],"names":["PartialPlaylistList","props","PARTIAL_PLAYLISTS","Array","numItems","className","itemClassName","showHeading","map","p","idx","key","xs","sm","lg","defaultProps","namespace","PlaylistCount","count","playlist","videos","interactives","clips","getCount","Number","isNaN","Text","phrase","options","smartCount","PlaylistOwnerAvatar","_liteOwner","_isClickViewCurated","value","ClickViewAvatar","id","currentUser","toString","url","avatar","Avatar","imageUrl","imageCdnUrl","initials","UserHelper","name","surname","PlaylistItem","ImageHelper","data","cover","size","resizeType","audiences","subjectPresentationAudiences","mergedAudience","presentationAudiences","showImage","showFallbackImage","bgColourClassNames","getBgColorClass","itemStyle","analyticsData","analyticsOptions","entity","AppLink","appLink","title","contentModifiedDate","LanguageService","timeago","DateHelper","getTitle","BaseImage","alt","ImageFallback","type","showCount","titleClassName","length","AudienceLabel","audienceLabelClass","audience","border","showOwner","actionType","location","descriptor","PlaylistList","as","extraPlaylistItem","itemContainerClassName","playlists","getPlaylistAppLink","itemTitleClassName","HeroVideo","video","getVideoAppLink","subTextAppLink","hideInteractiveBadge","videoAudiences","AnalyticsHelper","VideoHelper","containerRef","Row","Col","md","ref","VideoThumbnail","imageOptions","textPosition","ThumbnailTextPosition","setFavourite","canFavourite","badgePosition","newDurationStyle","hideRating","companyLogoFallbackUrl","subTextType","isPlugin","VideoSubText","VideoItemTitle","textClassName","yearGroups","VideoItemActions","BadgeListContainer","Badge","rating","productionYear","description","showVideoGuidance","VideoItemGuidance","getClassroomGuideAppLink","getResourceGuidanceAppLink","getInteractiveGuidanceAppLink","containerClassName","responsiveClassName","SeriesTallPoster","hoverRef","isHovering","series","displayAudience","isSmall","tallPoster","imageType","preload","preloadImage","imageClassName","imageClass","ComingSoonNamePanel","multiline","wrapperClassName","NormalNamePanel","subtitle","CoverPillWidgetContent","coverUrl","isLarge","childProps","isSelected","hideCheckmark","svgName","svgSize","S","textVariant","variant","style","backgroundImage","hideFallback","extraClasses","isComingSoon","CoverPillWidgetContentWrapper","getChildAppLink","appLinkOptions","getChildAppLinkOptions","PartialSubjectWidgetItem","width","PartialLargeSubjectWidgetItem","Memoized","status","presentationName","presentationId","availablePresentations","find","usePresentationName","comingSoon","getSubtitle","ClassificationStatus","bsPrefix","Component","decoratedBsPrefix","breakpoints","minBreakpoint","sizePrefix","classes","forEach","brkPoint","propValue","cols","infix","push","displayName","EN_US","ZH_CN","Locales","register","locale","func","SEC_ARRAY","toDate","input","Date","test","parseInt","trim","replace","format","date","opts","sec","relativeDate","diff","localeFunc","agoIn","totalSec","Math","abs","floor","unit"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7679],{86685:(e,t,r)=>{r.d(t,{W:()=>c});var n=r(32735),a=r(83914),i=r(35223);const l={icon:"eCi4v"};function c(e){return n.createElement("div",{className:"alert alert-warning d-flex align-items-center px-2 mb-3"},n.createElement(a.x,{svgName:i.vn.WarningOutline,className:"svg-container me-2 ".concat(l.icon)}),n.createElement("div",null,e.children))}},49935:(e,t,r)=>{r.d(t,{Oo:()=>u,b2:()=>d});var n=r(32735),a=r(36848),i=r(86764),l=r(3747),c=r(5859),o=r(35223),m=r(83914),s=function(e){var t=e.breadcrumb,r=t.name,i=t.appLink,l=t.active,c=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(l?" active":"")},l?n.createElement("strong",null,r):n.createElement(a.F,{appLink:i},c&&n.createElement(m.x,{svgName:o.vn.ChevronLeft,size:m.S.Small}),n.createElement("span",{className:c?"ms-2":""},r)))},u=function(e){var t=e.breadcrumbs,r=(0,l.a)(i.r.XS),a=null==t?void 0:t.length;return!a||r&&a<2?n.createElement(n.Fragment,null):r?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(s,{breadcrumb:t[a-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},t.map((function(e,t){return n.createElement(s,{key:t,breadcrumb:e})}))))},d=n.memo((function(e){var t=e.numItems,r=void 0===t?3:t;return(0,l.a)(i.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},c.u.getPartialLoadingItems({numItems:r}).map((function(e,t){var r=e.width;return n.createElement("li",{key:t,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:r},dangerouslySetInnerHTML:{__html:"&nbsp"}}))}))))}))},5859:(e,t,r)=>{function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}r.d(t,{u:()=>i});var a={numItems:5,minWidth:50,maxWidth:100},i={getPartialLoadingItems:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=Object.assign(Object.assign({},a),t);return(e=Array(r.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*r.maxWidth),r.minWidth),"px")}}))}}},81803:(e,t,r)=>{r.d(t,{d:()=>b});var n=r(32735),a=r(81886),i=r(23481),l=r(49935),c=r(22902),o=r(14070),m=r(97291),s=r(96368);function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var d="settings.settingsLayout",p=function(e){var t=(0,c.T)().hasPermissions,r=(0,s.e)();if(e)return t(e);var n=a.Q.C$.getCurrentAppLink();return n.application!==m.O.SETTINGS||r.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===n.action}))}))};function b(e){var t,r=p(e.requiredPermissions);if(n.useEffect((function(){r||a.Q.C$.trigger({application:m.O.SETTINGS,action:o.e.Settings.HOME},{replace:!0})}),[r]),!r)return n.createElement(n.Fragment,null);var c,s=e.breadcrumbs.map((function(t,r){return{name:t,appLink:{application:m.O.SETTINGS,action:o.e.Settings.HOME},active:r===e.breadcrumbs.length-1}}));return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"d-flex align-items-center justify-content-between"},n.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),n.createElement("div",{className:"pb-3"},n.createElement(l.Oo,{breadcrumbs:[{name:i.T.getPhrase(d,"settingsBreadcrumb"),appLink:{application:m.O.SETTINGS,action:o.e.Settings.HOME}}].concat((c=s,function(e){if(Array.isArray(e))return u(e)}(c)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(c)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}(c)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&n.createElement(n.Fragment,null,n.createElement("p",null,e.description),n.createElement("hr",null)),e.children)}},28875:(e,t,r)=>{r.r(t),r.d(t,{ArchivedClassroomsView:()=>T});var n=r(32735),a=r(70680),i=r(23481),l=r(20354),c=r(86685),o=r(71020),m=r(83345),s=r(94644),u=r(39151),d=r(31949),p=r(69883),b=r(60115),g=r(79612),f=r(14070),h=r(97291),E=r(46542),v=r(91899),S=r(88630),y=r(81803),O=r(23232),C=r(99742),A="settings.archivedClassroomsEmptyState";function I(){return n.createElement(m.D.Provider,{value:A},n.createElement(O.u,null,n.createElement(O.u.Image,{src:C.W.EmptyStates.Classrooms.CLASSROOMS}),n.createElement(O.u.Heading,null,n.createElement(m.x,{phrase:"heading"})),n.createElement(O.u.Info,null,n.createElement(m.x,{phrase:"info"})),n.createElement(O.u.Cta,{appLink:{application:h.O.CLASSROOMS,action:f.e.Classrooms.HOME},className:"btn btn-dark",text:i.T.getPhrase(A,"cta")})))}var N="settings.archivedClassrooms",k=i.T.encloseNamespace(N),L={delete:{application:h.O.CLASSROOMS,action:f.e.Classrooms.DELETE_CLASSROOM},retrieve:{application:h.O.CLASSROOMS,action:f.e.Classrooms.RETRIEVE_CLASSROOM}};function T(){(0,g.M)({title:k("pageTitle")});var e=(0,p.Z)(),t=(0,a.I0)(),r=function(e){return S.F.getArchived(e)},f=function(e){return l.a.getFetch(t)(r(e))},h=l.a.useBasicFetch(u.L.config()),O=l.a.useBasicFetch(d.N.currentUser()),C=(0,b.K)(r,f,(function(t,r){if(1===t)return(0,s.r)(r);e.error(i.T.getPhrase(N,"error"))})),A=C.items,T=C.hasMore,M=C.isFetching,w=C.nextCursor;return n.createElement(y.d,{heading:k("heading"),breadcrumbs:[k("breadcrumb")]},!!(null==A?void 0:A.length)&&n.createElement(c.W,null,n.createElement(m.x,{namespace:N,phrase:"note"})),A&&h.hasCompleted?A.length?n.createElement(n.Fragment,null,n.createElement(E.D,{allClassrooms:A,imageCdnUrl:h.data.imageCdnUrl,appLinks:L,refreshTable:M,currentUser:O.data}),(T||M)&&n.createElement(o._,{isFetching:M,fetchNext:f,nextCursor:w})):n.createElement(I,null):n.createElement(v.I,null))}}}]);
2
- //# sourceMappingURL=7679-81c2a40df4-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/7679-81c2a40df4-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/user-manager/components/warning-alert/warning-alert.scss","file:///app/packages/libs/shared/src/apps/user-manager/components/warning-alert/WarningAlert.tsx","file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/views/archived-classrooms/empty-state/ArchivedClassroomsEmptyState.tsx","file:///app/packages/projects/lite/src/apps/settings/views/archived-classrooms/ArchivedClassroomsView.tsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"icon\":\"eCi4v\"};","import React from 'react';\n\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './warning-alert.scss';\n\ntype WarningAlertProps = React.PropsWithChildren<HashObject>;\n\nexport function WarningAlert(props: WarningAlertProps): JSX.Element {\n return (\n <div className='alert alert-warning d-flex align-items-center px-2 mb-3'>\n <SvgContainer\n svgName={cvSvgLibrary.WarningOutline}\n className={`svg-container me-2 ${styles.icon}`}\n />\n <div>\n {props.children}\n </div>\n </div>\n );\n}","import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: '&nbsp' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'settings.archivedClassroomsEmptyState';\n\nexport function ArchivedClassroomsEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Classrooms.CLASSROOMS} />\n\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n\n <EmptyState.Cta\n appLink={{\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.HOME\n }}\n className='btn btn-dark'\n text={LanguageService.getPhrase(namespace, 'cta')}\n />\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { WarningAlert } from 'libs/shared/apps/user-manager/components/warning-alert/WarningAlert';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Classroom, Config, CurrentUser } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { ClassroomsTable } from 'apps/classrooms/components/classrooms-table/ClassroomsTable';\nimport { PartialClassroomsTable } from 'apps/classrooms/components/classrooms-table/partial-classrooms-table/PartialClassroomsTable';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { ArchivedClassroomsTableApplinks } from 'apps/classrooms/interfaces/ClassroomsTableApplinks';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport { ArchivedClassroomsEmptyState } from './empty-state/ArchivedClassroomsEmptyState';\n\nconst namespace = 'settings.archivedClassrooms';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst applinks: ArchivedClassroomsTableApplinks = {\n delete: {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.DELETE_CLASSROOM\n },\n retrieve: {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.RETRIEVE_CLASSROOM\n }\n};\n\nexport function ArchivedClassroomsView(): JSX.Element {\n useSetPageMetadata({ title: getPhrase('pageTitle') });\n\n const alerts = useAlerts();\n const dispatch = useDispatch();\n\n const getClassroomsRequest = (cursor?: string) => ClassroomRequests.getArchived(cursor);\n const fetchNext = (cursor?: string) => Flight.getFetch(dispatch)(getClassroomsRequest(cursor));\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const {\n items,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<Classroom>(getClassroomsRequest, fetchNext, onError);\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(LanguageService.getPhrase(namespace, 'error'));\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('heading')}\n breadcrumbs={[getPhrase('breadcrumb')]}\n >\n {!!items?.length && (\n <WarningAlert><Text namespace={namespace} phrase='note'/></WarningAlert>\n )}\n\n {(() => {\n if (!items || !config.hasCompleted)\n return <PartialClassroomsTable />;\n \n if (!items.length)\n return <ArchivedClassroomsEmptyState />;\n\n return (\n <>\n <ClassroomsTable\n allClassrooms={items}\n imageCdnUrl={config.data.imageCdnUrl}\n appLinks={applinks}\n refreshTable={isFetching}\n currentUser={currentUser.data}\n />\n\n {(hasMore || isFetching) && (\n <InfiniteScrollFooter isFetching={isFetching} fetchNext={fetchNext} nextCursor={nextCursor} />\n )}\n </>\n );\n })()}\n </SettingsLayout>\n );\n}"],"names":["WarningAlert","props","className","SvgContainer","svgName","children","BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Array","Math","max","floor","random","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","action","SettingsLayout","canAccess","replace","i","heading","headingButton","description","ArchivedClassroomsEmptyState","value","EmptyState","src","ImageUrls","Text","phrase","text","LanguageService","getPhrase","applinks","delete","retrieve","ArchivedClassroomsView","useSetPageMetadata","title","alerts","dispatch","getClassroomsRequest","cursor","ClassroomRequests","fetchNext","config","ConfigRequests","currentUser","UserRequests","pageNumber","httpStatus","error","items","hasMore","isFetching","nextCursor","W","hasCompleted","ClassroomsTable","allClassrooms","imageCdnUrl","data","appLinks","refreshTable","InfiniteScrollFooter","PartialClassroomsTable"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7757],{49935:(e,a,t)=>{t.d(a,{Oo:()=>d,b2:()=>u});var n=t(32735),i=t(36848),r=t(86764),c=t(3747),l=t(5859),s=t(35223),o=t(83914),m=function(e){var a=e.breadcrumb,t=a.name,r=a.appLink,c=a.active,l=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(c?" active":"")},c?n.createElement("strong",null,t):n.createElement(i.F,{appLink:r},l&&n.createElement(o.x,{svgName:s.vn.ChevronLeft,size:o.S.Small}),n.createElement("span",{className:l?"ms-2":""},t)))},d=function(e){var a=e.breadcrumbs,t=(0,c.a)(r.r.XS),i=null==a?void 0:a.length;return!i||t&&i<2?n.createElement(n.Fragment,null):t?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(m,{breadcrumb:a[i-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},a.map((function(e,a){return n.createElement(m,{key:a,breadcrumb:e})}))))},u=n.memo((function(e){var a=e.numItems,t=void 0===a?3:a;return(0,c.a)(r.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},l.u.getPartialLoadingItems({numItems:t}).map((function(e,a){var t=e.width;return n.createElement("li",{key:a,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:t},dangerouslySetInnerHTML:{__html:"&nbsp"}}))}))))}))},74696:(e,a,t)=>{t.d(a,{S:()=>o});var n=t(32735),i=t(68050),r=t(69111),c=t(9977),l=t(79967);const s={partialOptions:"Gufgq",partialName:"SicQQ",partialDescription:"dPGMq",partialThumbnail:"vZrnb",partialDragHandle:"iq73R"};function o(e){return n.createElement("div",{className:"mx-2"},Array(e.numVideos).fill(null).map((function(a,t){return n.createElement("div",{className:"d-flex",key:t},e.allowBulkActions&&n.createElement("div",{className:"form-check pe-3 pe-sm-2 mx-0 mx-md-2"}),n.createElement(m,Object.assign({},e)))})))}function m(e){var a=(0,l.k)(),t="sm"===c.O.getSize(a,"md"),o=e.withReordering&&!a.xs;return n.createElement(i.Z,{className:"".concat(t?"":"py-2"," flex-grow-1")},n.createElement(r.Z,Object.assign({},c.O.getThumbnailColumns(),{className:"flex-column align-items-flex-start ".concat(t?"pb-2 pe-1":"mb-1 pe-3 pe-md-2")}),n.createElement(i.Z,null,!!o&&n.createElement("div",{className:"d-flex align-items-center justify-content-center col-2"},n.createElement("div",{className:"partial-loading-background ".concat(s.partialDragHandle)})),n.createElement(r.Z,{xs:c.O.getThumbnailColSize(o)},n.createElement("div",{className:"partial-loading-background ".concat(t?"rounded":"rounded-3"," ").concat(s.partialThumbnail)})))),n.createElement(r.Z,Object.assign({},c.O.getDetailsColumns(),{className:t?"pb-2":"px-2"}),n.createElement("div",{className:"partial-loading-background mb-1 ".concat(s.partialName)}),n.createElement("div",{className:"partial-loading-background ".concat(s.partialDescription)})))}o.defaultProps={numVideos:15}},5859:(e,a,t)=>{function n(e,a){(null==a||a>e.length)&&(a=e.length);for(var t=0,n=Array(a);t<a;t++)n[t]=e[t];return n}t.d(a,{u:()=>r});var i={numItems:5,minWidth:50,maxWidth:100},r={getPartialLoadingItems:function(){var e,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.assign(Object.assign({},i),a);return(e=Array(t.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,a){if(e){if("string"==typeof e)return n(e,a);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?n(e,a):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*t.maxWidth),t.minWidth),"px")}}))}}},44110:(e,a,t)=>{t.d(a,{i:()=>c});var n=t(20354),i=t(89454),r=t(86698),c=function(){var e=(0,r.y)({redirectOnError:!0}),a=e.activePresentation,t=e.getFallbackPresentation,c=a||t();return n.a.useBasicFetch(!!c&&i.O.presentationAudiences(c.id))}},35014:(e,a,t)=>{t.d(a,{I:()=>s});var n=t(16714),i=t(12754),r=t(22902),c=t(15311),l=t(11387);function s(){var e=(0,r.T)(),a=e.hasPermissions,t=e.hasLocalPermissions,s=(0,(0,c.r)().hasProduct)(i.x.Primary);return{canViewGlance:a(n.C.ViewVideoGlance),canViewResources:!0,canViewInteractives:s&&a(n.C.ViewVideoInteractives),canViewClips:s&&a(n.C.ViewVideoClips),canViewCurriculumLinks:a(n.C.ViewCurriculums),canUseActions:t(n.E.UseVideoActions),canViewPublicLayout:!t(n.E.WatchVideos)&&l.C.hasRegionPrefix(),canViewResourceItems:t(n.E.ViewVideoResourceItems),canNavigate:s}}},94191:(e,a,t)=>{t.r(a),t.d(a,{VideoClipsView:()=>P});var n=t(32735),i=t(81886),r=t(23481),c=t(20354),l=t(28400),s=t(65858),o=t(49935),m=t(13231),d=t(51365),u=t(183),p=t(43012),v=t(39151),g=t(1666),b=t(31949),f=t(1575),h=t(22902),E=t(14070),k=t(97291),y=t(51855),V=t(10671),w=t(27638),N=t(44110),C=t(35014),I=t(22490),L=t(16747),O=t(98620),x=t(82431),A=r.T.encloseNamespace("shared.videoMedia");function P(e){var a,t,r,P,S=e.videoId,j=(0,w.u)(s.LZ.VideoThumbnail),G=j.setFavourite,F=j.canFavourite,R=(0,y.G)().isPlugin,T=(0,V._)({location:V.i.VideoItem}),W=(0,C.I)(),_=c.a.useBasicFetch(b.N.currentUser()),B=c.a.useBasicFetch(_.data.isAuthenticated&&g.h.yearGroups(_.data.customerId)),D=c.a.useBasicFetch(f.R.video(S)),M=c.a.useBasicFetch(W.canViewClips&&p.e.videoClips(S)),Z=null==M?void 0:M.data,$=(null==Z?void 0:Z.length)||0,H=c.a.useBasicFetch(v.L.config()),U="".concat(A("clipHeading")," (").concat($||"",")"),Y=(0,N.i)(),z=(0,h.T)().hasPermissions,Q=[{name:null===(a=D.data)||void 0===a?void 0:a.name,appLink:Object.assign(Object.assign({},O.Y.playVideo),{args:[S,l.m.slugify(null===(t=D.data)||void 0===t?void 0:t.name)]})},{name:U,appLink:{application:k.O.VIDEOS,action:E.e.Videos.VIDEO_CLIPS,args:[S,l.m.slugify(null===(r=D.data)||void 0===r?void 0:r.name)]},active:!0}];return n.useEffect((function(){W.canViewClips||function(){var e;i.Q.C$.trigger(Object.assign(Object.assign({},O.Y.playVideo),{args:[S,l.m.slugify(null===(e=D.data)||void 0===e?void 0:e.name)]}),{replace:!0})}()}),[W.canViewClips]),D.data&&(null==Z?void 0:Z.length)&&H.hasCompleted?n.createElement(d.M.Provider,{value:T},n.createElement("div",{className:"px-3"},n.createElement("h1",{className:"h2 mb-2"},U),n.createElement("div",{className:"mb-2"},n.createElement(o.Oo,{breadcrumbs:Q})),n.createElement(m.E4,{videos:Z,yearGroups:B.data,getVideoAppLink:function(a,t){return I.W.getAppLink(a,Object.assign(Object.assign({},t),{context:u.Q.Widget,contextId:e.videoId}))},hasPermissions:z,getSubTextAppLink:function(e){return x.j.getSeriesAppLink(e.series)},setFavourite:G,canFavourite:F,presentationAudiences:Y.data,imageCdnUrl:null===(P=H.data)||void 0===P?void 0:P.imageCdnUrl,isPlugin:R,getClassroomGuideAppLink:I.W.getClassroomGuideAppLink,getInteractiveGuidanceAppLink:I.W.getInteractiveGuidanceAppLink,getResourceGuidanceAppLink:I.W.getResourceGuidanceAppLink}))):n.createElement(L.l,null)}},98620:(e,a,t)=>{t.d(a,{Y:()=>r});var n=t(14070),i=t(97291),r={playVideo:{application:i.O.VIDEOS,action:n.e.Videos.PLAY_VIDEO},playClip:{application:i.O.CLIPS,action:n.e.Clips.PLAY_CLIP}}},16747:(e,a,t)=>{t.d(a,{l:()=>l});var n=t(32735),i=t(49935),r=t(74696);const c={partialHeading:"okxfx"};function l(){return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"partial-loading-background mb-2 ".concat(c.partialHeading)}),n.createElement("div",{className:"mb-2"},n.createElement(i.b2,null)),n.createElement(r.S,null))}},68050:(e,a,t)=>{t.d(a,{Z:()=>o});var n=t(95685),i=t.n(n),r=t(32735),c=t(46304),l=t(74512);const s=r.forwardRef((({bsPrefix:e,className:a,as:t="div",...n},r)=>{const s=(0,c.vE)(e,"row"),o=(0,c.pi)(),m=(0,c.zG)(),d=`${s}-cols`,u=[];return o.forEach((e=>{const a=n[e];let t;delete n[e],null!=a&&"object"==typeof a?({cols:t}=a):t=a;const i=e!==m?`-${e}`:"";null!=t&&u.push(`${d}${i}-${t}`)})),(0,l.jsx)(t,{ref:r,...n,className:i()(a,s,...u)})}));s.displayName="Row";const o=s}}]);
2
- //# sourceMappingURL=7757-b149c4c215-lite.chunk.js.map