larapi 0.2.39 → 0.2.41
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 +114 -114
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/lib/Core.d.ts +2 -0
- package/package.json +54 -54
package/README.md
CHANGED
|
@@ -1,114 +1,114 @@
|
|
|
1
|
-
# Laravel API Client
|
|
2
|
-
## The simple package for authorization with token and data cache
|
|
3
|
-
## Install
|
|
4
|
-
```
|
|
5
|
-
npm i larapi
|
|
6
|
-
```
|
|
7
|
-
|
|
8
|
-
### First step
|
|
9
|
-
#### you can create instance or use static methods for first configuration and for further use
|
|
10
|
-
```js
|
|
11
|
-
const api = new API({
|
|
12
|
-
host: 'https://my-host'
|
|
13
|
-
});
|
|
14
|
-
...
|
|
15
|
-
API.setHost('https://my-host');
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
#### To use typing - use new instanse
|
|
19
|
-
#### The first argument of the class takes the type of requests, and the second the type of the user
|
|
20
|
-
|
|
21
|
-
```js
|
|
22
|
-
type TTodo = {
|
|
23
|
-
id: number;
|
|
24
|
-
userId: number;
|
|
25
|
-
title: string;
|
|
26
|
-
completed: boolean;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
type TApiTodos = {
|
|
30
|
-
success: {
|
|
31
|
-
'todos': () => TTodo[],
|
|
32
|
-
[path: `todos/${number}`]: (request: Omit<TTodo, 'id'>) => TTodo;
|
|
33
|
-
},
|
|
34
|
-
error: {
|
|
35
|
-
message: string;
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
const api = new API<TApiTodos>({
|
|
40
|
-
host: 'https://jsonplaceholder.typicode.com/',
|
|
41
|
-
});
|
|
42
|
-
...
|
|
43
|
-
|
|
44
|
-
api.get({
|
|
45
|
-
path: 'todos/1',
|
|
46
|
-
success: (e) => {
|
|
47
|
-
console.log(e.id);
|
|
48
|
-
},
|
|
49
|
-
error: (e) => {
|
|
50
|
-
console.log(e);
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
### Authorization
|
|
56
|
-
#### token useds in the header Authorization: Bearer
|
|
57
|
-
```js
|
|
58
|
-
api.setToken('token');
|
|
59
|
-
api.setUser({...object-user});
|
|
60
|
-
```
|
|
61
|
-
#### you can use method getUser or property user for get user object
|
|
62
|
-
```js
|
|
63
|
-
api.getUser();
|
|
64
|
-
...
|
|
65
|
-
api.user;
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
### Requests
|
|
69
|
-
|
|
70
|
-
#### Get
|
|
71
|
-
```js
|
|
72
|
-
api.get({
|
|
73
|
-
path: '/test',
|
|
74
|
-
success: (e) => {
|
|
75
|
-
console.log(e)
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
#### Post
|
|
81
|
-
```js
|
|
82
|
-
api.post({
|
|
83
|
-
path: '/test',
|
|
84
|
-
data: {
|
|
85
|
-
message: 'hello world'
|
|
86
|
-
}
|
|
87
|
-
success: (e) => {
|
|
88
|
-
console.log(e)
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Cache
|
|
94
|
-
|
|
95
|
-
#### for create simple cache use boolean true in the "cache" property
|
|
96
|
-
```js
|
|
97
|
-
const request = api.get({
|
|
98
|
-
path: '/test',
|
|
99
|
-
cache: true,
|
|
100
|
-
...
|
|
101
|
-
});
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
#### if you need clear current cache - use method "clearCache"
|
|
105
|
-
```js
|
|
106
|
-
request.clearCache();
|
|
107
|
-
```
|
|
108
|
-
#### or you can use method "updateCache" for update current cache data in the current request
|
|
109
|
-
#### first argument in the method is object updated data, and last argument is key field for search in the current cache, if you need update all data use null
|
|
110
|
-
```js
|
|
111
|
-
request.updateCache({
|
|
112
|
-
message: 'update this string'
|
|
113
|
-
}, null);
|
|
114
|
-
```
|
|
1
|
+
# Laravel API Client
|
|
2
|
+
## The simple package for authorization with token and data cache
|
|
3
|
+
## Install
|
|
4
|
+
```
|
|
5
|
+
npm i larapi
|
|
6
|
+
```
|
|
7
|
+
|
|
8
|
+
### First step
|
|
9
|
+
#### you can create instance or use static methods for first configuration and for further use
|
|
10
|
+
```js
|
|
11
|
+
const api = new API({
|
|
12
|
+
host: 'https://my-host'
|
|
13
|
+
});
|
|
14
|
+
...
|
|
15
|
+
API.setHost('https://my-host');
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
#### To use typing - use new instanse
|
|
19
|
+
#### The first argument of the class takes the type of requests, and the second the type of the user
|
|
20
|
+
|
|
21
|
+
```js
|
|
22
|
+
type TTodo = {
|
|
23
|
+
id: number;
|
|
24
|
+
userId: number;
|
|
25
|
+
title: string;
|
|
26
|
+
completed: boolean;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
type TApiTodos = {
|
|
30
|
+
success: {
|
|
31
|
+
'todos': () => TTodo[],
|
|
32
|
+
[path: `todos/${number}`]: (request: Omit<TTodo, 'id'>) => TTodo;
|
|
33
|
+
},
|
|
34
|
+
error: {
|
|
35
|
+
message: string;
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const api = new API<TApiTodos>({
|
|
40
|
+
host: 'https://jsonplaceholder.typicode.com/',
|
|
41
|
+
});
|
|
42
|
+
...
|
|
43
|
+
|
|
44
|
+
api.get({
|
|
45
|
+
path: 'todos/1',
|
|
46
|
+
success: (e) => {
|
|
47
|
+
console.log(e.id);
|
|
48
|
+
},
|
|
49
|
+
error: (e) => {
|
|
50
|
+
console.log(e);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Authorization
|
|
56
|
+
#### token useds in the header Authorization: Bearer
|
|
57
|
+
```js
|
|
58
|
+
api.setToken('token');
|
|
59
|
+
api.setUser({...object-user});
|
|
60
|
+
```
|
|
61
|
+
#### you can use method getUser or property user for get user object
|
|
62
|
+
```js
|
|
63
|
+
api.getUser();
|
|
64
|
+
...
|
|
65
|
+
api.user;
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Requests
|
|
69
|
+
|
|
70
|
+
#### Get
|
|
71
|
+
```js
|
|
72
|
+
api.get({
|
|
73
|
+
path: '/test',
|
|
74
|
+
success: (e) => {
|
|
75
|
+
console.log(e)
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
#### Post
|
|
81
|
+
```js
|
|
82
|
+
api.post({
|
|
83
|
+
path: '/test',
|
|
84
|
+
data: {
|
|
85
|
+
message: 'hello world'
|
|
86
|
+
}
|
|
87
|
+
success: (e) => {
|
|
88
|
+
console.log(e)
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Cache
|
|
94
|
+
|
|
95
|
+
#### for create simple cache use boolean true in the "cache" property
|
|
96
|
+
```js
|
|
97
|
+
const request = api.get({
|
|
98
|
+
path: '/test',
|
|
99
|
+
cache: true,
|
|
100
|
+
...
|
|
101
|
+
});
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
#### if you need clear current cache - use method "clearCache"
|
|
105
|
+
```js
|
|
106
|
+
request.clearCache();
|
|
107
|
+
```
|
|
108
|
+
#### or you can use method "updateCache" for update current cache data in the current request
|
|
109
|
+
#### first argument in the method is object updated data, and last argument is key field for search in the current cache, if you need update all data use null
|
|
110
|
+
```js
|
|
111
|
+
request.updateCache({
|
|
112
|
+
message: 'update this string'
|
|
113
|
+
}, null);
|
|
114
|
+
```
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.API=t():e.API=t()}(self,(()=>{return e={487:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],i=0;i<e.length;i++)t.push(255&e.charCodeAt(i));return t},bytesToString:function(e){for(var t=[],i=0;i<e.length;i++)t.push(String.fromCharCode(e[i]));return t.join("")}}};e.exports=t},12:e=>{var t,i;t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i={rotl:function(e,t){return e<<t|e>>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&i.rotl(e,8)|4278255360&i.rotl(e,24);for(var t=0;t<e.length;t++)e[t]=i.endian(e[t]);return e},randomBytes:function(e){for(var t=[];e>0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],i=0,s=0;i<e.length;i++,s+=8)t[s>>>5]|=e[i]<<24-s%32;return t},wordsToBytes:function(e){for(var t=[],i=0;i<32*e.length;i+=8)t.push(e[i>>>5]>>>24-i%32&255);return t},bytesToHex:function(e){for(var t=[],i=0;i<e.length;i++)t.push((e[i]>>>4).toString(16)),t.push((15&e[i]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],i=0;i<e.length;i+=2)t.push(parseInt(e.substr(i,2),16));return t},bytesToBase64:function(e){for(var i=[],s=0;s<e.length;s+=3)for(var r=e[s]<<16|e[s+1]<<8|e[s+2],a=0;a<4;a++)8*s+6*a<=8*e.length?i.push(t.charAt(r>>>6*(3-a)&63)):i.push("=");return i.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var i=[],s=0,r=0;s<e.length;r=++s%4)0!=r&&i.push((t.indexOf(e.charAt(s-1))&Math.pow(2,-2*r+8)-1)<<2*r|t.indexOf(e.charAt(s))>>>6-2*r);return i}},e.exports=i},2:function(e){var t;t=()=>(()=>{"use strict";var e={828:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e){Object.defineProperty(this,"listeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),e?(this.listeners=e.listeners,this.events=e.events):(this.listeners=new Map,this.events={})}}},987:function(e,t,i){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(828));class a extends r.default{constructor(e,t,i,s=!1){super(i),Object.defineProperty(this,"isStack",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_name",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"handlers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.isStack=s,this._name=e,this.handlers={callback:t,emit:[],remove:[]},this.push(this)}push(e){var t;this._name&&!this.events[this._name]&&(this.events[this._name]=new Map),this.events[this._name].set(e,e),this.listeners.has(e.handlers.callback)?null===(t=this.listeners.get(e.handlers.callback))||void 0===t||t.pushFork(e):this.listeners.set(e.handlers.callback,e)}pushFork(e){this.handlers.forks||(this.handlers.forks=[]),this.handlers.forks.push(e)}get name(){return"string"==typeof this._name?this._name:void 0}emit(e){if("function"==typeof this.handlers.callback){this.handlers.callback(e);for(let e=0;e<this.handlers.emit.length;e++)this.handlers.emit[e]()}}hasHandler(e){return e===this.handlers.callback}count(){var e,t;return null!==(t=null===(e=this.events[this._name])||void 0===e?void 0:e.size)&&void 0!==t?t:0}remove(){if(!(this&&this.events&&this._name&&this.events[this._name]))return;this.events[this._name].delete(this),0===this.events[this._name].size&&delete this.events[this._name];const e=this.listeners.get(this.handlers.callback);if(e&&e.handlers.forks){const t=e.handlers.forks.indexOf(this);-1!==t&&e.handlers.forks.splice(t,1)}this.listeners.delete(this.handlers.callback),this.isStack||(this._name=void 0,this.handlers.callback=void 0);for(let e=0;e<this.handlers.remove.length;e++)this.handlers.remove[e]()}onEmit(e){this.handlers.emit.splice(0,1,e)}onRemove(e){this.handlers.remove.splice(0,1,e)}}t.default=a},518:function(e,t,i){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(987)),a=s(i(828));class n extends a.default{constructor(e){super(),this.emit=this.emit.bind(this),this.addListener=this.addListener.bind(this),this.removeAllListeners=this.removeAllListeners.bind(this),"boolean"==typeof e&&!0===e?this.events=n._events[n.globalName]:"string"==typeof e&&e!==n.globalName&&(n._events[e]||(n._events[e]={}),this.events=n._events[e])}emit(e,t){this.events[e]&&this.events[e].forEach((e=>e.emit(t)))}addListener(e,t){return new r.default(e,t,this)}listenerCount(e){var t,i;let s=0;return s=e?null!==(i=null===(t=this.events[e])||void 0===t?void 0:t.size)&&void 0!==i?i:0:this.listeners.size,s}removeListener(e){var t;null===(t=this.listeners.get(e))||void 0===t||t.remove()}removeAllListeners(){this.listeners.forEach((e=>{e.remove()}))}}Object.defineProperty(n,"globalName",{enumerable:!0,configurable:!0,writable:!0,value:"__global"}),Object.defineProperty(n,"_events",{enumerable:!0,configurable:!0,writable:!0,value:{[n.globalName]:{}}}),t.default=n},457:function(e,t,i){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(987)),a=s(i(607));class n extends r.default{constructor(e=[]){super("__stack",(e=>{this.listeners.forEach((t=>t.isStack?null:t.emit(e)))}),new a.default,!0);for(let t=0;t<e.length;t++)this.push(e[t])}push(e){super.push(e)}remove(e){if(this&&this.events&&this._name&&this.events[this._name]){this.events[this._name].delete(null!=e?e:this);for(const[t,i]of this.listeners)e?i===e&&i.remove():i!==this&&i.remove();e||super.remove()}}get length(){return Number(this.listeners.size-1)}}t.default=n},607:function(e,t,i){var s,r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(i(518)),n=r(i(457));class h extends a.default{}s=h,Object.defineProperty(h,"instance",{enumerable:!0,configurable:!0,writable:!0,value:new h(!0)}),Object.defineProperty(h,"emit",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.emit}),Object.defineProperty(h,"addListener",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.addListener}),Object.defineProperty(h,"removeListener",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.removeListener}),Object.defineProperty(h,"removeAllListeners",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.removeAllListeners}),Object.defineProperty(h,"Stack",{enumerable:!0,configurable:!0,writable:!0,value:n.default}),t.default=h}},t={};return function i(s){var r=t[s];if(void 0!==r)return r.exports;var a=t[s]={exports:{}};return e[s].call(a.exports,a,a.exports,i),a.exports}(607).default})(),e.exports=t()},738:e=>{function t(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},568:(e,t,i)=>{var s,r,a,n,h;s=i(12),r=i(487).utf8,a=i(738),n=i(487).bin,(h=function(e,t){e.constructor==String?e=t&&"binary"===t.encoding?n.stringToBytes(e):r.stringToBytes(e):a(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var i=s.bytesToWords(e),o=8*e.length,u=1732584193,l=-271733879,c=-1732584194,d=271733878,p=0;p<i.length;p++)i[p]=16711935&(i[p]<<8|i[p]>>>24)|4278255360&(i[p]<<24|i[p]>>>8);i[o>>>5]|=128<<o%32,i[14+(o+64>>>9<<4)]=o;var f=h._ff,b=h._gg,m=h._hh,v=h._ii;for(p=0;p<i.length;p+=16){var g=u,y=l,O=c,P=d;u=f(u,l,c,d,i[p+0],7,-680876936),d=f(d,u,l,c,i[p+1],12,-389564586),c=f(c,d,u,l,i[p+2],17,606105819),l=f(l,c,d,u,i[p+3],22,-1044525330),u=f(u,l,c,d,i[p+4],7,-176418897),d=f(d,u,l,c,i[p+5],12,1200080426),c=f(c,d,u,l,i[p+6],17,-1473231341),l=f(l,c,d,u,i[p+7],22,-45705983),u=f(u,l,c,d,i[p+8],7,1770035416),d=f(d,u,l,c,i[p+9],12,-1958414417),c=f(c,d,u,l,i[p+10],17,-42063),l=f(l,c,d,u,i[p+11],22,-1990404162),u=f(u,l,c,d,i[p+12],7,1804603682),d=f(d,u,l,c,i[p+13],12,-40341101),c=f(c,d,u,l,i[p+14],17,-1502002290),u=b(u,l=f(l,c,d,u,i[p+15],22,1236535329),c,d,i[p+1],5,-165796510),d=b(d,u,l,c,i[p+6],9,-1069501632),c=b(c,d,u,l,i[p+11],14,643717713),l=b(l,c,d,u,i[p+0],20,-373897302),u=b(u,l,c,d,i[p+5],5,-701558691),d=b(d,u,l,c,i[p+10],9,38016083),c=b(c,d,u,l,i[p+15],14,-660478335),l=b(l,c,d,u,i[p+4],20,-405537848),u=b(u,l,c,d,i[p+9],5,568446438),d=b(d,u,l,c,i[p+14],9,-1019803690),c=b(c,d,u,l,i[p+3],14,-187363961),l=b(l,c,d,u,i[p+8],20,1163531501),u=b(u,l,c,d,i[p+13],5,-1444681467),d=b(d,u,l,c,i[p+2],9,-51403784),c=b(c,d,u,l,i[p+7],14,1735328473),u=m(u,l=b(l,c,d,u,i[p+12],20,-1926607734),c,d,i[p+5],4,-378558),d=m(d,u,l,c,i[p+8],11,-2022574463),c=m(c,d,u,l,i[p+11],16,1839030562),l=m(l,c,d,u,i[p+14],23,-35309556),u=m(u,l,c,d,i[p+1],4,-1530992060),d=m(d,u,l,c,i[p+4],11,1272893353),c=m(c,d,u,l,i[p+7],16,-155497632),l=m(l,c,d,u,i[p+10],23,-1094730640),u=m(u,l,c,d,i[p+13],4,681279174),d=m(d,u,l,c,i[p+0],11,-358537222),c=m(c,d,u,l,i[p+3],16,-722521979),l=m(l,c,d,u,i[p+6],23,76029189),u=m(u,l,c,d,i[p+9],4,-640364487),d=m(d,u,l,c,i[p+12],11,-421815835),c=m(c,d,u,l,i[p+15],16,530742520),u=v(u,l=m(l,c,d,u,i[p+2],23,-995338651),c,d,i[p+0],6,-198630844),d=v(d,u,l,c,i[p+7],10,1126891415),c=v(c,d,u,l,i[p+14],15,-1416354905),l=v(l,c,d,u,i[p+5],21,-57434055),u=v(u,l,c,d,i[p+12],6,1700485571),d=v(d,u,l,c,i[p+3],10,-1894986606),c=v(c,d,u,l,i[p+10],15,-1051523),l=v(l,c,d,u,i[p+1],21,-2054922799),u=v(u,l,c,d,i[p+8],6,1873313359),d=v(d,u,l,c,i[p+15],10,-30611744),c=v(c,d,u,l,i[p+6],15,-1560198380),l=v(l,c,d,u,i[p+13],21,1309151649),u=v(u,l,c,d,i[p+4],6,-145523070),d=v(d,u,l,c,i[p+11],10,-1120210379),c=v(c,d,u,l,i[p+2],15,718787259),l=v(l,c,d,u,i[p+9],21,-343485551),u=u+g>>>0,l=l+y>>>0,c=c+O>>>0,d=d+P>>>0}return s.endian([u,l,c,d])})._ff=function(e,t,i,s,r,a,n){var h=e+(t&i|~t&s)+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._gg=function(e,t,i,s,r,a,n){var h=e+(t&s|i&~s)+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._hh=function(e,t,i,s,r,a,n){var h=e+(t^i^s)+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._ii=function(e,t,i,s,r,a,n){var h=e+(i^(t|~s))+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._blocksize=16,h._digestsize=16,e.exports=function(e,t){if(null==e)throw new Error("Illegal argument "+e);var i=s.wordsToBytes(h(e,t));return t&&t.asBytes?i:t&&t.asString?n.bytesToString(i):s.bytesToHex(i)}},828:function(e,t,i){"use strict";var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(2));t.default=class{constructor(e){Object.defineProperty(this,"cache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"initData",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this.events=new r.default,this.config={host:"http://127.0.0.1/"},this.cache={},this.initData={},this.setConfig=this.setConfig.bind(this),this.getConfig=this.getConfig.bind(this),this.setHost=this.setHost.bind(this),this.setInitData=this.setInitData.bind(this),this.triggerByCacheGroup=this.triggerByCacheGroup.bind(this),this.clearCacheGroup=this.clearCacheGroup.bind(this),this.updateCacheGroup=this.updateCacheGroup.bind(this),e&&Object.assign(this,{config:null==e?void 0:e.config,events:null==e?void 0:e.events,cache:null==e?void 0:e.cache,initData:null==e?void 0:e.initData,headers:e.headers})}setConfig(e){this.config=e}getConfig(){return this.config}getCache(e){if(this.cache[e]){if((new Date).getTime()<=this.cache[e].time+36e8)return this.cache[e].data;delete this.cache[e]}}isJsonString(e){try{JSON.parse(e)}catch(e){return!1}return!0}jsonParse(e){if("function"==typeof this.config.reviver)return JSON.parse(e,this.config.reviver);if(this.config.dataReviver){const t=this.config.dataReviver,i=Object.keys(t),s={};i.forEach((e=>{var t;const i=e.split("&");i.length>1&&(s.and=null!==(t=s.and)&&void 0!==t?t:{},e in s.and?s.and[e].push(...i):s.and[e]=i)}));const r=JSON.parse(e,((e,i)=>e in t&&"function"==typeof t[e]?t[e](i):i));if(s.and&&r){const e=Object.keys(r);if(s.and)for(const[i,a]of Object.entries(s.and))if(a.length===e.length&&a.every((t=>e.includes(t))))return t[i](r)}return r}return JSON.parse(e)}setHost(e){this.config.host=e}setHeader(e,t){this.headers[e]=t,this.events.emit("header-update",{name:e,value:t})}getHeader(e){return this.headers[e]}getHeaders(){return Object.entries(this.headers).map((([e,t])=>({name:e,value:t})))}hasHeader(e){return!!this.headers[e]}deleteHeader(e){delete this.headers[e]}setCache(e,t,i){this.cache[e]={time:(new Date).getTime(),data:t,group:i}}groupFromArray(e,t,i=!1){const s=e=>{if("string"!=typeof e||i)t(e);else{const i=e.split("."),s=i.shift();t(s,i)}};Array.isArray(e)?e.map(s):"string"==typeof e&&s(e)}triggerByCacheGroup(e){this.groupFromArray(e,(e=>this.events.emit("trigger-request-by-cache-"+e,void 0)))}clearCacheGroup(e,t,i="id"){this.groupFromArray(e,(e=>{if(t){const s=e=>{if(i&&(null==e?void 0:e[i])===(null==t?void 0:t[i])||null===i)for(const i in e)if(i in t)return!1;return!0};for(const t in this.cache)this.cache[t].group===e&&(Array.isArray(this.cache[t].data)?this.cache[t].data=Object.values(this.cache[t].data).filter(s):s(this.cache[t].data)||delete this.cache[t])}else for(const t in this.cache)this.cache[t].group===e&&delete this.cache[t]}))}setDataTree(e,t,i){const s=t.split("."),r=s.pop(),a=s.reduce(((e,t)=>e[t]=e[t]||{}),e);return"string"==typeof r&&(a[r]=i),e}updateCacheGroup(e,t,i="id"){const s=e=>{const s=e,r=i.split(".");if(r.length>1)for(const t of r)e=e[t];if(i&&e[i]===t[i]||null===i)for(const i in e)i in t&&(e[i]=t[i]);return s};this.groupFromArray(e,((e,t)=>{for(const t in this.cache)this.cache[t].group===e&&(Array.isArray(this.cache[t].data)?this.cache[t].data=Object.values(this.cache[t].data).map(s):this.cache[t].data=s(this.cache[t].data))}))}appendCacheGroup(e,t){}getCacheByIndex(e){return this.cache[e]}deleteCache(e){if(!this.cache[e])return;const t=this.cache[e].group;t&&this.clearCacheGroup(t),delete this.cache[e]}setInitData(e){this.initData=e}}},383:function(e,t,i){"use strict";var s=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(r,a){function n(e){try{o(s.next(e))}catch(e){a(e)}}function h(e){try{o(s.throw(e))}catch(e){a(e)}}function o(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(n,h)}o((s=s.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(i(568)),n=r(i(828)),h=r(i(840)),o=r(i(2));class u extends n.default{constructor(e,t,i){super(i),Object.defineProperty(this,"cacheIndex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"currentCache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"currentEvents",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"requestParams",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"method",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"path",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queueName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_promise",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"xhr",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tryRequestCount",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"tryRequestTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.currentEvents=new o.default,this._promise=new Promise((()=>{})),this.queue=new h.default(this),this.cacheIndex="",this.queueName="",this.method=e,this.headers=Object.assign(Object.assign({},this.headers),t.headers),this.params=Object.assign(Object.assign(Object.assign({},this.config),{headers:this.headers}),t),this.path=this.params.path,this.requestParams={method:this.method},this.handleSuccess=this.handleSuccess.bind(this),this.handleAbort=this.handleAbort.bind(this),this.handleFail=this.handleFail.bind(this),this.handleError=this.handleError.bind(this),this.handleComplete=this.handleComplete.bind(this),this.handleProgress=this.handleProgress.bind(this),this.setEmit=this.setEmit.bind(this),this.request=this.request.bind(this),this.httpRequest=this.httpRequest.bind(this),this.tryHttpRequest=this.tryHttpRequest.bind(this),this.initRequest(),this.initCache(),this.initQueue()}initRequest(){var e;"undefined"!=typeof XMLHttpRequest&&(this.xhr=new XMLHttpRequest),this.params.clearUndifinedData&&(this.params.data=this.params.data?this.cuteUndifinedParams(this.params.data):this.params.data),["GET","HEAD"].includes(this.method)&&(this.params.data&&(this.path=this.params.path+"?"+this.encodeUrlParams(this.params.data)),"HEAD"===this.method&&(this.requestParams.withoutResponse=!0)),["POST","PUT","CONNECT","PATH"].includes(this.method)&&(this.requestParams.body=null!==(e=this.params.body)&&void 0!==e?e:JSON.stringify(this.params.data)),["PUT","DELETE","CONNECT","OPTIONS","TRACE"].includes(this.method)&&(this.params.cache=!1)}initCache(){var e;this.cacheIndex=(0,a.default)(this.path+JSON.stringify(this.params.data)),this.params.globalName&&this.initData[this.params.globalName]&&(this.setCache(this.cacheIndex,this.initData[this.params.globalName],"boolean"==typeof this.params.cache?void 0:this.params.cache),this.params.cache=null===(e=this.params.cache)||void 0===e||e,delete this.initData[this.params.globalName]),this.params.cache?("string"==typeof this.params.cache&&this.events.addListener("trigger-request-by-cache-"+this.params.cache,this.request),this._promise=new Promise((e=>s(this,void 0,void 0,(function*(){(this.currentCache=this.getCache(this.cacheIndex))&&(e(this.currentCache),this.handleSuccess(this.currentCache),this.handleComplete(this.currentCache))}))))):this.deleteCache(this.cacheIndex)}get host(){return this.params.host}get promise(){return this._promise}initQueue(){this.queueName=this.params.queueThrottling?(0,a.default)(this.path):this.cacheIndex}setEmit(e,t){this.currentEvents.emit(e,t),this.events.emit(e,{cacheIndex:this.cacheIndex,data:t})}handleSuccess(e){"function"==typeof this.params.success&&this.xhr&&this.params.success(e,this.xhr),this.params.cacheUpdate&&this.params.data&&this.groupFromArray(this.params.cacheUpdate,((e,t)=>{var i;this.updateCacheGroup("string"==typeof e?e:e.group,null!==(i=this.params.data)&&void 0!==i?i:{},"string"==typeof e?void 0:e.fieldKey)}),!0),this.params.cacheClear&&this.params.data&&this.groupFromArray(this.params.cacheClear,(e=>{this.clearCacheGroup("string"==typeof e?e:e.group,this.params.data,"string"==typeof e?void 0:e.fieldKey)})),this.setEmit("api-request-success",e)}handleAbort(e){"function"==typeof this.params.abort&&this.params.abort(e),this.setEmit("api-request-abort",e)}handleFail(e){"function"==typeof this.params.fail&&this.params.fail(e),this.setEmit("api-request-fail",e)}handleError(e){var t;0===(null===(t=this.xhr)||void 0===t?void 0:t.status)&&4===this.xhr.readyState||("function"==typeof this.params.error&&this.params.error(e),this.setEmit("api-request-error",e))}handleComplete(e){"function"==typeof this.params.complete&&this.params.complete(e),this.setEmit("api-request-complete",e)}handleProgress(e){"function"==typeof this.params.progress&&this.params.progress(e),this.setEmit("api-request-progress",e)}encodeUrlParams(e){return Object.entries(e).map((([e,t])=>Array.isArray(t)?t.map((t=>encodeURIComponent(e)+"[]="+encodeURIComponent(t))).join("&"):("object"==typeof t&&(t=JSON.stringify(t)),encodeURIComponent(e)+"="+encodeURIComponent(t)))).join("&")}cuteUndifinedParams(e){if("object"!=typeof e||null===e)return e;for(const t in e)void 0===e[t]&&delete e[t];return e}tryHttpRequest(){return new Promise(((e,t)=>{var i;this.params.tryRequest&&this.params.tryRequest>this.tryRequestCount?(this.tryRequestTimeout&&clearTimeout(this.tryRequestTimeout),this.tryRequestTimeout=setTimeout((()=>{var i;null===(i=this.xhr)||void 0===i||i.abort(),this.httpRequest().then((t=>{e(t),this.tryRequestCount=0})).catch(t)}),null!==(i=this.params.tryRequestDelay)&&void 0!==i?i:1e3),++this.tryRequestCount):t()}))}fileRequest(){return new Promise(((e,t)=>s(this,void 0,void 0,(function*(){if(!this.params.file)return;const i=this.params.file,s=this.params.fileSizeChunk?1024*this.params.fileSizeChunk*1024:this.params.file.byteLength,r=Math.ceil(this.params.file.byteLength/s);let a=this.params.fileIdByServer?void 0:`file-${(new Date).getTime()}`;for(let n=0;n<r;n++)try{const h=n*s,o=Math.min(h+s,i.byteLength),l=i.slice(h,o),c=Object.assign({},this.headers);let d;if("binary"===this.params.fileType){const e=l instanceof Uint8Array?l:new Uint8Array(l);c["Content-Type"]="application/octet-stream",c["Content-Range"]=`bytes ${h}-${o-1}/${this.params.file.byteLength}`,c["X-Chunk-Index"]=String(n),c["X-Chunk-Total"]=String(r),a&&(!this.params.fileIdByServer||this.params.fileIdByServer&&n>0)&&(c["string"==typeof this.params.fileIdByServer?this.params.fileIdByServer:"X-File-ID"]=a),d=e}else{const e=new FormData;if(e.append("file",new Blob([l])),a&&(!this.params.fileIdByServer||this.params.fileIdByServer&&n>0)&&e.append("string"==typeof this.params.fileIdByServer?this.params.fileIdByServer:"file_id",a),e.append("chunk_index",String(n)),e.append("total_chunks",String(r)),this.params.data&&r-1===n)for(const t in this.params.data)e.append(t,this.params.data[t]);delete c["Content-Type"],d=e}delete c.Accept;const p=new u(this.method,Object.assign(Object.assign({},this.params),{file:void 0,headers:c,data:void 0,fileSizeChunk:void 0,body:d,success:r-1>n?void 0:t=>{e(t),this.handleSuccess(t)},complete:r-1>n?void 0:e=>{this.handleComplete(e)},progress:e=>{const t=h+e.loaded;this.handleProgress({percent:t/i.byteLength*100,total:i.byteLength,loaded:t})},fail:t,error:t}),this);this.xhr=p.xhr;const f=yield p.request(!0).promise;(null==f?void 0:f.file_id)&&(a=null==f?void 0:f.file_id)}catch(e){t(e);break}}))))}httpRequest(){return new Promise(((e,t)=>{var i;if(void 0!==this.xhr)try{this.xhr.open(this.method,this.params.host+this.path,null===(i=this.params.requestAsync)||void 0===i||i),this.params.timeout&&(this.xhr.timeout=this.params.timeout);for(const e in this.headers)this.xhr.setRequestHeader(e,this.headers[e]);this.xhr.upload&&(this.xhr.upload.onprogress=({lengthComputable:e,loaded:t,total:i})=>{e&&this.handleProgress({percent:t/i*100,total:i,loaded:t})}),this.xhr.onabort=()=>{t({type:"abort",message:"request abort"}),this.handleAbort({message:"request abort"})},this.xhr.ontimeout=()=>{this.tryHttpRequest().then(e).catch(t)},this.xhr.onerror=()=>s(this,void 0,void 0,(function*(){yield this.tryHttpRequest().then(e).catch(t),t({type:"error",message:"request error"}),this.handleError({message:"request error"})})),this.xhr.onreadystatechange=()=>{var i,s;if((null===(i=this.xhr)||void 0===i?void 0:i.readyState)!==XMLHttpRequest.DONE)return;const r=!this.requestParams.withoutResponse&&this.isJsonString(this.xhr.responseText)?this.jsonParse(this.xhr.responseText):{};(null===(s=this.xhr)||void 0===s?void 0:s.status)>=200&&this.xhr.status<=299?(this.params.cache&&this.setCache(this.cacheIndex,r,"boolean"==typeof this.params.cache?void 0:this.params.cache),e(r),this.handleSuccess(r)):this.xhr.status>=100&&this.xhr.status<=500&&(t(r),this.handleFail(r)),this.handleComplete(r),this.queue.clear(this.queueName)},this.xhr.send(this.requestParams.body)}catch(e){t(e)}}))}streamRequest(){return new Promise(((e,t)=>{fetch(this.params.host+this.path,{method:this.method,headers:this.headers,body:this.requestParams.body}).then((t=>{this.handleSuccess(t),e(t)})).catch((e=>{this.handleFail(e),t(e)}))}))}request(e){return e||this.params.forceRequest||!this.currentCache&&!this.queue.push(this.queueName)?(this._promise=new Promise(((e,t)=>s(this,void 0,void 0,(function*(){try{let t;t=this.params.stream?yield this.streamRequest():this.params.file?yield this.fileRequest():yield this.httpRequest(),e(t)}catch(e){t(e)}})))),this):this}abort(){var e;null===(e=this.xhr)||void 0===e||e.abort()}addListener(e,t){return this.currentEvents.addListener(e,t)}updateCache(e,t="id"){const i=this.getCacheByIndex(this.cacheIndex);i&&i.group&&this.updateCacheGroup(i.group,e,t)}clearCache(e,t="id"){if(e){const i=this.getCacheByIndex(this.cacheIndex);i&&i.group&&this.clearCacheGroup(i.group,e,t)}else this.deleteCache(this.cacheIndex)}}t.default=u},840:function(e,t,i){"use strict";var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(383));class a{constructor(e){Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:a._Queue}),Object.defineProperty(this,"http",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.http=e,this.has=this.has.bind(this),this.get=this.get.bind(this),this.clear=this.clear.bind(this),this.push=this.push.bind(this)}has(e){return e in this.queue}get(e){return this.has(e)?this.queue[e]:void 0}clear(e){this.has(e)&&delete this.queue[e]}push(e){const t=this.get(e);return t?(null==t||t.addListener("api-request-success",this.http.handleSuccess),null==t||t.addListener("api-request-error",this.http.handleError),null==t||t.addListener("api-request-fail",this.http.handleFail),null==t||t.addListener("api-request-complete",this.http.handleComplete),null==t||t.addListener("api-request-abort",this.http.handleAbort)):this.queue[e]=this.http,t instanceof r.default}}Object.defineProperty(a,"_Queue",{enumerable:!0,configurable:!0,writable:!0,value:{}}),t.default=a},607:function(e,t,i){"use strict";var s,r=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(r,a){function n(e){try{o(s.next(e))}catch(e){a(e)}}function h(e){try{o(s.throw(e))}catch(e){a(e)}}function o(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(n,h)}o((s=s.apply(e,t||[])).next())}))},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(i(828)),h=a(i(383));class o extends n.default{constructor(e){super(),Object.defineProperty(this,"_user",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"token",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"csrfToken",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.headers=Object.assign({Accept:"application/json","Content-Type":"application/json"},e.headers),this.setConfig(e),this._user={},this.setToken=this.setToken.bind(this),this.setCSRFToken=this.setCSRFToken.bind(this),this.setLogin=this.setLogin.bind(this),this.setUser=this.setUser.bind(this),this.updateUser=this.updateUser.bind(this),this.logout=this.logout.bind(this),this.getToken=this.getToken.bind(this),this.getCSRFToken=this.getCSRFToken.bind(this),this.http=this.http.bind(this),this.get=this.get.bind(this),this.head=this.head.bind(this),this.post=this.post.bind(this),this.put=this.put.bind(this),this.patch=this.patch.bind(this),this.delete=this.delete.bind(this),this.options=this.options.bind(this),this.connect=this.connect.bind(this),this.trace=this.trace.bind(this),this.getUid=this.getUid.bind(this),this.getUser=this.getUser.bind(this),this.addListener=this.addListener.bind(this)}http(e,t){const i=new h.default(e,t,this);return this.token&&i.setHeader("Authorization",`Bearer ${this.token}`),this.csrfToken&&i.setHeader("X-CSRF-TOKEN",this.csrfToken),i}get(e){return this.http("GET",e).request()}head(e){return this.http("HEAD",e).request()}post(e){return this.http("POST",e).request()}put(e){return this.http("PUT",e).request()}patch(e){return this.http("PATCH",e).request()}delete(e){return this.http("DELETE",e).request()}options(e){return this.http("OPTIONS",e).request()}connect(e){return this.http("CONNECT",e).request()}trace(e){return this.http("TRACE",e).request()}addListener(e,t){return this.events.addListener(e,t)}setToken(e){this.token=e,this.events.emit("token-update",e)}setCSRFToken(e){this.csrfToken=e,this.events.emit("csrf-token-update",e)}getToken(){return this.token}getCSRFToken(){return this.csrfToken}getUid(){return"object"==typeof this._user&&"id"in this._user?Number(this._user.id):0}getUser(){return this._user}get uid(){return this.getUid()}get user(){return this.getUser()}get host(){return this.config.host}setLogin(e,t=""){this.setUser(e),this.setToken(t),this.events.emit("login",{user:e,token:t})}setUser(e){this._user=e,this.events.emit("user-set",e)}updateUser(e){const t=Object.assign(Object.assign({},this.user),e);this.setUser(t),this.events.emit("user-update",t)}logout(){return r(this,void 0,void 0,(function*(){const e=this.user;this.setUser({}),this.setToken(""),this.events.emit("logout",e)}))}}s=o,Object.defineProperty(o,"instance",{enumerable:!0,configurable:!0,writable:!0,value:new o({host:""})}),Object.defineProperty(o,"http",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.http}),Object.defineProperty(o,"get",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.get}),Object.defineProperty(o,"head",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.head}),Object.defineProperty(o,"post",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.post}),Object.defineProperty(o,"put",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.put}),Object.defineProperty(o,"patch",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.patch}),Object.defineProperty(o,"delete",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.delete}),Object.defineProperty(o,"options",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.options}),Object.defineProperty(o,"connect",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.connect}),Object.defineProperty(o,"trace",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.trace}),Object.defineProperty(o,"setConfig",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setConfig}),Object.defineProperty(o,"setHost",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setHost}),Object.defineProperty(o,"setUser",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setUser}),Object.defineProperty(o,"updateUser",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.updateUser}),Object.defineProperty(o,"logout",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.logout}),Object.defineProperty(o,"setToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setToken}),Object.defineProperty(o,"setLogin",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setLogin}),Object.defineProperty(o,"addListener",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.addListener}),Object.defineProperty(o,"setInitData",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setInitData}),Object.defineProperty(o,"setCSRFToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setCSRFToken}),Object.defineProperty(o,"getCSRFToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getCSRFToken}),Object.defineProperty(o,"triggerByCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.triggerByCacheGroup}),Object.defineProperty(o,"clearCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.clearCacheGroup}),Object.defineProperty(o,"updateCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.updateCacheGroup}),Object.defineProperty(o,"getToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getToken}),Object.defineProperty(o,"getUid",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getUid}),Object.defineProperty(o,"getUser",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getUser}),Object.defineProperty(o,"user",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.user}),Object.defineProperty(o,"uid",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.uid}),Object.defineProperty(o,"deleteCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.clearCacheGroup}),globalThis.apiSetInitData=o.setInitData,t.default=o}},t={},function i(s){var r=t[s];if(void 0!==r)return r.exports;var a=t[s]={exports:{}};return e[s].call(a.exports,a,a.exports,i),a.exports}(607);var e,t}));
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.API=t():e.API=t()}("undefined"!=typeof self?self:this,(()=>{return e={487:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],i=0;i<e.length;i++)t.push(255&e.charCodeAt(i));return t},bytesToString:function(e){for(var t=[],i=0;i<e.length;i++)t.push(String.fromCharCode(e[i]));return t.join("")}}};e.exports=t},12:e=>{var t,i;t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i={rotl:function(e,t){return e<<t|e>>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&i.rotl(e,8)|4278255360&i.rotl(e,24);for(var t=0;t<e.length;t++)e[t]=i.endian(e[t]);return e},randomBytes:function(e){for(var t=[];e>0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],i=0,s=0;i<e.length;i++,s+=8)t[s>>>5]|=e[i]<<24-s%32;return t},wordsToBytes:function(e){for(var t=[],i=0;i<32*e.length;i+=8)t.push(e[i>>>5]>>>24-i%32&255);return t},bytesToHex:function(e){for(var t=[],i=0;i<e.length;i++)t.push((e[i]>>>4).toString(16)),t.push((15&e[i]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],i=0;i<e.length;i+=2)t.push(parseInt(e.substr(i,2),16));return t},bytesToBase64:function(e){for(var i=[],s=0;s<e.length;s+=3)for(var r=e[s]<<16|e[s+1]<<8|e[s+2],a=0;a<4;a++)8*s+6*a<=8*e.length?i.push(t.charAt(r>>>6*(3-a)&63)):i.push("=");return i.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var i=[],s=0,r=0;s<e.length;r=++s%4)0!=r&&i.push((t.indexOf(e.charAt(s-1))&Math.pow(2,-2*r+8)-1)<<2*r|t.indexOf(e.charAt(s))>>>6-2*r);return i}},e.exports=i},2:function(e){var t;t=()=>(()=>{"use strict";var e={828:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e){Object.defineProperty(this,"listeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),e?(this.listeners=e.listeners,this.events=e.events):(this.listeners=new Map,this.events={})}}},987:function(e,t,i){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(828));class a extends r.default{constructor(e,t,i,s=!1){super(i),Object.defineProperty(this,"isStack",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_name",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"handlers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.isStack=s,this._name=e,this.handlers={callback:t,emit:[],remove:[]},this.push(this)}push(e){var t;this._name&&!this.events[this._name]&&(this.events[this._name]=new Map),this.events[this._name].set(e,e),this.listeners.has(e.handlers.callback)?null===(t=this.listeners.get(e.handlers.callback))||void 0===t||t.pushFork(e):this.listeners.set(e.handlers.callback,e)}pushFork(e){this.handlers.forks||(this.handlers.forks=[]),this.handlers.forks.push(e)}get name(){return"string"==typeof this._name?this._name:void 0}emit(e){if("function"==typeof this.handlers.callback){this.handlers.callback(e);for(let e=0;e<this.handlers.emit.length;e++)this.handlers.emit[e]()}}hasHandler(e){return e===this.handlers.callback}count(){var e,t;return null!==(t=null===(e=this.events[this._name])||void 0===e?void 0:e.size)&&void 0!==t?t:0}remove(){if(!(this&&this.events&&this._name&&this.events[this._name]))return;this.events[this._name].delete(this),0===this.events[this._name].size&&delete this.events[this._name];const e=this.listeners.get(this.handlers.callback);if(e&&e.handlers.forks){const t=e.handlers.forks.indexOf(this);-1!==t&&e.handlers.forks.splice(t,1)}this.listeners.delete(this.handlers.callback),this.isStack||(this._name=void 0,this.handlers.callback=void 0);for(let e=0;e<this.handlers.remove.length;e++)this.handlers.remove[e]()}onEmit(e){this.handlers.emit.splice(0,1,e)}onRemove(e){this.handlers.remove.splice(0,1,e)}}t.default=a},518:function(e,t,i){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(987)),a=s(i(828));class n extends a.default{constructor(e){super(),this.emit=this.emit.bind(this),this.addListener=this.addListener.bind(this),this.removeAllListeners=this.removeAllListeners.bind(this),"boolean"==typeof e&&!0===e?this.events=n._events[n.globalName]:"string"==typeof e&&e!==n.globalName&&(n._events[e]||(n._events[e]={}),this.events=n._events[e])}emit(e,t){this.events[e]&&this.events[e].forEach((e=>e.emit(t)))}addListener(e,t){return new r.default(e,t,this)}listenerCount(e){var t,i;let s=0;return s=e?null!==(i=null===(t=this.events[e])||void 0===t?void 0:t.size)&&void 0!==i?i:0:this.listeners.size,s}removeListener(e){var t;null===(t=this.listeners.get(e))||void 0===t||t.remove()}removeAllListeners(){this.listeners.forEach((e=>{e.remove()}))}}Object.defineProperty(n,"globalName",{enumerable:!0,configurable:!0,writable:!0,value:"__global"}),Object.defineProperty(n,"_events",{enumerable:!0,configurable:!0,writable:!0,value:{[n.globalName]:{}}}),t.default=n},457:function(e,t,i){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(987)),a=s(i(607));class n extends r.default{constructor(e=[]){super("__stack",(e=>{this.listeners.forEach((t=>t.isStack?null:t.emit(e)))}),new a.default,!0);for(let t=0;t<e.length;t++)this.push(e[t])}push(e){super.push(e)}remove(e){if(this&&this.events&&this._name&&this.events[this._name]){this.events[this._name].delete(null!=e?e:this);for(const[t,i]of this.listeners)e?i===e&&i.remove():i!==this&&i.remove();e||super.remove()}}get length(){return Number(this.listeners.size-1)}}t.default=n},607:function(e,t,i){var s,r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(i(518)),n=r(i(457));class h extends a.default{}s=h,Object.defineProperty(h,"instance",{enumerable:!0,configurable:!0,writable:!0,value:new h(!0)}),Object.defineProperty(h,"emit",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.emit}),Object.defineProperty(h,"addListener",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.addListener}),Object.defineProperty(h,"removeListener",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.removeListener}),Object.defineProperty(h,"removeAllListeners",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.removeAllListeners}),Object.defineProperty(h,"Stack",{enumerable:!0,configurable:!0,writable:!0,value:n.default}),t.default=h}},t={};return function i(s){var r=t[s];if(void 0!==r)return r.exports;var a=t[s]={exports:{}};return e[s].call(a.exports,a,a.exports,i),a.exports}(607).default})(),e.exports=t()},738:e=>{function t(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},568:(e,t,i)=>{var s,r,a,n,h;s=i(12),r=i(487).utf8,a=i(738),n=i(487).bin,(h=function(e,t){e.constructor==String?e=t&&"binary"===t.encoding?n.stringToBytes(e):r.stringToBytes(e):a(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var i=s.bytesToWords(e),o=8*e.length,u=1732584193,l=-271733879,c=-1732584194,d=271733878,p=0;p<i.length;p++)i[p]=16711935&(i[p]<<8|i[p]>>>24)|4278255360&(i[p]<<24|i[p]>>>8);i[o>>>5]|=128<<o%32,i[14+(o+64>>>9<<4)]=o;var f=h._ff,b=h._gg,m=h._hh,v=h._ii;for(p=0;p<i.length;p+=16){var g=u,y=l,O=c,P=d;u=f(u,l,c,d,i[p+0],7,-680876936),d=f(d,u,l,c,i[p+1],12,-389564586),c=f(c,d,u,l,i[p+2],17,606105819),l=f(l,c,d,u,i[p+3],22,-1044525330),u=f(u,l,c,d,i[p+4],7,-176418897),d=f(d,u,l,c,i[p+5],12,1200080426),c=f(c,d,u,l,i[p+6],17,-1473231341),l=f(l,c,d,u,i[p+7],22,-45705983),u=f(u,l,c,d,i[p+8],7,1770035416),d=f(d,u,l,c,i[p+9],12,-1958414417),c=f(c,d,u,l,i[p+10],17,-42063),l=f(l,c,d,u,i[p+11],22,-1990404162),u=f(u,l,c,d,i[p+12],7,1804603682),d=f(d,u,l,c,i[p+13],12,-40341101),c=f(c,d,u,l,i[p+14],17,-1502002290),u=b(u,l=f(l,c,d,u,i[p+15],22,1236535329),c,d,i[p+1],5,-165796510),d=b(d,u,l,c,i[p+6],9,-1069501632),c=b(c,d,u,l,i[p+11],14,643717713),l=b(l,c,d,u,i[p+0],20,-373897302),u=b(u,l,c,d,i[p+5],5,-701558691),d=b(d,u,l,c,i[p+10],9,38016083),c=b(c,d,u,l,i[p+15],14,-660478335),l=b(l,c,d,u,i[p+4],20,-405537848),u=b(u,l,c,d,i[p+9],5,568446438),d=b(d,u,l,c,i[p+14],9,-1019803690),c=b(c,d,u,l,i[p+3],14,-187363961),l=b(l,c,d,u,i[p+8],20,1163531501),u=b(u,l,c,d,i[p+13],5,-1444681467),d=b(d,u,l,c,i[p+2],9,-51403784),c=b(c,d,u,l,i[p+7],14,1735328473),u=m(u,l=b(l,c,d,u,i[p+12],20,-1926607734),c,d,i[p+5],4,-378558),d=m(d,u,l,c,i[p+8],11,-2022574463),c=m(c,d,u,l,i[p+11],16,1839030562),l=m(l,c,d,u,i[p+14],23,-35309556),u=m(u,l,c,d,i[p+1],4,-1530992060),d=m(d,u,l,c,i[p+4],11,1272893353),c=m(c,d,u,l,i[p+7],16,-155497632),l=m(l,c,d,u,i[p+10],23,-1094730640),u=m(u,l,c,d,i[p+13],4,681279174),d=m(d,u,l,c,i[p+0],11,-358537222),c=m(c,d,u,l,i[p+3],16,-722521979),l=m(l,c,d,u,i[p+6],23,76029189),u=m(u,l,c,d,i[p+9],4,-640364487),d=m(d,u,l,c,i[p+12],11,-421815835),c=m(c,d,u,l,i[p+15],16,530742520),u=v(u,l=m(l,c,d,u,i[p+2],23,-995338651),c,d,i[p+0],6,-198630844),d=v(d,u,l,c,i[p+7],10,1126891415),c=v(c,d,u,l,i[p+14],15,-1416354905),l=v(l,c,d,u,i[p+5],21,-57434055),u=v(u,l,c,d,i[p+12],6,1700485571),d=v(d,u,l,c,i[p+3],10,-1894986606),c=v(c,d,u,l,i[p+10],15,-1051523),l=v(l,c,d,u,i[p+1],21,-2054922799),u=v(u,l,c,d,i[p+8],6,1873313359),d=v(d,u,l,c,i[p+15],10,-30611744),c=v(c,d,u,l,i[p+6],15,-1560198380),l=v(l,c,d,u,i[p+13],21,1309151649),u=v(u,l,c,d,i[p+4],6,-145523070),d=v(d,u,l,c,i[p+11],10,-1120210379),c=v(c,d,u,l,i[p+2],15,718787259),l=v(l,c,d,u,i[p+9],21,-343485551),u=u+g>>>0,l=l+y>>>0,c=c+O>>>0,d=d+P>>>0}return s.endian([u,l,c,d])})._ff=function(e,t,i,s,r,a,n){var h=e+(t&i|~t&s)+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._gg=function(e,t,i,s,r,a,n){var h=e+(t&s|i&~s)+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._hh=function(e,t,i,s,r,a,n){var h=e+(t^i^s)+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._ii=function(e,t,i,s,r,a,n){var h=e+(i^(t|~s))+(r>>>0)+n;return(h<<a|h>>>32-a)+t},h._blocksize=16,h._digestsize=16,e.exports=function(e,t){if(null==e)throw new Error("Illegal argument "+e);var i=s.wordsToBytes(h(e,t));return t&&t.asBytes?i:t&&t.asString?n.bytesToString(i):s.bytesToHex(i)}},828:function(e,t,i){"use strict";var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(2));t.default=class{constructor(e){Object.defineProperty(this,"cache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"initData",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"config",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:{}}),this.events=new r.default,this.config={host:"http://127.0.0.1/"},this.cache={},this.initData={},this.setConfig=this.setConfig.bind(this),this.getConfig=this.getConfig.bind(this),this.setHost=this.setHost.bind(this),this.setInitData=this.setInitData.bind(this),this.triggerByCacheGroup=this.triggerByCacheGroup.bind(this),this.clearCacheGroup=this.clearCacheGroup.bind(this),this.updateCacheGroup=this.updateCacheGroup.bind(this),this.setGlobalInitData=this.setGlobalInitData.bind(this),e&&Object.assign(this,{config:null==e?void 0:e.config,events:null==e?void 0:e.events,cache:null==e?void 0:e.cache,initData:null==e?void 0:e.initData,headers:e.headers})}setConfig(e){this.config=e}getConfig(){return this.config}getCache(e){if(this.cache[e]){if((new Date).getTime()<=this.cache[e].time+36e8)return this.cache[e].data;delete this.cache[e]}}isJsonString(e){try{JSON.parse(e)}catch(e){return!1}return!0}dataPrepare(e){const t=JSON.stringify(e);return this.jsonParse(t)}jsonParse(e){if("function"==typeof this.config.reviver)return JSON.parse(e,this.config.reviver);if(this.config.dataReviver){const t=this.config.dataReviver,i=Object.keys(t),s={};i.forEach((e=>{var t;const i=e.split("&");i.length>1&&(s.and=null!==(t=s.and)&&void 0!==t?t:{},e in s.and?s.and[e].push(...i):s.and[e]=i)}));const r=JSON.parse(e,((e,i)=>e in t&&"function"==typeof t[e]?t[e](i):i));if(s.and&&r){const e=Object.keys(r);if(s.and)for(const[i,a]of Object.entries(s.and))if(a.length===e.length&&a.every((t=>e.includes(t))))return t[i](r)}return r}return JSON.parse(e)}setHost(e){this.config.host=e}setHeader(e,t){this.headers[e]=t,this.events.emit("header-update",{name:e,value:t})}getHeader(e){return this.headers[e]}getHeaders(){return Object.entries(this.headers).map((([e,t])=>({name:e,value:t})))}hasHeader(e){return!!this.headers[e]}deleteHeader(e){delete this.headers[e]}setCache(e,t,i){this.cache[e]={time:(new Date).getTime(),data:t,group:i}}groupFromArray(e,t,i=!1){const s=e=>{if("string"!=typeof e||i)t(e);else{const i=e.split("."),s=i.shift();t(s,i)}};Array.isArray(e)?e.map(s):"string"==typeof e&&s(e)}triggerByCacheGroup(e){this.groupFromArray(e,(e=>this.events.emit("trigger-request-by-cache-"+e,void 0)))}clearCacheGroup(e,t,i="id"){this.groupFromArray(e,(e=>{if(t){const s=e=>{if(i&&(null==e?void 0:e[i])===(null==t?void 0:t[i])||null===i)for(const i in e)if(i in t)return!1;return!0};for(const t in this.cache)this.cache[t].group===e&&(Array.isArray(this.cache[t].data)?this.cache[t].data=Object.values(this.cache[t].data).filter(s):s(this.cache[t].data)||delete this.cache[t])}else for(const t in this.cache)this.cache[t].group===e&&delete this.cache[t]}))}setDataTree(e,t,i){const s=t.split("."),r=s.pop(),a=s.reduce(((e,t)=>e[t]=e[t]||{}),e);return"string"==typeof r&&(a[r]=i),e}updateCacheGroup(e,t,i="id"){const s=e=>{const s=e,r=i.split(".");if(r.length>1)for(const t of r)e=e[t];if(i&&e[i]===t[i]||null===i)for(const i in e)i in t&&(e[i]=t[i]);return s};this.groupFromArray(e,((e,t)=>{for(const t in this.cache)this.cache[t].group===e&&(Array.isArray(this.cache[t].data)?this.cache[t].data=Object.values(this.cache[t].data).map(s):this.cache[t].data=s(this.cache[t].data))}))}appendCacheGroup(e,t){}getCacheByIndex(e){return this.cache[e]}deleteCache(e){if(!this.cache[e])return;const t=this.cache[e].group;t&&this.clearCacheGroup(t),delete this.cache[e]}setGlobalInitData(e,t){this.initData[e]=t}setInitData(e){this.initData=e}}},383:function(e,t,i){"use strict";var s=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(r,a){function n(e){try{o(s.next(e))}catch(e){a(e)}}function h(e){try{o(s.throw(e))}catch(e){a(e)}}function o(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(n,h)}o((s=s.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(i(568)),n=r(i(828)),h=r(i(840)),o=r(i(2));class u extends n.default{constructor(e,t,i){super(i),Object.defineProperty(this,"cacheIndex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"currentCache",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"currentEvents",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"requestParams",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"method",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"path",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"queueName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"_promise",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"xhr",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"tryRequestCount",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"tryRequestTimeout",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.currentEvents=new o.default,this._promise=new Promise((()=>{})),this.queue=new h.default(this),this.cacheIndex="",this.queueName="",this.method=e,this.headers=Object.assign(Object.assign({},this.headers),t.headers),this.params=Object.assign(Object.assign(Object.assign({},this.config),{headers:this.headers}),t),this.path=this.params.path,this.requestParams={method:this.method},this.handleSuccess=this.handleSuccess.bind(this),this.handleAbort=this.handleAbort.bind(this),this.handleFail=this.handleFail.bind(this),this.handleError=this.handleError.bind(this),this.handleComplete=this.handleComplete.bind(this),this.handleProgress=this.handleProgress.bind(this),this.setEmit=this.setEmit.bind(this),this.request=this.request.bind(this),this.httpRequest=this.httpRequest.bind(this),this.tryHttpRequest=this.tryHttpRequest.bind(this),this.initRequest(),this.initCache(),this.initQueue()}initRequest(){var e;"undefined"!=typeof XMLHttpRequest&&(this.xhr=new XMLHttpRequest),this.params.clearUndifinedData&&(this.params.data=this.params.data?this.cuteUndifinedParams(this.params.data):this.params.data),["GET","HEAD"].includes(this.method)&&(this.params.data&&(this.path=this.params.path+"?"+this.encodeUrlParams(this.params.data)),"HEAD"===this.method&&(this.requestParams.withoutResponse=!0)),["POST","PUT","CONNECT","PATH"].includes(this.method)&&(this.requestParams.body=null!==(e=this.params.body)&&void 0!==e?e:JSON.stringify(this.params.data)),["PUT","DELETE","CONNECT","OPTIONS","TRACE"].includes(this.method)&&(this.params.cache=!1)}initCache(){var e;this.cacheIndex=(0,a.default)(this.path+JSON.stringify(this.params.data)),this.params.globalName&&this.initData[this.params.globalName]&&(this.setCache(this.cacheIndex,this.dataPrepare(this.initData[this.params.globalName]),"boolean"==typeof this.params.cache?void 0:this.params.cache),this.params.cache=null===(e=this.params.cache)||void 0===e||e,delete this.initData[this.params.globalName]),this.params.cache?("string"==typeof this.params.cache&&this.events.addListener("trigger-request-by-cache-"+this.params.cache,this.request),this._promise=new Promise((e=>s(this,void 0,void 0,(function*(){(this.currentCache=this.getCache(this.cacheIndex))&&(e(this.currentCache),this.handleSuccess(this.currentCache),this.handleComplete(this.currentCache))}))))):this.deleteCache(this.cacheIndex)}get host(){return this.params.host}get promise(){return this._promise}initQueue(){this.queueName=this.params.queueThrottling?(0,a.default)(this.path):this.cacheIndex}setEmit(e,t){this.currentEvents.emit(e,t),this.events.emit(e,{cacheIndex:this.cacheIndex,data:t})}handleSuccess(e){"function"==typeof this.params.success&&this.xhr&&this.params.success(e,this.xhr),this.params.cacheUpdate&&this.params.data&&this.groupFromArray(this.params.cacheUpdate,((e,t)=>{var i;this.updateCacheGroup("string"==typeof e?e:e.group,null!==(i=this.params.data)&&void 0!==i?i:{},"string"==typeof e?void 0:e.fieldKey)}),!0),this.params.cacheClear&&this.params.data&&this.groupFromArray(this.params.cacheClear,(e=>{this.clearCacheGroup("string"==typeof e?e:e.group,this.params.data,"string"==typeof e?void 0:e.fieldKey)})),this.setEmit("api-request-success",e)}handleAbort(e){"function"==typeof this.params.abort&&this.params.abort(e),this.setEmit("api-request-abort",e)}handleFail(e){"function"==typeof this.params.fail&&this.params.fail(e),this.setEmit("api-request-fail",e)}handleError(e){var t;0===(null===(t=this.xhr)||void 0===t?void 0:t.status)&&4===this.xhr.readyState||("function"==typeof this.params.error&&this.params.error(e),this.setEmit("api-request-error",e))}handleComplete(e){"function"==typeof this.params.complete&&this.params.complete(e),this.setEmit("api-request-complete",e)}handleProgress(e){"function"==typeof this.params.progress&&this.params.progress(e),this.setEmit("api-request-progress",e)}encodeUrlParams(e){return Object.entries(e).map((([e,t])=>Array.isArray(t)?t.map((t=>encodeURIComponent(e)+"[]="+encodeURIComponent(t))).join("&"):("object"==typeof t&&(t=JSON.stringify(t)),encodeURIComponent(e)+"="+encodeURIComponent(t)))).join("&")}cuteUndifinedParams(e){if("object"!=typeof e||null===e)return e;for(const t in e)void 0===e[t]&&delete e[t];return e}tryHttpRequest(){return new Promise(((e,t)=>{var i;this.params.tryRequest&&this.params.tryRequest>this.tryRequestCount?(this.tryRequestTimeout&&clearTimeout(this.tryRequestTimeout),this.tryRequestTimeout=setTimeout((()=>{var i;null===(i=this.xhr)||void 0===i||i.abort(),this.httpRequest().then((t=>{e(t),this.tryRequestCount=0})).catch(t)}),null!==(i=this.params.tryRequestDelay)&&void 0!==i?i:1e3),++this.tryRequestCount):t()}))}fileRequest(){return new Promise(((e,t)=>s(this,void 0,void 0,(function*(){if(!this.params.file)return;const i=this.params.file,s=this.params.fileSizeChunk?1024*this.params.fileSizeChunk*1024:this.params.file.byteLength,r=Math.ceil(this.params.file.byteLength/s);let a=this.params.fileIdByServer?void 0:`file-${(new Date).getTime()}`;for(let n=0;n<r;n++)try{const h=n*s,o=Math.min(h+s,i.byteLength),l=i.slice(h,o),c=Object.assign({},this.headers);let d;if("binary"===this.params.fileType){const e=l instanceof Uint8Array?l:new Uint8Array(l);c["Content-Type"]="application/octet-stream",c["Content-Range"]=`bytes ${h}-${o-1}/${this.params.file.byteLength}`,c["X-Chunk-Index"]=String(n),c["X-Chunk-Total"]=String(r),a&&(!this.params.fileIdByServer||this.params.fileIdByServer&&n>0)&&(c["string"==typeof this.params.fileIdByServer?this.params.fileIdByServer:"X-File-ID"]=a),d=e}else{const e=new FormData;if(e.append("file",new Blob([l])),a&&(!this.params.fileIdByServer||this.params.fileIdByServer&&n>0)&&e.append("string"==typeof this.params.fileIdByServer?this.params.fileIdByServer:"file_id",a),e.append("chunk_index",String(n)),e.append("total_chunks",String(r)),this.params.data&&r-1===n)for(const t in this.params.data)e.append(t,this.params.data[t]);delete c["Content-Type"],d=e}delete c.Accept;const p=new u(this.method,Object.assign(Object.assign({},this.params),{file:void 0,headers:c,data:void 0,fileSizeChunk:void 0,body:d,success:r-1>n?void 0:t=>{e(t),this.handleSuccess(t)},complete:r-1>n?void 0:e=>{this.handleComplete(e)},progress:e=>{const t=h+e.loaded;this.handleProgress({percent:t/i.byteLength*100,total:i.byteLength,loaded:t})},fail:t,error:t}),this);this.xhr=p.xhr;const f=yield p.request(!0).promise;(null==f?void 0:f.file_id)&&(a=null==f?void 0:f.file_id)}catch(e){t(e);break}}))))}httpRequest(){return new Promise(((e,t)=>{var i;if(void 0!==this.xhr)try{this.xhr.open(this.method,this.params.host+this.path,null===(i=this.params.requestAsync)||void 0===i||i),this.params.timeout&&(this.xhr.timeout=this.params.timeout);for(const e in this.headers)this.xhr.setRequestHeader(e,this.headers[e]);this.xhr.upload&&(this.xhr.upload.onprogress=({lengthComputable:e,loaded:t,total:i})=>{e&&this.handleProgress({percent:t/i*100,total:i,loaded:t})}),this.xhr.onabort=()=>{t({type:"abort",message:"request abort"}),this.handleAbort({message:"request abort"})},this.xhr.ontimeout=()=>{this.tryHttpRequest().then(e).catch(t)},this.xhr.onerror=()=>s(this,void 0,void 0,(function*(){yield this.tryHttpRequest().then(e).catch(t),t({type:"error",message:"request error"}),this.handleError({message:"request error"})})),this.xhr.onreadystatechange=()=>{var i,s;if((null===(i=this.xhr)||void 0===i?void 0:i.readyState)!==XMLHttpRequest.DONE)return;const r=!this.requestParams.withoutResponse&&this.isJsonString(this.xhr.responseText)?this.jsonParse(this.xhr.responseText):{};(null===(s=this.xhr)||void 0===s?void 0:s.status)>=200&&this.xhr.status<=299?(this.params.cache&&this.setCache(this.cacheIndex,r,"boolean"==typeof this.params.cache?void 0:this.params.cache),e(r),this.handleSuccess(r)):this.xhr.status>=100&&this.xhr.status<=500&&(t(r),this.handleFail(r)),this.handleComplete(r),this.queue.clear(this.queueName)},this.xhr.send(this.requestParams.body)}catch(e){t(e)}}))}streamRequest(){return new Promise(((e,t)=>{fetch(this.params.host+this.path,{method:this.method,headers:this.headers,body:this.requestParams.body}).then((t=>{this.handleSuccess(t),e(t)})).catch((e=>{this.handleFail(e),t(e)}))}))}request(e){return e||this.params.forceRequest||!this.currentCache&&!this.queue.push(this.queueName)?(this._promise=new Promise(((e,t)=>s(this,void 0,void 0,(function*(){try{let t;t=this.params.stream?yield this.streamRequest():this.params.file?yield this.fileRequest():yield this.httpRequest(),e(t)}catch(e){t(e)}})))),this):this}abort(){var e;null===(e=this.xhr)||void 0===e||e.abort()}addListener(e,t){return this.currentEvents.addListener(e,t)}updateCache(e,t="id"){const i=this.getCacheByIndex(this.cacheIndex);i&&i.group&&this.updateCacheGroup(i.group,e,t)}clearCache(e,t="id"){if(e){const i=this.getCacheByIndex(this.cacheIndex);i&&i.group&&this.clearCacheGroup(i.group,e,t)}else this.deleteCache(this.cacheIndex)}}t.default=u},840:function(e,t,i){"use strict";var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(i(383));class a{constructor(e){Object.defineProperty(this,"queue",{enumerable:!0,configurable:!0,writable:!0,value:a._Queue}),Object.defineProperty(this,"http",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.http=e,this.has=this.has.bind(this),this.get=this.get.bind(this),this.clear=this.clear.bind(this),this.push=this.push.bind(this)}has(e){return e in this.queue}get(e){return this.has(e)?this.queue[e]:void 0}clear(e){this.has(e)&&delete this.queue[e]}push(e){const t=this.get(e);return t?(null==t||t.addListener("api-request-success",this.http.handleSuccess),null==t||t.addListener("api-request-error",this.http.handleError),null==t||t.addListener("api-request-fail",this.http.handleFail),null==t||t.addListener("api-request-complete",this.http.handleComplete),null==t||t.addListener("api-request-abort",this.http.handleAbort)):this.queue[e]=this.http,t instanceof r.default}}Object.defineProperty(a,"_Queue",{enumerable:!0,configurable:!0,writable:!0,value:{}}),t.default=a},607:function(e,t,i){"use strict";var s,r=this&&this.__awaiter||function(e,t,i,s){return new(i||(i=Promise))((function(r,a){function n(e){try{o(s.next(e))}catch(e){a(e)}}function h(e){try{o(s.throw(e))}catch(e){a(e)}}function o(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(n,h)}o((s=s.apply(e,t||[])).next())}))},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=a(i(828)),h=a(i(383));class o extends n.default{constructor(e){super(),Object.defineProperty(this,"_user",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"token",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"csrfToken",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.headers=Object.assign({Accept:"application/json","Content-Type":"application/json"},e.headers),this.setConfig(e),this._user={},this.setToken=this.setToken.bind(this),this.setCSRFToken=this.setCSRFToken.bind(this),this.setLogin=this.setLogin.bind(this),this.setUser=this.setUser.bind(this),this.updateUser=this.updateUser.bind(this),this.logout=this.logout.bind(this),this.getToken=this.getToken.bind(this),this.getCSRFToken=this.getCSRFToken.bind(this),this.http=this.http.bind(this),this.get=this.get.bind(this),this.head=this.head.bind(this),this.post=this.post.bind(this),this.put=this.put.bind(this),this.patch=this.patch.bind(this),this.delete=this.delete.bind(this),this.options=this.options.bind(this),this.connect=this.connect.bind(this),this.trace=this.trace.bind(this),this.getUid=this.getUid.bind(this),this.getUser=this.getUser.bind(this),this.addListener=this.addListener.bind(this)}http(e,t){const i=new h.default(e,t,this);return this.token&&i.setHeader("Authorization",`Bearer ${this.token}`),this.csrfToken&&i.setHeader("X-CSRF-TOKEN",this.csrfToken),i}get(e){return this.http("GET",e).request()}head(e){return this.http("HEAD",e).request()}post(e){return this.http("POST",e).request()}put(e){return this.http("PUT",e).request()}patch(e){return this.http("PATCH",e).request()}delete(e){return this.http("DELETE",e).request()}options(e){return this.http("OPTIONS",e).request()}connect(e){return this.http("CONNECT",e).request()}trace(e){return this.http("TRACE",e).request()}addListener(e,t){return this.events.addListener(e,t)}setToken(e){this.token=e,this.events.emit("token-update",e)}setCSRFToken(e){this.csrfToken=e,this.events.emit("csrf-token-update",e)}getToken(){return this.token}getCSRFToken(){return this.csrfToken}getUid(){return"object"==typeof this._user&&"id"in this._user?Number(this._user.id):0}getUser(){return this._user}get uid(){return this.getUid()}get user(){return this.getUser()}get host(){return this.config.host}setLogin(e,t=""){this.setUser(e),this.setToken(t),this.events.emit("login",{user:e,token:t})}setUser(e){this._user=e,this.events.emit("user-set",e)}updateUser(e){const t=Object.assign(Object.assign({},this.user),e);this.setUser(t),this.events.emit("user-update",t)}logout(){return r(this,void 0,void 0,(function*(){const e=this.user;this.setUser({}),this.setToken(""),this.events.emit("logout",e)}))}}s=o,Object.defineProperty(o,"instance",{enumerable:!0,configurable:!0,writable:!0,value:new o({host:""})}),Object.defineProperty(o,"http",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.http}),Object.defineProperty(o,"get",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.get}),Object.defineProperty(o,"head",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.head}),Object.defineProperty(o,"post",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.post}),Object.defineProperty(o,"put",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.put}),Object.defineProperty(o,"patch",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.patch}),Object.defineProperty(o,"delete",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.delete}),Object.defineProperty(o,"options",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.options}),Object.defineProperty(o,"connect",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.connect}),Object.defineProperty(o,"trace",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.trace}),Object.defineProperty(o,"setConfig",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setConfig}),Object.defineProperty(o,"setHost",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setHost}),Object.defineProperty(o,"setUser",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setUser}),Object.defineProperty(o,"updateUser",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.updateUser}),Object.defineProperty(o,"logout",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.logout}),Object.defineProperty(o,"setToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setToken}),Object.defineProperty(o,"setLogin",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setLogin}),Object.defineProperty(o,"addListener",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.addListener}),Object.defineProperty(o,"setInitData",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setInitData}),Object.defineProperty(o,"setCSRFToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.setCSRFToken}),Object.defineProperty(o,"getCSRFToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getCSRFToken}),Object.defineProperty(o,"triggerByCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.triggerByCacheGroup}),Object.defineProperty(o,"clearCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.clearCacheGroup}),Object.defineProperty(o,"updateCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.updateCacheGroup}),Object.defineProperty(o,"getToken",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getToken}),Object.defineProperty(o,"getUid",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getUid}),Object.defineProperty(o,"getUser",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.getUser}),Object.defineProperty(o,"user",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.user}),Object.defineProperty(o,"uid",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.uid}),Object.defineProperty(o,"deleteCacheGroup",{enumerable:!0,configurable:!0,writable:!0,value:s.instance.clearCacheGroup}),globalThis.apiSetInitData=o.setInitData,t.default=o}},t={},function i(s){var r=t[s];if(void 0!==r)return r.exports;var a=t[s]={exports:{}};return e[s].call(a.exports,a,a.exports,i),a.exports}(607);var e,t}));
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://API/webpack/universalModuleDefinition","webpack://API/./node_modules/charenc/charenc.js","webpack://API/./node_modules/crypt/crypt.js","webpack://API/./node_modules/easy-event-emitter/dist/index.js","webpack://API/./node_modules/is-buffer/index.js","webpack://API/./node_modules/md5/md5.js","webpack://API/./src/Core.ts","webpack://API/./src/Http.ts","webpack://API/./src/Queue.ts","webpack://API/./src/index.ts","webpack://API/webpack/bootstrap","webpack://API/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\t//API client for laravel\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\t//API client for laravel\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\t//API client for laravel\n\telse if(typeof exports === 'object')\n\t\texports[\"API\"] = factory();\n\t//API client for laravel\n\telse\n\t\troot[\"API\"] = factory();\n})(self, () => {\nreturn ","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.EventEmitter=t():e.EventEmitter=t()}(this,(()=>(()=>{\"use strict\";var e={828:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=class{constructor(e){Object.defineProperty(this,\"listeners\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"events\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),e?(this.listeners=e.listeners,this.events=e.events):(this.listeners=new Map,this.events={})}}},987:function(e,t,s){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const n=i(s(828));class r extends n.default{constructor(e,t,s,i=!1){super(s),Object.defineProperty(this,\"isStack\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"_name\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"handlers\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.isStack=i,this._name=e,this.handlers={callback:t,emit:[],remove:[]},this.push(this)}push(e){var t;this._name&&!this.events[this._name]&&(this.events[this._name]=new Map),this.events[this._name].set(e,e),this.listeners.has(e.handlers.callback)?null===(t=this.listeners.get(e.handlers.callback))||void 0===t||t.pushFork(e):this.listeners.set(e.handlers.callback,e)}pushFork(e){this.handlers.forks||(this.handlers.forks=[]),this.handlers.forks.push(e)}get name(){return\"string\"==typeof this._name?this._name:void 0}emit(e){if(\"function\"==typeof this.handlers.callback){this.handlers.callback(e);for(let e=0;e<this.handlers.emit.length;e++)this.handlers.emit[e]()}}hasHandler(e){return e===this.handlers.callback}count(){var e,t;return null!==(t=null===(e=this.events[this._name])||void 0===e?void 0:e.size)&&void 0!==t?t:0}remove(){if(!(this&&this.events&&this._name&&this.events[this._name]))return;this.events[this._name].delete(this),0===this.events[this._name].size&&delete this.events[this._name];const e=this.listeners.get(this.handlers.callback);if(e&&e.handlers.forks){const t=e.handlers.forks.indexOf(this);-1!==t&&e.handlers.forks.splice(t,1)}this.listeners.delete(this.handlers.callback),this.isStack||(this._name=void 0,this.handlers.callback=void 0);for(let e=0;e<this.handlers.remove.length;e++)this.handlers.remove[e]()}onEmit(e){this.handlers.emit.splice(0,1,e)}onRemove(e){this.handlers.remove.splice(0,1,e)}}t.default=r},518:function(e,t,s){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const n=i(s(987)),r=i(s(828));class l extends r.default{constructor(e){super(),this.emit=this.emit.bind(this),this.addListener=this.addListener.bind(this),this.removeAllListeners=this.removeAllListeners.bind(this),\"boolean\"==typeof e&&!0===e?this.events=l._events[l.globalName]:\"string\"==typeof e&&e!==l.globalName&&(l._events[e]||(l._events[e]={}),this.events=l._events[e])}emit(e,t){this.events[e]&&this.events[e].forEach((e=>e.emit(t)))}addListener(e,t){return new n.default(e,t,this)}listenerCount(e){var t,s;let i=0;return i=e?null!==(s=null===(t=this.events[e])||void 0===t?void 0:t.size)&&void 0!==s?s:0:this.listeners.size,i}removeListener(e){var t;null===(t=this.listeners.get(e))||void 0===t||t.remove()}removeAllListeners(){this.listeners.forEach((e=>{e.remove()}))}}Object.defineProperty(l,\"globalName\",{enumerable:!0,configurable:!0,writable:!0,value:\"__global\"}),Object.defineProperty(l,\"_events\",{enumerable:!0,configurable:!0,writable:!0,value:{[l.globalName]:{}}}),t.default=l},457:function(e,t,s){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const n=i(s(987)),r=i(s(607));class l extends n.default{constructor(e=[]){super(\"__stack\",(e=>{this.listeners.forEach((t=>t.isStack?null:t.emit(e)))}),new r.default,!0);for(let t=0;t<e.length;t++)this.push(e[t])}push(e){super.push(e)}remove(e){if(this&&this.events&&this._name&&this.events[this._name]){this.events[this._name].delete(null!=e?e:this);for(const[t,s]of this.listeners)e?s===e&&s.remove():s!==this&&s.remove();e||super.remove()}}get length(){return Number(this.listeners.size-1)}}t.default=l},607:function(e,t,s){var i,n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const r=n(s(518)),l=n(s(457));class a extends r.default{}i=a,Object.defineProperty(a,\"instance\",{enumerable:!0,configurable:!0,writable:!0,value:new a(!0)}),Object.defineProperty(a,\"emit\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.emit}),Object.defineProperty(a,\"addListener\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.addListener}),Object.defineProperty(a,\"removeListener\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.removeListener}),Object.defineProperty(a,\"removeAllListeners\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.removeAllListeners}),Object.defineProperty(a,\"Stack\",{enumerable:!0,configurable:!0,writable:!0,value:l.default}),t.default=a}},t={},s=function s(i){var n=t[i];if(void 0!==n)return n.exports;var r=t[i]={exports:{}};return e[i].call(r.exports,r,r.exports,s),r.exports}(607);return s.default})()));\n//# sourceMappingURL=index.js.map","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","(function(){\r\n var crypt = require('crypt'),\r\n utf8 = require('charenc').utf8,\r\n isBuffer = require('is-buffer'),\r\n bin = require('charenc').bin,\r\n\r\n // The core\r\n md5 = function (message, options) {\r\n // Convert to byte array\r\n if (message.constructor == String)\r\n if (options && options.encoding === 'binary')\r\n message = bin.stringToBytes(message);\r\n else\r\n message = utf8.stringToBytes(message);\r\n else if (isBuffer(message))\r\n message = Array.prototype.slice.call(message, 0);\r\n else if (!Array.isArray(message) && message.constructor !== Uint8Array)\r\n message = message.toString();\r\n // else, assume byte array already\r\n\r\n var m = crypt.bytesToWords(message),\r\n l = message.length * 8,\r\n a = 1732584193,\r\n b = -271733879,\r\n c = -1732584194,\r\n d = 271733878;\r\n\r\n // Swap endian\r\n for (var i = 0; i < m.length; i++) {\r\n m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |\r\n ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;\r\n }\r\n\r\n // Padding\r\n m[l >>> 5] |= 0x80 << (l % 32);\r\n m[(((l + 64) >>> 9) << 4) + 14] = l;\r\n\r\n // Method shortcuts\r\n var FF = md5._ff,\r\n GG = md5._gg,\r\n HH = md5._hh,\r\n II = md5._ii;\r\n\r\n for (var i = 0; i < m.length; i += 16) {\r\n\r\n var aa = a,\r\n bb = b,\r\n cc = c,\r\n dd = d;\r\n\r\n a = FF(a, b, c, d, m[i+ 0], 7, -680876936);\r\n d = FF(d, a, b, c, m[i+ 1], 12, -389564586);\r\n c = FF(c, d, a, b, m[i+ 2], 17, 606105819);\r\n b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);\r\n a = FF(a, b, c, d, m[i+ 4], 7, -176418897);\r\n d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);\r\n c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);\r\n b = FF(b, c, d, a, m[i+ 7], 22, -45705983);\r\n a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);\r\n d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);\r\n c = FF(c, d, a, b, m[i+10], 17, -42063);\r\n b = FF(b, c, d, a, m[i+11], 22, -1990404162);\r\n a = FF(a, b, c, d, m[i+12], 7, 1804603682);\r\n d = FF(d, a, b, c, m[i+13], 12, -40341101);\r\n c = FF(c, d, a, b, m[i+14], 17, -1502002290);\r\n b = FF(b, c, d, a, m[i+15], 22, 1236535329);\r\n\r\n a = GG(a, b, c, d, m[i+ 1], 5, -165796510);\r\n d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);\r\n c = GG(c, d, a, b, m[i+11], 14, 643717713);\r\n b = GG(b, c, d, a, m[i+ 0], 20, -373897302);\r\n a = GG(a, b, c, d, m[i+ 5], 5, -701558691);\r\n d = GG(d, a, b, c, m[i+10], 9, 38016083);\r\n c = GG(c, d, a, b, m[i+15], 14, -660478335);\r\n b = GG(b, c, d, a, m[i+ 4], 20, -405537848);\r\n a = GG(a, b, c, d, m[i+ 9], 5, 568446438);\r\n d = GG(d, a, b, c, m[i+14], 9, -1019803690);\r\n c = GG(c, d, a, b, m[i+ 3], 14, -187363961);\r\n b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);\r\n a = GG(a, b, c, d, m[i+13], 5, -1444681467);\r\n d = GG(d, a, b, c, m[i+ 2], 9, -51403784);\r\n c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);\r\n b = GG(b, c, d, a, m[i+12], 20, -1926607734);\r\n\r\n a = HH(a, b, c, d, m[i+ 5], 4, -378558);\r\n d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);\r\n c = HH(c, d, a, b, m[i+11], 16, 1839030562);\r\n b = HH(b, c, d, a, m[i+14], 23, -35309556);\r\n a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);\r\n d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);\r\n c = HH(c, d, a, b, m[i+ 7], 16, -155497632);\r\n b = HH(b, c, d, a, m[i+10], 23, -1094730640);\r\n a = HH(a, b, c, d, m[i+13], 4, 681279174);\r\n d = HH(d, a, b, c, m[i+ 0], 11, -358537222);\r\n c = HH(c, d, a, b, m[i+ 3], 16, -722521979);\r\n b = HH(b, c, d, a, m[i+ 6], 23, 76029189);\r\n a = HH(a, b, c, d, m[i+ 9], 4, -640364487);\r\n d = HH(d, a, b, c, m[i+12], 11, -421815835);\r\n c = HH(c, d, a, b, m[i+15], 16, 530742520);\r\n b = HH(b, c, d, a, m[i+ 2], 23, -995338651);\r\n\r\n a = II(a, b, c, d, m[i+ 0], 6, -198630844);\r\n d = II(d, a, b, c, m[i+ 7], 10, 1126891415);\r\n c = II(c, d, a, b, m[i+14], 15, -1416354905);\r\n b = II(b, c, d, a, m[i+ 5], 21, -57434055);\r\n a = II(a, b, c, d, m[i+12], 6, 1700485571);\r\n d = II(d, a, b, c, m[i+ 3], 10, -1894986606);\r\n c = II(c, d, a, b, m[i+10], 15, -1051523);\r\n b = II(b, c, d, a, m[i+ 1], 21, -2054922799);\r\n a = II(a, b, c, d, m[i+ 8], 6, 1873313359);\r\n d = II(d, a, b, c, m[i+15], 10, -30611744);\r\n c = II(c, d, a, b, m[i+ 6], 15, -1560198380);\r\n b = II(b, c, d, a, m[i+13], 21, 1309151649);\r\n a = II(a, b, c, d, m[i+ 4], 6, -145523070);\r\n d = II(d, a, b, c, m[i+11], 10, -1120210379);\r\n c = II(c, d, a, b, m[i+ 2], 15, 718787259);\r\n b = II(b, c, d, a, m[i+ 9], 21, -343485551);\r\n\r\n a = (a + aa) >>> 0;\r\n b = (b + bb) >>> 0;\r\n c = (c + cc) >>> 0;\r\n d = (d + dd) >>> 0;\r\n }\r\n\r\n return crypt.endian([a, b, c, d]);\r\n };\r\n\r\n // Auxiliary functions\r\n md5._ff = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & c | ~b & d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._gg = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & d | c & ~d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._hh = function (a, b, c, d, x, s, t) {\r\n var n = a + (b ^ c ^ d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._ii = function (a, b, c, d, x, s, t) {\r\n var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n\r\n // Package private blocksize\r\n md5._blocksize = 16;\r\n md5._digestsize = 16;\r\n\r\n module.exports = function (message, options) {\r\n if (message === undefined || message === null)\r\n throw new Error('Illegal argument ' + message);\r\n\r\n var digestbytes = crypt.wordsToBytes(md5(message, options));\r\n return options && options.asBytes ? digestbytes :\r\n options && options.asString ? bin.bytesToString(digestbytes) :\r\n crypt.bytesToHex(digestbytes);\r\n };\r\n\r\n})();\r\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst easy_event_emitter_1 = __importDefault(require(\"easy-event-emitter\"));\nclass Core {\n constructor(context) {\n Object.defineProperty(this, \"cache\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"initData\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"events\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"config\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"headers\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n });\n this.events = new easy_event_emitter_1.default();\n this.config = {\n host: 'http://127.0.0.1/',\n };\n this.cache = {};\n this.initData = {};\n this.setConfig = this.setConfig.bind(this);\n this.getConfig = this.getConfig.bind(this);\n this.setHost = this.setHost.bind(this);\n this.setInitData = this.setInitData.bind(this);\n this.triggerByCacheGroup = this.triggerByCacheGroup.bind(this);\n this.clearCacheGroup = this.clearCacheGroup.bind(this);\n this.updateCacheGroup = this.updateCacheGroup.bind(this);\n if (context) {\n Object.assign(this, {\n config: context === null || context === void 0 ? void 0 : context.config,\n events: context === null || context === void 0 ? void 0 : context.events,\n cache: context === null || context === void 0 ? void 0 : context.cache,\n initData: context === null || context === void 0 ? void 0 : context.initData,\n headers: context.headers\n });\n }\n }\n setConfig(config) {\n this.config = config;\n }\n getConfig() {\n return this.config;\n }\n getCache(key) {\n if (this.cache[key]) {\n if ((new Date()).getTime() <= (this.cache[key].time + 3600000000)) {\n return this.cache[key].data;\n }\n else {\n delete this.cache[key];\n }\n }\n }\n isJsonString(str) {\n try {\n JSON.parse(str);\n }\n catch (e) {\n return false;\n }\n return true;\n }\n jsonParse(str) {\n if (typeof this.config.reviver === 'function') {\n return JSON.parse(str, this.config.reviver);\n }\n if (this.config.dataReviver) {\n const replace = this.config.dataReviver;\n const dataKeys = Object.keys(replace);\n const ifKeys = {};\n dataKeys.forEach((key) => {\n var _a;\n const and = key.split('&');\n if (and.length > 1) {\n ifKeys.and = (_a = ifKeys.and) !== null && _a !== void 0 ? _a : {};\n if (key in ifKeys.and) {\n ifKeys.and[key].push(...and);\n }\n else {\n ifKeys.and[key] = and;\n }\n }\n });\n const data = JSON.parse(str, (key, value) => {\n if ((key in replace && typeof replace[key] === 'function')) {\n return replace[key](value);\n }\n return value;\n });\n if (ifKeys.and && data) {\n const dataKeys = Object.keys(data);\n if (ifKeys.and) {\n for (const [key, keys] of Object.entries(ifKeys.and)) {\n if (keys.length === dataKeys.length && keys.every((key) => dataKeys.includes(key))) {\n return replace[key](data);\n }\n }\n }\n }\n return data;\n }\n return JSON.parse(str);\n }\n setHost(host) {\n this.config.host = host;\n }\n setHeader(name, value) {\n this.headers[name] = value;\n this.events.emit('header-update', {\n name,\n value\n });\n }\n getHeader(name) {\n return this.headers[name];\n }\n getHeaders() {\n return Object.entries(this.headers).map(([name, value]) => ({ name, value }));\n }\n hasHeader(name) {\n return this.headers[name] ? true : false;\n }\n deleteHeader(name) {\n delete this.headers[name];\n }\n setCache(key, data, group) {\n this.cache[key] = {\n time: (new Date()).getTime(),\n data: data,\n group: group\n };\n }\n groupFromArray(groups, callback, withoutSplit = false) {\n const currentCallback = (group) => {\n if (typeof group === 'string' && !withoutSplit) {\n const params = group.split('.');\n const current = params.shift();\n callback(current, params);\n }\n else {\n callback(group);\n }\n };\n if (Array.isArray(groups)) {\n groups.map(currentCallback);\n }\n else if (typeof groups === 'string') {\n currentCallback(groups);\n }\n }\n triggerByCacheGroup(groups) {\n this.groupFromArray(groups, (group) => this.events.emit('trigger-request-by-cache-' + group, undefined));\n }\n clearCacheGroup(groups, data, fieldKey = 'id') {\n this.groupFromArray(groups, (group) => {\n if (data) {\n const clear = (cacheData) => {\n if ((fieldKey && (cacheData === null || cacheData === void 0 ? void 0 : cacheData[fieldKey]) === (data === null || data === void 0 ? void 0 : data[fieldKey])) || fieldKey === null) {\n for (const key in cacheData) {\n if (key in data) {\n return false;\n }\n }\n }\n return true;\n };\n for (const key in this.cache) {\n if (this.cache[key].group === group) {\n if (Array.isArray(this.cache[key].data)) {\n this.cache[key].data = Object.values(this.cache[key].data).filter(clear);\n }\n else {\n if (!clear(this.cache[key].data))\n delete this.cache[key];\n }\n }\n }\n }\n else {\n for (const key in this.cache) {\n if (this.cache[key].group === group) {\n delete this.cache[key];\n }\n }\n }\n });\n }\n setDataTree(obj, path, val) {\n const keys = path.split('.');\n const lastKey = keys.pop();\n const lastObj = keys.reduce((obj, key) => obj[key] = obj[key] || {}, obj);\n if (typeof lastKey === 'string') {\n lastObj[lastKey] = val;\n }\n return obj;\n }\n ;\n updateCacheGroup(groups, data, fieldKey = 'id') {\n const update = (cacheData) => {\n const retData = cacheData;\n const fieldList = fieldKey.split('.');\n if (fieldList.length > 1) {\n for (const key of fieldList) {\n cacheData = cacheData[key];\n }\n }\n if ((fieldKey && cacheData[fieldKey] === data[fieldKey]) || fieldKey === null) {\n for (const key in cacheData) {\n if (key in data) {\n cacheData[key] = data[key];\n }\n }\n }\n return retData;\n };\n this.groupFromArray(groups, (group, params) => {\n for (const key in this.cache) {\n if (this.cache[key].group === group) {\n if (Array.isArray(this.cache[key].data)) {\n this.cache[key].data = Object.values(this.cache[key].data).map(update);\n }\n else {\n this.cache[key].data = update(this.cache[key].data);\n }\n }\n }\n });\n }\n appendCacheGroup(group, data) {\n // for(const key in this.cache) {\n // \tif (this.cache[key].group === group) {\n // \t\tconsole.log(this.setDataTree(this.cache[key].data, 'data.test', 'tttttt'));\n // \t}\n // }\n //console.log(this.cache);\n }\n getCacheByIndex(index) {\n return this.cache[index];\n }\n deleteCache(key) {\n if (!this.cache[key])\n return;\n const group = this.cache[key].group;\n if (group) {\n this.clearCacheGroup(group);\n }\n delete this.cache[key];\n }\n setInitData(data) {\n this.initData = data;\n }\n}\nexports.default = Core;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst md5_1 = __importDefault(require(\"md5\"));\nconst Core_1 = __importDefault(require(\"./Core\"));\nconst Queue_1 = __importDefault(require(\"./Queue\"));\nconst easy_event_emitter_1 = __importDefault(require(\"easy-event-emitter\"));\nclass Http extends Core_1.default {\n constructor(method, params, context) {\n super(context);\n Object.defineProperty(this, \"cacheIndex\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"currentCache\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"currentEvents\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"requestParams\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"method\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"params\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"path\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"queueName\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"_promise\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"xhr\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"tryRequestCount\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 0\n });\n Object.defineProperty(this, \"tryRequestTimeout\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.currentEvents = new easy_event_emitter_1.default();\n this._promise = new Promise(() => { });\n this.queue = new Queue_1.default(this);\n this.cacheIndex = '';\n this.queueName = '';\n this.method = method;\n this.headers = Object.assign(Object.assign({}, this.headers), params.headers);\n this.params = Object.assign(Object.assign(Object.assign({}, this.config), { headers: this.headers }), params);\n this.path = this.params.path;\n this.requestParams = {\n method: this.method\n };\n this.handleSuccess = this.handleSuccess.bind(this);\n this.handleAbort = this.handleAbort.bind(this);\n this.handleFail = this.handleFail.bind(this);\n this.handleError = this.handleError.bind(this);\n this.handleComplete = this.handleComplete.bind(this);\n this.handleProgress = this.handleProgress.bind(this);\n this.setEmit = this.setEmit.bind(this);\n this.request = this.request.bind(this);\n this.httpRequest = this.httpRequest.bind(this);\n this.tryHttpRequest = this.tryHttpRequest.bind(this);\n this.initRequest();\n this.initCache();\n this.initQueue();\n }\n initRequest() {\n var _a;\n if (typeof XMLHttpRequest !== 'undefined') {\n this.xhr = new XMLHttpRequest();\n }\n if (this.params.clearUndifinedData)\n this.params.data = this.params.data ? this.cuteUndifinedParams(this.params.data) : this.params.data;\n if (['GET', 'HEAD'].includes(this.method)) {\n if (this.params.data)\n this.path = this.params.path + '?' + this.encodeUrlParams(this.params.data);\n if (this.method === 'HEAD') {\n this.requestParams.withoutResponse = true;\n }\n }\n if (['POST', 'PUT', 'CONNECT', 'PATH'].includes(this.method)) {\n this.requestParams.body = (_a = this.params.body) !== null && _a !== void 0 ? _a : JSON.stringify(this.params.data);\n }\n if (['PUT', 'DELETE', 'CONNECT', 'OPTIONS', 'TRACE'].includes(this.method)) {\n this.params.cache = false;\n }\n }\n initCache() {\n var _a;\n this.cacheIndex = (0, md5_1.default)(this.path + JSON.stringify(this.params.data));\n if (this.params.globalName) {\n if (this.initData[this.params.globalName]) {\n this.setCache(this.cacheIndex, this.initData[this.params.globalName], (typeof this.params.cache === 'boolean' ? undefined : this.params.cache));\n this.params.cache = (_a = this.params.cache) !== null && _a !== void 0 ? _a : true;\n delete this.initData[this.params.globalName];\n }\n }\n if (this.params.cache) {\n if (typeof this.params.cache === 'string') {\n this.events.addListener('trigger-request-by-cache-' + this.params.cache, this.request);\n }\n this._promise = new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {\n if (this.currentCache = this.getCache(this.cacheIndex)) {\n resolve(this.currentCache);\n this.handleSuccess(this.currentCache);\n this.handleComplete(this.currentCache);\n }\n }));\n }\n else {\n this.deleteCache(this.cacheIndex);\n }\n }\n get host() {\n return this.params.host;\n }\n get promise() {\n return this._promise;\n }\n initQueue() {\n this.queueName = this.params.queueThrottling ? (0, md5_1.default)(this.path) : this.cacheIndex;\n }\n setEmit(event, data) {\n this.currentEvents.emit(event, data);\n this.events.emit(event, {\n cacheIndex: this.cacheIndex,\n data\n });\n }\n //Заголовки от 200 до 299\n handleSuccess(data) {\n if (typeof this.params.success === 'function' && this.xhr)\n this.params.success(data, this.xhr);\n if (this.params.cacheUpdate && this.params.data) {\n this.groupFromArray(this.params.cacheUpdate, (cacheUpdate, params) => {\n var _a;\n this.updateCacheGroup(typeof cacheUpdate === 'string' ? cacheUpdate : cacheUpdate.group, (_a = this.params.data) !== null && _a !== void 0 ? _a : {}, typeof cacheUpdate === 'string' ? undefined : cacheUpdate.fieldKey);\n }, true);\n }\n if (this.params.cacheClear && this.params.data) {\n this.groupFromArray(this.params.cacheClear, (cacheClear) => {\n this.clearCacheGroup(typeof cacheClear === 'string' ? cacheClear : cacheClear.group, this.params.data, typeof cacheClear === 'string' ? undefined : cacheClear.fieldKey);\n });\n }\n this.setEmit('api-request-success', data);\n }\n handleAbort(data) {\n if (typeof this.params.abort === 'function') {\n this.params.abort(data);\n }\n this.setEmit('api-request-abort', data);\n }\n //Заголовки от 400 до 499\n handleFail(data) {\n if (typeof this.params.fail === 'function') {\n this.params.fail(data);\n }\n this.setEmit('api-request-fail', data);\n }\n //Все остальные\n handleError(data) {\n var _a;\n if (((_a = this.xhr) === null || _a === void 0 ? void 0 : _a.status) === 0 && this.xhr.readyState === 4) {\n return;\n }\n if (typeof this.params.error === 'function') {\n this.params.error(data);\n }\n this.setEmit('api-request-error', data);\n }\n handleComplete(data) {\n if (typeof this.params.complete === 'function') {\n this.params.complete(data);\n }\n this.setEmit('api-request-complete', data);\n }\n handleProgress(progress) {\n if (typeof this.params.progress === 'function') {\n this.params.progress(progress);\n }\n this.setEmit('api-request-progress', progress);\n }\n encodeUrlParams(data) {\n return Object.entries(data).map(([key, value]) => {\n if (Array.isArray(value)) {\n return value.map((val) => encodeURIComponent(key) + \"[]=\" + encodeURIComponent(val)).join('&');\n }\n if (typeof value === 'object') {\n value = JSON.stringify(value);\n }\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(value);\n }).join('&');\n }\n cuteUndifinedParams(data) {\n if (typeof data !== 'object' || data === null) {\n return data;\n }\n for (const key in data) {\n if (typeof data[key] === 'undefined') {\n delete data[key];\n }\n }\n return data;\n }\n tryHttpRequest() {\n return new Promise((resolve, reject) => {\n var _a;\n if (this.params.tryRequest && this.params.tryRequest > this.tryRequestCount) {\n if (this.tryRequestTimeout) {\n clearTimeout(this.tryRequestTimeout);\n }\n this.tryRequestTimeout = setTimeout(() => {\n var _a;\n (_a = this.xhr) === null || _a === void 0 ? void 0 : _a.abort();\n this.httpRequest()\n .then((value) => {\n resolve(value);\n this.tryRequestCount = 0;\n })\n .catch(reject);\n }, (_a = this.params.tryRequestDelay) !== null && _a !== void 0 ? _a : 1000);\n ++this.tryRequestCount;\n }\n else {\n reject();\n }\n });\n }\n fileRequest() {\n return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n if (!this.params.file)\n return;\n const data = this.params.file;\n const chunkSize = this.params.fileSizeChunk ? this.params.fileSizeChunk * 1024 * 1024 : this.params.file.byteLength;\n const totalChunks = Math.ceil(this.params.file.byteLength / chunkSize);\n let fileId = this.params.fileIdByServer ? undefined : `file-${new Date().getTime()}`;\n for (let i = 0; i < totalChunks; i++) {\n try {\n const start = i * chunkSize;\n const end = Math.min(start + chunkSize, data.byteLength);\n const chunk = data.slice(start, end);\n const headers = Object.assign({}, this.headers);\n let body = undefined;\n if (this.params.fileType === 'binary') {\n const u8 = chunk instanceof Uint8Array ? chunk : new Uint8Array(chunk);\n headers['Content-Type'] = 'application/octet-stream';\n headers['Content-Range'] = `bytes ${start}-${end - 1}/${this.params.file.byteLength}`;\n headers['X-Chunk-Index'] = String(i);\n headers['X-Chunk-Total'] = String(totalChunks);\n if (fileId && (!this.params.fileIdByServer || (this.params.fileIdByServer && i > 0))) {\n headers[typeof this.params.fileIdByServer === 'string' ? this.params.fileIdByServer : 'X-File-ID'] = fileId;\n }\n body = u8;\n }\n else {\n const formData = new FormData();\n formData.append(\"file\", new Blob([chunk]));\n if (fileId && (!this.params.fileIdByServer || (this.params.fileIdByServer && i > 0))) {\n formData.append(typeof this.params.fileIdByServer === 'string' ? this.params.fileIdByServer : \"file_id\", fileId);\n }\n formData.append(\"chunk_index\", String(i));\n formData.append(\"total_chunks\", String(totalChunks));\n if (this.params.data && (totalChunks - 1) === i) {\n for (const key in this.params.data) {\n formData.append(key, this.params.data[key]);\n }\n }\n delete headers['Content-Type'];\n body = formData;\n }\n delete headers['Accept'];\n const http = new Http(this.method, Object.assign(Object.assign({}, this.params), { file: undefined, headers, data: undefined, fileSizeChunk: undefined, body, success: (totalChunks - 1 > i) ? undefined : (data) => {\n resolve(data);\n this.handleSuccess(data);\n }, complete: (totalChunks - 1 > i) ? undefined : (e) => {\n this.handleComplete(e);\n }, progress: (progres) => {\n const loaded = start + progres.loaded;\n this.handleProgress({\n percent: (loaded / data.byteLength * 100),\n total: data.byteLength,\n loaded\n });\n }, fail: reject, error: reject }), this);\n this.xhr = http.xhr;\n const result = yield http.request(true).promise;\n if (result === null || result === void 0 ? void 0 : result.file_id) {\n fileId = result === null || result === void 0 ? void 0 : result.file_id;\n }\n }\n catch (e) {\n reject(e);\n break;\n }\n }\n }));\n }\n httpRequest() {\n return new Promise((resolve, reject) => {\n var _a;\n if (typeof this.xhr === 'undefined')\n return;\n try {\n this.xhr.open(this.method, this.params.host + this.path, (_a = this.params.requestAsync) !== null && _a !== void 0 ? _a : true);\n if (this.params.timeout) {\n this.xhr.timeout = this.params.timeout;\n }\n for (const header in this.headers) {\n this.xhr.setRequestHeader(header, this.headers[header]);\n }\n if (this.xhr.upload) {\n this.xhr.upload.onprogress = ({ lengthComputable, loaded, total }) => {\n if (lengthComputable) {\n this.handleProgress({\n percent: (loaded / total * 100),\n total,\n loaded\n });\n }\n };\n }\n this.xhr.onabort = () => {\n reject({\n type: 'abort',\n message: 'request abort'\n });\n this.handleAbort({\n message: 'request abort'\n });\n };\n this.xhr.ontimeout = () => {\n this.tryHttpRequest()\n .then(resolve)\n .catch(reject);\n };\n this.xhr.onerror = () => __awaiter(this, void 0, void 0, function* () {\n yield this.tryHttpRequest()\n .then(resolve)\n .catch(reject);\n reject({\n type: 'error',\n message: 'request error'\n });\n this.handleError({\n message: 'request error'\n });\n });\n this.xhr.onreadystatechange = () => {\n var _a, _b;\n if (((_a = this.xhr) === null || _a === void 0 ? void 0 : _a.readyState) !== XMLHttpRequest.DONE)\n return;\n const result = (!this.requestParams.withoutResponse && this.isJsonString(this.xhr.responseText)) ? this.jsonParse(this.xhr.responseText) : {};\n if (((_b = this.xhr) === null || _b === void 0 ? void 0 : _b.status) >= 200 && this.xhr.status <= 299) {\n if (this.params.cache) {\n this.setCache(this.cacheIndex, result, (typeof this.params.cache === 'boolean' ? undefined : this.params.cache));\n }\n resolve(result);\n this.handleSuccess(result);\n }\n else {\n if (this.xhr.status >= 100 && this.xhr.status <= 500) {\n reject(result);\n this.handleFail(result);\n }\n }\n this.handleComplete(result);\n this.queue.clear(this.queueName);\n };\n this.xhr.send(this.requestParams.body);\n }\n catch (e) {\n reject(e);\n }\n });\n }\n streamRequest() {\n return new Promise((resolve, reject) => {\n fetch(this.params.host + this.path, {\n method: this.method,\n headers: this.headers,\n body: this.requestParams.body,\n }).then((response) => {\n this.handleSuccess(response);\n resolve(response);\n }).catch((e) => {\n this.handleFail(e);\n reject(e);\n });\n });\n }\n request(force) {\n if (!force && !this.params.forceRequest && (this.currentCache || this.queue.push(this.queueName)))\n return this;\n this._promise = new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n try {\n let result;\n if (this.params.stream) {\n result = (yield this.streamRequest());\n }\n else if (this.params.file) {\n result = (yield this.fileRequest());\n }\n else {\n result = (yield this.httpRequest());\n }\n resolve(result);\n }\n catch (e) {\n reject(e);\n }\n }));\n return this;\n }\n abort() {\n var _a;\n (_a = this.xhr) === null || _a === void 0 ? void 0 : _a.abort();\n }\n addListener(event, callback) {\n return this.currentEvents.addListener(event, callback);\n }\n updateCache(data, fieldKey = 'id') {\n const cache = this.getCacheByIndex(this.cacheIndex);\n if (cache && cache.group) {\n this.updateCacheGroup(cache.group, data, fieldKey);\n }\n }\n clearCache(data, fieldKey = 'id') {\n if (data) {\n const cache = this.getCacheByIndex(this.cacheIndex);\n if (cache && cache.group) {\n this.clearCacheGroup(cache.group, data, fieldKey);\n }\n }\n else {\n this.deleteCache(this.cacheIndex);\n }\n }\n}\nexports.default = Http;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst Http_1 = __importDefault(require(\"./Http\"));\nclass Queue {\n constructor(http) {\n Object.defineProperty(this, \"queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: Queue._Queue\n });\n Object.defineProperty(this, \"http\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.http = http;\n this.has = this.has.bind(this);\n this.get = this.get.bind(this);\n this.clear = this.clear.bind(this);\n this.push = this.push.bind(this);\n }\n has(request) {\n return request in this.queue;\n }\n get(request) {\n return this.has(request) ? this.queue[request] : undefined;\n }\n clear(request) {\n if (this.has(request)) {\n delete this.queue[request];\n }\n }\n push(request) {\n const refInstance = this.get(request);\n if (!refInstance) {\n this.queue[request] = this.http;\n }\n else {\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-success', this.http.handleSuccess);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-error', this.http.handleError);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-fail', this.http.handleFail);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-complete', this.http.handleComplete);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-abort', this.http.handleAbort);\n }\n return refInstance instanceof Http_1.default;\n }\n}\nObject.defineProperty(Queue, \"_Queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n});\nexports.default = Queue;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst Core_1 = __importDefault(require(\"./Core\"));\nconst Http_1 = __importDefault(require(\"./Http\"));\n/** Laravel API Client */\nclass API extends Core_1.default {\n constructor(config) {\n super();\n Object.defineProperty(this, \"_user\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"token\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"csrfToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.headers = Object.assign({ 'Accept': 'application/json', 'Content-Type': 'application/json' }, config.headers);\n this.setConfig(config);\n this._user = {};\n this.setToken = this.setToken.bind(this);\n this.setCSRFToken = this.setCSRFToken.bind(this);\n this.setLogin = this.setLogin.bind(this);\n this.setUser = this.setUser.bind(this);\n this.updateUser = this.updateUser.bind(this);\n this.logout = this.logout.bind(this);\n this.getToken = this.getToken.bind(this);\n this.getCSRFToken = this.getCSRFToken.bind(this);\n this.http = this.http.bind(this);\n this.get = this.get.bind(this);\n this.head = this.head.bind(this);\n this.post = this.post.bind(this);\n this.put = this.put.bind(this);\n this.patch = this.patch.bind(this);\n this.delete = this.delete.bind(this);\n this.options = this.options.bind(this);\n this.connect = this.connect.bind(this);\n this.trace = this.trace.bind(this);\n this.getUid = this.getUid.bind(this);\n this.getUser = this.getUser.bind(this);\n this.addListener = this.addListener.bind(this);\n }\n http(method, params) {\n const http = new Http_1.default(method, params, this);\n if (this.token)\n http.setHeader('Authorization', `Bearer ${this.token}`);\n if (this.csrfToken)\n http.setHeader('X-CSRF-TOKEN', this.csrfToken);\n return http;\n }\n get(params) {\n return this.http('GET', params).request();\n }\n head(params) {\n return this.http('HEAD', params).request();\n }\n post(params) {\n return this.http('POST', params).request();\n }\n put(params) {\n return this.http('PUT', params).request();\n }\n patch(params) {\n return this.http('PATCH', params).request();\n }\n delete(params) {\n return this.http('DELETE', params).request();\n }\n options(params) {\n return this.http('OPTIONS', params).request();\n }\n connect(params) {\n return this.http('CONNECT', params).request();\n }\n trace(params) {\n return this.http('TRACE', params).request();\n }\n addListener(event, callback) {\n return this.events.addListener(event, callback);\n }\n setToken(token) {\n this.token = token;\n this.events.emit('token-update', token);\n }\n setCSRFToken(csrfToken) {\n this.csrfToken = csrfToken;\n this.events.emit('csrf-token-update', csrfToken);\n }\n getToken() {\n return this.token;\n }\n getCSRFToken() {\n return this.csrfToken;\n }\n getUid() {\n return (typeof this._user === 'object' && 'id' in this._user) ? Number(this._user.id) : 0;\n }\n getUser() {\n return this._user;\n }\n get uid() {\n return this.getUid();\n }\n get user() {\n return this.getUser();\n }\n get host() {\n return this.config.host;\n }\n setLogin(user, token = '') {\n this.setUser(user);\n this.setToken(token);\n this.events.emit('login', {\n user,\n token\n });\n }\n setUser(user) {\n this._user = user;\n this.events.emit('user-set', user);\n }\n updateUser(user) {\n const updatedUser = Object.assign(Object.assign({}, this.user), user);\n this.setUser(updatedUser);\n this.events.emit('user-update', updatedUser);\n }\n logout() {\n return __awaiter(this, void 0, void 0, function* () {\n const user = this.user;\n this.setUser({});\n this.setToken('');\n this.events.emit('logout', user);\n });\n }\n}\n_a = API;\nObject.defineProperty(API, \"instance\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: new API({\n host: ''\n })\n});\nObject.defineProperty(API, \"http\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.http\n});\nObject.defineProperty(API, \"get\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.get\n});\nObject.defineProperty(API, \"head\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.head\n});\nObject.defineProperty(API, \"post\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.post\n});\nObject.defineProperty(API, \"put\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.put\n});\nObject.defineProperty(API, \"patch\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.patch\n});\nObject.defineProperty(API, \"delete\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.delete\n});\nObject.defineProperty(API, \"options\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.options\n});\nObject.defineProperty(API, \"connect\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.connect\n});\nObject.defineProperty(API, \"trace\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.trace\n});\nObject.defineProperty(API, \"setConfig\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setConfig\n});\nObject.defineProperty(API, \"setHost\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setHost\n});\nObject.defineProperty(API, \"setUser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setUser\n});\nObject.defineProperty(API, \"updateUser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.updateUser\n});\nObject.defineProperty(API, \"logout\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.logout\n});\nObject.defineProperty(API, \"setToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setToken\n});\nObject.defineProperty(API, \"setLogin\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setLogin\n});\nObject.defineProperty(API, \"addListener\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.addListener\n});\nObject.defineProperty(API, \"setInitData\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setInitData\n});\nObject.defineProperty(API, \"setCSRFToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setCSRFToken\n});\nObject.defineProperty(API, \"getCSRFToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getCSRFToken\n});\nObject.defineProperty(API, \"triggerByCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.triggerByCacheGroup\n});\nObject.defineProperty(API, \"clearCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.clearCacheGroup\n});\nObject.defineProperty(API, \"updateCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.updateCacheGroup\n});\nObject.defineProperty(API, \"getToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getToken\n});\nObject.defineProperty(API, \"getUid\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getUid\n});\nObject.defineProperty(API, \"getUser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getUser\n});\nObject.defineProperty(API, \"user\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.user\n});\nObject.defineProperty(API, \"uid\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.uid\n});\n/**\n * @deprecated The method should not be used\n */\nObject.defineProperty(API, \"deleteCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.clearCacheGroup\n});\nglobalThis.apiSetInitData = API.setInitData;\nexports.default = API;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(607);\n"],"names":["root","factory","exports","module","define","amd","self","charenc","utf8","stringToBytes","str","bin","unescape","encodeURIComponent","bytesToString","bytes","decodeURIComponent","escape","i","length","push","charCodeAt","String","fromCharCode","join","base64map","crypt","rotl","n","b","rotr","endian","constructor","Number","randomBytes","Math","floor","random","bytesToWords","words","wordsToBytes","bytesToHex","hex","toString","hexToBytes","c","parseInt","substr","bytesToBase64","base64","triplet","j","charAt","base64ToBytes","replace","imod4","indexOf","pow","t","e","Object","defineProperty","value","default","this","enumerable","configurable","writable","listeners","events","Map","s","__importDefault","__esModule","r","super","isStack","_name","handlers","callback","emit","remove","set","has","get","pushFork","forks","name","hasHandler","count","size","delete","splice","onEmit","onRemove","l","bind","addListener","removeAllListeners","_events","globalName","forEach","listenerCount","removeListener","a","instance","call","isBuffer","obj","readFloatLE","slice","isSlowBuffer","_isBuffer","md5","message","options","encoding","Array","prototype","isArray","Uint8Array","m","d","FF","_ff","GG","_gg","HH","_hh","II","_ii","aa","bb","cc","dd","x","_blocksize","_digestsize","Error","digestbytes","asBytes","asString","mod","easy_event_emitter_1","context","config","host","cache","initData","setConfig","getConfig","setHost","setInitData","triggerByCacheGroup","clearCacheGroup","updateCacheGroup","assign","headers","getCache","key","Date","getTime","time","data","isJsonString","JSON","parse","jsonParse","reviver","dataReviver","dataKeys","keys","ifKeys","_a","and","split","entries","every","includes","setHeader","getHeader","getHeaders","map","hasHeader","deleteHeader","setCache","group","groupFromArray","groups","withoutSplit","currentCallback","params","current","shift","undefined","fieldKey","clear","cacheData","values","filter","setDataTree","path","val","lastKey","pop","lastObj","reduce","update","retData","fieldList","appendCacheGroup","getCacheByIndex","index","deleteCache","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","then","apply","md5_1","Core_1","Queue_1","Http","method","currentEvents","_promise","queue","cacheIndex","queueName","requestParams","handleSuccess","handleAbort","handleFail","handleError","handleComplete","handleProgress","setEmit","request","httpRequest","tryHttpRequest","initRequest","initCache","initQueue","XMLHttpRequest","xhr","clearUndifinedData","cuteUndifinedParams","encodeUrlParams","withoutResponse","body","stringify","currentCache","promise","queueThrottling","event","success","cacheUpdate","cacheClear","abort","fail","status","readyState","error","complete","progress","tryRequest","tryRequestCount","tryRequestTimeout","clearTimeout","setTimeout","catch","tryRequestDelay","fileRequest","file","chunkSize","fileSizeChunk","byteLength","totalChunks","ceil","fileId","fileIdByServer","start","end","min","chunk","fileType","u8","formData","FormData","append","Blob","http","progres","loaded","percent","total","file_id","open","requestAsync","timeout","header","setRequestHeader","upload","onprogress","lengthComputable","onabort","type","ontimeout","onerror","onreadystatechange","_b","DONE","responseText","send","streamRequest","fetch","response","force","forceRequest","stream","updateCache","clearCache","Http_1","Queue","_Queue","refInstance","API","_user","setToken","setCSRFToken","setLogin","setUser","updateUser","logout","getToken","getCSRFToken","head","post","put","patch","connect","trace","getUid","getUser","token","csrfToken","id","uid","user","updatedUser","globalThis","apiSetInitData","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://API/webpack/universalModuleDefinition","webpack://API/./node_modules/charenc/charenc.js","webpack://API/./node_modules/crypt/crypt.js","webpack://API/./node_modules/easy-event-emitter/dist/index.js","webpack://API/./node_modules/is-buffer/index.js","webpack://API/./node_modules/md5/md5.js","webpack://API/./src/Core.ts","webpack://API/./src/Http.ts","webpack://API/./src/Queue.ts","webpack://API/./src/index.ts","webpack://API/webpack/bootstrap","webpack://API/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\t//API client for laravel\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\t//API client for laravel\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\t//API client for laravel\n\telse if(typeof exports === 'object')\n\t\texports[\"API\"] = factory();\n\t//API client for laravel\n\telse\n\t\troot[\"API\"] = factory();\n})(typeof self !== \"undefined\" ? self : this, () => {\nreturn ","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.EventEmitter=t():e.EventEmitter=t()}(this,(()=>(()=>{\"use strict\";var e={828:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.default=class{constructor(e){Object.defineProperty(this,\"listeners\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"events\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),e?(this.listeners=e.listeners,this.events=e.events):(this.listeners=new Map,this.events={})}}},987:function(e,t,s){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const n=i(s(828));class r extends n.default{constructor(e,t,s,i=!1){super(s),Object.defineProperty(this,\"isStack\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"_name\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"handlers\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.isStack=i,this._name=e,this.handlers={callback:t,emit:[],remove:[]},this.push(this)}push(e){var t;this._name&&!this.events[this._name]&&(this.events[this._name]=new Map),this.events[this._name].set(e,e),this.listeners.has(e.handlers.callback)?null===(t=this.listeners.get(e.handlers.callback))||void 0===t||t.pushFork(e):this.listeners.set(e.handlers.callback,e)}pushFork(e){this.handlers.forks||(this.handlers.forks=[]),this.handlers.forks.push(e)}get name(){return\"string\"==typeof this._name?this._name:void 0}emit(e){if(\"function\"==typeof this.handlers.callback){this.handlers.callback(e);for(let e=0;e<this.handlers.emit.length;e++)this.handlers.emit[e]()}}hasHandler(e){return e===this.handlers.callback}count(){var e,t;return null!==(t=null===(e=this.events[this._name])||void 0===e?void 0:e.size)&&void 0!==t?t:0}remove(){if(!(this&&this.events&&this._name&&this.events[this._name]))return;this.events[this._name].delete(this),0===this.events[this._name].size&&delete this.events[this._name];const e=this.listeners.get(this.handlers.callback);if(e&&e.handlers.forks){const t=e.handlers.forks.indexOf(this);-1!==t&&e.handlers.forks.splice(t,1)}this.listeners.delete(this.handlers.callback),this.isStack||(this._name=void 0,this.handlers.callback=void 0);for(let e=0;e<this.handlers.remove.length;e++)this.handlers.remove[e]()}onEmit(e){this.handlers.emit.splice(0,1,e)}onRemove(e){this.handlers.remove.splice(0,1,e)}}t.default=r},518:function(e,t,s){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const n=i(s(987)),r=i(s(828));class l extends r.default{constructor(e){super(),this.emit=this.emit.bind(this),this.addListener=this.addListener.bind(this),this.removeAllListeners=this.removeAllListeners.bind(this),\"boolean\"==typeof e&&!0===e?this.events=l._events[l.globalName]:\"string\"==typeof e&&e!==l.globalName&&(l._events[e]||(l._events[e]={}),this.events=l._events[e])}emit(e,t){this.events[e]&&this.events[e].forEach((e=>e.emit(t)))}addListener(e,t){return new n.default(e,t,this)}listenerCount(e){var t,s;let i=0;return i=e?null!==(s=null===(t=this.events[e])||void 0===t?void 0:t.size)&&void 0!==s?s:0:this.listeners.size,i}removeListener(e){var t;null===(t=this.listeners.get(e))||void 0===t||t.remove()}removeAllListeners(){this.listeners.forEach((e=>{e.remove()}))}}Object.defineProperty(l,\"globalName\",{enumerable:!0,configurable:!0,writable:!0,value:\"__global\"}),Object.defineProperty(l,\"_events\",{enumerable:!0,configurable:!0,writable:!0,value:{[l.globalName]:{}}}),t.default=l},457:function(e,t,s){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const n=i(s(987)),r=i(s(607));class l extends n.default{constructor(e=[]){super(\"__stack\",(e=>{this.listeners.forEach((t=>t.isStack?null:t.emit(e)))}),new r.default,!0);for(let t=0;t<e.length;t++)this.push(e[t])}push(e){super.push(e)}remove(e){if(this&&this.events&&this._name&&this.events[this._name]){this.events[this._name].delete(null!=e?e:this);for(const[t,s]of this.listeners)e?s===e&&s.remove():s!==this&&s.remove();e||super.remove()}}get length(){return Number(this.listeners.size-1)}}t.default=l},607:function(e,t,s){var i,n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,\"__esModule\",{value:!0});const r=n(s(518)),l=n(s(457));class a extends r.default{}i=a,Object.defineProperty(a,\"instance\",{enumerable:!0,configurable:!0,writable:!0,value:new a(!0)}),Object.defineProperty(a,\"emit\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.emit}),Object.defineProperty(a,\"addListener\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.addListener}),Object.defineProperty(a,\"removeListener\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.removeListener}),Object.defineProperty(a,\"removeAllListeners\",{enumerable:!0,configurable:!0,writable:!0,value:i.instance.removeAllListeners}),Object.defineProperty(a,\"Stack\",{enumerable:!0,configurable:!0,writable:!0,value:l.default}),t.default=a}},t={},s=function s(i){var n=t[i];if(void 0!==n)return n.exports;var r=t[i]={exports:{}};return e[i].call(r.exports,r,r.exports,s),r.exports}(607);return s.default})()));\n//# sourceMappingURL=index.js.map","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","(function(){\r\n var crypt = require('crypt'),\r\n utf8 = require('charenc').utf8,\r\n isBuffer = require('is-buffer'),\r\n bin = require('charenc').bin,\r\n\r\n // The core\r\n md5 = function (message, options) {\r\n // Convert to byte array\r\n if (message.constructor == String)\r\n if (options && options.encoding === 'binary')\r\n message = bin.stringToBytes(message);\r\n else\r\n message = utf8.stringToBytes(message);\r\n else if (isBuffer(message))\r\n message = Array.prototype.slice.call(message, 0);\r\n else if (!Array.isArray(message) && message.constructor !== Uint8Array)\r\n message = message.toString();\r\n // else, assume byte array already\r\n\r\n var m = crypt.bytesToWords(message),\r\n l = message.length * 8,\r\n a = 1732584193,\r\n b = -271733879,\r\n c = -1732584194,\r\n d = 271733878;\r\n\r\n // Swap endian\r\n for (var i = 0; i < m.length; i++) {\r\n m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |\r\n ((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;\r\n }\r\n\r\n // Padding\r\n m[l >>> 5] |= 0x80 << (l % 32);\r\n m[(((l + 64) >>> 9) << 4) + 14] = l;\r\n\r\n // Method shortcuts\r\n var FF = md5._ff,\r\n GG = md5._gg,\r\n HH = md5._hh,\r\n II = md5._ii;\r\n\r\n for (var i = 0; i < m.length; i += 16) {\r\n\r\n var aa = a,\r\n bb = b,\r\n cc = c,\r\n dd = d;\r\n\r\n a = FF(a, b, c, d, m[i+ 0], 7, -680876936);\r\n d = FF(d, a, b, c, m[i+ 1], 12, -389564586);\r\n c = FF(c, d, a, b, m[i+ 2], 17, 606105819);\r\n b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);\r\n a = FF(a, b, c, d, m[i+ 4], 7, -176418897);\r\n d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);\r\n c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);\r\n b = FF(b, c, d, a, m[i+ 7], 22, -45705983);\r\n a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);\r\n d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);\r\n c = FF(c, d, a, b, m[i+10], 17, -42063);\r\n b = FF(b, c, d, a, m[i+11], 22, -1990404162);\r\n a = FF(a, b, c, d, m[i+12], 7, 1804603682);\r\n d = FF(d, a, b, c, m[i+13], 12, -40341101);\r\n c = FF(c, d, a, b, m[i+14], 17, -1502002290);\r\n b = FF(b, c, d, a, m[i+15], 22, 1236535329);\r\n\r\n a = GG(a, b, c, d, m[i+ 1], 5, -165796510);\r\n d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);\r\n c = GG(c, d, a, b, m[i+11], 14, 643717713);\r\n b = GG(b, c, d, a, m[i+ 0], 20, -373897302);\r\n a = GG(a, b, c, d, m[i+ 5], 5, -701558691);\r\n d = GG(d, a, b, c, m[i+10], 9, 38016083);\r\n c = GG(c, d, a, b, m[i+15], 14, -660478335);\r\n b = GG(b, c, d, a, m[i+ 4], 20, -405537848);\r\n a = GG(a, b, c, d, m[i+ 9], 5, 568446438);\r\n d = GG(d, a, b, c, m[i+14], 9, -1019803690);\r\n c = GG(c, d, a, b, m[i+ 3], 14, -187363961);\r\n b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);\r\n a = GG(a, b, c, d, m[i+13], 5, -1444681467);\r\n d = GG(d, a, b, c, m[i+ 2], 9, -51403784);\r\n c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);\r\n b = GG(b, c, d, a, m[i+12], 20, -1926607734);\r\n\r\n a = HH(a, b, c, d, m[i+ 5], 4, -378558);\r\n d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);\r\n c = HH(c, d, a, b, m[i+11], 16, 1839030562);\r\n b = HH(b, c, d, a, m[i+14], 23, -35309556);\r\n a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);\r\n d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);\r\n c = HH(c, d, a, b, m[i+ 7], 16, -155497632);\r\n b = HH(b, c, d, a, m[i+10], 23, -1094730640);\r\n a = HH(a, b, c, d, m[i+13], 4, 681279174);\r\n d = HH(d, a, b, c, m[i+ 0], 11, -358537222);\r\n c = HH(c, d, a, b, m[i+ 3], 16, -722521979);\r\n b = HH(b, c, d, a, m[i+ 6], 23, 76029189);\r\n a = HH(a, b, c, d, m[i+ 9], 4, -640364487);\r\n d = HH(d, a, b, c, m[i+12], 11, -421815835);\r\n c = HH(c, d, a, b, m[i+15], 16, 530742520);\r\n b = HH(b, c, d, a, m[i+ 2], 23, -995338651);\r\n\r\n a = II(a, b, c, d, m[i+ 0], 6, -198630844);\r\n d = II(d, a, b, c, m[i+ 7], 10, 1126891415);\r\n c = II(c, d, a, b, m[i+14], 15, -1416354905);\r\n b = II(b, c, d, a, m[i+ 5], 21, -57434055);\r\n a = II(a, b, c, d, m[i+12], 6, 1700485571);\r\n d = II(d, a, b, c, m[i+ 3], 10, -1894986606);\r\n c = II(c, d, a, b, m[i+10], 15, -1051523);\r\n b = II(b, c, d, a, m[i+ 1], 21, -2054922799);\r\n a = II(a, b, c, d, m[i+ 8], 6, 1873313359);\r\n d = II(d, a, b, c, m[i+15], 10, -30611744);\r\n c = II(c, d, a, b, m[i+ 6], 15, -1560198380);\r\n b = II(b, c, d, a, m[i+13], 21, 1309151649);\r\n a = II(a, b, c, d, m[i+ 4], 6, -145523070);\r\n d = II(d, a, b, c, m[i+11], 10, -1120210379);\r\n c = II(c, d, a, b, m[i+ 2], 15, 718787259);\r\n b = II(b, c, d, a, m[i+ 9], 21, -343485551);\r\n\r\n a = (a + aa) >>> 0;\r\n b = (b + bb) >>> 0;\r\n c = (c + cc) >>> 0;\r\n d = (d + dd) >>> 0;\r\n }\r\n\r\n return crypt.endian([a, b, c, d]);\r\n };\r\n\r\n // Auxiliary functions\r\n md5._ff = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & c | ~b & d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._gg = function (a, b, c, d, x, s, t) {\r\n var n = a + (b & d | c & ~d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._hh = function (a, b, c, d, x, s, t) {\r\n var n = a + (b ^ c ^ d) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n md5._ii = function (a, b, c, d, x, s, t) {\r\n var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;\r\n return ((n << s) | (n >>> (32 - s))) + b;\r\n };\r\n\r\n // Package private blocksize\r\n md5._blocksize = 16;\r\n md5._digestsize = 16;\r\n\r\n module.exports = function (message, options) {\r\n if (message === undefined || message === null)\r\n throw new Error('Illegal argument ' + message);\r\n\r\n var digestbytes = crypt.wordsToBytes(md5(message, options));\r\n return options && options.asBytes ? digestbytes :\r\n options && options.asString ? bin.bytesToString(digestbytes) :\r\n crypt.bytesToHex(digestbytes);\r\n };\r\n\r\n})();\r\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst easy_event_emitter_1 = __importDefault(require(\"easy-event-emitter\"));\nclass Core {\n constructor(context) {\n Object.defineProperty(this, \"cache\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"initData\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"events\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"config\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"headers\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n });\n this.events = new easy_event_emitter_1.default();\n this.config = {\n host: 'http://127.0.0.1/',\n };\n this.cache = {};\n this.initData = {};\n this.setConfig = this.setConfig.bind(this);\n this.getConfig = this.getConfig.bind(this);\n this.setHost = this.setHost.bind(this);\n this.setInitData = this.setInitData.bind(this);\n this.triggerByCacheGroup = this.triggerByCacheGroup.bind(this);\n this.clearCacheGroup = this.clearCacheGroup.bind(this);\n this.updateCacheGroup = this.updateCacheGroup.bind(this);\n this.setGlobalInitData = this.setGlobalInitData.bind(this);\n if (context) {\n Object.assign(this, {\n config: context === null || context === void 0 ? void 0 : context.config,\n events: context === null || context === void 0 ? void 0 : context.events,\n cache: context === null || context === void 0 ? void 0 : context.cache,\n initData: context === null || context === void 0 ? void 0 : context.initData,\n headers: context.headers\n });\n }\n }\n setConfig(config) {\n this.config = config;\n }\n getConfig() {\n return this.config;\n }\n getCache(key) {\n if (this.cache[key]) {\n if ((new Date()).getTime() <= (this.cache[key].time + 3600000000)) {\n return this.cache[key].data;\n }\n else {\n delete this.cache[key];\n }\n }\n }\n isJsonString(str) {\n try {\n JSON.parse(str);\n }\n catch (e) {\n return false;\n }\n return true;\n }\n dataPrepare(data) {\n const json = JSON.stringify(data);\n return this.jsonParse(json);\n }\n jsonParse(str) {\n if (typeof this.config.reviver === 'function') {\n return JSON.parse(str, this.config.reviver);\n }\n if (this.config.dataReviver) {\n const replace = this.config.dataReviver;\n const dataKeys = Object.keys(replace);\n const ifKeys = {};\n dataKeys.forEach((key) => {\n var _a;\n const and = key.split('&');\n if (and.length > 1) {\n ifKeys.and = (_a = ifKeys.and) !== null && _a !== void 0 ? _a : {};\n if (key in ifKeys.and) {\n ifKeys.and[key].push(...and);\n }\n else {\n ifKeys.and[key] = and;\n }\n }\n });\n const data = JSON.parse(str, (key, value) => {\n if ((key in replace && typeof replace[key] === 'function')) {\n return replace[key](value);\n }\n return value;\n });\n if (ifKeys.and && data) {\n const dataKeys = Object.keys(data);\n if (ifKeys.and) {\n for (const [key, keys] of Object.entries(ifKeys.and)) {\n if (keys.length === dataKeys.length && keys.every((key) => dataKeys.includes(key))) {\n return replace[key](data);\n }\n }\n }\n }\n return data;\n }\n return JSON.parse(str);\n }\n setHost(host) {\n this.config.host = host;\n }\n setHeader(name, value) {\n this.headers[name] = value;\n this.events.emit('header-update', {\n name,\n value\n });\n }\n getHeader(name) {\n return this.headers[name];\n }\n getHeaders() {\n return Object.entries(this.headers).map(([name, value]) => ({ name, value }));\n }\n hasHeader(name) {\n return this.headers[name] ? true : false;\n }\n deleteHeader(name) {\n delete this.headers[name];\n }\n setCache(key, data, group) {\n this.cache[key] = {\n time: (new Date()).getTime(),\n data: data,\n group: group\n };\n }\n groupFromArray(groups, callback, withoutSplit = false) {\n const currentCallback = (group) => {\n if (typeof group === 'string' && !withoutSplit) {\n const params = group.split('.');\n const current = params.shift();\n callback(current, params);\n }\n else {\n callback(group);\n }\n };\n if (Array.isArray(groups)) {\n groups.map(currentCallback);\n }\n else if (typeof groups === 'string') {\n currentCallback(groups);\n }\n }\n triggerByCacheGroup(groups) {\n this.groupFromArray(groups, (group) => this.events.emit('trigger-request-by-cache-' + group, undefined));\n }\n clearCacheGroup(groups, data, fieldKey = 'id') {\n this.groupFromArray(groups, (group) => {\n if (data) {\n const clear = (cacheData) => {\n if ((fieldKey && (cacheData === null || cacheData === void 0 ? void 0 : cacheData[fieldKey]) === (data === null || data === void 0 ? void 0 : data[fieldKey])) || fieldKey === null) {\n for (const key in cacheData) {\n if (key in data) {\n return false;\n }\n }\n }\n return true;\n };\n for (const key in this.cache) {\n if (this.cache[key].group === group) {\n if (Array.isArray(this.cache[key].data)) {\n this.cache[key].data = Object.values(this.cache[key].data).filter(clear);\n }\n else {\n if (!clear(this.cache[key].data))\n delete this.cache[key];\n }\n }\n }\n }\n else {\n for (const key in this.cache) {\n if (this.cache[key].group === group) {\n delete this.cache[key];\n }\n }\n }\n });\n }\n setDataTree(obj, path, val) {\n const keys = path.split('.');\n const lastKey = keys.pop();\n const lastObj = keys.reduce((obj, key) => obj[key] = obj[key] || {}, obj);\n if (typeof lastKey === 'string') {\n lastObj[lastKey] = val;\n }\n return obj;\n }\n ;\n updateCacheGroup(groups, data, fieldKey = 'id') {\n const update = (cacheData) => {\n const retData = cacheData;\n const fieldList = fieldKey.split('.');\n if (fieldList.length > 1) {\n for (const key of fieldList) {\n cacheData = cacheData[key];\n }\n }\n if ((fieldKey && cacheData[fieldKey] === data[fieldKey]) || fieldKey === null) {\n for (const key in cacheData) {\n if (key in data) {\n cacheData[key] = data[key];\n }\n }\n }\n return retData;\n };\n this.groupFromArray(groups, (group, params) => {\n for (const key in this.cache) {\n if (this.cache[key].group === group) {\n if (Array.isArray(this.cache[key].data)) {\n this.cache[key].data = Object.values(this.cache[key].data).map(update);\n }\n else {\n this.cache[key].data = update(this.cache[key].data);\n }\n }\n }\n });\n }\n appendCacheGroup(group, data) {\n // for(const key in this.cache) {\n // \tif (this.cache[key].group === group) {\n // \t\tconsole.log(this.setDataTree(this.cache[key].data, 'data.test', 'tttttt'));\n // \t}\n // }\n //console.log(this.cache);\n }\n getCacheByIndex(index) {\n return this.cache[index];\n }\n deleteCache(key) {\n if (!this.cache[key])\n return;\n const group = this.cache[key].group;\n if (group) {\n this.clearCacheGroup(group);\n }\n delete this.cache[key];\n }\n setGlobalInitData(name, data) {\n this.initData[name] = data;\n }\n setInitData(data) {\n this.initData = data;\n }\n}\nexports.default = Core;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst md5_1 = __importDefault(require(\"md5\"));\nconst Core_1 = __importDefault(require(\"./Core\"));\nconst Queue_1 = __importDefault(require(\"./Queue\"));\nconst easy_event_emitter_1 = __importDefault(require(\"easy-event-emitter\"));\nclass Http extends Core_1.default {\n constructor(method, params, context) {\n super(context);\n Object.defineProperty(this, \"cacheIndex\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"currentCache\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"currentEvents\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"requestParams\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"method\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"params\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"path\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"queueName\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"_promise\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"xhr\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"tryRequestCount\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 0\n });\n Object.defineProperty(this, \"tryRequestTimeout\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.currentEvents = new easy_event_emitter_1.default();\n this._promise = new Promise(() => { });\n this.queue = new Queue_1.default(this);\n this.cacheIndex = '';\n this.queueName = '';\n this.method = method;\n this.headers = Object.assign(Object.assign({}, this.headers), params.headers);\n this.params = Object.assign(Object.assign(Object.assign({}, this.config), { headers: this.headers }), params);\n this.path = this.params.path;\n this.requestParams = {\n method: this.method\n };\n this.handleSuccess = this.handleSuccess.bind(this);\n this.handleAbort = this.handleAbort.bind(this);\n this.handleFail = this.handleFail.bind(this);\n this.handleError = this.handleError.bind(this);\n this.handleComplete = this.handleComplete.bind(this);\n this.handleProgress = this.handleProgress.bind(this);\n this.setEmit = this.setEmit.bind(this);\n this.request = this.request.bind(this);\n this.httpRequest = this.httpRequest.bind(this);\n this.tryHttpRequest = this.tryHttpRequest.bind(this);\n this.initRequest();\n this.initCache();\n this.initQueue();\n }\n initRequest() {\n var _a;\n if (typeof XMLHttpRequest !== 'undefined') {\n this.xhr = new XMLHttpRequest();\n }\n if (this.params.clearUndifinedData)\n this.params.data = this.params.data ? this.cuteUndifinedParams(this.params.data) : this.params.data;\n if (['GET', 'HEAD'].includes(this.method)) {\n if (this.params.data)\n this.path = this.params.path + '?' + this.encodeUrlParams(this.params.data);\n if (this.method === 'HEAD') {\n this.requestParams.withoutResponse = true;\n }\n }\n if (['POST', 'PUT', 'CONNECT', 'PATH'].includes(this.method)) {\n this.requestParams.body = (_a = this.params.body) !== null && _a !== void 0 ? _a : JSON.stringify(this.params.data);\n }\n if (['PUT', 'DELETE', 'CONNECT', 'OPTIONS', 'TRACE'].includes(this.method)) {\n this.params.cache = false;\n }\n }\n initCache() {\n var _a;\n this.cacheIndex = (0, md5_1.default)(this.path + JSON.stringify(this.params.data));\n if (this.params.globalName) {\n if (this.initData[this.params.globalName]) {\n this.setCache(this.cacheIndex, this.dataPrepare(this.initData[this.params.globalName]), (typeof this.params.cache === 'boolean' ? undefined : this.params.cache));\n this.params.cache = (_a = this.params.cache) !== null && _a !== void 0 ? _a : true;\n delete this.initData[this.params.globalName];\n }\n }\n if (this.params.cache) {\n if (typeof this.params.cache === 'string') {\n this.events.addListener('trigger-request-by-cache-' + this.params.cache, this.request);\n }\n this._promise = new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {\n if (this.currentCache = this.getCache(this.cacheIndex)) {\n resolve(this.currentCache);\n this.handleSuccess(this.currentCache);\n this.handleComplete(this.currentCache);\n }\n }));\n }\n else {\n this.deleteCache(this.cacheIndex);\n }\n }\n get host() {\n return this.params.host;\n }\n get promise() {\n return this._promise;\n }\n initQueue() {\n this.queueName = this.params.queueThrottling ? (0, md5_1.default)(this.path) : this.cacheIndex;\n }\n setEmit(event, data) {\n this.currentEvents.emit(event, data);\n this.events.emit(event, {\n cacheIndex: this.cacheIndex,\n data\n });\n }\n //Заголовки от 200 до 299\n handleSuccess(data) {\n if (typeof this.params.success === 'function' && this.xhr)\n this.params.success(data, this.xhr);\n if (this.params.cacheUpdate && this.params.data) {\n this.groupFromArray(this.params.cacheUpdate, (cacheUpdate, params) => {\n var _a;\n this.updateCacheGroup(typeof cacheUpdate === 'string' ? cacheUpdate : cacheUpdate.group, (_a = this.params.data) !== null && _a !== void 0 ? _a : {}, typeof cacheUpdate === 'string' ? undefined : cacheUpdate.fieldKey);\n }, true);\n }\n if (this.params.cacheClear && this.params.data) {\n this.groupFromArray(this.params.cacheClear, (cacheClear) => {\n this.clearCacheGroup(typeof cacheClear === 'string' ? cacheClear : cacheClear.group, this.params.data, typeof cacheClear === 'string' ? undefined : cacheClear.fieldKey);\n });\n }\n this.setEmit('api-request-success', data);\n }\n handleAbort(data) {\n if (typeof this.params.abort === 'function') {\n this.params.abort(data);\n }\n this.setEmit('api-request-abort', data);\n }\n //Заголовки от 400 до 499\n handleFail(data) {\n if (typeof this.params.fail === 'function') {\n this.params.fail(data);\n }\n this.setEmit('api-request-fail', data);\n }\n //Все остальные\n handleError(data) {\n var _a;\n if (((_a = this.xhr) === null || _a === void 0 ? void 0 : _a.status) === 0 && this.xhr.readyState === 4) {\n return;\n }\n if (typeof this.params.error === 'function') {\n this.params.error(data);\n }\n this.setEmit('api-request-error', data);\n }\n handleComplete(data) {\n if (typeof this.params.complete === 'function') {\n this.params.complete(data);\n }\n this.setEmit('api-request-complete', data);\n }\n handleProgress(progress) {\n if (typeof this.params.progress === 'function') {\n this.params.progress(progress);\n }\n this.setEmit('api-request-progress', progress);\n }\n encodeUrlParams(data) {\n return Object.entries(data).map(([key, value]) => {\n if (Array.isArray(value)) {\n return value.map((val) => encodeURIComponent(key) + \"[]=\" + encodeURIComponent(val)).join('&');\n }\n if (typeof value === 'object') {\n value = JSON.stringify(value);\n }\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(value);\n }).join('&');\n }\n cuteUndifinedParams(data) {\n if (typeof data !== 'object' || data === null) {\n return data;\n }\n for (const key in data) {\n if (typeof data[key] === 'undefined') {\n delete data[key];\n }\n }\n return data;\n }\n tryHttpRequest() {\n return new Promise((resolve, reject) => {\n var _a;\n if (this.params.tryRequest && this.params.tryRequest > this.tryRequestCount) {\n if (this.tryRequestTimeout) {\n clearTimeout(this.tryRequestTimeout);\n }\n this.tryRequestTimeout = setTimeout(() => {\n var _a;\n (_a = this.xhr) === null || _a === void 0 ? void 0 : _a.abort();\n this.httpRequest()\n .then((value) => {\n resolve(value);\n this.tryRequestCount = 0;\n })\n .catch(reject);\n }, (_a = this.params.tryRequestDelay) !== null && _a !== void 0 ? _a : 1000);\n ++this.tryRequestCount;\n }\n else {\n reject();\n }\n });\n }\n fileRequest() {\n return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n if (!this.params.file)\n return;\n const data = this.params.file;\n const chunkSize = this.params.fileSizeChunk ? this.params.fileSizeChunk * 1024 * 1024 : this.params.file.byteLength;\n const totalChunks = Math.ceil(this.params.file.byteLength / chunkSize);\n let fileId = this.params.fileIdByServer ? undefined : `file-${new Date().getTime()}`;\n for (let i = 0; i < totalChunks; i++) {\n try {\n const start = i * chunkSize;\n const end = Math.min(start + chunkSize, data.byteLength);\n const chunk = data.slice(start, end);\n const headers = Object.assign({}, this.headers);\n let body = undefined;\n if (this.params.fileType === 'binary') {\n const u8 = chunk instanceof Uint8Array ? chunk : new Uint8Array(chunk);\n headers['Content-Type'] = 'application/octet-stream';\n headers['Content-Range'] = `bytes ${start}-${end - 1}/${this.params.file.byteLength}`;\n headers['X-Chunk-Index'] = String(i);\n headers['X-Chunk-Total'] = String(totalChunks);\n if (fileId && (!this.params.fileIdByServer || (this.params.fileIdByServer && i > 0))) {\n headers[typeof this.params.fileIdByServer === 'string' ? this.params.fileIdByServer : 'X-File-ID'] = fileId;\n }\n body = u8;\n }\n else {\n const formData = new FormData();\n formData.append(\"file\", new Blob([chunk]));\n if (fileId && (!this.params.fileIdByServer || (this.params.fileIdByServer && i > 0))) {\n formData.append(typeof this.params.fileIdByServer === 'string' ? this.params.fileIdByServer : \"file_id\", fileId);\n }\n formData.append(\"chunk_index\", String(i));\n formData.append(\"total_chunks\", String(totalChunks));\n if (this.params.data && (totalChunks - 1) === i) {\n for (const key in this.params.data) {\n formData.append(key, this.params.data[key]);\n }\n }\n delete headers['Content-Type'];\n body = formData;\n }\n delete headers['Accept'];\n const http = new Http(this.method, Object.assign(Object.assign({}, this.params), { file: undefined, headers, data: undefined, fileSizeChunk: undefined, body, success: (totalChunks - 1 > i) ? undefined : (data) => {\n resolve(data);\n this.handleSuccess(data);\n }, complete: (totalChunks - 1 > i) ? undefined : (e) => {\n this.handleComplete(e);\n }, progress: (progres) => {\n const loaded = start + progres.loaded;\n this.handleProgress({\n percent: (loaded / data.byteLength * 100),\n total: data.byteLength,\n loaded\n });\n }, fail: reject, error: reject }), this);\n this.xhr = http.xhr;\n const result = yield http.request(true).promise;\n if (result === null || result === void 0 ? void 0 : result.file_id) {\n fileId = result === null || result === void 0 ? void 0 : result.file_id;\n }\n }\n catch (e) {\n reject(e);\n break;\n }\n }\n }));\n }\n httpRequest() {\n return new Promise((resolve, reject) => {\n var _a;\n if (typeof this.xhr === 'undefined')\n return;\n try {\n this.xhr.open(this.method, this.params.host + this.path, (_a = this.params.requestAsync) !== null && _a !== void 0 ? _a : true);\n if (this.params.timeout) {\n this.xhr.timeout = this.params.timeout;\n }\n for (const header in this.headers) {\n this.xhr.setRequestHeader(header, this.headers[header]);\n }\n if (this.xhr.upload) {\n this.xhr.upload.onprogress = ({ lengthComputable, loaded, total }) => {\n if (lengthComputable) {\n this.handleProgress({\n percent: (loaded / total * 100),\n total,\n loaded\n });\n }\n };\n }\n this.xhr.onabort = () => {\n reject({\n type: 'abort',\n message: 'request abort'\n });\n this.handleAbort({\n message: 'request abort'\n });\n };\n this.xhr.ontimeout = () => {\n this.tryHttpRequest()\n .then(resolve)\n .catch(reject);\n };\n this.xhr.onerror = () => __awaiter(this, void 0, void 0, function* () {\n yield this.tryHttpRequest()\n .then(resolve)\n .catch(reject);\n reject({\n type: 'error',\n message: 'request error'\n });\n this.handleError({\n message: 'request error'\n });\n });\n this.xhr.onreadystatechange = () => {\n var _a, _b;\n if (((_a = this.xhr) === null || _a === void 0 ? void 0 : _a.readyState) !== XMLHttpRequest.DONE)\n return;\n const result = (!this.requestParams.withoutResponse && this.isJsonString(this.xhr.responseText)) ? this.jsonParse(this.xhr.responseText) : {};\n if (((_b = this.xhr) === null || _b === void 0 ? void 0 : _b.status) >= 200 && this.xhr.status <= 299) {\n if (this.params.cache) {\n this.setCache(this.cacheIndex, result, (typeof this.params.cache === 'boolean' ? undefined : this.params.cache));\n }\n resolve(result);\n this.handleSuccess(result);\n }\n else {\n if (this.xhr.status >= 100 && this.xhr.status <= 500) {\n reject(result);\n this.handleFail(result);\n }\n }\n this.handleComplete(result);\n this.queue.clear(this.queueName);\n };\n this.xhr.send(this.requestParams.body);\n }\n catch (e) {\n reject(e);\n }\n });\n }\n streamRequest() {\n return new Promise((resolve, reject) => {\n fetch(this.params.host + this.path, {\n method: this.method,\n headers: this.headers,\n body: this.requestParams.body,\n }).then((response) => {\n this.handleSuccess(response);\n resolve(response);\n }).catch((e) => {\n this.handleFail(e);\n reject(e);\n });\n });\n }\n request(force) {\n if (!force && !this.params.forceRequest && (this.currentCache || this.queue.push(this.queueName)))\n return this;\n this._promise = new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n try {\n let result;\n if (this.params.stream) {\n result = (yield this.streamRequest());\n }\n else if (this.params.file) {\n result = (yield this.fileRequest());\n }\n else {\n result = (yield this.httpRequest());\n }\n resolve(result);\n }\n catch (e) {\n reject(e);\n }\n }));\n return this;\n }\n abort() {\n var _a;\n (_a = this.xhr) === null || _a === void 0 ? void 0 : _a.abort();\n }\n addListener(event, callback) {\n return this.currentEvents.addListener(event, callback);\n }\n updateCache(data, fieldKey = 'id') {\n const cache = this.getCacheByIndex(this.cacheIndex);\n if (cache && cache.group) {\n this.updateCacheGroup(cache.group, data, fieldKey);\n }\n }\n clearCache(data, fieldKey = 'id') {\n if (data) {\n const cache = this.getCacheByIndex(this.cacheIndex);\n if (cache && cache.group) {\n this.clearCacheGroup(cache.group, data, fieldKey);\n }\n }\n else {\n this.deleteCache(this.cacheIndex);\n }\n }\n}\nexports.default = Http;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst Http_1 = __importDefault(require(\"./Http\"));\nclass Queue {\n constructor(http) {\n Object.defineProperty(this, \"queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: Queue._Queue\n });\n Object.defineProperty(this, \"http\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.http = http;\n this.has = this.has.bind(this);\n this.get = this.get.bind(this);\n this.clear = this.clear.bind(this);\n this.push = this.push.bind(this);\n }\n has(request) {\n return request in this.queue;\n }\n get(request) {\n return this.has(request) ? this.queue[request] : undefined;\n }\n clear(request) {\n if (this.has(request)) {\n delete this.queue[request];\n }\n }\n push(request) {\n const refInstance = this.get(request);\n if (!refInstance) {\n this.queue[request] = this.http;\n }\n else {\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-success', this.http.handleSuccess);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-error', this.http.handleError);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-fail', this.http.handleFail);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-complete', this.http.handleComplete);\n refInstance === null || refInstance === void 0 ? void 0 : refInstance.addListener('api-request-abort', this.http.handleAbort);\n }\n return refInstance instanceof Http_1.default;\n }\n}\nObject.defineProperty(Queue, \"_Queue\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n});\nexports.default = Queue;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst Core_1 = __importDefault(require(\"./Core\"));\nconst Http_1 = __importDefault(require(\"./Http\"));\n/** Laravel API Client */\nclass API extends Core_1.default {\n constructor(config) {\n super();\n Object.defineProperty(this, \"_user\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"token\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"csrfToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n this.headers = Object.assign({ 'Accept': 'application/json', 'Content-Type': 'application/json' }, config.headers);\n this.setConfig(config);\n this._user = {};\n this.setToken = this.setToken.bind(this);\n this.setCSRFToken = this.setCSRFToken.bind(this);\n this.setLogin = this.setLogin.bind(this);\n this.setUser = this.setUser.bind(this);\n this.updateUser = this.updateUser.bind(this);\n this.logout = this.logout.bind(this);\n this.getToken = this.getToken.bind(this);\n this.getCSRFToken = this.getCSRFToken.bind(this);\n this.http = this.http.bind(this);\n this.get = this.get.bind(this);\n this.head = this.head.bind(this);\n this.post = this.post.bind(this);\n this.put = this.put.bind(this);\n this.patch = this.patch.bind(this);\n this.delete = this.delete.bind(this);\n this.options = this.options.bind(this);\n this.connect = this.connect.bind(this);\n this.trace = this.trace.bind(this);\n this.getUid = this.getUid.bind(this);\n this.getUser = this.getUser.bind(this);\n this.addListener = this.addListener.bind(this);\n }\n http(method, params) {\n const http = new Http_1.default(method, params, this);\n if (this.token)\n http.setHeader('Authorization', `Bearer ${this.token}`);\n if (this.csrfToken)\n http.setHeader('X-CSRF-TOKEN', this.csrfToken);\n return http;\n }\n get(params) {\n return this.http('GET', params).request();\n }\n head(params) {\n return this.http('HEAD', params).request();\n }\n post(params) {\n return this.http('POST', params).request();\n }\n put(params) {\n return this.http('PUT', params).request();\n }\n patch(params) {\n return this.http('PATCH', params).request();\n }\n delete(params) {\n return this.http('DELETE', params).request();\n }\n options(params) {\n return this.http('OPTIONS', params).request();\n }\n connect(params) {\n return this.http('CONNECT', params).request();\n }\n trace(params) {\n return this.http('TRACE', params).request();\n }\n addListener(event, callback) {\n return this.events.addListener(event, callback);\n }\n setToken(token) {\n this.token = token;\n this.events.emit('token-update', token);\n }\n setCSRFToken(csrfToken) {\n this.csrfToken = csrfToken;\n this.events.emit('csrf-token-update', csrfToken);\n }\n getToken() {\n return this.token;\n }\n getCSRFToken() {\n return this.csrfToken;\n }\n getUid() {\n return (typeof this._user === 'object' && 'id' in this._user) ? Number(this._user.id) : 0;\n }\n getUser() {\n return this._user;\n }\n get uid() {\n return this.getUid();\n }\n get user() {\n return this.getUser();\n }\n get host() {\n return this.config.host;\n }\n setLogin(user, token = '') {\n this.setUser(user);\n this.setToken(token);\n this.events.emit('login', {\n user,\n token\n });\n }\n setUser(user) {\n this._user = user;\n this.events.emit('user-set', user);\n }\n updateUser(user) {\n const updatedUser = Object.assign(Object.assign({}, this.user), user);\n this.setUser(updatedUser);\n this.events.emit('user-update', updatedUser);\n }\n logout() {\n return __awaiter(this, void 0, void 0, function* () {\n const user = this.user;\n this.setUser({});\n this.setToken('');\n this.events.emit('logout', user);\n });\n }\n}\n_a = API;\nObject.defineProperty(API, \"instance\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: new API({\n host: ''\n })\n});\nObject.defineProperty(API, \"http\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.http\n});\nObject.defineProperty(API, \"get\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.get\n});\nObject.defineProperty(API, \"head\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.head\n});\nObject.defineProperty(API, \"post\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.post\n});\nObject.defineProperty(API, \"put\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.put\n});\nObject.defineProperty(API, \"patch\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.patch\n});\nObject.defineProperty(API, \"delete\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.delete\n});\nObject.defineProperty(API, \"options\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.options\n});\nObject.defineProperty(API, \"connect\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.connect\n});\nObject.defineProperty(API, \"trace\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.trace\n});\nObject.defineProperty(API, \"setConfig\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setConfig\n});\nObject.defineProperty(API, \"setHost\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setHost\n});\nObject.defineProperty(API, \"setUser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setUser\n});\nObject.defineProperty(API, \"updateUser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.updateUser\n});\nObject.defineProperty(API, \"logout\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.logout\n});\nObject.defineProperty(API, \"setToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setToken\n});\nObject.defineProperty(API, \"setLogin\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setLogin\n});\nObject.defineProperty(API, \"addListener\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.addListener\n});\nObject.defineProperty(API, \"setInitData\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setInitData\n});\nObject.defineProperty(API, \"setCSRFToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.setCSRFToken\n});\nObject.defineProperty(API, \"getCSRFToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getCSRFToken\n});\nObject.defineProperty(API, \"triggerByCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.triggerByCacheGroup\n});\nObject.defineProperty(API, \"clearCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.clearCacheGroup\n});\nObject.defineProperty(API, \"updateCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.updateCacheGroup\n});\nObject.defineProperty(API, \"getToken\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getToken\n});\nObject.defineProperty(API, \"getUid\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getUid\n});\nObject.defineProperty(API, \"getUser\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.getUser\n});\nObject.defineProperty(API, \"user\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.user\n});\nObject.defineProperty(API, \"uid\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.uid\n});\n/**\n * @deprecated The method should not be used\n */\nObject.defineProperty(API, \"deleteCacheGroup\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: _a.instance.clearCacheGroup\n});\nglobalThis.apiSetInitData = API.setInitData;\nexports.default = API;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(607);\n"],"names":["root","factory","exports","module","define","amd","self","this","charenc","utf8","stringToBytes","str","bin","unescape","encodeURIComponent","bytesToString","bytes","decodeURIComponent","escape","i","length","push","charCodeAt","String","fromCharCode","join","base64map","crypt","rotl","n","b","rotr","endian","constructor","Number","randomBytes","Math","floor","random","bytesToWords","words","wordsToBytes","bytesToHex","hex","toString","hexToBytes","c","parseInt","substr","bytesToBase64","base64","triplet","j","charAt","base64ToBytes","replace","imod4","indexOf","pow","t","e","Object","defineProperty","value","default","enumerable","configurable","writable","listeners","events","Map","s","__importDefault","__esModule","r","super","isStack","_name","handlers","callback","emit","remove","set","has","get","pushFork","forks","name","hasHandler","count","size","delete","splice","onEmit","onRemove","l","bind","addListener","removeAllListeners","_events","globalName","forEach","listenerCount","removeListener","a","instance","call","isBuffer","obj","readFloatLE","slice","isSlowBuffer","_isBuffer","md5","message","options","encoding","Array","prototype","isArray","Uint8Array","m","d","FF","_ff","GG","_gg","HH","_hh","II","_ii","aa","bb","cc","dd","x","_blocksize","_digestsize","Error","digestbytes","asBytes","asString","mod","easy_event_emitter_1","context","config","host","cache","initData","setConfig","getConfig","setHost","setInitData","triggerByCacheGroup","clearCacheGroup","updateCacheGroup","setGlobalInitData","assign","headers","getCache","key","Date","getTime","time","data","isJsonString","JSON","parse","dataPrepare","json","stringify","jsonParse","reviver","dataReviver","dataKeys","keys","ifKeys","_a","and","split","entries","every","includes","setHeader","getHeader","getHeaders","map","hasHeader","deleteHeader","setCache","group","groupFromArray","groups","withoutSplit","currentCallback","params","current","shift","undefined","fieldKey","clear","cacheData","values","filter","setDataTree","path","val","lastKey","pop","lastObj","reduce","update","retData","fieldList","appendCacheGroup","getCacheByIndex","index","deleteCache","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","rejected","result","done","then","apply","md5_1","Core_1","Queue_1","Http","method","currentEvents","_promise","queue","cacheIndex","queueName","requestParams","handleSuccess","handleAbort","handleFail","handleError","handleComplete","handleProgress","setEmit","request","httpRequest","tryHttpRequest","initRequest","initCache","initQueue","XMLHttpRequest","xhr","clearUndifinedData","cuteUndifinedParams","encodeUrlParams","withoutResponse","body","currentCache","promise","queueThrottling","event","success","cacheUpdate","cacheClear","abort","fail","status","readyState","error","complete","progress","tryRequest","tryRequestCount","tryRequestTimeout","clearTimeout","setTimeout","catch","tryRequestDelay","fileRequest","file","chunkSize","fileSizeChunk","byteLength","totalChunks","ceil","fileId","fileIdByServer","start","end","min","chunk","fileType","u8","formData","FormData","append","Blob","http","progres","loaded","percent","total","file_id","open","requestAsync","timeout","header","setRequestHeader","upload","onprogress","lengthComputable","onabort","type","ontimeout","onerror","onreadystatechange","_b","DONE","responseText","send","streamRequest","fetch","response","force","forceRequest","stream","updateCache","clearCache","Http_1","Queue","_Queue","refInstance","API","_user","setToken","setCSRFToken","setLogin","setUser","updateUser","logout","getToken","getCSRFToken","head","post","put","patch","connect","trace","getUid","getUser","token","csrfToken","id","uid","user","updatedUser","globalThis","apiSetInitData","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
|
package/lib/Core.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ declare abstract class Core {
|
|
|
11
11
|
protected getConfig(): TConfig;
|
|
12
12
|
protected getCache(key: string): TData | undefined;
|
|
13
13
|
protected isJsonString(str: string): boolean;
|
|
14
|
+
protected dataPrepare(data: unknown): any;
|
|
14
15
|
protected jsonParse(str: string): any;
|
|
15
16
|
setHost(host: string): void;
|
|
16
17
|
setHeader(name: string, value: string): void;
|
|
@@ -30,6 +31,7 @@ declare abstract class Core {
|
|
|
30
31
|
appendCacheGroup(group: string, data: TData): void;
|
|
31
32
|
protected getCacheByIndex(index: string): TCacheBody;
|
|
32
33
|
protected deleteCache(key: string): void;
|
|
34
|
+
setGlobalInitData(name: string, data: TGroupsData): void;
|
|
33
35
|
setInitData(data: TGroupsData): void;
|
|
34
36
|
}
|
|
35
37
|
export default Core;
|
package/package.json
CHANGED
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "larapi",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "API client for laravel",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "lib/index.d.ts",
|
|
7
|
-
"files": [
|
|
8
|
-
"dist",
|
|
9
|
-
"lib"
|
|
10
|
-
],
|
|
11
|
-
"scripts": {
|
|
12
|
-
"test": "jest",
|
|
13
|
-
"build": "webpack",
|
|
14
|
-
"prepublishOnly": "npm test && npm run build"
|
|
15
|
-
},
|
|
16
|
-
"jest": {
|
|
17
|
-
"transform": {
|
|
18
|
-
"^.+\\.ts?$": "ts-jest",
|
|
19
|
-
"^.+\\.[t|j]sx?$": "babel-jest"
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
"repository": {
|
|
23
|
-
"type": "git",
|
|
24
|
-
"url": "git+https://github.com/SergoMorello/larapi.git"
|
|
25
|
-
},
|
|
26
|
-
"keywords": [
|
|
27
|
-
"api",
|
|
28
|
-
"laravel",
|
|
29
|
-
"cache",
|
|
30
|
-
"events"
|
|
31
|
-
],
|
|
32
|
-
"author": "Sergei Serov",
|
|
33
|
-
"license": "MIT",
|
|
34
|
-
"bugs": {
|
|
35
|
-
"url": "https://github.com/SergoMorello/larapi/issues"
|
|
36
|
-
},
|
|
37
|
-
"homepage": "https://github.com/SergoMorello/larapi#readme",
|
|
38
|
-
"devDependencies": {
|
|
39
|
-
"@babel/preset-env": "^7.22.9",
|
|
40
|
-
"@babel/preset-typescript": "^7.22.5",
|
|
41
|
-
"@types/jest": "^29.4.3",
|
|
42
|
-
"babel-jest": "^29.4.3",
|
|
43
|
-
"jest": "^29.4.3",
|
|
44
|
-
"ts-jest": "^29.1.1",
|
|
45
|
-
"ts-loader": "^9.5.0",
|
|
46
|
-
"ts-node": "^10.9.2",
|
|
47
|
-
"typescript": "^5.1.6",
|
|
48
|
-
"webpack-cli": "^5.1.4"
|
|
49
|
-
},
|
|
50
|
-
"peerDependencies": {
|
|
51
|
-
"easy-event-emitter": "^1.2.2",
|
|
52
|
-
"md5": "^2.3.0"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "larapi",
|
|
3
|
+
"version": "0.2.41",
|
|
4
|
+
"description": "API client for laravel",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "lib/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist",
|
|
9
|
+
"lib"
|
|
10
|
+
],
|
|
11
|
+
"scripts": {
|
|
12
|
+
"test": "jest",
|
|
13
|
+
"build": "webpack",
|
|
14
|
+
"prepublishOnly": "npm test && npm run build"
|
|
15
|
+
},
|
|
16
|
+
"jest": {
|
|
17
|
+
"transform": {
|
|
18
|
+
"^.+\\.ts?$": "ts-jest",
|
|
19
|
+
"^.+\\.[t|j]sx?$": "babel-jest"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/SergoMorello/larapi.git"
|
|
25
|
+
},
|
|
26
|
+
"keywords": [
|
|
27
|
+
"api",
|
|
28
|
+
"laravel",
|
|
29
|
+
"cache",
|
|
30
|
+
"events"
|
|
31
|
+
],
|
|
32
|
+
"author": "Sergei Serov",
|
|
33
|
+
"license": "MIT",
|
|
34
|
+
"bugs": {
|
|
35
|
+
"url": "https://github.com/SergoMorello/larapi/issues"
|
|
36
|
+
},
|
|
37
|
+
"homepage": "https://github.com/SergoMorello/larapi#readme",
|
|
38
|
+
"devDependencies": {
|
|
39
|
+
"@babel/preset-env": "^7.22.9",
|
|
40
|
+
"@babel/preset-typescript": "^7.22.5",
|
|
41
|
+
"@types/jest": "^29.4.3",
|
|
42
|
+
"babel-jest": "^29.4.3",
|
|
43
|
+
"jest": "^29.4.3",
|
|
44
|
+
"ts-jest": "^29.1.1",
|
|
45
|
+
"ts-loader": "^9.5.0",
|
|
46
|
+
"ts-node": "^10.9.2",
|
|
47
|
+
"typescript": "^5.1.6",
|
|
48
|
+
"webpack-cli": "^5.1.4"
|
|
49
|
+
},
|
|
50
|
+
"peerDependencies": {
|
|
51
|
+
"easy-event-emitter": "^1.2.2",
|
|
52
|
+
"md5": "^2.3.0"
|
|
53
|
+
}
|
|
54
|
+
}
|