diff options
| author | yipstanley <stanley_yip@brown.edu> | 2019-02-10 22:12:04 -0500 |
|---|---|---|
| committer | yipstanley <stanley_yip@brown.edu> | 2019-02-10 22:12:04 -0500 |
| commit | 69f0b463a78c82aaf78ceb6a5162431424452311 (patch) | |
| tree | a54c7129f36d307420422b3babfa6da4d85db67e /src/util/Scripting.ts | |
| parent | 2e930b98726a09e597106d43a6763dd36d038771 (diff) | |
| parent | 099c5823f05285fc5086c5a433658cf06dc4a04b (diff) | |
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web into server_implementation
Diffstat (limited to 'src/util/Scripting.ts')
| -rw-r--r-- | src/util/Scripting.ts | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/util/Scripting.ts b/src/util/Scripting.ts deleted file mode 100644 index 804c67bc5..000000000 --- a/src/util/Scripting.ts +++ /dev/null @@ -1,47 +0,0 @@ -// import * as ts from "typescript" -let ts = (window as any).ts; -import { Opt, Field, FieldWaiting } from "../fields/Field"; -import { Document as DocumentImport } from "../fields/Document"; -import { NumberField as NumberFieldImport } from "../fields/NumberField"; -import { TextField as TextFieldImport } from "../fields/TextField"; -import { RichTextField as RichTextFieldImport } from "../fields/RichTextField"; -import { KeyStore as KeyStoreImport } from "../fields/Key"; - -export interface ExecutableScript { - (): any; - - compiled: boolean; -} - -function ExecScript(script: string, diagnostics: Opt<any[]>): ExecutableScript { - const compiled = !(diagnostics && diagnostics != FieldWaiting && diagnostics.some(diag => diag.category == ts.DiagnosticCategory.Error)); - - let func: () => Opt<Field>; - if (compiled) { - func = function (): Opt<Field> { - let KeyStore = KeyStoreImport; - let Document = DocumentImport; - let NumberField = NumberFieldImport; - let TextField = TextFieldImport; - let RichTextField = RichTextFieldImport; - let window = undefined; - let document = undefined; - let retVal = eval(script); - - return retVal; - }; - } else { - func = () => undefined; - } - - return Object.assign(func, - { - compiled - }); -} - -export function CompileScript(script: string): ExecutableScript { - let result = (window as any).ts.transpileModule(script, {}) - - return ExecScript(result.outputText, result.diagnostics); -}
\ No newline at end of file |
