@ueu/ueu-canvas 0.0.2 → 0.0.4

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 (378) hide show
  1. package/dist/Account.d.ts +22 -0
  2. package/dist/Account.d.ts.map +1 -0
  3. package/dist/NotImplementedException.d.ts +4 -0
  4. package/dist/NotImplementedException.d.ts.map +1 -0
  5. package/dist/__mocks__/Account.d.ts +17 -0
  6. package/dist/__mocks__/Account.d.ts.map +1 -0
  7. package/dist/__mocks__/index.d.ts +9 -0
  8. package/dist/__mocks__/index.d.ts.map +1 -0
  9. package/dist/__mocks__/mockAccountData.d.ts +6 -0
  10. package/dist/__mocks__/mockAccountData.d.ts.map +1 -0
  11. package/dist/__mocks__/mockEnrollment.d.ts +3 -0
  12. package/dist/__mocks__/mockEnrollment.d.ts.map +1 -0
  13. package/dist/__mocks__/mockRubricData.d.ts +20 -0
  14. package/dist/__mocks__/mockRubricData.d.ts.map +1 -0
  15. package/dist/__mocks__/mockTabData.d.ts +4 -0
  16. package/dist/__mocks__/mockTabData.d.ts.map +1 -0
  17. package/dist/__mocks__/mockTermData.d.ts +3 -0
  18. package/dist/__mocks__/mockTermData.d.ts.map +1 -0
  19. package/dist/__mocks__/mockUserData.d.ts +3 -0
  20. package/dist/__mocks__/mockUserData.d.ts.map +1 -0
  21. package/dist/__mocks__/utils.d.ts +3 -0
  22. package/dist/__mocks__/utils.d.ts.map +1 -0
  23. package/dist/__tests__/canvasUtils.test.d.ts +2 -0
  24. package/dist/__tests__/canvasUtils.test.d.ts.map +1 -0
  25. package/dist/__tests__/fetch.test.d.ts +2 -0
  26. package/dist/__tests__/fetch.test.d.ts.map +1 -0
  27. package/dist/__tests__/profile.test.d.ts +2 -0
  28. package/dist/__tests__/profile.test.d.ts.map +1 -0
  29. package/dist/__tests__/rubrics.test.d.ts +2 -0
  30. package/dist/__tests__/rubrics.test.d.ts.map +1 -0
  31. package/dist/baseCanvasObject.d.ts +41 -0
  32. package/dist/baseCanvasObject.d.ts.map +1 -0
  33. package/dist/canvasDataDefs.d.ts +97 -0
  34. package/dist/canvasDataDefs.d.ts.map +1 -0
  35. package/dist/canvasUtils.d.ts +65 -0
  36. package/dist/canvasUtils.d.ts.map +1 -0
  37. package/dist/consts.d.ts +3 -0
  38. package/dist/consts.d.ts.map +1 -0
  39. package/dist/content/BaseContentItem.d.ts +32 -0
  40. package/dist/content/BaseContentItem.d.ts.map +1 -0
  41. package/dist/content/ContentKind.d.ts +28 -0
  42. package/dist/content/ContentKind.d.ts.map +1 -0
  43. package/dist/content/__mocks__/determineContent.d.ts +65 -0
  44. package/dist/content/__mocks__/determineContent.d.ts.map +1 -0
  45. package/dist/content/__mocks__/mockAssignmentSubmission.d.ts +4 -0
  46. package/dist/content/__mocks__/mockAssignmentSubmission.d.ts.map +1 -0
  47. package/dist/content/__mocks__/mockContentData.d.ts +8 -0
  48. package/dist/content/__mocks__/mockContentData.d.ts.map +1 -0
  49. package/dist/content/__mocks__/openThisContentInTarget.d.ts +3 -0
  50. package/dist/content/__mocks__/openThisContentInTarget.d.ts.map +1 -0
  51. package/dist/content/__testingUtils__/utils.d.ts +6 -0
  52. package/dist/content/__testingUtils__/utils.d.ts.map +1 -0
  53. package/dist/content/__tests__/determineContent.test.d.ts +2 -0
  54. package/dist/content/__tests__/determineContent.test.d.ts.map +1 -0
  55. package/dist/content/__tests__/getContentFuncs.test.d.ts +2 -0
  56. package/dist/content/__tests__/getContentFuncs.test.d.ts.map +1 -0
  57. package/dist/content/assignments/Assignment.d.ts +15 -0
  58. package/dist/content/assignments/Assignment.d.ts.map +1 -0
  59. package/dist/content/assignments/AssignmentKind.d.ts +14 -0
  60. package/dist/content/assignments/AssignmentKind.d.ts.map +1 -0
  61. package/dist/content/assignments/__tests__/AssignmentKind.test.d.ts +2 -0
  62. package/dist/content/assignments/__tests__/AssignmentKind.test.d.ts.map +1 -0
  63. package/dist/content/assignments/__tests__/assignments.test.d.ts +2 -0
  64. package/dist/content/assignments/__tests__/assignments.test.d.ts.map +1 -0
  65. package/dist/content/assignments/deleteAssignmentGroup.d.ts +3 -0
  66. package/dist/content/assignments/deleteAssignmentGroup.d.ts.map +1 -0
  67. package/dist/content/assignments/genAssignmentGroups.d.ts +5 -0
  68. package/dist/content/assignments/genAssignmentGroups.d.ts.map +1 -0
  69. package/dist/content/assignments/index.d.ts +11 -0
  70. package/dist/content/assignments/index.d.ts.map +1 -0
  71. package/dist/content/assignments/legacy.d.ts +4 -0
  72. package/dist/content/assignments/legacy.d.ts.map +1 -0
  73. package/dist/content/assignments/updateAssignmentDueDates.d.ts +7 -0
  74. package/dist/content/assignments/updateAssignmentDueDates.d.ts.map +1 -0
  75. package/dist/content/determineContent.d.ts +19 -0
  76. package/dist/content/determineContent.d.ts.map +1 -0
  77. package/dist/content/discussions/Discussion.d.ts +13 -0
  78. package/dist/content/discussions/Discussion.d.ts.map +1 -0
  79. package/dist/content/discussions/DiscussionKind.d.ts +14 -0
  80. package/dist/content/discussions/DiscussionKind.d.ts.map +1 -0
  81. package/dist/content/discussions/__tests__/DiscussionKind.test.d.ts +2 -0
  82. package/dist/content/discussions/__tests__/DiscussionKind.test.d.ts.map +1 -0
  83. package/dist/content/discussions/genEquivalentDiscussionData.d.ts +32 -0
  84. package/dist/content/discussions/genEquivalentDiscussionData.d.ts.map +1 -0
  85. package/{src/content/discussions/index.ts → dist/content/discussions/index.d.ts} +1 -0
  86. package/dist/content/discussions/index.d.ts.map +1 -0
  87. package/dist/content/getContentFuncs.d.ts +3 -0
  88. package/dist/content/getContentFuncs.d.ts.map +1 -0
  89. package/{src/content/index.ts → dist/content/index.d.ts} +3 -3
  90. package/dist/content/index.d.ts.map +1 -0
  91. package/dist/content/openThisContentInTarget.d.ts +4 -0
  92. package/dist/content/openThisContentInTarget.d.ts.map +1 -0
  93. package/dist/content/pages/Page.d.ts +15 -0
  94. package/dist/content/pages/Page.d.ts.map +1 -0
  95. package/dist/content/pages/PageKind.d.ts +15 -0
  96. package/dist/content/pages/PageKind.d.ts.map +1 -0
  97. package/dist/content/pages/__tests__/PageKind.test.d.ts +2 -0
  98. package/dist/content/pages/__tests__/PageKind.test.d.ts.map +1 -0
  99. package/dist/content/pages/__tests__/learningMaterialsForModule.d.ts +2 -0
  100. package/dist/content/pages/__tests__/learningMaterialsForModule.d.ts.map +1 -0
  101. package/dist/content/pages/index.d.ts +14 -0
  102. package/dist/content/pages/index.d.ts.map +1 -0
  103. package/dist/content/pages/learningMaterialsForModule.d.ts +7 -0
  104. package/dist/content/pages/learningMaterialsForModule.d.ts.map +1 -0
  105. package/dist/content/pages/types.d.ts +11 -0
  106. package/dist/content/pages/types.d.ts.map +1 -0
  107. package/dist/content/quizzes/Quiz.d.ts +9 -0
  108. package/dist/content/quizzes/Quiz.d.ts.map +1 -0
  109. package/dist/content/quizzes/QuizKind.d.ts +13 -0
  110. package/dist/content/quizzes/QuizKind.d.ts.map +1 -0
  111. package/dist/content/quizzes/__tests__/QuizKind.test.d.ts +2 -0
  112. package/dist/content/quizzes/__tests__/QuizKind.test.d.ts.map +1 -0
  113. package/dist/content/quizzes/index.d.ts +2 -0
  114. package/dist/content/quizzes/index.d.ts.map +1 -0
  115. package/dist/content/quizzes/types.d.ts +45 -0
  116. package/dist/content/quizzes/types.d.ts.map +1 -0
  117. package/dist/content/types.d.ts +229 -0
  118. package/dist/content/types.d.ts.map +1 -0
  119. package/dist/course/Course.d.ts +87 -0
  120. package/dist/course/Course.d.ts.map +1 -0
  121. package/dist/course/IBlueprintCourse.d.ts +7 -0
  122. package/dist/course/IBlueprintCourse.d.ts.map +1 -0
  123. package/dist/course/__mocks__/blueprint.d.ts +14 -0
  124. package/dist/course/__mocks__/blueprint.d.ts.map +1 -0
  125. package/dist/course/__mocks__/mockCourseData.d.ts +3 -0
  126. package/dist/course/__mocks__/mockCourseData.d.ts.map +1 -0
  127. package/dist/course/__mocks__/mockLatePolicy.d.ts +4 -0
  128. package/dist/course/__mocks__/mockLatePolicy.d.ts.map +1 -0
  129. package/dist/course/__mocks__/mockModuleData.d.ts +7 -0
  130. package/dist/course/__mocks__/mockModuleData.d.ts.map +1 -0
  131. package/dist/course/__mocks__/mockProgressData.d.ts +3 -0
  132. package/dist/course/__mocks__/mockProgressData.d.ts.map +1 -0
  133. package/dist/course/__tests__/Course.test.d.ts +2 -0
  134. package/dist/course/__tests__/Course.test.d.ts.map +1 -0
  135. package/dist/course/__tests__/blueprint.test.d.ts +2 -0
  136. package/dist/course/__tests__/blueprint.test.d.ts.map +1 -0
  137. package/dist/course/__tests__/changeStartDate.test.d.ts +2 -0
  138. package/dist/course/__tests__/changeStartDate.test.d.ts.map +1 -0
  139. package/dist/course/__tests__/index.test.d.ts +2 -0
  140. package/dist/course/__tests__/index.test.d.ts.map +1 -0
  141. package/dist/course/blueprint.d.ts +21 -0
  142. package/dist/course/blueprint.d.ts.map +1 -0
  143. package/dist/course/cachedGetAssociatedCoursesFunc.d.ts +4 -0
  144. package/dist/course/cachedGetAssociatedCoursesFunc.d.ts.map +1 -0
  145. package/dist/course/changeStartDate.d.ts +25 -0
  146. package/dist/course/changeStartDate.d.ts.map +1 -0
  147. package/dist/course/code.d.ts +9 -0
  148. package/dist/course/code.d.ts.map +1 -0
  149. package/dist/course/courseTypes.d.ts +102 -0
  150. package/dist/course/courseTypes.d.ts.map +1 -0
  151. package/dist/course/getCourseIdFromUrl.d.ts +3 -0
  152. package/dist/course/getCourseIdFromUrl.d.ts.map +1 -0
  153. package/dist/course/getSections.d.ts +5 -0
  154. package/dist/course/getSections.d.ts.map +1 -0
  155. package/dist/course/getTermNameFromSections.d.ts +3 -0
  156. package/dist/course/getTermNameFromSections.d.ts.map +1 -0
  157. package/dist/course/index.d.ts +12 -0
  158. package/dist/course/index.d.ts.map +1 -0
  159. package/dist/course/migration/__mocks__/mockMigrationData.d.ts +6 -0
  160. package/dist/course/migration/__mocks__/mockMigrationData.d.ts.map +1 -0
  161. package/dist/course/migration/__tests__/migration.test.d.ts +2 -0
  162. package/dist/course/migration/__tests__/migration.test.d.ts.map +1 -0
  163. package/dist/course/migration/__tests__/migrationCache.test.d.ts +2 -0
  164. package/dist/course/migration/__tests__/migrationCache.test.d.ts.map +1 -0
  165. package/dist/course/migration/index.d.ts +47 -0
  166. package/dist/course/migration/index.d.ts.map +1 -0
  167. package/dist/course/migration/migrationCache.d.ts +12 -0
  168. package/dist/course/migration/migrationCache.d.ts.map +1 -0
  169. package/dist/course/modules.d.ts +35 -0
  170. package/dist/course/modules.d.ts.map +1 -0
  171. package/dist/course/notABlueprintError.d.ts +4 -0
  172. package/dist/course/notABlueprintError.d.ts.map +1 -0
  173. package/dist/course/references/getReferencesForText.d.ts +4 -0
  174. package/dist/course/references/getReferencesForText.d.ts.map +1 -0
  175. package/dist/course/references/getReferencesForText.test.d.ts +2 -0
  176. package/dist/course/references/getReferencesForText.test.d.ts.map +1 -0
  177. package/dist/course/references/getReferencesTemplate.d.ts +13 -0
  178. package/dist/course/references/getReferencesTemplate.d.ts.map +1 -0
  179. package/dist/course/references/mockCiteAsResponse.d.ts +127 -0
  180. package/dist/course/references/mockCiteAsResponse.d.ts.map +1 -0
  181. package/dist/course/retireBlueprint.d.ts +4 -0
  182. package/dist/course/retireBlueprint.d.ts.map +1 -0
  183. package/dist/course/toolbox.d.ts +18 -0
  184. package/dist/course/toolbox.d.ts.map +1 -0
  185. package/dist/date.d.ts +18 -0
  186. package/dist/date.d.ts.map +1 -0
  187. package/dist/enrollments/EnrollmentTypes.d.ts +60 -0
  188. package/dist/enrollments/EnrollmentTypes.d.ts.map +1 -0
  189. package/dist/enrollments/enrollmentRole.d.ts +5 -0
  190. package/dist/enrollments/enrollmentRole.d.ts.map +1 -0
  191. package/dist/enrollments/getEnrollmentGenerator.d.ts +40 -0
  192. package/dist/enrollments/getEnrollmentGenerator.d.ts.map +1 -0
  193. package/dist/enrollments/index.d.ts +4 -0
  194. package/dist/enrollments/index.d.ts.map +1 -0
  195. package/dist/fetch/__mocks__/fetchJson.d.ts +4 -0
  196. package/dist/fetch/__mocks__/fetchJson.d.ts.map +1 -0
  197. package/dist/fetch/__mocks__/getPagedDataGenerator.d.ts +4 -0
  198. package/dist/fetch/__mocks__/getPagedDataGenerator.d.ts.map +1 -0
  199. package/dist/fetch/__mocks__/index.d.ts +4 -0
  200. package/dist/fetch/__mocks__/index.d.ts.map +1 -0
  201. package/dist/fetch/apiGetConfig.d.ts +4 -0
  202. package/dist/fetch/apiGetConfig.d.ts.map +1 -0
  203. package/dist/fetch/apiWriteConfig.d.ts +4 -0
  204. package/dist/fetch/apiWriteConfig.d.ts.map +1 -0
  205. package/dist/fetch/canvasDataFetchGenFunc.d.ts +6 -0
  206. package/dist/fetch/canvasDataFetchGenFunc.d.ts.map +1 -0
  207. package/dist/fetch/fetchJson.d.ts +3 -0
  208. package/dist/fetch/fetchJson.d.ts.map +1 -0
  209. package/dist/fetch/getPagedDataGenerator.d.ts +63 -0
  210. package/dist/fetch/getPagedDataGenerator.d.ts.map +1 -0
  211. package/{src/fetch/index.ts → dist/fetch/index.d.ts} +1 -0
  212. package/dist/fetch/index.d.ts.map +1 -0
  213. package/dist/fetch/utils.d.ts +4 -0
  214. package/dist/fetch/utils.d.ts.map +1 -0
  215. package/dist/files.d.ts +29 -0
  216. package/dist/files.d.ts.map +1 -0
  217. package/dist/fixes/annotations.d.ts +15 -0
  218. package/dist/fixes/annotations.d.ts.map +1 -0
  219. package/dist/fixes/index.d.ts +36 -0
  220. package/dist/fixes/index.d.ts.map +1 -0
  221. package/{src/index.ts → dist/index.d.ts} +5 -10
  222. package/dist/index.d.ts.map +1 -0
  223. package/dist/index.js +8966 -0
  224. package/dist/profile.d.ts +24 -0
  225. package/dist/profile.d.ts.map +1 -0
  226. package/dist/rubricTypes.d.ts +71 -0
  227. package/dist/rubricTypes.d.ts.map +1 -0
  228. package/dist/rubrics.d.ts +9 -0
  229. package/dist/rubrics.d.ts.map +1 -0
  230. package/dist/term/Term.d.ts +21 -0
  231. package/dist/term/Term.d.ts.map +1 -0
  232. package/dist/term/__tests__/dateFromTermName.test.d.ts +2 -0
  233. package/dist/term/__tests__/dateFromTermName.test.d.ts.map +1 -0
  234. package/dist/term/__tests__/getTermsGenerator.test.d.ts +2 -0
  235. package/dist/term/__tests__/getTermsGenerator.test.d.ts.map +1 -0
  236. package/dist/term/dateFromTermName.d.ts +4 -0
  237. package/dist/term/dateFromTermName.d.ts.map +1 -0
  238. package/dist/term/getTermsGenerator.d.ts +7 -0
  239. package/dist/term/getTermsGenerator.d.ts.map +1 -0
  240. package/dist/term/index.d.ts +4 -0
  241. package/dist/term/index.d.ts.map +1 -0
  242. package/dist/toolbox.d.ts +5 -0
  243. package/dist/toolbox.d.ts.map +1 -0
  244. package/dist/types.d.ts +120 -0
  245. package/dist/types.d.ts.map +1 -0
  246. package/dist/users/getUserGenerator.d.ts +19 -0
  247. package/dist/users/getUserGenerator.d.ts.map +1 -0
  248. package/dist/users/index.d.ts +2 -0
  249. package/dist/users/index.d.ts.map +1 -0
  250. package/package.json +51 -45
  251. package/LICENSE +0 -21
  252. package/html-loader.js +0 -7
  253. package/jest.config.js +0 -20
  254. package/src/Account.ts +0 -69
  255. package/src/NotImplementedException.ts +0 -3
  256. package/src/__mocks__/Account.ts +0 -55
  257. package/src/__mocks__/index.ts +0 -8
  258. package/src/__mocks__/mockAccountData.ts +0 -43
  259. package/src/__mocks__/mockEnrollment.ts +0 -22
  260. package/src/__mocks__/mockRubricData.ts +0 -71
  261. package/src/__mocks__/mockTabData.ts +0 -13
  262. package/src/__mocks__/mockTermData.ts +0 -7
  263. package/src/__mocks__/mockUserData.ts +0 -14
  264. package/src/__mocks__/utils.ts +0 -9
  265. package/src/__tests__/canvasUtils.test.ts +0 -527
  266. package/src/__tests__/fetch.test.ts +0 -310
  267. package/src/__tests__/profile.test.ts +0 -19
  268. package/src/__tests__/rubrics.test.ts +0 -131
  269. package/src/baseCanvasObject.ts +0 -139
  270. package/src/canvasDataDefs.ts +0 -124
  271. package/src/canvasUtils.ts +0 -420
  272. package/src/consts.ts +0 -2
  273. package/src/content/BaseContentItem.ts +0 -219
  274. package/src/content/ContentKind.ts +0 -85
  275. package/src/content/__mocks__/determineContent.ts +0 -27
  276. package/src/content/__mocks__/mockAssignmentSubmission.ts +0 -37
  277. package/src/content/__mocks__/mockContentData.ts +0 -98
  278. package/src/content/__mocks__/openThisContentInTarget.ts +0 -2
  279. package/src/content/__testingUtils__/utils.ts +0 -47
  280. package/src/content/__tests__/determineContent.test.ts +0 -101
  281. package/src/content/__tests__/getContentFuncs.test.ts +0 -78
  282. package/src/content/assignments/Assignment.ts +0 -69
  283. package/src/content/assignments/AssignmentKind.ts +0 -29
  284. package/src/content/assignments/__tests__/AssignmentKind.test.ts +0 -31
  285. package/src/content/assignments/__tests__/assignments.test.ts +0 -72
  286. package/src/content/assignments/deleteAssignmentGroup.ts +0 -15
  287. package/src/content/assignments/genAssignmentGroups.ts +0 -15
  288. package/src/content/assignments/index.ts +0 -31
  289. package/src/content/assignments/legacy.ts +0 -11
  290. package/src/content/assignments/updateAssignmentDueDates.ts +0 -25
  291. package/src/content/determineContent.ts +0 -72
  292. package/src/content/discussions/Discussion.ts +0 -32
  293. package/src/content/discussions/DiscussionKind.ts +0 -30
  294. package/src/content/discussions/__tests__/DiscussionKind.test.ts +0 -31
  295. package/src/content/discussions/genEquivalentDiscussionData.ts +0 -97
  296. package/src/content/getContentFuncs.ts +0 -30
  297. package/src/content/openThisContentInTarget.ts +0 -38
  298. package/src/content/pages/Page.ts +0 -35
  299. package/src/content/pages/PageKind.ts +0 -39
  300. package/src/content/pages/__tests__/PageKind.test.ts +0 -86
  301. package/src/content/pages/__tests__/learningMaterialsForModule.ts +0 -57
  302. package/src/content/pages/index.ts +0 -12
  303. package/src/content/pages/learningMaterialsForModule.ts +0 -16
  304. package/src/content/pages/types.ts +0 -11
  305. package/src/content/quizzes/Quiz.ts +0 -25
  306. package/src/content/quizzes/QuizKind.ts +0 -23
  307. package/src/content/quizzes/__tests__/QuizKind.test.ts +0 -30
  308. package/src/content/quizzes/index.ts +0 -3
  309. package/src/content/quizzes/types.ts +0 -101
  310. package/src/content/types.ts +0 -302
  311. package/src/course/Course.ts +0 -538
  312. package/src/course/IBlueprintCourse.ts +0 -8
  313. package/src/course/__mocks__/blueprint.ts +0 -31
  314. package/src/course/__mocks__/mockCourseData.ts +0 -49
  315. package/src/course/__mocks__/mockLatePolicy.ts +0 -14
  316. package/src/course/__mocks__/mockModuleData.ts +0 -60
  317. package/src/course/__mocks__/mockProgressData.ts +0 -28
  318. package/src/course/__mocks__/syllabus.gallant.html +0 -302
  319. package/src/course/__mocks__/syllabus.goofus.html +0 -288
  320. package/src/course/__mocks__/syllabus.grad.html +0 -282
  321. package/src/course/__tests__/Course.test.ts +0 -91
  322. package/src/course/__tests__/blueprint.test.ts +0 -292
  323. package/src/course/__tests__/changeStartDate.test.ts +0 -180
  324. package/src/course/__tests__/index.test.ts +0 -104
  325. package/src/course/blueprint.ts +0 -116
  326. package/src/course/cachedGetAssociatedCoursesFunc.ts +0 -13
  327. package/src/course/changeStartDate.ts +0 -139
  328. package/src/course/code.ts +0 -32
  329. package/src/course/courseTypes.ts +0 -161
  330. package/src/course/getCourseIdFromUrl.ts +0 -7
  331. package/src/course/getSections.ts +0 -9
  332. package/src/course/getTermNameFromSections.ts +0 -9
  333. package/src/course/index.ts +0 -12
  334. package/src/course/migration/__mocks__/mockMigrationData.ts +0 -39
  335. package/src/course/migration/__tests__/migration.test.ts +0 -173
  336. package/src/course/migration/__tests__/migrationCache.test.ts +0 -45
  337. package/src/course/migration/index.ts +0 -134
  338. package/src/course/migration/migrationCache.ts +0 -56
  339. package/src/course/modules.ts +0 -113
  340. package/src/course/notABlueprintError.ts +0 -3
  341. package/src/course/references/getReferencesForText.test.ts +0 -18
  342. package/src/course/references/getReferencesForText.ts +0 -12
  343. package/src/course/references/getReferencesTemplate.ts +0 -28
  344. package/src/course/references/mockCiteAsResponse.ts +0 -320
  345. package/src/course/retireBlueprint.ts +0 -21
  346. package/src/course/toolbox.ts +0 -107
  347. package/src/date.ts +0 -119
  348. package/src/enrollments/EnrollmentTypes.ts +0 -76
  349. package/src/enrollments/enrollmentRole.ts +0 -6
  350. package/src/enrollments/getEnrollmentGenerator.ts +0 -79
  351. package/src/enrollments/index.ts +0 -3
  352. package/src/fetch/__mocks__/fetchJson.ts +0 -1
  353. package/src/fetch/__mocks__/getPagedDataGenerator.ts +0 -8
  354. package/src/fetch/__mocks__/index.ts +0 -6
  355. package/src/fetch/apiGetConfig.ts +0 -10
  356. package/src/fetch/apiWriteConfig.ts +0 -13
  357. package/src/fetch/canvasDataFetchGenFunc.ts +0 -20
  358. package/src/fetch/fetchJson.ts +0 -22
  359. package/src/fetch/getPagedDataGenerator.ts +0 -157
  360. package/src/fetch/utils.ts +0 -16
  361. package/src/files.ts +0 -60
  362. package/src/fixes/annotations.ts +0 -105
  363. package/src/fixes/index.ts +0 -81
  364. package/src/profile.ts +0 -253
  365. package/src/rubricTypes.ts +0 -82
  366. package/src/rubrics.ts +0 -48
  367. package/src/term/Term.ts +0 -77
  368. package/src/term/__tests__/dateFromTermName.test.ts +0 -22
  369. package/src/term/__tests__/getTermsGenerator.test.ts +0 -24
  370. package/src/term/dateFromTermName.ts +0 -17
  371. package/src/term/getTermsGenerator.ts +0 -21
  372. package/src/term/index.ts +0 -3
  373. package/src/toolbox.ts +0 -19
  374. package/src/types.ts +0 -134
  375. package/src/users/getUserGenerator.ts +0 -39
  376. package/src/users/index.ts +0 -1
  377. package/tsconfig.json +0 -46
  378. package/webpack.config.js +0 -122
@@ -1,527 +0,0 @@
1
- import {
2
- callAll,
3
- range,
4
- parentElement,
5
- formDataify,
6
- queryStringify,
7
- batchify,
8
- deFormDataify, deepObjectMerge, generatorMap, batchGen, renderAsyncGen
9
- } from '../canvasUtils'
10
- import {describe, expect} from "@jest/globals";
11
- import assert from "assert";
12
- import {AssertionError} from "node:assert";
13
-
14
-
15
- const TEST_STRING = String.fromCharCode(...Array.from(range(32, 126)))
16
-
17
-
18
- describe('CallAll Tests', () => {
19
- test('callAll returns the results of a list of paramless functions', () => {
20
-
21
- const list = Array.from(TEST_STRING).map((char) => () => char)
22
- expect(callAll(list).join('')).toMatch(TEST_STRING);
23
- })
24
-
25
- test('callAll returns the results of a list of function passed the same parameters', () => {
26
- const list = Array.from(range(0, 100)).map((num) => {
27
- return (value: number) => {
28
- return num * value
29
- }
30
- })
31
-
32
- expect(callAll(list, 2)).toStrictEqual(Array.from(range(0, 100)).map((num) => num * 2))
33
- });
34
-
35
- test('CallAll runs a list of function, parameter pairs and returns the results as a list.', () => {
36
- const list = Array.from(range(0, 100)).map((value) => {
37
- return {
38
- func: (x: number) => x,
39
- params: value
40
- }
41
- })
42
-
43
- expect(callAll(list)).toStrictEqual(Array.from(range(0, 100)))
44
- })
45
- })
46
-
47
- test('ParentElement traverses up parents of a DOMElement and returns the first parent matching a tag. Otherwise returns null', () => {
48
- const elId = 'elementId'
49
- const parentId = 'parentId'
50
- const html = `<div id="${parentId}"><a><span id="${elId}">XXX</span></a></div>`;
51
- const body = document.createElement('div');
52
- body.innerHTML = html;
53
- const element = body.querySelector(`#${elId}`) as Element | null;
54
- const parent = parentElement(element, 'div');
55
- expect(parent?.id).toBe(parentId);
56
- expect(parentElement(element, 'blockquote')).toBe(null)
57
- })
58
-
59
- test('FormDatify properly serializes objects', () => {
60
- const testData = {
61
- a: [1],
62
- b: 'hello!',
63
- c: {
64
- c1: [1],
65
- c2: 2
66
- }
67
- }
68
-
69
- const formD = formDataify(testData);
70
- const entries = [...formD.entries()];
71
- expect(entries[0]).toStrictEqual(['a[]', '1'])
72
- expect(entries[1]).toStrictEqual(['b', 'hello!'])
73
- expect(entries[2]).toStrictEqual(['c[c1][]', '1'])
74
- expect(entries[3]).toStrictEqual(['c[c2]', '2'])
75
- })
76
-
77
- test('deFormDatify properly deserializes objects', () => {
78
- const testData = {
79
- a: [1],
80
- b: 'hello!',
81
- c: {
82
- c1: [1],
83
- c2: 2
84
- }
85
- }
86
-
87
- const formD = formDataify(testData);
88
- const entries = [...formD.entries()];
89
- const newData = deFormDataify(formD);
90
- expect(newData).toEqual({
91
- a: ['1'],
92
- b: 'hello!',
93
- c: {
94
- c1: ['1'],
95
- c2: '2'
96
- }
97
- });
98
- })
99
-
100
-
101
- test('Querystringify', () => {
102
- const testData = {
103
- a: [1, 2, 3],
104
- b: 'hello!',
105
- c: {
106
- c1: [1],
107
- c2: 2
108
- }
109
- }
110
-
111
- const data = queryStringify(testData);
112
- const entries = Array.from(data);
113
- expect(entries[0]).toStrictEqual(['a[]', '1'])
114
- expect(entries[1]).toStrictEqual(['a[]', '2'])
115
- expect(entries[2]).toStrictEqual(['a[]', '3'])
116
- expect(entries[3]).toStrictEqual(['b', 'hello!'])
117
- expect(entries[4]).toStrictEqual(['c[c1][]', '1'])
118
- expect(entries[5]).toStrictEqual(['c[c2]', '2'])
119
- })
120
-
121
- test('Batchify', () => {
122
- expect(batchify([1, 2, 3, 4], 2)).toStrictEqual([[1, 2], [3, 4]])
123
- expect(batchify([1, 2, 3, 4, 5], 2)).toStrictEqual([[1, 2], [3, 4], [5]])
124
- expect(batchify([1, 2, 3, 4, 5], 5)).toStrictEqual([[1, 2, 3, 4, 5]])
125
- expect(batchify([1, 2, 3, 4, 5], 6)).toStrictEqual([[1, 2, 3, 4, 5]])
126
- })
127
-
128
- describe("Recursive object merge", () => {
129
- test('Non-indexing merges', () => {
130
- expect(deepObjectMerge(1, null)).toBe(1)
131
- expect(deepObjectMerge(undefined, 2)).toBe(2)
132
- expect(deepObjectMerge(undefined, null)).toBe(null)
133
- expect(deepObjectMerge(null, undefined)).toBe(null)
134
-
135
- expect(() => deepObjectMerge<string | number>(1, 'apple', false)).toThrow('Type clash on merge number 1, string apple')
136
- expect(() => deepObjectMerge<string | number>(1, '2', false)).toThrow('Type clash on merge number 1, string 2')
137
- expect(() => deepObjectMerge(1, 2, false)).toThrow('Values unmergeable')
138
-
139
- expect(deepObjectMerge<string | number>('apple', 1, true)).toBe('apple');
140
- expect(deepObjectMerge<string | number>(1, '2', true)).toBe(1);
141
- expect(deepObjectMerge(1, 2, true)).toBe(1)
142
- expect(deepObjectMerge({
143
- name: "todd"
144
- }, {
145
- name: 'steve'
146
- }, true)?.name).toBe('todd');
147
- })
148
-
149
- test('Arrays', () => {
150
- expect(deepObjectMerge([1, 2], [3, 4])).toHaveLength(4);
151
- expect(deepObjectMerge([1, 2], null)).toHaveLength(2);
152
- expect(deepObjectMerge(null, [3, 4])).toHaveLength(2);
153
- [1, 2, 3, 4].forEach(i => {
154
- expect(deepObjectMerge([1, 2], [3, 4])).toContain(i);
155
- });
156
-
157
- const simpleMerged = deepObjectMerge([1, 2], ['a', 'b']);
158
- [1, 2, 'a', 'b'].forEach(a => {
159
- assert(simpleMerged);
160
- expect(simpleMerged).toContain(a);
161
- })
162
- const dougsAndHenries = deepObjectMerge([{name: 'henry'}, {name: 'doug'}], [{name: 'henry'}, {name: 'doug'}]);
163
- expect(dougsAndHenries).toHaveLength(4)
164
- expect(dougsAndHenries?.map(entry => entry.name)).toEqual(['henry', 'doug', 'henry', 'doug'])
165
- });
166
-
167
- test('Files and Complex arrays', () => {
168
- const object = {key: "X", value: 7, list: [1, 2, 3, 4, 5]};
169
- const file = new File([JSON.stringify(object)], 'file.txt')
170
- expect(deepObjectMerge(file, file)?.name).toBe(file.name);
171
- let counterFile = new File([JSON.stringify(object)], 'file2.txt');
172
- expect(() => deepObjectMerge(file, counterFile)?.name).toThrow(AssertionError)
173
- counterFile = new File(['aaaaaa'], 'file.txt');
174
- expect(() => deepObjectMerge(file, counterFile)?.name).toThrow(AssertionError)
175
- expect(deepObjectMerge(file, counterFile, true)?.name).toBe(file.name)
176
- const complexMerged = deepObjectMerge([null, 'a', file], [undefined, [1, 2, 3, 4], 5, object, object, file]);
177
- expect(complexMerged).toHaveLength(9);
178
- for (const value of [5, 'a', null, undefined]) {
179
- expect(complexMerged).toContain(value);
180
- }
181
-
182
- const objectsInMerge = complexMerged?.filter(item => item && typeof item === 'object') ?? [];
183
- expect(objectsInMerge).toHaveLength(5);
184
- const [extractedObject, extractedObjectTwo] = objectsInMerge.filter(item => item && !(item instanceof File || Array.isArray(item)));
185
- expect(extractedObject).toStrictEqual(object);
186
- expect(extractedObject === extractedObjectTwo).toBe(false);
187
- expect(extractedObject === object).toBe(false);
188
- const [fileOne, fileTwo] = objectsInMerge.filter(item => item instanceof File);
189
- expect(fileOne).toBe(fileTwo);
190
- })
191
-
192
- test('FormData', () => {
193
- const formMerge = deepObjectMerge({data: new FormData()}, {body: new FormData()});
194
- expect(formMerge?.body).toBeInstanceOf(FormData);
195
- expect(formMerge?.data).toBeInstanceOf(FormData);
196
- })
197
-
198
- test('Objects', () => {
199
- expect(() => deepObjectMerge({a: 1}, {a: "Dog"})).toThrow('Type clash on merge')
200
- expect(deepObjectMerge({a: 1}, {b: 2})).toStrictEqual({a: 1, b: 2});
201
- expect(deepObjectMerge({
202
- list: [1, 2, 3]
203
- }, {
204
- list: [4, 5, 6]
205
- })).toStrictEqual({list: [1, 2, 3, 4, 5, 6]})
206
- expect(deepObjectMerge({
207
- item: {
208
- name: "NAME",
209
- age: 35
210
- }
211
- }, {
212
- item: {
213
- height: 165,
214
- children: ['bobby', 'andrew']
215
- }
216
- })).toStrictEqual({
217
- item: {
218
- name: "NAME",
219
- age: 35,
220
- height: 165,
221
- children: ['bobby', 'andrew']
222
- }
223
- })
224
- })
225
-
226
- test('Self-containment error', () => {
227
-
228
- let smith: { [key: string]: any } = {};
229
- let smithsHouse: { [key: string]: any } = {};
230
-
231
- smith = {
232
- name: 'Smith',
233
- }
234
-
235
- smithsHouse = {
236
- address: '224 West 9th',
237
- owner: smith,
238
- inhabitants: [smith]
239
- }
240
-
241
- smith['house'] = smithsHouse;
242
- expect(() => {
243
- deepObjectMerge(smith, {
244
- dog: "Steven"
245
- })
246
-
247
- }).toThrow('Infinite Loop')
248
- })
249
-
250
- test('Complex Merge', () => {
251
-
252
- const a: Record<string, any> = {
253
- list: [1, 2],
254
- human: {
255
- name: "Stan",
256
- age: 45,
257
- children: ['rod', 'lucy'],
258
- dog: {
259
- name: "Walter"
260
- },
261
-
262
-
263
- },
264
- cat: {
265
- name: "Stephanie"
266
- }
267
- }
268
-
269
- const b: Record<string, any> = {
270
- list: [2, 3, 4, undefined],
271
- human: {
272
- name: "Stan",
273
- children: ['stacy'],
274
- dog: {
275
- age: 7,
276
- },
277
- fish: {
278
- name: "Capn Guppy",
279
- previousNames: ['Admiral Blub', "Mr. Bubbles"]
280
- }
281
- },
282
-
283
- }
284
-
285
- const expectedMerge = {
286
- list: [1, 2, 2, 3, 4, undefined],
287
- human: {
288
- name: "Stan",
289
- age: 45,
290
- children: ['rod', 'lucy', 'stacy'],
291
- dog: {
292
- name: "Walter",
293
- age: 7
294
- },
295
- fish: {
296
- name: 'Capn Guppy',
297
- previousNames: ['Admiral Blub', "Mr. Bubbles"]
298
- }
299
- },
300
- cat: {
301
- name: "Stephanie"
302
- },
303
-
304
-
305
- }
306
-
307
- expect(deepObjectMerge(a, b)).toEqual(expectedMerge);
308
-
309
- })
310
-
311
-
312
- })
313
-
314
-
315
-
316
- describe('batchGen', () => {
317
- async function* testGenerator() {
318
- yield 1;
319
- yield 2;
320
- yield 3;
321
- yield 4;
322
- yield 5;
323
- }
324
-
325
- it('should yield batches of specified size', async () => {
326
- const generator = batchGen(testGenerator(), 2);
327
- const result = [];
328
-
329
- for await (const batch of generator) {
330
- result.push(batch);
331
- }
332
-
333
- expect(result).toEqual([[1, 2], [3, 4], [5]]);
334
- });
335
-
336
- it('should yield all items in a single batch if batchSize is greater than total items', async () => {
337
- const generator = batchGen(testGenerator(), 10);
338
- const result = [];
339
-
340
- for await (const batch of generator) {
341
- result.push(batch);
342
- }
343
-
344
- expect(result).toEqual([[1, 2, 3, 4, 5]]);
345
- });
346
-
347
- it('should handle empty generator', async () => {
348
- async function* emptyGenerator() {}
349
- const generator = batchGen(emptyGenerator(), 2);
350
- const result = [];
351
-
352
- for await (const batch of generator) {
353
- result.push(batch);
354
- }
355
-
356
- expect(result).toEqual([]);
357
- });
358
- });
359
-
360
- describe('renderAsyncGen', () => {
361
- async function* testGenerator() {
362
- yield 'a';
363
- yield 'b';
364
- yield 'c';
365
- }
366
-
367
- it('should collect all items from the generator', async () => {
368
- const generator = testGenerator();
369
- const result = await renderAsyncGen(generator);
370
-
371
- expect(result).toEqual(['a', 'b', 'c']);
372
- });
373
-
374
- it('should handle an empty generator', async () => {
375
- async function* emptyGenerator() {}
376
- const generator = emptyGenerator();
377
- const result = await renderAsyncGen(generator);
378
-
379
- expect(result).toEqual([]);
380
- });
381
- });
382
-
383
- describe('generatorMap', () => {
384
- async function* testGenerator() {
385
- yield 1;
386
- yield 2;
387
- yield 3;
388
- }
389
-
390
- it('should apply the mapping function to each value', async () => {
391
- const mapFunc = (value:any) => value * 2;
392
- const generator = generatorMap(testGenerator(), mapFunc);
393
- const result = [];
394
-
395
- for await (const item of generator) {
396
- result.push(item);
397
- }
398
-
399
- expect(result).toEqual([2, 4, 6]);
400
- });
401
-
402
- it('should pass the index and generator to the mapping function', async () => {
403
- const mapFunc = (value:any, index:number) => `${value}-${index}`;
404
- const generator = generatorMap(testGenerator(), mapFunc);
405
- const result = [];
406
-
407
- for await (const item of generator) {
408
- result.push(item);
409
- }
410
-
411
- expect(result).toEqual(['1-0', '2-1', '3-2']);
412
- });
413
-
414
- it('should handle an empty generator', async () => {
415
- async function* emptyGenerator() {}
416
- const generator = generatorMap(emptyGenerator(), (value) => value);
417
- const result = [] as Array<any>;
418
-
419
- for await (const item of generator) {
420
- result.push(item);
421
- }
422
-
423
- expect(result).toEqual([]);
424
- });
425
- });
426
-
427
- describe('batchGen additional tests', () => {
428
- async function* testGenerator() {
429
- yield 1;
430
- yield 2;
431
- }
432
-
433
- it('should yield single-item batches when batchSize is 1', async () => {
434
- const generator = batchGen(testGenerator(), 1);
435
- const result = [];
436
-
437
- for await (const batch of generator) {
438
- result.push(batch);
439
- }
440
-
441
- expect(result).toEqual([[1], [2]]);
442
- });
443
-
444
- it('should handle batchSize of 0 by throwing an error', async () => {
445
- expect(async() => batchGen(testGenerator(), 0).next()).rejects.toThrow();
446
- });
447
-
448
- it('should propagate errors from the input generator', async () => {
449
- async function* errorGenerator() {
450
- yield 1;
451
- throw new Error('Test error');
452
- }
453
- const generator = batchGen(errorGenerator(), 2);
454
- const result = [];
455
-
456
- await expect(async () => {
457
- for await (const batch of generator) {
458
- result.push(batch);
459
- }
460
- }).rejects.toThrow('Test error');
461
- });
462
- });
463
-
464
- describe('renderAsyncGen additional tests', () => {
465
- async function* testGenerator() {
466
- yield null;
467
- yield undefined;
468
- yield 3;
469
- }
470
-
471
- it('should handle null and undefined values', async () => {
472
- const result = await renderAsyncGen(testGenerator());
473
-
474
- expect(result).toEqual([null, undefined, 3]);
475
- });
476
-
477
- it('should propagate errors from the input generator', async () => {
478
- async function* errorGenerator() {
479
- yield 1;
480
- throw new Error('Test error');
481
- }
482
-
483
- await expect(renderAsyncGen(errorGenerator())).rejects.toThrow('Test error');
484
- });
485
- });
486
-
487
- describe('generatorMap additional tests', () => {
488
- async function* testGenerator() {
489
- yield 1;
490
- yield 2;
491
- }
492
-
493
- it('should handle nextMapFunc returning undefined or null', async () => {
494
- const mapFunc = (value:any) => value === 1 ? undefined : null;
495
- const generator = generatorMap(testGenerator(), mapFunc);
496
- const result = [];
497
-
498
- for await (const item of generator) {
499
- result.push(item);
500
- }
501
-
502
- expect(result).toEqual([undefined, null]);
503
- });
504
-
505
- it('should propagate errors from nextMapFunc', async () => {
506
- const mapFunc = () => {
507
- throw new Error('Map error');
508
- };
509
- const generator = generatorMap(testGenerator(), mapFunc);
510
-
511
- await expect(async () => {
512
- for await (const item of generator) {}
513
- }).rejects.toThrow('Map error');
514
- });
515
-
516
- it('should handle asynchronous nextMapFunc', async () => {
517
- const mapFunc = async (value:any) => value * 2;
518
- const generator = generatorMap(testGenerator(), mapFunc);
519
- const result = [];
520
-
521
- for await (const item of generator) {
522
- result.push(item);
523
- }
524
-
525
- expect(result).toEqual([2, 4]);
526
- });
527
- });