UNPKG

lost-sia

Version:

Single Image Annotation Tool

2 lines (1 loc) 1.55 kB
import{toSia as f,toBackend as m}from"./transform.js";import{DATABASE as u}from"../types/annoStatus.js";import{VIEW as i}from"../types/modes.js";import c from"../node_modules/lodash/lodash.js";function d(t){return{...t,id:t.id?t.id:c.uniqueId("new"),annoTime:t.annoTime?t.annoTime:0,mode:t.mode?t.mode:i,status:t.status?t.status:u,labelIds:t.labelIds?t.labelIds:[]}}function B(t){return{bBoxes:[...t.bBoxes.map(s=>d(s))],lines:[...t.lines.map(s=>d(s))],polygons:[...t.polygons.map(s=>d(s))],points:[...t.points.map(s=>d(s))]}}function x(t,n,s){let a=[...t.bBoxes.map(o=>({...o,type:"bBox",mode:o.mode?o.mode:i,status:o.status?o.status:u})),...t.lines.map(o=>({...o,type:"line",mode:o.mode?o.mode:i,status:o.status?o.status:u})),...t.polygons.map(o=>({...o,type:"polygon",mode:o.mode?o.mode:i,status:o.status?o.status:u})),...t.points.map(o=>({...o,type:"point",mode:o.mode?o.mode:i,status:o.status?o.status:u}))];return a=a.map(o=>({...o,data:f(o.data,n,o.type,s)})),a}function y(t,n,s=!1,a={x:0,y:0}){let o;return s?o=typeof t.id=="string"?void 0:t.id:o=t.id,{...t,id:o,mode:i,data:m(t.data,n,t.type,a)}}function g(t,n,s=!1,a={x:0,y:0}){const p=t.map(r=>y(r,n,s,a));return{bBoxes:p.filter(r=>r.type==="bBox"),lines:p.filter(r=>r.type==="line"),points:p.filter(r=>r.type==="point"),polygons:p.filter(r=>r.type==="polygon")}}const E={fixBackendAnnos:B,backendAnnosToCanvas:x,canvasToBackendSingleAnno:y,canvasToBackendAnnos:g};export{x as backendAnnosToCanvas,g as canvasToBackendAnnos,y as canvasToBackendSingleAnno,E as default,B as fixBackendAnnos};