@dodona/papyros 4.0.7 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/dist/assets/__vite-browser-external-9wXp6ZBx.js +1 -0
  2. package/dist/assets/__vite-browser-external-BIHI7g3E.js +1 -0
  3. package/dist/assets/index-C1AWjGcU.js +2202 -0
  4. package/dist/assets/manifest-BaVmi6rC.json +15 -0
  5. package/dist/assets/python_package.tar.gz-B8aMWvGt.load_by_url +0 -0
  6. package/dist/assets/worker-BhABRh01.js +5 -0
  7. package/dist/assets/worker-C2Ju1j5g.js +110 -0
  8. package/dist/index.html +26 -0
  9. package/dist/manifest.json +15 -0
  10. package/dist/robots.txt +3 -0
  11. package/package.json +25 -25
  12. package/dist/Library.d.ts +0 -11
  13. package/dist/Library.js +0 -11
  14. package/dist/Library.js.map +0 -1
  15. package/dist/ProgrammingLanguage.d.ts +0 -7
  16. package/dist/ProgrammingLanguage.js +0 -9
  17. package/dist/ProgrammingLanguage.js.map +0 -1
  18. package/dist/backend/Backend.d.ts +0 -92
  19. package/dist/backend/Backend.js +0 -79
  20. package/dist/backend/Backend.js.map +0 -1
  21. package/dist/backend/workers/javascript/JavaScriptWorker.d.ts +0 -39
  22. package/dist/backend/workers/javascript/JavaScriptWorker.js +0 -158
  23. package/dist/backend/workers/javascript/JavaScriptWorker.js.map +0 -1
  24. package/dist/backend/workers/javascript/worker.d.ts +0 -1
  25. package/dist/backend/workers/javascript/worker.js +0 -5
  26. package/dist/backend/workers/javascript/worker.js.map +0 -1
  27. package/dist/backend/workers/python/PythonWorker.d.ts +0 -32
  28. package/dist/backend/workers/python/PythonWorker.js +0 -117
  29. package/dist/backend/workers/python/PythonWorker.js.map +0 -1
  30. package/dist/backend/workers/python/python_package.tar.gz.load_by_url +0 -0
  31. package/dist/backend/workers/python/worker.d.ts +0 -1
  32. package/dist/backend/workers/python/worker.js +0 -5
  33. package/dist/backend/workers/python/worker.js.map +0 -1
  34. package/dist/communication/BackendEvent.d.ts +0 -33
  35. package/dist/communication/BackendEvent.js +0 -18
  36. package/dist/communication/BackendEvent.js.map +0 -1
  37. package/dist/communication/BackendEventQueue.d.ts +0 -59
  38. package/dist/communication/BackendEventQueue.js +0 -96
  39. package/dist/communication/BackendEventQueue.js.map +0 -1
  40. package/dist/communication/BackendManager.d.ts +0 -68
  41. package/dist/communication/BackendManager.js +0 -99
  42. package/dist/communication/BackendManager.js.map +0 -1
  43. package/dist/communication/InputServiceWorker.d.ts +0 -1
  44. package/dist/communication/InputServiceWorker.js +0 -37
  45. package/dist/communication/InputServiceWorker.js.map +0 -1
  46. package/dist/communication/InputWorker.d.ts +0 -22
  47. package/dist/communication/InputWorker.js +0 -63
  48. package/dist/communication/InputWorker.js.map +0 -1
  49. package/dist/frontend/components/CodeRunner.d.ts +0 -9
  50. package/dist/frontend/components/CodeRunner.js +0 -60
  51. package/dist/frontend/components/CodeRunner.js.map +0 -1
  52. package/dist/frontend/components/Debugger.d.ts +0 -7
  53. package/dist/frontend/components/Debugger.js +0 -75
  54. package/dist/frontend/components/Debugger.js.map +0 -1
  55. package/dist/frontend/components/Input.d.ts +0 -13
  56. package/dist/frontend/components/Input.js +0 -60
  57. package/dist/frontend/components/Input.js.map +0 -1
  58. package/dist/frontend/components/Output.d.ts +0 -14
  59. package/dist/frontend/components/Output.js +0 -157
  60. package/dist/frontend/components/Output.js.map +0 -1
  61. package/dist/frontend/components/PapyrosElement.d.ts +0 -8
  62. package/dist/frontend/components/PapyrosElement.js +0 -24
  63. package/dist/frontend/components/PapyrosElement.js.map +0 -1
  64. package/dist/frontend/components/app/App.d.ts +0 -24
  65. package/dist/frontend/components/app/App.js +0 -207
  66. package/dist/frontend/components/app/App.js.map +0 -1
  67. package/dist/frontend/components/app/ExamplePicker.d.ts +0 -7
  68. package/dist/frontend/components/app/ExamplePicker.js +0 -36
  69. package/dist/frontend/components/app/ExamplePicker.js.map +0 -1
  70. package/dist/frontend/components/app/LanguagePicker.d.ts +0 -7
  71. package/dist/frontend/components/app/LanguagePicker.js +0 -33
  72. package/dist/frontend/components/app/LanguagePicker.js.map +0 -1
  73. package/dist/frontend/components/app/ProgrammingLanguagePicker.d.ts +0 -7
  74. package/dist/frontend/components/app/ProgrammingLanguagePicker.js +0 -38
  75. package/dist/frontend/components/app/ProgrammingLanguagePicker.js.map +0 -1
  76. package/dist/frontend/components/app/examples/JavaScriptExamples.d.ts +0 -5
  77. package/dist/frontend/components/app/examples/JavaScriptExamples.js +0 -16
  78. package/dist/frontend/components/app/examples/JavaScriptExamples.js.map +0 -1
  79. package/dist/frontend/components/app/examples/PythonExamples.d.ts +0 -14
  80. package/dist/frontend/components/app/examples/PythonExamples.js +0 -163
  81. package/dist/frontend/components/app/examples/PythonExamples.js.map +0 -1
  82. package/dist/frontend/components/app/themes/ThemePicker.d.ts +0 -11
  83. package/dist/frontend/components/app/themes/ThemePicker.js +0 -48
  84. package/dist/frontend/components/app/themes/ThemePicker.js.map +0 -1
  85. package/dist/frontend/components/app/themes/ThemedButton.d.ts +0 -9
  86. package/dist/frontend/components/app/themes/ThemedButton.js +0 -53
  87. package/dist/frontend/components/app/themes/ThemedButton.js.map +0 -1
  88. package/dist/frontend/components/code_mirror/BatchInputEditor.d.ts +0 -8
  89. package/dist/frontend/components/code_mirror/BatchInputEditor.js +0 -51
  90. package/dist/frontend/components/code_mirror/BatchInputEditor.js.map +0 -1
  91. package/dist/frontend/components/code_mirror/CodeEditor.d.ts +0 -24
  92. package/dist/frontend/components/code_mirror/CodeEditor.js +0 -200
  93. package/dist/frontend/components/code_mirror/CodeEditor.js.map +0 -1
  94. package/dist/frontend/components/code_mirror/CodeMirrorEditor.d.ts +0 -22
  95. package/dist/frontend/components/code_mirror/CodeMirrorEditor.js +0 -111
  96. package/dist/frontend/components/code_mirror/CodeMirrorEditor.js.map +0 -1
  97. package/dist/frontend/components/code_mirror/Extensions.d.ts +0 -15
  98. package/dist/frontend/components/code_mirror/Extensions.js +0 -164
  99. package/dist/frontend/components/code_mirror/Extensions.js.map +0 -1
  100. package/dist/frontend/components/code_mirror/MaterialTheme.d.ts +0 -5
  101. package/dist/frontend/components/code_mirror/MaterialTheme.js +0 -115
  102. package/dist/frontend/components/code_mirror/MaterialTheme.js.map +0 -1
  103. package/dist/frontend/components/code_runner/ButtonLint.d.ts +0 -9
  104. package/dist/frontend/components/code_runner/ButtonLint.js +0 -72
  105. package/dist/frontend/components/code_runner/ButtonLint.js.map +0 -1
  106. package/dist/frontend/components/code_runner/Code.d.ts +0 -7
  107. package/dist/frontend/components/code_runner/Code.js +0 -48
  108. package/dist/frontend/components/code_runner/Code.js.map +0 -1
  109. package/dist/frontend/components/code_runner/RunState.d.ts +0 -7
  110. package/dist/frontend/components/code_runner/RunState.js +0 -41
  111. package/dist/frontend/components/code_runner/RunState.js.map +0 -1
  112. package/dist/frontend/components/input/BatchInput.d.ts +0 -9
  113. package/dist/frontend/components/input/BatchInput.js +0 -53
  114. package/dist/frontend/components/input/BatchInput.js.map +0 -1
  115. package/dist/frontend/components/input/InteractiveInput.d.ts +0 -13
  116. package/dist/frontend/components/input/InteractiveInput.js +0 -71
  117. package/dist/frontend/components/input/InteractiveInput.js.map +0 -1
  118. package/dist/frontend/state/Constants.d.ts +0 -38
  119. package/dist/frontend/state/Constants.js +0 -111
  120. package/dist/frontend/state/Constants.js.map +0 -1
  121. package/dist/frontend/state/Debugger.d.ts +0 -23
  122. package/dist/frontend/state/Debugger.js +0 -86
  123. package/dist/frontend/state/Debugger.js.map +0 -1
  124. package/dist/frontend/state/Examples.d.ts +0 -11
  125. package/dist/frontend/state/Examples.js +0 -36
  126. package/dist/frontend/state/Examples.js.map +0 -1
  127. package/dist/frontend/state/I18n.d.ts +0 -16
  128. package/dist/frontend/state/I18n.js +0 -75
  129. package/dist/frontend/state/I18n.js.map +0 -1
  130. package/dist/frontend/state/InputOutput.d.ts +0 -64
  131. package/dist/frontend/state/InputOutput.js +0 -146
  132. package/dist/frontend/state/InputOutput.js.map +0 -1
  133. package/dist/frontend/state/Papyros.d.ts +0 -40
  134. package/dist/frontend/state/Papyros.js +0 -115
  135. package/dist/frontend/state/Papyros.js.map +0 -1
  136. package/dist/frontend/state/Runner.d.ts +0 -123
  137. package/dist/frontend/state/Runner.js +0 -372
  138. package/dist/frontend/state/Runner.js.map +0 -1
  139. package/dist/frontend/state/Test.d.ts +0 -10
  140. package/dist/frontend/state/Test.js +0 -43
  141. package/dist/frontend/state/Test.js.map +0 -1
  142. package/dist/frontend/state/Translations.d.ts +0 -178
  143. package/dist/frontend/state/Translations.js +0 -187
  144. package/dist/frontend/state/Translations.js.map +0 -1
  145. package/dist/frontend/state/themes/blue-dark.d.ts +0 -2
  146. package/dist/frontend/state/themes/blue-dark.js +0 -56
  147. package/dist/frontend/state/themes/blue-dark.js.map +0 -1
  148. package/dist/frontend/state/themes/blue-light.d.ts +0 -2
  149. package/dist/frontend/state/themes/blue-light.js +0 -56
  150. package/dist/frontend/state/themes/blue-light.js.map +0 -1
  151. package/dist/frontend/state/themes/green-dark.d.ts +0 -2
  152. package/dist/frontend/state/themes/green-dark.js +0 -56
  153. package/dist/frontend/state/themes/green-dark.js.map +0 -1
  154. package/dist/frontend/state/themes/green-light.d.ts +0 -2
  155. package/dist/frontend/state/themes/green-light.js +0 -56
  156. package/dist/frontend/state/themes/green-light.js.map +0 -1
  157. package/dist/frontend/state/themes/red-dark.d.ts +0 -2
  158. package/dist/frontend/state/themes/red-dark.js +0 -56
  159. package/dist/frontend/state/themes/red-dark.js.map +0 -1
  160. package/dist/frontend/state/themes/red-light.d.ts +0 -2
  161. package/dist/frontend/state/themes/red-light.js +0 -56
  162. package/dist/frontend/state/themes/red-light.js.map +0 -1
  163. package/dist/util/Logging.d.ts +0 -15
  164. package/dist/util/Logging.js +0 -30
  165. package/dist/util/Logging.js.map +0 -1
  166. package/dist/util/Util.d.ts +0 -8
  167. package/dist/util/Util.js +0 -48
  168. package/dist/util/Util.js.map +0 -1
@@ -1,157 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { customElement } from "lit/decorators.js";
8
- import { css, html } from "lit";
9
- import { OutputType } from "../state/InputOutput";
10
- import { PapyrosElement } from "./PapyrosElement";
11
- import "@material/web/icon/icon";
12
- let Output = class Output extends PapyrosElement {
13
- static get styles() {
14
- return css `
15
- :host {
16
- width: 100%;
17
- height: 100%;
18
- overflow: auto;
19
- display: block;
20
- }
21
-
22
- img {
23
- max-width: 100%;
24
- max-height: 300px;
25
- display: block;
26
- margin: 0.5rem 0;
27
- }
28
-
29
- pre {
30
- font-family: monospace;
31
- margin: 0;
32
- }
33
-
34
- .error {
35
- color: var(--md-sys-color-error);
36
- }
37
-
38
- .place-holder {
39
- color: var(--md-sys-color-on-surface);
40
- opacity: 0.5;
41
- }
42
-
43
- md-icon {
44
- vertical-align: bottom;
45
- }
46
- `;
47
- }
48
- get maxOutputLength() {
49
- if (this.papyros.debugger.active && this.papyros.debugger.debugOutputs !== undefined) {
50
- return this.papyros.debugger.debugOutputs;
51
- }
52
- return this.papyros.constants.maxOutputLength;
53
- }
54
- get outputs() {
55
- return this.papyros.io.output.slice(0, this.maxOutputLength);
56
- }
57
- get overflow() {
58
- return this.papyros.io.output.slice(this.maxOutputLength);
59
- }
60
- get showOverflowWarning() {
61
- return !this.papyros.debugger.active && this.papyros.io.output.length > this.maxOutputLength;
62
- }
63
- get downloadOverflowUrl() {
64
- const blob = new Blob(this.overflow.map((o) => {
65
- if (o.type === OutputType.img) {
66
- return `[Image output of type ${o.contentType} omitted]\n`;
67
- }
68
- else if (o.type === OutputType.stdout) {
69
- return o.content;
70
- }
71
- else if (o.type === OutputType.stderr) {
72
- if (typeof o.content === "string") {
73
- return `Error: ${o.content}\n`;
74
- }
75
- else {
76
- const errorObject = o.content;
77
- let errorString = `Error: ${errorObject.name}\nInfo: ${errorObject.info}\nTraceback: ${errorObject.traceback}\n`;
78
- if (errorObject.where) {
79
- errorString += `Where: ${errorObject.where.trim()}\n`;
80
- }
81
- if (errorObject.what) {
82
- errorString += `What: ${errorObject.what.trim()}\n`;
83
- }
84
- if (errorObject.why) {
85
- errorString += `Why: ${errorObject.why.trim()}\n`;
86
- }
87
- return errorString;
88
- }
89
- }
90
- else {
91
- return "[Unsupported output type omitted]\n";
92
- }
93
- }), { type: "text/plain" });
94
- return URL.createObjectURL(blob);
95
- }
96
- get renderedOutputs() {
97
- return this.outputs.map((o) => {
98
- var _a;
99
- if (o.type === OutputType.stdout) {
100
- return html `${o.content}`;
101
- }
102
- else if (o.type === OutputType.img) {
103
- return html `<img src="data:${o.contentType}, ${o.content}"></img>`;
104
- }
105
- else if (o.type === OutputType.stderr) {
106
- if (typeof o.content === "string") {
107
- return html `<span class="error">${o.content}</span>`;
108
- }
109
- else {
110
- const errorObject = o.content;
111
- const errorHTML = [
112
- // an array to avoid unintentional spaces/newlines
113
- html `<md-icon title="${errorObject.info}"> ${this.papyros.constants.icons.help} </md-icon>
114
- ${errorObject.name} traceback:
115
- <md-icon title="${errorObject.traceback}">
116
- ${this.papyros.constants.icons.info}
117
- </md-icon> `,
118
- html `<span class="where">${(_a = errorObject.where) === null || _a === void 0 ? void 0 : _a.trim()}</span> `,
119
- ];
120
- if (errorObject.what) {
121
- errorHTML.push(html `<span class="what">${errorObject.what.trim()}</span> `);
122
- }
123
- if (errorObject.why) {
124
- errorHTML.push(html `<span class="why">${errorObject.why.trim()}</span> `);
125
- }
126
- return html `<span class="error">${errorHTML}</span>`;
127
- }
128
- }
129
- else {
130
- return html ``; // unsupported output type
131
- }
132
- });
133
- }
134
- render() {
135
- if (this.outputs.length === 0) {
136
- return html `<pre class="place-holder">${this.t("Papyros.output_placeholder")}</pre>`;
137
- }
138
- return html `
139
- <pre>${this.renderedOutputs}</pre>
140
- ${this.showOverflowWarning
141
- ? html `
142
- <p>
143
- ${this.t("Papyros.output_overflow")}
144
- <a href="${this.downloadOverflowUrl}" download="papyros_output.txt">
145
- ${this.t("Papyros.output_overflow_download")}
146
- </a>
147
- </p>
148
- `
149
- : html ``}
150
- `;
151
- }
152
- };
153
- Output = __decorate([
154
- customElement("p-output")
155
- ], Output);
156
- export { Output };
157
- //# sourceMappingURL=Output.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Output.js","sourceRoot":"","sources":["../../../src/frontend/components/Output.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import { LitElement } from "lit";
2
- import { StateController } from "@dodona/lit-state";
3
- import { Papyros } from "../state/Papyros";
4
- export declare abstract class PapyrosElement extends LitElement {
5
- controller: StateController;
6
- papyros: Papyros;
7
- protected t(phrase: string, options?: Record<string, any>): string;
8
- }
@@ -1,24 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { LitElement } from "lit";
8
- import { StateController } from "@dodona/lit-state";
9
- import { property } from "lit/decorators.js";
10
- import { papyros } from "../state/Papyros";
11
- export class PapyrosElement extends LitElement {
12
- constructor() {
13
- super(...arguments);
14
- this.controller = new StateController(this);
15
- this.papyros = papyros;
16
- }
17
- t(phrase, options) {
18
- return this.papyros.i18n.t(phrase, options);
19
- }
20
- }
21
- __decorate([
22
- property()
23
- ], PapyrosElement.prototype, "papyros", void 0);
24
- //# sourceMappingURL=PapyrosElement.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PapyrosElement.js","sourceRoot":"","sources":["../../../src/frontend/components/PapyrosElement.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAW,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,OAAgB,cAAe,SAAQ,UAAU;IAAvD;;QACI,eAAU,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAEvC,YAAO,GAAY,OAAO,CAAC;IAK/B,CAAC;IAHa,CAAC,CAAC,MAAc,EAAE,OAA6B;QACrD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;CACJ;AALG;IADC,QAAQ,EAAE;+CACgB"}
@@ -1,24 +0,0 @@
1
- import { CSSResult, TemplateResult } from "lit";
2
- import { PapyrosElement } from "../PapyrosElement";
3
- import "../CodeRunner";
4
- import "../Debugger";
5
- import "../Output";
6
- import "../Input";
7
- import "./ProgrammingLanguagePicker";
8
- import "./ExamplePicker";
9
- import "./LanguagePicker";
10
- import "./themes/ThemePicker";
11
- import { State } from "@dodona/lit-state";
12
- import "@material/web/iconbutton/icon-button";
13
- import "@material/web/icon/icon";
14
- import { ThemeOption } from "../../state/Constants";
15
- export declare class App extends PapyrosElement {
16
- subscriptions: (() => void)[];
17
- static get styles(): CSSResult;
18
- constructor();
19
- connectedCallback(): void;
20
- disconnectedCallback(): void;
21
- initializeLocalStorageProperty(state: State, property: string): void;
22
- setTheme(theme: ThemeOption): void;
23
- protected render(): TemplateResult;
24
- }
@@ -1,207 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var App_1;
8
- import { customElement } from "lit/decorators.js";
9
- import { adoptStyles, css, html } from "lit";
10
- import { PapyrosElement } from "../PapyrosElement";
11
- import "../CodeRunner";
12
- import "../Debugger";
13
- import "../Output";
14
- import "../Input";
15
- import "./ProgrammingLanguagePicker";
16
- import "./ExamplePicker";
17
- import "./LanguagePicker";
18
- import "./themes/ThemePicker";
19
- import "@material/web/iconbutton/icon-button";
20
- import "@material/web/icon/icon";
21
- let App = App_1 = class App extends PapyrosElement {
22
- static get styles() {
23
- return css `
24
- :host {
25
- width: 100%;
26
- height: 100%;
27
- display: block;
28
- background-color: var(--md-sys-color-background);
29
- color: var(--md-sys-color-on-background);
30
- --md-ref-typeface-brand: Roboto, "Helvetica Neue", sans-serif;
31
- --md-ref-typeface-plain: var(--md-ref-typeface-brand);
32
- font-family: var(--md-ref-typeface-brand);
33
- font-size: 16px;
34
- --md-outlined-field-bottom-space: 8px;
35
- --md-outlined-field-top-space: 8px;
36
- --md-outlined-text-field-bottom-space: 8px;
37
- --md-outlined-text-field-top-space: 8px;
38
- }
39
-
40
- .rows {
41
- display: flex;
42
- flex-direction: column;
43
- width: 100%;
44
- height: 100%;
45
- }
46
-
47
- .top {
48
- flex: 2;
49
- display: flex;
50
- min-height: 0;
51
- }
52
-
53
- .bottom {
54
- flex: 1;
55
- min-height: 0;
56
- }
57
-
58
- .left {
59
- flex: 1;
60
- min-width: 0;
61
- display: flex;
62
- }
63
-
64
- .right {
65
- flex: 1;
66
- display: flex;
67
- flex-direction: column;
68
- min-width: 0;
69
- min-height: 0;
70
- }
71
-
72
- .grow {
73
- flex-grow: 1;
74
- }
75
-
76
- .container {
77
- padding: 1.5rem;
78
- margin: 0.5rem;
79
- border-radius: 1rem;
80
- background-color: var(--md-sys-color-surface-container);
81
- color: var(--md-sys-color-on-surface);
82
- }
83
-
84
- .overflow {
85
- overflow: auto;
86
- }
87
-
88
- .header {
89
- align-items: center;
90
- padding: 1rem 2rem;
91
- display: flex;
92
- justify-content: space-between;
93
- background-color: var(--md-sys-color-surface-container);
94
- color: var(--md-sys-color-on-surface);
95
- }
96
-
97
- .title {
98
- font-size: 1.5rem;
99
- font-weight: bold;
100
- color: var(--md-sys-color-primary);
101
- }
102
-
103
- .header-options {
104
- display: flex;
105
- gap: 0.5rem;
106
- align-items: center;
107
- }
108
-
109
- .content {
110
- max-width: 1500px;
111
- width: 100%;
112
- height: 100%;
113
- margin: 1rem auto;
114
- display: flex;
115
- flex-direction: column;
116
- flex: 1;
117
- }
118
- `;
119
- }
120
- constructor() {
121
- super();
122
- this.subscriptions = [];
123
- this.papyros.launch();
124
- }
125
- connectedCallback() {
126
- super.connectedCallback();
127
- this.initializeLocalStorageProperty(this.papyros.i18n, "locale");
128
- this.initializeLocalStorageProperty(this.papyros.runner, "code");
129
- this.initializeLocalStorageProperty(this.papyros.runner, "programmingLanguage");
130
- this.initializeLocalStorageProperty(this.papyros.constants, "activeTheme");
131
- }
132
- disconnectedCallback() {
133
- super.disconnectedCallback();
134
- this.subscriptions.forEach((s) => s());
135
- this.subscriptions = [];
136
- }
137
- initializeLocalStorageProperty(state, property) {
138
- const storedValue = localStorage.getItem(property);
139
- if (storedValue !== null) {
140
- try {
141
- state[property] = JSON.parse(storedValue);
142
- }
143
- catch (_a) {
144
- // ignore invalid JSON
145
- }
146
- }
147
- const unsubscribe = state.subscribe(() => {
148
- localStorage.setItem(property, JSON.stringify(state[property]));
149
- }, property);
150
- this.subscriptions.push(unsubscribe);
151
- }
152
- setTheme(theme) {
153
- document.documentElement.style.setProperty("color-scheme", theme.dark ? "dark" : "light");
154
- adoptStyles(this.renderRoot, [App_1.styles, theme.theme]);
155
- }
156
- render() {
157
- this.setTheme(this.papyros.constants.activeTheme);
158
- return html `
159
- <div class="rows">
160
- <div class="header">
161
- <div class="header-options">
162
- <span class="title">${this.t("Papyros.Papyros")}</span>
163
- <md-icon-button href="https://github.com/dodona-edu/papyros" target="_blank" rel="noopener">
164
- <md-icon>
165
- <svg viewBox="0 0 24 24" fill="currentColor">
166
- <path
167
- d="M12 1.27a11 11 0 00-3.48 21.46c.55.09.73-.28.73-.55v-1.84c-3.03.64-3.67-1.46-3.67-1.46-.55-1.29-1.28-1.65-1.28-1.65-.92-.65.1-.65.1-.65 1.1 0 1.73 1.1 1.73 1.1.92 1.65 2.57 1.2 3.21.92a2 2 0 01.64-1.47c-2.47-.27-5.04-1.19-5.04-5.5 0-1.1.46-2.1 1.2-2.84a3.76 3.76 0 010-2.93s.91-.28 3.11 1.1c1.8-.49 3.7-.49 5.5 0 2.1-1.38 3.02-1.1 3.02-1.1a3.76 3.76 0 010 2.93c.83.74 1.2 1.74 1.2 2.94 0 4.21-2.57 5.13-5.04 5.4.45.37.82.92.82 2.02v3.03c0 .27.1.64.73.55A11 11 0 0012 1.27"
168
- ></path>
169
- </svg>
170
- </md-icon>
171
- </md-icon-button>
172
- </div>
173
- <div class="header-options">
174
- <p-theme-picker .papyros=${this.papyros}></p-theme-picker>
175
- <p-language-picker .papyros=${this.papyros}></p-language-picker>
176
- <p-programming-language-picker .papyros=${this.papyros}></p-programming-language-picker>
177
- </div>
178
- </div>
179
- <div class="content">
180
- <div class="top">
181
- <div class="left container">
182
- <p-code-runner .papyros=${this.papyros} class="overflow">
183
- <p-example-picker .papyros=${this.papyros} slot="buttons"></p-example-picker>
184
- </p-code-runner>
185
- </div>
186
- <div class="right">
187
- <div class="container grow overflow">
188
- <p-output .papyros=${this.papyros}></p-output>
189
- </div>
190
- <div class="container">
191
- <p-input .papyros=${this.papyros}></p-input>
192
- </div>
193
- </div>
194
- </div>
195
- <div class="bottom container overflow">
196
- <p-debugger .papyros=${this.papyros}></p-debugger>
197
- </div>
198
- </div>
199
- </div>
200
- `;
201
- }
202
- };
203
- App = App_1 = __decorate([
204
- customElement("p-app")
205
- ], App);
206
- export { App };
207
- //# sourceMappingURL=App.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../../src/frontend/components/app/App.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { PapyrosElement } from "../PapyrosElement";
2
- import { TemplateResult } from "lit";
3
- import "@material/web/select/outlined-select";
4
- import "@material/web/select/select-option";
5
- export declare class ExamplePicker extends PapyrosElement {
6
- protected render(): TemplateResult;
7
- }
@@ -1,36 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { customElement } from "lit/decorators.js";
8
- import { PapyrosElement } from "../PapyrosElement";
9
- import { html } from "lit";
10
- import "@material/web/select/outlined-select";
11
- import "@material/web/select/select-option";
12
- import { RunState } from "../../state/Runner";
13
- let ExamplePicker = class ExamplePicker extends PapyrosElement {
14
- render() {
15
- return html `
16
- <md-outlined-select
17
- ?disabled=${this.papyros.runner.state !== RunState.Ready || this.papyros.debugger.active}
18
- label=${this.t("Papyros.examples")}
19
- @input=${(e) => {
20
- this.papyros.runner.code = this.papyros.examples.getExampleCode(e.target.value);
21
- }}
22
- >
23
- ${this.papyros.examples.names.map((name) => html `
24
- <md-select-option value=${name}>
25
- <div slot="headline">${name}</div>
26
- </md-select-option>
27
- `)}
28
- </md-outlined-select>
29
- `;
30
- }
31
- };
32
- ExamplePicker = __decorate([
33
- customElement("p-example-picker")
34
- ], ExamplePicker);
35
- export { ExamplePicker };
36
- //# sourceMappingURL=ExamplePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExamplePicker.js","sourceRoot":"","sources":["../../../../src/frontend/components/app/ExamplePicker.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAkB,MAAM,KAAK,CAAC;AAC3C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGvC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,cAAc;IAC1B,MAAM;QACrB,OAAO,IAAI,CAAA;;4BAES,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;wBAChF,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC;yBACzB,CAAC,CAAa,EAAE,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAC1D,CAAC,CAAC,MAA2B,CAAC,KAAK,CACvC,CAAC;QACN,CAAC;;kBAEC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAC7B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAA;kDACgB,IAAI;mDACH,IAAI;;qBAElC,CACJ;;SAER,CAAC;IACN,CAAC;CACJ,CAAA;AAtBY,aAAa;IADzB,aAAa,CAAC,kBAAkB,CAAC;GACrB,aAAa,CAsBzB"}
@@ -1,7 +0,0 @@
1
- import { PapyrosElement } from "../PapyrosElement";
2
- import { TemplateResult } from "lit";
3
- import "@material/web/select/outlined-select";
4
- import "@material/web/select/select-option";
5
- export declare class LanguagePicker extends PapyrosElement {
6
- protected render(): TemplateResult;
7
- }
@@ -1,33 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { customElement } from "lit/decorators.js";
8
- import { PapyrosElement } from "../PapyrosElement";
9
- import { html } from "lit";
10
- import "@material/web/select/outlined-select";
11
- import "@material/web/select/select-option";
12
- let LanguagePicker = class LanguagePicker extends PapyrosElement {
13
- render() {
14
- return html `
15
- <md-outlined-select
16
- @input=${(e) => {
17
- this.papyros.i18n.locale = e.target.value;
18
- }}
19
- >
20
- ${this.papyros.i18n.availableLocales.map((lang) => html `
21
- <md-select-option value=${lang} ?selected=${this.papyros.i18n.locale === lang}>
22
- <div slot="headline">${this.t(`Papyros.locales.${lang}`)}</div>
23
- </md-select-option>
24
- `)}
25
- </md-outlined-select>
26
- `;
27
- }
28
- };
29
- LanguagePicker = __decorate([
30
- customElement("p-language-picker")
31
- ], LanguagePicker);
32
- export { LanguagePicker };
33
- //# sourceMappingURL=LanguagePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LanguagePicker.js","sourceRoot":"","sources":["../../../../src/frontend/components/app/LanguagePicker.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAkB,MAAM,KAAK,CAAC;AAC3C,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAGrC,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,cAAc;IAC3B,MAAM;QACrB,OAAO,IAAI,CAAA;;yBAEM,CAAC,CAAa,EAAE,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK,CAAC;QACpE,CAAC;;kBAEC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAA;kDACgB,IAAI,cAAc,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI;mDAClD,IAAI,CAAC,CAAC,CAAC,mBAAmB,IAAI,EAAE,CAAC;;qBAE/D,CACJ;;SAER,CAAC;IACN,CAAC;CACJ,CAAA;AAlBY,cAAc;IAD1B,aAAa,CAAC,mBAAmB,CAAC;GACtB,cAAc,CAkB1B"}
@@ -1,7 +0,0 @@
1
- import { PapyrosElement } from "../PapyrosElement";
2
- import { TemplateResult } from "lit";
3
- import "@material/web/select/outlined-select";
4
- import "@material/web/select/select-option";
5
- export declare class ProgrammingLanguagePicker extends PapyrosElement {
6
- protected render(): TemplateResult;
7
- }
@@ -1,38 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { customElement } from "lit/decorators.js";
8
- import { PapyrosElement } from "../PapyrosElement";
9
- import { html } from "lit";
10
- import { ProgrammingLanguage } from "../../../ProgrammingLanguage";
11
- import "@material/web/select/outlined-select";
12
- import "@material/web/select/select-option";
13
- import { RunState } from "../../state/Runner";
14
- let ProgrammingLanguagePicker = class ProgrammingLanguagePicker extends PapyrosElement {
15
- render() {
16
- return html `
17
- <md-outlined-select
18
- ?disabled=${this.papyros.runner.state !== RunState.Ready || this.papyros.debugger.active}
19
- label=${this.t("Papyros.programming_language")}
20
- @input=${(e) => {
21
- this.papyros.runner.programmingLanguage = e.target
22
- .value;
23
- }}
24
- >
25
- ${Object.values(ProgrammingLanguage).map((lang) => html `
26
- <md-select-option value=${lang} ?selected=${this.papyros.runner.programmingLanguage === lang}>
27
- <div slot="headline">${lang}</div>
28
- </md-select-option>
29
- `)}
30
- </md-outlined-select>
31
- `;
32
- }
33
- };
34
- ProgrammingLanguagePicker = __decorate([
35
- customElement("p-programming-language-picker")
36
- ], ProgrammingLanguagePicker);
37
- export { ProgrammingLanguagePicker };
38
- //# sourceMappingURL=ProgrammingLanguagePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgrammingLanguagePicker.js","sourceRoot":"","sources":["../../../../src/frontend/components/app/ProgrammingLanguagePicker.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAkB,MAAM,KAAK,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,sCAAsC,CAAC;AAC9C,OAAO,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGvC,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,cAAc;IACtC,MAAM;QACrB,OAAO,IAAI,CAAA;;4BAES,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM;wBAChF,IAAI,CAAC,CAAC,CAAC,8BAA8B,CAAC;yBACrC,CAAC,CAAa,EAAE,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,GAAI,CAAC,CAAC,MAA2B;iBACnE,KAA4B,CAAC;QACtC,CAAC;;kBAEC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,GAAG,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAA;kDACgB,IAAI,cAAc,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,KAAK,IAAI;mDACjE,IAAI;;qBAElC,CACJ;;SAER,CAAC;IACN,CAAC;CACJ,CAAA;AArBY,yBAAyB;IADrC,aAAa,CAAC,+BAA+B,CAAC;GAClC,yBAAyB,CAqBrC"}
@@ -1,5 +0,0 @@
1
- export declare const JAVASCRIPT_EXAMPLES: {
2
- "Hello world!": string;
3
- Input: string;
4
- Fibonacci: string;
5
- };
@@ -1,16 +0,0 @@
1
- export const JAVASCRIPT_EXAMPLES = {
2
- "Hello world!": 'console.log("Hello, World!");',
3
- Input: `const name = prompt('What is your name?')
4
- console.log(\`Hello, \${name}!\`)`,
5
- Fibonacci: `function fibonacci(n){
6
- if (n <= 1) {
7
- return n;
8
- }
9
- return fibonacci(n - 2) + fibonacci(n - 1);
10
- }
11
- for(let i = 0; i < 10; i += 1){
12
- console.log(fibonacci(i));
13
- }
14
- `,
15
- };
16
- //# sourceMappingURL=JavaScriptExamples.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JavaScriptExamples.js","sourceRoot":"","sources":["../../../../../src/frontend/components/app/examples/JavaScriptExamples.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAC/B,cAAc,EAAE,+BAA+B;IAC/C,KAAK,EAAE;kCACuB;IAC9B,SAAS,EAAE;;;;;;;;;CASd;CACA,CAAC"}
@@ -1,14 +0,0 @@
1
- export declare const PYTHON_EXAMPLES: {
2
- "Hello, World!": string;
3
- Input: string;
4
- Fibonacci: string;
5
- Doctests: string;
6
- Async: string;
7
- Erroneous: string;
8
- Unicode: string;
9
- Files: string;
10
- Matplotlib: string;
11
- Sleep: string;
12
- Overflow: string;
13
- Interrupt: string;
14
- };