node-opcua-client 2.123.0 → 2.124.0
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/dist/alarms_and_conditions/client_alarm_tools.js.map +1 -1
- package/dist/alarms_and_conditions/client_tools.js.map +1 -1
- package/dist/client_monitored_item_toolbox.js.map +1 -1
- package/dist/client_session_keepalive_manager.js.map +1 -1
- package/dist/client_utils.js.map +1 -1
- package/dist/private/client_base_impl.d.ts +11 -4
- package/dist/private/client_base_impl.js +130 -70
- package/dist/private/client_base_impl.js.map +1 -1
- package/dist/private/client_monitored_item_group_impl.js.map +1 -1
- package/dist/private/client_monitored_item_impl.js.map +1 -1
- package/dist/private/client_publish_engine.d.ts +9 -4
- package/dist/private/client_publish_engine.js +5 -99
- package/dist/private/client_publish_engine.js.map +1 -1
- package/dist/private/client_session_impl.d.ts +20 -4
- package/dist/private/client_session_impl.js +5 -24
- package/dist/private/client_session_impl.js.map +1 -1
- package/dist/private/client_subscription_impl.d.ts +5 -8
- package/dist/private/client_subscription_impl.js +83 -174
- package/dist/private/client_subscription_impl.js.map +1 -1
- package/dist/private/i_private_client.d.ts +0 -1
- package/dist/private/opcua_client_impl.js +1 -1
- package/dist/private/opcua_client_impl.js.map +1 -1
- package/dist/private/performance.js.map +1 -1
- package/dist/private/reconnection/client_publish_engine_reconnection.d.ts +2 -0
- package/dist/private/reconnection/client_publish_engine_reconnection.js +118 -0
- package/dist/private/reconnection/client_publish_engine_reconnection.js.map +1 -0
- package/dist/private/reconnection/client_reconnection.d.ts +2 -0
- package/dist/private/reconnection/client_reconnection.js +20 -0
- package/dist/private/reconnection/client_reconnection.js.map +1 -0
- package/dist/private/reconnection/client_subscription_reconnection.d.ts +7 -0
- package/dist/private/reconnection/client_subscription_reconnection.js +124 -0
- package/dist/private/reconnection/client_subscription_reconnection.js.map +1 -0
- package/dist/private/reconnection/reconnection.d.ts +12 -0
- package/dist/private/reconnection/reconnection.js +564 -0
- package/dist/private/reconnection/reconnection.js.map +1 -0
- package/dist/tools/findservers.js.map +1 -1
- package/dist/tools/read_history_server_capabilities.js.map +1 -1
- package/dist/verify.js.map +1 -1
- package/package.json +8 -8
- package/source/private/client_base_impl.ts +136 -81
- package/source/private/client_publish_engine.ts +13 -129
- package/source/private/client_session_impl.ts +23 -30
- package/source/private/client_subscription_impl.ts +85 -207
- package/source/private/i_private_client.ts +0 -2
- package/source/private/opcua_client_impl.ts +1 -1
- package/source/private/reconnection/client_publish_engine_reconnection.ts +146 -0
- package/source/private/reconnection/client_reconnection.ts +17 -0
- package/source/private/reconnection/client_subscription_reconnection.ts +147 -0
- package/source/{reconnection.ts → private/reconnection/reconnection.ts} +120 -72
|
@@ -0,0 +1,564 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @module node-opcua-client-private
|
|
4
|
+
*/
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.repair_client_sessions = exports.repair_client_session = exports._shouldNotContinue2 = exports._shouldNotContinue = void 0;
|
|
10
|
+
// tslint:disable:only-arrow-functions
|
|
11
|
+
const async_1 = __importDefault(require("async"));
|
|
12
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
13
|
+
const node_opcua_assert_1 = require("node-opcua-assert");
|
|
14
|
+
const node_opcua_debug_1 = require("node-opcua-debug");
|
|
15
|
+
const node_opcua_service_subscription_1 = require("node-opcua-service-subscription");
|
|
16
|
+
const node_opcua_status_code_1 = require("node-opcua-status-code");
|
|
17
|
+
const node_opcua_types_1 = require("node-opcua-types");
|
|
18
|
+
const node_opcua_client_dynamic_extension_object_1 = require("node-opcua-client-dynamic-extension-object");
|
|
19
|
+
const client_publish_engine_reconnection_1 = require("./client_publish_engine_reconnection");
|
|
20
|
+
const client_subscription_reconnection_1 = require("./client_subscription_reconnection");
|
|
21
|
+
const debugLog = (0, node_opcua_debug_1.make_debugLog)("RECONNECTION");
|
|
22
|
+
const doDebug = (0, node_opcua_debug_1.checkDebugFlag)("RECONNECTION");
|
|
23
|
+
const errorLog = (0, node_opcua_debug_1.make_errorLog)("RECONNECTION");
|
|
24
|
+
const warningLog = (0, node_opcua_debug_1.make_warningLog)("RECONNECTION");
|
|
25
|
+
function _shouldNotContinue3(client) {
|
|
26
|
+
if (!client._secureChannel) {
|
|
27
|
+
return new Error("Failure during reconnection : client or session is not usable anymore");
|
|
28
|
+
}
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
function _shouldNotContinue(session) {
|
|
32
|
+
if (!session._client || session.hasBeenClosed() || !session._client._secureChannel || session._client.isUnusable()) {
|
|
33
|
+
return new Error("Failure during reconnection : client or session is not usable anymore");
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
exports._shouldNotContinue = _shouldNotContinue;
|
|
38
|
+
function _shouldNotContinue2(subscription) {
|
|
39
|
+
if (!subscription.hasSession) {
|
|
40
|
+
return new Error("Failure during reconnection : client or session is not usable anymore");
|
|
41
|
+
}
|
|
42
|
+
return _shouldNotContinue(subscription.session);
|
|
43
|
+
}
|
|
44
|
+
exports._shouldNotContinue2 = _shouldNotContinue2;
|
|
45
|
+
//
|
|
46
|
+
// a new secure channel has be created, we need to reactivate the corresponding session,
|
|
47
|
+
// and reestablish the subscription and restart the publish engine.
|
|
48
|
+
//
|
|
49
|
+
//
|
|
50
|
+
// see OPC UA part 4 ( version 1.03 ) figure 34 page 106
|
|
51
|
+
// 6.5 Reestablishing subscription....
|
|
52
|
+
//
|
|
53
|
+
//
|
|
54
|
+
//
|
|
55
|
+
// +---------------------+
|
|
56
|
+
// | CreateSecureChannel |
|
|
57
|
+
// | CreateSession |
|
|
58
|
+
// | ActivateSession |
|
|
59
|
+
// +---------------------+
|
|
60
|
+
// |
|
|
61
|
+
// |
|
|
62
|
+
// v
|
|
63
|
+
// +---------------------+
|
|
64
|
+
// | CreateSubscription |<-------------------------------------------------------------+
|
|
65
|
+
// +---------------------+ |
|
|
66
|
+
// | (1)
|
|
67
|
+
// |
|
|
68
|
+
// v
|
|
69
|
+
// +---------------------+
|
|
70
|
+
// (2)------------->| StartPublishEngine |
|
|
71
|
+
// +---------------------+
|
|
72
|
+
// |
|
|
73
|
+
// V
|
|
74
|
+
// +---------------------+
|
|
75
|
+
// +------->| Monitor Connection |
|
|
76
|
+
// | +---------------------+
|
|
77
|
+
// | |
|
|
78
|
+
// | v
|
|
79
|
+
// | Good / \
|
|
80
|
+
// +-----------------/ SR? \______Broken_____+
|
|
81
|
+
// \ / |
|
|
82
|
+
// \ / |
|
|
83
|
+
// |
|
|
84
|
+
// v
|
|
85
|
+
// +---------------------+
|
|
86
|
+
// | |
|
|
87
|
+
// | CreateSecureChannel |<-----+
|
|
88
|
+
// | | |
|
|
89
|
+
// +---------------------+ |
|
|
90
|
+
// | |
|
|
91
|
+
// v |
|
|
92
|
+
// / \ |
|
|
93
|
+
// / SR? \______Bad________+
|
|
94
|
+
// \ /
|
|
95
|
+
// \ /
|
|
96
|
+
// |
|
|
97
|
+
// |Good
|
|
98
|
+
// v
|
|
99
|
+
// +---------------------+
|
|
100
|
+
// | |
|
|
101
|
+
// | ActivateSession |
|
|
102
|
+
// | |
|
|
103
|
+
// +---------------------+
|
|
104
|
+
// |
|
|
105
|
+
// +----------------------+
|
|
106
|
+
// |
|
|
107
|
+
// v +-------------------+ +----------------------+
|
|
108
|
+
// / \ | CreateSession | | |
|
|
109
|
+
// / SR? \______Bad_______>| ActivateSession |-----> | TransferSubscription |
|
|
110
|
+
// \ / | | | | (1)
|
|
111
|
+
// \ / +-------------------+ +----------------------+ ^
|
|
112
|
+
// | Good | |
|
|
113
|
+
// v (for each subscription) | |
|
|
114
|
+
// +--------------------+ / \ |
|
|
115
|
+
// | | OK / OK? \______Bad________+
|
|
116
|
+
// | RePublish |<----------------------------------------- \ /
|
|
117
|
+
// +-->| | \ /
|
|
118
|
+
// | +--------------------+
|
|
119
|
+
// | |
|
|
120
|
+
// | v
|
|
121
|
+
// | GOOD / \
|
|
122
|
+
// +------ / SR? \______Bad SubscriptionInvalidId______>(1)
|
|
123
|
+
// (2) \ /
|
|
124
|
+
// ^ \ /
|
|
125
|
+
// | |
|
|
126
|
+
// | |
|
|
127
|
+
// | BadMessageNotAvailable |
|
|
128
|
+
// +-------------------------------+
|
|
129
|
+
function _ask_for_subscription_republish(session, callback) {
|
|
130
|
+
// prettier-ignore
|
|
131
|
+
{
|
|
132
|
+
const err = _shouldNotContinue(session);
|
|
133
|
+
if (err) {
|
|
134
|
+
return callback(err);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
doDebug && debugLog(chalk_1.default.bgCyan.yellow.bold("_ask_for_subscription_republish "));
|
|
138
|
+
// assert(session.getPublishEngine().nbPendingPublishRequests === 0,
|
|
139
|
+
// "at this time, publish request queue shall still be empty");
|
|
140
|
+
const engine = session.getPublishEngine();
|
|
141
|
+
(0, client_publish_engine_reconnection_1.republish)(engine, (err) => {
|
|
142
|
+
doDebug && debugLog("_ask_for_subscription_republish : republish sent");
|
|
143
|
+
// prettier-ignore
|
|
144
|
+
{
|
|
145
|
+
const err = _shouldNotContinue(session);
|
|
146
|
+
if (err) {
|
|
147
|
+
return callback(err);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
doDebug && debugLog(chalk_1.default.bgCyan.green.bold("_ask_for_subscription_republish done "), err ? err.message : "OK");
|
|
151
|
+
if (err) {
|
|
152
|
+
warningLog("republish has failed with error :", err.message);
|
|
153
|
+
doDebug && debugLog("_ask_for_subscription_republish has : recreating subscription");
|
|
154
|
+
return repair_client_session_by_recreating_a_new_session(session._client, session, callback);
|
|
155
|
+
}
|
|
156
|
+
callback(err);
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
function create_session_and_repeat_if_failed(client, session, callback) {
|
|
160
|
+
// prettier-ignore
|
|
161
|
+
{
|
|
162
|
+
const err = _shouldNotContinue(session);
|
|
163
|
+
if (err) {
|
|
164
|
+
return callback(err);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
doDebug && debugLog(chalk_1.default.bgWhite.red(" => creating a new session ...."));
|
|
168
|
+
// create new session, based on old session,
|
|
169
|
+
// so we can reuse subscriptions data
|
|
170
|
+
client.__createSession_step2(session, (err, session1) => {
|
|
171
|
+
// prettier-ignore
|
|
172
|
+
{
|
|
173
|
+
const err = _shouldNotContinue(session);
|
|
174
|
+
if (err) {
|
|
175
|
+
return callback(err);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (!err && session1) {
|
|
179
|
+
(0, node_opcua_assert_1.assert)(session === session1, "session should have been recycled");
|
|
180
|
+
callback(err, session);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
doDebug && debugLog("Cannot complete subscription republish err = ", err?.message);
|
|
185
|
+
callback(err);
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
function repair_client_session_by_recreating_a_new_session(client, session, callback) {
|
|
190
|
+
// prettier-ignore
|
|
191
|
+
{
|
|
192
|
+
const err = _shouldNotContinue(session);
|
|
193
|
+
if (err) {
|
|
194
|
+
return callback(err);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
// As we don"t know if server has been rebooted or not,
|
|
198
|
+
// and may be upgraded in between, we have to invalidate the extra data type manager
|
|
199
|
+
(0, node_opcua_client_dynamic_extension_object_1.invalidateExtraDataTypeManager)(session);
|
|
200
|
+
// istanbul ignore next
|
|
201
|
+
if (doDebug) {
|
|
202
|
+
debugLog(" repairing client session by_recreating a new session for old session ", session.sessionId.toString());
|
|
203
|
+
}
|
|
204
|
+
let newSession;
|
|
205
|
+
const listenerCountBefore = session.listenerCount("");
|
|
206
|
+
function recreateSubscription(subscriptionsToRecreate, innerCallback) {
|
|
207
|
+
async_1.default.forEach(subscriptionsToRecreate, (subscriptionId, next) => {
|
|
208
|
+
// prettier-ignore
|
|
209
|
+
{
|
|
210
|
+
const err = _shouldNotContinue(session);
|
|
211
|
+
if (err) {
|
|
212
|
+
return next(err);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
if (!session.getPublishEngine().hasSubscription(subscriptionId)) {
|
|
216
|
+
doDebug && debugLog(chalk_1.default.red(" => CANNOT RECREATE SUBSCRIPTION "), subscriptionId);
|
|
217
|
+
return next();
|
|
218
|
+
}
|
|
219
|
+
const subscription = session.getPublishEngine().getSubscription(subscriptionId);
|
|
220
|
+
doDebug && debugLog(chalk_1.default.red(" => RECREATING SUBSCRIPTION "), subscriptionId);
|
|
221
|
+
(0, node_opcua_assert_1.assert)(subscription.session === newSession, "must have the new session");
|
|
222
|
+
(0, client_subscription_reconnection_1.recreateSubscriptionAndMonitoredItem)(subscription, (err1) => {
|
|
223
|
+
// prettier-ignore
|
|
224
|
+
{
|
|
225
|
+
const err = _shouldNotContinue(session);
|
|
226
|
+
if (err) {
|
|
227
|
+
return next(err);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
if (err1) {
|
|
231
|
+
doDebug && debugLog("_recreateSubscription failed !" + err1.message);
|
|
232
|
+
}
|
|
233
|
+
doDebug &&
|
|
234
|
+
debugLog(chalk_1.default.cyan(" => RECREATING SUBSCRIPTION AND MONITORED ITEM DONE subscriptionId="), subscriptionId);
|
|
235
|
+
next();
|
|
236
|
+
});
|
|
237
|
+
}, (err1) => {
|
|
238
|
+
// prettier-ignore
|
|
239
|
+
{
|
|
240
|
+
const err = _shouldNotContinue(session);
|
|
241
|
+
if (err) {
|
|
242
|
+
return innerCallback(err);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
if (!err1) {
|
|
246
|
+
// prettier-ignore
|
|
247
|
+
}
|
|
248
|
+
innerCallback(err1);
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
async_1.default.series([
|
|
252
|
+
function suspend_old_session_publish_engine(innerCallback) {
|
|
253
|
+
// prettier-ignore
|
|
254
|
+
{
|
|
255
|
+
const err = _shouldNotContinue(session);
|
|
256
|
+
if (err) {
|
|
257
|
+
return innerCallback(err);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
// istanbul ignore next
|
|
261
|
+
doDebug && debugLog(chalk_1.default.bgWhite.red(" => suspend old session publish engine...."));
|
|
262
|
+
session.getPublishEngine().suspend(true);
|
|
263
|
+
innerCallback();
|
|
264
|
+
},
|
|
265
|
+
function create_new_session(innerCallback) {
|
|
266
|
+
create_session_and_repeat_if_failed(client, session, (err, _newSession) => {
|
|
267
|
+
// prettier-ignore
|
|
268
|
+
{
|
|
269
|
+
const err = _shouldNotContinue(session);
|
|
270
|
+
if (err) {
|
|
271
|
+
return innerCallback(err);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
if (_newSession) {
|
|
275
|
+
newSession = _newSession;
|
|
276
|
+
}
|
|
277
|
+
innerCallback(err || undefined);
|
|
278
|
+
});
|
|
279
|
+
},
|
|
280
|
+
function activate_new_session(innerCallback) {
|
|
281
|
+
// prettier-ignore
|
|
282
|
+
{
|
|
283
|
+
const err = _shouldNotContinue(session);
|
|
284
|
+
if (err) {
|
|
285
|
+
return innerCallback(err);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
doDebug && debugLog(chalk_1.default.bgWhite.red(" => activating a new session ...."));
|
|
289
|
+
client._activateSession(newSession, newSession.userIdentityInfo, (err, session1) => {
|
|
290
|
+
// istanbul ignore next
|
|
291
|
+
doDebug && debugLog(" => activating a new session .... Done err=", err ? err.message : "null");
|
|
292
|
+
if (err) {
|
|
293
|
+
doDebug &&
|
|
294
|
+
debugLog("reactivation of the new session has failed: let be smart and close it before failing this repair attempt");
|
|
295
|
+
// but just on the server side, not on the client side
|
|
296
|
+
const closeSessionRequest = new node_opcua_types_1.CloseSessionRequest({
|
|
297
|
+
requestHeader: {
|
|
298
|
+
authenticationToken: newSession.authenticationToken
|
|
299
|
+
},
|
|
300
|
+
deleteSubscriptions: true
|
|
301
|
+
});
|
|
302
|
+
newSession._client.performMessageTransaction(closeSessionRequest, (err2) => {
|
|
303
|
+
if (err2) {
|
|
304
|
+
warningLog("closing session", err2.message);
|
|
305
|
+
}
|
|
306
|
+
// istanbul ignore next
|
|
307
|
+
doDebug && debugLog("the temporary replacement session is now closed");
|
|
308
|
+
// istanbul ignore next
|
|
309
|
+
doDebug && debugLog(" err ", err.message, "propagated upwards");
|
|
310
|
+
innerCallback(err);
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
else {
|
|
314
|
+
innerCallback(err ? err : undefined);
|
|
315
|
+
}
|
|
316
|
+
});
|
|
317
|
+
},
|
|
318
|
+
function attempt_subscription_transfer(innerCallback) {
|
|
319
|
+
// prettier-ignore
|
|
320
|
+
{
|
|
321
|
+
const err = _shouldNotContinue(session);
|
|
322
|
+
if (err) {
|
|
323
|
+
return innerCallback(err);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
// get the old subscriptions id from the old session
|
|
327
|
+
const subscriptionsIds = session.getPublishEngine().getSubscriptionIds();
|
|
328
|
+
doDebug && debugLog(" session subscriptionCount = ", newSession.getPublishEngine().subscriptionCount);
|
|
329
|
+
if (subscriptionsIds.length === 0) {
|
|
330
|
+
doDebug && debugLog(" No subscriptions => skipping transfer subscriptions");
|
|
331
|
+
return innerCallback(); // no need to transfer subscriptions
|
|
332
|
+
}
|
|
333
|
+
doDebug && debugLog(" => asking server to transfer subscriptions = [", subscriptionsIds.join(", "), "]");
|
|
334
|
+
// Transfer subscriptions - ask for initial values....
|
|
335
|
+
const subscriptionsToTransfer = new node_opcua_service_subscription_1.TransferSubscriptionsRequest({
|
|
336
|
+
sendInitialValues: true,
|
|
337
|
+
subscriptionIds: subscriptionsIds
|
|
338
|
+
});
|
|
339
|
+
if (newSession.getPublishEngine().nbPendingPublishRequests !== 0) {
|
|
340
|
+
warningLog("Warning : we should not be publishing here");
|
|
341
|
+
}
|
|
342
|
+
newSession.transferSubscriptions(subscriptionsToTransfer, (err, transferSubscriptionsResponse) => {
|
|
343
|
+
// may be the connection with server has been disconnected
|
|
344
|
+
// prettier-ignore
|
|
345
|
+
{
|
|
346
|
+
const err = _shouldNotContinue(session);
|
|
347
|
+
if (err) {
|
|
348
|
+
return innerCallback(err);
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
if (err || !transferSubscriptionsResponse) {
|
|
352
|
+
warningLog(chalk_1.default.bgCyan("May be the server is not supporting this feature"));
|
|
353
|
+
// when transfer subscription has failed, we have no other choice but
|
|
354
|
+
// recreate the subscriptions on the server side
|
|
355
|
+
const subscriptionsToRecreate = [...(subscriptionsToTransfer.subscriptionIds || [])];
|
|
356
|
+
warningLog(chalk_1.default.bgCyan("We need to recreate entirely the subscription"));
|
|
357
|
+
recreateSubscription(subscriptionsToRecreate, innerCallback);
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
360
|
+
const results = transferSubscriptionsResponse.results || [];
|
|
361
|
+
// istanbul ignore next
|
|
362
|
+
if (doDebug) {
|
|
363
|
+
debugLog(chalk_1.default.cyan(" => transfer subscriptions done"), results.map((x) => x.statusCode.toString()).join(" "));
|
|
364
|
+
}
|
|
365
|
+
const subscriptionsToRecreate = [];
|
|
366
|
+
// some subscriptions may be marked as invalid on the server side ...
|
|
367
|
+
// those one need to be recreated and repaired ....
|
|
368
|
+
for (let i = 0; i < results.length; i++) {
|
|
369
|
+
const statusCode = results[i].statusCode;
|
|
370
|
+
if (statusCode.equals(node_opcua_status_code_1.StatusCodes.BadSubscriptionIdInvalid)) {
|
|
371
|
+
// repair subscription
|
|
372
|
+
doDebug &&
|
|
373
|
+
debugLog(chalk_1.default.red(" WARNING SUBSCRIPTION "), subscriptionsIds[i], chalk_1.default.red(" SHOULD BE RECREATED"));
|
|
374
|
+
subscriptionsToRecreate.push(subscriptionsIds[i]);
|
|
375
|
+
}
|
|
376
|
+
else {
|
|
377
|
+
const availableSequenceNumbers = results[i].availableSequenceNumbers;
|
|
378
|
+
doDebug &&
|
|
379
|
+
debugLog(chalk_1.default.green(" SUBSCRIPTION "), subscriptionsIds[i], chalk_1.default.green(" CAN BE REPAIRED AND AVAILABLE "), availableSequenceNumbers);
|
|
380
|
+
// should be Good.
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
doDebug && debugLog(" new session subscriptionCount = ", newSession.getPublishEngine().subscriptionCount);
|
|
384
|
+
recreateSubscription(subscriptionsToRecreate, innerCallback);
|
|
385
|
+
});
|
|
386
|
+
},
|
|
387
|
+
function ask_for_subscription_republish(innerCallback) {
|
|
388
|
+
// prettier-ignore
|
|
389
|
+
{
|
|
390
|
+
const err = _shouldNotContinue(session);
|
|
391
|
+
if (err) {
|
|
392
|
+
return innerCallback(err);
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
// assert(newSession.getPublishEngine().nbPendingPublishRequests === 0, "we should not be publishing here");
|
|
396
|
+
// call Republish
|
|
397
|
+
return _ask_for_subscription_republish(newSession, (err) => {
|
|
398
|
+
if (err) {
|
|
399
|
+
warningLog("warning: Subscription republished has failed ", err.message);
|
|
400
|
+
}
|
|
401
|
+
innerCallback(err);
|
|
402
|
+
});
|
|
403
|
+
},
|
|
404
|
+
function start_publishing_as_normal(innerCallback) {
|
|
405
|
+
// prettier-ignore
|
|
406
|
+
{
|
|
407
|
+
const err = _shouldNotContinue(session);
|
|
408
|
+
if (err) {
|
|
409
|
+
return innerCallback(err);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
newSession.getPublishEngine().suspend(false);
|
|
413
|
+
const listenerCountAfter = session.listenerCount("");
|
|
414
|
+
(0, node_opcua_assert_1.assert)(newSession === session);
|
|
415
|
+
doDebug && debugLog("listenerCountBefore =", listenerCountBefore, "listenerCountAfter = ", listenerCountAfter);
|
|
416
|
+
innerCallback();
|
|
417
|
+
}
|
|
418
|
+
], (err) => {
|
|
419
|
+
doDebug && err && debugLog("repair_client_session_by_recreating_a_new_session failed with ", err.message);
|
|
420
|
+
callback(err);
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
function _repair_client_session(client, session, callback) {
|
|
424
|
+
const callback2 = (err2) => {
|
|
425
|
+
doDebug &&
|
|
426
|
+
debugLog("Session repair completed with err: ", err2 ? err2.message : "<no error>", session.sessionId.toString());
|
|
427
|
+
if (!err2) {
|
|
428
|
+
session.emit("session_repaired");
|
|
429
|
+
}
|
|
430
|
+
else {
|
|
431
|
+
session.emit("session_repaired_failed", err2);
|
|
432
|
+
}
|
|
433
|
+
callback(err2);
|
|
434
|
+
};
|
|
435
|
+
if (doDebug) {
|
|
436
|
+
doDebug && debugLog(chalk_1.default.yellow(" TRYING TO REACTIVATE EXISTING SESSION"), session.sessionId.toString());
|
|
437
|
+
doDebug && debugLog(" SubscriptionIds :", session.getPublishEngine().getSubscriptionIds());
|
|
438
|
+
}
|
|
439
|
+
// prettier-ignore
|
|
440
|
+
{
|
|
441
|
+
const err = _shouldNotContinue(session);
|
|
442
|
+
if (err) {
|
|
443
|
+
return callback(err);
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
client._activateSession(session, session.userIdentityInfo, (err, session2) => {
|
|
447
|
+
// prettier-ignore
|
|
448
|
+
{
|
|
449
|
+
const err = _shouldNotContinue(session);
|
|
450
|
+
if (err) {
|
|
451
|
+
return callback(err);
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
//
|
|
455
|
+
// Note: current limitation :
|
|
456
|
+
// - The reconnection doesn't work yet, if connection break is caused by a server that crashes and restarts.
|
|
457
|
+
//
|
|
458
|
+
doDebug && debugLog(" ActivateSession : ", err ? chalk_1.default.red(err.message) : chalk_1.default.green(" SUCCESS !!! "));
|
|
459
|
+
if (err) {
|
|
460
|
+
// activate old session has failed => let's recreate a new Channel and transfer the subscription
|
|
461
|
+
return repair_client_session_by_recreating_a_new_session(client, session, callback2);
|
|
462
|
+
}
|
|
463
|
+
else {
|
|
464
|
+
// activate old session has succeeded => let's call Republish
|
|
465
|
+
return _ask_for_subscription_republish(session, callback2);
|
|
466
|
+
}
|
|
467
|
+
});
|
|
468
|
+
}
|
|
469
|
+
function repair_client_session(client, session, callback) {
|
|
470
|
+
if (!client) {
|
|
471
|
+
doDebug && debugLog("Aborting reactivation of old session because user requested session to be close");
|
|
472
|
+
return callback();
|
|
473
|
+
}
|
|
474
|
+
doDebug && debugLog(chalk_1.default.yellow("Starting client session repair"));
|
|
475
|
+
const privateSession = session;
|
|
476
|
+
privateSession._reconnecting = privateSession._reconnecting || { reconnecting: false, pendingCallbacks: [] };
|
|
477
|
+
if (session.hasBeenClosed()) {
|
|
478
|
+
privateSession._reconnecting.reconnecting = false;
|
|
479
|
+
doDebug && debugLog("Aborting reactivation of old session because session has been closed");
|
|
480
|
+
return callback();
|
|
481
|
+
}
|
|
482
|
+
if (privateSession._reconnecting.reconnecting) {
|
|
483
|
+
doDebug && debugLog(chalk_1.default.bgCyan("Reconnection is already happening for session"), session.sessionId.toString());
|
|
484
|
+
privateSession._reconnecting.pendingCallbacks.push(callback);
|
|
485
|
+
return;
|
|
486
|
+
}
|
|
487
|
+
privateSession._reconnecting.reconnecting = true;
|
|
488
|
+
// get old transaction queue ...
|
|
489
|
+
const transactionQueue = privateSession.pendingTransactions ? privateSession.pendingTransactions.splice(0) : [];
|
|
490
|
+
const repeatedAction = (callback) => {
|
|
491
|
+
// prettier-ignore
|
|
492
|
+
{
|
|
493
|
+
const err = _shouldNotContinue(session);
|
|
494
|
+
if (err) {
|
|
495
|
+
return callback(err);
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
_repair_client_session(client, session, (err) => {
|
|
499
|
+
// prettier-ignore
|
|
500
|
+
{
|
|
501
|
+
const err = _shouldNotContinue(session);
|
|
502
|
+
if (err) {
|
|
503
|
+
return callback(err);
|
|
504
|
+
}
|
|
505
|
+
}
|
|
506
|
+
if (err) {
|
|
507
|
+
errorLog(chalk_1.default.red("session restoration has failed! err ="), err.message, session.sessionId.toString(), " => Let's retry");
|
|
508
|
+
if (!session.hasBeenClosed()) {
|
|
509
|
+
const delay = 2000;
|
|
510
|
+
errorLog(chalk_1.default.red(`... will retry session repair... in ${delay} ms`));
|
|
511
|
+
setTimeout(() => {
|
|
512
|
+
errorLog(chalk_1.default.red("Retrying session repair..."));
|
|
513
|
+
repeatedAction(callback);
|
|
514
|
+
}, delay);
|
|
515
|
+
return;
|
|
516
|
+
}
|
|
517
|
+
else {
|
|
518
|
+
errorLog(chalk_1.default.red("session restoration should be interrupted because session has been closed forcefully"));
|
|
519
|
+
}
|
|
520
|
+
// session does not need to be repaired anymore
|
|
521
|
+
callback();
|
|
522
|
+
return;
|
|
523
|
+
}
|
|
524
|
+
// istanbul ignore next
|
|
525
|
+
doDebug && debugLog(chalk_1.default.yellow("session has been restored"), session.sessionId.toString());
|
|
526
|
+
session.emit("session_restored");
|
|
527
|
+
callback(err);
|
|
528
|
+
});
|
|
529
|
+
};
|
|
530
|
+
repeatedAction((err) => {
|
|
531
|
+
privateSession._reconnecting.reconnecting = false;
|
|
532
|
+
const otherCallbacks = privateSession._reconnecting.pendingCallbacks;
|
|
533
|
+
privateSession._reconnecting.pendingCallbacks = [];
|
|
534
|
+
// re-inject element in queue
|
|
535
|
+
// istanbul ignore next
|
|
536
|
+
doDebug && debugLog(chalk_1.default.yellow("re-injecting transaction queue"), transactionQueue.length);
|
|
537
|
+
transactionQueue.forEach((e) => privateSession.pendingTransactions.push(e));
|
|
538
|
+
otherCallbacks.forEach((c) => c(err));
|
|
539
|
+
callback(err);
|
|
540
|
+
});
|
|
541
|
+
}
|
|
542
|
+
exports.repair_client_session = repair_client_session;
|
|
543
|
+
function repair_client_sessions(client, callback) {
|
|
544
|
+
// repair session
|
|
545
|
+
const sessions = client.getSessions();
|
|
546
|
+
doDebug && debugLog(chalk_1.default.red.bgWhite(" Starting sessions reactivation", sessions.length));
|
|
547
|
+
async_1.default.map(sessions, (session, next) => {
|
|
548
|
+
repair_client_session(client, session, (err) => {
|
|
549
|
+
next(null, err);
|
|
550
|
+
});
|
|
551
|
+
}, (err, allErrors) => {
|
|
552
|
+
err && errorLog("sessions reactivation completed with err: err ", err ? err.message : "null");
|
|
553
|
+
// prettier-ignore
|
|
554
|
+
{
|
|
555
|
+
const err = _shouldNotContinue3(client);
|
|
556
|
+
if (err) {
|
|
557
|
+
return callback(err);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
return callback(err);
|
|
561
|
+
});
|
|
562
|
+
}
|
|
563
|
+
exports.repair_client_sessions = repair_client_sessions;
|
|
564
|
+
//# sourceMappingURL=reconnection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconnection.js","sourceRoot":"","sources":["../../../source/private/reconnection/reconnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findservers.js","sourceRoot":"","sources":["../../source/tools/findservers.ts"],"names":[],"mappings":";;;;;;AAAA;;GAEG;AACH,kDAA0B;AAK1B,kEAA6D;AAkB7D,SAAgB,WAAW,CACvB,0BAAkC,EAClC,QAAkE;IAElE,MAAM,MAAM,GAAG,IAAI,iCAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,IAAI,OAAO,GAA6B,EAAE,CAAC;IAC3C,IAAI,SAAS,GAA0B,EAAE,CAAC;IAE1C,eAAK,CAAC,MAAM,CACR;QACI,CAAC,aAA4B,EAAE,EAAE;YAC7B,MAAM,CAAC,OAAO,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QAC9D,CAAC;QAED,CAAC,aAA4B,EAAE,EAAE;YAC7B,MAAM,CAAC,WAAW,CAAC,CAAC,GAAiB,EAAE,QAAmC,EAAE,EAAE;gBAC1E,IAAI,QAAQ,EAAE
|
|
1
|
+
{"version":3,"file":"findservers.js","sourceRoot":"","sources":["../../source/tools/findservers.ts"],"names":[],"mappings":";;;;;;AAAA;;GAEG;AACH,kDAA0B;AAK1B,kEAA6D;AAkB7D,SAAgB,WAAW,CACvB,0BAAkC,EAClC,QAAkE;IAElE,MAAM,MAAM,GAAG,IAAI,iCAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,IAAI,OAAO,GAA6B,EAAE,CAAC;IAC3C,IAAI,SAAS,GAA0B,EAAE,CAAC;IAE1C,eAAK,CAAC,MAAM,CACR;QACI,CAAC,aAA4B,EAAE,EAAE;YAC7B,MAAM,CAAC,OAAO,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QAC9D,CAAC;QAED,CAAC,aAA4B,EAAE,EAAE;YAC7B,MAAM,CAAC,WAAW,CAAC,CAAC,GAAiB,EAAE,QAAmC,EAAE,EAAE;gBAC1E,IAAI,QAAQ,EAAE;oBACV,OAAO,GAAG,QAAQ,CAAC;iBACtB;gBACD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,CAAC,aAA4B,EAAE,EAAE;YAC7B,MAAM,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,GAAiB,EAAE,UAAkC,EAAE,EAAE;gBACtG,IAAI,UAAU,EAAE;oBACZ,SAAS,GAAG,UAAU,CAAC;iBAC1B;gBACD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,EACD,CAAC,GAAG,EAAE,EAAE;QACJ,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;YACnB,QAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACP,CAAC,CACJ,CAAC;AACN,CAAC;AAvCD,kCAuCC;AAUD,SAAgB,oBAAoB,CAChC,0BAAkC,EAClC,QAAmE;IAEnE,MAAM,MAAM,GAAG,IAAI,iCAAc,CAAC,EAAE,kBAAkB,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,MAAM,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,GAAW,EAAE,EAAE;QACvD,IAAI,CAAC,GAAG,EAAE;YACN,MAAM,CAAC,oBAAoB,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;gBAC1C,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;oBACnB,QAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;SACN;aAAM;YACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;gBACnB,QAAS,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,CAAC,CAAC;SACN;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAnBD,oDAmBC;AAED,iCAAiC;AACjC,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,MAAM,CAAC,OAAe,CAAC,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAE,MAAM,CAAC,OAAe,CAAC,oBAAoB,CAAC,CAAC;AACjH,MAAM,CAAC,OAAe,CAAC,WAAW,GAAG,OAAO,CAAC,YAAY,CAAE,MAAM,CAAC,OAAe,CAAC,WAAW,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read_history_server_capabilities.js","sourceRoot":"","sources":["../../source/tools/read_history_server_capabilities.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,yDAA2C;AAC3C,+DAAiD;AACjD,iEAAqD;AAErD,yDAA2C;AAE3C,uGAAwG;AAExG,uDAAoD;AAcpD,SAAgB,6BAA6B,CACzC,OAAsB,EACtB,QAAgF;IAEhF,IAAI,CAAC,QAAQ,EAAE
|
|
1
|
+
{"version":3,"file":"read_history_server_capabilities.js","sourceRoot":"","sources":["../../source/tools/read_history_server_capabilities.ts"],"names":[],"mappings":"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"}
|
package/dist/verify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../source/verify.ts"],"names":[],"mappings":";;;AAGA,yDAK2B;AAC3B,uDAAiG;AAGjG,MAAM,OAAO,GAAG,IAAA,iCAAc,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,UAAU,GAAG,IAAA,kCAAe,EAAC,UAAU,CAAC,CAAC;AAE/C,SAAgB,6BAA6B,CACzC,WAAwB,EACxB,eAAuB,EACvB,IAAyB,EACzB,cAAsB;IAEtB,MAAM,eAAe,GAAG,IAAA,sCAAkB,EAAC,WAAW,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAEvB,IAAI,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,EAAE
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../source/verify.ts"],"names":[],"mappings":";;;AAGA,yDAK2B;AAC3B,uDAAiG;AAGjG,MAAM,OAAO,GAAG,IAAA,iCAAc,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,UAAU,GAAG,IAAA,kCAAe,EAAC,UAAU,CAAC,CAAC;AAE/C,SAAgB,6BAA6B,CACzC,WAAwB,EACxB,eAAuB,EACvB,IAAyB,EACzB,cAAsB;IAEtB,MAAM,eAAe,GAAG,IAAA,sCAAkB,EAAC,WAAW,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAEvB,IAAI,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,EAAE;QAC7E,mCAAmC;QACnC,gCAAgC;QAChC,UAAU,CACN,sDAAsD;YAClD,mBAAmB,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI;YACtF,mBAAmB,eAAe,EAAE,CAC3C,CAAC;KACL;IACD,0CAA0C;IAC1C,IAAI,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE;QAC7E,0BAA0B;QAC1B,UAAU,CACN,gDAAgD;YAC5C,yCAAyC;YACzC,oBAAoB,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI;YACtF,oBAAoB,eAAe,EAAE,CAC5C,CAAC;KACL;SAAM;QACH,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACzC,IAAI,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE;YACvF,4CAA4C;YAC5C,UAAU,CACN,6EAA6E;gBACzE,6DAA6D;gBAC7D,oBAAoB,eAAe,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI;gBACtF,oBAAoB,eAAe,IAAI,CAC9C,CAAC;SACL;KACJ;IACD,wDAAwD;IACxD,MAAM,yBAAyB,GAAG,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,yBAAyB,CAAC;IACzH,IAAI,CAAC,yBAAyB,EAAE;QAC5B,UAAU,CACN,yFAAyF;YACrF,+FAA+F,IAAI,mBAAmB;YACtH,qBAAqB,cAAc,IAAI;YACvC,qBAAqB,eAAe,IAAI,CAC/C,CAAC;QACF,OAAO;KACV;SAAM,IAAI,yBAAyB,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE;QACxD,UAAU,CACN,sEAAsE,IAAI,mBAAmB;YACzF,8DAA8D,IAAI,mBAAmB;YACrF,iCAAiC,yBAAyB,CAAC,CAAC,CAAC,IAAI;YACjE,GAAG,IAAI,sBAAsB,cAAc,IAAI;YAC/C,6BAA6B,eAAe,IAAI,CACvD,CAAC;KACL;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC;IACrE,IAAI,CAAC,QAAQ,EAAE;QACX,UAAU,CAAC,wDAAwD,GAAG,qBAAqB,eAAe,EAAE,CAAC,CAAC;KACjH;SAAM;QACH,mHAAmH;QACnH,8BAA8B;QAC9B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YACnH,UAAU,CACN,kIAAkI;gBAC9H,uEAAuE;gBACvE,qBAAqB,eAAe,EAAE,CAC7C,CAAC;YACF,UAAU,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;SACnE;KACJ;IACD,MAAM,WAAW,GAAG,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC;IAC3E,IAAI,CAAC,WAAW,EAAE;QACd,UAAU,CAAC,2DAA2D,GAAG,qBAAqB,eAAe,EAAE,CAAC,CAAC;KACpH;SAAM;QACH,mHAAmH;QACnH,8BAA8B;QAC9B,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YACpD,UAAU,CACN,2FAA2F;gBACvF,uEAAuE;gBACvE,qBAAqB,eAAe,EAAE,CAC7C,CAAC;SACL;KACJ;IAED,MAAM,eAAe,GAAG,eAAe,CAAC,cAAc,CAAC,oBAAoB,CAAC,SAAS,GAAG,CAAC,CAAC;IAC1F,IAAI,eAAe,GAAG,IAAI,EAAE;QACxB,QAAQ,CACJ,qGAAqG,eAAe,KAAK;YACrH,gEAAgE;YAChE,qBAAqB,eAAe,EAAE,CAC7C,CAAC;KACL;SAAM,IAAI,eAAe,GAAG,IAAI,EAAE;QAC/B,UAAU,CACN,sFAAsF,eAAe,IAAI;YACrG,qEAAqE;YACrE,qBAAqB,eAAe,EAAE,CAC7C,CAAC;KACL;AACL,CAAC;AAtGD,sEAsGC;AAEM,KAAK,UAAU,6BAA6B,CAC/C,YAA+B,EAC/B,cAAmC,EACnC,kBAA2C,EAC3C,cAAsB;IAEtB,mFAAmF;IACnF,MAAM,WAAW,GAAG,YAAY,CAAC,cAAc,EAAE,CAAC;IAClD,MAAM,UAAU,GAAG,YAAY,CAAC,aAAa,EAAE,CAAC;IAChD,EAAE;IACF,IAAI,CAAC,IAAA,iDAA6B,EAAC,WAAW,EAAE,UAAU,CAAC,EAAE;QACzD,QAAQ,CAAC,2FAA2F,CAAC,CAAC;QACtG,QAAQ,CAAC,sEAAsE,CAAC,CAAC;QACjF,QAAQ,CAAC,kCAAkC,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;QAC1E,QAAQ,CAAC,kCAAkC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5E,QAAQ,CAAC,kCAAkC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;QAC3E,MAAM,IAAI,KAAK,CACX,yHAAyH,CAC5H,CAAC;KACL;IACD,iFAAiF;IACjF,MAAM,cAAc,GAAG,IAAA,qCAAiB,EAAC,UAAU,CAAC,CAAC;IACrD,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1D,IAAI,eAAe,IAAI,IAAI,EAAE;QACzB,UAAU,CACN,2HAA2H,eAAe,MAAM;YAC5I,2FAA2F;YAC3F,OAAO,cAAc,qEAAqE,CACjG,CAAC;KACL;IACD,sGAAsG;IACtG,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAEvE,MAAM,OAAO,GAA6B;QACtC,yBAAyB,EAAE,KAAK;QAChC,+BAA+B,EAAE,KAAK;QACtC,wBAAwB,EAAE,KAAK;KAClC,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAEhF,IAAI,MAAM,KAAK,MAAM,EAAE;QACnB,UAAU,CAAC,wDAAwD,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;KAC1H;IAED,6BAA6B,CAAC,WAAW,EAAE,YAAY,CAAC,eAAe,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;AAC7G,CAAC;AA9CD,sEA8CC"}
|