@univerjs/sheets-drawing-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/index.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { BooleanNumber, BuildTextUtils, CommandType, DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY, DOCS_NORMAL_EDITOR_UNIT_ID_KEY, DependentOn, Direction, Disposable, DisposableCollection, DrawingTypeEnum, FOCUSING_COMMON_DRAWINGS, FOCUSING_FX_BAR_EDITOR, FOCUSING_PANEL_EDITOR, FOCUSING_SHAPE_TEXT_EDITOR, FOCUSING_SHEET, ICommandService, IConfigService, IContextService, IImageIoService, IPermissionService, IURLImageService, IUndoRedoService, IUniverInstanceService, ImageSourceType, ImageUploadStatusType, Inject, Injector, InterceptorEffectEnum, LifecycleService, LifecycleStages, LocaleService, ObjectMatrix, Optional, Plugin, PositionedObjectLayoutType, RxDisposable, Tools, UniverInstanceType, UserManagerService, WrapTextType, createDocumentModelWithStyle, createIdentifier, fromEventSubject, generateRandomId, merge, registerDependencies, sequenceExecute, toDisposable, touchDependencies } from "@univerjs/core";
2
2
  import { ClearSheetDrawingTransformerOperation, DrawingApplyType, ISheetDrawingService, InsertSheetDrawingCommand, RemoveSheetDrawingCommand, SetDrawingApplyMutation, SetDrawingArrangeCommand, SetSheetDrawingCommand, SheetDrawingAnchorType, UniverSheetsDrawingPlugin, drawingPositionToTransform, transformToAxisAlignPosition, transformToDrawingPosition } from "@univerjs/sheets-drawing";
3
- import { CURSOR_TYPE, DRAWING_OBJECT_LAYER_INDEX, IRenderManagerService, Image, ObjectType, Rect, SHEET_VIEWPORT_KEY, Vector2, getCurrentTypeOfRenderer, getGroupState, transformObjectOutOfGroup } from "@univerjs/engine-render";
3
+ import { CURSOR_TYPE, DRAWING_OBJECT_LAYER_INDEX, IRenderManagerService, Image, ObjectType, Rect, SHEET_VIEWPORT_KEY, UniverRenderEnginePlugin, Vector2, getCurrentTypeOfRenderer, getGroupState, transformObjectOutOfGroup } from "@univerjs/engine-render";
4
4
  import { Button, Checkbox, CheckboxGroup, FormLayout, MessageType, Radio, RadioGroup, Select, clsx, render, unmount } from "@univerjs/design";
5
5
  import { buildDocTransform, docDrawingPositionToTransform } from "@univerjs/docs";
6
6
  import { DRAWING_IMAGE_ALLOW_IMAGE_LIST, DRAWING_IMAGE_COUNT_LIMIT, DRAWING_IMAGE_HEIGHT_LIMIT, DRAWING_IMAGE_WIDTH_LIMIT, IDrawingManagerService, SetDrawingSelectedOperation, UniverDrawingPlugin, getDrawingImageAllowSize, getDrawingShapeKeyByDrawingSearch, getImageSize } from "@univerjs/drawing";
7
- import { COMMAND_LISTENER_SKELETON_CHANGE, IAutoFillService, INTERCEPTOR_POINT, InterceptCellContentPriority, RangeProtectionPermissionEditPoint, SetFrozenMutation, SetRangeValuesCommand, SetSelectionsOperation, SetWorksheetActiveOperation, SetWorksheetRowAutoHeightMutation, SheetInterceptorService, SheetPermissionCheckController, SheetSkeletonService, SheetsSelectionsService, WorkbookEditablePermission, WorkbookViewPermission, WorksheetEditPermission, WorksheetViewPermission, attachRangeWithCoord, discreteRangeToRange, getSheetCommandTarget } from "@univerjs/sheets";
8
- import { COPY_TYPE, EditingRenderController, HoverManagerService, IEditorBridgeService, ISheetClipboardService, ISheetSelectionRenderService, PREDEFINED_HOOK_NAME_PASTE, SetCellEditVisibleOperation, SetScrollOperation, SetZoomRatioOperation, SheetCanvasPopManagerService, SheetPrintInterceptorService, SheetSkeletonManagerService, getCurrentRangeDisable$, useHighlightRange, virtualizeDiscreteRanges } from "@univerjs/sheets-ui";
9
- import { CanvasFloatDomPreviewService, CanvasFloatDomService, ComponentManager, ContextMenuGroup, ContextMenuPosition, IClipboardInterfaceService, IContextMenuService, IDialogService, ILocalFileService, IMenuManagerService, IMessageService, IShortcutService, ISidebarService, KeyCode, MenuItemType, PrintFloatDomSingle, RibbonInsertGroup, connectInjector, getMenuHiddenObservable, useDependency, useObservable } from "@univerjs/ui";
7
+ import { COMMAND_LISTENER_SKELETON_CHANGE, IAutoFillService, INTERCEPTOR_POINT, InterceptCellContentPriority, RangeProtectionPermissionEditPoint, SetFrozenMutation, SetRangeValuesCommand, SetSelectionsOperation, SetWorksheetActiveOperation, SetWorksheetRowAutoHeightMutation, SheetInterceptorService, SheetPermissionCheckController, SheetSkeletonService, SheetsSelectionsService, UniverSheetsPlugin, WorkbookEditablePermission, WorkbookViewPermission, WorksheetEditPermission, WorksheetViewPermission, attachRangeWithCoord, discreteRangeToRange, getSheetCommandTarget } from "@univerjs/sheets";
8
+ import { COPY_TYPE, EditingRenderController, HoverManagerService, IEditorBridgeService, ISheetClipboardService, ISheetSelectionRenderService, PREDEFINED_HOOK_NAME_PASTE, SetCellEditVisibleOperation, SetScrollOperation, SetZoomRatioOperation, SheetCanvasPopManagerService, SheetPrintInterceptorService, SheetSkeletonManagerService, UniverSheetsUIPlugin, getCurrentRangeDisable$, useHighlightRange, virtualizeDiscreteRanges } from "@univerjs/sheets-ui";
9
+ import { CanvasFloatDomPreviewService, CanvasFloatDomService, ComponentManager, ContextMenuGroup, ContextMenuPosition, IClipboardInterfaceService, IContextMenuService, IDialogService, ILocalFileService, IMenuManagerService, IMessageService, IShortcutService, ISidebarService, KeyCode, MenuItemType, PrintFloatDomSingle, RibbonInsertGroup, UniverUIPlugin, connectInjector, getMenuHiddenObservable, useDependency, useObservable } from "@univerjs/ui";
10
10
  import { COMPONENT_IMAGE_POPUP_MENU, DrawingCommonPanel, DrawingRenderService, ImageCropperObject, ImageResetSizeOperation, OpenImageCropOperation, UniverDrawingUIPlugin, disposeDrawingRenderObject, insertGroupObject } from "@univerjs/drawing-ui";
11
11
  import { BehaviorSubject, EMPTY, Subject, combineLatest, distinctUntilChanged, filter, map, of, switchMap, take, tap, throttleTime } from "rxjs";
12
12
  import { DocDrawingController, UniverDocsDrawingPlugin } from "@univerjs/docs-drawing";
@@ -292,7 +292,7 @@ const UngroupSheetDrawingCommand = {
292
292
  };
293
293
 
294
294
  //#endregion
295
- //#region \0@oxc-project+runtime@0.137.0/helpers/esm/typeof.js
295
+ //#region \0@oxc-project+runtime@0.140.0/helpers/esm/typeof.js
296
296
  function _typeof(o) {
297
297
  "@babel/helpers - typeof";
298
298
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
@@ -303,7 +303,7 @@ function _typeof(o) {
303
303
  }
304
304
 
305
305
  //#endregion
306
- //#region \0@oxc-project+runtime@0.137.0/helpers/esm/toPrimitive.js
306
+ //#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPrimitive.js
307
307
  function toPrimitive(t, r) {
308
308
  if ("object" != _typeof(t) || !t) return t;
309
309
  var e = t[Symbol.toPrimitive];
@@ -316,14 +316,14 @@ function toPrimitive(t, r) {
316
316
  }
317
317
 
318
318
  //#endregion
319
- //#region \0@oxc-project+runtime@0.137.0/helpers/esm/toPropertyKey.js
319
+ //#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPropertyKey.js
320
320
  function toPropertyKey(t) {
321
321
  var i = toPrimitive(t, "string");
322
322
  return "symbol" == _typeof(i) ? i : i + "";
323
323
  }
324
324
 
325
325
  //#endregion
326
- //#region \0@oxc-project+runtime@0.137.0/helpers/esm/defineProperty.js
326
+ //#region \0@oxc-project+runtime@0.140.0/helpers/esm/defineProperty.js
327
327
  function _defineProperty(e, r, t) {
328
328
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
329
329
  value: t,
@@ -334,7 +334,7 @@ function _defineProperty(e, r, t) {
334
334
  }
335
335
 
336
336
  //#endregion
337
- //#region \0@oxc-project+runtime@0.137.0/helpers/esm/decorateParam.js
337
+ //#region \0@oxc-project+runtime@0.140.0/helpers/esm/decorateParam.js
338
338
  function __decorateParam(paramIndex, decorator) {
339
339
  return function(target, key) {
340
340
  decorator(target, key, paramIndex);
@@ -342,7 +342,7 @@ function __decorateParam(paramIndex, decorator) {
342
342
  }
343
343
 
344
344
  //#endregion
345
- //#region \0@oxc-project+runtime@0.137.0/helpers/esm/decorate.js
345
+ //#region \0@oxc-project+runtime@0.140.0/helpers/esm/decorate.js
346
346
  function __decorate(decorators, target, key, desc) {
347
347
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
348
348
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -378,11 +378,11 @@ function rotatedBoundingBox(width, height, angleDegrees) {
378
378
  function getDrawingSizeByCell(accessor, location, originImageWidth, originImageHeight, angle) {
379
379
  var _skeletonManagerServi;
380
380
  const { rotatedHeight, rotatedWidth } = rotatedBoundingBox(originImageWidth, originImageHeight, angle);
381
- const currentRender = accessor.get(IRenderManagerService).getRenderById(location.unitId);
381
+ const currentRender = accessor.get(IRenderManagerService).getRenderUnitById(location.unitId);
382
382
  if (!currentRender) return false;
383
383
  const skeleton = (_skeletonManagerServi = currentRender.with(SheetSkeletonManagerService).getSkeletonParam(location.subUnitId)) === null || _skeletonManagerServi === void 0 ? void 0 : _skeletonManagerServi.skeleton;
384
384
  if (skeleton == null) return false;
385
- const cellInfo = skeleton.getCellByIndex(location.row, location.col);
385
+ const cellInfo = skeleton.getCellWithCoordByIndex(location.row, location.col);
386
386
  const cellWidth = cellInfo.mergeInfo.endX - cellInfo.mergeInfo.startX - 2;
387
387
  const cellHeight = cellInfo.mergeInfo.endY - cellInfo.mergeInfo.startY - 2;
388
388
  const imageRatio = rotatedWidth / rotatedHeight;
@@ -1037,12 +1037,6 @@ let BatchSaveImagesService = class BatchSaveImagesService extends Disposable {
1037
1037
  this._imageIoService = _imageIoService;
1038
1038
  this._urlImageService = _urlImageService;
1039
1039
  }
1040
- /**
1041
- * @deprecated Use IURLImageService directly
1042
- */
1043
- registerURLImageDownloader(downloader) {
1044
- return this._urlImageService.registerURLImageDownloader(downloader);
1045
- }
1046
1040
  getCellImagesInSelection() {
1047
1041
  const workbook = this._univerInstanceService.getCurrentUnitOfType(UniverInstanceType.UNIVER_SHEET);
1048
1042
  if (!workbook) return [];
@@ -1362,7 +1356,6 @@ const SaveCellImagesCommand = {
1362
1356
  width: 360,
1363
1357
  title: { title: titleText },
1364
1358
  children: { label: BATCH_SAVE_IMAGES_DIALOG_ID },
1365
- destroyOnClose: true,
1366
1359
  preservePositionOnDestroy: true,
1367
1360
  onClose: () => dialogService.close(BATCH_SAVE_IMAGES_DIALOG_ID)
1368
1361
  });
@@ -2069,7 +2062,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2069
2062
  }
2070
2063
  _commitFloatDomMove(info) {
2071
2064
  var _this$_renderManagerS;
2072
- const skeletonParam = (_this$_renderManagerS = this._renderManagerService.getRenderById(info.unitId)) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.with(SheetSkeletonManagerService).getSkeletonParam(info.subUnitId);
2065
+ const skeletonParam = (_this$_renderManagerS = this._renderManagerService.getRenderUnitById(info.unitId)) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.with(SheetSkeletonManagerService).getSkeletonParam(info.subUnitId);
2073
2066
  const drawing = this._sheetDrawingService.getDrawingByParam({
2074
2067
  unitId: info.unitId,
2075
2068
  subUnitId: info.subUnitId,
@@ -2238,7 +2231,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2238
2231
  }
2239
2232
  _getSceneAndTransformerByDrawingSearch(unitId) {
2240
2233
  if (unitId == null) return;
2241
- const renderUnit = this._renderManagerService.getRenderById(unitId);
2234
+ const renderUnit = this._renderManagerService.getRenderUnitById(unitId);
2242
2235
  const scene = renderUnit === null || renderUnit === void 0 ? void 0 : renderUnit.scene;
2243
2236
  if (renderUnit == null || scene == null) return null;
2244
2237
  return {
@@ -2262,7 +2255,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2262
2255
  if (!workbook) return;
2263
2256
  const activeSheetId = workbook.getActiveSheet().getSheetId();
2264
2257
  if (!floatDomParam || !target) return;
2265
- const skeleton = (_this$_renderManagerS2 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS2 === void 0 ? void 0 : _this$_renderManagerS2.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2258
+ const skeleton = (_this$_renderManagerS2 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS2 === void 0 ? void 0 : _this$_renderManagerS2.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2266
2259
  if (!skeleton) return;
2267
2260
  const { transform, drawingType, data, hidden, groupId } = floatDomParam;
2268
2261
  if (!isCanvasFloatDomDrawingType(drawingType)) return;
@@ -2505,7 +2498,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2505
2498
  unitId,
2506
2499
  subUnitId
2507
2500
  });
2508
- const skeleton = (_this$_renderManagerS3 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS3 === void 0 ? void 0 : _this$_renderManagerS3.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2501
+ const skeleton = (_this$_renderManagerS3 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS3 === void 0 ? void 0 : _this$_renderManagerS3.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2509
2502
  if (!renderObject || !target || !skeleton) return;
2510
2503
  ids.forEach((id) => {
2511
2504
  const floatDomInfo = this._domLayerInfoMap.get(id);
@@ -2525,7 +2518,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2525
2518
  this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(UniverInstanceType.UNIVER_SHEET).pipe(switchMap((workbook) => workbook ? workbook.activeSheet$ : of(null)), map((worksheet) => {
2526
2519
  if (!worksheet) return null;
2527
2520
  const unitId = worksheet.getUnitId();
2528
- const render = this._renderManagerService.getRenderById(unitId);
2521
+ const render = this._renderManagerService.getRenderUnitById(unitId);
2529
2522
  return render ? {
2530
2523
  render,
2531
2524
  unitId,
@@ -2622,7 +2615,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2622
2615
  _getPosition(position, unitId) {
2623
2616
  var _this$_renderManagerS4;
2624
2617
  const { startX, endX, startY, endY } = position;
2625
- const selectionRenderService = (_this$_renderManagerS4 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS4 === void 0 ? void 0 : _this$_renderManagerS4.with(ISheetSelectionRenderService);
2618
+ const selectionRenderService = (_this$_renderManagerS4 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS4 === void 0 ? void 0 : _this$_renderManagerS4.with(ISheetSelectionRenderService);
2626
2619
  if (selectionRenderService == null) return;
2627
2620
  const start = selectionRenderService.getCellWithCoordByOffset(startX, startY);
2628
2621
  if (start == null) return;
@@ -2769,9 +2762,9 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2769
2762
  const { unitId, subUnitId } = target;
2770
2763
  const renderObject = this._getSceneAndTransformerByDrawingSearch(unitId);
2771
2764
  if (!renderObject) return;
2772
- const currentRender = this._renderManagerService.getRenderById(unitId);
2765
+ const currentRender = this._renderManagerService.getRenderUnitById(unitId);
2773
2766
  if (!currentRender) return;
2774
- const skeletonParam = (_this$_renderManagerS5 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS5 === void 0 ? void 0 : _this$_renderManagerS5.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2767
+ const skeletonParam = (_this$_renderManagerS5 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS5 === void 0 ? void 0 : _this$_renderManagerS5.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2775
2768
  if (!skeletonParam) return;
2776
2769
  const { componentKey, data, allowTransform = true } = config;
2777
2770
  const id = propId !== null && propId !== void 0 ? propId : generateRandomId();
@@ -2809,7 +2802,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2809
2802
  if (!workbook) return;
2810
2803
  const activeSheetId = workbook.getActiveSheet().getSheetId();
2811
2804
  if (!floatDomParam || !target) return;
2812
- const skMangerService = (_this$_renderManagerS6 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS6 === void 0 ? void 0 : _this$_renderManagerS6.with(SheetSkeletonManagerService);
2805
+ const skMangerService = (_this$_renderManagerS6 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS6 === void 0 ? void 0 : _this$_renderManagerS6.with(SheetSkeletonManagerService);
2813
2806
  if (!skMangerService) return;
2814
2807
  const skeletonParam = skMangerService.getSkeletonParam(subUnitId);
2815
2808
  if (!skeletonParam) return;
@@ -2946,7 +2939,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2946
2939
  top: rangePosition.absolute.top
2947
2940
  }
2948
2941
  }, domAnchor);
2949
- const newPos = calcSheetFloatDomPosition(new Rect(getDrawingShapeKeyByDrawingSearch({
2942
+ const newRect = new Rect(getDrawingShapeKeyByDrawingSearch({
2950
2943
  unitId,
2951
2944
  subUnitId,
2952
2945
  drawingId
@@ -2956,10 +2949,11 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2956
2949
  width: (_domAnchor$width2 = domAnchor.width) !== null && _domAnchor$width2 !== void 0 ? _domAnchor$width2 : newRangePos.width,
2957
2950
  height: (_domAnchor$height2 = domAnchor.height) !== null && _domAnchor$height2 !== void 0 ? _domAnchor$height2 : newRangePos.height,
2958
2951
  zIndex: this._drawingManagerService.getDrawingOrder(unitId, subUnitId).length - 1
2959
- }), renderObject.renderUnit.scene, skeletonParam.skeleton, target.worksheet, floatDomInfo);
2952
+ });
2953
+ const newPos = calcSheetFloatDomPosition(newRect, renderObject.renderUnit.scene, skeletonParam.skeleton, target.worksheet, floatDomInfo);
2960
2954
  position$.next(newPos);
2961
2955
  }));
2962
- const skm = (_this$_renderManagerS7 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS7 === void 0 ? void 0 : _this$_renderManagerS7.with(SheetSkeletonManagerService);
2956
+ const skm = (_this$_renderManagerS7 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS7 === void 0 ? void 0 : _this$_renderManagerS7.with(SheetSkeletonManagerService);
2963
2957
  const skeletonSubscription = skm === null || skm === void 0 ? void 0 : skm.currentSkeleton$.subscribe((skeleton) => {
2964
2958
  if (!skeleton) return;
2965
2959
  if (skeletonParam.sheetId !== skeleton.sheetId) this._removeDom(id, true);
@@ -2986,9 +2980,9 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
2986
2980
  if (!target) throw new Error("cannot find current target!");
2987
2981
  const { unitId, subUnitId } = target;
2988
2982
  if (!this._getSceneAndTransformerByDrawingSearch(unitId)) return;
2989
- const currentRender = this._renderManagerService.getRenderById(unitId);
2983
+ const currentRender = this._renderManagerService.getRenderUnitById(unitId);
2990
2984
  if (!currentRender) return;
2991
- const skeletonParam = (_this$_renderManagerS8 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS8 === void 0 ? void 0 : _this$_renderManagerS8.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2985
+ const skeletonParam = (_this$_renderManagerS8 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS8 === void 0 ? void 0 : _this$_renderManagerS8.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
2992
2986
  if (!skeletonParam) return;
2993
2987
  const { componentKey, data, allowTransform = true } = config;
2994
2988
  const id = propId !== null && propId !== void 0 ? propId : generateRandomId();
@@ -3031,7 +3025,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
3031
3025
  if (!workbook) return;
3032
3026
  const activeSheetId = workbook.getActiveSheet().getSheetId();
3033
3027
  if (!floatDomParam || !target) return;
3034
- const skMangerService = (_this$_renderManagerS9 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS9 === void 0 ? void 0 : _this$_renderManagerS9.with(SheetSkeletonManagerService);
3028
+ const skMangerService = (_this$_renderManagerS9 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS9 === void 0 ? void 0 : _this$_renderManagerS9.with(SheetSkeletonManagerService);
3035
3029
  if (!skMangerService) return;
3036
3030
  const skeleton = skMangerService.getSkeletonParam(subUnitId);
3037
3031
  if (!skeleton) return;
@@ -3149,7 +3143,7 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
3149
3143
  top: rangePosition.absolute.top
3150
3144
  }
3151
3145
  }, domLayoutParam);
3152
- const newPos = calcSheetFloatDomPosition(new Rect(getDrawingShapeKeyByDrawingSearch({
3146
+ const newRect = new Rect(getDrawingShapeKeyByDrawingSearch({
3153
3147
  unitId,
3154
3148
  subUnitId,
3155
3149
  drawingId
@@ -3159,10 +3153,11 @@ let SheetCanvasFloatDomManagerService = _SheetCanvasFloatDomManagerService = cla
3159
3153
  width: domLayoutParam.width,
3160
3154
  height: domLayoutParam.height,
3161
3155
  zIndex: this._drawingManagerService.getDrawingOrder(unitId, subUnitId).length - 1
3162
- }), renderObject.renderUnit.scene, skeleton.skeleton, target.worksheet, floatDomInfo);
3156
+ });
3157
+ const newPos = calcSheetFloatDomPosition(newRect, renderObject.renderUnit.scene, skeleton.skeleton, target.worksheet, floatDomInfo);
3163
3158
  position$.next(newPos);
3164
3159
  }));
3165
- const skm = (_this$_renderManagerS10 = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS10 === void 0 ? void 0 : _this$_renderManagerS10.with(SheetSkeletonManagerService);
3160
+ const skm = (_this$_renderManagerS10 = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS10 === void 0 ? void 0 : _this$_renderManagerS10.with(SheetSkeletonManagerService);
3166
3161
  skm === null || skm === void 0 || skm.currentSkeleton$.subscribe((skeleton) => {
3167
3162
  if (!skeleton) return;
3168
3163
  if (skeletonParam.sheetId !== skeleton.sheetId) this._removeDom(id, true);
@@ -3469,7 +3464,7 @@ const menuSchema = {
3469
3464
  //#endregion
3470
3465
  //#region package.json
3471
3466
  var name = "@univerjs/sheets-drawing-ui";
3472
- var version = "1.0.0-alpha.7";
3467
+ var version = "1.0.0-alpha.8";
3473
3468
 
3474
3469
  //#endregion
3475
3470
  //#region src/config/config.ts
@@ -3611,7 +3606,7 @@ const SheetDrawingAnchor = (props) => {
3611
3606
  const renderManagerService = useDependency(IRenderManagerService);
3612
3607
  const { drawings } = props;
3613
3608
  const drawingParam = drawings[0];
3614
- const renderObject = drawingParam ? renderManagerService.getRenderById(drawingParam.unitId) : void 0;
3609
+ const renderObject = drawingParam ? renderManagerService.getRenderUnitById(drawingParam.unitId) : void 0;
3615
3610
  const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
3616
3611
  const transformer = scene === null || scene === void 0 ? void 0 : scene.getTransformerByCreate();
3617
3612
  const [anchorShow, setAnchorShow] = useState(true);
@@ -3650,7 +3645,8 @@ const SheetDrawingAnchor = (props) => {
3650
3645
  else if (params.length >= 1) {
3651
3646
  var _params$;
3652
3647
  setAnchorShow(true);
3653
- setValue(((_params$ = params[0]) === null || _params$ === void 0 ? void 0 : _params$.anchorType) || SheetDrawingAnchorType.Position);
3648
+ const anchorType = ((_params$ = params[0]) === null || _params$ === void 0 ? void 0 : _params$.anchorType) || SheetDrawingAnchorType.Position;
3649
+ setValue(anchorType);
3654
3650
  }
3655
3651
  });
3656
3652
  return () => {
@@ -3797,7 +3793,7 @@ let DrawingContextMenuController = class DrawingContextMenuController extends Rx
3797
3793
  _contextMenuListener(workbook) {
3798
3794
  var _this$_renderManagerS;
3799
3795
  if (!workbook) return;
3800
- const scene = (_this$_renderManagerS = this._renderManagerService.getRenderById(workbook.getUnitId())) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.scene;
3796
+ const scene = (_this$_renderManagerS = this._renderManagerService.getRenderUnitById(workbook.getUnitId())) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.scene;
3801
3797
  if (!scene) return;
3802
3798
  const transformer = scene.getTransformerByCreate();
3803
3799
  if (!transformer) return;
@@ -4105,7 +4101,6 @@ let SheetCellImageCopyPasteController = class SheetCellImageCopyPasteController
4105
4101
  title: { label: this._localeService.t("sheets-drawing-ui.cell-image.pasteTitle") },
4106
4102
  children: { label: this._localeService.t("sheets-drawing-ui.cell-image.pasteContent") },
4107
4103
  width: 320,
4108
- destroyOnClose: true,
4109
4104
  onClose: handleCloseDialog,
4110
4105
  showOk: true,
4111
4106
  showCancel: true,
@@ -4643,7 +4638,7 @@ let SheetDrawingPermissionController = class SheetDrawingPermissionController ex
4643
4638
  const subUnitId = sheet.getSheetId();
4644
4639
  const drawingData = this._sheetDrawingService.getDrawingData(unitId, subUnitId);
4645
4640
  const drawingDataValues = Object.values(drawingData);
4646
- const renderObject = this._renderManagerService.getRenderById(unitId);
4641
+ const renderObject = this._renderManagerService.getRenderUnitById(unitId);
4647
4642
  const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
4648
4643
  if (!scene) return;
4649
4644
  scene.getAllObjectsByOrder().forEach((object) => {
@@ -4677,7 +4672,7 @@ let SheetDrawingPermissionController = class SheetDrawingPermissionController ex
4677
4672
  const subUnitId = sheet.getSheetId();
4678
4673
  const drawingData = this._sheetDrawingService.getDrawingData(unitId, subUnitId);
4679
4674
  const drawingDataValues = Object.values(drawingData);
4680
- const renderObject = this._renderManagerService.getRenderById(unitId);
4675
+ const renderObject = this._renderManagerService.getRenderUnitById(unitId);
4681
4676
  const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
4682
4677
  if (!scene) return;
4683
4678
  scene.getAllObjectsByOrder().forEach((object) => {
@@ -4693,7 +4688,7 @@ let SheetDrawingPermissionController = class SheetDrawingPermissionController ex
4693
4688
  if (!sheet) return EMPTY;
4694
4689
  const unitId = workbook.getUnitId();
4695
4690
  const subUnitId = sheet.getSheetId();
4696
- const renderObject = this._renderManagerService.getRenderById(unitId);
4691
+ const renderObject = this._renderManagerService.getRenderUnitById(unitId);
4697
4692
  const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
4698
4693
  if (!scene) return EMPTY;
4699
4694
  const transformer = scene.getTransformerByCreate();
@@ -4741,7 +4736,7 @@ let SheetDrawingPermissionController = class SheetDrawingPermissionController ex
4741
4736
  if (!sheet) return EMPTY;
4742
4737
  const unitId = workbook.getUnitId();
4743
4738
  const subUnitId = sheet.getSheetId();
4744
- const renderObject = this._renderManagerService.getRenderById(unitId);
4739
+ const renderObject = this._renderManagerService.getRenderUnitById(unitId);
4745
4740
  const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
4746
4741
  if (!scene) return EMPTY;
4747
4742
  const transformer = scene.getTransformerByCreate();
@@ -4778,7 +4773,7 @@ let SheetDrawingPermissionController = class SheetDrawingPermissionController ex
4778
4773
  const sheet = workbook.getActiveSheet();
4779
4774
  if (!sheet) return;
4780
4775
  const subUnitId = sheet.getSheetId();
4781
- const renderObject = this._renderManagerService.getRenderById(unitId);
4776
+ const renderObject = this._renderManagerService.getRenderUnitById(unitId);
4782
4777
  const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
4783
4778
  if (!scene) return;
4784
4779
  const drawingData = this._sheetDrawingService.getDrawingData(unitId, subUnitId);
@@ -4915,7 +4910,7 @@ let SheetDrawingPrintingController = class SheetDrawingPrintingController extend
4915
4910
  } }));
4916
4911
  this.disposeWithMe(this._sheetPrintInterceptorService.interceptor.intercept(this._sheetPrintInterceptorService.interceptor.getInterceptPoints().PRINTING_RANGE, { handler: (range, pos, next) => {
4917
4912
  const { unitId, subUnitId } = pos;
4918
- const renderer = this._renderManagerService.getRenderById(unitId);
4913
+ const renderer = this._renderManagerService.getRenderUnitById(unitId);
4919
4914
  if (!renderer) return next(range);
4920
4915
  const skeleton = renderer.with(SheetSkeletonManagerService).getSkeletonParam(subUnitId);
4921
4916
  if (!skeleton) return next(range);
@@ -5119,7 +5114,7 @@ const FlipSheetDrawingCommand = {
5119
5114
  }
5120
5115
  };
5121
5116
  function getSceneByDrawingSearch(accessor, unitId) {
5122
- const render = accessor.get(IRenderManagerService).getRenderById(unitId);
5117
+ const render = accessor.get(IRenderManagerService).getRenderUnitById(unitId);
5123
5118
  if (!render) return null;
5124
5119
  return render.scene;
5125
5120
  }
@@ -5308,7 +5303,7 @@ let DrawingPopupMenuController = class DrawingPopupMenuController extends RxDisp
5308
5303
  }
5309
5304
  _popupMenuListener(unitId) {
5310
5305
  var _this$_renderManagerS;
5311
- const scene = (_this$_renderManagerS = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.scene;
5306
+ const scene = (_this$_renderManagerS = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.scene;
5312
5307
  if (!scene) return;
5313
5308
  const transformer = scene.getTransformerByCreate();
5314
5309
  if (!transformer) return;
@@ -5472,7 +5467,7 @@ let SheetDrawingHitTestService = class SheetDrawingHitTestService extends Dispos
5472
5467
  }
5473
5468
  hitTest(unitId, subUnitId, offsetX, offsetY) {
5474
5469
  var _this$_renderManagerS;
5475
- const scene = (_this$_renderManagerS = this._renderManagerService.getRenderById(unitId)) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.scene;
5470
+ const scene = (_this$_renderManagerS = this._renderManagerService.getRenderUnitById(unitId)) === null || _this$_renderManagerS === void 0 ? void 0 : _this$_renderManagerS.scene;
5476
5471
  if (!scene) return null;
5477
5472
  return this._hitTestScene(scene, unitId, subUnitId, offsetX, offsetY);
5478
5473
  }
@@ -5496,7 +5491,7 @@ let SheetDrawingHitTestService = class SheetDrawingHitTestService extends Dispos
5496
5491
  this._disposeDoubleClickListener();
5497
5492
  return;
5498
5493
  }
5499
- const render = this._renderManagerService.getRenderById(context.unitId);
5494
+ const render = this._renderManagerService.getRenderUnitById(context.unitId);
5500
5495
  const scene = render === null || render === void 0 ? void 0 : render.scene;
5501
5496
  if (!render || !scene) {
5502
5497
  this._disposeDoubleClickListener();
@@ -5627,7 +5622,7 @@ _defineProperty(UniverSheetsDrawingUIPlugin, "pluginName", "SHEET_IMAGE_UI_PLUGI
5627
5622
  _defineProperty(UniverSheetsDrawingUIPlugin, "packageName", name);
5628
5623
  _defineProperty(UniverSheetsDrawingUIPlugin, "version", version);
5629
5624
  UniverSheetsDrawingUIPlugin = __decorate([
5630
- DependentOn(UniverDrawingPlugin, UniverDocsDrawingPlugin, UniverDrawingUIPlugin, UniverSheetsDrawingPlugin),
5625
+ DependentOn(UniverDrawingPlugin, UniverRenderEnginePlugin, UniverDocsDrawingPlugin, UniverSheetsPlugin, UniverUIPlugin, UniverSheetsDrawingPlugin, UniverDrawingUIPlugin, UniverSheetsUIPlugin),
5631
5626
  __decorateParam(1, Inject(Injector)),
5632
5627
  __decorateParam(2, IRenderManagerService),
5633
5628
  __decorateParam(3, IConfigService)
@@ -49,11 +49,11 @@ const locale = { "sheets-drawing-ui": {
49
49
  permission: { dialog: { editErr: "Phạm vi này đã được bảo vệ, hiện không có quyền chỉnh sửa. Nếu cần chỉnh sửa, vui lòng liên hệ với người tạo." } },
50
50
  shortcut: {
51
51
  "drawing-view": "Chế độ xem bản vẽ",
52
- "drawing-move-down": "Move Drawing down",
53
- "drawing-move-up": "Move Drawing up",
54
- "drawing-move-left": "Move Drawing left",
55
- "drawing-move-right": "Move Drawing right",
56
- "drawing-delete": "Delete Drawing"
52
+ "drawing-move-down": "Di chuyển hình vẽ xuống",
53
+ "drawing-move-up": "Di chuyển hình vẽ lên",
54
+ "drawing-move-left": "Di chuyển hình vẽ sang trái",
55
+ "drawing-move-right": "Di chuyển hình vẽ sang phải",
56
+ "drawing-delete": "Xóa hình vẽ"
57
57
  }
58
58
  } };
59
59
 
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { IDisposable, IRange } from '@univerjs/core';
16
+ import type { IRange } from '@univerjs/core';
17
17
  import { Disposable, IImageIoService, ImageSourceType, IUniverInstanceService, IURLImageService } from '@univerjs/core';
18
18
  import { SheetsSelectionsService } from '@univerjs/sheets';
19
19
  declare global {
@@ -135,12 +135,6 @@ export interface IBatchSaveImagesService {
135
135
  * Get all column indices that are within the current selection
136
136
  */
137
137
  getSelectionColumnIndices(): Set<number>;
138
- /**
139
- * Register a custom image downloader for URL images
140
- * @param downloader The downloader function that takes a URL and returns a base64 string
141
- * @returns A disposable object to unregister the downloader
142
- */
143
- registerURLImageDownloader(downloader: (url: string) => Promise<string>): IDisposable;
144
138
  }
145
139
  export declare const IBatchSaveImagesService: import("@wendellhu/redi").IdentifierDecorator<IBatchSaveImagesService>;
146
140
  export declare class BatchSaveImagesService extends Disposable implements IBatchSaveImagesService {
@@ -149,10 +143,6 @@ export declare class BatchSaveImagesService extends Disposable implements IBatch
149
143
  private readonly _imageIoService;
150
144
  private readonly _urlImageService;
151
145
  constructor(_univerInstanceService: IUniverInstanceService, _selectionService: SheetsSelectionsService, _imageIoService: IImageIoService, _urlImageService: IURLImageService);
152
- /**
153
- * @deprecated Use IURLImageService directly
154
- */
155
- registerURLImageDownloader(downloader: (url: string) => Promise<string>): IDisposable;
156
146
  getCellImagesInSelection(): ICellImageInfo[];
157
147
  getCellImagesFromRanges(unitId: string, subUnitId: string, ranges: IRange[]): ICellImageInfo[];
158
148
  getDataColumns(): Array<{
package/lib/umd/facade.js CHANGED
@@ -1 +1 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(require("@univerjs/sheets"),require("@univerjs/sheets-drawing"),require("@univerjs/sheets-drawing-ui"),require("@univerjs/sheets-ui/facade"),require("@univerjs/sheets/facade"),require("@univerjs/ui"),require("@univerjs/core/facade"),require("@univerjs/core"),require("@univerjs/drawing"),require("@univerjs/engine-render")):typeof define==`function`&&define.amd?define([`@univerjs/sheets`,`@univerjs/sheets-drawing`,`@univerjs/sheets-drawing-ui`,`@univerjs/sheets-ui/facade`,`@univerjs/sheets/facade`,`@univerjs/ui`,`@univerjs/core/facade`,`@univerjs/core`,`@univerjs/drawing`,`@univerjs/engine-render`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheets,e.UniverSheetsDrawing,e.UniverSheetsDrawingUi,e.UniverSheetsUiFacade,e.UniverSheetsFacade,e.UniverUi,e.UniverCoreFacade,e.UniverCore,e.UniverDrawing,e.UniverEngineRender))})(this,function(e,t,n,r,i,a,o,s,c,l){var u=class extends i.FWorksheet{getFloatDomById(e){let r=this._injector.get(n.SheetCanvasFloatDomManagerService).getFloatDomInfo(e);if(!r)return null;let{unitId:i,subUnitId:a}=r,{rect:o}=r,{left:s=0,top:c=0,width:l=0,height:u=0,flipX:d=!1,flipY:f=!1,angle:p=0,skewX:m=0,skewY:h=0}=o.getState(),g=this._injector.get(t.ISheetDrawingService).getDrawingByParam({drawingId:r.id,unitId:i,subUnitId:a});return g?{position:{left:s,top:c,width:l,height:u,flipX:d,flipY:f,angle:p,skewX:m,skewY:h},componentKey:g.componentKey,allowTransform:g.allowTransform,data:g.data,id:r.id}:null}getAllFloatDoms(){let e=this._injector.get(n.SheetCanvasFloatDomManagerService),r=this._workbook.getUnitId(),i=this._worksheet.getSheetId();return Array.from(e.getFloatDomsBySubUnitId(r,i).values()).map(e=>{let{rect:n}=e,a=this._injector.get(t.ISheetDrawingService).getDrawingByParam({drawingId:e.id,unitId:r,subUnitId:i});if(!a)return null;let{left:o,top:s,width:c,height:l,flipX:u,flipY:d,angle:f,skewX:p,skewY:m}=n.getState();return{position:{left:o,top:s,width:c,height:l,flipX:u,flipY:d,angle:f,skewX:p,skewY:m},componentKey:a.componentKey,allowTransform:a.allowTransform,data:a.data,id:e.id}}).filter(e=>e!=null)}updateFloatDom(r,i){var a,o;let s=this._injector.get(e.SheetSkeletonService),c=this._injector.get(n.SheetCanvasFloatDomManagerService).getFloatDomInfo(r);if(!c)return this;let{unitId:l,subUnitId:u}=c,d=s.getSkeleton(l,u);if(!d)return this;let f=this._injector.get(t.ISheetDrawingService).getDrawingByParam({unitId:l,subUnitId:u,drawingId:r}),p={...f,componentKey:i.componentKey||f.componentKey,allowTransform:i.allowTransform===void 0?f.allowTransform:i.allowTransform,data:i.data||f.data,sheetTransform:i.position?(a=(0,t.transformToDrawingPosition)(i.position,d))==null?f.sheetTransform:a:f.sheetTransform,transform:{...f.transform,...i.position},axisAlignSheetTransform:i.position?(o=(0,t.transformToAxisAlignPosition)(i.position,d))==null?f.sheetTransform:o:f.sheetTransform};if(!this._commandService.syncExecuteCommand(t.SetSheetDrawingCommand.id,{unitId:l,subUnitId:u,drawings:[p]}))throw Error(`updateFloatDom failed`);return this}batchUpdateFloatDoms(r){let i=this._injector.get(n.SheetCanvasFloatDomManagerService),a=this._injector.get(t.ISheetDrawingService),o=this._injector.get(e.SheetSkeletonService),s=[];for(let e of r){var c,l;let n=i.getFloatDomInfo(e.id);if(!n)continue;let{unitId:r,subUnitId:u}=n,d=o.getSkeleton(r,u);if(!d)continue;let f=a.getDrawingByParam({unitId:r,subUnitId:u,drawingId:e.id});if(!f)continue;let p={...f,componentKey:e.config.componentKey||f.componentKey,allowTransform:e.config.allowTransform===void 0?f.allowTransform:e.config.allowTransform,data:e.config.data||f.data,sheetTransform:e.config.position?(c=(0,t.transformToDrawingPosition)(e.config.position,d))==null?f.sheetTransform:c:f.sheetTransform,transform:{...f.transform,...e.config.position},axisAlignSheetTransform:e.config.position?(l=(0,t.transformToAxisAlignPosition)(e.config.position,d))==null?f.sheetTransform:l:f.sheetTransform};s.push(p)}if(s.length>0){let e=this._workbook.getUnitId(),n=this._worksheet.getSheetId();if(!this._commandService.syncExecuteCommand(t.SetSheetDrawingCommand.id,{unitId:e,subUnitId:n,drawings:s}))throw Error(`batchUpdateFloatDoms failed`)}return this}removeFloatDom(e){return this._injector.get(n.SheetCanvasFloatDomManagerService).removeFloatDom(e),this}addFloatDomToPosition(e,t){let i=this._workbook.getUnitId(),o=this._worksheet.getSheetId(),{key:s,disposableCollection:c}=(0,r.transformComponentKey)(e,this._injector.get(a.ComponentManager)),l=this._injector.get(n.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...e,componentKey:s,unitId:i,subUnitId:o},t);return l?(c.add(l.dispose),{id:l.id,dispose:()=>{c.dispose(),l.dispose()}}):(c.dispose(),null)}addFloatDomToRange(e,t,i,o){let s=this._workbook.getUnitId(),c=this._worksheet.getSheetId(),{key:l,disposableCollection:u}=(0,r.transformComponentKey)(t,this._injector.get(a.ComponentManager)),d=this._injector.get(n.SheetCanvasFloatDomManagerService).addFloatDomToRange(e.getRange(),{...t,componentKey:l,unitId:s,subUnitId:c},i,o);return d?(u.add(d.dispose),{id:d.id,dispose:()=>{u.dispose(),d.dispose()}}):(u.dispose(),null)}addFloatDomToColumnHeader(e,t,i,o){let s=this._workbook.getUnitId(),c=this._worksheet.getSheetId(),{key:l,disposableCollection:u}=(0,r.transformComponentKey)(t,this._injector.get(a.ComponentManager)),d=this._injector.get(n.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(e,{...t,componentKey:l,unitId:s,subUnitId:c},i,o);return d?(u.add(d.dispose),{id:d.id,dispose:()=>{u.dispose(),d.dispose()}}):(u.dispose(),null)}async saveCellImagesAsync(e,t){var r;let i=this._injector.get(n.IBatchSaveImagesService),a=this._fWorkbook.getId(),o=this.getSheetId(),s=t?t.map(e=>e.getRange()):[this._worksheet.getCellMatrix().getDataRange()],c=i.getCellImagesFromRanges(a,o,s);if(c.length===0)return!1;if(c.length===1)try{return await i.downloadSingleImage(c[0]),!0}catch(e){return console.error(`Failed to download image:`,e),!1}let l=[],u=(r=e==null?void 0:e.useCellAddress)==null?!0:r,d=e==null?void 0:e.useColumnIndex;u&&l.push(n.FileNamePart.CELL_ADDRESS),d!==void 0&&l.push(n.FileNamePart.COLUMN_VALUE),l.length===0&&l.push(n.FileNamePart.CELL_ADDRESS);try{return await i.saveImagesWithContext(c,{fileNameParts:l,columnIndex:d},a,o),!0}catch(e){return console.error(`Failed to save images:`,e),!1}}};i.FWorksheet.extend(u);var d=class extends o.FEventName{get BeforeFloatDomAdd(){return`BeforeFloatDomAdd`}get FloatDomAdded(){return`FloatDomAdded`}get BeforeFloatDomUpdate(){return`BeforeFloatDomUpdate`}get FloatDomUpdated(){return`FloatDomUpdated`}get BeforeFloatDomDelete(){return`BeforeFloatDomDelete`}get FloatDomDeleted(){return`FloatDomDeleted`}};o.FEventName.extend(d);var f=class extends o.FUniver{_initialize(e){let n=e.get(s.ICommandService);this.disposeWithMe(this.registerEventHandler(this.Event.BeforeFloatDomAdd,()=>n.beforeCommandExecuted(e=>{if(e.id!==t.InsertSheetDrawingCommand.id)return;let n=e.params,r=this.getActiveWorkbook();if(r==null||n==null)return;let{drawings:i}=n,a=i.filter(e=>e.drawingType===s.DrawingTypeEnum.DRAWING_DOM);if(a.length===0)return;let o={workbook:r,drawings:a};if(this.fireEvent(this.Event.BeforeFloatDomAdd,o),o.cancel)throw new s.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.FloatDomAdded,()=>n.onCommandExecuted(e=>{if(e.id!==t.InsertSheetDrawingCommand.id)return;let n=e.params,r=this.getActiveWorkbook();if(r==null||n==null)return;let{drawings:i}=n,a=i.filter(e=>e.drawingType===s.DrawingTypeEnum.DRAWING_DOM);if(a.length===0)return;let o={workbook:r,drawings:a};this.fireEvent(this.Event.FloatDomAdded,o)}))),this.disposeWithMe(this.registerEventHandler(this.Event.BeforeFloatDomUpdate,()=>n.beforeCommandExecuted(n=>{if(n.id!==t.SetSheetDrawingCommand.id)return;let r=n.params,i=this.getActiveWorkbook();if(i==null||r==null)return;let{drawings:a}=r,o=e.get(c.IDrawingManagerService),l=[];if(a.forEach(e=>{let t=o.getDrawingByParam(e);(t==null?void 0:t.drawingType)===s.DrawingTypeEnum.DRAWING_DOM&&l.push(t)}),l.length===0)return;let u={workbook:i,drawings:l};if(this.fireEvent(this.Event.BeforeFloatDomUpdate,u),u.cancel)throw o.updateNotification(a),new s.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.FloatDomUpdated,()=>n.onCommandExecuted(n=>{if(n.id!==t.SetSheetDrawingCommand.id)return;let r=n.params,i=this.getActiveWorkbook();if(i==null||r==null)return;let{drawings:a}=r,o=e.get(c.IDrawingManagerService),l=[];if(a.forEach(e=>{let t=o.getDrawingByParam(e);(t==null?void 0:t.drawingType)===s.DrawingTypeEnum.DRAWING_DOM&&l.push(t)}),l.length===0)return;let u={workbook:i,drawings:l};this.fireEvent(this.Event.FloatDomUpdated,u)}))),this.disposeWithMe(this.registerEventHandler(this.Event.BeforeFloatDomDelete,()=>n.beforeCommandExecuted(n=>{if(n.id!==t.RemoveSheetDrawingCommand.id)return;let r=n.params,i=this.getActiveWorkbook();if(i==null||r==null)return;let a=e.get(c.IDrawingManagerService),{drawings:o}=r,l=o.map(e=>a.getDrawingByParam(e)).filter(e=>(e==null?void 0:e.drawingType)===s.DrawingTypeEnum.DRAWING_DOM);if(l.length===0)return;let u={workbook:i,drawings:l};if(this.fireEvent(this.Event.BeforeFloatDomDelete,u),u.cancel)throw new s.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.FloatDomDeleted,()=>n.onCommandExecuted(e=>{if(e.id!==t.RemoveSheetDrawingCommand.id)return;let n=e.params,r=this.getActiveWorkbook();if(r==null||n==null)return;let{drawings:i}=n,a=[];for(let e=0;e<i.length;e++){let t=i[e];t.drawingType===s.DrawingTypeEnum.DRAWING_DOM&&a.push(t.drawingId)}if(a.length===0)return;let o={workbook:r,drawings:a};this.fireEvent(this.Event.FloatDomDeleted,o)})))}registerURLImageDownloader(e){return this._injector.get(s.IURLImageService).registerURLImageDownloader(e)}};o.FUniver.extend(f);var p=class extends i.FRange{async insertCellImageAsync(e){var t;let r=this._injector.get(l.IRenderManagerService),i=(t=(0,l.getCurrentTypeOfRenderer)(s.UniverInstanceType.UNIVER_SHEET,this._injector.get(s.IUniverInstanceService),r))==null?void 0:t.with(n.SheetDrawingUpdateController);if(!i)return!1;let a={unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),row:this.getRow(),col:this.getColumn()};return typeof e==`string`?i.insertCellImageByUrl(e,a):i.insertCellImageByFile(e,a)}async saveCellImagesAsync(e){var t;let r=this._injector.get(n.IBatchSaveImagesService),i=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),o=this.getRange(),s=r.getCellImagesFromRanges(i,a,[o]);if(s.length===0)return!1;if(s.length===1)try{return await r.downloadSingleImage(s[0]),!0}catch(e){return console.error(`Failed to download image:`,e),!1}let c=[],l=(t=e==null?void 0:e.useCellAddress)==null?!0:t,u=e==null?void 0:e.useColumnIndex;l&&c.push(n.FileNamePart.CELL_ADDRESS),u!==void 0&&c.push(n.FileNamePart.COLUMN_VALUE),c.length===0&&c.push(n.FileNamePart.CELL_ADDRESS);try{return await r.saveImagesWithContext(s,{fileNameParts:c,columnIndex:u},i,a),!0}catch(e){return console.error(`Failed to save images:`,e),!1}}};i.FRange.extend(p)});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(require("@univerjs/sheets"),require("@univerjs/sheets-drawing"),require("@univerjs/sheets-drawing-ui"),require("@univerjs/sheets-ui/facade"),require("@univerjs/sheets/facade"),require("@univerjs/ui"),require("@univerjs/core/facade"),require("@univerjs/core"),require("@univerjs/drawing"),require("@univerjs/engine-render")):typeof define==`function`&&define.amd?define([`@univerjs/sheets`,`@univerjs/sheets-drawing`,`@univerjs/sheets-drawing-ui`,`@univerjs/sheets-ui/facade`,`@univerjs/sheets/facade`,`@univerjs/ui`,`@univerjs/core/facade`,`@univerjs/core`,`@univerjs/drawing`,`@univerjs/engine-render`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheets,e.UniverSheetsDrawing,e.UniverSheetsDrawingUi,e.UniverSheetsUiFacade,e.UniverSheetsFacade,e.UniverUi,e.UniverCoreFacade,e.UniverCore,e.UniverDrawing,e.UniverEngineRender))})(this,function(e,t,n,r,i,a,o,s,c,l){var u=class extends i.FWorksheet{getFloatDomById(e){let r=this._injector.get(n.SheetCanvasFloatDomManagerService).getFloatDomInfo(e);if(!r)return null;let{unitId:i,subUnitId:a}=r,{rect:o}=r,{left:s=0,top:c=0,width:l=0,height:u=0,flipX:d=!1,flipY:f=!1,angle:p=0,skewX:m=0,skewY:h=0}=o.getState(),g=this._injector.get(t.ISheetDrawingService).getDrawingByParam({drawingId:r.id,unitId:i,subUnitId:a});return g?{position:{left:s,top:c,width:l,height:u,flipX:d,flipY:f,angle:p,skewX:m,skewY:h},componentKey:g.componentKey,allowTransform:g.allowTransform,data:g.data,id:r.id}:null}getAllFloatDoms(){let e=this._injector.get(n.SheetCanvasFloatDomManagerService),r=this._workbook.getUnitId(),i=this._worksheet.getSheetId();return Array.from(e.getFloatDomsBySubUnitId(r,i).values()).map(e=>{let{rect:n}=e,a=this._injector.get(t.ISheetDrawingService).getDrawingByParam({drawingId:e.id,unitId:r,subUnitId:i});if(!a)return null;let{left:o,top:s,width:c,height:l,flipX:u,flipY:d,angle:f,skewX:p,skewY:m}=n.getState();return{position:{left:o,top:s,width:c,height:l,flipX:u,flipY:d,angle:f,skewX:p,skewY:m},componentKey:a.componentKey,allowTransform:a.allowTransform,data:a.data,id:e.id}}).filter(e=>e!=null)}updateFloatDom(r,i){var a,o;let s=this._injector.get(e.SheetSkeletonService),c=this._injector.get(n.SheetCanvasFloatDomManagerService).getFloatDomInfo(r);if(!c)return this;let{unitId:l,subUnitId:u}=c,d=s.getSkeleton(l,u);if(!d)return this;let f=this._injector.get(t.ISheetDrawingService).getDrawingByParam({unitId:l,subUnitId:u,drawingId:r}),p={...f,componentKey:i.componentKey||f.componentKey,allowTransform:i.allowTransform===void 0?f.allowTransform:i.allowTransform,data:i.data||f.data,sheetTransform:i.position?(a=(0,t.transformToDrawingPosition)(i.position,d))==null?f.sheetTransform:a:f.sheetTransform,transform:{...f.transform,...i.position},axisAlignSheetTransform:i.position?(o=(0,t.transformToAxisAlignPosition)(i.position,d))==null?f.sheetTransform:o:f.sheetTransform};if(!this._commandService.syncExecuteCommand(t.SetSheetDrawingCommand.id,{unitId:l,subUnitId:u,drawings:[p]}))throw Error(`updateFloatDom failed`);return this}batchUpdateFloatDoms(r){let i=this._injector.get(n.SheetCanvasFloatDomManagerService),a=this._injector.get(t.ISheetDrawingService),o=this._injector.get(e.SheetSkeletonService),s=[];for(let e of r){var c,l;let n=i.getFloatDomInfo(e.id);if(!n)continue;let{unitId:r,subUnitId:u}=n,d=o.getSkeleton(r,u);if(!d)continue;let f=a.getDrawingByParam({unitId:r,subUnitId:u,drawingId:e.id});if(!f)continue;let p={...f,componentKey:e.config.componentKey||f.componentKey,allowTransform:e.config.allowTransform===void 0?f.allowTransform:e.config.allowTransform,data:e.config.data||f.data,sheetTransform:e.config.position?(c=(0,t.transformToDrawingPosition)(e.config.position,d))==null?f.sheetTransform:c:f.sheetTransform,transform:{...f.transform,...e.config.position},axisAlignSheetTransform:e.config.position?(l=(0,t.transformToAxisAlignPosition)(e.config.position,d))==null?f.sheetTransform:l:f.sheetTransform};s.push(p)}if(s.length>0){let e=this._workbook.getUnitId(),n=this._worksheet.getSheetId();if(!this._commandService.syncExecuteCommand(t.SetSheetDrawingCommand.id,{unitId:e,subUnitId:n,drawings:s}))throw Error(`batchUpdateFloatDoms failed`)}return this}removeFloatDom(e){return this._injector.get(n.SheetCanvasFloatDomManagerService).removeFloatDom(e),this}addFloatDomToPosition(e,t){let i=this._workbook.getUnitId(),o=this._worksheet.getSheetId(),{key:s,disposableCollection:c}=(0,r.transformComponentKey)(e,this._injector.get(a.ComponentManager)),l=this._injector.get(n.SheetCanvasFloatDomManagerService).addFloatDomToPosition({...e,componentKey:s,unitId:i,subUnitId:o},t);return l?(c.add(l.dispose),{id:l.id,dispose:()=>{c.dispose(),l.dispose()}}):(c.dispose(),null)}addFloatDomToRange(e,t,i,o){let s=this._workbook.getUnitId(),c=this._worksheet.getSheetId(),{key:l,disposableCollection:u}=(0,r.transformComponentKey)(t,this._injector.get(a.ComponentManager)),d=this._injector.get(n.SheetCanvasFloatDomManagerService).addFloatDomToRange(e.getRange(),{...t,componentKey:l,unitId:s,subUnitId:c},i,o);return d?(u.add(d.dispose),{id:d.id,dispose:()=>{u.dispose(),d.dispose()}}):(u.dispose(),null)}addFloatDomToColumnHeader(e,t,i,o){let s=this._workbook.getUnitId(),c=this._worksheet.getSheetId(),{key:l,disposableCollection:u}=(0,r.transformComponentKey)(t,this._injector.get(a.ComponentManager)),d=this._injector.get(n.SheetCanvasFloatDomManagerService).addFloatDomToColumnHeader(e,{...t,componentKey:l,unitId:s,subUnitId:c},i,o);return d?(u.add(d.dispose),{id:d.id,dispose:()=>{u.dispose(),d.dispose()}}):(u.dispose(),null)}async saveCellImagesAsync(e,t){var r;let i=this._injector.get(n.IBatchSaveImagesService),a=this._fWorkbook.getId(),o=this.getSheetId(),s=t?t.map(e=>e.getRange()):[this._worksheet.getCellMatrix().getDataRange()],c=i.getCellImagesFromRanges(a,o,s);if(c.length===0)return!1;if(c.length===1)try{return await i.downloadSingleImage(c[0]),!0}catch(e){return console.error(`Failed to download image:`,e),!1}let l=[],u=(r=e==null?void 0:e.useCellAddress)==null||r,d=e==null?void 0:e.useColumnIndex;u&&l.push(n.FileNamePart.CELL_ADDRESS),d!==void 0&&l.push(n.FileNamePart.COLUMN_VALUE),l.length===0&&l.push(n.FileNamePart.CELL_ADDRESS);try{return await i.saveImagesWithContext(c,{fileNameParts:l,columnIndex:d},a,o),!0}catch(e){return console.error(`Failed to save images:`,e),!1}}};i.FWorksheet.extend(u);var d=class extends o.FEventName{get BeforeFloatDomAdd(){return`BeforeFloatDomAdd`}get FloatDomAdded(){return`FloatDomAdded`}get BeforeFloatDomUpdate(){return`BeforeFloatDomUpdate`}get FloatDomUpdated(){return`FloatDomUpdated`}get BeforeFloatDomDelete(){return`BeforeFloatDomDelete`}get FloatDomDeleted(){return`FloatDomDeleted`}};o.FEventName.extend(d);var f=class extends o.FUniver{_initialize(e){let n=e.get(s.ICommandService);this.disposeWithMe(this.registerEventHandler(this.Event.BeforeFloatDomAdd,()=>n.beforeCommandExecuted(e=>{if(e.id!==t.InsertSheetDrawingCommand.id)return;let n=e.params,r=this.getActiveWorkbook();if(r==null||n==null)return;let{drawings:i}=n,a=i.filter(e=>e.drawingType===s.DrawingTypeEnum.DRAWING_DOM);if(a.length===0)return;let o={workbook:r,drawings:a};if(this.fireEvent(this.Event.BeforeFloatDomAdd,o),o.cancel)throw new s.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.FloatDomAdded,()=>n.onCommandExecuted(e=>{if(e.id!==t.InsertSheetDrawingCommand.id)return;let n=e.params,r=this.getActiveWorkbook();if(r==null||n==null)return;let{drawings:i}=n,a=i.filter(e=>e.drawingType===s.DrawingTypeEnum.DRAWING_DOM);if(a.length===0)return;let o={workbook:r,drawings:a};this.fireEvent(this.Event.FloatDomAdded,o)}))),this.disposeWithMe(this.registerEventHandler(this.Event.BeforeFloatDomUpdate,()=>n.beforeCommandExecuted(n=>{if(n.id!==t.SetSheetDrawingCommand.id)return;let r=n.params,i=this.getActiveWorkbook();if(i==null||r==null)return;let{drawings:a}=r,o=e.get(c.IDrawingManagerService),l=[];if(a.forEach(e=>{let t=o.getDrawingByParam(e);(t==null?void 0:t.drawingType)===s.DrawingTypeEnum.DRAWING_DOM&&l.push(t)}),l.length===0)return;let u={workbook:i,drawings:l};if(this.fireEvent(this.Event.BeforeFloatDomUpdate,u),u.cancel)throw o.updateNotification(a),new s.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.FloatDomUpdated,()=>n.onCommandExecuted(n=>{if(n.id!==t.SetSheetDrawingCommand.id)return;let r=n.params,i=this.getActiveWorkbook();if(i==null||r==null)return;let{drawings:a}=r,o=e.get(c.IDrawingManagerService),l=[];if(a.forEach(e=>{let t=o.getDrawingByParam(e);(t==null?void 0:t.drawingType)===s.DrawingTypeEnum.DRAWING_DOM&&l.push(t)}),l.length===0)return;let u={workbook:i,drawings:l};this.fireEvent(this.Event.FloatDomUpdated,u)}))),this.disposeWithMe(this.registerEventHandler(this.Event.BeforeFloatDomDelete,()=>n.beforeCommandExecuted(n=>{if(n.id!==t.RemoveSheetDrawingCommand.id)return;let r=n.params,i=this.getActiveWorkbook();if(i==null||r==null)return;let a=e.get(c.IDrawingManagerService),{drawings:o}=r,l=o.map(e=>a.getDrawingByParam(e)).filter(e=>(e==null?void 0:e.drawingType)===s.DrawingTypeEnum.DRAWING_DOM);if(l.length===0)return;let u={workbook:i,drawings:l};if(this.fireEvent(this.Event.BeforeFloatDomDelete,u),u.cancel)throw new s.CanceledError}))),this.disposeWithMe(this.registerEventHandler(this.Event.FloatDomDeleted,()=>n.onCommandExecuted(e=>{if(e.id!==t.RemoveSheetDrawingCommand.id)return;let n=e.params,r=this.getActiveWorkbook();if(r==null||n==null)return;let{drawings:i}=n,a=[];for(let e=0;e<i.length;e++){let t=i[e];t.drawingType===s.DrawingTypeEnum.DRAWING_DOM&&a.push(t.drawingId)}if(a.length===0)return;let o={workbook:r,drawings:a};this.fireEvent(this.Event.FloatDomDeleted,o)})))}registerURLImageDownloader(e){return this._injector.get(s.IURLImageService).registerURLImageDownloader(e)}};o.FUniver.extend(f);var p=class extends i.FRange{async insertCellImageAsync(e){var t;let r=this._injector.get(l.IRenderManagerService),i=(t=(0,l.getCurrentTypeOfRenderer)(s.UniverInstanceType.UNIVER_SHEET,this._injector.get(s.IUniverInstanceService),r))==null?void 0:t.with(n.SheetDrawingUpdateController);if(!i)return!1;let a={unitId:this._workbook.getUnitId(),subUnitId:this._worksheet.getSheetId(),row:this.getRow(),col:this.getColumn()};return typeof e==`string`?i.insertCellImageByUrl(e,a):i.insertCellImageByFile(e,a)}async saveCellImagesAsync(e){var t;let r=this._injector.get(n.IBatchSaveImagesService),i=this._workbook.getUnitId(),a=this._worksheet.getSheetId(),o=this.getRange(),s=r.getCellImagesFromRanges(i,a,[o]);if(s.length===0)return!1;if(s.length===1)try{return await r.downloadSingleImage(s[0]),!0}catch(e){return console.error(`Failed to download image:`,e),!1}let c=[],l=(t=e==null?void 0:e.useCellAddress)==null||t,u=e==null?void 0:e.useColumnIndex;l&&c.push(n.FileNamePart.CELL_ADDRESS),u!==void 0&&c.push(n.FileNamePart.COLUMN_VALUE),c.length===0&&c.push(n.FileNamePart.CELL_ADDRESS);try{return await r.saveImagesWithContext(s,{fileNameParts:c,columnIndex:u},i,a),!0}catch(e){return console.error(`Failed to save images:`,e),!1}}};i.FRange.extend(p)});