active-connect-ng2 0.2.40 → 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/ng-package.json +7 -0
- package/package.json +13 -32
- package/src/lib/active-connect-ng2.module.ts +34 -0
- package/src/lib/websocket/client.ts +438 -0
- package/src/lib/websocket/decorators/function.ts +44 -0
- package/src/lib/websocket/decorators/websocket/handle.ts +12 -0
- package/src/lib/websocket/decorators/websocket/on-reconnect.ts +6 -0
- package/src/lib/websocket/decorators/websocket/on-success.ts +11 -0
- package/src/lib/websocket/decorators/websocket/outbound.ts +212 -0
- package/src/lib/websocket/decorators/websocket/route.ts +32 -0
- package/src/lib/websocket/decorators/websocket/shared.ts +11 -0
- package/{lib/websocket/decorators/websocket/websocket-route-service.d.ts → src/lib/websocket/decorators/websocket/websocket-route-service.ts} +3 -2
- package/src/lib/websocket/json/json-parser.ts +26 -0
- package/src/lib/websocket/lifecycle/loading-status.ts +32 -0
- package/src/lib/websocket/objects/outbound-object.ts +430 -0
- package/{public-api.d.ts → src/public-api.ts} +4 -0
- package/tsconfig.lib.json +14 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +14 -0
- package/esm2020/active-connect-ng2.mjs +0 -5
- package/esm2020/lib/active-connect-ng2.module.mjs +0 -42
- package/esm2020/lib/websocket/client.mjs +0 -347
- package/esm2020/lib/websocket/decorators/function.mjs +0 -40
- package/esm2020/lib/websocket/decorators/websocket/handle.mjs +0 -9
- package/esm2020/lib/websocket/decorators/websocket/on-reconnect.mjs +0 -6
- package/esm2020/lib/websocket/decorators/websocket/on-success.mjs +0 -8
- package/esm2020/lib/websocket/decorators/websocket/outbound.mjs +0 -213
- package/esm2020/lib/websocket/decorators/websocket/route.mjs +0 -31
- package/esm2020/lib/websocket/decorators/websocket/shared.mjs +0 -10
- package/esm2020/lib/websocket/decorators/websocket/websocket-route-service.mjs +0 -2
- package/esm2020/lib/websocket/index.mjs +0 -11
- package/esm2020/lib/websocket/json/json-parser.mjs +0 -23
- package/esm2020/lib/websocket/lifecycle/loading-status.mjs +0 -31
- package/esm2020/lib/websocket/objects/outbound-object.mjs +0 -398
- package/esm2020/public-api.mjs +0 -7
- package/fesm2015/active-connect-ng2.mjs +0 -1178
- package/fesm2015/active-connect-ng2.mjs.map +0 -1
- package/fesm2020/active-connect-ng2.mjs +0 -1160
- package/fesm2020/active-connect-ng2.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/active-connect-ng2.module.d.ts +0 -7
- package/lib/websocket/client.d.ts +0 -59
- package/lib/websocket/decorators/function.d.ts +0 -30
- package/lib/websocket/decorators/websocket/handle.d.ts +0 -1
- package/lib/websocket/decorators/websocket/on-reconnect.d.ts +0 -1
- package/lib/websocket/decorators/websocket/on-success.d.ts +0 -1
- package/lib/websocket/decorators/websocket/outbound.d.ts +0 -1
- package/lib/websocket/decorators/websocket/route.d.ts +0 -1
- package/lib/websocket/decorators/websocket/shared.d.ts +0 -4
- package/lib/websocket/json/json-parser.d.ts +0 -5
- package/lib/websocket/lifecycle/loading-status.d.ts +0 -9
- package/lib/websocket/objects/outbound-object.d.ts +0 -48
- /package/{lib/websocket/index.d.ts → src/lib/websocket/index.ts} +0 -0
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
import { WebsocketClient } from '../../client';
|
|
2
|
-
export function Outbound(method, requestingRequired, cached, sortBy) {
|
|
3
|
-
return function _Outbound(target, propertyKey) {
|
|
4
|
-
target.loading = new Map();
|
|
5
|
-
// property annotation
|
|
6
|
-
WebsocketClient.expectOutbound(method, function setOutbound(data, specificHash, inserted, updated, deleted, length, _this) {
|
|
7
|
-
if (!target.___received)
|
|
8
|
-
target.___received = {};
|
|
9
|
-
if (!target.___data)
|
|
10
|
-
target.___data = {};
|
|
11
|
-
if (!target.___received)
|
|
12
|
-
target.___received = {};
|
|
13
|
-
if (!target.___requested)
|
|
14
|
-
target.___requested = {};
|
|
15
|
-
if (!cached) {
|
|
16
|
-
if (_this.dbService) {
|
|
17
|
-
try {
|
|
18
|
-
_this.dbService
|
|
19
|
-
.deleteByKey('outbound', method)
|
|
20
|
-
.subscribe(() => { });
|
|
21
|
-
}
|
|
22
|
-
catch (e) {
|
|
23
|
-
console.error('ActiveConnect: could not delete indexdb cache entry');
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
if (data == 'cache_restore') {
|
|
28
|
-
if (_this.dbService) {
|
|
29
|
-
try {
|
|
30
|
-
_this.dbService
|
|
31
|
-
.getByKey('outbound', method)
|
|
32
|
-
.subscribe((result) => {
|
|
33
|
-
target.___received[propertyKey] = true;
|
|
34
|
-
target.___data[propertyKey] = result.data;
|
|
35
|
-
target.loading.set(propertyKey, false);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
catch (e) {
|
|
39
|
-
console.error('ActiveConnect: Unable to restore cached data.');
|
|
40
|
-
console.error(e);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
console.error('ActiveConnect: Caching / restore not possible as the indexedDB is not accessible');
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
else if (data == 'cache_delete') {
|
|
48
|
-
if (_this.dbService) {
|
|
49
|
-
try {
|
|
50
|
-
_this.dbService
|
|
51
|
-
.deleteByKey('outbound', method)
|
|
52
|
-
.subscribe(() => { });
|
|
53
|
-
}
|
|
54
|
-
catch (e) {
|
|
55
|
-
console.error('ActiveConnect: Unable to delete cached data');
|
|
56
|
-
console.error(e);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
console.error('ActiveConnect: Caching / restore not possible as the indexedDB is not accessible');
|
|
61
|
-
}
|
|
62
|
-
target.___received[propertyKey] = false;
|
|
63
|
-
target.___data[propertyKey] = undefined;
|
|
64
|
-
target.loading.set(propertyKey, false);
|
|
65
|
-
}
|
|
66
|
-
else if (data == 'data_delete') {
|
|
67
|
-
target.___data[propertyKey] = undefined;
|
|
68
|
-
target.loading.set(propertyKey, false);
|
|
69
|
-
target.___received[propertyKey] = false;
|
|
70
|
-
target.___requested[propertyKey] = false;
|
|
71
|
-
}
|
|
72
|
-
else if (data == 'data_diff') {
|
|
73
|
-
var data = target.___data[propertyKey] || [];
|
|
74
|
-
inserted?.forEach((e) => {
|
|
75
|
-
const matching = data.filter((d) => d.id == e.id);
|
|
76
|
-
if (matching.length > 0) {
|
|
77
|
-
data[data.indexOf(matching[0])] = e;
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
data.push(e);
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
updated?.forEach((e) => {
|
|
84
|
-
const matching = data.filter((d) => d.id == e.id);
|
|
85
|
-
if (matching.length > 0) {
|
|
86
|
-
data[data.indexOf(matching[0])] = e;
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
data.push(e);
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
deleted?.forEach((e) => {
|
|
93
|
-
data = data.filter((d) => d.id != e.id);
|
|
94
|
-
});
|
|
95
|
-
if (sortBy && data)
|
|
96
|
-
data = data.sort(sortBy);
|
|
97
|
-
target.___data[propertyKey] = data;
|
|
98
|
-
target.loading.set(propertyKey, false);
|
|
99
|
-
if (cached && specificHash) {
|
|
100
|
-
if (_this.dbService) {
|
|
101
|
-
if (data && data?.length > 0) {
|
|
102
|
-
try {
|
|
103
|
-
_this.dbService
|
|
104
|
-
.update('outbound', {
|
|
105
|
-
method,
|
|
106
|
-
data,
|
|
107
|
-
specificHash,
|
|
108
|
-
})
|
|
109
|
-
.subscribe(() => { });
|
|
110
|
-
}
|
|
111
|
-
catch (e) {
|
|
112
|
-
console.error('ActiveConnect: Unable to update cached data');
|
|
113
|
-
console.error(e);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
try {
|
|
118
|
-
_this.dbService
|
|
119
|
-
.deleteByKey('outbound', method)
|
|
120
|
-
.subscribe(() => { });
|
|
121
|
-
}
|
|
122
|
-
catch (e) {
|
|
123
|
-
console.error('ActiveConnect: Unable to delete cached data');
|
|
124
|
-
console.error(e);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
console.error('ActiveConnect: Caching not possible as the indexedDB has not been initialized');
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
else {
|
|
134
|
-
if (sortBy && data)
|
|
135
|
-
data = data.sort(sortBy);
|
|
136
|
-
target.___received[propertyKey] = true;
|
|
137
|
-
target.___data[propertyKey] = data;
|
|
138
|
-
target.loading.set(propertyKey, false);
|
|
139
|
-
if (cached && specificHash) {
|
|
140
|
-
if (_this.dbService) {
|
|
141
|
-
if (data && data?.length > 0) {
|
|
142
|
-
try {
|
|
143
|
-
_this.dbService
|
|
144
|
-
.update('outbound', {
|
|
145
|
-
method,
|
|
146
|
-
data,
|
|
147
|
-
specificHash,
|
|
148
|
-
})
|
|
149
|
-
.subscribe(() => { });
|
|
150
|
-
}
|
|
151
|
-
catch (e) {
|
|
152
|
-
console.error('ActiveConnect: Unable to update cached data');
|
|
153
|
-
console.error(e);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
else {
|
|
157
|
-
try {
|
|
158
|
-
_this.dbService
|
|
159
|
-
.deleteByKey('outbound', method)
|
|
160
|
-
.subscribe(() => { });
|
|
161
|
-
}
|
|
162
|
-
catch (e) {
|
|
163
|
-
console.error('ActiveConnect: Unable to update cached data');
|
|
164
|
-
console.error(e);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
console.error('ActiveConnect: Caching not possible as the indexedDB has not been initialized');
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
if (requestingRequired) {
|
|
175
|
-
WebsocketClient.addResetRequestingStateCallback(function callback() {
|
|
176
|
-
if (target.___requested) {
|
|
177
|
-
target.___requested[propertyKey] = false;
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
const obj = {
|
|
182
|
-
configurable: true,
|
|
183
|
-
get() {
|
|
184
|
-
if (!target.___requested)
|
|
185
|
-
target.___requested = {};
|
|
186
|
-
if (requestingRequired && !target.___requested[propertyKey]) {
|
|
187
|
-
target.___requested[propertyKey] = true;
|
|
188
|
-
this.send('request.' + method, null).then();
|
|
189
|
-
}
|
|
190
|
-
if (!target.___data)
|
|
191
|
-
target.___data = {};
|
|
192
|
-
if (!target.___data[propertyKey]) {
|
|
193
|
-
target.loading.set(propertyKey, true);
|
|
194
|
-
}
|
|
195
|
-
else if (target.loading[propertyKey]) {
|
|
196
|
-
target.loading.set(propertyKey, false);
|
|
197
|
-
}
|
|
198
|
-
return target.___data[propertyKey];
|
|
199
|
-
},
|
|
200
|
-
set(val) {
|
|
201
|
-
if (!target.___data)
|
|
202
|
-
target.___data = {};
|
|
203
|
-
target.loading.set(propertyKey, false);
|
|
204
|
-
if (sortBy && val)
|
|
205
|
-
val = val.sort(sortBy);
|
|
206
|
-
return (target.___data[propertyKey] = val);
|
|
207
|
-
},
|
|
208
|
-
};
|
|
209
|
-
target[propertyKey] = obj;
|
|
210
|
-
return obj;
|
|
211
|
-
};
|
|
212
|
-
}
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0Ym91bmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY3RpdmUtY29ubmVjdC1uZzIvc3JjL2xpYi93ZWJzb2NrZXQvZGVjb3JhdG9ycy93ZWJzb2NrZXQvb3V0Ym91bmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvQyxNQUFNLFVBQVUsUUFBUSxDQUN0QixNQUFjLEVBQ2Qsa0JBQTRCLEVBQzVCLE1BQWdCLEVBQ2hCLE1BQW1DO0lBRW5DLE9BQU8sU0FBUyxTQUFTLENBQUMsTUFBVyxFQUFFLFdBQW1CO1FBQ3hELE1BQU0sQ0FBQyxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7UUFDNUMsc0JBQXNCO1FBQ3RCLGVBQWUsQ0FBQyxjQUFjLENBQzVCLE1BQU0sRUFDTixTQUFTLFdBQVcsQ0FDbEIsSUFBUyxFQUNULFlBQTJCLEVBQzNCLFFBQXNCLEVBQ3RCLE9BQXFCLEVBQ3JCLE9BQXFCLEVBQ3JCLE1BQXFCLEVBQ3JCLEtBQXNCO1lBRXRCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVztnQkFBRSxNQUFNLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU87Z0JBQUUsTUFBTSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXO2dCQUFFLE1BQU0sQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1lBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWTtnQkFBRSxNQUFNLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNYLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRTtvQkFDbkIsSUFBSTt3QkFDRixLQUFLLENBQUMsU0FBUzs2QkFDWixXQUFXLENBQUMs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QUFJLEdBQUc7b0JBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLENBQUM7U0FDRixDQUFDO1FBQ0YsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUMxQixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXZWJzb2NrZXRDbGllbnQgfSBmcm9tICcuLi8uLi9jbGllbnQnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIE91dGJvdW5kKFxyXG4gIG1ldGhvZDogc3RyaW5nLFxyXG4gIHJlcXVlc3RpbmdSZXF1aXJlZD86IGJvb2xlYW4sXHJcbiAgY2FjaGVkPzogYm9vbGVhbixcclxuICBzb3J0Qnk/OiAoYTogYW55LCBiOiBhbnkpID0+IG51bWJlclxyXG4pIHtcclxuICByZXR1cm4gZnVuY3Rpb24gX091dGJvdW5kKHRhcmdldDogYW55LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYW55IHtcclxuICAgIHRhcmdldC5sb2FkaW5nID0gbmV3IE1hcDxzdHJpbmcsIGJvb2xlYW4+KCk7XHJcbiAgICAvLyBwcm9wZXJ0eSBhbm5vdGF0aW9uXHJcbiAgICBXZWJzb2NrZXRDbGllbnQuZXhwZWN0T3V0Ym91bmQoXHJcbiAgICAgIG1ldGhvZCxcclxuICAgICAgZnVuY3Rpb24gc2V0T3V0Ym91bmQoXHJcbiAgICAgICAgZGF0YTogYW55LFxyXG4gICAgICAgIHNwZWNpZmljSGFzaDogbnVtYmVyIHwgbnVsbCxcclxuICAgICAgICBpbnNlcnRlZDogYW55W10gfCBudWxsLFxyXG4gICAgICAgIHVwZGF0ZWQ6IGFueVtdIHwgbnVsbCxcclxuICAgICAgICBkZWxldGVkOiBhbnlbXSB8IG51bGwsXHJcbiAgICAgICAgbGVuZ3RoOiBudW1iZXIgfCBudWxsLFxyXG4gICAgICAgIF90aGlzOiBXZWJzb2NrZXRDbGllbnRcclxuICAgICAgKSB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQuX19fcmVjZWl2ZWQpIHRhcmdldC5fX19yZWNlaXZlZCA9IHt9O1xyXG4gICAgICAgIGlmICghdGFyZ2V0Ll9fX2RhdGEpIHRhcmdldC5fX19kYXRhID0ge307XHJcbiAgICAgICAgaWYgKCF0YXJnZXQuX19fcmVjZWl2ZWQpIHRhcmdldC5fX19yZWNlaXZlZCA9IHt9O1xyXG4gICAgICAgIGlmICghdGFyZ2V0Ll9fX3JlcXVlc3RlZCkgdGFyZ2V0Ll9fX3JlcXVlc3RlZCA9IHt9O1xyXG4gICAgICAgIGlmICghY2FjaGVkKSB7XHJcbiAgICAgICAgICBpZiAoX3RoaXMuZGJTZXJ2aWNlKSB7XHJcbiAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgX3RoaXMuZGJTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICAuZGVsZXRlQnlLZXkoJ291dGJvdW5kJywgbWV0aG9kKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7fSk7XHJcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKFxyXG4gICAgICAgICAgICAgICAgJ0FjdGl2ZUNvbm5lY3Q6IGNvdWxkIG5vdCBkZWxldGUgaW5kZXhkYiBjYWNoZSBlbnRyeSdcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoZGF0YSA9PSAnY2FjaGVfcmVzdG9yZScpIHtcclxuICAgICAgICAgIGlmIChfdGhpcy5kYlNlcnZpY2UpIHtcclxuICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICBfdGhpcy5kYlNlcnZpY2VcclxuICAgICAgICAgICAgICAgIC5nZXRCeUtleSgnb3V0Ym91bmQnLCBtZXRob2QpXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICB0YXJnZXQuX19fcmVjZWl2ZWRbcHJvcGVydHlLZXldID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgdGFyZ2V0Ll9fX2RhdGFbcHJvcGVydHlLZXldID0gcmVzdWx0LmRhdGE7XHJcbiAgICAgICAgICAgICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdBY3RpdmVDb25uZWN0OiBVbmFibGUgdG8gcmVzdG9yZSBjYWNoZWQgZGF0YS4nKTtcclxuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKFxyXG4gICAgICAgICAgICAgICdBY3RpdmVDb25uZWN0OiBDYWNoaW5nIC8gcmVzdG9yZSBub3QgcG9zc2libGUgYXMgdGhlIGluZGV4ZWREQiBpcyBub3QgYWNjZXNzaWJsZSdcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKGRhdGEgPT0gJ2NhY2hlX2RlbGV0ZScpIHtcclxuICAgICAgICAgIGlmIChfdGhpcy5kYlNlcnZpY2UpIHtcclxuICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICBfdGhpcy5kYlNlcnZpY2VcclxuICAgICAgICAgICAgICAgIC5kZWxldGVCeUtleSgnb3V0Ym91bmQnLCBtZXRob2QpXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHt9KTtcclxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0FjdGl2ZUNvbm5lY3Q6IFVuYWJsZSB0byBkZWxldGUgY2FjaGVkIGRhdGEnKTtcclxuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKFxyXG4gICAgICAgICAgICAgICdBY3RpdmVDb25uZWN0OiBDYWNoaW5nIC8gcmVzdG9yZSBub3QgcG9zc2libGUgYXMgdGhlIGluZGV4ZWREQiBpcyBub3QgYWNjZXNzaWJsZSdcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRhcmdldC5fX19yZWNlaXZlZFtwcm9wZXJ0eUtleV0gPSBmYWxzZTtcclxuICAgICAgICAgIHRhcmdldC5fX19kYXRhW3Byb3BlcnR5S2V5XSA9IHVuZGVmaW5lZDtcclxuICAgICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgZmFsc2UpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZGF0YSA9PSAnZGF0YV9kZWxldGUnKSB7XHJcbiAgICAgICAgICB0YXJnZXQuX19fZGF0YVtwcm9wZXJ0eUtleV0gPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgICB0YXJnZXQubG9hZGluZy5zZXQocHJvcGVydHlLZXksIGZhbHNlKTtcclxuICAgICAgICAgIHRhcmdldC5fX19yZWNlaXZlZFtwcm9wZXJ0eUtleV0gPSBmYWxzZTtcclxuICAgICAgICAgIHRhcmdldC5fX19yZXF1ZXN0ZWRbcHJvcGVydHlLZXldID0gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIGlmIChkYXRhID09ICdkYXRhX2RpZmYnKSB7XHJcbiAgICAgICAgICB2YXIgZGF0YSA9IHRhcmdldC5fX19kYXRhW3Byb3BlcnR5S2V5XSB8fCBbXTtcclxuICAgICAgICAgIGluc2VydGVkPy5mb3JFYWNoKChlKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoaW5nID0gZGF0YS5maWx0ZXIoKGQ6IGFueSkgPT4gZC5pZCA9PSBlLmlkKTtcclxuICAgICAgICAgICAgaWYgKG1hdGNoaW5nLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICBkYXRhW2RhdGEuaW5kZXhPZihtYXRjaGluZ1swXSldID0gZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBkYXRhLnB1c2goZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdXBkYXRlZD8uZm9yRWFjaCgoZSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBtYXRjaGluZyA9IGRhdGEuZmlsdGVyKChkOiBhbnkpID0+IGQuaWQgPT0gZS5pZCk7XHJcbiAgICAgICAgICAgIGlmIChtYXRjaGluZy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgZGF0YVtkYXRhLmluZGV4T2YobWF0Y2hpbmdbMF0pXSA9IGU7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgZGF0YS5wdXNoKGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGRlbGV0ZWQ/LmZvckVhY2goKGUpID0+IHtcclxuICAgICAgICAgICAgZGF0YSA9IGRhdGEuZmlsdGVyKChkOiBhbnkpID0+IGQuaWQgIT0gZS5pZCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGlmIChzb3J0QnkgJiYgZGF0YSkgZGF0YSA9IGRhdGEuc29ydChzb3J0QnkpO1xyXG4gICAgICAgICAgdGFyZ2V0Ll9fX2RhdGFbcHJvcGVydHlLZXldID0gZGF0YTtcclxuICAgICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgZmFsc2UpO1xyXG5cclxuICAgICAgICAgIGlmIChjYWNoZWQgJiYgc3BlY2lmaWNIYXNoKSB7XHJcbiAgICAgICAgICAgIGlmIChfdGhpcy5kYlNlcnZpY2UpIHtcclxuICAgICAgICAgICAgICBpZiAoZGF0YSAmJiBkYXRhPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICBfdGhpcy5kYlNlcnZpY2VcclxuICAgICAgICAgICAgICAgICAgICAudXBkYXRlKCdvdXRib3VuZCcsIHtcclxuICAgICAgICAgICAgICAgICAgICAgIG1ldGhvZCxcclxuICAgICAgICAgICAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgICAgICAgICAgICBzcGVjaWZpY0hhc2gsXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHt9KTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignQWN0aXZlQ29ubmVjdDogVW5hYmxlIHRvIHVwZGF0ZSBjYWNoZWQgZGF0YScpO1xyXG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICBfdGhpcy5kYlNlcnZpY2VcclxuICAgICAgICAgICAgICAgICAgICAuZGVsZXRlQnlLZXkoJ291dGJvdW5kJywgbWV0aG9kKVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge30pO1xyXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdBY3RpdmVDb25uZWN0OiBVbmFibGUgdG8gZGVsZXRlIGNhY2hlZCBkYXRhJyk7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgICAgICAgICAgICAnQWN0aXZlQ29ubmVjdDogQ2FjaGluZyBub3QgcG9zc2libGUgYXMgdGhlIGluZGV4ZWREQiBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQnXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAoc29ydEJ5ICYmIGRhdGEpIGRhdGEgPSBkYXRhLnNvcnQoc29ydEJ5KTtcclxuICAgICAgICAgIHRhcmdldC5fX19yZWNlaXZlZFtwcm9wZXJ0eUtleV0gPSB0cnVlO1xyXG4gICAgICAgICAgdGFyZ2V0Ll9fX2RhdGFbcHJvcGVydHlLZXldID0gZGF0YTtcclxuICAgICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgZmFsc2UpO1xyXG4gICAgICAgICAgaWYgKGNhY2hlZCAmJiBzcGVjaWZpY0hhc2gpIHtcclxuICAgICAgICAgICAgaWYgKF90aGlzLmRiU2VydmljZSkge1xyXG4gICAgICAgICAgICAgIGlmIChkYXRhICYmIGRhdGE/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgIF90aGlzLmRiU2VydmljZVxyXG4gICAgICAgICAgICAgICAgICAgIC51cGRhdGUoJ291dGJvdW5kJywge1xyXG4gICAgICAgICAgICAgICAgICAgICAgbWV0aG9kLFxyXG4gICAgICAgICAgICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgICAgICAgICAgIHNwZWNpZmljSGFzaCxcclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge30pO1xyXG4gICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdBY3RpdmVDb25uZWN0OiBVbmFibGUgdG8gdXBkYXRlIGNhY2hlZCBkYXRhJyk7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgIF90aGlzLmRiU2VydmljZVxyXG4gICAgICAgICAgICAgICAgICAgIC5kZWxldGVCeUtleSgnb3V0Ym91bmQnLCBtZXRob2QpXHJcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7fSk7XHJcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0FjdGl2ZUNvbm5lY3Q6IFVuYWJsZSB0byB1cGRhdGUgY2FjaGVkIGRhdGEnKTtcclxuICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcclxuICAgICAgICAgICAgICAgICdBY3RpdmVDb25uZWN0OiBDYWNoaW5nIG5vdCBwb3NzaWJsZSBhcyB0aGUgaW5kZXhlZERCIGhhcyBub3QgYmVlbiBpbml0aWFsaXplZCdcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gICAgaWYgKHJlcXVlc3RpbmdSZXF1aXJlZCkge1xyXG4gICAgICBXZWJzb2NrZXRDbGllbnQuYWRkUmVzZXRSZXF1ZXN0aW5nU3RhdGVDYWxsYmFjayhmdW5jdGlvbiBjYWxsYmFjaygpIHtcclxuICAgICAgICBpZiAodGFyZ2V0Ll9fX3JlcXVlc3RlZCkge1xyXG4gICAgICAgICAgdGFyZ2V0Ll9fX3JlcXVlc3RlZFtwcm9wZXJ0eUtleV0gPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG9iaiA9IHtcclxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxyXG4gICAgICBnZXQoKSB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQuX19fcmVxdWVzdGVkKSB0YXJnZXQuX19fcmVxdWVzdGVkID0ge307XHJcbiAgICAgICAgaWYgKHJlcXVlc3RpbmdSZXF1aXJlZCAmJiAhdGFyZ2V0Ll9fX3JlcXVlc3RlZFtwcm9wZXJ0eUtleV0pIHtcclxuICAgICAgICAgIHRhcmdldC5fX19yZXF1ZXN0ZWRbcHJvcGVydHlLZXldID0gdHJ1ZTtcclxuICAgICAgICAgICh0aGlzIGFzIGFueSkuc2VuZCgncmVxdWVzdC4nICsgbWV0aG9kLCBudWxsKS50aGVuKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdGFyZ2V0Ll9fX2RhdGEpIHRhcmdldC5fX19kYXRhID0ge307XHJcbiAgICAgICAgaWYgKCF0YXJnZXQuX19fZGF0YVtwcm9wZXJ0eUtleV0pIHtcclxuICAgICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgdHJ1ZSk7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0YXJnZXQubG9hZGluZ1twcm9wZXJ0eUtleV0pIHtcclxuICAgICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGFyZ2V0Ll9fX2RhdGFbcHJvcGVydHlLZXldO1xyXG4gICAgICB9LFxyXG4gICAgICBzZXQodmFsOiBhbnkpIHtcclxuICAgICAgICBpZiAoIXRhcmdldC5fX19kYXRhKSB0YXJnZXQuX19fZGF0YSA9IHt9O1xyXG4gICAgICAgIHRhcmdldC5sb2FkaW5nLnNldChwcm9wZXJ0eUtleSwgZmFsc2UpO1xyXG4gICAgICAgIGlmIChzb3J0QnkgJiYgdmFsKSB2YWwgPSB2YWwuc29ydChzb3J0QnkpO1xyXG4gICAgICAgIHJldHVybiAodGFyZ2V0Ll9fX2RhdGFbcHJvcGVydHlLZXldID0gdmFsKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgICB0YXJnZXRbcHJvcGVydHlLZXldID0gb2JqO1xyXG4gICAgcmV0dXJuIG9iajtcclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export function Route(method, loadingKey, dontEnsureTransmission) {
|
|
2
|
-
return function _Route(target, propertyKey) {
|
|
3
|
-
// method annotation
|
|
4
|
-
const original = target[propertyKey];
|
|
5
|
-
target[propertyKey] = async function execRoute(...data) {
|
|
6
|
-
if (loadingKey) {
|
|
7
|
-
if (!this.loadingElements[loadingKey]) {
|
|
8
|
-
this.loadingElements[loadingKey] = 0;
|
|
9
|
-
}
|
|
10
|
-
this.loadingElements[loadingKey]++;
|
|
11
|
-
}
|
|
12
|
-
const promise = original.bind(this)(...data);
|
|
13
|
-
let res = null;
|
|
14
|
-
if (this.client) {
|
|
15
|
-
res = await this.client
|
|
16
|
-
.send(method, data[0], dontEnsureTransmission)
|
|
17
|
-
?.catch((err) => {
|
|
18
|
-
if (loadingKey)
|
|
19
|
-
this.loadingElements[loadingKey]--;
|
|
20
|
-
throw err;
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
await promise;
|
|
24
|
-
if (loadingKey)
|
|
25
|
-
this.loadingElements[loadingKey]--;
|
|
26
|
-
return res;
|
|
27
|
-
};
|
|
28
|
-
return target;
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY3RpdmUtY29ubmVjdC1uZzIvc3JjL2xpYi93ZWJzb2NrZXQvZGVjb3JhdG9ycy93ZWJzb2NrZXQvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLEtBQUssQ0FDbkIsTUFBYyxFQUNkLFVBQW1CLEVBQ25CLHNCQUFnQztJQUVoQyxPQUFPLFNBQVMsTUFBTSxDQUFDLE1BQVcsRUFBRSxXQUFtQjtRQUNyRCxvQkFBb0I7UUFDcEIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLFVBQVUsU0FBUyxDQUFDLEdBQUcsSUFBUztZQUN6RCxJQUFJLFVBQVUsRUFBRTtnQkFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRTtvQkFDckMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ3RDO2dCQUNELElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQzthQUNwQztZQUNELE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUM3QyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUM7WUFDZixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2YsR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU07cUJBQ3BCLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixDQUFDO29CQUM5QyxFQUFFLEtBQUssQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO29CQUNuQixJQUFJLFVBQVU7d0JBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO29CQUNuRCxNQUFNLEdBQUcsQ0FBQztnQkFDWixDQUFDLENBQUMsQ0FBQzthQUNOO1lBQ0QsTUFBTSxPQUFPLENBQUM7WUFDZCxJQUFJLFVBQVU7Z0JBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ25ELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBSb3V0ZShcclxuICBtZXRob2Q6IHN0cmluZyxcclxuICBsb2FkaW5nS2V5Pzogc3RyaW5nLFxyXG4gIGRvbnRFbnN1cmVUcmFuc21pc3Npb24/OiBib29sZWFuXHJcbikge1xyXG4gIHJldHVybiBmdW5jdGlvbiBfUm91dGUodGFyZ2V0OiBhbnksIHByb3BlcnR5S2V5OiBzdHJpbmcpOiBhbnkge1xyXG4gICAgLy8gbWV0aG9kIGFubm90YXRpb25cclxuICAgIGNvbnN0IG9yaWdpbmFsID0gdGFyZ2V0W3Byb3BlcnR5S2V5XTtcclxuICAgIHRhcmdldFtwcm9wZXJ0eUtleV0gPSBhc3luYyBmdW5jdGlvbiBleGVjUm91dGUoLi4uZGF0YTogYW55KTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgaWYgKGxvYWRpbmdLZXkpIHtcclxuICAgICAgICBpZiAoIXRoaXMubG9hZGluZ0VsZW1lbnRzW2xvYWRpbmdLZXldKSB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmdFbGVtZW50c1tsb2FkaW5nS2V5XSA9IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubG9hZGluZ0VsZW1lbnRzW2xvYWRpbmdLZXldKys7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcHJvbWlzZSA9IG9yaWdpbmFsLmJpbmQodGhpcykoLi4uZGF0YSk7XHJcbiAgICAgIGxldCByZXMgPSBudWxsO1xyXG4gICAgICBpZiAodGhpcy5jbGllbnQpIHtcclxuICAgICAgICByZXMgPSBhd2FpdCB0aGlzLmNsaWVudFxyXG4gICAgICAgICAgLnNlbmQobWV0aG9kLCBkYXRhWzBdLCBkb250RW5zdXJlVHJhbnNtaXNzaW9uKVxyXG4gICAgICAgICAgPy5jYXRjaCgoZXJyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKGxvYWRpbmdLZXkpIHRoaXMubG9hZGluZ0VsZW1lbnRzW2xvYWRpbmdLZXldLS07XHJcbiAgICAgICAgICAgIHRocm93IGVycjtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGF3YWl0IHByb21pc2U7XHJcbiAgICAgIGlmIChsb2FkaW5nS2V5KSB0aGlzLmxvYWRpbmdFbGVtZW50c1tsb2FkaW5nS2V5XS0tO1xyXG4gICAgICByZXR1cm4gcmVzO1xyXG4gICAgfTtcclxuICAgIHJldHVybiB0YXJnZXQ7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated
|
|
3
|
-
*/
|
|
4
|
-
export function Shared(defaultValue) {
|
|
5
|
-
if (defaultValue) {
|
|
6
|
-
throw Error("Active-Connect/@Shared: defaultValue is no longer supported, please assign the value to the variable itself.");
|
|
7
|
-
}
|
|
8
|
-
return function _Shared(target, propertyKey) { };
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWN0aXZlLWNvbm5lY3QtbmcyL3NyYy9saWIvd2Vic29ja2V0L2RlY29yYXRvcnMvd2Vic29ja2V0L3NoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sVUFBVSxNQUFNLENBQUksWUFBZ0I7SUFDeEMsSUFBSSxZQUFZLEVBQUU7UUFDaEIsTUFBTSxLQUFLLENBQ1QsOEdBQThHLENBQy9HLENBQUM7S0FDSDtJQUNELE9BQU8sU0FBUyxPQUFPLENBQUMsTUFBVyxFQUFFLFdBQW1CLElBQUcsQ0FBQyxDQUFDO0FBQy9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGRlcHJlY2F0ZWRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBTaGFyZWQ8VD4oZGVmYXVsdFZhbHVlPzogVCkge1xyXG4gIGlmIChkZWZhdWx0VmFsdWUpIHtcclxuICAgIHRocm93IEVycm9yKFxyXG4gICAgICBcIkFjdGl2ZS1Db25uZWN0L0BTaGFyZWQ6IGRlZmF1bHRWYWx1ZSBpcyBubyBsb25nZXIgc3VwcG9ydGVkLCBwbGVhc2UgYXNzaWduIHRoZSB2YWx1ZSB0byB0aGUgdmFyaWFibGUgaXRzZWxmLlwiXHJcbiAgICApO1xyXG4gIH1cclxuICByZXR1cm4gZnVuY3Rpb24gX1NoYXJlZCh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZykge307XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LXJvdXRlLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY3RpdmUtY29ubmVjdC1uZzIvc3JjL2xpYi93ZWJzb2NrZXQvZGVjb3JhdG9ycy93ZWJzb2NrZXQvd2Vic29ja2V0LXJvdXRlLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdlYnNvY2tldENsaWVudCB9IGZyb20gJy4uLy4uL2NsaWVudCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFdlYnNvY2tldFJvdXRlU2VydmljZSB7XHJcbiAgbG9hZGluZ0VsZW1lbnRzOiBhbnk7XHJcbiAgY2xpZW50OiBXZWJzb2NrZXRDbGllbnQ7XHJcbn1cclxuIl19
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * from './client';
|
|
2
|
-
export * from './decorators/websocket/handle';
|
|
3
|
-
export * from './decorators/websocket/on-success';
|
|
4
|
-
export * from './decorators/websocket/on-reconnect';
|
|
5
|
-
export * from './decorators/websocket/outbound';
|
|
6
|
-
export * from './decorators/websocket/route';
|
|
7
|
-
export * from './decorators/websocket/shared';
|
|
8
|
-
export * from './decorators/websocket/websocket-route-service';
|
|
9
|
-
export * from './lifecycle/loading-status';
|
|
10
|
-
export * from './objects/outbound-object';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY3RpdmUtY29ubmVjdC1uZzIvc3JjL2xpYi93ZWJzb2NrZXQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NsaWVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycy93ZWJzb2NrZXQvaGFuZGxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzL3dlYnNvY2tldC9vbi1zdWNjZXNzJztcclxuZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzL3dlYnNvY2tldC9vbi1yZWNvbm5lY3QnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RlY29yYXRvcnMvd2Vic29ja2V0L291dGJvdW5kJztcclxuZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzL3dlYnNvY2tldC9yb3V0ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycy93ZWJzb2NrZXQvc2hhcmVkJztcclxuZXhwb3J0ICogZnJvbSAnLi9kZWNvcmF0b3JzL3dlYnNvY2tldC93ZWJzb2NrZXQtcm91dGUtc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGlmZWN5Y2xlL2xvYWRpbmctc3RhdHVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9vYmplY3RzL291dGJvdW5kLW9iamVjdCc7XHJcbiJdfQ==
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export class JsonParser {
|
|
2
|
-
static stringify(obj) {
|
|
3
|
-
return JSON.stringify(obj);
|
|
4
|
-
}
|
|
5
|
-
static parsingFunction(key, value) {
|
|
6
|
-
var a;
|
|
7
|
-
if (typeof value === "string") {
|
|
8
|
-
a =
|
|
9
|
-
/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}T[0-9]{2}\:[0-9]{2}\:[0-9]{2}\.[0-9]{3}Z$/.exec(value);
|
|
10
|
-
if (a) {
|
|
11
|
-
return new Date(a);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
return value;
|
|
15
|
-
}
|
|
16
|
-
static parse(str) {
|
|
17
|
-
if (str && str != "undefined") {
|
|
18
|
-
return JSON.parse(str, JsonParser.parsingFunction);
|
|
19
|
-
}
|
|
20
|
-
return str;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1wYXJzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY3RpdmUtY29ubmVjdC1uZzIvc3JjL2xpYi93ZWJzb2NrZXQvanNvbi9qc29uLXBhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sVUFBVTtJQUNyQixNQUFNLENBQUMsU0FBUyxDQUFDLEdBQVE7UUFDdkIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQVEsRUFBRSxLQUFVO1FBQ3pDLElBQUksQ0FBQyxDQUFDO1FBQ04sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDN0IsQ0FBQztnQkFDQyx3RUFBd0UsQ0FBQyxJQUFJLENBQzNFLEtBQUssQ0FDTixDQUFDO1lBQ0osSUFBSSxDQUFDLEVBQUU7Z0JBQ0wsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFRLENBQUMsQ0FBQzthQUMzQjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFXO1FBQ3RCLElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSSxXQUFXLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDcEQ7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBKc29uUGFyc2VyIHtcclxuICBzdGF0aWMgc3RyaW5naWZ5KG9iajogYW55KSB7XHJcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkob2JqKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBwYXJzaW5nRnVuY3Rpb24oa2V5OiBhbnksIHZhbHVlOiBhbnkpIHtcclxuICAgIHZhciBhO1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgICBhID1cclxuICAgICAgICAvXlswLTldezR9XFwtWzAtOV17Mn1cXC1bMC05XXsyfVRbMC05XXsyfVxcOlswLTldezJ9XFw6WzAtOV17Mn1cXC5bMC05XXszfVokLy5leGVjKFxyXG4gICAgICAgICAgdmFsdWVcclxuICAgICAgICApO1xyXG4gICAgICBpZiAoYSkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShhIGFzIGFueSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBwYXJzZShzdHI6IHN0cmluZykge1xyXG4gICAgaWYgKHN0ciAmJiBzdHIgIT0gXCJ1bmRlZmluZWRcIikge1xyXG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShzdHIsIEpzb25QYXJzZXIucGFyc2luZ0Z1bmN0aW9uKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHI7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { WebsocketClient } from '../client';
|
|
2
|
-
export class LoadingStatus extends WebsocketClient {
|
|
3
|
-
get isLoading() {
|
|
4
|
-
// return general loading
|
|
5
|
-
let anyTrue = false;
|
|
6
|
-
this.__proto__.loading.forEach((e) => {
|
|
7
|
-
anyTrue || (anyTrue = e);
|
|
8
|
-
});
|
|
9
|
-
if (!anyTrue)
|
|
10
|
-
this.__proto__.loading.clear();
|
|
11
|
-
return this.__proto__.loading.size > 0;
|
|
12
|
-
}
|
|
13
|
-
getLoadingMap() {
|
|
14
|
-
return this.__proto__.loading;
|
|
15
|
-
}
|
|
16
|
-
get getCurrent() {
|
|
17
|
-
let count = 0;
|
|
18
|
-
this.__proto__.loading.forEach((e) => {
|
|
19
|
-
if (e)
|
|
20
|
-
count++;
|
|
21
|
-
});
|
|
22
|
-
if (count == 0) {
|
|
23
|
-
this.__proto__.loading.clear();
|
|
24
|
-
}
|
|
25
|
-
return count;
|
|
26
|
-
}
|
|
27
|
-
get getTotal() {
|
|
28
|
-
return this.__proto__.loading.size;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy1zdGF0dXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY3RpdmUtY29ubmVjdC1uZzIvc3JjL2xpYi93ZWJzb2NrZXQvbGlmZWN5Y2xlL2xvYWRpbmctc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFNUMsTUFBTSxPQUFPLGFBQWMsU0FBUSxlQUFlO0lBR2hELElBQUksU0FBUztRQUNYLHlCQUF5QjtRQUN6QixJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBVSxFQUFFLEVBQUU7WUFDNUMsT0FBTyxLQUFQLE9BQU8sR0FBSyxDQUFDLEVBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTztZQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBQ0QsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQVUsRUFBRSxFQUFFO1lBQzVDLElBQUksQ0FBQztnQkFBRSxLQUFLLEVBQUUsQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2hDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDckMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2Vic29ja2V0Q2xpZW50IH0gZnJvbSAnLi4vY2xpZW50JztcclxuXHJcbmV4cG9ydCBjbGFzcyBMb2FkaW5nU3RhdHVzIGV4dGVuZHMgV2Vic29ja2V0Q2xpZW50IHtcclxuICBwcml2YXRlIF9fcHJvdG9fXzogYW55O1xyXG4gIHN0YXRpYyBsb2FkaW5nOiBNYXA8c3RyaW5nLCBib29sZWFuPjtcclxuICBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgLy8gcmV0dXJuIGdlbmVyYWwgbG9hZGluZ1xyXG4gICAgbGV0IGFueVRydWUgPSBmYWxzZTtcclxuICAgIHRoaXMuX19wcm90b19fLmxvYWRpbmcuZm9yRWFjaCgoZTogYm9vbGVhbikgPT4ge1xyXG4gICAgICBhbnlUcnVlIHx8PSBlO1xyXG4gICAgfSk7XHJcbiAgICBpZiAoIWFueVRydWUpIHRoaXMuX19wcm90b19fLmxvYWRpbmcuY2xlYXIoKTtcclxuICAgIHJldHVybiB0aGlzLl9fcHJvdG9fXy5sb2FkaW5nLnNpemUgPiAwO1xyXG4gIH1cclxuICBnZXRMb2FkaW5nTWFwKCk6IE1hcDxzdHJpbmcsIGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLl9fcHJvdG9fXy5sb2FkaW5nO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldEN1cnJlbnQoKTogbnVtYmVyIHtcclxuICAgIGxldCBjb3VudCA9IDA7XHJcbiAgICB0aGlzLl9fcHJvdG9fXy5sb2FkaW5nLmZvckVhY2goKGU6IGJvb2xlYW4pID0+IHtcclxuICAgICAgaWYgKGUpIGNvdW50Kys7XHJcbiAgICB9KTtcclxuICAgIGlmIChjb3VudCA9PSAwKSB7XHJcbiAgICAgIHRoaXMuX19wcm90b19fLmxvYWRpbmcuY2xlYXIoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBjb3VudDtcclxuICB9XHJcbiAgZ2V0IGdldFRvdGFsKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fX3Byb3RvX18ubG9hZGluZy5zaXplO1xyXG4gIH1cclxufVxyXG4iXX0=
|