@learnpack/learnpack 2.1.25 → 2.1.26

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.
Files changed (182) hide show
  1. package/README.md +16 -16
  2. package/bin/run +17 -17
  3. package/bin/run.cmd +3 -3
  4. package/lib/commands/audit.d.ts +6 -6
  5. package/lib/commands/audit.js +327 -302
  6. package/lib/commands/clean.d.ts +8 -8
  7. package/lib/commands/clean.js +25 -25
  8. package/lib/commands/download.d.ts +13 -13
  9. package/lib/commands/download.js +55 -55
  10. package/lib/commands/init.d.ts +9 -9
  11. package/lib/commands/init.js +123 -123
  12. package/lib/commands/login.d.ts +14 -14
  13. package/lib/commands/login.js +37 -37
  14. package/lib/commands/logout.d.ts +14 -14
  15. package/lib/commands/logout.js +37 -37
  16. package/lib/commands/publish.d.ts +14 -14
  17. package/lib/commands/publish.js +82 -82
  18. package/lib/commands/start.d.ts +7 -7
  19. package/lib/commands/start.js +165 -165
  20. package/lib/commands/test.d.ts +6 -6
  21. package/lib/commands/test.js +62 -62
  22. package/lib/index.d.ts +1 -1
  23. package/lib/index.js +4 -4
  24. package/lib/managers/config/allowed_files.d.ts +5 -5
  25. package/lib/managers/config/allowed_files.js +30 -30
  26. package/lib/managers/config/defaults.d.ts +39 -37
  27. package/lib/managers/config/defaults.js +40 -38
  28. package/lib/managers/config/exercise.d.ts +36 -36
  29. package/lib/managers/config/exercise.js +233 -230
  30. package/lib/managers/config/index.d.ts +3 -3
  31. package/lib/managers/config/index.js +320 -302
  32. package/lib/managers/file.d.ts +13 -13
  33. package/lib/managers/file.js +134 -134
  34. package/lib/managers/gitpod.d.ts +3 -3
  35. package/lib/managers/gitpod.js +67 -67
  36. package/lib/managers/server/index.d.ts +6 -6
  37. package/lib/managers/server/index.js +58 -51
  38. package/lib/managers/server/routes.d.ts +4 -4
  39. package/lib/managers/server/routes.js +167 -167
  40. package/lib/managers/session.d.ts +3 -3
  41. package/lib/managers/session.js +104 -104
  42. package/lib/managers/socket.d.ts +3 -3
  43. package/lib/managers/socket.js +164 -164
  44. package/lib/managers/test.js +84 -84
  45. package/lib/models/action.d.ts +2 -2
  46. package/lib/models/action.js +2 -2
  47. package/lib/models/audit.d.ts +15 -15
  48. package/lib/models/audit.js +2 -2
  49. package/lib/models/config-manager.d.ts +21 -21
  50. package/lib/models/config-manager.js +2 -2
  51. package/lib/models/config.d.ts +62 -60
  52. package/lib/models/config.js +2 -2
  53. package/lib/models/counter.d.ts +11 -11
  54. package/lib/models/counter.js +2 -2
  55. package/lib/models/errors.d.ts +15 -15
  56. package/lib/models/errors.js +2 -2
  57. package/lib/models/exercise-obj.d.ts +27 -27
  58. package/lib/models/exercise-obj.js +2 -2
  59. package/lib/models/file.d.ts +5 -5
  60. package/lib/models/file.js +2 -2
  61. package/lib/models/findings.d.ts +17 -17
  62. package/lib/models/findings.js +2 -2
  63. package/lib/models/flags.d.ts +10 -10
  64. package/lib/models/flags.js +2 -2
  65. package/lib/models/front-matter.d.ts +11 -11
  66. package/lib/models/front-matter.js +2 -2
  67. package/lib/models/gitpod-data.d.ts +16 -16
  68. package/lib/models/gitpod-data.js +2 -2
  69. package/lib/models/language.d.ts +4 -4
  70. package/lib/models/language.js +2 -2
  71. package/lib/models/package.d.ts +7 -7
  72. package/lib/models/package.js +2 -2
  73. package/lib/models/plugin-config.d.ts +16 -16
  74. package/lib/models/plugin-config.js +2 -2
  75. package/lib/models/session.d.ts +23 -23
  76. package/lib/models/session.js +2 -2
  77. package/lib/models/socket.d.ts +31 -31
  78. package/lib/models/socket.js +2 -2
  79. package/lib/models/status.d.ts +1 -1
  80. package/lib/models/status.js +2 -2
  81. package/lib/models/success-types.d.ts +1 -1
  82. package/lib/models/success-types.js +2 -2
  83. package/lib/plugin/command/compile.d.ts +6 -6
  84. package/lib/plugin/command/compile.js +18 -18
  85. package/lib/plugin/command/test.d.ts +6 -6
  86. package/lib/plugin/command/test.js +25 -25
  87. package/lib/plugin/index.d.ts +27 -27
  88. package/lib/plugin/index.js +7 -7
  89. package/lib/plugin/plugin.d.ts +8 -8
  90. package/lib/plugin/plugin.js +68 -68
  91. package/lib/plugin/utils.d.ts +16 -16
  92. package/lib/plugin/utils.js +58 -58
  93. package/lib/ui/download.d.ts +5 -5
  94. package/lib/ui/download.js +61 -61
  95. package/lib/utils/BaseCommand.d.ts +8 -8
  96. package/lib/utils/BaseCommand.js +41 -41
  97. package/lib/utils/SessionCommand.d.ts +10 -10
  98. package/lib/utils/SessionCommand.js +47 -47
  99. package/lib/utils/api.d.ts +12 -12
  100. package/lib/utils/api.js +173 -173
  101. package/lib/utils/audit.d.ts +16 -16
  102. package/lib/utils/audit.js +302 -302
  103. package/lib/utils/console.d.ts +12 -12
  104. package/lib/utils/console.js +19 -19
  105. package/lib/utils/errors.d.ts +17 -17
  106. package/lib/utils/errors.js +100 -100
  107. package/lib/utils/exercisesQueue.d.ts +9 -9
  108. package/lib/utils/exercisesQueue.js +38 -38
  109. package/lib/utils/fileQueue.d.ts +40 -40
  110. package/lib/utils/fileQueue.js +168 -168
  111. package/lib/utils/misc.d.ts +1 -1
  112. package/lib/utils/misc.js +23 -23
  113. package/lib/utils/validators.d.ts +5 -5
  114. package/lib/utils/validators.js +17 -17
  115. package/lib/utils/watcher.d.ts +2 -2
  116. package/lib/utils/watcher.js +23 -23
  117. package/oclif.manifest.json +1 -1
  118. package/package.json +138 -138
  119. package/src/commands/audit.ts +25 -0
  120. package/src/commands/clean.ts +29 -29
  121. package/src/commands/download.ts +62 -62
  122. package/src/commands/login.ts +42 -42
  123. package/src/commands/logout.ts +43 -43
  124. package/src/commands/publish.ts +107 -107
  125. package/src/commands/start.ts +238 -234
  126. package/src/commands/test.ts +85 -85
  127. package/src/index.ts +1 -1
  128. package/src/managers/config/allowed_files.ts +29 -29
  129. package/src/managers/config/defaults.ts +2 -0
  130. package/src/managers/config/exercise.ts +309 -302
  131. package/src/managers/config/index.ts +22 -1
  132. package/src/managers/file.ts +169 -169
  133. package/src/managers/gitpod.ts +84 -84
  134. package/src/managers/server/index.ts +77 -69
  135. package/src/managers/session.ts +118 -118
  136. package/src/managers/socket.ts +239 -239
  137. package/src/managers/test.ts +83 -83
  138. package/src/models/action.ts +3 -3
  139. package/src/models/config-manager.ts +23 -23
  140. package/src/models/config.ts +2 -0
  141. package/src/models/counter.ts +11 -11
  142. package/src/models/errors.ts +22 -22
  143. package/src/models/file.ts +5 -5
  144. package/src/models/findings.ts +18 -18
  145. package/src/models/flags.ts +10 -10
  146. package/src/models/front-matter.ts +11 -11
  147. package/src/models/gitpod-data.ts +19 -19
  148. package/src/models/language.ts +4 -4
  149. package/src/models/package.ts +7 -7
  150. package/src/models/plugin-config.ts +17 -17
  151. package/src/models/session.ts +26 -26
  152. package/src/models/socket.ts +48 -48
  153. package/src/models/status.ts +15 -15
  154. package/src/models/success-types.ts +1 -1
  155. package/src/plugin/command/compile.ts +17 -17
  156. package/src/plugin/command/test.ts +30 -30
  157. package/src/plugin/index.ts +6 -6
  158. package/src/plugin/plugin.ts +94 -94
  159. package/src/plugin/utils.ts +87 -87
  160. package/src/types/node-fetch.d.ts +1 -1
  161. package/src/ui/download.ts +71 -71
  162. package/src/utils/BaseCommand.ts +48 -48
  163. package/src/utils/SessionCommand.ts +48 -48
  164. package/src/utils/api.ts +194 -194
  165. package/src/utils/audit.ts +395 -395
  166. package/src/utils/console.ts +24 -24
  167. package/src/utils/errors.ts +117 -117
  168. package/src/utils/exercisesQueue.ts +51 -51
  169. package/src/utils/fileQueue.ts +198 -198
  170. package/src/utils/misc.ts +23 -23
  171. package/src/utils/templates/gitignore.txt +19 -19
  172. package/src/utils/templates/incremental/.learn/exercises/01-hello-world/README.es.md +24 -24
  173. package/src/utils/templates/incremental/.learn/exercises/01-hello-world/README.md +24 -24
  174. package/src/utils/templates/incremental/README.ejs +4 -4
  175. package/src/utils/templates/incremental/README.es.ejs +4 -4
  176. package/src/utils/templates/isolated/01-hello-world/README.es.md +26 -26
  177. package/src/utils/templates/isolated/01-hello-world/README.md +26 -26
  178. package/src/utils/templates/isolated/README.ejs +4 -4
  179. package/src/utils/templates/isolated/README.es.ejs +4 -4
  180. package/src/utils/templates/no-grading/README.ejs +4 -4
  181. package/src/utils/templates/no-grading/README.es.ejs +4 -4
  182. package/src/utils/validators.ts +18 -18
@@ -1,60 +1,62 @@
1
- import { IExercise } from "./exercise-obj";
2
- export declare type TGrading = "isolated" | "incremental" | "no-grading";
3
- export declare type TMode = "preview" | "standalone";
4
- export declare type TConfigAction = "test" | "build" | "tutorial" | "reset";
5
- export declare type TConfigObjAttributes = "config" | "exercises" | "grading";
6
- export declare type TCompiler = "webpack" | "vanillajs" | "vue" | "react" | "css" | "html";
7
- export interface IConfigPath {
8
- base: string;
9
- }
10
- export interface IEditor {
11
- mode?: TMode;
12
- version: string;
13
- agent?: string;
14
- }
15
- export interface TEntries {
16
- python3?: string;
17
- html?: string;
18
- node?: string;
19
- react?: string;
20
- java?: string;
21
- }
22
- export interface IConfig {
23
- port?: string;
24
- repository?: string;
25
- description?: string;
26
- slug?: string;
27
- dirPath: string;
28
- preview?: string;
29
- entries: TEntries;
30
- grading: TGrading;
31
- configPath: string;
32
- translations: Array<string>;
33
- outputPath?: string;
34
- editor: IEditor;
35
- language: string;
36
- title: string;
37
- duration: number;
38
- difficulty?: string;
39
- exercisesPath: string;
40
- disableGrading: boolean;
41
- actions: Array<string>;
42
- autoPlay: boolean;
43
- projectType?: string;
44
- contact?: string;
45
- disabledActions?: Array<TConfigAction>;
46
- compiler: TCompiler;
47
- publicPath: string;
48
- publicUrl?: string;
49
- skills: Array<string>;
50
- runHook: (...agrs: Array<any>) => void;
51
- testingFinishedCallback: (arg: any | undefined) => void;
52
- }
53
- export interface IConfigObj {
54
- session?: number;
55
- currentExercise?: any;
56
- config?: IConfig;
57
- exercises?: Array<IExercise>;
58
- confPath?: IConfigPath;
59
- address?: string;
60
- }
1
+ import { IExercise } from "./exercise-obj";
2
+ export declare type TGrading = "isolated" | "incremental" | "no-grading";
3
+ export declare type TMode = "preview" | "standalone";
4
+ export declare type TConfigAction = "test" | "build" | "tutorial" | "reset";
5
+ export declare type TConfigObjAttributes = "config" | "exercises" | "grading";
6
+ export declare type TCompiler = "webpack" | "vanillajs" | "vue" | "react" | "css" | "html";
7
+ export interface IConfigPath {
8
+ base: string;
9
+ }
10
+ export interface IEditor {
11
+ mode?: TMode;
12
+ version: string;
13
+ agent?: string;
14
+ }
15
+ export interface TEntries {
16
+ python3?: string;
17
+ html?: string;
18
+ node?: string;
19
+ react?: string;
20
+ java?: string;
21
+ }
22
+ export interface IConfig {
23
+ port?: string;
24
+ repository?: string;
25
+ description?: string;
26
+ slug?: string;
27
+ dirPath: string;
28
+ preview?: string;
29
+ entries: TEntries;
30
+ grading: TGrading;
31
+ configPath: string;
32
+ translations: Array<string>;
33
+ outputPath?: string;
34
+ editor: IEditor;
35
+ language: string;
36
+ title: string;
37
+ duration: number;
38
+ difficulty?: string;
39
+ exercisesPath: string;
40
+ disableGrading: boolean;
41
+ actions: Array<string>;
42
+ autoPlay: boolean;
43
+ projectType?: string;
44
+ contact?: string;
45
+ disabledActions?: Array<TConfigAction>;
46
+ compiler: TCompiler;
47
+ publicPath: string;
48
+ publicUrl?: string;
49
+ bugsLink?: string;
50
+ videoSolutions?: boolean;
51
+ skills: Array<string>;
52
+ runHook: (...agrs: Array<any>) => void;
53
+ testingFinishedCallback: (arg: any | undefined) => void;
54
+ }
55
+ export interface IConfigObj {
56
+ session?: number;
57
+ currentExercise?: any;
58
+ config?: IConfig;
59
+ exercises?: Array<IExercise>;
60
+ confPath?: IConfigPath;
61
+ address?: string;
62
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,11 +1,11 @@
1
- interface ILinks {
2
- error: number;
3
- total: number;
4
- }
5
- export interface ICounter {
6
- images: ILinks;
7
- links: ILinks;
8
- exercises: number;
9
- readmeFiles: number;
10
- }
11
- export {};
1
+ interface ILinks {
2
+ error: number;
3
+ total: number;
4
+ }
5
+ export interface ICounter {
6
+ images: ILinks;
7
+ links: ILinks;
8
+ exercises: number;
9
+ readmeFiles: number;
10
+ }
11
+ export {};
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,15 +1,15 @@
1
- export interface ISolution {
2
- video?: string;
3
- message: string;
4
- slug?: string;
5
- gif: string;
6
- }
7
- export interface IError extends TypeError {
8
- status?: number;
9
- type?: "validation-error" | "not-found-error" | "compiler-error" | "testing-error" | "auth-error" | "internal-error";
10
- slug?: string;
11
- video?: string;
12
- message: string;
13
- gif?: string;
14
- stdout?: string;
15
- }
1
+ export interface ISolution {
2
+ video?: string;
3
+ message: string;
4
+ slug?: string;
5
+ gif: string;
6
+ }
7
+ export interface IError extends TypeError {
8
+ status?: number;
9
+ type?: "validation-error" | "not-found-error" | "compiler-error" | "testing-error" | "auth-error" | "internal-error";
10
+ slug?: string;
11
+ video?: string;
12
+ message: string;
13
+ gif?: string;
14
+ stdout?: string;
15
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,27 +1,27 @@
1
- /// <reference types="node" />
2
- import { IFile } from "./file";
3
- import { IConfig } from "./config";
4
- import { ISocket } from "./socket";
5
- export interface IExercise {
6
- position?: number;
7
- files: Array<IFile>;
8
- slug: string;
9
- path: string;
10
- done: boolean;
11
- language?: string | null;
12
- entry?: string | null;
13
- graded?: boolean;
14
- translations?: {
15
- [key: string]: string;
16
- };
17
- title: string;
18
- getReadme?: (lang: string | null) => any;
19
- getFile?: (name: string) => string | Buffer;
20
- saveFile?: (name: string, content: string) => void;
21
- getTestReport?: () => any;
22
- test?: (sessionConfig: any, config: IConfig, socket: ISocket) => void;
23
- }
24
- export interface IExerciseData {
25
- exerciseSlug: string;
26
- files: string[];
27
- }
1
+ /// <reference types="node" />
2
+ import { IFile } from "./file";
3
+ import { IConfig } from "./config";
4
+ import { ISocket } from "./socket";
5
+ export interface IExercise {
6
+ position?: number;
7
+ files: Array<IFile>;
8
+ slug: string;
9
+ path: string;
10
+ done: boolean;
11
+ language?: string | null;
12
+ entry?: string | null;
13
+ graded?: boolean;
14
+ translations?: {
15
+ [key: string]: string;
16
+ };
17
+ title: string;
18
+ getReadme?: (lang: string | null) => any;
19
+ getFile?: (name: string) => string | Buffer;
20
+ saveFile?: (name: string, content: string) => void;
21
+ getTestReport?: () => any;
22
+ test?: (sessionConfig: any, config: IConfig, socket: ISocket) => void;
23
+ }
24
+ export interface IExerciseData {
25
+ exerciseSlug: string;
26
+ files: string[];
27
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,5 +1,5 @@
1
- export interface IFile {
2
- path: string;
3
- name: string;
4
- hidden: boolean;
5
- }
1
+ export interface IFile {
2
+ path: string;
3
+ name: string;
4
+ hidden: boolean;
5
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,17 +1,17 @@
1
- interface IFindingOption {
2
- content: string;
3
- absUrl: string;
4
- mdUrl: string;
5
- relUrl: string;
6
- }
7
- interface ILinks {
8
- [key: string]: IFindingOption;
9
- }
10
- export interface IFindings {
11
- relativeImages?: ILinks;
12
- externalImages?: ILinks;
13
- markdownLinks?: ILinks;
14
- url?: ILinks;
15
- uploadcare?: ILinks;
16
- }
17
- export {};
1
+ interface IFindingOption {
2
+ content: string;
3
+ absUrl: string;
4
+ mdUrl: string;
5
+ relUrl: string;
6
+ }
7
+ interface ILinks {
8
+ [key: string]: IFindingOption;
9
+ }
10
+ export interface IFindings {
11
+ relativeImages?: ILinks;
12
+ externalImages?: ILinks;
13
+ markdownLinks?: ILinks;
14
+ url?: ILinks;
15
+ uploadcare?: ILinks;
16
+ }
17
+ export {};
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,10 +1,10 @@
1
- export interface IStartFlags {
2
- port?: string | unknown;
3
- host?: string | unknown;
4
- disableGrading?: boolean | unknown;
5
- watch?: boolean | unknown;
6
- editor?: string | unknown;
7
- version?: string | unknown;
8
- grading?: string | unknown;
9
- debug?: boolean | unknown;
10
- }
1
+ export interface IStartFlags {
2
+ port?: string | unknown;
3
+ host?: string | unknown;
4
+ disableGrading?: boolean | unknown;
5
+ watch?: boolean | unknown;
6
+ editor?: string | unknown;
7
+ version?: string | unknown;
8
+ grading?: string | unknown;
9
+ debug?: boolean | unknown;
10
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,11 +1,11 @@
1
- interface IAttributes {
2
- intro: string;
3
- tutorial: string;
4
- }
5
- export interface IFrontmatter {
6
- attributes?: IAttributes;
7
- body?: string;
8
- bodyBegin?: number;
9
- frontmatter?: string;
10
- }
11
- export {};
1
+ interface IAttributes {
2
+ intro: string;
3
+ tutorial: string;
4
+ }
5
+ export interface IFrontmatter {
6
+ attributes?: IAttributes;
7
+ body?: string;
8
+ bodyBegin?: number;
9
+ frontmatter?: string;
10
+ }
11
+ export {};
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,16 +1,16 @@
1
- import { Server } from 'socket.io';
2
- import { IConfigObj } from './config';
3
- export declare type TFile = string;
4
- export interface IGitpodData {
5
- files: Array<TFile>;
6
- }
7
- export interface IGitpod {
8
- socket: Server | null;
9
- config: IConfigObj | null;
10
- initialized: boolean;
11
- hasGPCommand: boolean;
12
- init: (config?: IConfigObj) => void;
13
- openFiles: (files: Array<TFile>) => Promise<boolean | undefined>;
14
- setup: (config?: IConfigObj) => void;
15
- autosave: (value: string) => void;
16
- }
1
+ import { Server } from 'socket.io';
2
+ import { IConfigObj } from './config';
3
+ export declare type TFile = string;
4
+ export interface IGitpodData {
5
+ files: Array<TFile>;
6
+ }
7
+ export interface IGitpod {
8
+ socket: Server | null;
9
+ config: IConfigObj | null;
10
+ initialized: boolean;
11
+ hasGPCommand: boolean;
12
+ init: (config?: IConfigObj) => void;
13
+ openFiles: (files: Array<TFile>) => Promise<boolean | undefined>;
14
+ setup: (config?: IConfigObj) => void;
15
+ autosave: (value: string) => void;
16
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,4 @@
1
- export interface ILanguage {
2
- title: string;
3
- slug: string;
4
- }
1
+ export interface ILanguage {
2
+ title: string;
3
+ slug: string;
4
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,7 +1,7 @@
1
- export interface IPackage {
2
- title: string;
3
- slug: string;
4
- difficulty: string;
5
- downloads: string;
6
- skills: Array<any>;
7
- }
1
+ export interface IPackage {
2
+ title: string;
3
+ slug: string;
4
+ difficulty: string;
5
+ downloads: string;
6
+ skills: Array<any>;
7
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,16 +1,16 @@
1
- import { IConfig } from "./config";
2
- import { IExercise } from "./exercise-obj";
3
- export interface IPluginConfig {
4
- language: string;
5
- compile?: {
6
- run: () => void;
7
- validate: (args: IValidate) => boolean;
8
- dependencies: string[];
9
- };
10
- test?: () => void;
11
- }
12
- interface IValidate {
13
- exercise: IExercise;
14
- configuration: IConfig;
15
- }
16
- export {};
1
+ import { IConfig } from "./config";
2
+ import { IExercise } from "./exercise-obj";
3
+ export interface IPluginConfig {
4
+ language: string;
5
+ compile?: {
6
+ run: () => void;
7
+ validate: (args: IValidate) => boolean;
8
+ dependencies: string[];
9
+ };
10
+ test?: () => void;
11
+ }
12
+ interface IValidate {
13
+ exercise: IExercise;
14
+ configuration: IConfig;
15
+ }
16
+ export {};
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,23 +1,23 @@
1
- import { IConfig, IConfigObj } from './config';
2
- export interface IPayload {
3
- email: string;
4
- }
5
- export interface IStartProps {
6
- token: string;
7
- payload: IPayload | null;
8
- }
9
- export interface ISession {
10
- sessionStarted: boolean;
11
- token: string | null;
12
- config: IConfig | null;
13
- currentCohort: null;
14
- initialize: () => Promise<boolean>;
15
- setPayload: (value: IPayload) => Promise<boolean>;
16
- getPayload: () => Promise<any>;
17
- isActive: () => boolean;
18
- get: (config?: IConfigObj) => Promise<any>;
19
- login: () => Promise<void>;
20
- sync: () => Promise<void>;
21
- start: ({ token, payload }: IStartProps) => Promise<void>;
22
- destroy: () => Promise<void>;
23
- }
1
+ import { IConfig, IConfigObj } from './config';
2
+ export interface IPayload {
3
+ email: string;
4
+ }
5
+ export interface IStartProps {
6
+ token: string;
7
+ payload: IPayload | null;
8
+ }
9
+ export interface ISession {
10
+ sessionStarted: boolean;
11
+ token: string | null;
12
+ config: IConfig | null;
13
+ currentCohort: null;
14
+ initialize: () => Promise<boolean>;
15
+ setPayload: (value: IPayload) => Promise<boolean>;
16
+ getPayload: () => Promise<any>;
17
+ isActive: () => boolean;
18
+ get: (config?: IConfigObj) => Promise<any>;
19
+ login: () => Promise<void>;
20
+ sync: () => Promise<void>;
21
+ start: ({ token, payload }: IStartProps) => Promise<void>;
22
+ destroy: () => Promise<void>;
23
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,31 +1,31 @@
1
- import { IConfig } from './config';
2
- import { Server } from 'socket.io';
3
- import { DefaultEventsMap } from 'socket.io/dist/typed-events';
4
- import { TAction, ICallback } from './action';
5
- import { TStatus } from './status';
6
- export declare type TPossibleActions = 'build' | 'test' | 'reset' | 'tutorial';
7
- export interface ISocket {
8
- socket: Server<DefaultEventsMap, DefaultEventsMap, DefaultEventsMap, any> | null;
9
- config: IConfig | null;
10
- allowedActions: Array<TPossibleActions>;
11
- actionCallBacks: {
12
- [key: string]: ICallback;
13
- };
14
- possibleActions: Array<TPossibleActions>;
15
- isTestingEnvironment: boolean;
16
- addAllowed: (actions: any) => void;
17
- removeAllowed: (actions: any) => void;
18
- start: (config: IConfig, server: any, isTestingEnvironment: boolean) => void;
19
- on: (action: any, callBack: any) => void;
20
- clean: (_: string, logs: Array<any>) => void;
21
- ask: (questions: Array<string>) => void;
22
- reload: (files: Array<string> | null, exercises: Array<string>) => void;
23
- openWindow: (id: string) => void;
24
- log: (status: TStatus, messages?: string | Array<string>, report?: Array<string>, data?: any) => void;
25
- emit: (action: TAction, status: TStatus | string, logs: string | Array<string>, inputs?: Array<string>, report?: Array<string>, data?: any) => void;
26
- ready: (message: string) => void;
27
- error: (type: any, stdout: string) => void;
28
- fatal: (msg: string) => void;
29
- success: (type: any, stdout: string) => void;
30
- onTestingFinished: (obj: any) => void;
31
- }
1
+ import { IConfig } from './config';
2
+ import { Server } from 'socket.io';
3
+ import { DefaultEventsMap } from 'socket.io/dist/typed-events';
4
+ import { TAction, ICallback } from './action';
5
+ import { TStatus } from './status';
6
+ export declare type TPossibleActions = 'build' | 'test' | 'reset' | 'tutorial';
7
+ export interface ISocket {
8
+ socket: Server<DefaultEventsMap, DefaultEventsMap, DefaultEventsMap, any> | null;
9
+ config: IConfig | null;
10
+ allowedActions: Array<TPossibleActions>;
11
+ actionCallBacks: {
12
+ [key: string]: ICallback;
13
+ };
14
+ possibleActions: Array<TPossibleActions>;
15
+ isTestingEnvironment: boolean;
16
+ addAllowed: (actions: any) => void;
17
+ removeAllowed: (actions: any) => void;
18
+ start: (config: IConfig, server: any, isTestingEnvironment: boolean) => void;
19
+ on: (action: any, callBack: any) => void;
20
+ clean: (_: string, logs: Array<any>) => void;
21
+ ask: (questions: Array<string>) => void;
22
+ reload: (files: Array<string> | null, exercises: Array<string>) => void;
23
+ openWindow: (id: string) => void;
24
+ log: (status: TStatus, messages?: string | Array<string>, report?: Array<string>, data?: any) => void;
25
+ emit: (action: TAction, status: TStatus | string, logs: string | Array<string>, inputs?: Array<string>, report?: Array<string>, data?: any) => void;
26
+ ready: (message: string) => void;
27
+ error: (type: any, stdout: string) => void;
28
+ fatal: (msg: string) => void;
29
+ success: (type: any, stdout: string) => void;
30
+ onTestingFinished: (obj: any) => void;
31
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1 @@
1
- export declare type TStatus = 'ready' | 'internal-error' | 'compiler-success' | 'testing-success' | 'compiling' | 'testing' | 'start_exercise' | 'initializing' | 'configuration_loaded' | 'connection_ended' | 'reset_exercise' | 'open_files' | 'open_window' | 'instructions_closed';
1
+ export declare type TStatus = 'ready' | 'internal-error' | 'compiler-success' | 'testing-success' | 'compiling' | 'testing' | 'start_exercise' | 'initializing' | 'configuration_loaded' | 'connection_ended' | 'reset_exercise' | 'open_files' | 'open_window' | 'instructions_closed';
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1 @@
1
- export declare type TSuccessType = 'compiler-success' | 'testing-success';
1
+ export declare type TSuccessType = 'compiler-success' | 'testing-success';
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });