@univerjs/docs-drawing 1.0.0-beta.0 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -284,6 +284,16 @@ function getArrangedDrawingOrder(drawingOrder, drawingIds, arrangeType) {
284
284
  }
285
285
  return arrangedDrawingOrder;
286
286
  }
287
+ function getDrawingOrderAtIndex(drawingOrder, drawingIds, zOrder) {
288
+ if (drawingIds.length !== 1) return [...drawingOrder];
289
+ const arrangedDrawingOrder = [...drawingOrder];
290
+ const currentIndex = arrangedDrawingOrder.indexOf(drawingIds[0]);
291
+ if (currentIndex < 0) return arrangedDrawingOrder;
292
+ const [drawingId] = arrangedDrawingOrder.splice(currentIndex, 1);
293
+ const targetIndex = (0, _univerjs_core.normalizeDrawingOrderIndex)(zOrder, drawingOrder.length);
294
+ arrangedDrawingOrder.splice(targetIndex, 0, drawingId);
295
+ return arrangedDrawingOrder;
296
+ }
287
297
  /**
288
298
  * Converts the target order into granular JSONX move operations. This avoids replacing
289
299
  * the entire drawingsOrder array and keeps collaboration conflicts scoped to moved items.
@@ -312,11 +322,11 @@ const SetDocDrawingArrangeCommand = {
312
322
  handler: (accessor, params) => {
313
323
  const commandService = accessor.get(_univerjs_core.ICommandService);
314
324
  if (params == null) return false;
315
- const { unitId, drawingIds, arrangeType } = params;
325
+ const { unitId, drawingIds } = params;
316
326
  const documentDataModel = accessor.get(_univerjs_core.IUniverInstanceService).getUnit(unitId, _univerjs_core.UniverInstanceType.UNIVER_DOC);
317
327
  const drawingOrder = documentDataModel === null || documentDataModel === void 0 ? void 0 : documentDataModel.getDrawingsOrder();
318
328
  if (!drawingOrder) return false;
319
- const actions = createDrawingOrderActions(drawingOrder, getArrangedDrawingOrder(drawingOrder, drawingIds, arrangeType));
329
+ const actions = createDrawingOrderActions(drawingOrder, params.zOrder !== void 0 ? getDrawingOrderAtIndex(drawingOrder, drawingIds, params.zOrder) : getArrangedDrawingOrder(drawingOrder, drawingIds, params.arrangeType));
320
330
  if (_univerjs_core.JSONX.isNoop(actions)) return false;
321
331
  const result = commandService.syncExecuteCommand(_univerjs_docs.RichTextEditingMutation.id, {
322
332
  unitId,
@@ -343,10 +353,15 @@ const UpdateDrawingDocTransformCommand = {
343
353
  const jsonX = _univerjs_core.JSONX.getInstance();
344
354
  const actions = [];
345
355
  for (const { drawingId, key, value } of drawings) {
346
- var _oldDrawings$drawingI;
347
- const oldValue = (_oldDrawings$drawingI = oldDrawings[drawingId]) === null || _oldDrawings$drawingI === void 0 || (_oldDrawings$drawingI = _oldDrawings$drawingI.docTransform) === null || _oldDrawings$drawingI === void 0 ? void 0 : _oldDrawings$drawingI[key];
356
+ var _oldDrawing$docTransf;
357
+ const oldDrawing = oldDrawings[drawingId];
358
+ const oldValue = key === "srcRect" ? oldDrawing === null || oldDrawing === void 0 ? void 0 : oldDrawing.srcRect : oldDrawing === null || oldDrawing === void 0 || (_oldDrawing$docTransf = oldDrawing.docTransform) === null || _oldDrawing$docTransf === void 0 ? void 0 : _oldDrawing$docTransf[key];
348
359
  if (!_univerjs_core.Tools.diffValue(oldValue, value)) {
349
- const path = [
360
+ const path = key === "srcRect" ? [
361
+ "drawings",
362
+ drawingId,
363
+ key
364
+ ] : [
350
365
  "drawings",
351
366
  drawingId,
352
367
  "docTransform",
@@ -615,7 +630,7 @@ DocDrawingController = __decorate([
615
630
  //#endregion
616
631
  //#region package.json
617
632
  var name = "@univerjs/docs-drawing";
618
- var version = "1.0.0-beta.0";
633
+ var version = "1.0.0-beta.2";
619
634
 
620
635
  //#endregion
621
636
  //#region src/config/config.ts
package/lib/es/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { ArrangeTypeEnum, BooleanNumber, BuildTextUtils, CommandType, DependentOn, Disposable, ICommandService, IConfigService, IResourceManagerService, IUndoRedoService, IUniverInstanceService, Inject, Injector, JSONX, MemoryCursor, Plugin, PositionedObjectLayoutType, TextX, TextXActionType, Tools, UniverInstanceType, createIdentifier, getRichTextEditPath, merge, toDisposable, touchDependencies } from "@univerjs/core";
1
+ import { ArrangeTypeEnum, BooleanNumber, BuildTextUtils, CommandType, DependentOn, Disposable, ICommandService, IConfigService, IResourceManagerService, IUndoRedoService, IUniverInstanceService, Inject, Injector, JSONX, MemoryCursor, Plugin, PositionedObjectLayoutType, TextX, TextXActionType, Tools, UniverInstanceType, createIdentifier, getRichTextEditPath, merge, normalizeDrawingOrderIndex, toDisposable, touchDependencies } from "@univerjs/core";
2
2
  import { DocSelectionManagerService, RichTextEditingMutation, UniverDocsPlugin, getContentInsertRange, normalizeTextRange } from "@univerjs/docs";
3
3
  import { IDrawingManagerService, UnitDrawingService, UniverDrawingPlugin } from "@univerjs/drawing";
4
4
 
@@ -283,6 +283,16 @@ function getArrangedDrawingOrder(drawingOrder, drawingIds, arrangeType) {
283
283
  }
284
284
  return arrangedDrawingOrder;
285
285
  }
286
+ function getDrawingOrderAtIndex(drawingOrder, drawingIds, zOrder) {
287
+ if (drawingIds.length !== 1) return [...drawingOrder];
288
+ const arrangedDrawingOrder = [...drawingOrder];
289
+ const currentIndex = arrangedDrawingOrder.indexOf(drawingIds[0]);
290
+ if (currentIndex < 0) return arrangedDrawingOrder;
291
+ const [drawingId] = arrangedDrawingOrder.splice(currentIndex, 1);
292
+ const targetIndex = normalizeDrawingOrderIndex(zOrder, drawingOrder.length);
293
+ arrangedDrawingOrder.splice(targetIndex, 0, drawingId);
294
+ return arrangedDrawingOrder;
295
+ }
286
296
  /**
287
297
  * Converts the target order into granular JSONX move operations. This avoids replacing
288
298
  * the entire drawingsOrder array and keeps collaboration conflicts scoped to moved items.
@@ -311,11 +321,11 @@ const SetDocDrawingArrangeCommand = {
311
321
  handler: (accessor, params) => {
312
322
  const commandService = accessor.get(ICommandService);
313
323
  if (params == null) return false;
314
- const { unitId, drawingIds, arrangeType } = params;
324
+ const { unitId, drawingIds } = params;
315
325
  const documentDataModel = accessor.get(IUniverInstanceService).getUnit(unitId, UniverInstanceType.UNIVER_DOC);
316
326
  const drawingOrder = documentDataModel === null || documentDataModel === void 0 ? void 0 : documentDataModel.getDrawingsOrder();
317
327
  if (!drawingOrder) return false;
318
- const actions = createDrawingOrderActions(drawingOrder, getArrangedDrawingOrder(drawingOrder, drawingIds, arrangeType));
328
+ const actions = createDrawingOrderActions(drawingOrder, params.zOrder !== void 0 ? getDrawingOrderAtIndex(drawingOrder, drawingIds, params.zOrder) : getArrangedDrawingOrder(drawingOrder, drawingIds, params.arrangeType));
319
329
  if (JSONX.isNoop(actions)) return false;
320
330
  const result = commandService.syncExecuteCommand(RichTextEditingMutation.id, {
321
331
  unitId,
@@ -342,10 +352,15 @@ const UpdateDrawingDocTransformCommand = {
342
352
  const jsonX = JSONX.getInstance();
343
353
  const actions = [];
344
354
  for (const { drawingId, key, value } of drawings) {
345
- var _oldDrawings$drawingI;
346
- const oldValue = (_oldDrawings$drawingI = oldDrawings[drawingId]) === null || _oldDrawings$drawingI === void 0 || (_oldDrawings$drawingI = _oldDrawings$drawingI.docTransform) === null || _oldDrawings$drawingI === void 0 ? void 0 : _oldDrawings$drawingI[key];
355
+ var _oldDrawing$docTransf;
356
+ const oldDrawing = oldDrawings[drawingId];
357
+ const oldValue = key === "srcRect" ? oldDrawing === null || oldDrawing === void 0 ? void 0 : oldDrawing.srcRect : oldDrawing === null || oldDrawing === void 0 || (_oldDrawing$docTransf = oldDrawing.docTransform) === null || _oldDrawing$docTransf === void 0 ? void 0 : _oldDrawing$docTransf[key];
347
358
  if (!Tools.diffValue(oldValue, value)) {
348
- const path = [
359
+ const path = key === "srcRect" ? [
360
+ "drawings",
361
+ drawingId,
362
+ key
363
+ ] : [
349
364
  "drawings",
350
365
  drawingId,
351
366
  "docTransform",
@@ -614,7 +629,7 @@ DocDrawingController = __decorate([
614
629
  //#endregion
615
630
  //#region package.json
616
631
  var name = "@univerjs/docs-drawing";
617
- var version = "1.0.0-beta.0";
632
+ var version = "1.0.0-beta.2";
618
633
 
619
634
  //#endregion
620
635
  //#region src/config/config.ts
package/lib/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { ArrangeTypeEnum, BooleanNumber, BuildTextUtils, CommandType, DependentOn, Disposable, ICommandService, IConfigService, IResourceManagerService, IUndoRedoService, IUniverInstanceService, Inject, Injector, JSONX, MemoryCursor, Plugin, PositionedObjectLayoutType, TextX, TextXActionType, Tools, UniverInstanceType, createIdentifier, getRichTextEditPath, merge, toDisposable, touchDependencies } from "@univerjs/core";
1
+ import { ArrangeTypeEnum, BooleanNumber, BuildTextUtils, CommandType, DependentOn, Disposable, ICommandService, IConfigService, IResourceManagerService, IUndoRedoService, IUniverInstanceService, Inject, Injector, JSONX, MemoryCursor, Plugin, PositionedObjectLayoutType, TextX, TextXActionType, Tools, UniverInstanceType, createIdentifier, getRichTextEditPath, merge, normalizeDrawingOrderIndex, toDisposable, touchDependencies } from "@univerjs/core";
2
2
  import { DocSelectionManagerService, RichTextEditingMutation, UniverDocsPlugin, getContentInsertRange, normalizeTextRange } from "@univerjs/docs";
3
3
  import { IDrawingManagerService, UnitDrawingService, UniverDrawingPlugin } from "@univerjs/drawing";
4
4
 
@@ -283,6 +283,16 @@ function getArrangedDrawingOrder(drawingOrder, drawingIds, arrangeType) {
283
283
  }
284
284
  return arrangedDrawingOrder;
285
285
  }
286
+ function getDrawingOrderAtIndex(drawingOrder, drawingIds, zOrder) {
287
+ if (drawingIds.length !== 1) return [...drawingOrder];
288
+ const arrangedDrawingOrder = [...drawingOrder];
289
+ const currentIndex = arrangedDrawingOrder.indexOf(drawingIds[0]);
290
+ if (currentIndex < 0) return arrangedDrawingOrder;
291
+ const [drawingId] = arrangedDrawingOrder.splice(currentIndex, 1);
292
+ const targetIndex = normalizeDrawingOrderIndex(zOrder, drawingOrder.length);
293
+ arrangedDrawingOrder.splice(targetIndex, 0, drawingId);
294
+ return arrangedDrawingOrder;
295
+ }
286
296
  /**
287
297
  * Converts the target order into granular JSONX move operations. This avoids replacing
288
298
  * the entire drawingsOrder array and keeps collaboration conflicts scoped to moved items.
@@ -311,11 +321,11 @@ const SetDocDrawingArrangeCommand = {
311
321
  handler: (accessor, params) => {
312
322
  const commandService = accessor.get(ICommandService);
313
323
  if (params == null) return false;
314
- const { unitId, drawingIds, arrangeType } = params;
324
+ const { unitId, drawingIds } = params;
315
325
  const documentDataModel = accessor.get(IUniverInstanceService).getUnit(unitId, UniverInstanceType.UNIVER_DOC);
316
326
  const drawingOrder = documentDataModel === null || documentDataModel === void 0 ? void 0 : documentDataModel.getDrawingsOrder();
317
327
  if (!drawingOrder) return false;
318
- const actions = createDrawingOrderActions(drawingOrder, getArrangedDrawingOrder(drawingOrder, drawingIds, arrangeType));
328
+ const actions = createDrawingOrderActions(drawingOrder, params.zOrder !== void 0 ? getDrawingOrderAtIndex(drawingOrder, drawingIds, params.zOrder) : getArrangedDrawingOrder(drawingOrder, drawingIds, params.arrangeType));
319
329
  if (JSONX.isNoop(actions)) return false;
320
330
  const result = commandService.syncExecuteCommand(RichTextEditingMutation.id, {
321
331
  unitId,
@@ -342,10 +352,15 @@ const UpdateDrawingDocTransformCommand = {
342
352
  const jsonX = JSONX.getInstance();
343
353
  const actions = [];
344
354
  for (const { drawingId, key, value } of drawings) {
345
- var _oldDrawings$drawingI;
346
- const oldValue = (_oldDrawings$drawingI = oldDrawings[drawingId]) === null || _oldDrawings$drawingI === void 0 || (_oldDrawings$drawingI = _oldDrawings$drawingI.docTransform) === null || _oldDrawings$drawingI === void 0 ? void 0 : _oldDrawings$drawingI[key];
355
+ var _oldDrawing$docTransf;
356
+ const oldDrawing = oldDrawings[drawingId];
357
+ const oldValue = key === "srcRect" ? oldDrawing === null || oldDrawing === void 0 ? void 0 : oldDrawing.srcRect : oldDrawing === null || oldDrawing === void 0 || (_oldDrawing$docTransf = oldDrawing.docTransform) === null || _oldDrawing$docTransf === void 0 ? void 0 : _oldDrawing$docTransf[key];
347
358
  if (!Tools.diffValue(oldValue, value)) {
348
- const path = [
359
+ const path = key === "srcRect" ? [
360
+ "drawings",
361
+ drawingId,
362
+ key
363
+ ] : [
349
364
  "drawings",
350
365
  drawingId,
351
366
  "docTransform",
@@ -614,7 +629,7 @@ DocDrawingController = __decorate([
614
629
  //#endregion
615
630
  //#region package.json
616
631
  var name = "@univerjs/docs-drawing";
617
- var version = "1.0.0-beta.0";
632
+ var version = "1.0.0-beta.2";
618
633
 
619
634
  //#endregion
620
635
  //#region src/config/config.ts
@@ -16,9 +16,13 @@
16
16
  import type { ICommand } from '@univerjs/core';
17
17
  import type { IDrawingOrderMapParam } from '@univerjs/drawing';
18
18
  import { ArrangeTypeEnum } from '@univerjs/core';
19
- export interface ISetDocDrawingArrangeCommandParams extends IDrawingOrderMapParam {
19
+ export type ISetDocDrawingArrangeCommandParams = IDrawingOrderMapParam & ({
20
20
  arrangeType: ArrangeTypeEnum;
21
- }
21
+ zOrder?: never;
22
+ } | {
23
+ arrangeType?: never;
24
+ zOrder: number;
25
+ });
22
26
  /**
23
27
  * The command to arrange drawings.
24
28
  */
@@ -13,11 +13,11 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { ICommand, IObjectPositionH, IObjectPositionV, ISize } from '@univerjs/core';
16
+ import type { ICommand, IObjectPositionH, IObjectPositionV, ISize, ISrcRect, Nullable } from '@univerjs/core';
17
17
  export interface IDrawingDocTransform {
18
18
  drawingId: string;
19
- key: 'size' | 'angle' | 'positionH' | 'positionV' | 'flipX' | 'flipY';
20
- value: ISize | number | boolean | IObjectPositionH | IObjectPositionV;
19
+ key: 'size' | 'angle' | 'positionH' | 'positionV' | 'flipX' | 'flipY' | 'srcRect';
20
+ value: ISize | number | boolean | IObjectPositionH | IObjectPositionV | Nullable<ISrcRect>;
21
21
  }
22
22
  export interface IUpdateDrawingDocTransformCommandParams {
23
23
  unitId: string;
package/lib/umd/index.js CHANGED
@@ -1 +1 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/drawing")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs`,`@univerjs/drawing`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverDocsDrawing={},e.UniverCore,e.UniverDocs,e.UniverDrawing))})(this,function(e,t,n,r){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let i={id:`doc.command.insert-doc-image`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,o,s;if(!r)return!1;let c=e.get(t.ICommandService),l=e.get(t.IUniverInstanceService),{unitId:u,drawings:d,textRange:f}=r,p=l.getUnit(u,t.UniverInstanceType.UNIVER_DOC);if(!p)return!1;let m=a(e,u,f);if(!m)return!1;let{segmentId:h=``}=m;if(!((i=p.getSelfOrHeaderFooterModel(h))!=null&&i.getBody()))return!1;let g=p.getSnapshot(),_=(o=g.headers)!=null&&o[h]||(s=g.footers)!=null&&s[h]?d.map(e=>({...e,isMultiTransform:t.BooleanNumber.TRUE,transforms:e.transforms??(e.transform?[e.transform]:null)})):d,v=t.BuildTextUtils.drawing.add({selection:m,documentDataModel:p,drawings:_});if(!v)return!1;let y={id:n.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:[]}};return y.params.actions=v,!!c.syncExecuteCommand(y.id,y.params)}};function a(e,t,r){let i=e.get(n.DocSelectionManagerService).getActiveTextRange(),a=(r?(0,n.normalizeTextRange)(r):null)??(0,n.getContentInsertRange)(e,t);return a?{...i,startOffset:a.startOffset,endOffset:a.endOffset,collapsed:a.startOffset===a.endOffset,segmentId:a.segmentId??(i==null?void 0:i.segmentId)??``}:i??null}function o(e){"@babel/helpers - typeof";return o=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},o(e)}function s(e,t){if(o(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(o(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function c(e){var t=s(e,`string`);return o(t)==`symbol`?t:t+``}function l(e,t,n){return(t=c(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let u=(0,t.createIdentifier)(`doc.drawing-adapter.service`);var d=class{constructor(){l(this,`_adapters`,[])}registerAdapter(e){return this._adapters.push(e),(0,t.toDisposable)(()=>{let t=this._adapters.indexOf(e);t>=0&&this._adapters.splice(t,1)})}getRemoveDrawingMutationInfos(e){let t={redoMutations:[],undoMutations:[]};for(let r of this._adapters){var n;let i=(n=r.getRemoveDrawingMutationInfos)==null?void 0:n.call(r,e);i&&(t.redoMutations.push(...i.redoMutations),t.undoMutations.push(...i.undoMutations))}return t}getEditDrawingCommandInfo(e){for(let n of this._adapters){var t;let r=(t=n.getEditDrawingCommandInfo)==null?void 0:t.call(n,e);if(r)return r}return null}};let f={id:`doc.command.remove-doc-image`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;if(!r)return!1;let a=e.get(t.ICommandService),o=e.get(t.IUndoRedoService),s=e.get(u),c=e.get(t.IUniverInstanceService),l=e.get(n.DocSelectionManagerService),{unitId:d,drawings:f,textRange:m}=r,h=c.getUnit(d,t.UniverInstanceType.UNIVER_DOC);if(!h||f.length===0)return!1;let g=l.getActiveTextRange(),_=(m?(0,n.normalizeTextRange)(m):null)??(0,n.getContentInsertRange)(e,d),v=(_==null?void 0:_.segmentId)??(g==null?void 0:g.segmentId)??``,y=new t.TextX,b=t.JSONX.getInstance(),x=((i=h.getSelfOrHeaderFooterModel(v))==null||(i=i.getBody())==null?void 0:i.customBlocks)??[],S=f.map(e=>x.find(t=>t.blockId===e.drawingId)).filter(e=>!!e).sort((e,t)=>e.startIndex>t.startIndex?1:-1);if(S.length===0)return!1;let C=h.getDrawings()??{},w=new Map(f.map(e=>[e.drawingId,e])),T=S.map(e=>C[e.blockId]).filter(e=>e!=null),E=[],D=[],O=[];for(let e of S){let{blockId:t}=e,n=C[t];if(n==null)continue;let r=w.get(t),i=s.getRemoveDrawingMutationInfos({unitId:d,subUnitId:(r==null?void 0:r.subUnitId)??d,drawing:n,removeDrawings:T});(i.redoMutations.length!==0||i.undoMutations.length!==0)&&(E.push(...i.redoMutations),D.push(...i.undoMutations),O.push(i))}if(!p(O,a))return!1;let k=`doc-drawing-remove-resource:${d}:${S.map(e=>e.blockId).join(`,`)}`,A=null;(E.length>0||D.length>0)&&(A=o.__tempBatchingUndoRedo(d),o.pushUndoRedo({unitID:d,redoMutations:E,undoMutations:D,id:k}));let j=new t.MemoryCursor,M=S[0].startIndex,N=[{startOffset:M,endOffset:M}],P={id:n.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:N}},F=[];for(let e of S){let{startIndex:n}=e;n>j.cursor&&y.push({t:t.TextXActionType.RETAIN,len:n-j.cursor}),y.push({t:t.TextXActionType.DELETE,len:1}),j.moveCursorTo(n+1)}F.push(b.editOp(y.serialize(),(0,t.getRichTextEditPath)(h,v)));for(let e of S){let{blockId:t}=e,n=h.getDrawingsOrder().indexOf(t);F.push(b.removeOp([`drawings`,t],C[t])),F.push(b.removeOp([`drawingsOrder`,n],t))}P.params.actions=F.reduce((e,n)=>t.JSONX.compose(e,n),null);let I=a.syncExecuteCommand(P.id,P.params);return!I&&A!=null?(A.dispose(),o.rollback(k,d),!1):(A==null||A.dispose(),!!I)}};function p(e,t){let n=[];for(let r of e){if(!h(r.redoMutations,t))return m([...n].reverse(),t),!1;n.push(r.undoMutations)}return!0}function m(e,t){e.forEach(e=>h(e,t))}function h(e,t){for(let n of e)if(!t.syncExecuteCommand(n.id,n.params))return!1;return!0}let g=`drawingsOrder`;function _(e,n,r){let i=new Set(n.filter(t=>e.includes(t))),a=[...e];if(i.size===0)return a;if(r===t.ArrangeTypeEnum.forward)for(let e=a.length-2;e>=0;e--)i.has(a[e])&&!i.has(a[e+1])&&([a[e],a[e+1]]=[a[e+1],a[e]]);else if(r===t.ArrangeTypeEnum.backward)for(let e=1;e<a.length;e++)i.has(a[e])&&!i.has(a[e-1])&&([a[e],a[e-1]]=[a[e-1],a[e]]);else if(r===t.ArrangeTypeEnum.front||r===t.ArrangeTypeEnum.back){let e=a.filter(e=>i.has(e)),n=a.filter(e=>!i.has(e));return r===t.ArrangeTypeEnum.front?[...n,...e]:[...e,...n]}return a}function v(e,n){let r=t.JSONX.getInstance(),i=[...e],a=[];for(let e=0;e<n.length;e++){let t=n[e],o=i.indexOf(t);if(o<0||o===e)continue;let s=r.moveOp([g,o],[g,e]);s&&a.push(s),i.splice(o,1),i.splice(e,0,t)}return a.reduce((e,n)=>t.JSONX.compose(e,n),null)}let y={id:`doc.command.set-drawing-arrange`,type:t.CommandType.COMMAND,handler:(e,r)=>{let i=e.get(t.ICommandService);if(r==null)return!1;let{unitId:a,drawingIds:o,arrangeType:s}=r,c=e.get(t.IUniverInstanceService).getUnit(a,t.UniverInstanceType.UNIVER_DOC),l=c==null?void 0:c.getDrawingsOrder();if(!l)return!1;let u=v(l,_(l,o,s));return!t.JSONX.isNoop(u)&&!!i.syncExecuteCommand(n.RichTextEditingMutation.id,{unitId:a,actions:u,textRanges:null})}},b={id:`doc.command.update-drawing-doc-transform`,type:t.CommandType.COMMAND,handler:(e,r)=>{if(!r)return!1;let i=e.get(t.ICommandService),a=e.get(t.IUniverInstanceService),{unitId:o,drawings:s}=r,c=a.getUnit(o,t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=c.getSnapshot().drawings??{},u=t.JSONX.getInstance(),d=[];for(let{drawingId:e,key:n,value:r}of s){var f;let i=(f=l[e])==null||(f=f.docTransform)==null?void 0:f[n];if(!t.Tools.diffValue(i,r)){let t=[`drawings`,e,`docTransform`,n];d.push(i===void 0?u.insertOp(t,r):u.replaceOp(t,i,r))}}return!!i.syncExecuteCommand(n.RichTextEditingMutation.id,{unitId:o,actions:d.reduce((e,n)=>t.JSONX.compose(e,n),null),textRanges:null,debounce:!0})}},x=function(e){return e.INLINE=`inline`,e.BEHIND_TEXT=`behindText`,e.IN_FRONT_OF_TEXT=`inFrontOfText`,e.WRAP_SQUARE=`wrapSquare`,e.WRAP_TOP_AND_BOTTOM=`wrapTopAndBottom`,e}({}),S={inline:t.PositionedObjectLayoutType.INLINE,wrapSquare:t.PositionedObjectLayoutType.WRAP_SQUARE,wrapTopAndBottom:t.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM,inFrontOfText:t.PositionedObjectLayoutType.WRAP_NONE,behindText:t.PositionedObjectLayoutType.WRAP_NONE},C={id:`doc.command.update-doc-drawing-wrapping-style`,type:t.CommandType.COMMAND,handler:(e,r)=>{if(!r)return!1;let{drawings:i,wrappingStyle:a,unitId:o}=r,s=e.get(t.ICommandService),c=e.get(t.IUniverInstanceService).getUnit(o,t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=c.getDrawings()??{},u=t.JSONX.getInstance(),d=[];for(let e of i){let n=l[e.drawingId];if(!n)continue;let r=S[a];if(n.layoutType!==r&&d.push(u.replaceOp([`drawings`,e.drawingId,`layoutType`],n.layoutType,r)),a===`behindText`||a===`inFrontOfText`){let r=a===`behindText`?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE;n.behindDoc!==r&&d.push(u.replaceOp([`drawings`,e.drawingId,`behindDoc`],n.behindDoc,r))}if(a!==`inline`)for(let r of[`positionH`,`positionV`]){var f;let i=(f=e.docTransform)==null?void 0:f[r],a=n.docTransform[r];i&&!t.Tools.diffValue(a,i)&&d.push(u.replaceOp([`drawings`,e.drawingId,`docTransform`,r],a,i))}}let p={id:n.RichTextEditingMutation.id,params:{unitId:o,actions:d.reduce((e,n)=>t.JSONX.compose(e,n),null),textRanges:null}};return!!s.syncExecuteCommand(p.id,p.params)}};var w=class extends r.UnitDrawingService{};let T=(0,t.createIdentifier)(`univer.doc.plugin.doc-drawing.service`);function E(e,t){return function(n,r){t(n,r,e)}}function D(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let O=`DOC_DRAWING_PLUGIN`;function k(e,t={}){return e.map((e,t)=>({drawingId:e,index:t})).sort((e,n)=>{let r=A(t[e.drawingId]);return r===A(t[n.drawingId])?e.index-n.index:r?-1:1}).map(({drawingId:e})=>e)}function A(e){return(e==null?void 0:e.layoutType)===t.PositionedObjectLayoutType.WRAP_NONE&&e.behindDoc===t.BooleanNumber.TRUE}let j=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._docDrawingService=e,this._drawingManagerService=t,this._resourceManagerService=n,this._univerInstanceService=r,this._commandService=i,this._init()}_init(){this._initSnapshot(),this._initCommands()}_initSnapshot(){let e=e=>{let n=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(n){let e=n.getSnapshot().drawings,t=n.getSnapshot().drawingsOrder;return JSON.stringify({data:e??{},order:t??[]})}return``},n=e=>{if(!e)return{data:{},order:[]};try{return JSON.parse(e)}catch{return{data:{},order:[]}}};this.disposeWithMe(this._resourceManagerService.registerPluginResource({pluginName:O,businesses:[t.UniverInstanceType.UNIVER_DOC],toJson:t=>e(t),parseJson:e=>n(e),onUnLoad:e=>{this._setDrawingDataForUnit(e,{data:{},order:[]})},onLoad:(e,t)=>{this._setDrawingDataForUnit(e,{data:t.data??{},order:t.order??[]})}}))}_setDrawingDataForUnit(e,t){let n=this._univerInstanceService.getUnit(e);n!=null&&(n.resetDrawing(t.data,t.order),this.loadDrawingDataForUnit(e))}loadDrawingDataForUnit(e){let n=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(!n)return!1;let r=e,i=n.getDrawings(),a=n.getDrawingsOrder();if(!i||!a)return!1;let o={[r]:{unitId:e,subUnitId:r,data:i,order:a}},s={[r]:{...o[r],order:k(a,i)}};return this._docDrawingService.registerDrawingData(e,o),this._drawingManagerService.registerDrawingData(e,s),!0}_initCommands(){[i,f,b,C,y].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}};j=D([E(0,T),E(1,r.IDrawingManagerService),E(2,t.IResourceManagerService),E(3,t.IUniverInstanceService),E(4,t.ICommandService)],j);var M=`@univerjs/docs-drawing`,N=`1.0.0-beta.0`;let P={},F=class extends t.Plugin{constructor(e=P,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{...i}=(0,t.merge)({},P,this._config);this._configService.setConfig(`docs-drawing.config`,i)}onStarting(){[[j],[d],[u,{useClass:d}],[w],[T,{useClass:w}]].forEach(e=>this._injector.add(e)),(0,t.touchDependencies)(this._injector,[[j]])}};l(F,`pluginName`,O),l(F,`packageName`,M),l(F,`version`,N),l(F,`type`,t.UniverInstanceType.UNIVER_DOC),F=D([(0,t.DependentOn)(n.UniverDocsPlugin,r.UniverDrawingPlugin),E(1,(0,t.Inject)(t.Injector)),E(2,t.IConfigService)],F),e.DOCS_DRAWING_PLUGIN=O,e.DocDrawingAdapterService=d,Object.defineProperty(e,"DocDrawingController",{enumerable:!0,get:function(){return j}}),e.DocDrawingService=w,e.IDocDrawingAdapterService=u,e.IDocDrawingService=T,e.InsertDocDrawingCommand=i,e.RemoveDocDrawingCommand=f,e.SetDocDrawingArrangeCommand=y,e.TextWrappingStyle=x,Object.defineProperty(e,"UniverDocsDrawingPlugin",{enumerable:!0,get:function(){return F}}),e.UpdateDocDrawingWrappingStyleCommand=C,e.UpdateDrawingDocTransformCommand=b,e.WRAPPING_STYLE_TO_LAYOUT_TYPE=S,e.getDocDrawingRenderOrder=k});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/drawing")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs`,`@univerjs/drawing`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverDocsDrawing={},e.UniverCore,e.UniverDocs,e.UniverDrawing))})(this,function(e,t,n,r){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let i={id:`doc.command.insert-doc-image`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i,o,s;if(!r)return!1;let c=e.get(t.ICommandService),l=e.get(t.IUniverInstanceService),{unitId:u,drawings:d,textRange:f}=r,p=l.getUnit(u,t.UniverInstanceType.UNIVER_DOC);if(!p)return!1;let m=a(e,u,f);if(!m)return!1;let{segmentId:h=``}=m;if(!((i=p.getSelfOrHeaderFooterModel(h))!=null&&i.getBody()))return!1;let g=p.getSnapshot(),_=(o=g.headers)!=null&&o[h]||(s=g.footers)!=null&&s[h]?d.map(e=>({...e,isMultiTransform:t.BooleanNumber.TRUE,transforms:e.transforms??(e.transform?[e.transform]:null)})):d,v=t.BuildTextUtils.drawing.add({selection:m,documentDataModel:p,drawings:_});if(!v)return!1;let y={id:n.RichTextEditingMutation.id,params:{unitId:u,actions:[],textRanges:[]}};return y.params.actions=v,!!c.syncExecuteCommand(y.id,y.params)}};function a(e,t,r){let i=e.get(n.DocSelectionManagerService).getActiveTextRange(),a=(r?(0,n.normalizeTextRange)(r):null)??(0,n.getContentInsertRange)(e,t);return a?{...i,startOffset:a.startOffset,endOffset:a.endOffset,collapsed:a.startOffset===a.endOffset,segmentId:a.segmentId??(i==null?void 0:i.segmentId)??``}:i??null}function o(e){"@babel/helpers - typeof";return o=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},o(e)}function s(e,t){if(o(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(o(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function c(e){var t=s(e,`string`);return o(t)==`symbol`?t:t+``}function l(e,t,n){return(t=c(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let u=(0,t.createIdentifier)(`doc.drawing-adapter.service`);var d=class{constructor(){l(this,`_adapters`,[])}registerAdapter(e){return this._adapters.push(e),(0,t.toDisposable)(()=>{let t=this._adapters.indexOf(e);t>=0&&this._adapters.splice(t,1)})}getRemoveDrawingMutationInfos(e){let t={redoMutations:[],undoMutations:[]};for(let r of this._adapters){var n;let i=(n=r.getRemoveDrawingMutationInfos)==null?void 0:n.call(r,e);i&&(t.redoMutations.push(...i.redoMutations),t.undoMutations.push(...i.undoMutations))}return t}getEditDrawingCommandInfo(e){for(let n of this._adapters){var t;let r=(t=n.getEditDrawingCommandInfo)==null?void 0:t.call(n,e);if(r)return r}return null}};let f={id:`doc.command.remove-doc-image`,type:t.CommandType.COMMAND,handler:(e,r)=>{var i;if(!r)return!1;let a=e.get(t.ICommandService),o=e.get(t.IUndoRedoService),s=e.get(u),c=e.get(t.IUniverInstanceService),l=e.get(n.DocSelectionManagerService),{unitId:d,drawings:f,textRange:m}=r,h=c.getUnit(d,t.UniverInstanceType.UNIVER_DOC);if(!h||f.length===0)return!1;let g=l.getActiveTextRange(),_=(m?(0,n.normalizeTextRange)(m):null)??(0,n.getContentInsertRange)(e,d),v=(_==null?void 0:_.segmentId)??(g==null?void 0:g.segmentId)??``,y=new t.TextX,b=t.JSONX.getInstance(),x=((i=h.getSelfOrHeaderFooterModel(v))==null||(i=i.getBody())==null?void 0:i.customBlocks)??[],S=f.map(e=>x.find(t=>t.blockId===e.drawingId)).filter(e=>!!e).sort((e,t)=>e.startIndex>t.startIndex?1:-1);if(S.length===0)return!1;let C=h.getDrawings()??{},w=new Map(f.map(e=>[e.drawingId,e])),T=S.map(e=>C[e.blockId]).filter(e=>e!=null),E=[],D=[],O=[];for(let e of S){let{blockId:t}=e,n=C[t];if(n==null)continue;let r=w.get(t),i=s.getRemoveDrawingMutationInfos({unitId:d,subUnitId:(r==null?void 0:r.subUnitId)??d,drawing:n,removeDrawings:T});(i.redoMutations.length!==0||i.undoMutations.length!==0)&&(E.push(...i.redoMutations),D.push(...i.undoMutations),O.push(i))}if(!p(O,a))return!1;let k=`doc-drawing-remove-resource:${d}:${S.map(e=>e.blockId).join(`,`)}`,A=null;(E.length>0||D.length>0)&&(A=o.__tempBatchingUndoRedo(d),o.pushUndoRedo({unitID:d,redoMutations:E,undoMutations:D,id:k}));let j=new t.MemoryCursor,M=S[0].startIndex,N=[{startOffset:M,endOffset:M}],P={id:n.RichTextEditingMutation.id,params:{unitId:d,actions:[],textRanges:N}},F=[];for(let e of S){let{startIndex:n}=e;n>j.cursor&&y.push({t:t.TextXActionType.RETAIN,len:n-j.cursor}),y.push({t:t.TextXActionType.DELETE,len:1}),j.moveCursorTo(n+1)}F.push(b.editOp(y.serialize(),(0,t.getRichTextEditPath)(h,v)));for(let e of S){let{blockId:t}=e,n=h.getDrawingsOrder().indexOf(t);F.push(b.removeOp([`drawings`,t],C[t])),F.push(b.removeOp([`drawingsOrder`,n],t))}P.params.actions=F.reduce((e,n)=>t.JSONX.compose(e,n),null);let I=a.syncExecuteCommand(P.id,P.params);return!I&&A!=null?(A.dispose(),o.rollback(k,d),!1):(A==null||A.dispose(),!!I)}};function p(e,t){let n=[];for(let r of e){if(!h(r.redoMutations,t))return m([...n].reverse(),t),!1;n.push(r.undoMutations)}return!0}function m(e,t){e.forEach(e=>h(e,t))}function h(e,t){for(let n of e)if(!t.syncExecuteCommand(n.id,n.params))return!1;return!0}let g=`drawingsOrder`;function _(e,n,r){let i=new Set(n.filter(t=>e.includes(t))),a=[...e];if(i.size===0)return a;if(r===t.ArrangeTypeEnum.forward)for(let e=a.length-2;e>=0;e--)i.has(a[e])&&!i.has(a[e+1])&&([a[e],a[e+1]]=[a[e+1],a[e]]);else if(r===t.ArrangeTypeEnum.backward)for(let e=1;e<a.length;e++)i.has(a[e])&&!i.has(a[e-1])&&([a[e],a[e-1]]=[a[e-1],a[e]]);else if(r===t.ArrangeTypeEnum.front||r===t.ArrangeTypeEnum.back){let e=a.filter(e=>i.has(e)),n=a.filter(e=>!i.has(e));return r===t.ArrangeTypeEnum.front?[...n,...e]:[...e,...n]}return a}function v(e,n,r){if(n.length!==1)return[...e];let i=[...e],a=i.indexOf(n[0]);if(a<0)return i;let[o]=i.splice(a,1),s=(0,t.normalizeDrawingOrderIndex)(r,e.length);return i.splice(s,0,o),i}function y(e,n){let r=t.JSONX.getInstance(),i=[...e],a=[];for(let e=0;e<n.length;e++){let t=n[e],o=i.indexOf(t);if(o<0||o===e)continue;let s=r.moveOp([g,o],[g,e]);s&&a.push(s),i.splice(o,1),i.splice(e,0,t)}return a.reduce((e,n)=>t.JSONX.compose(e,n),null)}let b={id:`doc.command.set-drawing-arrange`,type:t.CommandType.COMMAND,handler:(e,r)=>{let i=e.get(t.ICommandService);if(r==null)return!1;let{unitId:a,drawingIds:o}=r,s=e.get(t.IUniverInstanceService).getUnit(a,t.UniverInstanceType.UNIVER_DOC),c=s==null?void 0:s.getDrawingsOrder();if(!c)return!1;let l=y(c,r.zOrder===void 0?_(c,o,r.arrangeType):v(c,o,r.zOrder));return!t.JSONX.isNoop(l)&&!!i.syncExecuteCommand(n.RichTextEditingMutation.id,{unitId:a,actions:l,textRanges:null})}},x={id:`doc.command.update-drawing-doc-transform`,type:t.CommandType.COMMAND,handler:(e,r)=>{if(!r)return!1;let i=e.get(t.ICommandService),a=e.get(t.IUniverInstanceService),{unitId:o,drawings:s}=r,c=a.getUnit(o,t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=c.getSnapshot().drawings??{},u=t.JSONX.getInstance(),d=[];for(let{drawingId:e,key:n,value:r}of s){var f;let i=l[e],a=n===`srcRect`?i==null?void 0:i.srcRect:i==null||(f=i.docTransform)==null?void 0:f[n];if(!t.Tools.diffValue(a,r)){let t=n===`srcRect`?[`drawings`,e,n]:[`drawings`,e,`docTransform`,n];d.push(a===void 0?u.insertOp(t,r):u.replaceOp(t,a,r))}}return!!i.syncExecuteCommand(n.RichTextEditingMutation.id,{unitId:o,actions:d.reduce((e,n)=>t.JSONX.compose(e,n),null),textRanges:null,debounce:!0})}},S=function(e){return e.INLINE=`inline`,e.BEHIND_TEXT=`behindText`,e.IN_FRONT_OF_TEXT=`inFrontOfText`,e.WRAP_SQUARE=`wrapSquare`,e.WRAP_TOP_AND_BOTTOM=`wrapTopAndBottom`,e}({}),C={inline:t.PositionedObjectLayoutType.INLINE,wrapSquare:t.PositionedObjectLayoutType.WRAP_SQUARE,wrapTopAndBottom:t.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM,inFrontOfText:t.PositionedObjectLayoutType.WRAP_NONE,behindText:t.PositionedObjectLayoutType.WRAP_NONE},w={id:`doc.command.update-doc-drawing-wrapping-style`,type:t.CommandType.COMMAND,handler:(e,r)=>{if(!r)return!1;let{drawings:i,wrappingStyle:a,unitId:o}=r,s=e.get(t.ICommandService),c=e.get(t.IUniverInstanceService).getUnit(o,t.UniverInstanceType.UNIVER_DOC);if(!c)return!1;let l=c.getDrawings()??{},u=t.JSONX.getInstance(),d=[];for(let e of i){let n=l[e.drawingId];if(!n)continue;let r=C[a];if(n.layoutType!==r&&d.push(u.replaceOp([`drawings`,e.drawingId,`layoutType`],n.layoutType,r)),a===`behindText`||a===`inFrontOfText`){let r=a===`behindText`?t.BooleanNumber.TRUE:t.BooleanNumber.FALSE;n.behindDoc!==r&&d.push(u.replaceOp([`drawings`,e.drawingId,`behindDoc`],n.behindDoc,r))}if(a!==`inline`)for(let r of[`positionH`,`positionV`]){var f;let i=(f=e.docTransform)==null?void 0:f[r],a=n.docTransform[r];i&&!t.Tools.diffValue(a,i)&&d.push(u.replaceOp([`drawings`,e.drawingId,`docTransform`,r],a,i))}}let p={id:n.RichTextEditingMutation.id,params:{unitId:o,actions:d.reduce((e,n)=>t.JSONX.compose(e,n),null),textRanges:null}};return!!s.syncExecuteCommand(p.id,p.params)}};var T=class extends r.UnitDrawingService{};let E=(0,t.createIdentifier)(`univer.doc.plugin.doc-drawing.service`);function D(e,t){return function(n,r){t(n,r,e)}}function O(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let k=`DOC_DRAWING_PLUGIN`;function A(e,t={}){return e.map((e,t)=>({drawingId:e,index:t})).sort((e,n)=>{let r=j(t[e.drawingId]);return r===j(t[n.drawingId])?e.index-n.index:r?-1:1}).map(({drawingId:e})=>e)}function j(e){return(e==null?void 0:e.layoutType)===t.PositionedObjectLayoutType.WRAP_NONE&&e.behindDoc===t.BooleanNumber.TRUE}let M=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._docDrawingService=e,this._drawingManagerService=t,this._resourceManagerService=n,this._univerInstanceService=r,this._commandService=i,this._init()}_init(){this._initSnapshot(),this._initCommands()}_initSnapshot(){let e=e=>{let n=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(n){let e=n.getSnapshot().drawings,t=n.getSnapshot().drawingsOrder;return JSON.stringify({data:e??{},order:t??[]})}return``},n=e=>{if(!e)return{data:{},order:[]};try{return JSON.parse(e)}catch{return{data:{},order:[]}}};this.disposeWithMe(this._resourceManagerService.registerPluginResource({pluginName:k,businesses:[t.UniverInstanceType.UNIVER_DOC],toJson:t=>e(t),parseJson:e=>n(e),onUnLoad:e=>{this._setDrawingDataForUnit(e,{data:{},order:[]})},onLoad:(e,t)=>{this._setDrawingDataForUnit(e,{data:t.data??{},order:t.order??[]})}}))}_setDrawingDataForUnit(e,t){let n=this._univerInstanceService.getUnit(e);n!=null&&(n.resetDrawing(t.data,t.order),this.loadDrawingDataForUnit(e))}loadDrawingDataForUnit(e){let n=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_DOC);if(!n)return!1;let r=e,i=n.getDrawings(),a=n.getDrawingsOrder();if(!i||!a)return!1;let o={[r]:{unitId:e,subUnitId:r,data:i,order:a}},s={[r]:{...o[r],order:A(a,i)}};return this._docDrawingService.registerDrawingData(e,o),this._drawingManagerService.registerDrawingData(e,s),!0}_initCommands(){[i,f,x,w,b].forEach(e=>this.disposeWithMe(this._commandService.registerCommand(e)))}};M=O([D(0,E),D(1,r.IDrawingManagerService),D(2,t.IResourceManagerService),D(3,t.IUniverInstanceService),D(4,t.ICommandService)],M);var N=`@univerjs/docs-drawing`,P=`1.0.0-beta.2`;let F={},I=class extends t.Plugin{constructor(e=F,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{...i}=(0,t.merge)({},F,this._config);this._configService.setConfig(`docs-drawing.config`,i)}onStarting(){[[M],[d],[u,{useClass:d}],[T],[E,{useClass:T}]].forEach(e=>this._injector.add(e)),(0,t.touchDependencies)(this._injector,[[M]])}};l(I,`pluginName`,k),l(I,`packageName`,N),l(I,`version`,P),l(I,`type`,t.UniverInstanceType.UNIVER_DOC),I=O([(0,t.DependentOn)(n.UniverDocsPlugin,r.UniverDrawingPlugin),D(1,(0,t.Inject)(t.Injector)),D(2,t.IConfigService)],I),e.DOCS_DRAWING_PLUGIN=k,e.DocDrawingAdapterService=d,Object.defineProperty(e,"DocDrawingController",{enumerable:!0,get:function(){return M}}),e.DocDrawingService=T,e.IDocDrawingAdapterService=u,e.IDocDrawingService=E,e.InsertDocDrawingCommand=i,e.RemoveDocDrawingCommand=f,e.SetDocDrawingArrangeCommand=b,e.TextWrappingStyle=S,Object.defineProperty(e,"UniverDocsDrawingPlugin",{enumerable:!0,get:function(){return I}}),e.UpdateDocDrawingWrappingStyleCommand=w,e.UpdateDrawingDocTransformCommand=x,e.WRAPPING_STYLE_TO_LAYOUT_TYPE=C,e.getDocDrawingRenderOrder=A});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/docs-drawing",
3
- "version": "1.0.0-beta.0",
3
+ "version": "1.0.0-beta.2",
4
4
  "private": false,
5
5
  "description": "Drawing model integration for Univer Docs.",
6
6
  "author": "DreamNum Co., Ltd. <developer@univer.ai>",
@@ -59,15 +59,15 @@
59
59
  "lib"
60
60
  ],
61
61
  "dependencies": {
62
- "@univerjs/core": "1.0.0-beta.0",
63
- "@univerjs/docs": "1.0.0-beta.0",
64
- "@univerjs/drawing": "1.0.0-beta.0"
62
+ "@univerjs/docs": "1.0.0-beta.2",
63
+ "@univerjs/core": "1.0.0-beta.2",
64
+ "@univerjs/drawing": "1.0.0-beta.2"
65
65
  },
66
66
  "devDependencies": {
67
67
  "typescript": "^6.0.3",
68
68
  "vitest": "^4.1.10",
69
- "@univerjs/engine-render": "1.0.0-beta.0",
70
- "@univerjs-infra/shared": "1.0.0-beta.0"
69
+ "@univerjs/engine-render": "1.0.0-beta.2",
70
+ "@univerjs-infra/shared": "1.0.0-beta.2"
71
71
  },
72
72
  "scripts": {
73
73
  "test": "vitest run",