@univerjs/docs-drawing-ui 0.5.5-nightly.202501211606 → 0.5.5

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/es/index.js CHANGED
@@ -1,610 +1,601 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value;
3
- var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
4
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key != "symbol" ? key + "" : key, value);
5
- import { Disposable, UndoCommand, RedoCommand, IUniverInstanceService, ICommandService, JSONX, PositionedObjectLayoutType, CommandType, BooleanNumber, ObjectRelativeFromH, ObjectRelativeFromV, Tools, TextX, TextXActionType, toDisposable, throttle, COLORS, MemoryCursor, IUndoRedoService, BuildTextUtils, ArrangeTypeEnum, Inject, LocaleService, DrawingTypeEnum, WrapTextType, FOCUSING_COMMON_DRAWINGS, IContextService, UniverInstanceType, Direction, useDependency, DocumentFlavor, FOCUSING_UNIVER_EDITOR, RxDisposable, SHEET_EDITOR_UNITS, LifecycleService, DOCS_ZEN_EDITOR_UNIT_ID_KEY, fromEventSubject, LifecycleStages, DependentOn, Injector, Plugin, merge, IConfigService } from "@univerjs/core";
6
- import { IDocDrawingService, UniverDocsDrawingPlugin } from "@univerjs/docs-drawing";
7
- import { IDrawingManagerService, DRAWING_IMAGE_ALLOW_IMAGE_LIST, DRAWING_IMAGE_COUNT_LIMIT, ImageUploadStatusType, DRAWING_IMAGE_ALLOW_SIZE, getImageSize, getDrawingShapeKeyByDrawingSearch, IImageIoService, DRAWING_IMAGE_WIDTH_LIMIT, DRAWING_IMAGE_HEIGHT_LIMIT, UniverDrawingPlugin } from "@univerjs/drawing";
8
- import { DrawingCommonPanel, ImageCropperObject, COMPONENT_IMAGE_POPUP_MENU, OpenImageCropOperation, ImageResetSizeOperation, UniverDrawingUIPlugin } from "@univerjs/drawing-ui";
9
- import { IRenderManagerService, DocumentEditArea, Liquid, PageLayoutType, DocumentSkeletonPageType, Vector2, Rect, getColor, TRANSFORM_CHANGE_OBSERVABLE_TYPE } from "@univerjs/engine-render";
10
- import { IMessageService, ILocalFileService, ISidebarService, MenuItemType, getMenuHiddenObservable, RibbonStartGroup, KeyCode, ComponentManager, IMenuManagerService, IShortcutService, UniverUIPlugin } from "@univerjs/ui";
11
- import { RichTextEditingMutation, DocSkeletonManagerService, DocSelectionManagerService } from "@univerjs/docs";
12
- import { DocSelectionRenderService, getRichTextEditPath, NodePositionConvertToCursor, getOneTextSelectionRange, getAnchorBounding, TEXT_RANGE_LAYER_INDEX, getDocObject, getCustomBlockIdsInSelections, docDrawingPositionToTransform, DocCanvasPopManagerService, IEditorService, SetDocZoomRatioOperation } from "@univerjs/docs-ui";
13
- import { BehaviorSubject, debounceTime, Observable, takeUntil, filter } from "rxjs";
14
- import { MessageType, InputNumber, Select, Checkbox, RadioGroup, Radio } from "@univerjs/design";
15
- import require$$0, { forwardRef, useRef, createElement, useState, useEffect } from "react";
16
- const DOCS_DRAWING_UI_PLUGIN_CONFIG_KEY = "docs-drawing-ui.config", defaultPluginConfig = {};
17
- var __defProp$6 = Object.defineProperty, __getOwnPropDesc$6 = Object.getOwnPropertyDescriptor, __decorateClass$6 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
18
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$6(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
19
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
20
- return kind && result && __defProp$6(target, key, result), result;
21
- }, "__decorateClass$6"), __decorateParam$6 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$6");
22
- function getAddOrRemoveDrawings(actions) {
23
- var _a8, _b, _c, _d;
24
- if (JSONX.isNoop(actions) || !Array.isArray(actions))
1
+ var Pt = Object.defineProperty;
2
+ var Tt = (i, e, n) => e in i ? Pt(i, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : i[e] = n;
3
+ var Se = (i, e, n) => Tt(i, typeof e != "symbol" ? e + "" : e, n);
4
+ import { Disposable as Xe, UndoCommand as yt, RedoCommand as bt, IUniverInstanceService as J, ICommandService as z, JSONX as q, PositionedObjectLayoutType as k, CommandType as X, BooleanNumber as re, ObjectRelativeFromH as ee, ObjectRelativeFromV as G, Tools as Pe, TextX as In, TextXActionType as Y, toDisposable as Ae, throttle as xn, COLORS as Mt, MemoryCursor as Rt, IUndoRedoService as $n, BuildTextUtils as Nt, ArrangeTypeEnum as Je, Inject as we, LocaleService as ln, DrawingTypeEnum as Et, WrapTextType as $e, FOCUSING_COMMON_DRAWINGS as tn, IContextService as zn, UniverInstanceType as Te, Direction as ue, useDependency as pe, DocumentFlavor as fn, FOCUSING_UNIVER_EDITOR as At, RxDisposable as jt, SHEET_EDITOR_UNITS as Lt, LifecycleService as Bt, DOCS_ZEN_EDITOR_UNIT_ID_KEY as Ut, fromEventSubject as Ft, LifecycleStages as Pn, DependentOn as kt, Injector as Ht, Plugin as Wt, merge as Gt, IConfigService as Vt } from "@univerjs/core";
5
+ import { IDocDrawingService as je, UniverDocsDrawingPlugin as $t } from "@univerjs/docs-drawing";
6
+ import { IDrawingManagerService as ve, DRAWING_IMAGE_ALLOW_IMAGE_LIST as zt, DRAWING_IMAGE_COUNT_LIMIT as Tn, ImageUploadStatusType as hn, DRAWING_IMAGE_ALLOW_SIZE as qt, getImageSize as Xt, getDrawingShapeKeyByDrawingSearch as Kt, IImageIoService as Yt, DRAWING_IMAGE_WIDTH_LIMIT as yn, DRAWING_IMAGE_HEIGHT_LIMIT as bn, UniverDrawingPlugin as Jt } from "@univerjs/drawing";
7
+ import { DrawingCommonPanel as Zt, ImageCropperObject as Qt, COMPONENT_IMAGE_POPUP_MENU as ei, OpenImageCropOperation as ni, ImageResetSizeOperation as ti, UniverDrawingUIPlugin as ii } from "@univerjs/drawing-ui";
8
+ import { IRenderManagerService as Q, DocumentEditArea as Ue, Liquid as qn, PageLayoutType as Mn, DocumentSkeletonPageType as Rn, Vector2 as ri, Rect as oi, getColor as si, TRANSFORM_CHANGE_OBSERVABLE_TYPE as ai } from "@univerjs/engine-render";
9
+ import { IMessageService as ci, ILocalFileService as di, ISidebarService as li, MenuItemType as Xn, getMenuHiddenObservable as Kn, RibbonStartGroup as gi, KeyCode as Fe, ComponentManager as mi, IMenuManagerService as ui, IShortcutService as fi, UniverUIPlugin as hi } from "@univerjs/ui";
10
+ import { RichTextEditingMutation as Z, DocSkeletonManagerService as oe, DocSelectionManagerService as _n } from "@univerjs/docs";
11
+ import { DocSelectionRenderService as ye, getRichTextEditPath as ze, NodePositionConvertToCursor as Nn, getOneTextSelectionRange as En, getAnchorBounding as pi, TEXT_RANGE_LAYER_INDEX as wi, getDocObject as vi, getCustomBlockIdsInSelections as Ii, docDrawingPositionToTransform as _i, DocCanvasPopManagerService as Si, IEditorService as Ci, SetDocZoomRatioOperation as Di } from "@univerjs/docs-ui";
12
+ import { BehaviorSubject as Oi, debounceTime as Yn, Observable as xi, takeUntil as An, filter as jn } from "rxjs";
13
+ import { MessageType as Ln, InputNumber as Be, Select as Bn, Checkbox as Pi, RadioGroup as Un, Radio as xe } from "@univerjs/design";
14
+ import Ti, { forwardRef as Jn, useRef as yi, createElement as Zn, useState as ie, useEffect as Sn } from "react";
15
+ const bi = "docs-drawing-ui.config", Fn = {};
16
+ var Mi = Object.defineProperty, Ri = Object.getOwnPropertyDescriptor, Ni = (i, e, n, t) => {
17
+ for (var r = t > 1 ? void 0 : t ? Ri(e, n) : e, o = i.length - 1, s; o >= 0; o--)
18
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
19
+ return t && r && Mi(e, n, r), r;
20
+ }, We = (i, e) => (n, t) => e(n, t, i);
21
+ function Ei(i) {
22
+ var t, r, o, s;
23
+ if (q.isNoop(i) || !Array.isArray(i))
25
24
  return null;
26
- const drawingsOp = actions.find((action) => Array.isArray(action) && (action == null ? void 0 : action[0]) === "drawings");
27
- if (drawingsOp == null || !Array.isArray(drawingsOp) || drawingsOp.length < 3 || typeof drawingsOp[1] == "string" && typeof drawingsOp[2] != "object" || Array.isArray(drawingsOp[1]) && typeof drawingsOp[1][1] != "object")
25
+ const e = i.find((a) => Array.isArray(a) && (a == null ? void 0 : a[0]) === "drawings");
26
+ if (e == null || !Array.isArray(e) || e.length < 3 || typeof e[1] == "string" && typeof e[2] != "object" || Array.isArray(e[1]) && typeof e[1][1] != "object")
28
27
  return null;
29
- const drawings = [];
30
- if (Array.isArray(drawingsOp == null ? void 0 : drawingsOp[1]))
31
- for (const op of drawingsOp)
32
- Array.isArray(op) && drawings.push({
33
- type: (_a8 = op == null ? void 0 : op[1]) != null && _a8.i ? "add" : "remove",
34
- drawingId: op == null ? void 0 : op[0],
35
- drawing: (_b = op == null ? void 0 : op[1]) == null ? void 0 : _b.i
28
+ const n = [];
29
+ if (Array.isArray(e == null ? void 0 : e[1]))
30
+ for (const a of e)
31
+ Array.isArray(a) && n.push({
32
+ type: (t = a == null ? void 0 : a[1]) != null && t.i ? "add" : "remove",
33
+ drawingId: a == null ? void 0 : a[0],
34
+ drawing: (r = a == null ? void 0 : a[1]) == null ? void 0 : r.i
36
35
  });
37
36
  else
38
- drawings.push({
39
- type: (_c = drawingsOp[2]) != null && _c.i ? "add" : "remove",
40
- drawingId: drawingsOp[1],
41
- drawing: (_d = drawingsOp[2]) == null ? void 0 : _d.i
37
+ n.push({
38
+ type: (o = e[2]) != null && o.i ? "add" : "remove",
39
+ drawingId: e[1],
40
+ drawing: (s = e[2]) == null ? void 0 : s.i
42
41
  });
43
- return drawings;
42
+ return n;
44
43
  }
45
- __name(getAddOrRemoveDrawings, "getAddOrRemoveDrawings");
46
- function getReOrderedDrawings(actions) {
47
- if (!Array.isArray(actions) || actions.length < 3 || actions[0] !== "drawingsOrder")
44
+ function Ai(i) {
45
+ if (!Array.isArray(i) || i.length < 3 || i[0] !== "drawingsOrder")
48
46
  return [];
49
- const drawingIndexes = [];
50
- for (let i = 1; i < actions.length; i++) {
51
- const action = actions[i];
52
- if (Array.isArray(action) && typeof action[0] == "number" && typeof action[1] == "object")
53
- drawingIndexes.push(action[0]);
47
+ const e = [];
48
+ for (let n = 1; n < i.length; n++) {
49
+ const t = i[n];
50
+ if (Array.isArray(t) && typeof t[0] == "number" && typeof t[1] == "object")
51
+ e.push(t[0]);
54
52
  else {
55
- drawingIndexes.length = 0;
53
+ e.length = 0;
56
54
  break;
57
55
  }
58
56
  }
59
- return drawingIndexes;
57
+ return e;
60
58
  }
61
- __name(getReOrderedDrawings, "getReOrderedDrawings");
62
- var _a;
63
- let DocDrawingAddRemoveController = (_a = class extends Disposable {
64
- constructor(_univerInstanceService, _commandService, _drawingManagerService, _docDrawingService, _renderManagerService) {
65
- super(), this._univerInstanceService = _univerInstanceService, this._commandService = _commandService, this._drawingManagerService = _drawingManagerService, this._docDrawingService = _docDrawingService, this._renderManagerService = _renderManagerService, this._initialize();
59
+ let rn = class extends Xe {
60
+ constructor(i, e, n, t, r) {
61
+ super(), this._univerInstanceService = i, this._commandService = e, this._drawingManagerService = n, this._docDrawingService = t, this._renderManagerService = r, this._initialize();
66
62
  }
67
63
  _initialize() {
68
64
  this._commandExecutedListener();
69
65
  }
70
66
  _commandExecutedListener() {
71
67
  this.disposeWithMe(
72
- this._commandService.beforeCommandExecuted((command) => {
73
- if (command.id !== RichTextEditingMutation.id)
68
+ this._commandService.beforeCommandExecuted((i) => {
69
+ if (i.id !== Z.id)
74
70
  return;
75
- const params = command.params, { unitId, actions } = params, addOrRemoveDrawings = getAddOrRemoveDrawings(actions);
76
- if (addOrRemoveDrawings != null)
77
- for (const { type, drawingId, drawing } of addOrRemoveDrawings)
78
- type === "add" ? this._addDrawings(unitId, [drawing]) : this._removeDrawings(unitId, [drawingId]);
71
+ const e = i.params, { unitId: n, actions: t } = e, r = Ei(t);
72
+ if (r != null)
73
+ for (const { type: o, drawingId: s, drawing: a } of r)
74
+ o === "add" ? this._addDrawings(n, [a]) : this._removeDrawings(n, [s]);
79
75
  })
80
76
  ), this.disposeWithMe(
81
- this._commandService.onCommandExecuted((command) => {
82
- if (command.id !== RichTextEditingMutation.id)
77
+ this._commandService.onCommandExecuted((i) => {
78
+ if (i.id !== Z.id)
83
79
  return;
84
- const params = command.params, { unitId, actions } = params;
85
- getReOrderedDrawings(actions).length > 0 && this._updateDrawingsOrder(unitId);
80
+ const e = i.params, { unitId: n, actions: t } = e;
81
+ Ai(t).length > 0 && this._updateDrawingsOrder(n);
86
82
  })
87
83
  ), this.disposeWithMe(
88
- this._commandService.onCommandExecuted((command) => {
89
- var _a8;
90
- if (command.id !== UndoCommand.id && command.id !== RedoCommand.id)
84
+ this._commandService.onCommandExecuted((i) => {
85
+ var s;
86
+ if (i.id !== yt.id && i.id !== bt.id)
91
87
  return;
92
- const unitId = (_a8 = this._univerInstanceService.getCurrentUniverDocInstance()) == null ? void 0 : _a8.getUnitId(), focusedDrawings = this._drawingManagerService.getFocusDrawings();
93
- if (unitId == null || focusedDrawings.length === 0)
88
+ const e = (s = this._univerInstanceService.getCurrentUniverDocInstance()) == null ? void 0 : s.getUnitId(), n = this._drawingManagerService.getFocusDrawings();
89
+ if (e == null || n.length === 0)
94
90
  return;
95
- const renderObject = this._renderManagerService.getRenderById(unitId), scene = renderObject == null ? void 0 : renderObject.scene;
96
- if (scene == null)
91
+ const t = this._renderManagerService.getRenderById(e), r = t == null ? void 0 : t.scene;
92
+ if (r == null)
97
93
  return !1;
98
- scene.getTransformerByCreate().refreshControls();
94
+ r.getTransformerByCreate().refreshControls();
99
95
  })
100
96
  );
101
97
  }
102
- _addDrawings(unitId, drawings) {
103
- const drawingManagerService = this._drawingManagerService, docDrawingService = this._docDrawingService, jsonOp = this._docDrawingService.getBatchAddOp(drawings), { subUnitId, redo: op, objects } = jsonOp;
104
- drawingManagerService.applyJson1(unitId, subUnitId, op), docDrawingService.applyJson1(unitId, subUnitId, op), drawingManagerService.addNotification(objects), docDrawingService.addNotification(objects);
105
- }
106
- _removeDrawings(unitId, drawingIds) {
107
- const drawingManagerService = this._drawingManagerService, docDrawingService = this._docDrawingService, jsonOp = this._docDrawingService.getBatchRemoveOp(drawingIds.map((drawingId) => ({
108
- unitId,
109
- subUnitId: unitId,
110
- drawingId
111
- }))), { subUnitId, redo: op, objects } = jsonOp;
112
- drawingManagerService.applyJson1(unitId, subUnitId, op), docDrawingService.applyJson1(unitId, subUnitId, op), drawingManagerService.removeNotification(objects), docDrawingService.removeNotification(objects);
113
- }
114
- _updateDrawingsOrder(unitId) {
115
- const documentDataModel = this._univerInstanceService.getUniverDocInstance(unitId);
116
- if (documentDataModel == null)
98
+ _addDrawings(i, e) {
99
+ const n = this._drawingManagerService, t = this._docDrawingService, r = this._docDrawingService.getBatchAddOp(e), { subUnitId: o, redo: s, objects: a } = r;
100
+ n.applyJson1(i, o, s), t.applyJson1(i, o, s), n.addNotification(a), t.addNotification(a);
101
+ }
102
+ _removeDrawings(i, e) {
103
+ const n = this._drawingManagerService, t = this._docDrawingService, r = this._docDrawingService.getBatchRemoveOp(e.map((d) => ({
104
+ unitId: i,
105
+ subUnitId: i,
106
+ drawingId: d
107
+ }))), { subUnitId: o, redo: s, objects: a } = r;
108
+ n.applyJson1(i, o, s), t.applyJson1(i, o, s), n.removeNotification(a), t.removeNotification(a);
109
+ }
110
+ _updateDrawingsOrder(i) {
111
+ const e = this._univerInstanceService.getUniverDocInstance(i);
112
+ if (e == null)
117
113
  return;
118
- const drawingsOrder = documentDataModel.getSnapshot().drawingsOrder;
119
- if (drawingsOrder == null)
114
+ const n = e.getSnapshot().drawingsOrder;
115
+ if (n == null)
120
116
  return;
121
- const drawingManagerService = this._drawingManagerService, docDrawingService = this._docDrawingService;
122
- drawingManagerService.setDrawingOrder(unitId, unitId, drawingsOrder), docDrawingService.setDrawingOrder(unitId, unitId, drawingsOrder);
123
- const objects = {
124
- unitId,
125
- subUnitId: unitId,
126
- drawingIds: drawingsOrder
117
+ const t = this._drawingManagerService, r = this._docDrawingService;
118
+ t.setDrawingOrder(i, i, n), r.setDrawingOrder(i, i, n);
119
+ const o = {
120
+ unitId: i,
121
+ subUnitId: i,
122
+ drawingIds: n
127
123
  };
128
- drawingManagerService.orderNotification(objects), docDrawingService.orderNotification(objects);
129
- }
130
- }, __name(_a, "DocDrawingAddRemoveController"), _a);
131
- DocDrawingAddRemoveController = __decorateClass$6([
132
- __decorateParam$6(0, IUniverInstanceService),
133
- __decorateParam$6(1, ICommandService),
134
- __decorateParam$6(2, IDrawingManagerService),
135
- __decorateParam$6(3, IDocDrawingService),
136
- __decorateParam$6(4, IRenderManagerService)
137
- ], DocDrawingAddRemoveController);
138
- const _DocRefreshDrawingsService = class _DocRefreshDrawingsService {
124
+ t.orderNotification(o), r.orderNotification(o);
125
+ }
126
+ };
127
+ rn = Ni([
128
+ We(0, J),
129
+ We(1, z),
130
+ We(2, ve),
131
+ We(3, je),
132
+ We(4, Q)
133
+ ], rn);
134
+ class gn {
139
135
  constructor() {
140
- __publicField(this, "_refreshDrawings$", new BehaviorSubject(null));
141
- __publicField(this, "refreshDrawings$", this._refreshDrawings$.asObservable());
136
+ Se(this, "_refreshDrawings$", new Oi(null));
137
+ Se(this, "refreshDrawings$", this._refreshDrawings$.asObservable());
142
138
  }
143
- refreshDrawings(skeleton) {
144
- this._refreshDrawings$.next(skeleton);
139
+ refreshDrawings(e) {
140
+ this._refreshDrawings$.next(e);
145
141
  }
142
+ }
143
+ var me = /* @__PURE__ */ ((i) => (i.INLINE = "inline", i.BEHIND_TEXT = "behindText", i.IN_FRONT_OF_TEXT = "inFrontOfText", i.WRAP_SQUARE = "wrapSquare", i.WRAP_TOP_AND_BOTTOM = "wrapTopAndBottom", i))(me || {});
144
+ const ji = {
145
+ inline: k.INLINE,
146
+ wrapSquare: k.WRAP_SQUARE,
147
+ wrapTopAndBottom: k.WRAP_TOP_AND_BOTTOM,
148
+ inFrontOfText: k.WRAP_NONE,
149
+ behindText: k.WRAP_NONE
146
150
  };
147
- __name(_DocRefreshDrawingsService, "DocRefreshDrawingsService");
148
- let DocRefreshDrawingsService = _DocRefreshDrawingsService;
149
- var TextWrappingStyle = /* @__PURE__ */ ((TextWrappingStyle2) => (TextWrappingStyle2.INLINE = "inline", TextWrappingStyle2.BEHIND_TEXT = "behindText", TextWrappingStyle2.IN_FRONT_OF_TEXT = "inFrontOfText", TextWrappingStyle2.WRAP_SQUARE = "wrapSquare", TextWrappingStyle2.WRAP_TOP_AND_BOTTOM = "wrapTopAndBottom", TextWrappingStyle2))(TextWrappingStyle || {});
150
- const WRAPPING_STYLE_TO_LAYOUT_TYPE = {
151
- inline: PositionedObjectLayoutType.INLINE,
152
- wrapSquare: PositionedObjectLayoutType.WRAP_SQUARE,
153
- wrapTopAndBottom: PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM,
154
- inFrontOfText: PositionedObjectLayoutType.WRAP_NONE,
155
- behindText: PositionedObjectLayoutType.WRAP_NONE
156
- };
157
- function getDeleteAndInsertCustomBlockActions(segmentId, oldSegmentId, segmentPage, offset, drawingId, documentDataModel, docSelectionRenderManager) {
158
- var _a8, _b;
159
- const textX = new TextX(), jsonX = JSONX.getInstance(), rawActions = [], oldBody = documentDataModel.getSelfOrHeaderFooterModel(oldSegmentId).getBody(), body = documentDataModel.getSelfOrHeaderFooterModel(segmentId).getBody();
160
- if (oldBody == null || body == null)
151
+ function Qn(i, e, n, t, r, o, s) {
152
+ var p, h;
153
+ const a = new In(), d = q.getInstance(), c = [], l = o.getSelfOrHeaderFooterModel(e).getBody(), u = o.getSelfOrHeaderFooterModel(i).getBody();
154
+ if (l == null || u == null)
161
155
  return;
162
- const oldOffset = (_b = (_a8 = oldBody.customBlocks) == null ? void 0 : _a8.find((block) => block.blockId === drawingId)) == null ? void 0 : _b.startIndex;
163
- if (oldOffset != null) {
164
- if (offset = Math.min(body.dataStream.length - 2, offset), segmentId === oldSegmentId) {
165
- if (offset < oldOffset ? (offset > 0 && textX.push({
166
- t: TextXActionType.RETAIN,
167
- len: offset
168
- }), textX.push({
169
- t: TextXActionType.INSERT,
156
+ const m = (h = (p = l.customBlocks) == null ? void 0 : p.find((v) => v.blockId === r)) == null ? void 0 : h.startIndex;
157
+ if (m != null) {
158
+ if (t = Math.min(u.dataStream.length - 2, t), i === e) {
159
+ if (t < m ? (t > 0 && a.push({
160
+ t: Y.RETAIN,
161
+ len: t
162
+ }), a.push({
163
+ t: Y.INSERT,
170
164
  body: {
171
165
  dataStream: "\b",
172
166
  customBlocks: [{
173
167
  startIndex: 0,
174
- blockId: drawingId
168
+ blockId: r
175
169
  }]
176
170
  },
177
171
  len: 1
178
- }), textX.push({
179
- t: TextXActionType.RETAIN,
180
- len: oldOffset - offset
181
- }), textX.push({
182
- t: TextXActionType.DELETE,
172
+ }), a.push({
173
+ t: Y.RETAIN,
174
+ len: m - t
175
+ }), a.push({
176
+ t: Y.DELETE,
183
177
  len: 1
184
- })) : (oldOffset > 0 && textX.push({
185
- t: TextXActionType.RETAIN,
186
- len: oldOffset
187
- }), textX.push({
188
- t: TextXActionType.DELETE,
178
+ })) : (m > 0 && a.push({
179
+ t: Y.RETAIN,
180
+ len: m
181
+ }), a.push({
182
+ t: Y.DELETE,
189
183
  len: 1
190
- }), offset - oldOffset - 1 > 0 && textX.push({
191
- t: TextXActionType.RETAIN,
192
- len: offset - oldOffset - 1
193
- }), textX.push({
194
- t: TextXActionType.INSERT,
184
+ }), t - m - 1 > 0 && a.push({
185
+ t: Y.RETAIN,
186
+ len: t - m - 1
187
+ }), a.push({
188
+ t: Y.INSERT,
195
189
  body: {
196
190
  dataStream: "\b",
197
191
  customBlocks: [{
198
192
  startIndex: 0,
199
- blockId: drawingId
193
+ blockId: r
200
194
  }]
201
195
  },
202
196
  len: 1
203
- })), offset !== oldOffset) {
204
- const path = getRichTextEditPath(documentDataModel, oldSegmentId), action = jsonX.editOp(textX.serialize(), path);
205
- rawActions.push(action);
197
+ })), t !== m) {
198
+ const v = ze(o, e), w = d.editOp(a.serialize(), v);
199
+ c.push(w);
206
200
  }
207
201
  } else {
208
- oldOffset > 0 && textX.push({
209
- t: TextXActionType.RETAIN,
210
- len: oldOffset
211
- }), textX.push({
212
- t: TextXActionType.DELETE,
202
+ m > 0 && a.push({
203
+ t: Y.RETAIN,
204
+ len: m
205
+ }), a.push({
206
+ t: Y.DELETE,
213
207
  len: 1
214
208
  });
215
- let path = getRichTextEditPath(documentDataModel, oldSegmentId), action = jsonX.editOp(textX.serialize(), path);
216
- rawActions.push(action), textX.empty(), offset > 0 && textX.push({
217
- t: TextXActionType.RETAIN,
218
- len: offset
219
- }), textX.push({
220
- t: TextXActionType.INSERT,
209
+ let v = ze(o, e), w = d.editOp(a.serialize(), v);
210
+ c.push(w), a.empty(), t > 0 && a.push({
211
+ t: Y.RETAIN,
212
+ len: t
213
+ }), a.push({
214
+ t: Y.INSERT,
221
215
  body: {
222
216
  dataStream: "\b",
223
217
  customBlocks: [{
224
218
  startIndex: 0,
225
- blockId: drawingId
219
+ blockId: r
226
220
  }]
227
221
  },
228
222
  len: 1
229
- }), path = getRichTextEditPath(documentDataModel, segmentId), action = jsonX.editOp(textX.serialize(), path), rawActions.push(action), docSelectionRenderManager.setSegment(segmentId), docSelectionRenderManager.setSegmentPage(segmentPage);
223
+ }), v = ze(o, i), w = d.editOp(a.serialize(), v), c.push(w), s.setSegment(i), s.setSegmentPage(n);
230
224
  }
231
- return rawActions;
225
+ return c;
232
226
  }
233
227
  }
234
- __name(getDeleteAndInsertCustomBlockActions, "getDeleteAndInsertCustomBlockActions");
235
- const UpdateDocDrawingWrappingStyleCommand = {
228
+ const et = {
236
229
  id: "doc.command.update-doc-drawing-wrapping-style",
237
- type: CommandType.COMMAND,
230
+ type: X.COMMAND,
238
231
  // eslint-disable-next-line max-lines-per-function, complexity
239
- handler: /* @__PURE__ */ __name((accessor, params) => {
240
- var _a8, _b;
241
- if (params == null)
232
+ handler: (i, e) => {
233
+ var N, B;
234
+ if (e == null)
242
235
  return !1;
243
- const { drawings, wrappingStyle, unitId } = params, commandService = accessor.get(ICommandService), univerInstanceService = accessor.get(IUniverInstanceService), renderObject = accessor.get(IRenderManagerService).getRenderById(unitId), skeletonData = renderObject == null ? void 0 : renderObject.with(DocSkeletonManagerService).getSkeleton().getSkeletonData(), viewModel = renderObject == null ? void 0 : renderObject.with(DocSkeletonManagerService).getViewModel(), scene = renderObject == null ? void 0 : renderObject.scene, documentDataModel = univerInstanceService.getCurrentUniverDocInstance();
244
- if (documentDataModel == null || skeletonData == null || scene == null || viewModel == null)
236
+ const { drawings: n, wrappingStyle: t, unitId: r } = e, o = i.get(z), s = i.get(J), d = i.get(Q).getRenderById(r), c = d == null ? void 0 : d.with(oe).getSkeleton().getSkeletonData(), l = d == null ? void 0 : d.with(oe).getViewModel(), u = d == null ? void 0 : d.scene, m = s.getCurrentUniverDocInstance();
237
+ if (m == null || c == null || u == null || l == null)
245
238
  return !1;
246
- const editArea = viewModel.getEditArea(), transformer = scene.getTransformerByCreate(), { pages, skeHeaders, skeFooters } = skeletonData, jsonX = JSONX.getInstance(), rawActions = [], { drawings: oldDrawings = {} } = documentDataModel.getSnapshot();
247
- for (const drawing of drawings) {
248
- const { drawingId } = drawing, oldLayoutType = oldDrawings[drawingId].layoutType, newLayoutType = WRAPPING_STYLE_TO_LAYOUT_TYPE[wrappingStyle];
249
- if (oldLayoutType !== newLayoutType) {
250
- const updateLayoutTypeAction = jsonX.replaceOp(["drawings", drawingId, "layoutType"], oldLayoutType, newLayoutType);
251
- rawActions.push(updateLayoutTypeAction);
239
+ const p = l.getEditArea(), h = u.getTransformerByCreate(), { pages: v, skeHeaders: w, skeFooters: S } = c, O = q.getInstance(), D = [], { drawings: x = {} } = m.getSnapshot();
240
+ for (const R of n) {
241
+ const { drawingId: I } = R, j = x[I].layoutType, H = ji[t];
242
+ if (j !== H) {
243
+ const C = O.replaceOp(["drawings", I, "layoutType"], j, H);
244
+ D.push(C);
252
245
  }
253
- if (wrappingStyle === "behindText" || wrappingStyle === "inFrontOfText") {
254
- const oldBehindDoc = oldDrawings[drawingId].behindDoc, newBehindDoc = wrappingStyle === "behindText" ? BooleanNumber.TRUE : BooleanNumber.FALSE;
255
- if (oldBehindDoc !== newBehindDoc) {
256
- const updateBehindDocAction = jsonX.replaceOp(["drawings", drawingId, "behindDoc"], oldBehindDoc, newBehindDoc);
257
- rawActions.push(updateBehindDocAction);
246
+ if (t === "behindText" || t === "inFrontOfText") {
247
+ const C = x[I].behindDoc, M = t === "behindText" ? re.TRUE : re.FALSE;
248
+ if (C !== M) {
249
+ const P = O.replaceOp(["drawings", I, "behindDoc"], C, M);
250
+ D.push(P);
258
251
  }
259
252
  }
260
- if (wrappingStyle === "inline")
253
+ if (t === "inline")
261
254
  continue;
262
- let skeDrawing = null, pageMarginTop = 0, pageMarginLeft = 0;
263
- for (const page of pages) {
264
- const { headerId, footerId, marginTop, marginLeft, marginBottom, pageWidth, pageHeight } = page;
265
- switch (editArea) {
266
- case DocumentEditArea.HEADER: {
267
- const headerSke = (_a8 = skeHeaders.get(headerId)) == null ? void 0 : _a8.get(pageWidth);
268
- headerSke != null && headerSke.skeDrawings.has(drawingId) && (skeDrawing = headerSke.skeDrawings.get(drawingId), pageMarginTop = headerSke.marginTop, pageMarginLeft = marginLeft);
255
+ let A = null, W = 0, _ = 0;
256
+ for (const C of v) {
257
+ const { headerId: M, footerId: P, marginTop: L, marginLeft: U, marginBottom: y, pageWidth: E, pageHeight: $ } = C;
258
+ switch (p) {
259
+ case Ue.HEADER: {
260
+ const F = (N = w.get(M)) == null ? void 0 : N.get(E);
261
+ F != null && F.skeDrawings.has(I) && (A = F.skeDrawings.get(I), W = F.marginTop, _ = U);
269
262
  break;
270
263
  }
271
- case DocumentEditArea.FOOTER: {
272
- const footerSke = (_b = skeFooters.get(footerId)) == null ? void 0 : _b.get(pageWidth);
273
- footerSke != null && footerSke.skeDrawings.has(drawingId) && (skeDrawing = footerSke.skeDrawings.get(drawingId), pageMarginTop = pageHeight - marginBottom + footerSke.marginTop, pageMarginLeft = marginLeft);
264
+ case Ue.FOOTER: {
265
+ const F = (B = S.get(P)) == null ? void 0 : B.get(E);
266
+ F != null && F.skeDrawings.has(I) && (A = F.skeDrawings.get(I), W = $ - y + F.marginTop, _ = U);
274
267
  break;
275
268
  }
276
- case DocumentEditArea.BODY: {
277
- page.skeDrawings.has(drawingId) && (skeDrawing = page.skeDrawings.get(drawingId), pageMarginTop = marginTop, pageMarginLeft = marginLeft);
269
+ case Ue.BODY: {
270
+ C.skeDrawings.has(I) && (A = C.skeDrawings.get(I), W = L, _ = U);
278
271
  break;
279
272
  }
280
273
  }
281
- if (skeDrawing != null)
274
+ if (A != null)
282
275
  break;
283
276
  }
284
- if (skeDrawing != null) {
285
- const { aTop, aLeft } = skeDrawing, oldPositionH = oldDrawings[drawingId].docTransform.positionH;
286
- let posOffsetH = aLeft;
287
- oldPositionH.relativeFrom === ObjectRelativeFromH.MARGIN ? posOffsetH -= pageMarginLeft : oldPositionH.relativeFrom === ObjectRelativeFromH.COLUMN && (posOffsetH -= skeDrawing.columnLeft);
288
- const newPositionH = {
289
- relativeFrom: oldPositionH.relativeFrom,
290
- posOffset: posOffsetH
277
+ if (A != null) {
278
+ const { aTop: C, aLeft: M } = A, P = x[I].docTransform.positionH;
279
+ let L = M;
280
+ P.relativeFrom === ee.MARGIN ? L -= _ : P.relativeFrom === ee.COLUMN && (L -= A.columnLeft);
281
+ const U = {
282
+ relativeFrom: P.relativeFrom,
283
+ posOffset: L
291
284
  };
292
- if (oldPositionH.posOffset !== newPositionH.posOffset) {
293
- const action = jsonX.replaceOp(["drawings", drawingId, "docTransform", "positionH"], oldPositionH, newPositionH);
294
- rawActions.push(action);
285
+ if (P.posOffset !== U.posOffset) {
286
+ const F = O.replaceOp(["drawings", I, "docTransform", "positionH"], P, U);
287
+ D.push(F);
295
288
  }
296
- const oldPositionV = oldDrawings[drawingId].docTransform.positionV;
297
- let posOffsetV = aTop;
298
- oldPositionV.relativeFrom === ObjectRelativeFromV.PAGE ? posOffsetV += pageMarginTop : oldPositionV.relativeFrom === ObjectRelativeFromV.LINE ? posOffsetV -= skeDrawing.lineTop : oldPositionV.relativeFrom === ObjectRelativeFromV.PARAGRAPH && (posOffsetV -= skeDrawing.blockAnchorTop);
299
- const newPositionV = {
300
- relativeFrom: oldPositionV.relativeFrom,
301
- posOffset: posOffsetV
289
+ const y = x[I].docTransform.positionV;
290
+ let E = C;
291
+ y.relativeFrom === G.PAGE ? E += W : y.relativeFrom === G.LINE ? E -= A.lineTop : y.relativeFrom === G.PARAGRAPH && (E -= A.blockAnchorTop);
292
+ const $ = {
293
+ relativeFrom: y.relativeFrom,
294
+ posOffset: E
302
295
  };
303
- if (oldPositionV.posOffset !== newPositionV.posOffset) {
304
- const action = jsonX.replaceOp(["drawings", drawingId, "docTransform", "positionV"], oldPositionV, newPositionV);
305
- rawActions.push(action);
296
+ if (y.posOffset !== $.posOffset) {
297
+ const F = O.replaceOp(["drawings", I, "docTransform", "positionV"], y, $);
298
+ D.push(F);
306
299
  }
307
300
  }
308
301
  }
309
- const doMutation = {
310
- id: RichTextEditingMutation.id,
302
+ const b = {
303
+ id: Z.id,
311
304
  params: {
312
- unitId,
305
+ unitId: r,
313
306
  actions: [],
314
307
  textRanges: null
315
308
  }
316
309
  };
317
- doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null);
318
- const result = commandService.syncExecuteCommand(doMutation.id, doMutation.params);
319
- return transformer.refreshControls(), !!result;
320
- }, "handler")
321
- }, UpdateDocDrawingDistanceCommand = {
310
+ b.params.actions = D.reduce((R, I) => q.compose(R, I), null);
311
+ const T = o.syncExecuteCommand(b.id, b.params);
312
+ return h.refreshControls(), !!T;
313
+ }
314
+ }, nt = {
322
315
  id: "doc.command.update-doc-drawing-distance",
323
- type: CommandType.COMMAND,
324
- handler: /* @__PURE__ */ __name((accessor, params) => {
325
- if (params == null)
316
+ type: X.COMMAND,
317
+ handler: (i, e) => {
318
+ if (e == null)
326
319
  return !1;
327
- const commandService = accessor.get(ICommandService), documentDataModel = accessor.get(IUniverInstanceService).getCurrentUniverDocInstance();
328
- if (documentDataModel == null)
320
+ const n = i.get(z), r = i.get(J).getCurrentUniverDocInstance();
321
+ if (r == null)
329
322
  return !1;
330
- const { drawings, dist, unitId } = params, jsonX = JSONX.getInstance(), rawActions = [], { drawings: oldDrawings = {} } = documentDataModel.getSnapshot();
331
- for (const drawing of drawings) {
332
- const { drawingId } = drawing;
333
- for (const [key, value] of Object.entries(dist)) {
334
- const oldValue = oldDrawings[drawingId][key];
335
- if (oldValue !== value) {
336
- const action = jsonX.replaceOp(["drawings", drawingId, key], oldValue, value);
337
- rawActions.push(action);
323
+ const { drawings: o, dist: s, unitId: a } = e, d = q.getInstance(), c = [], { drawings: l = {} } = r.getSnapshot();
324
+ for (const p of o) {
325
+ const { drawingId: h } = p;
326
+ for (const [v, w] of Object.entries(s)) {
327
+ const S = l[h][v];
328
+ if (S !== w) {
329
+ const O = d.replaceOp(["drawings", h, v], S, w);
330
+ c.push(O);
338
331
  }
339
332
  }
340
333
  }
341
- const doMutation = {
342
- id: RichTextEditingMutation.id,
334
+ const u = {
335
+ id: Z.id,
343
336
  params: {
344
- unitId,
337
+ unitId: a,
345
338
  actions: [],
346
339
  textRanges: null
347
340
  }
348
341
  };
349
- return doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null), !!commandService.syncExecuteCommand(doMutation.id, doMutation.params);
350
- }, "handler")
351
- }, UpdateDocDrawingWrapTextCommand = {
342
+ return u.params.actions = c.reduce((p, h) => q.compose(p, h), null), !!n.syncExecuteCommand(u.id, u.params);
343
+ }
344
+ }, tt = {
352
345
  id: "doc.command.update-doc-drawing-wrap-text",
353
- type: CommandType.COMMAND,
354
- handler: /* @__PURE__ */ __name((accessor, params) => {
355
- if (params == null)
346
+ type: X.COMMAND,
347
+ handler: (i, e) => {
348
+ if (e == null)
356
349
  return !1;
357
- const commandService = accessor.get(ICommandService), documentDataModel = accessor.get(IUniverInstanceService).getCurrentUniverDocInstance();
358
- if (documentDataModel == null)
350
+ const n = i.get(z), r = i.get(J).getCurrentUniverDocInstance();
351
+ if (r == null)
359
352
  return !1;
360
- const { drawings, wrapText, unitId } = params, jsonX = JSONX.getInstance(), rawActions = [], { drawings: oldDrawings = {} } = documentDataModel.getSnapshot();
361
- for (const drawing of drawings) {
362
- const { drawingId } = drawing, oldWrapText = oldDrawings[drawingId].wrapText;
363
- if (oldWrapText !== wrapText) {
364
- const action = jsonX.replaceOp(["drawings", drawingId, "wrapText"], oldWrapText, wrapText);
365
- rawActions.push(action);
353
+ const { drawings: o, wrapText: s, unitId: a } = e, d = q.getInstance(), c = [], { drawings: l = {} } = r.getSnapshot();
354
+ for (const p of o) {
355
+ const { drawingId: h } = p, v = l[h].wrapText;
356
+ if (v !== s) {
357
+ const w = d.replaceOp(["drawings", h, "wrapText"], v, s);
358
+ c.push(w);
366
359
  }
367
360
  }
368
- const doMutation = {
369
- id: RichTextEditingMutation.id,
361
+ const u = {
362
+ id: Z.id,
370
363
  params: {
371
- unitId,
364
+ unitId: a,
372
365
  actions: [],
373
366
  textRanges: null
374
367
  }
375
368
  };
376
- return doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null), !!commandService.syncExecuteCommand(doMutation.id, doMutation.params);
377
- }, "handler")
378
- }, UpdateDrawingDocTransformCommand = {
369
+ return u.params.actions = c.reduce((p, h) => q.compose(p, h), null), !!n.syncExecuteCommand(u.id, u.params);
370
+ }
371
+ }, qe = {
379
372
  id: "doc.command.update-drawing-doc-transform",
380
- type: CommandType.COMMAND,
381
- handler: /* @__PURE__ */ __name((accessor, params) => {
382
- if (params == null)
373
+ type: X.COMMAND,
374
+ handler: (i, e) => {
375
+ if (e == null)
383
376
  return !1;
384
- const commandService = accessor.get(ICommandService), univerInstanceService = accessor.get(IUniverInstanceService), renderObject = accessor.get(IRenderManagerService).getRenderById(params.unitId), scene = renderObject == null ? void 0 : renderObject.scene;
385
- if (scene == null)
377
+ const n = i.get(z), t = i.get(J), o = i.get(Q).getRenderById(e.unitId), s = o == null ? void 0 : o.scene;
378
+ if (s == null)
386
379
  return !1;
387
- const transformer = scene.getTransformerByCreate(), documentDataModel = univerInstanceService.getCurrentUniverDocInstance();
388
- if (documentDataModel == null)
380
+ const a = s.getTransformerByCreate(), d = t.getCurrentUniverDocInstance();
381
+ if (d == null)
389
382
  return !1;
390
- const { drawings, unitId } = params, jsonX = JSONX.getInstance(), rawActions = [], { drawings: oldDrawings = {} } = documentDataModel.getSnapshot();
391
- for (const drawing of drawings) {
392
- const { drawingId, key, value } = drawing, oldValue = oldDrawings[drawingId].docTransform[key];
393
- if (!Tools.diffValue(oldValue, value)) {
394
- const action = jsonX.replaceOp(["drawings", drawingId, "docTransform", key], oldValue, value);
395
- rawActions.push(action);
383
+ const { drawings: c, unitId: l } = e, u = q.getInstance(), m = [], { drawings: p = {} } = d.getSnapshot();
384
+ for (const w of c) {
385
+ const { drawingId: S, key: O, value: D } = w, x = p[S].docTransform[O];
386
+ if (!Pe.diffValue(x, D)) {
387
+ const b = u.replaceOp(["drawings", S, "docTransform", O], x, D);
388
+ m.push(b);
396
389
  }
397
390
  }
398
- const doMutation = {
399
- id: RichTextEditingMutation.id,
391
+ const h = {
392
+ id: Z.id,
400
393
  params: {
401
- unitId,
394
+ unitId: l,
402
395
  actions: [],
403
396
  textRanges: null,
404
397
  debounce: !0
405
398
  }
406
399
  };
407
- doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null);
408
- const result = commandService.syncExecuteCommand(doMutation.id, doMutation.params);
409
- return transformer.refreshControls(), !!result;
410
- }, "handler")
411
- }, IMoveInlineDrawingCommand = {
400
+ h.params.actions = m.reduce((w, S) => q.compose(w, S), null);
401
+ const v = n.syncExecuteCommand(h.id, h.params);
402
+ return a.refreshControls(), !!v;
403
+ }
404
+ }, it = {
412
405
  id: "doc.command.move-inline-drawing",
413
- type: CommandType.COMMAND,
414
- handler: /* @__PURE__ */ __name((accessor, params) => {
415
- var _a8, _b;
416
- if (params == null)
406
+ type: X.COMMAND,
407
+ handler: (i, e) => {
408
+ var B, R;
409
+ if (e == null)
417
410
  return !1;
418
- const renderManagerService = accessor.get(IRenderManagerService), docSelectionRenderService = (_a8 = renderManagerService.getRenderById(params.unitId)) == null ? void 0 : _a8.with(DocSelectionRenderService), docRefreshDrawingsService = accessor.get(DocRefreshDrawingsService), renderObject = renderManagerService.getRenderById(params.unitId), scene = renderObject == null ? void 0 : renderObject.scene, skeleton = renderObject == null ? void 0 : renderObject.with(DocSkeletonManagerService).getSkeleton();
419
- if (scene == null || docSelectionRenderService == null)
411
+ const n = i.get(Q), t = (B = n.getRenderById(e.unitId)) == null ? void 0 : B.with(ye), r = i.get(gn), o = n.getRenderById(e.unitId), s = o == null ? void 0 : o.scene, a = o == null ? void 0 : o.with(oe).getSkeleton();
412
+ if (s == null || t == null)
420
413
  return !1;
421
- const transformer = scene.getTransformerByCreate(), commandService = accessor.get(ICommandService), documentDataModel = accessor.get(IUniverInstanceService).getCurrentUniverDocInstance();
422
- if (documentDataModel == null)
414
+ const d = s.getTransformerByCreate(), c = i.get(z), u = i.get(J).getCurrentUniverDocInstance();
415
+ if (u == null)
423
416
  return !1;
424
- const { drawing, unitId, offset, segmentId: newSegmentId, segmentPage, needRefreshDrawings } = params;
425
- if (needRefreshDrawings)
426
- return docRefreshDrawingsService.refreshDrawings(skeleton), transformer.refreshControls(), !0;
427
- const rawActions = [], { drawingId } = drawing, segmentId = (_b = docSelectionRenderService.getSegment()) != null ? _b : "", actions = getDeleteAndInsertCustomBlockActions(
428
- newSegmentId,
429
- segmentId,
430
- segmentPage,
431
- offset,
432
- drawingId,
433
- documentDataModel,
434
- docSelectionRenderService
417
+ const { drawing: m, unitId: p, offset: h, segmentId: v, segmentPage: w, needRefreshDrawings: S } = e;
418
+ if (S)
419
+ return r.refreshDrawings(a), d.refreshControls(), !0;
420
+ const O = [], { drawingId: D } = m, x = (R = t.getSegment()) != null ? R : "", b = Qn(
421
+ v,
422
+ x,
423
+ w,
424
+ h,
425
+ D,
426
+ u,
427
+ t
435
428
  );
436
- if (actions == null || actions.length === 0)
437
- return docRefreshDrawingsService.refreshDrawings(skeleton), transformer.refreshControls(), !1;
438
- rawActions.push(...actions);
439
- const doMutation = {
440
- id: RichTextEditingMutation.id,
429
+ if (b == null || b.length === 0)
430
+ return r.refreshDrawings(a), d.refreshControls(), !1;
431
+ O.push(...b);
432
+ const T = {
433
+ id: Z.id,
441
434
  params: {
442
- unitId,
435
+ unitId: p,
443
436
  actions: [],
444
437
  textRanges: null
445
438
  }
446
439
  };
447
- doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null);
448
- const result = commandService.syncExecuteCommand(doMutation.id, doMutation.params);
449
- return transformer.refreshControls(), !!result;
450
- }, "handler")
451
- }, ITransformNonInlineDrawingCommand = {
440
+ T.params.actions = O.reduce((I, j) => q.compose(I, j), null);
441
+ const N = c.syncExecuteCommand(T.id, T.params);
442
+ return d.refreshControls(), !!N;
443
+ }
444
+ }, rt = {
452
445
  id: "doc.command.transform-non-inline-drawing",
453
- type: CommandType.COMMAND,
446
+ type: X.COMMAND,
454
447
  // eslint-disable-next-line max-lines-per-function
455
- handler: /* @__PURE__ */ __name((accessor, params) => {
456
- var _a8, _b;
457
- if (params == null)
448
+ handler: (i, e) => {
449
+ var A, W;
450
+ if (e == null)
458
451
  return !1;
459
- const renderManagerService = accessor.get(IRenderManagerService), docSelectionRenderService = (_a8 = renderManagerService.getRenderById(params.unitId)) == null ? void 0 : _a8.with(DocSelectionRenderService), renderObject = renderManagerService.getRenderById(params.unitId), scene = renderObject == null ? void 0 : renderObject.scene;
460
- if (scene == null || docSelectionRenderService == null)
452
+ const n = i.get(Q), t = (A = n.getRenderById(e.unitId)) == null ? void 0 : A.with(ye), r = n.getRenderById(e.unitId), o = r == null ? void 0 : r.scene;
453
+ if (o == null || t == null)
461
454
  return !1;
462
- const transformer = scene.getTransformerByCreate(), commandService = accessor.get(ICommandService), documentDataModel = accessor.get(IUniverInstanceService).getCurrentUniverDocInstance();
463
- if (documentDataModel == null)
455
+ const s = o.getTransformerByCreate(), a = i.get(z), c = i.get(J).getCurrentUniverDocInstance();
456
+ if (c == null)
464
457
  return !1;
465
- const { drawing, unitId, offset, docTransform, segmentId: newSegmentId, segmentPage } = params, rawActions = [], { drawingId } = drawing, segmentId = (_b = docSelectionRenderService.getSegment()) != null ? _b : "", actions = getDeleteAndInsertCustomBlockActions(
466
- newSegmentId,
467
- segmentId,
468
- segmentPage,
469
- offset,
470
- drawingId,
471
- documentDataModel,
472
- docSelectionRenderService
458
+ const { drawing: l, unitId: u, offset: m, docTransform: p, segmentId: h, segmentPage: v } = e, w = [], { drawingId: S } = l, O = (W = t.getSegment()) != null ? W : "", D = Qn(
459
+ h,
460
+ O,
461
+ v,
462
+ m,
463
+ S,
464
+ c,
465
+ t
473
466
  );
474
- if (actions == null)
467
+ if (D == null)
475
468
  return !1;
476
- actions.length > 0 && rawActions.push(...actions);
477
- const jsonX = JSONX.getInstance(), { drawings: oldDrawings = {} } = documentDataModel.getSnapshot(), oldDocTransform = oldDrawings[drawingId].docTransform, { positionH: oldPositionH, positionV: oldPositionV, size: oldSize, angle: oldAngle } = oldDocTransform;
478
- if (!Tools.diffValue(oldPositionH, docTransform.positionH)) {
479
- const updateAction = jsonX.replaceOp(["drawings", drawingId, "docTransform", "positionH"], oldPositionH, docTransform.positionH);
480
- rawActions.push(updateAction);
469
+ D.length > 0 && w.push(...D);
470
+ const x = q.getInstance(), { drawings: b = {} } = c.getSnapshot(), T = b[S].docTransform, { positionH: N, positionV: B, size: R, angle: I } = T;
471
+ if (!Pe.diffValue(N, p.positionH)) {
472
+ const _ = x.replaceOp(["drawings", S, "docTransform", "positionH"], N, p.positionH);
473
+ w.push(_);
481
474
  }
482
- if (!Tools.diffValue(oldPositionV, docTransform.positionV)) {
483
- const updateAction = jsonX.replaceOp(["drawings", drawingId, "docTransform", "positionV"], oldPositionV, docTransform.positionV);
484
- rawActions.push(updateAction);
475
+ if (!Pe.diffValue(B, p.positionV)) {
476
+ const _ = x.replaceOp(["drawings", S, "docTransform", "positionV"], B, p.positionV);
477
+ w.push(_);
485
478
  }
486
- if (!Tools.diffValue(oldSize, docTransform.size)) {
487
- const updateAction = jsonX.replaceOp(["drawings", drawingId, "docTransform", "size"], oldSize, docTransform.size);
488
- rawActions.push(updateAction);
479
+ if (!Pe.diffValue(R, p.size)) {
480
+ const _ = x.replaceOp(["drawings", S, "docTransform", "size"], R, p.size);
481
+ w.push(_);
489
482
  }
490
- if (!Tools.diffValue(oldAngle, docTransform.angle)) {
491
- const updateAction = jsonX.replaceOp(["drawings", drawingId, "docTransform", "angle"], oldAngle, docTransform.angle);
492
- rawActions.push(updateAction);
483
+ if (!Pe.diffValue(I, p.angle)) {
484
+ const _ = x.replaceOp(["drawings", S, "docTransform", "angle"], I, p.angle);
485
+ w.push(_);
493
486
  }
494
- const doMutation = {
495
- id: RichTextEditingMutation.id,
487
+ const j = {
488
+ id: Z.id,
496
489
  params: {
497
- unitId,
490
+ unitId: u,
498
491
  actions: [],
499
492
  textRanges: null,
500
493
  debounce: !0
501
494
  }
502
495
  };
503
- doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null);
504
- const result = commandService.syncExecuteCommand(doMutation.id, doMutation.params);
505
- return transformer.refreshControls(), !!result;
506
- }, "handler")
496
+ j.params.actions = w.reduce((_, C) => q.compose(_, C), null);
497
+ const H = a.syncExecuteCommand(j.id, j.params);
498
+ return s.refreshControls(), !!H;
499
+ }
507
500
  };
508
- var __defProp$5 = Object.defineProperty, __getOwnPropDesc$5 = Object.getOwnPropertyDescriptor, __decorateClass$5 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
509
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$5(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
510
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
511
- return kind && result && __defProp$5(target, key, result), result;
512
- }, "__decorateClass$5"), __decorateParam$5 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$5");
513
- const INLINE_DRAWING_ANCHOR_KEY_PREFIX = "__InlineDrawingAnchor__";
514
- function isInTableCell(nodePosition) {
515
- const { path } = nodePosition;
516
- return path.some((p) => p === "cells");
501
+ var Li = Object.defineProperty, Bi = Object.getOwnPropertyDescriptor, Ui = (i, e, n, t) => {
502
+ for (var r = t > 1 ? void 0 : t ? Bi(e, n) : e, o = i.length - 1, s; o >= 0; o--)
503
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
504
+ return t && r && Li(e, n, r), r;
505
+ }, Ze = (i, e) => (n, t) => e(n, t, i);
506
+ const Fi = "__InlineDrawingAnchor__";
507
+ function kn(i) {
508
+ const { path: e } = i;
509
+ return e.some((n) => n === "cells");
517
510
  }
518
- __name(isInTableCell, "isInTableCell");
519
- var _a2;
520
- let DocDrawingTransformerController = (_a2 = class extends Disposable {
521
- constructor(_commandService, _univerInstanceService, _drawingManagerService, _renderManagerService) {
511
+ let on = class extends Xe {
512
+ constructor(e, n, t, r) {
522
513
  super();
523
- __publicField(this, "_liquid", new Liquid());
524
- __publicField(this, "_listenerOnImageMap", /* @__PURE__ */ new Set());
514
+ Se(this, "_liquid", new qn());
515
+ Se(this, "_listenerOnImageMap", /* @__PURE__ */ new Set());
525
516
  // Use to cache the drawings is under transforming or scaling.
526
- __publicField(this, "_transformerCache", /* @__PURE__ */ new Map());
527
- __publicField(this, "_anchorShape");
528
- this._commandService = _commandService, this._univerInstanceService = _univerInstanceService, this._drawingManagerService = _drawingManagerService, this._renderManagerService = _renderManagerService, this._init();
517
+ Se(this, "_transformerCache", /* @__PURE__ */ new Map());
518
+ Se(this, "_anchorShape");
519
+ this._commandService = e, this._univerInstanceService = n, this._drawingManagerService = t, this._renderManagerService = r, this._init();
529
520
  }
530
521
  _init() {
531
522
  this._listenDrawingFocus();
532
523
  }
533
524
  _listenDrawingFocus() {
534
525
  this.disposeWithMe(
535
- this._drawingManagerService.add$.subscribe((drawingParams) => {
536
- if (drawingParams.length !== 0)
537
- for (const drawingParam of drawingParams) {
538
- const { unitId } = drawingParam;
539
- this._listenerOnImageMap.has(unitId) || (this._listenTransformerChange(unitId), this._listenerOnImageMap.add(unitId));
526
+ this._drawingManagerService.add$.subscribe((e) => {
527
+ if (e.length !== 0)
528
+ for (const n of e) {
529
+ const { unitId: t } = n;
530
+ this._listenerOnImageMap.has(t) || (this._listenTransformerChange(t), this._listenerOnImageMap.add(t));
540
531
  }
541
532
  })
542
533
  );
543
534
  }
544
535
  // Only handle one drawing transformer change.
545
536
  // eslint-disable-next-line max-lines-per-function
546
- _listenTransformerChange(unitId) {
547
- var _a8;
548
- const transformer = (_a8 = this._getSceneAndTransformerByDrawingSearch(unitId)) == null ? void 0 : _a8.transformer;
549
- if (transformer == null)
537
+ _listenTransformerChange(e) {
538
+ var r;
539
+ const n = (r = this._getSceneAndTransformerByDrawingSearch(e)) == null ? void 0 : r.transformer;
540
+ if (n == null)
550
541
  return;
551
542
  this.disposeWithMe(
552
- toDisposable(
553
- transformer.changeStart$.subscribe((state) => {
554
- var _a9;
543
+ Ae(
544
+ n.changeStart$.subscribe((o) => {
545
+ var a;
555
546
  this._transformerCache.clear();
556
- const { objects } = state;
557
- for (const object of objects.values()) {
558
- const { oKey, width, height, left, top, angle } = object, drawing = this._drawingManagerService.getDrawingOKey(oKey);
559
- if (drawing == null)
547
+ const { objects: s } = o;
548
+ for (const d of s.values()) {
549
+ const { oKey: c, width: l, height: u, left: m, top: p, angle: h } = d, v = this._drawingManagerService.getDrawingOKey(c);
550
+ if (v == null)
560
551
  continue;
561
- const documentDataModel = this._univerInstanceService.getUniverDocInstance(drawing.unitId), drawingData = (_a9 = documentDataModel == null ? void 0 : documentDataModel.getSnapshot().drawings) == null ? void 0 : _a9[drawing.drawingId];
562
- (drawingData == null ? void 0 : drawingData.layoutType) === PositionedObjectLayoutType.INLINE && object.setOpacity(0.2), drawingData != null && this._transformerCache.set(drawing.drawingId, {
563
- drawing: drawingData,
564
- top,
565
- left,
566
- width,
567
- height,
568
- angle
552
+ const w = this._univerInstanceService.getUniverDocInstance(v.unitId), S = (a = w == null ? void 0 : w.getSnapshot().drawings) == null ? void 0 : a[v.drawingId];
553
+ (S == null ? void 0 : S.layoutType) === k.INLINE && d.setOpacity(0.2), S != null && this._transformerCache.set(v.drawingId, {
554
+ drawing: S,
555
+ top: p,
556
+ left: m,
557
+ width: l,
558
+ height: u,
559
+ angle: h
569
560
  });
570
561
  }
571
562
  })
572
563
  )
573
564
  );
574
- const throttleMultipleDrawingUpdate = throttle(this._updateMultipleDrawingDocTransform.bind(this), 50);
575
- throttle(this._nonInlineDrawingTransform.bind(this), 50), this.disposeWithMe(
576
- toDisposable(
577
- transformer.changing$.subscribe((state) => {
578
- const { objects, offsetX, offsetY } = state;
579
- if (objects.size > 1)
580
- throttleMultipleDrawingUpdate(objects);
581
- else if (objects.size === 1) {
582
- const drawingCache = this._transformerCache.values().next().value, object = objects.values().next().value, { width, height, top, left, angle } = object;
583
- if (drawingCache && width === drawingCache.width && height === drawingCache.height && top === drawingCache.top && left === drawingCache.left && angle === drawingCache.angle)
565
+ const t = xn(this._updateMultipleDrawingDocTransform.bind(this), 50);
566
+ xn(this._nonInlineDrawingTransform.bind(this), 50), this.disposeWithMe(
567
+ Ae(
568
+ n.changing$.subscribe((o) => {
569
+ const { objects: s, offsetX: a, offsetY: d } = o;
570
+ if (s.size > 1)
571
+ t(s);
572
+ else if (s.size === 1) {
573
+ const c = this._transformerCache.values().next().value, l = s.values().next().value, { width: u, height: m, top: p, left: h, angle: v } = l;
574
+ if (c && u === c.width && m === c.height && p === c.top && h === c.left && v === c.angle)
584
575
  return;
585
- drawingCache && (drawingCache.drawing.layoutType, PositionedObjectLayoutType.INLINE), drawingCache && drawingCache.drawing.layoutType === PositionedObjectLayoutType.INLINE && offsetX != null && offsetY != null && this._updateInlineDrawingAnchor(drawingCache.drawing, offsetX, offsetY);
576
+ c && (c.drawing.layoutType, k.INLINE), c && c.drawing.layoutType === k.INLINE && a != null && d != null && this._updateInlineDrawingAnchor(c.drawing, a, d);
586
577
  }
587
578
  })
588
579
  )
589
580
  ), this.disposeWithMe(
590
- toDisposable(
581
+ Ae(
591
582
  // eslint-disable-next-line complexity
592
- transformer.changeEnd$.subscribe((state) => {
593
- const { objects, offsetX, offsetY } = state;
594
- for (const object of objects.values()) {
595
- const drawing = this._drawingManagerService.getDrawingOKey(object.oKey);
596
- if (drawing == null)
583
+ n.changeEnd$.subscribe((o) => {
584
+ const { objects: s, offsetX: a, offsetY: d } = o;
585
+ for (const c of s.values()) {
586
+ const l = this._drawingManagerService.getDrawingOKey(c.oKey);
587
+ if (l == null)
597
588
  continue;
598
- const drawingCache = this._transformerCache.get(drawing == null ? void 0 : drawing.drawingId);
599
- (drawingCache == null ? void 0 : drawingCache.drawing.layoutType) === PositionedObjectLayoutType.INLINE && object.setOpacity(1);
589
+ const u = this._transformerCache.get(l == null ? void 0 : l.drawingId);
590
+ (u == null ? void 0 : u.drawing.layoutType) === k.INLINE && c.setOpacity(1);
600
591
  }
601
- if (this._anchorShape && this._anchorShape.hide(), objects.size > 1)
602
- this._updateMultipleDrawingDocTransform(objects);
603
- else if (objects.size === 1) {
604
- const drawingCache = this._transformerCache.values().next().value, object = objects.values().next().value, { width, height, top, left, angle } = object;
605
- if (drawingCache && width === drawingCache.width && height === drawingCache.height && top === drawingCache.top && left === drawingCache.left && angle === drawingCache.angle)
592
+ if (this._anchorShape && this._anchorShape.hide(), s.size > 1)
593
+ this._updateMultipleDrawingDocTransform(s);
594
+ else if (s.size === 1) {
595
+ const c = this._transformerCache.values().next().value, l = s.values().next().value, { width: u, height: m, top: p, left: h, angle: v } = l;
596
+ if (c && u === c.width && m === c.height && p === c.top && h === c.left && v === c.angle)
606
597
  return;
607
- drawingCache && drawingCache.drawing.layoutType === PositionedObjectLayoutType.INLINE ? width !== drawingCache.width || height !== drawingCache.height || angle !== drawingCache.angle ? this._updateDrawingSize(drawingCache, object) : offsetX != null && offsetY != null && this._moveInlineDrawing(drawingCache.drawing, offsetX, offsetY) : drawingCache && this._nonInlineDrawingTransform(drawingCache.drawing, object);
598
+ c && c.drawing.layoutType === k.INLINE ? u !== c.width || m !== c.height || v !== c.angle ? this._updateDrawingSize(c, l) : a != null && d != null && this._moveInlineDrawing(c.drawing, a, d) : c && this._nonInlineDrawingTransform(c.drawing, l);
608
599
  }
609
600
  this._transformerCache.clear();
610
601
  })
@@ -612,177 +603,177 @@ let DocDrawingTransformerController = (_a2 = class extends Disposable {
612
603
  );
613
604
  }
614
605
  // eslint-disable-next-line max-lines-per-function
615
- _updateMultipleDrawingDocTransform(objects) {
616
- if (objects.size < 1)
606
+ _updateMultipleDrawingDocTransform(e) {
607
+ if (e.size < 1)
617
608
  return;
618
- const drawings = [];
619
- let unitId, subUnitId;
620
- for (const object of objects.values()) {
621
- const { oKey, left, top, angle } = object;
622
- let { width, height } = object;
623
- const drawing = this._drawingManagerService.getDrawingOKey(oKey);
624
- if (drawing == null)
609
+ const n = [];
610
+ let t, r;
611
+ for (const o of e.values()) {
612
+ const { oKey: s, left: a, top: d, angle: c } = o;
613
+ let { width: l, height: u } = o;
614
+ const m = this._drawingManagerService.getDrawingOKey(s);
615
+ if (m == null)
625
616
  continue;
626
- unitId == null && (unitId = drawing.unitId), subUnitId == null && (subUnitId = drawing.subUnitId);
627
- const drawingCache = this._transformerCache.get(drawing.drawingId);
628
- if (drawingCache == null)
617
+ t == null && (t = m.unitId), r == null && (r = m.subUnitId);
618
+ const p = this._transformerCache.get(m.drawingId);
619
+ if (p == null)
629
620
  continue;
630
- const { drawing: drawingData, top: oldTop, left: oldLeft, width: oldWidth, height: oldHeight, angle: oldAngle } = drawingCache, { width: maxWidth, height: maxHeight } = this._getPageContentSize(drawingData);
631
- if (width = Math.min(width, maxWidth), height = Math.min(height, maxHeight), (oldWidth !== width || oldHeight !== height) && drawings.push({
632
- drawingId: drawing.drawingId,
621
+ const { drawing: h, top: v, left: w, width: S, height: O, angle: D } = p, { width: x, height: b } = this._getPageContentSize(h);
622
+ if (l = Math.min(l, x), u = Math.min(u, b), (S !== l || O !== u) && n.push({
623
+ drawingId: m.drawingId,
633
624
  key: "size",
634
625
  value: {
635
- width,
636
- height
626
+ width: l,
627
+ height: u
637
628
  }
638
- }), oldAngle !== angle && drawings.push({
639
- drawingId: drawing.drawingId,
629
+ }), D !== c && n.push({
630
+ drawingId: m.drawingId,
640
631
  key: "angle",
641
- value: angle
642
- }), oldTop !== top || oldLeft !== left) {
643
- const verticalDelta = top - oldTop, horizontalDelta = left - oldLeft;
644
- verticalDelta !== 0 && drawings.push({
645
- drawingId: drawing.drawingId,
632
+ value: c
633
+ }), v !== d || w !== a) {
634
+ const T = d - v, N = a - w;
635
+ T !== 0 && n.push({
636
+ drawingId: m.drawingId,
646
637
  key: "positionV",
647
638
  value: {
648
- relativeFrom: drawingData.docTransform.positionV.relativeFrom,
649
- posOffset: drawingData.docTransform.positionV.posOffset + verticalDelta
639
+ relativeFrom: h.docTransform.positionV.relativeFrom,
640
+ posOffset: h.docTransform.positionV.posOffset + T
650
641
  }
651
- }), horizontalDelta !== 0 && drawings.push({
652
- drawingId: drawing.drawingId,
642
+ }), N !== 0 && n.push({
643
+ drawingId: m.drawingId,
653
644
  key: "positionH",
654
645
  value: {
655
- relativeFrom: drawingData.docTransform.positionH.relativeFrom,
656
- posOffset: drawingData.docTransform.positionH.posOffset + horizontalDelta
646
+ relativeFrom: h.docTransform.positionH.relativeFrom,
647
+ posOffset: h.docTransform.positionH.posOffset + N
657
648
  }
658
649
  });
659
650
  }
660
651
  }
661
- drawings.length > 0 && unitId && subUnitId && this._commandService.executeCommand(UpdateDrawingDocTransformCommand.id, {
662
- unitId,
663
- subUnitId,
664
- drawings
652
+ n.length > 0 && t && r && this._commandService.executeCommand(qe.id, {
653
+ unitId: t,
654
+ subUnitId: r,
655
+ drawings: n
665
656
  });
666
657
  }
667
658
  // TODO: @JOCS, Use to draw and update the drawing anchor.
668
- _updateDrawingAnchor(objects) {
659
+ _updateDrawingAnchor(e) {
669
660
  if (this._transformerCache.size !== 1)
670
661
  return;
671
- const drawingCache = this._transformerCache.values().next().value, object = objects.values().next().value;
672
- this._getDrawingAnchor(drawingCache.drawing, object);
662
+ const n = this._transformerCache.values().next().value, t = e.values().next().value;
663
+ this._getDrawingAnchor(n.drawing, t);
673
664
  }
674
- _updateInlineDrawingAnchor(drawing, offsetX, offsetY) {
675
- var _a8;
665
+ _updateInlineDrawingAnchor(e, n, t) {
666
+ var o;
676
667
  if (this._transformerCache.size !== 1)
677
668
  return;
678
- const { contentBoxPointGroup } = (_a8 = this._getInlineDrawingAnchor(drawing, offsetX, offsetY)) != null ? _a8 : {};
679
- contentBoxPointGroup != null && this._createOrUpdateInlineAnchor(drawing.unitId, contentBoxPointGroup);
669
+ const { contentBoxPointGroup: r } = (o = this._getInlineDrawingAnchor(e, n, t)) != null ? o : {};
670
+ r != null && this._createOrUpdateInlineAnchor(e.unitId, r);
680
671
  }
681
- _getInlineDrawingAnchor(drawing, offsetX, offsetY) {
682
- var _a8, _b;
683
- const currentRender = this._renderManagerService.getRenderById(drawing.unitId), skeleton = currentRender == null ? void 0 : currentRender.with(DocSkeletonManagerService).getSkeleton();
684
- if (currentRender == null)
672
+ _getInlineDrawingAnchor(e, n, t) {
673
+ var A, W;
674
+ const r = this._renderManagerService.getRenderById(e.unitId), o = r == null ? void 0 : r.with(oe).getSkeleton();
675
+ if (r == null)
685
676
  return;
686
- const { mainComponent, scene } = currentRender, documentComponent = mainComponent, activeViewport = scene.getViewports()[0], {
687
- pageLayoutType = PageLayoutType.VERTICAL,
688
- pageMarginLeft,
689
- pageMarginTop
690
- } = documentComponent.getOffsetConfig();
691
- let glyphAnchor = null, isBack = !1, segmentPageIndex = -1, segmentId = "";
692
- const HALF = 0.5, coord = this._getTransformCoordForDocumentOffset(documentComponent, activeViewport, offsetX, offsetY);
693
- if (coord == null)
677
+ const { mainComponent: s, scene: a } = r, d = s, c = a.getViewports()[0], {
678
+ pageLayoutType: l = Mn.VERTICAL,
679
+ pageMarginLeft: u,
680
+ pageMarginTop: m
681
+ } = d.getOffsetConfig();
682
+ let p = null, h = !1, v = -1, w = "";
683
+ const S = 0.5, O = this._getTransformCoordForDocumentOffset(d, c, n, t);
684
+ if (O == null)
694
685
  return;
695
- const docSelectionRenderService = (_a8 = this._renderManagerService.getRenderById(drawing.unitId)) == null ? void 0 : _a8.with(DocSelectionRenderService);
696
- if (docSelectionRenderService == null)
686
+ const D = (A = this._renderManagerService.getRenderById(e.unitId)) == null ? void 0 : A.with(ye);
687
+ if (D == null)
697
688
  return;
698
- const nodeInfo = skeleton == null ? void 0 : skeleton.findNodeByCoord(
699
- coord,
700
- pageLayoutType,
701
- pageMarginLeft,
702
- pageMarginTop,
689
+ const x = o == null ? void 0 : o.findNodeByCoord(
690
+ O,
691
+ l,
692
+ u,
693
+ m,
703
694
  {
704
695
  strict: !1,
705
- segmentId: docSelectionRenderService.getSegment(),
706
- segmentPage: docSelectionRenderService.getSegmentPage()
696
+ segmentId: D.getSegment(),
697
+ segmentPage: D.getSegmentPage()
707
698
  }
708
699
  );
709
- if (nodeInfo) {
710
- const { node, ratioX, segmentPage, segmentId: nodeSegmentId } = nodeInfo;
711
- isBack = ratioX < HALF, glyphAnchor = node, segmentPageIndex = segmentPage, segmentId = nodeSegmentId;
700
+ if (x) {
701
+ const { node: _, ratioX: C, segmentPage: M, segmentId: P } = x;
702
+ h = C < S, p = _, v = M, w = P;
712
703
  }
713
- if (glyphAnchor == null)
704
+ if (p == null)
714
705
  return;
715
- const nodePosition = skeleton == null ? void 0 : skeleton.findPositionByGlyph(glyphAnchor, segmentPageIndex), docObject = this._getDocObject();
716
- if (nodePosition == null || skeleton == null || docObject == null || isInTableCell(nodePosition))
706
+ const b = o == null ? void 0 : o.findPositionByGlyph(p, v), T = this._getDocObject();
707
+ if (b == null || o == null || T == null || kn(b))
717
708
  return;
718
- const positionWithIsBack = {
719
- ...nodePosition,
720
- isBack
721
- }, documentOffsetConfig = docObject.document.getOffsetConfig(), convertor = new NodePositionConvertToCursor(documentOffsetConfig, skeleton), { cursorList, contentBoxPointGroup } = convertor.getRangePointData(positionWithIsBack, positionWithIsBack), { startOffset } = (_b = getOneTextSelectionRange(cursorList)) != null ? _b : {};
722
- if (startOffset != null)
723
- return { offset: startOffset, contentBoxPointGroup, segmentId, segmentPage: segmentPageIndex };
709
+ const N = {
710
+ ...b,
711
+ isBack: h
712
+ }, B = T.document.getOffsetConfig(), R = new Nn(B, o), { cursorList: I, contentBoxPointGroup: j } = R.getRangePointData(N, N), { startOffset: H } = (W = En(I)) != null ? W : {};
713
+ if (H != null)
714
+ return { offset: H, contentBoxPointGroup: j, segmentId: w, segmentPage: v };
724
715
  }
725
716
  // eslint-disable-next-line max-lines-per-function, complexity
726
- _getDrawingAnchor(drawing, object) {
727
- var _a8, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
728
- const currentRender = this._renderManagerService.getRenderById(drawing.unitId), skeleton = currentRender == null ? void 0 : currentRender.with(DocSkeletonManagerService).getSkeleton(), skeletonData = skeleton == null ? void 0 : skeleton.getSkeletonData();
729
- if (skeletonData == null || currentRender == null)
717
+ _getDrawingAnchor(e, n) {
718
+ var Ie, _e, ce, Ce, De, Me, Re, Oe, de, le, Ne;
719
+ const t = this._renderManagerService.getRenderById(e.unitId), r = t == null ? void 0 : t.with(oe).getSkeleton(), o = r == null ? void 0 : r.getSkeletonData();
720
+ if (o == null || t == null)
730
721
  return;
731
- const { pages, skeHeaders, skeFooters } = skeletonData, { mainComponent, scene } = currentRender, documentComponent = mainComponent, activeViewport = scene.getViewports()[0], { pageLayoutType = PageLayoutType.VERTICAL, pageMarginLeft, pageMarginTop, docsLeft, docsTop } = documentComponent.getOffsetConfig(), { left, top, angle } = object;
732
- let { width, height } = object;
733
- const { positionV, positionH } = drawing.docTransform, { width: maxWidth, height: maxHeight } = this._getPageContentSize(drawing);
734
- width = Math.min(width, maxWidth), height = Math.min(height, maxHeight);
735
- let glyphAnchor = null, segmentId = "", segmentPage = -1;
736
- const isBack = !1, docTransform = {
737
- ...drawing.docTransform,
722
+ const { pages: s, skeHeaders: a, skeFooters: d } = o, { mainComponent: c, scene: l } = t, u = c, m = l.getViewports()[0], { pageLayoutType: p = Mn.VERTICAL, pageMarginLeft: h, pageMarginTop: v, docsLeft: w, docsTop: S } = u.getOffsetConfig(), { left: O, top: D, angle: x } = n;
723
+ let { width: b, height: T } = n;
724
+ const { positionV: N, positionH: B } = e.docTransform, { width: R, height: I } = this._getPageContentSize(e);
725
+ b = Math.min(b, R), T = Math.min(T, I);
726
+ let j = null, H = "", A = -1;
727
+ const W = !1, _ = {
728
+ ...e.docTransform,
738
729
  size: {
739
- width,
740
- height
730
+ width: b,
731
+ height: T
741
732
  },
742
- angle
743
- }, { x, y } = scene.getViewportScrollXY(activeViewport), coord = this._getTransformCoordForDocumentOffset(documentComponent, activeViewport, left - x, top - y);
744
- if (coord == null)
733
+ angle: x
734
+ }, { x: C, y: M } = l.getViewportScrollXY(m), P = this._getTransformCoordForDocumentOffset(u, m, O - C, D - M);
735
+ if (P == null)
745
736
  return;
746
- const docSelectionRenderService = (_a8 = this._renderManagerService.getRenderById(drawing.unitId)) == null ? void 0 : _a8.with(DocSelectionRenderService);
747
- if (docSelectionRenderService == null)
737
+ const L = (Ie = this._renderManagerService.getRenderById(e.unitId)) == null ? void 0 : Ie.with(ye);
738
+ if (L == null)
748
739
  return;
749
- const nodeInfo = skeleton == null ? void 0 : skeleton.findNodeByCoord(coord, pageLayoutType, pageMarginLeft, pageMarginTop, {
740
+ const U = r == null ? void 0 : r.findNodeByCoord(P, p, h, v, {
750
741
  strict: !1,
751
- segmentId: docSelectionRenderService.getSegment(),
752
- segmentPage: docSelectionRenderService.getSegmentPage()
742
+ segmentId: L.getSegment(),
743
+ segmentPage: L.getSegmentPage()
753
744
  });
754
- if (nodeInfo) {
755
- const { node, segmentPage: segmentPageIndex, segmentId: nodeSegmentId } = nodeInfo;
756
- glyphAnchor = node, segmentPage = segmentPageIndex, segmentId = nodeSegmentId;
745
+ if (U) {
746
+ const { node: he, segmentPage: mn, segmentId: un } = U;
747
+ j = he, A = mn, H = un;
757
748
  }
758
- if (glyphAnchor == null)
749
+ if (j == null)
759
750
  return;
760
- const line = (_b = glyphAnchor.parent) == null ? void 0 : _b.parent, column = line == null ? void 0 : line.parent, paragraphStartLine = (_c = column == null ? void 0 : column.lines.find((l) => l.paragraphIndex === (line == null ? void 0 : line.paragraphIndex) && l.paragraphStart)) != null ? _c : column == null ? void 0 : column.lines[0], page = (_d = column == null ? void 0 : column.parent) == null ? void 0 : _d.parent;
761
- if (line == null || column == null || paragraphStartLine == null || page == null)
751
+ const y = (_e = j.parent) == null ? void 0 : _e.parent, E = y == null ? void 0 : y.parent, $ = (ce = E == null ? void 0 : E.lines.find((he) => he.paragraphIndex === (y == null ? void 0 : y.paragraphIndex) && he.paragraphStart)) != null ? ce : E == null ? void 0 : E.lines[0], F = (Ce = E == null ? void 0 : E.parent) == null ? void 0 : Ce.parent;
752
+ if (y == null || E == null || $ == null || F == null)
762
753
  return;
763
754
  this._liquid.reset();
764
- const pageType = page.type;
765
- for (const p of pages) {
766
- const { headerId, footerId, pageHeight, pageWidth, marginLeft, marginBottom } = p, pIndex = pages.indexOf(p);
767
- if (segmentPage > -1 && pIndex === segmentPage) {
768
- switch (pageType) {
769
- case DocumentSkeletonPageType.HEADER: {
770
- const headerSke = (_e = skeHeaders.get(headerId)) == null ? void 0 : _e.get(pageWidth);
771
- if (headerSke)
755
+ const K = F.type;
756
+ for (const he of s) {
757
+ const { headerId: mn, footerId: un, pageHeight: Dt, pageWidth: Dn, marginLeft: On, marginBottom: Ot } = he, xt = s.indexOf(he);
758
+ if (A > -1 && xt === A) {
759
+ switch (K) {
760
+ case Rn.HEADER: {
761
+ const He = (De = a.get(mn)) == null ? void 0 : De.get(Dn);
762
+ if (He)
772
763
  this._liquid.translatePagePadding({
773
- marginTop: headerSke.marginTop,
774
- marginLeft
764
+ marginTop: He.marginTop,
765
+ marginLeft: On
775
766
  });
776
767
  else
777
768
  throw new Error("header skeleton not found");
778
769
  break;
779
770
  }
780
- case DocumentSkeletonPageType.FOOTER: {
781
- const footerSke = (_f = skeFooters.get(footerId)) == null ? void 0 : _f.get(pageWidth);
782
- if (footerSke)
771
+ case Rn.FOOTER: {
772
+ const He = (Me = d.get(un)) == null ? void 0 : Me.get(Dn);
773
+ if (He)
783
774
  this._liquid.translatePagePadding({
784
- marginTop: pageHeight - marginBottom + footerSke.marginTop,
785
- marginLeft
775
+ marginTop: Dt - Ot + He.marginTop,
776
+ marginLeft: On
786
777
  });
787
778
  else
788
779
  throw new Error("footer skeleton not found");
@@ -791,590 +782,586 @@ let DocDrawingTransformerController = (_a2 = class extends Disposable {
791
782
  }
792
783
  break;
793
784
  }
794
- if (this._liquid.translatePagePadding(p), p === page)
785
+ if (this._liquid.translatePagePadding(he), he === F)
795
786
  break;
796
- this._liquid.restorePagePadding(p), this._liquid.translatePage(p, pageLayoutType, pageMarginLeft, pageMarginTop);
787
+ this._liquid.restorePagePadding(he), this._liquid.translatePage(he, p, h, v);
797
788
  }
798
- switch (positionV.relativeFrom === ObjectRelativeFromV.LINE ? glyphAnchor = line.divides[0].glyphGroup[0] : glyphAnchor = (_j = (_i = (_h = (_g = paragraphStartLine.divides) == null ? void 0 : _g[0]) == null ? void 0 : _h.glyphGroup) == null ? void 0 : _i[0]) != null ? _j : glyphAnchor, docTransform.positionH = {
799
- relativeFrom: positionH.relativeFrom,
800
- posOffset: left - this._liquid.x - docsLeft
801
- }, positionH.relativeFrom) {
802
- case ObjectRelativeFromH.MARGIN: {
803
- docTransform.positionH.posOffset = left - this._liquid.x - docsLeft - page.marginLeft;
789
+ switch (N.relativeFrom === G.LINE ? j = y.divides[0].glyphGroup[0] : j = (le = (de = (Oe = (Re = $.divides) == null ? void 0 : Re[0]) == null ? void 0 : Oe.glyphGroup) == null ? void 0 : de[0]) != null ? le : j, _.positionH = {
790
+ relativeFrom: B.relativeFrom,
791
+ posOffset: O - this._liquid.x - w
792
+ }, B.relativeFrom) {
793
+ case ee.MARGIN: {
794
+ _.positionH.posOffset = O - this._liquid.x - w - F.marginLeft;
804
795
  break;
805
796
  }
806
- case ObjectRelativeFromH.COLUMN: {
807
- docTransform.positionH.posOffset = left - this._liquid.x - docsLeft - column.left;
797
+ case ee.COLUMN: {
798
+ _.positionH.posOffset = O - this._liquid.x - w - E.left;
808
799
  break;
809
800
  }
810
801
  }
811
- switch (docTransform.positionV = {
812
- relativeFrom: positionV.relativeFrom,
813
- posOffset: top - this._liquid.y - docsTop
814
- }, positionV.relativeFrom) {
815
- case ObjectRelativeFromV.PAGE: {
816
- docTransform.positionV.posOffset = top - this._liquid.y - docsTop - page.marginTop;
802
+ switch (_.positionV = {
803
+ relativeFrom: N.relativeFrom,
804
+ posOffset: D - this._liquid.y - S
805
+ }, N.relativeFrom) {
806
+ case G.PAGE: {
807
+ _.positionV.posOffset = D - this._liquid.y - S - F.marginTop;
817
808
  break;
818
809
  }
819
- case ObjectRelativeFromV.LINE: {
820
- docTransform.positionV.posOffset = top - this._liquid.y - docsTop - line.top;
810
+ case G.LINE: {
811
+ _.positionV.posOffset = D - this._liquid.y - S - y.top;
821
812
  break;
822
813
  }
823
- case ObjectRelativeFromV.PARAGRAPH: {
824
- docTransform.positionV.posOffset = top - this._liquid.y - docsTop - paragraphStartLine.top;
814
+ case G.PARAGRAPH: {
815
+ _.positionV.posOffset = D - this._liquid.y - S - $.top;
825
816
  break;
826
817
  }
827
818
  }
828
- if (glyphAnchor == null)
819
+ if (j == null)
829
820
  return;
830
- const nodePosition = skeleton == null ? void 0 : skeleton.findPositionByGlyph(glyphAnchor, segmentPage), docObject = this._getDocObject();
831
- if (nodePosition == null || skeleton == null || docObject == null || isInTableCell(nodePosition))
821
+ const se = r == null ? void 0 : r.findPositionByGlyph(j, A), Le = this._getDocObject();
822
+ if (se == null || r == null || Le == null || kn(se))
832
823
  return;
833
- const positionWithIsBack = {
834
- ...nodePosition,
835
- isBack
836
- }, documentOffsetConfig = docObject.document.getOffsetConfig(), convertor = new NodePositionConvertToCursor(documentOffsetConfig, skeleton), { cursorList } = convertor.getRangePointData(positionWithIsBack, positionWithIsBack), { startOffset } = (_k = getOneTextSelectionRange(cursorList)) != null ? _k : {};
837
- if (startOffset != null)
838
- return { offset: startOffset, docTransform, segmentId, segmentPage };
824
+ const be = {
825
+ ...se,
826
+ isBack: W
827
+ }, ke = Le.document.getOffsetConfig(), ae = new Nn(ke, r), { cursorList: ne } = ae.getRangePointData(be, be), { startOffset: te } = (Ne = En(ne)) != null ? Ne : {};
828
+ if (te != null)
829
+ return { offset: te, docTransform: _, segmentId: H, segmentPage: A };
839
830
  }
840
831
  // Update drawing when use transformer to resize it.
841
- _updateDrawingSize(drawingCache, object) {
842
- const drawings = [], { drawing, width: oldWidth, height: oldHeight, angle: oldAngle } = drawingCache, { unitId, subUnitId } = drawing;
843
- let { width, height, angle } = object;
844
- const { width: maxWidth, height: maxHeight } = this._getPageContentSize(drawing);
845
- width = Math.min(maxWidth, width), height = Math.min(maxHeight, height), (width !== oldWidth || height !== oldHeight) && drawings.push({
846
- drawingId: drawing.drawingId,
832
+ _updateDrawingSize(e, n) {
833
+ const t = [], { drawing: r, width: o, height: s, angle: a } = e, { unitId: d, subUnitId: c } = r;
834
+ let { width: l, height: u, angle: m } = n;
835
+ const { width: p, height: h } = this._getPageContentSize(r);
836
+ l = Math.min(p, l), u = Math.min(h, u), (l !== o || u !== s) && t.push({
837
+ drawingId: r.drawingId,
847
838
  key: "size",
848
839
  value: {
849
- width,
850
- height
840
+ width: l,
841
+ height: u
851
842
  }
852
- }), angle !== oldAngle && drawings.push({
853
- drawingId: drawing.drawingId,
843
+ }), m !== a && t.push({
844
+ drawingId: r.drawingId,
854
845
  key: "angle",
855
- value: angle
856
- }), drawings.length > 0 && unitId && subUnitId && this._commandService.executeCommand(UpdateDrawingDocTransformCommand.id, {
857
- unitId,
858
- subUnitId,
859
- drawings
846
+ value: m
847
+ }), t.length > 0 && d && c && this._commandService.executeCommand(qe.id, {
848
+ unitId: d,
849
+ subUnitId: c,
850
+ drawings: t
860
851
  });
861
852
  }
862
853
  // Update inline drawing when use transformer to move it.
863
- _moveInlineDrawing(drawing, offsetX, offsetY) {
864
- const anchor = this._getInlineDrawingAnchor(drawing, offsetX, offsetY), { offset, segmentId, segmentPage } = anchor != null ? anchor : {};
865
- return this._commandService.executeCommand(IMoveInlineDrawingCommand.id, {
866
- unitId: drawing.unitId,
867
- subUnitId: drawing.unitId,
868
- drawing,
869
- offset,
870
- segmentId,
871
- segmentPage,
872
- needRefreshDrawings: offset == null
854
+ _moveInlineDrawing(e, n, t) {
855
+ const r = this._getInlineDrawingAnchor(e, n, t), { offset: o, segmentId: s, segmentPage: a } = r != null ? r : {};
856
+ return this._commandService.executeCommand(it.id, {
857
+ unitId: e.unitId,
858
+ subUnitId: e.unitId,
859
+ drawing: e,
860
+ offset: o,
861
+ segmentId: s,
862
+ segmentPage: a,
863
+ needRefreshDrawings: o == null
873
864
  });
874
865
  }
875
866
  // Limit the drawing to the page area, mainly in the vertical direction,
876
867
  // and the upper and lower limits cannot exceed the page margin area.
877
- _limitDrawingInPage(drawing, object) {
878
- const currentRender = this._renderManagerService.getRenderById(drawing.unitId), { left, top, width, height, angle } = object, skeleton = currentRender == null ? void 0 : currentRender.with(DocSkeletonManagerService).getSkeleton(), skeletonData = skeleton == null ? void 0 : skeleton.getSkeletonData(), { pages } = skeletonData != null ? skeletonData : {};
879
- if (skeletonData == null || currentRender == null || pages == null)
868
+ _limitDrawingInPage(e, n) {
869
+ const t = this._renderManagerService.getRenderById(e.unitId), { left: r, top: o, width: s, height: a, angle: d } = n, c = t == null ? void 0 : t.with(oe).getSkeleton(), l = c == null ? void 0 : c.getSkeletonData(), { pages: u } = l != null ? l : {};
870
+ if (l == null || t == null || u == null)
880
871
  return {
881
- left,
882
- top,
883
- width,
884
- height,
885
- angle
872
+ left: r,
873
+ top: o,
874
+ width: s,
875
+ height: a,
876
+ angle: d
886
877
  };
887
- const { mainComponent } = currentRender, documentComponent = mainComponent, { top: docsTop, pageLayoutType, pageMarginLeft, pageMarginTop } = documentComponent;
888
- let newTop = top;
878
+ const { mainComponent: m } = t, p = m, { top: h, pageLayoutType: v, pageMarginLeft: w, pageMarginTop: S } = p;
879
+ let O = o;
889
880
  this._liquid.reset();
890
- for (const page of pages) {
891
- const { marginBottom, pageHeight } = page, index = pages.indexOf(page), nextPage = pages[index + 1];
892
- if (nextPage == null)
881
+ for (const D of u) {
882
+ const { marginBottom: x, pageHeight: b } = D, T = u.indexOf(D), N = u[T + 1];
883
+ if (N == null)
893
884
  continue;
894
- if (Tools.hasIntersectionBetweenTwoRanges(
895
- top,
896
- top + height,
897
- this._liquid.y + docsTop + pageHeight - marginBottom,
898
- this._liquid.y + docsTop + pageHeight + pageMarginTop + nextPage.marginTop
885
+ if (Pe.hasIntersectionBetweenTwoRanges(
886
+ o,
887
+ o + a,
888
+ this._liquid.y + h + b - x,
889
+ this._liquid.y + h + b + S + N.marginTop
899
890
  )) {
900
- const drawingVMiddle = top + height / 2, pagesMiddle = this._liquid.y + docsTop + pageHeight + pageMarginTop / 2;
901
- drawingVMiddle < pagesMiddle ? newTop = Math.min(top, this._liquid.y + docsTop + pageHeight - marginBottom - height) : newTop = Math.max(top, this._liquid.y + docsTop + pageHeight + pageMarginTop + nextPage.marginTop);
891
+ const R = o + a / 2, I = this._liquid.y + h + b + S / 2;
892
+ R < I ? O = Math.min(o, this._liquid.y + h + b - x - a) : O = Math.max(o, this._liquid.y + h + b + S + N.marginTop);
902
893
  }
903
- this._liquid.translatePage(page, pageLayoutType, pageMarginLeft, pageMarginTop);
894
+ this._liquid.translatePage(D, v, w, S);
904
895
  }
905
896
  return {
906
- left,
907
- top: newTop,
908
- width,
909
- height,
910
- angle
897
+ left: r,
898
+ top: O,
899
+ width: s,
900
+ height: a,
901
+ angle: d
911
902
  };
912
903
  }
913
- _nonInlineDrawingTransform(drawing, object, isMoving = !1) {
914
- const objectPosition = drawing.isMultiTransform === BooleanNumber.TRUE ? object : this._limitDrawingInPage(drawing, object);
915
- if (isMoving && objectPosition.top !== object.top)
904
+ _nonInlineDrawingTransform(e, n, t = !1) {
905
+ const r = e.isMultiTransform === re.TRUE ? n : this._limitDrawingInPage(e, n);
906
+ if (t && r.top !== n.top)
916
907
  return;
917
- const anchor = this._getDrawingAnchor(drawing, objectPosition), { offset, docTransform, segmentId, segmentPage } = anchor != null ? anchor : {};
918
- return offset == null || docTransform == null ? this._updateMultipleDrawingDocTransform(/* @__PURE__ */ new Map([[drawing.drawingId, object]])) : this._commandService.executeCommand(ITransformNonInlineDrawingCommand.id, {
919
- unitId: drawing.unitId,
920
- subUnitId: drawing.unitId,
921
- drawing,
922
- offset,
923
- docTransform,
924
- segmentId,
925
- segmentPage
908
+ const o = this._getDrawingAnchor(e, r), { offset: s, docTransform: a, segmentId: d, segmentPage: c } = o != null ? o : {};
909
+ return s == null || a == null ? this._updateMultipleDrawingDocTransform(/* @__PURE__ */ new Map([[e.drawingId, n]])) : this._commandService.executeCommand(rt.id, {
910
+ unitId: e.unitId,
911
+ subUnitId: e.unitId,
912
+ drawing: e,
913
+ offset: s,
914
+ docTransform: a,
915
+ segmentId: d,
916
+ segmentPage: c
926
917
  });
927
918
  }
928
- _getSceneAndTransformerByDrawingSearch(unitId) {
929
- if (unitId == null)
919
+ _getSceneAndTransformerByDrawingSearch(e) {
920
+ if (e == null)
930
921
  return;
931
- const renderObject = this._renderManagerService.getRenderById(unitId), scene = renderObject == null ? void 0 : renderObject.scene;
932
- if (scene == null)
922
+ const n = this._renderManagerService.getRenderById(e), t = n == null ? void 0 : n.scene;
923
+ if (t == null)
933
924
  return;
934
- const transformer = scene.getTransformerByCreate();
935
- return { scene, transformer };
925
+ const r = t.getTransformerByCreate();
926
+ return { scene: t, transformer: r };
936
927
  }
937
- _getTransformCoordForDocumentOffset(document, viewport, evtOffsetX, evtOffsetY) {
938
- const { documentTransform } = document.getOffsetConfig(), originCoord = viewport.transformVector2SceneCoord(Vector2.FromArray([evtOffsetX, evtOffsetY]));
939
- if (originCoord)
940
- return documentTransform.clone().invert().applyPoint(originCoord);
928
+ _getTransformCoordForDocumentOffset(e, n, t, r) {
929
+ const { documentTransform: o } = e.getOffsetConfig(), s = n.transformVector2SceneCoord(ri.FromArray([t, r]));
930
+ if (s)
931
+ return o.clone().invert().applyPoint(s);
941
932
  }
942
- _createOrUpdateInlineAnchor(unitId, pointsGroup) {
943
- const currentRender = this._renderManagerService.getRenderById(unitId);
944
- if (currentRender == null)
933
+ _createOrUpdateInlineAnchor(e, n) {
934
+ const t = this._renderManagerService.getRenderById(e);
935
+ if (t == null)
945
936
  return;
946
- const { mainComponent, scene } = currentRender, documentComponent = mainComponent, {
947
- docsLeft,
948
- docsTop
949
- } = documentComponent.getOffsetConfig(), bounding = getAnchorBounding(pointsGroup), { left: boundingLeft, top: boundingTop, height } = bounding, left = boundingLeft + docsLeft, top = boundingTop + docsTop;
937
+ const { mainComponent: r, scene: o } = t, s = r, {
938
+ docsLeft: a,
939
+ docsTop: d
940
+ } = s.getOffsetConfig(), c = pi(n), { left: l, top: u, height: m } = c, p = l + a, h = u + d;
950
941
  if (this._anchorShape) {
951
- this._anchorShape.transformByState({ left, top, height }), this._anchorShape.show();
942
+ this._anchorShape.transformByState({ left: p, top: h, height: m }), this._anchorShape.show();
952
943
  return;
953
944
  }
954
- const ID_LENGTH = 6, anchor = new Rect(INLINE_DRAWING_ANCHOR_KEY_PREFIX + Tools.generateRandomId(ID_LENGTH), {
955
- left,
956
- top,
957
- height,
945
+ const v = 6, w = new oi(Fi + Pe.generateRandomId(v), {
946
+ left: p,
947
+ top: h,
948
+ height: m,
958
949
  strokeWidth: 2,
959
- stroke: getColor(COLORS.darkGray, 1),
950
+ stroke: si(Mt.darkGray, 1),
960
951
  evented: !1
961
952
  });
962
- this._anchorShape = anchor, scene.addObject(anchor, TEXT_RANGE_LAYER_INDEX);
953
+ this._anchorShape = w, o.addObject(w, wi);
963
954
  }
964
955
  _getDocObject() {
965
- return getDocObject(this._univerInstanceService, this._renderManagerService);
956
+ return vi(this._univerInstanceService, this._renderManagerService);
966
957
  }
967
- _getPageContentSize(drawing) {
968
- const currentRender = this._renderManagerService.getRenderById(drawing.unitId), skeleton = currentRender == null ? void 0 : currentRender.with(DocSkeletonManagerService).getSkeleton(), MAX_WIDTH = 500, MAX_HEIGHT = 500, skeletonData = skeleton == null ? void 0 : skeleton.getSkeletonData();
969
- if (skeletonData == null || currentRender == null)
958
+ _getPageContentSize(e) {
959
+ const n = this._renderManagerService.getRenderById(e.unitId), t = n == null ? void 0 : n.with(oe).getSkeleton(), r = 500, o = 500, s = t == null ? void 0 : t.getSkeletonData();
960
+ if (s == null || n == null)
970
961
  return {
971
- width: MAX_WIDTH,
972
- height: MAX_HEIGHT
962
+ width: r,
963
+ height: o
973
964
  };
974
- const { pages } = skeletonData;
975
- let page = null;
976
- for (const p of pages) {
977
- const { skeDrawings } = p;
978
- if (skeDrawings.has(drawing.drawingId)) {
979
- page = p;
965
+ const { pages: a } = s;
966
+ let d = null;
967
+ for (const c of a) {
968
+ const { skeDrawings: l } = c;
969
+ if (l.has(e.drawingId)) {
970
+ d = c;
980
971
  break;
981
972
  }
982
973
  }
983
- if (page) {
984
- const { pageWidth, pageHeight, marginLeft, marginBottom, marginRight, marginTop } = page;
974
+ if (d) {
975
+ const { pageWidth: c, pageHeight: l, marginLeft: u, marginBottom: m, marginRight: p, marginTop: h } = d;
985
976
  return {
986
- width: Math.max(MAX_WIDTH, pageWidth - marginLeft - marginRight),
987
- height: Math.max(MAX_HEIGHT, pageHeight - marginTop - marginBottom)
977
+ width: Math.max(r, c - u - p),
978
+ height: Math.max(o, l - h - m)
988
979
  };
989
980
  } else
990
981
  return {
991
- width: MAX_WIDTH,
992
- height: MAX_HEIGHT
982
+ width: r,
983
+ height: o
993
984
  };
994
985
  }
995
- }, __name(_a2, "DocDrawingTransformerController"), _a2);
996
- DocDrawingTransformerController = __decorateClass$5([
997
- __decorateParam$5(0, ICommandService),
998
- __decorateParam$5(1, IUniverInstanceService),
999
- __decorateParam$5(2, IDrawingManagerService),
1000
- __decorateParam$5(3, IRenderManagerService)
1001
- ], DocDrawingTransformerController);
1002
- var __assign = function() {
1003
- return __assign = Object.assign || function(t) {
1004
- for (var s, i = 1, n = arguments.length; i < n; i++) {
1005
- s = arguments[i];
1006
- for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && (t[p] = s[p]);
986
+ };
987
+ on = Ui([
988
+ Ze(0, z),
989
+ Ze(1, J),
990
+ Ze(2, ve),
991
+ Ze(3, Q)
992
+ ], on);
993
+ var fe = function() {
994
+ return fe = Object.assign || function(i) {
995
+ for (var e, n = 1, t = arguments.length; n < t; n++) {
996
+ e = arguments[n];
997
+ for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (i[r] = e[r]);
1007
998
  }
1008
- return t;
1009
- }, __assign.apply(this, arguments);
1010
- }, __rest = function(s, e) {
1011
- var t = {};
1012
- for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0 && (t[p] = s[p]);
1013
- if (s != null && typeof Object.getOwnPropertySymbols == "function")
1014
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++)
1015
- e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]) && (t[p[i]] = s[p[i]]);
1016
- return t;
1017
- }, IconBase = forwardRef(function(props, ref) {
1018
- var icon = props.icon, id = props.id, className = props.className, extend = props.extend, restProps = __rest(props, ["icon", "id", "className", "extend"]), cls = "univerjs-icon univerjs-icon-".concat(id, " ").concat(className || "").trim(), idSuffix = useRef("_".concat(generateShortUuid()));
1019
- return render(icon, "".concat(id), { defIds: icon.defIds, idSuffix: idSuffix.current }, __assign({ ref, className: cls }, restProps), extend);
999
+ return i;
1000
+ }, fe.apply(this, arguments);
1001
+ }, ki = function(i, e) {
1002
+ var n = {};
1003
+ for (var t in i) Object.prototype.hasOwnProperty.call(i, t) && e.indexOf(t) < 0 && (n[t] = i[t]);
1004
+ if (i != null && typeof Object.getOwnPropertySymbols == "function")
1005
+ for (var r = 0, t = Object.getOwnPropertySymbols(i); r < t.length; r++)
1006
+ e.indexOf(t[r]) < 0 && Object.prototype.propertyIsEnumerable.call(i, t[r]) && (n[t[r]] = i[t[r]]);
1007
+ return n;
1008
+ }, ot = Jn(function(i, e) {
1009
+ var n = i.icon, t = i.id, r = i.className, o = i.extend, s = ki(i, ["icon", "id", "className", "extend"]), a = "univerjs-icon univerjs-icon-".concat(t, " ").concat(r || "").trim(), d = yi("_".concat(Gi()));
1010
+ return st(n, "".concat(t), { defIds: n.defIds, idSuffix: d.current }, fe({ ref: e, className: a }, s), o);
1020
1011
  });
1021
- function render(node, id, runtimeProps, rootProps, extend) {
1022
- return createElement(node.tag, __assign(__assign({ key: id }, replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend)), rootProps), (replaceRuntimeIdsInDefs(node, runtimeProps).children || []).map(function(child, index) {
1023
- return render(child, "".concat(id, "-").concat(node.tag, "-").concat(index), runtimeProps, void 0, extend);
1012
+ function st(i, e, n, t, r) {
1013
+ return Zn(i.tag, fe(fe({ key: e }, Hi(i, n, r)), t), (Wi(i, n).children || []).map(function(o, s) {
1014
+ return st(o, "".concat(e, "-").concat(i.tag, "-").concat(s), n, void 0, r);
1024
1015
  }));
1025
1016
  }
1026
- __name(render, "render");
1027
- function replaceRuntimeIdsAndExtInAttrs(node, runtimeProps, extend) {
1028
- var attrs = __assign({}, node.attrs);
1029
- extend != null && extend.colorChannel1 && attrs.fill === "colorChannel1" && (attrs.fill = extend.colorChannel1);
1030
- var defIds = runtimeProps.defIds;
1031
- return !defIds || defIds.length === 0 || (node.tag === "use" && attrs["xlink:href"] && (attrs["xlink:href"] = attrs["xlink:href"] + runtimeProps.idSuffix), Object.entries(attrs).forEach(function(_a8) {
1032
- var key = _a8[0], value = _a8[1];
1033
- typeof value == "string" && (attrs[key] = value.replace(/url\(#(.*)\)/, "url(#$1".concat(runtimeProps.idSuffix, ")")));
1034
- })), attrs;
1017
+ function Hi(i, e, n) {
1018
+ var t = fe({}, i.attrs);
1019
+ n != null && n.colorChannel1 && t.fill === "colorChannel1" && (t.fill = n.colorChannel1);
1020
+ var r = e.defIds;
1021
+ return !r || r.length === 0 || (i.tag === "use" && t["xlink:href"] && (t["xlink:href"] = t["xlink:href"] + e.idSuffix), Object.entries(t).forEach(function(o) {
1022
+ var s = o[0], a = o[1];
1023
+ typeof a == "string" && (t[s] = a.replace(/url\(#(.*)\)/, "url(#$1".concat(e.idSuffix, ")")));
1024
+ })), t;
1035
1025
  }
1036
- __name(replaceRuntimeIdsAndExtInAttrs, "replaceRuntimeIdsAndExtInAttrs");
1037
- function replaceRuntimeIdsInDefs(node, runtimeProps) {
1038
- var _a8, defIds = runtimeProps.defIds;
1039
- return !defIds || defIds.length === 0 ? node : node.tag === "defs" && (!((_a8 = node.children) === null || _a8 === void 0) && _a8.length) ? __assign(__assign({}, node), { children: node.children.map(function(child) {
1040
- return typeof child.attrs.id == "string" && defIds && defIds.indexOf(child.attrs.id) > -1 ? __assign(__assign({}, child), { attrs: __assign(__assign({}, child.attrs), { id: child.attrs.id + runtimeProps.idSuffix }) }) : child;
1041
- }) }) : node;
1026
+ function Wi(i, e) {
1027
+ var n, t = e.defIds;
1028
+ return !t || t.length === 0 ? i : i.tag === "defs" && (!((n = i.children) === null || n === void 0) && n.length) ? fe(fe({}, i), { children: i.children.map(function(r) {
1029
+ return typeof r.attrs.id == "string" && t && t.indexOf(r.attrs.id) > -1 ? fe(fe({}, r), { attrs: fe(fe({}, r.attrs), { id: r.attrs.id + e.idSuffix }) }) : r;
1030
+ }) }) : i;
1042
1031
  }
1043
- __name(replaceRuntimeIdsInDefs, "replaceRuntimeIdsInDefs");
1044
- function generateShortUuid() {
1032
+ function Gi() {
1045
1033
  return Math.random().toString(36).substring(2, 8);
1046
1034
  }
1047
- __name(generateShortUuid, "generateShortUuid");
1048
- IconBase.displayName = "UniverIcon";
1049
- var element = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "currentColor", d: "M2.2498 3.65005C2.2498 2.87685 2.87661 2.25005 3.64981 2.25005H7.9998C8.33118 2.25005 8.5998 1.98142 8.5998 1.65005C8.5998 1.31868 8.33118 1.05005 7.9998 1.05005H3.64981C2.21387 1.05005 1.0498 2.21411 1.0498 3.65005V12.35C1.0498 13.786 2.21386 14.95 3.6498 14.95H12.3498C13.7857 14.95 14.9498 13.786 14.9498 12.3501V8.00005C14.9498 7.66868 14.6812 7.40005 14.3498 7.40005C14.0184 7.40005 13.7498 7.66868 13.7498 8.00005V9.23974L12.2385 8.1063C11.7252 7.72129 11.0068 7.7723 10.5531 8.22605L9.00869 9.77041L6.73916 7.8251C6.24387 7.40055 5.5095 7.41278 5.02864 7.85359L2.2498 10.4009V3.65005ZM2.2498 12.0287V12.35C2.2498 13.1232 2.87661 13.75 3.6498 13.75H12.3498C13.123 13.75 13.7498 13.1232 13.7498 12.3501V10.7397L11.5186 9.06631C11.4829 9.03956 11.433 9.04314 11.4016 9.07458L9.92249 10.5537L11.1015 11.5642C11.3531 11.7799 11.3822 12.1587 11.1666 12.4103C10.9509 12.6619 10.5721 12.691 10.3205 12.4753L5.9582 8.7362C5.92384 8.70674 5.87288 8.70758 5.83952 8.73816L2.2498 12.0287Z", fillRule: "evenodd", clipRule: "evenodd" } }, { tag: "path", attrs: { fill: "currentColor", d: "M11.8097 1.14783C12.1411 1.14783 12.4097 1.41646 12.4097 1.74783V3.297H14.1541C14.4855 3.297 14.7541 3.56563 14.7541 3.897C14.7541 4.22837 14.4855 4.497 14.1541 4.497H12.4097V6.24167C12.4097 6.57304 12.1411 6.84167 11.8097 6.84167C11.4783 6.84167 11.2097 6.57304 11.2097 6.24167V4.497H9.6603C9.32893 4.497 9.0603 4.22837 9.0603 3.897C9.0603 3.56563 9.32893 3.297 9.6603 3.297H11.2097V1.74783C11.2097 1.41646 11.4783 1.14783 11.8097 1.14783Z" } }] }, AddImageSingle = forwardRef(function(props, ref) {
1050
- return createElement(IconBase, Object.assign({}, props, {
1035
+ ot.displayName = "UniverIcon";
1036
+ var Vi = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "currentColor", d: "M2.2498 3.65005C2.2498 2.87685 2.87661 2.25005 3.64981 2.25005H7.9998C8.33118 2.25005 8.5998 1.98142 8.5998 1.65005C8.5998 1.31868 8.33118 1.05005 7.9998 1.05005H3.64981C2.21387 1.05005 1.0498 2.21411 1.0498 3.65005V12.35C1.0498 13.786 2.21386 14.95 3.6498 14.95H12.3498C13.7857 14.95 14.9498 13.786 14.9498 12.3501V8.00005C14.9498 7.66868 14.6812 7.40005 14.3498 7.40005C14.0184 7.40005 13.7498 7.66868 13.7498 8.00005V9.23974L12.2385 8.1063C11.7252 7.72129 11.0068 7.7723 10.5531 8.22605L9.00869 9.77041L6.73916 7.8251C6.24387 7.40055 5.5095 7.41278 5.02864 7.85359L2.2498 10.4009V3.65005ZM2.2498 12.0287V12.35C2.2498 13.1232 2.87661 13.75 3.6498 13.75H12.3498C13.123 13.75 13.7498 13.1232 13.7498 12.3501V10.7397L11.5186 9.06631C11.4829 9.03956 11.433 9.04314 11.4016 9.07458L9.92249 10.5537L11.1015 11.5642C11.3531 11.7799 11.3822 12.1587 11.1666 12.4103C10.9509 12.6619 10.5721 12.691 10.3205 12.4753L5.9582 8.7362C5.92384 8.70674 5.87288 8.70758 5.83952 8.73816L2.2498 12.0287Z", fillRule: "evenodd", clipRule: "evenodd" } }, { tag: "path", attrs: { fill: "currentColor", d: "M11.8097 1.14783C12.1411 1.14783 12.4097 1.41646 12.4097 1.74783V3.297H14.1541C14.4855 3.297 14.7541 3.56563 14.7541 3.897C14.7541 4.22837 14.4855 4.497 14.1541 4.497H12.4097V6.24167C12.4097 6.57304 12.1411 6.84167 11.8097 6.84167C11.4783 6.84167 11.2097 6.57304 11.2097 6.24167V4.497H9.6603C9.32893 4.497 9.0603 4.22837 9.0603 3.897C9.0603 3.56563 9.32893 3.297 9.6603 3.297H11.2097V1.74783C11.2097 1.41646 11.4783 1.14783 11.8097 1.14783Z" } }] }, at = Jn(function(i, e) {
1037
+ return Zn(ot, Object.assign({}, i, {
1051
1038
  id: "add-image-single",
1052
- ref,
1053
- icon: element
1039
+ ref: e,
1040
+ icon: Vi
1054
1041
  }));
1055
1042
  });
1056
- AddImageSingle.displayName = "AddImageSingle";
1057
- const RemoveDocDrawingCommand = {
1043
+ at.displayName = "AddImageSingle";
1044
+ const Cn = {
1058
1045
  id: "doc.command.remove-doc-image",
1059
- type: CommandType.COMMAND,
1046
+ type: X.COMMAND,
1060
1047
  // eslint-disable-next-line max-lines-per-function
1061
- handler: /* @__PURE__ */ __name((accessor, params) => {
1062
- var _a8, _b, _c, _d;
1063
- const commandService = accessor.get(ICommandService), univerInstanceService = accessor.get(IUniverInstanceService), renderManagerService = accessor.get(IRenderManagerService), documentDataModel = univerInstanceService.getCurrentUniverDocInstance();
1064
- if (params == null || documentDataModel == null)
1048
+ handler: (i, e) => {
1049
+ var b, T, N, B;
1050
+ const n = i.get(z), t = i.get(J), r = i.get(Q), o = t.getCurrentUniverDocInstance();
1051
+ if (e == null || o == null)
1065
1052
  return !1;
1066
- const docSelectionRenderService = renderManagerService.getRenderById(params.unitId).with(DocSelectionRenderService), { drawings: removeDrawings } = params, segmentId = (_a8 = docSelectionRenderService.getSegment()) != null ? _a8 : "", textX = new TextX(), jsonX = JSONX.getInstance(), customBlocks = (_c = (_b = documentDataModel.getSelfOrHeaderFooterModel(segmentId).getBody()) == null ? void 0 : _b.customBlocks) != null ? _c : [], removeCustomBlocks = removeDrawings.map((drawing) => customBlocks.find((customBlock) => customBlock.blockId === drawing.drawingId)).filter((block) => !!block).sort((a, b) => a.startIndex > b.startIndex ? 1 : -1), unitId = removeDrawings[0].unitId, memoryCursor = new MemoryCursor();
1067
- memoryCursor.reset();
1068
- const cursorIndex = removeCustomBlocks[0].startIndex, textRanges = [
1053
+ const s = r.getRenderById(e.unitId).with(ye), { drawings: a } = e, d = (b = s.getSegment()) != null ? b : "", c = new In(), l = q.getInstance(), u = (N = (T = o.getSelfOrHeaderFooterModel(d).getBody()) == null ? void 0 : T.customBlocks) != null ? N : [], m = a.map((R) => u.find((I) => I.blockId === R.drawingId)).filter((R) => !!R).sort((R, I) => R.startIndex > I.startIndex ? 1 : -1), p = a[0].unitId, h = new Rt();
1054
+ h.reset();
1055
+ const v = m[0].startIndex, w = [
1069
1056
  {
1070
- startOffset: cursorIndex,
1071
- endOffset: cursorIndex
1057
+ startOffset: v,
1058
+ endOffset: v
1072
1059
  }
1073
- ], doMutation = {
1074
- id: RichTextEditingMutation.id,
1060
+ ], S = {
1061
+ id: Z.id,
1075
1062
  params: {
1076
- unitId,
1063
+ unitId: p,
1077
1064
  actions: [],
1078
- textRanges
1065
+ textRanges: w
1079
1066
  }
1080
- }, rawActions = [];
1081
- for (const block of removeCustomBlocks) {
1082
- const { startIndex } = block;
1083
- startIndex > memoryCursor.cursor && textX.push({
1084
- t: TextXActionType.RETAIN,
1085
- len: startIndex - memoryCursor.cursor
1086
- }), textX.push({
1087
- t: TextXActionType.DELETE,
1067
+ }, O = [];
1068
+ for (const R of m) {
1069
+ const { startIndex: I } = R;
1070
+ I > h.cursor && c.push({
1071
+ t: Y.RETAIN,
1072
+ len: I - h.cursor
1073
+ }), c.push({
1074
+ t: Y.DELETE,
1088
1075
  len: 1
1089
- }), memoryCursor.moveCursorTo(startIndex + 1);
1076
+ }), h.moveCursorTo(I + 1);
1090
1077
  }
1091
- const path = getRichTextEditPath(documentDataModel, segmentId);
1092
- rawActions.push(jsonX.editOp(textX.serialize(), path));
1093
- for (const block of removeCustomBlocks) {
1094
- const { blockId } = block, drawing = ((_d = documentDataModel.getDrawings()) != null ? _d : {})[blockId], drawingIndex = documentDataModel.getDrawingsOrder().indexOf(blockId), removeDrawingAction = jsonX.removeOp(["drawings", blockId], drawing), removeDrawingOrderAction = jsonX.removeOp(["drawingsOrder", drawingIndex], blockId);
1095
- rawActions.push(removeDrawingAction), rawActions.push(removeDrawingOrderAction);
1078
+ const D = ze(o, d);
1079
+ O.push(l.editOp(c.serialize(), D));
1080
+ for (const R of m) {
1081
+ const { blockId: I } = R, j = ((B = o.getDrawings()) != null ? B : {})[I], A = o.getDrawingsOrder().indexOf(I), W = l.removeOp(["drawings", I], j), _ = l.removeOp(["drawingsOrder", A], I);
1082
+ O.push(W), O.push(_);
1096
1083
  }
1097
- return doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null), !!commandService.syncExecuteCommand(doMutation.id, doMutation.params);
1098
- }, "handler")
1099
- }, DeleteDocDrawingsCommand = {
1084
+ return S.params.actions = O.reduce((R, I) => q.compose(R, I), null), !!n.syncExecuteCommand(S.id, S.params);
1085
+ }
1086
+ }, ct = {
1100
1087
  id: "doc.command.delete-drawing",
1101
- type: CommandType.COMMAND,
1102
- handler: /* @__PURE__ */ __name((accessor) => {
1103
- const commandService = accessor.get(ICommandService), drawings = accessor.get(IDocDrawingService).getFocusDrawings();
1104
- if (drawings.length === 0)
1088
+ type: X.COMMAND,
1089
+ handler: (i) => {
1090
+ const e = i.get(z), t = i.get(je).getFocusDrawings();
1091
+ if (t.length === 0)
1105
1092
  return !1;
1106
- const { unitId } = drawings[0], newDrawings = drawings.map((drawing) => {
1107
- const { unitId: unitId2, subUnitId, drawingId, drawingType } = drawing;
1093
+ const { unitId: r } = t[0], o = t.map((s) => {
1094
+ const { unitId: a, subUnitId: d, drawingId: c, drawingType: l } = s;
1108
1095
  return {
1109
- unitId: unitId2,
1110
- subUnitId,
1111
- drawingId,
1112
- drawingType
1096
+ unitId: a,
1097
+ subUnitId: d,
1098
+ drawingId: c,
1099
+ drawingType: l
1113
1100
  };
1114
1101
  });
1115
- return commandService.executeCommand(RemoveDocDrawingCommand.id, {
1116
- unitId,
1117
- drawings: newDrawings
1102
+ return e.executeCommand(Cn.id, {
1103
+ unitId: r,
1104
+ drawings: o
1118
1105
  });
1119
- }, "handler")
1120
- }, GroupDocDrawingCommand = {
1106
+ }
1107
+ }, dt = {
1121
1108
  id: "doc.command.group-doc-image",
1122
- type: CommandType.COMMAND,
1123
- handler: /* @__PURE__ */ __name((accessor, params) => {
1124
- accessor.get(ICommandService), accessor.get(IUndoRedoService);
1125
- const docDrawingService = accessor.get(IDocDrawingService);
1126
- if (!params) return !1;
1127
- const unitIds = [];
1128
- return params.forEach(({ parent, children }) => {
1129
- unitIds.push(parent.unitId), children.forEach((child) => {
1130
- unitIds.push(child.unitId);
1109
+ type: X.COMMAND,
1110
+ handler: (i, e) => {
1111
+ i.get(z), i.get($n);
1112
+ const n = i.get(je);
1113
+ if (!e) return !1;
1114
+ const t = [];
1115
+ return e.forEach(({ parent: r, children: o }) => {
1116
+ t.push(r.unitId), o.forEach((s) => {
1117
+ t.push(s.unitId);
1131
1118
  });
1132
- }), docDrawingService.getGroupDrawingOp(params), !1;
1133
- }, "handler")
1134
- }, InsertDocDrawingCommand = {
1119
+ }), n.getGroupDrawingOp(e), !1;
1120
+ }
1121
+ }, lt = {
1135
1122
  id: "doc.command.insert-doc-image",
1136
- type: CommandType.COMMAND,
1123
+ type: X.COMMAND,
1137
1124
  // eslint-disable-next-line max-lines-per-function
1138
- handler: /* @__PURE__ */ __name((accessor, params) => {
1139
- var _a8, _b, _c, _d;
1140
- if (params == null)
1125
+ handler: (i, e) => {
1126
+ var T, N, B, R;
1127
+ if (e == null)
1141
1128
  return !1;
1142
- const commandService = accessor.get(ICommandService), docSelectionManagerService = accessor.get(DocSelectionManagerService), univerInstanceService = accessor.get(IUniverInstanceService), activeTextRange = docSelectionManagerService.getActiveTextRange(), documentDataModel = univerInstanceService.getCurrentUniverDocInstance();
1143
- if (activeTextRange == null || documentDataModel == null)
1129
+ const n = i.get(z), t = i.get(_n), r = i.get(J), o = t.getActiveTextRange(), s = r.getCurrentUniverDocInstance();
1130
+ if (o == null || s == null)
1144
1131
  return !1;
1145
- const unitId = documentDataModel.getUnitId(), { drawings } = params, { collapsed, startOffset, segmentId } = activeTextRange, body = documentDataModel.getSelfOrHeaderFooterModel(segmentId).getBody();
1146
- if (body == null)
1132
+ const a = s.getUnitId(), { drawings: d } = e, { collapsed: c, startOffset: l, segmentId: u } = o, m = s.getSelfOrHeaderFooterModel(u).getBody();
1133
+ if (m == null)
1147
1134
  return !1;
1148
- const textX = new TextX(), jsonX = JSONX.getInstance(), rawActions = [], drawingOrderLength = (_b = (_a8 = documentDataModel.getSnapshot().drawingsOrder) == null ? void 0 : _a8.length) != null ? _b : 0;
1149
- let removeDrawingLen = 0;
1150
- if (collapsed)
1151
- startOffset > 0 && textX.push({
1152
- t: TextXActionType.RETAIN,
1153
- len: startOffset
1135
+ const p = new In(), h = q.getInstance(), v = [], w = (N = (T = s.getSnapshot().drawingsOrder) == null ? void 0 : T.length) != null ? N : 0;
1136
+ let S = 0;
1137
+ if (c)
1138
+ l > 0 && p.push({
1139
+ t: Y.RETAIN,
1140
+ len: l
1154
1141
  });
1155
1142
  else {
1156
- const dos = BuildTextUtils.selection.delete([activeTextRange], body, 0, null, !1);
1157
- textX.push(...dos);
1158
- const removedCustomBlockIds = getCustomBlockIdsInSelections(body, [activeTextRange]), drawings2 = (_c = documentDataModel.getDrawings()) != null ? _c : {}, drawingOrder = (_d = documentDataModel.getDrawingsOrder()) != null ? _d : [], sortedRemovedCustomBlockIds = removedCustomBlockIds.sort((a, b) => drawingOrder.indexOf(a) > drawingOrder.indexOf(b) ? -1 : drawingOrder.indexOf(a) < drawingOrder.indexOf(b) ? 1 : 0);
1159
- if (sortedRemovedCustomBlockIds.length > 0)
1160
- for (const blockId of sortedRemovedCustomBlockIds) {
1161
- const drawing = drawings2[blockId], drawingIndex = drawingOrder.indexOf(blockId);
1162
- if (drawing == null || drawingIndex < 0)
1143
+ const I = Nt.selection.delete([o], m, 0, null, !1);
1144
+ p.push(...I);
1145
+ const j = Ii(m, [o]), H = (B = s.getDrawings()) != null ? B : {}, A = (R = s.getDrawingsOrder()) != null ? R : [], W = j.sort((_, C) => A.indexOf(_) > A.indexOf(C) ? -1 : A.indexOf(_) < A.indexOf(C) ? 1 : 0);
1146
+ if (W.length > 0)
1147
+ for (const _ of W) {
1148
+ const C = H[_], M = A.indexOf(_);
1149
+ if (C == null || M < 0)
1163
1150
  continue;
1164
- const removeDrawingAction = jsonX.removeOp(["drawings", blockId], drawing), removeDrawingOrderAction = jsonX.removeOp(["drawingsOrder", drawingIndex], blockId);
1165
- rawActions.push(removeDrawingAction), rawActions.push(removeDrawingOrderAction), removeDrawingLen++;
1151
+ const P = h.removeOp(["drawings", _], C), L = h.removeOp(["drawingsOrder", M], _);
1152
+ v.push(P), v.push(L), S++;
1166
1153
  }
1167
1154
  }
1168
- textX.push({
1169
- t: TextXActionType.INSERT,
1155
+ p.push({
1156
+ t: Y.INSERT,
1170
1157
  body: {
1171
- dataStream: "\b".repeat(drawings.length),
1172
- customBlocks: drawings.map((drawing, i) => ({
1173
- startIndex: i,
1174
- blockId: drawing.drawingId
1158
+ dataStream: "\b".repeat(d.length),
1159
+ customBlocks: d.map((I, j) => ({
1160
+ startIndex: j,
1161
+ blockId: I.drawingId
1175
1162
  }))
1176
1163
  },
1177
- len: drawings.length
1164
+ len: d.length
1178
1165
  });
1179
- const path = getRichTextEditPath(documentDataModel, segmentId), placeHolderAction = jsonX.editOp(textX.serialize(), path);
1180
- rawActions.push(placeHolderAction);
1181
- for (const drawing of drawings) {
1182
- const { drawingId } = drawing, addDrawingAction = jsonX.insertOp(["drawings", drawingId], drawing), addDrawingOrderAction = jsonX.insertOp(["drawingsOrder", drawingOrderLength - removeDrawingLen], drawingId);
1183
- rawActions.push(addDrawingAction), rawActions.push(addDrawingOrderAction);
1166
+ const O = ze(s, u), D = h.editOp(p.serialize(), O);
1167
+ v.push(D);
1168
+ for (const I of d) {
1169
+ const { drawingId: j } = I, H = h.insertOp(["drawings", j], I), A = h.insertOp(["drawingsOrder", w - S], j);
1170
+ v.push(H), v.push(A);
1184
1171
  }
1185
- const doMutation = {
1186
- id: RichTextEditingMutation.id,
1172
+ const x = {
1173
+ id: Z.id,
1187
1174
  params: {
1188
- unitId,
1175
+ unitId: a,
1189
1176
  actions: [],
1190
1177
  textRanges: []
1191
1178
  }
1192
1179
  };
1193
- return doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null), !!commandService.syncExecuteCommand(doMutation.id, doMutation.params);
1194
- }, "handler")
1195
- }, SetDocDrawingArrangeCommand = {
1180
+ return x.params.actions = v.reduce((I, j) => q.compose(I, j), null), !!n.syncExecuteCommand(x.id, x.params);
1181
+ }
1182
+ }, gt = {
1196
1183
  id: "doc.command.set-drawing-arrange",
1197
- type: CommandType.COMMAND,
1198
- handler: /* @__PURE__ */ __name((accessor, params) => {
1199
- const commandService = accessor.get(ICommandService), docDrawingService = accessor.get(IDocDrawingService);
1200
- if (params == null)
1184
+ type: X.COMMAND,
1185
+ handler: (i, e) => {
1186
+ const n = i.get(z), t = i.get(je);
1187
+ if (e == null)
1201
1188
  return !1;
1202
- const { unitId, subUnitId, drawingIds, arrangeType } = params, drawingOrderMapParam = { unitId, subUnitId, drawingIds };
1203
- let jsonOp;
1204
- if (arrangeType === ArrangeTypeEnum.forward ? jsonOp = docDrawingService.getForwardDrawingsOp(drawingOrderMapParam) : arrangeType === ArrangeTypeEnum.backward ? jsonOp = docDrawingService.getBackwardDrawingOp(drawingOrderMapParam) : arrangeType === ArrangeTypeEnum.front ? jsonOp = docDrawingService.getFrontDrawingsOp(drawingOrderMapParam) : arrangeType === ArrangeTypeEnum.back && (jsonOp = docDrawingService.getBackDrawingsOp(drawingOrderMapParam)), jsonOp == null)
1189
+ const { unitId: r, subUnitId: o, drawingIds: s, arrangeType: a } = e, d = { unitId: r, subUnitId: o, drawingIds: s };
1190
+ let c;
1191
+ if (a === Je.forward ? c = t.getForwardDrawingsOp(d) : a === Je.backward ? c = t.getBackwardDrawingOp(d) : a === Je.front ? c = t.getFrontDrawingsOp(d) : a === Je.back && (c = t.getBackDrawingsOp(d)), c == null)
1205
1192
  return !1;
1206
- const { redo } = jsonOp;
1207
- if (redo == null)
1193
+ const { redo: l } = c;
1194
+ if (l == null)
1208
1195
  return !1;
1209
- const rawActions = [];
1210
- let redoCopy = Tools.deepClone(redo);
1211
- redoCopy = redoCopy.slice(3), redoCopy.unshift("drawingsOrder"), rawActions.push(redoCopy);
1212
- const doMutation = {
1213
- id: RichTextEditingMutation.id,
1196
+ const u = [];
1197
+ let m = Pe.deepClone(l);
1198
+ m = m.slice(3), m.unshift("drawingsOrder"), u.push(m);
1199
+ const p = {
1200
+ id: Z.id,
1214
1201
  params: {
1215
- unitId,
1202
+ unitId: r,
1216
1203
  actions: [],
1217
1204
  textRanges: null
1218
1205
  }
1219
1206
  };
1220
- return doMutation.params.actions = rawActions.reduce((acc, cur) => JSONX.compose(acc, cur), null), !!commandService.syncExecuteCommand(doMutation.id, doMutation.params);
1221
- }, "handler")
1222
- }, UngroupDocDrawingCommand = {
1207
+ return p.params.actions = u.reduce((v, w) => q.compose(v, w), null), !!n.syncExecuteCommand(p.id, p.params);
1208
+ }
1209
+ }, mt = {
1223
1210
  id: "doc.command.ungroup-doc-image",
1224
- type: CommandType.COMMAND,
1225
- handler: /* @__PURE__ */ __name((accessor, params) => {
1226
- accessor.get(ICommandService), accessor.get(IUndoRedoService);
1227
- const docDrawingService = accessor.get(IDocDrawingService);
1228
- if (!params) return !1;
1229
- const unitIds = [];
1230
- return params.forEach(({ parent, children }) => {
1231
- unitIds.push(parent.unitId), children.forEach((child) => {
1232
- unitIds.push(child.unitId);
1211
+ type: X.COMMAND,
1212
+ handler: (i, e) => {
1213
+ i.get(z), i.get($n);
1214
+ const n = i.get(je);
1215
+ if (!e) return !1;
1216
+ const t = [];
1217
+ return e.forEach(({ parent: r, children: o }) => {
1218
+ t.push(r.unitId), o.forEach((s) => {
1219
+ t.push(s.unitId);
1233
1220
  });
1234
- }), docDrawingService.getUngroupDrawingOp(params), !1;
1235
- }, "handler")
1221
+ }), n.getUngroupDrawingOp(e), !1;
1222
+ }
1236
1223
  };
1237
- var __defProp$4 = Object.defineProperty, __getOwnPropDesc$4 = Object.getOwnPropertyDescriptor, __decorateClass$4 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
1238
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$4(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
1239
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
1240
- return kind && result && __defProp$4(target, key, result), result;
1241
- }, "__decorateClass$4"), __decorateParam$4 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$4"), _a3;
1242
- let DocDrawingUpdateRenderController = (_a3 = class extends Disposable {
1243
- constructor(_context, _commandService, _docSelectionManagerService, _renderManagerSrv, _imageIoService, _docDrawingService, _drawingManagerService, _contextService, _messageService, _localeService, _docSelectionRenderService, _docRefreshDrawingsService, _fileOpenerService) {
1244
- super(), this._context = _context, this._commandService = _commandService, this._docSelectionManagerService = _docSelectionManagerService, this._renderManagerSrv = _renderManagerSrv, this._imageIoService = _imageIoService, this._docDrawingService = _docDrawingService, this._drawingManagerService = _drawingManagerService, this._contextService = _contextService, this._messageService = _messageService, this._localeService = _localeService, this._docSelectionRenderService = _docSelectionRenderService, this._docRefreshDrawingsService = _docRefreshDrawingsService, this._fileOpenerService = _fileOpenerService, this._updateOrderListener(), this._groupDrawingListener(), this._focusDrawingListener(), this._transformDrawingListener(), this._editAreaChangeListener();
1224
+ var $i = Object.defineProperty, zi = Object.getOwnPropertyDescriptor, qi = (i, e, n, t) => {
1225
+ for (var r = t > 1 ? void 0 : t ? zi(e, n) : e, o = i.length - 1, s; o >= 0; o--)
1226
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
1227
+ return t && r && $i(e, n, r), r;
1228
+ }, ge = (i, e) => (n, t) => e(n, t, i);
1229
+ let sn = class extends Xe {
1230
+ constructor(i, e, n, t, r, o, s, a, d, c, l, u, m) {
1231
+ super(), this._context = i, this._commandService = e, this._docSelectionManagerService = n, this._renderManagerSrv = t, this._imageIoService = r, this._docDrawingService = o, this._drawingManagerService = s, this._contextService = a, this._messageService = d, this._localeService = c, this._docSelectionRenderService = l, this._docRefreshDrawingsService = u, this._fileOpenerService = m, this._updateOrderListener(), this._groupDrawingListener(), this._focusDrawingListener(), this._transformDrawingListener(), this._editAreaChangeListener();
1245
1232
  }
1246
1233
  async insertDocImage() {
1247
- const files = await this._fileOpenerService.openFile({
1234
+ const i = await this._fileOpenerService.openFile({
1248
1235
  multiple: !0,
1249
- accept: DRAWING_IMAGE_ALLOW_IMAGE_LIST.map((image) => `.${image.replace("image/", "")}`).join(",")
1250
- }), fileLength = files.length;
1251
- return fileLength > DRAWING_IMAGE_COUNT_LIMIT ? (this._messageService.show({
1252
- type: MessageType.Error,
1253
- content: this._localeService.t("update-status.exceedMaxCount", String(DRAWING_IMAGE_COUNT_LIMIT))
1254
- }), !1) : fileLength === 0 ? !1 : (await this._insertFloatImages(files), !0);
1236
+ accept: zt.map((n) => `.${n.replace("image/", "")}`).join(",")
1237
+ }), e = i.length;
1238
+ return e > Tn ? (this._messageService.show({
1239
+ type: Ln.Error,
1240
+ content: this._localeService.t("update-status.exceedMaxCount", String(Tn))
1241
+ }), !1) : e === 0 ? !1 : (await this._insertFloatImages(i), !0);
1255
1242
  }
1256
1243
  // eslint-disable-next-line max-lines-per-function
1257
- async _insertFloatImages(files) {
1258
- let imageParams = [];
1244
+ async _insertFloatImages(i) {
1245
+ let e = [];
1259
1246
  try {
1260
- imageParams = await Promise.all(files.map((file) => this._imageIoService.saveImage(file)));
1261
- } catch (error) {
1262
- const type = error.message;
1263
- let content = "";
1264
- switch (type) {
1265
- case ImageUploadStatusType.ERROR_EXCEED_SIZE:
1266
- content = this._localeService.t("update-status.exceedMaxSize", String(DRAWING_IMAGE_ALLOW_SIZE / (1024 * 1024)));
1247
+ e = await Promise.all(i.map((r) => this._imageIoService.saveImage(r)));
1248
+ } catch (r) {
1249
+ const o = r.message;
1250
+ let s = "";
1251
+ switch (o) {
1252
+ case hn.ERROR_EXCEED_SIZE:
1253
+ s = this._localeService.t("update-status.exceedMaxSize", String(qt / (1024 * 1024)));
1267
1254
  break;
1268
- case ImageUploadStatusType.ERROR_IMAGE_TYPE:
1269
- content = this._localeService.t("update-status.invalidImageType");
1255
+ case hn.ERROR_IMAGE_TYPE:
1256
+ s = this._localeService.t("update-status.invalidImageType");
1270
1257
  break;
1271
- case ImageUploadStatusType.ERROR_IMAGE:
1272
- content = this._localeService.t("update-status.invalidImage");
1258
+ case hn.ERROR_IMAGE:
1259
+ s = this._localeService.t("update-status.invalidImage");
1273
1260
  break;
1274
1261
  }
1275
1262
  this._messageService.show({
1276
- type: MessageType.Error,
1277
- content
1263
+ type: Ln.Error,
1264
+ content: s
1278
1265
  });
1279
1266
  }
1280
- if (imageParams.length === 0)
1267
+ if (e.length === 0)
1281
1268
  return;
1282
- const { unitId } = this._context, docDrawingParams = [];
1283
- for (const imageParam of imageParams) {
1284
- if (imageParam == null)
1269
+ const { unitId: n } = this._context, t = [];
1270
+ for (const r of e) {
1271
+ if (r == null)
1285
1272
  continue;
1286
- const { imageId, imageSourceType, source, base64Cache } = imageParam, { width, height, image } = await getImageSize(base64Cache || "");
1287
- this._imageIoService.addImageSourceCache(imageId, imageSourceType, image);
1288
- let scale = 1;
1289
- if (width > DRAWING_IMAGE_WIDTH_LIMIT || height > DRAWING_IMAGE_HEIGHT_LIMIT) {
1290
- const scaleWidth = DRAWING_IMAGE_WIDTH_LIMIT / width, scaleHeight = DRAWING_IMAGE_HEIGHT_LIMIT / height;
1291
- scale = Math.min(scaleWidth, scaleHeight);
1273
+ const { imageId: o, imageSourceType: s, source: a, base64Cache: d } = r, { width: c, height: l, image: u } = await Xt(d || "");
1274
+ this._imageIoService.addImageSourceCache(o, s, u);
1275
+ let m = 1;
1276
+ if (c > yn || l > bn) {
1277
+ const w = yn / c, S = bn / l;
1278
+ m = Math.min(w, S);
1292
1279
  }
1293
- const docTransform = this._getImagePosition(width * scale, height * scale);
1294
- if (docTransform == null)
1280
+ const p = this._getImagePosition(c * m, l * m);
1281
+ if (p == null)
1295
1282
  return;
1296
- const docDrawingParam = {
1297
- unitId,
1298
- subUnitId: unitId,
1299
- drawingId: imageId,
1300
- drawingType: DrawingTypeEnum.DRAWING_IMAGE,
1301
- imageSourceType,
1302
- source,
1303
- transform: docDrawingPositionToTransform(docTransform),
1304
- docTransform,
1305
- behindDoc: BooleanNumber.FALSE,
1283
+ const h = {
1284
+ unitId: n,
1285
+ subUnitId: n,
1286
+ drawingId: o,
1287
+ drawingType: Et.DRAWING_IMAGE,
1288
+ imageSourceType: s,
1289
+ source: a,
1290
+ transform: _i(p),
1291
+ docTransform: p,
1292
+ behindDoc: re.FALSE,
1306
1293
  title: "",
1307
1294
  description: "",
1308
- layoutType: PositionedObjectLayoutType.INLINE,
1295
+ layoutType: k.INLINE,
1309
1296
  // Insert inline drawing by default.
1310
- wrapText: WrapTextType.BOTH_SIDES,
1297
+ wrapText: $e.BOTH_SIDES,
1311
1298
  distB: 0,
1312
1299
  distL: 0,
1313
1300
  distR: 0,
1314
1301
  distT: 0
1315
1302
  };
1316
- this._isInsertInHeaderFooter() && (docDrawingParam.isMultiTransform = BooleanNumber.TRUE, docDrawingParam.transforms = docDrawingParam.transform ? [docDrawingParam.transform] : null), docDrawingParams.push(docDrawingParam);
1303
+ this._isInsertInHeaderFooter() && (h.isMultiTransform = re.TRUE, h.transforms = h.transform ? [h.transform] : null), t.push(h);
1317
1304
  }
1318
- this._commandService.executeCommand(InsertDocDrawingCommand.id, {
1319
- unitId,
1320
- drawings: docDrawingParams
1305
+ this._commandService.executeCommand(lt.id, {
1306
+ unitId: n,
1307
+ drawings: t
1321
1308
  });
1322
1309
  }
1323
1310
  _isInsertInHeaderFooter() {
1324
- var _a8;
1325
- const { unitId } = this._context, viewModel = (_a8 = this._renderManagerSrv.getRenderById(unitId)) == null ? void 0 : _a8.with(DocSkeletonManagerService).getViewModel(), editArea = viewModel == null ? void 0 : viewModel.getEditArea();
1326
- return editArea === DocumentEditArea.HEADER || editArea === DocumentEditArea.FOOTER;
1311
+ var t;
1312
+ const { unitId: i } = this._context, e = (t = this._renderManagerSrv.getRenderById(i)) == null ? void 0 : t.with(oe).getViewModel(), n = e == null ? void 0 : e.getEditArea();
1313
+ return n === Ue.HEADER || n === Ue.FOOTER;
1327
1314
  }
1328
- _getImagePosition(imageWidth, imageHeight) {
1329
- const activeTextRange = this._docSelectionRenderService.getActiveTextRange(), position = (activeTextRange == null ? void 0 : activeTextRange.getAbsolutePosition()) || {
1315
+ _getImagePosition(i, e) {
1316
+ const n = this._docSelectionRenderService.getActiveTextRange(), t = (n == null ? void 0 : n.getAbsolutePosition()) || {
1330
1317
  left: 0,
1331
1318
  top: 0
1332
1319
  };
1333
1320
  return {
1334
1321
  size: {
1335
- width: imageWidth,
1336
- height: imageHeight
1322
+ width: i,
1323
+ height: e
1337
1324
  },
1338
1325
  positionH: {
1339
- relativeFrom: ObjectRelativeFromH.PAGE,
1340
- posOffset: position.left
1326
+ relativeFrom: ee.PAGE,
1327
+ posOffset: t.left
1341
1328
  },
1342
1329
  positionV: {
1343
- relativeFrom: ObjectRelativeFromV.PARAGRAPH,
1330
+ relativeFrom: G.PARAGRAPH,
1344
1331
  posOffset: 0
1345
1332
  },
1346
1333
  angle: 0
1347
1334
  };
1348
1335
  }
1349
1336
  _updateOrderListener() {
1350
- this._drawingManagerService.featurePluginOrderUpdate$.subscribe((params) => {
1351
- const { unitId, subUnitId, drawingIds, arrangeType } = params;
1352
- this._commandService.executeCommand(SetDocDrawingArrangeCommand.id, {
1353
- unitId,
1354
- subUnitId,
1355
- drawingIds,
1356
- arrangeType
1337
+ this._drawingManagerService.featurePluginOrderUpdate$.subscribe((i) => {
1338
+ const { unitId: e, subUnitId: n, drawingIds: t, arrangeType: r } = i;
1339
+ this._commandService.executeCommand(gt.id, {
1340
+ unitId: e,
1341
+ subUnitId: n,
1342
+ drawingIds: t,
1343
+ arrangeType: r
1357
1344
  });
1358
1345
  });
1359
1346
  }
1360
1347
  _groupDrawingListener() {
1361
- this._drawingManagerService.featurePluginGroupUpdate$.subscribe((params) => {
1362
- this._commandService.executeCommand(GroupDocDrawingCommand.id, params);
1363
- }), this._drawingManagerService.featurePluginUngroupUpdate$.subscribe((params) => {
1364
- this._commandService.executeCommand(UngroupDocDrawingCommand.id, params);
1348
+ this._drawingManagerService.featurePluginGroupUpdate$.subscribe((i) => {
1349
+ this._commandService.executeCommand(dt.id, i);
1350
+ }), this._drawingManagerService.featurePluginUngroupUpdate$.subscribe((i) => {
1351
+ this._commandService.executeCommand(mt.id, i);
1365
1352
  });
1366
1353
  }
1367
1354
  _getCurrentSceneAndTransformer() {
1368
- const { scene, mainComponent } = this._context;
1369
- if (scene == null || mainComponent == null)
1355
+ const { scene: i, mainComponent: e } = this._context;
1356
+ if (i == null || e == null)
1370
1357
  return;
1371
- const transformer = scene.getTransformerByCreate(), { docsLeft, docsTop } = mainComponent.getOffsetConfig();
1372
- return { scene, transformer, docsLeft, docsTop };
1358
+ const n = i.getTransformerByCreate(), { docsLeft: t, docsTop: r } = e.getOffsetConfig();
1359
+ return { scene: i, transformer: n, docsLeft: t, docsTop: r };
1373
1360
  }
1374
1361
  _transformDrawingListener() {
1375
- const res = this._getCurrentSceneAndTransformer();
1376
- if (res && res.transformer)
1377
- this.disposeWithMe(res.transformer.changeEnd$.pipe(debounceTime(30)).subscribe((params) => {
1362
+ const i = this._getCurrentSceneAndTransformer();
1363
+ if (i && i.transformer)
1364
+ this.disposeWithMe(i.transformer.changeEnd$.pipe(Yn(30)).subscribe((e) => {
1378
1365
  this._docSelectionManagerService.refreshSelection();
1379
1366
  }));
1380
1367
  else
@@ -1382,174 +1369,174 @@ let DocDrawingUpdateRenderController = (_a3 = class extends Disposable {
1382
1369
  }
1383
1370
  _focusDrawingListener() {
1384
1371
  this.disposeWithMe(
1385
- this._drawingManagerService.focus$.subscribe((params) => {
1386
- var _a8;
1387
- const { transformer, docsLeft, docsTop } = (_a8 = this._getCurrentSceneAndTransformer()) != null ? _a8 : {};
1388
- if (params == null || params.length === 0)
1389
- this._contextService.setContextValue(FOCUSING_COMMON_DRAWINGS, !1), this._docDrawingService.focusDrawing([]), transformer && transformer.resetProps({
1372
+ this._drawingManagerService.focus$.subscribe((i) => {
1373
+ var r;
1374
+ const { transformer: e, docsLeft: n, docsTop: t } = (r = this._getCurrentSceneAndTransformer()) != null ? r : {};
1375
+ if (i == null || i.length === 0)
1376
+ this._contextService.setContextValue(tn, !1), this._docDrawingService.focusDrawing([]), e && e.resetProps({
1390
1377
  zeroTop: 0,
1391
1378
  zeroLeft: 0
1392
1379
  });
1393
1380
  else {
1394
- this._contextService.setContextValue(FOCUSING_COMMON_DRAWINGS, !0), this._docDrawingService.focusDrawing(params), this._setDrawingSelections(params);
1395
- const prevSegmentId = this._docSelectionRenderService.getSegment(), segmentId = this._findSegmentIdByDrawingId(params[0].drawingId);
1396
- prevSegmentId !== segmentId && this._docSelectionRenderService.setSegment(segmentId), transformer && transformer.resetProps({
1397
- zeroTop: docsTop,
1398
- zeroLeft: docsLeft
1381
+ this._contextService.setContextValue(tn, !0), this._docDrawingService.focusDrawing(i), this._setDrawingSelections(i);
1382
+ const o = this._docSelectionRenderService.getSegment(), s = this._findSegmentIdByDrawingId(i[0].drawingId);
1383
+ o !== s && this._docSelectionRenderService.setSegment(s), e && e.resetProps({
1384
+ zeroTop: t,
1385
+ zeroLeft: n
1399
1386
  });
1400
1387
  }
1401
1388
  })
1402
1389
  );
1403
1390
  }
1404
- _findSegmentIdByDrawingId(drawingId) {
1405
- var _a8, _b, _c;
1406
- const { unit: DocDataModel } = this._context, { body, headers = {}, footers = {} } = DocDataModel.getSnapshot();
1407
- if (((_a8 = body == null ? void 0 : body.customBlocks) != null ? _a8 : []).some((b) => b.blockId === drawingId))
1391
+ _findSegmentIdByDrawingId(i) {
1392
+ var s, a, d;
1393
+ const { unit: e } = this._context, { body: n, headers: t = {}, footers: r = {} } = e.getSnapshot();
1394
+ if (((s = n == null ? void 0 : n.customBlocks) != null ? s : []).some((c) => c.blockId === i))
1408
1395
  return "";
1409
- for (const headerId of Object.keys(headers))
1410
- if ((_b = headers[headerId].body.customBlocks) != null && _b.some((b) => b.blockId === drawingId))
1411
- return headerId;
1412
- for (const footerId of Object.keys(footers))
1413
- if ((_c = footers[footerId].body.customBlocks) != null && _c.some((b) => b.blockId === drawingId))
1414
- return footerId;
1396
+ for (const c of Object.keys(t))
1397
+ if ((a = t[c].body.customBlocks) != null && a.some((l) => l.blockId === i))
1398
+ return c;
1399
+ for (const c of Object.keys(r))
1400
+ if ((d = r[c].body.customBlocks) != null && d.some((l) => l.blockId === i))
1401
+ return c;
1415
1402
  return "";
1416
1403
  }
1417
1404
  // Update drawings edit status and opacity. You can not edit header footer images when you are editing body. and vice verse.
1418
1405
  _updateDrawingsEditStatus() {
1419
- var _a8;
1420
- const { unit: docDataModel, scene, unitId } = this._context, viewModel = (_a8 = this._renderManagerSrv.getRenderById(unitId)) == null ? void 0 : _a8.with(DocSkeletonManagerService).getViewModel();
1421
- if (viewModel == null || docDataModel == null)
1406
+ var a;
1407
+ const { unit: i, scene: e, unitId: n } = this._context, t = (a = this._renderManagerSrv.getRenderById(n)) == null ? void 0 : a.with(oe).getViewModel();
1408
+ if (t == null || i == null)
1422
1409
  return;
1423
- const snapshot = docDataModel.getSnapshot(), { drawings = {} } = snapshot, isEditBody = viewModel.getEditArea() === DocumentEditArea.BODY;
1424
- for (const key of Object.keys(drawings)) {
1425
- const drawing = drawings[key], objectKey = getDrawingShapeKeyByDrawingSearch({ unitId, drawingId: drawing.drawingId, subUnitId: unitId }), drawingShapes = scene.fuzzyMathObjects(objectKey, !0);
1426
- if (drawingShapes.length)
1427
- for (const shape of drawingShapes)
1428
- scene.detachTransformerFrom(shape), shape.setOpacity(0.5), (isEditBody && drawing.isMultiTransform !== BooleanNumber.TRUE || !isEditBody && drawing.isMultiTransform === BooleanNumber.TRUE) && (scene.attachTransformerTo(shape), shape.setOpacity(1));
1410
+ const r = i.getSnapshot(), { drawings: o = {} } = r, s = t.getEditArea() === Ue.BODY;
1411
+ for (const d of Object.keys(o)) {
1412
+ const c = o[d], l = Kt({ unitId: n, drawingId: c.drawingId, subUnitId: n }), u = e.fuzzyMathObjects(l, !0);
1413
+ if (u.length)
1414
+ for (const m of u)
1415
+ e.detachTransformerFrom(m), m.setOpacity(0.5), (s && c.isMultiTransform !== re.TRUE || !s && c.isMultiTransform === re.TRUE) && (e.attachTransformerTo(m), m.setOpacity(1));
1429
1416
  }
1430
1417
  }
1431
1418
  _editAreaChangeListener() {
1432
- var _a8;
1433
- const { unitId } = this._context, viewModel = (_a8 = this._renderManagerSrv.getRenderById(unitId)) == null ? void 0 : _a8.with(DocSkeletonManagerService).getViewModel();
1434
- viewModel != null && (this._updateDrawingsEditStatus(), this.disposeWithMe(
1435
- viewModel.editAreaChange$.subscribe(() => {
1419
+ var n;
1420
+ const { unitId: i } = this._context, e = (n = this._renderManagerSrv.getRenderById(i)) == null ? void 0 : n.with(oe).getViewModel();
1421
+ e != null && (this._updateDrawingsEditStatus(), this.disposeWithMe(
1422
+ e.editAreaChange$.subscribe(() => {
1436
1423
  this._updateDrawingsEditStatus();
1437
1424
  })
1438
- ), this._docRefreshDrawingsService.refreshDrawings$.subscribe((skeleton) => {
1439
- skeleton != null && queueMicrotask(() => {
1425
+ ), this._docRefreshDrawingsService.refreshDrawings$.subscribe((t) => {
1426
+ t != null && queueMicrotask(() => {
1440
1427
  this._updateDrawingsEditStatus();
1441
1428
  });
1442
1429
  }), this.disposeWithMe(
1443
- this._commandService.onCommandExecuted(async (command) => {
1444
- command.id === RichTextEditingMutation.id && queueMicrotask(() => {
1430
+ this._commandService.onCommandExecuted(async (t) => {
1431
+ t.id === Z.id && queueMicrotask(() => {
1445
1432
  this._updateDrawingsEditStatus();
1446
1433
  });
1447
1434
  })
1448
1435
  ));
1449
1436
  }
1450
- _setDrawingSelections(params) {
1451
- var _a8, _b;
1452
- const { unit } = this._context, customBlocks = (_b = (_a8 = unit.getSnapshot().body) == null ? void 0 : _a8.customBlocks) != null ? _b : [], ranges = params.map((item) => {
1453
- const id = item.drawingId, block = customBlocks.find((b) => b.blockId === id);
1454
- return block ? block.startIndex : null;
1455
- }).filter((e) => e !== null).map((offset) => ({ startOffset: offset, endOffset: offset + 1 }));
1456
- this._docSelectionManagerService.replaceDocRanges(ranges);
1457
- }
1458
- }, __name(_a3, "DocDrawingUpdateRenderController"), _a3);
1459
- DocDrawingUpdateRenderController = __decorateClass$4([
1460
- __decorateParam$4(1, ICommandService),
1461
- __decorateParam$4(2, Inject(DocSelectionManagerService)),
1462
- __decorateParam$4(3, IRenderManagerService),
1463
- __decorateParam$4(4, IImageIoService),
1464
- __decorateParam$4(5, IDocDrawingService),
1465
- __decorateParam$4(6, IDrawingManagerService),
1466
- __decorateParam$4(7, IContextService),
1467
- __decorateParam$4(8, IMessageService),
1468
- __decorateParam$4(9, Inject(LocaleService)),
1469
- __decorateParam$4(10, Inject(DocSelectionRenderService)),
1470
- __decorateParam$4(11, Inject(DocRefreshDrawingsService)),
1471
- __decorateParam$4(12, ILocalFileService)
1472
- ], DocDrawingUpdateRenderController);
1473
- const InsertDocImageCommand = {
1437
+ _setDrawingSelections(i) {
1438
+ var r, o;
1439
+ const { unit: e } = this._context, n = (o = (r = e.getSnapshot().body) == null ? void 0 : r.customBlocks) != null ? o : [], t = i.map((s) => {
1440
+ const a = s.drawingId, d = n.find((c) => c.blockId === a);
1441
+ return d ? d.startIndex : null;
1442
+ }).filter((s) => s !== null).map((s) => ({ startOffset: s, endOffset: s + 1 }));
1443
+ this._docSelectionManagerService.replaceDocRanges(t);
1444
+ }
1445
+ };
1446
+ sn = qi([
1447
+ ge(1, z),
1448
+ ge(2, we(_n)),
1449
+ ge(3, Q),
1450
+ ge(4, Yt),
1451
+ ge(5, je),
1452
+ ge(6, ve),
1453
+ ge(7, zn),
1454
+ ge(8, ci),
1455
+ ge(9, we(ln)),
1456
+ ge(10, we(ye)),
1457
+ ge(11, we(gn)),
1458
+ ge(12, di)
1459
+ ], sn);
1460
+ const ut = {
1474
1461
  id: "doc.command.insert-float-image",
1475
- type: CommandType.COMMAND,
1476
- handler: /* @__PURE__ */ __name((accessor) => {
1477
- var _a8, _b;
1478
- return (_b = (_a8 = accessor.get(IRenderManagerService).getCurrentTypeOfRenderer(UniverInstanceType.UNIVER_DOC)) == null ? void 0 : _a8.with(DocDrawingUpdateRenderController).insertDocImage()) != null ? _b : !1;
1479
- }, "handler")
1480
- }, MoveDocDrawingsCommand = {
1462
+ type: X.COMMAND,
1463
+ handler: (i) => {
1464
+ var n, t;
1465
+ return (t = (n = i.get(Q).getCurrentTypeOfRenderer(Te.UNIVER_DOC)) == null ? void 0 : n.with(sn).insertDocImage()) != null ? t : !1;
1466
+ }
1467
+ }, Ke = {
1481
1468
  id: "doc.command.move-drawing",
1482
- type: CommandType.COMMAND,
1483
- handler: /* @__PURE__ */ __name((accessor, params) => {
1484
- const commandService = accessor.get(ICommandService), docDrawingService = accessor.get(IDocDrawingService), univerInstanceService = accessor.get(IUniverInstanceService), renderManagerService = accessor.get(IRenderManagerService), { direction } = params, drawings = docDrawingService.getFocusDrawings();
1485
- if (drawings.length === 0)
1469
+ type: X.COMMAND,
1470
+ handler: (i, e) => {
1471
+ const n = i.get(z), t = i.get(je), r = i.get(J), o = i.get(Q), { direction: s } = e, a = t.getFocusDrawings();
1472
+ if (a.length === 0)
1486
1473
  return !1;
1487
- const unitId = drawings[0].unitId, renderObject = renderManagerService.getRenderById(unitId), scene = renderObject == null ? void 0 : renderObject.scene;
1488
- if (scene == null)
1474
+ const d = a[0].unitId, c = o.getRenderById(d), l = c == null ? void 0 : c.scene;
1475
+ if (l == null)
1489
1476
  return !1;
1490
- const transformer = scene.getTransformerByCreate(), documentDataModel = univerInstanceService.getUniverDocInstance(unitId), newDrawings = drawings.map((drawing) => {
1491
- var _a8, _b, _c, _d, _e;
1492
- const { drawingId } = drawing, drawingData = (_a8 = documentDataModel == null ? void 0 : documentDataModel.getSnapshot().drawings) == null ? void 0 : _a8[drawingId];
1493
- if (drawingData == null || drawingData.layoutType === PositionedObjectLayoutType.INLINE)
1477
+ const u = l.getTransformerByCreate(), m = r.getUniverDocInstance(d), p = a.map((v) => {
1478
+ var T, N, B, R, I;
1479
+ const { drawingId: w } = v, S = (T = m == null ? void 0 : m.getSnapshot().drawings) == null ? void 0 : T[w];
1480
+ if (S == null || S.layoutType === k.INLINE)
1494
1481
  return null;
1495
- const { positionH, positionV } = drawingData.docTransform, newPositionH = { ...positionH }, newPositionV = { ...positionV };
1496
- return direction === Direction.UP ? newPositionV.posOffset = ((_b = newPositionV.posOffset) != null ? _b : 0) - 2 : direction === Direction.DOWN ? newPositionV.posOffset = ((_c = newPositionV.posOffset) != null ? _c : 0) + 2 : direction === Direction.LEFT ? newPositionH.posOffset = ((_d = newPositionH.posOffset) != null ? _d : 0) - 2 : direction === Direction.RIGHT && (newPositionH.posOffset = ((_e = newPositionH.posOffset) != null ? _e : 0) + 2), {
1497
- drawingId,
1498
- key: direction === Direction.UP || direction === Direction.DOWN ? "positionV" : "positionH",
1499
- value: direction === Direction.UP || direction === Direction.DOWN ? newPositionV : newPositionH
1482
+ const { positionH: O, positionV: D } = S.docTransform, x = { ...O }, b = { ...D };
1483
+ return s === ue.UP ? b.posOffset = ((N = b.posOffset) != null ? N : 0) - 2 : s === ue.DOWN ? b.posOffset = ((B = b.posOffset) != null ? B : 0) + 2 : s === ue.LEFT ? x.posOffset = ((R = x.posOffset) != null ? R : 0) - 2 : s === ue.RIGHT && (x.posOffset = ((I = x.posOffset) != null ? I : 0) + 2), {
1484
+ drawingId: w,
1485
+ key: s === ue.UP || s === ue.DOWN ? "positionV" : "positionH",
1486
+ value: s === ue.UP || s === ue.DOWN ? b : x
1500
1487
  };
1501
- }).filter((drawing) => drawing != null);
1502
- if (newDrawings.length === 0)
1488
+ }).filter((v) => v != null);
1489
+ if (p.length === 0)
1503
1490
  return !1;
1504
- const result = commandService.syncExecuteCommand(UpdateDrawingDocTransformCommand.id, {
1505
- unitId,
1506
- subUnitId: unitId,
1507
- drawings: newDrawings
1491
+ const h = n.syncExecuteCommand(qe.id, {
1492
+ unitId: d,
1493
+ subUnitId: d,
1494
+ drawings: p
1508
1495
  });
1509
- return transformer.refreshControls(), !!result;
1510
- }, "handler")
1511
- }, ClearDocDrawingTransformerOperation = {
1496
+ return u.refreshControls(), !!h;
1497
+ }
1498
+ }, Xi = {
1512
1499
  id: "doc.operation.clear-drawing-transformer",
1513
- type: CommandType.MUTATION,
1514
- handler: /* @__PURE__ */ __name((accessor, params) => {
1515
- const renderManagerService = accessor.get(IRenderManagerService);
1516
- return params.forEach((unitId) => {
1517
- var _a8, _b;
1518
- (_b = (_a8 = renderManagerService.getRenderById(unitId)) == null ? void 0 : _a8.scene.getTransformer()) == null || _b.debounceRefreshControls();
1500
+ type: X.MUTATION,
1501
+ handler: (i, e) => {
1502
+ const n = i.get(Q);
1503
+ return e.forEach((t) => {
1504
+ var r, o;
1505
+ (o = (r = n.getRenderById(t)) == null ? void 0 : r.scene.getTransformer()) == null || o.debounceRefreshControls();
1519
1506
  }), !0;
1520
- }, "handler")
1521
- }, COMPONENT_DOC_DRAWING_PANEL = "COMPONENT_DOC_DRAWING_PANEL", SidebarDocDrawingOperation = {
1507
+ }
1508
+ }, ft = "COMPONENT_DOC_DRAWING_PANEL", ht = {
1522
1509
  id: "sidebar.operation.doc-image",
1523
- type: CommandType.COMMAND,
1524
- handler: /* @__PURE__ */ __name(async (accessor, params) => {
1525
- const sidebarService = accessor.get(ISidebarService), localeService = accessor.get(LocaleService), drawingManagerService = accessor.get(IDrawingManagerService);
1526
- switch (params.value) {
1510
+ type: X.COMMAND,
1511
+ handler: async (i, e) => {
1512
+ const n = i.get(li), t = i.get(ln), r = i.get(ve);
1513
+ switch (e.value) {
1527
1514
  case "open":
1528
- sidebarService.open({
1529
- header: { title: localeService.t("docImage.panel.title") },
1530
- children: { label: COMPONENT_DOC_DRAWING_PANEL },
1531
- onClose: /* @__PURE__ */ __name(() => {
1532
- drawingManagerService.focusDrawing(null);
1533
- }, "onClose"),
1515
+ n.open({
1516
+ header: { title: t.t("docImage.panel.title") },
1517
+ children: { label: ft },
1518
+ onClose: () => {
1519
+ r.focusDrawing(null);
1520
+ },
1534
1521
  width: 360
1535
1522
  });
1536
1523
  break;
1537
1524
  case "close":
1538
1525
  default:
1539
- sidebarService.close();
1526
+ n.close();
1540
1527
  break;
1541
1528
  }
1542
1529
  return !0;
1543
- }, "handler")
1544
- }, EditDocDrawingOperation = {
1530
+ }
1531
+ }, pt = {
1545
1532
  id: "doc.operation.edit-doc-image",
1546
- type: CommandType.OPERATION,
1547
- handler: /* @__PURE__ */ __name((accessor, params) => {
1548
- const drawingManagerService = accessor.get(IDrawingManagerService), commandService = accessor.get(ICommandService);
1549
- return params == null ? !1 : (drawingManagerService.focusDrawing([params]), commandService.executeCommand(SidebarDocDrawingOperation.id, { value: "open" }), !0);
1550
- }, "handler")
1533
+ type: X.OPERATION,
1534
+ handler: (i, e) => {
1535
+ const n = i.get(ve), t = i.get(z);
1536
+ return e == null ? !1 : (n.focusDrawing([e]), t.executeCommand(ht.id, { value: "open" }), !0);
1537
+ }
1551
1538
  };
1552
- var jsxRuntime = { exports: {} }, reactJsxRuntime_production_min = {};
1539
+ var pn = { exports: {} }, Ge = {};
1553
1540
  /**
1554
1541
  * @license React
1555
1542
  * react-jsx-runtime.production.min.js
@@ -1559,1035 +1546,1018 @@ var jsxRuntime = { exports: {} }, reactJsxRuntime_production_min = {};
1559
1546
  * This source code is licensed under the MIT license found in the
1560
1547
  * LICENSE file in the root directory of this source tree.
1561
1548
  */
1562
- var hasRequiredReactJsxRuntime_production_min;
1563
- function requireReactJsxRuntime_production_min() {
1564
- if (hasRequiredReactJsxRuntime_production_min) return reactJsxRuntime_production_min;
1565
- hasRequiredReactJsxRuntime_production_min = 1;
1566
- var f = require$$0, k = Symbol.for("react.element"), l = Symbol.for("react.fragment"), m = Object.prototype.hasOwnProperty, n = f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, p = { key: !0, ref: !0, __self: !0, __source: !0 };
1567
- function q(c, a, g) {
1568
- var b, d = {}, e = null, h = null;
1569
- g !== void 0 && (e = "" + g), a.key !== void 0 && (e = "" + a.key), a.ref !== void 0 && (h = a.ref);
1570
- for (b in a) m.call(a, b) && !p.hasOwnProperty(b) && (d[b] = a[b]);
1571
- if (c && c.defaultProps) for (b in a = c.defaultProps, a) d[b] === void 0 && (d[b] = a[b]);
1572
- return { $$typeof: k, type: c, key: e, ref: h, props: d, _owner: n.current };
1573
- }
1574
- return __name(q, "q"), reactJsxRuntime_production_min.Fragment = l, reactJsxRuntime_production_min.jsx = q, reactJsxRuntime_production_min.jsxs = q, reactJsxRuntime_production_min;
1549
+ var Hn;
1550
+ function Ki() {
1551
+ if (Hn) return Ge;
1552
+ Hn = 1;
1553
+ var i = Ti, e = Symbol.for("react.element"), n = Symbol.for("react.fragment"), t = Object.prototype.hasOwnProperty, r = i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, o = { key: !0, ref: !0, __self: !0, __source: !0 };
1554
+ function s(a, d, c) {
1555
+ var l, u = {}, m = null, p = null;
1556
+ c !== void 0 && (m = "" + c), d.key !== void 0 && (m = "" + d.key), d.ref !== void 0 && (p = d.ref);
1557
+ for (l in d) t.call(d, l) && !o.hasOwnProperty(l) && (u[l] = d[l]);
1558
+ if (a && a.defaultProps) for (l in d = a.defaultProps, d) u[l] === void 0 && (u[l] = d[l]);
1559
+ return { $$typeof: e, type: a, key: m, ref: p, props: u, _owner: r.current };
1560
+ }
1561
+ return Ge.Fragment = n, Ge.jsx = s, Ge.jsxs = s, Ge;
1575
1562
  }
1576
- __name(requireReactJsxRuntime_production_min, "requireReactJsxRuntime_production_min");
1577
- var hasRequiredJsxRuntime;
1578
- function requireJsxRuntime() {
1579
- return hasRequiredJsxRuntime || (hasRequiredJsxRuntime = 1, jsxRuntime.exports = requireReactJsxRuntime_production_min()), jsxRuntime.exports;
1563
+ var Wn;
1564
+ function Yi() {
1565
+ return Wn || (Wn = 1, pn.exports = Ki()), pn.exports;
1580
1566
  }
1581
- __name(requireJsxRuntime, "requireJsxRuntime");
1582
- var jsxRuntimeExports = requireJsxRuntime();
1583
- function r(e) {
1584
- var t, f, n = "";
1585
- if (typeof e == "string" || typeof e == "number") n += e;
1586
- else if (typeof e == "object") if (Array.isArray(e)) {
1587
- var o = e.length;
1588
- for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
1589
- } else for (f in e) e[f] && (n && (n += " "), n += f);
1590
- return n;
1567
+ var g = Yi();
1568
+ function wt(i) {
1569
+ var e, n, t = "";
1570
+ if (typeof i == "string" || typeof i == "number") t += i;
1571
+ else if (typeof i == "object") if (Array.isArray(i)) {
1572
+ var r = i.length;
1573
+ for (e = 0; e < r; e++) i[e] && (n = wt(i[e])) && (t && (t += " "), t += n);
1574
+ } else for (n in i) i[n] && (t && (t += " "), t += n);
1575
+ return t;
1591
1576
  }
1592
- __name(r, "r");
1593
- function clsx() {
1594
- for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
1595
- return n;
1577
+ function V() {
1578
+ for (var i, e, n = 0, t = "", r = arguments.length; n < r; n++) (i = arguments[n]) && (e = wt(i)) && (t && (t += " "), t += e);
1579
+ return t;
1596
1580
  }
1597
- __name(clsx, "clsx");
1598
- const imageCommonPanel = "univer-image-common-panel", imageCommonPanelGrid = "univer-image-common-panel-grid", imageCommonPanelBorder = "univer-image-common-panel-border", imageCommonPanelTitle = "univer-image-common-panel-title", imageCommonPanelSubtitle = "univer-image-common-panel-subtitle", imageCommonPanelRow = "univer-image-common-panel-row", imageCommonPanelRowVertical = "univer-image-common-panel-row-vertical", imageCommonPanelColumn = "univer-image-common-panel-column", imageCommonPanelColumnCenter = "univer-image-common-panel-column-center", imageCommonPanelInline = "univer-image-common-panel-inline", imageCommonPanelSpan2 = "univer-image-common-panel-span2", imageCommonPanelSpan3 = "univer-image-common-panel-span3", imageCommonPanelInput = "univer-image-common-panel-input", sheetImageMenu = "univer-sheet-image-menu", sheetImageMenuInput = "univer-sheet-image-menu-input", styles = {
1599
- imageCommonPanel,
1600
- imageCommonPanelGrid,
1601
- imageCommonPanelBorder,
1602
- imageCommonPanelTitle,
1603
- imageCommonPanelSubtitle,
1604
- imageCommonPanelRow,
1605
- imageCommonPanelRowVertical,
1606
- imageCommonPanelColumn,
1607
- imageCommonPanelColumnCenter,
1608
- imageCommonPanelInline,
1609
- imageCommonPanelSpan2,
1610
- imageCommonPanelSpan3,
1611
- imageCommonPanelInput,
1612
- sheetImageMenu,
1613
- sheetImageMenuInput
1614
- }, MIN_OFFSET = -1e3, MAX_OFFSET = 1e3, DocDrawingPosition = /* @__PURE__ */ __name((props) => {
1615
- const commandService = useDependency(ICommandService), localeService = useDependency(LocaleService), drawingManagerService = useDependency(IDrawingManagerService), renderManagerService = useDependency(IRenderManagerService), univerInstanceService = useDependency(IUniverInstanceService), { drawings } = props, drawingParam = drawings[0];
1616
- if (drawingParam == null)
1581
+ const Ji = "univer-image-common-panel", Zi = "univer-image-common-panel-grid", Qi = "univer-image-common-panel-border", er = "univer-image-common-panel-title", nr = "univer-image-common-panel-subtitle", tr = "univer-image-common-panel-row", ir = "univer-image-common-panel-row-vertical", rr = "univer-image-common-panel-column", or = "univer-image-common-panel-column-center", sr = "univer-image-common-panel-inline", ar = "univer-image-common-panel-span2", cr = "univer-image-common-panel-span3", dr = "univer-image-common-panel-input", lr = "univer-sheet-image-menu", gr = "univer-sheet-image-menu-input", f = {
1582
+ imageCommonPanel: Ji,
1583
+ imageCommonPanelGrid: Zi,
1584
+ imageCommonPanelBorder: Qi,
1585
+ imageCommonPanelTitle: er,
1586
+ imageCommonPanelSubtitle: nr,
1587
+ imageCommonPanelRow: tr,
1588
+ imageCommonPanelRowVertical: ir,
1589
+ imageCommonPanelColumn: rr,
1590
+ imageCommonPanelColumnCenter: or,
1591
+ imageCommonPanelInline: sr,
1592
+ imageCommonPanelSpan2: ar,
1593
+ imageCommonPanelSpan3: cr,
1594
+ imageCommonPanelInput: dr,
1595
+ sheetImageMenu: lr,
1596
+ sheetImageMenuInput: gr
1597
+ }, Gn = -1e3, Vn = 1e3, mr = (i) => {
1598
+ const e = pe(z), n = pe(ln), t = pe(ve), r = pe(Q), o = pe(J), { drawings: s } = i, a = s[0];
1599
+ if (a == null)
1617
1600
  return;
1618
- const { unitId } = drawingParam, documentDataModel = univerInstanceService.getUniverDocInstance(unitId), documentFlavor = documentDataModel == null ? void 0 : documentDataModel.getSnapshot().documentStyle.documentFlavor, renderObject = renderManagerService.getRenderById(unitId), scene = renderObject == null ? void 0 : renderObject.scene;
1619
- if (scene == null)
1601
+ const { unitId: d } = a, c = o.getUniverDocInstance(d), l = c == null ? void 0 : c.getSnapshot().documentStyle.documentFlavor, u = r.getRenderById(d), m = u == null ? void 0 : u.scene;
1602
+ if (m == null)
1620
1603
  return;
1621
- const transformer = scene.getTransformerByCreate(), HORIZONTAL_RELATIVE_FROM = [{
1622
- label: localeService.t("image-position.column"),
1623
- value: String(ObjectRelativeFromH.COLUMN)
1604
+ const p = m.getTransformerByCreate(), h = [{
1605
+ label: n.t("image-position.column"),
1606
+ value: String(ee.COLUMN)
1624
1607
  }, {
1625
- label: localeService.t("image-position.page"),
1626
- value: String(ObjectRelativeFromH.PAGE)
1608
+ label: n.t("image-position.page"),
1609
+ value: String(ee.PAGE)
1627
1610
  }, {
1628
- label: localeService.t("image-position.margin"),
1629
- value: String(ObjectRelativeFromH.MARGIN)
1630
- }], VERTICAL_RELATIVE_FROM = [{
1631
- label: localeService.t("image-position.line"),
1632
- value: String(ObjectRelativeFromV.LINE),
1633
- disabled: documentFlavor === DocumentFlavor.MODERN
1611
+ label: n.t("image-position.margin"),
1612
+ value: String(ee.MARGIN)
1613
+ }], v = [{
1614
+ label: n.t("image-position.line"),
1615
+ value: String(G.LINE),
1616
+ disabled: l === fn.MODERN
1634
1617
  }, {
1635
- label: localeService.t("image-position.page"),
1636
- value: String(ObjectRelativeFromV.PAGE),
1637
- disabled: documentFlavor === DocumentFlavor.MODERN
1618
+ label: n.t("image-position.page"),
1619
+ value: String(G.PAGE),
1620
+ disabled: l === fn.MODERN
1638
1621
  }, {
1639
- label: localeService.t("image-position.margin"),
1640
- value: String(ObjectRelativeFromV.MARGIN),
1641
- disabled: documentFlavor === DocumentFlavor.MODERN
1622
+ label: n.t("image-position.margin"),
1623
+ value: String(G.MARGIN),
1624
+ disabled: l === fn.MODERN
1642
1625
  }, {
1643
- label: localeService.t("image-position.paragraph"),
1644
- value: String(ObjectRelativeFromV.PARAGRAPH)
1645
- }], [disabled, setDisabled] = useState(!0), [hPosition, setHPosition] = useState({
1646
- relativeFrom: ObjectRelativeFromH.PAGE,
1626
+ label: n.t("image-position.paragraph"),
1627
+ value: String(G.PARAGRAPH)
1628
+ }], [w, S] = ie(!0), [O, D] = ie({
1629
+ relativeFrom: ee.PAGE,
1647
1630
  posOffset: 0
1648
- }), [vPosition, setVPosition] = useState({
1649
- relativeFrom: ObjectRelativeFromV.PAGE,
1631
+ }), [x, b] = ie({
1632
+ relativeFrom: G.PAGE,
1650
1633
  posOffset: 0
1651
- }), [followTextMove, setFollowTextMove] = useState(!0), [showPanel, setShowPanel] = useState(!0);
1652
- function handlePositionChange(direction, value) {
1653
- var _a8;
1654
- direction === "positionH" ? setHPosition(value) : setVPosition(value);
1655
- const focusDrawings = drawingManagerService.getFocusDrawings();
1656
- if (focusDrawings.length === 0)
1634
+ }), [T, N] = ie(!0), [B, R] = ie(!0);
1635
+ function I(C, M) {
1636
+ var y;
1637
+ C === "positionH" ? D(M) : b(M);
1638
+ const P = t.getFocusDrawings();
1639
+ if (P.length === 0)
1657
1640
  return;
1658
- const drawings2 = focusDrawings.map((drawing) => ({
1659
- unitId: drawing.unitId,
1660
- subUnitId: drawing.subUnitId,
1661
- drawingId: drawing.drawingId
1641
+ const L = P.map((E) => ({
1642
+ unitId: E.unitId,
1643
+ subUnitId: E.subUnitId,
1644
+ drawingId: E.drawingId
1662
1645
  }));
1663
- commandService.executeCommand(UpdateDrawingDocTransformCommand.id, {
1664
- unitId: focusDrawings[0].unitId,
1665
- subUnitId: focusDrawings[0].unitId,
1666
- drawings: drawings2.map((drawing) => ({
1667
- drawingId: drawing.drawingId,
1668
- key: direction,
1669
- value
1646
+ e.executeCommand(qe.id, {
1647
+ unitId: P[0].unitId,
1648
+ subUnitId: P[0].unitId,
1649
+ drawings: L.map((E) => ({
1650
+ drawingId: E.drawingId,
1651
+ key: C,
1652
+ value: M
1670
1653
  }))
1671
1654
  });
1672
- const docSelectionRenderService = (_a8 = renderManagerService.getRenderById(unitId)) == null ? void 0 : _a8.with(DocSelectionRenderService);
1673
- docSelectionRenderService && docSelectionRenderService.blur(), transformer.refreshControls();
1674
- }
1675
- __name(handlePositionChange, "handlePositionChange");
1676
- function handleHorizontalRelativeFromChange(value) {
1677
- var _a8, _b, _c;
1678
- const prevRelativeFrom = hPosition.relativeFrom, prevPosOffset = hPosition.posOffset, relativeFrom = Number(value);
1679
- if (prevRelativeFrom === relativeFrom)
1655
+ const U = (y = r.getRenderById(d)) == null ? void 0 : y.with(ye);
1656
+ U && U.blur(), p.refreshControls();
1657
+ }
1658
+ function j(C) {
1659
+ var te, Ie, _e;
1660
+ const M = O.relativeFrom, P = O.posOffset, L = Number(C);
1661
+ if (M === L)
1680
1662
  return;
1681
- const focusDrawings = drawingManagerService.getFocusDrawings();
1682
- if (focusDrawings.length === 0)
1663
+ const U = t.getFocusDrawings();
1664
+ if (U.length === 0)
1683
1665
  return;
1684
- const drawingId = focusDrawings[0].drawingId, unitId2 = focusDrawings[0].unitId;
1685
- let drawing = null, pageMarginLeft = 0;
1686
- const skeleton = (_a8 = renderManagerService.getRenderById(unitId2)) == null ? void 0 : _a8.with(DocSkeletonManagerService).getSkeleton(), skeletonData = skeleton == null ? void 0 : skeleton.getSkeletonData();
1687
- if (skeletonData == null)
1666
+ const y = U[0].drawingId, E = U[0].unitId;
1667
+ let $ = null, F = 0;
1668
+ const K = (te = r.getRenderById(E)) == null ? void 0 : te.with(oe).getSkeleton(), se = K == null ? void 0 : K.getSkeletonData();
1669
+ if (se == null)
1688
1670
  return;
1689
- const { pages, skeHeaders, skeFooters } = skeletonData;
1690
- for (const page of pages) {
1691
- const { marginLeft, skeDrawings, headerId, footerId, pageWidth } = page;
1692
- if (skeDrawings.has(drawingId)) {
1693
- drawing = skeDrawings.get(drawingId), pageMarginLeft = marginLeft;
1671
+ const { pages: Le, skeHeaders: be, skeFooters: ke } = se;
1672
+ for (const ce of Le) {
1673
+ const { marginLeft: Ce, skeDrawings: De, headerId: Me, footerId: Re, pageWidth: Oe } = ce;
1674
+ if (De.has(y)) {
1675
+ $ = De.get(y), F = Ce;
1694
1676
  break;
1695
1677
  }
1696
- const headerPage = (_b = skeHeaders.get(headerId)) == null ? void 0 : _b.get(pageWidth);
1697
- if (headerPage != null && headerPage.skeDrawings.has(drawingId)) {
1698
- drawing = headerPage == null ? void 0 : headerPage.skeDrawings.get(drawingId), pageMarginLeft = marginLeft;
1678
+ const de = (Ie = be.get(Me)) == null ? void 0 : Ie.get(Oe);
1679
+ if (de != null && de.skeDrawings.has(y)) {
1680
+ $ = de == null ? void 0 : de.skeDrawings.get(y), F = Ce;
1699
1681
  break;
1700
1682
  }
1701
- const footerPage = (_c = skeFooters.get(footerId)) == null ? void 0 : _c.get(pageWidth);
1702
- if (footerPage != null && footerPage.skeDrawings.has(drawingId)) {
1703
- drawing = footerPage == null ? void 0 : footerPage.skeDrawings.get(drawingId), pageMarginLeft = marginLeft;
1683
+ const le = (_e = ke.get(Re)) == null ? void 0 : _e.get(Oe);
1684
+ if (le != null && le.skeDrawings.has(y)) {
1685
+ $ = le == null ? void 0 : le.skeDrawings.get(y), F = Ce;
1704
1686
  break;
1705
1687
  }
1706
1688
  }
1707
- if (drawing == null)
1689
+ if ($ == null)
1708
1690
  return;
1709
- let delta = 0;
1710
- prevRelativeFrom === ObjectRelativeFromH.COLUMN ? delta -= drawing.columnLeft : prevRelativeFrom === ObjectRelativeFromH.MARGIN && (delta -= pageMarginLeft), relativeFrom === ObjectRelativeFromH.COLUMN ? delta += drawing.columnLeft : relativeFrom === ObjectRelativeFromH.MARGIN ? delta += pageMarginLeft : ObjectRelativeFromH.PAGE;
1711
- const newPositionH = {
1712
- relativeFrom,
1713
- posOffset: (prevPosOffset != null ? prevPosOffset : 0) - delta
1691
+ let ae = 0;
1692
+ M === ee.COLUMN ? ae -= $.columnLeft : M === ee.MARGIN && (ae -= F), L === ee.COLUMN ? ae += $.columnLeft : L === ee.MARGIN ? ae += F : ee.PAGE;
1693
+ const ne = {
1694
+ relativeFrom: L,
1695
+ posOffset: (P != null ? P : 0) - ae
1714
1696
  };
1715
- handlePositionChange("positionH", newPositionH);
1697
+ I("positionH", ne);
1716
1698
  }
1717
- __name(handleHorizontalRelativeFromChange, "handleHorizontalRelativeFromChange");
1718
- function handleVerticalRelativeFromChange(value) {
1719
- var _a8, _b, _c, _d, _e, _f;
1720
- const prevRelativeFrom = vPosition.relativeFrom, prevPosOffset = vPosition.posOffset, relativeFrom = Number(value);
1721
- if (prevRelativeFrom === relativeFrom)
1699
+ function H(C) {
1700
+ var De, Me, Re, Oe, de, le;
1701
+ const M = x.relativeFrom, P = x.posOffset, L = Number(C);
1702
+ if (M === L)
1722
1703
  return;
1723
- const focusDrawings = drawingManagerService.getFocusDrawings();
1724
- if (focusDrawings.length === 0)
1704
+ const U = t.getFocusDrawings();
1705
+ if (U.length === 0)
1725
1706
  return;
1726
- const { drawingId, unitId: unitId2 } = focusDrawings[0], documentDataModel2 = univerInstanceService.getUniverDocInstance(unitId2), skeleton = (_a8 = renderManagerService.getRenderById(unitId2)) == null ? void 0 : _a8.with(DocSkeletonManagerService).getSkeleton(), docSelectionRenderService = (_b = renderManagerService.getRenderById(unitId2)) == null ? void 0 : _b.with(DocSelectionRenderService), segmentId = docSelectionRenderService == null ? void 0 : docSelectionRenderService.getSegment(), segmentPage = docSelectionRenderService == null ? void 0 : docSelectionRenderService.getSegmentPage(), drawing = (_d = (_c = documentDataModel2 == null ? void 0 : documentDataModel2.getSelfOrHeaderFooterModel(segmentId).getBody()) == null ? void 0 : _c.customBlocks) == null ? void 0 : _d.find((c) => c.blockId === drawingId);
1727
- if (drawing == null || skeleton == null || docSelectionRenderService == null)
1707
+ const { drawingId: y, unitId: E } = U[0], $ = o.getUniverDocInstance(E), F = (De = r.getRenderById(E)) == null ? void 0 : De.with(oe).getSkeleton(), K = (Me = r.getRenderById(E)) == null ? void 0 : Me.with(ye), se = K == null ? void 0 : K.getSegment(), Le = K == null ? void 0 : K.getSegmentPage(), be = (Oe = (Re = $ == null ? void 0 : $.getSelfOrHeaderFooterModel(se).getBody()) == null ? void 0 : Re.customBlocks) == null ? void 0 : Oe.find((Ne) => Ne.blockId === y);
1708
+ if (be == null || F == null || K == null)
1728
1709
  return;
1729
- const { startIndex } = drawing, glyph = skeleton.findNodeByCharIndex(startIndex, segmentId, segmentPage), line = (_e = glyph == null ? void 0 : glyph.parent) == null ? void 0 : _e.parent, column = line == null ? void 0 : line.parent, paragraphStartLine = column == null ? void 0 : column.lines.find((l) => l.paragraphIndex === (line == null ? void 0 : line.paragraphIndex) && l.paragraphStart), page = (_f = column == null ? void 0 : column.parent) == null ? void 0 : _f.parent;
1730
- if (glyph == null || line == null || paragraphStartLine == null || column == null || page == null)
1710
+ const { startIndex: ke } = be, ae = F.findNodeByCharIndex(ke, se, Le), ne = (de = ae == null ? void 0 : ae.parent) == null ? void 0 : de.parent, te = ne == null ? void 0 : ne.parent, Ie = te == null ? void 0 : te.lines.find((Ne) => Ne.paragraphIndex === (ne == null ? void 0 : ne.paragraphIndex) && Ne.paragraphStart), _e = (le = te == null ? void 0 : te.parent) == null ? void 0 : le.parent;
1711
+ if (ae == null || ne == null || Ie == null || te == null || _e == null)
1731
1712
  return;
1732
- let delta = 0;
1733
- prevRelativeFrom === ObjectRelativeFromV.PARAGRAPH ? delta -= paragraphStartLine.top : prevRelativeFrom === ObjectRelativeFromV.LINE ? delta -= line.top : prevRelativeFrom === ObjectRelativeFromV.PAGE && (delta += page.marginTop), relativeFrom === ObjectRelativeFromV.PARAGRAPH ? delta += paragraphStartLine.top : relativeFrom === ObjectRelativeFromV.LINE ? delta += line.top : relativeFrom === ObjectRelativeFromV.PAGE && (delta -= page.marginTop);
1734
- const newPositionV = {
1735
- relativeFrom,
1736
- posOffset: (prevPosOffset != null ? prevPosOffset : 0) - delta
1713
+ let ce = 0;
1714
+ M === G.PARAGRAPH ? ce -= Ie.top : M === G.LINE ? ce -= ne.top : M === G.PAGE && (ce += _e.marginTop), L === G.PARAGRAPH ? ce += Ie.top : L === G.LINE ? ce += ne.top : L === G.PAGE && (ce -= _e.marginTop);
1715
+ const Ce = {
1716
+ relativeFrom: L,
1717
+ posOffset: (P != null ? P : 0) - ce
1737
1718
  };
1738
- handlePositionChange("positionV", newPositionV);
1719
+ I("positionV", Ce);
1739
1720
  }
1740
- __name(handleVerticalRelativeFromChange, "handleVerticalRelativeFromChange");
1741
- function updateState(drawingParam2) {
1742
- var _a8;
1743
- const snapshot = documentDataModel == null ? void 0 : documentDataModel.getSnapshot(), drawing = (_a8 = snapshot == null ? void 0 : snapshot.drawings) == null ? void 0 : _a8[drawingParam2.drawingId];
1744
- if (drawing == null)
1721
+ function A(C) {
1722
+ var E;
1723
+ const M = c == null ? void 0 : c.getSnapshot(), P = (E = M == null ? void 0 : M.drawings) == null ? void 0 : E[C.drawingId];
1724
+ if (P == null)
1745
1725
  return;
1746
- const { layoutType } = drawing, {
1747
- positionH,
1748
- positionV
1749
- } = drawing.docTransform;
1750
- setHPosition(positionH), setVPosition(positionV), setDisabled(layoutType === PositionedObjectLayoutType.INLINE), setFollowTextMove(positionV.relativeFrom === ObjectRelativeFromV.PARAGRAPH || positionV.relativeFrom === ObjectRelativeFromV.LINE);
1751
- }
1752
- __name(updateState, "updateState");
1753
- function updateFocusDrawingState() {
1754
- const focusDrawings = drawingManagerService.getFocusDrawings();
1755
- focusDrawings.length !== 0 && updateState(focusDrawings[0]);
1756
- }
1757
- __name(updateFocusDrawingState, "updateFocusDrawingState");
1758
- function handleFollowTextMoveCheck(val) {
1759
- setFollowTextMove(val), handleVerticalRelativeFromChange(String(val ? ObjectRelativeFromV.PARAGRAPH : ObjectRelativeFromV.PAGE));
1760
- }
1761
- return __name(handleFollowTextMoveCheck, "handleFollowTextMoveCheck"), useEffect(() => {
1762
- updateFocusDrawingState();
1763
- const subscription = drawingManagerService.focus$.subscribe((drawingParams) => {
1764
- if (drawingParams.length === 0) {
1765
- setShowPanel(!1);
1726
+ const { layoutType: L } = P, {
1727
+ positionH: U,
1728
+ positionV: y
1729
+ } = P.docTransform;
1730
+ D(U), b(y), S(L === k.INLINE), N(y.relativeFrom === G.PARAGRAPH || y.relativeFrom === G.LINE);
1731
+ }
1732
+ function W() {
1733
+ const C = t.getFocusDrawings();
1734
+ C.length !== 0 && A(C[0]);
1735
+ }
1736
+ function _(C) {
1737
+ N(C), H(String(C ? G.PARAGRAPH : G.PAGE));
1738
+ }
1739
+ return Sn(() => {
1740
+ W();
1741
+ const C = t.focus$.subscribe((P) => {
1742
+ if (P.length === 0) {
1743
+ R(!1);
1766
1744
  return;
1767
1745
  }
1768
- setShowPanel(!0), updateState(drawingParams[0]);
1769
- }), mutationListener = commandService.onCommandExecuted(async (command) => {
1770
- command.id === RichTextEditingMutation.id && updateFocusDrawingState();
1746
+ R(!0), A(P[0]);
1747
+ }), M = e.onCommandExecuted(async (P) => {
1748
+ P.id === Z.id && W();
1771
1749
  });
1772
1750
  return () => {
1773
- subscription.unsubscribe(), mutationListener.dispose();
1751
+ C.unsubscribe(), M.dispose();
1774
1752
  };
1775
- }, []), /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles.imageCommonPanelGrid, styles.imageCommonPanelBorder), style: { display: showPanel ? "block" : "none" }, children: [
1776
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelTitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-position.title") }) }) }),
1777
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSubtitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-position.horizontal") }) }) }),
1778
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles.imageCommonPanelRow, children: [
1779
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
1780
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-position.absolutePosition") }) }),
1781
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1782
- InputNumber,
1753
+ }, []), /* @__PURE__ */ g.jsxs("div", { className: V(f.imageCommonPanelGrid, f.imageCommonPanelBorder), style: { display: B ? "block" : "none" }, children: [
1754
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelTitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-position.title") }) }) }),
1755
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSubtitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-position.horizontal") }) }) }),
1756
+ /* @__PURE__ */ g.jsxs("div", { className: f.imageCommonPanelRow, children: [
1757
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
1758
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-position.absolutePosition") }) }),
1759
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
1760
+ Be,
1783
1761
  {
1784
- min: MIN_OFFSET,
1785
- max: MAX_OFFSET,
1762
+ min: Gn,
1763
+ max: Vn,
1786
1764
  precision: 1,
1787
- disabled,
1788
- value: hPosition.posOffset,
1789
- onChange: /* @__PURE__ */ __name((val) => {
1790
- handlePositionChange("positionH", {
1791
- relativeFrom: hPosition.relativeFrom,
1792
- posOffset: val
1765
+ disabled: w,
1766
+ value: O.posOffset,
1767
+ onChange: (C) => {
1768
+ I("positionH", {
1769
+ relativeFrom: O.relativeFrom,
1770
+ posOffset: C
1793
1771
  });
1794
- }, "onChange"),
1795
- className: styles.imageCommonPanelInput
1772
+ },
1773
+ className: f.imageCommonPanelInput
1796
1774
  }
1797
1775
  ) }) })
1798
1776
  ] }) }),
1799
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
1800
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-position.toTheRightOf") }) }),
1801
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1802
- Select,
1777
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
1778
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-position.toTheRightOf") }) }),
1779
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
1780
+ Bn,
1803
1781
  {
1804
- value: String(hPosition.relativeFrom),
1805
- disabled,
1806
- options: HORIZONTAL_RELATIVE_FROM,
1807
- onChange: handleHorizontalRelativeFromChange
1782
+ value: String(O.relativeFrom),
1783
+ disabled: w,
1784
+ options: h,
1785
+ onChange: j
1808
1786
  }
1809
1787
  ) }) })
1810
1788
  ] }) })
1811
1789
  ] }),
1812
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSubtitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-position.vertical") }) }) }),
1813
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles.imageCommonPanelRow, children: [
1814
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
1815
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-position.absolutePosition") }) }),
1816
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1817
- InputNumber,
1790
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSubtitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-position.vertical") }) }) }),
1791
+ /* @__PURE__ */ g.jsxs("div", { className: f.imageCommonPanelRow, children: [
1792
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
1793
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-position.absolutePosition") }) }),
1794
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
1795
+ Be,
1818
1796
  {
1819
- min: MIN_OFFSET,
1820
- max: MAX_OFFSET,
1797
+ min: Gn,
1798
+ max: Vn,
1821
1799
  precision: 1,
1822
- disabled,
1823
- value: vPosition.posOffset,
1824
- onChange: /* @__PURE__ */ __name((val) => {
1825
- handlePositionChange("positionV", {
1826
- relativeFrom: vPosition.relativeFrom,
1827
- posOffset: val
1800
+ disabled: w,
1801
+ value: x.posOffset,
1802
+ onChange: (C) => {
1803
+ I("positionV", {
1804
+ relativeFrom: x.relativeFrom,
1805
+ posOffset: C
1828
1806
  });
1829
- }, "onChange"),
1830
- className: styles.imageCommonPanelInput
1807
+ },
1808
+ className: f.imageCommonPanelInput
1831
1809
  }
1832
1810
  ) }) })
1833
1811
  ] }) }),
1834
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
1835
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-position.bellow") }) }),
1836
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1837
- Select,
1812
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
1813
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-position.bellow") }) }),
1814
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
1815
+ Bn,
1838
1816
  {
1839
- disabled,
1840
- value: String(vPosition.relativeFrom),
1841
- options: VERTICAL_RELATIVE_FROM,
1842
- onChange: handleVerticalRelativeFromChange
1817
+ disabled: w,
1818
+ value: String(x.relativeFrom),
1819
+ options: v,
1820
+ onChange: H
1843
1821
  }
1844
1822
  ) }) })
1845
1823
  ] }) })
1846
1824
  ] }),
1847
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSubtitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-position.options") }) }) }),
1848
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, style: { marginBottom: "50px" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Checkbox, { disabled, checked: followTextMove, onChange: handleFollowTextMoveCheck, children: localeService.t("image-position.moveObjectWithText") }) }) })
1825
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSubtitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-position.options") }) }) }),
1826
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, style: { marginBottom: "50px" }, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(Pi, { disabled: w, checked: T, onChange: _, children: n.t("image-position.moveObjectWithText") }) }) })
1849
1827
  ] });
1850
- }, "DocDrawingPosition"), MIN_MARGIN = 0, MAX_MARGIN = 100, DocDrawingTextWrap = /* @__PURE__ */ __name((props) => {
1851
- const commandService = useDependency(ICommandService), localeService = useDependency(LocaleService), drawingManagerService = useDependency(IDrawingManagerService), renderManagerService = useDependency(IRenderManagerService), univerInstanceService = useDependency(IUniverInstanceService), { drawings } = props, drawingParam = drawings[0];
1852
- if (drawingParam == null)
1828
+ }, Qe = 0, en = 100, ur = (i) => {
1829
+ const e = pe(z), n = pe(ln), t = pe(ve), r = pe(Q), o = pe(J), { drawings: s } = i, a = s[0];
1830
+ if (a == null)
1853
1831
  return null;
1854
- const { unitId } = drawingParam, documentDataModel = univerInstanceService.getUniverDocInstance(unitId), renderObject = renderManagerService.getRenderById(unitId);
1855
- if ((renderObject == null ? void 0 : renderObject.scene) == null)
1832
+ const { unitId: d } = a, c = o.getUniverDocInstance(d), l = r.getRenderById(d);
1833
+ if ((l == null ? void 0 : l.scene) == null)
1856
1834
  return null;
1857
- const [disableWrapText, setDisableWrapText] = useState(!0), [disableDistTB, setDisableDistTB] = useState(!0), [disableDistLR, setDisableDistLR] = useState(!0), [wrappingStyle, setWrappingStyle] = useState(TextWrappingStyle.INLINE), [wrapText, setWrapText] = useState(""), [distToText, setDistToText] = useState({
1835
+ const [m, p] = ie(!0), [h, v] = ie(!0), [w, S] = ie(!0), [O, D] = ie(me.INLINE), [x, b] = ie(""), [T, N] = ie({
1858
1836
  distT: 0,
1859
1837
  distL: 0,
1860
1838
  distB: 0,
1861
1839
  distR: 0
1862
- }), [showPanel, setShowPanel] = useState(!0);
1863
- function handleWrappingStyleChange(value) {
1864
- setWrappingStyle(value);
1865
- const focusDrawings = drawingManagerService.getFocusDrawings();
1866
- if (focusDrawings.length === 0)
1840
+ }), [B, R] = ie(!0);
1841
+ function I(_) {
1842
+ D(_);
1843
+ const C = t.getFocusDrawings();
1844
+ if (C.length === 0)
1867
1845
  return;
1868
- const { unitId: unitId2, subUnitId } = focusDrawings[0], drawings2 = focusDrawings.map(({ unitId: unitId3, subUnitId: subUnitId2, drawingId }) => ({
1869
- unitId: unitId3,
1870
- subUnitId: subUnitId2,
1871
- drawingId
1846
+ const { unitId: M, subUnitId: P } = C[0], L = C.map(({ unitId: U, subUnitId: y, drawingId: E }) => ({
1847
+ unitId: U,
1848
+ subUnitId: y,
1849
+ drawingId: E
1872
1850
  }));
1873
- commandService.executeCommand(UpdateDocDrawingWrappingStyleCommand.id, {
1874
- unitId: unitId2,
1875
- subUnitId,
1876
- drawings: drawings2,
1877
- wrappingStyle: value
1851
+ e.executeCommand(et.id, {
1852
+ unitId: M,
1853
+ subUnitId: P,
1854
+ drawings: L,
1855
+ wrappingStyle: _
1878
1856
  });
1879
1857
  }
1880
- __name(handleWrappingStyleChange, "handleWrappingStyleChange");
1881
- function handleWrapTextChange(value) {
1882
- setWrapText(value);
1883
- const focusDrawings = drawingManagerService.getFocusDrawings();
1884
- if (focusDrawings.length === 0)
1858
+ function j(_) {
1859
+ b(_);
1860
+ const C = t.getFocusDrawings();
1861
+ if (C.length === 0)
1885
1862
  return;
1886
- const drawings2 = focusDrawings.map((drawing) => ({
1887
- unitId: drawing.unitId,
1888
- subUnitId: drawing.subUnitId,
1889
- drawingId: drawing.drawingId
1863
+ const M = C.map((P) => ({
1864
+ unitId: P.unitId,
1865
+ subUnitId: P.subUnitId,
1866
+ drawingId: P.drawingId
1890
1867
  }));
1891
- commandService.executeCommand(UpdateDocDrawingWrapTextCommand.id, {
1892
- unitId: focusDrawings[0].unitId,
1893
- subUnitId: focusDrawings[0].unitId,
1894
- drawings: drawings2,
1895
- wrapText: value
1868
+ e.executeCommand(tt.id, {
1869
+ unitId: C[0].unitId,
1870
+ subUnitId: C[0].unitId,
1871
+ drawings: M,
1872
+ wrapText: _
1896
1873
  });
1897
1874
  }
1898
- __name(handleWrapTextChange, "handleWrapTextChange");
1899
- function handleDistToTextChange(value, direction) {
1900
- if (value == null)
1875
+ function H(_, C) {
1876
+ if (_ == null)
1901
1877
  return;
1902
- const newDistToText = { ...distToText, [direction]: value };
1903
- setDistToText(newDistToText);
1904
- const focusDrawings = drawingManagerService.getFocusDrawings();
1905
- if (focusDrawings.length === 0)
1878
+ const M = { ...T, [C]: _ };
1879
+ N(M);
1880
+ const P = t.getFocusDrawings();
1881
+ if (P.length === 0)
1906
1882
  return;
1907
- const drawings2 = focusDrawings.map((drawing) => ({
1908
- unitId: drawing.unitId,
1909
- subUnitId: drawing.subUnitId,
1910
- drawingId: drawing.drawingId
1883
+ const L = P.map((U) => ({
1884
+ unitId: U.unitId,
1885
+ subUnitId: U.subUnitId,
1886
+ drawingId: U.drawingId
1911
1887
  }));
1912
- commandService.executeCommand(UpdateDocDrawingDistanceCommand.id, {
1913
- unitId: focusDrawings[0].unitId,
1914
- subUnitId: focusDrawings[0].unitId,
1915
- drawings: drawings2,
1888
+ e.executeCommand(nt.id, {
1889
+ unitId: P[0].unitId,
1890
+ subUnitId: P[0].unitId,
1891
+ drawings: L,
1916
1892
  dist: {
1917
- [direction]: value
1893
+ [C]: _
1918
1894
  }
1919
1895
  });
1920
1896
  }
1921
- __name(handleDistToTextChange, "handleDistToTextChange");
1922
- function updateFocusDrawingState() {
1923
- const focusDrawings = drawingManagerService.getFocusDrawings();
1924
- focusDrawings.length !== 0 && updateState(focusDrawings[0]);
1897
+ function A() {
1898
+ const _ = t.getFocusDrawings();
1899
+ _.length !== 0 && W(_[0]);
1925
1900
  }
1926
- __name(updateFocusDrawingState, "updateFocusDrawingState");
1927
- function updateState(drawingParam2) {
1928
- var _a8, _b;
1929
- const drawing = (_b = (_a8 = documentDataModel == null ? void 0 : documentDataModel.getSnapshot()) == null ? void 0 : _a8.drawings) == null ? void 0 : _b[drawingParam2.drawingId];
1930
- if (drawing == null)
1901
+ function W(_) {
1902
+ var K, se;
1903
+ const C = (se = (K = c == null ? void 0 : c.getSnapshot()) == null ? void 0 : K.drawings) == null ? void 0 : se[_.drawingId];
1904
+ if (C == null)
1931
1905
  return;
1932
1906
  const {
1933
- distT = 0,
1934
- distL = 0,
1935
- distB = 0,
1936
- distR = 0,
1937
- layoutType = PositionedObjectLayoutType.INLINE,
1938
- behindDoc = BooleanNumber.FALSE,
1939
- wrapText: wrapText2 = WrapTextType.BOTH_SIDES
1940
- } = drawing;
1941
- if (setDistToText({
1942
- distT,
1943
- distL,
1944
- distB,
1945
- distR
1946
- }), setWrapText(wrapText2), setDisableWrapText(layoutType !== PositionedObjectLayoutType.WRAP_SQUARE), layoutType === PositionedObjectLayoutType.WRAP_NONE || layoutType === PositionedObjectLayoutType.INLINE ? setDisableDistTB(!0) : setDisableDistTB(!1), layoutType === PositionedObjectLayoutType.WRAP_NONE || layoutType === PositionedObjectLayoutType.INLINE || layoutType === PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM ? setDisableDistLR(!0) : setDisableDistLR(!1), layoutType === PositionedObjectLayoutType.WRAP_NONE)
1947
- behindDoc === BooleanNumber.TRUE ? setWrappingStyle(TextWrappingStyle.BEHIND_TEXT) : setWrappingStyle(TextWrappingStyle.IN_FRONT_OF_TEXT);
1907
+ distT: M = 0,
1908
+ distL: P = 0,
1909
+ distB: L = 0,
1910
+ distR: U = 0,
1911
+ layoutType: y = k.INLINE,
1912
+ behindDoc: E = re.FALSE,
1913
+ wrapText: $ = $e.BOTH_SIDES
1914
+ } = C;
1915
+ if (N({
1916
+ distT: M,
1917
+ distL: P,
1918
+ distB: L,
1919
+ distR: U
1920
+ }), b($), p(y !== k.WRAP_SQUARE), y === k.WRAP_NONE || y === k.INLINE ? v(!0) : v(!1), y === k.WRAP_NONE || y === k.INLINE || y === k.WRAP_TOP_AND_BOTTOM ? S(!0) : S(!1), y === k.WRAP_NONE)
1921
+ E === re.TRUE ? D(me.BEHIND_TEXT) : D(me.IN_FRONT_OF_TEXT);
1948
1922
  else
1949
- switch (layoutType) {
1950
- case PositionedObjectLayoutType.INLINE:
1951
- setWrappingStyle(TextWrappingStyle.INLINE);
1923
+ switch (y) {
1924
+ case k.INLINE:
1925
+ D(me.INLINE);
1952
1926
  break;
1953
- case PositionedObjectLayoutType.WRAP_SQUARE:
1954
- setWrappingStyle(TextWrappingStyle.WRAP_SQUARE);
1927
+ case k.WRAP_SQUARE:
1928
+ D(me.WRAP_SQUARE);
1955
1929
  break;
1956
- case PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM:
1957
- setWrappingStyle(TextWrappingStyle.WRAP_TOP_AND_BOTTOM);
1930
+ case k.WRAP_TOP_AND_BOTTOM:
1931
+ D(me.WRAP_TOP_AND_BOTTOM);
1958
1932
  break;
1959
1933
  default:
1960
- throw new Error(`Unsupported layout type: ${layoutType}`);
1934
+ throw new Error(`Unsupported layout type: ${y}`);
1961
1935
  }
1962
1936
  }
1963
- return __name(updateState, "updateState"), useEffect(() => {
1964
- updateFocusDrawingState();
1965
- const subscription = drawingManagerService.focus$.subscribe((drawingParams) => {
1966
- if (drawingParams.length === 0) {
1967
- setShowPanel(!1);
1937
+ return Sn(() => {
1938
+ A();
1939
+ const _ = t.focus$.subscribe((M) => {
1940
+ if (M.length === 0) {
1941
+ R(!1);
1968
1942
  return;
1969
1943
  }
1970
- setShowPanel(!0), updateState(drawingParams[0]);
1971
- }), mutationListener = commandService.onCommandExecuted(async (command) => {
1972
- command.id === RichTextEditingMutation.id && updateFocusDrawingState();
1944
+ R(!0), W(M[0]);
1945
+ }), C = e.onCommandExecuted(async (M) => {
1946
+ M.id === Z.id && A();
1973
1947
  });
1974
1948
  return () => {
1975
- subscription.unsubscribe(), mutationListener.dispose();
1949
+ _.unsubscribe(), C.dispose();
1976
1950
  };
1977
- }, []), /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: clsx(styles.imageCommonPanelGrid, styles.imageCommonPanelBorder), style: { display: showPanel ? "block" : "none" }, children: [
1978
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelTitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-text-wrap.title") }) }) }),
1979
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSubtitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-text-wrap.wrappingStyle") }) }) }),
1980
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelRow), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn), children: /* @__PURE__ */ jsxRuntimeExports.jsxs(RadioGroup, { value: wrappingStyle, onChange: handleWrappingStyleChange, direction: "vertical", children: [
1981
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: TextWrappingStyle.INLINE, children: localeService.t("image-text-wrap.inline") }),
1982
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: TextWrappingStyle.WRAP_SQUARE, children: localeService.t("image-text-wrap.square") }),
1983
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: TextWrappingStyle.WRAP_TOP_AND_BOTTOM, children: localeService.t("image-text-wrap.topAndBottom") }),
1984
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: TextWrappingStyle.BEHIND_TEXT, children: localeService.t("image-text-wrap.behindText") }),
1985
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: TextWrappingStyle.IN_FRONT_OF_TEXT, children: localeService.t("image-text-wrap.inFrontText") })
1951
+ }, []), /* @__PURE__ */ g.jsxs("div", { className: V(f.imageCommonPanelGrid, f.imageCommonPanelBorder), style: { display: B ? "block" : "none" }, children: [
1952
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelTitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-text-wrap.title") }) }) }),
1953
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSubtitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-text-wrap.wrappingStyle") }) }) }),
1954
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelRow), children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn), children: /* @__PURE__ */ g.jsxs(Un, { value: O, onChange: I, direction: "vertical", children: [
1955
+ /* @__PURE__ */ g.jsx(xe, { value: me.INLINE, children: n.t("image-text-wrap.inline") }),
1956
+ /* @__PURE__ */ g.jsx(xe, { value: me.WRAP_SQUARE, children: n.t("image-text-wrap.square") }),
1957
+ /* @__PURE__ */ g.jsx(xe, { value: me.WRAP_TOP_AND_BOTTOM, children: n.t("image-text-wrap.topAndBottom") }),
1958
+ /* @__PURE__ */ g.jsx(xe, { value: me.BEHIND_TEXT, children: n.t("image-text-wrap.behindText") }),
1959
+ /* @__PURE__ */ g.jsx(xe, { value: me.IN_FRONT_OF_TEXT, children: n.t("image-text-wrap.inFrontText") })
1986
1960
  ] }) }) }),
1987
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSubtitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-text-wrap.wrapText") }) }) }),
1988
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelRow), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn), children: /* @__PURE__ */ jsxRuntimeExports.jsxs(RadioGroup, { disabled: disableWrapText, value: wrapText, onChange: handleWrapTextChange, direction: "horizontal", children: [
1989
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: WrapTextType.BOTH_SIDES, children: localeService.t("image-text-wrap.bothSide") }),
1990
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: WrapTextType.LEFT, children: localeService.t("image-text-wrap.leftOnly") }),
1991
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio, { value: WrapTextType.RIGHT, children: localeService.t("image-text-wrap.rightOnly") })
1961
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSubtitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-text-wrap.wrapText") }) }) }),
1962
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelRow), children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn), children: /* @__PURE__ */ g.jsxs(Un, { disabled: m, value: x, onChange: j, direction: "horizontal", children: [
1963
+ /* @__PURE__ */ g.jsx(xe, { value: $e.BOTH_SIDES, children: n.t("image-text-wrap.bothSide") }),
1964
+ /* @__PURE__ */ g.jsx(xe, { value: $e.LEFT, children: n.t("image-text-wrap.leftOnly") }),
1965
+ /* @__PURE__ */ g.jsx(xe, { value: $e.RIGHT, children: n.t("image-text-wrap.rightOnly") })
1992
1966
  ] }) }) }),
1993
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSubtitle), children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: localeService.t("image-text-wrap.distanceFromText") }) }) }),
1994
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles.imageCommonPanelRow, children: [
1995
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
1996
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-text-wrap.top") }) }),
1997
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1998
- InputNumber,
1967
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSubtitle), children: /* @__PURE__ */ g.jsx("div", { children: n.t("image-text-wrap.distanceFromText") }) }) }),
1968
+ /* @__PURE__ */ g.jsxs("div", { className: f.imageCommonPanelRow, children: [
1969
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
1970
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-text-wrap.top") }) }),
1971
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
1972
+ Be,
1999
1973
  {
2000
- min: MIN_MARGIN,
2001
- max: MAX_MARGIN,
2002
- disabled: disableDistTB,
1974
+ min: Qe,
1975
+ max: en,
1976
+ disabled: h,
2003
1977
  precision: 1,
2004
- value: distToText.distT,
2005
- onChange: /* @__PURE__ */ __name((val) => {
2006
- handleDistToTextChange(val, "distT");
2007
- }, "onChange"),
2008
- className: styles.imageCommonPanelInput
1978
+ value: T.distT,
1979
+ onChange: (_) => {
1980
+ H(_, "distT");
1981
+ },
1982
+ className: f.imageCommonPanelInput
2009
1983
  }
2010
1984
  ) }) })
2011
1985
  ] }) }),
2012
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
2013
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-text-wrap.left") }) }),
2014
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
2015
- InputNumber,
1986
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
1987
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-text-wrap.left") }) }),
1988
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
1989
+ Be,
2016
1990
  {
2017
- min: MIN_MARGIN,
2018
- max: MAX_MARGIN,
2019
- disabled: disableDistLR,
1991
+ min: Qe,
1992
+ max: en,
1993
+ disabled: w,
2020
1994
  precision: 1,
2021
- value: distToText.distL,
2022
- onChange: /* @__PURE__ */ __name((val) => {
2023
- handleDistToTextChange(val, "distL");
2024
- }, "onChange"),
2025
- className: styles.imageCommonPanelInput
1995
+ value: T.distL,
1996
+ onChange: (_) => {
1997
+ H(_, "distL");
1998
+ },
1999
+ className: f.imageCommonPanelInput
2026
2000
  }
2027
2001
  ) }) })
2028
2002
  ] }) })
2029
2003
  ] }),
2030
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles.imageCommonPanelRow, children: [
2031
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
2032
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-text-wrap.bottom") }) }),
2033
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
2034
- InputNumber,
2004
+ /* @__PURE__ */ g.jsxs("div", { className: f.imageCommonPanelRow, children: [
2005
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
2006
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-text-wrap.bottom") }) }),
2007
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
2008
+ Be,
2035
2009
  {
2036
- min: MIN_MARGIN,
2037
- max: MAX_MARGIN,
2038
- disabled: disableDistTB,
2010
+ min: Qe,
2011
+ max: en,
2012
+ disabled: h,
2039
2013
  precision: 1,
2040
- value: distToText.distB,
2041
- onChange: /* @__PURE__ */ __name((val) => {
2042
- handleDistToTextChange(val, "distB");
2043
- }, "onChange"),
2044
- className: styles.imageCommonPanelInput
2014
+ value: T.distB,
2015
+ onChange: (_) => {
2016
+ H(_, "distB");
2017
+ },
2018
+ className: f.imageCommonPanelInput
2045
2019
  }
2046
2020
  ) }) })
2047
2021
  ] }) }),
2048
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: clsx(styles.imageCommonPanelColumn, styles.imageCommonPanelSpan2), children: /* @__PURE__ */ jsxRuntimeExports.jsxs("label", { children: [
2049
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: localeService.t("image-text-wrap.right") }) }),
2050
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelRow, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: styles.imageCommonPanelColumn, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
2051
- InputNumber,
2022
+ /* @__PURE__ */ g.jsx("div", { className: V(f.imageCommonPanelColumn, f.imageCommonPanelSpan2), children: /* @__PURE__ */ g.jsxs("label", { children: [
2023
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: n.t("image-text-wrap.right") }) }),
2024
+ /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelRow, children: /* @__PURE__ */ g.jsx("div", { className: f.imageCommonPanelColumn, children: /* @__PURE__ */ g.jsx(
2025
+ Be,
2052
2026
  {
2053
- min: MIN_MARGIN,
2054
- max: MAX_MARGIN,
2055
- disabled: disableDistLR,
2027
+ min: Qe,
2028
+ max: en,
2029
+ disabled: w,
2056
2030
  precision: 1,
2057
- value: distToText.distR,
2058
- onChange: /* @__PURE__ */ __name((val) => {
2059
- handleDistToTextChange(val, "distR");
2060
- }, "onChange"),
2061
- className: styles.imageCommonPanelInput
2031
+ value: T.distR,
2032
+ onChange: (_) => {
2033
+ H(_, "distR");
2034
+ },
2035
+ className: f.imageCommonPanelInput
2062
2036
  }
2063
2037
  ) }) })
2064
2038
  ] }) })
2065
2039
  ] })
2066
2040
  ] });
2067
- }, "DocDrawingTextWrap"), DocDrawingPanel = /* @__PURE__ */ __name(() => {
2068
- const drawingManagerService = useDependency(IDrawingManagerService), focusDrawings = drawingManagerService.getFocusDrawings(), [drawings, setDrawings] = useState(focusDrawings);
2069
- return useEffect(() => {
2070
- const focusDispose = drawingManagerService.focus$.subscribe((drawings2) => {
2071
- setDrawings(drawings2);
2041
+ }, fr = () => {
2042
+ const i = pe(ve), e = i.getFocusDrawings(), [n, t] = ie(e);
2043
+ return Sn(() => {
2044
+ const r = i.focus$.subscribe((o) => {
2045
+ t(o);
2072
2046
  });
2073
2047
  return () => {
2074
- focusDispose.unsubscribe();
2048
+ r.unsubscribe();
2075
2049
  };
2076
- }, []), !!(drawings != null && drawings.length) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: styles.imageCommonPanel, children: [
2077
- /* @__PURE__ */ jsxRuntimeExports.jsx(DrawingCommonPanel, { drawings, hasAlign: !1, hasCropper: !1, hasGroup: !1, hasTransform: !1 }),
2078
- /* @__PURE__ */ jsxRuntimeExports.jsx(DocDrawingTextWrap, { drawings }),
2079
- /* @__PURE__ */ jsxRuntimeExports.jsx(DocDrawingPosition, { drawings })
2050
+ }, []), !!(n != null && n.length) && /* @__PURE__ */ g.jsxs("div", { className: f.imageCommonPanel, children: [
2051
+ /* @__PURE__ */ g.jsx(Zt, { drawings: n, hasAlign: !1, hasCropper: !1, hasGroup: !1, hasTransform: !1 }),
2052
+ /* @__PURE__ */ g.jsx(ur, { drawings: n }),
2053
+ /* @__PURE__ */ g.jsx(mr, { drawings: n })
2080
2054
  ] });
2081
- }, "DocDrawingPanel"), ImageUploadIcon = "addition-and-subtraction-single", DOCS_IMAGE_MENU_ID = "doc.menu.image", IMAGE_MENU_UPLOAD_FLOAT_ID = InsertDocImageCommand.id, getDisableWhenSelectionInTableObservable = /* @__PURE__ */ __name((accessor) => {
2082
- const docSelectionManagerService = accessor.get(DocSelectionManagerService), univerInstanceService = accessor.get(IUniverInstanceService);
2083
- return new Observable((subscriber) => {
2084
- const observable = docSelectionManagerService.textSelection$.subscribe(() => {
2085
- var _a8;
2086
- const activeRange = docSelectionManagerService.getActiveTextRange();
2087
- if (activeRange) {
2088
- const { segmentId, startOffset, endOffset } = activeRange, docDataModel = univerInstanceService.getCurrentUniverDocInstance(), tables = (_a8 = docDataModel == null ? void 0 : docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody()) == null ? void 0 : _a8.tables;
2089
- if (tables && tables.length && tables.some((table) => {
2090
- const { startIndex, endIndex } = table;
2091
- return startOffset >= startIndex && startOffset < endIndex || endOffset >= startIndex && endOffset < endIndex;
2055
+ }, vt = "addition-and-subtraction-single", It = "doc.menu.image", _t = ut.id, hr = (i) => {
2056
+ const e = i.get(_n), n = i.get(J);
2057
+ return new xi((t) => {
2058
+ const r = e.textSelection$.subscribe(() => {
2059
+ var s;
2060
+ const o = e.getActiveTextRange();
2061
+ if (o) {
2062
+ const { segmentId: a, startOffset: d, endOffset: c } = o, l = n.getCurrentUniverDocInstance(), u = (s = l == null ? void 0 : l.getSelfOrHeaderFooterModel(a).getBody()) == null ? void 0 : s.tables;
2063
+ if (u && u.length && u.some((m) => {
2064
+ const { startIndex: p, endIndex: h } = m;
2065
+ return d >= p && d < h || c >= p && c < h;
2092
2066
  })) {
2093
- subscriber.next(!0);
2067
+ t.next(!0);
2094
2068
  return;
2095
2069
  }
2096
2070
  } else {
2097
- subscriber.next(!0);
2071
+ t.next(!0);
2098
2072
  return;
2099
2073
  }
2100
- subscriber.next(!1);
2074
+ t.next(!1);
2101
2075
  });
2102
- return () => observable.unsubscribe();
2076
+ return () => r.unsubscribe();
2103
2077
  });
2104
- }, "getDisableWhenSelectionInTableObservable");
2105
- function ImageMenuFactory(accessor) {
2078
+ };
2079
+ function pr(i) {
2106
2080
  return {
2107
- id: DOCS_IMAGE_MENU_ID,
2108
- type: MenuItemType.SUBITEMS,
2109
- icon: ImageUploadIcon,
2081
+ id: It,
2082
+ type: Xn.SUBITEMS,
2083
+ icon: vt,
2110
2084
  tooltip: "docImage.title",
2111
- disabled$: getDisableWhenSelectionInTableObservable(accessor),
2112
- hidden$: getMenuHiddenObservable(accessor, UniverInstanceType.UNIVER_DOC)
2085
+ disabled$: hr(i),
2086
+ hidden$: Kn(i, Te.UNIVER_DOC)
2113
2087
  };
2114
2088
  }
2115
- __name(ImageMenuFactory, "ImageMenuFactory");
2116
- function UploadFloatImageMenuFactory(_accessor) {
2089
+ function wr(i) {
2117
2090
  return {
2118
- id: IMAGE_MENU_UPLOAD_FLOAT_ID,
2091
+ id: _t,
2119
2092
  title: "docImage.upload.float",
2120
- type: MenuItemType.BUTTON,
2121
- hidden$: getMenuHiddenObservable(_accessor, UniverInstanceType.UNIVER_DOC)
2093
+ type: Xn.BUTTON,
2094
+ hidden$: Kn(i, Te.UNIVER_DOC)
2122
2095
  };
2123
2096
  }
2124
- __name(UploadFloatImageMenuFactory, "UploadFloatImageMenuFactory");
2125
- const menuSchema = {
2126
- [RibbonStartGroup.LAYOUT]: {
2127
- [DOCS_IMAGE_MENU_ID]: {
2097
+ const vr = {
2098
+ [gi.LAYOUT]: {
2099
+ [It]: {
2128
2100
  order: 0,
2129
- menuItemFactory: ImageMenuFactory,
2130
- [IMAGE_MENU_UPLOAD_FLOAT_ID]: {
2101
+ menuItemFactory: pr,
2102
+ [_t]: {
2131
2103
  order: 0,
2132
- menuItemFactory: UploadFloatImageMenuFactory
2104
+ menuItemFactory: wr
2133
2105
  }
2134
2106
  }
2135
2107
  }
2136
2108
  };
2137
- function whenDocDrawingFocused(contextService) {
2138
- return contextService.getContextValue(FOCUSING_UNIVER_EDITOR) && contextService.getContextValue(FOCUSING_COMMON_DRAWINGS);
2109
+ function Ye(i) {
2110
+ return i.getContextValue(At) && i.getContextValue(tn);
2139
2111
  }
2140
- __name(whenDocDrawingFocused, "whenDocDrawingFocused");
2141
- const MoveDrawingDownShortcutItem = {
2142
- id: MoveDocDrawingsCommand.id,
2112
+ const Ir = {
2113
+ id: Ke.id,
2143
2114
  description: "shortcut.doc.drawing-move-down",
2144
2115
  group: "4_doc-drawing-view",
2145
- binding: KeyCode.ARROW_DOWN,
2116
+ binding: Fe.ARROW_DOWN,
2146
2117
  priority: 100,
2147
- preconditions: whenDocDrawingFocused,
2118
+ preconditions: Ye,
2148
2119
  staticParameters: {
2149
- direction: Direction.DOWN
2120
+ direction: ue.DOWN
2150
2121
  }
2151
- }, MoveDrawingUpShortcutItem = {
2152
- id: MoveDocDrawingsCommand.id,
2122
+ }, _r = {
2123
+ id: Ke.id,
2153
2124
  description: "shortcut.doc.drawing-move-up",
2154
2125
  group: "4_doc-drawing-view",
2155
- binding: KeyCode.ARROW_UP,
2126
+ binding: Fe.ARROW_UP,
2156
2127
  priority: 100,
2157
- preconditions: whenDocDrawingFocused,
2128
+ preconditions: Ye,
2158
2129
  staticParameters: {
2159
- direction: Direction.UP
2130
+ direction: ue.UP
2160
2131
  }
2161
- }, MoveDrawingLeftShortcutItem = {
2162
- id: MoveDocDrawingsCommand.id,
2132
+ }, Sr = {
2133
+ id: Ke.id,
2163
2134
  description: "shortcut.doc.drawing-move-left",
2164
2135
  group: "4_doc-drawing-view",
2165
- binding: KeyCode.ARROW_LEFT,
2136
+ binding: Fe.ARROW_LEFT,
2166
2137
  priority: 100,
2167
- preconditions: whenDocDrawingFocused,
2138
+ preconditions: Ye,
2168
2139
  staticParameters: {
2169
- direction: Direction.LEFT
2140
+ direction: ue.LEFT
2170
2141
  }
2171
- }, MoveDrawingRightShortcutItem = {
2172
- id: MoveDocDrawingsCommand.id,
2142
+ }, Cr = {
2143
+ id: Ke.id,
2173
2144
  description: "shortcut.doc.drawing-move-right",
2174
2145
  group: "4_doc-drawing-view",
2175
- binding: KeyCode.ARROW_RIGHT,
2146
+ binding: Fe.ARROW_RIGHT,
2176
2147
  priority: 100,
2177
- preconditions: whenDocDrawingFocused,
2148
+ preconditions: Ye,
2178
2149
  staticParameters: {
2179
- direction: Direction.RIGHT
2150
+ direction: ue.RIGHT
2180
2151
  }
2181
- }, DeleteDrawingsShortcutItem = {
2182
- id: DeleteDocDrawingsCommand.id,
2152
+ }, Dr = {
2153
+ id: ct.id,
2183
2154
  description: "shortcut.doc.drawing-delete",
2184
2155
  group: "4_doc-drawing-view",
2185
2156
  // when focusing on any other input tag do not trigger this shortcut
2186
- preconditions: whenDocDrawingFocused,
2187
- binding: KeyCode.DELETE,
2188
- mac: KeyCode.BACKSPACE
2157
+ preconditions: Ye,
2158
+ binding: Fe.DELETE,
2159
+ mac: Fe.BACKSPACE
2189
2160
  };
2190
- var __defProp$3 = Object.defineProperty, __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor, __decorateClass$3 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2191
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2192
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
2193
- return kind && result && __defProp$3(target, key, result), result;
2194
- }, "__decorateClass$3"), __decorateParam$3 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$3"), _a4;
2195
- let DocDrawingUIController = (_a4 = class extends Disposable {
2196
- constructor(_componentManager, _menuManagerService, _commandService, _shortcutService) {
2197
- super(), this._componentManager = _componentManager, this._menuManagerService = _menuManagerService, this._commandService = _commandService, this._shortcutService = _shortcutService, this._init();
2161
+ var Or = Object.defineProperty, xr = Object.getOwnPropertyDescriptor, Pr = (i, e, n, t) => {
2162
+ for (var r = t > 1 ? void 0 : t ? xr(e, n) : e, o = i.length - 1, s; o >= 0; o--)
2163
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
2164
+ return t && r && Or(e, n, r), r;
2165
+ }, nn = (i, e) => (n, t) => e(n, t, i);
2166
+ let an = class extends Xe {
2167
+ constructor(i, e, n, t) {
2168
+ super(), this._componentManager = i, this._menuManagerService = e, this._commandService = n, this._shortcutService = t, this._init();
2198
2169
  }
2199
2170
  _initCustomComponents() {
2200
- const componentManager = this._componentManager;
2201
- this.disposeWithMe(componentManager.register(ImageUploadIcon, AddImageSingle)), this.disposeWithMe(componentManager.register(COMPONENT_DOC_DRAWING_PANEL, DocDrawingPanel));
2171
+ const i = this._componentManager;
2172
+ this.disposeWithMe(i.register(vt, at)), this.disposeWithMe(i.register(ft, fr));
2202
2173
  }
2203
2174
  _initMenus() {
2204
- this._menuManagerService.mergeMenu(menuSchema);
2175
+ this._menuManagerService.mergeMenu(vr);
2205
2176
  }
2206
2177
  _initCommands() {
2207
2178
  [
2208
- InsertDocImageCommand,
2209
- InsertDocDrawingCommand,
2210
- UpdateDocDrawingWrappingStyleCommand,
2211
- UpdateDocDrawingDistanceCommand,
2212
- UpdateDocDrawingWrapTextCommand,
2213
- UpdateDrawingDocTransformCommand,
2214
- IMoveInlineDrawingCommand,
2215
- ITransformNonInlineDrawingCommand,
2216
- RemoveDocDrawingCommand,
2217
- SidebarDocDrawingOperation,
2218
- ClearDocDrawingTransformerOperation,
2219
- EditDocDrawingOperation,
2220
- GroupDocDrawingCommand,
2221
- UngroupDocDrawingCommand,
2222
- MoveDocDrawingsCommand,
2223
- DeleteDocDrawingsCommand,
2224
- SetDocDrawingArrangeCommand
2225
- ].forEach((command) => this.disposeWithMe(this._commandService.registerCommand(command)));
2179
+ ut,
2180
+ lt,
2181
+ et,
2182
+ nt,
2183
+ tt,
2184
+ qe,
2185
+ it,
2186
+ rt,
2187
+ Cn,
2188
+ ht,
2189
+ Xi,
2190
+ pt,
2191
+ dt,
2192
+ mt,
2193
+ Ke,
2194
+ ct,
2195
+ gt
2196
+ ].forEach((i) => this.disposeWithMe(this._commandService.registerCommand(i)));
2226
2197
  }
2227
2198
  _initShortcuts() {
2228
2199
  [
2229
2200
  // sheet drawing shortcuts
2230
- MoveDrawingDownShortcutItem,
2231
- MoveDrawingUpShortcutItem,
2232
- MoveDrawingLeftShortcutItem,
2233
- MoveDrawingRightShortcutItem,
2234
- DeleteDrawingsShortcutItem
2235
- ].forEach((item) => {
2236
- this.disposeWithMe(this._shortcutService.registerShortcut(item));
2201
+ Ir,
2202
+ _r,
2203
+ Sr,
2204
+ Cr,
2205
+ Dr
2206
+ ].forEach((i) => {
2207
+ this.disposeWithMe(this._shortcutService.registerShortcut(i));
2237
2208
  });
2238
2209
  }
2239
2210
  _init() {
2240
2211
  this._initCommands(), this._initCustomComponents(), this._initMenus(), this._initShortcuts();
2241
2212
  }
2242
- }, __name(_a4, "DocDrawingUIController"), _a4);
2243
- DocDrawingUIController = __decorateClass$3([
2244
- __decorateParam$3(0, Inject(ComponentManager)),
2245
- __decorateParam$3(1, IMenuManagerService),
2246
- __decorateParam$3(2, ICommandService),
2247
- __decorateParam$3(3, IShortcutService)
2248
- ], DocDrawingUIController);
2249
- var __defProp$2 = Object.defineProperty, __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor, __decorateClass$2 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2250
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2251
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
2252
- return kind && result && __defProp$2(target, key, result), result;
2253
- }, "__decorateClass$2"), __decorateParam$2 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$2"), _a5;
2254
- let DocDrawingPopupMenuController = (_a5 = class extends RxDisposable {
2255
- constructor(_drawingManagerService, _canvasPopManagerService, _renderManagerService, _univerInstanceService, _contextService) {
2213
+ };
2214
+ an = Pr([
2215
+ nn(0, we(mi)),
2216
+ nn(1, ui),
2217
+ nn(2, z),
2218
+ nn(3, fi)
2219
+ ], an);
2220
+ var Tr = Object.defineProperty, yr = Object.getOwnPropertyDescriptor, br = (i, e, n, t) => {
2221
+ for (var r = t > 1 ? void 0 : t ? yr(e, n) : e, o = i.length - 1, s; o >= 0; o--)
2222
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
2223
+ return t && r && Tr(e, n, r), r;
2224
+ }, Ve = (i, e) => (n, t) => e(n, t, i);
2225
+ let cn = class extends jt {
2226
+ constructor(e, n, t, r, o) {
2256
2227
  super();
2257
- __publicField(this, "_initImagePopupMenu", /* @__PURE__ */ new Set());
2258
- this._drawingManagerService = _drawingManagerService, this._canvasPopManagerService = _canvasPopManagerService, this._renderManagerService = _renderManagerService, this._univerInstanceService = _univerInstanceService, this._contextService = _contextService, this._init();
2228
+ Se(this, "_initImagePopupMenu", /* @__PURE__ */ new Set());
2229
+ this._drawingManagerService = e, this._canvasPopManagerService = n, this._renderManagerService = t, this._univerInstanceService = r, this._contextService = o, this._init();
2259
2230
  }
2260
2231
  _init() {
2261
- this._univerInstanceService.getCurrentTypeOfUnit$(UniverInstanceType.UNIVER_DOC).pipe(takeUntil(this.dispose$)).subscribe((documentDataModel) => this._create(documentDataModel)), this._univerInstanceService.getTypeOfUnitDisposed$(UniverInstanceType.UNIVER_DOC).pipe(takeUntil(this.dispose$)).subscribe((documentDataModel) => this._dispose(documentDataModel)), this._univerInstanceService.getAllUnitsForType(UniverInstanceType.UNIVER_DOC).forEach((documentDataModel) => this._create(documentDataModel));
2232
+ this._univerInstanceService.getCurrentTypeOfUnit$(Te.UNIVER_DOC).pipe(An(this.dispose$)).subscribe((e) => this._create(e)), this._univerInstanceService.getTypeOfUnitDisposed$(Te.UNIVER_DOC).pipe(An(this.dispose$)).subscribe((e) => this._dispose(e)), this._univerInstanceService.getAllUnitsForType(Te.UNIVER_DOC).forEach((e) => this._create(e));
2262
2233
  }
2263
- _dispose(documentDataModel) {
2264
- const unitId = documentDataModel.getUnitId();
2265
- this._renderManagerService.removeRender(unitId);
2234
+ _dispose(e) {
2235
+ const n = e.getUnitId();
2236
+ this._renderManagerService.removeRender(n);
2266
2237
  }
2267
- _create(documentDataModel) {
2268
- if (!documentDataModel)
2238
+ _create(e) {
2239
+ if (!e)
2269
2240
  return;
2270
- const unitId = documentDataModel.getUnitId();
2271
- this._renderManagerService.has(unitId) && !this._initImagePopupMenu.has(unitId) && (this._popupMenuListener(unitId), this._initImagePopupMenu.add(unitId));
2241
+ const n = e.getUnitId();
2242
+ this._renderManagerService.has(n) && !this._initImagePopupMenu.has(n) && (this._popupMenuListener(n), this._initImagePopupMenu.add(n));
2272
2243
  }
2273
- _hasCropObject(scene) {
2274
- const objects = scene.getAllObjects();
2275
- for (const object of objects)
2276
- if (object instanceof ImageCropperObject)
2244
+ _hasCropObject(e) {
2245
+ const n = e.getAllObjects();
2246
+ for (const t of n)
2247
+ if (t instanceof Qt)
2277
2248
  return !0;
2278
2249
  return !1;
2279
2250
  }
2280
2251
  // eslint-disable-next-line max-lines-per-function
2281
- _popupMenuListener(unitId) {
2282
- var _a8;
2283
- const scene = (_a8 = this._renderManagerService.getRenderById(unitId)) == null ? void 0 : _a8.scene;
2284
- if (!scene)
2252
+ _popupMenuListener(e) {
2253
+ var o;
2254
+ const n = (o = this._renderManagerService.getRenderById(e)) == null ? void 0 : o.scene;
2255
+ if (!n)
2285
2256
  return;
2286
- const transformer = scene.getTransformerByCreate();
2287
- if (!transformer)
2257
+ const t = n.getTransformerByCreate();
2258
+ if (!t)
2288
2259
  return;
2289
- const disposePopups = [];
2260
+ const r = [];
2290
2261
  this.disposeWithMe(
2291
- toDisposable(
2292
- transformer.createControl$.subscribe(() => {
2293
- if (this._hasCropObject(scene))
2262
+ Ae(
2263
+ t.createControl$.subscribe(() => {
2264
+ if (this._hasCropObject(n))
2294
2265
  return;
2295
- const selectedObjects = transformer.getSelectedObjectMap();
2296
- if (disposePopups.forEach((dispose) => dispose.dispose()), disposePopups.length = 0, selectedObjects.size > 1)
2266
+ const s = t.getSelectedObjectMap();
2267
+ if (r.forEach((w) => w.dispose()), r.length = 0, s.size > 1)
2297
2268
  return;
2298
- const object = selectedObjects.values().next().value;
2299
- if (!object)
2269
+ const a = s.values().next().value;
2270
+ if (!a)
2300
2271
  return;
2301
- const oKey = object.oKey, drawingParam = this._drawingManagerService.getDrawingOKey(oKey);
2302
- if (!drawingParam)
2272
+ const d = a.oKey, c = this._drawingManagerService.getDrawingOKey(d);
2273
+ if (!c)
2303
2274
  return;
2304
- const { unitId: unitId2, subUnitId, drawingId } = drawingParam, popup = this._canvasPopManagerService.attachPopupToObject(
2305
- object,
2275
+ const { unitId: l, subUnitId: u, drawingId: m } = c, p = this._canvasPopManagerService.attachPopupToObject(
2276
+ a,
2306
2277
  {
2307
- componentKey: COMPONENT_IMAGE_POPUP_MENU,
2278
+ componentKey: ei,
2308
2279
  direction: "horizontal",
2309
2280
  offset: [2, 0],
2310
2281
  extraProps: {
2311
- menuItems: this._getImageMenuItems(unitId2, subUnitId, drawingId)
2282
+ menuItems: this._getImageMenuItems(l, u, m)
2312
2283
  }
2313
2284
  },
2314
- unitId2
2285
+ l
2315
2286
  );
2316
- disposePopups.push(this.disposeWithMe(popup)), !this._drawingManagerService.getFocusDrawings().find((drawing) => drawing.unitId === unitId2 && drawing.subUnitId === subUnitId && drawing.drawingId === drawingId) && this._drawingManagerService.focusDrawing([{
2317
- unitId: unitId2,
2318
- subUnitId,
2319
- drawingId
2287
+ r.push(this.disposeWithMe(p)), !this._drawingManagerService.getFocusDrawings().find((w) => w.unitId === l && w.subUnitId === u && w.drawingId === m) && this._drawingManagerService.focusDrawing([{
2288
+ unitId: l,
2289
+ subUnitId: u,
2290
+ drawingId: m
2320
2291
  }]);
2321
2292
  })
2322
2293
  )
2323
2294
  ), this.disposeWithMe(
2324
- toDisposable(
2325
- transformer.clearControl$.subscribe(() => {
2326
- disposePopups.forEach((dispose) => dispose.dispose()), disposePopups.length = 0, this._contextService.setContextValue(FOCUSING_COMMON_DRAWINGS, !1), this._drawingManagerService.focusDrawing(null);
2295
+ Ae(
2296
+ t.clearControl$.subscribe(() => {
2297
+ r.forEach((s) => s.dispose()), r.length = 0, this._contextService.setContextValue(tn, !1), this._drawingManagerService.focusDrawing(null);
2327
2298
  })
2328
2299
  )
2329
2300
  ), this.disposeWithMe(
2330
- toDisposable(
2331
- transformer.changing$.subscribe(() => {
2332
- disposePopups.forEach((dispose) => dispose.dispose()), disposePopups.length = 0;
2301
+ Ae(
2302
+ t.changing$.subscribe(() => {
2303
+ r.forEach((s) => s.dispose()), r.length = 0;
2333
2304
  })
2334
2305
  )
2335
2306
  ), this.disposeWithMe(
2336
- toDisposable(
2337
- transformer.changeStart$.subscribe(() => {
2338
- disposePopups.forEach((dispose) => dispose.dispose()), disposePopups.length = 0;
2307
+ Ae(
2308
+ t.changeStart$.subscribe(() => {
2309
+ r.forEach((s) => s.dispose()), r.length = 0;
2339
2310
  })
2340
2311
  )
2341
2312
  );
2342
2313
  }
2343
- _getImageMenuItems(unitId, subUnitId, drawingId) {
2314
+ _getImageMenuItems(e, n, t) {
2344
2315
  return [
2345
2316
  {
2346
2317
  label: "image-popup.edit",
2347
2318
  index: 0,
2348
- commandId: EditDocDrawingOperation.id,
2349
- commandParams: { unitId, subUnitId, drawingId },
2350
- disable: !!SHEET_EDITOR_UNITS.includes(unitId)
2319
+ commandId: pt.id,
2320
+ commandParams: { unitId: e, subUnitId: n, drawingId: t },
2321
+ disable: !!Lt.includes(e)
2351
2322
  },
2352
2323
  {
2353
2324
  label: "image-popup.delete",
2354
2325
  index: 1,
2355
- commandId: RemoveDocDrawingCommand.id,
2356
- commandParams: { unitId, drawings: [{ unitId, subUnitId, drawingId }] },
2326
+ commandId: Cn.id,
2327
+ commandParams: { unitId: e, drawings: [{ unitId: e, subUnitId: n, drawingId: t }] },
2357
2328
  disable: !1
2358
2329
  },
2359
2330
  {
2360
2331
  label: "image-popup.crop",
2361
2332
  index: 2,
2362
- commandId: OpenImageCropOperation.id,
2363
- commandParams: { unitId, subUnitId, drawingId },
2333
+ commandId: ni.id,
2334
+ commandParams: { unitId: e, subUnitId: n, drawingId: t },
2364
2335
  disable: !0
2365
2336
  // TODO: @JOCS, feature is not ready.
2366
2337
  },
2367
2338
  {
2368
2339
  label: "image-popup.reset",
2369
2340
  index: 3,
2370
- commandId: ImageResetSizeOperation.id,
2371
- commandParams: [{ unitId, subUnitId, drawingId }],
2341
+ commandId: ti.id,
2342
+ commandParams: [{ unitId: e, subUnitId: n, drawingId: t }],
2372
2343
  disable: !0
2373
2344
  // TODO: @JOCS, feature is not ready.
2374
2345
  }
2375
2346
  ];
2376
2347
  }
2377
- }, __name(_a5, "DocDrawingPopupMenuController"), _a5);
2378
- DocDrawingPopupMenuController = __decorateClass$2([
2379
- __decorateParam$2(0, IDrawingManagerService),
2380
- __decorateParam$2(1, Inject(DocCanvasPopManagerService)),
2381
- __decorateParam$2(2, IRenderManagerService),
2382
- __decorateParam$2(3, IUniverInstanceService),
2383
- __decorateParam$2(4, IContextService)
2384
- ], DocDrawingPopupMenuController);
2385
- var __defProp$1 = Object.defineProperty, __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor, __decorateClass$1 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2386
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2387
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
2388
- return kind && result && __defProp$1(target, key, result), result;
2389
- }, "__decorateClass$1"), __decorateParam$1 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$1"), _a6;
2390
- let DocDrawingTransformUpdateController = (_a6 = class extends Disposable {
2391
- constructor(_context, _docSkeletonManagerService, _commandService, _editorService, _drawingManagerService, _docRefreshDrawingsService, _univerInstanceService, _lifecycleService) {
2348
+ };
2349
+ cn = br([
2350
+ Ve(0, ve),
2351
+ Ve(1, we(Si)),
2352
+ Ve(2, Q),
2353
+ Ve(3, J),
2354
+ Ve(4, zn)
2355
+ ], cn);
2356
+ var Mr = Object.defineProperty, Rr = Object.getOwnPropertyDescriptor, Nr = (i, e, n, t) => {
2357
+ for (var r = t > 1 ? void 0 : t ? Rr(e, n) : e, o = i.length - 1, s; o >= 0; o--)
2358
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
2359
+ return t && r && Mr(e, n, r), r;
2360
+ }, Ee = (i, e) => (n, t) => e(n, t, i);
2361
+ let vn = class extends Xe {
2362
+ constructor(e, n, t, r, o, s, a, d) {
2392
2363
  super();
2393
- __publicField(this, "_liquid", new Liquid());
2394
- this._context = _context, this._docSkeletonManagerService = _docSkeletonManagerService, this._commandService = _commandService, this._editorService = _editorService, this._drawingManagerService = _drawingManagerService, this._docRefreshDrawingsService = _docRefreshDrawingsService, this._univerInstanceService = _univerInstanceService, this._lifecycleService = _lifecycleService, this._initialize(), this._commandExecutedListener();
2364
+ Se(this, "_liquid", new qn());
2365
+ this._context = e, this._docSkeletonManagerService = n, this._commandService = t, this._editorService = r, this._drawingManagerService = o, this._docRefreshDrawingsService = s, this._univerInstanceService = a, this._lifecycleService = d, this._initialize(), this._commandExecutedListener();
2395
2366
  }
2396
2367
  _initialize() {
2397
2368
  this._initialRenderRefresh(), this._drawingInitializeListener(), this._initResize();
2398
2369
  }
2399
2370
  _initialRenderRefresh() {
2400
- this._docSkeletonManagerService.currentSkeleton$.subscribe((documentSkeleton) => {
2401
- documentSkeleton != null && this._refreshDrawing(documentSkeleton);
2402
- }), this._docRefreshDrawingsService.refreshDrawings$.subscribe((skeleton) => {
2403
- skeleton != null && this._refreshDrawing(skeleton);
2371
+ this._docSkeletonManagerService.currentSkeleton$.subscribe((e) => {
2372
+ e != null && this._refreshDrawing(e);
2373
+ }), this._docRefreshDrawingsService.refreshDrawings$.subscribe((e) => {
2374
+ e != null && this._refreshDrawing(e);
2404
2375
  });
2405
2376
  }
2406
2377
  _commandExecutedListener() {
2407
- const updateCommandList = [RichTextEditingMutation.id, SetDocZoomRatioOperation.id];
2378
+ const e = [Z.id, Di.id];
2408
2379
  this.disposeWithMe(
2409
- this._commandService.onCommandExecuted((command) => {
2410
- if (updateCommandList.includes(command.id)) {
2411
- const params = command.params, { unitId: commandUnitId } = params, { unitId, mainComponent } = this._context;
2412
- if (commandUnitId !== unitId)
2380
+ this._commandService.onCommandExecuted((n) => {
2381
+ if (e.includes(n.id)) {
2382
+ const t = n.params, { unitId: r } = t, { unitId: o, mainComponent: s } = this._context;
2383
+ if (r !== o)
2413
2384
  return;
2414
- const skeleton = this._docSkeletonManagerService.getSkeleton();
2415
- if (skeleton == null)
2385
+ const a = this._docSkeletonManagerService.getSkeleton();
2386
+ if (a == null)
2416
2387
  return;
2417
- if (this._editorService.isEditor(unitId) && unitId !== DOCS_ZEN_EDITOR_UNIT_ID_KEY) {
2418
- mainComponent == null || mainComponent.makeDirty();
2388
+ if (this._editorService.isEditor(o) && o !== Ut) {
2389
+ s == null || s.makeDirty();
2419
2390
  return;
2420
2391
  }
2421
- this._refreshDrawing(skeleton);
2392
+ this._refreshDrawing(a);
2422
2393
  }
2423
2394
  })
2424
2395
  );
2425
2396
  }
2426
2397
  _initResize() {
2427
2398
  this.disposeWithMe(
2428
- fromEventSubject(this._context.engine.onTransformChange$).pipe(
2429
- filter((evt) => evt.type === TRANSFORM_CHANGE_OBSERVABLE_TYPE.resize),
2430
- debounceTime(16)
2399
+ Ft(this._context.engine.onTransformChange$).pipe(
2400
+ jn((e) => e.type === ai.resize),
2401
+ Yn(16)
2431
2402
  ).subscribe(() => {
2432
- var _a8;
2433
- const skeleton = this._docSkeletonManagerService.getSkeleton(), { scene } = this._context;
2434
- (_a8 = scene.getTransformer()) == null || _a8.refreshControls(), this._refreshDrawing(skeleton);
2403
+ var t;
2404
+ const e = this._docSkeletonManagerService.getSkeleton(), { scene: n } = this._context;
2405
+ (t = n.getTransformer()) == null || t.refreshControls(), this._refreshDrawing(e);
2435
2406
  })
2436
2407
  );
2437
2408
  }
2438
- _refreshDrawing(skeleton) {
2439
- var _a8, _b;
2440
- const skeletonData = skeleton == null ? void 0 : skeleton.getSkeletonData(), { mainComponent, unitId } = this._context, documentComponent = mainComponent;
2441
- if (!skeletonData)
2409
+ _refreshDrawing(e) {
2410
+ var O, D;
2411
+ const n = e == null ? void 0 : e.getSkeletonData(), { mainComponent: t, unitId: r } = this._context, o = t;
2412
+ if (!n)
2442
2413
  return;
2443
- const { left: docsLeft, top: docsTop, pageLayoutType, pageMarginLeft, pageMarginTop } = documentComponent, { pages, skeHeaders, skeFooters } = skeletonData, updateDrawingMap = {};
2414
+ const { left: s, top: a, pageLayoutType: d, pageMarginLeft: c, pageMarginTop: l } = o, { pages: u, skeHeaders: m, skeFooters: p } = n, h = {};
2444
2415
  this._liquid.reset();
2445
- for (let i = 0, len = pages.length; i < len; i++) {
2446
- const page = pages[i], { headerId, footerId, pageWidth } = page;
2447
- if (headerId) {
2448
- const headerPage = (_a8 = skeHeaders.get(headerId)) == null ? void 0 : _a8.get(pageWidth);
2449
- headerPage && this._calculateDrawingPosition(
2450
- unitId,
2451
- headerPage,
2452
- docsLeft,
2453
- docsTop,
2454
- updateDrawingMap,
2455
- headerPage.marginTop,
2456
- page.marginLeft
2416
+ for (let x = 0, b = u.length; x < b; x++) {
2417
+ const T = u[x], { headerId: N, footerId: B, pageWidth: R } = T;
2418
+ if (N) {
2419
+ const I = (O = m.get(N)) == null ? void 0 : O.get(R);
2420
+ I && this._calculateDrawingPosition(
2421
+ r,
2422
+ I,
2423
+ s,
2424
+ a,
2425
+ h,
2426
+ I.marginTop,
2427
+ T.marginLeft
2457
2428
  );
2458
2429
  }
2459
- if (footerId) {
2460
- const footerPage = (_b = skeFooters.get(footerId)) == null ? void 0 : _b.get(pageWidth);
2461
- footerPage && this._calculateDrawingPosition(
2462
- unitId,
2463
- footerPage,
2464
- docsLeft,
2465
- docsTop,
2466
- updateDrawingMap,
2467
- page.pageHeight - page.marginBottom + footerPage.marginTop,
2468
- page.marginLeft
2430
+ if (B) {
2431
+ const I = (D = p.get(B)) == null ? void 0 : D.get(R);
2432
+ I && this._calculateDrawingPosition(
2433
+ r,
2434
+ I,
2435
+ s,
2436
+ a,
2437
+ h,
2438
+ T.pageHeight - T.marginBottom + I.marginTop,
2439
+ T.marginLeft
2469
2440
  );
2470
2441
  }
2471
- this._calculateDrawingPosition(unitId, page, docsLeft, docsTop, updateDrawingMap, page.marginTop, page.marginLeft), this._liquid.translatePage(page, pageLayoutType, pageMarginLeft, pageMarginTop);
2442
+ this._calculateDrawingPosition(r, T, s, a, h, T.marginTop, T.marginLeft), this._liquid.translatePage(T, d, c, l);
2472
2443
  }
2473
- const updateDrawings = Object.values(updateDrawingMap), nonMultiDrawings = updateDrawings.filter((drawing) => !drawing.isMultiTransform), multiDrawings = updateDrawings.filter((drawing) => drawing.isMultiTransform);
2474
- nonMultiDrawings.length > 0 && this._drawingManagerService.refreshTransform(nonMultiDrawings), this._handleMultiDrawingsTransform(multiDrawings);
2475
- }
2476
- _handleMultiDrawingsTransform(multiDrawings) {
2477
- const { scene, unitId } = this._context, transformer = scene.getTransformerByCreate();
2478
- multiDrawings.forEach((updateParam) => {
2479
- const param = this._drawingManagerService.getDrawingByParam(updateParam);
2480
- param != null && (param.transform = updateParam.transform, param.transforms = updateParam.transforms, param.isMultiTransform = updateParam.isMultiTransform);
2444
+ const v = Object.values(h), w = v.filter((x) => !x.isMultiTransform), S = v.filter((x) => x.isMultiTransform);
2445
+ w.length > 0 && this._drawingManagerService.refreshTransform(w), this._handleMultiDrawingsTransform(S);
2446
+ }
2447
+ _handleMultiDrawingsTransform(e) {
2448
+ const { scene: n, unitId: t } = this._context, r = n.getTransformerByCreate();
2449
+ e.forEach((d) => {
2450
+ const c = this._drawingManagerService.getDrawingByParam(d);
2451
+ c != null && (c.transform = d.transform, c.transforms = d.transforms, c.isMultiTransform = d.isMultiTransform);
2481
2452
  });
2482
- const selectedObjectKeys = [...transformer.getSelectedObjectMap().keys()], allMultiDrawings = Object.values(this._drawingManagerService.getDrawingData(unitId, unitId)).filter((drawing) => drawing.isMultiTransform === BooleanNumber.TRUE);
2483
- this._drawingManagerService.removeNotification(allMultiDrawings), multiDrawings.length > 0 && this._drawingManagerService.addNotification(multiDrawings);
2484
- for (const key of selectedObjectKeys) {
2485
- const drawingShape = scene.getObject(key);
2486
- drawingShape && transformer.setSelectedControl(drawingShape);
2453
+ const s = [...r.getSelectedObjectMap().keys()], a = Object.values(this._drawingManagerService.getDrawingData(t, t)).filter((d) => d.isMultiTransform === re.TRUE);
2454
+ this._drawingManagerService.removeNotification(a), e.length > 0 && this._drawingManagerService.addNotification(e);
2455
+ for (const d of s) {
2456
+ const c = n.getObject(d);
2457
+ c && r.setSelectedControl(c);
2487
2458
  }
2488
2459
  }
2489
- _calculateDrawingPosition(unitId, page, docsLeft, docsTop, updateDrawingMap, marginTop, marginLeft) {
2490
- const { skeDrawings } = page;
2460
+ _calculateDrawingPosition(e, n, t, r, o, s, a) {
2461
+ const { skeDrawings: d } = n;
2491
2462
  this._liquid.translatePagePadding({
2492
- marginTop,
2493
- marginLeft
2494
- }), skeDrawings.forEach((drawing) => {
2495
- const { aLeft, aTop, height, width, angle, drawingId, drawingOrigin } = drawing, behindText = drawingOrigin.layoutType === PositionedObjectLayoutType.WRAP_NONE && drawingOrigin.behindDoc === BooleanNumber.TRUE, { isMultiTransform = BooleanNumber.FALSE } = drawingOrigin, transform = {
2496
- left: aLeft + docsLeft + this._liquid.x,
2497
- top: aTop + docsTop + this._liquid.y,
2498
- width,
2499
- height,
2500
- angle
2463
+ marginTop: s,
2464
+ marginLeft: a
2465
+ }), d.forEach((c) => {
2466
+ const { aLeft: l, aTop: u, height: m, width: p, angle: h, drawingId: v, drawingOrigin: w } = c, S = w.layoutType === k.WRAP_NONE && w.behindDoc === re.TRUE, { isMultiTransform: O = re.FALSE } = w, D = {
2467
+ left: l + t + this._liquid.x,
2468
+ top: u + r + this._liquid.y,
2469
+ width: p,
2470
+ height: m,
2471
+ angle: h
2501
2472
  };
2502
- updateDrawingMap[drawingId] == null ? updateDrawingMap[drawingId] = {
2503
- unitId,
2504
- subUnitId: unitId,
2505
- drawingId,
2506
- behindText,
2507
- transform,
2508
- transforms: [transform],
2509
- isMultiTransform
2510
- } : isMultiTransform === BooleanNumber.TRUE && updateDrawingMap[drawingId].transforms.push(transform);
2473
+ o[v] == null ? o[v] = {
2474
+ unitId: e,
2475
+ subUnitId: e,
2476
+ drawingId: v,
2477
+ behindText: S,
2478
+ transform: D,
2479
+ transforms: [D],
2480
+ isMultiTransform: O
2481
+ } : O === re.TRUE && o[v].transforms.push(D);
2511
2482
  }), this._liquid.restorePagePadding({
2512
- marginTop,
2513
- marginLeft
2483
+ marginTop: s,
2484
+ marginLeft: a
2514
2485
  });
2515
2486
  }
2516
2487
  _drawingInitializeListener() {
2517
- const init = /* @__PURE__ */ __name(() => {
2518
- const skeleton = this._docSkeletonManagerService.getSkeleton();
2519
- skeleton != null && (this._refreshDrawing(skeleton), this._drawingManagerService.initializeNotification(this._context.unitId));
2520
- }, "init");
2521
- this._lifecycleService.stage === LifecycleStages.Steady ? setTimeout(() => {
2522
- init();
2523
- }, 1e3) : this._lifecycleService.lifecycle$.pipe(filter((stage) => stage === LifecycleStages.Steady)).subscribe(init);
2524
- }
2525
- }, __name(_a6, "DocDrawingTransformUpdateController"), _a6);
2526
- DocDrawingTransformUpdateController = __decorateClass$1([
2527
- __decorateParam$1(1, Inject(DocSkeletonManagerService)),
2528
- __decorateParam$1(2, ICommandService),
2529
- __decorateParam$1(3, IEditorService),
2530
- __decorateParam$1(4, IDrawingManagerService),
2531
- __decorateParam$1(5, Inject(DocRefreshDrawingsService)),
2532
- __decorateParam$1(6, IUniverInstanceService),
2533
- __decorateParam$1(7, Inject(LifecycleService))
2534
- ], DocDrawingTransformUpdateController);
2535
- var __defProp2 = Object.defineProperty, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __defNormalProp2 = /* @__PURE__ */ __name((obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value, "__defNormalProp"), __decorateClass = /* @__PURE__ */ __name((decorators, target, key, kind) => {
2536
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
2537
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
2538
- return kind && result && __defProp2(target, key, result), result;
2539
- }, "__decorateClass"), __decorateParam = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam"), __publicField2 = /* @__PURE__ */ __name((obj, key, value) => __defNormalProp2(obj, typeof key != "symbol" ? key + "" : key, value), "__publicField");
2540
- const PLUGIN_NAME = "DOC_DRAWING_UI_PLUGIN";
2541
- var _a7;
2542
- let UniverDocsDrawingUIPlugin = (_a7 = class extends Plugin {
2543
- constructor(_config = defaultPluginConfig, _injector, _renderManagerSrv, _configService) {
2544
- super(), this._config = _config, this._injector = _injector, this._renderManagerSrv = _renderManagerSrv, this._configService = _configService;
2545
- const { ...rest } = merge(
2488
+ const e = () => {
2489
+ const n = this._docSkeletonManagerService.getSkeleton();
2490
+ n != null && (this._refreshDrawing(n), this._drawingManagerService.initializeNotification(this._context.unitId));
2491
+ };
2492
+ this._lifecycleService.stage === Pn.Steady ? setTimeout(() => {
2493
+ e();
2494
+ }, 1e3) : this._lifecycleService.lifecycle$.pipe(jn((n) => n === Pn.Steady)).subscribe(e);
2495
+ }
2496
+ };
2497
+ vn = Nr([
2498
+ Ee(1, we(oe)),
2499
+ Ee(2, z),
2500
+ Ee(3, Ci),
2501
+ Ee(4, ve),
2502
+ Ee(5, we(gn)),
2503
+ Ee(6, J),
2504
+ Ee(7, we(Bt))
2505
+ ], vn);
2506
+ var St = Object.defineProperty, Er = Object.getOwnPropertyDescriptor, Ar = (i, e, n) => e in i ? St(i, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : i[e] = n, jr = (i, e, n, t) => {
2507
+ for (var r = t > 1 ? void 0 : t ? Er(e, n) : e, o = i.length - 1, s; o >= 0; o--)
2508
+ (s = i[o]) && (r = (t ? s(e, n, r) : s(r)) || r);
2509
+ return t && r && St(e, n, r), r;
2510
+ }, wn = (i, e) => (n, t) => e(n, t, i), Ct = (i, e, n) => Ar(i, typeof e != "symbol" ? e + "" : e, n);
2511
+ const Lr = "DOC_DRAWING_UI_PLUGIN";
2512
+ let dn = class extends Wt {
2513
+ constructor(i = Fn, e, n, t) {
2514
+ super(), this._config = i, this._injector = e, this._renderManagerSrv = n, this._configService = t;
2515
+ const { ...r } = Gt(
2546
2516
  {},
2547
- defaultPluginConfig,
2517
+ Fn,
2548
2518
  this._config
2549
2519
  );
2550
- this._configService.setConfig(DOCS_DRAWING_UI_PLUGIN_CONFIG_KEY, rest);
2520
+ this._configService.setConfig(bi, r);
2551
2521
  }
2552
2522
  onStarting() {
2553
2523
  [
2554
- [DocDrawingUIController],
2555
- [DocDrawingPopupMenuController],
2556
- [DocDrawingTransformerController],
2557
- [DocDrawingAddRemoveController],
2558
- [DocRefreshDrawingsService]
2559
- ].forEach((dependency) => this._injector.add(dependency));
2524
+ [an],
2525
+ [cn],
2526
+ [on],
2527
+ [rn],
2528
+ [gn]
2529
+ ].forEach((e) => this._injector.add(e));
2560
2530
  }
2561
2531
  onReady() {
2562
2532
  [
2563
- [DocDrawingUpdateRenderController],
2564
- [DocDrawingTransformUpdateController]
2565
- ].forEach((m) => this._renderManagerSrv.registerRenderModule(UniverInstanceType.UNIVER_DOC, m)), this._injector.get(DocDrawingAddRemoveController), this._injector.get(DocDrawingUIController), this._injector.get(DocDrawingTransformerController);
2533
+ [sn],
2534
+ [vn]
2535
+ ].forEach((i) => this._renderManagerSrv.registerRenderModule(Te.UNIVER_DOC, i)), this._injector.get(rn), this._injector.get(an), this._injector.get(on);
2566
2536
  }
2567
2537
  onRendered() {
2568
- this._injector.get(DocDrawingPopupMenuController);
2569
- }
2570
- }, __name(_a7, "UniverDocsDrawingUIPlugin"), _a7);
2571
- __publicField2(UniverDocsDrawingUIPlugin, "type", UniverInstanceType.UNIVER_DOC);
2572
- __publicField2(UniverDocsDrawingUIPlugin, "pluginName", PLUGIN_NAME);
2573
- UniverDocsDrawingUIPlugin = __decorateClass([
2574
- DependentOn(UniverDrawingUIPlugin, UniverDrawingPlugin, UniverDocsDrawingPlugin, UniverUIPlugin),
2575
- __decorateParam(1, Inject(Injector)),
2576
- __decorateParam(2, IRenderManagerService),
2577
- __decorateParam(3, IConfigService)
2578
- ], UniverDocsDrawingUIPlugin);
2538
+ this._injector.get(cn);
2539
+ }
2540
+ };
2541
+ Ct(dn, "type", Te.UNIVER_DOC);
2542
+ Ct(dn, "pluginName", Lr);
2543
+ dn = jr([
2544
+ kt(ii, Jt, $t, hi),
2545
+ wn(1, we(Ht)),
2546
+ wn(2, Q),
2547
+ wn(3, Vt)
2548
+ ], dn);
2579
2549
  export {
2580
- ClearDocDrawingTransformerOperation,
2581
- DOCS_IMAGE_MENU_ID,
2582
- DeleteDocDrawingsCommand,
2583
- EditDocDrawingOperation,
2584
- GroupDocDrawingCommand,
2585
- InsertDocDrawingCommand,
2586
- InsertDocImageCommand,
2587
- MoveDocDrawingsCommand,
2588
- RemoveDocDrawingCommand,
2589
- SetDocDrawingArrangeCommand,
2590
- SidebarDocDrawingOperation,
2591
- UngroupDocDrawingCommand,
2592
- UniverDocsDrawingUIPlugin
2550
+ Xi as ClearDocDrawingTransformerOperation,
2551
+ It as DOCS_IMAGE_MENU_ID,
2552
+ ct as DeleteDocDrawingsCommand,
2553
+ pt as EditDocDrawingOperation,
2554
+ dt as GroupDocDrawingCommand,
2555
+ lt as InsertDocDrawingCommand,
2556
+ ut as InsertDocImageCommand,
2557
+ Ke as MoveDocDrawingsCommand,
2558
+ Cn as RemoveDocDrawingCommand,
2559
+ gt as SetDocDrawingArrangeCommand,
2560
+ ht as SidebarDocDrawingOperation,
2561
+ mt as UngroupDocDrawingCommand,
2562
+ dn as UniverDocsDrawingUIPlugin
2593
2563
  };