@instructure/quiz-core 22.10.2 → 22.11.1-rc.88

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 (379) hide show
  1. package/es/banks/api/bankEntries.js +1 -1
  2. package/es/banks/api/banks.js +19 -98
  3. package/es/banks/api/copyingBanksPoller.js +1 -1
  4. package/es/banks/api/tagAssociations.js +1 -1
  5. package/es/banks/components/AddBankEntryModal/presenter.js +1 -1
  6. package/es/banks/components/AddToBankModal/presenter.js +1 -1
  7. package/es/banks/components/AsyncSearch/index.js +1 -1
  8. package/es/banks/components/Bank/presenter.js +1 -1
  9. package/es/banks/components/BankEntry/presenter.js +1 -1
  10. package/es/banks/components/BankEntryRow/presenter.js +1 -1
  11. package/es/banks/components/BankSearch/presenter.js +1 -1
  12. package/es/banks/components/Banks/presenter.js +1 -1
  13. package/es/banks/components/BanksList/presenter.js +1 -1
  14. package/es/banks/components/CopyMoveBankEntryModal/presenter.js +1 -1
  15. package/es/banks/components/CreateBankModal/presenter.js +1 -1
  16. package/es/banks/components/EditBankModal/presenter.js +1 -1
  17. package/es/banks/components/HeaderBreadCrumb/index.js +1 -1
  18. package/es/banks/components/HeaderMenu/presenter.js +1 -1
  19. package/es/banks/components/NavWrapper/presenter.js +1 -1
  20. package/es/banks/components/SharingModal/RootAccountSharing.js +1 -1
  21. package/es/banks/components/SharingModal/ShareList/index.js +1 -1
  22. package/es/banks/components/SharingModal/index.js +6 -3
  23. package/es/banks/components/SharingModal/presenter.js +208 -132
  24. package/es/building/api/items.js +121 -25
  25. package/es/building/api/quizEntries.js +79 -16
  26. package/es/building/api/quizzes.js +1 -1
  27. package/es/building/api/stimuli.js +1 -1
  28. package/es/building/components/QTIImportModal/index.js +1 -1
  29. package/es/building/components/layout/Sidebar/presenter.js +1 -1
  30. package/es/building/components/layout/header/BuildingButtons/presenter.js +1 -1
  31. package/es/building/components/resources/AddToBankOptions/index.js +1 -1
  32. package/es/building/components/resources/BanksTray/presenter.js +1 -1
  33. package/es/building/components/resources/DeleteStimulusModal/presenter.js +1 -1
  34. package/es/building/components/resources/ItemFeedbackModal/presenter.js +1 -1
  35. package/es/building/components/resources/MoveImmutableModal/presenter.js +1 -1
  36. package/es/building/components/resources/quiz/editButton/EditButton.js +1 -1
  37. package/es/building/components/resources/quiz/instructions/Edit/presenter.js +1 -1
  38. package/es/building/components/resources/quiz/instructions/Instructions/presenter.js +1 -1
  39. package/es/building/components/resources/quiz/instructions/Show/index.js +1 -1
  40. package/es/building/components/resources/quiz/title/Edit/index.js +1 -1
  41. package/es/building/components/resources/quiz/title/Title/presenter.js +1 -1
  42. package/es/building/components/resources/quizEntry/QuizEntry/presenter.js +1 -1
  43. package/es/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankEdit/presenter.js +1 -1
  44. package/es/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankShow/index.js +1 -1
  45. package/es/building/components/resources/quizEntry/QuizEntryEdit/Footer/presenter.js +1 -1
  46. package/es/building/components/resources/quizEntry/QuizEntryEdit/Header/index.js +1 -1
  47. package/es/building/components/resources/quizEntry/QuizEntryEdit/presenter.js +1 -1
  48. package/es/building/components/resources/quizEntry/QuizEntryShow/presenter.js +22 -3
  49. package/es/common/actions/sharedBanks.js +13 -1
  50. package/es/common/actions/sharingModal.js +7 -0
  51. package/es/common/api/helpers.js +1 -1
  52. package/es/common/api/quizSessions.js +1 -1
  53. package/es/common/components/AccessCodeTextInput/index.js +1 -1
  54. package/es/common/components/ConfirmationModal/presenter.js +1 -1
  55. package/es/common/components/ImportModal/ImportFileSelector/index.js +1 -1
  56. package/es/common/components/ImportModal/presenter.js +1 -1
  57. package/es/common/components/Pin/presenter.js +1 -1
  58. package/es/common/components/PreviewFrame/index.js +1 -1
  59. package/es/common/components/PrintFontSizeModal/presenter.js +1 -1
  60. package/es/common/components/RceConfigProvider/rceConfigErrorMessages.js +1 -1
  61. package/es/common/components/SDKApp/index.js +1 -1
  62. package/es/common/components/alerts/presenter.js +1 -1
  63. package/es/common/components/layout/Page/index.js +1 -1
  64. package/es/common/components/layout/header/Calculator/presenter.js +1 -1
  65. package/es/common/components/layout/header/HeaderMenuButton/presenter.js +1 -1
  66. package/es/common/components/layout/header/Timer/presenter.js +1 -1
  67. package/es/common/components/layout/navbar/index.js +1 -1
  68. package/es/common/components/layout/sidebar/PositionSummary/index.js +1 -1
  69. package/es/common/components/layout/sidebar/Sidebar/Pin.js +1 -1
  70. package/es/common/components/layout/sidebar/Sidebar/index.js +1 -1
  71. package/es/common/components/layout/sidebar/SidebarItem/index.js +1 -1
  72. package/es/common/components/layout/sidebar/SidebarItem/presenter.js +1 -1
  73. package/es/common/components/layout/sidebar/Stimulus/Collection/presenter.js +1 -1
  74. package/es/common/components/layout/sidebar/Stimulus/Summary/presenter.js +1 -1
  75. package/es/common/components/layout/sidebar/Stimulus/presenter.js +1 -1
  76. package/es/common/components/resources/BankSelection/presenter.js +1 -1
  77. package/es/common/components/resources/WarningWrapper/index.js +1 -1
  78. package/es/common/components/resources/entry/EntrySave/presenter.js +1 -1
  79. package/es/common/components/resources/item/ItemEdit/presenter.js +1 -1
  80. package/es/common/components/resources/quiz/AddContent/Body/index.js +1 -1
  81. package/es/common/components/resources/quiz/AddContent/Body/presenter.js +135 -141
  82. package/es/common/components/resources/quiz/AddContent/Button/index.js +1 -1
  83. package/es/common/components/resources/quiz/AddContent/Modal/presenter.js +61 -73
  84. package/es/common/components/resources/quiz/AddContent/Popover/presenter.js +128 -119
  85. package/es/common/components/resources/quizSessionResult/Header/index.js +1 -1
  86. package/es/common/components/resources/quizSessionResult/Info/index.js +1 -1
  87. package/es/common/components/resources/sessionItemResult/ResultStimulus/index.js +1 -1
  88. package/es/common/components/resources/sessionItemResult/SessionItemResult/presenter.js +1 -1
  89. package/es/common/components/resources/sessionItemResult/SessionItemResultsList/index.js +1 -1
  90. package/es/common/components/resources/stimulus/StimulusEdit/presenter.js +1 -1
  91. package/es/common/components/resources/stimulus/StimulusEditInfo/presenter.js +1 -1
  92. package/es/common/components/resources/stimulus/StimulusShow/index.js +1 -1
  93. package/es/common/components/resources/stimulus/StimulusShowInfo/index.js +1 -1
  94. package/es/common/components/shared/FormattedDuration/index.js +1 -1
  95. package/es/common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js +1 -1
  96. package/es/common/components/shared/InteractionTypes/index.js +1 -4
  97. package/es/common/components/shared/InteractionTypes/presenter.js +2 -4
  98. package/es/common/components/shared/Paginator/index.js +1 -1
  99. package/es/common/components/shared/PrintTrigger/presenter.js +1 -1
  100. package/es/common/components/shared/TagDisplay/index.js +1 -1
  101. package/es/common/components/shared/TagSelect/presenter.js +1 -1
  102. package/es/common/components/shared/TagWrapper/presenter.js +1 -1
  103. package/es/common/components/shared/TimeUnitsInput/index.js +1 -1
  104. package/es/common/components/shared/drag_and_drop/DragAndDropZone/index.js +1 -1
  105. package/es/common/components/shared/drag_and_drop/DragHandle/presenter.js +1 -1
  106. package/es/common/components/shared/return_button/ReturnButton.js +1 -1
  107. package/es/common/components/shared/spinner/Spinner.js +1 -1
  108. package/es/common/middleware/sharedBanksMiddleware.js +243 -0
  109. package/es/common/records/Bank.js +1 -1
  110. package/es/common/records/Item.js +3 -2
  111. package/es/common/records/Quiz.js +1 -1
  112. package/es/common/records/QuizAnalysis.js +1 -1
  113. package/es/common/records/QuizEntry.js +8 -1
  114. package/es/common/records/Stimulus.js +1 -1
  115. package/es/common/reducers/sharingModal.js +17 -0
  116. package/es/common/util/Fetcher.js +1 -1
  117. package/es/common/util/TimerService.js +1 -1
  118. package/es/common/util/formatTimespan.js +1 -1
  119. package/es/common/util/interactionTypeMetadata.js +1 -1
  120. package/es/common/util/interactionTypePropsHelper.js +1 -1
  121. package/es/common/util/maxContent.js +1 -1
  122. package/es/common/util/useRemoteComponent.js +127 -0
  123. package/es/common/util/warningHelpers.js +1 -1
  124. package/es/common/util/withDynamoPagination.js +13 -2
  125. package/es/configureStore.js +4 -1
  126. package/es/grading/api/quizEntryRegrades.js +1 -1
  127. package/es/index.js +5 -3
  128. package/es/moderating/api/quizSessionEvents.js +4 -2
  129. package/es/moderating/components/events/PageBlurredEvent.js +1 -1
  130. package/es/moderating/components/events/PageFocusedEvent.js +1 -1
  131. package/es/moderating/components/events/ResponseEvent.js +1 -1
  132. package/es/moderating/components/events/SessionStartEvent.js +1 -1
  133. package/es/moderating/components/events/SessionSubmitEvent.js +1 -1
  134. package/es/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/ExtraAttemptsInput/index.js +1 -1
  135. package/es/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/index.js +1 -1
  136. package/es/moderating/components/resources/AccommodationsModal/ExtraTimeMultiplier/index.js +1 -1
  137. package/es/moderating/components/resources/AccommodationsModal/ExtraTimeSettings/index.js +1 -1
  138. package/es/moderating/components/resources/AccommodationsModal/ReduceAnswerChoicesSettings/index.js +1 -1
  139. package/es/moderating/components/resources/AccommodationsModal/index.js +1 -1
  140. package/es/moderating/components/resources/ElapsedTime.js +1 -1
  141. package/es/moderating/components/resources/EventDetails.js +1 -1
  142. package/es/moderating/components/resources/ModerateTable/presenter.js +1 -1
  143. package/es/moderating/components/resources/ModerateTableRow/presenter.js +1 -1
  144. package/es/moderating/components/resources/OutstandingQuizzesModal/presenter.js +1 -1
  145. package/es/moderating/components/resources/RetryGradePassbackButton/presenter.js +1 -1
  146. package/es/moderating/components/resources/util/renderEventSummary.js +1 -1
  147. package/es/moderating/components/sidebar/ModerateTray/presenter.js +1 -1
  148. package/es/moderating/components/sidebar/ResetQuiz/presenter.js +1 -1
  149. package/es/reporting/components/MetricsListItem/index.js +1 -1
  150. package/es/reporting/components/charts/CentileDistribution/presenter.js +1 -1
  151. package/es/reporting/components/charts/Distribution/presenter.js +1 -1
  152. package/es/reporting/components/charts/QuintileDistribution/presenter.js +1 -1
  153. package/es/reporting/components/itemAnalysis/AnswerFrequencySummary/index.js +1 -1
  154. package/es/reporting/components/itemAnalysis/ItemAnalysisRow/presenter.js +1 -1
  155. package/es/reporting/components/quizAnalysis/QuizAnalysisOverview.js +1 -1
  156. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/presenter.js +1 -1
  157. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/presenter.js +1 -1
  158. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/CategorizationType.js +1 -1
  159. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingType.js +1 -1
  160. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingTypeTable/presenter.js +1 -1
  161. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/OrderingType.js +1 -1
  162. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/ChoiceTypeWithInfo/presenter.js +1 -1
  163. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/presenter.js +1 -1
  164. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/RichFillBlankType/ChoiceGroupTypeTable/presenter.js +1 -1
  165. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/Table/index.js +1 -1
  166. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/index.js +1 -1
  167. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsTableWrapper/popoverContent.js +1 -1
  168. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsTableWrapper/presenter.js +1 -1
  169. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/presenter.js +1 -1
  170. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/presenter.js +1 -1
  171. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ExpandableCard/presenter.js +1 -1
  172. package/es/reporting/components/resources/NewQuizAndItemAnalysis/ExportButton/index.js +1 -1
  173. package/es/reporting/components/resources/NewQuizAndItemAnalysis/MetricPopover/presenter.js +1 -1
  174. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/popoverContent.js +1 -1
  175. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +1 -1
  176. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/popoverContent.js +1 -1
  177. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +1 -1
  178. package/es/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/presenter.js +1 -1
  179. package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +1 -3
  180. package/es/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +1 -1
  181. package/es/reporting/components/resources/QuizAndItemAnalysis/presenter.js +1 -1
  182. package/es/reporting/components/resources/ReportCard/index.js +1 -1
  183. package/es/reporting/components/resources/ReportList/index.js +1 -1
  184. package/es/reporting/components/resources/StudentAnalysis/ReportCard/presenter.js +1 -1
  185. package/es/reporting/components/resources/common/AnalysisUpdateDate/index.js +1 -1
  186. package/es/reporting/components/resources/common/ExportButton/index.js +1 -1
  187. package/es/reporting/components/resources/common/errorMessages.js +1 -1
  188. package/es/reporting/components/resources/common/utils.js +1 -1
  189. package/es/taking/api/taking.js +1 -1
  190. package/lib/banks/api/bankEntries.js +1 -1
  191. package/lib/banks/api/banks.js +18 -97
  192. package/lib/banks/api/copyingBanksPoller.js +1 -1
  193. package/lib/banks/api/tagAssociations.js +1 -1
  194. package/lib/banks/components/AddBankEntryModal/presenter.js +1 -1
  195. package/lib/banks/components/AddToBankModal/presenter.js +1 -1
  196. package/lib/banks/components/AsyncSearch/index.js +1 -1
  197. package/lib/banks/components/Bank/presenter.js +1 -1
  198. package/lib/banks/components/BankEntry/presenter.js +1 -1
  199. package/lib/banks/components/BankEntryRow/presenter.js +1 -1
  200. package/lib/banks/components/BankSearch/presenter.js +1 -1
  201. package/lib/banks/components/Banks/presenter.js +1 -1
  202. package/lib/banks/components/BanksList/presenter.js +1 -1
  203. package/lib/banks/components/CopyMoveBankEntryModal/presenter.js +1 -1
  204. package/lib/banks/components/CreateBankModal/presenter.js +1 -1
  205. package/lib/banks/components/EditBankModal/presenter.js +1 -1
  206. package/lib/banks/components/HeaderBreadCrumb/index.js +1 -1
  207. package/lib/banks/components/HeaderMenu/presenter.js +1 -1
  208. package/lib/banks/components/NavWrapper/presenter.js +1 -1
  209. package/lib/banks/components/SharingModal/RootAccountSharing.js +1 -1
  210. package/lib/banks/components/SharingModal/ShareList/index.js +1 -1
  211. package/lib/banks/components/SharingModal/index.js +5 -2
  212. package/lib/banks/components/SharingModal/presenter.js +206 -130
  213. package/lib/building/api/items.js +121 -24
  214. package/lib/building/api/quizEntries.js +79 -15
  215. package/lib/building/api/quizzes.js +2 -2
  216. package/lib/building/api/stimuli.js +1 -1
  217. package/lib/building/components/QTIImportModal/index.js +1 -1
  218. package/lib/building/components/layout/Sidebar/presenter.js +1 -1
  219. package/lib/building/components/layout/header/BuildingButtons/presenter.js +1 -1
  220. package/lib/building/components/resources/AddToBankOptions/index.js +1 -1
  221. package/lib/building/components/resources/BanksTray/presenter.js +1 -1
  222. package/lib/building/components/resources/DeleteStimulusModal/presenter.js +1 -1
  223. package/lib/building/components/resources/ItemFeedbackModal/presenter.js +1 -1
  224. package/lib/building/components/resources/MoveImmutableModal/presenter.js +1 -1
  225. package/lib/building/components/resources/quiz/editButton/EditButton.js +1 -1
  226. package/lib/building/components/resources/quiz/instructions/Edit/presenter.js +1 -1
  227. package/lib/building/components/resources/quiz/instructions/Instructions/presenter.js +1 -1
  228. package/lib/building/components/resources/quiz/instructions/Show/index.js +1 -1
  229. package/lib/building/components/resources/quiz/title/Edit/index.js +1 -1
  230. package/lib/building/components/resources/quiz/title/Title/presenter.js +1 -1
  231. package/lib/building/components/resources/quizEntry/QuizEntry/presenter.js +1 -1
  232. package/lib/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankEdit/presenter.js +1 -1
  233. package/lib/building/components/resources/quizEntry/QuizEntryBank/QuizEntryBankShow/index.js +1 -1
  234. package/lib/building/components/resources/quizEntry/QuizEntryEdit/Footer/presenter.js +1 -1
  235. package/lib/building/components/resources/quizEntry/QuizEntryEdit/Header/index.js +1 -1
  236. package/lib/building/components/resources/quizEntry/QuizEntryEdit/presenter.js +1 -1
  237. package/lib/building/components/resources/quizEntry/QuizEntryShow/presenter.js +21 -2
  238. package/lib/common/actions/sharedBanks.js +13 -1
  239. package/lib/common/actions/sharingModal.js +13 -0
  240. package/lib/common/api/helpers.js +1 -1
  241. package/lib/common/api/quizSessions.js +1 -1
  242. package/lib/common/components/AccessCodeTextInput/index.js +1 -1
  243. package/lib/common/components/ConfirmationModal/presenter.js +1 -1
  244. package/lib/common/components/ImportModal/ImportFileSelector/index.js +1 -1
  245. package/lib/common/components/ImportModal/presenter.js +1 -1
  246. package/lib/common/components/Pin/presenter.js +1 -1
  247. package/lib/common/components/PreviewFrame/index.js +1 -1
  248. package/lib/common/components/PrintFontSizeModal/presenter.js +1 -1
  249. package/lib/common/components/RceConfigProvider/rceConfigErrorMessages.js +1 -1
  250. package/lib/common/components/SDKApp/index.js +2 -2
  251. package/lib/common/components/alerts/presenter.js +1 -1
  252. package/lib/common/components/layout/Page/index.js +1 -1
  253. package/lib/common/components/layout/header/Calculator/presenter.js +1 -1
  254. package/lib/common/components/layout/header/HeaderMenuButton/presenter.js +1 -1
  255. package/lib/common/components/layout/header/Timer/presenter.js +1 -1
  256. package/lib/common/components/layout/navbar/index.js +1 -1
  257. package/lib/common/components/layout/sidebar/PositionSummary/index.js +1 -1
  258. package/lib/common/components/layout/sidebar/Sidebar/Pin.js +1 -1
  259. package/lib/common/components/layout/sidebar/Sidebar/index.js +1 -1
  260. package/lib/common/components/layout/sidebar/SidebarItem/index.js +1 -1
  261. package/lib/common/components/layout/sidebar/SidebarItem/presenter.js +1 -1
  262. package/lib/common/components/layout/sidebar/Stimulus/Collection/presenter.js +1 -1
  263. package/lib/common/components/layout/sidebar/Stimulus/Summary/presenter.js +1 -1
  264. package/lib/common/components/layout/sidebar/Stimulus/presenter.js +1 -1
  265. package/lib/common/components/resources/BankSelection/presenter.js +1 -1
  266. package/lib/common/components/resources/WarningWrapper/index.js +1 -1
  267. package/lib/common/components/resources/entry/EntrySave/presenter.js +1 -1
  268. package/lib/common/components/resources/item/ItemEdit/presenter.js +1 -1
  269. package/lib/common/components/resources/quiz/AddContent/Body/index.js +1 -1
  270. package/lib/common/components/resources/quiz/AddContent/Body/presenter.js +138 -141
  271. package/lib/common/components/resources/quiz/AddContent/Button/index.js +1 -1
  272. package/lib/common/components/resources/quiz/AddContent/Modal/presenter.js +61 -75
  273. package/lib/common/components/resources/quiz/AddContent/Popover/presenter.js +129 -119
  274. package/lib/common/components/resources/quizSessionResult/Header/index.js +1 -1
  275. package/lib/common/components/resources/quizSessionResult/Info/index.js +1 -1
  276. package/lib/common/components/resources/sessionItemResult/ResultStimulus/index.js +1 -1
  277. package/lib/common/components/resources/sessionItemResult/SessionItemResult/presenter.js +1 -1
  278. package/lib/common/components/resources/sessionItemResult/SessionItemResultsList/index.js +1 -1
  279. package/lib/common/components/resources/stimulus/StimulusEdit/presenter.js +1 -1
  280. package/lib/common/components/resources/stimulus/StimulusEditInfo/presenter.js +1 -1
  281. package/lib/common/components/resources/stimulus/StimulusShow/index.js +1 -1
  282. package/lib/common/components/resources/stimulus/StimulusShowInfo/index.js +1 -1
  283. package/lib/common/components/shared/FormattedDuration/index.js +1 -1
  284. package/lib/common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js +1 -1
  285. package/lib/common/components/shared/InteractionTypes/index.js +1 -4
  286. package/lib/common/components/shared/InteractionTypes/presenter.js +2 -4
  287. package/lib/common/components/shared/Paginator/index.js +1 -1
  288. package/lib/common/components/shared/PrintTrigger/presenter.js +1 -1
  289. package/lib/common/components/shared/TagDisplay/index.js +1 -1
  290. package/lib/common/components/shared/TagSelect/presenter.js +1 -1
  291. package/lib/common/components/shared/TagWrapper/presenter.js +1 -1
  292. package/lib/common/components/shared/TimeUnitsInput/index.js +1 -1
  293. package/lib/common/components/shared/drag_and_drop/DragAndDropZone/index.js +1 -1
  294. package/lib/common/components/shared/drag_and_drop/DragHandle/presenter.js +1 -1
  295. package/lib/common/components/shared/return_button/ReturnButton.js +1 -1
  296. package/lib/common/components/shared/spinner/Spinner.js +1 -1
  297. package/lib/common/middleware/sharedBanksMiddleware.js +250 -0
  298. package/lib/common/records/Bank.js +1 -1
  299. package/lib/common/records/Item.js +3 -2
  300. package/lib/common/records/Quiz.js +1 -1
  301. package/lib/common/records/QuizAnalysis.js +1 -1
  302. package/lib/common/records/QuizEntry.js +8 -1
  303. package/lib/common/records/Stimulus.js +1 -1
  304. package/lib/common/reducers/sharingModal.js +23 -0
  305. package/lib/common/util/Fetcher.js +1 -1
  306. package/lib/common/util/TimerService.js +1 -1
  307. package/lib/common/util/formatTimespan.js +1 -1
  308. package/lib/common/util/interactionTypeMetadata.js +1 -1
  309. package/lib/common/util/interactionTypePropsHelper.js +1 -1
  310. package/lib/common/util/maxContent.js +1 -1
  311. package/lib/common/util/useRemoteComponent.js +134 -0
  312. package/lib/common/util/warningHelpers.js +1 -1
  313. package/lib/common/util/withDynamoPagination.js +13 -2
  314. package/lib/configureStore.js +4 -1
  315. package/lib/grading/api/quizEntryRegrades.js +1 -1
  316. package/lib/index.js +37 -0
  317. package/lib/moderating/api/quizSessionEvents.js +4 -2
  318. package/lib/moderating/components/events/PageBlurredEvent.js +1 -1
  319. package/lib/moderating/components/events/PageFocusedEvent.js +1 -1
  320. package/lib/moderating/components/events/ResponseEvent.js +1 -1
  321. package/lib/moderating/components/events/SessionStartEvent.js +1 -1
  322. package/lib/moderating/components/events/SessionSubmitEvent.js +1 -1
  323. package/lib/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/ExtraAttemptsInput/index.js +1 -1
  324. package/lib/moderating/components/resources/AccommodationsModal/ExtraAttemptSettings/index.js +1 -1
  325. package/lib/moderating/components/resources/AccommodationsModal/ExtraTimeMultiplier/index.js +1 -1
  326. package/lib/moderating/components/resources/AccommodationsModal/ExtraTimeSettings/index.js +1 -1
  327. package/lib/moderating/components/resources/AccommodationsModal/ReduceAnswerChoicesSettings/index.js +1 -1
  328. package/lib/moderating/components/resources/AccommodationsModal/index.js +1 -1
  329. package/lib/moderating/components/resources/ElapsedTime.js +1 -1
  330. package/lib/moderating/components/resources/EventDetails.js +1 -1
  331. package/lib/moderating/components/resources/ModerateTable/presenter.js +1 -1
  332. package/lib/moderating/components/resources/ModerateTableRow/presenter.js +1 -1
  333. package/lib/moderating/components/resources/OutstandingQuizzesModal/presenter.js +1 -1
  334. package/lib/moderating/components/resources/RetryGradePassbackButton/presenter.js +1 -1
  335. package/lib/moderating/components/resources/util/renderEventSummary.js +1 -1
  336. package/lib/moderating/components/sidebar/ModerateTray/presenter.js +1 -1
  337. package/lib/moderating/components/sidebar/ResetQuiz/presenter.js +1 -1
  338. package/lib/reporting/components/MetricsListItem/index.js +1 -1
  339. package/lib/reporting/components/charts/CentileDistribution/presenter.js +1 -1
  340. package/lib/reporting/components/charts/Distribution/presenter.js +1 -1
  341. package/lib/reporting/components/charts/QuintileDistribution/presenter.js +1 -1
  342. package/lib/reporting/components/itemAnalysis/AnswerFrequencySummary/index.js +1 -1
  343. package/lib/reporting/components/itemAnalysis/ItemAnalysisRow/presenter.js +1 -1
  344. package/lib/reporting/components/quizAnalysis/QuizAnalysisOverview.js +1 -1
  345. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/ChoiceTypeTableRow/presenter.js +1 -1
  346. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/presenter.js +1 -1
  347. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/CategorizationType.js +1 -1
  348. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingType.js +1 -1
  349. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/MatchingTypeTable/presenter.js +1 -1
  350. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/MatchingType/OrderingType.js +1 -1
  351. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/ChoiceTypeWithInfo/presenter.js +1 -1
  352. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/NumericType/presenter.js +1 -1
  353. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/RichFillBlankType/ChoiceGroupTypeTable/presenter.js +1 -1
  354. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/Table/index.js +1 -1
  355. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/index.js +1 -1
  356. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsTableWrapper/popoverContent.js +1 -1
  357. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsTableWrapper/presenter.js +1 -1
  358. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/presenter.js +1 -1
  359. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/presenter.js +1 -1
  360. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ExpandableCard/presenter.js +1 -1
  361. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/ExportButton/index.js +1 -1
  362. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/MetricPopover/presenter.js +1 -1
  363. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/popoverContent.js +1 -1
  364. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +1 -1
  365. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/popoverContent.js +1 -1
  366. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +1 -1
  367. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/ReportCard/presenter.js +1 -1
  368. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +1 -3
  369. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +1 -1
  370. package/lib/reporting/components/resources/QuizAndItemAnalysis/presenter.js +1 -1
  371. package/lib/reporting/components/resources/ReportCard/index.js +1 -1
  372. package/lib/reporting/components/resources/ReportList/index.js +1 -1
  373. package/lib/reporting/components/resources/StudentAnalysis/ReportCard/presenter.js +1 -1
  374. package/lib/reporting/components/resources/common/AnalysisUpdateDate/index.js +1 -1
  375. package/lib/reporting/components/resources/common/ExportButton/index.js +1 -1
  376. package/lib/reporting/components/resources/common/errorMessages.js +1 -1
  377. package/lib/reporting/components/resources/common/utils.js +1 -1
  378. package/lib/taking/api/taking.js +1 -1
  379. package/package.json +40 -32
@@ -0,0 +1,250 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createSharedBanksMiddleware = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _Fetcher = _interopRequireDefault(require("../util/Fetcher"));
11
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
12
+ var _helpers = require("../api/helpers");
13
+ var _callHandlers = require("../api/callHandlers");
14
+ var _quizCommon = require("@instructure/quiz-common");
15
+ var _sharingModal = require("../../common/actions/sharingModal");
16
+ var banksApiEndpoint = '/api/banks';
17
+ var chunkSize = 200;
18
+ function getAllinfo(_x, _x2) {
19
+ return _getAllinfo.apply(this, arguments);
20
+ }
21
+ function _getAllinfo() {
22
+ _getAllinfo = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(func, uuids) {
23
+ var info, i, nextChunk, nextData, result;
24
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
25
+ while (1) switch (_context2.prev = _context2.next) {
26
+ case 0:
27
+ info = [];
28
+ for (i = 0; i < uuids.length; i += chunkSize) {
29
+ nextChunk = uuids.slice(i, i + chunkSize);
30
+ nextData = func(nextChunk);
31
+ info.push(nextData);
32
+ }
33
+ _context2.prev = 2;
34
+ _context2.next = 5;
35
+ return Promise.all(info);
36
+ case 5:
37
+ result = _context2.sent;
38
+ return _context2.abrupt("return", result.flat());
39
+ case 9:
40
+ _context2.prev = 9;
41
+ _context2.t0 = _context2["catch"](2);
42
+ console.error('Error fetching user info', _context2.t0);
43
+ return _context2.abrupt("return", []);
44
+ case 13:
45
+ case "end":
46
+ return _context2.stop();
47
+ }
48
+ }, _callee2, null, [[2, 9]]);
49
+ }));
50
+ return _getAllinfo.apply(this, arguments);
51
+ }
52
+ function getSharedBankUsers(_x3, _x4) {
53
+ return _getSharedBankUsers.apply(this, arguments);
54
+ }
55
+ function _getSharedBankUsers() {
56
+ _getSharedBankUsers = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(sharedBanksInfo, getUserInfo) {
57
+ var userSharedBanks, userUuids, usersInfo;
58
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
59
+ while (1) switch (_context3.prev = _context3.next) {
60
+ case 0:
61
+ userSharedBanks = [];
62
+ userUuids = sharedBanksInfo.filter(function (sb) {
63
+ return sb.entity_type === _quizCommon.SHARED_WITH_USER;
64
+ }).map(function (sb) {
65
+ return sb.entity_id;
66
+ });
67
+ _context3.next = 4;
68
+ return getAllinfo(getUserInfo, userUuids);
69
+ case 4:
70
+ usersInfo = _context3.sent;
71
+ usersInfo.forEach(function (userInfo) {
72
+ var sharedBankInfo = sharedBanksInfo.find(function (sb) {
73
+ return sb.entity_type === _quizCommon.SHARED_WITH_USER && sb.entity_id === userInfo.uuid;
74
+ });
75
+ if (sharedBankInfo) {
76
+ userSharedBanks.push({
77
+ id: sharedBankInfo.id,
78
+ entityType: sharedBankInfo.entity_type,
79
+ entityId: sharedBankInfo.entity_id,
80
+ title: userInfo.fullName,
81
+ avatar: userInfo.avatar,
82
+ permission: sharedBankInfo.permission,
83
+ bankId: sharedBankInfo.bank_id
84
+ });
85
+ }
86
+ });
87
+ return _context3.abrupt("return", userSharedBanks);
88
+ case 7:
89
+ case "end":
90
+ return _context3.stop();
91
+ }
92
+ }, _callee3);
93
+ }));
94
+ return _getSharedBankUsers.apply(this, arguments);
95
+ }
96
+ function getSharedBankCourses(_x5, _x6) {
97
+ return _getSharedBankCourses.apply(this, arguments);
98
+ }
99
+ function _getSharedBankCourses() {
100
+ _getSharedBankCourses = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(sharedBanksInfo, getCourseInfo) {
101
+ var courseSharedBanks, courseUuids, coursesInfo;
102
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
103
+ while (1) switch (_context4.prev = _context4.next) {
104
+ case 0:
105
+ courseSharedBanks = [];
106
+ courseUuids = sharedBanksInfo.filter(function (sb) {
107
+ return sb.entity_type === _quizCommon.SHARED_WITH_COURSE;
108
+ }).map(function (sb) {
109
+ return sb.entity_id;
110
+ });
111
+ _context4.next = 4;
112
+ return getAllinfo(getCourseInfo, courseUuids);
113
+ case 4:
114
+ coursesInfo = _context4.sent;
115
+ coursesInfo.forEach(function (courseInfo) {
116
+ var sharedBankInfo = sharedBanksInfo.find(function (sb) {
117
+ return sb.entity_type === _quizCommon.SHARED_WITH_COURSE && sb.entity_id === courseInfo.uuid;
118
+ });
119
+ if (sharedBankInfo) {
120
+ courseSharedBanks.push({
121
+ id: sharedBankInfo.id,
122
+ entityType: sharedBankInfo.entity_type,
123
+ entityId: sharedBankInfo.entity_id,
124
+ title: courseInfo.title,
125
+ permission: sharedBankInfo.permission,
126
+ bankId: sharedBankInfo.bank_id
127
+ });
128
+ }
129
+ });
130
+ return _context4.abrupt("return", courseSharedBanks);
131
+ case 7:
132
+ case "end":
133
+ return _context4.stop();
134
+ }
135
+ }, _callee4);
136
+ }));
137
+ return _getSharedBankCourses.apply(this, arguments);
138
+ }
139
+ function getSharedBankAccounts(_x7, _x8) {
140
+ return _getSharedBankAccounts.apply(this, arguments);
141
+ }
142
+ function _getSharedBankAccounts() {
143
+ _getSharedBankAccounts = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(sharedBanksInfo, getAccountInfo) {
144
+ var accountSharedBanks, accountUuids, accountsInfo;
145
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
146
+ while (1) switch (_context5.prev = _context5.next) {
147
+ case 0:
148
+ accountSharedBanks = [];
149
+ accountUuids = sharedBanksInfo.filter(function (sb) {
150
+ return sb.entity_type === _quizCommon.SHARED_WITH_ACCOUNT;
151
+ }).map(function (sb) {
152
+ return sb.entity_id;
153
+ });
154
+ _context5.next = 4;
155
+ return getAllinfo(getAccountInfo, accountUuids);
156
+ case 4:
157
+ accountsInfo = _context5.sent;
158
+ accountsInfo.forEach(function (accountInfo) {
159
+ var sharedBankInfo = sharedBanksInfo.find(function (sb) {
160
+ return sb.entity_type === _quizCommon.SHARED_WITH_ACCOUNT && sb.entity_id === accountInfo.uuid;
161
+ });
162
+ if (sharedBankInfo) {
163
+ accountSharedBanks.push({
164
+ id: sharedBankInfo.id,
165
+ entityType: sharedBankInfo.entity_type,
166
+ entityId: sharedBankInfo.entity_id,
167
+ title: accountInfo.name,
168
+ permission: sharedBankInfo.permission,
169
+ bankId: sharedBankInfo.bank_id
170
+ });
171
+ }
172
+ });
173
+ return _context5.abrupt("return", accountSharedBanks);
174
+ case 7:
175
+ case "end":
176
+ return _context5.stop();
177
+ }
178
+ }, _callee5);
179
+ }));
180
+ return _getSharedBankAccounts.apply(this, arguments);
181
+ }
182
+ var createSharedBanksMiddleware = exports.createSharedBanksMiddleware = function createSharedBanksMiddleware() {
183
+ return function (store) {
184
+ return function (next) {
185
+ return /*#__PURE__*/function () {
186
+ var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(action) {
187
+ var _action$payload, bank, getUserInfo, getCourseInfo, getAccountInfo, dispatch, url, startLoading, fetcher, sharedBanksInfo, users, courses, accounts, endLoading;
188
+ return _regenerator["default"].wrap(function _callee$(_context) {
189
+ while (1) switch (_context.prev = _context.next) {
190
+ case 0:
191
+ if (!(action.type === _quizCommon.GET_SHARED_BANKS)) {
192
+ _context.next = 23;
193
+ break;
194
+ }
195
+ _action$payload = action.payload, bank = _action$payload.bank, getUserInfo = _action$payload.getUserInfo, getCourseInfo = _action$payload.getCourseInfo, getAccountInfo = _action$payload.getAccountInfo;
196
+ dispatch = store.dispatch;
197
+ url = "".concat(banksApiEndpoint, "/").concat(bank.id, "/shared_banks");
198
+ startLoading = {
199
+ loading: true
200
+ };
201
+ dispatch((0, _sharingModal.sharedBankLoadingAction)(startLoading));
202
+ fetcher = new _Fetcher["default"]({
203
+ onError: (0, _helpers.handleError)(dispatch, (0, _formatMessage["default"])('Failed to fetch shared banks.'))
204
+ });
205
+ _context.next = 9;
206
+ return fetcher.get(url);
207
+ case 9:
208
+ sharedBanksInfo = _context.sent;
209
+ // Add bank creator if no data
210
+ if (sharedBanksInfo.length === 0) {
211
+ sharedBanksInfo.push({
212
+ id: '-1',
213
+ entity_type: _quizCommon.SHARED_WITH_USER,
214
+ entity_id: bank.creator,
215
+ permission: _quizCommon.CAN_EDIT,
216
+ bank_id: bank.id
217
+ });
218
+ }
219
+ _context.next = 13;
220
+ return getSharedBankUsers(sharedBanksInfo, getUserInfo);
221
+ case 13:
222
+ users = _context.sent;
223
+ _context.next = 16;
224
+ return getSharedBankCourses(sharedBanksInfo, getCourseInfo);
225
+ case 16:
226
+ courses = _context.sent;
227
+ _context.next = 19;
228
+ return getSharedBankAccounts(sharedBanksInfo, getAccountInfo);
229
+ case 19:
230
+ accounts = _context.sent;
231
+ dispatch((0, _callHandlers.handleShareBanksResponse)(users.concat(courses).concat(accounts)));
232
+ endLoading = {
233
+ loading: false
234
+ };
235
+ dispatch((0, _sharingModal.sharedBankLoadingAction)(endLoading));
236
+ case 23:
237
+ return _context.abrupt("return", next(action));
238
+ case 24:
239
+ case "end":
240
+ return _context.stop();
241
+ }
242
+ }, _callee);
243
+ }));
244
+ return function (_x9) {
245
+ return _ref.apply(this, arguments);
246
+ };
247
+ }();
248
+ };
249
+ };
250
+ };
@@ -13,7 +13,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
13
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
14
  var _immutable = require("immutable");
15
15
  var _reduxRecord = _interopRequireDefault(require("./reduxRecord"));
16
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
16
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
17
17
  var _quizCommon = require("@instructure/quiz-common");
18
18
  var _instructureValidations = require("instructure-validations");
19
19
  var _quizInteractions = require("@instructure/quiz-interactions");
@@ -12,7 +12,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
12
12
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
13
  var _immutable = require("immutable");
14
14
  var _quizInteractions = require("@instructure/quiz-interactions");
15
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
15
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
16
16
  var _instructureValidations = require("instructure-validations");
17
17
  var _quizCommon = require("@instructure/quiz-common");
18
18
  var _reduxRecord = _interopRequireDefault(require("./reduxRecord"));
@@ -149,6 +149,7 @@ var Item = exports.Item = /*#__PURE__*/function (_ReduxRecord) {
149
149
  feedback: (0, _immutable.Map)(),
150
150
  answerFeedback: (0, _immutable.Map)(),
151
151
  stimulusId: null,
152
- calculatorType: 'none'
152
+ calculatorType: 'none',
153
+ metadata: (0, _immutable.Map)()
153
154
  }));
154
155
  var _default = exports["default"] = Item;
@@ -14,7 +14,7 @@ var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/
14
14
  var _immutable = require("immutable");
15
15
  var _instructureValidations = require("instructure-validations");
16
16
  var _quizInteractions = require("@instructure/quiz-interactions");
17
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
17
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
18
18
  var _QuizAnalysis = _interopRequireDefault(require("./QuizAnalysis"));
19
19
  var _reduxRecord = _interopRequireDefault(require("./reduxRecord"));
20
20
  var _withStateCache = _interopRequireDefault(require("../util/withStateCache"));
@@ -11,7 +11,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
11
11
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
12
12
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
13
  var _reduxRecord = _interopRequireDefault(require("./reduxRecord"));
14
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
14
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
15
15
  function _callSuper(_this, derived, args) {
16
16
  function isNativeReflectConstruct() {
17
17
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -24,7 +24,7 @@ var _BankEntry2 = _interopRequireDefault(require("./BankEntry"));
24
24
  var _quizCommon = require("@instructure/quiz-common");
25
25
  var _immutableHelpers = require("../util/immutableHelpers");
26
26
  var _withStateCache = _interopRequireDefault(require("../util/withStateCache"));
27
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
27
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
28
28
  var _dec, _class;
29
29
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
30
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -316,6 +316,13 @@ var QuizEntry = exports.QuizEntry = (_dec = (0, _withStateCache["default"])(func
316
316
  get: function get() {
317
317
  return !isNaN(parseInt(this.stimulusQuizEntryId, 10));
318
318
  }
319
+ }, {
320
+ key: "isAiGenerated",
321
+ get: function get() {
322
+ var _this$getEntry;
323
+ var tags = ((_this$getEntry = this.getEntry()) === null || _this$getEntry === void 0 || (_this$getEntry = _this$getEntry.metadata) === null || _this$getEntry === void 0 ? void 0 : _this$getEntry.get('tags', (0, _immutable.List)())) || (0, _immutable.List)();
324
+ return tags.includes('ai-generated');
325
+ }
319
326
  }, {
320
327
  key: "isTemporary",
321
328
  get: function get() {
@@ -13,7 +13,7 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
13
13
  var _immutable = require("immutable");
14
14
  var _reduxRecord = _interopRequireDefault(require("./reduxRecord"));
15
15
  var _quizCommon = require("@instructure/quiz-common");
16
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
16
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
17
17
  var _instructureValidations = require("instructure-validations");
18
18
  var _quizInteractions = require("@instructure/quiz-interactions");
19
19
  function _callSuper(_this, derived, args) {
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _immutable = require("immutable");
8
+ var _quizCommon = require("@instructure/quiz-common");
9
+ var changeLoading = function changeLoading(state, payload) {
10
+ return state.merge({
11
+ loading: payload.loading !== undefined ? payload.loading : state.loading
12
+ });
13
+ };
14
+ var _default = exports["default"] = function _default() {
15
+ var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (0, _immutable.fromJS)({});
16
+ var action = arguments.length > 1 ? arguments[1] : undefined;
17
+ switch (action.type) {
18
+ case _quizCommon.CHANGE_MODAL_LOADING:
19
+ return changeLoading(state, action.payload);
20
+ default:
21
+ return state;
22
+ }
23
+ };
@@ -13,7 +13,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
13
13
  var _humps = require("humps");
14
14
  var _queryString = _interopRequireDefault(require("query-string"));
15
15
  var _isomorphicFetch = _interopRequireDefault(require("isomorphic-fetch"));
16
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
16
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
17
17
  var _jsonify = _interopRequireDefault(require("./jsonify"));
18
18
  var _httpHeaders = require("./httpHeaders");
19
19
  var _reduxStore = _interopRequireDefault(require("../../reduxStore"));
@@ -8,7 +8,7 @@ exports["default"] = exports.TimerService = exports.MAX_SETTIMEOUT_IN_MILLISECON
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
11
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
12
12
  var _reduxStore = _interopRequireDefault(require("../../reduxStore"));
13
13
  var MAX_SETTIMEOUT_IN_MILLISECONDS = exports.MAX_SETTIMEOUT_IN_MILLISECONDS = 20 * 24 * 3600 * 1000; // ms of 20 days
14
14
  var TimerService = exports.TimerService = /*#__PURE__*/function () {
@@ -8,7 +8,7 @@ exports.displayDateAndTimeInTimezone = displayDateAndTimeInTimezone;
8
8
  exports.formatTime = formatTime;
9
9
  exports.formatTimeToFullNumeric = formatTimeToFullNumeric;
10
10
  exports.formatTimespan = void 0;
11
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
11
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
12
12
  var _luxon = require("luxon");
13
13
  var minuteDuration = 60;
14
14
  var hourDuration = 3600;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.interactionTypesNameDictionary = exports.interactionTypeMetadata = void 0;
8
8
  var _uiIcons = require("@instructure/ui-icons");
9
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
9
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
10
10
  // TODO: Add correct icon file imports when they are in inst icons
11
11
  // import { MultipleChoiceIcon } from '@instructure/ui-icons'
12
12
  // import { MultipleAnswerIcon } from '@instructure/ui-icons'
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.propsForInteractionShow = exports.propsForInteractionEdit = void 0;
8
8
  var _quizRce = require("@instructure/quiz-rce");
9
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
9
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
10
10
  var _featureCheck = require("./featureCheck");
11
11
  var propsForInteractionEdit = exports.propsForInteractionEdit = function propsForInteractionEdit(props, additionalOptions) {
12
12
  var item = props.workingItem.toJS();
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports["default"] = void 0;
8
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
8
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
9
9
  var _quizCommon = require("@instructure/quiz-common");
10
10
  var _default = exports["default"] = function _default(val, options) {
11
11
  var limit = options.limit || _quizCommon.BUILD_CHAR_LIMIT;
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.useRemoteComponent = useRemoteComponent;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _react = require("react");
12
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
13
+ // @ts-check
14
+
15
+ /**
16
+ * Custom hook to load and render a remote component asynchronously.
17
+ *
18
+ * @param {() => Promise<{
19
+ * render: (container: HTMLElement, props: unknown) => void,
20
+ * unmount?: () => void
21
+ * }>} loadRemoteModule - A function that returns a promise resolving to the remote component module
22
+ * @param {unknown | undefined} props - Props to pass to the remote component when rendering
23
+ * @param {boolean} enabled - Whether the remote component should be loaded and rendered
24
+ *
25
+ * @returns {{
26
+ * containerRef: React.MutableRefObject<HTMLDivElement | null>,
27
+ * componentActivityState: 'idle' | 'pending' | 'success' | 'error',
28
+ * componentError: Error | null,
29
+ * unmount: () => void
30
+ * }} An object containing the container ref and unmount function
31
+ */
32
+ function useRemoteComponent(loadRemoteModule, props) {
33
+ var enabled = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
34
+ var mountCancelled = (0, _react.useRef)(false);
35
+ var _useState = (0, _react.useState)(/** @type {'idle' | 'pending' | 'success' | 'error'} */'idle'),
36
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
37
+ componentActivityState = _useState2[0],
38
+ setComponentActivityState = _useState2[1];
39
+ var _useState3 = (0, _react.useState)(/** @type {Error | null} */null),
40
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
41
+ componentError = _useState4[0],
42
+ setComponentError = _useState4[1];
43
+
44
+ /**
45
+ * @type {React.MutableRefObject<{
46
+ * render: (container: HTMLElement, props: unknown) => void,
47
+ * unmount?: () => void
48
+ * } | null>}
49
+ */
50
+ var remoteModuleRef = (0, _react.useRef)(null);
51
+
52
+ /**
53
+ * @type {React.MutableRefObject<HTMLDivElement | null>}
54
+ */
55
+ var containerRef = (0, _react.useRef)(null);
56
+
57
+ // Note: This workflow can be converted to a TanStack Query hook in the future.
58
+ (0, _react.useEffect)(function () {
59
+ if (loadRemoteModule == null || !enabled || componentActivityState === 'error') {
60
+ return;
61
+ }
62
+ mountCancelled.current = false;
63
+ setComponentActivityState('idle');
64
+ function loadModule() {
65
+ return _loadModule.apply(this, arguments);
66
+ }
67
+ function _loadModule() {
68
+ _loadModule = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
69
+ var module;
70
+ return _regenerator["default"].wrap(function _callee$(_context) {
71
+ while (1) switch (_context.prev = _context.next) {
72
+ case 0:
73
+ _context.prev = 0;
74
+ if (!remoteModuleRef.current) {
75
+ _context.next = 4;
76
+ break;
77
+ }
78
+ setComponentActivityState('success');
79
+ return _context.abrupt("return", remoteModuleRef.current);
80
+ case 4:
81
+ setComponentActivityState('pending');
82
+ _context.next = 7;
83
+ return loadRemoteModule();
84
+ case 7:
85
+ module = _context.sent;
86
+ setComponentActivityState('success');
87
+ return _context.abrupt("return", module);
88
+ case 12:
89
+ _context.prev = 12;
90
+ _context.t0 = _context["catch"](0);
91
+ setComponentActivityState('error');
92
+ setComponentError(new Error((0, _formatMessage["default"])('Failed to load remote module: {error}', {
93
+ error: _context.t0
94
+ })));
95
+ case 16:
96
+ case "end":
97
+ return _context.stop();
98
+ }
99
+ }, _callee, null, [[0, 12]]);
100
+ }));
101
+ return _loadModule.apply(this, arguments);
102
+ }
103
+ loadModule().then(function (module) {
104
+ if (module) {
105
+ remoteModuleRef.current = module;
106
+ }
107
+ var container = containerRef.current;
108
+ if (container == null || module == null || mountCancelled.current) {
109
+ return;
110
+ }
111
+ module.render(container, props);
112
+ });
113
+ return function () {
114
+ mountCancelled.current = true;
115
+ };
116
+ }, [loadRemoteModule, props, enabled]);
117
+ var unmount = (0, _react.useCallback)(function () {
118
+ var _module$unmount;
119
+ if (mountCancelled.current || !containerRef.current) {
120
+ return;
121
+ }
122
+ var module = remoteModuleRef.current;
123
+ if (!module) {
124
+ return;
125
+ }
126
+ (_module$unmount = module.unmount) === null || _module$unmount === void 0 || _module$unmount.call(module);
127
+ }, []);
128
+ return {
129
+ containerRef: containerRef,
130
+ componentActivityState: componentActivityState,
131
+ componentError: componentError,
132
+ unmount: unmount
133
+ };
134
+ }
@@ -10,7 +10,7 @@ var _react = _interopRequireDefault(require("react"));
10
10
  var _partial = _interopRequireDefault(require("lodash/partial"));
11
11
  var _uiText = require("@instructure/ui-text");
12
12
  var _uiView = require("@instructure/ui-view");
13
- var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
13
+ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/format-message"));
14
14
  var propsForVersioningWrapper = function propsForVersioningWrapper(copyDescription, immutableDescription, isImmutable, shouldClone, setShouldClone, switchOffEditing, isEditing) {
15
15
  var alertType = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : 'warning';
16
16
  var defaultProps = {
@@ -8,12 +8,15 @@ exports["default"] = void 0;
8
8
  exports.withDynamoPagination = withDynamoPagination;
9
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
13
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
14
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
15
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
16
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
17
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
19
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
17
20
  function _callSuper(_this, derived, args) {
18
21
  function isNativeReflectConstruct() {
19
22
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -28,7 +31,15 @@ function _callSuper(_this, derived, args) {
28
31
  derived = (0, _getPrototypeOf2["default"])(derived);
29
32
  return (0, _possibleConstructorReturn2["default"])(_this, isNativeReflectConstruct() ? Reflect.construct(derived, args || [], (0, _getPrototypeOf2["default"])(_this).constructor) : derived.apply(_this, args));
30
33
  }
34
+ /**
35
+ * Returns a class that extends the Fetcher class to handle DynamoDB pagination.
36
+ *
37
+ * @param {Function} Fetcher - The Fetcher class to extend
38
+ * @param {Object.<string, any>} optionalParams - Optional query parameters to pass to the request
39
+ * @returns {Function} - A new class that extends Fetcher with pagination capabilities
40
+ */
31
41
  function withDynamoPagination(Fetcher) {
42
+ var optionalParams = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
32
43
  return /*#__PURE__*/function (_Fetcher) {
33
44
  function _class() {
34
45
  var _this2;
@@ -66,10 +77,10 @@ function withDynamoPagination(Fetcher) {
66
77
  ancillary = [];
67
78
  case 3:
68
79
  _context.next = 5;
69
- return this.get(url, {
80
+ return this.get(url, _objectSpread({
70
81
  lastEvaluatedHashKey: lastEvaluatedHashKey,
71
82
  lastEvaluatedRangeKey: lastEvaluatedRangeKey
72
- });
83
+ }, optionalParams));
73
84
  case 5:
74
85
  response = _context.sent;
75
86
  responses.push(response);
@@ -17,6 +17,7 @@ var _alertTimerMiddleware = _interopRequireDefault(require("./common/middleware/
17
17
  var _crossDomainMessagingMiddleware = _interopRequireDefault(require("./common/middleware/crossDomainMessagingMiddleware"));
18
18
  var _eventLoggerMiddleware = _interopRequireDefault(require("./common/middleware/eventLoggerMiddleware"));
19
19
  var _quizTimerWebSocketMiddleware = require("./common/middleware/quizTimerWebSocketMiddleware");
20
+ var _sharedBanksMiddleware = require("./common/middleware/sharedBanksMiddleware");
20
21
  var _alerts = _interopRequireDefault(require("./common/reducers/alerts"));
21
22
  var _banks = _interopRequireDefault(require("./common/reducers/banks"));
22
23
  var _bankEntries = _interopRequireDefault(require("./common/reducers/bankEntries"));
@@ -54,6 +55,7 @@ var _qtiImports = _interopRequireDefault(require("./common/reducers/qtiImports")
54
55
  var _printing = _interopRequireDefault(require("./common/reducers/printing"));
55
56
  var _rce = _interopRequireDefault(require("./common/reducers/rce"));
56
57
  var _analyses = _interopRequireDefault(require("./common/reducers/analyses"));
58
+ var _sharingModal = _interopRequireDefault(require("./common/reducers/sharingModal"));
57
59
  var _dragAndDrop = _interopRequireDefault(require("./common/reducers/dragAndDrop"));
58
60
  var _sharedBanks = _interopRequireDefault(require("./common/reducers/sharedBanks"));
59
61
  // middleware
@@ -85,7 +87,7 @@ function configureStore(_ref) {
85
87
  var getMiddleware = function getMiddleware(implementation, override) {
86
88
  return isTest && override ? override : implementation;
87
89
  };
88
- var middlewares = [getMiddleware(_alertTimerMiddleware["default"], middlewareOverrides.alertTimerMiddleware), getMiddleware(_crossDomainMessagingMiddleware["default"], middlewareOverrides.crossDomainMessagingMiddleware), getMiddleware(_reduxMulti["default"], middlewareOverrides.multiMiddleware), getMiddleware((0, _eventLoggerMiddleware["default"])(), middlewareOverrides.kinesisMiddleware), getMiddleware(_reduxThunk["default"], middlewareOverrides.thunkMiddleware), getMiddleware((0, _quizTimerWebSocketMiddleware.createQuizTimerWebSocketMiddleware)(), middlewareOverrides.websocketMiddleware)];
90
+ var middlewares = [getMiddleware(_alertTimerMiddleware["default"], middlewareOverrides.alertTimerMiddleware), getMiddleware(_crossDomainMessagingMiddleware["default"], middlewareOverrides.crossDomainMessagingMiddleware), getMiddleware(_reduxMulti["default"], middlewareOverrides.multiMiddleware), getMiddleware((0, _eventLoggerMiddleware["default"])(), middlewareOverrides.kinesisMiddleware), getMiddleware(_reduxThunk["default"], middlewareOverrides.thunkMiddleware), getMiddleware((0, _quizTimerWebSocketMiddleware.createQuizTimerWebSocketMiddleware)(), middlewareOverrides.websocketMiddleware), getMiddleware((0, _sharedBanksMiddleware.createSharedBanksMiddleware)(), middlewareOverrides.sharedBanksMiddleware)];
89
91
  var devMiddleware = [getMiddleware(loggerMiddleware, middlewareOverrides.logger)];
90
92
  if (inDevelopment) {
91
93
  middlewares.push.apply(middlewares, devMiddleware);
@@ -106,6 +108,7 @@ function configureStore(_ref) {
106
108
  banks: _banks["default"],
107
109
  bankEntries: _bankEntries["default"],
108
110
  sharedBanks: _sharedBanks["default"],
111
+ sharingModal: _sharingModal["default"],
109
112
  calls: _calls["default"],
110
113
  config: _config["default"],
111
114
  editing: _editing["default"],