@100mslive/react-native-room-kit 1.1.0 → 1.1.2

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 (404) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/HMSRoomSetup.js +47 -0
  3. package/lib/commonjs/HMSRoomSetup.js.map +1 -1
  4. package/lib/commonjs/Icons/Add/assets/add-circle.png +0 -0
  5. package/lib/commonjs/Icons/Add/assets/add-circle@2x.png +0 -0
  6. package/lib/commonjs/Icons/Add/assets/add-circle@3x.png +0 -0
  7. package/lib/commonjs/Icons/Add/index.js +35 -0
  8. package/lib/commonjs/Icons/Add/index.js.map +1 -0
  9. package/lib/commonjs/Icons/Check/assets/check-in-circle.png +0 -0
  10. package/lib/commonjs/Icons/Check/assets/check-in-circle@2x.png +0 -0
  11. package/lib/commonjs/Icons/Check/assets/check-in-circle@3x.png +0 -0
  12. package/lib/commonjs/Icons/Check/index.js +2 -1
  13. package/lib/commonjs/Icons/Check/index.js.map +1 -1
  14. package/lib/commonjs/Icons/CheckBox/assets/checkbox-checked.png +0 -0
  15. package/lib/commonjs/Icons/CheckBox/assets/checkbox-checked@2x.png +0 -0
  16. package/lib/commonjs/Icons/CheckBox/assets/checkbox-checked@3x.png +0 -0
  17. package/lib/commonjs/Icons/CheckBox/assets/checkbox.png +0 -0
  18. package/lib/commonjs/Icons/CheckBox/assets/checkbox@2x.png +0 -0
  19. package/lib/commonjs/Icons/CheckBox/assets/checkbox@3x.png +0 -0
  20. package/lib/commonjs/Icons/CheckBox/index.js +41 -0
  21. package/lib/commonjs/Icons/CheckBox/index.js.map +1 -0
  22. package/lib/commonjs/Icons/Poll/assets/poll.png +0 -0
  23. package/lib/commonjs/Icons/Poll/assets/poll@2x.png +0 -0
  24. package/lib/commonjs/Icons/Poll/assets/poll@3x.png +0 -0
  25. package/lib/commonjs/Icons/Poll/index.js +33 -0
  26. package/lib/commonjs/Icons/Poll/index.js.map +1 -0
  27. package/lib/commonjs/Icons/PollVote/assets/poll-vote.png +0 -0
  28. package/lib/commonjs/Icons/PollVote/assets/poll-vote@2x.png +0 -0
  29. package/lib/commonjs/Icons/PollVote/assets/poll-vote@3x.png +0 -0
  30. package/lib/commonjs/Icons/PollVote/index.js +33 -0
  31. package/lib/commonjs/Icons/PollVote/index.js.map +1 -0
  32. package/lib/commonjs/Icons/Quiz/assets/quiz.png +0 -0
  33. package/lib/commonjs/Icons/Quiz/assets/quiz@2x.png +0 -0
  34. package/lib/commonjs/Icons/Quiz/assets/quiz@3x.png +0 -0
  35. package/lib/commonjs/Icons/Quiz/index.js +33 -0
  36. package/lib/commonjs/Icons/Quiz/index.js.map +1 -0
  37. package/lib/commonjs/Icons/TrashBin/assets/trash-bin.png +0 -0
  38. package/lib/commonjs/Icons/TrashBin/assets/trash-bin@2x.png +0 -0
  39. package/lib/commonjs/Icons/TrashBin/assets/trash-bin@3x.png +0 -0
  40. package/lib/commonjs/Icons/TrashBin/index.js +34 -0
  41. package/lib/commonjs/Icons/TrashBin/index.js.map +1 -0
  42. package/lib/commonjs/Icons/index.js +66 -0
  43. package/lib/commonjs/Icons/index.js.map +1 -1
  44. package/lib/commonjs/components/CheckboxInputRow.js +53 -0
  45. package/lib/commonjs/components/CheckboxInputRow.js.map +1 -0
  46. package/lib/commonjs/components/CreatePoll.js +209 -0
  47. package/lib/commonjs/components/CreatePoll.js.map +1 -0
  48. package/lib/commonjs/components/Footer.js +6 -1
  49. package/lib/commonjs/components/Footer.js.map +1 -1
  50. package/lib/commonjs/components/GridView.js +4 -8
  51. package/lib/commonjs/components/GridView.js.map +1 -1
  52. package/lib/commonjs/components/HLSPlayerEmoticons.js +2 -3
  53. package/lib/commonjs/components/HLSPlayerEmoticons.js.map +1 -1
  54. package/lib/commonjs/components/HMSBaseButton.js +4 -2
  55. package/lib/commonjs/components/HMSBaseButton.js.map +1 -1
  56. package/lib/commonjs/components/HMSNotification.js +5 -1
  57. package/lib/commonjs/components/HMSNotification.js.map +1 -1
  58. package/lib/commonjs/components/HMSNotifications.js +4 -0
  59. package/lib/commonjs/components/HMSNotifications.js.map +1 -1
  60. package/lib/commonjs/components/HMSPollsQuizzesNotification.js +95 -0
  61. package/lib/commonjs/components/HMSPollsQuizzesNotification.js.map +1 -0
  62. package/lib/commonjs/components/HMSRoomOptions.js +2 -1
  63. package/lib/commonjs/components/HMSRoomOptions.js.map +1 -1
  64. package/lib/commonjs/components/HMSSecondaryButton.js +56 -0
  65. package/lib/commonjs/components/HMSSecondaryButton.js.map +1 -0
  66. package/lib/commonjs/components/PollAndQuizQuestionResponseCard.js +233 -0
  67. package/lib/commonjs/components/PollAndQuizQuestionResponseCard.js.map +1 -0
  68. package/lib/commonjs/components/PollAndQuizQuestionResponseCards.js +53 -0
  69. package/lib/commonjs/components/PollAndQuizQuestionResponseCards.js.map +1 -0
  70. package/lib/commonjs/components/PollAndQuizVoting.js +135 -0
  71. package/lib/commonjs/components/PollAndQuizVoting.js.map +1 -0
  72. package/lib/commonjs/components/PollAndQuizzStateLabel.js +72 -0
  73. package/lib/commonjs/components/PollAndQuizzStateLabel.js.map +1 -0
  74. package/lib/commonjs/components/PollQDeleteConfirmationSheetView.js +68 -0
  75. package/lib/commonjs/components/PollQDeleteConfirmationSheetView.js.map +1 -0
  76. package/lib/commonjs/components/PollQuestion.js +424 -0
  77. package/lib/commonjs/components/PollQuestion.js.map +1 -0
  78. package/lib/commonjs/components/PollQuestionDeleteConfirmation.js +97 -0
  79. package/lib/commonjs/components/PollQuestionDeleteConfirmation.js.map +1 -0
  80. package/lib/commonjs/components/PollQuestions.js +203 -0
  81. package/lib/commonjs/components/PollQuestions.js.map +1 -0
  82. package/lib/commonjs/components/PollResponseProgressView.js +68 -0
  83. package/lib/commonjs/components/PollResponseProgressView.js.map +1 -0
  84. package/lib/commonjs/components/PollsAndQuizBottomSheet.js +59 -0
  85. package/lib/commonjs/components/PollsAndQuizBottomSheet.js.map +1 -0
  86. package/lib/commonjs/components/PollsAndQuizzesCard.js +97 -0
  87. package/lib/commonjs/components/PollsAndQuizzesCard.js.map +1 -0
  88. package/lib/commonjs/components/PollsAndQuizzesModalContent.js +159 -0
  89. package/lib/commonjs/components/PollsAndQuizzesModalContent.js.map +1 -0
  90. package/lib/commonjs/components/PollsConfigAndList.js +32 -0
  91. package/lib/commonjs/components/PollsConfigAndList.js.map +1 -0
  92. package/lib/commonjs/components/PreviousPollsAndQuizzesList.js +76 -0
  93. package/lib/commonjs/components/PreviousPollsAndQuizzesList.js.map +1 -0
  94. package/lib/commonjs/components/QuizEndOptionsView.js +63 -0
  95. package/lib/commonjs/components/QuizEndOptionsView.js.map +1 -0
  96. package/lib/commonjs/components/RadioInput.js +49 -0
  97. package/lib/commonjs/components/RadioInput.js.map +1 -0
  98. package/lib/commonjs/components/RadioInputRow.js +57 -0
  99. package/lib/commonjs/components/RadioInputRow.js.map +1 -0
  100. package/lib/commonjs/components/RoomSettingsModalContent.js +31 -6
  101. package/lib/commonjs/components/RoomSettingsModalContent.js.map +1 -1
  102. package/lib/commonjs/components/SwitchRow.js +2 -1
  103. package/lib/commonjs/components/SwitchRow.js.map +1 -1
  104. package/lib/commonjs/components/TilesContainer.js +3 -4
  105. package/lib/commonjs/components/TilesContainer.js.map +1 -1
  106. package/lib/commonjs/hooks-util.js +26 -1
  107. package/lib/commonjs/hooks-util.js.map +1 -1
  108. package/lib/commonjs/redux/actionTypes.js +40 -1
  109. package/lib/commonjs/redux/actionTypes.js.map +1 -1
  110. package/lib/commonjs/redux/actions/index.js +153 -1
  111. package/lib/commonjs/redux/actions/index.js.map +1 -1
  112. package/lib/commonjs/redux/reducers/index.js +3 -1
  113. package/lib/commonjs/redux/reducers/index.js.map +1 -1
  114. package/lib/commonjs/redux/reducers/polls.js +278 -0
  115. package/lib/commonjs/redux/reducers/polls.js.map +1 -0
  116. package/lib/commonjs/types.js +1 -0
  117. package/lib/commonjs/types.js.map +1 -1
  118. package/lib/commonjs/utils/functions.js +52 -2
  119. package/lib/commonjs/utils/functions.js.map +1 -1
  120. package/lib/commonjs/utils/types.js +1 -0
  121. package/lib/commonjs/utils/types.js.map +1 -1
  122. package/lib/module/HMSRoomSetup.js +50 -3
  123. package/lib/module/HMSRoomSetup.js.map +1 -1
  124. package/lib/module/Icons/Add/assets/add-circle.png +0 -0
  125. package/lib/module/Icons/Add/assets/add-circle@2x.png +0 -0
  126. package/lib/module/Icons/Add/assets/add-circle@3x.png +0 -0
  127. package/lib/module/Icons/Add/index.js +27 -0
  128. package/lib/module/Icons/Add/index.js.map +1 -0
  129. package/lib/module/Icons/Check/assets/check-in-circle.png +0 -0
  130. package/lib/module/Icons/Check/assets/check-in-circle@2x.png +0 -0
  131. package/lib/module/Icons/Check/assets/check-in-circle@3x.png +0 -0
  132. package/lib/module/Icons/Check/index.js +2 -1
  133. package/lib/module/Icons/Check/index.js.map +1 -1
  134. package/lib/module/Icons/CheckBox/assets/checkbox-checked.png +0 -0
  135. package/lib/module/Icons/CheckBox/assets/checkbox-checked@2x.png +0 -0
  136. package/lib/module/Icons/CheckBox/assets/checkbox-checked@3x.png +0 -0
  137. package/lib/module/Icons/CheckBox/assets/checkbox.png +0 -0
  138. package/lib/module/Icons/CheckBox/assets/checkbox@2x.png +0 -0
  139. package/lib/module/Icons/CheckBox/assets/checkbox@3x.png +0 -0
  140. package/lib/module/Icons/CheckBox/index.js +33 -0
  141. package/lib/module/Icons/CheckBox/index.js.map +1 -0
  142. package/lib/module/Icons/Poll/assets/poll.png +0 -0
  143. package/lib/module/Icons/Poll/assets/poll@2x.png +0 -0
  144. package/lib/module/Icons/Poll/assets/poll@3x.png +0 -0
  145. package/lib/module/Icons/Poll/index.js +25 -0
  146. package/lib/module/Icons/Poll/index.js.map +1 -0
  147. package/lib/module/Icons/PollVote/assets/poll-vote.png +0 -0
  148. package/lib/module/Icons/PollVote/assets/poll-vote@2x.png +0 -0
  149. package/lib/module/Icons/PollVote/assets/poll-vote@3x.png +0 -0
  150. package/lib/module/Icons/PollVote/index.js +25 -0
  151. package/lib/module/Icons/PollVote/index.js.map +1 -0
  152. package/lib/module/Icons/Quiz/assets/quiz.png +0 -0
  153. package/lib/module/Icons/Quiz/assets/quiz@2x.png +0 -0
  154. package/lib/module/Icons/Quiz/assets/quiz@3x.png +0 -0
  155. package/lib/module/Icons/Quiz/index.js +25 -0
  156. package/lib/module/Icons/Quiz/index.js.map +1 -0
  157. package/lib/module/Icons/TrashBin/assets/trash-bin.png +0 -0
  158. package/lib/module/Icons/TrashBin/assets/trash-bin@2x.png +0 -0
  159. package/lib/module/Icons/TrashBin/assets/trash-bin@3x.png +0 -0
  160. package/lib/module/Icons/TrashBin/index.js +26 -0
  161. package/lib/module/Icons/TrashBin/index.js.map +1 -0
  162. package/lib/module/Icons/index.js +6 -0
  163. package/lib/module/Icons/index.js.map +1 -1
  164. package/lib/module/components/CheckboxInputRow.js +45 -0
  165. package/lib/module/components/CheckboxInputRow.js.map +1 -0
  166. package/lib/module/components/CreatePoll.js +200 -0
  167. package/lib/module/components/CreatePoll.js.map +1 -0
  168. package/lib/module/components/Footer.js +6 -1
  169. package/lib/module/components/Footer.js.map +1 -1
  170. package/lib/module/components/GridView.js +5 -9
  171. package/lib/module/components/GridView.js.map +1 -1
  172. package/lib/module/components/HLSPlayerEmoticons.js +2 -3
  173. package/lib/module/components/HLSPlayerEmoticons.js.map +1 -1
  174. package/lib/module/components/HMSBaseButton.js +5 -3
  175. package/lib/module/components/HMSBaseButton.js.map +1 -1
  176. package/lib/module/components/HMSNotification.js +5 -1
  177. package/lib/module/components/HMSNotification.js.map +1 -1
  178. package/lib/module/components/HMSNotifications.js +4 -0
  179. package/lib/module/components/HMSNotifications.js.map +1 -1
  180. package/lib/module/components/HMSPollsQuizzesNotification.js +86 -0
  181. package/lib/module/components/HMSPollsQuizzesNotification.js.map +1 -0
  182. package/lib/module/components/HMSRoomOptions.js +2 -1
  183. package/lib/module/components/HMSRoomOptions.js.map +1 -1
  184. package/lib/module/components/HMSSecondaryButton.js +47 -0
  185. package/lib/module/components/HMSSecondaryButton.js.map +1 -0
  186. package/lib/module/components/PollAndQuizQuestionResponseCard.js +224 -0
  187. package/lib/module/components/PollAndQuizQuestionResponseCard.js.map +1 -0
  188. package/lib/module/components/PollAndQuizQuestionResponseCards.js +44 -0
  189. package/lib/module/components/PollAndQuizQuestionResponseCards.js.map +1 -0
  190. package/lib/module/components/PollAndQuizVoting.js +126 -0
  191. package/lib/module/components/PollAndQuizVoting.js.map +1 -0
  192. package/lib/module/components/PollAndQuizzStateLabel.js +63 -0
  193. package/lib/module/components/PollAndQuizzStateLabel.js.map +1 -0
  194. package/lib/module/components/PollQDeleteConfirmationSheetView.js +60 -0
  195. package/lib/module/components/PollQDeleteConfirmationSheetView.js.map +1 -0
  196. package/lib/module/components/PollQuestion.js +415 -0
  197. package/lib/module/components/PollQuestion.js.map +1 -0
  198. package/lib/module/components/PollQuestionDeleteConfirmation.js +88 -0
  199. package/lib/module/components/PollQuestionDeleteConfirmation.js.map +1 -0
  200. package/lib/module/components/PollQuestions.js +194 -0
  201. package/lib/module/components/PollQuestions.js.map +1 -0
  202. package/lib/module/components/PollResponseProgressView.js +59 -0
  203. package/lib/module/components/PollResponseProgressView.js.map +1 -0
  204. package/lib/module/components/PollsAndQuizBottomSheet.js +50 -0
  205. package/lib/module/components/PollsAndQuizBottomSheet.js.map +1 -0
  206. package/lib/module/components/PollsAndQuizzesCard.js +88 -0
  207. package/lib/module/components/PollsAndQuizzesCard.js.map +1 -0
  208. package/lib/module/components/PollsAndQuizzesModalContent.js +150 -0
  209. package/lib/module/components/PollsAndQuizzesModalContent.js.map +1 -0
  210. package/lib/module/components/PollsConfigAndList.js +23 -0
  211. package/lib/module/components/PollsConfigAndList.js.map +1 -0
  212. package/lib/module/components/PreviousPollsAndQuizzesList.js +67 -0
  213. package/lib/module/components/PreviousPollsAndQuizzesList.js.map +1 -0
  214. package/lib/module/components/QuizEndOptionsView.js +54 -0
  215. package/lib/module/components/QuizEndOptionsView.js.map +1 -0
  216. package/lib/module/components/RadioInput.js +41 -0
  217. package/lib/module/components/RadioInput.js.map +1 -0
  218. package/lib/module/components/RadioInputRow.js +49 -0
  219. package/lib/module/components/RadioInputRow.js.map +1 -0
  220. package/lib/module/components/RoomSettingsModalContent.js +32 -7
  221. package/lib/module/components/RoomSettingsModalContent.js.map +1 -1
  222. package/lib/module/components/SwitchRow.js +2 -1
  223. package/lib/module/components/SwitchRow.js.map +1 -1
  224. package/lib/module/components/TilesContainer.js +5 -6
  225. package/lib/module/components/TilesContainer.js.map +1 -1
  226. package/lib/module/hooks-util.js +26 -4
  227. package/lib/module/hooks-util.js.map +1 -1
  228. package/lib/module/redux/actionTypes.js +41 -0
  229. package/lib/module/redux/actionTypes.js.map +1 -1
  230. package/lib/module/redux/actions/index.js +127 -1
  231. package/lib/module/redux/actions/index.js.map +1 -1
  232. package/lib/module/redux/reducers/index.js +3 -1
  233. package/lib/module/redux/reducers/index.js.map +1 -1
  234. package/lib/module/redux/reducers/polls.js +272 -0
  235. package/lib/module/redux/reducers/polls.js.map +1 -0
  236. package/lib/module/types.js +1 -0
  237. package/lib/module/types.js.map +1 -1
  238. package/lib/module/utils/functions.js +45 -1
  239. package/lib/module/utils/functions.js.map +1 -1
  240. package/lib/module/utils/types.js +1 -0
  241. package/lib/module/utils/types.js.map +1 -1
  242. package/lib/typescript/HMSRoomSetup.d.ts.map +1 -1
  243. package/lib/typescript/Icons/Add/index.d.ts +8 -0
  244. package/lib/typescript/Icons/Add/index.d.ts.map +1 -0
  245. package/lib/typescript/Icons/Check/index.d.ts +1 -0
  246. package/lib/typescript/Icons/Check/index.d.ts.map +1 -1
  247. package/lib/typescript/Icons/CheckBox/index.d.ts +9 -0
  248. package/lib/typescript/Icons/CheckBox/index.d.ts.map +1 -0
  249. package/lib/typescript/Icons/Poll/index.d.ts +7 -0
  250. package/lib/typescript/Icons/Poll/index.d.ts.map +1 -0
  251. package/lib/typescript/Icons/PollVote/index.d.ts +7 -0
  252. package/lib/typescript/Icons/PollVote/index.d.ts.map +1 -0
  253. package/lib/typescript/Icons/Quiz/index.d.ts +7 -0
  254. package/lib/typescript/Icons/Quiz/index.d.ts.map +1 -0
  255. package/lib/typescript/Icons/TrashBin/index.d.ts +7 -0
  256. package/lib/typescript/Icons/TrashBin/index.d.ts.map +1 -0
  257. package/lib/typescript/Icons/index.d.ts +6 -0
  258. package/lib/typescript/Icons/index.d.ts.map +1 -1
  259. package/lib/typescript/components/CheckboxInputRow.d.ts +13 -0
  260. package/lib/typescript/components/CheckboxInputRow.d.ts.map +1 -0
  261. package/lib/typescript/components/CreatePoll.d.ts +5 -0
  262. package/lib/typescript/components/CreatePoll.d.ts.map +1 -0
  263. package/lib/typescript/components/Footer.d.ts.map +1 -1
  264. package/lib/typescript/components/GridView.d.ts.map +1 -1
  265. package/lib/typescript/components/HLSPlayerEmoticons.d.ts.map +1 -1
  266. package/lib/typescript/components/HMSBaseButton.d.ts +2 -1
  267. package/lib/typescript/components/HMSBaseButton.d.ts.map +1 -1
  268. package/lib/typescript/components/HMSNotifications.d.ts.map +1 -1
  269. package/lib/typescript/components/HMSPollsQuizzesNotification.d.ts +7 -0
  270. package/lib/typescript/components/HMSPollsQuizzesNotification.d.ts.map +1 -0
  271. package/lib/typescript/components/HMSPrimaryButton.d.ts +1 -1
  272. package/lib/typescript/components/HMSPrimaryButton.d.ts.map +1 -1
  273. package/lib/typescript/components/HMSRoomOptions.d.ts.map +1 -1
  274. package/lib/typescript/components/HMSSecondaryButton.d.ts +15 -0
  275. package/lib/typescript/components/HMSSecondaryButton.d.ts.map +1 -0
  276. package/lib/typescript/components/PollAndQuizQuestionResponseCard.d.ts +13 -0
  277. package/lib/typescript/components/PollAndQuizQuestionResponseCard.d.ts.map +1 -0
  278. package/lib/typescript/components/PollAndQuizQuestionResponseCards.d.ts +9 -0
  279. package/lib/typescript/components/PollAndQuizQuestionResponseCards.d.ts.map +1 -0
  280. package/lib/typescript/components/PollAndQuizVoting.d.ts +6 -0
  281. package/lib/typescript/components/PollAndQuizVoting.d.ts.map +1 -0
  282. package/lib/typescript/components/PollAndQuizzStateLabel.d.ts +7 -0
  283. package/lib/typescript/components/PollAndQuizzStateLabel.d.ts.map +1 -0
  284. package/lib/typescript/components/PollQDeleteConfirmationSheetView.d.ts +6 -0
  285. package/lib/typescript/components/PollQDeleteConfirmationSheetView.d.ts.map +1 -0
  286. package/lib/typescript/components/PollQuestion.d.ts +15 -0
  287. package/lib/typescript/components/PollQuestion.d.ts.map +1 -0
  288. package/lib/typescript/components/PollQuestionDeleteConfirmation.d.ts +6 -0
  289. package/lib/typescript/components/PollQuestionDeleteConfirmation.d.ts.map +1 -0
  290. package/lib/typescript/components/PollQuestions.d.ts +6 -0
  291. package/lib/typescript/components/PollQuestions.d.ts.map +1 -0
  292. package/lib/typescript/components/PollResponseProgressView.d.ts +9 -0
  293. package/lib/typescript/components/PollResponseProgressView.d.ts.map +1 -0
  294. package/lib/typescript/components/PollsAndQuizBottomSheet.d.ts +3 -0
  295. package/lib/typescript/components/PollsAndQuizBottomSheet.d.ts.map +1 -0
  296. package/lib/typescript/components/PollsAndQuizzesCard.d.ts +7 -0
  297. package/lib/typescript/components/PollsAndQuizzesCard.d.ts.map +1 -0
  298. package/lib/typescript/components/PollsAndQuizzesModalContent.d.ts +7 -0
  299. package/lib/typescript/components/PollsAndQuizzesModalContent.d.ts.map +1 -0
  300. package/lib/typescript/components/PollsConfigAndList.d.ts +5 -0
  301. package/lib/typescript/components/PollsConfigAndList.d.ts.map +1 -0
  302. package/lib/typescript/components/PreviousPollsAndQuizzesList.d.ts +5 -0
  303. package/lib/typescript/components/PreviousPollsAndQuizzesList.d.ts.map +1 -0
  304. package/lib/typescript/components/QuizEndOptionsView.d.ts +10 -0
  305. package/lib/typescript/components/QuizEndOptionsView.d.ts.map +1 -0
  306. package/lib/typescript/components/RadioInput.d.ts +10 -0
  307. package/lib/typescript/components/RadioInput.d.ts.map +1 -0
  308. package/lib/typescript/components/RadioInputRow.d.ts +16 -0
  309. package/lib/typescript/components/RadioInputRow.d.ts.map +1 -0
  310. package/lib/typescript/components/RoomSettingsModalContent.d.ts.map +1 -1
  311. package/lib/typescript/components/SwitchRow.d.ts +2 -1
  312. package/lib/typescript/components/SwitchRow.d.ts.map +1 -1
  313. package/lib/typescript/hooks-util.d.ts +1 -0
  314. package/lib/typescript/hooks-util.d.ts.map +1 -1
  315. package/lib/typescript/redux/actionTypes.d.ts +176 -0
  316. package/lib/typescript/redux/actionTypes.d.ts.map +1 -1
  317. package/lib/typescript/redux/actions/index.d.ts +38 -2
  318. package/lib/typescript/redux/actions/index.d.ts.map +1 -1
  319. package/lib/typescript/redux/index.d.ts +13 -0
  320. package/lib/typescript/redux/index.d.ts.map +1 -1
  321. package/lib/typescript/redux/reducers/index.d.ts +13 -0
  322. package/lib/typescript/redux/reducers/index.d.ts.map +1 -1
  323. package/lib/typescript/redux/reducers/polls.d.ts +19 -0
  324. package/lib/typescript/redux/reducers/polls.d.ts.map +1 -0
  325. package/lib/typescript/types.d.ts +3 -1
  326. package/lib/typescript/types.d.ts.map +1 -1
  327. package/lib/typescript/utils/functions.d.ts +7 -1
  328. package/lib/typescript/utils/functions.d.ts.map +1 -1
  329. package/lib/typescript/utils/types.d.ts +1 -0
  330. package/lib/typescript/utils/types.d.ts.map +1 -1
  331. package/package.json +2 -2
  332. package/src/HMSRoomSetup.tsx +62 -0
  333. package/src/Icons/Add/assets/add-circle.png +0 -0
  334. package/src/Icons/Add/assets/add-circle@2x.png +0 -0
  335. package/src/Icons/Add/assets/add-circle@3x.png +0 -0
  336. package/src/Icons/Add/index.tsx +37 -0
  337. package/src/Icons/Check/assets/check-in-circle.png +0 -0
  338. package/src/Icons/Check/assets/check-in-circle@2x.png +0 -0
  339. package/src/Icons/Check/assets/check-in-circle@3x.png +0 -0
  340. package/src/Icons/Check/index.tsx +9 -2
  341. package/src/Icons/CheckBox/assets/checkbox-checked.png +0 -0
  342. package/src/Icons/CheckBox/assets/checkbox-checked@2x.png +0 -0
  343. package/src/Icons/CheckBox/assets/checkbox-checked@3x.png +0 -0
  344. package/src/Icons/CheckBox/assets/checkbox.png +0 -0
  345. package/src/Icons/CheckBox/assets/checkbox@2x.png +0 -0
  346. package/src/Icons/CheckBox/assets/checkbox@3x.png +0 -0
  347. package/src/Icons/CheckBox/index.tsx +54 -0
  348. package/src/Icons/Poll/assets/poll.png +0 -0
  349. package/src/Icons/Poll/assets/poll@2x.png +0 -0
  350. package/src/Icons/Poll/assets/poll@3x.png +0 -0
  351. package/src/Icons/Poll/index.tsx +30 -0
  352. package/src/Icons/PollVote/assets/poll-vote.png +0 -0
  353. package/src/Icons/PollVote/assets/poll-vote@2x.png +0 -0
  354. package/src/Icons/PollVote/assets/poll-vote@3x.png +0 -0
  355. package/src/Icons/PollVote/index.tsx +33 -0
  356. package/src/Icons/Quiz/assets/quiz.png +0 -0
  357. package/src/Icons/Quiz/assets/quiz@2x.png +0 -0
  358. package/src/Icons/Quiz/assets/quiz@3x.png +0 -0
  359. package/src/Icons/Quiz/index.tsx +30 -0
  360. package/src/Icons/TrashBin/assets/trash-bin.png +0 -0
  361. package/src/Icons/TrashBin/assets/trash-bin@2x.png +0 -0
  362. package/src/Icons/TrashBin/assets/trash-bin@3x.png +0 -0
  363. package/src/Icons/TrashBin/index.tsx +34 -0
  364. package/src/Icons/index.ts +6 -0
  365. package/src/components/CheckboxInputRow.tsx +68 -0
  366. package/src/components/CreatePoll.tsx +249 -0
  367. package/src/components/Footer.tsx +7 -1
  368. package/src/components/GridView.tsx +4 -14
  369. package/src/components/HLSPlayerEmoticons.tsx +2 -3
  370. package/src/components/HMSBaseButton.tsx +8 -3
  371. package/src/components/HMSNotification.tsx +1 -1
  372. package/src/components/HMSNotifications.tsx +7 -0
  373. package/src/components/HMSPollsQuizzesNotification.tsx +110 -0
  374. package/src/components/HMSPrimaryButton.tsx +1 -1
  375. package/src/components/HMSRoomOptions.tsx +3 -0
  376. package/src/components/HMSSecondaryButton.tsx +72 -0
  377. package/src/components/PollAndQuizQuestionResponseCard.tsx +414 -0
  378. package/src/components/PollAndQuizQuestionResponseCards.tsx +62 -0
  379. package/src/components/PollAndQuizVoting.tsx +161 -0
  380. package/src/components/PollAndQuizzStateLabel.tsx +83 -0
  381. package/src/components/PollQDeleteConfirmationSheetView.tsx +82 -0
  382. package/src/components/PollQuestion.tsx +668 -0
  383. package/src/components/PollQuestionDeleteConfirmation.tsx +110 -0
  384. package/src/components/PollQuestions.tsx +277 -0
  385. package/src/components/PollResponseProgressView.tsx +77 -0
  386. package/src/components/PollsAndQuizBottomSheet.tsx +83 -0
  387. package/src/components/PollsAndQuizzesCard.tsx +111 -0
  388. package/src/components/PollsAndQuizzesModalContent.tsx +198 -0
  389. package/src/components/PollsConfigAndList.tsx +29 -0
  390. package/src/components/PreviousPollsAndQuizzesList.tsx +103 -0
  391. package/src/components/QuizEndOptionsView.tsx +71 -0
  392. package/src/components/RadioInput.tsx +56 -0
  393. package/src/components/RadioInputRow.tsx +73 -0
  394. package/src/components/RoomSettingsModalContent.tsx +23 -0
  395. package/src/components/SwitchRow.tsx +4 -2
  396. package/src/components/TilesContainer.tsx +4 -4
  397. package/src/hooks-util.ts +40 -1
  398. package/src/redux/actionTypes.ts +241 -0
  399. package/src/redux/actions/index.ts +240 -1
  400. package/src/redux/reducers/index.ts +2 -0
  401. package/src/redux/reducers/polls.ts +378 -0
  402. package/src/types.ts +2 -0
  403. package/src/utils/functions.ts +98 -0
  404. package/src/utils/types.ts +1 -0
@@ -0,0 +1,86 @@
1
+ import * as React from 'react';
2
+ import { batch, useDispatch } from 'react-redux';
3
+ import { StyleSheet, Text, TouchableHighlight } from 'react-native';
4
+ import { GestureDetector, Gesture } from 'react-native-gesture-handler';
5
+ import { HMSPollType, HMSPollUpdateType } from '@100mslive/react-native-hms';
6
+ import { PollVoteIcon } from '../Icons';
7
+ import { useHMSRoomColorPalette, useHMSRoomStyleSheet, useModalType } from '../hooks-util';
8
+ import { HMSNotification } from './HMSNotification';
9
+ import { ModalTypes } from '../utils/types';
10
+ import { removeNotification, setPollStage, setSelectedPollId } from '../redux/actions';
11
+ import { CreatePollStages } from '../redux/actionTypes';
12
+ export const HMSPollsQuizzesNotification = ({
13
+ id,
14
+ payload
15
+ }) => {
16
+ const {
17
+ poll,
18
+ pollUpdateType
19
+ } = payload;
20
+ const dispatch = useDispatch();
21
+ const {
22
+ handleModalVisibleType
23
+ } = useModalType();
24
+ const {
25
+ secondary_dim: secondaryDimColor
26
+ } = useHMSRoomColorPalette();
27
+ // const canVoteOnPoll = useSelector((state: RootState) => {
28
+ // const permissions = state.hmsStates.localPeer?.role?.permissions;
29
+ // return permissions?.pollRead;
30
+ // });
31
+
32
+ const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
33
+ button: {
34
+ backgroundColor: theme.palette.secondary_default
35
+ },
36
+ buttonText: {
37
+ color: theme.palette.on_secondary_high,
38
+ fontFamily: `${typography.font_family}-SemiBold`
39
+ }
40
+ }));
41
+ const handleVotePress = () => {
42
+ // if (!canVoteOnPoll) {
43
+ // return;
44
+ // }
45
+ batch(() => {
46
+ dispatch(setPollStage(CreatePollStages.POLL_VOTING));
47
+ dispatch(setSelectedPollId(poll.pollId));
48
+ handleModalVisibleType(ModalTypes.POLLS_AND_QUIZZES);
49
+ dispatch(removeNotification(id));
50
+ });
51
+ };
52
+ return /*#__PURE__*/React.createElement(HMSNotification, {
53
+ id: id,
54
+ icon: /*#__PURE__*/React.createElement(PollVoteIcon, null),
55
+ text: poll.createdBy ? `${poll.createdBy.name} ${pollUpdateType === HMSPollUpdateType.started ? 'started' : ''} a new ${poll.type === HMSPollType.poll ? 'poll' : 'quiz'}` : `A new ${poll.type === HMSPollType.poll ? 'poll' : 'quiz'} has started`,
56
+ autoDismiss: false,
57
+ dismissable: true,
58
+ cta:
59
+ /*#__PURE__*/
60
+ // canVoteOnPoll ? (
61
+ React.createElement(GestureDetector, {
62
+ gesture: Gesture.Tap()
63
+ }, /*#__PURE__*/React.createElement(TouchableHighlight, {
64
+ underlayColor: secondaryDimColor,
65
+ style: [styles.button, hmsRoomStyles.button],
66
+ onPress: handleVotePress
67
+ }, /*#__PURE__*/React.createElement(Text, {
68
+ style: [styles.buttonText, hmsRoomStyles.buttonText]
69
+ }, poll.type === HMSPollType.quiz ? 'Answer' : 'Vote')))
70
+ // ) : undefined
71
+ });
72
+ };
73
+ const styles = StyleSheet.create({
74
+ button: {
75
+ paddingVertical: 8,
76
+ paddingHorizontal: 16,
77
+ borderRadius: 8,
78
+ marginRight: 16
79
+ },
80
+ buttonText: {
81
+ fontSize: 14,
82
+ lineHeight: 20,
83
+ letterSpacing: 0.25
84
+ }
85
+ });
86
+ //# sourceMappingURL=HMSPollsQuizzesNotification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","batch","useDispatch","StyleSheet","Text","TouchableHighlight","GestureDetector","Gesture","HMSPollType","HMSPollUpdateType","PollVoteIcon","useHMSRoomColorPalette","useHMSRoomStyleSheet","useModalType","HMSNotification","ModalTypes","removeNotification","setPollStage","setSelectedPollId","CreatePollStages","HMSPollsQuizzesNotification","id","payload","poll","pollUpdateType","dispatch","handleModalVisibleType","secondary_dim","secondaryDimColor","hmsRoomStyles","theme","typography","button","backgroundColor","palette","secondary_default","buttonText","color","on_secondary_high","fontFamily","font_family","handleVotePress","POLL_VOTING","pollId","POLLS_AND_QUIZZES","createElement","icon","text","createdBy","name","started","type","autoDismiss","dismissable","cta","gesture","Tap","underlayColor","style","styles","onPress","quiz","create","paddingVertical","paddingHorizontal","borderRadius","marginRight","fontSize","lineHeight","letterSpacing"],"sourceRoot":"../../../src","sources":["components/HMSPollsQuizzesNotification.tsx"],"mappings":"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"}
@@ -12,6 +12,7 @@ import { BottomSheet } from './BottomSheet';
12
12
  import { ChangeNameModalContent } from './ChangeNameModalContent';
13
13
  import { StopRecordingModalContent } from './StopRecordingModalContent';
14
14
  import { TestIds } from '../utils/constants';
15
+ import { PollsAndQuizBottomSheet } from './PollsAndQuizBottomSheet';
15
16
  export const HMSRoomOptions = () => {
16
17
  const {
17
18
  modalVisibleType: modalVisible,
@@ -40,7 +41,7 @@ export const HMSRoomOptions = () => {
40
41
  setAudioDeviceListenerAdded: setAudioDeviceChangeListener,
41
42
  setIsAudioShared: setIsAudioShared,
42
43
  setMuteAllTracksAudio: setMuteAllTracksAudio
43
- })), /*#__PURE__*/React.createElement(BottomSheet, {
44
+ })), /*#__PURE__*/React.createElement(PollsAndQuizBottomSheet, null), /*#__PURE__*/React.createElement(BottomSheet, {
44
45
  isVisible: modalVisible === ModalTypes.CHANGE_NAME,
45
46
  dismissModal: dismissModal,
46
47
  avoidKeyboard: true
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","HMSAudioMixingMode","HMSAudioMode","PressableIcon","HamburgerIcon","DefaultModal","RoomSettingsModalContent","ChangeAudioMixingModeModal","ChangeAudioModeModal","ChangeAudioOutputModal","ChangeBulkRoleModal","ChangeTrackStateForRoleModal","HlsStreamingModal","RecordingModal","RtcStatsModal","ModalTypes","useModalType","BottomSheet","ChangeNameModalContent","StopRecordingModalContent","TestIds","HMSRoomOptions","modalVisibleType","modalVisible","handleModalVisibleType","setModalVisible","isAudioShared","setIsAudioShared","useState","audioMode","setAudioMode","MODE_NORMAL","muteAllTracksAudio","setMuteAllTracksAudio","audioDeviceChangeListener","setAudioDeviceChangeListener","newAudioMixingMode","setNewAudioMixingMode","TALK_AND_MUSIC","onSettingsPress","SETTINGS","dismissModal","DEFAULT","createElement","testID","room_options_btn","onPress","isVisible","audioDeviceListenerAdded","closeRoomSettingsModal","setAudioDeviceListenerAdded","CHANGE_NAME","avoidKeyboard","STOP_RECORDING","animationIn","animationOut","RTC_STATS","modalPosiion","RECORDING","HLS_STREAMING","cancelModal","CHANGE_TRACK_ROLE","SWITCH_AUDIO_OUTPUT","CHANGE_AUDIO_MODE","AUDIO_MIXING_MODE","BULK_ROLE_CHANGE"],"sourceRoot":"../../../src","sources":["components/HMSRoomOptions.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","View","HMSAudioMixingMode","HMSAudioMode","PressableIcon","HamburgerIcon","DefaultModal","RoomSettingsModalContent","ChangeAudioMixingModeModal","ChangeAudioModeModal","ChangeAudioOutputModal","ChangeBulkRoleModal","ChangeTrackStateForRoleModal","HlsStreamingModal","RecordingModal","RtcStatsModal","ModalTypes","useModalType","BottomSheet","ChangeNameModalContent","StopRecordingModalContent","TestIds","PollsAndQuizBottomSheet","HMSRoomOptions","modalVisibleType","modalVisible","handleModalVisibleType","setModalVisible","isAudioShared","setIsAudioShared","useState","audioMode","setAudioMode","MODE_NORMAL","muteAllTracksAudio","setMuteAllTracksAudio","audioDeviceChangeListener","setAudioDeviceChangeListener","newAudioMixingMode","setNewAudioMixingMode","TALK_AND_MUSIC","onSettingsPress","SETTINGS","dismissModal","DEFAULT","createElement","testID","room_options_btn","onPress","isVisible","audioDeviceListenerAdded","closeRoomSettingsModal","setAudioDeviceListenerAdded","CHANGE_NAME","avoidKeyboard","STOP_RECORDING","animationIn","animationOut","RTC_STATS","modalPosiion","RECORDING","HLS_STREAMING","cancelModal","CHANGE_TRACK_ROLE","SWITCH_AUDIO_OUTPUT","CHANGE_AUDIO_MODE","AUDIO_MIXING_MODE","BULK_ROLE_CHANGE"],"sourceRoot":"../../../src","sources":["components/HMSRoomOptions.tsx"],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import * as React from 'react';
2
+ import { useHMSRoomColorPalette, useHMSRoomStyleSheet } from '../hooks-util';
3
+ import { HMSBaseButton } from './HMSBaseButton';
4
+ export const HMSSecondaryButton = ({
5
+ title,
6
+ loading,
7
+ onPress,
8
+ testId,
9
+ style,
10
+ disabled,
11
+ leftComponent,
12
+ wrapWithGestureDetector
13
+ }) => {
14
+ const {
15
+ secondary_dim: secondaryDarkColor,
16
+ on_secondary_high: onSecondaryHighColor
17
+ } = useHMSRoomColorPalette();
18
+ const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
19
+ button: {
20
+ backgroundColor: theme.palette.secondary_default
21
+ },
22
+ disabledButton: {
23
+ backgroundColor: theme.palette.secondary_disabled
24
+ },
25
+ buttonText: {
26
+ color: theme.palette.on_secondary_high,
27
+ fontFamily: `${typography.font_family}-SemiBold`
28
+ },
29
+ disabledText: {
30
+ color: theme.palette.on_secondary_low
31
+ }
32
+ }));
33
+ return /*#__PURE__*/React.createElement(HMSBaseButton, {
34
+ testID: testId,
35
+ loaderColor: onSecondaryHighColor,
36
+ loading: loading,
37
+ onPress: onPress,
38
+ title: title,
39
+ underlayColor: secondaryDarkColor,
40
+ disabled: disabled,
41
+ leftComponent: leftComponent,
42
+ style: [hmsRoomStyles.button, disabled ? hmsRoomStyles.disabledButton : null, style],
43
+ textStyle: [hmsRoomStyles.buttonText, disabled ? hmsRoomStyles.disabledText : null],
44
+ wrapWithGestureDetector: wrapWithGestureDetector
45
+ });
46
+ };
47
+ //# sourceMappingURL=HMSSecondaryButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useHMSRoomColorPalette","useHMSRoomStyleSheet","HMSBaseButton","HMSSecondaryButton","title","loading","onPress","testId","style","disabled","leftComponent","wrapWithGestureDetector","secondary_dim","secondaryDarkColor","on_secondary_high","onSecondaryHighColor","hmsRoomStyles","theme","typography","button","backgroundColor","palette","secondary_default","disabledButton","secondary_disabled","buttonText","color","fontFamily","font_family","disabledText","on_secondary_low","createElement","testID","loaderColor","underlayColor","textStyle"],"sourceRoot":"../../../src","sources":["components/HMSSecondaryButton.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,SAASC,sBAAsB,EAAEC,oBAAoB,QAAQ,eAAe;AAC5E,SAASC,aAAa,QAAQ,iBAAiB;AAc/C,OAAO,MAAMC,kBAAmD,GAAGA,CAAC;EAClEC,KAAK;EACLC,OAAO;EACPC,OAAO;EACPC,MAAM;EACNC,KAAK;EACLC,QAAQ;EACRC,aAAa;EACbC;AACF,CAAC,KAAK;EACJ,MAAM;IACJC,aAAa,EAAEC,kBAAkB;IACjCC,iBAAiB,EAAEC;EACrB,CAAC,GAAGf,sBAAsB,CAAC,CAAC;EAE5B,MAAMgB,aAAa,GAAGf,oBAAoB,CAAC,CAACgB,KAAK,EAAEC,UAAU,MAAM;IACjEC,MAAM,EAAE;MACNC,eAAe,EAAEH,KAAK,CAACI,OAAO,CAACC;IACjC,CAAC;IACDC,cAAc,EAAE;MACdH,eAAe,EAAEH,KAAK,CAACI,OAAO,CAACG;IACjC,CAAC;IACDC,UAAU,EAAE;MACVC,KAAK,EAAET,KAAK,CAACI,OAAO,CAACP,iBAAiB;MACtCa,UAAU,EAAG,GAAET,UAAU,CAACU,WAAY;IACxC,CAAC;IACDC,YAAY,EAAE;MACZH,KAAK,EAAET,KAAK,CAACI,OAAO,CAACS;IACvB;EACF,CAAC,CAAC,CAAC;EAEH,oBACE/B,KAAA,CAAAgC,aAAA,CAAC7B,aAAa;IACZ8B,MAAM,EAAEzB,MAAO;IACf0B,WAAW,EAAElB,oBAAqB;IAClCV,OAAO,EAAEA,OAAQ;IACjBC,OAAO,EAAEA,OAAQ;IACjBF,KAAK,EAAEA,KAAM;IACb8B,aAAa,EAAErB,kBAAmB;IAClCJ,QAAQ,EAAEA,QAAS;IACnBC,aAAa,EAAEA,aAAc;IAC7BF,KAAK,EAAE,CACLQ,aAAa,CAACG,MAAM,EACpBV,QAAQ,GAAGO,aAAa,CAACO,cAAc,GAAG,IAAI,EAC9Cf,KAAK,CACL;IACF2B,SAAS,EAAE,CACTnB,aAAa,CAACS,UAAU,EACxBhB,QAAQ,GAAGO,aAAa,CAACa,YAAY,GAAG,IAAI,CAC5C;IACFlB,uBAAuB,EAAEA;EAAwB,CAClD,CAAC;AAEN,CAAC"}
@@ -0,0 +1,224 @@
1
+ import * as React from 'react';
2
+ import { View, Text, StyleSheet } from 'react-native';
3
+ import { useDispatch, useSelector } from 'react-redux';
4
+ import { HMSPollQuestionType, HMSPollState, HMSPollType } from '@100mslive/react-native-hms';
5
+ import { useHMSInstance, useHMSRoomColorPalette, useHMSRoomStyleSheet } from '../hooks-util';
6
+ import { RadioInputRow } from './RadioInputRow';
7
+ import { HMSPrimaryButton } from './HMSPrimaryButton';
8
+ import { HMSBaseButton } from './HMSBaseButton';
9
+ import { addPollQuestionResponse, removePollQuestionResponse, setPollQuestionResponse } from '../redux/actions';
10
+ import { PollResponseProgressView } from './PollResponseProgressView';
11
+ import { CheckboxInputRow } from './CheckboxInputRow';
12
+ import { checkIsCorrectAnswer, checkIsCorrectOption, checkIsSelected, getLabelFromPollQuestionType } from '../utils/functions';
13
+ import { CheckIcon, CrossCircleIcon } from '../Icons';
14
+ import { QuizEndOptionsView } from './QuizEndOptionsView';
15
+ export const PollAndQuizQuestionResponseCard = ({
16
+ pollState,
17
+ totalQuestions,
18
+ pollId,
19
+ pollQuestion,
20
+ containerStyle,
21
+ onSubmit
22
+ }) => {
23
+ var _pollQuestion$options, _pollQuestion$options2, _pollQuestion$options3;
24
+ const {
25
+ primary_bright: primaryBrightColor,
26
+ on_surface_low: onSurfaceLowColor
27
+ } = useHMSRoomColorPalette();
28
+ const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
29
+ container: {
30
+ backgroundColor: theme.palette.surface_default,
31
+ borderColor: theme.palette.surface_default
32
+ },
33
+ surfaceLowSemiBoldText: {
34
+ color: theme.palette.on_surface_low,
35
+ fontFamily: `${typography.font_family}-SemiBold`
36
+ },
37
+ surfaceHighRegularText: {
38
+ color: theme.palette.on_surface_high,
39
+ fontFamily: `${typography.font_family}-Regular`
40
+ },
41
+ wrongAnswer: {
42
+ borderColor: theme.palette.alert_error_default
43
+ },
44
+ correctAnswer: {
45
+ borderColor: theme.palette.alert_success
46
+ },
47
+ wrongAnswerText: {
48
+ color: theme.palette.alert_error_default
49
+ },
50
+ correctAnswerText: {
51
+ color: theme.palette.alert_success
52
+ },
53
+ wrongAnswerIcon: {
54
+ tintColor: theme.palette.alert_error_default
55
+ },
56
+ correctAnswerIcon: {
57
+ tintColor: theme.palette.alert_success
58
+ },
59
+ skipButton: {
60
+ borderColor: theme.palette.border_bright,
61
+ borderWidth: 1,
62
+ marginRight: 16
63
+ },
64
+ skipButtonText: {
65
+ color: theme.palette.on_surface_high,
66
+ fontFamily: `${typography.font_family}-SemiBold`
67
+ }
68
+ }));
69
+
70
+ // variable to save timestamp when the question became visible to user
71
+ const startTime = React.useRef(null);
72
+ React.useEffect(() => {
73
+ startTime.current = Date.now();
74
+ }, [pollQuestion.index]);
75
+ const hmsInstance = useHMSInstance();
76
+ const dispatch = useDispatch();
77
+ const selectedOptions = useSelector(state => {
78
+ var _state$polls$pollsRes;
79
+ return ((_state$polls$pollsRes = state.polls.pollsResponses[pollId]) === null || _state$polls$pollsRes === void 0 ? void 0 : _state$polls$pollsRes[pollQuestion.index]) ?? null;
80
+ });
81
+ const pollType = useSelector(state => {
82
+ var _state$polls$polls$po;
83
+ return ((_state$polls$polls$po = state.polls.polls[pollId]) === null || _state$polls$polls$po === void 0 ? void 0 : _state$polls$polls$po.type) ?? HMSPollType.poll;
84
+ });
85
+ const canViewPollResponse = useSelector(state => {
86
+ var _state$hmsStates$loca, _state$polls$polls$po2;
87
+ const localPeerRole = (_state$hmsStates$loca = state.hmsStates.localPeer) === null || _state$hmsStates$loca === void 0 ? void 0 : _state$hmsStates$loca.role;
88
+ const rolesThatCanViewResponses = (_state$polls$polls$po2 = state.polls.polls[pollId]) === null || _state$polls$polls$po2 === void 0 ? void 0 : _state$polls$polls$po2.rolesThatCanViewResponses;
89
+ return Array.isArray(rolesThatCanViewResponses) && rolesThatCanViewResponses.length > 0 ? localPeerRole && rolesThatCanViewResponses.findIndex(role => role.name === localPeerRole.name) !== -1 : true;
90
+ });
91
+ const handleOptionSelection = (selected, option) => {
92
+ if (pollQuestion.type === HMSPollQuestionType.singleChoice) {
93
+ dispatch(setPollQuestionResponse(pollId, pollQuestion.index, option.index));
94
+ } else {
95
+ if (selected) {
96
+ dispatch(addPollQuestionResponse(pollId, pollQuestion.index, option.index));
97
+ } else {
98
+ dispatch(removePollQuestionResponse(pollId, pollQuestion.index, option.index));
99
+ }
100
+ }
101
+ };
102
+ const handleVotePress = async e => {
103
+ if (!selectedOptions) {
104
+ return;
105
+ }
106
+ onSubmit === null || onSubmit === void 0 || onSubmit(e);
107
+ const result = await hmsInstance.interactivityCenter.add({
108
+ pollId,
109
+ pollQuestionIndex: pollQuestion.index,
110
+ responses: {
111
+ options: Array.isArray(selectedOptions) ? selectedOptions : [selectedOptions],
112
+ duration: pollType === HMSPollType.quiz && startTime.current !== null ? Date.now() - startTime.current : undefined
113
+ }
114
+ });
115
+ console.log(JSON.stringify(result, null, 4));
116
+ };
117
+ const handleSkipPress = async e => {
118
+ onSubmit === null || onSubmit === void 0 || onSubmit(e);
119
+ // TODO: Implement skip API
120
+ };
121
+ const anyOptionSelected = Array.isArray(selectedOptions) ? selectedOptions.length > 0 : selectedOptions !== null;
122
+ const isVoted = pollQuestion.myResponses.length > 0;
123
+ const InputComponent = pollQuestion.type === HMSPollQuestionType.singleChoice ? RadioInputRow : pollQuestion.type === HMSPollQuestionType.multipleChoice ? CheckboxInputRow : null;
124
+ const isCorrectAnswer = checkIsCorrectAnswer(pollQuestion.type, pollQuestion.myResponses, pollQuestion.answer);
125
+ return /*#__PURE__*/React.createElement(View, {
126
+ style: [hmsRoomStyles.container, styles.container, pollType === HMSPollType.quiz && isVoted && pollState === HMSPollState.stopped ? isCorrectAnswer ? hmsRoomStyles.correctAnswer : hmsRoomStyles.wrongAnswer : null, containerStyle]
127
+ }, /*#__PURE__*/React.createElement(View, {
128
+ style: {
129
+ flexDirection: 'row'
130
+ }
131
+ }, pollType === HMSPollType.quiz && isVoted && pollState === HMSPollState.stopped ? isCorrectAnswer ? /*#__PURE__*/React.createElement(CheckIcon, {
132
+ type: "in-circle",
133
+ style: [hmsRoomStyles.correctAnswerIcon, {
134
+ marginRight: 8,
135
+ width: 16,
136
+ height: 16
137
+ }]
138
+ }) : /*#__PURE__*/React.createElement(CrossCircleIcon, {
139
+ style: [hmsRoomStyles.wrongAnswerIcon, {
140
+ marginRight: 8,
141
+ width: 16,
142
+ height: 16
143
+ }]
144
+ }) : null, /*#__PURE__*/React.createElement(Text, {
145
+ numberOfLines: 2,
146
+ style: [styles.tinyText, hmsRoomStyles.surfaceLowSemiBoldText, styles.uppercaseContent, pollType === HMSPollType.quiz && isVoted && pollState === HMSPollState.stopped ? isCorrectAnswer ? hmsRoomStyles.correctAnswerText : hmsRoomStyles.wrongAnswerText : null]
147
+ }, "Question ", pollQuestion.index, " of ", totalQuestions, ":", ' ', getLabelFromPollQuestionType(pollQuestion.type))), /*#__PURE__*/React.createElement(Text, {
148
+ style: [hmsRoomStyles.surfaceHighRegularText, styles.regularText, styles.verticalNormalSpacer]
149
+ }, pollQuestion.text), !InputComponent ? null : /*#__PURE__*/React.createElement(React.Fragment, null, pollType === HMSPollType.poll && canViewPollResponse && (pollQuestion.myResponses.length > 0 || pollState === HMSPollState.stopped) ? /*#__PURE__*/React.createElement(React.Fragment, null, (_pollQuestion$options = pollQuestion.options) === null || _pollQuestion$options === void 0 ? void 0 : _pollQuestion$options.sort((a, b) => a.index - b.index).map((option, _, arr) => {
150
+ return /*#__PURE__*/React.createElement(PollResponseProgressView, {
151
+ key: option.index,
152
+ option: option,
153
+ totalVotes: arr.reduce((acc, curr) => acc + curr.voteCount, 0)
154
+ });
155
+ })) : pollType === HMSPollType.quiz && pollState === HMSPollState.stopped ? /*#__PURE__*/React.createElement(React.Fragment, null, (_pollQuestion$options2 = pollQuestion.options) === null || _pollQuestion$options2 === void 0 ? void 0 : _pollQuestion$options2.sort((a, b) => a.index - b.index).map(option => {
156
+ const isSelected = checkIsSelected(pollQuestion, option, null);
157
+ const isCorrect = checkIsCorrectOption(pollQuestion.type, option, pollQuestion.answer);
158
+ return /*#__PURE__*/React.createElement(QuizEndOptionsView, {
159
+ key: option.index,
160
+ option: option,
161
+ isSelected: isSelected,
162
+ isCorrect: isCorrect
163
+ });
164
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null, (_pollQuestion$options3 = pollQuestion.options) === null || _pollQuestion$options3 === void 0 ? void 0 : _pollQuestion$options3.sort((a, b) => a.index - b.index).map(option => {
165
+ const isSelected = checkIsSelected(pollQuestion, option, selectedOptions);
166
+ return /*#__PURE__*/React.createElement(InputComponent, {
167
+ key: option.index,
168
+ disabled: isVoted,
169
+ selected: isSelected,
170
+ radioColor: isVoted ? isSelected ? primaryBrightColor : onSurfaceLowColor : undefined,
171
+ onChange: selected => handleOptionSelection(selected, option),
172
+ text: option.text,
173
+ containerStyle: {
174
+ marginBottom: 16
175
+ }
176
+ });
177
+ }))), isVoted && (pollType === HMSPollType.poll || pollState === HMSPollState.started) ? /*#__PURE__*/React.createElement(Text, {
178
+ style: [styles.regularText, styles.votedLabel, hmsRoomStyles.surfaceLowSemiBoldText]
179
+ }, pollType === HMSPollType.quiz ? 'Answered' : 'Voted') : pollState === HMSPollState.started ? /*#__PURE__*/React.createElement(View, {
180
+ style: {
181
+ alignSelf: 'flex-end',
182
+ flexDirection: 'row'
183
+ }
184
+ }, pollQuestion.skippable ? /*#__PURE__*/React.createElement(HMSBaseButton, {
185
+ loading: false,
186
+ onPress: handleSkipPress,
187
+ title: "Skip",
188
+ style: hmsRoomStyles.skipButton,
189
+ textStyle: hmsRoomStyles.skipButtonText,
190
+ useTouchableOpacity: true
191
+ }) : null, /*#__PURE__*/React.createElement(HMSPrimaryButton, {
192
+ loading: false,
193
+ disabled: !anyOptionSelected,
194
+ onPress: handleVotePress,
195
+ title: pollType === HMSPollType.quiz ? 'Answer' : 'Vote'
196
+ })) : null);
197
+ };
198
+ const styles = StyleSheet.create({
199
+ container: {
200
+ padding: 16,
201
+ borderRadius: 8,
202
+ borderWidth: 1
203
+ },
204
+ tinyText: {
205
+ fontSize: 10,
206
+ lineHeight: 16,
207
+ letterSpacing: 1.5
208
+ },
209
+ regularText: {
210
+ fontSize: 16,
211
+ lineHeight: 24
212
+ },
213
+ verticalNormalSpacer: {
214
+ marginVertical: 16
215
+ },
216
+ votedLabel: {
217
+ paddingVertical: 8,
218
+ alignSelf: 'flex-end'
219
+ },
220
+ uppercaseContent: {
221
+ textTransform: 'uppercase'
222
+ }
223
+ });
224
+ //# sourceMappingURL=PollAndQuizQuestionResponseCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","Text","StyleSheet","useDispatch","useSelector","HMSPollQuestionType","HMSPollState","HMSPollType","useHMSInstance","useHMSRoomColorPalette","useHMSRoomStyleSheet","RadioInputRow","HMSPrimaryButton","HMSBaseButton","addPollQuestionResponse","removePollQuestionResponse","setPollQuestionResponse","PollResponseProgressView","CheckboxInputRow","checkIsCorrectAnswer","checkIsCorrectOption","checkIsSelected","getLabelFromPollQuestionType","CheckIcon","CrossCircleIcon","QuizEndOptionsView","PollAndQuizQuestionResponseCard","pollState","totalQuestions","pollId","pollQuestion","containerStyle","onSubmit","_pollQuestion$options","_pollQuestion$options2","_pollQuestion$options3","primary_bright","primaryBrightColor","on_surface_low","onSurfaceLowColor","hmsRoomStyles","theme","typography","container","backgroundColor","palette","surface_default","borderColor","surfaceLowSemiBoldText","color","fontFamily","font_family","surfaceHighRegularText","on_surface_high","wrongAnswer","alert_error_default","correctAnswer","alert_success","wrongAnswerText","correctAnswerText","wrongAnswerIcon","tintColor","correctAnswerIcon","skipButton","border_bright","borderWidth","marginRight","skipButtonText","startTime","useRef","useEffect","current","Date","now","index","hmsInstance","dispatch","selectedOptions","state","_state$polls$pollsRes","polls","pollsResponses","pollType","_state$polls$polls$po","type","poll","canViewPollResponse","_state$hmsStates$loca","_state$polls$polls$po2","localPeerRole","hmsStates","localPeer","role","rolesThatCanViewResponses","Array","isArray","length","findIndex","name","handleOptionSelection","selected","option","singleChoice","handleVotePress","e","result","interactivityCenter","add","pollQuestionIndex","responses","options","duration","quiz","undefined","console","log","JSON","stringify","handleSkipPress","anyOptionSelected","isVoted","myResponses","InputComponent","multipleChoice","isCorrectAnswer","answer","createElement","style","styles","stopped","flexDirection","width","height","numberOfLines","tinyText","uppercaseContent","regularText","verticalNormalSpacer","text","Fragment","sort","a","b","map","_","arr","key","totalVotes","reduce","acc","curr","voteCount","isSelected","isCorrect","disabled","radioColor","onChange","marginBottom","started","votedLabel","alignSelf","skippable","loading","onPress","title","textStyle","useTouchableOpacity","create","padding","borderRadius","fontSize","lineHeight","letterSpacing","marginVertical","paddingVertical","textTransform"],"sourceRoot":"../../../src","sources":["components/PollAndQuizQuestionResponseCard.tsx"],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import * as React from 'react';
2
+ import { View } from 'react-native';
3
+ import { HMSPollType } from '@100mslive/react-native-hms';
4
+ import { PollAndQuizQuestionResponseCard } from './PollAndQuizQuestionResponseCard';
5
+ export const PollAndQuizQuestionResponseCards = ({
6
+ poll,
7
+ onVote
8
+ }) => {
9
+ if (!Array.isArray(poll.questions) || poll.questions.length <= 0) {
10
+ return null;
11
+ }
12
+ const pollQuestions = poll.questions.sort((a, b) => a.index - b.index);
13
+
14
+ // Show all question cards if the pollType is a `poll` OR if all questions have been answered
15
+ if (poll.type === HMSPollType.poll || pollQuestions.every(q => q.myResponses.length > 0)) {
16
+ return /*#__PURE__*/React.createElement(View, null, pollQuestions.map((question, _, arr) => /*#__PURE__*/React.createElement(PollAndQuizQuestionResponseCard, {
17
+ key: question.index,
18
+ pollState: poll.state,
19
+ pollId: poll.pollId,
20
+ totalQuestions: arr.length,
21
+ pollQuestion: question,
22
+ containerStyle: {
23
+ marginBottom: 16
24
+ },
25
+ onSubmit: onVote
26
+ })));
27
+ }
28
+ const unansweredQuestion = pollQuestions.find(q => !q.myResponses || q.myResponses.length <= 0);
29
+
30
+ // Show question cards one at a time if the pollType is a `quiz` and not all questions have been answered
31
+ if (unansweredQuestion) {
32
+ return /*#__PURE__*/React.createElement(PollAndQuizQuestionResponseCard, {
33
+ pollState: poll.state,
34
+ pollId: poll.pollId,
35
+ totalQuestions: pollQuestions.length,
36
+ pollQuestion: unansweredQuestion,
37
+ containerStyle: {
38
+ marginBottom: 16
39
+ }
40
+ });
41
+ }
42
+ return null;
43
+ };
44
+ //# sourceMappingURL=PollAndQuizQuestionResponseCards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","HMSPollType","PollAndQuizQuestionResponseCard","PollAndQuizQuestionResponseCards","poll","onVote","Array","isArray","questions","length","pollQuestions","sort","a","b","index","type","every","q","myResponses","createElement","map","question","_","arr","key","pollState","state","pollId","totalQuestions","pollQuestion","containerStyle","marginBottom","onSubmit","unansweredQuestion","find"],"sourceRoot":"../../../src","sources":["components/PollAndQuizQuestionResponseCards.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,WAAW,QAAsB,6BAA6B;AAEvE,SAASC,+BAA+B,QAAQ,mCAAmC;AAQnF,OAAO,MAAMC,gCAEZ,GAAGA,CAAC;EAAEC,IAAI;EAAEC;AAAO,CAAC,KAAK;EACxB,IAAI,CAACC,KAAK,CAACC,OAAO,CAACH,IAAI,CAACI,SAAS,CAAC,IAAIJ,IAAI,CAACI,SAAS,CAACC,MAAM,IAAI,CAAC,EAAE;IAChE,OAAO,IAAI;EACb;EAEA,MAAMC,aAAa,GAAGN,IAAI,CAACI,SAAS,CAACG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,KAAK,GAAGD,CAAC,CAACC,KAAK,CAAC;;EAEtE;EACA,IACEV,IAAI,CAACW,IAAI,KAAKd,WAAW,CAACG,IAAI,IAC9BM,aAAa,CAACM,KAAK,CAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAACT,MAAM,GAAG,CAAC,CAAC,EACpD;IACA,oBACEV,KAAA,CAAAoB,aAAA,CAACnB,IAAI,QACFU,aAAa,CAACU,GAAG,CAAC,CAACC,QAAQ,EAAEC,CAAC,EAAEC,GAAG,kBAClCxB,KAAA,CAAAoB,aAAA,CAACjB,+BAA+B;MAC9BsB,GAAG,EAAEH,QAAQ,CAACP,KAAM;MACpBW,SAAS,EAAErB,IAAI,CAACsB,KAAM;MACtBC,MAAM,EAAEvB,IAAI,CAACuB,MAAO;MACpBC,cAAc,EAAEL,GAAG,CAACd,MAAO;MAC3BoB,YAAY,EAAER,QAAS;MACvBS,cAAc,EAAE;QAAEC,YAAY,EAAE;MAAG,CAAE;MACrCC,QAAQ,EAAE3B;IAAO,CAClB,CACF,CACG,CAAC;EAEX;EAEA,MAAM4B,kBAAkB,GAAGvB,aAAa,CAACwB,IAAI,CAC1CjB,CAAC,IAAK,CAACA,CAAC,CAACC,WAAW,IAAID,CAAC,CAACC,WAAW,CAACT,MAAM,IAAI,CACnD,CAAC;;EAED;EACA,IAAIwB,kBAAkB,EAAE;IACtB,oBACElC,KAAA,CAAAoB,aAAA,CAACjB,+BAA+B;MAC9BuB,SAAS,EAAErB,IAAI,CAACsB,KAAM;MACtBC,MAAM,EAAEvB,IAAI,CAACuB,MAAO;MACpBC,cAAc,EAAElB,aAAa,CAACD,MAAO;MACrCoB,YAAY,EAAEI,kBAAmB;MACjCH,cAAc,EAAE;QAAEC,YAAY,EAAE;MAAG;IAAE,CACtC,CAAC;EAEN;EAEA,OAAO,IAAI;AACb,CAAC"}
@@ -0,0 +1,126 @@
1
+ import * as React from 'react';
2
+ import { Text, StyleSheet, ScrollView, findNodeHandle, UIManager, View } from 'react-native';
3
+ import { useSelector } from 'react-redux';
4
+ import { HMSPollState, HMSPollType } from '@100mslive/react-native-hms';
5
+ import { useHMSInstance, useHMSRoomStyleSheet } from '../hooks-util';
6
+ import { HMSDangerButton } from './HMSDangerButton';
7
+ import { PollAndQuizQuestionResponseCards } from './PollAndQuizQuestionResponseCards';
8
+ export const PollAndQuizVoting = () => {
9
+ var _selectedPoll$created;
10
+ const scrollViewRef = React.useRef(null);
11
+ const hmsInstance = useHMSInstance();
12
+ const selectedPoll = useSelector(state => {
13
+ const pollsData = state.polls;
14
+ if (pollsData.selectedPollId !== null) {
15
+ return pollsData.polls[pollsData.selectedPollId] || null;
16
+ }
17
+ return null;
18
+ });
19
+ const canCreateOrEndPoll = useSelector(state => {
20
+ var _state$hmsStates$loca;
21
+ const permissions = (_state$hmsStates$loca = state.hmsStates.localPeer) === null || _state$hmsStates$loca === void 0 || (_state$hmsStates$loca = _state$hmsStates$loca.role) === null || _state$hmsStates$loca === void 0 ? void 0 : _state$hmsStates$loca.permissions;
22
+ return permissions === null || permissions === void 0 ? void 0 : permissions.pollWrite;
23
+ });
24
+ const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
25
+ regularMediumText: {
26
+ color: theme.palette.on_surface_medium,
27
+ fontFamily: `${typography.font_family}-Regular`
28
+ },
29
+ semiBoldMediumText: {
30
+ color: theme.palette.on_surface_medium,
31
+ fontFamily: `${typography.font_family}-SemiBold`
32
+ }
33
+ }));
34
+ const endPoll = async () => {
35
+ if (!selectedPoll || !canCreateOrEndPoll) {
36
+ return;
37
+ }
38
+ const result = await hmsInstance.interactivityCenter.stop(selectedPoll.pollId);
39
+ console.log('Poll ended', result);
40
+ };
41
+ const handleVote = e => {
42
+ const handle = findNodeHandle(e.nativeEvent.target);
43
+ const scrollHandle = findNodeHandle(scrollViewRef.current);
44
+ if (!handle) {
45
+ return;
46
+ }
47
+ if (scrollHandle === null) {
48
+ return;
49
+ }
50
+ UIManager.measureLayout(handle, scrollHandle, () => {
51
+ console.log('Failed', e);
52
+ }, (_left, top, _width, _height) => {
53
+ var _scrollViewRef$curren;
54
+ (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || _scrollViewRef$curren.scrollTo({
55
+ y: top + 400,
56
+ animated: true
57
+ });
58
+ });
59
+ };
60
+ return /*#__PURE__*/React.createElement(View, {
61
+ style: {
62
+ flex: 1
63
+ }
64
+ }, /*#__PURE__*/React.createElement(ScrollView, {
65
+ ref: scrollViewRef,
66
+ style: styles.contentContainer,
67
+ contentContainerStyle: {
68
+ flexGrow: 1,
69
+ paddingVertical: 24
70
+ }
71
+ }, /*#__PURE__*/React.createElement(Text, {
72
+ style: [styles.normalText, hmsRoomStyles.semiBoldMediumText]
73
+ }, selectedPoll === null || selectedPoll === void 0 || (_selectedPoll$created = selectedPoll.createdBy) === null || _selectedPoll$created === void 0 ? void 0 : _selectedPoll$created.name, " started a", ' ', (selectedPoll === null || selectedPoll === void 0 ? void 0 : selectedPoll.type) === HMSPollType.quiz ? 'quiz' : 'poll'), selectedPoll ? /*#__PURE__*/React.createElement(PollAndQuizQuestionResponseCards, {
74
+ poll: selectedPoll,
75
+ onVote: handleVote
76
+ }) : null), selectedPoll && selectedPoll.state === HMSPollState.started && canCreateOrEndPoll ? /*#__PURE__*/React.createElement(HMSDangerButton, {
77
+ disabled: !selectedPoll,
78
+ title: (selectedPoll === null || selectedPoll === void 0 ? void 0 : selectedPoll.type) === HMSPollType.quiz ? 'End Quiz' : 'End Poll',
79
+ loading: false,
80
+ onPress: endPoll,
81
+ style: {
82
+ marginTop: 16,
83
+ marginBottom: 16,
84
+ marginRight: 24,
85
+ alignSelf: 'flex-end'
86
+ }
87
+ }) : null);
88
+ };
89
+ const styles = StyleSheet.create({
90
+ smallText: {
91
+ fontSize: 14,
92
+ lineHeight: 20
93
+ },
94
+ normalText: {
95
+ fontSize: 16,
96
+ lineHeight: 24,
97
+ marginBottom: 16
98
+ },
99
+ contentContainer: {
100
+ paddingHorizontal: 24
101
+ },
102
+ typeSelectionLabel: {
103
+ fontSize: 12,
104
+ lineHeight: 16
105
+ },
106
+ pollNameLabel: {
107
+ fontSize: 14,
108
+ lineHeight: 20,
109
+ marginBottom: 8
110
+ },
111
+ textInput: {
112
+ flex: undefined
113
+ },
114
+ addOptionWrapper: {
115
+ alignSelf: 'flex-start'
116
+ },
117
+ addOptionContainer: {
118
+ flexDirection: 'row',
119
+ alignItems: 'center'
120
+ },
121
+ addOptionIconWrapper: {
122
+ marginRight: 8,
123
+ padding: 8
124
+ }
125
+ });
126
+ //# sourceMappingURL=PollAndQuizVoting.js.map