@fileverse-dev/fortune-core 1.0.4 → 1.0.6

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 (346) hide show
  1. package/{dist/packages/core/src → es}/api/cell.d.ts +10 -10
  2. package/es/api/cell.js +204 -0
  3. package/{dist/packages/core/src → es}/api/common.d.ts +66 -66
  4. package/es/api/common.js +79 -0
  5. package/{dist/packages/core/src → es}/api/errors.d.ts +2 -2
  6. package/es/api/errors.js +2 -0
  7. package/{dist/packages/core/src → es}/api/index.d.ts +9 -9
  8. package/es/api/index.js +8 -0
  9. package/{dist/packages/core/src → es}/api/merge.d.ts +5 -5
  10. package/es/api/merge.js +15 -0
  11. package/{dist/packages/core/src → es}/api/range.d.ts +22 -22
  12. package/es/api/range.js +123 -0
  13. package/{dist/packages/core/src → es}/api/rowcol.d.ts +14 -14
  14. package/es/api/rowcol.js +207 -0
  15. package/{dist/packages/core/src → es}/api/sheet.d.ts +10 -10
  16. package/es/api/sheet.js +128 -0
  17. package/{dist/packages/core/src → es}/api/workbook.d.ts +15 -15
  18. package/es/api/workbook.js +85 -0
  19. package/{dist/packages/core/src → es}/canvas.d.ts +46 -46
  20. package/es/canvas.js +1350 -0
  21. package/{dist/packages/core/src → es}/context.d.ts +197 -197
  22. package/es/context.js +380 -0
  23. package/{dist/packages/core/src → es}/events/copy.d.ts +2 -2
  24. package/es/events/copy.js +78 -0
  25. package/{dist/packages/core/src → es}/events/index.d.ts +4 -4
  26. package/es/events/index.js +4 -0
  27. package/{dist/packages/core/src → es}/events/keyboard.d.ts +6 -6
  28. package/es/events/keyboard.js +332 -0
  29. package/{dist/packages/core/src → es}/events/mouse.d.ts +22 -22
  30. package/es/events/mouse.js +1725 -0
  31. package/{dist/packages/core/src → es}/events/paste.d.ts +3 -3
  32. package/es/events/paste.js +1358 -0
  33. package/{dist/packages/core/src → es}/index.d.ts +10 -10
  34. package/es/index.js +10 -0
  35. package/{dist/packages/core/src → es}/locale/en.d.ts +992 -992
  36. package/es/locale/en.js +10564 -0
  37. package/{dist/packages/core/src → es}/locale/es.d.ts +1134 -1134
  38. package/es/locale/es.js +10010 -0
  39. package/{dist/packages/core/src → es}/locale/hi.d.ts +1030 -1030
  40. package/es/locale/hi.js +10550 -0
  41. package/{dist/packages/core/src → es}/locale/index.d.ts +1049 -1049
  42. package/es/locale/index.js +23 -0
  43. package/{dist/packages/core/src → es}/locale/zh.d.ts +1048 -1048
  44. package/es/locale/zh.js +10568 -0
  45. package/{dist/packages/core/src → es}/locale/zh_tw.d.ts +1187 -1187
  46. package/es/locale/zh_tw.js +10072 -0
  47. package/{dist/packages/core/src → es}/modules/ConditionFormat.d.ts +17 -17
  48. package/es/modules/ConditionFormat.js +1258 -0
  49. package/{dist/packages/core/src → es}/modules/border.d.ts +3 -3
  50. package/es/modules/border.js +1240 -0
  51. package/{dist/packages/core/src → es}/modules/cell.d.ts +32 -32
  52. package/es/modules/cell.js +1055 -0
  53. package/{dist/packages/core/src → es}/modules/clipboard.d.ts +3 -3
  54. package/es/modules/clipboard.js +36 -0
  55. package/{dist/packages/core/src → es}/modules/color.d.ts +1 -1
  56. package/es/modules/color.js +1 -0
  57. package/{dist/packages/core/src → es}/modules/comment.d.ts +97 -97
  58. package/es/modules/comment.js +597 -0
  59. package/{dist/packages/core/src → es}/modules/conditionalFormat.d.ts +2 -2
  60. package/es/modules/conditionalFormat.js +441 -0
  61. package/{dist/packages/core/src → es}/modules/cursor.d.ts +3 -3
  62. package/es/modules/cursor.js +62 -0
  63. package/{dist/packages/core/src → es}/modules/dataVerification.d.ts +11 -11
  64. package/es/modules/dataVerification.js +700 -0
  65. package/{dist/packages/core/src → es}/modules/dropCell.d.ts +10 -10
  66. package/es/modules/dropCell.js +2266 -0
  67. package/{dist/packages/core/src → es}/modules/filter.d.ts +45 -45
  68. package/es/modules/filter.js +434 -0
  69. package/{dist/packages/core/src → es}/modules/format.d.ts +6 -6
  70. package/es/modules/format.js +323 -0
  71. package/{dist/packages/core/src → es}/modules/formula.d.ts +54 -54
  72. package/es/modules/formula.js +2301 -0
  73. package/{dist/packages/core/src → es}/modules/freeze.d.ts +5 -5
  74. package/es/modules/freeze.js +148 -0
  75. package/{dist/packages/core/src → es}/modules/hyperlink.d.ts +21 -21
  76. package/es/modules/hyperlink.js +216 -0
  77. package/{dist/packages/core/src → es}/modules/iframe.d.ts +12 -12
  78. package/es/modules/iframe.js +220 -0
  79. package/{dist/packages/core/src → es}/modules/image.d.ts +31 -31
  80. package/es/modules/image.js +253 -0
  81. package/{dist/packages/core/src → es}/modules/index.d.ts +36 -36
  82. package/es/modules/index.js +36 -0
  83. package/{dist/packages/core/src → es}/modules/inline-string.d.ts +36 -36
  84. package/es/modules/inline-string.js +437 -0
  85. package/{dist/packages/core/src → es}/modules/location.d.ts +6 -6
  86. package/es/modules/location.js +46 -0
  87. package/{dist/packages/core/src → es}/modules/locationCondition.d.ts +21 -21
  88. package/es/modules/locationCondition.js +218 -0
  89. package/{dist/packages/core/src → es}/modules/merge.d.ts +3 -3
  90. package/es/modules/merge.js +216 -0
  91. package/{dist/packages/core/src → es}/modules/mobile.d.ts +5 -5
  92. package/es/modules/mobile.js +33 -0
  93. package/{dist/packages/core/src → es}/modules/moveCells.d.ts +5 -5
  94. package/es/modules/moveCells.js +348 -0
  95. package/{dist/packages/core/src → es}/modules/protection.d.ts +5 -5
  96. package/es/modules/protection.js +96 -0
  97. package/{dist/packages/core/src → es}/modules/refresh.d.ts +3 -3
  98. package/es/modules/refresh.js +34 -0
  99. package/{dist/packages/core/src → es}/modules/rowcol.d.ts +19 -19
  100. package/es/modules/rowcol.js +1922 -0
  101. package/{dist/packages/core/src → es}/modules/screenshot.d.ts +2 -2
  102. package/es/modules/screenshot.js +90 -0
  103. package/{dist/packages/core/src → es}/modules/searchReplace.d.ts +36 -36
  104. package/es/modules/searchReplace.js +388 -0
  105. package/{dist/packages/core/src → es}/modules/selection.d.ts +46 -46
  106. package/es/modules/selection.js +1674 -0
  107. package/{dist/packages/core/src → es}/modules/sheet.d.ts +10 -10
  108. package/es/modules/sheet.js +237 -0
  109. package/{dist/packages/core/src → es}/modules/sort.d.ts +7 -7
  110. package/es/modules/sort.js +150 -0
  111. package/{dist/packages/core/src → es}/modules/splitColumn.d.ts +5 -5
  112. package/es/modules/splitColumn.js +126 -0
  113. package/es/modules/ssf.js +1533 -0
  114. package/{dist/packages/core/src → es}/modules/text.d.ts +10 -10
  115. package/es/modules/text.js +1207 -0
  116. package/{dist/packages/core/src → es}/modules/toolbar.d.ts +32 -32
  117. package/es/modules/toolbar.js +970 -0
  118. package/{dist/packages/core/src → es}/modules/validation.d.ts +19 -19
  119. package/es/modules/validation.js +190 -0
  120. package/{dist/packages/core/src → es}/modules/zoom.d.ts +3 -3
  121. package/es/modules/zoom.js +29 -0
  122. package/{dist/packages/core/src → es}/settings.d.ts +100 -100
  123. package/es/settings.js +36 -0
  124. package/{dist/packages/core/src → es}/types.d.ts +371 -371
  125. package/es/types.js +1 -0
  126. package/{dist/packages/core/src → es}/utils/freeze.d.ts +7 -7
  127. package/es/utils/freeze.js +86 -0
  128. package/{dist/packages/core/src → es}/utils/index.d.ts +18 -18
  129. package/es/utils/index.js +173 -0
  130. package/{dist/packages/core/src → es}/utils/patch.d.ts +37 -37
  131. package/es/utils/patch.js +381 -0
  132. package/lib/api/cell.d.ts +10 -0
  133. package/lib/api/cell.js +215 -0
  134. package/lib/api/common.d.ts +66 -0
  135. package/lib/api/common.js +88 -0
  136. package/lib/api/errors.d.ts +2 -0
  137. package/lib/api/errors.js +8 -0
  138. package/lib/api/index.d.ts +9 -0
  139. package/lib/api/index.js +101 -0
  140. package/lib/api/merge.d.ts +5 -0
  141. package/lib/api/merge.js +22 -0
  142. package/lib/api/range.d.ts +22 -0
  143. package/lib/api/range.js +138 -0
  144. package/lib/api/rowcol.d.ts +14 -0
  145. package/lib/api/rowcol.js +222 -0
  146. package/lib/api/sheet.d.ts +10 -0
  147. package/lib/api/sheet.js +145 -0
  148. package/lib/api/workbook.d.ts +15 -0
  149. package/lib/api/workbook.js +98 -0
  150. package/lib/canvas.d.ts +46 -0
  151. package/lib/canvas.js +1356 -0
  152. package/lib/context.d.ts +197 -0
  153. package/lib/context.js +392 -0
  154. package/lib/events/copy.d.ts +2 -0
  155. package/lib/events/copy.js +85 -0
  156. package/lib/events/index.d.ts +4 -0
  157. package/lib/events/index.js +49 -0
  158. package/lib/events/keyboard.d.ts +6 -0
  159. package/lib/events/keyboard.js +342 -0
  160. package/lib/events/mouse.d.ts +22 -0
  161. package/lib/events/mouse.js +1744 -0
  162. package/lib/events/paste.d.ts +3 -0
  163. package/lib/events/paste.js +1366 -0
  164. package/lib/index.d.ts +10 -0
  165. package/lib/index.js +109 -0
  166. package/lib/locale/en.d.ts +992 -0
  167. package/lib/locale/en.js +10570 -0
  168. package/lib/locale/es.d.ts +1134 -0
  169. package/lib/locale/es.js +10016 -0
  170. package/lib/locale/hi.d.ts +1030 -0
  171. package/lib/locale/hi.js +10556 -0
  172. package/lib/locale/index.d.ts +1049 -0
  173. package/lib/locale/index.js +29 -0
  174. package/lib/locale/zh.d.ts +1048 -0
  175. package/lib/locale/zh.js +10574 -0
  176. package/lib/locale/zh_tw.d.ts +1187 -0
  177. package/lib/locale/zh_tw.js +10078 -0
  178. package/lib/modules/ConditionFormat.d.ts +17 -0
  179. package/lib/modules/ConditionFormat.js +1273 -0
  180. package/lib/modules/border.d.ts +3 -0
  181. package/lib/modules/border.js +1248 -0
  182. package/lib/modules/cell.d.ts +32 -0
  183. package/lib/modules/cell.js +1085 -0
  184. package/lib/modules/clipboard.d.ts +3 -0
  185. package/lib/modules/clipboard.js +42 -0
  186. package/lib/modules/color.d.ts +1 -0
  187. package/lib/modules/color.js +7 -0
  188. package/lib/modules/comment.d.ts +97 -0
  189. package/lib/modules/comment.js +625 -0
  190. package/lib/modules/conditionalFormat.d.ts +2 -0
  191. package/lib/modules/conditionalFormat.js +447 -0
  192. package/lib/modules/cursor.d.ts +3 -0
  193. package/lib/modules/cursor.js +70 -0
  194. package/lib/modules/dataVerification.d.ts +11 -0
  195. package/lib/modules/dataVerification.js +715 -0
  196. package/lib/modules/dropCell.d.ts +10 -0
  197. package/lib/modules/dropCell.js +2282 -0
  198. package/lib/modules/filter.d.ts +45 -0
  199. package/lib/modules/filter.js +448 -0
  200. package/lib/modules/format.d.ts +6 -0
  201. package/lib/modules/format.js +334 -0
  202. package/lib/modules/formula.d.ts +54 -0
  203. package/lib/modules/formula.js +2330 -0
  204. package/lib/modules/freeze.d.ts +5 -0
  205. package/lib/modules/freeze.js +158 -0
  206. package/lib/modules/hyperlink.d.ts +21 -0
  207. package/lib/modules/hyperlink.js +232 -0
  208. package/lib/modules/iframe.d.ts +12 -0
  209. package/lib/modules/iframe.js +236 -0
  210. package/lib/modules/image.d.ts +31 -0
  211. package/lib/modules/image.js +272 -0
  212. package/lib/modules/index.d.ts +36 -0
  213. package/lib/modules/index.js +401 -0
  214. package/lib/modules/inline-string.d.ts +36 -0
  215. package/lib/modules/inline-string.js +452 -0
  216. package/lib/modules/location.d.ts +6 -0
  217. package/lib/modules/location.js +57 -0
  218. package/lib/modules/locationCondition.d.ts +21 -0
  219. package/lib/modules/locationCondition.js +229 -0
  220. package/lib/modules/merge.d.ts +3 -0
  221. package/lib/modules/merge.js +223 -0
  222. package/lib/modules/mobile.d.ts +5 -0
  223. package/lib/modules/mobile.js +41 -0
  224. package/lib/modules/moveCells.d.ts +5 -0
  225. package/lib/modules/moveCells.js +357 -0
  226. package/lib/modules/protection.d.ts +5 -0
  227. package/lib/modules/protection.js +106 -0
  228. package/lib/modules/refresh.d.ts +3 -0
  229. package/lib/modules/refresh.js +40 -0
  230. package/lib/modules/rowcol.d.ts +19 -0
  231. package/lib/modules/rowcol.js +1935 -0
  232. package/lib/modules/screenshot.d.ts +2 -0
  233. package/lib/modules/screenshot.js +96 -0
  234. package/lib/modules/searchReplace.d.ts +36 -0
  235. package/lib/modules/searchReplace.js +402 -0
  236. package/lib/modules/selection.d.ts +46 -0
  237. package/lib/modules/selection.js +1703 -0
  238. package/lib/modules/sheet.d.ts +10 -0
  239. package/lib/modules/sheet.js +250 -0
  240. package/lib/modules/sort.d.ts +7 -0
  241. package/lib/modules/sort.js +159 -0
  242. package/lib/modules/splitColumn.d.ts +5 -0
  243. package/lib/modules/splitColumn.js +136 -0
  244. package/lib/modules/ssf.js +1539 -0
  245. package/lib/modules/text.d.ts +10 -0
  246. package/lib/modules/text.js +1221 -0
  247. package/lib/modules/toolbar.d.ts +32 -0
  248. package/lib/modules/toolbar.js +1003 -0
  249. package/lib/modules/validation.d.ts +19 -0
  250. package/lib/modules/validation.js +205 -0
  251. package/lib/modules/zoom.d.ts +3 -0
  252. package/lib/modules/zoom.js +36 -0
  253. package/lib/settings.d.ts +100 -0
  254. package/lib/settings.js +42 -0
  255. package/lib/types.d.ts +371 -0
  256. package/lib/types.js +5 -0
  257. package/lib/utils/freeze.d.ts +7 -0
  258. package/lib/utils/freeze.js +92 -0
  259. package/lib/utils/index.d.ts +18 -0
  260. package/lib/utils/index.js +231 -0
  261. package/lib/utils/patch.d.ts +37 -0
  262. package/lib/utils/patch.js +392 -0
  263. package/package.json +7 -6
  264. package/dist/index.esm.js +0 -80255
  265. package/dist/index.js +0 -80601
  266. package/dist/packages/react/src/components/ChangeColor/index.d.ts +0 -7
  267. package/dist/packages/react/src/components/ConditionFormat/ConditionRules.d.ts +0 -6
  268. package/dist/packages/react/src/components/ConditionFormat/index.d.ts +0 -7
  269. package/dist/packages/react/src/components/ContextMenu/Divider.d.ts +0 -3
  270. package/dist/packages/react/src/components/ContextMenu/FilterMenu.d.ts +0 -3
  271. package/dist/packages/react/src/components/ContextMenu/Menu.d.ts +0 -8
  272. package/dist/packages/react/src/components/ContextMenu/SheetTab.d.ts +0 -4
  273. package/dist/packages/react/src/components/ContextMenu/index.d.ts +0 -5
  274. package/dist/packages/react/src/components/CustomSort/index.d.ts +0 -4
  275. package/dist/packages/react/src/components/DataVerification/DropdownList.d.ts +0 -4
  276. package/dist/packages/react/src/components/DataVerification/RangeDialog.d.ts +0 -4
  277. package/dist/packages/react/src/components/DataVerification/getDisplayedRangeTxt.d.ts +0 -2
  278. package/dist/packages/react/src/components/DataVerification/index.d.ts +0 -4
  279. package/dist/packages/react/src/components/Dialog/index.d.ts +0 -15
  280. package/dist/packages/react/src/components/DuneChartsInputModal/DuneChartsInputModal.d.ts +0 -11
  281. package/dist/packages/react/src/components/DunePreview/DunePreview.d.ts +0 -13
  282. package/dist/packages/react/src/components/FilterOption/index.d.ts +0 -5
  283. package/dist/packages/react/src/components/FormatSearch/index.d.ts +0 -6
  284. package/dist/packages/react/src/components/FormulaSearch/index.d.ts +0 -5
  285. package/dist/packages/react/src/components/FxEditor/NameBox.d.ts +0 -3
  286. package/dist/packages/react/src/components/FxEditor/index.d.ts +0 -4
  287. package/dist/packages/react/src/components/IFrameBoxs/iFrameBoxs.d.ts +0 -4
  288. package/dist/packages/react/src/components/ImgBoxs/index.d.ts +0 -3
  289. package/dist/packages/react/src/components/LinkEidtCard/index.d.ts +0 -5
  290. package/dist/packages/react/src/components/LocationCondition/index.d.ts +0 -3
  291. package/dist/packages/react/src/components/MessageBox/index.d.ts +0 -9
  292. package/dist/packages/react/src/components/NotationBoxes/index.d.ts +0 -3
  293. package/dist/packages/react/src/components/ResetColumnWidth/index.d.ts +0 -2
  294. package/dist/packages/react/src/components/SVGDefines.d.ts +0 -5
  295. package/dist/packages/react/src/components/SVGIcon.d.ts +0 -9
  296. package/dist/packages/react/src/components/SearchReplace/index.d.ts +0 -6
  297. package/dist/packages/react/src/components/Sheet/index.d.ts +0 -8
  298. package/dist/packages/react/src/components/SheetList/SheetHiddenButton.d.ts +0 -8
  299. package/dist/packages/react/src/components/SheetList/SheetListItem.d.ts +0 -9
  300. package/dist/packages/react/src/components/SheetList/index.d.ts +0 -4
  301. package/dist/packages/react/src/components/SheetOverlay/ColumnHeader.d.ts +0 -3
  302. package/dist/packages/react/src/components/SheetOverlay/ContentEditable.d.ts +0 -11
  303. package/dist/packages/react/src/components/SheetOverlay/FormulaHint/index.d.ts +0 -4
  304. package/dist/packages/react/src/components/SheetOverlay/FormulaSearch/constant.d.ts +0 -63
  305. package/dist/packages/react/src/components/SheetOverlay/FormulaSearch/index.d.ts +0 -4
  306. package/dist/packages/react/src/components/SheetOverlay/InputBox.d.ts +0 -3
  307. package/dist/packages/react/src/components/SheetOverlay/RowHeader.d.ts +0 -3
  308. package/dist/packages/react/src/components/SheetOverlay/ScrollBar/index.d.ts +0 -7
  309. package/dist/packages/react/src/components/SheetOverlay/index.d.ts +0 -4
  310. package/dist/packages/react/src/components/SheetTab/SheetItem.d.ts +0 -8
  311. package/dist/packages/react/src/components/SheetTab/index.d.ts +0 -4
  312. package/dist/packages/react/src/components/SplitColumn/index.d.ts +0 -3
  313. package/dist/packages/react/src/components/Toolbar/Button.d.ts +0 -12
  314. package/dist/packages/react/src/components/Toolbar/ColorPicker.d.ts +0 -6
  315. package/dist/packages/react/src/components/Toolbar/Combo.d.ts +0 -12
  316. package/dist/packages/react/src/components/Toolbar/CustomBorder.d.ts +0 -7
  317. package/dist/packages/react/src/components/Toolbar/CustomButton.d.ts +0 -11
  318. package/dist/packages/react/src/components/Toolbar/CustomColor.d.ts +0 -8
  319. package/dist/packages/react/src/components/Toolbar/CustomIcon.d.ts +0 -9
  320. package/dist/packages/react/src/components/Toolbar/Divider.d.ts +0 -4
  321. package/dist/packages/react/src/components/Toolbar/MoreItemsContainer.d.ts +0 -6
  322. package/dist/packages/react/src/components/Toolbar/Select.d.ts +0 -14
  323. package/dist/packages/react/src/components/Toolbar/index.d.ts +0 -10
  324. package/dist/packages/react/src/components/Workbook/api.d.ts +0 -1177
  325. package/dist/packages/react/src/components/Workbook/index.d.ts +0 -1185
  326. package/dist/packages/react/src/components/ZoomControl/index.d.ts +0 -4
  327. package/dist/packages/react/src/components/index.d.ts +0 -4
  328. package/dist/packages/react/src/constants.d.ts +0 -1
  329. package/dist/packages/react/src/context/index.d.ts +0 -25
  330. package/dist/packages/react/src/context/modal.d.ts +0 -10
  331. package/dist/packages/react/src/hooks/useAlert.d.ts +0 -4
  332. package/dist/packages/react/src/hooks/useDialog.d.ts +0 -5
  333. package/dist/packages/react/src/hooks/useOutsideClick.d.ts +0 -2
  334. package/dist/packages/react/src/hooks/usePrevious.d.ts +0 -2
  335. package/dist/packages/react/src/index.d.ts +0 -1
  336. package/dist/packages/react/src/utils/datepickerStyles.d.ts +0 -2
  337. package/dist/stories/API.stories.d.ts +0 -1210
  338. package/dist/stories/Collabration.stories.d.ts +0 -2359
  339. package/dist/stories/Features.stories.d.ts +0 -9430
  340. package/dist/stories/data/cell.d.ts +0 -983
  341. package/dist/stories/data/dataVerification.d.ts +0 -131
  342. package/dist/stories/data/empty.d.ts +0 -10
  343. package/dist/stories/data/formula.d.ts +0 -362
  344. package/dist/stories/data/freeze.d.ts +0 -34
  345. package/dist/stories/data/protected.d.ts +0 -40
  346. package/dist/stories/utils.d.ts +0 -1
@@ -0,0 +1,1744 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.fixPositionOnFrozenCells = fixPositionOnFrozenCells;
7
+ exports.handleCellAreaDoubleClick = handleCellAreaDoubleClick;
8
+ exports.handleCellAreaMouseDown = handleCellAreaMouseDown;
9
+ exports.handleColFreezeHandleMouseDown = handleColFreezeHandleMouseDown;
10
+ exports.handleColSizeHandleMouseDown = handleColSizeHandleMouseDown;
11
+ exports.handleColumnHeaderMouseDown = handleColumnHeaderMouseDown;
12
+ exports.handleContextMenu = handleContextMenu;
13
+ exports.handleGlobalWheel = handleGlobalWheel;
14
+ exports.handleOverlayMouseMove = handleOverlayMouseMove;
15
+ exports.handleOverlayMouseUp = handleOverlayMouseUp;
16
+ exports.handleRowFreezeHandleMouseDown = handleRowFreezeHandleMouseDown;
17
+ exports.handleRowHeaderMouseDown = handleRowHeaderMouseDown;
18
+ exports.handleRowSizeHandleMouseDown = handleRowSizeHandleMouseDown;
19
+ var _lodash = _interopRequireDefault(require("lodash"));
20
+ var _context = require("../context");
21
+ var _modules = require("../modules");
22
+ var _freeze = require("../modules/freeze");
23
+ var _cell = require("../modules/cell");
24
+ var _location = require("../modules/location");
25
+ var _protection = require("../modules/protection");
26
+ var _selection = require("../modules/selection");
27
+ var _utils = require("../utils");
28
+ var _dropCell = require("../modules/dropCell");
29
+ var _formula = require("../modules/formula");
30
+ var _hyperlink = require("../modules/hyperlink");
31
+ var _searchReplace = require("../modules/searchReplace");
32
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
33
+ var mouseWheelUniqueTimeout;
34
+ var scrollLockTimeout;
35
+ function handleGlobalWheel(ctx, e, cache, scrollbarX, scrollbarY) {
36
+ var _a;
37
+ (0, _modules.removeEditingComment)(ctx, cache);
38
+ if (((_a = cache.searchDialog) === null || _a === void 0 ? void 0 : _a.mouseEnter) && ctx.showSearch && ctx.showReplace) return;
39
+ if (ctx.filterContextMenu != null) return;
40
+ var scrollLeft = scrollbarX.scrollLeft;
41
+ var scrollTop = scrollbarY.scrollTop;
42
+ var visibledatacolumn_c = ctx.visibledatacolumn;
43
+ var visibledatarow_c = ctx.visibledatarow;
44
+ clearTimeout(mouseWheelUniqueTimeout);
45
+ clearTimeout(scrollLockTimeout);
46
+ if (cache.visibleColumnsUnique != null) {
47
+ visibledatacolumn_c = cache.visibleColumnsUnique;
48
+ } else {
49
+ visibledatacolumn_c = _lodash.default.uniq(visibledatacolumn_c);
50
+ cache.visibleColumnsUnique = visibledatacolumn_c;
51
+ }
52
+ if (cache.visibleRowsUnique != null) {
53
+ visibledatarow_c = cache.visibleRowsUnique;
54
+ } else {
55
+ visibledatarow_c = _lodash.default.uniq(visibledatarow_c);
56
+ cache.visibleRowsUnique = visibledatarow_c;
57
+ }
58
+ var row_st = _lodash.default.sortedIndex(visibledatarow_c, scrollTop) + 1;
59
+ var rowscroll = 0;
60
+ var scrollNum = 1;
61
+ if (e.deltaY !== 0 && !cache.verticalScrollLock) {
62
+ cache.horizontalScrollLock = true;
63
+ var row_ed = void 0;
64
+ var step = Math.round(scrollNum / ctx.zoomRatio);
65
+ step = step < 1 ? 1 : step;
66
+ if (e.deltaY > 0) {
67
+ row_ed = row_st + step;
68
+ if (row_ed >= visibledatarow_c.length) {
69
+ row_ed = visibledatarow_c.length - 1;
70
+ }
71
+ } else {
72
+ row_ed = row_st - step;
73
+ if (row_ed < 0) {
74
+ row_ed = 0;
75
+ }
76
+ }
77
+ rowscroll = row_ed === 0 ? 0 : visibledatarow_c[row_ed - 1];
78
+ scrollbarY.scrollTop = rowscroll;
79
+ } else if (e.deltaX !== 0 && !cache.horizontalScrollLock) {
80
+ cache.verticalScrollLock = true;
81
+ if (e.deltaX > 0) {
82
+ scrollLeft += 20 * ctx.zoomRatio;
83
+ } else {
84
+ scrollLeft -= 20 * ctx.zoomRatio;
85
+ }
86
+ scrollbarX.scrollLeft = scrollLeft;
87
+ }
88
+ mouseWheelUniqueTimeout = setTimeout(function () {
89
+ delete cache.visibleColumnsUnique;
90
+ delete cache.visibleRowsUnique;
91
+ }, 500);
92
+ scrollLockTimeout = setTimeout(function () {
93
+ delete cache.verticalScrollLock;
94
+ delete cache.horizontalScrollLock;
95
+ }, 50);
96
+ e.preventDefault();
97
+ }
98
+ function fixPositionOnFrozenCells(freeze, x, y, mouseX, mouseY) {
99
+ var _a, _b;
100
+ var inHorizontalFreeze = false;
101
+ var inVerticalFreeze = false;
102
+ if (!freeze) return {
103
+ x: x,
104
+ y: y,
105
+ inHorizontalFreeze: inHorizontalFreeze,
106
+ inVerticalFreeze: inVerticalFreeze
107
+ };
108
+ var freezenverticaldata = (_a = freeze === null || freeze === void 0 ? void 0 : freeze.vertical) === null || _a === void 0 ? void 0 : _a.freezenverticaldata;
109
+ var freezenhorizontaldata = (_b = freeze === null || freeze === void 0 ? void 0 : freeze.horizontal) === null || _b === void 0 ? void 0 : _b.freezenhorizontaldata;
110
+ if (freezenverticaldata != null && mouseX < freezenverticaldata[0] - freezenverticaldata[2]) {
111
+ x = mouseX + freezenverticaldata[2];
112
+ inVerticalFreeze = true;
113
+ }
114
+ if (freezenhorizontaldata != null && mouseY < freezenhorizontaldata[0] - freezenhorizontaldata[2]) {
115
+ y = mouseY + freezenhorizontaldata[2];
116
+ inHorizontalFreeze = true;
117
+ }
118
+ return {
119
+ x: x,
120
+ y: y,
121
+ inHorizontalFreeze: inHorizontalFreeze,
122
+ inVerticalFreeze: inVerticalFreeze
123
+ };
124
+ }
125
+ function handleCellAreaMouseDown(ctx, globalCache, e, cellInput, container, fxInput, canvas) {
126
+ var _a, _b;
127
+ var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
128
+ if (!(fxInput === null || fxInput === void 0 ? void 0 : fxInput.innerHTML) && ctx) {
129
+ ctx.defaultCandidates = [];
130
+ }
131
+ ctx.contextMenu = {};
132
+ ctx.filterContextMenu = undefined;
133
+ var flowdata = (0, _context.getFlowdata)(ctx);
134
+ if (!flowdata) return;
135
+ (0, _modules.removeEditingComment)(ctx, globalCache);
136
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
137
+ var rect = container.getBoundingClientRect();
138
+ var mouseX = e.pageX - rect.left - window.scrollX;
139
+ var mouseY = e.pageY - rect.top - window.scrollY;
140
+ var _x = mouseX + ctx.scrollLeft;
141
+ var _y = mouseY + ctx.scrollTop;
142
+ if (_x >= rect.width + ctx.scrollLeft || _y >= rect.height + ctx.scrollTop) {
143
+ return;
144
+ }
145
+ var freeze = (_c = globalCache.freezen) === null || _c === void 0 ? void 0 : _c[ctx.currentSheetId];
146
+ var _p = fixPositionOnFrozenCells(freeze, _x, _y, mouseX, mouseY),
147
+ x = _p.x,
148
+ y = _p.y,
149
+ inHorizontalFreeze = _p.inHorizontalFreeze,
150
+ inVerticalFreeze = _p.inVerticalFreeze;
151
+ var row_location = (0, _location.rowLocation)(y, ctx.visibledatarow);
152
+ var row = row_location[1];
153
+ var row_pre = row_location[0];
154
+ var row_index = row_location[2];
155
+ var col_location = (0, _location.colLocation)(x, ctx.visibledatacolumn);
156
+ var col = col_location[1];
157
+ var col_pre = col_location[0];
158
+ var col_index = col_location[2];
159
+ var row_index_ed = row_index;
160
+ var col_index_ed = col_index;
161
+ var margeset = (0, _cell.mergeBorder)(ctx, flowdata, row_index, col_index);
162
+ if (margeset) {
163
+ _a = margeset.row, row_pre = _a[0], row = _a[1], row_index = _a[2], row_index_ed = _a[3];
164
+ _b = margeset.column, col_pre = _b[0], col = _b[1], col_index = _b[2], col_index_ed = _b[3];
165
+ }
166
+ (0, _hyperlink.showLinkCard)(ctx, row_index, col_index, false, true);
167
+ if (((_e = (_d = ctx.hooks).beforeCellMouseDown) === null || _e === void 0 ? void 0 : _e.call(_d, (_f = flowdata[row_index]) === null || _f === void 0 ? void 0 : _f[col_index], {
168
+ row: row_index,
169
+ column: col_index,
170
+ startRow: row_pre,
171
+ startColumn: col_pre,
172
+ endRow: row,
173
+ endColumn: col
174
+ })) === false) {
175
+ return;
176
+ }
177
+ (0, _modules.cellFocus)(ctx, row_index, col_index, true);
178
+ (0, _modules.editComment)(ctx, globalCache, row_index, col_index);
179
+ if (!inHorizontalFreeze && !inVerticalFreeze) {
180
+ if (col_pre < ctx.scrollLeft) {
181
+ ctx.scrollLeft = col_pre;
182
+ }
183
+ if (row_pre < ctx.scrollTop) {
184
+ ctx.scrollTop = row_pre;
185
+ }
186
+ }
187
+ if (e.button === 2) {
188
+ var isInSelection = _lodash.default.some(ctx.luckysheet_select_save, function (obj_s) {
189
+ return obj_s.row != null && row_index >= obj_s.row[0] && row_index <= obj_s.row[1] && col_index >= obj_s.column[0] && col_index <= obj_s.column[1];
190
+ });
191
+ if (isInSelection) return;
192
+ }
193
+ ctx.luckysheet_scroll_status = true;
194
+ if (ctx.luckysheetCellUpdate.length > 0) {
195
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) {
196
+ var rowseleted = [row_index, row_index_ed];
197
+ var columnseleted = [col_index, col_index_ed];
198
+ var left = col_pre;
199
+ var width = col - col_pre - 1;
200
+ var top_1 = row_pre;
201
+ var height = row - row_pre - 1;
202
+ if (e.shiftKey) {
203
+ var last = ctx.formulaCache.func_selectedrange;
204
+ top_1 = 0;
205
+ height = 0;
206
+ rowseleted = [];
207
+ if (last == null || last.top == null || last.height == null || last.row_focus == null || last.left == null || last.width == null) return;
208
+ if (last.top > row_pre) {
209
+ top_1 = row_pre;
210
+ height = last.top + last.height - row_pre;
211
+ if (last.row[1] > last.row_focus) {
212
+ last.row[1] = last.row_focus;
213
+ }
214
+ rowseleted = [row_index, last.row[1]];
215
+ } else if (last.top === row_pre) {
216
+ top_1 = row_pre;
217
+ height = last.top + last.height - row_pre;
218
+ rowseleted = [row_index, last.row[0]];
219
+ } else {
220
+ top_1 = last.top;
221
+ height = row - last.top - 1;
222
+ if (last.row[0] < last.row_focus) {
223
+ last.row[0] = last.row_focus;
224
+ }
225
+ rowseleted = [last.row[0], row_index];
226
+ }
227
+ left = 0;
228
+ width = 0;
229
+ columnseleted = [];
230
+ if (last.left > col_pre) {
231
+ left = col_pre;
232
+ width = last.left + last.width - col_pre;
233
+ if (last.column == null || last.column_focus == null) return;
234
+ if (last.column[1] > last.column_focus) {
235
+ last.column[1] = last.column_focus;
236
+ }
237
+ columnseleted = [col_index, last.column[1]];
238
+ } else if (last.left === col_pre) {
239
+ left = col_pre;
240
+ width = last.left + last.width - col_pre;
241
+ columnseleted = [col_index, last.column[0]];
242
+ } else {
243
+ left = last.left;
244
+ width = col - last.left - 1;
245
+ if (last.column == null || last.column_focus == null) return;
246
+ if (last.column[0] < last.column_focus) {
247
+ last.column[0] = last.column_focus;
248
+ }
249
+ columnseleted = [last.column[0], col_index];
250
+ }
251
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, columnseleted, rowseleted, last, top_1, height, left, width);
252
+ if (changeparam != null) {
253
+ columnseleted = changeparam[0], rowseleted = changeparam[1], top_1 = changeparam[2], height = changeparam[3], left = changeparam[4], width = changeparam[5];
254
+ }
255
+ last.row = rowseleted;
256
+ last.column = columnseleted;
257
+ last.left_move = left;
258
+ last.width_move = width;
259
+ last.top_move = top_1;
260
+ last.height_move = height;
261
+ ctx.formulaCache.func_selectedrange = last;
262
+ } else if (e.ctrlKey && ((_g = _lodash.default.last(cellInput.querySelectorAll("span"))) === null || _g === void 0 ? void 0 : _g.innerText) !== ",") {
263
+ var vText = cellInput.innerText;
264
+ if (vText[vText.length - 1] === ")") {
265
+ vText = vText.substring(0, vText.length - 1);
266
+ }
267
+ if (vText.length > 0) {
268
+ var lastWord = vText.substring(vText.length - 1, 1);
269
+ if (lastWord !== "," && lastWord !== "=" && lastWord !== "(") {
270
+ vText += ",";
271
+ }
272
+ }
273
+ if (vText.length > 0 && vText.substring(0, 1) === "=") {
274
+ vText = (0, _modules.functionHTMLGenerate)(vText);
275
+ if (window.getSelection) {
276
+ var currSelection = window.getSelection();
277
+ if (currSelection == null) return;
278
+ ctx.formulaCache.functionRangeIndex = [_lodash.default.indexOf((_k = (_j = (_h = currSelection.anchorNode) === null || _h === void 0 ? void 0 : _h.parentNode) === null || _j === void 0 ? void 0 : _j.parentNode) === null || _k === void 0 ? void 0 : _k.childNodes, (_l = currSelection.anchorNode) === null || _l === void 0 ? void 0 : _l.parentNode), currSelection.anchorOffset];
279
+ } else {
280
+ var textRange = document.selection.createRange();
281
+ ctx.formulaCache.functionRangeIndex = textRange;
282
+ }
283
+ cellInput.innerHTML = vText;
284
+ (0, _cell.cancelFunctionrangeSelected)(ctx);
285
+ (0, _modules.createRangeHightlight)(ctx, vText);
286
+ }
287
+ ctx.formulaCache.rangestart = false;
288
+ ctx.formulaCache.rangedrag_column_start = false;
289
+ ctx.formulaCache.rangedrag_row_start = false;
290
+ if (fxInput) fxInput.innerHTML = vText;
291
+ (0, _modules.rangeHightlightselected)(ctx, cellInput);
292
+ (0, _modules.israngeseleciton)(ctx);
293
+ ctx.formulaCache.func_selectedrange = {
294
+ left: left,
295
+ width: width,
296
+ top: top_1,
297
+ height: height,
298
+ left_move: left,
299
+ width_move: width,
300
+ top_move: top_1,
301
+ height_move: height,
302
+ row: rowseleted,
303
+ column: columnseleted,
304
+ row_focus: row_index,
305
+ column_focus: col_index
306
+ };
307
+ } else {
308
+ ctx.formulaCache.func_selectedrange = {
309
+ left: left,
310
+ width: width,
311
+ top: top_1,
312
+ height: height,
313
+ left_move: left,
314
+ width_move: width,
315
+ top_move: top_1,
316
+ height_move: height,
317
+ row: rowseleted,
318
+ column: columnseleted,
319
+ row_focus: row_index,
320
+ column_focus: col_index
321
+ };
322
+ }
323
+ (0, _modules.rangeSetValue)(ctx, cellInput, {
324
+ row: rowseleted,
325
+ column: columnseleted
326
+ }, fxInput);
327
+ ctx.formulaCache.rangestart = true;
328
+ ctx.formulaCache.rangedrag_column_start = false;
329
+ ctx.formulaCache.rangedrag_row_start = false;
330
+ ctx.formulaCache.selectingRangeIndex = ctx.formulaCache.rangechangeindex;
331
+ if (ctx.formulaCache.rangechangeindex > ctx.formulaRangeHighlight.length) {
332
+ (0, _modules.createRangeHightlight)(ctx, cellInput.innerHTML, ctx.formulaCache.rangechangeindex);
333
+ }
334
+ (0, _modules.createFormulaRangeSelect)(ctx, {
335
+ rangeIndex: ctx.formulaCache.rangechangeindex || 0,
336
+ left: left,
337
+ top: top_1,
338
+ width: width,
339
+ height: height
340
+ });
341
+ e.preventDefault();
342
+ return;
343
+ }
344
+ (0, _cell.updateCell)(ctx, ctx.luckysheetCellUpdate[0], ctx.luckysheetCellUpdate[1], cellInput, undefined, canvas);
345
+ ctx.luckysheet_select_status = true;
346
+ }
347
+ if ((0, _protection.checkProtectionSelectLockedOrUnLockedCells)(ctx, row_index, col_index, ctx.currentSheetId)) {
348
+ ctx.luckysheet_select_status = true;
349
+ }
350
+ if (ctx.luckysheet_select_status) {
351
+ if (e.shiftKey) {
352
+ var last = (_m = ctx.luckysheet_select_save) === null || _m === void 0 ? void 0 : _m[ctx.luckysheet_select_save.length - 1];
353
+ if (last && last.top != null && last.left != null && last.height != null && last.width != null && last.row_focus != null && last.column_focus != null) {
354
+ var top_2 = 0;
355
+ var height = 0;
356
+ var rowseleted = [];
357
+ if (last.top > row_pre) {
358
+ top_2 = row_pre;
359
+ height = last.top + last.height - row_pre;
360
+ if (last.row[1] > last.row_focus) {
361
+ last.row[1] = last.row_focus;
362
+ }
363
+ rowseleted = [row_index, last.row[1]];
364
+ } else if (last.top === row_pre) {
365
+ top_2 = row_pre;
366
+ height = last.top + last.height - row_pre;
367
+ rowseleted = [row_index, last.row[0]];
368
+ } else {
369
+ top_2 = last.top;
370
+ height = row - last.top - 1;
371
+ if (last.row[0] < last.row_focus) {
372
+ last.row[0] = last.row_focus;
373
+ }
374
+ rowseleted = [last.row[0], row_index];
375
+ }
376
+ var left = 0;
377
+ var width = 0;
378
+ var columnseleted = [];
379
+ if (last.left > col_pre) {
380
+ left = col_pre;
381
+ width = last.left + last.width - col_pre;
382
+ if (last.column[1] > last.column_focus) {
383
+ last.column[1] = last.column_focus;
384
+ }
385
+ columnseleted = [col_index, last.column[1]];
386
+ } else if (last.left === col_pre) {
387
+ left = col_pre;
388
+ width = last.left + last.width - col_pre;
389
+ columnseleted = [col_index, last.column[0]];
390
+ } else {
391
+ left = last.left;
392
+ width = col - last.left - 1;
393
+ if (last.column[0] < last.column_focus) {
394
+ last.column[0] = last.column_focus;
395
+ }
396
+ columnseleted = [last.column[0], col_index];
397
+ }
398
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, columnseleted, rowseleted, last, top_2, height, left, width);
399
+ if (changeparam != null) {
400
+ columnseleted = changeparam[0], rowseleted = changeparam[1], top_2 = changeparam[2], height = changeparam[3], left = changeparam[4], width = changeparam[5];
401
+ }
402
+ last.row = rowseleted;
403
+ last.column = columnseleted;
404
+ last.left_move = left;
405
+ last.width_move = width;
406
+ last.top_move = top_2;
407
+ last.height_move = height;
408
+ ctx.luckysheet_select_save[ctx.luckysheet_select_save.length - 1] = last;
409
+ }
410
+ } else if (e.ctrlKey || e.metaKey) {
411
+ (_o = ctx.luckysheet_select_save) === null || _o === void 0 ? void 0 : _o.push({
412
+ left: col_pre,
413
+ width: col - col_pre - 1,
414
+ top: row_pre,
415
+ height: row - row_pre - 1,
416
+ left_move: col_pre,
417
+ width_move: col - col_pre - 1,
418
+ top_move: row_pre,
419
+ height_move: row - row_pre - 1,
420
+ row: [row_index, row_index_ed],
421
+ column: [col_index, col_index_ed],
422
+ row_focus: row_index,
423
+ column_focus: col_index
424
+ });
425
+ } else {
426
+ ctx.luckysheet_select_save = [{
427
+ left: col_pre,
428
+ width: col - col_pre - 1,
429
+ top: row_pre,
430
+ height: row - row_pre - 1,
431
+ left_move: col_pre,
432
+ width_move: col - col_pre - 1,
433
+ top_move: row_pre,
434
+ height_move: row - row_pre - 1,
435
+ row: [row_index, row_index_ed],
436
+ column: [col_index, col_index_ed],
437
+ row_focus: row_index,
438
+ column_focus: col_index
439
+ }];
440
+ }
441
+ }
442
+ ctx.luckysheet_select_save = (0, _selection.normalizeSelection)(ctx, ctx.luckysheet_select_save);
443
+ if (ctx.hooks.afterCellMouseDown) {
444
+ setTimeout(function () {
445
+ var _a, _b, _c;
446
+ (_b = (_a = ctx.hooks).afterCellMouseDown) === null || _b === void 0 ? void 0 : _b.call(_a, (_c = flowdata[row_index]) === null || _c === void 0 ? void 0 : _c[col_index], {
447
+ row: row_index,
448
+ column: col_index,
449
+ startRow: row_pre,
450
+ startColumn: col_pre,
451
+ endRow: row,
452
+ endColumn: col
453
+ });
454
+ });
455
+ }
456
+ }
457
+ function handleCellAreaDoubleClick(ctx, globalCache, settings, e, container) {
458
+ var _a, _b;
459
+ var _c;
460
+ var flowdata = (0, _context.getFlowdata)(ctx);
461
+ if (!flowdata || ctx.formulaCache.functionlistMap[ctx.functionHint || ""]) return;
462
+ if (ctx.luckysheetCellUpdate.length > 0 && ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) {
463
+ return;
464
+ }
465
+ var allowEdit = (0, _utils.isAllowEdit)(ctx);
466
+ if (!allowEdit) return;
467
+ var rect = container.getBoundingClientRect();
468
+ var mouseX = e.pageX - rect.left;
469
+ var mouseY = e.pageY - rect.top;
470
+ var _x = mouseX + ctx.scrollLeft;
471
+ var _y = mouseY + ctx.scrollTop;
472
+ var freeze = (_c = globalCache.freezen) === null || _c === void 0 ? void 0 : _c[ctx.currentSheetId];
473
+ var _d = fixPositionOnFrozenCells(freeze, _x, _y, mouseX, mouseY),
474
+ x = _d.x,
475
+ y = _d.y;
476
+ var row_location = (0, _location.rowLocation)(y, ctx.visibledatarow);
477
+ var row_index = row_location[2];
478
+ var col_location = (0, _location.colLocation)(x, ctx.visibledatacolumn);
479
+ var col_index = col_location[2];
480
+ (0, _modules.removeOverShowComment)(ctx);
481
+ (0, _modules.removeEditingComment)(ctx, globalCache);
482
+ var index = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
483
+ var dataVerification = ctx.luckysheetfile[index].dataVerification;
484
+ if (dataVerification) {
485
+ var item = dataVerification["".concat(row_index, "_").concat(col_index)];
486
+ if (item && item.type === "checkbox") return;
487
+ }
488
+ var margeset = (0, _cell.mergeBorder)(ctx, flowdata, row_index, col_index);
489
+ if (margeset) {
490
+ _a = margeset.row, row_index = _a[2];
491
+ _b = margeset.column, col_index = _b[2];
492
+ }
493
+ var _e = ctx.luckysheet_select_save[0],
494
+ column_focus = _e.column_focus,
495
+ row_focus = _e.row_focus;
496
+ if (!_lodash.default.isNil(column_focus) && !_lodash.default.isNil(row_focus) && (column_focus !== col_index || row_focus !== row_index)) {
497
+ row_index = row_focus;
498
+ col_index = column_focus;
499
+ }
500
+ (0, _cell.luckysheetUpdateCell)(ctx, row_index, col_index);
501
+ }
502
+ function handleContextMenu(ctx, settings, e, workbookContainer, container, area) {
503
+ var _a, _b, _c, _d, _e, _f, _g;
504
+ if (!ctx.allowEdit) {
505
+ return;
506
+ }
507
+ var flowdata = (0, _context.getFlowdata)(ctx);
508
+ if (!flowdata) return;
509
+ var workbookRect = workbookContainer.getBoundingClientRect();
510
+ var cellContextMenu = settings.cellContextMenu;
511
+ if (_lodash.default.isEmpty(cellContextMenu)) {
512
+ return;
513
+ }
514
+ var x = e.pageX - workbookRect.left;
515
+ var y = e.pageY - workbookRect.top;
516
+ ctx.contextMenu = {
517
+ x: x,
518
+ y: y,
519
+ pageX: e.pageX,
520
+ pageY: e.pageY
521
+ };
522
+ e.preventDefault();
523
+ if (area === "cell") {
524
+ _lodash.default.set(ctx.contextMenu, "headerMenu", undefined);
525
+ var rect = container.getBoundingClientRect();
526
+ var mouseX = e.pageX - rect.left - window.scrollX;
527
+ var mouseY = e.pageY - rect.top - window.scrollY;
528
+ var _selected_x = mouseX + ctx.scrollLeft;
529
+ var _selected_y = mouseY + ctx.scrollTop;
530
+ var _h = fixPositionOnFrozenCells((_a = ctx.getRefs().globalCache.freezen) === null || _a === void 0 ? void 0 : _a[ctx.currentSheetId], _selected_x, _selected_y, mouseX, mouseY),
531
+ selected_x = _h.x,
532
+ selected_y = _h.y;
533
+ var row_location = (0, _location.rowLocation)(selected_y, ctx.visibledatarow);
534
+ var row = row_location[1];
535
+ var row_pre = row_location[0];
536
+ var row_index_1 = row_location[2];
537
+ var col_location = (0, _location.colLocation)(selected_x, ctx.visibledatacolumn);
538
+ var col = col_location[1];
539
+ var col_pre = col_location[0];
540
+ var col_index_1 = col_location[2];
541
+ var isInSelection = _lodash.default.some(ctx.luckysheet_select_save, function (obj_s) {
542
+ return obj_s.row != null && row_index_1 >= obj_s.row[0] && row_index_1 <= obj_s.row[1] && col_index_1 >= obj_s.column[0] && col_index_1 <= obj_s.column[1];
543
+ });
544
+ if (!isInSelection && (e.metaKey || e.ctrlKey)) {
545
+ if ((_b = flowdata[row_index_1][col_index_1]) === null || _b === void 0 ? void 0 : _b.mc) {
546
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, [col_index_1, col_index_1], [row_index_1, row_index_1], {
547
+ row_focus: row_index_1,
548
+ column_focus: col_index_1
549
+ }, row_pre, row, col_pre, col);
550
+ if (changeparam != null) {
551
+ var columnseleted = changeparam[0],
552
+ rowseleted = changeparam[1],
553
+ top_3 = changeparam[2],
554
+ height = changeparam[3],
555
+ left = changeparam[4],
556
+ width = changeparam[5];
557
+ (_c = ctx.luckysheet_select_save) === null || _c === void 0 ? void 0 : _c.push({
558
+ left: left,
559
+ width: width - 1,
560
+ top: top_3,
561
+ height: height - 1,
562
+ left_move: left,
563
+ width_move: width,
564
+ top_move: top_3,
565
+ height_move: height,
566
+ row: rowseleted,
567
+ column: columnseleted,
568
+ row_focus: rowseleted[0],
569
+ column_focus: columnseleted[0]
570
+ });
571
+ return;
572
+ }
573
+ }
574
+ (_d = ctx.luckysheet_select_save) === null || _d === void 0 ? void 0 : _d.push({
575
+ left: col_pre,
576
+ width: col - col_pre - 1,
577
+ top: row_pre,
578
+ height: row - row_pre - 1,
579
+ left_move: col_pre,
580
+ width_move: col - col_pre - 1,
581
+ top_move: row_pre,
582
+ height_move: row - row_pre - 1,
583
+ row: [row_index_1, row_index_1],
584
+ column: [col_index_1, col_index_1],
585
+ row_focus: row_index_1,
586
+ column_focus: col_index_1
587
+ });
588
+ return;
589
+ }
590
+ if (isInSelection) return;
591
+ var row_index_ed = row_index_1;
592
+ var col_index_ed = col_index_1;
593
+ if ((_e = flowdata[row_index_1][col_index_1]) === null || _e === void 0 ? void 0 : _e.mc) {
594
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, [col_index_1, col_index_1], [row_index_1, row_index_1], {
595
+ row_focus: row_index_1,
596
+ column_focus: col_index_1
597
+ }, row_pre, row, col_pre, col);
598
+ if (changeparam != null) {
599
+ var columnseleted = changeparam[0],
600
+ rowseleted = changeparam[1],
601
+ top_4 = changeparam[2],
602
+ height = changeparam[3],
603
+ left = changeparam[4],
604
+ width = changeparam[5];
605
+ ctx.luckysheet_select_save = [{
606
+ left: left,
607
+ width: width - 1,
608
+ top: top_4,
609
+ height: height - 1,
610
+ left_move: left,
611
+ width_move: width,
612
+ top_move: top_4,
613
+ height_move: height,
614
+ row: rowseleted,
615
+ column: columnseleted,
616
+ row_focus: rowseleted[0],
617
+ column_focus: columnseleted[0]
618
+ }];
619
+ return;
620
+ }
621
+ }
622
+ ctx.luckysheet_select_save = [{
623
+ left: col_pre,
624
+ width: col - col_pre - 1,
625
+ top: row_pre,
626
+ height: row - row_pre - 1,
627
+ left_move: col_pre,
628
+ width_move: col - col_pre - 1,
629
+ top_move: row_pre,
630
+ height_move: row - row_pre - 1,
631
+ row: [row_index_1, row_index_ed],
632
+ column: [col_index_1, col_index_ed],
633
+ row_focus: row_index_1,
634
+ column_focus: col_index_1
635
+ }];
636
+ } else if (area === "rowHeader") {
637
+ _lodash.default.set(ctx.contextMenu, "headerMenu", "row");
638
+ var rect = container.getBoundingClientRect();
639
+ var mouseY = e.pageY - rect.top - window.scrollY;
640
+ var _selected_y = mouseY + ctx.scrollTop;
641
+ var selected_y = fixPositionOnFrozenCells((_f = ctx.getRefs().globalCache.freezen) === null || _f === void 0 ? void 0 : _f[ctx.currentSheetId], 0, _selected_y, 0, mouseY).y;
642
+ var row_location = (0, _location.rowLocation)(selected_y, ctx.visibledatarow);
643
+ var row = row_location[1];
644
+ var row_pre = row_location[0];
645
+ var row_index_2 = row_location[2];
646
+ var isInSelection = _lodash.default.some(ctx.luckysheet_select_save, function (obj_s) {
647
+ return obj_s.row != null && row_index_2 >= obj_s.row[0] && row_index_2 <= obj_s.row[1] && !obj_s.column_select;
648
+ });
649
+ if (isInSelection) return;
650
+ var col_index = ctx.visibledatacolumn.length - 1;
651
+ var col = ctx.visibledatacolumn[col_index];
652
+ var col_pre = 0;
653
+ var top_5 = row_pre;
654
+ var height = row - row_pre - 1;
655
+ var rowseleted = [row_index_2, row_index_2];
656
+ ctx.luckysheet_select_save = [];
657
+ ctx.luckysheet_select_save.push({
658
+ left: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0],
659
+ width: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[1] - (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0] - 1,
660
+ top: top_5,
661
+ height: height,
662
+ left_move: col_pre,
663
+ width_move: col - col_pre - 1,
664
+ top_move: top_5,
665
+ height_move: height,
666
+ row: rowseleted,
667
+ column: [0, col_index],
668
+ row_focus: row_index_2,
669
+ column_focus: 0,
670
+ row_select: true
671
+ });
672
+ } else if (area === "columnHeader") {
673
+ _lodash.default.set(ctx.contextMenu, "headerMenu", "column");
674
+ var rect = container.getBoundingClientRect();
675
+ var mouseX = e.pageX - rect.left - window.scrollX;
676
+ var _selected_x = mouseX + ctx.scrollLeft;
677
+ var selected_x = fixPositionOnFrozenCells((_g = ctx.getRefs().globalCache.freezen) === null || _g === void 0 ? void 0 : _g[ctx.currentSheetId], _selected_x, 0, mouseX, 0).x;
678
+ var row_index = ctx.visibledatarow.length - 1;
679
+ var row = ctx.visibledatarow[row_index];
680
+ var row_pre = 0;
681
+ var col_location = (0, _location.colLocation)(selected_x, ctx.visibledatacolumn);
682
+ var col = col_location[1];
683
+ var col_pre = col_location[0];
684
+ var col_index_2 = col_location[2];
685
+ var isInSelection = _lodash.default.some(ctx.luckysheet_select_save, function (obj_s) {
686
+ return obj_s.row != null && col_index_2 >= obj_s.column[0] && col_index_2 <= obj_s.column[1] && !obj_s.row_select;
687
+ });
688
+ if (isInSelection) return;
689
+ var left = col_pre;
690
+ var width = col - col_pre - 1;
691
+ var columnseleted = [col_index_2, col_index_2];
692
+ ctx.luckysheet_select_save = [];
693
+ ctx.luckysheet_select_save.push({
694
+ left: left,
695
+ width: width,
696
+ top: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0],
697
+ height: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[1] - (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0] - 1,
698
+ left_move: left,
699
+ width_move: width,
700
+ top_move: row_pre,
701
+ height_move: row - row_pre - 1,
702
+ row: [0, row_index],
703
+ column: columnseleted,
704
+ row_focus: 0,
705
+ column_focus: col_index_2,
706
+ column_select: true
707
+ });
708
+ }
709
+ }
710
+ function mouseRender(ctx, globalCache, e, cellInput, scrollX, scrollY, container, fxInput) {
711
+ var _a, _b, _c, _d;
712
+ var rect = container.getBoundingClientRect();
713
+ if (ctx.luckysheet_scroll_status && !ctx.luckysheet_cols_change_size && !ctx.luckysheet_rows_change_size) {
714
+ var left = ctx.scrollLeft;
715
+ var top_6 = ctx.scrollTop;
716
+ var x = e.pageX - rect.left - window.scrollX;
717
+ var y = e.pageY - rect.top - window.scrollY;
718
+ var winH = rect.height - 20 * ctx.zoomRatio;
719
+ var winW = rect.width - 60 * ctx.zoomRatio;
720
+ if (y < 0 || y > winH) {
721
+ var stop_1;
722
+ if (y < 0) {
723
+ stop_1 = top_6 + y / 2;
724
+ } else {
725
+ stop_1 = top_6 + (y - winH) / 2;
726
+ }
727
+ scrollY.scrollTop = stop_1;
728
+ }
729
+ if (x < 0 || x > winW) {
730
+ var sleft = void 0;
731
+ if (x < 0) {
732
+ sleft = left + x / 2;
733
+ } else {
734
+ sleft = left + (x - winW) / 2;
735
+ }
736
+ scrollX.scrollLeft = sleft;
737
+ }
738
+ }
739
+ if ((_a = ctx.rangeDialog) === null || _a === void 0 ? void 0 : _a.singleSelect) {
740
+ return;
741
+ }
742
+ if (ctx.luckysheet_select_status) {
743
+ var mouseX = e.pageX - rect.left - window.scrollX;
744
+ var mouseY = e.pageY - rect.top - window.scrollY;
745
+ var _x = mouseX - ctx.rowHeaderWidth + ctx.scrollLeft;
746
+ var _y = mouseY - ctx.columnHeaderHeight + ctx.scrollTop;
747
+ var freeze = (_b = globalCache.freezen) === null || _b === void 0 ? void 0 : _b[ctx.currentSheetId];
748
+ var _e = fixPositionOnFrozenCells(freeze, _x, _y, mouseX - ctx.rowHeaderWidth, mouseY - ctx.columnHeaderHeight),
749
+ x = _e.x,
750
+ y = _e.y;
751
+ var row_location = (0, _location.rowLocation)(y, ctx.visibledatarow);
752
+ var row = row_location[1];
753
+ var row_pre = row_location[0];
754
+ var row_index = row_location[2];
755
+ var col_location = (0, _location.colLocation)(x, ctx.visibledatacolumn);
756
+ var col = col_location[1];
757
+ var col_pre = col_location[0];
758
+ var col_index = col_location[2];
759
+ if (!(0, _protection.checkProtectionSelectLockedOrUnLockedCells)(ctx, row_index, col_index, ctx.currentSheetId)) {
760
+ ctx.luckysheet_select_status = false;
761
+ return;
762
+ }
763
+ var last = _lodash.default.cloneDeep((_c = ctx.luckysheet_select_save) === null || _c === void 0 ? void 0 : _c[ctx.luckysheet_select_save.length - 1]);
764
+ if (!last || _lodash.default.isNil(last.left) || _lodash.default.isNil(last.top) || _lodash.default.isNil(last.height) || _lodash.default.isNil(last.width) || _lodash.default.isNil(last.row_focus) || _lodash.default.isNil(last.column_focus)) {
765
+ return;
766
+ }
767
+ var top_7 = 0;
768
+ var height = 0;
769
+ var rowseleted = [];
770
+ if (last.top > row_pre) {
771
+ top_7 = row_pre;
772
+ height = last.top + last.height - row_pre;
773
+ if (last.row[1] > last.row_focus) {
774
+ last.row[1] = last.row_focus;
775
+ }
776
+ rowseleted = [row_index, last.row[1]];
777
+ } else if (last.top === row_pre) {
778
+ top_7 = row_pre;
779
+ height = last.top + last.height - row_pre;
780
+ rowseleted = [row_index, last.row[0]];
781
+ } else {
782
+ top_7 = last.top;
783
+ height = row - last.top - 1;
784
+ if (last.row[0] < last.row_focus) {
785
+ last.row[0] = last.row_focus;
786
+ }
787
+ rowseleted = [last.row[0], row_index];
788
+ }
789
+ var left = 0;
790
+ var width = 0;
791
+ var columnseleted = [];
792
+ if (last.left > col_pre) {
793
+ left = col_pre;
794
+ width = last.left + last.width - col_pre;
795
+ if (last.column[1] > last.column_focus) {
796
+ last.column[1] = last.column_focus;
797
+ }
798
+ columnseleted = [col_index, last.column[1]];
799
+ } else if (last.left === col_pre) {
800
+ left = col_pre;
801
+ width = last.left + last.width - col_pre;
802
+ columnseleted = [col_index, last.column[0]];
803
+ } else {
804
+ left = last.left;
805
+ width = col - last.left - 1;
806
+ if (last.column[0] < last.column_focus) {
807
+ last.column[0] = last.column_focus;
808
+ }
809
+ columnseleted = [last.column[0], col_index];
810
+ }
811
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, columnseleted, rowseleted, last, top_7, height, left, width);
812
+ if (changeparam != null) {
813
+ columnseleted = changeparam[0], rowseleted = changeparam[1], top_7 = changeparam[2], height = changeparam[3], left = changeparam[4], width = changeparam[5];
814
+ }
815
+ last.row = rowseleted;
816
+ last.column = columnseleted;
817
+ last.left_move = left;
818
+ last.width_move = width;
819
+ last.top_move = top_7;
820
+ last.height_move = height;
821
+ var isMaxColumn = ctx.luckysheet_select_save[ctx.luckysheet_select_save.length - 1].column;
822
+ var colMax = ctx.visibledatacolumn.length - 1;
823
+ if (isMaxColumn[0] === 0 && isMaxColumn[1] === colMax) {
824
+ last.column[1] = colMax;
825
+ last.width_move = ctx.visibledatacolumn[colMax] - 1;
826
+ }
827
+ var isMaxRow = ctx.luckysheet_select_save[ctx.luckysheet_select_save.length - 1].row;
828
+ var rowMax = ctx.visibledatarow.length - 1;
829
+ if (isMaxRow[0] === 0 && isMaxRow[1] === rowMax) {
830
+ last.row[1] = rowMax;
831
+ last.height_move = ctx.visibledatarow[rowMax] - 1;
832
+ }
833
+ ctx.luckysheet_select_save[ctx.luckysheet_select_save.length - 1] = last;
834
+ (0, _freeze.scrollToFrozenRowCol)(ctx, (_d = globalCache.freezen) === null || _d === void 0 ? void 0 : _d[ctx.currentSheetId]);
835
+ } else if (ctx.formulaCache.rangestart) {
836
+ (0, _modules.rangeDrag)(ctx, e, cellInput, scrollX.scrollLeft, scrollY.scrollTop, container, fxInput);
837
+ } else if (ctx.formulaCache.rangedrag_row_start) {
838
+ (0, _formula.rangeDragRow)(ctx, e, cellInput, scrollX.scrollLeft, scrollY.scrollTop, container, fxInput);
839
+ } else if (ctx.formulaCache.rangedrag_column_start) {
840
+ (0, _formula.rangeDragColumn)(ctx, e, cellInput, scrollX.scrollLeft, scrollY.scrollTop, container, fxInput);
841
+ } else if (ctx.luckysheet_rows_selected_status) {} else if (ctx.luckysheet_cols_selected_status) {} else if (ctx.luckysheet_cell_selected_move) {} else if (ctx.luckysheet_cell_selected_extend) {
842
+ (0, _dropCell.onDropCellSelect)(ctx, e, scrollX, scrollY, container);
843
+ } else if (ctx.luckysheet_cols_change_size) {
844
+ var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollX.scrollLeft - window.scrollX;
845
+ if (x < rect.width + ctx.scrollLeft - 100) {
846
+ var changeSizeLine = container.querySelector(".fortune-change-size-line");
847
+ if (changeSizeLine) {
848
+ changeSizeLine.style.left = "".concat(x, "px");
849
+ }
850
+ var changeSizeCol = container.querySelector(".fortune-cols-change-size");
851
+ if (changeSizeCol) {
852
+ changeSizeCol.style.left = "".concat(x - 2, "px");
853
+ }
854
+ }
855
+ } else if (ctx.luckysheet_rows_change_size) {
856
+ var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollY.scrollTop - window.scrollY;
857
+ if (y < rect.height + ctx.scrollTop - 20) {
858
+ var changeSizeLine = container.querySelector(".fortune-change-size-line");
859
+ if (changeSizeLine) {
860
+ changeSizeLine.style.top = "".concat(y, "px");
861
+ }
862
+ var changeSizeRow = container.querySelector(".fortune-rows-change-size");
863
+ if (changeSizeRow) {
864
+ changeSizeRow.style.top = "".concat(y, "px");
865
+ }
866
+ }
867
+ } else if (ctx.luckysheet_cols_freeze_drag) {
868
+ var x = e.pageX - rect.left - ctx.rowHeaderWidth + ctx.scrollLeft - window.scrollX;
869
+ var _f = (0, _location.colLocation)(x, ctx.visibledatacolumn),
870
+ col_pre = _f[0],
871
+ col_curr = _f[1];
872
+ var col = x > (col_pre + col_curr) / 2 ? col_curr : col_pre;
873
+ if (x < rect.width + ctx.scrollLeft - 100) {
874
+ var freezeLine = container.querySelector(".fortune-freeze-drag-line");
875
+ if (freezeLine) {
876
+ freezeLine.style.left = "".concat(Math.max(0, col - 2), "px");
877
+ }
878
+ var freezeHandle = container.querySelector(".fortune-cols-freeze-handle");
879
+ if (freezeHandle) {
880
+ freezeHandle.style.left = "".concat(x, "px");
881
+ }
882
+ var changeSizeLine = container.querySelector(".fortune-change-size-line");
883
+ if (changeSizeLine) {
884
+ changeSizeLine.style.left = "".concat(x, "px");
885
+ }
886
+ }
887
+ } else if (ctx.luckysheet_rows_freeze_drag) {
888
+ var y = e.pageY - rect.top - ctx.columnHeaderHeight + ctx.scrollTop - window.scrollY;
889
+ var _g = (0, _location.rowLocation)(y, ctx.visibledatarow),
890
+ row_pre = _g[0],
891
+ row_curr = _g[1];
892
+ var row = y > (row_curr + row_pre) / 2 ? row_curr : row_pre;
893
+ if (y < rect.height + ctx.scrollTop - 20) {
894
+ var freezeLine = container.querySelector(".fortune-freeze-drag-line");
895
+ if (freezeLine) {
896
+ freezeLine.style.top = "".concat(Math.max(0, row - 2), "px");
897
+ }
898
+ var freezeHandle = container.querySelector(".fortune-rows-freeze-handle");
899
+ if (freezeHandle) {
900
+ freezeHandle.style.top = "".concat(y, "px");
901
+ }
902
+ var changeSizeLine = container.querySelector(".fortune-change-size-line");
903
+ if (changeSizeLine) {
904
+ changeSizeLine.style.top = "".concat(y, "px");
905
+ }
906
+ }
907
+ }
908
+ }
909
+ function handleOverlayMouseMove(ctx, globalCache, e, cellInput, scrollX, scrollY, container, fxInput) {
910
+ if ((0, _modules.onCommentBoxResize)(ctx, globalCache, e)) return;
911
+ if ((0, _modules.onCommentBoxMove)(ctx, globalCache, e)) return;
912
+ if ((0, _modules.onImageMove)(ctx, globalCache, e)) return;
913
+ if ((0, _modules.onImageResize)(ctx, globalCache, e)) return;
914
+ (0, _modules.onCellsMove)(ctx, globalCache, e, scrollX, scrollY, container);
915
+ (0, _modules.overShowComment)(ctx, e, scrollX, scrollY, container);
916
+ (0, _searchReplace.onSearchDialogMove)(globalCache, e);
917
+ (0, _hyperlink.onRangeSelectionModalMove)(globalCache, e);
918
+ if (!!ctx.luckysheet_scroll_status || !!ctx.luckysheet_select_status || !!ctx.luckysheet_rows_selected_status || !!ctx.luckysheet_cols_selected_status || !!ctx.luckysheet_cell_selected_move || !!ctx.luckysheet_cell_selected_extend || !!ctx.luckysheet_cols_change_size || !!ctx.luckysheet_rows_change_size) {
919
+ mouseRender(ctx, globalCache, e, cellInput, scrollX, scrollY, container, fxInput);
920
+ }
921
+ }
922
+ function handleOverlayMouseUp(ctx, globalCache, settings, e, scrollbarX, scrollbarY, container, cellInput, fxInput) {
923
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
924
+ var rect = container.getBoundingClientRect();
925
+ (0, _modules.onImageMoveEnd)(ctx, globalCache);
926
+ (0, _modules.onImageResizeEnd)(ctx, globalCache);
927
+ (0, _modules.onIframeMoveEnd)(ctx, globalCache);
928
+ (0, _modules.onIframeResizeEnd)(ctx, globalCache);
929
+ (0, _modules.onCommentBoxMoveEnd)(ctx, globalCache);
930
+ (0, _modules.onCommentBoxResizeEnd)(ctx, globalCache);
931
+ (0, _modules.onFormulaRangeDragEnd)(ctx);
932
+ (0, _searchReplace.onSearchDialogMoveEnd)(globalCache);
933
+ (0, _hyperlink.onRangeSelectionModalMoveEnd)(globalCache);
934
+ (0, _modules.onCellsMoveEnd)(ctx, globalCache, e, scrollbarX, scrollbarY, container);
935
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start) {
936
+ if (((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.id) === "luckysheet-functionbox-cell") {
937
+ (0, _formula.handleFormulaInput)(ctx, cellInput, fxInput, 0, undefined, false);
938
+ } else {
939
+ (0, _formula.handleFormulaInput)(ctx, fxInput, cellInput, 0, undefined, false);
940
+ }
941
+ }
942
+ if (ctx.luckysheet_select_status) {
943
+ if (ctx.luckysheetPaintModelOn) {
944
+ (0, _selection.pasteHandlerOfPaintModel)(ctx, ctx.luckysheet_copy_save);
945
+ if (ctx.luckysheetPaintSingle) {
946
+ (0, _modules.cancelPaintModel)(ctx);
947
+ }
948
+ }
949
+ }
950
+ ctx.luckysheet_select_status = false;
951
+ ctx.luckysheet_scroll_status = false;
952
+ ctx.luckysheet_rows_selected_status = false;
953
+ ctx.luckysheet_cols_selected_status = false;
954
+ ctx.luckysheet_model_move_state = false;
955
+ if (ctx.luckysheet_rows_change_size) {
956
+ ctx.luckysheet_rows_change_size = false;
957
+ var scrollTop = ctx.scrollTop;
958
+ var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop - window.scrollY;
959
+ var winH = rect.height;
960
+ var delta = y + 3 - ctx.luckysheet_rows_change_size_start[0];
961
+ if (y >= winH - 20 + scrollTop) {
962
+ delta = winH - 20 - ctx.luckysheet_rows_change_size_start[0] + scrollTop;
963
+ }
964
+ var cfg_1 = ctx.config;
965
+ if (cfg_1.rowlen == null) {
966
+ cfg_1.rowlen = {};
967
+ }
968
+ if (cfg_1.customHeight == null) {
969
+ cfg_1.customHeight = {};
970
+ }
971
+ var size_1 = ctx.defaultrowlen;
972
+ if (ctx.visibledatarow[ctx.luckysheet_rows_change_size_start[1]] != null) {
973
+ size_1 = ctx.visibledatarow[ctx.luckysheet_rows_change_size_start[1]] - (ctx.visibledatarow[ctx.luckysheet_rows_change_size_start[1] - 1] || 0);
974
+ }
975
+ size_1 += delta;
976
+ if (size_1 < 10) {
977
+ size_1 = 10;
978
+ }
979
+ cfg_1.customHeight[ctx.luckysheet_rows_change_size_start[1]] = 1;
980
+ var changeRowIndex_1 = ctx.luckysheet_rows_change_size_start[1];
981
+ var changeRowSelected_1 = false;
982
+ if (((_c = (_b = ctx.luckysheet_select_save) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0) > 0) {
983
+ (_e = (_d = ctx.luckysheet_select_save) === null || _d === void 0 ? void 0 : _d.filter(function (select) {
984
+ return select.row_select;
985
+ })) === null || _e === void 0 ? void 0 : _e.some(function (select) {
986
+ if (changeRowIndex_1 >= select.row[0] && changeRowIndex_1 <= select.row[1]) {
987
+ changeRowSelected_1 = true;
988
+ }
989
+ return changeRowSelected_1;
990
+ });
991
+ }
992
+ if (changeRowSelected_1) {
993
+ cfg_1.rowlen || (cfg_1.rowlen = {});
994
+ (_g = (_f = ctx.luckysheet_select_save) === null || _f === void 0 ? void 0 : _f.filter(function (select) {
995
+ return select.row_select;
996
+ })) === null || _g === void 0 ? void 0 : _g.forEach(function (select) {
997
+ for (var r = select.row[0]; r <= select.row[1]; r += 1) {
998
+ cfg_1.rowlen[r] = Math.ceil(size_1 / ctx.zoomRatio);
999
+ }
1000
+ });
1001
+ } else {
1002
+ cfg_1.rowlen[ctx.luckysheet_rows_change_size_start[1]] = Math.ceil(size_1 / ctx.zoomRatio);
1003
+ }
1004
+ ctx.config = cfg_1;
1005
+ var idx = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1006
+ if (idx == null) return;
1007
+ ctx.luckysheetfile[idx].config = ctx.config;
1008
+ }
1009
+ if (ctx.luckysheet_cols_change_size) {
1010
+ ctx.luckysheet_cols_change_size = false;
1011
+ var scrollLeft = ctx.scrollLeft;
1012
+ var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft - window.scrollX;
1013
+ var winW = rect.width;
1014
+ var delta = x + 3 - ctx.luckysheet_cols_change_size_start[0];
1015
+ if (x >= winW - 100 + scrollLeft) {
1016
+ delta = winW - 100 - ctx.luckysheet_cols_change_size_start[0] + scrollLeft;
1017
+ }
1018
+ delta /= ctx.zoomRatio;
1019
+ var cfg_2 = ctx.config;
1020
+ if (cfg_2.columnlen == null) {
1021
+ cfg_2.columnlen = {};
1022
+ }
1023
+ if (cfg_2.customWidth == null) {
1024
+ cfg_2.customWidth = {};
1025
+ }
1026
+ var firstcolumnlen = ctx.defaultcollen;
1027
+ if (ctx.config.columnlen != null && ctx.config.columnlen[ctx.luckysheet_cols_change_size_start[1]] != null) {
1028
+ firstcolumnlen = ctx.config.columnlen[ctx.luckysheet_cols_change_size_start[1]];
1029
+ }
1030
+ var size_2 = (cfg_2.columnlen[ctx.luckysheet_cols_change_size_start[1]] || ctx.defaultcollen) + delta;
1031
+ if (Math.abs(size_2 - firstcolumnlen) < 3) {
1032
+ return;
1033
+ }
1034
+ if (size_2 < 10) {
1035
+ size_2 = 10;
1036
+ }
1037
+ cfg_2.customWidth[ctx.luckysheet_cols_change_size_start[1]] = 1;
1038
+ var changeColumnIndex_1 = ctx.luckysheet_cols_change_size_start[1];
1039
+ var changeColumnSelected_1 = false;
1040
+ if (((_j = (_h = ctx.luckysheet_select_save) === null || _h === void 0 ? void 0 : _h.length) !== null && _j !== void 0 ? _j : 0) > 0) {
1041
+ (_l = (_k = ctx.luckysheet_select_save) === null || _k === void 0 ? void 0 : _k.filter(function (select) {
1042
+ return select.column_select;
1043
+ })) === null || _l === void 0 ? void 0 : _l.some(function (select) {
1044
+ if (changeColumnIndex_1 >= select.column[0] && changeColumnIndex_1 <= select.column[1]) {
1045
+ changeColumnSelected_1 = true;
1046
+ }
1047
+ return changeColumnSelected_1;
1048
+ });
1049
+ }
1050
+ if (changeColumnSelected_1) {
1051
+ cfg_2.columnlen || (cfg_2.columnlen = {});
1052
+ (_o = (_m = ctx.luckysheet_select_save) === null || _m === void 0 ? void 0 : _m.filter(function (select) {
1053
+ return select.column_select;
1054
+ })) === null || _o === void 0 ? void 0 : _o.forEach(function (select) {
1055
+ for (var r = select.column[0]; r <= select.column[1]; r += 1) {
1056
+ cfg_2.columnlen[r] = Math.ceil(size_2 / ctx.zoomRatio);
1057
+ }
1058
+ });
1059
+ } else {
1060
+ cfg_2.columnlen[ctx.luckysheet_cols_change_size_start[1]] = Math.ceil(size_2 / ctx.zoomRatio);
1061
+ }
1062
+ ctx.config = cfg_2;
1063
+ var idx = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1064
+ if (idx == null) return;
1065
+ ctx.luckysheetfile[idx].config = ctx.config;
1066
+ }
1067
+ if (ctx.luckysheet_cols_freeze_drag) {
1068
+ ctx.luckysheet_cols_freeze_drag = false;
1069
+ var scrollLeft = ctx.scrollLeft;
1070
+ var x = e.pageX - rect.left - ctx.rowHeaderWidth + scrollLeft - window.scrollX;
1071
+ var _p = (0, _location.colLocation)(x, ctx.visibledatacolumn),
1072
+ col_pre = _p[0],
1073
+ col_curr = _p[1],
1074
+ col_index_curr = _p[2];
1075
+ var col_index = x > (col_curr + col_pre) / 2 ? col_index_curr : col_index_curr - 1;
1076
+ var idx = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1077
+ if (idx == null) return;
1078
+ if (col_index < 0) {
1079
+ var frozen = ctx.luckysheetfile[idx].frozen;
1080
+ if (frozen) {
1081
+ if (frozen.type === "rangeBoth" || frozen.type === "both") {
1082
+ frozen.type = "rangeRow";
1083
+ } else if (frozen.type === "column" || frozen.type === "rangeColumn") {
1084
+ delete ctx.luckysheetfile[idx].frozen;
1085
+ }
1086
+ }
1087
+ var freezeHandle_1 = container.querySelector(".fortune-cols-freeze-handle");
1088
+ if (freezeHandle_1) {
1089
+ freezeHandle_1.style.left = "".concat(ctx.scrollLeft, "px");
1090
+ }
1091
+ } else if (!ctx.luckysheetfile[idx].frozen) {
1092
+ ctx.luckysheetfile[idx].frozen = {
1093
+ type: "rangeColumn",
1094
+ range: {
1095
+ column_focus: col_index,
1096
+ row_focus: 0
1097
+ }
1098
+ };
1099
+ } else {
1100
+ var frozen = ctx.luckysheetfile[idx].frozen;
1101
+ if (!frozen.range) {
1102
+ frozen.range = {
1103
+ column_focus: col_index,
1104
+ row_focus: 0
1105
+ };
1106
+ } else {
1107
+ frozen.range.column_focus = col_index;
1108
+ }
1109
+ if ((frozen === null || frozen === void 0 ? void 0 : frozen.type) === "rangeRow" || (frozen === null || frozen === void 0 ? void 0 : frozen.type) === "row") {
1110
+ frozen.type = "rangeBoth";
1111
+ }
1112
+ }
1113
+ var freezeHandle = container.querySelector(".fortune-cols-freeze-handle");
1114
+ if (freezeHandle) {
1115
+ freezeHandle.style.left = "".concat((0, _freeze.getFrozenHandleLeft)(ctx), "px");
1116
+ }
1117
+ }
1118
+ if (ctx.luckysheet_rows_freeze_drag) {
1119
+ ctx.luckysheet_rows_freeze_drag = false;
1120
+ var scrollTop = ctx.scrollTop;
1121
+ var y = e.pageY - rect.top - ctx.columnHeaderHeight + scrollTop - window.scrollY;
1122
+ var _q = (0, _location.rowLocation)(y, ctx.visibledatarow),
1123
+ row_pre = _q[0],
1124
+ row_curr = _q[1],
1125
+ row_index_curr = _q[2];
1126
+ var row_index = y > (row_curr + row_pre) / 2 ? row_index_curr : row_index_curr - 1;
1127
+ var idx = (0, _utils.getSheetIndex)(ctx, ctx.currentSheetId);
1128
+ if (idx == null) return;
1129
+ if (row_index < 0) {
1130
+ var frozen = ctx.luckysheetfile[idx].frozen;
1131
+ if (frozen) {
1132
+ if (frozen.type === "rangeBoth" || frozen.type === "both") {
1133
+ frozen.type = "rangeColumn";
1134
+ } else if (frozen.type === "row" || frozen.type === "rangeRow") {
1135
+ delete ctx.luckysheetfile[idx].frozen;
1136
+ }
1137
+ }
1138
+ } else if (!ctx.luckysheetfile[idx].frozen) {
1139
+ ctx.luckysheetfile[idx].frozen = {
1140
+ type: "rangeRow",
1141
+ range: {
1142
+ column_focus: 0,
1143
+ row_focus: row_index
1144
+ }
1145
+ };
1146
+ } else {
1147
+ var frozen = ctx.luckysheetfile[idx].frozen;
1148
+ if (!frozen.range) {
1149
+ frozen.range = {
1150
+ column_focus: 0,
1151
+ row_focus: row_index
1152
+ };
1153
+ } else {
1154
+ frozen.range.row_focus = row_index;
1155
+ }
1156
+ if ((frozen === null || frozen === void 0 ? void 0 : frozen.type) === "rangeColumn" || (frozen === null || frozen === void 0 ? void 0 : frozen.type) === "column") {
1157
+ frozen.type = "rangeBoth";
1158
+ }
1159
+ }
1160
+ var freezeHandle = container.querySelector(".fortune-rows-freeze-handle");
1161
+ if (freezeHandle) {
1162
+ freezeHandle.style.top = "".concat((0, _freeze.getFrozenHandleTop)(ctx), "px");
1163
+ }
1164
+ }
1165
+ if (ctx.luckysheet_cell_selected_extend) {
1166
+ (0, _dropCell.onDropCellSelectEnd)(ctx, e, container);
1167
+ }
1168
+ }
1169
+ function handleRowHeaderMouseDown(ctx, globalCache, e, container, cellInput, fxInput) {
1170
+ var _a, _b;
1171
+ var _c, _d, _e, _f, _g, _h, _j, _k;
1172
+ if (!(0, _protection.checkProtectionAllSelected)(ctx, ctx.currentSheetId)) {
1173
+ return;
1174
+ }
1175
+ (0, _modules.removeEditingComment)(ctx, globalCache);
1176
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
1177
+ var rect = container.getBoundingClientRect();
1178
+ var mouseY = e.pageY - rect.top - window.scrollY;
1179
+ var _y = mouseY + ctx.scrollTop;
1180
+ var freeze = (_c = globalCache.freezen) === null || _c === void 0 ? void 0 : _c[ctx.currentSheetId];
1181
+ var y = fixPositionOnFrozenCells(freeze, 0, _y, 0, mouseY).y;
1182
+ var row_location = (0, _location.rowLocation)(y, ctx.visibledatarow);
1183
+ var row = row_location[1];
1184
+ var row_pre = row_location[0];
1185
+ var row_index = row_location[2];
1186
+ var col_index = ctx.visibledatacolumn.length - 1;
1187
+ var col = ctx.visibledatacolumn[col_index];
1188
+ var col_pre = 0;
1189
+ if (e.button === 2) {
1190
+ var flowdata_1 = (0, _context.getFlowdata)(ctx);
1191
+ var isInSelection = _lodash.default.some(ctx.luckysheet_select_save, function (obj_s) {
1192
+ var _a, _b;
1193
+ return obj_s.row != null && row_index >= obj_s.row[0] && row_index <= obj_s.row[1] && obj_s.column[0] === 0 && obj_s.column[1] === ((_b = (_a = flowdata_1 === null || flowdata_1 === void 0 ? void 0 : flowdata_1[0]) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) - 1;
1194
+ });
1195
+ if (isInSelection) return;
1196
+ }
1197
+ var top = row_pre;
1198
+ var height = row - row_pre - 1;
1199
+ var rowseleted = [row_index, row_index];
1200
+ ctx.luckysheet_scroll_status = true;
1201
+ if (!_lodash.default.isEmpty(ctx.luckysheetCellUpdate)) {
1202
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) {
1203
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, [0, col_index], rowseleted, {
1204
+ row_focus: row_index,
1205
+ column_focus: 0
1206
+ }, top, height, col_pre, col);
1207
+ if (changeparam != null) {
1208
+ _a = [changeparam[1], changeparam[2], changeparam[3]], rowseleted = _a[0], top = _a[1], height = _a[2];
1209
+ }
1210
+ if (e.shiftKey) {
1211
+ var last = ctx.formulaCache.func_selectedrange;
1212
+ top = 0;
1213
+ height = 0;
1214
+ rowseleted = [];
1215
+ if (last == null || last.top == null || last.height == null || last.row == null || last.row_focus == null) return;
1216
+ if (last.top > row_pre) {
1217
+ top = row_pre;
1218
+ height = last.top + last.height - row_pre;
1219
+ if (last.row[1] > last.row_focus) {
1220
+ last.row[1] = last.row_focus;
1221
+ }
1222
+ rowseleted = [row_index, last.row[1]];
1223
+ } else if (last.top === row_pre) {
1224
+ top = row_pre;
1225
+ height = last.top + last.height - row_pre;
1226
+ rowseleted = [row_index, last.row[0]];
1227
+ } else {
1228
+ top = last.top;
1229
+ height = row - last.top - 1;
1230
+ if (last.row[0] < last.row_focus) {
1231
+ last.row[0] = last.row_focus;
1232
+ }
1233
+ rowseleted = [last.row[0], row_index];
1234
+ }
1235
+ changeparam = (0, _cell.mergeMoveMain)(ctx, [0, col_index], rowseleted, {
1236
+ row_focus: row_index,
1237
+ column_focus: 0
1238
+ }, top, height, col_pre, col);
1239
+ if (changeparam != null) {
1240
+ _b = [changeparam[1], changeparam[2], changeparam[3]], rowseleted = _b[0], top = _b[1], height = _b[2];
1241
+ }
1242
+ last.row = rowseleted;
1243
+ last.top_move = top;
1244
+ last.height_move = height;
1245
+ ctx.formulaCache.func_selectedrange = last;
1246
+ } else if (e.ctrlKey && ((_d = _lodash.default.last(cellInput.querySelectorAll("span"))) === null || _d === void 0 ? void 0 : _d.innerText) !== ",") {
1247
+ var vText = "".concat(cellInput.innerText, ",");
1248
+ if (vText.length > 0 && vText.substring(0, 1) === "=") {
1249
+ vText = (0, _modules.functionHTMLGenerate)(vText);
1250
+ if (window.getSelection) {
1251
+ var currSelection = window.getSelection();
1252
+ if (currSelection == null) return;
1253
+ ctx.formulaCache.functionRangeIndex = [_lodash.default.indexOf((_g = (_f = (_e = currSelection.anchorNode) === null || _e === void 0 ? void 0 : _e.parentNode) === null || _f === void 0 ? void 0 : _f.parentNode) === null || _g === void 0 ? void 0 : _g.childNodes, (_h = currSelection.anchorNode) === null || _h === void 0 ? void 0 : _h.parentNode), currSelection.anchorOffset];
1254
+ } else {
1255
+ var textRange = document.selection.createRange();
1256
+ ctx.formulaCache.functionRangeIndex = textRange;
1257
+ }
1258
+ cellInput.innerHTML = vText;
1259
+ (0, _cell.cancelFunctionrangeSelected)(ctx);
1260
+ (0, _modules.createRangeHightlight)(ctx, vText);
1261
+ }
1262
+ ctx.formulaCache.rangestart = false;
1263
+ ctx.formulaCache.rangedrag_column_start = false;
1264
+ ctx.formulaCache.rangedrag_row_start = false;
1265
+ if (fxInput) fxInput.innerHTML = vText;
1266
+ (0, _modules.rangeHightlightselected)(ctx, cellInput);
1267
+ (0, _modules.israngeseleciton)(ctx);
1268
+ ctx.formulaCache.func_selectedrange = {
1269
+ left: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0],
1270
+ width: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[1] - (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0] - 1,
1271
+ top: top,
1272
+ height: height,
1273
+ left_move: col_pre,
1274
+ width_move: col - col_pre - 1,
1275
+ top_move: top,
1276
+ height_move: height,
1277
+ row: rowseleted,
1278
+ column: [0, col_index],
1279
+ row_focus: row_index,
1280
+ column_focus: 0
1281
+ };
1282
+ } else {
1283
+ ctx.formulaCache.func_selectedrange = {
1284
+ left: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0],
1285
+ width: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[1] - (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0] - 1,
1286
+ top: top,
1287
+ height: height,
1288
+ left_move: col_pre,
1289
+ width_move: col - col_pre - 1,
1290
+ top_move: top,
1291
+ height_move: height,
1292
+ row: rowseleted,
1293
+ column: [0, col_index],
1294
+ row_focus: row_index,
1295
+ column_focus: 0
1296
+ };
1297
+ }
1298
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) {
1299
+ (0, _modules.rangeSetValue)(ctx, cellInput, {
1300
+ row: rowseleted,
1301
+ column: [null, null]
1302
+ }, fxInput);
1303
+ }
1304
+ ctx.formulaCache.rangedrag_row_start = true;
1305
+ ctx.formulaCache.rangestart = false;
1306
+ ctx.formulaCache.rangedrag_column_start = false;
1307
+ ctx.formulaCache.selectingRangeIndex = ctx.formulaCache.rangechangeindex;
1308
+ if (ctx.formulaCache.rangechangeindex > ctx.formulaRangeHighlight.length) {
1309
+ (0, _modules.createRangeHightlight)(ctx, cellInput.innerHTML, ctx.formulaCache.rangechangeindex);
1310
+ }
1311
+ (0, _modules.createFormulaRangeSelect)(ctx, {
1312
+ rangeIndex: ctx.formulaCache.rangechangeindex || 0,
1313
+ left: col_pre,
1314
+ top: top,
1315
+ width: col - col_pre - 1,
1316
+ height: height
1317
+ });
1318
+ e.preventDefault();
1319
+ return;
1320
+ }
1321
+ (0, _cell.updateCell)(ctx, ctx.luckysheetCellUpdate[0], ctx.luckysheetCellUpdate[1], cellInput);
1322
+ ctx.luckysheet_rows_selected_status = true;
1323
+ } else {
1324
+ ctx.luckysheet_rows_selected_status = true;
1325
+ }
1326
+ if (ctx.luckysheet_rows_selected_status) {
1327
+ if (e.shiftKey) {
1328
+ var last = _lodash.default.cloneDeep((_j = ctx.luckysheet_select_save) === null || _j === void 0 ? void 0 : _j[ctx.luckysheet_select_save.length - 1]);
1329
+ if (!last || _lodash.default.isNil(last.top) || _lodash.default.isNil(last.height) || _lodash.default.isNil(last.row_focus)) {
1330
+ return;
1331
+ }
1332
+ var _top = 0;
1333
+ var _height = 0;
1334
+ var _rowseleted = [];
1335
+ if (last.top > row_pre) {
1336
+ _top = row_pre;
1337
+ _height = last.top + last.height - row_pre;
1338
+ if (last.row[1] > last.row_focus) {
1339
+ last.row[1] = last.row_focus;
1340
+ }
1341
+ _rowseleted = [row_index, last.row[1]];
1342
+ } else if (last.top === row_pre) {
1343
+ _top = row_pre;
1344
+ _height = last.top + last.height - row_pre;
1345
+ _rowseleted = [row_index, last.row[0]];
1346
+ } else {
1347
+ _top = last.top;
1348
+ _height = row - last.top - 1;
1349
+ if (last.row[0] < last.row_focus) {
1350
+ last.row[0] = last.row_focus;
1351
+ }
1352
+ _rowseleted = [last.row[0], row_index];
1353
+ }
1354
+ last.row = _rowseleted;
1355
+ last.top_move = _top;
1356
+ last.height_move = _height;
1357
+ ctx.luckysheet_select_save[ctx.luckysheet_select_save.length - 1] = last;
1358
+ } else if (e.ctrlKey || e.metaKey) {
1359
+ (_k = ctx.luckysheet_select_save) === null || _k === void 0 ? void 0 : _k.push({
1360
+ left: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0],
1361
+ width: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[1] - (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0] - 1,
1362
+ top: top,
1363
+ height: height,
1364
+ left_move: col_pre,
1365
+ width_move: col - col_pre - 1,
1366
+ top_move: top,
1367
+ height_move: height,
1368
+ row: rowseleted,
1369
+ column: [0, col_index],
1370
+ row_focus: row_index,
1371
+ column_focus: 0,
1372
+ row_select: true
1373
+ });
1374
+ } else {
1375
+ ctx.luckysheet_select_save = [];
1376
+ ctx.luckysheet_select_save.push({
1377
+ left: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0],
1378
+ width: (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[1] - (0, _location.colLocationByIndex)(0, ctx.visibledatacolumn)[0] - 1,
1379
+ top: top,
1380
+ height: height,
1381
+ left_move: col_pre,
1382
+ width_move: col - col_pre - 1,
1383
+ top_move: top,
1384
+ height_move: height,
1385
+ row: rowseleted,
1386
+ column: [0, col_index],
1387
+ row_focus: row_index,
1388
+ column_focus: 0,
1389
+ row_select: true
1390
+ });
1391
+ ctx.luckysheet_select_status = true;
1392
+ ctx.luckysheet_scroll_status = true;
1393
+ }
1394
+ }
1395
+ }
1396
+ function handleColumnHeaderMouseDown(ctx, globalCache, e, container, cellInput, fxInput) {
1397
+ var _a, _b;
1398
+ var _c, _d, _e, _f, _g, _h, _j, _k;
1399
+ if (!(0, _protection.checkProtectionAllSelected)(ctx, ctx.currentSheetId)) {
1400
+ return;
1401
+ }
1402
+ (0, _modules.removeEditingComment)(ctx, globalCache);
1403
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
1404
+ var rect = container.getBoundingClientRect();
1405
+ var mouseX = e.pageX - rect.left - window.scrollX;
1406
+ var _x = mouseX + ctx.scrollLeft;
1407
+ var freeze = (_c = globalCache.freezen) === null || _c === void 0 ? void 0 : _c[ctx.currentSheetId];
1408
+ var x = fixPositionOnFrozenCells(freeze, _x, 0, mouseX, 0).x;
1409
+ var row_index = ctx.visibledatarow.length - 1;
1410
+ var row = ctx.visibledatarow[row_index];
1411
+ var row_pre = 0;
1412
+ var col_location = (0, _location.colLocation)(x, ctx.visibledatacolumn);
1413
+ var col = col_location[1];
1414
+ var col_pre = col_location[0];
1415
+ var col_index = col_location[2];
1416
+ ctx.orderbyindex = col_index;
1417
+ if (e.button === 2) {
1418
+ var flowdata_2 = (0, _context.getFlowdata)(ctx);
1419
+ var isInSelection = _lodash.default.some(ctx.luckysheet_select_save, function (obj_s) {
1420
+ var _a;
1421
+ return obj_s.column != null && col_index >= obj_s.column[0] && col_index <= obj_s.column[1] && obj_s.row[0] === 0 && obj_s.row[1] === ((_a = flowdata_2 === null || flowdata_2 === void 0 ? void 0 : flowdata_2.length) !== null && _a !== void 0 ? _a : 0) - 1;
1422
+ });
1423
+ if (isInSelection) return;
1424
+ }
1425
+ var left = col_pre;
1426
+ var width = col - col_pre - 1;
1427
+ var columnseleted = [col_index, col_index];
1428
+ ctx.luckysheet_scroll_status = true;
1429
+ if (!_lodash.default.isEmpty(ctx.luckysheetCellUpdate)) {
1430
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) {
1431
+ var changeparam = (0, _cell.mergeMoveMain)(ctx, columnseleted, [0, row_index], {
1432
+ row_focus: 0,
1433
+ column_focus: col_index
1434
+ }, row_pre, row, left, width);
1435
+ if (changeparam != null) {
1436
+ _a = [changeparam[0], changeparam[4], changeparam[5]], columnseleted = _a[0], left = _a[1], width = _a[2];
1437
+ }
1438
+ if (e.shiftKey) {
1439
+ var last = ctx.formulaCache.func_selectedrange;
1440
+ left = 0;
1441
+ width = 0;
1442
+ columnseleted = [];
1443
+ if (last == null || last.width == null || last.height == null || last.left == null || last.column_focus == null) return;
1444
+ if (last.left > col_pre) {
1445
+ left = col_pre;
1446
+ width = last.left + last.width - col_pre;
1447
+ if (last.column[1] > last.column_focus) {
1448
+ last.column[1] = last.column_focus;
1449
+ }
1450
+ columnseleted = [col_index, last.column[1]];
1451
+ } else if (last.left === col_pre) {
1452
+ left = col_pre;
1453
+ width = last.left + last.width - col_pre;
1454
+ columnseleted = [col_index, last.column[0]];
1455
+ } else {
1456
+ left = last.left;
1457
+ width = col - last.left - 1;
1458
+ if (last.column[0] < last.column_focus) {
1459
+ last.column[0] = last.column_focus;
1460
+ }
1461
+ columnseleted = [last.column[0], col_index];
1462
+ }
1463
+ changeparam = (0, _cell.mergeMoveMain)(ctx, columnseleted, [0, row_index], {
1464
+ row_focus: 0,
1465
+ column_focus: col_index
1466
+ }, row_pre, row, left, width);
1467
+ if (changeparam != null) {
1468
+ _b = [changeparam[0], changeparam[4], changeparam[5]], columnseleted = _b[0], left = _b[1], width = _b[2];
1469
+ }
1470
+ last.column = columnseleted;
1471
+ last.left_move = left;
1472
+ last.width_move = width;
1473
+ ctx.formulaCache.func_selectedrange = last;
1474
+ } else if (e.ctrlKey && ((_d = _lodash.default.last(cellInput.querySelectorAll("span"))) === null || _d === void 0 ? void 0 : _d.innerText) !== ",") {
1475
+ var vText = "".concat(cellInput.innerText, ",");
1476
+ if (vText.length > 0 && vText.substring(0, 1) === "=") {
1477
+ vText = (0, _modules.functionHTMLGenerate)(vText);
1478
+ if (window.getSelection) {
1479
+ var currSelection = window.getSelection();
1480
+ if (currSelection == null) return;
1481
+ ctx.formulaCache.functionRangeIndex = [_lodash.default.indexOf((_g = (_f = (_e = currSelection.anchorNode) === null || _e === void 0 ? void 0 : _e.parentNode) === null || _f === void 0 ? void 0 : _f.parentNode) === null || _g === void 0 ? void 0 : _g.childNodes, (_h = currSelection.anchorNode) === null || _h === void 0 ? void 0 : _h.parentNode), currSelection.anchorOffset];
1482
+ } else {
1483
+ var textRange = document.selection.createRange();
1484
+ ctx.formulaCache.functionRangeIndex = textRange;
1485
+ }
1486
+ cellInput.innerHTML = vText;
1487
+ (0, _cell.cancelFunctionrangeSelected)(ctx);
1488
+ (0, _modules.createRangeHightlight)(ctx, vText);
1489
+ }
1490
+ ctx.formulaCache.rangestart = false;
1491
+ ctx.formulaCache.rangedrag_column_start = false;
1492
+ ctx.formulaCache.rangedrag_row_start = false;
1493
+ if (fxInput) {
1494
+ fxInput.innerHTML = vText;
1495
+ }
1496
+ (0, _modules.rangeHightlightselected)(ctx, cellInput);
1497
+ (0, _modules.israngeseleciton)(ctx);
1498
+ ctx.formulaCache.func_selectedrange = {
1499
+ left: left,
1500
+ width: width,
1501
+ top: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0],
1502
+ height: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[1] - (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0] - 1,
1503
+ left_move: left,
1504
+ width_move: width,
1505
+ top_move: row_pre,
1506
+ height_move: row - row_pre - 1,
1507
+ row: [0, row_index],
1508
+ column: columnseleted,
1509
+ row_focus: 0,
1510
+ column_focus: col_index
1511
+ };
1512
+ } else {
1513
+ ctx.formulaCache.func_selectedrange = {
1514
+ left: left,
1515
+ width: width,
1516
+ top: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0],
1517
+ height: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[1] - (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0] - 1,
1518
+ left_move: left,
1519
+ width_move: width,
1520
+ top_move: row_pre,
1521
+ height_move: row - row_pre - 1,
1522
+ row: [0, row_index],
1523
+ column: columnseleted,
1524
+ row_focus: 0,
1525
+ column_focus: col_index
1526
+ };
1527
+ }
1528
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) {
1529
+ (0, _modules.rangeSetValue)(ctx, cellInput, {
1530
+ row: [null, null],
1531
+ column: columnseleted
1532
+ }, fxInput);
1533
+ }
1534
+ ctx.formulaCache.rangedrag_column_start = true;
1535
+ ctx.formulaCache.rangestart = false;
1536
+ ctx.formulaCache.rangedrag_row_start = false;
1537
+ ctx.formulaCache.selectingRangeIndex = ctx.formulaCache.rangechangeindex;
1538
+ if (ctx.formulaCache.rangechangeindex > ctx.formulaRangeHighlight.length) {
1539
+ (0, _modules.createRangeHightlight)(ctx, cellInput.innerHTML, ctx.formulaCache.rangechangeindex);
1540
+ }
1541
+ (0, _modules.createFormulaRangeSelect)(ctx, {
1542
+ rangeIndex: ctx.formulaCache.rangechangeindex || 0,
1543
+ left: left,
1544
+ top: row_pre,
1545
+ width: width,
1546
+ height: row - row_pre - 1
1547
+ });
1548
+ e.preventDefault();
1549
+ return;
1550
+ }
1551
+ (0, _cell.updateCell)(ctx, ctx.luckysheetCellUpdate[0], ctx.luckysheetCellUpdate[1], cellInput);
1552
+ ctx.luckysheet_cols_selected_status = true;
1553
+ } else {
1554
+ ctx.luckysheet_cols_selected_status = true;
1555
+ }
1556
+ if (ctx.luckysheet_cols_selected_status) {
1557
+ if (e.shiftKey) {
1558
+ var last = _lodash.default.cloneDeep((_j = ctx.luckysheet_select_save) === null || _j === void 0 ? void 0 : _j[ctx.luckysheet_select_save.length - 1]);
1559
+ var _left = 0;
1560
+ var _width = 0;
1561
+ var _columnseleted = [];
1562
+ if (!last || _lodash.default.isNil(last.left) || _lodash.default.isNil(last.width) || _lodash.default.isNil(last.column_focus)) {
1563
+ return;
1564
+ }
1565
+ if (last.left > col_pre) {
1566
+ _left = col_pre;
1567
+ _width = last.left + last.width - col_pre;
1568
+ if (last.column[1] > last.column_focus) {
1569
+ last.column[1] = last.column_focus;
1570
+ }
1571
+ _columnseleted = [col_index, last.column[1]];
1572
+ } else if (last.left === col_pre) {
1573
+ _left = col_pre;
1574
+ _width = last.left + last.width - col_pre;
1575
+ _columnseleted = [col_index, last.column[0]];
1576
+ } else {
1577
+ _left = last.left;
1578
+ _width = col - last.left - 1;
1579
+ if (last.column[0] < last.column_focus) {
1580
+ last.column[0] = last.column_focus;
1581
+ }
1582
+ _columnseleted = [last.column[0], col_index];
1583
+ }
1584
+ last.column = _columnseleted;
1585
+ last.left_move = _left;
1586
+ last.width_move = _width;
1587
+ ctx.luckysheet_select_save[ctx.luckysheet_select_save.length - 1] = last;
1588
+ } else if (e.ctrlKey || e.metaKey) {
1589
+ (_k = ctx.luckysheet_select_save) === null || _k === void 0 ? void 0 : _k.push({
1590
+ left: left,
1591
+ width: width,
1592
+ top: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0],
1593
+ height: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[1] - (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0] - 1,
1594
+ left_move: left,
1595
+ width_move: width,
1596
+ top_move: row_pre,
1597
+ height_move: row - row_pre - 1,
1598
+ row: [0, row_index],
1599
+ column: columnseleted,
1600
+ row_focus: 0,
1601
+ column_focus: col_index,
1602
+ column_select: true
1603
+ });
1604
+ } else {
1605
+ ctx.luckysheet_select_save = [];
1606
+ ctx.luckysheet_select_save.push({
1607
+ left: left,
1608
+ width: width,
1609
+ top: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0],
1610
+ height: (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[1] - (0, _location.rowLocationByIndex)(0, ctx.visibledatarow)[0] - 1,
1611
+ left_move: left,
1612
+ width_move: width,
1613
+ top_move: row_pre,
1614
+ height_move: row - row_pre - 1,
1615
+ row: [0, row_index],
1616
+ column: columnseleted,
1617
+ row_focus: 0,
1618
+ column_focus: col_index,
1619
+ column_select: true
1620
+ });
1621
+ ctx.luckysheet_select_status = true;
1622
+ ctx.luckysheet_scroll_status = true;
1623
+ }
1624
+ }
1625
+ }
1626
+ function handleColSizeHandleMouseDown(ctx, globalCache, e, headerContainer, workbookContainer, cellArea) {
1627
+ var _a;
1628
+ (0, _modules.removeEditingComment)(ctx, globalCache);
1629
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
1630
+ ctx.luckysheetCellUpdate = [];
1631
+ var scrollLeft = ctx.scrollLeft;
1632
+ var scrollTop = ctx.scrollTop;
1633
+ var mouseX = e.pageX - headerContainer.getBoundingClientRect().left - window.scrollX;
1634
+ var _x = mouseX + scrollLeft;
1635
+ var freeze = (_a = globalCache.freezen) === null || _a === void 0 ? void 0 : _a[ctx.currentSheetId];
1636
+ var x = fixPositionOnFrozenCells(freeze, _x, 0, mouseX, 0).x;
1637
+ var col_location = (0, _location.colLocation)(x, ctx.visibledatacolumn);
1638
+ var col = col_location[1];
1639
+ var col_index = col_location[2];
1640
+ ctx.luckysheet_cols_change_size = true;
1641
+ ctx.luckysheet_scroll_status = true;
1642
+ var changeSizeLine = workbookContainer.querySelector(".fortune-change-size-line");
1643
+ if (changeSizeLine) {
1644
+ var ele = changeSizeLine;
1645
+ ele.style.height = "".concat(cellArea.getBoundingClientRect().height + scrollTop, "px");
1646
+ ele.style.borderWidth = "0 1px 0 0";
1647
+ ele.style.top = "0";
1648
+ ele.style.left = "".concat(col - 3, "px");
1649
+ ele.style.width = "1px";
1650
+ }
1651
+ ctx.luckysheet_cols_change_size_start = [_x, col_index];
1652
+ e.stopPropagation();
1653
+ }
1654
+ function handleRowSizeHandleMouseDown(ctx, globalCache, e, headerContainer, workbookContainer, cellArea) {
1655
+ var _a;
1656
+ (0, _modules.removeEditingComment)(ctx, globalCache);
1657
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
1658
+ if (ctx.formulaCache.rangestart || ctx.formulaCache.rangedrag_column_start || ctx.formulaCache.rangedrag_row_start || (0, _modules.israngeseleciton)(ctx)) return;
1659
+ ctx.luckysheetCellUpdate = [];
1660
+ var scrollLeft = ctx.scrollLeft;
1661
+ var scrollTop = ctx.scrollTop;
1662
+ var mouseY = e.pageY - headerContainer.getBoundingClientRect().top - window.scrollY;
1663
+ var _y = mouseY + scrollTop;
1664
+ var freeze = (_a = globalCache.freezen) === null || _a === void 0 ? void 0 : _a[ctx.currentSheetId];
1665
+ var y = fixPositionOnFrozenCells(freeze, 0, _y, 0, mouseY).y;
1666
+ var row_location = (0, _location.rowLocation)(y, ctx.visibledatarow);
1667
+ var row = row_location[1];
1668
+ var row_index = row_location[2];
1669
+ ctx.luckysheet_rows_change_size = true;
1670
+ ctx.luckysheet_scroll_status = true;
1671
+ var changeSizeLine = workbookContainer.querySelector(".fortune-change-size-line");
1672
+ if (changeSizeLine) {
1673
+ var ele = changeSizeLine;
1674
+ ele.style.width = "".concat(cellArea.getBoundingClientRect().width + scrollLeft, "px");
1675
+ ele.style.borderWidth = "0 0 1px 0";
1676
+ ele.style.top = "".concat(row - 3, "px");
1677
+ ele.style.left = "0";
1678
+ ele.style.height = "1px";
1679
+ }
1680
+ ctx.luckysheet_rows_change_size_start = [_y, row_index];
1681
+ e.stopPropagation();
1682
+ }
1683
+ function handleColFreezeHandleMouseDown(ctx, globalCache, e, headerContainer, workbookContainer, cellArea) {
1684
+ (0, _modules.removeEditingComment)(ctx, globalCache);
1685
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
1686
+ ctx.luckysheetCellUpdate = [];
1687
+ var scrollLeft = ctx.scrollLeft;
1688
+ var scrollTop = ctx.scrollTop;
1689
+ var x = e.pageX - headerContainer.getBoundingClientRect().left + scrollLeft;
1690
+ var col_location = (0, _location.colLocation)(x, ctx.visibledatacolumn);
1691
+ var col = col_location[1];
1692
+ ctx.luckysheet_cols_freeze_drag = true;
1693
+ ctx.luckysheet_scroll_status = true;
1694
+ var freezeDragLine = workbookContainer.querySelector(".fortune-freeze-drag-line");
1695
+ if (freezeDragLine) {
1696
+ var ele = freezeDragLine;
1697
+ ele.style.height = "".concat(cellArea.getBoundingClientRect().height + scrollTop, "px");
1698
+ ele.style.borderWidth = "0 3px 0 0";
1699
+ ele.style.top = "0";
1700
+ ele.style.left = "".concat(col - 3, "px");
1701
+ ele.style.width = "1px";
1702
+ }
1703
+ var changeSizeLine = workbookContainer.querySelector(".fortune-change-size-line");
1704
+ if (changeSizeLine) {
1705
+ var ele = changeSizeLine;
1706
+ ele.style.height = "".concat(cellArea.getBoundingClientRect().height + scrollTop, "px");
1707
+ ele.style.borderWidth = "0 1px 0 0";
1708
+ ele.style.top = "0";
1709
+ ele.style.left = "".concat(col - 3, "px");
1710
+ ele.style.width = "1px";
1711
+ }
1712
+ e.stopPropagation();
1713
+ }
1714
+ function handleRowFreezeHandleMouseDown(ctx, globalCache, e, headerContainer, workbookContainer, cellArea) {
1715
+ (0, _modules.removeEditingComment)(ctx, globalCache);
1716
+ (0, _modules.cancelActiveImgItem)(ctx, globalCache);
1717
+ ctx.luckysheetCellUpdate = [];
1718
+ var scrollLeft = ctx.scrollLeft;
1719
+ var scrollTop = ctx.scrollTop;
1720
+ var y = e.pageY - headerContainer.getBoundingClientRect().top + scrollTop;
1721
+ var row_location = (0, _location.rowLocation)(y, ctx.visibledatarow);
1722
+ var row = row_location[1];
1723
+ ctx.luckysheet_rows_freeze_drag = true;
1724
+ ctx.luckysheet_scroll_status = true;
1725
+ var freezeDragLine = workbookContainer.querySelector(".fortune-freeze-drag-line");
1726
+ if (freezeDragLine) {
1727
+ var ele = freezeDragLine;
1728
+ ele.style.width = "".concat(cellArea.getBoundingClientRect().width + scrollLeft, "px");
1729
+ ele.style.borderWidth = "0 0 3px 0";
1730
+ ele.style.top = "".concat(row - 3, "px");
1731
+ ele.style.left = "0";
1732
+ ele.style.height = "1px";
1733
+ }
1734
+ var changeSizeLine = workbookContainer.querySelector(".fortune-change-size-line");
1735
+ if (changeSizeLine) {
1736
+ var ele = changeSizeLine;
1737
+ ele.style.width = "".concat(cellArea.getBoundingClientRect().width + scrollLeft, "px");
1738
+ ele.style.borderWidth = "0 0 1px 0";
1739
+ ele.style.top = "".concat(row - 3, "px");
1740
+ ele.style.left = "0";
1741
+ ele.style.height = "1px";
1742
+ }
1743
+ e.stopPropagation();
1744
+ }