From 52b8410f14c4e522b0d7bbdbfb64d8fdbd5c3023 Mon Sep 17 00:00:00 2001
From: Nathan-SR <144961007+Nathan-SR@users.noreply.github.com>
Date: Wed, 15 May 2024 22:26:42 -0400
Subject: columheader editing working!! (kinda hacky using readonly input
 revisit)

---
 .../collectionSchema/CollectionSchemaView.tsx      | 49 +++++++++-------------
 1 file changed, 20 insertions(+), 29 deletions(-)

(limited to 'src/client/views/collections/collectionSchema/CollectionSchemaView.tsx')

diff --git a/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx b/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx
index 3d7c7882e..db23f874e 100644
--- a/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx
+++ b/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx
@@ -331,7 +331,7 @@ export class CollectionSchemaView extends CollectionSubView() {
 
         const currKeys = this.columnKeys.slice();
         currKeys.splice(index, 1);
-        this.layoutDoc.schema_columnKeys = new List<string>(currKeys);
+        this.layoutDoc.schema_columnKeys = new List<string>(currKeys); 
     };
 
     @action
@@ -677,19 +677,6 @@ export class CollectionSchemaView extends CollectionSubView() {
                         })}
                     />
                 );
-            case ColumnType.Equation:
-                return (
-                    <input
-                        type="text"
-                        name=""
-                        id=""
-                        value={this._newFieldDefault ?? ''}
-                        onPointerDown={e => e.stopPropagation()}
-                        onChange={action((e: any) => {
-                            this._newFieldDefault = e.target.value;
-                        })}
-                    />
-                );
             default:
                 return undefined;
         }
@@ -714,7 +701,6 @@ export class CollectionSchemaView extends CollectionSubView() {
     @action
     setKey = (key: string, defaultVal?: any, index?: number) => {
         if (this.columnKeys.includes(key)){
-            this._newFieldWarning = 'Field already exists';
             return;
         }
 
@@ -798,12 +784,29 @@ export class CollectionSchemaView extends CollectionSubView() {
         this._filterColumnIndex = undefined;
     };
 
-    openContextMenu = (x: number, y: number, index: number) => {
+    openContextMenu = (x: number, y: number, index: number, fieldType: ColumnType) => {
         this.closeColumnMenu();
         this.closeFilterMenu();
+
+        let toDisplay: string = '';
+        switch (fieldType) {
+            case ColumnType.Number:
+                toDisplay = 'number';
+                break;
+            case ColumnType.String:
+                toDisplay = 'string';
+                break;
+            case ColumnType.Boolean:
+                toDisplay = 'boolean';
+                break;
+            default:
+                toDisplay = 'string';
+                break;
+        }
+
         ContextMenu.Instance.clearItems();
         ContextMenu.Instance.addItem({
-            description: 'Change field',
+            description: `Field type: ${toDisplay}`,
             event: () => this.openColumnMenu(index, false),
             icon: 'pencil-alt',
         });
@@ -886,18 +889,6 @@ export class CollectionSchemaView extends CollectionSubView() {
                     />
                     string
                 </div>
-                <div className="schema-key-type-option">
-                    <input
-                        type="radio"
-                        name="newFieldType"
-                        checked={this._newFieldType === ColumnType.Equation}
-                        onChange={action(() => {
-                            this._newFieldType = ColumnType.Equation;
-                            this._newFieldDefault = '';
-                        })}
-                    />
-                    equation
-                </div>
                 <div className="schema-key-default-val">value: {this.fieldDefaultInput}</div>
                 <div className="schema-key-warning">{this._newFieldWarning}</div>
                 <div
-- 
cgit v1.2.3-70-g09d2

