aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
diff options
context:
space:
mode:
authorNathan-SR <144961007+Nathan-SR@users.noreply.github.com>2025-05-11 21:18:55 -0400
committerNathan-SR <144961007+Nathan-SR@users.noreply.github.com>2025-05-11 21:18:55 -0400
commit4219c751c0f984fac6e5995c1ab955a8d63a28cd (patch)
treee638ff6aeb977f175916bcf14a8e332ae6f47dac /src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
parente62f51bacace3d91f388202135426445721097cc (diff)
many changes to firefly UI (options added) and starting work on finalizing conditionals
Diffstat (limited to 'src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx')
-rw-r--r--src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx36
1 files changed, 15 insertions, 21 deletions
diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
index 2e4b81253..2565a9332 100644
--- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
+++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx
@@ -36,7 +36,7 @@ import { CgPathIntersect } from 'react-icons/cg';
import { StaticContentField } from './TemplateFieldTypes/StaticContentField';
import { TemplateMenuAIUtils } from './Backend/TemplateMenuAIUtils'
import { TemplatePreviewGrid } from './Menu/TemplatePreviewGrid';
-import { TemplateEditingWindow } from './Menu/TemplateEditingWindow';
+import { FireflyStructureOptions, TemplateEditingWindow } from './Menu/TemplateEditingWindow';
import { DocCreatorMenuButton } from './Menu/DocCreatorMenuButton';
export enum LayoutType {
@@ -103,7 +103,6 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
@observable _userCreatedFields: Col[] = [];
@observable _collapsedCols: String[] = []; //any columns whose options panels are hidden
- @observable _conditions: Conditional[] = [];
@observable _currEditingConditional: Conditional = {} as Conditional;
@observable _layout: { type: LayoutType; yMargin: number; xMargin: number; columns?: number; repeat: number } = { type: LayoutType.FREEFORM, yMargin: 10, xMargin: 10, columns: 3, repeat: 0 };
@@ -594,7 +593,8 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
);
};
- generateVariations = async (onDoc: Doc, prompt: string): Promise<string[]> => {
+ generateVariations = async (onDoc: Doc, prompt: string, options: FireflyStructureOptions): Promise<string[]> => {
+ const { numVariations, temperature, useStyleRef } = options;
this.variations = [];
const mainCollection = this._dataViz?.DocumentView?.().containerViewPath?.().lastElement()?.ComponentView as CollectionFreeFormView;
@@ -603,12 +603,12 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
clone.x = 10000;
clone.y = 10000;
- await DrawingFillHandler.drawingToImage(clone, 100, prompt, clone, this)
+ await DrawingFillHandler.drawingToImage(clone, 100 - temperature, prompt, useStyleRef ? clone : undefined, this, numVariations)
return this.variations;
}
- @observable variations: string[] = []
+ variations: string[] = []
@action addVariation = (url: string) => {
this.variations.push(url);
@@ -918,7 +918,7 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
}
get dashboardContents() {
- const conditionForm = (title: string, parameters?: Conditional) => {
+ const conditionForm = (title: string, parameters?: Conditional, empty: boolean = false) => {
const params: Conditional = parameters ?? this._currEditingConditional;
@@ -942,8 +942,8 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
<div className='form-row-plain-text'>then</div>
<div className="operator-options-dropdown">
<span className="operator-dropdown-current">{params.target ?? 'self'}</span>
- <div className='operator-dropdown-option' onPointerDown={() => {params.target = 'self'}}>{'self'}</div>
- <div className='operator-dropdown-option' onPointerDown={() => {params.target = 'template'}}>{'template'}</div>
+ <div className='operator-dropdown-option' onPointerDown={() => {params.target = 'self'}}>{'own'}</div>
+ <div className='operator-dropdown-option' onPointerDown={() => {params.target = 'template'}}>{`template's`}</div>
</div>
<textarea
className="form-row-textarea"
@@ -959,17 +959,11 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
defaultValue={params.value}
/>
</div>
- <div className='form-action-button' onPointerDown={e => this.setUpButtonClick(e, runInAction(() => () => {
- if (this._currEditingConditional === params) {
- params.field = title;
- this._conditions.push(params);
- this._currEditingConditional = {} as Conditional;
- } else {
- this._conditions = this._conditions.filter(cond => cond !== params);
- }
- }))}>
- <FontAwesomeIcon icon={this._currEditingConditional === params ? 'plus' : 'minus'} color='white'/>
- </div>
+ {empty ?
+ <DocCreatorMenuButton icon={'plus'} styles={'float-right'} function={() => this.templateManager.addFieldCondition(title, params)}/>
+ :
+ <DocCreatorMenuButton icon={'minus'} styles={'float-right'} function={() => this.templateManager.removeFieldCondition(title, params)}/>
+ }
</div>
)
}
@@ -1030,8 +1024,8 @@ export class DocCreatorMenu extends ObservableReactComponent<DocCreateMenuProps>
</div>
<div className="conditionals-section">
<span className="conditionals-title">Conditional Logic</span>
- {conditionForm(field.title, this._currEditingConditional)}
- {this._conditions.map(condition => conditionForm(condition.field, condition))}
+ {conditionForm(field.title, this._currEditingConditional, true)}
+ {this.templateManager.conditionalFieldLogic[field.title]?.map(condition => conditionForm(condition.field, condition))}
</div>
</>
}