@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,19 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chalk = require("chalk");
4
- exports.default = {
5
- // _debug: true,
6
- _debug: process.env.DEBUG === 'true',
7
- startDebug: function () {
8
- this._debug = true;
9
- },
10
- log: (msg, ...args) => console.log(chalk.gray(msg), ...args),
11
- error: (msg, ...args) => console.log(chalk.red('⨉ ' + msg), ...args),
12
- success: (msg, ...args) => console.log(chalk.green('✓ ' + msg), ...args),
13
- info: (msg, ...args) => console.log(chalk.blue('ⓘ ' + msg), ...args),
14
- help: (msg) => console.log(`${chalk.white.bold('⚠ help:')} ${chalk.white(msg)}`),
15
- debug(...args) {
16
- this._debug && console.log(chalk.magentaBright('⚠ debug: '), args);
17
- },
18
- warning: (msg) => console.log(`${chalk.yellow('⚠ warning:')} ${chalk.yellow(msg)}`),
19
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const chalk = require("chalk");
4
+ exports.default = {
5
+ // _debug: true,
6
+ _debug: process.env.DEBUG === 'true',
7
+ startDebug: function () {
8
+ this._debug = true;
9
+ },
10
+ log: (msg, ...args) => console.log(chalk.gray(msg), ...args),
11
+ error: (msg, ...args) => console.log(chalk.red('⨉ ' + msg), ...args),
12
+ success: (msg, ...args) => console.log(chalk.green('✓ ' + msg), ...args),
13
+ info: (msg, ...args) => console.log(chalk.blue('ⓘ ' + msg), ...args),
14
+ help: (msg) => console.log(`${chalk.white.bold('⚠ help:')} ${chalk.white(msg)}`),
15
+ debug(...args) {
16
+ this._debug && console.log(chalk.magentaBright('⚠ debug: '), args);
17
+ },
18
+ warning: (msg) => console.log(`${chalk.yellow('⚠ warning:')} ${chalk.yellow(msg)}`),
19
+ };
@@ -1,17 +1,17 @@
1
- import { ISolution, IError } from '../models/errors';
2
- export declare const getSolution: (slug?: string | undefined) => ISolution;
3
- export declare const ValidationError: (error: IError | string) => IError;
4
- export declare const NotFoundError: (error: IError | string) => IError;
5
- export declare const CompilerError: (error: IError | string) => IError;
6
- export declare const TestingError: (error: IError | string) => IError;
7
- export declare const AuthError: (error: IError | string) => IError;
8
- export declare const InternalError: (error: IError | string) => IError;
9
- declare const _default: {
10
- ValidationError: (error: string | IError) => IError;
11
- CompilerError: (error: string | IError) => IError;
12
- TestingError: (error: string | IError) => IError;
13
- NotFoundError: (error: string | IError) => IError;
14
- InternalError: (error: string | IError) => IError;
15
- AuthError: (error: string | IError) => IError;
16
- };
17
- export default _default;
1
+ import { ISolution, IError } from '../models/errors';
2
+ export declare const getSolution: (slug?: string | undefined) => ISolution;
3
+ export declare const ValidationError: (error: IError | string) => IError;
4
+ export declare const NotFoundError: (error: IError | string) => IError;
5
+ export declare const CompilerError: (error: IError | string) => IError;
6
+ export declare const TestingError: (error: IError | string) => IError;
7
+ export declare const AuthError: (error: IError | string) => IError;
8
+ export declare const InternalError: (error: IError | string) => IError;
9
+ declare const _default: {
10
+ ValidationError: (error: string | IError) => IError;
11
+ CompilerError: (error: string | IError) => IError;
12
+ TestingError: (error: string | IError) => IError;
13
+ NotFoundError: (error: string | IError) => IError;
14
+ InternalError: (error: string | IError) => IError;
15
+ AuthError: (error: string | IError) => IError;
16
+ };
17
+ export default _default;
@@ -1,100 +1,100 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InternalError = exports.AuthError = exports.TestingError = exports.CompilerError = exports.NotFoundError = exports.ValidationError = exports.getSolution = void 0;
4
- const console_1 = require("./console");
5
- // eslint-disable-next-line
6
- const fetch = require("node-fetch");
7
- let solutions = null;
8
- const uknown = {
9
- video: 'https://www.youtube.com/watch?v=gD1Sa99GiE4',
10
- message: 'Uknown internal error',
11
- slug: 'uknown',
12
- gif: 'https://github.com/breatheco-de/breathecode-cli/blob/master/docs/errors/uknown.gif?raw=true',
13
- };
14
- exports.getSolution = (slug) => {
15
- if (!slug) {
16
- console_1.default.debug('Getting solution templates from the learnpack repository');
17
- }
18
- else {
19
- console_1.default.debug(`Getting solution for ${slug}`, solutions);
20
- }
21
- if (!solutions) {
22
- console_1.default.debug('Fetching for errors.json on github');
23
- fetch('https://raw.githubusercontent.com/breatheco-de/breathecode-cli/master/docs/errors/errors.json')
24
- .then((r) => r.json())
25
- .then(function (_s) {
26
- solutions = _s;
27
- });
28
- return uknown;
29
- }
30
- return typeof solutions[slug || ''] === 'undefined' || !slug ?
31
- uknown :
32
- solutions[slug];
33
- };
34
- exports.ValidationError = (error) => {
35
- const message = error.message || error;
36
- const _err = new Error(message);
37
- _err.status = 400;
38
- _err.type = 'validation-error';
39
- const sol = exports.getSolution(error.slug);
40
- _err.video = sol.video;
41
- _err.gif = sol.gif;
42
- _err.message = typeof message === 'string' ? message : sol.message;
43
- return _err;
44
- };
45
- exports.NotFoundError = (error) => {
46
- const message = error.message || error;
47
- const _err = new Error(message);
48
- _err.status = 400;
49
- _err.type = 'not-found-error';
50
- const sol = exports.getSolution(error.slug);
51
- _err.video = sol.video;
52
- _err.gif = sol.gif;
53
- _err.message = typeof message === 'string' ? message : sol.message;
54
- return _err;
55
- };
56
- exports.CompilerError = (error) => {
57
- const message = error.message || error;
58
- const _err = new Error(message);
59
- _err.status = 400;
60
- _err.type = 'compiler-error';
61
- const sol = exports.getSolution(error.slug);
62
- _err.video = sol.video;
63
- _err.gif = sol.gif;
64
- _err.message = typeof message === 'string' ? message : sol.message;
65
- return _err;
66
- };
67
- exports.TestingError = (error) => {
68
- const message = error.message || error;
69
- const _err = new Error(message);
70
- _err.status = 400;
71
- _err.type = 'testing-error';
72
- return _err;
73
- };
74
- exports.AuthError = (error) => {
75
- const message = error.message || error;
76
- const _err = new Error(message);
77
- _err.status = 403;
78
- _err.type = 'auth-error';
79
- return _err;
80
- };
81
- exports.InternalError = (error) => {
82
- const message = error.message || error;
83
- const _err = new Error(message);
84
- _err.status = 500;
85
- _err.type = 'internal-error';
86
- const sol = exports.getSolution(error.slug);
87
- _err.video = sol.video;
88
- _err.gif = sol.gif;
89
- _err.message = typeof message === 'string' ? message : sol.message;
90
- return _err;
91
- };
92
- exports.getSolution();
93
- exports.default = {
94
- ValidationError: exports.ValidationError,
95
- CompilerError: exports.CompilerError,
96
- TestingError: exports.TestingError,
97
- NotFoundError: exports.NotFoundError,
98
- InternalError: exports.InternalError,
99
- AuthError: exports.AuthError,
100
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InternalError = exports.AuthError = exports.TestingError = exports.CompilerError = exports.NotFoundError = exports.ValidationError = exports.getSolution = void 0;
4
+ const console_1 = require("./console");
5
+ // eslint-disable-next-line
6
+ const fetch = require("node-fetch");
7
+ let solutions = null;
8
+ const uknown = {
9
+ video: 'https://www.youtube.com/watch?v=gD1Sa99GiE4',
10
+ message: 'Uknown internal error',
11
+ slug: 'uknown',
12
+ gif: 'https://github.com/breatheco-de/breathecode-cli/blob/master/docs/errors/uknown.gif?raw=true',
13
+ };
14
+ exports.getSolution = (slug) => {
15
+ if (!slug) {
16
+ console_1.default.debug('Getting solution templates from the learnpack repository');
17
+ }
18
+ else {
19
+ console_1.default.debug(`Getting solution for ${slug}`, solutions);
20
+ }
21
+ if (!solutions) {
22
+ console_1.default.debug('Fetching for errors.json on github');
23
+ fetch('https://raw.githubusercontent.com/breatheco-de/breathecode-cli/master/docs/errors/errors.json')
24
+ .then((r) => r.json())
25
+ .then(function (_s) {
26
+ solutions = _s;
27
+ });
28
+ return uknown;
29
+ }
30
+ return typeof solutions[slug || ''] === 'undefined' || !slug ?
31
+ uknown :
32
+ solutions[slug];
33
+ };
34
+ exports.ValidationError = (error) => {
35
+ const message = error.message || error;
36
+ const _err = new Error(message);
37
+ _err.status = 400;
38
+ _err.type = 'validation-error';
39
+ const sol = exports.getSolution(error.slug);
40
+ _err.video = sol.video;
41
+ _err.gif = sol.gif;
42
+ _err.message = typeof message === 'string' ? message : sol.message;
43
+ return _err;
44
+ };
45
+ exports.NotFoundError = (error) => {
46
+ const message = error.message || error;
47
+ const _err = new Error(message);
48
+ _err.status = 400;
49
+ _err.type = 'not-found-error';
50
+ const sol = exports.getSolution(error.slug);
51
+ _err.video = sol.video;
52
+ _err.gif = sol.gif;
53
+ _err.message = typeof message === 'string' ? message : sol.message;
54
+ return _err;
55
+ };
56
+ exports.CompilerError = (error) => {
57
+ const message = error.message || error;
58
+ const _err = new Error(message);
59
+ _err.status = 400;
60
+ _err.type = 'compiler-error';
61
+ const sol = exports.getSolution(error.slug);
62
+ _err.video = sol.video;
63
+ _err.gif = sol.gif;
64
+ _err.message = typeof message === 'string' ? message : sol.message;
65
+ return _err;
66
+ };
67
+ exports.TestingError = (error) => {
68
+ const message = error.message || error;
69
+ const _err = new Error(message);
70
+ _err.status = 400;
71
+ _err.type = 'testing-error';
72
+ return _err;
73
+ };
74
+ exports.AuthError = (error) => {
75
+ const message = error.message || error;
76
+ const _err = new Error(message);
77
+ _err.status = 403;
78
+ _err.type = 'auth-error';
79
+ return _err;
80
+ };
81
+ exports.InternalError = (error) => {
82
+ const message = error.message || error;
83
+ const _err = new Error(message);
84
+ _err.status = 500;
85
+ _err.type = 'internal-error';
86
+ const sol = exports.getSolution(error.slug);
87
+ _err.video = sol.video;
88
+ _err.gif = sol.gif;
89
+ _err.message = typeof message === 'string' ? message : sol.message;
90
+ return _err;
91
+ };
92
+ exports.getSolution();
93
+ exports.default = {
94
+ ValidationError: exports.ValidationError,
95
+ CompilerError: exports.CompilerError,
96
+ TestingError: exports.TestingError,
97
+ NotFoundError: exports.NotFoundError,
98
+ InternalError: exports.InternalError,
99
+ AuthError: exports.AuthError,
100
+ };
@@ -1,9 +1,9 @@
1
- import { IExercise } from "../models/exercise-obj";
2
- declare class ExercisesQueue {
3
- exercises: IExercise[];
4
- constructor(exercises: any);
5
- pop(): IExercise | undefined;
6
- isEmpty(): boolean;
7
- size(): number;
8
- }
9
- export default ExercisesQueue;
1
+ import { IExercise } from "../models/exercise-obj";
2
+ declare class ExercisesQueue {
3
+ exercises: IExercise[];
4
+ constructor(exercises: any);
5
+ pop(): IExercise | undefined;
6
+ isEmpty(): boolean;
7
+ size(): number;
8
+ }
9
+ export default ExercisesQueue;
@@ -1,38 +1,38 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class Exercise {
4
- constructor(exercise) {
5
- this.exercise = exercise;
6
- }
7
- test(sessionConfig, config, socket) {
8
- if (this.exercise.language) {
9
- socket.log("testing", `Testing exercise ${this.exercise.slug} using ${this.exercise.language} engine`);
10
- sessionConfig.runHook("action", {
11
- action: "test",
12
- socket,
13
- configuration: config,
14
- exercise: this.exercise,
15
- });
16
- }
17
- else {
18
- socket.onTestingFinished({ result: "success" });
19
- }
20
- }
21
- }
22
- class ExercisesQueue {
23
- constructor(exercises) {
24
- this.exercises = exercises.map((exercise) => {
25
- return new Exercise(exercise);
26
- });
27
- }
28
- pop() {
29
- return this.exercises.shift();
30
- }
31
- isEmpty() {
32
- return this.size() === 0;
33
- }
34
- size() {
35
- return this.exercises.length;
36
- }
37
- }
38
- exports.default = ExercisesQueue;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class Exercise {
4
+ constructor(exercise) {
5
+ this.exercise = exercise;
6
+ }
7
+ test(sessionConfig, config, socket) {
8
+ if (this.exercise.language) {
9
+ socket.log("testing", `Testing exercise ${this.exercise.slug} using ${this.exercise.language} engine`);
10
+ sessionConfig.runHook("action", {
11
+ action: "test",
12
+ socket,
13
+ configuration: config,
14
+ exercise: this.exercise,
15
+ });
16
+ }
17
+ else {
18
+ socket.onTestingFinished({ result: "success" });
19
+ }
20
+ }
21
+ }
22
+ class ExercisesQueue {
23
+ constructor(exercises) {
24
+ this.exercises = exercises.map((exercise) => {
25
+ return new Exercise(exercise);
26
+ });
27
+ }
28
+ pop() {
29
+ return this.exercises.shift();
30
+ }
31
+ isEmpty() {
32
+ return this.size() === 0;
33
+ }
34
+ size() {
35
+ return this.exercises.length;
36
+ }
37
+ }
38
+ exports.default = ExercisesQueue;
@@ -1,40 +1,40 @@
1
- declare const _default: {
2
- events: {
3
- START_EXERCISE: string;
4
- INIT: string;
5
- RUNNING: string;
6
- END: string;
7
- RESET_EXERCISE: string;
8
- OPEN_FILES: string;
9
- OPEN_WINDOW: string;
10
- INSTRUCTIONS_CLOSED: string;
11
- };
12
- dispatcher: (opts?: any) => {
13
- enqueue: (name: string, data?: any) => void;
14
- events: {
15
- START_EXERCISE: string;
16
- INIT: string;
17
- RUNNING: string;
18
- END: string;
19
- RESET_EXERCISE: string;
20
- OPEN_FILES: string;
21
- OPEN_WINDOW: string;
22
- INSTRUCTIONS_CLOSED: string;
23
- };
24
- };
25
- listener: (opts?: any) => {
26
- onPull: (callback: (T?: any) => any) => boolean;
27
- onReset: (callback: (T?: any) => any) => boolean;
28
- events: {
29
- START_EXERCISE: string;
30
- INIT: string;
31
- RUNNING: string;
32
- END: string;
33
- RESET_EXERCISE: string;
34
- OPEN_FILES: string;
35
- OPEN_WINDOW: string;
36
- INSTRUCTIONS_CLOSED: string;
37
- };
38
- };
39
- };
40
- export default _default;
1
+ declare const _default: {
2
+ events: {
3
+ START_EXERCISE: string;
4
+ INIT: string;
5
+ RUNNING: string;
6
+ END: string;
7
+ RESET_EXERCISE: string;
8
+ OPEN_FILES: string;
9
+ OPEN_WINDOW: string;
10
+ INSTRUCTIONS_CLOSED: string;
11
+ };
12
+ dispatcher: (opts?: any) => {
13
+ enqueue: (name: string, data?: any) => void;
14
+ events: {
15
+ START_EXERCISE: string;
16
+ INIT: string;
17
+ RUNNING: string;
18
+ END: string;
19
+ RESET_EXERCISE: string;
20
+ OPEN_FILES: string;
21
+ OPEN_WINDOW: string;
22
+ INSTRUCTIONS_CLOSED: string;
23
+ };
24
+ };
25
+ listener: (opts?: any) => {
26
+ onPull: (callback: (T?: any) => any) => boolean;
27
+ onReset: (callback: (T?: any) => any) => boolean;
28
+ events: {
29
+ START_EXERCISE: string;
30
+ INIT: string;
31
+ RUNNING: string;
32
+ END: string;
33
+ RESET_EXERCISE: string;
34
+ OPEN_FILES: string;
35
+ OPEN_WINDOW: string;
36
+ INSTRUCTIONS_CLOSED: string;
37
+ };
38
+ };
39
+ };
40
+ export default _default;