tutor-logic 2.0.11 → 2.0.13

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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cnNlLXNob3AtbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9tb2RlbHMvY291cnNlLXNob3AtbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIENyZWF0ZUNvdXJzZU9yZGVyUmVxdWVzdCB7XHJcbiAgICBjb3Vyc2VJZDogc3RyaW5nO1xyXG4gICAgdGFyaWZmSWQ6IHN0cmluZztcclxuICAgIGlzRnJlZU9mQ2hhcmdlOiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUNvdXJzZU9yZGVyUmVzcG9uc2Uge1xyXG4gICAgc3VjY2VlZGVkOiBib29sZWFuO1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIGVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZU9yZGVyTW9kZWwge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIGNvdXJzZUlkOiBzdHJpbmc7XHJcbiAgICB0YXJpZmZJZDogc3RyaW5nO1xyXG4gICAgaXNGcmVlT2ZDaGFyZ2U6IGJvb2xlYW47XHJcbiAgICB1c2VySWQ6IHN0cmluZztcclxuICAgIGlzRmluaXNoZWQ6IGJvb2xlYW47XHJcbiAgICBjb3Vyc2VXaXRoUGxhbnM6IFN0dWRlbnRHcm91cFdpdGhQYXltZW50UGxhbnNNb2RlbDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3Vyc2VTaG9wV2luZG93RGV0YWlsZWRNb2RlbCB7XHJcbiAgICBpZDogc3RyaW5nO1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIGNvdXJzZXM6IEFycmF5PFN0dWRlbnRHcm91cFdpdGhQYXltZW50UGxhbnNNb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudEdyb3VwV2l0aFBheW1lbnRQbGFuc01vZGVsIHtcclxuICAgIHN0dWRlbnRHcm91cE5hbWU6IHN0cmluZztcclxuICAgIHN0dWRlbnRHcm91cElkOiBzdHJpbmc7XHJcbiAgICBnZXRDb3Vyc2VNaW5pSHRtbDogc3RyaW5nO1xyXG4gICAgZ2V0Q291cnNlRGV0YWlsZWRIdG1sOiBzdHJpbmc7XHJcbiAgICBpc0ZyZWVPZkNoYXJnZTogYm9vbGVhbjtcclxuICAgIHBheW1lbnRQbGFuczogQXJyYXk8U3R1ZGVudEdyb3VwUGF5bWVudFBsYW5TaW1wbGVNb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3R1ZGVudEdyb3VwUGF5bWVudFBsYW5TaW1wbGVNb2RlbCB7XHJcbiAgICBpZDogc3RyaW5nO1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIGRheXNMZW5ndGg6IG51bWJlcjtcclxuICAgIGFtb3VudDogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFN0dWRlbnRHcm91cFBheW1lbnRQbGFuc01vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBpc0ZyZWVPZkNoYXJnZTogYm9vbGVhbjtcclxuICAgIGdsb2JhbFBheW1lbnRQbGFuczogU3R1ZGVudEdyb3VwUGF5bWVudFBsYW5TaW1wbGVNb2RlbFtdO1xyXG59XHJcblxyXG5cclxuXHJcbiJdfQ==
@@ -15,4 +15,5 @@ export * from './subject.models';
15
15
  export * from './icon-models';
16
16
  export * from './course-test-models';
17
17
  export * from './landing-models';
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUE7QUFDaEMsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsMkJBQTJCLENBQUE7QUFDekMsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsa0JBQWtCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdGVzdC1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vc2V0dGluZy1tb2RlbHMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0dWRlbnQtbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2dyb3VwLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9ncm91cC1lbnRlci1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vb3Blbi1hcGktbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL3Rlc3Qtc29sdXRpb24tbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL3NvbHV0aW9uLXZhbGlkYXRpb24tbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL3F1ZXN0aW9uLWxpa2UtbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2NvdXJzZS1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vY3VyYXRvci1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vdGVzdC1yZXN0cmljdGlvbi1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vc3ViamVjdC5tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vaWNvbi1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vY291cnNlLXRlc3QtbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2xhbmRpbmctbW9kZWxzJyJdfQ==
18
+ export * from './course-shop-models';
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsa0JBQWtCLENBQUE7QUFDaEMsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjLDhCQUE4QixDQUFBO0FBQzVDLGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMsMkJBQTJCLENBQUE7QUFDekMsY0FBYyxrQkFBa0IsQ0FBQTtBQUNoQyxjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLHNCQUFzQixDQUFBO0FBQ3BDLGNBQWMsa0JBQWtCLENBQUE7QUFDaEMsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9kZWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi90ZXN0LW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9zZXR0aW5nLW1vZGVscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3R1ZGVudC1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vZ3JvdXAtbW9kZWxzJ1xyXG5leHBvcnQgKiBmcm9tICcuL2dyb3VwLWVudGVyLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9vcGVuLWFwaS1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vdGVzdC1zb2x1dGlvbi1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vc29sdXRpb24tdmFsaWRhdGlvbi1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vcXVlc3Rpb24tbGlrZS1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vY291cnNlLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9jdXJhdG9yLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi90ZXN0LXJlc3RyaWN0aW9uLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9zdWJqZWN0Lm1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9pY29uLW1vZGVscydcclxuZXhwb3J0ICogZnJvbSAnLi9jb3Vyc2UtdGVzdC1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGFuZGluZy1tb2RlbHMnXHJcbmV4cG9ydCAqIGZyb20gJy4vY291cnNlLXNob3AtbW9kZWxzJyJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZGluZy1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy9sYW5kaW5nLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDb3Vyc2VMYW5kaW5nUGFnZVNpbXBsZU1vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaENvdXJzZUxhbmRpbmdQYWdlUmVxdWVzdCB7XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgY291bnQ6IG51bWJlciB8IG51bGw7XHJcbiAgICBvZmZTZXQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3Vyc2VMYW5kaW5nUGFnZURldGFpbGVkTW9kZWwge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIHN0dWRlbnRHcm91cElkOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgZGF0YUpzb246IHN0cmluZztcclxuICAgIGRhdGFUeXBlOiBzdHJpbmc7XHJcbiAgICBibG9ja3M6IEFycmF5PENvdXJzZUxhbmRpbmdQYWdlQmxvY2tNb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ291cnNlTGFuZGluZ1BhZ2VCbG9ja01vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICB2ZXJzaW9uSWQ6IHN0cmluZztcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBkYXRhSnNvbjogc3RyaW5nO1xyXG4gICAgZGF0YVR5cGU6IHN0cmluZztcclxufSJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZGluZy1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL21vZGVscy9sYW5kaW5nLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3R1ZGVudEdyb3VwUGF5bWVudFBsYW5TaW1wbGVNb2RlbCB9IGZyb20gXCIuL2NvdXJzZS1zaG9wLW1vZGVsc1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3Vyc2VMYW5kaW5nUGFnZVNpbXBsZU1vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaENvdXJzZUxhbmRpbmdQYWdlUmVxdWVzdCB7XHJcbiAgICBzdHVkZW50R3JvdXBJZDogc3RyaW5nO1xyXG4gICAgY291bnQ6IG51bWJlciB8IG51bGw7XHJcbiAgICBvZmZTZXQ6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3Vyc2VMYW5kaW5nUGFnZURldGFpbGVkTW9kZWwge1xyXG4gICAgaWQ6IHN0cmluZztcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIHN0dWRlbnRHcm91cElkOiBzdHJpbmc7XHJcbiAgICBpc0ZyZWVPZkNoYXJnZTogYm9vbGVhbjtcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBkYXRhSnNvbjogc3RyaW5nO1xyXG4gICAgZGF0YVR5cGU6IHN0cmluZztcclxuICAgIGJsb2NrczogQXJyYXk8Q291cnNlTGFuZGluZ1BhZ2VCbG9ja01vZGVsPjtcclxuICAgIHBheW1lbnRQbGFuczogQXJyYXk8U3R1ZGVudEdyb3VwUGF5bWVudFBsYW5TaW1wbGVNb2RlbD47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ291cnNlTGFuZGluZ1BhZ2VCbG9ja01vZGVsIHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICB2ZXJzaW9uSWQ6IHN0cmluZztcclxuICAgIG5hbWU6IHN0cmluZztcclxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBkYXRhSnNvbjogc3RyaW5nO1xyXG4gICAgZGF0YVR5cGU6IHN0cmluZztcclxufSJdfQ==
@@ -0,0 +1,41 @@
1
+ import { Inject } from "@angular/core";
2
+ import { Injectable } from "@angular/core";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ /**
6
+ * Предоставляем методы контроллера Tutor.Api.Controllers.Courses.CourseOrderController
7
+ */
8
+ export class CourseOrderService {
9
+ constructor(_httpClient, baseUrl) {
10
+ this._httpClient = _httpClient;
11
+ this.baseControllerUrl = baseUrl + 'api/tutor/course-order';
12
+ }
13
+ /**
14
+ * Получить заказ на покупку курса по идентификатору
15
+ * @param id идентификатор заказа
16
+ * @returns
17
+ */
18
+ getById(id) {
19
+ return this._httpClient.get(`${this.baseControllerUrl}/query/get-by-id/${id}`);
20
+ }
21
+ /**
22
+ * созать заказ на покупку курса
23
+ * @param model запрос для создания заказа на покупку курса
24
+ * @returns
25
+ */
26
+ create(model) {
27
+ return this._httpClient.post(`${this.baseControllerUrl}/create`, model);
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseOrderService, 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: CourseOrderService, providedIn: 'root' }); }
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseOrderService, 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ291cnNlT3JkZXJTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9zZXJ2aWNlcy9Db3Vyc2VPcmRlclNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFHM0M7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQWtCO0lBRzNCLFlBQ1ksV0FBdUIsRUFDWCxPQUFlO1FBRDNCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBRy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLEdBQUcsd0JBQXdCLENBQUM7SUFDaEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsRUFBVTtRQUNkLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQW1CLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixvQkFBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxLQUErQjtRQUNsQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUE0QixHQUFHLElBQUksQ0FBQyxpQkFBaUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7OEdBMUJRLGtCQUFrQiw0Q0FLZixVQUFVO2tIQUxiLGtCQUFrQixjQUZmLE1BQU07OzJGQUVULGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQU1RLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvdXJzZU9yZGVyTW9kZWwsIENyZWF0ZUNvdXJzZU9yZGVyUmVxdWVzdCwgQ3JlYXRlQ291cnNlT3JkZXJSZXNwb25zZSB9IGZyb20gXCIuLi9tb2RlbHMvY291cnNlLXNob3AtbW9kZWxzXCI7XHJcblxyXG4vKipcclxuICog0J/RgNC10LTQvtGB0YLQsNCy0LvRj9C10Lwg0LzQtdGC0L7QtNGLINC60L7QvdGC0YDQvtC70LvQtdGA0LAgVHV0b3IuQXBpLkNvbnRyb2xsZXJzLkNvdXJzZXMuQ291cnNlT3JkZXJDb250cm9sbGVyXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3Vyc2VPcmRlclNlcnZpY2Uge1xyXG4gICAgYmFzZUNvbnRyb2xsZXJVcmw6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9odHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgICAgIEBJbmplY3QoJ0JBU0VfVVJMJykgYmFzZVVybDogc3RyaW5nXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLmJhc2VDb250cm9sbGVyVXJsID0gYmFzZVVybCArICdhcGkvdHV0b3IvY291cnNlLW9yZGVyJztcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqINCf0L7Qu9GD0YfQuNGC0Ywg0LfQsNC60LDQtyDQvdCwINC/0L7QutGD0L/QutGDINC60YPRgNGB0LAg0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDXHJcbiAgICAgKiBAcGFyYW0gaWQg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0LfQsNC60LDQt9CwXHJcbiAgICAgKiBAcmV0dXJucyBcclxuICAgICAqL1xyXG4gICAgZ2V0QnlJZChpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQuZ2V0PENvdXJzZU9yZGVyTW9kZWw+KGAke3RoaXMuYmFzZUNvbnRyb2xsZXJVcmx9L3F1ZXJ5L2dldC1ieS1pZC8ke2lkfWApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog0YHQvtC30LDRgtGMINC30LDQutCw0Lcg0L3QsCDQv9C+0LrRg9C/0LrRgyDQutGD0YDRgdCwXHJcbiAgICAgKiBAcGFyYW0gbW9kZWwg0LfQsNC/0YDQvtGBINC00LvRjyDRgdC+0LfQtNCw0L3QuNGPINC30LDQutCw0LfQsCDQvdCwINC/0L7QutGD0L/QutGDINC60YPRgNGB0LBcclxuICAgICAqIEByZXR1cm5zIFxyXG4gICAgICovXHJcbiAgICBjcmVhdGUobW9kZWw6IENyZWF0ZUNvdXJzZU9yZGVyUmVxdWVzdCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LnBvc3Q8Q3JlYXRlQ291cnNlT3JkZXJSZXNwb25zZT4oYCR7dGhpcy5iYXNlQ29udHJvbGxlclVybH0vY3JlYXRlYCwgbW9kZWwpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,28 @@
1
+ import { Inject } from "@angular/core";
2
+ import { Injectable } from "@angular/core";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class CourseShopWindowDetailedService {
6
+ constructor(_httpClient, baseUrl) {
7
+ this._httpClient = _httpClient;
8
+ this.baseControllerUrl = baseUrl + 'api/tutor/course-shop-window-detailed/';
9
+ }
10
+ getDefault() {
11
+ return this._httpClient.get(this.baseControllerUrl + 'default');
12
+ }
13
+ getById(id) {
14
+ return this._httpClient.get(this.baseControllerUrl + `byId/${id}`);
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseShopWindowDetailedService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
17
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseShopWindowDetailedService, providedIn: 'root' }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseShopWindowDetailedService, decorators: [{
20
+ type: Injectable,
21
+ args: [{
22
+ providedIn: 'root',
23
+ }]
24
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
25
+ type: Inject,
26
+ args: ['BASE_URL']
27
+ }] }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ291cnNlU2hvcFdpbmRvd0RldGFpbGVkU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1dG9yLWxvZ2ljL3NyYy9saWIvc2VydmljZXMvQ291cnNlU2hvcFdpbmRvd0RldGFpbGVkU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU0zQyxNQUFNLE9BQU8sK0JBQStCO0lBR3hDLFlBQ1ksV0FBdUIsRUFDWCxPQUFlO1FBRDNCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBRy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLEdBQUcsd0NBQXdDLENBQUM7SUFDaEYsQ0FBQztJQUVELFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFnQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFVO1FBQ2QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBZ0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RyxDQUFDOzhHQWhCUSwrQkFBK0IsNENBSzVCLFVBQVU7a0hBTGIsK0JBQStCLGNBRjVCLE1BQU07OzJGQUVULCtCQUErQjtrQkFIM0MsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQU1RLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvdXJzZVNob3BXaW5kb3dEZXRhaWxlZE1vZGVsIH0gZnJvbSBcIi4uL21vZGVsc1wiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ291cnNlU2hvcFdpbmRvd0RldGFpbGVkU2VydmljZSB7XHJcbiAgICBiYXNlQ29udHJvbGxlclVybDogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgX2h0dHBDbGllbnQ6IEh0dHBDbGllbnQsXHJcbiAgICAgICAgQEluamVjdCgnQkFTRV9VUkwnKSBiYXNlVXJsOiBzdHJpbmdcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuYmFzZUNvbnRyb2xsZXJVcmwgPSBiYXNlVXJsICsgJ2FwaS90dXRvci9jb3Vyc2Utc2hvcC13aW5kb3ctZGV0YWlsZWQvJztcclxuICAgIH1cclxuXHJcbiAgICBnZXREZWZhdWx0KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LmdldDxDb3Vyc2VTaG9wV2luZG93RGV0YWlsZWRNb2RlbD4odGhpcy5iYXNlQ29udHJvbGxlclVybCArICdkZWZhdWx0Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QnlJZChpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQuZ2V0PENvdXJzZVNob3BXaW5kb3dEZXRhaWxlZE1vZGVsPih0aGlzLmJhc2VDb250cm9sbGVyVXJsICsgYGJ5SWQvJHtpZH1gKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,36 @@
1
+ import { Inject } from "@angular/core";
2
+ import { Injectable } from "@angular/core";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ /**
6
+ * Предоставляет методы контроллера Tutor.Api.Controllers.StudentGroupPaymentPlans.StudentGroupPaymentPlanQueryController
7
+ */
8
+ export class StudentGroupPaymentPlanQueryService {
9
+ getBaseUrl() {
10
+ return `${this._baseUrl}api/tutor/student-group-payment-plan/query`;
11
+ }
12
+ constructor(_httpClient, _baseUrl) {
13
+ this._httpClient = _httpClient;
14
+ this._baseUrl = _baseUrl;
15
+ }
16
+ /**
17
+ * Получить группу и глобальные планы оплаты с ней связанные
18
+ * @param id идентификатор группы
19
+ * @returns групп с планами оплаты
20
+ */
21
+ getPaymentPlans(id) {
22
+ return this._httpClient.get(`${this.getBaseUrl()}/payment-plans/${id}`);
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupPaymentPlanQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupPaymentPlanQueryService, providedIn: 'root' }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupPaymentPlanQueryService, decorators: [{
28
+ type: Injectable,
29
+ args: [{
30
+ providedIn: 'root',
31
+ }]
32
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
33
+ type: Inject,
34
+ args: ['BASE_URL']
35
+ }] }] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3R1ZGVudEdyb3VwUGF5bWVudFBsYW5RdWVyeVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL3NlcnZpY2VzL1N0dWRlbnRHcm91cFBheW1lbnRQbGFuUXVlcnlTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSTNDOztHQUVHO0FBSUgsTUFBTSxPQUFPLG1DQUFtQztJQUM1QyxVQUFVO1FBQ04sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLDRDQUE0QyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxZQUNZLFdBQXVCLEVBQ0gsUUFBZ0I7UUFEcEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDSCxhQUFRLEdBQVIsUUFBUSxDQUFRO0lBQzVDLENBQUM7SUFFTDs7OztPQUlHO0lBQ0ksZUFBZSxDQUFDLEVBQVU7UUFDN0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBZ0MsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzNHLENBQUM7OEdBakJRLG1DQUFtQyw0Q0FPaEMsVUFBVTtrSEFQYixtQ0FBbUMsY0FGaEMsTUFBTTs7MkZBRVQsbUNBQW1DO2tCQUgvQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBUVEsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IFN0dWRlbnRHcm91cFBheW1lbnRQbGFuc01vZGVsIH0gZnJvbSBcIi4uL21vZGVsc1wiO1xyXG5cclxuLyoqXHJcbiAqINCf0YDQtdC00L7RgdGC0LDQstC70Y/QtdGCINC80LXRgtC+0LTRiyDQutC+0L3RgtGA0L7Qu9C70LXRgNCwIFR1dG9yLkFwaS5Db250cm9sbGVycy5TdHVkZW50R3JvdXBQYXltZW50UGxhbnMuU3R1ZGVudEdyb3VwUGF5bWVudFBsYW5RdWVyeUNvbnRyb2xsZXJcclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0dWRlbnRHcm91cFBheW1lbnRQbGFuUXVlcnlTZXJ2aWNlIHtcclxuICAgIGdldEJhc2VVcmwoKSB7XHJcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuX2Jhc2VVcmx9YXBpL3R1dG9yL3N0dWRlbnQtZ3JvdXAtcGF5bWVudC1wbGFuL3F1ZXJ5YDtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9odHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgICAgIEBJbmplY3QoJ0JBU0VfVVJMJykgcHJpdmF0ZSBfYmFzZVVybDogc3RyaW5nXHJcbiAgICApIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog0J/QvtC70YPRh9C40YLRjCDQs9GA0YPQv9C/0YMg0Lgg0LPQu9C+0LHQsNC70YzQvdGL0LUg0L/Qu9Cw0L3RiyDQvtC/0LvQsNGC0Ysg0YEg0L3QtdC5INGB0LLRj9C30LDQvdC90YvQtVxyXG4gICAgICogQHBhcmFtIGlkINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINCz0YDRg9C/0L/Ri1xyXG4gICAgICogQHJldHVybnMg0LPRgNGD0L/QvyDRgSDQv9C70LDQvdCw0LzQuCDQvtC/0LvQsNGC0YtcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldFBheW1lbnRQbGFucyhpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTdHVkZW50R3JvdXBQYXltZW50UGxhbnNNb2RlbD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LmdldDxTdHVkZW50R3JvdXBQYXltZW50UGxhbnNNb2RlbD4oYCR7dGhpcy5nZXRCYXNlVXJsKCl9L3BheW1lbnQtcGxhbnMvJHtpZH1gKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -7,26 +7,48 @@ import * as i1 from "@angular/common/http";
7
7
  */
8
8
  export class StudentGroupQueryService {
9
9
  getBaseUrl() {
10
- return this._baseUrl + 'api/tutor/student-group/';
10
+ return this._baseUrl + 'api/tutor/student-group';
11
11
  }
12
12
  constructor(_httpClient, _baseUrl) {
13
13
  this._httpClient = _httpClient;
14
14
  this._baseUrl = _baseUrl;
15
15
  }
16
+ /**
17
+ * Поиск групп студентов
18
+ */
16
19
  search(model) {
17
- return this._httpClient.post(this.getBaseUrl() + 'query/search', model);
20
+ return this._httpClient.post(`${this.getBaseUrl()}/query/search`, model);
18
21
  }
19
22
  searchWithProgresses(model) {
20
- return this._httpClient.post(this.getBaseUrl() + 'query/search/with-progresses', model);
23
+ return this._httpClient.post(`${this.getBaseUrl()}/query/search/with-progresses`, model);
21
24
  }
25
+ /**
26
+ * Получить группу по идентификатору
27
+ * @param id идентификатор группы учеников
28
+ * @returns группу учеников
29
+ */
22
30
  getById(id) {
23
- return this._httpClient.get(this.getBaseUrl() + `query/by-id/${id}`);
31
+ return this._httpClient.get(`${this.getBaseUrl()}/query/by-id/${id}`);
24
32
  }
25
33
  getByStudentId(id) {
26
- return this._httpClient.get(this.getBaseUrl() + `by-student/${id}`);
34
+ return this._httpClient.get(`${this.getBaseUrl()}/by-student/${id}`);
27
35
  }
36
+ /**
37
+ * Получить список студентов в группе по фильтру
38
+ * @param model модель для поиска
39
+ * @returns список студентов
40
+ */
28
41
  getStudentsList(model) {
29
- return this._httpClient.post(this.getBaseUrl() + 'students/search', model);
42
+ return this._httpClient.post(`${this.getBaseUrl()}/students/search`, model);
43
+ }
44
+ /**
45
+ * Получить студента в группе
46
+ * @param groupId идентификатор группы
47
+ * @param studentId идентификатор студента
48
+ * @returns
49
+ */
50
+ getStudentById(groupId, studentId) {
51
+ return this._httpClient.get(`${this.getBaseUrl()}/students/get-by-id/${groupId}/${studentId}`);
30
52
  }
31
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
32
54
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupQueryService, providedIn: 'root' }); }
@@ -40,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
40
62
  type: Inject,
41
63
  args: ['BASE_URL']
42
64
  }] }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3R1ZGVudEdyb3VwUXVlcnlTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9zZXJ2aWNlcy9TdHVkZW50R3JvdXBRdWVyeVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0M7O0VBRUU7QUFJRixNQUFNLE9BQU8sd0JBQXdCO0lBRWpDLFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLEdBQUcsMEJBQTBCLENBQUM7SUFDdEQsQ0FBQztJQUVELFlBQW9CLFdBQXVCLEVBQ1gsUUFBZ0I7UUFENUIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDWCxhQUFRLEdBQVIsUUFBUSxDQUFRO0lBQ2hELENBQUM7SUFFTSxNQUFNLENBQUMsS0FBMEI7UUFDcEMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBeUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRU0sb0JBQW9CLENBQUMsS0FBMEM7UUFDbEUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBcUQsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hKLENBQUM7SUFFTSxPQUFPLENBQUMsRUFBVTtRQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUE0QixJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTSxjQUFjLENBQUMsRUFBVTtRQUM1QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUE0QixJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsY0FBYyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFTSxlQUFlLENBQUMsS0FBNEI7UUFDL0MsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBMkMsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pILENBQUM7OEdBNUJRLHdCQUF3Qiw0Q0FPckIsVUFBVTtrSEFQYix3QkFBd0IsY0FGckIsTUFBTTs7MkZBRVQsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBUVEsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBJbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IEdldExpc3RSZXN1bHQsIFN0dWRlbnRHcm91cFNpbXBsZU1vZGVsIH0gZnJvbSBcIi4uL21vZGVsc1wiO1xyXG5pbXBvcnQgeyBTZWFyY2hTdHVkZW50R3JvdXBzLCBTdHVkZW50R3JvdXBEZXRhaWxlZE1vZGVsLCBTZWFyY2hTdHVkZW50c0luR3JvdXAsIFN0dWRlbnRJbkdyb3VwU2ltcGxlTW9kZWwsIFNlYXJjaFN0dWRlbnRHcm91cHNCeVN0dWRlbnRSZXF1ZXN0LCBTdHVkZW50R3JvdXBXaXRoQ291cnNlUHJvZ3Jlc3NNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHMvZ3JvdXAtbW9kZWxzXCI7XHJcblxyXG4vKipcclxuKiDQnNC10YLQvtC00Ysg0LrQvtC90YLRgNC+0LvQu9C10YDQsCBTdHVkZW50R3JvdXBRdWVyeUNvbnRyb2xsZXJcclxuKi9cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3R1ZGVudEdyb3VwUXVlcnlTZXJ2aWNlIHtcclxuXHJcbiAgICBnZXRCYXNlVXJsKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9iYXNlVXJsICsgJ2FwaS90dXRvci9zdHVkZW50LWdyb3VwLyc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgICAgICBASW5qZWN0KCdCQVNFX1VSTCcpIHByaXZhdGUgX2Jhc2VVcmw6IHN0cmluZykge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZWFyY2gobW9kZWw6IFNlYXJjaFN0dWRlbnRHcm91cHMpOiBPYnNlcnZhYmxlPEdldExpc3RSZXN1bHQ8U3R1ZGVudEdyb3VwU2ltcGxlTW9kZWw+PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQucG9zdDxHZXRMaXN0UmVzdWx0PFN0dWRlbnRHcm91cFNpbXBsZU1vZGVsPj4odGhpcy5nZXRCYXNlVXJsKCkgKyAncXVlcnkvc2VhcmNoJywgbW9kZWwpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZWFyY2hXaXRoUHJvZ3Jlc3Nlcyhtb2RlbDogU2VhcmNoU3R1ZGVudEdyb3Vwc0J5U3R1ZGVudFJlcXVlc3QpOiBPYnNlcnZhYmxlPEdldExpc3RSZXN1bHQ8U3R1ZGVudEdyb3VwV2l0aENvdXJzZVByb2dyZXNzTW9kZWw+PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQucG9zdDxHZXRMaXN0UmVzdWx0PFN0dWRlbnRHcm91cFdpdGhDb3Vyc2VQcm9ncmVzc01vZGVsPj4odGhpcy5nZXRCYXNlVXJsKCkgKyAncXVlcnkvc2VhcmNoL3dpdGgtcHJvZ3Jlc3NlcycsIG1vZGVsKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0QnlJZChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTdHVkZW50R3JvdXBEZXRhaWxlZE1vZGVsPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQuZ2V0PFN0dWRlbnRHcm91cERldGFpbGVkTW9kZWw+KHRoaXMuZ2V0QmFzZVVybCgpICsgYHF1ZXJ5L2J5LWlkLyR7aWR9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEJ5U3R1ZGVudElkKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFN0dWRlbnRHcm91cFNpbXBsZU1vZGVsW10+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5nZXQ8U3R1ZGVudEdyb3VwU2ltcGxlTW9kZWxbXT4odGhpcy5nZXRCYXNlVXJsKCkgKyBgYnktc3R1ZGVudC8ke2lkfWApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRTdHVkZW50c0xpc3QobW9kZWw6IFNlYXJjaFN0dWRlbnRzSW5Hcm91cCk6IE9ic2VydmFibGU8R2V0TGlzdFJlc3VsdDxTdHVkZW50SW5Hcm91cFNpbXBsZU1vZGVsPj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LnBvc3Q8R2V0TGlzdFJlc3VsdDxTdHVkZW50SW5Hcm91cFNpbXBsZU1vZGVsPj4odGhpcy5nZXRCYXNlVXJsKCkgKyAnc3R1ZGVudHMvc2VhcmNoJywgbW9kZWwpO1xyXG4gICAgfVxyXG59XHJcblxyXG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3R1ZGVudEdyb3VwUXVlcnlTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHV0b3ItbG9naWMvc3JjL2xpYi9zZXJ2aWNlcy9TdHVkZW50R3JvdXBRdWVyeVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0M7O0VBRUU7QUFJRixNQUFNLE9BQU8sd0JBQXdCO0lBRWpDLFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLEdBQUcseUJBQXlCLENBQUM7SUFDckQsQ0FBQztJQUVELFlBQW9CLFdBQXVCLEVBQ1gsUUFBZ0I7UUFENUIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDWCxhQUFRLEdBQVIsUUFBUSxDQUFRO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxLQUEwQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUF5QyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxLQUEwQztRQUNsRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFxRCxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakosQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxPQUFPLENBQUMsRUFBVTtRQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUE0QixHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVNLGNBQWMsQ0FBQyxFQUFVO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQTRCLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxlQUFlLENBQUMsS0FBNEI7UUFDL0MsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBMkMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGNBQWMsQ0FBQyxPQUFlLEVBQUUsU0FBaUI7UUFDcEQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBNEIsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLHVCQUF1QixPQUFPLElBQUksU0FBUyxFQUFFLENBQUMsQ0FBQztJQUM5SCxDQUFDOzhHQW5EUSx3QkFBd0IsNENBT3JCLFVBQVU7a0hBUGIsd0JBQXdCLGNBRnJCLE1BQU07OzJGQUVULHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7OzBCQVFRLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgSW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBHZXRMaXN0UmVzdWx0LCBTdHVkZW50R3JvdXBTaW1wbGVNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHNcIjtcclxuaW1wb3J0IHsgU2VhcmNoU3R1ZGVudEdyb3VwcywgU3R1ZGVudEdyb3VwRGV0YWlsZWRNb2RlbCwgU2VhcmNoU3R1ZGVudHNJbkdyb3VwLCBTdHVkZW50SW5Hcm91cFNpbXBsZU1vZGVsLCBTZWFyY2hTdHVkZW50R3JvdXBzQnlTdHVkZW50UmVxdWVzdCwgU3R1ZGVudEdyb3VwV2l0aENvdXJzZVByb2dyZXNzTW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2dyb3VwLW1vZGVsc1wiO1xyXG5cclxuLyoqXHJcbiog0JzQtdGC0L7QtNGLINC60L7QvdGC0YDQvtC70LvQtdGA0LAgU3R1ZGVudEdyb3VwUXVlcnlDb250cm9sbGVyXHJcbiovXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFN0dWRlbnRHcm91cFF1ZXJ5U2VydmljZSB7XHJcblxyXG4gICAgZ2V0QmFzZVVybCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYmFzZVVybCArICdhcGkvdHV0b3Ivc3R1ZGVudC1ncm91cCc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgICAgICBASW5qZWN0KCdCQVNFX1VSTCcpIHByaXZhdGUgX2Jhc2VVcmw6IHN0cmluZykge1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog0J/QvtC40YHQuiDQs9GA0YPQv9C/INGB0YLRg9C00LXQvdGC0L7QslxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc2VhcmNoKG1vZGVsOiBTZWFyY2hTdHVkZW50R3JvdXBzKTogT2JzZXJ2YWJsZTxHZXRMaXN0UmVzdWx0PFN0dWRlbnRHcm91cFNpbXBsZU1vZGVsPj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwQ2xpZW50LnBvc3Q8R2V0TGlzdFJlc3VsdDxTdHVkZW50R3JvdXBTaW1wbGVNb2RlbD4+KGAke3RoaXMuZ2V0QmFzZVVybCgpfS9xdWVyeS9zZWFyY2hgLCBtb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNlYXJjaFdpdGhQcm9ncmVzc2VzKG1vZGVsOiBTZWFyY2hTdHVkZW50R3JvdXBzQnlTdHVkZW50UmVxdWVzdCk6IE9ic2VydmFibGU8R2V0TGlzdFJlc3VsdDxTdHVkZW50R3JvdXBXaXRoQ291cnNlUHJvZ3Jlc3NNb2RlbD4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5wb3N0PEdldExpc3RSZXN1bHQ8U3R1ZGVudEdyb3VwV2l0aENvdXJzZVByb2dyZXNzTW9kZWw+PihgJHt0aGlzLmdldEJhc2VVcmwoKX0vcXVlcnkvc2VhcmNoL3dpdGgtcHJvZ3Jlc3Nlc2AsIG1vZGVsKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqINCf0L7Qu9GD0YfQuNGC0Ywg0LPRgNGD0L/Qv9GDINC/0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRg1xyXG4gICAgICogQHBhcmFtIGlkINC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINCz0YDRg9C/0L/RiyDRg9GH0LXQvdC40LrQvtCyXHJcbiAgICAgKiBAcmV0dXJucyDQs9GA0YPQv9C/0YMg0YPRh9C10L3QuNC60L7QslxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0QnlJZChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTdHVkZW50R3JvdXBEZXRhaWxlZE1vZGVsPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQuZ2V0PFN0dWRlbnRHcm91cERldGFpbGVkTW9kZWw+KGAke3RoaXMuZ2V0QmFzZVVybCgpfS9xdWVyeS9ieS1pZC8ke2lkfWApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRCeVN0dWRlbnRJZChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTdHVkZW50R3JvdXBTaW1wbGVNb2RlbFtdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQuZ2V0PFN0dWRlbnRHcm91cFNpbXBsZU1vZGVsW10+KGAke3RoaXMuZ2V0QmFzZVVybCgpfS9ieS1zdHVkZW50LyR7aWR9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDQn9C+0LvRg9GH0LjRgtGMINGB0L/QuNGB0L7QuiDRgdGC0YPQtNC10L3RgtC+0LIg0LIg0LPRgNGD0L/Qv9C1INC/0L4g0YTQuNC70YzRgtGA0YNcclxuICAgICAqIEBwYXJhbSBtb2RlbCDQvNC+0LTQtdC70Ywg0LTQu9GPINC/0L7QuNGB0LrQsFxyXG4gICAgICogQHJldHVybnMg0YHQv9C40YHQvtC6INGB0YLRg9C00LXQvdGC0L7QslxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0U3R1ZGVudHNMaXN0KG1vZGVsOiBTZWFyY2hTdHVkZW50c0luR3JvdXApOiBPYnNlcnZhYmxlPEdldExpc3RSZXN1bHQ8U3R1ZGVudEluR3JvdXBTaW1wbGVNb2RlbD4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudC5wb3N0PEdldExpc3RSZXN1bHQ8U3R1ZGVudEluR3JvdXBTaW1wbGVNb2RlbD4+KGAke3RoaXMuZ2V0QmFzZVVybCgpfS9zdHVkZW50cy9zZWFyY2hgLCBtb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDQn9C+0LvRg9GH0LjRgtGMINGB0YLRg9C00LXQvdGC0LAg0LIg0LPRgNGD0L/Qv9C1XHJcbiAgICAgKiBAcGFyYW0gZ3JvdXBJZCDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDQs9GA0YPQv9C/0YtcclxuICAgICAqIEBwYXJhbSBzdHVkZW50SWQg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YHRgtGD0LTQtdC90YLQsFxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXRTdHVkZW50QnlJZChncm91cElkOiBzdHJpbmcsIHN0dWRlbnRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTdHVkZW50SW5Hcm91cFNpbXBsZU1vZGVsPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBDbGllbnQuZ2V0PFN0dWRlbnRJbkdyb3VwU2ltcGxlTW9kZWw+KGAke3RoaXMuZ2V0QmFzZVVybCgpfS9zdHVkZW50cy9nZXQtYnktaWQvJHtncm91cElkfS8ke3N0dWRlbnRJZH1gKTtcclxuICAgIH1cclxufSJdfQ==
@@ -21,4 +21,7 @@ export { StudentSubjectViewService } from './StudentSubjectViewService';
21
21
  export { StudentCourseViewService } from './StudentCourseViewService';
22
22
  export { TestSolutionDetailedQueryService } from './TestSolutionDetailedQueryService';
23
23
  export { CourseLandingPageQueryService } from './CourseLandingPageQueryService';
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUMzRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNuRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbkYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDekUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbkYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDN0YsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDL0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDN0UsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDL0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ25ELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLGdEQUFnRCxDQUFBO0FBQzdHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ3JFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3JGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgVGVzdHNTZXJ2aWNlIH0gZnJvbSAnLi9UZXN0c1NlcnZpY2UnXHJcbmV4cG9ydCB7IFR1dG9yQ29tbW9uU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi9UdXRvckNvbW1vblNldHRpbmdzU2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudEdyb3VwUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9TdHVkZW50R3JvdXBRdWVyeVNlcnZpY2UnXHJcbmV4cG9ydCB7IFN0dWRlbnRRdWVyeVNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRRdWVyeVNlcnZpY2UnXHJcbmV4cG9ydCB7IFN0dWRlbnRHcm91cEVudGVyU2VydmljZSB9IGZyb20gJy4vU3R1ZGVudEdyb3VwRW50ZXJTZXJ2aWNlJ1xyXG5leHBvcnQgeyBUZXN0U29sdXRpb25RdWVyeVNlcnZpY2UgfSBmcm9tICcuL1Rlc3RTb2x1dGlvblF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgVGVzdFNvbHV0aW9uUmVzdWx0U2VydmljZSB9IGZyb20gJy4vVGVzdFNvbHV0aW9uUmVzdWx0U2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudFRlc3RTb2x1dGlvblN0YXJ0U2VydmljZSB9IGZyb20gJy4vU3R1ZGVudFRlc3RTb2x1dGlvblN0YXJ0U2VydmljZSdcclxuZXhwb3J0IHsgT3BlbkFwaVF1ZXN0aW9uTGlrZVNlcnZpY2UsIE9wZW5BcGlUZXN0U29sdXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9vcGVuLWFwaSdcclxuZXhwb3J0IHsgU3R1ZGVudFRlc3RTb2x1dGlvblNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRUZXN0U29sdXRpb25TZXJ2aWNlJ1xyXG5leHBvcnQgeyBTdHVkZW50VGVzdFNvbHV0aW9uUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9TdHVkZW50VGVzdFNvbHV0aW9uUXVlcnlTZXJ2aWNlJ1xyXG5leHBvcnQgeyBTdHVkZW50R3JvdXBUZXN0UmVsYXRpb25RdWVyeVNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRHcm91cFRlc3RSZWxhdGlvblF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgQ3VyYXRvck1lc3NhZ2VUZW1wbGF0ZVNlcnZpY2UgfSBmcm9tICcuL0N1cmF0b3JNZXNzYWdlVGVtcGxhdGVTZXJ2aWNlJ1xyXG5leHBvcnQgeyBDb3Vyc2VEZWFkbGluZVdhcm5pbmdTZXJ2aWNlIH0gZnJvbSAnLi9Db3Vyc2VEZWFkbGluZVdhcm5pbmdTZXJ2aWNlJ1xyXG5leHBvcnQgeyBDb3Vyc2VUaGVtZUl0ZW1UZXN0UmVzdHJpY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9Db3Vyc2VUaGVtZUl0ZW1UZXN0UmVzdHJpY3Rpb25TZXJ2aWNlJ1xyXG5leHBvcnQgeyBTdWJqZWN0TWVudVNlcnZpY2UgfSBmcm9tICcuL1N1YmplY3RNZW51U2VydmljZSdcclxuZXhwb3J0IHsgU3ViamVjdFF1ZXJ5U2VydmljZSB9IGZyb20gJy4vU3ViamVjdFF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgU3ViamVjdHNTZXJ2aWNlIH0gZnJvbSAnLi9TdWJqZWN0c1NlcnZpY2UnXHJcbmV4cG9ydCB7IENvdXJzZVRoZW1lSXRlbVRlc3RSZXN0cmljdGlvblN0dWRlbnRTZXJ2aWNlIH0gZnJvbSAnLi9Db3Vyc2VUaGVtZUl0ZW1UZXN0UmVzdHJpY3Rpb25TdHVkZW50U2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudFN1YmplY3RWaWV3U2VydmljZSB9IGZyb20gJy4vU3R1ZGVudFN1YmplY3RWaWV3U2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudENvdXJzZVZpZXdTZXJ2aWNlIH0gZnJvbSAnLi9TdHVkZW50Q291cnNlVmlld1NlcnZpY2UnXHJcbmV4cG9ydCB7IFRlc3RTb2x1dGlvbkRldGFpbGVkUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9UZXN0U29sdXRpb25EZXRhaWxlZFF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgQ291cnNlTGFuZGluZ1BhZ2VRdWVyeVNlcnZpY2UgfSBmcm9tICcuL0NvdXJzZUxhbmRpbmdQYWdlUXVlcnlTZXJ2aWNlJyJdfQ==
24
+ export { CourseOrderService } from './CourseOrderService';
25
+ export { CourseShopWindowDetailedService } from './CourseShopWindowDetailedService';
26
+ export { StudentGroupPaymentPlanQueryService } from './StudentGroupPaymentPlanQueryService';
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dXRvci1sb2dpYy9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUMzRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUNuRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbkYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDekUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDbkYsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDN0YsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDL0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDN0UsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDL0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ25ELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLGdEQUFnRCxDQUFBO0FBQzdHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ3JFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3JGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQy9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3pELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ25GLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLHVDQUF1QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgVGVzdHNTZXJ2aWNlIH0gZnJvbSAnLi9UZXN0c1NlcnZpY2UnXHJcbmV4cG9ydCB7IFR1dG9yQ29tbW9uU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi9UdXRvckNvbW1vblNldHRpbmdzU2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudEdyb3VwUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9TdHVkZW50R3JvdXBRdWVyeVNlcnZpY2UnXHJcbmV4cG9ydCB7IFN0dWRlbnRRdWVyeVNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRRdWVyeVNlcnZpY2UnXHJcbmV4cG9ydCB7IFN0dWRlbnRHcm91cEVudGVyU2VydmljZSB9IGZyb20gJy4vU3R1ZGVudEdyb3VwRW50ZXJTZXJ2aWNlJ1xyXG5leHBvcnQgeyBUZXN0U29sdXRpb25RdWVyeVNlcnZpY2UgfSBmcm9tICcuL1Rlc3RTb2x1dGlvblF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgVGVzdFNvbHV0aW9uUmVzdWx0U2VydmljZSB9IGZyb20gJy4vVGVzdFNvbHV0aW9uUmVzdWx0U2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudFRlc3RTb2x1dGlvblN0YXJ0U2VydmljZSB9IGZyb20gJy4vU3R1ZGVudFRlc3RTb2x1dGlvblN0YXJ0U2VydmljZSdcclxuZXhwb3J0IHsgT3BlbkFwaVF1ZXN0aW9uTGlrZVNlcnZpY2UsIE9wZW5BcGlUZXN0U29sdXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9vcGVuLWFwaSdcclxuZXhwb3J0IHsgU3R1ZGVudFRlc3RTb2x1dGlvblNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRUZXN0U29sdXRpb25TZXJ2aWNlJ1xyXG5leHBvcnQgeyBTdHVkZW50VGVzdFNvbHV0aW9uUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9TdHVkZW50VGVzdFNvbHV0aW9uUXVlcnlTZXJ2aWNlJ1xyXG5leHBvcnQgeyBTdHVkZW50R3JvdXBUZXN0UmVsYXRpb25RdWVyeVNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRHcm91cFRlc3RSZWxhdGlvblF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgQ3VyYXRvck1lc3NhZ2VUZW1wbGF0ZVNlcnZpY2UgfSBmcm9tICcuL0N1cmF0b3JNZXNzYWdlVGVtcGxhdGVTZXJ2aWNlJ1xyXG5leHBvcnQgeyBDb3Vyc2VEZWFkbGluZVdhcm5pbmdTZXJ2aWNlIH0gZnJvbSAnLi9Db3Vyc2VEZWFkbGluZVdhcm5pbmdTZXJ2aWNlJ1xyXG5leHBvcnQgeyBDb3Vyc2VUaGVtZUl0ZW1UZXN0UmVzdHJpY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9Db3Vyc2VUaGVtZUl0ZW1UZXN0UmVzdHJpY3Rpb25TZXJ2aWNlJ1xyXG5leHBvcnQgeyBTdWJqZWN0TWVudVNlcnZpY2UgfSBmcm9tICcuL1N1YmplY3RNZW51U2VydmljZSdcclxuZXhwb3J0IHsgU3ViamVjdFF1ZXJ5U2VydmljZSB9IGZyb20gJy4vU3ViamVjdFF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgU3ViamVjdHNTZXJ2aWNlIH0gZnJvbSAnLi9TdWJqZWN0c1NlcnZpY2UnXHJcbmV4cG9ydCB7IENvdXJzZVRoZW1lSXRlbVRlc3RSZXN0cmljdGlvblN0dWRlbnRTZXJ2aWNlIH0gZnJvbSAnLi9Db3Vyc2VUaGVtZUl0ZW1UZXN0UmVzdHJpY3Rpb25TdHVkZW50U2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudFN1YmplY3RWaWV3U2VydmljZSB9IGZyb20gJy4vU3R1ZGVudFN1YmplY3RWaWV3U2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudENvdXJzZVZpZXdTZXJ2aWNlIH0gZnJvbSAnLi9TdHVkZW50Q291cnNlVmlld1NlcnZpY2UnXHJcbmV4cG9ydCB7IFRlc3RTb2x1dGlvbkRldGFpbGVkUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9UZXN0U29sdXRpb25EZXRhaWxlZFF1ZXJ5U2VydmljZSdcclxuZXhwb3J0IHsgQ291cnNlTGFuZGluZ1BhZ2VRdWVyeVNlcnZpY2UgfSBmcm9tICcuL0NvdXJzZUxhbmRpbmdQYWdlUXVlcnlTZXJ2aWNlJ1xyXG5leHBvcnQgeyBDb3Vyc2VPcmRlclNlcnZpY2UgfSBmcm9tICcuL0NvdXJzZU9yZGVyU2VydmljZSdcclxuZXhwb3J0IHsgQ291cnNlU2hvcFdpbmRvd0RldGFpbGVkU2VydmljZSB9IGZyb20gJy4vQ291cnNlU2hvcFdpbmRvd0RldGFpbGVkU2VydmljZSdcclxuZXhwb3J0IHsgU3R1ZGVudEdyb3VwUGF5bWVudFBsYW5RdWVyeVNlcnZpY2UgfSBmcm9tICcuL1N0dWRlbnRHcm91cFBheW1lbnRQbGFuUXVlcnlTZXJ2aWNlJ1xyXG4iXX0=
@@ -76,26 +76,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
76
76
  */
77
77
  class StudentGroupQueryService {
78
78
  getBaseUrl() {
79
- return this._baseUrl + 'api/tutor/student-group/';
79
+ return this._baseUrl + 'api/tutor/student-group';
80
80
  }
81
81
  constructor(_httpClient, _baseUrl) {
82
82
  this._httpClient = _httpClient;
83
83
  this._baseUrl = _baseUrl;
84
84
  }
85
+ /**
86
+ * Поиск групп студентов
87
+ */
85
88
  search(model) {
86
- return this._httpClient.post(this.getBaseUrl() + 'query/search', model);
89
+ return this._httpClient.post(`${this.getBaseUrl()}/query/search`, model);
87
90
  }
88
91
  searchWithProgresses(model) {
89
- return this._httpClient.post(this.getBaseUrl() + 'query/search/with-progresses', model);
92
+ return this._httpClient.post(`${this.getBaseUrl()}/query/search/with-progresses`, model);
90
93
  }
94
+ /**
95
+ * Получить группу по идентификатору
96
+ * @param id идентификатор группы учеников
97
+ * @returns группу учеников
98
+ */
91
99
  getById(id) {
92
- return this._httpClient.get(this.getBaseUrl() + `query/by-id/${id}`);
100
+ return this._httpClient.get(`${this.getBaseUrl()}/query/by-id/${id}`);
93
101
  }
94
102
  getByStudentId(id) {
95
- return this._httpClient.get(this.getBaseUrl() + `by-student/${id}`);
103
+ return this._httpClient.get(`${this.getBaseUrl()}/by-student/${id}`);
96
104
  }
105
+ /**
106
+ * Получить список студентов в группе по фильтру
107
+ * @param model модель для поиска
108
+ * @returns список студентов
109
+ */
97
110
  getStudentsList(model) {
98
- return this._httpClient.post(this.getBaseUrl() + 'students/search', model);
111
+ return this._httpClient.post(`${this.getBaseUrl()}/students/search`, model);
112
+ }
113
+ /**
114
+ * Получить студента в группе
115
+ * @param groupId идентификатор группы
116
+ * @param studentId идентификатор студента
117
+ * @returns
118
+ */
119
+ getStudentById(groupId, studentId) {
120
+ return this._httpClient.get(`${this.getBaseUrl()}/students/get-by-id/${groupId}/${studentId}`);
99
121
  }
100
122
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
101
123
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupQueryService, providedIn: 'root' }); }
@@ -783,6 +805,99 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
783
805
  args: ['BASE_URL']
784
806
  }] }] });
785
807
 
808
+ /**
809
+ * Предоставляем методы контроллера Tutor.Api.Controllers.Courses.CourseOrderController
810
+ */
811
+ class CourseOrderService {
812
+ constructor(_httpClient, baseUrl) {
813
+ this._httpClient = _httpClient;
814
+ this.baseControllerUrl = baseUrl + 'api/tutor/course-order';
815
+ }
816
+ /**
817
+ * Получить заказ на покупку курса по идентификатору
818
+ * @param id идентификатор заказа
819
+ * @returns
820
+ */
821
+ getById(id) {
822
+ return this._httpClient.get(`${this.baseControllerUrl}/query/get-by-id/${id}`);
823
+ }
824
+ /**
825
+ * созать заказ на покупку курса
826
+ * @param model запрос для создания заказа на покупку курса
827
+ * @returns
828
+ */
829
+ create(model) {
830
+ return this._httpClient.post(`${this.baseControllerUrl}/create`, model);
831
+ }
832
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseOrderService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
833
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseOrderService, providedIn: 'root' }); }
834
+ }
835
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseOrderService, decorators: [{
836
+ type: Injectable,
837
+ args: [{
838
+ providedIn: 'root',
839
+ }]
840
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
841
+ type: Inject,
842
+ args: ['BASE_URL']
843
+ }] }] });
844
+
845
+ class CourseShopWindowDetailedService {
846
+ constructor(_httpClient, baseUrl) {
847
+ this._httpClient = _httpClient;
848
+ this.baseControllerUrl = baseUrl + 'api/tutor/course-shop-window-detailed/';
849
+ }
850
+ getDefault() {
851
+ return this._httpClient.get(this.baseControllerUrl + 'default');
852
+ }
853
+ getById(id) {
854
+ return this._httpClient.get(this.baseControllerUrl + `byId/${id}`);
855
+ }
856
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseShopWindowDetailedService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
857
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseShopWindowDetailedService, providedIn: 'root' }); }
858
+ }
859
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: CourseShopWindowDetailedService, decorators: [{
860
+ type: Injectable,
861
+ args: [{
862
+ providedIn: 'root',
863
+ }]
864
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
865
+ type: Inject,
866
+ args: ['BASE_URL']
867
+ }] }] });
868
+
869
+ /**
870
+ * Предоставляет методы контроллера Tutor.Api.Controllers.StudentGroupPaymentPlans.StudentGroupPaymentPlanQueryController
871
+ */
872
+ class StudentGroupPaymentPlanQueryService {
873
+ getBaseUrl() {
874
+ return `${this._baseUrl}api/tutor/student-group-payment-plan/query`;
875
+ }
876
+ constructor(_httpClient, _baseUrl) {
877
+ this._httpClient = _httpClient;
878
+ this._baseUrl = _baseUrl;
879
+ }
880
+ /**
881
+ * Получить группу и глобальные планы оплаты с ней связанные
882
+ * @param id идентификатор группы
883
+ * @returns групп с планами оплаты
884
+ */
885
+ getPaymentPlans(id) {
886
+ return this._httpClient.get(`${this.getBaseUrl()}/payment-plans/${id}`);
887
+ }
888
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupPaymentPlanQueryService, deps: [{ token: i1.HttpClient }, { token: 'BASE_URL' }], target: i0.ɵɵFactoryTarget.Injectable }); }
889
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupPaymentPlanQueryService, providedIn: 'root' }); }
890
+ }
891
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: StudentGroupPaymentPlanQueryService, decorators: [{
892
+ type: Injectable,
893
+ args: [{
894
+ providedIn: 'root',
895
+ }]
896
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: undefined, decorators: [{
897
+ type: Inject,
898
+ args: ['BASE_URL']
899
+ }] }] });
900
+
786
901
  var TestQuestionType;
787
902
  (function (TestQuestionType) {
788
903
  TestQuestionType["SelectRightAnswerOrAnswers"] = "SelectRightAnswerOrAnswers";
@@ -851,5 +966,5 @@ class TutorRoles {
851
966
  * Generated bundle index. Do not edit.
852
967
  */
853
968
 
854
- export { AnswerValidationResultType, CourseDeadlineWarningService, CourseLandingPageQueryService, CourseThemeItemTestRestrictionService, CourseThemeItemTestRestrictionStudentService, CourseThemeItemType, CuratorMessageTemplateService, OpenApiExtensions, OpenApiQuestionLikeService, OpenApiTestSolutionService, OpenApiUrlProvider, QuestionValidationSourceType, StudentCourseViewService, StudentGroupEnterService, StudentGroupQueryService, StudentGroupTestRelationQueryService, StudentQueryService, StudentSubjectViewService, StudentTestSolutionQueryService, StudentTestSolutionService, StudentTestSolutionStartService, SubjectMenuItemType, SubjectMenuService, SubjectQueryService, SubjectsService, TestQuestionType, TestRestrictionValidationResultRuleType, TestSolutionDetailedQueryService, TestSolutionQueryService, TestSolutionResultService, TestsService, TutorCommonSettingsService, TutorLogicModule, TutorRoles };
969
+ export { AnswerValidationResultType, CourseDeadlineWarningService, CourseLandingPageQueryService, CourseOrderService, CourseShopWindowDetailedService, CourseThemeItemTestRestrictionService, CourseThemeItemTestRestrictionStudentService, CourseThemeItemType, CuratorMessageTemplateService, OpenApiExtensions, OpenApiQuestionLikeService, OpenApiTestSolutionService, OpenApiUrlProvider, QuestionValidationSourceType, StudentCourseViewService, StudentGroupEnterService, StudentGroupPaymentPlanQueryService, StudentGroupQueryService, StudentGroupTestRelationQueryService, StudentQueryService, StudentSubjectViewService, StudentTestSolutionQueryService, StudentTestSolutionService, StudentTestSolutionStartService, SubjectMenuItemType, SubjectMenuService, SubjectQueryService, SubjectsService, TestQuestionType, TestRestrictionValidationResultRuleType, TestSolutionDetailedQueryService, TestSolutionQueryService, TestSolutionResultService, TestsService, TutorCommonSettingsService, TutorLogicModule, TutorRoles };
855
970
  //# 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/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 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 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 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","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\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 { 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}\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}","/*\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/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/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\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 { 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}\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}","/*\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":";;;;MAUa,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAAhB,gBAAgB,EAAA,CAAA,CAAA,EAAA;+GAAhB,gBAAgB,EAAA,CAAA,CAAA,EAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EACb;AACD,oBAAA,OAAO,EAAE,EACR;AACD,oBAAA,OAAO,EAAE,EACR;AACF,iBAAA,CAAA;;;MCCY,YAAY,CAAA;IAGrB,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAEvC,MAAM,MAAM,GAAG,kBAAkB,CAAC;AAClC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC;KAC7C;AAEM,IAAA,0BAA0B,CAAC,KAAsB,EAAA;AACpD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAyC,IAAI,CAAC,iBAAiB,GAAG,kBAAkB,EAAE,KAAK,CAAC,CAAC;KAC5H;AAEM,IAAA,MAAM,CAAC,KAAiB,EAAA;AAC3B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KAC3F;AAEM,IAAA,IAAI,CAAC,KAAe,EAAA;AACvB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC;KACzF;AAnBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,4CAIT,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFT,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAKQ,MAAM;2BAAC,UAAU,CAAA;;;MCLb,0BAA0B,CAAA;IAGnC,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,qBAAqB,CAAC;KAC5D;AAED,IAAA,GAAG,CAAC,IAAY,EAAA;AACZ,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAe,IAAI,CAAC,iBAAiB,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;KACrF;AAED,IAAA,SAAS,CAAC,IAAY,EAAA;AAClB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAe,IAAI,CAAC,iBAAiB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;KACjG;AAED,IAAA,GAAG,CAAC,KAAmB,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;KACxF;AAlBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,4CAIvB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,cAFvB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAKQ,MAAM;2BAAC,UAAU,CAAA;;;ACN1B;;AAEE;MAIW,wBAAwB,CAAA;IAEjC,UAAU,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,yBAAyB,CAAC;KACpD;IAED,WAAoB,CAAA,WAAuB,EACX,QAAgB,EAAA;QAD5B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACX,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAQ;KAC/C;AAED;;AAEG;AACI,IAAA,MAAM,CAAC,KAA0B,EAAA;AACpC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAyC,CAAA,EAAG,IAAI,CAAC,UAAU,EAAE,CAAA,aAAA,CAAe,EAAE,KAAK,CAAC,CAAC;KACpH;AAEM,IAAA,oBAAoB,CAAC,KAA0C,EAAA;AAClE,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAqD,CAAA,EAAG,IAAI,CAAC,UAAU,EAAE,CAAA,6BAAA,CAA+B,EAAE,KAAK,CAAC,CAAC;KAChJ;AAED;;;;AAIG;AACI,IAAA,OAAO,CAAC,EAAU,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA4B,CAAA,EAAG,IAAI,CAAC,UAAU,EAAE,CAAA,aAAA,EAAgB,EAAE,CAAA,CAAE,CAAC,CAAC;KACpG;AAEM,IAAA,cAAc,CAAC,EAAU,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA4B,CAAA,EAAG,IAAI,CAAC,UAAU,EAAE,CAAA,YAAA,EAAe,EAAE,CAAA,CAAE,CAAC,CAAC;KACnG;AAED;;;;AAIG;AACI,IAAA,eAAe,CAAC,KAA4B,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAA2C,CAAA,EAAG,IAAI,CAAC,UAAU,EAAE,CAAA,gBAAA,CAAkB,EAAE,KAAK,CAAC,CAAC;KACzH;AAED;;;;;AAKG;IACI,cAAc,CAAC,OAAe,EAAE,SAAiB,EAAA;AACpD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA4B,CAAG,EAAA,IAAI,CAAC,UAAU,EAAE,CAAuB,oBAAA,EAAA,OAAO,IAAI,SAAS,CAAA,CAAE,CAAC,CAAC;KAC7H;AAnDQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,4CAOrB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAPb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,cAFrB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAQQ,MAAM;2BAAC,UAAU,CAAA;;;MCXb,mBAAmB,CAAA;IAG5B,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,0BAA0B,CAAC;KACjE;AAEM,IAAA,OAAO,CAAC,EAAU,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAqB,IAAI,CAAC,iBAAiB,GAAG,CAAA,KAAA,EAAQ,EAAE,CAAA,CAAE,CAAC,CAAC;KAC1F;AAEM,IAAA,eAAe,CAAC,UAAkB,EAAA;AACrC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAqB,IAAI,CAAC,iBAAiB,GAAG,CAAA,aAAA,EAAgB,UAAU,CAAA,CAAE,CAAC,CAAC;KAC1G;AAEM,IAAA,MAAM,CAAC,WAA2B,EAAA;AACrC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAoC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,EAAE,WAAW,CAAC,CAAC;KACnH;AAlBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,4CAIhB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,cAFhB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAKQ,MAAM;2BAAC,UAAU,CAAA;;;MCJb,wBAAwB,CAAA;IAGjC,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,gCAAgC,CAAC;KACvE;AAEM,IAAA,YAAY,CAAC,KAA8B,EAAA;AAC9C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAA2B,IAAI,CAAC,iBAAiB,GAAG,SAAS,EAAE,KAAK,CAAC,CAAC;KACrG;AAEM,IAAA,iBAAiB,CAAC,EAAU,EAAA;AAC/B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAA2B,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,EAAE,CAAA,CAAE,EAAE,EAAE,CAAC,CAAC;KAC7G;AAdQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,4CAIrB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,cAFrB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAKQ,MAAM;2BAAC,UAAU,CAAA;;;MCXb,iBAAiB,CAAA;AAC5B,IAAA,OAAO,eAAe,CAAC,WAA+B,EAAE,MAAc,EAAA;AACpE,QAAA,OAAO,WAAW,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC;KACtC;AACF;;MCCY,kBAAkB,CAAA;IAQ7B,WAAoB,CAAA,WAAuB,EACrB,OAAe,EAAA;QADjB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAN3C,IAAS,CAAA,SAAA,GAAW,EAAE,CAAC;AACvB,QAAA,IAAA,CAAA,KAAK,GAAyB;AAC5B,YAAA,gBAAgB,EAAE,KAAK;AACvB,YAAA,UAAU,EAAE,EAAE;SACf,CAAA;AAIC,QAAA,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;AACzB,QAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;KAC3B;AAED,IAAA,WAAW,CAAC,OAAe,EAAA;AACzB,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAuB,OAAO,GAAG,2BAA2B,CAAC,CAAC,SAAS,CAAC,IAAI,IAAG;YACjG,IAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,UAAU,EAAC;AAC1C,gBAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;aAClC;AACH,SAAC,CAAC,CAAC;KACJ;IAED,OAAO,GAAA;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;KACnB;IAED,MAAM,GAAA;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AA7BU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,4CASnB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AATT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFjB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAUI,MAAM;2BAAC,UAAU,CAAA;;;MCPT,wBAAwB,CAAA;IAEjC,UAAU,GAAA;QACN,OAAO,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,gCAAgC,CAAC,CAAC;KACjG;IAED,WAAoB,CAAA,WAAuB,EAC/B,YAAgC,EAAA;QADxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAC/B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAoB;KAC3C;AAEM,IAAA,eAAe,CAAC,KAAiC,EAAA;AACpD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAiD,IAAI,CAAC,UAAU,EAAE,GAAG,mBAAmB,EAAE,KAAK,CAAC,CAAC;KAChI;AAEM,IAAA,aAAa,CAAC,EAAU,EAAA;AAC3B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAyB,IAAI,CAAC,UAAU,EAAE,GAAG,CAAA,UAAA,EAAa,EAAE,CAAA,YAAA,CAAc,CAAC,CAAC;KAC1G;AAEM,IAAA,eAAe,CAAC,EAAU,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA2B,IAAI,CAAC,UAAU,EAAE,GAAG,CAAA,UAAA,EAAa,EAAE,CAAA,CAAE,CAAC,CAAC;KAChG;8GApBQ,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,cAFrB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;ACJD;;;AAGE;MAIW,yBAAyB,CAAA;IAGlC,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,iCAAiC,CAAC;KACxE;AAEM,IAAA,mCAAmC,CAAC,UAAkB,EAAA;AACzD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA8B,IAAI,CAAC,iBAAiB,GAAG,CAAA,UAAA,EAAa,UAAU,CAAA,CAAE,CAAC,CAAC;KAChH;AAEM,IAAA,0CAA0C,CAAC,UAAkB,EAAA;AAChE,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAmC,IAAI,CAAC,iBAAiB,GAAG,CAAA,OAAA,EAAU,UAAU,CAAA,CAAE,CAAC,CAAC;KAClH;AAEM,IAAA,MAAM,CAAC,UAAkB,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,UAAU,UAAU,CAAA,CAAE,EAAE,EAAE,CAAC,CAAC;KACtG;AAEM,IAAA,WAAW,CAAC,UAAkB,EAAA;AACjC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,eAAe,UAAU,CAAA,CAAE,EAAE,EAAE,CAAC,CAAC;KAC3G;AAEM,IAAA,kBAAkB,CAAC,KAAmC,EAAA;AACzD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAmD,IAAI,CAAC,iBAAiB,GAAG,CAAA,wBAAA,CAA0B,EAAE,KAAK,CAAC,CAAC;KAC9I;AAEM,IAAA,oBAAoB,CAAC,KAAgC,EAAA;AACxD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAmD,IAAI,CAAC,iBAAiB,GAAG,CAAA,0BAAA,CAA4B,EAAE,KAAK,CAAC,CAAC;KAChJ;AA9BQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,4CAItB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,cAFtB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAHrC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAKQ,MAAM;2BAAC,UAAU,CAAA;;;MCTb,+BAA+B,CAAA;IAGxC,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,gCAAgC,CAAC;KACvE;AAED,IAAA,aAAa,CAAC,KAAgC,EAAA;AAC1C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAmD,IAAI,CAAC,iBAAiB,GAAG,CAAA,SAAA,CAAW,EAAE,KAAK,CAAC,CAAC;KAC/H;AAED,IAAA,gBAAgB,CAAC,KAAiC,EAAA;AAC9C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAmD,IAAI,CAAC,iBAAiB,GAAG,CAAA,YAAA,CAAc,EAAE,KAAK,CAAC,CAAC;KAClI;AAdQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,4CAI5B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,cADlB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;0BAKzB,MAAM;2BAAC,UAAU,CAAA;;;MCFb,0BAA0B,CAAA;IAEnC,UAAU,GAAA;QACN,OAAO,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,mCAAmC,CAAC,CAAC;KACpG;IAED,WAAoB,CAAA,WAAuB,EAC/B,YAAgC,EAAA;QADxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAC/B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAoB;KAC3C;AAEM,IAAA,MAAM,CAAC,KAA6B,EAAA;AACvC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAmC,IAAI,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KACvG;8GAZQ,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,cAFvB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;MCCY,0BAA0B,CAAA;IAEnC,UAAU,GAAA;QACN,OAAO,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,kCAAkC,CAAC,CAAC;KACnG;IAED,WAAoB,CAAA,WAAuB,EAC/B,YAAgC,EAAA;QADxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAC/B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAoB;KAC3C;AAEM,IAAA,OAAO,CAAC,EAAU,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA2B,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;KACjF;8GAZQ,0BAA0B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,cAFvB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAHtC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;MCDY,0BAA0B,CAAA;IAGnC,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,0BAA0B,CAAC;KACjE;AAED,IAAA,WAAW,CAAC,KAA8B,EAAA;AACtC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAmD,IAAI,CAAC,iBAAiB,GAAG,CAAA,YAAA,CAAc,EAAE,KAAK,CAAC,CAAC;KAClI;AAED,IAAA,cAAc,CAAC,KAA+B,EAAA;AAC1C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAuD,IAAI,CAAC,iBAAiB,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KAChI;AAdQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,4CAIvB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,cADb,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBADtC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;0BAKzB,MAAM;2BAAC,UAAU,CAAA;;;ACN1B;;;AAGE;MAEW,+BAA+B,CAAA;IAGxC,WAAoB,CAAA,WAAuB,EACnB,OAAe,EAAA;QADnB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEvC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,qCAAqC,CAAC;KAC5E;AAED,IAAA,MAAM,CAAC,KAA4B,EAAA;AAC/B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAiD,IAAI,CAAC,iBAAiB,GAAG,CAAA,MAAA,CAAQ,EAAE,KAAK,CAAC,CAAC;KAC1H;AAED,IAAA,aAAa,CAAC,EAAU,EAAA;QACpB,IAAI,GAAG,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAA,UAAA,EAAa,EAAE,CAAA,OAAA,CAAS,CAAC;QAE5D,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAuD,GAAG,CAAC,CAAC;KAC1F;AAED,IAAA,WAAW,CAAC,MAAc,EAAA;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAA,cAAA,EAAiB,MAAM,CAAA,CAAE,CAAC;QAE7D,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAA8B,GAAG,CAAC,CAAC;KACjE;AAtBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,4CAI5B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,cADlB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;0BAKzB,MAAM;2BAAC,UAAU,CAAA;;;MCLb,oCAAoC,CAAA;IAE7C,UAAU,GAAA;QACN,OAAO,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;KACrG;IAED,WAAoB,CAAA,WAAuB,EAC/B,gBAAoC,EAAA;QAD5B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAC/B,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAoB;KAC/C;IAED,OAAO,CAAC,cAAsB,EAAE,MAAc,EAAA;AAC1C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAwC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAW,QAAA,EAAA,MAAM,IAAI,cAAc,CAAA,CAAE,CAAC,CAAC;KACjI;8GAZQ,oCAAoC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAApC,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oCAAoC,cAFjC,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAHhD,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;MCEY,6BAA6B,CAAA;IACxC,oBAAoB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,QAAQ,GAAG,qCAAqC,CAAC;KAC9D;IAID,WACmB,CAAA,WAAuB,EACpB,OAAe,EAAA;QADlB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAHzB,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;AAMrC,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;KACzB;AAEM,IAAA,cAAc,CAAC,KAA2C,EAAA;AAC/D,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,oBAAoB,EAAE,GAAG,kBAAkB,EAAE,KAAK,CAAC,CAAC;KACxG;AAEM,IAAA,MAAM,CAAC,KAAmC,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,oBAAoB,EAAE,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KAC9F;AAEM,IAAA,MAAM,CAAC,KAAoC,EAAA;AAChD,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAC1B,IAAI,CAAC,oBAAoB,EAAE,GAAG,QAAQ,EACtC,KAAK,CACN,CAAC;KACH;AA3BU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,4CAS9B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AATT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,cAF5B,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAHzC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAUI,MAAM;2BAAC,UAAU,CAAA;;;ACbtB;;;;;;AAMG;MAIU,4BAA4B,CAAA;IAGrC,WACY,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,oCAAoC,CAAC;KAC3E;AAED,IAAA,kBAAkB,CAAC,KAAwD,EAAA;AACvE,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAA+C,IAAI,CAAC,iBAAiB,GAAG,CAAA,qBAAA,CAAuB,EAAE,KAAK,CAAC,CAAC;KACvI;AAED,IAAA,yBAAyB,CAAC,KAAwD,EAAA;AAC9E,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAsC,IAAI,CAAC,iBAAiB,GAAG,CAAA,yBAAA,CAA2B,EAAE,KAAK,CAAC,CAAC;KAClI;AAhBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,4CAKzB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,cAFzB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAHxC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,UAAU,CAAA;;;ACd1B;;;;;;AAMG;MAIU,qCAAqC,CAAA;IAG9C,WACqB,CAAA,KAAiB,EACd,OAAe,EAAA;QADlB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAY;AAGlC,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,+CAA+C,CAAC;KACtF;AAED,IAAA,SAAS,CAAC,KAA2C,EAAA;AACjD,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KACrF;AAED,IAAA,SAAS,CAAC,EAAU,EAAA;AAChB,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAuB,IAAI,CAAC,iBAAiB,GAAG,CAAA,OAAA,EAAU,EAAE,CAAA,CAAE,CAAC,CAAC;KACxF;AAED,IAAA,SAAS,CAAC,QAAgB,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,cAAc,QAAQ,CAAA,CAAE,EAAE,EAAE,CAAC,CAAC;KAClG;AApBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qCAAqC,4CAKlC,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qCAAqC,cAFlC,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBAHjD,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,UAAU,CAAA;;;ACf1B;;;;;;AAMG;MAIU,kBAAkB,CAAA;IAG7B,WACU,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,yBAAyB,CAAC;KAC9D;AAEM,IAAA,cAAc,CAAC,SAAiB,EAAA;AACrC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAc,IAAI,CAAC,iBAAiB,GAAG,CAAA,yBAAA,EAA4B,SAAS,CAAA,CAAE,CAAC,CAAC;KAC5G;AAEM,IAAA,oBAAoB,CAAC,SAAiB,EAAA;AAC3C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAc,IAAI,CAAC,iBAAiB,GAAG,CAAA,gCAAA,EAAmC,SAAS,CAAA,CAAE,CAAC,CAAC;KACnH;AAEM,IAAA,MAAM,CAAC,KAAiC,EAAA;AAC7C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,CAAA,MAAA,CAAQ,EAAE,KAAK,CAAC,CAAC;KACzF;AApBU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,4CAKnB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFjB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAMI,MAAM;2BAAC,UAAU,CAAA;;;ACZtB;;;;;;AAMG;MAIU,mBAAmB,CAAA;IAG9B,WACU,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,0BAA0B,CAAC;KAC/D;IAEM,MAAM,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAiB,IAAI,CAAC,iBAAiB,GAAG,CAAQ,MAAA,CAAA,CAAC,CAAC;KAChF;IAEM,YAAY,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAiB,IAAI,CAAC,iBAAiB,GAAG,CAAe,aAAA,CAAA,CAAC,CAAC;KACvF;AAEM,IAAA,qBAAqB,CAAC,SAAiB,EAAA;AAC5C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAyB,IAAI,CAAC,iBAAiB,GAAG,CAAA,mCAAA,EAAsC,SAAS,CAAA,CAAE,CAAC,CAAC;KACjI;AAEM,IAAA,cAAc,CAAC,EAAU,EAAA;AAC9B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAqB,IAAI,CAAC,iBAAiB,GAAG,CAAA,yBAAA,EAA4B,EAAE,CAAA,CAAE,CAAC,CAAC;KAC5G;AAEM,IAAA,oBAAoB,CAAC,SAAiB,EAAA;AAC3C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAqB,IAAI,CAAC,iBAAiB,GAAG,CAAA,gCAAA,EAAmC,SAAS,CAAA,CAAE,CAAC,CAAC;KAC1H;AA5BU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,4CAKpB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,cAFlB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAMI,MAAM;2BAAC,UAAU,CAAA;;;ACdtB;;;;;;AAMG;MAIU,eAAe,CAAA;IAG1B,WACU,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,oBAAoB,CAAC;KACzD;AAEM,IAAA,MAAM,CAAC,KAAoB,EAAA;AAChC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KACzF;AAEM,IAAA,KAAK,CAAC,KAA2B,EAAA;AACtC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC;KACxF;AAEM,IAAA,MAAM,CAAC,KAA2B,EAAA;AACvC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC;KACzF;AApBU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,4CAKhB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAMI,MAAM;2BAAC,UAAU,CAAA;;;ACnBtB;;;;;;AAMG;MAKU,4CAA4C,CAAA;IAGrD,WACY,CAAA,IAAgB,EACJ,OAAe,EAAA;QAD3B,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;AAGxB,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,uDAAuD,CAAC;KAC9F;AAED,IAAA,gBAAgB,CAAC,KAA4C,EAAA;AACzD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,iBAAiB,GAAG,CAAA,MAAA,CAAQ,EAAE,KAAK,CAAC,CAAC;KACpF;AAED,IAAA,qBAAqB,CAAC,KAAsD,EAAA;AACxE,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkC,IAAI,CAAC,iBAAiB,GAAG,CAAA,oCAAA,CAAsC,EAAE,KAAK,CAAC,CAAC;KAClI;AAED,IAAA,wCAAwC,CAAC,KAAsD,EAAA;AAC3F,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAqD,IAAI,CAAC,iBAAiB,GAAG,CAAA,0DAAA,CAA4D,EAAE,KAAK,CAAC,CAAC;KAC3K;AAED,IAAA,cAAc,CAAC,KAAoD,EAAA;AAC/D,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsD,IAAI,CAAC,iBAAiB,GAAG,cAAc,EAAE,KAAK,CAAC,CAAC;KAC9H;AAxBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4CAA4C,4CAKzC,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4CAA4C,cAFzC,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,4CAA4C,EAAA,UAAA,EAAA,CAAA;kBAHxD,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,UAAU,CAAA;;;ACjB1B;;;;;;AAMG;MAKU,yBAAyB,CAAA;IAGpC,WACU,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,iCAAiC,CAAC;KACtE;IAEM,KAAK,CAAC,SAAiB,EAAE,SAAiB,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAqC,IAAI,CAAC,iBAAiB,GAAG,oBAAoB,SAAS,CAAA,WAAA,EAAc,SAAS,CAAA,CAAE,CAAC,CAAC;KAClJ;AAZU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,4CAK1B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,cAFxB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAHrC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAMI,MAAM;2BAAC,UAAU,CAAA;;;ACftB;;;;AAIG;MAIU,wBAAwB,CAAA;IAGjC,WAA6B,CAAA,WAAuB,EAC5B,OAAe,EAAA;QADV,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAEhD,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,gCAAgC,CAAC;KACvE;AAED;;;;;AAKG;IACI,oCAAoC,CAAC,iBAAyB,EAAE,WAAmB,EAAA;AACtF,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAoD,IAAI,CAAC,iBAAiB,GAAG,0DAA0D,iBAAiB,CAAA,aAAA,EAAgB,WAAW,CAAA,CAAE,CAAC,CAAC;KACrN;AAhBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,4CAIrB,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAJb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,cAFrB,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAKQ,MAAM;2BAAC,UAAU,CAAA;;;ACb1B;;AAEG;MAIU,gCAAgC,CAAA;IAIzC,WACY,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAH3B,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;AAM1B,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,GAAG,gCAAgC,CAAC;KAC9D;AAED;;;;AAIG;AACI,IAAA,GAAG,CAAC,EAAU,EAAA;AACjB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAmC,IAAI,CAAC,QAAQ,GAAG,CAAA,UAAA,EAAa,EAAE,CAAA,SAAA,CAAW,CAAC,CAAC;KAC7G;AAlBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gCAAgC,4CAM7B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AANb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gCAAgC,cAF7B,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAOQ,MAAM;2BAAC,UAAU,CAAA;;;ACZ1B;;;AAGG;MAIU,6BAA6B,CAAA;IAIxC,WACmB,CAAA,WAAuB,EACpB,OAAe,EAAA;QADlB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QAHzB,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;AAMrC,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,GAAG,sCAAsC,CAAC;KAClE;AAED;;;;AAIG;AACH,IAAA,MAAM,CAAC,KAAqC,EAAA;AAC1C,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAA8C,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAA,MAAA,CAAQ,EAAE,KAAK,CAAC,CAAC;KAC5G;AAED;;;;AAIG;AACH,IAAA,OAAO,CAAC,EAAU,EAAA;AAChB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAiC,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAA,aAAA,EAAgB,EAAE,CAAA,CAAE,CAAC,CAAC;KACnG;AAED,IAAA,aAAa,CAAC,EAAU,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAiC,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAA,oBAAA,EAAuB,EAAE,CAAA,CAAE,CAAC,CAAC;KAC1G;AA/BU,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,4CAM9B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AANT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,cAF5B,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAHzC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAOI,MAAM;2BAAC,UAAU,CAAA;;;ACbtB;;AAEG;MAIU,kBAAkB,CAAA;IAG3B,WACY,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,wBAAwB,CAAC;KAC/D;AAED;;;;AAIG;AACH,IAAA,OAAO,CAAC,EAAU,EAAA;AACd,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAmB,CAAA,EAAG,IAAI,CAAC,iBAAiB,CAAA,iBAAA,EAAoB,EAAE,CAAA,CAAE,CAAC,CAAC;KACpG;AAED;;;;AAIG;AACH,IAAA,MAAM,CAAC,KAA+B,EAAA;AAClC,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAA4B,CAAA,EAAG,IAAI,CAAC,iBAAiB,CAAA,OAAA,CAAS,EAAE,KAAK,CAAC,CAAC;KACtG;AA1BQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,4CAKf,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFf,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,UAAU,CAAA;;;MCRb,+BAA+B,CAAA;IAGxC,WACY,CAAA,WAAuB,EACX,OAAe,EAAA;QAD3B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;AAG/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,GAAG,wCAAwC,CAAC;KAC/E;IAED,UAAU,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAgC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAC;KAClG;AAED,IAAA,OAAO,CAAC,EAAU,EAAA;AACd,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAgC,IAAI,CAAC,iBAAiB,GAAG,CAAA,KAAA,EAAQ,EAAE,CAAA,CAAE,CAAC,CAAC;KACrG;AAhBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,4CAK5B,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AALb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,cAF5B,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAH3C,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAMQ,MAAM;2BAAC,UAAU,CAAA;;;ACP1B;;AAEG;MAIU,mCAAmC,CAAA;IAC5C,UAAU,GAAA;AACN,QAAA,OAAO,CAAG,EAAA,IAAI,CAAC,QAAQ,4CAA4C,CAAC;KACvE;IAED,WACY,CAAA,WAAuB,EACH,QAAgB,EAAA;QADpC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAY;QACH,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAQ;KAC3C;AAEL;;;;AAIG;AACI,IAAA,eAAe,CAAC,EAAU,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAgC,CAAA,EAAG,IAAI,CAAC,UAAU,EAAE,CAAA,eAAA,EAAkB,EAAE,CAAA,CAAE,CAAC,CAAC;KAC1G;AAjBQ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mCAAmC,4CAOhC,UAAU,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAPb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mCAAmC,cAFhC,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAET,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAH/C,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;0BAQQ,MAAM;2BAAC,UAAU,CAAA;;;ICEd,iBAKX;AALD,CAAA,UAAY,gBAAgB,EAAA;AACxB,IAAA,gBAAA,CAAA,4BAAA,CAAA,GAAA,4BAAyD,CAAA;AACzD,IAAA,gBAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC,CAAA;AACnC,IAAA,gBAAA,CAAA,gBAAA,CAAA,GAAA,gBAAiC,CAAA;AACjC,IAAA,gBAAA,CAAA,sBAAA,CAAA,GAAA,sBAA6C,CAAA;AACjD,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,GAK3B,EAAA,CAAA,CAAA,CAAA;IAwDW,2BAMX;AAND,CAAA,UAAY,0BAA0B,EAAA;AAClC,IAAA,0BAAA,CAAA,uBAAA,CAAA,GAAA,uBAA+C,CAAA;AAC/C,IAAA,0BAAA,CAAA,kBAAA,CAAA,GAAA,kBAAqC,CAAA;AACrC,IAAA,0BAAA,CAAA,wBAAA,CAAA,GAAA,wBAAiD,CAAA;AACjD,IAAA,0BAAA,CAAA,eAAA,CAAA,GAAA,eAA+B,CAAA;AAC/B,IAAA,0BAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AAC7B,CAAC,EANW,0BAA0B,KAA1B,0BAA0B,GAMrC,EAAA,CAAA,CAAA;;IC1EW,6BAIX;AAJD,CAAA,UAAY,4BAA4B,EAAA;AACvC,IAAA,4BAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,4BAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACnB,IAAA,4BAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACpB,CAAC,EAJW,4BAA4B,KAA5B,4BAA4B,GAIvC,EAAA,CAAA,CAAA;;ICmBW,oBAGX;AAHD,CAAA,UAAY,mBAAmB,EAAA;AAC5B,IAAA,mBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,mBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AAChB,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,GAG9B,EAAA,CAAA,CAAA;;ICDW,wCAGX;AAHD,CAAA,UAAY,uCAAuC,EAAA;AAC/C,IAAA,uCAAA,CAAA,aAAA,CAAA,GAAA,aAA2B,CAAA;AAC3B,IAAA,uCAAA,CAAA,kBAAA,CAAA,GAAA,kBAAqC,CAAA;AACzC,CAAC,EAHW,uCAAuC,KAAvC,uCAAuC,GAGlD,EAAA,CAAA,CAAA;;IC5BW,oBAIX;AAJD,CAAA,UAAY,mBAAmB,EAAA;AAC7B,IAAA,mBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,mBAAA,CAAA,eAAA,CAAA,GAAA,eAA+B,CAAA;AAC/B,IAAA,mBAAA,CAAA,kBAAA,CAAA,GAAA,kBAAqC,CAAA;AACvC,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,GAI9B,EAAA,CAAA,CAAA;;AClBD;;AAEG;MACU,UAAU,CAAA;AAEnB;;AAEG;aACa,IAAO,CAAA,OAAA,GAAW,eAAe,CAAC,EAAA;AAElD;;AAEG;aACa,IAAK,CAAA,KAAA,GAAW,aAAa,CAAC,EAAA;AAE9C;;AAEG;aACa,IAAO,CAAA,OAAA,GAAW,eAAe,CAAC,EAAA;;;AClBtD;;AAEG;;ACFH;;AAEG;;;;"}
@@ -0,0 +1,45 @@
1
+ export interface CreateCourseOrderRequest {
2
+ courseId: string;
3
+ tariffId: string;
4
+ isFreeOfCharge: boolean;
5
+ }
6
+ export interface CreateCourseOrderResponse {
7
+ succeeded: boolean;
8
+ id: string;
9
+ errorMessage: string;
10
+ }
11
+ export interface CourseOrderModel {
12
+ id: string;
13
+ courseId: string;
14
+ tariffId: string;
15
+ isFreeOfCharge: boolean;
16
+ userId: string;
17
+ isFinished: boolean;
18
+ courseWithPlans: StudentGroupWithPaymentPlansModel;
19
+ }
20
+ export interface CourseShopWindowDetailedModel {
21
+ id: string;
22
+ name: string;
23
+ description: string;
24
+ courses: Array<StudentGroupWithPaymentPlansModel>;
25
+ }
26
+ export interface StudentGroupWithPaymentPlansModel {
27
+ studentGroupName: string;
28
+ studentGroupId: string;
29
+ getCourseMiniHtml: string;
30
+ getCourseDetailedHtml: string;
31
+ isFreeOfCharge: boolean;
32
+ paymentPlans: Array<StudentGroupPaymentPlanSimpleModel>;
33
+ }
34
+ export interface StudentGroupPaymentPlanSimpleModel {
35
+ id: string;
36
+ name: string;
37
+ description: string;
38
+ daysLength: number;
39
+ amount: number;
40
+ }
41
+ export interface StudentGroupPaymentPlansModel {
42
+ id: string;
43
+ isFreeOfCharge: boolean;
44
+ globalPaymentPlans: StudentGroupPaymentPlanSimpleModel[];
45
+ }
@@ -15,3 +15,4 @@ export * from './subject.models';
15
15
  export * from './icon-models';
16
16
  export * from './course-test-models';
17
17
  export * from './landing-models';
18
+ export * from './course-shop-models';
@@ -1,3 +1,4 @@
1
+ import { StudentGroupPaymentPlanSimpleModel } from "./course-shop-models";
1
2
  export interface CourseLandingPageSimpleModel {
2
3
  id: string;
3
4
  name: string;
@@ -12,10 +13,12 @@ export interface CourseLandingPageDetailedModel {
12
13
  id: string;
13
14
  name: string;
14
15
  studentGroupId: string;
16
+ isFreeOfCharge: boolean;
15
17
  description: string;
16
18
  dataJson: string;
17
19
  dataType: string;
18
20
  blocks: Array<CourseLandingPageBlockModel>;
21
+ paymentPlans: Array<StudentGroupPaymentPlanSimpleModel>;
19
22
  }
20
23
  export interface CourseLandingPageBlockModel {
21
24
  id: string;
@@ -0,0 +1,25 @@
1
+ import { HttpClient } from "@angular/common/http";
2
+ import { CourseOrderModel, CreateCourseOrderRequest, CreateCourseOrderResponse } from "../models/course-shop-models";
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Предоставляем методы контроллера Tutor.Api.Controllers.Courses.CourseOrderController
6
+ */
7
+ export declare class CourseOrderService {
8
+ private _httpClient;
9
+ baseControllerUrl: string;
10
+ constructor(_httpClient: HttpClient, baseUrl: string);
11
+ /**
12
+ * Получить заказ на покупку курса по идентификатору
13
+ * @param id идентификатор заказа
14
+ * @returns
15
+ */
16
+ getById(id: string): import("rxjs").Observable<CourseOrderModel>;
17
+ /**
18
+ * созать заказ на покупку курса
19
+ * @param model запрос для создания заказа на покупку курса
20
+ * @returns
21
+ */
22
+ create(model: CreateCourseOrderRequest): import("rxjs").Observable<CreateCourseOrderResponse>;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<CourseOrderService, never>;
24
+ static ɵprov: i0.ɵɵInjectableDeclaration<CourseOrderService>;
25
+ }
@@ -0,0 +1,12 @@
1
+ import { HttpClient } from "@angular/common/http";
2
+ import { CourseShopWindowDetailedModel } from "../models";
3
+ import * as i0 from "@angular/core";
4
+ export declare class CourseShopWindowDetailedService {
5
+ private _httpClient;
6
+ baseControllerUrl: string;
7
+ constructor(_httpClient: HttpClient, baseUrl: string);
8
+ getDefault(): import("rxjs").Observable<CourseShopWindowDetailedModel>;
9
+ getById(id: string): import("rxjs").Observable<CourseShopWindowDetailedModel>;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<CourseShopWindowDetailedService, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<CourseShopWindowDetailedService>;
12
+ }
@@ -0,0 +1,21 @@
1
+ import { HttpClient } from "@angular/common/http";
2
+ import { Observable } from "rxjs";
3
+ import { StudentGroupPaymentPlansModel } from "../models";
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Предоставляет методы контроллера Tutor.Api.Controllers.StudentGroupPaymentPlans.StudentGroupPaymentPlanQueryController
7
+ */
8
+ export declare class StudentGroupPaymentPlanQueryService {
9
+ private _httpClient;
10
+ private _baseUrl;
11
+ getBaseUrl(): string;
12
+ constructor(_httpClient: HttpClient, _baseUrl: string);
13
+ /**
14
+ * Получить группу и глобальные планы оплаты с ней связанные
15
+ * @param id идентификатор группы
16
+ * @returns групп с планами оплаты
17
+ */
18
+ getPaymentPlans(id: string): Observable<StudentGroupPaymentPlansModel>;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<StudentGroupPaymentPlanQueryService, never>;
20
+ static ɵprov: i0.ɵɵInjectableDeclaration<StudentGroupPaymentPlanQueryService>;
21
+ }
@@ -11,11 +11,31 @@ export declare class StudentGroupQueryService {
11
11
  private _baseUrl;
12
12
  getBaseUrl(): string;
13
13
  constructor(_httpClient: HttpClient, _baseUrl: string);
14
+ /**
15
+ * Поиск групп студентов
16
+ */
14
17
  search(model: SearchStudentGroups): Observable<GetListResult<StudentGroupSimpleModel>>;
15
18
  searchWithProgresses(model: SearchStudentGroupsByStudentRequest): Observable<GetListResult<StudentGroupWithCourseProgressModel>>;
19
+ /**
20
+ * Получить группу по идентификатору
21
+ * @param id идентификатор группы учеников
22
+ * @returns группу учеников
23
+ */
16
24
  getById(id: string): Observable<StudentGroupDetailedModel>;
17
25
  getByStudentId(id: string): Observable<StudentGroupSimpleModel[]>;
26
+ /**
27
+ * Получить список студентов в группе по фильтру
28
+ * @param model модель для поиска
29
+ * @returns список студентов
30
+ */
18
31
  getStudentsList(model: SearchStudentsInGroup): Observable<GetListResult<StudentInGroupSimpleModel>>;
32
+ /**
33
+ * Получить студента в группе
34
+ * @param groupId идентификатор группы
35
+ * @param studentId идентификатор студента
36
+ * @returns
37
+ */
38
+ getStudentById(groupId: string, studentId: string): Observable<StudentInGroupSimpleModel>;
19
39
  static ɵfac: i0.ɵɵFactoryDeclaration<StudentGroupQueryService, never>;
20
40
  static ɵprov: i0.ɵɵInjectableDeclaration<StudentGroupQueryService>;
21
41
  }
@@ -21,3 +21,6 @@ export { StudentSubjectViewService } from './StudentSubjectViewService';
21
21
  export { StudentCourseViewService } from './StudentCourseViewService';
22
22
  export { TestSolutionDetailedQueryService } from './TestSolutionDetailedQueryService';
23
23
  export { CourseLandingPageQueryService } from './CourseLandingPageQueryService';
24
+ export { CourseOrderService } from './CourseOrderService';
25
+ export { CourseShopWindowDetailedService } from './CourseShopWindowDetailedService';
26
+ export { StudentGroupPaymentPlanQueryService } from './StudentGroupPaymentPlanQueryService';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tutor-logic",
3
- "version": "2.0.11",
3
+ "version": "2.0.13",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.3.4",
6
6
  "@angular/core": "^17.3.4"