@labelbee/lb-components 1.3.0 → 1.5.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 (156) hide show
  1. package/LICENSE +203 -0
  2. package/dist/App.js +1 -1
  3. package/dist/assets/annotation/toolHotKeyIcon/icon_back_kj.svg.js +1 -0
  4. package/dist/assets/annotation/toolHotKeyIcon/icon_forward_kj.svg.js +1 -0
  5. package/dist/assets/annotation/toolHotKeyIcon/icon_playPause.svg.js +1 -0
  6. package/dist/assets/annotation/toolHotKeyIcon/icon_polygonMerge_kj.svg.js +1 -0
  7. package/dist/assets/annotation/toolHotKeyIcon/icon_segment.svg.js +1 -0
  8. package/dist/assets/annotation/toolHotKeyIcon/icon_speed_kj.svg.js +1 -0
  9. package/dist/assets/annotation/video/icon_keyboard_h.svg.js +1 -0
  10. package/dist/components/fileException/FileError.js +1 -0
  11. package/dist/components/fileException/FileInvalid.js +1 -0
  12. package/dist/components/fileException/index.js +1 -0
  13. package/dist/components/videoAnnotate/index.js +1 -0
  14. package/dist/components/videoPlayer/TagToolInstanceAdaptor.js +1 -0
  15. package/dist/components/videoPlayer/TagToolInstanceAdaptorI18nProvider.js +1 -0
  16. package/dist/components/videoPlayer/VideoTagLayer.js +1 -0
  17. package/dist/components/videoPlayer/components/controller/index.js +1 -0
  18. package/dist/components/videoPlayer/index.js +1 -0
  19. package/dist/components/videoPlayer/utils.js +1 -0
  20. package/dist/index.css +138 -0
  21. package/dist/index.css.map +1 -1
  22. package/dist/index.js +1 -1
  23. package/dist/store/Actions.js +1 -1
  24. package/dist/store/annotation/actionCreators.js +1 -1
  25. package/dist/store/annotation/reducer.js +1 -1
  26. package/dist/types/App.d.ts +7 -2
  27. package/dist/types/components/{ImageError/index.d.ts → fileException/FileError.d.ts} +5 -4
  28. package/dist/types/components/fileException/FileInvalid.d.ts +12 -0
  29. package/dist/types/components/fileException/index.d.ts +17 -0
  30. package/dist/types/components/videoAnnotate/index.d.ts +15 -0
  31. package/dist/types/components/videoPlayer/TagToolInstanceAdaptor.d.ts +90 -0
  32. package/dist/types/components/videoPlayer/TagToolInstanceAdaptorI18nProvider.d.ts +8 -0
  33. package/dist/types/components/videoPlayer/VideoTagLayer.d.ts +12 -0
  34. package/dist/types/components/videoPlayer/components/controller/index.d.ts +2 -0
  35. package/dist/types/components/videoPlayer/index.d.ts +73 -0
  36. package/dist/types/components/videoPlayer/types.d.ts +8 -0
  37. package/dist/types/components/videoPlayer/utils.d.ts +36 -0
  38. package/dist/types/index.d.ts +2 -1
  39. package/dist/types/store/Actions.d.ts +5 -0
  40. package/dist/types/store/annotation/actionCreators.d.ts +20 -8
  41. package/dist/types/store/annotation/reducer.d.ts +1 -1
  42. package/dist/types/store/annotation/types.d.ts +30 -2
  43. package/dist/types/utils/PageOperator.d.ts +1 -1
  44. package/dist/types/utils/StepUtils.d.ts +7 -0
  45. package/dist/types/utils/TextUtils.d.ts +1 -1
  46. package/dist/types/utils/dom.d.ts +6 -0
  47. package/dist/types/views/MainView/annotationTips/index.d.ts +5 -0
  48. package/dist/types/views/MainView/index.d.ts +8 -2
  49. package/dist/types/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.d.ts +23 -0
  50. package/dist/types/views/MainView/toolFooter/FooterTips/ToolHotKey/index.d.ts +2 -7
  51. package/dist/types/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.d.ts +7 -1
  52. package/dist/types/views/MainView/toolFooter/FooterTips/ToolHotKey/videoTag/index.d.ts +3 -0
  53. package/dist/types/views/MainView/toolFooter/Pagination.d.ts +12 -0
  54. package/dist/utils/StepUtils.js +1 -1
  55. package/dist/utils/TextUtils.js +1 -1
  56. package/dist/utils/dom.js +1 -1
  57. package/dist/views/MainView/annotationOperation/index.js +1 -1
  58. package/dist/views/MainView/annotationTips/index.js +1 -0
  59. package/dist/views/MainView/index.js +1 -1
  60. package/dist/views/MainView/sidebar/GeneralOperation/index.js +1 -1
  61. package/dist/views/MainView/sidebar/TagSidebar/index.js +1 -1
  62. package/dist/views/MainView/sidebar/index.js +1 -1
  63. package/dist/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.js +1 -1
  64. package/dist/views/MainView/toolFooter/FooterTips/ToolHotKey/index.js +1 -1
  65. package/dist/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.js +1 -1
  66. package/dist/views/MainView/toolFooter/FooterTips/ToolHotKey/videoTag/index.js +1 -0
  67. package/dist/views/MainView/toolFooter/FooterTips/index.js +1 -1
  68. package/dist/views/MainView/toolFooter/Pagination.js +1 -0
  69. package/dist/views/MainView/toolFooter/index.js +1 -1
  70. package/dist/views/MainView/toolHeader/headerOption/index.js +1 -1
  71. package/dist/views/MainView/toolHeader/index.js +1 -1
  72. package/es/App.js +1 -1
  73. package/es/App.js.map +1 -1
  74. package/es/assets/annotation/toolHotKeyIcon/icon_back_kj.svg.js +1 -0
  75. package/es/assets/annotation/toolHotKeyIcon/icon_back_kj.svg.js.map +1 -0
  76. package/es/assets/annotation/toolHotKeyIcon/icon_forward_kj.svg.js +1 -0
  77. package/es/assets/annotation/toolHotKeyIcon/icon_forward_kj.svg.js.map +1 -0
  78. package/es/assets/annotation/toolHotKeyIcon/icon_playPause.svg.js +1 -0
  79. package/es/assets/annotation/toolHotKeyIcon/icon_playPause.svg.js.map +1 -0
  80. package/es/assets/annotation/toolHotKeyIcon/icon_polygonMerge_kj.svg.js +1 -0
  81. package/es/assets/annotation/toolHotKeyIcon/icon_polygonMerge_kj.svg.js.map +1 -0
  82. package/es/assets/annotation/toolHotKeyIcon/icon_segment.svg.js +1 -0
  83. package/es/assets/annotation/toolHotKeyIcon/icon_segment.svg.js.map +1 -0
  84. package/es/assets/annotation/toolHotKeyIcon/icon_speed_kj.svg.js +1 -0
  85. package/es/assets/annotation/toolHotKeyIcon/icon_speed_kj.svg.js.map +1 -0
  86. package/es/assets/annotation/video/icon_keyboard_h.svg.js +1 -0
  87. package/es/assets/annotation/video/icon_keyboard_h.svg.js.map +1 -0
  88. package/es/components/ImageError/index.js +53 -1
  89. package/es/components/fileException/FileError.js +1 -0
  90. package/es/components/fileException/FileError.js.map +1 -0
  91. package/es/components/fileException/FileInvalid.js +1 -0
  92. package/es/components/fileException/FileInvalid.js.map +1 -0
  93. package/es/components/fileException/index.js +1 -0
  94. package/es/components/fileException/index.js.map +1 -0
  95. package/es/components/videoAnnotate/index.js +1 -0
  96. package/es/components/videoAnnotate/index.js.map +1 -0
  97. package/es/components/videoPlayer/TagToolInstanceAdaptor.js +1 -0
  98. package/es/components/videoPlayer/TagToolInstanceAdaptor.js.map +1 -0
  99. package/es/components/videoPlayer/TagToolInstanceAdaptorI18nProvider.js +1 -0
  100. package/es/components/videoPlayer/TagToolInstanceAdaptorI18nProvider.js.map +1 -0
  101. package/es/components/videoPlayer/VideoTagLayer.js +1 -0
  102. package/es/components/videoPlayer/VideoTagLayer.js.map +1 -0
  103. package/es/components/videoPlayer/components/controller/index.js +1 -0
  104. package/es/components/videoPlayer/components/controller/index.js.map +1 -0
  105. package/es/components/videoPlayer/index.js +1 -0
  106. package/es/components/videoPlayer/index.js.map +1 -0
  107. package/es/components/videoPlayer/utils.js +1 -0
  108. package/es/components/videoPlayer/utils.js.map +1 -0
  109. package/es/index.js +1 -1
  110. package/es/index.js.map +1 -1
  111. package/es/store/Actions.js +1 -1
  112. package/es/store/Actions.js.map +1 -1
  113. package/es/store/annotation/actionCreators.js +1 -1
  114. package/es/store/annotation/actionCreators.js.map +1 -1
  115. package/es/store/annotation/reducer.js +1 -1
  116. package/es/store/annotation/reducer.js.map +1 -1
  117. package/es/utils/StepUtils.js +1 -1
  118. package/es/utils/StepUtils.js.map +1 -1
  119. package/es/utils/TextUtils.js +1 -1
  120. package/es/utils/TextUtils.js.map +1 -1
  121. package/es/utils/dom.js +1 -1
  122. package/es/utils/dom.js.map +1 -1
  123. package/es/views/MainView/annotationOperation/index.js +1 -1
  124. package/es/views/MainView/annotationOperation/index.js.map +1 -1
  125. package/es/views/MainView/annotationTips/index.js +1 -0
  126. package/es/views/MainView/annotationTips/index.js.map +1 -0
  127. package/es/views/MainView/index.js +1 -1
  128. package/es/views/MainView/index.js.map +1 -1
  129. package/es/views/MainView/sidebar/GeneralOperation/index.js +1 -1
  130. package/es/views/MainView/sidebar/GeneralOperation/index.js.map +1 -1
  131. package/es/views/MainView/sidebar/TagSidebar/index.js +1 -1
  132. package/es/views/MainView/sidebar/TagSidebar/index.js.map +1 -1
  133. package/es/views/MainView/sidebar/index.js +1 -1
  134. package/es/views/MainView/sidebar/index.js.map +1 -1
  135. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.js +1 -1
  136. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.js.map +1 -1
  137. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/index.js +1 -1
  138. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/index.js.map +1 -1
  139. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.js +1 -1
  140. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.js.map +1 -1
  141. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/videoTag/index.js +1 -0
  142. package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/videoTag/index.js.map +1 -0
  143. package/es/views/MainView/toolFooter/FooterTips/index.js +1 -1
  144. package/es/views/MainView/toolFooter/FooterTips/index.js.map +1 -1
  145. package/es/views/MainView/toolFooter/Pagination.js +1 -0
  146. package/es/views/MainView/toolFooter/Pagination.js.map +1 -0
  147. package/es/views/MainView/toolFooter/index.js +1 -1
  148. package/es/views/MainView/toolFooter/index.js.map +1 -1
  149. package/es/views/MainView/toolHeader/headerOption/index.js +1 -1
  150. package/es/views/MainView/toolHeader/headerOption/index.js.map +1 -1
  151. package/es/views/MainView/toolHeader/index.js +1 -1
  152. package/es/views/MainView/toolHeader/index.js.map +1 -1
  153. package/package.json +7 -5
  154. package/dist/components/ImageError/index.js +0 -1
  155. package/es/assets/annotation/polygonTool/icon_rectangle_a.svg.js +0 -1
  156. package/es/assets/annotation/polygonTool/icon_rectangle_a.svg.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"StepUtils.js","sources":["../../src/utils/StepUtils.ts"],"sourcesContent":["import { EStepType } from '@/constant';\nimport { IStepInfo } from '@/types/step';\n\nexport default class StepUtils {\n /**\n * 获取当前步骤的步骤配置信息,用于当前标注配置的获取\n * @export\n * @param {number} currentStep\n * @param {IStepInfo[]} stepList\n * @returns {*}\n */\n public static getCurrentStepInfo(currentStep: number, stepList: IStepInfo[]) {\n const currentStepInfo = this.getStepInfo(currentStep, stepList);\n\n const useDataSourceStep = [EStepType.QUALITY_INSPECTION, EStepType.MANUAL_CORRECTION].includes(\n currentStepInfo?.type,\n );\n\n /** 人工修正、质检获取 dataSourceStep 作为步骤配置 */\n if (useDataSourceStep) {\n return this.getStepInfo(currentStepInfo.dataSourceStep, stepList);\n }\n\n return currentStepInfo;\n }\n\n /**\n * 找到指定步骤的数据\n * @param step 获取的步骤\n * @param stepList 步骤列表\n * @returns 步骤配置\n */\n public static getStepInfo(step: number, stepList: IStepInfo[]) {\n return stepList?.filter((info) => info.step === step)[0];\n }\n}\n"],"names":[],"mappings":";;AAG+B,MAAA,SAAA,CAAA;AAAA,EAQd,OAAA,kBAAA,CAAmB,aAAqB,QAAuB,EAAA;AAC5E,IAAM,MAAA,eAAA,GAAkB,IAAK,CAAA,WAAA,CAAY,WAAa,EAAA,QAAA,CAAA,CAAA;AAEtD,IAAA,MAAM,oBAAoB,CAAC,SAAA,CAAU,oBAAoB,SAAU,CAAA,iBAAA,CAAA,CAAmB,SACpF,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAInB,IAAA,IAAI,iBAAmB,EAAA;AACrB,MAAO,OAAA,IAAA,CAAK,WAAY,CAAA,eAAA,CAAgB,cAAgB,EAAA,QAAA,CAAA,CAAA;AAAA,KAAA;AAG1D,IAAO,OAAA,eAAA,CAAA;AAAA,GAAA;AAAA,EASM,OAAA,WAAA,CAAY,MAAc,QAAuB,EAAA;AAC9D,IAAA,OAAO,qCAAU,MAAO,CAAA,CAAC,IAAS,KAAA,IAAA,CAAK,SAAS,IAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
1
+ {"version":3,"file":"StepUtils.js","sources":["../../src/utils/StepUtils.ts"],"sourcesContent":["import { EStepType } from '@/constant';\nimport { IStepInfo } from '@/types/step';\nimport { cTool } from '@labelbee/lb-annotation';\n\nconst { EVideoToolName } = cTool;\n\nexport default class StepUtils {\n /**\n * 获取当前步骤的步骤配置信息,用于当前标注配置的获取\n * @export\n * @param {number} currentStep\n * @param {IStepInfo[]} stepList\n * @returns {*}\n */\n public static getCurrentStepInfo(currentStep: number, stepList: IStepInfo[]) {\n const currentStepInfo = this.getStepInfo(currentStep, stepList);\n\n const useDataSourceStep = [EStepType.QUALITY_INSPECTION, EStepType.MANUAL_CORRECTION].includes(\n currentStepInfo?.type,\n );\n\n /** 人工修正、质检获取 dataSourceStep 作为步骤配置 */\n if (useDataSourceStep) {\n return this.getStepInfo(currentStepInfo.dataSourceStep, stepList);\n }\n\n return currentStepInfo;\n }\n\n /**\n * 找到指定步骤的数据\n * @param step 获取的步骤\n * @param stepList 步骤列表\n * @returns 步骤配置\n */\n public static getStepInfo(step: number, stepList: IStepInfo[]) {\n return stepList?.filter((info) => info.step === step)[0];\n }\n\n /**\n * 根据toolName判断当前步骤是否为视频工具\n * @param step 步骤\n * @param stepList 步骤列表\n * @returns {Number} 是否为视频工具\n */\n public static currentToolIsVideo(step: number, stepList: IStepInfo[]) {\n const currentStepInfo = StepUtils.getCurrentStepInfo(step, stepList);\n return (Object.values(EVideoToolName) as string[]).includes(currentStepInfo?.tool);\n }\n}\n"],"names":[],"mappings":";;;AAIA,MAAM,CAAE,cAAmB,CAAA,GAAA,KAAA,CAAA;AAEI,MAAA,SAAA,CAAA;AAAA,EAQf,OAAA,kBAAA,CAAmB,aAAqB,QAAuB,EAAA;AAC3E,IAAM,MAAA,eAAA,GAAkB,IAAK,CAAA,WAAA,CAAY,WAAa,EAAA,QAAA,CAAA,CAAA;AAEtD,IAAA,MAAM,oBAAoB,CAAC,SAAA,CAAU,oBAAoB,SAAU,CAAA,iBAAA,CAAA,CAAmB,SACpF,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAInB,IAAA,IAAI,iBAAmB,EAAA;AACrB,MAAO,OAAA,IAAA,CAAK,WAAY,CAAA,eAAA,CAAgB,cAAgB,EAAA,QAAA,CAAA,CAAA;AAAA,KAAA;AAG1D,IAAO,OAAA,eAAA,CAAA;AAAA,GAAA;AAAA,EASK,OAAA,WAAA,CAAY,MAAc,QAAuB,EAAA;AAC7D,IAAA,OAAO,qCAAU,MAAO,CAAA,CAAC,IAAS,KAAA,IAAA,CAAK,SAAS,IAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAS1C,OAAA,kBAAA,CAAmB,MAAc,QAAuB,EAAA;AACpE,IAAM,MAAA,eAAA,GAAkB,SAAU,CAAA,kBAAA,CAAmB,IAAM,EAAA,QAAA,CAAA,CAAA;AAC3D,IAAA,OAAQ,MAAO,CAAA,MAAA,CAAO,cAA6B,CAAA,CAAA,QAAA,CAAS,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- import{ETextType as u}from"../data/enums/ToolType.js";const t="^[0-9]+$",s="^[A-Za-z]+$";class c{static checkString(r,a){let e="";switch(r){case u.Order:case u.NumberOnly:e=t;break;case u.EnglishOnly:e=s;break;case u.CustomFormat:e=a;break}return e}static getErrorNotice(r){switch(r){case u.Order:case u.NumberOnly:return"\u8BF7\u6309\u4EC5\u6570\u5B57\u7684\u683C\u5F0F\u8F93\u5165";case u.EnglishOnly:return"\u8BF7\u6309\u4EC5\u82F1\u6587\u7684\u683C\u5F0F\u8F93\u5165";case u.CustomFormat:return"\u8BF7\u6309\u8981\u6C42\u7684\u683C\u5F0F\u8F93\u5165";default:return""}}}export{s as REGEXP_ENGLISH,t as REGEXP_NUMBER,c as TextUtils};
1
+ import{ETextType as e}from"../data/enums/ToolType.js";import{i18n as s}from"@labelbee/lb-utils";const a="^[0-9]+$",c="^[A-Za-z]+$";class l{static checkString(r,n){let t="";switch(r){case e.Order:case e.NumberOnly:t=a;break;case e.EnglishOnly:t=c;break;case e.CustomFormat:t=n;break}return t}static getErrorNotice(r){switch(r){case e.Order:case e.NumberOnly:return s.t("TextCheckNumberOnly");case e.EnglishOnly:return s.t("TextCheckEnglishOnly");case e.CustomFormat:return s.t("TextCheckCustomFormat");default:return""}}}export{c as REGEXP_ENGLISH,a as REGEXP_NUMBER,l as TextUtils};
@@ -1 +1 @@
1
- {"version":3,"file":"TextUtils.js","sources":["../../src/utils/TextUtils.ts"],"sourcesContent":["import { ETextType } from '@/data/enums/ToolType';\n\nexport const REGEXP_NUMBER = '^[0-9]+$';\nexport const REGEXP_ENGLISH = '^[A-Za-z]+$';\n\nexport class TextUtils {\n public static checkString(textCheckType: ETextType, customFormat: string) {\n let regExpString = '';\n switch (textCheckType) {\n case ETextType.Order:\n case ETextType.NumberOnly:\n regExpString = REGEXP_NUMBER;\n break;\n case ETextType.EnglishOnly:\n regExpString = REGEXP_ENGLISH;\n break;\n case ETextType.CustomFormat:\n regExpString = customFormat;\n break;\n }\n return regExpString;\n }\n\n public static getErrorNotice(textCheckType: ETextType) {\n switch (textCheckType) {\n case ETextType.Order:\n case ETextType.NumberOnly:\n return '请按仅数字的格式输入';\n case ETextType.EnglishOnly:\n return '请按仅英文的格式输入';\n case ETextType.CustomFormat:\n return '请按要求的格式输入';\n default:\n return '';\n }\n }\n}\n"],"names":[],"mappings":";;AAEO,MAAM,aAAgB,GAAA,WAAA;AACtB,MAAM,cAAiB,GAAA,cAAA;AAEP,MAAA,SAAA,CAAA;AAAA,EACP,OAAA,WAAA,CAAY,eAA0B,YAAsB,EAAA;AACxE,IAAA,IAAI,YAAe,GAAA,EAAA,CAAA;AACnB,IAAQ,QAAA,aAAA;AAAA,MAAA,KACD,SAAU,CAAA,KAAA,CAAA;AAAA,MAAA,KACV,SAAU,CAAA,UAAA;AACb,QAAe,YAAA,GAAA,aAAA,CAAA;AACf,QAAA,MAAA;AAAA,MAAA,KACG,SAAU,CAAA,WAAA;AACb,QAAe,YAAA,GAAA,cAAA,CAAA;AACf,QAAA,MAAA;AAAA,MAAA,KACG,SAAU,CAAA,YAAA;AACb,QAAe,YAAA,GAAA,YAAA,CAAA;AACf,QAAA,MAAA;AAAA,KAAA;AAEJ,IAAO,OAAA,YAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAGK,eAAe,aAA0B,EAAA;AACrD,IAAQ,QAAA,aAAA;AAAA,MAAA,KACD,SAAU,CAAA,KAAA,CAAA;AAAA,MAAA,KACV,SAAU,CAAA,UAAA;AACb,QAAO,OAAA,8DAAA,CAAA;AAAA,MAAA,KACJ,SAAU,CAAA,WAAA;AACb,QAAO,OAAA,8DAAA,CAAA;AAAA,MAAA,KACJ,SAAU,CAAA,YAAA;AACb,QAAO,OAAA,wDAAA,CAAA;AAAA,MAAA;AAEP,QAAO,OAAA,EAAA,CAAA;AAAA,KAAA;AAAA,GAAA;AAAA;;;;"}
1
+ {"version":3,"file":"TextUtils.js","sources":["../../src/utils/TextUtils.ts"],"sourcesContent":["/*\n * @Author: Laoluo luozefeng@sensetime.com\n * @Date: 2022-01-12 13:15:33\n * @LastEditors: Laoluo luozefeng@sensetime.com\n * @LastEditTime: 2022-05-30 15:51:43\n */\nimport { ETextType } from '@/data/enums/ToolType';\nimport { i18n } from '@labelbee/lb-utils';\n\nexport const REGEXP_NUMBER = '^[0-9]+$';\nexport const REGEXP_ENGLISH = '^[A-Za-z]+$';\n\nexport class TextUtils {\n public static checkString(textCheckType: ETextType, customFormat: string) {\n let regExpString = '';\n switch (textCheckType) {\n case ETextType.Order:\n case ETextType.NumberOnly:\n regExpString = REGEXP_NUMBER;\n break;\n case ETextType.EnglishOnly:\n regExpString = REGEXP_ENGLISH;\n break;\n case ETextType.CustomFormat:\n regExpString = customFormat;\n break;\n }\n return regExpString;\n }\n\n public static getErrorNotice(textCheckType: ETextType) {\n switch (textCheckType) {\n case ETextType.Order:\n case ETextType.NumberOnly:\n return i18n.t(\"TextCheckNumberOnly\");\n case ETextType.EnglishOnly:\n return i18n.t(\"TextCheckEnglishOnly\");\n case ETextType.CustomFormat:\n return i18n.t(\"TextCheckCustomFormat\");\n default:\n return '';\n }\n }\n}\n"],"names":[],"mappings":";;;AASO,MAAM,aAAgB,GAAA,WAAA;AACtB,MAAM,cAAiB,GAAA,cAAA;AAEP,MAAA,SAAA,CAAA;AAAA,EACP,OAAA,WAAA,CAAY,eAA0B,YAAsB,EAAA;AACxE,IAAA,IAAI,YAAe,GAAA,EAAA,CAAA;AACnB,IAAQ,QAAA,aAAA;AAAA,MAAA,KACD,SAAU,CAAA,KAAA,CAAA;AAAA,MAAA,KACV,SAAU,CAAA,UAAA;AACb,QAAe,YAAA,GAAA,aAAA,CAAA;AACf,QAAA,MAAA;AAAA,MAAA,KACG,SAAU,CAAA,WAAA;AACb,QAAe,YAAA,GAAA,cAAA,CAAA;AACf,QAAA,MAAA;AAAA,MAAA,KACG,SAAU,CAAA,YAAA;AACb,QAAe,YAAA,GAAA,YAAA,CAAA;AACf,QAAA,MAAA;AAAA,KAAA;AAEJ,IAAO,OAAA,YAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAGK,eAAe,aAA0B,EAAA;AACrD,IAAQ,QAAA,aAAA;AAAA,MAAA,KACD,SAAU,CAAA,KAAA,CAAA;AAAA,MAAA,KACV,SAAU,CAAA,UAAA;AACb,QAAA,OAAO,KAAK,CAAE,CAAA,qBAAA,CAAA,CAAA;AAAA,MAAA,KACX,SAAU,CAAA,WAAA;AACb,QAAA,OAAO,KAAK,CAAE,CAAA,sBAAA,CAAA,CAAA;AAAA,MAAA,KACX,SAAU,CAAA,YAAA;AACb,QAAA,OAAO,KAAK,CAAE,CAAA,uBAAA,CAAA,CAAA;AAAA,MAAA;AAEd,QAAO,OAAA,EAAA,CAAA;AAAA,KAAA;AAAA,GAAA;AAAA;;;;"}
package/es/utils/dom.js CHANGED
@@ -1 +1 @@
1
- function i(e,f){if(!e)return f;let n;return typeof e=="function"?n=e():"current"in e?n=e.current:n=e,n}export{i as getTargetElement};
1
+ import{prefix as r}from"../constant/index.js";function i(e,n){if(!e)return n;let t;return typeof e=="function"?t=e():"current"in e?t=e.current:t=e,t}const f=(e,n)=>`${r}-${e}${n?"__"+n:""}`;export{f as getClassName,i as getTargetElement};
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","sources":["../../src/utils/dom.ts"],"sourcesContent":["import { MutableRefObject } from 'react';\n\nexport type BasicTarget<T = HTMLElement> =\n | (() => T | null)\n | T\n | null\n | MutableRefObject<T | null | undefined>;\n\ntype TargetElement = HTMLElement | Element | Document | Window;\n\nexport function getTargetElement(\n target?: BasicTarget<TargetElement>,\n defaultElement?: TargetElement,\n): TargetElement | undefined | null {\n if (!target) {\n return defaultElement;\n }\n\n let targetElement: TargetElement | undefined | null;\n\n if (typeof target === 'function') {\n targetElement = target();\n } else if ('current' in target) {\n targetElement = target.current;\n } else {\n targetElement = target;\n }\n\n return targetElement;\n}"],"names":[],"mappings":"AAUO,SAAA,gBAAA,CACL,QACA,cACkC,EAAA;AAClC,EAAA,IAAI,CAAC,MAAQ,EAAA;AACX,IAAO,OAAA,cAAA,CAAA;AAAA,GAAA;AAGT,EAAI,IAAA,aAAA,CAAA;AAEJ,EAAI,IAAA,OAAO,WAAW,UAAY,EAAA;AAChC,IAAgB,aAAA,GAAA,MAAA,EAAA,CAAA;AAAA,GAAA,MAAA,IACP,aAAa,MAAQ,EAAA;AAC9B,IAAA,aAAA,GAAgB,MAAO,CAAA,OAAA,CAAA;AAAA,GAClB,MAAA;AACL,IAAgB,aAAA,GAAA,MAAA,CAAA;AAAA,GAAA;AAGlB,EAAO,OAAA,aAAA,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"dom.js","sources":["../../src/utils/dom.ts"],"sourcesContent":["import { MutableRefObject } from 'react';\nimport { prefix } from '@/constant';\n\nexport type BasicTarget<T = HTMLElement> =\n | (() => T | null)\n | T\n | null\n | MutableRefObject<T | null | undefined>;\n\ntype TargetElement = HTMLElement | Element | Document | Window;\n\nexport function getTargetElement(\n target?: BasicTarget<TargetElement>,\n defaultElement?: TargetElement,\n): TargetElement | undefined | null {\n if (!target) {\n return defaultElement;\n }\n\n let targetElement: TargetElement | undefined | null;\n\n if (typeof target === 'function') {\n targetElement = target();\n } else if ('current' in target) {\n targetElement = target.current;\n } else {\n targetElement = target;\n }\n\n return targetElement;\n}\n\n/**\n * Get class like BEM\n * @param elm\n * @param modify\n */\nexport const getClassName = (elm: string, modify?: string) =>\n `${prefix}-${elm}${modify ? '__' + modify : ''}`;\n"],"names":[],"mappings":";;AAWO,SAAA,gBAAA,CACL,QACA,cACkC,EAAA;AAClC,EAAA,IAAI,CAAC,MAAQ,EAAA;AACX,IAAO,OAAA,cAAA,CAAA;AAAA,GAAA;AAGT,EAAI,IAAA,aAAA,CAAA;AAEJ,EAAI,IAAA,OAAO,WAAW,UAAY,EAAA;AAChC,IAAgB,aAAA,GAAA,MAAA,EAAA,CAAA;AAAA,GAAA,MAAA,IACP,aAAa,MAAQ,EAAA;AAC9B,IAAA,aAAA,GAAgB,MAAO,CAAA,OAAA,CAAA;AAAA,GAClB,MAAA;AACL,IAAgB,aAAA,GAAA,MAAA,CAAA;AAAA,GAAA;AAGlB,EAAO,OAAA,aAAA,CAAA;AAAA,CAAA;AAQI,MAAA,YAAA,GAAe,CAAC,GAAa,EAAA,MAAA,KACxC,GAAG,MAAU,CAAA,CAAA,EAAA,GAAA,CAAA,EAAM,MAAS,GAAA,IAAA,GAAO,MAAS,GAAA,EAAA,CAAA;;;;"}
@@ -1 +1 @@
1
- import c,{useState as h,useRef as g,useEffect as a}from"react";import{message as u,Spin as j}from"antd/es";import{connect as w}from"react-redux";import A from"lodash";import{store as x}from"../../../index.js";import z from"../../../hooks/useSize.js";import{InitToolStyleConfig as C}from"../../../store/toolStyle/actionCreators.js";import{ImgUtils as R}from"@labelbee/lb-annotation";import L from"../../../components/ImageError/index.js";import{i18n as d}from"@labelbee/lb-utils";var N=Object.defineProperty,D=Object.defineProperties,k=Object.getOwnPropertyDescriptors,v=Object.getOwnPropertySymbols,T=Object.prototype.hasOwnProperty,B=Object.prototype.propertyIsEnumerable,I=(t,e,n)=>e in t?N(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,O=(t,e)=>{for(var n in e||(e={}))T.call(e,n)&&I(t,n,e[n]);if(v)for(var n of v(e))B.call(e,n)&&I(t,n,e[n]);return t},U=(t,e)=>D(t,k(e));const V=t=>{const[,e]=h(0),{imgAttribute:n,toolStyle:s,toolInstance:o,annotationEngine:r,loading:S,imgList:_,imgIndex:y,dataInjectionAtCreation:m,renderEnhance:f}=t,p=g(null),b=g(null),l=z(p);a(()=>{x.dispatch(C())},[]),a(()=>{if(!!r){switch(d.language){case"cn":case"en":r.setLang(d.language);break}r==null||r.setDataInjectionAtCreation(m),r==null||r.setRenderEnhance(f)}},[r,m,f]),a(()=>{o&&(o.singleOn("messageError",i=>{u.error(i)}),o.singleOn("messageInfo",i=>{u.info(i)}),o.singleOn("changeAnnotationShow",()=>{e(i=>i+1)}))},[o]),a(()=>{o&&o.setImgAttribute(n)},[n]),a(()=>{o&&o.setStyle(s),r&&r.setStyle(s)},[s]),a(()=>{(o==null?void 0:o.setSize)&&o.setSize(l),r&&r.setSize(l)},[l]);const E=()=>{const i=_[y];!i.url||R.load(i.url).then(P=>{r.setImgNode(P)})};return c.createElement("div",{ref:p,className:"annotationOperation"},c.createElement(j,{spinning:S,delay:500},c.createElement("div",{className:"canvas",ref:b,style:l,id:"toolContainer"})),(o==null?void 0:o.isImgError)===!0&&c.createElement(L,U(O({},l),{reloadImage:E,backgroundColor:"#e2e2e2",ignoreOffsetY:!0})))},Y=t=>{const e=A.pickBy(t.annotation,(n,s)=>["imgList","imgIndex","stepList","step","toolInstance","annotationEngine","loading"].includes(s));return O({imgAttribute:t.imgAttribute,toolStyle:t.toolStyle},e)};var $=w(Y)(V);export{$ as default};
1
+ import c,{useState as P,useRef as g,useEffect as a}from"react";import{message as d}from"antd/es";import{connect as h}from"react-redux";import j from"lodash";import{store as w}from"../../../index.js";import A from"../../../hooks/useSize.js";import{InitToolStyleConfig as x}from"../../../store/toolStyle/actionCreators.js";import{ImgUtils as z}from"@labelbee/lb-annotation";import C from"../../../components/fileException/FileError.js";import{i18n as v}from"@labelbee/lb-utils";var R=Object.defineProperty,L=Object.defineProperties,N=Object.getOwnPropertyDescriptors,O=Object.getOwnPropertySymbols,D=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable,_=(t,e,o)=>e in t?R(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,S=(t,e)=>{for(var o in e||(e={}))D.call(e,o)&&_(t,o,e[o]);if(O)for(var o of O(e))k.call(e,o)&&_(t,o,e[o]);return t},F=(t,e)=>L(t,N(e));const T=t=>{const[,e]=P(0),{imgAttribute:o,toolStyle:s,toolInstance:n,annotationEngine:r,imgList:m,imgIndex:I,dataInjectionAtCreation:f,renderEnhance:p}=t,u=g(null),b=g(null),l=A(u);a(()=>{w.dispatch(x())},[]),a(()=>{if(!!r){switch(v.language){case"cn":case"en":r.setLang(v.language);break}r==null||r.setDataInjectionAtCreation(f),r==null||r.setRenderEnhance(p)}},[r,f,p]),a(()=>{n&&(n.singleOn("messageError",i=>{d.error(i)}),n.singleOn("messageInfo",i=>{d.info(i)}),n.singleOn("changeAnnotationShow",()=>{e(i=>i+1)}))},[n]),a(()=>{n&&n.setImgAttribute(o)},[o]),a(()=>{n&&n.setStyle(s),r&&r.setStyle(s)},[s]),a(()=>{(n==null?void 0:n.setSize)&&n.setSize(l),r&&r.setSize(l)},[l]);const y=()=>{const i=m==null?void 0:m[I];!(i==null?void 0:i.url)||z.load(i.url).then(E=>{r.setImgNode(E)})};return c.createElement("div",{ref:u,className:"annotationOperation"},c.createElement("div",{className:"canvas",ref:b,style:l,id:"toolContainer"}),(n==null?void 0:n.isImgError)===!0&&c.createElement(C,F(S({},l),{reloadImage:y,backgroundColor:"#e2e2e2",ignoreOffsetY:!0})))},B=t=>{const e=j.pickBy(t.annotation,(o,s)=>["imgList","imgIndex","stepList","step","toolInstance","annotationEngine","loading"].includes(s));return S({imgAttribute:t.imgAttribute,toolStyle:t.toolStyle},e)};var U=h(B)(T);export{U as default};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/views/MainView/annotationOperation/index.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { Spin, message } from 'antd/es';\nimport { AppState } from 'src/store';\nimport { connect } from 'react-redux';\nimport { ImgAttributeState } from 'src/store/imgAttribute/types';\nimport _ from 'lodash';\nimport { store } from '@/index';\n\nimport useSize from '@/hooks/useSize';\nimport { InitToolStyleConfig } from '@/store/toolStyle/actionCreators';\nimport { AnnotationEngine, ImgUtils } from '@labelbee/lb-annotation';\nimport ImageError from '@/components/ImageError';\nimport { i18n } from '@labelbee/lb-utils';\nimport { AppProps } from '@/App';\n\ninterface IProps extends AppState, AppProps {\n imgAttribute: ImgAttributeState;\n imgIndex: number;\n annotationEngine: AnnotationEngine;\n loading: boolean;\n}\n\nconst AnnotationOperation: React.FC<IProps> = (props: IProps) => {\n const [, forceRender] = useState<number>(0);\n\n const {\n imgAttribute,\n toolStyle,\n toolInstance,\n annotationEngine,\n loading,\n imgList,\n imgIndex,\n dataInjectionAtCreation,\n renderEnhance,\n } = props;\n const annotationRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n // const windowSize = useContext(viewportContext);\n // const canvasSize = getFormatSize(windowSize);\n const size = useSize(annotationRef);\n\n useEffect(() => {\n store.dispatch(InitToolStyleConfig());\n }, []);\n\n useEffect(() => {\n if (!annotationEngine) {\n return;\n }\n\n // 更改 toolInstance 内部国际化语言\n switch (i18n.language) {\n case 'cn':\n case 'en':\n annotationEngine.setLang(i18n.language);\n break;\n default: {\n //\n break;\n }\n }\n annotationEngine?.setDataInjectionAtCreation(dataInjectionAtCreation);\n annotationEngine?.setRenderEnhance(renderEnhance);\n }, [annotationEngine, dataInjectionAtCreation, renderEnhance]);\n\n useEffect(() => {\n if (toolInstance) {\n toolInstance.singleOn('messageError', (error: string) => {\n message.error(error);\n });\n\n toolInstance.singleOn('messageInfo', (info: string) => {\n message.info(info);\n });\n\n toolInstance.singleOn('changeAnnotationShow', () => {\n forceRender((s) => s + 1);\n });\n }\n }, [toolInstance]);\n\n useEffect(() => {\n if (toolInstance) {\n toolInstance.setImgAttribute(imgAttribute);\n }\n }, [imgAttribute]);\n\n /** 样式同步 */\n useEffect(() => {\n if (toolInstance) {\n toolInstance.setStyle(toolStyle);\n }\n if (annotationEngine) {\n annotationEngine.setStyle(toolStyle);\n }\n }, [toolStyle]);\n\n /** 窗口大小监听 */\n useEffect(() => {\n if (toolInstance?.setSize) {\n toolInstance.setSize(size);\n }\n\n if (annotationEngine) {\n annotationEngine.setSize(size);\n }\n }, [size]);\n\n /**\n * 重新加载图片,避免网络问题导致的图片无法加载\n * @returns\n */\n const reloadImg = () => {\n const imgInfo = imgList[imgIndex];\n if (!imgInfo.url) {\n return;\n }\n\n ImgUtils.load(imgInfo.url).then((imgNode) => {\n annotationEngine.setImgNode(imgNode as HTMLImageElement);\n });\n };\n\n return (\n <div ref={annotationRef} className='annotationOperation'>\n <Spin spinning={loading} delay={500}>\n <div className='canvas' ref={containerRef} style={size} id='toolContainer' />\n </Spin>\n {toolInstance?.isImgError === true && (\n <ImageError\n {...size}\n reloadImage={reloadImg}\n backgroundColor='#e2e2e2'\n ignoreOffsetY={true}\n />\n )}\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => {\n const annotationState = _.pickBy(state.annotation, (v, k) =>\n [\n 'imgList',\n 'imgIndex',\n 'stepList',\n 'step',\n 'toolInstance',\n 'annotationEngine',\n 'loading',\n ].includes(k),\n );\n return {\n imgAttribute: state.imgAttribute,\n toolStyle: state.toolStyle,\n ...annotationState,\n };\n};\n\nexport default connect(mapStateToProps)(AnnotationOperation);\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/views/MainView/annotationOperation/index.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { message } from 'antd/es';\nimport { AppState } from 'src/store';\nimport { connect } from 'react-redux';\nimport { ImgAttributeState } from 'src/store/imgAttribute/types';\nimport _ from 'lodash';\nimport { store } from '@/index';\n\nimport useSize from '@/hooks/useSize';\nimport { InitToolStyleConfig } from '@/store/toolStyle/actionCreators';\nimport { AnnotationEngine, ImgUtils } from '@labelbee/lb-annotation';\nimport FileError from '@/components/fileException/FileError';\nimport { i18n } from '@labelbee/lb-utils';\nimport { AppProps } from '@/App';\n\ninterface IProps extends AppState, AppProps {\n imgAttribute: ImgAttributeState;\n imgIndex: number;\n annotationEngine: AnnotationEngine;\n loading: boolean;\n}\n\nconst AnnotationOperation: React.FC<IProps> = (props: IProps) => {\n const [, forceRender] = useState<number>(0);\n\n const {\n imgAttribute,\n toolStyle,\n toolInstance,\n annotationEngine,\n imgList,\n imgIndex,\n dataInjectionAtCreation,\n renderEnhance,\n } = props;\n const annotationRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n // const windowSize = useContext(viewportContext);\n // const canvasSize = getFormatSize(windowSize);\n const size = useSize(annotationRef);\n\n useEffect(() => {\n store.dispatch(InitToolStyleConfig());\n }, []);\n\n useEffect(() => {\n if (!annotationEngine) {\n return;\n }\n\n // 更改 toolInstance 内部国际化语言\n switch (i18n.language) {\n case 'cn':\n case 'en':\n annotationEngine.setLang(i18n.language);\n break;\n default: {\n //\n break;\n }\n }\n annotationEngine?.setDataInjectionAtCreation(dataInjectionAtCreation);\n annotationEngine?.setRenderEnhance(renderEnhance);\n }, [annotationEngine, dataInjectionAtCreation, renderEnhance]);\n\n useEffect(() => {\n if (toolInstance) {\n toolInstance.singleOn('messageError', (error: string) => {\n message.error(error);\n });\n\n toolInstance.singleOn('messageInfo', (info: string) => {\n message.info(info);\n });\n\n toolInstance.singleOn('changeAnnotationShow', () => {\n forceRender((s) => s + 1);\n });\n }\n }, [toolInstance]);\n\n useEffect(() => {\n if (toolInstance) {\n toolInstance.setImgAttribute(imgAttribute);\n }\n }, [imgAttribute]);\n\n /** 样式同步 */\n useEffect(() => {\n if (toolInstance) {\n toolInstance.setStyle(toolStyle);\n }\n if (annotationEngine) {\n annotationEngine.setStyle(toolStyle);\n }\n }, [toolStyle]);\n\n /** 窗口大小监听 */\n useEffect(() => {\n if (toolInstance?.setSize) {\n toolInstance.setSize(size);\n }\n\n if (annotationEngine) {\n annotationEngine.setSize(size);\n }\n }, [size]);\n\n /**\n * 重新加载图片,避免网络问题导致的图片无法加载\n * @returns\n */\n const reloadImg = () => {\n const imgInfo = imgList?.[imgIndex];\n if (!imgInfo?.url) {\n return;\n }\n\n ImgUtils.load(imgInfo.url).then((imgNode) => {\n annotationEngine.setImgNode(imgNode as HTMLImageElement);\n });\n };\n\n return (\n <div ref={annotationRef} className='annotationOperation'>\n <div className='canvas' ref={containerRef} style={size} id='toolContainer' />\n {toolInstance?.isImgError === true && (\n <FileError\n {...size}\n reloadImage={reloadImg}\n backgroundColor='#e2e2e2'\n ignoreOffsetY={true}\n />\n )}\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => {\n const annotationState = _.pickBy(state.annotation, (v, k) =>\n [\n 'imgList',\n 'imgIndex',\n 'stepList',\n 'step',\n 'toolInstance',\n 'annotationEngine',\n 'loading',\n ].includes(k),\n );\n return {\n imgAttribute: state.imgAttribute,\n toolStyle: state.toolStyle,\n ...annotationState,\n };\n};\n\nexport default connect(mapStateToProps)(AnnotationOperation);\n"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import e from"react";import{Tooltip as a}from"antd";import{prefix as n}from"../../../constant/index.js";const r=({tips:t})=>t?e.createElement("div",{className:`${n}-tips`},e.createElement("div",{className:""},e.createElement(a,{placement:"bottomRight",title:t},e.createElement("span",{className:""},t)))):null;export{r as default};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/views/MainView/annotationTips/index.tsx"],"sourcesContent":["/*\n * Annotation Tips Showing\n * @Author: Laoluo luozefeng@sensetime.com\n * @Date: 2022-05-11 17:15:30\n * @LastEditors: Laoluo luozefeng@sensetime.com\n * @LastEditTime: 2022-05-12 19:34:32\n */\nimport React from 'react';\nimport { Tooltip } from 'antd';\nimport { prefix } from '@/constant';\n\ninterface IProps {\n tips: string;\n}\n\nconst AnnotationTips = ({ tips }: IProps) => {\n if (!tips) {\n return null;\n }\n\n return (\n <div className={`${prefix}-tips`}>\n <div className=''>\n <Tooltip placement='bottomRight' title={tips}>\n <span className=''>{tips}</span>\n </Tooltip>\n </div>\n </div>\n );\n};\n\nexport default AnnotationTips;\n"],"names":[],"mappings":";;;;AAeM,MAAA,cAAA,GAAiB,CAAC,CAAE,IAAmB,CAAA,KAAA;AAC3C,EAAA,IAAI,CAAC,IAAM,EAAA;AACT,IAAO,OAAA,IAAA,CAAA;AAAA,GAAA;AAGT,EAAA,2CACG,KAAD,EAAA;AAAA,IAAK,WAAW,CAAG,EAAA,MAAA,CAAA,KAAA,CAAA;AAAA,GAAA,sCAChB,KAAD,EAAA;AAAA,IAAK,SAAU,EAAA,EAAA;AAAA,GAAA,sCACZ,OAAD,EAAA;AAAA,IAAS,SAAU,EAAA,aAAA;AAAA,IAAc,KAAO,EAAA,IAAA;AAAA,GAAA,sCACrC,MAAD,EAAA;AAAA,IAAM,SAAU,EAAA,EAAA;AAAA,GAAI,EAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- import{ViewportProvider as c}from"../../components/customResizeHook/index.js";import{prefix as s}from"../../constant/index.js";import{Layout as l}from"antd/es";import a from"react";import u from"./annotationOperation/index.js";import f from"./sidebar/index.js";import _ from"./toolFooter/index.js";import y from"./toolHeader/index.js";var v=Object.defineProperty,m=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable,d=(e,t,r)=>t in e?v(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,x=(e,t)=>{for(var r in t||(t={}))E.call(t,r)&&d(e,r,t[r]);if(m)for(var r of m(t))h.call(t,r)&&d(e,r,t[r]);return e};const{Sider:O,Content:j}=l,o=`${s}-layout`,w=e=>{var t,r,n,i;return a.createElement(c,null,a.createElement(l,{className:`${o} ${e.className}`,style:(t=e.style)==null?void 0:t.layout},a.createElement("header",{className:`${o}__header`,style:(r=e.style)==null?void 0:r.header},a.createElement(y,{header:e==null?void 0:e.header,headerName:e.headerName,goBack:e.goBack,exportData:e.exportData}),","),a.createElement(l,null,e==null?void 0:e.leftSider,a.createElement(j,{className:`${o}__content`},a.createElement(u,x({},e)),a.createElement(_,{style:(n=e.style)==null?void 0:n.footer,mode:e.mode,footer:e==null?void 0:e.footer})),a.createElement(O,{className:`${o}__side`,width:"auto",style:(i=e.style)==null?void 0:i.sider},a.createElement(f,{sider:e==null?void 0:e.sider})))))};export{w as default};
1
+ import{ViewportProvider as f}from"../../components/customResizeHook/index.js";import{prefix as v}from"../../constant/index.js";import{Spin as _}from"antd";import{Layout as c}from"antd/es";import n from"react";import E from"./annotationOperation/index.js";import y from"./annotationTips/index.js";import g from"./sidebar/index.js";import h from"./toolFooter/index.js";import x from"./toolHeader/index.js";import{getStepConfig as j}from"../../store/annotation/reducer.js";import{cTool as O}from"@labelbee/lb-annotation";import T from"../../components/videoAnnotate/index.js";import{connect as b}from"react-redux";var w=Object.defineProperty,s=Object.getOwnPropertySymbols,N=Object.prototype.hasOwnProperty,P=Object.prototype.propertyIsEnumerable,u=(e,t,o)=>t in e?w(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,l=(e,t)=>{for(var o in t||(t={}))N.call(t,o)&&u(e,o,t[o]);if(s)for(var o of s(t))P.call(t,o)&&u(e,o,t[o]);return e};const{EVideoToolName:S}=O,{Sider:V,Content:p}=c,i=`${v}-layout`,A=e=>{var t;return n.createElement(n.Fragment,null,e.showTips===!0&&n.createElement(y,{tips:e.path}),n.createElement(E,l({},e)),n.createElement(h,{style:(t=e.style)==null?void 0:t.footer,mode:e.mode,footer:e==null?void 0:e.footer}))},$=e=>{var t;const{stepList:o,step:r}=e,m=(t=j(o,r))==null?void 0:t.tool;return Object.values(S).includes(m)?n.createElement(T,l({},e)):n.createElement(A,l({},e))},I=e=>{var t,o,r;return n.createElement(f,null,n.createElement(_,{spinning:e.loading},n.createElement(c,{className:`${i} ${e.className}`,style:(t=e.style)==null?void 0:t.layout},n.createElement("header",{className:`${i}__header`,style:(o=e.style)==null?void 0:o.header},n.createElement(x,{header:e==null?void 0:e.header,headerName:e.headerName,goBack:e.goBack,exportData:e.exportData})),n.createElement(c,null,e==null?void 0:e.leftSider,n.createElement(p,{className:`${i}__content`},n.createElement($,l({},e))),n.createElement(V,{className:`${i}__side`,width:"auto",style:(r=e.style)==null?void 0:r.sider},n.createElement(g,{sider:e==null?void 0:e.sider}))))))},C=({annotation:e})=>{var t,o,r;const{imgList:m,loading:d}=e,a=(t=m[e.imgIndex])!=null?t:{};return{path:(r=(o=a==null?void 0:a.url)!=null?o:a==null?void 0:a.path)!=null?r:"",loading:d}};var F=b(C)(I);export{F as default};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/views/MainView/index.tsx"],"sourcesContent":["import { AppProps } from '@/App';\nimport { ViewportProvider } from '@/components/customResizeHook';\nimport { prefix } from '@/constant';\nimport { Layout } from 'antd/es';\nimport React from 'react';\nimport AnnotationOperation from './annotationOperation';\nimport Sidebar from './sidebar';\nimport ToolFooter from './toolFooter';\nimport ToolHeader from './toolHeader';\n\nconst { Sider, Content } = Layout;\n\nconst layoutCls = `${prefix}-layout`;\nconst MainView: React.FC<AppProps> = (props) => {\n return (\n <ViewportProvider>\n <Layout className={`${layoutCls} ${props.className}`} style={props.style?.layout}>\n <header className={`${layoutCls}__header`} style={props.style?.header}>\n <ToolHeader\n header={props?.header}\n headerName={props.headerName}\n goBack={props.goBack}\n exportData={props.exportData}\n />\n ,\n </header>\n <Layout>\n {props?.leftSider}\n <Content className={`${layoutCls}__content`}>\n <AnnotationOperation {...props} />\n <ToolFooter style={props.style?.footer} mode={props.mode} footer={props?.footer} />\n </Content>\n <Sider className={`${layoutCls}__side`} width='auto' style={props.style?.sider}>\n <Sidebar sider={props?.sider} />\n </Sider>\n </Layout>\n </Layout>\n </ViewportProvider>\n );\n};\n\nexport default MainView;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAUA,MAAM,CAAE,OAAO,OAAY,CAAA,GAAA,MAAA,CAAA;AAE3B,MAAM,YAAY,CAAG,EAAA,MAAA,CAAA,OAAA,CAAA,CAAA;AACf,MAAA,QAAA,GAA+B,CAAC,KAAU,KAAA;AAbhD,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAcE,EAAA,uBACG,KAAA,CAAA,aAAA,CAAA,gBAAA,EAAD,IACE,kBAAA,KAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AAAA,IAAQ,SAAA,EAAW,CAAG,EAAA,SAAA,CAAA,CAAA,EAAa,KAAM,CAAA,SAAA,CAAA,CAAA;AAAA,IAAa,KAAA,EAAO,CAAM,EAAA,GAAA,KAAA,CAAA,KAAA,KAAN,IAAa,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA;AAAA,GAAA,sCACvE,QAAD,EAAA;AAAA,IAAQ,WAAW,CAAG,EAAA,SAAA,CAAA,QAAA,CAAA;AAAA,IAAqB,KAAA,EAAO,CAAM,EAAA,GAAA,KAAA,CAAA,KAAA,KAAN,IAAa,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA;AAAA,GAAA,sCAC5D,UAAD,EAAA;AAAA,IACE,QAAQ,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,MAAA;AAAA,IACf,YAAY,KAAM,CAAA,UAAA;AAAA,IAClB,QAAQ,KAAM,CAAA,MAAA;AAAA,IACd,YAAY,KAAM,CAAA,UAAA;AAAA,GAAA,CAAA,EAClB,sBAGH,KAAA,CAAA,aAAA,CAAA,MAAA,EAAD,MACG,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,SAAA,sCACP,OAAD,EAAA;AAAA,IAAS,WAAW,CAAG,EAAA,SAAA,CAAA,SAAA,CAAA;AAAA,GAAA,kBACpB,KAAA,CAAA,aAAA,CAAA,mBAAA,EAAD,cAAyB,CAAA,EAAA,EAAA,KAAA,CAAA,CAAA,sCACxB,UAAD,EAAA;AAAA,IAAY,KAAA,EAAO,CAAM,EAAA,GAAA,KAAA,CAAA,KAAA,KAAN,IAAa,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA;AAAA,IAAQ,MAAM,KAAM,CAAA,IAAA;AAAA,IAAM,QAAQ,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,MAAA;AAAA,GAAA,CAAA,CAAA,sCAE1E,KAAD,EAAA;AAAA,IAAO,WAAW,CAAG,EAAA,SAAA,CAAA,MAAA,CAAA;AAAA,IAAmB,KAAM,EAAA,MAAA;AAAA,IAAO,KAAA,EAAO,CAAM,EAAA,GAAA,KAAA,CAAA,KAAA,KAAN,IAAa,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA;AAAA,GAAA,sCACtE,OAAD,EAAA;AAAA,IAAS,OAAO,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,KAAA;AAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/views/MainView/index.tsx"],"sourcesContent":["import { AppProps } from '@/App';\nimport { ViewportProvider } from '@/components/customResizeHook';\nimport { prefix } from '@/constant';\nimport { Spin } from 'antd';\nimport { Layout } from 'antd/es';\nimport _ from 'lodash';\nimport React from 'react';\nimport AnnotationOperation from './annotationOperation';\nimport AnnotationTips from './annotationTips';\nimport Sidebar from './sidebar';\nimport ToolFooter from './toolFooter';\nimport ToolHeader from './toolHeader';\nimport { getStepConfig } from '@/store/annotation/reducer';\nimport { cTool } from '@labelbee/lb-annotation';\n\nimport VideoAnnotate from '@/components/videoAnnotate';\nimport { AppState } from '@/store';\nimport { connect } from 'react-redux';\n\nconst { EVideoToolName } = cTool;\n\ninterface IProps {\n path: string;\n loading: boolean;\n}\n\nconst { Sider, Content } = Layout;\n\nconst layoutCls = `${prefix}-layout`;\n\nconst ImageAnnotate: React.FC<AppProps & IProps> = (props) => {\n return (\n <>\n {props.showTips === true && <AnnotationTips tips={props.path} />}\n <AnnotationOperation {...props} />\n <ToolFooter style={props.style?.footer} mode={props.mode} footer={props?.footer} />\n </>\n );\n};\n\nconst AnnotatedArea: React.FC<AppProps & IProps> = (props) => {\n const { stepList, step } = props;\n const currentToolName = getStepConfig(stepList, step)?.tool;\n const isVideoTool = Object.values(EVideoToolName).includes(currentToolName);\n if (isVideoTool) {\n return <VideoAnnotate {...props} />;\n }\n\n return <ImageAnnotate {...props} />;\n};\n\nconst MainView: React.FC<AppProps & IProps> = (props) => {\n return (\n <ViewportProvider>\n <Spin spinning={props.loading}>\n <Layout className={`${layoutCls} ${props.className}`} style={props.style?.layout}>\n <header className={`${layoutCls}__header`} style={props.style?.header}>\n <ToolHeader\n header={props?.header}\n headerName={props.headerName}\n goBack={props.goBack}\n exportData={props.exportData}\n />\n </header>\n <Layout>\n {props?.leftSider}\n <Content className={`${layoutCls}__content`}>\n <AnnotatedArea {...props} />\n </Content>\n <Sider className={`${layoutCls}__side`} width='auto' style={props.style?.sider}>\n <Sidebar sider={props?.sider} />\n </Sider>\n </Layout>\n </Layout>\n </Spin>\n </ViewportProvider>\n );\n};\n\nconst mapStateToProps = ({ annotation }: AppState) => {\n const { imgList, loading } = annotation;\n const imgInfo = imgList[annotation.imgIndex] ?? {};\n return {\n path: imgInfo?.url ?? imgInfo?.path ?? '', // 将当前路径的数据注入\n loading,\n };\n};\n\nexport default connect(mapStateToProps)(MainView);\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- import n,{useState as f}from"react";import{Col as y,Popconfirm as h}from"antd/es";import S from"../../../../assets/annotation/common/icon_clear.svg.js";import _ from"../../../../assets/annotation/common/icon_clear_a.svg.js";import k from"../../../../assets/annotation/common/icon_invalid.svg.js";import C from"../../../../assets/annotation/common/icon_invalid_a.svg.js";import{StopOutlined as p}from"@ant-design/icons";import{store as x}from"../../../../index.js";import{connect as E}from"react-redux";import O from"../../../../utils/StepUtils.js";import{jsonParser as j}from"../../../../utils/index.js";import{CopyBackWordResult as P}from"../../../../store/annotation/actionCreators.js";import{useTranslation as w}from"react-i18next";var L=Object.defineProperty,u=Object.getOwnPropertySymbols,N=Object.prototype.hasOwnProperty,T=Object.prototype.propertyIsEnumerable,v=(e,t,r)=>t in e?L(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,b=(e,t)=>{for(var r in t||(t={}))N.call(t,r)&&v(e,r,t[r]);if(u)for(var r of u(t))T.call(t,r)&&v(e,r,t[r]);return e};const I=(e,t,r)=>n.createElement("div",{key:t},`${r("ConfirmTo")}${e.slice(0)}\uFF1F`),R=e=>typeof e=="string"?n.createElement("img",{width:23,height:25,src:e}):e,$=({toolInstance:e,stepInfo:t,imgList:r,imgIndex:s})=>{const[l,m]=f(null),{t:a}=w(),i=[{name:a("ClearLabel"),key:"sureClear",imgSvg:S,hoverSvg:_,onClick:()=>{e==null||e.clearResult()}}],c=j(t==null?void 0:t.config);if((t==null?void 0:t.dataSourceStep)===0){const o={height:"25px",lineHeight:"25px",display:"flex",justifyContent:"center",alignItems:"center"};i.push({name:a(e.valid===!0?"SetAsInvalid":"SetAsValid"),key:"sureQuestion",imgSvg:n.createElement(p,{style:o}),hoverSvg:n.createElement(p,{style:b({color:"#666fff"},o)}),onClick:()=>{e.setValid(!e.valid)}})}(c==null?void 0:c.copyBackwardResult)&&i.unshift({name:a("CopyThePrevious"),key:"sureCopy",imgSvg:k,hoverSvg:C,onClick:()=>{x.dispatch(P())}});const g=Math.floor(24/i.length);return n.createElement("div",{className:"generalOperation"},i.map((o,d)=>n.createElement(y,{span:g,key:d},n.createElement("div",{key:o.key,className:"item",onMouseEnter:()=>{m(o.key)},onMouseLeave:()=>{m(null)}},n.createElement(h,{title:o.key.startsWith("sure")?I(o.name,o.key,a):o.name,disabled:!o.key.startsWith("sure"),placement:"topRight",okText:a("Confirm"),cancelText:a("Cancel"),onConfirm:o.onClick},n.createElement("div",{className:"icon"},R(o.key===l?o.hoverSvg:o.imgSvg)),n.createElement("div",{className:"toolName",style:{color:o.key===l?"#666fff":""}},o.name))))))},F=e=>{var t,r;const s=O.getCurrentStepInfo((t=e.annotation)==null?void 0:t.step,(r=e.annotation)==null?void 0:r.stepList);return{toolInstance:e.annotation.toolInstance,stepInfo:s,imgList:e.annotation.imgList,imgIndex:e.annotation.imgIndex}};var H=E(F)($);export{H as default};
1
+ import n,{useState as g}from"react";import{Col as d,Popconfirm as f}from"antd/es";import y from"../../../../assets/annotation/common/icon_clear.svg.js";import h from"../../../../assets/annotation/common/icon_clear_a.svg.js";import S from"../../../../assets/annotation/common/icon_invalid.svg.js";import _ from"../../../../assets/annotation/common/icon_invalid_a.svg.js";import{StopOutlined as m}from"@ant-design/icons";import{store as k}from"../../../../index.js";import{connect as C}from"react-redux";import E from"../../../../utils/StepUtils.js";import{jsonParser as O}from"../../../../utils/index.js";import{CopyBackWordResult as j}from"../../../../store/annotation/actionCreators.js";import{useTranslation as x}from"react-i18next";var P=Object.defineProperty,c=Object.getOwnPropertySymbols,w=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,p=(e,t,r)=>t in e?P(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,N=(e,t)=>{for(var r in t||(t={}))w.call(t,r)&&p(e,r,t[r]);if(c)for(var r of c(t))L.call(t,r)&&p(e,r,t[r]);return e};const T=(e,t,r)=>n.createElement("div",{key:t},`${r("ConfirmTo")}${e.slice(0)}\uFF1F`),$=e=>typeof e=="string"?n.createElement("img",{width:23,height:25,src:e}):e,b=({toolInstance:e,stepInfo:t})=>{const[r,i]=g(null),{t:a}=x(),s=[{name:a("ClearLabel"),key:"sureClear",imgSvg:y,hoverSvg:h,onClick:()=>{e==null||e.clearResult()}}],l=O(t==null?void 0:t.config);if((t==null?void 0:t.dataSourceStep)===0){const o={height:"25px",lineHeight:"25px",display:"flex",justifyContent:"center",alignItems:"center"};s.push({name:a(e.valid===!0?"SetAsInvalid":"SetAsValid"),key:"sureQuestion",imgSvg:n.createElement(m,{style:o}),hoverSvg:n.createElement(m,{style:N({color:"#666fff"},o)}),onClick:()=>{e.setValid(!e.valid)}})}(l==null?void 0:l.copyBackwardResult)&&s.unshift({name:a("CopyThePrevious"),key:"sureCopy",imgSvg:S,hoverSvg:_,onClick:()=>{k.dispatch(j())}});const u=Math.floor(24/s.length);return n.createElement("div",{className:"generalOperation"},s.map((o,v)=>n.createElement(d,{span:u,key:v},n.createElement("div",{key:o.key,className:"item",onMouseEnter:()=>{i(o.key)},onMouseLeave:()=>{i(null)}},n.createElement(f,{title:o.key.startsWith("sure")?T(o.name,o.key,a):o.name,disabled:!o.key.startsWith("sure"),placement:"topRight",okText:a("Confirm"),cancelText:a("Cancel"),onConfirm:o.onClick},n.createElement("div",{className:"icon"},$(o.key===r?o.hoverSvg:o.imgSvg)),n.createElement("div",{className:"toolName",style:{color:o.key===r?"#666fff":""}},o.name))))))},R=e=>{var t,r;const i=E.getCurrentStepInfo((t=e.annotation)==null?void 0:t.step,(r=e.annotation)==null?void 0:r.stepList);return{toolInstance:e.annotation.toolInstance,stepInfo:i,imgList:e.annotation.imgList,imgIndex:e.annotation.imgIndex}};var I=C(R)(b);export{I as default};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/views/MainView/sidebar/GeneralOperation/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Col, Popconfirm } from 'antd/es';\nimport clearResultSvg from '@/assets/annotation/common/icon_clear.svg';\nimport clearResultASvg from '@/assets/annotation/common/icon_clear_a.svg';\nimport copyBackStepSvg from '@/assets/annotation/common/icon_invalid.svg';\nimport copyBackStepASvg from '@/assets/annotation/common/icon_invalid_a.svg';\nimport { StopOutlined } from '@ant-design/icons';\nimport { store } from '@/index';\n\nimport { AppState } from '@/store';\nimport { connect } from 'react-redux';\nimport { ToolInstance } from '@/store/annotation/types';\nimport StepUtils from '@/utils/StepUtils';\nimport { IStepInfo } from '@/types/step';\nimport { jsonParser } from '@/utils';\nimport { AnnotationFileList } from '@/types/data';\nimport { CopyBackWordResult } from '@/store/annotation/actionCreators';\nimport { useTranslation } from 'react-i18next';\n\nconst makeSure = (info: string, key: string, t: any) => {\n return <div key={key}>{`${t('ConfirmTo')}${info.slice(0)}?`}</div>;\n};\n\nconst renderImg = (info: Element | string) => {\n if (typeof info === 'string') {\n return <img width={23} height={25} src={info} />;\n }\n return info;\n};\n\ninterface IProps {\n toolInstance: ToolInstance;\n stepInfo: IStepInfo;\n imgList: AnnotationFileList;\n imgIndex: number;\n}\n\nconst GenerationOperation: React.FC<IProps> = ({ toolInstance, stepInfo, imgList, imgIndex }) => {\n const [isHover, setHover] = useState<string | null>(null);\n const { t } = useTranslation();\n const allOperation = [\n {\n name: t('ClearLabel'),\n key: 'sureClear',\n imgSvg: clearResultSvg,\n hoverSvg: clearResultASvg,\n onClick: () => {\n toolInstance?.clearResult();\n },\n },\n ];\n\n const config = jsonParser(stepInfo?.config);\n if (stepInfo?.dataSourceStep === 0) {\n const iconStyle = {\n height: '25px',\n lineHeight: '25px',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n };\n allOperation.push({\n name: t(toolInstance.valid === true ? 'SetAsInvalid' : 'SetAsValid'),\n key: 'sureQuestion',\n imgSvg: <StopOutlined style={iconStyle} />,\n hoverSvg: <StopOutlined style={{ color: '#666fff', ...iconStyle }} />,\n onClick: () => {\n toolInstance.setValid(!toolInstance.valid);\n },\n });\n }\n\n if (config?.copyBackwardResult) {\n allOperation.unshift({\n name: t('CopyThePrevious'),\n key: 'sureCopy',\n imgSvg: copyBackStepSvg,\n hoverSvg: copyBackStepASvg,\n onClick: () => {\n store.dispatch(CopyBackWordResult());\n },\n });\n }\n\n const annotationLength = Math.floor(24 / allOperation.length);\n\n return (\n <div className='generalOperation'>\n {allOperation.map((info, index) => (\n <Col span={annotationLength} key={index}>\n <div\n key={info.key}\n className='item'\n onMouseEnter={() => {\n setHover(info.key);\n }}\n onMouseLeave={() => {\n setHover(null);\n }}\n >\n <Popconfirm\n title={info.key.startsWith('sure') ? makeSure(info.name, info.key, t) : info.name}\n disabled={!info.key.startsWith('sure')}\n placement='topRight'\n okText={t('Confirm')}\n cancelText={t('Cancel')}\n onConfirm={info.onClick}\n >\n <div className='icon'>\n {renderImg(info.key === isHover ? info.hoverSvg : info.imgSvg)}\n </div>\n <div className='toolName' style={{ color: info.key === isHover ? '#666fff' : '' }}>\n {info.name}\n </div>\n </Popconfirm>\n </div>\n </Col>\n ))}\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => {\n const stepInfo = StepUtils.getCurrentStepInfo(state.annotation?.step, state.annotation?.stepList);\n\n return {\n toolInstance: state.annotation.toolInstance,\n stepInfo,\n imgList: state.annotation.imgList,\n imgIndex: state.annotation.imgIndex,\n };\n};\n\nexport default connect(mapStateToProps)(GenerationOperation);\n"],"names":["clearResultSvg","clearResultASvg","copyBackStepSvg","copyBackStepASvg"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/views/MainView/sidebar/GeneralOperation/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Col, Popconfirm } from 'antd/es';\nimport clearResultSvg from '@/assets/annotation/common/icon_clear.svg';\nimport clearResultASvg from '@/assets/annotation/common/icon_clear_a.svg';\nimport copyBackStepSvg from '@/assets/annotation/common/icon_invalid.svg';\nimport copyBackStepASvg from '@/assets/annotation/common/icon_invalid_a.svg';\nimport { StopOutlined } from '@ant-design/icons';\nimport { store } from '@/index';\n\nimport { AppState } from '@/store';\nimport { connect } from 'react-redux';\nimport { ToolInstance } from '@/store/annotation/types';\nimport StepUtils from '@/utils/StepUtils';\nimport { IStepInfo } from '@/types/step';\nimport { jsonParser } from '@/utils';\nimport { AnnotationFileList } from '@/types/data';\nimport { CopyBackWordResult } from '@/store/annotation/actionCreators';\nimport { useTranslation } from 'react-i18next';\n\nconst makeSure = (info: string, key: string, t: any) => {\n return <div key={key}>{`${t('ConfirmTo')}${info.slice(0)}?`}</div>;\n};\n\nconst renderImg = (info: Element | string) => {\n if (typeof info === 'string') {\n return <img width={23} height={25} src={info} />;\n }\n return info;\n};\n\ninterface IProps {\n toolInstance: ToolInstance;\n stepInfo: IStepInfo;\n imgList: AnnotationFileList;\n imgIndex: number;\n}\n\nconst GeneralOperation: React.FC<IProps> = ({ toolInstance, stepInfo }) => {\n const [isHover, setHover] = useState<string | null>(null);\n const { t } = useTranslation();\n const allOperation = [\n {\n name: t('ClearLabel'),\n key: 'sureClear',\n imgSvg: clearResultSvg,\n hoverSvg: clearResultASvg,\n onClick: () => {\n toolInstance?.clearResult();\n },\n },\n ];\n\n const config = jsonParser(stepInfo?.config);\n if (stepInfo?.dataSourceStep === 0) {\n const iconStyle = {\n height: '25px',\n lineHeight: '25px',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n };\n allOperation.push({\n name: t(toolInstance.valid === true ? 'SetAsInvalid' : 'SetAsValid'),\n key: 'sureQuestion',\n imgSvg: <StopOutlined style={iconStyle} />,\n hoverSvg: <StopOutlined style={{ color: '#666fff', ...iconStyle }} />,\n onClick: () => {\n toolInstance.setValid(!toolInstance.valid);\n },\n });\n }\n\n if (config?.copyBackwardResult) {\n allOperation.unshift({\n name: t('CopyThePrevious'),\n key: 'sureCopy',\n imgSvg: copyBackStepSvg,\n hoverSvg: copyBackStepASvg,\n onClick: () => {\n store.dispatch(CopyBackWordResult());\n },\n });\n }\n\n const annotationLength = Math.floor(24 / allOperation.length);\n\n return (\n <div className='generalOperation'>\n {allOperation.map((info, index) => (\n <Col span={annotationLength} key={index}>\n <div\n key={info.key}\n className='item'\n onMouseEnter={() => {\n setHover(info.key);\n }}\n onMouseLeave={() => {\n setHover(null);\n }}\n >\n <Popconfirm\n title={info.key.startsWith('sure') ? makeSure(info.name, info.key, t) : info.name}\n disabled={!info.key.startsWith('sure')}\n placement='topRight'\n okText={t('Confirm')}\n cancelText={t('Cancel')}\n onConfirm={info.onClick}\n >\n <div className='icon'>\n {renderImg(info.key === isHover ? info.hoverSvg : info.imgSvg)}\n </div>\n <div className='toolName' style={{ color: info.key === isHover ? '#666fff' : '' }}>\n {info.name}\n </div>\n </Popconfirm>\n </div>\n </Col>\n ))}\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => {\n const stepInfo = StepUtils.getCurrentStepInfo(state.annotation?.step, state.annotation?.stepList);\n\n return {\n toolInstance: state.annotation.toolInstance,\n stepInfo,\n imgList: state.annotation.imgList,\n imgIndex: state.annotation.imgIndex,\n };\n};\n\nexport default connect(mapStateToProps)(GeneralOperation);\n"],"names":["clearResultSvg","clearResultASvg","copyBackStepSvg","copyBackStepASvg"],"mappings":"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"}
@@ -1 +1 @@
1
- import B from"../../../../components/attributeList/index.js";import M from"../../../../components/checkboxList/index.js";import{CaretRightOutlined as P}from"@ant-design/icons";import{Collapse as T,Tooltip as H,Badge as F}from"antd/es";import{cloneDeep as U}from"lodash";import n,{useState as p,useRef as q,useEffect as v,useCallback as z}from"react";import G from"../../../../assets/annotation/common/icon_clearSmall.svg.js";import J from"../../../../assets/annotation/common/icon_clearSmall_a.svg.js";import{TagUtils as Q}from"@labelbee/lb-annotation";import{connect as V}from"react-redux";import{useTranslation as W}from"react-i18next";const{Panel:X}=T,$=({isActive:a})=>n.createElement(P,{rotate:a?90:0}),Y=({toolInstance:a,imgIndex:N})=>{const[o,g]=p([]),i=q(null),[,j]=p(0),[w,f]=p(-1),{t:b}=W();v(()=>{a&&(g(a.config.inputList.map(e=>e.value)),a.singleOn("render",()=>{j(e=>e+1)}))},[a]),v(()=>{if(a&&(a.singleOn("expend",O),a.labelSelectedList.length===1)){let e=0;for(let l=0;l<a.labelSelectedList[0];l++)e+=46,s[l]&&o[l]!==""&&s[l].subSelected.forEach(r=>{e+=40});i.current&&(i.current.children[0].scrollTop=e)}}),v(()=>{i.current&&(i.current.children[0].scrollTop=0)},[N]);const O=()=>{var e;const l=a.labelSelectedList[0],r=(e=s.filter((t,m)=>m===l)[0])==null?void 0:e.value;h(l,r,!0)},h=z((e,l,r)=>{const t=U(o);t[e]===""||r===!0?t[e]=l:t[e]="",g(t)},[o]);if(!a)return null;const{labelSelectedList:c,config:{inputList:s},currentTagResult:u,setLabel:E}=a,A=e=>c.length>0&&c[0]===e?n.createElement("span",{className:"keyDownIconActive"},e+1):n.createElement("span",{className:"keyDownIcon"},e+1),y=(e,l=-1)=>e?e.map((r,t)=>{var m,L,k,_,C;if(r.subSelected){const R=Q.judgeResultIsInInputList(r.value,(m=u==null?void 0:u.result)==null?void 0:m[r.value],s);return n.createElement(T,{bordered:!1,expandIcon:$,key:`collapse_${t}_${l+1}`,onChange:()=>h(t,r.value),activeKey:[o[t]]},n.createElement(X,{header:n.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},n.createElement("span",null,r.key,n.createElement(H,{placement:"bottom",title:b("ClearThisOption")},n.createElement("img",{style:{marginLeft:5,cursor:"pointer"},onClick:K=>{K.stopPropagation(),a.clearResult(!0,r.value)},src:w===t||R?J:G,onMouseEnter:()=>{f(t)},onMouseLeave:()=>{f(-1)}})),R&&o[t]===""&&n.createElement(F,{color:"#87d068"})),(s==null?void 0:s.length)>1&&A(t)),key:r.value},n.createElement("div",{className:"level",style:{backgroundColor:c.length>0&&c[0]===t?"rgba(158, 158, 158, 0.18)":""}},y(r.subSelected,t))))}const d=(s==null?void 0:s[l])?s==null?void 0:s[l].value:0,S=((_=(k=(L=u==null?void 0:u.result)==null?void 0:L[d])==null?void 0:k.split(";"))==null?void 0:_.indexOf(r.value))>-1?r.value:"";return((C=s==null?void 0:s[l])==null?void 0:C.isMulti)===!0?n.createElement("div",{className:"singleBar",key:`${d}_${l}_${t}`},n.createElement(M,{attributeChanged:()=>E(l,t),selectedAttribute:[S],list:[{value:r.value,label:r.key}],num:t+1})):n.createElement("div",{className:"singleBar",key:`${d}_${l}_${t}`},n.createElement(B,{forbidColor:!0,attributeChanged:()=>E(l,t),selectedAttribute:S,list:[{value:r.value,label:r.key}],num:t+1}))}):null,D=window.innerHeight-61-80;return n.createElement("div",{className:"tagOperationMenu",ref:i},(s==null?void 0:s.length)===0?n.createElement("div",{style:{padding:20,textAlign:"center"}},b("NoConfiguration")):n.createElement("div",{className:"main",style:{height:D}},y(s)))};function Z(a){return{toolInstance:a.annotation.toolInstance,imgIndex:a.annotation.imgIndex}}var x=V(Z)(Y);export{x as default,$ as expandIconFuc};
1
+ import B from"../../../../components/attributeList/index.js";import M from"../../../../components/checkboxList/index.js";import{CaretRightOutlined as P}from"@ant-design/icons";import{Collapse as T,Tooltip as H,Badge as F}from"antd/es";import{cloneDeep as U}from"lodash";import n,{useState as p,useRef as q,useEffect as v,useCallback as z}from"react";import G from"../../../../assets/annotation/common/icon_clearSmall.svg.js";import J from"../../../../assets/annotation/common/icon_clearSmall_a.svg.js";import{TagUtils as Q}from"@labelbee/lb-annotation";import{connect as V}from"react-redux";import{useTranslation as W}from"react-i18next";const{Panel:X}=T,$=({isActive:a})=>n.createElement(P,{rotate:a?90:0}),Y=({toolInstance:a,imgIndex:N})=>{const[o,g]=p([]),i=q(null),[,j]=p(0),[w,f]=p(-1),{t:b}=W();v(()=>{a&&(g(a.config.inputList.map(e=>e.value)),a.singleOn("render",()=>{j(e=>e+1)}))},[a]),v(()=>{if(a&&(a.singleOn("expend",O),a.labelSelectedList.length===1)){let e=0;for(let l=0;l<a.labelSelectedList[0];l++)e+=46,s[l]&&o[l]!==""&&s[l].subSelected.forEach(r=>{e+=40});i.current&&(i.current.children[0].scrollTop=e)}}),v(()=>{i.current&&(i.current.children[0].scrollTop=0)},[N]);const O=()=>{var e;const l=a.labelSelectedList[0],r=(e=s.filter((t,m)=>m===l)[0])==null?void 0:e.value;h(l,r,!0)},h=z((e,l,r)=>{const t=U(o);t[e]===""||r===!0?t[e]=l:t[e]="",g(t)},[o]);if(!a)return null;const{labelSelectedList:c,config:{inputList:s},currentTagResult:u,setLabel:E}=a,A=e=>c.length>0&&c[0]===e?n.createElement("span",{className:"keyDownIconActive"},e+1):n.createElement("span",{className:"keyDownIcon"},e+1),y=(e,l=-1)=>e?e.map((r,t)=>{var m,L,k,_,C;if(r.subSelected){const R=Q.judgeResultIsInInputList(r.value,(m=u==null?void 0:u.result)==null?void 0:m[r.value],s);return n.createElement(T,{bordered:!1,expandIcon:$,key:`collapse_${t}_${l+1}`,onChange:()=>h(t,r.value),activeKey:[o[t]]},n.createElement(X,{header:n.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",flex:1}},n.createElement("span",null,r.key,n.createElement(H,{placement:"bottom",title:b("ClearThisOption")},n.createElement("img",{style:{marginLeft:5,cursor:"pointer"},onClick:K=>{K.stopPropagation(),a.clearResult(!0,r.value)},src:w===t||R?J:G,onMouseEnter:()=>{f(t)},onMouseLeave:()=>{f(-1)}})),R&&o[t]===""&&n.createElement(F,{color:"#87d068"})),(s==null?void 0:s.length)>1&&A(t)),key:r.value},n.createElement("div",{className:"level",style:{backgroundColor:c.length>0&&c[0]===t?"rgba(158, 158, 158, 0.18)":""}},y(r.subSelected,t))))}const d=(s==null?void 0:s[l])?s==null?void 0:s[l].value:0,S=((_=(k=(L=u==null?void 0:u.result)==null?void 0:L[d])==null?void 0:k.split(";"))==null?void 0:_.indexOf(r.value))>-1?r.value:"";return((C=s==null?void 0:s[l])==null?void 0:C.isMulti)===!0?n.createElement("div",{className:"singleBar",key:`${d}_${l}_${t}`},n.createElement(M,{attributeChanged:()=>E(l,t),selectedAttribute:[S],list:[{value:r.value,label:r.key}],num:t+1})):n.createElement("div",{className:"singleBar",key:`${d}_${l}_${t}`},n.createElement(B,{forbidColor:!0,attributeChanged:()=>E(l,t),selectedAttribute:S,list:[{value:r.value,label:r.key}],num:t+1}))}):null,D=window.innerHeight-61-80;return n.createElement("div",{className:"tagOperationMenu",ref:i},(s==null?void 0:s.length)===0?n.createElement("div",{style:{padding:20,textAlign:"center"}},b("NoConfiguration")):n.createElement("div",{className:"main",style:{height:D}},y(s)))};function Z(a){return{toolInstance:a.annotation.toolInstance,imgIndex:a.annotation.imgIndex}}var x=V(Z)(Y);export{x as default,$ as expandIconFuc};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/views/MainView/sidebar/TagSidebar/index.tsx"],"sourcesContent":["import RadioList from '@/components/attributeList';\nimport CheckBoxList from '@/components/checkboxList';\nimport { CaretRightOutlined } from '@ant-design/icons';\nimport { Badge, Collapse, Tooltip } from 'antd/es';\nimport { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport clearSmall from '@/assets/annotation/common/icon_clearSmall.svg';\nimport clearSmallA from '@/assets/annotation/common/icon_clearSmall_a.svg';\nimport { TagOperation, TagUtils } from '@labelbee/lb-annotation';\nimport { connect } from 'react-redux';\nimport { AppState } from '@/store';\nimport { IInputList } from '@/types/main';\nimport { useTranslation } from 'react-i18next';\n\ninterface IProps {\n imgIndex: number;\n toolInstance: TagOperation;\n}\n\nconst { Panel } = Collapse;\n\nexport const expandIconFuc = ({ isActive }: any) => (\n <CaretRightOutlined rotate={isActive ? 90 : 0} />\n);\n\nconst TagSidebar: React.FC<IProps> = ({ toolInstance, imgIndex }) => {\n const [expandKeyList, setExpandKeyList] = useState<string[]>([]);\n\n const sidebarRef = useRef<HTMLDivElement>(null);\n const [, forceRender] = useState<number>(0);\n const [hoverDeleteIndex, setHoverDeleteIndex] = useState(-1);\n const { t } = useTranslation();\n\n useEffect(() => {\n if (toolInstance) {\n // 用于配置的初始化\n setExpandKeyList(toolInstance.config.inputList.map((v: IInputList) => v.value));\n\n // 进行实时渲染\n toolInstance.singleOn('render', () => {\n forceRender((s) => s + 1);\n });\n }\n }, [toolInstance]);\n\n useEffect(() => {\n if (toolInstance) {\n // 该写法会不断的重复绑定,后续写法上可以更改(如果将 singleOn 改为 on 会有很大问题)\n toolInstance.singleOn('expend', expendRender);\n\n if (toolInstance.labelSelectedList.length === 1) {\n let height = 0;\n for (let i = 0; i < toolInstance.labelSelectedList[0]; i++) {\n height += 46;\n inputList[i] &&\n expandKeyList[i] !== '' &&\n inputList[i].subSelected.forEach((i: any) => {\n height += 40;\n });\n }\n if (sidebarRef.current) {\n sidebarRef.current.children[0].scrollTop = height;\n }\n }\n }\n });\n\n useEffect(() => {\n // 翻页侧边栏跳到最上\n if (sidebarRef.current) {\n sidebarRef.current.children[0].scrollTop = 0;\n }\n }, [imgIndex]);\n\n const expendRender = () => {\n const index = toolInstance.labelSelectedList[0];\n const value = inputList.filter((v: IInputList, i: number) => i === index)[0]?.value;\n setExpendKeyList(index, value, true);\n };\n\n const setExpendKeyList = useCallback(\n (index: number, value: string, expend?: boolean) => {\n const newKeyList = cloneDeep(expandKeyList);\n if (newKeyList[index] === '' || expend === true) {\n newKeyList[index] = value;\n } else {\n newKeyList[index] = '';\n }\n setExpandKeyList(newKeyList);\n },\n [expandKeyList],\n );\n\n if (!toolInstance) return null;\n\n const {\n labelSelectedList,\n config: { inputList },\n currentTagResult,\n setLabel,\n } = toolInstance;\n\n const selectedButton = (index: number) => {\n if (labelSelectedList.length > 0 && labelSelectedList[0] === index) {\n return <span className='keyDownIconActive'>{index + 1}</span>;\n }\n return <span className='keyDownIcon'>{index + 1}</span>;\n };\n\n // basicIndex 到底是那一层\n const labelPanel = (labelInfoSet: IInputList[], basicIndex = -1) => {\n if (!labelInfoSet) {\n return null;\n }\n\n return labelInfoSet.map((info: IInputList, index: number) => {\n if (info.subSelected) {\n // 判断是否有数据\n const isResult = TagUtils.judgeResultIsInInputList(\n info.value,\n currentTagResult?.result?.[info.value],\n inputList,\n );\n\n return (\n <Collapse\n bordered={false}\n expandIcon={expandIconFuc}\n key={`collapse_${index}_${basicIndex + 1}`}\n onChange={() => setExpendKeyList(index, info.value)}\n activeKey={[expandKeyList[index]]}\n >\n <Panel\n header={\n <div\n style={{\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n }}\n >\n <span>\n {info.key}\n <Tooltip placement='bottom' title={t('ClearThisOption')}>\n <img\n style={{ marginLeft: 5, cursor: 'pointer' }}\n onClick={(e) => {\n e.stopPropagation();\n toolInstance.clearResult(true, info.value);\n }}\n src={hoverDeleteIndex === index || isResult ? clearSmallA : clearSmall}\n onMouseEnter={() => {\n setHoverDeleteIndex(index);\n }}\n onMouseLeave={() => {\n setHoverDeleteIndex(-1);\n }}\n />\n </Tooltip>\n {isResult && expandKeyList[index] === '' && <Badge color='#87d068' />}\n </span>\n\n {inputList?.length > 1 && selectedButton(index)}\n </div>\n }\n key={info.value}\n >\n <div\n className='level'\n style={{\n backgroundColor:\n labelSelectedList.length > 0 && labelSelectedList[0] === index\n ? 'rgba(158, 158, 158, 0.18)'\n : '',\n }}\n >\n {labelPanel(info.subSelected, index)}\n </div>\n </Panel>\n </Collapse>\n );\n }\n const key = inputList?.[basicIndex] ? inputList?.[basicIndex].value : 0;\n const selectedAttribute =\n currentTagResult?.result?.[key]?.split(';')?.indexOf(info.value) > -1 ? info.value : '';\n\n if (inputList?.[basicIndex]?.isMulti === true) {\n return (\n <div className='singleBar' key={`${key}_${basicIndex}_${index}`}>\n <CheckBoxList\n attributeChanged={() => setLabel(basicIndex, index)}\n selectedAttribute={[selectedAttribute]}\n list={[{ value: info.value, label: info.key }]}\n num={index + 1}\n />\n </div>\n );\n }\n return (\n <div className='singleBar' key={`${key}_${basicIndex}_${index}`}>\n <RadioList\n forbidColor\n attributeChanged={() => setLabel(basicIndex, index)}\n selectedAttribute={selectedAttribute}\n list={[{ value: info.value, label: info.key }]}\n num={index + 1}\n />\n </div>\n );\n });\n };\n const height = window.innerHeight - 61 - 80;\n\n return (\n <div className='tagOperationMenu' ref={sidebarRef}>\n {inputList?.length === 0 ? (\n <div style={{ padding: 20, textAlign: 'center' }}>{t('NoConfiguration')}</div>\n ) : (\n <div className='main' style={{ height }}>\n {labelPanel(inputList)}\n </div>\n )}\n </div>\n );\n};\n\nfunction mapStateToProps(state: AppState) {\n return { toolInstance: state.annotation.toolInstance, imgIndex: state.annotation.imgIndex };\n}\n\nexport default connect(mapStateToProps)(TagSidebar);\n"],"names":["clearSmallA","clearSmall","CheckBoxList","RadioList"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/views/MainView/sidebar/TagSidebar/index.tsx"],"sourcesContent":["import RadioList from '@/components/attributeList';\nimport CheckBoxList from '@/components/checkboxList';\nimport { CaretRightOutlined } from '@ant-design/icons';\nimport { Badge, Collapse, Tooltip } from 'antd/es';\nimport { cloneDeep } from 'lodash';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport clearSmall from '@/assets/annotation/common/icon_clearSmall.svg';\nimport clearSmallA from '@/assets/annotation/common/icon_clearSmall_a.svg';\nimport { TagOperation, TagUtils } from '@labelbee/lb-annotation';\nimport { connect } from 'react-redux';\nimport { AppState } from '@/store';\nimport { IInputList } from '@/types/main';\nimport { useTranslation } from 'react-i18next';\n\ninterface IProps {\n imgIndex: number;\n toolInstance: TagOperation;\n}\n\nconst { Panel } = Collapse;\n\nexport const expandIconFuc = ({ isActive }: any) => (\n <CaretRightOutlined rotate={isActive ? 90 : 0} />\n);\n\nconst TagSidebar: React.FC<IProps> = ({ toolInstance, imgIndex }) => {\n const [expandKeyList, setExpandKeyList] = useState<string[]>([]);\n\n const sidebarRef = useRef<HTMLDivElement>(null);\n const [, forceRender] = useState<number>(0);\n const [hoverDeleteIndex, setHoverDeleteIndex] = useState(-1);\n const { t } = useTranslation();\n\n useEffect(() => {\n if (toolInstance) {\n // 用于配置的初始化\n setExpandKeyList(toolInstance.config.inputList.map((v: IInputList) => v.value));\n\n // 进行实时渲染\n toolInstance.singleOn('render', () => {\n forceRender((s) => s + 1);\n });\n }\n }, [toolInstance]);\n\n useEffect(() => {\n if (toolInstance) {\n // 该写法会不断的重复绑定,后续写法上可以更改(如果将 singleOn 改为 on 会有很大问题)\n toolInstance.singleOn('expend', expendRender);\n\n if (toolInstance.labelSelectedList.length === 1) {\n let height = 0;\n for (let i = 0; i < toolInstance.labelSelectedList[0]; i++) {\n height += 46;\n inputList[i] &&\n expandKeyList[i] !== '' &&\n inputList[i].subSelected.forEach((i: any) => {\n height += 40;\n });\n }\n if (sidebarRef.current) {\n sidebarRef.current.children[0].scrollTop = height;\n }\n }\n }\n });\n\n useEffect(() => {\n // 翻页侧边栏跳到最上\n if (sidebarRef.current) {\n sidebarRef.current.children[0].scrollTop = 0;\n }\n }, [imgIndex]);\n\n const expendRender = () => {\n const index = toolInstance.labelSelectedList[0];\n const value = inputList.filter((v: IInputList, i: number) => i === index)[0]?.value;\n setExpendKeyList(index, value, true);\n };\n\n const setExpendKeyList = useCallback(\n (index: number, value: string, expend?: boolean) => {\n const newKeyList = cloneDeep(expandKeyList);\n if (newKeyList[index] === '' || expend === true) {\n newKeyList[index] = value;\n } else {\n newKeyList[index] = '';\n }\n setExpandKeyList(newKeyList);\n },\n [expandKeyList],\n );\n\n if (!toolInstance) return null;\n\n const {\n labelSelectedList,\n config: { inputList },\n currentTagResult,\n setLabel,\n } = toolInstance;\n\n const selectedButton = (index: number) => {\n if (labelSelectedList.length > 0 && labelSelectedList[0] === index) {\n return <span className='keyDownIconActive'>{index + 1}</span>;\n }\n return <span className='keyDownIcon'>{index + 1}</span>;\n };\n\n // basicIndex 到底是那一层\n const labelPanel = (labelInfoSet: IInputList[], basicIndex = -1) => {\n if (!labelInfoSet) {\n return null;\n }\n\n return labelInfoSet.map((info: IInputList, index: number) => {\n if (info.subSelected) {\n // 判断是否有数据\n const isResult = TagUtils.judgeResultIsInInputList(\n info.value,\n currentTagResult?.result?.[info.value],\n inputList,\n );\n\n return (\n <Collapse\n bordered={false}\n expandIcon={expandIconFuc}\n key={`collapse_${index}_${basicIndex + 1}`}\n onChange={() => setExpendKeyList(index, info.value)}\n activeKey={[expandKeyList[index]]}\n >\n <Panel\n header={\n <div\n style={{\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n flex: 1,\n }}\n >\n <span>\n {info.key}\n <Tooltip placement='bottom' title={t('ClearThisOption')}>\n <img\n style={{ marginLeft: 5, cursor: 'pointer' }}\n onClick={(e) => {\n e.stopPropagation();\n toolInstance.clearResult(true, info.value);\n }}\n src={hoverDeleteIndex === index || isResult ? clearSmallA : clearSmall}\n onMouseEnter={() => {\n setHoverDeleteIndex(index);\n }}\n onMouseLeave={() => {\n setHoverDeleteIndex(-1);\n }}\n />\n </Tooltip>\n {isResult && expandKeyList[index] === '' && <Badge color='#87d068' />}\n </span>\n\n {inputList?.length > 1 && selectedButton(index)}\n </div>\n }\n key={info.value}\n >\n <div\n className='level'\n style={{\n backgroundColor:\n labelSelectedList.length > 0 && labelSelectedList[0] === index\n ? 'rgba(158, 158, 158, 0.18)'\n : '',\n }}\n >\n {labelPanel(info.subSelected, index)}\n </div>\n </Panel>\n </Collapse>\n );\n }\n const key = inputList?.[basicIndex] ? inputList?.[basicIndex].value : 0;\n const selectedAttribute =\n currentTagResult?.result?.[key]?.split(';')?.indexOf(info.value) > -1 ? info.value : '';\n\n if (inputList?.[basicIndex]?.isMulti === true) {\n return (\n <div className='singleBar' key={`${key}_${basicIndex}_${index}`}>\n <CheckBoxList\n attributeChanged={() => setLabel(basicIndex, index)}\n selectedAttribute={[selectedAttribute]}\n list={[{ value: info.value, label: info.key }]}\n num={index + 1}\n />\n </div>\n );\n }\n return (\n <div className='singleBar' key={`${key}_${basicIndex}_${index}`}>\n <RadioList\n forbidColor\n attributeChanged={() => setLabel(basicIndex, index)}\n selectedAttribute={selectedAttribute}\n list={[{ value: info.value, label: info.key }]}\n num={index + 1}\n />\n </div>\n );\n });\n };\n const height = window.innerHeight - 61 - 80;\n\n return (\n <div className='tagOperationMenu' ref={sidebarRef}>\n {inputList?.length === 0 ? (\n <div style={{ padding: 20, textAlign: 'center' }}>{t('NoConfiguration')}</div>\n ) : (\n <div className='main' style={{ height }}>\n {labelPanel(inputList)}\n </div>\n )}\n </div>\n );\n};\n\nfunction mapStateToProps(state: AppState) {\n return { toolInstance: state.annotation.toolInstance, imgIndex: state.annotation.imgIndex };\n}\n\nexport default connect(mapStateToProps)(TagSidebar);\n"],"names":["clearSmallA","clearSmall","CheckBoxList","RadioList"],"mappings":"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"}
@@ -1 +1 @@
1
- import S from"../../../assets/annotation/lineTool/icon_line_a.svg.js";import E from"../../../assets/annotation/pointTool/icon_point_a.svg.js";import T from"../../../assets/annotation/polygonTool/icon_polygon_a.svg.js";import x from"../../../assets/annotation/rectTool/icon_rectPattern.svg.js";import{prefix as h}from"../../../constant/index.js";import{EToolName as t}from"../../../data/enums/ToolType.js";import L from"../../../utils/StepUtils.js";import{Row as C,Collapse as s}from"antd/es";import e from"react";import{useTranslation as R}from"react-i18next";import{useSelector as w}from"react-redux";import O from"./AnnotationText/index.js";import z from"./ClearIcon/index.js";import B from"./GeneralOperation/index.js";import G from"./ImgAttributeInfo/index.js";import K from"./SwitchAttributeList/index.js";import _,{expandIconFuc as N}from"./TagSidebar/index.js";import b from"./TextToolSidebar/index.js";import U from"./ToolStyle/index.js";const{Panel:j}=s,y=[{toolName:t.Rect,commonSvg:x,selectedSvg:x},{toolName:t.Polygon,commonSvg:T,selectedSvg:T},{toolName:t.Line,commonSvg:S,selectedSvg:S,pattern:t.Line},{toolName:t.Point,commonSvg:E,selectedSvg:E,pattern:"drawPoint"}],o=`${h}-sidebar`,k=({sider:a})=>{const m=w(n=>L.getCurrentStepInfo(n.annotation.step,n.annotation.stepList)),l=m==null?void 0:m.tool,{t:c}=R();if(!l)return null;const r=y==null?void 0:y.find(n=>(n==null?void 0:n.toolName)===l),I=n=>{const P=e.createElement(U,null);return e.createElement(j,{header:c("Style"),className:"panel",key:n},P)},d=e.createElement("div",{className:`${o}__level`},e.createElement(C,{className:`${o}__toolsOption`},r&&e.createElement("a",null,e.createElement("img",{className:`${o}__singleTool`,src:r==null?void 0:r.selectedSvg})))),p=e.createElement(K,null),u=e.createElement(O,null),f=e.createElement(s,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${o}__content`,expandIcon:N},I("1")),g=e.createElement(s,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${o}__content`,expandIcon:N},e.createElement(j,{header:e.createElement("div",null,c("Adjust"),e.createElement(z,null)),className:"panel",key:"imgAttribute"},e.createElement(G,null))),v=e.createElement(B,null),$=e.createElement(_,null),A=e.createElement(b,null),i=e.createElement("div",{className:`${o}__horizontal`});return a?typeof a=="function"?e.createElement("div",{className:`${o}`},a({toolIcon:d,attributeList:p,annotationText:u,toolStyle:f,imageAttributeInfo:g,operation:v,tagToolSideBar:$,textToolSideBar:A,horizontal:i})):a:[t.Rect,t.Point,t.Line,t.Rect,t.Polygon].includes(l)?e.createElement("div",{className:`${o}`},d,i,p,u,i,e.createElement("div",{className:`${o}__content`},f,g),v):l===t.Tag?e.createElement("div",{className:`${o}`},e.createElement(_,null)):l===t.Text?e.createElement("div",{className:`${o}`},e.createElement(b,null)):null};export{k as default};
1
+ import T from"../../../assets/annotation/lineTool/icon_line_a.svg.js";import S from"../../../assets/annotation/pointTool/icon_point_a.svg.js";import x from"../../../assets/annotation/polygonTool/icon_polygon_a.svg.js";import N from"../../../assets/annotation/rectTool/icon_rectPattern.svg.js";import{prefix as h}from"../../../constant/index.js";import{EToolName as o}from"../../../data/enums/ToolType.js";import L from"../../../utils/StepUtils.js";import{Row as C,Collapse as m}from"antd/es";import e from"react";import{useTranslation as R}from"react-i18next";import{useSelector as w}from"react-redux";import O from"./AnnotationText/index.js";import z from"./ClearIcon/index.js";import B from"./GeneralOperation/index.js";import G from"./ImgAttributeInfo/index.js";import K from"./SwitchAttributeList/index.js";import c,{expandIconFuc as _}from"./TagSidebar/index.js";import b from"./TextToolSidebar/index.js";import U from"./ToolStyle/index.js";import{cTool as V}from"@labelbee/lb-annotation";const{EVideoToolName:k}=V,{Panel:$}=m,j=[{toolName:o.Rect,commonSvg:N,selectedSvg:N},{toolName:o.Polygon,commonSvg:x,selectedSvg:x},{toolName:o.Line,commonSvg:T,selectedSvg:T,pattern:o.Line},{toolName:o.Point,commonSvg:S,selectedSvg:S,pattern:"drawPoint"}],t=`${h}-sidebar`,F=({sider:a})=>{const d=w(n=>L.getCurrentStepInfo(n.annotation.step,n.annotation.stepList)),l=d==null?void 0:d.tool,{t:u}=R();if(!l)return null;const r=j==null?void 0:j.find(n=>(n==null?void 0:n.toolName)===l),y=n=>{const P=e.createElement(U,null);return e.createElement($,{header:u("Style"),className:"panel",key:n},P)},p=e.createElement("div",{className:`${t}__level`},e.createElement(C,{className:`${t}__toolsOption`},r&&e.createElement("a",null,e.createElement("img",{className:`${t}__singleTool`,src:r==null?void 0:r.selectedSvg})))),f=e.createElement(K,null),g=e.createElement(O,null),v=e.createElement(m,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${t}__content`,expandIcon:_},y("1")),E=e.createElement(m,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${t}__content`,expandIcon:_},e.createElement($,{header:e.createElement("div",null,u("Adjust"),e.createElement(z,null)),className:"panel",key:"imgAttribute"},e.createElement(G,null))),i=e.createElement(B,null),I=e.createElement(c,null),A=e.createElement(b,null),s=e.createElement("div",{className:`${t}__horizontal`});return a?typeof a=="function"?e.createElement("div",{className:`${t}`},a({toolIcon:p,attributeList:f,annotationText:g,toolStyle:v,imageAttributeInfo:E,operation:i,tagToolSideBar:I,textToolSideBar:A,horizontal:s})):a:[o.Rect,o.Point,o.Line,o.Rect,o.Polygon].includes(l)?e.createElement("div",{className:`${t}`},p,s,f,g,s,e.createElement("div",{className:`${t}__content`},v,E),i):l===o.Tag?e.createElement("div",{className:`${t}`},e.createElement(c,null)):l===k.VideoTagTool?e.createElement("div",{className:`${t}`},e.createElement("div",{className:`${t}__content`},e.createElement(c,null)),i):l===o.Text?e.createElement("div",{className:`${t}`},e.createElement(b,null)):null};export{F as default};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/views/MainView/sidebar/index.tsx"],"sourcesContent":["import lineASvg from '@/assets/annotation/lineTool/icon_line_a.svg';\nimport pointASvg from '@/assets/annotation/pointTool/icon_point_a.svg';\nimport iconPolygonPatternASvg from '@/assets/annotation/polygonTool/icon_polygon_a.svg';\nimport iconRectPatternSvg from '@/assets/annotation/rectTool/icon_rectPattern.svg';\nimport { prefix } from '@/constant';\nimport { EToolName } from '@/data/enums/ToolType';\nimport { AppState } from '@/store';\nimport { Sider } from '@/types/main';\nimport StepUtils from '@/utils/StepUtils';\nimport { Collapse, Row } from 'antd/es';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useSelector } from 'react-redux';\nimport AnnotationText from './AnnotationText';\nimport ClearIcon from './ClearIcon';\nimport GeneralOperation from './GeneralOperation';\nimport ImgAttributeInfo from './ImgAttributeInfo';\nimport SwitchAttributeList from './SwitchAttributeList';\nimport TagSidebar, { expandIconFuc } from './TagSidebar';\nimport TextToolSidebar from './TextToolSidebar';\nimport ToolStyle from './ToolStyle';\n\nconst { Panel } = Collapse;\n\ninterface IProps {\n toolName?: EToolName;\n sider?: Sider;\n}\n\nconst toolList = [\n {\n toolName: EToolName.Rect,\n commonSvg: iconRectPatternSvg,\n selectedSvg: iconRectPatternSvg,\n },\n // 多边形工具\n {\n toolName: EToolName.Polygon,\n commonSvg: iconPolygonPatternASvg,\n selectedSvg: iconPolygonPatternASvg,\n },\n {\n toolName: EToolName.Line,\n commonSvg: lineASvg,\n selectedSvg: lineASvg,\n pattern: EToolName.Line,\n },\n {\n toolName: EToolName.Point,\n commonSvg: pointASvg,\n selectedSvg: pointASvg,\n pattern: 'drawPoint',\n },\n];\nconst sidebarCls = `${prefix}-sidebar`;\nconst Sidebar: React.FC<IProps> = ({ sider }) => {\n const stepInfo = useSelector((state: AppState) =>\n StepUtils.getCurrentStepInfo(state.annotation.step, state.annotation.stepList),\n );\n const toolName = stepInfo?.tool as EToolName;\n const { t } = useTranslation();\n\n if (!toolName) {\n return null;\n }\n\n const renderTool = toolList?.find((item) => item?.toolName === toolName);\n\n /**\n * 样式面板, 包含透明度、线框、颜色\n * @param key 虚拟dom的key\n */\n const renderStylePanel = (key: string) => {\n const ToolStyleComponent = <ToolStyle />;\n return (\n <Panel header={t('Style')} className='panel' key={key}>\n {ToolStyleComponent}\n </Panel>\n );\n };\n\n const toolIcon = (\n <div className={`${sidebarCls}__level`}>\n <Row className={`${sidebarCls}__toolsOption`}>\n {renderTool && (\n <a>\n <img className={`${sidebarCls}__singleTool`} src={renderTool?.selectedSvg} />\n </a>\n )}\n </Row>\n </div>\n );\n\n const attributeList = <SwitchAttributeList />;\n\n const annotationText = <AnnotationText />;\n\n const toolStyle = (\n <Collapse\n defaultActiveKey={['1', 'imgAttribute']}\n bordered={false}\n expandIconPosition='right'\n className={`${sidebarCls}__content`}\n expandIcon={expandIconFuc}\n >\n {renderStylePanel('1')}\n </Collapse>\n );\n\n const imageAttributeInfo = (\n <Collapse\n defaultActiveKey={['1', 'imgAttribute']}\n bordered={false}\n expandIconPosition='right'\n className={`${sidebarCls}__content`}\n expandIcon={expandIconFuc}\n >\n <Panel\n header={\n <div>\n {t('Adjust')}\n\n <ClearIcon />\n </div>\n }\n className='panel'\n key='imgAttribute'\n >\n <ImgAttributeInfo />\n </Panel>\n </Collapse>\n );\n\n const operation = <GeneralOperation />;\n\n const tagToolSideBar = <TagSidebar />;\n\n const textToolSideBar = <TextToolSidebar />;\n\n const horizontal = <div className={`${sidebarCls}__horizontal`} />;\n\n if (sider) {\n if (typeof sider === 'function') {\n return (\n <div className={`${sidebarCls}`}>\n {sider({\n toolIcon,\n attributeList,\n annotationText,\n toolStyle,\n imageAttributeInfo,\n operation,\n tagToolSideBar,\n textToolSideBar,\n horizontal,\n })}\n </div>\n );\n } else {\n return sider;\n }\n }\n\n if (\n [EToolName.Rect, EToolName.Point, EToolName.Line, EToolName.Rect, EToolName.Polygon].includes(\n toolName,\n )\n ) {\n return (\n <div className={`${sidebarCls}`}>\n {toolIcon}\n {horizontal}\n {attributeList}\n {annotationText}\n {horizontal}\n <div className={`${sidebarCls}__content`}>\n {toolStyle}\n {imageAttributeInfo}\n </div>\n {operation}\n </div>\n );\n }\n\n if (toolName === EToolName.Tag) {\n return (\n <div className={`${sidebarCls}`}>\n <TagSidebar />\n </div>\n );\n }\n\n if (toolName === EToolName.Text) {\n return (\n <div className={`${sidebarCls}`}>\n <TextToolSidebar />\n </div>\n );\n }\n\n return null;\n};\n\nexport default Sidebar;\n"],"names":["iconRectPatternSvg","iconPolygonPatternASvg","lineASvg","pointASvg","ClearIcon"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/views/MainView/sidebar/index.tsx"],"sourcesContent":["import lineASvg from '@/assets/annotation/lineTool/icon_line_a.svg';\nimport pointASvg from '@/assets/annotation/pointTool/icon_point_a.svg';\nimport iconPolygonPatternASvg from '@/assets/annotation/polygonTool/icon_polygon_a.svg';\nimport iconRectPatternSvg from '@/assets/annotation/rectTool/icon_rectPattern.svg';\nimport { prefix } from '@/constant';\nimport { EToolName } from '@/data/enums/ToolType';\nimport { AppState } from '@/store';\nimport { Sider } from '@/types/main';\nimport StepUtils from '@/utils/StepUtils';\nimport { Collapse, Row } from 'antd/es';\nimport React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useSelector } from 'react-redux';\nimport AnnotationText from './AnnotationText';\nimport ClearIcon from './ClearIcon';\nimport GeneralOperation from './GeneralOperation';\nimport ImgAttributeInfo from './ImgAttributeInfo';\nimport SwitchAttributeList from './SwitchAttributeList';\nimport TagSidebar, { expandIconFuc } from './TagSidebar';\nimport TextToolSidebar from './TextToolSidebar';\nimport ToolStyle from './ToolStyle';\nimport { cTool } from '@labelbee/lb-annotation';\n\nconst { EVideoToolName } = cTool;\n\nconst { Panel } = Collapse;\n\ninterface IProps {\n toolName?: EToolName;\n sider?: Sider;\n}\n\nconst toolList = [\n {\n toolName: EToolName.Rect,\n commonSvg: iconRectPatternSvg,\n selectedSvg: iconRectPatternSvg,\n },\n // 多边形工具\n {\n toolName: EToolName.Polygon,\n commonSvg: iconPolygonPatternASvg,\n selectedSvg: iconPolygonPatternASvg,\n },\n {\n toolName: EToolName.Line,\n commonSvg: lineASvg,\n selectedSvg: lineASvg,\n pattern: EToolName.Line,\n },\n {\n toolName: EToolName.Point,\n commonSvg: pointASvg,\n selectedSvg: pointASvg,\n pattern: 'drawPoint',\n },\n];\nconst sidebarCls = `${prefix}-sidebar`;\nconst Sidebar: React.FC<IProps> = ({ sider }) => {\n const stepInfo = useSelector((state: AppState) =>\n StepUtils.getCurrentStepInfo(state.annotation.step, state.annotation.stepList),\n );\n const toolName = stepInfo?.tool;\n const { t } = useTranslation();\n\n if (!toolName) {\n return null;\n }\n\n const renderTool = toolList?.find((item) => item?.toolName === toolName);\n\n /**\n * 样式面板, 包含透明度、线框、颜色\n * @param key 虚拟dom的key\n */\n const renderStylePanel = (key: string) => {\n const ToolStyleComponent = <ToolStyle />;\n return (\n <Panel header={t('Style')} className='panel' key={key}>\n {ToolStyleComponent}\n </Panel>\n );\n };\n\n const toolIcon = (\n <div className={`${sidebarCls}__level`}>\n <Row className={`${sidebarCls}__toolsOption`}>\n {renderTool && (\n <a>\n <img className={`${sidebarCls}__singleTool`} src={renderTool?.selectedSvg} />\n </a>\n )}\n </Row>\n </div>\n );\n\n const attributeList = <SwitchAttributeList />;\n\n const annotationText = <AnnotationText />;\n\n const toolStyle = (\n <Collapse\n defaultActiveKey={['1', 'imgAttribute']}\n bordered={false}\n expandIconPosition='right'\n className={`${sidebarCls}__content`}\n expandIcon={expandIconFuc}\n >\n {renderStylePanel('1')}\n </Collapse>\n );\n\n const imageAttributeInfo = (\n <Collapse\n defaultActiveKey={['1', 'imgAttribute']}\n bordered={false}\n expandIconPosition='right'\n className={`${sidebarCls}__content`}\n expandIcon={expandIconFuc}\n >\n <Panel\n header={\n <div>\n {t('Adjust')}\n\n <ClearIcon />\n </div>\n }\n className='panel'\n key='imgAttribute'\n >\n <ImgAttributeInfo />\n </Panel>\n </Collapse>\n );\n\n const operation = <GeneralOperation />;\n\n const tagToolSideBar = <TagSidebar />;\n\n const textToolSideBar = <TextToolSidebar />;\n\n const horizontal = <div className={`${sidebarCls}__horizontal`} />;\n\n if (sider) {\n if (typeof sider === 'function') {\n return (\n <div className={`${sidebarCls}`}>\n {sider({\n toolIcon,\n attributeList,\n annotationText,\n toolStyle,\n imageAttributeInfo,\n operation,\n tagToolSideBar,\n textToolSideBar,\n horizontal,\n })}\n </div>\n );\n } else {\n return sider;\n }\n }\n\n if (\n (\n [\n EToolName.Rect,\n EToolName.Point,\n EToolName.Line,\n EToolName.Rect,\n EToolName.Polygon,\n ] as string[]\n ).includes(toolName)\n ) {\n return (\n <div className={`${sidebarCls}`}>\n {toolIcon}\n {horizontal}\n {attributeList}\n {annotationText}\n {horizontal}\n <div className={`${sidebarCls}__content`}>\n {toolStyle}\n {imageAttributeInfo}\n </div>\n {operation}\n </div>\n );\n }\n\n if (toolName === EToolName.Tag) {\n return (\n <div className={`${sidebarCls}`}>\n <TagSidebar />\n </div>\n );\n }\n\n if (toolName === EVideoToolName.VideoTagTool) {\n return (\n <div className={`${sidebarCls}`}>\n <div className={`${sidebarCls}__content`}>\n <TagSidebar />\n </div>\n {operation}\n </div>\n );\n }\n\n if (toolName === EToolName.Text) {\n return (\n <div className={`${sidebarCls}`}>\n <TextToolSidebar />\n </div>\n );\n }\n\n return null;\n};\n\nexport default Sidebar;\n"],"names":["iconRectPatternSvg","iconPolygonPatternASvg","lineASvg","pointASvg","ClearIcon"],"mappings":"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"}
@@ -1 +1 @@
1
- import n from"../../../../../../assets/annotation/toolHotKeyIcon/icon_cencel_kj.svg.js";import s from"../../../../../../assets/annotation/toolHotKeyIcon/icon_reform_kj.svg.js";import e from"../../../../../../assets/annotation/toolHotKeyIcon/icon_loupe_kj.svg.js";import i from"../../../../../../assets/annotation/toolHotKeyIcon/icon_mouse_middle_kj.svg.js";import a from"../../../../../../assets/annotation/toolHotKeyIcon/icon_fullView_kj.svg.js";import c from"../../../../../../assets/annotation/toolHotKeyIcon/icon_reload_kj.svg.js";import r from"../../../../../../assets/annotation/toolHotKeyIcon/setValid.svg.js";import m from"../../../../../../assets/annotation/toolHotKeyIcon/icon_last_kj.svg.js";import l from"../../../../../../assets/annotation/toolHotKeyIcon/icon_next_kj.svg.js";import o from"../../../../../../assets/annotation/toolHotKeyIcon/icon_move_kj.svg.js";import g from"../../../../../../assets/annotation/toolHotKeyIcon/icon_mouse_right_kj.svg.js";import t from"../../../../../../assets/annotation/toolHotKeyIcon/icon_mouse_left_kj.svg.js";import _ from"../../../../../../assets/annotation/toolHotKeyIcon/icon_tab_kj.svg.js";import f from"../../../../../../assets/annotation/toolHotKeyIcon/icon_alttab_kj.svg.js";import j from"../../../../../../assets/annotation/toolHotKeyIcon/icon_save_kj.svg.js";import h from"../../../../../../assets/annotation/toolHotKeyIcon/icon_lineSpecial_kj.svg.js";import v from"../../../../../../assets/annotation/toolHotKeyIcon/icon_noDisplay.svg.js";const p={name:"Undo",icon:n,shortCut:["Ctrl","Z"]},u={name:"Redo",icon:s,shortCut:["Ctrl","Shift","Z"]},C={name:"Scale",icon:e,shortCut:[i]},I={name:"Fullscreen",icon:a,shortCut:["F11"]},d={name:"Rotate",icon:c,shortCut:["R"],noticeInfo:"ToOriginalStep"},k={name:"ToggleEffectiveness",icon:r,shortCut:["Y"]},y={name:"Previous",icon:m,shortCut:["A"]},H={name:"Next",icon:l,shortCut:["D"]},K={name:"Drag",icon:o,shortCut:[g],noticeInfo:"Press"},S={name:"Drag",icon:o,shortCut:["Space",t]},$={name:"ToggleSelected",icon:_,shortCut:["Tab"]},b={name:"ToggleSelectedReverse",icon:f,shortCut:["Shift","Tab"]},T={name:"HideGraphics",icon:v,noticeInfo:"",shortCut:["Z"]},R={name:"ToggleLineParticularity",icon:h,noticeInfo:"ToSide",shortCut:["Shift",t]},D={name:"Save",icon:j,shortCut:["Ctrl","S"]};export{y as backward,R as changeSpecialLine,S as dargWithLeftClick,K as dargWithRightClick,H as forward,I as fullScreen,T as hidden,u as restore,p as revoke,d as rotate,D as saveResult,C as scale,k as setValid,$ as tabChangeSelected,b as tabReverseChangeSelected};
1
+ import n from"../../../../../../assets/annotation/toolHotKeyIcon/icon_cencel_kj.svg.js";import s from"../../../../../../assets/annotation/toolHotKeyIcon/icon_reform_kj.svg.js";import e from"../../../../../../assets/annotation/toolHotKeyIcon/icon_loupe_kj.svg.js";import i from"../../../../../../assets/annotation/toolHotKeyIcon/icon_mouse_middle_kj.svg.js";import a from"../../../../../../assets/annotation/toolHotKeyIcon/icon_fullView_kj.svg.js";import c from"../../../../../../assets/annotation/toolHotKeyIcon/icon_reload_kj.svg.js";import r from"../../../../../../assets/annotation/toolHotKeyIcon/setValid.svg.js";import m from"../../../../../../assets/annotation/toolHotKeyIcon/icon_last_kj.svg.js";import l from"../../../../../../assets/annotation/toolHotKeyIcon/icon_next_kj.svg.js";import o from"../../../../../../assets/annotation/toolHotKeyIcon/icon_move_kj.svg.js";import g from"../../../../../../assets/annotation/toolHotKeyIcon/icon_mouse_right_kj.svg.js";import t from"../../../../../../assets/annotation/toolHotKeyIcon/icon_mouse_left_kj.svg.js";import _ from"../../../../../../assets/annotation/toolHotKeyIcon/icon_tab_kj.svg.js";import j from"../../../../../../assets/annotation/toolHotKeyIcon/icon_alttab_kj.svg.js";import f from"../../../../../../assets/annotation/toolHotKeyIcon/icon_save_kj.svg.js";import u from"../../../../../../assets/annotation/toolHotKeyIcon/icon_lineSpecial_kj.svg.js";import h from"../../../../../../assets/annotation/toolHotKeyIcon/icon_noDisplay.svg.js";import p from"../../../../../../assets/annotation/toolHotKeyIcon/icon_playPause.svg.js";import v from"../../../../../../assets/annotation/toolHotKeyIcon/icon_forward_kj.svg.js";import d from"../../../../../../assets/annotation/toolHotKeyIcon/icon_back_kj.svg.js";import C from"../../../../../../assets/annotation/toolHotKeyIcon/icon_speed_kj.svg.js";const I={name:"Undo",icon:n,shortCut:["Ctrl","Z"]},y={name:"Redo",icon:s,shortCut:["Ctrl","Shift","Z"]},H={name:"Scale",icon:e,shortCut:[i]},k={name:"Fullscreen",icon:a,shortCut:["F11"]},K={name:"Rotate",icon:c,shortCut:["R"],noticeInfo:"ToOriginalStep"},$={name:"ToggleEffectiveness",icon:r,shortCut:["Y"]},S={name:"PreviousImage",icon:m,shortCut:["A"]},b={name:"NextImage",icon:l,shortCut:["D"]},w={name:"Drag",icon:o,shortCut:[g],noticeInfo:"Press"},R={name:"Drag",icon:o,shortCut:["Space",t]},T={name:"ToggleSelected",icon:_,shortCut:["Tab"]},P={name:"ToggleSelectedReverse",icon:j,shortCut:["Shift","Tab"]},F={name:"HideGraphics",icon:h,noticeInfo:"",shortCut:["Z"]},D={name:"ToggleLineParticularity",icon:u,noticeInfo:"ToSide",shortCut:["Shift",t]},U={name:"Save",icon:f,shortCut:["Ctrl","S"]},x={name:"Speed",icon:C,shortCut:["&#8593;","&#8595;"],shortCutUseHtml:!0},L={name:"PlayPause",icon:p,shortCut:["Space"]},V={name:"FastForward",icon:v,shortCut:["&#8594;"],shortCutUseHtml:!0},Z={name:"Rewind",icon:d,shortCut:["&#8592;"],shortCutUseHtml:!0};export{S as backward,D as changeSpecialLine,R as dargWithLeftClick,w as dargWithRightClick,b as forward,V as forwardForward,k as fullScreen,F as hidden,L as playPause,y as restore,I as revoke,Z as rewind,K as rotate,U as saveResult,H as scale,$ as setValid,x as speed,T as tabChangeSelected,P as tabReverseChangeSelected};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../../src/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.tsx"],"sourcesContent":["import RevokeSvg from '@/assets/annotation/toolHotKeyIcon/icon_cencel_kj.svg';\nimport RestoreSvg from '@/assets/annotation/toolHotKeyIcon/icon_reform_kj.svg';\nimport ScaleSvg from '@/assets/annotation/toolHotKeyIcon/icon_loupe_kj.svg';\nimport ScaleShortCutSvg from '@/assets/annotation/toolHotKeyIcon/icon_mouse_middle_kj.svg';\nimport FullScreenSvg from '@/assets/annotation/toolHotKeyIcon/icon_fullView_kj.svg';\nimport RotateSvg from '@/assets/annotation/toolHotKeyIcon/icon_reload_kj.svg';\nimport SetValidSvg from '@/assets/annotation/toolHotKeyIcon/setValid.svg';\nimport BackwardSvg from '@/assets/annotation/toolHotKeyIcon/icon_last_kj.svg';\nimport ForwardSvg from '@/assets/annotation/toolHotKeyIcon/icon_next_kj.svg';\nimport DragWithRightClickSvg from '@/assets/annotation/toolHotKeyIcon/icon_move_kj.svg';\nimport DragWithRightClickShortCutSvg from '@/assets/annotation/toolHotKeyIcon/icon_mouse_right_kj.svg';\nimport DragWithLeftClickSvg from '@/assets/annotation/toolHotKeyIcon/icon_mouse_left_kj.svg';\nimport CopyBackwardResultSvg from '@/assets/annotation/toolHotKeyIcon/icon_copyBackwardResult.svg';\nimport TabChangeSelectedSvg from '@/assets/annotation/toolHotKeyIcon/icon_tab_kj.svg';\nimport TabReverseChangeSelectedSVG from '@/assets/annotation/toolHotKeyIcon/icon_alttab_kj.svg';\nimport IconSaveKj from '@/assets/annotation/toolHotKeyIcon/icon_save_kj.svg';\nimport IconLineSpecialKj from '@/assets/annotation/toolHotKeyIcon/icon_lineSpecial_kj.svg';\nimport IconNoDisplay from '@/assets/annotation/toolHotKeyIcon/icon_noDisplay.svg';\nimport IconEyeLockKj from '@/assets/annotation/toolHotKeyIcon/icon_eyeLock_kj.svg';\n\nexport const revoke = {\n name: 'Undo',\n icon: RevokeSvg,\n shortCut: ['Ctrl', 'Z'],\n};\n\nexport const restore = {\n name: 'Redo',\n icon: RestoreSvg,\n shortCut: ['Ctrl', 'Shift', 'Z'],\n};\n\nexport const scale = {\n name: 'Scale',\n icon: ScaleSvg,\n shortCut: [ScaleShortCutSvg],\n};\n\nexport const fullScreen = {\n name: 'Fullscreen',\n icon: FullScreenSvg,\n shortCut: ['F11'],\n};\n\nexport const rotate = {\n name: 'Rotate',\n icon: RotateSvg,\n shortCut: ['R'],\n noticeInfo: 'ToOriginalStep',\n};\n\nexport const setValid = {\n name: 'ToggleEffectiveness',\n icon: SetValidSvg,\n shortCut: ['Y'],\n};\n\nexport const backward = {\n name: 'Previous',\n icon: BackwardSvg,\n shortCut: ['A'],\n};\n\nexport const forward = {\n name: 'Next',\n icon: ForwardSvg,\n shortCut: ['D'],\n};\n\nexport const backwardPage = {\n name: 'PreviousFolder',\n icon: BackwardSvg,\n shortCut: ['Shift', 'A'],\n};\n\nexport const forwardPage = {\n name: 'NextFolder',\n icon: ForwardSvg,\n shortCut: ['Shift', 'D'],\n};\n\nexport const dargWithRightClick = {\n name: 'Drag',\n icon: DragWithRightClickSvg,\n shortCut: [DragWithRightClickShortCutSvg],\n noticeInfo: 'Press',\n};\n\nexport const dargWithLeftClick = {\n name: 'Drag',\n icon: DragWithRightClickSvg,\n shortCut: ['Space', DragWithLeftClickSvg],\n};\n\nexport const forwardWithEnter = {\n name: 'Next',\n icon: ForwardSvg,\n shortCut: ['Ctrl', 'Enter'],\n};\n\nexport const copyBackwardResult = {\n name: 'CopyThePrevious',\n icon: CopyBackwardResultSvg,\n shortCut: ['ALT', 'C'],\n};\n\nexport const attributeLock = {\n name: 'SpecifiedAttributesOnly',\n icon: IconEyeLockKj,\n shortCut: ['Shift', 'Number'],\n};\n\nexport const attributeClickLock = {\n name: 'SpecifiedAttributesOnly',\n icon: IconEyeLockKj,\n shortCut: ['Shift', DragWithLeftClickSvg],\n};\n\nexport const tabChangeSelected = {\n name: 'ToggleSelected',\n icon: TabChangeSelectedSvg,\n shortCut: ['Tab'],\n};\n\nexport const tabReverseChangeSelected = {\n name: 'ToggleSelectedReverse',\n icon: TabReverseChangeSelectedSVG,\n shortCut: ['Shift', 'Tab'],\n};\n\nexport const hidden = {\n name: 'HideGraphics',\n icon: IconNoDisplay,\n noticeInfo: '',\n shortCut: ['Z'],\n};\n\nexport const changeSpecialLine = {\n name: 'ToggleLineParticularity',\n icon: IconLineSpecialKj,\n noticeInfo: 'ToSide',\n shortCut: ['Shift', DragWithLeftClickSvg],\n};\n\nexport const saveResult = {\n name: 'Save',\n icon: IconSaveKj,\n shortCut: ['Ctrl', 'S'],\n};\n"],"names":["RevokeSvg","RestoreSvg","ScaleSvg","ScaleShortCutSvg","FullScreenSvg","RotateSvg","SetValidSvg","BackwardSvg","ForwardSvg","DragWithRightClickSvg","DragWithRightClickShortCutSvg","DragWithLeftClickSvg","TabChangeSelectedSvg","TabReverseChangeSelectedSVG","IconNoDisplay","IconLineSpecialKj","IconSaveKj"],"mappings":";;;;;;;;;;;;;;;;;;AAoBO,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAA,GAAA;AAAA,EACN,QAAA,EAAU,CAAC,MAAQ,EAAA,GAAA,CAAA;AAAA,EAAA;AAGd,MAAM,OAAU,GAAA;AAAA,EACrB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,MAAA,EAAQ,OAAS,EAAA,GAAA,CAAA;AAAA,EAAA;AAGvB,MAAM,KAAQ,GAAA;AAAA,EACnB,IAAM,EAAA,OAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAACC,KAAA,CAAA;AAAA,EAAA;AAGN,MAAM,UAAa,GAAA;AAAA,EACxB,IAAM,EAAA,YAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,KAAA,CAAA;AAAA,EAAA;AAGN,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,QAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EACX,UAAY,EAAA,gBAAA;AAAA,EAAA;AAGP,MAAM,QAAW,GAAA;AAAA,EACtB,IAAM,EAAA,qBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAGN,MAAM,QAAW,GAAA;AAAA,EACtB,IAAM,EAAA,UAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAGN,MAAM,OAAU,GAAA;AAAA,EACrB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAeN,MAAM,kBAAqB,GAAA;AAAA,EAChC,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAACC,KAAA,CAAA;AAAA,EACX,UAAY,EAAA,OAAA;AAAA,EAAA;AAGP,MAAM,iBAAoB,GAAA;AAAA,EAC/B,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAD,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,OAAS,EAAAE,KAAA,CAAA;AAAA,EAAA;AA2Bf,MAAM,iBAAoB,GAAA;AAAA,EAC/B,IAAM,EAAA,gBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,KAAA,CAAA;AAAA,EAAA;AAGN,MAAM,wBAA2B,GAAA;AAAA,EACtC,IAAM,EAAA,uBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,OAAS,EAAA,KAAA,CAAA;AAAA,EAAA;AAGf,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,cAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAY,EAAA,EAAA;AAAA,EACZ,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAGN,MAAM,iBAAoB,GAAA;AAAA,EAC/B,IAAM,EAAA,yBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAY,EAAA,QAAA;AAAA,EACZ,QAAA,EAAU,CAAC,OAAS,EAAAJ,KAAA,CAAA;AAAA,EAAA;AAGf,MAAM,UAAa,GAAA;AAAA,EACxB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAK,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,MAAQ,EAAA,GAAA,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.tsx"],"sourcesContent":["import RevokeSvg from '@/assets/annotation/toolHotKeyIcon/icon_cencel_kj.svg';\nimport RestoreSvg from '@/assets/annotation/toolHotKeyIcon/icon_reform_kj.svg';\nimport ScaleSvg from '@/assets/annotation/toolHotKeyIcon/icon_loupe_kj.svg';\nimport ScaleShortCutSvg from '@/assets/annotation/toolHotKeyIcon/icon_mouse_middle_kj.svg';\nimport FullScreenSvg from '@/assets/annotation/toolHotKeyIcon/icon_fullView_kj.svg';\nimport RotateSvg from '@/assets/annotation/toolHotKeyIcon/icon_reload_kj.svg';\nimport SetValidSvg from '@/assets/annotation/toolHotKeyIcon/setValid.svg';\nimport BackwardSvg from '@/assets/annotation/toolHotKeyIcon/icon_last_kj.svg';\nimport ForwardSvg from '@/assets/annotation/toolHotKeyIcon/icon_next_kj.svg';\nimport DragWithRightClickSvg from '@/assets/annotation/toolHotKeyIcon/icon_move_kj.svg';\nimport DragWithRightClickShortCutSvg from '@/assets/annotation/toolHotKeyIcon/icon_mouse_right_kj.svg';\nimport DragWithLeftClickSvg from '@/assets/annotation/toolHotKeyIcon/icon_mouse_left_kj.svg';\nimport CopyBackwardResultSvg from '@/assets/annotation/toolHotKeyIcon/icon_copyBackwardResult.svg';\nimport TabChangeSelectedSvg from '@/assets/annotation/toolHotKeyIcon/icon_tab_kj.svg';\nimport TabReverseChangeSelectedSVG from '@/assets/annotation/toolHotKeyIcon/icon_alttab_kj.svg';\nimport IconSaveKj from '@/assets/annotation/toolHotKeyIcon/icon_save_kj.svg';\nimport IconLineSpecialKj from '@/assets/annotation/toolHotKeyIcon/icon_lineSpecial_kj.svg';\nimport IconNoDisplay from '@/assets/annotation/toolHotKeyIcon/icon_noDisplay.svg';\nimport IconEyeLockKj from '@/assets/annotation/toolHotKeyIcon/icon_eyeLock_kj.svg';\nimport IconPlayPause from '@/assets/annotation/toolHotKeyIcon/icon_playPause.svg';\nimport IconFastForward from '@/assets/annotation/toolHotKeyIcon/icon_forward_kj.svg';\nimport IconRewind from '@/assets/annotation/toolHotKeyIcon/icon_back_kj.svg';\nimport IconSpeed from '@/assets/annotation/toolHotKeyIcon/icon_speed_kj.svg';\n\nexport const revoke = {\n name: 'Undo',\n icon: RevokeSvg,\n shortCut: ['Ctrl', 'Z'],\n};\n\nexport const restore = {\n name: 'Redo',\n icon: RestoreSvg,\n shortCut: ['Ctrl', 'Shift', 'Z'],\n};\n\nexport const scale = {\n name: 'Scale',\n icon: ScaleSvg,\n shortCut: [ScaleShortCutSvg],\n};\n\nexport const fullScreen = {\n name: 'Fullscreen',\n icon: FullScreenSvg,\n shortCut: ['F11'],\n};\n\nexport const rotate = {\n name: 'Rotate',\n icon: RotateSvg,\n shortCut: ['R'],\n noticeInfo: 'ToOriginalStep',\n};\n\nexport const setValid = {\n name: 'ToggleEffectiveness',\n icon: SetValidSvg,\n shortCut: ['Y'],\n};\n\nexport const backward = {\n name: 'PreviousImage',\n icon: BackwardSvg,\n shortCut: ['A'],\n};\n\nexport const forward = {\n name: 'NextImage',\n icon: ForwardSvg,\n shortCut: ['D'],\n};\n\nexport const backwardPage = {\n name: 'PreviousFolder',\n icon: BackwardSvg,\n shortCut: ['Shift', 'A'],\n};\n\nexport const forwardPage = {\n name: 'NextFolder',\n icon: ForwardSvg,\n shortCut: ['Shift', 'D'],\n};\n\nexport const dargWithRightClick = {\n name: 'Drag',\n icon: DragWithRightClickSvg,\n shortCut: [DragWithRightClickShortCutSvg],\n noticeInfo: 'Press',\n};\n\nexport const dargWithLeftClick = {\n name: 'Drag',\n icon: DragWithRightClickSvg,\n shortCut: ['Space', DragWithLeftClickSvg],\n};\n\nexport const forwardWithEnter = {\n name: 'Next',\n icon: ForwardSvg,\n shortCut: ['Ctrl', 'Enter'],\n};\n\nexport const copyBackwardResult = {\n name: 'CopyThePrevious',\n icon: CopyBackwardResultSvg,\n shortCut: ['ALT', 'C'],\n};\n\nexport const attributeLock = {\n name: 'SpecifiedAttributesOnly',\n icon: IconEyeLockKj,\n shortCut: ['Shift', 'Number'],\n};\n\nexport const attributeClickLock = {\n name: 'SpecifiedAttributesOnly',\n icon: IconEyeLockKj,\n shortCut: ['Shift', DragWithLeftClickSvg],\n};\n\nexport const tabChangeSelected = {\n name: 'ToggleSelected',\n icon: TabChangeSelectedSvg,\n shortCut: ['Tab'],\n};\n\nexport const tabReverseChangeSelected = {\n name: 'ToggleSelectedReverse',\n icon: TabReverseChangeSelectedSVG,\n shortCut: ['Shift', 'Tab'],\n};\n\nexport const hidden = {\n name: 'HideGraphics',\n icon: IconNoDisplay,\n noticeInfo: '',\n shortCut: ['Z'],\n};\n\nexport const changeSpecialLine = {\n name: 'ToggleLineParticularity',\n icon: IconLineSpecialKj,\n noticeInfo: 'ToSide',\n shortCut: ['Shift', DragWithLeftClickSvg],\n};\n\nexport const saveResult = {\n name: 'Save',\n icon: IconSaveKj,\n shortCut: ['Ctrl', 'S'],\n};\n\nexport const speed = {\n name: 'Speed',\n icon: IconSpeed,\n shortCut: ['&#8593;', '&#8595;'],\n shortCutUseHtml: true,\n};\n\nexport const playPause = {\n name: 'PlayPause',\n icon: IconPlayPause,\n shortCut: ['Space'],\n};\n\nexport const forwardForward = {\n name: 'FastForward',\n icon: IconFastForward,\n shortCut: ['&#8594;'],\n shortCutUseHtml: true,\n};\n\nexport const rewind = {\n name: 'Rewind',\n icon: IconRewind,\n shortCut: ['&#8592;'],\n shortCutUseHtml: true,\n};\n"],"names":["RevokeSvg","RestoreSvg","ScaleSvg","ScaleShortCutSvg","FullScreenSvg","RotateSvg","SetValidSvg","BackwardSvg","ForwardSvg","DragWithRightClickSvg","DragWithRightClickShortCutSvg","DragWithLeftClickSvg","TabChangeSelectedSvg","TabReverseChangeSelectedSVG","IconNoDisplay","IconLineSpecialKj","IconSaveKj","IconSpeed","IconPlayPause","IconFastForward","IconRewind"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAwBO,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAA,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,MAAQ,EAAA,GAAA,CAAA;AAAA,EAAA;AAGd,MAAM,OAAU,GAAA;AAAA,EACrB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,MAAA,EAAQ,OAAS,EAAA,GAAA,CAAA;AAAA,EAAA;AAGvB,MAAM,KAAQ,GAAA;AAAA,EACnB,IAAM,EAAA,OAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAACC,KAAA,CAAA;AAAA,EAAA;AAGN,MAAM,UAAa,GAAA;AAAA,EACxB,IAAM,EAAA,YAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,KAAA,CAAA;AAAA,EAAA;AAGN,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,QAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EACX,UAAY,EAAA,gBAAA;AAAA,EAAA;AAGP,MAAM,QAAW,GAAA;AAAA,EACtB,IAAM,EAAA,qBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAGN,MAAM,QAAW,GAAA;AAAA,EACtB,IAAM,EAAA,eAAA;AAAA,EACN,IAAM,EAAAC,GAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAGN,MAAM,OAAU,GAAA;AAAA,EACrB,IAAM,EAAA,WAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAeN,MAAM,kBAAqB,GAAA;AAAA,EAChC,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAACC,KAAA,CAAA;AAAA,EACX,UAAY,EAAA,OAAA;AAAA,EAAA;AAGP,MAAM,iBAAoB,GAAA;AAAA,EAC/B,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAD,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,OAAS,EAAAE,KAAA,CAAA;AAAA,EAAA;AA2Bf,MAAM,iBAAoB,GAAA;AAAA,EAC/B,IAAM,EAAA,gBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,KAAA,CAAA;AAAA,EAAA;AAGN,MAAM,wBAA2B,GAAA;AAAA,EACtC,IAAM,EAAA,uBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,OAAS,EAAA,KAAA,CAAA;AAAA,EAAA;AAGf,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,cAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAY,EAAA,EAAA;AAAA,EACZ,UAAU,CAAC,GAAA,CAAA;AAAA,EAAA;AAGN,MAAM,iBAAoB,GAAA;AAAA,EAC/B,IAAM,EAAA,yBAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAY,EAAA,QAAA;AAAA,EACZ,QAAA,EAAU,CAAC,OAAS,EAAAJ,KAAA,CAAA;AAAA,EAAA;AAGf,MAAM,UAAa,GAAA;AAAA,EACxB,IAAM,EAAA,MAAA;AAAA,EACN,IAAM,EAAAK,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,MAAQ,EAAA,GAAA,CAAA;AAAA,EAAA;AAGd,MAAM,KAAQ,GAAA;AAAA,EACnB,IAAM,EAAA,OAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,QAAA,EAAU,CAAC,SAAW,EAAA,SAAA,CAAA;AAAA,EACtB,eAAiB,EAAA,IAAA;AAAA,EAAA;AAGZ,MAAM,SAAY,GAAA;AAAA,EACvB,IAAM,EAAA,WAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,OAAA,CAAA;AAAA,EAAA;AAGN,MAAM,cAAiB,GAAA;AAAA,EAC5B,IAAM,EAAA,aAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,SAAA,CAAA;AAAA,EACX,eAAiB,EAAA,IAAA;AAAA,EAAA;AAGZ,MAAM,MAAS,GAAA;AAAA,EACpB,IAAM,EAAA,QAAA;AAAA,EACN,IAAM,EAAAC,KAAA;AAAA,EACN,UAAU,CAAC,SAAA,CAAA;AAAA,EACX,eAAiB,EAAA,IAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- import{Popover as S}from"antd/es";import e,{useState as b}from"react";import{useSelector as j}from"react-redux";import k from"../../../../../assets/annotation/toolHotKeyIcon/icon_kj1.svg.js";import I from"../../../../../assets/annotation/toolHotKeyIcon/icon_kj_h.svg.js";import{EToolName as r}from"../../../../../data/enums/ToolType.js";import R from"./rectToolShortCutTable/index.js";import _ from"./point/index.js";import N from"./polygon/index.js";import w from"./line/index.js";import H from"./tag/index.js";import M from"./text/index.js";import L from"../../../../../utils/StepUtils.js";import{footerCls as K}from"../../index.js";import{useTranslation as P}from"react-i18next";const y={[r.Rect]:R,[r.Tag]:H,[r.Point]:_,[r.Polygon]:N,[r.Line]:w,[r.Text]:M},U=({isSingleImg:W,style:u})=>{var c;const[g,i]=b(!1),{t:p}=P(),s=j(t=>{var o,m;return L.getCurrentStepInfo((o=t==null?void 0:t.annotation)==null?void 0:o.step,(m=t.annotation)==null?void 0:m.stepList)}),h=t=>typeof t=="string"?e.createElement("img",{width:16,height:16,src:t,style:f}):t,d={width:320,display:"flex",justifyContent:"space-between",margin:"23px 21px"},f={marginRight:10},a={display:"block",padding:"0 3px",minWidth:"20px",marginRight:"3px",border:"1px solid rgba(204,204,204,1)",verticalAlign:"middle",fontSize:"12px",textAlign:"center"},x=(t,o)=>e.createElement("div",{style:d,key:o},e.createElement("span",{style:{display:"flex",alignItems:"center"}},h(t.icon),p(t.name)),e.createElement("span",{style:{display:"flex",alignItems:"center"}},t.noticeInfo&&e.createElement("span",{style:{marginRight:"5px",color:"#CCCCCC"}},p(t.noticeInfo)),E(t.shortCut,t.shortCutUseHtml,t.linkSymbol))),E=(t,o=!1,m)=>{const T=t.map((n,l)=>o?e.createElement("span",{key:l,style:{display:"flex"}},e.createElement("span",{style:a,dangerouslySetInnerHTML:{__html:n}})):l<t.length-1?typeof n=="number"?e.createElement("span",{key:l,style:{display:"flex"}},e.createElement("span",{style:a},n),e.createElement("span",{style:{marginRight:"3px"}},"~")):(n==null?void 0:n.startsWith("data"))?e.createElement("span",{key:l,style:{display:"flex"}},e.createElement("span",{className:"shortCutButton",style:{marginRight:"3px"}},e.createElement("img",{width:16,height:23,src:n})),e.createElement("span",{style:{marginRight:"3px"}},"+")):e.createElement("span",{key:l,style:{display:"flex"}},e.createElement("span",{style:a},n),e.createElement("span",{style:{marginRight:"3px"}},m||"+")):typeof n=="number"?e.createElement("span",{key:l,style:{display:"flex"}},e.createElement("span",{style:a},n)):(n==null?void 0:n.startsWith("data"))?e.createElement("span",{className:"shortCutButton",key:l,style:{marginRight:"3px"}},e.createElement("img",{width:16,height:23,src:n})):e.createElement("span",{style:a,key:l},n));return e.createElement("div",{style:{display:"flex",justifyContent:"space-around",alignItems:"center"}},T)},v=e.createElement("div",{className:`${K}__hotkey-content`},s&&((c=y[s==null?void 0:s.tool])==null?void 0:c.map((t,o)=>x(t,o)))),C=u||{width:600};return s&&!y[s==null?void 0:s.tool]?null:e.createElement(S,{placement:"topLeft",content:v,onMouseMove:()=>i(!0),onMouseLeave:()=>{i(!1)},overlayClassName:"tool-hotkeys-popover"},e.createElement("div",{className:"shortCutTitle",onMouseMove:()=>i(!0),onMouseLeave:()=>i(!1),style:C},e.createElement("a",{className:"svg"},e.createElement("img",{src:g?I:k,width:15,height:13,style:{marginRight:"5px"}}),p("Hotkeys"))))};export{U as default};
1
+ import{Popover as S}from"antd/es";import e,{useState as j}from"react";import k from"../../../../../assets/annotation/toolHotKeyIcon/icon_kj1.svg.js";import R from"../../../../../assets/annotation/toolHotKeyIcon/icon_kj_h.svg.js";import{EToolName as l}from"../../../../../data/enums/ToolType.js";import I from"./rectToolShortCutTable/index.js";import _ from"./point/index.js";import w from"./polygon/index.js";import H from"./line/index.js";import M from"./tag/index.js";import N from"./text/index.js";import L from"./videoTag/index.js";import{footerCls as K}from"../../index.js";import{useTranslation as P}from"react-i18next";import{cTool as V}from"@labelbee/lb-annotation";const{EVideoToolName:W}=V,y={[l.Rect]:I,[l.Tag]:M,[l.Point]:_,[l.Polygon]:w,[l.Line]:H,[l.Text]:N,[W.VideoTagTool]:L},$=({style:g,title:c,toolName:i})=>{var p;const[u,s]=j(!1),{t:m}=P();if(!i)return null;const h=t=>typeof t=="string"?e.createElement("img",{width:16,height:16,src:t,style:f}):t,d={width:320,display:"flex",justifyContent:"space-between",margin:"23px 21px"},f={marginRight:10},r={display:"block",padding:"0 3px",minWidth:"20px",marginRight:"3px",border:"1px solid rgba(204,204,204,1)",verticalAlign:"middle",fontSize:"12px",textAlign:"center"},T=(t,a)=>e.createElement("div",{style:d,key:a},e.createElement("span",{style:{display:"flex",alignItems:"center"}},h(t.icon),m(t.name)),e.createElement("span",{style:{display:"flex",alignItems:"center"}},t.noticeInfo&&e.createElement("span",{style:{marginRight:"5px",color:"#CCCCCC"}},m(t.noticeInfo)),x(t.shortCut,t.shortCutUseHtml,t.linkSymbol))),x=(t,a=!1,v)=>{const b=t.map((o,n)=>a?e.createElement("span",{key:n,style:{display:"flex"}},e.createElement("span",{style:r,dangerouslySetInnerHTML:{__html:o}})):n<t.length-1?typeof o=="number"?e.createElement("span",{key:n,style:{display:"flex"}},e.createElement("span",{style:r},o),e.createElement("span",{style:{marginRight:"3px"}},"~")):(o==null?void 0:o.startsWith("data"))?e.createElement("span",{key:n,style:{display:"flex"}},e.createElement("span",{className:"shortCutButton",style:{marginRight:"3px"}},e.createElement("img",{width:16,height:23,src:o})),e.createElement("span",{style:{marginRight:"3px"}},"+")):e.createElement("span",{key:n,style:{display:"flex"}},e.createElement("span",{style:r},o),e.createElement("span",{style:{marginRight:"3px"}},v||"+")):typeof o=="number"?e.createElement("span",{key:n,style:{display:"flex"}},e.createElement("span",{style:r},o)):(o==null?void 0:o.startsWith("data"))?e.createElement("span",{className:"shortCutButton",key:n,style:{marginRight:"3px"}},e.createElement("img",{width:16,height:23,src:o})):e.createElement("span",{style:r,key:n},o));return e.createElement("div",{style:{display:"flex",justifyContent:"space-around",alignItems:"center"}},b)},E=e.createElement("div",{className:`${K}__hotkey-content`},(p=y[i])==null?void 0:p.map((t,a)=>T(t,a))),C=g||{width:100};return y[i]?e.createElement(S,{placement:"topLeft",content:E,onMouseMove:()=>s(!0),onMouseLeave:()=>{s(!1)},overlayClassName:"tool-hotkeys-popover"},e.createElement("div",{className:"shortCutTitle",onMouseMove:()=>s(!0),onMouseLeave:()=>s(!1),style:C},c!=null?c:e.createElement("a",{className:"svg"},e.createElement("img",{src:u?R:k,width:15,height:13,style:{marginRight:"5px"}}),m("Hotkeys")))):null};export{$ as default};