@instructure/quiz-core 21.2.0 → 22.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (649) hide show
  1. package/es/banks/api/banks.js +2 -2
  2. package/es/banks/components/AddBankEntryModal/presenter.js +29 -17
  3. package/es/banks/components/AddToBankModal/presenter.js +44 -32
  4. package/es/banks/components/AsyncSearch/index.js +81 -69
  5. package/es/banks/components/Bank/presenter.js +79 -67
  6. package/es/banks/components/Bank/styles.js +2 -2
  7. package/es/banks/components/Bank/theme.js +1 -1
  8. package/es/banks/components/BankEntriesList/presenter.js +23 -11
  9. package/es/banks/components/BankEntry/presenter.js +81 -69
  10. package/es/banks/components/BankEntry/styles.js +2 -2
  11. package/es/banks/components/BankEntry/theme.js +5 -5
  12. package/es/banks/components/BankEntryRow/presenter.js +49 -37
  13. package/es/banks/components/BankEntryRow/styles.js +0 -1
  14. package/es/banks/components/BankEntryRow/theme.js +4 -4
  15. package/es/banks/components/BankSearch/presenter.js +26 -14
  16. package/es/banks/components/Banks/presenter.js +102 -90
  17. package/es/banks/components/Banks/theme.js +2 -2
  18. package/es/banks/components/BanksList/presenter.js +74 -62
  19. package/es/banks/components/BanksList/theme.js +4 -4
  20. package/es/banks/components/CopyMoveBankEntryModal/presenter.js +138 -57
  21. package/es/banks/components/CreateBankModal/presenter.js +43 -31
  22. package/es/banks/components/EditBankModal/presenter.js +37 -25
  23. package/es/banks/components/HeaderBreadCrumb/index.js +19 -7
  24. package/es/banks/components/HeaderMenu/presenter.js +14 -2
  25. package/es/banks/components/NavWrapper/presenter.js +21 -9
  26. package/es/banks/components/NavWrapper/styles.js +2 -2
  27. package/es/banks/components/NavWrapper/theme.js +3 -3
  28. package/es/banks/components/SharingModal/ContextualIconButton/index.js +22 -10
  29. package/es/banks/components/SharingModal/RootAccountSharing.js +19 -7
  30. package/es/banks/components/SharingModal/ShareList/index.js +29 -17
  31. package/es/banks/components/SharingModal/presenter.js +120 -108
  32. package/es/banks/components/SharingModal/theme.js +1 -1
  33. package/es/building/api/quizEntries.js +2 -2
  34. package/es/building/components/layout/Sidebar/Sidebar.examples.js +21 -9
  35. package/es/building/components/layout/Sidebar/SidebarItem/presenter.js +14 -2
  36. package/es/building/components/layout/Sidebar/Stimulus/presenter.js +14 -2
  37. package/es/building/components/layout/Sidebar/presenter.js +40 -28
  38. package/es/building/components/layout/Sidebar/styles.js +2 -2
  39. package/es/building/components/layout/header/BuildingButtons/presenter.js +35 -23
  40. package/es/building/components/layout/header/BuildingButtons/styles.js +2 -2
  41. package/es/building/components/layout/header/BuildingButtons/theme.js +1 -1
  42. package/es/building/components/resources/ActionButtons/presenter.js +28 -16
  43. package/es/building/components/resources/ActionButtons/styles.js +2 -2
  44. package/es/building/components/resources/ActionButtons/theme.js +1 -1
  45. package/es/building/components/resources/AddToBankOptions/index.js +28 -16
  46. package/es/building/components/resources/AddToBankOptions/theme.js +2 -2
  47. package/es/building/components/resources/BanksTray/presenter.js +33 -21
  48. package/es/building/components/resources/DeleteStimulusModal/presenter.js +62 -50
  49. package/es/building/components/resources/ItemFeedbackModal/presenter.js +28 -16
  50. package/es/building/components/resources/MoveImmutableModal/presenter.js +28 -16
  51. package/es/building/components/resources/quiz/editButton/EditButton.js +21 -9
  52. package/es/building/components/resources/quiz/instructions/Edit/presenter.js +14 -2
  53. package/es/building/components/resources/quiz/instructions/Instructions/presenter.js +37 -25
  54. package/es/building/components/resources/quiz/instructions/Instructions/theme.js +1 -1
  55. package/es/building/components/resources/quiz/instructions/Show/index.js +19 -7
  56. package/es/building/components/resources/quiz/title/Edit/index.js +34 -22
  57. package/es/building/components/resources/quiz/title/Edit/styles.js +2 -2
  58. package/es/building/components/resources/quiz/title/Edit/theme.js +1 -1
  59. package/es/building/components/resources/quiz/title/Show/index.js +19 -7
  60. package/es/building/components/resources/quiz/title/Title/presenter.js +37 -25
  61. package/es/building/components/resources/quiz/title/Title/styles.js +2 -2
  62. package/es/building/components/resources/quiz/title/Title/theme.js +3 -3
  63. package/es/building/components/resources/quizEntry/QuizEntry/presenter.js +59 -47
  64. package/es/building/components/resources/quizEntry/QuizEntry/quizEntryPresenterWrapper.js +14 -2
  65. package/es/building/components/resources/quizEntry/QuizEntry/theme.js +1 -1
  66. package/es/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankEdit/presenter.js +54 -42
  67. package/es/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankEdit/theme.js +3 -3
  68. package/es/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankShow/index.js +14 -2
  69. package/es/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankShow/theme.js +2 -2
  70. package/es/building/components/resources/quizEntry/QuizEntryEdit/Footer/presenter.js +43 -31
  71. package/es/building/components/resources/quizEntry/QuizEntryEdit/Footer/styles.js +2 -2
  72. package/es/building/components/resources/quizEntry/QuizEntryEdit/Header/index.js +63 -51
  73. package/es/building/components/resources/quizEntry/QuizEntryEdit/Header/theme.js +2 -2
  74. package/es/building/components/resources/quizEntry/QuizEntryEdit/presenter.js +112 -100
  75. package/es/building/components/resources/quizEntry/QuizEntryShow/presenter.js +50 -38
  76. package/es/building/components/resources/quizEntry/QuizEntryShow/styles.js +2 -2
  77. package/es/building/components/resources/quizEntry/QuizEntryShow/theme.js +5 -5
  78. package/es/common/api/callHandlers.js +2 -2
  79. package/es/common/components/AccessCodeTextInput/index.js +20 -8
  80. package/es/common/components/ConfirmationModal/index.js +2 -2
  81. package/es/common/components/ConfirmationModal/presenter.js +40 -28
  82. package/es/common/components/ImportModal/ImportFileSelector/index.js +14 -2
  83. package/es/common/components/ImportModal/ImportFileSelector/theme.js +4 -4
  84. package/es/common/components/ImportModal/presenter.js +58 -46
  85. package/es/common/components/LearnosityCalculator/index.js +22 -10
  86. package/es/common/components/MaskedTextInput/index.js +16 -4
  87. package/es/common/components/Pin/presenter.js +19 -7
  88. package/es/common/components/PreviewFrame/index.js +14 -2
  89. package/es/common/components/PrintFontSizeModal/presenter.js +26 -14
  90. package/es/common/components/PrintFontSizeModal/theme.js +1 -1
  91. package/es/common/components/RceConfigProvider/presenter.js +2 -2
  92. package/es/common/components/SDKApp/index.js +21 -9
  93. package/es/common/components/alerts/presenter.js +22 -10
  94. package/es/common/components/layout/Page/index.js +14 -2
  95. package/es/common/components/layout/Page/styles.js +2 -2
  96. package/es/common/components/layout/header/Calculator/presenter.js +14 -2
  97. package/es/common/components/layout/header/HeaderMenuButton/presenter.js +22 -10
  98. package/es/common/components/layout/header/HeaderMenuButton/theme.js +1 -1
  99. package/es/common/components/layout/header/Timer/presenter.js +29 -17
  100. package/es/common/components/layout/header/Timer/theme.js +3 -3
  101. package/es/common/components/layout/navbar/SecondaryNavBarButton/index.js +14 -2
  102. package/es/common/components/layout/navbar/index.js +40 -28
  103. package/es/common/components/layout/navbar/styles.js +2 -2
  104. package/es/common/components/layout/navbar/theme.js +1 -1
  105. package/es/common/components/layout/sidebar/PositionSummary/index.js +16 -4
  106. package/es/common/components/layout/sidebar/PositionSummary/theme.js +2 -2
  107. package/es/common/components/layout/sidebar/Sidebar/Pin.js +19 -7
  108. package/es/common/components/layout/sidebar/Sidebar/index.js +36 -24
  109. package/es/common/components/layout/sidebar/Sidebar/styles.js +2 -2
  110. package/es/common/components/layout/sidebar/Sidebar/theme.js +10 -10
  111. package/es/common/components/layout/sidebar/SidebarItem/presenter.js +20 -8
  112. package/es/common/components/layout/sidebar/SidebarItem/styles.js +2 -2
  113. package/es/common/components/layout/sidebar/SidebarItem/theme.js +5 -5
  114. package/es/common/components/layout/sidebar/Stimulus/Collection/presenter.js +30 -15
  115. package/es/common/components/layout/sidebar/Stimulus/Collection/styles.js +2 -2
  116. package/es/common/components/layout/sidebar/Stimulus/Collection/theme.js +1 -1
  117. package/es/common/components/layout/sidebar/Stimulus/Summary/presenter.js +22 -10
  118. package/es/common/components/layout/sidebar/Stimulus/Summary/theme.js +2 -2
  119. package/es/common/components/layout/sidebar/Stimulus/Title/index.js +14 -2
  120. package/es/common/components/layout/sidebar/Stimulus/presenter.js +117 -45
  121. package/es/common/components/layout/sidebar/Stimulus/styles.js +2 -26
  122. package/es/common/components/layout/sidebar/Stimulus/theme.js +2 -11
  123. package/es/common/components/resources/BankSelection/presenter.js +51 -16
  124. package/es/common/components/resources/WarningWrapper/index.js +20 -8
  125. package/es/common/components/resources/WarningWrapper/theme.js +1 -1
  126. package/es/common/components/resources/entry/EntrySave/presenter.js +37 -25
  127. package/es/common/components/resources/item/ItemEdit/presenter.js +27 -15
  128. package/es/common/components/resources/item/ItemOverride/presenter.js +21 -9
  129. package/es/common/components/resources/item/ItemShow/index.js +14 -2
  130. package/es/common/components/resources/positionBox/PositionBox.js +14 -2
  131. package/es/common/components/resources/positionBox/theme.js +2 -2
  132. package/es/common/components/resources/quiz/AddContent/Body/presenter.js +47 -35
  133. package/es/common/components/resources/quiz/AddContent/Body/theme.js +1 -1
  134. package/es/common/components/resources/quiz/AddContent/Button/index.js +19 -7
  135. package/es/common/components/resources/quiz/AddContent/Button/styles.js +2 -2
  136. package/es/common/components/resources/quiz/AddContent/Button/theme.js +4 -4
  137. package/es/common/components/resources/quiz/AddContent/Modal/presenter.js +14 -2
  138. package/es/common/components/resources/quiz/AddContent/Popover/presenter.js +45 -33
  139. package/es/common/components/resources/quiz/AddContent/Popover/theme.js +1 -1
  140. package/es/common/components/resources/quiz/info/QuizInfo.js +14 -2
  141. package/es/common/components/resources/quiz/instructions/Instructions.js +14 -2
  142. package/es/common/components/resources/quiz/title/Title.js +14 -2
  143. package/es/common/components/resources/quizSessionResult/Header/index.js +21 -9
  144. package/es/common/components/resources/quizSessionResult/Info/index.js +19 -7
  145. package/es/common/components/resources/sessionItemResult/ResultStimulus/index.js +19 -7
  146. package/es/common/components/resources/sessionItemResult/ResultStimulus/styles.js +2 -2
  147. package/es/common/components/resources/sessionItemResult/ResultStimulus/theme.js +4 -4
  148. package/es/common/components/resources/sessionItemResult/SessionItemResult/presenter.js +38 -26
  149. package/es/common/components/resources/sessionItemResult/SessionItemResult/styles.js +2 -2
  150. package/es/common/components/resources/sessionItemResult/SessionItemResult/theme.js +4 -4
  151. package/es/common/components/resources/sessionItemResult/SessionItemResultsList/index.js +23 -11
  152. package/es/common/components/resources/sessionItemResult/SessionItemResultsList/theme.js +1 -1
  153. package/es/common/components/resources/stimulus/Stimulus/presenter.js +32 -20
  154. package/es/common/components/resources/stimulus/Stimulus/styles.js +2 -2
  155. package/es/common/components/resources/stimulus/Stimulus/theme.js +1 -1
  156. package/es/common/components/resources/stimulus/StimulusEdit/presenter.js +129 -115
  157. package/es/common/components/resources/stimulus/StimulusEdit/theme.js +1 -1
  158. package/es/common/components/resources/stimulus/StimulusEditInfo/presenter.js +31 -18
  159. package/es/common/components/resources/stimulus/StimulusEditInfo/theme.js +1 -1
  160. package/es/common/components/resources/stimulus/StimulusShow/index.js +19 -7
  161. package/es/common/components/resources/stimulus/StimulusShowInfo/index.js +14 -2
  162. package/es/common/components/shared/Card/CardContent/index.js +16 -4
  163. package/es/common/components/shared/Card/CardContent/theme.js +2 -2
  164. package/es/common/components/shared/Card/CardWrapper/index.js +16 -4
  165. package/es/common/components/shared/ExpandButton/index.js +14 -2
  166. package/es/common/components/shared/ExpandButton/styles.js +2 -2
  167. package/es/common/components/shared/FormattedDuration/index.js +16 -4
  168. package/es/common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js +69 -50
  169. package/es/common/components/shared/IfFeature/presenter.js +14 -2
  170. package/es/common/components/shared/InteractionTypes/presenter.js +38 -26
  171. package/es/common/components/shared/InteractionTypes/theme.js +1 -1
  172. package/es/common/components/shared/PaginatedCollection/presenter.js +19 -7
  173. package/es/common/components/shared/PaginatedCollection/theme.js +1 -1
  174. package/es/common/components/shared/Paginator/index.js +17 -5
  175. package/es/common/components/shared/PrintTrigger/presenter.js +43 -31
  176. package/es/common/components/shared/TagDisplay/index.js +14 -2
  177. package/es/common/components/shared/TagSelect/presenter.js +55 -43
  178. package/es/common/components/shared/TagSuggestSelect/presenter.js +30 -18
  179. package/es/common/components/shared/TagWrapper/presenter.js +19 -7
  180. package/es/common/components/shared/TimeUnitsInput/index.js +53 -41
  181. package/es/common/components/shared/drag_and_drop/DragAndDropZone/index.js +18 -6
  182. package/es/common/components/shared/drag_and_drop/DragAndDropZone/styles.js +2 -2
  183. package/es/common/components/shared/drag_and_drop/DragAndDropZone/theme.js +5 -5
  184. package/es/common/components/shared/drag_and_drop/DragHandle/presenter.js +31 -19
  185. package/es/common/components/shared/errors/Errors.js +19 -7
  186. package/es/common/components/shared/errors/theme.js +1 -1
  187. package/es/common/components/shared/file_selector/FileSelector.js +18 -6
  188. package/es/common/components/shared/file_selector/theme.js +2 -2
  189. package/es/common/components/shared/functionality/componentWithOutsideClick.js +24 -13
  190. package/es/common/components/shared/functionality/componentWithOutsideClickEmotion.js +18 -6
  191. package/es/common/components/shared/functionality/makeEditable.js +23 -11
  192. package/es/common/components/shared/functionality/makeScrollable.js +25 -13
  193. package/es/common/components/shared/overlay/index.js +14 -2
  194. package/es/common/components/shared/overlay/theme.js +1 -1
  195. package/es/common/components/shared/return_button/ReturnButton.js +14 -2
  196. package/es/common/components/shared/spinner/Spinner.js +21 -9
  197. package/es/common/kinesis/StreamQueue.js +2 -2
  198. package/es/common/records/Alert.js +14 -2
  199. package/es/common/records/Bank.js +14 -2
  200. package/es/common/records/BankEntry.js +17 -5
  201. package/es/common/records/Item.js +14 -2
  202. package/es/common/records/ItemAnalysis.js +14 -2
  203. package/es/common/records/QtiImport.js +14 -2
  204. package/es/common/records/Quiz.js +19 -7
  205. package/es/common/records/QuizAnalysis.js +14 -2
  206. package/es/common/records/QuizEntry.js +65 -42
  207. package/es/common/records/QuizSession.js +14 -2
  208. package/es/common/records/QuizSessionEvent.js +14 -2
  209. package/es/common/records/QuizSessionResult.js +14 -2
  210. package/es/common/records/Response.js +14 -2
  211. package/es/common/records/SessionItem.js +23 -5
  212. package/es/common/records/SessionItemResult.js +14 -2
  213. package/es/common/records/Stimulus.js +14 -2
  214. package/es/common/records/baseRecord.js +16 -4
  215. package/es/common/records/reduxRecord.js +14 -2
  216. package/es/common/reducers/modifications.js +2 -2
  217. package/es/common/util/ExhaustivePaginatedFetcher.js +23 -12
  218. package/es/common/util/Fetcher.js +2 -2
  219. package/es/common/util/PaginatedFetcher.js +24 -13
  220. package/es/common/util/ThunkQueue.js +3 -3
  221. package/es/common/util/jsonify.js +2 -2
  222. package/es/common/util/withDynamoPagination.js +20 -8
  223. package/es/messages/StorageExhaustionError.js +18 -6
  224. package/es/messages/postMessageService.js +2 -2
  225. package/es/moderating/components/events/Event.js +14 -2
  226. package/es/moderating/components/events/PageBlurredEvent.js +14 -2
  227. package/es/moderating/components/events/PageFocusedEvent.js +14 -2
  228. package/es/moderating/components/events/RCEEvent.js +14 -2
  229. package/es/moderating/components/events/ResponseEvent.js +17 -5
  230. package/es/moderating/components/events/SessionStartEvent.js +14 -2
  231. package/es/moderating/components/events/SessionSubmitEvent.js +14 -2
  232. package/es/moderating/components/events/theme.js +1 -1
  233. package/es/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/ExtraAttemptsInput/index.js +20 -8
  234. package/es/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/index.js +30 -18
  235. package/es/moderating/components/resources/AccommodationsModal/ExtraTimeMultiplier/index.js +33 -21
  236. package/es/moderating/components/resources/AccommodationsModal/ExtraTimeSettings/index.js +27 -15
  237. package/es/moderating/components/resources/AccommodationsModal/ReduceAnswerChoicesSettings/index.js +24 -12
  238. package/es/moderating/components/resources/AccommodationsModal/index.js +46 -34
  239. package/es/moderating/components/resources/ElapsedTime.js +14 -2
  240. package/es/moderating/components/resources/ModerateTable/presenter.js +78 -66
  241. package/es/moderating/components/resources/ModerateTable/styles.js +2 -2
  242. package/es/moderating/components/resources/ModerateTable/theme.js +1 -1
  243. package/es/moderating/components/resources/ModerateTableRow/presenter.js +44 -32
  244. package/es/moderating/components/resources/OutstandingQuizzesModal/presenter.js +42 -30
  245. package/es/moderating/components/sidebar/ModerateTray/presenter.js +52 -40
  246. package/es/moderating/components/sidebar/ResetQuiz/presenter.js +27 -15
  247. package/es/reporting/components/Caption/index.js +14 -2
  248. package/es/reporting/components/MetricsListItem/index.js +16 -4
  249. package/es/reporting/components/charts/CentileDistribution/presenter.js +28 -16
  250. package/es/reporting/components/charts/Distribution/presenter.js +35 -23
  251. package/es/reporting/components/charts/Distribution/theme.js +4 -4
  252. package/es/reporting/components/charts/Legend/index.js +18 -6
  253. package/es/reporting/components/charts/Legend/styles.js +2 -2
  254. package/es/reporting/components/charts/Legend/theme.js +3 -3
  255. package/es/reporting/components/charts/QuintileDistribution/presenter.js +31 -19
  256. package/es/reporting/components/charts/QuintileDistribution/theme.js +1 -1
  257. package/es/reporting/components/itemAnalysis/AnswerFrequencySummary/index.js +22 -10
  258. package/es/reporting/components/itemAnalysis/AnswerFrequencySummary/theme.js +8 -8
  259. package/es/reporting/components/itemAnalysis/ItemAnalysisRow/presenter.js +33 -21
  260. package/es/reporting/components/itemAnalysis/ItemAnalysisRow/theme.js +4 -4
  261. package/es/reporting/components/quizAnalysis/QuizAnalysisOverview.js +20 -8
  262. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnalysisMetric/presenter.js +14 -2
  263. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnalysisPopoverMetric/presenter.js +14 -2
  264. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/AggregationType/presenter.js +21 -9
  265. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ChoiceType/presenter.js +21 -9
  266. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/presenter.js +36 -24
  267. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/styles.js +2 -2
  268. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/theme.js +1 -1
  269. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/presenter.js +19 -7
  270. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/CategorizationType.js +25 -13
  271. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingType.js +21 -9
  272. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingTypeTable/presenter.js +46 -34
  273. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingTypeTable/styles.js +2 -2
  274. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/OrderingType.js +27 -15
  275. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/ChoiceTypeWithInfo/presenter.js +28 -16
  276. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/presenter.js +59 -47
  277. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/RichFillBlankType/ChoiceGroupTypeTable/presenter.js +41 -29
  278. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/RichFillBlankType/presenter.js +28 -16
  279. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/Table/index.js +25 -13
  280. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/index.js +21 -9
  281. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/presenter.js +42 -30
  282. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/presenter.js +27 -15
  283. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/styles.js +2 -2
  284. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsTableWrapper/presenter.js +23 -11
  285. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/presenter.js +52 -40
  286. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/theme.js +5 -5
  287. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/presenter.js +65 -53
  288. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/styles.js +2 -2
  289. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/theme.js +2 -2
  290. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ExpandableCard/presenter.js +34 -22
  291. package/es/reporting/components/resources/NewQuizAndItemAnalysis/MetricPopover/presenter.js +34 -22
  292. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/presenter.js +14 -2
  293. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/theme.js +1 -1
  294. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +63 -51
  295. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/styles.js +2 -2
  296. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/theme.js +1 -1
  297. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +36 -24
  298. package/es/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/presenter.js +58 -46
  299. package/es/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/styles.js +2 -2
  300. package/es/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/theme.js +1 -1
  301. package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +20 -8
  302. package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/theme.js +2 -2
  303. package/es/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +74 -62
  304. package/es/reporting/components/resources/OutcomeAnalysis/presenter.js +14 -2
  305. package/es/reporting/components/resources/QuizAndItemAnalysis/presenter.js +34 -22
  306. package/es/reporting/components/resources/QuizAndItemAnalysis/theme.js +1 -1
  307. package/es/reporting/components/resources/ReportCard/index.js +14 -2
  308. package/es/reporting/components/resources/ReportList/index.js +14 -2
  309. package/es/reporting/components/resources/StudentAnalysis/ReportCard/presenter.js +57 -45
  310. package/es/reporting/components/resources/StudentAnalysis/ReportCard/styles.js +2 -2
  311. package/es/reporting/components/resources/StudentAnalysis/ReportCard/theme.js +1 -1
  312. package/es/reporting/components/resources/common/AnalysisUpdateDate/index.js +14 -2
  313. package/es/taking/api/taking.js +1 -1
  314. package/lib/banks/api/banks.js +2 -2
  315. package/lib/banks/components/AddBankEntryModal/index.js +2 -2
  316. package/lib/banks/components/AddBankEntryModal/presenter.js +31 -19
  317. package/lib/banks/components/AddToBankModal/index.js +2 -2
  318. package/lib/banks/components/AddToBankModal/presenter.js +46 -34
  319. package/lib/banks/components/AsyncSearch/index.js +83 -71
  320. package/lib/banks/components/Bank/index.js +2 -2
  321. package/lib/banks/components/Bank/presenter.js +81 -69
  322. package/lib/banks/components/Bank/styles.js +2 -2
  323. package/lib/banks/components/Bank/theme.js +1 -1
  324. package/lib/banks/components/BankEntriesList/presenter.js +23 -11
  325. package/lib/banks/components/BankEntry/presenter.js +81 -69
  326. package/lib/banks/components/BankEntry/styles.js +2 -2
  327. package/lib/banks/components/BankEntry/theme.js +5 -5
  328. package/lib/banks/components/BankEntryRow/index.js +2 -2
  329. package/lib/banks/components/BankEntryRow/presenter.js +51 -39
  330. package/lib/banks/components/BankEntryRow/styles.js +0 -1
  331. package/lib/banks/components/BankEntryRow/theme.js +4 -4
  332. package/lib/banks/components/BankSearch/presenter.js +26 -14
  333. package/lib/banks/components/Banks/index.js +2 -2
  334. package/lib/banks/components/Banks/presenter.js +104 -92
  335. package/lib/banks/components/Banks/theme.js +2 -2
  336. package/lib/banks/components/BanksList/presenter.js +76 -64
  337. package/lib/banks/components/BanksList/theme.js +4 -4
  338. package/lib/banks/components/CopyMoveBankEntryModal/index.js +2 -2
  339. package/lib/banks/components/CopyMoveBankEntryModal/presenter.js +140 -59
  340. package/lib/banks/components/CreateBankModal/index.js +2 -2
  341. package/lib/banks/components/CreateBankModal/presenter.js +45 -33
  342. package/lib/banks/components/EditBankModal/index.js +2 -2
  343. package/lib/banks/components/EditBankModal/presenter.js +39 -27
  344. package/lib/banks/components/HeaderBreadCrumb/index.js +21 -9
  345. package/lib/banks/components/HeaderMenu/index.js +2 -2
  346. package/lib/banks/components/HeaderMenu/presenter.js +14 -2
  347. package/lib/banks/components/NavWrapper/presenter.js +21 -9
  348. package/lib/banks/components/NavWrapper/styles.js +2 -2
  349. package/lib/banks/components/NavWrapper/theme.js +3 -3
  350. package/lib/banks/components/SharingModal/ContextualIconButton/index.js +24 -12
  351. package/lib/banks/components/SharingModal/RootAccountSharing.js +21 -9
  352. package/lib/banks/components/SharingModal/ShareList/index.js +29 -17
  353. package/lib/banks/components/SharingModal/presenter.js +122 -110
  354. package/lib/banks/components/SharingModal/theme.js +1 -1
  355. package/lib/building/api/quizEntries.js +2 -2
  356. package/lib/building/components/layout/Sidebar/Sidebar.examples.js +21 -9
  357. package/lib/building/components/layout/Sidebar/SidebarItem/presenter.js +14 -2
  358. package/lib/building/components/layout/Sidebar/Stimulus/presenter.js +14 -2
  359. package/lib/building/components/layout/Sidebar/presenter.js +40 -28
  360. package/lib/building/components/layout/Sidebar/styles.js +2 -2
  361. package/lib/building/components/layout/header/BuildingButtons/index.js +2 -2
  362. package/lib/building/components/layout/header/BuildingButtons/presenter.js +35 -23
  363. package/lib/building/components/layout/header/BuildingButtons/styles.js +2 -2
  364. package/lib/building/components/layout/header/BuildingButtons/theme.js +1 -1
  365. package/lib/building/components/resources/ActionButtons/presenter.js +28 -16
  366. package/lib/building/components/resources/ActionButtons/styles.js +2 -2
  367. package/lib/building/components/resources/ActionButtons/theme.js +1 -1
  368. package/lib/building/components/resources/AddToBankOptions/index.js +28 -16
  369. package/lib/building/components/resources/AddToBankOptions/theme.js +2 -2
  370. package/lib/building/components/resources/BanksTray/presenter.js +35 -23
  371. package/lib/building/components/resources/DeleteStimulusModal/presenter.js +64 -52
  372. package/lib/building/components/resources/ItemFeedbackModal/presenter.js +28 -16
  373. package/lib/building/components/resources/MoveImmutableModal/presenter.js +30 -18
  374. package/lib/building/components/resources/quiz/editButton/EditButton.js +23 -11
  375. package/lib/building/components/resources/quiz/instructions/Edit/presenter.js +14 -2
  376. package/lib/building/components/resources/quiz/instructions/Instructions/presenter.js +37 -25
  377. package/lib/building/components/resources/quiz/instructions/Instructions/theme.js +1 -1
  378. package/lib/building/components/resources/quiz/instructions/Show/index.js +19 -7
  379. package/lib/building/components/resources/quiz/title/Edit/index.js +34 -22
  380. package/lib/building/components/resources/quiz/title/Edit/styles.js +2 -2
  381. package/lib/building/components/resources/quiz/title/Edit/theme.js +1 -1
  382. package/lib/building/components/resources/quiz/title/Show/index.js +19 -7
  383. package/lib/building/components/resources/quiz/title/Title/presenter.js +37 -25
  384. package/lib/building/components/resources/quiz/title/Title/styles.js +2 -2
  385. package/lib/building/components/resources/quiz/title/Title/theme.js +3 -3
  386. package/lib/building/components/resources/quizEntry/QuizEntry/presenter.js +59 -47
  387. package/lib/building/components/resources/quizEntry/QuizEntry/quizEntryPresenterWrapper.js +14 -2
  388. package/lib/building/components/resources/quizEntry/QuizEntry/theme.js +1 -1
  389. package/lib/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankEdit/presenter.js +54 -42
  390. package/lib/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankEdit/theme.js +3 -3
  391. package/lib/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankShow/index.js +14 -2
  392. package/lib/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankShow/theme.js +2 -2
  393. package/lib/building/components/resources/quizEntry/QuizEntryEdit/Footer/presenter.js +43 -31
  394. package/lib/building/components/resources/quizEntry/QuizEntryEdit/Footer/styles.js +2 -2
  395. package/lib/building/components/resources/quizEntry/QuizEntryEdit/Header/index.js +63 -51
  396. package/lib/building/components/resources/quizEntry/QuizEntryEdit/Header/theme.js +2 -2
  397. package/lib/building/components/resources/quizEntry/QuizEntryEdit/index.js +2 -2
  398. package/lib/building/components/resources/quizEntry/QuizEntryEdit/presenter.js +114 -102
  399. package/lib/building/components/resources/quizEntry/QuizEntryShow/presenter.js +50 -38
  400. package/lib/building/components/resources/quizEntry/QuizEntryShow/styles.js +2 -2
  401. package/lib/building/components/resources/quizEntry/QuizEntryShow/theme.js +5 -5
  402. package/lib/common/api/callHandlers.js +2 -2
  403. package/lib/common/components/AccessCodeTextInput/index.js +22 -10
  404. package/lib/common/components/ApiFeatureFlagInitializer/index.js +2 -2
  405. package/lib/common/components/ConfirmationModal/index.js +2 -2
  406. package/lib/common/components/ConfirmationModal/presenter.js +42 -30
  407. package/lib/common/components/ImportModal/ImportFileSelector/index.js +14 -2
  408. package/lib/common/components/ImportModal/ImportFileSelector/theme.js +4 -4
  409. package/lib/common/components/ImportModal/presenter.js +58 -46
  410. package/lib/common/components/LearnosityCalculator/index.js +24 -12
  411. package/lib/common/components/MaskedTextInput/index.js +18 -6
  412. package/lib/common/components/Pin/presenter.js +21 -9
  413. package/lib/common/components/PreviewFrame/index.js +16 -4
  414. package/lib/common/components/PrintFontSizeModal/presenter.js +26 -14
  415. package/lib/common/components/PrintFontSizeModal/theme.js +1 -1
  416. package/lib/common/components/RceConfigProvider/presenter.js +4 -4
  417. package/lib/common/components/SDKApp/index.js +21 -9
  418. package/lib/common/components/alerts/presenter.js +22 -10
  419. package/lib/common/components/layout/Page/index.js +14 -2
  420. package/lib/common/components/layout/Page/styles.js +2 -2
  421. package/lib/common/components/layout/header/Calculator/presenter.js +16 -4
  422. package/lib/common/components/layout/header/HeaderMenuButton/presenter.js +22 -10
  423. package/lib/common/components/layout/header/HeaderMenuButton/theme.js +1 -1
  424. package/lib/common/components/layout/header/Timer/presenter.js +31 -19
  425. package/lib/common/components/layout/header/Timer/theme.js +3 -3
  426. package/lib/common/components/layout/navbar/SecondaryNavBarButton/index.js +14 -2
  427. package/lib/common/components/layout/navbar/index.js +40 -28
  428. package/lib/common/components/layout/navbar/styles.js +2 -2
  429. package/lib/common/components/layout/navbar/theme.js +1 -1
  430. package/lib/common/components/layout/sidebar/PositionSummary/index.js +16 -4
  431. package/lib/common/components/layout/sidebar/PositionSummary/theme.js +2 -2
  432. package/lib/common/components/layout/sidebar/Sidebar/Pin.js +21 -9
  433. package/lib/common/components/layout/sidebar/Sidebar/index.js +36 -24
  434. package/lib/common/components/layout/sidebar/Sidebar/styles.js +2 -2
  435. package/lib/common/components/layout/sidebar/Sidebar/theme.js +10 -10
  436. package/lib/common/components/layout/sidebar/SidebarItem/presenter.js +20 -8
  437. package/lib/common/components/layout/sidebar/SidebarItem/styles.js +2 -2
  438. package/lib/common/components/layout/sidebar/SidebarItem/theme.js +5 -5
  439. package/lib/common/components/layout/sidebar/Stimulus/Collection/presenter.js +30 -15
  440. package/lib/common/components/layout/sidebar/Stimulus/Collection/styles.js +2 -2
  441. package/lib/common/components/layout/sidebar/Stimulus/Collection/theme.js +1 -1
  442. package/lib/common/components/layout/sidebar/Stimulus/Summary/presenter.js +22 -10
  443. package/lib/common/components/layout/sidebar/Stimulus/Summary/theme.js +2 -2
  444. package/lib/common/components/layout/sidebar/Stimulus/Title/index.js +14 -2
  445. package/lib/common/components/layout/sidebar/Stimulus/presenter.js +117 -45
  446. package/lib/common/components/layout/sidebar/Stimulus/styles.js +2 -26
  447. package/lib/common/components/layout/sidebar/Stimulus/theme.js +2 -11
  448. package/lib/common/components/resources/BankSelection/presenter.js +53 -18
  449. package/lib/common/components/resources/WarningWrapper/index.js +20 -8
  450. package/lib/common/components/resources/WarningWrapper/theme.js +1 -1
  451. package/lib/common/components/resources/entry/EntrySave/presenter.js +39 -27
  452. package/lib/common/components/resources/item/ItemEdit/index.js +2 -2
  453. package/lib/common/components/resources/item/ItemEdit/presenter.js +29 -17
  454. package/lib/common/components/resources/item/ItemOverride/index.js +2 -2
  455. package/lib/common/components/resources/item/ItemOverride/presenter.js +23 -11
  456. package/lib/common/components/resources/item/ItemShow/index.js +16 -4
  457. package/lib/common/components/resources/positionBox/PositionBox.js +14 -2
  458. package/lib/common/components/resources/positionBox/theme.js +2 -2
  459. package/lib/common/components/resources/quiz/AddContent/Body/presenter.js +47 -35
  460. package/lib/common/components/resources/quiz/AddContent/Body/theme.js +1 -1
  461. package/lib/common/components/resources/quiz/AddContent/Button/index.js +19 -7
  462. package/lib/common/components/resources/quiz/AddContent/Button/styles.js +2 -2
  463. package/lib/common/components/resources/quiz/AddContent/Button/theme.js +4 -4
  464. package/lib/common/components/resources/quiz/AddContent/Modal/presenter.js +16 -4
  465. package/lib/common/components/resources/quiz/AddContent/Popover/presenter.js +45 -33
  466. package/lib/common/components/resources/quiz/AddContent/Popover/theme.js +1 -1
  467. package/lib/common/components/resources/quiz/info/QuizInfo.js +16 -4
  468. package/lib/common/components/resources/quiz/instructions/Instructions.js +14 -2
  469. package/lib/common/components/resources/quiz/title/Title.js +14 -2
  470. package/lib/common/components/resources/quizSessionResult/Header/index.js +21 -9
  471. package/lib/common/components/resources/quizSessionResult/Info/index.js +19 -7
  472. package/lib/common/components/resources/sessionItemResult/ResultStimulus/index.js +19 -7
  473. package/lib/common/components/resources/sessionItemResult/ResultStimulus/styles.js +2 -2
  474. package/lib/common/components/resources/sessionItemResult/ResultStimulus/theme.js +4 -4
  475. package/lib/common/components/resources/sessionItemResult/SessionItemResult/presenter.js +38 -26
  476. package/lib/common/components/resources/sessionItemResult/SessionItemResult/styles.js +2 -2
  477. package/lib/common/components/resources/sessionItemResult/SessionItemResult/theme.js +4 -4
  478. package/lib/common/components/resources/sessionItemResult/SessionItemResultsList/index.js +23 -11
  479. package/lib/common/components/resources/sessionItemResult/SessionItemResultsList/theme.js +1 -1
  480. package/lib/common/components/resources/stimulus/Stimulus/presenter.js +32 -20
  481. package/lib/common/components/resources/stimulus/Stimulus/styles.js +2 -2
  482. package/lib/common/components/resources/stimulus/Stimulus/theme.js +1 -1
  483. package/lib/common/components/resources/stimulus/StimulusEdit/index.js +2 -2
  484. package/lib/common/components/resources/stimulus/StimulusEdit/presenter.js +129 -115
  485. package/lib/common/components/resources/stimulus/StimulusEdit/theme.js +1 -1
  486. package/lib/common/components/resources/stimulus/StimulusEditInfo/index.js +2 -2
  487. package/lib/common/components/resources/stimulus/StimulusEditInfo/presenter.js +31 -18
  488. package/lib/common/components/resources/stimulus/StimulusEditInfo/theme.js +1 -1
  489. package/lib/common/components/resources/stimulus/StimulusShow/index.js +19 -7
  490. package/lib/common/components/resources/stimulus/StimulusShowInfo/index.js +16 -4
  491. package/lib/common/components/shared/Card/CardContent/index.js +16 -4
  492. package/lib/common/components/shared/Card/CardContent/theme.js +2 -2
  493. package/lib/common/components/shared/Card/CardWrapper/index.js +16 -4
  494. package/lib/common/components/shared/ExpandButton/index.js +14 -2
  495. package/lib/common/components/shared/ExpandButton/styles.js +2 -2
  496. package/lib/common/components/shared/FormattedDuration/index.js +18 -6
  497. package/lib/common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js +71 -52
  498. package/lib/common/components/shared/IfFeature/presenter.js +14 -2
  499. package/lib/common/components/shared/InteractionTypes/presenter.js +38 -26
  500. package/lib/common/components/shared/InteractionTypes/theme.js +1 -1
  501. package/lib/common/components/shared/PaginatedCollection/presenter.js +21 -9
  502. package/lib/common/components/shared/PaginatedCollection/theme.js +1 -1
  503. package/lib/common/components/shared/Paginator/index.js +17 -5
  504. package/lib/common/components/shared/PrintTrigger/index.js +2 -2
  505. package/lib/common/components/shared/PrintTrigger/presenter.js +45 -33
  506. package/lib/common/components/shared/TagDisplay/index.js +14 -2
  507. package/lib/common/components/shared/TagSelect/presenter.js +57 -45
  508. package/lib/common/components/shared/TagSuggestSelect/presenter.js +32 -20
  509. package/lib/common/components/shared/TagWrapper/presenter.js +21 -9
  510. package/lib/common/components/shared/TimeUnitsInput/index.js +55 -43
  511. package/lib/common/components/shared/drag_and_drop/DragAndDropZone/index.js +18 -6
  512. package/lib/common/components/shared/drag_and_drop/DragAndDropZone/styles.js +2 -2
  513. package/lib/common/components/shared/drag_and_drop/DragAndDropZone/theme.js +5 -5
  514. package/lib/common/components/shared/drag_and_drop/DragHandle/presenter.js +33 -21
  515. package/lib/common/components/shared/errors/Errors.js +19 -7
  516. package/lib/common/components/shared/errors/theme.js +1 -1
  517. package/lib/common/components/shared/file_selector/FileSelector.js +18 -6
  518. package/lib/common/components/shared/file_selector/theme.js +2 -2
  519. package/lib/common/components/shared/functionality/componentWithOutsideClick.js +24 -13
  520. package/lib/common/components/shared/functionality/componentWithOutsideClickEmotion.js +18 -6
  521. package/lib/common/components/shared/functionality/makeEditable.js +25 -13
  522. package/lib/common/components/shared/functionality/makeScrollable.js +27 -15
  523. package/lib/common/components/shared/overlay/index.js +16 -4
  524. package/lib/common/components/shared/overlay/theme.js +1 -1
  525. package/lib/common/components/shared/return_button/ReturnButton.js +16 -4
  526. package/lib/common/components/shared/spinner/Spinner.js +21 -9
  527. package/lib/common/kinesis/StreamQueue.js +2 -2
  528. package/lib/common/records/Alert.js +14 -2
  529. package/lib/common/records/Bank.js +14 -2
  530. package/lib/common/records/BankEntry.js +17 -5
  531. package/lib/common/records/Item.js +14 -2
  532. package/lib/common/records/ItemAnalysis.js +14 -2
  533. package/lib/common/records/QtiImport.js +14 -2
  534. package/lib/common/records/Quiz.js +19 -7
  535. package/lib/common/records/QuizAnalysis.js +14 -2
  536. package/lib/common/records/QuizEntry.js +67 -44
  537. package/lib/common/records/QuizSession.js +14 -2
  538. package/lib/common/records/QuizSessionEvent.js +14 -2
  539. package/lib/common/records/QuizSessionResult.js +14 -2
  540. package/lib/common/records/Response.js +14 -2
  541. package/lib/common/records/SessionItem.js +23 -5
  542. package/lib/common/records/SessionItemResult.js +14 -2
  543. package/lib/common/records/Stimulus.js +14 -2
  544. package/lib/common/records/baseRecord.js +16 -4
  545. package/lib/common/records/reduxRecord.js +14 -2
  546. package/lib/common/reducers/modifications.js +2 -2
  547. package/lib/common/util/ExhaustivePaginatedFetcher.js +23 -12
  548. package/lib/common/util/Fetcher.js +2 -2
  549. package/lib/common/util/PaginatedFetcher.js +24 -13
  550. package/lib/common/util/ThunkQueue.js +3 -3
  551. package/lib/common/util/componentForItem.js +2 -2
  552. package/lib/common/util/interactionTypeRecordForItem.js +2 -2
  553. package/lib/common/util/jsonify.js +2 -2
  554. package/lib/common/util/withDynamoPagination.js +20 -8
  555. package/lib/index.js +2 -2
  556. package/lib/messages/StorageExhaustionError.js +18 -6
  557. package/lib/messages/postMessageService.js +2 -2
  558. package/lib/moderating/components/events/Event.js +16 -4
  559. package/lib/moderating/components/events/PageBlurredEvent.js +16 -4
  560. package/lib/moderating/components/events/PageFocusedEvent.js +16 -4
  561. package/lib/moderating/components/events/RCEEvent.js +16 -4
  562. package/lib/moderating/components/events/ResponseEvent.js +19 -7
  563. package/lib/moderating/components/events/SessionStartEvent.js +16 -4
  564. package/lib/moderating/components/events/SessionSubmitEvent.js +16 -4
  565. package/lib/moderating/components/events/theme.js +1 -1
  566. package/lib/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/ExtraAttemptsInput/index.js +22 -10
  567. package/lib/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/index.js +32 -20
  568. package/lib/moderating/components/resources/AccommodationsModal/ExtraTimeMultiplier/index.js +35 -23
  569. package/lib/moderating/components/resources/AccommodationsModal/ExtraTimeSettings/index.js +29 -17
  570. package/lib/moderating/components/resources/AccommodationsModal/ReduceAnswerChoicesSettings/index.js +26 -14
  571. package/lib/moderating/components/resources/AccommodationsModal/index.js +48 -36
  572. package/lib/moderating/components/resources/ElapsedTime.js +16 -4
  573. package/lib/moderating/components/resources/ModerateTable/presenter.js +78 -66
  574. package/lib/moderating/components/resources/ModerateTable/styles.js +2 -2
  575. package/lib/moderating/components/resources/ModerateTable/theme.js +1 -1
  576. package/lib/moderating/components/resources/ModerateTableRow/presenter.js +44 -32
  577. package/lib/moderating/components/resources/OutstandingQuizzesModal/presenter.js +44 -32
  578. package/lib/moderating/components/sidebar/ModerateTray/presenter.js +54 -42
  579. package/lib/moderating/components/sidebar/ResetQuiz/presenter.js +29 -17
  580. package/lib/reporting/components/Caption/index.js +14 -2
  581. package/lib/reporting/components/MetricsListItem/index.js +16 -4
  582. package/lib/reporting/components/charts/CentileDistribution/presenter.js +28 -16
  583. package/lib/reporting/components/charts/Distribution/presenter.js +35 -23
  584. package/lib/reporting/components/charts/Distribution/theme.js +4 -4
  585. package/lib/reporting/components/charts/Legend/index.js +18 -6
  586. package/lib/reporting/components/charts/Legend/styles.js +2 -2
  587. package/lib/reporting/components/charts/Legend/theme.js +3 -3
  588. package/lib/reporting/components/charts/QuintileDistribution/presenter.js +31 -19
  589. package/lib/reporting/components/charts/QuintileDistribution/theme.js +1 -1
  590. package/lib/reporting/components/itemAnalysis/AnswerFrequencySummary/index.js +22 -10
  591. package/lib/reporting/components/itemAnalysis/AnswerFrequencySummary/theme.js +8 -8
  592. package/lib/reporting/components/itemAnalysis/ItemAnalysisRow/presenter.js +35 -23
  593. package/lib/reporting/components/itemAnalysis/ItemAnalysisRow/theme.js +4 -4
  594. package/lib/reporting/components/quizAnalysis/QuizAnalysisOverview.js +22 -10
  595. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnalysisMetric/presenter.js +14 -2
  596. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnalysisPopoverMetric/presenter.js +14 -2
  597. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/AggregationType/presenter.js +23 -11
  598. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ChoiceType/presenter.js +23 -11
  599. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/presenter.js +36 -24
  600. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/styles.js +2 -2
  601. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/theme.js +1 -1
  602. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/presenter.js +19 -7
  603. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/CategorizationType.js +27 -15
  604. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingType.js +23 -11
  605. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingTypeTable/presenter.js +46 -34
  606. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingTypeTable/styles.js +2 -2
  607. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/OrderingType.js +29 -17
  608. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/ChoiceTypeWithInfo/presenter.js +30 -18
  609. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/presenter.js +59 -47
  610. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/RichFillBlankType/ChoiceGroupTypeTable/presenter.js +41 -29
  611. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/RichFillBlankType/presenter.js +30 -18
  612. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/Table/index.js +25 -13
  613. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/index.js +23 -11
  614. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/presenter.js +44 -32
  615. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/presenter.js +29 -17
  616. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/styles.js +2 -2
  617. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsTableWrapper/presenter.js +23 -11
  618. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/presenter.js +52 -40
  619. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/theme.js +5 -5
  620. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/presenter.js +65 -53
  621. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/styles.js +2 -2
  622. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/theme.js +2 -2
  623. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ExpandableCard/presenter.js +34 -22
  624. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/MetricPopover/presenter.js +34 -22
  625. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/presenter.js +14 -2
  626. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/theme.js +1 -1
  627. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +63 -51
  628. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/styles.js +2 -2
  629. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/theme.js +1 -1
  630. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +36 -24
  631. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/presenter.js +58 -46
  632. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/styles.js +2 -2
  633. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/theme.js +1 -1
  634. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +22 -10
  635. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/theme.js +2 -2
  636. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +76 -64
  637. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/withAnalysisStatePresenter.js +2 -2
  638. package/lib/reporting/components/resources/OutcomeAnalysis/presenter.js +16 -4
  639. package/lib/reporting/components/resources/QuizAndItemAnalysis/presenter.js +34 -22
  640. package/lib/reporting/components/resources/QuizAndItemAnalysis/theme.js +1 -1
  641. package/lib/reporting/components/resources/ReportCard/index.js +14 -2
  642. package/lib/reporting/components/resources/ReportList/index.js +14 -2
  643. package/lib/reporting/components/resources/StudentAnalysis/ReportCard/presenter.js +59 -47
  644. package/lib/reporting/components/resources/StudentAnalysis/ReportCard/styles.js +2 -2
  645. package/lib/reporting/components/resources/StudentAnalysis/ReportCard/theme.js +1 -1
  646. package/lib/reporting/components/resources/StudentAnalysis/withStudentAnalysisReportStatePresenter.js +2 -2
  647. package/lib/reporting/components/resources/common/AnalysisUpdateDate/index.js +16 -4
  648. package/lib/taking/api/taking.js +3 -3
  649. package/package.json +56 -56
@@ -7,8 +7,20 @@ import _inherits from "@babel/runtime/helpers/esm/inherits";
7
7
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
8
8
  var _dec, _class, _BanksList;
9
9
  import _regeneratorRuntime from "@babel/runtime/regenerator";
10
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
11
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
10
+ function _callSuper(_this, derived, args) {
11
+ function isNativeReflectConstruct() {
12
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
13
+ if (Reflect.construct.sham) return false;
14
+ if (typeof Proxy === "function") return true;
15
+ try {
16
+ return !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
17
+ } catch (e) {
18
+ return false;
19
+ }
20
+ }
21
+ derived = _getPrototypeOf(derived);
22
+ return _possibleConstructorReturn(_this, isNativeReflectConstruct() ? Reflect.construct(derived, args || [], _getPrototypeOf(_this).constructor) : derived.apply(_this, args));
23
+ }
12
24
  /** @jsx jsx */
13
25
  import React, { Component } from 'react';
14
26
  import PropTypes from 'prop-types';
@@ -35,35 +47,35 @@ import generateStyle from './styles';
35
47
  import generateComponentTheme from './theme';
36
48
  export var BanksList = (_dec = withStyleOverrides(generateStyle, generateComponentTheme), _dec(_class = (_BanksList = /*#__PURE__*/function (_withI18nSupport) {
37
49
  function BanksList() {
38
- var _this;
50
+ var _this2;
39
51
  _classCallCheck(this, BanksList);
40
52
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
41
53
  args[_key] = arguments[_key];
42
54
  }
43
- _this = _callSuper(this, BanksList, [].concat(args));
44
- _defineProperty(_this, "state", {
55
+ _this2 = _callSuper(this, BanksList, [].concat(args));
56
+ _defineProperty(_this2, "state", {
45
57
  sharingModalOpen: false,
46
58
  sharingModalBank: null,
47
59
  sharingCount: null,
48
60
  countedBank: null
49
61
  });
50
- _defineProperty(_this, "sharingButtons", []);
51
- _defineProperty(_this, "openModal", function (bank) {
62
+ _defineProperty(_this2, "sharingButtons", []);
63
+ _defineProperty(_this2, "openModal", function (bank) {
52
64
  return function () {
53
- _this.props.openModal([EDIT_BANK_MODAL, bank.id].join(':'));
65
+ _this2.props.openModal([EDIT_BANK_MODAL, bank.id].join(':'));
54
66
  };
55
67
  });
56
- _defineProperty(_this, "deleteBank", function (bankId) {
57
- _this.props.deleteBank(bankId);
58
- setTimeout(_this.props.focusCreateBankButton, 100);
68
+ _defineProperty(_this2, "deleteBank", function (bankId) {
69
+ _this2.props.deleteBank(bankId);
70
+ setTimeout(_this2.props.focusCreateBankButton, 100);
59
71
  });
60
- _defineProperty(_this, "openDeleteBankModal", function (bank) {
72
+ _defineProperty(_this2, "openDeleteBankModal", function (bank) {
61
73
  return /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
62
- var _this$props, currentUser, getUserInfo, deletingOwnBank, creatorFullName, resp, confirmBody;
74
+ var _this2$props, currentUser, getUserInfo, deletingOwnBank, creatorFullName, resp, confirmBody;
63
75
  return _regeneratorRuntime.wrap(function _callee$(_context) {
64
76
  while (1) switch (_context.prev = _context.next) {
65
77
  case 0:
66
- _this$props = _this.props, currentUser = _this$props.currentUser, getUserInfo = _this$props.getUserInfo;
78
+ _this2$props = _this2.props, currentUser = _this2$props.currentUser, getUserInfo = _this2$props.getUserInfo;
67
79
  deletingOwnBank = currentUser && currentUser.uuid === bank.creator;
68
80
  if (deletingOwnBank) {
69
81
  _context.next = 7;
@@ -81,9 +93,9 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
81
93
  variant: "error",
82
94
  padding: "0"
83
95
  }, jsx("div", {
84
- css: _this.props.styles.deleteAlert
96
+ css: _this2.props.styles.deleteAlert
85
97
  }, jsx("div", {
86
- css: _this.props.styles.deletePreface
98
+ css: _this2.props.styles.deletePreface
87
99
  }, t('Once deleted, items from this bank:')), jsx(List, null, jsx(List.Item, null, t('will no longer be accessible to others who currently have shared access')), jsx(List.Item, null, t.rich('will <0>NOT</0> be removed from any assessments', [function (_ref2) {
88
100
  var children = _ref2.children;
89
101
  return jsx(Text, {
@@ -91,7 +103,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
91
103
  key: "0"
92
104
  }, children);
93
105
  }])), jsx(List.Item, null, t('will lose their statistical link in reporting (if they were part of an assessment)')), jsx(List.Item, null, t('will no longer be available to any assessments attempting a random/batch pull of items (removing the pull will resolve the issue)'))))));
94
- _this.props.withConfirm(partial(_this.deleteBank, bank.id), {
106
+ _this2.props.withConfirm(partial(_this2.deleteBank, bank.id), {
95
107
  text: confirmBody,
96
108
  title: t('Delete Bank'),
97
109
  continueText: t('Delete'),
@@ -105,7 +117,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
105
117
  }, _callee);
106
118
  }));
107
119
  });
108
- _defineProperty(_this, "openDuplicateBankModal", function (bank) {
120
+ _defineProperty(_this2, "openDuplicateBankModal", function (bank) {
109
121
  return function () {
110
122
  var createCloneJob = /*#__PURE__*/function () {
111
123
  var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
@@ -114,13 +126,13 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
114
126
  while (1) switch (_context2.prev = _context2.next) {
115
127
  case 0:
116
128
  _context2.next = 2;
117
- return _this.props.createBankCloneJob(bank.id, _this.props.currentUser.uuid);
129
+ return _this2.props.createBankCloneJob(bank.id, _this2.props.currentUser.uuid);
118
130
  case 2:
119
131
  cloneJob = _context2.sent;
120
- _this.props.addToPolling(cloneJob.cloned_bank_id, t('{name} Copy', {
132
+ _this2.props.addToPolling(cloneJob.cloned_bank_id, t('{name} Copy', {
121
133
  name: bank.title
122
134
  }));
123
- _this.props.addInfo(t('Creating "{name} Copy". Duplicate will appear in \'Shared with Me\' filter.', {
135
+ _this2.props.addInfo(t('Creating "{name} Copy". Duplicate will appear in \'Shared with Me\' filter.', {
124
136
  name: bank.title
125
137
  }));
126
138
  case 5:
@@ -133,7 +145,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
133
145
  return _ref3.apply(this, arguments);
134
146
  };
135
147
  }();
136
- _this.props.withConfirm(partial(createCloneJob), {
148
+ _this2.props.withConfirm(partial(createCloneJob), {
137
149
  text: t('Are you sure you want to duplicate this item bank?'),
138
150
  title: t('Duplicate Bank'),
139
151
  continueText: t('Duplicate'),
@@ -142,14 +154,14 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
142
154
  });
143
155
  };
144
156
  });
145
- _defineProperty(_this, "updateSharedCount", function (count) {
146
- _this.setState({
157
+ _defineProperty(_this2, "updateSharedCount", function (count) {
158
+ _this2.setState({
147
159
  sharingCount: count
148
160
  });
149
161
  });
150
- _defineProperty(_this, "openSharingModal", function (bank) {
162
+ _defineProperty(_this2, "openSharingModal", function (bank) {
151
163
  return function () {
152
- _this.setState({
164
+ _this2.setState({
153
165
  sharingModalOpen: true,
154
166
  sharingModalBank: bank,
155
167
  sharingCount: bank.sharedCount,
@@ -157,27 +169,27 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
157
169
  });
158
170
  };
159
171
  });
160
- _defineProperty(_this, "handleSharingModalDismiss", function () {
161
- _this.setState({
172
+ _defineProperty(_this2, "handleSharingModalDismiss", function () {
173
+ _this2.setState({
162
174
  sharingModalOpen: false,
163
175
  sharingModalBank: null
164
176
  });
165
177
  });
166
- _defineProperty(_this, "handleSharingButtonRef", function (bankId) {
178
+ _defineProperty(_this2, "handleSharingButtonRef", function (bankId) {
167
179
  return function (node) {
168
- _this.sharingButtons[bankId] = node;
180
+ _this2.sharingButtons[bankId] = node;
169
181
  };
170
182
  });
171
- _defineProperty(_this, "currentBankCount", function (bank) {
172
- var _this$state = _this.state,
173
- countedBank = _this$state.countedBank,
174
- sharingCount = _this$state.sharingCount;
183
+ _defineProperty(_this2, "currentBankCount", function (bank) {
184
+ var _this2$state = _this2.state,
185
+ countedBank = _this2$state.countedBank,
186
+ sharingCount = _this2$state.sharingCount;
175
187
  if (countedBank === bank.id && Number.isInteger(sharingCount)) {
176
188
  return sharingCount;
177
189
  }
178
190
  return bank.sharedCount;
179
191
  });
180
- _defineProperty(_this, "handleTableRef", function (element) {
192
+ _defineProperty(_this2, "handleTableRef", function (element) {
181
193
  if (element) {
182
194
  var simpleSelect = element.querySelector('[role="combobox"]');
183
195
  if (simpleSelect) {
@@ -185,51 +197,51 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
185
197
  }
186
198
  }
187
199
  });
188
- _defineProperty(_this, "renderBankInfo", function (bank) {
200
+ _defineProperty(_this2, "renderBankInfo", function (bank) {
189
201
  var navigateToBank = function navigateToBank(bankId) {
190
202
  return function () {
191
- return _this.props.navigateToBank(bankId);
203
+ return _this2.props.navigateToBank(bankId);
192
204
  };
193
205
  };
194
206
  if (bank.status === 'copying') {
195
207
  return jsx("div", {
196
- css: _this.props.styles.bankInfo,
208
+ css: _this2.props.styles.bankInfo,
197
209
  "data-automation": "sdk-bank-info",
198
210
  tabIndex: "-1"
199
211
  }, jsx("div", {
200
- css: _this.props.styles.bankTitle
212
+ css: _this2.props.styles.bankTitle
201
213
  }, jsx(Heading, {
202
214
  as: "h2",
203
215
  level: "reset",
204
216
  "data-automation": "sdk-banks-list-bank-title-heading"
205
217
  }, bank.title)), jsx("div", {
206
- css: _this.props.styles.bankDetails,
218
+ css: _this2.props.styles.bankDetails,
207
219
  "data-automation": "sdk-banks-list-bank-details"
208
220
  }, t('Currently duplicating')));
209
221
  } else {
210
222
  return jsx("div", {
211
- css: _this.props.styles.bankInfo,
223
+ css: _this2.props.styles.bankInfo,
212
224
  "data-automation": "sdk-bank-info",
213
225
  tabIndex: "-1"
214
226
  }, jsx("div", {
215
- css: _this.props.styles.bankTitle
227
+ css: _this2.props.styles.bankTitle
216
228
  }, jsx(Link, {
217
229
  onClick: navigateToBank(bank.id),
218
230
  themeOverride: {
219
- color: _this.props.styles.bankTitleLinkColor,
220
- hoverColor: _this.props.styles.bankTitleLinkHoverColor
231
+ color: _this2.props.styles.bankTitleLinkColor,
232
+ hoverColor: _this2.props.styles.bankTitleLinkHoverColor
221
233
  },
222
234
  "data-automation": "sdk-banks-list-bank-title-link"
223
235
  }, jsx(Heading, {
224
236
  as: "h2",
225
237
  level: "reset",
226
238
  "data-automation": "sdk-banks-list-bank-title-heading"
227
- }, bank.title))), _this.renderDetails(bank));
239
+ }, bank.title))), _this2.renderDetails(bank));
228
240
  }
229
241
  });
230
- _defineProperty(_this, "renderBankOptions", function (bank) {
242
+ _defineProperty(_this2, "renderBankOptions", function (bank) {
231
243
  var bankEditOptions = jsx(React.Fragment, null, jsx(IconButton, {
232
- onClick: _this.openModal(bank),
244
+ onClick: _this2.openModal(bank),
233
245
  name: "Edit",
234
246
  size: "small",
235
247
  "data-automation": "sdk-edit-bank-button",
@@ -243,7 +255,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
243
255
  name: bank.title
244
256
  })
245
257
  }), jsx(IconButton, {
246
- onClick: _this.openDeleteBankModal(bank),
258
+ onClick: _this2.openDeleteBankModal(bank),
247
259
  name: "Delete",
248
260
  size: "small",
249
261
  "data-automation": "sdk-delete-bank-button",
@@ -259,7 +271,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
259
271
  }));
260
272
  if (bank.status === 'copying') {
261
273
  return jsx("div", {
262
- css: _this.props.styles.bankOptions
274
+ css: _this2.props.styles.bankOptions
263
275
  }, t('Duplicating'), jsx(Spinner, {
264
276
  renderTitle: t('Loading'),
265
277
  size: "x-small",
@@ -267,9 +279,9 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
267
279
  }));
268
280
  } else {
269
281
  return jsx("div", {
270
- css: _this.props.styles.bankOptions
282
+ css: _this2.props.styles.bankOptions
271
283
  }, jsx(IconButton, {
272
- onClick: _this.openDuplicateBankModal(bank),
284
+ onClick: _this2.openDuplicateBankModal(bank),
273
285
  name: "Duplicate",
274
286
  size: "small",
275
287
  "data-automation": "sdk-duplicate-bank-button",
@@ -285,7 +297,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
285
297
  }), jsx(IfFeature, {
286
298
  name: "item_bank_sharing"
287
299
  }, jsx(IconButton, {
288
- onClick: _this.openSharingModal(bank),
300
+ onClick: _this2.openSharingModal(bank),
289
301
  name: "Share",
290
302
  size: "small",
291
303
  "data-automation": "sdk-shared-bank-share-link",
@@ -301,25 +313,25 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
301
313
  })), bank.canEdit() ? bankEditOptions : null);
302
314
  }
303
315
  });
304
- _defineProperty(_this, "renderBank", function (bank) {
316
+ _defineProperty(_this2, "renderBank", function (bank) {
305
317
  return jsx("div", {
306
318
  key: bank.id,
307
- css: _this.props.styles.bankRow,
319
+ css: _this2.props.styles.bankRow,
308
320
  "data-automation": "sdk-banks-list-bank-row"
309
321
  }, jsx(EditBankModal, {
310
322
  workingBank: bank.getWorkingInstance()
311
- }), _this.renderBankInfo(bank), _this.renderBankOptions(bank));
323
+ }), _this2.renderBankInfo(bank), _this2.renderBankOptions(bank));
312
324
  });
313
- return _this;
325
+ return _this2;
314
326
  }
315
327
  _inherits(BanksList, _withI18nSupport);
316
328
  return _createClass(BanksList, [{
317
329
  key: "componentDidUpdate",
318
330
  value: function componentDidUpdate() {
319
- var _this2 = this;
331
+ var _this3 = this;
320
332
  if (this.state.sharingModalBank) {
321
333
  var bankFromList = this.props.banks.find(function (bank) {
322
- return bank.get('id') === _this2.state.sharingModalBank.get('id');
334
+ return bank.get('id') === _this3.state.sharingModalBank.get('id');
323
335
  });
324
336
  if (!this.state.sharingModalBank.equals(bankFromList)) {
325
337
  this.setState({
@@ -369,7 +381,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
369
381
  }, {
370
382
  key: "renderTableRowHeader",
371
383
  value: function renderTableRowHeader(bank) {
372
- var _this3 = this;
384
+ var _this4 = this;
373
385
  if (bank.status === 'copying') {
374
386
  return jsx(Table.RowHeader, null, jsx("div", {
375
387
  css: this.props.styles.rowHeader
@@ -381,7 +393,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
381
393
  } else {
382
394
  var navigateToBank = function navigateToBank(bankId) {
383
395
  return function () {
384
- return _this3.props.navigateToBank(bankId);
396
+ return _this4.props.navigateToBank(bankId);
385
397
  };
386
398
  };
387
399
  return jsx(Table.RowHeader, null, jsx("div", {
@@ -430,7 +442,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
430
442
  }, {
431
443
  key: "renderTable",
432
444
  value: function renderTable() {
433
- var _this4 = this;
445
+ var _this5 = this;
434
446
  return jsx(Table, {
435
447
  margin: "small 0",
436
448
  caption: t('Banks'),
@@ -445,7 +457,7 @@ export var BanksList = (_dec = withStyleOverrides(generateStyle, generateCompone
445
457
  id: "header-option-links",
446
458
  width: "1"
447
459
  }, jsx(ScreenReaderContent, null, t('Bank option links'))))), jsx(Table.Body, null, (this.props.banks.toArray() || []).map(function (bank) {
448
- return _this4.renderTableRow(bank);
460
+ return _this5.renderTableRow(bank);
449
461
  })));
450
462
  }
451
463
  }, {
@@ -5,13 +5,13 @@ var generateComponentTheme = function generateComponentTheme(_ref) {
5
5
  spacing = _ref.spacing;
6
6
  return {
7
7
  bankRowBorderWidth: borders.widthSmall,
8
- bankRowBorderColor: colors.tiara,
8
+ bankRowBorderColor: colors.contrasts.grey1214,
9
9
  bankInfoMargin: spacing.small,
10
10
  bankTitleFontSize: typography.fontSizeSmall,
11
11
  bankTitlePadding: spacing.xSmall,
12
- bankTitleLinkColor: colors.licorice,
13
- bankTitleLinkHoverColor: colors.licorice,
14
- bankDetailsColor: colors.ash,
12
+ bankTitleLinkColor: colors.contrasts.grey125125,
13
+ bankTitleLinkHoverColor: colors.contrasts.grey125125,
14
+ bankDetailsColor: colors.contrasts.grey4570,
15
15
  bankDetailsFontSize: typography.fontSizeXSmall,
16
16
  bankOptionsMargin: spacing.small,
17
17
  BankOptionIconMargin: spacing.xSmall,
@@ -4,8 +4,20 @@ import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConst
4
4
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
5
5
  import _inherits from "@babel/runtime/helpers/esm/inherits";
6
6
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
7
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
7
+ function _callSuper(_this, derived, args) {
8
+ function isNativeReflectConstruct() {
9
+ if (typeof Reflect === "undefined" || !Reflect.construct) return false;
10
+ if (Reflect.construct.sham) return false;
11
+ if (typeof Proxy === "function") return true;
12
+ try {
13
+ return !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));
14
+ } catch (e) {
15
+ return false;
16
+ }
17
+ }
18
+ derived = _getPrototypeOf(derived);
19
+ return _possibleConstructorReturn(_this, isNativeReflectConstruct() ? Reflect.construct(derived, args || [], _getPrototypeOf(_this).constructor) : derived.apply(_this, args));
20
+ }
9
21
  import React, { Component } from 'react';
10
22
  import PropTypes from 'prop-types';
11
23
  import { Button, CloseButton } from '@instructure/ui-buttons';
@@ -19,91 +31,156 @@ import BankSelection from '../../../common/components/resources/BankSelection/pr
19
31
  import { Modal, ModalHeader, ModalBody, ModalFooter, COPY_MOVE_BANK_ENTRY_MODAL_KEEP_COPY, TextInput, XSMALL_SIDE_MARGIN } from '@instructure/quiz-common';
20
32
  import { featureOn } from '../../../common/util/featureCheck';
21
33
  export var CopyMoveBankEntryModal = /*#__PURE__*/function (_Component) {
22
- function CopyMoveBankEntryModal() {
23
- var _this;
34
+ function CopyMoveBankEntryModal(props) {
35
+ var _this2;
24
36
  _classCallCheck(this, CopyMoveBankEntryModal);
25
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
26
- args[_key] = arguments[_key];
27
- }
28
- _this = _callSuper(this, CopyMoveBankEntryModal, [].concat(args));
29
- _defineProperty(_this, "state", {
37
+ _this2 = _callSuper(this, CopyMoveBankEntryModal, [props]);
38
+ /**
39
+ * @type {React.RefObject<RadioInput> | null}
40
+ */
41
+ _defineProperty(_this2, "radioInputRef", null);
42
+ /**
43
+ * @type {React.RefObject<TextInput> | null}
44
+ */
45
+ _defineProperty(_this2, "textInputRef", null);
46
+ _defineProperty(_this2, "state", {
30
47
  bankType: 'existing',
31
48
  newBankTitle: '',
32
- selectedBank: null
49
+ selectedBank: null,
50
+ radioValidationError: null,
51
+ selectValidationError: null
52
+ });
53
+ _defineProperty(_this2, "setBankInputRef", function (ref) {
54
+ _this2.bankSelectionInputRef = ref;
33
55
  });
34
- _defineProperty(_this, "copyOrMove", function (newBankId) {
35
- if (_this.props.keepCopy) {
36
- _this.copyBankEntry(newBankId);
56
+ _defineProperty(_this2, "copyOrMove", function (newBankId) {
57
+ if (_this2.props.keepCopy) {
58
+ _this2.copyBankEntry(newBankId);
37
59
  } else {
38
- _this.moveBankEntry(newBankId);
60
+ _this2.moveBankEntry(newBankId);
61
+ }
62
+ _this2.closeAction();
63
+ });
64
+ _defineProperty(_this2, "clearValidationErrors", function () {
65
+ _this2.setState({
66
+ radioValidationError: null,
67
+ selectValidationError: null
68
+ });
69
+ });
70
+ _defineProperty(_this2, "validateAction", function () {
71
+ var _this2$state = _this2.state,
72
+ bankType = _this2$state.bankType,
73
+ newBankTitle = _this2$state.newBankTitle,
74
+ selectedBank = _this2$state.selectedBank;
75
+ if (!bankType) {
76
+ var _this2$radioInputRef;
77
+ (_this2$radioInputRef = _this2.radioInputRef) === null || _this2$radioInputRef === void 0 || (_this2$radioInputRef = _this2$radioInputRef.current) === null || _this2$radioInputRef === void 0 || _this2$radioInputRef.focus();
78
+ _this2.setState({
79
+ radioValidationError: [{
80
+ text: t('Please choose a Copy/Move option'),
81
+ type: 'newError'
82
+ }]
83
+ });
84
+ return false;
85
+ }
86
+ if (bankType === 'existing' && !selectedBank) {
87
+ _this2.bankSelectionInputRef.focus();
88
+ _this2.setState({
89
+ selectValidationError: [{
90
+ text: t('Please select a bank'),
91
+ type: 'newError'
92
+ }]
93
+ });
94
+ return false;
39
95
  }
40
- _this.closeAction();
96
+ if (bankType === 'new' && (!newBankTitle || !newBankTitle.trim())) {
97
+ var _this2$textInputRef;
98
+ (_this2$textInputRef = _this2.textInputRef) === null || _this2$textInputRef === void 0 || (_this2$textInputRef = _this2$textInputRef.current) === null || _this2$textInputRef === void 0 || _this2$textInputRef.focus();
99
+ _this2.setState({
100
+ selectValidationError: [{
101
+ text: t('Please enter a new bank title'),
102
+ type: 'newError'
103
+ }]
104
+ });
105
+ return false;
106
+ }
107
+ return true;
41
108
  });
42
- _defineProperty(_this, "continueAction", function () {
43
- if (_this.state.bankType === 'new') {
109
+ _defineProperty(_this2, "continueAction", function () {
110
+ if (!_this2.validateAction()) {
111
+ return;
112
+ }
113
+ if (_this2.state.bankType === 'new') {
44
114
  var newBank = Bank.create({
45
- title: _this.state.newBankTitle,
46
- language: _this.context.locale
115
+ title: _this2.state.newBankTitle,
116
+ language: _this2.context.locale
47
117
  });
48
- _this.props.createBank(newBank).then(function (bankData) {
49
- _this.copyOrMove(bankData.id);
118
+ _this2.props.createBank(newBank).then(function (bankData) {
119
+ _this2.copyOrMove(bankData.id);
50
120
  });
51
121
  } else {
52
- _this.copyOrMove(_this.state.selectedBank.id);
122
+ _this2.copyOrMove(_this2.state.selectedBank.id);
53
123
  }
54
124
  });
55
- _defineProperty(_this, "initiateMove", function (newBankId) {
125
+ _defineProperty(_this2, "initiateMove", function (newBankId) {
56
126
  if (featureOn('instfs_bank_entry_movement_endpoints')) {
57
- return _this.props.moveBankEntry(_this.props.sourceBankId, _this.props.sourceBankEntryId, newBankId);
127
+ return _this2.props.moveBankEntry(_this2.props.sourceBankId, _this2.props.sourceBankEntryId, newBankId);
58
128
  } else {
59
- return _this.props.updateBankEntry(_this.props.sourceBankId, _this.props.sourceBankEntryId, {
129
+ return _this2.props.updateBankEntry(_this2.props.sourceBankId, _this2.props.sourceBankEntryId, {
60
130
  bankId: newBankId
61
131
  });
62
132
  }
63
133
  });
64
- _defineProperty(_this, "moveBankEntry", function (newBankId) {
65
- return _this.initiateMove(newBankId).then(function (bankEntry) {
66
- _this.props.disassociateBankEntry(_this.props.sourceBankId, _this.props.sourceBankEntryId);
134
+ _defineProperty(_this2, "moveBankEntry", function (newBankId) {
135
+ return _this2.initiateMove(newBankId).then(function (bankEntry) {
136
+ _this2.props.disassociateBankEntry(_this2.props.sourceBankId, _this2.props.sourceBankEntryId);
67
137
  return bankEntry;
68
- }).then(_this.props.onAdd);
138
+ }).then(_this2.props.onAdd);
69
139
  });
70
- _defineProperty(_this, "initiateCopy", function (newBankId) {
140
+ _defineProperty(_this2, "initiateCopy", function (newBankId) {
71
141
  if (featureOn('instfs_bank_entry_movement_endpoints')) {
72
- return _this.props.copyBankEntry(_this.props.sourceBankId, _this.props.sourceBankEntryId, newBankId);
142
+ return _this2.props.copyBankEntry(_this2.props.sourceBankId, _this2.props.sourceBankEntryId, newBankId);
73
143
  } else {
74
- return _this.props.createEntry().then(function (entry) {
75
- return _this.props.createBankEntry(newBankId, _this.props.entryType, entry.id);
144
+ return _this2.props.createEntry().then(function (entry) {
145
+ return _this2.props.createBankEntry(newBankId, _this2.props.entryType, entry.id);
76
146
  });
77
147
  }
78
148
  });
79
- _defineProperty(_this, "copyBankEntry", function (newBankId) {
80
- return _this.initiateCopy(newBankId).then(_this.props.onAdd);
149
+ _defineProperty(_this2, "copyBankEntry", function (newBankId) {
150
+ return _this2.initiateCopy(newBankId).then(_this2.props.onAdd);
81
151
  });
82
- _defineProperty(_this, "closeAction", function () {
83
- if (_this.props.modalTrigger) {
84
- _this.props.modalTrigger.focus();
152
+ _defineProperty(_this2, "closeAction", function () {
153
+ _this2.clearValidationErrors();
154
+ if (_this2.props.modalTrigger) {
155
+ _this2.props.modalTrigger.focus();
85
156
  }
86
- _this.props.closeModal();
157
+ _this2.props.closeModal();
87
158
  });
88
- _defineProperty(_this, "onBankSelection", function (e, option) {
89
- _this.setState({
159
+ _defineProperty(_this2, "onBankSelection", function (e, option) {
160
+ _this2.clearValidationErrors();
161
+ _this2.setState({
90
162
  selectedBank: new Bank(option)
91
163
  });
92
164
  });
93
- _defineProperty(_this, "onKeepCopyChange", function (e) {
94
- _this.props.uiSet(COPY_MOVE_BANK_ENTRY_MODAL_KEEP_COPY, e.target.checked);
165
+ _defineProperty(_this2, "onKeepCopyChange", function (e) {
166
+ _this2.props.uiSet(COPY_MOVE_BANK_ENTRY_MODAL_KEEP_COPY, e.target.checked);
95
167
  });
96
- _defineProperty(_this, "handleRadioChange", function (event, value) {
97
- _this.setState({
168
+ _defineProperty(_this2, "handleRadioChange", function (event, value) {
169
+ _this2.clearValidationErrors();
170
+ _this2.setState({
98
171
  bankType: value
99
172
  });
100
173
  });
101
- _defineProperty(_this, "onTitleChange", function (e) {
102
- _this.setState({
174
+ _defineProperty(_this2, "onTitleChange", function (e) {
175
+ _this2.clearValidationErrors();
176
+ _this2.setState({
103
177
  newBankTitle: e.target.value
104
178
  });
105
179
  });
106
- return _this;
180
+ _this2.radioInputRef = React.createRef();
181
+ _this2.textInputRef = React.createRef();
182
+ _this2.bankSelectionInputRef = React.createRef();
183
+ return _this2;
107
184
  }
108
185
  _inherits(CopyMoveBankEntryModal, _Component);
109
186
  return _createClass(CopyMoveBankEntryModal, [{
@@ -117,14 +194,9 @@ export var CopyMoveBankEntryModal = /*#__PURE__*/function (_Component) {
117
194
  }, {
118
195
  key: "addToBankButton",
119
196
  value: function addToBankButton() {
120
- var _this$state = this.state,
121
- bankType = _this$state.bankType,
122
- newBankTitle = _this$state.newBankTitle;
123
- var disabled = bankType === 'existing' && !this.state.selectedBank || bankType === 'new' && (!newBankTitle || !newBankTitle.trim());
124
197
  return /*#__PURE__*/React.createElement(Button, {
125
198
  color: "primary",
126
199
  onClick: this.continueAction,
127
- disabled: disabled,
128
200
  margin: XSMALL_SIDE_MARGIN,
129
201
  "data-automation": "sdk-add-to-bank-button"
130
202
  }, t('Add'));
@@ -134,16 +206,22 @@ export var CopyMoveBankEntryModal = /*#__PURE__*/function (_Component) {
134
206
  value: function renderBankTypeContent() {
135
207
  if (this.state.bankType === 'existing') {
136
208
  return /*#__PURE__*/React.createElement(BankSelection, {
209
+ inputRef: this.setBankInputRef,
137
210
  onBankSelection: this.onBankSelection,
138
211
  selectedBank: this.state.selectedBank,
139
- "data-automation": "sdk-bank-selection"
212
+ "data-automation": "sdk-bank-selection",
213
+ externalError: this.state.selectValidationError,
214
+ isRequired: true
140
215
  });
141
216
  }
142
217
  return /*#__PURE__*/React.createElement(TextInput, {
143
218
  onChange: this.onTitleChange,
144
219
  value: this.state.newBankTitle,
145
220
  renderLabel: t('New Bank Title'),
146
- type: "text"
221
+ type: "text",
222
+ messages: this.state.selectValidationError,
223
+ ref: this.textInputRef,
224
+ isRequired: true
147
225
  });
148
226
  }
149
227
  }, {
@@ -153,10 +231,13 @@ export var CopyMoveBankEntryModal = /*#__PURE__*/function (_Component) {
153
231
  onChange: this.handleRadioChange,
154
232
  name: t('Bank Type'),
155
233
  defaultValue: this.state.bankType,
156
- description: /*#__PURE__*/React.createElement(ScreenReaderContent, null, t('Bank Type'))
234
+ description: /*#__PURE__*/React.createElement(ScreenReaderContent, null, t('Bank Type')),
235
+ messages: this.state.radioValidationError,
236
+ isRequired: true
157
237
  }, /*#__PURE__*/React.createElement(RadioInput, {
158
238
  value: "existing",
159
- label: t('Existing item bank')
239
+ label: t('Existing item bank'),
240
+ ref: this.radioInputRef
160
241
  }), /*#__PURE__*/React.createElement(RadioInput, {
161
242
  value: "new",
162
243
  label: t('New item bank')