@leankylin-sheet/formula-parser 3.1.28 → 3.1.30

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 (204) hide show
  1. package/{lib/grammar-parser/grammar-parser.js → dist/index.esm.js} +856 -46
  2. package/{es/grammar-parser/grammar-parser.js → dist/index.js} +903 -42
  3. package/dist/packages/core/src/api/cell.d.ts +10 -0
  4. package/dist/packages/core/src/api/common.d.ts +57 -0
  5. package/dist/packages/core/src/api/errors.d.ts +2 -0
  6. package/dist/packages/core/src/api/index.d.ts +9 -0
  7. package/dist/packages/core/src/api/merge.d.ts +5 -0
  8. package/dist/packages/core/src/api/range.d.ts +22 -0
  9. package/dist/packages/core/src/api/rowcol.d.ts +14 -0
  10. package/dist/packages/core/src/api/sheet.d.ts +10 -0
  11. package/dist/packages/core/src/api/workbook.d.ts +15 -0
  12. package/dist/packages/core/src/canvas.d.ts +56 -0
  13. package/dist/packages/core/src/context.d.ts +193 -0
  14. package/dist/packages/core/src/events/copy.d.ts +2 -0
  15. package/dist/packages/core/src/events/index.d.ts +4 -0
  16. package/dist/packages/core/src/events/keyboard.d.ts +6 -0
  17. package/dist/packages/core/src/events/mouse.d.ts +25 -0
  18. package/dist/packages/core/src/events/paste.d.ts +5 -0
  19. package/dist/packages/core/src/index.d.ts +10 -0
  20. package/dist/packages/core/src/locale/en.d.ts +1028 -0
  21. package/dist/packages/core/src/locale/es.d.ts +1132 -0
  22. package/dist/packages/core/src/locale/index.d.ts +1046 -0
  23. package/dist/packages/core/src/locale/zh.d.ts +1045 -0
  24. package/dist/packages/core/src/locale/zh_tw.d.ts +1185 -0
  25. package/dist/packages/core/src/modules/ConditionFormat.d.ts +17 -0
  26. package/dist/packages/core/src/modules/border.d.ts +3 -0
  27. package/dist/packages/core/src/modules/cell.d.ts +32 -0
  28. package/dist/packages/core/src/modules/clipboard.d.ts +3 -0
  29. package/dist/packages/core/src/modules/color.d.ts +1 -0
  30. package/dist/packages/core/src/modules/comment.d.ts +96 -0
  31. package/dist/packages/core/src/modules/conditionalFormat.d.ts +2 -0
  32. package/dist/packages/core/src/modules/cursor.d.ts +3 -0
  33. package/dist/packages/core/src/modules/dataVerification.d.ts +11 -0
  34. package/dist/packages/core/src/modules/dropCell.d.ts +10 -0
  35. package/dist/packages/core/src/modules/filter.d.ts +45 -0
  36. package/dist/packages/core/src/modules/format.d.ts +6 -0
  37. package/dist/packages/core/src/modules/formula.d.ts +53 -0
  38. package/dist/packages/core/src/modules/freeze.d.ts +5 -0
  39. package/dist/packages/core/src/modules/hyperlink.d.ts +21 -0
  40. package/dist/packages/core/src/modules/image.d.ts +31 -0
  41. package/dist/packages/core/src/modules/index.d.ts +35 -0
  42. package/dist/packages/core/src/modules/inline-string.d.ts +36 -0
  43. package/dist/packages/core/src/modules/location.d.ts +6 -0
  44. package/dist/packages/core/src/modules/locationCondition.d.ts +21 -0
  45. package/dist/packages/core/src/modules/merge.d.ts +3 -0
  46. package/dist/packages/core/src/modules/mobile.d.ts +5 -0
  47. package/dist/packages/core/src/modules/moveCells.d.ts +5 -0
  48. package/dist/packages/core/src/modules/protection.d.ts +5 -0
  49. package/dist/packages/core/src/modules/refresh.d.ts +3 -0
  50. package/dist/packages/core/src/modules/rowcol.d.ts +19 -0
  51. package/dist/packages/core/src/modules/screenshot.d.ts +2 -0
  52. package/dist/packages/core/src/modules/searchReplace.d.ts +36 -0
  53. package/dist/packages/core/src/modules/selection.d.ts +47 -0
  54. package/dist/packages/core/src/modules/sheet.d.ts +10 -0
  55. package/dist/packages/core/src/modules/sort.d.ts +7 -0
  56. package/dist/packages/core/src/modules/splitColumn.d.ts +5 -0
  57. package/dist/packages/core/src/modules/ssf.d.ts +2 -0
  58. package/dist/packages/core/src/modules/text.d.ts +10 -0
  59. package/dist/packages/core/src/modules/toolbar.d.ts +32 -0
  60. package/dist/packages/core/src/modules/validation.d.ts +19 -0
  61. package/dist/packages/core/src/modules/zoom.d.ts +3 -0
  62. package/dist/packages/core/src/settings.d.ts +132 -0
  63. package/dist/packages/core/src/types.d.ts +351 -0
  64. package/dist/packages/core/src/utils/index.d.ts +17 -0
  65. package/dist/packages/core/src/utils/patch.d.ts +37 -0
  66. package/dist/packages/formula-parser/src/error.d.ts +10 -0
  67. package/dist/packages/formula-parser/src/evaluate-by-operator/evaluate-by-operator.d.ts +2 -0
  68. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/add.d.ts +6 -0
  69. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/ampersand.d.ts +6 -0
  70. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/divide.d.ts +6 -0
  71. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/equal.d.ts +6 -0
  72. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/formula-function.d.ts +7 -0
  73. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/greater-than-or-equal.d.ts +6 -0
  74. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/greater-than.d.ts +6 -0
  75. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/less-than-or-equal.d.ts +6 -0
  76. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/less-than.d.ts +6 -0
  77. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/minus.d.ts +6 -0
  78. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/multiply.d.ts +6 -0
  79. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/not-equal.d.ts +6 -0
  80. package/dist/packages/formula-parser/src/evaluate-by-operator/operator/power.d.ts +6 -0
  81. package/dist/packages/formula-parser/src/grammar-parser/grammar-parser.d.ts +4 -0
  82. package/dist/packages/formula-parser/src/helper/cell.d.ts +6 -0
  83. package/dist/packages/formula-parser/src/helper/number.d.ts +2 -0
  84. package/dist/packages/formula-parser/src/helper/string.d.ts +1 -0
  85. package/{es/index.js → dist/packages/formula-parser/src/index.d.ts} +5 -5
  86. package/dist/packages/formula-parser/src/parser.d.ts +20 -0
  87. package/dist/packages/formula-parser/src/supported-formulas.d.ts +2 -0
  88. package/dist/packages/react/src/components/CellOptions/index.d.ts +4 -0
  89. package/dist/packages/react/src/components/ChangeColor/index.d.ts +7 -0
  90. package/dist/packages/react/src/components/ConditionFormat/ConditionRules.d.ts +6 -0
  91. package/dist/packages/react/src/components/ConditionFormat/index.d.ts +7 -0
  92. package/dist/packages/react/src/components/ContextMenu/Divider.d.ts +3 -0
  93. package/dist/packages/react/src/components/ContextMenu/FilterMenu.d.ts +3 -0
  94. package/dist/packages/react/src/components/ContextMenu/Menu.d.ts +8 -0
  95. package/dist/packages/react/src/components/ContextMenu/SheetTab.d.ts +4 -0
  96. package/dist/packages/react/src/components/ContextMenu/index.d.ts +4 -0
  97. package/dist/packages/react/src/components/CustomSort/index.d.ts +4 -0
  98. package/dist/packages/react/src/components/DataVerification/DropdownList.d.ts +4 -0
  99. package/dist/packages/react/src/components/DataVerification/RangeDialog.d.ts +4 -0
  100. package/dist/packages/react/src/components/DataVerification/index.d.ts +4 -0
  101. package/dist/packages/react/src/components/Dialog/index.d.ts +12 -0
  102. package/dist/packages/react/src/components/FilterOption/index.d.ts +5 -0
  103. package/dist/packages/react/src/components/FormatSearch/index.d.ts +6 -0
  104. package/dist/packages/react/src/components/FormulaSearch/index.d.ts +5 -0
  105. package/dist/packages/react/src/components/FxEditor/CalcInfo.d.ts +3 -0
  106. package/dist/packages/react/src/components/FxEditor/NameBox.d.ts +3 -0
  107. package/dist/packages/react/src/components/FxEditor/index.d.ts +4 -0
  108. package/dist/packages/react/src/components/ImgBoxs/index.d.ts +3 -0
  109. package/dist/packages/react/src/components/LinkEidtCard/index.d.ts +5 -0
  110. package/dist/packages/react/src/components/LocationCondition/index.d.ts +3 -0
  111. package/dist/packages/react/src/components/MessageBox/index.d.ts +9 -0
  112. package/dist/packages/react/src/components/NotationBoxes/index.d.ts +3 -0
  113. package/dist/packages/react/src/components/SVGDefines.d.ts +3 -0
  114. package/dist/packages/react/src/components/SVGIcon.d.ts +9 -0
  115. package/dist/packages/react/src/components/SearchReplace/index.d.ts +4 -0
  116. package/dist/packages/react/src/components/Sheet/index.d.ts +8 -0
  117. package/dist/packages/react/src/components/SheetList/SheetHiddenButton.d.ts +8 -0
  118. package/dist/packages/react/src/components/SheetList/SheetListItem.d.ts +9 -0
  119. package/dist/packages/react/src/components/SheetList/index.d.ts +4 -0
  120. package/dist/packages/react/src/components/SheetOverlay/ColumnHeader.d.ts +3 -0
  121. package/dist/packages/react/src/components/SheetOverlay/ContentEditable.d.ts +11 -0
  122. package/dist/packages/react/src/components/SheetOverlay/FormulaHint/index.d.ts +4 -0
  123. package/dist/packages/react/src/components/SheetOverlay/FormulaSearch/index.d.ts +4 -0
  124. package/dist/packages/react/src/components/SheetOverlay/InputBox.d.ts +3 -0
  125. package/dist/packages/react/src/components/SheetOverlay/RowHeader.d.ts +3 -0
  126. package/dist/packages/react/src/components/SheetOverlay/ScrollBar/index.d.ts +7 -0
  127. package/dist/packages/react/src/components/SheetOverlay/index.d.ts +4 -0
  128. package/dist/packages/react/src/components/SheetTab/SheetItem.d.ts +8 -0
  129. package/dist/packages/react/src/components/SheetTab/index.d.ts +4 -0
  130. package/dist/packages/react/src/components/SplitColumn/index.d.ts +3 -0
  131. package/dist/packages/react/src/components/Toolbar/Button.d.ts +11 -0
  132. package/dist/packages/react/src/components/Toolbar/ColorPicker.d.ts +6 -0
  133. package/dist/packages/react/src/components/Toolbar/Combo.d.ts +10 -0
  134. package/dist/packages/react/src/components/Toolbar/CustomBorder.d.ts +7 -0
  135. package/dist/packages/react/src/components/Toolbar/CustomButton.d.ts +11 -0
  136. package/dist/packages/react/src/components/Toolbar/CustomColor.d.ts +8 -0
  137. package/dist/packages/react/src/components/Toolbar/CustomIcon.d.ts +9 -0
  138. package/dist/packages/react/src/components/Toolbar/Divider.d.ts +4 -0
  139. package/dist/packages/react/src/components/Toolbar/MoreItemsContainer.d.ts +6 -0
  140. package/dist/packages/react/src/components/Toolbar/Select.d.ts +14 -0
  141. package/dist/packages/react/src/components/Toolbar/index.d.ts +7 -0
  142. package/dist/packages/react/src/components/Workbook/api.d.ts +121 -0
  143. package/dist/packages/react/src/components/Workbook/index.d.ts +130 -0
  144. package/dist/packages/react/src/components/ZoomControl/index.d.ts +4 -0
  145. package/dist/packages/react/src/components/index.d.ts +3 -0
  146. package/dist/packages/react/src/context/index.d.ts +25 -0
  147. package/dist/packages/react/src/context/modal.d.ts +10 -0
  148. package/dist/packages/react/src/hooks/useAlert.d.ts +4 -0
  149. package/dist/packages/react/src/hooks/useDialog.d.ts +5 -0
  150. package/dist/packages/react/src/hooks/useOutsideClick.d.ts +2 -0
  151. package/dist/packages/react/src/hooks/usePrevious.d.ts +2 -0
  152. package/dist/packages/react/src/index.d.ts +1 -0
  153. package/dist/stories/data/cell.d.ts +1180 -0
  154. package/dist/stories/data/dataVerification.d.ts +131 -0
  155. package/dist/stories/data/empty.d.ts +10 -0
  156. package/dist/stories/data/formula.d.ts +362 -0
  157. package/dist/stories/data/freeze.d.ts +34 -0
  158. package/dist/stories/data/protected.d.ts +40 -0
  159. package/dist/stories/utils.d.ts +1 -0
  160. package/package.json +6 -18
  161. package/LICENSE +0 -21
  162. package/es/error.js +0 -45
  163. package/es/evaluate-by-operator/evaluate-by-operator.js +0 -70
  164. package/es/evaluate-by-operator/operator/add.js +0 -16
  165. package/es/evaluate-by-operator/operator/ampersand.js +0 -10
  166. package/es/evaluate-by-operator/operator/divide.js +0 -21
  167. package/es/evaluate-by-operator/operator/equal.js +0 -5
  168. package/es/evaluate-by-operator/operator/formula-function.js +0 -40
  169. package/es/evaluate-by-operator/operator/greater-than-or-equal.js +0 -5
  170. package/es/evaluate-by-operator/operator/greater-than.js +0 -5
  171. package/es/evaluate-by-operator/operator/less-than-or-equal.js +0 -5
  172. package/es/evaluate-by-operator/operator/less-than.js +0 -5
  173. package/es/evaluate-by-operator/operator/minus.js +0 -16
  174. package/es/evaluate-by-operator/operator/multiply.js +0 -16
  175. package/es/evaluate-by-operator/operator/not-equal.js +0 -5
  176. package/es/evaluate-by-operator/operator/power.js +0 -11
  177. package/es/grammar-parser/grammar-parser.jison +0 -230
  178. package/es/helper/cell.js +0 -117
  179. package/es/helper/number.js +0 -25
  180. package/es/helper/string.js +0 -13
  181. package/es/parser.js +0 -306
  182. package/es/supported-formulas.js +0 -3
  183. package/lib/error.js +0 -53
  184. package/lib/evaluate-by-operator/evaluate-by-operator.js +0 -77
  185. package/lib/evaluate-by-operator/operator/add.js +0 -23
  186. package/lib/evaluate-by-operator/operator/ampersand.js +0 -17
  187. package/lib/evaluate-by-operator/operator/divide.js +0 -28
  188. package/lib/evaluate-by-operator/operator/equal.js +0 -12
  189. package/lib/evaluate-by-operator/operator/formula-function.js +0 -51
  190. package/lib/evaluate-by-operator/operator/greater-than-or-equal.js +0 -12
  191. package/lib/evaluate-by-operator/operator/greater-than.js +0 -12
  192. package/lib/evaluate-by-operator/operator/less-than-or-equal.js +0 -12
  193. package/lib/evaluate-by-operator/operator/less-than.js +0 -12
  194. package/lib/evaluate-by-operator/operator/minus.js +0 -23
  195. package/lib/evaluate-by-operator/operator/multiply.js +0 -23
  196. package/lib/evaluate-by-operator/operator/not-equal.js +0 -12
  197. package/lib/evaluate-by-operator/operator/power.js +0 -18
  198. package/lib/grammar-parser/grammar-parser.jison +0 -230
  199. package/lib/helper/cell.js +0 -128
  200. package/lib/helper/number.js +0 -32
  201. package/lib/helper/string.js +0 -19
  202. package/lib/index.js +0 -115
  203. package/lib/parser.js +0 -314
  204. package/lib/supported-formulas.js +0 -12
@@ -0,0 +1,121 @@
1
+ import { api, Cell, Context, Op, Range, Selection, Presence, Settings, SingleRange, Sheet, CellMatrix, CellWithRowAndCol } from "@leankylin-sheet/core";
2
+ import { RefValues, SetContextOptions } from "../../context";
3
+ export declare function generateAPIs(context: Context, setContext: (recipe: (ctx: Context) => void, options?: SetContextOptions) => void, handleUndo: () => void, handleRedo: () => void, settings: Required<Settings>, cellInput: HTMLDivElement | null, scrollbarX: HTMLDivElement | null, scrollbarY: HTMLDivElement | null, refs: RefValues): {
4
+ scrollToHighlightCell: (r: number, c: number, selected: number) => void;
5
+ getRefs: () => RefValues;
6
+ setCellOptions: (cellOptions: Context["cellOptions"]) => void;
7
+ applyOp: (ops: Op[]) => void;
8
+ createFilter: () => void;
9
+ getCellValue: (row: number, column: number, options?: api.CommonOptions & {
10
+ type?: keyof Cell;
11
+ }) => any;
12
+ setCellValue: (row: number, column: number, value: any, options?: api.CommonOptions & {
13
+ type?: keyof Cell;
14
+ }) => void;
15
+ clearCell: (row: number, column: number, options?: api.CommonOptions) => void;
16
+ setCellFormat: (row: number, column: number, attr: keyof Cell, value: any, options?: api.CommonOptions) => void;
17
+ autoFillCell: (copyRange: SingleRange, applyRange: SingleRange, direction: "up" | "down" | "left" | "right") => void;
18
+ freeze: (type: "row" | "column" | "both", range: {
19
+ row: number;
20
+ column: number;
21
+ }, options?: api.CommonOptions) => void;
22
+ insertRowOrColumn: (type: "row" | "column", index: number, count: number, direction?: "lefttop" | "rightbottom", options?: api.CommonOptions) => void;
23
+ deleteRowOrColumn: (type: "row" | "column", start: number, end: number, options?: api.CommonOptions) => void;
24
+ setRowHeight: (rowInfo: Record<string, number>, options?: api.CommonOptions, custom?: boolean) => void;
25
+ setColHidden: (colHidden: Record<string, number>, options?: api.CommonOptions) => void;
26
+ setRowHidden: (colHidden: Record<string, number>, options?: api.CommonOptions) => void;
27
+ setColumnWidth: (columnInfo: Record<string, number>, options?: api.CommonOptions, custom?: boolean) => void;
28
+ getRowHeight: (rows: number[], options?: api.CommonOptions) => Record<number, number>;
29
+ getColumnWidth: (columns: number[], options?: api.CommonOptions) => Record<number, number>;
30
+ getSelection: () => {
31
+ row: number[];
32
+ column: number[];
33
+ }[] | undefined;
34
+ getFlattenRange: (range: Range) => {
35
+ r: number;
36
+ c: number;
37
+ }[];
38
+ getCellsByFlattenRange: (range?: {
39
+ r: number;
40
+ c: number;
41
+ }[]) => (Cell | null)[];
42
+ getSelectionCoordinates: () => string[];
43
+ getCellsByRange: (range: Selection, options?: api.CommonOptions) => (Cell | null)[][];
44
+ getHtmlByRange: (range: Range, options?: api.CommonOptions) => string | null;
45
+ setSelection: (range: Range, options?: api.CommonOptions) => void;
46
+ setCellValuesByRange: (data: any[][], range: SingleRange, options?: api.CommonOptions) => void;
47
+ setCellFormatByRange: (attr: keyof Cell, value: any, range: Range | SingleRange, options?: api.CommonOptions) => void;
48
+ mergeCells: (ranges: Range, type: string, options?: api.CommonOptions) => void;
49
+ cancelMerge: (ranges: Range, options?: api.CommonOptions) => void;
50
+ getAllSheets: () => Sheet[];
51
+ getSheet: (options?: api.CommonOptions) => {
52
+ celldata: CellWithRowAndCol[];
53
+ name: string;
54
+ config?: import("@leankylin-sheet/core").SheetConfig | undefined;
55
+ order?: number | undefined;
56
+ color?: string | undefined;
57
+ data?: CellMatrix | undefined;
58
+ id?: string | undefined;
59
+ images?: import("@leankylin-sheet/core").Image[] | undefined;
60
+ zoomRatio?: number | undefined;
61
+ column?: number | undefined;
62
+ row?: number | undefined;
63
+ addRows?: number | undefined;
64
+ status?: number | undefined;
65
+ hide?: number | undefined;
66
+ luckysheet_select_save?: Selection[] | undefined;
67
+ luckysheet_selection_range?: {
68
+ row: number[];
69
+ column: number[];
70
+ }[] | undefined;
71
+ calcChain?: any[] | undefined;
72
+ defaultRowHeight?: number | undefined;
73
+ defaultColWidth?: number | undefined;
74
+ showGridLines?: number | boolean | undefined;
75
+ pivotTable?: any;
76
+ isPivotTable?: boolean | undefined;
77
+ filter?: Record<string, any> | undefined;
78
+ filter_select?: {
79
+ row: number[];
80
+ column: number[];
81
+ } | undefined;
82
+ luckysheet_conditionformat_save?: any[] | undefined;
83
+ luckysheet_alternateformat_save?: any[] | undefined;
84
+ dataVerification?: any;
85
+ hyperlink?: Record<string, {
86
+ linkType: string;
87
+ linkAddress: string;
88
+ }> | undefined;
89
+ dynamicArray_compute?: any;
90
+ dynamicArray?: any[] | undefined;
91
+ frozen?: {
92
+ type: "column" | "row" | "both" | "rangeRow" | "rangeColumn" | "rangeBoth";
93
+ range?: {
94
+ row_focus: number;
95
+ column_focus: number;
96
+ } | undefined;
97
+ } | undefined;
98
+ };
99
+ addSheet: () => void;
100
+ deleteSheet: (options?: api.CommonOptions) => void;
101
+ updateSheet: (data: Sheet[]) => void;
102
+ activateSheet: (options?: api.CommonOptions) => void;
103
+ setSheetName: (name: string, options?: api.CommonOptions) => void;
104
+ setSheetOrder: (orderList: Record<string, number>) => void;
105
+ scroll: (options: {
106
+ scrollLeft?: number;
107
+ scrollTop?: number;
108
+ targetRow?: number;
109
+ targetColumn?: number;
110
+ }) => void;
111
+ addPresences: (newPresences: Presence[]) => void;
112
+ removePresences: (arr: {
113
+ username: string;
114
+ userId?: string;
115
+ }[]) => void;
116
+ handleUndo: () => void;
117
+ handleRedo: () => void;
118
+ calculateFormula: () => void;
119
+ dataToCelldata: (data: CellMatrix | undefined) => CellWithRowAndCol[];
120
+ celldataToData: (celldata: CellWithRowAndCol[], rowCount?: number, colCount?: number) => CellMatrix | null;
121
+ };
@@ -0,0 +1,130 @@
1
+ import { Settings, CellWithRowAndCol, Sheet as SheetType, Op, CellMatrix } from "@leankylin-sheet/core";
2
+ import React from "react";
3
+ import "./index.css";
4
+ import { RefValues } from "../../context";
5
+ import { generateAPIs } from "./api";
6
+ export type WorkbookInstance = ReturnType<typeof generateAPIs>;
7
+ type AdditionalProps = {
8
+ onChange?: (data: SheetType[]) => void;
9
+ onOp?: (op: Op[]) => void;
10
+ };
11
+ declare const Workbook: React.ForwardRefExoticComponent<Settings & AdditionalProps & React.RefAttributes<{
12
+ scrollToHighlightCell: (r: number, c: number, selected: number) => void;
13
+ getRefs: () => RefValues;
14
+ setCellOptions: (cellOptions: import("@leankylin-sheet/core").CellOptions) => void;
15
+ applyOp: (ops: Op[]) => void;
16
+ createFilter: () => void;
17
+ getCellValue: (row: number, column: number, options?: import("../../../../core/src/api").CommonOptions & {
18
+ type?: "mc" | "v" | "m" | "f" | "ct" | "qp" | "spl" | "bg" | "lo" | "rt" | "ps" | "hl" | keyof import("@leankylin-sheet/core").CellStyle | undefined;
19
+ }) => any;
20
+ setCellValue: (row: number, column: number, value: any, options?: import("../../../../core/src/api").CommonOptions & {
21
+ type?: "mc" | "v" | "m" | "f" | "ct" | "qp" | "spl" | "bg" | "lo" | "rt" | "ps" | "hl" | keyof import("@leankylin-sheet/core").CellStyle | undefined;
22
+ }) => void;
23
+ clearCell: (row: number, column: number, options?: import("../../../../core/src/api").CommonOptions) => void;
24
+ setCellFormat: (row: number, column: number, attr: "mc" | "v" | "m" | "f" | "ct" | "qp" | "spl" | "bg" | "lo" | "rt" | "ps" | "hl" | keyof import("@leankylin-sheet/core").CellStyle, value: any, options?: import("../../../../core/src/api").CommonOptions) => void;
25
+ autoFillCell: (copyRange: import("@leankylin-sheet/core").SingleRange, applyRange: import("@leankylin-sheet/core").SingleRange, direction: "up" | "down" | "left" | "right") => void;
26
+ freeze: (type: "column" | "row" | "both", range: {
27
+ row: number;
28
+ column: number;
29
+ }, options?: import("../../../../core/src/api").CommonOptions) => void;
30
+ insertRowOrColumn: (type: "column" | "row", index: number, count: number, direction?: "lefttop" | "rightbottom", options?: import("../../../../core/src/api").CommonOptions) => void;
31
+ deleteRowOrColumn: (type: "column" | "row", start: number, end: number, options?: import("../../../../core/src/api").CommonOptions) => void;
32
+ setRowHeight: (rowInfo: Record<string, number>, options?: import("../../../../core/src/api").CommonOptions, custom?: boolean) => void;
33
+ setColHidden: (colHidden: Record<string, number>, options?: import("../../../../core/src/api").CommonOptions) => void;
34
+ setRowHidden: (colHidden: Record<string, number>, options?: import("../../../../core/src/api").CommonOptions) => void;
35
+ setColumnWidth: (columnInfo: Record<string, number>, options?: import("../../../../core/src/api").CommonOptions, custom?: boolean) => void;
36
+ getRowHeight: (rows: number[], options?: import("../../../../core/src/api").CommonOptions) => Record<number, number>;
37
+ getColumnWidth: (columns: number[], options?: import("../../../../core/src/api").CommonOptions) => Record<number, number>;
38
+ getSelection: () => {
39
+ row: number[];
40
+ column: number[];
41
+ }[] | undefined;
42
+ getFlattenRange: (range: import("@leankylin-sheet/core").Range) => {
43
+ r: number;
44
+ c: number;
45
+ }[];
46
+ getCellsByFlattenRange: (range?: {
47
+ r: number;
48
+ c: number;
49
+ }[] | undefined) => (import("@leankylin-sheet/core").Cell | null)[];
50
+ getSelectionCoordinates: () => string[];
51
+ getCellsByRange: (range: import("@leankylin-sheet/core").Selection, options?: import("../../../../core/src/api").CommonOptions) => (import("@leankylin-sheet/core").Cell | null)[][];
52
+ getHtmlByRange: (range: import("@leankylin-sheet/core").Range, options?: import("../../../../core/src/api").CommonOptions) => string | null;
53
+ setSelection: (range: import("@leankylin-sheet/core").Range, options?: import("../../../../core/src/api").CommonOptions) => void;
54
+ setCellValuesByRange: (data: any[][], range: import("@leankylin-sheet/core").SingleRange, options?: import("../../../../core/src/api").CommonOptions) => void;
55
+ setCellFormatByRange: (attr: "mc" | "v" | "m" | "f" | "ct" | "qp" | "spl" | "bg" | "lo" | "rt" | "ps" | "hl" | keyof import("@leankylin-sheet/core").CellStyle, value: any, range: import("@leankylin-sheet/core").SingleRange | import("@leankylin-sheet/core").Range, options?: import("../../../../core/src/api").CommonOptions) => void;
56
+ mergeCells: (ranges: import("@leankylin-sheet/core").Range, type: string, options?: import("../../../../core/src/api").CommonOptions) => void;
57
+ cancelMerge: (ranges: import("@leankylin-sheet/core").Range, options?: import("../../../../core/src/api").CommonOptions) => void;
58
+ getAllSheets: () => SheetType[];
59
+ getSheet: (options?: import("../../../../core/src/api").CommonOptions) => {
60
+ celldata: CellWithRowAndCol[];
61
+ name: string;
62
+ config?: import("@leankylin-sheet/core").SheetConfig | undefined;
63
+ order?: number | undefined;
64
+ color?: string | undefined;
65
+ data?: CellMatrix | undefined;
66
+ id?: string | undefined;
67
+ images?: import("@leankylin-sheet/core").Image[] | undefined;
68
+ zoomRatio?: number | undefined;
69
+ column?: number | undefined;
70
+ row?: number | undefined;
71
+ addRows?: number | undefined;
72
+ status?: number | undefined;
73
+ hide?: number | undefined;
74
+ luckysheet_select_save?: import("@leankylin-sheet/core").Selection[] | undefined;
75
+ luckysheet_selection_range?: {
76
+ row: number[];
77
+ column: number[];
78
+ }[] | undefined;
79
+ calcChain?: any[] | undefined;
80
+ defaultRowHeight?: number | undefined;
81
+ defaultColWidth?: number | undefined;
82
+ showGridLines?: number | boolean | undefined;
83
+ pivotTable?: any;
84
+ isPivotTable?: boolean | undefined;
85
+ filter?: Record<string, any> | undefined;
86
+ filter_select?: {
87
+ row: number[];
88
+ column: number[];
89
+ } | undefined;
90
+ luckysheet_conditionformat_save?: any[] | undefined;
91
+ luckysheet_alternateformat_save?: any[] | undefined;
92
+ dataVerification?: any;
93
+ hyperlink?: Record<string, {
94
+ linkType: string;
95
+ linkAddress: string;
96
+ }> | undefined;
97
+ dynamicArray_compute?: any;
98
+ dynamicArray?: any[] | undefined;
99
+ frozen?: {
100
+ type: "column" | "row" | "both" | "rangeRow" | "rangeColumn" | "rangeBoth";
101
+ range?: {
102
+ row_focus: number;
103
+ column_focus: number;
104
+ } | undefined;
105
+ } | undefined;
106
+ };
107
+ addSheet: () => void;
108
+ deleteSheet: (options?: import("../../../../core/src/api").CommonOptions) => void;
109
+ updateSheet: (data: SheetType[]) => void;
110
+ activateSheet: (options?: import("../../../../core/src/api").CommonOptions) => void;
111
+ setSheetName: (name: string, options?: import("../../../../core/src/api").CommonOptions) => void;
112
+ setSheetOrder: (orderList: Record<string, number>) => void;
113
+ scroll: (options: {
114
+ scrollLeft?: number | undefined;
115
+ scrollTop?: number | undefined;
116
+ targetRow?: number | undefined;
117
+ targetColumn?: number | undefined;
118
+ }) => void;
119
+ addPresences: (newPresences: import("@leankylin-sheet/core").Presence[]) => void;
120
+ removePresences: (arr: {
121
+ username: string;
122
+ userId?: string | undefined;
123
+ }[]) => void;
124
+ handleUndo: () => void;
125
+ handleRedo: () => void;
126
+ calculateFormula: () => void;
127
+ dataToCelldata: (data: CellMatrix | undefined) => CellWithRowAndCol[];
128
+ celldataToData: (celldata: CellWithRowAndCol[], rowCount?: number | undefined, colCount?: number | undefined) => CellMatrix | null;
129
+ }>>;
130
+ export default Workbook;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ declare const ZoomControl: React.FC;
4
+ export default ZoomControl;
@@ -0,0 +1,3 @@
1
+ import Workbook from "./Workbook";
2
+ export { Workbook };
3
+ export type { WorkbookInstance } from "./Workbook";
@@ -0,0 +1,25 @@
1
+ import React from "react";
2
+ import { Context, Settings, GlobalCache, PatchOptions } from "@leankylin-sheet/core";
3
+ export type RefValues = {
4
+ globalCache: GlobalCache;
5
+ cellInput: React.MutableRefObject<HTMLDivElement | null>;
6
+ fxInput: React.MutableRefObject<HTMLDivElement | null>;
7
+ canvas: React.MutableRefObject<HTMLCanvasElement | null>;
8
+ scrollbarX: React.MutableRefObject<HTMLDivElement | null>;
9
+ scrollbarY: React.MutableRefObject<HTMLDivElement | null>;
10
+ cellArea: React.MutableRefObject<HTMLDivElement | null>;
11
+ workbookContainer: React.MutableRefObject<HTMLDivElement | null>;
12
+ };
13
+ export type SetContextOptions = {
14
+ noHistory?: boolean;
15
+ logPatch?: boolean;
16
+ } & PatchOptions;
17
+ declare const WorkbookContext: React.Context<{
18
+ context: Context;
19
+ setContext: (recipe: (ctx: Context) => void, options?: SetContextOptions) => void;
20
+ settings: Required<Settings>;
21
+ refs: RefValues;
22
+ handleUndo: () => void;
23
+ handleRedo: () => void;
24
+ }>;
25
+ export default WorkbookContext;
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ declare const ModalContext: React.Context<{
3
+ component: React.ReactNode;
4
+ showModal: (c: React.ReactNode) => void;
5
+ hideModal: () => void;
6
+ }>;
7
+ declare const ModalProvider: React.FC<{
8
+ children?: React.ReactNode;
9
+ }>;
10
+ export { ModalContext, ModalProvider };
@@ -0,0 +1,4 @@
1
+ export declare function useAlert(): {
2
+ showAlert: (message: string, type?: "ok" | "yesno", onOk?: () => void, onCancel?: () => void) => void;
3
+ hideAlert: () => void;
4
+ };
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export declare function useDialog(): {
3
+ showDialog: (content: string | React.ReactNode, type?: "ok" | "yesno", onOk?: () => void, onCancel?: () => void) => void;
4
+ hideDialog: () => void;
5
+ };
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare function useOutsideClick(containerRef: React.RefObject<HTMLElement>, handler: () => void, deps?: React.DependencyList): void;
@@ -0,0 +1,2 @@
1
+ declare function usePrevious<T>(value: T): T | undefined;
2
+ export default usePrevious;
@@ -0,0 +1 @@
1
+ export * from "./components";