@univerjs/sheets-zen-editor 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +2 -2
- package/lib/es/index.js +247 -250
- package/lib/types/controllers/zen-editor.controller.d.ts +4 -2
- package/lib/types/plugin.d.ts +4 -5
- package/lib/umd/index.js +2 -2
- package/package.json +21 -21
package/lib/cjs/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var ee=Object.defineProperty;var te=(i,t,n)=>t in i?ee(i,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):i[t]=n;var
|
|
1
|
+
"use strict";var ee=Object.defineProperty;var te=(i,t,n)=>t in i?ee(i,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):i[t]=n;var I=(i,t,n)=>(te(i,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("@univerjs/core"),g=require("@wendellhu/redi"),C=require("@univerjs/docs"),T=require("@univerjs/engine-render"),x=require("@univerjs/sheets-ui"),_=require("@univerjs/ui"),F=require("rxjs"),p=require("react"),Z=require("@wendellhu/redi/react-bindings"),B=require("clsx"),L={id:"zen-editor.operation.open-zen-editor",type:a.CommandType.OPERATION,handler:i=>!0};class ne{constructor(){I(this,"_position",null);I(this,"_position$",new F.BehaviorSubject(null));I(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 w=g.createIdentifier("univer.sheet-zen-editor-manager.service");var ie=Object.defineProperty,re=Object.getOwnPropertyDescriptor,oe=(i,t,n,e)=>{for(var r=e>1?void 0:e?re(t,n):t,o=i.length-1,s;o>=0;o--)(s=i[o])&&(r=(e?s(t,n,r):s(r))||r);return e&&r&&ie(t,n,r),r},S=(i,t)=>(n,e)=>t(n,e,i);const v="__defaultDocumentZenEditorSpecialUnitId_20231218__";let N=class extends a.RxDisposable{constructor(t,n,e,r,o,s,c,d,l,u,h){super();I(this,"_zenEditorInitialState",!1);this._injector=t,this._univerInstanceService=n,this._zenEditorManagerService=e,this._renderManagerService=r,this._commandService=o,this._zenZoneService=s,this._editorBridgeService=c,this._undoRedoService=d,this._textSelectionManagerService=l,this._docSkeletonManagerService=u,this._docViewModelManagerService=h,this._initialize()}_initialize(){this._syncZenEditorSize(),this._commandExecutedListener()}_createZenEditorInstance(){const t={id:v,body:{dataStream:`${a.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],paragraphs:[{startIndex:0}]},documentStyle:{pageSize:{width:595,height:842},marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}}};return this._univerInstanceService.createUnit(a.UniverInstanceType.UNIVER_DOC,t)}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe(F.takeUntil(this.dispose$)).subscribe(t=>{var d;if(t==null)return;const n=x.getEditorObject(v,this._renderManagerService),e=this._univerInstanceService.getUniverDocInstance(v);if(n==null||e==null)return;const{width:r,height:o}=t,{engine:s}=n,c=(d=this._docSkeletonManagerService.getSkeletonByUnitId(v))==null?void 0:d.skeleton;requestIdleCallback(()=>{s.resizeBySize(r,o),this._calculatePagePosition(n),c&&this._textSelectionManagerService.refreshSelection()})})}_handleOpenZenEditor(){this._zenEditorInitialState||(this._createZenEditorInstance(),this._zenEditorInitialState=!0),this._zenZoneService.open(),this._undoRedoService.clearUndoRedo(v),this._univerInstanceService.focusUnit(v),this._univerInstanceService.setCurrentUnitForType(v),this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:T.DeviceInputEventType.PointerDown});const n=this._editorBridgeService.getLatestEditCellState();if(n==null)return;this._editorSyncHandler(n);const e=[{startOffset:0,endOffset:0}];this._textSelectionManagerService.replaceTextRanges(e)}_editorSyncHandler(t){var s,c;const n=(s=t.documentLayoutObject.documentModel)==null?void 0:s.getBody(),e=n==null?void 0:n.dataStream,r=n==null?void 0:n.paragraphs;let o=[];e==null||r==null||((c=n==null?void 0:n.textRuns)!=null&&c.length&&(o=n==null?void 0:n.textRuns),this._syncContentAndRender(v,e,r,o))}_syncContentAndRender(t,n,e,r=[]){const o=[v,a.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,a.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY],s=this._docSkeletonManagerService.getSkeletonByUnitId(t),c=this._univerInstanceService.getUniverDocInstance(t),d=this._docViewModelManagerService.getViewModel(t);if(c==null||d==null||s==null)return;const l=c.getBody();l.dataStream=n,l.paragraphs=e,t===a.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY&&(l.textRuns=[]),r.length>0&&(l.textRuns=r),d.reset(c);const{skeleton:u}=s,h=this._getDocObject();h!=null&&(u.calculate(),o.includes(t)&&h.document.makeDirty())}_calculatePagePosition(t){const{document:n,scene:e}=t,r=e==null?void 0:e.getParent(),{width:o,height:s,pageMarginLeft:c,pageMarginTop:d}=n;if(r==null||o===Number.POSITIVE_INFINITY||s===Number.POSITIVE_INFINITY)return;const{width:l,height:u}=r;let h=0,U=0,R=0,j=0,z=Number.POSITIVE_INFINITY;const{scaleX:O,scaleY:J}=e.getAncestorScale();l>(o+c*2)*O?(h=l/2-o*O/2,h/=O,R=(l-c*2)/O,z=0):(h=c,R=o+c*2,z=(R-l/O)/2),u>s?(U=u/2-s/2,j=(u-d*2)/J):(U=d,j=s+d*2),e.resize(R,j+200),n.translate(h,U);const P=e.getViewport(C.VIEWPORT_KEY.VIEW_MAIN);if(z!==Number.POSITIVE_INFINITY&&P!=null){const Q=P.getBarScroll(z,0).x;P.scrollTo({x:Q})}return this}_commandExecutedListener(){const t=[L.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{t.includes(e.id)&&this._handleOpenZenEditor()}));const n=[C.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(n.includes(e.id)){const r=e.params,{unitId:o}=r;if(o===v){const s=this._univerInstanceService.getUniverDocInstance(o),c=s==null?void 0:s.getBody(),d=c==null?void 0:c.dataStream,l=c==null?void 0:c.paragraphs,u=c==null?void 0:c.textRuns;if(this._editorBridgeService.changeEditorDirty(!0),d==null||l==null)return;this._syncContentAndRender(a.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,d,l,u)}}}))}_getDocObject(){return C.getDocObject(this._univerInstanceService,this._renderManagerService)}};N=oe([a.OnLifecycle(a.LifecycleStages.Steady,N),S(0,g.Inject(g.Injector)),S(1,a.IUniverInstanceService),S(2,w),S(3,T.IRenderManagerService),S(4,a.ICommandService),S(5,_.IZenZoneService),S(6,x.IEditorBridgeService),S(7,a.IUndoRedoService),S(8,g.Inject(C.TextSelectionManagerService)),S(9,g.Inject(C.DocSkeletonManagerService)),S(10,g.Inject(C.DocViewModelManagerService))],N);const A={id:"zen-editor.command.cancel-zen-edit",type:a.CommandType.COMMAND,handler:async i=>{const t=i.get(_.IZenZoneService),n=i.get(x.IEditorBridgeService),e=i.get(a.IUniverInstanceService);n.isVisible().visible&&n.changeVisible({visible:!1,eventType:T.DeviceInputEventType.Keyboard,keycode:_.KeyCode.ESC}),t.close();const o=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);return o?(e.focusUnit(o.getUnitId()),n.refreshEditCellState(),!0):!1}},V={id:"zen-editor.command.confirm-zen-edit",type:a.CommandType.COMMAND,handler:async i=>{const t=i.get(_.IZenZoneService),n=i.get(x.IEditorBridgeService),e=i.get(a.IUniverInstanceService);n.isVisible().visible&&n.changeVisible({visible:!1,eventType:T.DeviceInputEventType.PointerDown}),t.close();const o=e.getCurrentUnitForType(a.UniverInstanceType.UNIVER_SHEET);return o?(e.focusUnit(o.getUnitId()),n.refreshEditCellState(),!0):!1}};function se(){return{id:L.id,group:_.MenuGroup.CONTEXT_MENU_OTHERS,type:_.MenuItemType.BUTTON,title:"rightClick.zenEditor",icon:"AmplifySingle",positions:[_.MenuPosition.CONTEXT_MENU]}}var W={exports:{}},D={};/**
|
|
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 ce=
|
|
9
|
+
*/var ce=p,ae=Symbol.for("react.element"),de=Symbol.for("react.fragment"),le=Object.prototype.hasOwnProperty,ue=ce.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,_e={key:!0,ref:!0,__self:!0,__source:!0};function q(i,t,n){var e,r={},o=null,s=null;n!==void 0&&(o=""+n),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(s=t.ref);for(e in t)le.call(t,e)&&!_e.hasOwnProperty(e)&&(r[e]=t[e]);if(i&&i.defaultProps)for(e in t=i.defaultProps,t)r[e]===void 0&&(r[e]=t[e]);return{$$typeof:ae,type:i,key:o,ref:s,props:r,_owner:ue.current}}D.Fragment=de;D.jsx=q;D.jsxs=q;W.exports=D;var E=W.exports,f=function(){return f=Object.assign||function(i){for(var t,n=1,e=arguments.length;n<e;n++){t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(i[r]=t[r])}return i},f.apply(this,arguments)},he=function(i,t){var n={};for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&t.indexOf(e)<0&&(n[e]=i[e]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,e=Object.getOwnPropertySymbols(i);r<e.length;r++)t.indexOf(e[r])<0&&Object.prototype.propertyIsEnumerable.call(i,e[r])&&(n[e[r]]=i[e[r]]);return n},$=p.forwardRef(function(i,t){var n=i.icon,e=i.id,r=i.className,o=i.extend,s=he(i,["icon","id","className","extend"]),c="univerjs-icon univerjs-icon-".concat(e," ").concat(r||"").trim(),d=p.useRef("_".concat(Se()));return Y(n,"".concat(e),{defIds:n.defIds,idSuffix:d.current},f({ref:t,className:c},s),o)});function Y(i,t,n,e,r){return p.createElement(i.tag,f(f({key:t},ve(i,n,r)),e),(fe(i,n).children||[]).map(function(o,s){return Y(o,"".concat(t,"-").concat(i.tag,"-").concat(s),n,void 0,r)}))}function ve(i,t,n){var e=f({},i.attrs);n!=null&&n.colorChannel1&&e.fill==="colorChannel1"&&(e.fill=n.colorChannel1);var r=t.defIds;return!r||r.length===0||(i.tag==="use"&&e["xlink:href"]&&(e["xlink:href"]=e["xlink:href"]+t.idSuffix),Object.entries(e).forEach(function(o){var s=o[0],c=o[1];typeof c=="string"&&(e[s]=c.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),e}function fe(i,t){var n,e=t.defIds;return!e||e.length===0?i:i.tag==="defs"&&(!((n=i.children)===null||n===void 0)&&n.length)?f(f({},i),{children:i.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})}):i}function Se(){return Math.random().toString(36).substring(2,8)}$.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.44 3.57291C14.698 3.83093 14.698 4.24927 14.44 4.50729L6.44342 12.5037C6.28721 12.6599 6.03395 12.6599 5.87774 12.5037L1.55992 8.18578C1.3019 7.92776 1.3019 7.50942 1.55993 7.2514C1.81795 6.99338 2.23629 6.99338 2.49431 7.25141L6.01916 10.7763C6.09727 10.8544 6.2239 10.8544 6.30201 10.7763L13.5056 3.57291C13.7636 3.31489 14.1819 3.31489 14.44 3.57291Z",fillRule:"evenodd",clipRule:"evenodd"}}]},K=p.forwardRef(function(i,t){return p.createElement($,Object.assign({},i,{id:"check-mark-single",ref:t,icon:ge}))});K.displayName="CheckMarkSingle";const pe=K;var Ie={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.57061 3.65132C4.31677 3.39748 3.90521 3.39748 3.65137 3.65132C3.39753 3.90516 3.39753 4.31672 3.65137 4.57056L7.08079 7.99998L3.65123 11.4295C3.39739 11.6834 3.39739 12.0949 3.65123 12.3488C3.90507 12.6026 4.31662 12.6026 4.57047 12.3488L8.00003 8.91921L11.4295 12.3487C11.6834 12.6026 12.0949 12.6026 12.3488 12.3487C12.6026 12.0949 12.6026 11.6833 12.3488 11.4295L8.91927 7.99998L12.3486 4.57061C12.6025 4.31677 12.6025 3.90521 12.3486 3.65137C12.0948 3.39753 11.6832 3.39753 11.4294 3.65137L8.00003 7.08074L4.57061 3.65132Z"}}]},H=p.forwardRef(function(i,t){return p.createElement($,Object.assign({},i,{id:"close-single",ref:t,icon:Ie}))});H.displayName="CloseSingle";const Ee=H,me="univer-zen-editor",Ce="univer-zen-editor-icon-wrapper",Oe="univer-zen-editor-icon-container",ye="univer-zen-editor-icon-success",Te="univer-zen-editor-icon-error",Re="univer-zen-editor-canvas-container",m={zenEditor:me,zenEditorIconWrapper:Ce,zenEditorIconContainer:Oe,zenEditorIconSuccess:ye,zenEditorIconError:Te,zenEditorCanvasContainer:Re},ze="ZEN_EDITOR_PLUGIN_",Me=`${ze}ZEN_EDITOR_COMPONENT`;function Ne(){const i=p.useRef(null),t=Z.useDependency(T.IRenderManagerService),n=Z.useDependency(w),e=Z.useDependency(a.ICommandService);p.useEffect(()=>{const s=i.current;if(!s)return;const c=t.currentRender$.subscribe(l=>{var h;if(l!==v)return;const u=(h=t.getRenderById(v))==null?void 0:h.engine;u==null||u.setContainer(s)}),d=new ResizeObserver(()=>{const l=s.getBoundingClientRect();n.setPosition(l)});return d.observe(s),()=>{d.unobserve(s),c.unsubscribe()}},[]);function r(){e.executeCommand(A.id)}function o(){e.executeCommand(V.id)}return E.jsxs("div",{className:m.zenEditor,children:[E.jsxs("div",{className:m.zenEditorIconWrapper,children:[E.jsx("span",{className:B(m.zenEditorIconContainer,m.zenEditorIconError),onClick:r,children:E.jsx(Ee,{style:{fontSize:"22px"}})}),E.jsx("span",{className:B(m.zenEditorIconContainer,m.zenEditorIconSuccess),onClick:o,children:E.jsx(pe,{style:{fontSize:"22px"}})})]}),E.jsx("div",{className:m.zenEditorCanvasContainer,ref:i})]})}const be={id:V.id,description:"shortcut.sheet.zen-edit-confirm",group:"4_sheet-edit",preconditions:i=>X(i),binding:_.KeyCode.ENTER|_.MetaKeys.ALT},xe={id:A.id,description:"shortcut.sheet.zen-edit-cancel",group:"4_sheet-edit",preconditions:i=>X(i),binding:_.KeyCode.ESC};function X(i){return i.getContextValue(a.FOCUSING_DOC)&&i.getContextValue(a.FOCUSING_UNIVER_EDITOR)&&i.getContextValue(a.EDITOR_ACTIVATED)&&!i.getContextValue(a.FOCUSING_EDITOR_STANDALONE)}var De=Object.defineProperty,Ue=Object.getOwnPropertyDescriptor,je=(i,t,n,e)=>{for(var r=e>1?void 0:e?Ue(t,n):t,o=i.length-1,s;o>=0;o--)(s=i[o])&&(r=(e?s(t,n,r):s(r))||r);return e&&r&&De(t,n,r),r},y=(i,t)=>(n,e)=>t(n,e,i);let b=class extends a.Disposable{constructor(i,t,n,e,r){super(),this._injector=i,this._zenZoneService=t,this._commandService=n,this._menuService=e,this._shortcutService=r,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(Me,Ne))}_initCommands(){[L,A,V].forEach(i=>{this.disposeWithMe(this._commandService.registerCommand(i))})}_initMenus(){[se].forEach(i=>{this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(i)))})}_initShortcuts(){[be,xe].forEach(i=>{this.disposeWithMe(this._shortcutService.registerShortcut(i))})}};b=je([a.OnLifecycle(a.LifecycleStages.Rendered,b),y(0,g.Inject(g.Injector)),y(1,_.IZenZoneService),y(2,a.ICommandService),y(3,_.IMenuService),y(4,_.IShortcutService)],b);const Pe={shortcut:{sheet:{"zen-edit-cancel":"Cancel Zen Edit","zen-edit-confirm":"Confirm Zen Edit"}}},Ze=Pe,Le={shortcut:{sheet:{"zen-edit-cancel":"取消编辑(禅模式状态)","zen-edit-confirm":"放弃编辑(禅模式状态)"}}},G=Le;var we=Object.defineProperty,Ae=Object.getOwnPropertyDescriptor,Ve=(i,t,n,e)=>{for(var r=e>1?void 0:e?Ae(t,n):t,o=i.length-1,s;o>=0;o--)(s=i[o])&&(r=(e?s(t,n,r):s(r))||r);return e&&r&&we(t,n,r),r},k=(i,t)=>(n,e)=>t(n,e,i),M;exports.UniverSheetsZenEditorPlugin=(M=class extends a.Plugin{constructor(t,n,e){super(),this._injector=n,this._localeService=e,this._initialize(),this._initializeDependencies(this._injector)}_initialize(){this._localeService.load({zhCN:G})}_initializeDependencies(t){[[b],[N],[w,{useClass:ne}]].forEach(e=>t.add(e))}},I(M,"pluginName","zen-editor"),I(M,"type",a.UniverInstanceType.UNIVER_DOC),M);exports.UniverSheetsZenEditorPlugin=Ve([k(1,g.Inject(g.Injector)),k(2,g.Inject(a.LocaleService))],exports.UniverSheetsZenEditorPlugin);exports.enUS=Ze;exports.zhCN=G;
|
package/lib/es/index.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
var de = Object.defineProperty;
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
import { CommandType as
|
|
5
|
-
import { createIdentifier as
|
|
6
|
-
import { VIEWPORT_KEY as
|
|
7
|
-
import { DeviceInputEventType as
|
|
8
|
-
import { getEditorObject as
|
|
9
|
-
import { IZenZoneService as
|
|
10
|
-
import { BehaviorSubject as
|
|
11
|
-
import
|
|
12
|
-
import { useDependency as
|
|
13
|
-
import
|
|
14
|
-
const
|
|
2
|
+
var ue = (n, e, i) => e in n ? de(n, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : n[e] = i;
|
|
3
|
+
var v = (n, e, i) => (ue(n, typeof e != "symbol" ? e + "" : e, i), i);
|
|
4
|
+
import { CommandType as U, RxDisposable as he, UniverInstanceType as M, DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY as H, DOCS_NORMAL_EDITOR_UNIT_ID_KEY as K, OnLifecycle as J, LifecycleStages as Q, DEFAULT_EMPTY_DOCUMENT_VALUE as _e, IUniverInstanceService as P, ICommandService as j, IUndoRedoService as fe, FOCUSING_DOC as ve, FOCUSING_UNIVER_EDITOR as ge, EDITOR_ACTIVATED as Se, FOCUSING_EDITOR_STANDALONE as pe, Disposable as me, Plugin as Ee, LocaleService as Ie } from "@univerjs/core";
|
|
5
|
+
import { createIdentifier as Ce, Inject as p, Injector as L } from "@wendellhu/redi";
|
|
6
|
+
import { VIEWPORT_KEY as Oe, RichTextEditingMutation as ze, getDocObject as ye, TextSelectionManagerService as Me, DocSkeletonManagerService as Ne, DocViewModelManagerService as be } from "@univerjs/docs";
|
|
7
|
+
import { DeviceInputEventType as w, IRenderManagerService as ee } from "@univerjs/engine-render";
|
|
8
|
+
import { getEditorObject as Te, IEditorBridgeService as Z } from "@univerjs/sheets-ui";
|
|
9
|
+
import { IZenZoneService as N, KeyCode as V, MenuGroup as Re, MenuItemType as xe, MenuPosition as De, MetaKeys as Ue, IMenuService as Pe, IShortcutService as je } from "@univerjs/ui";
|
|
10
|
+
import { BehaviorSubject as Le, takeUntil as we } from "rxjs";
|
|
11
|
+
import Ze, { forwardRef as $, useRef as te, createElement as A, useEffect as Ve } from "react";
|
|
12
|
+
import { useDependency as D } from "@wendellhu/redi/react-bindings";
|
|
13
|
+
import X from "clsx";
|
|
14
|
+
const k = {
|
|
15
15
|
id: "zen-editor.operation.open-zen-editor",
|
|
16
|
-
type:
|
|
17
|
-
handler: (
|
|
16
|
+
type: U.OPERATION,
|
|
17
|
+
handler: (n) => !0
|
|
18
18
|
};
|
|
19
19
|
class $e {
|
|
20
20
|
constructor() {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
v(this, "_position", null);
|
|
22
|
+
v(this, "_position$", new Le(null));
|
|
23
|
+
v(this, "position$", this._position$.asObservable());
|
|
24
24
|
}
|
|
25
25
|
dispose() {
|
|
26
26
|
this._position$.complete(), this._position = null;
|
|
@@ -35,29 +35,29 @@ class $e {
|
|
|
35
35
|
this._position$.next(e);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
const
|
|
38
|
+
const B = Ce(
|
|
39
39
|
"univer.sheet-zen-editor-manager.service"
|
|
40
40
|
);
|
|
41
|
-
var Ae = Object.defineProperty,
|
|
42
|
-
for (var r = t > 1 ? void 0 : t ?
|
|
43
|
-
(s =
|
|
44
|
-
return t && r && Ae(e,
|
|
45
|
-
}, f = (
|
|
46
|
-
const
|
|
47
|
-
let
|
|
48
|
-
constructor(e,
|
|
41
|
+
var Ae = Object.defineProperty, ke = Object.getOwnPropertyDescriptor, Be = (n, e, i, t) => {
|
|
42
|
+
for (var r = t > 1 ? void 0 : t ? ke(e, i) : e, o = n.length - 1, s; o >= 0; o--)
|
|
43
|
+
(s = n[o]) && (r = (t ? s(e, i, r) : s(r)) || r);
|
|
44
|
+
return t && r && Ae(e, i, r), r;
|
|
45
|
+
}, f = (n, e) => (i, t) => e(i, t, n);
|
|
46
|
+
const h = "__defaultDocumentZenEditorSpecialUnitId_20231218__";
|
|
47
|
+
let z = class extends he {
|
|
48
|
+
constructor(e, i, t, r, o, s, c, a, l, d, u) {
|
|
49
49
|
super();
|
|
50
|
-
|
|
51
|
-
this.
|
|
50
|
+
v(this, "_zenEditorInitialState", !1);
|
|
51
|
+
this._injector = e, this._univerInstanceService = i, this._zenEditorManagerService = t, this._renderManagerService = r, this._commandService = o, this._zenZoneService = s, this._editorBridgeService = c, this._undoRedoService = a, this._textSelectionManagerService = l, this._docSkeletonManagerService = d, this._docViewModelManagerService = u, this._initialize();
|
|
52
52
|
}
|
|
53
53
|
_initialize() {
|
|
54
54
|
this._syncZenEditorSize(), this._commandExecutedListener();
|
|
55
55
|
}
|
|
56
56
|
_createZenEditorInstance() {
|
|
57
57
|
const e = {
|
|
58
|
-
id:
|
|
58
|
+
id: h,
|
|
59
59
|
body: {
|
|
60
|
-
dataStream: `${
|
|
60
|
+
dataStream: `${_e}`,
|
|
61
61
|
textRuns: [],
|
|
62
62
|
paragraphs: [
|
|
63
63
|
{
|
|
@@ -80,7 +80,7 @@ let O = class extends ue {
|
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
};
|
|
83
|
-
this.
|
|
83
|
+
return this._univerInstanceService.createUnit(M.UNIVER_DOC, e);
|
|
84
84
|
}
|
|
85
85
|
// Listen to changes in the size of the zen editor container to set the size of the editor.
|
|
86
86
|
_syncZenEditorSize() {
|
|
@@ -88,24 +88,24 @@ let O = class extends ue {
|
|
|
88
88
|
var a;
|
|
89
89
|
if (e == null)
|
|
90
90
|
return;
|
|
91
|
-
const
|
|
92
|
-
if (
|
|
91
|
+
const i = Te(h, this._renderManagerService), t = this._univerInstanceService.getUniverDocInstance(h);
|
|
92
|
+
if (i == null || t == null)
|
|
93
93
|
return;
|
|
94
|
-
const { width: r, height: o } = e, { engine: s } =
|
|
94
|
+
const { width: r, height: o } = e, { engine: s } = i, c = (a = this._docSkeletonManagerService.getSkeletonByUnitId(h)) == null ? void 0 : a.skeleton;
|
|
95
95
|
requestIdleCallback(() => {
|
|
96
|
-
s.resizeBySize(r, o), this._calculatePagePosition(
|
|
96
|
+
s.resizeBySize(r, o), this._calculatePagePosition(i), c && this._textSelectionManagerService.refreshSelection();
|
|
97
97
|
});
|
|
98
98
|
});
|
|
99
99
|
}
|
|
100
100
|
_handleOpenZenEditor() {
|
|
101
|
-
this._zenEditorInitialState || (this._createZenEditorInstance(), this._zenEditorInitialState = !0), this._zenZoneService.open(), this._undoRedoService.clearUndoRedo(
|
|
101
|
+
this._zenEditorInitialState || (this._createZenEditorInstance(), this._zenEditorInitialState = !0), this._zenZoneService.open(), this._undoRedoService.clearUndoRedo(h), this._univerInstanceService.focusUnit(h), this._univerInstanceService.setCurrentUnitForType(h), this._editorBridgeService.isVisible().visible === !1 && this._editorBridgeService.changeVisible({
|
|
102
102
|
visible: !0,
|
|
103
|
-
eventType:
|
|
103
|
+
eventType: w.PointerDown
|
|
104
104
|
});
|
|
105
|
-
const
|
|
106
|
-
if (
|
|
105
|
+
const i = this._editorBridgeService.getLatestEditCellState();
|
|
106
|
+
if (i == null)
|
|
107
107
|
return;
|
|
108
|
-
this._editorSyncHandler(
|
|
108
|
+
this._editorSyncHandler(i);
|
|
109
109
|
const t = [
|
|
110
110
|
{
|
|
111
111
|
startOffset: 0,
|
|
@@ -116,116 +116,117 @@ let O = class extends ue {
|
|
|
116
116
|
}
|
|
117
117
|
_editorSyncHandler(e) {
|
|
118
118
|
var s, c;
|
|
119
|
-
const
|
|
119
|
+
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;
|
|
120
120
|
let o = [];
|
|
121
|
-
t == null || r == null || ((c =
|
|
121
|
+
t == null || r == null || ((c = i == null ? void 0 : i.textRuns) != null && c.length && (o = i == null ? void 0 : i.textRuns), this._syncContentAndRender(h, t, r, o));
|
|
122
122
|
}
|
|
123
|
-
_syncContentAndRender(e,
|
|
123
|
+
_syncContentAndRender(e, i, t, r = []) {
|
|
124
124
|
const o = [
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
], s = this._docSkeletonManagerService.getSkeletonByUnitId(e), c = this.
|
|
125
|
+
h,
|
|
126
|
+
K,
|
|
127
|
+
H
|
|
128
|
+
], s = this._docSkeletonManagerService.getSkeletonByUnitId(e), c = this._univerInstanceService.getUniverDocInstance(e), a = this._docViewModelManagerService.getViewModel(e);
|
|
129
129
|
if (c == null || a == null || s == null)
|
|
130
130
|
return;
|
|
131
|
-
const
|
|
132
|
-
|
|
133
|
-
const { skeleton:
|
|
134
|
-
|
|
131
|
+
const l = c.getBody();
|
|
132
|
+
l.dataStream = i, l.paragraphs = t, e === H && (l.textRuns = []), r.length > 0 && (l.textRuns = r), a.reset(c);
|
|
133
|
+
const { skeleton: d } = s, u = this._getDocObject();
|
|
134
|
+
u != null && (d.calculate(), o.includes(e) && u.document.makeDirty());
|
|
135
135
|
}
|
|
136
136
|
_calculatePagePosition(e) {
|
|
137
|
-
const { document:
|
|
137
|
+
const { document: i, scene: t } = e, r = t == null ? void 0 : t.getParent(), { width: o, height: s, pageMarginLeft: c, pageMarginTop: a } = i;
|
|
138
138
|
if (r == null || o === Number.POSITIVE_INFINITY || s === Number.POSITIVE_INFINITY)
|
|
139
139
|
return;
|
|
140
|
-
const { width:
|
|
141
|
-
let
|
|
142
|
-
const { scaleX: m, scaleY:
|
|
143
|
-
|
|
144
|
-
const
|
|
145
|
-
if (C !== Number.POSITIVE_INFINITY &&
|
|
146
|
-
const
|
|
147
|
-
|
|
148
|
-
x:
|
|
140
|
+
const { width: l, height: d } = r;
|
|
141
|
+
let u = 0, T = 0, I = 0, R = 0, C = Number.POSITIVE_INFINITY;
|
|
142
|
+
const { scaleX: m, scaleY: ae } = t.getAncestorScale();
|
|
143
|
+
l > (o + c * 2) * m ? (u = l / 2 - o * m / 2, u /= m, I = (l - c * 2) / m, C = 0) : (u = c, I = o + c * 2, C = (I - l / m) / 2), d > s ? (T = d / 2 - s / 2, R = (d - a * 2) / ae) : (T = a, R = s + a * 2), t.resize(I, R + 200), i.translate(u, T);
|
|
144
|
+
const x = t.getViewport(Oe.VIEW_MAIN);
|
|
145
|
+
if (C !== Number.POSITIVE_INFINITY && x != null) {
|
|
146
|
+
const le = x.getBarScroll(C, 0).x;
|
|
147
|
+
x.scrollTo({
|
|
148
|
+
x: le
|
|
149
149
|
});
|
|
150
150
|
}
|
|
151
151
|
return this;
|
|
152
152
|
}
|
|
153
153
|
_commandExecutedListener() {
|
|
154
|
-
const e = [
|
|
154
|
+
const e = [k.id];
|
|
155
155
|
this.disposeWithMe(
|
|
156
156
|
this._commandService.onCommandExecuted((t) => {
|
|
157
157
|
e.includes(t.id) && this._handleOpenZenEditor();
|
|
158
158
|
})
|
|
159
159
|
);
|
|
160
|
-
const
|
|
160
|
+
const i = [ze.id];
|
|
161
161
|
this.disposeWithMe(
|
|
162
162
|
this._commandService.onCommandExecuted((t) => {
|
|
163
|
-
if (
|
|
163
|
+
if (i.includes(t.id)) {
|
|
164
164
|
const r = t.params, { unitId: o } = r;
|
|
165
|
-
if (o ===
|
|
166
|
-
const s = this.
|
|
167
|
-
if (this._editorBridgeService.changeEditorDirty(!0), a == null ||
|
|
165
|
+
if (o === h) {
|
|
166
|
+
const s = this._univerInstanceService.getUniverDocInstance(o), c = s == null ? void 0 : s.getBody(), a = c == null ? void 0 : c.dataStream, l = c == null ? void 0 : c.paragraphs, d = c == null ? void 0 : c.textRuns;
|
|
167
|
+
if (this._editorBridgeService.changeEditorDirty(!0), a == null || l == null)
|
|
168
168
|
return;
|
|
169
|
-
this._syncContentAndRender(
|
|
169
|
+
this._syncContentAndRender(K, a, l, d);
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
172
|
})
|
|
173
173
|
);
|
|
174
174
|
}
|
|
175
175
|
_getDocObject() {
|
|
176
|
-
return
|
|
176
|
+
return ye(this._univerInstanceService, this._renderManagerService);
|
|
177
177
|
}
|
|
178
178
|
};
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
f(0,
|
|
182
|
-
f(1,
|
|
183
|
-
f(2,
|
|
184
|
-
f(3,
|
|
185
|
-
f(4,
|
|
186
|
-
f(5,
|
|
187
|
-
f(6,
|
|
188
|
-
f(7,
|
|
189
|
-
f(8, p(
|
|
190
|
-
f(9, p(
|
|
191
|
-
|
|
192
|
-
|
|
179
|
+
z = Be([
|
|
180
|
+
J(Q.Steady, z),
|
|
181
|
+
f(0, p(L)),
|
|
182
|
+
f(1, P),
|
|
183
|
+
f(2, B),
|
|
184
|
+
f(3, ee),
|
|
185
|
+
f(4, j),
|
|
186
|
+
f(5, N),
|
|
187
|
+
f(6, Z),
|
|
188
|
+
f(7, fe),
|
|
189
|
+
f(8, p(Me)),
|
|
190
|
+
f(9, p(Ne)),
|
|
191
|
+
f(10, p(be))
|
|
192
|
+
], z);
|
|
193
|
+
const F = {
|
|
193
194
|
id: "zen-editor.command.cancel-zen-edit",
|
|
194
|
-
type:
|
|
195
|
-
handler: async (
|
|
196
|
-
const e =
|
|
197
|
-
|
|
195
|
+
type: U.COMMAND,
|
|
196
|
+
handler: async (n) => {
|
|
197
|
+
const e = n.get(N), i = n.get(Z), t = n.get(P);
|
|
198
|
+
i.isVisible().visible && i.changeVisible({
|
|
198
199
|
visible: !1,
|
|
199
|
-
eventType:
|
|
200
|
-
keycode:
|
|
200
|
+
eventType: w.Keyboard,
|
|
201
|
+
keycode: V.ESC
|
|
201
202
|
}), e.close();
|
|
202
|
-
const o = t.
|
|
203
|
-
return t.
|
|
203
|
+
const o = t.getCurrentUnitForType(M.UNIVER_SHEET);
|
|
204
|
+
return o ? (t.focusUnit(o.getUnitId()), i.refreshEditCellState(), !0) : !1;
|
|
204
205
|
}
|
|
205
|
-
},
|
|
206
|
+
}, W = {
|
|
206
207
|
id: "zen-editor.command.confirm-zen-edit",
|
|
207
|
-
type:
|
|
208
|
-
handler: async (
|
|
209
|
-
const e =
|
|
210
|
-
|
|
208
|
+
type: U.COMMAND,
|
|
209
|
+
handler: async (n) => {
|
|
210
|
+
const e = n.get(N), i = n.get(Z), t = n.get(P);
|
|
211
|
+
i.isVisible().visible && i.changeVisible({
|
|
211
212
|
visible: !1,
|
|
212
|
-
eventType:
|
|
213
|
+
eventType: w.PointerDown
|
|
213
214
|
}), e.close();
|
|
214
|
-
const o = t.
|
|
215
|
-
return t.
|
|
215
|
+
const o = t.getCurrentUnitForType(M.UNIVER_SHEET);
|
|
216
|
+
return o ? (t.focusUnit(o.getUnitId()), i.refreshEditCellState(), !0) : !1;
|
|
216
217
|
}
|
|
217
218
|
};
|
|
218
|
-
function
|
|
219
|
+
function Fe() {
|
|
219
220
|
return {
|
|
220
|
-
id:
|
|
221
|
-
group:
|
|
222
|
-
type:
|
|
221
|
+
id: k.id,
|
|
222
|
+
group: Re.CONTEXT_MENU_OTHERS,
|
|
223
|
+
type: xe.BUTTON,
|
|
223
224
|
title: "rightClick.zenEditor",
|
|
224
225
|
icon: "AmplifySingle",
|
|
225
|
-
positions: [
|
|
226
|
+
positions: [De.CONTEXT_MENU]
|
|
226
227
|
};
|
|
227
228
|
}
|
|
228
|
-
var
|
|
229
|
+
var ne = { exports: {} }, b = {};
|
|
229
230
|
/**
|
|
230
231
|
* @license React
|
|
231
232
|
* react-jsx-runtime.production.min.js
|
|
@@ -235,244 +236,240 @@ var te = { exports: {} }, b = {};
|
|
|
235
236
|
* This source code is licensed under the MIT license found in the
|
|
236
237
|
* LICENSE file in the root directory of this source tree.
|
|
237
238
|
*/
|
|
238
|
-
var We =
|
|
239
|
-
function
|
|
239
|
+
var We = Ze, Ye = Symbol.for("react.element"), He = Symbol.for("react.fragment"), Ke = Object.prototype.hasOwnProperty, Xe = We.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, Ge = { key: !0, ref: !0, __self: !0, __source: !0 };
|
|
240
|
+
function ie(n, e, i) {
|
|
240
241
|
var t, r = {}, o = null, s = null;
|
|
241
|
-
|
|
242
|
+
i !== void 0 && (o = "" + i), e.key !== void 0 && (o = "" + e.key), e.ref !== void 0 && (s = e.ref);
|
|
242
243
|
for (t in e)
|
|
243
|
-
|
|
244
|
-
if (
|
|
245
|
-
for (t in e =
|
|
244
|
+
Ke.call(e, t) && !Ge.hasOwnProperty(t) && (r[t] = e[t]);
|
|
245
|
+
if (n && n.defaultProps)
|
|
246
|
+
for (t in e = n.defaultProps, e)
|
|
246
247
|
r[t] === void 0 && (r[t] = e[t]);
|
|
247
|
-
return { $$typeof:
|
|
248
|
+
return { $$typeof: Ye, type: n, key: o, ref: s, props: r, _owner: Xe.current };
|
|
248
249
|
}
|
|
249
|
-
b.Fragment =
|
|
250
|
-
b.jsx =
|
|
251
|
-
b.jsxs =
|
|
252
|
-
|
|
253
|
-
var
|
|
254
|
-
return
|
|
255
|
-
for (var e,
|
|
256
|
-
e = arguments[
|
|
250
|
+
b.Fragment = He;
|
|
251
|
+
b.jsx = ie;
|
|
252
|
+
b.jsxs = ie;
|
|
253
|
+
ne.exports = b;
|
|
254
|
+
var g = ne.exports, _ = function() {
|
|
255
|
+
return _ = Object.assign || function(n) {
|
|
256
|
+
for (var e, i = 1, t = arguments.length; i < t; i++) {
|
|
257
|
+
e = arguments[i];
|
|
257
258
|
for (var r in e)
|
|
258
|
-
Object.prototype.hasOwnProperty.call(e, r) && (
|
|
259
|
+
Object.prototype.hasOwnProperty.call(e, r) && (n[r] = e[r]);
|
|
259
260
|
}
|
|
260
|
-
return
|
|
261
|
-
},
|
|
262
|
-
},
|
|
263
|
-
var
|
|
264
|
-
for (var t in
|
|
265
|
-
Object.prototype.hasOwnProperty.call(
|
|
266
|
-
if (
|
|
267
|
-
for (var r = 0, t = Object.getOwnPropertySymbols(
|
|
268
|
-
e.indexOf(t[r]) < 0 && Object.prototype.propertyIsEnumerable.call(
|
|
269
|
-
return
|
|
270
|
-
},
|
|
271
|
-
var
|
|
272
|
-
return
|
|
261
|
+
return n;
|
|
262
|
+
}, _.apply(this, arguments);
|
|
263
|
+
}, qe = function(n, e) {
|
|
264
|
+
var i = {};
|
|
265
|
+
for (var t in n)
|
|
266
|
+
Object.prototype.hasOwnProperty.call(n, t) && e.indexOf(t) < 0 && (i[t] = n[t]);
|
|
267
|
+
if (n != null && typeof Object.getOwnPropertySymbols == "function")
|
|
268
|
+
for (var r = 0, t = Object.getOwnPropertySymbols(n); r < t.length; r++)
|
|
269
|
+
e.indexOf(t[r]) < 0 && Object.prototype.propertyIsEnumerable.call(n, t[r]) && (i[t[r]] = n[t[r]]);
|
|
270
|
+
return i;
|
|
271
|
+
}, Y = $(function(n, e) {
|
|
272
|
+
var i = n.icon, t = n.id, r = n.className, o = n.extend, s = qe(n, ["icon", "id", "className", "extend"]), c = "univerjs-icon univerjs-icon-".concat(t, " ").concat(r || "").trim(), a = te("_".concat(et()));
|
|
273
|
+
return re(i, "".concat(t), { defIds: i.defIds, idSuffix: a.current }, _({ ref: e, className: c }, s), o);
|
|
273
274
|
});
|
|
274
|
-
function
|
|
275
|
-
return
|
|
276
|
-
return
|
|
275
|
+
function re(n, e, i, t, r) {
|
|
276
|
+
return A(n.tag, _(_({ key: e }, Je(n, i, r)), t), (Qe(n, i).children || []).map(function(o, s) {
|
|
277
|
+
return re(o, "".concat(e, "-").concat(n.tag, "-").concat(s), i, void 0, r);
|
|
277
278
|
}));
|
|
278
279
|
}
|
|
279
|
-
function
|
|
280
|
-
var t =
|
|
281
|
-
|
|
280
|
+
function Je(n, e, i) {
|
|
281
|
+
var t = _({}, n.attrs);
|
|
282
|
+
i != null && i.colorChannel1 && t.fill === "colorChannel1" && (t.fill = i.colorChannel1);
|
|
282
283
|
var r = e.defIds;
|
|
283
|
-
return !r || r.length === 0 || (
|
|
284
|
+
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) {
|
|
284
285
|
var s = o[0], c = o[1];
|
|
285
286
|
typeof c == "string" && (t[s] = c.replace(/url\(#(.*)\)/, "url(#$1".concat(e.idSuffix, ")")));
|
|
286
287
|
})), t;
|
|
287
288
|
}
|
|
288
|
-
function
|
|
289
|
-
var
|
|
290
|
-
return !t || t.length === 0 ?
|
|
291
|
-
return typeof r.attrs.id == "string" && t && t.indexOf(r.attrs.id) > -1 ?
|
|
292
|
-
}) }) :
|
|
289
|
+
function Qe(n, e) {
|
|
290
|
+
var i, t = e.defIds;
|
|
291
|
+
return !t || t.length === 0 ? n : n.tag === "defs" && (!((i = n.children) === null || i === void 0) && i.length) ? _(_({}, n), { children: n.children.map(function(r) {
|
|
292
|
+
return typeof r.attrs.id == "string" && t && t.indexOf(r.attrs.id) > -1 ? _(_({}, r), { attrs: _(_({}, r.attrs), { id: r.attrs.id + e.idSuffix }) }) : r;
|
|
293
|
+
}) }) : n;
|
|
293
294
|
}
|
|
294
|
-
function
|
|
295
|
+
function et() {
|
|
295
296
|
return Math.random().toString(36).substring(2, 8);
|
|
296
297
|
}
|
|
297
|
-
|
|
298
|
-
var
|
|
299
|
-
return
|
|
298
|
+
Y.displayName = "UniverIcon";
|
|
299
|
+
var tt = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "currentColor", d: "M14.44 3.57291C14.698 3.83093 14.698 4.24927 14.44 4.50729L6.44342 12.5037C6.28721 12.6599 6.03395 12.6599 5.87774 12.5037L1.55992 8.18578C1.3019 7.92776 1.3019 7.50942 1.55993 7.2514C1.81795 6.99338 2.23629 6.99338 2.49431 7.25141L6.01916 10.7763C6.09727 10.8544 6.2239 10.8544 6.30201 10.7763L13.5056 3.57291C13.7636 3.31489 14.1819 3.31489 14.44 3.57291Z", fillRule: "evenodd", clipRule: "evenodd" } }] }, oe = $(function(n, e) {
|
|
300
|
+
return A(Y, Object.assign({}, n, {
|
|
300
301
|
id: "check-mark-single",
|
|
301
302
|
ref: e,
|
|
302
|
-
icon:
|
|
303
|
+
icon: tt
|
|
303
304
|
}));
|
|
304
305
|
});
|
|
305
|
-
|
|
306
|
-
const
|
|
307
|
-
var
|
|
308
|
-
return
|
|
306
|
+
oe.displayName = "CheckMarkSingle";
|
|
307
|
+
const nt = oe;
|
|
308
|
+
var it = { tag: "svg", attrs: { fill: "none", viewBox: "0 0 16 16", width: "1em", height: "1em" }, children: [{ tag: "path", attrs: { fill: "currentColor", d: "M4.57061 3.65132C4.31677 3.39748 3.90521 3.39748 3.65137 3.65132C3.39753 3.90516 3.39753 4.31672 3.65137 4.57056L7.08079 7.99998L3.65123 11.4295C3.39739 11.6834 3.39739 12.0949 3.65123 12.3488C3.90507 12.6026 4.31662 12.6026 4.57047 12.3488L8.00003 8.91921L11.4295 12.3487C11.6834 12.6026 12.0949 12.6026 12.3488 12.3487C12.6026 12.0949 12.6026 11.6833 12.3488 11.4295L8.91927 7.99998L12.3486 4.57061C12.6025 4.31677 12.6025 3.90521 12.3486 3.65137C12.0948 3.39753 11.6832 3.39753 11.4294 3.65137L8.00003 7.08074L4.57061 3.65132Z" } }] }, se = $(function(n, e) {
|
|
309
|
+
return A(Y, Object.assign({}, n, {
|
|
309
310
|
id: "close-single",
|
|
310
311
|
ref: e,
|
|
311
|
-
icon:
|
|
312
|
+
icon: it
|
|
312
313
|
}));
|
|
313
314
|
});
|
|
314
|
-
|
|
315
|
-
const
|
|
316
|
-
zenEditor:
|
|
317
|
-
zenEditorIconWrapper:
|
|
318
|
-
zenEditorIconContainer:
|
|
319
|
-
zenEditorIconSuccess:
|
|
320
|
-
zenEditorIconError:
|
|
315
|
+
se.displayName = "CloseSingle";
|
|
316
|
+
const rt = se, ot = "univer-zen-editor", st = "univer-zen-editor-icon-wrapper", ct = "univer-zen-editor-icon-container", at = "univer-zen-editor-icon-success", lt = "univer-zen-editor-icon-error", dt = "univer-zen-editor-canvas-container", S = {
|
|
317
|
+
zenEditor: ot,
|
|
318
|
+
zenEditorIconWrapper: st,
|
|
319
|
+
zenEditorIconContainer: ct,
|
|
320
|
+
zenEditorIconSuccess: at,
|
|
321
|
+
zenEditorIconError: lt,
|
|
321
322
|
zenEditorCanvasContainer: dt
|
|
322
|
-
},
|
|
323
|
-
function
|
|
324
|
-
const
|
|
325
|
-
|
|
326
|
-
const s =
|
|
323
|
+
}, ut = "ZEN_EDITOR_PLUGIN_", ht = `${ut}ZEN_EDITOR_COMPONENT`;
|
|
324
|
+
function _t() {
|
|
325
|
+
const n = te(null), e = D(ee), i = D(B), t = D(j);
|
|
326
|
+
Ve(() => {
|
|
327
|
+
const s = n.current;
|
|
327
328
|
if (!s)
|
|
328
329
|
return;
|
|
329
|
-
const c = e.currentRender$.subscribe((
|
|
330
|
-
var
|
|
331
|
-
if (
|
|
330
|
+
const c = e.currentRender$.subscribe((l) => {
|
|
331
|
+
var u;
|
|
332
|
+
if (l !== h)
|
|
332
333
|
return;
|
|
333
|
-
const
|
|
334
|
-
|
|
334
|
+
const d = (u = e.getRenderById(h)) == null ? void 0 : u.engine;
|
|
335
|
+
d == null || d.setContainer(s);
|
|
335
336
|
}), a = new ResizeObserver(() => {
|
|
336
|
-
const
|
|
337
|
-
|
|
337
|
+
const l = s.getBoundingClientRect();
|
|
338
|
+
i.setPosition(l);
|
|
338
339
|
});
|
|
339
340
|
return a.observe(s), () => {
|
|
340
341
|
a.unobserve(s), c.unsubscribe();
|
|
341
342
|
};
|
|
342
343
|
}, []);
|
|
343
344
|
function r() {
|
|
344
|
-
t.executeCommand(
|
|
345
|
+
t.executeCommand(F.id);
|
|
345
346
|
}
|
|
346
347
|
function o() {
|
|
347
|
-
t.executeCommand(
|
|
348
|
+
t.executeCommand(W.id);
|
|
348
349
|
}
|
|
349
|
-
return /* @__PURE__ */
|
|
350
|
-
/* @__PURE__ */
|
|
351
|
-
/* @__PURE__ */
|
|
350
|
+
return /* @__PURE__ */ g.jsxs("div", { className: S.zenEditor, children: [
|
|
351
|
+
/* @__PURE__ */ g.jsxs("div", { className: S.zenEditorIconWrapper, children: [
|
|
352
|
+
/* @__PURE__ */ g.jsx(
|
|
352
353
|
"span",
|
|
353
354
|
{
|
|
354
|
-
className:
|
|
355
|
+
className: X(S.zenEditorIconContainer, S.zenEditorIconError),
|
|
355
356
|
onClick: r,
|
|
356
|
-
children: /* @__PURE__ */
|
|
357
|
+
children: /* @__PURE__ */ g.jsx(rt, { style: { fontSize: "22px" } })
|
|
357
358
|
}
|
|
358
359
|
),
|
|
359
|
-
/* @__PURE__ */
|
|
360
|
+
/* @__PURE__ */ g.jsx(
|
|
360
361
|
"span",
|
|
361
362
|
{
|
|
362
|
-
className:
|
|
363
|
+
className: X(S.zenEditorIconContainer, S.zenEditorIconSuccess),
|
|
363
364
|
onClick: o,
|
|
364
|
-
children: /* @__PURE__ */
|
|
365
|
+
children: /* @__PURE__ */ g.jsx(nt, { style: { fontSize: "22px" } })
|
|
365
366
|
}
|
|
366
367
|
)
|
|
367
368
|
] }),
|
|
368
|
-
/* @__PURE__ */
|
|
369
|
+
/* @__PURE__ */ g.jsx("div", { className: S.zenEditorCanvasContainer, ref: n })
|
|
369
370
|
] });
|
|
370
371
|
}
|
|
371
|
-
const
|
|
372
|
-
id:
|
|
372
|
+
const ft = {
|
|
373
|
+
id: W.id,
|
|
373
374
|
description: "shortcut.sheet.zen-edit-confirm",
|
|
374
375
|
group: "4_sheet-edit",
|
|
375
|
-
preconditions: (
|
|
376
|
-
binding:
|
|
377
|
-
},
|
|
378
|
-
id:
|
|
376
|
+
preconditions: (n) => ce(n),
|
|
377
|
+
binding: V.ENTER | Ue.ALT
|
|
378
|
+
}, vt = {
|
|
379
|
+
id: F.id,
|
|
379
380
|
description: "shortcut.sheet.zen-edit-cancel",
|
|
380
381
|
group: "4_sheet-edit",
|
|
381
|
-
preconditions: (
|
|
382
|
-
binding:
|
|
382
|
+
preconditions: (n) => ce(n),
|
|
383
|
+
binding: V.ESC
|
|
383
384
|
};
|
|
384
|
-
function
|
|
385
|
-
return
|
|
385
|
+
function ce(n) {
|
|
386
|
+
return n.getContextValue(ve) && n.getContextValue(ge) && n.getContextValue(Se) && !n.getContextValue(pe);
|
|
386
387
|
}
|
|
387
|
-
var
|
|
388
|
-
for (var r = t > 1 ? void 0 : t ?
|
|
389
|
-
(s =
|
|
390
|
-
return t && r &&
|
|
391
|
-
}, E = (
|
|
392
|
-
let
|
|
393
|
-
constructor(
|
|
394
|
-
super(), this._injector =
|
|
388
|
+
var gt = Object.defineProperty, St = Object.getOwnPropertyDescriptor, pt = (n, e, i, t) => {
|
|
389
|
+
for (var r = t > 1 ? void 0 : t ? St(e, i) : e, o = n.length - 1, s; o >= 0; o--)
|
|
390
|
+
(s = n[o]) && (r = (t ? s(e, i, r) : s(r)) || r);
|
|
391
|
+
return t && r && gt(e, i, r), r;
|
|
392
|
+
}, E = (n, e) => (i, t) => e(i, t, n);
|
|
393
|
+
let y = class extends me {
|
|
394
|
+
constructor(n, e, i, t, r) {
|
|
395
|
+
super(), this._injector = n, this._zenZoneService = e, this._commandService = i, this._menuService = t, this._shortcutService = r, this._initialize();
|
|
395
396
|
}
|
|
396
397
|
_initialize() {
|
|
397
398
|
this._initCustomComponents(), this._initCommands(), this._initMenus(), this._initShortcuts();
|
|
398
399
|
}
|
|
399
400
|
_initCustomComponents() {
|
|
400
|
-
this.disposeWithMe(this._zenZoneService.set(
|
|
401
|
+
this.disposeWithMe(this._zenZoneService.set(ht, _t));
|
|
401
402
|
}
|
|
402
403
|
_initCommands() {
|
|
403
|
-
[
|
|
404
|
-
this.disposeWithMe(this._commandService.registerCommand(
|
|
404
|
+
[k, F, W].forEach((n) => {
|
|
405
|
+
this.disposeWithMe(this._commandService.registerCommand(n));
|
|
405
406
|
});
|
|
406
407
|
}
|
|
407
408
|
_initMenus() {
|
|
408
409
|
[
|
|
409
410
|
// context menu
|
|
410
|
-
|
|
411
|
-
].forEach((
|
|
412
|
-
this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(
|
|
411
|
+
Fe
|
|
412
|
+
].forEach((n) => {
|
|
413
|
+
this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(n)));
|
|
413
414
|
});
|
|
414
415
|
}
|
|
415
416
|
_initShortcuts() {
|
|
416
|
-
[
|
|
417
|
-
this.disposeWithMe(this._shortcutService.registerShortcut(
|
|
417
|
+
[ft, vt].forEach((n) => {
|
|
418
|
+
this.disposeWithMe(this._shortcutService.registerShortcut(n));
|
|
418
419
|
});
|
|
419
420
|
}
|
|
420
421
|
};
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
E(0, p(
|
|
424
|
-
E(1,
|
|
425
|
-
E(2,
|
|
426
|
-
E(3,
|
|
427
|
-
E(4,
|
|
428
|
-
],
|
|
429
|
-
const
|
|
422
|
+
y = pt([
|
|
423
|
+
J(Q.Rendered, y),
|
|
424
|
+
E(0, p(L)),
|
|
425
|
+
E(1, N),
|
|
426
|
+
E(2, j),
|
|
427
|
+
E(3, Pe),
|
|
428
|
+
E(4, je)
|
|
429
|
+
], y);
|
|
430
|
+
const mt = {
|
|
430
431
|
shortcut: {
|
|
431
432
|
sheet: {
|
|
432
433
|
"zen-edit-cancel": "Cancel Zen Edit",
|
|
433
434
|
"zen-edit-confirm": "Confirm Zen Edit"
|
|
434
435
|
}
|
|
435
436
|
}
|
|
436
|
-
},
|
|
437
|
+
}, Lt = mt, Et = {
|
|
437
438
|
shortcut: {
|
|
438
439
|
sheet: {
|
|
439
440
|
"zen-edit-cancel": "取消编辑(禅模式状态)",
|
|
440
441
|
"zen-edit-confirm": "放弃编辑(禅模式状态)"
|
|
441
442
|
}
|
|
442
443
|
}
|
|
443
|
-
},
|
|
444
|
-
var
|
|
445
|
-
for (var r = t > 1 ? void 0 : t ?
|
|
446
|
-
(s =
|
|
447
|
-
return t && r &&
|
|
448
|
-
},
|
|
449
|
-
let
|
|
450
|
-
constructor(
|
|
451
|
-
super(
|
|
444
|
+
}, It = Et;
|
|
445
|
+
var Ct = Object.defineProperty, Ot = Object.getOwnPropertyDescriptor, zt = (n, e, i, t) => {
|
|
446
|
+
for (var r = t > 1 ? void 0 : t ? Ot(e, i) : e, o = n.length - 1, s; o >= 0; o--)
|
|
447
|
+
(s = n[o]) && (r = (t ? s(e, i, r) : s(r)) || r);
|
|
448
|
+
return t && r && Ct(e, i, r), r;
|
|
449
|
+
}, G = (n, e) => (i, t) => e(i, t, n), O;
|
|
450
|
+
let q = (O = class extends Ee {
|
|
451
|
+
constructor(n, e, i) {
|
|
452
|
+
super(), this._injector = e, this._localeService = i, this._initialize(), this._initializeDependencies(this._injector);
|
|
452
453
|
}
|
|
453
454
|
_initialize() {
|
|
454
455
|
this._localeService.load({
|
|
455
|
-
zhCN:
|
|
456
|
+
zhCN: It
|
|
456
457
|
});
|
|
457
458
|
}
|
|
458
|
-
_initializeDependencies(
|
|
459
|
+
_initializeDependencies(n) {
|
|
459
460
|
[
|
|
461
|
+
[y],
|
|
460
462
|
[z],
|
|
461
|
-
[
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
}, S(T, "type", me.Doc), T);
|
|
470
|
-
X = Ot([
|
|
471
|
-
K(1, p(J)),
|
|
472
|
-
K(2, p(Ee))
|
|
473
|
-
], X);
|
|
463
|
+
[B, { useClass: $e }]
|
|
464
|
+
].forEach((i) => n.add(i));
|
|
465
|
+
}
|
|
466
|
+
}, v(O, "pluginName", "zen-editor"), v(O, "type", M.UNIVER_DOC), O);
|
|
467
|
+
q = zt([
|
|
468
|
+
G(1, p(L)),
|
|
469
|
+
G(2, p(Ie))
|
|
470
|
+
], q);
|
|
474
471
|
export {
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
472
|
+
q as UniverSheetsZenEditorPlugin,
|
|
473
|
+
Lt as enUS,
|
|
474
|
+
It as zhCN
|
|
478
475
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IZenEditorManagerService } from '../services/zen-editor.service';
|
|
2
|
+
import { Injector } from '@wendellhu/redi';
|
|
2
3
|
import { IZenZoneService } from '@univerjs/ui';
|
|
3
4
|
import { IEditorBridgeService } from '@univerjs/sheets-ui';
|
|
4
5
|
import { IRenderManagerService } from '@univerjs/engine-render';
|
|
@@ -7,7 +8,8 @@ import { ICommandService, IUndoRedoService, IUniverInstanceService, RxDisposable
|
|
|
7
8
|
|
|
8
9
|
export declare const DOCS_ZEN_EDITOR_UNIT_ID_KEY = "__defaultDocumentZenEditorSpecialUnitId_20231218__";
|
|
9
10
|
export declare class ZenEditorController extends RxDisposable {
|
|
10
|
-
private readonly
|
|
11
|
+
private readonly _injector;
|
|
12
|
+
private readonly _univerInstanceService;
|
|
11
13
|
private readonly _zenEditorManagerService;
|
|
12
14
|
private readonly _renderManagerService;
|
|
13
15
|
private readonly _commandService;
|
|
@@ -17,7 +19,7 @@ export declare class ZenEditorController extends RxDisposable {
|
|
|
17
19
|
private readonly _textSelectionManagerService;
|
|
18
20
|
private readonly _docSkeletonManagerService;
|
|
19
21
|
private readonly _docViewModelManagerService;
|
|
20
|
-
constructor(
|
|
22
|
+
constructor(_injector: Injector, _univerInstanceService: IUniverInstanceService, _zenEditorManagerService: IZenEditorManagerService, _renderManagerService: IRenderManagerService, _commandService: ICommandService, _zenZoneService: IZenZoneService, _editorBridgeService: IEditorBridgeService, _undoRedoService: IUndoRedoService, _textSelectionManagerService: TextSelectionManagerService, _docSkeletonManagerService: DocSkeletonManagerService, _docViewModelManagerService: DocViewModelManagerService);
|
|
21
23
|
private _initialize;
|
|
22
24
|
private _createZenEditorInstance;
|
|
23
25
|
private _syncZenEditorSize;
|
package/lib/types/plugin.d.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { Injector } from '@wendellhu/redi';
|
|
2
|
-
import { LocaleService, Plugin,
|
|
2
|
+
import { LocaleService, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
3
3
|
|
|
4
4
|
export interface IUniverSheetsZenEditorPluginConfig {
|
|
5
5
|
}
|
|
6
6
|
export declare class UniverSheetsZenEditorPlugin extends Plugin {
|
|
7
7
|
readonly _injector: Injector;
|
|
8
8
|
private readonly _localeService;
|
|
9
|
-
static
|
|
10
|
-
|
|
9
|
+
static pluginName: string;
|
|
10
|
+
static type: UniverInstanceType;
|
|
11
|
+
constructor(_config: IUniverSheetsZenEditorPluginConfig, _injector: Injector, _localeService: LocaleService);
|
|
11
12
|
private _initialize;
|
|
12
13
|
private _initializeDependencies;
|
|
13
|
-
onRendered(): void;
|
|
14
|
-
onDestroy(): void;
|
|
15
14
|
}
|
package/lib/umd/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
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("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","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.React,d["@wendellhu/redi/react-bindings"],d.clsx))})(this,function(d,c,v,
|
|
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("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","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.React,d["@wendellhu/redi/react-bindings"],d.clsx))})(this,function(d,c,v,O,y,N,h,F,g,b,W){"use strict";var De=Object.defineProperty;var xe=(d,c,v)=>c in d?De(d,c,{enumerable:!0,configurable:!0,writable:!0,value:v}):d[c]=v;var C=(d,c,v)=>(xe(d,typeof c!="symbol"?c+"":c,v),v);var D;const P={id:"zen-editor.operation.open-zen-editor",type:c.CommandType.OPERATION,handler:i=>!0};class Q{constructor(){C(this,"_position",null);C(this,"_position$",new F.BehaviorSubject(null));C(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 Z=v.createIdentifier("univer.sheet-zen-editor-manager.service");var ee=Object.defineProperty,te=Object.getOwnPropertyDescriptor,ne=(i,t,n,e)=>{for(var r=e>1?void 0:e?te(t,n):t,s=i.length-1,o;s>=0;s--)(o=i[s])&&(r=(e?o(t,n,r):o(r))||r);return e&&r&&ee(t,n,r),r},I=(i,t)=>(n,e)=>t(n,e,i);const f="__defaultDocumentZenEditorSpecialUnitId_20231218__";let M=class extends c.RxDisposable{constructor(t,n,e,r,s,o,a,l,u,_,p){super();C(this,"_zenEditorInitialState",!1);this._injector=t,this._univerInstanceService=n,this._zenEditorManagerService=e,this._renderManagerService=r,this._commandService=s,this._zenZoneService=o,this._editorBridgeService=a,this._undoRedoService=l,this._textSelectionManagerService=u,this._docSkeletonManagerService=_,this._docViewModelManagerService=p,this._initialize()}_initialize(){this._syncZenEditorSize(),this._commandExecutedListener()}_createZenEditorInstance(){const t={id:f,body:{dataStream:`${c.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[],paragraphs:[{startIndex:0}]},documentStyle:{pageSize:{width:595,height:842},marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}}};return this._univerInstanceService.createUnit(c.UniverInstanceType.UNIVER_DOC,t)}_syncZenEditorSize(){this._zenEditorManagerService.position$.pipe(F.takeUntil(this.dispose$)).subscribe(t=>{var l;if(t==null)return;const n=N.getEditorObject(f,this._renderManagerService),e=this._univerInstanceService.getUniverDocInstance(f);if(n==null||e==null)return;const{width:r,height:s}=t,{engine:o}=n,a=(l=this._docSkeletonManagerService.getSkeletonByUnitId(f))==null?void 0:l.skeleton;requestIdleCallback(()=>{o.resizeBySize(r,s),this._calculatePagePosition(n),a&&this._textSelectionManagerService.refreshSelection()})})}_handleOpenZenEditor(){this._zenEditorInitialState||(this._createZenEditorInstance(),this._zenEditorInitialState=!0),this._zenZoneService.open(),this._undoRedoService.clearUndoRedo(f),this._univerInstanceService.focusUnit(f),this._univerInstanceService.setCurrentUnitForType(f),this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:y.DeviceInputEventType.PointerDown});const n=this._editorBridgeService.getLatestEditCellState();if(n==null)return;this._editorSyncHandler(n);const e=[{startOffset:0,endOffset:0}];this._textSelectionManagerService.replaceTextRanges(e)}_editorSyncHandler(t){var o,a;const n=(o=t.documentLayoutObject.documentModel)==null?void 0:o.getBody(),e=n==null?void 0:n.dataStream,r=n==null?void 0:n.paragraphs;let s=[];e==null||r==null||((a=n==null?void 0:n.textRuns)!=null&&a.length&&(s=n==null?void 0:n.textRuns),this._syncContentAndRender(f,e,r,s))}_syncContentAndRender(t,n,e,r=[]){const s=[f,c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY],o=this._docSkeletonManagerService.getSkeletonByUnitId(t),a=this._univerInstanceService.getUniverDocInstance(t),l=this._docViewModelManagerService.getViewModel(t);if(a==null||l==null||o==null)return;const u=a.getBody();u.dataStream=n,u.paragraphs=e,t===c.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY&&(u.textRuns=[]),r.length>0&&(u.textRuns=r),l.reset(a);const{skeleton:_}=o,p=this._getDocObject();p!=null&&(_.calculate(),s.includes(t)&&p.document.makeDirty())}_calculatePagePosition(t){const{document:n,scene:e}=t,r=e==null?void 0:e.getParent(),{width:s,height:o,pageMarginLeft:a,pageMarginTop:l}=n;if(r==null||s===Number.POSITIVE_INFINITY||o===Number.POSITIVE_INFINITY)return;const{width:u,height:_}=r;let p=0,V=0,x=0,B=0,U=Number.POSITIVE_INFINITY;const{scaleX:z,scaleY:Re}=e.getAncestorScale();u>(s+a*2)*z?(p=u/2-s*z/2,p/=z,x=(u-a*2)/z,U=0):(p=a,x=s+a*2,U=(x-u/z)/2),_>o?(V=_/2-o/2,B=(_-l*2)/Re):(V=l,B=o+l*2),e.resize(x,B+200),n.translate(p,V);const k=e.getViewport(O.VIEWPORT_KEY.VIEW_MAIN);if(U!==Number.POSITIVE_INFINITY&&k!=null){const je=k.getBarScroll(U,0).x;k.scrollTo({x:je})}return this}_commandExecutedListener(){const t=[P.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{t.includes(e.id)&&this._handleOpenZenEditor()}));const n=[O.RichTextEditingMutation.id];this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(n.includes(e.id)){const r=e.params,{unitId:s}=r;if(s===f){const o=this._univerInstanceService.getUniverDocInstance(s),a=o==null?void 0:o.getBody(),l=a==null?void 0:a.dataStream,u=a==null?void 0:a.paragraphs,_=a==null?void 0:a.textRuns;if(this._editorBridgeService.changeEditorDirty(!0),l==null||u==null)return;this._syncContentAndRender(c.DOCS_NORMAL_EDITOR_UNIT_ID_KEY,l,u,_)}}}))}_getDocObject(){return O.getDocObject(this._univerInstanceService,this._renderManagerService)}};M=ne([c.OnLifecycle(c.LifecycleStages.Steady,M),I(0,v.Inject(v.Injector)),I(1,c.IUniverInstanceService),I(2,Z),I(3,y.IRenderManagerService),I(4,c.ICommandService),I(5,h.IZenZoneService),I(6,N.IEditorBridgeService),I(7,c.IUndoRedoService),I(8,v.Inject(O.TextSelectionManagerService)),I(9,v.Inject(O.DocSkeletonManagerService)),I(10,v.Inject(O.DocViewModelManagerService))],M);const w={id:"zen-editor.command.cancel-zen-edit",type:c.CommandType.COMMAND,handler:async i=>{const t=i.get(h.IZenZoneService),n=i.get(N.IEditorBridgeService),e=i.get(c.IUniverInstanceService);n.isVisible().visible&&n.changeVisible({visible:!1,eventType:y.DeviceInputEventType.Keyboard,keycode:h.KeyCode.ESC}),t.close();const s=e.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return s?(e.focusUnit(s.getUnitId()),n.refreshEditCellState(),!0):!1}},L={id:"zen-editor.command.confirm-zen-edit",type:c.CommandType.COMMAND,handler:async i=>{const t=i.get(h.IZenZoneService),n=i.get(N.IEditorBridgeService),e=i.get(c.IUniverInstanceService);n.isVisible().visible&&n.changeVisible({visible:!1,eventType:y.DeviceInputEventType.PointerDown}),t.close();const s=e.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SHEET);return s?(e.focusUnit(s.getUnitId()),n.refreshEditCellState(),!0):!1}};function ie(){return{id:P.id,group:h.MenuGroup.CONTEXT_MENU_OTHERS,type:h.MenuItemType.BUTTON,title:"rightClick.zenEditor",icon:"AmplifySingle",positions:[h.MenuPosition.CONTEXT_MENU]}}var Y={exports:{}},R={};/**
|
|
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 re=g,se=Symbol.for("react.element"),oe=Symbol.for("react.fragment"),ce=Object.prototype.hasOwnProperty,ae=re.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,de={key:!0,ref:!0,__self:!0,__source:!0};function K(i,t,n){var e,r={},s=null,o=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(o=t.ref);for(e in t)ce.call(t,e)&&!de.hasOwnProperty(e)&&(r[e]=t[e]);if(i&&i.defaultProps)for(e in t=i.defaultProps,t)r[e]===void 0&&(r[e]=t[e]);return{$$typeof:se,type:i,key:s,ref:o,props:r,_owner:ae.current}}
|
|
9
|
+
*/var re=g,se=Symbol.for("react.element"),oe=Symbol.for("react.fragment"),ce=Object.prototype.hasOwnProperty,ae=re.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,de={key:!0,ref:!0,__self:!0,__source:!0};function K(i,t,n){var e,r={},s=null,o=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(o=t.ref);for(e in t)ce.call(t,e)&&!de.hasOwnProperty(e)&&(r[e]=t[e]);if(i&&i.defaultProps)for(e in t=i.defaultProps,t)r[e]===void 0&&(r[e]=t[e]);return{$$typeof:se,type:i,key:s,ref:o,props:r,_owner:ae.current}}R.Fragment=oe,R.jsx=K,R.jsxs=K,Y.exports=R;var E=Y.exports,S=function(){return S=Object.assign||function(i){for(var t,n=1,e=arguments.length;n<e;n++){t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(i[r]=t[r])}return i},S.apply(this,arguments)},le=function(i,t){var n={};for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&t.indexOf(e)<0&&(n[e]=i[e]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,e=Object.getOwnPropertySymbols(i);r<e.length;r++)t.indexOf(e[r])<0&&Object.prototype.propertyIsEnumerable.call(i,e[r])&&(n[e[r]]=i[e[r]]);return n},A=g.forwardRef(function(i,t){var n=i.icon,e=i.id,r=i.className,s=i.extend,o=le(i,["icon","id","className","extend"]),a="univerjs-icon univerjs-icon-".concat(e," ").concat(r||"").trim(),l=g.useRef("_".concat(he()));return H(n,"".concat(e),{defIds:n.defIds,idSuffix:l.current},S({ref:t,className:a},o),s)});function H(i,t,n,e,r){return g.createElement(i.tag,S(S({key:t},ue(i,n,r)),e),(ve(i,n).children||[]).map(function(s,o){return H(s,"".concat(t,"-").concat(i.tag,"-").concat(o),n,void 0,r)}))}function ue(i,t,n){var e=S({},i.attrs);n!=null&&n.colorChannel1&&e.fill==="colorChannel1"&&(e.fill=n.colorChannel1);var r=t.defIds;return!r||r.length===0||(i.tag==="use"&&e["xlink:href"]&&(e["xlink:href"]=e["xlink:href"]+t.idSuffix),Object.entries(e).forEach(function(s){var o=s[0],a=s[1];typeof a=="string"&&(e[o]=a.replace(/url\(#(.*)\)/,"url(#$1".concat(t.idSuffix,")")))})),e}function ve(i,t){var n,e=t.defIds;return!e||e.length===0?i:i.tag==="defs"&&(!((n=i.children)===null||n===void 0)&&n.length)?S(S({},i),{children:i.children.map(function(r){return typeof r.attrs.id=="string"&&e&&e.indexOf(r.attrs.id)>-1?S(S({},r),{attrs:S(S({},r.attrs),{id:r.attrs.id+t.idSuffix})}):r})}):i}function he(){return Math.random().toString(36).substring(2,8)}A.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.44 3.57291C14.698 3.83093 14.698 4.24927 14.44 4.50729L6.44342 12.5037C6.28721 12.6599 6.03395 12.6599 5.87774 12.5037L1.55992 8.18578C1.3019 7.92776 1.3019 7.50942 1.55993 7.2514C1.81795 6.99338 2.23629 6.99338 2.49431 7.25141L6.01916 10.7763C6.09727 10.8544 6.2239 10.8544 6.30201 10.7763L13.5056 3.57291C13.7636 3.31489 14.1819 3.31489 14.44 3.57291Z",fillRule:"evenodd",clipRule:"evenodd"}}]},$=g.forwardRef(function(i,t){return g.createElement(A,Object.assign({},i,{id:"check-mark-single",ref:t,icon:_e}))});$.displayName="CheckMarkSingle";const fe=$;var Se={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.57061 3.65132C4.31677 3.39748 3.90521 3.39748 3.65137 3.65132C3.39753 3.90516 3.39753 4.31672 3.65137 4.57056L7.08079 7.99998L3.65123 11.4295C3.39739 11.6834 3.39739 12.0949 3.65123 12.3488C3.90507 12.6026 4.31662 12.6026 4.57047 12.3488L8.00003 8.91921L11.4295 12.3487C11.6834 12.6026 12.0949 12.6026 12.3488 12.3487C12.6026 12.0949 12.6026 11.6833 12.3488 11.4295L8.91927 7.99998L12.3486 4.57061C12.6025 4.31677 12.6025 3.90521 12.3486 3.65137C12.0948 3.39753 11.6832 3.39753 11.4294 3.65137L8.00003 7.08074L4.57061 3.65132Z"}}]},X=g.forwardRef(function(i,t){return g.createElement(A,Object.assign({},i,{id:"close-single",ref:t,icon:Se}))});X.displayName="CloseSingle";const pe=X,m={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"},Ie="ZEN_EDITOR_PLUGIN_ZEN_EDITOR_COMPONENT";function ge(){const i=g.useRef(null),t=b.useDependency(y.IRenderManagerService),n=b.useDependency(Z),e=b.useDependency(c.ICommandService);g.useEffect(()=>{const o=i.current;if(!o)return;const a=t.currentRender$.subscribe(u=>{var p;if(u!==f)return;const _=(p=t.getRenderById(f))==null?void 0:p.engine;_==null||_.setContainer(o)}),l=new ResizeObserver(()=>{const u=o.getBoundingClientRect();n.setPosition(u)});return l.observe(o),()=>{l.unobserve(o),a.unsubscribe()}},[]);function r(){e.executeCommand(w.id)}function s(){e.executeCommand(L.id)}return E.jsxs("div",{className:m.zenEditor,children:[E.jsxs("div",{className:m.zenEditorIconWrapper,children:[E.jsx("span",{className:W(m.zenEditorIconContainer,m.zenEditorIconError),onClick:r,children:E.jsx(pe,{style:{fontSize:"22px"}})}),E.jsx("span",{className:W(m.zenEditorIconContainer,m.zenEditorIconSuccess),onClick:s,children:E.jsx(fe,{style:{fontSize:"22px"}})})]}),E.jsx("div",{className:m.zenEditorCanvasContainer,ref:i})]})}const Ee={id:L.id,description:"shortcut.sheet.zen-edit-confirm",group:"4_sheet-edit",preconditions:i=>G(i),binding:h.KeyCode.ENTER|h.MetaKeys.ALT},me={id:w.id,description:"shortcut.sheet.zen-edit-cancel",group:"4_sheet-edit",preconditions:i=>G(i),binding:h.KeyCode.ESC};function G(i){return i.getContextValue(c.FOCUSING_DOC)&&i.getContextValue(c.FOCUSING_UNIVER_EDITOR)&&i.getContextValue(c.EDITOR_ACTIVATED)&&!i.getContextValue(c.FOCUSING_EDITOR_STANDALONE)}var Ce=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,ye=(i,t,n,e)=>{for(var r=e>1?void 0:e?Oe(t,n):t,s=i.length-1,o;s>=0;s--)(o=i[s])&&(r=(e?o(t,n,r):o(r))||r);return e&&r&&Ce(t,n,r),r},T=(i,t)=>(n,e)=>t(n,e,i);let j=class extends c.Disposable{constructor(i,t,n,e,r){super(),this._injector=i,this._zenZoneService=t,this._commandService=n,this._menuService=e,this._shortcutService=r,this._initialize()}_initialize(){this._initCustomComponents(),this._initCommands(),this._initMenus(),this._initShortcuts()}_initCustomComponents(){this.disposeWithMe(this._zenZoneService.set(Ie,ge))}_initCommands(){[P,w,L].forEach(i=>{this.disposeWithMe(this._commandService.registerCommand(i))})}_initMenus(){[ie].forEach(i=>{this.disposeWithMe(this._menuService.addMenuItem(this._injector.invoke(i)))})}_initShortcuts(){[Ee,me].forEach(i=>{this.disposeWithMe(this._shortcutService.registerShortcut(i))})}};j=ye([c.OnLifecycle(c.LifecycleStages.Rendered,j),T(0,v.Inject(v.Injector)),T(1,h.IZenZoneService),T(2,c.ICommandService),T(3,h.IMenuService),T(4,h.IShortcutService)],j);const Te={shortcut:{sheet:{"zen-edit-cancel":"Cancel Zen Edit","zen-edit-confirm":"Confirm Zen Edit"}}},q={shortcut:{sheet:{"zen-edit-cancel":"取消编辑(禅模式状态)","zen-edit-confirm":"放弃编辑(禅模式状态)"}}};var ze=Object.defineProperty,Ne=Object.getOwnPropertyDescriptor,Me=(i,t,n,e)=>{for(var r=e>1?void 0:e?Ne(t,n):t,s=i.length-1,o;s>=0;s--)(o=i[s])&&(r=(e?o(t,n,r):o(r))||r);return e&&r&&ze(t,n,r),r},J=(i,t)=>(n,e)=>t(n,e,i);d.UniverSheetsZenEditorPlugin=(D=class extends c.Plugin{constructor(t,n,e){super(),this._injector=n,this._localeService=e,this._initialize(),this._initializeDependencies(this._injector)}_initialize(){this._localeService.load({zhCN:q})}_initializeDependencies(t){[[j],[M],[Z,{useClass:Q}]].forEach(e=>t.add(e))}},C(D,"pluginName","zen-editor"),C(D,"type",c.UniverInstanceType.UNIVER_DOC),D),d.UniverSheetsZenEditorPlugin=Me([J(1,v.Inject(v.Injector)),J(2,v.Inject(c.LocaleService))],d.UniverSheetsZenEditorPlugin),d.enUS=Te,d.zhCN=q,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.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Zen Editor plugin for Univer Sheets.",
|
|
6
6
|
"author": "DreamNum <developer@univer.ai>",
|
|
@@ -53,35 +53,35 @@
|
|
|
53
53
|
"npm": ">=8.0.0"
|
|
54
54
|
},
|
|
55
55
|
"peerDependencies": {
|
|
56
|
-
"@wendellhu/redi": "0.13.
|
|
56
|
+
"@wendellhu/redi": "^0.13.3",
|
|
57
57
|
"clsx": ">=2.0.0",
|
|
58
|
-
"react": "
|
|
58
|
+
"react": "^16.9.0 || ^17.0.0 || ^18.0.0",
|
|
59
59
|
"rxjs": ">=7.0.0",
|
|
60
|
-
"@univerjs/core": "0.1.
|
|
61
|
-
"@univerjs/docs": "0.1.
|
|
62
|
-
"@univerjs/engine-render": "0.1.
|
|
63
|
-
"@univerjs/sheets-ui": "0.1.
|
|
64
|
-
"@univerjs/ui": "0.1.
|
|
60
|
+
"@univerjs/core": "0.1.8",
|
|
61
|
+
"@univerjs/docs": "0.1.8",
|
|
62
|
+
"@univerjs/engine-render": "0.1.8",
|
|
63
|
+
"@univerjs/sheets-ui": "0.1.8",
|
|
64
|
+
"@univerjs/ui": "0.1.8"
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@univerjs/icons": "^0.1.
|
|
67
|
+
"@univerjs/icons": "^0.1.44"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
|
-
"@wendellhu/redi": "^0.13.
|
|
71
|
-
"clsx": "^2.1.
|
|
70
|
+
"@wendellhu/redi": "^0.13.3",
|
|
71
|
+
"clsx": "^2.1.1",
|
|
72
72
|
"less": "^4.2.0",
|
|
73
73
|
"react": "^18.2.0",
|
|
74
74
|
"rxjs": "^7.8.1",
|
|
75
|
-
"typescript": "^5.4.
|
|
76
|
-
"vite": "^5.2.
|
|
77
|
-
"vitest": "^1.
|
|
78
|
-
"@univerjs/core": "0.1.
|
|
79
|
-
"@univerjs/design": "0.1.
|
|
80
|
-
"@univerjs/
|
|
81
|
-
"@univerjs/
|
|
82
|
-
"@univerjs/
|
|
83
|
-
"@univerjs/
|
|
84
|
-
"@univerjs/ui": "0.1.
|
|
75
|
+
"typescript": "^5.4.5",
|
|
76
|
+
"vite": "^5.2.10",
|
|
77
|
+
"vitest": "^1.5.0",
|
|
78
|
+
"@univerjs/core": "0.1.8",
|
|
79
|
+
"@univerjs/design": "0.1.8",
|
|
80
|
+
"@univerjs/engine-render": "0.1.8",
|
|
81
|
+
"@univerjs/shared": "0.1.8",
|
|
82
|
+
"@univerjs/sheets-ui": "0.1.8",
|
|
83
|
+
"@univerjs/docs": "0.1.8",
|
|
84
|
+
"@univerjs/ui": "0.1.8"
|
|
85
85
|
},
|
|
86
86
|
"scripts": {
|
|
87
87
|
"test": "vitest run",
|