@cuby-ui/api 0.0.502 → 0.0.504
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/instruction/models/instruction-assessment-config.mjs +10 -1
- package/esm2022/instruction/services/instruction-assessment-config-api.service.mjs +52 -25
- package/fesm2022/cuby-ui-api.mjs +61 -25
- package/fesm2022/cuby-ui-api.mjs.map +1 -1
- package/instruction/models/instruction-assessment-config.d.ts +13 -0
- package/instruction/services/instruction-assessment-config-api.service.d.ts +22 -13
- package/package.json +1 -1
|
@@ -14,4 +14,13 @@ export var QuestionType;
|
|
|
14
14
|
QuestionType["MultipleChoice"] = "MULTIPLE_CHOICE";
|
|
15
15
|
QuestionType["TrueFalse"] = "TRUE_FALSE";
|
|
16
16
|
})(QuestionType || (QuestionType = {}));
|
|
17
|
-
|
|
17
|
+
export var QualityCriteria;
|
|
18
|
+
(function (QualityCriteria) {
|
|
19
|
+
QualityCriteria["Profanity"] = "PROFANITY";
|
|
20
|
+
QualityCriteria["Violence"] = "VIOLENCE";
|
|
21
|
+
QualityCriteria["SpamDetection"] = "SPAM_DETECTION";
|
|
22
|
+
QualityCriteria["ContentSufficiency"] = "CONTENT_SUFFICIENCY";
|
|
23
|
+
QualityCriteria["TopicDiversity"] = "TOPIC_DIVERSITY";
|
|
24
|
+
QualityCriteria["ClarityAndDepth"] = "CLARITY_AND_DEPTH";
|
|
25
|
+
})(QualityCriteria || (QualityCriteria = {}));
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1Y3Rpb24tYXNzZXNzbWVudC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcGkvaW5zdHJ1Y3Rpb24vbW9kZWxzL2luc3RydWN0aW9uLWFzc2Vzc21lbnQtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThCQSxNQUFNLENBQU4sSUFBWSxjQUdYO0FBSEQsV0FBWSxjQUFjO0lBQ3RCLCtCQUFhLENBQUE7SUFDYiw2Q0FBMkIsQ0FBQTtBQUMvQixDQUFDLEVBSFcsY0FBYyxLQUFkLGNBQWMsUUFHekI7QUFFRCxNQUFNLENBQU4sSUFBWSxxQkFHWDtBQUhELFdBQVkscUJBQXFCO0lBQzdCLGdEQUF1QixDQUFBO0lBQ3ZCLDhDQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFIVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBR2hDO0FBRUQsTUFBTSxDQUFOLElBQVksWUFJWDtBQUpELFdBQVksWUFBWTtJQUNwQiw4Q0FBOEIsQ0FBQTtJQUM5QixrREFBa0MsQ0FBQTtJQUNsQyx3Q0FBd0IsQ0FBQTtBQUM1QixDQUFDLEVBSlcsWUFBWSxLQUFaLFlBQVksUUFJdkI7QUFFRCxNQUFNLENBQU4sSUFBWSxlQU9YO0FBUEQsV0FBWSxlQUFlO0lBQ3ZCLDBDQUF1QixDQUFBO0lBQ3ZCLHdDQUFxQixDQUFBO0lBQ3JCLG1EQUFnQyxDQUFBO0lBQ2hDLDZEQUEwQyxDQUFBO0lBQzFDLHFEQUFrQyxDQUFBO0lBQ2xDLHdEQUFxQyxDQUFBO0FBQ3pDLENBQUMsRUFQVyxlQUFlLEtBQWYsZUFBZSxRQU8xQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1aU51bGxhYmxlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcblxuZXhwb3J0IGludGVyZmFjZSBJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWdSZXF1ZXN0Qm9keSB7XG4gICAgcmVhZG9ubHkgYXNzZXNzbWVudE1vZGU6IEFzc2Vzc21lbnRNb2RlO1xuICAgIHJlYWRvbmx5IGFzc2Vzc21lbnRSZXF1aXJlbWVudDogQXNzZXNzbWVudFJlcXVpcmVtZW50O1xuICAgIHJlYWRvbmx5IHF1aXpTaXplOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgcXVpelBhc3NUaHJlc2hvbGQ6IG51bWJlcjtcbiAgICByZWFkb25seSBxdWVzdGlvblR5cGVzOiBRdWVzdGlvblR5cGVbXTtcbiAgICByZWFkb25seSBxdWl6TGFuZ3VhZ2U6IExhbmd1YWdlQ29kZTtcbiAgICByZWFkb25seSBpbnRlcmFjdGl2ZU1pblR1cm5zOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgaW50ZXJhY3RpdmVNYXhUdXJuczogbnVtYmVyO1xuICAgIHJlYWRvbmx5IGludGVyYWN0aXZlUGFzc1RocmVzaG9sZDogbnVtYmVyO1xuICAgIHJlYWRvbmx5IGludGVyYWN0aXZlTGFuZ3VhZ2U6IExhbmd1YWdlQ29kZTtcbiAgICByZWFkb25seSBhc3Npc3RhbnRQcm9tcHQ6IEN1aU51bGxhYmxlPHN0cmluZz47XG4gICAgcmVhZG9ubHkgYXR0ZW1wdHNMaW1pdDogbnVtYmVyO1xuICAgIHJlYWRvbmx5IGF0dGVtcHRzUmVzZXRQZXJpb2Q6IER1cmF0aW9uO1xuICAgIHJlYWRvbmx5IHR0bEhvdXJzOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgY29udGVudFF1YWxpdHlUaHJlc2hvbGQ6IG51bWJlcjtcbiAgICByZWFkb25seSBibG9ja1F1YWxpdHlDcml0ZXJpYTogUXVhbGl0eUNyaXRlcmlhW107XG4gICAgcmVhZG9ubHkgYmxvY2tRdWFsaXR5TGFuZ3VhZ2U6IExhbmd1YWdlQ29kZTtcbiAgICByZWFkb25seSBibG9ja1F1YWxpdHlHYXRlVGhyZXNob2xkOiBudW1iZXI7XG4gICAgcmVhZG9ubHkgYmxvY2tRdWFsaXR5U2NvcmVUaHJlc2hvbGQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWcgZXh0ZW5kcyBJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWdSZXF1ZXN0Qm9keSB7XG4gICAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgY3JlYXRlZEF0Pzogc3RyaW5nO1xuICAgIHJlYWRvbmx5IGluc3RydWN0aW9uSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIEFzc2Vzc21lbnRNb2RlIHtcbiAgICBRdWl6ID0gJ1FVSVonLFxuICAgIEludGVyYWN0aXZlID0gJ0lOVEVSQUNUSVZFJ1xufVxuXG5leHBvcnQgZW51bSBBc3Nlc3NtZW50UmVxdWlyZW1lbnQge1xuICAgIE1hbmRhdG9yeSA9ICdNQU5EQVRPUlknLFxuICAgIE9wdGlvbmFsID0gJ09QVElPTkFMJ1xufVxuXG5leHBvcnQgZW51bSBRdWVzdGlvblR5cGUge1xuICAgIFNpbmdsZUNob2ljZSA9ICdTSU5HTEVfQ0hPSUNFJyxcbiAgICBNdWx0aXBsZUNob2ljZSA9ICdNVUxUSVBMRV9DSE9JQ0UnLFxuICAgIFRydWVGYWxzZSA9ICdUUlVFX0ZBTFNFJ1xufVxuXG5leHBvcnQgZW51bSBRdWFsaXR5Q3JpdGVyaWEge1xuICAgIFByb2Zhbml0eSA9ICdQUk9GQU5JVFknLFxuICAgIFZpb2xlbmNlID0gJ1ZJT0xFTkNFJyxcbiAgICBTcGFtRGV0ZWN0aW9uID0gJ1NQQU1fREVURUNUSU9OJyxcbiAgICBDb250ZW50U3VmZmljaWVuY3kgPSAnQ09OVEVOVF9TVUZGSUNJRU5DWScsXG4gICAgVG9waWNEaXZlcnNpdHkgPSAnVE9QSUNfRElWRVJTSVRZJyxcbiAgICBDbGFyaXR5QW5kRGVwdGggPSAnQ0xBUklUWV9BTkRfREVQVEgnXG59XG5cbi8qKlxuICog0JrQvtC0INGP0LfRi9C60LAgKElTTyA2MzktMSlcbiAqL1xuZXhwb3J0IHR5cGUgTGFuZ3VhZ2VDb2RlID0gc3RyaW5nO1xuXG4vKipcbiAqINCf0LXRgNC40L7QtCDQstGA0LXQvNC10L3QuCDQsiDRhNC+0YDQvNCw0YLQtSBJU08gODYwMSBEdXJhdGlvbiAo0L3QsNC/0YDQuNC80LXRgCwgUFQyNEgsIFA3RClcbiAqL1xuZXhwb3J0IHR5cGUgRHVyYXRpb24gPSBzdHJpbmc7XG4iXX0=
|
|
@@ -11,47 +11,74 @@ export class CuiInstructionAssessmentConfigApiService {
|
|
|
11
11
|
getDefaultInstructionAssessmentConfig(instructionId) {
|
|
12
12
|
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}/resolve`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
13
13
|
}
|
|
14
|
+
getDefaultInstructionAssessmentPolymorphicConfig(instructionId) {
|
|
15
|
+
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}/polymorphic/resolve`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
16
|
+
}
|
|
14
17
|
createInstructionAssessmentConfig(instructionId, body) {
|
|
15
18
|
return this.httpClient.post(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}`, body, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
16
19
|
}
|
|
17
20
|
getInstructionAssessmentConfig(instructionId) {
|
|
18
21
|
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
19
22
|
}
|
|
20
|
-
|
|
21
|
-
return this.httpClient.
|
|
23
|
+
getInstructionAssessmentPolymorphicConfig(instructionId) {
|
|
24
|
+
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}/polymorphic`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
25
|
+
}
|
|
26
|
+
updateAssessmentMode(configId, assessmentMode) {
|
|
27
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/assessment-mode`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { assessmentMode } });
|
|
28
|
+
}
|
|
29
|
+
updateAssessmentRequirement(configId, assessmentRequirement) {
|
|
30
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/assessment-requirement`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { assessmentRequirement } });
|
|
31
|
+
}
|
|
32
|
+
updateQuizSize(configId, quizSize) {
|
|
33
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/quiz-size`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { quizSize } });
|
|
34
|
+
}
|
|
35
|
+
updateQuizLanguage(configId, quizLanguage) {
|
|
36
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/quiz-language`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { quizLanguage } });
|
|
37
|
+
}
|
|
38
|
+
updateQuizPassThreshold(configId, quizPassThreshold) {
|
|
39
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/quiz-pass-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { quizPassThreshold } });
|
|
40
|
+
}
|
|
41
|
+
updateQuestionTypes(configId, questionTypes) {
|
|
42
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/question-types`, questionTypes, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
43
|
+
}
|
|
44
|
+
updateInteractiveLanguage(configId, interactiveLanguage) {
|
|
45
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-language`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactiveLanguage } });
|
|
46
|
+
}
|
|
47
|
+
updateInteractiveMinTurns(configId, interactiveMinTurns) {
|
|
48
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-min-turns`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactiveMinTurns } });
|
|
22
49
|
}
|
|
23
|
-
|
|
24
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
50
|
+
updateInteractiveMaxTurns(configId, interactiveMaxTurns) {
|
|
51
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-max-turns`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactiveMaxTurns } });
|
|
25
52
|
}
|
|
26
|
-
|
|
27
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
53
|
+
updateInteractivePassThreshold(configId, interactivePassThreshold) {
|
|
54
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-pass-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactivePassThreshold } });
|
|
28
55
|
}
|
|
29
|
-
|
|
30
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
56
|
+
updateAssistantPrompt(configId, assistantPrompt) {
|
|
57
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/assistant-prompt`, assistantPrompt, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
31
58
|
}
|
|
32
|
-
|
|
33
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
59
|
+
updateAttemptsLimit(configId, attemptsLimit) {
|
|
60
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/attempts-limit`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { attemptsLimit } });
|
|
34
61
|
}
|
|
35
|
-
|
|
36
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
62
|
+
updateAttemptsResetPeriod(configId, attemptsResetPeriod) {
|
|
63
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/attempts-reset-period`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { attemptsResetPeriod } });
|
|
37
64
|
}
|
|
38
|
-
|
|
39
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
65
|
+
updateTtlHours(configId, ttlHours) {
|
|
66
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/ttl-hours`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { ttlHours } });
|
|
40
67
|
}
|
|
41
|
-
|
|
42
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
68
|
+
updateContentQualityThreshold(configId, contentQualityThreshold) {
|
|
69
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/content-quality-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { contentQualityThreshold } });
|
|
43
70
|
}
|
|
44
|
-
|
|
45
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
71
|
+
updateBlockQualityCriteria(configId, blockQualityCriteria) {
|
|
72
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-criteria`, blockQualityCriteria, { ...SHARED_INSTRUCTION_HTTP_OPTIONS });
|
|
46
73
|
}
|
|
47
|
-
|
|
48
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
74
|
+
updateBlockQualityLanguage(configId, blockQualityLanguage) {
|
|
75
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-language`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { blockQualityLanguage } });
|
|
49
76
|
}
|
|
50
|
-
|
|
51
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
77
|
+
updateBlockQualityGateThreshold(configId, blockQualityGateThreshold) {
|
|
78
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-gate-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { blockQualityGateThreshold } });
|
|
52
79
|
}
|
|
53
|
-
|
|
54
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
80
|
+
updateBlockQualityScoreThreshold(configId, blockQualityScoreThreshold) {
|
|
81
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-score-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { blockQualityScoreThreshold } });
|
|
55
82
|
}
|
|
56
83
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiInstructionAssessmentConfigApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
57
84
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiInstructionAssessmentConfigApiService, providedIn: 'root' }); }
|
|
@@ -62,4 +89,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
62
89
|
providedIn: 'root'
|
|
63
90
|
}]
|
|
64
91
|
}] });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1Y3Rpb24tYXNzZXNzbWVudC1jb25maWctYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcGkvaW5zdHJ1Y3Rpb24vc2VydmljZXMvaW5zdHJ1Y3Rpb24tYXNzZXNzbWVudC1jb25maWctYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWVsRSxNQUFNLE9BQU8sd0NBQXdDO0lBSHJEO1FBSXFCLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFaEMsb0JBQWUsR0FBRyxhQUFhLENBQUM7UUFDaEMsMEJBQXFCLEdBQUcsbUJBQW1CLENBQUM7S0FxSmhFO0lBbkpVLHFDQUFxQyxDQUFDLGFBQXFCO1FBQzlELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3RCLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxhQUFhLElBQUksSUFBSSxDQUFDLHFCQUFxQixVQUFVLEVBQ2hGLCtCQUErQixDQUNsQyxDQUFDO0lBQ04sQ0FBQztJQUVNLGlDQUFpQyxDQUNwQyxhQUFxQixFQUNyQixJQUE0QztRQUU1QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN2QixHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksYUFBYSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxFQUN4RSxJQUFJLEVBQ0osK0JBQStCLENBQ2xDLENBQUM7SUFDTixDQUFDO0lBRU0sOEJBQThCLENBQUMsYUFBcUI7UUFDdkQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDdEIsR0FBRyxJQUFJLENB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Q0FBQzsrR0F4SlEsd0NBQXdDO21IQUF4Qyx3Q0FBd0MsY0FGckMsTUFBTTs7NEZBRVQsd0NBQXdDO2tCQUhwRCxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB0eXBlIHtcbiAgICBBc3Nlc3NtZW50TW9kZSxcbiAgICBBc3Nlc3NtZW50UmVxdWlyZW1lbnQsXG4gICAgRHVyYXRpb24sXG4gICAgSW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnLFxuICAgIEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZ1JlcXVlc3RCb2R5LFxuICAgIFF1ZXN0aW9uVHlwZVxufSBmcm9tICcuLi9tb2RlbHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEN1aUluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZ0FwaVNlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudCA9IGluamVjdChIdHRwQ2xpZW50KTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgSU5TVFJVQ1RJT05fVVJMID0gJ2luc3RydWN0aW9uJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IEFTU0VTU01FTlRfQ09ORklHX1VSTCA9ICdhc3Nlc3NtZW50L2NvbmZpZyc7XG5cbiAgICBwdWJsaWMgZ2V0RGVmYXVsdEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZyhpbnN0cnVjdGlvbklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7aW5zdHJ1Y3Rpb25JZH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vcmVzb2x2ZWAsXG4gICAgICAgICAgICBTSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZyhcbiAgICAgICAgaW5zdHJ1Y3Rpb25JZDogc3RyaW5nLFxuICAgICAgICBib2R5OiBJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWdSZXF1ZXN0Qm9keVxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7aW5zdHJ1Y3Rpb25JZH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH1gLFxuICAgICAgICAgICAgYm9keSxcbiAgICAgICAgICAgIFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnKGluc3RydWN0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfWAsXG4gICAgICAgICAgICBTSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUFzc2Vzc21lbnRNb2RlKFxuICAgICAgICBpbnN0cnVjdGlvbklkOiBzdHJpbmcsXG4gICAgICAgIGFzc2Vzc21lbnRNb2RlOiBBc3Nlc3NtZW50TW9kZVxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke2luc3RydWN0aW9uSWR9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9L2Fzc2Vzc21lbnQtbW9kZWAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IGFzc2Vzc21lbnRNb2RlIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVBc3Nlc3NtZW50UmVxdWlyZW1lbnQoXG4gICAgICAgIGluc3RydWN0aW9uSWQ6IHN0cmluZyxcbiAgICAgICAgYXNzZXNzbWVudFJlcXVpcmVtZW50OiBBc3Nlc3NtZW50UmVxdWlyZW1lbnRcbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9hc3Nlc3NtZW50LXJlcXVpcmVtZW50YCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgYXNzZXNzbWVudFJlcXVpcmVtZW50IH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVRdWl6U2l6ZShpbnN0cnVjdGlvbklkOiBzdHJpbmcsIHF1aXpTaXplOiBudW1iZXIpOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9xdWl6LXNpemVgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBxdWl6U2l6ZSB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlUXVpelBhc3NUaHJlc2hvbGQoXG4gICAgICAgIGluc3RydWN0aW9uSWQ6IHN0cmluZyxcbiAgICAgICAgcXVpelBhc3NUaHJlc2hvbGQ6IG51bWJlclxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke2luc3RydWN0aW9uSWR9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9L3F1aXotcGFzcy10aHJlc2hvbGRgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBxdWl6UGFzc1RocmVzaG9sZCB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlUXVlc3Rpb25UeXBlcyhcbiAgICAgICAgaW5zdHJ1Y3Rpb25JZDogc3RyaW5nLFxuICAgICAgICBxdWVzdGlvblR5cGVzOiBRdWVzdGlvblR5cGVbXVxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke2luc3RydWN0aW9uSWR9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9L3F1ZXN0aW9uLXR5cGVzYCxcbiAgICAgICAgICAgIHF1ZXN0aW9uVHlwZXMsXG4gICAgICAgICAgICBTSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUludGVyYWN0aXZlTWluVHVybnMoXG4gICAgICAgIGluc3RydWN0aW9uSWQ6IHN0cmluZyxcbiAgICAgICAgaW50ZXJhY3RpdmVNaW5UdXJuczogbnVtYmVyXG4gICAgKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7aW5zdHJ1Y3Rpb25JZH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vaW50ZXJhY3RpdmUtbWluLXR1cm5zYCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgaW50ZXJhY3RpdmVNaW5UdXJucyB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlSW50ZXJhY3RpdmVNYXhUdXJucyhcbiAgICAgICAgaW5zdHJ1Y3Rpb25JZDogc3RyaW5nLFxuICAgICAgICBpbnRlcmFjdGl2ZU1heFR1cm5zOiBudW1iZXJcbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9pbnRlcmFjdGl2ZS1tYXgtdHVybnNgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBpbnRlcmFjdGl2ZU1heFR1cm5zIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVJbnRlcmFjdGl2ZVBhc3NUaHJlc2hvbGQoXG4gICAgICAgIGluc3RydWN0aW9uSWQ6IHN0cmluZyxcbiAgICAgICAgaW50ZXJhY3RpdmVQYXNzVGhyZXNob2xkOiBudW1iZXJcbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9pbnRlcmFjdGl2ZS1wYXNzLXRocmVzaG9sZGAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IGludGVyYWN0aXZlUGFzc1RocmVzaG9sZCB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQXNzaXN0YW50UHJvbXB0KFxuICAgICAgICBpbnN0cnVjdGlvbklkOiBzdHJpbmcsXG4gICAgICAgIGFzc2lzdGFudFByb21wdDogc3RyaW5nXG4gICAgKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7aW5zdHJ1Y3Rpb25JZH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vYXNzaXN0YW50LXByb21wdGAsXG4gICAgICAgICAgICBhc3Npc3RhbnRQcm9tcHQsXG4gICAgICAgICAgICBTSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUF0dGVtcHRzTGltaXQoaW5zdHJ1Y3Rpb25JZDogc3RyaW5nLCBhdHRlbXB0c0xpbWl0OiBudW1iZXIpOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9hdHRlbXB0cy1saW1pdGAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IGF0dGVtcHRzTGltaXQgfSB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUF0dGVtcHRzUmVzZXRQZXJpb2QoXG4gICAgICAgIGluc3RydWN0aW9uSWQ6IHN0cmluZyxcbiAgICAgICAgYXR0ZW1wdHNSZXNldFBlcmlvZDogRHVyYXRpb25cbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9hdHRlbXB0cy1yZXNldC1wZXJpb2RgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBhdHRlbXB0c1Jlc2V0UGVyaW9kIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVUdGxIb3VycyhpbnN0cnVjdGlvbklkOiBzdHJpbmcsIHR0bEhvdXJzOiBudW1iZXIpOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS90dGwtaG91cnNgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyB0dGxIb3VycyB9IH1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1Y3Rpb24tYXNzZXNzbWVudC1jb25maWctYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcGkvaW5zdHJ1Y3Rpb24vc2VydmljZXMvaW5zdHJ1Y3Rpb24tYXNzZXNzbWVudC1jb25maWctYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWlCbEUsTUFBTSxPQUFPLHdDQUF3QztJQUhyRDtRQUlxQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWhDLG9CQUFlLEdBQUcsYUFBYSxDQUFDO1FBQ2hDLDBCQUFxQixHQUFHLG1CQUFtQixDQUFDO0tBMk5oRTtJQXpOVSxxQ0FBcUMsQ0FBQyxhQUFxQjtRQUM5RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN0QixHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksYUFBYSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsVUFBVSxFQUNoRiwrQkFBK0IsQ0FDbEMsQ0FBQztJQUNOLENBQUM7SUFFTSxnREFBZ0QsQ0FBQyxhQUFxQjtRQUN6RSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN0QixHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksYUFBYSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsc0JBQXNCLEVBQzVGLCtCQUErQixDQUNsQyxDQUFDO0lBQ04sQ0FBQztJQUVNLGlDQUFpQyxDQUNwQyxhQUFxQixFQUNyQixJQUE0QztRQUU1QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN2QixHQUFHLElBQUksQ0FBQyxlQUFl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RixFQUFFLEdBQUcsK0JBQStCLEVBQUUsTUFBTSxFQUFFLEVBQUUsMEJBQTBCLEVBQUUsRUFBRSxDQUNqRixDQUFDO0lBQ04sQ0FBQzsrR0E5TlEsd0NBQXdDO21IQUF4Qyx3Q0FBd0MsY0FGckMsTUFBTTs7NEZBRVQsd0NBQXdDO2tCQUhwRCxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB0eXBlIHtcbiAgICBBc3Nlc3NtZW50TW9kZSxcbiAgICBBc3Nlc3NtZW50UmVxdWlyZW1lbnQsXG4gICAgRHVyYXRpb24sXG4gICAgSW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnLFxuICAgIEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZ1JlcXVlc3RCb2R5LFxuICAgIExhbmd1YWdlQ29kZSxcbiAgICBRdWFsaXR5Q3JpdGVyaWEsXG4gICAgUXVlc3Rpb25UeXBlXG59IGZyb20gJy4uL21vZGVscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ3VpSW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnQXBpU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBodHRwQ2xpZW50ID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBJTlNUUlVDVElPTl9VUkwgPSAnaW5zdHJ1Y3Rpb24nO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgQVNTRVNTTUVOVF9DT05GSUdfVVJMID0gJ2Fzc2Vzc21lbnQvY29uZmlnJztcblxuICAgIHB1YmxpYyBnZXREZWZhdWx0SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnKGluc3RydWN0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9yZXNvbHZlYCxcbiAgICAgICAgICAgIFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RGVmYXVsdEluc3RydWN0aW9uQXNzZXNzbWVudFBvbHltb3JwaGljQ29uZmlnKGluc3RydWN0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS9wb2x5bW9ycGhpYy9yZXNvbHZlYCxcbiAgICAgICAgICAgIFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlSW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnKFxuICAgICAgICBpbnN0cnVjdGlvbklkOiBzdHJpbmcsXG4gICAgICAgIGJvZHk6IEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZ1JlcXVlc3RCb2R5XG4gICAgKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHtpbnN0cnVjdGlvbklkfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfWAsXG4gICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OU1xuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWcoaW5zdHJ1Y3Rpb25JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke2luc3RydWN0aW9uSWR9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9YCxcbiAgICAgICAgICAgIFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50UG9seW1vcnBoaWNDb25maWcoaW5zdHJ1Y3Rpb25JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQ8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke2luc3RydWN0aW9uSWR9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9L3BvbHltb3JwaGljYCxcbiAgICAgICAgICAgIFNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlNcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQXNzZXNzbWVudE1vZGUoXG4gICAgICAgIGNvbmZpZ0lkOiBzdHJpbmcsXG4gICAgICAgIGFzc2Vzc21lbnRNb2RlOiBBc3Nlc3NtZW50TW9kZVxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9hc3Nlc3NtZW50LW1vZGVgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBhc3Nlc3NtZW50TW9kZSB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQXNzZXNzbWVudFJlcXVpcmVtZW50KFxuICAgICAgICBjb25maWdJZDogc3RyaW5nLFxuICAgICAgICBhc3Nlc3NtZW50UmVxdWlyZW1lbnQ6IEFzc2Vzc21lbnRSZXF1aXJlbWVudFxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9hc3Nlc3NtZW50LXJlcXVpcmVtZW50YCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgYXNzZXNzbWVudFJlcXVpcmVtZW50IH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVRdWl6U2l6ZShjb25maWdJZDogc3RyaW5nLCBxdWl6U2l6ZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9LyR7Y29uZmlnSWR9L3F1aXotc2l6ZWAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IHF1aXpTaXplIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVRdWl6TGFuZ3VhZ2UoY29uZmlnSWQ6IHN0cmluZywgcXVpekxhbmd1YWdlOiBMYW5ndWFnZUNvZGUpOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vJHtjb25maWdJZH0vcXVpei1sYW5ndWFnZWAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IHF1aXpMYW5ndWFnZSB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlUXVpelBhc3NUaHJlc2hvbGQoXG4gICAgICAgIGNvbmZpZ0lkOiBzdHJpbmcsXG4gICAgICAgIHF1aXpQYXNzVGhyZXNob2xkOiBudW1iZXJcbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vJHtjb25maWdJZH0vcXVpei1wYXNzLXRocmVzaG9sZGAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IHF1aXpQYXNzVGhyZXNob2xkIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVRdWVzdGlvblR5cGVzKFxuICAgICAgICBjb25maWdJZDogc3RyaW5nLFxuICAgICAgICBxdWVzdGlvblR5cGVzOiBRdWVzdGlvblR5cGVbXVxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9xdWVzdGlvbi10eXBlc2AsXG4gICAgICAgICAgICBxdWVzdGlvblR5cGVzLFxuICAgICAgICAgICAgU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OU1xuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVJbnRlcmFjdGl2ZUxhbmd1YWdlKGNvbmZpZ0lkOiBzdHJpbmcsIGludGVyYWN0aXZlTGFuZ3VhZ2U6IExhbmd1YWdlQ29kZSk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9pbnRlcmFjdGl2ZS1sYW5ndWFnZWAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IGludGVyYWN0aXZlTGFuZ3VhZ2UgfSB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUludGVyYWN0aXZlTWluVHVybnMoXG4gICAgICAgIGNvbmZpZ0lkOiBzdHJpbmcsXG4gICAgICAgIGludGVyYWN0aXZlTWluVHVybnM6IG51bWJlclxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9pbnRlcmFjdGl2ZS1taW4tdHVybnNgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBpbnRlcmFjdGl2ZU1pblR1cm5zIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVJbnRlcmFjdGl2ZU1heFR1cm5zKFxuICAgICAgICBjb25maWdJZDogc3RyaW5nLFxuICAgICAgICBpbnRlcmFjdGl2ZU1heFR1cm5zOiBudW1iZXJcbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vJHtjb25maWdJZH0vaW50ZXJhY3RpdmUtbWF4LXR1cm5zYCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgaW50ZXJhY3RpdmVNYXhUdXJucyB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlSW50ZXJhY3RpdmVQYXNzVGhyZXNob2xkKFxuICAgICAgICBjb25maWdJZDogc3RyaW5nLFxuICAgICAgICBpbnRlcmFjdGl2ZVBhc3NUaHJlc2hvbGQ6IG51bWJlclxuICAgICk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9pbnRlcmFjdGl2ZS1wYXNzLXRocmVzaG9sZGAsXG4gICAgICAgICAgICB7fSxcbiAgICAgICAgICAgIHsgLi4uU0hBUkVEX0lOU1RSVUNUSU9OX0hUVFBfT1BUSU9OUywgcGFyYW1zOiB7IGludGVyYWN0aXZlUGFzc1RocmVzaG9sZCB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQXNzaXN0YW50UHJvbXB0KFxuICAgICAgICAgICAgY29uZmlnSWQ6IHN0cmluZyxcbiAgICAgICAgYXNzaXN0YW50UHJvbXB0OiBzdHJpbmdcbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vJHtjb25maWdJZH0vYXNzaXN0YW50LXByb21wdGAsXG4gICAgICAgICAgICBhc3Npc3RhbnRQcm9tcHQsXG4gICAgICAgICAgICBTSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUF0dGVtcHRzTGltaXQoY29uZmlnSWQ6IHN0cmluZywgYXR0ZW1wdHNMaW1pdDogbnVtYmVyKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9LyR7Y29uZmlnSWR9L2F0dGVtcHRzLWxpbWl0YCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgYXR0ZW1wdHNMaW1pdCB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQXR0ZW1wdHNSZXNldFBlcmlvZChcbiAgICAgICAgY29uZmlnSWQ6IHN0cmluZyxcbiAgICAgICAgYXR0ZW1wdHNSZXNldFBlcmlvZDogRHVyYXRpb25cbiAgICApOiBPYnNlcnZhYmxlPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBhdGNoPEluc3RydWN0aW9uQXNzZXNzbWVudENvbmZpZz4oXG4gICAgICAgICAgICBgJHt0aGlzLklOU1RSVUNUSU9OX1VSTH0vJHt0aGlzLkFTU0VTU01FTlRfQ09ORklHX1VSTH0vJHtjb25maWdJZH0vYXR0ZW1wdHMtcmVzZXQtcGVyaW9kYCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgYXR0ZW1wdHNSZXNldFBlcmlvZCB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlVHRsSG91cnMoY29uZmlnSWQ6IHN0cmluZywgdHRsSG91cnM6IG51bWJlcik6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS90dGwtaG91cnNgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyB0dGxIb3VycyB9IH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQ29udGVudFF1YWxpdHlUaHJlc2hvbGQoY29uZmlnSWQ6IHN0cmluZywgY29udGVudFF1YWxpdHlUaHJlc2hvbGQ6IG51bWJlcik6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9jb250ZW50LXF1YWxpdHktdGhyZXNob2xkYCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgY29udGVudFF1YWxpdHlUaHJlc2hvbGQgfSB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUJsb2NrUXVhbGl0eUNyaXRlcmlhKGNvbmZpZ0lkOiBzdHJpbmcsIGJsb2NrUXVhbGl0eUNyaXRlcmlhOiBRdWFsaXR5Q3JpdGVyaWFbXSk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9ibG9jay1xdWFsaXR5LWNyaXRlcmlhYCxcbiAgICAgICAgICAgIGJsb2NrUXVhbGl0eUNyaXRlcmlhLFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlQmxvY2tRdWFsaXR5TGFuZ3VhZ2UoY29uZmlnSWQ6IHN0cmluZywgYmxvY2tRdWFsaXR5TGFuZ3VhZ2U6IExhbmd1YWdlQ29kZSk6IE9ic2VydmFibGU8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucGF0Y2g8SW5zdHJ1Y3Rpb25Bc3Nlc3NtZW50Q29uZmlnPihcbiAgICAgICAgICAgIGAke3RoaXMuSU5TVFJVQ1RJT05fVVJMfS8ke3RoaXMuQVNTRVNTTUVOVF9DT05GSUdfVVJMfS8ke2NvbmZpZ0lkfS9ibG9jay1xdWFsaXR5LWxhbmd1YWdlYCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgYmxvY2tRdWFsaXR5TGFuZ3VhZ2UgfSB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUJsb2NrUXVhbGl0eUdhdGVUaHJlc2hvbGQoY29uZmlnSWQ6IHN0cmluZywgYmxvY2tRdWFsaXR5R2F0ZVRocmVzaG9sZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9LyR7Y29uZmlnSWR9L2Jsb2NrLXF1YWxpdHktZ2F0ZS10aHJlc2hvbGRgLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgICB7IC4uLlNIQVJFRF9JTlNUUlVDVElPTl9IVFRQX09QVElPTlMsIHBhcmFtczogeyBibG9ja1F1YWxpdHlHYXRlVGhyZXNob2xkIH0gfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVCbG9ja1F1YWxpdHlTY29yZVRocmVzaG9sZChjb25maWdJZDogc3RyaW5nLCBibG9ja1F1YWxpdHlTY29yZVRocmVzaG9sZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wYXRjaDxJbnN0cnVjdGlvbkFzc2Vzc21lbnRDb25maWc+KFxuICAgICAgICAgICAgYCR7dGhpcy5JTlNUUlVDVElPTl9VUkx9LyR7dGhpcy5BU1NFU1NNRU5UX0NPTkZJR19VUkx9LyR7Y29uZmlnSWR9L2Jsb2NrLXF1YWxpdHktc2NvcmUtdGhyZXNob2xkYCxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgeyAuLi5TSEFSRURfSU5TVFJVQ1RJT05fSFRUUF9PUFRJT05TLCBwYXJhbXM6IHsgYmxvY2tRdWFsaXR5U2NvcmVUaHJlc2hvbGQgfSB9XG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
package/fesm2022/cuby-ui-api.mjs
CHANGED
|
@@ -1303,47 +1303,74 @@ class CuiInstructionAssessmentConfigApiService {
|
|
|
1303
1303
|
getDefaultInstructionAssessmentConfig(instructionId) {
|
|
1304
1304
|
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}/resolve`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1305
1305
|
}
|
|
1306
|
+
getDefaultInstructionAssessmentPolymorphicConfig(instructionId) {
|
|
1307
|
+
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}/polymorphic/resolve`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1308
|
+
}
|
|
1306
1309
|
createInstructionAssessmentConfig(instructionId, body) {
|
|
1307
1310
|
return this.httpClient.post(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}`, body, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1308
1311
|
}
|
|
1309
1312
|
getInstructionAssessmentConfig(instructionId) {
|
|
1310
1313
|
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1311
1314
|
}
|
|
1312
|
-
|
|
1313
|
-
return this.httpClient.
|
|
1315
|
+
getInstructionAssessmentPolymorphicConfig(instructionId) {
|
|
1316
|
+
return this.httpClient.get(`${this.INSTRUCTION_URL}/${instructionId}/${this.ASSESSMENT_CONFIG_URL}/polymorphic`, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1317
|
+
}
|
|
1318
|
+
updateAssessmentMode(configId, assessmentMode) {
|
|
1319
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/assessment-mode`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { assessmentMode } });
|
|
1320
|
+
}
|
|
1321
|
+
updateAssessmentRequirement(configId, assessmentRequirement) {
|
|
1322
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/assessment-requirement`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { assessmentRequirement } });
|
|
1323
|
+
}
|
|
1324
|
+
updateQuizSize(configId, quizSize) {
|
|
1325
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/quiz-size`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { quizSize } });
|
|
1326
|
+
}
|
|
1327
|
+
updateQuizLanguage(configId, quizLanguage) {
|
|
1328
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/quiz-language`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { quizLanguage } });
|
|
1329
|
+
}
|
|
1330
|
+
updateQuizPassThreshold(configId, quizPassThreshold) {
|
|
1331
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/quiz-pass-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { quizPassThreshold } });
|
|
1332
|
+
}
|
|
1333
|
+
updateQuestionTypes(configId, questionTypes) {
|
|
1334
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/question-types`, questionTypes, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1335
|
+
}
|
|
1336
|
+
updateInteractiveLanguage(configId, interactiveLanguage) {
|
|
1337
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-language`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactiveLanguage } });
|
|
1338
|
+
}
|
|
1339
|
+
updateInteractiveMinTurns(configId, interactiveMinTurns) {
|
|
1340
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-min-turns`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactiveMinTurns } });
|
|
1314
1341
|
}
|
|
1315
|
-
|
|
1316
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1342
|
+
updateInteractiveMaxTurns(configId, interactiveMaxTurns) {
|
|
1343
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-max-turns`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactiveMaxTurns } });
|
|
1317
1344
|
}
|
|
1318
|
-
|
|
1319
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1345
|
+
updateInteractivePassThreshold(configId, interactivePassThreshold) {
|
|
1346
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/interactive-pass-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { interactivePassThreshold } });
|
|
1320
1347
|
}
|
|
1321
|
-
|
|
1322
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1348
|
+
updateAssistantPrompt(configId, assistantPrompt) {
|
|
1349
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/assistant-prompt`, assistantPrompt, SHARED_INSTRUCTION_HTTP_OPTIONS);
|
|
1323
1350
|
}
|
|
1324
|
-
|
|
1325
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1351
|
+
updateAttemptsLimit(configId, attemptsLimit) {
|
|
1352
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/attempts-limit`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { attemptsLimit } });
|
|
1326
1353
|
}
|
|
1327
|
-
|
|
1328
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1354
|
+
updateAttemptsResetPeriod(configId, attemptsResetPeriod) {
|
|
1355
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/attempts-reset-period`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { attemptsResetPeriod } });
|
|
1329
1356
|
}
|
|
1330
|
-
|
|
1331
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1357
|
+
updateTtlHours(configId, ttlHours) {
|
|
1358
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/ttl-hours`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { ttlHours } });
|
|
1332
1359
|
}
|
|
1333
|
-
|
|
1334
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1360
|
+
updateContentQualityThreshold(configId, contentQualityThreshold) {
|
|
1361
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/content-quality-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { contentQualityThreshold } });
|
|
1335
1362
|
}
|
|
1336
|
-
|
|
1337
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1363
|
+
updateBlockQualityCriteria(configId, blockQualityCriteria) {
|
|
1364
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-criteria`, blockQualityCriteria, { ...SHARED_INSTRUCTION_HTTP_OPTIONS });
|
|
1338
1365
|
}
|
|
1339
|
-
|
|
1340
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1366
|
+
updateBlockQualityLanguage(configId, blockQualityLanguage) {
|
|
1367
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-language`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { blockQualityLanguage } });
|
|
1341
1368
|
}
|
|
1342
|
-
|
|
1343
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1369
|
+
updateBlockQualityGateThreshold(configId, blockQualityGateThreshold) {
|
|
1370
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-gate-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { blockQualityGateThreshold } });
|
|
1344
1371
|
}
|
|
1345
|
-
|
|
1346
|
-
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${
|
|
1372
|
+
updateBlockQualityScoreThreshold(configId, blockQualityScoreThreshold) {
|
|
1373
|
+
return this.httpClient.patch(`${this.INSTRUCTION_URL}/${this.ASSESSMENT_CONFIG_URL}/${configId}/block-quality-score-threshold`, {}, { ...SHARED_INSTRUCTION_HTTP_OPTIONS, params: { blockQualityScoreThreshold } });
|
|
1347
1374
|
}
|
|
1348
1375
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiInstructionAssessmentConfigApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1349
1376
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiInstructionAssessmentConfigApiService, providedIn: 'root' }); }
|
|
@@ -1371,10 +1398,19 @@ var QuestionType;
|
|
|
1371
1398
|
QuestionType["MultipleChoice"] = "MULTIPLE_CHOICE";
|
|
1372
1399
|
QuestionType["TrueFalse"] = "TRUE_FALSE";
|
|
1373
1400
|
})(QuestionType || (QuestionType = {}));
|
|
1401
|
+
var QualityCriteria;
|
|
1402
|
+
(function (QualityCriteria) {
|
|
1403
|
+
QualityCriteria["Profanity"] = "PROFANITY";
|
|
1404
|
+
QualityCriteria["Violence"] = "VIOLENCE";
|
|
1405
|
+
QualityCriteria["SpamDetection"] = "SPAM_DETECTION";
|
|
1406
|
+
QualityCriteria["ContentSufficiency"] = "CONTENT_SUFFICIENCY";
|
|
1407
|
+
QualityCriteria["TopicDiversity"] = "TOPIC_DIVERSITY";
|
|
1408
|
+
QualityCriteria["ClarityAndDepth"] = "CLARITY_AND_DEPTH";
|
|
1409
|
+
})(QualityCriteria || (QualityCriteria = {}));
|
|
1374
1410
|
|
|
1375
1411
|
/**
|
|
1376
1412
|
* Generated bundle index. Do not edit.
|
|
1377
1413
|
*/
|
|
1378
1414
|
|
|
1379
|
-
export { AssessmentMode, AssessmentRequirement, CUI_API_URL_CONTEXT, CuiArrowWorkFlowActionsApiService, CuiArrowWorkFlowComponentControllerApiService, CuiArrowWorkFlowComponentStructureApiService, CuiArrowWorkFlowReadinessChecklistApiService, CuiArrowWorkFlowTransferControllerApiService, CuiCrewTemplateApiService, CuiCriterionApiService, CuiDesignJobMainApiService, CuiDesignJobMainGroupApiService, CuiExchangeContextApiService, CuiFactoryApiService, CuiFrameApiService, CuiInstructionApiService, CuiInstructionAssessmentConfigApiService, CuiInstructionsApiService, CuiJTextApiService, CuiJobApiService, CuiNodeChecklistApiService, CuiProjectApiService, CuiProjectDetailsPhaseInitApiService, CuiProjectInitPhaseApiService, CuiProjectPhaseDesignTechnologyService, CuiProjectResoursePhaseInitApiService, CuiProjectSchedulePhaseInitApiService, CuiQuantumGroupResourcesStructureApiService, CuiResourceApiService, CuiReviewType, CuiStorageObjectType, CuiTechnologyPhaseInitApiService, CuiTreeStructApiService, CuiTreeStructNavigatorApiService, CuiUtilityComponentInstructionStructureApiService, InstructionStatus, JobActionType, JobType, MaintainableContentType, QuestionType, ResourceContentType, SHARED_CONSTRUCTION_HTTP_OPTIONS, SHARED_FACTORY_HTTP_OPTIONS, SHARED_INSTRUCTION_HTTP_OPTIONS, SHARED_LEARNING_HTTP_OPTIONS, SHARED_PLATFORM_HTTP_OPTIONS, SHARED_PROJECT_HTTP_OPTIONS, SHARED_SCHEDULE_HTTP_OPTIONS, SSE_STREAM_CONFIG_OPTIONS, SeasonType, SubjectType, TechnologyDeleteType, TechnologyState, UserCompanyApiService, UtilityApiService, WorkflowStructureType, X_NDJSON_CONFIG_OPTIONS };
|
|
1415
|
+
export { AssessmentMode, AssessmentRequirement, CUI_API_URL_CONTEXT, CuiArrowWorkFlowActionsApiService, CuiArrowWorkFlowComponentControllerApiService, CuiArrowWorkFlowComponentStructureApiService, CuiArrowWorkFlowReadinessChecklistApiService, CuiArrowWorkFlowTransferControllerApiService, CuiCrewTemplateApiService, CuiCriterionApiService, CuiDesignJobMainApiService, CuiDesignJobMainGroupApiService, CuiExchangeContextApiService, CuiFactoryApiService, CuiFrameApiService, CuiInstructionApiService, CuiInstructionAssessmentConfigApiService, CuiInstructionsApiService, CuiJTextApiService, CuiJobApiService, CuiNodeChecklistApiService, CuiProjectApiService, CuiProjectDetailsPhaseInitApiService, CuiProjectInitPhaseApiService, CuiProjectPhaseDesignTechnologyService, CuiProjectResoursePhaseInitApiService, CuiProjectSchedulePhaseInitApiService, CuiQuantumGroupResourcesStructureApiService, CuiResourceApiService, CuiReviewType, CuiStorageObjectType, CuiTechnologyPhaseInitApiService, CuiTreeStructApiService, CuiTreeStructNavigatorApiService, CuiUtilityComponentInstructionStructureApiService, InstructionStatus, JobActionType, JobType, MaintainableContentType, QualityCriteria, QuestionType, ResourceContentType, SHARED_CONSTRUCTION_HTTP_OPTIONS, SHARED_FACTORY_HTTP_OPTIONS, SHARED_INSTRUCTION_HTTP_OPTIONS, SHARED_LEARNING_HTTP_OPTIONS, SHARED_PLATFORM_HTTP_OPTIONS, SHARED_PROJECT_HTTP_OPTIONS, SHARED_SCHEDULE_HTTP_OPTIONS, SSE_STREAM_CONFIG_OPTIONS, SeasonType, SubjectType, TechnologyDeleteType, TechnologyState, UserCompanyApiService, UtilityApiService, WorkflowStructureType, X_NDJSON_CONFIG_OPTIONS };
|
|
1380
1416
|
//# sourceMappingURL=cuby-ui-api.mjs.map
|