mphttpx 2.2.1 → 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 -0
- package/dist/mphttpx.esm.js +6595 -0
- package/dist/mphttpx.esm.min.js +1 -0
- package/package.json +28 -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 -118
- 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 -114
- 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,160 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var isBlob = require('../helpers/isBlob.js');
|
|
4
|
-
var FileP = require('../file-system/FileP.js');
|
|
5
|
-
var utils = require('../utils.js');
|
|
6
|
-
|
|
7
|
-
class FormDataP {
|
|
8
|
-
constructor(form, submitter) {
|
|
9
|
-
if (submitter === undefined) {
|
|
10
|
-
if (form !== undefined) {
|
|
11
|
-
throw new TypeError("Failed to construct 'FormData': parameter 1 not implemented.");
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
if (submitter !== null) {
|
|
16
|
-
throw new TypeError("Failed to construct 'FormData': parameter 1 and parameter 2 not implemented.");
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
utils.setState(this, "__FormData__", new FormDataState());
|
|
20
|
-
}
|
|
21
|
-
append(name, blobValue, filename) {
|
|
22
|
-
checkArgsFn(arguments.length, 2, "append");
|
|
23
|
-
state(this).array.push(normalizeArgs(name, blobValue, filename));
|
|
24
|
-
}
|
|
25
|
-
delete(name) {
|
|
26
|
-
checkArgsFn(arguments.length, 1, "delete");
|
|
27
|
-
let _name = "" + name;
|
|
28
|
-
let index = -1;
|
|
29
|
-
let array = state(this).array;
|
|
30
|
-
let result = [];
|
|
31
|
-
for (let i = 0; i < array.length; ++i) {
|
|
32
|
-
let item = array[i];
|
|
33
|
-
if (item[0] === _name) {
|
|
34
|
-
index = i;
|
|
35
|
-
continue;
|
|
36
|
-
}
|
|
37
|
-
result.push(item);
|
|
38
|
-
}
|
|
39
|
-
if (index > -1) {
|
|
40
|
-
state(this).array = result;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
get(name) {
|
|
44
|
-
checkArgsFn(arguments.length, 1, "get");
|
|
45
|
-
let _name = "" + name;
|
|
46
|
-
let array = state(this).array;
|
|
47
|
-
for (let i = 0; i < array.length; ++i) {
|
|
48
|
-
let item = array[i];
|
|
49
|
-
if (item[0] === _name) {
|
|
50
|
-
return item[1];
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return null;
|
|
54
|
-
}
|
|
55
|
-
getAll(name) {
|
|
56
|
-
checkArgsFn(arguments.length, 1, "getAll");
|
|
57
|
-
let _name = "" + name;
|
|
58
|
-
let array = state(this).array;
|
|
59
|
-
let result = [];
|
|
60
|
-
for (let i = 0; i < array.length; ++i) {
|
|
61
|
-
let item = array[i];
|
|
62
|
-
if (item[0] === _name) {
|
|
63
|
-
result.push(item[1]);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return result;
|
|
67
|
-
}
|
|
68
|
-
has(name) {
|
|
69
|
-
checkArgsFn(arguments.length, 1, "has");
|
|
70
|
-
let _name = "" + name;
|
|
71
|
-
let array = state(this).array;
|
|
72
|
-
for (let i = 0; i < array.length; ++i) {
|
|
73
|
-
let item = array[i];
|
|
74
|
-
if (item[0] === _name) {
|
|
75
|
-
return true;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
set(name, blobValue, filename) {
|
|
81
|
-
checkArgsFn(arguments.length, 2, "set");
|
|
82
|
-
let _name = "" + name;
|
|
83
|
-
let _args = normalizeArgs(name, blobValue, filename);
|
|
84
|
-
let index = -1;
|
|
85
|
-
let array = state(this).array;
|
|
86
|
-
let result = [];
|
|
87
|
-
for (let i = 0; i < array.length; ++i) {
|
|
88
|
-
let item = array[i];
|
|
89
|
-
if (item[0] === _name) {
|
|
90
|
-
if (index === -1) {
|
|
91
|
-
index = i;
|
|
92
|
-
result.push(_args);
|
|
93
|
-
}
|
|
94
|
-
continue;
|
|
95
|
-
}
|
|
96
|
-
result.push(item);
|
|
97
|
-
}
|
|
98
|
-
if (index === -1) {
|
|
99
|
-
result.push(_args);
|
|
100
|
-
}
|
|
101
|
-
state(this).array = result;
|
|
102
|
-
}
|
|
103
|
-
forEach(callbackfn, thisArg) {
|
|
104
|
-
checkArgsFn(arguments.length, 1, "forEach");
|
|
105
|
-
if (typeof callbackfn !== "function") {
|
|
106
|
-
throw new TypeError("Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'.");
|
|
107
|
-
}
|
|
108
|
-
let array = state(this).array;
|
|
109
|
-
for (let i = 0; i < array.length; ++i) {
|
|
110
|
-
let item = array[i];
|
|
111
|
-
callbackfn.call(thisArg, item[1], item[0], thisArg);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
entries() {
|
|
115
|
-
return state(this).array.map(x => [x[0], x[1]]).values();
|
|
116
|
-
}
|
|
117
|
-
keys() {
|
|
118
|
-
return state(this).array.map(x => x[0]).values();
|
|
119
|
-
}
|
|
120
|
-
values() {
|
|
121
|
-
return state(this).array.map(x => x[1]).values();
|
|
122
|
-
}
|
|
123
|
-
// @ts-ignore
|
|
124
|
-
/** @internal */ [utils.SymbolP.iterator]() {
|
|
125
|
-
return this.entries();
|
|
126
|
-
}
|
|
127
|
-
/** @internal */ toString() { return "[object FormData]"; }
|
|
128
|
-
/** @internal */ get [utils.SymbolP.toStringTag]() { return "FormData"; }
|
|
129
|
-
/** @internal */ get __MPHTTPX__() { return { chain: ["FormData"] }; }
|
|
130
|
-
}
|
|
131
|
-
/** @internal */
|
|
132
|
-
class FormDataState {
|
|
133
|
-
constructor() {
|
|
134
|
-
this.array = [];
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
function state(target) {
|
|
138
|
-
return target.__FormData__;
|
|
139
|
-
}
|
|
140
|
-
function checkArgsFn(actual, expect, funcName) {
|
|
141
|
-
return utils.checkArgsLength(actual, expect, "FormData", funcName);
|
|
142
|
-
}
|
|
143
|
-
function normalizeArgs(name, value, filename) {
|
|
144
|
-
if (isBlob.isBlob(value)) {
|
|
145
|
-
filename = filename !== undefined
|
|
146
|
-
? ("" + filename)
|
|
147
|
-
: typeof value.name === "string"
|
|
148
|
-
? value.name
|
|
149
|
-
: "blob";
|
|
150
|
-
if (value.name !== filename || isBlob.isBlob(value, true)) {
|
|
151
|
-
value = new FileP.FileP([value], filename);
|
|
152
|
-
}
|
|
153
|
-
return ["" + name, value];
|
|
154
|
-
}
|
|
155
|
-
return ["" + name, "" + value];
|
|
156
|
-
}
|
|
157
|
-
const FormDataE = (typeof FormData !== "undefined" && FormData) || FormDataP;
|
|
158
|
-
|
|
159
|
-
exports.FormData = FormDataE;
|
|
160
|
-
exports.FormDataP = FormDataP;
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
var isSequence = require('../helpers/isSequence.js');
|
|
5
|
-
var isURLSearchParams = require('../helpers/isURLSearchParams.js');
|
|
6
|
-
|
|
7
|
-
class URLSearchParamsP {
|
|
8
|
-
constructor(init) {
|
|
9
|
-
utils.setState(this, "__URLSearchParams__", new URLSearchParamsState());
|
|
10
|
-
if (init !== undefined) {
|
|
11
|
-
if (isURLSearchParams.isURLSearchParams(init)) {
|
|
12
|
-
init.forEach((value, name) => { this.append(name, value); }, this);
|
|
13
|
-
}
|
|
14
|
-
else if (init && typeof init === "object") {
|
|
15
|
-
if (isSequence.isSequence(init)) {
|
|
16
|
-
let _init = Array.isArray(init) ? init : Array.from(init);
|
|
17
|
-
for (let i = 0; i < _init.length; ++i) {
|
|
18
|
-
let item = _init[i];
|
|
19
|
-
if (isSequence.isSequence(item)) {
|
|
20
|
-
let pair = Array.isArray(item) ? item : Array.from(item);
|
|
21
|
-
if (pair.length === 2) {
|
|
22
|
-
this.append(pair[0], pair[1]);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
throw new TypeError("Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements");
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
throw new TypeError("Failed to construct 'URLSearchParams': The provided value cannot be converted to a sequence.");
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
Object.getOwnPropertyNames(init).forEach(name => { this.append(name, init[name]); }, this);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
let _init = "" + init;
|
|
39
|
-
if (_init.indexOf("?") === 0) {
|
|
40
|
-
_init = _init.slice(1);
|
|
41
|
-
}
|
|
42
|
-
let pairs = _init.split("&");
|
|
43
|
-
for (let i = 0; i < pairs.length; ++i) {
|
|
44
|
-
let pair = pairs[i], separatorIndex = pair.indexOf("=");
|
|
45
|
-
if (separatorIndex > -1) {
|
|
46
|
-
this.append(decode(pair.slice(0, separatorIndex)), decode(pair.slice(separatorIndex + 1)));
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
if (pair) {
|
|
50
|
-
this.append(decode(pair), "");
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
get size() { return state(this).array.length; }
|
|
58
|
-
append(name, value) {
|
|
59
|
-
checkArgsFn(arguments.length, 2, "append");
|
|
60
|
-
state(this).array.push(["" + name, normalizeValue(value)]);
|
|
61
|
-
}
|
|
62
|
-
delete(name, value) {
|
|
63
|
-
checkArgsFn(arguments.length, 1, "delete");
|
|
64
|
-
let _name = "" + name;
|
|
65
|
-
let index = -1;
|
|
66
|
-
let array = state(this).array;
|
|
67
|
-
let result = [];
|
|
68
|
-
for (let i = 0; i < array.length; ++i) {
|
|
69
|
-
let item = array[i];
|
|
70
|
-
if (item[0] === _name) {
|
|
71
|
-
if (arguments.length !== 1 && item[1] !== normalizeValue(value)) {
|
|
72
|
-
result.push(item);
|
|
73
|
-
}
|
|
74
|
-
index = i;
|
|
75
|
-
continue;
|
|
76
|
-
}
|
|
77
|
-
result.push(item);
|
|
78
|
-
}
|
|
79
|
-
if (index > -1) {
|
|
80
|
-
state(this).array = result;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
get(name) {
|
|
84
|
-
checkArgsFn(arguments.length, 1, "get");
|
|
85
|
-
let _name = "" + name;
|
|
86
|
-
let array = state(this).array;
|
|
87
|
-
for (let i = 0; i < array.length; ++i) {
|
|
88
|
-
let item = array[i];
|
|
89
|
-
if (item[0] === _name) {
|
|
90
|
-
return item[1];
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return null;
|
|
94
|
-
}
|
|
95
|
-
getAll(name) {
|
|
96
|
-
checkArgsFn(arguments.length, 1, "getAll");
|
|
97
|
-
let _name = "" + name;
|
|
98
|
-
let array = state(this).array;
|
|
99
|
-
let result = [];
|
|
100
|
-
for (let i = 0; i < array.length; ++i) {
|
|
101
|
-
let item = array[i];
|
|
102
|
-
if (item[0] === _name) {
|
|
103
|
-
result.push(item[1]);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
return result;
|
|
107
|
-
}
|
|
108
|
-
has(name, value) {
|
|
109
|
-
checkArgsFn(arguments.length, 1, "has");
|
|
110
|
-
let _name = "" + name;
|
|
111
|
-
let array = state(this).array;
|
|
112
|
-
for (let i = 0; i < array.length; ++i) {
|
|
113
|
-
let item = array[i];
|
|
114
|
-
if (item[0] === _name) {
|
|
115
|
-
if (arguments.length === 1) {
|
|
116
|
-
return true;
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
if (item[1] === normalizeValue(value)) {
|
|
120
|
-
return true;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
return false;
|
|
126
|
-
}
|
|
127
|
-
set(name, value) {
|
|
128
|
-
checkArgsFn(arguments.length, 2, "set");
|
|
129
|
-
let _name = "" + name;
|
|
130
|
-
let _value = normalizeValue(value);
|
|
131
|
-
let index = -1;
|
|
132
|
-
let array = state(this).array;
|
|
133
|
-
let result = [];
|
|
134
|
-
for (let i = 0; i < array.length; ++i) {
|
|
135
|
-
let item = array[i];
|
|
136
|
-
if (item[0] === _name) {
|
|
137
|
-
if (index === -1) {
|
|
138
|
-
index = i;
|
|
139
|
-
result.push([_name, _value]);
|
|
140
|
-
}
|
|
141
|
-
continue;
|
|
142
|
-
}
|
|
143
|
-
result.push(item);
|
|
144
|
-
}
|
|
145
|
-
if (index === -1) {
|
|
146
|
-
result.push([_name, _value]);
|
|
147
|
-
}
|
|
148
|
-
state(this).array = result;
|
|
149
|
-
}
|
|
150
|
-
sort() {
|
|
151
|
-
state(this).array.sort((a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0);
|
|
152
|
-
}
|
|
153
|
-
forEach(callbackfn, thisArg) {
|
|
154
|
-
checkArgsFn(arguments.length, 1, "forEach");
|
|
155
|
-
if (typeof callbackfn !== "function") {
|
|
156
|
-
throw new TypeError("Failed to execute 'forEach' on 'URLSearchParams': parameter 1 is not of type 'Function'.");
|
|
157
|
-
}
|
|
158
|
-
let array = state(this).array;
|
|
159
|
-
for (let i = 0; i < array.length; ++i) {
|
|
160
|
-
let item = array[i];
|
|
161
|
-
callbackfn.call(thisArg, item[1], item[0], this);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
entries() {
|
|
165
|
-
return state(this).array.map(x => [x[0], x[1]]).values();
|
|
166
|
-
}
|
|
167
|
-
keys() {
|
|
168
|
-
return state(this).array.map(x => x[0]).values();
|
|
169
|
-
}
|
|
170
|
-
values() {
|
|
171
|
-
return state(this).array.map(x => x[1]).values();
|
|
172
|
-
}
|
|
173
|
-
// @ts-ignore
|
|
174
|
-
/** @internal */ [utils.SymbolP.iterator]() {
|
|
175
|
-
return this.entries();
|
|
176
|
-
}
|
|
177
|
-
toString() {
|
|
178
|
-
let array = state(this).array;
|
|
179
|
-
let result = [];
|
|
180
|
-
for (let i = 0; i < array.length; ++i) {
|
|
181
|
-
let item = array[i];
|
|
182
|
-
result.push(encode(item[0]) + "=" + encode(item[1]));
|
|
183
|
-
}
|
|
184
|
-
return result.join("&");
|
|
185
|
-
}
|
|
186
|
-
/** @internal */ get [utils.SymbolP.toStringTag]() { return "URLSearchParams"; }
|
|
187
|
-
/** @internal */ get __MPHTTPX__() { return { chain: ["URLSearchParams"] }; }
|
|
188
|
-
}
|
|
189
|
-
/** @internal */
|
|
190
|
-
class URLSearchParamsState {
|
|
191
|
-
constructor() {
|
|
192
|
-
this.array = [];
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
function state(target) {
|
|
196
|
-
return target.__URLSearchParams__;
|
|
197
|
-
}
|
|
198
|
-
function checkArgsFn(actual, expect, funcName) {
|
|
199
|
-
utils.checkArgsLength(actual, expect, "URLSearchParams", funcName);
|
|
200
|
-
}
|
|
201
|
-
function normalizeValue(value) {
|
|
202
|
-
return typeof value === "string" ? value : (value !== null && value !== undefined && typeof value.toString === "function"
|
|
203
|
-
? value.toString()
|
|
204
|
-
: JSON.stringify(value));
|
|
205
|
-
}
|
|
206
|
-
function encode(str) {
|
|
207
|
-
const replace = {
|
|
208
|
-
"!": "%21",
|
|
209
|
-
"'": "%27",
|
|
210
|
-
"(": "%28",
|
|
211
|
-
")": "%29",
|
|
212
|
-
"~": "%7E",
|
|
213
|
-
"%20": "+",
|
|
214
|
-
"%00": "\x00",
|
|
215
|
-
};
|
|
216
|
-
return encodeURIComponent(str).replace(/[!'\(\)~]|%20|%00/g, match => replace[match]);
|
|
217
|
-
}
|
|
218
|
-
function decode(str) {
|
|
219
|
-
return str
|
|
220
|
-
.replace(/[ +]/g, "%20")
|
|
221
|
-
.replace(/(%[a-f0-9]{2})+/ig, match => decodeURIComponent(match));
|
|
222
|
-
}
|
|
223
|
-
const URLSearchParamsE = (typeof URLSearchParams !== "undefined" && URLSearchParams) || URLSearchParamsP;
|
|
224
|
-
|
|
225
|
-
exports.URLSearchParams = URLSearchParamsE;
|
|
226
|
-
exports.URLSearchParamsP = URLSearchParamsP;
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
var handlers = require('../helpers/handlers.js');
|
|
5
|
-
var EventTargetP = require('../event-system/EventTargetP.js');
|
|
6
|
-
|
|
7
|
-
class XMLHttpRequestEventTargetP extends EventTargetP.EventTargetP {
|
|
8
|
-
/** @internal */
|
|
9
|
-
constructor() {
|
|
10
|
-
if (new.target === XMLHttpRequestEventTargetP) {
|
|
11
|
-
throw new TypeError("Failed to construct 'XMLHttpRequestEventTarget': Illegal constructor");
|
|
12
|
-
}
|
|
13
|
-
super();
|
|
14
|
-
utils.setState(this, "__XMLHttpRequestEventTarget__", new XMLHttpRequestEventTargetState(this));
|
|
15
|
-
}
|
|
16
|
-
get onabort() { return state(this).onabort; }
|
|
17
|
-
set onabort(value) { state(this).onabort = value; state(this).attach("abort"); }
|
|
18
|
-
get onerror() { return state(this).onerror; }
|
|
19
|
-
set onerror(value) { state(this).onerror = value; state(this).attach("error"); }
|
|
20
|
-
get onload() { return state(this).onload; }
|
|
21
|
-
set onload(value) { state(this).onload = value; state(this).attach("load"); }
|
|
22
|
-
get onloadend() { return state(this).onloadend; }
|
|
23
|
-
set onloadend(value) { state(this).onloadend = value; state(this).attach("loadend"); }
|
|
24
|
-
get onloadstart() { return state(this).onloadstart; }
|
|
25
|
-
set onloadstart(value) { state(this).onloadstart = value; state(this).attach("loadstart"); }
|
|
26
|
-
get onprogress() { return state(this).onprogress; }
|
|
27
|
-
set onprogress(value) { state(this).onprogress = value; state(this).attach("progress"); }
|
|
28
|
-
get ontimeout() { return state(this).ontimeout; }
|
|
29
|
-
set ontimeout(value) { state(this).ontimeout = value; state(this).attach("timeout"); }
|
|
30
|
-
/** @internal */ toString() { return "[object XMLHttpRequestEventTarget]"; }
|
|
31
|
-
/** @internal */ get [utils.SymbolP.toStringTag]() { return "XMLHttpRequestEventTarget"; }
|
|
32
|
-
/** @internal */ get __MPHTTPX__() { return { chain: ["XMLHttpRequestEventTarget", "EventTarget"] }; }
|
|
33
|
-
}
|
|
34
|
-
/** @internal */
|
|
35
|
-
class XMLHttpRequestEventTargetState {
|
|
36
|
-
/** @param target XMLHttpRequestEventTarget */
|
|
37
|
-
constructor(target) {
|
|
38
|
-
this.onabort = null;
|
|
39
|
-
this.onerror = null;
|
|
40
|
-
this.onload = null;
|
|
41
|
-
this.onloadend = null;
|
|
42
|
-
this.onloadstart = null;
|
|
43
|
-
this.onprogress = null;
|
|
44
|
-
this.ontimeout = null;
|
|
45
|
-
this.attach = handlers.attachFn(target, getHandlers(target));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
function getHandlers(t) {
|
|
49
|
-
return {
|
|
50
|
-
onabort: (ev) => { handlers.executeFn(t, t.onabort, ev); },
|
|
51
|
-
onerror: (ev) => { handlers.executeFn(t, t.onerror, ev); },
|
|
52
|
-
onload: (ev) => { handlers.executeFn(t, t.onload, ev); },
|
|
53
|
-
onloadend: (ev) => { handlers.executeFn(t, t.onloadend, ev); },
|
|
54
|
-
onloadstart: (ev) => { handlers.executeFn(t, t.onloadstart, ev); },
|
|
55
|
-
onprogress: (ev) => { handlers.executeFn(t, t.onprogress, ev); },
|
|
56
|
-
ontimeout: (ev) => { handlers.executeFn(t, t.ontimeout, ev); },
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
function state(target) {
|
|
60
|
-
return target.__XMLHttpRequestEventTarget__;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
exports.XMLHttpRequestEventTargetP = XMLHttpRequestEventTargetP;
|
|
64
|
-
exports.XMLHttpRequestEventTargetState = XMLHttpRequestEventTargetState;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var utils = require('../utils.js');
|
|
4
|
-
var EventTargetP = require('../event-system/EventTargetP.js');
|
|
5
|
-
var XMLHttpRequestEventTargetP = require('./XMLHttpRequestEventTargetP.js');
|
|
6
|
-
|
|
7
|
-
class XMLHttpRequestUploadP extends XMLHttpRequestEventTargetP.XMLHttpRequestEventTargetP {
|
|
8
|
-
/** @internal */
|
|
9
|
-
constructor() {
|
|
10
|
-
if (new.target === XMLHttpRequestUploadP) {
|
|
11
|
-
throw new TypeError("Failed to construct 'XMLHttpRequestUpload': Illegal constructor");
|
|
12
|
-
}
|
|
13
|
-
super();
|
|
14
|
-
}
|
|
15
|
-
/** @internal */ toString() { return "[object XMLHttpRequestUpload]"; }
|
|
16
|
-
/** @internal */ get [utils.SymbolP.toStringTag]() { return "XMLHttpRequestUpload"; }
|
|
17
|
-
/** @internal */ get __MPHTTPX__() { return { chain: ["XMLHttpRequestUpload", "XMLHttpRequestEventTarget", "EventTarget"] }; }
|
|
18
|
-
}
|
|
19
|
-
/** @internal */
|
|
20
|
-
function createXMLHttpRequestUpload() {
|
|
21
|
-
let upload = Object.create(XMLHttpRequestUploadP.prototype);
|
|
22
|
-
utils.setState(upload, "__EventTarget__", new EventTargetP.EventTargetState());
|
|
23
|
-
utils.setState(upload, "__XMLHttpRequestEventTarget__", new XMLHttpRequestEventTargetP.XMLHttpRequestEventTargetState(upload));
|
|
24
|
-
return upload;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
exports.XMLHttpRequestUploadP = XMLHttpRequestUploadP;
|
|
28
|
-
exports.createXMLHttpRequestUpload = createXMLHttpRequestUpload;
|
package/dist/cjs/utils.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/* eslint-disable no-prototype-builtins */
|
|
4
|
-
/** @internal */
|
|
5
|
-
const SymbolP = {
|
|
6
|
-
iterator: ((typeof Symbol === "function") && (Symbol.iterator || "Symbol(Symbol.iterator)")),
|
|
7
|
-
toStringTag: ((typeof Symbol === "function") && (Symbol.toStringTag || "Symbol(Symbol.toStringTag)")),
|
|
8
|
-
};
|
|
9
|
-
/** @internal */
|
|
10
|
-
class DOMExceptionP extends Error {
|
|
11
|
-
constructor(message, name) {
|
|
12
|
-
super(message);
|
|
13
|
-
if (name !== undefined)
|
|
14
|
-
this.name = "" + name;
|
|
15
|
-
}
|
|
16
|
-
/** @internal */ get [SymbolP.toStringTag]() { return "DOMException"; }
|
|
17
|
-
/** @internal */ get __MPHTTPX__() { return { chain: ["DOMException"] }; }
|
|
18
|
-
}
|
|
19
|
-
/** @internal */
|
|
20
|
-
function className(object) {
|
|
21
|
-
return object.__MPHTTPX__.chain[0];
|
|
22
|
-
}
|
|
23
|
-
/** @internal */
|
|
24
|
-
function setState(target, name, value) {
|
|
25
|
-
Object.defineProperty(target, name, { value });
|
|
26
|
-
}
|
|
27
|
-
/** @internal */
|
|
28
|
-
function isObjectType(name, value) {
|
|
29
|
-
return Object.prototype.toString.call(value) === `[object ${name}]`;
|
|
30
|
-
}
|
|
31
|
-
/** @internal */
|
|
32
|
-
function isPolyfillType(name, value, strict = false) {
|
|
33
|
-
const field = "__MPHTTPX__";
|
|
34
|
-
return !!value
|
|
35
|
-
&& typeof value === "object"
|
|
36
|
-
&& field in value
|
|
37
|
-
&& !!value[field]
|
|
38
|
-
&& typeof value[field] === "object"
|
|
39
|
-
&& "chain" in value[field]
|
|
40
|
-
&& Array.isArray(value[field].chain)
|
|
41
|
-
&& ((index) => strict ? index === 0 : index > -1)(value[field].chain.indexOf(name));
|
|
42
|
-
}
|
|
43
|
-
/** @internal */
|
|
44
|
-
function checkArgsLength(actual, expect, className, funcName) {
|
|
45
|
-
if (actual < expect) {
|
|
46
|
-
throw new TypeError(`Failed to ${funcName ? ("execute '" + funcName + "' on") : "construct"} '${className}': ${expect} argument${expect > 1 ? "s" : ""} required, but only ${actual} present.`);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
exports.DOMExceptionP = DOMExceptionP;
|
|
51
|
-
exports.SymbolP = SymbolP;
|
|
52
|
-
exports.checkArgsLength = checkArgsLength;
|
|
53
|
-
exports.className = className;
|
|
54
|
-
exports.isObjectType = isObjectType;
|
|
55
|
-
exports.isPolyfillType = isPolyfillType;
|
|
56
|
-
exports.setState = setState;
|