aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoranika-ahluwalia <anika.ahluwalia@gmail.com>2020-06-02 00:20:56 -0500
committeranika-ahluwalia <anika.ahluwalia@gmail.com>2020-06-02 00:20:56 -0500
commitc3cc4bebe92ccdee2f95f5b6dee9d4e2f136a206 (patch)
treeeff5ead2444e9dae10aa3e4708b1c5faf6e701cd
parent3e6f91475bf1654c780c619dbb916ce606ce5f28 (diff)
fixed starting, got rid of space when selected
-rw-r--r--package-lock.json27
-rw-r--r--package.json2
-rw-r--r--src/client/views/nodes/ScriptingBox.tsx44
3 files changed, 43 insertions, 30 deletions
diff --git a/package-lock.json b/package-lock.json
index af474ff88..3cf4ac4af 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -412,15 +412,6 @@
"integrity": "sha512-t7uW6eFafjO+qJ3BIV2gGUyZs27egcNRkUdalkud+Qa3+kg//f129iuOFivHDXQ+vnU3fDXuwgv0cqMCbcE8sw==",
"dev": true
},
- "@types/chrome": {
- "version": "0.0.114",
- "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.114.tgz",
- "integrity": "sha512-i7qRr74IrxHtbnrZSKUuP5Uvd5EOKwlwJq/yp7+yTPihOXnPhNQO4Z5bqb1XTnrjdbUKEJicaVVbhcgtRijmLA==",
- "requires": {
- "@types/filesystem": "*",
- "@types/har-format": "*"
- }
- },
"@types/color": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@types/color/-/color-3.0.1.tgz",
@@ -556,19 +547,6 @@
"express-validator": "*"
}
},
- "@types/filesystem": {
- "version": "0.0.29",
- "resolved": "https://registry.npmjs.org/@types/filesystem/-/filesystem-0.0.29.tgz",
- "integrity": "sha512-85/1KfRedmfPGsbK8YzeaQUyV1FQAvMPMTuWFQ5EkLd2w7szhNO96bk3Rh/SKmOfd9co2rCLf0Voy4o7ECBOvw==",
- "requires": {
- "@types/filewriter": "*"
- }
- },
- "@types/filewriter": {
- "version": "0.0.28",
- "resolved": "https://registry.npmjs.org/@types/filewriter/-/filewriter-0.0.28.tgz",
- "integrity": "sha1-wFTor02d11205jq8dviFFocU1LM="
- },
"@types/formidable": {
"version": "1.0.31",
"resolved": "https://registry.npmjs.org/@types/formidable/-/formidable-1.0.31.tgz",
@@ -606,11 +584,6 @@
"integrity": "sha512-L8O9HAVFZj0TuiS8h5ORthiMsrrhjxTC8XUusp5k47oXCst4VTm+qWKvrAvmYMybZVokbp4Udco1mNwJrTNZPQ==",
"dev": true
},
- "@types/har-format": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.4.tgz",
- "integrity": "sha512-iUxzm1meBm3stxUMzRqgOVHjj4Kgpgu5w9fm4X7kPRfSgVRzythsucEN7/jtOo8SQzm+HfcxWWzJS0mJDH/3DQ=="
- },
"@types/jquery": {
"version": "3.3.36",
"resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.3.36.tgz",
diff --git a/package.json b/package.json
index ff13cf2d5..9b5b7580a 100644
--- a/package.json
+++ b/package.json
@@ -231,4 +231,4 @@
"xoauth2": "^1.2.0",
"xregexp": "^4.3.0"
}
-} \ No newline at end of file
+}
diff --git a/src/client/views/nodes/ScriptingBox.tsx b/src/client/views/nodes/ScriptingBox.tsx
index 245081c47..10f414821 100644
--- a/src/client/views/nodes/ScriptingBox.tsx
+++ b/src/client/views/nodes/ScriptingBox.tsx
@@ -38,6 +38,7 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps, Sc
@observable private _errorMessage: string = "";
@observable private _applied: boolean = false;
@observable private _hovered: boolean = false;
+ @observable private _spaced: boolean = false;
@observable private _scriptKeys: any = Scripting.getGlobals();
@observable private _scriptGlobals: any = Scripting.getGlobalObj();
@observable private _currWord: string = "";
@@ -451,7 +452,7 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps, Sc
trace();
return <div style={{ width: this.compileParams.length > 0 ? "70%" : "100%" }}>
<ReactTextareaAutocomplete className="ScriptingBox-textarea" style={{ resize: "none", height: "100%" }}
- minChar={0}
+ minChar={1}
placeholder="write your script here"
onFocus={this.onFocus}
onBlur={() => this._overlayDisposer?.()}
@@ -483,10 +484,49 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps, Sc
}
</div>,
output: (item: any, trigger) => trigger + item.trim(),
+ },
+ ".": {
+ dataProvider: (token: any) => this.handleToken(token),
+ component: ({ entity: value }) =>
+ <div>
+ <div style={{ fontSize: "14px" }}
+ onMouseEnter={() => this.setHovered(true)}
+ onMouseLeave={() => this.setHovered(false)}>
+ {value}
+ </div>
+ {!this._hovered ? (null) :
+ <>
+ <div key="desc" style={{ fontSize: "10px" }}>{this.getDescription(value)}</div>
+ <div key="params" style={{ fontSize: "10px" }}>{this.getParams(value)}</div>
+ </>
+ }
+ </div>,
+ output: (item: any, trigger) => {
+ this._spaced = true;
+ return trigger + item.trim();
+ },
}
}}
- onCaretPositionChange={(number: any) => this.caretPos = number}
+ onCaretPositionChange={(number: any) => {
+ this.caretPos = number;
+ if (this.caretPos === 0) {
+ this.rawScript = " " + this.rawScript;
+ } else if (this._spaced) {
+ this._spaced = false;
+ if (this.rawScript[this.rawScript.length - 1] === " ") {
+ this.rawScript = this.rawScript.slice(0, this.rawScript.length - 1);
+ }
+ }
+ }}
+
+ // onClick={() => this.rawScript = this.rawScript[this.rawScript.length - 1]}
+
+ // onKeyPress={e => {
+ // if (e.key === "Enter" || e.key === "Tab") {
+ // this.rawScript = this.rawScript[this.rawScript.length - 1];
+ // }
+ // }}
/>
</div>;
}