@dodona/papyros 4.1.2 → 4.2.0

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 (55) hide show
  1. package/dist/InputServiceWorker.js +1 -1
  2. package/dist/backend/Backend.d.ts +21 -0
  3. package/dist/backend/Backend.js +30 -0
  4. package/dist/backend/Backend.js.map +1 -1
  5. package/dist/backend/workers/python/PythonWorker.d.ts +3 -0
  6. package/dist/backend/workers/python/PythonWorker.js +18 -0
  7. package/dist/backend/workers/python/PythonWorker.js.map +1 -1
  8. package/dist/backend/workers/python/python_package.tar.gz.load_by_url +0 -0
  9. package/dist/communication/BackendEvent.d.ts +2 -1
  10. package/dist/communication/BackendEvent.js +1 -0
  11. package/dist/communication/BackendEvent.js.map +1 -1
  12. package/dist/communication/BackendManager.js +2 -1
  13. package/dist/communication/BackendManager.js.map +1 -1
  14. package/dist/frontend/components/AddFileButton.d.ts +15 -0
  15. package/dist/frontend/components/AddFileButton.js +105 -0
  16. package/dist/frontend/components/AddFileButton.js.map +1 -0
  17. package/dist/frontend/components/CodeRunner.d.ts +11 -0
  18. package/dist/frontend/components/CodeRunner.js +129 -8
  19. package/dist/frontend/components/CodeRunner.js.map +1 -1
  20. package/dist/frontend/components/Debugger.js +3 -0
  21. package/dist/frontend/components/Debugger.js.map +1 -1
  22. package/dist/frontend/components/EditorTab.d.ts +24 -0
  23. package/dist/frontend/components/EditorTab.js +208 -0
  24. package/dist/frontend/components/EditorTab.js.map +1 -0
  25. package/dist/frontend/components/EditorTabs.d.ts +10 -0
  26. package/dist/frontend/components/EditorTabs.js +58 -0
  27. package/dist/frontend/components/EditorTabs.js.map +1 -0
  28. package/dist/frontend/components/FileViewer.d.ts +14 -0
  29. package/dist/frontend/components/FileViewer.js +119 -0
  30. package/dist/frontend/components/FileViewer.js.map +1 -0
  31. package/dist/frontend/components/code_mirror/CodeMirrorEditor.d.ts +1 -0
  32. package/dist/frontend/components/code_mirror/CodeMirrorEditor.js +4 -0
  33. package/dist/frontend/components/code_mirror/CodeMirrorEditor.js.map +1 -1
  34. package/dist/frontend/components/code_mirror/FileEditor.d.ts +6 -0
  35. package/dist/frontend/components/code_mirror/FileEditor.js +48 -0
  36. package/dist/frontend/components/code_mirror/FileEditor.js.map +1 -0
  37. package/dist/frontend/components/shared-styles.d.ts +3 -0
  38. package/dist/frontend/components/shared-styles.js +42 -0
  39. package/dist/frontend/components/shared-styles.js.map +1 -0
  40. package/dist/frontend/state/Debugger.d.ts +8 -1
  41. package/dist/frontend/state/Debugger.js +39 -3
  42. package/dist/frontend/state/Debugger.js.map +1 -1
  43. package/dist/frontend/state/InputOutput.d.ts +14 -0
  44. package/dist/frontend/state/InputOutput.js +54 -1
  45. package/dist/frontend/state/InputOutput.js.map +1 -1
  46. package/dist/frontend/state/Runner.d.ts +3 -0
  47. package/dist/frontend/state/Runner.js +18 -0
  48. package/dist/frontend/state/Runner.js.map +1 -1
  49. package/dist/frontend/state/Translations.d.ts +16 -0
  50. package/dist/frontend/state/Translations.js +16 -0
  51. package/dist/frontend/state/Translations.js.map +1 -1
  52. package/dist/util/Util.d.ts +2 -0
  53. package/dist/util/Util.js +15 -0
  54. package/dist/util/Util.js.map +1 -1
  55. package/package.json +6 -5
@@ -7,7 +7,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { BackendManager } from "../../communication/BackendManager";
8
8
  import { BackendEventType } from "../../communication/BackendEvent";
9
9
  import { State, stateProperty } from "@dodona/lit-state";
10
+ import { CODE_TAB, parseFileEntries } from "./InputOutput";
10
11
  export class Debugger extends State {
12
+ set activeFrame(value) {
13
+ this._activeFrame = value;
14
+ this.validateActiveTab();
15
+ }
16
+ get activeFrame() {
17
+ return this._activeFrame;
18
+ }
11
19
  set active(active) {
12
20
  this._active = active;
13
21
  this.reset();
@@ -18,14 +26,20 @@ export class Debugger extends State {
18
26
  constructor(papyros) {
19
27
  super();
20
28
  this.frameStates = [];
21
- this.activeFrame = undefined;
29
+ this._activeFrame = undefined;
22
30
  this.trace = [];
23
31
  this._active = false;
32
+ this.fileHistory = [];
24
33
  this.papyros = papyros;
25
34
  this.reset();
26
35
  BackendManager.subscribe(BackendEventType.Start, () => {
27
36
  this.reset();
28
37
  });
38
+ BackendManager.subscribe(BackendEventType.Files, (e) => {
39
+ if (this._active) {
40
+ this.fileHistory = [...this.fileHistory, parseFileEntries(e.data, e.contentType)];
41
+ }
42
+ });
29
43
  BackendManager.subscribe(BackendEventType.Frame, (e) => {
30
44
  var _a;
31
45
  (_a = this.activeFrame) !== null && _a !== void 0 ? _a : (this.activeFrame = 0);
@@ -34,6 +48,7 @@ export class Debugger extends State {
34
48
  line: frame.line,
35
49
  outputs: this.papyros.io.output.length,
36
50
  inputs: this.papyros.io.inputs.length,
51
+ files: this.fileHistory.length,
37
52
  };
38
53
  this.frameStates = [...this.frameStates, frameState];
39
54
  this.trace = [...this.trace, frame];
@@ -46,8 +61,15 @@ export class Debugger extends State {
46
61
  this.frameStates = [];
47
62
  this.currentOutputs = 0;
48
63
  this.currentInputs = 0;
49
- this.activeFrame = undefined;
64
+ this._activeFrame = undefined;
50
65
  this.trace = [];
66
+ this.fileHistory = [];
67
+ }
68
+ validateActiveTab() {
69
+ const tab = this.papyros.io.activeEditorTab;
70
+ if (tab !== CODE_TAB && !this.debugFiles.some((f) => f.name === tab)) {
71
+ this.papyros.io.activeEditorTab = CODE_TAB;
72
+ }
51
73
  }
52
74
  get activeFrameState() {
53
75
  if (this.activeFrame === undefined) {
@@ -67,19 +89,33 @@ export class Debugger extends State {
67
89
  var _a;
68
90
  return (_a = this.activeFrameState) === null || _a === void 0 ? void 0 : _a.inputs;
69
91
  }
92
+ get debugFiles() {
93
+ var _a, _b;
94
+ const idx = (_a = this.activeFrameState) === null || _a === void 0 ? void 0 : _a.files;
95
+ if (idx === undefined || idx === 0) {
96
+ return [];
97
+ }
98
+ return (_b = this.fileHistory[idx - 1]) !== null && _b !== void 0 ? _b : [];
99
+ }
70
100
  }
71
101
  __decorate([
72
102
  stateProperty
73
103
  ], Debugger.prototype, "frameStates", void 0);
74
104
  __decorate([
75
105
  stateProperty
76
- ], Debugger.prototype, "activeFrame", void 0);
106
+ ], Debugger.prototype, "_activeFrame", void 0);
107
+ __decorate([
108
+ stateProperty
109
+ ], Debugger.prototype, "activeFrame", null);
77
110
  __decorate([
78
111
  stateProperty
79
112
  ], Debugger.prototype, "trace", void 0);
80
113
  __decorate([
81
114
  stateProperty
82
115
  ], Debugger.prototype, "_active", void 0);
116
+ __decorate([
117
+ stateProperty
118
+ ], Debugger.prototype, "fileHistory", void 0);
83
119
  __decorate([
84
120
  stateProperty
85
121
  ], Debugger.prototype, "active", null);
@@ -1 +1 @@
1
- {"version":3,"file":"Debugger.js","sourceRoot":"","sources":["../../../src/frontend/state/Debugger.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAQzD,MAAM,OAAO,QAAS,SAAQ,KAAK;IAW/B,IAAW,MAAM,CAAC,MAAe;QAC7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAEtB,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAGD,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,YAAY,OAAgB;QACxB,KAAK,EAAE,CAAC;QApBJ,gBAAW,GAAiB,EAAE,CAAC;QAEhC,gBAAW,GAAuB,SAAS,CAAC;QAE5C,UAAK,GAAY,EAAE,CAAC;QAEnB,YAAO,GAAY,KAAK,CAAC;QAe7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE;YAClD,IAAI,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;;YACnD,MAAA,IAAI,CAAC,WAAW,oCAAhB,IAAI,CAAC,WAAW,GAAK,CAAC,EAAC;YACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,UAAU,GAAG;gBACf,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM;gBACtC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM;aACxC,CAAC;YACF,IAAI,CAAC,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACpC,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;gBACnE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/B,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,IAAI,gBAAgB;QAChB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,SAAS;;QACT,OAAO,MAAA,IAAI,CAAC,gBAAgB,0CAAE,IAAI,CAAC;IACvC,CAAC;IAED,IAAI,YAAY;;QACZ,OAAO,MAAA,IAAI,CAAC,gBAAgB,0CAAE,OAAO,CAAC;IAC1C,CAAC;IAED,IAAI,eAAe;;QACf,OAAO,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM,CAAC;IACzC,CAAC;CACJ;AAtEW;IADP,aAAa;6CACyB;AAEhC;IADN,aAAa;6CACqC;AAE5C;IADN,aAAa;uCACa;AAEnB;IADP,aAAa;yCACmB;AASjC;IADC,aAAa;sCAGb"}
1
+ {"version":3,"file":"Debugger.js","sourceRoot":"","sources":["../../../src/frontend/state/Debugger.ts"],"names":[],"mappings":"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"}
@@ -43,10 +43,19 @@ export declare enum InputMode {
43
43
  batch = "batch",
44
44
  interactive = "interactive"
45
45
  }
46
+ export interface FileEntry {
47
+ name: string;
48
+ content: string;
49
+ binary: boolean;
50
+ }
51
+ export declare const CODE_TAB = "code";
52
+ export declare function parseFileEntries(data: string, contentType?: string): FileEntry[];
46
53
  export declare class InputOutput extends State {
47
54
  private papyros;
48
55
  inputs: string[];
49
56
  output: OutputEntry[];
57
+ files: FileEntry[];
58
+ activeEditorTab: string;
50
59
  prompt: string;
51
60
  awaitingInput: boolean;
52
61
  inputMode: InputMode;
@@ -59,6 +68,11 @@ export declare class InputOutput extends State {
59
68
  logImage(imageData: string, contentType?: string): void;
60
69
  logOutput(output: string): void;
61
70
  provideInput(input: string): void;
71
+ removeFile(name: string): void;
72
+ addFile(name: string, content?: string, binary?: boolean): boolean;
73
+ updateFileContent(name: string, content: string, binary: boolean): void;
74
+ renameFile(oldName: string, newName: string): boolean;
75
+ upsertFile(name: string, content: string, binary: boolean): void;
62
76
  clearInputs(): void;
63
77
  reset(): void;
64
78
  }
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { State, stateProperty } from "@dodona/lit-state";
8
8
  import { BackendManager } from "../../communication/BackendManager";
9
9
  import { BackendEventType } from "../../communication/BackendEvent";
10
- import { parseData } from "../../util/Util";
10
+ import { isValidFileName, parseData } from "../../util/Util";
11
11
  import { RunState } from "./Runner";
12
12
  export var OutputType;
13
13
  (function (OutputType) {
@@ -20,6 +20,11 @@ export var InputMode;
20
20
  InputMode["batch"] = "batch";
21
21
  InputMode["interactive"] = "interactive";
22
22
  })(InputMode || (InputMode = {}));
23
+ export const CODE_TAB = "code";
24
+ export function parseFileEntries(data, contentType) {
25
+ const parsed = parseData(data, contentType);
26
+ return Object.entries(parsed).map(([name, { content, binary }]) => ({ name, content, binary }));
27
+ }
23
28
  export class InputOutput extends State {
24
29
  get inputBuffer() {
25
30
  return this._inputBuffer;
@@ -44,6 +49,8 @@ export class InputOutput extends State {
44
49
  super();
45
50
  this.inputs = [];
46
51
  this.output = [];
52
+ this.files = [];
53
+ this.activeEditorTab = CODE_TAB;
47
54
  this.prompt = "";
48
55
  this.awaitingInput = false;
49
56
  this.inputMode = InputMode.interactive;
@@ -75,6 +82,9 @@ export class InputOutput extends State {
75
82
  BackendManager.subscribe(BackendEventType.End, () => {
76
83
  this.awaitingInput = false;
77
84
  });
85
+ BackendManager.subscribe(BackendEventType.Files, (e) => {
86
+ this.files = parseFileEntries(e.data, e.contentType);
87
+ });
78
88
  }
79
89
  logError(error) {
80
90
  var _a;
@@ -112,6 +122,41 @@ export class InputOutput extends State {
112
122
  this.prompt = "";
113
123
  this.awaitingInput = false;
114
124
  }
125
+ removeFile(name) {
126
+ if (this.activeEditorTab === name) {
127
+ this.activeEditorTab = CODE_TAB;
128
+ }
129
+ this.files = this.files.filter((f) => f.name !== name);
130
+ }
131
+ addFile(name, content = "", binary = false) {
132
+ if (!isValidFileName(name) || this.files.some((f) => f.name === name)) {
133
+ return false;
134
+ }
135
+ this.files = [...this.files, { name, content, binary }];
136
+ this.activeEditorTab = name;
137
+ return true;
138
+ }
139
+ updateFileContent(name, content, binary) {
140
+ this.files = this.files.map((f) => (f.name === name ? Object.assign(Object.assign({}, f), { content, binary }) : f));
141
+ }
142
+ renameFile(oldName, newName) {
143
+ if (!isValidFileName(newName) ||
144
+ newName === oldName ||
145
+ !this.files.some((f) => f.name === oldName) ||
146
+ this.files.some((f) => f.name === newName)) {
147
+ return false;
148
+ }
149
+ this.files = this.files.map((f) => (f.name === oldName ? Object.assign(Object.assign({}, f), { name: newName }) : f));
150
+ if (this.activeEditorTab === oldName) {
151
+ this.activeEditorTab = newName;
152
+ }
153
+ return true;
154
+ }
155
+ upsertFile(name, content, binary) {
156
+ if (!this.addFile(name, content, binary)) {
157
+ this.updateFileContent(name, content, binary);
158
+ }
159
+ }
115
160
  clearInputs() {
116
161
  this.inputs = [];
117
162
  }
@@ -120,6 +165,8 @@ export class InputOutput extends State {
120
165
  this.output = [];
121
166
  this.prompt = "";
122
167
  this.awaitingInput = false;
168
+ this.files = [];
169
+ this.activeEditorTab = CODE_TAB;
123
170
  }
124
171
  }
125
172
  __decorate([
@@ -128,6 +175,12 @@ __decorate([
128
175
  __decorate([
129
176
  stateProperty
130
177
  ], InputOutput.prototype, "output", void 0);
178
+ __decorate([
179
+ stateProperty
180
+ ], InputOutput.prototype, "files", void 0);
181
+ __decorate([
182
+ stateProperty
183
+ ], InputOutput.prototype, "activeEditorTab", void 0);
131
184
  __decorate([
132
185
  stateProperty
133
186
  ], InputOutput.prototype, "prompt", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"InputOutput.js","sourceRoot":"","sources":["../../../src/frontend/state/InputOutput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputOutput.js","sourceRoot":"","sources":["../../../src/frontend/state/InputOutput.ts"],"names":[],"mappings":"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"}
@@ -104,6 +104,9 @@ export declare class Runner extends State {
104
104
  */
105
105
  stop(): Promise<void>;
106
106
  provideInput(input: string): Promise<void>;
107
+ deleteFile(name: string): Promise<void>;
108
+ updateFile(name: string, content: string, binary: boolean): Promise<void>;
109
+ renameFile(oldName: string, newName: string): Promise<void>;
107
110
  provideFiles(inlinedFiles: Record<string, string>, hrefFiles: Record<string, string>): Promise<void>;
108
111
  /**
109
112
  * Show the current state of the program to the user
@@ -242,6 +242,24 @@ export class Runner extends State {
242
242
  yield backend.writeMessage(input);
243
243
  });
244
244
  }
245
+ deleteFile(name) {
246
+ return __awaiter(this, void 0, void 0, function* () {
247
+ const backend = yield this.backend;
248
+ yield backend.workerProxy.deleteFile(name);
249
+ });
250
+ }
251
+ updateFile(name, content, binary) {
252
+ return __awaiter(this, void 0, void 0, function* () {
253
+ const backend = yield this.backend;
254
+ yield backend.workerProxy.updateFile(name, content, binary);
255
+ });
256
+ }
257
+ renameFile(oldName, newName) {
258
+ return __awaiter(this, void 0, void 0, function* () {
259
+ const backend = yield this.backend;
260
+ yield backend.workerProxy.renameFile(oldName, newName);
261
+ });
262
+ }
245
263
  provideFiles(inlinedFiles, hrefFiles) {
246
264
  return __awaiter(this, void 0, void 0, function* () {
247
265
  const fileNames = [...Object.keys(inlinedFiles), ...Object.keys(hrefFiles)];
@@ -1 +1 @@
1
- {"version":3,"file":"Runner.js","sourceRoot":"","sources":["../../../src/frontend/state/Runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Runner.js","sourceRoot":"","sources":["../../../src/frontend/state/Runner.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,14 @@ export declare const ENGLISH_TRANSLATION: {
66
66
  debug: {
67
67
  stop: string;
68
68
  };
69
+ editor_tab_code: string;
70
+ close_file_tab: string;
71
+ rename_file_tab: string;
72
+ add_file: string;
73
+ add_file_placeholder: string;
74
+ files_download: string;
75
+ files_binary: string;
76
+ files_empty: string;
69
77
  };
70
78
  CodeMirror: {
71
79
  "Go to line": string;
@@ -149,6 +157,14 @@ export declare const DUTCH_TRANSLATION: {
149
157
  debug: {
150
158
  stop: string;
151
159
  };
160
+ editor_tab_code: string;
161
+ close_file_tab: string;
162
+ rename_file_tab: string;
163
+ add_file: string;
164
+ add_file_placeholder: string;
165
+ files_download: string;
166
+ files_binary: string;
167
+ files_empty: string;
152
168
  };
153
169
  CodeMirror: {
154
170
  "Control character": string;
@@ -68,6 +68,14 @@ export const ENGLISH_TRANSLATION = {
68
68
  debug: {
69
69
  stop: "Stop debugging",
70
70
  },
71
+ editor_tab_code: "Code",
72
+ close_file_tab: "Close file",
73
+ rename_file_tab: "Rename file",
74
+ add_file: "Add file",
75
+ add_file_placeholder: "filename\u2026",
76
+ files_download: "Download",
77
+ files_binary: "Binary file",
78
+ files_empty: "Empty file",
71
79
  },
72
80
  CodeMirror: {
73
81
  // @codemirror/search
@@ -153,6 +161,14 @@ export const DUTCH_TRANSLATION = {
153
161
  debug: {
154
162
  stop: "Stop debugger",
155
163
  },
164
+ editor_tab_code: "Code",
165
+ close_file_tab: "Bestand sluiten",
166
+ rename_file_tab: "Bestand hernoemen",
167
+ add_file: "Bestand toevoegen",
168
+ add_file_placeholder: "bestandsnaam\u2026",
169
+ files_download: "Downloaden",
170
+ files_binary: "Binair bestand",
171
+ files_empty: "Leeg bestand",
156
172
  },
157
173
  CodeMirror: {
158
174
  // @codemirror/view
@@ -1 +1 @@
1
- {"version":3,"file":"Translations.js","sourceRoot":"","sources":["../../../src/frontend/state/Translations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Translations.js","sourceRoot":"","sources":["../../../src/frontend/state/Translations.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ export declare function isValidFileName(name: string): boolean;
2
+ export declare function debounce<T extends (...args: any[]) => void>(fn: T, delay: number): T;
1
3
  /**
2
4
  * Parse the data contained within a PapyrosEvent using its contentType
3
5
  * Supported content types are: text/plain, text/json, img/png;base64
package/dist/util/Util.js CHANGED
@@ -1,4 +1,19 @@
1
1
  import { LogType, papyrosLog } from "./Logging";
2
+ export function isValidFileName(name) {
3
+ if (!name)
4
+ return false;
5
+ if (name.startsWith("/") || name.endsWith("/"))
6
+ return false;
7
+ const segments = name.split("/");
8
+ return segments.every((s) => s.length > 0 && s !== "." && s !== "..");
9
+ }
10
+ export function debounce(fn, delay) {
11
+ let timer;
12
+ return ((...args) => {
13
+ clearTimeout(timer);
14
+ timer = setTimeout(() => fn(...args), delay);
15
+ });
16
+ }
2
17
  /**
3
18
  * Parse the data contained within a PapyrosEvent using its contentType
4
19
  * Supported content types are: text/plain, text/json, img/png;base64
@@ -1 +1 @@
1
- {"version":3,"file":"Util.js","sourceRoot":"","sources":["../../src/util/Util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,WAAoB;IACxD,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxD,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,QAAQ,YAAY,EAAE,CAAC;gBACnB,KAAK,OAAO,CAAC,CAAC,CAAC;oBACX,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACV,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;gBACD,KAAK,SAAS,CAAC,CAAC,CAAC;oBACb,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACX,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;YACL,CAAC;YACD,MAAM;QACV,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACT,QAAQ,YAAY,EAAE,CAAC;gBACnB,KAAK,YAAY,CAAC,CAAC,CAAC;oBAChB,OAAO,IAAI,CAAC;gBAChB,CAAC;YACL,CAAC;YACD,MAAM;QACV,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACjB,uFAAuF;YACvF,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,2BAA2B,WAAW,EAAE,CAAC,CAAC;IACxE,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"Util.js","sourceRoot":"","sources":["../../src/util/Util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEhD,MAAM,UAAU,eAAe,CAAC,IAAY;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,QAAQ,CAAqC,EAAK,EAAE,KAAa;IAC7E,IAAI,KAAgD,CAAC;IACrD,OAAO,CAAC,CAAC,GAAG,IAAmB,EAAE,EAAE;QAC/B,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC,CAAM,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,WAAoB;IACxD,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxD,QAAQ,QAAQ,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,QAAQ,YAAY,EAAE,CAAC;gBACnB,KAAK,OAAO,CAAC,CAAC,CAAC;oBACX,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACV,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;gBACD,KAAK,SAAS,CAAC,CAAC,CAAC;oBACb,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACX,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;YACL,CAAC;YACD,MAAM;QACV,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACT,QAAQ,YAAY,EAAE,CAAC;gBACnB,KAAK,YAAY,CAAC,CAAC,CAAC;oBAChB,OAAO,IAAI,CAAC;gBAChB,CAAC;YACL,CAAC;YACD,MAAM;QACV,CAAC;QACD,KAAK,aAAa,CAAC,CAAC,CAAC;YACjB,uFAAuF;YACvF,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IACD,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,2BAA2B,WAAW,EAAE,CAAC,CAAC;IACxE,OAAO,IAAI,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dodona/papyros",
3
- "version": "4.1.2",
3
+ "version": "4.2.0",
4
4
  "private": false,
5
5
  "homepage": ".",
6
6
  "dependencies": {
@@ -14,7 +14,7 @@
14
14
  "@codemirror/state": "^6.3.2",
15
15
  "@codemirror/view": "^6.28.0",
16
16
  "@dodona/lit-state": "^1.1.1",
17
- "@dodona/trace-component": "1.3.3",
17
+ "@dodona/trace-component": "1.4.0",
18
18
  "@material/web": "^2.4.0",
19
19
  "codemirror-readonly-ranges": "^0.1.0-alpha.2",
20
20
  "comlink": "^4.4.1",
@@ -31,7 +31,7 @@
31
31
  "@types/i18n-js": "^4.0.1",
32
32
  "@types/node": "^25.0.3",
33
33
  "@types/node-polyglot": "^2.5.0",
34
- "@types/serviceworker": "^0.0.193",
34
+ "@types/serviceworker": "^0.0.194",
35
35
  "@vitest/browser": "^4.0.6",
36
36
  "@vitest/browser-playwright": "^4.0.6",
37
37
  "eslint": "^10.0.2",
@@ -44,7 +44,7 @@
44
44
  "prettier": "^3.6.2",
45
45
  "typescript": "^5.2.2",
46
46
  "typescript-eslint": "^8.21.0",
47
- "vite": "^7.1.5",
47
+ "vite": "^8.0.3",
48
48
  "vitest": "^4.0.6"
49
49
  },
50
50
  "scripts": {
@@ -55,7 +55,8 @@
55
55
  "build:lib": "bash scripts/build_library.sh",
56
56
  "test": "vitest",
57
57
  "lint": "eslint src",
58
- "typecheck": "tsc --noEmit"
58
+ "typecheck": "tsc --noEmit",
59
+ "prepack": "yarn build:lib"
59
60
  },
60
61
  "description": "Scratchpad for multiple programming languages in the browser.",
61
62
  "repository": {