@matter/general 0.16.8-alpha.0-20260123-dff2cae52 → 0.16.8-alpha.0-20260127-65e1b40e2
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/net/ServerAddress.d.ts.map +1 -1
- package/dist/cjs/net/ServerAddress.js +2 -1
- package/dist/cjs/net/ServerAddress.js.map +1 -1
- package/dist/cjs/net/dns-sd/DnssdName.d.ts +56 -0
- package/dist/cjs/net/dns-sd/DnssdName.d.ts.map +1 -0
- package/dist/cjs/net/dns-sd/DnssdName.js +193 -0
- package/dist/cjs/net/dns-sd/DnssdName.js.map +6 -0
- package/dist/cjs/net/dns-sd/DnssdNames.d.ts +77 -0
- package/dist/cjs/net/dns-sd/DnssdNames.d.ts.map +1 -0
- package/dist/cjs/net/dns-sd/DnssdNames.js +238 -0
- package/dist/cjs/net/dns-sd/DnssdNames.js.map +6 -0
- package/dist/cjs/net/dns-sd/DnssdSolicitor.d.ts +80 -0
- package/dist/cjs/net/dns-sd/DnssdSolicitor.d.ts.map +1 -0
- package/dist/cjs/net/dns-sd/DnssdSolicitor.js +212 -0
- package/dist/cjs/net/dns-sd/DnssdSolicitor.js.map +6 -0
- package/dist/cjs/net/dns-sd/IpService.d.ts +73 -0
- package/dist/cjs/net/dns-sd/IpService.d.ts.map +1 -0
- package/dist/cjs/net/dns-sd/IpService.js +329 -0
- package/dist/cjs/net/dns-sd/IpService.js.map +6 -0
- package/dist/cjs/net/dns-sd/IpServiceResolution.d.ts +16 -0
- package/dist/cjs/net/dns-sd/IpServiceResolution.d.ts.map +1 -0
- package/dist/cjs/net/dns-sd/IpServiceResolution.js +162 -0
- package/dist/cjs/net/dns-sd/IpServiceResolution.js.map +6 -0
- package/dist/cjs/net/dns-sd/IpServiceStatus.d.ts +58 -0
- package/dist/cjs/net/dns-sd/IpServiceStatus.d.ts.map +1 -0
- package/dist/cjs/net/dns-sd/IpServiceStatus.js +191 -0
- package/dist/cjs/net/dns-sd/IpServiceStatus.js.map +6 -0
- package/dist/cjs/net/dns-sd/index.d.ts +6 -0
- package/dist/cjs/net/dns-sd/index.d.ts.map +1 -1
- package/dist/cjs/net/dns-sd/index.js +6 -0
- package/dist/cjs/net/dns-sd/index.js.map +1 -1
- package/dist/cjs/net/udp/UdpInterface.js +1 -1
- package/dist/cjs/net/udp/UdpInterface.js.map +1 -1
- package/dist/cjs/util/AsyncIterator.d.ts +21 -0
- package/dist/cjs/util/AsyncIterator.d.ts.map +1 -0
- package/dist/cjs/util/AsyncIterator.js +71 -0
- package/dist/cjs/util/AsyncIterator.js.map +6 -0
- package/dist/cjs/util/index.d.ts +1 -0
- package/dist/cjs/util/index.d.ts.map +1 -1
- package/dist/cjs/util/index.js +1 -0
- package/dist/cjs/util/index.js.map +1 -1
- package/dist/esm/net/ServerAddress.d.ts.map +1 -1
- package/dist/esm/net/ServerAddress.js +2 -1
- package/dist/esm/net/ServerAddress.js.map +1 -1
- package/dist/esm/net/dns-sd/DnssdName.d.ts +56 -0
- package/dist/esm/net/dns-sd/DnssdName.d.ts.map +1 -0
- package/dist/esm/net/dns-sd/DnssdName.js +173 -0
- package/dist/esm/net/dns-sd/DnssdName.js.map +6 -0
- package/dist/esm/net/dns-sd/DnssdNames.d.ts +77 -0
- package/dist/esm/net/dns-sd/DnssdNames.d.ts.map +1 -0
- package/dist/esm/net/dns-sd/DnssdNames.js +218 -0
- package/dist/esm/net/dns-sd/DnssdNames.js.map +6 -0
- package/dist/esm/net/dns-sd/DnssdSolicitor.d.ts +80 -0
- package/dist/esm/net/dns-sd/DnssdSolicitor.d.ts.map +1 -0
- package/dist/esm/net/dns-sd/DnssdSolicitor.js +192 -0
- package/dist/esm/net/dns-sd/DnssdSolicitor.js.map +6 -0
- package/dist/esm/net/dns-sd/IpService.d.ts +73 -0
- package/dist/esm/net/dns-sd/IpService.d.ts.map +1 -0
- package/dist/esm/net/dns-sd/IpService.js +309 -0
- package/dist/esm/net/dns-sd/IpService.js.map +6 -0
- package/dist/esm/net/dns-sd/IpServiceResolution.d.ts +16 -0
- package/dist/esm/net/dns-sd/IpServiceResolution.d.ts.map +1 -0
- package/dist/esm/net/dns-sd/IpServiceResolution.js +142 -0
- package/dist/esm/net/dns-sd/IpServiceResolution.js.map +6 -0
- package/dist/esm/net/dns-sd/IpServiceStatus.d.ts +58 -0
- package/dist/esm/net/dns-sd/IpServiceStatus.d.ts.map +1 -0
- package/dist/esm/net/dns-sd/IpServiceStatus.js +171 -0
- package/dist/esm/net/dns-sd/IpServiceStatus.js.map +6 -0
- package/dist/esm/net/dns-sd/index.d.ts +6 -0
- package/dist/esm/net/dns-sd/index.d.ts.map +1 -1
- package/dist/esm/net/dns-sd/index.js +6 -0
- package/dist/esm/net/dns-sd/index.js.map +1 -1
- package/dist/esm/net/udp/UdpInterface.js +1 -1
- package/dist/esm/net/udp/UdpInterface.js.map +1 -1
- package/dist/esm/util/AsyncIterator.d.ts +21 -0
- package/dist/esm/util/AsyncIterator.d.ts.map +1 -0
- package/dist/esm/util/AsyncIterator.js +51 -0
- package/dist/esm/util/AsyncIterator.js.map +6 -0
- package/dist/esm/util/index.d.ts +1 -0
- package/dist/esm/util/index.d.ts.map +1 -1
- package/dist/esm/util/index.js +1 -0
- package/dist/esm/util/index.js.map +1 -1
- package/package.json +2 -2
- package/src/net/ServerAddress.ts +2 -1
- package/src/net/dns-sd/DnssdName.ts +252 -0
- package/src/net/dns-sd/DnssdNames.ts +208 -0
- package/src/net/dns-sd/DnssdSolicitor.ts +231 -0
- package/src/net/dns-sd/IpService.ts +346 -0
- package/src/net/dns-sd/IpServiceResolution.ts +134 -0
- package/src/net/dns-sd/IpServiceStatus.ts +212 -0
- package/src/net/dns-sd/index.ts +6 -0
- package/src/net/udp/UdpInterface.ts +1 -1
- package/src/util/AsyncIterator.ts +70 -0
- package/src/util/index.ts +1 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var IpServiceStatus_exports = {};
|
|
20
|
+
__export(IpServiceStatus_exports, {
|
|
21
|
+
IpServiceStatus: () => IpServiceStatus
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(IpServiceStatus_exports);
|
|
24
|
+
var import_Diagnostic = require("#log/Diagnostic.js");
|
|
25
|
+
var import_Logger = require("#log/Logger.js");
|
|
26
|
+
var import_MatterError = require("#MatterError.js");
|
|
27
|
+
var import_ServerAddress = require("#net/ServerAddress.js");
|
|
28
|
+
var import_Time = require("#time/Time.js");
|
|
29
|
+
var import_Abort = require("#util/Abort.js");
|
|
30
|
+
var import_Error = require("#util/Error.js");
|
|
31
|
+
var import_Set = require("#util/Set.js");
|
|
32
|
+
var import_IpServiceResolution = require("./IpServiceResolution.js");
|
|
33
|
+
/**
|
|
34
|
+
* @license
|
|
35
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
36
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
37
|
+
*/
|
|
38
|
+
const logger = import_Logger.Logger.get("IpServiceStatus");
|
|
39
|
+
class IpServiceStatus {
|
|
40
|
+
#service;
|
|
41
|
+
#isReachable = false;
|
|
42
|
+
#connecting = new import_Set.BasicSet();
|
|
43
|
+
#resolveAbort;
|
|
44
|
+
#resolving;
|
|
45
|
+
#connectionInitiatedAt;
|
|
46
|
+
#lastReceiptAt;
|
|
47
|
+
constructor(service) {
|
|
48
|
+
this.#service = service;
|
|
49
|
+
}
|
|
50
|
+
async close() {
|
|
51
|
+
this.#stopResolving();
|
|
52
|
+
if (this.#resolving) {
|
|
53
|
+
await this.#resolving;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Is the service actively connecting?
|
|
58
|
+
*
|
|
59
|
+
* This is true so long as a promise passed to {@link connecting} is unresolved.
|
|
60
|
+
*/
|
|
61
|
+
get isConnecting() {
|
|
62
|
+
return this.#connecting.size > 0;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Is the service currently reachable?
|
|
66
|
+
*
|
|
67
|
+
* This value is writable. If you set {@link isReachable} to false and {@link isConnecting} is true, the service
|
|
68
|
+
* enters discovery mode and begins active solicitation so long as neither condition changes.
|
|
69
|
+
*
|
|
70
|
+
* The service sets {@link isReachable} to true automatically if:
|
|
71
|
+
*
|
|
72
|
+
* - It discovers a new (previously unknown) address, or
|
|
73
|
+
*
|
|
74
|
+
* - The input promise to {@link connecting} resolves to true
|
|
75
|
+
*
|
|
76
|
+
* The service sets {@link isReachable} to false automatically if the input promise to {@link connecting} resolves
|
|
77
|
+
* to false.
|
|
78
|
+
*/
|
|
79
|
+
get isReachable() {
|
|
80
|
+
return this.#isReachable;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Are we actively performing MDNS discovery for the service?
|
|
84
|
+
*/
|
|
85
|
+
get isResolving() {
|
|
86
|
+
return this.#resolving !== void 0;
|
|
87
|
+
}
|
|
88
|
+
set isReachable(isReachable) {
|
|
89
|
+
if (this.#isReachable === isReachable) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
this.#isReachable = isReachable;
|
|
93
|
+
if (isReachable) {
|
|
94
|
+
this.#maybeStopResolving();
|
|
95
|
+
} else {
|
|
96
|
+
this.#maybeStartResolving();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
get lastReceiptAt() {
|
|
100
|
+
return this.#lastReceiptAt;
|
|
101
|
+
}
|
|
102
|
+
set lastReceiptAt(time) {
|
|
103
|
+
this.#lastReceiptAt = time;
|
|
104
|
+
}
|
|
105
|
+
get connectionInitiatedAt() {
|
|
106
|
+
return this.#connectionInitiatedAt;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Register a new connection attempt.
|
|
110
|
+
*
|
|
111
|
+
* If {@link result} resolves as true the service is marked as reachable. If {@link result} resolves as false
|
|
112
|
+
* reachability is not modified.
|
|
113
|
+
*
|
|
114
|
+
* If {@link result} throws an error other than {@link AbortedError}, the service is marked as unreachable and if
|
|
115
|
+
* the error logged.
|
|
116
|
+
*
|
|
117
|
+
* {@link isConnecting} will be true until {@link result} resolves.
|
|
118
|
+
*/
|
|
119
|
+
connecting(result) {
|
|
120
|
+
logger.debug(this.#service.via, "Connecting");
|
|
121
|
+
result.then(
|
|
122
|
+
(returned) => {
|
|
123
|
+
this.#connecting.delete(result);
|
|
124
|
+
if (!this.#connecting.size) {
|
|
125
|
+
this.#connectionInitiatedAt = void 0;
|
|
126
|
+
}
|
|
127
|
+
if (returned) {
|
|
128
|
+
this.isReachable = true;
|
|
129
|
+
logger.info(this.#service.via, "Connected");
|
|
130
|
+
} else {
|
|
131
|
+
logger.debug(this.#service.via, "Connect attempt aborted");
|
|
132
|
+
}
|
|
133
|
+
this.#maybeStopResolving();
|
|
134
|
+
},
|
|
135
|
+
(error) => {
|
|
136
|
+
this.#connecting.delete(result);
|
|
137
|
+
if (!(error instanceof import_MatterError.AbortedError)) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
logger.error(this.#service.via, "Connection error:", (0, import_Error.asError)(error));
|
|
141
|
+
this.#isReachable = false;
|
|
142
|
+
this.#maybeStartResolving();
|
|
143
|
+
}
|
|
144
|
+
);
|
|
145
|
+
this.#connectionInitiatedAt = import_Time.Time.nowMs;
|
|
146
|
+
this.#connecting.add(result);
|
|
147
|
+
this.#maybeStartResolving();
|
|
148
|
+
}
|
|
149
|
+
#maybeStartResolving() {
|
|
150
|
+
if (this.#isReachable || !this.isConnecting || this.#resolveAbort) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
const numAddresses = this.#service.addresses.size;
|
|
154
|
+
let why;
|
|
155
|
+
switch (numAddresses) {
|
|
156
|
+
case 0:
|
|
157
|
+
why = "need address";
|
|
158
|
+
break;
|
|
159
|
+
case 1:
|
|
160
|
+
why = "address is unreachable";
|
|
161
|
+
break;
|
|
162
|
+
default:
|
|
163
|
+
why = `${numAddresses} known addresses are unreachable`;
|
|
164
|
+
}
|
|
165
|
+
logger.info(this.#service.via, "Resolving", import_Diagnostic.Diagnostic.weak(`(${why})`));
|
|
166
|
+
this.#resolveAbort = new import_Abort.Abort();
|
|
167
|
+
this.#resolving = (0, import_IpServiceResolution.IpServiceResolution)(this.#service, this.#resolveAbort).finally(() => {
|
|
168
|
+
if (this.#resolveAbort?.aborted === false) {
|
|
169
|
+
const addresses = [...this.#service.addresses].map(import_ServerAddress.ServerAddress.urlFor);
|
|
170
|
+
logger.debug(this.#service.via, `Resolved as ${addresses.join(", ")}`);
|
|
171
|
+
}
|
|
172
|
+
this.#resolveAbort?.close();
|
|
173
|
+
this.#resolveAbort = void 0;
|
|
174
|
+
this.#resolving = void 0;
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
#maybeStopResolving() {
|
|
178
|
+
if (!this.#isReachable || this.isConnecting || !this.#resolveAbort) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
this.#stopResolving();
|
|
182
|
+
}
|
|
183
|
+
#stopResolving() {
|
|
184
|
+
if (!this.#resolveAbort) {
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
this.#resolveAbort();
|
|
188
|
+
logger.debug(this.#service.via, "Stopped resolving");
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
//# sourceMappingURL=IpServiceStatus.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/net/dns-sd/IpServiceStatus.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,wBAA2B;AAC3B,oBAAuB;AACvB,yBAA6B;AAC7B,2BAA8B;AAC9B,kBAAqB;AAErB,mBAAsB;AACtB,mBAAwB;AACxB,iBAAyB;AAEzB,iCAAoC;AAhBpC;AAAA;AAAA;AAAA;AAAA;AAkBA,MAAM,SAAS,qBAAO,IAAI,iBAAiB;AAKpC,MAAM,gBAAgB;AAAA,EACzB;AAAA,EACA,eAAe;AAAA,EACf,cAAc,IAAI,oBAA+B;AAAA,EACjD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA,YAAY,SAAoB;AAC5B,SAAK,WAAW;AAAA,EACpB;AAAA,EAEA,MAAM,QAAQ;AACV,SAAK,eAAe;AACpB,QAAI,KAAK,YAAY;AACjB,YAAM,KAAK;AAAA,IACf;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,IAAI,eAAe;AACf,WAAO,KAAK,YAAY,OAAO;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBA,IAAI,cAAc;AACd,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,cAAc;AACd,WAAO,KAAK,eAAe;AAAA,EAC/B;AAAA,EAEA,IAAI,YAAY,aAAsB;AAClC,QAAI,KAAK,iBAAiB,aAAa;AACnC;AAAA,IACJ;AAEA,SAAK,eAAe;AAEpB,QAAI,aAAa;AACb,WAAK,oBAAoB;AAAA,IAC7B,OAAO;AACH,WAAK,qBAAqB;AAAA,IAC9B;AAAA,EACJ;AAAA,EAEA,IAAI,gBAAuC;AACvC,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,cAAc,MAAiB;AAC/B,SAAK,iBAAiB;AAAA,EAC1B;AAAA,EAEA,IAAI,wBAAwB;AACxB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,WAAW,QAA8B;AACrC,WAAO,MAAM,KAAK,SAAS,KAAK,YAAY;AAE5C,WAAO;AAAA,MACH,cAAY;AACR,aAAK,YAAY,OAAO,MAAM;AAE9B,YAAI,CAAC,KAAK,YAAY,MAAM;AACxB,eAAK,yBAAyB;AAAA,QAClC;AAEA,YAAI,UAAU;AACV,eAAK,cAAc;AAEnB,iBAAO,KAAK,KAAK,SAAS,KAAK,WAAW;AAAA,QAC9C,OAAO;AACH,iBAAO,MAAM,KAAK,SAAS,KAAK,yBAAyB;AAAA,QAC7D;AAEA,aAAK,oBAAoB;AAAA,MAC7B;AAAA,MAEA,WAAS;AACL,aAAK,YAAY,OAAO,MAAM;AAE9B,YAAI,EAAE,iBAAiB,kCAAe;AAClC;AAAA,QACJ;AAEA,eAAO,MAAM,KAAK,SAAS,KAAK,yBAAqB,sBAAQ,KAAK,CAAC;AAEnE,aAAK,eAAe;AAEpB,aAAK,qBAAqB;AAAA,MAC9B;AAAA,IACJ;AAEA,SAAK,yBAAyB,iBAAK;AACnC,SAAK,YAAY,IAAI,MAAM;AAE3B,SAAK,qBAAqB;AAAA,EAC9B;AAAA,EAEA,uBAAuB;AACnB,QAAI,KAAK,gBAAgB,CAAC,KAAK,gBAAgB,KAAK,eAAe;AAC/D;AAAA,IACJ;AAEA,UAAM,eAAe,KAAK,SAAS,UAAU;AAE7C,QAAI;AAEJ,YAAQ,cAAc;AAAA,MAClB,KAAK;AACD,cAAM;AACN;AAAA,MAEJ,KAAK;AACD,cAAM;AACN;AAAA,MAEJ;AACI,cAAM,GAAG,YAAY;AAAA,IAC7B;AAEA,WAAO,KAAK,KAAK,SAAS,KAAK,aAAa,6BAAW,KAAK,IAAI,GAAG,GAAG,CAAC;AAEvE,SAAK,gBAAgB,IAAI,mBAAM;AAC/B,SAAK,iBAAa,gDAAoB,KAAK,UAAU,KAAK,aAAa,EAAE,QAAQ,MAAM;AACnF,UAAI,KAAK,eAAe,YAAY,OAAO;AACvC,cAAM,YAAY,CAAC,GAAG,KAAK,SAAS,SAAS,EAAE,IAAI,mCAAc,MAAM;AACvE,eAAO,MAAM,KAAK,SAAS,KAAK,eAAe,UAAU,KAAK,IAAI,CAAC,EAAE;AAAA,MACzE;AACA,WAAK,eAAe,MAAM;AAC1B,WAAK,gBAAgB;AACrB,WAAK,aAAa;AAAA,IACtB,CAAC;AAAA,EACL;AAAA,EAEA,sBAAsB;AAClB,QAAI,CAAC,KAAK,gBAAgB,KAAK,gBAAgB,CAAC,KAAK,eAAe;AAChE;AAAA,IACJ;AAEA,SAAK,eAAe;AAAA,EACxB;AAAA,EAEA,iBAAiB;AACb,QAAI,CAAC,KAAK,eAAe;AACrB;AAAA,IACJ;AAEA,SAAK,cAAc;AAEnB,WAAO,MAAM,KAAK,SAAS,KAAK,mBAAmB;AAAA,EACvD;AACJ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -3,5 +3,11 @@
|
|
|
3
3
|
* Copyright 2022-2026 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
export * from "./DnssdName.js";
|
|
7
|
+
export * from "./DnssdNames.js";
|
|
8
|
+
export * from "./DnssdSolicitor.js";
|
|
9
|
+
export * from "./IpService.js";
|
|
10
|
+
export * from "./IpServiceResolution.js";
|
|
11
|
+
export * from "./IpServiceStatus.js";
|
|
6
12
|
export * from "./MdnsSocket.js";
|
|
7
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/net/dns-sd/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/net/dns-sd/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
|
|
@@ -15,6 +15,12 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
|
|
|
15
15
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
16
16
|
var dns_sd_exports = {};
|
|
17
17
|
module.exports = __toCommonJS(dns_sd_exports);
|
|
18
|
+
__reExport(dns_sd_exports, require("./DnssdName.js"), module.exports);
|
|
19
|
+
__reExport(dns_sd_exports, require("./DnssdNames.js"), module.exports);
|
|
20
|
+
__reExport(dns_sd_exports, require("./DnssdSolicitor.js"), module.exports);
|
|
21
|
+
__reExport(dns_sd_exports, require("./IpService.js"), module.exports);
|
|
22
|
+
__reExport(dns_sd_exports, require("./IpServiceResolution.js"), module.exports);
|
|
23
|
+
__reExport(dns_sd_exports, require("./IpServiceStatus.js"), module.exports);
|
|
18
24
|
__reExport(dns_sd_exports, require("./MdnsSocket.js"), module.exports);
|
|
19
25
|
/**
|
|
20
26
|
* @license
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/net/dns-sd/index.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,2BAAc,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,2BAAc,2BANd;AAOA,2BAAc,4BAPd;AAQA,2BAAc,gCARd;AASA,2BAAc,2BATd;AAUA,2BAAc,qCAVd;AAWA,2BAAc,iCAXd;AAYA,2BAAc,4BAZd;AAAA;AAAA;AAAA;AAAA;AAAA;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -89,7 +89,7 @@ class UdpConnection {
|
|
|
89
89
|
return this.#server.send(this.#peerAddress, this.#peerPort, data);
|
|
90
90
|
}
|
|
91
91
|
get name() {
|
|
92
|
-
return `${this.type}
|
|
92
|
+
return `${this.type}://${this.#peerAddress.includes(":") ? `[${this.#peerAddress}]` : this.#peerAddress}:${this.#peerPort}`;
|
|
93
93
|
}
|
|
94
94
|
get networkAddress() {
|
|
95
95
|
return { type: "udp", ip: this.#peerAddress, port: this.#peerPort };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/net/udp/UdpInterface.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAuD;AAEvD,qBAAsC;AARtC;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,aAAgD;AAAA,EAChD;AAAA,EAET,aAAa,OAAO,SAAkB,MAAuB,MAAe,MAAe,cAAuB;AAC9G,WAAO,IAAI;AAAA,MACP,MAAM,QAAQ,iBAAiB,EAAE,eAAe,MAAM,MAAM,cAAc,kBAAkB,KAAK,CAAC;AAAA,IACtG;AAAA,EACJ;AAAA,EAEA,YAAY,QAAoB;AAC5B,SAAK,UAAU;AAAA,EACnB;AAAA,EAEA,IAAc,SAAS;AACnB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,SAAS,MAAmB,SAAiB;AACzC,WAAO,KAAK,QAAQ,SAAS,MAAM,OAAO;AAAA,EAC9C;AAAA,EAEA,MAAM,YAAY,SAAwB;AACtC,QAAI,QAAQ,SAAS,OAAO;AACxB,YAAM,IAAI,4BAAa,4BAA4B,QAAQ,IAAI,EAAE;AAAA,IACrE;AACA,UAAM,EAAE,IAAI,KAAK,IAAI;AACrB,WAAO,QAAQ,QAAQ,IAAI,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC;AAAA,EACpE;AAAA,EAEA,OAAO,UAAoG;AACvG,WAAO,KAAK,QAAQ;AAAA,MAAO,CAAC,eAAe,UAAU,UAAU,SAC3D,SAAS,IAAI,cAAc,KAAK,SAAS,UAAU,QAAQ,GAAG,IAAI;AAAA,IACtE;AAAA,EACJ;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,QAAQ;AACJ,WAAO,KAAK,QAAQ,MAAM;AAAA,EAC9B;AAAA,EAEA,cAAc,SAAiB;AAC3B,WAAO,KAAK,QAAQ,cAAc,OAAO;AAAA,EAC7C;AAAA,EAEA,eAAe,SAAiB;AAC5B,WAAO,KAAK,QAAQ,eAAe,OAAO;AAAA,EAC9C;AACJ;AAEO,MAAM,cAAiD;AAAA,EACjD,aAAa;AAAA,EACb,wBAAwB;AAAA,EACxB,OAAO,2BAAY;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAoB,aAAqB,UAAkB;AACnE,SAAK,UAAU;AACf,SAAK,eAAe;AACpB,SAAK,YAAY;AAAA,EACrB;AAAA,EAEA,IAAI,iBAAiB;AACjB,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,KAAK,MAAa;AACd,WAAO,KAAK,QAAQ,KAAK,KAAK,cAAc,KAAK,WAAW,IAAI;AAAA,EACpE;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,GAAG,KAAK,IAAI,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAuD;AAEvD,qBAAsC;AARtC;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,aAAgD;AAAA,EAChD;AAAA,EAET,aAAa,OAAO,SAAkB,MAAuB,MAAe,MAAe,cAAuB;AAC9G,WAAO,IAAI;AAAA,MACP,MAAM,QAAQ,iBAAiB,EAAE,eAAe,MAAM,MAAM,cAAc,kBAAkB,KAAK,CAAC;AAAA,IACtG;AAAA,EACJ;AAAA,EAEA,YAAY,QAAoB;AAC5B,SAAK,UAAU;AAAA,EACnB;AAAA,EAEA,IAAc,SAAS;AACnB,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,SAAS,MAAmB,SAAiB;AACzC,WAAO,KAAK,QAAQ,SAAS,MAAM,OAAO;AAAA,EAC9C;AAAA,EAEA,MAAM,YAAY,SAAwB;AACtC,QAAI,QAAQ,SAAS,OAAO;AACxB,YAAM,IAAI,4BAAa,4BAA4B,QAAQ,IAAI,EAAE;AAAA,IACrE;AACA,UAAM,EAAE,IAAI,KAAK,IAAI;AACrB,WAAO,QAAQ,QAAQ,IAAI,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC;AAAA,EACpE;AAAA,EAEA,OAAO,UAAoG;AACvG,WAAO,KAAK,QAAQ;AAAA,MAAO,CAAC,eAAe,UAAU,UAAU,SAC3D,SAAS,IAAI,cAAc,KAAK,SAAS,UAAU,QAAQ,GAAG,IAAI;AAAA,IACtE;AAAA,EACJ;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,QAAQ;AACJ,WAAO,KAAK,QAAQ,MAAM;AAAA,EAC9B;AAAA,EAEA,cAAc,SAAiB;AAC3B,WAAO,KAAK,QAAQ,cAAc,OAAO;AAAA,EAC7C;AAAA,EAEA,eAAe,SAAiB;AAC5B,WAAO,KAAK,QAAQ,eAAe,OAAO;AAAA,EAC9C;AACJ;AAEO,MAAM,cAAiD;AAAA,EACjD,aAAa;AAAA,EACb,wBAAwB;AAAA,EACxB,OAAO,2BAAY;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAoB,aAAqB,UAAkB;AACnE,SAAK,UAAU;AACf,SAAK,eAAe;AACpB,SAAK,YAAY;AAAA,EACrB;AAAA,EAEA,IAAI,iBAAiB;AACjB,WAAO,KAAK,QAAQ;AAAA,EACxB;AAAA,EAEA,KAAK,MAAa;AACd,WAAO,KAAK,QAAQ,KAAK,KAAK,cAAc,KAAK,WAAW,IAAI;AAAA,EACpE;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,GAAG,KAAK,IAAI,MAAM,KAAK,aAAa,SAAS,GAAG,IAAI,IAAI,KAAK,YAAY,MAAM,KAAK,YAAY,IAAI,KAAK,SAAS;AAAA,EAC7H;AAAA,EAEA,IAAI,iBAAmC;AACnC,WAAO,EAAE,MAAM,OAAO,IAAI,KAAK,cAAc,MAAM,KAAK,UAAU;AAAA,EACtE;AAAA,EAEA,MAAM,QAAQ;AAAA,EAEd;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Utilities for working with async iterators.
|
|
8
|
+
*/
|
|
9
|
+
export declare namespace AsyncIterator {
|
|
10
|
+
/**
|
|
11
|
+
* Merge multiple async iterators, yielding results as they become available from any iterator.
|
|
12
|
+
*
|
|
13
|
+
* Results are yielded in the order they resolve, not the order of iterators.
|
|
14
|
+
* Errors from individual iterators are collected and thrown as an aggregate error after all iterators complete.
|
|
15
|
+
*
|
|
16
|
+
* @param iterators The async iterables to merge
|
|
17
|
+
* @param errorMessage Optional message for the aggregate error if any iterators fail
|
|
18
|
+
*/
|
|
19
|
+
function merge<T>(iterators: AsyncIterable<T>[], errorMessage?: string): AsyncGenerator<T>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=AsyncIterator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncIterator.d.ts","sourceRoot":"","sources":["../../../src/util/AsyncIterator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,yBAAiB,aAAa,CAAC;IAC3B;;;;;;;;OAQG;IACH,SAAuB,KAAK,CAAC,CAAC,EAC1B,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,EAC7B,YAAY,SAAuC,GACpD,cAAc,CAAC,CAAC,CAAC,CA8CnB;CACJ"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var AsyncIterator_exports = {};
|
|
20
|
+
__export(AsyncIterator_exports, {
|
|
21
|
+
AsyncIterator: () => AsyncIterator
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(AsyncIterator_exports);
|
|
24
|
+
/**
|
|
25
|
+
* @license
|
|
26
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
27
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
28
|
+
*/
|
|
29
|
+
var AsyncIterator;
|
|
30
|
+
((AsyncIterator2) => {
|
|
31
|
+
async function* merge(iterators, errorMessage = "One or more async iterators failed") {
|
|
32
|
+
const asyncIterators = iterators.map((iter) => iter[Symbol.asyncIterator]());
|
|
33
|
+
const pending = /* @__PURE__ */ new Map();
|
|
34
|
+
const errors = [];
|
|
35
|
+
for (let i = 0; i < asyncIterators.length; i++) {
|
|
36
|
+
pending.set(
|
|
37
|
+
i,
|
|
38
|
+
asyncIterators[i].next().then(
|
|
39
|
+
(result) => ({ index: i, result }),
|
|
40
|
+
(error) => {
|
|
41
|
+
errors.push(error);
|
|
42
|
+
return { index: i, result: { done: true, value: void 0 } };
|
|
43
|
+
}
|
|
44
|
+
)
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
while (pending.size > 0) {
|
|
48
|
+
const { index, result } = await Promise.race(pending.values());
|
|
49
|
+
if (result.done) {
|
|
50
|
+
pending.delete(index);
|
|
51
|
+
} else {
|
|
52
|
+
yield result.value;
|
|
53
|
+
pending.set(
|
|
54
|
+
index,
|
|
55
|
+
asyncIterators[index].next().then(
|
|
56
|
+
(result2) => ({ index, result: result2 }),
|
|
57
|
+
(error) => {
|
|
58
|
+
errors.push(error);
|
|
59
|
+
return { index, result: { done: true, value: void 0 } };
|
|
60
|
+
}
|
|
61
|
+
)
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (errors.length > 0) {
|
|
66
|
+
throw new AggregateError(errors, errorMessage);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
AsyncIterator2.merge = merge;
|
|
70
|
+
})(AsyncIterator || (AsyncIterator = {}));
|
|
71
|
+
//# sourceMappingURL=AsyncIterator.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util/AsyncIterator.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASO,IAAU;AAAA,CAAV,CAAUA,mBAAV;AAUH,kBAAuB,MACnB,WACA,eAAe,sCACE;AACjB,UAAM,iBAAiB,UAAU,IAAI,UAAQ,KAAK,OAAO,aAAa,EAAE,CAAC;AACzE,UAAM,UAAU,oBAAI,IAAmE;AACvF,UAAM,SAAkB,CAAC;AAGzB,aAAS,IAAI,GAAG,IAAI,eAAe,QAAQ,KAAK;AAC5C,cAAQ;AAAA,QACJ;AAAA,QACA,eAAe,CAAC,EAAE,KAAK,EAAE;AAAA,UACrB,aAAW,EAAE,OAAO,GAAG,OAAO;AAAA,UAC9B,WAAS;AAEL,mBAAO,KAAK,KAAK;AACjB,mBAAO,EAAE,OAAO,GAAG,QAAQ,EAAE,MAAM,MAAM,OAAO,OAAU,EAAuB;AAAA,UACrF;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO,QAAQ,OAAO,GAAG;AAErB,YAAM,EAAE,OAAO,OAAO,IAAI,MAAM,QAAQ,KAAK,QAAQ,OAAO,CAAC;AAE7D,UAAI,OAAO,MAAM;AACb,gBAAQ,OAAO,KAAK;AAAA,MACxB,OAAO;AACH,cAAM,OAAO;AAEb,gBAAQ;AAAA,UACJ;AAAA,UACA,eAAe,KAAK,EAAE,KAAK,EAAE;AAAA,YACzB,CAAAC,aAAW,EAAE,OAAO,QAAAA,QAAO;AAAA,YAC3B,WAAS;AACL,qBAAO,KAAK,KAAK;AACjB,qBAAO,EAAE,OAAO,QAAQ,EAAE,MAAM,MAAM,OAAO,OAAU,EAAuB;AAAA,YAClF;AAAA,UACJ;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAGA,QAAI,OAAO,SAAS,GAAG;AACnB,YAAM,IAAI,eAAe,QAAQ,YAAY;AAAA,IACjD;AAAA,EACJ;AAjDA,EAAAD,eAAuB;AAAA,GAVV;",
|
|
5
|
+
"names": ["AsyncIterator", "result"]
|
|
6
|
+
}
|
package/dist/cjs/util/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
|
package/dist/cjs/util/index.js
CHANGED
|
@@ -17,6 +17,7 @@ var util_exports = {};
|
|
|
17
17
|
module.exports = __toCommonJS(util_exports);
|
|
18
18
|
__reExport(util_exports, require("./Abort.js"), module.exports);
|
|
19
19
|
__reExport(util_exports, require("./Array.js"), module.exports);
|
|
20
|
+
__reExport(util_exports, require("./AsyncIterator.js"), module.exports);
|
|
20
21
|
__reExport(util_exports, require("./Boot.js"), module.exports);
|
|
21
22
|
__reExport(util_exports, require("./Bytes.js"), module.exports);
|
|
22
23
|
__reExport(util_exports, require("./Cache.js"), module.exports);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/index.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,yBAAc,uBANd;AAOA,yBAAc,uBAPd;AAQA,yBAAc
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,yBAAc,uBANd;AAOA,yBAAc,uBAPd;AAQA,yBAAc,+BARd;AASA,yBAAc,sBATd;AAUA,yBAAc,uBAVd;AAWA,yBAAc,uBAXd;AAYA,yBAAc,4BAZd;AAaA,yBAAc,8BAbd;AAcA,yBAAc,4BAdd;AAeA,yBAAc,+BAfd;AAgBA,yBAAc,4BAhBd;AAiBA,yBAAc,2BAjBd;AAkBA,yBAAc,0BAlBd;AAmBA,yBAAc,2BAnBd;AAoBA,yBAAc,yBApBd;AAqBA,yBAAc,uBArBd;AAsBA,yBAAc,+BAtBd;AAuBA,yBAAc,0BAvBd;AAwBA,yBAAc,gCAxBd;AAyBA,yBAAc,wBAzBd;AA0BA,yBAAc,sBA1Bd;AA2BA,yBAAc,iCA3Bd;AA4BA,yBAAc,oBA5Bd;AA6BA,yBAAc,2BA7Bd;AA8BA,yBAAc,0BA9Bd;AA+BA,yBAAc,qBA/Bd;AAgCA,yBAAc,2BAhCd;AAiCA,yBAAc,2BAjCd;AAkCA,yBAAc,uBAlCd;AAmCA,yBAAc,8BAnCd;AAoCA,yBAAc,wBApCd;AAqCA,yBAAc,4BArCd;AAsCA,yBAAc,0BAtCd;AAuCA,yBAAc,2BAvCd;AAwCA,yBAAc,2BAxCd;AAyCA,yBAAc,2BAzCd;AA0CA,yBAAc,qBA1Cd;AA2CA,yBAAc,2BA3Cd;AA4CA,yBAAc,yBA5Cd;AA6CA,yBAAc,wBA7Cd;AA8CA,yBAAc,sBA9Cd;AAAA;AAAA;AAAA;AAAA;AAAA;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerAddress.d.ts","sourceRoot":"","sources":["../../../src/net/ServerAddress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC5B;;OAEG;IACH,YAAY,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,GAAG,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,aAAc,SAAQ,OAAO,CAAC,eAAe,CAAC;IAC3D;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;CAC7B,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAEnF,wBAAgB,aAAa,CAAC,UAAU,EAAE,aAAa,GAS9C,aAAa,CACrB;AAED,yBAAiB,aAAa,CAAC;IAC3B,SAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"ServerAddress.d.ts","sourceRoot":"","sources":["../../../src/net/ServerAddress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC5B;;OAEG;IACH,YAAY,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,GAAG,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,aAAc,SAAQ,OAAO,CAAC,eAAe,CAAC;IAC3D;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;CAC7B,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAEnF,wBAAgB,aAAa,CAAC,UAAU,EAAE,aAAa,GAS9C,aAAa,CACrB;AAED,yBAAiB,aAAa,CAAC;IAC3B,SAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAarD;IAED,SAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,cAuBnD;IAED,SAAgB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,OAAO,CAcnE;IAED;;;;;OAKG;IACH,SAAgB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAY7D;IAED;;;;OAIG;IACH,KAAY,mBAAmB;QAC3B,QAAQ,IAAA;QACR,eAAe,IAAA;QACf,IAAI,IAAA;QACJ,IAAI,IAAA;QACJ,MAAM,IAAI;KACb;IAED,SAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,uBAkB3D;CACJ"}
|
|
@@ -21,7 +21,8 @@ function ServerAddress(definition) {
|
|
|
21
21
|
switch (address.type) {
|
|
22
22
|
case "udp":
|
|
23
23
|
case "tcp":
|
|
24
|
-
|
|
24
|
+
const ip = address.ip;
|
|
25
|
+
return `${address.type}://${ip.includes(":") ? `[${ip}]` : ip}:${address.port}`;
|
|
25
26
|
case "ble":
|
|
26
27
|
return `ble://${address.peripheralAddress}`;
|
|
27
28
|
default:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/net/ServerAddress.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AAwDlB,SAAS,cAAc,YAA2B;AACrD,SAAO;AAAA,IACH,KAAK;AAAA,IACL,cAAc;AAAA,IACd,WAAW;AAAA,IACX,aAAa;AAAA,IACb,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,GAAG;AAAA,EACP;AACJ;AAAA,CAEO,CAAUA,mBAAV;AACI,WAAS,OAAO,SAAgC;AACnD,YAAQ,QAAQ,MAAM;AAAA,MAClB,KAAK;AAAA,MACL,KAAK;AACD,eAAO,GAAG,QAAQ,IAAI,MAAM,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AAwDlB,SAAS,cAAc,YAA2B;AACrD,SAAO;AAAA,IACH,KAAK;AAAA,IACL,cAAc;AAAA,IACd,WAAW;AAAA,IACX,aAAa;AAAA,IACb,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,GAAG;AAAA,EACP;AACJ;AAAA,CAEO,CAAUA,mBAAV;AACI,WAAS,OAAO,SAAgC;AACnD,YAAQ,QAAQ,MAAM;AAAA,MAClB,KAAK;AAAA,MACL,KAAK;AACD,cAAM,KAAK,QAAQ;AACnB,eAAO,GAAG,QAAQ,IAAI,MAAM,GAAG,SAAS,GAAG,IAAI,IAAI,EAAE,MAAM,EAAE,IAAI,QAAQ,IAAI;AAAA,MAEjF,KAAK;AACD,eAAO,SAAS,QAAQ,iBAAiB;AAAA,MAE7C;AACI,eAAO,GAAI,QAAgB,IAAI;AAAA,IACvC;AAAA,EACJ;AAbO,EAAAA,eAAS;AAeT,WAAS,cAAc,SAAwB;AAClD,UAAM,aAAa,MAAe;AAElC,YAAQ,QAAQ,MAAM;AAAA,MAClB,KAAK;AAAA,MACL,KAAK;AACD,mBAAW,KAAK,GAAG,QAAQ,IAAI,OAAO,WAAW,OAAO,QAAQ,EAAE,GAAG,KAAK,QAAQ,IAAI;AACtF;AAAA,MAEJ,KAAK;AACD,mBAAW,KAAK,UAAU,WAAW,OAAO,QAAQ,iBAAiB,CAAC;AACtE;AAAA,MAEJ;AACI,mBAAW,KAAK,GAAI,QAAgB,IAAI,KAAK;AAC7C;AAAA,IACR;AAEA,QAAI,SAAS,WAAW,OAAO,QAAQ,QAAQ,UAAU;AACrD,iBAAW,KAAK,SAAS,SAAS,OAAO,QAAQ,GAAG,CAAC;AAAA,IACzD;AAEA,WAAO,WAAW,OAAO,GAAG,UAAU;AAAA,EAC1C;AAvBO,EAAAA,eAAS;AAyBT,WAAS,QAAQ,GAAkB,GAA2B;AACjE,QAAI,EAAE,SAAS,EAAE,MAAM;AACnB,aAAO;AAAA,IACX;AAEA,QAAI,EAAE,SAAS,SAAS,EAAE,SAAS,OAAO;AACtC,aAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE;AAAA,IACzC;AAEA,QAAI,EAAE,SAAS,SAAS,EAAE,SAAS,OAAO;AACtC,aAAO,EAAE,sBAAsB,EAAE;AAAA,IACrC;AAEA,WAAO;AAAA,EACX;AAdO,EAAAA,eAAS;AAsBT,WAAS,SAAS,QAAsC;AAC3D,QAAI,OAAO,gBAAgB,QAAW;AAClC,aAAO;AAAA,IACX;AAEA,QAAI,OAAO,cAAc,UAAa,OAAO,YAAY,OAAO,aAAa;AACzE,aAAO;AAAA,QACH,WAAW,OAAO;AAAA,MACtB;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAZO,EAAAA,eAAS;AAmBT,MAAK;AAAL,IAAKC,yBAAL;AACH,IAAAA,0CAAA;AACA,IAAAA,0CAAA;AACA,IAAAA,0CAAA;AACA,IAAAA,0CAAA;AACA,IAAAA,0CAAA,YAAS,KAAT;AAAA,KALQ,sBAAAD,eAAA,wBAAAA,eAAA;AAQL,WAAS,sBAAsB,SAAwB;AAC1D,QAAI,EAAE,QAAQ,UAAU;AACpB,aAAO;AAAA,IACX;AAEA,QAAI,QAAQ,GAAG,WAAW,IAAI,GAAG;AAC7B,aAAO;AAAA,IACX;AAEA,QAAI,QAAQ,GAAG,WAAW,MAAM,GAAG;AAC/B,aAAO;AAAA,IACX;AAEA,QAAI,QAAQ,GAAG,SAAS,GAAG,GAAG;AAC1B,aAAO;AAAA,IACX;AAEA,WAAO;AAAA,EACX;AAlBO,EAAAA,eAAS;AAAA,GA1FH;",
|
|
5
5
|
"names": ["ServerAddress", "SelectionPreference"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2026 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { DnsRecord, DnsRecordType, SrvRecordValue } from "#codec/DnsCodec.js";
|
|
7
|
+
import type { Timestamp } from "#time/Timestamp.js";
|
|
8
|
+
import { AsyncObserver, BasicObservable } from "#util/Observable.js";
|
|
9
|
+
import { MaybePromise } from "#util/Promises.js";
|
|
10
|
+
/**
|
|
11
|
+
* Manages records associated with a single DNS-SD qname.
|
|
12
|
+
*
|
|
13
|
+
* Every DNS-SD qname of interest has a 1:1 relationship with a single instance of this class in the context of a
|
|
14
|
+
* {@link DnssdNames}. We therefore can use the qname or {@link DnssdName} interchangeably.
|
|
15
|
+
*
|
|
16
|
+
* An {@link DnssdName} is created when a new name is discovered or requested by another component. The name
|
|
17
|
+
* automatically deletes when there are no longer observers or unexpired records.
|
|
18
|
+
*/
|
|
19
|
+
export declare class DnssdName extends BasicObservable<[changes: DnssdName.Changes], MaybePromise> {
|
|
20
|
+
#private;
|
|
21
|
+
readonly qname: string;
|
|
22
|
+
constructor(qname: string, context: DnssdName.Context);
|
|
23
|
+
off(observer: AsyncObserver<[]>): void;
|
|
24
|
+
close(): Promise<void>;
|
|
25
|
+
get records(): MapIterator<DnssdName.Record>;
|
|
26
|
+
get parameters(): Map<string, string>;
|
|
27
|
+
get isDiscovered(): boolean;
|
|
28
|
+
installRecord(record: DnsRecord<any>): false | undefined;
|
|
29
|
+
deleteRecord(record: DnsRecord, ifOlderThan?: Timestamp): void;
|
|
30
|
+
}
|
|
31
|
+
export declare namespace DnssdName {
|
|
32
|
+
interface Context {
|
|
33
|
+
delete(name: DnssdName): void;
|
|
34
|
+
registerForExpiration(record: Record): void;
|
|
35
|
+
unregisterForExpiration(record: Record): void;
|
|
36
|
+
}
|
|
37
|
+
interface Expiration {
|
|
38
|
+
expiresAt: Timestamp;
|
|
39
|
+
}
|
|
40
|
+
interface PointerRecord extends DnsRecord<string>, Expiration {
|
|
41
|
+
recordType: DnsRecordType.PTR;
|
|
42
|
+
}
|
|
43
|
+
interface HostRecord extends DnsRecord<string>, Expiration {
|
|
44
|
+
recordType: DnsRecordType.A | DnsRecordType.AAAA;
|
|
45
|
+
}
|
|
46
|
+
interface ServiceRecord extends DnsRecord<SrvRecordValue>, Expiration {
|
|
47
|
+
recordType: DnsRecordType.SRV;
|
|
48
|
+
}
|
|
49
|
+
type Record = PointerRecord | ServiceRecord | HostRecord;
|
|
50
|
+
interface Changes {
|
|
51
|
+
name: DnssdName;
|
|
52
|
+
updated?: Record[];
|
|
53
|
+
deleted?: Record[];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=DnssdName.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DnssdName.d.ts","sourceRoot":"","sources":["../../../../src/net/dns-sd/DnssdName.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKjD;;;;;;;;GAQG;AACH,qBAAa,SAAU,SAAQ,eAAe,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;;IAUlF,QAAQ,CAAC,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM,EACtB,OAAO,EAAE,SAAS,CAAC,OAAO;IAMrB,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC;IAKlC,KAAK;IASX,IAAI,OAAO,kCAEV;IAED,IAAI,UAAU,wBAKb;IAED,IAAI,YAAY,YAEf;IAED,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC;IAoCpC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS;CA6F1D;AAqBD,yBAAiB,SAAS,CAAC;IACvB,UAAiB,OAAO;QACpB,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;QAC9B,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5C,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;KACjD;IAED,UAAiB,UAAU;QACvB,SAAS,EAAE,SAAS,CAAC;KACxB;IAED,UAAiB,aAAc,SAAQ,SAAS,CAAC,MAAM,CAAC,EAAE,UAAU;QAChE,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC;KACjC;IAED,UAAiB,UAAW,SAAQ,SAAS,CAAC,MAAM,CAAC,EAAE,UAAU;QAC7D,UAAU,EAAE,aAAa,CAAC,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC;KACpD;IAED,UAAiB,aAAc,SAAQ,SAAS,CAAC,cAAc,CAAC,EAAE,UAAU;QACxE,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC;KACjC;IAED,KAAY,MAAM,GAAG,aAAa,GAAG,aAAa,GAAG,UAAU,CAAC;IAEhE,UAAiB,OAAO;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;KACtB;CACJ"}
|