@univerjs/slides-ui 0.1.17 → 0.2.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
@@ -1,4 +1,4 @@
1
- "use strict";var T=Object.defineProperty;var L=(t,e,r)=>e in t?T(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var h=(t,e,r)=>L(t,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@univerjs/core"),_=require("@wendellhu/redi"),U=require("@univerjs/ui"),f=require("@wendellhu/redi/react-bindings"),d=require("react"),w=require("clsx"),A=require("@univerjs/engine-render"),O=require("@univerjs/slides");var B={exports:{}},g={};/**
1
+ "use strict";var N=Object.defineProperty;var L=(t,e,r)=>e in t?N(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var h=(t,e,r)=>L(t,typeof e!="symbol"?e+"":e,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@univerjs/core"),S=require("@wendellhu/redi"),O=require("@univerjs/ui"),v=require("@wendellhu/redi/react-bindings"),d=require("react"),q=require("clsx"),V=require("@univerjs/design"),$=require("@univerjs/engine-render"),U=require("@univerjs/slides");var j={exports:{}},g={};/**
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 q=d,V=Symbol.for("react.element"),$=Symbol.for("react.fragment"),M=Object.prototype.hasOwnProperty,F=q.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,W={key:!0,ref:!0,__self:!0,__source:!0};function C(t,e,r){var i,n={},s=null,a=null;r!==void 0&&(s=""+r),e.key!==void 0&&(s=""+e.key),e.ref!==void 0&&(a=e.ref);for(i in e)M.call(e,i)&&!W.hasOwnProperty(i)&&(n[i]=e[i]);if(t&&t.defaultProps)for(i in e=t.defaultProps,e)n[i]===void 0&&(n[i]=e[i]);return{$$typeof:V,type:t,key:s,ref:a,props:n,_owner:F.current}}g.Fragment=$;g.jsx=C;g.jsxs=C;B.exports=g;var u=B.exports;const b={id:"slide.operation.activate-slide",type:c.CommandType.OPERATION,handler:(t,e)=>(t.get(O.CanvasView).activePage(e.id),!0)},j={id:"slide.operation.set-slide-page-thumb",type:c.CommandType.OPERATION,handler:t=>(t.get(O.CanvasView).createThumbs(),!0)},G="univer-slide-bar",J="univer-slide-bar-content",Y="univer-slide-bar-item",z="univer-slide-bar-box",H="univer-slide-bar-item-active",K="univer-slide-add-button",v={slideBar:G,slideBarContent:J,slideBarItem:Y,slideBarBox:z,slideBarItemActive:H,slideAddButton:K};function Q(){const t=f.useDependency(c.IUniverInstanceService),e=f.useDependency(c.ICommandService),r=f.useDependency(A.IRenderManagerService),i=d.useRef(null),n=U.useObservable(()=>t.getCurrentTypeOfUnit$(c.UniverInstanceType.UNIVER_SLIDE),void 0,void 0,[]),s=n==null?void 0:n.getPages(),a=n==null?void 0:n.getPageOrder();if(!s||!a)return null;const m=a.map(o=>s[o]),[p,x]=d.useState([]);d.useEffect(()=>{x(m.map(o=>d.createRef()))},[m.length]),d.useEffect(()=>{p.forEach((o,l)=>{var E;if(o.current){const N=m[l];(E=r.getRenderById(N.id))==null||E.engine.setContainer(o.current)}}),p.length>0&&e.syncExecuteCommand(j.id)},[p]);const D=d.useCallback(o=>{e.syncExecuteCommand(b.id,{id:o})},[e]);return u.jsx("div",{className:v.slideBar,ref:i,children:u.jsx("div",{className:v.slideBarContent,children:m.map((o,l)=>u.jsxs("div",{className:w(v.slideBarItem,{[v.slideBarItemActive]:!1}),onClick:()=>D(o.id),children:[u.jsx("span",{children:l+1}),u.jsx("div",{ref:p[l],className:v.slideBarBox})]},l))})})}var X=Object.defineProperty,Z=Object.getOwnPropertyDescriptor,k=(t,e,r,i)=>{for(var n=i>1?void 0:i?Z(e,r):e,s=t.length-1,a;s>=0;s--)(a=t[s])&&(n=(i?a(e,r,n):a(n))||n);return i&&n&&X(e,r,n),n},y=(t,e)=>(r,i)=>e(r,i,t);let S=class extends c.Disposable{constructor(t,e,r){super(),this._injector=t,this._uiPartsService=e,this._commandService=r,this._initCommands(),this._initUIComponents()}_initCommands(){[b,j].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initUIComponents(){this.disposeWithMe(this._uiPartsService.registerComponent(U.BuiltInUIPart.LEFT_SIDEBAR,()=>f.connectInjector(Q,this._injector)))}};S=k([c.OnLifecycle(c.LifecycleStages.Ready,S),y(0,_.Inject(_.Injector)),y(1,U.IUIPartsService),y(2,c.ICommandService)],S);var ee=Object.defineProperty,te=Object.getOwnPropertyDescriptor,re=(t,e,r,i)=>{for(var n=i>1?void 0:i?te(e,r):e,s=t.length-1,a;s>=0;s--)(a=t[s])&&(n=(i?a(e,r,n):a(n))||n);return i&&n&&ee(e,r,n),n},P=(t,e)=>(r,i)=>e(r,i,t);const R="slides-ui";var I;exports.UniverSlidesUIPlugin=(I=class extends c.Plugin{constructor(e,r,i,n){super(),this._injector=r,this._localeService=i,this._univerInstanceService=n}onStarting(e){[[S]].forEach(r=>e.add(r))}onRendered(){this._markSlideAsFocused()}_markSlideAsFocused(){const e=this._univerInstanceService;try{const r=e.getCurrentUnitForType(c.UniverInstanceType.UNIVER_SLIDE);e.focusUnit(r.getUnitId())}catch{}}},h(I,"pluginName",R),h(I,"type",c.UniverInstanceType.UNIVER_SLIDE),I);exports.UniverSlidesUIPlugin=re([P(1,_.Inject(_.Injector)),P(2,_.Inject(c.LocaleService)),P(3,c.IUniverInstanceService)],exports.UniverSlidesUIPlugin);exports.SLIDE_UI_PLUGIN_NAME=R;
9
+ */var F=d,M=Symbol.for("react.element"),W=Symbol.for("react.fragment"),G=Object.prototype.hasOwnProperty,J=F.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Y={key:!0,ref:!0,__self:!0,__source:!0};function R(t,e,r){var n,i={},s=null,a=null;r!==void 0&&(s=""+r),e.key!==void 0&&(s=""+e.key),e.ref!==void 0&&(a=e.ref);for(n in e)G.call(e,n)&&!Y.hasOwnProperty(n)&&(i[n]=e[n]);if(t&&t.defaultProps)for(n in e=t.defaultProps,e)i[n]===void 0&&(i[n]=e[n]);return{$$typeof:M,type:t,key:s,ref:a,props:i,_owner:J.current}}g.Fragment=W;g.jsx=R;g.jsxs=R;j.exports=g;var l=j.exports;const b={id:"slide.operation.activate-slide",type:o.CommandType.OPERATION,handler:(t,e)=>(t.get(U.CanvasView).activePage(e.id),!0)},C={id:"slide.operation.set-slide-page-thumb",type:o.CommandType.OPERATION,handler:t=>(t.get(U.CanvasView).createThumbs(),!0)},z="univer-slide-bar",H="univer-slide-bar-content",K="univer-slide-bar-item",Q="univer-slide-bar-box",X="univer-slide-bar-item-active",Z="univer-slide-add-button",u={slideBar:z,slideBarContent:H,slideBarItem:K,slideBarBox:Q,slideBarItemActive:X,slideAddButton:Z};function k(){const t=v.useDependency(o.IUniverInstanceService),e=v.useDependency(o.ICommandService),r=v.useDependency($.IRenderManagerService),n=v.useDependency(U.CanvasView),i=d.useRef(null),s=O.useObservable(()=>t.getCurrentTypeOfUnit$(o.UniverInstanceType.UNIVER_SLIDE),void 0,void 0,[]),a=s==null?void 0:s.getPages(),P=s==null?void 0:s.getPageOrder();if(!a||!P)return null;const p=P.map(c=>a[c]),[m,x]=d.useState([]),[D,T]=d.useState(P[0]);d.useEffect(()=>{x(p.map(c=>d.createRef()))},[p]),d.useEffect(()=>{n.activePageId$.subscribe(c=>{T(c)})},[]),d.useEffect(()=>{m.forEach((c,_)=>{var E;if(c.current){const A=p[_];(E=r.getRenderById(A.id))==null||E.engine.setContainer(c.current)}}),m.length>0&&e.syncExecuteCommand(C.id)},[m]);const w=d.useCallback(c=>{e.syncExecuteCommand(b.id,{id:c})},[e]);return l.jsx("div",{className:u.slideBar,ref:i,children:l.jsx(V.Scrollbar,{children:l.jsx("div",{className:u.slideBarContent,children:p.map((c,_)=>l.jsxs("div",{className:q(u.slideBarItem,{[u.slideBarItemActive]:c.id===D}),onClick:()=>w(c.id),children:[l.jsx("span",{children:_+1}),l.jsx("div",{ref:m[_],className:u.slideBarBox})]},c.id))})})})}var ee=Object.defineProperty,te=Object.getOwnPropertyDescriptor,re=(t,e,r,n)=>{for(var i=n>1?void 0:n?te(e,r):e,s=t.length-1,a;s>=0;s--)(a=t[s])&&(i=(n?a(e,r,i):a(i))||i);return n&&i&&ee(e,r,i),i},y=(t,e)=>(r,n)=>e(r,n,t);let f=class extends o.Disposable{constructor(t,e,r){super(),this._injector=t,this._uiPartsService=e,this._commandService=r,this._initCommands(),this._initUIComponents()}_initCommands(){[b,C].forEach(t=>this.disposeWithMe(this._commandService.registerCommand(t)))}_initUIComponents(){this.disposeWithMe(this._uiPartsService.registerComponent(O.BuiltInUIPart.LEFT_SIDEBAR,()=>v.connectInjector(k,this._injector)))}};f=re([o.OnLifecycle(o.LifecycleStages.Ready,f),y(0,S.Inject(S.Injector)),y(1,O.IUIPartsService),y(2,o.ICommandService)],f);var ne=Object.defineProperty,ie=Object.getOwnPropertyDescriptor,se=(t,e,r,n)=>{for(var i=n>1?void 0:n?ie(e,r):e,s=t.length-1,a;s>=0;s--)(a=t[s])&&(i=(n?a(e,r,i):a(i))||i);return n&&i&&ne(e,r,i),i},B=(t,e)=>(r,n)=>e(r,n,t);const ae="SLIDE_UI";var I;exports.UniverSlidesUIPlugin=(I=class extends o.Plugin{constructor(e,r,n){super(),this._injector=r,this._univerInstanceService=n}onStarting(e){[[f]].forEach(r=>e.add(r))}onRendered(){this._markSlideAsFocused()}_markSlideAsFocused(){const e=this._univerInstanceService;try{const r=e.getCurrentUnitForType(o.UniverInstanceType.UNIVER_SLIDE);e.focusUnit(r.getUnitId())}catch{}}},h(I,"pluginName",ae),h(I,"type",o.UniverInstanceType.UNIVER_SLIDE),I);exports.UniverSlidesUIPlugin=se([B(1,S.Inject(S.Injector)),B(2,o.IUniverInstanceService)],exports.UniverSlidesUIPlugin);exports.ActivateSlidePageOperation=b;exports.SetSlidePageThumbOperation=C;
package/lib/es/index.js CHANGED
@@ -1,15 +1,16 @@
1
- var $ = Object.defineProperty;
2
- var V = (t, e, s) => e in t ? $(t, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : t[e] = s;
3
- var f = (t, e, s) => V(t, typeof e != "symbol" ? e + "" : e, s);
4
- import { CommandType as E, IUniverInstanceService as C, ICommandService as R, UniverInstanceType as g, Disposable as F, OnLifecycle as M, LifecycleStages as W, Plugin as q, LocaleService as G } from "@univerjs/core";
5
- import { Inject as P, Injector as b } from "@wendellhu/redi";
6
- import { useObservable as J, BuiltInUIPart as Y, IUIPartsService as z } from "@univerjs/ui";
7
- import { useDependency as I, connectInjector as H } from "@wendellhu/redi/react-bindings";
8
- import x, { useRef as K, useState as Q, useEffect as O, useCallback as X } from "react";
9
- import Z from "clsx";
10
- import { IRenderManagerService as k } from "@univerjs/engine-render";
11
- import { CanvasView as j } from "@univerjs/slides";
12
- var U = { exports: {} }, _ = {};
1
+ var W = Object.defineProperty;
2
+ var q = (t, e, r) => e in t ? W(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
3
+ var h = (t, e, r) => q(t, typeof e != "symbol" ? e + "" : e, r);
4
+ import { CommandType as x, IUniverInstanceService as C, ICommandService as R, UniverInstanceType as P, Disposable as G, OnLifecycle as J, LifecycleStages as Y, Plugin as z } from "@univerjs/core";
5
+ import { Inject as j, Injector as U } from "@wendellhu/redi";
6
+ import { useObservable as H, BuiltInUIPart as K, IUIPartsService as Q } from "@univerjs/ui";
7
+ import { useDependency as u, connectInjector as X } from "@wendellhu/redi/react-bindings";
8
+ import D, { useRef as Z, useState as B, useEffect as S, useCallback as k } from "react";
9
+ import ee from "clsx";
10
+ import { Scrollbar as te } from "@univerjs/design";
11
+ import { IRenderManagerService as re } from "@univerjs/engine-render";
12
+ import { CanvasView as y } from "@univerjs/slides";
13
+ var N = { exports: {} }, f = {};
13
14
  /**
14
15
  * @license React
15
16
  * react-jsx-runtime.production.min.js
@@ -19,115 +20,118 @@ var U = { exports: {} }, _ = {};
19
20
  * This source code is licensed under the MIT license found in the
20
21
  * LICENSE file in the root directory of this source tree.
21
22
  */
22
- var ee = x, te = Symbol.for("react.element"), re = Symbol.for("react.fragment"), ie = Object.prototype.hasOwnProperty, se = ee.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, ne = { key: !0, ref: !0, __self: !0, __source: !0 };
23
- function N(t, e, s) {
24
- var r, i = {}, n = null, o = null;
25
- s !== void 0 && (n = "" + s), e.key !== void 0 && (n = "" + e.key), e.ref !== void 0 && (o = e.ref);
26
- for (r in e) ie.call(e, r) && !ne.hasOwnProperty(r) && (i[r] = e[r]);
27
- if (t && t.defaultProps) for (r in e = t.defaultProps, e) i[r] === void 0 && (i[r] = e[r]);
28
- return { $$typeof: te, type: t, key: n, ref: o, props: i, _owner: se.current };
23
+ var ie = D, se = Symbol.for("react.element"), ne = Symbol.for("react.fragment"), oe = Object.prototype.hasOwnProperty, ae = ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, ce = { key: !0, ref: !0, __self: !0, __source: !0 };
24
+ function w(t, e, r) {
25
+ var i, s = {}, n = null, o = null;
26
+ r !== void 0 && (n = "" + r), e.key !== void 0 && (n = "" + e.key), e.ref !== void 0 && (o = e.ref);
27
+ for (i in e) oe.call(e, i) && !ce.hasOwnProperty(i) && (s[i] = e[i]);
28
+ if (t && t.defaultProps) for (i in e = t.defaultProps, e) s[i] === void 0 && (s[i] = e[i]);
29
+ return { $$typeof: se, type: t, key: n, ref: o, props: s, _owner: ae.current };
29
30
  }
30
- _.Fragment = re;
31
- _.jsx = N;
32
- _.jsxs = N;
33
- U.exports = _;
34
- var d = U.exports;
35
- const D = {
31
+ f.Fragment = ne;
32
+ f.jsx = w;
33
+ f.jsxs = w;
34
+ N.exports = f;
35
+ var c = N.exports;
36
+ const A = {
36
37
  id: "slide.operation.activate-slide",
37
- type: E.OPERATION,
38
- handler: (t, e) => (t.get(j).activePage(e.id), !0)
39
- }, w = {
38
+ type: x.OPERATION,
39
+ handler: (t, e) => (t.get(y).activePage(e.id), !0)
40
+ }, L = {
40
41
  id: "slide.operation.set-slide-page-thumb",
41
- type: E.OPERATION,
42
- handler: (t) => (t.get(j).createThumbs(), !0)
43
- }, oe = "univer-slide-bar", ae = "univer-slide-bar-content", ce = "univer-slide-bar-item", de = "univer-slide-bar-box", le = "univer-slide-bar-item-active", ve = "univer-slide-add-button", l = {
44
- slideBar: oe,
45
- slideBarContent: ae,
46
- slideBarItem: ce,
47
- slideBarBox: de,
48
- slideBarItemActive: le,
49
- slideAddButton: ve
42
+ type: x.OPERATION,
43
+ handler: (t) => (t.get(y).createThumbs(), !0)
44
+ }, de = "univer-slide-bar", le = "univer-slide-bar-content", ve = "univer-slide-bar-item", me = "univer-slide-bar-box", ue = "univer-slide-bar-item-active", pe = "univer-slide-add-button", d = {
45
+ slideBar: de,
46
+ slideBarContent: le,
47
+ slideBarItem: ve,
48
+ slideBarBox: me,
49
+ slideBarItemActive: ue,
50
+ slideAddButton: pe
50
51
  };
51
- function me() {
52
- const t = I(C), e = I(R), s = I(k), r = K(null), i = J(
53
- () => t.getCurrentTypeOfUnit$(g.UNIVER_SLIDE),
52
+ function _e() {
53
+ const t = u(C), e = u(R), r = u(re), i = u(y), s = Z(null), n = H(
54
+ () => t.getCurrentTypeOfUnit$(P.UNIVER_SLIDE),
54
55
  void 0,
55
56
  void 0,
56
57
  []
57
- ), n = i == null ? void 0 : i.getPages(), o = i == null ? void 0 : i.getPageOrder();
58
- if (!n || !o)
58
+ ), o = n == null ? void 0 : n.getPages(), I = n == null ? void 0 : n.getPageOrder();
59
+ if (!o || !I)
59
60
  return null;
60
- const v = o.map((a) => n[a]), [m, A] = Q([]);
61
- O(() => {
62
- A(v.map((a) => x.createRef()));
63
- }, [v.length]), O(() => {
64
- m.forEach((a, c) => {
65
- var y;
61
+ const l = I.map((a) => o[a]), [v, T] = B([]), [$, V] = B(I[0]);
62
+ S(() => {
63
+ T(l.map((a) => D.createRef()));
64
+ }, [l]), S(() => {
65
+ i.activePageId$.subscribe((a) => {
66
+ V(a);
67
+ });
68
+ }, []), S(() => {
69
+ v.forEach((a, m) => {
70
+ var O;
66
71
  if (a.current) {
67
- const T = v[c];
68
- (y = s.getRenderById(T.id)) == null || y.engine.setContainer(a.current);
72
+ const M = l[m];
73
+ (O = r.getRenderById(M.id)) == null || O.engine.setContainer(a.current);
69
74
  }
70
- }), m.length > 0 && e.syncExecuteCommand(w.id);
71
- }, [m]);
72
- const L = X((a) => {
73
- e.syncExecuteCommand(D.id, { id: a });
75
+ }), v.length > 0 && e.syncExecuteCommand(L.id);
76
+ }, [v]);
77
+ const F = k((a) => {
78
+ e.syncExecuteCommand(A.id, { id: a });
74
79
  }, [e]);
75
- return /* @__PURE__ */ d.jsx("div", { className: l.slideBar, ref: r, children: /* @__PURE__ */ d.jsx("div", { className: l.slideBarContent, children: v.map((a, c) => /* @__PURE__ */ d.jsxs(
80
+ return /* @__PURE__ */ c.jsx("div", { className: d.slideBar, ref: s, children: /* @__PURE__ */ c.jsx(te, { children: /* @__PURE__ */ c.jsx("div", { className: d.slideBarContent, children: l.map((a, m) => /* @__PURE__ */ c.jsxs(
76
81
  "div",
77
82
  {
78
- className: Z(l.slideBarItem, {
79
- [l.slideBarItemActive]: !1
80
- // TODO: If the slide is active, add the class slideBarItemActive
83
+ className: ee(d.slideBarItem, {
84
+ [d.slideBarItemActive]: a.id === $
81
85
  }),
82
- onClick: () => L(a.id),
86
+ onClick: () => F(a.id),
83
87
  children: [
84
- /* @__PURE__ */ d.jsx("span", { children: c + 1 }),
85
- /* @__PURE__ */ d.jsx("div", { ref: m[c], className: l.slideBarBox })
88
+ /* @__PURE__ */ c.jsx("span", { children: m + 1 }),
89
+ /* @__PURE__ */ c.jsx("div", { ref: v[m], className: d.slideBarBox })
86
90
  ]
87
91
  },
88
- c
89
- )) }) });
92
+ a.id
93
+ )) }) }) });
90
94
  }
91
- var ue = Object.defineProperty, pe = Object.getOwnPropertyDescriptor, _e = (t, e, s, r) => {
92
- for (var i = r > 1 ? void 0 : r ? pe(e, s) : e, n = t.length - 1, o; n >= 0; n--)
93
- (o = t[n]) && (i = (r ? o(e, s, i) : o(i)) || i);
94
- return r && i && ue(e, s, i), i;
95
- }, h = (t, e) => (s, r) => e(s, r, t);
96
- let p = class extends F {
97
- constructor(t, e, s) {
98
- super(), this._injector = t, this._uiPartsService = e, this._commandService = s, this._initCommands(), this._initUIComponents();
95
+ var fe = Object.defineProperty, Ie = Object.getOwnPropertyDescriptor, he = (t, e, r, i) => {
96
+ for (var s = i > 1 ? void 0 : i ? Ie(e, r) : e, n = t.length - 1, o; n >= 0; n--)
97
+ (o = t[n]) && (s = (i ? o(e, r, s) : o(s)) || s);
98
+ return i && s && fe(e, r, s), s;
99
+ }, g = (t, e) => (r, i) => e(r, i, t);
100
+ let _ = class extends G {
101
+ constructor(t, e, r) {
102
+ super(), this._injector = t, this._uiPartsService = e, this._commandService = r, this._initCommands(), this._initUIComponents();
99
103
  }
100
104
  _initCommands() {
101
105
  [
102
- D,
103
- w
106
+ A,
107
+ L
104
108
  ].forEach((t) => this.disposeWithMe(this._commandService.registerCommand(t)));
105
109
  }
106
110
  _initUIComponents() {
107
111
  this.disposeWithMe(
108
- this._uiPartsService.registerComponent(Y.LEFT_SIDEBAR, () => H(me, this._injector))
112
+ this._uiPartsService.registerComponent(K.LEFT_SIDEBAR, () => X(_e, this._injector))
109
113
  );
110
114
  }
111
115
  };
112
- p = _e([
113
- M(W.Ready, p),
114
- h(0, P(b)),
115
- h(1, z),
116
- h(2, R)
117
- ], p);
118
- var fe = Object.defineProperty, Ie = Object.getOwnPropertyDescriptor, he = (t, e, s, r) => {
119
- for (var i = r > 1 ? void 0 : r ? Ie(e, s) : e, n = t.length - 1, o; n >= 0; n--)
120
- (o = t[n]) && (i = (r ? o(e, s, i) : o(i)) || i);
121
- return r && i && fe(e, s, i), i;
122
- }, S = (t, e) => (s, r) => e(s, r, t);
123
- const Se = "slides-ui";
124
- var u;
125
- let B = (u = class extends q {
126
- constructor(t, e, s, r) {
127
- super(), this._injector = e, this._localeService = s, this._univerInstanceService = r;
116
+ _ = he([
117
+ J(Y.Ready, _),
118
+ g(0, j(U)),
119
+ g(1, Q),
120
+ g(2, R)
121
+ ], _);
122
+ var Se = Object.defineProperty, ge = Object.getOwnPropertyDescriptor, Pe = (t, e, r, i) => {
123
+ for (var s = i > 1 ? void 0 : i ? ge(e, r) : e, n = t.length - 1, o; n >= 0; n--)
124
+ (o = t[n]) && (s = (i ? o(e, r, s) : o(s)) || s);
125
+ return i && s && Se(e, r, s), s;
126
+ }, E = (t, e) => (r, i) => e(r, i, t);
127
+ const ye = "SLIDE_UI";
128
+ var p;
129
+ let b = (p = class extends z {
130
+ constructor(t, e, r) {
131
+ super(), this._injector = e, this._univerInstanceService = r;
128
132
  }
129
133
  onStarting(t) {
130
- [[p]].forEach((e) => t.add(e));
134
+ [[_]].forEach((e) => t.add(e));
131
135
  }
132
136
  onRendered() {
133
137
  this._markSlideAsFocused();
@@ -135,18 +139,18 @@ let B = (u = class extends q {
135
139
  _markSlideAsFocused() {
136
140
  const t = this._univerInstanceService;
137
141
  try {
138
- const e = t.getCurrentUnitForType(g.UNIVER_SLIDE);
142
+ const e = t.getCurrentUnitForType(P.UNIVER_SLIDE);
139
143
  t.focusUnit(e.getUnitId());
140
144
  } catch {
141
145
  }
142
146
  }
143
- }, f(u, "pluginName", Se), f(u, "type", g.UNIVER_SLIDE), u);
144
- B = he([
145
- S(1, P(b)),
146
- S(2, P(G)),
147
- S(3, C)
148
- ], B);
147
+ }, h(p, "pluginName", ye), h(p, "type", P.UNIVER_SLIDE), p);
148
+ b = Pe([
149
+ E(1, j(U)),
150
+ E(2, C)
151
+ ], b);
149
152
  export {
150
- Se as SLIDE_UI_PLUGIN_NAME,
151
- B as UniverSlidesUIPlugin
153
+ A as ActivateSlidePageOperation,
154
+ L as SetSlidePageThumbOperation,
155
+ b as UniverSlidesUIPlugin
152
156
  };
package/lib/index.css CHANGED
@@ -1 +1 @@
1
- .univer-slide-bar{display:flex;flex-direction:column;height:100%;background:#f5f7f9;border-right:1px solid #eaecf0;width:260px;overflow-x:hidden;overflow-y:auto}.univer-slide-bar .univer-slide-bar-content{padding:0 15px}.univer-slide-bar .univer-slide-bar-content::-webkit-scrollbar{width:5px}.univer-slide-bar .univer-slide-bar-content::-webkit-scrollbar-thumb{background:#eaecf0;border-radius:5px}.univer-slide-bar .univer-slide-bar-content::-webkit-scrollbar-track{background:#f5f7f9}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item{display:flex;margin:15px 0}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item span{width:15px;font-size:12px}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item .univer-slide-bar-box{position:relative;width:212px;height:120px;margin-left:5px;background:#fff;border:2px solid #c0c0c0}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item .univer-slide-bar-box:hover{border:2px solid #d66a2b}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item-active span{color:#d66a2b}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item-active .univer-slide-bar-box{border:2px solid #d66a2b}.univer-slide-bar .univer-slide-add-button{padding:10px 0;text-align:center}.univer-slide-bar .univer-slide-add-button button{width:45px;height:auto;font-size:24px;line-height:1;border-radius:10px}
1
+ .univer-slide-bar{display:flex;flex-direction:column;height:100%;background:#f5f7f9;border-right:1px solid #eaecf0;width:260px;overflow-x:hidden;overflow-y:auto}.univer-slide-bar .univer-slide-bar-content{padding:0 15px}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item{display:flex;margin:15px 0}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item span{width:15px;font-size:12px}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item .univer-slide-bar-box{position:relative;width:212px;height:120px;margin-left:5px;background:#fff;border:2px solid #c0c0c0}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item .univer-slide-bar-box:hover{border:2px solid #d66a2b}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item-active span{color:#d66a2b}.univer-slide-bar .univer-slide-bar-content .univer-slide-bar-item-active .univer-slide-bar-box{border:2px solid #d66a2b}.univer-slide-bar .univer-slide-add-button{padding:10px 0;text-align:center}.univer-slide-bar .univer-slide-add-button button{width:45px;height:auto;font-size:24px;line-height:1;border-radius:10px}
@@ -13,4 +13,6 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export * from './slides-ui-plugin';
16
+ export { UniverSlidesUIPlugin } from './slides-ui-plugin';
17
+ export { ActivateSlidePageOperation } from './commands/operations/activate.operation';
18
+ export { SetSlidePageThumbOperation } from './commands/operations/set-thumb.operation';
@@ -1,14 +1,13 @@
1
- import { IUniverInstanceService, LocaleService, Plugin, UniverInstanceType } from '@univerjs/core';
1
+ import { IUniverInstanceService, Plugin, UniverInstanceType } from '@univerjs/core';
2
2
  import { Injector } from '@wendellhu/redi';
3
3
 
4
- export declare const SLIDE_UI_PLUGIN_NAME = "slides-ui";
4
+ export declare const SLIDE_UI_PLUGIN_NAME = "SLIDE_UI";
5
5
  export declare class UniverSlidesUIPlugin extends Plugin {
6
6
  readonly _injector: Injector;
7
- private readonly _localeService;
8
7
  private readonly _univerInstanceService;
9
8
  static pluginName: string;
10
9
  static type: UniverInstanceType;
11
- constructor(_config: unknown, _injector: Injector, _localeService: LocaleService, _univerInstanceService: IUniverInstanceService);
10
+ constructor(_config: unknown, _injector: Injector, _univerInstanceService: IUniverInstanceService);
12
11
  onStarting(injector: Injector): void;
13
12
  onRendered(): void;
14
13
  private _markSlideAsFocused;
package/lib/umd/index.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(a,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("@univerjs/core"),require("@wendellhu/redi"),require("@univerjs/ui"),require("@wendellhu/redi/react-bindings"),require("react"),require("clsx"),require("@univerjs/engine-render"),require("@univerjs/slides")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@wendellhu/redi","@univerjs/ui","@wendellhu/redi/react-bindings","react","clsx","@univerjs/engine-render","@univerjs/slides"],t):(a=typeof globalThis<"u"?globalThis:a||self,t(a.UniverSlidesUi={},a.UniverCore,a["@wendellhu/redi"],a.UniverUi,a["@wendellhu/redi/react-bindings"],a.React,a.clsx,a.UniverEngineRender,a.UniverSlides))})(this,function(a,t,o,y,_,u,w,T,B){"use strict";var X=Object.defineProperty;var Z=(a,t,o)=>t in a?X(a,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[t]=o;var g=(a,t,o)=>Z(a,typeof t!="symbol"?t+"":t,o);var h;var C={exports:{}},f={};/**
1
+ (function(t,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("@univerjs/core"),require("@wendellhu/redi"),require("@univerjs/ui"),require("@wendellhu/redi/react-bindings"),require("react"),require("clsx"),require("@univerjs/design"),require("@univerjs/engine-render"),require("@univerjs/slides")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@wendellhu/redi","@univerjs/ui","@wendellhu/redi/react-bindings","react","clsx","@univerjs/design","@univerjs/engine-render","@univerjs/slides"],s):(t=typeof globalThis<"u"?globalThis:t||self,s(t.UniverSlidesUi={},t.UniverCore,t["@wendellhu/redi"],t.UniverUi,t["@wendellhu/redi/react-bindings"],t.React,t.clsx,t.UniverDesign,t.UniverEngineRender,t.UniverSlides))})(this,function(t,s,l,U,p,v,w,D,T,y){"use strict";var ee=Object.defineProperty;var ne=(t,s,l)=>s in t?ee(t,s,{enumerable:!0,configurable:!0,writable:!0,value:l}):t[s]=l;var B=(t,s,l)=>ne(t,typeof s!="symbol"?s+"":s,l);var _;var E={exports:{}},f={};/**
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 D=u,N=Symbol.for("react.element"),A=Symbol.for("react.fragment"),L=Object.prototype.hasOwnProperty,V=D.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,M={key:!0,ref:!0,__self:!0,__source:!0};function E(s,e,r){var i,n={},d=null,c=null;r!==void 0&&(d=""+r),e.key!==void 0&&(d=""+e.key),e.ref!==void 0&&(c=e.ref);for(i in e)L.call(e,i)&&!M.hasOwnProperty(i)&&(n[i]=e[i]);if(s&&s.defaultProps)for(i in e=s.defaultProps,e)n[i]===void 0&&(n[i]=e[i]);return{$$typeof:N,type:s,key:d,ref:c,props:n,_owner:V.current}}f.Fragment=A,f.jsx=E,f.jsxs=E,C.exports=f;var v=C.exports;const O={id:"slide.operation.activate-slide",type:t.CommandType.OPERATION,handler:(s,e)=>(s.get(B.CanvasView).activePage(e.id),!0)},R={id:"slide.operation.set-slide-page-thumb",type:t.CommandType.OPERATION,handler:s=>(s.get(B.CanvasView).createThumbs(),!0)},m={slideBar:"univer-slide-bar",slideBarContent:"univer-slide-bar-content",slideBarItem:"univer-slide-bar-item",slideBarBox:"univer-slide-bar-box",slideBarItemActive:"univer-slide-bar-item-active",slideAddButton:"univer-slide-add-button"};function F(){const s=_.useDependency(t.IUniverInstanceService),e=_.useDependency(t.ICommandService),r=_.useDependency(T.IRenderManagerService),i=u.useRef(null),n=y.useObservable(()=>s.getCurrentTypeOfUnit$(t.UniverInstanceType.UNIVER_SLIDE),void 0,void 0,[]),d=n==null?void 0:n.getPages(),c=n==null?void 0:n.getPageOrder();if(!d||!c)return null;const S=c.map(l=>d[l]),[U,H]=u.useState([]);u.useEffect(()=>{H(S.map(l=>u.createRef()))},[S.length]),u.useEffect(()=>{U.forEach((l,p)=>{var b;if(l.current){const Q=S[p];(b=r.getRenderById(Q.id))==null||b.engine.setContainer(l.current)}}),U.length>0&&e.syncExecuteCommand(R.id)},[U]);const K=u.useCallback(l=>{e.syncExecuteCommand(O.id,{id:l})},[e]);return v.jsx("div",{className:m.slideBar,ref:i,children:v.jsx("div",{className:m.slideBarContent,children:S.map((l,p)=>v.jsxs("div",{className:w(m.slideBarItem,{[m.slideBarItemActive]:!1}),onClick:()=>K(l.id),children:[v.jsx("span",{children:p+1}),v.jsx("div",{ref:U[p],className:m.slideBarBox})]},p))})})}var q=Object.defineProperty,W=Object.getOwnPropertyDescriptor,G=(s,e,r,i)=>{for(var n=i>1?void 0:i?W(e,r):e,d=s.length-1,c;d>=0;d--)(c=s[d])&&(n=(i?c(e,r,n):c(n))||n);return i&&n&&q(e,r,n),n},P=(s,e)=>(r,i)=>e(r,i,s);let I=class extends t.Disposable{constructor(s,e,r){super(),this._injector=s,this._uiPartsService=e,this._commandService=r,this._initCommands(),this._initUIComponents()}_initCommands(){[O,R].forEach(s=>this.disposeWithMe(this._commandService.registerCommand(s)))}_initUIComponents(){this.disposeWithMe(this._uiPartsService.registerComponent(y.BuiltInUIPart.LEFT_SIDEBAR,()=>_.connectInjector(F,this._injector)))}};I=G([t.OnLifecycle(t.LifecycleStages.Ready,I),P(0,o.Inject(o.Injector)),P(1,y.IUIPartsService),P(2,t.ICommandService)],I);var J=Object.defineProperty,Y=Object.getOwnPropertyDescriptor,z=(s,e,r,i)=>{for(var n=i>1?void 0:i?Y(e,r):e,d=s.length-1,c;d>=0;d--)(c=s[d])&&(n=(i?c(e,r,n):c(n))||n);return i&&n&&J(e,r,n),n},j=(s,e)=>(r,i)=>e(r,i,s);const x="slides-ui";a.UniverSlidesUIPlugin=(h=class extends t.Plugin{constructor(e,r,i,n){super(),this._injector=r,this._localeService=i,this._univerInstanceService=n}onStarting(e){[[I]].forEach(r=>e.add(r))}onRendered(){this._markSlideAsFocused()}_markSlideAsFocused(){const e=this._univerInstanceService;try{const r=e.getCurrentUnitForType(t.UniverInstanceType.UNIVER_SLIDE);e.focusUnit(r.getUnitId())}catch{}}},g(h,"pluginName",x),g(h,"type",t.UniverInstanceType.UNIVER_SLIDE),h),a.UniverSlidesUIPlugin=z([j(1,o.Inject(o.Injector)),j(2,o.Inject(t.LocaleService)),j(3,t.IUniverInstanceService)],a.UniverSlidesUIPlugin),a.SLIDE_UI_PLUGIN_NAME=x,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
9
+ */var A=v,N=Symbol.for("react.element"),L=Symbol.for("react.fragment"),V=Object.prototype.hasOwnProperty,F=A.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,M={key:!0,ref:!0,__self:!0,__source:!0};function R(r,e,i){var n,a={},d=null,c=null;i!==void 0&&(d=""+i),e.key!==void 0&&(d=""+e.key),e.ref!==void 0&&(c=e.ref);for(n in e)V.call(e,n)&&!M.hasOwnProperty(n)&&(a[n]=e[n]);if(r&&r.defaultProps)for(n in e=r.defaultProps,e)a[n]===void 0&&(a[n]=e[n]);return{$$typeof:N,type:r,key:d,ref:c,props:a,_owner:F.current}}f.Fragment=L,f.jsx=R,f.jsxs=R,E.exports=f;var u=E.exports;const g={id:"slide.operation.activate-slide",type:s.CommandType.OPERATION,handler:(r,e)=>(r.get(y.CanvasView).activePage(e.id),!0)},j={id:"slide.operation.set-slide-page-thumb",type:s.CommandType.OPERATION,handler:r=>(r.get(y.CanvasView).createThumbs(),!0)},m={slideBar:"univer-slide-bar",slideBarContent:"univer-slide-bar-content",slideBarItem:"univer-slide-bar-item",slideBarBox:"univer-slide-bar-box",slideBarItemActive:"univer-slide-bar-item-active",slideAddButton:"univer-slide-add-button"};function W(){const r=p.useDependency(s.IUniverInstanceService),e=p.useDependency(s.ICommandService),i=p.useDependency(T.IRenderManagerService),n=p.useDependency(y.CanvasView),a=v.useRef(null),d=U.useObservable(()=>r.getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_SLIDE),void 0,void 0,[]),c=d==null?void 0:d.getPages(),O=d==null?void 0:d.getPageOrder();if(!c||!O)return null;const S=O.map(o=>c[o]),[h,Q]=v.useState([]),[X,Z]=v.useState(O[0]);v.useEffect(()=>{Q(S.map(o=>v.createRef()))},[S]),v.useEffect(()=>{n.activePageId$.subscribe(o=>{Z(o)})},[]),v.useEffect(()=>{h.forEach((o,P)=>{var b;if(o.current){const $=S[P];(b=i.getRenderById($.id))==null||b.engine.setContainer(o.current)}}),h.length>0&&e.syncExecuteCommand(j.id)},[h]);const k=v.useCallback(o=>{e.syncExecuteCommand(g.id,{id:o})},[e]);return u.jsx("div",{className:m.slideBar,ref:a,children:u.jsx(D.Scrollbar,{children:u.jsx("div",{className:m.slideBarContent,children:S.map((o,P)=>u.jsxs("div",{className:w(m.slideBarItem,{[m.slideBarItemActive]:o.id===X}),onClick:()=>k(o.id),children:[u.jsx("span",{children:P+1}),u.jsx("div",{ref:h[P],className:m.slideBarBox})]},o.id))})})})}var q=Object.defineProperty,G=Object.getOwnPropertyDescriptor,J=(r,e,i,n)=>{for(var a=n>1?void 0:n?G(e,i):e,d=r.length-1,c;d>=0;d--)(c=r[d])&&(a=(n?c(e,i,a):c(a))||a);return n&&a&&q(e,i,a),a},C=(r,e)=>(i,n)=>e(i,n,r);let I=class extends s.Disposable{constructor(r,e,i){super(),this._injector=r,this._uiPartsService=e,this._commandService=i,this._initCommands(),this._initUIComponents()}_initCommands(){[g,j].forEach(r=>this.disposeWithMe(this._commandService.registerCommand(r)))}_initUIComponents(){this.disposeWithMe(this._uiPartsService.registerComponent(U.BuiltInUIPart.LEFT_SIDEBAR,()=>p.connectInjector(W,this._injector)))}};I=J([s.OnLifecycle(s.LifecycleStages.Ready,I),C(0,l.Inject(l.Injector)),C(1,U.IUIPartsService),C(2,s.ICommandService)],I);var Y=Object.defineProperty,z=Object.getOwnPropertyDescriptor,H=(r,e,i,n)=>{for(var a=n>1?void 0:n?z(e,i):e,d=r.length-1,c;d>=0;d--)(c=r[d])&&(a=(n?c(e,i,a):c(a))||a);return n&&a&&Y(e,i,a),a},x=(r,e)=>(i,n)=>e(i,n,r);const K="SLIDE_UI";t.UniverSlidesUIPlugin=(_=class extends s.Plugin{constructor(e,i,n){super(),this._injector=i,this._univerInstanceService=n}onStarting(e){[[I]].forEach(i=>e.add(i))}onRendered(){this._markSlideAsFocused()}_markSlideAsFocused(){const e=this._univerInstanceService;try{const i=e.getCurrentUnitForType(s.UniverInstanceType.UNIVER_SLIDE);e.focusUnit(i.getUnitId())}catch{}}},B(_,"pluginName",K),B(_,"type",s.UniverInstanceType.UNIVER_SLIDE),_),t.UniverSlidesUIPlugin=H([x(1,l.Inject(l.Injector)),x(2,s.IUniverInstanceService)],t.UniverSlidesUIPlugin),t.ActivateSlidePageOperation=g,t.SetSlidePageThumbOperation=j,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/slides-ui",
3
- "version": "0.1.17",
3
+ "version": "0.2.0",
4
4
  "private": false,
5
5
  "description": "Univer normal ui-plugin-slides",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -50,30 +50,31 @@
50
50
  "lib"
51
51
  ],
52
52
  "peerDependencies": {
53
- "@wendellhu/redi": "0.15.4",
53
+ "@wendellhu/redi": "0.15.5",
54
54
  "clsx": ">=2.0.0",
55
55
  "react": "^16.9.0 || ^17.0.0 || ^18.0.0",
56
- "@univerjs/core": "0.1.17",
57
- "@univerjs/engine-render": "0.1.17",
58
- "@univerjs/slides": "0.1.17",
59
- "@univerjs/ui": "0.1.17"
56
+ "@univerjs/core": "0.2.0",
57
+ "@univerjs/design": "0.2.0",
58
+ "@univerjs/engine-render": "0.2.0",
59
+ "@univerjs/ui": "0.2.0",
60
+ "@univerjs/slides": "0.2.0"
60
61
  },
61
62
  "devDependencies": {
62
63
  "@types/react": "^18.3.3",
63
- "@wendellhu/redi": "0.15.4",
64
+ "@wendellhu/redi": "0.15.5",
64
65
  "clsx": "^2.1.1",
65
66
  "less": "^4.2.0",
66
67
  "react": "18.3.1",
67
68
  "rxjs": "^7.8.1",
68
- "typescript": "^5.4.5",
69
- "vite": "^5.3.1",
69
+ "typescript": "^5.5.3",
70
+ "vite": "^5.3.3",
70
71
  "vitest": "^1.6.0",
71
- "@univerjs/design": "0.1.17",
72
- "@univerjs/engine-render": "0.1.17",
73
- "@univerjs/ui": "0.1.17",
74
- "@univerjs/slides": "0.1.17",
75
- "@univerjs/shared": "0.1.17",
76
- "@univerjs/core": "0.1.17"
72
+ "@univerjs/core": "0.2.0",
73
+ "@univerjs/design": "0.2.0",
74
+ "@univerjs/shared": "0.2.0",
75
+ "@univerjs/engine-render": "0.2.0",
76
+ "@univerjs/slides": "0.2.0",
77
+ "@univerjs/ui": "0.2.0"
77
78
  },
78
79
  "univerSpace": {
79
80
  ".": {