@clickview/reports 0.69.1-dev.0 → 0.70.0-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 (418) hide show
  1. package/dist/bundles.json +3 -2
  2. package/dist/css/1103-reports-d3d5cc00db.chunk.css +31 -0
  3. package/dist/css/1456-reports-4a5871a275.chunk.css +9 -0
  4. package/dist/css/1648-reports-012456ba48.chunk.css +2 -0
  5. package/dist/css/209-reports-c33663a53e.chunk.css +11 -0
  6. package/dist/css/2150-reports-84ec0e9770.chunk.css +4 -0
  7. package/dist/css/2217-reports-74dec0a3fe.chunk.css +32 -0
  8. package/dist/css/2997-reports-e08318f14b.chunk.css +9 -0
  9. package/dist/css/2999-reports-f190450b10.chunk.css +60 -0
  10. package/dist/css/4582-reports-d3d5cc00db.chunk.css +31 -0
  11. package/dist/css/5304-reports-22c2d8d635.chunk.css +9 -0
  12. package/dist/css/6007-reports-5ba77c55a3.chunk.css +8 -0
  13. package/dist/css/6031-reports-d558076846.chunk.css +6 -0
  14. package/dist/css/6356-reports-8c5b220bf6.chunk.css +1 -0
  15. package/dist/css/6811-reports-baf2e97e71.chunk.css +35 -0
  16. package/dist/css/7723-reports-8c6d3c414b.chunk.css +4 -0
  17. package/dist/css/7747-reports-2d9e191b5a.chunk.css +12 -0
  18. package/dist/css/8087-reports-cfe23ba648.chunk.css +10 -0
  19. package/dist/css/8294-reports-c797263ac2.chunk.css +1 -0
  20. package/dist/css/8418-reports-0ada3f3ce2.chunk.css +29 -0
  21. package/dist/css/8450-reports-06493dfde5.chunk.css +9 -0
  22. package/dist/css/8622-reports-9e8970cc7f.chunk.css +8 -0
  23. package/dist/css/8839-reports-8e46644943.chunk.css +1 -0
  24. package/dist/css/8989-reports-92b4f1dde8.chunk.css +8 -0
  25. package/dist/css/9059-reports-a2ac630ebc.chunk.css +35 -0
  26. package/dist/css/9285-reports-5b9af8380f.chunk.css +13 -0
  27. package/dist/css/9661-reports-7435e94a85.chunk.css +4 -0
  28. package/dist/css/9822-reports-a1db1900c7.chunk.css +8 -0
  29. package/dist/css/9949-reports-f22fa2b407.chunk.css +15 -0
  30. package/dist/css/reports-app-b4c4ec5632.css +32 -0
  31. package/dist/languages/en.json +1 -0
  32. package/dist/scripts/1103-d77d388f5b-reports.chunk.js +1 -0
  33. package/dist/scripts/1177-7cf7817e74-reports.chunk.js +1 -0
  34. package/dist/scripts/1456-019d93e620-reports.chunk.js +1 -0
  35. package/dist/scripts/1648-e892604f5a-reports.chunk.js +1 -0
  36. package/dist/scripts/1934-ca8497c768-reports.chunk.js +2 -0
  37. package/dist/scripts/1934-ca8497c768-reports.chunk.js.LICENSE.txt +9 -0
  38. package/dist/scripts/2087-e0ef668e1f-reports.chunk.js +1 -0
  39. package/dist/scripts/209-79eb8be706-reports.chunk.js +1 -0
  40. package/dist/scripts/2150-4e9e1fb433-reports.chunk.js +1 -0
  41. package/dist/scripts/2217-15fa35197a-reports.chunk.js +1 -0
  42. package/dist/scripts/2476-a700f69dc4-reports.chunk.js +1 -0
  43. package/dist/scripts/2539-04dfb4f4f1-reports.chunk.js +1 -0
  44. package/dist/scripts/2997-62d81c3442-reports.chunk.js +1 -0
  45. package/dist/scripts/2999-c1890ca868-reports.chunk.js +2 -0
  46. package/dist/scripts/2999-c1890ca868-reports.chunk.js.LICENSE.txt +1 -0
  47. package/dist/scripts/312-8b006e92ff-reports.chunk.js +1 -0
  48. package/dist/scripts/4234-e3c04f41eb-reports.chunk.js +1 -0
  49. package/dist/scripts/4372-26474a3318-reports.chunk.js +1 -0
  50. package/dist/scripts/438-b444dfb8c6-reports.chunk.js +1 -0
  51. package/dist/scripts/4582-230f130f41-reports.chunk.js +1 -0
  52. package/dist/scripts/4752-db4247883d-reports.chunk.js +2 -0
  53. package/dist/scripts/4752-db4247883d-reports.chunk.js.LICENSE.txt +118 -0
  54. package/dist/scripts/4979-7e14b09f33-reports.chunk.js +1 -0
  55. package/dist/scripts/5051-72c53737e2-reports.chunk.js +1 -0
  56. package/dist/scripts/5091-ddd6f61b55-reports.chunk.js +1 -0
  57. package/dist/scripts/5173-cce3b37672-reports.chunk.js +1 -0
  58. package/dist/scripts/5177-a7372e7b8d-reports.chunk.js +1 -0
  59. package/dist/scripts/5304-d5674b32b4-reports.chunk.js +1 -0
  60. package/dist/scripts/5802-2125536755-reports.chunk.js +1 -0
  61. package/dist/scripts/6007-673706aa31-reports.chunk.js +1 -0
  62. package/dist/scripts/6031-b1c60cc409-reports.chunk.js +1 -0
  63. package/dist/scripts/6081-2bbda6cac3-reports.chunk.js +1 -0
  64. package/dist/scripts/6180-bdb237ffbe-reports.chunk.js +2 -0
  65. package/dist/scripts/6180-bdb237ffbe-reports.chunk.js.LICENSE.txt +1 -0
  66. package/dist/scripts/6198-189ddde870-reports.chunk.js +1 -0
  67. package/dist/scripts/6356-a1b313c73e-reports.chunk.js +1 -0
  68. package/dist/scripts/645-e8b19128e5-reports.chunk.js +1 -0
  69. package/dist/scripts/6545-f07bcd318a-reports.chunk.js +1 -0
  70. package/dist/scripts/6811-40ded4c089-reports.chunk.js +1 -0
  71. package/dist/scripts/7238-de5ef0ebfb-reports.chunk.js +1 -0
  72. package/dist/scripts/7562-748e60c3fc-reports.chunk.js +1 -0
  73. package/dist/scripts/7709-82750ee317-reports.chunk.js +1 -0
  74. package/dist/scripts/7723-1799f5aa26-reports.chunk.js +1 -0
  75. package/dist/scripts/7747-d34db3ff10-reports.chunk.js +2 -0
  76. package/dist/scripts/7747-d34db3ff10-reports.chunk.js.LICENSE.txt +1 -0
  77. package/dist/scripts/7925-c6c532c9c4-reports.chunk.js +1 -0
  78. package/dist/scripts/8087-1d9e9701e5-reports.chunk.js +1 -0
  79. package/dist/scripts/8393-c37cc22b4c-reports.chunk.js +1 -0
  80. package/dist/scripts/8418-9f96caf039-reports.chunk.js +1 -0
  81. package/dist/scripts/8450-f2d5d99614-reports.chunk.js +1 -0
  82. package/dist/scripts/8591-4811082ab0-reports.chunk.js +1 -0
  83. package/dist/scripts/8622-ee045574e2-reports.chunk.js +1 -0
  84. package/dist/scripts/8839-711793a97f-reports.chunk.js +1 -0
  85. package/dist/scripts/8989-ca5cab7f45-reports.chunk.js +1 -0
  86. package/dist/scripts/9059-b2dcf3cdb2-reports.chunk.js +1 -0
  87. package/dist/scripts/9162-7ffc692736-reports.chunk.js +1 -0
  88. package/dist/scripts/9285-ecddd01efb-reports.chunk.js +1 -0
  89. package/dist/scripts/9590-41bb23ae71-reports.chunk.js +1 -0
  90. package/dist/scripts/9647-f0c111d3f0-reports.chunk.js +1 -0
  91. package/dist/scripts/9661-2dee4c3417-reports.chunk.js +1 -0
  92. package/dist/scripts/9822-621fac26e6-reports.chunk.js +1 -0
  93. package/dist/scripts/9895-3b3feb12b9-reports.chunk.js +1 -0
  94. package/dist/scripts/9949-6b1d1f4d32-reports.chunk.js +1 -0
  95. package/dist/scripts/bundle-44f8e893eb.min.js +2 -0
  96. package/dist/scripts/bundle-44f8e893eb.min.js.LICENSE.txt +108 -0
  97. package/dist/scripts/polyfills-3db3f009d4.min.js +1 -0
  98. package/package.json +3 -5
  99. package/typings/utils/imports.d.ts +1 -1
  100. package/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  101. package/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  102. package/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  103. package/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  104. package/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  105. package/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  106. package/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  107. package/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  108. package/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  109. package/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  110. package/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  111. package/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  112. package/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  113. package/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  114. package/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  115. package/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  116. package/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  117. package/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  118. package/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  119. package/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  120. package/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  121. package/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  122. package/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  123. package/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  124. package/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  125. package/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  126. package/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  127. package/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  128. package/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  129. package/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  130. package/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  131. package/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  132. package/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  133. package/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  134. package/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  135. package/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  136. package/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  137. package/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  138. package/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  139. package/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  140. package/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  141. package/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  142. package/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  143. package/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  144. package/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  145. package/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  146. package/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  147. package/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  148. package/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  149. package/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  150. package/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  151. package/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  152. package/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  153. package/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  154. package/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  155. package/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  156. package/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  157. package/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  158. package/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  159. package/dist/css/1VpVng8x.chunk.css +0 -1
  160. package/dist/css/BBwBgFf_.chunk.css +0 -1
  161. package/dist/css/BDijM1kt.chunk.css +0 -1
  162. package/dist/css/BMPwvOki.chunk.css +0 -1
  163. package/dist/css/BNt45Kgy.chunk.css +0 -1
  164. package/dist/css/BSGhUWzl.chunk.css +0 -1
  165. package/dist/css/BZ3_uhDP.chunk.css +0 -1
  166. package/dist/css/BaadNO4A.chunk.css +0 -1
  167. package/dist/css/BdUNjJqp.chunk.css +0 -1
  168. package/dist/css/BdeI0FAV.chunk.css +0 -1
  169. package/dist/css/BxcMGr8Y.chunk.css +0 -1
  170. package/dist/css/ByuL_xKJ.chunk.css +0 -1
  171. package/dist/css/C-A0Pj_7.chunk.css +0 -1
  172. package/dist/css/C4jMfPWU.chunk.css +0 -1
  173. package/dist/css/C7XoyEPr.chunk.css +0 -1
  174. package/dist/css/C8sxda3R.chunk.css +0 -1
  175. package/dist/css/CD1qrI1T.chunk.css +0 -1
  176. package/dist/css/CFO--d_R.chunk.css +0 -1
  177. package/dist/css/CX9nw8t8.chunk.css +0 -1
  178. package/dist/css/C_qGRdC2.chunk.css +0 -1
  179. package/dist/css/CdC6ugQR.chunk.css +0 -1
  180. package/dist/css/ClRRGXPb.chunk.css +0 -1
  181. package/dist/css/Cr1bwtZG.chunk.css +0 -1
  182. package/dist/css/DBlPz5Fw.chunk.css +0 -1
  183. package/dist/css/DDnpOnVB.chunk.css +0 -1
  184. package/dist/css/DFZQCLLg.chunk.css +0 -1
  185. package/dist/css/DJwAbl6l.chunk.css +0 -1
  186. package/dist/css/DWjg_0sz.chunk.css +0 -1
  187. package/dist/css/DYV9jjVn.chunk.css +0 -1
  188. package/dist/css/Dgeh4AqU.chunk.css +0 -9
  189. package/dist/css/DlOtoSz0.chunk.css +0 -1
  190. package/dist/css/DlxOgKUu.chunk.css +0 -1
  191. package/dist/css/DwgaDUzz.chunk.css +0 -1
  192. package/dist/css/FPQ_LmXH.chunk.css +0 -1
  193. package/dist/css/H09rC9gw.chunk.css +0 -1
  194. package/dist/css/LAFr2dPT.chunk.css +0 -1
  195. package/dist/css/Pg1TlYG6.chunk.css +0 -1
  196. package/dist/css/PsQn3-kb.chunk.css +0 -1
  197. package/dist/css/alkEuPrr.chunk.css +0 -1
  198. package/dist/css/k4DgCj_g.chunk.css +0 -1
  199. package/dist/en.json +0 -1
  200. package/dist/scripts/-b_h0A4y.chunk.js +0 -2
  201. package/dist/scripts/-b_h0A4y.chunk.js.map +0 -1
  202. package/dist/scripts/0UfVJrf5.chunk.js +0 -2
  203. package/dist/scripts/0UfVJrf5.chunk.js.map +0 -1
  204. package/dist/scripts/2cd-ulth.chunk.js +0 -2
  205. package/dist/scripts/2cd-ulth.chunk.js.map +0 -1
  206. package/dist/scripts/5O9SdVRZ.chunk.js +0 -2
  207. package/dist/scripts/5O9SdVRZ.chunk.js.map +0 -1
  208. package/dist/scripts/72EXv822.chunk.js +0 -2
  209. package/dist/scripts/72EXv822.chunk.js.map +0 -1
  210. package/dist/scripts/8CNwntVY.chunk.js +0 -2
  211. package/dist/scripts/8CNwntVY.chunk.js.map +0 -1
  212. package/dist/scripts/9pagDMWN.chunk.js +0 -2
  213. package/dist/scripts/9pagDMWN.chunk.js.map +0 -1
  214. package/dist/scripts/AKgZQGT0.chunk.js +0 -2
  215. package/dist/scripts/AKgZQGT0.chunk.js.map +0 -1
  216. package/dist/scripts/ASoPpgM4.chunk.js +0 -2
  217. package/dist/scripts/ASoPpgM4.chunk.js.map +0 -1
  218. package/dist/scripts/B0ZIDriY.chunk.js +0 -6
  219. package/dist/scripts/B0ZIDriY.chunk.js.map +0 -1
  220. package/dist/scripts/B3PA8QNB.chunk.js +0 -2
  221. package/dist/scripts/B3PA8QNB.chunk.js.map +0 -1
  222. package/dist/scripts/B6QS1MPy.chunk.js +0 -4
  223. package/dist/scripts/B6QS1MPy.chunk.js.map +0 -1
  224. package/dist/scripts/B9I2jvNY.chunk.js +0 -2
  225. package/dist/scripts/B9I2jvNY.chunk.js.map +0 -1
  226. package/dist/scripts/B9IzwFHp.chunk.js +0 -2
  227. package/dist/scripts/B9IzwFHp.chunk.js.map +0 -1
  228. package/dist/scripts/BBGDjrt-.chunk.js +0 -2
  229. package/dist/scripts/BBGDjrt-.chunk.js.map +0 -1
  230. package/dist/scripts/BHZ8VWq7.chunk.js +0 -2
  231. package/dist/scripts/BHZ8VWq7.chunk.js.map +0 -1
  232. package/dist/scripts/BIIsc-MA.chunk.js +0 -2
  233. package/dist/scripts/BIIsc-MA.chunk.js.map +0 -1
  234. package/dist/scripts/BLEXuU9u.chunk.js +0 -2
  235. package/dist/scripts/BLEXuU9u.chunk.js.map +0 -1
  236. package/dist/scripts/BLIHpHXi.chunk.js +0 -2
  237. package/dist/scripts/BLIHpHXi.chunk.js.map +0 -1
  238. package/dist/scripts/BLSeaGtL.chunk.js +0 -2
  239. package/dist/scripts/BLSeaGtL.chunk.js.map +0 -1
  240. package/dist/scripts/BLuY6AYO.chunk.js +0 -2
  241. package/dist/scripts/BLuY6AYO.chunk.js.map +0 -1
  242. package/dist/scripts/BSe8MmUc.chunk.js +0 -2
  243. package/dist/scripts/BSe8MmUc.chunk.js.map +0 -1
  244. package/dist/scripts/BZf-mjTJ.chunk.js +0 -380
  245. package/dist/scripts/BZf-mjTJ.chunk.js.map +0 -1
  246. package/dist/scripts/BbvzsNLZ.chunk.js +0 -2
  247. package/dist/scripts/BbvzsNLZ.chunk.js.map +0 -1
  248. package/dist/scripts/BdX0pSRt.chunk.js +0 -2
  249. package/dist/scripts/BdX0pSRt.chunk.js.map +0 -1
  250. package/dist/scripts/Bgidb-to.chunk.js +0 -2
  251. package/dist/scripts/Bgidb-to.chunk.js.map +0 -1
  252. package/dist/scripts/BhPjzT2a.chunk.js +0 -2
  253. package/dist/scripts/BhPjzT2a.chunk.js.map +0 -1
  254. package/dist/scripts/BihcsiRl.chunk.js +0 -2
  255. package/dist/scripts/BihcsiRl.chunk.js.map +0 -1
  256. package/dist/scripts/BlUKEHqx.chunk.js +0 -2
  257. package/dist/scripts/BlUKEHqx.chunk.js.map +0 -1
  258. package/dist/scripts/BpWIcknK.chunk.js +0 -2
  259. package/dist/scripts/BpWIcknK.chunk.js.map +0 -1
  260. package/dist/scripts/BqY3bZyH.chunk.js +0 -2
  261. package/dist/scripts/BqY3bZyH.chunk.js.map +0 -1
  262. package/dist/scripts/BrXmRwXi.chunk.js +0 -2
  263. package/dist/scripts/BrXmRwXi.chunk.js.map +0 -1
  264. package/dist/scripts/BsOLqypJ.chunk.js +0 -2
  265. package/dist/scripts/BsOLqypJ.chunk.js.map +0 -1
  266. package/dist/scripts/BvArNs1K.chunk.js +0 -2
  267. package/dist/scripts/BvArNs1K.chunk.js.map +0 -1
  268. package/dist/scripts/BxBPX67V.chunk.js +0 -2
  269. package/dist/scripts/BxBPX67V.chunk.js.map +0 -1
  270. package/dist/scripts/C0Ak1kpS.chunk.js +0 -3
  271. package/dist/scripts/C0Ak1kpS.chunk.js.map +0 -1
  272. package/dist/scripts/C0GFlX65.chunk.js +0 -2
  273. package/dist/scripts/C0GFlX65.chunk.js.map +0 -1
  274. package/dist/scripts/C0nQ0Xnx.chunk.js +0 -6
  275. package/dist/scripts/C0nQ0Xnx.chunk.js.map +0 -1
  276. package/dist/scripts/C6UUJ8P5.chunk.js +0 -2
  277. package/dist/scripts/C6UUJ8P5.chunk.js.map +0 -1
  278. package/dist/scripts/C8oA7_zY.chunk.js +0 -2
  279. package/dist/scripts/C8oA7_zY.chunk.js.map +0 -1
  280. package/dist/scripts/CEy1YX0b.chunk.js +0 -2
  281. package/dist/scripts/CEy1YX0b.chunk.js.map +0 -1
  282. package/dist/scripts/CNfESBlK.chunk.js +0 -2
  283. package/dist/scripts/CNfESBlK.chunk.js.map +0 -1
  284. package/dist/scripts/CNgTzzan.chunk.js +0 -42
  285. package/dist/scripts/CNgTzzan.chunk.js.map +0 -1
  286. package/dist/scripts/CP2i5uhZ.chunk.js +0 -2
  287. package/dist/scripts/CP2i5uhZ.chunk.js.map +0 -1
  288. package/dist/scripts/CSmXZuTZ.chunk.js +0 -2
  289. package/dist/scripts/CSmXZuTZ.chunk.js.map +0 -1
  290. package/dist/scripts/CTMVj7AR.chunk.js +0 -2
  291. package/dist/scripts/CTMVj7AR.chunk.js.map +0 -1
  292. package/dist/scripts/CW7x8M-z.chunk.js +0 -2
  293. package/dist/scripts/CW7x8M-z.chunk.js.map +0 -1
  294. package/dist/scripts/CWEUVMEm.chunk.js +0 -2
  295. package/dist/scripts/CWEUVMEm.chunk.js.map +0 -1
  296. package/dist/scripts/CWViZWyh.chunk.js +0 -34
  297. package/dist/scripts/CWViZWyh.chunk.js.map +0 -1
  298. package/dist/scripts/CX5q-0jT.chunk.js +0 -2
  299. package/dist/scripts/CX5q-0jT.chunk.js.map +0 -1
  300. package/dist/scripts/CbBaa9Aj.chunk.js +0 -2
  301. package/dist/scripts/CbBaa9Aj.chunk.js.map +0 -1
  302. package/dist/scripts/Ce_zROQ3.chunk.js +0 -2
  303. package/dist/scripts/Ce_zROQ3.chunk.js.map +0 -1
  304. package/dist/scripts/CfTCpF5i.chunk.js +0 -4
  305. package/dist/scripts/CfTCpF5i.chunk.js.map +0 -1
  306. package/dist/scripts/Cl1c9Acb.chunk.js +0 -2
  307. package/dist/scripts/Cl1c9Acb.chunk.js.map +0 -1
  308. package/dist/scripts/Cmu1J2M7.chunk.js +0 -262
  309. package/dist/scripts/Cmu1J2M7.chunk.js.map +0 -1
  310. package/dist/scripts/Cn0ghy_D.chunk.js +0 -2
  311. package/dist/scripts/Cn0ghy_D.chunk.js.map +0 -1
  312. package/dist/scripts/Cs1UnwSi.chunk.js +0 -2
  313. package/dist/scripts/Cs1UnwSi.chunk.js.map +0 -1
  314. package/dist/scripts/CsP3Lruv.chunk.js +0 -3
  315. package/dist/scripts/CsP3Lruv.chunk.js.map +0 -1
  316. package/dist/scripts/CsROrwVV.chunk.js +0 -2
  317. package/dist/scripts/CsROrwVV.chunk.js.map +0 -1
  318. package/dist/scripts/Ctu1A4hw.chunk.js +0 -2
  319. package/dist/scripts/Ctu1A4hw.chunk.js.map +0 -1
  320. package/dist/scripts/D1UdZdfs.chunk.js +0 -2
  321. package/dist/scripts/D1UdZdfs.chunk.js.map +0 -1
  322. package/dist/scripts/D2pFW6EB.chunk.js +0 -2
  323. package/dist/scripts/D2pFW6EB.chunk.js.map +0 -1
  324. package/dist/scripts/D9oCeDYw.chunk.js +0 -10
  325. package/dist/scripts/D9oCeDYw.chunk.js.map +0 -1
  326. package/dist/scripts/DAajosqn.chunk.js +0 -2
  327. package/dist/scripts/DAajosqn.chunk.js.map +0 -1
  328. package/dist/scripts/DDGxV4ns.chunk.js +0 -2
  329. package/dist/scripts/DDGxV4ns.chunk.js.map +0 -1
  330. package/dist/scripts/DFlfmBPU.chunk.js +0 -2
  331. package/dist/scripts/DFlfmBPU.chunk.js.map +0 -1
  332. package/dist/scripts/DHZefNDC.chunk.js +0 -2
  333. package/dist/scripts/DHZefNDC.chunk.js.map +0 -1
  334. package/dist/scripts/DJzpw8qX.chunk.js +0 -2
  335. package/dist/scripts/DJzpw8qX.chunk.js.map +0 -1
  336. package/dist/scripts/DKEdZyAE.chunk.js +0 -2
  337. package/dist/scripts/DKEdZyAE.chunk.js.map +0 -1
  338. package/dist/scripts/DKu8iTnz.chunk.js +0 -2
  339. package/dist/scripts/DKu8iTnz.chunk.js.map +0 -1
  340. package/dist/scripts/DMd0fZar.chunk.js +0 -2
  341. package/dist/scripts/DMd0fZar.chunk.js.map +0 -1
  342. package/dist/scripts/DNDksLLJ.chunk.js +0 -2
  343. package/dist/scripts/DNDksLLJ.chunk.js.map +0 -1
  344. package/dist/scripts/DNP9cLqQ.chunk.js +0 -2
  345. package/dist/scripts/DNP9cLqQ.chunk.js.map +0 -1
  346. package/dist/scripts/DO-V6YKu.chunk.js +0 -2
  347. package/dist/scripts/DO-V6YKu.chunk.js.map +0 -1
  348. package/dist/scripts/DQA8MZy3.chunk.js +0 -2
  349. package/dist/scripts/DQA8MZy3.chunk.js.map +0 -1
  350. package/dist/scripts/DT1lPNaD.chunk.js +0 -2
  351. package/dist/scripts/DT1lPNaD.chunk.js.map +0 -1
  352. package/dist/scripts/DTL-Rceb.chunk.js +0 -2
  353. package/dist/scripts/DTL-Rceb.chunk.js.map +0 -1
  354. package/dist/scripts/DTotSVIi.chunk.js +0 -2
  355. package/dist/scripts/DTotSVIi.chunk.js.map +0 -1
  356. package/dist/scripts/DWkaXclo.chunk.js +0 -10
  357. package/dist/scripts/DWkaXclo.chunk.js.map +0 -1
  358. package/dist/scripts/DXFcNENa.chunk.js +0 -2
  359. package/dist/scripts/DXFcNENa.chunk.js.map +0 -1
  360. package/dist/scripts/Ddy6mQmA.chunk.js +0 -2
  361. package/dist/scripts/Ddy6mQmA.chunk.js.map +0 -1
  362. package/dist/scripts/DlxDC-9E.chunk.js +0 -2
  363. package/dist/scripts/DlxDC-9E.chunk.js.map +0 -1
  364. package/dist/scripts/Dn5-Zvws.chunk.js +0 -2
  365. package/dist/scripts/Dn5-Zvws.chunk.js.map +0 -1
  366. package/dist/scripts/DnhffgUu.chunk.js +0 -2
  367. package/dist/scripts/DnhffgUu.chunk.js.map +0 -1
  368. package/dist/scripts/Dv9OgzKw.chunk.js +0 -2
  369. package/dist/scripts/Dv9OgzKw.chunk.js.map +0 -1
  370. package/dist/scripts/DvV9e2O3.chunk.js +0 -3
  371. package/dist/scripts/DvV9e2O3.chunk.js.map +0 -1
  372. package/dist/scripts/Dvf_hOR3.chunk.js +0 -2
  373. package/dist/scripts/Dvf_hOR3.chunk.js.map +0 -1
  374. package/dist/scripts/DxOc33K6.chunk.js +0 -3
  375. package/dist/scripts/DxOc33K6.chunk.js.map +0 -1
  376. package/dist/scripts/DxbQzyJg.chunk.js +0 -2
  377. package/dist/scripts/DxbQzyJg.chunk.js.map +0 -1
  378. package/dist/scripts/DyaAoFDP.chunk.js +0 -2
  379. package/dist/scripts/DyaAoFDP.chunk.js.map +0 -1
  380. package/dist/scripts/EBNeK_uD.chunk.js +0 -2
  381. package/dist/scripts/EBNeK_uD.chunk.js.map +0 -1
  382. package/dist/scripts/HBvGjr-A.chunk.js +0 -2
  383. package/dist/scripts/HBvGjr-A.chunk.js.map +0 -1
  384. package/dist/scripts/IC6KSiqE.chunk.js +0 -2
  385. package/dist/scripts/IC6KSiqE.chunk.js.map +0 -1
  386. package/dist/scripts/LT6WE6TB.chunk.js +0 -2
  387. package/dist/scripts/LT6WE6TB.chunk.js.map +0 -1
  388. package/dist/scripts/P0RdEZGz.chunk.js +0 -2
  389. package/dist/scripts/P0RdEZGz.chunk.js.map +0 -1
  390. package/dist/scripts/P3PkkK_o.chunk.js +0 -2
  391. package/dist/scripts/P3PkkK_o.chunk.js.map +0 -1
  392. package/dist/scripts/SA1hxE7y.chunk.js +0 -15
  393. package/dist/scripts/SA1hxE7y.chunk.js.map +0 -1
  394. package/dist/scripts/YHL8PX91.chunk.js +0 -2
  395. package/dist/scripts/YHL8PX91.chunk.js.map +0 -1
  396. package/dist/scripts/app-5iiM5qQY.js +0 -224
  397. package/dist/scripts/app-5iiM5qQY.js.map +0 -1
  398. package/dist/scripts/fORcC1yd.chunk.js +0 -2
  399. package/dist/scripts/fORcC1yd.chunk.js.map +0 -1
  400. package/dist/scripts/hU1zzvt8.chunk.js +0 -2
  401. package/dist/scripts/hU1zzvt8.chunk.js.map +0 -1
  402. package/dist/scripts/kFXLewpU.chunk.js +0 -2
  403. package/dist/scripts/kFXLewpU.chunk.js.map +0 -1
  404. package/dist/scripts/k_p1R4KR.chunk.js +0 -2
  405. package/dist/scripts/k_p1R4KR.chunk.js.map +0 -1
  406. package/dist/scripts/mqFCEyYv.chunk.js +0 -2
  407. package/dist/scripts/mqFCEyYv.chunk.js.map +0 -1
  408. package/dist/scripts/qwzILhQ0.chunk.js +0 -8
  409. package/dist/scripts/qwzILhQ0.chunk.js.map +0 -1
  410. package/dist/scripts/sFV5nxD4.chunk.js +0 -2
  411. package/dist/scripts/sFV5nxD4.chunk.js.map +0 -1
  412. package/dist/scripts/uBcZoYae.chunk.js +0 -2
  413. package/dist/scripts/uBcZoYae.chunk.js.map +0 -1
  414. package/dist/scripts/yaRKidLW.chunk.js +0 -2
  415. package/dist/scripts/yaRKidLW.chunk.js.map +0 -1
  416. package/dist/scripts/ysP6mL-L.chunk.js +0 -2
  417. package/dist/scripts/ysP6mL-L.chunk.js.map +0 -1
  418. package/vite.config.ts +0 -6
@@ -1 +0,0 @@
1
- {"version":3,"file":"DKEdZyAE.chunk.js","sources":["../../src/shared/views/overview-cards/top-classifications-card/partial-loading/PartialTopClassificationsCard.tsx","../../src/shared/views/overview-cards/top-classifications-card/TopClassificationsCardView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\n\nimport styles from '../top-classification-card.module.scss';\n\ninterface PartialClassificationItemProps {\n className?: string;\n}\n\nfunction PartialClassificationItem(props: PartialClassificationItemProps) {\n return (\n <div className='d-flex position-relative mb-3'>\n <div className={`${styles.fallbackImage} me-2`}>\n <ImageFallback\n type={ImageFallbackType.Subject}\n extraClasses='border rounded'\n />\n </div>\n\n <div className='w-100'>\n <div className={`partial-loading-background ${props.className}`}>&nbsp;</div>\n </div>\n </div>\n );\n}\n\nexport function PartialTopClassificationsCard() {\n return (\n <>\n <div className='partial-loading-background w-25 mb-3'>&nbsp;</div>\n\n <PartialClassificationItem className='w-25' />\n <PartialClassificationItem className='w-50' />\n <PartialClassificationItem className='w-33'/>\n <PartialClassificationItem className='w-25'/>\n </>\n );\n}","import React from 'react';\nimport Scrollbars from 'react-custom-scrollbars-2';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { Classification } from 'libs/shared/interfaces';\n\nimport { TopicAnalyticsType } from 'shared/enums/TopicAnalyticsType';\nimport { TopicRequests } from 'shared/flight-requests/TopicRequests';\nimport { useGetRequestFilter } from 'shared/hooks/UseGetFilterQueryParams';\nimport { CollectionViewEvent } from 'shared/interfaces';\nimport { PartialTopClassificationsCard } from 'shared/views/overview-cards/top-classifications-card/partial-loading/PartialTopClassificationsCard';\n\nimport styles from './top-classification-card.module.scss';\n\nconst namespace = 'reportsShared.topClassificationsCard';\n\ninterface ClassificationListItemProps {\n topClassification: CollectionViewEvent<Classification>;\n}\n\nfunction ClassificationListItem(props: ClassificationListItemProps) {\n const [ hasLoadedImage, setHasLoadedImage ] = React.useState(false);\n\n return (\n <div className='d-flex position-relative'>\n {!hasLoadedImage && (\n <ImageFallback\n type={ImageFallbackType.Subject}\n extraClasses={`${styles.fallbackImage} border rounded`}\n />\n )}\n <div className={`${styles.cover} flex-shrink-0 me-2 rounded overflow-hidden`}>\n <BaseImage\n data={props.topClassification.collection.cover}\n imageOptions={{ size: ImageSize.Medium }}\n onLoad={() => setHasLoadedImage(true)}\n />\n </div>\n <div>\n <h3 className='h6 mb-0 clamp-2 mt-1'>\n {props.topClassification.collection.name}\n </h3>\n <p><Text namespace={namespace} phrase='views' options={{ smartCount: props.topClassification.count }} /></p>\n </div>\n </div>\n );\n}\n\ninterface TopClassificationsCardProps {\n heading: string;\n type: TopicAnalyticsType;\n appLink?: Core.AppLink;\n appLinkText?: string;\n emptyStateText: string;\n limit: number;\n}\n\n// eslint-disable-next-line rulesdir/require-view-title\nexport function TopClassificationsCardView(props: TopClassificationsCardProps) {\n const requestFilter = useGetRequestFilter();\n \n const topClassifications = Flight.useBasicFetch<CollectionViewEvent<Classification>[]>(!!requestFilter &&\n TopicRequests.topTopicsV2(requestFilter, props.type, props.limit));\n\n const sortedTopClassifications = topClassifications.data?.sort((a, b) => b.count - a.count);\n\n return (\n <div className='d-flex flex-column h-100 bg-white overflow-hidden rounded pt-3 px-3'>\n {topClassifications.data ?\n <>\n <div className='d-flex justify-content-between'>\n <h2 className='h6 mb-3'>{props.heading}</h2>\n\n {props.appLink && props.appLinkText &&\n <AppLink\n appLink={props.appLink}\n className='text-info'\n >\n {props.appLinkText}\n </AppLink>\n }\n </div>\n {topClassifications.data.length ?\n <Scrollbars className='pb-3'>\n <ul className='list-unstyled m-0 pe-3'>\n {sortedTopClassifications.map((t, idx) => (\n <li key={idx} className='pb-3'>\n <ClassificationListItem topClassification={t} />\n </li>\n ))}\n </ul>\n </Scrollbars>\n : <div className='d-flex align-items-center justify-content-center h-100'>{props.emptyStateText}</div>\n }\n </> : <PartialTopClassificationsCard />\n }\n </div>\n );\n}"],"names":["PartialClassificationItem","props","jsxs","jsx","styles","ImageFallback","ImageFallbackType","PartialTopClassificationsCard","Fragment","namespace","ClassificationListItem","hasLoadedImage","setHasLoadedImage","React","BaseImage","ImageSize","Text","TopClassificationsCardView","requestFilter","useGetRequestFilter","topClassifications","Flight.useBasicFetch","TopicRequests","sortedTopClassifications","_a","a","b","AppLink","Scrollbars","t","idx"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{v as i,cP as F,p as o}from"./app-5iiM5qQY.js";const y=50;function C(e,c){const h=i.chunk(e,y).map(u=>c(i.uniq(u))),s=F(h),r=i.flatten(s.data),t=s.data.length?r.reduce((u,d)=>({...u,[d.id]:d}),{}):null;return{itemsArr:r,items:t,isFetching:s.isFetching,hasCompleted:s.hasCompleted}}function I(e,c,f){const h=(t=>typeof t=="object"?t.id:t),{fetchItems:s,...r}=q({getRequest:c});return o.useEffect(()=>{e!=null&&e.length&&s(e)},[e==null?void 0:e.map(h).join(",")]),r}function q(e){var p,g;const c=(n=>typeof n=="object"?n.id:n),f=o.useRef(new Set),[h,s]=o.useState([]);function r(n){if(!(n!=null&&n.length))return;const a=[];n.forEach(l=>{const m=c(l);f.current.has(m)||(a.push(l),f.current.add(m))}),a.length&&s(l=>[...l,...i.chunk(a,y).map(e.getRequest)])}const t=F(h),u=i.flatten(t.data),d=t.data.length?u.reduce((n,a)=>({...n,[c(a)]:a}),{}):null;return{hasFirstRequestCompleted:!!((g=(p=t.responses)==null?void 0:p[0])!=null&&g.hasCompleted),itemsArr:u,items:d,isFetching:t.isFetching,fetchItems:r}}export{I as a,C as u};
2
- //# sourceMappingURL=DKu8iTnz.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DKu8iTnz.chunk.js","sources":["../../../../libs/shared/src/hooks/UseBatchFetch.ts"],"sourcesContent":["import React from 'react';\n\nimport { Flight } from 'libs/common/flight';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { BaseObject } from 'libs/shared/interfaces';\n\nconst CHUNK_SIZE = 50;\n\nexport interface UseBatchFetchResult<T extends BaseObject> {\n itemsArr: T[];\n items: { [key: string]: T} | null;\n isFetching: boolean;\n hasCompleted: boolean;\n}\n\n/**\n * Used to fetch multiple items by id with Flight. Will fetch 25 items at a time firing off multiple\n * requests if there are more than 25 items.\n * This will return items as null until we have all our items. Items will be returned as an object with\n * their ids as they key for easy mapping\n * \n * @param itemIds \n * @param getRequest \n */\nexport function useBatchFetch<T extends BaseObject>(\n itemIds: string[],\n getRequest: (ids: string[]) => Flight.Request\n): UseBatchFetchResult<T> {\n const chunks = ArrayHelper.chunk<string>(itemIds, CHUNK_SIZE);\n\n const requests = chunks.map(chunk => getRequest(ArrayHelper.uniq(chunk)));\n\n const responses = Flight.useBasicFetchAll<T[]>(requests);\n\n const itemsArr = ArrayHelper.flatten(responses.data);\n const items = responses.data.length\n ? itemsArr.reduce((acc, item) => ({ ...acc, [item.id]: item }), {})\n : null;\n\n return {\n itemsArr,\n items,\n isFetching: responses.isFetching,\n hasCompleted: responses.hasCompleted\n };\n}\n\n/**\n * When you need the useBatchFetch() behavior, but your list of objects to hydrate\n * will grow, such as on a scrolling page. useGrowingBatchFetch() will use local state\n * to determine what we've already built a request for and what items are new\n * as to not re-fetch items - Sha\n */\nexport function useGrowingBatchFetch<TResponse, TObjects = string>(\n objs: TObjects[],\n getRequest: (items: TObjects[]) => Flight.Request,\n _getKey?: (obj: TObjects) => string\n) {\n const getKey = _getKey ?? ((obj: any) => {\n if (typeof obj === 'object')\n return obj.id;\n\n return obj;\n });\n\n const { fetchItems, ...data } = useGrowingBatchFetchFunc<TResponse, TObjects>({ getRequest, _getKey });\n\n React.useEffect(() => {\n if (!objs?.length)\n return;\n\n fetchItems(objs);\n }, [objs?.map(getKey).join(',')]);\n\n return data;\n}\n\ninterface UseGrowingBatchFetchFuncOptions<TObjects> {\n getRequest: (items: TObjects[]) => Flight.Request;\n _getKey?: (obj: TObjects) => string;\n}\n\n/**\n * When you need the useGrowingBatchFetch() behaviour, but need to trigger the\n * fetch manually and update the objects - Nish \n */\nexport function useGrowingBatchFetchFunc<TResponse, TObjects = string>(\n options: UseGrowingBatchFetchFuncOptions<TObjects>\n) {\n const getKey = options._getKey ?? ((obj: any) => {\n if (typeof obj === 'object')\n return obj.id;\n\n return obj;\n });\n\n const fetchedItems = React.useRef<Set<string>>(new Set<string>());\n const [ requests, setRequests ] = React.useState<Flight.Request[]>([]);\n\n function fetchItems(objs: TObjects[]) {\n if (!objs?.length)\n return;\n\n const unfetchedItems: TObjects[] = [];\n \n objs.forEach(obj => {\n const key = getKey(obj);\n\n if (fetchedItems.current.has(key))\n return;\n\n unfetchedItems.push(obj);\n fetchedItems.current.add(key);\n });\n \n if (!unfetchedItems.length)\n return;\n \n setRequests(r => ([ ...r, ...ArrayHelper.chunk<TObjects>(unfetchedItems, CHUNK_SIZE).map(options.getRequest) ]));\n }\n\n const responses = Flight.useBasicFetchAll<TResponse[]>(requests);\n const itemsArr = ArrayHelper.flatten(responses.data);\n const items = responses.data.length\n ? itemsArr.reduce<Record<string, TResponse>>((acc, item) => ({ ...acc, [getKey(item)]: item }), {})\n : null;\n\n return {\n hasFirstRequestCompleted: !!responses.responses?.[0]?.hasCompleted,\n itemsArr,\n items,\n isFetching: responses.isFetching,\n fetchItems\n };\n}\n"],"names":["CHUNK_SIZE","useBatchFetch","itemIds","getRequest","requests","ArrayHelper","chunk","responses","Flight.useBasicFetchAll","itemsArr","items","acc","item","useGrowingBatchFetch","objs","_getKey","getKey","obj","fetchItems","data","useGrowingBatchFetchFunc","React","options","fetchedItems","setRequests","unfetchedItems","key","r","_b","_a"],"mappings":"qDAOA,MAAMA,EAAa,GAkBZ,SAASC,EACdC,EACAC,EACwB,CAGxB,MAAMC,EAFSC,EAAY,MAAcH,EAASF,CAAU,EAEpC,IAAIM,GAASH,EAAWE,EAAY,KAAKC,CAAK,CAAC,CAAC,EAElEC,EAAYC,EAA6BJ,CAAQ,EAEjDK,EAAWJ,EAAY,QAAQE,EAAU,IAAI,EAC7CG,EAAQH,EAAU,KAAK,OACzBE,EAAS,OAAO,CAACE,EAAKC,KAAU,CAAE,GAAGD,EAAK,CAACC,EAAK,EAAE,EAAGA,IAAS,CAAA,CAAE,EAChE,KAEJ,MAAO,CACL,SAAAH,EACA,MAAAC,EACA,WAAYH,EAAU,WACtB,aAAcA,EAAU,YAAA,CAE5B,CAQO,SAASM,EACdC,EACAX,EACAY,EACA,CACA,MAAMC,GAAsBC,GACtB,OAAOA,GAAQ,SACVA,EAAI,GAENA,GAGH,CAAE,WAAAC,EAAY,GAAGC,CAAA,EAASC,EAA8C,CAAE,WAAAjB,CAAoB,CAAC,EAErG,OAAAkB,EAAM,UAAU,IAAM,CACfP,GAAA,MAAAA,EAAM,QAGXI,EAAWJ,CAAI,CACjB,EAAG,CAACA,GAAA,YAAAA,EAAM,IAAIE,GAAQ,KAAK,IAAI,CAAC,EAEzBG,CACT,CAWO,SAASC,EACdE,EACA,SACA,MAAMN,GAA8BC,GAC9B,OAAOA,GAAQ,SACVA,EAAI,GAENA,GAGHM,EAAeF,EAAM,OAAoB,IAAI,GAAa,EAC1D,CAAEjB,EAAUoB,CAAY,EAAIH,EAAM,SAA2B,CAAA,CAAE,EAErE,SAASH,EAAWJ,EAAkB,CACpC,GAAI,EAACA,GAAA,MAAAA,EAAM,QACT,OAEF,MAAMW,EAA6B,CAAA,EAEnCX,EAAK,QAAQG,GAAO,CAClB,MAAMS,EAAMV,EAAOC,CAAG,EAElBM,EAAa,QAAQ,IAAIG,CAAG,IAGhCD,EAAe,KAAKR,CAAG,EACvBM,EAAa,QAAQ,IAAIG,CAAG,EAC9B,CAAC,EAEID,EAAe,QAGpBD,EAAYG,GAAM,CAAE,GAAGA,EAAG,GAAGtB,EAAY,MAAgBoB,EAAgBzB,CAAU,EAAE,IAAIsB,EAAQ,UAAU,CAAE,CAAE,CACjH,CAEA,MAAMf,EAAYC,EAAqCJ,CAAQ,EACzDK,EAAWJ,EAAY,QAAQE,EAAU,IAAI,EAC7CG,EAAQH,EAAU,KAAK,OACzBE,EAAS,OAAkC,CAACE,EAAKC,KAAU,CAAE,GAAGD,EAAK,CAACK,EAAOJ,CAAI,CAAC,EAAGA,IAAS,CAAA,CAAE,EAChG,KAEJ,MAAO,CACL,yBAA0B,CAAC,GAACgB,GAAAC,EAAAtB,EAAU,YAAV,YAAAsB,EAAsB,KAAtB,MAAAD,EAA0B,cACtD,SAAAnB,EACA,MAAAC,EACA,WAAYH,EAAU,WACtB,WAAAW,CAAA,CAEJ"}
@@ -1,2 +0,0 @@
1
- import{j as a}from"./app-5iiM5qQY.js";function h(l){return a.jsx("svg",{...l,children:a.jsx("path",{d:"M5 6v12h14V6zm0-1h14a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1m2.4 10.3a.5.5 0 0 1-.8-.6l3-4a.5.5 0 0 1 .754-.054l.579.58 1.765-2.513a.5.5 0 0 1 .83.015l3.891 6a.5.5 0 0 1-.838.544l-3.49-5.379-1.682 2.394a.5.5 0 0 1-.763.067l-.592-.593zm.6-4.8a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1",fill:"currentColor"})})}function t(l){return a.jsx("svg",{...l,children:a.jsx("path",{fill:"currentColor",d:"M4.007 5.007A1.73 1.73 0 0 1 5.23 4.5h3.077a1.73 1.73 0 0 1 1.384.692l1.327 1.77h7.75a1.73 1.73 0 0 1 1.731 1.73v8.616a1.73 1.73 0 0 1-1.73 1.73H5.23a1.73 1.73 0 0 1-1.73-1.73V6.23c0-.46.182-.9.507-1.224M5.23 5.5a.73.73 0 0 0-.731.73V9.5h15v-.808a.73.73 0 0 0-.73-.73h-8a.5.5 0 0 1-.4-.2l-1.478-1.97a.73.73 0 0 0-.584-.292zm14.269 5h-15v6.808a.73.73 0 0 0 .73.73h13.54a.73.73 0 0 0 .73-.73z"})})}export{t as F,h as a};
2
- //# sourceMappingURL=DMd0fZar.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DMd0fZar.chunk.js","sources":["../../../../libs/shared/src/images/svg/objects/FileImgSvg.tsx","../../../../libs/shared/src/images/svg/objects/FolderSvg.tsx"],"sourcesContent":["import React from 'react';\n\nexport function FileImgSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n d='M5 6v12h14V6zm0-1h14a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1m2.4 10.3a.5.5 0 0 1-.8-.6l3-4a.5.5 0 0 1 .754-.054l.579.58 1.765-2.513a.5.5 0 0 1 .83.015l3.891 6a.5.5 0 0 1-.838.544l-3.49-5.379-1.682 2.394a.5.5 0 0 1-.763.067l-.592-.593zm.6-4.8a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3m0-1a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1'\n fill='currentColor'\n />\n </svg>\n );\n}\n","import React from 'react';\n\nexport function FolderSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n fill='currentColor'\n d='M4.007 5.007A1.73 1.73 0 0 1 5.23 4.5h3.077a1.73 1.73 0 0 1 1.384.692l1.327 1.77h7.75a1.73 1.73 0 0 1 1.731 1.73v8.616a1.73 1.73 0 0 1-1.73 1.73H5.23a1.73 1.73 0 0 1-1.73-1.73V6.23c0-.46.182-.9.507-1.224M5.23 5.5a.73.73 0 0 0-.731.73V9.5h15v-.808a.73.73 0 0 0-.73-.73h-8a.5.5 0 0 1-.4-.2l-1.478-1.97a.73.73 0 0 0-.584-.292zm14.269 5h-15v6.808a.73.73 0 0 0 .73.73h13.54a.73.73 0 0 0 .73-.73z'\n />\n </svg>\n );\n}\n"],"names":["FileImgSvg","props","jsx","FolderSvg"],"mappings":"sCAEO,SAASA,EAAWC,EAAsC,CAC/D,OACEC,EAAAA,IAAC,MAAA,CAAK,GAAGD,EACP,SAAAC,EAAAA,IAAC,OAAA,CACC,EAAE,iVACF,KAAK,cAAA,CAAA,EAET,CAEJ,CCTO,SAASC,EAAUF,EAAsC,CAC9D,OACEC,EAAAA,IAAC,MAAA,CAAK,GAAGD,EACP,SAAAC,EAAAA,IAAC,OAAA,CACC,KAAK,eACL,EAAE,wYAAA,CAAA,EAEN,CAEJ"}
@@ -1,2 +0,0 @@
1
- import{d as o,j as r,A as t,g as n,L as c}from"./app-5iiM5qQY.js";import{S as l}from"./SA1hxE7y.chunk.js";const C={clip(e,a,s,p){return{url:`{gateway}/v1/objects/${e}`,key:`clip:${e}`,success:a,error:s,always:p}}},m="reportsClips.clipNav",i=c.encloseNamespace(m);function u(e,a){const s=[e];return[{label:i("overview"),appLink:{application:n.CLIPS,action:t.Clips.OVERVIEW,args:s,params:a}},{label:i("engagement"),appLink:{application:n.CLIPS,action:t.Clips.ENGAGEMENT,args:s,params:a}}]}function L(e){const a=o(),s=u(e.id,a);return r.jsx(l,{items:s})}export{C,L as a};
2
- //# sourceMappingURL=DNDksLLJ.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DNDksLLJ.chunk.js","sources":["../../src/shared/flight-requests/ClipRequests.ts","../../src/apps/clips/components/clip-nav/ClipNav.tsx"],"sourcesContent":["import { Flight } from 'libs/common/flight';\n\nimport { Clip } from 'libs/shared/interfaces';\n\nexport const ClipRequests = {\n clip(id: string, success?: (data: Clip) => void, error?: (data: any) => void, always?: () => void): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${id}`,\n key: `clip:${id}`,\n success,\n error,\n always\n };\n }\n};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { FilterQueryParams } from 'libs/shared/apps/analytics/interfaces/FilterQueryParams';\n\nimport { SubNav, SubNavItem } from 'shared/components/sub-nav/SubNav';\nimport { Actions } from 'shared/constants/ReportsActions';\nimport { AppChannels } from 'shared/constants/ReportsRadioChannels';\nimport { useGetAppLinkFilterParams } from 'shared/hooks/UseGetFilterQueryParams';\n\nconst namespace = 'reportsClips.clipNav';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getNavItems(id: string, params: FilterQueryParams): SubNavItem[] {\n const args = [id];\n\n return [\n {\n label: getPhrase('overview'),\n appLink: { application: AppChannels.CLIPS, action: Actions.Clips.OVERVIEW, args, params }\n },\n {\n label: getPhrase('engagement'),\n appLink: { application: AppChannels.CLIPS, action: Actions.Clips.ENGAGEMENT, args, params }\n }\n ];\n}\n\ninterface ClipNavProps {\n id: string;\n}\n\nexport function ClipNav(props: ClipNavProps): JSX.Element {\n const filterQueryParams = useGetAppLinkFilterParams();\n\n const navItems = getNavItems(props.id, filterQueryParams);\n\n return (\n <SubNav items={navItems} />\n );\n}"],"names":["ClipRequests","id","success","error","always","namespace","getPhrase","LanguageService","getNavItems","params","args","AppChannels","Actions","ClipNav","props","filterQueryParams","useGetAppLinkFilterParams","navItems","jsx","SubNav"],"mappings":"0GAIO,MAAMA,EAAe,CAC1B,KAAKC,EAAYC,EAAgCC,EAA6BC,EAAqC,CACjH,MAAO,CACL,IAAK,wBAAwBH,CAAE,GAC/B,IAAK,QAAQA,CAAE,GACf,QAAAC,EACA,MAAAC,EACA,OAAAC,CAAA,CAEJ,CACF,ECHMC,EAAY,uBACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAE5D,SAASG,EAAYP,EAAYQ,EAAyC,CACxE,MAAMC,EAAO,CAACT,CAAE,EAEhB,MAAO,CACL,CACE,MAAOK,EAAU,UAAU,EAC3B,QAAS,CAAE,YAAaK,EAAY,MAAO,OAAQC,EAAQ,MAAM,SAAU,KAAAF,EAAM,OAAAD,CAAA,CAAO,EAE1F,CACE,MAAOH,EAAU,YAAY,EAC7B,QAAS,CAAE,YAAaK,EAAY,MAAO,OAAQC,EAAQ,MAAM,WAAY,KAAAF,EAAM,OAAAD,CAAA,CAAO,CAC5F,CAEJ,CAMO,SAASI,EAAQC,EAAkC,CACxD,MAAMC,EAAoBC,EAAA,EAEpBC,EAAWT,EAAYM,EAAM,GAAIC,CAAiB,EAExD,OACEG,EAAAA,IAACC,EAAA,CAAO,MAAOF,CAAA,CAAU,CAE7B"}
@@ -1,2 +0,0 @@
1
- import{j as e,h as v,a3 as c}from"./app-5iiM5qQY.js";import{a as C}from"./DMd0fZar.chunk.js";const _=["bg-green","bg-cyan","bg-teal","bg-blue","bg-indigo","bg-purple"],j=["bg-pink","bg-orange",..._];function k(a){return e.jsx("svg",{...a,children:e.jsx("path",{fill:"currentColor",fillRule:"evenodd",d:"M7.76 6.078a.5.5 0 0 0-.76.427v11a.5.5 0 0 0 .76.426l9.003-5.5a.5.5 0 0 0 0-.853z",clipRule:"evenodd"})})}function d(a){return e.jsx("svg",{...a,viewBox:"0 0 24 21",children:e.jsx("path",{d:"M22.5 1A1.5 1.5 0 0 1 24 2.5v18a1.5 1.5 0 0 1-1.5 1.5h-21A1.5 1.5 0 0 1 0 20.5v-18A1.5 1.5 0 0 1 1.5 1zm0 1.5h-21v18h21zm-8.21 4.092 5.84 9a.75.75 0 0 1-1.26.816L13.638 8.34l-2.523 3.591a.75.75 0 0 1-1.144.1l-.889-.89L5.1 16.45a.75.75 0 0 1-1.2-.9l4.5-6a.75.75 0 0 1 1.13-.08l.87.869 2.648-3.77a.75.75 0 0 1 1.243.023M6 4.75a2.25 2.25 0 1 1 0 4.5 2.25 2.25 0 0 1 0-4.5m0 1.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5",fill:"currentColor"})})}function f(a){return e.jsx("svg",{...a,children:e.jsx("path",{fill:"currentColor",d:"M20.283 4C21.229 4 22 4.745 22 5.66v8.74c0 .726-.478 1.338-1.151 1.565l.088-10.22a.657.657 0 0 0-.664-.66H6.351A1.71 1.71 0 0 1 7.951 4zm-2.059 1.933c.947 0 1.718.745 1.718 1.65v8.74c.01.726-.479 1.339-1.142 1.565l.088-10.24a.647.647 0 0 0-.664-.64H4.293a1.7 1.7 0 0 1 1.6-1.075zM16.05 7.95c.946 0 1.707.744 1.707 1.659v8.74c0 .915-.77 1.65-1.707 1.65H3.707C2.761 20 2 19.255 2 18.35V9.61c0-.915.77-1.66 1.707-1.66zm-.01 1.084H3.717a.647.647 0 0 0-.663.64v8.609c0 .358.292.641.663.641H16.03c.371 0 .664-.283.664-.641V9.676c.01-.358-.283-.641-.654-.641M8.546 12.39v3.178c0 .17.205.264.342.17l2.254-1.594c.117-.085.117-.255 0-.33l-2.264-1.593c-.137-.095-.332 0-.332.17"})})}function F(a,t){return t[a.charCodeAt(0)%t.length]}const g="_baseFallbackContainer_14tjv_1",m="_svgFallbackContainer_14tjv_1",S="_subjectFallbackContainer_14tjv_9",h="_subjectFallbackContainerSmall_14tjv_18",x="_subjectFallbackContainerLarge_14tjv_21",$="_seriesItemFallback_14tjv_24",z="_playlistItemFallback_14tjv_24",L="_playlistFallback_14tjv_28",A="_posterFallback_14tjv_29",M="_subjectFallback_14tjv_9",N="_fallbackThumbnailImage_14tjv_47",P="_videoFallback_14tjv_55",B="_folderFallback_14tjv_56",l={baseFallbackContainer:g,svgFallbackContainer:m,subjectFallbackContainer:S,subjectFallbackContainerSmall:h,subjectFallbackContainerLarge:x,seriesItemFallback:$,playlistItemFallback:z,playlistFallback:L,posterFallback:A,subjectFallback:M,fallbackThumbnailImage:N,videoFallback:P,folderFallback:B};var E=(a=>(a[a.Playlist=0]="Playlist",a[a.PlaylistThumbnail=1]="PlaylistThumbnail",a[a.Series=2]="Series",a[a.SeriesThumbnail=3]="SeriesThumbnail",a[a.Subject=4]="Subject",a[a.TallSubject=5]="TallSubject",a[a.Video=6]="Video",a[a.Folder=7]="Folder",a))(E||{});function H(a,t,n){if(t===4){const s=n===0?l.subjectFallbackContainerLarge:l.subjectFallbackContainerSmall;return`${l.subjectFallbackContainer} ${s}`}return a===0?t===3||t===1?`${l.svgFallbackContainer} rounded-3`:l.svgFallbackContainer:l.baseFallbackContainer}function O(a){return a===3?l.seriesItemFallback:a===1?l.playlistItemFallback:a===0?l.playlistFallback:a===2||a===5?l.posterFallback:a===4?`${l.subjectFallback} svg-container d-inline-block`:""}function R(a){return a===3||a===1?k:a===0?d:a===2?f:a===4||a===5?C:null}function V(a){return a===4?c.ExtraLarge:c.Standard}G.defaultProps={mediaType:0,containerClassSize:0};function G(a){const{type:t,mediaType:n,extraClasses:s,containerClassSize:o}=a;if(t===6)return e.jsx("div",{className:`${l.videoFallback} ${a.extraClasses} bg-light-blue`});if(t===7)return e.jsx("div",{className:`${l.folderFallback} ${a.extraClasses} ${F(a.name,j)}`});const b=O(t),r=R(t),u=V(t);let i=`${H(n,t,o)}`;return s&&(i+=` ${a.extraClasses}`),e.jsx("div",{className:i,children:n===0?e.jsx(v,{svg:r,className:`${b} ${a.svgContainerClassName??""}`,tagName:"div",size:u}):e.jsx("div",{className:l.fallbackThumbnailImage,style:{backgroundImage:`url('${r}')`}})})}export{j as B,G as I,k as P,f as S,E as a,F as g};
2
- //# sourceMappingURL=DNP9cLqQ.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DNP9cLqQ.chunk.js","sources":["../../../../libs/shared/src/constants/ColourClassNames.ts","../../../../libs/shared/src/images/svg/actions/PlaySvg.tsx","../../../../libs/shared/src/images/svg/objects/ImageSvg.tsx","../../../../libs/shared/src/images/svg/objects/SeriesSvg.tsx","../../../../libs/shared/src/utils/getBgColorClass.ts","../../../../libs/shared/src/components/image/ImageFallback.tsx"],"sourcesContent":["/**\n * Use this instead of the list below if you need to render the clickview logo\n * on the background you're rendering.\n */\nexport const LOGO_SAFE_BG_CLASS_NAMES = [\n 'bg-green',\n 'bg-cyan',\n 'bg-teal',\n 'bg-blue',\n 'bg-indigo',\n 'bg-purple'\n];\n\nexport const BG_COLOUR_CLASS_NAMES = [\n 'bg-pink',\n 'bg-orange',\n ...LOGO_SAFE_BG_CLASS_NAMES\n];","import React from 'react';\n\nexport function PlaySvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n fill='currentColor'\n fillRule='evenodd'\n d='M7.76 6.078a.5.5 0 0 0-.76.427v11a.5.5 0 0 0 .76.426l9.003-5.5a.5.5 0 0 0 0-.853z'\n clipRule='evenodd'\n />\n </svg>\n );\n}\n","import React from 'react';\n\nexport function ImageSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props} viewBox='0 0 24 21'>\n <path\n d='M22.5 1A1.5 1.5 0 0 1 24 2.5v18a1.5 1.5 0 0 1-1.5 1.5h-21A1.5 1.5 0 0 1 0 20.5v-18A1.5 1.5 0 0 1 1.5 1zm0 1.5h-21v18h21zm-8.21 4.092 5.84 9a.75.75 0 0 1-1.26.816L13.638 8.34l-2.523 3.591a.75.75 0 0 1-1.144.1l-.889-.89L5.1 16.45a.75.75 0 0 1-1.2-.9l4.5-6a.75.75 0 0 1 1.13-.08l.87.869 2.648-3.77a.75.75 0 0 1 1.243.023M6 4.75a2.25 2.25 0 1 1 0 4.5 2.25 2.25 0 0 1 0-4.5m0 1.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5'\n fill='currentColor'\n />\n </svg>\n );\n}\n","import React from 'react';\n\nexport function SeriesSvg(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg {...props}>\n <path\n fill='currentColor'\n d='M20.283 4C21.229 4 22 4.745 22 5.66v8.74c0 .726-.478 1.338-1.151 1.565l.088-10.22a.657.657 0 0 0-.664-.66H6.351A1.71 1.71 0 0 1 7.951 4zm-2.059 1.933c.947 0 1.718.745 1.718 1.65v8.74c.01.726-.479 1.339-1.142 1.565l.088-10.24a.647.647 0 0 0-.664-.64H4.293a1.7 1.7 0 0 1 1.6-1.075zM16.05 7.95c.946 0 1.707.744 1.707 1.659v8.74c0 .915-.77 1.65-1.707 1.65H3.707C2.761 20 2 19.255 2 18.35V9.61c0-.915.77-1.66 1.707-1.66zm-.01 1.084H3.717a.647.647 0 0 0-.663.64v8.609c0 .358.292.641.663.641H16.03c.371 0 .664-.283.664-.641V9.676c.01-.358-.283-.641-.654-.641M8.546 12.39v3.178c0 .17.205.264.342.17l2.254-1.594c.117-.085.117-.255 0-.33l-2.264-1.593c-.137-.095-.332 0-.332.17'\n />\n </svg>\n );\n}\n","export function getBgColorClass(name: string, classNames: string[]): string {\n return classNames[name.charCodeAt(0) % classNames.length];\n}\n\nexport function getDeterministicBgColorClass(name: string, classNames: string[]): string {\n const sum = name\n .split('')\n .reduce(\n (acc, char) => acc + char.charCodeAt(0),\n 0\n );\n \n return classNames[sum % classNames.length];\n}","import * as React from 'react';\n\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { PlaySvg } from 'libs/shared/images/svg/actions/PlaySvg';\nimport { FileImgSvg } from 'libs/shared/images/svg/objects/FileImgSvg';\nimport { ImageSvg } from 'libs/shared/images/svg/objects/ImageSvg';\nimport { SeriesSvg } from 'libs/shared/images/svg/objects/SeriesSvg';\nimport { getBgColorClass } from 'libs/shared/utils/getBgColorClass';\n\nimport styles from './image-fallback.module.scss';\n\nexport enum ImageFallbackType {\n Playlist,\n PlaylistThumbnail,\n Series,\n SeriesThumbnail,\n Subject,\n TallSubject,\n Video,\n Folder\n}\n\nexport enum ImageFallbackMediaType {\n Svg,\n Image\n}\n\nexport enum ContainerClassSize {\n Large,\n Small\n}\n\nfunction getContainerClass(\n type: ImageFallbackMediaType,\n objectType: ImageFallbackType,\n containerClassSize: ContainerClassSize\n): string {\n if (objectType === ImageFallbackType.Subject) {\n const containerSizeClass = containerClassSize === ContainerClassSize.Large\n ? styles.subjectFallbackContainerLarge\n : styles.subjectFallbackContainerSmall;\n\n return `${styles.subjectFallbackContainer} ${containerSizeClass}`;\n }\n\n if (type === ImageFallbackMediaType.Svg) {\n if (objectType === ImageFallbackType.SeriesThumbnail || objectType === ImageFallbackType.PlaylistThumbnail)\n return `${styles.svgFallbackContainer} rounded-3`;\n \n return styles.svgFallbackContainer;\n }\n\n return styles.baseFallbackContainer;\n}\n\nfunction getClassByType(type: ImageFallbackType): string {\n if (type === ImageFallbackType.SeriesThumbnail)\n return styles.seriesItemFallback;\n\n if (type === ImageFallbackType.PlaylistThumbnail)\n return styles.playlistItemFallback;\n\n if (type === ImageFallbackType.Playlist)\n return styles.playlistFallback;\n\n if (type === ImageFallbackType.Series || type === ImageFallbackType.TallSubject)\n return styles.posterFallback;\n\n if (type === ImageFallbackType.Subject)\n return `${styles.subjectFallback} svg-container d-inline-block`;\n\n return '';\n}\n\nfunction getMedia(type: ImageFallbackType) {\n if (type === ImageFallbackType.SeriesThumbnail || type === ImageFallbackType.PlaylistThumbnail)\n return PlaySvg;\n\n if (type === ImageFallbackType.Playlist)\n return ImageSvg;\n\n if (type === ImageFallbackType.Series)\n return SeriesSvg;\n\n if (type === ImageFallbackType.Subject || type === ImageFallbackType.TallSubject)\n return FileImgSvg;\n\n return null;\n}\n\nfunction getSize(type: ImageFallbackType): SvgContainerSize {\n if (type === ImageFallbackType.Subject)\n return SvgContainerSize.ExtraLarge;\n\n return SvgContainerSize.Standard;\n}\n\ninterface ImageFallbackProps {\n type: ImageFallbackType;\n mediaType?: ImageFallbackMediaType;\n extraClasses?: string;\n svgContainerClassName?: string;\n name?: string;\n containerClassSize?: ContainerClassSize\n}\n\nImageFallback.defaultProps = {\n mediaType: ImageFallbackMediaType.Svg,\n containerClassSize: ContainerClassSize.Large\n};\n\nexport function ImageFallback(props: ImageFallbackProps): JSX.Element {\n const { type, mediaType, extraClasses, containerClassSize } = props;\n\n if (type === ImageFallbackType.Video)\n return <div className={`${styles.videoFallback} ${props.extraClasses} bg-light-blue`} />;\n\n if (type === ImageFallbackType.Folder)\n return <div className={`${styles.folderFallback} ${props.extraClasses} ${getBgColorClass(props.name, BG_COLOUR_CLASS_NAMES)}`} />;\n\n const typeClass = getClassByType(type);\n const media = getMedia(type);\n const size = getSize(type);\n\n let className = `${getContainerClass(mediaType, type, containerClassSize)}`;\n\n if (extraClasses)\n className += ` ${props.extraClasses}`;\n\n return (\n <div className={className}>\n {mediaType === ImageFallbackMediaType.Svg\n ? (\n <SvgContainer\n svg={media}\n className={`${typeClass} ${props.svgContainerClassName ?? ''}`}\n tagName='div'\n size={size}\n />\n ) : (\n <div className={styles.fallbackThumbnailImage} style={{ backgroundImage: `url('${media}')` }} />\n )\n }\n </div>\n );\n}"],"names":["LOGO_SAFE_BG_CLASS_NAMES","BG_COLOUR_CLASS_NAMES","PlaySvg","props","jsx","ImageSvg","SeriesSvg","getBgColorClass","name","classNames","ImageFallbackType","getContainerClass","type","objectType","containerClassSize","containerSizeClass","styles","getClassByType","getMedia","FileImgSvg","getSize","SvgContainerSize","ImageFallback","mediaType","extraClasses","typeClass","media","size","className","SvgContainer"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{j as i,c4 as t}from"./app-5iiM5qQY.js";function n(e){let s=`d-flex align-items-center badge-list ${t.minHeight}`;return e.className&&(s+=` ${e.className}`),i.jsx("div",{className:s,children:e.children})}export{n as B};
2
- //# sourceMappingURL=DO-V6YKu.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DO-V6YKu.chunk.js","sources":["../../../../libs/shared/src/components/badges/BadgeListContainer.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport styles from './badge.module.scss';\n\ninterface BadgeListContainerProps {\n className?: string;\n}\n\nexport function BadgeListContainer(props: React.PropsWithChildren<BadgeListContainerProps>): JSX.Element {\n let className = `d-flex align-items-center badge-list ${styles.minHeight}`;\n\n if (props.className)\n className += ` ${props.className}`;\n\n return (\n <div className={className}>\n {props.children}\n </div>\n );\n}"],"names":["BadgeListContainer","props","className","styles","jsx"],"mappings":"8CAQO,SAASA,EAAmBC,EAAsE,CACvG,IAAIC,EAAY,wCAAwCC,EAAO,SAAS,GAExE,OAAIF,EAAM,YACRC,GAAa,IAAID,EAAM,SAAS,IAGhCG,EAAAA,IAAC,MAAA,CAAI,UAAAF,EACF,SAAAD,EAAM,SACT,CAEJ"}
@@ -1,2 +0,0 @@
1
- import{j as a,c5 as s}from"./app-5iiM5qQY.js";import{R as t,s as e}from"./72EXv822.chunk.js";function r(){return a.jsxs(t,{className:`py-1 ${e.videoItemContainer}`,children:[a.jsx(s,{xs:1,className:"d-flex align-items-center justify-content-center",children:a.jsx("div",{className:`partial-loading-background ${e.partialNumber}`})}),a.jsx(s,{xs:2,className:"d-flex align-items-center",children:a.jsx("div",{className:"d-block",children:a.jsx("div",{className:`partial-loading-background rounded ${e.partialThumbnail}`})})}),a.jsx(s,{xs:3,className:"d-flex align-items-center",children:a.jsx("div",{className:`partial-loading-background ms-n2 ${e.partialLongText}`})}),a.jsx(s,{xs:2,className:"d-flex align-items-center",children:a.jsx("div",{className:`d-block partial-loading-background mx-4 ${e.partialShortText}`})}),a.jsx(s,{xs:4,className:"d-flex align-items-center",children:a.jsx("div",{className:`d-block partial-loading-background mx-4 ${e.partialNumber}`})})]})}function c(){return a.jsxs(t,{className:`py-1 ${e.interactiveItemContainer}`,children:[a.jsx(s,{xs:1,className:"d-flex align-items-center justify-content-center",children:a.jsx("div",{className:`partial-loading-background ${e.partialNumber}`})}),a.jsx(s,{xs:2,className:"d-flex align-items-center",children:a.jsx("div",{className:"d-block",children:a.jsx("div",{className:`partial-loading-background rounded ${e.partialThumbnail}`})})}),a.jsx(s,{xs:2,className:"d-flex align-items-center",children:a.jsx("div",{className:`partial-loading-background ms-n2 ${e.partialMediumText}`})}),a.jsx(s,{xs:2,className:"d-flex align-items-center",children:a.jsx("div",{className:`d-block partial-loading-background mx-4 ${e.partialAvatar}`})}),a.jsx(s,{xs:2,className:"d-flex align-items-center",children:a.jsx("div",{className:`d-block partial-loading-background mx-4 ${e.partialMediumText}`})}),a.jsx(s,{xs:3,className:"d-flex align-items-center",children:a.jsx("div",{className:`d-block partial-loading-background mx-4 ${e.partialNumber}`})})]})}function d(){return a.jsxs(t,{className:`my-2 ${e.userItemContainer}`,children:[a.jsxs(s,{xs:2,className:"d-flex align-items-center ",children:[a.jsx("div",{className:`partial-loading-background ms-3 ${e.partialAvatar}`}),a.jsx("div",{className:`partial-loading-background mx-2 ${e.partialShortText}`})]}),a.jsx(s,{xs:2,className:"d-flex justify-content-center align-items-center",children:a.jsx("div",{className:`d-block partial-loading-background ${e.partialShortText}`})}),a.jsx(s,{xs:2,className:"d-flex justify-content-center align-items-center",children:a.jsx("div",{className:`partial-loading-background ${e.partialShortText}`})}),a.jsx(s,{xs:6,className:"d-flex justify-content-between align-items-center",children:a.jsx("div",{className:`partial-loading-background ${e.heatMapItemContainer} ${e.partialHeatMap}`})})]})}function m(l,i){switch(l){case"video-views":return a.jsx(r,{},i);case"interactives":return a.jsx(c,{},i);case"engagement-users":return a.jsx(d,{},i);default:return a.jsx(a.Fragment,{})}}x.defaultProps={itemCount:7};function x(l){return a.jsx("div",{className:"my-1",children:Array(l.itemCount).fill(null).map((i,n)=>m(l.variant,n))})}export{x as P};
2
- //# sourceMappingURL=DQA8MZy3.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DQA8MZy3.chunk.js","sources":["../../src/shared/components/partial-loading/PartialTableContent.tsx"],"sourcesContent":["import React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport { TableVariant } from 'shared/components/partial-loading/PartialTable';\n\nimport styles from './partial-loading.module.scss';\n\nfunction VideoItem(): JSX.Element {\n return (\n <Row className={`py-1 ${styles.videoItemContainer}`}>\n <Col xs={1} className='d-flex align-items-center justify-content-center'>\n <div className={`partial-loading-background ${styles.partialNumber}`} />\n </Col>\n <Col xs={2} className='d-flex align-items-center'>\n <div className='d-block'>\n <div className={`partial-loading-background rounded ${styles.partialThumbnail}`} />\n </div>\n </Col>\n <Col xs={3} className='d-flex align-items-center'>\n <div className={`partial-loading-background ms-n2 ${styles.partialLongText}`} />\n </Col>\n <Col xs={2} className='d-flex align-items-center'>\n <div className={`d-block partial-loading-background mx-4 ${styles.partialShortText}`} />\n </Col>\n <Col xs={4} className='d-flex align-items-center'>\n <div className={`d-block partial-loading-background mx-4 ${styles.partialNumber}`} />\n </Col>\n </Row>\n );\n}\n\nfunction InteractiveItem(): JSX.Element {\n return (\n <Row className={`py-1 ${styles.interactiveItemContainer}`}>\n <Col xs={1} className='d-flex align-items-center justify-content-center'>\n <div className={`partial-loading-background ${styles.partialNumber}`} />\n </Col>\n <Col xs={2} className='d-flex align-items-center'>\n <div className='d-block'>\n <div className={`partial-loading-background rounded ${styles.partialThumbnail}`} />\n </div>\n </Col>\n <Col xs={2} className='d-flex align-items-center'>\n <div className={`partial-loading-background ms-n2 ${styles.partialMediumText}`} />\n </Col>\n <Col xs={2} className='d-flex align-items-center'>\n <div className={`d-block partial-loading-background mx-4 ${styles.partialAvatar}`} />\n </Col>\n <Col xs={2} className='d-flex align-items-center'>\n <div className={`d-block partial-loading-background mx-4 ${styles.partialMediumText}`} />\n </Col>\n <Col xs={3} className='d-flex align-items-center'>\n <div className={`d-block partial-loading-background mx-4 ${styles.partialNumber}`} />\n </Col>\n </Row>\n );\n}\n\nfunction EngagementUserItem(): JSX.Element {\n return (\n <Row className={`my-2 ${styles.userItemContainer}`}>\n <Col xs={2} className='d-flex align-items-center '>\n <div className={`partial-loading-background ms-3 ${styles.partialAvatar}`} />\n <div className={`partial-loading-background mx-2 ${styles.partialShortText}`} />\n </Col>\n <Col xs={2} className='d-flex justify-content-center align-items-center'>\n <div className={`d-block partial-loading-background ${styles.partialShortText}`} />\n </Col>\n <Col xs={2} className='d-flex justify-content-center align-items-center'>\n <div className={`partial-loading-background ${styles.partialShortText}`} />\n </Col>\n <Col xs={6} className='d-flex justify-content-between align-items-center'>\n <div className={`partial-loading-background ${styles.heatMapItemContainer} ${styles.partialHeatMap}`} />\n </Col>\n </Row>\n );\n}\n\nfunction getPartialItem(type: TableVariant, key: number): JSX.Element {\n switch (type) {\n case 'video-views':\n return <VideoItem key={key} />;\n\n case 'interactives':\n return <InteractiveItem key={key} />;\n\n case 'engagement-users':\n return <EngagementUserItem key={key} />;\n\n default:\n return <></>;\n }\n}\n\ninterface PartialTableContentProps {\n variant: TableVariant;\n itemCount?: number;\n}\n\nPartialTableContent.defaultProps = {\n itemCount: 7\n};\n\nexport function PartialTableContent(props: PartialTableContentProps): JSX.Element {\n return (\n <div className='my-1'>\n {Array(props.itemCount).fill(null).map((_, i) => getPartialItem(props.variant, i))}\n </div>\n );\n}"],"names":["VideoItem","Row","styles","jsx","Col","InteractiveItem","EngagementUserItem","jsxs","getPartialItem","type","key","Fragment","PartialTableContent","props","_","i"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{d as i,j as n,A as s,g as a,L as r}from"./app-5iiM5qQY.js";import{S as p}from"./SA1hxE7y.chunk.js";const c="reportsVideos.schoolVideosNav",o=r.encloseNamespace(c);function l(e){return[{label:o("overview"),appLink:{application:a.VIDEOS,action:s.Videos.HOME,params:e}},{label:o("views"),appLink:{application:a.VIDEOS,action:s.Videos.TOP_VIDEOS,params:e}}]}function v(){const e=i(),t=l(e);return n.jsx(p,{items:t})}export{v as S};
2
- //# sourceMappingURL=DT1lPNaD.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DT1lPNaD.chunk.js","sources":["../../src/apps/videos/components/school-videos-nav/SchoolVideosNav.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { FilterQueryParams } from 'libs/shared/apps/analytics/interfaces/FilterQueryParams';\n\nimport { SubNav, SubNavItem } from 'shared/components/sub-nav/SubNav';\nimport { Actions } from 'shared/constants/ReportsActions';\nimport { AppChannels } from 'shared/constants/ReportsRadioChannels';\nimport { useGetAppLinkFilterParams } from 'shared/hooks/UseGetFilterQueryParams';\n\nconst namespace = 'reportsVideos.schoolVideosNav';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getNavItems(params: FilterQueryParams): SubNavItem[] {\n return [\n {\n label: getPhrase('overview'),\n appLink: { application: AppChannels.VIDEOS, action: Actions.Videos.HOME, params }\n },\n {\n label: getPhrase('views'),\n appLink: { application: AppChannels.VIDEOS, action: Actions.Videos.TOP_VIDEOS, params }\n }\n ];\n}\n\nexport function SchoolVideosNav(): JSX.Element {\n const filterQueryParams = useGetAppLinkFilterParams();\n\n const navItems = getNavItems(filterQueryParams);\n\n return (\n <SubNav items={navItems} />\n );\n}"],"names":["namespace","getPhrase","LanguageService","getNavItems","params","AppChannels","Actions","SchoolVideosNav","filterQueryParams","useGetAppLinkFilterParams","navItems","jsx","SubNav"],"mappings":"0GAWA,MAAMA,EAAY,gCACZC,EAAYC,EAAgB,iBAAiBF,CAAS,EAE5D,SAASG,EAAYC,EAAyC,CAC5D,MAAO,CACL,CACE,MAAOH,EAAU,UAAU,EAC3B,QAAS,CAAE,YAAaI,EAAY,OAAQ,OAAQC,EAAQ,OAAO,KAAM,OAAAF,CAAA,CAAO,EAElF,CACE,MAAOH,EAAU,OAAO,EACxB,QAAS,CAAE,YAAaI,EAAY,OAAQ,OAAQC,EAAQ,OAAO,WAAY,OAAAF,CAAA,CAAO,CACxF,CAEJ,CAEO,SAASG,GAA+B,CAC7C,MAAMC,EAAoBC,EAAA,EAEpBC,EAAWP,EAAYK,CAAiB,EAE9C,OACEG,EAAAA,IAACC,EAAA,CAAO,MAAOF,CAAA,CAAU,CAE7B"}
@@ -1,2 +0,0 @@
1
- import{v as p}from"./app-5iiM5qQY.js";import{S as A}from"./5O9SdVRZ.chunk.js";import{a as g}from"./CNgTzzan.chunk.js";var c=(t=>(t[t.Correct=0]="Correct",t[t.Incorrect=1]="Incorrect",t[t.AwaitingMarking=2]="AwaitingMarking",t[t.Answered=3]="Answered",t[t.UnAnswered=4]="UnAnswered",t[t.NotApplicable=5]="NotApplicable",t))(c||{}),m=(t=>(t[t.Incorrect=0]="Incorrect",t[t.Correct=1]="Correct",t[t.PendingReview=2]="PendingReview",t))(m||{});function I(){return c.NotApplicable}function H(){return c.AwaitingMarking}function b(t,e){const o=t.actionableItems.filter(r=>r.isCorrect);return o.every(r=>!e(r.id))?c.UnAnswered:o.every(r=>{var i;return r.name.trim().toLowerCase()===((i=e(r.id))==null?void 0:i.trim().toLowerCase())})?c.Correct:c.Incorrect}function U(t,e){return t.actionableItems.every(r=>!e(r.id))?c.UnAnswered:t.actionableItems.filter(r=>r.isCorrect).every(r=>{var u;const i=e(r.id);return(i==null?void 0:i.toString())===((u=r.id)==null?void 0:u.toString())||i===r.name})?c.Correct:c.Incorrect}function R(t,e){let o;return t.actionableItems.forEach(n=>{const r=e(n.id);if(!r){o=c.UnAnswered;return}if(r.status===m.Correct){o=c.Correct;return}if(r.status===m.Incorrect){o=c.Incorrect;return}o=c.AwaitingMarking}),o}function h(t,e){return o=>{const n=e==null?void 0:e.attempts.find(r=>r.id===t.id);return n==null?void 0:n.answers.find(r=>r.id===o)}}function T(t,e){const o=h(t,e);return b(t,n=>{const r=o(n);return r==null?void 0:r.text})}function S(t,e){const o=h(t,e);return U(t,n=>{const r=o(n);return r==null?void 0:r.text})}function k(t,e){const o=h(t,e);return R(t,o)}const L={[g.Annotation]:I,[g.Image]:I,[g.MissingWord]:T,[g.MultipleChoice]:S,[g.ShortAnswer]:k,[g.TrueOrFalse]:S,[g.Illustration]:k};function W(t,e){const o=L[t.typeId];return o(t,e)}const q={notApplicable:I,awaitingMarking:H,isMissingWordCorrect:b,isMultipleChoiceCorrect:U,isInteractionCorrect:W};function x(t){return t.typeId!==g.Annotation&&t.typeId!==g.Image}function v(t){return p.flatten(t.timepoints.map(e=>e.interactions))}function C(t){return p.last(t.results)}function B(t,e){return p.findWhere(e==null?void 0:e.attempts,{id:t})}function E(t){return v(t).filter(x)}function O(t,e,o){const n={markingRequired:[],lowScore:[],highScore:[],completed:[],notCompleted:[]},r=E(t),i=new Set(r.map(s=>s.id));e.students.forEach(s=>{const a={...s,summary:N(t,s)};if(a.summary.awaitingMarking){n.markingRequired.push(a);return}if(p.last(s.results).attempts.filter(w=>{var M;return!!i.has((M=w==null?void 0:w.answers[0])==null?void 0:M.questionId)}).length===i.size)n.completed.push(a);else{n.notCompleted.push(a);return}a.summary.percentCorrect>=A.HIGH&&n.highScore.push(a),a.summary.percentCorrect<A.MODERATE&&n.lowScore.push(a)});const u=p.sortBy(n.lowScore,s=>s.summary.percentCorrect),d=p.sortBy(n.highScore,s=>-s.summary.percentCorrect);return{...n,lowScore:u,highScore:d}}function P(t,e){return v(t).find(n=>n.id.toString()===e.toString())}function y(t){return`${t.questionId}:${t.resultId}`}function $(t,e,o){const n=C(e),r=B(t,n);if(r==null?void 0:r.answers.every(d=>{var s;return((s=o[y(d)])==null?void 0:s.status)===m.Correct}))return m.Correct;if(r==null?void 0:r.answers.every(d=>{var s;return((s=o[y(d)])==null?void 0:s.status)===m.Incorrect}))return m.Incorrect}function j(t,e){const o=e.students.length;let n=0,r=0,i=0,u=0,d=0;return e.students.forEach(a=>{const l=C(a);if(!l)return;d=d+a.results.length;const f=q.isInteractionCorrect(t,l);f===c.Correct&&n++,f===c.UnAnswered&&i++,f===c.AwaitingMarking&&u++,f!==c.UnAnswered&&r++}),{percentCorrect:o>0?n/o:0,correct:n,answered:r,unanswered:i,awaitingMarking:u,attempts:d}}function N(t,e){const o=C(e),n=E(t),r=n.length;let i=0,u=0;n.forEach(l=>{const f=q.isInteractionCorrect(l,o);f===c.Correct&&i++,f===c.AwaitingMarking&&u++});const d=r>0?i/r:0,s=new Set(n.map(l=>l.id)),a=o.attempts.filter(l=>{var f;return!!s.has((f=l==null?void 0:l.answers[0])==null?void 0:f.questionId)}).length;return{answered:a,attempts:e.results.length,unanswered:r-a,percentCorrect:d,correct:i,awaitingMarking:u}}export{q as I,E as a,j as b,O as c,$ as d,C as e,c as f,N as g,m as h,P as i,y as j,B as k};
2
- //# sourceMappingURL=DTL-Rceb.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DTL-Rceb.chunk.js","sources":["../../../../libs/shared/src/enums/InteractionCorrectness.ts","../../../../libs/shared/src/enums/InteractiveAnswerStatus.ts","../../../../libs/shared/src/utils/InteractiveCorrectnessHelper.ts","../../../../libs/shared/src/utils/InteractiveHelper.ts","../../../../libs/shared/src/apps/analytics/utils/InteractiveUtils.ts"],"sourcesContent":["export enum InteractionCorrectness {\n Correct,\n Incorrect,\n AwaitingMarking,\n \n Answered,\n UnAnswered,\n NotApplicable\n}","export enum InteractiveAnswerStatus {\n Incorrect = 0,\n Correct = 1,\n PendingReview = 2\n}","import { InteractionCorrectness } from 'libs/shared/enums/InteractionCorrectness';\nimport { InteractiveAnswerStatus } from 'libs/shared/enums/InteractiveAnswerStatus';\nimport { Interaction, InteractionTypeId, InteractiveResult, StudentAnswer } from 'libs/shared/interfaces';\n\ntype GetStudentAnswerByActionableItemId = (id: string) => string;\n\nfunction notApplicable(): InteractionCorrectness {\n return InteractionCorrectness.NotApplicable;\n}\n\nfunction awaitingMarking(): InteractionCorrectness {\n return InteractionCorrectness.AwaitingMarking;\n}\n\nfunction isMissingWordCorrect(\n interaction: Interaction,\n getStudentAnswer: GetStudentAnswerByActionableItemId\n): InteractionCorrectness {\n const items = interaction.actionableItems.filter(a => a\n .isCorrect);\n\n if (items.every(a => !getStudentAnswer(a.id)))\n return InteractionCorrectness.UnAnswered;\n\n const correct = items.every(a => a.name.trim().toLowerCase() === getStudentAnswer(a.id)?.trim().toLowerCase());\n return correct ? InteractionCorrectness.Correct : InteractionCorrectness.Incorrect;\n}\n\nfunction isMultipleChoiceCorrect(\n interaction: Interaction,\n getStudentAnswer: GetStudentAnswerByActionableItemId\n): InteractionCorrectness {\n if (interaction.actionableItems.every(a => !getStudentAnswer(a.id)))\n return InteractionCorrectness.UnAnswered;\n \n const correctItems = interaction.actionableItems.filter(a => a.isCorrect);\n\n const correct = correctItems.every(a => {\n const studentAnswer = getStudentAnswer(a.id);\n\n /**\n * In the past we've only ever checked the answer name. But since we introduced the ability to have image interactions\n * with no question text, we've need to swap to saving the id. But past submissions still have the name\n * - Sha\n */\n return studentAnswer?.toString() === a.id?.toString() || studentAnswer === a.name;\n });\n return correct ? InteractionCorrectness.Correct : InteractionCorrectness.Incorrect;\n}\n\nfunction isMarkableAnswerMarkedCorrect(\n interaction: Interaction,\n getStudentAnswer: (id: string) => StudentAnswer\n): InteractionCorrectness {\n let correctness: InteractionCorrectness;\n\n // There should only be one actionableItem\n interaction.actionableItems.forEach(item => {\n const studentAnswer = getStudentAnswer(item.id);\n\n if (!studentAnswer) {\n correctness = InteractionCorrectness.UnAnswered;\n return;\n }\n\n if (studentAnswer.status === InteractiveAnswerStatus.Correct) {\n correctness = InteractionCorrectness.Correct;\n return;\n }\n\n if (studentAnswer.status === InteractiveAnswerStatus.Incorrect) {\n correctness = InteractionCorrectness.Incorrect;\n return;\n }\n\n correctness = InteractionCorrectness.AwaitingMarking;\n });\n\n return correctness;\n}\n\ntype IsCorrectFunction = (interaction: Interaction, result: InteractiveResult) => InteractionCorrectness;\n\nfunction getGetStudentAnswer(interaction: Interaction, result: InteractiveResult): (id: string) => StudentAnswer {\n return (id: string) => {\n const attempt = result?.attempts.find(a => a.id === interaction.id);\n return attempt?.answers.find(s => s.id === id);\n };\n}\n\nfunction wrapIsMissingWordCorrect(interaction: Interaction, result: InteractiveResult): InteractionCorrectness {\n const getStudentAnswer = getGetStudentAnswer(interaction, result);\n\n return isMissingWordCorrect(interaction, (id: string) => {\n const answer = getStudentAnswer(id);\n return answer?.text;\n });\n}\n\nfunction wrapIsMultipleChoiceCorrect(interaction: Interaction, result: InteractiveResult): InteractionCorrectness {\n const getStudentAnswer = getGetStudentAnswer(interaction, result);\n\n return isMultipleChoiceCorrect(interaction, (id: string) => {\n const answer = getStudentAnswer(id);\n return answer?.text;\n });\n}\n\nfunction wrapIsMarkableAnswerMarkedCorrect(\n interaction: Interaction,\n result: InteractiveResult\n): InteractionCorrectness {\n const getStudentAnswer = getGetStudentAnswer(interaction, result);\n return isMarkableAnswerMarkedCorrect(interaction, getStudentAnswer);\n}\n\nconst IsCorrectLookup: {[typeId: number]: IsCorrectFunction} = {\n [InteractionTypeId.Annotation]: notApplicable,\n [InteractionTypeId.Image]: notApplicable,\n [InteractionTypeId.MissingWord]: wrapIsMissingWordCorrect,\n [InteractionTypeId.MultipleChoice]: wrapIsMultipleChoiceCorrect,\n [InteractionTypeId.ShortAnswer]: wrapIsMarkableAnswerMarkedCorrect,\n [InteractionTypeId.TrueOrFalse]: wrapIsMultipleChoiceCorrect,\n [InteractionTypeId.Illustration]: wrapIsMarkableAnswerMarkedCorrect\n};\n\nfunction isInteractionCorrect(interaction: Interaction, result: InteractiveResult): InteractionCorrectness {\n const isCorrectFn = IsCorrectLookup[interaction.typeId];\n\n return isCorrectFn(interaction, result);\n}\n\nexport const InteractiveCorrectnessHelper = {\n notApplicable,\n awaitingMarking,\n isMissingWordCorrect,\n isMultipleChoiceCorrect,\n isInteractionCorrect\n};\n","import { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport {\n Interaction,\n InteractionTypeId,\n Interactive,\n InteractiveMetadata,\n InteractiveResult,\n StudentAttempt,\n StudentResults\n} from 'libs/shared/interfaces';\n\nfunction interactionRequiresAnswer(interaction: Interaction): boolean {\n return interaction.typeId !== InteractionTypeId.Annotation && interaction.typeId !== InteractionTypeId.Image;\n}\n\nexport function flattenInteractions(interactive: Interactive): Interaction[] {\n return ArrayHelper.flatten(interactive.timepoints.map(i => i.interactions));\n}\n\n/**\n * Centralised logic for using the most recent student result.\n */\nexport function getStudentResult(studentResults: StudentResults): InteractiveResult {\n return ArrayHelper.last(studentResults.results);\n}\n\nexport function getStudentAttempt(interactionId: string, result: InteractiveResult): StudentAttempt {\n return ArrayHelper.findWhere(result?.attempts, { id: interactionId });\n}\n\n/**\n * Returns a flat list of interactions on an interactive and filters out\n * those that don't require an answer (annotations and images).\n */\nexport function getInteractions(interactive: Interactive): Interaction [] {\n return flattenInteractions(interactive).filter(interactionRequiresAnswer);\n}\n\nexport function getTotalInteractions(interactive: InteractiveMetadata): number {\n return interactive._timepoints?.value?.reduce((total, timepoint) => {\n if (!timepoint.interactions?.length)\n return total;\n \n return total + timepoint.interactions.length;\n }, 0) ?? 0;\n}","import { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { MarkedAnswerHash } from 'libs/shared/apps/analytics/hooks/UseMarkAnswers';\nimport { ResultsSummary } from 'libs/shared/apps/analytics/interfaces/ResultsSummary';\nimport { StudentResultsWithSummary } from 'libs/shared/apps/analytics/interfaces/StudentResultsWithSummary';\nimport { ScoreThresholdDefaults, ScoreThresholds } from 'libs/shared/constants/ScoreThresholds';\nimport { InteractionCorrectness } from 'libs/shared/enums/InteractionCorrectness';\nimport { InteractiveAnswerStatus } from 'libs/shared/enums/InteractiveAnswerStatus';\nimport { Interaction, StudentAnswer, StudentResults } from 'libs/shared/interfaces';\nimport { Interactive, InteractiveResultSet } from 'libs/shared/interfaces';\nimport { InteractiveCorrectnessHelper } from 'libs/shared/utils/InteractiveCorrectnessHelper';\nimport { flattenInteractions, getInteractions, getStudentAttempt, getStudentResult } from 'libs/shared/utils/InteractiveHelper';\n\ninterface StudentGroups {\n markingRequired: StudentResultsWithSummary[];\n lowScore: StudentResultsWithSummary[];\n highScore: StudentResultsWithSummary[];\n completed: StudentResultsWithSummary[];\n notCompleted: StudentResultsWithSummary[];\n}\n\nexport function groupStudents(\n interactive: Interactive,\n results: InteractiveResultSet,\n scoreThreshold?: ScoreThresholds\n): StudentGroups {\n const groups: StudentGroups = {\n markingRequired: [],\n lowScore: [],\n highScore: [],\n completed: [],\n notCompleted: []\n };\n\n const interactions = getInteractions(interactive);\n const interactionIds = new Set(interactions.map(i => i.id));\n \n results.students.forEach(s => {\n const withSummary = {\n ...s,\n summary: getStudentResultsSummary(interactive, s)\n };\n \n if (withSummary.summary.awaitingMarking) {\n groups.markingRequired.push(withSummary);\n return;\n }\n\n const result = ArrayHelper.last(s.results);\n const answeredInteractions = result.attempts.filter(a => !!interactionIds.has(a?.answers[0]?.questionId)).length;\n\n if (answeredInteractions === interactionIds.size) {\n groups.completed.push(withSummary);\n } else {\n groups.notCompleted.push(withSummary);\n return;\n }\n \n if (withSummary.summary.percentCorrect >= (scoreThreshold?.HIGH || ScoreThresholdDefaults.HIGH))\n groups.highScore.push(withSummary);\n \n if (withSummary.summary.percentCorrect < (scoreThreshold?.MODERATE || ScoreThresholdDefaults.MODERATE))\n groups.lowScore.push(withSummary);\n });\n \n const sortedLowScore = ArrayHelper.sortBy(groups.lowScore, s => s.summary.percentCorrect);\n const sortedHighScore = ArrayHelper.sortBy(groups.highScore, s => -s.summary.percentCorrect);\n \n return {\n ...groups,\n lowScore: sortedLowScore,\n highScore: sortedHighScore\n };\n}\n\nexport function getInteractionById(interactive: Interactive, interactionId: string): Interaction {\n const flattenedInteractions = flattenInteractions(interactive);\n return flattenedInteractions.find(i => i.id.toString() === interactionId.toString());\n}\n\n/**\n * We need to use the question and result ids as a list of one student's responses\n * to multiple questions will all have the same result id and a list of multiple\n * students responses to one question will all have the same questionId.\n */\nexport function getMarkedAnswerId(answer: StudentAnswer): string {\n return `${answer.questionId}:${answer.resultId}`;\n}\n\nexport function getMarkedStatus(\n interactionId: string,\n studentResults: StudentResults,\n markedAnswers: MarkedAnswerHash\n): InteractiveAnswerStatus {\n const result = getStudentResult(studentResults);\n const studentResponse = getStudentAttempt(interactionId, result);\n\n const isMarkedCorrect = studentResponse?.answers.every(a => {\n return markedAnswers[getMarkedAnswerId(a)]?.status === InteractiveAnswerStatus.Correct;\n });\n\n if (isMarkedCorrect)\n return InteractiveAnswerStatus.Correct;\n\n const isMarkedIncorrect = studentResponse?.answers.every(a => {\n return markedAnswers[getMarkedAnswerId(a)]?.status === InteractiveAnswerStatus.Incorrect;\n });\n\n if (isMarkedIncorrect)\n return InteractiveAnswerStatus.Incorrect;\n}\n\nexport function getInteractionResultsSummary(\n interaction: Interaction,\n results: InteractiveResultSet\n): ResultsSummary {\n const numStudents = results.students.length;\n let numCorrect = 0;\n let answered = 0;\n let unanswered = 0;\n let awaitingMarking = 0;\n let attempts = 0;\n\n results.students.forEach(s => {\n const result = getStudentResult(s);\n\n if (!result)\n return;\n\n attempts = attempts + s.results.length;\n\n const correctness = InteractiveCorrectnessHelper.isInteractionCorrect(interaction, result);\n\n if (correctness === InteractionCorrectness.Correct)\n numCorrect++;\n\n if (correctness === InteractionCorrectness.UnAnswered)\n unanswered++;\n\n if (correctness === InteractionCorrectness.AwaitingMarking)\n awaitingMarking++;\n\n if (correctness !== InteractionCorrectness.UnAnswered)\n answered++;\n });\n\n\n const percentCorrect = numStudents > 0\n ? numCorrect / numStudents\n : 0;\n\n return {\n percentCorrect,\n correct: numCorrect,\n answered,\n unanswered,\n awaitingMarking,\n attempts\n };\n}\n\nexport function getStudentResultsSummary(interactive: Interactive, studentResults: StudentResults): ResultsSummary {\n const result = getStudentResult(studentResults);\n\n const interactions = getInteractions(interactive);\n\n const numInteractions = interactions.length;\n\n let numCorrect = 0;\n let awaitingMarking = 0;\n\n interactions.forEach(i => {\n const correctness = InteractiveCorrectnessHelper.isInteractionCorrect(i, result);\n\n if (correctness === InteractionCorrectness.Correct)\n numCorrect++;\n\n if (correctness === InteractionCorrectness.AwaitingMarking)\n awaitingMarking++;\n });\n\n const percentCorrect = numInteractions > 0 ? numCorrect / numInteractions : 0;\n\n /**\n * Our interactions list has images and annotations filtered out.\n * We built a map of valid questions, so that we can calculate the unswered accurately.\n * We're doing this because of a bug that caused annotations and images to record answers in the player.\n * - Sha\n */\n const interactionIds = new Set(interactions.map(i => i.id));\n const answeredInteractions = result.attempts.filter(a => !!interactionIds.has(a?.answers[0]?.questionId)).length;\n\n return {\n answered: answeredInteractions,\n attempts: studentResults.results.length,\n unanswered: numInteractions - answeredInteractions,\n percentCorrect,\n correct: numCorrect,\n awaitingMarking\n };\n}"],"names":["InteractionCorrectness","InteractiveAnswerStatus","notApplicable","awaitingMarking","isMissingWordCorrect","interaction","getStudentAnswer","items","a","_a","isMultipleChoiceCorrect","studentAnswer","isMarkableAnswerMarkedCorrect","correctness","item","getGetStudentAnswer","result","id","attempt","s","wrapIsMissingWordCorrect","answer","wrapIsMultipleChoiceCorrect","wrapIsMarkableAnswerMarkedCorrect","IsCorrectLookup","InteractionTypeId","isInteractionCorrect","isCorrectFn","InteractiveCorrectnessHelper","interactionRequiresAnswer","flattenInteractions","interactive","ArrayHelper","i","getStudentResult","studentResults","getStudentAttempt","interactionId","getInteractions","groupStudents","results","scoreThreshold","groups","interactions","interactionIds","withSummary","getStudentResultsSummary","ScoreThresholdDefaults","sortedLowScore","sortedHighScore","getInteractionById","getMarkedAnswerId","getMarkedStatus","markedAnswers","studentResponse","getInteractionResultsSummary","numStudents","numCorrect","answered","unanswered","attempts","numInteractions","percentCorrect","answeredInteractions"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{aw as a,bI as l,s as u}from"./app-5iiM5qQY.js";const i={namespace:"share"},y={video:"thumbnail,series,_canBeConsumed,_restrictions",clip:"_parentVideo[_rating],_canBeConsumed,_thumbnail,_restrictions",interactive:"_canBeConsumed,_parentVideo[_rating],_parentClip,_thumbnail,_restrictions",series:"tallPoster,videos[thumbnail,count()]{limit:1}",playlist:"cover,videos[thumbnail,count()]{limit:1},clips[_thumbnail,count()]{limit:1},interactives[_thumbnail,count()]{limit:1}"};function p(e,r){return{id:e,"query.user":`yearGroups,avatar,userprofiles{customer.id:${r}}`,"query.classroom":`enrolments[count()]{role:student,limit:0},customer{id:${r}}`,"query.classroom_group":"classroom,users[count()]{limit:0}"}}const d={getShareObject(e,r,t){return{url:`/api/share/find/${e}`,key:`share:${e}`,bootstrapName:`share:${e}`,success:r,error:t}},getShareRecipients(e){return{url:`/api/share/find/${e}/recipients`,key:`share:${e}:recipients`,normalize:!1}},sharedObjectsById(e){e.sort();const r=e.map(s=>`id=${s}`),t=Object.keys(y).map(s=>`query.${s}=${y[s]}`);return{url:`{gateway}/v1/objects?${[...r,...t,`permissionFilterOption=${l.StripMetadata}`].join("&")}`,key:`objects:${e.join(",")}`,normalize:!1}},sentShare(e={}){const r=Object.values(e).join(":");return{url:u.urlBuilder("{gateway}/v1/users/me/share/sent-items",e),key:`sent:shares:${r}`,normalize:!1}},getSentDirectShareByObjectId(e){return{url:`{gateway}/v1/users/me/share/direct/sent-items?objectId=${e}`,key:`direct:share:sent:object:${e}`,normalizeOptions:i}},createDirectShare(e,r,t,s){return{url:"{gateway}/v1/share",key:"create:direct:share",data:e,type:a.POST,normalizeOptions:i,invalidationKeys:[`direct:share:sent:object:${e.objectId}`,"sent:shares"],success:r,error:t,always:s}},updateDirectShareRecipients(e,r,t,s,n){const c=`direct:share:recipients:${e}`;return{url:`{gateway}/v1/share/${e}/recipients`,key:"edit:direct:share",data:r,type:a.POST,normalizeOptions:i,invalidationKeys:"sent:shares",updateState:{keys:c,updateData:o=>!o[c]||r.recipients.length?o:{...o,[c]:[]}},success:t,error:s,always:n}},removeDirectShareRecipient(e,r,t,s,n){const c=`direct:share:recipients:${e}`;return{url:u.urlBuilder(`{gateway}/v1/share/${e}/recipients`,{recipientId:r}),key:"remove:direct:share:recipient",type:a.DELETE,normalizeOptions:i,invalidationKeys:"sent:shares",updateState:{keys:c,updateData:o=>o[c]?{...o,[c]:[]}:o},success:t,error:s,always:n}},getDirectShareRecipientsById(e,r,t){return{url:u.urlBuilder("{gateway}/v1/objects",p(r.map(s=>s.id),t)),key:`direct:share:recipients:${e}`}},getRecipientsById(e,r){return e.sort(),{url:u.urlBuilder("{gateway}/v1/objects",p(e,r)),key:`share:recipients:${e.join(",")}`}},getRecipientUsers(e,r){return{url:`{gateway}/v1/objects/${e}/users?query={limit:100}`,key:`share:recipients:${e}:users`,success:r}},getObjectsSharedWithUser(e){const r={permissionFilterOption:l.StripMetadata};return e&&(r.cursor=e),{url:u.urlBuilder("{gateway}/v1/users/me/share/received-items",r),key:`shared:with:me:${e}`}},getShareLinkByObjectId(e){return{url:`{gateway}/v1/share/links?objectId=${e}`,key:`share:link:object:${e}`,normalizeOptions:i,formatData:r=>({...r,linkExpireDate:r.linkExpireDate||null})}},createShareLink(e,r,t,s){return{url:"{gateway}/v1/share/links",key:"create:share:link",type:a.POST,data:e,normalizeOptions:i,invalidationKeys:[`share:link:object:${e.resourceId}`,`privacy:${e.resourceId}`,"sent:shares"],success:r,error:t,always:s}},editShareLink(e,r,t,s,n){return{url:`{gateway}/v1/share/links/${e.id}`,key:"edit:share:link",data:r,type:a.PUT,normalizeOptions:i,invalidationKeys:[`share:${e.id}`,`share:link:object:${e.objectId}`,"sent:shares"],success:t,error:s,always:n}},deleteShareLink(e,r,t,s){return{url:`{gateway}/v1/share/links/${e.id}`,key:"delete:share:link",type:a.DELETE,normalizeOptions:i,invalidationKeys:[`share:${e.id}`,`share:link:object:${e.objectId}`,"sent:shares"],success:r,error:t,always:s}},checkPassword(e,r,t,s){return{url:`{gateway}/v1/share/links/${e}/password/verify`,publicUrl:`{gateway}/v1/share/links/${e}/password/verify/public`,key:`checkpassword:${e}`,type:a.POST,data:{password:r},success:t,error:s}},getPrivacy(e){return{url:`{gateway}/v1/objects/${e}/access`,key:`privacy:${e}`,normalize:!1}},updatePrivacy(e,r,t,s,n){return{url:`{gateway}/v1/share/links/${e}/privacy`,key:"update:privacy",type:a.PUT,data:{privacy:r,overrideRestrictions:t},invalidationKeys:["privacy","sent:shares"],normalize:!1,success:s,error:n}},createAnonSession(e,r,t){return{url:`{gateway}/v1/shares/${e}/anon-sessions`,key:"create:anon:session",type:a.POST,data:{sessionId:r,sessionName:t},normalize:!1}},getAnonSessions(e){return{url:`{gateway}/v1/shares/${e}/anon-sessions`,key:`anon:session:${e}`,normalize:!1}}};export{d as S};
2
- //# sourceMappingURL=DTotSVIi.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DTotSVIi.chunk.js","sources":["../../../../libs/shared/src/apps/share/flight-requests/ShareRequests.ts"],"sourcesContent":["import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { CreateDirectShareRequest } from 'libs/shared/apps/share/interfaces/requests/CreateDirectShareRequest';\nimport { CreateShareLinkRequest } from 'libs/shared/apps/share/interfaces/requests/CreateShareLinkRequest';\nimport { EditDirectShareRequest } from 'libs/shared/apps/share/interfaces/requests/EditDirectShareRequest';\nimport { EditShareLinkRequest } from 'libs/shared/apps/share/interfaces/requests/EditShareLinkRequest';\nimport { GetSentItemsParams } from 'libs/shared/apps/share/interfaces/requests/GetSentItemsParams';\nimport { CheckShareLinkPasswordResponse } from 'libs/shared/apps/share/interfaces/responses/CheckShareLinkPasswordResponse';\nimport { SharePrivacy } from 'libs/shared/apps/share/interfaces/SharePrivacy';\nimport { PermissionFilterOption } from 'libs/shared/enums/PermissionFilterOption';\nimport { DirectShare, ShareLink, ShareRecipient, UnionShareObject, UserCollection } from 'libs/shared/interfaces';\n\nconst normalizeOptions: Flight.NormalizeOptions = {\n namespace: 'share'\n};\n\nconst SharedObjectQueries: { [index: string]: string} = {\n video: 'thumbnail,series,_canBeConsumed,_restrictions',\n clip: '_parentVideo[_rating],_canBeConsumed,_thumbnail,_restrictions',\n interactive: '_canBeConsumed,_parentVideo[_rating],_parentClip,_thumbnail,_restrictions',\n series: 'tallPoster,videos[thumbnail,count()]{limit:1}',\n playlist: 'cover,videos[thumbnail,count()]{limit:1},clips[_thumbnail,count()]{limit:1},interactives[_thumbnail,count()]{limit:1}'\n};\n\nfunction getShareRecipientQuery(ids: string[], customerId: string): HashObject {\n return {\n 'id': ids,\n 'query.user': `yearGroups,avatar,userprofiles{customer.id:${customerId}}`,\n 'query.classroom': `enrolments[count()]{role:student,limit:0},customer{id:${customerId}}`,\n 'query.classroom_group': 'classroom,users[count()]{limit:0}'\n };\n}\n\nexport const ShareRequests = {\n getShareObject(\n shareId: string,\n success?: (obj: UnionShareObject) => void,\n error?: (xhr: Xhr) => void\n ): Flight.Request {\n return {\n /**\n * This is a custom endpoint written into Lite that will use\n * client credentials no matter if the user is signed in or not\n */\n url: `/api/share/find/${shareId}`,\n key: `share:${shareId}`,\n bootstrapName: `share:${shareId}`,\n success,\n error\n };\n },\n\n getShareRecipients(shareId: string): Flight.Request {\n return {\n url: `/api/share/find/${shareId}/recipients`,\n key: `share:${shareId}:recipients`,\n normalize: false\n };\n },\n\n sharedObjectsById(ids: string[]): Flight.Request {\n ids.sort();\n \n const idsQueries = ids.map(id => `id=${id}`);\n const assocQueries = Object.keys(SharedObjectQueries).map(key => `query.${key}=${SharedObjectQueries[key]}`);\n\n return {\n url: `{gateway}/v1/objects?${[ ...idsQueries, ...assocQueries, `permissionFilterOption=${PermissionFilterOption.StripMetadata}` ].join('&')}`,\n key: `objects:${ids.join(',')}`,\n normalize: false\n };\n },\n\n sentShare(params: GetSentItemsParams = {}): Flight.Request {\n const key = Object.values(params).join(':');\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/users/me/share/sent-items', params),\n key: `sent:shares:${key}`,\n normalize: false\n };\n },\n\n /**\n * Direct share requests\n */\n getSentDirectShareByObjectId(objectId: string): Flight.Request {\n return {\n url: `{gateway}/v1/users/me/share/direct/sent-items?objectId=${objectId}`,\n key: `direct:share:sent:object:${objectId}`,\n normalizeOptions\n };\n },\n\n createDirectShare(\n data: CreateDirectShareRequest,\n success?: (data: DirectShare) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: '{gateway}/v1/share',\n key: 'create:direct:share',\n data,\n type: HttpVerbs.POST,\n normalizeOptions,\n invalidationKeys: [ `direct:share:sent:object:${data.objectId}`, 'sent:shares' ],\n success,\n error,\n always\n };\n },\n\n updateDirectShareRecipients(\n shareId: string,\n data: EditDirectShareRequest,\n success?: (data: DirectShare) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n const updateStateKey = `direct:share:recipients:${shareId}`;\n\n return {\n url: `{gateway}/v1/share/${shareId}/recipients`,\n key: 'edit:direct:share',\n data,\n type: HttpVerbs.POST,\n normalizeOptions,\n invalidationKeys: 'sent:shares',\n updateState: {\n keys: updateStateKey,\n updateData: (state: HashObject) => {\n /**\n * As getDirectShareRecipientsById caches by shareId\n * and not the objectIds being fetched, if we're removing\n * the last recipient we need to manually set the recipients\n * to an empty array as a re-fetch won't be triggered.\n */\n if (!state[updateStateKey] || data.recipients.length)\n return state;\n\n return {\n ...state,\n [updateStateKey]: []\n };\n }\n },\n success,\n error,\n always\n };\n },\n\n removeDirectShareRecipient(\n shareId: string,\n recipientId: string,\n success?: (data: DirectShare) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n const updateStateKey = `direct:share:recipients:${shareId}`;\n\n return {\n url: UrlHelper.urlBuilder(`{gateway}/v1/share/${shareId}/recipients`, {\n recipientId\n }),\n key: 'remove:direct:share:recipient',\n type: HttpVerbs.DELETE,\n normalizeOptions,\n invalidationKeys: 'sent:shares',\n updateState: {\n keys: updateStateKey,\n updateData: (state: HashObject) => {\n /**\n * As getDirectShareRecipientsById caches by shareId\n * and not the objectIds being fetched, if we're removing\n * the last recipient we need to manually set the recipients\n * to an empty array as a re-fetch won't be triggered.\n */\n if (!state[updateStateKey])\n return state;\n\n return {\n ...state,\n [updateStateKey]: []\n };\n }\n },\n success,\n error,\n always\n };\n },\n\n /**\n * This request differs from getRecipientsById in that the key doesn't contain\n * the ids being fetched. This is useful because it means that if we need to\n * re-fetch the data because `ids` changes, the data prop will always be set\n * because the key won't change.\n * When using getRecipientsById, the would be a period of time where `data`\n * is `undefined` because it is technically a new request.\n */\n getDirectShareRecipientsById(shareId: string, recipients: ShareRecipient[], customerId: string): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/objects', getShareRecipientQuery(recipients.map(r => r.id), customerId)),\n key: `direct:share:recipients:${shareId}`\n };\n },\n\n getRecipientsById(ids: string[], customerId: string): Flight.Request {\n ids.sort();\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/objects', getShareRecipientQuery(ids, customerId)),\n key: `share:recipients:${ids.join(',')}`\n };\n },\n\n /**\n * Fetch a classroom or classroom group with users\n */\n getRecipientUsers(id: string, success?: (users: UserCollection) => void): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${id}/users?query={limit:100}`,\n key: `share:recipients:${id}:users`,\n success\n };\n },\n\n getObjectsSharedWithUser(cursor?: string): Flight.Request {\n const params: HashObject = { permissionFilterOption: PermissionFilterOption.StripMetadata };\n\n if (cursor)\n params.cursor = cursor;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/users/me/share/received-items', params),\n key: `shared:with:me:${cursor}`\n };\n },\n\n /**\n * Share link requests\n */\n getShareLinkByObjectId(id: string): Flight.Request {\n return {\n url: `{gateway}/v1/share/links?objectId=${id}`,\n key: `share:link:object:${id}`,\n normalizeOptions,\n formatData: (resp: HashObject) => {\n /**\n * When removing the linkExpireDate, the cache is invalidated\n * but the normalised state still has the linkExpireDate, so we need\n * to set it to null if it's not present\n */\n return {\n ...resp,\n linkExpireDate: resp.linkExpireDate || null\n };\n }\n };\n },\n\n createShareLink(\n data: CreateShareLinkRequest,\n success?: (shareLink: ShareLink) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: '{gateway}/v1/share/links',\n key: 'create:share:link',\n type: HttpVerbs.POST,\n data,\n normalizeOptions,\n invalidationKeys: [ `share:link:object:${data.resourceId}`, `privacy:${data.resourceId}`, 'sent:shares' ],\n success,\n error,\n always\n };\n },\n\n editShareLink(\n shareLink: ShareLink,\n data: EditShareLinkRequest,\n success?: (shareLink: ShareLink) => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/share/links/${shareLink.id}`,\n key: 'edit:share:link',\n data,\n type: HttpVerbs.PUT,\n normalizeOptions,\n invalidationKeys: [ `share:${shareLink.id}`, `share:link:object:${shareLink.objectId}`, 'sent:shares' ],\n success,\n error,\n always\n };\n },\n\n deleteShareLink(\n shareLink: ShareLink,\n success?: () => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/share/links/${shareLink.id}`,\n key: 'delete:share:link',\n type: HttpVerbs.DELETE,\n normalizeOptions,\n invalidationKeys: [ `share:${shareLink.id}`, `share:link:object:${shareLink.objectId}`, 'sent:shares' ],\n success,\n error,\n always\n };\n },\n\n checkPassword(\n id: string,\n password: string,\n success?: (res: CheckShareLinkPasswordResponse) => void,\n error?: (xhr: Xhr) => void\n ): Flight.PublicRequest {\n return {\n url: `{gateway}/v1/share/links/${id}/password/verify`,\n publicUrl: `{gateway}/v1/share/links/${id}/password/verify/public`,\n key: `checkpassword:${id}`,\n type: HttpVerbs.POST,\n data: { password },\n success,\n error\n };\n },\n\n getPrivacy(id: string): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${id}/access`,\n key: `privacy:${id}`,\n normalize: false\n };\n },\n\n updatePrivacy(\n id: string,\n privacy: SharePrivacy,\n overrideRestrictions: boolean,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/share/links/${id}/privacy`,\n key: 'update:privacy',\n type: HttpVerbs.PUT,\n data: {\n privacy,\n overrideRestrictions\n },\n invalidationKeys: [ 'privacy', 'sent:shares' ],\n normalize: false,\n success,\n error\n };\n },\n\n createAnonSession(\n shareId: string,\n sessionId: string,\n sessionName: string\n ): Flight.Request {\n return {\n url: `{gateway}/v1/shares/${shareId}/anon-sessions`,\n key: 'create:anon:session',\n type: HttpVerbs.POST,\n data: {\n sessionId,\n sessionName\n },\n normalize: false\n };\n },\n\n getAnonSessions(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v1/shares/${shareId}/anon-sessions`,\n key: `anon:session:${shareId}`,\n normalize: false\n };\n }\n};"],"names":["normalizeOptions","SharedObjectQueries","getShareRecipientQuery","ids","customerId","ShareRequests","shareId","success","error","idsQueries","id","assocQueries","key","PermissionFilterOption","params","UrlHelper","objectId","data","always","HttpVerbs","updateStateKey","state","recipientId","recipients","r","cursor","resp","shareLink","password","privacy","overrideRestrictions","sessionId","sessionName"],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import{r as X,j as H,a1 as wt,L as vi,F as wi,al as bi,bu as yi,w as xi,bv as zt,an as Di}from"./app-5iiM5qQY.js";/*!
2
- * Cropper.js v1.5.6
3
- * https://fengyuanchen.github.io/cropperjs
4
- *
5
- * Copyright 2015-present Chen Fengyuan
6
- * Released under the MIT license
7
- *
8
- * Date: 2019-10-04T04:33:48.372Z
9
- */function pt(a){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?pt=function(t){return typeof t}:pt=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pt(a)}function Ei(a,t){if(!(a instanceof t))throw new TypeError("Cannot call a class as a function")}function Ht(a,t){for(var e=0;e<t.length;e++){var i=t[e];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(a,i.key,i)}}function Mi(a,t,e){return t&&Ht(a.prototype,t),e&&Ht(a,e),a}function Ci(a,t,e){return t in a?Object.defineProperty(a,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):a[t]=e,a}function Xt(a,t){var e=Object.keys(a);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(a);t&&(i=i.filter(function(n){return Object.getOwnPropertyDescriptor(a,n).enumerable})),e.push.apply(e,i)}return e}function ii(a){for(var t=1;t<arguments.length;t++){var e=arguments[t]!=null?arguments[t]:{};t%2?Xt(e,!0).forEach(function(i){Ci(a,i,e[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(e)):Xt(e).forEach(function(i){Object.defineProperty(a,i,Object.getOwnPropertyDescriptor(e,i))})}return a}function ei(a){return Ti(a)||Oi(a)||Ni()}function Ti(a){if(Array.isArray(a)){for(var t=0,e=new Array(a.length);t<a.length;t++)e[t]=a[t];return e}}function Oi(a){if(Symbol.iterator in Object(a)||Object.prototype.toString.call(a)==="[object Arguments]")return Array.from(a)}function Ni(){throw new TypeError("Invalid attempt to spread non-iterable instance")}var gt=typeof window<"u"&&typeof window.document<"u",Y=gt?window:{},At=gt?"ontouchstart"in Y.document.documentElement:!1,St=gt?"PointerEvent"in Y:!1,y="cropper",Rt="all",ai="crop",ri="move",ni="zoom",Z="e",F="w",K="s",U="n",at="ne",rt="nw",nt="se",ot="sw",xt="".concat(y,"-crop"),Yt="".concat(y,"-disabled"),S="".concat(y,"-hidden"),Wt="".concat(y,"-hide"),Ai="".concat(y,"-invisible"),ut="".concat(y,"-modal"),Dt="".concat(y,"-move"),ht="".concat(y,"Action"),ft="".concat(y,"Preview"),It="crop",oi="move",si="none",Et="crop",Mt="cropend",Ct="cropmove",Tt="cropstart",Ut="dblclick",Si=At?"touchstart":"mousedown",Ri=At?"touchmove":"mousemove",Ii=At?"touchend touchcancel":"mouseup",jt=St?"pointerdown":Si,Vt=St?"pointermove":Ri,Gt=St?"pointerup pointercancel":Ii,$t="ready",qt="resize",Zt="wheel",Ot="zoom",Ft="image/jpeg",Li=/^e|w|s|n|se|sw|ne|nw|all|crop|move|zoom$/,Bi=/^data:/,Pi=/^data:image\/jpeg;base64,/,ki=/^img|canvas$/i,_i=200,zi=100,Qt={viewMode:0,dragMode:It,initialAspectRatio:NaN,aspectRatio:NaN,data:null,preview:"",responsive:!0,restore:!0,checkCrossOrigin:!0,checkOrientation:!0,modal:!0,guides:!0,center:!0,highlight:!0,background:!0,autoCrop:!0,autoCropArea:.8,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,wheelZoomRatio:.1,cropBoxMovable:!0,cropBoxResizable:!0,toggleDragModeOnDblclick:!0,minCanvasWidth:0,minCanvasHeight:0,minCropBoxWidth:0,minCropBoxHeight:0,minContainerWidth:200,minContainerHeight:100,ready:null,cropstart:null,cropmove:null,cropend:null,crop:null,zoom:null},Hi='<div class="cropper-container" touch-action="none"><div class="cropper-wrap-box"><div class="cropper-canvas"></div></div><div class="cropper-drag-box"></div><div class="cropper-crop-box"><span class="cropper-view-box"></span><span class="cropper-dashed dashed-h"></span><span class="cropper-dashed dashed-v"></span><span class="cropper-center"></span><span class="cropper-face"></span><span class="cropper-line line-e" data-cropper-action="e"></span><span class="cropper-line line-n" data-cropper-action="n"></span><span class="cropper-line line-w" data-cropper-action="w"></span><span class="cropper-line line-s" data-cropper-action="s"></span><span class="cropper-point point-e" data-cropper-action="e"></span><span class="cropper-point point-n" data-cropper-action="n"></span><span class="cropper-point point-w" data-cropper-action="w"></span><span class="cropper-point point-s" data-cropper-action="s"></span><span class="cropper-point point-ne" data-cropper-action="ne"></span><span class="cropper-point point-nw" data-cropper-action="nw"></span><span class="cropper-point point-sw" data-cropper-action="sw"></span><span class="cropper-point point-se" data-cropper-action="se"></span></div></div>',Xi=Number.isNaN||Y.isNaN;function m(a){return typeof a=="number"&&!Xi(a)}var Kt=function(t){return t>0&&t<1/0};function bt(a){return typeof a>"u"}function Q(a){return pt(a)==="object"&&a!==null}var Yi=Object.prototype.hasOwnProperty;function J(a){if(!Q(a))return!1;try{var t=a.constructor,e=t.prototype;return t&&e&&Yi.call(e,"isPrototypeOf")}catch{return!1}}function A(a){return typeof a=="function"}var Wi=Array.prototype.slice;function hi(a){return Array.from?Array.from(a):Wi.call(a)}function E(a,t){return a&&A(t)&&(Array.isArray(a)||m(a.length)?hi(a).forEach(function(e,i){t.call(a,e,i,a)}):Q(a)&&Object.keys(a).forEach(function(e){t.call(a,a[e],e,a)})),a}var x=Object.assign||function(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];return Q(t)&&i.length>0&&i.forEach(function(r){Q(r)&&Object.keys(r).forEach(function(o){t[o]=r[o]})}),t},Ui=/\.\d*(?:0|9){12}\d*$/;function it(a){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1e11;return Ui.test(a)?Math.round(a*t)/t:a}var ji=/^width|height|left|top|marginLeft|marginTop$/;function j(a,t){var e=a.style;E(t,function(i,n){ji.test(n)&&m(i)&&(i="".concat(i,"px")),e[n]=i})}function Vi(a,t){return a.classList?a.classList.contains(t):a.className.indexOf(t)>-1}function O(a,t){if(t){if(m(a.length)){E(a,function(i){O(i,t)});return}if(a.classList){a.classList.add(t);return}var e=a.className.trim();e?e.indexOf(t)<0&&(a.className="".concat(e," ").concat(t)):a.className=t}}function k(a,t){if(t){if(m(a.length)){E(a,function(e){k(e,t)});return}if(a.classList){a.classList.remove(t);return}a.className.indexOf(t)>=0&&(a.className=a.className.replace(t,""))}}function tt(a,t,e){if(t){if(m(a.length)){E(a,function(i){tt(i,t,e)});return}e?O(a,t):k(a,t)}}var Gi=/([a-z\d])([A-Z])/g;function Lt(a){return a.replace(Gi,"$1-$2").toLowerCase()}function Nt(a,t){return Q(a[t])?a[t]:a.dataset?a.dataset[t]:a.getAttribute("data-".concat(Lt(t)))}function ct(a,t,e){Q(e)?a[t]=e:a.dataset?a.dataset[t]=e:a.setAttribute("data-".concat(Lt(t)),e)}function $i(a,t){if(Q(a[t]))try{delete a[t]}catch{a[t]=void 0}else if(a.dataset)try{delete a.dataset[t]}catch{a.dataset[t]=void 0}else a.removeAttribute("data-".concat(Lt(t)))}var ci=/\s\s*/,li=(function(){var a=!1;if(gt){var t=!1,e=function(){},i=Object.defineProperty({},"once",{get:function(){return a=!0,t},set:function(r){t=r}});Y.addEventListener("test",e,i),Y.removeEventListener("test",e,i)}return a})();function B(a,t,e){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},n=e;t.trim().split(ci).forEach(function(r){if(!li){var o=a.listeners;o&&o[r]&&o[r][e]&&(n=o[r][e],delete o[r][e],Object.keys(o[r]).length===0&&delete o[r],Object.keys(o).length===0&&delete a.listeners)}a.removeEventListener(r,n,i)})}function L(a,t,e){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},n=e;t.trim().split(ci).forEach(function(r){if(i.once&&!li){var o=a.listeners,s=o===void 0?{}:o;n=function(){delete s[r][e],a.removeEventListener(r,n,i);for(var l=arguments.length,c=new Array(l),h=0;h<l;h++)c[h]=arguments[h];e.apply(a,c)},s[r]||(s[r]={}),s[r][e]&&a.removeEventListener(r,s[r][e],i),s[r][e]=n,a.listeners=s}a.addEventListener(r,n,i)})}function et(a,t,e){var i;return A(Event)&&A(CustomEvent)?i=new CustomEvent(t,{detail:e,bubbles:!0,cancelable:!0}):(i=document.createEvent("CustomEvent"),i.initCustomEvent(t,!0,!0,e)),a.dispatchEvent(i)}function fi(a){var t=a.getBoundingClientRect();return{left:t.left+(window.pageXOffset-document.documentElement.clientLeft),top:t.top+(window.pageYOffset-document.documentElement.clientTop)}}var yt=Y.location,qi=/^(\w+:)\/\/([^:/?#]*):?(\d*)/i;function Jt(a){var t=a.match(qi);return t!==null&&(t[1]!==yt.protocol||t[2]!==yt.hostname||t[3]!==yt.port)}function ti(a){var t="timestamp=".concat(new Date().getTime());return a+(a.indexOf("?")===-1?"?":"&")+t}function st(a){var t=a.rotate,e=a.scaleX,i=a.scaleY,n=a.translateX,r=a.translateY,o=[];m(n)&&n!==0&&o.push("translateX(".concat(n,"px)")),m(r)&&r!==0&&o.push("translateY(".concat(r,"px)")),m(t)&&t!==0&&o.push("rotate(".concat(t,"deg)")),m(e)&&e!==1&&o.push("scaleX(".concat(e,")")),m(i)&&i!==1&&o.push("scaleY(".concat(i,")"));var s=o.length?o.join(" "):"none";return{WebkitTransform:s,msTransform:s,transform:s}}function Zi(a){var t=ii({},a),e=[];return E(a,function(i,n){delete t[n],E(t,function(r){var o=Math.abs(i.startX-r.startX),s=Math.abs(i.startY-r.startY),f=Math.abs(i.endX-r.endX),l=Math.abs(i.endY-r.endY),c=Math.sqrt(o*o+s*s),h=Math.sqrt(f*f+l*l),d=(h-c)/c;e.push(d)})}),e.sort(function(i,n){return Math.abs(i)<Math.abs(n)}),e[0]}function dt(a,t){var e=a.pageX,i=a.pageY,n={endX:e,endY:i};return t?n:ii({startX:e,startY:i},n)}function Fi(a){var t=0,e=0,i=0;return E(a,function(n){var r=n.startX,o=n.startY;t+=r,e+=o,i+=1}),t/=i,e/=i,{pageX:t,pageY:e}}function V(a){var t=a.aspectRatio,e=a.height,i=a.width,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"contain",r=Kt(i),o=Kt(e);if(r&&o){var s=e*t;n==="contain"&&s>i||n==="cover"&&s<i?e=i/t:i=e*t}else r?e=i/t:o&&(i=e*t);return{width:i,height:e}}function Qi(a){var t=a.width,e=a.height,i=a.degree;if(i=Math.abs(i)%180,i===90)return{width:e,height:t};var n=i%90*Math.PI/180,r=Math.sin(n),o=Math.cos(n),s=t*o+e*r,f=t*r+e*o;return i>90?{width:f,height:s}:{width:s,height:f}}function Ki(a,t,e,i){var n=t.aspectRatio,r=t.naturalWidth,o=t.naturalHeight,s=t.rotate,f=s===void 0?0:s,l=t.scaleX,c=l===void 0?1:l,h=t.scaleY,d=h===void 0?1:h,u=e.aspectRatio,g=e.naturalWidth,b=e.naturalHeight,v=i.fillColor,M=v===void 0?"transparent":v,T=i.imageSmoothingEnabled,D=T===void 0?!0:T,_=i.imageSmoothingQuality,R=_===void 0?"low":_,p=i.maxWidth,w=p===void 0?1/0:p,C=i.maxHeight,I=C===void 0?1/0:C,z=i.minWidth,G=z===void 0?0:z,$=i.minHeight,W=$===void 0?0:$,P=document.createElement("canvas"),N=P.getContext("2d"),q=V({aspectRatio:u,width:w,height:I}),lt=V({aspectRatio:u,width:G,height:W},"cover"),mt=Math.min(q.width,Math.max(lt.width,g)),vt=Math.min(q.height,Math.max(lt.height,b)),Bt=V({aspectRatio:n,width:w,height:I}),Pt=V({aspectRatio:n,width:G,height:W},"cover"),kt=Math.min(Bt.width,Math.max(Pt.width,r)),_t=Math.min(Bt.height,Math.max(Pt.height,o)),gi=[-kt/2,-_t/2,kt,_t];return P.width=it(mt),P.height=it(vt),N.fillStyle=M,N.fillRect(0,0,mt,vt),N.save(),N.translate(mt/2,vt/2),N.rotate(f*Math.PI/180),N.scale(c,d),N.imageSmoothingEnabled=D,N.imageSmoothingQuality=R,N.drawImage.apply(N,[a].concat(ei(gi.map(function(mi){return Math.floor(it(mi))})))),N.restore(),P}var di=String.fromCharCode;function Ji(a,t,e){var i="";e+=t;for(var n=t;n<e;n+=1)i+=di(a.getUint8(n));return i}var te=/^data:.*,/;function ie(a){var t=a.replace(te,""),e=atob(t),i=new ArrayBuffer(e.length),n=new Uint8Array(i);return E(n,function(r,o){n[o]=e.charCodeAt(o)}),i}function ee(a,t){for(var e=[],i=8192,n=new Uint8Array(a);n.length>0;)e.push(di.apply(null,hi(n.subarray(0,i)))),n=n.subarray(i);return"data:".concat(t,";base64,").concat(btoa(e.join("")))}function ae(a){var t=new DataView(a),e;try{var i,n,r;if(t.getUint8(0)===255&&t.getUint8(1)===216)for(var o=t.byteLength,s=2;s+1<o;){if(t.getUint8(s)===255&&t.getUint8(s+1)===225){n=s;break}s+=1}if(n){var f=n+4,l=n+10;if(Ji(t,f,4)==="Exif"){var c=t.getUint16(l);if(i=c===18761,(i||c===19789)&&t.getUint16(l+2,i)===42){var h=t.getUint32(l+4,i);h>=8&&(r=l+h)}}}if(r){var d=t.getUint16(r,i),u,g;for(g=0;g<d;g+=1)if(u=r+g*12+2,t.getUint16(u,i)===274){u+=8,e=t.getUint16(u,i),t.setUint16(u,1,i);break}}}catch{e=1}return e}function re(a){var t=0,e=1,i=1;switch(a){case 2:e=-1;break;case 3:t=-180;break;case 4:i=-1;break;case 5:t=90,i=-1;break;case 6:t=90;break;case 7:t=90,e=-1;break;case 8:t=-90;break}return{rotate:t,scaleX:e,scaleY:i}}var ne={render:function(){this.initContainer(),this.initCanvas(),this.initCropBox(),this.renderCanvas(),this.cropped&&this.renderCropBox()},initContainer:function(){var t=this.element,e=this.options,i=this.container,n=this.cropper;O(n,S),k(t,S);var r={width:Math.max(i.offsetWidth,Number(e.minContainerWidth)||200),height:Math.max(i.offsetHeight,Number(e.minContainerHeight)||100)};this.containerData=r,j(n,{width:r.width,height:r.height}),O(t,S),k(n,S)},initCanvas:function(){var t=this.containerData,e=this.imageData,i=this.options.viewMode,n=Math.abs(e.rotate)%180===90,r=n?e.naturalHeight:e.naturalWidth,o=n?e.naturalWidth:e.naturalHeight,s=r/o,f=t.width,l=t.height;t.height*s>t.width?i===3?f=t.height*s:l=t.width/s:i===3?l=t.width/s:f=t.height*s;var c={aspectRatio:s,naturalWidth:r,naturalHeight:o,width:f,height:l};c.left=(t.width-f)/2,c.top=(t.height-l)/2,c.oldLeft=c.left,c.oldTop=c.top,this.canvasData=c,this.limited=i===1||i===2,this.limitCanvas(!0,!0),this.initialImageData=x({},e),this.initialCanvasData=x({},c)},limitCanvas:function(t,e){var i=this.options,n=this.containerData,r=this.canvasData,o=this.cropBoxData,s=i.viewMode,f=r.aspectRatio,l=this.cropped&&o;if(t){var c=Number(i.minCanvasWidth)||0,h=Number(i.minCanvasHeight)||0;s>1?(c=Math.max(c,n.width),h=Math.max(h,n.height),s===3&&(h*f>c?c=h*f:h=c/f)):s>0&&(c?c=Math.max(c,l?o.width:0):h?h=Math.max(h,l?o.height:0):l&&(c=o.width,h=o.height,h*f>c?c=h*f:h=c/f));var d=V({aspectRatio:f,width:c,height:h});c=d.width,h=d.height,r.minWidth=c,r.minHeight=h,r.maxWidth=1/0,r.maxHeight=1/0}if(e)if(s>(l?0:1)){var u=n.width-r.width,g=n.height-r.height;r.minLeft=Math.min(0,u),r.minTop=Math.min(0,g),r.maxLeft=Math.max(0,u),r.maxTop=Math.max(0,g),l&&this.limited&&(r.minLeft=Math.min(o.left,o.left+(o.width-r.width)),r.minTop=Math.min(o.top,o.top+(o.height-r.height)),r.maxLeft=o.left,r.maxTop=o.top,s===2&&(r.width>=n.width&&(r.minLeft=Math.min(0,u),r.maxLeft=Math.max(0,u)),r.height>=n.height&&(r.minTop=Math.min(0,g),r.maxTop=Math.max(0,g))))}else r.minLeft=-r.width,r.minTop=-r.height,r.maxLeft=n.width,r.maxTop=n.height},renderCanvas:function(t,e){var i=this.canvasData,n=this.imageData;if(e){var r=Qi({width:n.naturalWidth*Math.abs(n.scaleX||1),height:n.naturalHeight*Math.abs(n.scaleY||1),degree:n.rotate||0}),o=r.width,s=r.height,f=i.width*(o/i.naturalWidth),l=i.height*(s/i.naturalHeight);i.left-=(f-i.width)/2,i.top-=(l-i.height)/2,i.width=f,i.height=l,i.aspectRatio=o/s,i.naturalWidth=o,i.naturalHeight=s,this.limitCanvas(!0,!1)}(i.width>i.maxWidth||i.width<i.minWidth)&&(i.left=i.oldLeft),(i.height>i.maxHeight||i.height<i.minHeight)&&(i.top=i.oldTop),i.width=Math.min(Math.max(i.width,i.minWidth),i.maxWidth),i.height=Math.min(Math.max(i.height,i.minHeight),i.maxHeight),this.limitCanvas(!1,!0),i.left=Math.min(Math.max(i.left,i.minLeft),i.maxLeft),i.top=Math.min(Math.max(i.top,i.minTop),i.maxTop),i.oldLeft=i.left,i.oldTop=i.top,j(this.canvas,x({width:i.width,height:i.height},st({translateX:i.left,translateY:i.top}))),this.renderImage(t),this.cropped&&this.limited&&this.limitCropBox(!0,!0)},renderImage:function(t){var e=this.canvasData,i=this.imageData,n=i.naturalWidth*(e.width/e.naturalWidth),r=i.naturalHeight*(e.height/e.naturalHeight);x(i,{width:n,height:r,left:(e.width-n)/2,top:(e.height-r)/2}),j(this.image,x({width:i.width,height:i.height},st(x({translateX:i.left,translateY:i.top},i)))),t&&this.output()},initCropBox:function(){var t=this.options,e=this.canvasData,i=t.aspectRatio||t.initialAspectRatio,n=Number(t.autoCropArea)||.8,r={width:e.width,height:e.height};i&&(e.height*i>e.width?r.height=r.width/i:r.width=r.height*i),this.cropBoxData=r,this.limitCropBox(!0,!0),r.width=Math.min(Math.max(r.width,r.minWidth),r.maxWidth),r.height=Math.min(Math.max(r.height,r.minHeight),r.maxHeight),r.width=Math.max(r.minWidth,r.width*n),r.height=Math.max(r.minHeight,r.height*n),r.left=e.left+(e.width-r.width)/2,r.top=e.top+(e.height-r.height)/2,r.oldLeft=r.left,r.oldTop=r.top,this.initialCropBoxData=x({},r)},limitCropBox:function(t,e){var i=this.options,n=this.containerData,r=this.canvasData,o=this.cropBoxData,s=this.limited,f=i.aspectRatio;if(t){var l=Number(i.minCropBoxWidth)||0,c=Number(i.minCropBoxHeight)||0,h=s?Math.min(n.width,r.width,r.width+r.left,n.width-r.left):n.width,d=s?Math.min(n.height,r.height,r.height+r.top,n.height-r.top):n.height;l=Math.min(l,n.width),c=Math.min(c,n.height),f&&(l&&c?c*f>l?c=l/f:l=c*f:l?c=l/f:c&&(l=c*f),d*f>h?d=h/f:h=d*f),o.minWidth=Math.min(l,h),o.minHeight=Math.min(c,d),o.maxWidth=h,o.maxHeight=d}e&&(s?(o.minLeft=Math.max(0,r.left),o.minTop=Math.max(0,r.top),o.maxLeft=Math.min(n.width,r.left+r.width)-o.width,o.maxTop=Math.min(n.height,r.top+r.height)-o.height):(o.minLeft=0,o.minTop=0,o.maxLeft=n.width-o.width,o.maxTop=n.height-o.height))},renderCropBox:function(){var t=this.options,e=this.containerData,i=this.cropBoxData;(i.width>i.maxWidth||i.width<i.minWidth)&&(i.left=i.oldLeft),(i.height>i.maxHeight||i.height<i.minHeight)&&(i.top=i.oldTop),i.width=Math.min(Math.max(i.width,i.minWidth),i.maxWidth),i.height=Math.min(Math.max(i.height,i.minHeight),i.maxHeight),this.limitCropBox(!1,!0),i.left=Math.min(Math.max(i.left,i.minLeft),i.maxLeft),i.top=Math.min(Math.max(i.top,i.minTop),i.maxTop),i.oldLeft=i.left,i.oldTop=i.top,t.movable&&t.cropBoxMovable&&ct(this.face,ht,i.width>=e.width&&i.height>=e.height?ri:Rt),j(this.cropBox,x({width:i.width,height:i.height},st({translateX:i.left,translateY:i.top}))),this.cropped&&this.limited&&this.limitCanvas(!0,!0),this.disabled||this.output()},output:function(){this.preview(),et(this.element,Et,this.getData())}},oe={initPreview:function(){var t=this.element,e=this.crossOrigin,i=this.options.preview,n=e?this.crossOriginUrl:this.url,r=t.alt||"The image to preview",o=document.createElement("img");if(e&&(o.crossOrigin=e),o.src=n,o.alt=r,this.viewBox.appendChild(o),this.viewBoxImage=o,!!i){var s=i;typeof i=="string"?s=t.ownerDocument.querySelectorAll(i):i.querySelector&&(s=[i]),this.previews=s,E(s,function(f){var l=document.createElement("img");ct(f,ft,{width:f.offsetWidth,height:f.offsetHeight,html:f.innerHTML}),e&&(l.crossOrigin=e),l.src=n,l.alt=r,l.style.cssText='display:block;width:100%;height:auto;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;image-orientation:0deg!important;"',f.innerHTML="",f.appendChild(l)})}},resetPreview:function(){E(this.previews,function(t){var e=Nt(t,ft);j(t,{width:e.width,height:e.height}),t.innerHTML=e.html,$i(t,ft)})},preview:function(){var t=this.imageData,e=this.canvasData,i=this.cropBoxData,n=i.width,r=i.height,o=t.width,s=t.height,f=i.left-e.left-t.left,l=i.top-e.top-t.top;!this.cropped||this.disabled||(j(this.viewBoxImage,x({width:o,height:s},st(x({translateX:-f,translateY:-l},t)))),E(this.previews,function(c){var h=Nt(c,ft),d=h.width,u=h.height,g=d,b=u,v=1;n&&(v=d/n,b=r*v),r&&b>u&&(v=u/r,g=n*v,b=u),j(c,{width:g,height:b}),j(c.getElementsByTagName("img")[0],x({width:o*v,height:s*v},st(x({translateX:-f*v,translateY:-l*v},t))))}))}},se={bind:function(){var t=this.element,e=this.options,i=this.cropper;A(e.cropstart)&&L(t,Tt,e.cropstart),A(e.cropmove)&&L(t,Ct,e.cropmove),A(e.cropend)&&L(t,Mt,e.cropend),A(e.crop)&&L(t,Et,e.crop),A(e.zoom)&&L(t,Ot,e.zoom),L(i,jt,this.onCropStart=this.cropStart.bind(this)),e.zoomable&&e.zoomOnWheel&&L(i,Zt,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),e.toggleDragModeOnDblclick&&L(i,Ut,this.onDblclick=this.dblclick.bind(this)),L(t.ownerDocument,Vt,this.onCropMove=this.cropMove.bind(this)),L(t.ownerDocument,Gt,this.onCropEnd=this.cropEnd.bind(this)),e.responsive&&L(window,qt,this.onResize=this.resize.bind(this))},unbind:function(){var t=this.element,e=this.options,i=this.cropper;A(e.cropstart)&&B(t,Tt,e.cropstart),A(e.cropmove)&&B(t,Ct,e.cropmove),A(e.cropend)&&B(t,Mt,e.cropend),A(e.crop)&&B(t,Et,e.crop),A(e.zoom)&&B(t,Ot,e.zoom),B(i,jt,this.onCropStart),e.zoomable&&e.zoomOnWheel&&B(i,Zt,this.onWheel,{passive:!1,capture:!0}),e.toggleDragModeOnDblclick&&B(i,Ut,this.onDblclick),B(t.ownerDocument,Vt,this.onCropMove),B(t.ownerDocument,Gt,this.onCropEnd),e.responsive&&B(window,qt,this.onResize)}},he={resize:function(){var t=this.options,e=this.container,i=this.containerData,n=Number(t.minContainerWidth)||_i,r=Number(t.minContainerHeight)||zi;if(!(this.disabled||i.width<=n||i.height<=r)){var o=e.offsetWidth/i.width;if(o!==1||e.offsetHeight!==i.height){var s,f;t.restore&&(s=this.getCanvasData(),f=this.getCropBoxData()),this.render(),t.restore&&(this.setCanvasData(E(s,function(l,c){s[c]=l*o})),this.setCropBoxData(E(f,function(l,c){f[c]=l*o})))}}},dblclick:function(){this.disabled||this.options.dragMode===si||this.setDragMode(Vi(this.dragBox,xt)?oi:It)},wheel:function(t){var e=this,i=Number(this.options.wheelZoomRatio)||.1,n=1;this.disabled||(t.preventDefault(),!this.wheeling&&(this.wheeling=!0,setTimeout(function(){e.wheeling=!1},50),t.deltaY?n=t.deltaY>0?1:-1:t.wheelDelta?n=-t.wheelDelta/120:t.detail&&(n=t.detail>0?1:-1),this.zoom(-n*i,t)))},cropStart:function(t){var e=t.buttons,i=t.button;if(!(this.disabled||(t.type==="mousedown"||t.type==="pointerdown"&&t.pointerType==="mouse")&&(m(e)&&e!==1||m(i)&&i!==0||t.ctrlKey))){var n=this.options,r=this.pointers,o;t.changedTouches?E(t.changedTouches,function(s){r[s.identifier]=dt(s)}):r[t.pointerId||0]=dt(t),Object.keys(r).length>1&&n.zoomable&&n.zoomOnTouch?o=ni:o=Nt(t.target,ht),Li.test(o)&&et(this.element,Tt,{originalEvent:t,action:o})!==!1&&(t.preventDefault(),this.action=o,this.cropping=!1,o===ai&&(this.cropping=!0,O(this.dragBox,ut)))}},cropMove:function(t){var e=this.action;if(!(this.disabled||!e)){var i=this.pointers;t.preventDefault(),et(this.element,Ct,{originalEvent:t,action:e})!==!1&&(t.changedTouches?E(t.changedTouches,function(n){x(i[n.identifier]||{},dt(n,!0))}):x(i[t.pointerId||0]||{},dt(t,!0)),this.change(t))}},cropEnd:function(t){if(!this.disabled){var e=this.action,i=this.pointers;t.changedTouches?E(t.changedTouches,function(n){delete i[n.identifier]}):delete i[t.pointerId||0],e&&(t.preventDefault(),Object.keys(i).length||(this.action=""),this.cropping&&(this.cropping=!1,tt(this.dragBox,ut,this.cropped&&this.options.modal)),et(this.element,Mt,{originalEvent:t,action:e}))}}},ce={change:function(t){var e=this.options,i=this.canvasData,n=this.containerData,r=this.cropBoxData,o=this.pointers,s=this.action,f=e.aspectRatio,l=r.left,c=r.top,h=r.width,d=r.height,u=l+h,g=c+d,b=0,v=0,M=n.width,T=n.height,D=!0,_;!f&&t.shiftKey&&(f=h&&d?h/d:1),this.limited&&(b=r.minLeft,v=r.minTop,M=b+Math.min(n.width,i.width,i.left+i.width),T=v+Math.min(n.height,i.height,i.top+i.height));var R=o[Object.keys(o)[0]],p={x:R.endX-R.startX,y:R.endY-R.startY},w=function(I){switch(I){case Z:u+p.x>M&&(p.x=M-u);break;case F:l+p.x<b&&(p.x=b-l);break;case U:c+p.y<v&&(p.y=v-c);break;case K:g+p.y>T&&(p.y=T-g);break}};switch(s){case Rt:l+=p.x,c+=p.y;break;case Z:if(p.x>=0&&(u>=M||f&&(c<=v||g>=T))){D=!1;break}w(Z),h+=p.x,h<0&&(s=F,h=-h,l-=h),f&&(d=h/f,c+=(r.height-d)/2);break;case U:if(p.y<=0&&(c<=v||f&&(l<=b||u>=M))){D=!1;break}w(U),d-=p.y,c+=p.y,d<0&&(s=K,d=-d,c-=d),f&&(h=d*f,l+=(r.width-h)/2);break;case F:if(p.x<=0&&(l<=b||f&&(c<=v||g>=T))){D=!1;break}w(F),h-=p.x,l+=p.x,h<0&&(s=Z,h=-h,l-=h),f&&(d=h/f,c+=(r.height-d)/2);break;case K:if(p.y>=0&&(g>=T||f&&(l<=b||u>=M))){D=!1;break}w(K),d+=p.y,d<0&&(s=U,d=-d,c-=d),f&&(h=d*f,l+=(r.width-h)/2);break;case at:if(f){if(p.y<=0&&(c<=v||u>=M)){D=!1;break}w(U),d-=p.y,c+=p.y,h=d*f}else w(U),w(Z),p.x>=0?u<M?h+=p.x:p.y<=0&&c<=v&&(D=!1):h+=p.x,p.y<=0?c>v&&(d-=p.y,c+=p.y):(d-=p.y,c+=p.y);h<0&&d<0?(s=ot,d=-d,h=-h,c-=d,l-=h):h<0?(s=rt,h=-h,l-=h):d<0&&(s=nt,d=-d,c-=d);break;case rt:if(f){if(p.y<=0&&(c<=v||l<=b)){D=!1;break}w(U),d-=p.y,c+=p.y,h=d*f,l+=r.width-h}else w(U),w(F),p.x<=0?l>b?(h-=p.x,l+=p.x):p.y<=0&&c<=v&&(D=!1):(h-=p.x,l+=p.x),p.y<=0?c>v&&(d-=p.y,c+=p.y):(d-=p.y,c+=p.y);h<0&&d<0?(s=nt,d=-d,h=-h,c-=d,l-=h):h<0?(s=at,h=-h,l-=h):d<0&&(s=ot,d=-d,c-=d);break;case ot:if(f){if(p.x<=0&&(l<=b||g>=T)){D=!1;break}w(F),h-=p.x,l+=p.x,d=h/f}else w(K),w(F),p.x<=0?l>b?(h-=p.x,l+=p.x):p.y>=0&&g>=T&&(D=!1):(h-=p.x,l+=p.x),p.y>=0?g<T&&(d+=p.y):d+=p.y;h<0&&d<0?(s=at,d=-d,h=-h,c-=d,l-=h):h<0?(s=nt,h=-h,l-=h):d<0&&(s=rt,d=-d,c-=d);break;case nt:if(f){if(p.x>=0&&(u>=M||g>=T)){D=!1;break}w(Z),h+=p.x,d=h/f}else w(K),w(Z),p.x>=0?u<M?h+=p.x:p.y>=0&&g>=T&&(D=!1):h+=p.x,p.y>=0?g<T&&(d+=p.y):d+=p.y;h<0&&d<0?(s=rt,d=-d,h=-h,c-=d,l-=h):h<0?(s=ot,h=-h,l-=h):d<0&&(s=at,d=-d,c-=d);break;case ri:this.move(p.x,p.y),D=!1;break;case ni:this.zoom(Zi(o),t),D=!1;break;case ai:if(!p.x||!p.y){D=!1;break}_=fi(this.cropper),l=R.startX-_.left,c=R.startY-_.top,h=r.minWidth,d=r.minHeight,p.x>0?s=p.y>0?nt:at:p.x<0&&(l-=h,s=p.y>0?ot:rt),p.y<0&&(c-=d),this.cropped||(k(this.cropBox,S),this.cropped=!0,this.limited&&this.limitCropBox(!0,!0));break}D&&(r.width=h,r.height=d,r.left=l,r.top=c,this.action=s,this.renderCropBox()),E(o,function(C){C.startX=C.endX,C.startY=C.endY})}},le={crop:function(){return this.ready&&!this.cropped&&!this.disabled&&(this.cropped=!0,this.limitCropBox(!0,!0),this.options.modal&&O(this.dragBox,ut),k(this.cropBox,S),this.setCropBoxData(this.initialCropBoxData)),this},reset:function(){return this.ready&&!this.disabled&&(this.imageData=x({},this.initialImageData),this.canvasData=x({},this.initialCanvasData),this.cropBoxData=x({},this.initialCropBoxData),this.renderCanvas(),this.cropped&&this.renderCropBox()),this},clear:function(){return this.cropped&&!this.disabled&&(x(this.cropBoxData,{left:0,top:0,width:0,height:0}),this.cropped=!1,this.renderCropBox(),this.limitCanvas(!0,!0),this.renderCanvas(),k(this.dragBox,ut),O(this.cropBox,S)),this},replace:function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return!this.disabled&&t&&(this.isImg&&(this.element.src=t),e?(this.url=t,this.image.src=t,this.ready&&(this.viewBoxImage.src=t,E(this.previews,function(i){i.getElementsByTagName("img")[0].src=t}))):(this.isImg&&(this.replaced=!0),this.options.data=null,this.uncreate(),this.load(t))),this},enable:function(){return this.ready&&this.disabled&&(this.disabled=!1,k(this.cropper,Yt)),this},disable:function(){return this.ready&&!this.disabled&&(this.disabled=!0,O(this.cropper,Yt)),this},destroy:function(){var t=this.element;return t[y]?(t[y]=void 0,this.isImg&&this.replaced&&(t.src=this.originalUrl),this.uncreate(),this):this},move:function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t,i=this.canvasData,n=i.left,r=i.top;return this.moveTo(bt(t)?t:n+Number(t),bt(e)?e:r+Number(e))},moveTo:function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t,i=this.canvasData,n=!1;return t=Number(t),e=Number(e),this.ready&&!this.disabled&&this.options.movable&&(m(t)&&(i.left=t,n=!0),m(e)&&(i.top=e,n=!0),n&&this.renderCanvas(!0)),this},zoom:function(t,e){var i=this.canvasData;return t=Number(t),t<0?t=1/(1-t):t=1+t,this.zoomTo(i.width*t/i.naturalWidth,null,e)},zoomTo:function(t,e,i){var n=this.options,r=this.canvasData,o=r.width,s=r.height,f=r.naturalWidth,l=r.naturalHeight;if(t=Number(t),t>=0&&this.ready&&!this.disabled&&n.zoomable){var c=f*t,h=l*t;if(et(this.element,Ot,{ratio:t,oldRatio:o/f,originalEvent:i})===!1)return this;if(i){var d=this.pointers,u=fi(this.cropper),g=d&&Object.keys(d).length?Fi(d):{pageX:i.pageX,pageY:i.pageY};r.left-=(c-o)*((g.pageX-u.left-r.left)/o),r.top-=(h-s)*((g.pageY-u.top-r.top)/s)}else J(e)&&m(e.x)&&m(e.y)?(r.left-=(c-o)*((e.x-r.left)/o),r.top-=(h-s)*((e.y-r.top)/s)):(r.left-=(c-o)/2,r.top-=(h-s)/2);r.width=c,r.height=h,this.renderCanvas(!0)}return this},rotate:function(t){return this.rotateTo((this.imageData.rotate||0)+Number(t))},rotateTo:function(t){return t=Number(t),m(t)&&this.ready&&!this.disabled&&this.options.rotatable&&(this.imageData.rotate=t%360,this.renderCanvas(!0,!0)),this},scaleX:function(t){var e=this.imageData.scaleY;return this.scale(t,m(e)?e:1)},scaleY:function(t){var e=this.imageData.scaleX;return this.scale(m(e)?e:1,t)},scale:function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t,i=this.imageData,n=!1;return t=Number(t),e=Number(e),this.ready&&!this.disabled&&this.options.scalable&&(m(t)&&(i.scaleX=t,n=!0),m(e)&&(i.scaleY=e,n=!0),n&&this.renderCanvas(!0,!0)),this},getData:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.options,i=this.imageData,n=this.canvasData,r=this.cropBoxData,o;if(this.ready&&this.cropped){o={x:r.left-n.left,y:r.top-n.top,width:r.width,height:r.height};var s=i.width/i.naturalWidth;if(E(o,function(c,h){o[h]=c/s}),t){var f=Math.round(o.y+o.height),l=Math.round(o.x+o.width);o.x=Math.round(o.x),o.y=Math.round(o.y),o.width=l-o.x,o.height=f-o.y}}else o={x:0,y:0,width:0,height:0};return e.rotatable&&(o.rotate=i.rotate||0),e.scalable&&(o.scaleX=i.scaleX||1,o.scaleY=i.scaleY||1),o},setData:function(t){var e=this.options,i=this.imageData,n=this.canvasData,r={};if(this.ready&&!this.disabled&&J(t)){var o=!1;e.rotatable&&m(t.rotate)&&t.rotate!==i.rotate&&(i.rotate=t.rotate,o=!0),e.scalable&&(m(t.scaleX)&&t.scaleX!==i.scaleX&&(i.scaleX=t.scaleX,o=!0),m(t.scaleY)&&t.scaleY!==i.scaleY&&(i.scaleY=t.scaleY,o=!0)),o&&this.renderCanvas(!0,!0);var s=i.width/i.naturalWidth;m(t.x)&&(r.left=t.x*s+n.left),m(t.y)&&(r.top=t.y*s+n.top),m(t.width)&&(r.width=t.width*s),m(t.height)&&(r.height=t.height*s),this.setCropBoxData(r)}return this},getContainerData:function(){return this.ready?x({},this.containerData):{}},getImageData:function(){return this.sized?x({},this.imageData):{}},getCanvasData:function(){var t=this.canvasData,e={};return this.ready&&E(["left","top","width","height","naturalWidth","naturalHeight"],function(i){e[i]=t[i]}),e},setCanvasData:function(t){var e=this.canvasData,i=e.aspectRatio;return this.ready&&!this.disabled&&J(t)&&(m(t.left)&&(e.left=t.left),m(t.top)&&(e.top=t.top),m(t.width)?(e.width=t.width,e.height=t.width/i):m(t.height)&&(e.height=t.height,e.width=t.height*i),this.renderCanvas(!0)),this},getCropBoxData:function(){var t=this.cropBoxData,e;return this.ready&&this.cropped&&(e={left:t.left,top:t.top,width:t.width,height:t.height}),e||{}},setCropBoxData:function(t){var e=this.cropBoxData,i=this.options.aspectRatio,n,r;return this.ready&&this.cropped&&!this.disabled&&J(t)&&(m(t.left)&&(e.left=t.left),m(t.top)&&(e.top=t.top),m(t.width)&&t.width!==e.width&&(n=!0,e.width=t.width),m(t.height)&&t.height!==e.height&&(r=!0,e.height=t.height),i&&(n?e.height=e.width/i:r&&(e.width=e.height*i)),this.renderCropBox()),this},getCroppedCanvas:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!this.ready||!window.HTMLCanvasElement)return null;var e=this.canvasData,i=Ki(this.image,this.imageData,e,t);if(!this.cropped)return i;var n=this.getData(),r=n.x,o=n.y,s=n.width,f=n.height,l=i.width/Math.floor(e.naturalWidth);l!==1&&(r*=l,o*=l,s*=l,f*=l);var c=s/f,h=V({aspectRatio:c,width:t.maxWidth||1/0,height:t.maxHeight||1/0}),d=V({aspectRatio:c,width:t.minWidth||0,height:t.minHeight||0},"cover"),u=V({aspectRatio:c,width:t.width||(l!==1?i.width:s),height:t.height||(l!==1?i.height:f)}),g=u.width,b=u.height;g=Math.min(h.width,Math.max(d.width,g)),b=Math.min(h.height,Math.max(d.height,b));var v=document.createElement("canvas"),M=v.getContext("2d");v.width=it(g),v.height=it(b),M.fillStyle=t.fillColor||"transparent",M.fillRect(0,0,g,b);var T=t.imageSmoothingEnabled,D=T===void 0?!0:T,_=t.imageSmoothingQuality;M.imageSmoothingEnabled=D,_&&(M.imageSmoothingQuality=_);var R=i.width,p=i.height,w=r,C=o,I,z,G,$,W,P;w<=-s||w>R?(w=0,I=0,G=0,W=0):w<=0?(G=-w,w=0,I=Math.min(R,s+w),W=I):w<=R&&(G=0,I=Math.min(s,R-w),W=I),I<=0||C<=-f||C>p?(C=0,z=0,$=0,P=0):C<=0?($=-C,C=0,z=Math.min(p,f+C),P=z):C<=p&&($=0,z=Math.min(f,p-C),P=z);var N=[w,C,I,z];if(W>0&&P>0){var q=g/s;N.push(G*q,$*q,W*q,P*q)}return M.drawImage.apply(M,[i].concat(ei(N.map(function(lt){return Math.floor(it(lt))})))),v},setAspectRatio:function(t){var e=this.options;return!this.disabled&&!bt(t)&&(e.aspectRatio=Math.max(0,t)||NaN,this.ready&&(this.initCropBox(),this.cropped&&this.renderCropBox())),this},setDragMode:function(t){var e=this.options,i=this.dragBox,n=this.face;if(this.ready&&!this.disabled){var r=t===It,o=e.movable&&t===oi;t=r||o?t:si,e.dragMode=t,ct(i,ht,t),tt(i,xt,r),tt(i,Dt,o),e.cropBoxMovable||(ct(n,ht,t),tt(n,xt,r),tt(n,Dt,o))}return this}},fe=Y.Cropper,pi=(function(){function a(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(Ei(this,a),!t||!ki.test(t.tagName))throw new Error("The first argument is required and must be an <img> or <canvas> element.");this.element=t,this.options=x({},Qt,J(e)&&e),this.cropped=!1,this.disabled=!1,this.pointers={},this.ready=!1,this.reloading=!1,this.replaced=!1,this.sized=!1,this.sizing=!1,this.init()}return Mi(a,[{key:"init",value:function(){var e=this.element,i=e.tagName.toLowerCase(),n;if(!e[y]){if(e[y]=this,i==="img"){if(this.isImg=!0,n=e.getAttribute("src")||"",this.originalUrl=n,!n)return;n=e.src}else i==="canvas"&&window.HTMLCanvasElement&&(n=e.toDataURL());this.load(n)}}},{key:"load",value:function(e){var i=this;if(e){this.url=e,this.imageData={};var n=this.element,r=this.options;if(!r.rotatable&&!r.scalable&&(r.checkOrientation=!1),!r.checkOrientation||!window.ArrayBuffer){this.clone();return}if(Bi.test(e)){Pi.test(e)?this.read(ie(e)):this.clone();return}var o=new XMLHttpRequest,s=this.clone.bind(this);this.reloading=!0,this.xhr=o,o.onabort=s,o.onerror=s,o.ontimeout=s,o.onprogress=function(){o.getResponseHeader("content-type")!==Ft&&o.abort()},o.onload=function(){i.read(o.response)},o.onloadend=function(){i.reloading=!1,i.xhr=null},r.checkCrossOrigin&&Jt(e)&&n.crossOrigin&&(e=ti(e)),o.open("GET",e),o.responseType="arraybuffer",o.withCredentials=n.crossOrigin==="use-credentials",o.send()}}},{key:"read",value:function(e){var i=this.options,n=this.imageData,r=ae(e),o=0,s=1,f=1;if(r>1){this.url=ee(e,Ft);var l=re(r);o=l.rotate,s=l.scaleX,f=l.scaleY}i.rotatable&&(n.rotate=o),i.scalable&&(n.scaleX=s,n.scaleY=f),this.clone()}},{key:"clone",value:function(){var e=this.element,i=this.url,n=e.crossOrigin,r=i;this.options.checkCrossOrigin&&Jt(i)&&(n||(n="anonymous"),r=ti(i)),this.crossOrigin=n,this.crossOriginUrl=r;var o=document.createElement("img");n&&(o.crossOrigin=n),o.src=r||i,o.alt=e.alt||"The image to crop",this.image=o,o.onload=this.start.bind(this),o.onerror=this.stop.bind(this),O(o,Wt),e.parentNode.insertBefore(o,e.nextSibling)}},{key:"start",value:function(){var e=this,i=this.image;i.onload=null,i.onerror=null,this.sizing=!0;var n=Y.navigator&&/(?:iPad|iPhone|iPod).*?AppleWebKit/i.test(Y.navigator.userAgent),r=function(l,c){x(e.imageData,{naturalWidth:l,naturalHeight:c,aspectRatio:l/c}),e.sizing=!1,e.sized=!0,e.build()};if(i.naturalWidth&&!n){r(i.naturalWidth,i.naturalHeight);return}var o=document.createElement("img"),s=document.body||document.documentElement;this.sizingImage=o,o.onload=function(){r(o.width,o.height),n||s.removeChild(o)},o.src=i.src,n||(o.style.cssText="left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;",s.appendChild(o))}},{key:"stop",value:function(){var e=this.image;e.onload=null,e.onerror=null,e.parentNode.removeChild(e),this.image=null}},{key:"build",value:function(){if(!(!this.sized||this.ready)){var e=this.element,i=this.options,n=this.image,r=e.parentNode,o=document.createElement("div");o.innerHTML=Hi;var s=o.querySelector(".".concat(y,"-container")),f=s.querySelector(".".concat(y,"-canvas")),l=s.querySelector(".".concat(y,"-drag-box")),c=s.querySelector(".".concat(y,"-crop-box")),h=c.querySelector(".".concat(y,"-face"));this.container=r,this.cropper=s,this.canvas=f,this.dragBox=l,this.cropBox=c,this.viewBox=s.querySelector(".".concat(y,"-view-box")),this.face=h,f.appendChild(n),O(e,S),r.insertBefore(s,e.nextSibling),this.isImg||k(n,Wt),this.initPreview(),this.bind(),i.initialAspectRatio=Math.max(0,i.initialAspectRatio)||NaN,i.aspectRatio=Math.max(0,i.aspectRatio)||NaN,i.viewMode=Math.max(0,Math.min(3,Math.round(i.viewMode)))||0,O(c,S),i.guides||O(c.getElementsByClassName("".concat(y,"-dashed")),S),i.center||O(c.getElementsByClassName("".concat(y,"-center")),S),i.background&&O(s,"".concat(y,"-bg")),i.highlight||O(h,Ai),i.cropBoxMovable&&(O(h,Dt),ct(h,ht,Rt)),i.cropBoxResizable||(O(c.getElementsByClassName("".concat(y,"-line")),S),O(c.getElementsByClassName("".concat(y,"-point")),S)),this.render(),this.ready=!0,this.setDragMode(i.dragMode),i.autoCrop&&this.crop(),this.setData(i.data),A(i.ready)&&L(e,$t,i.ready,{once:!0}),et(e,$t)}}},{key:"unbuild",value:function(){this.ready&&(this.ready=!1,this.unbind(),this.resetPreview(),this.cropper.parentNode.removeChild(this.cropper),k(this.element,S))}},{key:"uncreate",value:function(){this.ready?(this.unbuild(),this.ready=!1,this.cropped=!1):this.sizing?(this.sizingImage.onload=null,this.sizing=!1,this.sized=!1):this.reloading?(this.xhr.onabort=null,this.xhr.abort()):this.image&&this.stop()}}],[{key:"noConflict",value:function(){return window.Cropper=fe,a}},{key:"setDefaults",value:function(e){x(Qt,J(e)&&e)}}]),a})();x(pi.prototype,ne,oe,se,he,ce,le);const de="shared.imageCropper",pe=/data:([a-zA-Z0-9]+\/[a-zA-Z0-9-.+]+).*,.*/,ue=a=>{const t=a.match(pe);if(t)return t[1]};ui.defaultProps={submitVariant:"dark"};function ui(a){const{dataUrl:t,minHeight:e,minWidth:i,onCrop:n,onCancel:r}=a,o=X.useRef(null),s=X.useRef(null),[f,l]=X.useState(!1),[c,h]=X.useState(!1),d=()=>{if(!f)return;h(!0);const u=s.current.getCroppedCanvas().toDataURL(ue(t));wi.isFunction(n)&&n(u)};return X.useEffect(()=>{const u=new Image;u.src=t;const g=o.current.offsetWidth/u.width;return s.current=new pi(o.current,{viewMode:1,autoCropArea:1,aspectRatio:i/e,minCropBoxWidth:i*g,minCropBoxHeight:e*g,ready:()=>l(!0)}),()=>{s.current.destroy()}},[]),H.jsxs(H.Fragment,{children:[H.jsx("div",{className:"pb-3 cropper-img-padding",children:H.jsx("img",{ref:o,src:t,className:"img img-fluid"})}),H.jsxs(wt,{children:[H.jsx(wt.Cancel,{onClick:r}),H.jsx(wt.Submit,{onClick:d,disabled:!f,showSpinner:c,text:vi.getPhrase(de,"crop"),variant:a.submitVariant})]})]})}function me(a){var l,c;const t=bi(),{getDataUrlAndResetContext:e,setImage:i}=X.useContext(yi),[n,r]=X.useState(),[o,s]=X.useState(!1);function f(h){Di(t,a.getRequest(a.imageType,h,i,a.closePopup))}return X.useEffect(()=>r(e()),[]),H.jsx(xi,{title:"Crop Image",size:a.popupSize,closePopup:a.closePopup,onEntered:()=>s(!0),children:o&&n&&H.jsx(ui,{dataUrl:n,minWidth:((l=a.overrideDimensions)==null?void 0:l.width)??zt[a.imageType].width,minHeight:((c=a.overrideDimensions)==null?void 0:c.height)??zt[a.imageType].height,onCrop:f,onCancel:a.closePopup,submitVariant:a.submitVariant})})}export{me as ImageUploadView};
10
- //# sourceMappingURL=DWkaXclo.chunk.js.map