@learnpack/learnpack 4.0.10 → 4.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. package/README.md +25 -10
  2. package/lib/commands/audit.d.ts +6 -6
  3. package/lib/commands/audit.js +327 -327
  4. package/lib/commands/build.d.ts +11 -0
  5. package/lib/commands/build.js +160 -0
  6. package/lib/commands/clean.d.ts +8 -8
  7. package/lib/commands/clean.js +22 -22
  8. package/lib/commands/download.d.ts +13 -13
  9. package/lib/commands/download.js +52 -52
  10. package/lib/commands/init.d.ts +9 -9
  11. package/lib/commands/init.js +127 -127
  12. package/lib/commands/login.d.ts +14 -14
  13. package/lib/commands/login.js +34 -34
  14. package/lib/commands/logout.d.ts +14 -14
  15. package/lib/commands/logout.js +34 -34
  16. package/lib/commands/publish.d.ts +14 -14
  17. package/lib/commands/publish.js +79 -79
  18. package/lib/commands/start.d.ts +7 -7
  19. package/lib/commands/start.js +252 -250
  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 +47 -48
  27. package/lib/managers/config/defaults.js +51 -51
  28. package/lib/managers/config/exercise.d.ts +36 -36
  29. package/lib/managers/config/exercise.js +243 -236
  30. package/lib/managers/config/index.d.ts +3 -3
  31. package/lib/managers/config/index.js +464 -459
  32. package/lib/managers/file.d.ts +14 -14
  33. package/lib/managers/file.js +190 -184
  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 +5 -6
  37. package/lib/managers/server/index.js +58 -58
  38. package/lib/managers/server/routes.d.ts +4 -4
  39. package/lib/managers/server/routes.js +228 -220
  40. package/lib/managers/session.d.ts +3 -3
  41. package/lib/managers/session.js +125 -125
  42. package/lib/managers/socket.d.ts +3 -3
  43. package/lib/managers/socket.js +188 -186
  44. package/lib/managers/telemetry.d.ts +74 -74
  45. package/lib/managers/telemetry.js +215 -214
  46. package/lib/managers/test.js +84 -84
  47. package/lib/models/action.d.ts +2 -2
  48. package/lib/models/action.js +2 -2
  49. package/lib/models/audit.d.ts +15 -15
  50. package/lib/models/audit.js +2 -2
  51. package/lib/models/config-manager.d.ts +21 -21
  52. package/lib/models/config-manager.js +2 -2
  53. package/lib/models/config.d.ts +86 -86
  54. package/lib/models/config.js +2 -2
  55. package/lib/models/counter.d.ts +11 -11
  56. package/lib/models/counter.js +2 -2
  57. package/lib/models/errors.d.ts +15 -15
  58. package/lib/models/errors.js +2 -2
  59. package/lib/models/exercise-obj.d.ts +29 -30
  60. package/lib/models/exercise-obj.js +2 -2
  61. package/lib/models/file.d.ts +5 -5
  62. package/lib/models/file.js +2 -2
  63. package/lib/models/findings.d.ts +17 -17
  64. package/lib/models/findings.js +2 -2
  65. package/lib/models/flags.d.ts +10 -10
  66. package/lib/models/flags.js +2 -2
  67. package/lib/models/front-matter.d.ts +11 -11
  68. package/lib/models/front-matter.js +2 -2
  69. package/lib/models/gitpod-data.d.ts +16 -16
  70. package/lib/models/gitpod-data.js +2 -2
  71. package/lib/models/language.d.ts +4 -4
  72. package/lib/models/language.js +2 -2
  73. package/lib/models/package.d.ts +7 -7
  74. package/lib/models/package.js +2 -2
  75. package/lib/models/plugin-config.d.ts +16 -16
  76. package/lib/models/plugin-config.js +2 -2
  77. package/lib/models/session.d.ts +31 -31
  78. package/lib/models/session.js +2 -2
  79. package/lib/models/socket.d.ts +37 -37
  80. package/lib/models/socket.js +2 -2
  81. package/lib/models/status.d.ts +1 -1
  82. package/lib/models/status.js +2 -2
  83. package/lib/models/success-types.d.ts +1 -1
  84. package/lib/models/success-types.js +2 -2
  85. package/lib/plugin/command/compile.d.ts +6 -6
  86. package/lib/plugin/command/compile.js +18 -18
  87. package/lib/plugin/command/test.d.ts +6 -6
  88. package/lib/plugin/command/test.js +25 -25
  89. package/lib/plugin/index.d.ts +27 -27
  90. package/lib/plugin/index.js +7 -7
  91. package/lib/plugin/plugin.d.ts +8 -8
  92. package/lib/plugin/plugin.js +68 -68
  93. package/lib/plugin/utils.d.ts +16 -16
  94. package/lib/plugin/utils.js +58 -58
  95. package/lib/ui/download.d.ts +5 -5
  96. package/lib/ui/download.js +62 -61
  97. package/lib/utils/BaseCommand.d.ts +8 -8
  98. package/lib/utils/BaseCommand.js +41 -41
  99. package/lib/utils/SessionCommand.d.ts +10 -10
  100. package/lib/utils/SessionCommand.js +43 -43
  101. package/lib/utils/api.d.ts +14 -14
  102. package/lib/utils/api.js +255 -255
  103. package/lib/utils/audit.d.ts +16 -16
  104. package/lib/utils/audit.js +303 -303
  105. package/lib/utils/checkNotInstalled.d.ts +8 -8
  106. package/lib/utils/checkNotInstalled.js +185 -181
  107. package/lib/utils/console.d.ts +12 -12
  108. package/lib/utils/console.js +19 -19
  109. package/lib/utils/errors.d.ts +17 -17
  110. package/lib/utils/errors.js +107 -100
  111. package/lib/utils/exercisesQueue.d.ts +9 -9
  112. package/lib/utils/exercisesQueue.js +38 -38
  113. package/lib/utils/fileQueue.d.ts +43 -43
  114. package/lib/utils/fileQueue.js +169 -169
  115. package/lib/utils/misc.d.ts +1 -1
  116. package/lib/utils/misc.js +24 -23
  117. package/lib/utils/osOperations.d.ts +5 -5
  118. package/lib/utils/osOperations.js +72 -72
  119. package/lib/utils/validators.d.ts +5 -5
  120. package/lib/utils/validators.js +16 -17
  121. package/lib/utils/watcher.d.ts +2 -2
  122. package/lib/utils/watcher.js +25 -25
  123. package/oclif.manifest.json +1 -1
  124. package/package.json +6 -4
  125. package/src/commands/build.ts +181 -0
  126. package/src/managers/config/index.ts +5 -0
  127. package/src/managers/server/routes.ts +10 -0
  128. package/src/managers/session.ts +1 -1
@@ -1,100 +1,107 @@
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
+ const 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.getSolution = getSolution;
35
+ const ValidationError = (error) => {
36
+ const message = error.message || error;
37
+ const _err = new Error(message);
38
+ _err.status = 400;
39
+ _err.type = 'validation-error';
40
+ const sol = (0, exports.getSolution)(error.slug);
41
+ _err.video = sol.video;
42
+ _err.gif = sol.gif;
43
+ _err.message = typeof message === 'string' ? message : sol.message;
44
+ return _err;
45
+ };
46
+ exports.ValidationError = ValidationError;
47
+ const NotFoundError = (error) => {
48
+ const message = error.message || error;
49
+ const _err = new Error(message);
50
+ _err.status = 400;
51
+ _err.type = 'not-found-error';
52
+ const sol = (0, exports.getSolution)(error.slug);
53
+ _err.video = sol.video;
54
+ _err.gif = sol.gif;
55
+ _err.message = typeof message === 'string' ? message : sol.message;
56
+ return _err;
57
+ };
58
+ exports.NotFoundError = NotFoundError;
59
+ const CompilerError = (error) => {
60
+ const message = error.message || error;
61
+ const _err = new Error(message);
62
+ _err.status = 400;
63
+ _err.type = 'compiler-error';
64
+ const sol = (0, exports.getSolution)(error.slug);
65
+ _err.video = sol.video;
66
+ _err.gif = sol.gif;
67
+ _err.message = typeof message === 'string' ? message : sol.message;
68
+ return _err;
69
+ };
70
+ exports.CompilerError = CompilerError;
71
+ const TestingError = (error) => {
72
+ const message = error.message || error;
73
+ const _err = new Error(message);
74
+ _err.status = 400;
75
+ _err.type = 'testing-error';
76
+ return _err;
77
+ };
78
+ exports.TestingError = TestingError;
79
+ const AuthError = (error) => {
80
+ const message = error.message || error;
81
+ const _err = new Error(message);
82
+ _err.status = 403;
83
+ _err.type = 'auth-error';
84
+ return _err;
85
+ };
86
+ exports.AuthError = AuthError;
87
+ const InternalError = (error) => {
88
+ const message = error.message || error;
89
+ const _err = new Error(message);
90
+ _err.status = 500;
91
+ _err.type = 'internal-error';
92
+ const sol = (0, exports.getSolution)(error.slug);
93
+ _err.video = sol.video;
94
+ _err.gif = sol.gif;
95
+ _err.message = typeof message === 'string' ? message : sol.message;
96
+ return _err;
97
+ };
98
+ exports.InternalError = InternalError;
99
+ (0, exports.getSolution)();
100
+ exports.default = {
101
+ ValidationError: exports.ValidationError,
102
+ CompilerError: exports.CompilerError,
103
+ TestingError: exports.TestingError,
104
+ NotFoundError: exports.NotFoundError,
105
+ InternalError: exports.InternalError,
106
+ AuthError: exports.AuthError,
107
+ };
@@ -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,43 +1,43 @@
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
- OPEN_TERMINAL: string;
12
- };
13
- dispatcher: (opts?: any) => {
14
- enqueue: (name: string, data?: any) => void;
15
- events: {
16
- START_EXERCISE: string;
17
- INIT: string;
18
- RUNNING: string;
19
- END: string;
20
- RESET_EXERCISE: string;
21
- OPEN_FILES: string;
22
- OPEN_WINDOW: string;
23
- INSTRUCTIONS_CLOSED: string;
24
- OPEN_TERMINAL: string;
25
- };
26
- };
27
- listener: (opts?: any) => {
28
- onPull: (callback: (T?: any) => any) => boolean;
29
- onReset: (callback: (T?: any) => any) => boolean;
30
- events: {
31
- START_EXERCISE: string;
32
- INIT: string;
33
- RUNNING: string;
34
- END: string;
35
- RESET_EXERCISE: string;
36
- OPEN_FILES: string;
37
- OPEN_WINDOW: string;
38
- INSTRUCTIONS_CLOSED: string;
39
- OPEN_TERMINAL: string;
40
- };
41
- };
42
- };
43
- 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
+ OPEN_TERMINAL: string;
12
+ };
13
+ dispatcher: (opts?: any) => {
14
+ enqueue: (name: string, data?: any | undefined) => void;
15
+ events: {
16
+ START_EXERCISE: string;
17
+ INIT: string;
18
+ RUNNING: string;
19
+ END: string;
20
+ RESET_EXERCISE: string;
21
+ OPEN_FILES: string;
22
+ OPEN_WINDOW: string;
23
+ INSTRUCTIONS_CLOSED: string;
24
+ OPEN_TERMINAL: string;
25
+ };
26
+ };
27
+ listener: (opts?: any) => {
28
+ onPull: (callback: (T?: any) => any) => boolean;
29
+ onReset: (callback: (T?: any) => any) => boolean;
30
+ events: {
31
+ START_EXERCISE: string;
32
+ INIT: string;
33
+ RUNNING: string;
34
+ END: string;
35
+ RESET_EXERCISE: string;
36
+ OPEN_FILES: string;
37
+ OPEN_WINDOW: string;
38
+ INSTRUCTIONS_CLOSED: string;
39
+ OPEN_TERMINAL: string;
40
+ };
41
+ };
42
+ };
43
+ export default _default;