@univerjs/sheets-formula-ui 1.0.0-alpha.7 → 1.0.0-alpha.8
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.
- package/lib/cjs/index.js +57 -53
- package/lib/es/index.js +51 -47
- package/lib/index.js +51 -47
- package/lib/types/services/prompt.service.d.ts +1 -2
- package/lib/types/views/formula-editor/hooks/use-formula-search.d.ts +1 -2
- package/lib/types/views/formula-editor/hooks/use-highlight.d.ts +1 -1
- package/lib/types/views/formula-editor/index.d.ts +1 -1
- package/lib/umd/index.js +4 -4
- package/package.json +13 -15
package/lib/cjs/index.js
CHANGED
|
@@ -9,12 +9,10 @@ let _univerjs_sheets = require("@univerjs/sheets");
|
|
|
9
9
|
let _univerjs_sheets_formula = require("@univerjs/sheets-formula");
|
|
10
10
|
let _univerjs_ui = require("@univerjs/ui");
|
|
11
11
|
let _univerjs_docs = require("@univerjs/docs");
|
|
12
|
-
let _univerjs_formula = require("@univerjs/formula");
|
|
13
12
|
let _univerjs_icons = require("@univerjs/icons");
|
|
14
13
|
let _univerjs_design = require("@univerjs/design");
|
|
15
14
|
let react = require("react");
|
|
16
15
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
17
|
-
let _univerjs_formula_ui = require("@univerjs/formula-ui");
|
|
18
16
|
let rxjs_operators = require("rxjs/operators");
|
|
19
17
|
|
|
20
18
|
//#region src/commands/commands/formula-clipboard.command.ts
|
|
@@ -34,7 +32,7 @@ const SheetOnlyPasteFormulaCommand = {
|
|
|
34
32
|
};
|
|
35
33
|
|
|
36
34
|
//#endregion
|
|
37
|
-
//#region \0@oxc-project+runtime@0.
|
|
35
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/typeof.js
|
|
38
36
|
function _typeof(o) {
|
|
39
37
|
"@babel/helpers - typeof";
|
|
40
38
|
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
|
|
@@ -45,7 +43,7 @@ function _typeof(o) {
|
|
|
45
43
|
}
|
|
46
44
|
|
|
47
45
|
//#endregion
|
|
48
|
-
//#region \0@oxc-project+runtime@0.
|
|
46
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPrimitive.js
|
|
49
47
|
function toPrimitive(t, r) {
|
|
50
48
|
if ("object" != _typeof(t) || !t) return t;
|
|
51
49
|
var e = t[Symbol.toPrimitive];
|
|
@@ -58,14 +56,14 @@ function toPrimitive(t, r) {
|
|
|
58
56
|
}
|
|
59
57
|
|
|
60
58
|
//#endregion
|
|
61
|
-
//#region \0@oxc-project+runtime@0.
|
|
59
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPropertyKey.js
|
|
62
60
|
function toPropertyKey(t) {
|
|
63
61
|
var i = toPrimitive(t, "string");
|
|
64
62
|
return "symbol" == _typeof(i) ? i : i + "";
|
|
65
63
|
}
|
|
66
64
|
|
|
67
65
|
//#endregion
|
|
68
|
-
//#region \0@oxc-project+runtime@0.
|
|
66
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/defineProperty.js
|
|
69
67
|
function _defineProperty(e, r, t) {
|
|
70
68
|
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
|
|
71
69
|
value: t,
|
|
@@ -76,7 +74,7 @@ function _defineProperty(e, r, t) {
|
|
|
76
74
|
}
|
|
77
75
|
|
|
78
76
|
//#endregion
|
|
79
|
-
//#region \0@oxc-project+runtime@0.
|
|
77
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/decorateParam.js
|
|
80
78
|
function __decorateParam(paramIndex, decorator) {
|
|
81
79
|
return function(target, key) {
|
|
82
80
|
decorator(target, key, paramIndex);
|
|
@@ -84,7 +82,7 @@ function __decorateParam(paramIndex, decorator) {
|
|
|
84
82
|
}
|
|
85
83
|
|
|
86
84
|
//#endregion
|
|
87
|
-
//#region \0@oxc-project+runtime@0.
|
|
85
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/decorate.js
|
|
88
86
|
function __decorate(decorators, target, key, desc) {
|
|
89
87
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
90
88
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -330,7 +328,8 @@ const InsertFunctionOperation = {
|
|
|
330
328
|
editColumn = column;
|
|
331
329
|
return true;
|
|
332
330
|
}
|
|
333
|
-
const
|
|
331
|
+
const rangeString = (0, _univerjs_engine_formula.serializeRange)(refRange);
|
|
332
|
+
const formulaString = `=${value}(${rangeString})`;
|
|
334
333
|
list.push({
|
|
335
334
|
range,
|
|
336
335
|
primary: {
|
|
@@ -343,12 +342,13 @@ const InsertFunctionOperation = {
|
|
|
343
342
|
const { startRow, startColumn, endRow, endColumn } = range;
|
|
344
343
|
if (startRow === endRow) {
|
|
345
344
|
const blankCellColumn = findBlankCellOfRow(cellMatrix, startRow, endColumn, worksheet.getColumnCount() - 1);
|
|
346
|
-
const
|
|
345
|
+
const rangeString = (0, _univerjs_engine_formula.serializeRange)({
|
|
347
346
|
startRow,
|
|
348
347
|
endRow,
|
|
349
348
|
startColumn,
|
|
350
349
|
endColumn: blankCellColumn === endColumn ? endColumn - 1 : endColumn
|
|
351
|
-
})
|
|
350
|
+
});
|
|
351
|
+
const formulaString = `=${value}(${rangeString})`;
|
|
352
352
|
listOfRangeHasNumber.push({
|
|
353
353
|
range,
|
|
354
354
|
primary: {
|
|
@@ -365,12 +365,13 @@ const InsertFunctionOperation = {
|
|
|
365
365
|
}
|
|
366
366
|
const newEndRow = maxBlankCellRow === endRow ? endRow - 1 : endRow;
|
|
367
367
|
for (let c = startColumn; c <= endColumn; c++) {
|
|
368
|
-
const
|
|
368
|
+
const rangeString = (0, _univerjs_engine_formula.serializeRange)({
|
|
369
369
|
startRow,
|
|
370
370
|
endRow: newEndRow,
|
|
371
371
|
startColumn: c,
|
|
372
372
|
endColumn: c
|
|
373
|
-
})
|
|
373
|
+
});
|
|
374
|
+
const formulaString = `=${value}(${rangeString})`;
|
|
374
375
|
listOfRangeHasNumber.push({
|
|
375
376
|
range,
|
|
376
377
|
primary: {
|
|
@@ -746,7 +747,7 @@ let FormulaReorderController = class FormulaReorderController extends _univerjs_
|
|
|
746
747
|
const redos = [];
|
|
747
748
|
const undos = [];
|
|
748
749
|
const { unitId, subUnitId, range, order } = params;
|
|
749
|
-
const workbook = this._univerInstanceService.
|
|
750
|
+
const workbook = this._univerInstanceService.getUnit(unitId, _univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
750
751
|
const worksheet = workbook === null || workbook === void 0 ? void 0 : workbook.getSheetBySheetId(subUnitId);
|
|
751
752
|
if (!worksheet) return {
|
|
752
753
|
redos,
|
|
@@ -824,7 +825,7 @@ function InsertCommonFunctionMenuItemFactory(accessor) {
|
|
|
824
825
|
value: name
|
|
825
826
|
}));
|
|
826
827
|
try {
|
|
827
|
-
const descriptionService = accessor.get(
|
|
828
|
+
const descriptionService = accessor.get(_univerjs_engine_formula.IDescriptionService);
|
|
828
829
|
const filtered = commonFunctions.filter((name) => Boolean(descriptionService.getFunctionInfo(name)));
|
|
829
830
|
if (filtered.length > 0) selections = filtered.map((name) => ({
|
|
830
831
|
label: {
|
|
@@ -849,7 +850,7 @@ function createInsertFunctionCategoryMenuItemFactory(functionType, categoryKey,
|
|
|
849
850
|
return function insertFunctionCategoryMenuItemFactory(accessor) {
|
|
850
851
|
let selections = [];
|
|
851
852
|
try {
|
|
852
|
-
selections = accessor.get(
|
|
853
|
+
selections = accessor.get(_univerjs_engine_formula.IDescriptionService).getSearchListByType(functionType).map(({ name }) => ({
|
|
853
854
|
label: {
|
|
854
855
|
name,
|
|
855
856
|
selectable: false
|
|
@@ -995,7 +996,7 @@ const menuSchema = {
|
|
|
995
996
|
//#endregion
|
|
996
997
|
//#region package.json
|
|
997
998
|
var name = "@univerjs/sheets-formula-ui";
|
|
998
|
-
var version = "1.0.0-alpha.
|
|
999
|
+
var version = "1.0.0-alpha.8";
|
|
999
1000
|
|
|
1000
1001
|
//#endregion
|
|
1001
1002
|
//#region src/config/config.ts
|
|
@@ -1294,7 +1295,7 @@ const useStateRef = (value) => {
|
|
|
1294
1295
|
//#region src/views/formula-editor/hooks/use-formula-describe.ts
|
|
1295
1296
|
const useFormulaDescribe = (isNeed, formulaText, editor) => {
|
|
1296
1297
|
const formulaPromptService = (0, _univerjs_ui.useDependency)(IFormulaPromptService);
|
|
1297
|
-
const descriptionService = (0, _univerjs_ui.useDependency)(
|
|
1298
|
+
const descriptionService = (0, _univerjs_ui.useDependency)(_univerjs_engine_formula.IDescriptionService);
|
|
1298
1299
|
const lexerTreeBuilder = (0, _univerjs_ui.useDependency)(_univerjs_engine_formula.LexerTreeBuilder);
|
|
1299
1300
|
const [functionInfo, setFunctionInfo] = (0, react.useState)();
|
|
1300
1301
|
const [paramIndex, setParamIndex] = (0, react.useState)(-1);
|
|
@@ -1322,14 +1323,16 @@ const useFormulaDescribe = (isNeed, formulaText, editor) => {
|
|
|
1322
1323
|
const currentSequenceNode = formulaPromptService.getCurrentSequenceNodeByIndex(nodeIndex);
|
|
1323
1324
|
const nextSequenceNode = formulaPromptService.getCurrentSequenceNodeByIndex(nodeIndex + 1);
|
|
1324
1325
|
if (currentSequenceNode) if (typeof currentSequenceNode !== "string" && currentSequenceNode.nodeType === 3 && !descriptionService.hasDefinedNameDescription(currentSequenceNode.token.trim()) && nextSequenceNode === _univerjs_engine_formula.matchToken.OPEN_BRACKET) {
|
|
1325
|
-
|
|
1326
|
+
const info = descriptionService.getFunctionInfo(currentSequenceNode.token);
|
|
1327
|
+
setFunctionInfo(info);
|
|
1326
1328
|
setParamIndex(-1);
|
|
1327
1329
|
return;
|
|
1328
1330
|
} else {
|
|
1329
1331
|
const res = lexerTreeBuilder.getFunctionAndParameter(`${formulaTextRef.current}A`, startOffset - 1);
|
|
1330
1332
|
if (res) {
|
|
1331
1333
|
const { functionName, paramIndex } = res;
|
|
1332
|
-
|
|
1334
|
+
const info = descriptionService.getFunctionInfo(functionName);
|
|
1335
|
+
setFunctionInfo(info);
|
|
1333
1336
|
setParamIndex(paramIndex);
|
|
1334
1337
|
return;
|
|
1335
1338
|
}
|
|
@@ -1934,8 +1937,8 @@ function useFormulaSelecting(opts) {
|
|
|
1934
1937
|
const { editor, editorId, isFocus, disableOnClick, unitId, subUnitId } = opts;
|
|
1935
1938
|
const renderManagerService = (0, _univerjs_ui.useDependency)(_univerjs_engine_render.IRenderManagerService);
|
|
1936
1939
|
const univerInstanceService = (0, _univerjs_ui.useDependency)(_univerjs_core.IUniverInstanceService);
|
|
1937
|
-
const sheetRenderer = renderManagerService.
|
|
1938
|
-
const renderer = renderManagerService.
|
|
1940
|
+
const sheetRenderer = renderManagerService.getRenderUnitById(unitId);
|
|
1941
|
+
const renderer = renderManagerService.getRenderUnitById(editorId);
|
|
1939
1942
|
const docSelectionRenderService = renderer === null || renderer === void 0 ? void 0 : renderer.with(_univerjs_docs_ui.DocSelectionRenderService);
|
|
1940
1943
|
const docSelectionManagerService = (0, _univerjs_ui.useDependency)(_univerjs_docs.DocSelectionManagerService);
|
|
1941
1944
|
const injector = (0, _univerjs_ui.useDependency)(_univerjs_core.Injector);
|
|
@@ -2164,7 +2167,7 @@ function useSheetHighlight(unitId, subUnitId) {
|
|
|
2164
2167
|
const themeService = (0, _univerjs_ui.useDependency)(_univerjs_core.ThemeService);
|
|
2165
2168
|
const refSelectionsService = (0, _univerjs_ui.useDependency)(_univerjs_sheets.IRefSelectionsService);
|
|
2166
2169
|
const renderManagerService = (0, _univerjs_ui.useDependency)(_univerjs_engine_render.IRenderManagerService);
|
|
2167
|
-
const ownerRender = renderManagerService.
|
|
2170
|
+
const ownerRender = renderManagerService.getRenderUnitById(unitId);
|
|
2168
2171
|
const ownerRefSelectionsRenderService = ownerRender === null || ownerRender === void 0 ? void 0 : ownerRender.with(RefSelectionsRenderService);
|
|
2169
2172
|
const getHighlightWorkbook = (0, _univerjs_ui.useEvent)((refSelections) => {
|
|
2170
2173
|
const ownerWorkbook = univerInstanceService.getUnit(unitId, _univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
@@ -2176,7 +2179,7 @@ function useSheetHighlight(unitId, subUnitId) {
|
|
|
2176
2179
|
var _currentWorkbook$getA;
|
|
2177
2180
|
const currentWorkbook = getHighlightWorkbook(refSelections);
|
|
2178
2181
|
if (!currentWorkbook) return;
|
|
2179
|
-
const currentRender = renderManagerService.
|
|
2182
|
+
const currentRender = renderManagerService.getRenderUnitById(currentWorkbook.getUnitId());
|
|
2180
2183
|
const refSelectionsRenderService = currentRender === null || currentRender === void 0 ? void 0 : currentRender.with(RefSelectionsRenderService);
|
|
2181
2184
|
const sheetSelectionRenderService = currentRender === null || currentRender === void 0 ? void 0 : currentRender.with(_univerjs_sheets_ui.ISheetSelectionRenderService);
|
|
2182
2185
|
const sheetSkeletonManagerService = currentRender === null || currentRender === void 0 ? void 0 : currentRender.with(_univerjs_sheets_ui.SheetSkeletonManagerService);
|
|
@@ -2208,7 +2211,7 @@ function useSheetHighlight(unitId, subUnitId) {
|
|
|
2208
2211
|
return highlightSheet;
|
|
2209
2212
|
}
|
|
2210
2213
|
function useDocHight(_leadingCharacter = "") {
|
|
2211
|
-
const descriptionService = (0, _univerjs_ui.useDependency)(
|
|
2214
|
+
const descriptionService = (0, _univerjs_ui.useDependency)(_univerjs_engine_formula.IDescriptionService);
|
|
2212
2215
|
const colorMap = useColor();
|
|
2213
2216
|
const commandService = (0, _univerjs_ui.useDependency)(_univerjs_core.ICommandService);
|
|
2214
2217
|
const leadingCharacterLength = (0, react.useMemo)(() => _leadingCharacter.length, [_leadingCharacter]);
|
|
@@ -2232,7 +2235,7 @@ function useDocHight(_leadingCharacter = "") {
|
|
|
2232
2235
|
e.ed = e.ed + leadingCharacterLength;
|
|
2233
2236
|
e.st = e.st + leadingCharacterLength;
|
|
2234
2237
|
});
|
|
2235
|
-
const highlightDataStream = getFormulaHighlightDataStream(_leadingCharacter, sequenceNodes, sourceText);
|
|
2238
|
+
const highlightDataStream = (0, _univerjs_engine_formula.getFormulaHighlightDataStream)(_leadingCharacter, sequenceNodes, sourceText);
|
|
2236
2239
|
const highlightTextRuns = [{
|
|
2237
2240
|
st: 0,
|
|
2238
2241
|
ed: 1,
|
|
@@ -2267,9 +2270,6 @@ function createFormulaHighlightBody(dataStream, textRuns) {
|
|
|
2267
2270
|
textRuns
|
|
2268
2271
|
};
|
|
2269
2272
|
}
|
|
2270
|
-
function getFormulaHighlightDataStream(leadingCharacter, sequenceNodes, sourceText) {
|
|
2271
|
-
return (0, _univerjs_formula_ui.getFormulaHighlightDataStream)(leadingCharacter, sequenceNodes, sourceText);
|
|
2272
|
-
}
|
|
2273
2273
|
function useColor() {
|
|
2274
2274
|
const themeService = (0, _univerjs_ui.useDependency)(_univerjs_core.ThemeService);
|
|
2275
2275
|
return (0, react.useMemo)(() => {
|
|
@@ -2295,7 +2295,7 @@ function useColor() {
|
|
|
2295
2295
|
}, [themeService.getCurrentTheme()]);
|
|
2296
2296
|
}
|
|
2297
2297
|
function buildTextRuns(descriptionService, colorMap, sequenceNodes) {
|
|
2298
|
-
return (0,
|
|
2298
|
+
return (0, _univerjs_engine_formula.buildFormulaTextRuns)(descriptionService, colorMap, sequenceNodes);
|
|
2299
2299
|
}
|
|
2300
2300
|
|
|
2301
2301
|
//#endregion
|
|
@@ -2478,7 +2478,7 @@ const useRefactorEffect = (isNeed, selecting, unitId, editorId, disableContextMe
|
|
|
2478
2478
|
const refSelectionsService = (0, _univerjs_ui.useDependency)(_univerjs_sheets.IRefSelectionsService);
|
|
2479
2479
|
const univerInstanceService = (0, _univerjs_ui.useDependency)(_univerjs_core.IUniverInstanceService);
|
|
2480
2480
|
const currentUnit = (0, _univerjs_ui.useObservable)((0, react.useMemo)(() => univerInstanceService.getCurrentTypeOfUnit$(_univerjs_core.UniverInstanceType.UNIVER_SHEET), [univerInstanceService]));
|
|
2481
|
-
const render = renderManagerService.
|
|
2481
|
+
const render = renderManagerService.getRenderUnitById((_currentUnit$getUnitI = currentUnit === null || currentUnit === void 0 ? void 0 : currentUnit.getUnitId()) !== null && _currentUnit$getUnitI !== void 0 ? _currentUnit$getUnitI : "");
|
|
2482
2482
|
const refSelectionsRenderService = render === null || render === void 0 ? void 0 : render.with(RefSelectionsRenderService);
|
|
2483
2483
|
(0, react.useLayoutEffect)(() => {
|
|
2484
2484
|
if (isNeed) {
|
|
@@ -2722,7 +2722,7 @@ const useSheetSelectionChange = (isNeed, isFocus, isSelectingRef, unitId, subUni
|
|
|
2722
2722
|
sheetName
|
|
2723
2723
|
});
|
|
2724
2724
|
const activeWorkbook = resolveFormulaSelectionWorkbook((0, _univerjs_ui.useObservable)((0, react.useMemo)(() => univerInstanceService.getCurrentTypeOfUnit$(_univerjs_core.UniverInstanceType.UNIVER_SHEET), [univerInstanceService])), workbook);
|
|
2725
|
-
const render = renderManagerService.
|
|
2725
|
+
const render = renderManagerService.getRenderUnitById((_activeWorkbook$getUn = activeWorkbook === null || activeWorkbook === void 0 ? void 0 : activeWorkbook.getUnitId()) !== null && _activeWorkbook$getUn !== void 0 ? _activeWorkbook$getUn : unitId);
|
|
2726
2726
|
const refSelectionsRenderService = render === null || render === void 0 ? void 0 : render.with(RefSelectionsRenderService);
|
|
2727
2727
|
const sheetSkeletonManagerService = render === null || render === void 0 ? void 0 : render.with(_univerjs_sheets_ui.SheetSkeletonManagerService);
|
|
2728
2728
|
const refSelectionsService = (0, _univerjs_ui.useDependency)(_univerjs_sheets.IRefSelectionsService);
|
|
@@ -2735,7 +2735,7 @@ const useSheetSelectionChange = (isNeed, isFocus, isSelectingRef, unitId, subUni
|
|
|
2735
2735
|
});
|
|
2736
2736
|
if (!ctx) return;
|
|
2737
2737
|
const { nodeIndex, updatingRefIndex, formulaText, sequenceNodes, offset } = ctx;
|
|
2738
|
-
if (isSelectingRef.current === 1 || (0,
|
|
2738
|
+
if (isSelectingRef.current === 1 || (0, _univerjs_engine_formula.isFormulaReferenceAddingContext)(sequenceNodes, offset) || (0, _univerjs_engine_formula.isFormulaReferenceAddingTextContext)(formulaText, offset)) if (offset !== 0) {
|
|
2739
2739
|
var _range$sheetId, _range$unitId, _range$unitId2;
|
|
2740
2740
|
if (nodeIndex === -1 && sequenceNodes.length) return;
|
|
2741
2741
|
const range = getLastFormulaSelection(selections);
|
|
@@ -2750,7 +2750,7 @@ const useSheetSelectionChange = (isNeed, isFocus, isSelectingRef, unitId, subUni
|
|
|
2750
2750
|
const isAcrossSheet = rangeSheetId !== subUnitId;
|
|
2751
2751
|
const isAcrossWorkbook = (activeWorkbook === null || activeWorkbook === void 0 ? void 0 : activeWorkbook.getUnitId()) !== unitId;
|
|
2752
2752
|
const refRanges = unitRangesToText([unitRangeName], isSupportAcrossSheet && (isAcrossSheet || isAcrossWorkbook), sheetName, isAcrossWorkbook);
|
|
2753
|
-
if ((0,
|
|
2753
|
+
if ((0, _univerjs_engine_formula.isFormulaReferenceAddingTextContext)(formulaText, offset)) {
|
|
2754
2754
|
handleRangeChange(insertFormulaReferenceText(formulaText, refRanges[0], offset), offset + refRanges[0].length, isEnd);
|
|
2755
2755
|
return;
|
|
2756
2756
|
}
|
|
@@ -2941,7 +2941,7 @@ const useSheetSelectionChange = (isNeed, isFocus, isSelectingRef, unitId, subUni
|
|
|
2941
2941
|
editor,
|
|
2942
2942
|
lexerTreeBuilder
|
|
2943
2943
|
});
|
|
2944
|
-
const isAdd = isSelectingRef.current === 1 || Boolean(ctx && ((0,
|
|
2944
|
+
const isAdd = isSelectingRef.current === 1 || Boolean(ctx && ((0, _univerjs_engine_formula.isFormulaReferenceAddingContext)(ctx.sequenceNodes, ctx.offset) || (0, _univerjs_engine_formula.isFormulaReferenceAddingTextContext)(ctx.formulaText, ctx.offset)));
|
|
2945
2945
|
const selections = ((_refSelectionsRenderS = refSelectionsRenderService === null || refSelectionsRenderService === void 0 ? void 0 : refSelectionsRenderService.getSelectionDataWithStyle()) !== null && _refSelectionsRenderS !== void 0 ? _refSelectionsRenderS : []).map((i) => i.rangeWithCoord);
|
|
2946
2946
|
if (isAdd) {
|
|
2947
2947
|
if (selections.length > 0 && isSameFormulaSelection(selections[selections.length - 1], range)) return;
|
|
@@ -3023,7 +3023,7 @@ const useSheetSelectionChange = (isNeed, isFocus, isSelectingRef, unitId, subUni
|
|
|
3023
3023
|
const useSwitchSheet = (isNeed, unitId, isSupportAcrossSheet, isFocusSet, onBlur, refresh) => {
|
|
3024
3024
|
const commandService = (0, _univerjs_ui.useDependency)(_univerjs_core.ICommandService);
|
|
3025
3025
|
const editorService = (0, _univerjs_ui.useDependency)(_univerjs_docs_ui.IEditorService);
|
|
3026
|
-
const render = (0, _univerjs_ui.useDependency)(_univerjs_engine_render.IRenderManagerService).
|
|
3026
|
+
const render = (0, _univerjs_ui.useDependency)(_univerjs_engine_render.IRenderManagerService).getRenderUnitById(unitId);
|
|
3027
3027
|
const univerInstanceService = (0, _univerjs_ui.useDependency)(_univerjs_core.IUniverInstanceService);
|
|
3028
3028
|
const refSelectionsRenderService = render === null || render === void 0 ? void 0 : render.with(RefSelectionsRenderService);
|
|
3029
3029
|
(0, react.useEffect)(() => {
|
|
@@ -3087,10 +3087,10 @@ const useVerify = (isNeed, onVerify, formulaText) => {
|
|
|
3087
3087
|
//#endregion
|
|
3088
3088
|
//#region src/views/formula-editor/hooks/use-formula-search.ts
|
|
3089
3089
|
function getFormulaReplaceResult(nodes, index, formulaName, functionType) {
|
|
3090
|
-
return (0,
|
|
3090
|
+
return (0, _univerjs_engine_formula.getFormulaReplaceResult)(nodes, index, formulaName, functionType);
|
|
3091
3091
|
}
|
|
3092
3092
|
const useFormulaSearch = (isNeed, nodes = [], editor) => {
|
|
3093
|
-
const descriptionService = (0, _univerjs_ui.useDependency)(
|
|
3093
|
+
const descriptionService = (0, _univerjs_ui.useDependency)(_univerjs_engine_formula.IDescriptionService);
|
|
3094
3094
|
const [searchList, setSearchList] = (0, react.useState)([]);
|
|
3095
3095
|
const [searchText, setSearchText] = (0, react.useState)("");
|
|
3096
3096
|
const indexRef = (0, react.useRef)(-1);
|
|
@@ -3114,7 +3114,8 @@ const useFormulaSearch = (isNeed, nodes = [], editor) => {
|
|
|
3114
3114
|
if (currentNode && typeof currentNode !== "string" && currentNode.nodeType === _univerjs_engine_formula.sequenceNodeType.FUNCTION) {
|
|
3115
3115
|
indexRef.current = currentNodeIndex;
|
|
3116
3116
|
const token = currentNode.token;
|
|
3117
|
-
|
|
3117
|
+
const list = (0, _univerjs_engine_formula.searchFormulaFunctions)(descriptionService, token);
|
|
3118
|
+
setSearchList(list);
|
|
3118
3119
|
setSearchText(token);
|
|
3119
3120
|
return;
|
|
3120
3121
|
}
|
|
@@ -3379,7 +3380,7 @@ const FormulaEditor = (0, react.forwardRef)((props, ref) => {
|
|
|
3379
3380
|
disableOnClick: disableSelectionOnClick
|
|
3380
3381
|
});
|
|
3381
3382
|
const highTextRef = (0, react.useRef)("");
|
|
3382
|
-
const renderer = (0, _univerjs_ui.useDependency)(_univerjs_engine_render.IRenderManagerService).
|
|
3383
|
+
const renderer = (0, _univerjs_ui.useDependency)(_univerjs_engine_render.IRenderManagerService).getRenderUnitById(editorId);
|
|
3383
3384
|
const docSelectionRenderService = renderer === null || renderer === void 0 ? void 0 : renderer.with(_univerjs_docs_ui.DocSelectionRenderService);
|
|
3384
3385
|
const isFocusing = docSelectionRenderService === null || docSelectionRenderService === void 0 ? void 0 : docSelectionRenderService.isFocusing;
|
|
3385
3386
|
const currentDoc = (0, _univerjs_ui.useObservable)((0, react.useMemo)(() => univerInstanceService.getCurrentTypeOfUnit$(_univerjs_core.UniverInstanceType.UNIVER_DOC), [univerInstanceService]));
|
|
@@ -3761,7 +3762,7 @@ function SelectFunction(props) {
|
|
|
3761
3762
|
const [typeSelected, setTypeSelected] = (0, react.useState)(allTypeValue);
|
|
3762
3763
|
const [nameSelected, setNameSelected] = (0, react.useState)(0);
|
|
3763
3764
|
const [functionInfo, setFunctionInfo] = (0, react.useState)(null);
|
|
3764
|
-
const descriptionService = (0, _univerjs_ui.useDependency)(
|
|
3765
|
+
const descriptionService = (0, _univerjs_ui.useDependency)(_univerjs_engine_formula.IDescriptionService);
|
|
3765
3766
|
const localeService = (0, _univerjs_ui.useDependency)(_univerjs_core.LocaleService);
|
|
3766
3767
|
const sidebarOptions = (0, _univerjs_ui.useObservable)((0, _univerjs_ui.useDependency)(_univerjs_ui.ISidebarService).sidebarOptions$);
|
|
3767
3768
|
const options = getFunctionTypeValues(localeService, Boolean(customFunction)).filter((option) => descriptionService.getSearchListByType(Number(option.value)).length > 0);
|
|
@@ -3817,11 +3818,13 @@ function SelectFunction(props) {
|
|
|
3817
3818
|
};
|
|
3818
3819
|
function handleSelectChange(value) {
|
|
3819
3820
|
setTypeSelected(value);
|
|
3820
|
-
|
|
3821
|
+
const selectList = descriptionService.getSearchListByType(+value);
|
|
3822
|
+
setSelectList(selectList);
|
|
3821
3823
|
}
|
|
3822
3824
|
function handleSearchInputChange(value) {
|
|
3823
3825
|
setSearchText(value);
|
|
3824
|
-
|
|
3826
|
+
const selectList = descriptionService.getSearchListByName(value);
|
|
3827
|
+
setSelectList(selectList);
|
|
3825
3828
|
}
|
|
3826
3829
|
function handleSelectListKeyDown(e) {
|
|
3827
3830
|
e.stopPropagation();
|
|
@@ -4080,11 +4083,12 @@ function useRangeSelectorSelectionChange(opts) {
|
|
|
4080
4083
|
if (!supportAcrossSheet && currentSheet.getSheetId() !== subUnitId) return;
|
|
4081
4084
|
if (!(selections === null || selections === void 0 ? void 0 : selections.length)) return;
|
|
4082
4085
|
const sheetName = keepSheetReference ? currentSheet.getName() : currentSheet.getSheetId() === subUnitId ? "" : currentSheet.getName();
|
|
4083
|
-
|
|
4086
|
+
const ranges = selections.map((item) => ({
|
|
4084
4087
|
range: item.range,
|
|
4085
4088
|
unitId,
|
|
4086
4089
|
sheetName
|
|
4087
|
-
}))
|
|
4090
|
+
}));
|
|
4091
|
+
onChange(ranges, isStart);
|
|
4088
4092
|
});
|
|
4089
4093
|
(0, react.useEffect)(() => {
|
|
4090
4094
|
const disposableCollection = new _univerjs_core.DisposableCollection();
|
|
@@ -4197,7 +4201,8 @@ function RangeSelectorDialog(props) {
|
|
|
4197
4201
|
});
|
|
4198
4202
|
} else {
|
|
4199
4203
|
newRanges.splice(focusIndex, 1, ...addedRanges);
|
|
4200
|
-
|
|
4204
|
+
const finalRanges = newRanges.slice(0, maxRangeCount);
|
|
4205
|
+
setRanges(finalRanges);
|
|
4201
4206
|
setFocusIndex(focusIndex + addedRanges.length - 1);
|
|
4202
4207
|
}
|
|
4203
4208
|
}
|
|
@@ -4358,10 +4363,9 @@ function RangeSelector(props) {
|
|
|
4358
4363
|
maxRangeCount,
|
|
4359
4364
|
onConfirm: (ranges) => {
|
|
4360
4365
|
const resultStr = stringifyRanges(ranges);
|
|
4361
|
-
const
|
|
4362
|
-
empty.body.dataStream = resultStr;
|
|
4366
|
+
const documentData = _univerjs_core.RichTextBuilder.create().insertText(resultStr).getData();
|
|
4363
4367
|
editor === null || editor === void 0 || editor.replaceText(resultStr, false);
|
|
4364
|
-
onChange === null || onChange === void 0 || onChange(
|
|
4368
|
+
onChange === null || onChange === void 0 || onChange(documentData, resultStr);
|
|
4365
4369
|
setPopupVisible(false);
|
|
4366
4370
|
setRangeSelectorRanges([]);
|
|
4367
4371
|
requestAnimationFrame(() => {
|
|
@@ -4648,7 +4652,7 @@ function getSetCellFormulaMutations(unitId, subUnitId, range, matrix, accessor,
|
|
|
4648
4652
|
const setValuesMutation = {
|
|
4649
4653
|
unitId,
|
|
4650
4654
|
subUnitId,
|
|
4651
|
-
cellValue: valueMatrix.
|
|
4655
|
+
cellValue: valueMatrix.clone()
|
|
4652
4656
|
};
|
|
4653
4657
|
redoMutationsInfo.push({
|
|
4654
4658
|
id: _univerjs_sheets.SetRangeValuesMutation.id,
|
|
@@ -4991,7 +4995,7 @@ let FormulaEditorShowController = class FormulaEditorShowController extends _uni
|
|
|
4991
4995
|
return cellInfo;
|
|
4992
4996
|
}
|
|
4993
4997
|
_createArrayFormulaRangeShape(arrayRange, unitId, subUnitId) {
|
|
4994
|
-
const renderUnit = this._renderManagerService.
|
|
4998
|
+
const renderUnit = this._renderManagerService.getRenderUnitById(unitId);
|
|
4995
4999
|
const skeleton = this._sheetSkeletonService.getSkeleton(unitId, subUnitId);
|
|
4996
5000
|
if (!renderUnit || !skeleton) return;
|
|
4997
5001
|
const { scene } = renderUnit;
|
|
@@ -5128,7 +5132,7 @@ let ImageFormulaRenderController = class ImageFormulaRenderController extends _u
|
|
|
5128
5132
|
this._imageFormulaCellInterceptorController.registerRefreshRenderFunction(() => {
|
|
5129
5133
|
const workbook = this._univerInstanceService.getCurrentUnitOfType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
5130
5134
|
if (!workbook) return;
|
|
5131
|
-
const render = this._renderManagerService.
|
|
5135
|
+
const render = this._renderManagerService.getRenderUnitById(workbook.getUnitId());
|
|
5132
5136
|
if (!render) return;
|
|
5133
5137
|
render.with(_univerjs_sheets_ui.SheetSkeletonManagerService).reCalculate();
|
|
5134
5138
|
const mainComponent = render.mainComponent;
|
|
@@ -5354,7 +5358,7 @@ _defineProperty(UniverSheetsFormulaUIPlugin, "packageName", name);
|
|
|
5354
5358
|
_defineProperty(UniverSheetsFormulaUIPlugin, "version", version);
|
|
5355
5359
|
_defineProperty(UniverSheetsFormulaUIPlugin, "type", _univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
5356
5360
|
UniverSheetsFormulaUIPlugin = __decorate([
|
|
5357
|
-
(0, _univerjs_core.DependentOn)(_univerjs_sheets_formula.UniverSheetsFormulaPlugin),
|
|
5361
|
+
(0, _univerjs_core.DependentOn)(_univerjs_engine_formula.UniverFormulaEnginePlugin, _univerjs_engine_render.UniverRenderEnginePlugin, _univerjs_sheets.UniverSheetsPlugin, _univerjs_ui.UniverUIPlugin, _univerjs_sheets_formula.UniverSheetsFormulaPlugin, _univerjs_sheets_ui.UniverSheetsUIPlugin),
|
|
5358
5362
|
__decorateParam(1, (0, _univerjs_core.Inject)(_univerjs_core.Injector)),
|
|
5359
5363
|
__decorateParam(2, _univerjs_engine_render.IRenderManagerService),
|
|
5360
5364
|
__decorateParam(3, _univerjs_core.IConfigService),
|