bhd-components 0.9.1 → 0.9.3

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 (237) hide show
  1. package/README.md +1 -1
  2. package/dist/index.esm.es5.development.css +833 -363
  3. package/dist/index.esm.es5.development.js +4159 -6606
  4. package/dist/index.esm.es5.production.css +1 -1
  5. package/dist/index.esm.es5.production.js +1 -1
  6. package/dist/vendor.esm.es5.development.css +119 -0
  7. package/dist/{100c4e1e.esm.es5.development.js → vendor.esm.es5.development.js} +16857 -8463
  8. package/dist/vendor.esm.es5.production.css +11 -0
  9. package/dist/vendor.esm.es5.production.js +485 -0
  10. package/es2017/bhdAppLayout/components/BhdTableSimple/index.js +1 -1
  11. package/es2017/bhdAppLayout/components/BhdTableSimple/index/347/232/204/345/211/257/346/234/254.js +2 -2
  12. package/es2017/bhdAppLayout/index.js +16 -16
  13. package/es2017/bhdDatePicker/index.d.ts +1 -2
  14. package/es2017/bhdDatePicker/index.js +253 -256
  15. package/es2017/bhdDatePicker/index.module.less +120 -8
  16. package/es2017/bhdSelect/index.js +4 -4
  17. package/es2017/bhdTipModal/index.js +6 -6
  18. package/es2017/customerService/contactsList.d.ts +2 -2
  19. package/es2017/customerService/contactsList.js +2 -2
  20. package/es2017/customerService/function.js +2 -1
  21. package/es2017/customerService/historyFun.d.ts +2 -2
  22. package/es2017/customerService/historyFun.js +2 -2
  23. package/es2017/customerService/index.d.ts +2 -2
  24. package/es2017/customerService/index.js +6 -6
  25. package/es2017/customerService/js-screen-shot/assets/less/screen-shot.less +478 -0
  26. package/es2017/customerService/js-screen-shot/lib/common-methods/CanvasPatch.d.ts +1 -0
  27. package/es2017/customerService/js-screen-shot/lib/common-methods/CanvasPatch.js +15 -0
  28. package/es2017/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.d.ts +2 -0
  29. package/es2017/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.js +32 -0
  30. package/es2017/customerService/js-screen-shot/lib/common-methods/FixedData.d.ts +11 -0
  31. package/es2017/customerService/js-screen-shot/lib/common-methods/FixedData.js +17 -0
  32. package/es2017/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.d.ts +5 -0
  33. package/es2017/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.js +18 -0
  34. package/es2017/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.d.ts +4 -0
  35. package/es2017/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.js +25 -0
  36. package/es2017/customerService/js-screen-shot/lib/common-methods/GetColor.d.ts +1 -0
  37. package/es2017/customerService/js-screen-shot/lib/common-methods/GetColor.js +41 -0
  38. package/es2017/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.d.ts +1 -0
  39. package/es2017/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.js +23 -0
  40. package/es2017/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.d.ts +7 -0
  41. package/es2017/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.js +9 -0
  42. package/es2017/customerService/js-screen-shot/lib/common-methods/ImgScaling.d.ts +11 -0
  43. package/es2017/customerService/js-screen-shot/lib/common-methods/ImgScaling.js +41 -0
  44. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.d.ts +8 -0
  45. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.js +125 -0
  46. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.d.ts +1 -0
  47. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.js +38 -0
  48. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.d.ts +1 -0
  49. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.js +27 -0
  50. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectColor.d.ts +1 -0
  51. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectColor.js +6 -0
  52. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectTextSize.d.ts +5 -0
  53. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectTextSize.js +26 -0
  54. package/es2017/customerService/js-screen-shot/lib/common-methods/SetBrushSize.d.ts +14 -0
  55. package/es2017/customerService/js-screen-shot/lib/common-methods/SetBrushSize.js +50 -0
  56. package/es2017/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.d.ts +7 -0
  57. package/es2017/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.js +28 -0
  58. package/es2017/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.d.ts +1 -0
  59. package/es2017/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.js +20 -0
  60. package/es2017/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.d.ts +1 -0
  61. package/es2017/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.js +10 -0
  62. package/es2017/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.d.ts +17 -0
  63. package/es2017/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.js +92 -0
  64. package/es2017/customerService/js-screen-shot/lib/config/Toolbar.d.ts +5 -0
  65. package/es2017/customerService/js-screen-shot/lib/config/Toolbar.js +46 -0
  66. package/es2017/customerService/js-screen-shot/lib/main-entrance/CreateDom.d.ts +24 -0
  67. package/es2017/customerService/js-screen-shot/lib/main-entrance/CreateDom.js +305 -0
  68. package/es2017/customerService/js-screen-shot/lib/main-entrance/InitData.d.ts +78 -0
  69. package/es2017/customerService/js-screen-shot/lib/main-entrance/InitData.js +538 -0
  70. package/es2017/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.d.ts +46 -0
  71. package/es2017/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.js +162 -0
  72. package/es2017/customerService/js-screen-shot/lib/split-methods/AddHistoryData.d.ts +1 -0
  73. package/es2017/customerService/js-screen-shot/lib/split-methods/AddHistoryData.js +23 -0
  74. package/es2017/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.d.ts +8 -0
  75. package/es2017/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.js +13 -0
  76. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.d.ts +5 -0
  77. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.js +21 -0
  78. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.d.ts +16 -0
  79. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.js +39 -0
  80. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawArrow.d.ts +31 -0
  81. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawArrow.js +131 -0
  82. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCircle.d.ts +11 -0
  83. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCircle.js +37 -0
  84. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.d.ts +19 -0
  85. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.js +119 -0
  86. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.d.ts +13 -0
  87. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.js +51 -0
  88. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMasking.d.ts +6 -0
  89. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMasking.js +41 -0
  90. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMosaic.d.ts +12 -0
  91. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMosaic.js +67 -0
  92. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawPencil.d.ts +13 -0
  93. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawPencil.js +27 -0
  94. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawRectangle.d.ts +11 -0
  95. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawRectangle.js +22 -0
  96. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawText.d.ts +10 -0
  97. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawText.js +24 -0
  98. package/es2017/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.d.ts +10 -0
  99. package/es2017/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.js +50 -0
  100. package/es2017/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.d.ts +2 -0
  101. package/es2017/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.js +62 -0
  102. package/es2017/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.d.ts +1 -0
  103. package/es2017/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.js +132 -0
  104. package/es2017/customerService/js-screen-shot/lib/split-methods/drawCrossImg.d.ts +1 -0
  105. package/es2017/customerService/js-screen-shot/lib/split-methods/drawCrossImg.js +33 -0
  106. package/es2017/customerService/js-screen-shot/lib/type/ComponentType.d.ts +133 -0
  107. package/es2017/customerService/js-screen-shot/lib/type/ComponentType.js +2 -0
  108. package/es2017/customerService/js-screen-shot/main.d.ts +110 -0
  109. package/es2017/customerService/js-screen-shot/main.js +1101 -0
  110. package/es2017/customerService/screenshotTool.d.ts +2 -2
  111. package/es2017/customerService/screenshotTool.js +2 -2
  112. package/es2017/customerService/teacherList.d.ts +2 -2
  113. package/es2017/customerService/teacherList.js +2 -2
  114. package/es2017/i18n/en_US.js +4 -1
  115. package/es2017/i18n/zh_CN.js +4 -1
  116. package/es2017/icons/index.js +2 -2
  117. package/es2017/index.js +14 -14
  118. package/es2017/provider/index.js +2 -2
  119. package/es2017/table/index.js +4 -4
  120. package/es2017/tableSelect/index.js +3 -3
  121. package/es2017/textTootip/index.js +1 -1
  122. package/es2017/titleBar/index.js +3 -3
  123. package/es2017/viewImage/index.js +13 -13
  124. package/esm/bhdAppLayout/index.js +15 -15
  125. package/esm/bhdDatePicker/index.d.ts +1 -2
  126. package/esm/bhdDatePicker/index.js +254 -257
  127. package/esm/bhdDatePicker/index.module.less +120 -8
  128. package/esm/bhdSelect/index.js +1 -1
  129. package/esm/bhdTipModal/index.js +1 -1
  130. package/esm/customerService/contactsList.d.ts +2 -2
  131. package/esm/customerService/contactsList.js +1 -1
  132. package/esm/customerService/function.js +2 -1
  133. package/esm/customerService/historyFun.d.ts +2 -2
  134. package/esm/customerService/historyFun.js +1 -1
  135. package/esm/customerService/index.d.ts +2 -2
  136. package/esm/customerService/index.js +2 -2
  137. package/esm/customerService/js-screen-shot/assets/less/screen-shot.less +478 -0
  138. package/esm/customerService/js-screen-shot/lib/common-methods/CanvasPatch.d.ts +1 -0
  139. package/esm/customerService/js-screen-shot/lib/common-methods/CanvasPatch.js +15 -0
  140. package/esm/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.d.ts +2 -0
  141. package/esm/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.js +32 -0
  142. package/esm/customerService/js-screen-shot/lib/common-methods/FixedData.d.ts +11 -0
  143. package/esm/customerService/js-screen-shot/lib/common-methods/FixedData.js +17 -0
  144. package/esm/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.d.ts +5 -0
  145. package/esm/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.js +18 -0
  146. package/esm/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.d.ts +4 -0
  147. package/esm/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.js +25 -0
  148. package/esm/customerService/js-screen-shot/lib/common-methods/GetColor.d.ts +1 -0
  149. package/esm/customerService/js-screen-shot/lib/common-methods/GetColor.js +41 -0
  150. package/esm/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.d.ts +1 -0
  151. package/esm/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.js +23 -0
  152. package/esm/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.d.ts +7 -0
  153. package/esm/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.js +10 -0
  154. package/esm/customerService/js-screen-shot/lib/common-methods/ImgScaling.d.ts +11 -0
  155. package/esm/customerService/js-screen-shot/lib/common-methods/ImgScaling.js +38 -0
  156. package/esm/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.d.ts +8 -0
  157. package/esm/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.js +125 -0
  158. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.d.ts +1 -0
  159. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.js +38 -0
  160. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.d.ts +1 -0
  161. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.js +27 -0
  162. package/esm/customerService/js-screen-shot/lib/common-methods/SelectColor.d.ts +1 -0
  163. package/esm/customerService/js-screen-shot/lib/common-methods/SelectColor.js +6 -0
  164. package/esm/customerService/js-screen-shot/lib/common-methods/SelectTextSize.d.ts +5 -0
  165. package/esm/customerService/js-screen-shot/lib/common-methods/SelectTextSize.js +26 -0
  166. package/esm/customerService/js-screen-shot/lib/common-methods/SetBrushSize.d.ts +14 -0
  167. package/esm/customerService/js-screen-shot/lib/common-methods/SetBrushSize.js +50 -0
  168. package/esm/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.d.ts +7 -0
  169. package/esm/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.js +28 -0
  170. package/esm/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.d.ts +1 -0
  171. package/esm/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.js +20 -0
  172. package/esm/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.d.ts +1 -0
  173. package/esm/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.js +10 -0
  174. package/esm/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.d.ts +17 -0
  175. package/esm/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.js +92 -0
  176. package/esm/customerService/js-screen-shot/lib/config/Toolbar.d.ts +5 -0
  177. package/esm/customerService/js-screen-shot/lib/config/Toolbar.js +46 -0
  178. package/esm/customerService/js-screen-shot/lib/main-entrance/CreateDom.d.ts +24 -0
  179. package/esm/customerService/js-screen-shot/lib/main-entrance/CreateDom.js +346 -0
  180. package/esm/customerService/js-screen-shot/lib/main-entrance/InitData.d.ts +78 -0
  181. package/esm/customerService/js-screen-shot/lib/main-entrance/InitData.js +758 -0
  182. package/esm/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.d.ts +46 -0
  183. package/esm/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.js +259 -0
  184. package/esm/customerService/js-screen-shot/lib/split-methods/AddHistoryData.d.ts +1 -0
  185. package/esm/customerService/js-screen-shot/lib/split-methods/AddHistoryData.js +23 -0
  186. package/esm/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.d.ts +8 -0
  187. package/esm/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.js +13 -0
  188. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.d.ts +5 -0
  189. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.js +21 -0
  190. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.d.ts +16 -0
  191. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.js +39 -0
  192. package/esm/customerService/js-screen-shot/lib/split-methods/DrawArrow.d.ts +31 -0
  193. package/esm/customerService/js-screen-shot/lib/split-methods/DrawArrow.js +159 -0
  194. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCircle.d.ts +11 -0
  195. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCircle.js +37 -0
  196. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.d.ts +19 -0
  197. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.js +120 -0
  198. package/esm/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.d.ts +13 -0
  199. package/esm/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.js +51 -0
  200. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMasking.d.ts +6 -0
  201. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMasking.js +41 -0
  202. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMosaic.d.ts +12 -0
  203. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMosaic.js +67 -0
  204. package/esm/customerService/js-screen-shot/lib/split-methods/DrawPencil.d.ts +13 -0
  205. package/esm/customerService/js-screen-shot/lib/split-methods/DrawPencil.js +27 -0
  206. package/esm/customerService/js-screen-shot/lib/split-methods/DrawRectangle.d.ts +11 -0
  207. package/esm/customerService/js-screen-shot/lib/split-methods/DrawRectangle.js +22 -0
  208. package/esm/customerService/js-screen-shot/lib/split-methods/DrawText.d.ts +10 -0
  209. package/esm/customerService/js-screen-shot/lib/split-methods/DrawText.js +24 -0
  210. package/esm/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.d.ts +10 -0
  211. package/esm/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.js +61 -0
  212. package/esm/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.d.ts +2 -0
  213. package/esm/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.js +63 -0
  214. package/esm/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.d.ts +1 -0
  215. package/esm/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.js +132 -0
  216. package/esm/customerService/js-screen-shot/lib/split-methods/drawCrossImg.d.ts +1 -0
  217. package/esm/customerService/js-screen-shot/lib/split-methods/drawCrossImg.js +33 -0
  218. package/esm/customerService/js-screen-shot/lib/type/ComponentType.d.ts +133 -0
  219. package/esm/customerService/js-screen-shot/lib/type/ComponentType.js +2 -0
  220. package/esm/customerService/js-screen-shot/main.d.ts +110 -0
  221. package/esm/customerService/js-screen-shot/main.js +1204 -0
  222. package/esm/customerService/screenshotTool.d.ts +2 -2
  223. package/esm/customerService/screenshotTool.js +1 -1
  224. package/esm/customerService/teacherList.d.ts +2 -2
  225. package/esm/customerService/teacherList.js +1 -1
  226. package/esm/i18n/en_US.js +4 -1
  227. package/esm/i18n/zh_CN.js +4 -1
  228. package/esm/icons/index.js +1 -1
  229. package/esm/index.js +14 -14
  230. package/esm/tableSelect/index.js +1 -1
  231. package/esm/viewImage/index.js +3 -3
  232. package/package.json +1 -1
  233. package/dist/a4d5ce04.esm.es5.production.js +0 -468
  234. package/dist/vendor.esm.es5.development.esm.es5.development.css +0 -119
  235. package/dist/vendor.esm.es5.production.esm.es5.production.css +0 -11
  236. package/es2017/customerService/screenShotPlugin.esm.js +0 -6515
  237. package/esm/customerService/screenShotPlugin.esm.js +0 -6516
@@ -0,0 +1,132 @@
1
+ /**
2
+ * 裁剪框工具栏点击事件
3
+ * @param toolName
4
+ * @param index
5
+ * @param mouseEvent
6
+ */ import { setSelectedClassName } from "../common-methods/SetSelectedClassName";
7
+ import { calculateOptionIcoPosition } from "./CalculateOptionIcoPosition";
8
+ import InitData from "../main-entrance/InitData";
9
+ import { getCanvasImgData } from "../common-methods/GetCanvasImgData";
10
+ import { takeOutHistory } from "../common-methods/TakeOutHistory";
11
+ import { drawCutOutBox } from "./DrawCutOutBox";
12
+ import { drawText } from "./DrawText";
13
+ import { addHistory } from "./AddHistoryData";
14
+ import PlugInParameters from "../main-entrance/PlugInParameters";
15
+ export function toolClickEvent(toolName, index, mouseEvent, completeCallback, closeCallback) {
16
+ var data = new InitData();
17
+ var plugInParameters = new PlugInParameters();
18
+ var textInputController = data.getTextInputController();
19
+ var screenShotController = data.getScreenShotContainer();
20
+ var ScreenShotImageController = data.getScreenShotImageController();
21
+ data.setActiveToolName(toolName);
22
+ if (screenShotController == null || ScreenShotImageController == null) return;
23
+ // 获取canvas容器
24
+ var screenShotCanvas = screenShotController.getContext("2d");
25
+ // 工具栏尚未点击,当前属于首次点击,重新绘制一个无像素点的裁剪框
26
+ if (!data.getToolClickStatus()) {
27
+ var _data_getToolPosition, _data_getToolPosition1;
28
+ var leftValue = ((_data_getToolPosition = data.getToolPosition()) === null || _data_getToolPosition === void 0 ? void 0 : _data_getToolPosition.left) || 0;
29
+ var topValue = ((_data_getToolPosition1 = data.getToolPosition()) === null || _data_getToolPosition1 === void 0 ? void 0 : _data_getToolPosition1.top) || 0;
30
+ // 工具栏位置超出时,对其进行修正处理
31
+ if (topValue && data.getToolPositionStatus()) {
32
+ // 调整工具栏位置
33
+ data.setToolInfo(leftValue, topValue - 46);
34
+ }
35
+ // data.setToolStatus(true);
36
+ // 获取裁剪框位置信息
37
+ var cutBoxPosition = data.getCutOutBoxPosition();
38
+ // 开始绘制无像素点裁剪框
39
+ drawCutOutBox(cutBoxPosition.startX, cutBoxPosition.startY, cutBoxPosition.width, cutBoxPosition.height, screenShotCanvas, data.getBorderSize(), screenShotController, ScreenShotImageController, false);
40
+ }
41
+ // 更新当前点击的工具栏条目
42
+ data.setToolName(toolName);
43
+ // 为当前点击项添加选中时的class名
44
+ setSelectedClassName(mouseEvent, index, false);
45
+ if (toolName === "text") {
46
+ var // 颜色选择容器添加布局兼容样式
47
+ _data_getColorSelectPanel;
48
+ // 显示文字选择容器
49
+ data.setTextSizePanelStatus(true);
50
+ // 隐藏画笔尺寸选择容器
51
+ data.setBrushSelectionStatus(false);
52
+ (_data_getColorSelectPanel = data.getColorSelectPanel()) === null || _data_getColorSelectPanel === void 0 ? void 0 : _data_getColorSelectPanel.classList.add("text-select-status");
53
+ } else {
54
+ // 隐藏下拉选择框
55
+ data.setTextSizePanelStatus(false);
56
+ // 显示画笔尺寸选择容器
57
+ data.setBrushSelectionStatus(true);
58
+ }
59
+ // 显示选项面板
60
+ data.setOptionStatus(true);
61
+ // 设置选项面板位置
62
+ data.setOptionPosition(calculateOptionIcoPosition(index));
63
+ data.setRightPanel(true);
64
+ if (toolName == "mosaicPen") {
65
+ // 马赛克工具隐藏右侧颜色面板与角标
66
+ data.setRightPanel(false);
67
+ data.hiddenOptionIcoStatus();
68
+ }
69
+ // 清空文本输入区域的内容并隐藏文本输入框
70
+ if (textInputController != null && data.getTextStatus() || textInputController != null && toolName !== "text") {
71
+ var text = textInputController.innerText;
72
+ if (text && text !== "") {
73
+ var _data_getTextInfo = data.getTextInfo(), positionX = _data_getTextInfo.positionX, positionY = _data_getTextInfo.positionY, color = _data_getTextInfo.color, size = _data_getTextInfo.size;
74
+ drawText(text, positionX, positionY, color, size, screenShotCanvas);
75
+ // 添加历史记录
76
+ addHistory();
77
+ }
78
+ textInputController.innerHTML = "";
79
+ data.setTextStatus(false);
80
+ }
81
+ // 初始化点击状态
82
+ data.setDragging(false);
83
+ data.setDraggingTrim(false);
84
+ // 保存图片
85
+ if (toolName == "save") {
86
+ getCanvasImgData(true);
87
+ var callback = plugInParameters.getSaveCallback();
88
+ if (callback) {
89
+ callback(0, "保存成功");
90
+ }
91
+ // 销毁组件
92
+ data.destroyDOM();
93
+ data.setInitStatus(true);
94
+ }
95
+ // 销毁组件
96
+ if (toolName == "close") {
97
+ // 触发关闭回调函数
98
+ if (closeCallback) {
99
+ closeCallback();
100
+ }
101
+ data.destroyDOM();
102
+ data.setInitStatus(true);
103
+ }
104
+ // 确认截图
105
+ if (toolName == "confirm") {
106
+ var base64 = getCanvasImgData(false);
107
+ // 触发回调函数,截图数据回传给插件调用者
108
+ if (completeCallback) {
109
+ completeCallback({
110
+ base64: base64,
111
+ cutInfo: data.getCutOutBoxPosition()
112
+ });
113
+ }
114
+ if (!plugInParameters.getDestroyContainerState()) {
115
+ // 隐藏工具栏
116
+ // data.setToolStatus(false);
117
+ // data.setOptionStatus(false);
118
+ return;
119
+ }
120
+ // 销毁组件
121
+ data.destroyDOM();
122
+ data.setInitStatus(true);
123
+ }
124
+ // 撤销
125
+ if (toolName == "undo") {
126
+ // 隐藏画笔选项工具栏
127
+ data.setOptionStatus(false);
128
+ takeOutHistory();
129
+ }
130
+ // 设置裁剪框工具栏为点击状态
131
+ data.setToolClickStatus(true);
132
+ }
@@ -0,0 +1 @@
1
+ export declare function drawCrossImg(html: Document): Promise<string[]>;
@@ -0,0 +1,33 @@
1
+ export function drawCrossImg(html) {
2
+ var promises = [];
3
+ var imageNodes = html.querySelectorAll("img");
4
+ imageNodes.forEach(function(element) {
5
+ var href = element.getAttribute("src");
6
+ if (!href) return;
7
+ if (href && href.startsWith("base64")) return;
8
+ var promise = new Promise(function(resolve, reject) {
9
+ var img = new Image();
10
+ img.crossOrigin = "anonymous";
11
+ img.src = "".concat(href, "&time=").concat(+new Date().getTime());
12
+ img.onload = function() {
13
+ var _canvas;
14
+ var width = element.width;
15
+ var height = element.height;
16
+ var canvas = document.createElement("canvas");
17
+ canvas.width = width;
18
+ canvas.height = height;
19
+ var ctx = canvas.getContext("2d");
20
+ ctx.drawImage(img, 0, 0, width, height);
21
+ var base64 = (_canvas = canvas) === null || _canvas === void 0 ? void 0 : _canvas.toDataURL();
22
+ element.setAttribute("src", base64);
23
+ resolve("转换成功");
24
+ };
25
+ img.onerror = reject;
26
+ if (href !== null) {
27
+ img.src = href;
28
+ }
29
+ });
30
+ promises.push(promise);
31
+ });
32
+ return Promise.all(promises);
33
+ }
@@ -0,0 +1,133 @@
1
+ export type cutOutBoxBorder = {
2
+ x: number;
3
+ y: number;
4
+ width: number;
5
+ height: number;
6
+ index: number;
7
+ option: number;
8
+ };
9
+ export type movePositionType = {
10
+ moveStartX: number;
11
+ moveStartY: number;
12
+ };
13
+ export type positionInfoType = {
14
+ startX: number;
15
+ startY: number;
16
+ width: number;
17
+ height: number;
18
+ };
19
+ export type textInfoType = {
20
+ positionX: number;
21
+ positionY: number;
22
+ color: string;
23
+ size: number;
24
+ };
25
+ export type zoomCutOutBoxReturnType = {
26
+ tempStartX: number;
27
+ tempStartY: number;
28
+ tempWidth: number;
29
+ tempHeight: number;
30
+ };
31
+ export type toolPositionValType = "left" | "right" | "center";
32
+ export type hideBarInfoType = {
33
+ state: boolean;
34
+ color?: string;
35
+ fillWidth?: number;
36
+ fillHeight?: number;
37
+ fillState?: boolean;
38
+ };
39
+ export type drawCutOutBoxReturnType = {
40
+ startX: number;
41
+ startY: number;
42
+ width: number;
43
+ height: number;
44
+ };
45
+ export type toolIcoType = {
46
+ [key: string]: boolean | undefined;
47
+ square?: boolean;
48
+ round?: boolean;
49
+ rightTop?: boolean;
50
+ brush?: boolean;
51
+ mosaicPen?: boolean;
52
+ text?: boolean;
53
+ separateLine?: boolean;
54
+ save?: boolean;
55
+ undo?: boolean;
56
+ confirm?: boolean;
57
+ };
58
+ export type toolbarType = {
59
+ id: number;
60
+ title: string;
61
+ };
62
+ export type crcEventType = {
63
+ state: boolean;
64
+ handleFn?: () => void;
65
+ };
66
+ export type screenShotType = {
67
+ enableWebRtc?: boolean;
68
+ screenFlow?: MediaStream;
69
+ level?: number;
70
+ canvasWidth?: number;
71
+ canvasHeight?: number;
72
+ completeCallback?: (imgInfo: {
73
+ base64: string;
74
+ cutInfo: positionInfoType;
75
+ }) => void;
76
+ closeCallback?: () => void;
77
+ triggerCallback?: (res: {
78
+ code: number;
79
+ msg: string;
80
+ displaySurface: string | null;
81
+ displayLabel: string | null;
82
+ }) => void;
83
+ cancelCallback?: (res: {
84
+ code: number;
85
+ msg: string;
86
+ errorInfo: string;
87
+ }) => void;
88
+ saveCallback?: (code: number, msg: string) => void;
89
+ position?: {
90
+ top?: number;
91
+ left?: number;
92
+ };
93
+ clickCutFullScreen?: boolean;
94
+ hiddenToolIco?: toolIcoType;
95
+ showScreenData?: boolean;
96
+ imgSrc?: string;
97
+ loadCrossImg?: boolean;
98
+ proxyUrl?: string;
99
+ useCORS?: boolean;
100
+ screenShotDom?: HTMLElement | HTMLDivElement | HTMLCanvasElement;
101
+ cropBoxInfo?: {
102
+ x: number;
103
+ y: number;
104
+ w: number;
105
+ h: number;
106
+ };
107
+ wrcReplyTime?: number;
108
+ wrcImgPosition?: {
109
+ x: number;
110
+ y: number;
111
+ w: number;
112
+ h: number;
113
+ };
114
+ noScroll?: boolean;
115
+ maskColor?: {
116
+ r: number;
117
+ g: number;
118
+ b: number;
119
+ a: number;
120
+ };
121
+ toolPosition?: toolPositionValType;
122
+ writeBase64?: boolean;
123
+ hiddenScrollBar?: hideBarInfoType;
124
+ wrcWindowMode?: boolean;
125
+ curTabState?: boolean;
126
+ customRightClickEvent?: crcEventType;
127
+ cutBoxBdColor?: string;
128
+ maxUndoNum?: number;
129
+ useRatioArrow?: boolean;
130
+ imgAutoFit?: boolean;
131
+ saveImgTitle?: string;
132
+ destroyContainer?: boolean;
133
+ };
@@ -0,0 +1,2 @@
1
+ // 裁剪框节点事件定义
2
+ export { };
@@ -0,0 +1,110 @@
1
+ import "./assets/less/screen-shot.less";
2
+ import { screenShotType } from "./lib/type/ComponentType";
3
+ export default class ScreenShot {
4
+ private readonly data;
5
+ private readonly videoController;
6
+ private screenShotContainer;
7
+ private screenShotDom;
8
+ private toolController;
9
+ private screenShotImageController;
10
+ private screenShotCanvas;
11
+ private textInputController;
12
+ private optionController;
13
+ private optionIcoController;
14
+ private plugInParameters;
15
+ private wrcReplyTime;
16
+ private keyboardEventHandle;
17
+ private drawGraphPosition;
18
+ private tempGraphPosition;
19
+ private wrcImgPosition;
20
+ private hiddenScrollBar;
21
+ private wrcWindowMode;
22
+ private curTabState;
23
+ private cutOutBoxBorderArr;
24
+ private borderOption;
25
+ private movePosition;
26
+ private dragFlag;
27
+ private clickCutFullScreen;
28
+ private getFullScreenStatus;
29
+ private drawGraphPrevX;
30
+ private drawGraphPrevY;
31
+ private degreeOfBlur;
32
+ private dpr;
33
+ private fullScreenDiffHeight;
34
+ private position;
35
+ private imgSrc;
36
+ private loadCrossImg;
37
+ private mouseInsideCropBox;
38
+ private proxyUrl;
39
+ private useCORS;
40
+ private drawStatus;
41
+ private captureStream;
42
+ private cropBoxInfo;
43
+ private textInputPosition;
44
+ private placement;
45
+ private drawArrow;
46
+ private customRightClickEvent;
47
+ constructor(options: screenShotType);
48
+ getCanvasController(): HTMLCanvasElement | null | undefined;
49
+ destroyComponents(): void;
50
+ completeScreenshot(): void;
51
+ private registerForRightClickEvent;
52
+ private load;
53
+ private sendStream;
54
+ private loadScreenFlowData;
55
+ private startCapture;
56
+ private stopCapture;
57
+ private screenShot;
58
+ private mouseDownEvent;
59
+ private mouseMoveEvent;
60
+ private adjustContainerLevels;
61
+ private initCropBox;
62
+ /**
63
+ * 从窗口数据流中截取页面body内容
64
+ * @param videoWidth 窗口宽度
65
+ * @param videoHeight 窗口高度
66
+ * @param containerWidth body内容宽度
67
+ * @param containerHeight body内容高度
68
+ * @private
69
+ */
70
+ private getWindowContentData;
71
+ private registerContainerShortcuts;
72
+ private showToolBar;
73
+ private setGlobalParameter;
74
+ private setOptionalParameter;
75
+ private mouseUpEvent;
76
+ /**
77
+ * 操作裁剪框
78
+ * @param currentX 裁剪框当前x轴坐标
79
+ * @param currentY 裁剪框当前y轴坐标
80
+ * @param startX 鼠标x轴坐标
81
+ * @param startY 鼠标y轴坐标
82
+ * @param width 裁剪框宽度
83
+ * @param height 裁剪框高度
84
+ * @param context 需要进行绘制的canvas画布
85
+ * @private
86
+ */
87
+ private operatingCutOutBox;
88
+ /**
89
+ * 显示最新的画布状态
90
+ * @private
91
+ */
92
+ private showLastHistory;
93
+ private setScreenShotContainerEventListener;
94
+ /**
95
+ * 向截图容器中绘制图片
96
+ * @param triggerCallback
97
+ * @param context
98
+ * @param imgSrc
99
+ * @private
100
+ */
101
+ private drawPictures;
102
+ /**
103
+ * 初始化截图容器
104
+ * @param triggerCallback
105
+ * @param context
106
+ * @param screenShotContainer
107
+ * @private
108
+ */
109
+ private initScreenShot;
110
+ }