refact: moved konva files out of test dir
This commit is contained in:
		
							parent
							
								
									45e8ec2be3
								
							
						
					
					
						commit
						2d1f98155d
					
				@ -2,8 +2,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import React, { useState } from 'react'
 | 
					import React, { useState } from 'react'
 | 
				
			||||||
import { Group, Rect } from 'react-konva'
 | 
					import { Group, Rect } from 'react-konva'
 | 
				
			||||||
import { entities } from '../../../wailsjs/wailsjs/go/models'
 | 
					import { entities } from '../../wailsjs/wailsjs/go/models'
 | 
				
			||||||
import { useProject } from '../../../context/Project/provider'
 | 
					import { useProject } from '../../context/Project/provider'
 | 
				
			||||||
import { KonvaEventObject } from 'konva/lib/Node'
 | 
					import { KonvaEventObject } from 'konva/lib/Node'
 | 
				
			||||||
import Konva from 'konva'
 | 
					import Konva from 'konva'
 | 
				
			||||||
import AreaContextMenu from './AreaContextMenu'
 | 
					import AreaContextMenu from './AreaContextMenu'
 | 
				
			||||||
@ -1,12 +1,12 @@
 | 
				
			|||||||
'use client'
 | 
					'use client'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import React from 'react'
 | 
					import React from 'react'
 | 
				
			||||||
import { entities } from '../../../../wailsjs/wailsjs/go/models'
 | 
					import { entities } from '../../../wailsjs/wailsjs/go/models'
 | 
				
			||||||
import { Html } from 'react-konva-utils'
 | 
					import { Html } from 'react-konva-utils'
 | 
				
			||||||
import { copyButtonColors, deleteButtonColors, makeFormStyles, makeSharedButtonStyles, reprocessButtonColors, setMutableStylesOnElement, setPosition, setScale } from './styles'
 | 
					import { copyButtonColors, deleteButtonColors, makeFormStyles, makeSharedButtonStyles, reprocessButtonColors, setMutableStylesOnElement, setPosition, setScale } from './styles'
 | 
				
			||||||
import { useProject } from '../../../../context/Project/provider'
 | 
					import { useProject } from '../../../context/Project/provider'
 | 
				
			||||||
import asyncClick from '../../../../utils/asyncClick'
 | 
					import asyncClick from '../../../utils/asyncClick'
 | 
				
			||||||
import processImageArea from '../../../../useCases/processImageArea'
 | 
					import processImageArea from '../../../useCases/processImageArea'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type Props = {
 | 
					type Props = {
 | 
				
			||||||
  x: number,
 | 
					  x: number,
 | 
				
			||||||
@ -2,8 +2,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import React, { useState } from 'react'
 | 
					import React, { useState } from 'react'
 | 
				
			||||||
import { Group } from 'react-konva'
 | 
					import { Group } from 'react-konva'
 | 
				
			||||||
import { useProject } from '../../../context/Project/provider'
 | 
					import { useProject } from '../../context/Project/provider'
 | 
				
			||||||
import { entities } from '../../../wailsjs/wailsjs/go/models'
 | 
					import { entities } from '../../wailsjs/wailsjs/go/models'
 | 
				
			||||||
import Area from './Area'
 | 
					import Area from './Area'
 | 
				
			||||||
import ProcessedWord from './ProcessedWord'
 | 
					import ProcessedWord from './ProcessedWord'
 | 
				
			||||||
import EditingWord from './EditingWord'
 | 
					import EditingWord from './EditingWord'
 | 
				
			||||||
@ -4,12 +4,12 @@ import React, { useRef, useState } from 'react'
 | 
				
			|||||||
import { Stage, Layer, Image, } from 'react-konva'
 | 
					import { Stage, Layer, Image, } from 'react-konva'
 | 
				
			||||||
import { KonvaEventObject } from 'konva/lib/Node'
 | 
					import { KonvaEventObject } from 'konva/lib/Node'
 | 
				
			||||||
import Areas from './Areas'
 | 
					import Areas from './Areas'
 | 
				
			||||||
import { useProject } from '../../../context/Project/provider'
 | 
					import { useProject } from '../../context/Project/provider'
 | 
				
			||||||
import useImage from 'use-image'
 | 
					import useImage from 'use-image'
 | 
				
			||||||
import { RectangleCoordinates } from '../types'
 | 
					import { RectangleCoordinates } from './types'
 | 
				
			||||||
import DrawingArea from './DrawingArea'
 | 
					import DrawingArea from './DrawingArea'
 | 
				
			||||||
import getNormalizedRectToBounds from '../../../utils/getNormalizedRectToBounds'
 | 
					import getNormalizedRectToBounds from '../../utils/getNormalizedRectToBounds'
 | 
				
			||||||
import processImageArea from '../../../useCases/processImageArea'
 | 
					import processImageArea from '../../useCases/processImageArea'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type Props = {
 | 
					type Props = {
 | 
				
			||||||
  scale: number,
 | 
					  scale: number,
 | 
				
			||||||
@ -23,7 +23,7 @@ let downClickX: number
 | 
				
			|||||||
let downClickY: number
 | 
					let downClickY: number
 | 
				
			||||||
let isDrawing = false
 | 
					let isDrawing = false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const KonvaTest = ({ scale, scaleStep, maxScale, setScale, size }: Props) => {
 | 
					const CanvasStage = ({ scale, scaleStep, maxScale, setScale, size }: Props) => {
 | 
				
			||||||
  const { getSelectedDocument, requestAddArea, setSelectedAreaId } = useProject()
 | 
					  const { getSelectedDocument, requestAddArea, setSelectedAreaId } = useProject()
 | 
				
			||||||
  const [documentImage] = useImage(getSelectedDocument()?.path || '')
 | 
					  const [documentImage] = useImage(getSelectedDocument()?.path || '')
 | 
				
			||||||
  const documentRef = useRef(null)
 | 
					  const documentRef = useRef(null)
 | 
				
			||||||
@ -100,4 +100,4 @@ const KonvaTest = ({ scale, scaleStep, maxScale, setScale, size }: Props) => {
 | 
				
			|||||||
  </Stage>
 | 
					  </Stage>
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default KonvaTest
 | 
					export default CanvasStage
 | 
				
			||||||
@ -1,8 +1,8 @@
 | 
				
			|||||||
import React from 'react'
 | 
					import React from 'react'
 | 
				
			||||||
import { Html } from 'react-konva-utils'
 | 
					import { Html } from 'react-konva-utils'
 | 
				
			||||||
import { entities } from '../../../wailsjs/wailsjs/go/models'
 | 
					import { entities } from '../../wailsjs/wailsjs/go/models'
 | 
				
			||||||
import { useProject } from '../../../context/Project/provider'
 | 
					import { useProject } from '../../context/Project/provider'
 | 
				
			||||||
import onEnterHandler from '../../../utils/onEnterHandler'
 | 
					import onEnterHandler from '../../utils/onEnterHandler'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type Props = {
 | 
					type Props = {
 | 
				
			||||||
  scale: number,
 | 
					  scale: number,
 | 
				
			||||||
@ -2,7 +2,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import React from 'react'
 | 
					import React from 'react'
 | 
				
			||||||
import { Group, Rect, Text } from 'react-konva'
 | 
					import { Group, Rect, Text } from 'react-konva'
 | 
				
			||||||
import { entities } from '../../../wailsjs/wailsjs/go/models'
 | 
					import { entities } from '../../wailsjs/wailsjs/go/models'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type Props = {
 | 
					type Props = {
 | 
				
			||||||
  area: entities.ProcessedArea,
 | 
					  area: entities.ProcessedArea,
 | 
				
			||||||
@ -1,22 +1,18 @@
 | 
				
			|||||||
'use client'
 | 
					'use client'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import dynamic from 'next/dynamic'
 | 
					import dynamic from 'next/dynamic'
 | 
				
			||||||
import React, { useEffect, useLayoutEffect, useRef, useState } from 'react'
 | 
					import React, { useEffect, useRef, useState } from 'react'
 | 
				
			||||||
import { useProject, } from '../../context/Project/provider'
 | 
					import { useProject, } from '../../context/Project/provider'
 | 
				
			||||||
import { MagnifyingGlassMinusIcon, MagnifyingGlassPlusIcon } from '@heroicons/react/24/outline'
 | 
					import { MagnifyingGlassMinusIcon, MagnifyingGlassPlusIcon } from '@heroicons/react/24/outline'
 | 
				
			||||||
import classNames from '../../utils/classNames'
 | 
					 | 
				
			||||||
import LanguageSelect from '../workspace/LanguageSelect'
 | 
					import LanguageSelect from '../workspace/LanguageSelect'
 | 
				
			||||||
import ImageCanvas from './ImageCanvas'
 | 
					
 | 
				
			||||||
import AreaCanvas from './AreaCanvas'
 | 
					const CanvasStage = dynamic(() => import('./CanvasStage'), {
 | 
				
			||||||
import UiCanvas from './UiCanvas'
 | 
					  ssr: false,
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const zoomStep = 0.01
 | 
					const zoomStep = 0.01
 | 
				
			||||||
const maxZoomLevel = 4
 | 
					const maxZoomLevel = 4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const KonvaTest = dynamic(() => import('./konva'), {
 | 
					 | 
				
			||||||
  ssr: false,
 | 
					 | 
				
			||||||
})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const DocumentCanvas = () => {
 | 
					const DocumentCanvas = () => {
 | 
				
			||||||
  const { getSelectedDocument } = useProject()
 | 
					  const { getSelectedDocument } = useProject()
 | 
				
			||||||
  const selectedDocument = getSelectedDocument()
 | 
					  const selectedDocument = getSelectedDocument()
 | 
				
			||||||
@ -56,7 +52,7 @@ const DocumentCanvas = () => {
 | 
				
			|||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <div className='h-full overflow-hidden rounded-lg border-4 border-dashed border-gray-200'>
 | 
					    <div className='h-full overflow-hidden rounded-lg border-4 border-dashed border-gray-200'>
 | 
				
			||||||
      <KonvaTest size={size} scale={zoomLevel} scaleStep={zoomStep} setScale={setZoomLevel} maxScale={maxZoomLevel} />
 | 
					      <CanvasStage size={size} scale={zoomLevel} scaleStep={zoomStep} setScale={setZoomLevel} maxScale={maxZoomLevel} />
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
  </div >
 | 
					  </div >
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user