@testgorilla/tgo-coding-test 1.0.0 → 2.0.1
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/fesm2022/testgorilla-tgo-coding-test.mjs +94 -94
- package/fesm2022/testgorilla-tgo-coding-test.mjs.map +1 -1
- package/lib/components/configurations/configurations.component.d.ts +1 -1
- package/package.json +15 -17
- package/esm2022/index.mjs +0 -12
- package/esm2022/lib/components/code-editor/code-editor.component.mjs +0 -335
- package/esm2022/lib/components/code-editor/code-editor.service.mjs +0 -72
- package/esm2022/lib/components/code-editor/helpers/c-helper.mjs +0 -40
- package/esm2022/lib/components/code-editor/helpers/code-editor-helper.base.mjs +0 -11
- package/esm2022/lib/components/code-editor/helpers/code-editor-helper.model.mjs +0 -2
- package/esm2022/lib/components/code-editor/helpers/cpp-helper.mjs +0 -41
- package/esm2022/lib/components/code-editor/helpers/csharp-helper.mjs +0 -42
- package/esm2022/lib/components/code-editor/helpers/go-helper.mjs +0 -42
- package/esm2022/lib/components/code-editor/helpers/index.mjs +0 -16
- package/esm2022/lib/components/code-editor/helpers/java-helper.mjs +0 -42
- package/esm2022/lib/components/code-editor/helpers/javascript-helper.mjs +0 -26
- package/esm2022/lib/components/code-editor/helpers/kotlin-helper.mjs +0 -42
- package/esm2022/lib/components/code-editor/helpers/php-helper.mjs +0 -26
- package/esm2022/lib/components/code-editor/helpers/python-helper.mjs +0 -26
- package/esm2022/lib/components/code-editor/helpers/r-helper.mjs +0 -26
- package/esm2022/lib/components/code-editor/helpers/ruby-helper.mjs +0 -26
- package/esm2022/lib/components/code-editor/helpers/scala-helper.mjs +0 -41
- package/esm2022/lib/components/code-editor/helpers/sql-helper.mjs +0 -34
- package/esm2022/lib/components/code-editor/helpers/swift-helper.mjs +0 -40
- package/esm2022/lib/components/code-editor/helpers/typescript-helper.mjs +0 -41
- package/esm2022/lib/components/code-editor/models/code-editor.model.mjs +0 -2
- package/esm2022/lib/components/code-editor/models/coding-snapshot.model.mjs +0 -2
- package/esm2022/lib/components/coding-question/coding-question.component.mjs +0 -126
- package/esm2022/lib/components/coding-section/coding-section.component.mjs +0 -188
- package/esm2022/lib/components/common/truncated-text/truncated-text.component.mjs +0 -38
- package/esm2022/lib/components/configurations/configurations.component.mjs +0 -97
- package/esm2022/lib/components/instructions/instructions.component.mjs +0 -139
- package/esm2022/lib/components/panel/panel.component.mjs +0 -34
- package/esm2022/lib/components/runnable-editor/runnable-editor.component.mjs +0 -169
- package/esm2022/lib/components/tests/test-cases/test-cases.component.mjs +0 -198
- package/esm2022/lib/components/tests/test-cases-content/test-cases-content.component.mjs +0 -96
- package/esm2022/lib/components/tests/test-cases-status/test-cases-status.component.mjs +0 -21
- package/esm2022/lib/components/tests/test-results.component.mjs +0 -127
- package/esm2022/lib/components/tgo-coding-test/tgo-coding-test.component.mjs +0 -280
- package/esm2022/lib/components/tgo-coding-test-candidate-view/tgo-coding-test-candidate-view.component.mjs +0 -476
- package/esm2022/lib/config/index.mjs +0 -2
- package/esm2022/lib/config/tgo-coding-test.config.mjs +0 -2
- package/esm2022/lib/config/tgo-coding-test.provider.mjs +0 -34
- package/esm2022/lib/config/tgo-coding-test.token.mjs +0 -14
- package/esm2022/lib/models/auto-saved-data.mjs +0 -2
- package/esm2022/lib/models/code-event.mjs +0 -2
- package/esm2022/lib/models/coderunner-execution-results.mjs +0 -2
- package/esm2022/lib/models/configs.mjs +0 -2
- package/esm2022/lib/models/language-change-action.mjs +0 -2
- package/esm2022/lib/models/lat-languages.mjs +0 -3
- package/esm2022/lib/models/mixpanel-events.mjs +0 -2
- package/esm2022/lib/models/mode.mjs +0 -2
- package/esm2022/lib/models/paste-data.mjs +0 -2
- package/esm2022/lib/models/programming-language.mjs +0 -2
- package/esm2022/lib/models/test-cases.mjs +0 -7
- package/esm2022/lib/models/theme.mjs +0 -2
- package/esm2022/lib/models/translations.mjs +0 -2
- package/esm2022/lib/models/view-mode.mjs +0 -8
- package/esm2022/lib/pipes/memoize-func.pipe.mjs +0 -39
- package/esm2022/lib/services/candidate-coding-test-services/candidature-api.service.mjs +0 -19
- package/esm2022/lib/services/candidate-coding-test-services/coderunner-api.service.mjs +0 -58
- package/esm2022/lib/services/candidate-coding-test-services/coding-test-tour.service.mjs +0 -89
- package/esm2022/lib/services/candidate-coding-test-services/coding-test.service.mjs +0 -490
- package/esm2022/lib/services/candidate-coding-test-services/index.mjs +0 -5
- package/esm2022/lib/services/coding-test-config.service.mjs +0 -51
- package/esm2022/lib/services/configurations.service.mjs +0 -89
- package/esm2022/lib/services/lib-coding-test.service.mjs +0 -106
- package/esm2022/lib/services/storage.service.mjs +0 -624
- package/esm2022/lib/services/test-cases.service.mjs +0 -30
- package/esm2022/lib/services/theme.service.mjs +0 -36
- package/esm2022/lib/utils/additional-languages/erlang.mjs +0 -103
- package/esm2022/lib/utils/resize-element.mjs +0 -13
- package/esm2022/lib/utils/time-to-ms.util.mjs +0 -11
- package/esm2022/shared/index.mjs +0 -5
- package/esm2022/shared/lib/components/audio-animation/audio-animation.component.mjs +0 -114
- package/esm2022/shared/lib/components/audio-animation/index.mjs +0 -2
- package/esm2022/shared/lib/components/index.mjs +0 -3
- package/esm2022/shared/lib/components/vimeo-video/index.mjs +0 -2
- package/esm2022/shared/lib/components/vimeo-video/vimeo-video.component.mjs +0 -101
- package/esm2022/shared/lib/models/answer.mjs +0 -2
- package/esm2022/shared/lib/models/assessment.mjs +0 -2
- package/esm2022/shared/lib/models/environment.mjs +0 -2
- package/esm2022/shared/lib/models/index.mjs +0 -9
- package/esm2022/shared/lib/models/question-component.mjs +0 -2
- package/esm2022/shared/lib/models/question.mjs +0 -2
- package/esm2022/shared/lib/models/test.mjs +0 -2
- package/esm2022/shared/lib/models/translations.mjs +0 -2
- package/esm2022/shared/lib/models/window.mjs +0 -2
- package/esm2022/shared/lib/services/api/api.service.mjs +0 -97
- package/esm2022/shared/lib/services/api/mocked-api.service.mjs +0 -131
- package/esm2022/shared/lib/services/environment/environment.service.mjs +0 -13
- package/esm2022/shared/lib/services/index.mjs +0 -10
- package/esm2022/shared/lib/services/localization/languages.model.mjs +0 -19
- package/esm2022/shared/lib/services/localization/transloco-lazy-module-utils.mjs +0 -27
- package/esm2022/shared/lib/services/localization/transloco-testing.module.mjs +0 -11
- package/esm2022/shared/lib/services/media/media.service.mjs +0 -129
- package/esm2022/shared/lib/services/mixpanel/mixpanel.service.mjs +0 -30
- package/esm2022/shared/lib/services/theme/theme.service.mjs +0 -24
- package/esm2022/shared/test-mocks/assessment-test.mock.mjs +0 -112
- package/esm2022/shared/test-mocks/index.mjs +0 -3
- package/esm2022/shared/test-mocks/tgo-ui.mock.mjs +0 -39
- package/esm2022/testgorilla-tgo-coding-test.mjs +0 -5
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { makeEnvironmentProviders } from '@angular/core';
|
|
2
|
-
import { TGO_CODING_TEST_CONFIG } from './tgo-coding-test.token';
|
|
3
|
-
/**
|
|
4
|
-
* Provides the TGO Coding Test library configuration.
|
|
5
|
-
*
|
|
6
|
-
* This function should be called in the consuming application's
|
|
7
|
-
* app.config.ts (for standalone apps) or module providers.
|
|
8
|
-
*
|
|
9
|
-
* @param config - The configuration object containing required settings
|
|
10
|
-
* @returns EnvironmentProviders that can be added to the application providers
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```typescript
|
|
14
|
-
* import { provideTgoCodingTest } from '@testgorilla/tgo-coding-test';
|
|
15
|
-
* import { environment } from './environments/environment';
|
|
16
|
-
*
|
|
17
|
-
* export const appConfig: ApplicationConfig = {
|
|
18
|
-
* providers: [
|
|
19
|
-
* provideTgoCodingTest({
|
|
20
|
-
* coderunnerV2Endpoint: environment.coderunnerV2Endpoint,
|
|
21
|
-
* }),
|
|
22
|
-
* ],
|
|
23
|
-
* };
|
|
24
|
-
* ```
|
|
25
|
-
*/
|
|
26
|
-
export function provideTgoCodingTest(config) {
|
|
27
|
-
return makeEnvironmentProviders([
|
|
28
|
-
{
|
|
29
|
-
provide: TGO_CODING_TEST_CONFIG,
|
|
30
|
-
useValue: config,
|
|
31
|
-
},
|
|
32
|
-
]);
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGdvLWNvZGluZy10ZXN0LnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvY29uZmlnL3Rnby1jb2RpbmctdGVzdC5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR2pFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxNQUEyQjtJQUUzQixPQUFPLHdCQUF3QixDQUFDO1FBQzlCO1lBQ0UsT0FBTyxFQUFFLHNCQUFzQjtZQUMvQixRQUFRLEVBQUUsTUFBTTtTQUNqQjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudFByb3ZpZGVycywgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUR09fQ09ESU5HX1RFU1RfQ09ORklHIH0gZnJvbSAnLi90Z28tY29kaW5nLXRlc3QudG9rZW4nO1xuaW1wb3J0IHsgVGdvQ29kaW5nVGVzdENvbmZpZyB9IGZyb20gJy4vdGdvLWNvZGluZy10ZXN0LmNvbmZpZyc7XG5cbi8qKlxuICogUHJvdmlkZXMgdGhlIFRHTyBDb2RpbmcgVGVzdCBsaWJyYXJ5IGNvbmZpZ3VyYXRpb24uXG4gKiBcbiAqIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIGNhbGxlZCBpbiB0aGUgY29uc3VtaW5nIGFwcGxpY2F0aW9uJ3NcbiAqIGFwcC5jb25maWcudHMgKGZvciBzdGFuZGFsb25lIGFwcHMpIG9yIG1vZHVsZSBwcm92aWRlcnMuXG4gKiBcbiAqIEBwYXJhbSBjb25maWcgLSBUaGUgY29uZmlndXJhdGlvbiBvYmplY3QgY29udGFpbmluZyByZXF1aXJlZCBzZXR0aW5nc1xuICogQHJldHVybnMgRW52aXJvbm1lbnRQcm92aWRlcnMgdGhhdCBjYW4gYmUgYWRkZWQgdG8gdGhlIGFwcGxpY2F0aW9uIHByb3ZpZGVyc1xuICogXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgcHJvdmlkZVRnb0NvZGluZ1Rlc3QgfSBmcm9tICdAdGVzdGdvcmlsbGEvdGdvLWNvZGluZy10ZXN0JztcbiAqIGltcG9ydCB7IGVudmlyb25tZW50IH0gZnJvbSAnLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuICogXG4gKiBleHBvcnQgY29uc3QgYXBwQ29uZmlnOiBBcHBsaWNhdGlvbkNvbmZpZyA9IHtcbiAqICAgcHJvdmlkZXJzOiBbXG4gKiAgICAgcHJvdmlkZVRnb0NvZGluZ1Rlc3Qoe1xuICogICAgICAgY29kZXJ1bm5lclYyRW5kcG9pbnQ6IGVudmlyb25tZW50LmNvZGVydW5uZXJWMkVuZHBvaW50LFxuICogICAgIH0pLFxuICogICBdLFxuICogfTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVRnb0NvZGluZ1Rlc3QoXG4gIGNvbmZpZzogVGdvQ29kaW5nVGVzdENvbmZpZ1xuKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBUR09fQ09ESU5HX1RFU1RfQ09ORklHLFxuICAgICAgdXNlVmFsdWU6IGNvbmZpZyxcbiAgICB9LFxuICBdKTtcbn1cblxuIl19
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
/**
|
|
3
|
-
* Injection token for the TGO Coding Test library configuration.
|
|
4
|
-
*
|
|
5
|
-
* This token is used to inject the runtime configuration provided
|
|
6
|
-
* by the consuming application into library services.
|
|
7
|
-
*/
|
|
8
|
-
export const TGO_CODING_TEST_CONFIG = new InjectionToken('TGO_CODING_TEST_CONFIG', {
|
|
9
|
-
providedIn: 'root',
|
|
10
|
-
factory: () => {
|
|
11
|
-
throw new Error('TGO_CODING_TEST_CONFIG must be provided. Use provideTgoCodingTest() in your app.config.ts or component providers.');
|
|
12
|
-
},
|
|
13
|
-
});
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGdvLWNvZGluZy10ZXN0LnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvY29uZmlnL3Rnby1jb2RpbmctdGVzdC50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxjQUFjLENBQ3RELHdCQUF3QixFQUN4QjtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUU7UUFDWixNQUFNLElBQUksS0FBSyxDQUNiLG1IQUFtSCxDQUNwSCxDQUFDO0lBQ0osQ0FBQztDQUNGLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUZ29Db2RpbmdUZXN0Q29uZmlnIH0gZnJvbSAnLi90Z28tY29kaW5nLXRlc3QuY29uZmlnJztcblxuLyoqXG4gKiBJbmplY3Rpb24gdG9rZW4gZm9yIHRoZSBUR08gQ29kaW5nIFRlc3QgbGlicmFyeSBjb25maWd1cmF0aW9uLlxuICogXG4gKiBUaGlzIHRva2VuIGlzIHVzZWQgdG8gaW5qZWN0IHRoZSBydW50aW1lIGNvbmZpZ3VyYXRpb24gcHJvdmlkZWRcbiAqIGJ5IHRoZSBjb25zdW1pbmcgYXBwbGljYXRpb24gaW50byBsaWJyYXJ5IHNlcnZpY2VzLlxuICovXG5leHBvcnQgY29uc3QgVEdPX0NPRElOR19URVNUX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxUZ29Db2RpbmdUZXN0Q29uZmlnPihcbiAgJ1RHT19DT0RJTkdfVEVTVF9DT05GSUcnLFxuICB7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICAgIGZhY3Rvcnk6ICgpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1RHT19DT0RJTkdfVEVTVF9DT05GSUcgbXVzdCBiZSBwcm92aWRlZC4gVXNlIHByb3ZpZGVUZ29Db2RpbmdUZXN0KCkgaW4geW91ciBhcHAuY29uZmlnLnRzIG9yIGNvbXBvbmVudCBwcm92aWRlcnMuJ1xuICAgICAgKTtcbiAgICB9LFxuICB9XG4pO1xuXG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1zYXZlZC1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvbW9kZWxzL2F1dG8tc2F2ZWQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29kZUVkaXRvckxhbmd1YWdlcyB9IGZyb20gJy4uL2NvbXBvbmVudHMvY29kZS1lZGl0b3IvaGVscGVycy9jb2RlLWVkaXRvci1oZWxwZXIubW9kZWwnO1xuaW1wb3J0IHsgQ29uZmlnIH0gZnJvbSAnLi9jb25maWdzJztcbmltcG9ydCB7IEN1c3RvbVRlc3RDYXNlLCBFeGFtcGxlVGVzdENhc2UgfSBmcm9tICcuL3Rlc3QtY2FzZXMnO1xuXG5leHBvcnQgdHlwZSBUZXN0RGF0YSA9IHtcbiAgY29kZToge1xuICAgIFtrZXkgaW4gQ29kZUVkaXRvckxhbmd1YWdlc10/OiBzdHJpbmc7XG4gIH07XG4gIHRlc3RDYXNlc0xBVD86IChDdXN0b21UZXN0Q2FzZSB8IEV4YW1wbGVUZXN0Q2FzZSlbXTtcbiAgbGFzdE1vZGlmaWVkPzogbnVtYmVyOyAvLyB0aW1lc3RhbXAgd2hlbiB0aGlzIGVudHJ5IHdhcyBsYXN0IG1vZGlmaWVkXG59O1xuXG4vLyBGb3IgdjIgc2NoZW1hXG5leHBvcnQgdHlwZSBRdWVzdGlvbkRhdGEgPSB7XG4gIHByZXZpZXc/OiBUZXN0RGF0YTtcbiAgYWN0dWFsPzogVGVzdERhdGE7XG4gIGxhc3RNb2RpZmllZD86IG51bWJlcjtcbn07XG5cbi8vIFZlcnNpb24gMSBzY2hlbWEgLSBvcmlnaW5hbFxuZXhwb3J0IHR5cGUgQXV0b1NhdmVkRGF0YVYxID0ge1xuICBjb25maWc6IENvbmZpZztcbiAgaXNGdWxsc2NyZWVuOiBib29sZWFuO1xuICBhc3Nlc3NtZW50czoge1xuICAgIFtrZXk6IHN0cmluZ106IFRlc3REYXRhO1xuICB9O1xuICBsYXN0TGFuZ3VhZ2VMQVQ/OiB7XG4gICAgdmFsdWU6IENvZGVFZGl0b3JMYW5ndWFnZXM7XG4gICAgdmVyc2lvbjogc3RyaW5nO1xuICB9O1xufTtcblxuLy8gVmVyc2lvbiAyIHNjaGVtYSAtIHNlcGFyYXRlZCBieSBxdWVzdGlvbklkXG5leHBvcnQgdHlwZSBBdXRvU2F2ZWREYXRhVjIgPSB7XG4gIHZlcnNpb246IDI7XG4gIGNvbmZpZzogQ29uZmlnO1xuICBpc0Z1bGxzY3JlZW46IGJvb2xlYW47XG4gIGFzc2Vzc21lbnRzOiB7XG4gICAgW2Fzc2Vzc21lbnRJZDogc3RyaW5nXToge1xuICAgICAgW3F1ZXN0aW9uSWQ6IHN0cmluZ106IFF1ZXN0aW9uRGF0YTtcbiAgICB9O1xuICB9O1xuICBsYXN0TGFuZ3VhZ2VMQVQ/OiB7XG4gICAgdmFsdWU6IENvZGVFZGl0b3JMYW5ndWFnZXM7XG4gICAgdmVyc2lvbjogc3RyaW5nO1xuICB9IHwgbnVsbDtcbiAgbGFzdE1vZGlmaWVkOiBudW1iZXI7XG59O1xuXG4vLyBDdXJyZW50IHZlcnNpb25cbmV4cG9ydCB0eXBlIEF1dG9TYXZlZERhdGEgPSBBdXRvU2F2ZWREYXRhVjI7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1ldmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9jb2RlLWV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIENvZGVFdmVudCB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIGNvZGU6IHN0cmluZztcbiAgZXh0cmFfcGF5bG9hZDogc3RyaW5nO1xuICBldmVudF90eXBlOiBDb2RlRXZlbnRUeXBlRW51bTtcbiAgYXR0ZW1wdF9pZDogc3RyaW5nIHwgbnVsbDtcbiAgcXVlc3Rpb25fcmVzdWx0X2lkOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kZUV2ZW50UmVzcG9uc2UgZXh0ZW5kcyBDb2RlRXZlbnQge1xuICBpZDogc3RyaW5nO1xuICBjcmVhdGVkX2F0OiBzdHJpbmc7XG4gIHVwZGF0ZWRfYXQ6IHN0cmluZztcbn1cblxudHlwZSBDb2RlRXZlbnRUeXBlRW51bSA9XG4gICdBVVRPU0FWRScgfCAnU1dJVENIJyB8ICdDT1BZUEFTVEUnIHwgJ0FUVEVNUFQnO1xuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export const TIMEOUT_SIGNAL = 'SIGKILL';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZXJ1bm5lci1leGVjdXRpb24tcmVzdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9jb2RlcnVubmVyLWV4ZWN1dGlvbi1yZXN1bHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlEQSxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTcWxUZXN0UmVzdWx0IHtcbiAgY29udGVudDogc3RyaW5nO1xuICByZXNwb25zZV9tc2c6IHN0cmluZztcbiAgc3RkZXJyOiBzdHJpbmcgfCBudWxsO1xuICBzdGRvdXQ6IHN0cmluZ1tdO1xuICB0ZXN0X3Jlc3VsdDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvZGVUZXN0UmVzdWx0IHtcbiAgYWN0dWFsT3V0cHV0OiBzdHJpbmc7XG4gIGxvZ3M6IHN0cmluZztcbiAgc3RhdHVzOiAncGFzc2VkJyB8ICdlcnJvcic7XG59XG5cbmV4cG9ydCB0eXBlIFRlc3RSZXN1bHQgPSBTcWxUZXN0UmVzdWx0IHwgQ29kZVRlc3RSZXN1bHQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kaW5nVGVzdHNSZXN1bHRzTW9kZWwge1xuICBsaXN0UmVzcG9uc2U6IFRlc3RSZXN1bHRbXTtcbiAgcmVzdW1lOiB7XG4gICAgb2s6IG51bWJlcjtcbiAgICBlcnJvcjogbnVtYmVyO1xuICAgIHRvdGFsOiBudW1iZXI7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kZXJ1bm5lckF0dGVtcHRNb2RlbCB7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIGNyZWF0ZWRfYXQ/OiBzdHJpbmc7XG4gIGV4ZWN1dGlvbnM/OiBDb2RlcnVubmVyVGVzdENhc2VFeGVjdXRpb25Nb2RlbFtdO1xuICBpZD86IHN0cmluZztcbiAgbGFuZ3VhZ2U/OiBzdHJpbmc7XG4gIHF1ZXN0aW9uX3Jlc3VsdF9pZD86IG51bWJlcjtcbiAgdXBkYXRlZF9hdD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2RlcnVubmVyVGVzdENhc2VFeGVjdXRpb25Nb2RlbCB7XG4gIGlucHV0OiBzdHJpbmc7XG4gIGV2YWx1YXRpb246IHtcbiAgICB0ZXN0Y2FzZT86IHN0cmluZztcbiAgfTtcbiAgcnVuOiBDb2RlUnVubmVyVGVzdENhc2VFeGVjdXRpb25PdXRwdXRNb2RlbDtcbiAgY29tcGlsZTogQ29kZVJ1bm5lclRlc3RDYXNlRXhlY3V0aW9uT3V0cHV0TW9kZWw7XG4gIGF0dGVtcHRfaWQ6IG51bGw7XG4gIHN1Ym1pc3Npb25faWQ6IG51bGw7XG4gIHZhbGlkYXRpb25faWQ6IG51bGw7XG4gIGlkOiBzdHJpbmc7XG4gIGNyZWF0ZWRfYXQ6IHN0cmluZztcbiAgdXBkYXRlZF9hdDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvZGVSdW5uZXJUZXN0Q2FzZUV4ZWN1dGlvbk91dHB1dE1vZGVsIHtcbiAgc3Rkb3V0Pzogc3RyaW5nO1xuICBzdGRlcnI/OiBzdHJpbmc7XG4gIHNpZ25hbD86IHN0cmluZztcbiAgb3V0cHV0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgVElNRU9VVF9TSUdOQUwgPSAnU0lHS0lMTCc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9jb25maWdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZXMgfSBmcm9tICcuL3RoZW1lJztcblxuZXhwb3J0IGNvbnN0IGVudW0gRm9ybWF0dGluZ09wdGlvbnMge1xuICBDb2xvclRoZW1lID0gJ0NvbG9yIHRoZW1lJyxcbiAgVGFiU2l6ZSA9ICdUYWIgc2l6ZScsXG4gIEZvbnRTaXplID0gJ0ZvbnQgc2l6ZScsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIENvZGluZ0Fzc2lzdGFuY2VPcHRpb25zIHtcbiAgQXV0b0NvbXBsZXRlID0gJ0F1dG8tY29tcGxldGUnLFxuICBFcnJvckhpZ2hsaWdodGluZyA9ICdFcnJvciBoaWdobGlnaHRpbmcnLFxuICBBdXRvQnJhY2tldHMgPSAnQXV0by1icmFja2V0cycsXG59XG5cbmV4cG9ydCB0eXBlIENvbmZpZ1ZhbHVlID0gVGhlbWVzIHwgbnVtYmVyIHwgYm9vbGVhbjtcbmV4cG9ydCB0eXBlIENvbmZpZyA9IHtcbiAgW2tleSBpbiBGb3JtYXR0aW5nT3B0aW9ucyB8IENvZGluZ0Fzc2lzdGFuY2VPcHRpb25zXT86IENvbmZpZ1ZhbHVlO1xufTtcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtY2hhbmdlLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9sYW5ndWFnZS1jaGFuZ2UtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBMYW5ndWFnZUNoYW5nZUFjdGlvbiB7XG4gIENhbmNlbCA9ICdjYW5jZWwnLFxuICBDb25maXJtID0gJ2NvbmZpcm0nLFxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
// This is only used for LAT to enable auto saving for preview questions to let user see updated code whenever he switches back and forth between languages
|
|
2
|
-
export const AssessmentIdPreview = 'preview-id';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF0LWxhbmd1YWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9sYXQtbGFuZ3VhZ2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLDJKQUEySjtBQUMzSixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2RlRWRpdG9yTGFuZ3VhZ2VzIH0gZnJvbSAnLi4vY29tcG9uZW50cy9jb2RlLWVkaXRvci9oZWxwZXJzL2NvZGUtZWRpdG9yLWhlbHBlci5tb2RlbCc7XG5cbmV4cG9ydCB0eXBlIExBVExhbmd1YWdlID0ge1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogQ29kZUVkaXRvckxhbmd1YWdlcztcbiAgdmVyc2lvbj86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIExBVExhbmd1YWdlcyA9IExBVExhbmd1YWdlW107XG5cbi8vIFRoaXMgaXMgb25seSB1c2VkIGZvciBMQVQgdG8gZW5hYmxlIGF1dG8gc2F2aW5nIGZvciBwcmV2aWV3IHF1ZXN0aW9ucyB0byBsZXQgdXNlciBzZWUgdXBkYXRlZCBjb2RlIHdoZW5ldmVyIGhlIHN3aXRjaGVzIGJhY2sgYW5kIGZvcnRoIGJldHdlZW4gbGFuZ3VhZ2VzXG5leHBvcnQgY29uc3QgQXNzZXNzbWVudElkUHJldmlldyA9ICdwcmV2aWV3LWlkJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWl4cGFuZWwtZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvbW9kZWxzL21peHBhbmVsLWV2ZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gTWl4cGFuZWxFdmVudHMge1xuICBDaGFuZ2VkU2V0dGluZ3MgPSAnQ2hhbmdlZCBDb2RlcnVubmVyIHNldHRpbmcnLFxufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9tb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBNb2RlcyB7XG4gIFByZXZpZXcgPSAncHJldmlldycsXG4gIFJ1bm5pbmcgPSAncnVubmluZycsXG4gIE5vbkFzc2Vzc21lbnRQcmV2aWV3ID0gJ25vbi1hc3Nlc3NtZW50LXByZXZpZXcnLFxufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzdGUtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy9wYXN0ZS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFBhc3RlRGF0YSB7XG4gIHR5cGU6IHN0cmluZztcbiAgZGF0YTogc3RyaW5nO1xufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3JhbW1pbmctbGFuZ3VhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90Z28tY29kaW5nLXRlc3Qvc3JjL2xpYi9tb2RlbHMvcHJvZ3JhbW1pbmctbGFuZ3VhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUHJvZ3JhbW1pbmdMYW5ndWFnZSB7XG4gIGlkPzogbnVtYmVyO1xuICBuYW1lPzogc3RyaW5nO1xuICB2ZXJzaW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgZW51bSBQcm9ncmFtbWluZ0xhbmd1YWdlVmVyc2lvbmVkIHtcbiAgU1FMaXRlID0gJ3NxbGl0ZTMtMy4zNi4wJyxcbn1cbiJdfQ==
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export var TestCaseStatus;
|
|
2
|
-
(function (TestCaseStatus) {
|
|
3
|
-
TestCaseStatus["Passed"] = "passed";
|
|
4
|
-
TestCaseStatus["Error"] = "error";
|
|
5
|
-
TestCaseStatus["Empty"] = "empty";
|
|
6
|
-
})(TestCaseStatus || (TestCaseStatus = {}));
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1jYXNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL21vZGVscy90ZXN0LWNhc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdCQSxNQUFNLENBQU4sSUFBWSxjQUlYO0FBSkQsV0FBWSxjQUFjO0lBQ3hCLG1DQUFpQixDQUFBO0lBQ2pCLGlDQUFlLENBQUE7SUFDZixpQ0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFKVyxjQUFjLEtBQWQsY0FBYyxRQUl6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEN1c3RvbVRlc3RDYXNlID0ge1xuICBsb2NhbElkPzogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG4gIC8vIGlucHV0IGlzIG9wdGlvbmFsIGZvciBzcWwgdGVzdCBjYXNlc1xuICBpbnB1dD86IHN0cmluZztcbiAgZXhwZWN0ZWRPdXRwdXQ6IHN0cmluZztcbiAgcHJlbG9hZGVkOiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRXhhbXBsZVRlc3RDYXNlID0gQ3VzdG9tVGVzdENhc2UgJiB7XG4gIGlkOiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBUZXN0Q2FzZVJlc3VsdCA9IHtcbiAgYWN0dWFsT3V0cHV0OiBzdHJpbmc7XG4gIGxvZ3M6IHN0cmluZztcbiAgc3RhdHVzOiBUZXN0Q2FzZVN0YXR1cztcbn07XG5cbmV4cG9ydCB0eXBlIEFsbG93ZWRNb2RpZmljYXRpb25GaWVsZHMgPSB7XG4gIGlucHV0OiBzdHJpbmc7XG4gIGV4cGVjdGVkT3V0cHV0OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgZW51bSBUZXN0Q2FzZVN0YXR1cyB7XG4gIFBhc3NlZCA9ICdwYXNzZWQnLFxuICBFcnJvciA9ICdlcnJvcicsXG4gIEVtcHR5ID0gJ2VtcHR5Jyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUZXN0Q2FzZURlbGV0aW9uRGF0YSB7XG4gIGluZGV4OiBudW1iZXI7XG4gIGFjdGlvbjogVGVzdENhc2VEZWxldGlvbkFjdGlvbjtcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gVGVzdENhc2VEZWxldGlvbkFjdGlvbiB7XG4gIFRyeSA9ICd0cnknLFxuICBDb25maXJtID0gJ2NvbmZpcm0nLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExBVEZvcm1hdHRlZFRlc3RDYXNlcyB7XG4gIGlucHV0OiBzdHJpbmc7XG4gIHNvbHV0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3FsVGVzdENhc2Uge1xuICBpZD86IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xuICBjYXRlZ29yeTogQ2F0ZWdvcnlTcWxUZXN0Q2FzZUVudW07XG4gIC8qKiBFeHBlY3RlZCB0ZXN0IGNhc2UgcmVzdWx0ICovXG4gIHJlc3VsdD86IHN0cmluZztcbiAgaW5pdGlhbF9zcWw/OiBzdHJpbmc7XG4gIC8qKiBQcmV2aW91cyBzcWwgcXVlcnkgZm9yIGNoZWNraW5nICovXG4gIHByZV9zcWw/OiBzdHJpbmc7XG4gIC8qKiBQb3N0IHNxbCBxdWVyeSBmb3IgY2hlY2tpbmcgKi9cbiAgcG9zdF9zcWw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdGNhc2Uge1xuICBpZD86IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xuICBpbnB1dD86IHN0cmluZztcbiAgc29sdXRpb24/OiBzdHJpbmc7XG4gIHBvaW50cz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcm91cGVkVGVzdENhc2VzUmVzdWx0IHtcbiAgY3VzdG9tOiB7IGZhaWxlZDogbnVtYmVyOyBwYXNzZWQ6IG51bWJlciB9LFxuICBleGFtcGxlOiB7IGZhaWxlZDogbnVtYmVyOyBwYXNzZWQ6IG51bWJlciB9XG59XG5cbnR5cGUgQ2F0ZWdvcnlTcWxUZXN0Q2FzZUVudW0gPVxuICAndXNlcicgfFxuICAndmFsaWRhdGlvbic7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90Z28tY29kaW5nLXRlc3Qvc3JjL2xpYi9tb2RlbHMvdGhlbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRoZW1lIG5hbWUgbXVzdCBzdGFydCB3aXRoIFwidGhlbWUtXCIgISEhXG5leHBvcnQgY29uc3QgZW51bSBUaGVtZXMge1xuICBEZWZhdWx0ID0gJ3RoZW1lLWRlZmF1bHQnLFxuICBEYXJrID0gJ3RoZW1lLWRhcmsnLFxufVxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export const ROOT_TRANSLATIONS_SCOPE = 'CODING_QUESTION';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvbW9kZWxzL3RyYW5zbGF0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBST09UX1RSQU5TTEFUSU9OU19TQ09QRSA9ICdDT0RJTkdfUVVFU1RJT04nO1xuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export var ViewMode;
|
|
2
|
-
(function (ViewMode) {
|
|
3
|
-
ViewMode["Full"] = "full";
|
|
4
|
-
ViewMode["IDEOnly"] = "ide";
|
|
5
|
-
ViewMode["RunnableIde"] = "runnable-ide";
|
|
6
|
-
ViewMode["RunnableIdeWithLangSelector"] = "runnable-ide-w-lang-selector";
|
|
7
|
-
})(ViewMode || (ViewMode = {}));
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1tb2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvbW9kZWxzL3ZpZXctbW9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxRQUtYO0FBTEQsV0FBWSxRQUFRO0lBQ2xCLHlCQUFhLENBQUE7SUFDYiwyQkFBZSxDQUFBO0lBQ2Ysd0NBQTRCLENBQUE7SUFDNUIsd0VBQTRELENBQUE7QUFDOUQsQ0FBQyxFQUxXLFFBQVEsS0FBUixRQUFRLFFBS25CIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gVmlld01vZGUge1xuICBGdWxsID0gJ2Z1bGwnLFxuICBJREVPbmx5ID0gJ2lkZScsXG4gIFJ1bm5hYmxlSWRlID0gJ3J1bm5hYmxlLWlkZScsXG4gIFJ1bm5hYmxlSWRlV2l0aExhbmdTZWxlY3RvciA9ICdydW5uYWJsZS1pZGUtdy1sYW5nLXNlbGVjdG9yJyxcbn1cbiJdfQ==
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* USAGE:
|
|
5
|
-
* {{ argument | memoizeFunc : method [: context] }}
|
|
6
|
-
*
|
|
7
|
-
* You could provide multiple arguments for the function like that:
|
|
8
|
-
* {{ [argument1, argument2] | memoizeFunc : method [: context] }}
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* FUNCTION WITH CONTEXT
|
|
12
|
-
* We still could have optimization in impure functions with Angular pipes. Just provide context as second parameter
|
|
13
|
-
* to the memoizeFunc pipe.
|
|
14
|
-
*
|
|
15
|
-
* {{ argument | memoizeFunc : method : this }}
|
|
16
|
-
*
|
|
17
|
-
* Alternative variant use 'bind'
|
|
18
|
-
*
|
|
19
|
-
* {{ argument | memoizeFunc : method.bind(this) }}
|
|
20
|
-
*
|
|
21
|
-
* */
|
|
22
|
-
export class MemoizeFuncPipe {
|
|
23
|
-
transform(value, handler, context) {
|
|
24
|
-
if (context) {
|
|
25
|
-
return handler.call(context, value);
|
|
26
|
-
}
|
|
27
|
-
return handler(value);
|
|
28
|
-
}
|
|
29
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MemoizeFuncPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
30
|
-
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: MemoizeFuncPipe, isStandalone: true, name: "memoizeFunc" });
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MemoizeFuncPipe, decorators: [{
|
|
33
|
-
type: Pipe,
|
|
34
|
-
args: [{
|
|
35
|
-
name: 'memoizeFunc',
|
|
36
|
-
standalone: true,
|
|
37
|
-
}]
|
|
38
|
-
}] });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtb2l6ZS1mdW5jLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90Z28tY29kaW5nLXRlc3Qvc3JjL2xpYi9waXBlcy9tZW1vaXplLWZ1bmMucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFFcEQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQWtCSztBQUtMLE1BQU0sT0FBTyxlQUFlO0lBQzFCLFNBQVMsQ0FBTyxLQUFRLEVBQUUsT0FBd0IsRUFBRSxPQUFhO1FBQy9ELElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFFRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO3dHQVBVLGVBQWU7c0dBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFKM0IsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsYUFBYTtvQkFDbkIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqICAgVVNBR0U6XG4gKiAgIHt7IGFyZ3VtZW50IHwgbWVtb2l6ZUZ1bmMgOiBtZXRob2QgWzogY29udGV4dF0gfX1cbiAqXG4gKiAgIFlvdSBjb3VsZCBwcm92aWRlIG11bHRpcGxlIGFyZ3VtZW50cyBmb3IgdGhlIGZ1bmN0aW9uIGxpa2UgdGhhdDpcbiAqICAge3sgW2FyZ3VtZW50MSwgYXJndW1lbnQyXSB8IG1lbW9pemVGdW5jIDogbWV0aG9kIFs6IGNvbnRleHRdIH19XG4gKlxuICpcbiAqICAgRlVOQ1RJT04gV0lUSCBDT05URVhUXG4gKiAgIFdlIHN0aWxsIGNvdWxkIGhhdmUgb3B0aW1pemF0aW9uIGluIGltcHVyZSBmdW5jdGlvbnMgd2l0aCBBbmd1bGFyIHBpcGVzLiBKdXN0IHByb3ZpZGUgY29udGV4dCBhcyBzZWNvbmQgcGFyYW1ldGVyXG4gKiAgIHRvIHRoZSBtZW1vaXplRnVuYyBwaXBlLlxuICpcbiAqICAge3sgYXJndW1lbnQgfCBtZW1vaXplRnVuYyA6IG1ldGhvZCA6IHRoaXMgfX1cbiAqXG4gKiAgIEFsdGVybmF0aXZlIHZhcmlhbnQgdXNlICdiaW5kJ1xuICpcbiAqICAge3sgYXJndW1lbnQgfCBtZW1vaXplRnVuYyA6IG1ldGhvZC5iaW5kKHRoaXMpIH19XG4gKlxuICogKi9cbkBQaXBlKHtcbiAgbmFtZTogJ21lbW9pemVGdW5jJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTWVtb2l6ZUZ1bmNQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybTxULCBLPih2YWx1ZTogVCwgaGFuZGxlcjogKHZhbHVlOiBUKSA9PiBLLCBjb250ZXh0PzogYW55KTogSyB7XG4gICAgaWYgKGNvbnRleHQpIHtcbiAgICAgIHJldHVybiBoYW5kbGVyLmNhbGwoY29udGV4dCwgdmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBoYW5kbGVyKHZhbHVlKTtcbiAgfVxufVxuIl19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { ApiService } from '../../../shared/index.mjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../../shared/index.mjs";
|
|
5
|
-
export class CandidatureApiService {
|
|
6
|
-
apiService;
|
|
7
|
-
constructor(apiService) {
|
|
8
|
-
this.apiService = apiService;
|
|
9
|
-
}
|
|
10
|
-
getAvailableLanguages$() {
|
|
11
|
-
return this.apiService.get('candidatures/test-results/programming-languages/');
|
|
12
|
-
}
|
|
13
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CandidatureApiService, deps: [{ token: i1.ApiService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
14
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CandidatureApiService });
|
|
15
|
-
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CandidatureApiService, decorators: [{
|
|
17
|
-
type: Injectable
|
|
18
|
-
}], ctorParameters: () => [{ type: i1.ApiService }] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuZGlkYXR1cmUtYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90Z28tY29kaW5nLXRlc3Qvc3JjL2xpYi9zZXJ2aWNlcy9jYW5kaWRhdGUtY29kaW5nLXRlc3Qtc2VydmljZXMvY2FuZGlkYXR1cmUtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQUkxRCxNQUFNLE9BQU8scUJBQXFCO0lBRXRCO0lBRFYsWUFDVSxVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBRWhDLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7d0dBUlUscUJBQXFCOzRHQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGlTZXJ2aWNlIH0gZnJvbSAnQHRlc3Rnb3JpbGxhL3Rnby10ZXN0LXNoYXJlZCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDYW5kaWRhdHVyZUFwaVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaVNlcnZpY2VcbiAgKSB7XG4gIH1cblxuICBnZXRBdmFpbGFibGVMYW5ndWFnZXMkKCk6IE9ic2VydmFibGU8bnVtYmVyW10+IHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmdldCgnY2FuZGlkYXR1cmVzL3Rlc3QtcmVzdWx0cy9wcm9ncmFtbWluZy1sYW5ndWFnZXMvJyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable } from '@angular/core';
|
|
2
|
-
import { ApiService } from '../../../shared/index.mjs';
|
|
3
|
-
import { EMPTY, throwError } from 'rxjs';
|
|
4
|
-
import { SnackbarService } from '@testgorilla/tgo-ui';
|
|
5
|
-
import { ROOT_TRANSLATIONS_SCOPE } from '../../models/translations';
|
|
6
|
-
import { translate } from '@ngneat/transloco';
|
|
7
|
-
import { CodingTestConfigService } from '../coding-test-config.service';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
export class CoderunnerApiService {
|
|
10
|
-
snackbarService = inject(SnackbarService);
|
|
11
|
-
apiService = inject(ApiService);
|
|
12
|
-
configService = inject(CodingTestConfigService);
|
|
13
|
-
CR2Url = `${this.configService.getCoderunnerV2Endpoint()}/`;
|
|
14
|
-
// todo: will public preview be supported by mFE? if not - remove this
|
|
15
|
-
runPublicTest$(code, testcases, language) {
|
|
16
|
-
return this.apiService.post(`${this.CR2Url}api/attempts/public/`, {
|
|
17
|
-
question_id: 0,
|
|
18
|
-
language,
|
|
19
|
-
code,
|
|
20
|
-
testcases,
|
|
21
|
-
question_result_id: 0,
|
|
22
|
-
}, {}, this.handleError.bind(this), true);
|
|
23
|
-
}
|
|
24
|
-
runPreviewTest$(test_result_id, code, testcases, language) {
|
|
25
|
-
return this.apiService.post(`${this.CR2Url}api/attempts/preview/`, {
|
|
26
|
-
language,
|
|
27
|
-
code,
|
|
28
|
-
testcases,
|
|
29
|
-
test_result_id,
|
|
30
|
-
}, {}, this.handleError.bind(this), true);
|
|
31
|
-
}
|
|
32
|
-
runNonPreviewTest$(question_id, question_result_id, code, testcases, language) {
|
|
33
|
-
return this.apiService.post(`${this.CR2Url}api/attempts/`, {
|
|
34
|
-
question_id,
|
|
35
|
-
language,
|
|
36
|
-
code,
|
|
37
|
-
testcases,
|
|
38
|
-
question_result_id,
|
|
39
|
-
}, {}, this.handleError.bind(this), true);
|
|
40
|
-
}
|
|
41
|
-
sendCodeEvent$(event) {
|
|
42
|
-
return this.apiService.post(`${this.CR2Url}api/events/`, event, {}, this.handleError.bind(this), true);
|
|
43
|
-
}
|
|
44
|
-
handleError({ error }) {
|
|
45
|
-
if (error.detail) {
|
|
46
|
-
return throwError(() => error);
|
|
47
|
-
}
|
|
48
|
-
const genericErrorText = translate(`${ROOT_TRANSLATIONS_SCOPE}.ERRORS.SYSTEM_ERROR`);
|
|
49
|
-
this.snackbarService.error(genericErrorText);
|
|
50
|
-
return EMPTY;
|
|
51
|
-
}
|
|
52
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CoderunnerApiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
53
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CoderunnerApiService });
|
|
54
|
-
}
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CoderunnerApiService, decorators: [{
|
|
56
|
-
type: Injectable
|
|
57
|
-
}] });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZXJ1bm5lci1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3Rnby1jb2RpbmctdGVzdC9zcmMvbGliL3NlcnZpY2VzL2NhbmRpZGF0ZS1jb2RpbmctdGVzdC1zZXJ2aWNlcy9jb2RlcnVubmVyLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsS0FBSyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUlyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUd4RSxNQUFNLE9BQU8sb0JBQW9CO0lBQ2QsZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMxQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hDLGFBQWEsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUVoRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsQ0FBQztJQUU3RSxzRUFBc0U7SUFDdEUsY0FBYyxDQUNaLElBQVksRUFDWixTQUFrRCxFQUNsRCxRQUFnQjtRQUVoQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN6QixHQUFHLElBQUksQ0FBQyxNQUFNLHNCQUFzQixFQUNwQztZQUNFLFdBQVcsRUFBRSxDQUFDO1lBQ2QsUUFBUTtZQUNSLElBQUk7WUFDSixTQUFTO1lBQ1Qsa0JBQWtCLEVBQUUsQ0FBQztTQUN0QixFQUNELEVBQUUsRUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFDM0IsSUFBSSxDQUNMLENBQUM7SUFDSixDQUFDO0lBRUQsZUFBZSxDQUNiLGNBQXNCLEVBQ3RCLElBQVksRUFDWixTQUFrRCxFQUNsRCxRQUFnQjtRQUVoQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN6QixHQUFHLElBQUksQ0FBQyxNQUFNLHVCQUF1QixFQUNyQztZQUNFLFFBQVE7WUFDUixJQUFJO1lBQ0osU0FBUztZQUNULGNBQWM7U0FDZixFQUNELEVBQUUsRUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFDM0IsSUFBSSxDQUNMLENBQUM7SUFDSixDQUFDO0lBRUQsa0JBQWtCLENBQ2hCLFdBQW1CLEVBQ25CLGtCQUEwQixFQUMxQixJQUFZLEVBQ1osU0FBa0QsRUFDbEQsUUFBZ0I7UUFFaEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDekIsR0FBRyxJQUFJLENBQUMsTUFBTSxlQUFlLEVBQzdCO1lBQ0UsV0FBVztZQUNYLFFBQVE7WUFDUixJQUFJO1lBQ0osU0FBUztZQUNULGtCQUFrQjtTQUNuQixFQUNELEVBQUUsRUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFDM0IsSUFBSSxDQUNMLENBQUM7SUFDSixDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQWdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pCLEdBQUcsSUFBSSxDQUFDLE1BQU0sYUFBYSxFQUMzQixLQUFLLEVBQ0wsRUFBRSxFQUNGLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUMzQixJQUFJLENBQ0wsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQXFCO1FBQzlDLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLENBQUM7UUFFRCxNQUFNLGdCQUFnQixHQUFHLFNBQVMsQ0FDaEMsR0FBRyx1QkFBdUIsc0JBQXNCLENBQ2pELENBQUM7UUFDRixJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdDLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzt3R0ExRlUsb0JBQW9COzRHQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICdAdGVzdGdvcmlsbGEvdGdvLXRlc3Qtc2hhcmVkJztcbmltcG9ydCB7IEVNUFRZLCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMQVRGb3JtYXR0ZWRUZXN0Q2FzZXMsIFNxbFRlc3RDYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Rlc3QtY2FzZXMnO1xuaW1wb3J0IHsgQ29kZXJ1bm5lckF0dGVtcHRNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9jb2RlcnVubmVyLWV4ZWN1dGlvbi1yZXN1bHRzJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgU25hY2tiYXJTZXJ2aWNlIH0gZnJvbSAnQHRlc3Rnb3JpbGxhL3Rnby11aSc7XG5pbXBvcnQgeyBST09UX1RSQU5TTEFUSU9OU19TQ09QRSB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2xhdGlvbnMnO1xuaW1wb3J0IHsgdHJhbnNsYXRlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xuaW1wb3J0IHsgQ29kZUV2ZW50LCBDb2RlRXZlbnRSZXNwb25zZSB9IGZyb20gJy4uLy4uL21vZGVscy9jb2RlLWV2ZW50JztcbmltcG9ydCB7IENvZGluZ1Rlc3RDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vY29kaW5nLXRlc3QtY29uZmlnLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29kZXJ1bm5lckFwaVNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHNuYWNrYmFyU2VydmljZSA9IGluamVjdChTbmFja2JhclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaVNlcnZpY2UgPSBpbmplY3QoQXBpU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZSA9IGluamVjdChDb2RpbmdUZXN0Q29uZmlnU2VydmljZSk7XG4gIFxuICBwcml2YXRlIHJlYWRvbmx5IENSMlVybCA9IGAke3RoaXMuY29uZmlnU2VydmljZS5nZXRDb2RlcnVubmVyVjJFbmRwb2ludCgpfS9gO1xuXG4gIC8vIHRvZG86IHdpbGwgcHVibGljIHByZXZpZXcgYmUgc3VwcG9ydGVkIGJ5IG1GRT8gaWYgbm90IC0gcmVtb3ZlIHRoaXNcbiAgcnVuUHVibGljVGVzdCQoXG4gICAgY29kZTogc3RyaW5nLFxuICAgIHRlc3RjYXNlczogTEFURm9ybWF0dGVkVGVzdENhc2VzW10gfCBTcWxUZXN0Q2FzZVtdLFxuICAgIGxhbmd1YWdlOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxDb2RlcnVubmVyQXR0ZW1wdE1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxuICAgICAgYCR7dGhpcy5DUjJVcmx9YXBpL2F0dGVtcHRzL3B1YmxpYy9gLFxuICAgICAge1xuICAgICAgICBxdWVzdGlvbl9pZDogMCxcbiAgICAgICAgbGFuZ3VhZ2UsXG4gICAgICAgIGNvZGUsXG4gICAgICAgIHRlc3RjYXNlcyxcbiAgICAgICAgcXVlc3Rpb25fcmVzdWx0X2lkOiAwLFxuICAgICAgfSxcbiAgICAgIHt9LFxuICAgICAgdGhpcy5oYW5kbGVFcnJvci5iaW5kKHRoaXMpLFxuICAgICAgdHJ1ZVxuICAgICk7XG4gIH1cblxuICBydW5QcmV2aWV3VGVzdCQoXG4gICAgdGVzdF9yZXN1bHRfaWQ6IG51bWJlcixcbiAgICBjb2RlOiBzdHJpbmcsXG4gICAgdGVzdGNhc2VzOiBMQVRGb3JtYXR0ZWRUZXN0Q2FzZXNbXSB8IFNxbFRlc3RDYXNlW10sXG4gICAgbGFuZ3VhZ2U6IHN0cmluZ1xuICApOiBPYnNlcnZhYmxlPENvZGVydW5uZXJBdHRlbXB0TW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoXG4gICAgICBgJHt0aGlzLkNSMlVybH1hcGkvYXR0ZW1wdHMvcHJldmlldy9gLFxuICAgICAge1xuICAgICAgICBsYW5ndWFnZSxcbiAgICAgICAgY29kZSxcbiAgICAgICAgdGVzdGNhc2VzLFxuICAgICAgICB0ZXN0X3Jlc3VsdF9pZCxcbiAgICAgIH0sXG4gICAgICB7fSxcbiAgICAgIHRoaXMuaGFuZGxlRXJyb3IuYmluZCh0aGlzKSxcbiAgICAgIHRydWVcbiAgICApO1xuICB9XG5cbiAgcnVuTm9uUHJldmlld1Rlc3QkKFxuICAgIHF1ZXN0aW9uX2lkOiBudW1iZXIsXG4gICAgcXVlc3Rpb25fcmVzdWx0X2lkOiBudW1iZXIsXG4gICAgY29kZTogc3RyaW5nLFxuICAgIHRlc3RjYXNlczogTEFURm9ybWF0dGVkVGVzdENhc2VzW10gfCBTcWxUZXN0Q2FzZVtdLFxuICAgIGxhbmd1YWdlOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxDb2RlcnVubmVyQXR0ZW1wdE1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxuICAgICAgYCR7dGhpcy5DUjJVcmx9YXBpL2F0dGVtcHRzL2AsXG4gICAgICB7XG4gICAgICAgIHF1ZXN0aW9uX2lkLFxuICAgICAgICBsYW5ndWFnZSxcbiAgICAgICAgY29kZSxcbiAgICAgICAgdGVzdGNhc2VzLFxuICAgICAgICBxdWVzdGlvbl9yZXN1bHRfaWQsXG4gICAgICB9LFxuICAgICAge30sXG4gICAgICB0aGlzLmhhbmRsZUVycm9yLmJpbmQodGhpcyksXG4gICAgICB0cnVlXG4gICAgKTtcbiAgfVxuXG4gIHNlbmRDb2RlRXZlbnQkKGV2ZW50OiBDb2RlRXZlbnQpOiBPYnNlcnZhYmxlPENvZGVFdmVudFJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KFxuICAgICAgYCR7dGhpcy5DUjJVcmx9YXBpL2V2ZW50cy9gLFxuICAgICAgZXZlbnQsXG4gICAgICB7fSxcbiAgICAgIHRoaXMuaGFuZGxlRXJyb3IuYmluZCh0aGlzKSxcbiAgICAgIHRydWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVFcnJvcih7IGVycm9yIH06IEh0dHBFcnJvclJlc3BvbnNlKTogT2JzZXJ2YWJsZTxuZXZlcj4ge1xuICAgIGlmIChlcnJvci5kZXRhaWwpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICB9XG5cbiAgICBjb25zdCBnZW5lcmljRXJyb3JUZXh0ID0gdHJhbnNsYXRlKFxuICAgICAgYCR7Uk9PVF9UUkFOU0xBVElPTlNfU0NPUEV9LkVSUk9SUy5TWVNURU1fRVJST1JgXG4gICAgKTtcbiAgICB0aGlzLnNuYWNrYmFyU2VydmljZS5lcnJvcihnZW5lcmljRXJyb3JUZXh0KTtcbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { translate } from '@ngneat/transloco';
|
|
3
|
-
import { GuidedTourService, Orientation, } from 'ngx-guided-tour';
|
|
4
|
-
import { BehaviorSubject } from 'rxjs';
|
|
5
|
-
import { ROOT_TRANSLATIONS_SCOPE } from '../../models/translations';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "ngx-guided-tour";
|
|
8
|
-
export class CodingTestTourService {
|
|
9
|
-
guidedTourService;
|
|
10
|
-
translationContext = `${ROOT_TRANSLATIONS_SCOPE}.TOUR.`;
|
|
11
|
-
guidedTourId = 'lat-coding-tour';
|
|
12
|
-
MINIMUM_SCREEN_SIZE = 599;
|
|
13
|
-
activeGuidedTourIdSub$ = new BehaviorSubject('');
|
|
14
|
-
activeGuidedTourId$ = this.activeGuidedTourIdSub$.asObservable();
|
|
15
|
-
constructor(guidedTourService) {
|
|
16
|
-
this.guidedTourService = guidedTourService;
|
|
17
|
-
}
|
|
18
|
-
init(mode) {
|
|
19
|
-
this.start(mode);
|
|
20
|
-
}
|
|
21
|
-
skipTour() {
|
|
22
|
-
// currentTourStepCount checks if there is a currentTour before checking stepCount.
|
|
23
|
-
if (this.guidedTourService.currentTourStepCount) {
|
|
24
|
-
this.guidedTourService.skipTour();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
start(mode) {
|
|
28
|
-
if (window.innerWidth > this.MINIMUM_SCREEN_SIZE) {
|
|
29
|
-
this.guidedTourService.startTour(this.getTour(mode));
|
|
30
|
-
}
|
|
31
|
-
this.publishActiveGuidedTourId();
|
|
32
|
-
}
|
|
33
|
-
publishActiveGuidedTourId() {
|
|
34
|
-
this.activeGuidedTourIdSub$.next(this.guidedTourId);
|
|
35
|
-
}
|
|
36
|
-
getTour(mode) {
|
|
37
|
-
let steps = [];
|
|
38
|
-
const step1 = {
|
|
39
|
-
title: translate(`${this.translationContext}STEP_1.TITLE`),
|
|
40
|
-
selector: '#question-section',
|
|
41
|
-
content: translate(`${this.translationContext}STEP_1.MESSAGE`),
|
|
42
|
-
orientation: Orientation.Right,
|
|
43
|
-
};
|
|
44
|
-
const step2 = {
|
|
45
|
-
title: translate(`${this.translationContext}STEP_2.TITLE`),
|
|
46
|
-
selector: '#language-dropdown',
|
|
47
|
-
content: translate(`${this.translationContext}STEP_2.MESSAGE`),
|
|
48
|
-
orientation: Orientation.Bottom,
|
|
49
|
-
};
|
|
50
|
-
const step3 = {
|
|
51
|
-
title: translate(`${this.translationContext}STEP_3.TITLE`),
|
|
52
|
-
selector: '#test-cases',
|
|
53
|
-
content: translate(`${this.translationContext}STEP_3.MESSAGE`),
|
|
54
|
-
orientation: Orientation.Top,
|
|
55
|
-
};
|
|
56
|
-
const step4 = {
|
|
57
|
-
title: translate(`${this.translationContext}STEP_4.TITLE`),
|
|
58
|
-
selector: '#configuration-ide-button',
|
|
59
|
-
content: translate(`${this.translationContext}STEP_4.MESSAGE`),
|
|
60
|
-
orientation: Orientation.BottomRight,
|
|
61
|
-
};
|
|
62
|
-
const step5 = {
|
|
63
|
-
title: translate(`${this.translationContext}STEP_5.TITLE`),
|
|
64
|
-
selector: '[data-tourId*="question-next-finish-button"]',
|
|
65
|
-
content: translate(`${this.translationContext}STEP_5.MESSAGE`),
|
|
66
|
-
orientation: Orientation.Bottom,
|
|
67
|
-
};
|
|
68
|
-
switch (mode) {
|
|
69
|
-
case "practice" /* CodingTestTourMode.PracticeQuestion */:
|
|
70
|
-
steps = [step1, step2, step3, step4, step5];
|
|
71
|
-
break;
|
|
72
|
-
case "real" /* CodingTestTourMode.RealQuestion */:
|
|
73
|
-
steps = [step2, step3, step4];
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
return {
|
|
77
|
-
tourId: this.guidedTourId,
|
|
78
|
-
useOrb: false,
|
|
79
|
-
minimumScreenSize: this.MINIMUM_SCREEN_SIZE,
|
|
80
|
-
steps,
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CodingTestTourService, deps: [{ token: i1.GuidedTourService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
84
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CodingTestTourService });
|
|
85
|
-
}
|
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CodingTestTourService, decorators: [{
|
|
87
|
-
type: Injectable
|
|
88
|
-
}], ctorParameters: () => [{ type: i1.GuidedTourService }] });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kaW5nLXRlc3QtdG91ci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGdvLWNvZGluZy10ZXN0L3NyYy9saWIvc2VydmljZXMvY2FuZGlkYXRlLWNvZGluZy10ZXN0LXNlcnZpY2VzL2NvZGluZy10ZXN0LXRvdXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFdBQVcsR0FFWixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7OztBQVFwRSxNQUFNLE9BQU8scUJBQXFCO0lBUVo7SUFQSCxrQkFBa0IsR0FBRyxHQUFHLHVCQUF1QixRQUFRLENBQUM7SUFDeEQsWUFBWSxHQUFHLGlCQUFpQixDQUFDO0lBQ2pDLG1CQUFtQixHQUFHLEdBQUcsQ0FBQztJQUVuQyxzQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN6RCxtQkFBbUIsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFakUsWUFBb0IsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFBRyxDQUFDO0lBRTVELElBQUksQ0FBQyxJQUF3QjtRQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25CLENBQUM7SUFFRCxRQUFRO1FBQ04sbUZBQW1GO1FBQ25GLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDaEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0lBRU8sS0FBSyxDQUFDLElBQXdCO1FBQ3BDLElBQUksTUFBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVPLHlCQUF5QjtRQUMvQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU8sT0FBTyxDQUFDLElBQXdCO1FBQ3RDLElBQUksS0FBSyxHQUFlLEVBQUUsQ0FBQztRQUMzQixNQUFNLEtBQUssR0FBRztZQUNaLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLGNBQWMsQ0FBQztZQUMxRCxRQUFRLEVBQUUsbUJBQW1CO1lBQzdCLE9BQU8sRUFBRSxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLGdCQUFnQixDQUFDO1lBQzlELFdBQVcsRUFBRSxXQUFXLENBQUMsS0FBSztTQUMvQixDQUFDO1FBQ0YsTUFBTSxLQUFLLEdBQUc7WUFDWixLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixjQUFjLENBQUM7WUFDMUQsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixPQUFPLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixnQkFBZ0IsQ0FBQztZQUM5RCxXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU07U0FDaEMsQ0FBQztRQUNGLE1BQU0sS0FBSyxHQUFHO1lBQ1osS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsY0FBYyxDQUFDO1lBQzFELFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLE9BQU8sRUFBRSxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLGdCQUFnQixDQUFDO1lBQzlELFdBQVcsRUFBRSxXQUFXLENBQUMsR0FBRztTQUM3QixDQUFDO1FBQ0YsTUFBTSxLQUFLLEdBQUc7WUFDWixLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixjQUFjLENBQUM7WUFDMUQsUUFBUSxFQUFFLDJCQUEyQjtZQUNyQyxPQUFPLEVBQUUsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixnQkFBZ0IsQ0FBQztZQUM5RCxXQUFXLEVBQUUsV0FBVyxDQUFDLFdBQVc7U0FDckMsQ0FBQztRQUNGLE1BQU0sS0FBSyxHQUFHO1lBQ1osS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsY0FBYyxDQUFDO1lBQzFELFFBQVEsRUFBRSw4Q0FBOEM7WUFDeEQsT0FBTyxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsZ0JBQWdCLENBQUM7WUFDOUQsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNO1NBQ2hDLENBQUM7UUFFRixRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2I7Z0JBQ0UsS0FBSyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUM1QyxNQUFNO1lBQ1I7Z0JBQ0UsS0FBSyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDOUIsTUFBTTtRQUNWLENBQUM7UUFFRCxPQUFPO1lBQ0wsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQ3pCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtZQUMzQyxLQUFLO1NBQ04sQ0FBQztJQUNKLENBQUM7d0dBaEZVLHFCQUFxQjs0R0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHJhbnNsYXRlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xuaW1wb3J0IHtcbiAgR3VpZGVkVG91cixcbiAgR3VpZGVkVG91clNlcnZpY2UsXG4gIE9yaWVudGF0aW9uLFxuICBUb3VyU3RlcCxcbn0gZnJvbSAnbmd4LWd1aWRlZC10b3VyJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBST09UX1RSQU5TTEFUSU9OU19TQ09QRSB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2xhdGlvbnMnO1xuXG5leHBvcnQgY29uc3QgZW51bSBDb2RpbmdUZXN0VG91ck1vZGUge1xuICBQcmFjdGljZVF1ZXN0aW9uID0gJ3ByYWN0aWNlJyxcbiAgUmVhbFF1ZXN0aW9uID0gJ3JlYWwnLFxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29kaW5nVGVzdFRvdXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGlvbkNvbnRleHQgPSBgJHtST09UX1RSQU5TTEFUSU9OU19TQ09QRX0uVE9VUi5gO1xuICBwcml2YXRlIHJlYWRvbmx5IGd1aWRlZFRvdXJJZCA9ICdsYXQtY29kaW5nLXRvdXInO1xuICBwcml2YXRlIHJlYWRvbmx5IE1JTklNVU1fU0NSRUVOX1NJWkUgPSA1OTk7XG5cbiAgcHJpdmF0ZSBhY3RpdmVHdWlkZWRUb3VySWRTdWIkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgnJyk7XG4gIGFjdGl2ZUd1aWRlZFRvdXJJZCQgPSB0aGlzLmFjdGl2ZUd1aWRlZFRvdXJJZFN1YiQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBndWlkZWRUb3VyU2VydmljZTogR3VpZGVkVG91clNlcnZpY2UpIHt9XG5cbiAgaW5pdChtb2RlOiBDb2RpbmdUZXN0VG91ck1vZGUpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXJ0KG1vZGUpO1xuICB9XG5cbiAgc2tpcFRvdXIoKTogdm9pZCB7XG4gICAgLy8gY3VycmVudFRvdXJTdGVwQ291bnQgY2hlY2tzIGlmIHRoZXJlIGlzIGEgY3VycmVudFRvdXIgYmVmb3JlIGNoZWNraW5nIHN0ZXBDb3VudC5cbiAgICBpZiAodGhpcy5ndWlkZWRUb3VyU2VydmljZS5jdXJyZW50VG91clN0ZXBDb3VudCkge1xuICAgICAgdGhpcy5ndWlkZWRUb3VyU2VydmljZS5za2lwVG91cigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RhcnQobW9kZTogQ29kaW5nVGVzdFRvdXJNb2RlKSB7XG4gICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoID4gdGhpcy5NSU5JTVVNX1NDUkVFTl9TSVpFKSB7XG4gICAgICB0aGlzLmd1aWRlZFRvdXJTZXJ2aWNlLnN0YXJ0VG91cih0aGlzLmdldFRvdXIobW9kZSkpO1xuICAgIH1cbiAgICB0aGlzLnB1Ymxpc2hBY3RpdmVHdWlkZWRUb3VySWQoKTtcbiAgfVxuXG4gIHByaXZhdGUgcHVibGlzaEFjdGl2ZUd1aWRlZFRvdXJJZCgpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUd1aWRlZFRvdXJJZFN1YiQubmV4dCh0aGlzLmd1aWRlZFRvdXJJZCk7XG4gIH1cblxuICBwcml2YXRlIGdldFRvdXIobW9kZTogQ29kaW5nVGVzdFRvdXJNb2RlKTogR3VpZGVkVG91ciB7XG4gICAgbGV0IHN0ZXBzOiBUb3VyU3RlcFtdID0gW107XG4gICAgY29uc3Qgc3RlcDEgPSB7XG4gICAgICB0aXRsZTogdHJhbnNsYXRlKGAke3RoaXMudHJhbnNsYXRpb25Db250ZXh0fVNURVBfMS5USVRMRWApLFxuICAgICAgc2VsZWN0b3I6ICcjcXVlc3Rpb24tc2VjdGlvbicsXG4gICAgICBjb250ZW50OiB0cmFuc2xhdGUoYCR7dGhpcy50cmFuc2xhdGlvbkNvbnRleHR9U1RFUF8xLk1FU1NBR0VgKSxcbiAgICAgIG9yaWVudGF0aW9uOiBPcmllbnRhdGlvbi5SaWdodCxcbiAgICB9O1xuICAgIGNvbnN0IHN0ZXAyID0ge1xuICAgICAgdGl0bGU6IHRyYW5zbGF0ZShgJHt0aGlzLnRyYW5zbGF0aW9uQ29udGV4dH1TVEVQXzIuVElUTEVgKSxcbiAgICAgIHNlbGVjdG9yOiAnI2xhbmd1YWdlLWRyb3Bkb3duJyxcbiAgICAgIGNvbnRlbnQ6IHRyYW5zbGF0ZShgJHt0aGlzLnRyYW5zbGF0aW9uQ29udGV4dH1TVEVQXzIuTUVTU0FHRWApLFxuICAgICAgb3JpZW50YXRpb246IE9yaWVudGF0aW9uLkJvdHRvbSxcbiAgICB9O1xuICAgIGNvbnN0IHN0ZXAzID0ge1xuICAgICAgdGl0bGU6IHRyYW5zbGF0ZShgJHt0aGlzLnRyYW5zbGF0aW9uQ29udGV4dH1TVEVQXzMuVElUTEVgKSxcbiAgICAgIHNlbGVjdG9yOiAnI3Rlc3QtY2FzZXMnLFxuICAgICAgY29udGVudDogdHJhbnNsYXRlKGAke3RoaXMudHJhbnNsYXRpb25Db250ZXh0fVNURVBfMy5NRVNTQUdFYCksXG4gICAgICBvcmllbnRhdGlvbjogT3JpZW50YXRpb24uVG9wLFxuICAgIH07XG4gICAgY29uc3Qgc3RlcDQgPSB7XG4gICAgICB0aXRsZTogdHJhbnNsYXRlKGAke3RoaXMudHJhbnNsYXRpb25Db250ZXh0fVNURVBfNC5USVRMRWApLFxuICAgICAgc2VsZWN0b3I6ICcjY29uZmlndXJhdGlvbi1pZGUtYnV0dG9uJyxcbiAgICAgIGNvbnRlbnQ6IHRyYW5zbGF0ZShgJHt0aGlzLnRyYW5zbGF0aW9uQ29udGV4dH1TVEVQXzQuTUVTU0FHRWApLFxuICAgICAgb3JpZW50YXRpb246IE9yaWVudGF0aW9uLkJvdHRvbVJpZ2h0LFxuICAgIH07XG4gICAgY29uc3Qgc3RlcDUgPSB7XG4gICAgICB0aXRsZTogdHJhbnNsYXRlKGAke3RoaXMudHJhbnNsYXRpb25Db250ZXh0fVNURVBfNS5USVRMRWApLFxuICAgICAgc2VsZWN0b3I6ICdbZGF0YS10b3VySWQqPVwicXVlc3Rpb24tbmV4dC1maW5pc2gtYnV0dG9uXCJdJyxcbiAgICAgIGNvbnRlbnQ6IHRyYW5zbGF0ZShgJHt0aGlzLnRyYW5zbGF0aW9uQ29udGV4dH1TVEVQXzUuTUVTU0FHRWApLFxuICAgICAgb3JpZW50YXRpb246IE9yaWVudGF0aW9uLkJvdHRvbSxcbiAgICB9O1xuXG4gICAgc3dpdGNoIChtb2RlKSB7XG4gICAgICBjYXNlIENvZGluZ1Rlc3RUb3VyTW9kZS5QcmFjdGljZVF1ZXN0aW9uOlxuICAgICAgICBzdGVwcyA9IFtzdGVwMSwgc3RlcDIsIHN0ZXAzLCBzdGVwNCwgc3RlcDVdO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQ29kaW5nVGVzdFRvdXJNb2RlLlJlYWxRdWVzdGlvbjpcbiAgICAgICAgc3RlcHMgPSBbc3RlcDIsIHN0ZXAzLCBzdGVwNF07XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICB0b3VySWQ6IHRoaXMuZ3VpZGVkVG91cklkLFxuICAgICAgdXNlT3JiOiBmYWxzZSxcbiAgICAgIG1pbmltdW1TY3JlZW5TaXplOiB0aGlzLk1JTklNVU1fU0NSRUVOX1NJWkUsXG4gICAgICBzdGVwcyxcbiAgICB9O1xuICB9XG59XG4iXX0=
|