@labelbee/lb-components 1.2.3-alpha.6 → 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 (109) hide show
  1. package/dist/App.js +1 -1
  2. package/dist/components/AnnotationView/index.js +1 -1
  3. package/dist/index.css +812 -651
  4. package/dist/index.css.map +1 -0
  5. package/dist/index.js +1 -1
  6. package/dist/store/annotation/reducer.js +1 -1
  7. package/dist/types/App.d.ts +23 -7
  8. package/dist/types/index.d.ts +4 -3
  9. package/dist/types/store/annotation/reducer.d.ts +1 -1
  10. package/dist/types/views/MainView/annotationOperation/index.d.ts +5 -9
  11. package/dist/types/views/MainView/index.d.ts +1 -1
  12. package/dist/types/views/MainView/sidebar/AnnotationText/index.d.ts +3 -1
  13. package/dist/types/views/MainView/sidebar/GeneralOperation/index.d.ts +3 -1
  14. package/dist/types/views/MainView/sidebar/SwitchAttributeList/index.d.ts +3 -1
  15. package/dist/types/views/MainView/sidebar/TagSidebar/index.d.ts +3 -1
  16. package/dist/types/views/MainView/sidebar/TextToolSidebar/index.d.ts +3 -1
  17. package/dist/types/views/MainView/sidebar/index.d.ts +3 -1
  18. package/dist/types/views/MainView/toolFooter/ZoomController/ZoomLevel/index.d.ts +3 -1
  19. package/dist/types/views/MainView/toolFooter/ZoomController/index.d.ts +3 -1
  20. package/dist/types/views/MainView/toolFooter/index.d.ts +6 -2
  21. package/dist/types/views/MainView/toolHeader/ExportData/index.d.ts +3 -1
  22. package/dist/types/views/MainView/toolHeader/StepSwitch/index.d.ts +3 -1
  23. package/dist/types/views/MainView/toolHeader/index.d.ts +8 -4
  24. package/dist/utils/index.js +1 -1
  25. package/dist/views/MainView/annotationOperation/index.js +1 -1
  26. package/dist/views/MainView/index.js +1 -1
  27. package/dist/views/MainView/sidebar/index.js +1 -1
  28. package/dist/views/MainView/toolFooter/index.js +1 -1
  29. package/dist/views/MainView/toolHeader/index.js +1 -1
  30. package/es/App.js +1 -1
  31. package/es/App.js.map +1 -1
  32. package/es/assets/annotation/polygonTool/icon_rectangle_a.svg.js +1 -0
  33. package/es/assets/annotation/polygonTool/icon_rectangle_a.svg.js.map +1 -0
  34. package/es/components/AnnotationView/index.js +1 -1
  35. package/es/components/AnnotationView/index.js.map +1 -1
  36. package/es/components/ImageError/index.js.map +1 -1
  37. package/es/components/annotationStepPopover/index.js.map +1 -1
  38. package/es/components/attributeList/index.js.map +1 -1
  39. package/es/components/checkboxList/index.js.map +1 -1
  40. package/es/components/colorTag/index.js.map +1 -1
  41. package/es/components/customAntd/IconWithText/index.js.map +1 -1
  42. package/es/components/customResizeHook/index.js.map +1 -1
  43. package/es/configureStore.js.map +1 -1
  44. package/es/constant/index.js.map +1 -1
  45. package/es/constant/styleString.js.map +1 -1
  46. package/es/data/Style.js.map +1 -1
  47. package/es/data/enums/AnnotationSize.js.map +1 -1
  48. package/es/data/enums/ToolType.js.map +1 -1
  49. package/es/hooks/useRafState.js.map +1 -1
  50. package/es/hooks/useSafeSate.js.map +1 -1
  51. package/es/hooks/useSize.js.map +1 -1
  52. package/es/hooks/useUnmountedRef.js.map +1 -1
  53. package/es/index.js +1 -1
  54. package/es/index.js.map +1 -1
  55. package/es/store/Actions.js.map +1 -1
  56. package/es/store/annotation/actionCreators.js.map +1 -1
  57. package/es/store/annotation/reducer.js +1 -1
  58. package/es/store/annotation/reducer.js.map +1 -1
  59. package/es/store/imgAttribute/actionCreators.js.map +1 -1
  60. package/es/store/imgAttribute/reducer.js.map +1 -1
  61. package/es/store/index.js.map +1 -1
  62. package/es/store/toolStyle/actionCreators.js.map +1 -1
  63. package/es/store/toolStyle/reducer.js.map +1 -1
  64. package/es/utils/AnnotationDataUtils.js.map +1 -1
  65. package/es/utils/ConfigUtils.js.map +1 -1
  66. package/es/utils/PageOperator.js.map +1 -1
  67. package/es/utils/StepUtils.js.map +1 -1
  68. package/es/utils/TextUtils.js.map +1 -1
  69. package/es/utils/ToolStyleUtils.js.map +1 -1
  70. package/es/utils/data.js.map +1 -1
  71. package/es/utils/dom.js.map +1 -1
  72. package/es/utils/index.js +1 -1
  73. package/es/utils/index.js.map +1 -1
  74. package/es/views/MainView/annotationOperation/index.js +1 -1
  75. package/es/views/MainView/annotationOperation/index.js.map +1 -1
  76. package/es/views/MainView/index.js +1 -1
  77. package/es/views/MainView/index.js.map +1 -1
  78. package/es/views/MainView/sidebar/AnnotationText/index.js.map +1 -1
  79. package/es/views/MainView/sidebar/ClearIcon/index.js.map +1 -1
  80. package/es/views/MainView/sidebar/GeneralOperation/index.js.map +1 -1
  81. package/es/views/MainView/sidebar/ImgAttributeInfo/index.js.map +1 -1
  82. package/es/views/MainView/sidebar/SwitchAttributeList/index.js.map +1 -1
  83. package/es/views/MainView/sidebar/TagSidebar/index.js.map +1 -1
  84. package/es/views/MainView/sidebar/TextAreaFormat/index.js.map +1 -1
  85. package/es/views/MainView/sidebar/TextToolSidebar/index.js.map +1 -1
  86. package/es/views/MainView/sidebar/ToolStyle/index.js.map +1 -1
  87. package/es/views/MainView/sidebar/index.js +1 -1
  88. package/es/views/MainView/sidebar/index.js.map +1 -1
  89. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.js.map +1 -1
  90. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/index.js.map +1 -1
  91. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/line/index.js.map +1 -1
  92. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/point/index.js.map +1 -1
  93. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.js.map +1 -1
  94. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/rectToolShortCutTable/index.js.map +1 -1
  95. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/tag/index.js.map +1 -1
  96. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/text/index.js.map +1 -1
  97. package/es/views/MainView/toolFooter/FooterTips/index.js.map +1 -1
  98. package/es/views/MainView/toolFooter/HiddenTips/index.js.map +1 -1
  99. package/es/views/MainView/toolFooter/PageNumber/index.js.map +1 -1
  100. package/es/views/MainView/toolFooter/ZoomController/ZoomLevel/index.js.map +1 -1
  101. package/es/views/MainView/toolFooter/ZoomController/index.js.map +1 -1
  102. package/es/views/MainView/toolFooter/index.js +1 -1
  103. package/es/views/MainView/toolFooter/index.js.map +1 -1
  104. package/es/views/MainView/toolHeader/ExportData/index.js.map +1 -1
  105. package/es/views/MainView/toolHeader/StepSwitch/index.js.map +1 -1
  106. package/es/views/MainView/toolHeader/headerOption/index.js.map +1 -1
  107. package/es/views/MainView/toolHeader/index.js +1 -1
  108. package/es/views/MainView/toolHeader/index.js.map +1 -1
  109. package/package.json +9 -9
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["../src/index.scss"],"names":[],"mappings":"AAMA;EACE;EACA;EACA;;AAEA;EAEE;EACA;EACA;EACA;EACA;EACA,YAlBW;;AAqBb;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIA;EACE;;AAGF;EACE;;AAKN;EACE;EACA;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;;AAOF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAEA;AAAA;EAEE;;AAEA;AAAA;EACE;;AAKN;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;;;AAMN;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;;AAON;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAII;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAKN;EACE;;AAGF;EACE;;AAGF;EACE;;AAMR;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;AAAA;EAEE;EAEA;EACA;EACA;EACA;;AAEA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;AAAA;EACE;;AAGF;AAAA;EACE;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA;EACA;;AAcF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAIF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EAEA;EACA;EACA;EACA;EACA;;AAIJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAGE;EACA;;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAQF;AAAA;EACE;EACA;EACA;EACA;;AAGF;AAAA;EACE;;AAGF;AAAA;EACE;;AAGF;AAAA;EACE;;AAGF;AAAA;EACE;;AAGF;AAAA;EACE;;AAKF;AAAA;EACE;;AAMJ;EACE;;AAgBF;AAAA;EACE;;;AAgBN;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;;AAKJ;EACE;;AAEA;EACE;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAMA;EACE;;AAKN;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;AAAA;EAEE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;;AAmBJ;EACE;EACA;EACA;;AAGF;EACE;EACA;;;AAQJ;EACE;EACA;;AAGE;EACE;EACA;;AAIJ;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAMN;EACE;EACA;EACA;;AAGE;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;;;AAMN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;;AAKF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;;AAGF;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;;AAKN;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKN;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKN;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAIJ;EACE;;AAGE;EACE;;AAKN;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;;AAEA;EACE;EACA;EACA;;;AAOF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;;AAEA;EACE;;AAIJ;EACE;EAEA;;AAGF;EACE;;AAGF;EACE;;AAIJ;EACE;EACA;;AAEA;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EAEA;;AAGF;EACE;;AAGF;EACE;;AAIJ;EACE;;AAEA;EACE","file":"index.css"}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),reactRedux=require("react-redux"),configureStore=require("./configureStore.js"),App=require("./App.js"),actionCreators=require("./store/annotation/actionCreators.js"),lbUtils=require("@labelbee/lb-utils"),reactI18next=require("react-i18next"),index$1=require("./components/AnnotationView/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e},__spreadProps=(e,r)=>__defProps(e,__getOwnPropDescs(r));const store=configureStore(),OutputApp=(e,r)=>{const[t,a]=React.useState();return React.useImperativeHandle(r,()=>({toolInstance:t,pageBackwardActions:()=>store.dispatch(actionCreators.PageBackward()),pageForwardActions:()=>store.dispatch(actionCreators.PageForward()),pageJump:o=>{const n=~~o-1;store.dispatch(actionCreators.PageJump(n))},hello:()=>alert("hello labelBee!!!")}),[t]),React__default.default.createElement(reactRedux.Provider,{store},React__default.default.createElement(reactI18next.I18nextProvider,{i18n:lbUtils.i18n},React__default.default.createElement(App,__spreadProps(__spreadValues({},e),{setToolInstance:a}))))};var index=React__default.default.forwardRef(OutputApp);Object.defineProperty(exports,"i18n",{enumerable:!0,get:function(){return lbUtils.i18n}}),exports.AnnotationView=index$1,exports.default=index,exports.store=store;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$1=require("./components/AnnotationView/index.js"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),reactI18next=require("react-i18next"),reactRedux=require("react-redux"),App=require("./App.js"),configureStore=require("./configureStore.js"),actionCreators=require("./store/annotation/actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e},__spreadProps=(e,r)=>__defProps(e,__getOwnPropDescs(r));const store=configureStore(),OutputApp=(e,r)=>{const[t,a]=React.useState();return React.useImperativeHandle(r,()=>({toolInstance:t,pageBackwardActions:()=>store.dispatch(actionCreators.PageBackward()),pageForwardActions:()=>store.dispatch(actionCreators.PageForward()),pageJump:o=>{const n=~~o-1;store.dispatch(actionCreators.PageJump(n))},hello:()=>alert("hello labelBee!!!")}),[t]),React__default.default.createElement(reactRedux.Provider,{store},React__default.default.createElement(reactI18next.I18nextProvider,{i18n:lbUtils.i18n},React__default.default.createElement(App,__spreadProps(__spreadValues({},e),{setToolInstance:a}))))};var index=React__default.default.forwardRef(OutputApp);exports.AnnotationView=index$1,Object.defineProperty(exports,"i18n",{enumerable:!0,get:function(){return lbUtils.i18n}}),exports.default=index,exports.store=store;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var Actions=require("../Actions.js"),_=require("lodash"),data=require("../../utils/data.js"),index=require("../../utils/index.js"),StepUtils=require("../../utils/StepUtils.js"),AnnotationDataUtils=require("../../utils/AnnotationDataUtils.js"),ConfigUtils=require("../../utils/ConfigUtils.js"),styleString=require("../../constant/styleString.js"),index$1=require("../../components/customResizeHook/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),es=require("antd/es"),actionCreators=require("./actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,o)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__spreadValues=(e,t)=>{for(var o in t||(t={}))__hasOwnProp.call(t,o)&&__defNormalProp(e,o,t[o]);if(__getOwnPropSymbols)for(var o of __getOwnPropSymbols(t))__propIsEnum.call(t,o)&&__defNormalProp(e,o,t[o]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__async=(e,t,o)=>new Promise((T,c)=>{var p=l=>{try{N(o.next(l))}catch(E){c(E)}},g=l=>{try{N(o.throw(l))}catch(E){c(E)}},N=l=>l.done?T(l.value):Promise.resolve(l.value).then(p,g);N((o=o.apply(e,t)).next())});const getStepConfig=(e,t)=>e.find(o=>o.step===t),initialState={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},getTotalPage=e=>{const{imgList:t,imgPageSize:o}=e;return Math.ceil(t.length/o)},calcStepProgress=(e,t)=>e.reduce((o,T)=>{const c=T.result;return index.jsonParser(c)[`step_${t}`]?o+1:o},0)/e.length,updateToolInstance=(e,t)=>{const{step:o,stepList:T}=e,c=StepUtils.getCurrentStepInfo(o,T),p=ConfigUtils.ConfigUtils.jsonParser(c.config),g=document.getElementById("toolContainer");if(!g)throw"Not exist dom named id-toolContainer";const N=index$1.getFormatSize({width:window.innerWidth,height:window.innerHeight}),l=new lbAnnotation.AnnotationEngine({container:g,toolName:c.tool,size:N,imgNode:t,config:p,style:JSON.parse(styleString)});return{toolInstance:l.toolInstance,annotationEngine:l}},LoadImageAndFileData=(e,t)=>(o,T)=>__async(void 0,null,function*(){const{getFileData:c,imgList:p,toolInstance:g}=T().annotation;if(actionCreators.SetAnnotationLoading(o,!0),c){const l=yield c(p[e],e);o({type:Actions.ANNOTATION_ACTIONS.SET_FILE_DATA,payload:{fileData:l,index:e}})}const{url:N}=p[e];return lbAnnotation.ImgUtils.load(N).then(l=>{actionCreators.SetAnnotationLoading(o,!1),o({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{imgNode:l,nextIndex:e,nextBasicIndex:t}})}).catch(()=>{actionCreators.SetAnnotationLoading(o,!1),g.setErrorImg(),o({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e,nextBasicIndex:t}})})}),annotationReducer=(e=initialState,t)=>{var o,T,c,p,g,N,l,E,h,b,x,F,j,w,U;switch(t.type){case Actions.ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE:return __spreadProps(__spreadValues({},e),{toolInstance:t.payload.toolInstance});case Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST:return __spreadProps(__spreadValues({},e),{imgList:t.payload.imgList});case Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS:{const{imgList:n,step:s}=e,r=calcStepProgress(n,s);return __spreadProps(__spreadValues({},e),{stepProgress:r})}case Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA:{const{imgList:n,imgIndex:s,step:r,stepList:i,toolInstance:a,onSubmit:u,resultList:A}=e;if(!a)return e;const I=((o=n[s])==null?void 0:o.result)||"",[,d]=a.exportData(),O=data.composeResultWithBasicImgInfo(I,d),m=data.composeResult(O,{step:r,stepList:i},{rect:A});n[s].result=AnnotationDataUtils.dataCorrection(m,I,r,i),u&&u([n[s]],(T=t.payload)==null?void 0:T.submitType,s);const f=calcStepProgress(n,r);return __spreadProps(__spreadValues({},e),{stepProgress:f,imgList:n})}case Actions.ANNOTATION_ACTIONS.SAVE_RESULT:{const{imgList:n,imgIndex:s,onSave:r}=e;return r==null||r(n[s],s,n),__spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT:{const{imgList:n,basicIndex:s,resultList:r,annotationEngine:i,basicResultList:a}=e;if(!i)return e;const[u]=i.toolInstance.exportData();let A=u;if((a==null?void 0:a.length)>0){const I=(c=a[s])==null?void 0:c.id,d=u.map(O=>__spreadProps(__spreadValues({},O),{sourceID:I}));A=___default.default.cloneDeep(r).filter(O=>O.sourceID!==I),A.push(...d)}return __spreadProps(__spreadValues({},e),{resultList:A,imgList:n})}case Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX:{const{toolInstance:n,step:s,imgList:r,imgIndex:i,stepList:a,annotationEngine:u,resultList:A,basicResultList:I}=e;if(!n||!u)return e;const d=t.payload.basicIndex,O=(p=I[d])==null?void 0:p.id,m=index.jsonParser((g=r[i])==null?void 0:g.result),f=(A||[]).filter(P=>P.sourceID===O),L=getStepConfig(a,s),{dataSourceStep:C,tool:R}=L,D=getStepConfig(a,C);let S=[];return C&&R&&(S=(N=m[`step_${C}`])==null?void 0:N.result,(S==null?void 0:S.length)>0?(u.setBasicInfo(D.tool,S[d]),u.launchOperation()):(u.setBasicInfo(D.tool),u.forbidOperation(),es.message.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),n.setResult(f),n.history.initRecord(f,!0),__spreadProps(__spreadValues({},e),{basicIndex:d})}case Actions.ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:n}=t.payload;return __spreadProps(__spreadValues({},e),{triggerEventAfterIndexChanged:!!n})}case Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA:{const{imgList:n,step:s,toolInstance:r,annotationEngine:i,stepList:a}=e;if(!r||!i)return e;const u=StepUtils.getCurrentStepInfo(s,a),{nextIndex:A,imgNode:I,nextBasicIndex:d,imgError:O}=t.payload,m=d!=null?d:0,f=index.jsonParser((l=n[A])==null?void 0:l.result),L=f[`step_${s}`],C=!L,R={rotate:(E=f.rotate)!=null?E:0,valid:(h=f.valid)!=null?h:!0};I&&O!==!0&&i.setImgNode(I,R);const D=getStepConfig(a,s),{dataSourceStep:S,tool:P}=D,B=getStepConfig(a,S),q=S&&P,v=(x=(b=f[`step_${S}`])==null?void 0:b.result)!=null?x:[],y=AnnotationDataUtils.getInitialResultList(L==null?void 0:L.result,r,D,v,C);if(i.launchOperation(),q&&((v==null?void 0:v.length)>0?i.setBasicInfo(B.tool,v[m]):(i.setBasicInfo(B.tool),i.forbidOperation(),es.message.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),u.tool!=="check"){const G=(j=(F=v[m])==null?void 0:F.id)!=null?j:"",z=q?y.filter(M=>lbAnnotation.CommonToolUtils.isSameSourceID(M.sourceID,G)):y;r.setResult(z),r.history.initRecord(y,!0)}return __spreadProps(__spreadValues({},e),{imgIndex:A,basicIndex:m,basicResultList:v,resultList:y})}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG:return __spreadProps(__spreadValues({},e),{config:(w=t.payload.config)!=null?w:"{}"});case Actions.ANNOTATION_ACTIONS.SET_TASK_CONFIG:{const{stepList:n,step:s}=t.payload;return __spreadProps(__spreadValues({},e),{stepList:n,step:s})}case Actions.ANNOTATION_ACTIONS.INIT_TOOL:{const{imgNode:n}=e,{toolInstance:s,annotationEngine:r}=updateToolInstance(e,n);return __spreadProps(__spreadValues({},e),{toolInstance:s,annotationEngine:r})}case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT:return __spreadProps(__spreadValues({},e),{onSubmit:t.payload.onSubmit});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SAVE:return __spreadProps(__spreadValues({},e),{onSave:t.payload.onSave});case Actions.ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA:return __spreadProps(__spreadValues({},e),{getFileData:t.payload.getFileData});case Actions.ANNOTATION_ACTIONS.SET_FILE_DATA:{const{fileData:n,index:s}=t.payload,{imgList:r}=e;return r[s]=__spreadValues(__spreadValues({},r[s]),n),__spreadProps(__spreadValues({},e),{imgList:r})}case Actions.ANNOTATION_ACTIONS.UPDATE_ROTATE:{const{toolInstance:n}=e;return n==null||n.updateRotate(),e}case Actions.ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT:{const{toolInstance:n,imgIndex:s,imgList:r,step:i}=e;if(!n)return e;if(s===0||s>=r.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),e;const a=r[s-1].result;if(!a)return e;const u=AnnotationDataUtils.copyResultChange(a,i,(U=r[s].result)!=null?U:"");r[s].result=u;const I=index.jsonParser(u)[`step_${i}`],d=(I==null?void 0:I.result)||[];return n.setResult(d),n.history.pushHistory(d),__spreadProps(__spreadValues({},e),{imgList:[...r]})}case Actions.ANNOTATION_ACTIONS.SET_STEP:{const{stepList:n,annotationEngine:s}=e,{toStep:r}=t.payload;if(!s)return e;const i=getStepConfig(n,r);return s.setToolName(i.tool,i.config),__spreadProps(__spreadValues({},e),{step:r,toolInstance:s.toolInstance})}case Actions.ANNOTATION_ACTIONS.SET_LOADING:{const{loading:n}=t.payload;return __spreadProps(__spreadValues({},e),{loading:!!n})}default:return e}};exports.LoadImageAndFileData=LoadImageAndFileData,exports.annotationReducer=annotationReducer,exports.getStepConfig=getStepConfig,exports.getTotalPage=getTotalPage;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$1=require("../../components/customResizeHook/index.js"),styleString=require("../../constant/styleString.js"),Actions=require("../Actions.js"),index=require("../../utils/index.js"),AnnotationDataUtils=require("../../utils/AnnotationDataUtils.js"),ConfigUtils=require("../../utils/ConfigUtils.js"),data=require("../../utils/data.js"),StepUtils=require("../../utils/StepUtils.js"),lbAnnotation=require("@labelbee/lb-annotation"),es=require("antd/es"),_=require("lodash"),actionCreators=require("./actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,o)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,__spreadValues=(e,t)=>{for(var o in t||(t={}))__hasOwnProp.call(t,o)&&__defNormalProp(e,o,t[o]);if(__getOwnPropSymbols)for(var o of __getOwnPropSymbols(t))__propIsEnum.call(t,o)&&__defNormalProp(e,o,t[o]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__async=(e,t,o)=>new Promise((T,c)=>{var p=l=>{try{N(o.next(l))}catch(E){c(E)}},g=l=>{try{N(o.throw(l))}catch(E){c(E)}},N=l=>l.done?T(l.value):Promise.resolve(l.value).then(p,g);N((o=o.apply(e,t)).next())});const getStepConfig=(e,t)=>e.find(o=>o.step===t),initialState={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},getTotalPage=e=>{const{imgList:t,imgPageSize:o}=e;return Math.ceil(t.length/o)},calcStepProgress=(e,t)=>e.reduce((o,T)=>{const c=T.result;return index.jsonParser(c)[`step_${t}`]?o+1:o},0)/e.length,updateToolInstance=(e,t)=>{const{step:o,stepList:T}=e,c=StepUtils.getCurrentStepInfo(o,T),p=ConfigUtils.ConfigUtils.jsonParser(c.config),g=document.getElementById("toolContainer");if(!g)throw"Not exist dom named id-toolContainer";const N=index$1.getFormatSize({width:window.innerWidth,height:window.innerHeight}),l=new lbAnnotation.AnnotationEngine({container:g,toolName:c.tool,size:N,imgNode:t,config:p,style:JSON.parse(styleString)});return{toolInstance:l.toolInstance,annotationEngine:l}},LoadImageAndFileData=(e,t)=>(o,T)=>__async(void 0,null,function*(){const{getFileData:c,imgList:p,toolInstance:g}=T().annotation;if(actionCreators.SetAnnotationLoading(o,!0),c){const l=yield c(p[e],e);o({type:Actions.ANNOTATION_ACTIONS.SET_FILE_DATA,payload:{fileData:l,index:e}})}const{url:N}=p[e];return lbAnnotation.ImgUtils.load(N).then(l=>{actionCreators.SetAnnotationLoading(o,!1),o({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{imgNode:l,nextIndex:e,nextBasicIndex:t}})}).catch(()=>{actionCreators.SetAnnotationLoading(o,!1),g.setErrorImg(),o({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e,nextBasicIndex:t}})})}),annotationReducer=(e=initialState,t)=>{var o,T,c,p,g,N,l,E,h,b,x,F,j,w,U;switch(t.type){case Actions.ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE:return __spreadProps(__spreadValues({},e),{toolInstance:t.payload.toolInstance});case Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST:return __spreadProps(__spreadValues({},e),{imgList:t.payload.imgList});case Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS:{const{imgList:n,step:s}=e,r=calcStepProgress(n,s);return __spreadProps(__spreadValues({},e),{stepProgress:r})}case Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA:{const{imgList:n,imgIndex:s,step:r,stepList:i,toolInstance:a,onSubmit:u,resultList:A}=e;if(!a)return e;const I=((o=n[s])==null?void 0:o.result)||"",[,d]=a.exportData(),O=data.composeResultWithBasicImgInfo(I,d),m=data.composeResult(O,{step:r,stepList:i},{rect:A});n[s].result=AnnotationDataUtils.dataCorrection(m,I,r,i),u&&u([n[s]],(T=t.payload)==null?void 0:T.submitType,s);const f=calcStepProgress(n,r);return __spreadProps(__spreadValues({},e),{stepProgress:f,imgList:n})}case Actions.ANNOTATION_ACTIONS.SAVE_RESULT:{const{imgList:n,imgIndex:s,onSave:r}=e;return r==null||r(n[s],s,n),__spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT:{const{imgList:n,basicIndex:s,resultList:r,annotationEngine:i,basicResultList:a}=e;if(!i)return e;const[u]=i.toolInstance.exportData();let A=u;if((a==null?void 0:a.length)>0){const I=(c=a[s])==null?void 0:c.id,d=u.map(O=>__spreadProps(__spreadValues({},O),{sourceID:I}));A=___default.default.cloneDeep(r).filter(O=>O.sourceID!==I),A.push(...d)}return __spreadProps(__spreadValues({},e),{resultList:A,imgList:n})}case Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX:{const{toolInstance:n,step:s,imgList:r,imgIndex:i,stepList:a,annotationEngine:u,resultList:A,basicResultList:I}=e;if(!n||!u)return e;const d=t.payload.basicIndex,O=(p=I[d])==null?void 0:p.id,m=index.jsonParser((g=r[i])==null?void 0:g.result),f=(A||[]).filter(P=>P.sourceID===O),L=getStepConfig(a,s),{dataSourceStep:C,tool:R}=L,D=getStepConfig(a,C);let S=[];return C&&R&&(S=(N=m[`step_${C}`])==null?void 0:N.result,(S==null?void 0:S.length)>0?(u.setBasicInfo(D.tool,S[d]),u.launchOperation()):(u.setBasicInfo(D.tool),u.forbidOperation(),es.message.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),n.setResult(f),n.history.initRecord(f,!0),__spreadProps(__spreadValues({},e),{basicIndex:d})}case Actions.ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:n}=t.payload;return __spreadProps(__spreadValues({},e),{triggerEventAfterIndexChanged:!!n})}case Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA:{const{imgList:n,step:s,toolInstance:r,annotationEngine:i,stepList:a}=e;if(!r||!i)return e;const u=StepUtils.getCurrentStepInfo(s,a),{nextIndex:A,imgNode:I,nextBasicIndex:d,imgError:O}=t.payload,m=d!=null?d:0,f=index.jsonParser((l=n[A])==null?void 0:l.result),L=f[`step_${s}`],C=!L,R={rotate:(E=f.rotate)!=null?E:0,valid:(h=f.valid)!=null?h:!0};I&&O!==!0&&i.setImgNode(I,R);const D=getStepConfig(a,s),{dataSourceStep:S,tool:P}=D,B=getStepConfig(a,S),q=S&&P,v=(x=(b=f[`step_${S}`])==null?void 0:b.result)!=null?x:[],y=AnnotationDataUtils.getInitialResultList(L==null?void 0:L.result,r,D,v,C);if(i.launchOperation(),q&&((v==null?void 0:v.length)>0?i.setBasicInfo(B.tool,v[m]):(i.setBasicInfo(B.tool),i.forbidOperation(),es.message.info("\u5F53\u524D\u6587\u4EF6\u4E0D\u5B58\u5728\u4F9D\u8D56\u6570\u636E"))),u.tool!=="check"){const G=(j=(F=v[m])==null?void 0:F.id)!=null?j:"",z=q?y.filter(M=>lbAnnotation.CommonToolUtils.isSameSourceID(M.sourceID,G)):y;r.setResult(z),r.history.initRecord(y,!0)}return __spreadProps(__spreadValues({},e),{imgIndex:A,basicIndex:m,basicResultList:v,resultList:y})}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG:return __spreadProps(__spreadValues({},e),{config:(w=t.payload.config)!=null?w:"{}"});case Actions.ANNOTATION_ACTIONS.SET_TASK_CONFIG:{const{stepList:n,step:s}=t.payload;return __spreadProps(__spreadValues({},e),{stepList:n,step:s})}case Actions.ANNOTATION_ACTIONS.INIT_TOOL:{const{imgNode:n}=e,{toolInstance:s,annotationEngine:r}=updateToolInstance(e,n);return __spreadProps(__spreadValues({},e),{toolInstance:s,annotationEngine:r})}case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT:return __spreadProps(__spreadValues({},e),{onSubmit:t.payload.onSubmit});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SAVE:return __spreadProps(__spreadValues({},e),{onSave:t.payload.onSave});case Actions.ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA:return __spreadProps(__spreadValues({},e),{getFileData:t.payload.getFileData});case Actions.ANNOTATION_ACTIONS.SET_FILE_DATA:{const{fileData:n,index:s}=t.payload,{imgList:r}=e;return r[s]=__spreadValues(__spreadValues({},r[s]),n),__spreadProps(__spreadValues({},e),{imgList:r})}case Actions.ANNOTATION_ACTIONS.UPDATE_ROTATE:{const{toolInstance:n}=e;return n==null||n.updateRotate(),e}case Actions.ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT:{const{toolInstance:n,imgIndex:s,imgList:r,step:i}=e;if(!n)return e;if(s===0||s>=r.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),e;const a=r[s-1].result;if(!a)return e;const u=AnnotationDataUtils.copyResultChange(a,i,(U=r[s].result)!=null?U:"");r[s].result=u;const I=index.jsonParser(u)[`step_${i}`],d=(I==null?void 0:I.result)||[];return n.setResult(d),n.history.pushHistory(d),__spreadProps(__spreadValues({},e),{imgList:[...r]})}case Actions.ANNOTATION_ACTIONS.SET_STEP:{const{stepList:n,annotationEngine:s}=e,{toStep:r}=t.payload;if(!s)return e;const i=getStepConfig(n,r);return s.setToolName(i.tool,i.config),__spreadProps(__spreadValues({},e),{step:r,toolInstance:s.toolInstance})}case Actions.ANNOTATION_ACTIONS.SET_LOADING:{const{loading:n}=t.payload;return __spreadProps(__spreadValues({},e),{loading:!!n})}default:return e}};exports.LoadImageAndFileData=LoadImageAndFileData,exports.annotationReducer=annotationReducer,exports.getStepConfig=getStepConfig,exports.getTotalPage=getTotalPage;
@@ -1,11 +1,18 @@
1
1
  import React from 'react';
2
- import { IStepInfo } from './types/step';
3
- import { OnSubmit, GetFileData, OnSave } from './types/data';
4
2
  import { ToolInstance } from './store/annotation/types';
3
+ import { GetFileData, OnSave, OnSubmit, IFileItem } from './types/data';
4
+ import { Footer, Header, Sider } from './types/main';
5
+ import { IStepInfo } from './types/step';
6
+ interface IAnnotationStyle {
7
+ strokeColor: string;
8
+ fillColor: string;
9
+ textColor: string;
10
+ toolColor: any;
11
+ }
5
12
  export interface AppProps {
6
13
  exportData?: (data: any[]) => void;
7
14
  goBack?: () => void;
8
- imgList: string[];
15
+ imgList: IFileItem[];
9
16
  config: string;
10
17
  stepList: IStepInfo[];
11
18
  step: number;
@@ -16,9 +23,9 @@ export interface AppProps {
16
23
  initialIndex?: number;
17
24
  className?: string;
18
25
  toolInstance: ToolInstance;
19
- header?: React.ReactNode;
20
- footer?: React.ReactNode;
21
- sider?: React.ReactNode;
26
+ header?: Header;
27
+ footer?: Footer;
28
+ sider?: Sider;
22
29
  style?: {
23
30
  layout?: {
24
31
  [key: string]: any;
@@ -36,6 +43,15 @@ export interface AppProps {
36
43
  setToolInstance?: (tool: ToolInstance) => void;
37
44
  mode?: 'light' | 'dark';
38
45
  defaultLang: 'en' | 'cn';
46
+ leftSider?: () => React.ReactNode | React.ReactNode;
47
+ dataInjectionAtCreation: (annotationData: any) => {};
48
+ renderEnhance: {
49
+ staticRender?: (canvas: HTMLCanvasElement, data: any, style: IAnnotationStyle) => void;
50
+ selectedRender?: (canvas: HTMLCanvasElement, data: any, style: IAnnotationStyle) => void;
51
+ creatingRender?: (canvas: HTMLCanvasElement, data: any, style: IAnnotationStyle) => void;
52
+ };
39
53
  }
40
- declare const _default: import("react-redux").ConnectedComponent<React.FC<AppProps>, import("react-redux").Omit<AppProps, "toolInstance">>;
54
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<AppProps>, import("react-redux").Omit<AppProps & {
55
+ children?: React.ReactNode;
56
+ }, "toolInstance">>;
41
57
  export default _default;
@@ -1,9 +1,10 @@
1
- import React from 'react';
2
- import { i18n } from '@labelbee/lb-utils';
1
+ import { AppProps } from '@/App';
3
2
  import AnnotationView from '@/components/AnnotationView';
3
+ import { i18n } from '@labelbee/lb-utils';
4
+ import React from 'react';
4
5
  export declare const store: import("redux").Store<{}, import("redux").Action<any>> & {
5
6
  dispatch: unknown;
6
7
  };
7
- declare const _default: React.ForwardRefExoticComponent<Pick<any, string | number | symbol> & React.RefAttributes<unknown>>;
8
+ declare const _default: React.ForwardRefExoticComponent<AppProps & React.RefAttributes<unknown>>;
8
9
  export default _default;
9
10
  export { AnnotationView, i18n };
@@ -1,4 +1,4 @@
1
- import { AnnotationState, AnnotationActionTypes } from './types';
1
+ import { AnnotationActionTypes, AnnotationState } from './types';
2
2
  export declare const getStepConfig: (stepList: any[], step: number) => any;
3
3
  /**
4
4
  * 获取当前文件列表的总页数
@@ -1,19 +1,15 @@
1
1
  import React from 'react';
2
2
  import { AppState } from 'src/store';
3
3
  import { ImgAttributeState } from 'src/store/imgAttribute/types';
4
- import { IFileItem } from '@/types/data';
5
- import { IStepInfo } from '@/types/step';
6
4
  import { AnnotationEngine } from '@labelbee/lb-annotation';
7
- interface IProps extends AppState {
5
+ import { AppProps } from '@/App';
6
+ interface IProps extends AppState, AppProps {
8
7
  imgAttribute: ImgAttributeState;
9
- imgList: IFileItem[];
10
- exportData: any[];
11
- config: string;
12
- stepList: IStepInfo[];
13
- step: number;
14
8
  imgIndex: number;
15
9
  annotationEngine: AnnotationEngine;
16
10
  loading: boolean;
17
11
  }
18
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "dispatch" | "imgAttribute" | "toolStyle">>;
12
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
13
+ children?: React.ReactNode;
14
+ }, "imgAttribute" | "toolStyle" | "dispatch">>;
19
15
  export default _default;
@@ -1,4 +1,4 @@
1
- import React from 'react';
2
1
  import { AppProps } from '@/App';
2
+ import React from 'react';
3
3
  declare const MainView: React.FC<AppProps>;
4
4
  export default MainView;
@@ -3,5 +3,7 @@ import { GraphToolInstance } from '@/store/annotation/types';
3
3
  interface IProps {
4
4
  toolInstance: GraphToolInstance;
5
5
  }
6
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "toolInstance">>;
6
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
7
+ children?: React.ReactNode;
8
+ }, "toolInstance">>;
7
9
  export default _default;
@@ -8,5 +8,7 @@ interface IProps {
8
8
  imgList: AnnotationFileList;
9
9
  imgIndex: number;
10
10
  }
11
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
11
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
12
+ children?: React.ReactNode;
13
+ }, "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
12
14
  export default _default;
@@ -5,5 +5,7 @@ interface IProps {
5
5
  toolInstance: GraphToolInstance;
6
6
  stepInfo: IStepInfo;
7
7
  }
8
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "toolInstance" | "stepInfo">>;
8
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
9
+ children?: React.ReactNode;
10
+ }, "toolInstance" | "stepInfo">>;
9
11
  export default _default;
@@ -5,5 +5,7 @@ interface IProps {
5
5
  toolInstance: TagOperation;
6
6
  }
7
7
  export declare const expandIconFuc: ({ isActive }: any) => JSX.Element;
8
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "imgIndex" | "toolInstance">>;
8
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
9
+ children?: React.ReactNode;
10
+ }, "imgIndex" | "toolInstance">>;
9
11
  export default _default;
@@ -16,5 +16,7 @@ interface IProps {
16
16
  basicResultList: any[];
17
17
  }
18
18
  export declare const SingleTextInput: (props: any) => JSX.Element;
19
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "stepList" | "step" | "imgIndex" | "basicResultList" | "toolInstance" | "dispatch" | "triggerEventAfterIndexChanged">>;
19
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
20
+ children?: React.ReactNode;
21
+ }, "stepList" | "step" | "imgIndex" | "basicResultList" | "toolInstance" | "triggerEventAfterIndexChanged" | "dispatch">>;
20
22
  export default _default;
@@ -1,7 +1,9 @@
1
- import React from 'react';
2
1
  import { EToolName } from '@/data/enums/ToolType';
2
+ import { Sider } from '@/types/main';
3
+ import React from 'react';
3
4
  interface IProps {
4
5
  toolName?: EToolName;
6
+ sider?: Sider;
5
7
  }
6
8
  declare const Sidebar: React.FC<IProps>;
7
9
  export default Sidebar;
@@ -3,5 +3,7 @@ import { ToolInstance } from '@/store/annotation/types';
3
3
  interface IProps {
4
4
  toolInstance: ToolInstance;
5
5
  }
6
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "toolInstance">>;
6
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
7
+ children?: React.ReactNode;
8
+ }, "toolInstance">>;
7
9
  export default _default;
@@ -4,5 +4,7 @@ interface IProps {
4
4
  toolInstance: ToolInstance;
5
5
  mode?: 'light' | 'dark';
6
6
  }
7
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "toolInstance">>;
7
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
8
+ children?: React.ReactNode;
9
+ }, "toolInstance">>;
8
10
  export default _default;
@@ -1,5 +1,6 @@
1
- import React from 'react';
1
+ import { Footer } from '@/types/main';
2
2
  import { IStepInfo } from '@/types/step';
3
+ import React from 'react';
3
4
  interface IPageProps {
4
5
  jumpSkip: Function;
5
6
  imgIndex: number;
@@ -16,7 +17,10 @@ interface IProps {
16
17
  basicResultList: any[];
17
18
  basicIndex: number;
18
19
  mode?: 'light' | 'dark';
20
+ footer?: Footer;
19
21
  }
20
22
  export declare const footerCls: string;
21
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "stepList" | "step" | "imgIndex" | "basicResultList" | "basicIndex" | "totalPage">>;
23
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
24
+ children?: React.ReactNode;
25
+ }, "stepList" | "step" | "imgIndex" | "basicResultList" | "basicIndex" | "totalPage">>;
22
26
  export default _default;
@@ -9,5 +9,7 @@ interface IProps {
9
9
  exportData?: (imgList: IFileItem[]) => void;
10
10
  dispatch: Dispatch;
11
11
  }
12
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "imgList" | "toolInstance" | "onSubmit" | "dispatch">>;
12
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
13
+ children?: React.ReactNode;
14
+ }, "imgList" | "toolInstance" | "onSubmit" | "dispatch">>;
13
15
  export default _default;
@@ -8,5 +8,7 @@ interface IProps {
8
8
  stepList: IStepInfo[];
9
9
  step: number;
10
10
  }
11
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps, "stepList" | "step">>;
11
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
12
+ children?: React.ReactNode;
13
+ }, "stepList" | "step">>;
12
14
  export default _default;
@@ -1,11 +1,13 @@
1
- import React from 'react';
2
- import { IFileItem } from '@/types/data';
3
- import { AnnotationEngine } from '@labelbee/lb-annotation';
4
1
  import { EToolName } from '@/data/enums/ToolType';
2
+ import { IFileItem } from '@/types/data';
3
+ import { Header } from '@/types/main';
5
4
  import { IStepInfo } from '@/types/step';
5
+ import { AnnotationEngine } from '@labelbee/lb-annotation';
6
+ import React from 'react';
6
7
  interface IToolHeaderProps {
7
8
  goBack?: (imgList?: IFileItem[]) => void;
8
9
  exportData?: (data: any[]) => void;
10
+ header?: Header;
9
11
  headerName?: string;
10
12
  imgList: IFileItem[];
11
13
  annotationEngine: AnnotationEngine;
@@ -15,5 +17,7 @@ interface IToolHeaderProps {
15
17
  stepList: IStepInfo[];
16
18
  step: number;
17
19
  }
18
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IToolHeaderProps>, import("react-redux").Omit<IToolHeaderProps, "stepList" | "step" | "imgList" | "annotationEngine" | "stepInfo" | "stepProgress" | "toolName">>;
20
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IToolHeaderProps>, import("react-redux").Omit<IToolHeaderProps & {
21
+ children?: React.ReactNode;
22
+ }, "stepList" | "step" | "imgList" | "annotationEngine" | "toolName" | "stepInfo" | "stepProgress">>;
19
23
  export default _default;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _=require("lodash");function _interopDefaultLegacy(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var ___default=_interopDefaultLegacy(_);const jsonParser=(r,t={})=>{try{return typeof r=="string"?JSON.parse(r):___default.default.isObject(r)?r:t}catch(e){return t}},getNewNode=(r,t)=>r||___default.default.isNull(r)?r:t,classnames=r=>{if(Array.isArray(r))return r.join(" ");if(___default.default.isObject(r)){const t=[];return Object.keys(r).forEach(e=>{r[e]&&t.push(e)}),t.join(" ")}return""};exports.classnames=classnames,exports.getNewNode=getNewNode,exports.jsonParser=jsonParser;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _=require("lodash");function _interopDefaultLegacy(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var ___default=_interopDefaultLegacy(_);const jsonParser=(r,e={})=>{try{return typeof r=="string"?JSON.parse(r):___default.default.isObject(r)?r:e}catch(t){return e}},classnames=r=>{if(Array.isArray(r))return r.join(" ");if(___default.default.isObject(r)){const e=[];return Object.keys(r).forEach(t=>{r[t]&&e.push(t)}),e.join(" ")}return""};exports.classnames=classnames,exports.jsonParser=jsonParser;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),es=require("antd/es"),reactRedux=require("react-redux"),_=require("lodash"),index=require("../../../index.js"),useSize=require("../../../hooks/useSize.js"),actionCreators=require("../../../store/toolStyle/actionCreators.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$1=require("../../../components/ImageError/index.js"),lbUtils=require("@labelbee/lb-utils");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,r)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,__spreadValues=(e,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(e,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(e,r,t[r]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const AnnotationOperation=e=>{const[,t]=React.useState(0),{imgAttribute:r,toolStyle:i,toolInstance:n,annotationEngine:o,loading:u,imgList:c,imgIndex:f}=e,l=React.useRef(null),d=React.useRef(null),s=useSize(l);React.useEffect(()=>{index.store.dispatch(actionCreators.InitToolStyleConfig())},[]),React.useEffect(()=>{if(!!o)switch(lbUtils.i18n.language){case"cn":case"en":o.setLang(lbUtils.i18n.language);break}},[o]),React.useEffect(()=>{n&&(n.singleOn("messageError",a=>{es.message.error(a)}),n.singleOn("messageInfo",a=>{es.message.info(a)}),n.singleOn("changeAnnotationShow",()=>{t(a=>a+1)}))},[n]),React.useEffect(()=>{n&&n.setImgAttribute(r)},[r]),React.useEffect(()=>{n&&n.setStyle(i),o&&o.setStyle(i)},[i]),React.useEffect(()=>{(n==null?void 0:n.setSize)&&n.setSize(s),o&&o.setSize(s)},[s]);const g=()=>{const a=c[f];!a.url||lbAnnotation.ImgUtils.load(a.url).then(p=>{o.setImgNode(p)})};return React__default.default.createElement("div",{ref:l,className:"annotationOperation"},React__default.default.createElement(es.Spin,{spinning:u,delay:500},React__default.default.createElement("div",{className:"canvas",ref:d,style:s,id:"toolContainer"})),(n==null?void 0:n.isImgError)===!0&&React__default.default.createElement(index$1,__spreadProps(__spreadValues({},s),{reloadImage:g,backgroundColor:"#e2e2e2",ignoreOffsetY:!0})))},mapStateToProps=e=>{const t=___default.default.pickBy(e.annotation,(r,i)=>["imgList","imgIndex","stepList","step","toolInstance","annotationEngine","loading"].includes(i));return __spreadValues({imgAttribute:e.imgAttribute,toolStyle:e.toolStyle},t)};var AnnotationOperation$1=reactRedux.connect(mapStateToProps)(AnnotationOperation);module.exports=AnnotationOperation$1;
1
+ "use strict";var React=require("react"),es=require("antd/es"),reactRedux=require("react-redux"),_=require("lodash"),index=require("../../../index.js"),useSize=require("../../../hooks/useSize.js"),actionCreators=require("../../../store/toolStyle/actionCreators.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$1=require("../../../components/ImageError/index.js"),lbUtils=require("@labelbee/lb-utils");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,r)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,__spreadValues=(e,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(e,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(e,r,t[r]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const AnnotationOperation=e=>{const[,t]=React.useState(0),{imgAttribute:r,toolStyle:i,toolInstance:n,annotationEngine:a,loading:f,imgList:d,imgIndex:g,dataInjectionAtCreation:l,renderEnhance:u}=e,c=React.useRef(null),p=React.useRef(null),s=useSize(c);React.useEffect(()=>{index.store.dispatch(actionCreators.InitToolStyleConfig())},[]),React.useEffect(()=>{if(!!a){switch(lbUtils.i18n.language){case"cn":case"en":a.setLang(lbUtils.i18n.language);break}a==null||a.setDataInjectionAtCreation(l),a==null||a.setRenderEnhance(u)}},[a,l,u]),React.useEffect(()=>{n&&(n.singleOn("messageError",o=>{es.message.error(o)}),n.singleOn("messageInfo",o=>{es.message.info(o)}),n.singleOn("changeAnnotationShow",()=>{t(o=>o+1)}))},[n]),React.useEffect(()=>{n&&n.setImgAttribute(r)},[r]),React.useEffect(()=>{n&&n.setStyle(i),a&&a.setStyle(i)},[i]),React.useEffect(()=>{(n==null?void 0:n.setSize)&&n.setSize(s),a&&a.setSize(s)},[s]);const m=()=>{const o=d[g];!o.url||lbAnnotation.ImgUtils.load(o.url).then(v=>{a.setImgNode(v)})};return React__default.default.createElement("div",{ref:c,className:"annotationOperation"},React__default.default.createElement(es.Spin,{spinning:f,delay:500},React__default.default.createElement("div",{className:"canvas",ref:p,style:s,id:"toolContainer"})),(n==null?void 0:n.isImgError)===!0&&React__default.default.createElement(index$1,__spreadProps(__spreadValues({},s),{reloadImage:m,backgroundColor:"#e2e2e2",ignoreOffsetY:!0})))},mapStateToProps=e=>{const t=___default.default.pickBy(e.annotation,(r,i)=>["imgList","imgIndex","stepList","step","toolInstance","annotationEngine","loading"].includes(i));return __spreadValues({imgAttribute:e.imgAttribute,toolStyle:e.toolStyle},t)};var AnnotationOperation$1=reactRedux.connect(mapStateToProps)(AnnotationOperation);module.exports=AnnotationOperation$1;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),index=require("../../components/customResizeHook/index.js"),index$2=require("./toolHeader/index.js"),index$3=require("./annotationOperation/index.js"),index$5=require("./sidebar/index.js"),index$4=require("./toolFooter/index.js"),index$6=require("../../constant/index.js"),index$1=require("../../utils/index.js"),es=require("antd/es");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,a)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,__spreadValues=(e,t)=>{for(var a in t||(t={}))__hasOwnProp.call(t,a)&&__defNormalProp(e,a,t[a]);if(__getOwnPropSymbols)for(var a of __getOwnPropSymbols(t))__propIsEnum.call(t,a)&&__defNormalProp(e,a,t[a]);return e};const{Sider,Content}=es.Layout,layoutCls=`${index$6.prefix}-layout`,MainView=e=>{var t,a,r,l;return React__default.default.createElement(index.ViewportProvider,null,React__default.default.createElement(es.Layout,{className:`${layoutCls} ${e.className}`,style:(t=e.style)==null?void 0:t.layout},React__default.default.createElement("header",{className:`${layoutCls}__header`,style:(a=e.style)==null?void 0:a.header},index$1.getNewNode(e.header,React__default.default.createElement(index$2,{headerName:e.headerName,goBack:e.goBack,exportData:e.exportData}))),React__default.default.createElement(es.Layout,null,React__default.default.createElement(Content,{className:`${layoutCls}__content`},React__default.default.createElement(index$3,__spreadValues({},e)),index$1.getNewNode(e.footer,React__default.default.createElement(index$4.default,{style:(r=e.style)==null?void 0:r.footer,mode:e.mode}))),React__default.default.createElement(Sider,{className:`${layoutCls}__side`,width:"auto",style:(l=e.style)==null?void 0:l.sider},index$1.getNewNode(e.sider,React__default.default.createElement(index$5,null))))))};module.exports=MainView;
1
+ "use strict";var index=require("../../components/customResizeHook/index.js"),index$5=require("../../constant/index.js"),es=require("antd/es"),React=require("react"),index$2=require("./annotationOperation/index.js"),index$4=require("./sidebar/index.js"),index$3=require("./toolFooter/index.js"),index$1=require("./toolHeader/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,a)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,__spreadValues=(e,t)=>{for(var a in t||(t={}))__hasOwnProp.call(t,a)&&__defNormalProp(e,a,t[a]);if(__getOwnPropSymbols)for(var a of __getOwnPropSymbols(t))__propIsEnum.call(t,a)&&__defNormalProp(e,a,t[a]);return e};const{Sider,Content}=es.Layout,layoutCls=`${index$5.prefix}-layout`,MainView=e=>{var t,a,r,l;return React__default.default.createElement(index.ViewportProvider,null,React__default.default.createElement(es.Layout,{className:`${layoutCls} ${e.className}`,style:(t=e.style)==null?void 0:t.layout},React__default.default.createElement("header",{className:`${layoutCls}__header`,style:(a=e.style)==null?void 0:a.header},React__default.default.createElement(index$1,{header:e==null?void 0:e.header,headerName:e.headerName,goBack:e.goBack,exportData:e.exportData}),","),React__default.default.createElement(es.Layout,null,e==null?void 0:e.leftSider,React__default.default.createElement(Content,{className:`${layoutCls}__content`},React__default.default.createElement(index$2,__spreadValues({},e)),React__default.default.createElement(index$3.default,{style:(r=e.style)==null?void 0:r.footer,mode:e.mode,footer:e==null?void 0:e.footer})),React__default.default.createElement(Sider,{className:`${layoutCls}__side`,width:"auto",style:(l=e.style)==null?void 0:l.sider},React__default.default.createElement(index$4,{sider:e==null?void 0:e.sider})))))};module.exports=MainView;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),es=require("antd/es"),icon_rectPattern=require("../../../assets/annotation/rectTool/icon_rectPattern.svg.js"),icon_polygon_a=require("../../../assets/annotation/polygonTool/icon_polygon_a.svg.js"),icon_point_a=require("../../../assets/annotation/pointTool/icon_point_a.svg.js"),icon_line_a=require("../../../assets/annotation/lineTool/icon_line_a.svg.js"),StepUtils=require("../../../utils/StepUtils.js"),reactRedux=require("react-redux"),ToolType=require("../../../data/enums/ToolType.js"),index$4=require("./ImgAttributeInfo/index.js"),index=require("./SwitchAttributeList/index.js"),index$5=require("./GeneralOperation/index.js"),index$1=require("./AnnotationText/index.js"),index$8=require("./ToolStyle/index.js"),index$3=require("./ClearIcon/index.js"),index$2=require("./TagSidebar/index.js"),index$7=require("../../../constant/index.js"),index$6=require("./TextToolSidebar/index.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const{Panel}=es.Collapse,toolList=[{toolName:ToolType.EToolName.Rect,commonSvg:icon_rectPattern,selectedSvg:icon_rectPattern},{toolName:ToolType.EToolName.Polygon,commonSvg:icon_polygon_a,selectedSvg:icon_polygon_a},{toolName:ToolType.EToolName.Line,commonSvg:icon_line_a,selectedSvg:icon_line_a,pattern:ToolType.EToolName.Line},{toolName:ToolType.EToolName.Point,commonSvg:icon_point_a,selectedSvg:icon_point_a,pattern:"drawPoint"}],sidebarCls=`${index$7.prefix}-sidebar`,Sidebar=()=>{const e=reactRedux.useSelector(t=>StepUtils.getCurrentStepInfo(t.annotation.step,t.annotation.stepList)),a=e==null?void 0:e.tool,{t:l}=reactI18next.useTranslation();if(!a)return null;if([ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon].includes(a)){const t=toolList==null?void 0:toolList.find(n=>(n==null?void 0:n.toolName)===a),o=n=>{const r=React__default.default.createElement(index$8,null);return React__default.default.createElement(Panel,{header:l("Style"),className:"panel",key:n},r)};return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__level`},React__default.default.createElement(es.Row,{className:`${sidebarCls}__toolsOption`},t&&React__default.default.createElement("a",null,React__default.default.createElement("img",{className:`${sidebarCls}__singleTool`,src:t==null?void 0:t.selectedSvg})))),React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),React__default.default.createElement(index,null),React__default.default.createElement(index$1,null),React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$2.expandIconFuc},o("1"),React__default.default.createElement(Panel,{header:React__default.default.createElement("div",null,l("Adjust"),React__default.default.createElement(index$3,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$4,null))),React__default.default.createElement(index$5,null))}return a===ToolType.EToolName.Tag?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$2.default,null)):a===ToolType.EToolName.Text?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$6.default,null)):null};module.exports=Sidebar;
1
+ "use strict";var icon_line_a=require("../../../assets/annotation/lineTool/icon_line_a.svg.js"),icon_point_a=require("../../../assets/annotation/pointTool/icon_point_a.svg.js"),icon_polygon_a=require("../../../assets/annotation/polygonTool/icon_polygon_a.svg.js"),icon_rectPattern=require("../../../assets/annotation/rectTool/icon_rectPattern.svg.js"),index$4=require("../../../constant/index.js"),ToolType=require("../../../data/enums/ToolType.js"),StepUtils=require("../../../utils/StepUtils.js"),es=require("antd/es"),React=require("react"),reactI18next=require("react-i18next"),reactRedux=require("react-redux"),index$7=require("./AnnotationText/index.js"),index$1=require("./ClearIcon/index.js"),index$8=require("./GeneralOperation/index.js"),index$2=require("./ImgAttributeInfo/index.js"),index$6=require("./SwitchAttributeList/index.js"),index=require("./TagSidebar/index.js"),index$3=require("./TextToolSidebar/index.js"),index$5=require("./ToolStyle/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const{Panel}=es.Collapse,toolList=[{toolName:ToolType.EToolName.Rect,commonSvg:icon_rectPattern,selectedSvg:icon_rectPattern},{toolName:ToolType.EToolName.Polygon,commonSvg:icon_polygon_a,selectedSvg:icon_polygon_a},{toolName:ToolType.EToolName.Line,commonSvg:icon_line_a,selectedSvg:icon_line_a,pattern:ToolType.EToolName.Line},{toolName:ToolType.EToolName.Point,commonSvg:icon_point_a,selectedSvg:icon_point_a,pattern:"drawPoint"}],sidebarCls=`${index$4.prefix}-sidebar`,Sidebar=({sider:e})=>{const o=reactRedux.useSelector(t=>StepUtils.getCurrentStepInfo(t.annotation.step,t.annotation.stepList)),n=o==null?void 0:o.tool,{t:r}=reactI18next.useTranslation();if(!n)return null;const a=toolList==null?void 0:toolList.find(t=>(t==null?void 0:t.toolName)===n),f=t=>{const p=React__default.default.createElement(index$5,null);return React__default.default.createElement(Panel,{header:r("Style"),className:"panel",key:t},p)},i=React__default.default.createElement("div",{className:`${sidebarCls}__level`},React__default.default.createElement(es.Row,{className:`${sidebarCls}__toolsOption`},a&&React__default.default.createElement("a",null,React__default.default.createElement("img",{className:`${sidebarCls}__singleTool`,src:a==null?void 0:a.selectedSvg})))),s=React__default.default.createElement(index$6,null),c=React__default.default.createElement(index$7,null),u=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index.expandIconFuc},f("1")),d=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index.expandIconFuc},React__default.default.createElement(Panel,{header:React__default.default.createElement("div",null,r("Adjust"),React__default.default.createElement(index$1,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$2,null))),m=React__default.default.createElement(index$8,null),v=React__default.default.createElement(index.default,null),E=React__default.default.createElement(index$3.default,null),l=React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`});return e?typeof e=="function"?React__default.default.createElement("div",{className:`${sidebarCls}`},e({toolIcon:i,attributeList:s,annotationText:c,toolStyle:u,imageAttributeInfo:d,operation:m,tagToolSideBar:v,textToolSideBar:E,horizontal:l})):e:[ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon].includes(n)?React__default.default.createElement("div",{className:`${sidebarCls}`},i,l,s,c,l,React__default.default.createElement("div",{className:`${sidebarCls}__content`},u,d),m):n===ToolType.EToolName.Tag?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index.default,null)):n===ToolType.EToolName.Text?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$3.default,null)):null};module.exports=Sidebar;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),es=require("antd/es"),icons=require("@ant-design/icons"),reactRedux=require("react-redux"),reducer=require("../../../store/annotation/reducer.js"),index$2=require("./HiddenTips/index.js"),index$3=require("./PageNumber/index.js"),index$4=require("./ZoomController/index.js"),index$1=require("./FooterTips/index.js"),index=require("../../../constant/index.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const PageInput=e=>{const{jumpSkip:l,imgIndex:a}=e,[o,n]=React.useState(a),s=React.useRef(null);React.useEffect(()=>{n(a+1)},[a]);const i=t=>{/^\d*$/.test(t.target.value)&&n(t.target.value)},r=t=>{t.keyCode===13&&l(t.target.value)};return React__default.default.createElement(es.Input,{className:"pageInput",ref:s,onChange:i,value:o,onKeyDown:r})},footerCls=`${index.prefix}-footer`,FooterDivider=()=>React__default.default.createElement(es.Divider,{type:"vertical",style:{background:"rgba(153, 153, 153, 1)",height:"16px"}}),ToolFooter=e=>{var l;const{stepList:a,step:o,basicResultList:n,basicIndex:s,mode:i}=e,r=reactRedux.useDispatch(),{t}=reactI18next.useTranslation(),u=(l=a[o-1])!=null?l:{},c=()=>{r(actionCreators.PageBackward())},d=()=>{r(actionCreators.PageForward())},g=p=>{const f=~~p-1;r(actionCreators.PageJump(f))},m=!!u.dataSourceStep;return React__default.default.createElement("div",{className:`${footerCls}`,style:e.style},React__default.default.createElement(index$1,null),React__default.default.createElement("div",{style:{flex:1}}),React__default.default.createElement(index$2,null),React__default.default.createElement(index$3,null),React__default.default.createElement("div",{className:`${footerCls}__pagination`},React__default.default.createElement(icons.LeftOutlined,{className:`${footerCls}__highlight`,onClick:c}),React__default.default.createElement(PageInput,{imgIndex:e.imgIndex,jumpSkip:g}),"/",React__default.default.createElement("span",{className:`${footerCls}__pageAll`},e.totalPage),React__default.default.createElement(icons.RightOutlined,{className:`${footerCls}__highlight`,onClick:d})),m&&n.length>0&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(FooterDivider,null),React__default.default.createElement("span",null,t("curItems",{current:s+1,total:n.length}))),React__default.default.createElement(FooterDivider,null),React__default.default.createElement(index$4,{mode:i}))},mapStateToProps=e=>({totalPage:reducer.getTotalPage(e.annotation),imgIndex:e.annotation.imgIndex,stepList:e.annotation.stepList,step:e.annotation.step,basicIndex:e.annotation.basicIndex,basicResultList:e.annotation.basicResultList});var ToolFooter$1=reactRedux.connect(mapStateToProps)(ToolFooter);exports.PageInput=PageInput,exports.default=ToolFooter$1,exports.footerCls=footerCls;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("../../../constant/index.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),reducer=require("../../../store/annotation/reducer.js"),icons=require("@ant-design/icons"),es=require("antd/es"),React=require("react"),reactI18next=require("react-i18next"),reactRedux=require("react-redux"),index$1=require("./FooterTips/index.js"),index$2=require("./HiddenTips/index.js"),index$3=require("./PageNumber/index.js"),index$4=require("./ZoomController/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const PageInput=e=>{const{jumpSkip:o,imgIndex:n}=e,[s,r]=React.useState(n),l=React.useRef(null);React.useEffect(()=>{r(n+1)},[n]);const i=t=>{/^\d*$/.test(t.target.value)&&r(t.target.value)},a=t=>{t.keyCode===13&&o(t.target.value)};return React__default.default.createElement(es.Input,{className:"pageInput",ref:l,onChange:i,value:s,onKeyDown:a})},footerCls=`${index.prefix}-footer`,FooterDivider=()=>React__default.default.createElement(es.Divider,{type:"vertical",style:{background:"rgba(153, 153, 153, 1)",height:"16px"}}),ToolFooter=e=>{var o;const{stepList:n,step:s,basicResultList:r,basicIndex:l,mode:i,footer:a}=e,t=reactRedux.useDispatch(),{t:u}=reactI18next.useTranslation(),v=(o=n[s-1])!=null?o:{},E=()=>{t(actionCreators.PageBackward())},I=()=>{t(actionCreators.PageForward())},h=y=>{const $=~~y-1;t(actionCreators.PageJump($))},_=!!v.dataSourceStep,d=React__default.default.createElement(index$1,null),f=React__default.default.createElement(index$2,null),m=React__default.default.createElement(index$3,null),p=React__default.default.createElement("div",{className:`${footerCls}__pagination`},React__default.default.createElement(icons.LeftOutlined,{className:`${footerCls}__highlight`,onClick:E}),React__default.default.createElement(PageInput,{imgIndex:e.imgIndex,jumpSkip:h}),"/",React__default.default.createElement("span",{className:`${footerCls}__pageAll`},e.totalPage),React__default.default.createElement(icons.RightOutlined,{className:`${footerCls}__highlight`,onClick:I})),g=React__default.default.createElement(index$4,{mode:i}),x=React__default.default.createElement("span",null,u("curItems",{current:l+1,total:r.length})),c=React__default.default.createElement(FooterDivider,null);return a?typeof a=="function"?React__default.default.createElement("div",{className:`${footerCls}`,style:e.style},a({footerTips:d,hiddenTips:f,pageNumber:m,pagination:p,zoomController:g,curItems:x,footerDivider:c})):a:React__default.default.createElement("div",{className:`${footerCls}`,style:e.style},d,React__default.default.createElement("div",{style:{flex:1}}),f,m,p,_&&r.length>0&&React__default.default.createElement(React__default.default.Fragment,null,c,x),c,g)},mapStateToProps=e=>({totalPage:reducer.getTotalPage(e.annotation),imgIndex:e.annotation.imgIndex,stepList:e.annotation.stepList,step:e.annotation.step,basicIndex:e.annotation.basicIndex,basicResultList:e.annotation.basicResultList});var ToolFooter$1=reactRedux.connect(mapStateToProps)(ToolFooter);exports.PageInput=PageInput,exports.default=ToolFooter$1,exports.footerCls=footerCls;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),icons=require("@ant-design/icons"),reactRedux=require("react-redux"),index$4=require("../../../index.js"),classNames=require("classnames"),index=require("../../../constant/index.js"),index$3=require("./ExportData/index.js"),index$2=require("./headerOption/index.js"),es=require("antd/es"),actionCreators=require("../../../store/annotation/actionCreators.js"),index$1=require("./StepSwitch/index.js"),lbUtils=require("@labelbee/lb-utils"),reactI18next=require("react-i18next"),useSize=require("../../../hooks/useSize.js"),_=require("lodash");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames);const NextButton=({disabled:e})=>{const{t}=reactI18next.useTranslation();return React__default.default.createElement(es.Button,{type:"primary",style:{marginLeft:10},onClick:()=>{index$4.store.dispatch(actionCreators.ToNextStep(0))},disabled:e},t("NextStep"))},NextStep=({step:e,stepProgress:t,stepList:n})=>{var r;const{t:i}=reactI18next.useTranslation(),o=(r=_.last(n))==null?void 0:r.step;if(n.length<2||e===o)return null;const a=t<1;return a?React__default.default.createElement(es.Tooltip,{title:i("StepNotFinishedNotify")},React__default.default.createElement("span",null,React__default.default.createElement(NextButton,{disabled:a}))):React__default.default.createElement(NextButton,{disabled:a})},ToolHeader=({goBack:e,exportData:t,headerName:n,imgList:r,stepProgress:i,stepInfo:o,stepList:a,step:p,annotationEngine:m})=>{var s;const v=reactRedux.useDispatch(),[,x]=React.useReducer(l=>l+1,0),c=React.useRef(null),u=useSize(c),E=React__default.default.createElement(index$3,{exportData:t}),g=()=>{v(actionCreators.ToSubmitFileData(index.ESubmitType.Quit)),e&&e(r)},d=l=>{lbUtils.i18n.changeLanguage(l),m.setLang(l),x()},f=lbUtils.i18n.language,h=(s=u==null?void 0:u.width)!=null?s:window.innerWidth;return React__default.default.createElement("div",{className:classNames__default.default(`${index.prefix}-header`),ref:c},React__default.default.createElement("div",{className:`${index.prefix}-header__title`},React__default.default.createElement(icons.LeftOutlined,{className:`${index.prefix}-header__icon`,onClick:g}),n?React__default.default.createElement("span",{className:`${index.prefix}-header__name`},n):"",a.length>1&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(index$1,{stepProgress:i}),React__default.default.createElement(NextStep,{step:p,stepProgress:i,stepList:a})),E,React__default.default.createElement("div",{id:"operationNode",className:`${index.prefix}-header__operationNode`,style:{left:h/2-174/2}},React__default.default.createElement(index$2,{stepInfo:o})),React__default.default.createElement("div",{className:`${index.prefix}-header__titlePlacement`}),React__default.default.createElement("div",{className:`${index.prefix}-header__lang`},React__default.default.createElement("span",{className:`${index.prefix}-langCN ${f==="cn"?"active":""}`,onClick:()=>d("cn")},"\u4E2D\u6587")," / ",React__default.default.createElement("span",{className:`${index.prefix}-langEN ${f==="en"?"active":""}`,onClick:()=>d("en")},"En"))))},mapStateToProps=e=>{var t;return{imgList:e.annotation.imgList,annotationEngine:e.annotation.annotationEngine,stepProgress:e.annotation.stepProgress,toolName:(t=e.annotation.stepList[e.annotation.step-1])==null?void 0:t.tool,stepList:e.annotation.stepList,stepInfo:e.annotation.stepList[e.annotation.step-1],step:e.annotation.step}};var ToolHeader$1=reactRedux.connect(mapStateToProps)(ToolHeader);module.exports=ToolHeader$1;
1
+ "use strict";var index$1=require("../../../constant/index.js"),useSize=require("../../../hooks/useSize.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),icons=require("@ant-design/icons"),lbUtils=require("@labelbee/lb-utils"),es=require("antd/es"),classNames=require("classnames"),_=require("lodash"),React=require("react"),reactI18next=require("react-i18next"),reactRedux=require("react-redux"),index$4=require("../../../index.js"),index$2=require("./ExportData/index.js"),index$3=require("./headerOption/index.js"),index=require("./StepSwitch/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var classNames__default=_interopDefaultLegacy(classNames),React__default=_interopDefaultLegacy(React);const NextButton=({disabled:e})=>{const{t}=reactI18next.useTranslation();return React__default.default.createElement(es.Button,{type:"primary",style:{marginLeft:10},onClick:()=>{index$4.store.dispatch(actionCreators.ToNextStep(0))},disabled:e},t("NextStep"))},NextStep=({step:e,stepProgress:t,stepList:a})=>{var n;const{t:o}=reactI18next.useTranslation(),i=(n=_.last(a))==null?void 0:n.step;if(a.length<2||e===i)return null;const r=t<1;return r?React__default.default.createElement(es.Tooltip,{title:o("StepNotFinishedNotify")},React__default.default.createElement("span",null,React__default.default.createElement(NextButton,{disabled:r}))):React__default.default.createElement(NextButton,{disabled:r})},ToolHeader=({goBack:e,exportData:t,header:a,headerName:n,imgList:o,stepProgress:i,stepInfo:r,stepList:c,step:g,annotationEngine:h})=>{var u;const $=reactRedux.useDispatch(),[,q]=React.useReducer(l=>l+1,0),s=React.useRef(null),d=useSize(s),L=React__default.default.createElement(index$2,{exportData:t}),S=()=>{$(actionCreators.ToSubmitFileData(index$1.ESubmitType.Quit)),e&&e(o)},f=l=>{lbUtils.i18n.changeLanguage(l),h.setLang(l),q()},p=lbUtils.i18n.language,b=(u=d==null?void 0:d.width)!=null?u:window.innerWidth,m=React__default.default.createElement(icons.LeftOutlined,{className:`${index$1.prefix}-header__icon`,onClick:S}),v=n?React__default.default.createElement("span",{className:`${index$1.prefix}-header__name`},n):"",x=c.length>1&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(index,{stepProgress:i}),React__default.default.createElement(NextStep,{step:g,stepProgress:i,stepList:c})),N=React__default.default.createElement(index$3,{stepInfo:r}),E=React__default.default.createElement("div",{className:`${index$1.prefix}-header__lang`},React__default.default.createElement("span",{className:`${index$1.prefix}-langCN ${p==="cn"?"active":""}`,onClick:()=>f("cn")},"\u4E2D\u6587")," / ",React__default.default.createElement("span",{className:`${index$1.prefix}-langEN ${p==="en"?"active":""}`,onClick:()=>f("en")},"En"));return a?typeof a=="function"?React__default.default.createElement("div",{className:classNames__default.default(`${index$1.prefix}-header`),ref:s},React__default.default.createElement("div",{className:`${index$1.prefix}-header__title`},a({backNode:m,headerNameNode:v,stepListNode:x,headerOptionNode:N,langNode:E}))):a:React__default.default.createElement("div",{className:classNames__default.default(`${index$1.prefix}-header`),ref:s},React__default.default.createElement("div",{className:`${index$1.prefix}-header__title`},m,v,x,L,React__default.default.createElement("div",{id:"operationNode",className:`${index$1.prefix}-header__operationNode`,style:{left:b/2-174/2}},N),React__default.default.createElement("div",{className:`${index$1.prefix}-header__titlePlacement`}),E))},mapStateToProps=e=>{var t;return{imgList:e.annotation.imgList,annotationEngine:e.annotation.annotationEngine,stepProgress:e.annotation.stepProgress,toolName:(t=e.annotation.stepList[e.annotation.step-1])==null?void 0:t.tool,stepList:e.annotation.stepList,stepInfo:e.annotation.stepList[e.annotation.step-1],step:e.annotation.step}};var ToolHeader$1=reactRedux.connect(mapStateToProps)(ToolHeader);module.exports=ToolHeader$1;
package/es/App.js CHANGED
@@ -1 +1 @@
1
- import n,{useEffect as i}from"react";import{connect as v}from"react-redux";import{store as _}from"./index.js";import{InitTaskData as g}from"./store/annotation/actionCreators.js";import w from"./views/MainView/index.js";import{i18n as I}from"@labelbee/lb-utils";var O=Object.defineProperty,s=Object.getOwnPropertySymbols,P=Object.prototype.hasOwnProperty,b=Object.prototype.propertyIsEnumerable,l=(e,t,r)=>t in e?O(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,y=(e,t)=>{for(var r in t||(t={}))P.call(t,r)&&l(e,r,t[r]);if(s)for(var r of s(t))b.call(t,r)&&l(e,r,t[r]);return e};const j=e=>{const{imgList:t,step:r,stepList:p,onSubmit:c,onSave:m,initialIndex:f=0,toolInstance:o,setToolInstance:a,getFileData:u,defaultLang:d="cn"}=e;return i(()=>{_.dispatch(g({imgList:t,onSubmit:c,stepList:p,step:r,initialIndex:f,getFileData:u,onSave:m})),I.changeLanguage(d)},[]),i(()=>{a==null||a(o)},[o]),n.createElement("div",null,n.createElement(w,y({},e)))},x=e=>({toolInstance:e.annotation.toolInstance});var E=v(x)(j);export{E as default};
1
+ import v from"./views/MainView/index.js";import{i18n as _}from"@labelbee/lb-utils";import n,{useEffect as i}from"react";import{connect as g}from"react-redux";import{store as w}from"./index.js";import{InitTaskData as I}from"./store/annotation/actionCreators.js";var O=Object.defineProperty,s=Object.getOwnPropertySymbols,P=Object.prototype.hasOwnProperty,b=Object.prototype.propertyIsEnumerable,l=(e,t,r)=>t in e?O(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,y=(e,t)=>{for(var r in t||(t={}))P.call(t,r)&&l(e,r,t[r]);if(s)for(var r of s(t))b.call(t,r)&&l(e,r,t[r]);return e};const j=e=>{const{imgList:t,step:r,stepList:p,onSubmit:c,onSave:m,initialIndex:f=0,toolInstance:o,setToolInstance:a,getFileData:u,defaultLang:d="cn"}=e;return i(()=>{w.dispatch(I({imgList:t,onSubmit:c,stepList:p,step:r,initialIndex:f,getFileData:u,onSave:m})),_.changeLanguage(d)},[]),i(()=>{a==null||a(o)},[o]),n.createElement("div",null,n.createElement(v,y({},e)))},x=e=>({toolInstance:e.annotation.toolInstance});var E=g(x)(j);export{E as default};
package/es/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sources":["../src/App.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { connect } from 'react-redux';\nimport { store } from '.';\nimport { AppState } from './store';\nimport { InitTaskData } from './store/annotation/actionCreators';\nimport MainView from '@/views/MainView';\nimport { IStepInfo } from './types/step';\nimport { OnSubmit, GetFileData, OnSave } from './types/data';\nimport { ToolInstance } from './store/annotation/types';\nimport { i18n } from '@labelbee/lb-utils';\n\nexport interface AppProps {\n exportData?: (data: any[]) => void;\n goBack?: () => void;\n imgList: string[];\n config: string;\n stepList: IStepInfo[];\n step: number;\n onSubmit?: OnSubmit;\n onSave?: OnSave;\n getFileData?: GetFileData;\n headerName?: string;\n initialIndex?: number;\n className?: string;\n toolInstance: ToolInstance;\n header?: React.ReactNode;\n footer?: React.ReactNode;\n sider?: React.ReactNode;\n style?: {\n layout?: { [key: string]: any };\n header?: { [key: string]: any };\n sider?: { [key: string]: any };\n footer?: { [key: string]: any };\n };\n setToolInstance?: (tool: ToolInstance) => void;\n mode?: 'light' | 'dark'; // 临时需求应用于 toolFooter 的操作\n defaultLang: 'en' | 'cn'; // 国际化设置\n}\n\nconst App: React.FC<AppProps> = (props) => {\n const {\n imgList,\n step,\n stepList,\n onSubmit,\n onSave,\n initialIndex = 0,\n toolInstance,\n setToolInstance,\n getFileData,\n defaultLang = 'cn',\n } = props;\n useEffect(() => {\n store.dispatch(\n InitTaskData({ imgList, onSubmit, stepList, step, initialIndex, getFileData, onSave }),\n );\n\n // 初始化国际化语言\n i18n.changeLanguage(defaultLang);\n }, []);\n\n useEffect(() => {\n setToolInstance?.(toolInstance);\n }, [toolInstance]);\n\n return (\n <div>\n <MainView {...props} />\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => ({\n toolInstance: state.annotation.toolInstance,\n});\n\nexport default connect(mapStateToProps)(App);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAM,MAA0B,CAAC,UAAU;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc;AAAA,MACZ;AACJ,YAAU,MAAM;AACd,UAAM,SACJ,aAAa,CAAE,SAAS,UAAU,UAAU,MAAM,cAAc,aAAa;AAI/E,SAAK,eAAe;AAAA,KACnB;AAEH,YAAU,MAAM;AACd,uDAAkB;AAAA,KACjB,CAAC;AAEJ,6CACG,OAAD,0CACG,UAAD,mBAAc;AAAA;AAKpB,MAAM,kBAAkB,CAAC;AAAqB,EAC5C,cAAc,MAAM,WAAW;AAAA;AAGjC,YAAe,QAAQ,iBAAiB;;;;"}
1
+ {"version":3,"file":"App.js","sources":["../src/App.tsx"],"sourcesContent":["import MainView from '@/views/MainView';\nimport { i18n } from '@labelbee/lb-utils';\nimport React, { useEffect } from 'react';\nimport { connect } from 'react-redux';\nimport { store } from '.';\nimport { AppState } from './store';\nimport { InitTaskData } from './store/annotation/actionCreators';\nimport { ToolInstance } from './store/annotation/types';\nimport { GetFileData, OnSave, OnSubmit, IFileItem } from './types/data';\nimport { Footer, Header, Sider } from './types/main';\nimport { IStepInfo } from './types/step';\n\ninterface IAnnotationStyle {\n strokeColor: string;\n fillColor: string;\n textColor: string;\n toolColor: any;\n}\n\nexport interface AppProps {\n exportData?: (data: any[]) => void;\n goBack?: () => void;\n imgList: IFileItem[];\n config: string;\n stepList: IStepInfo[];\n step: number;\n onSubmit?: OnSubmit;\n onSave?: OnSave;\n getFileData?: GetFileData;\n headerName?: string;\n initialIndex?: number;\n className?: string;\n toolInstance: ToolInstance;\n header?: Header;\n footer?: Footer;\n sider?: Sider;\n style?: {\n layout?: { [key: string]: any };\n header?: { [key: string]: any };\n sider?: { [key: string]: any };\n footer?: { [key: string]: any };\n };\n setToolInstance?: (tool: ToolInstance) => void;\n mode?: 'light' | 'dark'; // 临时需求应用于 toolFooter 的操作\n defaultLang: 'en' | 'cn'; // 国际化设置\n leftSider?: () => React.ReactNode | React.ReactNode;\n\n // 标注信息扩展的功能\n dataInjectionAtCreation: (annotationData: any) => {};\n // 渲染增强\n renderEnhance: {\n staticRender?: (canvas: HTMLCanvasElement, data: any, style: IAnnotationStyle) => void;\n selectedRender?: (canvas: HTMLCanvasElement, data: any, style: IAnnotationStyle) => void;\n creatingRender?: (canvas: HTMLCanvasElement, data: any, style: IAnnotationStyle) => void;\n };\n}\n\nconst App: React.FC<AppProps> = (props) => {\n const {\n imgList,\n step,\n stepList,\n onSubmit,\n onSave,\n initialIndex = 0,\n toolInstance,\n setToolInstance,\n getFileData,\n defaultLang = 'cn',\n } = props;\n useEffect(() => {\n store.dispatch(\n InitTaskData({ imgList, onSubmit, stepList, step, initialIndex, getFileData, onSave }),\n );\n\n // 初始化国际化语言\n i18n.changeLanguage(defaultLang);\n }, []);\n\n useEffect(() => {\n setToolInstance?.(toolInstance);\n }, [toolInstance]);\n\n return (\n <div>\n <MainView {...props} />\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => ({\n toolInstance: state.annotation.toolInstance,\n});\n\nexport default connect(mapStateToProps)(App);\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAyDA,MAAM,GAAA,GAA0B,CAAC,KAAU,KAAA;AACzC,EAAM,MAAA;AAAA,IACJ,OAAA;AAAA,IACA,IAAA;AAAA,IACA,QAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAe,GAAA,CAAA;AAAA,IACf,YAAA;AAAA,IACA,eAAA;AAAA,IACA,WAAA;AAAA,IACA,WAAc,GAAA,IAAA;AAAA,GACZ,GAAA,KAAA,CAAA;AACJ,EAAA,SAAA,CAAU,MAAM;AACd,IAAM,KAAA,CAAA,QAAA,CACJ,aAAa,CAAE,OAAA,EAAS,UAAU,QAAU,EAAA,IAAA,EAAM,cAAc,WAAa,EAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AAI/E,IAAA,IAAA,CAAK,cAAe,CAAA,WAAA,CAAA,CAAA;AAAA,GACnB,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,SAAA,CAAU,MAAM;AACd,IAAkB,eAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,YAAA,CAAA,CAAA;AAAA,GAAA,EACjB,CAAC,YAAA,CAAA,CAAA,CAAA;AAEJ,EAAA,uBACG,KAAA,CAAA,aAAA,CAAA,KAAA,EAAD,IACE,kBAAA,KAAA,CAAA,aAAA,CAAC,UAAD,cAAc,CAAA,EAAA,EAAA,KAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA;AAKpB,MAAM,eAAA,GAAkB,CAAC,KAAqB,MAAA;AAAA,EAC5C,YAAA,EAAc,MAAM,UAAW,CAAA,YAAA;AAAA,CAAA,CAAA,CAAA;AAGjC,YAAe,QAAQ,eAAiB,CAAA,CAAA,GAAA,CAAA;;;;"}
@@ -0,0 +1 @@
1
+ var H="data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M17 5H15.4286V3H17V5ZM13.8571 5H12.2857V3H13.8571V5ZM10.7143 5H9.14286V3H10.7143V5ZM7.57143 5H6V3H7.57143V5Z' fill='%23999FFF'/%3e%3cpath d='M17 17H15V15H17V17ZM17 13H15V11H17V13ZM17 9H15V7H17V9ZM17 5H15V3H17V5Z' fill='%23999FFF'/%3e%3cpath d='M17 17H15.4286V15H17V17ZM13.8571 17H12.2857V15H13.8571V17ZM10.7143 17H9.14286V15H10.7143V17ZM7.57143 17H6V15H7.57143V17Z' fill='%23999FFF'/%3e%3cpath d='M5 6H3V15H5V6Z' fill='white'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M6 2H2V6H3V14H2V18H6V14H5V6H6V2Z' fill='%23666FFF'/%3e%3c/svg%3e";export{H as default};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon_rectangle_a.svg.js","sources":["../../../../src/assets/annotation/polygonTool/icon_rectangle_a.svg"],"sourcesContent":["var img = \"data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M17 5H15.4286V3H17V5ZM13.8571 5H12.2857V3H13.8571V5ZM10.7143 5H9.14286V3H10.7143V5ZM7.57143 5H6V3H7.57143V5Z' fill='%23999FFF'/%3e%3cpath d='M17 17H15V15H17V17ZM17 13H15V11H17V13ZM17 9H15V7H17V9ZM17 5H15V3H17V5Z' fill='%23999FFF'/%3e%3cpath d='M17 17H15.4286V15H17V17ZM13.8571 17H12.2857V15H13.8571V17ZM10.7143 17H9.14286V15H10.7143V17ZM7.57143 17H6V15H7.57143V17Z' fill='%23999FFF'/%3e%3cpath d='M5 6H3V15H5V6Z' fill='white'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M6 2H2V6H3V14H2V18H6V14H5V6H6V2Z' fill='%23666FFF'/%3e%3c/svg%3e\";\n export default img;"],"names":[],"mappings":"AAAG,IAAC,GAAG,GAAG;;;;"}
@@ -1 +1 @@
1
- import m,{useState as z,useRef as g,useImperativeHandle as S,useEffect as u}from"react";import{ViewOperation as E,ImgUtils as C}from"@labelbee/lb-annotation";import{Spin as L}from"antd/es";var R=Object.defineProperty,_=Object.getOwnPropertySymbols,A=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable,h=(o,t,e)=>t in o?R(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e,w=(o,t)=>{for(var e in t||(t={}))A.call(t,e)&&h(o,e,t[e]);if(_)for(var e of _(t))V.call(t,e)&&h(o,e,t[e]);return o};const Z={width:1280,height:720},j=(o,t)=>{const{size:e=Z,src:p,annotations:s=[],style:b={stroke:"blue",thickness:3},zoomChange:c,backgroundStyle:y={},onChange:d,showLoading:I=!1}=o,[O,f]=z(!1),v=g(null),n=g();S(t,()=>{const r=n.current;return r?{zoomIn:()=>r.zoomChanged(!0),zoomOut:()=>r.zoomChanged(!1),initImgPos:()=>r.initImgPos(),toolInstance:r}:{}},[n.current]),u(()=>(v.current&&(n.current=new E({container:v.current,size:e,style:b,annotations:s,config:"{}"}),n.current.init()),()=>{var r;(r=n.current)==null||r.destroy()}),[]),u(()=>{var r;n.current&&(f(!0),(r=n.current)==null||r.setLoading(!0),C.load(p).then(i=>{var a,l;(a=n.current)==null||a.setLoading(!1),f(!1),(l=n.current)==null||l.setImgNode(i)}).catch(()=>{var i;(i=n.current)==null||i.setLoading(!1),f(!1)}))},[p]),u(()=>{n.current&&n.current.updateData(s)},[s]),u(()=>{const r=n.current;(r==null?void 0:r.setSize)&&r.setSize(e)},[e==null?void 0:e.width,e==null?void 0:e.height]),u(()=>{var r,i;return n.current&&((r=n.current)==null||r.on("onChange",(...a)=>{d==null||d.apply(null,a)}),(i=n.current)==null||i.on("renderZoom",a=>{c&&c(a)})),()=>{var a,l;(a=n.current)==null||a.unbindAll("onChange"),(l=n.current)==null||l.unbindAll("renderZoom")}},[c,d]);const P=m.createElement("div",{ref:v,style:w(w({},e),y)});return m.createElement(L,{spinning:I||O,delay:300},P)};var x=m.forwardRef(j);export{x as default};
1
+ import m,{useState as z,useRef as g,useImperativeHandle as S,useEffect as u}from"react";import{ViewOperation as E,ImgUtils as C}from"@labelbee/lb-annotation";import{Spin as L}from"antd/es";var R=Object.defineProperty,_=Object.getOwnPropertySymbols,A=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable,h=(o,t,e)=>t in o?R(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e,w=(o,t)=>{for(var e in t||(t={}))A.call(t,e)&&h(o,e,t[e]);if(_)for(var e of _(t))V.call(t,e)&&h(o,e,t[e]);return o};const Z={width:1280,height:720},j=(o,t)=>{const{size:e=Z,src:p,annotations:s=[],style:b={stroke:"blue",thickness:3},zoomChange:c,backgroundStyle:y={},onChange:d,showLoading:I=!1}=o,[O,f]=z(!1),v=g(null),n=g();S(t,()=>{const r=n.current;return r?{zoomIn:()=>r.zoomChanged(!0),zoomOut:()=>r.zoomChanged(!1),initImgPos:()=>r.initImgPos(),toolInstance:r}:{}},[n.current]),u(()=>(v.current&&(n.current=new E({container:v.current,size:e,style:b,annotations:s,config:"{}"}),n.current.init()),()=>{var r;(r=n.current)==null||r.destroy()}),[]),u(()=>{var r;n.current&&(f(!0),(r=n.current)==null||r.setLoading(!0),C.load(p).then(i=>{var a,l;(a=n.current)==null||a.setLoading(!1),f(!1),(l=n.current)==null||l.setImgNode(i)}).catch(()=>{var i;(i=n.current)==null||i.setLoading(!1),f(!1)}))},[p]),u(()=>{n.current&&n.current.updateData(s)},[s]),u(()=>{const r=n.current;(r==null?void 0:r.setSize)&&r.setSize(e)},[e==null?void 0:e.width,e==null?void 0:e.height]),u(()=>{var r,i;return n.current&&((r=n.current)==null||r.on("onChange",(...a)=>{d==null||d.apply(null,a)}),(i=n.current)==null||i.on("renderZoom",a=>{c&&c(a)})),()=>{var a,l;(a=n.current)==null||a.unbindAll("onChange"),(l=n.current)==null||l.unbindAll("renderZoom")}},[c,d]);const P=m.createElement("div",{ref:v,style:w(w({position:"relative"},e),y)});return m.createElement(L,{spinning:I||O,delay:300},P)};var x=m.forwardRef(j);export{x as default};
@@ -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 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 = <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,QAAQ;AAAA,MACR,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":";;;;;;;;;;;;;;;;;;;;AA4BA,MAAM,YAAe,GAAA;AAAA,EACnB,KAAO,EAAA,IAAA;AAAA,EACP,MAAQ,EAAA,GAAA;AAAA,CAAA,CAAA;AAGV,MAAM,cAAA,GAAiB,CAAC,KAAA,EAAe,GAAa,KAAA;AAClD,EAAM,MAAA;AAAA,IACJ,IAAO,GAAA,YAAA;AAAA,IACP,GAAA;AAAA,IACA,WAAc,GAAA,EAAA;AAAA,IACd,KAAQ,GAAA;AAAA,MACN,MAAQ,EAAA,MAAA;AAAA,MACR,SAAW,EAAA,CAAA;AAAA,KAAA;AAAA,IAEb,UAAA;AAAA,IACA,eAAkB,GAAA,EAAA;AAAA,IAClB,QAAA;AAAA,IACA,WAAc,GAAA,KAAA;AAAA,GACZ,GAAA,KAAA,CAAA;AACJ,EAAM,MAAA,CAAC,OAAS,EAAA,UAAA,CAAA,GAAc,QAAS,CAAA,KAAA,CAAA,CAAA;AACvC,EAAA,MAAM,gBAAgB,MAAuB,CAAA,IAAA,CAAA,CAAA;AAC7C,EAAA,MAAM,aAAgB,GAAA,MAAA,EAAA,CAAA;AAEtB,EAAA,mBAAA,CACE,KACA,MAAM;AACJ,IAAA,MAAM,eAAe,aAAc,CAAA,OAAA,CAAA;AACnC,IAAA,IAAI,CAAC,YAAc,EAAA;AACjB,MAAO,OAAA,EAAA,CAAA;AAAA,KAAA;AAGT,IAAO,OAAA;AAAA,MACL,MAAA,EAAQ,MAAM,YAAA,CAAa,WAAY,CAAA,IAAA,CAAA;AAAA,MACvC,OAAA,EAAS,MAAM,YAAA,CAAa,WAAY,CAAA,KAAA,CAAA;AAAA,MACxC,UAAA,EAAY,MAAM,YAAa,CAAA,UAAA,EAAA;AAAA,MAC/B,YAAA;AAAA,KAAA,CAAA;AAAA,GAAA,EAGJ,CAAC,aAAc,CAAA,OAAA,CAAA,CAAA,CAAA;AAGjB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,cAAc,OAAS,EAAA;AACzB,MAAc,aAAA,CAAA,OAAA,GAAU,IAAI,aAAc,CAAA;AAAA,QACxC,WAAW,aAAc,CAAA,OAAA;AAAA,QACzB,IAAA;AAAA,QACA,KAAA;AAAA,QACA,WAAA;AAAA,QACA,MAAQ,EAAA,IAAA;AAAA,OAAA,CAAA,CAAA;AAGV,MAAA,aAAA,CAAc,OAAQ,CAAA,IAAA,EAAA,CAAA;AAAA,KAAA;AAGxB,IAAA,OAAO,MAAM;AAlFjB,MAAA,IAAA,EAAA,CAAA;AAmFM,MAAA,CAAA,EAAA,GAAA,aAAA,CAAc,YAAd,IAAuB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAA,EAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAExB,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,SAAA,CAAU,MAAM;AAvFlB,IAAA,IAAA,EAAA,CAAA;AAwFI,IAAA,IAAI,cAAc,OAAS,EAAA;AACzB,MAAW,UAAA,CAAA,IAAA,CAAA,CAAA;AACX,MAAc,CAAA,EAAA,GAAA,aAAA,CAAA,OAAA,KAAd,mBAAuB,UAAW,CAAA,IAAA,CAAA,CAAA;AAClC,MAAA,QAAA,CAAS,IAAK,CAAA,GAAA,CAAA,CACX,IAAK,CAAA,CAAC,OAA8B,KAAA;AA5F7C,QAAA,IAAA,GAAA,EAAA,EAAA,CAAA;AA6FU,QAAc,CAAA,GAAA,GAAA,aAAA,CAAA,OAAA,KAAd,oBAAuB,UAAW,CAAA,KAAA,CAAA,CAAA;AAClC,QAAW,UAAA,CAAA,KAAA,CAAA,CAAA;AAEX,QAAc,CAAA,EAAA,GAAA,aAAA,CAAA,OAAA,KAAd,mBAAuB,UAAW,CAAA,OAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAEnC,MAAM,MAAM;AAlGrB,QAAA,IAAA,GAAA,CAAA;AAmGU,QAAc,CAAA,GAAA,GAAA,aAAA,CAAA,OAAA,KAAd,oBAAuB,UAAW,CAAA,KAAA,CAAA,CAAA;AAClC,QAAW,UAAA,CAAA,KAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAAA,EAGhB,CAAC,GAAA,CAAA,CAAA,CAAA;AAKJ,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,cAAc,OAAS,EAAA;AACzB,MAAA,aAAA,CAAc,QAAQ,UAAW,CAAA,WAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAAA,EAElC,CAAC,WAAA,CAAA,CAAA,CAAA;AAGJ,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAM,eAAe,aAAc,CAAA,OAAA,CAAA;AAEnC,IAAA,IAAI,6CAAc,OAAS,EAAA;AACzB,MAAA,YAAA,CAAa,OAAQ,CAAA,IAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAEtB,EAAA,CAAC,IAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,KAAA,EAAO,IAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,IAAA,CAAA,MAAA,CAAA,CAAA,CAAA;AAEvB,EAAA,SAAA,CAAU,MAAM;AA3HlB,IAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AA4HI,IAAA,IAAI,cAAc,OAAS,EAAA;AACzB,MAAA,CAAA,EAAA,GAAA,aAAA,CAAc,OAAd,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAuB,EAAG,CAAA,UAAA,EAAY,IAAI,IAAc,KAAA;AACtD,QAAA,QAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAU,MAAM,IAAM,EAAA,IAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAGxB,MAAA,CAAA,EAAA,GAAA,aAAA,CAAc,OAAd,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAuB,EAAG,CAAA,YAAA,EAAc,CAAC,IAAiB,KAAA;AACxD,QAAA,IAAI,UAAY,EAAA;AACd,UAAW,UAAA,CAAA,IAAA,CAAA,CAAA;AAAA,SAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAAA;AAIjB,IAAA,OAAO,MAAM;AAvIjB,MAAA,IAAA,GAAA,EAAA,GAAA,CAAA;AAwIM,MAAc,CAAA,GAAA,GAAA,aAAA,CAAA,OAAA,KAAd,oBAAuB,SAAU,CAAA,UAAA,CAAA,CAAA;AACjC,MAAc,CAAA,GAAA,GAAA,aAAA,CAAA,OAAA,KAAd,oBAAuB,SAAU,CAAA,YAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAAA,EAElC,CAAC,UAAY,EAAA,QAAA,CAAA,CAAA,CAAA;AAEhB,EAAM,MAAA,UAAA,uCACH,KAAD,EAAA;AAAA,IAAK,GAAK,EAAA,aAAA;AAAA,IAAe,KAAO,EAAA,cAAA,CAAA,cAAA,CAAA,CAAE,QAAU,EAAA,UAAA,CAAA,EAAe,IAAS,CAAA,EAAA,eAAA,CAAA;AAAA,GAAA,CAAA,CAAA;AAGtE,EAAA,2CACG,IAAD,EAAA;AAAA,IAAM,UAAU,WAAe,IAAA,OAAA;AAAA,IAAS,KAAO,EAAA,GAAA;AAAA,GAC5C,EAAA,UAAA,CAAA,CAAA;AAAA,CAAA,CAAA;AAOP,YAAe,MAAM,UAAW,CAAA,cAAA,CAAA;;;;"}
@@ -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;;;;"}