@dodona/papyros 0.1.38 → 0.1.42
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.
- package/dist/CodeEditor.d.ts +10 -2
- package/dist/Constants.d.ts +1 -0
- package/dist/InputManager.d.ts +3 -2
- package/dist/OutputManager.d.ts +5 -2
- package/dist/Papyros.d.ts +13 -5
- package/dist/StatusPanel.d.ts +2 -1
- package/dist/index.js +1 -1
- package/dist/inputServiceWorker.js +1 -1
- package/dist/library.d.ts +9 -9
- package/dist/util/Util.d.ts +7 -0
- package/package.json +1 -1
package/dist/CodeEditor.d.ts
CHANGED
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LanguageSupport } from "@codemirror/language";
|
|
2
|
+
import { Compartment, Extension } from "@codemirror/state";
|
|
2
3
|
import { ProgrammingLanguage } from "./ProgrammingLanguage";
|
|
3
4
|
import { EditorView } from "@codemirror/view";
|
|
5
|
+
import { RenderOptions } from "./util/Util";
|
|
4
6
|
export declare class CodeEditor {
|
|
5
7
|
editorView: EditorView;
|
|
6
8
|
languageCompartment: Compartment;
|
|
7
9
|
indentCompartment: Compartment;
|
|
8
10
|
placeholderCompartment: Compartment;
|
|
9
|
-
|
|
11
|
+
panelCompartment: Compartment;
|
|
12
|
+
constructor(language: ProgrammingLanguage, editorPlaceHolder: string, initialCode?: string, indentLength?: number);
|
|
13
|
+
render(options: RenderOptions, panel?: HTMLElement): HTMLElement;
|
|
10
14
|
setLanguage(language: ProgrammingLanguage, editorPlaceHolder: string): void;
|
|
11
15
|
setIndentLength(indentLength: number): void;
|
|
16
|
+
setPanel(panel: HTMLElement): void;
|
|
12
17
|
getCode(): string;
|
|
13
18
|
setCode(code: string): void;
|
|
14
19
|
focus(): void;
|
|
20
|
+
static getIndentUnit(indentLength: number): string;
|
|
21
|
+
static getLanguageSupport(language: ProgrammingLanguage): LanguageSupport;
|
|
22
|
+
static getExtensions(): Array<Extension>;
|
|
15
23
|
}
|
package/dist/Constants.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare const OUTPUT_TA_ID = "code-output-area";
|
|
|
4
4
|
export declare const INPUT_AREA_WRAPPER_ID = "code-input-area-wrapper";
|
|
5
5
|
export declare const INPUT_TA_ID = "code-input-area";
|
|
6
6
|
export declare const EDITOR_WRAPPER_ID = "code-area";
|
|
7
|
+
export declare const PANEL_WRAPPER_ID = "code-status-panel";
|
|
7
8
|
export declare const STATE_SPINNER_ID = "state-spinner";
|
|
8
9
|
export declare const APPLICATION_STATE_TEXT_ID = "application-state-text";
|
|
9
10
|
export declare const RUN_BTN_ID = "run-code-btn";
|
package/dist/InputManager.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PapyrosEvent } from "./PapyrosEvent";
|
|
2
|
+
import { RenderOptions } from "./util/Util";
|
|
2
3
|
export declare enum InputMode {
|
|
3
4
|
Interactive = "interactive",
|
|
4
5
|
Batch = "batch"
|
|
@@ -8,7 +9,7 @@ interface InputSession {
|
|
|
8
9
|
lineNr: number;
|
|
9
10
|
}
|
|
10
11
|
export declare class InputManager {
|
|
11
|
-
|
|
12
|
+
renderOptions: RenderOptions;
|
|
12
13
|
inputMode: InputMode;
|
|
13
14
|
waiting: boolean;
|
|
14
15
|
batchInput: string;
|
|
@@ -20,7 +21,7 @@ export declare class InputManager {
|
|
|
20
21
|
constructor(onSend: () => void, inputMode: InputMode);
|
|
21
22
|
get enterButton(): HTMLButtonElement;
|
|
22
23
|
get inputArea(): HTMLInputElement;
|
|
23
|
-
|
|
24
|
+
render(options?: RenderOptions): void;
|
|
24
25
|
setInputMode(inputMode: InputMode): void;
|
|
25
26
|
setWaiting(waiting: boolean, prompt?: string): void;
|
|
26
27
|
sendLine(): Promise<boolean>;
|
package/dist/OutputManager.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PapyrosEvent } from "./PapyrosEvent";
|
|
2
|
+
import { RenderOptions } from "./util/Util";
|
|
2
3
|
export interface FriendlyError {
|
|
3
4
|
name: string;
|
|
4
5
|
traceback?: string;
|
|
@@ -8,12 +9,14 @@ export interface FriendlyError {
|
|
|
8
9
|
where?: string;
|
|
9
10
|
}
|
|
10
11
|
export declare class OutputManager {
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
outputAreaId: string;
|
|
13
|
+
get outputArea(): HTMLElement;
|
|
13
14
|
renderNextElement(html: string): void;
|
|
14
15
|
spanify(text: string, ignoreEmpty?: boolean): string;
|
|
15
16
|
showOutput(output: PapyrosEvent): void;
|
|
16
17
|
showError(error: FriendlyError | string): void;
|
|
18
|
+
render(options: RenderOptions): HTMLElement;
|
|
19
|
+
reset(): void;
|
|
17
20
|
onRunStart(): void;
|
|
18
21
|
onRunEnd(): void;
|
|
19
22
|
}
|
package/dist/Papyros.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { CodeEditor } from "./CodeEditor";
|
|
|
5
5
|
import { InputManager, InputMode } from "./InputManager";
|
|
6
6
|
import { PapyrosEvent } from "./PapyrosEvent";
|
|
7
7
|
import { ProgrammingLanguage } from "./ProgrammingLanguage";
|
|
8
|
+
import { RenderOptions } from "./util/Util";
|
|
8
9
|
import { StatusPanel } from "./StatusPanel";
|
|
9
10
|
import { OutputManager } from "./OutputManager";
|
|
10
11
|
declare enum PapyrosState {
|
|
@@ -17,24 +18,30 @@ declare enum PapyrosState {
|
|
|
17
18
|
declare class PapyrosStateManager {
|
|
18
19
|
state: PapyrosState;
|
|
19
20
|
statusPanel: StatusPanel;
|
|
20
|
-
runButton: HTMLButtonElement;
|
|
21
|
-
stopButton: HTMLButtonElement;
|
|
21
|
+
get runButton(): HTMLButtonElement;
|
|
22
|
+
get stopButton(): HTMLButtonElement;
|
|
22
23
|
constructor(statusPanel: StatusPanel);
|
|
23
24
|
setState(state: PapyrosState, message?: string): void;
|
|
25
|
+
render(options: RenderOptions): HTMLElement;
|
|
24
26
|
}
|
|
25
27
|
interface PapyrosCodeState {
|
|
26
28
|
programmingLanguage: ProgrammingLanguage;
|
|
27
29
|
editor: CodeEditor;
|
|
28
30
|
backend: Remote<Backend>;
|
|
29
31
|
runId: number;
|
|
30
|
-
outputArea: HTMLInputElement;
|
|
31
32
|
}
|
|
32
33
|
interface PapyrosConfig {
|
|
33
34
|
standAlone: boolean;
|
|
34
35
|
programmingLanguage: ProgrammingLanguage;
|
|
35
36
|
locale: string;
|
|
36
37
|
inputMode: InputMode;
|
|
37
|
-
|
|
38
|
+
}
|
|
39
|
+
interface PapyrosRenderOptions {
|
|
40
|
+
papyros: RenderOptions;
|
|
41
|
+
code?: RenderOptions;
|
|
42
|
+
panel?: RenderOptions;
|
|
43
|
+
input?: RenderOptions;
|
|
44
|
+
output?: RenderOptions;
|
|
38
45
|
}
|
|
39
46
|
export declare class Papyros {
|
|
40
47
|
stateManager: PapyrosStateManager;
|
|
@@ -48,12 +55,13 @@ export declare class Papyros {
|
|
|
48
55
|
setCode(code: string): void;
|
|
49
56
|
getCode(): string;
|
|
50
57
|
startBackend(): Promise<void>;
|
|
51
|
-
static fromElement(
|
|
58
|
+
static fromElement(config: PapyrosConfig, renderOptions: PapyrosRenderOptions): Papyros;
|
|
52
59
|
static configureInput(allowReload: boolean): Promise<boolean>;
|
|
53
60
|
onError(e: PapyrosEvent): void;
|
|
54
61
|
onInput(e: PapyrosEvent): Promise<void>;
|
|
55
62
|
onMessage(e: PapyrosEvent): void;
|
|
56
63
|
runCode(): Promise<void>;
|
|
57
64
|
stop(): Promise<void>;
|
|
65
|
+
render(standAlone: boolean, programmingLanguage: ProgrammingLanguage, locale: string, renderOptions: PapyrosRenderOptions): void;
|
|
58
66
|
}
|
|
59
67
|
export {};
|
package/dist/StatusPanel.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { RenderOptions } from "./util/Util";
|
|
1
2
|
export declare class StatusPanel {
|
|
2
3
|
get statusSpinner(): HTMLElement;
|
|
3
4
|
get statusText(): HTMLElement;
|
|
4
5
|
showSpinner(show: boolean): void;
|
|
5
6
|
setStatus(status: string): void;
|
|
6
|
-
render(
|
|
7
|
+
render(options: RenderOptions): HTMLElement;
|
|
7
8
|
}
|