@univerjs/sheets-formula 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +13 -7
  2. package/lib/cjs/index.js +4 -4
  3. package/lib/es/index.js +3908 -3854
  4. package/lib/locale/en-US.json +34 -62
  5. package/lib/locale/ru-RU.json +34 -62
  6. package/lib/locale/vi-VN.json +7425 -0
  7. package/lib/locale/zh-CN.json +38 -66
  8. package/lib/locale/zh-TW.json +10304 -0
  9. package/lib/types/controllers/formula-editor-show.controller.d.ts +7 -3
  10. package/lib/types/controllers/formula-ui.controller.d.ts +1 -0
  11. package/lib/types/controllers/prompt.controller.d.ts +18 -22
  12. package/lib/types/controllers/trigger-calculation.controller.d.ts +4 -0
  13. package/lib/types/controllers/update-formula.controller.d.ts +2 -2
  14. package/lib/types/controllers/utils/ref-range-formula.d.ts +0 -17
  15. package/lib/types/formula-ui-plugin.d.ts +8 -2
  16. package/lib/types/index.d.ts +2 -2
  17. package/lib/types/locale/en-US.d.ts +14 -42
  18. package/lib/types/locale/function-list/array/vi-VN.d.ts +17 -0
  19. package/lib/types/locale/function-list/array/zh-TW.d.ts +17 -0
  20. package/lib/types/locale/function-list/compatibility/vi-VN.d.ts +702 -0
  21. package/lib/types/locale/function-list/compatibility/zh-TW.d.ts +702 -0
  22. package/lib/types/locale/function-list/cube/vi-VN.d.ts +144 -0
  23. package/lib/types/locale/function-list/cube/zh-TW.d.ts +144 -0
  24. package/lib/types/locale/function-list/database/vi-VN.d.ts +234 -0
  25. package/lib/types/locale/function-list/database/zh-TW.d.ts +234 -0
  26. package/lib/types/locale/function-list/date/vi-VN.d.ts +379 -0
  27. package/lib/types/locale/function-list/date/zh-TW.d.ts +438 -0
  28. package/lib/types/locale/function-list/engineering/vi-VN.d.ts +990 -0
  29. package/lib/types/locale/function-list/engineering/zh-TW.d.ts +990 -0
  30. package/lib/types/locale/function-list/financial/vi-VN.d.ts +954 -0
  31. package/lib/types/locale/function-list/financial/zh-TW.d.ts +1008 -0
  32. package/lib/types/locale/function-list/information/vi-VN.d.ts +3 -0
  33. package/lib/types/locale/function-list/information/zh-TW.d.ts +352 -0
  34. package/lib/types/locale/function-list/logical/vi-VN.d.ts +368 -0
  35. package/lib/types/locale/function-list/logical/zh-TW.d.ts +368 -0
  36. package/lib/types/locale/function-list/lookup/vi-VN.d.ts +188 -0
  37. package/lib/types/locale/function-list/lookup/zh-TW.d.ts +752 -0
  38. package/lib/types/locale/function-list/math/en-US.d.ts +14 -42
  39. package/lib/types/locale/function-list/math/ja-JP.d.ts +14 -42
  40. package/lib/types/locale/function-list/math/vi-VN.d.ts +3 -0
  41. package/lib/types/locale/function-list/math/zh-CN.d.ts +14 -42
  42. package/lib/types/locale/function-list/math/zh-TW.d.ts +1498 -0
  43. package/lib/types/locale/function-list/statistical/vi-VN.d.ts +394 -0
  44. package/lib/types/locale/function-list/statistical/zh-TW.d.ts +2060 -0
  45. package/lib/types/locale/function-list/text/vi-VN.d.ts +650 -0
  46. package/lib/types/locale/function-list/text/zh-TW.d.ts +852 -0
  47. package/lib/types/locale/function-list/univer/vi-VN.d.ts +17 -0
  48. package/lib/types/locale/function-list/univer/zh-TW.d.ts +17 -0
  49. package/lib/types/locale/function-list/web/vi-VN.d.ts +3 -0
  50. package/lib/types/locale/function-list/web/zh-TW.d.ts +72 -0
  51. package/lib/types/locale/ru-RU.d.ts +14 -42
  52. package/lib/types/locale/vi-VN.d.ts +6699 -0
  53. package/lib/types/locale/zh-CN.d.ts +14 -42
  54. package/lib/types/locale/zh-TW.d.ts +9300 -0
  55. package/lib/types/services/prompt.service.d.ts +0 -6
  56. package/lib/types/services/register-function.service.d.ts +19 -5
  57. package/lib/types/services/register-other-formula.service.d.ts +1 -0
  58. package/lib/types/services/remote/remote-register-function.service.d.ts +17 -0
  59. package/lib/types/services/render-services/ref-selections.render-service.d.ts +35 -0
  60. package/lib/umd/index.js +4 -4
  61. package/package.json +21 -19
  62. package/lib/types/services/formula-custom-function.service.d.ts +0 -19
@@ -88,9 +88,6 @@ export interface IFormulaPromptService {
88
88
  updateSequenceRef(nodeIndex: number, refString: string): void;
89
89
  insertSequenceRef(index: number, refString: string): void;
90
90
  insertSequenceString(index: number, content: string): void;
91
- enableSelectionMoving(): void;
92
- disableSelectionMoving(): void;
93
- isSelectionMoving(): boolean;
94
91
  enableLockedSelectionChange(): void;
95
92
  disableLockedSelectionChange(): void;
96
93
  isLockedSelectionChange(): boolean;
@@ -154,9 +151,6 @@ export declare class FormulaPromptService implements IFormulaPromptService, IDis
154
151
  * @param content
155
152
  */
156
153
  insertSequenceString(index: number, content: string): void;
157
- enableSelectionMoving(): void;
158
- disableSelectionMoving(): void;
159
- isSelectionMoving(): boolean;
160
154
  enableLockedSelectionChange(): void;
161
155
  disableLockedSelectionChange(): void;
162
156
  isLockedSelectionChange(): boolean;
@@ -1,9 +1,18 @@
1
1
  import { ILocales, Disposable, LocaleService } from '@univerjs/core';
2
- import { IFunctionInfo, IFunctionService } from '@univerjs/engine-formula';
2
+ import { IFunctionInfo, PrimitiveValueType, IFunctionService } from '@univerjs/engine-formula';
3
3
  import { IDisposable } from '@wendellhu/redi';
4
4
  import { IDescriptionService } from './description.service';
5
- import { IRegisterFunctionList, IFormulaCustomFunctionService } from './formula-custom-function.service';
5
+ import { IRemoteRegisterFunctionService } from './remote/remote-register-function.service';
6
6
 
7
+ export type IRegisterFunction = (...arg: Array<PrimitiveValueType | PrimitiveValueType[][]>) => PrimitiveValueType | PrimitiveValueType[][];
8
+ export type IRegisterFunctionList = [[IRegisterFunction, string, string?]];
9
+ export interface IFormulaCustomFunctionService {
10
+ /**
11
+ * register descriptions
12
+ * @param functionList
13
+ */
14
+ registerFunctions(functionList: IRegisterFunctionList): IDisposable;
15
+ }
7
16
  /**
8
17
  * Register function operation params
9
18
  */
@@ -34,10 +43,13 @@ export interface IUnregisterFunctionParams {
34
43
  */
35
44
  functionNames: string[];
36
45
  }
46
+ /**
47
+ * This
48
+ */
37
49
  export interface IRegisterFunctionService {
38
50
  /**
39
51
  * register descriptions
40
- * @param functionList
52
+ * @param params
41
53
  */
42
54
  registerFunctions(params: IRegisterFunctionParams): IDisposable;
43
55
  }
@@ -45,8 +57,10 @@ export declare const IRegisterFunctionService: import('@wendellhu/redi').Identif
45
57
  export declare class RegisterFunctionService extends Disposable implements IRegisterFunctionService {
46
58
  private readonly _localeService;
47
59
  private readonly _descriptionService;
48
- private readonly _formulaCustomFunctionService;
49
60
  private readonly _functionService;
50
- constructor(_localeService: LocaleService, _descriptionService: IDescriptionService, _formulaCustomFunctionService: IFormulaCustomFunctionService, _functionService: IFunctionService);
61
+ private readonly _remoteRegisterFunctionService?;
62
+ constructor(_localeService: LocaleService, _descriptionService: IDescriptionService, _functionService: IFunctionService, _remoteRegisterFunctionService?: IRemoteRegisterFunctionService | undefined);
51
63
  registerFunctions(params: IRegisterFunctionParams): IDisposable;
64
+ private _registerLocalExecutors;
65
+ private _registerRemoteExecutors;
52
66
  }
@@ -16,6 +16,7 @@ export declare class RegisterOtherFormulaService extends Disposable {
16
16
  private _formulaResult$;
17
17
  formulaResult$: import('rxjs').Observable<Record<string, Record<string, IOtherFormulaResult[]>>>;
18
18
  constructor(_commandService: ICommandService, _activeDirtyManagerService: IActiveDirtyManagerService);
19
+ dispose(): void;
19
20
  private _ensureCacheMap;
20
21
  private _createFormulaId;
21
22
  private _initFormulaRegister;
@@ -0,0 +1,17 @@
1
+ import { IFunctionService } from '@univerjs/engine-formula';
2
+
3
+ export interface IRemoteRegisterFunctionService {
4
+ registerFunctions(serializedFuncs: Array<[string, string]>): Promise<void>;
5
+ unregisterFunctions(names: string[]): Promise<void>;
6
+ }
7
+ export declare const RemoteRegisterFunctionServiceName = "sheets-formula.remote-register-function.service";
8
+ export declare const IRemoteRegisterFunctionService: import('@wendellhu/redi').IdentifierDecorator<IRemoteRegisterFunctionService>;
9
+ /**
10
+ * This class should resident in the remote process.
11
+ */
12
+ export declare class RemoteRegisterFunctionService implements IRemoteRegisterFunctionService {
13
+ private readonly _functionService;
14
+ constructor(_functionService: IFunctionService);
15
+ registerFunctions(serializedFuncs: Array<[string, string]>): Promise<void>;
16
+ unregisterFunctions(names: string[]): Promise<void>;
17
+ }
@@ -0,0 +1,35 @@
1
+ import { Workbook, ThemeService } from '@univerjs/core';
2
+ import { IRenderContext, IRenderModule, IRenderManagerService } from '@univerjs/engine-render';
3
+ import { SheetsSelectionsService } from '@univerjs/sheets';
4
+ import { BaseSelectionRenderService, SheetSkeletonManagerService } from '@univerjs/sheets-ui';
5
+ import { IShortcutService } from '@univerjs/ui';
6
+ import { IDisposable, Injector } from '@wendellhu/redi';
7
+
8
+ /**
9
+ * This service extends the existing `SelectionRenderService` to provide the rendering of prompt selections
10
+ * when user is editing ref ranges in formulas.
11
+ *
12
+ * Not that this service works with Uni-mode, which means it should be able to deal with multi render unit
13
+ * and handle selections on them, though each at a time.
14
+ */
15
+ export declare class RefSelectionsRenderService extends BaseSelectionRenderService implements IRenderModule {
16
+ private readonly _context;
17
+ private readonly _sheetSkeletonManagerService;
18
+ private readonly _workbookSelections;
19
+ private _eventDisposables;
20
+ constructor(_context: IRenderContext<Workbook>, injector: Injector, themeService: ThemeService, shortcutService: IShortcutService, renderManagerService: IRenderManagerService, refSelectionsService: SheetsSelectionsService, _sheetSkeletonManagerService: SheetSkeletonManagerService);
21
+ setRemainLastEnabled(enabled: boolean): void;
22
+ setSkipLastEnabled(enabled: boolean): void;
23
+ /**
24
+ * Call this method and user will be able to select on the canvas to update selections.
25
+ */
26
+ enableSelectionChanging(): IDisposable;
27
+ private _disableSelectionChanging;
28
+ private _initCanvasEventListeners;
29
+ private _initUserActionSyncListener;
30
+ private _updateSelections;
31
+ private _initSelectionChangeListener;
32
+ private _initSkeletonChangeListener;
33
+ private _getActiveViewport;
34
+ private _getSheetObject;
35
+ }