@univerjs/network 0.1.0-beta.3 → 0.1.0-beta.5
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 +73 -69
- package/lib/umd/index.js +2 -2
- package/package.json +22 -9
package/lib/cjs/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var A=Object.defineProperty;var U=(e,t,n)=>t in e?A(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var c=(e,t,n)=>(U(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
2
|
-
`).forEach(n=>{const[r,i]=n.split(":");r&&i&&this._setHeader(r,i)}):t&&Object.keys(t).forEach(([n,r])=>{this._setHeader(n,r)})}forEach(t){this._headers.forEach((n,r)=>t(r,n))}has(t){return!!this._headers.has(t.toLowerCase())}get(t){const n=t.toLowerCase();return this._headers.has(n)?this._headers.get(n):null}_setHeader(t,n){const r=t.toLowerCase();this._headers.has(r)?this._headers.get(r).push(n.toString()):this._headers.set(r,[n.toString()])}}const q
|
|
1
|
+
"use strict";var A=Object.defineProperty;var U=(e,t,n)=>t in e?A(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var c=(e,t,n)=>(U(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@univerjs/core"),y=require("rxjs"),v=require("rxjs/operators"),q=require("@wendellhu/redi"),E="application/json";class f{constructor(t){c(this,"_headers",new Map);typeof t=="string"?t.split(`
|
|
2
|
+
`).forEach(n=>{const[r,i]=n.split(":");r&&i&&this._setHeader(r,i)}):t&&Object.keys(t).forEach(([n,r])=>{this._setHeader(n,r)})}forEach(t){this._headers.forEach((n,r)=>t(r,n))}has(t){return!!this._headers.has(t.toLowerCase())}get(t){const n=t.toLowerCase();return this._headers.has(n)?this._headers.get(n):null}_setHeader(t,n){const r=t.toLowerCase();this._headers.has(r)?this._headers.get(r).push(n.toString()):this._headers.set(r,[n.toString()])}}const L=q.createIdentifier("univer-pro.network.http-implementation");class O{constructor(t){this.params=t}toString(){return this.params?Object.keys(this.params).map(t=>`${t}=${this.params[t]}`).join("&"):""}}class u{constructor(t,n,r){this.method=t,this.url=n,this.requestParams=r}get headers(){return this.requestParams.headers}get withCredentials(){return this.requestParams.withCredentials}get responseType(){return this.requestParams.responseType}getUrlWithParams(){var n,r;const t=(r=(n=this.requestParams)==null?void 0:n.params)==null?void 0:r.toString();return t?`${this.url}${this.url.includes("?")?"&":"?"}${t}`:this.url}getBody(){var r,i;const t=(r=this.headers.get("Content-Type"))!=null?r:E,n=(i=this.requestParams)==null?void 0:i.body;return t===E&&n&&typeof n=="object"?JSON.stringify(n):n?`${n}`:null}}class g{constructor({body:t,headers:n,status:r,statusText:i}){c(this,"body");c(this,"headers");c(this,"status");c(this,"statusText");this.body=t,this.headers=n,this.status=r,this.statusText=i}}class _{constructor({headers:t,status:n,statusText:r,error:i}){c(this,"headers");c(this,"status");c(this,"statusText");c(this,"error");this.headers=t,this.status=n,this.statusText=r,this.error=i}}class M{constructor(t,n,r){this.headers=t,this.status=n,this.statusText=r}}var F=Object.defineProperty,k=Object.getOwnPropertyDescriptor,D=(e,t,n,r)=>{for(var i=r>1?void 0:r?k(t,n):t,o=e.length-1,s;o>=0;o--)(s=e[o])&&(i=(r?s(t,n,i):s(i))||i);return r&&i&&F(t,n,i),i},j=(e,t)=>(n,r)=>t(n,r,e);exports.HTTPService=class extends d.Disposable{constructor(n){super();c(this,"_interceptors",[]);c(this,"_pipe");this._http=n}registerHTTPInterceptor(n){if(this._interceptors.indexOf(n)!==-1)throw new Error("[HTTPService]: The interceptor has already been registered!");return this._interceptors.push(n),this._interceptors=this._interceptors.sort((r,i)=>{var o,s;return((o=r.priority)!=null?o:0)-((s=i.priority)!=null?s:0)}),this._pipe=null,d.toDisposable(()=>d.remove(this._interceptors,n))}get(n,r){return this._request("GET",n,r)}post(n,r){return this._request("POST",n,r)}put(n,r){return this._request("PUT",n,r)}delete(n,r){return this._request("DELETE",n,r)}async _request(n,r,i){var m,b;const o=new f(i==null?void 0:i.headers),s=new O(i==null?void 0:i.params),l=new u(n,r,{headers:o,params:s,withCredentials:(m=i==null?void 0:i.withCredentials)!=null?m:!1,responseType:(b=i==null?void 0:i.responseType)!=null?b:"json",body:i==null?void 0:i.body}),p=y.of(l).pipe(v.concatMap(h=>this._runInterceptorsAndImplementation(h))),a=await y.firstValueFrom(p);if(a instanceof g)return a;throw new Error(`${a.error}`)}_runInterceptorsAndImplementation(n){return this._pipe||(this._pipe=this._interceptors.map(r=>r.interceptor).reduceRight((r,i)=>$(r,i),(r,i)=>i(r))),this._pipe(n,r=>this._http.send(r))}};exports.HTTPService=D([j(0,L)],exports.HTTPService);function $(e,t){return(n,r)=>t(n,i=>e(i,r))}const B=200,G=300;var x=(e=>(e[e.Continue=100]="Continue",e[e.SwitchingProtocols=101]="SwitchingProtocols",e[e.Processing=102]="Processing",e[e.EarlyHints=103]="EarlyHints",e[e.Ok=200]="Ok",e[e.Created=201]="Created",e[e.Accepted=202]="Accepted",e[e.NonAuthoritativeInformation=203]="NonAuthoritativeInformation",e[e.NoContent=204]="NoContent",e[e.ResetContent=205]="ResetContent",e[e.PartialContent=206]="PartialContent",e[e.MultiStatus=207]="MultiStatus",e[e.AlreadyReported=208]="AlreadyReported",e[e.ImUsed=226]="ImUsed",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.Found=302]="Found",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.Unused=306]="Unused",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.LengthRequired=411]="LengthRequired",e[e.PreconditionFailed=412]="PreconditionFailed",e[e.PayloadTooLarge=413]="PayloadTooLarge",e[e.UriTooLong=414]="UriTooLong",e[e.UnsupportedMediaType=415]="UnsupportedMediaType",e[e.RangeNotSatisfiable=416]="RangeNotSatisfiable",e[e.ExpectationFailed=417]="ExpectationFailed",e[e.ImATeapot=418]="ImATeapot",e[e.MisdirectedRequest=421]="MisdirectedRequest",e[e.UnprocessableEntity=422]="UnprocessableEntity",e[e.Locked=423]="Locked",e[e.FailedDependency=424]="FailedDependency",e[e.TooEarly=425]="TooEarly",e[e.UpgradeRequired=426]="UpgradeRequired",e[e.PreconditionRequired=428]="PreconditionRequired",e[e.TooManyRequests=429]="TooManyRequests",e[e.RequestHeaderFieldsTooLarge=431]="RequestHeaderFieldsTooLarge",e[e.UnavailableForLegalReasons=451]="UnavailableForLegalReasons",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout",e[e.HttpVersionNotSupported=505]="HttpVersionNotSupported",e[e.VariantAlsoNegotiates=506]="VariantAlsoNegotiates",e[e.InsufficientStorage=507]="InsufficientStorage",e[e.LoopDetected=508]="LoopDetected",e[e.NotExtended=510]="NotExtended",e[e.NetworkAuthenticationRequired=511]="NetworkAuthenticationRequired",e))(x||{});class V{send(t){return new y.Observable(n=>{const r=new XMLHttpRequest;r.open(t.method,t.getUrlWithParams()),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach((p,a)=>r.setRequestHeader(p,a.join(","))),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),t.headers.has("Content-Type")||r.setRequestHeader("Content-Type","application/json;charset=UTF-8");const i=()=>{const p=r.statusText||"OK",a=new f(r.getAllResponseHeaders());return new M(a,r.status,p)},o=()=>{const{headers:p,statusText:a,status:m}=i(),{responseType:b}=t;let h=null,w=null;m!==x.NoContent&&(h=typeof r.response>"u"?r.responseText:r.response);let R=m>=B&&m<G;if(b==="json"&&typeof h=="string"){const N=h;try{h=h?JSON.parse(h):null}catch(I){R=!1,h=N,w=I}}R?n.next(new g({body:h,headers:p,status:m,statusText:a})):n.next(new _({error:w,headers:p,status:m,statusText:a}))},s=p=>{const a=new _({error:p,status:r.status||0,statusText:r.statusText||"Unknown Error",headers:i().headers});n.next(a)};r.addEventListener("load",o),r.addEventListener("error",s),r.addEventListener("abort",s),r.addEventListener("timeout",s);const l=t.getBody();return r.send(l),()=>{r.readyState!==r.DONE&&r.abort(),r.removeEventListener("load",o),r.removeEventListener("error",s),r.removeEventListener("abort",s),r.removeEventListener("timeout",s)}})}}const W=q.createIdentifier("univer.socket");class J extends d.Disposable{createSocket(t){try{const n=new WebSocket(t),r=new d.DisposableCollection;return{URL:t,close:(o,s)=>{n.close(o,s),r.dispose()},send:o=>{n.send(o)},open$:new y.Observable(o=>{const s=l=>o.next(l);n.addEventListener("open",s),r.add(d.toDisposable(()=>n.removeEventListener("open",s)))}).pipe(v.share()),close$:new y.Observable(o=>{const s=l=>o.next(l);n.addEventListener("close",s),r.add(d.toDisposable(()=>n.removeEventListener("close",s)))}).pipe(v.share()),error$:new y.Observable(o=>{const s=l=>o.next(l);n.addEventListener("error",s),r.add(d.toDisposable(()=>n.removeEventListener("error",s)))}).pipe(v.share()),message$:new y.Observable(o=>{const s=l=>o.next(l);n.addEventListener("message",s),r.add(d.toDisposable(()=>n.removeEventListener("message",s)))}).pipe(v.share())}}catch(n){return console.error(n),null}}}exports.HTTPHeaders=f;exports.HTTPRequest=u;exports.HTTPResponse=g;exports.IHTTPImplementation=L;exports.ISocketService=W;exports.WebSocketService=J;exports.XHRHTTPImplementation=V;
|
package/lib/es/index.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
var U = Object.defineProperty;
|
|
2
2
|
var I = (e, t, n) => t in e ? U(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
|
3
3
|
var a = (e, t, n) => (I(e, typeof t != "symbol" ? t + "" : t, n), n);
|
|
4
|
-
import { Disposable as
|
|
4
|
+
import { Disposable as _, toDisposable as d, remove as F, DisposableCollection as M } from "@univerjs/core";
|
|
5
5
|
import { of as O, firstValueFrom as k, Observable as y } from "rxjs";
|
|
6
6
|
import { concatMap as j, share as f } from "rxjs/operators";
|
|
7
|
-
import { createIdentifier as
|
|
8
|
-
const
|
|
9
|
-
class
|
|
7
|
+
import { createIdentifier as L } from "@wendellhu/redi";
|
|
8
|
+
const R = "application/json";
|
|
9
|
+
class q {
|
|
10
10
|
constructor(t) {
|
|
11
11
|
a(this, "_headers", /* @__PURE__ */ new Map());
|
|
12
12
|
typeof t == "string" ? t.split(`
|
|
13
13
|
`).forEach((n) => {
|
|
14
|
-
const [r,
|
|
15
|
-
r &&
|
|
14
|
+
const [r, i] = n.split(":");
|
|
15
|
+
r && i && this._setHeader(r, i);
|
|
16
16
|
}) : t && Object.keys(t).forEach(([n, r]) => {
|
|
17
17
|
this._setHeader(n, r);
|
|
18
18
|
});
|
|
@@ -32,7 +32,7 @@ class L {
|
|
|
32
32
|
this._headers.has(r) ? this._headers.get(r).push(n.toString()) : this._headers.set(r, [n.toString()]);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
const $ =
|
|
35
|
+
const $ = L("univer-pro.network.http-implementation");
|
|
36
36
|
class D {
|
|
37
37
|
constructor(t) {
|
|
38
38
|
this.params = t;
|
|
@@ -60,37 +60,37 @@ class B {
|
|
|
60
60
|
return t ? `${this.url}${this.url.includes("?") ? "&" : "?"}${t}` : this.url;
|
|
61
61
|
}
|
|
62
62
|
getBody() {
|
|
63
|
-
var r;
|
|
64
|
-
const t = this.headers.get("Content-Type")
|
|
65
|
-
return t ===
|
|
63
|
+
var r, i;
|
|
64
|
+
const t = (r = this.headers.get("Content-Type")) != null ? r : R, n = (i = this.requestParams) == null ? void 0 : i.body;
|
|
65
|
+
return t === R && n && typeof n == "object" ? JSON.stringify(n) : n ? `${n}` : null;
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
class
|
|
68
|
+
class x {
|
|
69
69
|
constructor({
|
|
70
70
|
body: t,
|
|
71
71
|
headers: n,
|
|
72
72
|
status: r,
|
|
73
|
-
statusText:
|
|
73
|
+
statusText: i
|
|
74
74
|
}) {
|
|
75
75
|
a(this, "body");
|
|
76
76
|
a(this, "headers");
|
|
77
77
|
a(this, "status");
|
|
78
78
|
a(this, "statusText");
|
|
79
|
-
this.body = t, this.headers = n, this.status = r, this.statusText =
|
|
79
|
+
this.body = t, this.headers = n, this.status = r, this.statusText = i;
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
class
|
|
82
|
+
class E {
|
|
83
83
|
constructor({
|
|
84
84
|
headers: t,
|
|
85
85
|
status: n,
|
|
86
86
|
statusText: r,
|
|
87
|
-
error:
|
|
87
|
+
error: i
|
|
88
88
|
}) {
|
|
89
89
|
a(this, "headers");
|
|
90
90
|
a(this, "status");
|
|
91
91
|
a(this, "statusText");
|
|
92
92
|
a(this, "error");
|
|
93
|
-
this.headers = t, this.status = n, this.statusText = r, this.error =
|
|
93
|
+
this.headers = t, this.status = n, this.statusText = r, this.error = i;
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
class G {
|
|
@@ -99,11 +99,11 @@ class G {
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
var V = Object.defineProperty, W = Object.getOwnPropertyDescriptor, J = (e, t, n, r) => {
|
|
102
|
-
for (var
|
|
103
|
-
(
|
|
104
|
-
return r &&
|
|
102
|
+
for (var i = r > 1 ? void 0 : r ? W(t, n) : t, o = e.length - 1, s; o >= 0; o--)
|
|
103
|
+
(s = e[o]) && (i = (r ? s(t, n, i) : s(i)) || i);
|
|
104
|
+
return r && i && V(t, n, i), i;
|
|
105
105
|
}, z = (e, t) => (n, r) => t(n, r, e);
|
|
106
|
-
let
|
|
106
|
+
let b = class extends _ {
|
|
107
107
|
constructor(t) {
|
|
108
108
|
super();
|
|
109
109
|
a(this, "_interceptors", []);
|
|
@@ -113,7 +113,10 @@ let E = class extends b {
|
|
|
113
113
|
registerHTTPInterceptor(t) {
|
|
114
114
|
if (this._interceptors.indexOf(t) !== -1)
|
|
115
115
|
throw new Error("[HTTPService]: The interceptor has already been registered!");
|
|
116
|
-
return this._interceptors.push(t), this._interceptors = this._interceptors.sort((n, r) =>
|
|
116
|
+
return this._interceptors.push(t), this._interceptors = this._interceptors.sort((n, r) => {
|
|
117
|
+
var i, o;
|
|
118
|
+
return ((i = n.priority) != null ? i : 0) - ((o = r.priority) != null ? o : 0);
|
|
119
|
+
}), this._pipe = null, d(() => F(this._interceptors, t));
|
|
117
120
|
}
|
|
118
121
|
get(t, n) {
|
|
119
122
|
return this._request("GET", t, n);
|
|
@@ -129,17 +132,18 @@ let E = class extends b {
|
|
|
129
132
|
}
|
|
130
133
|
/** The HTTP request implementations */
|
|
131
134
|
async _request(t, n, r) {
|
|
132
|
-
|
|
133
|
-
|
|
135
|
+
var p, h;
|
|
136
|
+
const i = new q(r == null ? void 0 : r.headers), o = new D(r == null ? void 0 : r.params), s = new B(t, n, {
|
|
137
|
+
headers: i,
|
|
134
138
|
params: o,
|
|
135
|
-
withCredentials: (r == null ? void 0 : r.withCredentials)
|
|
139
|
+
withCredentials: (p = r == null ? void 0 : r.withCredentials) != null ? p : !1,
|
|
136
140
|
// default value for withCredentials is false by MDN
|
|
137
|
-
responseType: (r == null ? void 0 : r.responseType)
|
|
141
|
+
responseType: (h = r == null ? void 0 : r.responseType) != null ? h : "json",
|
|
138
142
|
body: r == null ? void 0 : r.body
|
|
139
|
-
}), l = O(
|
|
140
|
-
j((
|
|
143
|
+
}), l = O(s).pipe(
|
|
144
|
+
j((v) => this._runInterceptorsAndImplementation(v))
|
|
141
145
|
), c = await k(l);
|
|
142
|
-
if (c instanceof
|
|
146
|
+
if (c instanceof x)
|
|
143
147
|
return c;
|
|
144
148
|
throw new Error(`${c.error}`);
|
|
145
149
|
}
|
|
@@ -154,95 +158,95 @@ let E = class extends b {
|
|
|
154
158
|
);
|
|
155
159
|
}
|
|
156
160
|
};
|
|
157
|
-
|
|
161
|
+
b = J([
|
|
158
162
|
z(0, $)
|
|
159
|
-
],
|
|
163
|
+
], b);
|
|
160
164
|
function X(e, t) {
|
|
161
|
-
return (n, r) => t(n, (
|
|
165
|
+
return (n, r) => t(n, (i) => e(i, r));
|
|
162
166
|
}
|
|
163
167
|
const K = 200, Q = 300;
|
|
164
|
-
var
|
|
168
|
+
var N = /* @__PURE__ */ ((e) => (e[e.Continue = 100] = "Continue", e[e.SwitchingProtocols = 101] = "SwitchingProtocols", e[e.Processing = 102] = "Processing", e[e.EarlyHints = 103] = "EarlyHints", e[e.Ok = 200] = "Ok", e[e.Created = 201] = "Created", e[e.Accepted = 202] = "Accepted", e[e.NonAuthoritativeInformation = 203] = "NonAuthoritativeInformation", e[e.NoContent = 204] = "NoContent", e[e.ResetContent = 205] = "ResetContent", e[e.PartialContent = 206] = "PartialContent", e[e.MultiStatus = 207] = "MultiStatus", e[e.AlreadyReported = 208] = "AlreadyReported", e[e.ImUsed = 226] = "ImUsed", e[e.MultipleChoices = 300] = "MultipleChoices", e[e.MovedPermanently = 301] = "MovedPermanently", e[e.Found = 302] = "Found", e[e.SeeOther = 303] = "SeeOther", e[e.NotModified = 304] = "NotModified", e[e.UseProxy = 305] = "UseProxy", e[e.Unused = 306] = "Unused", e[e.TemporaryRedirect = 307] = "TemporaryRedirect", e[e.PermanentRedirect = 308] = "PermanentRedirect", e[e.BadRequest = 400] = "BadRequest", e[e.Unauthorized = 401] = "Unauthorized", e[e.PaymentRequired = 402] = "PaymentRequired", e[e.Forbidden = 403] = "Forbidden", e[e.NotFound = 404] = "NotFound", e[e.MethodNotAllowed = 405] = "MethodNotAllowed", e[e.NotAcceptable = 406] = "NotAcceptable", e[e.ProxyAuthenticationRequired = 407] = "ProxyAuthenticationRequired", e[e.RequestTimeout = 408] = "RequestTimeout", e[e.Conflict = 409] = "Conflict", e[e.Gone = 410] = "Gone", e[e.LengthRequired = 411] = "LengthRequired", e[e.PreconditionFailed = 412] = "PreconditionFailed", e[e.PayloadTooLarge = 413] = "PayloadTooLarge", e[e.UriTooLong = 414] = "UriTooLong", e[e.UnsupportedMediaType = 415] = "UnsupportedMediaType", e[e.RangeNotSatisfiable = 416] = "RangeNotSatisfiable", e[e.ExpectationFailed = 417] = "ExpectationFailed", e[e.ImATeapot = 418] = "ImATeapot", e[e.MisdirectedRequest = 421] = "MisdirectedRequest", e[e.UnprocessableEntity = 422] = "UnprocessableEntity", e[e.Locked = 423] = "Locked", e[e.FailedDependency = 424] = "FailedDependency", e[e.TooEarly = 425] = "TooEarly", e[e.UpgradeRequired = 426] = "UpgradeRequired", e[e.PreconditionRequired = 428] = "PreconditionRequired", e[e.TooManyRequests = 429] = "TooManyRequests", e[e.RequestHeaderFieldsTooLarge = 431] = "RequestHeaderFieldsTooLarge", e[e.UnavailableForLegalReasons = 451] = "UnavailableForLegalReasons", e[e.InternalServerError = 500] = "InternalServerError", e[e.NotImplemented = 501] = "NotImplemented", e[e.BadGateway = 502] = "BadGateway", e[e.ServiceUnavailable = 503] = "ServiceUnavailable", e[e.GatewayTimeout = 504] = "GatewayTimeout", e[e.HttpVersionNotSupported = 505] = "HttpVersionNotSupported", e[e.VariantAlsoNegotiates = 506] = "VariantAlsoNegotiates", e[e.InsufficientStorage = 507] = "InsufficientStorage", e[e.LoopDetected = 508] = "LoopDetected", e[e.NotExtended = 510] = "NotExtended", e[e.NetworkAuthenticationRequired = 511] = "NetworkAuthenticationRequired", e))(N || {});
|
|
165
169
|
class H {
|
|
166
170
|
send(t) {
|
|
167
171
|
return new y((n) => {
|
|
168
172
|
const r = new XMLHttpRequest();
|
|
169
173
|
r.open(t.method, t.getUrlWithParams()), t.withCredentials && (r.withCredentials = !0), t.headers.forEach((c, p) => r.setRequestHeader(c, p.join(","))), t.headers.has("Accept") || r.setRequestHeader("Accept", "application/json, text/plain, */*"), t.headers.has("Content-Type") || r.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
|
|
170
|
-
const
|
|
171
|
-
const c = r.statusText || "OK", p = new
|
|
174
|
+
const i = () => {
|
|
175
|
+
const c = r.statusText || "OK", p = new q(r.getAllResponseHeaders());
|
|
172
176
|
return new G(p, r.status, c);
|
|
173
177
|
}, o = () => {
|
|
174
|
-
const { headers: c, statusText: p, status:
|
|
175
|
-
let
|
|
176
|
-
|
|
177
|
-
let
|
|
178
|
-
if (
|
|
179
|
-
const u =
|
|
178
|
+
const { headers: c, statusText: p, status: h } = i(), { responseType: v } = t;
|
|
179
|
+
let m = null, w = null;
|
|
180
|
+
h !== N.NoContent && (m = typeof r.response > "u" ? r.responseText : r.response);
|
|
181
|
+
let g = h >= K && h < Q;
|
|
182
|
+
if (v === "json" && typeof m == "string") {
|
|
183
|
+
const u = m;
|
|
180
184
|
try {
|
|
181
|
-
|
|
185
|
+
m = m ? JSON.parse(m) : null;
|
|
182
186
|
} catch (A) {
|
|
183
|
-
|
|
187
|
+
g = !1, m = u, w = A;
|
|
184
188
|
}
|
|
185
189
|
}
|
|
186
|
-
|
|
187
|
-
new
|
|
188
|
-
body:
|
|
190
|
+
g ? n.next(
|
|
191
|
+
new x({
|
|
192
|
+
body: m,
|
|
189
193
|
headers: c,
|
|
190
|
-
status:
|
|
194
|
+
status: h,
|
|
191
195
|
statusText: p
|
|
192
196
|
})
|
|
193
197
|
) : n.next(
|
|
194
|
-
new
|
|
195
|
-
error:
|
|
198
|
+
new E({
|
|
199
|
+
error: w,
|
|
196
200
|
headers: c,
|
|
197
|
-
status:
|
|
201
|
+
status: h,
|
|
198
202
|
statusText: p
|
|
199
203
|
})
|
|
200
204
|
);
|
|
201
|
-
},
|
|
202
|
-
const p = new
|
|
205
|
+
}, s = (c) => {
|
|
206
|
+
const p = new E({
|
|
203
207
|
error: c,
|
|
204
208
|
status: r.status || 0,
|
|
205
209
|
statusText: r.statusText || "Unknown Error",
|
|
206
|
-
headers:
|
|
210
|
+
headers: i().headers
|
|
207
211
|
});
|
|
208
212
|
n.next(p);
|
|
209
213
|
};
|
|
210
|
-
r.addEventListener("load", o), r.addEventListener("error",
|
|
214
|
+
r.addEventListener("load", o), r.addEventListener("error", s), r.addEventListener("abort", s), r.addEventListener("timeout", s);
|
|
211
215
|
const l = t.getBody();
|
|
212
216
|
return r.send(l), () => {
|
|
213
|
-
r.readyState !== r.DONE && r.abort(), r.removeEventListener("load", o), r.removeEventListener("error",
|
|
217
|
+
r.readyState !== r.DONE && r.abort(), r.removeEventListener("load", o), r.removeEventListener("error", s), r.removeEventListener("abort", s), r.removeEventListener("timeout", s);
|
|
214
218
|
};
|
|
215
219
|
});
|
|
216
220
|
}
|
|
217
221
|
}
|
|
218
|
-
const T =
|
|
219
|
-
class ee extends
|
|
222
|
+
const T = L("univer.socket");
|
|
223
|
+
class ee extends _ {
|
|
220
224
|
createSocket(t) {
|
|
221
225
|
try {
|
|
222
226
|
const n = new WebSocket(t), r = new M();
|
|
223
227
|
return {
|
|
224
228
|
URL: t,
|
|
225
|
-
close: (o,
|
|
226
|
-
n.close(o,
|
|
229
|
+
close: (o, s) => {
|
|
230
|
+
n.close(o, s), r.dispose();
|
|
227
231
|
},
|
|
228
232
|
send: (o) => {
|
|
229
233
|
n.send(o);
|
|
230
234
|
},
|
|
231
235
|
open$: new y((o) => {
|
|
232
|
-
const
|
|
233
|
-
n.addEventListener("open",
|
|
236
|
+
const s = (l) => o.next(l);
|
|
237
|
+
n.addEventListener("open", s), r.add(d(() => n.removeEventListener("open", s)));
|
|
234
238
|
}).pipe(f()),
|
|
235
239
|
close$: new y((o) => {
|
|
236
|
-
const
|
|
237
|
-
n.addEventListener("close",
|
|
240
|
+
const s = (l) => o.next(l);
|
|
241
|
+
n.addEventListener("close", s), r.add(d(() => n.removeEventListener("close", s)));
|
|
238
242
|
}).pipe(f()),
|
|
239
243
|
error$: new y((o) => {
|
|
240
|
-
const
|
|
241
|
-
n.addEventListener("error",
|
|
244
|
+
const s = (l) => o.next(l);
|
|
245
|
+
n.addEventListener("error", s), r.add(d(() => n.removeEventListener("error", s)));
|
|
242
246
|
}).pipe(f()),
|
|
243
247
|
message$: new y((o) => {
|
|
244
|
-
const
|
|
245
|
-
n.addEventListener("message",
|
|
248
|
+
const s = (l) => o.next(l);
|
|
249
|
+
n.addEventListener("message", s), r.add(d(() => n.removeEventListener("message", s)));
|
|
246
250
|
}).pipe(f())
|
|
247
251
|
};
|
|
248
252
|
} catch (n) {
|
|
@@ -251,10 +255,10 @@ class ee extends b {
|
|
|
251
255
|
}
|
|
252
256
|
}
|
|
253
257
|
export {
|
|
254
|
-
|
|
258
|
+
q as HTTPHeaders,
|
|
255
259
|
B as HTTPRequest,
|
|
256
|
-
|
|
257
|
-
|
|
260
|
+
x as HTTPResponse,
|
|
261
|
+
b as HTTPService,
|
|
258
262
|
$ as IHTTPImplementation,
|
|
259
263
|
T as ISocketService,
|
|
260
264
|
ee as WebSocketService,
|
package/lib/umd/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(o,
|
|
2
|
-
`).forEach(n=>{const[r,i]=n.split(":");r&&i&&this._setHeader(r,i)}):t&&Object.keys(t).forEach(([n,r])=>{this._setHeader(n,r)})}forEach(t){this._headers.forEach((n,r)=>t(r,n))}has(t){return!!this._headers.has(t.toLowerCase())}get(t){const n=t.toLowerCase();return this._headers.has(n)?this._headers.get(n):null}_setHeader(t,n){const r=t.toLowerCase();this._headers.has(r)?this._headers.get(r).push(n.toString()):this._headers.set(r,[n.toString()])}}const
|
|
1
|
+
(function(o,c){typeof exports=="object"&&typeof module<"u"?c(exports,require("@univerjs/core"),require("rxjs"),require("rxjs/operators"),require("@wendellhu/redi")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","rxjs","rxjs/operators","@wendellhu/redi"],c):(o=typeof globalThis<"u"?globalThis:o||self,c(o.UniverNetwork={},o.UniverCore,o.rxjs,o.rxjs.operators,o["@wendellhu/redi"]))})(this,function(o,c,l,v,g){"use strict";var J=Object.defineProperty;var X=(o,c,l)=>c in o?J(o,c,{enumerable:!0,configurable:!0,writable:!0,value:l}):o[c]=l;var p=(o,c,l)=>(X(o,typeof c!="symbol"?c+"":c,l),l);const u="application/json";class w{constructor(t){p(this,"_headers",new Map);typeof t=="string"?t.split(`
|
|
2
|
+
`).forEach(n=>{const[r,i]=n.split(":");r&&i&&this._setHeader(r,i)}):t&&Object.keys(t).forEach(([n,r])=>{this._setHeader(n,r)})}forEach(t){this._headers.forEach((n,r)=>t(r,n))}has(t){return!!this._headers.has(t.toLowerCase())}get(t){const n=t.toLowerCase();return this._headers.has(n)?this._headers.get(n):null}_setHeader(t,n){const r=t.toLowerCase();this._headers.has(r)?this._headers.get(r).push(n.toString()):this._headers.set(r,[n.toString()])}}const E=g.createIdentifier("univer-pro.network.http-implementation");class U{constructor(t){this.params=t}toString(){return this.params?Object.keys(this.params).map(t=>`${t}=${this.params[t]}`).join("&"):""}}class _{constructor(t,n,r){this.method=t,this.url=n,this.requestParams=r}get headers(){return this.requestParams.headers}get withCredentials(){return this.requestParams.withCredentials}get responseType(){return this.requestParams.responseType}getUrlWithParams(){var n,r;const t=(r=(n=this.requestParams)==null?void 0:n.params)==null?void 0:r.toString();return t?`${this.url}${this.url.includes("?")?"&":"?"}${t}`:this.url}getBody(){var r,i;const t=(r=this.headers.get("Content-Type"))!=null?r:u,n=(i=this.requestParams)==null?void 0:i.body;return t===u&&n&&typeof n=="object"?JSON.stringify(n):n?`${n}`:null}}class R{constructor({body:t,headers:n,status:r,statusText:i}){p(this,"body");p(this,"headers");p(this,"status");p(this,"statusText");this.body=t,this.headers=n,this.status=r,this.statusText=i}}class q{constructor({headers:t,status:n,statusText:r,error:i}){p(this,"headers");p(this,"status");p(this,"statusText");p(this,"error");this.headers=t,this.status=n,this.statusText=r,this.error=i}}class x{constructor(t,n,r){this.headers=t,this.status=n,this.statusText=r}}var A=Object.defineProperty,O=Object.getOwnPropertyDescriptor,M=(e,t,n,r)=>{for(var i=r>1?void 0:r?O(t,n):t,a=e.length-1,s;a>=0;a--)(s=e[a])&&(i=(r?s(t,n,i):s(i))||i);return r&&i&&A(t,n,i),i},k=(e,t)=>(n,r)=>t(n,r,e);o.HTTPService=class extends c.Disposable{constructor(n){super();p(this,"_interceptors",[]);p(this,"_pipe");this._http=n}registerHTTPInterceptor(n){if(this._interceptors.indexOf(n)!==-1)throw new Error("[HTTPService]: The interceptor has already been registered!");return this._interceptors.push(n),this._interceptors=this._interceptors.sort((r,i)=>{var a,s;return((a=r.priority)!=null?a:0)-((s=i.priority)!=null?s:0)}),this._pipe=null,c.toDisposable(()=>c.remove(this._interceptors,n))}get(n,r){return this._request("GET",n,r)}post(n,r){return this._request("POST",n,r)}put(n,r){return this._request("PUT",n,r)}delete(n,r){return this._request("DELETE",n,r)}async _request(n,r,i){var f,b;const a=new w(i==null?void 0:i.headers),s=new U(i==null?void 0:i.params),d=new _(n,r,{headers:a,params:s,withCredentials:(f=i==null?void 0:i.withCredentials)!=null?f:!1,responseType:(b=i==null?void 0:i.responseType)!=null?b:"json",body:i==null?void 0:i.body}),m=l.of(d).pipe(v.concatMap(y=>this._runInterceptorsAndImplementation(y))),h=await l.firstValueFrom(m);if(h instanceof R)return h;throw new Error(`${h.error}`)}_runInterceptorsAndImplementation(n){return this._pipe||(this._pipe=this._interceptors.map(r=>r.interceptor).reduceRight((r,i)=>F(r,i),(r,i)=>i(r))),this._pipe(n,r=>this._http.send(r))}},o.HTTPService=M([k(0,E)],o.HTTPService);function F(e,t){return(n,r)=>t(n,i=>e(i,r))}const j=200,D=300;var L=(e=>(e[e.Continue=100]="Continue",e[e.SwitchingProtocols=101]="SwitchingProtocols",e[e.Processing=102]="Processing",e[e.EarlyHints=103]="EarlyHints",e[e.Ok=200]="Ok",e[e.Created=201]="Created",e[e.Accepted=202]="Accepted",e[e.NonAuthoritativeInformation=203]="NonAuthoritativeInformation",e[e.NoContent=204]="NoContent",e[e.ResetContent=205]="ResetContent",e[e.PartialContent=206]="PartialContent",e[e.MultiStatus=207]="MultiStatus",e[e.AlreadyReported=208]="AlreadyReported",e[e.ImUsed=226]="ImUsed",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.Found=302]="Found",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.Unused=306]="Unused",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.LengthRequired=411]="LengthRequired",e[e.PreconditionFailed=412]="PreconditionFailed",e[e.PayloadTooLarge=413]="PayloadTooLarge",e[e.UriTooLong=414]="UriTooLong",e[e.UnsupportedMediaType=415]="UnsupportedMediaType",e[e.RangeNotSatisfiable=416]="RangeNotSatisfiable",e[e.ExpectationFailed=417]="ExpectationFailed",e[e.ImATeapot=418]="ImATeapot",e[e.MisdirectedRequest=421]="MisdirectedRequest",e[e.UnprocessableEntity=422]="UnprocessableEntity",e[e.Locked=423]="Locked",e[e.FailedDependency=424]="FailedDependency",e[e.TooEarly=425]="TooEarly",e[e.UpgradeRequired=426]="UpgradeRequired",e[e.PreconditionRequired=428]="PreconditionRequired",e[e.TooManyRequests=429]="TooManyRequests",e[e.RequestHeaderFieldsTooLarge=431]="RequestHeaderFieldsTooLarge",e[e.UnavailableForLegalReasons=451]="UnavailableForLegalReasons",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout",e[e.HttpVersionNotSupported=505]="HttpVersionNotSupported",e[e.VariantAlsoNegotiates=506]="VariantAlsoNegotiates",e[e.InsufficientStorage=507]="InsufficientStorage",e[e.LoopDetected=508]="LoopDetected",e[e.NotExtended=510]="NotExtended",e[e.NetworkAuthenticationRequired=511]="NetworkAuthenticationRequired",e))(L||{});class ${send(t){return new l.Observable(n=>{const r=new XMLHttpRequest;r.open(t.method,t.getUrlWithParams()),t.withCredentials&&(r.withCredentials=!0),t.headers.forEach((m,h)=>r.setRequestHeader(m,h.join(","))),t.headers.has("Accept")||r.setRequestHeader("Accept","application/json, text/plain, */*"),t.headers.has("Content-Type")||r.setRequestHeader("Content-Type","application/json;charset=UTF-8");const i=()=>{const m=r.statusText||"OK",h=new w(r.getAllResponseHeaders());return new x(h,r.status,m)},a=()=>{const{headers:m,statusText:h,status:f}=i(),{responseType:b}=t;let y=null,N=null;f!==L.NoContent&&(y=typeof r.response>"u"?r.responseText:r.response);let I=f>=j&&f<D;if(b==="json"&&typeof y=="string"){const V=y;try{y=y?JSON.parse(y):null}catch(W){I=!1,y=V,N=W}}I?n.next(new R({body:y,headers:m,status:f,statusText:h})):n.next(new q({error:N,headers:m,status:f,statusText:h}))},s=m=>{const h=new q({error:m,status:r.status||0,statusText:r.statusText||"Unknown Error",headers:i().headers});n.next(h)};r.addEventListener("load",a),r.addEventListener("error",s),r.addEventListener("abort",s),r.addEventListener("timeout",s);const d=t.getBody();return r.send(d),()=>{r.readyState!==r.DONE&&r.abort(),r.removeEventListener("load",a),r.removeEventListener("error",s),r.removeEventListener("abort",s),r.removeEventListener("timeout",s)}})}}const B=g.createIdentifier("univer.socket");class G extends c.Disposable{createSocket(t){try{const n=new WebSocket(t),r=new c.DisposableCollection;return{URL:t,close:(a,s)=>{n.close(a,s),r.dispose()},send:a=>{n.send(a)},open$:new l.Observable(a=>{const s=d=>a.next(d);n.addEventListener("open",s),r.add(c.toDisposable(()=>n.removeEventListener("open",s)))}).pipe(v.share()),close$:new l.Observable(a=>{const s=d=>a.next(d);n.addEventListener("close",s),r.add(c.toDisposable(()=>n.removeEventListener("close",s)))}).pipe(v.share()),error$:new l.Observable(a=>{const s=d=>a.next(d);n.addEventListener("error",s),r.add(c.toDisposable(()=>n.removeEventListener("error",s)))}).pipe(v.share()),message$:new l.Observable(a=>{const s=d=>a.next(d);n.addEventListener("message",s),r.add(c.toDisposable(()=>n.removeEventListener("message",s)))}).pipe(v.share())}}catch(n){return console.error(n),null}}}o.HTTPHeaders=w,o.HTTPRequest=_,o.HTTPResponse=R,o.IHTTPImplementation=E,o.ISocketService=B,o.WebSocketService=G,o.XHRHTTPImplementation=$,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
|
package/package.json
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@univerjs/network",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.5",
|
|
4
4
|
"private": false,
|
|
5
5
|
"author": "DreamNum <developer@univer.ai>",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
|
+
"funding": {
|
|
8
|
+
"type": "opencollective",
|
|
9
|
+
"url": "https://opencollective.com/univer"
|
|
10
|
+
},
|
|
11
|
+
"homepage": "https://univer.ai",
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/dream-num/univer"
|
|
15
|
+
},
|
|
16
|
+
"bugs": {
|
|
17
|
+
"url": "https://github.com/dream-num/univer/issues"
|
|
18
|
+
},
|
|
7
19
|
"keywords": [],
|
|
8
20
|
"exports": {
|
|
9
21
|
".": {
|
|
@@ -15,7 +27,8 @@
|
|
|
15
27
|
"import": "./lib/es/*",
|
|
16
28
|
"require": "./lib/cjs/*",
|
|
17
29
|
"types": "./lib/types/index.d.ts"
|
|
18
|
-
}
|
|
30
|
+
},
|
|
31
|
+
"./lib/*": "./lib/*"
|
|
19
32
|
},
|
|
20
33
|
"main": "./lib/cjs/index.js",
|
|
21
34
|
"module": "./lib/es/index.js",
|
|
@@ -34,19 +47,19 @@
|
|
|
34
47
|
"npm": ">=8.0.0"
|
|
35
48
|
},
|
|
36
49
|
"peerDependencies": {
|
|
37
|
-
"@wendellhu/redi": "
|
|
50
|
+
"@wendellhu/redi": "^0.13.0",
|
|
38
51
|
"rxjs": ">=7.0.0",
|
|
39
|
-
"@univerjs/core": "0.1.0-beta.
|
|
52
|
+
"@univerjs/core": "0.1.0-beta.5"
|
|
40
53
|
},
|
|
41
54
|
"dependencies": {},
|
|
42
55
|
"devDependencies": {
|
|
43
|
-
"@wendellhu/redi": "^0.
|
|
56
|
+
"@wendellhu/redi": "^0.13.0",
|
|
44
57
|
"rxjs": "^7.8.1",
|
|
45
58
|
"typescript": "^5.3.3",
|
|
46
|
-
"vite": "^5.
|
|
47
|
-
"vitest": "^1.
|
|
48
|
-
"@univerjs/core": "0.1.0-beta.
|
|
49
|
-
"@univerjs/shared": "0.1.0-beta.
|
|
59
|
+
"vite": "^5.1.4",
|
|
60
|
+
"vitest": "^1.3.1",
|
|
61
|
+
"@univerjs/core": "0.1.0-beta.5",
|
|
62
|
+
"@univerjs/shared": "0.1.0-beta.5"
|
|
50
63
|
},
|
|
51
64
|
"scripts": {
|
|
52
65
|
"lint:types": "tsc --noEmit",
|