@matter/protocol 0.12.6-alpha.0-20250304-03716637c → 0.13.0-alpha.0-20250307-ebf84a05a
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/cjs/common/Scanner.d.ts +25 -1
- package/dist/cjs/common/Scanner.d.ts.map +1 -1
- package/dist/cjs/common/Scanner.js +18 -1
- package/dist/cjs/common/Scanner.js.map +1 -1
- package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
- package/dist/cjs/fabric/Fabric.js +0 -1
- package/dist/cjs/fabric/Fabric.js.map +1 -1
- package/dist/cjs/mdns/MdnsBroadcaster.js +3 -3
- package/dist/cjs/mdns/MdnsConsts.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.js +1 -1
- package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +55 -55
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/session/Session.d.ts +33 -1
- package/dist/cjs/session/Session.d.ts.map +1 -1
- package/dist/cjs/session/Session.js +16 -3
- package/dist/cjs/session/Session.js.map +1 -1
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +14 -4
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseMessages.d.ts +15 -0
- package/dist/cjs/session/case/CaseMessages.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseMessenger.d.ts +15 -0
- package/dist/cjs/session/case/CaseMessenger.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseClient.js +7 -1
- package/dist/cjs/session/pase/PaseClient.js.map +1 -1
- package/dist/cjs/session/pase/PaseMessages.d.ts +21 -0
- package/dist/cjs/session/pase/PaseMessages.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseMessages.js +6 -1
- package/dist/cjs/session/pase/PaseMessages.js.map +1 -1
- package/dist/cjs/session/pase/PaseMessenger.d.ts +10 -0
- package/dist/cjs/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +8 -2
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/common/Scanner.d.ts +25 -1
- package/dist/esm/common/Scanner.d.ts.map +1 -1
- package/dist/esm/common/Scanner.js +18 -1
- package/dist/esm/common/Scanner.js.map +1 -1
- package/dist/esm/fabric/Fabric.d.ts.map +1 -1
- package/dist/esm/fabric/Fabric.js +0 -1
- package/dist/esm/fabric/Fabric.js.map +1 -1
- package/dist/esm/mdns/MdnsBroadcaster.js +3 -3
- package/dist/esm/mdns/MdnsConsts.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.js +1 -1
- package/dist/esm/mdns/MdnsScanner.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +55 -55
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/session/Session.d.ts +33 -1
- package/dist/esm/session/Session.d.ts.map +1 -1
- package/dist/esm/session/Session.js +16 -3
- package/dist/esm/session/Session.js.map +1 -1
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +15 -4
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseMessages.d.ts +15 -0
- package/dist/esm/session/case/CaseMessages.d.ts.map +1 -1
- package/dist/esm/session/case/CaseMessenger.d.ts +15 -0
- package/dist/esm/session/case/CaseMessenger.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseClient.js +7 -1
- package/dist/esm/session/pase/PaseClient.js.map +1 -1
- package/dist/esm/session/pase/PaseMessages.d.ts +21 -0
- package/dist/esm/session/pase/PaseMessages.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseMessages.js +16 -2
- package/dist/esm/session/pase/PaseMessages.js.map +1 -1
- package/dist/esm/session/pase/PaseMessenger.d.ts +10 -0
- package/dist/esm/session/pase/PaseMessenger.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +8 -2
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/common/Scanner.ts +18 -2
- package/src/fabric/Fabric.ts +0 -1
- package/src/mdns/MdnsBroadcaster.ts +3 -3
- package/src/mdns/MdnsScanner.ts +3 -2
- package/src/peer/ControllerCommissioningFlow.ts +55 -52
- package/src/session/Session.ts +50 -1
- package/src/session/SessionManager.ts +20 -2
- package/src/session/pase/PaseClient.ts +10 -1
- package/src/session/pase/PaseMessages.ts +17 -1
- package/src/session/pase/PaseServer.ts +11 -1
|
@@ -145,53 +145,53 @@ class ControllerCommissioningFlow {
|
|
|
145
145
|
stepLogic: () => this.#getInitialData()
|
|
146
146
|
});
|
|
147
147
|
this.#commissioningSteps.push({
|
|
148
|
-
stepNumber:
|
|
148
|
+
stepNumber: 7,
|
|
149
149
|
subStepNumber: 1,
|
|
150
150
|
name: "GeneralCommissioning.ArmFailsafe",
|
|
151
151
|
stepLogic: () => this.#armFailsafe()
|
|
152
152
|
});
|
|
153
153
|
this.#commissioningSteps.push({
|
|
154
|
-
stepNumber:
|
|
154
|
+
stepNumber: 8,
|
|
155
155
|
subStepNumber: 1,
|
|
156
156
|
name: "GeneralCommissioning.ConfigureRegulatoryInformation",
|
|
157
157
|
stepLogic: () => this.#configureRegulatoryInformation()
|
|
158
158
|
});
|
|
159
159
|
this.#commissioningSteps.push({
|
|
160
|
-
stepNumber:
|
|
160
|
+
stepNumber: 8,
|
|
161
161
|
subStepNumber: 2,
|
|
162
162
|
name: "TimeSynchronization.SynchronizeTime",
|
|
163
163
|
stepLogic: () => this.#synchronizeTime()
|
|
164
164
|
});
|
|
165
165
|
this.#commissioningSteps.push({
|
|
166
|
-
stepNumber:
|
|
166
|
+
stepNumber: 10,
|
|
167
167
|
subStepNumber: 1,
|
|
168
168
|
name: "OperationalCredentials.DeviceAttestation",
|
|
169
169
|
stepLogic: () => this.#deviceAttestation()
|
|
170
170
|
});
|
|
171
171
|
this.#commissioningSteps.push({
|
|
172
|
-
stepNumber:
|
|
173
|
-
// includes
|
|
172
|
+
stepNumber: 11,
|
|
173
|
+
// includes 11-13
|
|
174
174
|
subStepNumber: 1,
|
|
175
175
|
name: "OperationalCredentials.Certificates",
|
|
176
176
|
stepLogic: () => this.#certificates()
|
|
177
177
|
});
|
|
178
178
|
this.#commissioningSteps.push({
|
|
179
|
-
stepNumber:
|
|
179
|
+
stepNumber: 15,
|
|
180
180
|
subStepNumber: 1,
|
|
181
181
|
name: "AccessControl",
|
|
182
182
|
stepLogic: () => this.#configureAccessControlLists()
|
|
183
183
|
});
|
|
184
184
|
if (this.#interactionClient.channelType === ChannelType.BLE) {
|
|
185
185
|
this.#commissioningSteps.push({
|
|
186
|
-
stepNumber:
|
|
186
|
+
stepNumber: 16,
|
|
187
187
|
subStepNumber: 1,
|
|
188
188
|
name: "NetworkCommissioning.Validate",
|
|
189
189
|
stepLogic: () => this.#validateNetwork()
|
|
190
190
|
});
|
|
191
191
|
if (this.#commissioningOptions.wifiNetwork !== void 0) {
|
|
192
192
|
this.#commissioningSteps.push({
|
|
193
|
-
stepNumber:
|
|
194
|
-
// includes step
|
|
193
|
+
stepNumber: 16,
|
|
194
|
+
// includes step 17
|
|
195
195
|
subStepNumber: 2,
|
|
196
196
|
name: "NetworkCommissioning.Wifi",
|
|
197
197
|
reArmFailsafe: true,
|
|
@@ -200,8 +200,8 @@ class ControllerCommissioningFlow {
|
|
|
200
200
|
}
|
|
201
201
|
if (this.#commissioningOptions.threadNetwork !== void 0) {
|
|
202
202
|
this.#commissioningSteps.push({
|
|
203
|
-
stepNumber:
|
|
204
|
-
// includes step
|
|
203
|
+
stepNumber: 16,
|
|
204
|
+
// includes step 17
|
|
205
205
|
subStepNumber: 3,
|
|
206
206
|
name: "NetworkCommissioning.Thread",
|
|
207
207
|
reArmFailsafe: true,
|
|
@@ -214,22 +214,22 @@ class ControllerCommissioningFlow {
|
|
|
214
214
|
);
|
|
215
215
|
}
|
|
216
216
|
this.#commissioningSteps.push({
|
|
217
|
-
stepNumber:
|
|
218
|
-
// includes step
|
|
217
|
+
stepNumber: 18,
|
|
218
|
+
// includes step 19 (CASE connection)
|
|
219
219
|
subStepNumber: 1,
|
|
220
220
|
name: "Reconnect",
|
|
221
221
|
reArmFailsafe: true,
|
|
222
222
|
stepLogic: () => this.#reconnectWithDevice()
|
|
223
223
|
});
|
|
224
224
|
this.#commissioningSteps.push({
|
|
225
|
-
stepNumber:
|
|
225
|
+
stepNumber: 20,
|
|
226
226
|
subStepNumber: 1,
|
|
227
227
|
name: "GeneralCommissioning.Complete",
|
|
228
228
|
stepLogic: () => this.#completeCommissioning()
|
|
229
229
|
});
|
|
230
230
|
this.#commissioningSteps.push({
|
|
231
|
-
stepNumber:
|
|
232
|
-
// Should be allowed in Step
|
|
231
|
+
stepNumber: 99,
|
|
232
|
+
// Should be allowed in Step 13, but Tasmota is not supporting this
|
|
233
233
|
subStepNumber: 1,
|
|
234
234
|
name: "OperationalCredentials.UpdateFabricLabel",
|
|
235
235
|
stepLogic: () => this.#updateFabricLabel()
|
|
@@ -315,7 +315,7 @@ class ControllerCommissioningFlow {
|
|
|
315
315
|
};
|
|
316
316
|
}
|
|
317
317
|
/**
|
|
318
|
-
* Step
|
|
318
|
+
* Step 7
|
|
319
319
|
* Commissioner SHALL re-arm the Fail-safe timer on the Commissionee to the desired commissioning
|
|
320
320
|
* timeout within 60 seconds of the completion of PASE session establishment, using the
|
|
321
321
|
* ArmFailSafe command (see Section 11.10.6.2, “ArmFailSafe Command”). A Commissioner MAY
|
|
@@ -359,7 +359,7 @@ class ControllerCommissioningFlow {
|
|
|
359
359
|
}
|
|
360
360
|
}
|
|
361
361
|
/**
|
|
362
|
-
* Step
|
|
362
|
+
* Step 8 - 1
|
|
363
363
|
* Commissioner SHALL configure regulatory information if the Commissionee has at least one instance of
|
|
364
364
|
* the Network Commissioning cluster on any endpoint with either the WI (i.e. Wi-Fi) or TH (i.e. Thread)
|
|
365
365
|
* feature flags set in its FeatureMap, Commissioner SHALL configure regulatory information in the
|
|
@@ -421,7 +421,7 @@ class ControllerCommissioningFlow {
|
|
|
421
421
|
};
|
|
422
422
|
}
|
|
423
423
|
/**
|
|
424
|
-
* Step
|
|
424
|
+
* Step 8 - 2
|
|
425
425
|
* Commissioner SHOULD configure UTC time, timezone, and DST offset, if the Commissionee supports the
|
|
426
426
|
* time synchronization cluster.
|
|
427
427
|
* ▪ The Commissioner SHOULD configure UTC time using the SetUTCTime command.
|
|
@@ -441,7 +441,7 @@ class ControllerCommissioningFlow {
|
|
|
441
441
|
};
|
|
442
442
|
}
|
|
443
443
|
/**
|
|
444
|
-
* Step
|
|
444
|
+
* Step 10
|
|
445
445
|
* Commissioner SHALL establish the authenticity of the Commissionee as a certified Matter device
|
|
446
446
|
* (see Section 6.2.3, “Device Attestation Procedure”).
|
|
447
447
|
*/
|
|
@@ -474,20 +474,20 @@ class ControllerCommissioningFlow {
|
|
|
474
474
|
};
|
|
475
475
|
}
|
|
476
476
|
/**
|
|
477
|
-
* Step
|
|
478
|
-
*
|
|
479
|
-
*
|
|
480
|
-
*
|
|
481
|
-
*
|
|
482
|
-
*
|
|
483
|
-
*
|
|
484
|
-
*
|
|
485
|
-
*
|
|
486
|
-
*
|
|
487
|
-
*
|
|
488
|
-
*
|
|
489
|
-
*
|
|
490
|
-
*
|
|
477
|
+
* Step 11-13
|
|
478
|
+
* 11: Following the Device Attestation Procedure yielding a decision to proceed with commissioning, the Commissioner
|
|
479
|
+
* SHALL request operational CSR from Commissionee using the CSRRequest command (see Section 11.17.6.5,
|
|
480
|
+
* “CSRRequest Command”). The CSRRequest command will cause the generation of a new operational key pair at the
|
|
481
|
+
* Commissionee.
|
|
482
|
+
* 12: Commissioner SHALL generate or otherwise obtain an Operational Certificate containing Operational ID after
|
|
483
|
+
* receiving the CSRResponse command from the Commissionee (see Section 11.17.6.5, “CSRRequest Command”), using
|
|
484
|
+
* implementation-specific means.
|
|
485
|
+
* 13: Commissioner SHALL install operational credentials (see Figure 40, “Node Operational Credentials
|
|
486
|
+
* flow”) on the Commissionee using the AddTrustedRootCertificate and AddNOC commands,
|
|
487
|
+
* and SHALL use the UpdateFabricLabel command to set a string that the user can recognize and
|
|
488
|
+
* relate to this Commissioner/Administrator.
|
|
489
|
+
* The AdminVendorId field of the AddNOC command SHALL be set to a value for which the Vendor Schema in
|
|
490
|
+
* DCL contains the name and other information of the Commissioner’s manufacturer.
|
|
491
491
|
*/
|
|
492
492
|
async #certificates() {
|
|
493
493
|
const operationalCredentialsClusterClient = this.#getClusterClient(OperationalCredentials.Cluster);
|
|
@@ -530,7 +530,7 @@ class ControllerCommissioningFlow {
|
|
|
530
530
|
};
|
|
531
531
|
}
|
|
532
532
|
/**
|
|
533
|
-
* Step
|
|
533
|
+
* Step 13-2 (we do as 99 at the end because)
|
|
534
534
|
* The Administrator having established a CASE session with the Commissionee over the operational network in the
|
|
535
535
|
* previous steps SHALL invoke the CommissioningComplete command (see Section 11.9.6.6,
|
|
536
536
|
* “CommissioningComplete Command”). A success response after invocation of the CommissioningComplete command ends
|
|
@@ -563,7 +563,7 @@ class ControllerCommissioningFlow {
|
|
|
563
563
|
};
|
|
564
564
|
}
|
|
565
565
|
/**
|
|
566
|
-
* Step
|
|
566
|
+
* Step 15
|
|
567
567
|
* Commissioner MAY configure the Access Control List (see Access Control Cluster) on the Commissionee in any way
|
|
568
568
|
* it sees fit, if the singular entry added by the AddNOC command in the previous step granting Administer
|
|
569
569
|
* privilege over CASE authentication type for the Node ID provided with the command is not sufficient to express
|
|
@@ -576,16 +576,17 @@ class ControllerCommissioningFlow {
|
|
|
576
576
|
};
|
|
577
577
|
}
|
|
578
578
|
/**
|
|
579
|
-
* Step
|
|
580
|
-
*
|
|
581
|
-
*
|
|
582
|
-
*
|
|
583
|
-
*
|
|
584
|
-
*
|
|
585
|
-
*
|
|
586
|
-
*
|
|
587
|
-
*
|
|
588
|
-
*
|
|
579
|
+
* Step 16-17
|
|
580
|
+
* 16: If the Commissionee both supports it and requires it, the Commissioner SHALL configure the operational network
|
|
581
|
+
* at the Commissionee using commands such as AddOrUpdateWiFiNetwork (see Section 11.8.7.3, “AddOrUpdateWiFiNetwork
|
|
582
|
+
* Command”) and AddOrUpdateThreadNetwork (see Section 11.8.7.4, “AddOrUpdateThreadNetwork Command”).
|
|
583
|
+
* A Commissionee requires network commissioning if it is not already on the desired operational network.
|
|
584
|
+
* A Commissionee supports network commissioning if it has any NetworkCommissioning cluster instances.
|
|
585
|
+
* A Commissioner MAY learn about the networks visible to the Commissionee using ScanNetworks command
|
|
586
|
+
* (see Section 11.8.7.1, “ScanNetworks Command”).
|
|
587
|
+
* 17: The Commissioner SHALL trigger the Commissionee to connect to the operational network using ConnectNetwork
|
|
588
|
+
* command (see Section 11.8.7.9, “ConnectNetwork Command”) unless the Commissionee is already on the desired
|
|
589
|
+
* operational network.
|
|
589
590
|
*/
|
|
590
591
|
async #validateNetwork() {
|
|
591
592
|
if (this.#collectedCommissioningData.networkFeatures === void 0 || this.#collectedCommissioningData.networkStatus === void 0) {
|
|
@@ -845,13 +846,12 @@ class ControllerCommissioningFlow {
|
|
|
845
846
|
};
|
|
846
847
|
}
|
|
847
848
|
/**
|
|
848
|
-
* Step
|
|
849
|
-
*
|
|
850
|
-
*
|
|
851
|
-
*
|
|
852
|
-
*
|
|
853
|
-
*
|
|
854
|
-
*
|
|
849
|
+
* Step 18-19
|
|
850
|
+
* 18: Finalization of the Commissioning process begins. An Administrator configured in the ACL of the Commissionee
|
|
851
|
+
* by the Commissioner SHALL use Operational Discovery to discover the Commissionee. This Administrator MAY be
|
|
852
|
+
* the Commissioner itself, or another Node to which the Commissioner has delegated the task.
|
|
853
|
+
* 19: The Administrator SHALL open a CASE (see Section 4.13.2, “Certificate Authenticated Session Establishment
|
|
854
|
+
* (CASE)”) session with the Commissionee over the operational network.
|
|
855
855
|
*/
|
|
856
856
|
async #reconnectWithDevice() {
|
|
857
857
|
const isConcurrentFlow = this.#collectedCommissioningData.supportsConcurrentConnection !== false;
|
|
@@ -899,7 +899,7 @@ class ControllerCommissioningFlow {
|
|
|
899
899
|
};
|
|
900
900
|
}
|
|
901
901
|
/**
|
|
902
|
-
* Step
|
|
902
|
+
* Step 20
|
|
903
903
|
* The Administrator having established a CASE session with the Commissionee over the operational network in the
|
|
904
904
|
* previous steps SHALL invoke the CommissioningComplete command (see Section 11.9.6.6,
|
|
905
905
|
* “CommissioningComplete Command”). A success response after invocation of the CommissioningComplete command ends
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/peer/ControllerCommissioningFlow.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,wBAAwB;AACjC,SAAS,kBAAkB;AAC3B,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAAS,8BAA8B;AACvC,SAAS,kCAAkC;AAC3C,SAAS,OAAO,aAAa,QAAQ,QAAQ,aAAa,eAAe,MAAM,2BAA2B;AAC1G;AAAA,EAGI;AAAA,EAEA;AAAA,OAIG;AAEP,SAAS,0BAA0B;AACnC,SAAS,qBAAqB;AAE9B,SAAS,6BAA6B;AAKtC,MAAM,SAAS,OAAO,IAAI,wBAAwB;AA6ClD,IAAK,8BAAL,kBAAKA,iCAAL;AACI,EAAAA,0DAAA;AACA,EAAAA,0DAAA;AACA,EAAAA,0DAAA;AACA,EAAAA,0DAAA;AAJC,SAAAA;AAAA,GAAA;AAwDE,MAAM,2BAA2B,YAAY;AAAC;AAGrD,MAAM,sCAAsC,mBAAmB;AAAC;AAEhE,MAAM,2BAA2B;AAK1B,MAAM,4BAA4B;AAAA,EACrC;AAAA,EACS;AAAA,EACA;AAAA,EACA;AAAA,EAIA;AAAA,EACA,sBAAsB,IAAI,MAAyB;AAAA,EACnD,4BAA4B,oBAAI,IAAqC;AAAA,EACrE,kBAAkB,oBAAI,IAAiC;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA,kBAAkB;AAAA,EAClB,8BAA0D,CAAC;AAAA,EAC3D,kBAAkB;AAAA,EAElB,YAEI,mBAGA,IAGA,QAGA,sBAGA,kBAIF;AACE,SAAK,qBAAqB;AAC1B,SAAK,MAAM;AACX,SAAK,UAAU;AACf,SAAK,oBAAoB;AACzB,SAAK,wBAAwB;AAC7B,WAAO,MAAM,0BAA0B,OAAO,OAAO,oBAAoB,CAAC,EAAE;AAC5E,SAAK,8BAA8B;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,uBAAuB;AACzB,SAAK,WAAW;AAEhB,QAAI,wCAAwC;AAC5C,eAAW,QAAQ,KAAK,qBAAqB;AACzC,aAAO,KAAK,gCAAgC,KAAK,UAAU,IAAI,KAAK,aAAa,KAAK,KAAK,IAAI,EAAE;AACjG,UAAI;AACA,YAAI,KAAK,iBAAiB,CAAC,uCAAuC;AAC9D,iBAAO,MAAM,gDAAgD;AAC7D,gBAAM,KAAK,aAAa;AAAA,QAC5B;AACA,gDAAwC;AACxC,cAAM,SAAS,MAAM,KAAK,UAAU;AACpC,aAAK,4BAA4B,MAAM,MAAM;AAE7C,YAAI,KAAK,sBAAsB,QAAW;AACtC,gBAAM,2BAA2B,KAAK,MAAM,IAAI,KAAK;AACrD,cAAI,KAAK,6BAA6B,UAAa,KAAK,MAAM,IAAI,KAAK,0BAA0B;AAC7F,mBAAO;AAAA,cACH,sBAAsB,KAAK,UAAU,IAAI,KAAK,aAAa,KAAK,KAAK,IAAI;AAAA,YAC7E;AACA,kBAAM,IAAI,mBAAmB,8BAA8B;AAAA,UAC/D;AAMA,cAAI,2BAA2B,KAAK,kBAAkB,GAAG;AACrD,mBAAO;AAAA,cACH,4BAA4B,KAAK,UAAU,IAAI,KAAK,aAAa,KAC7D,KAAK,IACT,eAAe,KAAK;AAAA,gBAChB,2BAA2B;AAAA,cAC/B,CAAC;AAAA,YACL;AACA,kBAAM,KAAK,aAAa;AACxB,oDAAwC;AAAA,UAC5C;AAAA,QACJ;AAEA,YAAI,OAAO,SAAS,cAAkC;AAClD;AAAA,QACJ;AAAA,MACJ,SAAS,OAAO;AACZ,YAAI,iBAAiB,+BAA+B;AAChD,iBAAO;AAAA,YACH,sBAAsB,KAAK,UAAU,IAAI,KAAK,aAAa,KAAK,KAAK,IAAI,mCAAmC,MAAM,OAAO;AAAA,UAC7H;AAAA,QACJ,WAAW,iBAAiB,sBAAsB,iBAAiB,qBAAqB;AACpF,iBAAO;AAAA,YACH,sBAAsB,KAAK,UAAU,IAAI,KAAK,aAAa,KAAK,KAAK,IAAI,uBAAuB,MAAM,OAAO;AAAA,UACjH;AAeA,gBAAM,KAAK,oBAAoB;AAE/B,8BAAoB,OAAO,KAAK;AAGhC,gBAAM,cAAc,OAAO,kBAAkB;AAAA,QACjD,OAAO;AACH,gBAAM;AAAA,QACV;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,kBACI,SACA,aAAa,eAAe,CAAC,GAC7B,oBAAoB,OACD;AACnB,QAAI,CAAC,qBAAqB,eAAe,GAAG;AACxC,YAAM,gBAAgB,KAAK,gBAAgB,IAAI,QAAQ,EAAE;AACzD,UAAI,kBAAkB,QAAW;AAC7B,eAAO;AAAA,UACH,iDAAiD,QAAQ,IAAI,cAAc,UAAU,uBAAuB,iBAAiB;AAAA,QACjI;AACA,eAAO;AAAA,MACX;AAAA,IACJ;AACA,WAAO;AAAA,MACH,2CAA2C,QAAQ,IAAI,cAAc,UAAU,uBAAuB,iBAAiB;AAAA,IAC3H;AACA,UAAM,SAAS,cAAc,SAAS,YAAY,KAAK,kBAAkB;AACzE,SAAK,gBAAgB,IAAI,QAAQ,IAAI,MAAM;AAC3C,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gCAAgC;AAC5B,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,gBAAgB;AAAA,IAC1C,CAAC;AAMD,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,aAAa;AAAA,IACvC,CAAC;AAED,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,gCAAgC;AAAA,IAC1D,CAAC;AAED,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,iBAAiB;AAAA,IAC3C,CAAC;AAED,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,mBAAmB;AAAA,IAC7C,CAAC;AAED,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,cAAc;AAAA,IACxC,CAAC;AAID,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,6BAA6B;AAAA,IACvD,CAAC;AAGD,QAAI,KAAK,mBAAmB,gBAAgB,YAAY,KAAK;AACzD,WAAK,oBAAoB,KAAK;AAAA,QAC1B,YAAY;AAAA,QACZ,eAAe;AAAA,QACf,MAAM;AAAA,QACN,WAAW,MAAM,KAAK,iBAAiB;AAAA,MAC3C,CAAC;AACD,UAAI,KAAK,sBAAsB,gBAAgB,QAAW;AACtD,aAAK,oBAAoB,KAAK;AAAA,UAC1B,YAAY;AAAA;AAAA,UACZ,eAAe;AAAA,UACf,MAAM;AAAA,UACN,eAAe;AAAA,UACf,WAAW,MAAM,KAAK,sBAAsB;AAAA,QAChD,CAAC;AAAA,MACL;AACA,UAAI,KAAK,sBAAsB,kBAAkB,QAAW;AACxD,aAAK,oBAAoB,KAAK;AAAA,UAC1B,YAAY;AAAA;AAAA,UACZ,eAAe;AAAA,UACf,MAAM;AAAA,UACN,eAAe;AAAA,UACf,WAAW,MAAM,KAAK,wBAAwB;AAAA,QAClD,CAAC;AAAA,MACL;AAAA,IACJ,OAAO;AACH,aAAO;AAAA,QACH,oFAAoF,KAAK,mBAAmB,WAAW;AAAA,MAC3H;AAAA,IACJ;AAEA,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,eAAe;AAAA,MACf,WAAW,MAAM,KAAK,qBAAqB;AAAA,IAC/C,CAAC;AAED,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,uBAAuB;AAAA,IACjD,CAAC;AAED,SAAK,oBAAoB,KAAK;AAAA,MAC1B,YAAY;AAAA;AAAA,MACZ,eAAe;AAAA,MACf,MAAM;AAAA,MACN,WAAW,MAAM,KAAK,mBAAmB;AAAA,IAC7C,CAAC;AAAA,EACL;AAAA,EAEA,aAAa;AACT,SAAK,oBAAoB,KAAK,CAAC,GAAG,MAAM;AACpC,UAAI,EAAE,eAAe,EAAE,WAAY,QAAO,EAAE,aAAa,EAAE;AAC3D,aAAO,EAAE,gBAAgB,EAAE;AAAA,IAC/B,CAAC;AAAA,EACL;AAAA,EAEA,4BAA4B,MAAyB,QAAiC;AAClF,SAAK,0BAA0B,IAAI,GAAG,KAAK,UAAU,IAAI,KAAK,aAAa,IAAI,MAAM;AAAA,EACzF;AAAA,EAEA,2BAA2B,YAAoB,eAAuB;AAClE,WAAO,KAAK,0BAA0B,IAAI,GAAG,UAAU,IAAI,aAAa,EAAE;AAAA,EAC9E;AAAA;AAAA,EAGA,qCACI,SACA,EAAE,YAAY,WAAW,YAAY,GACvC;AACE,WAAO;AAAA,MACH,sBAAsB,OAAO,aAAa,UAAU,KAAK,SAAS,GAC9D,gBAAgB,SAAY,kBAAkB,WAAW,KAAK,EAClE;AAAA,IACJ;AAEA,QAAI,eAAe,uBAAuB,0BAA0B,GAAI;AACxE,QAAI,YAAY,YAAY,eAAe,uBAAuB,0BAA0B,gBAAgB;AAExG,YAAM,IAAI;AAAA,QACN;AAAA,MACJ;AAAA,IACJ;AACA,UAAM,IAAI;AAAA,MACN,yBAAyB,OAAO,MAAM,UAAU,KAAK,SAAS,GAC1D,gBAAgB,SAAY,kBAAkB,WAAW,KAAK,EAClE;AAAA,IACJ;AAAA,EACJ;AAAA;AAAA,EAGA,mCAAmC,SAAiB,EAAE,WAAW,UAAU,GAAwC;AAC/G,WAAO,MAAM,sBAAsB,OAAO,aAAa,SAAS,KAAK,SAAS,EAAE;AAEhF,QAAI,cAAc,qBAAqB,mBAAmB,GAAI;AAC9D,UAAM,IAAI;AAAA,MACN,yBAAyB,OAAO,MAAM,SAAS,GAAG,YAAY,KAAK,SAAS,KAAK,EAAE;AAAA,IACvF;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,kBAAkB;AACpB,UAAM,mBAAmB,KAAK,kBAAkB,WAAW,OAAO;AAClE,SAAK,4BAA4B,gBAAgB,MAAM,iBAAiB,sBAAsB;AAC9F,SAAK,4BAA4B,iBAAiB,MAAM,iBAAiB,uBAAuB;AAEhG,UAAM,cAAc,MAAM,KAAK,mBAAmB,sBAAsB;AAAA,MACpE,YAAY;AAAA,QACR;AAAA,UACI,WAAW,qBAAqB,SAAS;AAAA,UACzC,aAAa,qBAAqB,SAAS,WAAW,WAAW;AAAA,QACrE;AAAA,QACA;AAAA,UACI,WAAW,qBAAqB,SAAS;AAAA,UACzC,aAAa,qBAAqB,SAAS,WAAW,SAAS;AAAA,QACnE;AAAA,MACJ;AAAA,IACJ,CAAC;AACD,UAAM,kBAAkB,IAAI,MAGzB;AACH,UAAM,gBAAgB,IAAI,MAGvB;AACH,eAAW;AAAA,MACP,MAAM,EAAE,YAAY,YAAY;AAAA,MAChC;AAAA,IACJ,KAAK,aAAa;AACd,UAAI,gBAAgB,qBAAqB,SAAS,WAAW,WAAW,IAAI;AACxE,wBAAgB,KAAK,EAAE,YAAY,MAAM,CAAC;AAAA,MAC9C,WAAW,gBAAgB,qBAAqB,SAAS,WAAW,SAAS,IAAI;AAC7E,sBAAc,KAAK,EAAE,YAAY,MAAM,CAAC;AAAA,MAC5C;AAAA,IACJ;AACA,SAAK,4BAA4B,kBAAkB;AACnD,SAAK,4BAA4B,gBAAgB;AAEjD,UAAM,kBAAkB,KAAK,kBAAkB,iBAAiB,OAAO;AACvE,SAAK,4BAA4B,WAAW,MAAM,gBAAgB,qBAAqB;AACvF,SAAK,4BAA4B,YAAY,MAAM,gBAAgB,sBAAsB;AACzF,SAAK,4BAA4B,cAAc,MAAM,gBAAgB,wBAAwB;AAE7F,UAAM,6BAA6B,KAAK,kBAAkB,qBAAqB,OAAO;AACtF,SAAK,4BAA4B,+BAC7B,MAAM,2BAA2B,yCAAyC;AAY9E,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAM,eAAe;AACjB,UAAM,SAAS,KAAK,kBAAkB,qBAAqB,OAAO;AAClE,QAAI,KAAK,4BAA4B,2BAA2B,QAAW;AACvE,YAAM,yBAAyB,MAAM,OAAO,mCAAmC;AAC/E,WAAK,4BAA4B,yBAAyB;AAC1D,WAAK,kBAAkB,uBAAuB,8BAA8B;AAC5E,WAAK,4BAA4B,KAAK,MAAM;AAC5C,WAAK,2BACD,KAAK,4BAA4B,uBAAuB,+BAA+B;AAAA,IAC/F;AACA,SAAK;AAAA,MACD;AAAA,MACA,MAAM,OAAO,YAAY;AAAA,QACrB,YAAY,KAAK;AAAA,QACjB,qBACI,KAAK,4BAA4B,wBAAwB;AAAA,MACjE,CAAC;AAAA,IACL;AACA,SAAK,oBAAoB,KAAK,MAAM;AACpC,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA,EAEA,MAAM,sBAAsB;AACxB,QAAI,KAAK,sBAAsB,OAAW;AAC1C,QAAI;AACA,YAAM,SAAS,KAAK,kBAAkB,qBAAqB,OAAO;AAClE,YAAM,OAAO,YAAY;AAAA,QACrB,YAAY,KAAK;AAAA,QACjB,qBAAqB;AAAA,MACzB,CAAC;AACD,WAAK,oBAAoB;AAAA,IAC7B,SAAS,OAAO;AACZ,aAAO,MAAM,wCAAwC,KAAK;AAAA,IAC9D;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,kCAAkC;AACpC,QAAI,KAAK,4BAA4B,oBAAoB,QAAW;AAChE,YAAM,IAAI,mBAAmB,0DAA0D;AAAA,IAC3F;AAEA,UAAM,kBAAkB,KAAK,4BAA4B,gBAAgB;AAAA,MACrE,CAAC,EAAE,OAAO,EAAE,sBAAsB,uBAAuB,EAAE,MACvD,wBAAwB;AAAA,IAChC;AAEA,QAAI,iBAAiB;AACjB,YAAM,SAAS,KAAK,kBAAkB,qBAAqB,OAAO;AAClE,UAAI,qBAAqB,MAAM,OAAO,+BAA+B;AACrE,UAAI,uBAAuB,qBAAqB,uBAAuB,eAAe;AAClF,6BAAqB,KAAK,sBAAsB;AAAA,MACpD,OAAO;AACH,eAAO;AAAA,UACH,wFACI,uBAAuB,qBAAqB,uBAAuB,SAAS,WAAW,SAC3F;AAAA,QACJ;AAAA,MACJ;AACA,UAAI,cAAc,KAAK,sBAAsB;AAC7C,YAAM,mBAAmB,MAAM,OAAO;AAAA,QAClC;AAAA,UACI,YAAY,KAAK;AAAA,UACjB,qBAAqB;AAAA,UACrB;AAAA,QACJ;AAAA,QACA,EAAE,2CAA2C,KAAK;AAAA,MACtD;AACA,UACI,iBAAiB,cAAc,qBAAqB,mBAAmB,qBACvE,gBAAgB,MAClB;AACE,eAAO;AAAA,UACH,6EAA6E,WAAW;AAAA,QAC5F;AACA,sBAAc;AACd,aAAK;AAAA,UACD;AAAA,UACA,MAAM,OAAO;AAAA,YACT;AAAA,cACI,YAAY,KAAK;AAAA,cACjB,qBAAqB;AAAA,cACrB;AAAA,YACJ;AAAA,YACA,EAAE,2CAA2C,KAAK;AAAA,UACtD;AAAA,QACJ;AAAA,MACJ,OAAO;AACH,aAAK,mCAAmC,uBAAuB,gBAAgB;AAAA,MACnF;AACA,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AACA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAM,mBAAmB;AACrB,QACI,KAAK,4BAA4B,mBAAmB,UACpD,KAAK,4BAA4B,eAAe;AAAA,MAC5C,eAAa,cAAc,2BAA2B;AAAA,IAC1D,GACF;AACE,aAAO,MAAM,0CAA0C;AAAA,IAE3D;AACA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,qBAAqB;AACvB,UAAM,sCAAsC,KAAK,kBAAkB,uBAAuB,OAAO;AACjG,UAAM,EAAE,aAAa,kBAAkB,IAAI,MAAM,oCAAoC;AAAA,MACjF;AAAA,QACI,iBAAiB,uBAAuB,qBAAqB;AAAA,MACjE;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AAEA,UAAM,EAAE,aAAa,mBAAmB,IAAI,MAAM,oCAAoC;AAAA,MAClF;AAAA,QACI,iBAAiB,uBAAuB,qBAAqB;AAAA,MACjE;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AAEA,UAAM,EAAE,qBAAqB,qBAAqB,IAC9C,MAAM,oCAAoC;AAAA,MACtC;AAAA,QACI,kBAAkB,OAAO,cAAc,EAAE;AAAA,MAC7C;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AAEJ,QACI,kBAAkB,WAAW,KAC7B,mBAAmB,WAAW,KAC9B,oBAAoB,WAAW,KAC/B,qBAAqB,WAAW,GAClC;AAEE,YAAM,IAAI,mBAAmB,6CAA6C;AAAA,IAC9E;AACA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EAGJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBA,MAAM,gBAAgB;AAClB,UAAM,sCAAsC,KAAK,kBAAkB,uBAAuB,OAAO;AACjG,UAAM,EAAE,eAAe,sBAAsB,aAAa,IACtD,MAAM,oCAAoC;AAAA,MACtC,EAAE,UAAU,OAAO,cAAc,EAAE,EAAE;AAAA,MACrC,EAAE,2CAA2C,KAAK;AAAA,IACtD;AACJ,QAAI,cAAc,WAAW,KAAK,aAAa,WAAW,GAAG;AAEzD,YAAM,IAAI,oBAAoB,8BAA8B;AAAA,IAChE;AAEA,UAAM,EAAE,mBAAmB,IAAI,sBAAsB,OAAO,aAAa;AACzE,UAAM,uBAAuB,mBAAmB,oBAAoB,kBAAkB;AAEtF,UAAM,oCAAoC;AAAA,MACtC;AAAA,QACI,mBAAmB,KAAK,IAAI;AAAA,MAChC;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AACA,UAAM,sBAAsB,KAAK,IAAI;AAAA,MACjC;AAAA,MACA,KAAK,QAAQ;AAAA,MACb,KAAK,mBAAmB,QAAQ;AAAA,IACpC;AAEA,UAAM,iBAAiB,MAAM,oCAAoC;AAAA,MAC7D;AAAA,QACI,UAAU;AAAA,QACV,WAAW,IAAI,WAAW,CAAC;AAAA,QAC3B,UAAU,KAAK,QAAQ;AAAA,QACvB,eAAe,KAAK,QAAQ;AAAA,QAC5B,kBAAkB,KAAK,QAAQ;AAAA,MACnC;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AAEA,SAAK,qCAAqC,UAAU,cAAc;AAElE,UAAM,EAAE,YAAY,IAAI;AACxB,SAAK,4BAA4B,cAAc;AAE/C,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,qBAAqB;AACvB,UAAM,EAAE,YAAY,IAAI,KAAK;AAC7B,QAAI,gBAAgB,QAAW;AAC3B,aAAO,MAAM,mEAAmE;AAChF,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AACA,UAAM,+BAA+B,KAAK,kBAAkB,uBAAuB,OAAO;AAC1F,QAAI;AACA,WAAK;AAAA,QACD;AAAA,QACA,MAAM,6BAA6B,kBAAkB;AAAA,UACjD,OAAO,KAAK,QAAQ;AAAA,UACpB;AAAA,QACJ,CAAC;AAAA,MACL;AAAA,IACJ,SAAS,OAAO;AAEZ,YAAM,cAAc,OAAO,6BAA6B;AAAA,IAC5D;AAEA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,+BAA+B;AAGjC,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAcA,MAAM,mBAAmB;AACrB,QACI,KAAK,4BAA4B,oBAAoB,UACrD,KAAK,4BAA4B,kBAAkB,QACrD;AACE,YAAM,IAAI,mBAAmB,oEAAoE;AAAA,IACrG;AACA,QACI,KAAK,sBAAsB,gBAAgB,UAC3C,KAAK,sBAAsB,kBAAkB,QAC/C;AAEE,YAAM,uBACF,KAAK,4BAA4B,gBAAgB,WAAW,KAC5D,KAAK,4BAA4B,gBAAgB;AAAA,QAC7C,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B;AAAA,MAC9E;AACJ,YAAM,wBACF,KAAK,4BAA4B,cAAc,WAAW,KAC1D,KAAK,4BAA4B,cAAc;AAAA,QAAK,CAAC,EAAE,MAAM,MACzD,MAAM,KAAK,CAAC,EAAE,UAAU,MAAM,SAAS;AAAA,MAC3C;AACJ,UAAI,CAAC,wBAAwB,CAAC,uBAAuB;AACjD,cAAM,IAAI;AAAA,UACN;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA,EAEA,MAAM,wBAAwB;AAC1B,QAAI,KAAK,sBAAsB,gBAAgB,QAAW;AACtD,aAAO,MAAM,gCAAgC;AAC7C,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AACA,QACI,KAAK,4BAA4B,oBAAoB,UACrD,KAAK,4BAA4B,kBAAkB,QACrD;AACE,YAAM,sBAAsB,KAAK,4BAA4B,gBAAgB;AAAA,QACzE,CAAC,EAAE,WAAW,MAAM,eAAe;AAAA,MACvC,GAAG;AACH,YAAM,oBAAoB,KAAK,4BAA4B,cAAc;AAAA,QACrE,CAAC,EAAE,WAAW,MAAM,eAAe;AAAA,MACvC,GAAG;AAEH,aAAO;AAAA,QACH,wBAAwB,OAAO,OAAO,mBAAmB,CAAC,MAAM,OAAO,OAAO,iBAAiB,CAAC;AAAA,MACpG;AAEA,UAAI,qBAAqB,yBAAyB,MAAM;AACpD,eAAO,MAAM,0DAA0D;AACvE,eAAO;AAAA,UACH,MAAM;AAAA,UACN,YAAY,KAAK;AAAA,QACrB;AAAA,MACJ;AACA,UAAI,sBAAsB,UAAa,kBAAkB,SAAS,KAAK,kBAAkB,CAAC,EAAE,WAAW;AACnG,eAAO,MAAM,uDAAuD;AACpE,aAAK,4BAA4B,iCAAiC;AAClE,eAAO;AAAA,UACH,MAAM;AAAA,UACN,YAAY,KAAK;AAAA,QACrB;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO,MAAM,8BAA8B;AAC3C,UAAM,oCAAoC,KAAK;AAAA,MAC3C,qBAAqB,QAAQ,KAAK,sBAAsB;AAAA,MACxD,eAAe,CAAC;AAAA,MAChB;AAAA,IACJ;AACA,UAAM,OAAO,MAAM,WAAW,KAAK,sBAAsB,YAAY,QAAQ;AAC7E,UAAM,cAAc,MAAM,WAAW,KAAK,sBAAsB,YAAY,eAAe;AAE3F,UAAM,EAAE,kBAAkB,iBAAiB,UAAU,IAAI,MAAM,kCAAkC;AAAA,MAC7F;AAAA,QACI;AAAA,QACA,YAAY,KAAK;AAAA,MACrB;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AACA,QAAI,qBAAqB,qBAAqB,2BAA2B,SAAS;AAC9E,YAAM,IAAI,mBAAmB,kDAAkD,SAAS,EAAE;AAAA,IAC9F;AACA,QAAI,oBAAoB,UAAa,gBAAgB,WAAW,GAAG;AAC/D,YAAM,IAAI;AAAA,QACN,wEAAwE,KAAK,sBAAsB,YAAY,QAAQ;AAAA,MAC3H;AAAA,IACJ;AAEA,UAAM;AAAA,MACF,kBAAkB;AAAA,MAClB,WAAW;AAAA,MACX;AAAA,IACJ,IAAI,MAAM,kCAAkC;AAAA,MACxC;AAAA,QACI;AAAA,QACA;AAAA,QACA,YAAY,KAAK;AAAA,MACrB;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AACA,QAAI,wBAAwB,qBAAqB,2BAA2B,SAAS;AACjF,YAAM,IAAI,mBAAmB,4CAA4C,YAAY,EAAE;AAAA,IAC3F;AACA,QAAI,iBAAiB,QAAW;AAC5B,YAAM,IAAI,mBAAmB,2CAA2C;AAAA,IAC5E;AACA,WAAO;AAAA,MACH,mCAAmC,KAAK,sBAAsB,YAAY,QAAQ,uBAAuB,YAAY;AAAA,IACzH;AAEA,UAAM,kBAAkB,MAAM,kCAAkC,qBAAqB;AACrF,QAAI,gBAAgB,YAAY,MAAM,QAAW;AAC7C,YAAM,IAAI,mBAAmB,kDAAkD,YAAY,EAAE;AAAA,IACjG;AACA,UAAM,EAAE,WAAW,UAAU,IAAI,gBAAgB,YAAY;AAC7D,QAAI,WAAW;AACX,WAAK,4BAA4B,iCAAiC;AAClE,aAAO;AAAA,QACH,qDACI,KAAK,sBAAsB,YAAY,QAC3C,eAAe,MAAM,MAAM,SAAS,CAAC;AAAA,MACzC;AACA,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AAEA,UAAM,gBAAgB,MAAM,kCAAkC;AAAA,MAC1D;AAAA,QACI;AAAA,QACA,YAAY,KAAK;AAAA,MACrB;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AAEA,QAAI,cAAc,qBAAqB,qBAAqB,2BAA2B,SAAS;AAC5F,YAAM,IAAI,mBAAmB,mDAAmD,cAAc,SAAS,EAAE;AAAA,IAC7G;AACA,SAAK,4BAA4B,iCAAiC;AAClE,WAAO;AAAA,MACH,uDACI,KAAK,sBAAsB,YAAY,QAC3C,eAAe,MAAM,MAAM,SAAS,CAAC;AAAA,IACzC;AAEA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA,EAEA,MAAM,0BAA0B;AAC5B,QAAI,KAAK,4BAA4B,gCAAgC;AACjE,aAAO,MAAM,wEAAwE;AACrF,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AACA,QAAI,KAAK,sBAAsB,kBAAkB,QAAW;AACxD,aAAO,MAAM,kCAAkC;AAC/C,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AACA,QACI,KAAK,4BAA4B,oBAAoB,UACrD,KAAK,4BAA4B,kBAAkB,QACrD;AACE,YAAM,sBAAsB,KAAK,4BAA4B,gBAAgB;AAAA,QACzE,CAAC,EAAE,WAAW,MAAM,eAAe;AAAA,MACvC,GAAG;AACH,YAAM,oBAAoB,KAAK,4BAA4B,cAAc;AAAA,QACrE,CAAC,EAAE,WAAW,MAAM,eAAe;AAAA,MACvC,GAAG;AAEH,aAAO;AAAA,QACH,wBAAwB,OAAO,OAAO,mBAAmB,CAAC,MAAM,OAAO,OAAO,iBAAiB,CAAC;AAAA,MACpG;AAEA,UAAI,qBAAqB,2BAA2B,MAAM;AACtD,eAAO,MAAM,4DAA4D;AACzE,eAAO;AAAA,UACH,MAAM;AAAA,UACN,YAAY,KAAK;AAAA,QACrB;AAAA,MACJ;AACA,UAAI,sBAAsB,UAAa,kBAAkB,SAAS,KAAK,kBAAkB,CAAC,EAAE,WAAW;AACnG,eAAO,MAAM,yDAAyD;AACtE,eAAO;AAAA,UACH,MAAM;AAAA,UACN,YAAY,KAAK;AAAA,QACrB;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO,MAAM,gCAAgC;AAC7C,UAAM,oCAAoC,KAAK;AAAA,MAC3C,qBAAqB,QAAQ,KAAK,wBAAwB;AAAA,MAC1D,eAAe,CAAC;AAAA,MAChB;AAAA,IACJ;AAEA,UAAM,EAAE,kBAAkB,mBAAmB,UAAU,IAAI,MAAM,kCAAkC;AAAA,MAC/F,EAAE,YAAY,KAAK,kBAAkB;AAAA,MACrC,EAAE,2CAA2C,KAAK;AAAA,IACtD;AACA,QAAI,qBAAqB,qBAAqB,2BAA2B,SAAS;AAC9E,YAAM,IAAI,mBAAmB,oDAAoD,SAAS,EAAE;AAAA,IAChG;AACA,QAAI,sBAAsB,UAAa,kBAAkB,WAAW,GAAG;AACnE,YAAM,IAAI;AAAA,QACN,6EAA6E,KAAK,sBAAsB,cAAc,WAAW;AAAA,MACrI;AAAA,IACJ;AACA,UAAM,qBAAqB,kBAAkB;AAAA,MACzC,CAAC,EAAE,YAAY,MAAM,gBAAgB,KAAK,sBAAsB,eAAe;AAAA,IACnF;AACA,QAAI,uBAAuB,QAAW;AAClC,YAAM,IAAI;AAAA,QACN,qDACI,KAAK,sBAAsB,cAAc,WAC7C,KAAK,OAAO,OAAO,iBAAiB,CAAC;AAAA,MACzC;AAAA,IACJ;AACA,WAAO;AAAA,MACH,4CACI,KAAK,sBAAsB,cAAc,WAC7C,KAAK,OAAO,OAAO,kBAAkB,CAAC;AAAA,IAC1C;AAEA,UAAM;AAAA,MACF,kBAAkB;AAAA,MAClB,WAAW;AAAA,MACX;AAAA,IACJ,IAAI,MAAM,kCAAkC;AAAA,MACxC;AAAA,QACI,oBAAoB,MAAM,QAAQ,KAAK,sBAAsB,cAAc,kBAAkB;AAAA,QAC7F,YAAY,KAAK;AAAA,MACrB;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AACA,QAAI,wBAAwB,qBAAqB,2BAA2B,SAAS;AACjF,YAAM,IAAI,mBAAmB,8CAA8C,YAAY,EAAE;AAAA,IAC7F;AACA,QAAI,iBAAiB,QAAW;AAC5B,YAAM,IAAI,mBAAmB,2CAA2C;AAAA,IAC5E;AACA,WAAO;AAAA,MACH,qCAAqC,KAAK,sBAAsB,cAAc,WAAW,uBAAuB,YAAY;AAAA,IAChI;AAEA,UAAM,kBAAkB,MAAM,kCAAkC,qBAAqB;AACrF,QAAI,gBAAgB,YAAY,MAAM,QAAW;AAC7C,YAAM,IAAI,mBAAmB,kDAAkD,YAAY,EAAE;AAAA,IACjG;AACA,UAAM,EAAE,WAAW,UAAU,IAAI,gBAAgB,YAAY;AAC7D,QAAI,WAAW;AACX,aAAO;AAAA,QACH,uDACI,KAAK,sBAAsB,cAAc,WAC7C,eAAe,MAAM,MAAM,SAAS,CAAC;AAAA,MACzC;AACA,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AAEA,UAAM,gBAAgB,MAAM,kCAAkC;AAAA,MAC1D;AAAA,QACI;AAAA,QACA,YAAY,KAAK;AAAA,MACrB;AAAA,MACA,EAAE,2CAA2C,KAAK;AAAA,IACtD;AAEA,QAAI,cAAc,qBAAqB,qBAAqB,2BAA2B,SAAS;AAC5F,YAAM,IAAI;AAAA,QACN,qDAAqD,cAAc,SAAS;AAAA,MAChF;AAAA,IACJ;AACA,WAAO;AAAA,MACH,yDACI,KAAK,sBAAsB,cAAc,WAC7C,eAAe,MAAM,MAAM,SAAS,CAAC;AAAA,IACzC;AAEA,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAM,uBAAuB;AACzB,UAAM,mBAAmB,KAAK,4BAA4B,iCAAiC;AAE3F,WAAO,MAAM,iCAAiC,mBAAmB,eAAe,gBAAgB,WAAW;AAM3G,UAAM,wBAAwB,KAAK;AAAA,MAC/B;AAAA,MACA,KAAK,kBAAkB;AAAA,MACvB,MAAM;AACF,cAAM,MAAM,KAAK,MAAM;AACvB,YAAI,KAAK,6BAA6B,UAAa,MAAM,KAAK,0BAA0B;AACpF,iBAAO;AAAA,YACH,kEAAkE,KAAK,OAAO,KAAK,2BAA2B,OAAO,GAAI,CAAC;AAAA,UAC9H;AACA,eAAK,aAAa,EAAE,MAAM,WAAS;AAC/B,mBAAO,MAAM,mDAAmD,KAAK;AACrE,kCAAsB,KAAK;AAAA,UAC/B,CAAC;AAAA,QACL,OAAO;AAEH,gCAAsB,KAAK;AAAA,QAC/B;AAAA,MACJ;AAAA,IACJ;AACA,QAAI,kBAAkB;AAClB,4BAAsB,MAAM;AAAA,IAChC;AAEA,UAAM,mBAAmB,MAAM,KAAK;AAAA,MAChC,KAAK,mBAAmB;AAAA;AAAA,MAExB;AAAA,IACJ;AAEA,0BAAsB,KAAK;AAE3B,QAAI,qBAAqB,QAAW;AAChC,aAAO,MAAM,uEAAuE;AACpF,aAAO;AAAA,QACH,MAAM;AAAA,QACN,YAAY,KAAK;AAAA,MACrB;AAAA,IACJ;AAEA,SAAK,qBAAqB;AAC1B,SAAK,gBAAgB,MAAM;AAE3B,WAAO,MAAM,0CAA0C;AAEvD,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAM,yBAAyB;AAC3B,UAAM,oCAAoC,KAAK,kBAAkB,qBAAqB,OAAO;AAC7F,SAAK;AAAA,MACD;AAAA,MACA,MAAM,kCAAkC,sBAAsB,QAAW;AAAA,QACrE,2CAA2C;AAAA,MAC/C,CAAC;AAAA,IACL;AACA,SAAK,oBAAoB;AAEzB,WAAO;AAAA,MACH,MAAM;AAAA,MACN,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AACJ;",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["CommissioningStepResultCode"]
|
|
6
6
|
}
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { AsyncObservable } from "#general";
|
|
7
|
-
import { NodeId } from "#types";
|
|
7
|
+
import { NodeId, TypeFromPartialBitSchema } from "#types";
|
|
8
8
|
import { DecodedMessage, DecodedPacket, Message, Packet } from "../codec/MessageCodec.js";
|
|
9
|
+
import { SupportedTransportsBitmap } from "../common/Scanner.js";
|
|
9
10
|
import { Fabric } from "../fabric/Fabric.js";
|
|
10
11
|
import { MessageCounter } from "../protocol/MessageCounter.js";
|
|
11
12
|
import { MessageReceptionState } from "../protocol/MessageReceptionState.js";
|
|
@@ -36,14 +37,43 @@ export declare const FALLBACK_SPECIFICATION_VERSION = 0;
|
|
|
36
37
|
* Session parameters.
|
|
37
38
|
*/
|
|
38
39
|
export declare const FALLBACK_MAX_PATHS_PER_INVOKE = 1;
|
|
40
|
+
export declare const FALLBACK_MAX_TCP_MESSAGE_SIZE = 64000;
|
|
39
41
|
export interface SessionParameters {
|
|
42
|
+
/**
|
|
43
|
+
* Minimum amount of time between sender retries when the destination node is Idle.
|
|
44
|
+
* This SHALL be greater than or equal to the maximum amount of time a node may be
|
|
45
|
+
* non-responsive to incoming messages when Idle.
|
|
46
|
+
* Default: 500ms
|
|
47
|
+
*/
|
|
40
48
|
idleIntervalMs: number;
|
|
49
|
+
/**
|
|
50
|
+
* Minimum amount of time between sender retries when the destination node is Active.
|
|
51
|
+
* This SHALL be greater than or equal to the maximum amount of time a node may be
|
|
52
|
+
* non-responsive to incoming messages when Active.
|
|
53
|
+
* Default: 300ms
|
|
54
|
+
*/
|
|
41
55
|
activeIntervalMs: number;
|
|
56
|
+
/**
|
|
57
|
+
* Minimum amount of time the node SHOULD stay active after network activity.
|
|
58
|
+
* Default: 4000ms
|
|
59
|
+
*/
|
|
42
60
|
activeThresholdMs: number;
|
|
61
|
+
/** Version of Data Model for the Session parameters side where it appears. */
|
|
43
62
|
dataModelRevision: number;
|
|
63
|
+
/** Version of Interaction Model for the Session parameters side where it appears. */
|
|
44
64
|
interactionModelRevision: number;
|
|
65
|
+
/** Version of Specification for the Session parameters side where it appears. */
|
|
45
66
|
specificationVersion: number;
|
|
67
|
+
/** The maximum number of elements in the InvokeRequests list that the Node is able to process. */
|
|
46
68
|
maxPathsPerInvoke: number;
|
|
69
|
+
/** A bitmap of the supported transport protocols in addition to MRP. */
|
|
70
|
+
supportedTransports: TypeFromPartialBitSchema<typeof SupportedTransportsBitmap>;
|
|
71
|
+
/**
|
|
72
|
+
* Maximum size of the message carried over TCP, excluding the framing message length
|
|
73
|
+
* field, that the node is capable of receiving from its peer.
|
|
74
|
+
* Default: 64000 bytes
|
|
75
|
+
*/
|
|
76
|
+
maxTcpMessageSize: number;
|
|
47
77
|
}
|
|
48
78
|
export type SessionParameterOptions = Partial<SessionParameters>;
|
|
49
79
|
export declare abstract class Session {
|
|
@@ -62,6 +92,8 @@ export declare abstract class Session {
|
|
|
62
92
|
protected readonly maxPathsPerInvoke: number;
|
|
63
93
|
protected readonly messageCounter: MessageCounter;
|
|
64
94
|
protected readonly messageReceptionState: MessageReceptionState;
|
|
95
|
+
protected readonly supportedTransports: TypeFromPartialBitSchema<typeof SupportedTransportsBitmap>;
|
|
96
|
+
protected readonly maxTcpMessageSize: number;
|
|
65
97
|
/**
|
|
66
98
|
* If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
|
|
67
99
|
* historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/session/Session.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAQ,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/session/Session.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ const FALLBACK_DATAMODEL_REVISION = 17;
|
|
|
11
11
|
const FALLBACK_INTERACTIONMODEL_REVISION = 11;
|
|
12
12
|
const FALLBACK_SPECIFICATION_VERSION = 0;
|
|
13
13
|
const FALLBACK_MAX_PATHS_PER_INVOKE = 1;
|
|
14
|
+
const FALLBACK_MAX_TCP_MESSAGE_SIZE = 64e3;
|
|
14
15
|
class Session {
|
|
15
16
|
#manager;
|
|
16
17
|
timestamp = Time.nowMs();
|
|
@@ -25,6 +26,8 @@ class Session {
|
|
|
25
26
|
maxPathsPerInvoke;
|
|
26
27
|
messageCounter;
|
|
27
28
|
messageReceptionState;
|
|
29
|
+
supportedTransports;
|
|
30
|
+
maxTcpMessageSize;
|
|
28
31
|
/**
|
|
29
32
|
* If the ExchangeManager performs async work to clean up a session it sets this promise. This is because
|
|
30
33
|
* historically we didn't return from destroy() until ExchangeManager was complete. Not sure if this is entirely
|
|
@@ -44,7 +47,10 @@ class Session {
|
|
|
44
47
|
dataModelRevision = FALLBACK_DATAMODEL_REVISION,
|
|
45
48
|
interactionModelRevision = FALLBACK_INTERACTIONMODEL_REVISION,
|
|
46
49
|
specificationVersion = FALLBACK_SPECIFICATION_VERSION,
|
|
47
|
-
maxPathsPerInvoke = FALLBACK_MAX_PATHS_PER_INVOKE
|
|
50
|
+
maxPathsPerInvoke = FALLBACK_MAX_PATHS_PER_INVOKE,
|
|
51
|
+
supportedTransports = {},
|
|
52
|
+
// no TCP support by default
|
|
53
|
+
maxTcpMessageSize = FALLBACK_MAX_TCP_MESSAGE_SIZE
|
|
48
54
|
} = {},
|
|
49
55
|
setActiveTimestamp
|
|
50
56
|
} = args;
|
|
@@ -58,6 +64,8 @@ class Session {
|
|
|
58
64
|
this.interactionModelRevision = interactionModelRevision;
|
|
59
65
|
this.specificationVersion = specificationVersion;
|
|
60
66
|
this.maxPathsPerInvoke = maxPathsPerInvoke;
|
|
67
|
+
this.supportedTransports = supportedTransports;
|
|
68
|
+
this.maxTcpMessageSize = maxTcpMessageSize;
|
|
61
69
|
if (setActiveTimestamp) {
|
|
62
70
|
this.activeTimestamp = this.timestamp;
|
|
63
71
|
}
|
|
@@ -91,7 +99,9 @@ class Session {
|
|
|
91
99
|
dataModelRevision,
|
|
92
100
|
interactionModelRevision,
|
|
93
101
|
specificationVersion,
|
|
94
|
-
maxPathsPerInvoke
|
|
102
|
+
maxPathsPerInvoke,
|
|
103
|
+
supportedTransports,
|
|
104
|
+
maxTcpMessageSize
|
|
95
105
|
} = this;
|
|
96
106
|
return {
|
|
97
107
|
idleIntervalMs,
|
|
@@ -100,7 +110,9 @@ class Session {
|
|
|
100
110
|
dataModelRevision,
|
|
101
111
|
interactionModelRevision,
|
|
102
112
|
specificationVersion,
|
|
103
|
-
maxPathsPerInvoke
|
|
113
|
+
maxPathsPerInvoke,
|
|
114
|
+
supportedTransports,
|
|
115
|
+
maxTcpMessageSize
|
|
104
116
|
};
|
|
105
117
|
}
|
|
106
118
|
get manager() {
|
|
@@ -117,6 +129,7 @@ export {
|
|
|
117
129
|
FALLBACK_DATAMODEL_REVISION,
|
|
118
130
|
FALLBACK_INTERACTIONMODEL_REVISION,
|
|
119
131
|
FALLBACK_MAX_PATHS_PER_INVOKE,
|
|
132
|
+
FALLBACK_MAX_TCP_MESSAGE_SIZE,
|
|
120
133
|
FALLBACK_SPECIFICATION_VERSION,
|
|
121
134
|
SESSION_ACTIVE_INTERVAL_MS,
|
|
122
135
|
SESSION_ACTIVE_THRESHOLD_MS,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/session/Session.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,iBAAiB,YAAY;
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,iBAAiB,YAAY;AAa/B,MAAM,6BAA6B;AAMnC,MAAM,2BAA2B;AAGjC,MAAM,8BAA8B;AAGpC,MAAM,8BAA8B;AAGpC,MAAM,qCAAqC;AAM3C,MAAM,iCAAiC;AAMvC,MAAM,gCAAgC;AAEtC,MAAM,gCAAgC;AAkDtC,MAAe,QAAQ;AAAA,EAG1B;AAAA,EACA,YAAY,KAAK,MAAM;AAAA,EACd,YAAY,KAAK,MAAM;AAAA,EAChC,kBAAkB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOnB;AAAA,EACA,aAAa,gBAAoB;AAAA,EAEjC,YAAY,MAMT;AACC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA,mBAAmB;AAAA,QACf,iBAAiB;AAAA,QACjB,mBAAmB;AAAA,QACnB,oBAAoB;AAAA,QACpB,oBAAoB;AAAA,QACpB,2BAA2B;AAAA,QAC3B,uBAAuB;AAAA,QACvB,oBAAoB;AAAA,QACpB,sBAAsB,CAAC;AAAA;AAAA,QACvB,oBAAoB;AAAA,MACxB,IAAI,CAAC;AAAA,MACL;AAAA,IACJ,IAAI;AACJ,SAAK,WAAW;AAChB,SAAK,iBAAiB;AACtB,SAAK,wBAAwB;AAC7B,SAAK,iBAAiB;AACtB,SAAK,mBAAmB;AACxB,SAAK,oBAAoB;AACzB,SAAK,oBAAoB;AACzB,SAAK,2BAA2B;AAChC,SAAK,uBAAuB;AAC5B,SAAK,oBAAoB;AACzB,SAAK,sBAAsB;AAC3B,SAAK,oBAAoB;AACzB,QAAI,oBAAoB;AACpB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,eAAe,iBAA0B;AACrC,SAAK,YAAY,KAAK,MAAM;AAC5B,QAAI,iBAAiB;AAEjB,WAAK,kBAAkB,KAAK;AAAA,IAChC;AAAA,EACJ;AAAA,EAEA,eAAwB;AACpB,WAAO,KAAK,MAAM,IAAI,KAAK,kBAAkB,KAAK;AAAA,EACtD;AAAA,EAEA,+BAA+B;AAC3B,WAAO,KAAK,eAAe,sBAAsB;AAAA,EACrD;AAAA,EAEA,qBAAqB,gBAAwB,eAAwB;AACjE,SAAK,sBAAsB,qBAAqB,cAAc;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,aAAgC;AAChC,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,IAAI;AACJ,WAAO;AAAA,MACH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ;AAAA,EACJ;AAAA,EAgBA,IAAc,UAAU;AACpB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,QAAQ;AACR,WAAO,KAAK,UAAU;AAAA,EAC1B;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EACH,QAAQ,EAER,YAAY,EAEZ,WAAW,EACX,aAAa,EAMb,UAAU,EAEV,cAAc,EAEjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAA0C,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ import {
|
|
|
22
22
|
import { Specification } from "#model";
|
|
23
23
|
import { PeerAddress, PeerAddressMap } from "#peer/PeerAddress.js";
|
|
24
24
|
import { DEFAULT_MAX_PATHS_PER_INVOKE, NodeId } from "#types";
|
|
25
|
+
import { SupportedTransportsSchema } from "../common/Scanner.js";
|
|
25
26
|
import { MessageCounter } from "../protocol/MessageCounter.js";
|
|
26
27
|
import { InsecureSession } from "./InsecureSession.js";
|
|
27
28
|
import { SecureSession } from "./SecureSession.js";
|
|
@@ -29,6 +30,7 @@ import {
|
|
|
29
30
|
FALLBACK_DATAMODEL_REVISION,
|
|
30
31
|
FALLBACK_INTERACTIONMODEL_REVISION,
|
|
31
32
|
FALLBACK_MAX_PATHS_PER_INVOKE,
|
|
33
|
+
FALLBACK_MAX_TCP_MESSAGE_SIZE,
|
|
32
34
|
FALLBACK_SPECIFICATION_VERSION,
|
|
33
35
|
SESSION_ACTIVE_INTERVAL_MS,
|
|
34
36
|
SESSION_ACTIVE_THRESHOLD_MS,
|
|
@@ -42,7 +44,9 @@ const DEFAULT_SESSION_PARAMETERS = {
|
|
|
42
44
|
dataModelRevision: Specification.DATA_MODEL_REVISION,
|
|
43
45
|
interactionModelRevision: Specification.INTERACTION_MODEL_REVISION,
|
|
44
46
|
specificationVersion: Specification.SPECIFICATION_VERSION,
|
|
45
|
-
maxPathsPerInvoke: DEFAULT_MAX_PATHS_PER_INVOKE
|
|
47
|
+
maxPathsPerInvoke: DEFAULT_MAX_PATHS_PER_INVOKE,
|
|
48
|
+
supportedTransports: {},
|
|
49
|
+
maxTcpMessageSize: FALLBACK_MAX_TCP_MESSAGE_SIZE
|
|
46
50
|
};
|
|
47
51
|
const UNICAST_UNSECURE_SESSION_ID = 0;
|
|
48
52
|
class SessionManager {
|
|
@@ -306,7 +310,10 @@ class SessionManager {
|
|
|
306
310
|
resumptionId,
|
|
307
311
|
fabricId: fabric.fabricId,
|
|
308
312
|
peerNodeId,
|
|
309
|
-
sessionParameters
|
|
313
|
+
sessionParameters: {
|
|
314
|
+
...sessionParameters,
|
|
315
|
+
supportedTransports: sessionParameters.supportedTransports ? SupportedTransportsSchema.encode(sessionParameters.supportedTransports) : void 0
|
|
316
|
+
},
|
|
310
317
|
caseAuthenticatedTags
|
|
311
318
|
})
|
|
312
319
|
)
|
|
@@ -332,7 +339,9 @@ class SessionManager {
|
|
|
332
339
|
dataModelRevision,
|
|
333
340
|
interactionModelRevision,
|
|
334
341
|
specificationVersion,
|
|
335
|
-
maxPathsPerInvoke
|
|
342
|
+
maxPathsPerInvoke,
|
|
343
|
+
supportedTransports,
|
|
344
|
+
maxTcpMessageSize
|
|
336
345
|
} = {},
|
|
337
346
|
caseAuthenticatedTags
|
|
338
347
|
}) => {
|
|
@@ -362,7 +371,9 @@ class SessionManager {
|
|
|
362
371
|
dataModelRevision: dataModelRevision ?? FALLBACK_DATAMODEL_REVISION,
|
|
363
372
|
interactionModelRevision: interactionModelRevision ?? FALLBACK_INTERACTIONMODEL_REVISION,
|
|
364
373
|
specificationVersion: specificationVersion ?? FALLBACK_SPECIFICATION_VERSION,
|
|
365
|
-
maxPathsPerInvoke: maxPathsPerInvoke ?? FALLBACK_MAX_PATHS_PER_INVOKE
|
|
374
|
+
maxPathsPerInvoke: maxPathsPerInvoke ?? FALLBACK_MAX_PATHS_PER_INVOKE,
|
|
375
|
+
supportedTransports: supportedTransports !== void 0 ? SupportedTransportsSchema.decode(supportedTransports) : {},
|
|
376
|
+
maxTcpMessageSize: maxTcpMessageSize ?? FALLBACK_MAX_TCP_MESSAGE_SIZE
|
|
366
377
|
},
|
|
367
378
|
caseAuthenticatedTags
|
|
368
379
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/session/SessionManager.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,qBAAqB;AAC9B;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OACG;AAEP,SAAS,qBAAqB;AAC9B,SAAS,aAAa,sBAAsB;AAC5C,SAA+B,8BAAqD,cAAc;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["fabric"]
|
|
6
6
|
}
|