@clickview/lite 0.50.0 → 0.50.1-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/dist/bundles.json +2 -2
  2. package/dist/css/{6846-lite-db93efd058.chunk.css → 1850-lite-dca6b9e86d.chunk.css} +1 -0
  3. package/dist/css/{2137-lite-6d16d5d7c2.chunk.css → 2137-lite-7045732fc8.chunk.css} +2 -2
  4. package/dist/css/{2795-lite-1e800fdd04.chunk.css → 2795-lite-1641e6fbf9.chunk.css} +2 -2
  5. package/dist/css/{458-lite-ecaf4729d3.chunk.css → 3515-lite-c8a3139b8b.chunk.css} +2 -2
  6. package/dist/css/{8960-lite-a80ad92ea7.chunk.css → 4489-lite-7d5d204d0c.chunk.css} +8 -7
  7. package/dist/css/{3515-lite-ecaf4729d3.chunk.css → 458-lite-c8a3139b8b.chunk.css} +2 -2
  8. package/dist/css/{5242-lite-512783e2fb.chunk.css → 5242-lite-58cdcd1ec4.chunk.css} +2 -2
  9. package/dist/css/{5446-lite-b68e159c6c.chunk.css → 5446-lite-ae2395342f.chunk.css} +2 -2
  10. package/dist/css/6102-lite-6e94a699ed.chunk.css +39 -0
  11. package/dist/css/{1437-lite-b847c9e2b6.chunk.css → 6415-lite-707657102b.chunk.css} +1 -1
  12. package/dist/css/{9839-lite-53b02845a4.chunk.css → 6850-lite-769c93cb9e.chunk.css} +16 -16
  13. package/dist/css/{7987-lite-7006eb4ded.chunk.css → 7987-lite-94679244a2.chunk.css} +2 -2
  14. package/dist/css/{355-lite-e474c8ddce.chunk.css → 8192-lite-8721e2ed68.chunk.css} +8 -7
  15. package/dist/css/{8316-lite-f60e236048.chunk.css → 8316-lite-9083a6565c.chunk.css} +2 -2
  16. package/dist/css/{9417-lite-f60e236048.chunk.css → 9417-lite-9083a6565c.chunk.css} +2 -2
  17. package/dist/css/{9620-lite-b202aa1d5c.chunk.css → 9620-lite-d77e9ad59b.chunk.css} +1 -1
  18. package/dist/css/{7187-lite-db93efd058.chunk.css → 9818-lite-dca6b9e86d.chunk.css} +1 -0
  19. package/dist/css/{8139-lite-5511af77bf.chunk.css → 986-lite-3bf6e93049.chunk.css} +1 -0
  20. package/dist/css/{lite-app-cf9b57ee91.css → lite-app-28b7b96628.css} +8 -6
  21. package/dist/languages/en.json +1 -1
  22. package/dist/scripts/{1080-d6dfc36c03-lite.chunk.js → 1080-362271a654-lite.chunk.js} +2 -2
  23. package/dist/scripts/{1080-d6dfc36c03-lite.chunk.js.map → 1080-362271a654-lite.chunk.js.map} +1 -1
  24. package/dist/scripts/1169-3df974a8eb-lite.chunk.js +2 -0
  25. package/dist/scripts/1169-3df974a8eb-lite.chunk.js.map +1 -0
  26. package/dist/scripts/{1285-1ba9b0640e-lite.chunk.js → 1285-818f4ed377-lite.chunk.js} +1 -1
  27. package/dist/scripts/{1285-1ba9b0640e-lite.chunk.js.map → 1285-818f4ed377-lite.chunk.js.map} +1 -1
  28. package/dist/scripts/1313-455608bc46-lite.chunk.js +2 -0
  29. package/dist/scripts/1313-455608bc46-lite.chunk.js.map +1 -0
  30. package/dist/scripts/{1379-2ee86e6e68-lite.chunk.js → 1379-3a1ba4b4d9-lite.chunk.js} +3 -3
  31. package/dist/scripts/{1379-2ee86e6e68-lite.chunk.js.map → 1379-3a1ba4b4d9-lite.chunk.js.map} +1 -1
  32. package/dist/scripts/{1518-be314d1248-lite.chunk.js → 1518-b808d8043f-lite.chunk.js} +2 -2
  33. package/dist/scripts/1518-b808d8043f-lite.chunk.js.map +1 -0
  34. package/dist/scripts/{1617-3cf9199cb1-lite.chunk.js → 1617-e1735deb2a-lite.chunk.js} +1 -1
  35. package/dist/scripts/{1617-3cf9199cb1-lite.chunk.js.map → 1617-e1735deb2a-lite.chunk.js.map} +1 -1
  36. package/dist/scripts/1672-672f298d82-lite.chunk.js +3 -0
  37. package/dist/scripts/1672-672f298d82-lite.chunk.js.map +1 -0
  38. package/dist/scripts/1750-a525866169-lite.chunk.js +2 -0
  39. package/dist/scripts/1750-a525866169-lite.chunk.js.map +1 -0
  40. package/dist/scripts/1818-74a3d26afd-lite.chunk.js +2 -0
  41. package/dist/scripts/1818-74a3d26afd-lite.chunk.js.map +1 -0
  42. package/dist/scripts/1820-68114ca994-lite.chunk.js +2 -0
  43. package/dist/scripts/1820-68114ca994-lite.chunk.js.map +1 -0
  44. package/dist/scripts/{1863-a6e7446cd8-lite.chunk.js → 1863-618c9bd7af-lite.chunk.js} +1 -1
  45. package/dist/scripts/{1863-a6e7446cd8-lite.chunk.js.map → 1863-618c9bd7af-lite.chunk.js.map} +1 -1
  46. package/dist/scripts/1905-af9a8f8824-lite.chunk.js +2 -0
  47. package/dist/scripts/1905-af9a8f8824-lite.chunk.js.map +1 -0
  48. package/dist/scripts/2004-4e2d98041c-lite.chunk.js +3 -0
  49. package/dist/scripts/2004-4e2d98041c-lite.chunk.js.map +1 -0
  50. package/dist/scripts/{209-148abe2aa1-lite.chunk.js → 209-4a54845452-lite.chunk.js} +2 -2
  51. package/dist/scripts/209-4a54845452-lite.chunk.js.map +1 -0
  52. package/dist/scripts/2137-093f479ff9-lite.chunk.js +2 -0
  53. package/dist/scripts/2137-093f479ff9-lite.chunk.js.map +1 -0
  54. package/dist/scripts/2199-cfc0ff4e1e-lite.chunk.js +2 -0
  55. package/dist/scripts/2199-cfc0ff4e1e-lite.chunk.js.map +1 -0
  56. package/dist/scripts/2703-64f709f0d0-lite.chunk.js +2 -0
  57. package/dist/scripts/2703-64f709f0d0-lite.chunk.js.map +1 -0
  58. package/dist/scripts/{2795-b3f0673e3e-lite.chunk.js → 2795-0616748349-lite.chunk.js} +1 -1
  59. package/dist/scripts/{2795-b3f0673e3e-lite.chunk.js.map → 2795-0616748349-lite.chunk.js.map} +1 -1
  60. package/dist/scripts/2877-40bb796d59-lite.chunk.js +2 -0
  61. package/dist/scripts/2877-40bb796d59-lite.chunk.js.map +1 -0
  62. package/dist/scripts/3020-2b9042238c-lite.chunk.js +2 -0
  63. package/dist/scripts/3020-2b9042238c-lite.chunk.js.map +1 -0
  64. package/dist/scripts/{3070-47e46e0d89-lite.chunk.js → 3070-fb8eb47716-lite.chunk.js} +1 -1
  65. package/dist/scripts/{3070-47e46e0d89-lite.chunk.js.map → 3070-fb8eb47716-lite.chunk.js.map} +1 -1
  66. package/dist/scripts/3231-65bbddef35-lite.chunk.js +2 -0
  67. package/dist/scripts/3231-65bbddef35-lite.chunk.js.map +1 -0
  68. package/dist/scripts/3403-12c460d3f6-lite.chunk.js +2 -0
  69. package/dist/scripts/3403-12c460d3f6-lite.chunk.js.map +1 -0
  70. package/dist/scripts/3515-4de2fd7070-lite.chunk.js +2 -0
  71. package/dist/scripts/3515-4de2fd7070-lite.chunk.js.map +1 -0
  72. package/dist/scripts/3645-72ca9f63df-lite.chunk.js +3 -0
  73. package/dist/scripts/3645-72ca9f63df-lite.chunk.js.map +1 -0
  74. package/dist/scripts/3895-a54621a8c4-lite.chunk.js +2 -0
  75. package/dist/scripts/3895-a54621a8c4-lite.chunk.js.map +1 -0
  76. package/dist/scripts/458-35c635a2ce-lite.chunk.js +2 -0
  77. package/dist/scripts/458-35c635a2ce-lite.chunk.js.map +1 -0
  78. package/dist/scripts/4690-d77e912b9b-lite.chunk.js +2 -0
  79. package/dist/scripts/4690-d77e912b9b-lite.chunk.js.map +1 -0
  80. package/dist/scripts/{4718-6df54d3039-lite.chunk.js → 4718-2b58aa560d-lite.chunk.js} +1 -1
  81. package/dist/scripts/{4718-6df54d3039-lite.chunk.js.map → 4718-2b58aa560d-lite.chunk.js.map} +1 -1
  82. package/dist/scripts/5143-b6896dad98-lite.chunk.js +2 -0
  83. package/dist/scripts/5143-b6896dad98-lite.chunk.js.map +1 -0
  84. package/dist/scripts/5229-036b4d7a22-lite.chunk.js +2 -0
  85. package/dist/scripts/5229-036b4d7a22-lite.chunk.js.map +1 -0
  86. package/dist/scripts/{5242-e8f004818c-lite.chunk.js → 5242-2d752ff85e-lite.chunk.js} +1 -1
  87. package/dist/scripts/{5242-e8f004818c-lite.chunk.js.map → 5242-2d752ff85e-lite.chunk.js.map} +1 -1
  88. package/dist/scripts/5385-57d7021be7-lite.chunk.js +2 -0
  89. package/dist/scripts/5385-57d7021be7-lite.chunk.js.map +1 -0
  90. package/dist/scripts/{5446-de55c3df38-lite.chunk.js → 5446-1ef1639ef6-lite.chunk.js} +1 -1
  91. package/dist/scripts/{5446-de55c3df38-lite.chunk.js.map → 5446-1ef1639ef6-lite.chunk.js.map} +1 -1
  92. package/dist/scripts/5595-f33ed220ce-lite.chunk.js +2 -0
  93. package/dist/scripts/5595-f33ed220ce-lite.chunk.js.map +1 -0
  94. package/dist/scripts/{5936-4cac311002-lite.chunk.js → 5936-1d99b03e7b-lite.chunk.js} +2 -2
  95. package/dist/scripts/5936-1d99b03e7b-lite.chunk.js.map +1 -0
  96. package/dist/scripts/5940-511beff2ee-lite.chunk.js +2 -0
  97. package/dist/scripts/5940-511beff2ee-lite.chunk.js.map +1 -0
  98. package/dist/scripts/{610-27e5444f01-lite.chunk.js → 610-6dbeb5cd21-lite.chunk.js} +2 -2
  99. package/dist/scripts/610-6dbeb5cd21-lite.chunk.js.map +1 -0
  100. package/dist/scripts/6102-f1851eca08-lite.chunk.js +3 -0
  101. package/dist/scripts/6102-f1851eca08-lite.chunk.js.map +1 -0
  102. package/dist/scripts/6189-ce9f0eeb31-lite.chunk.js +2 -0
  103. package/dist/scripts/6189-ce9f0eeb31-lite.chunk.js.map +1 -0
  104. package/dist/scripts/{624-010454cb12-lite.chunk.js → 624-7df7efd486-lite.chunk.js} +3 -3
  105. package/dist/scripts/{624-010454cb12-lite.chunk.js.map → 624-7df7efd486-lite.chunk.js.map} +1 -1
  106. package/dist/scripts/6263-d74b5b3529-lite.chunk.js +2 -0
  107. package/dist/scripts/6263-d74b5b3529-lite.chunk.js.map +1 -0
  108. package/dist/scripts/{6274-46a7af05d7-lite.chunk.js → 6274-15e61b83dc-lite.chunk.js} +1 -1
  109. package/dist/scripts/{6274-46a7af05d7-lite.chunk.js.map → 6274-15e61b83dc-lite.chunk.js.map} +1 -1
  110. package/dist/scripts/6415-9d8b88c713-lite.chunk.js +2 -0
  111. package/dist/scripts/6415-9d8b88c713-lite.chunk.js.map +1 -0
  112. package/dist/scripts/{6433-fe9efef305-lite.chunk.js → 6433-8dd152d999-lite.chunk.js} +2 -2
  113. package/dist/scripts/{6433-fe9efef305-lite.chunk.js.map → 6433-8dd152d999-lite.chunk.js.map} +1 -1
  114. package/dist/scripts/6470-6216086d63-lite.chunk.js +2 -0
  115. package/dist/scripts/6470-6216086d63-lite.chunk.js.map +1 -0
  116. package/dist/scripts/6531-597262a181-lite.chunk.js +2 -0
  117. package/dist/scripts/6531-597262a181-lite.chunk.js.map +1 -0
  118. package/dist/scripts/6572-4dda098022-lite.chunk.js +2 -0
  119. package/dist/scripts/6572-4dda098022-lite.chunk.js.map +1 -0
  120. package/dist/scripts/6587-08d5d85b71-lite.chunk.js +2 -0
  121. package/dist/scripts/6587-08d5d85b71-lite.chunk.js.map +1 -0
  122. package/dist/scripts/671-36d34edbf3-lite.chunk.js +2 -0
  123. package/dist/scripts/671-36d34edbf3-lite.chunk.js.map +1 -0
  124. package/dist/scripts/{6725-23b09d47ae-lite.chunk.js → 6725-20b1e8b1d2-lite.chunk.js} +2 -2
  125. package/dist/scripts/6725-20b1e8b1d2-lite.chunk.js.map +1 -0
  126. package/dist/scripts/6741-ff3e4a33a5-lite.chunk.js +3 -0
  127. package/dist/scripts/6741-ff3e4a33a5-lite.chunk.js.map +1 -0
  128. package/dist/scripts/6752-1a9837a40f-lite.chunk.js +2 -0
  129. package/dist/scripts/6752-1a9837a40f-lite.chunk.js.map +1 -0
  130. package/dist/scripts/6850-8770bfeefb-lite.chunk.js +3 -0
  131. package/dist/scripts/6850-8770bfeefb-lite.chunk.js.map +1 -0
  132. package/dist/scripts/{6863-f04753549c-lite.chunk.js → 6863-b606b8b1e7-lite.chunk.js} +2 -2
  133. package/dist/scripts/{6863-f04753549c-lite.chunk.js.map → 6863-b606b8b1e7-lite.chunk.js.map} +1 -1
  134. package/dist/scripts/{6930-0a5d94f8b5-lite.chunk.js → 6930-1a681d42fd-lite.chunk.js} +1 -1
  135. package/dist/scripts/{6930-0a5d94f8b5-lite.chunk.js.map → 6930-1a681d42fd-lite.chunk.js.map} +1 -1
  136. package/dist/scripts/6948-84a5f8d76f-lite.chunk.js +2 -0
  137. package/dist/scripts/6948-84a5f8d76f-lite.chunk.js.map +1 -0
  138. package/dist/scripts/7097-b9a9a0a4ce-lite.chunk.js +2 -0
  139. package/dist/scripts/7097-b9a9a0a4ce-lite.chunk.js.map +1 -0
  140. package/dist/scripts/714-9ab1608522-lite.chunk.js +2 -0
  141. package/dist/scripts/714-9ab1608522-lite.chunk.js.map +1 -0
  142. package/dist/scripts/7533-e079b2af18-lite.chunk.js +2 -0
  143. package/dist/scripts/7533-e079b2af18-lite.chunk.js.map +1 -0
  144. package/dist/scripts/7715-2146591c84-lite.chunk.js +2 -0
  145. package/dist/scripts/7715-2146591c84-lite.chunk.js.map +1 -0
  146. package/dist/scripts/7855-92e790c403-lite.chunk.js +2 -0
  147. package/dist/scripts/7855-92e790c403-lite.chunk.js.map +1 -0
  148. package/dist/scripts/{7987-1f9189c4c1-lite.chunk.js → 7987-db0037709c-lite.chunk.js} +1 -1
  149. package/dist/scripts/{7987-1f9189c4c1-lite.chunk.js.map → 7987-db0037709c-lite.chunk.js.map} +1 -1
  150. package/dist/scripts/{8046-1943b1d32b-lite.chunk.js → 8046-836d3b8e04-lite.chunk.js} +1 -1
  151. package/dist/scripts/{8046-1943b1d32b-lite.chunk.js.map → 8046-836d3b8e04-lite.chunk.js.map} +1 -1
  152. package/dist/scripts/{2877-db49c758e9-lite.chunk.js → 8157-521ad0f974-lite.chunk.js} +2 -2
  153. package/dist/scripts/{2877-db49c758e9-lite.chunk.js.map → 8157-521ad0f974-lite.chunk.js.map} +1 -1
  154. package/dist/scripts/8192-ec320614d9-lite.chunk.js +2 -0
  155. package/dist/scripts/8192-ec320614d9-lite.chunk.js.map +1 -0
  156. package/dist/scripts/8218-f3b81c7287-lite.chunk.js +2 -0
  157. package/dist/scripts/8218-f3b81c7287-lite.chunk.js.map +1 -0
  158. package/dist/scripts/8316-dad1824a5f-lite.chunk.js +2 -0
  159. package/dist/scripts/8316-dad1824a5f-lite.chunk.js.map +1 -0
  160. package/dist/scripts/8354-e30261b594-lite.chunk.js +2 -0
  161. package/dist/scripts/8354-e30261b594-lite.chunk.js.map +1 -0
  162. package/dist/scripts/8772-42c022effc-lite.chunk.js +2 -0
  163. package/dist/scripts/8772-42c022effc-lite.chunk.js.map +1 -0
  164. package/dist/scripts/8800-c88fefeace-lite.chunk.js +2 -0
  165. package/dist/scripts/8800-c88fefeace-lite.chunk.js.map +1 -0
  166. package/dist/scripts/8830-452a71751f-lite.chunk.js +2 -0
  167. package/dist/scripts/8830-452a71751f-lite.chunk.js.map +1 -0
  168. package/dist/scripts/8987-32190552fa-lite.chunk.js +2 -0
  169. package/dist/scripts/8987-32190552fa-lite.chunk.js.map +1 -0
  170. package/dist/scripts/9016-c359251f82-lite.chunk.js +3 -0
  171. package/dist/scripts/9016-c359251f82-lite.chunk.js.map +1 -0
  172. package/dist/scripts/{9226-4cff4347a9-lite.chunk.js → 9226-c236c0eeb1-lite.chunk.js} +2 -2
  173. package/dist/scripts/9226-c236c0eeb1-lite.chunk.js.map +1 -0
  174. package/dist/scripts/9230-d731020b59-lite.chunk.js +3 -0
  175. package/dist/scripts/9230-d731020b59-lite.chunk.js.map +1 -0
  176. package/dist/scripts/{9395-8ad1f28459-lite.chunk.js → 9395-9175b9efcc-lite.chunk.js} +3 -3
  177. package/dist/scripts/{9395-8ad1f28459-lite.chunk.js.map → 9395-9175b9efcc-lite.chunk.js.map} +1 -1
  178. package/dist/scripts/9417-70c6489c67-lite.chunk.js +2 -0
  179. package/dist/scripts/9417-70c6489c67-lite.chunk.js.map +1 -0
  180. package/dist/scripts/{9478-5a0abba4f7-lite.chunk.js → 9478-9b168ddc36-lite.chunk.js} +3 -3
  181. package/dist/scripts/{9478-5a0abba4f7-lite.chunk.js.map → 9478-9b168ddc36-lite.chunk.js.map} +1 -1
  182. package/dist/scripts/{953-b56e03bb19-lite.chunk.js → 953-85fc5f8dbf-lite.chunk.js} +3 -3
  183. package/dist/scripts/{953-b56e03bb19-lite.chunk.js.map → 953-85fc5f8dbf-lite.chunk.js.map} +1 -1
  184. package/dist/scripts/9620-630f9e6344-lite.chunk.js +3 -0
  185. package/dist/scripts/9620-630f9e6344-lite.chunk.js.map +1 -0
  186. package/dist/scripts/9818-f63bdbbac4-lite.chunk.js +2 -0
  187. package/dist/scripts/9818-f63bdbbac4-lite.chunk.js.map +1 -0
  188. package/dist/scripts/9829-097052a2c6-lite.chunk.js +2 -0
  189. package/dist/scripts/9829-097052a2c6-lite.chunk.js.map +1 -0
  190. package/dist/scripts/{9843-a3fe640adb-lite.chunk.js → 9843-ec032b6388-lite.chunk.js} +2 -2
  191. package/dist/scripts/9843-ec032b6388-lite.chunk.js.map +1 -0
  192. package/dist/scripts/986-ea6d103647-lite.chunk.js +3 -0
  193. package/dist/scripts/986-ea6d103647-lite.chunk.js.map +1 -0
  194. package/dist/scripts/bundle-d20cb66d1a.min.js +3 -0
  195. package/dist/scripts/bundle-d20cb66d1a.min.js.map +1 -0
  196. package/package.json +1 -1
  197. package/dist/css/6102-lite-4c795e86b6.chunk.css +0 -39
  198. package/dist/scripts/1169-5dc443f0f1-lite.chunk.js +0 -2
  199. package/dist/scripts/1169-5dc443f0f1-lite.chunk.js.map +0 -1
  200. package/dist/scripts/1313-4fb9d38bc0-lite.chunk.js +0 -2
  201. package/dist/scripts/1313-4fb9d38bc0-lite.chunk.js.map +0 -1
  202. package/dist/scripts/1437-5b1889cf0d-lite.chunk.js +0 -2
  203. package/dist/scripts/1437-5b1889cf0d-lite.chunk.js.map +0 -1
  204. package/dist/scripts/1518-be314d1248-lite.chunk.js.map +0 -1
  205. package/dist/scripts/1672-e792631d8e-lite.chunk.js +0 -3
  206. package/dist/scripts/1672-e792631d8e-lite.chunk.js.map +0 -1
  207. package/dist/scripts/1750-b8e1fca13a-lite.chunk.js +0 -2
  208. package/dist/scripts/1750-b8e1fca13a-lite.chunk.js.map +0 -1
  209. package/dist/scripts/1818-ca1e552c00-lite.chunk.js +0 -2
  210. package/dist/scripts/1818-ca1e552c00-lite.chunk.js.map +0 -1
  211. package/dist/scripts/1820-2fa6cf6cb2-lite.chunk.js +0 -2
  212. package/dist/scripts/1820-2fa6cf6cb2-lite.chunk.js.map +0 -1
  213. package/dist/scripts/1905-a01549439f-lite.chunk.js +0 -2
  214. package/dist/scripts/1905-a01549439f-lite.chunk.js.map +0 -1
  215. package/dist/scripts/209-148abe2aa1-lite.chunk.js.map +0 -1
  216. package/dist/scripts/2137-a993d13a9a-lite.chunk.js +0 -2
  217. package/dist/scripts/2137-a993d13a9a-lite.chunk.js.map +0 -1
  218. package/dist/scripts/2199-22d8809e5e-lite.chunk.js +0 -2
  219. package/dist/scripts/2199-22d8809e5e-lite.chunk.js.map +0 -1
  220. package/dist/scripts/2703-aebc378d71-lite.chunk.js +0 -2
  221. package/dist/scripts/2703-aebc378d71-lite.chunk.js.map +0 -1
  222. package/dist/scripts/3020-9f647705a0-lite.chunk.js +0 -2
  223. package/dist/scripts/3020-9f647705a0-lite.chunk.js.map +0 -1
  224. package/dist/scripts/3231-7e9965499c-lite.chunk.js +0 -2
  225. package/dist/scripts/3231-7e9965499c-lite.chunk.js.map +0 -1
  226. package/dist/scripts/3355-e65e88adaa-lite.chunk.js +0 -2
  227. package/dist/scripts/3355-e65e88adaa-lite.chunk.js.map +0 -1
  228. package/dist/scripts/3403-a2111c4df8-lite.chunk.js +0 -2
  229. package/dist/scripts/3403-a2111c4df8-lite.chunk.js.map +0 -1
  230. package/dist/scripts/3515-925a7caeac-lite.chunk.js +0 -2
  231. package/dist/scripts/3515-925a7caeac-lite.chunk.js.map +0 -1
  232. package/dist/scripts/355-3bb5ae2ea4-lite.chunk.js +0 -2
  233. package/dist/scripts/355-3bb5ae2ea4-lite.chunk.js.map +0 -1
  234. package/dist/scripts/3645-720267b321-lite.chunk.js +0 -3
  235. package/dist/scripts/3645-720267b321-lite.chunk.js.map +0 -1
  236. package/dist/scripts/3895-f7f4926229-lite.chunk.js +0 -2
  237. package/dist/scripts/3895-f7f4926229-lite.chunk.js.map +0 -1
  238. package/dist/scripts/458-b99f17e0a1-lite.chunk.js +0 -2
  239. package/dist/scripts/458-b99f17e0a1-lite.chunk.js.map +0 -1
  240. package/dist/scripts/4690-774e3c0e2a-lite.chunk.js +0 -2
  241. package/dist/scripts/4690-774e3c0e2a-lite.chunk.js.map +0 -1
  242. package/dist/scripts/5143-b77fb12d6a-lite.chunk.js +0 -2
  243. package/dist/scripts/5143-b77fb12d6a-lite.chunk.js.map +0 -1
  244. package/dist/scripts/5229-f683f705ab-lite.chunk.js +0 -2
  245. package/dist/scripts/5229-f683f705ab-lite.chunk.js.map +0 -1
  246. package/dist/scripts/5385-50d4828b70-lite.chunk.js +0 -2
  247. package/dist/scripts/5385-50d4828b70-lite.chunk.js.map +0 -1
  248. package/dist/scripts/5595-c622318cd2-lite.chunk.js +0 -2
  249. package/dist/scripts/5595-c622318cd2-lite.chunk.js.map +0 -1
  250. package/dist/scripts/5936-4cac311002-lite.chunk.js.map +0 -1
  251. package/dist/scripts/5940-d841fd31d8-lite.chunk.js +0 -2
  252. package/dist/scripts/5940-d841fd31d8-lite.chunk.js.map +0 -1
  253. package/dist/scripts/610-27e5444f01-lite.chunk.js.map +0 -1
  254. package/dist/scripts/6102-30960404a9-lite.chunk.js +0 -3
  255. package/dist/scripts/6102-30960404a9-lite.chunk.js.map +0 -1
  256. package/dist/scripts/6189-13009e2ba9-lite.chunk.js +0 -2
  257. package/dist/scripts/6189-13009e2ba9-lite.chunk.js.map +0 -1
  258. package/dist/scripts/6263-82ae071643-lite.chunk.js +0 -2
  259. package/dist/scripts/6263-82ae071643-lite.chunk.js.map +0 -1
  260. package/dist/scripts/6470-2cefcc8abd-lite.chunk.js +0 -2
  261. package/dist/scripts/6470-2cefcc8abd-lite.chunk.js.map +0 -1
  262. package/dist/scripts/6531-835c743f1b-lite.chunk.js +0 -2
  263. package/dist/scripts/6531-835c743f1b-lite.chunk.js.map +0 -1
  264. package/dist/scripts/6572-0aa0696621-lite.chunk.js +0 -2
  265. package/dist/scripts/6572-0aa0696621-lite.chunk.js.map +0 -1
  266. package/dist/scripts/671-300e93ac50-lite.chunk.js +0 -2
  267. package/dist/scripts/671-300e93ac50-lite.chunk.js.map +0 -1
  268. package/dist/scripts/6725-23b09d47ae-lite.chunk.js.map +0 -1
  269. package/dist/scripts/6741-937ae1865f-lite.chunk.js +0 -3
  270. package/dist/scripts/6741-937ae1865f-lite.chunk.js.map +0 -1
  271. package/dist/scripts/6846-08b00decd8-lite.chunk.js +0 -2
  272. package/dist/scripts/6846-08b00decd8-lite.chunk.js.map +0 -1
  273. package/dist/scripts/6948-4ab91f77dc-lite.chunk.js +0 -2
  274. package/dist/scripts/6948-4ab91f77dc-lite.chunk.js.map +0 -1
  275. package/dist/scripts/7052-4c36846f80-lite.chunk.js +0 -3
  276. package/dist/scripts/7052-4c36846f80-lite.chunk.js.map +0 -1
  277. package/dist/scripts/7097-af8c032133-lite.chunk.js +0 -2
  278. package/dist/scripts/7097-af8c032133-lite.chunk.js.map +0 -1
  279. package/dist/scripts/714-2e52398bb7-lite.chunk.js +0 -2
  280. package/dist/scripts/714-2e52398bb7-lite.chunk.js.map +0 -1
  281. package/dist/scripts/7187-414ac79d42-lite.chunk.js +0 -2
  282. package/dist/scripts/7187-414ac79d42-lite.chunk.js.map +0 -1
  283. package/dist/scripts/7533-f2e71bd0dd-lite.chunk.js +0 -2
  284. package/dist/scripts/7533-f2e71bd0dd-lite.chunk.js.map +0 -1
  285. package/dist/scripts/7630-72099a7a26-lite.chunk.js +0 -2
  286. package/dist/scripts/7630-72099a7a26-lite.chunk.js.map +0 -1
  287. package/dist/scripts/7715-255bbe16ef-lite.chunk.js +0 -2
  288. package/dist/scripts/7715-255bbe16ef-lite.chunk.js.map +0 -1
  289. package/dist/scripts/7855-04bc8e52e3-lite.chunk.js +0 -2
  290. package/dist/scripts/7855-04bc8e52e3-lite.chunk.js.map +0 -1
  291. package/dist/scripts/8085-cde67e66df-lite.chunk.js +0 -2
  292. package/dist/scripts/8085-cde67e66df-lite.chunk.js.map +0 -1
  293. package/dist/scripts/8139-01ccbc0539-lite.chunk.js +0 -3
  294. package/dist/scripts/8139-01ccbc0539-lite.chunk.js.map +0 -1
  295. package/dist/scripts/8218-70b601169b-lite.chunk.js +0 -2
  296. package/dist/scripts/8218-70b601169b-lite.chunk.js.map +0 -1
  297. package/dist/scripts/8316-7ab8f108de-lite.chunk.js +0 -2
  298. package/dist/scripts/8316-7ab8f108de-lite.chunk.js.map +0 -1
  299. package/dist/scripts/8354-a03785518e-lite.chunk.js +0 -2
  300. package/dist/scripts/8354-a03785518e-lite.chunk.js.map +0 -1
  301. package/dist/scripts/8772-05879c5e99-lite.chunk.js +0 -2
  302. package/dist/scripts/8772-05879c5e99-lite.chunk.js.map +0 -1
  303. package/dist/scripts/8830-0d2766a50f-lite.chunk.js +0 -2
  304. package/dist/scripts/8830-0d2766a50f-lite.chunk.js.map +0 -1
  305. package/dist/scripts/8987-12841dd69c-lite.chunk.js +0 -2
  306. package/dist/scripts/8987-12841dd69c-lite.chunk.js.map +0 -1
  307. package/dist/scripts/9016-df37abbca9-lite.chunk.js +0 -3
  308. package/dist/scripts/9016-df37abbca9-lite.chunk.js.map +0 -1
  309. package/dist/scripts/9226-4cff4347a9-lite.chunk.js.map +0 -1
  310. package/dist/scripts/9230-c79353d3ee-lite.chunk.js +0 -3
  311. package/dist/scripts/9230-c79353d3ee-lite.chunk.js.map +0 -1
  312. package/dist/scripts/9417-7313907916-lite.chunk.js +0 -2
  313. package/dist/scripts/9417-7313907916-lite.chunk.js.map +0 -1
  314. package/dist/scripts/9620-8814c74837-lite.chunk.js +0 -3
  315. package/dist/scripts/9620-8814c74837-lite.chunk.js.map +0 -1
  316. package/dist/scripts/9839-5befd54d51-lite.chunk.js +0 -3
  317. package/dist/scripts/9839-5befd54d51-lite.chunk.js.map +0 -1
  318. package/dist/scripts/9843-a3fe640adb-lite.chunk.js.map +0 -1
  319. package/dist/scripts/bundle-48ad415564.min.js +0 -3
  320. package/dist/scripts/bundle-48ad415564.min.js.map +0 -1
  321. package/dist/css/{7422-lite-22ea72f8e3.chunk.css → 7422-lite-c999db664b.chunk.css} +1 -1
  322. /package/dist/scripts/{1379-2ee86e6e68-lite.chunk.js.LICENSE.txt → 1379-3a1ba4b4d9-lite.chunk.js.LICENSE.txt} +0 -0
  323. /package/dist/scripts/{1672-e792631d8e-lite.chunk.js.LICENSE.txt → 1672-672f298d82-lite.chunk.js.LICENSE.txt} +0 -0
  324. /package/dist/scripts/{3645-720267b321-lite.chunk.js.LICENSE.txt → 2004-4e2d98041c-lite.chunk.js.LICENSE.txt} +0 -0
  325. /package/dist/scripts/{6102-30960404a9-lite.chunk.js.LICENSE.txt → 3645-72ca9f63df-lite.chunk.js.LICENSE.txt} +0 -0
  326. /package/dist/scripts/{624-010454cb12-lite.chunk.js.LICENSE.txt → 6102-f1851eca08-lite.chunk.js.LICENSE.txt} +0 -0
  327. /package/dist/scripts/{6433-fe9efef305-lite.chunk.js.LICENSE.txt → 624-7df7efd486-lite.chunk.js.LICENSE.txt} +0 -0
  328. /package/dist/scripts/{6741-937ae1865f-lite.chunk.js.LICENSE.txt → 6433-8dd152d999-lite.chunk.js.LICENSE.txt} +0 -0
  329. /package/dist/scripts/{7052-4c36846f80-lite.chunk.js.LICENSE.txt → 6741-ff3e4a33a5-lite.chunk.js.LICENSE.txt} +0 -0
  330. /package/dist/scripts/{8139-01ccbc0539-lite.chunk.js.LICENSE.txt → 6850-8770bfeefb-lite.chunk.js.LICENSE.txt} +0 -0
  331. /package/dist/scripts/{9016-df37abbca9-lite.chunk.js.LICENSE.txt → 9016-c359251f82-lite.chunk.js.LICENSE.txt} +0 -0
  332. /package/dist/scripts/{9230-c79353d3ee-lite.chunk.js.LICENSE.txt → 9230-d731020b59-lite.chunk.js.LICENSE.txt} +0 -0
  333. /package/dist/scripts/{9395-8ad1f28459-lite.chunk.js.LICENSE.txt → 9395-9175b9efcc-lite.chunk.js.LICENSE.txt} +0 -0
  334. /package/dist/scripts/{9478-5a0abba4f7-lite.chunk.js.LICENSE.txt → 9478-9b168ddc36-lite.chunk.js.LICENSE.txt} +0 -0
  335. /package/dist/scripts/{953-b56e03bb19-lite.chunk.js.LICENSE.txt → 953-85fc5f8dbf-lite.chunk.js.LICENSE.txt} +0 -0
  336. /package/dist/scripts/{9620-8814c74837-lite.chunk.js.LICENSE.txt → 9620-630f9e6344-lite.chunk.js.LICENSE.txt} +0 -0
  337. /package/dist/scripts/{9839-5befd54d51-lite.chunk.js.LICENSE.txt → 986-ea6d103647-lite.chunk.js.LICENSE.txt} +0 -0
  338. /package/dist/scripts/{bundle-48ad415564.min.js.LICENSE.txt → bundle-d20cb66d1a.min.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts/7533-e079b2af18-lite.chunk.js","mappings":"mJACA,SAAgB,MAAQ,QAAQ,OAAS,QAAQ,QAAU,QAAQ,YAAc,QAAQ,OAAS,QAAQ,KAAO,QAAQ,UAAY,SCG/H,SAAUA,IACd,OACE,uBAAKC,UAAU,cACb,uBAAKA,UAAS,qCAAgC,YAC9C,uBAAKA,UAAS,0CAAqC,UACjD,uBAAKA,UAAS,qCAAgC,gBAEhD,uBAAKA,UAAS,0CAAqC,aACnD,2BACGC,MAAM,GAAGC,KAAK,MAAMC,KAAI,SAACC,EAAGC,GAAC,OAC5B,uBAAKC,IAAKD,EAAGL,UAAS,0CAAqC,gBAA4B,KAKjG,C,wWCeMO,EAAc,CAClBC,SAAU,IACVC,UAAW,CACTC,QAAS,MAIP,SAAUC,EAAsBC,G,UAC5BC,GAAmB,SAAnBA,eAEFC,EAAS,kBAA6B,cAEpCC,GAAa,SAAbA,SAEFC,EAAc,kBAAkC,mBAChDC,EAAsB,kBAC1B,8BAA8CL,EAAMM,SAAUN,EAAMO,UAGhEC,EAAY,kBAChB,mBAA6BR,EAAMO,UAO/BE,EAAiBD,EAAUE,OAASF,EAAUE,KAAKC,eAAiB,gBACtE,kBAA6BX,EAAMO,QAAS,WAC5C,kBAA6BP,EAAMM,SAAU,iBAA0BN,EAAMO,UAC3EK,EAAU,kBAAoCH,GAC9CI,GAAY,SACZC,EAAa,mBACD,QAAhB,EAAAV,EAAYM,YAAI,eAAEK,kBAAmB,eAA4BX,EAAYM,KAAKM,aAO9EC,GAA2B,SAC3BC,EAAc,kBAClBD,GAA4BZ,EAAoBK,MAChD,gBAAgCL,EAAoBK,KAAKS,gBAGrDC,GAAgB,OAAoB,CACxCC,MAAOhB,EAAoBK,KAC3BY,QAAStB,EAAMuB,YAAYD,QAC3BE,UAAWxB,EAAMuB,YAAYC,UAC7BC,YAAazB,EAAMuB,YAAYG,IAC/BtB,YAAaA,EAAYM,QAG3B,OAAqBL,EAAqBV,IAC1C,OAAsBU,EAAqB,CAAEsB,QAAS,OACtD,OAAa,CAAEC,GAAI5B,EAAMM,SAAUuB,IAAK,eAAgBtB,QAASP,EAAMO,WACvE,OAAkC,QAApB,EAAAa,EAAcU,cAAM,QAAI,KACtC,OAAmB,4BAA0C,CAAEC,QAAS1B,EAAoBK,QAE5F,IAAMsB,EACJ3B,EAAoBK,MACpBR,EAAO+B,cACP7B,EAAY6B,gBACVhB,GAA4BC,EAAYe,eAC1CzB,EAAUyB,cACVrB,EAAQqB,aAGV,OAAIhB,EAEGe,EAIH,gBAAC,IAAkB,CACjB9B,OAAQA,EAAOQ,KACfN,YAAaA,EAAYM,KACzBa,YAAavB,EAAMuB,YACnBL,YAAab,EAAoBK,KACjCwB,iCAAkChB,EAAYR,KAAKyB,iBACnDrB,WAAYA,EAAWJ,KACvBG,UAAWA,EAAUH,KACrBU,cAAeA,EACfgB,qBAAsBnC,EAAe,uBACrCE,SAAUA,IAbL,gBAAC,IAAyB,MAkBhC6B,EAIH,gBAAC,IAAe,CACdd,YAAab,EAAoBK,KACjCN,YAAaA,EAAYM,KACzBR,OAAQA,EAAOQ,KACfG,UAAWA,EAAUH,KACrBI,WAAYA,EAAWJ,KACvBa,YAAavB,EAAMuB,YACnBX,QAASA,EAAQF,KACjBU,cAAeA,EACfZ,UAAWA,EAAUE,KACrB2B,UAA4B,QAAjB,EAAArC,EAAMuB,mBAAW,eAAEe,EAC9BnC,SAAUA,IAdL,gCAiBX,C","sources":["file:///app/packages/projects/lite/src/apps/interactives/components/interactive-partial-loading/interactive-partial-loading.scss","file:///app/packages/projects/lite/src/apps/interactives/components/interactive-partial-loading/InteractivePartialLoading.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-interactive/SharedInteractiveView.tsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"video\":\"ekpg6\",\"notice\":\"lQs4F\",\"heading\":\"Gt6uV\",\"interaction\":\"LEfYX\",\"button\":\"caHP7\",\"edit\":\"de4DP\",\"questions\":\"XelbS\"};","import React from 'react';\n\nimport styles from './interactive-partial-loading.scss';\n\nexport function InteractivePartialLoading(): React.ReactElement {\n return (\n <div className='px-3 w-100'>\n <div className={`partial-loading-background ${styles.notice}`} />\n <div className={`partial-loading-background mb-3 ${styles.video}`}>\n <div className={`partial-loading-background ${styles.questions}`}></div>\n </div>\n <div className={`partial-loading-background mb-3 ${styles.heading}`}></div>\n <div>\n {Array(5).fill(null).map((_, i) => (\n <div key={i} className={`partial-loading-background my-2 ${styles.interaction}`}></div>\n ))}\n </div>\n </div>\n );\n}","import React from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { ShareRequests } from 'libs/shared/apps/share/flight-requests/ShareRequests';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { PlayerRequests } from 'libs/shared/flight-requests/PlayerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useCannotConsumeError } from 'libs/shared/hooks/useCannotConsumeError';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, Interactive, InteractiveMetadata, PlayerViewKey, UnionShareObject, YearGroup } from 'libs/shared/interfaces';\nimport { PageMetadataHelper } from 'libs/shared/utils/PageMetadataHelper';\n\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useDeepLinks } from 'shared/hooks/useDeepLinks';\nimport { useGetRelatedVideos } from 'shared/hooks/useGetRelatedVideos';\nimport { usePresentationAudiences } from 'shared/hooks/usePresentationAudiences';\nimport { useShouldPreviewInteractive } from 'shared/hooks/useShouldPreviewInteractive';\nimport { useVideoMixin } from 'shared/hooks/useVideoMixin';\n\nimport { InteractivePartialLoading } from 'apps/interactives/components/interactive-partial-loading/InteractivePartialLoading';\nimport { PlayInteractive } from 'apps/interactives/components/play-interactive/PlayInteractive';\nimport { PreviewInteractive } from 'apps/interactives/components/preview-interactive/PreviewInteractive';\nimport { ShareLinkNotFoundError } from 'apps/share/errors/share-link-not-found/ShareLinkNotFoundError';\nimport { ShareLinkPrivateError } from 'apps/share/errors/share-link-private/ShareLinkPrivateError';\nimport { ShareLinkViewProps } from 'apps/share/interfaces/ShareLinkViewProps';\n\nconst videoErrors = {\n notFound: ShareLinkNotFoundError,\n forbidden: {\n privacy: ShareLinkPrivateError\n }\n};\n\nexport function SharedInteractiveView(props: ShareLinkViewProps): JSX.Element {\n const { hasPermissions } = usePermissions();\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const { isPlugin } = usePluginHelper();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const interactiveMetadata = Flight.useBasicFetch<InteractiveMetadata>(\n InteractiveRequests.sharedInteractiveMetadata(props.objectId, props.shareId)\n );\n\n const shareLink = Flight.useBasicFetch<UnionShareObject>(\n ShareRequests.getShareObject(props.shareId)\n );\n\n /**\n * If the shareLink type isn't an interactive, then it's a playlist and needs to be\n * used as context for fetching\n */\n const viewKeyRequest = shareLink.data && (shareLink.data.objectTypeId === MasterType.Interactive\n ? PlayerRequests.createViewKey(props.shareId, MediaIdType.Share)\n : PlayerRequests.createViewKey(props.objectId, MediaIdType.MasterObject, props.shareId));\n const viewKey = Flight.useBasicFetch<PlayerViewKey>(viewKeyRequest);\n const audiences = usePresentationAudiences();\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n /**\n * Authenticated staff with Lite product access get the interactive \"Preview\" view instead\n * of the usual play view.\n */\n const shouldPreviewInteractive = useShouldPreviewInteractive();\n const interactive = Flight.useBasicFetch<Interactive>(\n shouldPreviewInteractive && interactiveMetadata.data &&\n InteractiveRequests.interactive(interactiveMetadata.data.interactiveId)\n );\n\n const relatedVideos = useGetRelatedVideos({\n video: interactiveMetadata.data,\n context: props.queryParams.context,\n contextId: props.queryParams.contextId,\n moviesAndTv: props.queryParams.mtv,\n currentUser: currentUser.data\n });\n \n useHandleObjectError(interactiveMetadata, videoErrors);\n useCannotConsumeError(interactiveMetadata, { private: ShareLinkPrivateError });\n useDeepLinks({ id: props.objectId, app: 'interactives', shareId: props.shareId });\n useVideoMixin(relatedVideos.videos ?? []);\n useSetPageMetadata(PageMetadataHelper.getInteractiveMetadata({ content: interactiveMetadata.data }));\n\n const hasLoaded = (\n interactiveMetadata.data &&\n config.hasCompleted &&\n currentUser.hasCompleted &&\n (!shouldPreviewInteractive || interactive.hasCompleted) &&\n shareLink.hasCompleted &&\n viewKey.hasCompleted\n );\n\n if (shouldPreviewInteractive) {\n // For staff, the interactive is previewed\n if (!hasLoaded)\n return <InteractivePartialLoading />;\n\n return (\n <PreviewInteractive\n config={config.data}\n currentUser={currentUser.data}\n queryParams={props.queryParams}\n interactive={interactiveMetadata.data}\n isPreviewPreventScrubbingEnabled={interactive.data.preventScrubbing}\n yearGroups={yearGroups.data}\n audiences={audiences.data}\n relatedVideos={relatedVideos}\n canManageVideoAccess={hasPermissions(PermissionName.ManageVideoAccess)}\n isPlugin={isPlugin}\n />\n );\n }\n\n if (!hasLoaded)\n return <></>;\n\n return (\n <PlayInteractive\n interactive={interactiveMetadata.data}\n currentUser={currentUser.data}\n config={config.data}\n audiences={audiences.data}\n yearGroups={yearGroups.data}\n queryParams={props.queryParams}\n viewKey={viewKey.data}\n relatedVideos={relatedVideos}\n shareLink={shareLink.data}\n startTime={props.queryParams?.t}\n isPlugin={isPlugin}\n />\n );\n}"],"names":["InteractivePartialLoading","className","Array","fill","map","_","i","key","videoErrors","notFound","forbidden","privacy","SharedInteractiveView","props","hasPermissions","config","isPlugin","currentUser","interactiveMetadata","objectId","shareId","shareLink","viewKeyRequest","data","objectTypeId","viewKey","audiences","yearGroups","isAuthenticated","customerId","shouldPreviewInteractive","interactive","interactiveId","relatedVideos","video","context","queryParams","contextId","moviesAndTv","mtv","private","id","app","videos","content","hasLoaded","hasCompleted","isPreviewPreventScrubbingEnabled","preventScrubbing","canManageVideoAccess","startTime","t"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7715],{69395:(e,t,n)=>{n.d(t,{e:()=>l});var r=n(32735),a=n(91967);const i={disabled:"pERi4",disabledHighlighted:"AxyWm"};function l(e){var t=e.audience,n=e.highlight,l=e.setAudience,c=e.isDisabled,o=e.extraClasses,s=function(e,t){return e?t?"".concat(i.disabledHighlighted," text-light"):"bg-gray-900 text-white":t?"".concat(i.disabled," text-secondary"):"bg-light"}(n,c),u="rounded-pill d-inline-block me-1 user-select-none ".concat(c?"cursor-default":"cursor-pointer"," ").concat(s," ").concat(o);return r.createElement("span",{className:u,onClick:function(){!c&&a.q.isFunction(l)&&l(t,!n)},role:"checkbox","aria-checked":n},t.name.split(" ").map((function(e){return e.charAt(0).toUpperCase()+e.substring(1)})).join(" "))}l.defaultProps={extraClasses:""}},60836:(e,t,n)=>{n.d(t,{j:()=>i});var r=n(32735);function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var i=function(e){var t,n,i=(t=r.useState(1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,l,c=[],o=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;o=!1}else for(;!(o=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);o=!0);}catch(e){s=!0,a=e}finally{try{if(!o&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw a}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return a(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=i[0],c=i[1];return r.useEffect((function(){l>0||e()}),[l]),[function(){c((function(e){return e-1}))},c]}},59406:(e,t,n)=>{n.r(t),n.d(t,{AudiencePreferencesView:()=>$});var r=n(32735),a=n(70680),i=n(81886),l=n(20354),c=n(65858),o=n(23481),s=n(75896),u=n(69395);function d(e){var t=e.width,n=void 0===t?90:t,a=e.height,i=void 0===a?35:a,l=e.count,c=void 0===l?5:l,o=e.align,s="center"===(void 0===o?"left":o)?"justify-content-center":"justify-content-start";return r.createElement("ul",{className:"d-flex flex-wrap ps-0 m-0 ".concat(s)},Array(c).fill(null).map((function(e,t){return r.createElement("li",{key:t,className:"partial-loading-background mx-1 mb-1 rounded-pill list-unstyled",style:{height:"".concat(i,"px"),width:"".concat(n,"px")}})})))}var f=n(9826),m=n(49602),p=n(36848),v=n(2102),h=n(83345),g=n(83523),b=n(69883),y=n(60836);const E={audienceList:"gGUpk",imageContainer:"mLKC0"};function k(e){return function(e){if(Array.isArray(e))return A(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||x(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.")}()}function S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,l,c=[],o=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;o=!1}else for(;!(o=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);o=!0);}catch(e){s=!0,a=e}finally{try{if(!o&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(s)throw a}}return c}}(e,t)||x(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function x(e,t){if(e){if("string"==typeof e)return A(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?A(e,t):void 0}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var C="subjects.audiencePreferences";function w(e){var t=S(r.useState([]),2),n=t[0],a=t[1],l=S(r.useState(!1),2),c=l[0],d=l[1],x=S(r.useState(e.bulkPreferencesState),2),A=x[0],w=x[1],P=m.b.hasBulkSelectedLevels(A),I=(0,b.Z)();r.useEffect((function(){var t;if(null===(t=e.preselections)||void 0===t?void 0:t.length){var r=e.preselections.map((function(e){return e.masterId}));a(s.m.uniq([].concat(k(n),k(r))))}else a([])}),[]);var L=S((0,y.j)((function(){d(!1),e.isOnboarding||I.success(o.T.getPhrase(C,"success")),e.nextAppLink&&i.Q.C$.trigger(e.nextAppLink)})),2),N=L[0],j=L[1];function O(t){return!!e.preselections&&e.preselections.map((function(e){return e.masterId})).sort().toString()!==t.sort().toString()}function B(){return e.bulkPreferencesState!==A}function T(){if(!n.length&&!P)return!1;var t=B()||O(n);return!(!e.isOnboarding&&!t)}function U(e){var t=s.m.addOrRemoveImmutable(n,e.masterId);a(t)}function F(){var e=m.b.getNextBulkState(A,"audiences");w(e),m.b.hasBulkSelectedLevels(e)&&a([])}return r.createElement(h.D.Provider,{value:C},r.createElement("form",{className:"p-3"},r.createElement("div",{className:"position-relative"},r.createElement("ul",{className:"d-flex flex-wrap justify-content-center mx-auto mb-0 ps-0 py-3 ".concat(E.audienceList)},e.options.map((function(e){return r.createElement(u.e,{key:e.masterId,audience:e,highlight:n.includes(e.masterId),setAudience:U,extraClasses:"h4 py-1 px-3 mx-1 mb-1",isDisabled:P})})))),r.createElement("div",{className:"mx-auto ".concat(E.imageContainer)},r.createElement("img",{className:"img-fluid",src:e.imageUrl,alt:"",role:"presentation"})),r.createElement(f.e,{justify:e.backButtonAppLink?"between":"end"},r.createElement("div",null,!!e.backButtonAppLink&&r.createElement(p.F,{appLink:e.backButtonAppLink,className:"btn btn-outline-dark"},r.createElement(h.x,{phrase:"back"}))),r.createElement("div",{className:"d-flex align-items-center justify-content-end"},r.createElement("div",{className:"d-flex me-3"},r.createElement("p",{onClick:F,className:"me-2 mb-0 fw-bold"},r.createElement(h.x,{phrase:"allLevels"})),r.createElement(g.Z,{onClick:F,on:P,hideOutline:!0})),r.createElement(v.m,{variant:"dark",disabled:!T(),onClick:function(){var t;if(T())if(O(n)||B()){d(!0);var r=n.filter((function(t){var n;return!(null===(n=e.preselections)||void 0===n?void 0:n.find((function(e){return e.masterId===t})))})).map((function(t){var n;return null===(n=e.options)||void 0===n?void 0:n.find((function(e){return e.masterId===t}))})),a=null===(t=e.preselections)||void 0===t?void 0:t.filter((function(e){return!n.includes(e.masterId)})),l=0;(null==r?void 0:r.length)&&l++,(null==a?void 0:a.length)&&l++,B()&&l++,j(l),e.saveChanges(r,a,A,N,(function(){I.error(o.T.getPhrase(C,"error")),d(!1)}))}else e.nextAppLink&&i.Q.C$.trigger(e.nextAppLink)},showSpinner:c},r.createElement(h.x,{phrase:e.isOnboarding?"next":"save"}))))))}function P(){return r.createElement("div",{className:"p-3"},r.createElement("div",{className:"w-100 mx-auto py-3"},r.createElement(d,{align:"center"})))}var I=n(77963),L=n(65728),N=n(61699),j=n(31949),O=n(37802),B=n(69454),T=n(99742),U=n(14070),F=n(97291),R=n(71164),_="settings.audiencePreferences";function $(){var e,t=l.a.useBasicFetch(j.N.currentUser()),n=l.a.useBasicFetch(N.o.availablePresentations()),o=l.a.useBasicFetch(N.o.allLevelPreferences()),s=l.a.useBasicFetch(N.o.myLevelPreferences()),u=(0,O.r)(c.LZ.PreferencesSettings),d=u.bulkOnboardingPreferencesState,f=u.isLoadingSettings,m=u.updateSetting,p=!!(null===(e=o.data)||void 0===e?void 0:e.length)&&B.T.shouldShowAudiences(o.data);r.useEffect((function(){o.hasCompleted&&(p||i.Q.C$.trigger({application:F.O.SETTINGS,action:U.e.Settings.TOPIC_PREFERENCES},{replace:!0}))}),[o.hasCompleted]);var v=(0,a.I0)(),g=!!o.hasCompleted&&!!s.hasCompleted&&!f;return r.createElement(R.T,{availablePresentations:n.data,audiences:o.data},r.createElement("p",{className:"mt-3"},r.createElement(h.x,{namespace:_,phrase:"info"})),g&&p?r.createElement(w,{options:o.data,preselections:s.data,bulkPreferencesState:d,saveChanges:function(e,n,r,a,i){if(r!==d){var c={name:L.E.BulkOnboardingPreferencesState,value:r,kind:I.g.Permanent};m(t.data.id,c,a,i)}(null==e?void 0:e.length)&&l.a.fetch(v,N.o.followLevels(e,a,i)),(null==n?void 0:n.length)&&l.a.fetch(v,N.o.unfollowLevels(n,a,i))},imageUrl:T.W.Onboarding.YEAR_GROUPS}):r.createElement(P,null))}}}]);
2
+ //# sourceMappingURL=7715-2146591c84-lite.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts/7715-2146591c84-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/subjects/components/audience-item/audience-item.scss","file:///app/packages/libs/shared/src/apps/subjects/components/audience-item/AudienceItem.tsx","file:///app/packages/libs/shared/src/hooks/UseOnSaveAll.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/audience-item/partial-loading/PartialAudiences.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/audience-preferences/audience-preferences.scss","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/audience-preferences/AudiencePreferences.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/audience-preferences/partial-loading/PartialAudiencePreferences.tsx","file:///app/packages/projects/lite/src/apps/settings/views/preferences/audiences/AudiencePreferencesView.tsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"disabled\":\"pERi4\",\"disabledHighlighted\":\"AxyWm\"};","import * as React from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nimport { PresentationAudience } from 'libs/shared/interfaces';\n\nimport styles from './audience-item.scss';\n\nfunction lowerCaseToTitleCase(str: string): string {\n return str.split(' ').map((s: string) => s.charAt(0).toUpperCase() + s.substring(1)).join(' ');\n}\n\nfunction getColourClass(highlight: boolean, isDisabled: boolean): string {\n if (highlight) return isDisabled ? `${styles.disabledHighlighted} text-light` : 'bg-gray-900 text-white';\n if (isDisabled) return `${styles.disabled} text-secondary`;\n return 'bg-light';\n}\n\ninterface AudienceItemProps {\n audience: PresentationAudience;\n highlight: boolean;\n setAudience?: (audience: PresentationAudience, highlight: boolean) => void;\n isDisabled?: boolean;\n extraClasses?: string;\n}\n\nAudienceItem.defaultProps = {\n extraClasses: ''\n};\n\nexport function AudienceItem(props: AudienceItemProps): React.ReactElement {\n const { audience, highlight, setAudience, isDisabled, extraClasses } = props;\n\n const colourClass = getColourClass(highlight, isDisabled);\n const cursorClass = isDisabled ? 'cursor-default' : 'cursor-pointer';\n const className = `rounded-pill d-inline-block me-1 user-select-none ${cursorClass} ${colourClass} ${extraClasses}`;\n\n const onClick = () => {\n if (isDisabled || !FunctionHelper.isFunction(setAudience))\n return;\n\n setAudience(audience, !highlight);\n };\n\n return (\n <span\n className={className}\n onClick={onClick}\n role='checkbox'\n aria-checked={highlight}\n >\n {lowerCaseToTitleCase(audience.name)}\n </span>\n );\n}","import React from 'react';\n\ntype ReturnValue = [\n () => void,\n React.Dispatch<React.SetStateAction<number>>\n];\n\n/**\n * This hook solves a problem where you want to trigger an \"onSuccess\" callback function\n * only after the last of multiple API calls have completed.\n * \n * Example: the user clicks a \"Save\" button, which triggers 2 API calls. You have a callback function\n * that you want to run after both API calls have succeeded. This hook will help you do that of you pass it\n * the callback function and set the counter to 2.\n */\nexport const useOnSaveAll = (onDone: () => void): ReturnValue => {\n const [ counter, setCounter ] = React.useState(1);\n\n function onSave(): void {\n setCounter(val => val - 1);\n }\n\n React.useEffect(() => {\n if (counter > 0)\n return;\n \n onDone();\n }, [counter]);\n\n return [ onSave, setCounter ];\n};","import * as React from 'react';\n\ninterface PartialAudiencesProps {\n count?: number;\n width?: number;\n height?: number;\n align?: 'left' | 'center';\n}\n\nexport function PartialAudiences({ width = 90, height = 35, count = 5, align = 'left' }: PartialAudiencesProps): JSX.Element {\n const justifyClass = align === 'center' ? 'justify-content-center' : 'justify-content-start';\n\n return (\n <ul className={`d-flex flex-wrap ps-0 m-0 ${justifyClass}`}>\n {Array(count).fill(null).map((item, i) => (\n <li\n key={i}\n className='partial-loading-background mx-1 mb-1 rounded-pill list-unstyled'\n style={{ height: `${height}px`, width: `${width}px` }}\n />\n ))}\n </ul>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"audienceList\":\"gGUpk\",\"imageContainer\":\"mLKC0\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { AudienceItem } from 'libs/shared/apps/subjects/components/audience-item';\nimport { OnboardingFooter } from 'libs/shared/apps/subjects/components/preferences/footer/OnboardingFooter';\nimport { OnboardingHelper } from 'libs/shared/apps/subjects/utils/OnboardingHelper';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { SpinnerButton } from 'libs/shared/components/spinner-button/SpinnerButton';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { BulkOnboardingPreferencesState } from 'libs/shared/enums/BulkOnboardingPreferencesState';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useOnSaveAll } from 'libs/shared/hooks/UseOnSaveAll';\nimport { PresentationAudience } from 'libs/shared/interfaces';\n\nimport styles from './audience-preferences.scss';\n\nconst namespace = 'subjects.audiencePreferences';\n\ninterface AudiencePreferencesProps {\n options: PresentationAudience[];\n preselections: PresentationAudience[];\n bulkPreferencesState: BulkOnboardingPreferencesState;\n saveChanges: (\n newAudiences: PresentationAudience[],\n oldAudiences: PresentationAudience[],\n bulkState: BulkOnboardingPreferencesState,\n onSuccess: () => void,\n onError: () => void\n ) => void;\n \n imageUrl: string;\n\n isOnboarding?: boolean;\n backButtonAppLink?: Core.AppLink;\n nextAppLink?: Core.AppLink;\n}\n\nexport function AudiencePreferences(props: AudiencePreferencesProps): JSX.Element {\n const [ selectedAudiences, setSelectedAudiences ] = React.useState<string[]>([]);\n const [ showSpinner, setShowSpinner ] = React.useState<boolean>(false);\n\n const [ bulkPreferencesState, setBulkPreferencesState ] = React.useState<BulkOnboardingPreferencesState>(\n props.bulkPreferencesState\n );\n\n const hasBulkSelectedLevels = OnboardingHelper.hasBulkSelectedLevels(bulkPreferencesState);\n\n const alerts = useAlerts();\n\n /**\n * Set initial selections\n */\n React.useEffect(() => {\n if (!props.preselections?.length) {\n setSelectedAudiences([]);\n return;\n }\n\n const preselectedIds = props.preselections.map(audience => audience.masterId);\n setSelectedAudiences(ArrayHelper.uniq([ ...selectedAudiences, ...preselectedIds ]));\n }, []);\n\n const [ onSuccess, setCounter ] = useOnSaveAll(() => {\n setShowSpinner(false);\n\n if (!props.isOnboarding)\n alerts.success(LanguageService.getPhrase(namespace, 'success'));\n\n if (props.nextAppLink)\n Core.AppLinkHelper.trigger(props.nextAppLink);\n });\n\n function hasChangedAudiences(selectedAudiences: string[]): boolean {\n if (!props.preselections)\n return false;\n\n const preselectedIds = props.preselections.map(p => p.masterId);\n return preselectedIds.sort().toString() !== selectedAudiences.sort().toString();\n }\n\n function hasChangedBulkState(): boolean {\n return props.bulkPreferencesState !== bulkPreferencesState;\n }\n\n function isValid(): boolean {\n if (!selectedAudiences.length && !hasBulkSelectedLevels)\n return false;\n\n const hasChanged = hasChangedBulkState() || hasChangedAudiences(selectedAudiences);\n\n if (!props.isOnboarding && !hasChanged)\n return false;\n\n return true;\n }\n\n function onSave(): void {\n if (!isValid())\n return;\n\n // If they have selected the bulk option, we do not want to clear their preferences or save any changes.\n if (!hasChangedAudiences(selectedAudiences) && !hasChangedBulkState()) {\n if (props.nextAppLink) {\n Core.AppLinkHelper.trigger(props.nextAppLink);\n }\n\n return;\n }\n\n setShowSpinner(true);\n\n const newAudiences = selectedAudiences\n .filter(id => !props.preselections?.find(level => level.masterId === id))\n .map(id => props.options?.find(level => level.masterId === id));\n\n const oldAudiences = props.preselections?.filter(level => !selectedAudiences.includes(level.masterId));\n\n let onSaveCounter = 0;\n\n if (newAudiences?.length)\n onSaveCounter++;\n\n if (oldAudiences?.length)\n onSaveCounter++;\n\n if (hasChangedBulkState())\n onSaveCounter++;\n\n setCounter(onSaveCounter);\n\n props.saveChanges(\n newAudiences,\n oldAudiences,\n bulkPreferencesState,\n onSuccess,\n () => {\n alerts.error(LanguageService.getPhrase(namespace, 'error'));\n setShowSpinner(false);\n }\n );\n }\n\n function onSelectLevel(audience: PresentationAudience): void {\n const newSelections = ArrayHelper.addOrRemoveImmutable(selectedAudiences, audience.masterId);\n setSelectedAudiences(newSelections);\n }\n\n function onToggleSelectAll(): void {\n const newBulkState = OnboardingHelper.getNextBulkState(bulkPreferencesState, 'audiences');\n\n setBulkPreferencesState(newBulkState);\n\n const hasBulkSelectedLevels = OnboardingHelper.hasBulkSelectedLevels(newBulkState);\n\n if (hasBulkSelectedLevels)\n setSelectedAudiences([]);\n }\n\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <form className='p-3'>\n <div className='position-relative'>\n <ul className={`d-flex flex-wrap justify-content-center mx-auto mb-0 ps-0 py-3 ${styles.audienceList}`}>\n {props.options.map(option => (\n <AudienceItem\n key={option.masterId}\n audience={option}\n highlight={selectedAudiences.includes(option.masterId)}\n setAudience={onSelectLevel}\n extraClasses='h4 py-1 px-3 mx-1 mb-1'\n isDisabled={hasBulkSelectedLevels}\n />\n ))}\n </ul>\n </div>\n\n <div className={`mx-auto ${styles.imageContainer}`}>\n <img\n className='img-fluid'\n src={props.imageUrl}\n alt=''\n role='presentation'\n />\n </div>\n\n <OnboardingFooter justify={props.backButtonAppLink ? 'between' : 'end'}>\n <div>\n {!!props.backButtonAppLink && (\n <AppLink appLink={props.backButtonAppLink} className='btn btn-outline-dark'>\n <Text phrase='back' />\n </AppLink>\n )}\n </div>\n\n <div className='d-flex align-items-center justify-content-end'>\n <div className='d-flex me-3'>\n <p onClick={onToggleSelectAll} className='me-2 mb-0 fw-bold'>\n <Text phrase='allLevels' />\n </p>\n <ToggleSwitch\n onClick={onToggleSelectAll}\n on={hasBulkSelectedLevels}\n hideOutline\n />\n </div>\n\n <SpinnerButton\n variant='dark'\n disabled={!isValid()}\n onClick={onSave}\n showSpinner={showSpinner}\n >\n <Text phrase={props.isOnboarding ? 'next' : 'save'} />\n </SpinnerButton>\n </div>\n </OnboardingFooter>\n </form>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\n\nimport { PartialAudiences } from 'libs/shared/apps/subjects/components/audience-item';\n\nexport function PartialAudiencePreferences(): JSX.Element {\n return (\n <div className='p-3'>\n <div className='w-100 mx-auto py-3'>\n <PartialAudiences align='center' />\n </div>\n </div>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { AudiencePreferences } from 'libs/shared/apps/subjects/components/preferences/audience-preferences/AudiencePreferences';\nimport { PartialAudiencePreferences } from 'libs/shared/apps/subjects/components/preferences/audience-preferences/partial-loading/PartialAudiencePreferences';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { BulkOnboardingPreferencesState } from 'libs/shared/enums/BulkOnboardingPreferencesState';\nimport { SettingKind } from 'libs/shared/enums/SettingKind';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { PreferenceRequests } from 'libs/shared/flight-requests/PreferenceRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { CurrentUser, Presentation, PresentationAudience } from 'libs/shared/interfaces';\nimport { AudienceHelper } from 'libs/shared/utils/audience-helper/AudienceHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { PreferencesLayout } from 'apps/settings/components/preferences/PreferencesLayout';\n\nconst namespace = 'settings.audiencePreferences';\n\nexport function AudiencePreferencesView(): JSX.Element {\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const availablePresentations = Flight.useBasicFetch<Presentation[]>(PreferenceRequests.availablePresentations());\n\n const audiences = Flight.useBasicFetch<PresentationAudience[]>(PreferenceRequests.allLevelPreferences());\n const preselections = Flight.useBasicFetch<PresentationAudience[]>(\n PreferenceRequests.myLevelPreferences()\n );\n\n const {\n bulkOnboardingPreferencesState, isLoadingSettings, updateSetting\n } = useSettings(LocationContext.PreferencesSettings);\n\n const canAccess = !!audiences.data?.length && AudienceHelper.shouldShowAudiences(audiences.data);\n\n // Redirect away if the user's presentation does not have more than 1 audience\n React.useEffect(() => {\n if (!audiences.hasCompleted)\n return;\n\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.TOPIC_PREFERENCES\n }, { replace: true });\n }\n }, [audiences.hasCompleted]);\n\n const dispatch = useDispatch();\n\n function onSave(\n newAudiences: PresentationAudience[],\n oldAudiences: PresentationAudience[],\n bulkState: BulkOnboardingPreferencesState,\n onSuccess: () => void,\n onError: () => void\n ): void {\n if (bulkState !== bulkOnboardingPreferencesState) {\n const newSetting = {\n name: SettingName.BulkOnboardingPreferencesState,\n value: bulkState,\n kind: SettingKind.Permanent\n };\n\n updateSetting(\n currentUser.data.id,\n newSetting,\n onSuccess,\n onError\n );\n }\n\n if (newAudiences?.length)\n Flight.fetch(dispatch, PreferenceRequests.followLevels(newAudiences, onSuccess, onError));\n\n if (oldAudiences?.length)\n Flight.fetch(dispatch, PreferenceRequests.unfollowLevels(oldAudiences, onSuccess, onError));\n }\n\n const dataLoaded = (\n !!audiences.hasCompleted &&\n !!preselections.hasCompleted &&\n !isLoadingSettings\n );\n\n return (\n <PreferencesLayout\n availablePresentations={availablePresentations.data}\n audiences={audiences.data}\n >\n <p className='mt-3'><Text namespace={namespace} phrase='info' /></p>\n\n {(dataLoaded && canAccess) ? (\n <AudiencePreferences\n options={audiences.data}\n preselections={preselections.data}\n bulkPreferencesState={bulkOnboardingPreferencesState}\n saveChanges={onSave}\n imageUrl={ImageUrls.Onboarding.YEAR_GROUPS}\n />\n ) : <PartialAudiencePreferences />}\n </PreferencesLayout>\n );\n}"],"names":["AudienceItem","props","audience","highlight","setAudience","isDisabled","extraClasses","colourClass","getColourClass","className","onClick","FunctionHelper","role","name","split","map","s","charAt","toUpperCase","substring","join","defaultProps","useOnSaveAll","onDone","counter","setCounter","val","PartialAudiences","width","height","count","align","justifyClass","Array","fill","item","i","key","style","namespace","AudiencePreferences","selectedAudiences","setSelectedAudiences","showSpinner","setShowSpinner","bulkPreferencesState","setBulkPreferencesState","hasBulkSelectedLevels","OnboardingHelper","alerts","preselections","length","preselectedIds","masterId","ArrayHelper","isOnboarding","success","LanguageService","nextAppLink","onSuccess","hasChangedAudiences","p","sort","toString","hasChangedBulkState","isValid","hasChanged","onSelectLevel","newSelections","onToggleSelectAll","newBulkState","value","options","option","includes","src","imageUrl","alt","OnboardingFooter","justify","backButtonAppLink","AppLink","appLink","Text","phrase","ToggleSwitch","on","hideOutline","SpinnerButton","variant","disabled","newAudiences","filter","id","find","level","oldAudiences","onSaveCounter","saveChanges","error","PartialAudiencePreferences","AudiencePreferencesView","currentUser","UserRequests","availablePresentations","PreferenceRequests","audiences","useSettings","bulkOnboardingPreferencesState","isLoadingSettings","updateSetting","canAccess","data","AudienceHelper","hasCompleted","application","action","replace","dispatch","dataLoaded","PreferencesLayout","bulkState","onError","newSetting","SettingName","kind","SettingKind","ImageUrls"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7855],{75314:(e,t,n)=>{n.d(t,{j:()=>w});var a=n(32735),r=n(80247),o=n(23481),i=n(91967),c=n(76177),l=n(4594),s=n(45778),m=n(60376),u=n(36511),d=n(35223);const p={removeRecipient:"mCbMC",recipientItem:"kdcb0",showSpinner:"xH6Mu",avatarContainer:"Zcpg3",recipientDetails:"v5EmV",recipientDetailsWithRemoveButton:"_V928"};var v="shared.classroomGroupRecipientItemMetadata";function g(e){var t;return a.createElement(a.Fragment,null,a.createElement("div",{className:"".concat(p.avatarContainer," d-inline-block")},a.createElement(m.f,{svgName:d.vn.Group,variant:(0,u.I)(null===(t=e.classroomGroup.metadata)||void 0===t?void 0:t.colour)})),a.createElement("div",{className:e.detailsClassName},a.createElement("h4",{className:"font-size-normal fw-normal m-0"},e.classroomGroup.name),a.createElement("p",{className:"text-secondary m-0"},function(e){var t,n,a,r=null!==(n=null===(t=e.users)||void 0===t?void 0:t.count)&&void 0!==n?n:0,i=null===(a=e.classroom)||void 0===a?void 0:a.name;return i?o.T.getPhrase(v,"subheading",{classroomName:i,smartCount:r}):""}(e.classroomGroup))))}var f="shared.classroomRecipientItemMetadata";function E(e){return a.createElement(a.Fragment,null,a.createElement("div",{className:"".concat(p.avatarContainer," d-inline-block")},a.createElement(m.f,{svgName:d.vn.Classrooms,variant:"teal"})),a.createElement("div",{className:e.detailsClassName},a.createElement("h4",{className:"font-size-normal fw-normal m-0"},e.classroom.name),a.createElement("p",{className:"text-secondary m-0"},(c=null!==(r=null===(n=(t=e.classroom).users)||void 0===n?void 0:n.count)&&void 0!==r?r:null===(i=t.enrolments)||void 0===i?void 0:i.count,Number.isInteger(c)?o.T.getPhrase(f,"subheading",{smartCount:c}):""))));var t,n,r,i,c}var h=n(20789),y=n(76881),C=n(86613),x=n(64818),b=o.T.encloseNamespace("shared.userRecipientItemMetadata");function N(e){var t;return a.createElement(a.Fragment,null,a.createElement("div",{className:"".concat(p.avatarContainer," d-inline-block")},a.createElement(h.q,{imageUrl:null===(t=e.user.avatar)||void 0===t?void 0:t.url,imageCdnUrl:e.imageCdnUrl,initials:x.l.getInitials(e.user.name,e.user.surname)})),a.createElement("div",{className:e.detailsClassName},a.createElement("h4",{className:"font-size-normal fw-normal m-0"},e.showDisplayName?x.l.getDisplayName(e.user):x.l.getFullName(e.user)),a.createElement("p",{className:"text-secondary m-0"},e.getSubText?e.getSubText(e.user):function(e){var t=x.l.getUserType(e),n=x.l.getUserRole(e);if(t===y.Y.Staff)return n===C.i.Admin?b("admin"):b("staff");var a=x.l.getYearGroup(e);return(null==a?void 0:a.name)?a.name:b("student")}(e.user))))}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var k=o.T.encloseNamespace("share.recipientItem");function I(e){switch(e){case l.E.User:return k("removeUser");case l.E.Classroom:return k("removeClassroom");case l.E.ClassroomGroup:return k("removeGroup")}return null}function w(e){var t,n,o=(t=a.useState(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,o,i,c=[],l=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(a=o.call(n)).done)&&(c.push(a.value),c.length!==t);l=!0);}catch(e){s=!0,r=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw r}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return S(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?S(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=o[0],u=o[1],d="".concat(p.recipientItem," d-flex");m&&(d+=" ".concat(p.showSpinner));var v="".concat(e.removeRecipient?p.recipientDetailsWithRemoveButton:p.recipientDetails," d-inline-block ms-2");return a.createElement("div",{className:d},s.G.isType(e.entity,l.E.User)?a.createElement(N,{user:e.entity,imageCdnUrl:e.imageCdnUrl,detailsClassName:v,showDisplayName:e.showDisplayName,getSubText:e.getSubText}):s.G.isType(e.entity,l.E.Classroom)?a.createElement(E,{classroom:e.entity,detailsClassName:v}):s.G.isType(e.entity,l.E.ClassroomGroup)?a.createElement(g,{classroomGroup:e.entity,detailsClassName:v}):void 0,i.q.isFunction(e.removeRecipient)&&a.createElement("div",{className:"".concat(p.removeRecipient," d-inline-flex justify-content-center align-items-center")},m?a.createElement(r.Z,{as:"div",size:"sm",animation:"border",role:"status"}):a.createElement(c.u,{title:I(e.entity.typeId),spanHack:!0},a.createElement("div",{className:"btn-close cursor-pointer",role:"button","aria-label":"Close",onClick:function(){u(!0),e.removeRecipient(e.entity.id,(function(){return u(!1)}))}}))))}},82872:(e,t,n)=>{n.d(t,{t:()=>k,D:()=>I});var a=n(32735),r=n(91967),o=n(11607),i=n(83914),c=n(4594),l=n(76881),s=n(36511),m=n(45778),u=n(35223),d=n(64818),p=n(80247),v=n(23481);const g={avatar:"srrS3"};function f(e){var t=e.imageUrl,n=e.initials,r={};return t&&(r.backgroundImage="url('".concat(t,"')")),a.createElement("div",{className:g.avatar,style:r},t?a.createElement(a.Fragment,null," "):n)}var E=n(76177);const h={svgContainer:"laVU4",selection:"vEOCt",expander:"d1NHd",iconContainer:"rFH4W",icon:"BarYz",bubble:"HF0E8",spinnerContainer:"iKeXW",remove:"pyzCM",removeBubble:"mgt6Y"};var y=v.T.encloseNamespace("shared.inputSelection");function C(e){var t,n="".concat(h.svgContainer," ").concat(h.icon);return e.typeId===c.E.Classroom?n+=" text-teal":n+=" text-".concat((0,s.I)(null===(t=e.metadata)||void 0===t?void 0:t.colour)),n}function x(e){var t,n=function(e){var t;switch(e.typeId){case c.E.Classroom:return"text-teal-hover";case c.E.ClassroomGroup:return"text-".concat((0,s.I)(null===(t=e.metadata)||void 0===t?void 0:t.colour),"-hover")}}(e.selection),r=e.selection.typeId===c.E.Classroom;if(!e.canExpand){if(!e.selection.typeId||e.selection.typeId===c.E.User){var l=e.selection;return a.createElement("div",{className:h.svgContainer},a.createElement(f,{imageUrl:null===(t=l.avatar)||void 0===t?void 0:t.url,initials:d.l.getInitials(e.selection.name,e.selection.surname)}))}return a.createElement(E.u,{title:y(r?"emptyClassroom":"emptyGroup")},a.createElement("div",{className:"align-items-center border border-white bg-white ".concat(h.iconContainer)},a.createElement(i.x,{className:C(e.selection),svgName:r?u.vn.Classrooms:u.vn.Group})))}return e.hasExpanded?a.createElement("div",{className:"d-flex align-items-center text-white ".concat(h.spinnerContainer," ").concat(h.svgContainer)},a.createElement(p.Z,{as:"div",size:"sm",animation:"border",role:"status"})):a.createElement(a.Fragment,null,a.createElement(o.L,{className:"align-items-center cursor-pointer text-white border border-white rounded-circle ".concat(h.expander," ").concat(n),onClick:e.onClickExpand},a.createElement(i.x,{svgName:u.vn.Plus,className:"d-flex align-items-center ".concat(h.svgContainer)})),a.createElement("div",{className:"align-items-center border border-white bg-white ".concat(h.iconContainer)},a.createElement(i.x,{className:C(e.selection),svgName:r?u.vn.Classrooms:u.vn.Group})))}function b(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,o,i,c=[],l=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(a=o.call(n)).done)&&(c.push(a.value),c.length!==t);l=!0);}catch(e){s=!0,r=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw r}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return N(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?N(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function S(e){var t;if(!e.typeId)return"dark-blue";switch(e.typeId){case c.E.User:return"number"==typeof e.userType?2===e.userType?"dark-blue":"indigo":e.userType===l.Y.Learner?"dark-blue":"indigo";case c.E.Classroom:return"teal";case c.E.ClassroomGroup:return(0,s.I)(null===(t=e.metadata)||void 0===t?void 0:t.colour)}}function k(e){var t,n,r,l=m.G.isType(e.selection,c.E.Classroom),s=m.G.isType(e.selection,c.E.ClassroomGroup),d=e.onClickExpand&&(l||s),p=!!(null===(t=e.selection.users||e.selection.enrolments)||void 0===t?void 0:t.count),v=!!(null===(r=null===(n=e.selection.users)||void 0===n?void 0:n.data)||void 0===r?void 0:r.length),g=b(a.useState(!1),2),f=g[0],E=g[1],y=b(a.useState(d&&p),2),C=y[0],x=y[1];if(a.useEffect((function(){x(d&&p)}),[d,p]),v){var N=e.selection,k=S(e.selection);return a.createElement("div",{className:"d-flex align-items-center flex-wrap me-1 mt-1 pb-1 ps-1 pe-4 position-relative border-".concat(k," text-").concat(k," ").concat(h.bubble)},N.users.data.map((function(t){return a.createElement(I,{key:"".concat(t.id,":").concat(e.selection.id),selection:t,colourVariant:k,hasStudentExperience:e.hasStudentExperience})})),a.createElement(o.L,{className:"cursor-pointer position-absolute text-".concat(k," ").concat(h.removeBubble),onClick:function(){return e.onClickRemove(e.selection)}},a.createElement(i.x,{svgName:u.vn.Close,className:"d-flex align-items-center ".concat(h.svgContainer)})))}return a.createElement(I,{selection:e.selection,canExpand:C,hasExpanded:f,onClickExpand:function(){E(!0),e.onClickExpand(e.selection.id)},onClickRemove:e.onClickRemove,colourVariant:S(e.selection),hasStudentExperience:e.hasStudentExperience})}function I(e){var t=e.colourVariant||S(e.selection),n=e.selection.name;return e.selection.typeId===c.E.User&&(n=e.hasStudentExperience?d.l.getDisplayName(e.selection):d.l.getFullName(e.selection)),a.createElement("div",{className:"".concat(h.selection," bg-").concat(t," rounded-pill text-").concat(t," d-flex align-items-center me-1 mt-1 overflow-hidden")},!e.hideExpander&&a.createElement(x,{canExpand:e.canExpand,hasExpanded:e.hasExpanded,onClickExpand:e.onClickExpand,selection:e.selection}),a.createElement("span",{className:"mx-1 text-white text-truncate"},n),r.q.isFunction(e.onClickRemove)&&a.createElement(o.L,{className:"d-flex align-items-center cursor-pointer align-self-stretch text-white ".concat(h.remove),onClick:function(){return e.onClickRemove(e.selection)}},a.createElement(i.x,{svgName:u.vn.Close,className:"d-flex align-items-center ".concat(h.svgContainer)})))}},7855:(e,t,n)=>{n.d(t,{d:()=>g,R:()=>f});var a=n(32735),r=n(23481),o=n(75896),i=n(75314),c=n(2136),l=n(83914),s=n(89589),m=n(97481),u=n(35223),d=n(82872);const p={container:"Dc3kX",suggestionsContainerOpen:"c5t3e",selectionContainer:"kFjoN",sectionContainer:"mLrE3"};var v="shared.tokenizedTypeahead",g=10;function f(e){var t;return a.createElement("div",{className:"form-control h-auto d-flex align-items-top position-relative ".concat(e.hideIcon?"":"py-1 px-0"," ").concat(e.className)},!e.hideIcon&&a.createElement(l.x,{className:"svg-container m-1",svgName:u.vn.Search}),a.createElement("div",{className:"".concat(p.selectionContainer," d-flex flex-wrap align-items-center mt-n1")},e.selections.map((function(t){return e.getInputTokenComponent?e.getInputTokenComponent(t):a.createElement(d.t,{key:t.id,selection:t,onClickRemove:e.removeSelection,onClickExpand:e.fetchSelectionMembers,hasStudentExperience:e.hasStudentExperience})})),a.createElement(c.E,Object.assign({},e,{onBackspace:function(){e.selections.length&&e.removeSelection(o.m.last(e.selections))},recentSearchHeading:e.recentSearchHeading||r.T.getPhrase(v,"recentSearchHeading"),placeholder:(null===(t=e.selections)||void 0===t?void 0:t.length)?" ":e.placeholder,searchIconPlacement:!1,clearQueryOnSelect:!0,getSuggestionComponent:function(t){return e.getSuggestionComponent?e.getSuggestionComponent(t):a.createElement(i.j,{entity:t,imageCdnUrl:e.imageCdnUrl,showDisplayName:e.hasStudentExperience})},getEmptyStateComponent:function(t){return a.createElement(s.x,{query:t,imageUrl:e.emptyStateImageUrl})},getErrorStateComponent:function(t){return a.createElement(m.d,{imageUrl:e.errorStateImageUrl,onClickTryAgain:t})},theme:{container:p.container,suggestionsContainerOpen:"bg-white py-1 rounded border mt-1 ".concat(p.suggestionsContainerOpen),sectionContainer:"border-bottom py-1 ".concat(p.sectionContainer)},sectionTitleClassName:"ps-2",renderSuggestionsOnInputFocus:e.renderSuggestionsOnInputFocus,onSuggestionDependencies:[e.selections]}))),!!e.sharePermissionsDescription&&a.createElement("span",{className:"px-2 text-secondary text-nowrap"},e.sharePermissionsDescription))}f.defaultProps={renderSuggestionsOnInputFocus:!0}},89589:(e,t,n)=>{n.d(t,{x:()=>l});var a=n(32735),r=n(83345),o=n(28329);const i={emptyState:"bKTf0"};var c="shared.typeaheadEmptyState";function l(e){var t=e.query,n=void 0===t?"":t,l=e.imageUrl,s=(0,o.N)(n,300);return a.createElement("div",{className:"d-flex flex-column align-items-center text-center",onClick:function(e){e.stopPropagation()}},a.createElement("img",{alt:"",role:"presentation",src:l,className:"pb-2 ".concat(i.emptyState)}),a.createElement("h2",{className:"h6"},a.createElement(r.x,{namespace:c,phrase:"noResults",options:{query:s,smartCount:s.length}})))}},97481:(e,t,n)=>{n.d(t,{d:()=>l});var a=n(32735),r=n(11607),o=n(83345);const i={emptyState:"k5mEG"};var c="shared.typeaheadErrorState";function l(e){return a.createElement("div",{className:"d-flex flex-column align-items-center text-center",onClick:function(e){e.stopPropagation()}},a.createElement("img",{alt:"",role:"presentation",src:e.imageUrl,className:"pb-2 ".concat(i.emptyState)}),a.createElement("h2",{className:"h6"},a.createElement(o.x,{namespace:c,phrase:"error"})),a.createElement(r.L,{onClick:function(t){t.stopPropagation(),e.onClickTryAgain()},className:"btn btn-link info-link p-0"},a.createElement(o.x,{namespace:c,phrase:"tryAgain"})))}},36511:(e,t,n)=>{n.d(t,{I:()=>r});var a=n(40424);function r(e){switch(e){case a.R.Pink:return"pink";case a.R.Orange:return"orange";case a.R.Green:return"green";case a.R.Blue:return"blue";case a.R.Purple:return"purple";case a.R.Indigo:return"indigo";default:return"pink"}}}}]);
2
+ //# sourceMappingURL=7855-92e790c403-lite.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts/7855-92e790c403-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/share/components/recipient-item/recipient-item.scss","file:///app/packages/libs/shared/src/apps/share/components/recipient-item/classroom-group-recipient-item-metadata/ClassroomGroupRecipientItemMetadata.tsx","file:///app/packages/libs/shared/src/apps/share/components/recipient-item/classroom-recipient-item-metadata/ClassroomRecipientItemMetadata.tsx","file:///app/packages/libs/shared/src/apps/share/components/recipient-item/user-recipient-item-metadata/UserRecipientItemMetadata.tsx","file:///app/packages/libs/shared/src/apps/share/components/recipient-item/RecipientItem.tsx","file:///app/packages/libs/shared/src/apps/share/components/white-avatar/white-avatar.scss","file:///app/packages/libs/shared/src/apps/share/components/white-avatar/WhiteAvatar.tsx","file:///app/packages/libs/shared/src/apps/share/components/tokenized-typeahead/input-selection.scss","file:///app/packages/libs/shared/src/apps/share/components/tokenized-typeahead/InputSelectionExpander.tsx","file:///app/packages/libs/shared/src/apps/share/components/tokenized-typeahead/InputSelection.tsx","file:///app/packages/libs/shared/src/apps/share/components/tokenized-typeahead/tokenized-typeahead.scss","file:///app/packages/libs/shared/src/apps/share/components/tokenized-typeahead/TokenizedTypeahead.tsx","file:///app/packages/libs/shared/src/components/typeahead-empty-state/typeahead-empty-state.scss","file:///app/packages/libs/shared/src/components/typeahead-empty-state/TypeaheadEmptyState.tsx","file:///app/packages/libs/shared/src/components/typeahead-error-state/typeahead-error-state.scss","file:///app/packages/libs/shared/src/components/typeahead-error-state/TypeaheadErrorState.tsx","file:///app/packages/libs/shared/src/utils/GroupHelper.ts"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"removeRecipient\":\"mCbMC\",\"recipientItem\":\"kdcb0\",\"showSpinner\":\"xH6Mu\",\"avatarContainer\":\"Zcpg3\",\"recipientDetails\":\"v5EmV\",\"recipientDetailsWithRemoveButton\":\"_V928\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { ClassroomGroup } from 'libs/shared/interfaces';\nimport { mapColourToBsVariant } from 'libs/shared/utils/GroupHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from '../recipient-item.scss';\n\nconst namespace = 'shared.classroomGroupRecipientItemMetadata';\n\nfunction getSubheading(classroomGroup: ClassroomGroup): string {\n const userCount = classroomGroup.users?.count ?? 0;\n const classroomName = classroomGroup.classroom?.name;\n\n if (classroomName)\n return LanguageService.getPhrase(namespace, 'subheading', { classroomName, smartCount: userCount });\n\n return '';\n}\n\ninterface ClassroomGroupRecipientItemMetadataProps {\n classroomGroup: ClassroomGroup;\n detailsClassName: string;\n}\n\nexport function ClassroomGroupRecipientItemMetadata(props: ClassroomGroupRecipientItemMetadataProps): JSX.Element {\n return (\n <>\n <div className={`${styles.avatarContainer} d-inline-block`}>\n <IconCircle\n svgName={cvSvgLibrary.Group}\n variant={mapColourToBsVariant(props.classroomGroup.metadata?.colour)}\n />\n </div>\n\n <div className={props.detailsClassName}>\n <h4 className='font-size-normal fw-normal m-0'>\n {props.classroomGroup.name}\n </h4>\n <p className='text-secondary m-0'>{getSubheading(props.classroomGroup)}</p>\n </div>\n </>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { Classroom } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from '../recipient-item.scss';\n\nconst namespace = 'shared.classroomRecipientItemMetadata';\n\nfunction getSubheading(classroom: Classroom): string {\n // Getting count from users is a temporary fix until enrolments count is working in Search api\n const userCount = classroom.users?.count ?? classroom.enrolments?.count;\n\n if (Number.isInteger(userCount))\n return LanguageService.getPhrase(namespace, 'subheading', { smartCount: userCount });\n\n return '';\n}\n\ninterface ClassroomRecipientItemMetadataProps {\n classroom: Classroom;\n detailsClassName: string;\n}\n\nexport function ClassroomRecipientItemMetadata(props: ClassroomRecipientItemMetadataProps): JSX.Element {\n return (\n <>\n <div className={`${styles.avatarContainer} d-inline-block`}>\n <IconCircle svgName={cvSvgLibrary.Classrooms} variant='teal' />\n </div>\n\n <div className={props.detailsClassName}>\n <h4 className='font-size-normal fw-normal m-0'>\n {props.classroom.name}\n </h4>\n <p className='text-secondary m-0'>{getSubheading(props.classroom)}</p>\n </div>\n </>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { UserRole } from 'libs/shared/enums/UserRole';\nimport { BaseObject, User } from 'libs/shared/interfaces';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport styles from '../recipient-item.scss';\n\nconst namespace = 'shared.userRecipientItemMetadata';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getSubText(user: User): string {\n const userType = UserHelper.getUserType(user);\n const role = UserHelper.getUserRole(user);\n\n if (userType === UserGroup.Staff) {\n if (role === UserRole.Admin)\n return getPhrase('admin');\n\n return getPhrase('staff');\n }\n\n const yearGroup = UserHelper.getYearGroup(user);\n\n if (yearGroup?.name)\n return yearGroup.name;\n\n return getPhrase('student');\n}\n\ninterface UserRecipientItemMetadataProps {\n user: User;\n imageCdnUrl: string;\n detailsClassName: string;\n showDisplayName: boolean;\n getSubText?: (user: BaseObject) => string;\n}\n\nexport function UserRecipientItemMetadata(props: UserRecipientItemMetadataProps): JSX.Element {\n return (\n <>\n <div className={`${styles.avatarContainer} d-inline-block`}>\n <Avatar\n imageUrl={props.user.avatar?.url}\n imageCdnUrl={props.imageCdnUrl}\n initials={UserHelper.getInitials(props.user.name, props.user.surname)}\n />\n </div>\n\n <div className={props.detailsClassName}>\n <h4 className='font-size-normal fw-normal m-0'>\n {props.showDisplayName\n ? UserHelper.getDisplayName(props.user)\n : UserHelper.getFullName(props.user)\n }\n </h4>\n <p className='text-secondary m-0'>{props.getSubText ? props.getSubText(props.user) : getSubText(props.user)}</p>\n </div>\n </>\n );\n}","import React from 'react';\nimport { Spinner } from 'react-bootstrap';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Classroom, ClassroomGroup, User } from 'libs/shared/interfaces';\nimport { MasterTypeHelper } from 'libs/shared/utils/MasterTypeHelper';\n\nimport { ClassroomGroupRecipientItemMetadata } from './classroom-group-recipient-item-metadata/ClassroomGroupRecipientItemMetadata';\nimport { ClassroomRecipientItemMetadata } from './classroom-recipient-item-metadata/ClassroomRecipientItemMetadata';\nimport { UserRecipientItemMetadata } from './user-recipient-item-metadata/UserRecipientItemMetadata';\n\nimport styles from './recipient-item.scss';\n\nconst namespace = 'share.recipientItem';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getRemovePhrase(type: MasterType): string {\n switch (type) {\n case (MasterType.User):\n return getPhrase('removeUser');\n case (MasterType.Classroom):\n return getPhrase('removeClassroom');\n case (MasterType.ClassroomGroup):\n return getPhrase('removeGroup');\n }\n return null;\n}\n\ninterface RecipientItemProps<T extends BaseObject = BaseObject> {\n entity: T;\n imageCdnUrl: string;\n showDisplayName: boolean;\n removeRecipient?: (id: string, onError?: () => void) => void;\n getSubText?: (entity: T) => string;\n}\n\nexport function RecipientItem<T extends BaseObject = BaseObject>(props: RecipientItemProps<T>): JSX.Element {\n const [ showSpinner, setShowSpinner ] = React.useState(false);\n\n let className = `${styles.recipientItem} d-flex`;\n\n if (showSpinner)\n className += ` ${styles.showSpinner}`;\n\n const detailsClassName = `${props.removeRecipient\n ? styles.recipientDetailsWithRemoveButton\n : styles.recipientDetails} d-inline-block ms-2`;\n\n function removeRecipient(): void {\n setShowSpinner(true);\n props.removeRecipient(props.entity.id, () => setShowSpinner(false));\n }\n\n return (\n <div className={className}>\n {(() => {\n if (MasterTypeHelper.isType<User>(props.entity, MasterType.User)) {\n return (\n <UserRecipientItemMetadata\n user={props.entity}\n imageCdnUrl={props.imageCdnUrl}\n detailsClassName={detailsClassName}\n showDisplayName={props.showDisplayName}\n getSubText={props.getSubText}\n />\n );\n }\n\n if (MasterTypeHelper.isType<Classroom>(props.entity, MasterType.Classroom)) {\n return (\n <ClassroomRecipientItemMetadata\n classroom={props.entity}\n detailsClassName={detailsClassName}\n />\n );\n }\n\n if (MasterTypeHelper.isType<ClassroomGroup>(props.entity, MasterType.ClassroomGroup)) {\n return (\n <ClassroomGroupRecipientItemMetadata\n classroomGroup={props.entity}\n detailsClassName={detailsClassName}\n />\n );\n }\n })()}\n\n {FunctionHelper.isFunction(props.removeRecipient) && (\n <div className={`${styles.removeRecipient} d-inline-flex justify-content-center align-items-center`}>\n {showSpinner\n ? <Spinner as='div' size='sm' animation='border' role='status' />\n : (\n <Tooltip title={getRemovePhrase(props.entity.typeId)} spanHack>\n <div\n className='btn-close cursor-pointer'\n role='button'\n aria-label='Close'\n onClick={removeRecipient}\n >\n </div>\n </Tooltip>\n )\n }\n </div>\n )}\n </div>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"avatar\":\"srrS3\"};","import React from 'react';\n\nimport styles from './white-avatar.scss';\n\ninterface WhiteAvatarProps {\n initials: string;\n imageUrl?: string;\n}\n\nexport function WhiteAvatar(props: WhiteAvatarProps): React.ReactElement {\n const { imageUrl, initials } = props;\n\n const style: React.CSSProperties = {};\n\n if (imageUrl)\n style.backgroundImage = `url('${imageUrl}')`;\n\n return (\n <div className={styles.avatar} style={style}>\n {imageUrl ? <>&nbsp;</> : initials}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"svgContainer\":\"laVU4\",\"selection\":\"vEOCt\",\"expander\":\"d1NHd\",\"iconContainer\":\"rFH4W\",\"icon\":\"BarYz\",\"bubble\":\"HF0E8\",\"spinnerContainer\":\"iKeXW\",\"remove\":\"pyzCM\",\"removeBubble\":\"mgt6Y\"};","import React from 'react';\nimport { Spinner } from 'react-bootstrap';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { WhiteAvatar } from 'libs/shared/apps/share/components/white-avatar/WhiteAvatar';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Classroom, ClassroomGroup, User } from 'libs/shared/interfaces';\nimport { mapColourToBsVariant } from 'libs/shared/utils/GroupHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport styles from './input-selection.scss';\n\nconst getPhrase = LanguageService.encloseNamespace('shared.inputSelection');\n\nfunction mapEntityTypeToForegroundColor(entity: BaseObject): string {\n switch (entity.typeId) {\n case MasterType.Classroom: {\n return 'text-teal-hover';\n }\n\n case MasterType.ClassroomGroup: {\n return `text-${mapColourToBsVariant((entity as ClassroomGroup).metadata?.colour)}-hover`;\n }\n }\n}\n\nfunction getColouredIconClass(selection: Classroom | ClassroomGroup): string {\n let iconClass = `${styles.svgContainer} ${styles.icon}`;\n\n if (selection.typeId === MasterType.Classroom)\n iconClass += ' text-teal';\n else\n iconClass += ` text-${mapColourToBsVariant((selection as ClassroomGroup).metadata?.colour)}`;\n\n return iconClass;\n}\n\ninterface InputSelectionExpanderProps {\n canExpand: boolean;\n hasExpanded: boolean;\n selection: BaseObject;\n onClickExpand?: () => void;\n}\n\nexport function InputSelectionExpander(props: InputSelectionExpanderProps): JSX.Element {\n const colourClass = mapEntityTypeToForegroundColor(props.selection);\n\n const isClassroom = props.selection.typeId === MasterType.Classroom;\n\n if (!props.canExpand) {\n if (!props.selection.typeId || props.selection.typeId === MasterType.User) {\n const user = props.selection as User;\n\n return (\n <div className={styles.svgContainer}>\n <WhiteAvatar\n imageUrl={user.avatar?.url}\n initials={UserHelper.getInitials(props.selection.name, (props.selection as User).surname)}\n />\n </div>\n );\n }\n\n return (\n <Tooltip title={getPhrase(isClassroom ? 'emptyClassroom' : 'emptyGroup')}>\n <div className={`align-items-center border border-white bg-white ${styles.iconContainer}`}>\n <SvgContainer\n className={getColouredIconClass(props.selection)}\n svgName={isClassroom ? cvSvgLibrary.Classrooms : cvSvgLibrary.Group}\n />\n </div>\n </Tooltip>\n );\n }\n\n if (!props.hasExpanded) {\n return (\n <>\n {/* Visible on hover */}\n <DivButton\n className={`align-items-center cursor-pointer text-white border border-white rounded-circle ${styles.expander} ${colourClass}`}\n onClick={props.onClickExpand}\n >\n <SvgContainer svgName={cvSvgLibrary.Plus} className={`d-flex align-items-center ${styles.svgContainer}`} />\n </DivButton>\n\n {/* Visible when not hovering */}\n <div className={`align-items-center border border-white bg-white ${styles.iconContainer}`}>\n <SvgContainer\n className={getColouredIconClass(props.selection)}\n svgName={isClassroom ? cvSvgLibrary.Classrooms : cvSvgLibrary.Group}\n />\n </div>\n </>\n );\n }\n\n return (\n <div className={`d-flex align-items-center text-white ${styles.spinnerContainer} ${styles.svgContainer}`}>\n <Spinner as='div' size='sm' animation='border' role='status' />\n </div>\n );\n}","import React from 'react';\nimport { ButtonProps } from 'react-bootstrap';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { Classroom, ClassroomGroup, User } from 'libs/shared/interfaces';\nimport { mapColourToBsVariant } from 'libs/shared/utils/GroupHelper';\nimport { MasterTypeHelper } from 'libs/shared/utils/MasterTypeHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport { InputSelectionExpander } from './InputSelectionExpander';\n\nimport styles from './input-selection.scss';\n\n/**\n * TODO: This entire file needs to be refactored to work\n * better with non standard entities. ATM it's also being used\n * in the invite a colleague UI for trials. - Sha\n */\ninterface OtherEntity {\n id: never;\n typeId: never;\n name: string;\n}\n\ntype Entity = Classroom | ClassroomGroup | User | OtherEntity;\n\nfunction mapEntityTypeToBsVariant(entity: Entity): ButtonProps['variant'] {\n if (!entity.typeId)\n return 'dark-blue';\n\n switch (entity.typeId) {\n case MasterType.User: {\n // TODO: Delete this once https://clickview.atlassian.net/browse/INBOX-2151 is addressed\n if (typeof(entity as User).userType === 'number')\n return ((entity as User).userType as any) === 2 ? 'dark-blue' : 'indigo';\n\n if ((entity as User).userType === UserGroup.Learner)\n return 'dark-blue';\n\n return 'indigo';\n }\n\n case MasterType.Classroom: {\n return 'teal';\n }\n\n case MasterType.ClassroomGroup: {\n return mapColourToBsVariant((entity as ClassroomGroup).metadata?.colour);\n }\n }\n}\n\ninterface InputSelectionProps {\n selection: Entity;\n onClickRemove?: (selection: Entity) => void;\n onClickExpand?: (id: string) => void;\n hasStudentExperience?: boolean;\n}\n\nexport function InputSelection(props: InputSelectionProps): JSX.Element {\n const isClassroom = MasterTypeHelper.isType(props.selection, MasterType.Classroom);\n const isClassroomGroup = MasterTypeHelper.isType(props.selection, MasterType.ClassroomGroup);\n const isExpandable = props.onClickExpand && (isClassroom || isClassroomGroup);\n\n /**\n * We only know that there are no members if props.selections.users.count exists\n * and is 0 as it is set to 0 in <MainShare /> after fetching the users.\n */\n const hasMembers = !!(\n (props.selection as ClassroomGroup).users ||\n (props.selection as Classroom).enrolments\n )?.count;\n const hasFetchedMembers = !!(props.selection as Classroom | ClassroomGroup).users?.data?.length;\n\n const [ hasExpanded, setHasExpanded ] = React.useState(false);\n const [ canExpand, setCanExpand ] = React.useState(isExpandable && hasMembers);\n\n React.useEffect(() => {\n setCanExpand(isExpandable && hasMembers);\n }, [ isExpandable, hasMembers ]);\n\n function onClickExpand(): void {\n setHasExpanded(true);\n props.onClickExpand(props.selection.id);\n }\n\n if (hasFetchedMembers) {\n const selection: Classroom | ClassroomGroup = props.selection as Classroom | ClassroomGroup;\n\n const colourVariant = mapEntityTypeToBsVariant(props.selection);\n\n return (\n <div className={`d-flex align-items-center flex-wrap me-1 mt-1 pb-1 ps-1 pe-4 position-relative border-${colourVariant} text-${colourVariant} ${styles.bubble}`}>\n {selection.users.data.map(user => (\n <InputToken\n key={`${user.id}:${props.selection.id}`}\n selection={user}\n colourVariant={colourVariant}\n hasStudentExperience={props.hasStudentExperience}\n />\n ))}\n\n <DivButton\n className={`cursor-pointer position-absolute text-${colourVariant} ${styles.removeBubble}`}\n onClick={() => props.onClickRemove(props.selection)}\n >\n <SvgContainer svgName={cvSvgLibrary.Close} className={`d-flex align-items-center ${styles.svgContainer}`} />\n </DivButton>\n </div>\n );\n }\n\n return (\n <InputToken\n selection={props.selection}\n canExpand={canExpand}\n hasExpanded={hasExpanded}\n onClickExpand={onClickExpand}\n onClickRemove={props.onClickRemove}\n colourVariant={mapEntityTypeToBsVariant(props.selection)}\n hasStudentExperience={props.hasStudentExperience}\n />\n );\n}\n\ninterface InputTokenProps<T extends HashObject> {\n selection: T | Entity;\n colourVariant: string;\n canExpand?: boolean;\n hasExpanded?: boolean;\n onClickExpand?: () => void;\n onClickRemove?: (selection: Entity) => void;\n hasStudentExperience?: boolean;\n hideExpander?: boolean;\n}\n\nexport function InputToken<T extends HashObject = Entity>(props: InputTokenProps<T>): JSX.Element {\n const colourVariant = props.colourVariant || mapEntityTypeToBsVariant(props.selection);\n\n let selectionName = props.selection.name;\n\n if (props.selection.typeId === MasterType.User) {\n selectionName = props.hasStudentExperience\n ? UserHelper.getDisplayName(props.selection as User)\n : UserHelper.getFullName(props.selection as User);\n }\n\n return (\n <div className={`${styles.selection} bg-${colourVariant} rounded-pill text-${colourVariant} d-flex align-items-center me-1 mt-1 overflow-hidden`}>\n {!props.hideExpander && (\n <InputSelectionExpander\n canExpand={props.canExpand}\n hasExpanded={props.hasExpanded}\n onClickExpand={props.onClickExpand}\n selection={props.selection}\n />\n )}\n\n <span className='mx-1 text-white text-truncate'>{selectionName}</span>\n\n {FunctionHelper.isFunction(props.onClickRemove) && (\n <DivButton\n className={`d-flex align-items-center cursor-pointer align-self-stretch text-white ${styles.remove}`}\n onClick={() => props.onClickRemove(props.selection)}\n >\n <SvgContainer svgName={cvSvgLibrary.Close} className={`d-flex align-items-center ${styles.svgContainer}`} />\n </DivButton>\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"Dc3kX\",\"suggestionsContainerOpen\":\"c5t3e\",\"selectionContainer\":\"kFjoN\",\"sectionContainer\":\"mLrE3\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { RecipientItem } from 'libs/shared/apps/share/components/recipient-item/RecipientItem';\nimport { SearchBar, SearchBarProps } from 'libs/shared/components/search-bar/SearchBar';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { TypeaheadEmptyState } from 'libs/shared/components/typeahead-empty-state/TypeaheadEmptyState';\nimport { TypeaheadErrorState } from 'libs/shared/components/typeahead-error-state/TypeaheadErrorState';\nimport { BaseObject } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { InputSelection } from './InputSelection';\n\nimport styles from './tokenized-typeahead.scss';\n\nconst namespace = 'shared.tokenizedTypeahead';\n\nexport const TOKENIZED_TYPEAHEAD_SUGGESTIONS_LIMIT = 10;\n\ninterface TokenizedTypeaheadProps<T extends BaseObject = BaseObject> extends SearchBarProps<T> {\n selections: T[];\n removeSelection: (selection: T) => void;\n emptyStateImageUrl: string;\n errorStateImageUrl: string;\n hasStudentExperience?: boolean;\n getInputTokenComponent?: (selection: T) => JSX.Element;\n imageCdnUrl?: string;\n className?: string;\n hideIcon?: boolean;\n\n /**\n * If this is passed in groups and classrooms will have the option to expand\n * otherwise they will appear as normal without the + icon\n */\n fetchSelectionMembers?: (id: string) => void;\n sharePermissionsDescription?: string;\n}\n\nTokenizedTypeahead.defaultProps = {\n renderSuggestionsOnInputFocus: true\n};\n\n/**\n * This component extends the functionality of the `SearchBar` component by\n * displaying a list of selections as tokens inside the search bar.\n * \n * Any component using this component is responsible for managing the state of\n * these tokens (selections). See `MainShare.tsx` for an example.\n */\nexport function TokenizedTypeahead<T extends BaseObject = BaseObject>(props: TokenizedTypeaheadProps<T>): JSX.Element {\n return (\n <div className={`form-control h-auto d-flex align-items-top position-relative ${props.hideIcon ? '' : 'py-1 px-0'} ${props.className}`}>\n {!props.hideIcon && <SvgContainer className='svg-container m-1' svgName={cvSvgLibrary.Search} />}\n\n <div className={`${styles.selectionContainer} d-flex flex-wrap align-items-center mt-n1`}>\n {props.selections.map(s => {\n if (props.getInputTokenComponent)\n return props.getInputTokenComponent(s);\n\n return (\n <InputSelection\n key={s.id}\n selection={s}\n onClickRemove={props.removeSelection}\n onClickExpand={props.fetchSelectionMembers}\n hasStudentExperience={props.hasStudentExperience}\n />\n );\n })}\n\n <SearchBar\n {...props}\n onBackspace={() => {\n if (!props.selections.length)\n return;\n\n props.removeSelection(ArrayHelper.last(props.selections));\n }}\n recentSearchHeading={props.recentSearchHeading || LanguageService.getPhrase(namespace, 'recentSearchHeading')}\n placeholder={!props.selections?.length ? props.placeholder : ' '}\n searchIconPlacement={false}\n clearQueryOnSelect\n getSuggestionComponent={suggestion => {\n if (props.getSuggestionComponent)\n return props.getSuggestionComponent(suggestion);\n\n return (\n <RecipientItem\n entity={suggestion}\n imageCdnUrl={props.imageCdnUrl}\n showDisplayName={props.hasStudentExperience}\n />\n );\n }}\n getEmptyStateComponent={query => <TypeaheadEmptyState query={query} imageUrl={props.emptyStateImageUrl} />}\n getErrorStateComponent={onClickTryAgain =>\n <TypeaheadErrorState imageUrl={props.errorStateImageUrl} onClickTryAgain={onClickTryAgain} />\n }\n theme={{\n container: styles.container,\n suggestionsContainerOpen: `bg-white py-1 rounded border mt-1 ${styles.suggestionsContainerOpen}`,\n sectionContainer: `border-bottom py-1 ${styles.sectionContainer}`\n }}\n sectionTitleClassName='ps-2'\n renderSuggestionsOnInputFocus={props.renderSuggestionsOnInputFocus}\n onSuggestionDependencies={[props.selections]}\n />\n </div>\n\n {!!props.sharePermissionsDescription &&\n <span className='px-2 text-secondary text-nowrap'>{props.sharePermissionsDescription}</span>\n }\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"emptyState\":\"bKTf0\"};","import React from 'react';\n\nimport { Text } from 'libs/shared/components/text/Text';\nimport { useDebounce } from 'libs/shared/hooks/UseDebounce';\n\nimport styles from './typeahead-empty-state.scss';\n\nconst namespace = 'shared.typeaheadEmptyState';\n\ninterface TypeaheadEmptyStateProps {\n query: string;\n imageUrl: string;\n}\n\nexport function TypeaheadEmptyState({ query = '', imageUrl }: TypeaheadEmptyStateProps): JSX.Element {\n function onClick(e: React.MouseEvent<HTMLDivElement>): void {\n e.stopPropagation();\n }\n\n const debouncedQuery = useDebounce(query, 300);\n\n return (\n <div className='d-flex flex-column align-items-center text-center' onClick={onClick}>\n <img\n alt=''\n role='presentation'\n src={imageUrl}\n className={`pb-2 ${styles.emptyState}`}\n />\n <h2 className='h6'>\n <Text\n namespace={namespace}\n phrase='noResults'\n options={{ query: debouncedQuery, smartCount: debouncedQuery.length }}\n />\n </h2>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"emptyState\":\"k5mEG\"};","import React from 'react';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { Text } from 'libs/shared/components/text/Text';\n\nimport styles from './typeahead-error-state.scss';\n\nconst namespace = 'shared.typeaheadErrorState';\n\ninterface TypeaheadErrorStateProps {\n imageUrl: string;\n onClickTryAgain: () => void;\n}\n\nexport function TypeaheadErrorState(props: TypeaheadErrorStateProps): JSX.Element {\n function onClickComponent(e: React.MouseEvent<HTMLDivElement>): void {\n e.stopPropagation();\n }\n\n function onClickTryAgain(e: React.MouseEvent<HTMLDivElement>): void {\n e.stopPropagation();\n \n props.onClickTryAgain();\n }\n\n return (\n <div className='d-flex flex-column align-items-center text-center' onClick={onClickComponent}>\n <img\n alt=''\n role='presentation'\n src={props.imageUrl}\n className={`pb-2 ${styles.emptyState}`}\n />\n <h2 className='h6'>\n <Text namespace={namespace} phrase='error' />\n </h2>\n <DivButton onClick={onClickTryAgain} className='btn btn-link info-link p-0'>\n <Text namespace={namespace} phrase='tryAgain' />\n </DivButton>\n </div>\n );\n}","import { ButtonProps } from 'react-bootstrap';\n\nimport { ClassroomGroupColour } from 'libs/shared/interfaces';\n\nexport function mapColourToBsVariant(groupColour: ClassroomGroupColour): ButtonProps['variant'] {\n switch (groupColour) {\n case ClassroomGroupColour.Pink:\n return 'pink';\n case ClassroomGroupColour.Orange:\n return 'orange';\n case ClassroomGroupColour.Green:\n return 'green';\n case ClassroomGroupColour.Blue:\n return 'blue';\n case ClassroomGroupColour.Purple:\n return 'purple';\n case ClassroomGroupColour.Indigo:\n return 'indigo';\n default:\n return 'pink';\n }\n}\n"],"names":["namespace","ClassroomGroupRecipientItemMetadata","props","className","IconCircle","svgName","variant","classroomGroup","metadata","colour","detailsClassName","name","userCount","users","count","classroomName","classroom","LanguageService","smartCount","getSubheading","ClassroomRecipientItemMetadata","enrolments","Number","isInteger","getPhrase","UserRecipientItemMetadata","Avatar","imageUrl","user","avatar","url","imageCdnUrl","initials","UserHelper","surname","showDisplayName","getSubText","userType","role","UserGroup","UserRole","yearGroup","getRemovePhrase","type","MasterType","RecipientItem","showSpinner","setShowSpinner","removeRecipient","MasterTypeHelper","entity","FunctionHelper","Spinner","as","size","animation","Tooltip","title","typeId","spanHack","onClick","id","WhiteAvatar","style","backgroundImage","getColouredIconClass","selection","iconClass","InputSelectionExpander","colourClass","mapEntityTypeToForegroundColor","isClassroom","canExpand","SvgContainer","hasExpanded","DivButton","onClickExpand","mapEntityTypeToBsVariant","InputSelection","isClassroomGroup","isExpandable","hasMembers","hasFetchedMembers","data","length","setHasExpanded","setCanExpand","colourVariant","map","InputToken","key","hasStudentExperience","onClickRemove","selectionName","hideExpander","TOKENIZED_TYPEAHEAD_SUGGESTIONS_LIMIT","TokenizedTypeahead","hideIcon","selections","s","getInputTokenComponent","removeSelection","fetchSelectionMembers","SearchBar","onBackspace","ArrayHelper","recentSearchHeading","placeholder","searchIconPlacement","clearQueryOnSelect","getSuggestionComponent","suggestion","getEmptyStateComponent","query","TypeaheadEmptyState","emptyStateImageUrl","getErrorStateComponent","onClickTryAgain","TypeaheadErrorState","errorStateImageUrl","theme","container","suggestionsContainerOpen","sectionContainer","sectionTitleClassName","renderSuggestionsOnInputFocus","onSuggestionDependencies","sharePermissionsDescription","defaultProps","debouncedQuery","e","stopPropagation","alt","src","Text","phrase","options","mapColourToBsVariant","groupColour"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
1
  "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7987],{92869:(e,t,n)=>{n.d(t,{t:()=>c});var a=n(48088),r=n(95846),c={preventScrollTop:function(){a.Radio.channel(r.G.SHELL).trigger("prevent:scroll:top")}}},75097:(e,t,n)=>{n.d(t,{U:()=>c});var a=n(32735),r=n(95245);function c(e){var t=e.count,n=void 0===t?6:t;return a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"d-flex ps-1"},Array(n).fill(null).map((function(e,t){return a.createElement("div",{key:t,className:"".concat(r.Z.partialButton," partial-loading-background mx-1")})}))))}},37395:(e,t,n)=>{n.d(t,{t:()=>u});var a=n(32735),r=n(98269),c=n(92869),l=n(49985),o=n(65858),s=n(36848),i=n(83345);function m(e,t,n){var a;if(!t)return null;var r=null!==(a=e.params)&&void 0!==a?a:{};return n?(null==r?void 0:r.previous)?{application:e.application,action:e.action,args:e.args,params:Object.assign(Object.assign({},r),{cursor:null==r?void 0:r.previous,previous:null})}:{application:e.application,action:e.action,args:e.args,params:Object.assign(Object.assign({},r),{cursor:null,previous:null})}:{application:e.application,action:e.action,args:e.args,params:Object.assign(Object.assign({},r),{cursor:t,previous:r.cursor})}}function u(e){var t=e.appLink,n=e.cursors,u=e.className,d=e.buttonVariant,p=e.prevHack,f=e.scrollTop,g=e.onClick;function v(e){t&&!f&&c.t.preventScrollTop(),l.k.logUserAction({page:e},{location:o.LZ.Pagination,entity:o.py.Pagination,actionType:o.Vw.Navigate}),g&&g(n[e])}return t?a.createElement(i.D.Provider,{value:"shared.pagination"},a.createElement("div",{className:u},a.createElement(s.F,{appLink:m(t,n.previous,p),className:"btn btn-".concat(d," me-1 ").concat(n.previous?"":"disabled"),onClick:function(){return v("previous")},style:{display:"inline-block"}},a.createElement(i.x,{phrase:"previous"})),a.createElement(s.F,{appLink:m(t,n.next),className:"btn btn-".concat(d," ").concat(n.next?"":"disabled"),onClick:function(){return v("next")},style:{display:"inline-block"}},a.createElement(i.x,{phrase:"next"})))):a.createElement(i.D.Provider,{value:"shared.pagination"},a.createElement("div",{className:u},a.createElement(r.Z,{variant:d,className:"me-1 ".concat(n.previous?"":"disabled"),onClick:function(){return v("previous")}},a.createElement(i.x,{phrase:"previous"})),a.createElement(r.Z,{variant:d,className:"btn ".concat(n.next?"":"disabled"),onClick:function(){return v("next")}},a.createElement(i.x,{phrase:"next"}))))}u.defaultProps={className:"py-2",buttonVariant:"secondary"}},16930:(e,t,n)=>{n.d(t,{W:()=>i,f:()=>s});var a=n(32735),r=n(83914),c=n(35223);const l="VSAPU",o="kgeXh";var s;!function(e){e[e.Left=0]="Left",e[e.Right=1]="Right"}(s||(s={}));var i=a.memo((function(e){var t,n,i,m=e.direction===s.Left,u=m?c.vn.ChevronLeft:c.vn.ChevronRight;return e.hide?a.createElement(a.Fragment,null):a.createElement("div",{className:"_ejId",style:"videos"===(null===(n=e.state)||void 0===n?void 0:n.contents)?{paddingBottom:56.25/(null===(i=e.state)||void 0===i?void 0:i.viewableItems)+"%"}:{height:"100%"}},e.useGradientBackdrop&&a.createElement("div",{className:m?"".concat("Pt3nx"," ").concat(e.leftGradientClassName):"".concat("ZuAif"," ").concat(e.rightGradientClassName)}),!e.hideExtendedClickableArea&&a.createElement("div",{role:"button",onClick:e.onClick,className:"".concat("AtsWP"," ").concat(m?l:o)}),a.createElement("div",{role:"button",className:"".concat((t="BVcIS",t+=m?" ".concat(l," ").concat(e.leftButtonClassName):" ".concat(o," ").concat(e.rightButtonClassName))," ").concat("gAsE9"," ").concat(e.className||""),onClick:e.onClick},e.hoverText&&a.createElement("span",{className:"ps-3 pe-2 ".concat("APA36")},e.hoverText),a.createElement(r.x,{svgName:u,size:r.S.Medium,className:"svg-container d-inline-block ".concat("Ev4hr")})))}))},14177:(e,t,n)=>{n.d(t,{$:()=>S});var a=n(32735),r=n(70680),c=n(81886),l=n(20354),o=n(79447),s=n(83914),i=n(83345),m=n(4594),u=n(76881),d=n(35223),p="userManager.wizardInProgress";function f(e){var t=Math.floor(e.totalItemsComplete/e.totalItems*100)||0;return a.createElement("div",null,a.createElement("div",{className:"d-flex align-items-center mb-2"},a.createElement("h2",{className:"h5 mb-0"},a.createElement(i.x,{namespace:p,phrase:"heading",options:{percentage:t,actionName:e.actionName}})),a.createElement(s.x,{svgName:d.vn.CircleCheck})),a.createElement("p",null,a.createElement(i.x,{namespace:p,phrase:"info".concat(e.actionVerb)})),a.createElement("p",{className:"mb-1"},a.createElement("span",{className:"text-info"},e.progressVerbPhrase?a.createElement("span",null,e.progressVerbPhrase):a.createElement(i.x,{namespace:p,phrase:"progressVerb".concat(e.actionVerb)}))," ",e.objectType===m.E.User&&e.userType?a.createElement(i.x,{namespace:p,phrase:e.userType===u.Y.Learner?"progressStudents":"progressStaff",options:{totalComplete:e.totalItemsComplete,total:e.totalItems,smartCount:e.totalItems}}):e.objectType===m.E.Video?a.createElement(i.x,{namespace:p,phrase:"progressVideos",options:{totalComplete:e.totalItemsComplete,total:e.totalItems,smartCount:e.totalItems}}):a.createElement(i.x,{namespace:p,phrase:"progressItems",options:{totalComplete:e.totalItemsComplete,total:e.totalItems,smartCount:e.totalItems}})),a.createElement(o.Z,{variant:"info",now:t}))}var g="userManager.wizardSubmitted";function v(e){return a.createElement("div",null,a.createElement("div",{className:"d-flex align-items-center mb-2"},a.createElement("h2",{className:"h5 mb-0"},e.actionName?a.createElement(i.x,{namespace:g,phrase:"heading",options:{actionName:e.actionName}}):a.createElement(i.x,{namespace:g,phrase:"headingGeneric"})),a.createElement(s.x,{svgName:d.vn.CircleCheck})),a.createElement("p",null,a.createElement(i.x,{namespace:g,phrase:"info".concat(e.actionVerb)})),a.createElement("p",{className:"mb-1 text-info"},a.createElement(i.x,{namespace:g,phrase:"preparing"})),a.createElement(o.Z,{variant:"info",now:0}))}var b=n(58739),E=n(94644),h=n(89476);function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return N(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?N(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var x=2e3,C=3;function S(e){var t=y(a.useState(null),2),n=t[0],o=t[1],s=y(a.useState(0),2),i=s[0],m=s[1],u=a.useRef(),d=(0,h.f)(),p=(0,r.I0)();function g(){e.pollJob(N,S)}function N(t){o(t),t.status===b.K.Completed||t.status===b.K.CompletedWithError||t.status===b.K.Failed?window.setTimeout((function(){!function(){var t;e.navLockId&&d.unlock(e.navLockId);var n={jobId:e.jobId};e.userType&&(n.userType=e.userType,p({type:l.a.Actions.INVALIDATE,keys:["school:users","user:count","search:aggregation","search:users"],request:null})),e.statusCompleteAppLink?c.Q.C$.trigger(Object.assign(Object.assign({},e.statusCompleteAppLink),{params:n})):null===(t=e.onStatusCompleted)||void 0===t||t.call(e)}()}),2e3):u.current=window.setTimeout(g,x)}function S(t){i===C&&(window.clearTimeout(u.current),e.navLockId&&d.unlock(e.navLockId),(0,E.r)(t)),m((function(e){return e+1})),u.current=window.setTimeout(g,x)}return a.useEffect((function(){return g(),function(){u.current&&window.clearTimeout(u.current)}}),[]),n&&n.status!==b.K.Submitted&&n.status!==b.K.Queued&&n.status!==b.K.Pending&&0!==n.totalItems?a.createElement(f,{totalItems:n.totalItems,totalItemsComplete:n.processedItems,userType:e.userType,objectType:e.objectType,actionName:e.actionName,actionVerb:e.actionVerb,progressVerbPhrase:e.progressVerbPhrase}):a.createElement(v,{actionName:e.actionName,actionVerb:e.actionVerb})}},81514:(e,t,n)=>{n.d(t,{V:()=>c});var a=n(86764),r=n(3747);function c(){var e=(0,r.a)(a.r.XS),t=(0,r.a)(a.r.SM),n=(0,r.a)(a.r.MD),c=(0,r.a)(a.r.LG),l=(0,r.a)(a.r.XL),o=(0,r.a)(a.r.XXL),s=a.r.LG;return e&&(s=a.r.XS),t&&(s=a.r.SM),n&&(s=a.r.MD),c&&(s=a.r.LG),l&&(s=a.r.XL),o&&(s=a.r.XXL),s}},299:(e,t,n)=>{n.d(t,{X:()=>l});var a=n(32735),r=n(69217),c=n(94631),l=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.idField,l=void 0===n?"id":n,o=t.persistNamespace,s=t.initialState?t.initialState:new Map,i=a.useRef(s),m=(0,r.N)(),u=(0,c.D)(e),d=(0,c.D)(o);function p(){i.current.clear(),m()}function f(e){return"number"==typeof e?e=e.toString():"string"!=typeof e&&(e=e[l].toString()),i.current.get(e)}function g(){return!!(null==e?void 0:e.length)&&e.every(f)}function v(e){e.forEach((function(e){i.current.set(e,!0)})),m()}return a.useEffect((function(){t.initialState||o&&d===o||(null==u?void 0:u.map((function(e){return e[l]})).join())!==(null==e?void 0:e.map((function(e){return e[l]})).join())&&p()}),[u,d,e,t.initialState]),a.useEffect((function(){var e;(null===(e=t.preselectedIds)||void 0===e?void 0:e.length)&&v(t.preselectedIds)}),[]),{onToggleBulk:function(){var t=!g();e.forEach((function(e){t?i.current.set(e[l].toString(),!0):i.current.delete(e[l].toString())})),m()},onToggleItem:function(e){var t=!i.current.get(e.toString());t?i.current.set(e.toString(),t):i.current.delete(e.toString()),m()},getSelected:function(){return Array.from(i.current.keys())},isChecked:f,bulkChecked:g(),deselectAll:function(){(null==e?void 0:e.length)&&(e.forEach((function(e){i.current.delete(e[l].toString())})),m())},hasSomeSelections:function(){return!!(null==e?void 0:e.length)&&!!e.find((function(e){return f(e)}))},setSelected:v,getSelectedCount:function(){return i.current.size},reset:p,getMap:function(){return i.current}}}},94631:(e,t,n)=>{n.d(t,{D:()=>r});var a=n(32735);function r(e){var t=a.useRef();return a.useEffect((function(){t.current=e})),t.current}},10373:(e,t,n)=>{n.r(t),n.d(t,{RosteringSyncListView:()=>Ve});var a=n(32735),r=n(70680),c=n(23481),l=n(20354),o=n(75097),s=n(49935);const i={partialHeading:"MwUCZ",partialJobCount:"MUELm",partialCheckbox:"dShe9",partialExportButton:"VL4Tq",row:"z_hGc",checkboxColumn:"IacDe",actionColumn:"_JoZe",usersColumn:"BtHPO",dateColumn:"jpr0N",performedByColumn:"XP4Lf",seeMoreColumn:"A8_Nf",heading:"uThGf",action:"PFOGb",users:"pXZx8",date:"VWS_a",performedBy:"vZeC9"};function m(){return a.createElement("div",{className:"d-flex striped-row rounded py-3 ".concat(i.row)},a.createElement("div",{className:"".concat(i.checkboxColumn," d-flex justify-content-center")},a.createElement("div",{className:"partial-loading-background ".concat(i.partialCheckbox," ms-0")})),a.createElement("div",{className:"".concat(i.actionColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.action)})),a.createElement("div",{className:"".concat(i.usersColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.users)})),a.createElement("div",{className:"".concat(i.dateColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.date)})),a.createElement("div",{className:"".concat(i.performedByColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.performedBy)})),a.createElement("div",{className:"".concat(i.seeMoreColumn)}," "))}function u(){return a.createElement("div",{className:"d-flex py-2 mb-1"},a.createElement("div",{className:"".concat(i.checkboxColumn)}," "),a.createElement("div",{className:"".concat(i.actionColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.usersColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.dateColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.performedByColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.seeMoreColumn)}," "))}function d(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"mb-3 mt-n1"},a.createElement(u,null),a.createElement("div",{className:"striped-list no-full-width"},a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null))))}function p(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"partial-loading-background mb-2 ".concat(i.partialHeading)}),a.createElement("div",{className:"pb-3"},a.createElement("div",{className:"d-flex justify-content-between"},a.createElement(s.b2,null),a.createElement("div",{className:"partial-loading-background ".concat(i.partialJobCount)}))),a.createElement("div",{className:"d-flex align-items-center pb-2"},a.createElement("div",{className:"partial-loading-background ".concat(i.partialCheckbox)}),a.createElement("div",{className:"ms-4 ps-3"},a.createElement(o.U,{count:3})),a.createElement("div",{className:"ms-auto partial-loading-background ".concat(i.partialExportButton)})),a.createElement(d,null))}var f=n(31647),g=n(110),v=n(58739);const b={complete:"nAOdH",failed:"xkFpC",inProgress:"BjR3y",scheduled:"Ux2b9"};var E=c.T.encloseNamespace("rostering.syncJobsStatusBadge");function h(e){return a.createElement("div",{className:function(){var t="rounded-pill px-2 d-inline-flex align-items-center fw-semibold";switch(e.status){case v.K.Completed:case v.K.CompletedWithError:return"".concat(t," ").concat(b.complete);case v.K.Failed:return"".concat(t," ").concat(b.failed);case v.K.InProgress:case v.K.Pending:case v.K.Queued:case v.K.Submitted:return"".concat(t," ").concat(b.inProgress);case"scheduled":return"".concat(t," ").concat(b.scheduled)}}()},function(){switch(e.status){case v.K.Completed:case v.K.CompletedWithError:return E("complete");case v.K.Failed:return E("failed");case v.K.InProgress:case v.K.Pending:case v.K.Queued:case v.K.Submitted:return E("inProgress");case"scheduled":return E("scheduled")}}())}var y=n(83914),N=n(35223);const x={colored:"MLlUi",avatar:"Z1jn_",logoWrapper:"OAeff",cog:"I7V_R",checkboxPlaceholder:"LTmrp",source:"zYMOT",date:"mnJQP",status:"Pm1Aa",performedBy:"oy6Vm",placeholder:"o0RDO"};var C=c.T.encloseNamespace("rostering.scheduledSyncJobItem");function S(e){return a.createElement("div",{className:x.colored},a.createElement("div",{className:"px-4 py-3 d-flex align-items-center"},a.createElement("div",{className:x.checkboxPlaceholder}),a.createElement("div",{className:"".concat(x.source," px-2")}),a.createElement("div",{className:"".concat(x.date," px-2")},g.O.format(e.scheduledDate,"DD/MM/YYYY, hh:mmA")),a.createElement("div",{className:"".concat(x.status," px-2")},a.createElement(h,{status:"scheduled"})),a.createElement("div",{className:"".concat(x.performedBy," px-2 d-flex align-items-center")},a.createElement("div",{className:"".concat(x.cog," me-2 rounded-circle text-white bg-dark d-flex align-items-center justify-content-center")},a.createElement(y.x,{svgName:N.vn.Cog,className:"svg-container"})),C("performedBy")),a.createElement("div",{className:"cursor-pointer d-flex justify-content-end ".concat(x.placeholder)})))}var k=n(65654),I=n(56050),j=n(97514),w=n(20789),P={getCellStyle:function(e){return{width:e,flex:"".concat(e," 0 auto")}}},T=n(89965);const A={colored:"aU1VO",seeMore:"Nfc8Q"};function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var O=c.T.encloseNamespace("shared.bulkJobsAccordionItem");function J(e){var t,n,r=(t=a.useState(!!e.forceExpand&&e.forceExpand(e.job)),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(t,n)||function(e,t){if(e){if("string"==typeof e)return L(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?L(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=r[0],l=r[1],o=!!e.disableExpand&&e.disableExpand(e.job);return a.createElement("div",{className:"".concat(A.colored," ").concat(o?"":"cursor-pointer"),onClick:function(){o||l((function(e){return!e}))}},a.createElement("div",{className:"px-4 py-3 d-flex align-items-center"},a.createElement("div",{style:P.getCellStyle(60),onClick:function(e){return e.stopPropagation()}},a.createElement(T.X,{id:e.job.id,checked:e.isChecked(e.job.id),onChange:function(){return e.onToggleCheckbox(e.job.id)}})),e.columns.map((function(t){var n=t.render,r=t.renderClassName,c=t.width,l=t.id;return a.createElement("div",{className:"".concat(null!=r?r:""),key:l,style:P.getCellStyle(c)},n(e.job))})),a.createElement("div",{className:"d-flex justify-content-end ".concat(o?"":"cursor-pointer"),style:P.getCellStyle(200)},!o&&a.createElement("div",{className:"".concat(A.seeMore," text-info")},O(c?"seeLess":"seeMore")))),c&&a.createElement("div",{className:"bg-white border-bottom cursor-default",onClick:function(e){return e.stopPropagation()}},e.jobDetailsComponent(e.job)))}var K=n(93251);function B(e){return a.createElement(K.J,{queryParams:e.queryParams,mainFilters:e.filters,appLink:e.appLink,analyticsOptions:e.analyticsOptions,hideHeading:!0,hideDivider:!0,constantIndices:[]})}var R=n(37395),V=n(2102),M=n(83345),F=n(69883),D=n(299),U=n(75795);const G={bulkCheckbox:"XeoQi"};function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var Z="shared.bulkJobsAccordions",q=c.T.encloseNamespace(Z);function X(e){var t,n,r,c=(n=a.useState(!1),r=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(n,r)||function(e,t){if(e){if("string"==typeof e)return H(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?H(e,t):void 0}}(n,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=c[0],o=c[1],s=(0,D.X)(e.jobs.data),i=(0,F.Z)();return a.createElement("div",{className:"".concat(G.container," pe-3")},a.createElement("div",{className:"d-flex align-items-center pb-2 mt-3"},a.createElement(T.X,{className:G.bulkCheckbox,id:"bulk-audit-log-checkbox",checked:s.bulkChecked,onChange:s.onToggleBulk,indeterminate:s.hasSomeSelections()}),a.createElement("div",{className:"ms-4"},a.createElement(B,{queryParams:e.queryParams,appLink:e.appLink,filters:e.filters})),a.createElement(V.m,{variant:"dark",className:"ms-auto",onClick:function(){if(!l){o(!0);var t=s.getSelected();e.onClickExport(t).then((function(){return i.success(q("exportSuccess"))})).catch((function(){return i.error(q("exportError"))})).finally((function(){return o(!1)}))}},disabled:!s.hasSomeSelections()||l,showSpinner:l},a.createElement(M.x,{namespace:Z,phrase:"export"}))),a.createElement("div",{className:"d-flex no-wrap mb-2 fw-semibold px-4 py-2"},a.createElement("div",{style:P.getCellStyle(60)}),e.columns.map((function(e){var t=e.id,n=e.header,r=e.headerClassName,c=e.width;return a.createElement("div",{key:t,className:r,style:P.getCellStyle(c)},n)})),a.createElement("div",{style:P.getCellStyle(200)})),!!e.pinnedComponent&&e.pinnedComponent(),!!e.jobs.data.length&&e.jobs.data.map((function(t){return a.createElement(J,{key:t.id,job:t,onToggleCheckbox:s.onToggleItem,isChecked:s.isChecked,jobDetailsComponent:e.jobDetailsComponent,onClickExport:e.onClickExport,imageCdnUrl:e.imageCdnUrl,onPollJob:e.onPollJob,columns:e.columns,forceExpand:e.forceExpand,disableExpand:e.disableExpand})})),!!(null===(t=e.jobs.pagination)||void 0===t?void 0:t.cursors)&&a.createElement(R.t,{className:"p-0 text-end pb-3 mt-3",cursors:e.jobs.pagination.cursors,appLink:U.O.getCurrentRoute().appLink,buttonVariant:"outline-dark"}))}var _=n(89725),W=n(10874),$=n(80247),Y=n(14177);function Q(e){return e.jobId?a.createElement("div",null,a.createElement("div",{className:"mb-4"},a.createElement(Y.$,{jobId:e.jobId,pollJob:e.onPollJob(e.jobId),onStatusCompleted:e.onCompleted,actionName:"Sync",actionVerb:"Update",progressVerbPhrase:c.T.getPhrase("rostering.syncJobPolling","progressVerb")}))):a.createElement("div",{className:"text-center"},a.createElement($.Z,{as:"div",animation:"border",role:"status"}))}const z={failed:"BSIaY",tag:"NOJhh"};function ee(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return te(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?te(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var ne="rostering.syncJobSummary";function ae(e){var t=ee(a.useState(null),2),n=t[0],r=t[1],c=ee(a.useState(!1),2),l=c[0],o=c[1];function s(e){var t="",r="";switch(e){case"staff":t="bg-navy",r=N.vn.Staff;break;case"learners":t="bg-blue",r=N.vn.GraduationCap;break;case"classrooms":t="bg-teal",r=N.vn.Classrooms}var c=Object.keys(n[e]).filter((function(e){return"totalProcessed"!==e&&"totalSucceeded"!==e}));return a.createElement("div",{className:"col"},a.createElement("div",{className:"py-3 ps-2 pe-3 rounded border border-light"},a.createElement("div",{className:"d-flex align-items-center px-2 mb-2"},a.createElement("div",{className:"".concat(t," ").concat(z.badge," d-flex align-items-center rounded-circle text-white ps-0 me-2")},a.createElement(y.x,{className:"svg-container ".concat(z.svg),size:y.S.Standard,svgName:r})),a.createElement(M.x,{namespace:ne,phrase:e})),a.createElement("ul",{className:"mb-0"},null==c?void 0:c.map((function(t){return a.createElement("li",{className:"mb-2",key:t},a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"rounded-pill me-2 px-2 d-inline-flex align-items-center fw-semibold ".concat("errored"===t?z.failed:z.tag)},n[e][t]),a.createElement(M.x,{namespace:ne,phrase:t})))})))))}return a.useEffect((function(){n||(o(!0),e.getJobSummary(e.job.id).then((function(e){r(e)})).finally((function(){o(!1)})))}),[e.job.id]),a.createElement(a.Fragment,null,l&&!n&&a.createElement("div",{className:"text-center py-3"},a.createElement($.Z,{as:"div",animation:"border",role:"status"})),!!n&&a.createElement("div",{className:"row gx-3 mt-2"},s("staff"),s("learners"),s("classrooms")))}var re=c.T.encloseNamespace("rostering.syncJobDetails");function ce(e){var t=e.job.status===v.K.Completed||e.job.status===v.K.CompletedWithError,n=(0,F.Z)();return a.createElement("div",{className:"py-3 px-4"},a.createElement("div",{className:"d-flex justify-content-between"},e.job.status!==v.K.InProgress&&a.createElement("h1",{className:"h4"},re("heading")),t&&a.createElement(W.h,{className:"btn btn-outline-dark fw-semibold",svgName:N.vn.Download,onClick:function(){e.onClickExport([e.job.id]).then((function(){n.success(re("exportSuccess"))})).catch((function(){n.error(re("exportError"))}))}},re("export"))),function(){switch(e.job.status){case v.K.InProgress:case v.K.Pending:case v.K.Queued:case v.K.Submitted:return a.createElement(Q,{jobId:e.job.id,onCompleted:e.onCompleted,onPollJob:e.onPollJob});case v.K.Failed:return a.createElement(a.Fragment,null);case v.K.Completed:case v.K.CompletedWithError:return a.createElement(ae,{job:e.job,getJobSummary:e.getJobSummary});default:return a.createElement(a.Fragment,null)}}())}var le=n(86794),oe=n(76177),se=n(55171),ie=n(64818);const me={avatar:"B8miR",logoWrapper:"higtD",cog:"bNPxa"};var ue="rostering.syncJobsAccordion",de=c.T.encloseNamespace(ue),pe=[v.K.InProgress,v.K.Pending,v.K.Queued,v.K.Submitted];function fe(e){var t=[j.x$.SortBy([{id:"newest",name:c.T.getPhrase(ue,"newest"),default:!0},{id:"oldest",name:c.T.getPhrase(ue,"oldest")}]),j.x$.JobStatus()],n=[{id:"id",header:de("syncFrom"),headerClassName:"px-2 py-1",renderClassName:"px-2",render:function(e){var t,n=null===(t=e.metadata)||void 0===t?void 0:t.source;if(!n)return a.createElement(a.Fragment,null);var r=se.e.Rostering.sources[n];if(!r)throw new I.H("Unsupported rostering sync source, please add it to HardCoded rostering source");return a.createElement("div",{className:"bg-white rounded-circle border ".concat(me.logoWrapper," d-flex align-items-center justify-content-center")},a.createElement(oe.u,{spanHack:!0,title:r.name},a.createElement("img",{src:r.iconUrl,alt:r.name})))},width:120},{id:"dateCreated",header:de("date"),headerClassName:"px-2 py-1",renderClassName:"px-2",render:function(e){return g.O.format(e.dateCreated,"DD/MM/YYYY, hh:mmA")},width:220},{id:"status",header:de("status"),headerClassName:"px-2 py-1",renderClassName:"px-2",render:function(e){return a.createElement(h,{status:e.status})},width:200},{id:"submitterName",header:de("performedBy"),headerClassName:"px-2",renderClassName:"px-2",render:function(t){return function(e,t){return e.submittedByClickView?a.createElement("div",{className:"d-flex align-items-center"},a.createElement(le.b,{className:"me-2 rounded-circle border",size:y.S.Large},a.createElement(_.F,null)),e.submitterName):e.submitterName?a.createElement("div",{className:"d-flex align-items-center"},a.createElement("div",{className:"me-2 ".concat(me.avatar)},a.createElement(w.q,{imageCdnUrl:t.imageCdnUrl,initials:ie.l.getInitials(e.submitterName.split(" ")[0],e.submitterName.split(" ")[1])})),e.submitterName):a.createElement("div",{className:"me-2 d-flex align-items-center"},a.createElement("div",{className:"".concat(me.cog," me-2 rounded-circle text-white bg-dark d-flex align-items-center justify-content-center")},a.createElement(y.x,{svgName:N.vn.Cog,className:"svg-container"})),de("scheduledSubmitter"))}(t,e)},width:200}];return a.createElement(X,Object.assign({},e,{filters:t,jobDetailsComponent:function(t){return a.createElement(ce,{job:t,getJobSummary:e.getJobSummary,onPollJob:e.onPollJob,onClickExport:e.onClickExport,onCompleted:e.onCompleted})},columns:n,forceExpand:function(e){return pe.includes(e.status)},disableExpand:function(e){return e.status===v.K.Failed}}))}var ge=n(62394),ve=n(16714),be=n(39151),Ee=n(44538),he=n(31949),ye=n(79612),Ne=n(14070),xe=n(97291),Ce=n(29613),Se=n(44230),ke=n(81803),Ie=n(23232),je=n(99742),we="rostering.districtRosterEmptyState";function Pe(){return a.createElement(Ie.u,null,a.createElement(Ie.u.Image,{src:je.W.EmptyStates.Rostering.DISTRICT_ROSTERING}),a.createElement(Ie.u.Heading,null,a.createElement(M.x,{namespace:we,phrase:"emptyHeading"})),a.createElement(Ie.u.Info,{className:"w-50 mb-2"},a.createElement(M.x,{namespace:we,phrase:"emptyInfo"})),a.createElement(Ie.u.Info,{className:"w-50 mb-1 fw-semibold"},a.createElement(M.x,{namespace:we,phrase:"strongInfo"})))}var Te="rostering.noResults";function Ae(){return a.createElement(Ie.u,null,a.createElement(Ie.u.Image,{src:je.W.EmptyStates.Rostering.EMPTY_RESULTS}),a.createElement(Ie.u.Heading,null,a.createElement(M.x,{namespace:Te,phrase:"emptyHeading"})),a.createElement(Ie.u.Info,{className:"w-50 mb-1"},a.createElement(M.x,{namespace:Te,phrase:"emptyInfo"})))}var Le="rostering.noSyncJobs",Oe=c.T.encloseNamespace(Le);function Je(e){return a.createElement(Ie.u,null,a.createElement(Ie.u.Image,{src:je.W.EmptyStates.Rostering.NO_SYNC_JOBS}),a.createElement(Ie.u.Heading,null,a.createElement(M.x,{namespace:Le,phrase:"emptyHeading"})),a.createElement(Ie.u.Info,{className:"w-50 mb-3"},a.createElement(M.x,{namespace:Le,phrase:"emptyInfo"})),a.createElement(Ie.u.Cta,{className:"btn btn-dark",onClick:e.onStartFullSync,text:Oe("emptyCta")}))}var Ke=n(52834),Be=n(56736),Re=c.T.encloseNamespace("rostering.syncList");function Ve(e){var t,n=l.a.useBasicFetch(Ee.K.getSyncList(e.queryParams)),c=l.a.useBasicFetch(be.L.config()),o=l.a.useBasicFetch(he.N.currentUser()),s=l.a.useBasicFetch(Ee.K.getRostering()),i=l.a.useBasicFetch(o.data&&s.data&&Ee.K.getSyncScheduleSettings(s.data.id)),m=n.hasCompleted&&c.hasCompleted&&i.hasCompleted&&s.hasCompleted,u=l.a.useGetFetchAsync(),d=(0,r.I0)();function g(e){return u(Ee.K.getJobSummary(e))}function v(e){return function(t,n){return u(Ce.q.getJobProgress(e,t,n))}}function b(){d({type:l.a.Actions.INVALIDATE,keys:["rostering:sync"],request:null})}function E(e){return u(Ce.q.sendJobReports(e))}(0,ye.M)({title:Re("pageTitle")}),a.useEffect((function(){return function(){Se.e.unlockContentWidth()}}),[]);var h=m&&"Active"===(null===(t=s.data)||void 0===t?void 0:t.status),y=(0,Be.B)(o.data),N=y.syncNow,x=y.fullSync;return a.createElement(ke.d,{heading:Re("heading"),breadcrumbs:[Re("breadcrumb")],headingButton:function(){return h?a.createElement(k.G,{onSyncNow:N,onFullSync:x}):a.createElement(a.Fragment,null)},requiredPermissions:ve.C.Rostering},h&&a.createElement(f.E,{active:"syncJobs",appLinks:{syncJobs:{application:xe.O.SETTINGS,action:Ne.e.Settings.ROSTERING},settings:{application:xe.O.SETTINGS,action:Ne.e.Settings.ROSTERING_SETTINGS}}}),function(){var t,r;if("Managed"===(null===(t=s.data)||void 0===t?void 0:t.status))return a.createElement(Pe,null);if("None"===(null===(r=s.data)||void 0===r?void 0:r.status))return a.createElement(Ke.y,null);if(!m)return a.createElement(p,null);if(!n.data.data.length&&!e.queryParams)return a.createElement(Je,{onStartFullSync:N});var l=ge.y.getScheduledJobBySetting(i.data);return a.createElement(a.Fragment,null,a.createElement(fe,{jobs:n.data,queryParams:e.queryParams,appLink:{application:xe.O.SETTINGS,action:Ne.e.Settings.ROSTERING},onClickExport:E,getJobSummary:g,imageCdnUrl:c.data.imageCdnUrl,onPollJob:v,onCompleted:b,pinnedComponent:l?function(){return a.createElement(S,{scheduledDate:l})}:null}),!n.data.data.length&&e.queryParams&&a.createElement(Ae,null))}())}},79447:(e,t,n)=>{n.d(t,{Z:()=>p});var a=n(95685),r=n.n(a),c=n(32735),l=n(46304),o=n(58661),s=n(74512);const i=1e3;function m(e,t,n){const a=(e-t)/(n-t)*100;return Math.round(a*i)/i}function u({min:e,now:t,max:n,label:a,visuallyHidden:c,striped:l,animated:o,className:i,style:u,variant:d,bsPrefix:p,...f},g){return(0,s.jsx)("div",{ref:g,...f,role:"progressbar",className:r()(i,`${p}-bar`,{[`bg-${d}`]:d,[`${p}-bar-animated`]:o,[`${p}-bar-striped`]:o||l}),style:{width:`${m(t,e,n)}%`,...u},"aria-valuenow":t,"aria-valuemin":e,"aria-valuemax":n,children:c?(0,s.jsx)("span",{className:"visually-hidden",children:a}):a})}const d=c.forwardRef((({isChild:e=!1,...t},n)=>{const a={min:0,max:100,animated:!1,visuallyHidden:!1,striped:!1,...t};if(a.bsPrefix=(0,l.vE)(a.bsPrefix,"progress"),e)return u(a,n);const{min:i,now:m,max:d,label:p,visuallyHidden:f,striped:g,animated:v,bsPrefix:b,variant:E,className:h,children:y,...N}=a;return(0,s.jsx)("div",{ref:n,...N,className:r()(h,b),children:y?(0,o.UI)(y,(e=>(0,c.cloneElement)(e,{isChild:!0}))):u({min:i,now:m,max:d,label:p,visuallyHidden:f,striped:g,animated:v,bsPrefix:b,variant:E},n)})}));d.displayName="ProgressBar";const p=d}}]);
2
- //# sourceMappingURL=7987-1f9189c4c1-lite.chunk.js.map
2
+ //# sourceMappingURL=7987-db0037709c-lite.chunk.js.map