@clickview/lite 0.0.19 → 0.0.20-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/dist/css/0.chunk.css.map +1 -0
  2. package/dist/css/1.chunk.css +146 -0
  3. package/dist/css/1.chunk.css.map +1 -0
  4. package/dist/css/11.chunk.css.map +1 -0
  5. package/dist/css/12.chunk.css.map +1 -0
  6. package/dist/css/13.chunk.css.map +1 -0
  7. package/dist/css/14.chunk.css.map +1 -0
  8. package/dist/css/15.chunk.css.map +1 -0
  9. package/dist/css/16.chunk.css.map +1 -0
  10. package/dist/css/17.chunk.css.map +1 -0
  11. package/dist/css/18.chunk.css.map +1 -0
  12. package/dist/css/19.chunk.css.map +1 -0
  13. package/dist/css/21.chunk.css.map +1 -0
  14. package/dist/css/22.chunk.css.map +1 -0
  15. package/dist/css/23.chunk.css.map +1 -0
  16. package/dist/css/24.chunk.css.map +1 -0
  17. package/dist/css/25.chunk.css.map +1 -0
  18. package/dist/css/26.chunk.css.map +1 -0
  19. package/dist/css/27.chunk.css.map +1 -0
  20. package/dist/css/28.chunk.css.map +1 -0
  21. package/dist/css/29.chunk.css.map +1 -0
  22. package/dist/css/3.chunk.css.map +1 -0
  23. package/dist/css/30.chunk.css +32 -0
  24. package/dist/css/30.chunk.css.map +1 -0
  25. package/dist/css/31.chunk.css.map +1 -0
  26. package/dist/css/32.chunk.css +6 -0
  27. package/dist/css/32.chunk.css.map +1 -0
  28. package/dist/css/33.chunk.css +5 -0
  29. package/dist/css/33.chunk.css.map +1 -0
  30. package/dist/css/34.chunk.css.map +1 -0
  31. package/dist/css/36.chunk.css +6 -0
  32. package/dist/css/36.chunk.css.map +1 -0
  33. package/dist/css/37.chunk.css +7 -0
  34. package/dist/css/37.chunk.css.map +1 -0
  35. package/dist/css/38.chunk.css.map +1 -0
  36. package/dist/css/41.chunk.css +38 -0
  37. package/dist/css/41.chunk.css.map +1 -0
  38. package/dist/css/5.chunk.css.map +1 -0
  39. package/dist/css/51.chunk.css +9 -0
  40. package/dist/css/51.chunk.css.map +1 -0
  41. package/dist/css/6.chunk.css.map +1 -0
  42. package/dist/css/7.chunk.css +66 -0
  43. package/dist/css/7.chunk.css.map +1 -0
  44. package/dist/css/lite-app.css.map +1 -0
  45. package/dist/libs/shared/src/utils/ImageHelper.d.ts +1 -1
  46. package/dist/projects/lite/src/polyfills.d.ts +2 -0
  47. package/dist/scripts/0.chunk.js +308 -0
  48. package/dist/scripts/0.chunk.js.map +1 -0
  49. package/dist/scripts/1.chunk.js +623 -0
  50. package/dist/scripts/1.chunk.js.map +1 -0
  51. package/dist/scripts/10.chunk.js +530 -0
  52. package/dist/scripts/10.chunk.js.map +1 -0
  53. package/dist/scripts/11.chunk.js +380 -0
  54. package/dist/scripts/11.chunk.js.map +1 -0
  55. package/dist/scripts/12.chunk.js +434 -0
  56. package/dist/scripts/12.chunk.js.map +1 -0
  57. package/dist/scripts/13.chunk.js +1287 -0
  58. package/dist/scripts/13.chunk.js.map +1 -0
  59. package/dist/scripts/14.chunk.js +575 -0
  60. package/dist/scripts/14.chunk.js.map +1 -0
  61. package/dist/scripts/15.chunk.js +806 -0
  62. package/dist/scripts/15.chunk.js.map +1 -0
  63. package/dist/scripts/16.chunk.js +482 -0
  64. package/dist/scripts/16.chunk.js.map +1 -0
  65. package/dist/scripts/17.chunk.js +428 -0
  66. package/dist/scripts/17.chunk.js.map +1 -0
  67. package/dist/scripts/18.chunk.js +766 -0
  68. package/dist/scripts/18.chunk.js.map +1 -0
  69. package/dist/scripts/19.chunk.js +647 -0
  70. package/dist/scripts/19.chunk.js.map +1 -0
  71. package/dist/scripts/2.chunk.js +18882 -0
  72. package/dist/scripts/2.chunk.js.map +1 -0
  73. package/dist/scripts/20.chunk.js +212 -0
  74. package/dist/scripts/20.chunk.js.map +1 -0
  75. package/dist/scripts/21.chunk.js +1591 -0
  76. package/dist/scripts/21.chunk.js.map +1 -0
  77. package/dist/scripts/22.chunk.js +1348 -0
  78. package/dist/scripts/22.chunk.js.map +1 -0
  79. package/dist/scripts/23.chunk.js +1181 -0
  80. package/dist/scripts/23.chunk.js.map +1 -0
  81. package/dist/scripts/24.chunk.js +1141 -0
  82. package/dist/scripts/24.chunk.js.map +1 -0
  83. package/dist/scripts/25.chunk.js +907 -0
  84. package/dist/scripts/25.chunk.js.map +1 -0
  85. package/dist/scripts/26.chunk.js +979 -0
  86. package/dist/scripts/26.chunk.js.map +1 -0
  87. package/dist/scripts/27.chunk.js +655 -0
  88. package/dist/scripts/27.chunk.js.map +1 -0
  89. package/dist/scripts/28.chunk.js +615 -0
  90. package/dist/scripts/28.chunk.js.map +1 -0
  91. package/dist/scripts/29.chunk.js +622 -0
  92. package/dist/scripts/29.chunk.js.map +1 -0
  93. package/dist/scripts/{3-f01af775f2.chunk.js → 3-7c3e2f071d.chunk.js} +1 -1
  94. package/dist/scripts/3.chunk.js +809 -0
  95. package/dist/scripts/3.chunk.js.map +1 -0
  96. package/dist/scripts/30.chunk.js +468 -0
  97. package/dist/scripts/30.chunk.js.map +1 -0
  98. package/dist/scripts/31.chunk.js +441 -0
  99. package/dist/scripts/31.chunk.js.map +1 -0
  100. package/dist/scripts/32.chunk.js +509 -0
  101. package/dist/scripts/32.chunk.js.map +1 -0
  102. package/dist/scripts/33.chunk.js +957 -0
  103. package/dist/scripts/33.chunk.js.map +1 -0
  104. package/dist/scripts/34.chunk.js +502 -0
  105. package/dist/scripts/34.chunk.js.map +1 -0
  106. package/dist/scripts/35.chunk.js +938 -0
  107. package/dist/scripts/35.chunk.js.map +1 -0
  108. package/dist/scripts/36.chunk.js +537 -0
  109. package/dist/scripts/36.chunk.js.map +1 -0
  110. package/dist/scripts/37.chunk.js +414 -0
  111. package/dist/scripts/37.chunk.js.map +1 -0
  112. package/dist/scripts/38.chunk.js +245 -0
  113. package/dist/scripts/38.chunk.js.map +1 -0
  114. package/dist/scripts/39.chunk.js +337 -0
  115. package/dist/scripts/39.chunk.js.map +1 -0
  116. package/dist/scripts/4.chunk.js +402 -0
  117. package/dist/scripts/4.chunk.js.map +1 -0
  118. package/dist/scripts/40.chunk.js +350 -0
  119. package/dist/scripts/40.chunk.js.map +1 -0
  120. package/dist/scripts/41.chunk.js +343 -0
  121. package/dist/scripts/41.chunk.js.map +1 -0
  122. package/dist/scripts/42.chunk.js +404 -0
  123. package/dist/scripts/42.chunk.js.map +1 -0
  124. package/dist/scripts/43.chunk.js +221 -0
  125. package/dist/scripts/43.chunk.js.map +1 -0
  126. package/dist/scripts/44.chunk.js +230 -0
  127. package/dist/scripts/44.chunk.js.map +1 -0
  128. package/dist/scripts/45.chunk.js +409 -0
  129. package/dist/scripts/45.chunk.js.map +1 -0
  130. package/dist/scripts/46.chunk.js +272 -0
  131. package/dist/scripts/46.chunk.js.map +1 -0
  132. package/dist/scripts/47.chunk.js +267 -0
  133. package/dist/scripts/47.chunk.js.map +1 -0
  134. package/dist/scripts/48.chunk.js +359 -0
  135. package/dist/scripts/48.chunk.js.map +1 -0
  136. package/dist/scripts/49.chunk.js +225 -0
  137. package/dist/scripts/49.chunk.js.map +1 -0
  138. package/dist/scripts/5.chunk.js +1104 -0
  139. package/dist/scripts/5.chunk.js.map +1 -0
  140. package/dist/scripts/50.chunk.js +318 -0
  141. package/dist/scripts/50.chunk.js.map +1 -0
  142. package/dist/scripts/51.chunk.js +64 -0
  143. package/dist/scripts/51.chunk.js.map +1 -0
  144. package/dist/scripts/52.chunk.js +108 -0
  145. package/dist/scripts/52.chunk.js.map +1 -0
  146. package/dist/scripts/53.chunk.js +110 -0
  147. package/dist/scripts/53.chunk.js.map +1 -0
  148. package/dist/scripts/54.chunk.js +162 -0
  149. package/dist/scripts/54.chunk.js.map +1 -0
  150. package/dist/scripts/55.chunk.js +145 -0
  151. package/dist/scripts/55.chunk.js.map +1 -0
  152. package/dist/scripts/56.chunk.js +139 -0
  153. package/dist/scripts/56.chunk.js.map +1 -0
  154. package/dist/scripts/57.chunk.js +142 -0
  155. package/dist/scripts/57.chunk.js.map +1 -0
  156. package/dist/scripts/58.chunk.js +173 -0
  157. package/dist/scripts/58.chunk.js.map +1 -0
  158. package/dist/scripts/59.chunk.js +160 -0
  159. package/dist/scripts/59.chunk.js.map +1 -0
  160. package/dist/scripts/6.chunk.js +335 -0
  161. package/dist/scripts/6.chunk.js.map +1 -0
  162. package/dist/scripts/60.chunk.js +98 -0
  163. package/dist/scripts/60.chunk.js.map +1 -0
  164. package/dist/scripts/61.chunk.js +48 -0
  165. package/dist/scripts/61.chunk.js.map +1 -0
  166. package/dist/scripts/62.chunk.js +70 -0
  167. package/dist/scripts/62.chunk.js.map +1 -0
  168. package/dist/scripts/63.chunk.js +32 -0
  169. package/dist/scripts/63.chunk.js.map +1 -0
  170. package/dist/scripts/64.chunk.js +29 -0
  171. package/dist/scripts/64.chunk.js.map +1 -0
  172. package/dist/scripts/65.chunk.js +27 -0
  173. package/dist/scripts/65.chunk.js.map +1 -0
  174. package/dist/scripts/66.chunk.js +65 -0
  175. package/dist/scripts/66.chunk.js.map +1 -0
  176. package/dist/scripts/67.chunk.js +67 -0
  177. package/dist/scripts/67.chunk.js.map +1 -0
  178. package/dist/scripts/68.chunk.js +104 -0
  179. package/dist/scripts/68.chunk.js.map +1 -0
  180. package/dist/scripts/69.chunk.js +89 -0
  181. package/dist/scripts/69.chunk.js.map +1 -0
  182. package/dist/scripts/7.chunk.js +2579 -0
  183. package/dist/scripts/7.chunk.js.map +1 -0
  184. package/dist/scripts/70.chunk.js +1001 -0
  185. package/dist/scripts/70.chunk.js.map +1 -0
  186. package/dist/scripts/71.chunk.js +36 -0
  187. package/dist/scripts/71.chunk.js.map +1 -0
  188. package/dist/scripts/8.chunk.js +24 -0
  189. package/dist/scripts/8.chunk.js.map +1 -0
  190. package/dist/scripts/9.chunk.js +327 -0
  191. package/dist/scripts/9.chunk.js.map +1 -0
  192. package/dist/scripts/{bundle-5ecb0c9441.min.js → bundle-df3f2fe30a.min.js} +1 -1
  193. package/dist/scripts/bundle.js +38145 -0
  194. package/dist/scripts/bundle.js.map +1 -0
  195. package/dist/scripts/bundles.json +1 -1
  196. package/dist/scripts/polyfills.js +15232 -0
  197. package/dist/scripts/polyfills.js.map +1 -0
  198. package/package.json +1 -1
  199. package/dist/scripts/14-9f08e07fae.chunk.js +0 -1
  200. package/dist/scripts/3-6e2ac46662.chunk.js +0 -7
  201. package/dist/scripts/4-ea79bf1533.chunk.js +0 -1
  202. package/dist/scripts/bundle-25efc68e8d.min.js +0 -1
  203. package/dist/scripts/bundle-c6241bd7ac.min.js +0 -1
  204. package/dist/scripts/bundle-ece1c21857.min.js +0 -1
  205. /package/dist/scripts/{0-d95e8444c4.chunk.js → 0-531d6e6349.chunk.js} +0 -0
  206. /package/dist/scripts/{11-d419aa0984.chunk.js → 11-8f0bdf9018.chunk.js} +0 -0
  207. /package/dist/scripts/{12-b38a27f951.chunk.js → 12-48ed970d19.chunk.js} +0 -0
  208. /package/dist/scripts/{13-1ad100c6fa.chunk.js → 13-b0f32ba098.chunk.js} +0 -0
  209. /package/dist/scripts/{14-ffa8f0cdc3.chunk.js → 14-3fdae3a2e0.chunk.js} +0 -0
  210. /package/dist/scripts/{15-ee9fb81b9f.chunk.js → 15-fded12e48f.chunk.js} +0 -0
  211. /package/dist/scripts/{16-8fe78e04c2.chunk.js → 16-adabe89775.chunk.js} +0 -0
  212. /package/dist/scripts/{17-ea7fe3ea28.chunk.js → 17-b2cd7a4b5e.chunk.js} +0 -0
  213. /package/dist/scripts/{18-1bb07c0b9b.chunk.js → 18-40f63a0517.chunk.js} +0 -0
  214. /package/dist/scripts/{19-c869d34687.chunk.js → 19-402b058c2a.chunk.js} +0 -0
  215. /package/dist/scripts/{2-a816feb2a1.chunk.js → 2-2af40ff44f.chunk.js} +0 -0
  216. /package/dist/scripts/{20-43ec005977.chunk.js → 20-6fefb546ab.chunk.js} +0 -0
  217. /package/dist/scripts/{21-8513db8251.chunk.js → 21-a89abdba1d.chunk.js} +0 -0
  218. /package/dist/scripts/{22-d4adb2384c.chunk.js → 22-09dbfdff25.chunk.js} +0 -0
  219. /package/dist/scripts/{23-d8b5b9ad2c.chunk.js → 23-b206a9cf33.chunk.js} +0 -0
  220. /package/dist/scripts/{24-f2913e26e2.chunk.js → 24-7841060223.chunk.js} +0 -0
  221. /package/dist/scripts/{25-68705527ea.chunk.js → 25-a7d11dc1a9.chunk.js} +0 -0
  222. /package/dist/scripts/{26-7d25448f1c.chunk.js → 26-e74d7d8b73.chunk.js} +0 -0
  223. /package/dist/scripts/{27-bab6c9f5c7.chunk.js → 27-98612375ea.chunk.js} +0 -0
  224. /package/dist/scripts/{28-080baa3fbc.chunk.js → 28-bf3436e9a7.chunk.js} +0 -0
  225. /package/dist/scripts/{29-5e9889b68a.chunk.js → 29-4e8053f425.chunk.js} +0 -0
  226. /package/dist/scripts/{30-cdbeea4fc5.chunk.js → 30-52574fd7e7.chunk.js} +0 -0
  227. /package/dist/scripts/{31-6fa4413cdb.chunk.js → 31-a1cd93aead.chunk.js} +0 -0
  228. /package/dist/scripts/{32-d4725d3b7d.chunk.js → 32-3582316ec6.chunk.js} +0 -0
  229. /package/dist/scripts/{33-bec24aab85.chunk.js → 33-c12e2d64d8.chunk.js} +0 -0
  230. /package/dist/scripts/{34-c42c6cf42a.chunk.js → 34-123b98d346.chunk.js} +0 -0
  231. /package/dist/scripts/{35-4512b236f2.chunk.js → 35-0d10217f78.chunk.js} +0 -0
  232. /package/dist/scripts/{36-eede7769b2.chunk.js → 36-926dfeed42.chunk.js} +0 -0
  233. /package/dist/scripts/{37-80ed339c4f.chunk.js → 37-b7eb76b267.chunk.js} +0 -0
  234. /package/dist/scripts/{38-c11d4c88e3.chunk.js → 38-194e4e7a6b.chunk.js} +0 -0
  235. /package/dist/scripts/{39-d0e74fb062.chunk.js → 39-52658e5919.chunk.js} +0 -0
  236. /package/dist/scripts/{4-ca4a9fc001.chunk.js → 4-1069225fdd.chunk.js} +0 -0
  237. /package/dist/scripts/{40-d764e6157b.chunk.js → 40-f894eeb643.chunk.js} +0 -0
  238. /package/dist/scripts/{41-0aa7093354.chunk.js → 41-0185da83f4.chunk.js} +0 -0
  239. /package/dist/scripts/{42-3d8c5fa14c.chunk.js → 42-7dec68cd96.chunk.js} +0 -0
  240. /package/dist/scripts/{43-969806e81e.chunk.js → 43-a0bebde767.chunk.js} +0 -0
  241. /package/dist/scripts/{44-e8e3fef4c3.chunk.js → 44-70673a004e.chunk.js} +0 -0
  242. /package/dist/scripts/{45-d8f70269d6.chunk.js → 45-e4e06801b2.chunk.js} +0 -0
  243. /package/dist/scripts/{46-946ae22c1f.chunk.js → 46-349ff5f0d5.chunk.js} +0 -0
  244. /package/dist/scripts/{47-1579412cd0.chunk.js → 47-42a55c12e2.chunk.js} +0 -0
  245. /package/dist/scripts/{48-fdf97c1c73.chunk.js → 48-8af4070f2b.chunk.js} +0 -0
  246. /package/dist/scripts/{49-970fc479c8.chunk.js → 49-d94fce3ca9.chunk.js} +0 -0
  247. /package/dist/scripts/{5-d1bb14adf6.chunk.js → 5-66270e3a0d.chunk.js} +0 -0
  248. /package/dist/scripts/{50-1257ab0b95.chunk.js → 50-fab4522d40.chunk.js} +0 -0
  249. /package/dist/scripts/{51-ac615445f0.chunk.js → 51-119315f5af.chunk.js} +0 -0
  250. /package/dist/scripts/{52-874629b81c.chunk.js → 52-2f07b899d9.chunk.js} +0 -0
  251. /package/dist/scripts/{53-22e3d0793b.chunk.js → 53-43aaf5b628.chunk.js} +0 -0
  252. /package/dist/scripts/{54-da1a07610c.chunk.js → 54-70394f7bc2.chunk.js} +0 -0
  253. /package/dist/scripts/{55-02647df65c.chunk.js → 55-5f4a32f8ef.chunk.js} +0 -0
  254. /package/dist/scripts/{56-1b6e6349fa.chunk.js → 56-87d38b6834.chunk.js} +0 -0
  255. /package/dist/scripts/{57-8fc09ba02c.chunk.js → 57-b9334f46ba.chunk.js} +0 -0
  256. /package/dist/scripts/{58-8e5cc56c3f.chunk.js → 58-7aedb52028.chunk.js} +0 -0
  257. /package/dist/scripts/{6-0e53df2ece.chunk.js → 6-a888530bed.chunk.js} +0 -0
  258. /package/dist/scripts/{7-26822045b2.chunk.js → 7-7e596a99ba.chunk.js} +0 -0
  259. /package/dist/scripts/{8-7450eff674.chunk.js → 8-abff2ccf3c.chunk.js} +0 -0
  260. /package/dist/scripts/{9-f24f1577dd.chunk.js → 9-58b0e36108.chunk.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/actions/ActionButton.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/actions/Actions.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/actions/ActionsDropdown.tsx","webpack://@clickview/lite/C:/ClickView/front-end/clickview/packages/libs/shared/src/components/actions/actions.scss?9153","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/div-button/DivButton.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/pagination/Pagination.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/VideoItem.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/VideoList.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-actions/VideoItemActions.tsx","webpack://@clickview/lite/C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-actions/video-item-actions.scss?aabb","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-badges/VideoItemBadges.tsx","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-description/UseTruncateText.ts","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-description/VideoItemDescription.tsx","webpack://@clickview/lite/C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-description/video-item-description.scss?4d88","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/components/video-item-header/VideoItemHeader.tsx","webpack://@clickview/lite/C:/ClickView/front-end/clickview/packages/libs/shared/src/components/video-list/video-item.scss?e422","file://C:/ClickView/front-end/clickview/packages/libs/shared/src/utils/VideoHelper.ts"],"names":[],"mappings":"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","file":"scripts/3.chunk.js","sourcesContent":["import * as React from 'react';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\r\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\n\r\ninterface ActionButtonProps {\r\n appLink?: Core.AppLink;\r\n onClick?: (e: React.MouseEvent) => void;\r\n svgName?: string;\r\n className?: string;\r\n tooltip?: string;\r\n}\r\n\r\nexport function ActionButton(props: React.PropsWithChildren<ActionButtonProps>): JSX.Element {\r\n let className = 'ml-2';\r\n\r\n if (props.className)\r\n className += ` ${props.className}`;\r\n\r\n if (props.tooltip) {\r\n return (\r\n <Tooltip title={props.tooltip}>\r\n <IconButton\r\n appLink={props.appLink}\r\n svgName={props.svgName}\r\n onClick={props.onClick}\r\n className={className}\r\n >\r\n {props.children}\r\n </IconButton>\r\n </Tooltip>\r\n );\r\n }\r\n\r\n if (props.svgName) {\r\n return (\r\n <IconButton\r\n onClick={props.onClick}\r\n appLink={props.appLink}\r\n svgName={props.svgName}\r\n className={className}\r\n >\r\n {props.children}\r\n </IconButton>\r\n );\r\n }\r\n\r\n if (props.appLink)\r\n return <AppLink onClick={props.onClick} appLink={props.appLink} className={className}>{props.children}</AppLink>;\r\n\r\n return (\r\n <button onClick={props.onClick} className={className}>\r\n {props.children}\r\n </button>\r\n );\r\n}","import * as React from 'react';\r\n\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { BaseObject } from 'libs/shared/interfaces';\r\n\r\nimport { ActionsDropdown } from './ActionsDropdown';\r\nimport { ActionButton } from './ActionButton';\r\n\r\nimport styles from './actions.scss';\r\n\r\nexport interface ActionOptions {\r\n label: string;\r\n appLink?: Core.AppLink;\r\n onClick?: (e: React.MouseEvent) => void;\r\n svgName?: string;\r\n className?: string;\r\n button?: boolean; // If true, a button will be rendered. Otherwise the action will be rendered in the dropdown.\r\n tooltip?: string;\r\n}\r\n\r\nexport type ActionGenerator = (obj: BaseObject) => ActionOptions[];\r\n\r\ninterface ActionsProps {\r\n actions: ActionOptions[];\r\n className?: string;\r\n actionsDropdownClassName?: string;\r\n sortComponent?: JSX.Element;\r\n}\r\n\r\nexport function Actions(props: ActionsProps): JSX.Element {\r\n const buttonActions: ActionOptions[] = [];\r\n const moreActions: ActionOptions[] = [];\r\n\r\n props.actions.forEach(a => {\r\n if (a.button)\r\n buttonActions.push(a);\r\n else\r\n moreActions.push(a);\r\n });\r\n\r\n let className = 'd-flex';\r\n\r\n if (props.className)\r\n className += ` ${props.className}`;\r\n\r\n return (\r\n <div className={className}>\r\n <>\r\n {!!buttonActions.length &&\r\n <span className={styles.buttonList}>\r\n {buttonActions.map((a, idx) =>\r\n <ActionButton\r\n key={idx}\r\n appLink={a.appLink}\r\n onClick={a.onClick}\r\n svgName={a.svgName}\r\n className={a.className}\r\n tooltip={a.tooltip}\r\n >\r\n {a.label}\r\n </ActionButton>\r\n )}\r\n </span>\r\n }\r\n {props.sortComponent ? props.sortComponent : '' }\r\n {!!moreActions.length &&\r\n <ActionsDropdown\r\n actions={moreActions}\r\n className={!!buttonActions.length && 'ml-2'}\r\n dropdownToggleClassName={props.actionsDropdownClassName}\r\n />\r\n }\r\n </>\r\n </div>\r\n );\r\n}","import * as React from 'react';\r\nimport { Dropdown } from 'react-bootstrap';\r\nimport { RandomHelper } from 'libs/common/react/utils/RandomHelper';\r\n\r\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\n\r\nimport styles from './actions.scss';\r\n\r\nimport { ActionOptions } from './Actions';\r\n\r\nfunction getDropdownItemClassName(actionClassName?: string): string {\r\n let className = 'dropdown-item';\r\n\r\n if (actionClassName)\r\n className += ` ${actionClassName}`;\r\n\r\n return className;\r\n}\r\n\r\ntype DropdownActionOptions = Omit<ActionOptions, 'button' | 'tooltip'>;\r\n\r\ninterface ActionsDropdownProps {\r\n actions: DropdownActionOptions[];\r\n className?: string;\r\n dropdownToggleClassName?: string;\r\n}\r\n\r\nActionsDropdown.defaultProps = {\r\n dropdownToggleClassName: 'btn btn-light'\r\n};\r\n\r\nexport function ActionsDropdown(props: ActionsDropdownProps): React.ReactElement {\r\n if (!props.actions || !props.actions.length)\r\n return <></>;\r\n\r\n // Generate unique id to avoid collisions.\r\n const dropdownToggleId = `actions-dropdown-${RandomHelper.getRandomInt()}`;\r\n\r\n let dropdownToggleClassName = `px-0 ${styles.dropdownToggle}`;\r\n\r\n if (props.dropdownToggleClassName)\r\n dropdownToggleClassName += ` ${props.dropdownToggleClassName}`;\r\n\r\n return (\r\n <Dropdown className={props.className ? props.className : ''} alignRight>\r\n <Dropdown.Toggle as='button' type='button' id={dropdownToggleId} className={dropdownToggleClassName}>\r\n <SvgContainer svgName={cvSvgLibrary.More} size={SvgContainerSize.Small} />\r\n </Dropdown.Toggle>\r\n <Dropdown.Menu>\r\n {props.actions.map((a, idx) =>\r\n <AppLink key={idx} appLink={a.appLink} onClick={a.onClick} className={getDropdownItemClassName(a.className)}>\r\n {a.label}\r\n </AppLink>\r\n )}\r\n </Dropdown.Menu>\r\n </Dropdown>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"buttonList\":\"cv--buttonList--2v9CT\",\"dropdownToggle\":\"cv--dropdownToggle--AYBvQ\"};","import * as React from 'react';\r\n\r\ninterface DivButtonProps extends React.ButtonHTMLAttributes<HTMLDivElement> {\r\n onClick: (...args: any) => any;\r\n}\r\n\r\n/**\r\n * This element lets us use `div` elements as buttons without losing the accessibility of\r\n * a regular HTML button element\r\n */\r\nexport function DivButton(props: React.PropsWithChildren<DivButtonProps>): JSX.Element {\r\n return (\r\n <div\r\n role='button'\r\n tabIndex={0}\r\n className={`${props.className ? props.className : ''} cursor-pointer`}\r\n onKeyDown={(e: React.KeyboardEvent) => e.key === 'Enter' && props.onClick(e)}\r\n onClick={props.onClick}\r\n style={props.style ? props.style : {}}\r\n >\r\n {props.children}\r\n </div>\r\n );\r\n}","import * as React from 'react';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { Cursors } from 'libs/common/backbone/interfaces';\r\n\r\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\nimport { LocationContext, EntityType, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\r\n\r\nfunction buildCursor(appLink: Core.AppLink, cursorParam: string): Core.AppLink {\r\n if (!cursorParam)\r\n return null;\r\n\r\n return {\r\n application: appLink.application,\r\n action: appLink.action,\r\n args: appLink.args,\r\n params: Object.assign({}, appLink.params, { cursor: cursorParam })\r\n };\r\n}\r\n\r\ninterface CursorPaginationProps {\r\n cursors: Cursors;\r\n appLink: Core.AppLink;\r\n className?: string;\r\n}\r\n\r\nPagination.defaultProps = {\r\n className: 'py-2'\r\n};\r\n\r\nexport function Pagination({ appLink, cursors, className }: CursorPaginationProps): JSX.Element {\r\n function log(page: 'next' | 'previous'): void {\r\n AnalyticsHelper.logUserAction({ page }, {\r\n location: LocationContext.Pagination,\r\n entity: EntityType.Pagination,\r\n actionType: UserAction.Navigate,\r\n workflowPhase: WorkflowPhase.Complete\r\n });\r\n }\r\n\r\n return (\r\n <LanguageNamespaceContext.Provider value='shared.pagination'>\r\n <div className={className}>\r\n <AppLink\r\n appLink={buildCursor(appLink, cursors.previous)}\r\n className={`btn btn-secondary mr-1 ${!cursors.previous ? 'disabled' : ''}`}\r\n onClick={() => log('previous')}\r\n >\r\n <Text phrase='previous' />\r\n </AppLink>\r\n\r\n <AppLink\r\n appLink={buildCursor(appLink, cursors.next)}\r\n className={`btn btn-secondary ${!cursors.next ? 'disabled' : ''}`}\r\n onClick={() => log('next')}\r\n >\r\n <Text phrase='next' />\r\n </AppLink>\r\n </div>\r\n </LanguageNamespaceContext.Provider>\r\n );\r\n}\r\n\r\ninterface LocalPaginationProps {\r\n onClickNext: () => void;\r\n onClickBack: () => void;\r\n currentPage: number;\r\n totalPages: number;\r\n className?: string;\r\n}\r\n\r\nLocalPagination.defaultProps = {\r\n className: 'py-2'\r\n};\r\n\r\nexport function LocalPagination(props: LocalPaginationProps): JSX.Element {\r\n function onClickBack(): void {\r\n if (props.currentPage === 1)\r\n return;\r\n\r\n log('previous');\r\n\r\n props.onClickBack();\r\n }\r\n\r\n function onClickNext(): void {\r\n if (props.currentPage === props.totalPages)\r\n return;\r\n\r\n log('next');\r\n\r\n props.onClickNext();\r\n }\r\n\r\n function log(page: 'next' | 'previous'): void {\r\n AnalyticsHelper.logUserAction({ page }, {\r\n location: LocationContext.Pagination,\r\n entity: EntityType.Pagination,\r\n actionType: UserAction.Navigate,\r\n workflowPhase: WorkflowPhase.Complete\r\n });\r\n }\r\n\r\n return (\r\n <LanguageNamespaceContext.Provider value='shared.pagination'>\r\n <div className={props.className}>\r\n <DivButton\r\n onClick={onClickBack}\r\n className={`btn btn-secondary mr-1 cursor-pointer ${props.currentPage === 1 ? 'disabled' : ''}`}\r\n >\r\n <Text phrase='previous' />\r\n </DivButton>\r\n\r\n <DivButton\r\n onClick={onClickNext}\r\n className={`btn btn-secondary cursor-pointer ${props.currentPage === props.totalPages ? 'disabled' : ''}`}\r\n >\r\n <Text phrase='next' />\r\n </DivButton>\r\n </div>\r\n </LanguageNamespaceContext.Provider>\r\n );\r\n}","import * as React from 'react';\r\nimport { Row, Col } from 'react-bootstrap';\r\nimport { SortableElement, SortableHandle } from 'react-sortable-hoc';\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { Video, Series } from 'libs/shared/interfaces';\r\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\r\nimport { SeriesLink } from 'libs/shared/components/series-link/SeriesLink';\r\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\r\nimport { ThumbnailSize } from 'libs/shared/enums/ThumbnailSize';\r\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\r\n\r\nimport { SortableContext } from 'libs/shared/components/video-list/VideoList';\r\nimport { VideoItemActions } from 'libs/shared/components/video-list/components/video-item-actions/VideoItemActions';\r\nimport { VideoItemBadges } from 'libs/shared/components/video-list/components/video-item-badges/VideoItemBadges';\r\nimport { VideoItemDescription } from 'libs/shared/components/video-list/components/video-item-description/VideoItemDescription';\r\nimport { VideoItemHeader } from 'libs/shared/components/video-list/components/video-item-header/VideoItemHeader';\r\nimport styles from './video-item.scss';\r\n\r\nconst DragHandle = SortableHandle(() => (\r\n <Col\r\n xs={2}\r\n className={`d-flex justify-content-center align-items-center cursor-pointer ${styles.dragHandleContainer}`}\r\n >\r\n <SvgContainer svgName={cvSvgLibrary.Handle} size={SvgContainerSize.Small} />\r\n </Col>\r\n));\r\n\r\nfunction getThumbnailColSize(hasDragHandle: boolean): number {\r\n return hasDragHandle ? 10 : 12;\r\n}\r\n\r\ninterface VideoItemProps {\r\n video: Video;\r\n getVideoAppLink: (video: Video) => Core.AppLink;\r\n getSeriesAppLink: (series: Series) => Core.AppLink;\r\n setFavourite?: (videoId: string, shouldFavourite: boolean, onError?: () => void) => void;\r\n idx?: number; // Index of rendered item in list \r\n}\r\n\r\nexport function VideoItem(props: VideoItemProps): JSX.Element {\r\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\r\n const { isSortable, currentSortingIndex } = React.useContext(SortableContext);\r\n\r\n const showDragHandle = isSortable && !isMobile;\r\n const videoAppLink = props.getVideoAppLink(props.video);\r\n\r\n const seriesAppLink = VideoHelper.hasSeries(props.video) && props.getSeriesAppLink(props.video.series);\r\n\r\n return (\r\n <Row className='py-2'>\r\n <Col xs={isMobile ? 12 : 4} className='flex-column align-items-flex-start mb-1'>\r\n <Row>\r\n {!!showDragHandle && <DragHandle />}\r\n <Col xs={getThumbnailColSize(showDragHandle)}>\r\n <VideoThumbnail\r\n video={props.video}\r\n appLink={videoAppLink}\r\n seriesAppLink={seriesAppLink}\r\n size={showDragHandle ? ThumbnailSize.Small : ThumbnailSize.Medium}\r\n textPosition={ThumbnailTextPosition.Independent}\r\n setFavourite={props.setFavourite}\r\n type='static'\r\n />\r\n </Col>\r\n </Row>\r\n </Col>\r\n <Col xs={isMobile ? 12 : 8}>\r\n <VideoItemActions video={props.video} />\r\n <SeriesLink video={props.video} appLink={seriesAppLink} />\r\n <VideoItemHeader video={props.video} appLink={props.getVideoAppLink(props.video)} />\r\n <VideoItemBadges video={props.video} />\r\n <VideoItemDescription\r\n video={props.video}\r\n forceTruncate={Number.isInteger(currentSortingIndex) && props.idx === currentSortingIndex}\r\n />\r\n </Col>\r\n </Row>\r\n );\r\n}\r\n\r\nexport const SortableVideoItem = SortableElement((props: VideoItemProps) => <VideoItem {...props} />);","import * as React from 'react';\r\nimport { SortableContainer } from 'react-sortable-hoc';\r\nimport { Core } from 'libs/common/core';\r\nimport { Cursors } from 'libs/common/backbone/interfaces';\r\n\r\nimport { Video, Series } from 'libs/shared/interfaces';\r\nimport { Pagination } from 'libs/shared/components/pagination/Pagination';\r\n\r\nimport { VideoItem, SortableVideoItem } from './VideoItem';\r\n\r\ninterface SortableContextProps {\r\n isSortable: boolean;\r\n currentSortingIndex?: number;\r\n}\r\n\r\nexport const SortableContext = React.createContext<SortableContextProps>({ isSortable: false });\r\n\r\nexport interface VideoListProps {\r\n videos: Video[];\r\n getVideoAppLink: (video: Video) => Core.AppLink;\r\n getSeriesAppLink: (series: Series) => Core.AppLink;\r\n setFavourite?: (videoId: string, shouldFavourite: boolean, onError?: () => void) => void;\r\n cursors?: Cursors;\r\n}\r\n\r\nexport function VideoList(props: VideoListProps): JSX.Element {\r\n const { isSortable } = React.useContext(SortableContext);\r\n\r\n const VideoItemComponent = isSortable\r\n ? SortableVideoItem\r\n : VideoItem;\r\n\r\n const currentAppLink = Core.AppLinkHelper.getCurrentAppLink();\r\n\r\n return (\r\n <>\r\n <div className='position-relative'>\r\n {props.videos.map((v, idx) =>\r\n <VideoItemComponent\r\n key={v.id}\r\n idx={idx}\r\n index={idx}\r\n video={v}\r\n getVideoAppLink={props.getVideoAppLink}\r\n getSeriesAppLink={props.getSeriesAppLink}\r\n setFavourite={props.setFavourite}\r\n />\r\n )}\r\n </div>\r\n\r\n {props.cursors &&\r\n <Pagination appLink={currentAppLink} cursors={props.cursors} />\r\n }\r\n </>\r\n );\r\n}\r\n\r\ninterface SortableVideoListProps extends VideoListProps {\r\n currentSortingIndex?: number;\r\n}\r\n\r\nexport const SortableVideoList = SortableContainer((props: SortableVideoListProps) => (\r\n <SortableContext.Provider value={{ isSortable: true, currentSortingIndex: props.currentSortingIndex }}>\r\n <VideoList {...props} />\r\n </SortableContext.Provider>\r\n));","import * as React from 'react';\r\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\r\n\r\nimport { Video } from 'libs/shared/interfaces';\r\nimport { Actions, ActionOptions } from 'libs/shared/components/actions/Actions';\r\nimport { VideoActionsContext } from 'libs/shared/context/VideoActionsContext';\r\nimport { VideoAction, getVideoActionOptions } from 'libs/shared/utils/video-actions/VideoActionsHelper';\r\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\n\r\nimport styles from './video-item-actions.scss';\r\n\r\nconst DEFAULT_ACTIONS = [ VideoAction.AddToPlaylist, VideoAction.Share ];\r\n\r\ninterface VideoItemActionsProps {\r\n video: Video;\r\n}\r\n\r\nexport function VideoItemActions(props: VideoItemActionsProps): JSX.Element {\r\n const { videoActions = DEFAULT_ACTIONS, getActionAppLink } = React.useContext(VideoActionsContext);\r\n\r\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\r\n\r\n if (!FunctionHelper.isFunction(getActionAppLink))\r\n return <></>;\r\n\r\n const actions: ActionOptions[] = [];\r\n\r\n videoActions.forEach(a => {\r\n const appLink = getActionAppLink(props.video, a);\r\n\r\n if (appLink)\r\n actions.push({\r\n appLink,\r\n className: 'btn btn-link',\r\n button: !isMobile,\r\n ...getVideoActionOptions()[a]\r\n });\r\n });\r\n\r\n return (\r\n <Actions\r\n actions={actions}\r\n className='float-right mt-n1'\r\n actionsDropdownClassName={`btn btn-link rounded-circle p-0 ${styles.actionsDropdown}`}\r\n />\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"actionsDropdown\":\"cv--actionsDropdown--XR0aX\"};","import * as React from 'react';\r\n\r\nimport { Video } from 'libs/shared/interfaces';\r\nimport { BadgeListContainer } from 'libs/shared/components/badges/BadgeListContainer';\r\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\r\n\r\ninterface VideoItemBadgesProps {\r\n video: Video;\r\n}\r\n\r\nexport function VideoItemBadges(props: VideoItemBadgesProps): JSX.Element {\r\n return (\r\n <BadgeListContainer>\r\n <Badge type={ BadgeType.Rating } data={props.video.rating} />\r\n <Badge type={ BadgeType.ProductionYear } data={props.video.productionYear} />\r\n <Badge type={ BadgeType.Interactive } data={props.video.interactives} />\r\n </BadgeListContainer>\r\n );\r\n}","import { useState, useEffect, useRef, MutableRefObject } from 'react';\r\n\r\ninterface TruncationState<T extends HTMLElement> {\r\n ref: MutableRefObject<T>;\r\n isExpandable: boolean;\r\n isTruncated: boolean;\r\n toggleTruncation: () => void;\r\n}\r\n\r\nexport function useTruncateText<T extends HTMLElement>(maxHeight: number): TruncationState<T> {\r\n const [ isExpandable, setIsExpandable ] = useState(false);\r\n const [ isTruncated, setIsTruncated ] = useState(false);\r\n\r\n const ref = useRef<T>();\r\n\r\n useEffect(() => {\r\n if (!ref || !ref.current)\r\n return;\r\n\r\n const elHeight = ref.current.offsetHeight;\r\n\r\n if (elHeight <= maxHeight)\r\n return;\r\n\r\n setIsExpandable(true);\r\n setIsTruncated(true);\r\n }, [ref]);\r\n\r\n return { ref, isExpandable, isTruncated, toggleTruncation: () => setIsTruncated(t => !t) };\r\n}","import * as React from 'react';\r\n\r\nimport { Video } from 'libs/shared/interfaces';\r\nimport { Text } from 'libs/shared/components/text/Text';\r\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\n\r\nimport styles from './video-item-description.scss';\r\nimport { useTruncateText } from './UseTruncateText';\r\n\r\nconst namespace = 'shared.videoItemDescription';\r\n\r\n/**\r\n * A single line of text = 0.875rem (14px) * 1.5 (line-height) = 21px.\r\n * If we change either the line-height or base font size, this number will \r\n * likely need to be updated too.\r\n */\r\nconst LINE_HEIGHT: number = 21;\r\n\r\ninterface VideoItemDescriptionProps {\r\n video: Video;\r\n forceTruncate?: boolean;\r\n}\r\n\r\nexport function VideoItemDescription(props: VideoItemDescriptionProps): JSX.Element {\r\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\r\n const isIPad = useMediaQuery(MediaQueryStrings.SM);\r\n\r\n const maxNumberLines = isIPad ? 2 : 4;\r\n const maxHeight = LINE_HEIGHT * maxNumberLines;\r\n\r\n const { ref, isExpandable, isTruncated, toggleTruncation } = useTruncateText<HTMLParagraphElement>(maxHeight);\r\n\r\n if (isMobile)\r\n return <></>;\r\n\r\n const containerProps: React.HTMLAttributes<HTMLDivElement> = {\r\n className: 'position-relative overflow-hidden'\r\n };\r\n\r\n if (isTruncated)\r\n containerProps.style = { maxHeight: `${maxHeight}px` };\r\n\r\n if (props.forceTruncate && !isTruncated)\r\n toggleTruncation();\r\n\r\n return (\r\n <div {...containerProps}>\r\n <p ref={ref} className='m-0'>\r\n {props.video.description}\r\n {!!isExpandable &&\r\n <span className={`cursor-pointer ${styles.ellipsis}`} onClick={toggleTruncation}>\r\n <Text namespace={namespace} phrase={isTruncated ? 'showMore' : 'showLess'} />\r\n </span>\r\n }\r\n </p>\r\n </div>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ellipsis\":\"cv--ellipsis--LJY5U\"};","import * as React from 'react';\r\nimport { Core } from 'libs/common/core';\r\n\r\nimport { Video } from 'libs/shared/interfaces';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\n\r\ninterface VideoItemHeaderProps {\r\n video: Video;\r\n appLink: Core.AppLink;\r\n}\r\n\r\nexport function VideoItemHeader(props: VideoItemHeaderProps): JSX.Element {\r\n return (\r\n <AppLink appLink={props.appLink}>\r\n <h5 className='d-inline-block m-0 mb-1'>{props.video.name}</h5>\r\n </AppLink>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dragHandleContainer\":\"cv--dragHandleContainer--24s1b\"};","import { Video } from 'libs/shared/interfaces';\r\n\r\nexport const VideoHelper = {\r\n hasSeries(video: Video): boolean {\r\n return !!video && video.series && !!video.series.id;\r\n }\r\n};"],"sourceRoot":""}
@@ -0,0 +1,468 @@
1
+ (window["webpackJsonp_clickview_lite"] = window["webpackJsonp_clickview_lite"] || []).push([[30],{
2
+
3
+ /***/ "../../libs/shared/src/components/div-button/DivButton.tsx":
4
+ /*!*****************************************************************************************************!*\
5
+ !*** C:/ClickView/front-end/clickview/packages/libs/shared/src/components/div-button/DivButton.tsx ***!
6
+ \*****************************************************************************************************/
7
+ /*! exports provided: DivButton */
8
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
9
+
10
+ "use strict";
11
+ __webpack_require__.r(__webpack_exports__);
12
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DivButton", function() { return DivButton; });
13
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
14
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
15
+
16
+ /**
17
+ * This element lets us use `div` elements as buttons without losing the accessibility of
18
+ * a regular HTML button element
19
+ */
20
+
21
+ function DivButton(props) {
22
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", {
23
+ role: 'button',
24
+ tabIndex: 0,
25
+ className: "".concat(props.className ? props.className : '', " cursor-pointer"),
26
+ onKeyDown: function onKeyDown(e) {
27
+ return e.key === 'Enter' && props.onClick(e);
28
+ },
29
+ onClick: props.onClick,
30
+ style: props.style ? props.style : {}
31
+ }, props.children);
32
+ }
33
+
34
+ /***/ }),
35
+
36
+ /***/ "../../libs/shared/src/hooks/UseAlerts.ts":
37
+ /*!************************************************************************************!*\
38
+ !*** C:/ClickView/front-end/clickview/packages/libs/shared/src/hooks/UseAlerts.ts ***!
39
+ \************************************************************************************/
40
+ /*! exports provided: useAlerts */
41
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
42
+
43
+ "use strict";
44
+ __webpack_require__.r(__webpack_exports__);
45
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useAlerts", function() { return useAlerts; });
46
+ /* harmony import */ var _common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../common/src/react/hooks/UseService */ "../../libs/common/src/react/hooks/UseService.ts");
47
+ /* harmony import */ var _common_src_backbone_services_BaseAlertService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../common/src/backbone/services/BaseAlertService */ "../../libs/common/src/backbone/services/BaseAlertService.ts");
48
+ /* harmony import */ var _common_src_backbone_constants_CommonServices__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../common/src/backbone/constants/CommonServices */ "../../libs/common/src/backbone/constants/CommonServices.ts");
49
+
50
+
51
+
52
+ var useAlerts = function useAlerts() {
53
+ var alertService = Object(_common_src_react_hooks_UseService__WEBPACK_IMPORTED_MODULE_0__["useService"])(_common_src_backbone_constants_CommonServices__WEBPACK_IMPORTED_MODULE_2__["CommonServices"].ALERT);
54
+ return {
55
+ success: function success(alertContent) {
56
+ alertService.success(alertContent)();
57
+ },
58
+ error: function error(alertContent) {
59
+ alertService.error(alertContent)();
60
+ },
61
+ warning: function warning(alertContent) {
62
+ alertService.createAlert({
63
+ type: _common_src_backbone_services_BaseAlertService__WEBPACK_IMPORTED_MODULE_1__["AlertType"].Warning,
64
+ heading: _common_src_backbone_services_BaseAlertService__WEBPACK_IMPORTED_MODULE_1__["DefaultAlertHeading"].Warning,
65
+ message: alertContent
66
+ });
67
+ }
68
+ };
69
+ };
70
+
71
+ /***/ }),
72
+
73
+ /***/ "./src/apps/classrooms/components/classroom-group-details-form/ClassroomGroupDetailsForm.tsx":
74
+ /*!***************************************************************************************************!*\
75
+ !*** ./src/apps/classrooms/components/classroom-group-details-form/ClassroomGroupDetailsForm.tsx ***!
76
+ \***************************************************************************************************/
77
+ /*! exports provided: ClassroomGroupDetailsForm */
78
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
79
+
80
+ "use strict";
81
+ __webpack_require__.r(__webpack_exports__);
82
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ClassroomGroupDetailsForm", function() { return ClassroomGroupDetailsForm; });
83
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
84
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
85
+ /* harmony import */ var formik__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! formik */ "../../../node_modules/formik/dist/formik.esm.js");
86
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
87
+ /* harmony import */ var _libs_shared_src_components_forms_form_field_FormField__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/forms/form-field/FormField */ "../../libs/shared/src/components/forms/form-field/FormField.tsx");
88
+ /* harmony import */ var _libs_shared_src_components_forms_form_wrapper_FormWrapper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/forms/form-wrapper/FormWrapper */ "../../libs/shared/src/components/forms/form-wrapper/FormWrapper.tsx");
89
+ /* harmony import */ var _libs_shared_src_components_forms_form_buttons_FormButtons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/forms/form-buttons/FormButtons */ "../../libs/shared/src/components/forms/form-buttons/FormButtons.tsx");
90
+ /* harmony import */ var _libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/text/Text */ "../../libs/shared/src/components/text/Text.tsx");
91
+ /* harmony import */ var apps_classrooms_components_colour_picker_ColourPicker__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! apps/classrooms/components/colour-picker/ColourPicker */ "./src/apps/classrooms/components/colour-picker/ColourPicker.tsx");
92
+ /* harmony import */ var _classroom_group_details_form_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./classroom-group-details-form.scss */ "./src/apps/classrooms/components/classroom-group-details-form/classroom-group-details-form.scss");
93
+ /* harmony import */ var _classroom_group_details_form_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_classroom_group_details_form_scss__WEBPACK_IMPORTED_MODULE_8__);
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+ var namespace = 'classrooms.classroomGroupDetailsForm';
104
+ var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__["LanguageService"].encloseNamespace(namespace);
105
+ function ClassroomGroupDetailsForm(props) {
106
+ var formikProps = Object(_libs_shared_src_components_forms_form_wrapper_FormWrapper__WEBPACK_IMPORTED_MODULE_4__["useFormikContextWrapper"])();
107
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h2", {
108
+ className: 'w-50 d-inline-block h6'
109
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_6__["Text"], {
110
+ namespace: namespace,
111
+ phrase: 'nameLabel'
112
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h2", {
113
+ className: 'd-inline-block h6'
114
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_6__["Text"], {
115
+ namespace: namespace,
116
+ phrase: 'colourLabel'
117
+ }))), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(formik__WEBPACK_IMPORTED_MODULE_1__["Form"], null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
118
+ className: 'pb-3 d-flex'
119
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
120
+ className: 'w-50'
121
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_forms_form_field_FormField__WEBPACK_IMPORTED_MODULE_3__["FormField"], {
122
+ type: 'text',
123
+ name: 'name',
124
+ id: 'name',
125
+ className: "".concat(_classroom_group_details_form_scss__WEBPACK_IMPORTED_MODULE_8___default.a.groupNameInput),
126
+ placeholder: getPhrase('groupNamePlaceholder'),
127
+ autoFocus: true,
128
+ value: formikProps.values.name
129
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
130
+ className: 'form-group'
131
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(apps_classrooms_components_colour_picker_ColourPicker__WEBPACK_IMPORTED_MODULE_7__["ColourPicker"], {
132
+ onSelect: function onSelect(c) {
133
+ return formikProps.setFieldValue('colour', c);
134
+ },
135
+ selection: formikProps.values.colour,
136
+ id: "".concat(props.isNew ? 'create' : 'edit', "-classroom-group")
137
+ }))), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
138
+ className: 'btn-container d-flex justify-content-end'
139
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", {
140
+ type: 'button',
141
+ className: 'btn btn-link mr-2',
142
+ onClick: props.onClickCancel
143
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_text_Text__WEBPACK_IMPORTED_MODULE_6__["Text"], {
144
+ namespace: namespace,
145
+ phrase: 'cancel'
146
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_forms_form_buttons_FormButtons__WEBPACK_IMPORTED_MODULE_5__["FormButtons"], {
147
+ isNew: props.isNew
148
+ }))));
149
+ }
150
+
151
+ /***/ }),
152
+
153
+ /***/ "./src/apps/classrooms/components/classroom-group-details-form/classroom-group-details-form.scss":
154
+ /*!*******************************************************************************************************!*\
155
+ !*** ./src/apps/classrooms/components/classroom-group-details-form/classroom-group-details-form.scss ***!
156
+ \*******************************************************************************************************/
157
+ /*! no static exports found */
158
+ /***/ (function(module, exports, __webpack_require__) {
159
+
160
+ // extracted by mini-css-extract-plugin
161
+ module.exports = {"groupNameInput":"cv--groupNameInput--3hGvq"};
162
+
163
+ /***/ }),
164
+
165
+ /***/ "./src/apps/classrooms/components/colour-picker/ColourPicker.tsx":
166
+ /*!***********************************************************************!*\
167
+ !*** ./src/apps/classrooms/components/colour-picker/ColourPicker.tsx ***!
168
+ \***********************************************************************/
169
+ /*! exports provided: ColourPicker */
170
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
171
+
172
+ "use strict";
173
+ __webpack_require__.r(__webpack_exports__);
174
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColourPicker", function() { return ColourPicker; });
175
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
176
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
177
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-bootstrap */ "react-bootstrap");
178
+ /* harmony import */ var react_bootstrap__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__);
179
+ /* harmony import */ var _libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/div-button/DivButton */ "../../libs/shared/src/components/div-button/DivButton.tsx");
180
+ /* harmony import */ var _libs_shared_src_components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/svg-container/SvgContainer */ "../../libs/shared/src/components/svg-container/SvgContainer.tsx");
181
+ /* harmony import */ var _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/utils/SvgHelper */ "../../libs/shared/src/utils/SvgHelper.ts");
182
+ /* harmony import */ var apps_classrooms_enums_GroupColour__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! apps/classrooms/enums/GroupColour */ "./src/apps/classrooms/enums/GroupColour.ts");
183
+ /* harmony import */ var apps_classrooms_utils_GroupHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! apps/classrooms/utils/GroupHelper */ "./src/apps/classrooms/utils/GroupHelper.ts");
184
+ /* harmony import */ var _colour_picker_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./colour-picker.scss */ "./src/apps/classrooms/components/colour-picker/colour-picker.scss");
185
+ /* harmony import */ var _colour_picker_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_colour_picker_scss__WEBPACK_IMPORTED_MODULE_7__);
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+ ColourPicker.defaultProps = {
195
+ selection: apps_classrooms_enums_GroupColour__WEBPACK_IMPORTED_MODULE_5__["GroupColour"].White,
196
+ onSelect: function onSelect() {}
197
+ };
198
+ function ColourPicker(props) {
199
+ function getToggleButtonClass() {
200
+ var baseClass = "".concat(_colour_picker_scss__WEBPACK_IMPORTED_MODULE_7___default.a.dropdownToggle, " outline-none p-0 d-flex align-items-center text-decoration-none");
201
+ var disabledClass = props.disabled ? 'cursor-default' : '';
202
+ return "".concat(baseClass, " ").concat(disabledClass);
203
+ }
204
+
205
+ function getOptionClass(colour) {
206
+ var baseClass = "".concat(_colour_picker_scss__WEBPACK_IMPORTED_MODULE_7___default.a.colourOption, " position-relative");
207
+ var borderClass = colour === apps_classrooms_enums_GroupColour__WEBPACK_IMPORTED_MODULE_5__["GroupColour"].White ? 'border border-dark' : '';
208
+ var disabledClass = props.disabled ? 'cursor-default' : '';
209
+ var colorClass = Object(apps_classrooms_utils_GroupHelper__WEBPACK_IMPORTED_MODULE_6__["mapColourToClassName"])(colour);
210
+ return "".concat(baseClass, " ").concat(borderClass, " ").concat(disabledClass, " ").concat(colorClass);
211
+ }
212
+
213
+ var dropdownProps = {};
214
+ if (props.disabled) dropdownProps.show = false;
215
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"], Object.assign({}, dropdownProps), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"].Toggle, {
216
+ id: props.id,
217
+ variant: 'link',
218
+ className: getToggleButtonClass()
219
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
220
+ className: "border border-secondary rounded bg-white ".concat(_colour_picker_scss__WEBPACK_IMPORTED_MODULE_7___default.a.colourButton)
221
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
222
+ className: "px-0 py-1 rounded ".concat(Object(apps_classrooms_utils_GroupHelper__WEBPACK_IMPORTED_MODULE_6__["mapColourToClassName"])(props.selection))
223
+ }, "\xA0")), !props.disabled && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_svg_container_SvgContainer__WEBPACK_IMPORTED_MODULE_3__["SvgContainer"], {
224
+ svgName: _libs_shared_src_utils_SvgHelper__WEBPACK_IMPORTED_MODULE_4__["cvSvgLibrary"].Caret
225
+ })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react_bootstrap__WEBPACK_IMPORTED_MODULE_1__["Dropdown"].Menu, null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("ul", {
226
+ className: "".concat(_colour_picker_scss__WEBPACK_IMPORTED_MODULE_7___default.a.colourList, " list-unstyled d-flex flex-wrap px-2 m-0")
227
+ }, Object.keys(apps_classrooms_enums_GroupColour__WEBPACK_IMPORTED_MODULE_5__["GroupColour"]).map(function (colourKey) {
228
+ var colour = apps_classrooms_enums_GroupColour__WEBPACK_IMPORTED_MODULE_5__["GroupColour"][colourKey];
229
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("li", {
230
+ key: "".concat(props.id, ":").concat(colour),
231
+ className: 'm-1'
232
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_div_button_DivButton__WEBPACK_IMPORTED_MODULE_2__["DivButton"], {
233
+ onClick: function onClick() {
234
+ return props.onSelect(colour);
235
+ },
236
+ className: getOptionClass(colour)
237
+ }, colour === apps_classrooms_enums_GroupColour__WEBPACK_IMPORTED_MODULE_5__["GroupColour"].White ? react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
238
+ className: _colour_picker_scss__WEBPACK_IMPORTED_MODULE_7___default.a.lineThrough
239
+ }) : react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, "\xA0")));
240
+ }))));
241
+ }
242
+
243
+ /***/ }),
244
+
245
+ /***/ "./src/apps/classrooms/components/colour-picker/colour-picker.scss":
246
+ /*!*************************************************************************!*\
247
+ !*** ./src/apps/classrooms/components/colour-picker/colour-picker.scss ***!
248
+ \*************************************************************************/
249
+ /*! no static exports found */
250
+ /***/ (function(module, exports, __webpack_require__) {
251
+
252
+ // extracted by mini-css-extract-plugin
253
+ module.exports = {"dropdownToggle":"cv--dropdownToggle--347DY","colourButton":"cv--colourButton--1rKvE","colourList":"cv--colourList--328-w","colourOption":"cv--colourOption--1Tw7u","lineThrough":"cv--lineThrough--18oZq"};
254
+
255
+ /***/ }),
256
+
257
+ /***/ "./src/apps/classrooms/components/edit-classroom-group-details/EditClassroomGroupDetails.tsx":
258
+ /*!***************************************************************************************************!*\
259
+ !*** ./src/apps/classrooms/components/edit-classroom-group-details/EditClassroomGroupDetails.tsx ***!
260
+ \***************************************************************************************************/
261
+ /*! exports provided: EditClassroomGroupDetails */
262
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
263
+
264
+ "use strict";
265
+ __webpack_require__.r(__webpack_exports__);
266
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "EditClassroomGroupDetails", function() { return EditClassroomGroupDetails; });
267
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
268
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
269
+ /* harmony import */ var _libs_shared_src_components_forms_form_wrapper_FormWrapper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/forms/form-wrapper/FormWrapper */ "../../libs/shared/src/components/forms/form-wrapper/FormWrapper.tsx");
270
+ /* harmony import */ var apps_classrooms_validation_ClassroomGroupValidationSchema__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! apps/classrooms/validation/ClassroomGroupValidationSchema */ "./src/apps/classrooms/validation/ClassroomGroupValidationSchema.ts");
271
+ /* harmony import */ var apps_classrooms_components_classroom_group_details_form_ClassroomGroupDetailsForm__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! apps/classrooms/components/classroom-group-details-form/ClassroomGroupDetailsForm */ "./src/apps/classrooms/components/classroom-group-details-form/ClassroomGroupDetailsForm.tsx");
272
+
273
+
274
+
275
+
276
+ function EditClassroomGroupDetails(props) {
277
+ var _a, _b, _c;
278
+
279
+ var group = props.group,
280
+ saveGroup = props.saveGroup,
281
+ onClickCancel = props.onClickCancel;
282
+ var initialValues = {
283
+ id: (_a = group) === null || _a === void 0 ? void 0 : _a.id,
284
+ name: (_b = group) === null || _b === void 0 ? void 0 : _b.name,
285
+ colour: (_c = group) === null || _c === void 0 ? void 0 : _c.colour,
286
+ students: []
287
+ };
288
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_forms_form_wrapper_FormWrapper__WEBPACK_IMPORTED_MODULE_1__["FormWrapper"], {
289
+ initialValues: initialValues,
290
+ validationSchema: apps_classrooms_validation_ClassroomGroupValidationSchema__WEBPACK_IMPORTED_MODULE_2__["ClassroomGroupValidationSchema"],
291
+ onSubmit: saveGroup
292
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(apps_classrooms_components_classroom_group_details_form_ClassroomGroupDetailsForm__WEBPACK_IMPORTED_MODULE_3__["ClassroomGroupDetailsForm"], {
293
+ isNew: !group,
294
+ onClickCancel: onClickCancel
295
+ }));
296
+ }
297
+
298
+ /***/ }),
299
+
300
+ /***/ "./src/apps/classrooms/enums/GroupColour.ts":
301
+ /*!**************************************************!*\
302
+ !*** ./src/apps/classrooms/enums/GroupColour.ts ***!
303
+ \**************************************************/
304
+ /*! exports provided: GroupColour */
305
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
306
+
307
+ "use strict";
308
+ __webpack_require__.r(__webpack_exports__);
309
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GroupColour", function() { return GroupColour; });
310
+ var GroupColour;
311
+
312
+ (function (GroupColour) {
313
+ GroupColour["White"] = "white";
314
+ GroupColour["Pink"] = "pink";
315
+ GroupColour["YellowOrange"] = "yellow-orange";
316
+ GroupColour["Emerald"] = "emerald";
317
+ GroupColour["PuertoRico"] = "puerto-rico";
318
+ GroupColour["PictonBlue"] = "picton-blue";
319
+ GroupColour["EastSide"] = "east-side";
320
+ GroupColour["Portage"] = "portage";
321
+ })(GroupColour || (GroupColour = {}));
322
+
323
+ /***/ }),
324
+
325
+ /***/ "./src/apps/classrooms/utils/GroupHelper.ts":
326
+ /*!**************************************************!*\
327
+ !*** ./src/apps/classrooms/utils/GroupHelper.ts ***!
328
+ \**************************************************/
329
+ /*! exports provided: mapColourToClassName */
330
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
331
+
332
+ "use strict";
333
+ __webpack_require__.r(__webpack_exports__);
334
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapColourToClassName", function() { return mapColourToClassName; });
335
+ function mapColourToClassName(groupName) {
336
+ return "bg-".concat(groupName);
337
+ }
338
+
339
+ /***/ }),
340
+
341
+ /***/ "./src/apps/classrooms/validation/ClassroomGroupValidationSchema.ts":
342
+ /*!**************************************************************************!*\
343
+ !*** ./src/apps/classrooms/validation/ClassroomGroupValidationSchema.ts ***!
344
+ \**************************************************************************/
345
+ /*! exports provided: ClassroomGroupValidationSchema */
346
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
347
+
348
+ "use strict";
349
+ __webpack_require__.r(__webpack_exports__);
350
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ClassroomGroupValidationSchema", function() { return ClassroomGroupValidationSchema; });
351
+ /* harmony import */ var yup__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! yup */ "../../../node_modules/yup/lib/index.js");
352
+ /* harmony import */ var yup__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(yup__WEBPACK_IMPORTED_MODULE_0__);
353
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
354
+ /* harmony import */ var _enums_GroupColour__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enums/GroupColour */ "./src/apps/classrooms/enums/GroupColour.ts");
355
+
356
+
357
+
358
+ var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_1__["LanguageService"].encloseNamespace('classrooms.classroomValidation');
359
+ var ClassroomGroupValidationSchema = Object(yup__WEBPACK_IMPORTED_MODULE_0__["object"])().shape({
360
+ name: Object(yup__WEBPACK_IMPORTED_MODULE_0__["string"])().max(255, function () {
361
+ return getPhrase('nameExceeds');
362
+ }).required(function () {
363
+ return getPhrase('nameRequired');
364
+ })["default"](''),
365
+ colour: Object(yup__WEBPACK_IMPORTED_MODULE_0__["string"])().required(function () {
366
+ return getPhrase('colourRequired');
367
+ })["default"](_enums_GroupColour__WEBPACK_IMPORTED_MODULE_2__["GroupColour"].White)
368
+ });
369
+
370
+ /***/ }),
371
+
372
+ /***/ "./src/apps/classrooms/views/create-classroom-group/CreateClassroomGroupView.tsx":
373
+ /*!***************************************************************************************!*\
374
+ !*** ./src/apps/classrooms/views/create-classroom-group/CreateClassroomGroupView.tsx ***!
375
+ \***************************************************************************************/
376
+ /*! exports provided: CreateClassroomGroupView */
377
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
378
+
379
+ "use strict";
380
+ __webpack_require__.r(__webpack_exports__);
381
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CreateClassroomGroupView", function() { return CreateClassroomGroupView; });
382
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
383
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
384
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-redux */ "react-redux");
385
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
386
+ /* harmony import */ var _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../libs/common/src/backbone/services/LanguageService */ "../../libs/common/src/backbone/services/LanguageService.tsx");
387
+ /* harmony import */ var _libs_common_src_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../libs/common/src/react */ "../../libs/common/src/react/index.ts");
388
+ /* harmony import */ var _libs_shared_src_components_popup_Popup__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/components/popup/Popup */ "../../libs/shared/src/components/popup/Popup.tsx");
389
+ /* harmony import */ var _libs_shared_src_hooks_UseAlerts__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../libs/shared/src/hooks/UseAlerts */ "../../libs/shared/src/hooks/UseAlerts.ts");
390
+ /* harmony import */ var apps_classrooms_flight_requests_ClassroomRequests__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! apps/classrooms/flight-requests/ClassroomRequests */ "./src/apps/classrooms/flight-requests/ClassroomRequests.ts");
391
+ /* harmony import */ var apps_classrooms_components_edit_classroom_group_details_EditClassroomGroupDetails__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! apps/classrooms/components/edit-classroom-group-details/EditClassroomGroupDetails */ "./src/apps/classrooms/components/edit-classroom-group-details/EditClassroomGroupDetails.tsx");
392
+ /* harmony import */ var _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../../libs/analytics/src/AnalyticsHelper */ "../../libs/analytics/src/AnalyticsHelper.ts");
393
+ /* harmony import */ var _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../../../libs/analytics/src/interfaces */ "../../libs/analytics/src/interfaces/index.ts");
394
+
395
+
396
+
397
+
398
+
399
+
400
+
401
+
402
+
403
+
404
+ var namespace = 'classrooms.createClassroomGroup';
405
+ var getPhrase = _libs_common_src_backbone_services_LanguageService__WEBPACK_IMPORTED_MODULE_2__["LanguageService"].encloseNamespace(namespace);
406
+ function CreateClassroomGroupView(props) {
407
+ var classroom = _libs_common_src_react__WEBPACK_IMPORTED_MODULE_3__["Flight"].useBasicFetch(apps_classrooms_flight_requests_ClassroomRequests__WEBPACK_IMPORTED_MODULE_6__["ClassroomRequests"].getClassroom(props.classroomId));
408
+ var alerts = Object(_libs_shared_src_hooks_UseAlerts__WEBPACK_IMPORTED_MODULE_5__["useAlerts"])();
409
+ var dispatch = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["useDispatch"])();
410
+
411
+ var successCallback = function successCallback(group) {
412
+ alerts.success(getPhrase('success', {
413
+ groupName: group.name,
414
+ classroomName: classroom.data.name
415
+ }));
416
+ props.closePopup();
417
+ };
418
+
419
+ var addStudentsToGroup = function addStudentsToGroup(group) {
420
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_3__["Flight"].fetch(dispatch, apps_classrooms_flight_requests_ClassroomRequests__WEBPACK_IMPORTED_MODULE_6__["ClassroomRequests"].addStudentsToGroup(props.studentIds, group.id, function () {
421
+ _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_8__["AnalyticsHelper"].logUserAction({
422
+ id: group.id,
423
+ studentCount: props.studentIds.length
424
+ }, _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_8__["AnalyticsHelper"].mergeOptions(props.analyticsOptions, {
425
+ actionType: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_9__["UserAction"].Associate,
426
+ descriptor: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_9__["AssocDescriptor"].User
427
+ }));
428
+ successCallback(group);
429
+ }));
430
+ };
431
+
432
+ var saveGroupToClassroom = function saveGroupToClassroom(group) {
433
+ _libs_common_src_react__WEBPACK_IMPORTED_MODULE_3__["Flight"].fetch(dispatch, apps_classrooms_flight_requests_ClassroomRequests__WEBPACK_IMPORTED_MODULE_6__["ClassroomRequests"].addGroupToClassroom(group, props.classroomId, function (newGroup) {
434
+ var _a;
435
+
436
+ _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_8__["AnalyticsHelper"].logUserAction({
437
+ id: newGroup.id,
438
+ classroomId: props.classroomId
439
+ }, _libs_analytics_src_AnalyticsHelper__WEBPACK_IMPORTED_MODULE_8__["AnalyticsHelper"].mergeOptions(props.analyticsOptions, {
440
+ actionType: _libs_analytics_src_interfaces__WEBPACK_IMPORTED_MODULE_9__["UserAction"].Create
441
+ }));
442
+
443
+ if ((_a = props.studentIds) === null || _a === void 0 ? void 0 : _a.length) {
444
+ addStudentsToGroup(newGroup);
445
+ return;
446
+ }
447
+
448
+ successCallback(newGroup);
449
+ }, function () {
450
+ // TODO: Handle possible errors once we have a server side
451
+ alerts.error(getPhrase('error'));
452
+ }));
453
+ };
454
+
455
+ return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_libs_shared_src_components_popup_Popup__WEBPACK_IMPORTED_MODULE_4__["Popup"], {
456
+ title: getPhrase('title'),
457
+ closePopup: props.closePopup,
458
+ showLoadingSpinner: !classroom.data
459
+ }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(apps_classrooms_components_edit_classroom_group_details_EditClassroomGroupDetails__WEBPACK_IMPORTED_MODULE_7__["EditClassroomGroupDetails"], {
460
+ saveGroup: saveGroupToClassroom,
461
+ onClickCancel: props.closePopup
462
+ }));
463
+ }
464
+
465
+ /***/ })
466
+
467
+ }]);
468
+ //# sourceMappingURL=30.chunk.js.map