@univerjs/sheets-zen-editor 0.23.0 → 0.24.0

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
@@ -67,7 +67,7 @@ const CancelZenEditCommand = {
67
67
  await (0, _univerjs_core.delayAnimationFrame)();
68
68
  }
69
69
  zenZoneEditorService.close();
70
- const currentSheetInstance = univerInstanceManager.getCurrentUnitForType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
70
+ const currentSheetInstance = univerInstanceManager.getCurrentUnitOfType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
71
71
  if (currentSheetInstance) {
72
72
  univerInstanceManager.focusUnit(currentSheetInstance.getUnitId());
73
73
  editorBridgeService.refreshEditCellState();
@@ -93,7 +93,7 @@ const ConfirmZenEditCommand = {
93
93
  const editor = editorService.getEditor(_univerjs_core.DOCS_ZEN_EDITOR_UNIT_ID_KEY);
94
94
  if (editor == null) return false;
95
95
  const renderManagerService = accessor.get(_univerjs_engine_render.IRenderManagerService);
96
- const currentSheetInstance = univerInstanceManager.getCurrentUnitForType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
96
+ const currentSheetInstance = univerInstanceManager.getCurrentUnitOfType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
97
97
  if (currentSheetInstance) {
98
98
  var _renderManagerService;
99
99
  const currentSheetId = currentSheetInstance.getUnitId();
@@ -114,7 +114,7 @@ const ConfirmZenEditCommand = {
114
114
  //#endregion
115
115
  //#region package.json
116
116
  var name = "@univerjs/sheets-zen-editor";
117
- var version = "0.23.0";
117
+ var version = "0.24.0";
118
118
 
119
119
  //#endregion
120
120
  //#region src/config/config.ts
package/lib/es/index.js CHANGED
@@ -66,7 +66,7 @@ const CancelZenEditCommand = {
66
66
  await delayAnimationFrame();
67
67
  }
68
68
  zenZoneEditorService.close();
69
- const currentSheetInstance = univerInstanceManager.getCurrentUnitForType(UniverInstanceType.UNIVER_SHEET);
69
+ const currentSheetInstance = univerInstanceManager.getCurrentUnitOfType(UniverInstanceType.UNIVER_SHEET);
70
70
  if (currentSheetInstance) {
71
71
  univerInstanceManager.focusUnit(currentSheetInstance.getUnitId());
72
72
  editorBridgeService.refreshEditCellState();
@@ -92,7 +92,7 @@ const ConfirmZenEditCommand = {
92
92
  const editor = editorService.getEditor(DOCS_ZEN_EDITOR_UNIT_ID_KEY);
93
93
  if (editor == null) return false;
94
94
  const renderManagerService = accessor.get(IRenderManagerService);
95
- const currentSheetInstance = univerInstanceManager.getCurrentUnitForType(UniverInstanceType.UNIVER_SHEET);
95
+ const currentSheetInstance = univerInstanceManager.getCurrentUnitOfType(UniverInstanceType.UNIVER_SHEET);
96
96
  if (currentSheetInstance) {
97
97
  var _renderManagerService;
98
98
  const currentSheetId = currentSheetInstance.getUnitId();
@@ -113,7 +113,7 @@ const ConfirmZenEditCommand = {
113
113
  //#endregion
114
114
  //#region package.json
115
115
  var name = "@univerjs/sheets-zen-editor";
116
- var version = "0.23.0";
116
+ var version = "0.24.0";
117
117
 
118
118
  //#endregion
119
119
  //#region src/config/config.ts
package/lib/index.js CHANGED
@@ -66,7 +66,7 @@ const CancelZenEditCommand = {
66
66
  await delayAnimationFrame();
67
67
  }
68
68
  zenZoneEditorService.close();
69
- const currentSheetInstance = univerInstanceManager.getCurrentUnitForType(UniverInstanceType.UNIVER_SHEET);
69
+ const currentSheetInstance = univerInstanceManager.getCurrentUnitOfType(UniverInstanceType.UNIVER_SHEET);
70
70
  if (currentSheetInstance) {
71
71
  univerInstanceManager.focusUnit(currentSheetInstance.getUnitId());
72
72
  editorBridgeService.refreshEditCellState();
@@ -92,7 +92,7 @@ const ConfirmZenEditCommand = {
92
92
  const editor = editorService.getEditor(DOCS_ZEN_EDITOR_UNIT_ID_KEY);
93
93
  if (editor == null) return false;
94
94
  const renderManagerService = accessor.get(IRenderManagerService);
95
- const currentSheetInstance = univerInstanceManager.getCurrentUnitForType(UniverInstanceType.UNIVER_SHEET);
95
+ const currentSheetInstance = univerInstanceManager.getCurrentUnitOfType(UniverInstanceType.UNIVER_SHEET);
96
96
  if (currentSheetInstance) {
97
97
  var _renderManagerService;
98
98
  const currentSheetId = currentSheetInstance.getUnitId();
@@ -113,7 +113,7 @@ const ConfirmZenEditCommand = {
113
113
  //#endregion
114
114
  //#region package.json
115
115
  var name = "@univerjs/sheets-zen-editor";
116
- var version = "0.23.0";
116
+ var version = "0.24.0";
117
117
 
118
118
  //#endregion
119
119
  //#region src/config/config.ts
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-ui`),require(`@univerjs/engine-render`),require(`@univerjs/sheets-ui`),require(`@univerjs/ui`),require(`@univerjs/sheets`),require(`rxjs`),require(`@univerjs/design`),require(`react`),require(`react/jsx-runtime`)):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs-ui`,`@univerjs/engine-render`,`@univerjs/sheets-ui`,`@univerjs/ui`,`@univerjs/sheets`,`rxjs`,`@univerjs/design`,`react`,`react/jsx-runtime`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsZenEditor={},e.UniverCore,e.UniverDocsUi,e.UniverEngineRender,e.UniverSheetsUi,e.UniverUi,e.UniverSheets,e.rxjs,e.UniverDesign,e.React,e.React))})(this,function(e,t,n,r,i,a,o,s,c,l,u){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let d={id:`zen-editor.command.open-zen-editor`,type:t.CommandType.COMMAND,handler:async e=>{var r;let o=e.get(a.IZenZoneService),s=e.get(n.IEditorService),c=e.get(i.IEditorBridgeService),l=e.get(t.IUniverInstanceService),u=e.get(a.ISidebarService);u.visible&&(u.close(),await(0,t.delayAnimationFrame)()),o.open();let d=s.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);if(d==null)return!1;let f=c.getLatestEditCellState();if(f==null)return!1;let p=(r=f.documentLayoutObject.documentModel)==null?void 0:r.getSnapshot();if(p==null)return!1;l.focusUnit(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);let{body:m,drawings:h,drawingsOrder:g,tableSource:_,settings:v}=t.Tools.deepClone(p),y={...d.getDocumentData(),body:m,drawings:h,drawingsOrder:g,tableSource:_,settings:v};return d.focus(),d.setDocumentData(y,[{startOffset:0,endOffset:0,collapsed:!0}]),d.clearUndoRedoHistory(),!0}},f={id:`zen-editor.command.cancel-zen-edit`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(a.IZenZoneService),r=e.get(i.IEditorBridgeService),o=e.get(t.IUniverInstanceService),s=e.get(a.ISidebarService);s.visible&&(s.close(),await(0,t.delayAnimationFrame)()),n.close();let c=o.getCurrentUnitForType(t.UniverInstanceType.UNIVER_SHEET);return c?(o.focusUnit(c.getUnitId()),r.refreshEditCellState(),!0):!1}},p={id:`zen-editor.command.confirm-zen-edit`,type:t.CommandType.COMMAND,handler:async e=>{let o=e.get(a.IZenZoneService),s=e.get(i.IEditorBridgeService),c=e.get(t.IUniverInstanceService),l=e.get(n.IEditorService),u=e.get(a.ISidebarService);u.visible&&(u.close(),await(0,t.delayAnimationFrame)()),o.close();let d=l.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);if(d==null)return!1;let f=e.get(r.IRenderManagerService),p=c.getCurrentUnitForType(t.UniverInstanceType.UNIVER_SHEET);if(p){var m;let e=p.getUnitId(),n=(m=f.getRenderById(e))==null?void 0:m.with(i.EditingRenderController);if(n){let e=t.Tools.deepClone(d.getDocumentData());e.documentStyle.documentFlavor=t.DocumentFlavor.UNSPECIFIED,n.submitCellData(new t.DocumentDataModel(e))}return c.focusUnit(p.getUnitId()),s.refreshEditCellState(),!0}return!1}};var m=`@univerjs/sheets-zen-editor`,h=`0.23.0`;let g=`sheets-zen-editor.config`;Symbol(g);let _={};function v(e){let t=e.get(i.IEditorBridgeService);return{id:d.id,type:a.MenuItemType.BUTTON,title:`rightClick.zenEditor`,icon:`AmplifyIcon`,hidden$:(0,i.getCurrentExclusiveRangeInterest$)(e),disabled$:t.currentEditCell$.pipe((0,s.switchMap)(t=>(0,i.getCurrentRangeDisable$)(e,{workbookTypes:[o.WorkbookEditablePermission],worksheetTypes:[o.WorksheetEditPermission,o.WorksheetSetCellValuePermission,o.WorksheetSetCellStylePermission],rangeTypes:[o.RangeProtectionPermissionEditPoint]}).pipe((0,s.map)(e=>{var n,r;return e||((n=t==null||(r=t.documentLayoutObject.documentModel)==null||(r=r.getBody())==null||(r=r.customBlocks)==null?void 0:r.length)==null?0:n)>0}))))}}let y={[a.ContextMenuPosition.MAIN_AREA]:{[a.ContextMenuGroup.OTHERS]:{[d.id]:{order:2,menuItemFactory:v}}}};function b({ref:e,...t}){let{icon:n,id:r,className:i,extend:a,...o}=t,s=`univerjs-icon univerjs-icon-${r} ${i||``}`.trim(),c=(0,l.useRef)(`_${w()}`);return x(n,`${r}`,{defIds:n.defIds,idSuffix:c.current},{ref:e,className:s,...o},a)}function x(e,t,n,r,i){return(0,l.createElement)(e.tag,{key:t,...S(e,n,i),...r},(C(e,n).children||[]).map((r,a)=>x(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function S(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function C(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function w(){return Math.random().toString(36).substring(2,8)}b.displayName=`UniverIcon`;let T={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},E=(0,l.forwardRef)(function(e,t){return(0,l.createElement)(b,Object.assign({},e,{id:`check-mark-icon`,ref:t,icon:T}))});E.displayName=`CheckMarkIcon`;let D={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},O=(0,l.forwardRef)(function(e,t){return(0,l.createElement)(b,Object.assign({},e,{id:`close-icon`,ref:t,icon:D}))});O.displayName=`CloseIcon`;function k(e){"@babel/helpers - typeof";return k=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},k(e)}function A(e,t){if(k(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(k(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function j(e){var t=A(e,`string`);return k(t)==`symbol`?t:t+``}function M(e,t,n){return(t=j(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var N=class extends t.Disposable{constructor(...e){super(...e),M(this,`_position`,null),M(this,`_position$`,new s.BehaviorSubject(null)),M(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)}};let P=(0,t.createIdentifier)(`univer.sheet-zen-editor-manager.service`),F={id:t.DOCS_ZEN_EDITOR_UNIT_ID_KEY,body:{dataStream:`${t.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],tables:[],customBlocks:[],paragraphs:[{startIndex:0}],sectionBreaks:[{startIndex:1}]},tableSource:{},documentStyle:{pageSize:{width:595,height:1/0},documentFlavor:t.DocumentFlavor.MODERN,marginTop:0,marginBottom:0,marginRight:0,marginLeft:0,renderConfig:{vertexAngle:0,centerAngle:0}},drawings:{},drawingsOrder:[]};function I(){let e=(0,l.useRef)(null),r=(0,a.useDependency)(P),i=(0,a.useDependency)(n.IEditorService),o=(0,a.useDependency)(t.ICommandService);(0,l.useEffect)(()=>{let n=e.current;if(!n)return;let a=i.register({editorUnitId:t.DOCS_ZEN_EDITOR_UNIT_ID_KEY,initialSnapshot:F,scrollBar:!0,backScrollOffset:100},n),o=new ResizeObserver(()=>{r.setPosition(n.getBoundingClientRect())});return o.observe(n),()=>{a.dispose(),o.unobserve(n)}},[]);function s(){let e=i.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);e==null||e.blur(),o.executeCommand(f.id)}function d(){let e=i.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);e==null||e.blur(),o.executeCommand(p.id)}let m=`univer-flex univer-w-7 univer-cursor-pointer univer-items-center univer-justify-center univer-transition-colors`;return(0,u.jsxs)(`div`,{className:`univer-absolute univer-inset-0 univer-size-full univer-bg-white dark:!univer-bg-gray-800`,children:[(0,u.jsxs)(`div`,{className:`univer-absolute univer-right-6 univer-top-2 univer-z-10 univer-flex univer-items-center univer-justify-center`,children:[(0,u.jsx)(`span`,{className:(0,c.clsx)(m,`univer-text-red-500 hover:univer-text-red-600`),onClick:s,children:(0,u.jsx)(O,{className:`univer-size-5`})}),(0,u.jsx)(`span`,{className:(0,c.clsx)(m,`univer-text-green-500 hover:univer-text-green-600`),onClick:d,children:(0,u.jsx)(E,{className:`univer-size-5`})})]}),(0,u.jsx)(`div`,{ref:e,className:`univer-absolute univer-inset-0 univer-size-full`})]})}let L={id:p.id,description:`shortcut.sheet.zen-edit-confirm`,group:`4_sheet-edit`,preconditions:e=>z(e),binding:a.KeyCode.ENTER|a.MetaKeys.ALT},R={id:f.id,description:`shortcut.sheet.zen-edit-cancel`,group:`4_sheet-edit`,preconditions:e=>z(e),binding:a.KeyCode.ESC};function z(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&e.getContextValue(t.EDITOR_ACTIVATED)&&!e.getContextValue(t.FOCUSING_EDITOR_STANDALONE)}function B(e,t){return function(n,r){t(n,r,e)}}function V(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 H=class extends t.Disposable{constructor(e,t,n,r){super(),this._zenZoneService=e,this._commandService=t,this._menuManagerService=n,this._shortcutService=r,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(`ZEN_EDITOR_PLUGIN_ZEN_EDITOR_COMPONENT`,I))}_initCommands(){[d,f,p].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initMenus(){this._menuManagerService.mergeMenu(y)}_initShortcuts(){[L,R].forEach(e=>{this.disposeWithMe(this._shortcutService.registerShortcut(e))})}};H=V([B(0,a.IZenZoneService),B(1,t.ICommandService),B(2,a.IMenuManagerService),B(3,a.IShortcutService)],H);let U=class extends t.RxDisposable{constructor(e,t){super(),this._zenEditorManagerService=e,this._renderManagerService=t,this._initialize()}_initialize(){this._syncZenEditorSize()}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe((0,s.takeUntil)(this.dispose$)).subscribe(e=>{if(e==null)return;let{width:n,height:r}=e,a=(0,i.getEditorObject)(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY,this._renderManagerService);a!=null&&requestIdleCallback(()=>{a.engine.resizeBySize(n,r),this._calculatePagePosition(a),this._scrollToTop()})})}_calculatePagePosition(e){let{document:t,scene:r,docBackground:i}=e,a=r==null?void 0:r.getParent(),{width:o,height:s,pageMarginLeft:c,pageMarginTop:l}=t;if(a==null||o===1/0||s===1/0)return;let{width:u,height:d}=a,f=0,p=l,m=0,h=0,g=1/0,{scaleX:_,scaleY:v}=r.getAncestorScale();u>(o+c*2)*_?(f=u/2-o*_/2,f/=_,m=(u-c*2)/_,g=0):(f=c,m=o+c*2,g=(m-u/_)/2),h=d>s?(d-l*2)/v:s+l*2,r.resize(m,h),t.translate(f,p),i.translate(f,p);let y=r.getViewport(n.VIEWPORT_KEY.VIEW_MAIN);if(g!==1/0&&y!=null){let e=y.transScroll2ViewportScrollValue(g,0).x;y.scrollToBarPos({x:e})}return this}_scrollToTop(){var e;let r=(e=this._renderManagerService.getRenderById(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY))==null?void 0:e.with(n.DocBackScrollRenderController);r&&r.scrollToRange({startOffset:0,endOffset:0})}};U=V([B(0,P),B(1,r.IRenderManagerService)],U);let W=class extends t.Plugin{constructor(e=_,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{menu:i,...a}=(0,t.merge)({},_,this._config);i&&this._configService.setConfig(`menu`,i,{merge:!0}),this._configService.setConfig(g,a),this._initializeDependencies(this._injector)}_initializeDependencies(e){[[H],[U],[P,{useClass:N}]].forEach(t=>e.add(t))}onReady(){this._injector.get(H)}onSteady(){this._injector.get(U)}};M(W,`pluginName`,`SHEET_ZEN_EDITOR_PLUGIN`),M(W,`packageName`,m),M(W,`version`,h),M(W,`type`,t.UniverInstanceType.UNIVER_SHEET),W=V([B(1,(0,t.Inject)(t.Injector)),B(2,t.IConfigService)],W),e.CancelZenEditCommand=f,e.ConfirmZenEditCommand=p,e.OpenZenEditorCommand=d,Object.defineProperty(e,`UniverSheetsZenEditorPlugin`,{enumerable:!0,get:function(){return W}})});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`@univerjs/core`),require(`@univerjs/docs-ui`),require(`@univerjs/engine-render`),require(`@univerjs/sheets-ui`),require(`@univerjs/ui`),require(`@univerjs/sheets`),require(`rxjs`),require(`@univerjs/design`),require(`react`),require(`react/jsx-runtime`)):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/docs-ui`,`@univerjs/engine-render`,`@univerjs/sheets-ui`,`@univerjs/ui`,`@univerjs/sheets`,`rxjs`,`@univerjs/design`,`react`,`react/jsx-runtime`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsZenEditor={},e.UniverCore,e.UniverDocsUi,e.UniverEngineRender,e.UniverSheetsUi,e.UniverUi,e.UniverSheets,e.rxjs,e.UniverDesign,e.React,e.React))})(this,function(e,t,n,r,i,a,o,s,c,l,u){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let d={id:`zen-editor.command.open-zen-editor`,type:t.CommandType.COMMAND,handler:async e=>{var r;let o=e.get(a.IZenZoneService),s=e.get(n.IEditorService),c=e.get(i.IEditorBridgeService),l=e.get(t.IUniverInstanceService),u=e.get(a.ISidebarService);u.visible&&(u.close(),await(0,t.delayAnimationFrame)()),o.open();let d=s.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);if(d==null)return!1;let f=c.getLatestEditCellState();if(f==null)return!1;let p=(r=f.documentLayoutObject.documentModel)==null?void 0:r.getSnapshot();if(p==null)return!1;l.focusUnit(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);let{body:m,drawings:h,drawingsOrder:g,tableSource:_,settings:v}=t.Tools.deepClone(p),y={...d.getDocumentData(),body:m,drawings:h,drawingsOrder:g,tableSource:_,settings:v};return d.focus(),d.setDocumentData(y,[{startOffset:0,endOffset:0,collapsed:!0}]),d.clearUndoRedoHistory(),!0}},f={id:`zen-editor.command.cancel-zen-edit`,type:t.CommandType.COMMAND,handler:async e=>{let n=e.get(a.IZenZoneService),r=e.get(i.IEditorBridgeService),o=e.get(t.IUniverInstanceService),s=e.get(a.ISidebarService);s.visible&&(s.close(),await(0,t.delayAnimationFrame)()),n.close();let c=o.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);return c?(o.focusUnit(c.getUnitId()),r.refreshEditCellState(),!0):!1}},p={id:`zen-editor.command.confirm-zen-edit`,type:t.CommandType.COMMAND,handler:async e=>{let o=e.get(a.IZenZoneService),s=e.get(i.IEditorBridgeService),c=e.get(t.IUniverInstanceService),l=e.get(n.IEditorService),u=e.get(a.ISidebarService);u.visible&&(u.close(),await(0,t.delayAnimationFrame)()),o.close();let d=l.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);if(d==null)return!1;let f=e.get(r.IRenderManagerService),p=c.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(p){var m;let e=p.getUnitId(),n=(m=f.getRenderById(e))==null?void 0:m.with(i.EditingRenderController);if(n){let e=t.Tools.deepClone(d.getDocumentData());e.documentStyle.documentFlavor=t.DocumentFlavor.UNSPECIFIED,n.submitCellData(new t.DocumentDataModel(e))}return c.focusUnit(p.getUnitId()),s.refreshEditCellState(),!0}return!1}};var m=`@univerjs/sheets-zen-editor`,h=`0.24.0`;let g=`sheets-zen-editor.config`;Symbol(g);let _={};function v(e){let t=e.get(i.IEditorBridgeService);return{id:d.id,type:a.MenuItemType.BUTTON,title:`rightClick.zenEditor`,icon:`AmplifyIcon`,hidden$:(0,i.getCurrentExclusiveRangeInterest$)(e),disabled$:t.currentEditCell$.pipe((0,s.switchMap)(t=>(0,i.getCurrentRangeDisable$)(e,{workbookTypes:[o.WorkbookEditablePermission],worksheetTypes:[o.WorksheetEditPermission,o.WorksheetSetCellValuePermission,o.WorksheetSetCellStylePermission],rangeTypes:[o.RangeProtectionPermissionEditPoint]}).pipe((0,s.map)(e=>{var n,r;return e||((n=t==null||(r=t.documentLayoutObject.documentModel)==null||(r=r.getBody())==null||(r=r.customBlocks)==null?void 0:r.length)==null?0:n)>0}))))}}let y={[a.ContextMenuPosition.MAIN_AREA]:{[a.ContextMenuGroup.OTHERS]:{[d.id]:{order:2,menuItemFactory:v}}}};function b({ref:e,...t}){let{icon:n,id:r,className:i,extend:a,...o}=t,s=`univerjs-icon univerjs-icon-${r} ${i||``}`.trim(),c=(0,l.useRef)(`_${w()}`);return x(n,`${r}`,{defIds:n.defIds,idSuffix:c.current},{ref:e,className:s,...o},a)}function x(e,t,n,r,i){return(0,l.createElement)(e.tag,{key:t,...S(e,n,i),...r},(C(e,n).children||[]).map((r,a)=>x(r,`${t}-${e.tag}-${a}`,n,void 0,i)))}function S(e,t,n){let r={...e.attrs};n!=null&&n.colorChannel1&&r.fill===`colorChannel1`&&(r.fill=n.colorChannel1),e.tag===`mask`&&r.id&&(r.id+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{e===`mask`&&typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});let{defIds:i}=t;return!i||i.length===0?r:(e.tag===`use`&&r[`xlink:href`]&&(r[`xlink:href`]+=t.idSuffix),Object.entries(r).forEach(([e,n])=>{typeof n==`string`&&(r[e]=n.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))}),r)}function C(e,t){var n;let{defIds:r}=t;return!r||r.length===0?e:e.tag===`defs`&&(n=e.children)!=null&&n.length?{...e,children:e.children.map(e=>typeof e.attrs.id==`string`&&r&&r.includes(e.attrs.id)?{...e,attrs:{...e.attrs,id:e.attrs.id+t.idSuffix}}:e)}:e}function w(){return Math.random().toString(36).substring(2,8)}b.displayName=`UniverIcon`;let T={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},E=(0,l.forwardRef)(function(e,t){return(0,l.createElement)(b,Object.assign({},e,{id:`check-mark-icon`,ref:t,icon:T}))});E.displayName=`CheckMarkIcon`;let D={tag:`svg`,attrs:{xmlns:`http://www.w3.org/2000/svg`,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`}}]},O=(0,l.forwardRef)(function(e,t){return(0,l.createElement)(b,Object.assign({},e,{id:`close-icon`,ref:t,icon:D}))});O.displayName=`CloseIcon`;function k(e){"@babel/helpers - typeof";return k=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},k(e)}function A(e,t){if(k(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(k(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function j(e){var t=A(e,`string`);return k(t)==`symbol`?t:t+``}function M(e,t,n){return(t=j(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var N=class extends t.Disposable{constructor(...e){super(...e),M(this,`_position`,null),M(this,`_position$`,new s.BehaviorSubject(null)),M(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)}};let P=(0,t.createIdentifier)(`univer.sheet-zen-editor-manager.service`),F={id:t.DOCS_ZEN_EDITOR_UNIT_ID_KEY,body:{dataStream:`${t.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],tables:[],customBlocks:[],paragraphs:[{startIndex:0}],sectionBreaks:[{startIndex:1}]},tableSource:{},documentStyle:{pageSize:{width:595,height:1/0},documentFlavor:t.DocumentFlavor.MODERN,marginTop:0,marginBottom:0,marginRight:0,marginLeft:0,renderConfig:{vertexAngle:0,centerAngle:0}},drawings:{},drawingsOrder:[]};function I(){let e=(0,l.useRef)(null),r=(0,a.useDependency)(P),i=(0,a.useDependency)(n.IEditorService),o=(0,a.useDependency)(t.ICommandService);(0,l.useEffect)(()=>{let n=e.current;if(!n)return;let a=i.register({editorUnitId:t.DOCS_ZEN_EDITOR_UNIT_ID_KEY,initialSnapshot:F,scrollBar:!0,backScrollOffset:100},n),o=new ResizeObserver(()=>{r.setPosition(n.getBoundingClientRect())});return o.observe(n),()=>{a.dispose(),o.unobserve(n)}},[]);function s(){let e=i.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);e==null||e.blur(),o.executeCommand(f.id)}function d(){let e=i.getEditor(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY);e==null||e.blur(),o.executeCommand(p.id)}let m=`univer-flex univer-w-7 univer-cursor-pointer univer-items-center univer-justify-center univer-transition-colors`;return(0,u.jsxs)(`div`,{className:`univer-absolute univer-inset-0 univer-size-full univer-bg-white dark:!univer-bg-gray-800`,children:[(0,u.jsxs)(`div`,{className:`univer-absolute univer-right-6 univer-top-2 univer-z-10 univer-flex univer-items-center univer-justify-center`,children:[(0,u.jsx)(`span`,{className:(0,c.clsx)(m,`univer-text-red-500 hover:univer-text-red-600`),onClick:s,children:(0,u.jsx)(O,{className:`univer-size-5`})}),(0,u.jsx)(`span`,{className:(0,c.clsx)(m,`univer-text-green-500 hover:univer-text-green-600`),onClick:d,children:(0,u.jsx)(E,{className:`univer-size-5`})})]}),(0,u.jsx)(`div`,{ref:e,className:`univer-absolute univer-inset-0 univer-size-full`})]})}let L={id:p.id,description:`shortcut.sheet.zen-edit-confirm`,group:`4_sheet-edit`,preconditions:e=>z(e),binding:a.KeyCode.ENTER|a.MetaKeys.ALT},R={id:f.id,description:`shortcut.sheet.zen-edit-cancel`,group:`4_sheet-edit`,preconditions:e=>z(e),binding:a.KeyCode.ESC};function z(e){return e.getContextValue(t.FOCUSING_DOC)&&e.getContextValue(t.FOCUSING_UNIVER_EDITOR)&&e.getContextValue(t.EDITOR_ACTIVATED)&&!e.getContextValue(t.FOCUSING_EDITOR_STANDALONE)}function B(e,t){return function(n,r){t(n,r,e)}}function V(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 H=class extends t.Disposable{constructor(e,t,n,r){super(),this._zenZoneService=e,this._commandService=t,this._menuManagerService=n,this._shortcutService=r,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(`ZEN_EDITOR_PLUGIN_ZEN_EDITOR_COMPONENT`,I))}_initCommands(){[d,f,p].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initMenus(){this._menuManagerService.mergeMenu(y)}_initShortcuts(){[L,R].forEach(e=>{this.disposeWithMe(this._shortcutService.registerShortcut(e))})}};H=V([B(0,a.IZenZoneService),B(1,t.ICommandService),B(2,a.IMenuManagerService),B(3,a.IShortcutService)],H);let U=class extends t.RxDisposable{constructor(e,t){super(),this._zenEditorManagerService=e,this._renderManagerService=t,this._initialize()}_initialize(){this._syncZenEditorSize()}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe((0,s.takeUntil)(this.dispose$)).subscribe(e=>{if(e==null)return;let{width:n,height:r}=e,a=(0,i.getEditorObject)(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY,this._renderManagerService);a!=null&&requestIdleCallback(()=>{a.engine.resizeBySize(n,r),this._calculatePagePosition(a),this._scrollToTop()})})}_calculatePagePosition(e){let{document:t,scene:r,docBackground:i}=e,a=r==null?void 0:r.getParent(),{width:o,height:s,pageMarginLeft:c,pageMarginTop:l}=t;if(a==null||o===1/0||s===1/0)return;let{width:u,height:d}=a,f=0,p=l,m=0,h=0,g=1/0,{scaleX:_,scaleY:v}=r.getAncestorScale();u>(o+c*2)*_?(f=u/2-o*_/2,f/=_,m=(u-c*2)/_,g=0):(f=c,m=o+c*2,g=(m-u/_)/2),h=d>s?(d-l*2)/v:s+l*2,r.resize(m,h),t.translate(f,p),i.translate(f,p);let y=r.getViewport(n.VIEWPORT_KEY.VIEW_MAIN);if(g!==1/0&&y!=null){let e=y.transScroll2ViewportScrollValue(g,0).x;y.scrollToBarPos({x:e})}return this}_scrollToTop(){var e;let r=(e=this._renderManagerService.getRenderById(t.DOCS_ZEN_EDITOR_UNIT_ID_KEY))==null?void 0:e.with(n.DocBackScrollRenderController);r&&r.scrollToRange({startOffset:0,endOffset:0})}};U=V([B(0,P),B(1,r.IRenderManagerService)],U);let W=class extends t.Plugin{constructor(e=_,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{menu:i,...a}=(0,t.merge)({},_,this._config);i&&this._configService.setConfig(`menu`,i,{merge:!0}),this._configService.setConfig(g,a),this._initializeDependencies(this._injector)}_initializeDependencies(e){[[H],[U],[P,{useClass:N}]].forEach(t=>e.add(t))}onReady(){this._injector.get(H)}onSteady(){this._injector.get(U)}};M(W,`pluginName`,`SHEET_ZEN_EDITOR_PLUGIN`),M(W,`packageName`,m),M(W,`version`,h),M(W,`type`,t.UniverInstanceType.UNIVER_SHEET),W=V([B(1,(0,t.Inject)(t.Injector)),B(2,t.IConfigService)],W),e.CancelZenEditCommand=f,e.ConfirmZenEditCommand=p,e.OpenZenEditorCommand=d,Object.defineProperty(e,`UniverSheetsZenEditorPlugin`,{enumerable:!0,get:function(){return W}})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-zen-editor",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "private": false,
5
5
  "description": "Immersive cell editing experience for Univer Sheets.",
6
6
  "author": "DreamNum Co., Ltd. <developer@univer.ai>",
@@ -68,15 +68,15 @@
68
68
  "rxjs": ">=7.0.0"
69
69
  },
70
70
  "dependencies": {
71
- "@univerjs/icons": "^1.2.0",
72
- "@univerjs/core": "0.23.0",
73
- "@univerjs/docs": "0.23.0",
74
- "@univerjs/design": "0.23.0",
75
- "@univerjs/docs-ui": "0.23.0",
76
- "@univerjs/engine-render": "0.23.0",
77
- "@univerjs/sheets": "0.23.0",
78
- "@univerjs/ui": "0.23.0",
79
- "@univerjs/sheets-ui": "0.23.0"
71
+ "@univerjs/icons": "1.4.0",
72
+ "@univerjs/core": "0.24.0",
73
+ "@univerjs/design": "0.24.0",
74
+ "@univerjs/docs": "0.24.0",
75
+ "@univerjs/docs-ui": "0.24.0",
76
+ "@univerjs/sheets": "0.24.0",
77
+ "@univerjs/engine-render": "0.24.0",
78
+ "@univerjs/sheets-ui": "0.24.0",
79
+ "@univerjs/ui": "0.24.0"
80
80
  },
81
81
  "devDependencies": {
82
82
  "postcss": "^8.5.14",
@@ -85,7 +85,7 @@
85
85
  "tailwindcss": "3.4.18",
86
86
  "typescript": "^6.0.3",
87
87
  "vitest": "^4.1.5",
88
- "@univerjs-infra/shared": "0.23.0"
88
+ "@univerjs-infra/shared": "0.24.0"
89
89
  },
90
90
  "scripts": {
91
91
  "test": "vitest run",