mphttpx 2.3.0 → 2.3.1
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 +994 -994
- package/dist/cjs/fetchP.js +22 -0
- package/dist/cjs/index.js +197 -55
- package/dist/esm/fetchP.js +12 -0
- package/dist/esm/index.js +5 -18
- package/dist/index.d.ts +8 -394
- package/dist/mphttpx.cjs.js +6646 -0
- package/dist/mphttpx.cjs.min.js +1 -1
- package/dist/mphttpx.esm.js +6595 -0
- package/dist/mphttpx.esm.min.js +1 -1
- package/package.json +27 -9
- package/dist/cjs/encoding/TextDecoderP.js +0 -174
- package/dist/cjs/encoding/TextEncoderP.js +0 -121
- package/dist/cjs/event-system/AbortControllerP.js +0 -28
- package/dist/cjs/event-system/AbortSignalP.js +0 -120
- package/dist/cjs/event-system/CloseEventP.js +0 -36
- package/dist/cjs/event-system/CustomEventP.js +0 -35
- package/dist/cjs/event-system/EventP.js +0 -127
- package/dist/cjs/event-system/EventTargetP.js +0 -155
- package/dist/cjs/event-system/MessageEventP.js +0 -61
- package/dist/cjs/event-system/ProgressEventP.js +0 -42
- package/dist/cjs/fetch-api/BodyImpl.js +0 -167
- package/dist/cjs/fetch-api/HeadersP.js +0 -155
- package/dist/cjs/fetch-api/RequestP.js +0 -163
- package/dist/cjs/fetch-api/ResponseP.js +0 -93
- package/dist/cjs/fetch-api/fetchP.js +0 -125
- package/dist/cjs/file-system/BlobP.js +0 -111
- package/dist/cjs/file-system/FileP.js +0 -34
- package/dist/cjs/file-system/FileReaderP.js +0 -173
- package/dist/cjs/helpers/Payload.js +0 -96
- package/dist/cjs/helpers/decode.js +0 -11
- package/dist/cjs/helpers/emitEvent.js +0 -14
- package/dist/cjs/helpers/emitProgressEvent.js +0 -19
- package/dist/cjs/helpers/encode.js +0 -11
- package/dist/cjs/helpers/handlers.js +0 -23
- package/dist/cjs/helpers/isArrayBuffer.js +0 -11
- package/dist/cjs/helpers/isBlob.js +0 -20
- package/dist/cjs/helpers/isEventTarget.js +0 -18
- package/dist/cjs/helpers/isSequence.js +0 -13
- package/dist/cjs/helpers/isURLSearchParams.js +0 -10
- package/dist/cjs/helpers/normalizeMethod.js +0 -11
- package/dist/cjs/helpers/statusTextMap.js +0 -68
- package/dist/cjs/helpers/toBase64.js +0 -28
- package/dist/cjs/mini-program/WebSocketImpl.js +0 -197
- package/dist/cjs/mini-program/XMLHttpRequestImpl.js +0 -493
- package/dist/cjs/mini-program/connectSocket.js +0 -28
- package/dist/cjs/mini-program/platform.js +0 -29
- package/dist/cjs/mini-program/request.js +0 -36
- package/dist/cjs/network/FormDataP.js +0 -160
- package/dist/cjs/network/URLSearchParamsP.js +0 -226
- package/dist/cjs/network/XMLHttpRequestEventTargetP.js +0 -64
- package/dist/cjs/network/XMLHttpRequestUploadP.js +0 -28
- package/dist/cjs/utils.js +0 -56
- package/dist/esm/encoding/TextDecoderP.js +0 -171
- package/dist/esm/encoding/TextEncoderP.js +0 -118
- package/dist/esm/event-system/AbortControllerP.js +0 -25
- package/dist/esm/event-system/AbortSignalP.js +0 -115
- package/dist/esm/event-system/CloseEventP.js +0 -34
- package/dist/esm/event-system/CustomEventP.js +0 -32
- package/dist/esm/event-system/EventP.js +0 -122
- package/dist/esm/event-system/EventTargetP.js +0 -150
- package/dist/esm/event-system/MessageEventP.js +0 -59
- package/dist/esm/event-system/ProgressEventP.js +0 -40
- package/dist/esm/fetch-api/BodyImpl.js +0 -164
- package/dist/esm/fetch-api/HeadersP.js +0 -149
- package/dist/esm/fetch-api/RequestP.js +0 -160
- package/dist/esm/fetch-api/ResponseP.js +0 -90
- package/dist/esm/fetch-api/fetchP.js +0 -121
- package/dist/esm/file-system/BlobP.js +0 -108
- package/dist/esm/file-system/FileP.js +0 -31
- package/dist/esm/file-system/FileReaderP.js +0 -170
- package/dist/esm/helpers/Payload.js +0 -94
- package/dist/esm/helpers/decode.js +0 -9
- package/dist/esm/helpers/emitEvent.js +0 -12
- package/dist/esm/helpers/emitProgressEvent.js +0 -17
- package/dist/esm/helpers/encode.js +0 -9
- package/dist/esm/helpers/handlers.js +0 -20
- package/dist/esm/helpers/isArrayBuffer.js +0 -9
- package/dist/esm/helpers/isBlob.js +0 -18
- package/dist/esm/helpers/isEventTarget.js +0 -16
- package/dist/esm/helpers/isSequence.js +0 -11
- package/dist/esm/helpers/isURLSearchParams.js +0 -8
- package/dist/esm/helpers/normalizeMethod.js +0 -9
- package/dist/esm/helpers/statusTextMap.js +0 -66
- package/dist/esm/helpers/toBase64.js +0 -26
- package/dist/esm/mini-program/WebSocketImpl.js +0 -193
- package/dist/esm/mini-program/XMLHttpRequestImpl.js +0 -489
- package/dist/esm/mini-program/connectSocket.js +0 -26
- package/dist/esm/mini-program/platform.js +0 -27
- package/dist/esm/mini-program/request.js +0 -34
- package/dist/esm/network/FormDataP.js +0 -157
- package/dist/esm/network/URLSearchParamsP.js +0 -223
- package/dist/esm/network/XMLHttpRequestEventTargetP.js +0 -61
- package/dist/esm/network/XMLHttpRequestUploadP.js +0 -25
- package/dist/esm/utils.js +0 -48
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var isBlob = require('../helpers/isBlob.js');
|
|
4
|
-
var handlers = require('../helpers/handlers.js');
|
|
5
|
-
var toBase64 = require('../helpers/toBase64.js');
|
|
6
|
-
var EventTargetP = require('../event-system/EventTargetP.js');
|
|
7
|
-
var emitProgressEvent = require('../helpers/emitProgressEvent.js');
|
|
8
|
-
var utils = require('../utils.js');
|
|
9
|
-
|
|
10
|
-
class FileReaderP extends EventTargetP.EventTargetP {
|
|
11
|
-
static get EMPTY() { return 0; }
|
|
12
|
-
static get LOADING() { return 1; }
|
|
13
|
-
static get DONE() { return 2; }
|
|
14
|
-
constructor() {
|
|
15
|
-
super();
|
|
16
|
-
utils.setState(this, "__FileReader__", new FileReaderState(this));
|
|
17
|
-
}
|
|
18
|
-
get EMPTY() { return 0; }
|
|
19
|
-
get LOADING() { return 1; }
|
|
20
|
-
get DONE() { return 2; }
|
|
21
|
-
get error() { return state(this).error; }
|
|
22
|
-
get readyState() { return state(this).readyState; }
|
|
23
|
-
get result() { return state(this).result; }
|
|
24
|
-
abort() {
|
|
25
|
-
if (state(this).pos === 2 /* FRCycle.LOADING */)
|
|
26
|
-
execAbort(this);
|
|
27
|
-
}
|
|
28
|
-
readAsArrayBuffer(blob) {
|
|
29
|
-
check(this, "readAsArrayBuffer", arguments.length, blob);
|
|
30
|
-
read(this, blob.size, () => blob.arrayBuffer());
|
|
31
|
-
}
|
|
32
|
-
readAsBinaryString(blob) {
|
|
33
|
-
check(this, "readAsBinaryString", arguments.length, blob);
|
|
34
|
-
read(this, blob.size, () => blob.arrayBuffer().then(res => {
|
|
35
|
-
let str = [];
|
|
36
|
-
let buf = new Uint8Array(res);
|
|
37
|
-
for (let i = 0; i < buf.length; ++i) {
|
|
38
|
-
str.push(String.fromCharCode(buf[i]));
|
|
39
|
-
}
|
|
40
|
-
return str.join("");
|
|
41
|
-
}));
|
|
42
|
-
}
|
|
43
|
-
readAsDataURL(blob) {
|
|
44
|
-
check(this, "readAsDataURL", arguments.length, blob);
|
|
45
|
-
read(this, blob.size, () => blob.arrayBuffer().then(res => {
|
|
46
|
-
return "data:" + (blob.type || "application/octet-stream") + ";base64," + toBase64.Uint8Array_toBase64(new Uint8Array(res));
|
|
47
|
-
}));
|
|
48
|
-
}
|
|
49
|
-
readAsText(blob, encoding) {
|
|
50
|
-
check(this, "readAsText", arguments.length, blob);
|
|
51
|
-
if (encoding !== undefined) {
|
|
52
|
-
let _encoding = "" + encoding;
|
|
53
|
-
if (["utf-8", "utf8", "unicode-1-1-utf-8"].indexOf(_encoding.toLowerCase()) === -1) {
|
|
54
|
-
console.warn(`Ignoring the execution of 'readAsText' on 'FileReader': encoding ('${_encoding}') not implemented.`);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
read(this, blob.size, () => blob.text());
|
|
58
|
-
}
|
|
59
|
-
get onabort() { return state(this).onabort; }
|
|
60
|
-
set onabort(value) { state(this).onabort = value; state(this).attach("abort"); }
|
|
61
|
-
get onerror() { return state(this).onerror; }
|
|
62
|
-
set onerror(value) { state(this).onerror = value; state(this).attach("error"); }
|
|
63
|
-
get onload() { return state(this).onload; }
|
|
64
|
-
set onload(value) { state(this).onload = value; state(this).attach("load"); }
|
|
65
|
-
get onloadend() { return state(this).onloadend; }
|
|
66
|
-
set onloadend(value) { state(this).onloadend = value; state(this).attach("loadend"); }
|
|
67
|
-
get onloadstart() { return state(this).onloadstart; }
|
|
68
|
-
set onloadstart(value) { state(this).onloadstart = value; state(this).attach("loadstart"); }
|
|
69
|
-
get onprogress() { return state(this).onprogress; }
|
|
70
|
-
set onprogress(value) { state(this).onprogress = value; state(this).attach("progress"); }
|
|
71
|
-
/** @internal */ toString() { return "[object FileReader]"; }
|
|
72
|
-
/** @internal */ get [utils.SymbolP.toStringTag]() { return "FileReader"; }
|
|
73
|
-
/** @internal */ get __MPHTTPX__() { return { chain: ["FileReader", "EventTarget"] }; }
|
|
74
|
-
}
|
|
75
|
-
/** @internal */
|
|
76
|
-
class FileReaderState {
|
|
77
|
-
constructor(target) {
|
|
78
|
-
this.pos = 0 /* FRCycle.EMPTY */;
|
|
79
|
-
this.readyState = 0 /* EMPTY */;
|
|
80
|
-
this.result = null;
|
|
81
|
-
this.error = null;
|
|
82
|
-
this.onabort = null;
|
|
83
|
-
this.onerror = null;
|
|
84
|
-
this.onload = null;
|
|
85
|
-
this.onloadend = null;
|
|
86
|
-
this.onloadstart = null;
|
|
87
|
-
this.onprogress = null;
|
|
88
|
-
this.attach = handlers.attachFn(target, getHandlers(target));
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
function getHandlers(t) {
|
|
92
|
-
return {
|
|
93
|
-
onabort: (ev) => { handlers.executeFn(t, t.onabort, ev); },
|
|
94
|
-
onerror: (ev) => { handlers.executeFn(t, t.onerror, ev); },
|
|
95
|
-
onload: (ev) => { handlers.executeFn(t, t.onload, ev); },
|
|
96
|
-
onloadend: (ev) => { handlers.executeFn(t, t.onloadend, ev); },
|
|
97
|
-
onloadstart: (ev) => { handlers.executeFn(t, t.onloadstart, ev); },
|
|
98
|
-
onprogress: (ev) => { handlers.executeFn(t, t.onprogress, ev); },
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
function state(target) {
|
|
102
|
-
return target.__FileReader__;
|
|
103
|
-
}
|
|
104
|
-
function check(reader, kind, actual, blob) {
|
|
105
|
-
utils.checkArgsLength(actual, 1, "FileReader", kind);
|
|
106
|
-
if (!isBlob.isBlob(blob))
|
|
107
|
-
throw new TypeError("Failed to execute '" + kind + "' on 'FileReader': parameter 1 is not of type 'Blob'.");
|
|
108
|
-
if (reader.readyState === 1 /* LOADING */)
|
|
109
|
-
throw new utils.DOMExceptionP(`Failed to execute '${kind}' on 'FileReader': The object is already busy reading Blobs.`, "InvalidStateError");
|
|
110
|
-
}
|
|
111
|
-
function read(reader, size, launch) {
|
|
112
|
-
execLoadstart(reader, size, launch);
|
|
113
|
-
}
|
|
114
|
-
function execLoadstart(reader, size, launch) {
|
|
115
|
-
let s = state(reader);
|
|
116
|
-
s.pos = 1 /* FRCycle.LOADSTART */;
|
|
117
|
-
s.error = null;
|
|
118
|
-
s.result = null;
|
|
119
|
-
const callback = () => { emitProgressEvent.emitProgressEvent(reader, "loadstart", 0, size); return launch(); };
|
|
120
|
-
return execLoading(reader, size, callback);
|
|
121
|
-
}
|
|
122
|
-
function execLoading(reader, size, launch) {
|
|
123
|
-
let s = state(reader);
|
|
124
|
-
s.pos = 2 /* FRCycle.LOADING */;
|
|
125
|
-
s.readyState = 1 /* LOADING */;
|
|
126
|
-
return Promise.resolve().then(() => {
|
|
127
|
-
if (s.pos !== 2 /* FRCycle.LOADING */)
|
|
128
|
-
return;
|
|
129
|
-
return launch().then(r => execDone(reader, size, r)).catch(err => execError(reader, err));
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
function execDone(reader, size, result) {
|
|
133
|
-
let s = state(reader);
|
|
134
|
-
if (s.pos !== 2 /* FRCycle.LOADING */)
|
|
135
|
-
return;
|
|
136
|
-
s.pos = 3 /* FRCycle.DONE */;
|
|
137
|
-
s.result = result;
|
|
138
|
-
s.readyState = 2; /* DONE */
|
|
139
|
-
execLoad(reader, size);
|
|
140
|
-
}
|
|
141
|
-
function execLoad(reader, size) {
|
|
142
|
-
state(reader).pos = 4 /* FRCycle.LOAD */;
|
|
143
|
-
emitProgressEvent.emitProgressEvent(reader, "load", size, size);
|
|
144
|
-
execLoadend(reader, size);
|
|
145
|
-
}
|
|
146
|
-
function execAbort(reader) {
|
|
147
|
-
let s = state(reader);
|
|
148
|
-
s.pos = 5 /* FRCycle.ABORT */;
|
|
149
|
-
s.error = new utils.DOMExceptionP("An ongoing operation was aborted, typically with a call to abort().", "AbortError");
|
|
150
|
-
s.result = null;
|
|
151
|
-
s.readyState = 2 /* DONE */;
|
|
152
|
-
emitProgressEvent.emitProgressEvent(reader, "abort");
|
|
153
|
-
execLoadend(reader);
|
|
154
|
-
}
|
|
155
|
-
function execError(reader, err) {
|
|
156
|
-
let s = state(reader);
|
|
157
|
-
if (s.pos !== 2 /* FRCycle.LOADING */)
|
|
158
|
-
return;
|
|
159
|
-
s.pos = 6 /* FRCycle.ERROR */;
|
|
160
|
-
s.error = err;
|
|
161
|
-
s.result = null;
|
|
162
|
-
s.readyState = 2 /* DONE */;
|
|
163
|
-
emitProgressEvent.emitProgressEvent(reader, "error");
|
|
164
|
-
execLoadend(reader);
|
|
165
|
-
}
|
|
166
|
-
function execLoadend(reader, size = 0) {
|
|
167
|
-
state(reader).pos = 7 /* FRCycle.LOADEND */;
|
|
168
|
-
emitProgressEvent.emitProgressEvent(reader, "loadend", size, size);
|
|
169
|
-
}
|
|
170
|
-
const FileReaderE = (typeof FileReader !== "undefined" && FileReader) || FileReaderP;
|
|
171
|
-
|
|
172
|
-
exports.FileReader = FileReaderE;
|
|
173
|
-
exports.FileReaderP = FileReaderP;
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var encode = require('./encode.js');
|
|
4
|
-
var decode = require('./decode.js');
|
|
5
|
-
var BlobP = require('../file-system/BlobP.js');
|
|
6
|
-
var isBlob = require('./isBlob.js');
|
|
7
|
-
var utils = require('../utils.js');
|
|
8
|
-
var isArrayBuffer = require('./isArrayBuffer.js');
|
|
9
|
-
var isURLSearchParams = require('./isURLSearchParams.js');
|
|
10
|
-
|
|
11
|
-
/** @internal */
|
|
12
|
-
class Payload {
|
|
13
|
-
constructor(body) {
|
|
14
|
-
this.type = "";
|
|
15
|
-
if (typeof body === "string") {
|
|
16
|
-
this.promise = Promise.resolve(body);
|
|
17
|
-
this.type = "text/plain;charset=UTF-8";
|
|
18
|
-
this.calcLength = () => encode.encode(body).length;
|
|
19
|
-
}
|
|
20
|
-
else if (isURLSearchParams.isURLSearchParams(body)) {
|
|
21
|
-
let _body = body.toString();
|
|
22
|
-
this.promise = Promise.resolve(_body);
|
|
23
|
-
this.type = "application/x-www-form-urlencoded;charset=UTF-8";
|
|
24
|
-
this.calcLength = () => encode.encode(_body).length;
|
|
25
|
-
}
|
|
26
|
-
else if (isArrayBuffer.isArrayBuffer(body)) {
|
|
27
|
-
this.promise = Promise.resolve(body.slice(0));
|
|
28
|
-
this.length = body.byteLength;
|
|
29
|
-
}
|
|
30
|
-
else if (ArrayBuffer.isView(body)) {
|
|
31
|
-
let _body = body.buffer.slice(body.byteOffset, body.byteOffset + body.byteLength);
|
|
32
|
-
this.promise = Promise.resolve(_body);
|
|
33
|
-
this.length = _body.byteLength;
|
|
34
|
-
}
|
|
35
|
-
else if (isBlob.isBlob(body)) {
|
|
36
|
-
this.promise = body.arrayBuffer();
|
|
37
|
-
this.type = body.type;
|
|
38
|
-
this.length = body.size;
|
|
39
|
-
}
|
|
40
|
-
else if (isFormData(body)) {
|
|
41
|
-
let _body = FormData_toBlob(body);
|
|
42
|
-
this.promise = _body.arrayBuffer();
|
|
43
|
-
this.type = _body.type;
|
|
44
|
-
this.length = _body.size;
|
|
45
|
-
}
|
|
46
|
-
else if (body === null || body === undefined) {
|
|
47
|
-
this.promise = Promise.resolve("");
|
|
48
|
-
this.length = 0;
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
let _body = "" + body;
|
|
52
|
-
this.promise = Promise.resolve(_body);
|
|
53
|
-
this.type = "text/plain;charset=UTF-8";
|
|
54
|
-
this.calcLength = () => encode.encode(_body).length;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
get size() {
|
|
58
|
-
var _a;
|
|
59
|
-
if (typeof this.length !== "number" && this.calcLength)
|
|
60
|
-
this.length = this.calcLength();
|
|
61
|
-
return (_a = this.length) !== null && _a !== void 0 ? _a : 0;
|
|
62
|
-
}
|
|
63
|
-
text() { return this.promise.then(r => typeof r === "string" ? r : decode.decode(r)); }
|
|
64
|
-
arrayBuffer() { return this.promise.then(r => isArrayBuffer.isArrayBuffer(r) ? r : encode.encode(r).buffer); }
|
|
65
|
-
}
|
|
66
|
-
function isFormData(value) {
|
|
67
|
-
return utils.isPolyfillType("FormData", value) || isExternalFormData(value);
|
|
68
|
-
}
|
|
69
|
-
function isExternalFormData(value) {
|
|
70
|
-
let expect = "[object FormData]";
|
|
71
|
-
return (Object.prototype.toString.call(value) === expect || String(value) === expect)
|
|
72
|
-
&& "forEach" in value
|
|
73
|
-
&& typeof value.forEach === "function";
|
|
74
|
-
}
|
|
75
|
-
function FormData_toBlob(formData) {
|
|
76
|
-
const boundary = "----formdata-mphttpx-" + Math.random();
|
|
77
|
-
const p = `--${boundary}\r\nContent-Disposition: form-data; name="`;
|
|
78
|
-
let chunks = [];
|
|
79
|
-
formData.forEach((value, name) => {
|
|
80
|
-
typeof value === "string"
|
|
81
|
-
? chunks.push(p + escape(normalizeLinefeeds(name)) + `"\r\n\r\n${normalizeLinefeeds(value)}\r\n`)
|
|
82
|
-
: chunks.push(p + escape(normalizeLinefeeds(name)) + `"; filename="${escape(value.name)}"\r\nContent-Type: ${value.type || "application/octet-stream"}\r\n\r\n`, value, `\r\n`);
|
|
83
|
-
});
|
|
84
|
-
chunks.push(`--${boundary}--`);
|
|
85
|
-
return new BlobP.BlobP(chunks, { type: "multipart/form-data; boundary=" + boundary });
|
|
86
|
-
}
|
|
87
|
-
// normalize line feeds for textarea
|
|
88
|
-
// https://html.spec.whatwg.org/multipage/form-elements.html#textarea-line-break-normalisation-transformation
|
|
89
|
-
function normalizeLinefeeds(value) {
|
|
90
|
-
return value.replace(/\r?\n|\r/g, "\r\n");
|
|
91
|
-
}
|
|
92
|
-
function escape(str) {
|
|
93
|
-
return str.replace(/\n/g, '%0A').replace(/\r/g, '%0D').replace(/"/g, '%22');
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
exports.Payload = Payload;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var EventTargetP = require('../event-system/EventTargetP.js');
|
|
4
|
-
var EventP = require('../event-system/EventP.js');
|
|
5
|
-
|
|
6
|
-
/** @internal */
|
|
7
|
-
function emitEvent(target, type) {
|
|
8
|
-
let event = new EventP.EventP(type);
|
|
9
|
-
event.__Event__.target = target;
|
|
10
|
-
EventP.Event_setTrusted(event, true);
|
|
11
|
-
EventTargetP.EventTarget_fire(target, event);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
exports.emitEvent = emitEvent;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var EventP = require('../event-system/EventP.js');
|
|
4
|
-
var EventTargetP = require('../event-system/EventTargetP.js');
|
|
5
|
-
var ProgressEventP = require('../event-system/ProgressEventP.js');
|
|
6
|
-
|
|
7
|
-
/** @internal */
|
|
8
|
-
function emitProgressEvent(target, type, loaded = 0, total = 0) {
|
|
9
|
-
let event = new ProgressEventP.ProgressEventP(type, {
|
|
10
|
-
lengthComputable: total > 0,
|
|
11
|
-
loaded,
|
|
12
|
-
total,
|
|
13
|
-
});
|
|
14
|
-
event.__Event__.target = target;
|
|
15
|
-
EventP.Event_setTrusted(event, true);
|
|
16
|
-
EventTargetP.EventTarget_fire(target, event);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
exports.emitProgressEvent = emitProgressEvent;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var EventTargetP = require('../event-system/EventTargetP.js');
|
|
4
|
-
|
|
5
|
-
/** @internal */
|
|
6
|
-
function attachFn(target, handlers) {
|
|
7
|
-
return function attach(type) {
|
|
8
|
-
const fnName = ("on" + type);
|
|
9
|
-
const callback = target[fnName];
|
|
10
|
-
const listener = handlers[fnName];
|
|
11
|
-
typeof callback === "function"
|
|
12
|
-
? EventTargetP.EventTargetP.prototype.addEventListener.call(target, type, listener)
|
|
13
|
-
: EventTargetP.EventTargetP.prototype.removeEventListener.call(target, type, listener);
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
/** @internal */
|
|
17
|
-
function executeFn(target, cb, ev) {
|
|
18
|
-
if (typeof cb === "function")
|
|
19
|
-
cb.call(target, ev);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
exports.attachFn = attachFn;
|
|
23
|
-
exports.executeFn = executeFn;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
|
|
5
|
-
/** @internal */
|
|
6
|
-
function isArrayBuffer(value) {
|
|
7
|
-
// Mini Program
|
|
8
|
-
return utils.isObjectType("ArrayBuffer", value) || (!!value && typeof value === "object" && ArrayBuffer.prototype.isPrototypeOf(value));
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
exports.isArrayBuffer = isArrayBuffer;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
|
|
5
|
-
/** @internal */
|
|
6
|
-
function isBlob(value, strict = false) {
|
|
7
|
-
return utils.isPolyfillType("Blob", value, strict) || isExternalBlob(value, strict);
|
|
8
|
-
}
|
|
9
|
-
function isExternalBlob(value, strict = false) {
|
|
10
|
-
let expects = ["[object Blob]"];
|
|
11
|
-
if (!strict)
|
|
12
|
-
expects.push("[object File]");
|
|
13
|
-
return (expects.indexOf(Object.prototype.toString.call(value)) > -1 || expects.indexOf(String(value)) > -1)
|
|
14
|
-
&& "size" in value
|
|
15
|
-
&& typeof value.size === "number"
|
|
16
|
-
&& "arrayBuffer" in value
|
|
17
|
-
&& typeof value.arrayBuffer === "function";
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
exports.isBlob = isBlob;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
|
|
5
|
-
/** @internal */
|
|
6
|
-
function isEventTarget(value) {
|
|
7
|
-
return utils.isPolyfillType("EventTarget", value) || isExternalEventTarget(value);
|
|
8
|
-
}
|
|
9
|
-
function isExternalEventTarget(value) {
|
|
10
|
-
return !!value
|
|
11
|
-
&& typeof value === "object"
|
|
12
|
-
&& "addEventListener" in value
|
|
13
|
-
&& typeof value.addEventListener === "function"
|
|
14
|
-
&& "removeEventListener" in value
|
|
15
|
-
&& typeof value.removeEventListener === "function";
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
exports.isEventTarget = isEventTarget;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/** @internal */
|
|
4
|
-
function isSequence(value) {
|
|
5
|
-
return Array.isArray(value) || (!!value
|
|
6
|
-
&& typeof value === "object"
|
|
7
|
-
&& typeof Symbol === "function"
|
|
8
|
-
&& Symbol.iterator
|
|
9
|
-
&& Symbol.iterator in value
|
|
10
|
-
&& typeof value[Symbol.iterator] === "function");
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
exports.isSequence = isSequence;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
|
|
5
|
-
/** @internal */
|
|
6
|
-
function isURLSearchParams(value) {
|
|
7
|
-
return utils.isPolyfillType("URLSearchParams", value) || utils.isObjectType("URLSearchParams", value);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
exports.isURLSearchParams = isURLSearchParams;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
// HTTP methods whose capitalization should be normalized
|
|
4
|
-
const methods = ["CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"];
|
|
5
|
-
/** @internal */
|
|
6
|
-
function normalizeMethod(method) {
|
|
7
|
-
let upcased = method.toUpperCase();
|
|
8
|
-
return methods.indexOf(upcased) > -1 ? upcased : method;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
exports.normalizeMethod = normalizeMethod;
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/** @internal */
|
|
4
|
-
const statusTextMap = {
|
|
5
|
-
100: "Continue",
|
|
6
|
-
101: "Switching Protocols",
|
|
7
|
-
102: "Processing",
|
|
8
|
-
103: "Early Hints",
|
|
9
|
-
200: "OK",
|
|
10
|
-
201: "Created",
|
|
11
|
-
202: "Accepted",
|
|
12
|
-
203: "Non-Authoritative Information",
|
|
13
|
-
204: "No Content",
|
|
14
|
-
205: "Reset Content",
|
|
15
|
-
206: "Partial Content",
|
|
16
|
-
207: "Multi-Status",
|
|
17
|
-
208: "Already Reported",
|
|
18
|
-
226: "IM Used",
|
|
19
|
-
300: "Multiple Choices",
|
|
20
|
-
301: "Moved Permanently",
|
|
21
|
-
302: "Found",
|
|
22
|
-
303: "See Other",
|
|
23
|
-
304: "Not Modified",
|
|
24
|
-
307: "Temporary Redirect",
|
|
25
|
-
308: "Permanent Redirect",
|
|
26
|
-
400: "Bad Request",
|
|
27
|
-
401: "Unauthorized",
|
|
28
|
-
402: "Payment Required",
|
|
29
|
-
403: "Forbidden",
|
|
30
|
-
404: "Not Found",
|
|
31
|
-
405: "Method Not Allowed",
|
|
32
|
-
406: "Not Acceptable",
|
|
33
|
-
407: "Proxy Authentication Required",
|
|
34
|
-
408: "Request Timeout",
|
|
35
|
-
409: "Conflict",
|
|
36
|
-
410: "Gone",
|
|
37
|
-
411: "Length Required",
|
|
38
|
-
412: "Precondition Failed",
|
|
39
|
-
413: "Content Too Large",
|
|
40
|
-
414: "URI Too Long",
|
|
41
|
-
415: "Unsupported Media Type",
|
|
42
|
-
416: "Range Not Satisfiable",
|
|
43
|
-
417: "Expectation Failed",
|
|
44
|
-
418: "I'm a teapot",
|
|
45
|
-
421: "Misdirected Request",
|
|
46
|
-
422: "Unprocessable Entity",
|
|
47
|
-
423: "Locked",
|
|
48
|
-
424: "Failed Dependency",
|
|
49
|
-
425: "Too Early",
|
|
50
|
-
426: "Upgrade Required",
|
|
51
|
-
428: "Precondition Required",
|
|
52
|
-
429: "Too Many Requests",
|
|
53
|
-
431: "Request Header Fields Too Large",
|
|
54
|
-
451: "Unavailable For Legal Reasons",
|
|
55
|
-
500: "Internal Server Error",
|
|
56
|
-
501: "Not Implemented",
|
|
57
|
-
502: "Bad Gateway",
|
|
58
|
-
503: "Service Unavailable",
|
|
59
|
-
504: "Gateway Timeout",
|
|
60
|
-
505: "HTTP Version Not Supported",
|
|
61
|
-
506: "Variant Also Negotiates",
|
|
62
|
-
507: "Insufficient Storage",
|
|
63
|
-
508: "Loop Detected",
|
|
64
|
-
510: "Not Extended",
|
|
65
|
-
511: "Network Authentication Required"
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
exports.statusTextMap = statusTextMap;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/** @internal */
|
|
4
|
-
function Uint8Array_toBase64(input) {
|
|
5
|
-
let byteToCharMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
|
|
6
|
-
let output = [];
|
|
7
|
-
for (var i = 0; i < input.length; i += 3) {
|
|
8
|
-
let byte1 = input[i];
|
|
9
|
-
let haveByte2 = i + 1 < input.length;
|
|
10
|
-
let byte2 = haveByte2 ? input[i + 1] : 0;
|
|
11
|
-
let haveByte3 = i + 2 < input.length;
|
|
12
|
-
let byte3 = haveByte3 ? input[i + 2] : 0;
|
|
13
|
-
let outByte1 = byte1 >> 2;
|
|
14
|
-
let outByte2 = ((byte1 & 0x03) << 4) | (byte2 >> 4);
|
|
15
|
-
let outByte3 = ((byte2 & 0x0F) << 2) | (byte3 >> 6);
|
|
16
|
-
let outByte4 = byte3 & 0x3F;
|
|
17
|
-
if (!haveByte3) {
|
|
18
|
-
outByte4 = 64;
|
|
19
|
-
if (!haveByte2) {
|
|
20
|
-
outByte3 = 64;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
output.push(byteToCharMap[outByte1], byteToCharMap[outByte2], byteToCharMap[outByte3], byteToCharMap[outByte4]);
|
|
24
|
-
}
|
|
25
|
-
return output.join("");
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
exports.Uint8Array_toBase64 = Uint8Array_toBase64;
|