aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNathan-SR <144961007+Nathan-SR@users.noreply.github.com>2025-02-26 21:11:36 -0500
committerNathan-SR <144961007+Nathan-SR@users.noreply.github.com>2025-02-26 21:11:36 -0500
commit7d9fae09e8906e5636f6ea695ad560797b08d023 (patch)
tree3a994072fc1b724c49531e20e546e54469b4d8f4 /src
parentb623446ec0e71a3f696d14c3f169781c99f7e7b7 (diff)
something broke, reverting
Diffstat (limited to 'src')
-rw-r--r--src/client/documents/Documents.ts1
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx20
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/DynamicField.tsx5
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/Field.tsx12
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/FieldUtils.tsx2
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/StaticContentField.tsx22
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/Template.tsx1
7 files changed, 35 insertions, 28 deletions
diff --git a/src/client/documents/Documents.ts b/src/client/documents/Documents.ts
index 0a7047128..033a5e9be 100644
--- a/src/client/documents/Documents.ts
+++ b/src/client/documents/Documents.ts
@@ -704,6 +704,7 @@ export namespace Docs {
}
// users placeholderDoc as proto if it exists
+ console.log('placeholder: ', placeholderDocIn, ' data: ', dataProps['data'])
const dataDoc = Doc.assign(placeholderDoc ? Doc.GetProto(placeholderDoc) : Doc.MakeDelegate(proto, protoId), dataProps, undefined, true);
if (placeholderDoc) {
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
index faa6cffa8..ffdc6626d 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
@@ -47,6 +47,8 @@ export enum LayoutType {
export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
static Instance: DocCreatorMenu;
+ private DEBUG_MODE: boolean = false;
+
private _disposers: { [name: string]: IDisposer } = {};
private _ref: HTMLDivElement | null = null;
@@ -122,8 +124,11 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
};
@computed get docsToRender() {
- return [1, 2, 3, 4];
- //this._selectedTemplate ? NumListCast(this._dataViz?.layoutDoc.dataViz_selectedRows) : []; !!! put this back for GPT rendering
+ if (this.DEBUG_MODE){
+ return [1, 2, 3, 4];
+ } else {
+ return this._selectedTemplate ? NumListCast(this._dataViz?.layoutDoc.dataViz_selectedRows) : [];
+ }
}
@computed get rowsCount() {
@@ -620,8 +625,6 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
const renderedTemplates: (Template | undefined)[] = await Promise.all(renderedTemplatePromises);
- templates.forEach(template => template.mainField.initRenderedDoc())
-
setTimeout(() => {
this.setSuggestedTemplates(templates);
this._GPTLoading = false;
@@ -712,15 +715,6 @@ export class DocCreatorMenu extends ObservableReactComponent<FieldViewProps> {
const fields: string[] = Array.from(Object.keys(dv.records[0]));
const selectedRows = NumListCast(dv.layoutDoc.dataViz_selectedRows);
- const rowContents: { [title: string]: string }[] = selectedRows.map(row => {
- let values: { [title: string]: string } = {};
- fields.forEach(col => {
- values[col] = dv.records[row][col];
- });
-
- return values;
- });
-
const processContent = async (content: {[title: string]: string}) => {
const templateCopy = template.cloneBase();
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/DynamicField.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/DynamicField.tsx
index 7ffb1884e..5ee047841 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/DynamicField.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/DynamicField.tsx
@@ -1,3 +1,4 @@
+import { reaction } from "mobx";
import { Doc, DocListCast } from "../../../../../../fields/Doc";
import { Docs } from "../../../../../documents/Documents";
import { Col } from "../DocCreatorMenu";
@@ -11,7 +12,7 @@ export class DynamicField extends Field {
protected renderedDocument: Doc;
- constructor(settings: FieldSettings, id: number, parent?: Field) {
+ constructor(settings: FieldSettings, id: number, parent?: Field, protoDoc?: Doc) {
super(settings, id, FieldUtils.initField, parent);
if (!parent) {
this.parent = this;
@@ -25,7 +26,7 @@ export class DynamicField extends Field {
this.renderedDocument = this.initRenderedDoc(); //!!!
// this.disposers.fieldList = reaction(
- // () => DocListCast(this.doc[Doc.LayoutFieldKey(this.doc)]),
+ // () => DocListCast(this.renderedDoc[Doc.LayoutFieldKey(this.doc)]),
// docs => {
// this.handleFieldUpdate(docs);
// }
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/Field.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/Field.tsx
index 6c78e15ad..49931486c 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/Field.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/Field.tsx
@@ -1,14 +1,16 @@
import { makeAutoObservable, makeObservable, reaction } from "mobx";
-import { Doc, DocListCast } from "../../../../../../fields/Doc";
+import { Doc, DocListCast, FieldType } from "../../../../../../fields/Doc";
import { Col } from "../DocCreatorMenu";
import { TemplateFieldSize, TemplateFieldType } from "../TemplateBackend";
import { IDisposer } from "mobx-utils";
import { DocumentType } from "../../../../../documents/DocumentTypes";
+import { SearchUtil } from "../../../../../util/SearchUtil";
+import { OmitKeys } from "../../../../../../ClientUtils";
export abstract class Field {
protected disposers: { [name: string]: IDisposer } = {};
- private initField: (settings: FieldSettings, index: number, parent: Field) => Field;
+ private initField: (settings: FieldSettings, index: number, parent: Field, protoDoc?: Doc) => Field;
protected abstract subfields: Field[];
@@ -21,7 +23,7 @@ export abstract class Field {
protected abstract dimensions: FieldDimensions;
- constructor(settings: FieldSettings, id: number, fieldFactory: (settings: FieldSettings, index: number, parent: Field) => Field, parent?: Field) {
+ constructor(settings: FieldSettings, id: number, fieldFactory: (settings: FieldSettings, index: number, parent: Field, protoDoc?: Doc) => Field, parent?: Field) {
this.initField = fieldFactory;
this.parent = parent ? parent : this;
this.id = id;
@@ -47,6 +49,7 @@ export abstract class Field {
};
get renderedDoc(){ return this.renderedDocument };
+ get renderedDocChildDocs() { return DocListCast(this.renderedDocument[Doc.LayoutFieldKey(this.renderedDocument)])}
get getDimensions() { return this.dimensions };
get getID() { return this.id };
get getDescription(): string { return this.settings.description ?? '' };
@@ -64,13 +67,14 @@ export abstract class Field {
changeFieldType = (newType: ViewType): Field => {
this.settings.viewType = newType;
- const newField: Field = this.initField(this.settings, this.id, this.parent);
+ const newField: Field = this.initField(this.settings, this.id, this.parent, this.renderedDoc);
this.parent.exchangeFields(newField, this);
return newField;
}
exchangeFields = (newField: Field, oldField: Field) => {
this.subfields.splice(this.subfields.indexOf(oldField), 1, newField);
+ // this.renderedDoc.
}
setupFieldChangeReaction = () => {
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/FieldUtils.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/FieldUtils.tsx
index d7cf24794..b60d66d1a 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/FieldUtils.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/FieldUtils.tsx
@@ -21,7 +21,7 @@ export class FieldUtils {
return { width, height, coord };
};
- public static initField = (settings: FieldSettings, index: number, parent: Field): Field => {
+ public static initField = (settings: FieldSettings, index: number, parent: Field, protoDoc?: Doc): Field => {
const id = Number(`${parent.getID}${index}`);
switch (settings.viewType) {
case ViewType.FREEFORM: case ViewType.CAROUSEL3D:
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/StaticContentField.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/StaticContentField.tsx
index 627d3a939..8c50dc21d 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/StaticContentField.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/FieldTypes/StaticContentField.tsx
@@ -14,7 +14,7 @@ export abstract class StaticContentField extends Field {
protected dimensions: FieldDimensions;
- constructor(settings: FieldSettings, parent: Field, id: number) {
+ constructor(settings: FieldSettings, parent: Field, id: number, protoDoc?: Doc) {
super(settings, id, FieldUtils.initField, parent);
this.dimensions = FieldUtils.getLocalDimensions({tl: settings.tl, br: settings.br}, this.parent.getDimensions);
this.subfields = this.setupSubfields(this);
@@ -31,9 +31,9 @@ export class ImageTemplateField extends StaticContentField {
protected renderedDocument: Doc;
- constructor(settings: FieldSettings, parent: Field, id: number){
+ constructor(settings: FieldSettings, parent: Field, id: number, protoDoc?: Doc){
super(settings, parent, id)
- this.renderedDocument = this.initRenderedDoc();
+ this.renderedDocument = this.initRenderedDoc(protoDoc);
}
setContent = (url: string, type: ViewType) => {
@@ -47,13 +47,21 @@ export class ImageTemplateField extends StaticContentField {
}
};
- initRenderedDoc = (): Doc => {
+ initRenderedDoc = (proto?: Doc): Doc => {
const url = String(this.content);
let doc: Doc = Docs.Create.ImageDocument(url, {
title: this.title,
_layout_fitWidth: false,
- });
- FieldUtils.applyBasicOpts(doc, this.dimensions, this.settings);
+ }, /*proto*/);
+ // if (!proto) {
+ FieldUtils.applyBasicOpts(doc, this.dimensions, this.settings);
+ // } else {
+ // doc.nativeWidth = this.dimensions.width;
+ // doc.nativeHeight = this.dimensions.height;
+ // doc._layout_nativeDimEditable = true;
+ // }
+
+ console.log('data is: ', doc['data']);
this.renderedDocument = doc;
@@ -65,7 +73,7 @@ export class TextTemplateField extends StaticContentField {
protected renderedDocument: Doc;
- constructor(settings: FieldSettings, parent: Field, id: number){
+ constructor(settings: FieldSettings, parent: Field, id: number, protoDoc?: Doc){
super(settings, parent, id)
this.renderedDocument = this.initRenderedDoc();
}
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/Template.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/Template.tsx
index a80df8468..e8e9dca4f 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/Template.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/Template.tsx
@@ -90,7 +90,6 @@ export class Template {
isValidTemplate = (cols: Col[]) => {
const matches: number[][] = this.getMatches(cols);
const maxMatches: number = this.maxMatches(matches);
- console.log('title: ', this.mainField.getTitle(), ' matches: ', matches, ' max: ', maxMatches, ' num content fields: ', this.contentFields.length)
return maxMatches === this.contentFields.length;
}