@univerjs/docs-hyper-link 0.2.2 → 0.2.4-alpha.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/README.md +6 -5
- package/lib/cjs/index.js +1 -1
- package/lib/es/index.js +162 -108
- package/lib/types/commands/mutations/add-link.mutation.d.ts +2 -2
- package/lib/types/controllers/doc-hyper-link-custom-range.controller.d.ts +10 -0
- package/lib/types/controllers/resource.controller.d.ts +2 -2
- package/lib/types/plugin.d.ts +3 -3
- package/lib/umd/index.js +1 -1
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
# @univerjs/docs-hyper-link
|
|
2
2
|
|
|
3
|
-
[](https://npmjs.org/packages/@univerjs/docs-hyper-link )
|
|
4
|
-
[](https://img.shields.io/npm/l/@univerjs/sheets- thread-comment)
|
|
5
|
-
|
|
6
3
|
## Introduction
|
|
7
4
|
|
|
8
5
|
`@univerjs/docs-hyper-link` provides the base link function of Univer Docs.
|
|
9
6
|
|
|
10
|
-
|
|
11
7
|
## Usage
|
|
12
8
|
|
|
13
|
-
###
|
|
9
|
+
### Installation
|
|
14
10
|
|
|
15
11
|
```shell
|
|
16
12
|
# Use npm
|
|
@@ -20,3 +16,8 @@ npm install @univerjs/docs-hyper-link
|
|
|
20
16
|
pnpm add @univerjs/docs-hyper-link
|
|
21
17
|
```
|
|
22
18
|
|
|
19
|
+
<!-- Links -->
|
|
20
|
+
[npm-version-shield]: https://img.shields.io/npm/v/@univerjs/docs-hyper-link?style=flat-square
|
|
21
|
+
[npm-version-link]: https://npmjs.com/package/@univerjs/docs-hyper-link
|
|
22
|
+
[npm-license-shield]: https://img.shields.io/npm/l/@univerjs/docs-hyper-link?style=flat-square
|
|
23
|
+
[npm-downloads-shield]: https://img.shields.io/npm/dm/@univerjs/docs-hyper-link?style=flat-square
|
package/lib/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var H=Object.defineProperty;var U=(t,e,n)=>e in t?H(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var d=(t,e,n)=>U(t,typeof e!="symbol"?e+"":e,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@univerjs/core"),I=require("rxjs"),g=require("@univerjs/docs"),L="DOC_HYPER_LINK_PLUGIN";class c extends o.Disposable{constructor(){super();d(this,"_links",new Map);d(this,"_linkUpdate$",new I.Subject);d(this,"linkUpdate$",this._linkUpdate$.asObservable());this.disposeWithMe(()=>{this._linkUpdate$.complete()})}_ensureMap(n){let r=this._links.get(n);return r||(r=new Map,this._links.set(n,r)),r}addLink(n,r){const i=this._ensureMap(n);return r.payload=o.Tools.normalizeUrl(r.payload),i.set(r.id,r),this._linkUpdate$.next({type:"add",link:r,unitId:n}),!0}updateLink(n,r,i){const s=this._ensureMap(n).get(r);if(!s)return!1;const l=s.payload;return s.payload=i,this._linkUpdate$.next({type:"update",link:s,oldPayload:l,unitId:n}),!0}deleteLink(n,r){const i=this._ensureMap(n),a=i.get(r);return a?(i.delete(r),this._linkUpdate$.next({type:"delete",link:a,unitId:n}),!1):!0}getLink(n,r){return this._ensureMap(n).get(r)}getUnit(n){const r=this._ensureMap(n);return Array.from(r.values())}deleteUnit(n){this._links.delete(n),this._linkUpdate$.next({unitId:n,type:"delete-unit"})}}var f=(t=>(t[t.URL=0]="URL",t))(f||{});const m={type:o.CommandType.MUTATION,id:"docs.mutation.add-hyper-link",handler(t,e){return e?t.get(c).addLink(e.unitId,e.link):!1}},k={type:o.CommandType.MUTATION,id:"docs.mutation.update-hyper-link",handler(t,e){return e?t.get(c).updateLink(e.unitId,e.linkId,e.payload):!1}},M={type:o.CommandType.MUTATION,id:"docs.mutation.delete-hyper-link",handler(t,e){return e?t.get(c).deleteLink(e.unitId,e.linkId):!1}};var O=Object.defineProperty,C=Object.getOwnPropertyDescriptor,R=(t,e,n,r)=>{for(var i=r>1?void 0:r?C(e,n):e,a=t.length-1,s;a>=0;a--)(s=t[a])&&(i=(r?s(e,n,i):s(i))||i);return r&&i&&O(e,n,i),i},S=(t,e)=>(n,r)=>e(n,r,t);let p=class extends o.Disposable{constructor(t){super(),this._commandService=t,this._initCommands()}_initCommands(){[m,k,M].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}};p=R([o.OnLifecycle(o.LifecycleStages.Starting,p),S(0,o.ICommandService)],p);var b=Object.defineProperty,T=Object.getOwnPropertyDescriptor,$=(t,e,n,r)=>{for(var i=r>1?void 0:r?T(e,n):e,a=t.length-1,s;a>=0;a--)(s=t[a])&&(i=(r?s(e,n,i):s(i))||i);return r&&i&&b(e,n,i),i},y=(t,e)=>(n,r)=>e(n,r,t);let u=class extends o.Disposable{constructor(t,e,n){super(),this._resourceManagerService=t,this._docHyperLinkModel=e,this._univerInstanceService=n,this._init()}_init(){this._resourceManagerService.registerPluginResource({pluginName:L,businesses:[o.UniverInstanceType.UNIVER_DOC],onLoad:(t,e)=>{e.links.forEach(n=>{this._docHyperLinkModel.addLink(t,n)})},onUnLoad:t=>{this._docHyperLinkModel.deleteUnit(t)},toJson:t=>{var a;const e=this._docHyperLinkModel.getUnit(t),n=this._univerInstanceService.getUnit(t,o.UniverInstanceType.UNIVER_DOC),r=(a=n==null?void 0:n.getBody())==null?void 0:a.customRanges,i=new Set(r==null?void 0:r.filter(s=>s.rangeType===o.CustomRangeType.HYPERLINK).map(s=>s.rangeId));return JSON.stringify({links:e.filter(s=>i.has(s.id))})},parseJson(t){return JSON.parse(t)}})}};u=$([o.OnLifecycle(o.LifecycleStages.Starting,u),y(0,o.Inject(o.IResourceManagerService)),y(1,o.Inject(c)),y(2,o.IUniverInstanceService)],u);var N=Object.defineProperty,j=Object.getOwnPropertyDescriptor,w=(t,e,n,r)=>{for(var i=r>1?void 0:r?j(e,n):e,a=t.length-1,s;a>=0;a--)(s=t[a])&&(i=(r?s(e,n,i):s(i))||i);return r&&i&&N(e,n,i),i},h=(t,e)=>(n,r)=>e(n,r,t);let _=class extends o.Disposable{constructor(t,e){super(),this._docCustomRangeService=t,this._docHyperLinkModel=e,this._initCustomRangeHooks()}_initCustomRangeHooks(){this.disposeWithMe(this._docCustomRangeService.addClipboardHook({onCopyCustomRange:(t,e)=>{const{rangeId:n,rangeType:r,data:i,...a}=e;if(r===o.CustomRangeType.HYPERLINK){if(i){const v=o.Tools.generateRandomId();return this._docHyperLinkModel.addLink(t,{id:v,payload:i}),{...e,rangeId:v}}const s=this._docHyperLinkModel.getLink(t,n);if(!s)return e;const l=o.Tools.generateRandomId();return this._docHyperLinkModel.addLink(t,{id:l,payload:s.payload}),{...a,rangeId:l,rangeType:r}}return e}}))}};_=w([o.OnLifecycle(o.LifecycleStages.Ready,_),h(0,o.Inject(g.DocCustomRangeService)),h(1,o.Inject(c))],_);var P=Object.defineProperty,x=Object.getOwnPropertyDescriptor,E=(t,e,n)=>e in t?P(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,A=(t,e,n,r)=>{for(var i=r>1?void 0:r?x(e,n):e,a=t.length-1,s;a>=0;a--)(s=t[a])&&(i=(r?s(e,n,i):s(i))||i);return r&&i&&P(e,n,i),i},K=(t,e)=>(n,r)=>e(n,r,t),D=(t,e,n)=>E(t,typeof e!="symbol"?e+"":e,n);exports.UniverDocsHyperLinkPlugin=class extends o.Plugin{constructor(e,n){super(),this._config=e,this._injector=n}onStarting(e){[[c],[p],[u],[_]].forEach(r=>{e.add(r)})}};D(exports.UniverDocsHyperLinkPlugin,"pluginName",L);D(exports.UniverDocsHyperLinkPlugin,"type",o.UniverInstanceType.UNIVER_DOC);exports.UniverDocsHyperLinkPlugin=A([o.DependentOn(g.UniverDocsPlugin),K(1,o.Inject(o.Injector))],exports.UniverDocsHyperLinkPlugin);exports.AddDocHyperLinkMutation=m;exports.DOC_HYPER_LINK_PLUGIN=L;exports.DeleteDocHyperLinkMutation=M;exports.DocHyperLinkModel=c;exports.DocHyperLinkType=f;exports.UpdateDocHyperLinkMutation=k;
|
package/lib/es/index.js
CHANGED
|
@@ -1,134 +1,135 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
import { Disposable as y, CommandType as
|
|
5
|
-
import { Subject as
|
|
6
|
-
import {
|
|
7
|
-
const
|
|
8
|
-
class
|
|
1
|
+
var I = Object.defineProperty;
|
|
2
|
+
var D = (t, e, n) => e in t ? I(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
|
|
3
|
+
var l = (t, e, n) => D(t, typeof e != "symbol" ? e + "" : e, n);
|
|
4
|
+
import { Disposable as f, Tools as y, CommandType as g, OnLifecycle as L, LifecycleStages as M, ICommandService as R, Inject as d, IResourceManagerService as S, UniverInstanceType as m, CustomRangeType as U, IUniverInstanceService as $, DependentOn as b, Injector as N, Plugin as w } from "@univerjs/core";
|
|
5
|
+
import { Subject as x } from "rxjs";
|
|
6
|
+
import { DocCustomRangeService as T, UniverDocsPlugin as j } from "@univerjs/docs";
|
|
7
|
+
const O = "DOC_HYPER_LINK_PLUGIN";
|
|
8
|
+
class a extends f {
|
|
9
9
|
constructor() {
|
|
10
10
|
super();
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
l(this, "_links", /* @__PURE__ */ new Map());
|
|
12
|
+
l(this, "_linkUpdate$", new x());
|
|
13
|
+
l(this, "linkUpdate$", this._linkUpdate$.asObservable());
|
|
14
14
|
this.disposeWithMe(() => {
|
|
15
15
|
this._linkUpdate$.complete();
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
|
-
_ensureMap(
|
|
19
|
-
let r = this._links.get(
|
|
20
|
-
return r || (r = /* @__PURE__ */ new Map(), this._links.set(
|
|
18
|
+
_ensureMap(n) {
|
|
19
|
+
let r = this._links.get(n);
|
|
20
|
+
return r || (r = /* @__PURE__ */ new Map(), this._links.set(n, r)), r;
|
|
21
21
|
}
|
|
22
|
-
addLink(
|
|
23
|
-
|
|
22
|
+
addLink(n, r) {
|
|
23
|
+
const i = this._ensureMap(n);
|
|
24
|
+
return r.payload = y.normalizeUrl(r.payload), i.set(r.id, r), this._linkUpdate$.next({
|
|
24
25
|
type: "add",
|
|
25
26
|
link: r,
|
|
26
|
-
unitId:
|
|
27
|
+
unitId: n
|
|
27
28
|
}), !0;
|
|
28
29
|
}
|
|
29
|
-
updateLink(
|
|
30
|
-
const
|
|
31
|
-
if (!
|
|
30
|
+
updateLink(n, r, i) {
|
|
31
|
+
const o = this._ensureMap(n).get(r);
|
|
32
|
+
if (!o)
|
|
32
33
|
return !1;
|
|
33
|
-
const
|
|
34
|
-
return
|
|
34
|
+
const c = o.payload;
|
|
35
|
+
return o.payload = i, this._linkUpdate$.next({
|
|
35
36
|
type: "update",
|
|
36
|
-
link:
|
|
37
|
-
oldPayload:
|
|
38
|
-
unitId:
|
|
37
|
+
link: o,
|
|
38
|
+
oldPayload: c,
|
|
39
|
+
unitId: n
|
|
39
40
|
}), !0;
|
|
40
41
|
}
|
|
41
|
-
deleteLink(
|
|
42
|
-
const i = this._ensureMap(
|
|
43
|
-
return
|
|
42
|
+
deleteLink(n, r) {
|
|
43
|
+
const i = this._ensureMap(n), s = i.get(r);
|
|
44
|
+
return s ? (i.delete(r), this._linkUpdate$.next({
|
|
44
45
|
type: "delete",
|
|
45
|
-
link:
|
|
46
|
-
unitId:
|
|
46
|
+
link: s,
|
|
47
|
+
unitId: n
|
|
47
48
|
}), !1) : !0;
|
|
48
49
|
}
|
|
49
|
-
getLink(
|
|
50
|
-
return this._ensureMap(
|
|
50
|
+
getLink(n, r) {
|
|
51
|
+
return this._ensureMap(n).get(r);
|
|
51
52
|
}
|
|
52
|
-
getUnit(
|
|
53
|
-
const r = this._ensureMap(
|
|
53
|
+
getUnit(n) {
|
|
54
|
+
const r = this._ensureMap(n);
|
|
54
55
|
return Array.from(r.values());
|
|
55
56
|
}
|
|
56
|
-
deleteUnit(
|
|
57
|
-
this._links.delete(
|
|
58
|
-
unitId:
|
|
57
|
+
deleteUnit(n) {
|
|
58
|
+
this._links.delete(n), this._linkUpdate$.next({
|
|
59
|
+
unitId: n,
|
|
59
60
|
type: "delete-unit"
|
|
60
61
|
});
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
|
-
var
|
|
64
|
-
const
|
|
65
|
-
type:
|
|
64
|
+
var E = /* @__PURE__ */ ((t) => (t[t.URL = 0] = "URL", t))(E || {});
|
|
65
|
+
const A = {
|
|
66
|
+
type: g.MUTATION,
|
|
66
67
|
id: "docs.mutation.add-hyper-link",
|
|
67
|
-
handler(t,
|
|
68
|
-
return
|
|
68
|
+
handler(t, e) {
|
|
69
|
+
return e ? t.get(a).addLink(e.unitId, e.link) : !1;
|
|
69
70
|
}
|
|
70
|
-
},
|
|
71
|
-
type:
|
|
71
|
+
}, J = {
|
|
72
|
+
type: g.MUTATION,
|
|
72
73
|
id: "docs.mutation.update-hyper-link",
|
|
73
|
-
handler(t,
|
|
74
|
-
return
|
|
74
|
+
handler(t, e) {
|
|
75
|
+
return e ? t.get(a).updateLink(e.unitId, e.linkId, e.payload) : !1;
|
|
75
76
|
}
|
|
76
|
-
},
|
|
77
|
-
type:
|
|
77
|
+
}, K = {
|
|
78
|
+
type: g.MUTATION,
|
|
78
79
|
id: "docs.mutation.delete-hyper-link",
|
|
79
|
-
handler(t,
|
|
80
|
-
return
|
|
80
|
+
handler(t, e) {
|
|
81
|
+
return e ? t.get(a).deleteLink(e.unitId, e.linkId) : !1;
|
|
81
82
|
}
|
|
82
83
|
};
|
|
83
|
-
var
|
|
84
|
-
for (var i = r > 1 ? void 0 : r ?
|
|
85
|
-
(
|
|
86
|
-
return r && i &&
|
|
87
|
-
},
|
|
88
|
-
let
|
|
84
|
+
var Y = Object.defineProperty, V = Object.getOwnPropertyDescriptor, W = (t, e, n, r) => {
|
|
85
|
+
for (var i = r > 1 ? void 0 : r ? V(e, n) : e, s = t.length - 1, o; s >= 0; s--)
|
|
86
|
+
(o = t[s]) && (i = (r ? o(e, n, i) : o(i)) || i);
|
|
87
|
+
return r && i && Y(e, n, i), i;
|
|
88
|
+
}, G = (t, e) => (n, r) => e(n, r, t);
|
|
89
|
+
let p = class extends f {
|
|
89
90
|
constructor(t) {
|
|
90
91
|
super(), this._commandService = t, this._initCommands();
|
|
91
92
|
}
|
|
92
93
|
_initCommands() {
|
|
93
94
|
[
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
95
|
+
A,
|
|
96
|
+
J,
|
|
97
|
+
K
|
|
97
98
|
].forEach((t) => {
|
|
98
99
|
this.disposeWithMe(this._commandService.registerCommand(t));
|
|
99
100
|
});
|
|
100
101
|
}
|
|
101
102
|
};
|
|
102
|
-
|
|
103
|
-
L(
|
|
104
|
-
|
|
105
|
-
],
|
|
106
|
-
var
|
|
107
|
-
for (var i = r > 1 ? void 0 : r ?
|
|
108
|
-
(
|
|
109
|
-
return r && i &&
|
|
110
|
-
},
|
|
111
|
-
let
|
|
112
|
-
constructor(t,
|
|
113
|
-
super(), this._resourceManagerService = t, this._docHyperLinkModel =
|
|
103
|
+
p = W([
|
|
104
|
+
L(M.Starting, p),
|
|
105
|
+
G(0, R)
|
|
106
|
+
], p);
|
|
107
|
+
var z = Object.defineProperty, B = Object.getOwnPropertyDescriptor, F = (t, e, n, r) => {
|
|
108
|
+
for (var i = r > 1 ? void 0 : r ? B(e, n) : e, s = t.length - 1, o; s >= 0; s--)
|
|
109
|
+
(o = t[s]) && (i = (r ? o(e, n, i) : o(i)) || i);
|
|
110
|
+
return r && i && z(e, n, i), i;
|
|
111
|
+
}, v = (t, e) => (n, r) => e(n, r, t);
|
|
112
|
+
let _ = class extends f {
|
|
113
|
+
constructor(t, e, n) {
|
|
114
|
+
super(), this._resourceManagerService = t, this._docHyperLinkModel = e, this._univerInstanceService = n, this._init();
|
|
114
115
|
}
|
|
115
116
|
_init() {
|
|
116
117
|
this._resourceManagerService.registerPluginResource({
|
|
117
|
-
pluginName:
|
|
118
|
-
businesses: [
|
|
119
|
-
onLoad: (t,
|
|
120
|
-
|
|
121
|
-
this._docHyperLinkModel.addLink(t,
|
|
118
|
+
pluginName: O,
|
|
119
|
+
businesses: [m.UNIVER_DOC],
|
|
120
|
+
onLoad: (t, e) => {
|
|
121
|
+
e.links.forEach((n) => {
|
|
122
|
+
this._docHyperLinkModel.addLink(t, n);
|
|
122
123
|
});
|
|
123
124
|
},
|
|
124
125
|
onUnLoad: (t) => {
|
|
125
126
|
this._docHyperLinkModel.deleteUnit(t);
|
|
126
127
|
},
|
|
127
128
|
toJson: (t) => {
|
|
128
|
-
var
|
|
129
|
-
const
|
|
129
|
+
var s;
|
|
130
|
+
const e = this._docHyperLinkModel.getUnit(t), n = this._univerInstanceService.getUnit(t, m.UNIVER_DOC), r = (s = n == null ? void 0 : n.getBody()) == null ? void 0 : s.customRanges, i = new Set(r == null ? void 0 : r.filter((o) => o.rangeType === U.HYPERLINK).map((o) => o.rangeId));
|
|
130
131
|
return JSON.stringify({
|
|
131
|
-
links:
|
|
132
|
+
links: e.filter((o) => i.has(o.id))
|
|
132
133
|
});
|
|
133
134
|
},
|
|
134
135
|
parseJson(t) {
|
|
@@ -137,40 +138,93 @@ let h = class extends y {
|
|
|
137
138
|
});
|
|
138
139
|
}
|
|
139
140
|
};
|
|
140
|
-
|
|
141
|
-
L(
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
],
|
|
146
|
-
var
|
|
147
|
-
for (var i = r > 1 ? void 0 : r ?
|
|
148
|
-
(
|
|
149
|
-
return r && i &&
|
|
150
|
-
},
|
|
151
|
-
let
|
|
152
|
-
constructor(t) {
|
|
153
|
-
super(), this.
|
|
141
|
+
_ = F([
|
|
142
|
+
L(M.Starting, _),
|
|
143
|
+
v(0, d(S)),
|
|
144
|
+
v(1, d(a)),
|
|
145
|
+
v(2, $)
|
|
146
|
+
], _);
|
|
147
|
+
var q = Object.defineProperty, Q = Object.getOwnPropertyDescriptor, X = (t, e, n, r) => {
|
|
148
|
+
for (var i = r > 1 ? void 0 : r ? Q(e, n) : e, s = t.length - 1, o; s >= 0; s--)
|
|
149
|
+
(o = t[s]) && (i = (r ? o(e, n, i) : o(i)) || i);
|
|
150
|
+
return r && i && q(e, n, i), i;
|
|
151
|
+
}, k = (t, e) => (n, r) => e(n, r, t);
|
|
152
|
+
let u = class extends f {
|
|
153
|
+
constructor(t, e) {
|
|
154
|
+
super(), this._docCustomRangeService = t, this._docHyperLinkModel = e, this._initCustomRangeHooks();
|
|
155
|
+
}
|
|
156
|
+
_initCustomRangeHooks() {
|
|
157
|
+
this.disposeWithMe(
|
|
158
|
+
this._docCustomRangeService.addClipboardHook({
|
|
159
|
+
onCopyCustomRange: (t, e) => {
|
|
160
|
+
const { rangeId: n, rangeType: r, data: i, ...s } = e;
|
|
161
|
+
if (r === U.HYPERLINK) {
|
|
162
|
+
if (i) {
|
|
163
|
+
const P = y.generateRandomId();
|
|
164
|
+
return this._docHyperLinkModel.addLink(t, {
|
|
165
|
+
id: P,
|
|
166
|
+
payload: i
|
|
167
|
+
}), {
|
|
168
|
+
...e,
|
|
169
|
+
rangeId: P
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
const o = this._docHyperLinkModel.getLink(t, n);
|
|
173
|
+
if (!o)
|
|
174
|
+
return e;
|
|
175
|
+
const c = y.generateRandomId();
|
|
176
|
+
return this._docHyperLinkModel.addLink(t, {
|
|
177
|
+
id: c,
|
|
178
|
+
payload: o.payload
|
|
179
|
+
}), {
|
|
180
|
+
...s,
|
|
181
|
+
rangeId: c,
|
|
182
|
+
rangeType: r
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
return e;
|
|
186
|
+
}
|
|
187
|
+
})
|
|
188
|
+
);
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
u = X([
|
|
192
|
+
L(M.Ready, u),
|
|
193
|
+
k(0, d(T)),
|
|
194
|
+
k(1, d(a))
|
|
195
|
+
], u);
|
|
196
|
+
var H = Object.defineProperty, Z = Object.getOwnPropertyDescriptor, ee = (t, e, n) => e in t ? H(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n, te = (t, e, n, r) => {
|
|
197
|
+
for (var i = r > 1 ? void 0 : r ? Z(e, n) : e, s = t.length - 1, o; s >= 0; s--)
|
|
198
|
+
(o = t[s]) && (i = (r ? o(e, n, i) : o(i)) || i);
|
|
199
|
+
return r && i && H(e, n, i), i;
|
|
200
|
+
}, ne = (t, e) => (n, r) => e(n, r, t), C = (t, e, n) => ee(t, typeof e != "symbol" ? e + "" : e, n);
|
|
201
|
+
let h = class extends w {
|
|
202
|
+
constructor(t, e) {
|
|
203
|
+
super(), this._config = t, this._injector = e;
|
|
154
204
|
}
|
|
155
205
|
onStarting(t) {
|
|
156
206
|
[
|
|
207
|
+
[a],
|
|
157
208
|
[p],
|
|
158
|
-
[
|
|
159
|
-
[
|
|
160
|
-
].forEach((
|
|
161
|
-
t.add(
|
|
209
|
+
[_],
|
|
210
|
+
[u]
|
|
211
|
+
].forEach((n) => {
|
|
212
|
+
t.add(n);
|
|
162
213
|
});
|
|
163
214
|
}
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
215
|
+
};
|
|
216
|
+
C(h, "pluginName", O);
|
|
217
|
+
C(h, "type", m.UNIVER_DOC);
|
|
218
|
+
h = te([
|
|
219
|
+
b(j),
|
|
220
|
+
ne(1, d(N))
|
|
221
|
+
], h);
|
|
168
222
|
export {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
223
|
+
A as AddDocHyperLinkMutation,
|
|
224
|
+
O as DOC_HYPER_LINK_PLUGIN,
|
|
225
|
+
K as DeleteDocHyperLinkMutation,
|
|
226
|
+
a as DocHyperLinkModel,
|
|
227
|
+
E as DocHyperLinkType,
|
|
228
|
+
h as UniverDocsHyperLinkPlugin,
|
|
229
|
+
J as UpdateDocHyperLinkMutation
|
|
176
230
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IMutation } from '@univerjs/core';
|
|
2
2
|
import { IDocHyperLink } from '../../types/interfaces/i-doc-hyper-link';
|
|
3
3
|
|
|
4
4
|
export interface IAddDocHyperLinkMutationParams {
|
|
5
5
|
unitId: string;
|
|
6
6
|
link: IDocHyperLink;
|
|
7
7
|
}
|
|
8
|
-
export declare const AddDocHyperLinkMutation:
|
|
8
|
+
export declare const AddDocHyperLinkMutation: IMutation<IAddDocHyperLinkMutationParams>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Disposable } from '@univerjs/core';
|
|
2
|
+
import { DocCustomRangeService } from '@univerjs/docs';
|
|
3
|
+
import { DocHyperLinkModel } from '../models/hyper-link.model';
|
|
4
|
+
|
|
5
|
+
export declare class DocHyperLinkCustomRangeController extends Disposable {
|
|
6
|
+
private readonly _docCustomRangeService;
|
|
7
|
+
private readonly _docHyperLinkModel;
|
|
8
|
+
constructor(_docCustomRangeService: DocCustomRangeService, _docHyperLinkModel: DocHyperLinkModel);
|
|
9
|
+
private _initCustomRangeHooks;
|
|
10
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Disposable,
|
|
1
|
+
import { Disposable, IResourceManagerService, IUniverInstanceService } from '@univerjs/core';
|
|
2
2
|
import { DocHyperLinkModel } from '../models/hyper-link.model';
|
|
3
3
|
|
|
4
4
|
export declare class DocHyperLinkResourceController extends Disposable {
|
|
5
5
|
private readonly _resourceManagerService;
|
|
6
6
|
private readonly _docHyperLinkModel;
|
|
7
7
|
private readonly _univerInstanceService;
|
|
8
|
-
constructor(_resourceManagerService:
|
|
8
|
+
constructor(_resourceManagerService: IResourceManagerService, _docHyperLinkModel: DocHyperLinkModel, _univerInstanceService: IUniverInstanceService);
|
|
9
9
|
private _init;
|
|
10
10
|
}
|
package/lib/types/plugin.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Plugin, UniverInstanceType } from '@univerjs/core';
|
|
2
|
-
import { Injector } from '@wendellhu/redi';
|
|
1
|
+
import { Injector, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
3
2
|
|
|
4
3
|
export declare class UniverDocsHyperLinkPlugin extends Plugin {
|
|
4
|
+
private _config;
|
|
5
5
|
protected _injector: Injector;
|
|
6
6
|
static pluginName: string;
|
|
7
7
|
static type: UniverInstanceType;
|
|
8
|
-
constructor(_injector: Injector);
|
|
8
|
+
constructor(_config: unknown, _injector: Injector);
|
|
9
9
|
onStarting(injector: Injector): void;
|
|
10
10
|
}
|
package/lib/umd/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(a,r){typeof exports=="object"&&typeof module<"u"?r(exports,require("@univerjs/core"),require("rxjs"),require("@univerjs/docs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","rxjs","@univerjs/docs"],r):(a=typeof globalThis<"u"?globalThis:a||self,r(a.UniverDocsHyperLink={},a.UniverCore,a.rxjs,a.UniverDocs))})(this,function(a,r,p,h){"use strict";var K=Object.defineProperty;var Y=(a,r,p)=>r in a?K(a,r,{enumerable:!0,configurable:!0,writable:!0,value:p}):a[r]=p;var v=(a,r,p)=>Y(a,typeof r!="symbol"?r+"":r,p);const f="DOC_HYPER_LINK_PLUGIN";class l extends r.Disposable{constructor(){super();v(this,"_links",new Map);v(this,"_linkUpdate$",new p.Subject);v(this,"linkUpdate$",this._linkUpdate$.asObservable());this.disposeWithMe(()=>{this._linkUpdate$.complete()})}_ensureMap(n){let i=this._links.get(n);return i||(i=new Map,this._links.set(n,i)),i}addLink(n,i){const s=this._ensureMap(n);return i.payload=r.Tools.normalizeUrl(i.payload),s.set(i.id,i),this._linkUpdate$.next({type:"add",link:i,unitId:n}),!0}updateLink(n,i,s){const o=this._ensureMap(n).get(i);if(!o)return!1;const y=o.payload;return o.payload=s,this._linkUpdate$.next({type:"update",link:o,oldPayload:y,unitId:n}),!0}deleteLink(n,i){const s=this._ensureMap(n),d=s.get(i);return d?(s.delete(i),this._linkUpdate$.next({type:"delete",link:d,unitId:n}),!1):!0}getLink(n,i){return this._ensureMap(n).get(i)}getUnit(n){const i=this._ensureMap(n);return Array.from(i.values())}deleteUnit(n){this._links.delete(n),this._linkUpdate$.next({unitId:n,type:"delete-unit"})}}var g=(t=>(t[t.URL=0]="URL",t))(g||{});const m={type:r.CommandType.MUTATION,id:"docs.mutation.add-hyper-link",handler(t,e){return e?t.get(l).addLink(e.unitId,e.link):!1}},k={type:r.CommandType.MUTATION,id:"docs.mutation.update-hyper-link",handler(t,e){return e?t.get(l).updateLink(e.unitId,e.linkId,e.payload):!1}},U={type:r.CommandType.MUTATION,id:"docs.mutation.delete-hyper-link",handler(t,e){return e?t.get(l).deleteLink(e.unitId,e.linkId):!1}};var I=Object.defineProperty,O=Object.getOwnPropertyDescriptor,C=(t,e,n,i)=>{for(var s=i>1?void 0:i?O(e,n):e,d=t.length-1,o;d>=0;d--)(o=t[d])&&(s=(i?o(e,n,s):o(s))||s);return i&&s&&I(e,n,s),s},R=(t,e)=>(n,i)=>e(n,i,t);let c=class extends r.Disposable{constructor(t){super(),this._commandService=t,this._initCommands()}_initCommands(){[m,k,U].forEach(t=>{this.disposeWithMe(this._commandService.registerCommand(t))})}};c=C([r.OnLifecycle(r.LifecycleStages.Starting,c),R(0,r.ICommandService)],c);var S=Object.defineProperty,j=Object.getOwnPropertyDescriptor,T=(t,e,n,i)=>{for(var s=i>1?void 0:i?j(e,n):e,d=t.length-1,o;d>=0;d--)(o=t[d])&&(s=(i?o(e,n,s):o(s))||s);return i&&s&&S(e,n,s),s},L=(t,e)=>(n,i)=>e(n,i,t);let u=class extends r.Disposable{constructor(t,e,n){super(),this._resourceManagerService=t,this._docHyperLinkModel=e,this._univerInstanceService=n,this._init()}_init(){this._resourceManagerService.registerPluginResource({pluginName:f,businesses:[r.UniverInstanceType.UNIVER_DOC],onLoad:(t,e)=>{e.links.forEach(n=>{this._docHyperLinkModel.addLink(t,n)})},onUnLoad:t=>{this._docHyperLinkModel.deleteUnit(t)},toJson:t=>{var d;const e=this._docHyperLinkModel.getUnit(t),n=this._univerInstanceService.getUnit(t,r.UniverInstanceType.UNIVER_DOC),i=(d=n==null?void 0:n.getBody())==null?void 0:d.customRanges,s=new Set(i==null?void 0:i.filter(o=>o.rangeType===r.CustomRangeType.HYPERLINK).map(o=>o.rangeId));return JSON.stringify({links:e.filter(o=>s.has(o.id))})},parseJson(t){return JSON.parse(t)}})}};u=T([r.OnLifecycle(r.LifecycleStages.Starting,u),L(0,r.Inject(r.IResourceManagerService)),L(1,r.Inject(l)),L(2,r.IUniverInstanceService)],u);var b=Object.defineProperty,$=Object.getOwnPropertyDescriptor,N=(t,e,n,i)=>{for(var s=i>1?void 0:i?$(e,n):e,d=t.length-1,o;d>=0;d--)(o=t[d])&&(s=(i?o(e,n,s):o(s))||s);return i&&s&&b(e,n,s),s},D=(t,e)=>(n,i)=>e(n,i,t);let _=class extends r.Disposable{constructor(t,e){super(),this._docCustomRangeService=t,this._docHyperLinkModel=e,this._initCustomRangeHooks()}_initCustomRangeHooks(){this.disposeWithMe(this._docCustomRangeService.addClipboardHook({onCopyCustomRange:(t,e)=>{const{rangeId:n,rangeType:i,data:s,...d}=e;if(i===r.CustomRangeType.HYPERLINK){if(s){const P=r.Tools.generateRandomId();return this._docHyperLinkModel.addLink(t,{id:P,payload:s}),{...e,rangeId:P}}const o=this._docHyperLinkModel.getLink(t,n);if(!o)return e;const y=r.Tools.generateRandomId();return this._docHyperLinkModel.addLink(t,{id:y,payload:o.payload}),{...d,rangeId:y,rangeType:i}}return e}}))}};_=N([r.OnLifecycle(r.LifecycleStages.Ready,_),D(0,r.Inject(h.DocCustomRangeService)),D(1,r.Inject(l))],_);var H=Object.defineProperty,w=Object.getOwnPropertyDescriptor,E=(t,e,n)=>e in t?H(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,A=(t,e,n,i)=>{for(var s=i>1?void 0:i?w(e,n):e,d=t.length-1,o;d>=0;d--)(o=t[d])&&(s=(i?o(e,n,s):o(s))||s);return i&&s&&H(e,n,s),s},x=(t,e)=>(n,i)=>e(n,i,t),M=(t,e,n)=>E(t,typeof e!="symbol"?e+"":e,n);a.UniverDocsHyperLinkPlugin=class extends r.Plugin{constructor(e,n){super(),this._config=e,this._injector=n}onStarting(e){[[l],[c],[u],[_]].forEach(i=>{e.add(i)})}},M(a.UniverDocsHyperLinkPlugin,"pluginName",f),M(a.UniverDocsHyperLinkPlugin,"type",r.UniverInstanceType.UNIVER_DOC),a.UniverDocsHyperLinkPlugin=A([r.DependentOn(h.UniverDocsPlugin),x(1,r.Inject(r.Injector))],a.UniverDocsHyperLinkPlugin),a.AddDocHyperLinkMutation=m,a.DOC_HYPER_LINK_PLUGIN=f,a.DeleteDocHyperLinkMutation=U,a.DocHyperLinkModel=l,a.DocHyperLinkType=g,a.UpdateDocHyperLinkMutation=k,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@univerjs/docs-hyper-link",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4-alpha.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Univer thread comment plugin",
|
|
6
6
|
"author": "DreamNum <developer@univer.ai>",
|
|
@@ -44,19 +44,19 @@
|
|
|
44
44
|
"lib"
|
|
45
45
|
],
|
|
46
46
|
"peerDependencies": {
|
|
47
|
-
"@wendellhu/redi": "0.15.5",
|
|
48
47
|
"rxjs": ">=7.0.0",
|
|
49
|
-
"@univerjs/core": "0.2.
|
|
48
|
+
"@univerjs/core": "0.2.4-alpha.0",
|
|
49
|
+
"@univerjs/docs": "0.2.4-alpha.0"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
|
-
"@wendellhu/redi": "0.15.5",
|
|
53
52
|
"rxjs": "^7.8.1",
|
|
54
53
|
"typescript": "^5.5.3",
|
|
55
|
-
"vite": "^5.3.
|
|
56
|
-
"vitest": "^
|
|
57
|
-
"@univerjs/core": "0.2.
|
|
58
|
-
"@univerjs/shared": "0.2.
|
|
59
|
-
"@univerjs/design": "0.2.
|
|
54
|
+
"vite": "^5.3.4",
|
|
55
|
+
"vitest": "^2.0.3",
|
|
56
|
+
"@univerjs/core": "0.2.4-alpha.0",
|
|
57
|
+
"@univerjs/shared": "0.2.4-alpha.0",
|
|
58
|
+
"@univerjs/design": "0.2.4-alpha.0",
|
|
59
|
+
"@univerjs/docs": "0.2.4-alpha.0"
|
|
60
60
|
},
|
|
61
61
|
"univerSpace": {
|
|
62
62
|
".": {
|