From 204132aba65d1c25ba6c256b3777c63e51c536f3 Mon Sep 17 00:00:00 2001 From: bobzel Date: Wed, 5 Mar 2025 19:36:07 -0500 Subject: fixed doccreatemenu warnings. --- src/client/views/MainView.tsx | 2 +- .../DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx | 350 +++++++++++---------- 2 files changed, 186 insertions(+), 166 deletions(-) (limited to 'src') diff --git a/src/client/views/MainView.tsx b/src/client/views/MainView.tsx index fddc0e40c..ef8d0c197 100644 --- a/src/client/views/MainView.tsx +++ b/src/client/views/MainView.tsx @@ -1140,7 +1140,7 @@ export class MainView extends ObservableReactComponent { - + diff --git a/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx b/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx index 16d588c55..64416c26d 100644 --- a/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx +++ b/src/client/views/nodes/DataVizBox/DocCreatorMenu/DocCreatorMenu.tsx @@ -1,5 +1,5 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { Colors } from 'browndash-components'; +import { Colors } from '@dash/components'; import { action, computed, makeObservable, observable, runInAction } from 'mobx'; import { observer } from 'mobx-react'; import { IDisposer } from 'mobx-utils'; @@ -20,7 +20,6 @@ import { UndoManager, undoable } from '../../../../util/UndoManager'; import { ObservableReactComponent } from '../../../ObservableReactComponent'; import { CollectionFreeFormView } from '../../../collections/collectionFreeForm/CollectionFreeFormView'; import { DocumentView, DocumentViewInternal } from '../../DocumentView'; -import { FieldViewProps } from '../../FieldView'; import { OpenWhere } from '../../OpenWhere'; import { DataVizBox } from '../DataVizBox'; import './DocCreatorMenu.scss'; @@ -64,22 +63,27 @@ export type Col = { defaultContent?: string; }; +interface DocCreateMenuProps { + addDocTab: (doc: Doc | Doc[], where: OpenWhere) => boolean; +} + @observer -export class DocCreatorMenu extends ObservableReactComponent { +export class DocCreatorMenu extends ObservableReactComponent { + // eslint-disable-next-line no-use-before-define static Instance: DocCreatorMenu; private _disposers: { [name: string]: IDisposer } = {}; private _ref: HTMLDivElement | null = null; - private templateManager: TemplateManager; + private templateManager: TemplateManager; @observable _fullyRenderedDocs: Doc[] = []; @observable _renderedDocCollectionPreview: Doc | undefined = undefined; @observable _renderedDocCollection: Doc | undefined = undefined; @observable _docsRendering: boolean = false; - @observable _userTemplates: {template: Template, doc: Doc}[] = []; //!!! used to keep track of all templates, should be refactored to work with actual templates and not docs + @observable _userTemplates: { template: Template; doc: Doc }[] = []; //!!! used to keep track of all templates, should be refactored to work with actual templates and not docs @observable _selectedTemplate: Template | undefined = undefined; @observable _currEditingTemplate: Template | undefined = undefined; @@ -92,7 +96,7 @@ export class DocCreatorMenu extends ObservableReactComponent { @observable _expandedPreview: Doc | undefined = undefined; @observable _suggestedTemplates: Template[] = []; - @observable _suggestedTemplatePreviews: {doc: Doc, template: Template}[] = []; + @observable _suggestedTemplatePreviews: { doc: Doc; template: Template }[] = []; @observable _GPTOpt: boolean = false; @observable _callCount: number = 0; @observable _GPTLoading: boolean = false; @@ -111,7 +115,7 @@ export class DocCreatorMenu extends ObservableReactComponent { @observable _draggingIndicator: boolean = false; @observable _dataViz?: DataVizBox; @observable _interactionLock: boolean | undefined; - @observable _snapPt: {x: number, y: number} = {x: 0, y: 0}; + @observable _snapPt: { x: number; y: number } = { x: 0, y: 0 }; @observable _resizeHdlId: string = ''; @observable _resizing: boolean = false; @observable _offset: { x: number; y: number } = { x: 0, y: 0 }; @@ -120,7 +124,7 @@ export class DocCreatorMenu extends ObservableReactComponent { @observable _menuDimensions: { width: number; height: number } = { width: 400, height: 400 }; @observable _editing: boolean = false; - constructor(props: any) { + constructor(props: DocCreateMenuProps) { super(props); makeObservable(this); DocCreatorMenu.Instance = this; @@ -138,14 +142,14 @@ export class DocCreatorMenu extends ObservableReactComponent { this._userCreatedFields = []; }; @action addUserTemplate = (template: Template) => { - this._userTemplates.push({template: template.cloneBase(), doc: template.getRenderedDoc()}); + this._userTemplates.push({ template: template.cloneBase(), doc: template.getRenderedDoc() }); }; @action removeUserTemplate = (template: Template) => { this._userTemplates = this._userTemplates.filter(info => info.template !== template); - } + }; @action updateTemplatePreview = (template: Template) => { template.renderUpdates(); - const preview = {template: template, doc: template.getRenderedDoc()}; + const preview = { template: template, doc: template.getRenderedDoc() }; this._suggestedTemplatePreviews = this._suggestedTemplatePreviews.map(t => { return t.template === preview.template ? preview : t }); //prettier-ignore this._userTemplates = this._userTemplates.map(t => { return t.template === preview.template ? preview : t }); //prettier-ignore }; @@ -216,7 +220,7 @@ export class DocCreatorMenu extends ObservableReactComponent { return bounds; } - setUpButtonClick = (e: any, func: () => void) => { + setUpButtonClick = (e: React.PointerEvent, func: () => void) => { setupMoveUpEvents( this, e, @@ -298,7 +302,7 @@ export class DocCreatorMenu extends ObservableReactComponent { SnappingManager.SetIsResizing(DocumentView.Selected().lastElement()?.Document[Id]); // turns off pointer events on things like youtube videos and web pages so that dragging doesn't get "stuck" when cursor moves over them e.stopPropagation(); const id = (this._resizeHdlId = e.currentTarget.className); - const pad = id.includes('Left') || id.includes('Right') ? Number(getComputedStyle(e.target as any).width.replace('px', '')) / 2 : 0; + const pad = id.includes('Left') || id.includes('Right') ? Number(getComputedStyle(e.target as HTMLElement).width.replace('px', '')) / 2 : 0; const bounds = e.currentTarget.getBoundingClientRect(); this._offset = { x: id.toLowerCase().includes('left') ? bounds.right - e.clientX - pad : bounds.left - e.clientX + pad, // @@ -309,7 +313,7 @@ export class DocCreatorMenu extends ObservableReactComponent { }; @action - onResize = (e: any): boolean => { + onResize = (e: PointerEvent): boolean => { const dragHdl = this._resizeHdlId.split(' ')[1]; const thisPt = DragManager.snapDrag(e, -this._offset.x, -this._offset.y, this._offset.x, this._offset.y); @@ -324,7 +328,7 @@ export class DocCreatorMenu extends ObservableReactComponent { }; @action - onDrag = (e: any): boolean => { + onDrag = (e: PointerEvent): boolean => { this._pageX = e.pageX - (this._startPos?.x ?? 0); this._pageY = e.pageY - (this._startPos?.y ?? 0); this._initDimensions.x = this._pageX; @@ -377,7 +381,7 @@ export class DocCreatorMenu extends ObservableReactComponent { } else { this._selectedTemplate = template; template.renderUpdates(); - this._fullyRenderedDocs = await this.createDocsFromTemplate(template) ?? []; + this._fullyRenderedDocs = (await this.createDocsFromTemplate(template)) ?? []; this.updateRenderedDocCollection(); } }; @@ -486,9 +490,8 @@ export class DocCreatorMenu extends ObservableReactComponent { * @returns a doc containing the fully rendered template */ applyGPTContentToTemplate = async (template: Template, assignments: { [field: string]: Col }): Promise