@matter/protocol 0.12.4-alpha.0-20250217-b0bba5179 → 0.12.4-alpha.0-20250224-e0964a795
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/action/client/ClientInteraction.d.ts +38 -0
- package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -0
- package/dist/cjs/action/client/ClientInteraction.js +91 -0
- package/dist/cjs/action/client/ClientInteraction.js.map +6 -0
- package/dist/cjs/action/client/index.d.ts +7 -0
- package/dist/cjs/action/client/index.d.ts.map +1 -0
- package/dist/cjs/action/client/index.js +24 -0
- package/dist/cjs/action/client/index.js.map +6 -0
- package/dist/cjs/action/index.d.ts +1 -0
- package/dist/cjs/action/index.d.ts.map +1 -1
- package/dist/cjs/action/index.js +1 -0
- package/dist/cjs/action/index.js.map +1 -1
- package/dist/cjs/interaction/DecodedDataReport.d.ts +15 -0
- package/dist/cjs/interaction/DecodedDataReport.d.ts.map +1 -0
- package/dist/cjs/interaction/DecodedDataReport.js +42 -0
- package/dist/cjs/interaction/DecodedDataReport.js.map +6 -0
- package/dist/cjs/interaction/InteractionClient.d.ts +13 -23
- package/dist/cjs/interaction/InteractionClient.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionClient.js +99 -127
- package/dist/cjs/interaction/InteractionClient.js.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.d.ts +94 -1
- package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionMessenger.js +56 -37
- package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
- package/dist/cjs/interaction/InteractionServer.d.ts +4 -2
- package/dist/cjs/interaction/InteractionServer.d.ts.map +1 -1
- package/dist/cjs/interaction/InteractionServer.js +12 -4
- package/dist/cjs/interaction/InteractionServer.js.map +1 -1
- package/dist/cjs/interaction/SubscriptionClient.d.ts +38 -0
- package/dist/cjs/interaction/SubscriptionClient.d.ts.map +1 -0
- package/dist/cjs/interaction/SubscriptionClient.js +98 -0
- package/dist/cjs/interaction/SubscriptionClient.js.map +6 -0
- package/dist/cjs/interaction/index.d.ts +1 -0
- package/dist/cjs/interaction/index.d.ts.map +1 -1
- package/dist/cjs/interaction/index.js +1 -0
- package/dist/cjs/interaction/index.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioner.d.ts +2 -2
- package/dist/cjs/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioner.js +4 -3
- package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
- package/dist/cjs/peer/InteractionQueue.d.ts +11 -0
- package/dist/cjs/peer/InteractionQueue.d.ts.map +1 -0
- package/dist/cjs/peer/InteractionQueue.js +42 -0
- package/dist/cjs/peer/InteractionQueue.js.map +6 -0
- package/dist/cjs/peer/PeerAddressStore.d.ts +1 -1
- package/dist/cjs/peer/PeerAddressStore.d.ts.map +1 -1
- package/dist/cjs/peer/PeerSet.d.ts +16 -7
- package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
- package/dist/cjs/peer/PeerSet.js +58 -61
- package/dist/cjs/peer/PeerSet.js.map +1 -1
- package/dist/cjs/peer/PhysicalDeviceProperties.d.ts +26 -0
- package/dist/cjs/peer/PhysicalDeviceProperties.d.ts.map +1 -0
- package/dist/cjs/peer/PhysicalDeviceProperties.js +74 -0
- package/dist/cjs/peer/PhysicalDeviceProperties.js.map +6 -0
- package/dist/cjs/peer/index.d.ts +1 -0
- package/dist/cjs/peer/index.d.ts.map +1 -1
- package/dist/cjs/peer/index.js +1 -0
- package/dist/cjs/peer/index.js.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.d.ts +1 -0
- package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeManager.js +18 -11
- package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.d.ts +13 -1
- package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/cjs/protocol/ExchangeProvider.js +2 -0
- package/dist/cjs/protocol/ExchangeProvider.js.map +1 -1
- package/dist/cjs/protocol/ProtocolHandler.d.ts +1 -1
- package/dist/cjs/protocol/ProtocolHandler.d.ts.map +1 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.d.ts +1 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.d.ts.map +1 -1
- package/dist/cjs/securechannel/SecureChannelProtocol.js +1 -3
- package/dist/cjs/securechannel/SecureChannelProtocol.js.map +1 -1
- package/dist/cjs/session/InsecureSession.d.ts.map +1 -1
- package/dist/cjs/session/InsecureSession.js +1 -0
- package/dist/cjs/session/InsecureSession.js.map +1 -1
- package/dist/cjs/session/SecureSession.d.ts.map +1 -1
- package/dist/cjs/session/SecureSession.js +4 -0
- package/dist/cjs/session/SecureSession.js.map +1 -1
- package/dist/cjs/session/Session.d.ts +3 -1
- package/dist/cjs/session/Session.d.ts.map +1 -1
- package/dist/cjs/session/Session.js +5 -1
- 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 +1 -0
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseClient.js +22 -15
- package/dist/cjs/session/case/CaseClient.js.map +1 -1
- package/dist/cjs/session/case/CaseServer.d.ts +1 -1
- package/dist/cjs/session/case/CaseServer.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseServer.js +2 -4
- package/dist/cjs/session/case/CaseServer.js.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts +2 -3
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +12 -14
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/action/client/ClientInteraction.d.ts +38 -0
- package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -0
- package/dist/esm/action/client/ClientInteraction.js +71 -0
- package/dist/esm/action/client/ClientInteraction.js.map +6 -0
- package/dist/esm/action/client/index.d.ts +7 -0
- package/dist/esm/action/client/index.d.ts.map +1 -0
- package/dist/esm/action/client/index.js +7 -0
- package/dist/esm/action/client/index.js.map +6 -0
- package/dist/esm/action/index.d.ts +1 -0
- package/dist/esm/action/index.d.ts.map +1 -1
- package/dist/esm/action/index.js +1 -0
- package/dist/esm/action/index.js.map +1 -1
- package/dist/esm/interaction/DecodedDataReport.d.ts +15 -0
- package/dist/esm/interaction/DecodedDataReport.d.ts.map +1 -0
- package/dist/esm/interaction/DecodedDataReport.js +22 -0
- package/dist/esm/interaction/DecodedDataReport.js.map +6 -0
- package/dist/esm/interaction/InteractionClient.d.ts +13 -23
- package/dist/esm/interaction/InteractionClient.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionClient.js +101 -134
- package/dist/esm/interaction/InteractionClient.js.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.d.ts +94 -1
- package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionMessenger.js +56 -37
- package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
- package/dist/esm/interaction/InteractionServer.d.ts +4 -2
- package/dist/esm/interaction/InteractionServer.d.ts.map +1 -1
- package/dist/esm/interaction/InteractionServer.js +12 -4
- package/dist/esm/interaction/InteractionServer.js.map +1 -1
- package/dist/esm/interaction/SubscriptionClient.d.ts +38 -0
- package/dist/esm/interaction/SubscriptionClient.d.ts.map +1 -0
- package/dist/esm/interaction/SubscriptionClient.js +78 -0
- package/dist/esm/interaction/SubscriptionClient.js.map +6 -0
- package/dist/esm/interaction/index.d.ts +1 -0
- package/dist/esm/interaction/index.d.ts.map +1 -1
- package/dist/esm/interaction/index.js +1 -0
- package/dist/esm/interaction/index.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.d.ts +2 -2
- package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioner.js +6 -5
- package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
- package/dist/esm/peer/InteractionQueue.d.ts +11 -0
- package/dist/esm/peer/InteractionQueue.d.ts.map +1 -0
- package/dist/esm/peer/InteractionQueue.js +22 -0
- package/dist/esm/peer/InteractionQueue.js.map +6 -0
- package/dist/esm/peer/PeerAddressStore.d.ts +1 -1
- package/dist/esm/peer/PeerAddressStore.d.ts.map +1 -1
- package/dist/esm/peer/PeerSet.d.ts +16 -7
- package/dist/esm/peer/PeerSet.d.ts.map +1 -1
- package/dist/esm/peer/PeerSet.js +59 -62
- package/dist/esm/peer/PeerSet.js.map +1 -1
- package/dist/esm/peer/PhysicalDeviceProperties.d.ts +26 -0
- package/dist/esm/peer/PhysicalDeviceProperties.d.ts.map +1 -0
- package/dist/esm/peer/PhysicalDeviceProperties.js +54 -0
- package/dist/esm/peer/PhysicalDeviceProperties.js.map +6 -0
- package/dist/esm/peer/index.d.ts +1 -0
- package/dist/esm/peer/index.d.ts.map +1 -1
- package/dist/esm/peer/index.js +1 -0
- package/dist/esm/peer/index.js.map +1 -1
- package/dist/esm/protocol/ExchangeManager.d.ts +1 -0
- package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeManager.js +18 -11
- package/dist/esm/protocol/ExchangeManager.js.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.d.ts +13 -1
- package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
- package/dist/esm/protocol/ExchangeProvider.js +2 -0
- package/dist/esm/protocol/ExchangeProvider.js.map +1 -1
- package/dist/esm/protocol/ProtocolHandler.d.ts +1 -1
- package/dist/esm/protocol/ProtocolHandler.d.ts.map +1 -1
- package/dist/esm/securechannel/SecureChannelProtocol.d.ts +1 -1
- package/dist/esm/securechannel/SecureChannelProtocol.d.ts.map +1 -1
- package/dist/esm/securechannel/SecureChannelProtocol.js +1 -3
- package/dist/esm/securechannel/SecureChannelProtocol.js.map +1 -1
- package/dist/esm/session/InsecureSession.d.ts.map +1 -1
- package/dist/esm/session/InsecureSession.js +1 -0
- package/dist/esm/session/InsecureSession.js.map +1 -1
- package/dist/esm/session/SecureSession.d.ts.map +1 -1
- package/dist/esm/session/SecureSession.js +4 -0
- package/dist/esm/session/SecureSession.js.map +1 -1
- package/dist/esm/session/Session.d.ts +3 -1
- package/dist/esm/session/Session.d.ts.map +1 -1
- package/dist/esm/session/Session.js +6 -2
- 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 +1 -0
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
- package/dist/esm/session/case/CaseClient.js +22 -15
- package/dist/esm/session/case/CaseClient.js.map +1 -1
- package/dist/esm/session/case/CaseServer.d.ts +1 -1
- package/dist/esm/session/case/CaseServer.d.ts.map +1 -1
- package/dist/esm/session/case/CaseServer.js +2 -4
- package/dist/esm/session/case/CaseServer.js.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts +2 -3
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +12 -14
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/action/client/ClientInteraction.ts +110 -0
- package/src/action/client/index.ts +7 -0
- package/src/action/index.ts +1 -0
- package/src/interaction/DecodedDataReport.ts +29 -0
- package/src/interaction/InteractionClient.ts +112 -164
- package/src/interaction/InteractionMessenger.ts +63 -43
- package/src/interaction/InteractionServer.ts +18 -5
- package/src/interaction/SubscriptionClient.ts +107 -0
- package/src/interaction/index.ts +1 -0
- package/src/peer/ControllerCommissioner.ts +7 -6
- package/src/peer/InteractionQueue.ts +22 -0
- package/src/peer/PeerAddressStore.ts +1 -1
- package/src/peer/PeerSet.ts +69 -76
- package/src/peer/PhysicalDeviceProperties.ts +80 -0
- package/src/peer/index.ts +1 -0
- package/src/protocol/ExchangeManager.ts +19 -11
- package/src/protocol/ExchangeProvider.ts +14 -1
- package/src/protocol/ProtocolHandler.ts +1 -1
- package/src/securechannel/SecureChannelProtocol.ts +1 -3
- package/src/session/InsecureSession.ts +1 -0
- package/src/session/SecureSession.ts +4 -0
- package/src/session/Session.ts +7 -2
- package/src/session/SessionManager.ts +1 -0
- package/src/session/case/CaseClient.ts +18 -12
- package/src/session/case/CaseServer.ts +3 -5
- package/src/session/pase/PaseServer.ts +13 -15
|
@@ -22,6 +22,7 @@ __export(CaseClient_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(CaseClient_exports);
|
|
24
24
|
var import_general = require("#general");
|
|
25
|
+
var import_types = require("#types");
|
|
25
26
|
var import_CertificateManager = require("../../certificate/CertificateManager.js");
|
|
26
27
|
var import_CaseMessages = require("./CaseMessages.js");
|
|
27
28
|
var import_CaseMessenger = require("./CaseMessenger.js");
|
|
@@ -75,7 +76,12 @@ class CaseClient {
|
|
|
75
76
|
const { sigma2Bytes, sigma2, sigma2Resume } = await messenger.readSigma2();
|
|
76
77
|
if (sigma2Resume !== void 0) {
|
|
77
78
|
if (resumptionRecord === void 0) throw new import_general.UnexpectedDataError("Received an unexpected sigma2Resume.");
|
|
78
|
-
const {
|
|
79
|
+
const {
|
|
80
|
+
sharedSecret,
|
|
81
|
+
fabric: fabric2,
|
|
82
|
+
sessionParameters: resumptionSessionParams,
|
|
83
|
+
caseAuthenticatedTags
|
|
84
|
+
} = resumptionRecord;
|
|
79
85
|
const { responderSessionId: peerSessionId, resumptionId, resumeMic } = sigma2Resume;
|
|
80
86
|
const sessionParameters = {
|
|
81
87
|
...exchange.session.parameters,
|
|
@@ -94,11 +100,12 @@ class CaseClient {
|
|
|
94
100
|
salt: secureSessionSalt,
|
|
95
101
|
isInitiator: true,
|
|
96
102
|
isResumption: true,
|
|
97
|
-
peerSessionParameters: sessionParameters
|
|
103
|
+
peerSessionParameters: sessionParameters,
|
|
104
|
+
caseAuthenticatedTags
|
|
98
105
|
});
|
|
99
106
|
await messenger.sendSuccess();
|
|
100
107
|
logger.info(
|
|
101
|
-
`Case client: Session resumed with ${messenger.getChannelName()} and parameters`,
|
|
108
|
+
`Case client: Session ${secureSession.id} successfully resumed with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(fabric2.nodeId)}(index ${fabric2.fabricIndex}) and PeerNode ${import_types.NodeId.toHexString(peerNodeId)} and parameters`,
|
|
102
109
|
secureSession.parameterDiagnostics()
|
|
103
110
|
);
|
|
104
111
|
resumptionRecord.resumptionId = resumptionId;
|
|
@@ -144,26 +151,21 @@ class CaseClient {
|
|
|
144
151
|
import_general.Crypto.verify((0, import_general.PublicKey)(peerPublicKey), peerSignatureData, peerSignature);
|
|
145
152
|
if (peerNodeIdNOCert !== peerNodeId) {
|
|
146
153
|
throw new import_general.UnexpectedDataError(
|
|
147
|
-
|
|
148
|
-
);
|
|
149
|
-
}
|
|
150
|
-
if (peerNodeIdNOCert !== peerNodeId) {
|
|
151
|
-
throw new import_general.UnexpectedDataError(
|
|
152
|
-
"The node ID in the peer certificate doesn't match the expected peer node ID"
|
|
154
|
+
`The node ID in the peer certificate ${peerNodeIdNOCert} doesn't match the expected peer node ID ${peerNodeId}`
|
|
153
155
|
);
|
|
154
156
|
}
|
|
155
157
|
if (peerFabricIdNOCert !== fabric.fabricId) {
|
|
156
158
|
throw new import_general.UnexpectedDataError(
|
|
157
|
-
|
|
159
|
+
`The fabric ID in the peer certificate ${peerFabricIdNOCert} doesn't match the expected fabric ID ${fabric.fabricId}`
|
|
158
160
|
);
|
|
159
161
|
}
|
|
160
162
|
if (peerIntermediateCACert !== void 0) {
|
|
161
163
|
const {
|
|
162
164
|
subject: { fabricId: peerFabricIdIcaCert }
|
|
163
165
|
} = import_CertificateManager.TlvIntermediateCertificate.decode(peerIntermediateCACert);
|
|
164
|
-
if (peerFabricIdIcaCert !== fabric.fabricId) {
|
|
166
|
+
if (peerFabricIdIcaCert !== void 0 && peerFabricIdIcaCert !== fabric.fabricId) {
|
|
165
167
|
throw new import_general.UnexpectedDataError(
|
|
166
|
-
|
|
168
|
+
`The fabric ID in the peer intermediate CA certificate ${peerFabricIdIcaCert} doesn't match the expected fabric ID ${fabric.fabricId}`
|
|
167
169
|
);
|
|
168
170
|
}
|
|
169
171
|
}
|
|
@@ -181,6 +183,7 @@ class CaseClient {
|
|
|
181
183
|
const encrypted = import_general.Crypto.encrypt(sigma3Key, encryptedData, import_CaseMessages.TBE_DATA3_NONCE);
|
|
182
184
|
const sigma3Bytes = await messenger.sendSigma3({ encrypted });
|
|
183
185
|
await messenger.waitForSuccess("Sigma3-Success");
|
|
186
|
+
const { caseAuthenticatedTags } = resumptionRecord ?? {};
|
|
184
187
|
const secureSessionSalt = import_general.Bytes.concat(
|
|
185
188
|
operationalIdentityProtectionKey,
|
|
186
189
|
import_general.Crypto.hash([sigma1Bytes, sigma2Bytes, sigma3Bytes])
|
|
@@ -194,10 +197,13 @@ class CaseClient {
|
|
|
194
197
|
salt: secureSessionSalt,
|
|
195
198
|
isInitiator: true,
|
|
196
199
|
isResumption: false,
|
|
197
|
-
peerSessionParameters: sessionParameters
|
|
200
|
+
peerSessionParameters: sessionParameters,
|
|
201
|
+
caseAuthenticatedTags
|
|
198
202
|
});
|
|
199
203
|
logger.info(
|
|
200
|
-
`Case client
|
|
204
|
+
`Case client Session ${secureSession.id} established successfully with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(
|
|
205
|
+
fabric.nodeId
|
|
206
|
+
)}(index ${fabric.fabricIndex}) and PeerNode ${import_types.NodeId.toHexString(peerNodeId)}and parameters`,
|
|
201
207
|
secureSession.parameterDiagnostics()
|
|
202
208
|
);
|
|
203
209
|
resumptionRecord = {
|
|
@@ -205,7 +211,8 @@ class CaseClient {
|
|
|
205
211
|
peerNodeId,
|
|
206
212
|
sharedSecret,
|
|
207
213
|
resumptionId: peerResumptionId,
|
|
208
|
-
sessionParameters: secureSession.parameters
|
|
214
|
+
sessionParameters: secureSession.parameters,
|
|
215
|
+
caseAuthenticatedTags
|
|
209
216
|
};
|
|
210
217
|
}
|
|
211
218
|
await messenger.close();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/case/CaseClient.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAsE;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["fabric"]
|
|
6
6
|
}
|
|
@@ -9,9 +9,9 @@ import { MessageExchange } from "../../protocol/MessageExchange.js";
|
|
|
9
9
|
import { ProtocolHandler } from "../../protocol/ProtocolHandler.js";
|
|
10
10
|
export declare class CaseServer implements ProtocolHandler {
|
|
11
11
|
#private;
|
|
12
|
+
readonly id = 0;
|
|
12
13
|
constructor(sessions: SessionManager, fabrics: FabricManager);
|
|
13
14
|
onNewExchange(exchange: MessageExchange): Promise<void>;
|
|
14
|
-
getId(): number;
|
|
15
15
|
private handleSigma1;
|
|
16
16
|
close(): Promise<void>;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,EAAE,aAAa,EAAuB,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAmBpE,qBAAa,UAAW,YAAW,eAAe;;
|
|
1
|
+
{"version":3,"file":"CaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/case/CaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,EAAE,aAAa,EAAuB,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAmBpE,qBAAa,UAAW,YAAW,eAAe;;IAC9C,QAAQ,CAAC,EAAE,KAA8B;gBAK7B,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa;IAKtD,aAAa,CAAC,QAAQ,EAAE,eAAe;YAoB/B,YAAY;IAyMpB,KAAK;CAGd"}
|
|
@@ -35,6 +35,7 @@ var import_CaseMessenger = require("./CaseMessenger.js");
|
|
|
35
35
|
*/
|
|
36
36
|
const logger = import_general.Logger.get("CaseServer");
|
|
37
37
|
class CaseServer {
|
|
38
|
+
id = import_types.SECURE_CHANNEL_PROTOCOL_ID;
|
|
38
39
|
#sessions;
|
|
39
40
|
#fabrics;
|
|
40
41
|
constructor(sessions, fabrics) {
|
|
@@ -56,9 +57,6 @@ class CaseServer {
|
|
|
56
57
|
await exchange.session.destroy();
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
|
-
getId() {
|
|
60
|
-
return import_types.SECURE_CHANNEL_PROTOCOL_ID;
|
|
61
|
-
}
|
|
62
60
|
async handleSigma1(messenger) {
|
|
63
61
|
logger.info(`Received pairing request from ${messenger.getChannelName()}`);
|
|
64
62
|
const responderRandom = import_general.Crypto.getRandom();
|
|
@@ -200,7 +198,7 @@ class CaseServer {
|
|
|
200
198
|
caseAuthenticatedTags
|
|
201
199
|
});
|
|
202
200
|
logger.info(
|
|
203
|
-
`
|
|
201
|
+
`Session ${secureSession.id} created with ${messenger.getChannelName()} for Fabric ${import_types.NodeId.toHexString(
|
|
204
202
|
fabric.nodeId
|
|
205
203
|
)}(index ${fabric.fabricIndex}) and PeerNode ${import_types.NodeId.toHexString(peerNodeId)}`,
|
|
206
204
|
"with CATs",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/case/CaseServer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAsE;AAEtE,mBAAuE;AACvE,gCAA0C;AAC1C,2BAAmD;AAGnD,oCAA2C;AAC3C,0BAYO;AACP,2BAAoC;AA3BpC;AAAA;AAAA;AAAA;AAAA;AA6BA,MAAM,SAAS,sBAAO,IAAI,YAAY;AAE/B,MAAM,WAAsC;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["resumptionRecord"]
|
|
6
6
|
}
|
|
@@ -11,16 +11,15 @@ import { PaseServerMessenger } from "./PaseMessenger.js";
|
|
|
11
11
|
export declare class MaximumPasePairingErrorsReachedError extends MatterFlowError {
|
|
12
12
|
}
|
|
13
13
|
export declare class PaseServer implements ProtocolHandler {
|
|
14
|
+
#private;
|
|
14
15
|
private sessions;
|
|
15
16
|
private readonly w0;
|
|
16
17
|
private readonly L;
|
|
17
18
|
private readonly pbkdfParameters?;
|
|
18
|
-
|
|
19
|
-
private pairingErrors;
|
|
19
|
+
readonly id = 0;
|
|
20
20
|
static fromPin(sessions: SessionManager, setupPinCode: number, pbkdfParameters: PbkdfParameters): Promise<PaseServer>;
|
|
21
21
|
static fromVerificationValue(sessions: SessionManager, verificationValue: Uint8Array, pbkdfParameters?: PbkdfParameters): PaseServer;
|
|
22
22
|
constructor(sessions: SessionManager, w0: bigint, L: Uint8Array, pbkdfParameters?: PbkdfParameters | undefined);
|
|
23
|
-
getId(): number;
|
|
24
23
|
onNewExchange(exchange: MessageExchange): Promise<void>;
|
|
25
24
|
private handlePairingRequest;
|
|
26
25
|
cancelPairing(messenger: PaseServerMessenger, sendError?: boolean): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAKH,eAAe,EACf,eAAe,EAKlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAuB,mBAAmB,EAAiB,MAAM,oBAAoB,CAAC;AAS7F,qBAAa,oCAAqC,SAAQ,eAAe;CAAG;AAE5E,qBAAa,UAAW,YAAW,eAAe
|
|
1
|
+
{"version":3,"file":"PaseServer.d.ts","sourceRoot":"","sources":["../../../../src/session/pase/PaseServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAKH,eAAe,EACf,eAAe,EAKlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAuB,mBAAmB,EAAiB,MAAM,oBAAoB,CAAC;AAS7F,qBAAa,oCAAqC,SAAQ,eAAe;CAAG;AAE5E,qBAAa,UAAW,YAAW,eAAe;;IAsB1C,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IAxBrC,QAAQ,CAAC,EAAE,KAA8B;WAK5B,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe;IAKrG,MAAM,CAAC,qBAAqB,CACxB,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,UAAU,EAC7B,eAAe,CAAC,EAAE,eAAe;gBAQzB,QAAQ,EAAE,cAAc,EACf,EAAE,EAAE,MAAM,EACV,CAAC,EAAE,UAAU,EACb,eAAe,CAAC,EAAE,eAAe,YAAA;IAGhD,aAAa,CAAC,QAAQ,EAAE,eAAe;YA0B/B,oBAAoB;IAmF5B,aAAa,CAAC,SAAS,EAAE,mBAAmB,EAAE,SAAS,UAAO;IAU9D,KAAK;CAGd"}
|
|
@@ -44,8 +44,9 @@ class PaseServer {
|
|
|
44
44
|
this.L = L;
|
|
45
45
|
this.pbkdfParameters = pbkdfParameters;
|
|
46
46
|
}
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
id = import_types.SECURE_CHANNEL_PROTOCOL_ID;
|
|
48
|
+
#pairingTimer;
|
|
49
|
+
#pairingErrors = 0;
|
|
49
50
|
static async fromPin(sessions, setupPinCode, pbkdfParameters) {
|
|
50
51
|
const { w0, L } = await import_general.Spake2p.computeW0L(pbkdfParameters, setupPinCode);
|
|
51
52
|
return new PaseServer(sessions, w0, L, pbkdfParameters);
|
|
@@ -55,22 +56,19 @@ class PaseServer {
|
|
|
55
56
|
const L = verificationValue.slice(32, 32 + 65);
|
|
56
57
|
return new PaseServer(sessions, w0, L, pbkdfParameters);
|
|
57
58
|
}
|
|
58
|
-
getId() {
|
|
59
|
-
return import_types.SECURE_CHANNEL_PROTOCOL_ID;
|
|
60
|
-
}
|
|
61
59
|
async onNewExchange(exchange) {
|
|
62
60
|
const messenger = new import_PaseMessenger.PaseServerMessenger(exchange);
|
|
63
61
|
try {
|
|
64
62
|
await this.handlePairingRequest(messenger);
|
|
65
63
|
} catch (error) {
|
|
66
|
-
this
|
|
64
|
+
this.#pairingErrors++;
|
|
67
65
|
logger.error(
|
|
68
|
-
`An error occurred during the PASE commissioning (${this
|
|
66
|
+
`An error occurred during the PASE commissioning (${this.#pairingErrors}/${PASE_COMMISSIONING_MAX_ERRORS}):`,
|
|
69
67
|
error
|
|
70
68
|
);
|
|
71
69
|
const sendError = !(error instanceof import_SecureChannelMessenger.ChannelStatusResponseError);
|
|
72
70
|
await this.cancelPairing(messenger, sendError);
|
|
73
|
-
if (this
|
|
71
|
+
if (this.#pairingErrors >= PASE_COMMISSIONING_MAX_ERRORS) {
|
|
74
72
|
throw new MaximumPasePairingErrorsReachedError(
|
|
75
73
|
`Pase server: Too many errors during PASE commissioning, aborting commissioning window`
|
|
76
74
|
);
|
|
@@ -85,13 +83,13 @@ class PaseServer {
|
|
|
85
83
|
"Pase server: Pairing already in progress (PASE session exists), ignoring new exchange."
|
|
86
84
|
);
|
|
87
85
|
}
|
|
88
|
-
if (this
|
|
86
|
+
if (this.#pairingTimer !== void 0 && this.#pairingTimer.isRunning) {
|
|
89
87
|
throw new import_general.MatterFlowError(
|
|
90
88
|
"Pase server: Pairing already in progress (PASE establishment Timer running), ignoring new exchange."
|
|
91
89
|
);
|
|
92
90
|
}
|
|
93
91
|
logger.info(`Received pairing request from ${messenger.getChannelName()}.`);
|
|
94
|
-
this
|
|
92
|
+
this.#pairingTimer = import_general.Time.getTimer(
|
|
95
93
|
"PASE pairing timeout",
|
|
96
94
|
PASE_PAIRING_TIMEOUT_MS,
|
|
97
95
|
() => this.cancelPairing(messenger)
|
|
@@ -142,12 +140,12 @@ class PaseServer {
|
|
|
142
140
|
logger.info(`Session ${responderSessionId} created with ${messenger.getChannelName()}.`);
|
|
143
141
|
await messenger.sendSuccess();
|
|
144
142
|
await messenger.close();
|
|
145
|
-
this
|
|
146
|
-
this
|
|
143
|
+
this.#pairingTimer?.stop();
|
|
144
|
+
this.#pairingTimer = void 0;
|
|
147
145
|
}
|
|
148
146
|
async cancelPairing(messenger, sendError = true) {
|
|
149
|
-
this
|
|
150
|
-
this
|
|
147
|
+
this.#pairingTimer?.stop();
|
|
148
|
+
this.#pairingTimer = void 0;
|
|
151
149
|
if (sendError) {
|
|
152
150
|
await messenger.sendError(import_types.ProtocolStatusCode.InvalidParam);
|
|
153
151
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/session/pase/PaseServer.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAWO;AAEP,mBAAuE;AAGvE,oCAA2C;AAC3C,2BAAwE;AAvBxE;AAAA;AAAA;AAAA;AAAA;AAyBA,MAAM,EAAE,gBAAgB,IAAI;AAE5B,MAAM,SAAS,sBAAO,IAAI,YAAY;AAEtC,MAAM,0BAA0B;AAChC,MAAM,gCAAgC;AAE/B,MAAM,6CAA6C,+BAAgB;AAAC;AAEpE,MAAM,WAAsC;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Interactable } from "#action/Interactable.js";
|
|
7
|
+
import { Invoke } from "#action/request/Invoke.js";
|
|
8
|
+
import { Read } from "#action/request/Read.js";
|
|
9
|
+
import { Subscribe } from "#action/request/Subscribe.js";
|
|
10
|
+
import { Write } from "#action/request/Write.js";
|
|
11
|
+
import { InvokeResult } from "#action/response/InvokeResult.js";
|
|
12
|
+
import { ReadResult } from "#action/response/ReadResult.js";
|
|
13
|
+
import { SubscribeResult } from "#action/response/SubscribeResult.js";
|
|
14
|
+
import { WriteResult } from "#action/response/WriteResult.js";
|
|
15
|
+
import { AccessControl } from "#action/server/AccessControl.js";
|
|
16
|
+
import { Environment, Environmental, PromiseQueue } from "#general";
|
|
17
|
+
import { SubscriptionClient } from "#interaction/SubscriptionClient.js";
|
|
18
|
+
import { ExchangeProvider } from "#protocol/ExchangeProvider.js";
|
|
19
|
+
export interface ClientInteractableContext {
|
|
20
|
+
exchanges: ExchangeProvider;
|
|
21
|
+
subscriptions: SubscriptionClient;
|
|
22
|
+
queue: PromiseQueue;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* This is a WIP and currently largely a stub.
|
|
26
|
+
*/
|
|
27
|
+
export declare class ClientInteraction<SessionT extends AccessControl.Session = AccessControl.Session> implements Interactable<SessionT> {
|
|
28
|
+
#private;
|
|
29
|
+
constructor(context: ClientInteractableContext);
|
|
30
|
+
get subscriptions(): SubscriptionClient;
|
|
31
|
+
get queue(): PromiseQueue | undefined;
|
|
32
|
+
static [Environmental.create](env: Environment): ClientInteraction<AccessControl.Session>;
|
|
33
|
+
read(_request: Read, _session?: SessionT): ReadResult;
|
|
34
|
+
write<T extends Write>(request: T, _session?: SessionT): WriteResult<T>;
|
|
35
|
+
invoke<T extends Invoke>(request: Invoke, _session?: SessionT): InvokeResult<T>;
|
|
36
|
+
subscribe(_request: Subscribe, _session?: SessionT): SubscribeResult;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=ClientInteraction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAqB,WAAW,EAAE,aAAa,EAAuB,YAAY,EAAE,MAAM,UAAU,CAAC;AAE5G,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,MAAM,WAAW,yBAAyB;IACtC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,kBAAkB,CAAC;IAClC,KAAK,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,iBAAiB,CAAC,QAAQ,SAAS,aAAa,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CACzF,YAAW,YAAY,CAAC,QAAQ,CAAC;;gBAMrB,OAAO,EAAE,yBAAyB;IAM9C,IAAI,aAAa,uBAEhB;IAED,IAAI,KAAK,6BAER;IAED,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAU9C,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,UAAU;IAKrD,KAAK,CAAC,CAAC,SAAS,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAgB5C,WAAW,CAAC,CAAC,CAAC;IAGxB,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC;IAkB/E,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,eAAe;CAIvE"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { CancelablePromise, Environmental, NotImplementedError } from "#general";
|
|
7
|
+
import { InteractionClientMessenger } from "#interaction/InteractionMessenger.js";
|
|
8
|
+
import { SubscriptionClient } from "#interaction/SubscriptionClient.js";
|
|
9
|
+
import { InteractionQueue } from "#peer/InteractionQueue.js";
|
|
10
|
+
import { ExchangeProvider } from "#protocol/ExchangeProvider.js";
|
|
11
|
+
class ClientInteraction {
|
|
12
|
+
#exchanges;
|
|
13
|
+
#subscriptions;
|
|
14
|
+
#queue;
|
|
15
|
+
constructor(context) {
|
|
16
|
+
this.#exchanges = context.exchanges;
|
|
17
|
+
this.#subscriptions = context.subscriptions;
|
|
18
|
+
this.#queue = context.queue;
|
|
19
|
+
}
|
|
20
|
+
get subscriptions() {
|
|
21
|
+
return this.#subscriptions;
|
|
22
|
+
}
|
|
23
|
+
get queue() {
|
|
24
|
+
return this.#queue;
|
|
25
|
+
}
|
|
26
|
+
static [Environmental.create](env) {
|
|
27
|
+
const instance = new ClientInteraction({
|
|
28
|
+
exchanges: env.get(ExchangeProvider),
|
|
29
|
+
subscriptions: env.get(SubscriptionClient),
|
|
30
|
+
queue: env.get(InteractionQueue)
|
|
31
|
+
});
|
|
32
|
+
env.set(ClientInteraction, instance);
|
|
33
|
+
return instance;
|
|
34
|
+
}
|
|
35
|
+
read(_request, _session) {
|
|
36
|
+
throw new NotImplementedError();
|
|
37
|
+
}
|
|
38
|
+
write(request, _session) {
|
|
39
|
+
return new CancelablePromise((resolve, reject) => {
|
|
40
|
+
InteractionClientMessenger.create(this.#exchanges).then((messenger) => {
|
|
41
|
+
const send = messenger.sendWriteCommand(request);
|
|
42
|
+
let sendResolve;
|
|
43
|
+
if (request.suppressResponse) {
|
|
44
|
+
sendResolve = send.then(() => {
|
|
45
|
+
resolve();
|
|
46
|
+
});
|
|
47
|
+
} else {
|
|
48
|
+
sendResolve = send.then(resolve);
|
|
49
|
+
}
|
|
50
|
+
sendResolve.catch(reject);
|
|
51
|
+
}, reject);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
invoke(request, _session) {
|
|
55
|
+
if (request.suppressResponse) {
|
|
56
|
+
return new CancelablePromise((resolve, reject) => {
|
|
57
|
+
InteractionClientMessenger.create(this.#exchanges).then(
|
|
58
|
+
(messenger) => messenger.sendInvokeCommand(request).then(() => resolve()).catch(reject)
|
|
59
|
+
).then(resolve, reject);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
throw new NotImplementedError();
|
|
63
|
+
}
|
|
64
|
+
subscribe(_request, _session) {
|
|
65
|
+
throw new NotImplementedError();
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export {
|
|
69
|
+
ClientInteraction
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=ClientInteraction.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/action/client/ClientInteraction.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAgBA,SAAS,mBAAgC,eAAe,2BAAyC;AACjG,SAAS,kCAAkC;AAC3C,SAAS,0BAA0B;AACnC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AAY1B,MAAM,kBAEb;AAAA,EACa;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,SAAoC;AAC5C,SAAK,aAAa,QAAQ;AAC1B,SAAK,iBAAiB,QAAQ;AAC9B,SAAK,SAAS,QAAQ;AAAA,EAC1B;AAAA,EAEA,IAAI,gBAAgB;AAChB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,QAAQ;AACR,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,QAAQ,cAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,kBAAkB;AAAA,MACnC,WAAW,IAAI,IAAI,gBAAgB;AAAA,MACnC,eAAe,IAAI,IAAI,kBAAkB;AAAA,MACzC,OAAO,IAAI,IAAI,gBAAgB;AAAA,IACnC,CAAC;AACD,QAAI,IAAI,mBAAmB,QAAQ;AACnC,WAAO;AAAA,EACX;AAAA,EAEA,KAAK,UAAgB,UAAiC;AAElD,UAAM,IAAI,oBAAoB;AAAA,EAClC;AAAA,EAEA,MAAuB,SAAY,UAAqB;AACpD,WAAO,IAAI,kBAAwC,CAAC,SAAS,WAAW;AACpE,iCAA2B,OAAO,KAAK,UAAU,EAAE,KAAK,eAAa;AACjE,cAAM,OAAO,UAAU,iBAAiB,OAAO;AAE/C,YAAI;AACJ,YAAI,QAAQ,kBAAkB;AAC1B,wBAAc,KAAK,KAAK,MAAM;AAC1B,oBAAQ;AAAA,UACZ,CAAC;AAAA,QACL,OAAO;AACH,wBAAc,KAAK,KAAK,OAAO;AAAA,QACnC;AAEA,oBAAY,MAAM,MAAM;AAAA,MAC5B,GAAG,MAAM;AAAA,IACb,CAAC;AAAA,EACL;AAAA,EAEA,OAAyB,SAAiB,UAAsC;AAC5E,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,kBAAwB,CAAC,SAAS,WAAW;AACpD,mCAA2B,OAAO,KAAK,UAAU,EAC5C;AAAA,UAAK,eACF,UACK,kBAAkB,OAAO,EACzB,KAAK,MAAM,QAAQ,CAAC,EACpB,MAAM,MAAM;AAAA,QACrB,EACC,KAAK,SAAS,MAAM;AAAA,MAC7B,CAAC;AAAA,IACL;AAGA,UAAM,IAAI,oBAAoB;AAAA,EAClC;AAAA,EAEA,UAAU,UAAqB,UAAsC;AAEjE,UAAM,IAAI,oBAAoB;AAAA,EAClC;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/action/client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,wBAAwB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/action/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/action/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC"}
|
package/dist/esm/action/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/action/index.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { DataReport } from "#types";
|
|
7
|
+
import { DecodedAttributeReportValue } from "./AttributeDataDecoder.js";
|
|
8
|
+
import { DecodedEventReportValue } from "./EventDataDecoder.js";
|
|
9
|
+
export interface DecodedDataReport extends DataReport {
|
|
10
|
+
isNormalized: true;
|
|
11
|
+
attributeReports: DecodedAttributeReportValue<any>[];
|
|
12
|
+
eventReports: DecodedEventReportValue<any>[];
|
|
13
|
+
}
|
|
14
|
+
export declare function DecodedDataReport(report: DataReport): DecodedDataReport;
|
|
15
|
+
//# sourceMappingURL=DecodedDataReport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DecodedDataReport.d.ts","sourceRoot":"","sources":["../../../src/interaction/DecodedDataReport.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,2BAA2B,EAAyC,MAAM,2BAA2B,CAAC;AAC/G,OAAO,EAAE,uBAAuB,EAAqC,MAAM,uBAAuB,CAAC;AAEnG,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACjD,YAAY,EAAE,IAAI,CAAC;IACnB,gBAAgB,EAAE,2BAA2B,CAAC,GAAG,CAAC,EAAE,CAAC;IACrD,YAAY,EAAE,uBAAuB,CAAC,GAAG,CAAC,EAAE,CAAC;CAChD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,iBAAiB,CAYvE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { normalizeAndDecodeReadAttributeReport } from "./AttributeDataDecoder.js";
|
|
7
|
+
import { normalizeAndDecodeReadEventReport } from "./EventDataDecoder.js";
|
|
8
|
+
function DecodedDataReport(report) {
|
|
9
|
+
if (report.isNormalized) {
|
|
10
|
+
return report;
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
...report,
|
|
14
|
+
isNormalized: true,
|
|
15
|
+
attributeReports: report.attributeReports === void 0 ? [] : normalizeAndDecodeReadAttributeReport(report.attributeReports),
|
|
16
|
+
eventReports: report.eventReports === void 0 ? [] : normalizeAndDecodeReadEventReport(report.eventReports)
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
DecodedDataReport
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=DecodedDataReport.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/interaction/DecodedDataReport.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAsC,6CAA6C;AACnF,SAAkC,yCAAyC;AAQpE,SAAS,kBAAkB,QAAuC;AACrE,MAAK,OAA6B,cAAc;AAC5C,WAAO;AAAA,EACX;AAEA,SAAO;AAAA,IACH,GAAG;AAAA,IACH,cAAc;AAAA,IACd,kBACI,OAAO,qBAAqB,SAAY,CAAC,IAAI,sCAAsC,OAAO,gBAAgB;AAAA,IAC9G,cAAc,OAAO,iBAAiB,SAAY,CAAC,IAAI,kCAAkC,OAAO,YAAY;AAAA,EAChH;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|