@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,323 @@
1
+ import numeral from "numeral";
2
+ import _ from "lodash";
3
+ import { isRealNum, valueIsError, isdatetime } from "./validation";
4
+ import SSF from "./ssf";
5
+ import { getCellValue } from "./cell";
6
+ var base1904 = new Date(1900, 2, 1, 0, 0, 0);
7
+ export function datenum_local(v, date1904) {
8
+ var epoch = Date.UTC(v.getFullYear(), v.getMonth(), v.getDate(), v.getHours(), v.getMinutes(), v.getSeconds());
9
+ var dnthresh_utc = Date.UTC(1899, 11, 31, 0, 0, 0);
10
+ if (date1904) epoch -= 1461 * 24 * 60 * 60 * 1000;else if (v >= base1904) epoch += 24 * 60 * 60 * 1000;
11
+ return (epoch - dnthresh_utc) / (24 * 60 * 60 * 1000);
12
+ }
13
+ var good_pd_date = new Date("2017-02-19T19:06:09.000Z");
14
+ if (Number.isNaN(good_pd_date.getFullYear())) good_pd_date = new Date("2/19/17");
15
+ var good_pd = good_pd_date.getFullYear() === 2017;
16
+ function parseDate(str, fixdate) {
17
+ var d = new Date(str);
18
+ if (good_pd) {
19
+ if (!_.isNil(fixdate)) {
20
+ if (fixdate > 0) d.setTime(d.getTime() + d.getTimezoneOffset() * 60 * 1000);else if (fixdate < 0) d.setTime(d.getTime() - d.getTimezoneOffset() * 60 * 1000);
21
+ }
22
+ return d;
23
+ }
24
+ if (str instanceof Date) return str;
25
+ if (good_pd_date.getFullYear() === 1917 && !Number.isNaN(d.getFullYear())) {
26
+ var s = d.getFullYear();
27
+ if (str.indexOf("".concat(s)) > -1) return d;
28
+ d.setFullYear(d.getFullYear() + 100);
29
+ return d;
30
+ }
31
+ var n = str.match(/\d+/g) || ["2017", "2", "19", "0", "0", "0"];
32
+ var out = new Date(+n[0], +n[1] - 1, +n[2], +n[3] || 0, +n[4] || 0, +n[5] || 0);
33
+ if (str.indexOf("Z") > -1) out = new Date(out.getTime() - out.getTimezoneOffset() * 60 * 1000);
34
+ return out;
35
+ }
36
+ export function genarate(value) {
37
+ var m = null;
38
+ var ct = {};
39
+ var v = value;
40
+ if (_.isNil(value)) {
41
+ return null;
42
+ }
43
+ if (/^-?[0-9]{1,}[,][0-9]{3}(.[0-9]{1,2})?$/.test(value)) {
44
+ value = value;
45
+ m = value;
46
+ v = Number(value.split(".")[0].replace(",", ""));
47
+ var fa = "#,##0";
48
+ if (value.split(".")[1]) {
49
+ fa = "#,##0.";
50
+ for (var i = 0; i < value.split(".")[1].length; i += 1) {
51
+ fa += 0;
52
+ }
53
+ }
54
+ ct = {
55
+ fa: fa,
56
+ t: "n"
57
+ };
58
+ } else if (value.toString().substring(0, 1) === "'") {
59
+ m = value.toString().substring(1);
60
+ ct = {
61
+ fa: "@",
62
+ t: "s"
63
+ };
64
+ } else if (value.toString().toUpperCase() === "TRUE") {
65
+ m = "TRUE";
66
+ ct = {
67
+ fa: "General",
68
+ t: "b"
69
+ };
70
+ v = true;
71
+ } else if (value.toString().toUpperCase() === "FALSE") {
72
+ m = "FALSE";
73
+ ct = {
74
+ fa: "General",
75
+ t: "b"
76
+ };
77
+ v = false;
78
+ } else if (valueIsError(value.toString())) {
79
+ m = value.toString();
80
+ ct = {
81
+ fa: "General",
82
+ t: "e"
83
+ };
84
+ } else if (/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i.test(value)) {
85
+ m = value.toString();
86
+ ct = {
87
+ fa: "@",
88
+ t: "s"
89
+ };
90
+ } else if (isRealNum(value) && Math.abs(parseFloat(value)) > 0 && (Math.abs(parseFloat(value)) >= 1e11 || Math.abs(parseFloat(value)) < 1e-9)) {
91
+ v = parseFloat(value);
92
+ var str = v.toExponential();
93
+ if (str.indexOf(".") > -1) {
94
+ var strlen = str.split(".")[1].split("e")[0].length;
95
+ if (strlen > 5) {
96
+ strlen = 5;
97
+ }
98
+ ct = {
99
+ fa: "#0.".concat(new Array(strlen + 1).join("0"), "E+00"),
100
+ t: "n"
101
+ };
102
+ } else {
103
+ ct = {
104
+ fa: "#0.E+00",
105
+ t: "n"
106
+ };
107
+ }
108
+ m = SSF.format(ct.fa, v);
109
+ } else if (value.toString().indexOf("%") > -1) {
110
+ var index = value.toString().indexOf("%");
111
+ var value2 = value.toString().substring(0, index);
112
+ var value3 = value2.replace(/,/g, "");
113
+ if (index === value.toString().length - 1 && isRealNum(value3)) {
114
+ if (value2.indexOf(".") > -1) {
115
+ if (value2.indexOf(".") === value2.lastIndexOf(".")) {
116
+ var value4 = value2.split(".")[0];
117
+ var value5 = value2.split(".")[1];
118
+ var len = value5.length;
119
+ if (len > 9) {
120
+ len = 9;
121
+ }
122
+ if (value4.indexOf(",") > -1) {
123
+ var isThousands = true;
124
+ var ThousandsArr = value4.split(",");
125
+ for (var i = 1; i < ThousandsArr.length; i += 1) {
126
+ if (ThousandsArr[i].length < 3) {
127
+ isThousands = false;
128
+ break;
129
+ }
130
+ }
131
+ if (isThousands) {
132
+ ct = {
133
+ fa: "#,##0.".concat(new Array(len + 1).join("0"), "%"),
134
+ t: "n"
135
+ };
136
+ v = numeral(value).value();
137
+ m = SSF.format(ct.fa, v);
138
+ } else {
139
+ m = value.toString();
140
+ ct = {
141
+ fa: "@",
142
+ t: "s"
143
+ };
144
+ }
145
+ } else {
146
+ ct = {
147
+ fa: "0.".concat(new Array(len + 1).join("0"), "%"),
148
+ t: "n"
149
+ };
150
+ v = numeral(value).value();
151
+ m = SSF.format(ct.fa, v);
152
+ }
153
+ } else {
154
+ m = value.toString();
155
+ ct = {
156
+ fa: "@",
157
+ t: "s"
158
+ };
159
+ }
160
+ } else if (value2.indexOf(",") > -1) {
161
+ var isThousands = true;
162
+ var ThousandsArr = value2.split(",");
163
+ for (var i = 1; i < ThousandsArr.length; i += 1) {
164
+ if (ThousandsArr[i].length < 3) {
165
+ isThousands = false;
166
+ break;
167
+ }
168
+ }
169
+ if (isThousands) {
170
+ ct = {
171
+ fa: "#,##0%",
172
+ t: "n"
173
+ };
174
+ v = numeral(value).value();
175
+ m = SSF.format(ct.fa, v);
176
+ } else {
177
+ m = value.toString();
178
+ ct = {
179
+ fa: "@",
180
+ t: "s"
181
+ };
182
+ }
183
+ } else {
184
+ ct = {
185
+ fa: "0%",
186
+ t: "n"
187
+ };
188
+ v = numeral(value).value();
189
+ m = SSF.format(ct.fa, v);
190
+ }
191
+ } else {
192
+ m = value.toString();
193
+ ct = {
194
+ fa: "@",
195
+ t: "s"
196
+ };
197
+ }
198
+ } else if (value.toString().indexOf(".") > -1) {
199
+ if (value.toString().indexOf(".") === value.toString().lastIndexOf(".")) {
200
+ var value1 = value.toString().split(".")[0];
201
+ var value2 = value.toString().split(".")[1];
202
+ var len = value2.length;
203
+ if (len > 9) {
204
+ len = 9;
205
+ }
206
+ if (value1.indexOf(",") > -1) {
207
+ var isThousands = true;
208
+ var ThousandsArr = value1.split(",");
209
+ for (var i = 1; i < ThousandsArr.length; i += 1) {
210
+ if (!isRealNum(ThousandsArr[i]) || ThousandsArr[i].length < 3) {
211
+ isThousands = false;
212
+ break;
213
+ }
214
+ }
215
+ if (isThousands) {
216
+ ct = {
217
+ fa: "#,##0.".concat(new Array(len + 1).join("0")),
218
+ t: "n"
219
+ };
220
+ v = numeral(value).value();
221
+ m = SSF.format(ct.fa, v);
222
+ } else {
223
+ m = value.toString();
224
+ ct = {
225
+ fa: "@",
226
+ t: "s"
227
+ };
228
+ }
229
+ } else {
230
+ if (isRealNum(value1) && isRealNum(value2)) {
231
+ ct = {
232
+ fa: "0.".concat(new Array(len + 1).join("0")),
233
+ t: "n"
234
+ };
235
+ v = numeral(value).value();
236
+ m = SSF.format(ct.fa, v);
237
+ } else {
238
+ m = value.toString();
239
+ ct = {
240
+ fa: "@",
241
+ t: "s"
242
+ };
243
+ }
244
+ }
245
+ } else {
246
+ m = value.toString();
247
+ ct = {
248
+ fa: "@",
249
+ t: "s"
250
+ };
251
+ }
252
+ } else if (isRealNum(value)) {
253
+ m = parseFloat(value).toString();
254
+ ct = {
255
+ fa: "General",
256
+ t: "n"
257
+ };
258
+ v = parseFloat(value);
259
+ } else if (isdatetime(value) && (value.toString().indexOf(".") > -1 || value.toString().indexOf(":") > -1 || value.toString().length < 16)) {
260
+ v = datenum_local(parseDate(value.toString().replace(/-/g, "/")));
261
+ if (v.toString().indexOf(".") > -1) {
262
+ if (value.toString().length > 18) {
263
+ ct.fa = "yyyy-MM-dd hh:mm:ss";
264
+ } else if (value.toString().length > 11) {
265
+ ct.fa = "yyyy-MM-dd hh:mm";
266
+ } else {
267
+ ct.fa = "yyyy-MM-dd";
268
+ }
269
+ } else {
270
+ ct.fa = "yyyy-MM-dd";
271
+ }
272
+ ct.t = "d";
273
+ m = SSF.format(ct.fa, v);
274
+ } else {
275
+ m = value;
276
+ ct.fa = "General";
277
+ ct.t = "g";
278
+ }
279
+ return [m, ct, v];
280
+ }
281
+ export function update(fmt, v) {
282
+ return SSF.format(fmt, v);
283
+ }
284
+ export function is_date(fmt, v) {
285
+ return SSF.is_date(fmt, v);
286
+ }
287
+ function fuzzynum(s) {
288
+ var v = Number(s);
289
+ if (typeof s === "number") {
290
+ return s;
291
+ }
292
+ if (!Number.isNaN(v)) return v;
293
+ var wt = 1;
294
+ var ss = s.replace(/([\d]),([\d])/g, "$1$2").replace(/[$]/g, "").replace(/[%]/g, function () {
295
+ wt *= 100;
296
+ return "";
297
+ });
298
+ v = Number(ss);
299
+ if (!Number.isNaN(v)) return v / wt;
300
+ ss = ss.replace(/[(](.*)[)]/, function ($$, $1) {
301
+ wt = -wt;
302
+ return $1;
303
+ });
304
+ v = Number(ss);
305
+ if (!Number.isNaN(v)) return v / wt;
306
+ return v;
307
+ }
308
+ export function valueShowEs(r, c, d) {
309
+ var _a, _b, _c, _d, _e, _f;
310
+ var value = getCellValue(r, c, d, "m");
311
+ if (value == null) {
312
+ value = getCellValue(r, c, d, "v");
313
+ } else {
314
+ if (!Number.isNaN(fuzzynum(value))) {
315
+ if (_.isString(value) && value.indexOf("%") > -1) {} else {
316
+ value = getCellValue(r, c, d, "v");
317
+ }
318
+ } else if (((_c = (_b = (_a = d[r]) === null || _a === void 0 ? void 0 : _a[c]) === null || _b === void 0 ? void 0 : _b.ct) === null || _c === void 0 ? void 0 : _c.t) === "d") {} else if (((_f = (_e = (_d = d[r]) === null || _d === void 0 ? void 0 : _d[c]) === null || _e === void 0 ? void 0 : _e.ct) === null || _f === void 0 ? void 0 : _f.t) === "b") {} else {
319
+ value = getCellValue(r, c, d, "v");
320
+ }
321
+ }
322
+ return value;
323
+ }
@@ -1,54 +1,54 @@
1
- import type { Cell, Rect, Selection } from "../types";
2
- import { Context } from "../context";
3
- export declare class FormulaCache {
4
- parser: any;
5
- func_selectedrange?: Selection;
6
- data_parm_index: number;
7
- cellTextToIndexList: any;
8
- rangechangeindex?: number;
9
- selectingRangeIndex: number;
10
- rangeResizeObj?: any;
11
- rangeResize?: any;
12
- rangeResizeIndex?: number;
13
- rangeResizexy?: any;
14
- rangeResizeWinH?: any;
15
- rangeResizeWinW?: any;
16
- rangeResizeTo?: any;
17
- rangeSetValueTo?: any;
18
- rangeIndex?: number;
19
- rangestart?: boolean;
20
- rangetosheet?: string;
21
- rangedrag_column_start?: boolean;
22
- rangedrag_row_start?: boolean;
23
- functionRangeIndex?: number[];
24
- functionlistMap: any;
25
- execFunctionExist?: any[];
26
- execFunctionGlobalData: any;
27
- constructor();
28
- tryGetCellAsNumber(cell: Cell): string | number | boolean | undefined;
29
- }
30
- export declare function iscelldata(txt: string): boolean;
31
- export declare function getcellrange(ctx: Context, txt: string, formulaId?: string): any;
32
- export declare function getAllFunctionGroup(ctx: Context): any[];
33
- export declare function delFunctionGroup(ctx: Context, r: number, c: number, id?: string): void;
34
- export declare function insertUpdateFunctionGroup(ctx: Context, r: number, c: number, id?: string, calcChainSet?: Set<string>): void;
35
- export declare function execfunction(ctx: Context, txt: string, r: number, c: number, id?: string, calcChainSet?: Set<string>, isrefresh?: boolean, notInsertFunc?: boolean): any[];
36
- export declare function groupValuesRefresh(ctx: Context): void;
37
- export declare function execFunctionGroup(ctx: Context, origin_r: number, origin_c: number, value: any, id?: string, data?: any, isForce?: boolean): void;
38
- export declare function createFormulaRangeSelect(ctx: Context, select: {
39
- rangeIndex: number;
40
- } & Rect): void;
41
- export declare function createRangeHightlight(ctx: Context, inputInnerHtmlStr: string, ignoreRangeIndex?: number): void;
42
- export declare function setCaretPosition(ctx: Context, textDom: HTMLElement, children: number, pos: number): void;
43
- export declare function getrangeseleciton(): ParentNode | ChildNode | null | undefined;
44
- export declare function rangeHightlightselected(ctx: Context, $editor: HTMLDivElement): void;
45
- export declare function functionHTMLGenerate(txt: string): string;
46
- export declare function handleFormulaInput(ctx: Context, $copyTo: HTMLDivElement | null | undefined, $editor: HTMLDivElement, kcode: number, preText?: string, refreshRangeSelect?: boolean): void;
47
- export declare function israngeseleciton(ctx: Context, istooltip?: boolean): boolean;
48
- export declare function functionStrChange(txt: string, type: string, rc: "row" | "col", orient: string | null, stindex: number, step: number): string;
49
- export declare function rangeSetValue(ctx: Context, cellInput: HTMLDivElement, selected: any, fxInput?: HTMLDivElement | null): void;
50
- export declare function onFormulaRangeDragEnd(ctx: Context): void;
51
- export declare function rangeDrag(ctx: Context, e: MouseEvent, cellInput: HTMLDivElement, scrollLeft: number, scrollTop: number, container: HTMLDivElement, fxInput?: HTMLDivElement | null): void;
52
- export declare function rangeDragColumn(ctx: Context, e: MouseEvent, cellInput: HTMLDivElement, scrollLeft: number, scrollTop: number, container: HTMLDivElement, fxInput?: HTMLDivElement | null): void;
53
- export declare function rangeDragRow(ctx: Context, e: MouseEvent, cellInput: HTMLDivElement, scrollLeft: number, scrollTop: number, container: HTMLDivElement, fxInput?: HTMLDivElement | null): void;
54
- export declare function functionCopy(ctx: Context, txt: string, mode: string, step: number): string;
1
+ import type { Cell, Rect, Selection } from "../types";
2
+ import { Context } from "../context";
3
+ export declare class FormulaCache {
4
+ parser: any;
5
+ func_selectedrange?: Selection;
6
+ data_parm_index: number;
7
+ cellTextToIndexList: any;
8
+ rangechangeindex?: number;
9
+ selectingRangeIndex: number;
10
+ rangeResizeObj?: any;
11
+ rangeResize?: any;
12
+ rangeResizeIndex?: number;
13
+ rangeResizexy?: any;
14
+ rangeResizeWinH?: any;
15
+ rangeResizeWinW?: any;
16
+ rangeResizeTo?: any;
17
+ rangeSetValueTo?: any;
18
+ rangeIndex?: number;
19
+ rangestart?: boolean;
20
+ rangetosheet?: string;
21
+ rangedrag_column_start?: boolean;
22
+ rangedrag_row_start?: boolean;
23
+ functionRangeIndex?: number[];
24
+ functionlistMap: any;
25
+ execFunctionExist?: any[];
26
+ execFunctionGlobalData: any;
27
+ constructor();
28
+ tryGetCellAsNumber(cell: Cell): string | number | boolean | undefined;
29
+ }
30
+ export declare function iscelldata(txt: string): boolean;
31
+ export declare function getcellrange(ctx: Context, txt: string, formulaId?: string): any;
32
+ export declare function getAllFunctionGroup(ctx: Context): any[];
33
+ export declare function delFunctionGroup(ctx: Context, r: number, c: number, id?: string): void;
34
+ export declare function insertUpdateFunctionGroup(ctx: Context, r: number, c: number, id?: string, calcChainSet?: Set<string>): void;
35
+ export declare function execfunction(ctx: Context, txt: string, r: number, c: number, id?: string, calcChainSet?: Set<string>, isrefresh?: boolean, notInsertFunc?: boolean): any[];
36
+ export declare function groupValuesRefresh(ctx: Context): void;
37
+ export declare function execFunctionGroup(ctx: Context, origin_r: number, origin_c: number, value: any, id?: string, data?: any, isForce?: boolean): void;
38
+ export declare function createFormulaRangeSelect(ctx: Context, select: {
39
+ rangeIndex: number;
40
+ } & Rect): void;
41
+ export declare function createRangeHightlight(ctx: Context, inputInnerHtmlStr: string, ignoreRangeIndex?: number): void;
42
+ export declare function setCaretPosition(ctx: Context, textDom: HTMLElement, children: number, pos: number): void;
43
+ export declare function getrangeseleciton(): ParentNode | ChildNode | null | undefined;
44
+ export declare function rangeHightlightselected(ctx: Context, $editor: HTMLDivElement): void;
45
+ export declare function functionHTMLGenerate(txt: string): string;
46
+ export declare function handleFormulaInput(ctx: Context, $copyTo: HTMLDivElement | null | undefined, $editor: HTMLDivElement, kcode: number, preText?: string, refreshRangeSelect?: boolean): void;
47
+ export declare function israngeseleciton(ctx: Context, istooltip?: boolean): boolean;
48
+ export declare function functionStrChange(txt: string, type: string, rc: "row" | "col", orient: string | null, stindex: number, step: number): string;
49
+ export declare function rangeSetValue(ctx: Context, cellInput: HTMLDivElement, selected: any, fxInput?: HTMLDivElement | null): void;
50
+ export declare function onFormulaRangeDragEnd(ctx: Context): void;
51
+ export declare function rangeDrag(ctx: Context, e: MouseEvent, cellInput: HTMLDivElement, scrollLeft: number, scrollTop: number, container: HTMLDivElement, fxInput?: HTMLDivElement | null): void;
52
+ export declare function rangeDragColumn(ctx: Context, e: MouseEvent, cellInput: HTMLDivElement, scrollLeft: number, scrollTop: number, container: HTMLDivElement, fxInput?: HTMLDivElement | null): void;
53
+ export declare function rangeDragRow(ctx: Context, e: MouseEvent, cellInput: HTMLDivElement, scrollLeft: number, scrollTop: number, container: HTMLDivElement, fxInput?: HTMLDivElement | null): void;
54
+ export declare function functionCopy(ctx: Context, txt: string, mode: string, step: number): string;