@univerjs/sheets-drawing-ui 0.5.3-nightly.202501061606 → 0.5.3-nightly.202501070959

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.
@@ -1,4 +1,4 @@
1
- import { IContextService, Injector, IUniverInstanceService, RxDisposable } from '@univerjs/core';
1
+ import { ICommandService, IContextService, Injector, IUniverInstanceService, RxDisposable } from '@univerjs/core';
2
2
  import { IDrawingManagerService } from '@univerjs/drawing';
3
3
  import { IRenderManagerService } from '@univerjs/engine-render';
4
4
  import { SheetCanvasPopManagerService } from '@univerjs/sheets-ui';
@@ -11,8 +11,9 @@ export declare class DrawingPopupMenuController extends RxDisposable {
11
11
  private readonly _univerInstanceService;
12
12
  private readonly _contextService;
13
13
  private readonly _uiPartsService;
14
+ private readonly _commandService;
14
15
  private _initImagePopupMenu;
15
- constructor(_injector: Injector, _drawingManagerService: IDrawingManagerService, _canvasPopManagerService: SheetCanvasPopManagerService, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _contextService: IContextService, _uiPartsService: IUIPartsService);
16
+ constructor(_injector: Injector, _drawingManagerService: IDrawingManagerService, _canvasPopManagerService: SheetCanvasPopManagerService, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _contextService: IContextService, _uiPartsService: IUIPartsService, _commandService: ICommandService);
16
17
  private _init;
17
18
  private _dispose;
18
19
  private _create;
@@ -5,6 +5,15 @@ import { IRenderContext, IRenderModule } from '@univerjs/engine-render';
5
5
  import { ISheetDrawingService } from '@univerjs/sheets-drawing';
6
6
  import { ISheetSelectionRenderService, SheetSkeletonManagerService } from '@univerjs/sheets-ui';
7
7
  import { ILocalFileService, IMessageService } from '@univerjs/ui';
8
+ /**
9
+ * Get the size of the drawing within the cell
10
+ * @param {IAccessor} accessor Accessor
11
+ * @param {ISheetLocationBase} location Cell location
12
+ * @param {number} originImageWidth Original image width
13
+ * @param {number} originImageHeight Original image height
14
+ * @param {number} angle Rotation angle in degrees (0-360)
15
+ * @returns {{ width: number; height: number }} Drawing size
16
+ */
8
17
  export declare function getDrawingSizeByCell(accessor: IAccessor, location: ISheetLocationBase, originImageWidth: number, originImageHeight: number, angle: number): false | {
9
18
  width: number;
10
19
  height: number;
@@ -0,0 +1,19 @@
1
+ import { DrawingTypeEnum, FEnum, ImageSourceType } from '@univerjs/core';
2
+ import { SheetDrawingAnchorType } from '@univerjs/sheets-drawing';
3
+ export interface IFDrawingEnumMixin {
4
+ /** Please refer to {@link DrawingTypeEnum}. */
5
+ DrawingType: typeof DrawingTypeEnum;
6
+ /** Please refer to {@link ImageSourceType}. */
7
+ ImageSourceType: Omit<typeof ImageSourceType, 'UUID'>;
8
+ /** Please refer to {@link SheetDrawingAnchorType}. */
9
+ SheetDrawingAnchorType: typeof SheetDrawingAnchorType;
10
+ }
11
+ export declare class FDrawingEnumMixin extends FEnum implements IFDrawingEnumMixin {
12
+ get DrawingType(): typeof DrawingTypeEnum;
13
+ get ImageSourceType(): Omit<typeof ImageSourceType, 'UUID'>;
14
+ get SheetDrawingAnchorType(): typeof SheetDrawingAnchorType;
15
+ }
16
+ declare module '@univerjs/core' {
17
+ interface FEnum extends IFDrawingEnumMixin {
18
+ }
19
+ }
@@ -0,0 +1,236 @@
1
+ import { IDrawingSearch, IEventBase, FEventName } from '@univerjs/core';
2
+ import { ISheetImage } from '@univerjs/sheets-drawing';
3
+ import { FWorkbook } from '@univerjs/sheets/facade';
4
+ import { FOverGridImage } from './f-over-grid-image';
5
+ interface IFDrawingEventNameMixin {
6
+ /**
7
+ * Triggered before floating image insertion.
8
+ * Type of the event parameter is {@link IBeforeOverGridImageInsertParam}
9
+ * @example
10
+ * ```ts
11
+ * univerAPI.addEvent(univerAPI.Event.BeforeOverGridImageInsert, (param) => {
12
+ * const { workbook, insertImageParams } = param;
13
+ * // do something
14
+ * console.log(workbook, insertImageParams);
15
+ * // Cancel the insertion operation
16
+ * param.cancel = true;
17
+ * })
18
+ * ```
19
+ */
20
+ readonly BeforeOverGridImageInsert: 'BeforeOverGridImageInsert';
21
+ /**
22
+ * Triggered after floating image insertion.
23
+ * Type of the event parameter is {@link IOverGridImageInsertedParam}
24
+ * @example
25
+ * ```ts
26
+ * univerAPI.addEvent(univerAPI.Event.OverGridImageInserted, (param) => {
27
+ * const { workbook, images } = param;
28
+ * // do something
29
+ * console.log(workbook, images);
30
+ * })
31
+ * ```
32
+ */
33
+ readonly OverGridImageInserted: 'OverGridImageInserted';
34
+ /**
35
+ * Triggered before floating image removal.
36
+ * Type of the event parameter is {@link IBeforeOverGridImageRemoveParam}
37
+ * @example
38
+ * ```ts
39
+ * univerAPI.addEvent(univerAPI.Event.BeforeOverGridImageRemove, (param) => {
40
+ * const { workbook, images } = param;
41
+ * // do something
42
+ * console.log(workbook, images);
43
+ * // Cancel the removal operation
44
+ * param.cancel = true;
45
+ * })
46
+ * ```
47
+ */
48
+ readonly BeforeOverGridImageRemove: 'BeforeOverGridImageRemove';
49
+ /**
50
+ * Triggered after floating image removal.
51
+ * Type of the event parameter is {@link IOverGridImageRemovedParam}
52
+ * @example
53
+ * ```ts
54
+ * univerAPI.addEvent(univerAPI.Event.OverGridImageRemoved, (param) => {
55
+ * const { workbook, removeImageParams } = param;
56
+ * // do something
57
+ * console.log(workbook, removeImageParams);
58
+ * })
59
+ * ```
60
+ */
61
+ readonly OverGridImageRemoved: 'OverGridImageRemoved';
62
+ /**
63
+ * Triggered before floating image change.
64
+ * Type of the event parameter is {@link IBeforeOverGridImageChangeParam}
65
+ * @example
66
+ * ```ts
67
+ * univerAPI.addEvent(univerAPI.Event.BeforeOverGridImageChange, (param) => {
68
+ * const { workbook, images } = param;
69
+ * // do something
70
+ * console.log(workbook, images);
71
+ * // Cancel the image change
72
+ * param.cancel = true;
73
+ * })
74
+ * ```
75
+ */
76
+ readonly BeforeOverGridImageChange: 'BeforeOverGridImageChange';
77
+ /**
78
+ * Triggered after floating image change.
79
+ * Type of the event parameter is {@link IOverGridImageChangedParam}
80
+ * @example
81
+ * ```ts
82
+ * univerAPI.addEvent(univerAPI.Event.OverGridImageChanged, (param) => {
83
+ * const { workbook, images } = param;
84
+ * // do something
85
+ * console.log(workbook, images);
86
+ * })
87
+ * ```
88
+ */
89
+ readonly OverGridImageChanged: 'OverGridImageChanged';
90
+ /**
91
+ * Triggered before floating image selection.
92
+ * Type of the event parameter is {@link IBeforeOverGridImageSelectParam}
93
+ * @example
94
+ * ```ts
95
+ * univerAPI.addEvent(univerAPI.Event.BeforeOverGridImageSelect, (param) => {
96
+ * const { workbook, selectedImages, oldSelectedImages } = param;
97
+ * // do something
98
+ * console.log(workbook, selectedImages, oldSelectedImages);
99
+ * // cancel the event
100
+ * param.cancel = true;
101
+ * })
102
+ * ```
103
+ */
104
+ readonly BeforeOverGridImageSelect: 'BeforeOverGridImageSelect';
105
+ /**
106
+ * Triggered after floating image selection.
107
+ * Type of the event parameter is {@link IOverGridImageSelectedParam}
108
+ * @example
109
+ * ```ts
110
+ * univerAPI.addEvent(univerAPI.Event.OverGridImageSelected, (param) => {
111
+ * const { workbook, selectedImages } = param;
112
+ * // do something
113
+ * console.log(workbook, selectedImages);
114
+ * })
115
+ * ```
116
+ */
117
+ readonly OverGridImageSelected: 'OverGridImageSelected';
118
+ }
119
+ export declare class FDrawingEventNameMixin extends FEventName implements IFDrawingEventNameMixin {
120
+ get BeforeOverGridImageChange(): 'BeforeOverGridImageChange';
121
+ get OverGridImageChanged(): 'OverGridImageChanged';
122
+ get BeforeOverGridImageInsert(): 'BeforeOverGridImageInsert';
123
+ get OverGridImageInserted(): 'OverGridImageInserted';
124
+ get BeforeOverGridImageRemove(): 'BeforeOverGridImageRemove';
125
+ get OverGridImageRemoved(): 'OverGridImageRemoved';
126
+ get BeforeOverGridImageSelect(): 'BeforeOverGridImageSelect';
127
+ get OverGridImageSelected(): 'OverGridImageSelected';
128
+ }
129
+ export interface IBeforeOverGridImageChangeParamObject {
130
+ /**
131
+ * Parameters of the image to be updated. {@link ISheetImage}
132
+ */
133
+ changeParam: Partial<ISheetImage>;
134
+ /**
135
+ * Instance of the image to be updated. {@link FOverGridImage}
136
+ */
137
+ image: FOverGridImage;
138
+ }
139
+ export interface IBeforeOverGridImageChangeParam extends IEventBase {
140
+ /**
141
+ * The workbook instance currently being operated on. {@link FWorkbook}
142
+ */
143
+ workbook: FWorkbook;
144
+ /**
145
+ * Collection of parameters of the images to be updated, there may be multiple images to be updated. {@link IBeforeOverGridImageChangeParamObject}
146
+ */
147
+ images: IBeforeOverGridImageChangeParamObject[];
148
+ }
149
+ export interface IOverGridImageChangedParam extends IEventBase {
150
+ /**
151
+ * The workbook instance currently being operated on. {@link FWorkbook}
152
+ */
153
+ workbook: FWorkbook;
154
+ /**
155
+ * Instances of the images after the update. {@link FOverGridImage}
156
+ */
157
+ images: FOverGridImage[];
158
+ }
159
+ export interface IBeforeOverGridImageInsertParam extends IEventBase {
160
+ /**
161
+ * The workbook instance currently being operated on. {@link FWorkbook}
162
+ */
163
+ workbook: FWorkbook;
164
+ /**
165
+ * Collection of parameters of the images to be inserted. {@link ISheetImage}
166
+ */
167
+ insertImageParams: ISheetImage[];
168
+ }
169
+ export interface IOverGridImageInsertedParam extends IEventBase {
170
+ /**
171
+ * The workbook instance currently being operated on. {@link FWorkbook}
172
+ */
173
+ workbook: FWorkbook;
174
+ /**
175
+ * Collection of instances of the images after insertion. {@link FOverGridImage}
176
+ */
177
+ images: FOverGridImage[];
178
+ }
179
+ export interface IBeforeOverGridImageRemoveParam extends IEventBase {
180
+ /**
181
+ * The workbook instance currently being operated on. {@link FWorkbook}
182
+ */
183
+ workbook: FWorkbook;
184
+ /**
185
+ * Collection of instances of the images to be removed. {@link FOverGridImage}
186
+ */
187
+ images: FOverGridImage[];
188
+ }
189
+ export interface IOverGridImageRemovedParam extends IEventBase {
190
+ /**
191
+ * The workbook instance currently being operated on. {@link FWorkbook}
192
+ */
193
+ workbook: FWorkbook;
194
+ /**
195
+ * Collection of parameters of the images after removal. {@link ISheetImage}
196
+ */
197
+ removeImageParams: IDrawingSearch[];
198
+ }
199
+ export interface IBeforeOverGridImageSelectParam extends IEventBase {
200
+ /**
201
+ * The workbook instance currently being operated on. {@link FWorkbook}
202
+ */
203
+ workbook: FWorkbook;
204
+ /**
205
+ * The images before selection. {@link FOverGridImage}
206
+ */
207
+ oldSelectedImages: FOverGridImage[];
208
+ selectedImages: FOverGridImage[];
209
+ }
210
+ export interface IOverGridImageSelectedParam extends IEventBase {
211
+ /**
212
+ * The workbook instance currently being operated on. {@link FWorkbook}
213
+ */
214
+ workbook: FWorkbook;
215
+ /**
216
+ * The selected images. {@link FOverGridImage}
217
+ */
218
+ selectedImages: FOverGridImage[];
219
+ }
220
+ interface IFSheetsUIEventParamConfig {
221
+ BeforeOverGridImageChange: IBeforeOverGridImageChangeParam;
222
+ OverGridImageChanged: IOverGridImageChangedParam;
223
+ BeforeOverGridImageInsert: IBeforeOverGridImageInsertParam;
224
+ OverGridImageInserted: IOverGridImageInsertedParam;
225
+ BeforeOverGridImageRemove: IBeforeOverGridImageRemoveParam;
226
+ OverGridImageRemoved: IOverGridImageRemovedParam;
227
+ BeforeOverGridImageSelect: IBeforeOverGridImageSelectParam;
228
+ OverGridImageSelected: IOverGridImageSelectedParam;
229
+ }
230
+ declare module '@univerjs/core' {
231
+ interface FEventName extends IFDrawingEventNameMixin {
232
+ }
233
+ interface IEventParamConfig extends IFSheetsUIEventParamConfig {
234
+ }
235
+ }
236
+ export {};
@@ -7,6 +7,27 @@ export declare class FOverGridImageBuilder {
7
7
  protected readonly _injector: Injector;
8
8
  private _image;
9
9
  constructor(unitId: string, subUnitId: string, _injector: Injector);
10
+ /**
11
+ * Set the initial image configuration for the image builder.
12
+ * @param image The image to be set. {@link ISheetImage}
13
+ * @returns The builder. {@link FOverGridImageBuilder}
14
+ * @example
15
+ * ```ts
16
+ * // create a new image builder.
17
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
18
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
19
+ * const imageBuilder = activeSheet.newOverGridImage();
20
+ * const param = await imageBuilder.setImage({
21
+ * drawingId: '123456',
22
+ * drawingType: univerAPI.Enum.DrawingType.DRAWING_IMAGE,
23
+ * imageSourceType: univerAPI.Enum.ImageSourceType.BASE64,
24
+ * source: 'https://avatars.githubusercontent.com/u/61444807?s=48&v=4',
25
+ * unitId: activeSpreadsheet.getId(),
26
+ * subUnitId: activeSheet.getSheetId(),
27
+ * }).setColumn(5).setRow(5).buildAsync();
28
+ * activeSheet.insertImages([param]);
29
+ * ```
30
+ */
10
31
  setImage(image: ISheetImage): FOverGridImageBuilder;
11
32
  /**
12
33
  * Set the unit id of the image
@@ -18,7 +39,7 @@ export declare class FOverGridImageBuilder {
18
39
  * const activeSpreadsheet = univerAPI.getActiveWorkbook();
19
40
  * const activeSheet = activeSpreadsheet.getActiveSheet();
20
41
  * const imageBuilder = activeSheet.newOverGridImage();
21
- * const param = imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).build();
42
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).buildAsync();
22
43
  * activeSheet.insertImages([param]);
23
44
  * ```
24
45
  */
@@ -26,27 +47,190 @@ export declare class FOverGridImageBuilder {
26
47
  setSource(source: string, sourceType?: ImageSourceType): FOverGridImageBuilder;
27
48
  getsource(): string;
28
49
  getSourceType(): ImageSourceType;
50
+ /**
51
+ * Set the position of the image
52
+ * @param column The sheet start column of the image
53
+ * @returns The builder. {@link FOverGridImageBuilder}
54
+ * @example
55
+ * ```ts
56
+ * // create a new image builder.
57
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
58
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
59
+ * const imageBuilder = activeSheet.newOverGridImage();
60
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).buildAsync();
61
+ * activeSheet.insertImages([param]);
62
+ * ```
63
+ */
29
64
  setColumn(column: number): FOverGridImageBuilder;
65
+ /**
66
+ * Set the position of the image
67
+ * @param row The sheet start row of the image
68
+ * @returns The builder. {@link FOverGridImageBuilder}
69
+ * @example
70
+ * ```ts
71
+ * // create a new image builder.
72
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
73
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
74
+ * const imageBuilder = activeSheet.newOverGridImage();
75
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).buildAsync();
76
+ * activeSheet.insertImages([param]);
77
+ * ```
78
+ */
30
79
  setRow(row: number): FOverGridImageBuilder;
80
+ /**
81
+ * Set the column offset of the image in a unit
82
+ * @param offset The offset in pixels
83
+ * @returns The builder. {@link FOverGridImageBuilder}
84
+ * @example
85
+ * ```ts
86
+ * // create a new image builder.
87
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
88
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
89
+ * const imageBuilder = activeSheet.newOverGridImage();
90
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setColumnOffset(10).setRowOffset(10).buildAsync();
91
+ * activeSheet.insertImages([param]);
92
+ * ```
93
+ */
31
94
  setColumnOffset(offset: number): FOverGridImageBuilder;
95
+ /**
96
+ * Set the row offset of the image in a unit
97
+ * @param offset The offset in pixels
98
+ * @returns The builder. {@link FOverGridImageBuilder}
99
+ * @example
100
+ * ```ts
101
+ * // create a new image builder.
102
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
103
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
104
+ * const imageBuilder = activeSheet.newOverGridImage();
105
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setColumnOffset(10).setRowOffset(10).buildAsync();
106
+ * activeSheet.insertImages([param]);
107
+ * ```
108
+ */
32
109
  setRowOffset(offset: number): FOverGridImageBuilder;
110
+ /**
111
+ * set the width of the image
112
+ * @param width The width of the image, in pixels
113
+ * @returns The builder. {@link FOverGridImageBuilder}
114
+ * @example
115
+ * ```ts
116
+ * // create a new image builder.
117
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
118
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
119
+ * const imageBuilder = activeSheet.newOverGridImage();
120
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setWidth(120).setHeight(50).buildAsync();
121
+ * activeSheet.insertImages([param]);
122
+ * ```
123
+ */
33
124
  setWidth(width: number): FOverGridImageBuilder;
125
+ /**
126
+ * Set the height of the image
127
+ * @param height The height of the image, in pixels
128
+ * @returns The builder. {@link FOverGridImageBuilder}
129
+ * @example
130
+ * ```ts
131
+ * // create a new image builder.
132
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
133
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
134
+ * const imageBuilder = activeSheet.newOverGridImage();
135
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setWidth(120).setHeight(50).buildAsync();
136
+ * activeSheet.insertImages([param]);
137
+ * ```
138
+ */
34
139
  setHeight(height: number): FOverGridImageBuilder;
140
+ /**
141
+ * Set the anchor type of the image, whether the position and size change with the cell
142
+ * @param anchorType The anchor type {@link SheetDrawingAnchorType}
143
+ * @returns The builder. {@link FOverGridImageBuilder}
144
+ * @example
145
+ * ```ts
146
+ * // create a new image builder.
147
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
148
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
149
+ * const imageBuilder = activeSheet.newOverGridImage();
150
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setAnchorType(univerAPI.Enum.SheetDrawingAnchorType.None).buildAsync();
151
+ * activeSheet.insertImages([param]);
152
+ * ```
153
+ */
35
154
  setAnchorType(anchorType: SheetDrawingAnchorType): FOverGridImageBuilder;
155
+ /**
156
+ * Set the cropping region of the image by defining the top edges, thereby displaying the specific part of the image you want.
157
+ * @param top The number of pixels to crop from the top of the image.
158
+ * @returns The builder. {@link FOverGridImageBuilder}
159
+ * @example
160
+ * ```ts
161
+ * // create a new image builder.
162
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
163
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
164
+ * const imageBuilder = activeSheet.newOverGridImage();
165
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setCropTop(10).setCropLeft(10).setCropBottom(10).setCropRight(10).buildAsync();
166
+ * activeSheet.insertImages([param]);
167
+ * ```
168
+ */
36
169
  setCropTop(top: number): FOverGridImageBuilder;
170
+ /**
171
+ * Set the cropping region of the image by defining the left edges, thereby displaying the specific part of the image you want.
172
+ * @param left The number of pixels to crop from the left side of the image.
173
+ * @returns The builder. {@link FOverGridImageBuilder}
174
+ * @example
175
+ * ```ts
176
+ * // create a new image builder.
177
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
178
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
179
+ * const imageBuilder = activeSheet.newOverGridImage();
180
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setCropTop(10).setCropLeft(10).setCropBottom(10).setCropRight(10).buildAsync();
181
+ * activeSheet.insertImages([param]);
182
+ * ```
183
+ */
37
184
  setCropLeft(left: number): FOverGridImageBuilder;
185
+ /**
186
+ * Set the cropping region of the image by defining the bottom edges, thereby displaying the specific part of the image you want.
187
+ * @param bottom The number of pixels to crop from the bottom of the image.
188
+ * @returns The builder. {@link FOverGridImageBuilder}
189
+ * @example
190
+ * ```ts
191
+ * // create a new image builder.
192
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
193
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
194
+ * const imageBuilder = activeSheet.newOverGridImage();
195
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setCropTop(10).setCropLeft(10).setCropBottom(10).setCropRight(10).buildAsync();
196
+ * activeSheet.insertImages([param]);
197
+ * ```
198
+ */
38
199
  setCropBottom(bottom: number): FOverGridImageBuilder;
200
+ /**
201
+ * Set the cropping region of the image by defining the right edges, thereby displaying the specific part of the image you want.
202
+ * @param right The number of pixels to crop from the right side of the image.
203
+ * @returns The builder. {@link FOverGridImageBuilder}
204
+ * @example
205
+ * ```ts
206
+ * // create a new image builder.
207
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
208
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
209
+ * const imageBuilder = activeSheet.newOverGridImage();
210
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setCropTop(10).setCropLeft(10).setCropBottom(10).setCropRight(10).buildAsync();
211
+ * activeSheet.insertImages([param]);
212
+ * ```
213
+ */
39
214
  setCropRight(right: number): FOverGridImageBuilder;
40
215
  private _initializeSrcRect;
41
216
  /**
42
217
  * Set the rotation angle of the image
43
218
  * @param angle Degree of rotation of the image, for example, 90, 180, 270, etc.
44
- * @returns The builder
219
+ * @returns The builder {@link FOverGridImageBuilder}
220
+ * @example
221
+ * ```ts
222
+ * // create a new image builder.
223
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
224
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
225
+ * const imageBuilder = activeSheet.newOverGridImage();
226
+ * const param = await imageBuilder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).setRotate(90).buildAsync();
227
+ * activeSheet.insertImages([param]);
228
+ * ```
45
229
  */
46
230
  setRotate(angle: number): FOverGridImageBuilder;
47
231
  setUnitId(unitId: string): FOverGridImageBuilder;
48
232
  setSubUnitId(subUnitId: string): FOverGridImageBuilder;
49
- build(): Promise<ISheetImage>;
233
+ buildAsync(): Promise<ISheetImage>;
50
234
  }
51
235
  export declare class FOverGridImage extends FBase {
52
236
  private _image;
@@ -63,7 +247,7 @@ export declare class FOverGridImage extends FBase {
63
247
  * // remove the image from the sheet
64
248
  * const activeSpreadsheet = univerAPI.getActiveWorkbook();
65
249
  * const activeSheet = activeSpreadsheet.getActiveSheet();
66
- * const image = activeSheet.getImages[0];
250
+ * const image = activeSheet.getImages()[0];
67
251
  * console.log('Delete state is ', image?.remove());
68
252
  * ```
69
253
  */
@@ -76,10 +260,10 @@ export declare class FOverGridImage extends FBase {
76
260
  * // convert the image to a builder
77
261
  * const activeSpreadsheet = univerAPI.getActiveWorkbook();
78
262
  * const activeSheet = activeSpreadsheet.getActiveSheet();
79
- * const image = activeSheet.getImages[0];
263
+ * const image = activeSheet.getImages()[0];
80
264
  * const builder = image.toBuilder();
81
- * builder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).build();
82
- * activeSheet.updateImages([builder.build()]);
265
+ * const param = await builder.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4').setColumn(5).setRow(5).buildAsync();
266
+ * activeSheet.updateImages([param]);
83
267
  * ```
84
268
  */
85
269
  toBuilder(): FOverGridImageBuilder;
@@ -92,14 +276,14 @@ export declare class FOverGridImage extends FBase {
92
276
  * // set the source of the image
93
277
  * const activeSpreadsheet = univerAPI.getActiveWorkbook();
94
278
  * const activeSheet = activeSpreadsheet.getActiveSheet();
95
- * const image = activeSheet.getImages[0];
279
+ * const image = activeSheet.getImages()[0];
96
280
  * console.log('Set source state is ', image.setSource('https://avatars.githubusercontent.com/u/61444807?s=48&v=4'));
97
281
  */
98
282
  setSource(source: string): boolean;
99
283
  /**
100
284
  * Set the source of the image, change image display.
101
285
  * @param source The source of the image
102
- * @param sourceType The source type of the image
286
+ * @param sourceType The source type of the image, {@link ImageSourceType}
103
287
  * @returns success or not
104
288
  */
105
289
  setSource(source: string, sourceType?: ImageSourceType): boolean;
@@ -113,26 +297,42 @@ export declare class FOverGridImage extends FBase {
113
297
  * // set the position of the image
114
298
  * const activeSpreadsheet = univerAPI.getActiveWorkbook();
115
299
  * const activeSheet = activeSpreadsheet.getActiveSheet();
116
- * const image = activeSheet.getImages[0];
300
+ * const image = activeSheet.getImages()[0];
117
301
  * console.log('Set position state is ', image.setPosition(5, 5));
118
302
  * ```
119
303
  */
120
- setPosition(row: number, column: number): boolean;
304
+ setPositionAsync(row: number, column: number): Promise<boolean>;
121
305
  /**
122
306
  *
123
307
  * @param column The sheet start column of the image
124
308
  * @param row The sheet start row of the image
125
309
  * @param rowOffset The offset of the start row
126
310
  * @param columnOffset The offset of the start column
311
+ * @returns success or not
312
+ * @example
313
+ * ```ts
314
+ * // set the position of the image
315
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
316
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
317
+ * const image = activeSheet.getImages()[0];
318
+ * console.log('Set position state is ', image.setPosition(5, 5, 10, 10));
319
+ * ```
127
320
  */
128
- setPosition(row: number, column: number, rowOffset?: number, columnOffset?: number): boolean;
321
+ setPositionAsync(row: number, column: number, rowOffset?: number, columnOffset?: number): Promise<boolean>;
129
322
  /**
130
323
  * Set the size of the image
131
324
  * @param width The width of the image
132
325
  * @param height The height of the image
133
326
  * @returns success or not
327
+ * @example
328
+ * ```ts
329
+ * // set the size of the image
330
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
331
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
332
+ * const image = activeSheet.getImages()[0];
333
+ * console.log('Set size state is ', image.setSize(50, 120));
134
334
  */
135
- setSize(width: number, height: number): boolean;
335
+ setSizeAsync(width: number, height: number): Promise<boolean>;
136
336
  /**
137
337
  * Set the cropping region of the image by defining the top, bottom, left, and right edges, thereby displaying the specific part of the image you want.
138
338
  * @param top The number of pixels to crop from the top of the image.
@@ -145,8 +345,8 @@ export declare class FOverGridImage extends FBase {
145
345
  * // set the crop of the image
146
346
  * const activeSpreadsheet = univerAPI.getActiveWorkbook();
147
347
  * const activeSheet = activeSpreadsheet.getActiveSheet();
148
- * const image = activeSheet.getImages[0];
149
- * console.log('Set crop state is ', image.setCrop(0, 0, 0, 0));
348
+ * const image = activeSheet.getImages()[0];
349
+ * console.log('Set crop state is ', image.setCrop(10, 10, 10, 10));
150
350
  * ```
151
351
  */
152
352
  setCrop(top?: number, left?: number, bottom?: number, right?: number): boolean;
@@ -154,6 +354,66 @@ export declare class FOverGridImage extends FBase {
154
354
  * Set the rotation angle of the image
155
355
  * @param angle Degree of rotation of the image, for example, 90, 180, 270, etc.
156
356
  * @returns success or not
357
+ * @example
358
+ * ```ts
359
+ * // set the rotation angle of the image
360
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
361
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
362
+ * const image = activeSheet.getImages()[0];
363
+ * console.log('Set rotate state is ', image.setRotate(90));
364
+ * ```
157
365
  */
158
366
  setRotate(angle: number): boolean;
367
+ /**
368
+ * Move the image layer forward by one level
369
+ * @returns success or not
370
+ * @example
371
+ * ```ts
372
+ * // move the image forward
373
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
374
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
375
+ * const image = activeSheet.getImages()[0];
376
+ * console.log('Move forward state is ', image.setForward());
377
+ * ```
378
+ */
379
+ setForward(): boolean;
380
+ /**
381
+ * Move the image layer backward by one level
382
+ * @returns success or not
383
+ * @example
384
+ * ```ts
385
+ * // move the image backward
386
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
387
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
388
+ * const image = activeSheet.getImages()[0];
389
+ * console.log('Move backward state is ', image.setBackward());
390
+ * ```
391
+ */
392
+ setBackward(): boolean;
393
+ /**
394
+ * Move the image layer to the back
395
+ * @returns success or not
396
+ * @example
397
+ * ```ts
398
+ * // move the image to the back
399
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
400
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
401
+ * const image = activeSheet.getImages()[0];
402
+ * console.log('Move back state is ', image.setBack());
403
+ * ```
404
+ */
405
+ setBack(): boolean;
406
+ /**
407
+ * Move the image layer to the front
408
+ * @returns success or not
409
+ * @example
410
+ * ```ts
411
+ * // move the image to the front
412
+ * const activeSpreadsheet = univerAPI.getActiveWorkbook();
413
+ * const activeSheet = activeSpreadsheet.getActiveSheet();
414
+ * const image = activeSheet.getImages()[0];
415
+ * console.log('Move front state is ', image.setFront());
416
+ * ```
417
+ */
418
+ setFront(): boolean;
159
419
  }