aboutsummaryrefslogtreecommitdiff
path: root/src/client/views
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/views')
-rw-r--r--src/client/views/nodes/DataVizBox/DataVizBox.tsx43
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu.tsx24
-rw-r--r--src/client/views/nodes/ImageBox.tsx1
3 files changed, 41 insertions, 27 deletions
diff --git a/src/client/views/nodes/DataVizBox/DataVizBox.tsx b/src/client/views/nodes/DataVizBox/DataVizBox.tsx
index e8235ce1a..d9a7d5e3a 100644
--- a/src/client/views/nodes/DataVizBox/DataVizBox.tsx
+++ b/src/client/views/nodes/DataVizBox/DataVizBox.tsx
@@ -175,6 +175,15 @@ export class DataVizBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
}
}
+ @action setColumnTitle = (colTitle: string, newTitle: string) => {
+ const colInfo = this.colsInfo.get(colTitle);
+ if (colInfo) {
+ colInfo.title = newTitle;
+ } else {
+ this.colsInfo.set(colTitle, {title: newTitle, desc: '', type: TemplateFieldType.UNSET, size: TemplateFieldSize.MEDIUM})
+ }
+ }
+
@action setColumnDesc = (colTitle: string, desc: string) => {
const colInfo = this.colsInfo.get(colTitle);
if (colInfo) {
@@ -580,33 +589,33 @@ export class DataVizBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
const prompt = this.getColSummary();
+ console.log(prompt)
+
const cols = Array.from(Object.keys(this.records[0])).filter(header => header !== '' && header !== undefined);
cols.forEach(col => {
if (!this.colsInfo.get(col)) this.colsInfo.set(col, {title: col, desc: '', size: TemplateFieldSize.MEDIUM, type: TemplateFieldType.UNSET});
});
try {
- const res = await gptAPICall(prompt, GPTCallType.VIZSUM);
-
- if (res) {
+ const [res1, res2] = await Promise.all([
+ gptAPICall(prompt, GPTCallType.VIZSUM),
+ gptAPICall('Info:' + prompt, GPTCallType.VIZSUM2)
+ ]);
+
+ if (res1) {
+ console.log(res1);
this.GPTSummary = new ObservableMap();
- const descs: {[col: string]: string} = JSON.parse(res);
+ const descs: { [col: string]: string } = JSON.parse(res1);
for (const [key, val] of Object.entries(descs)) {
- this.GPTSummary.set(key, {desc: val});
+ this.GPTSummary.set(key, { desc: val });
if (!this.colsInfo.get(key)?.desc) this.setColumnDesc(key, val);
}
}
- } catch (err) {
- console.error(err);
- }
-
- try {
- const res = await gptAPICall('Info:' + prompt, GPTCallType.VIZSUM2);
-
- if (res) {
+
+ if (res2) {
!this.GPTSummary && (this.GPTSummary = new ObservableMap());
- const info: {[col: string]: {type: TemplateFieldType, size: TemplateFieldSize}} = JSON.parse(res);
- console.log(info)
+ const info: { [col: string]: { type: TemplateFieldType, size: TemplateFieldSize } } = JSON.parse(res2);
+ console.log(info);
for (const [key, val] of Object.entries(info)) {
const colSummary = this.GPTSummary.get(key);
if (colSummary) {
@@ -616,11 +625,11 @@ export class DataVizBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
this.setColumnSize(key, val.size);
}
}
-
}
} catch (err) {
console.error(err);
- }
+ }
+
}
getPossibleTemplates = (): Doc[] => {
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu.tsx
index 33d9a8827..64152f577 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu.tsx
@@ -478,6 +478,15 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
}
};
+ setColTitle = (column: Col, title: string) => {
+ if (this.selectedFields.includes(column.title)) {
+ this._dataViz?.setColumnTitle(column.title, title);
+ } else {
+ column.title = title;
+ }
+ this.forceUpdate();
+ };
+
setColType = (column: Col, type: TemplateFieldType) => {
if (this.selectedFields.includes(column.title)) {
this._dataViz?.setColumnType(column.title, type);
@@ -492,6 +501,7 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
this._dataViz?.setColumnSize(column.title, size);
} else {
column.size = size;
+ console.log(column.size)
}
this.forceUpdate();
};
@@ -501,7 +511,6 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
this._dataViz?.setColumnDesc(column.title, desc);
} else {
column.desc = desc;
- console.log(column, column.desc)
}
this.forceUpdate();
};
@@ -620,13 +629,12 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
const stringifyGPTInfo = (): string => {
let string: string = '*** COLUMN INFO:';
GPTAssignments.forEach(([fieldNum, col]) => {
- `--- title: ${col.title}, prompt: ${col.desc}, word limit: ${wordLimit(col.size)} words, assigned field: ${fieldNum} ---`
+ string += `--- title: ${col.title}, prompt: ${col.desc}, word limit: ${wordLimit(col.size)} words, assigned field: ${fieldNum} ---`
});
return string += ' ***';
};
const GPTAssignmentString = stringifyGPTInfo();
- console.log('assignment string', GPTAssignmentString);
let fieldContent: string = '';
@@ -682,8 +690,6 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
return main;
}
- console.log('field content', fieldContent)
-
if (GPTAssignments.length) {
try {
@@ -695,7 +701,7 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
console.log('response', res);
const assignments: {[title: string]: {number: string, content: string}} = JSON.parse(res);
- console.log('assignments', assignments);
+ console.log('assignments', GPTAssignments, 'assignment string', GPTAssignmentString, 'field content', fieldContent, 'response', res, 'assignments', assignments);
Object.entries(assignments).forEach(([title, info]) => {
const field: Field = template.fields[Number(info.number)];
const col = this.getColByTitle(title);
@@ -1164,7 +1170,7 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
{this.fieldsInfos.map((field, index) =>
<div className='field-panel' id={`${index}`}>
<div className='properties-wrapper'>
- <input className='field-property-container' id={`${Math.random() * 100}`} defaultValue={field.title} placeholder={'Enter title'}/>
+ <input className='field-property-container' id={`${Math.random() * 100}`} defaultValue={field.title} placeholder={'Enter title'} onChange={(e) => this.setColTitle(field, e.target.value)}/>
<div className='field-type-selection-container'>
{field.type === TemplateFieldType.UNSET ? <span className='placeholder'>Select media type</span> : null}
<span className='type-display'>{field.type === TemplateFieldType.TEXT ? 'Text Field' : field.type === TemplateFieldType.VISUAL ? 'File Field' : ''}</span>
@@ -1175,7 +1181,7 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
<div className='text'>File</div>
</div>
</div>
- <input className='field-property-container' id={`${Math.random() * 100}`} placeholder={this._dataViz?.GPTSummary?.get(field.title)?.size} style={{width: field.title === '' ? '30%' : ''}}/>
+ <input className='field-property-container' id={`${Math.random() * 100}`} placeholder={this._dataViz?.GPTSummary?.get(field.title)?.size} style={{width: field.title === '' ? '30%' : ''} } onChange={(e) => this.setColSize(field, e.target.value as TemplateFieldSize)}/>
</div>
<textarea className='field-description-container' onChange={(e) => this.setColDesc(field, e.target.value)} defaultValue={field.desc === this._dataViz?.GPTSummary?.get(field.title)?.desc ? '' : field.desc } placeholder={this._dataViz?.GPTSummary?.get(field.title)?.desc ?? 'Add a description to help with template generation.'} />
<div>
@@ -1434,7 +1440,7 @@ export class FieldFuncs {
const width = r - l;
const height = b - t;
const coord = {x: l, y: t};
- console.log(coords, parentWidth, parentHeight, height);
+ //console.log(coords, parentWidth, parentHeight, height);
return {width, height, coord};
}
diff --git a/src/client/views/nodes/ImageBox.tsx b/src/client/views/nodes/ImageBox.tsx
index 53aa7171f..3e5458888 100644
--- a/src/client/views/nodes/ImageBox.tsx
+++ b/src/client/views/nodes/ImageBox.tsx
@@ -456,7 +456,6 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
savedAnnotations = () => this._savedAnnotations;
render() {
- console.log('img', this._props.PanelWidth(), this._props.PanelHeight())
TraceMobx();
const borderRad = this._props.styleProvider?.(this.layoutDoc, this._props, StyleProp.BorderRounding);
const borderRadius = borderRad?.includes('px') ? `${Number(borderRad.split('px')[0]) / (this._props.NativeDimScaling?.() || 1)}px` : borderRad;