@univerjs/sheets-zen-editor 0.2.4-alpha.0 → 0.2.4

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
@@ -1,4 +1,4 @@
1
- "use strict";var Q=Object.defineProperty;var ee=(n,e,i)=>e in n?Q(n,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[e]=i;var O=(n,e,i)=>ee(n,typeof e!="symbol"?e+"":e,i);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@univerjs/core"),b=require("@univerjs/docs"),U=require("@univerjs/engine-render"),M=require("@univerjs/sheets-ui"),_=require("@univerjs/ui"),F=require("rxjs"),N=require("@univerjs/sheets"),S=require("react"),k=require("clsx"),j={id:"zen-editor.operation.open-zen-editor",type:c.CommandType.OPERATION,handler:n=>!0};class te{constructor(){O(this,"_position",null);O(this,"_position$",new F.BehaviorSubject(null));O(this,"position$",this._position$.asObservable())}dispose(){this._position$.complete(),this._position=null}setPosition(e){this._position=e,this._refresh(e)}getPosition(){return this._position}_refresh(e){this._position$.next(e)}}const V=c.createIdentifier("univer.sheet-zen-editor-manager.service");var ne=Object.defineProperty,ie=Object.getOwnPropertyDescriptor,re=(n,e,i,t)=>{for(var r=t>1?void 0:t?ie(e,i):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(t?s(e,i,r):s(r))||r);return t&&r&&ne(e,i,r),r},E=(n,e)=>(i,t)=>e(i,t,n);const f="__defaultDocumentZenEditorSpecialUnitId_20231218__";let P=class extends c.RxDisposable{constructor(e,i,t,r,o,s,a,d){super();O(this,"_zenEditorInitialState",!1);this._univerInstanceService=e,this._zenEditorManagerService=i,this._renderManagerService=t,this._commandService=r,this._zenZoneService=o,this._editorBridgeService=s,this._undoRedoService=a,this._textSelectionManagerService=d,this._initialize()}_initialize(){this._syncZenEditorSize(),this._commandExecutedListener()}_createZenEditorInstance(){const e={id:f,body:{dataStream:`${c.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],customBlocks:[],paragraphs:[{startIndex:0}]},documentStyle:{pageSize:{width:595,height:842},documentFlavor:c.DocumentFlavor.MODERN,marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}},drawings:{},drawingsOrder:[]};return this._univerInstanceService.createUnit(c.UniverInstanceType.UNIVER_DOC,e)}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe(F.takeUntil(this.dispose$)).subscribe(e=>{var d;if(e==null)return;const i=M.getEditorObject(f,this._renderManagerService),t=this._univerInstanceService.getUniverDocInstance(f);if(i==null||t==null)return;const{width:r,height:o}=e,{engine:s}=i,a=(d=this._renderManagerService.getRenderById(f))==null?void 0:d.with(b.DocSkeletonManagerService).getSkeleton();requestIdleCallback(()=>{s.resizeBySize(r,o),this._calculatePagePosition(i),a&&this._textSelectionManagerService.refreshSelection()})})}_handleOpenZenEditor(){var o;this._zenEditorInitialState||(this._createZenEditorInstance(),this._zenEditorInitialState=!0),this._zenZoneService.open();const e=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);this._undoRedoService.clearUndoRedo(f),this._univerInstanceService.focusUnit(f),this._univerInstanceService.setCurrentUnitForType(f),this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:U.DeviceInputEventType.PointerDown,unitId:(o=e==null?void 0:e.getUnitId())!=null?o:""});const t=this._editorBridgeService.getLatestEditCellState();if(t==null)return;this._editorSyncHandler(t);const r=[{startOffset:0,endOffset:0}];this._textSelectionManagerService.replaceTextRanges(r)}_editorSyncHandler(e){var s,a;const i=(s=e.documentLayoutObject.documentModel)==null?void 0:s.getBody(),t=i==null?void 0:i.dataStream,r=i==null?void 0:i.paragraphs;let o=[];t==null||r==null||((a=i==null?void 0:i.textRuns)!=null&&a.length&&(o=i==null?void 0:i.textRuns),this._syncContentAndRender(f,t,r,o))}_syncContentAndRender(e,i,t,r=[],o=[],s={},a=[],d=[]){var m;const h=[f,c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY],l=(m=this._renderManagerService.getRenderById(e))==null?void 0:m.with(b.DocSkeletonManagerService),p=l==null?void 0:l.getSkeleton(),v=this._univerInstanceService.getUniverDocInstance(e),I=l==null?void 0:l.getViewModel();if(v==null||I==null||p==null)return;const u=v.getBody(),R=v.getSnapshot();u.dataStream=i,u.paragraphs=t,u.customBlocks=o,u.customRanges=d,R.drawings=s,R.drawingsOrder=a,e===c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY&&(u.textRuns=[]),r.length>0&&(u.textRuns=r),I.reset(v);const C=this._getDocObject();C!=null&&(p.calculate(),h.includes(e)&&C.document.makeDirty())}_calculatePagePosition(e){const{document:i,scene:t,docBackground:r}=e,o=t==null?void 0:t.getParent(),{width:s,height:a,pageMarginLeft:d,pageMarginTop:h}=i;if(o==null||s===Number.POSITIVE_INFINITY||a===Number.POSITIVE_INFINITY)return;const{width:l,height:p}=o;let v=0,I=0,u=0,R=0,C=Number.POSITIVE_INFINITY;const{scaleX:m,scaleY:G}=t.getAncestorScale();l>(s+d*2)*m?(v=l/2-s*m/2,v/=m,u=(l-d*2)/m,C=0):(v=d,u=s+d*2,C=(u-l/m)/2),p>a?(I=p/2-a/2,R=(p-h*2)/G):(I=h,R=a+h*2),t.resize(u,R+200),i.translate(v,I),r.translate(v,I);const A=t.getViewport(b.VIEWPORT_KEY.VIEW_MAIN);if(C!==Number.POSITIVE_INFINITY&&A!=null){const J=A.transScroll2ViewportScrollValue(C,0).x;A.scrollTo({x:J})}return this}_commandExecutedListener(){const e=[j.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{e.includes(t.id)&&this._handleOpenZenEditor()}));const i=[b.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(i.includes(t.id)){const r=t.params,{unitId:o}=r;if(o===f){const s=this._univerInstanceService.getUniverDocInstance(o),a=s==null?void 0:s.getBody(),d=a==null?void 0:a.dataStream,h=a==null?void 0:a.paragraphs,l=a==null?void 0:a.textRuns,p=a==null?void 0:a.customBlocks,v=s==null?void 0:s.getDrawings(),I=s==null?void 0:s.getDrawingsOrder(),u=s==null?void 0:s.getCustomRanges();if(this._editorBridgeService.changeEditorDirty(!0),d==null||h==null)return;this._syncContentAndRender(c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,d,h,l,p,v,I,u)}}}))}_getDocObject(){return b.getDocObject(this._univerInstanceService,this._renderManagerService)}};P=re([c.OnLifecycle(c.LifecycleStages.Steady,P),E(0,c.IUniverInstanceService),E(1,V),E(2,U.IRenderManagerService),E(3,c.ICommandService),E(4,_.IZenZoneService),E(5,M.IEditorBridgeService),E(6,c.IUndoRedoService),E(7,c.Inject(b.TextSelectionManagerService))],P);const w={id:"zen-editor.command.cancel-zen-edit",type:c.CommandType.COMMAND,handler:async n=>{const e=n.get(_.IZenZoneService),i=n.get(M.IEditorBridgeService),t=n.get(c.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:U.DeviceInputEventType.Keyboard,keycode:_.KeyCode.ESC,unitId:""}),e.close();const o=t.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return o?(t.focusUnit(o.getUnitId()),i.refreshEditCellState(),!0):!1}},Z={id:"zen-editor.command.confirm-zen-edit",type:c.CommandType.COMMAND,handler:async n=>{const e=n.get(_.IZenZoneService),i=n.get(M.IEditorBridgeService),t=n.get(c.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:U.DeviceInputEventType.PointerDown,unitId:""}),e.close();const o=t.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return o?(t.focusUnit(o.getUnitId()),i.refreshEditCellState(),!0):!1}};function se(n){return{id:j.id,group:_.MenuGroup.CONTEXT_MENU_OTHERS,type:_.MenuItemType.BUTTON,title:"rightClick.zenEditor",icon:"AmplifySingle",positions:[_.MenuPosition.CONTEXT_MENU],disabled$:M.getCurrentRangeDisable$(n,{workbookTypes:[N.WorkbookEditablePermission],worksheetTypes:[N.WorksheetEditPermission,N.WorksheetSetCellValuePermission,N.WorksheetSetCellStylePermission],rangeTypes:[N.RangeProtectionPermissionEditPoint]})}}var W={exports:{}},L={};/**
1
+ "use strict";var te=Object.defineProperty;var ne=(n,e,i)=>e in n?te(n,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[e]=i;var O=(n,e,i)=>ne(n,typeof e!="symbol"?e+"":e,i);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@univerjs/core"),R=require("@wendellhu/redi"),N=require("@univerjs/docs"),M=require("@univerjs/engine-render"),D=require("@univerjs/sheets-ui"),_=require("@univerjs/ui"),q=require("rxjs"),z=require("@univerjs/sheets"),S=require("react"),B=require("@wendellhu/redi/react-bindings"),F=require("clsx"),w={id:"zen-editor.operation.open-zen-editor",type:c.CommandType.OPERATION,handler:n=>!0};class ie{constructor(){O(this,"_position",null);O(this,"_position$",new q.BehaviorSubject(null));O(this,"position$",this._position$.asObservable())}dispose(){this._position$.complete(),this._position=null}setPosition(e){this._position=e,this._refresh(e)}getPosition(){return this._position}_refresh(e){this._position$.next(e)}}const k=R.createIdentifier("univer.sheet-zen-editor-manager.service");var re=Object.defineProperty,se=Object.getOwnPropertyDescriptor,oe=(n,e,i,t)=>{for(var r=t>1?void 0:t?se(e,i):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(t?s(e,i,r):s(r))||r);return t&&r&&re(e,i,r),r},E=(n,e)=>(i,t)=>e(i,t,n);const f="__defaultDocumentZenEditorSpecialUnitId_20231218__";let j=class extends c.RxDisposable{constructor(e,i,t,r,o,s,a,d){super();O(this,"_zenEditorInitialState",!1);this._univerInstanceService=e,this._zenEditorManagerService=i,this._renderManagerService=t,this._commandService=r,this._zenZoneService=o,this._editorBridgeService=s,this._undoRedoService=a,this._textSelectionManagerService=d,this._initialize()}_initialize(){this._syncZenEditorSize(),this._commandExecutedListener()}_createZenEditorInstance(){const e={id:f,body:{dataStream:`${c.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],customBlocks:[],paragraphs:[{startIndex:0}]},documentStyle:{pageSize:{width:595,height:842},documentFlavor:c.DocumentFlavor.MODERN,marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}},drawings:{},drawingsOrder:[]};return this._univerInstanceService.createUnit(c.UniverInstanceType.UNIVER_DOC,e)}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe(q.takeUntil(this.dispose$)).subscribe(e=>{var d;if(e==null)return;const i=D.getEditorObject(f,this._renderManagerService),t=this._univerInstanceService.getUniverDocInstance(f);if(i==null||t==null)return;const{width:r,height:o}=e,{engine:s}=i,a=(d=this._renderManagerService.getRenderById(f))==null?void 0:d.with(N.DocSkeletonManagerService).getSkeleton();requestIdleCallback(()=>{s.resizeBySize(r,o),this._calculatePagePosition(i),a&&this._textSelectionManagerService.refreshSelection()})})}_handleOpenZenEditor(){var o;this._zenEditorInitialState||(this._createZenEditorInstance(),this._zenEditorInitialState=!0),this._zenZoneService.open();const e=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);this._undoRedoService.clearUndoRedo(f),this._univerInstanceService.focusUnit(f),this._univerInstanceService.setCurrentUnitForType(f),this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:M.DeviceInputEventType.PointerDown,unitId:(o=e==null?void 0:e.getUnitId())!=null?o:""});const t=this._editorBridgeService.getLatestEditCellState();if(t==null)return;this._editorSyncHandler(t);const r=[{startOffset:0,endOffset:0}];this._textSelectionManagerService.replaceTextRanges(r)}_editorSyncHandler(e){var s,a;const i=(s=e.documentLayoutObject.documentModel)==null?void 0:s.getBody(),t=i==null?void 0:i.dataStream,r=i==null?void 0:i.paragraphs;let o=[];t==null||r==null||((a=i==null?void 0:i.textRuns)!=null&&a.length&&(o=i==null?void 0:i.textRuns),this._syncContentAndRender(f,t,r,o))}_syncContentAndRender(e,i,t,r=[],o=[],s={},a=[],d=[]){var m;const h=[f,c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY],l=(m=this._renderManagerService.getRenderById(e))==null?void 0:m.with(N.DocSkeletonManagerService),p=l==null?void 0:l.getSkeleton(),v=this._univerInstanceService.getUniverDocInstance(e),I=l==null?void 0:l.getViewModel();if(v==null||I==null||p==null)return;const u=v.getBody(),b=v.getSnapshot();u.dataStream=i,u.paragraphs=t,u.customBlocks=o,u.customRanges=d,b.drawings=s,b.drawingsOrder=a,e===c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY&&(u.textRuns=[]),r.length>0&&(u.textRuns=r),I.reset(v);const C=this._getDocObject();C!=null&&(p.calculate(),h.includes(e)&&C.document.makeDirty())}_calculatePagePosition(e){const{document:i,scene:t,docBackground:r}=e,o=t==null?void 0:t.getParent(),{width:s,height:a,pageMarginLeft:d,pageMarginTop:h}=i;if(o==null||s===Number.POSITIVE_INFINITY||a===Number.POSITIVE_INFINITY)return;const{width:l,height:p}=o;let v=0,I=0,u=0,b=0,C=Number.POSITIVE_INFINITY;const{scaleX:m,scaleY:Q}=t.getAncestorScale();l>(s+d*2)*m?(v=l/2-s*m/2,v/=m,u=(l-d*2)/m,C=0):(v=d,u=s+d*2,C=(u-l/m)/2),p>a?(I=p/2-a/2,b=(p-h*2)/Q):(I=h,b=a+h*2),t.resize(u,b+200),i.translate(v,I),r.translate(v,I);const V=t.getViewport(N.VIEWPORT_KEY.VIEW_MAIN);if(C!==Number.POSITIVE_INFINITY&&V!=null){const ee=V.transScroll2ViewportScrollValue(C,0).x;V.scrollTo({x:ee})}return this}_commandExecutedListener(){const e=[w.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{e.includes(t.id)&&this._handleOpenZenEditor()}));const i=[N.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(t=>{if(i.includes(t.id)){const r=t.params,{unitId:o}=r;if(o===f){const s=this._univerInstanceService.getUniverDocInstance(o),a=s==null?void 0:s.getBody(),d=a==null?void 0:a.dataStream,h=a==null?void 0:a.paragraphs,l=a==null?void 0:a.textRuns,p=a==null?void 0:a.customBlocks,v=s==null?void 0:s.getDrawings(),I=s==null?void 0:s.getDrawingsOrder(),u=s==null?void 0:s.getCustomRanges();if(this._editorBridgeService.changeEditorDirty(!0),d==null||h==null)return;this._syncContentAndRender(c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,d,h,l,p,v,I,u)}}}))}_getDocObject(){return N.getDocObject(this._univerInstanceService,this._renderManagerService)}};j=oe([c.OnLifecycle(c.LifecycleStages.Steady,j),E(0,c.IUniverInstanceService),E(1,k),E(2,M.IRenderManagerService),E(3,c.ICommandService),E(4,_.IZenZoneService),E(5,D.IEditorBridgeService),E(6,c.IUndoRedoService),E(7,R.Inject(N.TextSelectionManagerService))],j);const Z={id:"zen-editor.command.cancel-zen-edit",type:c.CommandType.COMMAND,handler:async n=>{const e=n.get(_.IZenZoneService),i=n.get(D.IEditorBridgeService),t=n.get(c.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:M.DeviceInputEventType.Keyboard,keycode:_.KeyCode.ESC,unitId:""}),e.close();const o=t.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return o?(t.focusUnit(o.getUnitId()),i.refreshEditCellState(),!0):!1}},L={id:"zen-editor.command.confirm-zen-edit",type:c.CommandType.COMMAND,handler:async n=>{const e=n.get(_.IZenZoneService),i=n.get(D.IEditorBridgeService),t=n.get(c.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:M.DeviceInputEventType.PointerDown,unitId:""}),e.close();const o=t.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return o?(t.focusUnit(o.getUnitId()),i.refreshEditCellState(),!0):!1}};function ce(n){return{id:w.id,group:_.MenuGroup.CONTEXT_MENU_OTHERS,type:_.MenuItemType.BUTTON,title:"rightClick.zenEditor",icon:"AmplifySingle",positions:[_.MenuPosition.CONTEXT_MENU],disabled$:D.getCurrentRangeDisable$(n,{workbookTypes:[z.WorkbookEditablePermission],worksheetTypes:[z.WorksheetEditPermission,z.WorksheetSetCellValuePermission,z.WorksheetSetCellStylePermission],rangeTypes:[z.RangeProtectionPermissionEditPoint]})}}var Y={exports:{}},A={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.min.js
4
4
  *
@@ -6,4 +6,4 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var oe=S,ce=Symbol.for("react.element"),ae=Symbol.for("react.fragment"),de=Object.prototype.hasOwnProperty,le=oe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,ue={key:!0,ref:!0,__self:!0,__source:!0};function Y(n,e,i){var t,r={},o=null,s=null;i!==void 0&&(o=""+i),e.key!==void 0&&(o=""+e.key),e.ref!==void 0&&(s=e.ref);for(t in e)de.call(e,t)&&!ue.hasOwnProperty(t)&&(r[t]=e[t]);if(n&&n.defaultProps)for(t in e=n.defaultProps,e)r[t]===void 0&&(r[t]=e[t]);return{$$typeof:ce,type:n,key:o,ref:s,props:r,_owner:le.current}}L.Fragment=ae;L.jsx=Y;L.jsxs=Y;W.exports=L;var y=W.exports,g=function(){return g=Object.assign||function(n){for(var e,i=1,t=arguments.length;i<t;i++){e=arguments[i];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r])}return n},g.apply(this,arguments)},_e=function(n,e){var i={};for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&e.indexOf(t)<0&&(i[t]=n[t]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,t=Object.getOwnPropertySymbols(n);r<t.length;r++)e.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(n,t[r])&&(i[t[r]]=n[t[r]]);return i},B=S.forwardRef(function(n,e){var i=n.icon,t=n.id,r=n.className,o=n.extend,s=_e(n,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(t," ").concat(r||"").trim(),d=S.useRef("_".concat(fe()));return q(i,"".concat(t),{defIds:i.defIds,idSuffix:d.current},g({ref:e,className:a},s),o)});function q(n,e,i,t,r){return S.createElement(n.tag,g(g({key:e},he(n,i,r)),t),(ve(n,i).children||[]).map(function(o,s){return q(o,"".concat(e,"-").concat(n.tag,"-").concat(s),i,void 0,r)}))}function he(n,e,i){var t=g({},n.attrs);i!=null&&i.colorChannel1&&t.fill==="colorChannel1"&&(t.fill=i.colorChannel1);var r=e.defIds;return!r||r.length===0||(n.tag==="use"&&t["xlink:href"]&&(t["xlink:href"]=t["xlink:href"]+e.idSuffix),Object.entries(t).forEach(function(o){var s=o[0],a=o[1];typeof a=="string"&&(t[s]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),t}function ve(n,e){var i,t=e.defIds;return!t||t.length===0?n:n.tag==="defs"&&(!((i=n.children)===null||i===void 0)&&i.length)?g(g({},n),{children:n.children.map(function(r){return typeof r.attrs.id=="string"&&t&&t.indexOf(r.attrs.id)>-1?g(g({},r),{attrs:g(g({},r.attrs),{id:r.attrs.id+e.idSuffix})}):r})}):n}function fe(){return Math.random().toString(36).substring(2,8)}B.displayName="UniverIcon";var ge={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},K=S.forwardRef(function(n,e){return S.createElement(B,Object.assign({},n,{id:"check-mark-single",ref:e,icon:ge}))});K.displayName="CheckMarkSingle";var pe={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.71274 2.86421C3.47843 2.6299 3.09853 2.6299 2.86421 2.86421C2.6299 3.09853 2.6299 3.47843 2.86421 3.71274L7.15154 8.00007L2.86421 12.2874C2.6299 12.5217 2.6299 12.9016 2.86421 13.1359C3.09853 13.3702 3.47843 13.3702 3.71274 13.1359L8.00007 8.84859L12.2874 13.1359C12.5217 13.3702 12.9016 13.3702 13.1359 13.1359C13.3702 12.9016 13.3702 12.5217 13.1359 12.2874L8.84859 8.00007L13.1359 3.71274C13.3702 3.47843 13.3702 3.09853 13.1359 2.86421C12.9016 2.6299 12.5217 2.6299 12.2874 2.86421L8.00007 7.15154L3.71274 2.86421Z"}}]},H=S.forwardRef(function(n,e){return S.createElement(B,Object.assign({},n,{id:"close-single",ref:e,icon:pe}))});H.displayName="CloseSingle";const Se="univer-zen-editor",Ie="univer-zen-editor-icon-wrapper",me="univer-zen-editor-icon-container",Ee="univer-zen-editor-icon-success",Ce="univer-zen-editor-icon-error",Oe="univer-zen-editor-canvas-container",T={zenEditor:Se,zenEditorIconWrapper:Ie,zenEditorIconContainer:me,zenEditorIconSuccess:Ee,zenEditorIconError:Ce,zenEditorCanvasContainer:Oe},ye="ZEN_EDITOR_PLUGIN_",Te=`${ye}ZEN_EDITOR_COMPONENT`;function Re(){const n=S.useRef(null),e=c.useDependency(U.IRenderManagerService),i=c.useDependency(V),t=c.useDependency(c.ICommandService);S.useEffect(()=>{const s=n.current;if(!s)return;const a=e.currentRender$.subscribe(h=>{var p;if(h!==f)return;const l=(p=e.getRenderById(f))==null?void 0:p.engine;l==null||l.setContainer(s)}),d=new ResizeObserver(()=>{const h=s.getBoundingClientRect();i.setPosition(h)});return d.observe(s),()=>{d.unobserve(s),a.unsubscribe()}},[]);function r(){t.executeCommand(w.id)}function o(){t.executeCommand(Z.id)}return y.jsxs("div",{className:T.zenEditor,children:[y.jsxs("div",{className:T.zenEditorIconWrapper,children:[y.jsx("span",{className:k(T.zenEditorIconContainer,T.zenEditorIconError),onClick:r,children:y.jsx(H,{style:{fontSize:"22px"}})}),y.jsx("span",{className:k(T.zenEditorIconContainer,T.zenEditorIconSuccess),onClick:o,children:y.jsx(K,{style:{fontSize:"22px"}})})]}),y.jsx("div",{className:T.zenEditorCanvasContainer,ref:n})]})}const be={id:Z.id,description:"shortcut.sheet.zen-edit-confirm",group:"4_sheet-edit",preconditions:n=>X(n),binding:_.KeyCode.ENTER|_.MetaKeys.ALT},Ne={id:w.id,description:"shortcut.sheet.zen-edit-cancel",group:"4_sheet-edit",preconditions:n=>X(n),binding:_.KeyCode.ESC};function X(n){return n.getContextValue(c.FOCUSING_DOC)&&n.getContextValue(c.FOCUSING_UNIVER_EDITOR)&&n.getContextValue(c.EDITOR_ACTIVATED)&&!n.getContextValue(c.FOCUSING_EDITOR_STANDALONE)}var ze=Object.defineProperty,xe=Object.getOwnPropertyDescriptor,Ue=(n,e,i,t)=>{for(var r=t>1?void 0:t?xe(e,i):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(t?s(e,i,r):s(r))||r);return t&&r&&ze(e,i,r),r},z=(n,e)=>(i,t)=>e(i,t,n);const Me={};let x=class extends c.Disposable{constructor(n,e,i,t,r,o){super(),this._config=n,this._injector=e,this._zenZoneService=i,this._commandService=t,this._menuService=r,this._shortcutService=o,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(Te,Re))}_initCommands(){[j,w,Z].forEach(n=>{this.disposeWithMe(this._commandService.registerCommand(n))})}_initMenus(){const{menu:n={}}=this._config;[se].forEach(e=>{this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(e),n))})}_initShortcuts(){[be,Ne].forEach(n=>{this.disposeWithMe(this._shortcutService.registerShortcut(n))})}};x=Ue([c.OnLifecycle(c.LifecycleStages.Rendered,x),z(1,c.Inject(c.Injector)),z(2,_.IZenZoneService),z(3,c.ICommandService),z(4,_.IMenuService),z(5,_.IShortcutService)],x);var De=Object.defineProperty,Pe=Object.getOwnPropertyDescriptor,je=(n,e,i,t)=>{for(var r=t>1?void 0:t?Pe(e,i):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(t?s(e,i,r):s(r))||r);return t&&r&&De(e,i,r),r},$=(n,e)=>(i,t)=>e(i,t,n),D;exports.UniverSheetsZenEditorPlugin=(D=class extends c.Plugin{constructor(e={},i,t){super(),this._config=e,this._injector=i,this._localeService=t,this._initializeDependencies(this._injector),this._config=c.Tools.deepMerge({},Me,this._config)}_initializeDependencies(e){[[x,{useFactory:()=>this._injector.createInstance(x,this._config)}],[P],[V,{useClass:te}]].forEach(t=>e.add(t))}},O(D,"pluginName","zen-editor"),O(D,"type",c.UniverInstanceType.UNIVER_DOC),D);exports.UniverSheetsZenEditorPlugin=je([$(1,c.Inject(c.Injector)),$(2,c.Inject(c.LocaleService))],exports.UniverSheetsZenEditorPlugin);exports.CancelZenEditCommand=w;exports.ConfirmZenEditCommand=Z;exports.OpenZenEditorOperation=j;
9
+ */var ae=S,de=Symbol.for("react.element"),le=Symbol.for("react.fragment"),ue=Object.prototype.hasOwnProperty,_e=ae.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,he={key:!0,ref:!0,__self:!0,__source:!0};function K(n,e,i){var t,r={},o=null,s=null;i!==void 0&&(o=""+i),e.key!==void 0&&(o=""+e.key),e.ref!==void 0&&(s=e.ref);for(t in e)ue.call(e,t)&&!he.hasOwnProperty(t)&&(r[t]=e[t]);if(n&&n.defaultProps)for(t in e=n.defaultProps,e)r[t]===void 0&&(r[t]=e[t]);return{$$typeof:de,type:n,key:o,ref:s,props:r,_owner:_e.current}}A.Fragment=le;A.jsx=K;A.jsxs=K;Y.exports=A;var y=Y.exports,g=function(){return g=Object.assign||function(n){for(var e,i=1,t=arguments.length;i<t;i++){e=arguments[i];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r])}return n},g.apply(this,arguments)},ve=function(n,e){var i={};for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&e.indexOf(t)<0&&(i[t]=n[t]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,t=Object.getOwnPropertySymbols(n);r<t.length;r++)e.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(n,t[r])&&(i[t[r]]=n[t[r]]);return i},$=S.forwardRef(function(n,e){var i=n.icon,t=n.id,r=n.className,o=n.extend,s=ve(n,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(t," ").concat(r||"").trim(),d=S.useRef("_".concat(pe()));return H(i,"".concat(t),{defIds:i.defIds,idSuffix:d.current},g({ref:e,className:a},s),o)});function H(n,e,i,t,r){return S.createElement(n.tag,g(g({key:e},fe(n,i,r)),t),(ge(n,i).children||[]).map(function(o,s){return H(o,"".concat(e,"-").concat(n.tag,"-").concat(s),i,void 0,r)}))}function fe(n,e,i){var t=g({},n.attrs);i!=null&&i.colorChannel1&&t.fill==="colorChannel1"&&(t.fill=i.colorChannel1);var r=e.defIds;return!r||r.length===0||(n.tag==="use"&&t["xlink:href"]&&(t["xlink:href"]=t["xlink:href"]+e.idSuffix),Object.entries(t).forEach(function(o){var s=o[0],a=o[1];typeof a=="string"&&(t[s]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),t}function ge(n,e){var i,t=e.defIds;return!t||t.length===0?n:n.tag==="defs"&&(!((i=n.children)===null||i===void 0)&&i.length)?g(g({},n),{children:n.children.map(function(r){return typeof r.attrs.id=="string"&&t&&t.indexOf(r.attrs.id)>-1?g(g({},r),{attrs:g(g({},r.attrs),{id:r.attrs.id+e.idSuffix})}):r})}):n}function pe(){return Math.random().toString(36).substring(2,8)}$.displayName="UniverIcon";var Se={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},X=S.forwardRef(function(n,e){return S.createElement($,Object.assign({},n,{id:"check-mark-single",ref:e,icon:Se}))});X.displayName="CheckMarkSingle";var Ie={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.71274 2.86421C3.47843 2.6299 3.09853 2.6299 2.86421 2.86421C2.6299 3.09853 2.6299 3.47843 2.86421 3.71274L7.15154 8.00007L2.86421 12.2874C2.6299 12.5217 2.6299 12.9016 2.86421 13.1359C3.09853 13.3702 3.47843 13.3702 3.71274 13.1359L8.00007 8.84859L12.2874 13.1359C12.5217 13.3702 12.9016 13.3702 13.1359 13.1359C13.3702 12.9016 13.3702 12.5217 13.1359 12.2874L8.84859 8.00007L13.1359 3.71274C13.3702 3.47843 13.3702 3.09853 13.1359 2.86421C12.9016 2.6299 12.5217 2.6299 12.2874 2.86421L8.00007 7.15154L3.71274 2.86421Z"}}]},G=S.forwardRef(function(n,e){return S.createElement($,Object.assign({},n,{id:"close-single",ref:e,icon:Ie}))});G.displayName="CloseSingle";const me="univer-zen-editor",Ee="univer-zen-editor-icon-wrapper",Ce="univer-zen-editor-icon-container",Oe="univer-zen-editor-icon-success",ye="univer-zen-editor-icon-error",Te="univer-zen-editor-canvas-container",T={zenEditor:me,zenEditorIconWrapper:Ee,zenEditorIconContainer:Ce,zenEditorIconSuccess:Oe,zenEditorIconError:ye,zenEditorCanvasContainer:Te},Re="ZEN_EDITOR_PLUGIN_",be=`${Re}ZEN_EDITOR_COMPONENT`;function Ne(){const n=S.useRef(null),e=B.useDependency(M.IRenderManagerService),i=B.useDependency(k),t=B.useDependency(c.ICommandService);S.useEffect(()=>{const s=n.current;if(!s)return;const a=e.currentRender$.subscribe(h=>{var p;if(h!==f)return;const l=(p=e.getRenderById(f))==null?void 0:p.engine;l==null||l.setContainer(s)}),d=new ResizeObserver(()=>{const h=s.getBoundingClientRect();i.setPosition(h)});return d.observe(s),()=>{d.unobserve(s),a.unsubscribe()}},[]);function r(){t.executeCommand(Z.id)}function o(){t.executeCommand(L.id)}return y.jsxs("div",{className:T.zenEditor,children:[y.jsxs("div",{className:T.zenEditorIconWrapper,children:[y.jsx("span",{className:F(T.zenEditorIconContainer,T.zenEditorIconError),onClick:r,children:y.jsx(G,{style:{fontSize:"22px"}})}),y.jsx("span",{className:F(T.zenEditorIconContainer,T.zenEditorIconSuccess),onClick:o,children:y.jsx(X,{style:{fontSize:"22px"}})})]}),y.jsx("div",{className:T.zenEditorCanvasContainer,ref:n})]})}const ze={id:L.id,description:"shortcut.sheet.zen-edit-confirm",group:"4_sheet-edit",preconditions:n=>J(n),binding:_.KeyCode.ENTER|_.MetaKeys.ALT},xe={id:Z.id,description:"shortcut.sheet.zen-edit-cancel",group:"4_sheet-edit",preconditions:n=>J(n),binding:_.KeyCode.ESC};function J(n){return n.getContextValue(c.FOCUSING_DOC)&&n.getContextValue(c.FOCUSING_UNIVER_EDITOR)&&n.getContextValue(c.EDITOR_ACTIVATED)&&!n.getContextValue(c.FOCUSING_EDITOR_STANDALONE)}var Ue=Object.defineProperty,Me=Object.getOwnPropertyDescriptor,De=(n,e,i,t)=>{for(var r=t>1?void 0:t?Me(e,i):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(t?s(e,i,r):s(r))||r);return t&&r&&Ue(e,i,r),r},x=(n,e)=>(i,t)=>e(i,t,n);const Pe={};let U=class extends c.Disposable{constructor(n,e,i,t,r,o){super(),this._config=n,this._injector=e,this._zenZoneService=i,this._commandService=t,this._menuService=r,this._shortcutService=o,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(be,Ne))}_initCommands(){[w,Z,L].forEach(n=>{this.disposeWithMe(this._commandService.registerCommand(n))})}_initMenus(){const{menu:n={}}=this._config;[ce].forEach(e=>{this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(e),n))})}_initShortcuts(){[ze,xe].forEach(n=>{this.disposeWithMe(this._shortcutService.registerShortcut(n))})}};U=De([c.OnLifecycle(c.LifecycleStages.Rendered,U),x(1,R.Inject(R.Injector)),x(2,_.IZenZoneService),x(3,c.ICommandService),x(4,_.IMenuService),x(5,_.IShortcutService)],U);var je=Object.defineProperty,we=Object.getOwnPropertyDescriptor,Ze=(n,e,i,t)=>{for(var r=t>1?void 0:t?we(e,i):e,o=n.length-1,s;o>=0;o--)(s=n[o])&&(r=(t?s(e,i,r):s(r))||r);return t&&r&&je(e,i,r),r},W=(n,e)=>(i,t)=>e(i,t,n),P;exports.UniverSheetsZenEditorPlugin=(P=class extends c.Plugin{constructor(e={},i,t){super(),this._config=e,this._injector=i,this._localeService=t,this._initializeDependencies(this._injector),this._config=c.Tools.deepMerge({},Pe,this._config)}_initializeDependencies(e){[[U,{useFactory:()=>this._injector.createInstance(U,this._config)}],[j],[k,{useClass:ie}]].forEach(t=>e.add(t))}},O(P,"pluginName","zen-editor"),O(P,"type",c.UniverInstanceType.UNIVER_DOC),P);exports.UniverSheetsZenEditorPlugin=Ze([W(1,R.Inject(R.Injector)),W(2,R.Inject(c.LocaleService))],exports.UniverSheetsZenEditorPlugin);exports.CancelZenEditCommand=Z;exports.ConfirmZenEditCommand=L;exports.OpenZenEditorOperation=w;
package/lib/es/index.js CHANGED
@@ -1,7 +1,8 @@
1
1
  var he = Object.defineProperty;
2
2
  var _e = (t, e, i) => e in t ? he(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i;
3
3
  var E = (t, e, i) => _e(t, typeof e != "symbol" ? e + "" : e, i);
4
- import { CommandType as w, createIdentifier as fe, RxDisposable as ge, DEFAULT_EMPTY_DOCUMENT_VALUE as ve, DocumentFlavor as pe, UniverInstanceType as T, DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY as H, DOCS_NORMAL_EDITOR_UNIT_ID_KEY as K, OnLifecycle as Q, LifecycleStages as ee, Inject as z, IUniverInstanceService as D, ICommandService as j, IUndoRedoService as me, useDependency as U, FOCUSING_DOC as Se, FOCUSING_UNIVER_EDITOR as Ee, EDITOR_ACTIVATED as Ie, FOCUSING_EDITOR_STANDALONE as Ce, Injector as te, Disposable as Oe, Plugin as Re, Tools as ye, LocaleService as Te } from "@univerjs/core";
4
+ import { CommandType as w, RxDisposable as fe, DEFAULT_EMPTY_DOCUMENT_VALUE as ge, DocumentFlavor as ve, UniverInstanceType as T, DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY as H, DOCS_NORMAL_EDITOR_UNIT_ID_KEY as K, OnLifecycle as Q, LifecycleStages as ee, IUniverInstanceService as D, ICommandService as j, IUndoRedoService as pe, FOCUSING_DOC as me, FOCUSING_UNIVER_EDITOR as Se, EDITOR_ACTIVATED as Ee, FOCUSING_EDITOR_STANDALONE as Ie, Disposable as Ce, Plugin as Oe, Tools as Re, LocaleService as ye } from "@univerjs/core";
5
+ import { createIdentifier as Te, Inject as z, Injector as te } from "@wendellhu/redi";
5
6
  import { DocSkeletonManagerService as X, VIEWPORT_KEY as be, RichTextEditingMutation as Ne, getDocObject as ze, TextSelectionManagerService as xe } from "@univerjs/docs";
6
7
  import { DeviceInputEventType as L, IRenderManagerService as ne } from "@univerjs/engine-render";
7
8
  import { getEditorObject as Me, IEditorBridgeService as Z, getCurrentRangeDisable$ as Pe } from "@univerjs/sheets-ui";
@@ -9,6 +10,7 @@ import { IZenZoneService as x, KeyCode as V, MenuGroup as Ue, MenuItemType as we
9
10
  import { BehaviorSubject as Ve, takeUntil as Ae } from "rxjs";
10
11
  import { WorkbookEditablePermission as ke, WorksheetEditPermission as $e, WorksheetSetCellValuePermission as Be, WorksheetSetCellStylePermission as Fe, RangeProtectionPermissionEditPoint as We } from "@univerjs/sheets";
11
12
  import Ye, { forwardRef as A, useRef as ie, createElement as k, useEffect as He } from "react";
13
+ import { useDependency as U } from "@wendellhu/redi/react-bindings";
12
14
  import G from "clsx";
13
15
  const $ = {
14
16
  id: "zen-editor.operation.open-zen-editor",
@@ -34,7 +36,7 @@ class Ke {
34
36
  this._position$.next(e);
35
37
  }
36
38
  }
37
- const B = fe(
39
+ const B = Te(
38
40
  "univer.sheet-zen-editor-manager.service"
39
41
  );
40
42
  var Xe = Object.defineProperty, Ge = Object.getOwnPropertyDescriptor, qe = (t, e, i, n) => {
@@ -43,7 +45,7 @@ var Xe = Object.defineProperty, Ge = Object.getOwnPropertyDescriptor, qe = (t, e
43
45
  return n && r && Xe(e, i, r), r;
44
46
  }, m = (t, e) => (i, n) => e(i, n, t);
45
47
  const _ = "__defaultDocumentZenEditorSpecialUnitId_20231218__";
46
- let N = class extends ge {
48
+ let N = class extends fe {
47
49
  constructor(e, i, n, r, o, s, c, a) {
48
50
  super();
49
51
  E(this, "_zenEditorInitialState", !1);
@@ -56,7 +58,7 @@ let N = class extends ge {
56
58
  const e = {
57
59
  id: _,
58
60
  body: {
59
- dataStream: `${ve}`,
61
+ dataStream: `${ge}`,
60
62
  textRuns: [],
61
63
  customBlocks: [],
62
64
  paragraphs: [
@@ -70,7 +72,7 @@ let N = class extends ge {
70
72
  width: 595,
71
73
  height: 842
72
74
  },
73
- documentFlavor: pe.MODERN,
75
+ documentFlavor: ve.MODERN,
74
76
  marginTop: 50,
75
77
  marginBottom: 50,
76
78
  marginRight: 40,
@@ -192,7 +194,7 @@ N = qe([
192
194
  m(3, j),
193
195
  m(4, x),
194
196
  m(5, Z),
195
- m(6, me),
197
+ m(6, pe),
196
198
  m(7, z(xe))
197
199
  ], N);
198
200
  const F = {
@@ -385,7 +387,7 @@ const Et = {
385
387
  binding: V.ESC
386
388
  };
387
389
  function de(t) {
388
- return t.getContextValue(Se) && t.getContextValue(Ee) && t.getContextValue(Ie) && !t.getContextValue(Ce);
390
+ return t.getContextValue(me) && t.getContextValue(Se) && t.getContextValue(Ee) && !t.getContextValue(Ie);
389
391
  }
390
392
  var Ct = Object.defineProperty, Ot = Object.getOwnPropertyDescriptor, Rt = (t, e, i, n) => {
391
393
  for (var r = n > 1 ? void 0 : n ? Ot(e, i) : e, o = t.length - 1, s; o >= 0; o--)
@@ -393,7 +395,7 @@ var Ct = Object.defineProperty, Ot = Object.getOwnPropertyDescriptor, Rt = (t, e
393
395
  return n && r && Ct(e, i, r), r;
394
396
  }, R = (t, e) => (i, n) => e(i, n, t);
395
397
  const yt = {};
396
- let y = class extends Oe {
398
+ let y = class extends Ce {
397
399
  constructor(t, e, i, n, r, o) {
398
400
  super(), this._config = t, this._injector = e, this._zenZoneService = i, this._commandService = n, this._menuService = r, this._shortcutService = o, this._initialize();
399
401
  }
@@ -436,9 +438,9 @@ var Tt = Object.defineProperty, bt = Object.getOwnPropertyDescriptor, Nt = (t, e
436
438
  (s = t[o]) && (r = (n ? s(e, i, r) : s(r)) || r);
437
439
  return n && r && Tt(e, i, r), r;
438
440
  }, q = (t, e) => (i, n) => e(i, n, t), b;
439
- let J = (b = class extends Re {
441
+ let J = (b = class extends Oe {
440
442
  constructor(t = {}, e, i) {
441
- super(), this._config = t, this._injector = e, this._localeService = i, this._initializeDependencies(this._injector), this._config = ye.deepMerge({}, yt, this._config);
443
+ super(), this._config = t, this._injector = e, this._localeService = i, this._initializeDependencies(this._injector), this._config = Re.deepMerge({}, yt, this._config);
442
444
  }
443
445
  _initializeDependencies(t) {
444
446
  [
@@ -455,7 +457,7 @@ let J = (b = class extends Re {
455
457
  }, E(b, "pluginName", "zen-editor"), E(b, "type", T.UNIVER_DOC), b);
456
458
  J = Nt([
457
459
  q(1, z(te)),
458
- q(2, z(Te))
460
+ q(2, z(ye))
459
461
  ], J);
460
462
  export {
461
463
  F as CancelZenEditCommand,
@@ -1,5 +1,6 @@
1
- import { Disposable, ICommandService, Injector } from '@univerjs/core';
1
+ import { Disposable, ICommandService } from '@univerjs/core';
2
2
  import { MenuConfig, IMenuService, IShortcutService, IZenZoneService } from '@univerjs/ui';
3
+ import { Injector } from '@wendellhu/redi';
3
4
 
4
5
  export interface IUniverSheetsZenEditorUIConfig {
5
6
  menu: MenuConfig;
@@ -1,4 +1,5 @@
1
- import { Injector, LocaleService, Plugin, UniverInstanceType } from '@univerjs/core';
1
+ import { LocaleService, Plugin, UniverInstanceType } from '@univerjs/core';
2
+ import { Injector } from '@wendellhu/redi';
2
3
  import { IUniverSheetsZenEditorUIConfig } from './controllers/zen-editor-ui.controller';
3
4
 
4
5
  export declare class UniverSheetsZenEditorPlugin extends Plugin {
@@ -1,4 +1,5 @@
1
- import { IDisposable, Nullable } from '@univerjs/core';
1
+ import { Nullable } from '@univerjs/core';
2
+ import { IDisposable } from '@wendellhu/redi';
2
3
  import { Observable } from 'rxjs';
3
4
 
4
5
  export interface IZenEditorManagerService {
@@ -16,4 +17,4 @@ export declare class ZenEditorManagerService implements IDisposable {
16
17
  getPosition(): Readonly<Nullable<DOMRect>>;
17
18
  private _refresh;
18
19
  }
19
- export declare const IZenEditorManagerService: import('@univerjs/core').IdentifierDecorator<ZenEditorManagerService>;
20
+ export declare const IZenEditorManagerService: import('@wendellhu/redi').IdentifierDecorator<ZenEditorManagerService>;
@@ -1,4 +1,4 @@
1
1
  import { IMenuButtonItem } from '@univerjs/ui';
2
- import { IAccessor } from '@univerjs/core';
2
+ import { IAccessor } from '@wendellhu/redi';
3
3
 
4
4
  export declare function ZenEditorMenuItemFactory(accessor: IAccessor): IMenuButtonItem;
package/lib/umd/index.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(d,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@univerjs/core"),require("@univerjs/docs"),require("@univerjs/engine-render"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("rxjs"),require("@univerjs/sheets"),require("react"),require("clsx")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/docs","@univerjs/engine-render","@univerjs/sheets-ui","@univerjs/ui","rxjs","@univerjs/sheets","react","clsx"],s):(d=typeof globalThis<"u"?globalThis:d||self,s(d.UniverSheetsZenEditor={},d.UniverCore,d.UniverDocs,d.UniverEngineRender,d.UniverSheetsUi,d.UniverUi,d.rxjs,d.UniverSheets,d.React,d.clsx))})(this,function(d,s,S,U,b,v,F,j,E,W){"use strict";var ze=Object.defineProperty;var Ue=(d,s,S)=>s in d?ze(d,s,{enumerable:!0,configurable:!0,writable:!0,value:S}):d[s]=S;var N=(d,s,S)=>Ue(d,typeof s!="symbol"?s+"":s,S);var A;const D={id:"zen-editor.operation.open-zen-editor",type:s.CommandType.OPERATION,handler:n=>!0};class J{constructor(){N(this,"_position",null);N(this,"_position$",new F.BehaviorSubject(null));N(this,"position$",this._position$.asObservable())}dispose(){this._position$.complete(),this._position=null}setPosition(t){this._position=t,this._refresh(t)}getPosition(){return this._position}_refresh(t){this._position$.next(t)}}const V=s.createIdentifier("univer.sheet-zen-editor-manager.service");var Q=Object.defineProperty,ee=Object.getOwnPropertyDescriptor,te=(n,t,i,e)=>{for(var r=e>1?void 0:e?ee(t,i):t,c=n.length-1,o;c>=0;c--)(o=n[c])&&(r=(e?o(t,i,r):o(r))||r);return e&&r&&Q(t,i,r),r},C=(n,t)=>(i,e)=>t(i,e,n);const h="__defaultDocumentZenEditorSpecialUnitId_20231218__";let P=class extends s.RxDisposable{constructor(t,i,e,r,c,o,a,l){super();N(this,"_zenEditorInitialState",!1);this._univerInstanceService=t,this._zenEditorManagerService=i,this._renderManagerService=e,this._commandService=r,this._zenZoneService=c,this._editorBridgeService=o,this._undoRedoService=a,this._textSelectionManagerService=l,this._initialize()}_initialize(){this._syncZenEditorSize(),this._commandExecutedListener()}_createZenEditorInstance(){const t={id:h,body:{dataStream:`${s.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],customBlocks:[],paragraphs:[{startIndex:0}]},documentStyle:{pageSize:{width:595,height:842},documentFlavor:s.DocumentFlavor.MODERN,marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}},drawings:{},drawingsOrder:[]};return this._univerInstanceService.createUnit(s.UniverInstanceType.UNIVER_DOC,t)}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe(F.takeUntil(this.dispose$)).subscribe(t=>{var l;if(t==null)return;const i=b.getEditorObject(h,this._renderManagerService),e=this._univerInstanceService.getUniverDocInstance(h);if(i==null||e==null)return;const{width:r,height:c}=t,{engine:o}=i,a=(l=this._renderManagerService.getRenderById(h))==null?void 0:l.with(S.DocSkeletonManagerService).getSkeleton();requestIdleCallback(()=>{o.resizeBySize(r,c),this._calculatePagePosition(i),a&&this._textSelectionManagerService.refreshSelection()})})}_handleOpenZenEditor(){var c;this._zenEditorInitialState||(this._createZenEditorInstance(),this._zenEditorInitialState=!0),this._zenZoneService.open();const t=this._univerInstanceService.getCurrentUnitForType(s.UniverInstanceType.UNIVER_SHEET);this._undoRedoService.clearUndoRedo(h),this._univerInstanceService.focusUnit(h),this._univerInstanceService.setCurrentUnitForType(h),this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:U.DeviceInputEventType.PointerDown,unitId:(c=t==null?void 0:t.getUnitId())!=null?c:""});const e=this._editorBridgeService.getLatestEditCellState();if(e==null)return;this._editorSyncHandler(e);const r=[{startOffset:0,endOffset:0}];this._textSelectionManagerService.replaceTextRanges(r)}_editorSyncHandler(t){var o,a;const i=(o=t.documentLayoutObject.documentModel)==null?void 0:o.getBody(),e=i==null?void 0:i.dataStream,r=i==null?void 0:i.paragraphs;let c=[];e==null||r==null||((a=i==null?void 0:i.textRuns)!=null&&a.length&&(c=i==null?void 0:i.textRuns),this._syncContentAndRender(h,e,r,c))}_syncContentAndRender(t,i,e,r=[],c=[],o={},a=[],l=[]){var O;const g=[h,s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,s.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY],u=(O=this._renderManagerService.getRenderById(t))==null?void 0:O.with(S.DocSkeletonManagerService),I=u==null?void 0:u.getSkeleton(),p=this._univerInstanceService.getUniverDocInstance(t),m=u==null?void 0:u.getViewModel();if(p==null||m==null||I==null)return;const _=p.getBody(),z=p.getSnapshot();_.dataStream=i,_.paragraphs=e,_.customBlocks=c,_.customRanges=l,z.drawings=o,z.drawingsOrder=a,t===s.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY&&(_.textRuns=[]),r.length>0&&(_.textRuns=r),m.reset(p);const R=this._getDocObject();R!=null&&(I.calculate(),g.includes(t)&&R.document.makeDirty())}_calculatePagePosition(t){const{document:i,scene:e,docBackground:r}=t,c=e==null?void 0:e.getParent(),{width:o,height:a,pageMarginLeft:l,pageMarginTop:g}=i;if(c==null||o===Number.POSITIVE_INFINITY||a===Number.POSITIVE_INFINITY)return;const{width:u,height:I}=c;let p=0,m=0,_=0,z=0,R=Number.POSITIVE_INFINITY;const{scaleX:O,scaleY:Re}=e.getAncestorScale();u>(o+l*2)*O?(p=u/2-o*O/2,p/=O,_=(u-l*2)/O,R=0):(p=l,_=o+l*2,R=(_-u/O)/2),I>a?(m=I/2-a/2,z=(I-g*2)/Re):(m=g,z=a+g*2),e.resize(_,z+200),i.translate(p,m),r.translate(p,m);const k=e.getViewport(S.VIEWPORT_KEY.VIEW_MAIN);if(R!==Number.POSITIVE_INFINITY&&k!=null){const Ne=k.transScroll2ViewportScrollValue(R,0).x;k.scrollTo({x:Ne})}return this}_commandExecutedListener(){const t=[D.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{t.includes(e.id)&&this._handleOpenZenEditor()}));const i=[S.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(i.includes(e.id)){const r=e.params,{unitId:c}=r;if(c===h){const o=this._univerInstanceService.getUniverDocInstance(c),a=o==null?void 0:o.getBody(),l=a==null?void 0:a.dataStream,g=a==null?void 0:a.paragraphs,u=a==null?void 0:a.textRuns,I=a==null?void 0:a.customBlocks,p=o==null?void 0:o.getDrawings(),m=o==null?void 0:o.getDrawingsOrder(),_=o==null?void 0:o.getCustomRanges();if(this._editorBridgeService.changeEditorDirty(!0),l==null||g==null)return;this._syncContentAndRender(s.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,l,g,u,I,p,m,_)}}}))}_getDocObject(){return S.getDocObject(this._univerInstanceService,this._renderManagerService)}};P=te([s.OnLifecycle(s.LifecycleStages.Steady,P),C(0,s.IUniverInstanceService),C(1,V),C(2,U.IRenderManagerService),C(3,s.ICommandService),C(4,v.IZenZoneService),C(5,b.IEditorBridgeService),C(6,s.IUndoRedoService),C(7,s.Inject(S.TextSelectionManagerService))],P);const w={id:"zen-editor.command.cancel-zen-edit",type:s.CommandType.COMMAND,handler:async n=>{const t=n.get(v.IZenZoneService),i=n.get(b.IEditorBridgeService),e=n.get(s.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:U.DeviceInputEventType.Keyboard,keycode:v.KeyCode.ESC,unitId:""}),t.close();const c=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_SHEET);return c?(e.focusUnit(c.getUnitId()),i.refreshEditCellState(),!0):!1}},Z={id:"zen-editor.command.confirm-zen-edit",type:s.CommandType.COMMAND,handler:async n=>{const t=n.get(v.IZenZoneService),i=n.get(b.IEditorBridgeService),e=n.get(s.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:U.DeviceInputEventType.PointerDown,unitId:""}),t.close();const c=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_SHEET);return c?(e.focusUnit(c.getUnitId()),i.refreshEditCellState(),!0):!1}};function ne(n){return{id:D.id,group:v.MenuGroup.CONTEXT_MENU_OTHERS,type:v.MenuItemType.BUTTON,title:"rightClick.zenEditor",icon:"AmplifySingle",positions:[v.MenuPosition.CONTEXT_MENU],disabled$:b.getCurrentRangeDisable$(n,{workbookTypes:[j.WorkbookEditablePermission],worksheetTypes:[j.WorksheetEditPermission,j.WorksheetSetCellValuePermission,j.WorksheetSetCellStylePermission],rangeTypes:[j.RangeProtectionPermissionEditPoint]})}}var Y={exports:{}},L={};/**
1
+ (function(d,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("@wendellhu/redi"),require("@univerjs/docs"),require("@univerjs/engine-render"),require("@univerjs/sheets-ui"),require("@univerjs/ui"),require("rxjs"),require("@univerjs/sheets"),require("react"),require("@wendellhu/redi/react-bindings"),require("clsx")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@wendellhu/redi","@univerjs/docs","@univerjs/engine-render","@univerjs/sheets-ui","@univerjs/ui","rxjs","@univerjs/sheets","react","@wendellhu/redi/react-bindings","clsx"],c):(d=typeof globalThis<"u"?globalThis:d||self,c(d.UniverSheetsZenEditor={},d.UniverCore,d["@wendellhu/redi"],d.UniverDocs,d.UniverEngineRender,d.UniverSheetsUi,d.UniverUi,d.rxjs,d.UniverSheets,d.React,d["@wendellhu/redi/react-bindings"],d.clsx))})(this,function(d,c,_,z,U,j,v,Y,x,E,k,K){"use strict";var Ue=Object.defineProperty;var je=(d,c,_)=>c in d?Ue(d,c,{enumerable:!0,configurable:!0,writable:!0,value:_}):d[c]=_;var N=(d,c,_)=>je(d,typeof c!="symbol"?c+"":c,_);var V;const P={id:"zen-editor.operation.open-zen-editor",type:c.CommandType.OPERATION,handler:t=>!0};class ee{constructor(){N(this,"_position",null);N(this,"_position$",new Y.BehaviorSubject(null));N(this,"position$",this._position$.asObservable())}dispose(){this._position$.complete(),this._position=null}setPosition(n){this._position=n,this._refresh(n)}getPosition(){return this._position}_refresh(n){this._position$.next(n)}}const B=_.createIdentifier("univer.sheet-zen-editor-manager.service");var ne=Object.defineProperty,te=Object.getOwnPropertyDescriptor,ie=(t,n,i,e)=>{for(var r=e>1?void 0:e?te(n,i):n,o=t.length-1,s;o>=0;o--)(s=t[o])&&(r=(e?s(n,i,r):s(r))||r);return e&&r&&ne(n,i,r),r},C=(t,n)=>(i,e)=>n(i,e,t);const f="__defaultDocumentZenEditorSpecialUnitId_20231218__";let w=class extends c.RxDisposable{constructor(n,i,e,r,o,s,a,l){super();N(this,"_zenEditorInitialState",!1);this._univerInstanceService=n,this._zenEditorManagerService=i,this._renderManagerService=e,this._commandService=r,this._zenZoneService=o,this._editorBridgeService=s,this._undoRedoService=a,this._textSelectionManagerService=l,this._initialize()}_initialize(){this._syncZenEditorSize(),this._commandExecutedListener()}_createZenEditorInstance(){const n={id:f,body:{dataStream:`${c.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],customBlocks:[],paragraphs:[{startIndex:0}]},documentStyle:{pageSize:{width:595,height:842},documentFlavor:c.DocumentFlavor.MODERN,marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}},drawings:{},drawingsOrder:[]};return this._univerInstanceService.createUnit(c.UniverInstanceType.UNIVER_DOC,n)}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe(Y.takeUntil(this.dispose$)).subscribe(n=>{var l;if(n==null)return;const i=j.getEditorObject(f,this._renderManagerService),e=this._univerInstanceService.getUniverDocInstance(f);if(i==null||e==null)return;const{width:r,height:o}=n,{engine:s}=i,a=(l=this._renderManagerService.getRenderById(f))==null?void 0:l.with(z.DocSkeletonManagerService).getSkeleton();requestIdleCallback(()=>{s.resizeBySize(r,o),this._calculatePagePosition(i),a&&this._textSelectionManagerService.refreshSelection()})})}_handleOpenZenEditor(){var o;this._zenEditorInitialState||(this._createZenEditorInstance(),this._zenEditorInitialState=!0),this._zenZoneService.open();const n=this._univerInstanceService.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);this._undoRedoService.clearUndoRedo(f),this._univerInstanceService.focusUnit(f),this._univerInstanceService.setCurrentUnitForType(f),this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:U.DeviceInputEventType.PointerDown,unitId:(o=n==null?void 0:n.getUnitId())!=null?o:""});const e=this._editorBridgeService.getLatestEditCellState();if(e==null)return;this._editorSyncHandler(e);const r=[{startOffset:0,endOffset:0}];this._textSelectionManagerService.replaceTextRanges(r)}_editorSyncHandler(n){var s,a;const i=(s=n.documentLayoutObject.documentModel)==null?void 0:s.getBody(),e=i==null?void 0:i.dataStream,r=i==null?void 0:i.paragraphs;let o=[];e==null||r==null||((a=i==null?void 0:i.textRuns)!=null&&a.length&&(o=i==null?void 0:i.textRuns),this._syncContentAndRender(f,e,r,o))}_syncContentAndRender(n,i,e,r=[],o=[],s={},a=[],l=[]){var O;const p=[f,c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY],u=(O=this._renderManagerService.getRenderById(n))==null?void 0:O.with(z.DocSkeletonManagerService),I=u==null?void 0:u.getSkeleton(),S=this._univerInstanceService.getUniverDocInstance(n),m=u==null?void 0:u.getViewModel();if(S==null||m==null||I==null)return;const h=S.getBody(),b=S.getSnapshot();h.dataStream=i,h.paragraphs=e,h.customBlocks=o,h.customRanges=l,b.drawings=s,b.drawingsOrder=a,n===c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY&&(h.textRuns=[]),r.length>0&&(h.textRuns=r),m.reset(S);const R=this._getDocObject();R!=null&&(I.calculate(),p.includes(n)&&R.document.makeDirty())}_calculatePagePosition(n){const{document:i,scene:e,docBackground:r}=n,o=e==null?void 0:e.getParent(),{width:s,height:a,pageMarginLeft:l,pageMarginTop:p}=i;if(o==null||s===Number.POSITIVE_INFINITY||a===Number.POSITIVE_INFINITY)return;const{width:u,height:I}=o;let S=0,m=0,h=0,b=0,R=Number.POSITIVE_INFINITY;const{scaleX:O,scaleY:ze}=e.getAncestorScale();u>(s+l*2)*O?(S=u/2-s*O/2,S/=O,h=(u-l*2)/O,R=0):(S=l,h=s+l*2,R=(h-u/O)/2),I>a?(m=I/2-a/2,b=(I-p*2)/ze):(m=p,b=a+p*2),e.resize(h,b+200),i.translate(S,m),r.translate(S,m);const W=e.getViewport(z.VIEWPORT_KEY.VIEW_MAIN);if(R!==Number.POSITIVE_INFINITY&&W!=null){const be=W.transScroll2ViewportScrollValue(R,0).x;W.scrollTo({x:be})}return this}_commandExecutedListener(){const n=[P.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{n.includes(e.id)&&this._handleOpenZenEditor()}));const i=[z.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(i.includes(e.id)){const r=e.params,{unitId:o}=r;if(o===f){const s=this._univerInstanceService.getUniverDocInstance(o),a=s==null?void 0:s.getBody(),l=a==null?void 0:a.dataStream,p=a==null?void 0:a.paragraphs,u=a==null?void 0:a.textRuns,I=a==null?void 0:a.customBlocks,S=s==null?void 0:s.getDrawings(),m=s==null?void 0:s.getDrawingsOrder(),h=s==null?void 0:s.getCustomRanges();if(this._editorBridgeService.changeEditorDirty(!0),l==null||p==null)return;this._syncContentAndRender(c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,l,p,u,I,S,m,h)}}}))}_getDocObject(){return z.getDocObject(this._univerInstanceService,this._renderManagerService)}};w=ie([c.OnLifecycle(c.LifecycleStages.Steady,w),C(0,c.IUniverInstanceService),C(1,B),C(2,U.IRenderManagerService),C(3,c.ICommandService),C(4,v.IZenZoneService),C(5,j.IEditorBridgeService),C(6,c.IUndoRedoService),C(7,_.Inject(z.TextSelectionManagerService))],w);const Z={id:"zen-editor.command.cancel-zen-edit",type:c.CommandType.COMMAND,handler:async t=>{const n=t.get(v.IZenZoneService),i=t.get(j.IEditorBridgeService),e=t.get(c.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:U.DeviceInputEventType.Keyboard,keycode:v.KeyCode.ESC,unitId:""}),n.close();const o=e.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return o?(e.focusUnit(o.getUnitId()),i.refreshEditCellState(),!0):!1}},L={id:"zen-editor.command.confirm-zen-edit",type:c.CommandType.COMMAND,handler:async t=>{const n=t.get(v.IZenZoneService),i=t.get(j.IEditorBridgeService),e=t.get(c.IUniverInstanceService);i.isVisible().visible&&i.changeVisible({visible:!1,eventType:U.DeviceInputEventType.PointerDown,unitId:""}),n.close();const o=e.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return o?(e.focusUnit(o.getUnitId()),i.refreshEditCellState(),!0):!1}};function re(t){return{id:P.id,group:v.MenuGroup.CONTEXT_MENU_OTHERS,type:v.MenuItemType.BUTTON,title:"rightClick.zenEditor",icon:"AmplifySingle",positions:[v.MenuPosition.CONTEXT_MENU],disabled$:j.getCurrentRangeDisable$(t,{workbookTypes:[x.WorkbookEditablePermission],worksheetTypes:[x.WorksheetEditPermission,x.WorksheetSetCellValuePermission,x.WorksheetSetCellStylePermission],rangeTypes:[x.RangeProtectionPermissionEditPoint]})}}var H={exports:{}},A={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.min.js
4
4
  *
@@ -6,4 +6,4 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var ie=E,re=Symbol.for("react.element"),se=Symbol.for("react.fragment"),oe=Object.prototype.hasOwnProperty,ce=ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,ae={key:!0,ref:!0,__self:!0,__source:!0};function K(n,t,i){var e,r={},c=null,o=null;i!==void 0&&(c=""+i),t.key!==void 0&&(c=""+t.key),t.ref!==void 0&&(o=t.ref);for(e in t)oe.call(t,e)&&!ae.hasOwnProperty(e)&&(r[e]=t[e]);if(n&&n.defaultProps)for(e in t=n.defaultProps,t)r[e]===void 0&&(r[e]=t[e]);return{$$typeof:re,type:n,key:c,ref:o,props:r,_owner:ce.current}}L.Fragment=se,L.jsx=K,L.jsxs=K,Y.exports=L;var y=Y.exports,f=function(){return f=Object.assign||function(n){for(var t,i=1,e=arguments.length;i<e;i++){t=arguments[i];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},f.apply(this,arguments)},de=function(n,t){var i={};for(var e in n)Object.prototype.hasOwnProperty.call(n,e)&&t.indexOf(e)<0&&(i[e]=n[e]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,e=Object.getOwnPropertySymbols(n);r<e.length;r++)t.indexOf(e[r])<0&&Object.prototype.propertyIsEnumerable.call(n,e[r])&&(i[e[r]]=n[e[r]]);return i},B=E.forwardRef(function(n,t){var i=n.icon,e=n.id,r=n.className,c=n.extend,o=de(n,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(e," ").concat(r||"").trim(),l=E.useRef("_".concat(ve()));return H(i,"".concat(e),{defIds:i.defIds,idSuffix:l.current},f({ref:t,className:a},o),c)});function H(n,t,i,e,r){return E.createElement(n.tag,f(f({key:t},le(n,i,r)),e),(ue(n,i).children||[]).map(function(c,o){return H(c,"".concat(t,"-").concat(n.tag,"-").concat(o),i,void 0,r)}))}function le(n,t,i){var e=f({},n.attrs);i!=null&&i.colorChannel1&&e.fill==="colorChannel1"&&(e.fill=i.colorChannel1);var r=t.defIds;return!r||r.length===0||(n.tag==="use"&&e["xlink:href"]&&(e["xlink:href"]=e["xlink:href"]+t.idSuffix),Object.entries(e).forEach(function(c){var o=c[0],a=c[1];typeof a=="string"&&(e[o]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),e}function ue(n,t){var i,e=t.defIds;return!e||e.length===0?n:n.tag==="defs"&&(!((i=n.children)===null||i===void 0)&&i.length)?f(f({},n),{children:n.children.map(function(r){return typeof r.attrs.id=="string"&&e&&e.indexOf(r.attrs.id)>-1?f(f({},r),{attrs:f(f({},r.attrs),{id:r.attrs.id+t.idSuffix})}):r})}):n}function ve(){return Math.random().toString(36).substring(2,8)}B.displayName="UniverIcon";var _e={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},X=E.forwardRef(function(n,t){return E.createElement(B,Object.assign({},n,{id:"check-mark-single",ref:t,icon:_e}))});X.displayName="CheckMarkSingle";var he={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.71274 2.86421C3.47843 2.6299 3.09853 2.6299 2.86421 2.86421C2.6299 3.09853 2.6299 3.47843 2.86421 3.71274L7.15154 8.00007L2.86421 12.2874C2.6299 12.5217 2.6299 12.9016 2.86421 13.1359C3.09853 13.3702 3.47843 13.3702 3.71274 13.1359L8.00007 8.84859L12.2874 13.1359C12.5217 13.3702 12.9016 13.3702 13.1359 13.1359C13.3702 12.9016 13.3702 12.5217 13.1359 12.2874L8.84859 8.00007L13.1359 3.71274C13.3702 3.47843 13.3702 3.09853 13.1359 2.86421C12.9016 2.6299 12.5217 2.6299 12.2874 2.86421L8.00007 7.15154L3.71274 2.86421Z"}}]},$=E.forwardRef(function(n,t){return E.createElement(B,Object.assign({},n,{id:"close-single",ref:t,icon:he}))});$.displayName="CloseSingle";const T={zenEditor:"univer-zen-editor",zenEditorIconWrapper:"univer-zen-editor-icon-wrapper",zenEditorIconContainer:"univer-zen-editor-icon-container",zenEditorIconSuccess:"univer-zen-editor-icon-success",zenEditorIconError:"univer-zen-editor-icon-error",zenEditorCanvasContainer:"univer-zen-editor-canvas-container"},fe="ZEN_EDITOR_PLUGIN_ZEN_EDITOR_COMPONENT";function ge(){const n=E.useRef(null),t=s.useDependency(U.IRenderManagerService),i=s.useDependency(V),e=s.useDependency(s.ICommandService);E.useEffect(()=>{const o=n.current;if(!o)return;const a=t.currentRender$.subscribe(g=>{var I;if(g!==h)return;const u=(I=t.getRenderById(h))==null?void 0:I.engine;u==null||u.setContainer(o)}),l=new ResizeObserver(()=>{const g=o.getBoundingClientRect();i.setPosition(g)});return l.observe(o),()=>{l.unobserve(o),a.unsubscribe()}},[]);function r(){e.executeCommand(w.id)}function c(){e.executeCommand(Z.id)}return y.jsxs("div",{className:T.zenEditor,children:[y.jsxs("div",{className:T.zenEditorIconWrapper,children:[y.jsx("span",{className:W(T.zenEditorIconContainer,T.zenEditorIconError),onClick:r,children:y.jsx($,{style:{fontSize:"22px"}})}),y.jsx("span",{className:W(T.zenEditorIconContainer,T.zenEditorIconSuccess),onClick:c,children:y.jsx(X,{style:{fontSize:"22px"}})})]}),y.jsx("div",{className:T.zenEditorCanvasContainer,ref:n})]})}const pe={id:Z.id,description:"shortcut.sheet.zen-edit-confirm",group:"4_sheet-edit",preconditions:n=>G(n),binding:v.KeyCode.ENTER|v.MetaKeys.ALT},Se={id:w.id,description:"shortcut.sheet.zen-edit-cancel",group:"4_sheet-edit",preconditions:n=>G(n),binding:v.KeyCode.ESC};function G(n){return n.getContextValue(s.FOCUSING_DOC)&&n.getContextValue(s.FOCUSING_UNIVER_EDITOR)&&n.getContextValue(s.EDITOR_ACTIVATED)&&!n.getContextValue(s.FOCUSING_EDITOR_STANDALONE)}var Ie=Object.defineProperty,Ee=Object.getOwnPropertyDescriptor,me=(n,t,i,e)=>{for(var r=e>1?void 0:e?Ee(t,i):t,c=n.length-1,o;c>=0;c--)(o=n[c])&&(r=(e?o(t,i,r):o(r))||r);return e&&r&&Ie(t,i,r),r},x=(n,t)=>(i,e)=>t(i,e,n);const Ce={};let M=class extends s.Disposable{constructor(n,t,i,e,r,c){super(),this._config=n,this._injector=t,this._zenZoneService=i,this._commandService=e,this._menuService=r,this._shortcutService=c,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(fe,ge))}_initCommands(){[D,w,Z].forEach(n=>{this.disposeWithMe(this._commandService.registerCommand(n))})}_initMenus(){const{menu:n={}}=this._config;[ne].forEach(t=>{this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(t),n))})}_initShortcuts(){[pe,Se].forEach(n=>{this.disposeWithMe(this._shortcutService.registerShortcut(n))})}};M=me([s.OnLifecycle(s.LifecycleStages.Rendered,M),x(1,s.Inject(s.Injector)),x(2,v.IZenZoneService),x(3,s.ICommandService),x(4,v.IMenuService),x(5,v.IShortcutService)],M);var Oe=Object.defineProperty,ye=Object.getOwnPropertyDescriptor,Te=(n,t,i,e)=>{for(var r=e>1?void 0:e?ye(t,i):t,c=n.length-1,o;c>=0;c--)(o=n[c])&&(r=(e?o(t,i,r):o(r))||r);return e&&r&&Oe(t,i,r),r},q=(n,t)=>(i,e)=>t(i,e,n);d.UniverSheetsZenEditorPlugin=(A=class extends s.Plugin{constructor(t={},i,e){super(),this._config=t,this._injector=i,this._localeService=e,this._initializeDependencies(this._injector),this._config=s.Tools.deepMerge({},Ce,this._config)}_initializeDependencies(t){[[M,{useFactory:()=>this._injector.createInstance(M,this._config)}],[P],[V,{useClass:J}]].forEach(e=>t.add(e))}},N(A,"pluginName","zen-editor"),N(A,"type",s.UniverInstanceType.UNIVER_DOC),A),d.UniverSheetsZenEditorPlugin=Te([q(1,s.Inject(s.Injector)),q(2,s.Inject(s.LocaleService))],d.UniverSheetsZenEditorPlugin),d.CancelZenEditCommand=w,d.ConfirmZenEditCommand=Z,d.OpenZenEditorOperation=D,Object.defineProperty(d,Symbol.toStringTag,{value:"Module"})});
9
+ */var se=E,oe=Symbol.for("react.element"),ce=Symbol.for("react.fragment"),ae=Object.prototype.hasOwnProperty,de=se.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,le={key:!0,ref:!0,__self:!0,__source:!0};function X(t,n,i){var e,r={},o=null,s=null;i!==void 0&&(o=""+i),n.key!==void 0&&(o=""+n.key),n.ref!==void 0&&(s=n.ref);for(e in n)ae.call(n,e)&&!le.hasOwnProperty(e)&&(r[e]=n[e]);if(t&&t.defaultProps)for(e in n=t.defaultProps,n)r[e]===void 0&&(r[e]=n[e]);return{$$typeof:oe,type:t,key:o,ref:s,props:r,_owner:de.current}}A.Fragment=ce,A.jsx=X,A.jsxs=X,H.exports=A;var y=H.exports,g=function(){return g=Object.assign||function(t){for(var n,i=1,e=arguments.length;i<e;i++){n=arguments[i];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},g.apply(this,arguments)},ue=function(t,n){var i={};for(var e in t)Object.prototype.hasOwnProperty.call(t,e)&&n.indexOf(e)<0&&(i[e]=t[e]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,e=Object.getOwnPropertySymbols(t);r<e.length;r++)n.indexOf(e[r])<0&&Object.prototype.propertyIsEnumerable.call(t,e[r])&&(i[e[r]]=t[e[r]]);return i},F=E.forwardRef(function(t,n){var i=t.icon,e=t.id,r=t.className,o=t.extend,s=ue(t,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(e," ").concat(r||"").trim(),l=E.useRef("_".concat(_e()));return $(i,"".concat(e),{defIds:i.defIds,idSuffix:l.current},g({ref:n,className:a},s),o)});function $(t,n,i,e,r){return E.createElement(t.tag,g(g({key:n},ve(t,i,r)),e),(he(t,i).children||[]).map(function(o,s){return $(o,"".concat(n,"-").concat(t.tag,"-").concat(s),i,void 0,r)}))}function ve(t,n,i){var e=g({},t.attrs);i!=null&&i.colorChannel1&&e.fill==="colorChannel1"&&(e.fill=i.colorChannel1);var r=n.defIds;return!r||r.length===0||(t.tag==="use"&&e["xlink:href"]&&(e["xlink:href"]=e["xlink:href"]+n.idSuffix),Object.entries(e).forEach(function(o){var s=o[0],a=o[1];typeof a=="string"&&(e[s]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(n.idSuffix,")")))})),e}function he(t,n){var i,e=n.defIds;return!e||e.length===0?t:t.tag==="defs"&&(!((i=t.children)===null||i===void 0)&&i.length)?g(g({},t),{children:t.children.map(function(r){return typeof r.attrs.id=="string"&&e&&e.indexOf(r.attrs.id)>-1?g(g({},r),{attrs:g(g({},r.attrs),{id:r.attrs.id+n.idSuffix})}):r})}):t}function _e(){return Math.random().toString(36).substring(2,8)}F.displayName="UniverIcon";var fe={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},G=E.forwardRef(function(t,n){return E.createElement(F,Object.assign({},t,{id:"check-mark-single",ref:n,icon:fe}))});G.displayName="CheckMarkSingle";var ge={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.71274 2.86421C3.47843 2.6299 3.09853 2.6299 2.86421 2.86421C2.6299 3.09853 2.6299 3.47843 2.86421 3.71274L7.15154 8.00007L2.86421 12.2874C2.6299 12.5217 2.6299 12.9016 2.86421 13.1359C3.09853 13.3702 3.47843 13.3702 3.71274 13.1359L8.00007 8.84859L12.2874 13.1359C12.5217 13.3702 12.9016 13.3702 13.1359 13.1359C13.3702 12.9016 13.3702 12.5217 13.1359 12.2874L8.84859 8.00007L13.1359 3.71274C13.3702 3.47843 13.3702 3.09853 13.1359 2.86421C12.9016 2.6299 12.5217 2.6299 12.2874 2.86421L8.00007 7.15154L3.71274 2.86421Z"}}]},q=E.forwardRef(function(t,n){return E.createElement(F,Object.assign({},t,{id:"close-single",ref:n,icon:ge}))});q.displayName="CloseSingle";const T={zenEditor:"univer-zen-editor",zenEditorIconWrapper:"univer-zen-editor-icon-wrapper",zenEditorIconContainer:"univer-zen-editor-icon-container",zenEditorIconSuccess:"univer-zen-editor-icon-success",zenEditorIconError:"univer-zen-editor-icon-error",zenEditorCanvasContainer:"univer-zen-editor-canvas-container"},pe="ZEN_EDITOR_PLUGIN_ZEN_EDITOR_COMPONENT";function Se(){const t=E.useRef(null),n=k.useDependency(U.IRenderManagerService),i=k.useDependency(B),e=k.useDependency(c.ICommandService);E.useEffect(()=>{const s=t.current;if(!s)return;const a=n.currentRender$.subscribe(p=>{var I;if(p!==f)return;const u=(I=n.getRenderById(f))==null?void 0:I.engine;u==null||u.setContainer(s)}),l=new ResizeObserver(()=>{const p=s.getBoundingClientRect();i.setPosition(p)});return l.observe(s),()=>{l.unobserve(s),a.unsubscribe()}},[]);function r(){e.executeCommand(Z.id)}function o(){e.executeCommand(L.id)}return y.jsxs("div",{className:T.zenEditor,children:[y.jsxs("div",{className:T.zenEditorIconWrapper,children:[y.jsx("span",{className:K(T.zenEditorIconContainer,T.zenEditorIconError),onClick:r,children:y.jsx(q,{style:{fontSize:"22px"}})}),y.jsx("span",{className:K(T.zenEditorIconContainer,T.zenEditorIconSuccess),onClick:o,children:y.jsx(G,{style:{fontSize:"22px"}})})]}),y.jsx("div",{className:T.zenEditorCanvasContainer,ref:t})]})}const Ie={id:L.id,description:"shortcut.sheet.zen-edit-confirm",group:"4_sheet-edit",preconditions:t=>J(t),binding:v.KeyCode.ENTER|v.MetaKeys.ALT},Ee={id:Z.id,description:"shortcut.sheet.zen-edit-cancel",group:"4_sheet-edit",preconditions:t=>J(t),binding:v.KeyCode.ESC};function J(t){return t.getContextValue(c.FOCUSING_DOC)&&t.getContextValue(c.FOCUSING_UNIVER_EDITOR)&&t.getContextValue(c.EDITOR_ACTIVATED)&&!t.getContextValue(c.FOCUSING_EDITOR_STANDALONE)}var me=Object.defineProperty,Ce=Object.getOwnPropertyDescriptor,Oe=(t,n,i,e)=>{for(var r=e>1?void 0:e?Ce(n,i):n,o=t.length-1,s;o>=0;o--)(s=t[o])&&(r=(e?s(n,i,r):s(r))||r);return e&&r&&me(n,i,r),r},M=(t,n)=>(i,e)=>n(i,e,t);const ye={};let D=class extends c.Disposable{constructor(t,n,i,e,r,o){super(),this._config=t,this._injector=n,this._zenZoneService=i,this._commandService=e,this._menuService=r,this._shortcutService=o,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(pe,Se))}_initCommands(){[P,Z,L].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}_initMenus(){const{menu:t={}}=this._config;[re].forEach(n=>{this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(n),t))})}_initShortcuts(){[Ie,Ee].forEach(t=>{this.disposeWithMe(this._shortcutService.registerShortcut(t))})}};D=Oe([c.OnLifecycle(c.LifecycleStages.Rendered,D),M(1,_.Inject(_.Injector)),M(2,v.IZenZoneService),M(3,c.ICommandService),M(4,v.IMenuService),M(5,v.IShortcutService)],D);var Te=Object.defineProperty,Re=Object.getOwnPropertyDescriptor,Ne=(t,n,i,e)=>{for(var r=e>1?void 0:e?Re(n,i):n,o=t.length-1,s;o>=0;o--)(s=t[o])&&(r=(e?s(n,i,r):s(r))||r);return e&&r&&Te(n,i,r),r},Q=(t,n)=>(i,e)=>n(i,e,t);d.UniverSheetsZenEditorPlugin=(V=class extends c.Plugin{constructor(n={},i,e){super(),this._config=n,this._injector=i,this._localeService=e,this._initializeDependencies(this._injector),this._config=c.Tools.deepMerge({},ye,this._config)}_initializeDependencies(n){[[D,{useFactory:()=>this._injector.createInstance(D,this._config)}],[w],[B,{useClass:ee}]].forEach(e=>n.add(e))}},N(V,"pluginName","zen-editor"),N(V,"type",c.UniverInstanceType.UNIVER_DOC),V),d.UniverSheetsZenEditorPlugin=Ne([Q(1,_.Inject(_.Injector)),Q(2,_.Inject(c.LocaleService))],d.UniverSheetsZenEditorPlugin),d.CancelZenEditCommand=Z,d.ConfirmZenEditCommand=L,d.OpenZenEditorOperation=P,Object.defineProperty(d,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-zen-editor",
3
- "version": "0.2.4-alpha.0",
3
+ "version": "0.2.4",
4
4
  "private": false,
5
5
  "description": "Zen Editor plugin for Univer Sheets.",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -50,21 +50,23 @@
50
50
  "lib"
51
51
  ],
52
52
  "peerDependencies": {
53
+ "@wendellhu/redi": "0.16.0",
53
54
  "clsx": ">=2.0.0",
54
55
  "react": "^16.9.0 || ^17.0.0 || ^18.0.0",
55
56
  "rxjs": ">=7.0.0",
56
- "@univerjs/docs": "0.2.4-alpha.0",
57
- "@univerjs/core": "0.2.4-alpha.0",
58
- "@univerjs/engine-render": "0.2.4-alpha.0",
59
- "@univerjs/sheets-ui": "0.2.4-alpha.0",
60
- "@univerjs/sheets": "0.2.4-alpha.0",
61
- "@univerjs/ui": "0.2.4-alpha.0"
57
+ "@univerjs/core": "0.2.4",
58
+ "@univerjs/engine-render": "0.2.4",
59
+ "@univerjs/docs": "0.2.4",
60
+ "@univerjs/sheets": "0.2.4",
61
+ "@univerjs/ui": "0.2.4",
62
+ "@univerjs/sheets-ui": "0.2.4"
62
63
  },
63
64
  "dependencies": {
64
- "@univerjs/icons": "^0.1.64",
65
- "@univerjs/sheets": "0.2.4-alpha.0"
65
+ "@univerjs/icons": "^0.1.65",
66
+ "@univerjs/sheets": "0.2.4"
66
67
  },
67
68
  "devDependencies": {
69
+ "@wendellhu/redi": "0.16.0",
68
70
  "clsx": "^2.1.1",
69
71
  "less": "^4.2.0",
70
72
  "react": "18.3.1",
@@ -72,14 +74,14 @@
72
74
  "typescript": "^5.5.3",
73
75
  "vite": "^5.3.4",
74
76
  "vitest": "^2.0.3",
75
- "@univerjs/design": "0.2.4-alpha.0",
76
- "@univerjs/core": "0.2.4-alpha.0",
77
- "@univerjs/docs": "0.2.4-alpha.0",
78
- "@univerjs/engine-render": "0.2.4-alpha.0",
79
- "@univerjs/shared": "0.2.4-alpha.0",
80
- "@univerjs/sheets-ui": "0.2.4-alpha.0",
81
- "@univerjs/ui": "0.2.4-alpha.0",
82
- "@univerjs/sheets": "0.2.4-alpha.0"
77
+ "@univerjs/core": "0.2.4",
78
+ "@univerjs/design": "0.2.4",
79
+ "@univerjs/engine-render": "0.2.4",
80
+ "@univerjs/docs": "0.2.4",
81
+ "@univerjs/shared": "0.2.4",
82
+ "@univerjs/sheets": "0.2.4",
83
+ "@univerjs/sheets-ui": "0.2.4",
84
+ "@univerjs/ui": "0.2.4"
83
85
  },
84
86
  "univerSpace": {
85
87
  ".": {