@ueu/ueu-canvas 0.0.4 → 0.0.6
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.
- package/README.md +44 -0
- package/dist/Account.js +60 -0
- package/dist/Account.js.map +1 -0
- package/dist/NotImplementedException.js +8 -0
- package/dist/NotImplementedException.js.map +1 -0
- package/dist/__mocks__/Account.d.ts +3 -3
- package/dist/__mocks__/Account.js +51 -0
- package/dist/__mocks__/Account.js.map +1 -0
- package/dist/__mocks__/index.js +25 -0
- package/dist/__mocks__/index.js.map +1 -0
- package/dist/__mocks__/mockAccountData.js +45 -0
- package/dist/__mocks__/mockAccountData.js.map +1 -0
- package/dist/__mocks__/mockEnrollment.d.ts +1 -1
- package/dist/__mocks__/mockEnrollment.js +24 -0
- package/dist/__mocks__/mockEnrollment.js.map +1 -0
- package/dist/__mocks__/mockRubricData.d.ts +1 -1
- package/dist/__mocks__/mockRubricData.js +56 -0
- package/dist/__mocks__/mockRubricData.js.map +1 -0
- package/dist/__mocks__/mockTabData.d.ts +1 -1
- package/dist/__mocks__/mockTabData.js +14 -0
- package/dist/__mocks__/mockTabData.js.map +1 -0
- package/dist/__mocks__/mockTermData.d.ts +1 -1
- package/dist/__mocks__/mockTermData.js +8 -0
- package/dist/__mocks__/mockTermData.js.map +1 -0
- package/dist/__mocks__/mockUserData.js +15 -0
- package/dist/__mocks__/mockUserData.js.map +1 -0
- package/dist/__mocks__/utils.js +14 -0
- package/dist/__mocks__/utils.js.map +1 -0
- package/dist/__tests__/canvasUtils.test.js +431 -0
- package/dist/__tests__/canvasUtils.test.js.map +1 -0
- package/dist/__tests__/fetch.test.js +236 -0
- package/dist/__tests__/fetch.test.js.map +1 -0
- package/dist/__tests__/profile.test.js +17 -0
- package/dist/__tests__/profile.test.js.map +1 -0
- package/dist/__tests__/rubrics.test.js +136 -0
- package/dist/__tests__/rubrics.test.js.map +1 -0
- package/dist/baseCanvasObject.js +115 -0
- package/dist/baseCanvasObject.js.map +1 -0
- package/dist/canvasDataDefs.d.ts +4 -0
- package/dist/canvasDataDefs.d.ts.map +1 -1
- package/dist/canvasDataDefs.js +3 -0
- package/dist/canvasDataDefs.js.map +1 -0
- package/dist/canvasUtils.d.ts +1 -1
- package/dist/canvasUtils.js +358 -0
- package/dist/canvasUtils.js.map +1 -0
- package/dist/consts.js +6 -0
- package/dist/consts.js.map +1 -0
- package/dist/content/BaseContentItem.d.ts +6 -6
- package/dist/content/BaseContentItem.js +182 -0
- package/dist/content/BaseContentItem.js.map +1 -0
- package/dist/content/ContentKind.d.ts +3 -3
- package/dist/content/ContentKind.js +45 -0
- package/dist/content/ContentKind.js.map +1 -0
- package/dist/content/__mocks__/determineContent.d.ts +14 -14
- package/dist/content/__mocks__/determineContent.js +27 -0
- package/dist/content/__mocks__/determineContent.js.map +1 -0
- package/dist/content/__mocks__/mockAssignmentSubmission.d.ts +1 -1
- package/dist/content/__mocks__/mockAssignmentSubmission.js +38 -0
- package/dist/content/__mocks__/mockAssignmentSubmission.js.map +1 -0
- package/dist/content/__mocks__/mockContentData.d.ts +3 -3
- package/dist/content/__mocks__/mockContentData.js +92 -0
- package/dist/content/__mocks__/mockContentData.js.map +1 -0
- package/dist/content/__mocks__/openThisContentInTarget.js +6 -0
- package/dist/content/__mocks__/openThisContentInTarget.js.map +1 -0
- package/dist/content/__testingUtils__/utils.d.ts +1 -1
- package/dist/content/__testingUtils__/utils.js +43 -0
- package/dist/content/__testingUtils__/utils.js.map +1 -0
- package/dist/content/__tests__/determineContent.test.js +115 -0
- package/dist/content/__tests__/determineContent.test.js.map +1 -0
- package/dist/content/__tests__/getContentFuncs.test.js +66 -0
- package/dist/content/__tests__/getContentFuncs.test.js.map +1 -0
- package/dist/content/assignments/Assignment.d.ts +4 -4
- package/dist/content/assignments/Assignment.js +61 -0
- package/dist/content/assignments/Assignment.js.map +1 -0
- package/dist/content/assignments/AssignmentKind.d.ts +3 -3
- package/dist/content/assignments/AssignmentKind.js +24 -0
- package/dist/content/assignments/AssignmentKind.js.map +1 -0
- package/dist/content/assignments/__tests__/AssignmentKind.test.js +56 -0
- package/dist/content/assignments/__tests__/AssignmentKind.test.js.map +1 -0
- package/dist/content/assignments/__tests__/assignments.test.js +95 -0
- package/dist/content/assignments/__tests__/assignments.test.js.map +1 -0
- package/dist/content/assignments/deleteAssignmentGroup.js +17 -0
- package/dist/content/assignments/deleteAssignmentGroup.js.map +1 -0
- package/dist/content/assignments/genAssignmentGroups.d.ts +1 -1
- package/dist/content/assignments/genAssignmentGroups.js +14 -0
- package/dist/content/assignments/genAssignmentGroups.js.map +1 -0
- package/dist/content/assignments/index.d.ts +4 -4
- package/dist/content/assignments/index.js +28 -0
- package/dist/content/assignments/index.js.map +1 -0
- package/dist/content/assignments/legacy.js +12 -0
- package/dist/content/assignments/legacy.js.map +1 -0
- package/dist/content/assignments/updateAssignmentDueDates.d.ts +2 -2
- package/dist/content/assignments/updateAssignmentDueDates.js +22 -0
- package/dist/content/assignments/updateAssignmentDueDates.js.map +1 -0
- package/dist/content/determineContent.d.ts +8 -8
- package/dist/content/determineContent.js +70 -0
- package/dist/content/determineContent.js.map +1 -0
- package/dist/content/discussions/Discussion.d.ts +4 -4
- package/dist/content/discussions/Discussion.js +32 -0
- package/dist/content/discussions/Discussion.js.map +1 -0
- package/dist/content/discussions/DiscussionKind.d.ts +2 -2
- package/dist/content/discussions/DiscussionKind.js +23 -0
- package/dist/content/discussions/DiscussionKind.js.map +1 -0
- package/dist/content/discussions/__tests__/DiscussionKind.test.js +56 -0
- package/dist/content/discussions/__tests__/DiscussionKind.test.js.map +1 -0
- package/dist/content/discussions/genEquivalentDiscussionData.js +97 -0
- package/dist/content/discussions/genEquivalentDiscussionData.js.map +1 -0
- package/dist/content/discussions/index.js +19 -0
- package/dist/content/discussions/index.js.map +1 -0
- package/dist/content/getContentFuncs.js +25 -0
- package/dist/content/getContentFuncs.js.map +1 -0
- package/dist/content/index.js +27 -0
- package/dist/content/index.js.map +1 -0
- package/dist/content/openThisContentInTarget.d.ts +1 -1
- package/dist/content/openThisContentInTarget.js +35 -0
- package/dist/content/openThisContentInTarget.js.map +1 -0
- package/dist/content/pages/Page.d.ts +5 -4
- package/dist/content/pages/Page.d.ts.map +1 -1
- package/dist/content/pages/Page.js +39 -0
- package/dist/content/pages/Page.js.map +1 -0
- package/dist/content/pages/PageKind.d.ts +3 -2
- package/dist/content/pages/PageKind.d.ts.map +1 -1
- package/dist/content/pages/PageKind.js +24 -0
- package/dist/content/pages/PageKind.js.map +1 -0
- package/dist/content/pages/__tests__/PageKind.test.js +69 -0
- package/dist/content/pages/__tests__/PageKind.test.js.map +1 -0
- package/dist/content/pages/__tests__/learningMaterialsForModule.js +82 -0
- package/dist/content/pages/__tests__/learningMaterialsForModule.js.map +1 -0
- package/dist/content/pages/index.js +56 -0
- package/dist/content/pages/index.js.map +1 -0
- package/dist/content/pages/learningMaterialsForModule.d.ts +2 -2
- package/dist/content/pages/learningMaterialsForModule.js +16 -0
- package/dist/content/pages/learningMaterialsForModule.js.map +1 -0
- package/dist/content/pages/types.d.ts +2 -1
- package/dist/content/pages/types.d.ts.map +1 -1
- package/dist/content/pages/types.js +3 -0
- package/dist/content/pages/types.js.map +1 -0
- package/dist/content/quizzes/Quiz.d.ts +1 -1
- package/dist/content/quizzes/Quiz.js +27 -0
- package/dist/content/quizzes/Quiz.js.map +1 -0
- package/dist/content/quizzes/QuizKind.d.ts +2 -2
- package/dist/content/quizzes/QuizKind.js +22 -0
- package/dist/content/quizzes/QuizKind.js.map +1 -0
- package/dist/content/quizzes/__tests__/QuizKind.test.js +56 -0
- package/dist/content/quizzes/__tests__/QuizKind.test.js.map +1 -0
- package/dist/content/quizzes/index.js +3 -0
- package/dist/content/quizzes/index.js.map +1 -0
- package/dist/content/quizzes/types.js +3 -0
- package/dist/content/quizzes/types.js.map +1 -0
- package/dist/content/types.d.ts +6 -6
- package/dist/content/types.js +3 -0
- package/dist/content/types.js.map +1 -0
- package/dist/course/Course.d.ts +15 -11
- package/dist/course/Course.d.ts.map +1 -1
- package/dist/course/Course.js +472 -0
- package/dist/course/Course.js.map +1 -0
- package/dist/course/IBlueprintCourse.d.ts +2 -2
- package/dist/course/IBlueprintCourse.js +3 -0
- package/dist/course/IBlueprintCourse.js.map +1 -0
- package/dist/course/__mocks__/blueprint.d.ts +1 -1
- package/dist/course/__mocks__/blueprint.js +28 -0
- package/dist/course/__mocks__/blueprint.js.map +1 -0
- package/dist/course/__mocks__/mockCourseData.d.ts +1 -1
- package/dist/course/__mocks__/mockCourseData.js +50 -0
- package/dist/course/__mocks__/mockCourseData.js.map +1 -0
- package/dist/course/__mocks__/mockLatePolicy.js +15 -0
- package/dist/course/__mocks__/mockLatePolicy.js.map +1 -0
- package/dist/course/__mocks__/mockModuleData.js +55 -0
- package/dist/course/__mocks__/mockModuleData.js.map +1 -0
- package/dist/course/__mocks__/mockProgressData.js +29 -0
- package/dist/course/__mocks__/mockProgressData.js.map +1 -0
- package/dist/course/__tests__/Course.test.js +75 -0
- package/dist/course/__tests__/Course.test.js.map +1 -0
- package/dist/course/__tests__/blueprint.test.js +273 -0
- package/dist/course/__tests__/blueprint.test.js.map +1 -0
- package/dist/course/__tests__/changeStartDate.test.js +240 -0
- package/dist/course/__tests__/changeStartDate.test.js.map +1 -0
- package/dist/course/__tests__/index.test.js +77 -0
- package/dist/course/__tests__/index.test.js.map +1 -0
- package/dist/course/blueprint.d.ts +1 -1
- package/dist/course/blueprint.js +108 -0
- package/dist/course/blueprint.js.map +1 -0
- package/dist/course/cachedGetAssociatedCoursesFunc.d.ts +2 -2
- package/dist/course/cachedGetAssociatedCoursesFunc.js +14 -0
- package/dist/course/cachedGetAssociatedCoursesFunc.js.map +1 -0
- package/dist/course/changeStartDate.d.ts +7 -6
- package/dist/course/changeStartDate.d.ts.map +1 -1
- package/dist/course/changeStartDate.js +182 -0
- package/dist/course/changeStartDate.js.map +1 -0
- package/dist/course/code.js +39 -0
- package/dist/course/code.js.map +1 -0
- package/dist/course/courseTypes.d.ts +5 -5
- package/dist/course/courseTypes.js +3 -0
- package/dist/course/courseTypes.js.map +1 -0
- package/dist/course/getCourseIdFromUrl.js +12 -0
- package/dist/course/getCourseIdFromUrl.js.map +1 -0
- package/dist/course/getSections.d.ts +3 -3
- package/dist/course/getSections.js +10 -0
- package/dist/course/getSections.js.map +1 -0
- package/dist/course/getTermNameFromSections.d.ts +1 -1
- package/dist/course/getTermNameFromSections.js +13 -0
- package/dist/course/getTermNameFromSections.js.map +1 -0
- package/dist/course/index.js +28 -0
- package/dist/course/index.js.map +1 -0
- package/dist/course/migration/__mocks__/mockMigrationData.js +41 -0
- package/dist/course/migration/__mocks__/mockMigrationData.js.map +1 -0
- package/dist/course/migration/__tests__/migration.test.js +141 -0
- package/dist/course/migration/__tests__/migration.test.js.map +1 -0
- package/dist/course/migration/__tests__/migrationCache.test.js +42 -0
- package/dist/course/migration/__tests__/migrationCache.test.js.map +1 -0
- package/dist/course/migration/index.d.ts +2 -2
- package/dist/course/migration/index.js +74 -0
- package/dist/course/migration/index.js.map +1 -0
- package/dist/course/migration/migrationCache.js +44 -0
- package/dist/course/migration/migrationCache.js.map +1 -0
- package/dist/course/modules.d.ts +1 -1
- package/dist/course/modules.js +82 -0
- package/dist/course/modules.js.map +1 -0
- package/dist/course/notABlueprintError.js +8 -0
- package/dist/course/notABlueprintError.js.map +1 -0
- package/dist/course/references/getReferencesForText.d.ts +1 -1
- package/dist/course/references/getReferencesForText.js +14 -0
- package/dist/course/references/getReferencesForText.js.map +1 -0
- package/dist/course/references/getReferencesForText.test.js +21 -0
- package/dist/course/references/getReferencesForText.test.js.map +1 -0
- package/dist/course/references/getReferencesTemplate.d.ts +2 -2
- package/dist/course/references/getReferencesTemplate.js +30 -0
- package/dist/course/references/getReferencesTemplate.js.map +1 -0
- package/dist/course/references/mockCiteAsResponse.js +323 -0
- package/dist/course/references/mockCiteAsResponse.js.map +1 -0
- package/dist/course/retireBlueprint.d.ts +2 -2
- package/dist/course/retireBlueprint.js +21 -0
- package/dist/course/retireBlueprint.js.map +1 -0
- package/dist/course/toolbox.d.ts +3 -3
- package/dist/course/toolbox.js +96 -0
- package/dist/course/toolbox.js.map +1 -0
- package/dist/date.js +119 -0
- package/dist/date.js.map +1 -0
- package/dist/enrollments/EnrollmentTypes.d.ts +2 -2
- package/dist/enrollments/EnrollmentTypes.js +3 -0
- package/dist/enrollments/EnrollmentTypes.js.map +1 -0
- package/dist/enrollments/enrollmentRole.js +7 -0
- package/dist/enrollments/enrollmentRole.js.map +1 -0
- package/dist/enrollments/getEnrollmentGenerator.d.ts +2 -2
- package/dist/enrollments/getEnrollmentGenerator.js +25 -0
- package/dist/enrollments/getEnrollmentGenerator.js.map +1 -0
- package/dist/enrollments/index.js +20 -0
- package/dist/enrollments/index.js.map +1 -0
- package/dist/fetch/__mocks__/fetchJson.js +5 -0
- package/dist/fetch/__mocks__/fetchJson.js.map +1 -0
- package/dist/fetch/__mocks__/getPagedDataGenerator.js +10 -0
- package/dist/fetch/__mocks__/getPagedDataGenerator.js.map +1 -0
- package/dist/fetch/__mocks__/index.js +8 -0
- package/dist/fetch/__mocks__/index.js.map +1 -0
- package/dist/fetch/apiGetConfig.d.ts +1 -1
- package/dist/fetch/apiGetConfig.js +11 -0
- package/dist/fetch/apiGetConfig.js.map +1 -0
- package/dist/fetch/apiWriteConfig.d.ts +2 -2
- package/dist/fetch/apiWriteConfig.js +16 -0
- package/dist/fetch/apiWriteConfig.js.map +1 -0
- package/dist/fetch/canvasDataFetchGenFunc.d.ts +2 -2
- package/dist/fetch/canvasDataFetchGenFunc.js +13 -0
- package/dist/fetch/canvasDataFetchGenFunc.js.map +1 -0
- package/dist/fetch/fetchJson.d.ts +1 -1
- package/dist/fetch/fetchJson.js +19 -0
- package/dist/fetch/fetchJson.js.map +1 -0
- package/dist/fetch/getPagedDataGenerator.d.ts +2 -2
- package/dist/fetch/getPagedDataGenerator.js +145 -0
- package/dist/fetch/getPagedDataGenerator.js.map +1 -0
- package/dist/fetch/index.js +22 -0
- package/dist/fetch/index.js.map +1 -0
- package/dist/fetch/utils.d.ts +1 -1
- package/dist/fetch/utils.js +14 -0
- package/dist/fetch/utils.js.map +1 -0
- package/dist/files.js +33 -0
- package/dist/files.js.map +1 -0
- package/dist/fixes/annotations.d.ts +1 -1
- package/dist/fixes/annotations.js +95 -0
- package/dist/fixes/annotations.js.map +1 -0
- package/dist/fixes/index.js +87 -0
- package/dist/fixes/index.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +60 -8960
- package/dist/index.js.map +1 -0
- package/dist/profile.d.ts +2 -2
- package/dist/profile.js +230 -0
- package/dist/profile.js.map +1 -0
- package/dist/rubricTypes.d.ts +14 -0
- package/dist/rubricTypes.d.ts.map +1 -1
- package/dist/rubricTypes.js +3 -0
- package/dist/rubricTypes.js.map +1 -0
- package/dist/rubrics.d.ts +1 -1
- package/dist/rubrics.js +46 -0
- package/dist/rubrics.js.map +1 -0
- package/dist/term/Term.d.ts +3 -3
- package/dist/term/Term.js +64 -0
- package/dist/term/Term.js.map +1 -0
- package/dist/term/__tests__/dateFromTermName.test.js +26 -0
- package/dist/term/__tests__/dateFromTermName.test.js.map +1 -0
- package/dist/term/__tests__/getTermsGenerator.test.js +19 -0
- package/dist/term/__tests__/getTermsGenerator.test.js.map +1 -0
- package/dist/term/dateFromTermName.js +17 -0
- package/dist/term/dateFromTermName.js.map +1 -0
- package/dist/term/getTermsGenerator.js +15 -0
- package/dist/term/getTermsGenerator.js.map +1 -0
- package/dist/term/index.js +20 -0
- package/dist/term/index.js.map +1 -0
- package/dist/toolbox.js +25 -0
- package/dist/toolbox.js.map +1 -0
- package/dist/types.d.ts +4 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/users/getUserGenerator.d.ts +1 -1
- package/dist/users/getUserGenerator.js +21 -0
- package/dist/users/getUserGenerator.js.map +1 -0
- package/dist/users/index.js +18 -0
- package/dist/users/index.js.map +1 -0
- package/package.json +59 -51
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.migrationsForCourseGen = migrationsForCourseGen;
|
|
4
|
+
exports.getMigration = getMigration;
|
|
5
|
+
exports.courseMigrationGenerator = courseMigrationGenerator;
|
|
6
|
+
exports.startMigration = startMigration;
|
|
7
|
+
exports.genCourseMigrationProgress = genCourseMigrationProgress;
|
|
8
|
+
exports.copyToNewCourseGenerator = copyToNewCourseGenerator;
|
|
9
|
+
const canvasUtils_1 = require("../../canvasUtils");
|
|
10
|
+
const toolbox_1 = require("../toolbox");
|
|
11
|
+
const getPagedDataGenerator_1 = require("../../fetch/getPagedDataGenerator");
|
|
12
|
+
const fetchJson_1 = require("../../fetch/fetchJson");
|
|
13
|
+
const toolbox_2 = require("../../toolbox");
|
|
14
|
+
function migrationsForCourseGen(courseId, config) {
|
|
15
|
+
const url = `/api/v1/courses/${courseId}/content_migrations`;
|
|
16
|
+
return (0, getPagedDataGenerator_1.getPagedDataGenerator)(url, config);
|
|
17
|
+
}
|
|
18
|
+
async function getMigration(courseId, migrationId, config) {
|
|
19
|
+
try {
|
|
20
|
+
const data = await (0, fetchJson_1.fetchJson)(`/api/v1/courses/${courseId}/content_migrations/${migrationId}`, config);
|
|
21
|
+
return data;
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
async function* courseMigrationGenerator(sourceCourseId, destCourseId, pollDelay = 500, //in ms
|
|
28
|
+
migrationConfig, pollConfig) {
|
|
29
|
+
const migrationData = await startMigration(sourceCourseId, destCourseId, migrationConfig);
|
|
30
|
+
for await (const result of genCourseMigrationProgress(migrationData, pollDelay, pollConfig)) {
|
|
31
|
+
yield result;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async function startMigration(sourceCourseId, destCourseId, config) {
|
|
35
|
+
const copyUrl = `/api/v1/courses/${destCourseId}/content_migrations`;
|
|
36
|
+
const migrationInit = {
|
|
37
|
+
method: 'POST',
|
|
38
|
+
body: (0, canvasUtils_1.formDataify)({
|
|
39
|
+
migration_type: 'course_copy_importer',
|
|
40
|
+
settings: {
|
|
41
|
+
source_course_id: sourceCourseId,
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
};
|
|
45
|
+
config = (0, canvasUtils_1.deepObjectMerge)(config, { fetchInit: migrationInit }, true);
|
|
46
|
+
return await (0, fetchJson_1.fetchJson)(copyUrl, config);
|
|
47
|
+
}
|
|
48
|
+
async function* genCourseMigrationProgress(migration, pollDelay = 500, pollConfig) {
|
|
49
|
+
const { progress_url: progressUrl } = migration;
|
|
50
|
+
while (true) {
|
|
51
|
+
await (0, toolbox_2.sleep)(pollDelay);
|
|
52
|
+
const progress = await (0, fetchJson_1.fetchJson)(progressUrl, pollConfig);
|
|
53
|
+
yield progress;
|
|
54
|
+
if (progress.workflow_state === 'completed')
|
|
55
|
+
return;
|
|
56
|
+
if (progress.workflow_state === 'failed') {
|
|
57
|
+
throw new Error(`Migration Error: ${progress.message}`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async function* copyToNewCourseGenerator(sourceCourse, newCode, pollDelay = 500, newName, courseConfig, migrationConfig, pollConfig, returnCourseConfig) {
|
|
62
|
+
if (!newName && sourceCourse.parsedCourseCode) {
|
|
63
|
+
newName = sourceCourse.name.replace(sourceCourse.parsedCourseCode, newCode);
|
|
64
|
+
}
|
|
65
|
+
returnCourseConfig ??= courseConfig;
|
|
66
|
+
newName ??= sourceCourse.name + "_COPY";
|
|
67
|
+
const { destId } = await (0, toolbox_1.createNewCourse)(newCode, sourceCourse.accountId, newName, courseConfig);
|
|
68
|
+
const migration = courseMigrationGenerator(sourceCourse.id, destId, pollDelay, migrationConfig, pollConfig);
|
|
69
|
+
for await (const progress of migration) {
|
|
70
|
+
yield progress;
|
|
71
|
+
}
|
|
72
|
+
return await (0, toolbox_1.getCourseData)(destId, returnCourseConfig);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/course/migration/index.ts"],"names":[],"mappings":";;AA8CA,wDAIC;AAED,oCAWC;AAGD,4DAYC;AAED,wCAcC;AAED,gEAWC;AAED,4DAwBC;AArID,+CAIuB;AACvB,wCAA0D;AAG1D,yEAAoE;AAEpE,iDAA4C;AAE5C,uCAAgC;AAkChC,SAAgB,sBAAsB,CAAC,QAAe,EAAE,MAAyB;IAC7E,MAAM,GAAG,GAAG,mBAAmB,QAAQ,qBAAqB,CAAA;IAC5D,OAAO,IAAA,6CAAqB,EAAiB,GAAG,EAAE,MAAM,CAAC,CAAC;AAE9D,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,QAAe,EAAC,WAAkB,EAAE,MAAyB;IAC5F,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAA,qBAAS,EACxB,mBAAmB,QAAQ,uBAAuB,WAAW,EAAE,EAC/D,MAAM,CACT,CAAC;QACF,OAAO,IAAsB,CAAC;IAElC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAGM,KAAK,SAAS,CAAC,CAAC,wBAAwB,CAC3C,cAAsB,EACtB,YAAoB,EACpB,YAAoB,GAAG,EAAE,OAAO;AAChC,eAAmC,EACnC,UAA8B;IAG9B,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,cAAc,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;IAC1F,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,0BAA0B,CAAC,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;QAC1F,MAAM,MAAM,CAAC;IACjB,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,cAAqB,EAAE,YAAoB,EAAE,MAAyB;IACvG,MAAM,OAAO,GAAG,mBAAmB,YAAY,qBAAqB,CAAC;IACrE,MAAM,aAAa,GAAgB;QAC/B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAA,yBAAW,EAAC;YACd,cAAc,EAAE,sBAAsB;YACtC,QAAQ,EAAE;gBACN,gBAAgB,EAAE,cAAc;aACnC;SACJ,CAAC;KACL,CAAA;IAED,MAAM,GAAG,IAAA,6BAAe,EAAC,MAAM,EAAE,EAAC,SAAS,EAAE,aAAa,EAAC,EAAE,IAAI,CAAC,CAAC;IACnE,OAAO,MAAM,IAAA,qBAAS,EAAiB,OAAO,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAEM,KAAK,SAAS,CAAC,CAAC,0BAA0B,CAAC,SAAwB,EAAE,YAAoB,GAAG,EAAE,UAA8B;IAC/H,MAAM,EAAC,YAAY,EAAE,WAAW,EAAC,GAAG,SAAS,CAAC;IAC9C,OAAO,IAAI,EAAE,CAAC;QACV,MAAM,IAAA,eAAK,EAAC,SAAS,CAAC,CAAC;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAS,EAAgB,WAAW,EAAE,UAAU,CAAC,CAAC;QACzE,MAAM,QAAQ,CAAC;QACf,IAAI,QAAQ,CAAC,cAAc,KAAK,WAAW;YAAE,OAAM;QACnD,IAAI,QAAQ,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,oBAAoB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;AACL,CAAC;AAEM,KAAK,SAAS,CAAC,CAAC,wBAAwB,CAC3C,YAAoB,EACpB,OAAe,EACf,YAAoB,GAAG,EACvB,OAAgB,EAChB,YAAkD,EAClD,eAAmC,EACnC,UAA8B,EAC9B,kBAAwD;IAExD,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAC5C,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED,kBAAkB,KAAK,YAAY,CAAC;IACpC,OAAO,KAAK,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC;IACxC,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,IAAA,yBAAe,EAAC,OAAO,EAAE,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/F,MAAM,SAAS,GAAG,wBAAwB,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE5G,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACrC,MAAM,QAAQ,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,IAAA,uBAAa,EAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;AAE3D,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadCachedMigrations = loadCachedMigrations;
|
|
4
|
+
exports.loadCachedCourseMigrations = loadCachedCourseMigrations;
|
|
5
|
+
exports.cacheCourseMigrations = cacheCourseMigrations;
|
|
6
|
+
function loadCachedMigrations() {
|
|
7
|
+
if (!localStorage.getItem('migrations'))
|
|
8
|
+
localStorage.setItem('migrations', '{}');
|
|
9
|
+
const migrationDataString = localStorage.getItem('migrations');
|
|
10
|
+
const migrationDataList = JSON.parse(migrationDataString) ?? {};
|
|
11
|
+
return migrationDataList;
|
|
12
|
+
}
|
|
13
|
+
function loadCachedCourseMigrations(courseId) {
|
|
14
|
+
const key = courseId.toString();
|
|
15
|
+
return loadCachedMigrations()[key] ?? [];
|
|
16
|
+
}
|
|
17
|
+
function cacheCourseMigrations(courseId, toCacheMigrations, options) {
|
|
18
|
+
let { cachedMigrations } = options ?? {};
|
|
19
|
+
cachedMigrations ??= loadCachedMigrations();
|
|
20
|
+
const cachedCourseMigrations = loadCachedCourseMigrations(courseId);
|
|
21
|
+
function getToCacheVersion(migrationId) {
|
|
22
|
+
const migrations = toCacheMigrations.filter(toCache => toCache.id === migrationId);
|
|
23
|
+
if (migrations.length === 0)
|
|
24
|
+
return undefined;
|
|
25
|
+
return migrations[0];
|
|
26
|
+
}
|
|
27
|
+
function hasCachedVersion(migrationId) {
|
|
28
|
+
const migrations = cachedCourseMigrations.filter(cached => cached.id === migrationId);
|
|
29
|
+
return migrations.length > 0;
|
|
30
|
+
}
|
|
31
|
+
let updatingMigrations = cachedCourseMigrations.map(cachedCourseMigration => ({
|
|
32
|
+
...cachedCourseMigration,
|
|
33
|
+
...getToCacheVersion(cachedCourseMigration.id),
|
|
34
|
+
}));
|
|
35
|
+
const remainingMigrations = toCacheMigrations.filter(migration => !hasCachedVersion(migration.id));
|
|
36
|
+
updatingMigrations = [
|
|
37
|
+
...updatingMigrations,
|
|
38
|
+
...remainingMigrations,
|
|
39
|
+
].toSorted((a, b) => a.id - b.id);
|
|
40
|
+
cachedMigrations[courseId.toString()] = updatingMigrations;
|
|
41
|
+
localStorage.setItem('migrations', JSON.stringify(cachedMigrations));
|
|
42
|
+
return cachedMigrations;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=migrationCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrationCache.js","sourceRoot":"","sources":["../../../src/course/migration/migrationCache.ts"],"names":[],"mappings":";;AAOA,oDAKC;AAED,gEAGC;AAOD,sDA+BC;AAhDD,SAAgB,oBAAoB;IAChC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC;QAAE,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IACjF,MAAM,mBAAmB,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,CAAW,CAAC;IACzE,MAAM,iBAAiB,GAAqC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAClG,OAAO,iBAAiB,CAAC;AAC7B,CAAC;AAED,SAAgB,0BAA0B,CAAC,QAAyB;IAChE,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAChC,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;AAC7C,CAAC;AAOD,SAAgB,qBAAqB,CAAC,QAAgB,EAAE,iBAAmC,EAAE,OAAoC;IAC7H,IAAI,EAAC,gBAAgB,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;IACvC,gBAAgB,KAAK,oBAAoB,EAAE,CAAC;IAC5C,MAAM,sBAAsB,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAEpE,SAAS,iBAAiB,CAAC,WAAmB;QAC1C,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC;QACnF,IAAG,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAC7C,OAAO,UAAU,CAAC,CAAC,CAAmB,CAAC;IAC3C,CAAC;IAED,SAAS,gBAAgB,CAAC,WAAmB;QACzC,MAAM,UAAU,GAAG,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC;QACtF,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,CAAC;IAGD,IAAI,kBAAkB,GAAG,sBAAsB,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACtE,GAAG,qBAAqB;QACxB,GAAG,iBAAiB,CAAC,qBAAqB,CAAC,EAAE,CAAC;KACrD,CAAC,CAAC,CAAA;IACH,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;IAElG,kBAAkB,GAAG;QACjB,GAAG,kBAAkB;QACrB,GAAG,mBAAmB;KACzB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAElC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,kBAAkB,CAAC;IAC3D,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrE,OAAO,gBAAgB,CAAC;AAC5B,CAAC"}
|
package/dist/course/modules.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Temporal } from "temporal-polyfill";
|
|
2
2
|
import { IModuleData, IModuleItemData } from "../canvasDataDefs";
|
|
3
3
|
import { ICanvasCallConfig } from "../canvasUtils";
|
|
4
|
-
import { Page } from "
|
|
4
|
+
import { Page } from "../content/pages/Page";
|
|
5
5
|
export interface IModuleHaver {
|
|
6
6
|
getModules(config: ICanvasCallConfig): IModuleData[];
|
|
7
7
|
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isQuizItemData = exports.isDiscussionItemData = exports.isAssignmentItemData = exports.isPageItemData = void 0;
|
|
4
|
+
exports.saveModuleItem = saveModuleItem;
|
|
5
|
+
exports.moduleGenerator = moduleGenerator;
|
|
6
|
+
exports.changeModuleLockDate = changeModuleLockDate;
|
|
7
|
+
exports.getModuleOverview = getModuleOverview;
|
|
8
|
+
exports.getModuleWeekNumber = getModuleWeekNumber;
|
|
9
|
+
exports.getModulesByWeekNumber = getModulesByWeekNumber;
|
|
10
|
+
const canvasUtils_1 = require("../canvasUtils");
|
|
11
|
+
const fetchJson_1 = require("../fetch/fetchJson");
|
|
12
|
+
const Page_1 = require("../content/pages/Page");
|
|
13
|
+
const getPagedDataGenerator_1 = require("../fetch/getPagedDataGenerator");
|
|
14
|
+
async function saveModuleItem(courseId, moduleId, moduleItemId, moduleItem) {
|
|
15
|
+
return await (0, fetchJson_1.fetchJson)(`/api/v1/courses/${courseId}/modules/${moduleId}/modules/items/${moduleItemId}`, {
|
|
16
|
+
fetchInit: {
|
|
17
|
+
method: "PUT",
|
|
18
|
+
body: (0, canvasUtils_1.formDataify)({ moduleItem: moduleItem }),
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
function moduleGenerator(courseId, config) {
|
|
23
|
+
return (0, getPagedDataGenerator_1.getPagedDataGenerator)(`/api/v1/courses/${courseId}/modules`, config);
|
|
24
|
+
}
|
|
25
|
+
async function changeModuleLockDate(courseId, module, targetDate) {
|
|
26
|
+
const payload = {
|
|
27
|
+
module: {
|
|
28
|
+
unlock_at: targetDate.toString()
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
const url = `/api/v1/courses/${courseId}/modules/${module.id}`;
|
|
32
|
+
const result = (0, fetchJson_1.fetchJson)(url, {
|
|
33
|
+
fetchInit: {
|
|
34
|
+
method: 'PUT',
|
|
35
|
+
body: (0, canvasUtils_1.formDataify)(payload)
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
async function getModuleOverview(module, courseId) {
|
|
40
|
+
const overview = module.items.find(item => item.type === "Page" &&
|
|
41
|
+
item.title.toLowerCase().includes('overview'));
|
|
42
|
+
if (!overview?.url)
|
|
43
|
+
return; //skip this if it's not an overview
|
|
44
|
+
const url = overview.url.replace(/.*\/api\/v1/, '/api/v1');
|
|
45
|
+
const pageData = await (0, fetchJson_1.fetchJson)(url);
|
|
46
|
+
return new Page_1.Page(pageData, courseId);
|
|
47
|
+
}
|
|
48
|
+
function getModuleWeekNumber(module) {
|
|
49
|
+
const regex = /(week|module) (\d+)/i;
|
|
50
|
+
const match = module.name.match(regex);
|
|
51
|
+
let weekNumber = !match ? null : Number(match[1]);
|
|
52
|
+
if (!weekNumber) {
|
|
53
|
+
for (const moduleItem of module.items) {
|
|
54
|
+
if (!moduleItem.hasOwnProperty('title')) {
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
const match = moduleItem.title.match(regex);
|
|
58
|
+
if (match) {
|
|
59
|
+
weekNumber = match[2];
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return weekNumber;
|
|
64
|
+
}
|
|
65
|
+
async function getModulesByWeekNumber(modules) {
|
|
66
|
+
const modulesByWeekNumber = {};
|
|
67
|
+
for (const module of modules) {
|
|
68
|
+
const weekNumber = getModuleWeekNumber(module);
|
|
69
|
+
if (weekNumber) {
|
|
70
|
+
modulesByWeekNumber[weekNumber] = module;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return modulesByWeekNumber;
|
|
74
|
+
}
|
|
75
|
+
const isModuleItemTypeFunc = (typeString) => (item) => {
|
|
76
|
+
return item.type === typeString;
|
|
77
|
+
};
|
|
78
|
+
exports.isPageItemData = isModuleItemTypeFunc("Page");
|
|
79
|
+
exports.isAssignmentItemData = isModuleItemTypeFunc("Assignment");
|
|
80
|
+
exports.isDiscussionItemData = isModuleItemTypeFunc("Discussion");
|
|
81
|
+
exports.isQuizItemData = isModuleItemTypeFunc("Quiz");
|
|
82
|
+
//# sourceMappingURL=modules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/course/modules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NotABlueprintError = void 0;
|
|
4
|
+
class NotABlueprintError extends Error {
|
|
5
|
+
name = "NotABlueprintError";
|
|
6
|
+
}
|
|
7
|
+
exports.NotABlueprintError = NotABlueprintError;
|
|
8
|
+
//# sourceMappingURL=notABlueprintError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notABlueprintError.js","sourceRoot":"","sources":["../../src/course/notABlueprintError.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAmB,SAAQ,KAAK;IACzC,IAAI,GAAG,oBAAoB,CAAA;CAC9B;AAFD,gDAEC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IQueryParams } from "
|
|
1
|
+
import { IQueryParams } from "../../canvasUtils";
|
|
2
2
|
export declare function getReferencesForText(text: string, userEmail: string, queryParams?: IQueryParams): Promise<Record<string, any>>;
|
|
3
3
|
export default getReferencesForText;
|
|
4
4
|
//# sourceMappingURL=getReferencesForText.d.ts.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getReferencesForText = getReferencesForText;
|
|
4
|
+
const fetchJson_1 = require("../../fetch/fetchJson");
|
|
5
|
+
const apiGetConfig_1 = require("../../fetch/apiGetConfig");
|
|
6
|
+
const baseUrl = 'https://api.citeas.org/product';
|
|
7
|
+
async function getReferencesForText(text, userEmail, queryParams) {
|
|
8
|
+
queryParams ??= {};
|
|
9
|
+
queryParams.email = userEmail;
|
|
10
|
+
const result = await (0, fetchJson_1.fetchJson)(baseUrl, (0, apiGetConfig_1.apiGetConfig)(queryParams));
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
13
|
+
exports.default = getReferencesForText;
|
|
14
|
+
//# sourceMappingURL=getReferencesForText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getReferencesForText.js","sourceRoot":"","sources":["../../../src/course/references/getReferencesForText.ts"],"names":[],"mappings":";;AAMA,oDAKC;AAXD,iDAA4C;AAE5C,6DAAwD;AAExD,MAAM,OAAO,GAAG,gCAAgC,CAAA;AAEzC,KAAK,UAAU,oBAAoB,CAAC,IAAW,EAAE,SAAgB,EAAE,WAAyB;IAC/F,WAAW,KAAK,EAAE,CAAC;IACnB,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAS,EAAC,OAAO,EAAE,IAAA,2BAAY,EAAC,WAAW,CAAC,CAAC,CAAA;IAClE,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,kBAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const getReferencesForText_1 = __importDefault(require("../../course/references/getReferencesForText"));
|
|
7
|
+
const fetchJson_1 = require("../../fetch/fetchJson");
|
|
8
|
+
const globals_1 = require("@jest/globals");
|
|
9
|
+
const mockCiteAsResponse_1 = __importDefault(require("../../course/references/mockCiteAsResponse"));
|
|
10
|
+
globals_1.jest.mock('@/fetch/fetchJson', () => ({
|
|
11
|
+
fetchJson: globals_1.jest.fn(),
|
|
12
|
+
}));
|
|
13
|
+
describe('getReferencesForText', () => {
|
|
14
|
+
const userEmail = 'ttestersson@unity.edu';
|
|
15
|
+
const testText = "The Hungry, Hungry Caterpillar";
|
|
16
|
+
fetchJson_1.fetchJson.mockImplementation(async () => mockCiteAsResponse_1.default);
|
|
17
|
+
it('passes email and text into url', async () => {
|
|
18
|
+
const refs = await (0, getReferencesForText_1.default)(testText, userEmail);
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
//# sourceMappingURL=getReferencesForText.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getReferencesForText.test.js","sourceRoot":"","sources":["../../../src/course/references/getReferencesForText.test.ts"],"names":[],"mappings":";;;;;AAAA,oGAA4E;AAC5E,iDAA4C;AAC5C,2CAAmC;AACnC,gGAAwE;AAExE,cAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC;IAClC,SAAS,EAAE,cAAI,CAAC,EAAE,EAAE;CACvB,CAAC,CAAC,CAAA;AAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAClC,MAAM,SAAS,GAAG,uBAAuB,CAAC;IAC1C,MAAM,QAAQ,GAAG,gCAAgC,CAAC;IACjD,qBAAuB,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,4BAAkB,CAAC,CAAA;IAC3E,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAA,8BAAoB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAEjE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IPageData } from "
|
|
2
|
-
import { Page } from "
|
|
1
|
+
import { IPageData } from "../../content/pages/types";
|
|
2
|
+
import { Page } from "../../content/pages/Page";
|
|
3
3
|
export declare enum ReferenceExportType {
|
|
4
4
|
string = 0,
|
|
5
5
|
pageData = 1,
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ReferenceExportType = void 0;
|
|
7
|
+
exports.getReferenceTemplate = getReferenceTemplate;
|
|
8
|
+
const consts_1 = require("../../consts");
|
|
9
|
+
const Page_1 = require("../../content/pages/Page");
|
|
10
|
+
const PageKind_1 = __importDefault(require("../../content/pages/PageKind"));
|
|
11
|
+
const url = `/api/v1/courses/${consts_1.DEV_TEMPLATE_COURSE_ID}/pages/${consts_1.REFERENCES_PAGE_URL_NAME}`;
|
|
12
|
+
var ReferenceExportType;
|
|
13
|
+
(function (ReferenceExportType) {
|
|
14
|
+
ReferenceExportType[ReferenceExportType["string"] = 0] = "string";
|
|
15
|
+
ReferenceExportType[ReferenceExportType["pageData"] = 1] = "pageData";
|
|
16
|
+
ReferenceExportType[ReferenceExportType["page"] = 2] = "page";
|
|
17
|
+
})(ReferenceExportType || (exports.ReferenceExportType = ReferenceExportType = {}));
|
|
18
|
+
async function getReferenceTemplate(type) {
|
|
19
|
+
const pageData = await PageKind_1.default.getByString(consts_1.DEV_TEMPLATE_COURSE_ID, consts_1.REFERENCES_PAGE_URL_NAME);
|
|
20
|
+
if (typeof type === 'undefined' || type === ReferenceExportType.string)
|
|
21
|
+
return 'body' in pageData ? pageData.body : pageData.message;
|
|
22
|
+
if ('message' in pageData)
|
|
23
|
+
return undefined;
|
|
24
|
+
if (type === ReferenceExportType.pageData)
|
|
25
|
+
return pageData;
|
|
26
|
+
if (type === ReferenceExportType.page)
|
|
27
|
+
return pageData ? new Page_1.Page(pageData, consts_1.DEV_TEMPLATE_COURSE_ID) : undefined;
|
|
28
|
+
}
|
|
29
|
+
exports.default = getReferenceTemplate;
|
|
30
|
+
//# sourceMappingURL=getReferencesTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getReferencesTemplate.js","sourceRoot":"","sources":["../../../src/course/references/getReferencesTemplate.ts"],"names":[],"mappings":";;;;;;AAkBA,oDAOC;AAzBD,qCAA0E;AAE1E,+CAA0C;AAC1C,wEAAgD;AAGhD,MAAM,GAAG,GAAG,mBAAmB,+BAAsB,UAAU,iCAAwB,EAAE,CAAC;AAE1F,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC3B,iEAAM,CAAA;IACN,qEAAQ,CAAA;IACR,6DAAI,CAAA;AACR,CAAC,EAJW,mBAAmB,mCAAnB,mBAAmB,QAI9B;AAMM,KAAK,UAAU,oBAAoB,CAAC,IAA2B;IAClE,MAAM,QAAQ,GAAG,MAAM,kBAAQ,CAAC,WAAW,CAAC,+BAAsB,EAAE,iCAAwB,CAAC,CAAA;IAE7F,IAAG,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,mBAAmB,CAAC,MAAM;QAAE,OAAO,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;IACpI,IAAG,SAAS,IAAI,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAG,IAAI,KAAK,mBAAmB,CAAC,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC1D,IAAG,IAAI,KAAK,mBAAmB,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAI,CAAC,QAAQ,EAAE,+BAAsB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACnH,CAAC;AAED,kBAAe,oBAAoB,CAAC"}
|