diff options
Diffstat (limited to 'src/client/views/smartdraw')
| -rw-r--r-- | src/client/views/smartdraw/DrawingFillHandler.tsx | 96 | ||||
| -rw-r--r-- | src/client/views/smartdraw/StickerPalette.tsx | 26 |
2 files changed, 61 insertions, 61 deletions
diff --git a/src/client/views/smartdraw/DrawingFillHandler.tsx b/src/client/views/smartdraw/DrawingFillHandler.tsx index c3c762181..8f71b150d 100644 --- a/src/client/views/smartdraw/DrawingFillHandler.tsx +++ b/src/client/views/smartdraw/DrawingFillHandler.tsx @@ -1,50 +1,50 @@ -import { action, makeObservable } from 'mobx'; -import { observer } from 'mobx-react'; -import React from 'react'; -import { Doc } from '../../../fields/Doc'; -import { ImageCast } from '../../../fields/Types'; -import { ImageField } from '../../../fields/URLField'; -import { Docs } from '../../documents/Documents'; -import { Networking } from '../../Network'; -import { makeUserTemplateButtonOrImage } from '../../util/DropConverter'; -import { DocumentView, DocumentViewInternal } from '../nodes/DocumentView'; -import { ImageUtility } from '../nodes/imageEditor/imageEditorUtils/ImageHandler'; -import { OpenWhere } from '../nodes/OpenWhere'; -import { ObservableReactComponent } from '../ObservableReactComponent'; +// import { action, makeObservable } from 'mobx'; +// import { observer } from 'mobx-react'; +// import React from 'react'; +// import { Doc } from '../../../fields/Doc'; +// import { ImageCast } from '../../../fields/Types'; +// import { ImageField } from '../../../fields/URLField'; +// import { Docs } from '../../documents/Documents'; +// import { Networking } from '../../Network'; +// import { makeUserTemplateButtonOrImage } from '../../util/DropConverter'; +// import { DocumentView, DocumentViewInternal } from '../nodes/DocumentView'; +// import { ImageUtility } from '../nodes/imageEditor/imageEditorUtils/ImageHandler'; +// import { OpenWhere } from '../nodes/OpenWhere'; +// import { ObservableReactComponent } from '../ObservableReactComponent'; -export class DrawingFillHandler { - static drawingToImage = async (drawing: Doc, prompt: string) => { - const imageField = await DocumentView.GetDocImage(drawing); - if (!imageField) return; - const { href } = ImageCast(imageField).url; - const hrefParts = href.split('.'); - const hrefComplete = `${hrefParts[0]}_o.${hrefParts[1]}`; - try { - const response = await fetch(hrefComplete); - const blob: Blob = await response.blob(); - const strength: number = 100; - const img = await Networking.PostToServer('/queryFireflyImage', { prompt, blob, strength }); - DocumentViewInternal.addDocTabFunc(Docs.Create.ImageDocument(img, {}), OpenWhere.addRight); - // Networking.PostToServer('/queryFireflyImage', { prompt, blob, strength }).then(img => DocumentViewInternal.addDocTabFunc(Docs.Create.ImageDocument(img, {}), OpenWhere.addRight)); - } catch (error) { - console.error('Error fetching image:', error); - return; - } +// export class DrawingFillHandler { +// static drawingToImage = async (drawing: Doc, prompt: string) => { +// const imageField = await DocumentView.GetDocImage(drawing); +// if (!imageField) return; +// const { href } = ImageCast(imageField).url; +// const hrefParts = href.split('.'); +// const hrefComplete = `${hrefParts[0]}_o.${hrefParts[1]}`; +// try { +// const response = await fetch(hrefComplete); +// const blob: Blob = await response.blob(); +// const strength: number = 100; +// const img = await Networking.PostToServer('/queryFireflyImage', { prompt, blob, strength }); +// DocumentViewInternal.addDocTabFunc(Docs.Create.ImageDocument(img, {}), OpenWhere.addRight); +// // Networking.PostToServer('/queryFireflyImage', { prompt, blob, strength }).then(img => DocumentViewInternal.addDocTabFunc(Docs.Create.ImageDocument(img, {}), OpenWhere.addRight)); +// } catch (error) { +// console.error('Error fetching image:', error); +// return; +// } - // const image = new Image(); - // image.src = imageField.url?.href; - // // image.onload = async () => { - // const canvas = document.createElement('canvas'); - // canvas.width = image.width; - // canvas.height = image.height; - // const ctx = canvas.getContext('2d'); - // if (!ctx) return; - // ctx.globalCompositeOperation = 'source-over'; - // ctx.clearRect(0, 0, image.width, image.height); - // ctx.drawImage(image, 0, 0); - // const blob: Blob = await ImageUtility.canvasToBlob(canvas); - // const strength: number = 100; - // Networking.PostToServer('/queryFireflyImage', { prompt, blob, strength }).then(img => DocumentViewInternal.addDocTabFunc(Docs.Create.ImageDocument(img, {}), OpenWhere.addRight)); - // }; - }; -} +// // const image = new Image(); +// // image.src = imageField.url?.href; +// // // image.onload = async () => { +// // const canvas = document.createElement('canvas'); +// // canvas.width = image.width; +// // canvas.height = image.height; +// // const ctx = canvas.getContext('2d'); +// // if (!ctx) return; +// // ctx.globalCompositeOperation = 'source-over'; +// // ctx.clearRect(0, 0, image.width, image.height); +// // ctx.drawImage(image, 0, 0); +// // const blob: Blob = await ImageUtility.canvasToBlob(canvas); +// // const strength: number = 100; +// // Networking.PostToServer('/queryFireflyImage', { prompt, blob, strength }).then(img => DocumentViewInternal.addDocTabFunc(Docs.Create.ImageDocument(img, {}), OpenWhere.addRight)); +// // }; +// }; +// } diff --git a/src/client/views/smartdraw/StickerPalette.tsx b/src/client/views/smartdraw/StickerPalette.tsx index 468d0fd13..d56878f10 100644 --- a/src/client/views/smartdraw/StickerPalette.tsx +++ b/src/client/views/smartdraw/StickerPalette.tsx @@ -56,6 +56,10 @@ export class StickerPalette extends ObservableReactComponent<StickerPaletteProps makeObservable(this); } + componentWillUnmount() { + this.resetPalette(true); + } + public static LayoutString(fieldKey: string) { return FieldView.LayoutString(StickerPalette, fieldKey); } @@ -145,19 +149,15 @@ export class StickerPalette extends ObservableReactComponent<StickerPaletteProps generateDrawings = action(async () => { this._isLoading = true; this._props.Document[DocData].data = undefined; - for (let i = 0; i < 3; i++) { - try { - SmartDrawHandler.Instance.AddDrawing = this.addDrawing; - this._canInteract = false; - if (this._showRegenerate) { - await SmartDrawHandler.Instance.regenerate(this._opts, this._gptRes[i], this._userInput); - } else { - await SmartDrawHandler.Instance.drawWithGPT({ X: 0, Y: 0 }, this._userInput, this._opts.complexity, this._opts.size, this._opts.autoColor); - } - } catch (e) { - console.log('Error generating drawing', e); - } - } + SmartDrawHandler.Instance.AddDrawing = this.addDrawing; + this._canInteract = false; + await Promise.all( + Array.from({ length: 3 }).map((_, i) => { + return this._showRegenerate + ? SmartDrawHandler.Instance.regenerate(this._opts, this._gptRes[i], this._userInput) + : SmartDrawHandler.Instance.drawWithGPT({ X: 0, Y: 0 }, this._userInput, this._opts.complexity, this._opts.size, this._opts.autoColor); + }) + ); this._opts.text !== '' ? (this._opts.text = `${this._opts.text} ~~~ ${this._userInput}`) : (this._opts.text = this._userInput); this._userInput = ''; this._isLoading = false; |
