diff options
author | Tyler Schicke <tyler_schicke@brown.edu> | 2019-02-27 15:35:08 -0500 |
---|---|---|
committer | Tyler Schicke <tyler_schicke@brown.edu> | 2019-02-27 15:35:08 -0500 |
commit | c6ce284c0938587df5a0fa759587b33f8beaa68f (patch) | |
tree | 7493bed65ebc4df8670d2f43e83b3162de1589d9 /src/fields/WebField.ts | |
parent | 09f0bebe4ac64250769297ccf64c33217b8db66a (diff) | |
parent | 42b2b9df4e502986d630df40e12f78d7fa54667b (diff) |
Merge branch 'master' of github-tsch-brown:browngraphicslab/Dash-Web
Diffstat (limited to 'src/fields/WebField.ts')
-rw-r--r-- | src/fields/WebField.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/fields/WebField.ts b/src/fields/WebField.ts new file mode 100644 index 000000000..8f945d686 --- /dev/null +++ b/src/fields/WebField.ts @@ -0,0 +1,30 @@ +import { BasicField } from "./BasicField"; +import { Field, FieldId } from "./Field"; +import { Types } from "../server/Message"; + +export class WebField extends BasicField<URL> { + constructor(data: URL | undefined = undefined, id?: FieldId, save: boolean = true) { + super(data == undefined ? new URL("https://crossorigin.me/" + "https://cs.brown.edu/") : data, save, id); + } + + toString(): string { + return this.Data.href; + } + + ToScriptString(): string { + return `new WebField("${this.Data}")`; + } + + Copy(): Field { + return new WebField(this.Data); + } + + ToJson(): { type: Types, data: URL, _id: string } { + return { + type: Types.Web, + data: this.Data, + _id: this.Id + } + } + +}
\ No newline at end of file |