@luka-cat-mimi/n8n-nodes-feishu 0.9.21 → 0.9.23

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.
@@ -43,14 +43,21 @@ const ws_config_1 = require("./ws-config");
43
43
  const data_cache_1 = require("../data-cache");
44
44
  const enum_1 = require("../enum");
45
45
  const pbbp2_1 = require("../proto-buf/pbbp2");
46
+ const BACKOFF_BASE_MS = 1000;
46
47
  class WSClient {
47
48
  constructor(params) {
48
49
  this.wsConfig = new ws_config_1.WSConfig();
49
- this.isConnecting = false;
50
50
  this.shouldReconnect = true;
51
+ this.generation = 0;
52
+ this.connecting = false;
53
+ this.reconnectAttempt = 0;
54
+ this.lastPongAt = 0;
55
+ this.connectionState = 'idle';
51
56
  this.reconnectInfo = {
52
57
  lastConnectTime: 0,
53
58
  nextConnectTime: 0,
59
+ attempt: 0,
60
+ lastPongAt: 0,
54
61
  };
55
62
  const { appId, appSecret, logger, helpers, agent, domain, autoReconnect = true } = params;
56
63
  this.logger = logger;
@@ -81,12 +88,16 @@ class WSClient {
81
88
  },
82
89
  timeout: 15000,
83
90
  });
84
- const { code, data: { URL: connectUrl, ClientConfig }, msg, } = JSON.parse(response);
91
+ const { code, data, msg } = JSON.parse(response);
85
92
  if (code !== enum_1.ErrorCode.ok) {
86
- this.logger.error(`[FeishuNode:ws] code: ${code}, ${code === enum_1.ErrorCode.system_busy ? msg : 'system busy'}`);
87
- if (code === enum_1.ErrorCode.system_busy || code === enum_1.ErrorCode.internal_error) {
88
- return false;
89
- }
93
+ this.logger.error(`pull connect config failed, code: ${code}, msg: ${msg}`);
94
+ return { ok: false, reason: this.classifyCode(code) };
95
+ }
96
+ const connectUrl = data === null || data === void 0 ? void 0 : data.URL;
97
+ const ClientConfig = data === null || data === void 0 ? void 0 : data.ClientConfig;
98
+ if (!connectUrl || !ClientConfig) {
99
+ this.logger.error('pull connect config missing URL/ClientConfig');
100
+ return { ok: false, reason: enum_1.ConnectFailReason.server_error };
90
101
  }
91
102
  const parsedUrl = new URL(connectUrl);
92
103
  const device_id = parsedUrl.searchParams.get('device_id');
@@ -100,12 +111,27 @@ class WSClient {
100
111
  reconnectInterval: ClientConfig.ReconnectInterval * 1000,
101
112
  reconnectNonce: ClientConfig.ReconnectNonce * 1000,
102
113
  });
103
- this.logger.debug(`[FeishuNode:ws] get connect config success, ws url: ${connectUrl}`);
104
- return true;
114
+ this.logger.debug(`get connect config success, ws url: ${connectUrl}`);
115
+ return { ok: true };
105
116
  }
106
117
  catch (e) {
107
- this.logger.error('[FeishuNode:ws]', (e === null || e === void 0 ? void 0 : e.message) || 'system busy');
108
- return false;
118
+ this.logger.error('pull connect config error', (e === null || e === void 0 ? void 0 : e.message) || 'system busy');
119
+ return { ok: false, reason: enum_1.ConnectFailReason.network };
120
+ }
121
+ }
122
+ classifyCode(code) {
123
+ switch (code) {
124
+ case enum_1.ErrorCode.exceed_conn_limit:
125
+ return enum_1.ConnectFailReason.exceed_conn_limit;
126
+ case enum_1.ErrorCode.auth_failed:
127
+ return enum_1.ConnectFailReason.auth_failed;
128
+ case enum_1.ErrorCode.forbidden:
129
+ return enum_1.ConnectFailReason.forbidden;
130
+ case enum_1.ErrorCode.system_busy:
131
+ case enum_1.ErrorCode.internal_error:
132
+ return enum_1.ConnectFailReason.system_busy;
133
+ default:
134
+ return enum_1.ConnectFailReason.server_error;
109
135
  }
110
136
  }
111
137
  connect() {
@@ -116,103 +142,164 @@ class WSClient {
116
142
  wsInstance = new ws_1.default(connectUrl, { agent });
117
143
  }
118
144
  catch (e) {
119
- this.logger.error('[FeishuNode:ws] new WebSocket error');
120
- }
121
- if (!wsInstance) {
122
- return Promise.resolve(false);
145
+ this.logger.error('new WebSocket error');
146
+ return Promise.resolve({ ok: false, reason: enum_1.ConnectFailReason.network });
123
147
  }
124
148
  return new Promise((resolve) => {
125
- wsInstance.on('open', () => {
126
- this.logger.debug('[FeishuNode:ws] ws connect success');
149
+ let settled = false;
150
+ const onOpen = () => {
151
+ this.logger.debug('ws connect success');
127
152
  this.wsConfig.setWSInstance(wsInstance);
128
- this.pingLoop();
129
- resolve(true);
130
- });
131
- wsInstance.on('error', () => {
132
- this.logger.error('[FeishuNode:ws] ws connect failed');
133
- resolve(false);
134
- });
153
+ this.lastPongAt = Date.now();
154
+ this.startPingLoop();
155
+ settle({ ok: true });
156
+ };
157
+ const onError = (err) => {
158
+ var _a;
159
+ this.logger.error(`ws connect failed: ${(_a = err === null || err === void 0 ? void 0 : err.message) !== null && _a !== void 0 ? _a : 'unknown error'}`);
160
+ settle({ ok: false, reason: enum_1.ConnectFailReason.network });
161
+ };
162
+ const onUnexpectedResponse = (_req, res) => {
163
+ settle({ ok: false, reason: this.parseHandshakeFailure(res) });
164
+ };
165
+ const settle = (result) => {
166
+ if (settled) {
167
+ return;
168
+ }
169
+ settled = true;
170
+ wsInstance.removeListener('open', onOpen);
171
+ wsInstance.removeListener('error', onError);
172
+ wsInstance.removeListener('unexpected-response', onUnexpectedResponse);
173
+ resolve(result);
174
+ };
175
+ wsInstance.on('open', onOpen);
176
+ wsInstance.on('error', onError);
177
+ wsInstance.on('unexpected-response', onUnexpectedResponse);
135
178
  });
136
179
  }
137
- async reConnect(isStart = false) {
138
- if (this.isConnecting) {
139
- this.logger.debug('[FeishuNode:ws] repeat connection');
180
+ parseHandshakeFailure(res) {
181
+ var _a;
182
+ const headers = ((_a = res === null || res === void 0 ? void 0 : res.headers) !== null && _a !== void 0 ? _a : {});
183
+ const statusRaw = headers[enum_1.HeaderKey.handshake_status];
184
+ const msg = headers[enum_1.HeaderKey.handshake_msg];
185
+ const status = statusRaw !== undefined ? Number(statusRaw) : NaN;
186
+ if (Number.isNaN(status)) {
187
+ this.logger.error(`handshake failed without status header, http status: ${res === null || res === void 0 ? void 0 : res.statusCode}`);
188
+ return enum_1.ConnectFailReason.server_error;
189
+ }
190
+ if (status === enum_1.ErrorCode.auth_failed) {
191
+ const authErrCode = Number(headers[enum_1.HeaderKey.handshake_autherrcode]);
192
+ if (authErrCode === enum_1.ErrorCode.exceed_conn_limit) {
193
+ this.logger.warn(`connection limit exceeded (max 50 per app). ${msg !== null && msg !== void 0 ? msg : ''}`.trim());
194
+ return enum_1.ConnectFailReason.exceed_conn_limit;
195
+ }
196
+ this.logger.error(`handshake auth failed: ${msg !== null && msg !== void 0 ? msg : ''}`.trim());
197
+ return enum_1.ConnectFailReason.auth_failed;
198
+ }
199
+ if (status === enum_1.ErrorCode.forbidden) {
200
+ this.logger.error(`handshake forbidden: ${msg !== null && msg !== void 0 ? msg : ''}`.trim());
201
+ return enum_1.ConnectFailReason.forbidden;
202
+ }
203
+ this.logger.error(`handshake failed, status: ${status}, ${msg !== null && msg !== void 0 ? msg : ''}`.trim());
204
+ return enum_1.ConnectFailReason.server_error;
205
+ }
206
+ async connectOnce() {
207
+ this.reconnectInfo.lastConnectTime = Date.now();
208
+ const configResult = await this.pullConnectConfig();
209
+ if (!configResult.ok) {
210
+ return configResult;
211
+ }
212
+ const connectResult = await this.connect();
213
+ if (connectResult.ok) {
214
+ this.communicate();
215
+ }
216
+ return connectResult;
217
+ }
218
+ async runConnect(generation) {
219
+ if (generation !== this.generation || !this.shouldReconnect) {
140
220
  return;
141
221
  }
142
- this.isConnecting = true;
143
- const tryConnect = () => {
144
- this.reconnectInfo.lastConnectTime = Date.now();
145
- return this.pullConnectConfig()
146
- .then((isSuccess) => (isSuccess ? this.connect() : Promise.resolve(false)))
147
- .then((isSuccess) => {
148
- if (isSuccess) {
149
- this.communicate();
150
- return Promise.resolve(true);
151
- }
152
- return Promise.resolve(false);
153
- });
154
- };
155
- if (this.pingInterval) {
156
- clearTimeout(this.pingInterval);
222
+ if (this.connecting) {
223
+ this.logger.debug('connect already in progress, skip');
224
+ return;
157
225
  }
158
- const wsInstance = this.wsConfig.getWSInstance();
159
- if (isStart) {
160
- if (wsInstance) {
161
- wsInstance === null || wsInstance === void 0 ? void 0 : wsInstance.terminate();
162
- }
163
- if (this.reconnectInterval) {
164
- clearTimeout(this.reconnectInterval);
165
- }
166
- let isSuccess = false;
167
- try {
168
- isSuccess = await tryConnect();
169
- }
170
- finally {
171
- this.isConnecting = false;
172
- }
173
- if (!isSuccess) {
174
- this.logger.error('[FeishuNode:ws] connect failed');
175
- await this.reConnect();
176
- }
177
- this.logger.info('[FeishuNode:ws] ws client ready');
226
+ this.connecting = true;
227
+ this.connectionState = this.reconnectAttempt > 0 ? 'reconnecting' : 'connecting';
228
+ let result;
229
+ try {
230
+ result = await this.connectOnce();
231
+ }
232
+ finally {
233
+ this.connecting = false;
234
+ }
235
+ if (generation !== this.generation || !this.shouldReconnect) {
178
236
  return;
179
237
  }
180
- const { autoReconnect, reconnectNonce, reconnectCount, reconnectInterval } = this.wsConfig.getWS();
181
- if (!autoReconnect) {
238
+ if (result.ok) {
239
+ this.connectionState = 'connected';
240
+ this.reconnectAttempt = 0;
241
+ this.reconnectInfo.attempt = 0;
242
+ this.logger.info('ws client ready');
182
243
  return;
183
244
  }
184
- this.logger.debug('[FeishuNode:ws] reconnect');
185
- if (wsInstance) {
186
- wsInstance === null || wsInstance === void 0 ? void 0 : wsInstance.terminate();
187
- }
188
- this.wsConfig.setWSInstance(null);
189
- const reconnectNonceTime = reconnectNonce ? reconnectNonce * Math.random() : 0;
190
- this.reconnectInterval = setTimeout(async () => {
191
- (async function loopReConnect(count) {
192
- count++;
193
- const isSuccess = await tryConnect();
194
- if (isSuccess) {
195
- this.logger.debug('[FeishuNode:ws] reconnect success');
196
- this.isConnecting = false;
197
- return;
198
- }
199
- this.logger.info(`[FeishuNode:ws] unable to connect to the server after trying ${count} times`);
200
- if (reconnectCount >= 0 && count >= reconnectCount) {
201
- this.isConnecting = false;
202
- return;
203
- }
204
- this.reconnectInterval = setTimeout(() => {
205
- loopReConnect.bind(this)(count);
206
- }, reconnectInterval);
207
- this.reconnectInfo.nextConnectTime = Date.now() + reconnectInterval;
208
- }).bind(this)(0);
209
- }, reconnectNonceTime);
210
- this.reconnectInfo.nextConnectTime = Date.now() + reconnectNonceTime;
245
+ this.connectionState = 'reconnecting';
246
+ this.scheduleReconnect(result.reason);
247
+ }
248
+ scheduleReconnect(reason) {
249
+ if (!this.shouldReconnect || !this.wsConfig.getWS('autoReconnect')) {
250
+ return;
251
+ }
252
+ if (reason === enum_1.ConnectFailReason.auth_failed || reason === enum_1.ConnectFailReason.forbidden) {
253
+ this.logger.error(`unrecoverable error (${reason}), stop reconnecting. Please check the app credentials / event subscription permissions.`);
254
+ this.connectionState = 'stopped';
255
+ return;
256
+ }
257
+ const { reconnectCount } = this.wsConfig.getWS();
258
+ if (reconnectCount >= 0 && this.reconnectAttempt >= reconnectCount) {
259
+ this.logger.error(`unable to connect after ${this.reconnectAttempt} attempts, give up`);
260
+ this.connectionState = 'stopped';
261
+ return;
262
+ }
263
+ const delay = this.computeBackoff(reason);
264
+ this.reconnectAttempt += 1;
265
+ this.reconnectInfo.attempt = this.reconnectAttempt;
266
+ if (this.reconnectTimer) {
267
+ clearTimeout(this.reconnectTimer);
268
+ }
269
+ const generation = this.generation;
270
+ this.reconnectTimer = setTimeout(() => {
271
+ this.reconnectTimer = undefined;
272
+ void this.runConnect(generation);
273
+ }, delay);
274
+ this.reconnectInfo.nextConnectTime = Date.now() + delay;
275
+ this.logger.info(`reconnect scheduled in ${delay}ms (attempt ${this.reconnectAttempt}` +
276
+ `${reconnectCount >= 0 ? `/${reconnectCount}` : ''}${reason ? `, reason: ${reason}` : ''})`);
277
+ }
278
+ computeBackoff(reason) {
279
+ const { reconnectInterval, reconnectNonce } = this.wsConfig.getWS();
280
+ const cap = reconnectInterval || 120 * 1000;
281
+ let delay = Math.min(BACKOFF_BASE_MS * 2 ** this.reconnectAttempt, cap);
282
+ if (reason === enum_1.ConnectFailReason.exceed_conn_limit) {
283
+ delay = Math.min(Math.max(delay, 10 * 1000), cap);
284
+ }
285
+ const jitter = reconnectNonce ? reconnectNonce * Math.random() : 0;
286
+ return Math.floor(delay + jitter);
287
+ }
288
+ startPingLoop() {
289
+ if (this.pingInterval) {
290
+ clearTimeout(this.pingInterval);
291
+ }
292
+ this.pingLoop();
211
293
  }
212
294
  pingLoop() {
213
295
  const { serviceId, pingInterval } = this.wsConfig.getWS();
214
296
  const wsInstance = this.wsConfig.getWSInstance();
215
297
  if ((wsInstance === null || wsInstance === void 0 ? void 0 : wsInstance.readyState) === ws_1.default.OPEN) {
298
+ if (this.lastPongAt && Date.now() - this.lastPongAt > pingInterval * 2 + 5000) {
299
+ this.logger.warn('no pong received for too long, connection considered dead, terminating');
300
+ wsInstance.terminate();
301
+ return;
302
+ }
216
303
  const frame = {
217
304
  headers: [
218
305
  {
@@ -226,7 +313,7 @@ class WSClient {
226
313
  LogID: 0,
227
314
  };
228
315
  this.sendMessage(frame);
229
- this.logger.debug('[FeishuNode:ws] ping success');
316
+ this.logger.debug('ping success');
230
317
  }
231
318
  this.pingInterval = setTimeout(this.pingLoop.bind(this), pingInterval);
232
319
  }
@@ -242,17 +329,20 @@ class WSClient {
242
329
  await this.handleEventData(data);
243
330
  }
244
331
  });
245
- wsInstance === null || wsInstance === void 0 ? void 0 : wsInstance.on('error', (e) => {
246
- this.logger.error('[FeishuNode:ws] ws error');
332
+ wsInstance === null || wsInstance === void 0 ? void 0 : wsInstance.on('error', () => {
333
+ this.logger.error('ws error');
247
334
  });
248
335
  wsInstance === null || wsInstance === void 0 ? void 0 : wsInstance.on('close', () => {
249
- if (this.shouldReconnect) {
250
- this.logger.info('[FeishuNode:ws] client closed unexpectedly, try to reconnect');
251
- this.reConnect();
336
+ if (this.wsConfig.getWSInstance() !== wsInstance) {
337
+ return;
252
338
  }
253
- else {
254
- this.logger.debug('[FeishuNode:ws] client closed');
339
+ if (!this.shouldReconnect) {
340
+ this.logger.debug('client closed');
341
+ return;
255
342
  }
343
+ this.logger.info('client closed unexpectedly, try to reconnect');
344
+ this.connectionState = 'reconnecting';
345
+ this.scheduleReconnect();
256
346
  });
257
347
  }
258
348
  async handleControlData(data) {
@@ -263,7 +353,9 @@ class WSClient {
263
353
  return;
264
354
  }
265
355
  if (type === enum_1.MessageType.pong && payload) {
266
- this.logger.debug('[FeishuNode:ws] receive pong');
356
+ this.logger.debug('receive pong');
357
+ this.lastPongAt = Date.now();
358
+ this.reconnectInfo.lastPongAt = this.lastPongAt;
267
359
  const dataString = new TextDecoder('utf-8').decode(payload);
268
360
  const { PingInterval, ReconnectCount, ReconnectInterval, ReconnectNonce } = JSON.parse(dataString);
269
361
  this.wsConfig.updateWs({
@@ -272,7 +364,7 @@ class WSClient {
272
364
  reconnectInterval: ReconnectInterval * 1000,
273
365
  reconnectNonce: ReconnectNonce * 1000,
274
366
  });
275
- this.logger.debug('[FeishuNode:ws] update wsConfig with pong data');
367
+ this.logger.debug('update wsConfig with pong data');
276
368
  }
277
369
  }
278
370
  async handleEventData(data) {
@@ -296,7 +388,7 @@ class WSClient {
296
388
  if (!mergedData) {
297
389
  return;
298
390
  }
299
- this.logger.debug(`[FeishuNode:ws] receive message, message_type: ${type}; message_id: ${message_id}; trace_id: ${trace_id}; data: ${mergedData.data}`);
391
+ this.logger.debug(`receive message, message_type: ${type}; message_id: ${message_id}; trace_id: ${trace_id}; data: ${mergedData.data}`);
300
392
  const respPayload = {
301
393
  code: enum_1.HttpStatusCode.ok,
302
394
  };
@@ -310,7 +402,7 @@ class WSClient {
310
402
  catch (error) {
311
403
  respPayload.code = enum_1.HttpStatusCode.internal_server_error;
312
404
  const errorMessage = error instanceof Error ? error.message : String(error);
313
- this.logger.error(`[FeishuNode:ws] invoke event failed, message_type: ${type}; message_id: ${message_id}; trace_id: ${trace_id}; error: ${errorMessage}`);
405
+ this.logger.error(`invoke event failed, message_type: ${type}; message_id: ${message_id}; trace_id: ${trace_id}; error: ${errorMessage}`);
314
406
  }
315
407
  const endTime = Date.now();
316
408
  this.sendMessage({
@@ -326,38 +418,67 @@ class WSClient {
326
418
  const resp = pbbp2_1.pbbp2.Frame.encode(data).finish();
327
419
  (_a = this.wsConfig.getWSInstance()) === null || _a === void 0 ? void 0 : _a.send(resp, (err) => {
328
420
  if (err) {
329
- this.logger.error('[FeishuNode:ws] send data failed');
421
+ this.logger.error('send data failed');
330
422
  }
331
423
  });
332
424
  }
333
425
  }
334
426
  getReconnectInfo() {
335
- return this.reconnectInfo;
427
+ return { ...this.reconnectInfo, state: this.connectionState };
336
428
  }
337
429
  async start(params) {
338
430
  const { eventDispatcher } = params;
339
431
  if (!eventDispatcher) {
340
- this.logger.error('[FeishuNode:ws] client need to start with a eventDispatcher');
432
+ this.logger.error('client need to start with a eventDispatcher');
341
433
  return;
342
434
  }
343
435
  this.eventDispatcher = eventDispatcher;
344
- this.reConnect(true);
436
+ this.generation += 1;
437
+ this.shouldReconnect = true;
438
+ this.reconnectAttempt = 0;
439
+ this.reconnectInfo.attempt = 0;
440
+ if (this.reconnectTimer) {
441
+ clearTimeout(this.reconnectTimer);
442
+ this.reconnectTimer = undefined;
443
+ }
444
+ const oldInstance = this.wsConfig.getWSInstance();
445
+ if (oldInstance) {
446
+ oldInstance.terminate();
447
+ this.wsConfig.setWSInstance(null);
448
+ }
449
+ await this.runConnect(this.generation);
345
450
  }
346
451
  async stop() {
347
452
  this.shouldReconnect = false;
453
+ this.generation += 1;
454
+ this.connectionState = 'stopped';
348
455
  const wsInstance = this.wsConfig.getWSInstance();
349
456
  if (wsInstance) {
350
- wsInstance.terminate();
457
+ if (wsInstance.readyState === ws_1.default.OPEN) {
458
+ try {
459
+ wsInstance.close(1000);
460
+ }
461
+ catch {
462
+ wsInstance.terminate();
463
+ }
464
+ }
465
+ else {
466
+ wsInstance.terminate();
467
+ }
468
+ this.wsConfig.setWSInstance(null);
351
469
  }
352
- if (this.reconnectInterval) {
353
- clearTimeout(this.reconnectInterval);
470
+ if (this.reconnectTimer) {
471
+ clearTimeout(this.reconnectTimer);
472
+ this.reconnectTimer = undefined;
354
473
  }
355
474
  if (this.pingInterval) {
356
475
  clearTimeout(this.pingInterval);
476
+ this.pingInterval = undefined;
357
477
  }
358
478
  this.dataCache.clear();
359
479
  this.eventDispatcher = undefined;
360
- this.isConnecting = false;
480
+ this.connecting = false;
481
+ this.reconnectAttempt = 0;
361
482
  }
362
483
  }
363
484
  exports.WSClient = WSClient;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../nodes/help/utils/feishu-sdk/ws-client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../nodes/help/utils/feishu-sdk/ws-client/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,4CAA2B;AAG3B,uDAAyC;AACzC,2CAAuC;AACvC,8CAA0C;AAC1C,kCAQiB;AACjB,8CAA2C;AAqB3C,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,MAAa,QAAQ;IA+CpB,YAAY,MAA0B;QA9C9B,aAAQ,GAAG,IAAI,oBAAQ,EAAE,CAAC;QAkB1B,oBAAe,GAAY,IAAI,CAAC;QAMhC,eAAU,GAAW,CAAC,CAAC;QAGvB,eAAU,GAAY,KAAK,CAAC;QAG5B,qBAAgB,GAAW,CAAC,CAAC;QAG7B,eAAU,GAAW,CAAC,CAAC;QAEvB,oBAAe,GAAoB,MAAM,CAAC;QAE1C,kBAAa,GAAG;YACvB,eAAe,EAAE,CAAC;YAClB,eAAe,EAAE,CAAC;YAClB,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,CAAC;SACb,CAAC;QAKD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QAE1F,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1B,KAAK;YACL,SAAS;YACT,MAAM;SACN,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACtB,aAAa;SACb,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC9B,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAEvD,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC3C,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;gBAC9B,IAAI,EAAE;oBACL,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,SAAS;iBACpB;gBAED,OAAO,EAAE;oBACR,MAAM,EAAE,IAAI;iBACZ;gBACD,OAAO,EAAE,KAAK;aACd,CAAC,CAAC;YAEH,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEjD,IAAI,IAAI,KAAK,gBAAS,CAAC,EAAE,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,IAAI,UAAU,GAAG,EAAE,CAAC,CAAC;gBAC5E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACvD,CAAC;YAED,MAAM,UAAU,GAAuB,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAC;YACjD,MAAM,YAAY,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,CAAC;YAExC,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBAClE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAiB,CAAC,YAAY,EAAE,CAAC;YAC9D,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC1D,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAE5D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACtB,UAAU;gBAEV,QAAQ,EAAE,SAAmB;gBAC7B,SAAS,EAAE,UAAoB;gBAE/B,YAAY,EAAE,YAAY,CAAC,YAAY,GAAG,IAAI;gBAC9C,cAAc,EAAE,YAAY,CAAC,cAAc;gBAC3C,iBAAiB,EAAE,YAAY,CAAC,iBAAiB,GAAG,IAAI;gBACxD,cAAc,EAAE,YAAY,CAAC,cAAc,GAAG,IAAI;aAClD,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,UAAU,EAAE,CAAC,CAAC;YAEvE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAS,aAAT,CAAC,uBAAD,CAAC,CAAU,OAAO,KAAI,aAAa,CAAC,CAAC;YACrF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAiB,CAAC,OAAO,EAAE,CAAC;QACzD,CAAC;IACF,CAAC;IAGO,YAAY,CAAC,IAAY;QAChC,QAAQ,IAAI,EAAE,CAAC;YACd,KAAK,gBAAS,CAAC,iBAAiB;gBAC/B,OAAO,wBAAiB,CAAC,iBAAiB,CAAC;YAC5C,KAAK,gBAAS,CAAC,WAAW;gBACzB,OAAO,wBAAiB,CAAC,WAAW,CAAC;YACtC,KAAK,gBAAS,CAAC,SAAS;gBACvB,OAAO,wBAAiB,CAAC,SAAS,CAAC;YACpC,KAAK,gBAAS,CAAC,WAAW,CAAC;YAC3B,KAAK,gBAAS,CAAC,cAAc;gBAC5B,OAAO,wBAAiB,CAAC,WAAW,CAAC;YACtC;gBACC,OAAO,wBAAiB,CAAC,YAAY,CAAC;QACxC,CAAC;IACF,CAAC;IASO,OAAO;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,UAAqB,CAAC;QAC1B,IAAI,CAAC;YACJ,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;YACvB,UAAU,GAAG,IAAI,YAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;YAC7C,IAAI,OAAO,GAAG,KAAK,CAAC;YAEpB,MAAM,MAAM,GAAG,GAAG,EAAE;gBACnB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBACxC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;gBACxC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACtB,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,CAAC,GAAU,EAAE,EAAE;;gBAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,mCAAI,eAAe,EAAE,CAAC,CAAC;gBAC3E,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1D,CAAC,CAAC;YAEF,MAAM,oBAAoB,GAAG,CAAC,IAAa,EAAE,GAAoB,EAAE,EAAE;gBACpE,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,CAAC,MAAqB,EAAE,EAAE;gBACxC,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO;gBACR,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC;gBACf,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC1C,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC5C,UAAU,CAAC,cAAc,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;gBACvE,OAAO,CAAC,MAAM,CAAC,CAAC;YACjB,CAAC,CAAC;YAEF,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAChC,UAAU,CAAC,EAAE,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACJ,CAAC;IAGO,qBAAqB,CAAC,GAAqB;;QAClD,MAAM,OAAO,GAAG,CAAC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,mCAAI,EAAE,CAAuC,CAAC;QAC3E,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAS,CAAC,gBAAgB,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,OAAO,CAAC,gBAAS,CAAC,aAAa,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAEjE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,wDAAwD,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,UAAU,EAAE,CACzE,CAAC;YACF,OAAO,wBAAiB,CAAC,YAAY,CAAC;QACvC,CAAC;QAED,IAAI,MAAM,KAAK,gBAAS,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC;YACrE,IAAI,WAAW,KAAK,gBAAS,CAAC,iBAAiB,EAAE,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CACf,+CAA+C,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CACjE,CAAC;gBACF,OAAO,wBAAiB,CAAC,iBAAiB,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,OAAO,wBAAiB,CAAC,WAAW,CAAC;QACtC,CAAC;QAED,IAAI,MAAM,KAAK,gBAAS,CAAC,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9D,OAAO,wBAAiB,CAAC,SAAS,CAAC;QACpC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,KAAK,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,OAAO,wBAAiB,CAAC,YAAY,CAAC;IACvC,CAAC;IAGO,KAAK,CAAC,WAAW;QACxB,IAAI,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEhD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACpD,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YACtB,OAAO,YAAY,CAAC;QACrB,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3C,IAAI,aAAa,CAAC,EAAE,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACpB,CAAC;QACD,OAAO,aAAa,CAAC;IACtB,CAAC;IAMO,KAAK,CAAC,UAAU,CAAC,UAAkB;QAC1C,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC7D,OAAO;QACR,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC;QAEjF,IAAI,MAAqB,CAAC;QAC1B,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,CAAC;gBAAS,CAAC;YACV,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACzB,CAAC;QAGD,IAAI,UAAU,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC7D,OAAO;QACR,CAAC;QAED,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC;YACnC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACpC,OAAO;QACR,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAQO,iBAAiB,CAAC,MAA0B;QACnD,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YACpE,OAAO;QACR,CAAC;QAED,IAAI,MAAM,KAAK,wBAAiB,CAAC,WAAW,IAAI,MAAM,KAAK,wBAAiB,CAAC,SAAS,EAAE,CAAC;YACxF,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,wBAAwB,MAAM,0FAA0F,CACxH,CAAC;YACF,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;YACjC,OAAO;QACR,CAAC;QAED,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjD,IAAI,cAAc,IAAI,CAAC,IAAI,IAAI,CAAC,gBAAgB,IAAI,cAAc,EAAE,CAAC;YACpE,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,2BAA2B,IAAI,CAAC,gBAAgB,oBAAoB,CACpE,CAAC;YACF,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;YACjC,OAAO;QACR,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAEnD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACrC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAChC,KAAK,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC,EAAE,KAAK,CAAC,CAAC;QACV,IAAI,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAExD,IAAI,CAAC,MAAM,CAAC,IAAI,CACf,0BAA0B,KAAK,eAAe,IAAI,CAAC,gBAAgB,EAAE;YACpE,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAC5F,CAAC;IACH,CAAC;IAGO,cAAc,CAAC,MAA0B;QAChD,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpE,MAAM,GAAG,GAAG,iBAAiB,IAAI,GAAG,GAAG,IAAI,CAAC;QAE5C,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;QAGxE,IAAI,MAAM,KAAK,wBAAiB,CAAC,iBAAiB,EAAE,CAAC;YACpD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;IACnC,CAAC;IAEO,aAAa;QACpB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;IACjB,CAAC;IAEO,QAAQ;QACf,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAE1D,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QACjD,IAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,MAAK,YAAS,CAAC,IAAI,EAAE,CAAC;YAE/C,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,YAAY,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC/E,IAAI,CAAC,MAAM,CAAC,IAAI,CACf,wEAAwE,CACxE,CAAC;gBACF,UAAU,CAAC,SAAS,EAAE,CAAC;gBAEvB,OAAO;YACR,CAAC;YAED,MAAM,KAAK,GAAiB;gBAC3B,OAAO,EAAE;oBACR;wBACC,GAAG,EAAE,gBAAS,CAAC,IAAI;wBACnB,KAAK,EAAE,kBAAW,CAAC,IAAI;qBACvB;iBACD;gBACD,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;gBAC1B,MAAM,EAAE,gBAAS,CAAC,OAAO;gBACzB,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,CAAC;aACR,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;IACxE,CAAC;IAEO,WAAW;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QAEjD,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,MAAkB,EAAE,EAAE;YACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YAExB,IAAI,MAAM,KAAK,gBAAS,CAAC,OAAO,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,IAAI,MAAM,KAAK,gBAAS,CAAC,IAAI,EAAE,CAAC;gBAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAE5B,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,KAAK,UAAU,EAAE,CAAC;gBAClD,OAAO;YACR,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBACnC,OAAO;YACR,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YACjE,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,IAAiB;;QAChD,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,gBAAS,CAAC,IAAI,CAAC,0CAAE,KAAK,CAAC;QAC7E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,IAAI,KAAK,kBAAW,CAAC,IAAI,EAAE,CAAC;YAC/B,OAAO;QACR,CAAC;QAED,IAAI,IAAI,KAAK,kBAAW,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAChD,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,GACxE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAExB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACtB,YAAY,EAAE,YAAY,GAAG,IAAI;gBACjC,cAAc,EAAE,cAAc;gBAC9B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI;gBAC3C,cAAc,EAAE,cAAc,GAAG,IAAI;aACrC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACrD,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,IAAiB;;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAClC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACZ,GAAG,CAAC,GAAG,CAAC,GAAgB,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YACtC,OAAO,GAAG,CAAC;QACZ,CAAC,EACD,EAA+B,CAC/B,CAAC;QACF,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QACzD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,IAAI,KAAK,kBAAW,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO;QACR,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;YAC3C,UAAU;YACV,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;YAChB,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;YAChB,QAAQ;YACR,IAAI,EAAE,OAAO;SACb,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,kCAAkC,IAAI,iBAAiB,UAAU,eAAe,QAAQ,WAAW,UAAU,CAAC,IAAI,EAAE,CACpH,CAAC;QAEF,MAAM,WAAW,GAAoC;YACpD,IAAI,EAAE,qBAAc,CAAC,EAAE;SACvB,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,CAAA,MAAA,IAAI,CAAC,eAAe,0CAAE,MAAM,CAAC,UAAU,CAAC,CAAA,CAAC;YAC9D,IAAI,MAAM,EAAE,CAAC;gBACZ,WAAW,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC3E,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,WAAW,CAAC,IAAI,GAAG,qBAAc,CAAC,qBAAqB,CAAC;YACxD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,sCAAsC,IAAI,iBAAiB,UAAU,eAAe,QAAQ,YAAY,YAAY,EAAE,CACtH,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE3B,IAAI,CAAC,WAAW,CAAC;YAChB,GAAG,IAAI;YACP,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,gBAAS,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;YACzF,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;SAC9D,CAAC,CAAC;IACJ,CAAC;IAEO,WAAW,CAAC,IAAkB;;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QACjD,IAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,MAAK,YAAS,CAAC,IAAI,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,aAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YAC/C,MAAA,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,0CAAE,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;gBACjD,IAAI,GAAG,EAAE,CAAC;oBACT,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBACvC,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,gBAAgB;QACf,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAA4C;QACvD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;QAEnC,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,OAAO;QACR,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAGvC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC;QAE/B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QACjC,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QAClD,IAAI,WAAW,EAAE,CAAC;YACjB,WAAW,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QAEjC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QACjD,IAAI,UAAU,EAAE,CAAC;YAEhB,IAAI,UAAU,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACJ,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxB,CAAC;gBAAC,MAAM,CAAC;oBACR,UAAU,CAAC,SAAS,EAAE,CAAC;gBACxB,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,UAAU,CAAC,SAAS,EAAE,CAAC;YACxB,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC3B,CAAC;CACD;AAllBD,4BAklBC"}
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luka-cat-mimi/n8n-nodes-feishu",
3
- "version": "0.9.21",
3
+ "version": "0.9.23",
4
4
  "description": "飞书 N8N 集成插件",
5
5
  "keywords": [
6
6
  "n8n",