tutor-logic 2.1.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/models/index.mjs +1 -2
- package/esm2022/lib/models/test-solution-models.mjs +1 -1
- package/esm2022/lib/services/StudentGroupTestRelationQueryService.mjs +12 -10
- package/esm2022/lib/services/TestSolutionQueryService.mjs +13 -14
- package/esm2022/lib/services/open-api/OpenApiQuestionLikeService.mjs +11 -12
- package/esm2022/lib/services/open-api/OpenApiTestSolutionService.mjs +11 -12
- package/esm2022/public-api.mjs +1 -2
- package/fesm2022/tutor-logic.mjs +40 -77
- package/fesm2022/tutor-logic.mjs.map +1 -1
- package/lib/models/index.d.ts +0 -1
- package/lib/models/test-solution-models.d.ts +0 -5
- package/lib/services/StudentGroupTestRelationQueryService.d.ts +3 -4
- package/lib/services/TestSolutionQueryService.d.ts +3 -5
- package/lib/services/open-api/OpenApiQuestionLikeService.d.ts +3 -5
- package/lib/services/open-api/OpenApiTestSolutionService.d.ts +3 -5
- package/package.json +1 -1
- package/public-api.d.ts +0 -1
- package/esm2022/lib/extensions/OpenApiExtensions.mjs +0 -6
- package/esm2022/lib/extensions/OpenApiUrlProvider.mjs +0 -41
- package/esm2022/lib/extensions/index.mjs +0 -3
- package/esm2022/lib/models/open-api-models.mjs +0 -2
- package/lib/extensions/OpenApiExtensions.d.ts +0 -4
- package/lib/extensions/OpenApiUrlProvider.d.ts +0 -14
- package/lib/extensions/index.d.ts +0 -2
- package/lib/models/open-api-models.d.ts +0 -4
|
@@ -4,7 +4,6 @@ export * from './setting-models';
|
|
|
4
4
|
export * from './student-models';
|
|
5
5
|
export * from './group-models';
|
|
6
6
|
export * from './group-enter-models';
|
|
7
|
-
export * from './open-api-models';
|
|
8
7
|
export * from './test-solution-models';
|
|
9
8
|
export * from './solution-validation-models';
|
|
10
9
|
export * from './question-like-models';
|
|
@@ -16,4 +15,4 @@ export * from './icon-models';
|
|
|
16
15
|
export * from './course-test-models';
|
|
17
16
|
export * from './landing-models';
|
|
18
17
|
export * from './course-shop-models';
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUE7QUFDaEMsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHdCQUF3QixDQUFBO0FBQ3RDLGNBQWMsaUJBQWlCLENBQUE7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLDJCQUEyQixDQUFBO0FBQ3pDLGNBQWMsa0JBQWtCLENBQUE7QUFDaEMsY0FBYyxlQUFlLENBQUE7QUFDN0IsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsc0JBQXNCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdGVzdC1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vc2V0dGluZy1tb2RlbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0dWRlbnQtbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2dyb3VwLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9ncm91cC1lbnRlci1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vdGVzdC1zb2x1dGlvbi1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vc29sdXRpb24tdmFsaWRhdGlvbi1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vcXVlc3Rpb24tbGlrZS1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vY291cnNlLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9jdXJhdG9yLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi90ZXN0LXJlc3RyaWN0aW9uLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9zdWJqZWN0Lm1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9pY29uLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9jb3Vyc2UtdGVzdC1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGFuZGluZy1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vY291cnNlLXNob3AtbW9kZWxzJyJdfQ==
|
|
@@ -13,4 +13,4 @@ export var AnswerValidationResultType;
|
|
|
13
13
|
AnswerValidationResultType["CorrectAnswer"] = "CorrectAnswer";
|
|
14
14
|
AnswerValidationResultType["InProccess"] = "InProccess";
|
|
15
15
|
})(AnswerValidationResultType || (AnswerValidationResultType = {}));
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1zb2x1dGlvbi1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy90ZXN0LXNvbHV0aW9uLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQkEsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUN4Qiw2RUFBeUQsQ0FBQTtJQUN6RCx1REFBbUMsQ0FBQTtJQUNuQyxxREFBaUMsQ0FBQTtJQUNqQyxpRUFBNkMsQ0FBQTtBQUNqRCxDQUFDLEVBTFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUszQjtBQXdERCxNQUFNLENBQU4sSUFBWSwwQkFNWDtBQU5ELFdBQVksMEJBQTBCO0lBQ2xDLDZFQUErQyxDQUFBO0lBQy9DLG1FQUFxQyxDQUFBO0lBQ3JDLCtFQUFpRCxDQUFBO0lBQ2pELDZEQUErQixDQUFBO0lBQy9CLHVEQUF5QixDQUFBO0FBQzdCLENBQUMsRUFOVywwQkFBMEIsS0FBMUIsMEJBQTBCLFFBTXJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ291cnNlVGhlbWVJdGVtTW9kZWwgfSBmcm9tIFwiLi9jb3Vyc2UtbW9kZWxzXCI7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVmFsaWRhdGlvblNvdXJjZVR5cGUgfSBmcm9tIFwiLi9zb2x1dGlvbi12YWxpZGF0aW9uLW1vZGVsc1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hTdHVkZW50VGVzdFNvbHV0aW9ucyB7XHJcbiAgICBpc0ZpbmlzaGVkOiBib29sZWFuIHwgbnVsbDtcclxuICAgIHN0dWRlbnRJZDogc3RyaW5nO1xyXG4gICAgY291bnQ6IG51bWJlciB8IG51bGw7XHJcbiAgICBvZmZTZXQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUZXN0U29sdXRpb25Db3Vyc2VEYXRhIHtcclxuICAgIHNvbHV0aW9uSWQ6IHN0cmluZztcclxuICAgIGNvdXJzZVRoZW1lSXRlbUlkOiBzdHJpbmc7XHJcbiAgICBjb3Vyc2VUaGVtZUl0ZW1JbmRleDogbnVtYmVyO1xyXG4gICAgY291cnNlVGhlbWVJZDogc3RyaW5nO1xyXG4gICAgY291cnNlVGhlbWVOYW1lOiBzdHJpbmc7XHJcbiAgICBjb3Vyc2VOYW1lOiBzdHJpbmc7XHJcbiAgICBjb3Vyc2VJZDogc3RyaW5nO1xyXG4gICAgbmV4dEl0ZW06IENvdXJzZVRoZW1lSXRlbU1vZGVsO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBUZXN0UXVlc3Rpb25UeXBlIHtcclxuICAgIFNlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzID0gJ1NlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzJyxcclxuICAgIFR5cGVSaWdodEFuc3dlciA9ICdUeXBlUmlnaHRBbnN3ZXInLFxyXG4gICAgRGV0YWlsZWRBbnN3ZXIgPSAnRGV0YWlsZWRBbnN3ZXInLFxyXG4gICAgVHlwZUFuc3dlcldpdGhFcnJvcnMgPSAnVHlwZUFuc3dlcldpdGhFcnJvcnMnXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU29sdXRpb25XaXRoQW5zd2VyTW9kZWwge1xyXG4gICAgc29sdXRpb25JZDogc3RyaW5nO1xyXG4gICAgYW5zd2VyOiBRdWVzdGlvbkFuc3dlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdHVkZW50VGVzdFNvbHV0aW9uV2l0aENoYXRJbmZvIHtcclxuICAgIHNvbHV0aW9uOiBTdHVkZW50VGVzdFNvbHV0aW9uU2ltcGxlTW9kZWw7XHJcbiAgICBzeXN0ZW1WYWxpZGF0aW9uOiBUZXN0U29sdXRpb25TeXN0ZW1WYWxpZGF0aW9uTW9kZWw7XHJcbiAgICB1bnJlYWRNZXNzYWdlc0NvdW50OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVzdFNvbHV0aW9uU3lzdGVtVmFsaWRhdGlvbk1vZGVsIHtcclxuICAgIHN0dWRlbnRUb3RhbFBvaW50czogbnVtYmVyO1xyXG4gICAgc3R1ZGVudFByb2dyZXNzUGVyY2VudHM6IG51bWJlcjtcclxuICAgIG1heFRvdGFsUG9pbnRzOiBudW1iZXI7XHJcbiAgICBxdWVzdGlvbnNDb3VudDogbnVtYmVyO1xyXG4gICAgdmFsaWRhdGVkUXVlc3Rpb25zQ291bnQ6IG51bWJlcjtcclxuICAgIGhhc1JpZ2h0QW5zd2VyUXVlc3Rpb25zQ291bnQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdGFydFNvbHV0aW9uRnJvbURpcmVjdG9yeSB7XHJcbiAgICB3b3JrU3BhY2VJZDogc3RyaW5nO1xyXG4gICAgZGlyZWN0b3J5SWQ6IHN0cmluZztcclxuICAgIHVzZUZpbHRlcjogYm9vbGVhbjtcclxuICAgIGNhbkNoZWNrU2luZ2xlUXVlc3Rpb246IGJvb2xlYW47XHJcbiAgICBmaWx0ZXI6IFF1ZXN0aW9uc0ZpbHRlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbnNGaWx0ZXIge1xyXG4gICAgdHlwZXM6IEFycmF5PFRlc3RRdWVzdGlvblR5cGU+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFN0YXJ0VGVzdFNvbHV0aW9uQnlUZXN0SWQge1xyXG4gICAgdGVzdElkOiBzdHJpbmc7XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgY2FuQ2hlY2tTaW5nbGVRdWVzdGlvbjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hNeVRlc3RTb2x1dGlvbnMge1xyXG4gICAgaXNGaW5pc2hlZDogYm9vbGVhbiB8IG51bGw7XHJcbiAgICB0ZXN0SWQ6IHN0cmluZztcclxuICAgIGNvdW50OiBudW1iZXIgfCBudWxsO1xyXG4gICAgb2ZmU2V0OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvblNpbXBsZU1vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICB0ZXN0TmFtZTogc3RyaW5nO1xyXG4gICAgdGVzdElkOiBzdHJpbmc7XHJcbiAgICBpc0ZpbmlzaGVkOiBib29sZWFuO1xyXG4gICAgc3RhcnRlZE9uVXRjOiBzdHJpbmc7IC8qIERhdGUgKi9cclxuICAgIGZpbmlzaGVkT25VdGM6IHN0cmluZyB8IG51bGw7IC8qIERhdGUgKi9cclxufVxyXG5cclxuZXhwb3J0IGVudW0gQW5zd2VyVmFsaWRhdGlvblJlc3VsdFR5cGUge1xyXG4gICAgTmVlZFRvQ2hlY2tCeVlvdXJTZWxmID0gJ05lZWRUb0NoZWNrQnlZb3VyU2VsZicsXHJcbiAgICBOb3RDb3JyZWN0QW5zd2VyID0gJ05vdENvcnJlY3RBbnN3ZXInLFxyXG4gICAgUGFydGlhbGx5Q29ycmVjdEFuc3dlciA9ICdQYXJ0aWFsbHlDb3JyZWN0QW5zd2VyJyxcclxuICAgIENvcnJlY3RBbnN3ZXIgPSAnQ29ycmVjdEFuc3dlcicsXHJcbiAgICBJblByb2NjZXNzID0gJ0luUHJvY2Nlc3MnXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU29sdXRpb25XaXRoQW5zd2Vyc01vZGVsIHtcclxuICAgIHNvbHV0aW9uSWQ6IHN0cmluZztcclxuICAgIGFuc3dlcnM6IEFycmF5PFF1ZXN0aW9uQW5zd2VyPjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdHVkZW50VGVzdFNvbHV0aW9uTW9kZWwge1xyXG4gICAgc3R1ZGVudElkOiBzdHJpbmc7XHJcbiAgICBzb2x1dGlvbklkOiBzdHJpbmc7XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgaGFzQ3VyYXRvclZhbGlkYXRpb246IGJvb2xlYW47XHJcbiAgICBjYW5DaGVja1NpbmdsZVF1ZXN0aW9uOiBib29sZWFuO1xyXG4gICAgc3RhcnRlZE9uVXRjOiBzdHJpbmc7IC8qIERhdGUgKi9cclxuICAgIGZpbmlzaGVkT25VdGM6IHN0cmluZyB8IG51bGw7IC8qIERhdGUgKi9cclxuICAgIGlzRmluaXNoZWQ6IGJvb2xlYW47XHJcbiAgICBzb2x1dGlvbjogU3R1ZGVudFRlc3RTb2x1dGlvbkRhdGFNb2RlbDtcclxuICAgIHRlc3Q6IFRlc3RNb2RlbDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvbkRhdGFNb2RlbCB7XHJcbiAgICAvKipcclxuICAgICAqINCV0YHRgtGMINC70Lgg0LLQvtC/0YDQvtGB0YssINC60L7RgtC+0YDRi9C1INC90LDRhdC+0LTRj9GC0YHRjyDQsiDQv9GA0L7RhtC10YHRgdC1INGA0LDRgdGH0ZHRgtCwINGA0LXQt9GD0LvRjNGC0LDRgtCwXHJcbiAgICAqL1xyXG4gICAgaGFzQW5zd2Vyc0luUHJvY2Nlc3M6IGJvb2xlYW47XHJcbiAgICBhbnN3ZXJzOiBBcnJheTxRdWVzdGlvbkFuc3dlcldpdGhSZXN1bHQ+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRlc3RNb2RlbCB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgcXVlc3Rpb25zOiBBcnJheTxUZXN0UXVlc3Rpb25Nb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVzdFF1ZXN0aW9uTW9kZWwge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICB0aXRsZUJvZHlNYXJrVXA6IHN0cmluZztcclxuICAgIGhlbHBCb2R5TWFya1VwOiBzdHJpbmc7XHJcbiAgICBhbnN3ZXJFeHBsYW5hdGlvbk1hcmtVcDogc3RyaW5nO1xyXG4gICAgdGl0bGVCb2R5TWFya1VwTW9iaWxlOiBzdHJpbmc7XHJcbiAgICBoZWxwQm9keU1hcmtVcE1vYmlsZTogc3RyaW5nO1xyXG4gICAgYW5zd2VyRXhwbGFuYXRpb25NYXJrVXBNb2JpbGU6IHN0cmluZztcclxuICAgIHR5cGU6IFRlc3RRdWVzdGlvblR5cGU7XHJcbiAgICBzZWxlY3RSaWdodEFuc3dlck9yQW5zd2Vyc0RhdGE6IFNlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzUXVlc3Rpb25EYXRhO1xyXG4gICAgdHlwZVJpZ2h0QW5zd2VyUXVlc3Rpb25EYXRhOiBUeXBlUmlnaHRBbnN3ZXJRdWVzdGlvbkRhdGE7XHJcbiAgICB0eXBlQW5zd2VyV2l0aEVycm9yc0RhdGE6IFR5cGVBbnN3ZXJXaXRoRXJyb3JzUXVlc3Rpb25EYXRhO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVBbnN3ZXJXaXRoRXJyb3JzUXVlc3Rpb25EYXRhIHtcclxuICAgIHJpZ2h0QW5zd2VyOiBzdHJpbmc7XHJcbiAgICBpZ25vcmVUZXh0T3JkZXI6IGJvb2xlYW47XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRlc3RXaXRoQWN0aXZlU29sdXRpb25Nb2RlbCB7XHJcbiAgICB0ZXN0SWQ6IHN0cmluZztcclxuICAgIGFjdGl2ZVNvbHV0aW9uSWQ6IHN0cmluZztcclxuICAgIHRlc3Q6IFRlc3RNb2RlbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbkFuc3dlciB7XHJcbiAgICBxdWVzdGlvbklkOiBzdHJpbmc7XHJcbiAgICBhbnN3ZXJPckFuc3dlcnM6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbkFuc3dlcldpdGhSZXN1bHQge1xyXG4gICAgaXNDaGVja2VkOiBib29sZWFuO1xyXG4gICAgcXVlc3Rpb25JZDogc3RyaW5nO1xyXG4gICAgYW5zd2VyT3JBbnN3ZXJzOiBzdHJpbmc7XHJcbiAgICBwb2ludHNWYWxpZGF0aW9uOiBRdWVzdGlvblBvaW50c1ZhbGlkYXRpb25Nb2RlbDtcclxuICAgIHJlc3VsdFR5cGU6IEFuc3dlclZhbGlkYXRpb25SZXN1bHRUeXBlO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXN0aW9uUG9pbnRzVmFsaWRhdGlvbk1vZGVsIHtcclxuICAgIGVycm9yT2NjdXJlZDogYm9vbGVhbjtcclxuICAgIGluUHJvY2Nlc3M6IGJvb2xlYW47XHJcbiAgICBhbnN3ZXJQb2ludHM6IG51bWJlcjtcclxuICAgIHF1ZXN0aW9uVG90YWxQb2ludHM6IG51bWJlcjtcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBpc1ZhbGlkYXRlZDogYm9vbGVhbjtcclxuICAgIHNvdXJjZVR5cGU6IFF1ZXN0aW9uVmFsaWRhdGlvblNvdXJjZVR5cGU7XHJcbiAgICB2YWxpZGF0b3JJZDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzUXVlc3Rpb25EYXRhIHtcclxuICAgIHNlbGVjdFJpZ2h0QW5zd2VyVGl0bGU6IHN0cmluZztcclxuICAgIHJpZ2h0QW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgICBhbnN3ZXJzOiBBcnJheTxBbnN3ZXI+
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1zb2x1dGlvbi1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy90ZXN0LXNvbHV0aW9uLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQkEsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUN4Qiw2RUFBeUQsQ0FBQTtJQUN6RCx1REFBbUMsQ0FBQTtJQUNuQyxxREFBaUMsQ0FBQTtJQUNqQyxpRUFBNkMsQ0FBQTtBQUNqRCxDQUFDLEVBTFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUszQjtBQXdERCxNQUFNLENBQU4sSUFBWSwwQkFNWDtBQU5ELFdBQVksMEJBQTBCO0lBQ2xDLDZFQUErQyxDQUFBO0lBQy9DLG1FQUFxQyxDQUFBO0lBQ3JDLCtFQUFpRCxDQUFBO0lBQ2pELDZEQUErQixDQUFBO0lBQy9CLHVEQUF5QixDQUFBO0FBQzdCLENBQUMsRUFOVywwQkFBMEIsS0FBMUIsMEJBQTBCLFFBTXJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ291cnNlVGhlbWVJdGVtTW9kZWwgfSBmcm9tIFwiLi9jb3Vyc2UtbW9kZWxzXCI7XHJcbmltcG9ydCB7IFF1ZXN0aW9uVmFsaWRhdGlvblNvdXJjZVR5cGUgfSBmcm9tIFwiLi9zb2x1dGlvbi12YWxpZGF0aW9uLW1vZGVsc1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hTdHVkZW50VGVzdFNvbHV0aW9ucyB7XHJcbiAgICBpc0ZpbmlzaGVkOiBib29sZWFuIHwgbnVsbDtcclxuICAgIHN0dWRlbnRJZDogc3RyaW5nO1xyXG4gICAgY291bnQ6IG51bWJlciB8IG51bGw7XHJcbiAgICBvZmZTZXQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUZXN0U29sdXRpb25Db3Vyc2VEYXRhIHtcclxuICAgIHNvbHV0aW9uSWQ6IHN0cmluZztcclxuICAgIGNvdXJzZVRoZW1lSXRlbUlkOiBzdHJpbmc7XHJcbiAgICBjb3Vyc2VUaGVtZUl0ZW1JbmRleDogbnVtYmVyO1xyXG4gICAgY291cnNlVGhlbWVJZDogc3RyaW5nO1xyXG4gICAgY291cnNlVGhlbWVOYW1lOiBzdHJpbmc7XHJcbiAgICBjb3Vyc2VOYW1lOiBzdHJpbmc7XHJcbiAgICBjb3Vyc2VJZDogc3RyaW5nO1xyXG4gICAgbmV4dEl0ZW06IENvdXJzZVRoZW1lSXRlbU1vZGVsO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBUZXN0UXVlc3Rpb25UeXBlIHtcclxuICAgIFNlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzID0gJ1NlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzJyxcclxuICAgIFR5cGVSaWdodEFuc3dlciA9ICdUeXBlUmlnaHRBbnN3ZXInLFxyXG4gICAgRGV0YWlsZWRBbnN3ZXIgPSAnRGV0YWlsZWRBbnN3ZXInLFxyXG4gICAgVHlwZUFuc3dlcldpdGhFcnJvcnMgPSAnVHlwZUFuc3dlcldpdGhFcnJvcnMnXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU29sdXRpb25XaXRoQW5zd2VyTW9kZWwge1xyXG4gICAgc29sdXRpb25JZDogc3RyaW5nO1xyXG4gICAgYW5zd2VyOiBRdWVzdGlvbkFuc3dlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdHVkZW50VGVzdFNvbHV0aW9uV2l0aENoYXRJbmZvIHtcclxuICAgIHNvbHV0aW9uOiBTdHVkZW50VGVzdFNvbHV0aW9uU2ltcGxlTW9kZWw7XHJcbiAgICBzeXN0ZW1WYWxpZGF0aW9uOiBUZXN0U29sdXRpb25TeXN0ZW1WYWxpZGF0aW9uTW9kZWw7XHJcbiAgICB1bnJlYWRNZXNzYWdlc0NvdW50OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVzdFNvbHV0aW9uU3lzdGVtVmFsaWRhdGlvbk1vZGVsIHtcclxuICAgIHN0dWRlbnRUb3RhbFBvaW50czogbnVtYmVyO1xyXG4gICAgc3R1ZGVudFByb2dyZXNzUGVyY2VudHM6IG51bWJlcjtcclxuICAgIG1heFRvdGFsUG9pbnRzOiBudW1iZXI7XHJcbiAgICBxdWVzdGlvbnNDb3VudDogbnVtYmVyO1xyXG4gICAgdmFsaWRhdGVkUXVlc3Rpb25zQ291bnQ6IG51bWJlcjtcclxuICAgIGhhc1JpZ2h0QW5zd2VyUXVlc3Rpb25zQ291bnQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdGFydFNvbHV0aW9uRnJvbURpcmVjdG9yeSB7XHJcbiAgICB3b3JrU3BhY2VJZDogc3RyaW5nO1xyXG4gICAgZGlyZWN0b3J5SWQ6IHN0cmluZztcclxuICAgIHVzZUZpbHRlcjogYm9vbGVhbjtcclxuICAgIGNhbkNoZWNrU2luZ2xlUXVlc3Rpb246IGJvb2xlYW47XHJcbiAgICBmaWx0ZXI6IFF1ZXN0aW9uc0ZpbHRlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbnNGaWx0ZXIge1xyXG4gICAgdHlwZXM6IEFycmF5PFRlc3RRdWVzdGlvblR5cGU+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFN0YXJ0VGVzdFNvbHV0aW9uQnlUZXN0SWQge1xyXG4gICAgdGVzdElkOiBzdHJpbmc7XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgY2FuQ2hlY2tTaW5nbGVRdWVzdGlvbjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hNeVRlc3RTb2x1dGlvbnMge1xyXG4gICAgaXNGaW5pc2hlZDogYm9vbGVhbiB8IG51bGw7XHJcbiAgICB0ZXN0SWQ6IHN0cmluZztcclxuICAgIGNvdW50OiBudW1iZXIgfCBudWxsO1xyXG4gICAgb2ZmU2V0OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvblNpbXBsZU1vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICB0ZXN0TmFtZTogc3RyaW5nO1xyXG4gICAgdGVzdElkOiBzdHJpbmc7XHJcbiAgICBpc0ZpbmlzaGVkOiBib29sZWFuO1xyXG4gICAgc3RhcnRlZE9uVXRjOiBzdHJpbmc7IC8qIERhdGUgKi9cclxuICAgIGZpbmlzaGVkT25VdGM6IHN0cmluZyB8IG51bGw7IC8qIERhdGUgKi9cclxufVxyXG5cclxuZXhwb3J0IGVudW0gQW5zd2VyVmFsaWRhdGlvblJlc3VsdFR5cGUge1xyXG4gICAgTmVlZFRvQ2hlY2tCeVlvdXJTZWxmID0gJ05lZWRUb0NoZWNrQnlZb3VyU2VsZicsXHJcbiAgICBOb3RDb3JyZWN0QW5zd2VyID0gJ05vdENvcnJlY3RBbnN3ZXInLFxyXG4gICAgUGFydGlhbGx5Q29ycmVjdEFuc3dlciA9ICdQYXJ0aWFsbHlDb3JyZWN0QW5zd2VyJyxcclxuICAgIENvcnJlY3RBbnN3ZXIgPSAnQ29ycmVjdEFuc3dlcicsXHJcbiAgICBJblByb2NjZXNzID0gJ0luUHJvY2Nlc3MnXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU29sdXRpb25XaXRoQW5zd2Vyc01vZGVsIHtcclxuICAgIHNvbHV0aW9uSWQ6IHN0cmluZztcclxuICAgIGFuc3dlcnM6IEFycmF5PFF1ZXN0aW9uQW5zd2VyPjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdHVkZW50VGVzdFNvbHV0aW9uTW9kZWwge1xyXG4gICAgc3R1ZGVudElkOiBzdHJpbmc7XHJcbiAgICBzb2x1dGlvbklkOiBzdHJpbmc7XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgaGFzQ3VyYXRvclZhbGlkYXRpb246IGJvb2xlYW47XHJcbiAgICBjYW5DaGVja1NpbmdsZVF1ZXN0aW9uOiBib29sZWFuO1xyXG4gICAgc3RhcnRlZE9uVXRjOiBzdHJpbmc7IC8qIERhdGUgKi9cclxuICAgIGZpbmlzaGVkT25VdGM6IHN0cmluZyB8IG51bGw7IC8qIERhdGUgKi9cclxuICAgIGlzRmluaXNoZWQ6IGJvb2xlYW47XHJcbiAgICBzb2x1dGlvbjogU3R1ZGVudFRlc3RTb2x1dGlvbkRhdGFNb2RlbDtcclxuICAgIHRlc3Q6IFRlc3RNb2RlbDtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvbkRhdGFNb2RlbCB7XHJcbiAgICAvKipcclxuICAgICAqINCV0YHRgtGMINC70Lgg0LLQvtC/0YDQvtGB0YssINC60L7RgtC+0YDRi9C1INC90LDRhdC+0LTRj9GC0YHRjyDQsiDQv9GA0L7RhtC10YHRgdC1INGA0LDRgdGH0ZHRgtCwINGA0LXQt9GD0LvRjNGC0LDRgtCwXHJcbiAgICAqL1xyXG4gICAgaGFzQW5zd2Vyc0luUHJvY2Nlc3M6IGJvb2xlYW47XHJcbiAgICBhbnN3ZXJzOiBBcnJheTxRdWVzdGlvbkFuc3dlcldpdGhSZXN1bHQ+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRlc3RNb2RlbCB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgcXVlc3Rpb25zOiBBcnJheTxUZXN0UXVlc3Rpb25Nb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVzdFF1ZXN0aW9uTW9kZWwge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICB0aXRsZUJvZHlNYXJrVXA6IHN0cmluZztcclxuICAgIGhlbHBCb2R5TWFya1VwOiBzdHJpbmc7XHJcbiAgICBhbnN3ZXJFeHBsYW5hdGlvbk1hcmtVcDogc3RyaW5nO1xyXG4gICAgdGl0bGVCb2R5TWFya1VwTW9iaWxlOiBzdHJpbmc7XHJcbiAgICBoZWxwQm9keU1hcmtVcE1vYmlsZTogc3RyaW5nO1xyXG4gICAgYW5zd2VyRXhwbGFuYXRpb25NYXJrVXBNb2JpbGU6IHN0cmluZztcclxuICAgIHR5cGU6IFRlc3RRdWVzdGlvblR5cGU7XHJcbiAgICBzZWxlY3RSaWdodEFuc3dlck9yQW5zd2Vyc0RhdGE6IFNlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzUXVlc3Rpb25EYXRhO1xyXG4gICAgdHlwZVJpZ2h0QW5zd2VyUXVlc3Rpb25EYXRhOiBUeXBlUmlnaHRBbnN3ZXJRdWVzdGlvbkRhdGE7XHJcbiAgICB0eXBlQW5zd2VyV2l0aEVycm9yc0RhdGE6IFR5cGVBbnN3ZXJXaXRoRXJyb3JzUXVlc3Rpb25EYXRhO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVBbnN3ZXJXaXRoRXJyb3JzUXVlc3Rpb25EYXRhIHtcclxuICAgIHJpZ2h0QW5zd2VyOiBzdHJpbmc7XHJcbiAgICBpZ25vcmVUZXh0T3JkZXI6IGJvb2xlYW47XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRlc3RXaXRoQWN0aXZlU29sdXRpb25Nb2RlbCB7XHJcbiAgICB0ZXN0SWQ6IHN0cmluZztcclxuICAgIGFjdGl2ZVNvbHV0aW9uSWQ6IHN0cmluZztcclxuICAgIHRlc3Q6IFRlc3RNb2RlbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbkFuc3dlciB7XHJcbiAgICBxdWVzdGlvbklkOiBzdHJpbmc7XHJcbiAgICBhbnN3ZXJPckFuc3dlcnM6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbkFuc3dlcldpdGhSZXN1bHQge1xyXG4gICAgaXNDaGVja2VkOiBib29sZWFuO1xyXG4gICAgcXVlc3Rpb25JZDogc3RyaW5nO1xyXG4gICAgYW5zd2VyT3JBbnN3ZXJzOiBzdHJpbmc7XHJcbiAgICBwb2ludHNWYWxpZGF0aW9uOiBRdWVzdGlvblBvaW50c1ZhbGlkYXRpb25Nb2RlbDtcclxuICAgIHJlc3VsdFR5cGU6IEFuc3dlclZhbGlkYXRpb25SZXN1bHRUeXBlO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXN0aW9uUG9pbnRzVmFsaWRhdGlvbk1vZGVsIHtcclxuICAgIGVycm9yT2NjdXJlZDogYm9vbGVhbjtcclxuICAgIGluUHJvY2Nlc3M6IGJvb2xlYW47XHJcbiAgICBhbnN3ZXJQb2ludHM6IG51bWJlcjtcclxuICAgIHF1ZXN0aW9uVG90YWxQb2ludHM6IG51bWJlcjtcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBpc1ZhbGlkYXRlZDogYm9vbGVhbjtcclxuICAgIHNvdXJjZVR5cGU6IFF1ZXN0aW9uVmFsaWRhdGlvblNvdXJjZVR5cGU7XHJcbiAgICB2YWxpZGF0b3JJZDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdFJpZ2h0QW5zd2VyT3JBbnN3ZXJzUXVlc3Rpb25EYXRhIHtcclxuICAgIHNlbGVjdFJpZ2h0QW5zd2VyVGl0bGU6IHN0cmluZztcclxuICAgIHJpZ2h0QW5zd2Vyc0NvdW50OiBudW1iZXI7XHJcbiAgICBhbnN3ZXJzOiBBcnJheTxBbnN3ZXI+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFuc3dlciB7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBpc1JpZ2h0QW5zd2VyOiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFR5cGVSaWdodEFuc3dlclF1ZXN0aW9uRGF0YSB7XHJcbiAgICBjYXNlSW5TZW5zaXRpdmU6IGJvb2xlYW47XHJcbiAgICByaWdodEFuc3dlcnM6IEFycmF5PHN0cmluZz47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvbkRldGFpbGVkTW9kZWwge1xyXG4gICAgc29sdXRpb25JZDogc3RyaW5nO1xyXG4gICAgaGFzQW5zd2Vyc0luUHJvY2Nlc3M6IGJvb2xlYW47XHJcbiAgICBoYXNDdXJhdG9yVmFsaWRhdGlvbjogYm9vbGVhbjtcclxuICAgIGNhbkNoZWNrU2luZ2xlUXVlc3Rpb246IGJvb2xlYW47XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgc3R1ZGVudElkOiBzdHJpbmc7XHJcbiAgICBzdGFydGVkT25VdGM6IERhdGU7XHJcbiAgICBmaW5pc2hlZE9uVXRjOiBEYXRlIHwgbnVsbDtcclxuICAgIGlzRmluaXNoZWQ6IGJvb2xlYW47XHJcbiAgICB0ZXN0OiBTdHVkZW50VGVzdFNvbHV0aW9uRGV0YWlsZWRUZXN0TW9kZWw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvbkRldGFpbGVkVGVzdE1vZGVsIHtcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBxdWVzdGlvbnM6IEFycmF5PFN0dWRlbnRUZXN0U29sdXRpb25EZXRhaWxlZFRlc3RRdWVzdGlvbj47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudFRlc3RTb2x1dGlvbkRldGFpbGVkVGVzdFF1ZXN0aW9uIHtcclxuICAgIHF1ZXN0aW9uOiBUZXN0UXVlc3Rpb25Nb2RlbDtcclxuICAgIGFuc3dlcldpdGhWYWxpZGF0aW9uOiBRdWVzdGlvbkFuc3dlcldpdGhSZXN1bHQ7XHJcbiAgICBpc1F1ZXN0aW9uTGlrZWRCeVN0dWRlbnQ6IGJvb2xlYW47XHJcbn1cclxuIl19
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { OpenApiExtensions } from "../extensions";
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
import * as i1 from "@angular/common/http";
|
|
5
|
-
import * as i2 from "../extensions";
|
|
6
4
|
export class StudentGroupTestRelationQueryService {
|
|
7
5
|
getBaseUrl() {
|
|
8
|
-
return
|
|
6
|
+
return `${this._baseUrl}api/tutor/student-group/tests`;
|
|
9
7
|
}
|
|
10
|
-
constructor(_httpClient,
|
|
8
|
+
constructor(_httpClient, baseUrl) {
|
|
11
9
|
this._httpClient = _httpClient;
|
|
12
|
-
this.
|
|
10
|
+
this._baseUrl = "";
|
|
11
|
+
this._baseUrl = baseUrl;
|
|
13
12
|
}
|
|
14
13
|
getById(studentGroupId, testId) {
|
|
15
|
-
return this._httpClient.get(this.getBaseUrl()
|
|
14
|
+
return this._httpClient.get(`${this.getBaseUrl()}/getById/${testId}/${studentGroupId}`);
|
|
16
15
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, deps: [{ token: i1.HttpClient }, { token:
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
17
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, providedIn: 'root' }); }
|
|
19
18
|
}
|
|
20
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, decorators: [{
|
|
@@ -22,5 +21,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
22
21
|
args: [{
|
|
23
22
|
providedIn: 'root',
|
|
24
23
|
}]
|
|
25
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
26
|
-
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
25
|
+
type: Inject,
|
|
26
|
+
args: ['BASE_URL']
|
|
27
|
+
}] }] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3R1ZGVudEdyb3VwVGVzdFJlbGF0aW9uUXVlcnlTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9zZXJ2aWNlcy9TdHVkZW50R3JvdXBUZXN0UmVsYXRpb25RdWVyeVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU1uRCxNQUFNLE9BQU8sb0NBQW9DO0lBRTdDLFVBQVU7UUFDTixPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsK0JBQStCLENBQUM7SUFDM0QsQ0FBQztJQUlELFlBQ3FCLFdBQXVCLEVBQ3BCLE9BQWU7UUFEbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFIM0IsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQU1uQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUM1QixDQUFDO0lBRUQsT0FBTyxDQUFDLGNBQXNCLEVBQUUsTUFBYztRQUMxQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUF3QyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsWUFBWSxNQUFNLElBQUksY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNuSSxDQUFDOzhHQWpCUSxvQ0FBb0MsNENBVWpDLFVBQVU7a0hBVmIsb0NBQW9DLGNBRmpDLE1BQU07OzJGQUVULG9DQUFvQztrQkFIaEQsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQVdRLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgU3R1ZGVudFRlc3RHcm91cFJlbGF0aW9uRGV0YWlsZWRNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHNcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0dWRlbnRHcm91cFRlc3RSZWxhdGlvblF1ZXJ5U2VydmljZSB7XHJcblxyXG4gICAgZ2V0QmFzZVVybCgpIHtcclxuICAgICAgICByZXR1cm4gYCR7dGhpcy5fYmFzZVVybH1hcGkvdHV0b3Ivc3R1ZGVudC1ncm91cC90ZXN0c2A7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBfYmFzZVVybDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9odHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgICAgIEBJbmplY3QoJ0JBU0VfVVJMJykgYmFzZVVybDogc3RyaW5nLFxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5fYmFzZVVybCA9IGJhc2VVcmw7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QnlJZChzdHVkZW50R3JvdXBJZDogc3RyaW5nLCB0ZXN0SWQ6IHN0cmluZykge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LmdldDxTdHVkZW50VGVzdEdyb3VwUmVsYXRpb25EZXRhaWxlZE1vZGVsPihgJHt0aGlzLmdldEJhc2VVcmwoKX0vZ2V0QnlJZC8ke3Rlc3RJZH0vJHtzdHVkZW50R3JvdXBJZH1gKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,26 +1,22 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { OpenApiExtensions } from "../extensions";
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
import * as i1 from "@angular/common/http";
|
|
5
|
-
import * as i2 from "../extensions";
|
|
6
4
|
export class TestSolutionQueryService {
|
|
7
|
-
|
|
8
|
-
return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/test-solution/query/');
|
|
9
|
-
}
|
|
10
|
-
constructor(_httpClient, _urlProvider) {
|
|
5
|
+
constructor(_httpClient, baseUrl) {
|
|
11
6
|
this._httpClient = _httpClient;
|
|
12
|
-
this.
|
|
7
|
+
this._baseUrl = "";
|
|
8
|
+
this._baseUrl = `${baseUrl}api/tutor/test-solution/query`;
|
|
13
9
|
}
|
|
14
10
|
searchByStudent(model) {
|
|
15
|
-
return this._httpClient.post(this.
|
|
11
|
+
return this._httpClient.post(`${this._baseUrl}/Search/By/Student`, model);
|
|
16
12
|
}
|
|
17
13
|
getCourseData(id) {
|
|
18
|
-
return this._httpClient.get(this.
|
|
14
|
+
return this._httpClient.get(`${this._baseUrl}/Get/By/Id/${id}/course-data`);
|
|
19
15
|
}
|
|
20
16
|
getSolutionById(id) {
|
|
21
|
-
return this._httpClient.get(this.
|
|
17
|
+
return this._httpClient.get(`${this._baseUrl}/Get/By/Id/${id}`);
|
|
22
18
|
}
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, deps: [{ token: i1.HttpClient }, { token:
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
24
20
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, providedIn: 'root' }); }
|
|
25
21
|
}
|
|
26
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, decorators: [{
|
|
@@ -28,5 +24,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
28
24
|
args: [{
|
|
29
25
|
providedIn: 'root',
|
|
30
26
|
}]
|
|
31
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
32
|
-
|
|
27
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
28
|
+
type: Inject,
|
|
29
|
+
args: ['BASE_URL']
|
|
30
|
+
}] }] });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVzdFNvbHV0aW9uUXVlcnlTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9zZXJ2aWNlcy9UZXN0U29sdXRpb25RdWVyeVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU9uRCxNQUFNLE9BQU8sd0JBQXdCO0lBSWpDLFlBQ3FCLFdBQXVCLEVBQ3BCLE9BQWU7UUFEbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFIM0IsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQU1uQyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsT0FBTywrQkFBK0IsQ0FBQztJQUM5RCxDQUFDO0lBRU0sZUFBZSxDQUFDLEtBQWlDO1FBQ3BELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQWlELEdBQUcsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDOUgsQ0FBQztJQUVNLGFBQWEsQ0FBQyxFQUFVO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQXlCLEdBQUcsSUFBSSxDQUFDLFFBQVEsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFTSxlQUFlLENBQUMsRUFBVTtRQUM3QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUEyQixHQUFHLElBQUksQ0FBQyxRQUFRLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDOzhHQXJCUSx3QkFBd0IsNENBTXJCLFVBQVU7a0hBTmIsd0JBQXdCLGNBRnJCLE1BQU07OzJGQUVULHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQU9RLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFNlYXJjaFN0dWRlbnRUZXN0U29sdXRpb25zLCBHZXRMaXN0UmVzdWx0LCBUZXN0U29sdXRpb25Db3Vyc2VEYXRhLCBTdHVkZW50VGVzdFNvbHV0aW9uV2l0aENoYXRJbmZvLCBTdHVkZW50VGVzdFNvbHV0aW9uTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXN0U29sdXRpb25RdWVyeVNlcnZpY2Uge1xyXG5cclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2VVcmw6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgICAgICBASW5qZWN0KCdCQVNFX1VSTCcpIGJhc2VVcmw6IHN0cmluZyxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuX2Jhc2VVcmwgPSBgJHtiYXNlVXJsfWFwaS90dXRvci90ZXN0LXNvbHV0aW9uL3F1ZXJ5YDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2VhcmNoQnlTdHVkZW50KG1vZGVsOiBTZWFyY2hTdHVkZW50VGVzdFNvbHV0aW9ucyk6IE9ic2VydmFibGU8R2V0TGlzdFJlc3VsdDxTdHVkZW50VGVzdFNvbHV0aW9uV2l0aENoYXRJbmZvPj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LnBvc3Q8R2V0TGlzdFJlc3VsdDxTdHVkZW50VGVzdFNvbHV0aW9uV2l0aENoYXRJbmZvPj4oYCR7dGhpcy5fYmFzZVVybH0vU2VhcmNoL0J5L1N0dWRlbnRgLCBtb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldENvdXJzZURhdGEoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8VGVzdFNvbHV0aW9uQ291cnNlRGF0YT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LmdldDxUZXN0U29sdXRpb25Db3Vyc2VEYXRhPihgJHt0aGlzLl9iYXNlVXJsfS9HZXQvQnkvSWQvJHtpZH0vY291cnNlLWRhdGFgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0U29sdXRpb25CeUlkKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFN0dWRlbnRUZXN0U29sdXRpb25Nb2RlbD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LmdldDxTdHVkZW50VGVzdFNvbHV0aW9uTW9kZWw+KGAke3RoaXMuX2Jhc2VVcmx9L0dldC9CeS9JZC8ke2lkfWApO1xyXG4gICAgfVxyXG59Il19
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { OpenApiExtensions } from "../../extensions";
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
import * as i1 from "@angular/common/http";
|
|
5
|
-
import * as i2 from "../../extensions";
|
|
6
4
|
export class OpenApiQuestionLikeService {
|
|
7
|
-
|
|
8
|
-
return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/open-api/question-like/');
|
|
9
|
-
}
|
|
10
|
-
constructor(_httpClient, _urlProvider) {
|
|
5
|
+
constructor(_httpClient, baseUrl) {
|
|
11
6
|
this._httpClient = _httpClient;
|
|
12
|
-
this.
|
|
7
|
+
this._baseUrl = "";
|
|
8
|
+
this._baseUrl = `${baseUrl}api/tutor/open-api/question-like`;
|
|
13
9
|
}
|
|
14
10
|
search(model) {
|
|
15
|
-
return this._httpClient.post(this.
|
|
11
|
+
return this._httpClient.post(`${this._baseUrl}/search`, model);
|
|
16
12
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, deps: [{ token: i1.HttpClient }, { token:
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
14
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, providedIn: 'root' }); }
|
|
19
15
|
}
|
|
20
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, decorators: [{
|
|
@@ -22,5 +18,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
22
18
|
args: [{
|
|
23
19
|
providedIn: 'root',
|
|
24
20
|
}]
|
|
25
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
26
|
-
|
|
21
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
22
|
+
type: Inject,
|
|
23
|
+
args: ['BASE_URL']
|
|
24
|
+
}] }] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlbkFwaVF1ZXN0aW9uTGlrZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL3NlcnZpY2VzL29wZW4tYXBpL09wZW5BcGlRdWVzdGlvbkxpa2VTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNbkQsTUFBTSxPQUFPLDBCQUEwQjtJQUluQyxZQUNxQixXQUF1QixFQUNwQixPQUFlO1FBRGxCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBSDNCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFNbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLE9BQU8sa0NBQWtDLENBQUM7SUFDakUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUE2QjtRQUN2QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFtQyxHQUFHLElBQUksQ0FBQyxRQUFRLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRyxDQUFDOzhHQWJRLDBCQUEwQiw0Q0FNdkIsVUFBVTtrSEFOYiwwQkFBMEIsY0FGdkIsTUFBTTs7MkZBRVQsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBT1EsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBHZXRMaXN0UmVzdWx0LCBTZWFyY2hRdWVzdGlvbnNCeUxpa2VzLCBUZXN0UXVlc3Rpb25Nb2RlbCB9IGZyb20gXCIuLi8uLi9tb2RlbHNcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIE9wZW5BcGlRdWVzdGlvbkxpa2VTZXJ2aWNlIHtcclxuICAgIFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBfYmFzZVVybDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9odHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgICAgIEBJbmplY3QoJ0JBU0VfVVJMJykgYmFzZVVybDogc3RyaW5nLFxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5fYmFzZVVybCA9IGAke2Jhc2VVcmx9YXBpL3R1dG9yL29wZW4tYXBpL3F1ZXN0aW9uLWxpa2VgO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZWFyY2gobW9kZWw6IFNlYXJjaFF1ZXN0aW9uc0J5TGlrZXMpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5wb3N0PEdldExpc3RSZXN1bHQ8VGVzdFF1ZXN0aW9uTW9kZWw+PihgJHt0aGlzLl9iYXNlVXJsfS9zZWFyY2hgLCBtb2RlbCk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { OpenApiExtensions } from "../../extensions";
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
import * as i1 from "@angular/common/http";
|
|
5
|
-
import * as i2 from "../../extensions";
|
|
6
4
|
export class OpenApiTestSolutionService {
|
|
7
|
-
|
|
8
|
-
return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/open-api/test-soluton/');
|
|
9
|
-
}
|
|
10
|
-
constructor(_httpClient, _urlProvider) {
|
|
5
|
+
constructor(_httpClient, baseUrl) {
|
|
11
6
|
this._httpClient = _httpClient;
|
|
12
|
-
this.
|
|
7
|
+
this._baseUrl = "";
|
|
8
|
+
this._baseUrl = `${this._baseUrl}api/tutor/open-api/test-soluton`;
|
|
13
9
|
}
|
|
14
10
|
getById(id) {
|
|
15
|
-
return this._httpClient.get(this.
|
|
11
|
+
return this._httpClient.get(`${this._baseUrl}/${id}`);
|
|
16
12
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, deps: [{ token: i1.HttpClient }, { token:
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
14
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, providedIn: 'root' }); }
|
|
19
15
|
}
|
|
20
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, decorators: [{
|
|
@@ -22,5 +18,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
22
18
|
args: [{
|
|
23
19
|
providedIn: 'root',
|
|
24
20
|
}]
|
|
25
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
26
|
-
|
|
21
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
22
|
+
type: Inject,
|
|
23
|
+
args: ['BASE_URL']
|
|
24
|
+
}] }] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlbkFwaVRlc3RTb2x1dGlvblNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL3NlcnZpY2VzL29wZW4tYXBpL09wZW5BcGlUZXN0U29sdXRpb25TZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNbkQsTUFBTSxPQUFPLDBCQUEwQjtJQUluQyxZQUNxQixXQUF1QixFQUNwQixPQUFlO1FBRGxCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBSDNCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFNbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLGlDQUFpQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxPQUFPLENBQUMsRUFBVTtRQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUEyQixHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwRixDQUFDOzhHQWJRLDBCQUEwQiw0Q0FNdkIsVUFBVTtrSEFOYiwwQkFBMEIsY0FGdkIsTUFBTTs7MkZBRVQsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBT1EsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBTdHVkZW50VGVzdFNvbHV0aW9uTW9kZWwgfSBmcm9tIFwiLi4vLi4vbW9kZWxzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcGVuQXBpVGVzdFNvbHV0aW9uU2VydmljZSB7XHJcbiAgICBcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Jhc2VVcmw6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgICAgICBASW5qZWN0KCdCQVNFX1VSTCcpIGJhc2VVcmw6IHN0cmluZyxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuX2Jhc2VVcmwgPSBgJHt0aGlzLl9iYXNlVXJsfWFwaS90dXRvci9vcGVuLWFwaS90ZXN0LXNvbHV0b25gO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRCeUlkKGlkOiBzdHJpbmcpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5nZXQ8U3R1ZGVudFRlc3RTb2x1dGlvbk1vZGVsPihgJHt0aGlzLl9iYXNlVXJsfS8ke2lkfWApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -4,6 +4,5 @@
|
|
|
4
4
|
export * from './lib/tutor-logic.module';
|
|
5
5
|
export * from './lib/services';
|
|
6
6
|
export * from './lib/models';
|
|
7
|
-
export * from './lib/extensions';
|
|
8
7
|
export * from './lib/consts';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3R1dG9yLWxvZ2ljL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0dXRvci1sb2dpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3R1dG9yLWxvZ2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RzJyJdfQ==
|
package/fesm2022/tutor-logic.mjs
CHANGED
|
@@ -184,68 +184,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
184
184
|
args: ['BASE_URL']
|
|
185
185
|
}] }] });
|
|
186
186
|
|
|
187
|
-
class OpenApiExtensions {
|
|
188
|
-
static buildOpenApiUrl(urlProvider, adding) {
|
|
189
|
-
return urlProvider.getUrl() + adding;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
class OpenApiUrlProvider {
|
|
194
|
-
constructor(_httpClient, baseUrl) {
|
|
195
|
-
this._httpClient = _httpClient;
|
|
196
|
-
this._urlValue = "";
|
|
197
|
-
this._data = {
|
|
198
|
-
useOpenApiServer: false,
|
|
199
|
-
openApiUrl: ""
|
|
200
|
-
};
|
|
201
|
-
this._urlValue = baseUrl;
|
|
202
|
-
this.getSettings(baseUrl);
|
|
203
|
-
}
|
|
204
|
-
getSettings(baseUrl) {
|
|
205
|
-
this._httpClient.get(baseUrl + "api/settings/open-api/get").subscribe(data => {
|
|
206
|
-
if (data.useOpenApiServer && data.openApiUrl) {
|
|
207
|
-
this._data = data;
|
|
208
|
-
this._urlValue = data.openApiUrl;
|
|
209
|
-
}
|
|
210
|
-
});
|
|
211
|
-
}
|
|
212
|
-
getData() {
|
|
213
|
-
return this._data;
|
|
214
|
-
}
|
|
215
|
-
getUrl() {
|
|
216
|
-
return this._urlValue;
|
|
217
|
-
}
|
|
218
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiUrlProvider, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
219
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiUrlProvider, providedIn: 'root' }); }
|
|
220
|
-
}
|
|
221
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiUrlProvider, decorators: [{
|
|
222
|
-
type: Injectable,
|
|
223
|
-
args: [{
|
|
224
|
-
providedIn: 'root',
|
|
225
|
-
}]
|
|
226
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
227
|
-
type: Inject,
|
|
228
|
-
args: ['BASE_URL']
|
|
229
|
-
}] }] });
|
|
230
|
-
|
|
231
187
|
class TestSolutionQueryService {
|
|
232
|
-
|
|
233
|
-
return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/test-solution/query/');
|
|
234
|
-
}
|
|
235
|
-
constructor(_httpClient, _urlProvider) {
|
|
188
|
+
constructor(_httpClient, baseUrl) {
|
|
236
189
|
this._httpClient = _httpClient;
|
|
237
|
-
this.
|
|
190
|
+
this._baseUrl = "";
|
|
191
|
+
this._baseUrl = `${baseUrl}api/tutor/test-solution/query`;
|
|
238
192
|
}
|
|
239
193
|
searchByStudent(model) {
|
|
240
|
-
return this._httpClient.post(this.
|
|
194
|
+
return this._httpClient.post(`${this._baseUrl}/Search/By/Student`, model);
|
|
241
195
|
}
|
|
242
196
|
getCourseData(id) {
|
|
243
|
-
return this._httpClient.get(this.
|
|
197
|
+
return this._httpClient.get(`${this._baseUrl}/Get/By/Id/${id}/course-data`);
|
|
244
198
|
}
|
|
245
199
|
getSolutionById(id) {
|
|
246
|
-
return this._httpClient.get(this.
|
|
200
|
+
return this._httpClient.get(`${this._baseUrl}/Get/By/Id/${id}`);
|
|
247
201
|
}
|
|
248
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, deps: [{ token: i1.HttpClient }, { token:
|
|
202
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
249
203
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, providedIn: 'root' }); }
|
|
250
204
|
}
|
|
251
205
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: TestSolutionQueryService, decorators: [{
|
|
@@ -253,7 +207,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
253
207
|
args: [{
|
|
254
208
|
providedIn: 'root',
|
|
255
209
|
}]
|
|
256
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
210
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
211
|
+
type: Inject,
|
|
212
|
+
args: ['BASE_URL']
|
|
213
|
+
}] }] });
|
|
257
214
|
|
|
258
215
|
/**
|
|
259
216
|
Методы контроллера Tutor.Api.Controllers.TestSolutions.TestSolutionResultController
|
|
@@ -318,17 +275,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
318
275
|
}] }] });
|
|
319
276
|
|
|
320
277
|
class OpenApiQuestionLikeService {
|
|
321
|
-
|
|
322
|
-
return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/open-api/question-like/');
|
|
323
|
-
}
|
|
324
|
-
constructor(_httpClient, _urlProvider) {
|
|
278
|
+
constructor(_httpClient, baseUrl) {
|
|
325
279
|
this._httpClient = _httpClient;
|
|
326
|
-
this.
|
|
280
|
+
this._baseUrl = "";
|
|
281
|
+
this._baseUrl = `${baseUrl}api/tutor/open-api/question-like`;
|
|
327
282
|
}
|
|
328
283
|
search(model) {
|
|
329
|
-
return this._httpClient.post(this.
|
|
284
|
+
return this._httpClient.post(`${this._baseUrl}/search`, model);
|
|
330
285
|
}
|
|
331
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, deps: [{ token: i1.HttpClient }, { token:
|
|
286
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
332
287
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, providedIn: 'root' }); }
|
|
333
288
|
}
|
|
334
289
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiQuestionLikeService, decorators: [{
|
|
@@ -336,20 +291,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
336
291
|
args: [{
|
|
337
292
|
providedIn: 'root',
|
|
338
293
|
}]
|
|
339
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
294
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
295
|
+
type: Inject,
|
|
296
|
+
args: ['BASE_URL']
|
|
297
|
+
}] }] });
|
|
340
298
|
|
|
341
299
|
class OpenApiTestSolutionService {
|
|
342
|
-
|
|
343
|
-
return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/open-api/test-soluton/');
|
|
344
|
-
}
|
|
345
|
-
constructor(_httpClient, _urlProvider) {
|
|
300
|
+
constructor(_httpClient, baseUrl) {
|
|
346
301
|
this._httpClient = _httpClient;
|
|
347
|
-
this.
|
|
302
|
+
this._baseUrl = "";
|
|
303
|
+
this._baseUrl = `${this._baseUrl}api/tutor/open-api/test-soluton`;
|
|
348
304
|
}
|
|
349
305
|
getById(id) {
|
|
350
|
-
return this._httpClient.get(this.
|
|
306
|
+
return this._httpClient.get(`${this._baseUrl}/${id}`);
|
|
351
307
|
}
|
|
352
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, deps: [{ token: i1.HttpClient }, { token:
|
|
308
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
353
309
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, providedIn: 'root' }); }
|
|
354
310
|
}
|
|
355
311
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiTestSolutionService, decorators: [{
|
|
@@ -357,7 +313,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
357
313
|
args: [{
|
|
358
314
|
providedIn: 'root',
|
|
359
315
|
}]
|
|
360
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
316
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
317
|
+
type: Inject,
|
|
318
|
+
args: ['BASE_URL']
|
|
319
|
+
}] }] });
|
|
361
320
|
|
|
362
321
|
class StudentTestSolutionService {
|
|
363
322
|
constructor(_httpClient, baseUrl) {
|
|
@@ -414,16 +373,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
414
373
|
|
|
415
374
|
class StudentGroupTestRelationQueryService {
|
|
416
375
|
getBaseUrl() {
|
|
417
|
-
return
|
|
376
|
+
return `${this._baseUrl}api/tutor/student-group/tests`;
|
|
418
377
|
}
|
|
419
|
-
constructor(_httpClient,
|
|
378
|
+
constructor(_httpClient, baseUrl) {
|
|
420
379
|
this._httpClient = _httpClient;
|
|
421
|
-
this.
|
|
380
|
+
this._baseUrl = "";
|
|
381
|
+
this._baseUrl = baseUrl;
|
|
422
382
|
}
|
|
423
383
|
getById(studentGroupId, testId) {
|
|
424
|
-
return this._httpClient.get(this.getBaseUrl()
|
|
384
|
+
return this._httpClient.get(`${this.getBaseUrl()}/getById/${testId}/${studentGroupId}`);
|
|
425
385
|
}
|
|
426
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, deps: [{ token: i1.HttpClient }, { token:
|
|
386
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
427
387
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, providedIn: 'root' }); }
|
|
428
388
|
}
|
|
429
389
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupTestRelationQueryService, decorators: [{
|
|
@@ -431,7 +391,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
|
|
|
431
391
|
args: [{
|
|
432
392
|
providedIn: 'root',
|
|
433
393
|
}]
|
|
434
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type:
|
|
394
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
395
|
+
type: Inject,
|
|
396
|
+
args: ['BASE_URL']
|
|
397
|
+
}] }] });
|
|
435
398
|
|
|
436
399
|
class CuratorMessageTemplateService {
|
|
437
400
|
getBaseControllerUrl() {
|
|
@@ -1017,5 +980,5 @@ class TutorRoles {
|
|
|
1017
980
|
* Generated bundle index. Do not edit.
|
|
1018
981
|
*/
|
|
1019
982
|
|
|
1020
|
-
export { AnswerValidationResultType, CourseDeadlineWarningService, CourseLandingPageQueryService, CourseOrderService, CourseShopWindowDetailedService, CourseThemeItemTestRestrictionService, CourseThemeItemTestRestrictionStudentService, CourseThemeItemType, CuratorMessageTemplateService,
|
|
983
|
+
export { AnswerValidationResultType, CourseDeadlineWarningService, CourseLandingPageQueryService, CourseOrderService, CourseShopWindowDetailedService, CourseThemeItemTestRestrictionService, CourseThemeItemTestRestrictionStudentService, CourseThemeItemType, CuratorMessageTemplateService, OpenApiQuestionLikeService, OpenApiTestSolutionService, QuestionValidationSourceType, StudentCourseViewService, StudentGroupEnterService, StudentGroupPaymentPlanQueryService, StudentGroupQueryService, StudentGroupTestRelationQueryService, StudentQueryService, StudentSubjectViewService, StudentTestSolutionQueryService, StudentTestSolutionService, StudentTestSolutionStartService, SubjectMenuItemType, SubjectMenuService, SubjectQueryService, SubjectsService, TestQuestionType, TestRestrictionValidationResultRuleType, TestSolutionDetailedQueryService, TestSolutionQueryService, TestSolutionResultService, TestsService, TutorAppConfigurationService, TutorCommonSettingsService, TutorLogicModule, TutorRoles };
|
|
1021
984
|
//# sourceMappingURL=tutor-logic.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tutor-logic.mjs","sources":["../../../projects/tutor-logic/src/lib/tutor-logic.module.ts","../../../projects/tutor-logic/src/lib/services/TestsService.ts","../../../projects/tutor-logic/src/lib/services/TutorCommonSettingsService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupQueryService.ts","../../../projects/tutor-logic/src/lib/services/StudentQueryService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupEnterService.ts","../../../projects/tutor-logic/src/lib/extensions/OpenApiExtensions.ts","../../../projects/tutor-logic/src/lib/extensions/OpenApiUrlProvider.ts","../../../projects/tutor-logic/src/lib/services/TestSolutionQueryService.ts","../../../projects/tutor-logic/src/lib/services/TestSolutionResultService.ts","../../../projects/tutor-logic/src/lib/services/StudentTestSolutionStartService.ts","../../../projects/tutor-logic/src/lib/services/open-api/OpenApiQuestionLikeService.ts","../../../projects/tutor-logic/src/lib/services/open-api/OpenApiTestSolutionService.ts","../../../projects/tutor-logic/src/lib/services/StudentTestSolutionService.ts","../../../projects/tutor-logic/src/lib/services/StudentTestSolutionQueryService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupTestRelationQueryService.ts","../../../projects/tutor-logic/src/lib/services/CuratorMessageTemplateService.ts","../../../projects/tutor-logic/src/lib/services/CourseDeadlineWarningService.ts","../../../projects/tutor-logic/src/lib/services/CourseThemeItemTestRestrictionService.ts","../../../projects/tutor-logic/src/lib/services/SubjectMenuService.ts","../../../projects/tutor-logic/src/lib/services/SubjectQueryService.ts","../../../projects/tutor-logic/src/lib/services/SubjectsService.ts","../../../projects/tutor-logic/src/lib/services/CourseThemeItemTestRestrictionStudentService.ts","../../../projects/tutor-logic/src/lib/services/StudentSubjectViewService.ts","../../../projects/tutor-logic/src/lib/services/StudentCourseViewService.ts","../../../projects/tutor-logic/src/lib/services/TestSolutionDetailedQueryService.ts","../../../projects/tutor-logic/src/lib/services/CourseLandingPageQueryService.ts","../../../projects/tutor-logic/src/lib/services/CourseOrderService.ts","../../../projects/tutor-logic/src/lib/services/CourseShopWindowDetailedService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupPaymentPlanQueryService.ts","../../../projects/tutor-logic/src/lib/services/TutorAppConfigurationService.ts","../../../projects/tutor-logic/src/lib/models/test-solution-models.ts","../../../projects/tutor-logic/src/lib/models/solution-validation-models.ts","../../../projects/tutor-logic/src/lib/models/course-models.ts","../../../projects/tutor-logic/src/lib/models/test-restriction-models.ts","../../../projects/tutor-logic/src/lib/models/subject.models.ts","../../../projects/tutor-logic/src/lib/consts/TutorRoles.ts","../../../projects/tutor-logic/src/public-api.ts","../../../projects/tutor-logic/src/tutor-logic.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\n\n@NgModule({\n declarations: [ \n ],\n imports: [\n ],\n exports: [\n ]\n})\nexport class TutorLogicModule { }\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BaseApiResponse, GetListResult, StudentGroupSimpleModel } from \"../models\";\r\nimport { TestSearchModel, CreateTest, EditTest } from \"../models/test-models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestsService {\r\n baseControllerUrl:string;\r\n \r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string){\r\n const adding = 'api/tutor/tests/';\r\n this.baseControllerUrl = baseUrl + adding;\r\n }\r\n\r\n public searchGroupRelationsInTest(model: TestSearchModel): Observable<GetListResult<StudentGroupSimpleModel>>{\r\n return this._httpClient.post<GetListResult<StudentGroupSimpleModel>>(this.baseControllerUrl + 'groups/search/in', model);\r\n }\r\n\r\n public create(model: CreateTest): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Create', model);\r\n }\r\n\r\n public edit(model: EditTest): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Edit', model);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse } from \"../models\";\r\nimport { SettingModel } from \"../models/setting-models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TutorCommonSettingsService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/settings/';\r\n }\r\n\r\n get(name: string) {\r\n return this._httpClient.get<SettingModel>(this.baseControllerUrl + 'get/' + name);\r\n }\r\n\r\n getCached(name: string) {\r\n return this._httpClient.get<SettingModel>(this.baseControllerUrl + 'get/' + name + '/cached');\r\n }\r\n\r\n set(model: SettingModel) {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'set', model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GetListResult, StudentGroupSimpleModel } from \"../models\";\r\nimport { SearchStudentGroups, StudentGroupDetailedModel, SearchStudentsInGroup, StudentInGroupSimpleModel, SearchStudentGroupsByStudentRequest, StudentGroupWithCourseProgressModel } from \"../models/group-models\";\r\n\r\n/**\r\n* Методы контроллера StudentGroupQueryController\r\n*/\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupQueryService {\r\n\r\n getBaseUrl() {\r\n return this._baseUrl + 'api/tutor/student-group';\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') private _baseUrl: string) {\r\n }\r\n\r\n /**\r\n * Поиск групп студентов\r\n */\r\n public search(model: SearchStudentGroups): Observable<GetListResult<StudentGroupSimpleModel>> {\r\n return this._httpClient.post<GetListResult<StudentGroupSimpleModel>>(`${this.getBaseUrl()}/query/search`, model);\r\n }\r\n\r\n public searchWithProgresses(model: SearchStudentGroupsByStudentRequest): Observable<GetListResult<StudentGroupWithCourseProgressModel>> {\r\n return this._httpClient.post<GetListResult<StudentGroupWithCourseProgressModel>>(`${this.getBaseUrl()}/query/search/with-progresses`, model);\r\n }\r\n\r\n /**\r\n * Получить группу по идентификатору\r\n * @param id идентификатор группы учеников\r\n * @returns группу учеников\r\n */\r\n public getById(id: string): Observable<StudentGroupDetailedModel> {\r\n return this._httpClient.get<StudentGroupDetailedModel>(`${this.getBaseUrl()}/query/by-id/${id}`);\r\n }\r\n\r\n public getByStudentId(id: string): Observable<StudentGroupSimpleModel[]> {\r\n return this._httpClient.get<StudentGroupSimpleModel[]>(`${this.getBaseUrl()}/by-student/${id}`);\r\n }\r\n\r\n /**\r\n * Получить список студентов в группе по фильтру\r\n * @param model модель для поиска\r\n * @returns список студентов\r\n */\r\n public getStudentsList(model: SearchStudentsInGroup): Observable<GetListResult<StudentInGroupSimpleModel>> {\r\n return this._httpClient.post<GetListResult<StudentInGroupSimpleModel>>(`${this.getBaseUrl()}/students/search`, model);\r\n }\r\n\r\n /**\r\n * Получить студента в группе\r\n * @param groupId идентификатор группы\r\n * @param studentId идентификатор студента\r\n * @returns \r\n */\r\n public getStudentById(groupId: string, studentId: string): Observable<StudentInGroupSimpleModel> {\r\n return this._httpClient.get<StudentInGroupSimpleModel>(`${this.getBaseUrl()}/students/get-by-id/${groupId}/${studentId}`);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GetListResult, SearchStudents, StudentSimpleModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentQueryService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student/query/';\r\n }\r\n\r\n public getById(id: string): Observable<StudentSimpleModel> {\r\n return this._httpClient.get<StudentSimpleModel>(this.baseControllerUrl + `ById/${id}`);\r\n }\r\n\r\n public getByTelegramId(telegramId: number): Observable<StudentSimpleModel> {\r\n return this._httpClient.get<StudentSimpleModel>(this.baseControllerUrl + `ByTelegramId/${telegramId}`);\r\n }\r\n\r\n public search(searchModel: SearchStudents): Observable<GetListResult<StudentSimpleModel>> {\r\n return this._httpClient.post<GetListResult<StudentSimpleModel>>(this.baseControllerUrl + 'Search', searchModel);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GetToGroupByCodeRequest, GetToGroupByCodeResponse } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupEnterService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student-group/enter/';\r\n }\r\n\r\n public enterViaCode(model: GetToGroupByCodeRequest): Observable<GetToGroupByCodeResponse> {\r\n return this._httpClient.post<GetToGroupByCodeResponse>(this.baseControllerUrl + 'ViaCode', model);\r\n }\r\n\r\n public enterFreeOfCharge(id: string): Observable<GetToGroupByCodeResponse> {\r\n return this._httpClient.post<GetToGroupByCodeResponse>(this.baseControllerUrl + `FreeOfCharge/${id}`, {});\r\n }\r\n}\r\n","import { OpenApiUrlProvider } from \"./OpenApiUrlProvider\";\r\n\r\nexport class OpenApiExtensions {\r\n static buildOpenApiUrl(urlProvider: OpenApiUrlProvider, adding: string): string {\r\n return urlProvider.getUrl() + adding;\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { OpenApiServerOptions } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpenApiUrlProvider {\r\n\r\n _urlValue: string = \"\";\r\n _data: OpenApiServerOptions = {\r\n useOpenApiServer: false,\r\n openApiUrl: \"\"\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this._urlValue = baseUrl;\r\n this.getSettings(baseUrl);\r\n }\r\n\r\n getSettings(baseUrl: string) {\r\n this._httpClient.get<OpenApiServerOptions>(baseUrl + \"api/settings/open-api/get\").subscribe(data => {\r\n if(data.useOpenApiServer && data.openApiUrl){\r\n this._data = data;\r\n this._urlValue = data.openApiUrl;\r\n }\r\n });\r\n }\r\n\r\n getData() {\r\n return this._data;\r\n }\r\n\r\n getUrl(): string {\r\n return this._urlValue;\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { OpenApiExtensions, OpenApiUrlProvider } from \"../extensions\";\r\nimport { Observable } from \"rxjs\";\r\nimport { SearchStudentTestSolutions, GetListResult, TestSolutionCourseData, StudentTestSolutionWithChatInfo, StudentTestSolutionModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestSolutionQueryService {\r\n\r\n getBaseUrl() {\r\n return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/test-solution/query/');\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n private _urlProvider: OpenApiUrlProvider) {\r\n }\r\n\r\n public searchByStudent(model: SearchStudentTestSolutions): Observable<GetListResult<StudentTestSolutionWithChatInfo>> {\r\n return this._httpClient.post<GetListResult<StudentTestSolutionWithChatInfo>>(this.getBaseUrl() + \"Search/By/Student\", model);\r\n }\r\n\r\n public getCourseData(id: string): Observable<TestSolutionCourseData> {\r\n return this._httpClient.get<TestSolutionCourseData>(this.getBaseUrl() + `Get/By/Id/${id}/course-data`);\r\n }\r\n\r\n public getSolutionById(id: string): Observable<StudentTestSolutionModel> {\r\n return this._httpClient.get<StudentTestSolutionModel>(this.getBaseUrl() + `Get/By/Id/${id}`);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse, GenericBaseApiResponse, QuestionAnswerWithResult, QuestionInSolutionIdModel, SaveQuestionPointsValidation, TestQuestionWithModifiers, TestSolutionWithPointsValidation } from \"../models\";\r\n\r\n/**\r\nМетоды контроллера Tutor.Api.Controllers.TestSolutions.TestSolutionResultController\r\nBasePath = api/tutor/test-solution-result\r\n*/\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestSolutionResultService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution-result/';\r\n }\r\n\r\n public getQuestionsWithModifiersBySolution(solutionId: string) {\r\n return this._httpClient.get<TestQuestionWithModifiers[]>(this.baseControllerUrl + `modifiers/${solutionId}`);\r\n }\r\n\r\n public getQuestionsWithPointsValidationBySolution(solutionId: string) {\r\n return this._httpClient.get<TestSolutionWithPointsValidation>(this.baseControllerUrl + `points/${solutionId}`);\r\n }\r\n\r\n public create(solutionId: string) {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + `create/${solutionId}`, {});\r\n }\r\n\r\n public recalculate(solutionId: string) {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + `recalculate/${solutionId}`, {});\r\n }\r\n\r\n public saveQuestionResult(model: SaveQuestionPointsValidation) {\r\n return this._httpClient.post<GenericBaseApiResponse<QuestionAnswerWithResult>>(this.baseControllerUrl + `question/validation/save`, model);\r\n }\r\n\r\n public removeQuestionResult(model: QuestionInSolutionIdModel) {\r\n return this._httpClient.post<GenericBaseApiResponse<QuestionAnswerWithResult>>(this.baseControllerUrl + `question/validation/remove`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GenericBaseApiResponse, StartSolutionFromDirectory, StartTestSolutionByTestId, StudentTestSolutionModel } from \"../models\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class StudentTestSolutionStartService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution/Start/';\r\n }\r\n\r\n startByTestId(model: StartTestSolutionByTestId): Observable<GenericBaseApiResponse<StudentTestSolutionModel>> {\r\n return this._httpClient.post<GenericBaseApiResponse<StudentTestSolutionModel>>(this.baseControllerUrl + `By/TestId`, model);\r\n }\r\n\r\n startByDirectory(model: StartSolutionFromDirectory): Observable<GenericBaseApiResponse<StudentTestSolutionModel>> {\r\n return this._httpClient.post<GenericBaseApiResponse<StudentTestSolutionModel>>(this.baseControllerUrl + `By/Directory`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { OpenApiExtensions, OpenApiUrlProvider } from \"../../extensions\";\r\nimport { GetListResult, SearchQuestionsByLikes, TestQuestionModel } from \"../../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpenApiQuestionLikeService {\r\n \r\n getBaseUrl(){\r\n return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/open-api/question-like/');\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n private _urlProvider: OpenApiUrlProvider) {\r\n }\r\n\r\n public search(model: SearchQuestionsByLikes) {\r\n return this._httpClient.post<GetListResult<TestQuestionModel>>(this.getBaseUrl() + 'search', model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { OpenApiExtensions, OpenApiUrlProvider } from \"../../extensions\";\r\nimport { StudentTestSolutionModel } from \"../../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpenApiTestSolutionService {\r\n \r\n getBaseUrl(){\r\n return OpenApiExtensions.buildOpenApiUrl(this._urlProvider, 'api/tutor/open-api/test-soluton/');\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n private _urlProvider: OpenApiUrlProvider) {\r\n }\r\n\r\n public getById(id: string) {\r\n return this._httpClient.get<StudentTestSolutionModel>(this.getBaseUrl() + id);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { GenericBaseApiResponse, QuestionAnswerWithResult, SolutionWithAnswerModel, SolutionWithAnswersModel, StudentTestSolutionDataModel } from \"../models\";\r\nimport { Observable } from \"rxjs\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class StudentTestSolutionService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution/';\r\n }\r\n\r\n checkAnswer(model: SolutionWithAnswerModel) {\r\n return this._httpClient.post<GenericBaseApiResponse<QuestionAnswerWithResult>>(this.baseControllerUrl + `check-answer`, model);\r\n }\r\n\r\n finishSolution(model: SolutionWithAnswersModel): Observable<GenericBaseApiResponse<StudentTestSolutionDataModel>> {\r\n return this._httpClient.post<GenericBaseApiResponse<StudentTestSolutionDataModel>>(this.baseControllerUrl + \"finish\", model);\r\n }\r\n}\r\n\r\n\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { GenericBaseApiResponse, GetListResult, SearchMyTestSolutions, StudentTestSolutionDataModel, StudentTestSolutionWithChatInfo, TestWithActiveSolutionModel } from \"../models\";\r\n\r\n/**\r\nМетоды контроллера Tutor.Api.Controllers.TestSolutions.StudentTestSolutionQueryController\r\nBasePath = api/tutor/test-solution/query/mine\r\n*/\r\n@Injectable({ providedIn: 'root' })\r\nexport class StudentTestSolutionQueryService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution/query/mine/';\r\n }\r\n\r\n search(model: SearchMyTestSolutions) {\r\n return this._httpClient.post<GetListResult<StudentTestSolutionWithChatInfo>>(this.baseControllerUrl + `search`, model);\r\n }\r\n\r\n getResultById(id: string){\r\n let url = this.baseControllerUrl + `Get/By/Id/${id}/result`;\r\n\r\n return this._httpClient.get<GenericBaseApiResponse<StudentTestSolutionDataModel>>(url);\r\n }\r\n\r\n getByTestId(testId: string){\r\n let url = this.baseControllerUrl + `Get/By/TestId/${testId}`;\r\n\r\n return this._httpClient.get<TestWithActiveSolutionModel>(url);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { OpenApiExtensions, OpenApiUrlProvider } from \"../extensions\";\r\nimport { StudentTestGroupRelationDetailedModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupTestRelationQueryService {\r\n\r\n getBaseUrl() {\r\n return OpenApiExtensions.buildOpenApiUrl(this._baseUrlProvider, 'api/tutor/student-group/tests/');\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n private _baseUrlProvider: OpenApiUrlProvider) {\r\n }\r\n\r\n getById(studentGroupId: string, testId: string) {\r\n return this._httpClient.get<StudentTestGroupRelationDetailedModel>(this.getBaseUrl() + `getById/${testId}/${studentGroupId}`);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseApiResponse, GetListResult } from '../models';\r\nimport { CreateOrUpdateCuratorMessageTemplate, DeleteCuratorMessageTemplate, SearchCuratorMessageTemplates, CuratorMessageTemplateModel } from '../models/curator-models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CuratorMessageTemplateService {\r\n getBaseControllerUrl() {\r\n return this._baseUrl + 'api/tutor/curator/message-template/';\r\n }\r\n\r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this._baseUrl = baseUrl;\r\n }\r\n\r\n public createOrUpdate(model: CreateOrUpdateCuratorMessageTemplate): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.getBaseControllerUrl() + 'create-or-update', model);\r\n }\r\n\r\n public delete(model: DeleteCuratorMessageTemplate): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.getBaseControllerUrl() + 'delete', model);\r\n }\r\n\r\n public search(model: SearchCuratorMessageTemplates): Observable<GetListResult<CuratorMessageTemplateModel>> {\r\n return this._httpClient.post<GetListResult<CuratorMessageTemplateModel>>(\r\n this.getBaseControllerUrl() + 'search',\r\n model,\r\n );\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { GetStudentCourseThemeItemsDeadlineWarningsRequest, CourseThemeItemStudentDeadlineWarningModel, CourseThemeIdWithDeadlineWarnings } from \"../models/test-restriction-models\";\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Courses.CourseThemeItemStudentTestRestrictionController\r\n * \r\n * Предоставляет методы для работы с предупреждениями о наступающем дедлайне в курсе\r\n * \r\n * базовый путь = api/tutor/course-theme-item/test-restriction/student\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseDeadlineWarningService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-deadline-warning/';\r\n }\r\n\r\n getStudentWarnings(model: GetStudentCourseThemeItemsDeadlineWarningsRequest) {\r\n return this._httpClient.post<CourseThemeItemStudentDeadlineWarningModel[]>(this.baseControllerUrl + `query/for-student/all`, model);\r\n }\r\n\r\n getStudentWarningsGrouped(model: GetStudentCourseThemeItemsDeadlineWarningsRequest) {\r\n return this._httpClient.post<CourseThemeIdWithDeadlineWarnings[]>(this.baseControllerUrl + `query/for-student/grouped`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse } from \"../models\";\r\nimport { CourseItemGlobalTestRestrictionModel, TestRestrictionModel } from \"../models/test-restriction-models\";\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Courses.CourseThemeItemTestRestrictionController\r\n * \r\n * Предоставляет методы для управления глобальными ограничениями теста для блока курса\r\n * \r\n * базовый путь = api/tutor/course-theme-item/test-restriction\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseThemeItemTestRestrictionService {\r\n private baseControllerUrl: string;\r\n\r\n constructor(\r\n private readonly _http: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-theme-item/test-restriction/';\r\n }\r\n\r\n setGlobal(model: CourseItemGlobalTestRestrictionModel) {\r\n return this._http.post<BaseApiResponse>(this.baseControllerUrl + 'global', model);\r\n }\r\n\r\n getGlobal(id: string) {\r\n return this._http.get<TestRestrictionModel>(this.baseControllerUrl + `global/${id}`);\r\n }\r\n\r\n removeAll(courseId: string) {\r\n return this._http.post<BaseApiResponse>(this.baseControllerUrl + `remove-all/${courseId}`, {});\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ChangeSubjectConfiguration, SubjectMenu } from '../models/subject.models';\r\nimport { BaseApiResponse } from '../models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.SubjectMenuController\r\n * \r\n * Базовый урл = api/tutor/subject/menu\r\n * \r\n * Методы для работы с меню предмета\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubjectMenuService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/subject/menu/';\r\n }\r\n\r\n public getByAliasOrId(idOrAlias: string): Observable<SubjectMenu> {\r\n return this._httpClient.get<SubjectMenu>(this.baseControllerUrl + `GetByAliasOrId?idOrAlias=${idOrAlias}`);\r\n }\r\n\r\n public getByAliasOrIdCached(idOrAlias: string): Observable<SubjectMenu> {\r\n return this._httpClient.get<SubjectMenu>(this.baseControllerUrl + `GetByAliasOrId/Cached?idOrAlias=${idOrAlias}`);\r\n }\r\n\r\n public update(model: ChangeSubjectConfiguration): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + `Update`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n SubjectCountsModel,\r\n SubjectModel,\r\n SubjectWithIconModel\r\n} from '../models/subject.models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.SubjectQueryController\r\n * \r\n * Базовый урл = api/tutor/subject/query\r\n * \r\n * Методы для получения предметов\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubjectQueryService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/subject/query/';\r\n }\r\n\r\n public getAll(): Observable<SubjectModel[]> {\r\n return this._httpClient.get<SubjectModel[]>(this.baseControllerUrl + `GetAll`);\r\n }\r\n\r\n public getAllCached(): Observable<SubjectModel[]> {\r\n return this._httpClient.get<SubjectModel[]>(this.baseControllerUrl + `GetAll/Cached`);\r\n }\r\n\r\n public getAllWithIconsCached(iconSetId: string): Observable<SubjectWithIconModel[]> {\r\n return this._httpClient.get<SubjectWithIconModel[]>(this.baseControllerUrl + `GetAll/with-icons/Cached?iconSetId=${iconSetId}`);\r\n }\r\n\r\n public getByAliasOrId(id: string): Observable<SubjectCountsModel> {\r\n return this._httpClient.get<SubjectCountsModel>(this.baseControllerUrl + `GetByAliasOrId?aliasOrId=${id}`);\r\n }\r\n\r\n public getByAliasOrIdCached(idOrAlias: string): Observable<SubjectCountsModel> {\r\n return this._httpClient.get<SubjectCountsModel>(this.baseControllerUrl + `GetByAliasOrId/Cached?idOrAlias=${idOrAlias}`);\r\n }\r\n}\r\n\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n CreateSubject,\r\n OrderSubjectsRequest,\r\n UpdateSubjectRequest,\r\n} from '../models/subject.models';\r\nimport { BaseApiResponse } from '../models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.SubjectController\r\n * \r\n * Базовый урл = api/tutor/subject\r\n * \r\n * Методы для работы с предметами\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubjectsService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/subject/';\r\n }\r\n\r\n public create(model: CreateSubject): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Create', model);\r\n }\r\n\r\n public order(model: OrderSubjectsRequest): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'order', model);\r\n }\r\n\r\n public update(model: UpdateSubjectRequest) : Observable<BaseApiResponse>{\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Update', model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse, GetListResult } from \"../models\";\r\nimport { CourseItemStudentTestRestrictionModel, GetCourseThemeItemStudentTestRestrictionRequest, TestRestrictionValidationResult, TestRestrictionValidationWithDeadLineWarningResult, SearchStudentThemeItemTestRestrictionsRequest, ThemeItemTestStudentRestrictionModel } from \"../models/test-restriction-models\";\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Courses.CourseThemeItemStudentTestRestrictionController\r\n *\r\n * Предоставляет методы для управления ограничениями теста для блока курса\r\n *\r\n * базовый путь = api/tutor/course-theme-item/test-restriction/student\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseThemeItemTestRestrictionStudentService {\r\n private baseControllerUrl: string;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-theme-item/test-restriction/student/';\r\n }\r\n\r\n updateForStudent(model: CourseItemStudentTestRestrictionModel) {\r\n return this.http.post<BaseApiResponse>(this.baseControllerUrl + `update`, model);\r\n }\r\n\r\n getStudentRestriction(model: GetCourseThemeItemStudentTestRestrictionRequest) {\r\n return this.http.post<TestRestrictionValidationResult>(this.baseControllerUrl + `query/get-validated-item-restriction`, model);\r\n }\r\n\r\n getStudentRestrictionWithDeadLineWarning(model: GetCourseThemeItemStudentTestRestrictionRequest) {\r\n return this.http.post<TestRestrictionValidationWithDeadLineWarningResult>(this.baseControllerUrl + `query/get-validated-item-restriction-with-deadline-warning`, model);\r\n }\r\n\r\n searchStudents(model: SearchStudentThemeItemTestRestrictionsRequest) {\r\n return this.http.post<GetListResult<ThemeItemTestStudentRestrictionModel>>(this.baseControllerUrl + 'query/search', model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { SubjectForStudentDetailedViewModel, SubjectModel } from '../models/subject.models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.StudentSubjectViewController\r\n *\r\n * Базовый урл = api/tutor/student-subject-view\r\n *\r\n * Методы для построения меню предмета\r\n */\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentSubjectViewService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student-subject-view/';\r\n }\r\n\r\n public getV1(idOrAlias: string, iconSetId: string): Observable<SubjectForStudentDetailedViewModel> {\r\n return this._httpClient.get<SubjectForStudentDetailedViewModel>(this.baseControllerUrl + `get/v1?idOrAlias=${idOrAlias}&iconSetId=${iconSetId}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { CourseThemeSolutionsWithTestRestrictionsViewModel } from \"../models\";\r\n\r\n/**\r\n * Предоставляет методы контроллера Tutor.Api.Controllers.Courses.StudentCourseViewController\r\n * Оптимизированные методы для работы студентов с курсами\r\n * Базовый урл = api/tutor/student-course-view\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentCourseViewService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student-course-view/';\r\n }\r\n\r\n /**\r\n * \r\n * @param studentProgressId Запрос для получения решений тестов по блоку в теме курса и ограничения по количеству попыток и дедлайну. Метод кешируется на 30 секунд. \r\n * @param themeItemId \r\n * @returns \r\n */\r\n public loadThemeSolutionsAndTestRestriction(studentProgressId: string, themeItemId: string): Observable<CourseThemeSolutionsWithTestRestrictionsViewModel> {\r\n return this._httpClient.get<CourseThemeSolutionsWithTestRestrictionsViewModel>(this.baseControllerUrl + `load-theme-solutions-and-restriction?studentProgressId=${studentProgressId}&themeItemId=${themeItemId}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { StudentTestSolutionDetailedModel } from \"../models\";\r\n\r\n/**\r\n * Предоставляет методы для поиска решений тестов \r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestSolutionDetailedQueryService {\r\n\r\n private _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this._baseUrl = baseUrl + \"api/tutor/test-solution/query/\";\r\n }\r\n\r\n /**\r\n * \r\n * @param id Идентификатор решения теста\r\n * @returns \r\n */\r\n public get(id: string): Observable<StudentTestSolutionDetailedModel> {\r\n return this._httpClient.get<StudentTestSolutionDetailedModel>(this._baseUrl + `Get/By/Id/${id}/detailed`);\r\n }\r\n}","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { CourseLandingPageDetailedModel, CourseLandingPageSimpleModel, SearchCourseLandingPageRequest } from '../models';\r\nimport { GetListResult } from 'croco-generic-app-logic';\r\n\r\n/**\r\n * Предоставляет методы для работы с лендинг страницами для курса\r\n * Контроллер = Tutor.Api.Controllers.Landings.CourseLandingPageController\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseLandingPageQueryService {\r\n\r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this._baseUrl = baseUrl + 'api/tutor/course-landing-page/query';\r\n }\r\n\r\n /**\r\n * Поиск лендинг страниц\r\n * @param model \r\n * @returns \r\n */\r\n search(model: SearchCourseLandingPageRequest) {\r\n return this._httpClient.post<GetListResult<CourseLandingPageSimpleModel>>(`${this._baseUrl}/search`, model);\r\n }\r\n\r\n /**\r\n * Получить лендинг страницу по идентификатору\r\n * @param id \r\n * @returns \r\n */\r\n getById(id: string) {\r\n return this._httpClient.get<CourseLandingPageDetailedModel>(`${this._baseUrl}/get-by-id?id=${id}`);\r\n }\r\n\r\n getByIdCached(id: string) {\r\n return this._httpClient.get<CourseLandingPageDetailedModel>(`${this._baseUrl}/get-by-id/cached?id=${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CourseOrderModel, CreateCourseOrderRequest, CreateCourseOrderResponse } from \"../models/course-shop-models\";\r\n\r\n/**\r\n * Предоставляем методы контроллера Tutor.Api.Controllers.Courses.CourseOrderController\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseOrderService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-order';\r\n }\r\n\r\n /**\r\n * Получить заказ на покупку курса по идентификатору\r\n * @param id идентификатор заказа\r\n * @returns \r\n */\r\n getById(id: string) {\r\n return this._httpClient.get<CourseOrderModel>(`${this.baseControllerUrl}/query/get-by-id/${id}`);\r\n }\r\n\r\n /**\r\n * созать заказ на покупку курса\r\n * @param model запрос для создания заказа на покупку курса\r\n * @returns \r\n */\r\n create(model: CreateCourseOrderRequest) {\r\n return this._httpClient.post<CreateCourseOrderResponse>(`${this.baseControllerUrl}/create`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CourseShopWindowDetailedModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseShopWindowDetailedService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-shop-window-detailed/';\r\n }\r\n\r\n getDefault() {\r\n return this._httpClient.get<CourseShopWindowDetailedModel>(this.baseControllerUrl + 'default');\r\n }\r\n\r\n getById(id: string) {\r\n return this._httpClient.get<CourseShopWindowDetailedModel>(this.baseControllerUrl + `byId/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { StudentGroupPaymentPlansModel } from \"../models\";\r\n\r\n/**\r\n * Предоставляет методы контроллера Tutor.Api.Controllers.StudentGroupPaymentPlans.StudentGroupPaymentPlanQueryController\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupPaymentPlanQueryService {\r\n getBaseUrl() {\r\n return `${this._baseUrl}api/tutor/student-group-payment-plan/query`;\r\n }\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') private _baseUrl: string\r\n ) { }\r\n\r\n /**\r\n * Получить группу и глобальные планы оплаты с ней связанные\r\n * @param id идентификатор группы\r\n * @returns групп с планами оплаты\r\n */\r\n public getPaymentPlans(id: string): Observable<StudentGroupPaymentPlansModel> {\r\n return this._httpClient.get<StudentGroupPaymentPlansModel>(`${this.getBaseUrl()}/payment-plans/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable, Inject } from \"@angular/core\";\r\nimport { TutorFullApplicationPublicOptions } from \"../models\";\r\nimport { of, tap } from \"rxjs\";\r\n\r\n/**\r\n * Сервис для предоставления публичной конфигурации по приложению\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TutorAppConfigurationService {\r\n\r\n static readonly VariableKey = \"__Tutor.FullConfiguration\";\r\n\r\n private baseControllerUrl: string;\r\n\r\n constructor(\r\n private readonly _http: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = `${baseUrl}api/tutor/settings/application`;\r\n }\r\n\r\n /**\r\n * Получить конифгурацию из window\r\n * @returns\r\n */\r\n get(): TutorFullApplicationPublicOptions {\r\n\r\n const value = window[TutorAppConfigurationService.VariableKey];\r\n\r\n if (value === undefined || value === null) {\r\n throw new Error(`в window не установлена переменная ${TutorAppConfigurationService.VariableKey}`);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n set(value: TutorFullApplicationPublicOptions) {\r\n window[TutorAppConfigurationService.VariableKey] = value;\r\n }\r\n\r\n getFromServerIfValueNotSet() {\r\n\r\n const value = window[TutorAppConfigurationService.VariableKey];\r\n\r\n if (value === undefined || value === null) {\r\n return this._http.get<TutorFullApplicationPublicOptions>(this.baseControllerUrl).pipe(tap(value => {\r\n this.set(value);\r\n return value;\r\n }));\r\n }\r\n\r\n\r\n return of<TutorFullApplicationPublicOptions>(value);\r\n }\r\n}\r\n","import { CourseThemeItemModel } from \"./course-models\";\r\nimport { QuestionValidationSourceType } from \"./solution-validation-models\";\r\n\r\nexport interface SearchStudentTestSolutions {\r\n isFinished: boolean | null;\r\n studentId: string;\r\n count: number | null;\r\n offSet: number;\r\n}\r\n\r\nexport interface TestSolutionCourseData {\r\n solutionId: string;\r\n courseThemeItemId: string;\r\n courseThemeItemIndex: number;\r\n courseThemeId: string;\r\n courseThemeName: string;\r\n courseName: string;\r\n courseId: string;\r\n nextItem: CourseThemeItemModel;\r\n}\r\n\r\nexport enum TestQuestionType {\r\n SelectRightAnswerOrAnswers = 'SelectRightAnswerOrAnswers',\r\n TypeRightAnswer = 'TypeRightAnswer',\r\n DetailedAnswer = 'DetailedAnswer',\r\n TypeAnswerWithErrors = 'TypeAnswerWithErrors'\r\n}\r\n\r\nexport interface SolutionWithAnswerModel {\r\n solutionId: string;\r\n answer: QuestionAnswer;\r\n}\r\n\r\nexport interface StudentTestSolutionWithChatInfo {\r\n solution: StudentTestSolutionSimpleModel;\r\n systemValidation: TestSolutionSystemValidationModel;\r\n unreadMessagesCount: number;\r\n}\r\n\r\nexport interface TestSolutionSystemValidationModel {\r\n studentTotalPoints: number;\r\n studentProgressPercents: number;\r\n maxTotalPoints: number;\r\n questionsCount: number;\r\n validatedQuestionsCount: number;\r\n hasRightAnswerQuestionsCount: number;\r\n}\r\n\r\nexport interface StartSolutionFromDirectory {\r\n workSpaceId: string;\r\n directoryId: string;\r\n useFilter: boolean;\r\n canCheckSingleQuestion: boolean;\r\n filter: QuestionsFilter;\r\n}\r\n\r\nexport interface QuestionsFilter {\r\n types: Array<TestQuestionType>;\r\n}\r\n\r\nexport interface StartTestSolutionByTestId {\r\n testId: string;\r\n studentGroupId: string;\r\n canCheckSingleQuestion: boolean;\r\n}\r\n\r\nexport interface SearchMyTestSolutions {\r\n isFinished: boolean | null;\r\n testId: string;\r\n count: number | null;\r\n offSet: number;\r\n}\r\n\r\nexport interface StudentTestSolutionSimpleModel {\r\n id: string;\r\n testName: string;\r\n testId: string;\r\n isFinished: boolean;\r\n startedOnUtc: string; /* Date */\r\n finishedOnUtc: string | null; /* Date */\r\n}\r\n\r\nexport enum AnswerValidationResultType {\r\n NeedToCheckByYourSelf = 'NeedToCheckByYourSelf',\r\n NotCorrectAnswer = 'NotCorrectAnswer',\r\n PartiallyCorrectAnswer = 'PartiallyCorrectAnswer',\r\n CorrectAnswer = 'CorrectAnswer',\r\n InProccess = 'InProccess'\r\n}\r\n\r\nexport interface SolutionWithAnswersModel {\r\n solutionId: string;\r\n answers: Array<QuestionAnswer>;\r\n}\r\n\r\nexport interface StudentTestSolutionModel {\r\n studentId: string;\r\n solutionId: string;\r\n studentGroupId: string;\r\n hasCuratorValidation: boolean;\r\n canCheckSingleQuestion: boolean;\r\n startedOnUtc: string; /* Date */\r\n finishedOnUtc: string | null; /* Date */\r\n isFinished: boolean;\r\n solution: StudentTestSolutionDataModel;\r\n test: TestModel;\r\n}\r\n\r\n\r\nexport interface StudentTestSolutionDataModel {\r\n /**\r\n * Есть ли вопросы, которые находятся в процессе расчёта результата\r\n */\r\n hasAnswersInProccess: boolean;\r\n answers: Array<QuestionAnswerWithResult>;\r\n}\r\n\r\nexport interface TestModel {\r\n name: string;\r\n description: string;\r\n questions: Array<TestQuestionModel>;\r\n}\r\n\r\nexport interface TestQuestionModel {\r\n id: string;\r\n title: string;\r\n titleBodyMarkUp: string;\r\n helpBodyMarkUp: string;\r\n answerExplanationMarkUp: string;\r\n titleBodyMarkUpMobile: string;\r\n helpBodyMarkUpMobile: string;\r\n answerExplanationMarkUpMobile: string;\r\n type: TestQuestionType;\r\n selectRightAnswerOrAnswersData: SelectRightAnswerOrAnswersQuestionData;\r\n typeRightAnswerQuestionData: TypeRightAnswerQuestionData;\r\n typeAnswerWithErrorsData: TypeAnswerWithErrorsQuestionData;\r\n}\r\n\r\nexport interface TypeAnswerWithErrorsQuestionData {\r\n rightAnswer: string;\r\n ignoreTextOrder: boolean;\r\n}\r\n\r\n\r\nexport interface TestWithActiveSolutionModel {\r\n testId: string;\r\n activeSolutionId: string;\r\n test: TestModel;\r\n}\r\n\r\nexport interface QuestionAnswer {\r\n questionId: string;\r\n answerOrAnswers: string;\r\n}\r\n\r\nexport interface QuestionAnswerWithResult {\r\n isChecked: boolean;\r\n questionId: string;\r\n answerOrAnswers: string;\r\n pointsValidation: QuestionPointsValidationModel;\r\n resultType: AnswerValidationResultType;\r\n}\r\n\r\nexport interface QuestionPointsValidationModel {\r\n errorOccured: boolean;\r\n inProccess: boolean;\r\n answerPoints: number;\r\n questionTotalPoints: number;\r\n description: string;\r\n isValidated: boolean;\r\n sourceType: QuestionValidationSourceType;\r\n validatorId: string;\r\n}\r\n\r\nexport interface SelectRightAnswerOrAnswersQuestionData {\r\n selectRightAnswerTitle: string;\r\n rightAnswersCount: number;\r\n answers: Array<Answer>;\r\n}\r\n\r\nexport interface Answer {\r\n text: string;\r\n isRightAnswer: boolean;\r\n}\r\n\r\nexport interface TypeRightAnswerQuestionData {\r\n caseInSensitive: boolean;\r\n rightAnswers: Array<string>;\r\n}\r\n\r\nexport interface StudentTestSolutionDetailedModel {\r\n solutionId: string;\r\n hasAnswersInProccess: boolean;\r\n hasCuratorValidation: boolean;\r\n canCheckSingleQuestion: boolean;\r\n studentGroupId: string;\r\n studentId: string;\r\n startedOnUtc: Date;\r\n finishedOnUtc: Date | null;\r\n isFinished: boolean;\r\n test: StudentTestSolutionDetailedTestModel;\r\n cdnOptions: S3CdnPublicOptions;\r\n}\r\n\r\nexport interface StudentTestSolutionDetailedTestModel {\r\n name: string;\r\n description: string;\r\n questions: Array<StudentTestSolutionDetailedTestQuestion>;\r\n}\r\n\r\nexport interface StudentTestSolutionDetailedTestQuestion {\r\n question: TestQuestionModel;\r\n answerWithValidation: QuestionAnswerWithResult;\r\n isQuestionLikedByStudent: boolean;\r\n}\r\n\r\nexport interface S3CdnPublicOptions {\r\n useCdn: boolean;\r\n imageUrlFormat: string;\r\n}","import { QuestionAnswerWithResult } from \"./test-solution-models\";\r\n\r\nexport interface TestSolutionWithPointsValidation {\r\n solutionId: string; \r\n hasPointsResult: boolean; \r\n questions: Array<QuestionAnswerWithResult>; \r\n studentTotalPoints: number; \r\n maxTotalPoints: number; \r\n questionsCount: number; \r\n validatedQuestionsCount: number; \r\n inProccessQuestionsCount: number; \r\n hasRightAnswerQuestionsCount: number; \r\n}\r\n\r\nexport enum QuestionValidationSourceType {\r\n\tSystem = 'System',\r\n\tStudent = 'Student',\r\n\tCurator = 'Curator'\r\n}\r\n\r\nexport interface TestQuestionWithModifiers {\r\n questionId: string; \r\n modifiers: Array<TestQuestionModiferModel>; \r\n}\r\n\r\nexport interface TestQuestionModiferModel {\r\n name: string; \r\n data: string; \r\n}\r\n\r\nexport interface SaveQuestionPointsValidation {\r\n idModel: QuestionInSolutionIdModel; \r\n answerPoints: number; \r\n questionTotalPoints: number; \r\n description: string; \r\n}\r\n\r\nexport interface QuestionInSolutionIdModel {\r\n solutionId: string; \r\n questionId: string; \r\n}","export interface CourseDetailedModel {\r\n id: string; \r\n name: string; \r\n templateId: string; \r\n weight: number; \r\n versionId: string; \r\n themes: Array<CourseThemeDetailedModel>; \r\n}\r\n\r\nexport interface CourseSimpleModel {\r\n id: string; \r\n name: string; \r\n weight: number; \r\n versionId: string; \r\n}\r\n\r\nexport interface CourseThemeDetailedModel {\r\n id: string; \r\n name: string; \r\n description: string; \r\n weight: number; \r\n courseVersionId: string; \r\n items: Array<CourseThemeItemModel>; \r\n}\r\n\r\n\r\nexport interface CourseThemeItemModel {\r\n id: string; \r\n name: string; \r\n html: string; \r\n type: CourseThemeItemType; \r\n weight: number; \r\n templateItemId: string; \r\n test: CourseThemeItemTestModel; \r\n}\r\n\r\n\r\nexport enum CourseThemeItemType {\r\n JustHtml = 'JustHtml',\r\n Test = 'Test'\r\n}\r\n\r\nexport interface CourseThemeItemTestModel {\r\n testId: string; \r\n testName: string; \r\n totalPointsToPass: number; \r\n totalPercentageToPass: number; \r\n}","import { StudentSimpleModel } from \"./student-models\";\r\n\r\nexport interface CourseItemGlobalTestRestrictionModel {\r\n courseThemeItemId: string;\r\n testRestriction: TestRestrictionModel;\r\n}\r\n\r\nexport interface TestRestrictionModel {\r\n maxTriesCount: number | null;\r\n maxStartDate: string | null;\r\n}\r\n\r\nexport interface SearchStudentThemeItemTestRestrictionsRequest {\r\n q: string;\r\n courseThemeItemId: string;\r\n count: number | null;\r\n offSet: number;\r\n}\r\n\r\nexport interface ThemeItemTestStudentRestrictionModel {\r\n restriction: TestRestrictionModel;\r\n student: StudentSimpleModel;\r\n}\r\n\r\nexport interface CourseItemStudentTestRestrictionModel {\r\n courseThemeItemId: string;\r\n studentId: string;\r\n testRestriction: TestRestrictionModel;\r\n}\r\n\r\nexport interface TestRestrictionValidationResult {\r\n testRestriction: TestRestrictionModel;\r\n canStartTest: boolean;\r\n restrictionRuleType: TestRestrictionValidationResultRuleType | null;\r\n validationMessage: string;\r\n solutionsCount: number;\r\n attemptsLeft: number;\r\n}\r\n\r\nexport enum TestRestrictionValidationResultRuleType {\r\n DateExpired = 'DateExpired',\r\n AttemptsExceeded = 'AttemptsExceeded'\r\n}\r\n\r\nexport interface GetCourseThemeItemStudentTestRestrictionRequest {\r\n courseThemeItemId: string;\r\n studentId: string;\r\n}\r\n\r\nexport interface TestRestrictionValidationWithDeadLineWarningResult {\r\n deadLineWarning: DeadLineWithWarningMessage;\r\n restrictionValidationResult: TestRestrictionValidationResult;\r\n}\r\n\r\nexport interface CourseThemeItemStudentDeadlineWarningModel {\r\n themeItemId: string;\r\n courseThemeId: string;\r\n deadLine: string;\r\n warningMessage: string;\r\n}\r\n\r\nexport interface GetStudentCourseThemeItemsDeadlineWarningsRequest {\r\n courseId: string;\r\n studentId: string;\r\n}\r\n\r\nexport interface CourseThemeIdWithDeadlineWarnings {\r\n courseThemeId: string;\r\n deadlines: Array<DeadLineWithWarningMessage>;\r\n}\r\n\r\nexport interface DeadLineWithWarningMessage {\r\n deadLine: string;\r\n warningMessage: string;\r\n}\r\n","import { IconSimpleModel } from \"./icon-models\";\r\n\r\nexport interface SubjectMenu {\r\n root: SubjectMenuItem;\r\n}\r\n\r\nexport interface SubjectMenuItem {\r\n text: string;\r\n path: string;\r\n type: SubjectMenuItemType;\r\n workSpaceId: string;\r\n children: Array<SubjectMenuItem>;\r\n}\r\n\r\nexport enum SubjectMenuItemType {\r\n MenuItem = 'MenuItem',\r\n WorkSpaceLink = 'WorkSpaceLink',\r\n SubjectTestsLink = 'SubjectTestsLink',\r\n}\r\n\r\nexport interface SubjectModel {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n}\r\n\r\nexport interface CreateSubject {\r\n name: string;\r\n alias: string;\r\n}\r\n\r\nexport interface UpdateSubjectRequest {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n}\r\n\r\nexport interface SubjectCountsModel {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n questionsCount: number;\r\n testsCount: number;\r\n}\r\n\r\nexport interface ChangeSubjectConfiguration {\r\n id: string;\r\n configuration: SubjectMenu;\r\n}\r\n\r\nexport interface OrderSubjectsRequest {\r\n ids: Array<string>;\r\n}\r\n\r\nexport interface SubjectWithIconModel {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n icon: IconSimpleModel;\r\n}\r\n\r\nexport interface SubjectForStudentDetailedViewModel {\r\n icon: IconSimpleModel;\r\n subject: SubjectModel;\r\n menu: SubjectMenu;\r\n globalTests: Array<SubjectTestSimpleModel>;\r\n}\r\n\r\nexport interface SubjectTestSimpleModel {\r\n id: string;\r\n name: string;\r\n}\r\n","/**\r\n * Роли для модуля Tutor\r\n */\r\nexport class TutorRoles {\r\n\r\n /**\r\n * Куратор - проверяет домашние задания студентов (учеников).\r\n */\r\n static readonly curator: string = 'Tutor.Curator';\r\n\r\n /**\r\n * Администратор - управляет и настраивает платформу\r\n */\r\n static readonly admin: string = 'Tutor.Admin';\r\n\r\n /**\r\n * Студент (ученик) - проходит курсы, решает тесты, просматривает материалы.\r\n */\r\n static readonly student: string = 'Tutor.Student';\r\n\r\n /**\r\n * Пользователь, который может вносить вопросы\r\n */\r\n static readonly testAuthor: string = 'Tutor.TestAuthor';\r\n}","/*\n * Public API Surface of tutor-logic\n */\n\nexport * from './lib/tutor-logic.module';\nexport * from './lib/services';\nexport * from './lib/models';\nexport * from './lib/extensions';\nexport * from './lib/consts'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.OpenApiUrlProvider"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tutor-logic.mjs","sources":["../../../projects/tutor-logic/src/lib/tutor-logic.module.ts","../../../projects/tutor-logic/src/lib/services/TestsService.ts","../../../projects/tutor-logic/src/lib/services/TutorCommonSettingsService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupQueryService.ts","../../../projects/tutor-logic/src/lib/services/StudentQueryService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupEnterService.ts","../../../projects/tutor-logic/src/lib/services/TestSolutionQueryService.ts","../../../projects/tutor-logic/src/lib/services/TestSolutionResultService.ts","../../../projects/tutor-logic/src/lib/services/StudentTestSolutionStartService.ts","../../../projects/tutor-logic/src/lib/services/open-api/OpenApiQuestionLikeService.ts","../../../projects/tutor-logic/src/lib/services/open-api/OpenApiTestSolutionService.ts","../../../projects/tutor-logic/src/lib/services/StudentTestSolutionService.ts","../../../projects/tutor-logic/src/lib/services/StudentTestSolutionQueryService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupTestRelationQueryService.ts","../../../projects/tutor-logic/src/lib/services/CuratorMessageTemplateService.ts","../../../projects/tutor-logic/src/lib/services/CourseDeadlineWarningService.ts","../../../projects/tutor-logic/src/lib/services/CourseThemeItemTestRestrictionService.ts","../../../projects/tutor-logic/src/lib/services/SubjectMenuService.ts","../../../projects/tutor-logic/src/lib/services/SubjectQueryService.ts","../../../projects/tutor-logic/src/lib/services/SubjectsService.ts","../../../projects/tutor-logic/src/lib/services/CourseThemeItemTestRestrictionStudentService.ts","../../../projects/tutor-logic/src/lib/services/StudentSubjectViewService.ts","../../../projects/tutor-logic/src/lib/services/StudentCourseViewService.ts","../../../projects/tutor-logic/src/lib/services/TestSolutionDetailedQueryService.ts","../../../projects/tutor-logic/src/lib/services/CourseLandingPageQueryService.ts","../../../projects/tutor-logic/src/lib/services/CourseOrderService.ts","../../../projects/tutor-logic/src/lib/services/CourseShopWindowDetailedService.ts","../../../projects/tutor-logic/src/lib/services/StudentGroupPaymentPlanQueryService.ts","../../../projects/tutor-logic/src/lib/services/TutorAppConfigurationService.ts","../../../projects/tutor-logic/src/lib/models/test-solution-models.ts","../../../projects/tutor-logic/src/lib/models/solution-validation-models.ts","../../../projects/tutor-logic/src/lib/models/course-models.ts","../../../projects/tutor-logic/src/lib/models/test-restriction-models.ts","../../../projects/tutor-logic/src/lib/models/subject.models.ts","../../../projects/tutor-logic/src/lib/consts/TutorRoles.ts","../../../projects/tutor-logic/src/public-api.ts","../../../projects/tutor-logic/src/tutor-logic.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\n\n@NgModule({\n declarations: [ \n ],\n imports: [\n ],\n exports: [\n ]\n})\nexport class TutorLogicModule { }\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { BaseApiResponse, GetListResult, StudentGroupSimpleModel } from \"../models\";\r\nimport { TestSearchModel, CreateTest, EditTest } from \"../models/test-models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestsService {\r\n baseControllerUrl:string;\r\n \r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string){\r\n const adding = 'api/tutor/tests/';\r\n this.baseControllerUrl = baseUrl + adding;\r\n }\r\n\r\n public searchGroupRelationsInTest(model: TestSearchModel): Observable<GetListResult<StudentGroupSimpleModel>>{\r\n return this._httpClient.post<GetListResult<StudentGroupSimpleModel>>(this.baseControllerUrl + 'groups/search/in', model);\r\n }\r\n\r\n public create(model: CreateTest): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Create', model);\r\n }\r\n\r\n public edit(model: EditTest): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Edit', model);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse } from \"../models\";\r\nimport { SettingModel } from \"../models/setting-models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TutorCommonSettingsService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/settings/';\r\n }\r\n\r\n get(name: string) {\r\n return this._httpClient.get<SettingModel>(this.baseControllerUrl + 'get/' + name);\r\n }\r\n\r\n getCached(name: string) {\r\n return this._httpClient.get<SettingModel>(this.baseControllerUrl + 'get/' + name + '/cached');\r\n }\r\n\r\n set(model: SettingModel) {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'set', model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GetListResult, StudentGroupSimpleModel } from \"../models\";\r\nimport { SearchStudentGroups, StudentGroupDetailedModel, SearchStudentsInGroup, StudentInGroupSimpleModel, SearchStudentGroupsByStudentRequest, StudentGroupWithCourseProgressModel } from \"../models/group-models\";\r\n\r\n/**\r\n* Методы контроллера StudentGroupQueryController\r\n*/\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupQueryService {\r\n\r\n getBaseUrl() {\r\n return this._baseUrl + 'api/tutor/student-group';\r\n }\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') private _baseUrl: string) {\r\n }\r\n\r\n /**\r\n * Поиск групп студентов\r\n */\r\n public search(model: SearchStudentGroups): Observable<GetListResult<StudentGroupSimpleModel>> {\r\n return this._httpClient.post<GetListResult<StudentGroupSimpleModel>>(`${this.getBaseUrl()}/query/search`, model);\r\n }\r\n\r\n public searchWithProgresses(model: SearchStudentGroupsByStudentRequest): Observable<GetListResult<StudentGroupWithCourseProgressModel>> {\r\n return this._httpClient.post<GetListResult<StudentGroupWithCourseProgressModel>>(`${this.getBaseUrl()}/query/search/with-progresses`, model);\r\n }\r\n\r\n /**\r\n * Получить группу по идентификатору\r\n * @param id идентификатор группы учеников\r\n * @returns группу учеников\r\n */\r\n public getById(id: string): Observable<StudentGroupDetailedModel> {\r\n return this._httpClient.get<StudentGroupDetailedModel>(`${this.getBaseUrl()}/query/by-id/${id}`);\r\n }\r\n\r\n public getByStudentId(id: string): Observable<StudentGroupSimpleModel[]> {\r\n return this._httpClient.get<StudentGroupSimpleModel[]>(`${this.getBaseUrl()}/by-student/${id}`);\r\n }\r\n\r\n /**\r\n * Получить список студентов в группе по фильтру\r\n * @param model модель для поиска\r\n * @returns список студентов\r\n */\r\n public getStudentsList(model: SearchStudentsInGroup): Observable<GetListResult<StudentInGroupSimpleModel>> {\r\n return this._httpClient.post<GetListResult<StudentInGroupSimpleModel>>(`${this.getBaseUrl()}/students/search`, model);\r\n }\r\n\r\n /**\r\n * Получить студента в группе\r\n * @param groupId идентификатор группы\r\n * @param studentId идентификатор студента\r\n * @returns \r\n */\r\n public getStudentById(groupId: string, studentId: string): Observable<StudentInGroupSimpleModel> {\r\n return this._httpClient.get<StudentInGroupSimpleModel>(`${this.getBaseUrl()}/students/get-by-id/${groupId}/${studentId}`);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GetListResult, SearchStudents, StudentSimpleModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentQueryService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student/query/';\r\n }\r\n\r\n public getById(id: string): Observable<StudentSimpleModel> {\r\n return this._httpClient.get<StudentSimpleModel>(this.baseControllerUrl + `ById/${id}`);\r\n }\r\n\r\n public getByTelegramId(telegramId: number): Observable<StudentSimpleModel> {\r\n return this._httpClient.get<StudentSimpleModel>(this.baseControllerUrl + `ByTelegramId/${telegramId}`);\r\n }\r\n\r\n public search(searchModel: SearchStudents): Observable<GetListResult<StudentSimpleModel>> {\r\n return this._httpClient.post<GetListResult<StudentSimpleModel>>(this.baseControllerUrl + 'Search', searchModel);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GetToGroupByCodeRequest, GetToGroupByCodeResponse } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupEnterService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student-group/enter/';\r\n }\r\n\r\n public enterViaCode(model: GetToGroupByCodeRequest): Observable<GetToGroupByCodeResponse> {\r\n return this._httpClient.post<GetToGroupByCodeResponse>(this.baseControllerUrl + 'ViaCode', model);\r\n }\r\n\r\n public enterFreeOfCharge(id: string): Observable<GetToGroupByCodeResponse> {\r\n return this._httpClient.post<GetToGroupByCodeResponse>(this.baseControllerUrl + `FreeOfCharge/${id}`, {});\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { SearchStudentTestSolutions, GetListResult, TestSolutionCourseData, StudentTestSolutionWithChatInfo, StudentTestSolutionModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestSolutionQueryService {\r\n\r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this._baseUrl = `${baseUrl}api/tutor/test-solution/query`;\r\n }\r\n\r\n public searchByStudent(model: SearchStudentTestSolutions): Observable<GetListResult<StudentTestSolutionWithChatInfo>> {\r\n return this._httpClient.post<GetListResult<StudentTestSolutionWithChatInfo>>(`${this._baseUrl}/Search/By/Student`, model);\r\n }\r\n\r\n public getCourseData(id: string): Observable<TestSolutionCourseData> {\r\n return this._httpClient.get<TestSolutionCourseData>(`${this._baseUrl}/Get/By/Id/${id}/course-data`);\r\n }\r\n\r\n public getSolutionById(id: string): Observable<StudentTestSolutionModel> {\r\n return this._httpClient.get<StudentTestSolutionModel>(`${this._baseUrl}/Get/By/Id/${id}`);\r\n }\r\n}","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse, GenericBaseApiResponse, QuestionAnswerWithResult, QuestionInSolutionIdModel, SaveQuestionPointsValidation, TestQuestionWithModifiers, TestSolutionWithPointsValidation } from \"../models\";\r\n\r\n/**\r\nМетоды контроллера Tutor.Api.Controllers.TestSolutions.TestSolutionResultController\r\nBasePath = api/tutor/test-solution-result\r\n*/\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestSolutionResultService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution-result/';\r\n }\r\n\r\n public getQuestionsWithModifiersBySolution(solutionId: string) {\r\n return this._httpClient.get<TestQuestionWithModifiers[]>(this.baseControllerUrl + `modifiers/${solutionId}`);\r\n }\r\n\r\n public getQuestionsWithPointsValidationBySolution(solutionId: string) {\r\n return this._httpClient.get<TestSolutionWithPointsValidation>(this.baseControllerUrl + `points/${solutionId}`);\r\n }\r\n\r\n public create(solutionId: string) {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + `create/${solutionId}`, {});\r\n }\r\n\r\n public recalculate(solutionId: string) {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + `recalculate/${solutionId}`, {});\r\n }\r\n\r\n public saveQuestionResult(model: SaveQuestionPointsValidation) {\r\n return this._httpClient.post<GenericBaseApiResponse<QuestionAnswerWithResult>>(this.baseControllerUrl + `question/validation/save`, model);\r\n }\r\n\r\n public removeQuestionResult(model: QuestionInSolutionIdModel) {\r\n return this._httpClient.post<GenericBaseApiResponse<QuestionAnswerWithResult>>(this.baseControllerUrl + `question/validation/remove`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { GenericBaseApiResponse, StartSolutionFromDirectory, StartTestSolutionByTestId, StudentTestSolutionModel } from \"../models\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class StudentTestSolutionStartService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution/Start/';\r\n }\r\n\r\n startByTestId(model: StartTestSolutionByTestId): Observable<GenericBaseApiResponse<StudentTestSolutionModel>> {\r\n return this._httpClient.post<GenericBaseApiResponse<StudentTestSolutionModel>>(this.baseControllerUrl + `By/TestId`, model);\r\n }\r\n\r\n startByDirectory(model: StartSolutionFromDirectory): Observable<GenericBaseApiResponse<StudentTestSolutionModel>> {\r\n return this._httpClient.post<GenericBaseApiResponse<StudentTestSolutionModel>>(this.baseControllerUrl + `By/Directory`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { GetListResult, SearchQuestionsByLikes, TestQuestionModel } from \"../../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpenApiQuestionLikeService {\r\n \r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this._baseUrl = `${baseUrl}api/tutor/open-api/question-like`;\r\n }\r\n\r\n public search(model: SearchQuestionsByLikes) {\r\n return this._httpClient.post<GetListResult<TestQuestionModel>>(`${this._baseUrl}/search`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { StudentTestSolutionModel } from \"../../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpenApiTestSolutionService {\r\n \r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this._baseUrl = `${this._baseUrl}api/tutor/open-api/test-soluton`;\r\n }\r\n\r\n public getById(id: string) {\r\n return this._httpClient.get<StudentTestSolutionModel>(`${this._baseUrl}/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { GenericBaseApiResponse, QuestionAnswerWithResult, SolutionWithAnswerModel, SolutionWithAnswersModel, StudentTestSolutionDataModel } from \"../models\";\r\nimport { Observable } from \"rxjs\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class StudentTestSolutionService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution/';\r\n }\r\n\r\n checkAnswer(model: SolutionWithAnswerModel) {\r\n return this._httpClient.post<GenericBaseApiResponse<QuestionAnswerWithResult>>(this.baseControllerUrl + `check-answer`, model);\r\n }\r\n\r\n finishSolution(model: SolutionWithAnswersModel): Observable<GenericBaseApiResponse<StudentTestSolutionDataModel>> {\r\n return this._httpClient.post<GenericBaseApiResponse<StudentTestSolutionDataModel>>(this.baseControllerUrl + \"finish\", model);\r\n }\r\n}\r\n\r\n\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { GenericBaseApiResponse, GetListResult, SearchMyTestSolutions, StudentTestSolutionDataModel, StudentTestSolutionWithChatInfo, TestWithActiveSolutionModel } from \"../models\";\r\n\r\n/**\r\nМетоды контроллера Tutor.Api.Controllers.TestSolutions.StudentTestSolutionQueryController\r\nBasePath = api/tutor/test-solution/query/mine\r\n*/\r\n@Injectable({ providedIn: 'root' })\r\nexport class StudentTestSolutionQueryService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/test-solution/query/mine/';\r\n }\r\n\r\n search(model: SearchMyTestSolutions) {\r\n return this._httpClient.post<GetListResult<StudentTestSolutionWithChatInfo>>(this.baseControllerUrl + `search`, model);\r\n }\r\n\r\n getResultById(id: string){\r\n let url = this.baseControllerUrl + `Get/By/Id/${id}/result`;\r\n\r\n return this._httpClient.get<GenericBaseApiResponse<StudentTestSolutionDataModel>>(url);\r\n }\r\n\r\n getByTestId(testId: string){\r\n let url = this.baseControllerUrl + `Get/By/TestId/${testId}`;\r\n\r\n return this._httpClient.get<TestWithActiveSolutionModel>(url);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { StudentTestGroupRelationDetailedModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupTestRelationQueryService {\r\n\r\n getBaseUrl() {\r\n return `${this._baseUrl}api/tutor/student-group/tests`;\r\n }\r\n\r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this._baseUrl = baseUrl;\r\n }\r\n\r\n getById(studentGroupId: string, testId: string) {\r\n return this._httpClient.get<StudentTestGroupRelationDetailedModel>(`${this.getBaseUrl()}/getById/${testId}/${studentGroupId}`);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseApiResponse, GetListResult } from '../models';\r\nimport { CreateOrUpdateCuratorMessageTemplate, DeleteCuratorMessageTemplate, SearchCuratorMessageTemplates, CuratorMessageTemplateModel } from '../models/curator-models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CuratorMessageTemplateService {\r\n getBaseControllerUrl() {\r\n return this._baseUrl + 'api/tutor/curator/message-template/';\r\n }\r\n\r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this._baseUrl = baseUrl;\r\n }\r\n\r\n public createOrUpdate(model: CreateOrUpdateCuratorMessageTemplate): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.getBaseControllerUrl() + 'create-or-update', model);\r\n }\r\n\r\n public delete(model: DeleteCuratorMessageTemplate): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.getBaseControllerUrl() + 'delete', model);\r\n }\r\n\r\n public search(model: SearchCuratorMessageTemplates): Observable<GetListResult<CuratorMessageTemplateModel>> {\r\n return this._httpClient.post<GetListResult<CuratorMessageTemplateModel>>(\r\n this.getBaseControllerUrl() + 'search',\r\n model,\r\n );\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { GetStudentCourseThemeItemsDeadlineWarningsRequest, CourseThemeItemStudentDeadlineWarningModel, CourseThemeIdWithDeadlineWarnings } from \"../models/test-restriction-models\";\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Courses.CourseThemeItemStudentTestRestrictionController\r\n * \r\n * Предоставляет методы для работы с предупреждениями о наступающем дедлайне в курсе\r\n * \r\n * базовый путь = api/tutor/course-theme-item/test-restriction/student\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseDeadlineWarningService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-deadline-warning/';\r\n }\r\n\r\n getStudentWarnings(model: GetStudentCourseThemeItemsDeadlineWarningsRequest) {\r\n return this._httpClient.post<CourseThemeItemStudentDeadlineWarningModel[]>(this.baseControllerUrl + `query/for-student/all`, model);\r\n }\r\n\r\n getStudentWarningsGrouped(model: GetStudentCourseThemeItemsDeadlineWarningsRequest) {\r\n return this._httpClient.post<CourseThemeIdWithDeadlineWarnings[]>(this.baseControllerUrl + `query/for-student/grouped`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse } from \"../models\";\r\nimport { CourseItemGlobalTestRestrictionModel, TestRestrictionModel } from \"../models/test-restriction-models\";\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Courses.CourseThemeItemTestRestrictionController\r\n * \r\n * Предоставляет методы для управления глобальными ограничениями теста для блока курса\r\n * \r\n * базовый путь = api/tutor/course-theme-item/test-restriction\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseThemeItemTestRestrictionService {\r\n private baseControllerUrl: string;\r\n\r\n constructor(\r\n private readonly _http: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-theme-item/test-restriction/';\r\n }\r\n\r\n setGlobal(model: CourseItemGlobalTestRestrictionModel) {\r\n return this._http.post<BaseApiResponse>(this.baseControllerUrl + 'global', model);\r\n }\r\n\r\n getGlobal(id: string) {\r\n return this._http.get<TestRestrictionModel>(this.baseControllerUrl + `global/${id}`);\r\n }\r\n\r\n removeAll(courseId: string) {\r\n return this._http.post<BaseApiResponse>(this.baseControllerUrl + `remove-all/${courseId}`, {});\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ChangeSubjectConfiguration, SubjectMenu } from '../models/subject.models';\r\nimport { BaseApiResponse } from '../models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.SubjectMenuController\r\n * \r\n * Базовый урл = api/tutor/subject/menu\r\n * \r\n * Методы для работы с меню предмета\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubjectMenuService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/subject/menu/';\r\n }\r\n\r\n public getByAliasOrId(idOrAlias: string): Observable<SubjectMenu> {\r\n return this._httpClient.get<SubjectMenu>(this.baseControllerUrl + `GetByAliasOrId?idOrAlias=${idOrAlias}`);\r\n }\r\n\r\n public getByAliasOrIdCached(idOrAlias: string): Observable<SubjectMenu> {\r\n return this._httpClient.get<SubjectMenu>(this.baseControllerUrl + `GetByAliasOrId/Cached?idOrAlias=${idOrAlias}`);\r\n }\r\n\r\n public update(model: ChangeSubjectConfiguration): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + `Update`, model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n SubjectCountsModel,\r\n SubjectModel,\r\n SubjectWithIconModel\r\n} from '../models/subject.models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.SubjectQueryController\r\n * \r\n * Базовый урл = api/tutor/subject/query\r\n * \r\n * Методы для получения предметов\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubjectQueryService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/subject/query/';\r\n }\r\n\r\n public getAll(): Observable<SubjectModel[]> {\r\n return this._httpClient.get<SubjectModel[]>(this.baseControllerUrl + `GetAll`);\r\n }\r\n\r\n public getAllCached(): Observable<SubjectModel[]> {\r\n return this._httpClient.get<SubjectModel[]>(this.baseControllerUrl + `GetAll/Cached`);\r\n }\r\n\r\n public getAllWithIconsCached(iconSetId: string): Observable<SubjectWithIconModel[]> {\r\n return this._httpClient.get<SubjectWithIconModel[]>(this.baseControllerUrl + `GetAll/with-icons/Cached?iconSetId=${iconSetId}`);\r\n }\r\n\r\n public getByAliasOrId(id: string): Observable<SubjectCountsModel> {\r\n return this._httpClient.get<SubjectCountsModel>(this.baseControllerUrl + `GetByAliasOrId?aliasOrId=${id}`);\r\n }\r\n\r\n public getByAliasOrIdCached(idOrAlias: string): Observable<SubjectCountsModel> {\r\n return this._httpClient.get<SubjectCountsModel>(this.baseControllerUrl + `GetByAliasOrId/Cached?idOrAlias=${idOrAlias}`);\r\n }\r\n}\r\n\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n CreateSubject,\r\n OrderSubjectsRequest,\r\n UpdateSubjectRequest,\r\n} from '../models/subject.models';\r\nimport { BaseApiResponse } from '../models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.SubjectController\r\n * \r\n * Базовый урл = api/tutor/subject\r\n * \r\n * Методы для работы с предметами\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SubjectsService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string,\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/subject/';\r\n }\r\n\r\n public create(model: CreateSubject): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Create', model);\r\n }\r\n\r\n public order(model: OrderSubjectsRequest): Observable<BaseApiResponse> {\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'order', model);\r\n }\r\n\r\n public update(model: UpdateSubjectRequest) : Observable<BaseApiResponse>{\r\n return this._httpClient.post<BaseApiResponse>(this.baseControllerUrl + 'Update', model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BaseApiResponse, GetListResult } from \"../models\";\r\nimport { CourseItemStudentTestRestrictionModel, GetCourseThemeItemStudentTestRestrictionRequest, TestRestrictionValidationResult, TestRestrictionValidationWithDeadLineWarningResult, SearchStudentThemeItemTestRestrictionsRequest, ThemeItemTestStudentRestrictionModel } from \"../models/test-restriction-models\";\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Courses.CourseThemeItemStudentTestRestrictionController\r\n *\r\n * Предоставляет методы для управления ограничениями теста для блока курса\r\n *\r\n * базовый путь = api/tutor/course-theme-item/test-restriction/student\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseThemeItemTestRestrictionStudentService {\r\n private baseControllerUrl: string;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-theme-item/test-restriction/student/';\r\n }\r\n\r\n updateForStudent(model: CourseItemStudentTestRestrictionModel) {\r\n return this.http.post<BaseApiResponse>(this.baseControllerUrl + `update`, model);\r\n }\r\n\r\n getStudentRestriction(model: GetCourseThemeItemStudentTestRestrictionRequest) {\r\n return this.http.post<TestRestrictionValidationResult>(this.baseControllerUrl + `query/get-validated-item-restriction`, model);\r\n }\r\n\r\n getStudentRestrictionWithDeadLineWarning(model: GetCourseThemeItemStudentTestRestrictionRequest) {\r\n return this.http.post<TestRestrictionValidationWithDeadLineWarningResult>(this.baseControllerUrl + `query/get-validated-item-restriction-with-deadline-warning`, model);\r\n }\r\n\r\n searchStudents(model: SearchStudentThemeItemTestRestrictionsRequest) {\r\n return this.http.post<GetListResult<ThemeItemTestStudentRestrictionModel>>(this.baseControllerUrl + 'query/search', model);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { SubjectForStudentDetailedViewModel, SubjectModel } from '../models/subject.models';\r\n\r\n/**\r\n * Методы контроллера Tutor.Api.Controllers.Subjects.StudentSubjectViewController\r\n *\r\n * Базовый урл = api/tutor/student-subject-view\r\n *\r\n * Методы для построения меню предмета\r\n */\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentSubjectViewService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student-subject-view/';\r\n }\r\n\r\n public getV1(idOrAlias: string, iconSetId: string): Observable<SubjectForStudentDetailedViewModel> {\r\n return this._httpClient.get<SubjectForStudentDetailedViewModel>(this.baseControllerUrl + `get/v1?idOrAlias=${idOrAlias}&iconSetId=${iconSetId}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { CourseThemeSolutionsWithTestRestrictionsViewModel } from \"../models\";\r\n\r\n/**\r\n * Предоставляет методы контроллера Tutor.Api.Controllers.Courses.StudentCourseViewController\r\n * Оптимизированные методы для работы студентов с курсами\r\n * Базовый урл = api/tutor/student-course-view\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentCourseViewService {\r\n baseControllerUrl: string;\r\n\r\n constructor(private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/student-course-view/';\r\n }\r\n\r\n /**\r\n * \r\n * @param studentProgressId Запрос для получения решений тестов по блоку в теме курса и ограничения по количеству попыток и дедлайну. Метод кешируется на 30 секунд. \r\n * @param themeItemId \r\n * @returns \r\n */\r\n public loadThemeSolutionsAndTestRestriction(studentProgressId: string, themeItemId: string): Observable<CourseThemeSolutionsWithTestRestrictionsViewModel> {\r\n return this._httpClient.get<CourseThemeSolutionsWithTestRestrictionsViewModel>(this.baseControllerUrl + `load-theme-solutions-and-restriction?studentProgressId=${studentProgressId}&themeItemId=${themeItemId}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject, Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { StudentTestSolutionDetailedModel } from \"../models\";\r\n\r\n/**\r\n * Предоставляет методы для поиска решений тестов \r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TestSolutionDetailedQueryService {\r\n\r\n private _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this._baseUrl = baseUrl + \"api/tutor/test-solution/query/\";\r\n }\r\n\r\n /**\r\n * \r\n * @param id Идентификатор решения теста\r\n * @returns \r\n */\r\n public get(id: string): Observable<StudentTestSolutionDetailedModel> {\r\n return this._httpClient.get<StudentTestSolutionDetailedModel>(this._baseUrl + `Get/By/Id/${id}/detailed`);\r\n }\r\n}","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { CourseLandingPageDetailedModel, CourseLandingPageSimpleModel, SearchCourseLandingPageRequest } from '../models';\r\nimport { GetListResult } from 'croco-generic-app-logic';\r\n\r\n/**\r\n * Предоставляет методы для работы с лендинг страницами для курса\r\n * Контроллер = Tutor.Api.Controllers.Landings.CourseLandingPageController\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseLandingPageQueryService {\r\n\r\n private readonly _baseUrl: string = \"\";\r\n\r\n constructor(\r\n private readonly _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this._baseUrl = baseUrl + 'api/tutor/course-landing-page/query';\r\n }\r\n\r\n /**\r\n * Поиск лендинг страниц\r\n * @param model \r\n * @returns \r\n */\r\n search(model: SearchCourseLandingPageRequest) {\r\n return this._httpClient.post<GetListResult<CourseLandingPageSimpleModel>>(`${this._baseUrl}/search`, model);\r\n }\r\n\r\n /**\r\n * Получить лендинг страницу по идентификатору\r\n * @param id \r\n * @returns \r\n */\r\n getById(id: string) {\r\n return this._httpClient.get<CourseLandingPageDetailedModel>(`${this._baseUrl}/get-by-id?id=${id}`);\r\n }\r\n\r\n getByIdCached(id: string) {\r\n return this._httpClient.get<CourseLandingPageDetailedModel>(`${this._baseUrl}/get-by-id/cached?id=${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CourseOrderModel, CreateCourseOrderRequest, CreateCourseOrderResponse } from \"../models/course-shop-models\";\r\n\r\n/**\r\n * Предоставляем методы контроллера Tutor.Api.Controllers.Courses.CourseOrderController\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseOrderService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-order';\r\n }\r\n\r\n /**\r\n * Получить заказ на покупку курса по идентификатору\r\n * @param id идентификатор заказа\r\n * @returns \r\n */\r\n getById(id: string) {\r\n return this._httpClient.get<CourseOrderModel>(`${this.baseControllerUrl}/query/get-by-id/${id}`);\r\n }\r\n\r\n /**\r\n * созать заказ на покупку курса\r\n * @param model запрос для создания заказа на покупку курса\r\n * @returns \r\n */\r\n create(model: CreateCourseOrderRequest) {\r\n return this._httpClient.post<CreateCourseOrderResponse>(`${this.baseControllerUrl}/create`, model);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CourseShopWindowDetailedModel } from \"../models\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CourseShopWindowDetailedService {\r\n baseControllerUrl: string;\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = baseUrl + 'api/tutor/course-shop-window-detailed/';\r\n }\r\n\r\n getDefault() {\r\n return this._httpClient.get<CourseShopWindowDetailedModel>(this.baseControllerUrl + 'default');\r\n }\r\n\r\n getById(id: string) {\r\n return this._httpClient.get<CourseShopWindowDetailedModel>(this.baseControllerUrl + `byId/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Inject } from \"@angular/core\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { StudentGroupPaymentPlansModel } from \"../models\";\r\n\r\n/**\r\n * Предоставляет методы контроллера Tutor.Api.Controllers.StudentGroupPaymentPlans.StudentGroupPaymentPlanQueryController\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class StudentGroupPaymentPlanQueryService {\r\n getBaseUrl() {\r\n return `${this._baseUrl}api/tutor/student-group-payment-plan/query`;\r\n }\r\n\r\n constructor(\r\n private _httpClient: HttpClient,\r\n @Inject('BASE_URL') private _baseUrl: string\r\n ) { }\r\n\r\n /**\r\n * Получить группу и глобальные планы оплаты с ней связанные\r\n * @param id идентификатор группы\r\n * @returns групп с планами оплаты\r\n */\r\n public getPaymentPlans(id: string): Observable<StudentGroupPaymentPlansModel> {\r\n return this._httpClient.get<StudentGroupPaymentPlansModel>(`${this.getBaseUrl()}/payment-plans/${id}`);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable, Inject } from \"@angular/core\";\r\nimport { TutorFullApplicationPublicOptions } from \"../models\";\r\nimport { of, tap } from \"rxjs\";\r\n\r\n/**\r\n * Сервис для предоставления публичной конфигурации по приложению\r\n */\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TutorAppConfigurationService {\r\n\r\n static readonly VariableKey = \"__Tutor.FullConfiguration\";\r\n\r\n private baseControllerUrl: string;\r\n\r\n constructor(\r\n private readonly _http: HttpClient,\r\n @Inject('BASE_URL') baseUrl: string\r\n ) {\r\n this.baseControllerUrl = `${baseUrl}api/tutor/settings/application`;\r\n }\r\n\r\n /**\r\n * Получить конифгурацию из window\r\n * @returns\r\n */\r\n get(): TutorFullApplicationPublicOptions {\r\n\r\n const value = window[TutorAppConfigurationService.VariableKey];\r\n\r\n if (value === undefined || value === null) {\r\n throw new Error(`в window не установлена переменная ${TutorAppConfigurationService.VariableKey}`);\r\n }\r\n\r\n return value;\r\n }\r\n\r\n set(value: TutorFullApplicationPublicOptions) {\r\n window[TutorAppConfigurationService.VariableKey] = value;\r\n }\r\n\r\n getFromServerIfValueNotSet() {\r\n\r\n const value = window[TutorAppConfigurationService.VariableKey];\r\n\r\n if (value === undefined || value === null) {\r\n return this._http.get<TutorFullApplicationPublicOptions>(this.baseControllerUrl).pipe(tap(value => {\r\n this.set(value);\r\n return value;\r\n }));\r\n }\r\n\r\n\r\n return of<TutorFullApplicationPublicOptions>(value);\r\n }\r\n}\r\n","import { CourseThemeItemModel } from \"./course-models\";\r\nimport { QuestionValidationSourceType } from \"./solution-validation-models\";\r\n\r\nexport interface SearchStudentTestSolutions {\r\n isFinished: boolean | null;\r\n studentId: string;\r\n count: number | null;\r\n offSet: number;\r\n}\r\n\r\nexport interface TestSolutionCourseData {\r\n solutionId: string;\r\n courseThemeItemId: string;\r\n courseThemeItemIndex: number;\r\n courseThemeId: string;\r\n courseThemeName: string;\r\n courseName: string;\r\n courseId: string;\r\n nextItem: CourseThemeItemModel;\r\n}\r\n\r\nexport enum TestQuestionType {\r\n SelectRightAnswerOrAnswers = 'SelectRightAnswerOrAnswers',\r\n TypeRightAnswer = 'TypeRightAnswer',\r\n DetailedAnswer = 'DetailedAnswer',\r\n TypeAnswerWithErrors = 'TypeAnswerWithErrors'\r\n}\r\n\r\nexport interface SolutionWithAnswerModel {\r\n solutionId: string;\r\n answer: QuestionAnswer;\r\n}\r\n\r\nexport interface StudentTestSolutionWithChatInfo {\r\n solution: StudentTestSolutionSimpleModel;\r\n systemValidation: TestSolutionSystemValidationModel;\r\n unreadMessagesCount: number;\r\n}\r\n\r\nexport interface TestSolutionSystemValidationModel {\r\n studentTotalPoints: number;\r\n studentProgressPercents: number;\r\n maxTotalPoints: number;\r\n questionsCount: number;\r\n validatedQuestionsCount: number;\r\n hasRightAnswerQuestionsCount: number;\r\n}\r\n\r\nexport interface StartSolutionFromDirectory {\r\n workSpaceId: string;\r\n directoryId: string;\r\n useFilter: boolean;\r\n canCheckSingleQuestion: boolean;\r\n filter: QuestionsFilter;\r\n}\r\n\r\nexport interface QuestionsFilter {\r\n types: Array<TestQuestionType>;\r\n}\r\n\r\nexport interface StartTestSolutionByTestId {\r\n testId: string;\r\n studentGroupId: string;\r\n canCheckSingleQuestion: boolean;\r\n}\r\n\r\nexport interface SearchMyTestSolutions {\r\n isFinished: boolean | null;\r\n testId: string;\r\n count: number | null;\r\n offSet: number;\r\n}\r\n\r\nexport interface StudentTestSolutionSimpleModel {\r\n id: string;\r\n testName: string;\r\n testId: string;\r\n isFinished: boolean;\r\n startedOnUtc: string; /* Date */\r\n finishedOnUtc: string | null; /* Date */\r\n}\r\n\r\nexport enum AnswerValidationResultType {\r\n NeedToCheckByYourSelf = 'NeedToCheckByYourSelf',\r\n NotCorrectAnswer = 'NotCorrectAnswer',\r\n PartiallyCorrectAnswer = 'PartiallyCorrectAnswer',\r\n CorrectAnswer = 'CorrectAnswer',\r\n InProccess = 'InProccess'\r\n}\r\n\r\nexport interface SolutionWithAnswersModel {\r\n solutionId: string;\r\n answers: Array<QuestionAnswer>;\r\n}\r\n\r\nexport interface StudentTestSolutionModel {\r\n studentId: string;\r\n solutionId: string;\r\n studentGroupId: string;\r\n hasCuratorValidation: boolean;\r\n canCheckSingleQuestion: boolean;\r\n startedOnUtc: string; /* Date */\r\n finishedOnUtc: string | null; /* Date */\r\n isFinished: boolean;\r\n solution: StudentTestSolutionDataModel;\r\n test: TestModel;\r\n}\r\n\r\n\r\nexport interface StudentTestSolutionDataModel {\r\n /**\r\n * Есть ли вопросы, которые находятся в процессе расчёта результата\r\n */\r\n hasAnswersInProccess: boolean;\r\n answers: Array<QuestionAnswerWithResult>;\r\n}\r\n\r\nexport interface TestModel {\r\n name: string;\r\n description: string;\r\n questions: Array<TestQuestionModel>;\r\n}\r\n\r\nexport interface TestQuestionModel {\r\n id: string;\r\n title: string;\r\n titleBodyMarkUp: string;\r\n helpBodyMarkUp: string;\r\n answerExplanationMarkUp: string;\r\n titleBodyMarkUpMobile: string;\r\n helpBodyMarkUpMobile: string;\r\n answerExplanationMarkUpMobile: string;\r\n type: TestQuestionType;\r\n selectRightAnswerOrAnswersData: SelectRightAnswerOrAnswersQuestionData;\r\n typeRightAnswerQuestionData: TypeRightAnswerQuestionData;\r\n typeAnswerWithErrorsData: TypeAnswerWithErrorsQuestionData;\r\n}\r\n\r\nexport interface TypeAnswerWithErrorsQuestionData {\r\n rightAnswer: string;\r\n ignoreTextOrder: boolean;\r\n}\r\n\r\n\r\nexport interface TestWithActiveSolutionModel {\r\n testId: string;\r\n activeSolutionId: string;\r\n test: TestModel;\r\n}\r\n\r\nexport interface QuestionAnswer {\r\n questionId: string;\r\n answerOrAnswers: string;\r\n}\r\n\r\nexport interface QuestionAnswerWithResult {\r\n isChecked: boolean;\r\n questionId: string;\r\n answerOrAnswers: string;\r\n pointsValidation: QuestionPointsValidationModel;\r\n resultType: AnswerValidationResultType;\r\n}\r\n\r\nexport interface QuestionPointsValidationModel {\r\n errorOccured: boolean;\r\n inProccess: boolean;\r\n answerPoints: number;\r\n questionTotalPoints: number;\r\n description: string;\r\n isValidated: boolean;\r\n sourceType: QuestionValidationSourceType;\r\n validatorId: string;\r\n}\r\n\r\nexport interface SelectRightAnswerOrAnswersQuestionData {\r\n selectRightAnswerTitle: string;\r\n rightAnswersCount: number;\r\n answers: Array<Answer>;\r\n}\r\n\r\nexport interface Answer {\r\n text: string;\r\n isRightAnswer: boolean;\r\n}\r\n\r\nexport interface TypeRightAnswerQuestionData {\r\n caseInSensitive: boolean;\r\n rightAnswers: Array<string>;\r\n}\r\n\r\nexport interface StudentTestSolutionDetailedModel {\r\n solutionId: string;\r\n hasAnswersInProccess: boolean;\r\n hasCuratorValidation: boolean;\r\n canCheckSingleQuestion: boolean;\r\n studentGroupId: string;\r\n studentId: string;\r\n startedOnUtc: Date;\r\n finishedOnUtc: Date | null;\r\n isFinished: boolean;\r\n test: StudentTestSolutionDetailedTestModel;\r\n}\r\n\r\nexport interface StudentTestSolutionDetailedTestModel {\r\n name: string;\r\n description: string;\r\n questions: Array<StudentTestSolutionDetailedTestQuestion>;\r\n}\r\n\r\nexport interface StudentTestSolutionDetailedTestQuestion {\r\n question: TestQuestionModel;\r\n answerWithValidation: QuestionAnswerWithResult;\r\n isQuestionLikedByStudent: boolean;\r\n}\r\n","import { QuestionAnswerWithResult } from \"./test-solution-models\";\r\n\r\nexport interface TestSolutionWithPointsValidation {\r\n solutionId: string; \r\n hasPointsResult: boolean; \r\n questions: Array<QuestionAnswerWithResult>; \r\n studentTotalPoints: number; \r\n maxTotalPoints: number; \r\n questionsCount: number; \r\n validatedQuestionsCount: number; \r\n inProccessQuestionsCount: number; \r\n hasRightAnswerQuestionsCount: number; \r\n}\r\n\r\nexport enum QuestionValidationSourceType {\r\n\tSystem = 'System',\r\n\tStudent = 'Student',\r\n\tCurator = 'Curator'\r\n}\r\n\r\nexport interface TestQuestionWithModifiers {\r\n questionId: string; \r\n modifiers: Array<TestQuestionModiferModel>; \r\n}\r\n\r\nexport interface TestQuestionModiferModel {\r\n name: string; \r\n data: string; \r\n}\r\n\r\nexport interface SaveQuestionPointsValidation {\r\n idModel: QuestionInSolutionIdModel; \r\n answerPoints: number; \r\n questionTotalPoints: number; \r\n description: string; \r\n}\r\n\r\nexport interface QuestionInSolutionIdModel {\r\n solutionId: string; \r\n questionId: string; \r\n}","export interface CourseDetailedModel {\r\n id: string; \r\n name: string; \r\n templateId: string; \r\n weight: number; \r\n versionId: string; \r\n themes: Array<CourseThemeDetailedModel>; \r\n}\r\n\r\nexport interface CourseSimpleModel {\r\n id: string; \r\n name: string; \r\n weight: number; \r\n versionId: string; \r\n}\r\n\r\nexport interface CourseThemeDetailedModel {\r\n id: string; \r\n name: string; \r\n description: string; \r\n weight: number; \r\n courseVersionId: string; \r\n items: Array<CourseThemeItemModel>; \r\n}\r\n\r\n\r\nexport interface CourseThemeItemModel {\r\n id: string; \r\n name: string; \r\n html: string; \r\n type: CourseThemeItemType; \r\n weight: number; \r\n templateItemId: string; \r\n test: CourseThemeItemTestModel; \r\n}\r\n\r\n\r\nexport enum CourseThemeItemType {\r\n JustHtml = 'JustHtml',\r\n Test = 'Test'\r\n}\r\n\r\nexport interface CourseThemeItemTestModel {\r\n testId: string; \r\n testName: string; \r\n totalPointsToPass: number; \r\n totalPercentageToPass: number; \r\n}","import { StudentSimpleModel } from \"./student-models\";\r\n\r\nexport interface CourseItemGlobalTestRestrictionModel {\r\n courseThemeItemId: string;\r\n testRestriction: TestRestrictionModel;\r\n}\r\n\r\nexport interface TestRestrictionModel {\r\n maxTriesCount: number | null;\r\n maxStartDate: string | null;\r\n}\r\n\r\nexport interface SearchStudentThemeItemTestRestrictionsRequest {\r\n q: string;\r\n courseThemeItemId: string;\r\n count: number | null;\r\n offSet: number;\r\n}\r\n\r\nexport interface ThemeItemTestStudentRestrictionModel {\r\n restriction: TestRestrictionModel;\r\n student: StudentSimpleModel;\r\n}\r\n\r\nexport interface CourseItemStudentTestRestrictionModel {\r\n courseThemeItemId: string;\r\n studentId: string;\r\n testRestriction: TestRestrictionModel;\r\n}\r\n\r\nexport interface TestRestrictionValidationResult {\r\n testRestriction: TestRestrictionModel;\r\n canStartTest: boolean;\r\n restrictionRuleType: TestRestrictionValidationResultRuleType | null;\r\n validationMessage: string;\r\n solutionsCount: number;\r\n attemptsLeft: number;\r\n}\r\n\r\nexport enum TestRestrictionValidationResultRuleType {\r\n DateExpired = 'DateExpired',\r\n AttemptsExceeded = 'AttemptsExceeded'\r\n}\r\n\r\nexport interface GetCourseThemeItemStudentTestRestrictionRequest {\r\n courseThemeItemId: string;\r\n studentId: string;\r\n}\r\n\r\nexport interface TestRestrictionValidationWithDeadLineWarningResult {\r\n deadLineWarning: DeadLineWithWarningMessage;\r\n restrictionValidationResult: TestRestrictionValidationResult;\r\n}\r\n\r\nexport interface CourseThemeItemStudentDeadlineWarningModel {\r\n themeItemId: string;\r\n courseThemeId: string;\r\n deadLine: string;\r\n warningMessage: string;\r\n}\r\n\r\nexport interface GetStudentCourseThemeItemsDeadlineWarningsRequest {\r\n courseId: string;\r\n studentId: string;\r\n}\r\n\r\nexport interface CourseThemeIdWithDeadlineWarnings {\r\n courseThemeId: string;\r\n deadlines: Array<DeadLineWithWarningMessage>;\r\n}\r\n\r\nexport interface DeadLineWithWarningMessage {\r\n deadLine: string;\r\n warningMessage: string;\r\n}\r\n","import { IconSimpleModel } from \"./icon-models\";\r\n\r\nexport interface SubjectMenu {\r\n root: SubjectMenuItem;\r\n}\r\n\r\nexport interface SubjectMenuItem {\r\n text: string;\r\n path: string;\r\n type: SubjectMenuItemType;\r\n workSpaceId: string;\r\n children: Array<SubjectMenuItem>;\r\n}\r\n\r\nexport enum SubjectMenuItemType {\r\n MenuItem = 'MenuItem',\r\n WorkSpaceLink = 'WorkSpaceLink',\r\n SubjectTestsLink = 'SubjectTestsLink',\r\n}\r\n\r\nexport interface SubjectModel {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n}\r\n\r\nexport interface CreateSubject {\r\n name: string;\r\n alias: string;\r\n}\r\n\r\nexport interface UpdateSubjectRequest {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n}\r\n\r\nexport interface SubjectCountsModel {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n questionsCount: number;\r\n testsCount: number;\r\n}\r\n\r\nexport interface ChangeSubjectConfiguration {\r\n id: string;\r\n configuration: SubjectMenu;\r\n}\r\n\r\nexport interface OrderSubjectsRequest {\r\n ids: Array<string>;\r\n}\r\n\r\nexport interface SubjectWithIconModel {\r\n id: string;\r\n name: string;\r\n alias: string;\r\n icon: IconSimpleModel;\r\n}\r\n\r\nexport interface SubjectForStudentDetailedViewModel {\r\n icon: IconSimpleModel;\r\n subject: SubjectModel;\r\n menu: SubjectMenu;\r\n globalTests: Array<SubjectTestSimpleModel>;\r\n}\r\n\r\nexport interface SubjectTestSimpleModel {\r\n id: string;\r\n name: string;\r\n}\r\n","/**\r\n * Роли для модуля Tutor\r\n */\r\nexport class TutorRoles {\r\n\r\n /**\r\n * Куратор - проверяет домашние задания студентов (учеников).\r\n */\r\n static readonly curator: string = 'Tutor.Curator';\r\n\r\n /**\r\n * Администратор - управляет и настраивает платформу\r\n */\r\n static readonly admin: string = 'Tutor.Admin';\r\n\r\n /**\r\n * Студент (ученик) - проходит курсы, решает тесты, просматривает материалы.\r\n */\r\n static readonly student: string = 'Tutor.Student';\r\n\r\n /**\r\n * Пользователь, который может вносить вопросы\r\n */\r\n static readonly testAuthor: string = 'Tutor.TestAuthor';\r\n}","/*\n * Public API Surface of tutor-logic\n */\n\nexport * from './lib/tutor-logic.module';\nexport * from './lib/services';\nexport * from './lib/models';\nexport * from './lib/consts'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/lib/models/index.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ export * from './setting-models';
|
|
|
4
4
|
export * from './student-models';
|
|
5
5
|
export * from './group-models';
|
|
6
6
|
export * from './group-enter-models';
|
|
7
|
-
export * from './open-api-models';
|
|
8
7
|
export * from './test-solution-models';
|
|
9
8
|
export * from './solution-validation-models';
|
|
10
9
|
export * from './question-like-models';
|
|
@@ -171,7 +171,6 @@ export interface StudentTestSolutionDetailedModel {
|
|
|
171
171
|
finishedOnUtc: Date | null;
|
|
172
172
|
isFinished: boolean;
|
|
173
173
|
test: StudentTestSolutionDetailedTestModel;
|
|
174
|
-
cdnOptions: S3CdnPublicOptions;
|
|
175
174
|
}
|
|
176
175
|
export interface StudentTestSolutionDetailedTestModel {
|
|
177
176
|
name: string;
|
|
@@ -183,7 +182,3 @@ export interface StudentTestSolutionDetailedTestQuestion {
|
|
|
183
182
|
answerWithValidation: QuestionAnswerWithResult;
|
|
184
183
|
isQuestionLikedByStudent: boolean;
|
|
185
184
|
}
|
|
186
|
-
export interface S3CdnPublicOptions {
|
|
187
|
-
useCdn: boolean;
|
|
188
|
-
imageUrlFormat: string;
|
|
189
|
-
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
|
-
import { OpenApiUrlProvider } from "../extensions";
|
|
3
2
|
import { StudentTestGroupRelationDetailedModel } from "../models";
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export declare class StudentGroupTestRelationQueryService {
|
|
6
|
-
private _httpClient;
|
|
7
|
-
private _baseUrlProvider;
|
|
5
|
+
private readonly _httpClient;
|
|
8
6
|
getBaseUrl(): string;
|
|
9
|
-
|
|
7
|
+
private readonly _baseUrl;
|
|
8
|
+
constructor(_httpClient: HttpClient, baseUrl: string);
|
|
10
9
|
getById(studentGroupId: string, testId: string): import("rxjs").Observable<StudentTestGroupRelationDetailedModel>;
|
|
11
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<StudentGroupTestRelationQueryService, never>;
|
|
12
11
|
static ɵprov: i0.ɵɵInjectableDeclaration<StudentGroupTestRelationQueryService>;
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
|
-
import { OpenApiUrlProvider } from "../extensions";
|
|
3
2
|
import { Observable } from "rxjs";
|
|
4
3
|
import { SearchStudentTestSolutions, GetListResult, TestSolutionCourseData, StudentTestSolutionWithChatInfo, StudentTestSolutionModel } from "../models";
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
export declare class TestSolutionQueryService {
|
|
7
|
-
private _httpClient;
|
|
8
|
-
private
|
|
9
|
-
|
|
10
|
-
constructor(_httpClient: HttpClient, _urlProvider: OpenApiUrlProvider);
|
|
6
|
+
private readonly _httpClient;
|
|
7
|
+
private readonly _baseUrl;
|
|
8
|
+
constructor(_httpClient: HttpClient, baseUrl: string);
|
|
11
9
|
searchByStudent(model: SearchStudentTestSolutions): Observable<GetListResult<StudentTestSolutionWithChatInfo>>;
|
|
12
10
|
getCourseData(id: string): Observable<TestSolutionCourseData>;
|
|
13
11
|
getSolutionById(id: string): Observable<StudentTestSolutionModel>;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
|
-
import { OpenApiUrlProvider } from "../../extensions";
|
|
3
2
|
import { GetListResult, SearchQuestionsByLikes, TestQuestionModel } from "../../models";
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export declare class OpenApiQuestionLikeService {
|
|
6
|
-
private _httpClient;
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
constructor(_httpClient: HttpClient, _urlProvider: OpenApiUrlProvider);
|
|
5
|
+
private readonly _httpClient;
|
|
6
|
+
private readonly _baseUrl;
|
|
7
|
+
constructor(_httpClient: HttpClient, baseUrl: string);
|
|
10
8
|
search(model: SearchQuestionsByLikes): import("rxjs").Observable<GetListResult<TestQuestionModel>>;
|
|
11
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<OpenApiQuestionLikeService, never>;
|
|
12
10
|
static ɵprov: i0.ɵɵInjectableDeclaration<OpenApiQuestionLikeService>;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { HttpClient } from "@angular/common/http";
|
|
2
|
-
import { OpenApiUrlProvider } from "../../extensions";
|
|
3
2
|
import { StudentTestSolutionModel } from "../../models";
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export declare class OpenApiTestSolutionService {
|
|
6
|
-
private _httpClient;
|
|
7
|
-
private
|
|
8
|
-
|
|
9
|
-
constructor(_httpClient: HttpClient, _urlProvider: OpenApiUrlProvider);
|
|
5
|
+
private readonly _httpClient;
|
|
6
|
+
private readonly _baseUrl;
|
|
7
|
+
constructor(_httpClient: HttpClient, baseUrl: string);
|
|
10
8
|
getById(id: string): import("rxjs").Observable<StudentTestSolutionModel>;
|
|
11
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<OpenApiTestSolutionService, never>;
|
|
12
10
|
static ɵprov: i0.ɵɵInjectableDeclaration<OpenApiTestSolutionService>;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export class OpenApiExtensions {
|
|
2
|
-
static buildOpenApiUrl(urlProvider, adding) {
|
|
3
|
-
return urlProvider.getUrl() + adding;
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlbkFwaUV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL2V4dGVuc2lvbnMvT3BlbkFwaUV4dGVuc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixNQUFNLENBQUMsZUFBZSxDQUFDLFdBQStCLEVBQUUsTUFBYztRQUNwRSxPQUFPLFdBQVcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDdkMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3BlbkFwaVVybFByb3ZpZGVyIH0gZnJvbSBcIi4vT3BlbkFwaVVybFByb3ZpZGVyXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgT3BlbkFwaUV4dGVuc2lvbnMge1xyXG4gIHN0YXRpYyBidWlsZE9wZW5BcGlVcmwodXJsUHJvdmlkZXI6IE9wZW5BcGlVcmxQcm92aWRlciwgYWRkaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHVybFByb3ZpZGVyLmdldFVybCgpICsgYWRkaW5nO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common/http";
|
|
4
|
-
export class OpenApiUrlProvider {
|
|
5
|
-
constructor(_httpClient, baseUrl) {
|
|
6
|
-
this._httpClient = _httpClient;
|
|
7
|
-
this._urlValue = "";
|
|
8
|
-
this._data = {
|
|
9
|
-
useOpenApiServer: false,
|
|
10
|
-
openApiUrl: ""
|
|
11
|
-
};
|
|
12
|
-
this._urlValue = baseUrl;
|
|
13
|
-
this.getSettings(baseUrl);
|
|
14
|
-
}
|
|
15
|
-
getSettings(baseUrl) {
|
|
16
|
-
this._httpClient.get(baseUrl + "api/settings/open-api/get").subscribe(data => {
|
|
17
|
-
if (data.useOpenApiServer && data.openApiUrl) {
|
|
18
|
-
this._data = data;
|
|
19
|
-
this._urlValue = data.openApiUrl;
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
getData() {
|
|
24
|
-
return this._data;
|
|
25
|
-
}
|
|
26
|
-
getUrl() {
|
|
27
|
-
return this._urlValue;
|
|
28
|
-
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiUrlProvider, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
30
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiUrlProvider, providedIn: 'root' }); }
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: OpenApiUrlProvider, decorators: [{
|
|
33
|
-
type: Injectable,
|
|
34
|
-
args: [{
|
|
35
|
-
providedIn: 'root',
|
|
36
|
-
}]
|
|
37
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
|
|
38
|
-
type: Inject,
|
|
39
|
-
args: ['BASE_URL']
|
|
40
|
-
}] }] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlbkFwaVVybFByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9leHRlbnNpb25zL09wZW5BcGlVcmxQcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTW5ELE1BQU0sT0FBTyxrQkFBa0I7SUFRN0IsWUFBb0IsV0FBdUIsRUFDckIsT0FBZTtRQURqQixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQU4zQyxjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ3ZCLFVBQUssR0FBeUI7WUFDNUIsZ0JBQWdCLEVBQUUsS0FBSztZQUN2QixVQUFVLEVBQUUsRUFBRTtTQUNmLENBQUE7UUFJQyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBZTtRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBdUIsT0FBTyxHQUFHLDJCQUEyQixDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pHLElBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUMsQ0FBQztnQkFDM0MsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUNuQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDOzhHQTdCVSxrQkFBa0IsNENBU25CLFVBQVU7a0hBVFQsa0JBQWtCLGNBRmpCLE1BQU07OzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQVVJLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT3BlbkFwaVNlcnZlck9wdGlvbnMgfSBmcm9tIFwiLi4vbW9kZWxzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3BlbkFwaVVybFByb3ZpZGVyIHtcclxuXHJcbiAgX3VybFZhbHVlOiBzdHJpbmcgPSBcIlwiO1xyXG4gIF9kYXRhOiBPcGVuQXBpU2VydmVyT3B0aW9ucyA9IHtcclxuICAgIHVzZU9wZW5BcGlTZXJ2ZXI6IGZhbHNlLFxyXG4gICAgb3BlbkFwaVVybDogXCJcIlxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgIEBJbmplY3QoJ0JBU0VfVVJMJykgYmFzZVVybDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl91cmxWYWx1ZSA9IGJhc2VVcmw7XHJcbiAgICB0aGlzLmdldFNldHRpbmdzKGJhc2VVcmwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2V0dGluZ3MoYmFzZVVybDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9odHRwQ2xpZW50LmdldDxPcGVuQXBpU2VydmVyT3B0aW9ucz4oYmFzZVVybCArIFwiYXBpL3NldHRpbmdzL29wZW4tYXBpL2dldFwiKS5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgIGlmKGRhdGEudXNlT3BlbkFwaVNlcnZlciAmJiBkYXRhLm9wZW5BcGlVcmwpe1xyXG4gICAgICAgIHRoaXMuX2RhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuX3VybFZhbHVlID0gZGF0YS5vcGVuQXBpVXJsO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcclxuICB9XHJcblxyXG4gIGdldFVybCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX3VybFZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export { OpenApiExtensions } from './OpenApiExtensions';
|
|
2
|
-
export { OpenApiUrlProvider } from './OpenApiUrlProvider';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL2V4dGVuc2lvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBPcGVuQXBpRXh0ZW5zaW9ucyB9IGZyb20gJy4vT3BlbkFwaUV4dGVuc2lvbnMnO1xyXG5leHBvcnQgeyBPcGVuQXBpVXJsUHJvdmlkZXIgfSBmcm9tICcuL09wZW5BcGlVcmxQcm92aWRlcic7Il19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3Blbi1hcGktbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9tb2RlbHMvb3Blbi1hcGktbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE9wZW5BcGlTZXJ2ZXJPcHRpb25zIHtcclxuICAgIHVzZU9wZW5BcGlTZXJ2ZXI6IGJvb2xlYW47IFxyXG4gICAgb3BlbkFwaVVybDogc3RyaW5nOyBcclxufSJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from "@angular/common/http";
|
|
2
|
-
import { OpenApiServerOptions } from "../models";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class OpenApiUrlProvider {
|
|
5
|
-
private _httpClient;
|
|
6
|
-
_urlValue: string;
|
|
7
|
-
_data: OpenApiServerOptions;
|
|
8
|
-
constructor(_httpClient: HttpClient, baseUrl: string);
|
|
9
|
-
getSettings(baseUrl: string): void;
|
|
10
|
-
getData(): OpenApiServerOptions;
|
|
11
|
-
getUrl(): string;
|
|
12
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OpenApiUrlProvider, never>;
|
|
13
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<OpenApiUrlProvider>;
|
|
14
|
-
}
|