@labelbee/lb-components 1.2.3 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/dist/App.js +1 -1
  2. package/dist/index.css +812 -651
  3. package/dist/index.css.map +1 -0
  4. package/dist/index.js +1 -1
  5. package/dist/store/annotation/reducer.js +1 -1
  6. package/dist/types/App.d.ts +23 -7
  7. package/dist/types/components/annotationStepPopover/index.d.ts +0 -1
  8. package/dist/types/components/checkboxList/index.d.ts +0 -1
  9. package/dist/types/components/colorTag/index.d.ts +0 -1
  10. package/dist/types/index.d.ts +4 -3
  11. package/dist/types/store/annotation/reducer.d.ts +1 -1
  12. package/dist/types/views/MainView/annotationOperation/index.d.ts +5 -9
  13. package/dist/types/views/MainView/index.d.ts +1 -1
  14. package/dist/types/views/MainView/sidebar/AnnotationText/index.d.ts +3 -1
  15. package/dist/types/views/MainView/sidebar/ClearIcon/index.d.ts +0 -1
  16. package/dist/types/views/MainView/sidebar/GeneralOperation/index.d.ts +3 -1
  17. package/dist/types/views/MainView/sidebar/ImgAttributeInfo/index.d.ts +0 -1
  18. package/dist/types/views/MainView/sidebar/SwitchAttributeList/index.d.ts +3 -1
  19. package/dist/types/views/MainView/sidebar/TagSidebar/index.d.ts +3 -1
  20. package/dist/types/views/MainView/sidebar/TextAreaFormat/index.d.ts +0 -1
  21. package/dist/types/views/MainView/sidebar/TextToolSidebar/index.d.ts +3 -1
  22. package/dist/types/views/MainView/sidebar/ToolStyle/index.d.ts +0 -1
  23. package/dist/types/views/MainView/sidebar/index.d.ts +3 -1
  24. package/dist/types/views/MainView/toolFooter/HiddenTips/index.d.ts +0 -1
  25. package/dist/types/views/MainView/toolFooter/PageNumber/index.d.ts +0 -1
  26. package/dist/types/views/MainView/toolFooter/ZoomController/ZoomLevel/index.d.ts +3 -1
  27. package/dist/types/views/MainView/toolFooter/ZoomController/index.d.ts +3 -1
  28. package/dist/types/views/MainView/toolFooter/index.d.ts +6 -2
  29. package/dist/types/views/MainView/toolHeader/ExportData/index.d.ts +3 -1
  30. package/dist/types/views/MainView/toolHeader/StepSwitch/index.d.ts +3 -1
  31. package/dist/types/views/MainView/toolHeader/index.d.ts +8 -4
  32. package/dist/utils/index.js +1 -1
  33. package/dist/views/MainView/annotationOperation/index.js +1 -1
  34. package/dist/views/MainView/index.js +1 -1
  35. package/dist/views/MainView/sidebar/index.js +1 -1
  36. package/dist/views/MainView/toolFooter/index.js +1 -1
  37. package/dist/views/MainView/toolHeader/index.js +1 -1
  38. package/es/App.js +1 -1
  39. package/es/App.js.map +1 -1
  40. package/es/assets/annotation/polygonTool/icon_rectangle_a.svg.js +1 -0
  41. package/es/assets/annotation/polygonTool/icon_rectangle_a.svg.js.map +1 -0
  42. package/es/components/AnnotationView/index.js.map +1 -1
  43. package/es/components/ImageError/index.js.map +1 -1
  44. package/es/components/annotationStepPopover/index.js.map +1 -1
  45. package/es/components/attributeList/index.js.map +1 -1
  46. package/es/components/checkboxList/index.js.map +1 -1
  47. package/es/components/colorTag/index.js.map +1 -1
  48. package/es/components/customAntd/IconWithText/index.js.map +1 -1
  49. package/es/components/customResizeHook/index.js.map +1 -1
  50. package/es/configureStore.js.map +1 -1
  51. package/es/constant/index.js.map +1 -1
  52. package/es/constant/styleString.js.map +1 -1
  53. package/es/data/Style.js.map +1 -1
  54. package/es/data/enums/AnnotationSize.js.map +1 -1
  55. package/es/data/enums/ToolType.js.map +1 -1
  56. package/es/hooks/useRafState.js.map +1 -1
  57. package/es/hooks/useSafeSate.js.map +1 -1
  58. package/es/hooks/useSize.js.map +1 -1
  59. package/es/hooks/useUnmountedRef.js.map +1 -1
  60. package/es/index.js +1 -1
  61. package/es/index.js.map +1 -1
  62. package/es/store/Actions.js.map +1 -1
  63. package/es/store/annotation/actionCreators.js.map +1 -1
  64. package/es/store/annotation/reducer.js +1 -1
  65. package/es/store/annotation/reducer.js.map +1 -1
  66. package/es/store/imgAttribute/actionCreators.js.map +1 -1
  67. package/es/store/imgAttribute/reducer.js.map +1 -1
  68. package/es/store/index.js.map +1 -1
  69. package/es/store/toolStyle/actionCreators.js.map +1 -1
  70. package/es/store/toolStyle/reducer.js.map +1 -1
  71. package/es/utils/AnnotationDataUtils.js.map +1 -1
  72. package/es/utils/ConfigUtils.js.map +1 -1
  73. package/es/utils/PageOperator.js.map +1 -1
  74. package/es/utils/StepUtils.js.map +1 -1
  75. package/es/utils/TextUtils.js.map +1 -1
  76. package/es/utils/ToolStyleUtils.js.map +1 -1
  77. package/es/utils/data.js.map +1 -1
  78. package/es/utils/dom.js.map +1 -1
  79. package/es/utils/index.js +1 -1
  80. package/es/utils/index.js.map +1 -1
  81. package/es/views/MainView/annotationOperation/index.js +1 -1
  82. package/es/views/MainView/annotationOperation/index.js.map +1 -1
  83. package/es/views/MainView/index.js +1 -1
  84. package/es/views/MainView/index.js.map +1 -1
  85. package/es/views/MainView/sidebar/AnnotationText/index.js.map +1 -1
  86. package/es/views/MainView/sidebar/ClearIcon/index.js.map +1 -1
  87. package/es/views/MainView/sidebar/GeneralOperation/index.js.map +1 -1
  88. package/es/views/MainView/sidebar/ImgAttributeInfo/index.js.map +1 -1
  89. package/es/views/MainView/sidebar/SwitchAttributeList/index.js.map +1 -1
  90. package/es/views/MainView/sidebar/TagSidebar/index.js.map +1 -1
  91. package/es/views/MainView/sidebar/TextAreaFormat/index.js.map +1 -1
  92. package/es/views/MainView/sidebar/TextToolSidebar/index.js.map +1 -1
  93. package/es/views/MainView/sidebar/ToolStyle/index.js.map +1 -1
  94. package/es/views/MainView/sidebar/index.js +1 -1
  95. package/es/views/MainView/sidebar/index.js.map +1 -1
  96. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.js.map +1 -1
  97. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/index.js.map +1 -1
  98. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/line/index.js.map +1 -1
  99. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/point/index.js.map +1 -1
  100. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.js.map +1 -1
  101. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/rectToolShortCutTable/index.js.map +1 -1
  102. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/tag/index.js.map +1 -1
  103. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/text/index.js.map +1 -1
  104. package/es/views/MainView/toolFooter/FooterTips/index.js.map +1 -1
  105. package/es/views/MainView/toolFooter/HiddenTips/index.js.map +1 -1
  106. package/es/views/MainView/toolFooter/PageNumber/index.js.map +1 -1
  107. package/es/views/MainView/toolFooter/ZoomController/ZoomLevel/index.js.map +1 -1
  108. package/es/views/MainView/toolFooter/ZoomController/index.js.map +1 -1
  109. package/es/views/MainView/toolFooter/index.js +1 -1
  110. package/es/views/MainView/toolFooter/index.js.map +1 -1
  111. package/es/views/MainView/toolHeader/ExportData/index.js.map +1 -1
  112. package/es/views/MainView/toolHeader/StepSwitch/index.js.map +1 -1
  113. package/es/views/MainView/toolHeader/headerOption/index.js.map +1 -1
  114. package/es/views/MainView/toolHeader/index.js +1 -1
  115. package/es/views/MainView/toolHeader/index.js.map +1 -1
  116. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/AnnotationView/index.tsx"],"sourcesContent":["/**\n * 用于标注查看模式\n * @author laoluo\n */\n\nimport React, { useEffect, useRef, useImperativeHandle, useState } from 'react';\nimport { ViewOperation, ImgUtils } from '@labelbee/lb-annotation';\nimport { Spin } from 'antd/es';\n\ninterface IProps {\n src: string; // 图片路径\n size: {\n width: number;\n height: number;\n };\n style: {\n color?: string;\n fill?: string;\n thickness?: number;\n };\n annotations: any[]; // TODO\n zoomChange?: (zoom: number) => void;\n backgroundStyle: React.CSSProperties;\n onChange?: (type: 'hover' | 'selected', ids: string[]) => void;\n\n showLoading?: boolean;\n}\n\nconst DEFAULT_SIZE = {\n width: 1280,\n height: 720,\n};\n\nconst AnnotationView = (props: IProps, ref: any) => {\n const {\n size = DEFAULT_SIZE,\n src,\n annotations = [],\n style = {\n color: 'blue',\n thickness: 5,\n },\n zoomChange,\n backgroundStyle = {},\n onChange,\n showLoading = false,\n } = props;\n const [loading, setLoading] = useState(false);\n const annotationRef = useRef<HTMLDivElement>(null);\n const viewOperation = useRef<ViewOperation>();\n\n useImperativeHandle(\n ref,\n () => {\n const toolInstance = viewOperation.current;\n if (!toolInstance) {\n return {};\n }\n\n return {\n zoomIn: () => toolInstance.zoomChanged(true), // 放大\n zoomOut: () => toolInstance.zoomChanged(false), // 缩小\n initImgPos: () => toolInstance.initImgPos(),\n toolInstance,\n };\n },\n [viewOperation.current],\n );\n\n useEffect(() => {\n if (annotationRef.current) {\n viewOperation.current = new ViewOperation({\n container: annotationRef.current,\n size,\n style,\n annotations,\n config: '{}', // TODO,暂时不需要\n });\n\n viewOperation.current.init();\n }\n\n return () => {\n viewOperation.current?.destroy();\n };\n }, []);\n\n useEffect(() => {\n if (viewOperation.current) {\n setLoading(true);\n viewOperation.current?.setLoading(true);\n ImgUtils.load(src)\n .then((imgNode: HTMLImageElement) => {\n viewOperation.current?.setLoading(false);\n setLoading(false);\n\n viewOperation.current?.setImgNode(imgNode);\n })\n .catch(() => {\n viewOperation.current?.setLoading(false);\n setLoading(false);\n });\n }\n }, [src]);\n\n /**\n * 基础数据绘制监听\n */\n useEffect(() => {\n if (viewOperation.current) {\n viewOperation.current.updateData(annotations);\n }\n }, [annotations]);\n\n /** 窗口大小监听 */\n useEffect(() => {\n const toolInstance = viewOperation.current;\n\n if (toolInstance?.setSize) {\n toolInstance.setSize(size);\n }\n }, [size?.width, size?.height]);\n\n useEffect(() => {\n if (viewOperation.current) {\n viewOperation.current?.on('onChange', (...args: any) => {\n onChange?.apply(null, args);\n });\n\n viewOperation.current?.on('renderZoom', (zoom: number) => {\n if (zoomChange) {\n zoomChange(zoom);\n }\n });\n }\n return () => {\n viewOperation.current?.unbindAll('onChange');\n viewOperation.current?.unbindAll('renderZoom');\n };\n }, [zoomChange, onChange]);\n\n const mainRender = <div ref={annotationRef} style={{ ...size, ...backgroundStyle }} />;\n\n return (\n <Spin spinning={showLoading || loading} delay={300}>\n {mainRender}\n </Spin>\n );\n\n // return mainRender;\n};\n\nexport default React.forwardRef(AnnotationView);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AA4BA,MAAM,eAAe;AAAA,EACnB,OAAO;AAAA,EACP,QAAQ;AAAA;AAGV,MAAM,iBAAiB,CAAC,OAAe,QAAa;AAClD,QAAM;AAAA,IACJ,OAAO;AAAA,IACP;AAAA,IACA,cAAc;AAAA,IACd,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,WAAW;AAAA;AAAA,IAEb;AAAA,IACA,kBAAkB;AAAA,IAClB;AAAA,IACA,cAAc;AAAA,MACZ;AACJ,QAAM,CAAC,SAAS,cAAc,SAAS;AACvC,QAAM,gBAAgB,OAAuB;AAC7C,QAAM,gBAAgB;AAEtB,sBACE,KACA,MAAM;AACJ,UAAM,eAAe,cAAc;AACnC,QAAI,CAAC,cAAc;AACjB,aAAO;AAAA;AAGT,WAAO;AAAA,MACL,QAAQ,MAAM,aAAa,YAAY;AAAA,MACvC,SAAS,MAAM,aAAa,YAAY;AAAA,MACxC,YAAY,MAAM,aAAa;AAAA,MAC/B;AAAA;AAAA,KAGJ,CAAC,cAAc;AAGjB,YAAU,MAAM;AACd,QAAI,cAAc,SAAS;AACzB,oBAAc,UAAU,IAAI,cAAc;AAAA,QACxC,WAAW,cAAc;AAAA,QACzB;AAAA,QACA;AAAA,QACA;AAAA,QACA,QAAQ;AAAA;AAGV,oBAAc,QAAQ;AAAA;AAGxB,WAAO,MAAM;AAlFjB;AAmFM,0BAAc,YAAd,mBAAuB;AAAA;AAAA,KAExB;AAEH,YAAU,MAAM;AAvFlB;AAwFI,QAAI,cAAc,SAAS;AACzB,iBAAW;AACX,0BAAc,YAAd,mBAAuB,WAAW;AAClC,eAAS,KAAK,KACX,KAAK,CAAC,YAA8B;AA5F7C;AA6FU,6BAAc,YAAd,oBAAuB,WAAW;AAClC,mBAAW;AAEX,4BAAc,YAAd,mBAAuB,WAAW;AAAA,SAEnC,MAAM,MAAM;AAlGrB;AAmGU,6BAAc,YAAd,oBAAuB,WAAW;AAClC,mBAAW;AAAA;AAAA;AAAA,KAGhB,CAAC;AAKJ,YAAU,MAAM;AACd,QAAI,cAAc,SAAS;AACzB,oBAAc,QAAQ,WAAW;AAAA;AAAA,KAElC,CAAC;AAGJ,YAAU,MAAM;AACd,UAAM,eAAe,cAAc;AAEnC,QAAI,6CAAc,SAAS;AACzB,mBAAa,QAAQ;AAAA;AAAA,KAEtB,CAAC,6BAAM,OAAO,6BAAM;AAEvB,YAAU,MAAM;AA3HlB;AA4HI,QAAI,cAAc,SAAS;AACzB,0BAAc,YAAd,mBAAuB,GAAG,YAAY,IAAI,SAAc;AACtD,6CAAU,MAAM,MAAM;AAAA;AAGxB,0BAAc,YAAd,mBAAuB,GAAG,cAAc,CAAC,SAAiB;AACxD,YAAI,YAAY;AACd,qBAAW;AAAA;AAAA;AAAA;AAIjB,WAAO,MAAM;AAvIjB;AAwIM,2BAAc,YAAd,oBAAuB,UAAU;AACjC,2BAAc,YAAd,oBAAuB,UAAU;AAAA;AAAA,KAElC,CAAC,YAAY;AAEhB,QAAM,iDAAc,OAAD;AAAA,IAAK,KAAK;AAAA,IAAe,OAAO,kCAAK,OAAS;AAAA;AAEjE,6CACG,MAAD;AAAA,IAAM,UAAU,eAAe;AAAA,IAAS,OAAO;AAAA,KAC5C;AAAA;AAOP,YAAe,MAAM,WAAW;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/AnnotationView/index.tsx"],"sourcesContent":["/**\n * 用于标注查看模式\n * @author laoluo\n */\n\nimport React, { useEffect, useRef, useImperativeHandle, useState } from 'react';\nimport { ViewOperation, ImgUtils } from '@labelbee/lb-annotation';\nimport { Spin } from 'antd/es';\n\ninterface IProps {\n src: string; // 图片路径\n size: {\n width: number;\n height: number;\n };\n style: {\n color?: string;\n fill?: string;\n thickness?: number;\n };\n annotations: any[]; // TODO\n zoomChange?: (zoom: number) => void;\n backgroundStyle: React.CSSProperties;\n onChange?: (type: 'hover' | 'selected', ids: string[]) => void;\n\n showLoading?: boolean;\n}\n\nconst DEFAULT_SIZE = {\n width: 1280,\n height: 720,\n};\n\nconst AnnotationView = (props: IProps, ref: any) => {\n const {\n size = DEFAULT_SIZE,\n src,\n annotations = [],\n style = {\n stroke: 'blue',\n thickness: 3,\n },\n zoomChange,\n backgroundStyle = {},\n onChange,\n showLoading = false,\n } = props;\n const [loading, setLoading] = useState(false);\n const annotationRef = useRef<HTMLDivElement>(null);\n const viewOperation = useRef<ViewOperation>();\n\n useImperativeHandle(\n ref,\n () => {\n const toolInstance = viewOperation.current;\n if (!toolInstance) {\n return {};\n }\n\n return {\n zoomIn: () => toolInstance.zoomChanged(true), // 放大\n zoomOut: () => toolInstance.zoomChanged(false), // 缩小\n initImgPos: () => toolInstance.initImgPos(),\n toolInstance,\n };\n },\n [viewOperation.current],\n );\n\n useEffect(() => {\n if (annotationRef.current) {\n viewOperation.current = new ViewOperation({\n container: annotationRef.current,\n size,\n style,\n annotations,\n config: '{}', // TODO,暂时不需要\n });\n\n viewOperation.current.init();\n }\n\n return () => {\n viewOperation.current?.destroy();\n };\n }, []);\n\n useEffect(() => {\n if (viewOperation.current) {\n setLoading(true);\n viewOperation.current?.setLoading(true);\n ImgUtils.load(src)\n .then((imgNode: HTMLImageElement) => {\n viewOperation.current?.setLoading(false);\n setLoading(false);\n\n viewOperation.current?.setImgNode(imgNode);\n })\n .catch(() => {\n viewOperation.current?.setLoading(false);\n setLoading(false);\n });\n }\n }, [src]);\n\n /**\n * 基础数据绘制监听\n */\n useEffect(() => {\n if (viewOperation.current) {\n viewOperation.current.updateData(annotations);\n }\n }, [annotations]);\n\n /** 窗口大小监听 */\n useEffect(() => {\n const toolInstance = viewOperation.current;\n\n if (toolInstance?.setSize) {\n toolInstance.setSize(size);\n }\n }, [size?.width, size?.height]);\n\n useEffect(() => {\n if (viewOperation.current) {\n viewOperation.current?.on('onChange', (...args: any) => {\n onChange?.apply(null, args);\n });\n\n viewOperation.current?.on('renderZoom', (zoom: number) => {\n if (zoomChange) {\n zoomChange(zoom);\n }\n });\n }\n return () => {\n viewOperation.current?.unbindAll('onChange');\n viewOperation.current?.unbindAll('renderZoom');\n };\n }, [zoomChange, onChange]);\n\n const mainRender = (\n <div ref={annotationRef} style={{ position: 'relative', ...size, ...backgroundStyle }} />\n );\n\n return (\n <Spin spinning={showLoading || loading} delay={300}>\n {mainRender}\n </Spin>\n );\n\n // return mainRender;\n};\n\nexport default React.forwardRef(AnnotationView);\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/ImageError/index.tsx"],"sourcesContent":["import { ReloadOutlined } from '@ant-design/icons';\nimport { Button } from 'antd/es';\nimport React from 'react';\n\ninterface IProps {\n width?: number;\n height?: number;\n reloadImage: () => void;\n hideSetInvalidTips?: boolean;\n /** 忽略顶部的偏移,如: 多边形的容器已经计算好高度(容器不包含顶部标注提示语部分) */\n ignoreOffsetY?: boolean;\n layerStyle?: React.CSSProperties;\n backgroundColor: string;\n fileTypeName?: string;\n}\n\nconst ImageError = (props: IProps) => {\n const {\n width,\n height,\n reloadImage,\n hideSetInvalidTips,\n ignoreOffsetY,\n backgroundColor,\n fileTypeName = '图片',\n } = props;\n\n const top = !ignoreOffsetY ? 40 : 0;\n\n const layerStyle: React.CSSProperties = props.layerStyle || {\n position: 'absolute',\n left: 0,\n top,\n cursor: 'initial',\n zIndex: 20,\n fontSize: 12,\n };\n if (width && height) {\n Object.assign(layerStyle, { width, height });\n } else {\n Object.assign(layerStyle, { bottom: 0, right: 0 });\n }\n\n if (backgroundColor) {\n Object.assign(layerStyle, { backgroundColor });\n }\n\n const buttonStyle: React.CSSProperties = {\n position: 'absolute',\n top: '30%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n };\n\n return (\n <div style={layerStyle}>\n <div style={buttonStyle}>\n <div style={{ textAlign: 'center', marginBottom: 10 }}>\n <Button type='primary' shape='circle' icon={<ReloadOutlined />} onClick={reloadImage} />\n </div>\n <div>\n {`${fileTypeName}加载失败, 请重新加载${\n hideSetInvalidTips ? '' : ` 或 将${fileTypeName}标为无效`\n }`}\n </div>\n </div>\n </div>\n );\n};\n\nexport default ImageError;\n"],"names":[],"mappings":";;;;MAgBM,aAAa,CAAC,UAAkB;AACpC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,MACb;AAEJ,QAAM,MAAM,CAAC,gBAAgB,KAAK;AAElC,QAAM,aAAkC,MAAM,cAAc;AAAA,IAC1D,UAAU;AAAA,IACV,MAAM;AAAA,IACN;AAAA,IACA,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA;AAEZ,MAAI,SAAS,QAAQ;AACnB,WAAO,OAAO,YAAY,CAAE,OAAO;AAAA,SAC9B;AACL,WAAO,OAAO,YAAY,CAAE,QAAQ,GAAG,OAAO;AAAA;AAGhD,MAAI,iBAAiB;AACnB,WAAO,OAAO,YAAY,CAAE;AAAA;AAG9B,QAAM,cAAmC;AAAA,IACvC,UAAU;AAAA,IACV,KAAK;AAAA,IACL,MAAM;AAAA,IACN,WAAW;AAAA;AAGb,6CACG,OAAD;AAAA,IAAK,OAAO;AAAA,yCACT,OAAD;AAAA,IAAK,OAAO;AAAA,yCACT,OAAD;AAAA,IAAK,OAAO,CAAE,WAAW,UAAU,cAAc;AAAA,yCAC9C,QAAD;AAAA,IAAQ,MAAK;AAAA,IAAU,OAAM;AAAA,IAAS,0CAAO,gBAAD;AAAA,IAAoB,SAAS;AAAA,2CAE1E,OAAD,MACG,GAAG,uEACF,qBAAqB,KAAK,iBAAO;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/ImageError/index.tsx"],"sourcesContent":["import { ReloadOutlined } from '@ant-design/icons';\nimport { Button } from 'antd/es';\nimport React from 'react';\n\ninterface IProps {\n width?: number;\n height?: number;\n reloadImage: () => void;\n hideSetInvalidTips?: boolean;\n /** 忽略顶部的偏移,如: 多边形的容器已经计算好高度(容器不包含顶部标注提示语部分) */\n ignoreOffsetY?: boolean;\n layerStyle?: React.CSSProperties;\n backgroundColor: string;\n fileTypeName?: string;\n}\n\nconst ImageError = (props: IProps) => {\n const {\n width,\n height,\n reloadImage,\n hideSetInvalidTips,\n ignoreOffsetY,\n backgroundColor,\n fileTypeName = '图片',\n } = props;\n\n const top = !ignoreOffsetY ? 40 : 0;\n\n const layerStyle: React.CSSProperties = props.layerStyle || {\n position: 'absolute',\n left: 0,\n top,\n cursor: 'initial',\n zIndex: 20,\n fontSize: 12,\n };\n if (width && height) {\n Object.assign(layerStyle, { width, height });\n } else {\n Object.assign(layerStyle, { bottom: 0, right: 0 });\n }\n\n if (backgroundColor) {\n Object.assign(layerStyle, { backgroundColor });\n }\n\n const buttonStyle: React.CSSProperties = {\n position: 'absolute',\n top: '30%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n };\n\n return (\n <div style={layerStyle}>\n <div style={buttonStyle}>\n <div style={{ textAlign: 'center', marginBottom: 10 }}>\n <Button type='primary' shape='circle' icon={<ReloadOutlined />} onClick={reloadImage} />\n </div>\n <div>\n {`${fileTypeName}加载失败, 请重新加载${\n hideSetInvalidTips ? '' : ` 或 将${fileTypeName}标为无效`\n }`}\n </div>\n </div>\n </div>\n );\n};\n\nexport default ImageError;\n"],"names":[],"mappings":";;;;AAgBM,MAAA,UAAA,GAAa,CAAC,KAAkB,KAAA;AACpC,EAAM,MAAA;AAAA,IACJ,KAAA;AAAA,IACA,MAAA;AAAA,IACA,WAAA;AAAA,IACA,kBAAA;AAAA,IACA,aAAA;AAAA,IACA,eAAA;AAAA,IACA,YAAe,GAAA,cAAA;AAAA,GACb,GAAA,KAAA,CAAA;AAEJ,EAAM,MAAA,GAAA,GAAM,CAAC,aAAA,GAAgB,EAAK,GAAA,CAAA,CAAA;AAElC,EAAM,MAAA,UAAA,GAAkC,MAAM,UAAc,IAAA;AAAA,IAC1D,QAAU,EAAA,UAAA;AAAA,IACV,IAAM,EAAA,CAAA;AAAA,IACN,GAAA;AAAA,IACA,MAAQ,EAAA,SAAA;AAAA,IACR,MAAQ,EAAA,EAAA;AAAA,IACR,QAAU,EAAA,EAAA;AAAA,GAAA,CAAA;AAEZ,EAAA,IAAI,SAAS,MAAQ,EAAA;AACnB,IAAO,MAAA,CAAA,MAAA,CAAO,UAAY,EAAA,CAAE,KAAO,EAAA,MAAA,CAAA,CAAA,CAAA;AAAA,GAC9B,MAAA;AACL,IAAA,MAAA,CAAO,MAAO,CAAA,UAAA,EAAY,CAAE,MAAA,EAAQ,GAAG,KAAO,EAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAGhD,EAAA,IAAI,eAAiB,EAAA;AACnB,IAAO,MAAA,CAAA,MAAA,CAAO,YAAY,CAAE,eAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAG9B,EAAA,MAAM,WAAmC,GAAA;AAAA,IACvC,QAAU,EAAA,UAAA;AAAA,IACV,GAAK,EAAA,KAAA;AAAA,IACL,IAAM,EAAA,KAAA;AAAA,IACN,SAAW,EAAA,uBAAA;AAAA,GAAA,CAAA;AAGb,EAAA,2CACG,KAAD,EAAA;AAAA,IAAK,KAAO,EAAA,UAAA;AAAA,GAAA,sCACT,KAAD,EAAA;AAAA,IAAK,KAAO,EAAA,WAAA;AAAA,GAAA,sCACT,KAAD,EAAA;AAAA,IAAK,KAAO,EAAA,CAAE,SAAW,EAAA,QAAA,EAAU,YAAc,EAAA,EAAA,CAAA;AAAA,GAAA,sCAC9C,MAAD,EAAA;AAAA,IAAQ,IAAK,EAAA,SAAA;AAAA,IAAU,KAAM,EAAA,QAAA;AAAA,IAAS,IAAA,sCAAO,cAAD,EAAA,IAAA,CAAA;AAAA,IAAoB,OAAS,EAAA,WAAA;AAAA,GAAA,CAAA,CAAA,sCAE1E,KAAD,EAAA,IAAA,EACG,GAAG,YACF,CAAA,wDAAA,EAAA,kBAAA,GAAqB,KAAK,CAAO,cAAA,EAAA,YAAA,CAAA,wBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/annotationStepPopover/index.tsx"],"sourcesContent":["// 标注步骤中的 popover 的内容\n\nimport { componentCls } from '@/constant';\nimport { classnames } from '@/utils';\nimport React from 'react';\nimport { IStepInfo } from '@/types/step';\nimport { useTranslation } from 'react-i18next';\ninterface IProps {\n stepList: IStepInfo[];\n currentStep: number;\n updateStep: (step: number) => void;\n}\n\nconst AnnotationStepPopover = (props: IProps) => {\n const { t } = useTranslation();\n const { stepList, updateStep, currentStep } = props;\n\n return (\n <div className={`${componentCls}__annotationStepPopover`}>\n {stepList.map((info) => {\n const isSelected = info.step === currentStep;\n\n return (\n <div\n key={`stepList${info.step}`}\n className={classnames({\n step: true,\n })}\n onClick={() => {\n if (currentStep && !isSelected) {\n updateStep(info.step);\n }\n }}\n >\n <div\n className={classnames({\n name: true,\n highlight: isSelected,\n })}\n >\n {`${info.step} - ${info.name || t(info.tool)}`}\n </div>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default AnnotationStepPopover;\n"],"names":[],"mappings":";;;;;MAaM,wBAAwB,CAAC,UAAkB;AAC/C,QAAM,CAAE,KAAM;AACd,QAAM,CAAE,UAAU,YAAY,eAAgB;AAE9C,6CACG,OAAD;AAAA,IAAK,WAAW,GAAG;AAAA,KAChB,SAAS,IAAI,CAAC,SAAS;AACtB,UAAM,aAAa,KAAK,SAAS;AAEjC,+CACG,OAAD;AAAA,MACE,KAAK,WAAW,KAAK;AAAA,MACrB,WAAW,WAAW;AAAA,QACpB,MAAM;AAAA;AAAA,MAER,SAAS,MAAM;AACb,YAAI,eAAe,CAAC,YAAY;AAC9B,qBAAW,KAAK;AAAA;AAAA;AAAA,2CAInB,OAAD;AAAA,MACE,WAAW,WAAW;AAAA,QACpB,MAAM;AAAA,QACN,WAAW;AAAA;AAAA,OAGZ,GAAG,KAAK,UAAU,KAAK,QAAQ,EAAE,KAAK;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/annotationStepPopover/index.tsx"],"sourcesContent":["// 标注步骤中的 popover 的内容\n\nimport { componentCls } from '@/constant';\nimport { classnames } from '@/utils';\nimport React from 'react';\nimport { IStepInfo } from '@/types/step';\nimport { useTranslation } from 'react-i18next';\ninterface IProps {\n stepList: IStepInfo[];\n currentStep: number;\n updateStep: (step: number) => void;\n}\n\nconst AnnotationStepPopover = (props: IProps) => {\n const { t } = useTranslation();\n const { stepList, updateStep, currentStep } = props;\n\n return (\n <div className={`${componentCls}__annotationStepPopover`}>\n {stepList.map((info) => {\n const isSelected = info.step === currentStep;\n\n return (\n <div\n key={`stepList${info.step}`}\n className={classnames({\n step: true,\n })}\n onClick={() => {\n if (currentStep && !isSelected) {\n updateStep(info.step);\n }\n }}\n >\n <div\n className={classnames({\n name: true,\n highlight: isSelected,\n })}\n >\n {`${info.step} - ${info.name || t(info.tool)}`}\n </div>\n </div>\n );\n })}\n </div>\n );\n};\n\nexport default AnnotationStepPopover;\n"],"names":[],"mappings":";;;;;AAaM,MAAA,qBAAA,GAAwB,CAAC,KAAkB,KAAA;AAC/C,EAAA,MAAM,CAAE,CAAM,CAAA,GAAA,cAAA,EAAA,CAAA;AACd,EAAM,MAAA,CAAE,QAAU,EAAA,UAAA,EAAY,WAAgB,CAAA,GAAA,KAAA,CAAA;AAE9C,EAAA,2CACG,KAAD,EAAA;AAAA,IAAK,WAAW,CAAG,EAAA,YAAA,CAAA,uBAAA,CAAA;AAAA,GAChB,EAAA,QAAA,CAAS,GAAI,CAAA,CAAC,IAAS,KAAA;AACtB,IAAM,MAAA,UAAA,GAAa,KAAK,IAAS,KAAA,WAAA,CAAA;AAEjC,IAAA,2CACG,KAAD,EAAA;AAAA,MACE,GAAA,EAAK,WAAW,IAAK,CAAA,IAAA,CAAA,CAAA;AAAA,MACrB,WAAW,UAAW,CAAA;AAAA,QACpB,IAAM,EAAA,IAAA;AAAA,OAAA,CAAA;AAAA,MAER,SAAS,MAAM;AACb,QAAI,IAAA,WAAA,IAAe,CAAC,UAAY,EAAA;AAC9B,UAAA,UAAA,CAAW,IAAK,CAAA,IAAA,CAAA,CAAA;AAAA,SAAA;AAAA,OAAA;AAAA,KAAA,sCAInB,KAAD,EAAA;AAAA,MACE,WAAW,UAAW,CAAA;AAAA,QACpB,IAAM,EAAA,IAAA;AAAA,QACN,SAAW,EAAA,UAAA;AAAA,OAAA,CAAA;AAAA,KAAA,EAGZ,GAAG,IAAK,CAAA,IAAA,CAAA,GAAA,EAAU,IAAK,CAAA,IAAA,IAAQ,EAAE,IAAK,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/attributeList/index.tsx"],"sourcesContent":["import { COLORS_ARRAY, NULL_COLOR } from '@/data/Style';\nimport { ColorTag } from '@/components/colorTag';\nimport { Radio } from 'antd/es';\nimport React from 'react';\n\nexport const ATTRIBUTE_COLORS = [NULL_COLOR].concat(COLORS_ARRAY);\n\ninterface IProps {\n list: Array<{\n label: string;\n value: string;\n }>;\n selectedAttribute: string;\n attributeChanged: (v: string) => void;\n forbidDefault?: boolean;\n forbidColor?: boolean;\n noHeightLimit?: boolean;\n num?: number;\n}\n\nconst AttributeList = React.forwardRef((props: IProps, ref) => {\n const radioRef = React.useRef<any>();\n\n const list = props.list || [];\n\n let NEW_ATTRIBUTE_COLORS = [...ATTRIBUTE_COLORS];\n\n // 去除默认的颜色\n if (props.forbidDefault === true) {\n NEW_ATTRIBUTE_COLORS = NEW_ATTRIBUTE_COLORS.slice(1);\n }\n\n let className = 'sensebee-radio-group';\n if (props.noHeightLimit) {\n className = 'sensebee-radio-group-no-limit-height';\n }\n\n return (\n <div className={className}>\n <Radio.Group\n name=\"radiogroup\"\n defaultValue={props?.selectedAttribute}\n value={props?.selectedAttribute}\n onChange={(e) => props.attributeChanged(e.target.value)}\n ref={ref as any}\n >\n {list.map((i: any, index: number) => {\n let hotKey: number | string = props?.num ?? index;\n\n if (props.forbidDefault === true) {\n // 禁止 default 将从 1 开始\n hotKey++;\n }\n\n // 超出范围无法展示\n if (!(typeof hotKey === 'number' && hotKey <= 9 && hotKey >= 0)) {\n hotKey = '-';\n }\n\n return (\n <Radio\n value={i.value}\n ref={radioRef}\n key={index}\n >\n <span className=\"sensebee-radio-label\" title={i.label}>\n {!props?.forbidColor && (\n <ColorTag\n color={\n index > 8 && !props.forbidDefault\n ? COLORS_ARRAY[(index - 1) % COLORS_ARRAY.length]\n : NEW_ATTRIBUTE_COLORS[\n index % NEW_ATTRIBUTE_COLORS.length\n ]\n }\n style={{ marginRight: '8px' }}\n />\n )}\n {i.label}\n </span>\n <span className=\"sensebee-radio-num\">{hotKey}</span>\n </Radio>\n );\n })}\n </Radio.Group>\n </div>\n );\n});\n\nexport default AttributeList;\n"],"names":[],"mappings":";;;;;MAKa,mBAAmB,CAAC,YAAY,OAAO;MAe9C,gBAAgB,MAAM,WAAW,CAAC,OAAe,QAAQ;AAC7D,QAAM,WAAW,MAAM;AAEvB,QAAM,OAAO,MAAM,QAAQ;AAE3B,MAAI,uBAAuB,CAAC,GAAG;AAG/B,MAAI,MAAM,kBAAkB,MAAM;AAChC,2BAAuB,qBAAqB,MAAM;AAAA;AAGpD,MAAI,YAAY;AAChB,MAAI,MAAM,eAAe;AACvB,gBAAY;AAAA;AAGd,6CACG,OAAD;AAAA,IAAK;AAAA,yCACF,MAAM,OAAP;AAAA,IACE,MAAK;AAAA,IACL,cAAc,+BAAO;AAAA,IACrB,OAAO,+BAAO;AAAA,IACd,UAAU,CAAC,MAAM,MAAM,iBAAiB,EAAE,OAAO;AAAA,IACjD;AAAA,KAEC,KAAK,IAAI,CAAC,GAAQ,UAAkB;AA9C7C;AA+CU,QAAI,SAA0B,qCAAO,QAAP,YAAc;AAE5C,QAAI,MAAM,kBAAkB,MAAM;AAEhC;AAAA;AAIF,QAAI,SAAS,WAAW,YAAY,UAAU,KAAK,UAAU,IAAI;AAC/D,eAAS;AAAA;AAGX,+CACG,OAAD;AAAA,MACE,OAAO,EAAE;AAAA,MACT,KAAK;AAAA,MACL,KAAK;AAAA,2CAEJ,QAAD;AAAA,MAAM,WAAU;AAAA,MAAuB,OAAO,EAAE;AAAA,OAC7C,iCAAQ,oDACN,UAAD;AAAA,MACE,OACE,QAAQ,KAAK,CAAC,MAAM,gBAChB,aAAc,SAAQ,KAAK,aAAa,UACxC,qBACA,QAAQ,qBAAqB;AAAA,MAGnC,OAAO,CAAE,aAAa;AAAA,QAGzB,EAAE,4CAEJ,QAAD;AAAA,MAAM,WAAU;AAAA,OAAsB;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/attributeList/index.tsx"],"sourcesContent":["import { COLORS_ARRAY, NULL_COLOR } from '@/data/Style';\nimport { ColorTag } from '@/components/colorTag';\nimport { Radio } from 'antd/es';\nimport React from 'react';\n\nexport const ATTRIBUTE_COLORS = [NULL_COLOR].concat(COLORS_ARRAY);\n\ninterface IProps {\n list: Array<{\n label: string;\n value: string;\n }>;\n selectedAttribute: string;\n attributeChanged: (v: string) => void;\n forbidDefault?: boolean;\n forbidColor?: boolean;\n noHeightLimit?: boolean;\n num?: number;\n}\n\nconst AttributeList = React.forwardRef((props: IProps, ref) => {\n const radioRef = React.useRef<any>();\n\n const list = props.list || [];\n\n let NEW_ATTRIBUTE_COLORS = [...ATTRIBUTE_COLORS];\n\n // 去除默认的颜色\n if (props.forbidDefault === true) {\n NEW_ATTRIBUTE_COLORS = NEW_ATTRIBUTE_COLORS.slice(1);\n }\n\n let className = 'sensebee-radio-group';\n if (props.noHeightLimit) {\n className = 'sensebee-radio-group-no-limit-height';\n }\n\n return (\n <div className={className}>\n <Radio.Group\n name=\"radiogroup\"\n defaultValue={props?.selectedAttribute}\n value={props?.selectedAttribute}\n onChange={(e) => props.attributeChanged(e.target.value)}\n ref={ref as any}\n >\n {list.map((i: any, index: number) => {\n let hotKey: number | string = props?.num ?? index;\n\n if (props.forbidDefault === true) {\n // 禁止 default 将从 1 开始\n hotKey++;\n }\n\n // 超出范围无法展示\n if (!(typeof hotKey === 'number' && hotKey <= 9 && hotKey >= 0)) {\n hotKey = '-';\n }\n\n return (\n <Radio\n value={i.value}\n ref={radioRef}\n key={index}\n >\n <span className=\"sensebee-radio-label\" title={i.label}>\n {!props?.forbidColor && (\n <ColorTag\n color={\n index > 8 && !props.forbidDefault\n ? COLORS_ARRAY[(index - 1) % COLORS_ARRAY.length]\n : NEW_ATTRIBUTE_COLORS[\n index % NEW_ATTRIBUTE_COLORS.length\n ]\n }\n style={{ marginRight: '8px' }}\n />\n )}\n {i.label}\n </span>\n <span className=\"sensebee-radio-num\">{hotKey}</span>\n </Radio>\n );\n })}\n </Radio.Group>\n </div>\n );\n});\n\nexport default AttributeList;\n"],"names":[],"mappings":";;;;;AAKa,MAAA,gBAAA,GAAmB,CAAC,UAAA,CAAA,CAAY,MAAO,CAAA,YAAA,EAAA;AAepD,MAAM,aAAgB,GAAA,KAAA,CAAM,UAAW,CAAA,CAAC,OAAe,GAAQ,KAAA;AAC7D,EAAA,MAAM,WAAW,KAAM,CAAA,MAAA,EAAA,CAAA;AAEvB,EAAM,MAAA,IAAA,GAAO,MAAM,IAAQ,IAAA,EAAA,CAAA;AAE3B,EAAI,IAAA,oBAAA,GAAuB,CAAC,GAAG,gBAAA,CAAA,CAAA;AAG/B,EAAI,IAAA,KAAA,CAAM,kBAAkB,IAAM,EAAA;AAChC,IAAA,oBAAA,GAAuB,qBAAqB,KAAM,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAGpD,EAAA,IAAI,SAAY,GAAA,sBAAA,CAAA;AAChB,EAAA,IAAI,MAAM,aAAe,EAAA;AACvB,IAAY,SAAA,GAAA,sCAAA,CAAA;AAAA,GAAA;AAGd,EAAA,2CACG,KAAD,EAAA;AAAA,IAAK,SAAA;AAAA,GACH,kBAAA,KAAA,CAAA,aAAA,CAAC,MAAM,KAAP,EAAA;AAAA,IACE,IAAK,EAAA,YAAA;AAAA,IACL,cAAc,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,iBAAA;AAAA,IACrB,OAAO,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,iBAAA;AAAA,IACd,UAAU,CAAC,CAAA,KAAM,KAAM,CAAA,gBAAA,CAAiB,EAAE,MAAO,CAAA,KAAA,CAAA;AAAA,IACjD,GAAA;AAAA,GAAA,EAEC,IAAK,CAAA,GAAA,CAAI,CAAC,CAAA,EAAQ,KAAkB,KAAA;AA9C7C,IAAA,IAAA,EAAA,CAAA;AA+CU,IAAI,IAAA,MAAA,GAA0B,CAAO,EAAA,GAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAP,IAAc,GAAA,EAAA,GAAA,KAAA,CAAA;AAE5C,IAAI,IAAA,KAAA,CAAM,kBAAkB,IAAM,EAAA;AAEhC,MAAA,MAAA,EAAA,CAAA;AAAA,KAAA;AAIF,IAAA,IAAI,EAAS,OAAA,MAAA,KAAW,YAAY,MAAU,IAAA,CAAA,IAAK,UAAU,CAAI,CAAA,EAAA;AAC/D,MAAS,MAAA,GAAA,GAAA,CAAA;AAAA,KAAA;AAGX,IAAA,2CACG,KAAD,EAAA;AAAA,MACE,OAAO,CAAE,CAAA,KAAA;AAAA,MACT,GAAK,EAAA,QAAA;AAAA,MACL,GAAK,EAAA,KAAA;AAAA,KAAA,sCAEJ,MAAD,EAAA;AAAA,MAAM,SAAU,EAAA,sBAAA;AAAA,MAAuB,OAAO,CAAE,CAAA,KAAA;AAAA,KAAA,EAC7C,EAAC,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,WACP,CAAA,oBAAA,KAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AAAA,MACE,KACE,EAAA,KAAA,GAAQ,CAAK,IAAA,CAAC,KAAM,CAAA,aAAA,GAChB,YAAc,CAAA,CAAA,KAAA,GAAQ,CAAK,IAAA,YAAA,CAAa,MACxC,CAAA,GAAA,oBAAA,CACA,QAAQ,oBAAqB,CAAA,MAAA,CAAA;AAAA,MAGnC,KAAA,EAAO,CAAE,WAAa,EAAA,KAAA,CAAA;AAAA,KAGzB,CAAA,EAAA,CAAA,CAAE,KAEL,CAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AAAA,MAAM,SAAU,EAAA,oBAAA;AAAA,KAAsB,EAAA,MAAA,CAAA,CAAA,CAAA;AAAA,GAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/checkboxList/index.tsx"],"sourcesContent":["import { Checkbox } from 'antd/es';\nimport React from 'react';\n\ninterface IProps {\n selectedAttribute: string[];\n attributeChanged: () => void;\n num?: any;\n list?: any[];\n}\n\nconst CheckboxList = (props: IProps) => {\n const checkboxRef = React.useRef<any>(null);\n const list = props.list || [];\n return (\n <div className=\"sensebee-checkbox-group\">\n <Checkbox.Group\n name=\"checkboxgroup\"\n // defaultValue={props.selectedAttribute}\n value={props.selectedAttribute}\n onChange={() => props.attributeChanged()}\n >\n {list.map((i: any, index: number) => (\n // @ts-ignore\n <Checkbox value={i.value} ref={checkboxRef} onFocus={() => {\n checkboxRef?.current?.blur();\n }}\n key={index}\n >\n <span className=\"sensebee-checkbox-label\" title={i.label}>\n {i.label}\n </span>\n <span className=\"sensebee-checkbox-num\">{props?.num ?? index}</span>\n </Checkbox>\n ))}\n </Checkbox.Group>\n </div>\n );\n};\n\nexport default CheckboxList;\n"],"names":[],"mappings":";;;MAUM,eAAe,CAAC,UAAkB;AACtC,QAAM,cAAc,MAAM,OAAY;AACtC,QAAM,OAAO,MAAM,QAAQ;AAC3B,6CACG,OAAD;AAAA,IAAK,WAAU;AAAA,yCACZ,SAAS,OAAV;AAAA,IACE,MAAK;AAAA,IAEL,OAAO,MAAM;AAAA,IACb,UAAU,MAAM,MAAM;AAAA,KAErB,KAAK,IAAI,CAAC,GAAQ,UAAe;AArB1C;AAuBU,+CAAC,UAAD;AAAA,MAAU,OAAO,EAAE;AAAA,MAAO,KAAK;AAAA,MAAa,SAAS,MAAM;AAvBrE;AAwBc,0DAAa,YAAb,oBAAsB;AAAA;AAAA,MAExB,KAAK;AAAA,2CAEJ,QAAD;AAAA,MAAM,WAAU;AAAA,MAA0B,OAAO,EAAE;AAAA,OAChD,EAAE,4CAEJ,QAAD;AAAA,MAAM,WAAU;AAAA,OAAyB,qCAAO,QAAP,YAAc;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/checkboxList/index.tsx"],"sourcesContent":["import { Checkbox } from 'antd/es';\nimport React from 'react';\n\ninterface IProps {\n selectedAttribute: string[];\n attributeChanged: () => void;\n num?: any;\n list?: any[];\n}\n\nconst CheckboxList = (props: IProps) => {\n const checkboxRef = React.useRef<any>(null);\n const list = props.list || [];\n return (\n <div className=\"sensebee-checkbox-group\">\n <Checkbox.Group\n name=\"checkboxgroup\"\n // defaultValue={props.selectedAttribute}\n value={props.selectedAttribute}\n onChange={() => props.attributeChanged()}\n >\n {list.map((i: any, index: number) => (\n // @ts-ignore\n <Checkbox value={i.value} ref={checkboxRef} onFocus={() => {\n checkboxRef?.current?.blur();\n }}\n key={index}\n >\n <span className=\"sensebee-checkbox-label\" title={i.label}>\n {i.label}\n </span>\n <span className=\"sensebee-checkbox-num\">{props?.num ?? index}</span>\n </Checkbox>\n ))}\n </Checkbox.Group>\n </div>\n );\n};\n\nexport default CheckboxList;\n"],"names":[],"mappings":";;;AAUM,MAAA,YAAA,GAAe,CAAC,KAAkB,KAAA;AACtC,EAAM,MAAA,WAAA,GAAc,MAAM,MAAY,CAAA,IAAA,CAAA,CAAA;AACtC,EAAM,MAAA,IAAA,GAAO,MAAM,IAAQ,IAAA,EAAA,CAAA;AAC3B,EAAA,2CACG,KAAD,EAAA;AAAA,IAAK,SAAU,EAAA,yBAAA;AAAA,GACb,kBAAA,KAAA,CAAA,aAAA,CAAC,SAAS,KAAV,EAAA;AAAA,IACE,IAAK,EAAA,eAAA;AAAA,IAEL,OAAO,KAAM,CAAA,iBAAA;AAAA,IACb,QAAA,EAAU,MAAM,KAAM,CAAA,gBAAA,EAAA;AAAA,GAAA,EAErB,IAAK,CAAA,GAAA,CAAI,CAAC,CAAA,EAAQ,KAAe,KAAA;AArB1C,IAAA,IAAA,EAAA,CAAA;AAuBU,IAAA,uBAAA,KAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AAAA,MAAU,OAAO,CAAE,CAAA,KAAA;AAAA,MAAO,GAAK,EAAA,WAAA;AAAA,MAAa,SAAS,MAAM;AAvBrE,QAAA,IAAA,GAAA,CAAA;AAwBc,QAAA,CAAA,GAAA,GAAA,WAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,WAAA,CAAa,YAAb,IAAsB,GAAA,KAAA,CAAA,GAAA,GAAA,CAAA,IAAA,EAAA,CAAA;AAAA,OAAA;AAAA,MAExB,GAAK,EAAA,KAAA;AAAA,KAAA,sCAEJ,MAAD,EAAA;AAAA,MAAM,SAAU,EAAA,yBAAA;AAAA,MAA0B,OAAO,CAAE,CAAA,KAAA;AAAA,KAChD,EAAA,CAAA,CAAE,KAEL,CAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AAAA,MAAM,SAAU,EAAA,uBAAA;AAAA,KAAyB,EAAA,CAAA,EAAA,GAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,QAAP,IAAc,GAAA,EAAA,GAAA,KAAA,CAAA,CAAA,CAAA;AAAA,GAAA,CAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/colorTag/index.tsx"],"sourcesContent":["import React from 'react';\n\nexport const ColorTag = ({ color, style }: any) => (\n <div\n style={{\n display: 'inline-block',\n height: 14,\n width: 14,\n backgroundColor: color,\n verticalAlign: 'middle',\n ...style,\n }}\n />\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;MAEa,WAAW,CAAC,CAAE,OAAO,+CAC/B,OAAD;AAAA,EACE,OAAO;AAAA,IACL,SAAS;AAAA,IACT,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,iBAAiB;AAAA,IACjB,eAAe;AAAA,KACZ;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/colorTag/index.tsx"],"sourcesContent":["import React from 'react';\n\nexport const ColorTag = ({ color, style }: any) => (\n <div\n style={{\n display: 'inline-block',\n height: 14,\n width: 14,\n backgroundColor: color,\n verticalAlign: 'middle',\n ...style,\n }}\n />\n);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEO,MAAM,WAAW,CAAC,CAAE,KAAO,EAAA,KAAA,CAAA,yCAC/B,KAAD,EAAA;AAAA,EACE,KAAO,EAAA,cAAA,CAAA;AAAA,IACL,OAAS,EAAA,cAAA;AAAA,IACT,MAAQ,EAAA,EAAA;AAAA,IACR,KAAO,EAAA,EAAA;AAAA,IACP,eAAiB,EAAA,KAAA;AAAA,IACjB,aAAe,EAAA,QAAA;AAAA,GACZ,EAAA,KAAA,CAAA;AAAA,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/customAntd/IconWithText/index.tsx"],"sourcesContent":["import { componentCls } from '@/constant';\nimport React from 'react';\n\ninterface IProps {\n text: string; // icon 文本\n Icon: any;\n iconChildren: React.ReactNode;\n marginLeft?: number;\n}\n\nconst IconWithText = (props: IProps) => {\n const { Icon, text, iconChildren, ...otherProps } = props;\n\n const marginLeft = props.marginLeft === undefined ? 30 : props.marginLeft;\n\n return (\n <div {...otherProps} className={componentCls} >\n <div className={`${componentCls}__iconWithText`} style={{ marginLeft }}>\n <div className='iconGroup'>\n <Icon className='icon' />\n {iconChildren}\n </div>\n\n <span className='name'>{text}</span>\n </div>\n </div>\n );\n};\n\nexport default IconWithText;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAUM,eAAe,CAAC,UAAkB;AACtC,QAAoD,YAA5C,OAAM,MAAM,gBAAgC,IAAf,uBAAe,IAAf,CAA7B,QAAM,QAAM;AAEpB,QAAM,aAAa,MAAM,eAAe,SAAY,KAAK,MAAM;AAE/D,6CACG,OAAD,iCAAS,aAAT;AAAA,IAAqB,WAAW;AAAA,0CAC7B,OAAD;AAAA,IAAK,WAAW,GAAG;AAAA,IAA8B,OAAO,CAAE;AAAA,yCACvD,OAAD;AAAA,IAAK,WAAU;AAAA,yCACZ,MAAD;AAAA,IAAM,WAAU;AAAA,MACf,mDAGF,QAAD;AAAA,IAAM,WAAU;AAAA,KAAQ;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/customAntd/IconWithText/index.tsx"],"sourcesContent":["import { componentCls } from '@/constant';\nimport React from 'react';\n\ninterface IProps {\n text: string; // icon 文本\n Icon: any;\n iconChildren: React.ReactNode;\n marginLeft?: number;\n}\n\nconst IconWithText = (props: IProps) => {\n const { Icon, text, iconChildren, ...otherProps } = props;\n\n const marginLeft = props.marginLeft === undefined ? 30 : props.marginLeft;\n\n return (\n <div {...otherProps} className={componentCls} >\n <div className={`${componentCls}__iconWithText`} style={{ marginLeft }}>\n <div className='iconGroup'>\n <Icon className='icon' />\n {iconChildren}\n </div>\n\n <span className='name'>{text}</span>\n </div>\n </div>\n );\n};\n\nexport default IconWithText;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUM,MAAA,YAAA,GAAe,CAAC,KAAkB,KAAA;AACtC,EAAoD,MAAA,EAAA,GAAA,KAAA,EAA5C,OAAM,IAAM,EAAA,YAAA,CAAA,GAAgC,IAAf,UAAe,GAAA,SAAA,CAAA,EAAA,EAAf,CAA7B,MAAA,EAAM,MAAM,EAAA,cAAA,CAAA,CAAA,CAAA;AAEpB,EAAA,MAAM,UAAa,GAAA,KAAA,CAAM,UAAe,KAAA,KAAA,CAAA,GAAY,KAAK,KAAM,CAAA,UAAA,CAAA;AAE/D,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAD,EAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAAS,UAAT,CAAA,EAAA;AAAA,IAAqB,SAAW,EAAA,YAAA;AAAA,GAAA,CAAA,sCAC7B,KAAD,EAAA;AAAA,IAAK,WAAW,CAAG,EAAA,YAAA,CAAA,cAAA,CAAA;AAAA,IAA8B,OAAO,CAAE,UAAA,CAAA;AAAA,GAAA,sCACvD,KAAD,EAAA;AAAA,IAAK,SAAU,EAAA,WAAA;AAAA,GAAA,sCACZ,IAAD,EAAA;AAAA,IAAM,SAAU,EAAA,MAAA;AAAA,GACf,CAAA,EAAA,YAAA,CAAA,sCAGF,MAAD,EAAA;AAAA,IAAM,SAAU,EAAA,MAAA;AAAA,GAAQ,EAAA,IAAA,CAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/customResizeHook/index.tsx"],"sourcesContent":["import {\n editStepWidth,\n footerHeight,\n headerHeight,\n sidebarWidth,\n} from '@/data/enums/AnnotationSize';\nimport { cKeyCode, toolUtils } from '@labelbee/lb-annotation';\n\nimport React, { useContext, useEffect, useMemo, useState } from 'react';\nimport { connect } from 'react-redux';\nimport { AppState } from '@/store';\nimport { UpdateRotate, PageBackward, PageForward } from '@/store/annotation/actionCreators';\nimport { ISize } from '@/types/main';\n\nconst EKeyCode = cKeyCode.default;\n\nexport const viewportContext = React.createContext<{\n width: number;\n height: number;\n}>({\n width: window.innerWidth,\n height: window.innerHeight,\n});\n\nexport const ViewportProviderComponent = (props: any) => {\n const { children, dispatch } = props;\n const [width] = useState(window.innerWidth);\n const [height] = useState(window.innerHeight);\n\n const keydown = (e: KeyboardEvent) => {\n if (!toolUtils.hotkeyFilter(e)) {\n return;\n }\n if (e.keyCode === EKeyCode.A) {\n dispatch(PageBackward());\n }\n\n if (e.keyCode === EKeyCode.D) {\n dispatch(PageForward());\n }\n if (e.keyCode === EKeyCode.R) {\n dispatch(UpdateRotate());\n }\n };\n\n useEffect(() => {\n window.addEventListener('keydown', keydown);\n\n return () => {\n window.removeEventListener('keydown', keydown);\n };\n }, []);\n\n const size = useMemo(() => ({ width, height }), [width, height]);\n\n return <viewportContext.Provider value={size}>{children}</viewportContext.Provider>;\n};\n\nexport const ViewportProvider = connect((state: AppState) => ({\n annotation: state.annotation,\n}))(ViewportProviderComponent);\n\nexport const useViewport = () => {\n const { width, height } = useContext(viewportContext);\n return { width, height };\n};\n\n/**\n * 获取当前 canvas 的大小\n * @param isEdit 是否为编辑模式\n * @param isTips 是否有 tips\n */\nexport const useCanvasViewPort = (isEdit = false, isTips = false) => {\n const { width, height } = useContext(viewportContext);\n const otherHeight = headerHeight + footerHeight;\n const placeholderHeight = isTips ? 40 + otherHeight + 40 : otherHeight;\n const placeholderWidth = isEdit ? editStepWidth + sidebarWidth : sidebarWidth;\n\n return {\n width: width - placeholderWidth,\n height: height - placeholderHeight,\n };\n};\n\n/**\n * 解析当前 windowSize 下的 canvasSize\n * @param size\n * @param isEdit\n * @param isTips\n */\nexport const getFormatSize = (windowSize: ISize, isEdit = false, isTips = false) => {\n const { width, height } = windowSize;\n const otherHeight = headerHeight + footerHeight;\n const placeholderHeight = isTips ? 40 + otherHeight + 40 : otherHeight;\n const placeholderWidth = isEdit ? editStepWidth + sidebarWidth : sidebarWidth;\n\n return {\n width: width - placeholderWidth,\n height: height - placeholderHeight,\n };\n};\n"],"names":[],"mappings":";;;;;;AAcA,MAAM,WAAW,SAAS;MAEb,kBAAkB,MAAM,cAGlC;AAAA,EACD,OAAO,OAAO;AAAA,EACd,QAAQ,OAAO;AAAA;MAGJ,4BAA4B,CAAC,UAAe;AACvD,QAAM,CAAE,UAAU,YAAa;AAC/B,QAAM,CAAC,SAAS,SAAS,OAAO;AAChC,QAAM,CAAC,UAAU,SAAS,OAAO;AAEjC,QAAM,UAAU,CAAC,MAAqB;AACpC,QAAI,CAAC,UAAU,aAAa,IAAI;AAC9B;AAAA;AAEF,QAAI,EAAE,YAAY,SAAS,GAAG;AAC5B,eAAS;AAAA;AAGX,QAAI,EAAE,YAAY,SAAS,GAAG;AAC5B,eAAS;AAAA;AAEX,QAAI,EAAE,YAAY,SAAS,GAAG;AAC5B,eAAS;AAAA;AAAA;AAIb,YAAU,MAAM;AACd,WAAO,iBAAiB,WAAW;AAEnC,WAAO,MAAM;AACX,aAAO,oBAAoB,WAAW;AAAA;AAAA,KAEvC;AAEH,QAAM,OAAO,QAAQ,QAAS,OAAO,UAAW,CAAC,OAAO;AAExD,6CAAQ,gBAAgB,UAAjB;AAAA,IAA0B,OAAO;AAAA,KAAO;AAAA;MAGpC,mBAAmB,QAAQ,CAAC;AAAqB,EAC5D,YAAY,MAAM;AAAA,IAChB;MA8BS,gBAAgB,CAAC,YAAmB,SAAS,OAAO,SAAS,UAAU;AAClF,QAAM,CAAE,OAAO,UAAW;AAC1B,QAAM,cAAc,eAAe;AACnC,QAAM,oBAAoB,SAAS,KAAK,cAAc,KAAK;AAC3D,QAAM,mBAAmB,SAAS,gBAAgB,eAAe;AAEjE,SAAO;AAAA,IACL,OAAO,QAAQ;AAAA,IACf,QAAQ,SAAS;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/customResizeHook/index.tsx"],"sourcesContent":["import {\n editStepWidth,\n footerHeight,\n headerHeight,\n sidebarWidth,\n} from '@/data/enums/AnnotationSize';\nimport { cKeyCode, toolUtils } from '@labelbee/lb-annotation';\n\nimport React, { useContext, useEffect, useMemo, useState } from 'react';\nimport { connect } from 'react-redux';\nimport { AppState } from '@/store';\nimport { UpdateRotate, PageBackward, PageForward } from '@/store/annotation/actionCreators';\nimport { ISize } from '@/types/main';\n\nconst EKeyCode = cKeyCode.default;\n\nexport const viewportContext = React.createContext<{\n width: number;\n height: number;\n}>({\n width: window.innerWidth,\n height: window.innerHeight,\n});\n\nexport const ViewportProviderComponent = (props: any) => {\n const { children, dispatch } = props;\n const [width] = useState(window.innerWidth);\n const [height] = useState(window.innerHeight);\n\n const keydown = (e: KeyboardEvent) => {\n if (!toolUtils.hotkeyFilter(e)) {\n return;\n }\n if (e.keyCode === EKeyCode.A) {\n dispatch(PageBackward());\n }\n\n if (e.keyCode === EKeyCode.D) {\n dispatch(PageForward());\n }\n if (e.keyCode === EKeyCode.R) {\n dispatch(UpdateRotate());\n }\n };\n\n useEffect(() => {\n window.addEventListener('keydown', keydown);\n\n return () => {\n window.removeEventListener('keydown', keydown);\n };\n }, []);\n\n const size = useMemo(() => ({ width, height }), [width, height]);\n\n return <viewportContext.Provider value={size}>{children}</viewportContext.Provider>;\n};\n\nexport const ViewportProvider = connect((state: AppState) => ({\n annotation: state.annotation,\n}))(ViewportProviderComponent);\n\nexport const useViewport = () => {\n const { width, height } = useContext(viewportContext);\n return { width, height };\n};\n\n/**\n * 获取当前 canvas 的大小\n * @param isEdit 是否为编辑模式\n * @param isTips 是否有 tips\n */\nexport const useCanvasViewPort = (isEdit = false, isTips = false) => {\n const { width, height } = useContext(viewportContext);\n const otherHeight = headerHeight + footerHeight;\n const placeholderHeight = isTips ? 40 + otherHeight + 40 : otherHeight;\n const placeholderWidth = isEdit ? editStepWidth + sidebarWidth : sidebarWidth;\n\n return {\n width: width - placeholderWidth,\n height: height - placeholderHeight,\n };\n};\n\n/**\n * 解析当前 windowSize 下的 canvasSize\n * @param size\n * @param isEdit\n * @param isTips\n */\nexport const getFormatSize = (windowSize: ISize, isEdit = false, isTips = false) => {\n const { width, height } = windowSize;\n const otherHeight = headerHeight + footerHeight;\n const placeholderHeight = isTips ? 40 + otherHeight + 40 : otherHeight;\n const placeholderWidth = isEdit ? editStepWidth + sidebarWidth : sidebarWidth;\n\n return {\n width: width - placeholderWidth,\n height: height - placeholderHeight,\n };\n};\n"],"names":[],"mappings":";;;;;;AAcA,MAAM,WAAW,QAAS,CAAA,OAAA,CAAA;AAEb,MAAA,eAAA,GAAkB,MAAM,aAGlC,CAAA;AAAA,EACD,OAAO,MAAO,CAAA,UAAA;AAAA,EACd,QAAQ,MAAO,CAAA,WAAA;AAAA,CAAA,EAAA;AAGJ,MAAA,yBAAA,GAA4B,CAAC,KAAe,KAAA;AACvD,EAAM,MAAA,CAAE,UAAU,QAAa,CAAA,GAAA,KAAA,CAAA;AAC/B,EAAM,MAAA,CAAC,KAAS,CAAA,GAAA,QAAA,CAAS,MAAO,CAAA,UAAA,CAAA,CAAA;AAChC,EAAM,MAAA,CAAC,MAAU,CAAA,GAAA,QAAA,CAAS,MAAO,CAAA,WAAA,CAAA,CAAA;AAEjC,EAAM,MAAA,OAAA,GAAU,CAAC,CAAqB,KAAA;AACpC,IAAI,IAAA,CAAC,SAAU,CAAA,YAAA,CAAa,CAAI,CAAA,EAAA;AAC9B,MAAA,OAAA;AAAA,KAAA;AAEF,IAAI,IAAA,CAAA,CAAE,OAAY,KAAA,QAAA,CAAS,CAAG,EAAA;AAC5B,MAAS,QAAA,CAAA,YAAA,EAAA,CAAA,CAAA;AAAA,KAAA;AAGX,IAAI,IAAA,CAAA,CAAE,OAAY,KAAA,QAAA,CAAS,CAAG,EAAA;AAC5B,MAAS,QAAA,CAAA,WAAA,EAAA,CAAA,CAAA;AAAA,KAAA;AAEX,IAAI,IAAA,CAAA,CAAE,OAAY,KAAA,QAAA,CAAS,CAAG,EAAA;AAC5B,MAAS,QAAA,CAAA,YAAA,EAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAAA,CAAA;AAIb,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAA,CAAO,iBAAiB,SAAW,EAAA,OAAA,CAAA,CAAA;AAEnC,IAAA,OAAO,MAAM;AACX,MAAA,MAAA,CAAO,oBAAoB,SAAW,EAAA,OAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAEvC,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,MAAM,OAAO,OAAQ,CAAA,QAAS,KAAO,EAAA,MAAA,CAAA,CAAA,EAAW,CAAC,KAAO,EAAA,MAAA,CAAA,CAAA,CAAA;AAExD,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,gBAAgB,QAAjB,EAAA;AAAA,IAA0B,KAAO,EAAA,IAAA;AAAA,GAAO,EAAA,QAAA,CAAA,CAAA;AAAA,EAAA;AAGpC,MAAA,gBAAA,GAAmB,OAAQ,CAAA,CAAC,KAAqB,MAAA;AAAA,EAC5D,YAAY,KAAM,CAAA,UAAA;AAAA,CAChB,CAAA,CAAA,CAAA,yBAAA,EAAA;AA8BG,MAAM,gBAAgB,CAAC,UAAA,EAAmB,MAAS,GAAA,KAAA,EAAO,SAAS,KAAU,KAAA;AAClF,EAAM,MAAA,CAAE,OAAO,MAAW,CAAA,GAAA,UAAA,CAAA;AAC1B,EAAA,MAAM,cAAc,YAAe,GAAA,YAAA,CAAA;AACnC,EAAA,MAAM,iBAAoB,GAAA,MAAA,GAAS,EAAK,GAAA,WAAA,GAAc,EAAK,GAAA,WAAA,CAAA;AAC3D,EAAM,MAAA,gBAAA,GAAmB,MAAS,GAAA,aAAA,GAAgB,YAAe,GAAA,YAAA,CAAA;AAEjE,EAAO,OAAA;AAAA,IACL,OAAO,KAAQ,GAAA,gBAAA;AAAA,IACf,QAAQ,MAAS,GAAA,iBAAA;AAAA,GAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"configureStore.js","sources":["../src/configureStore.ts"],"sourcesContent":["import { createStore, applyMiddleware } from 'redux';\nimport thunk from 'redux-thunk';\nimport { rootReducer } from './store';\n\nexport default function configureStore() {\n return createStore(rootReducer, applyMiddleware(thunk));\n}\n"],"names":[],"mappings":";;;;0BAIyC;AACvC,SAAO,YAAY,aAAa,gBAAgB;AAAA;;;;"}
1
+ {"version":3,"file":"configureStore.js","sources":["../src/configureStore.ts"],"sourcesContent":["import { createStore, applyMiddleware } from 'redux';\nimport thunk from 'redux-thunk';\nimport { rootReducer } from './store';\n\nexport default function configureStore() {\n return createStore(rootReducer, applyMiddleware(thunk));\n}\n"],"names":[],"mappings":";;;;AAIyC,SAAA,cAAA,GAAA;AACvC,EAAO,OAAA,WAAA,CAAY,aAAa,eAAgB,CAAA,KAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/constant/index.tsx"],"sourcesContent":["export enum EStepType {\n Check = 0, // 查看模式\n ANNOTATION = 1, // 正常标注\n QUALITY_INSPECTION, // 标注质检\n PRE_ANNOTATION, // 预标注\n MANUAL_CORRECTION, // 人工修正\n}\n\nexport enum ESubmitType {\n Backward = 1, // 向前翻页\n Forward = 2, // 向后翻页\n Jump = 3, // 分页器的跳页翻页\n Quit = 4, // 左上角后退触发\n Export = 5, // 数据导出时\n StepChanged = 6, // 切换步骤\n Save = 7, // 点击保存\n}\n// css 命名前缀\nexport const prefix = 'bee';\nexport const componentCls = `${prefix}-component`;\n"],"names":[],"mappings":"IAAY;AAAL,UAAK,YAAL;AACL,mCAAQ,KAAR;AACA,wCAAa,KAAb;AACA;AACA;AACA;AAAA,GALU;IAQA;AAAL,UAAK,cAAL;AACL,0CAAW,KAAX;AACA,yCAAU,KAAV;AACA,sCAAO,KAAP;AACA,sCAAO,KAAP;AACA,wCAAS,KAAT;AACA,6CAAc,KAAd;AACA,sCAAO,KAAP;AAAA,GAPU;MAUC,SAAS;MACT,eAAe,GAAG;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/constant/index.tsx"],"sourcesContent":["export enum EStepType {\n Check = 0, // 查看模式\n ANNOTATION = 1, // 正常标注\n QUALITY_INSPECTION, // 标注质检\n PRE_ANNOTATION, // 预标注\n MANUAL_CORRECTION, // 人工修正\n}\n\nexport enum ESubmitType {\n Backward = 1, // 向前翻页\n Forward = 2, // 向后翻页\n Jump = 3, // 分页器的跳页翻页\n Quit = 4, // 左上角后退触发\n Export = 5, // 数据导出时\n StepChanged = 6, // 切换步骤\n Save = 7, // 点击保存\n}\n// css 命名前缀\nexport const prefix = 'bee';\nexport const componentCls = `${prefix}-component`;\n"],"names":[],"mappings":"AAAY,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AACL,EAAA,UAAA,CAAA,UAAA,CAAA,OAAA,CAAA,GAAQ,CAAR,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,YAAA,CAAA,GAAa,CAAb,CAAA,GAAA,YAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,oBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,oBAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,gBAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,mBAAA,CAAA;AAAA,CALU,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAQA,IAAA,YAAA;AAAL,CAAA,SAAK,YAAL,EAAA;AACL,EAAA,YAAA,CAAA,YAAA,CAAA,UAAA,CAAA,GAAW,CAAX,CAAA,GAAA,UAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,SAAA,CAAA,GAAU,CAAV,CAAA,GAAA,SAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAO,CAAP,CAAA,GAAA,MAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAO,CAAP,CAAA,GAAA,MAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,QAAA,CAAA,GAAS,CAAT,CAAA,GAAA,QAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,aAAA,CAAA,GAAc,CAAd,CAAA,GAAA,aAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAO,CAAP,CAAA,GAAA,MAAA,CAAA;AAAA,CAPU,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAUL,MAAM,MAAS,GAAA,MAAA;AACf,MAAM,eAAe,CAAG,EAAA,MAAA,CAAA,UAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"styleString.js","sources":["../../src/constant/styleString.ts"],"sourcesContent":["const styleString = '{\"toolColor\":{\"1\":{\"valid\":{\"stroke\":\"rgba(0,0,255,0.50)\",\"fill\":\"rgba(0,0,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(0,15,255,1.00)\",\"fill\":\"rgba(0,15,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(0,15,255,0.80)\",\"fill\":\"rgba(0,15,255,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"3\":{\"valid\":{\"stroke\":\"rgba(0,255,255,0.50)\",\"fill\":\"rgba(0,255,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(0,212,255,1.00)\",\"fill\":\"rgba(0,212,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(0,212,255,0.80)\",\"fill\":\"rgba(0,212,255,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"5\":{\"valid\":{\"stroke\":\"rgba(0,255,0,0.50)\",\"fill\":\"rgba(0,255,0,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(149,255,1.00)\",\"fill\":\"rgba(149,255,0,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(149,255,0,0.80)\",\"fill\":\"rgba(149,255,0,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"7\":{\"valid\":{\"stroke\":\"rgba(255,255,0,0.50)\",\"fill\":\"rgba(255,255,0,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(255,230,102,1.00)\",\"fill\":\"rgba(255,213,0,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(255,230,102,0.80)\",\"fill\":\"rgba(255,230,102,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"9\":{\"valid\":{\"stroke\":\"rgba(255,0,255,0.50)\",\"fill\":\"rgba(255,0,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(230,102,255,1.00)\",\"fill\":\"rgba(213,0,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(230,102,255,0.80)\",\"fill\":\"rgba(230,102,255,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}}},\"attributeColor\":[{\"valid\":{\"stroke\":\"rgba(204,204,204,1.00)\",\"fill\":\"rgba(204,204,204,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(204,204,204,1.00)\",\"fill\":\"rgba(204,204,204,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(204,204,204,1.00)\",\"fill\":\"rgba(204,204,204,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(153,51,255,1.00)\",\"fill\":\"rgba(153,51,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(153,51,255,1.00)\",\"fill\":\"rgba(153,51,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(153,51,255,1.00)\",\"fill\":\"rgba(153,51,255,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(51,254,51,1.00)\",\"fill\":\"rgba(51,254,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(51,254,51,1.00)\",\"fill\":\"rgba(51,254,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(51,254,51,1.00)\",\"fill\":\"rgba(51,254,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(255,51,255,1.00)\",\"fill\":\"rgba(255,51,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(255,51,255,1.00)\",\"fill\":\"rgba(255,51,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(255,51,255,1.00)\",\"fill\":\"rgba(255,51,255,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(204,255,51,1.00)\",\"fill\":\"rgba(204,255,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(204,255,51,1.00)\",\"fill\":\"rgba(204,255,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(204,255,51,1.00)\",\"fill\":\"rgba(204,255,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(51,153,255,1.00)\",\"fill\":\"rgba(51,153,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(51,153,255,1.00)\",\"fill\":\"rgba(51,153,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(51,153,255,1.00)\",\"fill\":\"rgba(51,153,255,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(255,153,51,1.00)\",\"fill\":\"rgba(255,153,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(255,153,51,1.00)\",\"fill\":\"rgba(255,153,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(255,153,51,1.00)\",\"fill\":\"rgba(255,153,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(51,255,238,1.00)\",\"fill\":\"rgba(51,255,238,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(51,255,238,1.00)\",\"fill\":\"rgba(51,255,238,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(51,255,238,1.00)\",\"fill\":\"rgba(51,255,238,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(255,221,51,1.00)\",\"fill\":\"rgba(255,221,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(255,221,51,1.00)\",\"fill\":\"rgba(255,221,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(255,221,51,1.00)\",\"fill\":\"rgba(255,221,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}}],\"lineColor\":{\"1\":\"rgba(102, 111, 255, 1 )\",\"3\":\"rgba(102, 230, 255, 1)\",\"5\":\"rgba(191, 255, 102, 1)\",\"7\":\"rgba(255, 230, 102, 1)\",\"9\":\"rgba(230, 102, 255, 1)\"},\"attributeLineColor\":[\"rgba(204, 204, 204, 1)\",\"rgba(153, 51, 255, 1)\",\"rgba(51, 254, 51, 1)\",\"rgba(255, 51, 255, 1)\",\"rgba(204, 255, 51, 1)\",\"rgba(51, 153, 255, 1)\",\"rgba(255, 153, 51, 1)\",\"rgba(51, 255, 238, 1)\",\"rgba(255, 221, 51, 1)\"],\"color\":1,\"width\":2,\"opacity\":9}';\n\nexport default styleString;\n"],"names":[],"mappings":"MAAM,cAAc;;;;"}
1
+ {"version":3,"file":"styleString.js","sources":["../../src/constant/styleString.ts"],"sourcesContent":["const styleString = '{\"toolColor\":{\"1\":{\"valid\":{\"stroke\":\"rgba(0,0,255,0.50)\",\"fill\":\"rgba(0,0,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(0,15,255,1.00)\",\"fill\":\"rgba(0,15,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(0,15,255,0.80)\",\"fill\":\"rgba(0,15,255,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"3\":{\"valid\":{\"stroke\":\"rgba(0,255,255,0.50)\",\"fill\":\"rgba(0,255,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(0,212,255,1.00)\",\"fill\":\"rgba(0,212,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(0,212,255,0.80)\",\"fill\":\"rgba(0,212,255,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"5\":{\"valid\":{\"stroke\":\"rgba(0,255,0,0.50)\",\"fill\":\"rgba(0,255,0,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(149,255,1.00)\",\"fill\":\"rgba(149,255,0,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(149,255,0,0.80)\",\"fill\":\"rgba(149,255,0,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"7\":{\"valid\":{\"stroke\":\"rgba(255,255,0,0.50)\",\"fill\":\"rgba(255,255,0,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(255,230,102,1.00)\",\"fill\":\"rgba(255,213,0,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(255,230,102,0.80)\",\"fill\":\"rgba(255,230,102,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}},\"9\":{\"valid\":{\"stroke\":\"rgba(255,0,255,0.50)\",\"fill\":\"rgba(255,0,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.80)\"},\"validSelected\":{\"stroke\":\"rgba(230,102,255,1.00)\",\"fill\":\"rgba(213,0,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,0.60)\",\"fill\":\"rgba(255,0,0,0.24)\"},\"validHover\":{\"stroke\":\"rgba(230,102,255,0.80)\",\"fill\":\"rgba(230,102,255,0.64)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,0.50)\",\"fill\":\"rgba(255,0,0,0.40)\"}}},\"attributeColor\":[{\"valid\":{\"stroke\":\"rgba(204,204,204,1.00)\",\"fill\":\"rgba(204,204,204,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(204,204,204,1.00)\",\"fill\":\"rgba(204,204,204,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(204,204,204,1.00)\",\"fill\":\"rgba(204,204,204,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(153,51,255,1.00)\",\"fill\":\"rgba(153,51,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(153,51,255,1.00)\",\"fill\":\"rgba(153,51,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(153,51,255,1.00)\",\"fill\":\"rgba(153,51,255,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(51,254,51,1.00)\",\"fill\":\"rgba(51,254,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(51,254,51,1.00)\",\"fill\":\"rgba(51,254,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(51,254,51,1.00)\",\"fill\":\"rgba(51,254,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(255,51,255,1.00)\",\"fill\":\"rgba(255,51,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(255,51,255,1.00)\",\"fill\":\"rgba(255,51,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(255,51,255,1.00)\",\"fill\":\"rgba(255,51,255,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(204,255,51,1.00)\",\"fill\":\"rgba(204,255,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(204,255,51,1.00)\",\"fill\":\"rgba(204,255,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(204,255,51,1.00)\",\"fill\":\"rgba(204,255,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(51,153,255,1.00)\",\"fill\":\"rgba(51,153,255,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(51,153,255,1.00)\",\"fill\":\"rgba(51,153,255,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(51,153,255,1.00)\",\"fill\":\"rgba(51,153,255,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(255,153,51,1.00)\",\"fill\":\"rgba(255,153,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(255,153,51,1.00)\",\"fill\":\"rgba(255,153,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(255,153,51,1.00)\",\"fill\":\"rgba(255,153,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(51,255,238,1.00)\",\"fill\":\"rgba(51,255,238,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(51,255,238,1.00)\",\"fill\":\"rgba(51,255,238,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(51,255,238,1.00)\",\"fill\":\"rgba(51,255,238,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}},{\"valid\":{\"stroke\":\"rgba(255,221,51,1.00)\",\"fill\":\"rgba(255,221,51,0.40)\"},\"invalid\":{\"stroke\":\"rgba(255,153,102,1.00)\",\"fill\":\"rgba(255,153,102,0.40)\"},\"validSelected\":{\"stroke\":\"rgba(255,221,51,1.00)\",\"fill\":\"rgba(255,221,51,0.80)\"},\"invalidSelected\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"},\"validHover\":{\"stroke\":\"rgba(255,221,51,1.00)\",\"fill\":\"rgba(255,221,51,0.80)\"},\"invalidHover\":{\"stroke\":\"rgba(255,0,0,1.00)\",\"fill\":\"rgba(255,0,0,0.80)\"}}],\"lineColor\":{\"1\":\"rgba(102, 111, 255, 1 )\",\"3\":\"rgba(102, 230, 255, 1)\",\"5\":\"rgba(191, 255, 102, 1)\",\"7\":\"rgba(255, 230, 102, 1)\",\"9\":\"rgba(230, 102, 255, 1)\"},\"attributeLineColor\":[\"rgba(204, 204, 204, 1)\",\"rgba(153, 51, 255, 1)\",\"rgba(51, 254, 51, 1)\",\"rgba(255, 51, 255, 1)\",\"rgba(204, 255, 51, 1)\",\"rgba(51, 153, 255, 1)\",\"rgba(255, 153, 51, 1)\",\"rgba(51, 255, 238, 1)\",\"rgba(255, 221, 51, 1)\"],\"color\":1,\"width\":2,\"opacity\":9}';\n\nexport default styleString;\n"],"names":[],"mappings":"AAAA,MAAM,WAAc,GAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Style.js","sources":["../../src/data/Style.ts"],"sourcesContent":["export const COLORS_ARRAY = [\n 'rgba(128, 12, 249, 1)', // 6\n 'rgba(0, 255, 48, 1)', // 3\n 'rgba(255, 136, 247, 1)', // 7\n 'rgba(255, 226, 50, 1)', // 2\n 'rgba(153, 66, 23, 1)', // 8\n 'rgba(2, 130, 250, 1)', // 5\n 'rgba(255, 35, 35, 1)', // 1\n 'rgba(0, 255, 234, 1)', // 4\n];\n\nexport const NULL_COLOR = 'rgba(204, 204, 204, 1)';\n\nexport const DEFAULT_COLOR = {\n valid: {\n stroke: 'rgba(102, 111, 255, 0.6)',\n fill: 'rgba(102, 111, 255, 0.3)',\n },\n invalid: {\n stroke: 'rgba(255, 153, 102,1)',\n fill: 'rgba(255, 153, 102, 0.5)',\n },\n validSelected: {\n stroke: 'rgba(0, 15, 255, 0.8)',\n fill: 'rgba(0, 15, 255, 0.4)',\n },\n invalidSelected: {\n stroke: 'rgba(255,153,102,0.8)',\n fill: 'rgba(255,153,102,0.3)',\n },\n validHover: {\n stroke: 'rgba(0, 15, 255, 1)',\n fill: 'rgba(0, 15, 255, 0.5)',\n },\n\n invalidHover: {\n stroke: 'rgba(255,153,102,1)',\n fill: 'rgba(255,153,102,0.5)',\n },\n};\n\nexport const CHANGE_COLOR: { [a: number]: any } = {\n 1: {\n valid: 'rgba(0, 0, 255, 0.5)',\n select: {\n stroke: 'rgba(0, 15, 255, 1)',\n fill: 'rgba(0,15,255, 1)',\n },\n hover: 'rgba(0, 15, 255, 0.8)',\n line: 'rgba(102, 111, 255, 1 )',\n },\n 3: {\n valid: 'rgba(0, 255, 255, 0.5)',\n select: {\n stroke: 'rgba(0, 212, 255, 1)',\n fill: 'rgba(0,212,255, 1)',\n },\n hover: 'rgba(0, 212, 255, 0.8)',\n line: 'rgba(102, 230, 255, 1)',\n },\n 5: {\n valid: 'rgba(0, 255, 0, 0.5)',\n select: {\n stroke: 'rgba(149, 255, 1)',\n fill: 'rgba(149,255,0, 1)',\n },\n hover: 'rgba(149, 255, 0, 0.8)',\n line: 'rgba(191, 255, 102, 1)',\n },\n 7: {\n valid: 'rgba(255, 255, 0, 0.5)',\n select: {\n stroke: 'rgba(255, 230, 102, 1)',\n fill: 'rgba(255,213,0, 1)',\n },\n hover: 'rgba(255, 230, 102, 0.8)',\n line: 'rgba(255, 230, 102, 1)',\n },\n 9: {\n valid: 'rgba(255, 0, 255, 0.5)',\n select: {\n stroke: 'rgba(230, 102, 255, 1)',\n fill: 'rgba(213,0,255, 1)',\n },\n hover: 'rgba(230, 102, 255, 0.8)',\n line: 'rgba(230, 102, 255, 1)',\n },\n};\n\nexport const BORDER_OPACITY_LEVEL: { [a: number]: number } = {\n 1: 0.2,\n 3: 0.4,\n 5: 0.6,\n 7: 0.8,\n 9: 1.0,\n};\n\nexport const FILL_OPACITY_LEVEL: { [a: number]: number } = {\n 1: 0,\n 3: 0.2,\n 5: 0.4,\n 7: 0.6,\n 9: 0.8,\n};\n"],"names":[],"mappings":"MAAa,eAAe;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;MAGW,aAAa;MAEb,gBAAgB;AAAA,EAC3B,OAAO;AAAA,IACL,QAAQ;AAAA,IACR,MAAM;AAAA;AAAA,EAER,SAAS;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA;AAAA,EAER,eAAe;AAAA,IACb,QAAQ;AAAA,IACR,MAAM;AAAA;AAAA,EAER,iBAAiB;AAAA,IACf,QAAQ;AAAA,IACR,MAAM;AAAA;AAAA,EAER,YAAY;AAAA,IACV,QAAQ;AAAA,IACR,MAAM;AAAA;AAAA,EAGR,cAAc;AAAA,IACZ,QAAQ;AAAA,IACR,MAAM;AAAA;AAAA;MAIG,eAAqC;AAAA,EAChD,GAAG;AAAA,IACD,OAAO;AAAA,IACP,QAAQ;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA;AAAA,IAER,OAAO;AAAA,IACP,MAAM;AAAA;AAAA,EAER,GAAG;AAAA,IACD,OAAO;AAAA,IACP,QAAQ;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA;AAAA,IAER,OAAO;AAAA,IACP,MAAM;AAAA;AAAA,EAER,GAAG;AAAA,IACD,OAAO;AAAA,IACP,QAAQ;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA;AAAA,IAER,OAAO;AAAA,IACP,MAAM;AAAA;AAAA,EAER,GAAG;AAAA,IACD,OAAO;AAAA,IACP,QAAQ;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA;AAAA,IAER,OAAO;AAAA,IACP,MAAM;AAAA;AAAA,EAER,GAAG;AAAA,IACD,OAAO;AAAA,IACP,QAAQ;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA;AAAA,IAER,OAAO;AAAA,IACP,MAAM;AAAA;AAAA;MAIG,uBAAgD;AAAA,EAC3D,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA;MAGQ,qBAA8C;AAAA,EACzD,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA;;;;"}
1
+ {"version":3,"file":"Style.js","sources":["../../src/data/Style.ts"],"sourcesContent":["export const COLORS_ARRAY = [\n 'rgba(128, 12, 249, 1)', // 6\n 'rgba(0, 255, 48, 1)', // 3\n 'rgba(255, 136, 247, 1)', // 7\n 'rgba(255, 226, 50, 1)', // 2\n 'rgba(153, 66, 23, 1)', // 8\n 'rgba(2, 130, 250, 1)', // 5\n 'rgba(255, 35, 35, 1)', // 1\n 'rgba(0, 255, 234, 1)', // 4\n];\n\nexport const NULL_COLOR = 'rgba(204, 204, 204, 1)';\n\nexport const DEFAULT_COLOR = {\n valid: {\n stroke: 'rgba(102, 111, 255, 0.6)',\n fill: 'rgba(102, 111, 255, 0.3)',\n },\n invalid: {\n stroke: 'rgba(255, 153, 102,1)',\n fill: 'rgba(255, 153, 102, 0.5)',\n },\n validSelected: {\n stroke: 'rgba(0, 15, 255, 0.8)',\n fill: 'rgba(0, 15, 255, 0.4)',\n },\n invalidSelected: {\n stroke: 'rgba(255,153,102,0.8)',\n fill: 'rgba(255,153,102,0.3)',\n },\n validHover: {\n stroke: 'rgba(0, 15, 255, 1)',\n fill: 'rgba(0, 15, 255, 0.5)',\n },\n\n invalidHover: {\n stroke: 'rgba(255,153,102,1)',\n fill: 'rgba(255,153,102,0.5)',\n },\n};\n\nexport const CHANGE_COLOR: { [a: number]: any } = {\n 1: {\n valid: 'rgba(0, 0, 255, 0.5)',\n select: {\n stroke: 'rgba(0, 15, 255, 1)',\n fill: 'rgba(0,15,255, 1)',\n },\n hover: 'rgba(0, 15, 255, 0.8)',\n line: 'rgba(102, 111, 255, 1 )',\n },\n 3: {\n valid: 'rgba(0, 255, 255, 0.5)',\n select: {\n stroke: 'rgba(0, 212, 255, 1)',\n fill: 'rgba(0,212,255, 1)',\n },\n hover: 'rgba(0, 212, 255, 0.8)',\n line: 'rgba(102, 230, 255, 1)',\n },\n 5: {\n valid: 'rgba(0, 255, 0, 0.5)',\n select: {\n stroke: 'rgba(149, 255, 1)',\n fill: 'rgba(149,255,0, 1)',\n },\n hover: 'rgba(149, 255, 0, 0.8)',\n line: 'rgba(191, 255, 102, 1)',\n },\n 7: {\n valid: 'rgba(255, 255, 0, 0.5)',\n select: {\n stroke: 'rgba(255, 230, 102, 1)',\n fill: 'rgba(255,213,0, 1)',\n },\n hover: 'rgba(255, 230, 102, 0.8)',\n line: 'rgba(255, 230, 102, 1)',\n },\n 9: {\n valid: 'rgba(255, 0, 255, 0.5)',\n select: {\n stroke: 'rgba(230, 102, 255, 1)',\n fill: 'rgba(213,0,255, 1)',\n },\n hover: 'rgba(230, 102, 255, 0.8)',\n line: 'rgba(230, 102, 255, 1)',\n },\n};\n\nexport const BORDER_OPACITY_LEVEL: { [a: number]: number } = {\n 1: 0.2,\n 3: 0.4,\n 5: 0.6,\n 7: 0.8,\n 9: 1.0,\n};\n\nexport const FILL_OPACITY_LEVEL: { [a: number]: number } = {\n 1: 0,\n 3: 0.2,\n 5: 0.4,\n 7: 0.6,\n 9: 0.8,\n};\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AnnotationSize.js","sources":["../../../src/data/enums/AnnotationSize.ts"],"sourcesContent":["export const headerHeight = 61;\nexport const tipsHeight = 40;\nexport const footerHeight = 40;\nexport const sidebarWidth = 240;\n// 编辑步骤的侧边栏宽度\nexport const editStepWidth = 320;\n\n/** 标注步骤的类型 */\nexport enum EStepType {\n ANNOTATION = 1, // 正常标注\n QUALITY_INSPECTION, // 标注质检\n PRE_ANNOTATION, // 预标注\n MANUAL_CORRECTION, // 人工修正\n}\n\n/** 标注工具中最大获取的图片数 */\nexport const ANNOTATION_MAX_SIZE = 100;\n\n/** 翻页操作 */\nexport enum EPageTurningOperation {\n Backward,\n Forward,\n Jump,\n}\n\n/** 拖拽状态 */\nexport enum EDragStatus {\n Start,\n Stop,\n Wait,\n}\n\n/** 拖拽的内容 */\nexport enum EDragTarget {\n Point,\n Line,\n Plane,\n}\n"],"names":[],"mappings":"MAAa,eAAe;MAEf,eAAe;MACf,eAAe;MAEf,gBAAgB;IAGjB;AAAL,UAAK,YAAL;AACL,wCAAa,KAAb;AACA;AACA;AACA;AAAA,GAJU;IAWA;AAAL,UAAK,wBAAL;AACL;AACA;AACA;AAAA,GAHU;IAOA;AAAL,UAAK,cAAL;AACL;AACA;AACA;AAAA,GAHU;IAOA;AAAL,UAAK,cAAL;AACL;AACA;AACA;AAAA,GAHU;;;;"}
1
+ {"version":3,"file":"AnnotationSize.js","sources":["../../../src/data/enums/AnnotationSize.ts"],"sourcesContent":["export const headerHeight = 61;\nexport const tipsHeight = 40;\nexport const footerHeight = 40;\nexport const sidebarWidth = 240;\n// 编辑步骤的侧边栏宽度\nexport const editStepWidth = 320;\n\n/** 标注步骤的类型 */\nexport enum EStepType {\n ANNOTATION = 1, // 正常标注\n QUALITY_INSPECTION, // 标注质检\n PRE_ANNOTATION, // 预标注\n MANUAL_CORRECTION, // 人工修正\n}\n\n/** 标注工具中最大获取的图片数 */\nexport const ANNOTATION_MAX_SIZE = 100;\n\n/** 翻页操作 */\nexport enum EPageTurningOperation {\n Backward,\n Forward,\n Jump,\n}\n\n/** 拖拽状态 */\nexport enum EDragStatus {\n Start,\n Stop,\n Wait,\n}\n\n/** 拖拽的内容 */\nexport enum EDragTarget {\n Point,\n Line,\n Plane,\n}\n"],"names":[],"mappings":"AAAO,MAAM,YAAe,GAAA,GAAA;AAErB,MAAM,YAAe,GAAA,GAAA;AACrB,MAAM,YAAe,GAAA,IAAA;AAErB,MAAM,aAAgB,GAAA,IAAA;AAGjB,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AACL,EAAA,UAAA,CAAA,UAAA,CAAA,YAAA,CAAA,GAAa,CAAb,CAAA,GAAA,YAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,oBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,oBAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,gBAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,mBAAA,CAAA;AAAA,CAJU,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAWA,IAAA,sBAAA;AAAL,CAAA,SAAK,sBAAL,EAAA;AACL,EAAA,sBAAA,CAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAA,CAAA;AACA,EAAA,sBAAA,CAAA,sBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAA,CAAA;AACA,EAAA,sBAAA,CAAA,sBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AAAA,CAHU,EAAA,qBAAA,KAAA,qBAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAOA,IAAA,YAAA;AAAL,CAAA,SAAK,YAAL,EAAA;AACL,EAAA,YAAA,CAAA,YAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AAAA,CAHU,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAOA,IAAA,YAAA;AAAL,CAAA,SAAK,YAAL,EAAA;AACL,EAAA,YAAA,CAAA,YAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AAAA,CAHU,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolType.js","sources":["../../../src/data/enums/ToolType.ts"],"sourcesContent":["export enum ETextType {\n AnyString, // 任意字符\n Order, // 序号\n EnglishOnly, // 仅英文\n NumberOnly, // 仅数字\n CustomFormat, // 自定义文本格式\n}\n\n/** 文本标注字数上限 */\nexport const TEXT_ATTRIBUTE_MAX_LENGTH = 1000;\n\nexport enum EToolName {\n /** 拉框工具 */\n Rect = 'rectTool',\n /** 标签工具 */\n Tag = 'tagTool',\n /** 标点工具 */\n Point = 'pointTool',\n /** 列表标点工具 */\n PointMarker = 'pointMarkerTool',\n /** 前景分割工具 */\n Segmentation = 'segmentationTool',\n /** 筛选工具 */\n Filter = 'filterTool',\n /** 文本工具 */\n Text = 'textTool',\n /** 多边形工具 */\n Polygon = 'polygonTool',\n /** 线条 */\n Line = 'lineTool',\n /** 列表线条工具 */\n LineMarker = 'lineMarkerTool',\n /** 空工具,表示当前没有选择的工具,没有实际的业务逻辑 */\n Empty = 'emptyTool',\n /** 文件夹标签工具 */\n FolderTag = 'folderTagTool',\n /** 拉框跟踪工具 */\n RectTrack = 'rectTrackTool',\n /** 人脸106工具 */\n Face = 'faceTool',\n /** 客户端属性工具 */\n ClientAttribute = 'clientAttributeTool',\n /** OCR关联关系工具 */\n OCRRelation = 'OCRRelationTool',\n}\n"],"names":[],"mappings":"IAAY;AAAL,UAAK,YAAL;AACL;AACA;AACA;AACA;AACA;AAAA,GALU;MASC,4BAA4B;IAE7B;AAAL,UAAK,YAAL;AAEL,uBAAO;AAEP,sBAAM;AAEN,wBAAQ;AAER,8BAAc;AAEd,+BAAe;AAEf,yBAAS;AAET,uBAAO;AAEP,0BAAU;AAEV,uBAAO;AAEP,6BAAa;AAEb,wBAAQ;AAER,4BAAY;AAEZ,4BAAY;AAEZ,uBAAO;AAEP,kCAAkB;AAElB,8BAAc;AAAA,GAhCJ;;;;"}
1
+ {"version":3,"file":"ToolType.js","sources":["../../../src/data/enums/ToolType.ts"],"sourcesContent":["export enum ETextType {\n AnyString, // 任意字符\n Order, // 序号\n EnglishOnly, // 仅英文\n NumberOnly, // 仅数字\n CustomFormat, // 自定义文本格式\n}\n\n/** 文本标注字数上限 */\nexport const TEXT_ATTRIBUTE_MAX_LENGTH = 1000;\n\nexport enum EToolName {\n /** 拉框工具 */\n Rect = 'rectTool',\n /** 标签工具 */\n Tag = 'tagTool',\n /** 标点工具 */\n Point = 'pointTool',\n /** 列表标点工具 */\n PointMarker = 'pointMarkerTool',\n /** 前景分割工具 */\n Segmentation = 'segmentationTool',\n /** 筛选工具 */\n Filter = 'filterTool',\n /** 文本工具 */\n Text = 'textTool',\n /** 多边形工具 */\n Polygon = 'polygonTool',\n /** 线条 */\n Line = 'lineTool',\n /** 列表线条工具 */\n LineMarker = 'lineMarkerTool',\n /** 空工具,表示当前没有选择的工具,没有实际的业务逻辑 */\n Empty = 'emptyTool',\n /** 文件夹标签工具 */\n FolderTag = 'folderTagTool',\n /** 拉框跟踪工具 */\n RectTrack = 'rectTrackTool',\n /** 人脸106工具 */\n Face = 'faceTool',\n /** 客户端属性工具 */\n ClientAttribute = 'clientAttributeTool',\n /** OCR关联关系工具 */\n OCRRelation = 'OCRRelationTool',\n}\n"],"names":[],"mappings":"AAAY,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AACL,EAAA,UAAA,CAAA,UAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,cAAA,CAAA,GAAA,CAAA,CAAA,GAAA,cAAA,CAAA;AAAA,CALU,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AASL,MAAM,yBAA4B,GAAA,IAAA;AAE7B,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AAEL,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAM,UAAA,CAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AAEN,EAAQ,UAAA,CAAA,OAAA,CAAA,GAAA,WAAA,CAAA;AAER,EAAc,UAAA,CAAA,aAAA,CAAA,GAAA,iBAAA,CAAA;AAEd,EAAe,UAAA,CAAA,cAAA,CAAA,GAAA,kBAAA,CAAA;AAEf,EAAS,UAAA,CAAA,QAAA,CAAA,GAAA,YAAA,CAAA;AAET,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAU,UAAA,CAAA,SAAA,CAAA,GAAA,aAAA,CAAA;AAEV,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAa,UAAA,CAAA,YAAA,CAAA,GAAA,gBAAA,CAAA;AAEb,EAAQ,UAAA,CAAA,OAAA,CAAA,GAAA,WAAA,CAAA;AAER,EAAY,UAAA,CAAA,WAAA,CAAA,GAAA,eAAA,CAAA;AAEZ,EAAY,UAAA,CAAA,WAAA,CAAA,GAAA,eAAA,CAAA;AAEZ,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAkB,UAAA,CAAA,iBAAA,CAAA,GAAA,qBAAA,CAAA;AAElB,EAAc,UAAA,CAAA,aAAA,CAAA,GAAA,iBAAA,CAAA;AAAA,CAhCJ,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useRafState.js","sources":["../../src/hooks/useRafState.ts"],"sourcesContent":["import type { Dispatch, SetStateAction } from 'react';\nimport { useCallback, useRef, useState, useEffect } from 'react';\n\nconst useRafState = <S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>] => {\n const frame = useRef(0);\n const [state, setState] = useState(initialState);\n\n const setRafState = useCallback((value: S | ((prevState: S) => S)) => {\n cancelAnimationFrame(frame.current);\n\n frame.current = requestAnimationFrame(() => {\n setState(value);\n });\n }, []);\n\n useEffect(() => {\n return () => cancelAnimationFrame(frame.current);\n }, [])\n\n return [state, setRafState];\n};\n\nexport default useRafState;"],"names":[],"mappings":";;MAGM,cAAc,CAAI,iBAAkE;AACxF,QAAM,QAAQ,OAAO;AACrB,QAAM,CAAC,OAAO,YAAY,SAAS;AAEnC,QAAM,cAAc,YAAY,CAAC,UAAqC;AACpE,yBAAqB,MAAM;AAE3B,UAAM,UAAU,sBAAsB,MAAM;AAC1C,eAAS;AAAA;AAAA,KAEV;AAEH,YAAU,MAAM;AACd,WAAO,MAAM,qBAAqB,MAAM;AAAA,KACvC;AAEH,SAAO,CAAC,OAAO;AAAA;;;;"}
1
+ {"version":3,"file":"useRafState.js","sources":["../../src/hooks/useRafState.ts"],"sourcesContent":["import type { Dispatch, SetStateAction } from 'react';\nimport { useCallback, useRef, useState, useEffect } from 'react';\n\nconst useRafState = <S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>] => {\n const frame = useRef(0);\n const [state, setState] = useState(initialState);\n\n const setRafState = useCallback((value: S | ((prevState: S) => S)) => {\n cancelAnimationFrame(frame.current);\n\n frame.current = requestAnimationFrame(() => {\n setState(value);\n });\n }, []);\n\n useEffect(() => {\n return () => cancelAnimationFrame(frame.current);\n }, [])\n\n return [state, setRafState];\n};\n\nexport default useRafState;"],"names":[],"mappings":";;AAGM,MAAA,WAAA,GAAc,CAAI,YAAkE,KAAA;AACxF,EAAA,MAAM,QAAQ,MAAO,CAAA,CAAA,CAAA,CAAA;AACrB,EAAM,MAAA,CAAC,KAAO,EAAA,QAAA,CAAA,GAAY,QAAS,CAAA,YAAA,CAAA,CAAA;AAEnC,EAAM,MAAA,WAAA,GAAc,WAAY,CAAA,CAAC,KAAqC,KAAA;AACpE,IAAA,oBAAA,CAAqB,KAAM,CAAA,OAAA,CAAA,CAAA;AAE3B,IAAM,KAAA,CAAA,OAAA,GAAU,sBAAsB,MAAM;AAC1C,MAAS,QAAA,CAAA,KAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAAA,GAEV,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,SAAA,CAAU,MAAM;AACd,IAAO,OAAA,MAAM,qBAAqB,KAAM,CAAA,OAAA,CAAA,CAAA;AAAA,GACvC,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,OAAO,CAAC,KAAO,EAAA,WAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSafeSate.js","sources":["../../src/hooks/useSafeSate.ts"],"sourcesContent":["import React, { Dispatch, SetStateAction } from 'react';\nimport useUnmountedRef from './useUnmountedRef';\n\nfunction useSafeState<S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>];\n\nfunction useSafeState<S = undefined>(): [S | undefined, Dispatch<SetStateAction<S | undefined>>];\n\nfunction useSafeState(initialState?: any) {\n const unmountedRef = useUnmountedRef();\n const [state, setState] = React.useState(initialState);\n const setCurrentState = React.useCallback((currentState) => {\n /** 如果组件已经卸载则不再更新 state */\n if (unmountedRef.current) return;\n setState(currentState);\n }, []);\n\n return [state, setCurrentState] as const;\n}\n\nexport default useSafeState;\n"],"names":[],"mappings":";;;AAOA,sBAAsB,cAAoB;AACxC,QAAM,eAAe;AACrB,QAAM,CAAC,OAAO,YAAY,MAAM,SAAS;AACzC,QAAM,kBAAkB,MAAM,YAAY,CAAC,iBAAiB;AAE1D,QAAI,aAAa;AAAS;AAC1B,aAAS;AAAA,KACR;AAEH,SAAO,CAAC,OAAO;AAAA;;;;"}
1
+ {"version":3,"file":"useSafeSate.js","sources":["../../src/hooks/useSafeSate.ts"],"sourcesContent":["import React, { Dispatch, SetStateAction } from 'react';\nimport useUnmountedRef from './useUnmountedRef';\n\nfunction useSafeState<S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>];\n\nfunction useSafeState<S = undefined>(): [S | undefined, Dispatch<SetStateAction<S | undefined>>];\n\nfunction useSafeState(initialState?: any) {\n const unmountedRef = useUnmountedRef();\n const [state, setState] = React.useState(initialState);\n const setCurrentState = React.useCallback((currentState) => {\n /** 如果组件已经卸载则不再更新 state */\n if (unmountedRef.current) return;\n setState(currentState);\n }, []);\n\n return [state, setCurrentState] as const;\n}\n\nexport default useSafeState;\n"],"names":[],"mappings":";;;AAOA,SAAA,YAAA,CAAsB,YAAoB,EAAA;AACxC,EAAA,MAAM,YAAe,GAAA,eAAA,EAAA,CAAA;AACrB,EAAA,MAAM,CAAC,KAAA,EAAO,QAAY,CAAA,GAAA,KAAA,CAAM,QAAS,CAAA,YAAA,CAAA,CAAA;AACzC,EAAA,MAAM,eAAkB,GAAA,KAAA,CAAM,WAAY,CAAA,CAAC,YAAiB,KAAA;AAE1D,IAAA,IAAI,YAAa,CAAA,OAAA;AAAS,MAAA,OAAA;AAC1B,IAAS,QAAA,CAAA,YAAA,CAAA,CAAA;AAAA,GACR,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,OAAO,CAAC,KAAO,EAAA,eAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSize.js","sources":["../../src/hooks/useSize.ts"],"sourcesContent":["import { useLayoutEffect } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport type { BasicTarget } from '../utils/dom';\nimport { getTargetElement } from '../utils/dom';\nimport useRafState from './useRafState';\n\ninterface Size {\n width?: number;\n height?: number;\n}\n\nfunction useSize(target: BasicTarget): Size {\n const [state, setState] = useRafState<Size>(() => {\n const el = getTargetElement(target);\n return {\n width: ((el || {}) as HTMLElement).clientWidth,\n height: ((el || {}) as HTMLElement).clientHeight,\n };\n });\n\n useLayoutEffect(() => {\n const el = getTargetElement(target);\n if (!el) {\n return () => {};\n }\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n setState({\n width: entry.target.clientWidth,\n height: entry.target.clientHeight,\n });\n });\n });\n\n resizeObserver.observe(el as HTMLElement);\n return () => {\n resizeObserver.disconnect();\n };\n }, [target]);\n\n return state;\n}\n\nexport default useSize;\n"],"names":[],"mappings":";;;;;AAWA,iBAAiB,QAA2B;AAC1C,QAAM,CAAC,OAAO,YAAY,YAAkB,MAAM;AAChD,UAAM,KAAK,iBAAiB;AAC5B,WAAO;AAAA,MACL,OAAS,OAAM,IAAoB;AAAA,MACnC,QAAU,OAAM,IAAoB;AAAA;AAAA;AAIxC,kBAAgB,MAAM;AACpB,UAAM,KAAK,iBAAiB;AAC5B,QAAI,CAAC,IAAI;AACP,aAAO,MAAM;AAAA;AAAA;AAGf,UAAM,iBAAiB,IAAI,eAAe,CAAC,YAAY;AACrD,cAAQ,QAAQ,CAAC,UAAU;AACzB,iBAAS;AAAA,UACP,OAAO,MAAM,OAAO;AAAA,UACpB,QAAQ,MAAM,OAAO;AAAA;AAAA;AAAA;AAK3B,mBAAe,QAAQ;AACvB,WAAO,MAAM;AACX,qBAAe;AAAA;AAAA,KAEhB,CAAC;AAEJ,SAAO;AAAA;;;;"}
1
+ {"version":3,"file":"useSize.js","sources":["../../src/hooks/useSize.ts"],"sourcesContent":["import { useLayoutEffect } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport type { BasicTarget } from '../utils/dom';\nimport { getTargetElement } from '../utils/dom';\nimport useRafState from './useRafState';\n\ninterface Size {\n width?: number;\n height?: number;\n}\n\nfunction useSize(target: BasicTarget): Size {\n const [state, setState] = useRafState<Size>(() => {\n const el = getTargetElement(target);\n return {\n width: ((el || {}) as HTMLElement).clientWidth,\n height: ((el || {}) as HTMLElement).clientHeight,\n };\n });\n\n useLayoutEffect(() => {\n const el = getTargetElement(target);\n if (!el) {\n return () => {};\n }\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n setState({\n width: entry.target.clientWidth,\n height: entry.target.clientHeight,\n });\n });\n });\n\n resizeObserver.observe(el as HTMLElement);\n return () => {\n resizeObserver.disconnect();\n };\n }, [target]);\n\n return state;\n}\n\nexport default useSize;\n"],"names":[],"mappings":";;;;;AAWA,SAAA,OAAA,CAAiB,MAA2B,EAAA;AAC1C,EAAA,MAAM,CAAC,KAAA,EAAO,QAAY,CAAA,GAAA,WAAA,CAAkB,MAAM;AAChD,IAAA,MAAM,KAAK,gBAAiB,CAAA,MAAA,CAAA,CAAA;AAC5B,IAAO,OAAA;AAAA,MACL,KAAA,EAAS,OAAM,EAAoB,EAAA,WAAA;AAAA,MACnC,MAAA,EAAU,OAAM,EAAoB,EAAA,YAAA;AAAA,KAAA,CAAA;AAAA,GAAA,CAAA,CAAA;AAIxC,EAAA,eAAA,CAAgB,MAAM;AACpB,IAAA,MAAM,KAAK,gBAAiB,CAAA,MAAA,CAAA,CAAA;AAC5B,IAAA,IAAI,CAAC,EAAI,EAAA;AACP,MAAA,OAAO,MAAM;AAAA,OAAA,CAAA;AAAA,KAAA;AAGf,IAAA,MAAM,cAAiB,GAAA,IAAI,cAAe,CAAA,CAAC,OAAY,KAAA;AACrD,MAAQ,OAAA,CAAA,OAAA,CAAQ,CAAC,KAAU,KAAA;AACzB,QAAS,QAAA,CAAA;AAAA,UACP,KAAA,EAAO,MAAM,MAAO,CAAA,WAAA;AAAA,UACpB,MAAA,EAAQ,MAAM,MAAO,CAAA,YAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAK3B,IAAA,cAAA,CAAe,OAAQ,CAAA,EAAA,CAAA,CAAA;AACvB,IAAA,OAAO,MAAM;AACX,MAAe,cAAA,CAAA,UAAA,EAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAAA,EAEhB,CAAC,MAAA,CAAA,CAAA,CAAA;AAEJ,EAAO,OAAA,KAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUnmountedRef.js","sources":["../../src/hooks/useUnmountedRef.ts"],"sourcesContent":["import { useRef, useEffect } from 'react';\n\nconst useUnmountedRef = () => {\n const unmountedRef = useRef(false);\n useEffect(() => {\n unmountedRef.current = false;\n\n return () => {\n unmountedRef.current = true;\n };\n }, []);\n return unmountedRef;\n};\n\nexport default useUnmountedRef;\n"],"names":[],"mappings":";;MAEM,kBAAkB,MAAM;AAC5B,QAAM,eAAe,OAAO;AAC5B,YAAU,MAAM;AACd,iBAAa,UAAU;AAEvB,WAAO,MAAM;AACX,mBAAa,UAAU;AAAA;AAAA,KAExB;AACH,SAAO;AAAA;;;;"}
1
+ {"version":3,"file":"useUnmountedRef.js","sources":["../../src/hooks/useUnmountedRef.ts"],"sourcesContent":["import { useRef, useEffect } from 'react';\n\nconst useUnmountedRef = () => {\n const unmountedRef = useRef(false);\n useEffect(() => {\n unmountedRef.current = false;\n\n return () => {\n unmountedRef.current = true;\n };\n }, []);\n return unmountedRef;\n};\n\nexport default useUnmountedRef;\n"],"names":[],"mappings":";;AAEA,MAAM,kBAAkB,MAAM;AAC5B,EAAA,MAAM,eAAe,MAAO,CAAA,KAAA,CAAA,CAAA;AAC5B,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,YAAA,CAAa,OAAU,GAAA,KAAA,CAAA;AAEvB,IAAA,OAAO,MAAM;AACX,MAAA,YAAA,CAAa,OAAU,GAAA,IAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAExB,EAAA,EAAA,CAAA,CAAA;AACH,EAAO,OAAA,YAAA,CAAA;AAAA;;;;"}
package/es/index.js CHANGED
@@ -1 +1 @@
1
- import a,{useState as l,useImperativeHandle as m}from"react";import{Provider as f}from"react-redux";import d from"./configureStore.js";import u from"./App.js";import{PageBackward as _,PageForward as P,PageJump as g}from"./store/annotation/actionCreators.js";import{i18n as v}from"@labelbee/lb-utils";export{i18n}from"@labelbee/lb-utils";import{I18nextProvider as w}from"react-i18next";export{default as AnnotationView}from"./components/AnnotationView/index.js";var O=Object.defineProperty,b=Object.defineProperties,x=Object.getOwnPropertyDescriptors,n=Object.getOwnPropertySymbols,j=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable,p=(t,e,r)=>e in t?O(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,y=(t,e)=>{for(var r in e||(e={}))j.call(e,r)&&p(t,r,e[r]);if(n)for(var r of n(e))h.call(e,r)&&p(t,r,e[r]);return t},A=(t,e)=>b(t,x(e));const o=d(),I=(t,e)=>{const[r,i]=l();return m(e,()=>({toolInstance:r,pageBackwardActions:()=>o.dispatch(_()),pageForwardActions:()=>o.dispatch(P()),pageJump:s=>{const c=~~s-1;o.dispatch(g(c))},hello:()=>alert("hello labelBee!!!")}),[r]),a.createElement(f,{store:o},a.createElement(w,{i18n:v},a.createElement(u,A(y({},t),{setToolInstance:i}))))};var E=a.forwardRef(I);export{E as default,o as store};
1
+ export{default as AnnotationView}from"./components/AnnotationView/index.js";import{i18n as l}from"@labelbee/lb-utils";export{i18n}from"@labelbee/lb-utils";import a,{useState as m,useImperativeHandle as f}from"react";import{I18nextProvider as d}from"react-i18next";import{Provider as u}from"react-redux";import _ from"./App.js";import P from"./configureStore.js";import{PageBackward as g,PageForward as v,PageJump as w}from"./store/annotation/actionCreators.js";var O=Object.defineProperty,b=Object.defineProperties,x=Object.getOwnPropertyDescriptors,n=Object.getOwnPropertySymbols,j=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable,p=(t,e,r)=>e in t?O(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,y=(t,e)=>{for(var r in e||(e={}))j.call(e,r)&&p(t,r,e[r]);if(n)for(var r of n(e))h.call(e,r)&&p(t,r,e[r]);return t},A=(t,e)=>b(t,x(e));const o=P(),I=(t,e)=>{const[r,i]=m();return f(e,()=>({toolInstance:r,pageBackwardActions:()=>o.dispatch(g()),pageForwardActions:()=>o.dispatch(v()),pageJump:s=>{const c=~~s-1;o.dispatch(w(c))},hello:()=>alert("hello labelBee!!!")}),[r]),a.createElement(u,{store:o},a.createElement(d,{i18n:l},a.createElement(_,A(y({},t),{setToolInstance:i}))))};var E=a.forwardRef(I);export{E as default,o as store};
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.tsx"],"sourcesContent":["import React, { useImperativeHandle, useState } from 'react';\nimport { Provider } from 'react-redux';\nimport { AnyAction } from 'redux';\nimport configureStore from './configureStore';\nimport { ToolInstance } from './store/annotation/types';\nimport App from './App';\nimport { PageBackward, PageForward, PageJump } from './store/annotation/actionCreators';\nimport { i18n } from '@labelbee/lb-utils';\nimport { I18nextProvider } from 'react-i18next';\nimport AnnotationView from '@/components/AnnotationView';\n\nexport const store = configureStore();\n\nconst OutputApp = (props: any, ref: any) => {\n const [toolInstance, setToolInstance] = useState<ToolInstance>();\n // 暴露给 ref 的一些方法\n useImperativeHandle(\n ref,\n () => {\n return {\n toolInstance,\n pageBackwardActions: () => store.dispatch(PageBackward() as unknown as AnyAction),\n pageForwardActions: () => store.dispatch(PageForward() as unknown as AnyAction),\n pageJump: (page: string) => {\n const imgIndex = ~~page - 1;\n store.dispatch(PageJump(imgIndex) as unknown as AnyAction);\n },\n hello: () => alert(`hello labelBee!!!`),\n };\n },\n [toolInstance],\n );\n\n return (\n <Provider store={store}>\n <I18nextProvider i18n={i18n}>\n <App {...props} setToolInstance={setToolInstance} />\n </I18nextProvider>\n </Provider>\n );\n};\n\nexport default React.forwardRef(OutputApp);\n\nexport { AnnotationView, i18n };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAWa,QAAQ;AAErB,MAAM,YAAY,CAAC,OAAY,QAAa;AAC1C,QAAM,CAAC,cAAc,mBAAmB;AAExC,sBACE,KACA,MAAM;AACJ,WAAO;AAAA,MACL;AAAA,MACA,qBAAqB,MAAM,MAAM,SAAS;AAAA,MAC1C,oBAAoB,MAAM,MAAM,SAAS;AAAA,MACzC,UAAU,CAAC,SAAiB;AAC1B,cAAM,WAAW,CAAC,CAAC,OAAO;AAC1B,cAAM,SAAS,SAAS;AAAA;AAAA,MAE1B,OAAO,MAAM,MAAM;AAAA;AAAA,KAGvB,CAAC;AAGH,6CACG,UAAD;AAAA,IAAU;AAAA,yCACP,iBAAD;AAAA,IAAiB;AAAA,yCACd,KAAD,iCAAS,QAAT;AAAA,IAAgB;AAAA;AAAA;AAMxB,YAAe,MAAM,WAAW;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/index.tsx"],"sourcesContent":["import { AppProps } from '@/App';\nimport AnnotationView from '@/components/AnnotationView';\nimport { i18n } from '@labelbee/lb-utils';\nimport React, { useImperativeHandle, useState } from 'react';\nimport { I18nextProvider } from 'react-i18next';\nimport { Provider } from 'react-redux';\nimport { AnyAction } from 'redux';\nimport App from './App';\nimport configureStore from './configureStore';\nimport { PageBackward, PageForward, PageJump } from './store/annotation/actionCreators';\nimport { ToolInstance } from './store/annotation/types';\n\nexport const store = configureStore();\n\nconst OutputApp = (props: AppProps, ref: any) => {\n const [toolInstance, setToolInstance] = useState<ToolInstance>();\n // 暴露给 ref 的一些方法\n useImperativeHandle(\n ref,\n () => {\n return {\n toolInstance,\n pageBackwardActions: () => store.dispatch(PageBackward() as unknown as AnyAction),\n pageForwardActions: () => store.dispatch(PageForward() as unknown as AnyAction),\n pageJump: (page: string) => {\n const imgIndex = ~~page - 1;\n store.dispatch(PageJump(imgIndex) as unknown as AnyAction);\n },\n hello: () => alert(`hello labelBee!!!`),\n };\n },\n [toolInstance],\n );\n\n return (\n <Provider store={store}>\n <I18nextProvider i18n={i18n}>\n <App {...props} setToolInstance={setToolInstance} />\n </I18nextProvider>\n </Provider>\n );\n};\n\nexport default React.forwardRef(OutputApp);\n\nexport { AnnotationView, i18n };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,MAAM,KAAQ,GAAA,cAAA,GAAA;AAErB,MAAM,SAAA,GAAY,CAAC,KAAA,EAAiB,GAAa,KAAA;AAC/C,EAAM,MAAA,CAAC,cAAc,eAAmB,CAAA,GAAA,QAAA,EAAA,CAAA;AAExC,EAAA,mBAAA,CACE,KACA,MAAM;AACJ,IAAO,OAAA;AAAA,MACL,YAAA;AAAA,MACA,mBAAA,EAAqB,MAAM,KAAA,CAAM,QAAS,CAAA,YAAA,EAAA,CAAA;AAAA,MAC1C,kBAAA,EAAoB,MAAM,KAAA,CAAM,QAAS,CAAA,WAAA,EAAA,CAAA;AAAA,MACzC,QAAA,EAAU,CAAC,IAAiB,KAAA;AAC1B,QAAM,MAAA,QAAA,GAAW,CAAC,CAAC,IAAO,GAAA,CAAA,CAAA;AAC1B,QAAA,KAAA,CAAM,SAAS,QAAS,CAAA,QAAA,CAAA,CAAA,CAAA;AAAA,OAAA;AAAA,MAE1B,KAAA,EAAO,MAAM,KAAM,CAAA,CAAA,iBAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAAA,EAGvB,CAAC,YAAA,CAAA,CAAA,CAAA;AAGH,EAAA,2CACG,QAAD,EAAA;AAAA,IAAU,KAAA;AAAA,GAAA,sCACP,eAAD,EAAA;AAAA,IAAiB,IAAA;AAAA,GACf,kBAAA,KAAA,CAAA,aAAA,CAAC,GAAD,EAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAAS,KAAT,CAAA,EAAA;AAAA,IAAgB,eAAA;AAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA;AAMxB,YAAe,MAAM,UAAW,CAAA,SAAA,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Actions.js","sources":["../../src/store/Actions.ts"],"sourcesContent":["export const ANNOTATION_ACTIONS = {\n UPDATE_TOOL_INSTANCE: '@@UPDATE_TOOL_INSTANCE',\n UPDATE_IMG_LIST: '@@UPDATE_IMG_LIST',\n UPDATE_ANNOTATION_CONFIG: '@@UPDATE_ANNOTATION_CONFIG',\n LOAD_FILE_DATA: '@@LOAD_FILE_DATA',\n SUBMIT_FILE_DATA: '@@SUBMIT_FILE_DATA',\n SET_TASK_CONFIG: '@@SET_TASK_CONFIG',\n INIT_TOOL: '@@INIT_TOOL',\n UPDATE_ON_SUBMIT: '@@UPDATE_ON_SUBMIT',\n UPDATE_ON_SAVE: '@@UPDATE_ON_SAVE',\n UPDATE_ROTATE: '@@UPDATE_ROTATE',\n UPDATE_GET_FILE_DATA: '@@UPDATE_GET_FILE_DATA',\n GET_FILE_DATA: '@@GET_FILE_DATA',\n SET_FILE_DATA: '@@SET_FILE_DATA',\n COPY_BACKWARD_RESULT: '@@COPY_BACKWARD_RESULT',\n SET_STEP: '@@SET_STEP',\n SUBMIT_RESULT: '@@SUBMIT_RESULT',\n SAVE_RESULT: '@@SAVE_RESULT',\n SET_BASIC_INDEX: '@@SET_BASIC_INDEX',\n CALC_STEP_PROGRESS: '@@CALC_STEP_PROGRESS',\n SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED: '@@SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED',\n\n SET_LOADING: '@@SET_LOADING',\n};\n\nexport const IMAGE_ATTRIBUTE_ACTIONS = {\n UPDATE_IMG_ATTRIBUTE: '@@UPDATE_IMG_ATTRIBUTE',\n INIT_IMG_ATTRIBUTE: '@@INIT_IMG_ATTRIBUTE',\n};\n\nexport const TOOL_STYLE_ACTIONS = {\n INIT_TOOL_STYLE_CONFIG: '@@INIT_TOOL_STYLE_CONFIG',\n UPDATE_TOOL_STYLE_CONFIG: '@@UPDATE_TOOL_STYLE_CONFIG',\n};\n"],"names":[],"mappings":"MAAa,qBAAqB;AAAA,EAChC,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,0BAA0B;AAAA,EAC1B,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,eAAe;AAAA,EACf,sBAAsB;AAAA,EACtB,eAAe;AAAA,EACf,eAAe;AAAA,EACf,sBAAsB;AAAA,EACtB,UAAU;AAAA,EACV,eAAe;AAAA,EACf,aAAa;AAAA,EACb,iBAAiB;AAAA,EACjB,oBAAoB;AAAA,EACpB,uCAAuC;AAAA,EAEvC,aAAa;AAAA;MAGF,0BAA0B;AAAA,EACrC,sBAAsB;AAAA,EACtB,oBAAoB;AAAA;MAGT,qBAAqB;AAAA,EAChC,wBAAwB;AAAA,EACxB,0BAA0B;AAAA;;;;"}
1
+ {"version":3,"file":"Actions.js","sources":["../../src/store/Actions.ts"],"sourcesContent":["export const ANNOTATION_ACTIONS = {\n UPDATE_TOOL_INSTANCE: '@@UPDATE_TOOL_INSTANCE',\n UPDATE_IMG_LIST: '@@UPDATE_IMG_LIST',\n UPDATE_ANNOTATION_CONFIG: '@@UPDATE_ANNOTATION_CONFIG',\n LOAD_FILE_DATA: '@@LOAD_FILE_DATA',\n SUBMIT_FILE_DATA: '@@SUBMIT_FILE_DATA',\n SET_TASK_CONFIG: '@@SET_TASK_CONFIG',\n INIT_TOOL: '@@INIT_TOOL',\n UPDATE_ON_SUBMIT: '@@UPDATE_ON_SUBMIT',\n UPDATE_ON_SAVE: '@@UPDATE_ON_SAVE',\n UPDATE_ROTATE: '@@UPDATE_ROTATE',\n UPDATE_GET_FILE_DATA: '@@UPDATE_GET_FILE_DATA',\n GET_FILE_DATA: '@@GET_FILE_DATA',\n SET_FILE_DATA: '@@SET_FILE_DATA',\n COPY_BACKWARD_RESULT: '@@COPY_BACKWARD_RESULT',\n SET_STEP: '@@SET_STEP',\n SUBMIT_RESULT: '@@SUBMIT_RESULT',\n SAVE_RESULT: '@@SAVE_RESULT',\n SET_BASIC_INDEX: '@@SET_BASIC_INDEX',\n CALC_STEP_PROGRESS: '@@CALC_STEP_PROGRESS',\n SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED: '@@SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED',\n\n SET_LOADING: '@@SET_LOADING',\n};\n\nexport const IMAGE_ATTRIBUTE_ACTIONS = {\n UPDATE_IMG_ATTRIBUTE: '@@UPDATE_IMG_ATTRIBUTE',\n INIT_IMG_ATTRIBUTE: '@@INIT_IMG_ATTRIBUTE',\n};\n\nexport const TOOL_STYLE_ACTIONS = {\n INIT_TOOL_STYLE_CONFIG: '@@INIT_TOOL_STYLE_CONFIG',\n UPDATE_TOOL_STYLE_CONFIG: '@@UPDATE_TOOL_STYLE_CONFIG',\n};\n"],"names":[],"mappings":"AAAO,MAAM,kBAAqB,GAAA;AAAA,EAChC,oBAAsB,EAAA,wBAAA;AAAA,EACtB,eAAiB,EAAA,mBAAA;AAAA,EACjB,wBAA0B,EAAA,4BAAA;AAAA,EAC1B,cAAgB,EAAA,kBAAA;AAAA,EAChB,gBAAkB,EAAA,oBAAA;AAAA,EAClB,eAAiB,EAAA,mBAAA;AAAA,EACjB,SAAW,EAAA,aAAA;AAAA,EACX,gBAAkB,EAAA,oBAAA;AAAA,EAClB,cAAgB,EAAA,kBAAA;AAAA,EAChB,aAAe,EAAA,iBAAA;AAAA,EACf,oBAAsB,EAAA,wBAAA;AAAA,EACtB,aAAe,EAAA,iBAAA;AAAA,EACf,aAAe,EAAA,iBAAA;AAAA,EACf,oBAAsB,EAAA,wBAAA;AAAA,EACtB,QAAU,EAAA,YAAA;AAAA,EACV,aAAe,EAAA,iBAAA;AAAA,EACf,WAAa,EAAA,eAAA;AAAA,EACb,eAAiB,EAAA,mBAAA;AAAA,EACjB,kBAAoB,EAAA,sBAAA;AAAA,EACpB,qCAAuC,EAAA,yCAAA;AAAA,EAEvC,WAAa,EAAA,eAAA;AAAA,EAAA;AAGR,MAAM,uBAA0B,GAAA;AAAA,EACrC,oBAAsB,EAAA,wBAAA;AAAA,EACtB,kBAAoB,EAAA,sBAAA;AAAA,EAAA;AAGf,MAAM,kBAAqB,GAAA;AAAA,EAChC,sBAAwB,EAAA,0BAAA;AAAA,EACxB,wBAA0B,EAAA,4BAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"actionCreators.js","sources":["../../../src/store/annotation/actionCreators.ts"],"sourcesContent":["import { ANNOTATION_ACTIONS } from '@/store/Actions';\nimport { IStepInfo } from '@/types/step';\nimport { GetFileData, IFileItem, OnSave, OnSubmit } from '@/types/data';\nimport { AnnotationActionTypes, ToolInstance } from './types';\nimport { LoadImageAndFileData, getStepConfig } from './reducer';\nimport { ESubmitType } from '@/constant';\nimport { EPageTurningOperation } from '@/data/enums/AnnotationSize';\nimport PageOperator from '@/utils/PageOperator';\nimport { jsonParser } from '@/utils';\n\nconst dispatchTasks = (dispatch: any, tasks: any[]) => tasks.map((task) => dispatch(task));\n\n/**\n * @param {pageTurningOperation} pageTurningOperation 翻页操作\n * @returns {ESubmitType} 提数据交类型\n */\nconst getSubmitByPageOperation = (pageTurningOperation: EPageTurningOperation) => {\n if (pageTurningOperation === EPageTurningOperation.Forward) {\n return ESubmitType.Forward;\n }\n\n if (pageTurningOperation === EPageTurningOperation.Backward) {\n return ESubmitType.Backward;\n }\n\n if (pageTurningOperation === EPageTurningOperation.Jump) {\n return ESubmitType.Jump;\n }\n\n return ESubmitType.Forward;\n};\n\nconst getBasicIndex = (annotationStore: any, basicIndex: number) => {\n const {imgList, imgIndex} = annotationStore;\n const { dataSourceStep } = getStepConfig(annotationStore.stepList, annotationStore.step);\n let backwardResult = jsonParser(imgList[imgIndex - 1].result)\n const index = backwardResult[`step_${dataSourceStep}`]?.result?.length - 1\n return index || basicIndex\n}\n\nexport function UpdateToolInstance(toolInstance: ToolInstance): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE,\n payload: {\n toolInstance,\n },\n };\n}\n\nexport function UpdateImgList(imgList: IFileItem[]): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_IMG_LIST,\n payload: {\n imgList,\n },\n };\n}\n\nexport function UpdateAnnotationConfig(config: string): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG,\n payload: {\n config,\n },\n };\n}\n\nexport function SetTaskConfig({\n stepList,\n step,\n}: {\n stepList: IStepInfo[];\n step: number;\n}): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.SET_TASK_CONFIG,\n payload: {\n stepList,\n step,\n },\n };\n}\n\nexport function UpdateOnSubmit(onSubmit: OnSubmit): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT,\n payload: {\n onSubmit,\n },\n };\n}\n\nexport function UpdateOnSave(onSave: OnSave): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_SAVE,\n payload: {\n onSave,\n },\n };\n}\n\nexport function UpdateGetFileData(getFileData: GetFileData): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA,\n payload: {\n getFileData,\n },\n };\n}\n\nexport function UpdateRotate(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ROTATE,\n };\n}\n\nexport function CopyBackWordResult(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT,\n };\n}\n\n/**\n * 初始化任务数据\n * @param param0\n */\nexport function InitTaskData({\n onSubmit,\n onSave,\n getFileData,\n imgList,\n step,\n stepList,\n initialIndex,\n}: any): any {\n const tasks: any[] = [];\n\n if (onSubmit) {\n tasks.push(UpdateOnSubmit(onSubmit));\n }\n if (onSave) {\n tasks.push(UpdateOnSave(onSave));\n }\n\n if (getFileData) {\n tasks.push(UpdateGetFileData(getFileData));\n }\n\n tasks.push(UpdateImgList(imgList));\n tasks.push(SetTaskConfig({ stepList, step }));\n tasks.push({\n type: ANNOTATION_ACTIONS.CALC_STEP_PROGRESS,\n });\n tasks.push({\n type: ANNOTATION_ACTIONS.INIT_TOOL,\n });\n\n tasks.push(LoadImageAndFileData(initialIndex));\n\n return (dispatch: any) => dispatchTasks(dispatch, tasks);\n}\n\n/** 切换到下一步 */\nexport const ToNextStep = (pageNumber?: number) => (dispatch: any, getState: any) => {\n const { step } = getState().annotation;\n return [dispatch(UpdateProcessingStep(step + 1, pageNumber))];\n};\n\n/**\n * 更新当前操作的步骤\n * @param {number} toStep\n */\nexport const UpdateProcessingStep = (toStep: number, index?: number) => (dispatch: any, state: any) => {\n const imgIndex = state()?.annotation?.imgIndex ?? 0;\n return [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({\n type: ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,\n payload: { submitType: ESubmitType.StepChanged },\n }),\n // ToSubmitFileData(ESubmitType.StepChanged),\n dispatch({ type: ANNOTATION_ACTIONS.SET_STEP, payload: { toStep } }),\n dispatch({ type: ANNOTATION_ACTIONS.CALC_STEP_PROGRESS }),\n // 切换步骤保持图片位置\n dispatch(LoadImageAndFileData(index ?? imgIndex, 0)),\n ];\n};\n\n/**\n * 提交当前的文件数据\n * @param submitType\n */\nexport const ToSubmitFileData = (submitType: ESubmitType) => (dispatch: any) =>\n [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_FILE_DATA, payload: { submitType } }),\n ];\n\n/**\n * 提交数据并且切换标注文件\n * @param dispatch\n * @param nextIndex\n * @param submitType\n * @param nextBasicIndex\n */\nconst SubmitAndChangeFileIndex = (\n dispatch: any,\n nextIndex: number,\n submitType: ESubmitType,\n nextBasicIndex?: number,\n) => [\n dispatch(ToSubmitFileData(submitType)),\n dispatch(LoadImageAndFileData(nextIndex, nextBasicIndex)),\n];\n\nconst ChangeBasicIndex = (dispatch: any, nextBasicIndex: number) => [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({ type: ANNOTATION_ACTIONS.SET_BASIC_INDEX, payload: { basicIndex: nextBasicIndex } }),\n];\n\nconst ChangeTriggerEventAfterIndexChanged = (\n dispatch: any,\n triggerEventAfterIndexChanged: boolean,\n) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED,\n payload: {\n triggerEventAfterIndexChanged,\n },\n });\n};\n\n/** 向前翻页 */\nexport const PageBackward =\n (triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Backward,\n triggerEventAfterIndexChanged,\n );\n };\n\n/** 向后翻页 */\nexport const PageForward =\n (triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Forward,\n triggerEventAfterIndexChanged,\n );\n };\n\n/**\n * 跳到指定文件索引\n * @param toIndex\n */\nexport const PageJump =\n (toIndex: number, triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n if (toIndex === getState().imgIndex) {\n return;\n }\n\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Jump,\n triggerEventAfterIndexChanged,\n toIndex,\n );\n };\n\n/**\n * 判断翻页还是切换依赖数据\n * @param dispatch\n * @param getState\n * @param pageTurningOperation\n * @param toIndex\n */\nexport const DispatcherTurning = (\n dispatch: any,\n getState: any,\n pageTurningOperation: EPageTurningOperation,\n triggerEventAfterIndexChanged = false,\n toIndex?: number,\n) => {\n const annotationStore = getState().annotation;\n const { fileIndexChanged, fileIndex, basicIndexChanged, basicIndex } =\n PageOperator.getNextPageInfo(pageTurningOperation, annotationStore, toIndex);\n\n const submitType: ESubmitType = getSubmitByPageOperation(pageTurningOperation);\n\n ChangeTriggerEventAfterIndexChanged(dispatch, triggerEventAfterIndexChanged);\n\n if (fileIndexChanged) {\n const index = submitType === ESubmitType.Backward ? getBasicIndex(annotationStore, basicIndex) : basicIndex;\n return SubmitAndChangeFileIndex(dispatch, fileIndex, submitType, index);\n }\n\n if (basicIndexChanged) {\n return ChangeBasicIndex(dispatch, basicIndex);\n }\n\n return dispatch(ToSubmitFileData(submitType));\n};\n\n/**\n * 保存当前页数据\n * */\nexport const ChangeSave = (dispatch: Function) => {\n dispatch(ToSubmitFileData(ESubmitType.Save));\n dispatch({ type: ANNOTATION_ACTIONS.SAVE_RESULT });\n};\n\nexport const SetAnnotationLoading = (dispatch: Function, loading: boolean) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_LOADING,\n payload: {\n loading,\n },\n });\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actionCreators.js","sources":["../../../src/store/annotation/actionCreators.ts"],"sourcesContent":["import { ANNOTATION_ACTIONS } from '@/store/Actions';\nimport { IStepInfo } from '@/types/step';\nimport { GetFileData, IFileItem, OnSave, OnSubmit } from '@/types/data';\nimport { AnnotationActionTypes, ToolInstance } from './types';\nimport { LoadImageAndFileData, getStepConfig } from './reducer';\nimport { ESubmitType } from '@/constant';\nimport { EPageTurningOperation } from '@/data/enums/AnnotationSize';\nimport PageOperator from '@/utils/PageOperator';\nimport { jsonParser } from '@/utils';\n\nconst dispatchTasks = (dispatch: any, tasks: any[]) => tasks.map((task) => dispatch(task));\n\n/**\n * @param {pageTurningOperation} pageTurningOperation 翻页操作\n * @returns {ESubmitType} 提数据交类型\n */\nconst getSubmitByPageOperation = (pageTurningOperation: EPageTurningOperation) => {\n if (pageTurningOperation === EPageTurningOperation.Forward) {\n return ESubmitType.Forward;\n }\n\n if (pageTurningOperation === EPageTurningOperation.Backward) {\n return ESubmitType.Backward;\n }\n\n if (pageTurningOperation === EPageTurningOperation.Jump) {\n return ESubmitType.Jump;\n }\n\n return ESubmitType.Forward;\n};\n\nconst getBasicIndex = (annotationStore: any, basicIndex: number) => {\n const {imgList, imgIndex} = annotationStore;\n const { dataSourceStep } = getStepConfig(annotationStore.stepList, annotationStore.step);\n let backwardResult = jsonParser(imgList[imgIndex - 1].result)\n const index = backwardResult[`step_${dataSourceStep}`]?.result?.length - 1\n return index || basicIndex\n}\n\nexport function UpdateToolInstance(toolInstance: ToolInstance): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE,\n payload: {\n toolInstance,\n },\n };\n}\n\nexport function UpdateImgList(imgList: IFileItem[]): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_IMG_LIST,\n payload: {\n imgList,\n },\n };\n}\n\nexport function UpdateAnnotationConfig(config: string): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG,\n payload: {\n config,\n },\n };\n}\n\nexport function SetTaskConfig({\n stepList,\n step,\n}: {\n stepList: IStepInfo[];\n step: number;\n}): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.SET_TASK_CONFIG,\n payload: {\n stepList,\n step,\n },\n };\n}\n\nexport function UpdateOnSubmit(onSubmit: OnSubmit): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT,\n payload: {\n onSubmit,\n },\n };\n}\n\nexport function UpdateOnSave(onSave: OnSave): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_SAVE,\n payload: {\n onSave,\n },\n };\n}\n\nexport function UpdateGetFileData(getFileData: GetFileData): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA,\n payload: {\n getFileData,\n },\n };\n}\n\nexport function UpdateRotate(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ROTATE,\n };\n}\n\nexport function CopyBackWordResult(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT,\n };\n}\n\n/**\n * 初始化任务数据\n * @param param0\n */\nexport function InitTaskData({\n onSubmit,\n onSave,\n getFileData,\n imgList,\n step,\n stepList,\n initialIndex,\n}: any): any {\n const tasks: any[] = [];\n\n if (onSubmit) {\n tasks.push(UpdateOnSubmit(onSubmit));\n }\n if (onSave) {\n tasks.push(UpdateOnSave(onSave));\n }\n\n if (getFileData) {\n tasks.push(UpdateGetFileData(getFileData));\n }\n\n tasks.push(UpdateImgList(imgList));\n tasks.push(SetTaskConfig({ stepList, step }));\n tasks.push({\n type: ANNOTATION_ACTIONS.CALC_STEP_PROGRESS,\n });\n tasks.push({\n type: ANNOTATION_ACTIONS.INIT_TOOL,\n });\n\n tasks.push(LoadImageAndFileData(initialIndex));\n\n return (dispatch: any) => dispatchTasks(dispatch, tasks);\n}\n\n/** 获取下一步的step */\nconst getNextStep = (step: number, stepList: any) => {\n const currentStepIndex = stepList?.findIndex((element: any) => element?.step === step);\n return stepList[currentStepIndex + 1]?.step;\n};\n\n/** 切换到下一步 */\nexport const ToNextStep = (pageNumber?: number) => (dispatch: any, getState: any) => {\n const { annotation } = getState();\n const { step, stepList } = annotation;\n const nextStep = getNextStep(step, stepList);\n return [dispatch(UpdateProcessingStep(nextStep, pageNumber))];\n};\n\n/**\n * 更新当前操作的步骤\n * @param {number} toStep\n */\nexport const UpdateProcessingStep = (toStep: number, index?: number) => (dispatch: any, state: any) => {\n const imgIndex = state()?.annotation?.imgIndex ?? 0;\n return [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({\n type: ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,\n payload: { submitType: ESubmitType.StepChanged },\n }),\n // ToSubmitFileData(ESubmitType.StepChanged),\n dispatch({ type: ANNOTATION_ACTIONS.SET_STEP, payload: { toStep } }),\n dispatch({ type: ANNOTATION_ACTIONS.CALC_STEP_PROGRESS }),\n // 切换步骤保持图片位置\n dispatch(LoadImageAndFileData(index ?? imgIndex, 0)),\n ];\n};\n\n/**\n * 提交当前的文件数据\n * @param submitType\n */\nexport const ToSubmitFileData = (submitType: ESubmitType) => (dispatch: any) =>\n [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_FILE_DATA, payload: { submitType } }),\n ];\n\n/**\n * 提交数据并且切换标注文件\n * @param dispatch\n * @param nextIndex\n * @param submitType\n * @param nextBasicIndex\n */\nconst SubmitAndChangeFileIndex = (\n dispatch: any,\n nextIndex: number,\n submitType: ESubmitType,\n nextBasicIndex?: number,\n) => [\n dispatch(ToSubmitFileData(submitType)),\n dispatch(LoadImageAndFileData(nextIndex, nextBasicIndex)),\n];\n\nconst ChangeBasicIndex = (dispatch: any, nextBasicIndex: number) => [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({ type: ANNOTATION_ACTIONS.SET_BASIC_INDEX, payload: { basicIndex: nextBasicIndex } }),\n];\n\nconst ChangeTriggerEventAfterIndexChanged = (\n dispatch: any,\n triggerEventAfterIndexChanged: boolean,\n) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED,\n payload: {\n triggerEventAfterIndexChanged,\n },\n });\n};\n\n/** 向前翻页 */\nexport const PageBackward =\n (triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Backward,\n triggerEventAfterIndexChanged,\n );\n };\n\n/** 向后翻页 */\nexport const PageForward =\n (triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Forward,\n triggerEventAfterIndexChanged,\n );\n };\n\n/**\n * 跳到指定文件索引\n * @param toIndex\n */\nexport const PageJump =\n (toIndex: number, triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n if (toIndex === getState().imgIndex) {\n return;\n }\n\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Jump,\n triggerEventAfterIndexChanged,\n toIndex,\n );\n };\n\n/**\n * 判断翻页还是切换依赖数据\n * @param dispatch\n * @param getState\n * @param pageTurningOperation\n * @param toIndex\n */\nexport const DispatcherTurning = (\n dispatch: any,\n getState: any,\n pageTurningOperation: EPageTurningOperation,\n triggerEventAfterIndexChanged = false,\n toIndex?: number,\n) => {\n const annotationStore = getState().annotation;\n const { fileIndexChanged, fileIndex, basicIndexChanged, basicIndex } =\n PageOperator.getNextPageInfo(pageTurningOperation, annotationStore, toIndex);\n\n const submitType: ESubmitType = getSubmitByPageOperation(pageTurningOperation);\n\n ChangeTriggerEventAfterIndexChanged(dispatch, triggerEventAfterIndexChanged);\n\n if (fileIndexChanged) {\n const index = submitType === ESubmitType.Backward ? getBasicIndex(annotationStore, basicIndex) : basicIndex;\n return SubmitAndChangeFileIndex(dispatch, fileIndex, submitType, index);\n }\n\n if (basicIndexChanged) {\n return ChangeBasicIndex(dispatch, basicIndex);\n }\n\n return dispatch(ToSubmitFileData(submitType));\n};\n\n/**\n * 保存当前页数据\n * */\nexport const ChangeSave = (dispatch: Function) => {\n dispatch(ToSubmitFileData(ESubmitType.Save));\n dispatch({ type: ANNOTATION_ACTIONS.SAVE_RESULT });\n};\n\nexport const SetAnnotationLoading = (dispatch: Function, loading: boolean) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_LOADING,\n payload: {\n loading,\n },\n });\n};\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- import{ANNOTATION_ACTIONS as i}from"../Actions.js";import tt from"lodash";import{composeResultWithBasicImgInfo as et,composeResult as nt}from"../../utils/data.js";import{jsonParser as N}from"../../utils/index.js";import k from"../../utils/StepUtils.js";import B from"../../utils/AnnotationDataUtils.js";import{ConfigUtils as ot}from"../../utils/ConfigUtils.js";import st from"../../constant/styleString.js";import{getFormatSize as rt}from"../../components/customResizeHook/index.js";import{CommonToolUtils as it,AnnotationEngine as lt,ImgUtils as ut}from"@labelbee/lb-annotation";import{message as K}from"antd/es";import{SetAnnotationLoading as U}from"./actionCreators.js";var at=Object.defineProperty,ct=Object.defineProperties,pt=Object.getOwnPropertyDescriptors,X=Object.getOwnPropertySymbols,dt=Object.prototype.hasOwnProperty,gt=Object.prototype.propertyIsEnumerable,J=(t,e,o)=>e in t?at(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,l=(t,e)=>{for(var o in e||(e={}))dt.call(e,o)&&J(t,o,e[o]);if(X)for(var o of X(e))gt.call(e,o)&&J(t,o,e[o]);return t},a=(t,e)=>ct(t,pt(e)),ft=(t,e,o)=>new Promise((I,g)=>{var E=c=>{try{S(o.next(c))}catch(y){g(y)}},D=c=>{try{S(o.throw(c))}catch(y){g(y)}},S=c=>c.done?I(c.value):Promise.resolve(c.value).then(E,D);S((o=o.apply(t,e)).next())});const O=(t,e)=>t.find(o=>o.step===e),mt={annotationEngine:null,toolInstance:null,imgList:[],config:"{}",imgIndex:-1,basicIndex:0,imgPageSize:1,step:1,stepList:[],imgNode:new Image,basicResultList:[],resultList:[],stepProgress:0,loading:!1,triggerEventAfterIndexChanged:!1},_t=t=>{const{imgList:e,imgPageSize:o}=t;return Math.ceil(e.length/o)},Y=(t,e)=>t.reduce((o,I)=>{const g=I.result;return N(g)[`step_${e}`]?o+1:o},0)/t.length,It=(t,e)=>{const{step:o,stepList:I}=t,g=k.getCurrentStepInfo(o,I),E=ot.jsonParser(g.config),D=document.getElementById("toolContainer");if(!D)throw"Not exist dom named id-toolContainer";const S=rt({width:window.innerWidth,height:window.innerHeight}),c=new lt({container:D,toolName:g.tool,size:S,imgNode:e,config:E,style:JSON.parse(st)});return{toolInstance:c.toolInstance,annotationEngine:c}},Et=(t,e)=>(o,I)=>ft(void 0,null,function*(){const{getFileData:g,imgList:E,toolInstance:D}=I().annotation;if(U(o,!0),g){const c=yield g(E[t],t);o({type:i.SET_FILE_DATA,payload:{fileData:c,index:t}})}const{url:S}=E[t];return ut.load(S).then(c=>{U(o,!1),o({type:i.LOAD_FILE_DATA,payload:{imgNode:c,nextIndex:t,nextBasicIndex:e}})}).catch(()=>{U(o,!1),D.setErrorImg(),o({type:i.LOAD_FILE_DATA,payload:{nextIndex:t,nextBasicIndex:e}})})}),St=(t=mt,e)=>{var o,I,g,E,D,S,c,y,j,x,G,z,M,$,H;switch(e.type){case i.UPDATE_TOOL_INSTANCE:return a(l({},t),{toolInstance:e.payload.toolInstance});case i.UPDATE_IMG_LIST:return a(l({},t),{imgList:e.payload.imgList});case i.CALC_STEP_PROGRESS:{const{imgList:n,step:s}=t,r=Y(n,s);return a(l({},t),{stepProgress:r})}case i.SUBMIT_FILE_DATA:{const{imgList:n,imgIndex:s,step:r,stepList:u,toolInstance:p,onSubmit:d,resultList:_}=t;if(!p)return t;const f=((o=n[s])==null?void 0:o.result)||"",[,m]=p.exportData(),L=et(f,m),v=nt(L,{step:r,stepList:u},{rect:_});n[s].result=B.dataCorrection(v,f,r,u),d&&d([n[s]],(I=e.payload)==null?void 0:I.submitType,s);const T=Y(n,r);return a(l({},t),{stepProgress:T,imgList:n})}case i.SAVE_RESULT:{const{imgList:n,imgIndex:s,onSave:r}=t;return r==null||r(n[s],s,n),l({},t)}case i.SUBMIT_RESULT:{const{imgList:n,basicIndex:s,resultList:r,annotationEngine:u,basicResultList:p}=t;if(!u)return t;const[d]=u.toolInstance.exportData();let _=d;if((p==null?void 0:p.length)>0){const f=(g=p[s])==null?void 0:g.id,m=d.map(L=>a(l({},L),{sourceID:f}));_=tt.cloneDeep(r).filter(L=>L.sourceID!==f),_.push(...m)}return a(l({},t),{resultList:_,imgList:n})}case i.SET_BASIC_INDEX:{const{toolInstance:n,step:s,imgList:r,imgIndex:u,stepList:p,annotationEngine:d,resultList:_,basicResultList:f}=t;if(!n||!d)return t;const m=e.payload.basicIndex,L=(E=f[m])==null?void 0:E.id,v=N((D=r[u])==null?void 0:D.result),T=(_||[]).filter(w=>w.sourceID===L),h=O(p,s),{dataSourceStep:P,tool:F}=h,C=O(p,P);let A=[];return P&&F&&(A=(S=v[`step_${P}`])==null?void 0:S.result,(A==null?void 0:A.length)>0?(d.setBasicInfo(C.tool,A[m]),d.launchOperation()):(d.setBasicInfo(C.tool),d.forbidOperation(),K.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),n.setResult(T),n.history.initRecord(T,!0),a(l({},t),{basicIndex:m})}case i.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:n}=e.payload;return a(l({},t),{triggerEventAfterIndexChanged:!!n})}case i.LOAD_FILE_DATA:{const{imgList:n,step:s,toolInstance:r,annotationEngine:u,stepList:p}=t;if(!r||!u)return t;const d=k.getCurrentStepInfo(s,p),{nextIndex:_,imgNode:f,nextBasicIndex:m,imgError:L}=e.payload,v=m!=null?m:0,T=N((c=n[_])==null?void 0:c.result),h=T[`step_${s}`],P=!h,F={rotate:(y=T.rotate)!=null?y:0,valid:(j=T.valid)!=null?j:!0};f&&L!==!0&&u.setImgNode(f,F);const C=O(p,s),{dataSourceStep:A,tool:w}=C,V=O(p,A),W=A&&w,R=(G=(x=T[`step_${A}`])==null?void 0:x.result)!=null?G:[],b=B.getInitialResultList(h==null?void 0:h.result,r,C,R,P);if(u.launchOperation(),W&&((R==null?void 0:R.length)>0?u.setBasicInfo(V.tool,R[v]):(u.setBasicInfo(V.tool),u.forbidOperation(),K.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),d.tool!=="check"){const q=(M=(z=R[v])==null?void 0:z.id)!=null?M:"",Q=W?b.filter(Z=>it.isSameSourceID(Z.sourceID,q)):b;r.setResult(Q),r.history.initRecord(b,!0)}return a(l({},t),{imgIndex:_,basicIndex:v,basicResultList:R,resultList:b})}case i.UPDATE_ANNOTATION_CONFIG:return a(l({},t),{config:($=e.payload.config)!=null?$:"{}"});case i.SET_TASK_CONFIG:{const{stepList:n,step:s}=e.payload;return a(l({},t),{stepList:n,step:s})}case i.INIT_TOOL:{const{imgNode:n}=t,{toolInstance:s,annotationEngine:r}=It(t,n);return a(l({},t),{toolInstance:s,annotationEngine:r})}case i.UPDATE_ON_SUBMIT:return a(l({},t),{onSubmit:e.payload.onSubmit});case i.UPDATE_ON_SAVE:return a(l({},t),{onSave:e.payload.onSave});case i.UPDATE_GET_FILE_DATA:return a(l({},t),{getFileData:e.payload.getFileData});case i.SET_FILE_DATA:{const{fileData:n,index:s}=e.payload,{imgList:r}=t;return r[s]=l(l({},r[s]),n),a(l({},t),{imgList:r})}case i.UPDATE_ROTATE:{const{toolInstance:n}=t;return n==null||n.updateRotate(),t}case i.COPY_BACKWARD_RESULT:{const{toolInstance:n,imgIndex:s,imgList:r,step:u}=t;if(!n)return t;if(s===0||s>=r.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),t;const p=r[s-1].result;if(!p)return t;const d=B.copyResultChange(p,u,(H=r[s].result)!=null?H:"");r[s].result=d;const f=N(d)[`step_${u}`],m=(f==null?void 0:f.result)||[];return n.setResult(m),n.history.pushHistory(m),a(l({},t),{imgList:[...r]})}case i.SET_STEP:{const{stepList:n,annotationEngine:s}=t,{toStep:r}=e.payload;if(!s)return t;const u=O(n,r);return s.setToolName(u.tool,u.config),a(l({},t),{step:r,toolInstance:s.toolInstance})}case i.SET_LOADING:{const{loading:n}=e.payload;return a(l({},t),{loading:!!n})}default:return t}};export{Et as LoadImageAndFileData,St as annotationReducer,O as getStepConfig,_t as getTotalPage};
1
+ import{getFormatSize as tt}from"../../components/customResizeHook/index.js";import et from"../../constant/styleString.js";import{ANNOTATION_ACTIONS as i}from"../Actions.js";import{jsonParser as N}from"../../utils/index.js";import B from"../../utils/AnnotationDataUtils.js";import{ConfigUtils as nt}from"../../utils/ConfigUtils.js";import{composeResultWithBasicImgInfo as ot,composeResult as st}from"../../utils/data.js";import k from"../../utils/StepUtils.js";import{CommonToolUtils as rt,AnnotationEngine as it,ImgUtils as lt}from"@labelbee/lb-annotation";import{message as K}from"antd/es";import ut from"lodash";import{SetAnnotationLoading as U}from"./actionCreators.js";var at=Object.defineProperty,ct=Object.defineProperties,pt=Object.getOwnPropertyDescriptors,X=Object.getOwnPropertySymbols,dt=Object.prototype.hasOwnProperty,gt=Object.prototype.propertyIsEnumerable,J=(t,e,o)=>e in t?at(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,l=(t,e)=>{for(var o in e||(e={}))dt.call(e,o)&&J(t,o,e[o]);if(X)for(var o of X(e))gt.call(e,o)&&J(t,o,e[o]);return t},a=(t,e)=>ct(t,pt(e)),ft=(t,e,o)=>new Promise((I,g)=>{var E=c=>{try{S(o.next(c))}catch(y){g(y)}},D=c=>{try{S(o.throw(c))}catch(y){g(y)}},S=c=>c.done?I(c.value):Promise.resolve(c.value).then(E,D);S((o=o.apply(t,e)).next())});const O=(t,e)=>t.find(o=>o.step===e),mt={annotationEngine:null,toolInstance:null,imgList:[],config:"{}",imgIndex:-1,basicIndex:0,imgPageSize:1,step:1,stepList:[],imgNode:new Image,basicResultList:[],resultList:[],stepProgress:0,loading:!1,triggerEventAfterIndexChanged:!1},_t=t=>{const{imgList:e,imgPageSize:o}=t;return Math.ceil(e.length/o)},Y=(t,e)=>t.reduce((o,I)=>{const g=I.result;return N(g)[`step_${e}`]?o+1:o},0)/t.length,It=(t,e)=>{const{step:o,stepList:I}=t,g=k.getCurrentStepInfo(o,I),E=nt.jsonParser(g.config),D=document.getElementById("toolContainer");if(!D)throw"Not exist dom named id-toolContainer";const S=tt({width:window.innerWidth,height:window.innerHeight}),c=new it({container:D,toolName:g.tool,size:S,imgNode:e,config:E,style:JSON.parse(et)});return{toolInstance:c.toolInstance,annotationEngine:c}},Et=(t,e)=>(o,I)=>ft(void 0,null,function*(){const{getFileData:g,imgList:E,toolInstance:D}=I().annotation;if(U(o,!0),g){const c=yield g(E[t],t);o({type:i.SET_FILE_DATA,payload:{fileData:c,index:t}})}const{url:S}=E[t];return lt.load(S).then(c=>{U(o,!1),o({type:i.LOAD_FILE_DATA,payload:{imgNode:c,nextIndex:t,nextBasicIndex:e}})}).catch(()=>{U(o,!1),D.setErrorImg(),o({type:i.LOAD_FILE_DATA,payload:{nextIndex:t,nextBasicIndex:e}})})}),St=(t=mt,e)=>{var o,I,g,E,D,S,c,y,j,x,G,z,M,$,H;switch(e.type){case i.UPDATE_TOOL_INSTANCE:return a(l({},t),{toolInstance:e.payload.toolInstance});case i.UPDATE_IMG_LIST:return a(l({},t),{imgList:e.payload.imgList});case i.CALC_STEP_PROGRESS:{const{imgList:n,step:s}=t,r=Y(n,s);return a(l({},t),{stepProgress:r})}case i.SUBMIT_FILE_DATA:{const{imgList:n,imgIndex:s,step:r,stepList:u,toolInstance:p,onSubmit:d,resultList:_}=t;if(!p)return t;const f=((o=n[s])==null?void 0:o.result)||"",[,m]=p.exportData(),L=ot(f,m),v=st(L,{step:r,stepList:u},{rect:_});n[s].result=B.dataCorrection(v,f,r,u),d&&d([n[s]],(I=e.payload)==null?void 0:I.submitType,s);const T=Y(n,r);return a(l({},t),{stepProgress:T,imgList:n})}case i.SAVE_RESULT:{const{imgList:n,imgIndex:s,onSave:r}=t;return r==null||r(n[s],s,n),l({},t)}case i.SUBMIT_RESULT:{const{imgList:n,basicIndex:s,resultList:r,annotationEngine:u,basicResultList:p}=t;if(!u)return t;const[d]=u.toolInstance.exportData();let _=d;if((p==null?void 0:p.length)>0){const f=(g=p[s])==null?void 0:g.id,m=d.map(L=>a(l({},L),{sourceID:f}));_=ut.cloneDeep(r).filter(L=>L.sourceID!==f),_.push(...m)}return a(l({},t),{resultList:_,imgList:n})}case i.SET_BASIC_INDEX:{const{toolInstance:n,step:s,imgList:r,imgIndex:u,stepList:p,annotationEngine:d,resultList:_,basicResultList:f}=t;if(!n||!d)return t;const m=e.payload.basicIndex,L=(E=f[m])==null?void 0:E.id,v=N((D=r[u])==null?void 0:D.result),T=(_||[]).filter(w=>w.sourceID===L),h=O(p,s),{dataSourceStep:P,tool:F}=h,C=O(p,P);let A=[];return P&&F&&(A=(S=v[`step_${P}`])==null?void 0:S.result,(A==null?void 0:A.length)>0?(d.setBasicInfo(C.tool,A[m]),d.launchOperation()):(d.setBasicInfo(C.tool),d.forbidOperation(),K.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),n.setResult(T),n.history.initRecord(T,!0),a(l({},t),{basicIndex:m})}case i.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:n}=e.payload;return a(l({},t),{triggerEventAfterIndexChanged:!!n})}case i.LOAD_FILE_DATA:{const{imgList:n,step:s,toolInstance:r,annotationEngine:u,stepList:p}=t;if(!r||!u)return t;const d=k.getCurrentStepInfo(s,p),{nextIndex:_,imgNode:f,nextBasicIndex:m,imgError:L}=e.payload,v=m!=null?m:0,T=N((c=n[_])==null?void 0:c.result),h=T[`step_${s}`],P=!h,F={rotate:(y=T.rotate)!=null?y:0,valid:(j=T.valid)!=null?j:!0};f&&L!==!0&&u.setImgNode(f,F);const C=O(p,s),{dataSourceStep:A,tool:w}=C,V=O(p,A),W=A&&w,R=(G=(x=T[`step_${A}`])==null?void 0:x.result)!=null?G:[],b=B.getInitialResultList(h==null?void 0:h.result,r,C,R,P);if(u.launchOperation(),W&&((R==null?void 0:R.length)>0?u.setBasicInfo(V.tool,R[v]):(u.setBasicInfo(V.tool),u.forbidOperation(),K.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),d.tool!=="check"){const q=(M=(z=R[v])==null?void 0:z.id)!=null?M:"",Q=W?b.filter(Z=>rt.isSameSourceID(Z.sourceID,q)):b;r.setResult(Q),r.history.initRecord(b,!0)}return a(l({},t),{imgIndex:_,basicIndex:v,basicResultList:R,resultList:b})}case i.UPDATE_ANNOTATION_CONFIG:return a(l({},t),{config:($=e.payload.config)!=null?$:"{}"});case i.SET_TASK_CONFIG:{const{stepList:n,step:s}=e.payload;return a(l({},t),{stepList:n,step:s})}case i.INIT_TOOL:{const{imgNode:n}=t,{toolInstance:s,annotationEngine:r}=It(t,n);return a(l({},t),{toolInstance:s,annotationEngine:r})}case i.UPDATE_ON_SUBMIT:return a(l({},t),{onSubmit:e.payload.onSubmit});case i.UPDATE_ON_SAVE:return a(l({},t),{onSave:e.payload.onSave});case i.UPDATE_GET_FILE_DATA:return a(l({},t),{getFileData:e.payload.getFileData});case i.SET_FILE_DATA:{const{fileData:n,index:s}=e.payload,{imgList:r}=t;return r[s]=l(l({},r[s]),n),a(l({},t),{imgList:r})}case i.UPDATE_ROTATE:{const{toolInstance:n}=t;return n==null||n.updateRotate(),t}case i.COPY_BACKWARD_RESULT:{const{toolInstance:n,imgIndex:s,imgList:r,step:u}=t;if(!n)return t;if(s===0||s>=r.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),t;const p=r[s-1].result;if(!p)return t;const d=B.copyResultChange(p,u,(H=r[s].result)!=null?H:"");r[s].result=d;const f=N(d)[`step_${u}`],m=(f==null?void 0:f.result)||[];return n.setResult(m),n.history.pushHistory(m),a(l({},t),{imgList:[...r]})}case i.SET_STEP:{const{stepList:n,annotationEngine:s}=t,{toStep:r}=e.payload;if(!s)return t;const u=O(n,r);return s.setToolName(u.tool,u.config),a(l({},t),{step:r,toolInstance:s.toolInstance})}case i.SET_LOADING:{const{loading:n}=e.payload;return a(l({},t),{loading:!!n})}default:return t}};export{Et as LoadImageAndFileData,St as annotationReducer,O as getStepConfig,_t as getTotalPage};