@yume-chan/adb-daemon-webusb 2.1.0 → 3.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2020-2025 Simon Chan
3
+ Copyright (c) 2020-2026 Simon Chan
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -24,6 +24,9 @@
24
24
  <a href="https://tangoadb.dev/discord">
25
25
  <img alt="Discord" src="https://img.shields.io/discord/1120215514732564502?logo=discord&logoColor=%23ffffff&label=Discord">
26
26
  </a>
27
+ <a href="https://tangoadb.dev/wechat">
28
+ <img alt="WeChat Group" src="https://img.shields.io/badge/WeChat-Group-%2307C160?logo=wechat&logoColor=white">
29
+ </a>
27
30
  </p>
28
31
 
29
32
  This package is part of [Tango ADB](https://github.com/yume-chan/ya-webadb). Generally you need multiple packages to build a complete ADB client that can run on Web browsers and Node.js. Read the documentation for more information.
@@ -34,7 +37,7 @@ Check the latest documentation at https://tangoadb.dev/tango/daemon/usb/
34
37
 
35
38
  ## Sponsors
36
39
 
37
- [Become a backer](https://opencollective.com/ya-webadb) and get your image on our README on Github with a link to your site.
40
+ [Become a backer](https://opencollective.com/ya-webadb) and get your image on our README on GitHub with a link to your site.
38
41
 
39
42
  <a href="https://opencollective.com/ya-webadb/backer/0/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/0/avatar.svg?requireActive=false"></a>
40
43
  <a href="https://opencollective.com/ya-webadb/backer/1/website?requireActive=false" target="_blank"><img src="https://opencollective.com/ya-webadb/backer/1/avatar.svg?requireActive=false"></a>
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,aAAa,EACb,aAAa,EAChB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,KAAK,EACR,UAAU,EACV,oBAAoB,EACpB,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGH,cAAc,EAEjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAG7E;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;CAIC,CAAC;AAExC,wBAAgB,8BAA8B,CAC1C,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,SAAS,GAChD,CAAC,eAAe,GAAG,kBAAkB,CAAC,EAAE,CAa1C;AAED,qBAAa,yBACT,YAAW,oBAAoB,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;;IAGzE,IAAI,MAAM,0BAET;IAGD,IAAI,UAAU,gBAEb;IAGD,IAAI,WAAW,gBAEd;IAGD,IAAI,QAAQ,kCAEX;IAGD,IAAI,QAAQ;;;;;;;;;SAEX;gBAGG,MAAM,EAAE,qBAAqB,EAC7B,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,GAAG;CAiJtB;AAED,qBAAa,qBAAsB,YAAW,eAAe;;IACzD,MAAM,CAAC,eAAe,0BAAoB;IAM1C,IAAI,GAAG,cAEN;IAGD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;OAKG;gBAEC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,sBAAsB,EAClC,UAAU,EAAE,GAAG;IAqDnB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,yBAAyB,CAAC;CAStD;AAED,yBAAiB,qBAAqB,CAAC;IACnC,KAAY,eAAe,GAAG,gBAAgB,CAAC;CAClD"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,aAAa,EACb,aAAa,EAChB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EACR,UAAU,EACV,oBAAoB,EACpB,cAAc,EACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGH,cAAc,EAEjB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAG7E;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;CAIC,CAAC;AAExC,wBAAgB,8BAA8B,CAC1C,OAAO,EAAE,SAAS,eAAe,EAAE,GAAG,SAAS,GAChD,CAAC,eAAe,GAAG,kBAAkB,CAAC,EAAE,CAa1C;AAED,qBAAa,yBAA0B,YAAW,oBAAoB,CAClE,aAAa,EACb,UAAU,CAAC,aAAa,CAAC,CAC5B;;IAEG,IAAI,MAAM,0BAET;IAGD,IAAI,UAAU,gBAEb;IAGD,IAAI,WAAW,gBAEd;IAGD,IAAI,QAAQ,kCAEX;IAGD,IAAI,QAAQ;;;;;;;;;SAEX;gBAGG,MAAM,EAAE,qBAAqB,EAC7B,UAAU,EAAE,WAAW,EACvB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,GAAG;CAmJtB;AAED,qBAAa,qBAAsB,YAAW,eAAe;;IACzD,MAAM,CAAC,eAAe,0BAAoB;IAM1C,IAAI,GAAG,cAEN;IAGD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;OAKG;gBAEC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,sBAAsB,EAClC,UAAU,EAAE,GAAG;IAqDnB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,yBAAyB,CAAC;CAStD;AAED,yBAAiB,qBAAqB,CAAC;IACnC,KAAY,eAAe,GAAG,gBAAgB,CAAC;CAClD"}
package/esm/device.js CHANGED
@@ -1,4 +1,4 @@
1
- import { AdbPacketHeader, AdbPacketSerializeStream, unreachable, } from "@yume-chan/adb";
1
+ import { AdbPacketHeader, AdbPacketSerializeStream, toLocalUint8Array, unreachable, } from "@yume-chan/adb";
2
2
  import { DuplexStreamFactory, MaybeConsumable, ReadableStream, pipeFrom, } from "@yume-chan/stream-extra";
3
3
  import { EmptyUint8Array, Uint8ArrayExactReadable } from "@yume-chan/struct";
4
4
  import { DeviceBusyError as _DeviceBusyError } from "./error.js";
@@ -86,7 +86,10 @@ export class AdbDaemonWebUsbConnection {
86
86
  this.#writable = pipeFrom(duplex.createWritable(new MaybeConsumable.WritableStream({
87
87
  write: async (chunk) => {
88
88
  try {
89
- await device.raw.transferOut(outEndpoint.endpointNumber, chunk);
89
+ await device.raw.transferOut(outEndpoint.endpointNumber,
90
+ // WebUSB doesn't support SharedArrayBuffer
91
+ // https://github.com/WICG/webusb/issues/243
92
+ toLocalUint8Array(chunk));
90
93
  // In USB protocol, a not-full packet indicates the end of a transfer.
91
94
  // If the payload size is a multiple of the packet size,
92
95
  // we need to send an empty packet to indicate the end,
package/esm/device.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
package/esm/error.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export class DeviceBusyError extends Error {
2
2
  constructor(cause) {
3
- super("The device is already in used by another program", {
3
+ super("The device is already in use by another program", {
4
4
  cause,
5
5
  });
6
6
  }
package/esm/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACtC,YAAY,KAAa;QACrB,KAAK,CAAC,kDAAkD,EAAE;YACtD,KAAK;SACR,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACtC,YAAY,KAAa;QACrB,KAAK,CAAC,iDAAiD,EAAE;YACrD,KAAK;SACR,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EAExB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAG9D,yBAAiB,4BAA4B,CAAC;IAC1C,UAAiB,oBAAoB;QACjC,OAAO,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG,SAAS,CAAC;QACjD,gBAAgB,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG,SAAS,CAAC;KAC7D;CACJ;AAED,qBAAa,4BAA4B;;IACrC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,2CAGA;IAIvB;;;OAGG;gBACS,UAAU,EAAE,GAAG;IAI3B;;OAEG;IACG,aAAa,CACf,OAAO,GAAE,4BAA4B,CAAC,oBAAyB,GAChE,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAmC7C;;OAEG;IACG,UAAU,CACZ,OAAO,GAAE,4BAA4B,CAAC,oBAAyB,GAChE,OAAO,CAAC,qBAAqB,EAAE,CAAC;IA0BnC,YAAY,CACR,OAAO,GAAE,4BAA4B,CAAC,oBAAyB,GAChE,OAAO,CAAC,6BAA6B,CAAC;CAG5C"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EAExB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAG9D,yBAAiB,4BAA4B,CAAC;IAC1C,UAAiB,oBAAoB;QACjC,OAAO,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG,SAAS,CAAC;QACjD,gBAAgB,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG,SAAS,CAAC;KAC7D;CACJ;AAED,qBAAa,4BAA4B;;IACrC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,2CAGA;IAIvB;;;OAGG;gBACS,UAAU,EAAE,GAAG;IAI3B;;OAEG;IACG,aAAa,CACf,OAAO,GAAE,4BAA4B,CAAC,oBAAyB,GAChE,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IA2C7C;;OAEG;IACG,UAAU,CACZ,OAAO,GAAE,4BAA4B,CAAC,oBAAyB,GAChE,OAAO,CAAC,qBAAqB,EAAE,CAAC;IA0BnC,YAAY,CACR,OAAO,GAAE,4BAA4B,CAAC,oBAAyB,GAChE,OAAO,CAAC,6BAA6B,CAAC;CAG5C"}
package/esm/manager.js CHANGED
@@ -34,6 +34,11 @@ export class AdbDaemonWebUsbDeviceManager {
34
34
  // selected device is invalid
35
35
  return undefined;
36
36
  }
37
+ // If this `requestDevice` adds a new device,
38
+ // Chrome won't fire a `connect` event for it.
39
+ // This will cause device observer to lose track of it,
40
+ // and when the device disconnects, device observer won't fire the disconnect event for it.
41
+ this.#usbManager.dispatchEvent(new USBConnectionEvent("connect", { device }));
37
42
  return new AdbDaemonWebUsbDevice(device, interface_, this.#usbManager);
38
43
  }
39
44
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EACrB,8BAA8B,GACjC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AASvD,MAAM,OAAO,4BAA4B;IACrC;;;;OAIG;IACH,MAAM,CAAU,OAAO,GAAG,eAAe,CAAC,CAAC,GAAG,EAAE,CAC5C,OAAO,UAAU,CAAC,SAAS,KAAK,WAAW,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG;QACnE,CAAC,CAAC,IAAI,4BAA4B,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC;QAC5D,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;IAEd,WAAW,CAAM;IAE1B;;;OAGG;IACH,YAAY,UAAe;QACvB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACf,UAA6D,EAAE;QAE/D,MAAM,OAAO,GAAG,8BAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;gBAChD,OAAO;gBACP,gBAAgB,EAAE,OAAO,CAAC,gBAAqC;aAClE,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,YAAY,CAC3B,MAAM,EACN,OAAO,EACP,OAAO,CAAC,gBAAgB,CAC3B,CAAC;YACF,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,oDAAoD;gBACpD,6BAA6B;gBAC7B,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,OAAO,IAAI,qBAAqB,CAC5B,MAAM,EACN,UAAU,EACV,IAAI,CAAC,WAAW,CACnB,CAAC;QACN,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,qBAAqB;YACrB,IAAI,WAAW,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC;gBAClC,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACZ,UAA6D,EAAE;QAE/D,MAAM,OAAO,GAAG,8BAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;QACpD,aAAa;QACb,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,YAAY,CAC3B,MAAM,EACN,OAAO,EACP,OAAO,CAAC,gBAAgB,CAC3B,CAAC;YACF,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CACP,IAAI,qBAAqB,CACrB,MAAM,EACN,UAAU,EACV,IAAI,CAAC,WAAW,CACnB,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,YAAY,CACR,UAA6D,EAAE;QAE/D,OAAO,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EACrB,8BAA8B,GACjC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AASvD,MAAM,OAAO,4BAA4B;IACrC;;;;OAIG;IACH,MAAM,CAAU,OAAO,GAAG,eAAe,CAAC,CAAC,GAAG,EAAE,CAC5C,OAAO,UAAU,CAAC,SAAS,KAAK,WAAW,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG;QACnE,CAAC,CAAC,IAAI,4BAA4B,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC;QAC5D,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;IAEd,WAAW,CAAM;IAE1B;;;OAGG;IACH,YAAY,UAAe;QACvB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACf,UAA6D,EAAE;QAE/D,MAAM,OAAO,GAAG,8BAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;gBAChD,OAAO;gBACP,gBAAgB,EAAE,OAAO,CAAC,gBAAqC;aAClE,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,YAAY,CAC3B,MAAM,EACN,OAAO,EACP,OAAO,CAAC,gBAAgB,CAC3B,CAAC;YACF,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,oDAAoD;gBACpD,6BAA6B;gBAC7B,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,6CAA6C;YAC7C,8CAA8C;YAC9C,uDAAuD;YACvD,2FAA2F;YAC3F,IAAI,CAAC,WAAW,CAAC,aAAa,CAC1B,IAAI,kBAAkB,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAChD,CAAC;YAEF,OAAO,IAAI,qBAAqB,CAC5B,MAAM,EACN,UAAU,EACV,IAAI,CAAC,WAAW,CACnB,CAAC;QACN,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,qBAAqB;YACrB,IAAI,WAAW,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC;gBAClC,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACZ,UAA6D,EAAE;QAE/D,MAAM,OAAO,GAAG,8BAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;QACpD,aAAa;QACb,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,YAAY,CAC3B,MAAM,EACN,OAAO,EACP,OAAO,CAAC,gBAAgB,CAC3B,CAAC;YACF,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CACP,IAAI,qBAAqB,CACrB,MAAM,EACN,UAAU,EACV,IAAI,CAAC,WAAW,CACnB,CACJ,CAAC;YACN,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,YAAY,CACR,UAA6D,EAAE;QAE/D,OAAO,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC"}
package/esm/observer.d.ts CHANGED
@@ -8,11 +8,11 @@ import type { AdbDaemonWebUsbDeviceManager } from "./manager.js";
8
8
  export declare class AdbDaemonWebUsbDeviceObserver implements DeviceObserver<AdbDaemonWebUsbDevice> {
9
9
  #private;
10
10
  static create(usb: USB, options?: AdbDaemonWebUsbDeviceManager.RequestDeviceOptions): Promise<AdbDaemonWebUsbDeviceObserver>;
11
- onDeviceAdd: import("@yume-chan/event").Event<readonly AdbDaemonWebUsbDevice[], unknown>;
12
- onDeviceRemove: import("@yume-chan/event").Event<readonly AdbDaemonWebUsbDevice[], unknown>;
13
- onListChange: import("@yume-chan/event").Event<readonly AdbDaemonWebUsbDevice[], unknown>;
11
+ onDeviceAdd: import("@yume-chan/event").Event<readonly AdbDaemonWebUsbDevice[]>;
12
+ onDeviceRemove: import("@yume-chan/event").Event<readonly AdbDaemonWebUsbDevice[]>;
13
+ onListChange: import("@yume-chan/event").Event<readonly AdbDaemonWebUsbDevice[]>;
14
14
  current: readonly AdbDaemonWebUsbDevice[];
15
15
  constructor(usb: USB, initial: USBDevice[], options?: AdbDaemonWebUsbDeviceManager.RequestDeviceOptions);
16
- stop(): void;
16
+ close(): void;
17
17
  }
18
18
  //# sourceMappingURL=observer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIrD,OAAO,EACH,qBAAqB,EAExB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAIjE;;;GAGG;AACH,qBAAa,6BACT,YAAW,cAAc,CAAC,qBAAqB,CAAC;;WAEnC,MAAM,CACf,GAAG,EAAE,GAAG,EACR,OAAO,GAAE,4BAA4B,CAAC,oBAAyB;IAanE,WAAW,8EAA2B;IAKtC,cAAc,8EAA8B;IAK5C,YAAY,8EAA4B;IAExC,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAM;gBAG3C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,SAAS,EAAE,EACpB,OAAO,GAAE,4BAA4B,CAAC,oBAAyB;IA2DnE,IAAI,IAAI,IAAI;CAWf"}
1
+ {"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIrD,OAAO,EACH,qBAAqB,EAExB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAIjE;;;GAGG;AACH,qBAAa,6BAA8B,YAAW,cAAc,CAAC,qBAAqB,CAAC;;WAC1E,MAAM,CACf,GAAG,EAAE,GAAG,EACR,OAAO,GAAE,4BAA4B,CAAC,oBAAyB;IAanE,WAAW,qEAA2B;IAKtC,cAAc,qEAA8B;IAK5C,YAAY,qEAA4B;IAExC,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAM;gBAK3C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,SAAS,EAAE,EACpB,OAAO,GAAE,4BAA4B,CAAC,oBAAyB;IAuEnE,KAAK,IAAI,IAAI;CAMhB"}
package/esm/observer.js CHANGED
@@ -21,6 +21,7 @@ export class AdbDaemonWebUsbDeviceObserver {
21
21
  #onListChange = new StickyEventEmitter();
22
22
  onListChange = this.#onListChange.event;
23
23
  current = [];
24
+ #stopAbortController = new AbortController();
24
25
  constructor(usb, initial, options = {}) {
25
26
  this.#filters = mergeDefaultAdbInterfaceFilter(options.filters);
26
27
  this.#exclusionFilters = options.exclusionFilters;
@@ -30,8 +31,10 @@ export class AdbDaemonWebUsbDeviceObserver {
30
31
  .filter((device) => !!device);
31
32
  // Fire `onListChange` to set the sticky value
32
33
  this.#onListChange.fire(this.current);
33
- this.#usbManager.addEventListener("connect", this.#handleConnect);
34
- this.#usbManager.addEventListener("disconnect", this.#handleDisconnect);
34
+ this.#usbManager.addEventListener("connect", this.#handleConnect, {
35
+ signal: this.#stopAbortController.signal,
36
+ });
37
+ this.#usbManager.addEventListener("disconnect", this.#handleDisconnect, { signal: this.#stopAbortController.signal });
35
38
  }
36
39
  #convertDevice(device) {
37
40
  const interface_ = matchFilters(device, this.#filters, this.#exclusionFilters);
@@ -45,6 +48,11 @@ export class AdbDaemonWebUsbDeviceObserver {
45
48
  if (!device) {
46
49
  return;
47
50
  }
51
+ // We send a `connect` event on `requestDevice` success,
52
+ // but this device might already exist if we already have the permission for it.
53
+ if (this.current.some((item) => item.raw === device.raw)) {
54
+ return;
55
+ }
48
56
  const next = this.current.slice();
49
57
  next.push(device);
50
58
  this.current = next;
@@ -62,9 +70,8 @@ export class AdbDaemonWebUsbDeviceObserver {
62
70
  this.#onListChange.fire(this.current);
63
71
  }
64
72
  };
65
- stop() {
66
- this.#usbManager.removeEventListener("connect", this.#handleConnect);
67
- this.#usbManager.removeEventListener("disconnect", this.#handleDisconnect);
73
+ close() {
74
+ this.#stopAbortController.abort();
68
75
  this.#onDeviceAdd.dispose();
69
76
  this.#onDeviceRemove.dispose();
70
77
  this.#onListChange.dispose();
@@ -1 +1 @@
1
- {"version":3,"file":"observer.js","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EACH,qBAAqB,EACrB,8BAA8B,GACjC,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;GAGG;AACH,MAAM,OAAO,6BAA6B;IAGtC,MAAM,CAAC,KAAK,CAAC,MAAM,CACf,GAAQ,EACR,UAA6D,EAAE;QAE/D,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,IAAI,6BAA6B,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAEQ,QAAQ,CAAoD;IAC5D,iBAAiB,CAA0C;IAC3D,WAAW,CAAM;IAEjB,YAAY,GAAG,IAAI,YAAY,EAErC,CAAC;IACJ,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IAE7B,eAAe,GAAG,IAAI,YAAY,EAExC,CAAC;IACJ,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;IAEnC,aAAa,GAAG,IAAI,kBAAkB,EAE5C,CAAC;IACJ,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAExC,OAAO,GAAqC,EAAE,CAAC;IAE/C,YACI,GAAQ,EACR,OAAoB,EACpB,UAA6D,EAAE;QAE/D,IAAI,CAAC,QAAQ,GAAG,8BAA8B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QAEvB,IAAI,CAAC,OAAO,GAAG,OAAO;aACjB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;aAC5C,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAClC,8CAA8C;QAC9C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEtC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5E,CAAC;IAED,cAAc,CAAC,MAAiB;QAC5B,MAAM,UAAU,GAAG,YAAY,CAC3B,MAAM,EACN,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,iBAAiB,CACzB,CAAC;QACF,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3E,CAAC;IAED,cAAc,GAAG,CAAC,CAAqB,EAAE,EAAE;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,iBAAiB,GAAG,CAAC,CAAqB,EAAE,EAAE;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAChC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CACtC,CAAC;QACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC;YAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAClC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YAEpB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;IACL,CAAC,CAAC;IAEF,IAAI;QACA,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACrE,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAChC,YAAY,EACZ,IAAI,CAAC,iBAAiB,CACzB,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;CACJ"}
1
+ {"version":3,"file":"observer.js","sourceRoot":"","sources":["../src/observer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yume-chan/adb-daemon-webusb",
3
- "version": "2.1.0",
3
+ "version": "3.0.0-beta.0",
4
4
  "description": "Adb daemon transport connection for `@yume-chan/adb` using WebUSB API.",
5
5
  "keywords": [
6
6
  "webusb",
@@ -26,22 +26,22 @@
26
26
  "types": "esm/index.d.ts",
27
27
  "sideEffects": false,
28
28
  "dependencies": {
29
- "@types/w3c-web-usb": "^1.0.10",
30
- "@yume-chan/adb": "^2.1.0",
31
- "@yume-chan/event": "^2.0.0",
32
- "@yume-chan/stream-extra": "^2.1.0",
33
- "@yume-chan/struct": "^2.0.1"
29
+ "@types/w3c-web-usb": "^1.0.14",
30
+ "@yume-chan/adb": "3.0.0-beta.0",
31
+ "@yume-chan/event": "3.0.0-beta.0",
32
+ "@yume-chan/stream-extra": "3.0.0-beta.0",
33
+ "@yume-chan/struct": "3.0.0-beta.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@types/node": "^24.0.1",
37
- "prettier": "^3.5.3",
38
- "typescript": "^5.8.3",
36
+ "@types/node": "^26.0.0",
37
+ "prettier": "^3.8.4",
38
+ "typescript": "^6.0.3",
39
39
  "@yume-chan/eslint-config": "^1.0.0",
40
40
  "@yume-chan/test-runner": "^1.0.0",
41
41
  "@yume-chan/tsconfig": "^1.0.0"
42
42
  },
43
43
  "scripts": {
44
- "build": "tsc -b tsconfig.build.json",
44
+ "build": "tsc -p tsconfig.build.json",
45
45
  "lint": "run-eslint && prettier src/**/*.ts --write --tab-width 4",
46
46
  "test": "run-test"
47
47
  }
package/src/device.ts CHANGED
@@ -6,6 +6,7 @@ import type {
6
6
  import {
7
7
  AdbPacketHeader,
8
8
  AdbPacketSerializeStream,
9
+ toLocalUint8Array,
9
10
  unreachable,
10
11
  } from "@yume-chan/adb";
11
12
  import type {
@@ -51,9 +52,10 @@ export function mergeDefaultAdbInterfaceFilter(
51
52
  }
52
53
  }
53
54
 
54
- export class AdbDaemonWebUsbConnection
55
- implements ReadableWritablePair<AdbPacketData, Consumable<AdbPacketInit>>
56
- {
55
+ export class AdbDaemonWebUsbConnection implements ReadableWritablePair<
56
+ AdbPacketData,
57
+ Consumable<AdbPacketInit>
58
+ > {
57
59
  readonly #device: AdbDaemonWebUsbDevice;
58
60
  get device() {
59
61
  return this.#device;
@@ -144,7 +146,9 @@ export class AdbDaemonWebUsbConnection
144
146
  try {
145
147
  await device.raw.transferOut(
146
148
  outEndpoint.endpointNumber,
147
- chunk,
149
+ // WebUSB doesn't support SharedArrayBuffer
150
+ // https://github.com/WICG/webusb/issues/243
151
+ toLocalUint8Array(chunk),
148
152
  );
149
153
 
150
154
  // In USB protocol, a not-full packet indicates the end of a transfer.
package/src/error.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export class DeviceBusyError extends Error {
2
2
  constructor(cause?: Error) {
3
- super("The device is already in used by another program", {
3
+ super("The device is already in use by another program", {
4
4
  cause,
5
5
  });
6
6
  }
package/src/manager.ts CHANGED
@@ -58,6 +58,14 @@ export class AdbDaemonWebUsbDeviceManager {
58
58
  return undefined;
59
59
  }
60
60
 
61
+ // If this `requestDevice` adds a new device,
62
+ // Chrome won't fire a `connect` event for it.
63
+ // This will cause device observer to lose track of it,
64
+ // and when the device disconnects, device observer won't fire the disconnect event for it.
65
+ this.#usbManager.dispatchEvent(
66
+ new USBConnectionEvent("connect", { device }),
67
+ );
68
+
61
69
  return new AdbDaemonWebUsbDevice(
62
70
  device,
63
71
  interface_,
package/src/observer.ts CHANGED
@@ -14,9 +14,7 @@ import { matchFilters } from "./utils.js";
14
14
  * A watcher that listens for new WebUSB devices and notifies the callback when
15
15
  * a new device is connected or disconnected.
16
16
  */
17
- export class AdbDaemonWebUsbDeviceObserver
18
- implements DeviceObserver<AdbDaemonWebUsbDevice>
19
- {
17
+ export class AdbDaemonWebUsbDeviceObserver implements DeviceObserver<AdbDaemonWebUsbDevice> {
20
18
  static async create(
21
19
  usb: USB,
22
20
  options: AdbDaemonWebUsbDeviceManager.RequestDeviceOptions = {},
@@ -46,6 +44,8 @@ export class AdbDaemonWebUsbDeviceObserver
46
44
 
47
45
  current: readonly AdbDaemonWebUsbDevice[] = [];
48
46
 
47
+ #stopAbortController = new AbortController();
48
+
49
49
  constructor(
50
50
  usb: USB,
51
51
  initial: USBDevice[],
@@ -61,8 +61,14 @@ export class AdbDaemonWebUsbDeviceObserver
61
61
  // Fire `onListChange` to set the sticky value
62
62
  this.#onListChange.fire(this.current);
63
63
 
64
- this.#usbManager.addEventListener("connect", this.#handleConnect);
65
- this.#usbManager.addEventListener("disconnect", this.#handleDisconnect);
64
+ this.#usbManager.addEventListener("connect", this.#handleConnect, {
65
+ signal: this.#stopAbortController.signal,
66
+ });
67
+ this.#usbManager.addEventListener(
68
+ "disconnect",
69
+ this.#handleDisconnect,
70
+ { signal: this.#stopAbortController.signal },
71
+ );
66
72
  }
67
73
 
68
74
  #convertDevice(device: USBDevice): AdbDaemonWebUsbDevice | undefined {
@@ -84,6 +90,12 @@ export class AdbDaemonWebUsbDeviceObserver
84
90
  return;
85
91
  }
86
92
 
93
+ // We send a `connect` event on `requestDevice` success,
94
+ // but this device might already exist if we already have the permission for it.
95
+ if (this.current.some((item) => item.raw === device.raw)) {
96
+ return;
97
+ }
98
+
87
99
  const next = this.current.slice();
88
100
  next.push(device);
89
101
  this.current = next;
@@ -108,13 +120,8 @@ export class AdbDaemonWebUsbDeviceObserver
108
120
  }
109
121
  };
110
122
 
111
- stop(): void {
112
- this.#usbManager.removeEventListener("connect", this.#handleConnect);
113
- this.#usbManager.removeEventListener(
114
- "disconnect",
115
- this.#handleDisconnect,
116
- );
117
-
123
+ close(): void {
124
+ this.#stopAbortController.abort();
118
125
  this.#onDeviceAdd.dispose();
119
126
  this.#onDeviceRemove.dispose();
120
127
  this.#onListChange.dispose();
package/CHANGELOG.md DELETED
@@ -1,193 +0,0 @@
1
- # Change Log - @yume-chan/adb-daemon-webusb
2
-
3
- ## 2.1.0
4
-
5
- ### Patch Changes
6
-
7
- - Updated dependencies [40a60ca]
8
- - Updated dependencies [a835eb8]
9
- - Updated dependencies [dbcfd34]
10
- - @yume-chan/stream-extra@2.1.0
11
- - @yume-chan/adb@2.1.0
12
-
13
- ## 2.0.1
14
-
15
- ### Patch Changes
16
-
17
- - Updated dependencies [0bcb9b8]
18
- - @yume-chan/struct@2.0.1
19
- - @yume-chan/adb@2.0.1
20
- - @yume-chan/stream-extra@2.0.1
21
-
22
- ## 2.0.0
23
-
24
- ### Minor Changes
25
-
26
- - 05c01ad: Make `DeviceObserver#onListChange` sticky
27
-
28
- ### Patch Changes
29
-
30
- - Updated dependencies
31
- - Updated dependencies [05c01ad]
32
- - Updated dependencies [b79df96]
33
- - @yume-chan/adb@2.0.0
34
- - @yume-chan/event@2.0.0
35
- - @yume-chan/struct@2.0.0
36
- - @yume-chan/stream-extra@2.0.0
37
-
38
- ## 1.1.0
39
-
40
- ### Patch Changes
41
-
42
- - Updated dependencies [ab98953]
43
- - @yume-chan/adb@1.1.0
44
-
45
- ## 1.0.1
46
-
47
- ### Patch Changes
48
-
49
- - 53688d3: Use PNPM workspace and Changesets to manage the monorepo.
50
-
51
- Because Changesets doesn't support alpha versions (`0.x.x`), this version is `1.0.0`. Future versions will follow SemVer rules, for example, breaking API changes will introduce a new major version.
52
-
53
- - c68e216: Accept exclusionFilters in getDevices and DeviceObserver
54
- - db8466f: Accept standard `USBDeviceFilter` type and fill in default interface filters automatically
55
- - db8466f: Throw `DeviceBusyError` when interface can't be claimed
56
- - Updated dependencies [53688d3]
57
- - Updated dependencies [db8466f]
58
- - Updated dependencies [db8466f]
59
- - Updated dependencies [ea5002b]
60
- - Updated dependencies [db8466f]
61
- - @yume-chan/stream-extra@1.0.1
62
- - @yume-chan/struct@1.0.1
63
- - @yume-chan/event@1.0.1
64
- - @yume-chan/adb@1.0.1
65
-
66
- This log was last generated on Tue, 18 Jun 2024 02:49:43 GMT and should not be manually modified.
67
-
68
- ## 0.0.24
69
-
70
- Tue, 18 Jun 2024 02:49:43 GMT
71
-
72
- _Version update only_
73
-
74
- ## 0.0.23
75
-
76
- Thu, 21 Mar 2024 03:15:10 GMT
77
-
78
- ### Updates
79
-
80
- - Fix `AdbDaemonWebUsbDeviceManager.getDevices` doesn't match auto-generated serial number against `filters.serialNumber` (if the device doesn't have a serial number)
81
-
82
- ## 0.0.22
83
-
84
- Wed, 13 Dec 2023 05:57:27 GMT
85
-
86
- ### Updates
87
-
88
- - Check incoming packet size to prevent Chrome from crashing
89
- - Add `exclusionFilters` option to `AdbDaemonWebUsbDeviceManager#requestDevice` method
90
- - `AdbDaemonWebUsbDevice` will generate a fake serial number from vid and pid if the device serial number is empty
91
-
92
- ## 0.0.21
93
-
94
- Fri, 25 Aug 2023 14:05:18 GMT
95
-
96
- _Version update only_
97
-
98
- ## 0.0.20
99
-
100
- Mon, 05 Jun 2023 02:51:41 GMT
101
-
102
- ### Updates
103
-
104
- - Use ECMAScript private class fields syntax (supported by Chrome 74, Firefox 90, Safari 14.1 and Node.js 12.0.0).
105
- - Rename package to `@yume-chan/adb-daemon-webusb` following the renaming of `AdbDaemonTransport`.
106
- - Rename `AdbWebUsbBackend` to `AdbDaemonWebUsbDevice` following the renaming of `AdbDaemonTransport`.
107
- - Add Support for detecting device disconnects. It no longer throws an `NetworkError` when the device is disconnected.
108
- - Add `filters` parameter to `AdbDaemonWebUsbDeviceManager#getDevices`. The filtration is manually implemented because WebUSB's `getDevice` API doesn't support filters.
109
-
110
- ## 0.0.19
111
-
112
- Sun, 09 Apr 2023 05:55:33 GMT
113
-
114
- ### Updates
115
-
116
- - Remove stream queuing
117
- - Add the `AdbWebUsbBackendManager` class to simplify the usage with custom WebUSB implementations (for example the `usb` NPM package).
118
-
119
- ## 0.0.18
120
-
121
- Wed, 25 Jan 2023 21:33:49 GMT
122
-
123
- ### Updates
124
-
125
- - Add an option to specify USB filters
126
-
127
- ## 0.0.17
128
-
129
- Tue, 18 Oct 2022 09:32:30 GMT
130
-
131
- ### Updates
132
-
133
- - Update to use new stream util package
134
-
135
- ## 0.0.16
136
-
137
- Sat, 28 May 2022 03:56:37 GMT
138
-
139
- ### Updates
140
-
141
- - Upgrade TypeScript to 4.7.2 to enable Node.js ESM
142
-
143
- ## 0.0.15
144
-
145
- Mon, 02 May 2022 04:18:01 GMT
146
-
147
- ### Updates
148
-
149
- - Improve connection lifecycle handling
150
-
151
- ## 0.0.14
152
-
153
- Sat, 30 Apr 2022 14:05:48 GMT
154
-
155
- _Version update only_
156
-
157
- ## 0.0.13
158
-
159
- Thu, 28 Apr 2022 01:23:53 GMT
160
-
161
- ### Updates
162
-
163
- - Workaround an issue in Chrome where `transferIn` never returns `babble` on Windows
164
-
165
- ## 0.0.12
166
-
167
- Sun, 03 Apr 2022 11:18:47 GMT
168
-
169
- _Version update only_
170
-
171
- ## 0.0.11
172
-
173
- Sun, 03 Apr 2022 10:54:15 GMT
174
-
175
- ### Updates
176
-
177
- - Update to use Web Streams API
178
- - Improve compatibility with Node.js 12 ESM format
179
- - Update license year
180
-
181
- ## 0.0.10
182
-
183
- Sun, 09 Jan 2022 15:52:20 GMT
184
-
185
- ### Updates
186
-
187
- - Remove `encodeUtf8()` and `decodeUtf8()` from `AdbBackend`
188
-
189
- ## 0.0.9
190
-
191
- Sun, 09 Jan 2022 15:50:20 GMT
192
-
193
- _Initial release_
@@ -1 +0,0 @@
1
- {"fileNames":["../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.esnext.float16.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/.pnpm/@yume-chan+async@4.1.3/node_modules/@yume-chan/async/dts/async-operation-manager.d.ts","../../node_modules/.pnpm/@yume-chan+async@4.1.3/node_modules/@yume-chan/async/dts/delay.d.ts","../../node_modules/.pnpm/@yume-chan+async@4.1.3/node_modules/@yume-chan/async/dts/maybe-promise.d.ts","../../node_modules/.pnpm/@yume-chan+async@4.1.3/node_modules/@yume-chan/async/dts/promise-resolver.d.ts","../../node_modules/.pnpm/@yume-chan+async@4.1.3/node_modules/@yume-chan/async/dts/index.d.ts","../struct/esm/bipedal.d.ts","../struct/esm/readable.d.ts","../struct/esm/field/types.d.ts","../struct/esm/field/serialize.d.ts","../struct/esm/field/factory.d.ts","../struct/esm/field/index.d.ts","../struct/esm/buffer.d.ts","../struct/esm/types.d.ts","../struct/esm/struct.d.ts","../struct/esm/concat.d.ts","../struct/esm/extend.d.ts","../struct/esm/number.d.ts","../struct/esm/string.d.ts","../struct/esm/utils.d.ts","../struct/esm/index.d.ts","../stream-extra/esm/types.d.ts","../stream-extra/esm/stream.d.ts","../stream-extra/esm/buffered.d.ts","../stream-extra/esm/buffered-transform.d.ts","../stream-extra/esm/concat.d.ts","../stream-extra/esm/consumable/readable.d.ts","../stream-extra/esm/consumable/wrap-byte-readable.d.ts","../stream-extra/esm/consumable/wrap-writable.d.ts","../stream-extra/esm/consumable/writable.d.ts","../stream-extra/esm/consumable/index.d.ts","../stream-extra/esm/consumable.d.ts","../stream-extra/esm/maybe-consumable/utils.d.ts","../stream-extra/esm/maybe-consumable/wrap-writable.d.ts","../stream-extra/esm/maybe-consumable/writable.d.ts","../stream-extra/esm/maybe-consumable/index.d.ts","../stream-extra/esm/maybe-consumable.d.ts","../stream-extra/esm/distribution.d.ts","../stream-extra/esm/wrap-readable.d.ts","../stream-extra/esm/duplex.d.ts","../stream-extra/esm/encoding.d.ts","../stream-extra/esm/inspect.d.ts","../stream-extra/esm/pipe-from.d.ts","../stream-extra/esm/push-readable.d.ts","../stream-extra/esm/split-string.d.ts","../stream-extra/esm/struct-deserialize.d.ts","../stream-extra/esm/struct-serialize.d.ts","../stream-extra/esm/task.d.ts","../stream-extra/esm/try-close.d.ts","../stream-extra/esm/wrap-writable.d.ts","../stream-extra/esm/index.d.ts","../adb/esm/features.d.ts","../adb/esm/banner.d.ts","../event/esm/disposable.d.ts","../event/esm/event.d.ts","../event/esm/event-emitter.d.ts","../event/esm/sticky-event-emitter.d.ts","../event/esm/utils.d.ts","../event/esm/index.d.ts","../adb/esm/commands/base.d.ts","../adb/esm/commands/framebuffer.d.ts","../adb/esm/commands/power.d.ts","../adb/esm/commands/reverse.d.ts","../adb/esm/commands/subprocess/none/spawner.d.ts","../adb/esm/commands/subprocess/none/process.d.ts","../adb/esm/commands/subprocess/pty.d.ts","../adb/esm/commands/subprocess/none/pty.d.ts","../adb/esm/commands/subprocess/none/service.d.ts","../adb/esm/commands/subprocess/none/index.d.ts","../adb/esm/commands/subprocess/shell/spawner.d.ts","../adb/esm/commands/subprocess/shell/process.d.ts","../adb/esm/commands/subprocess/shell/pty.d.ts","../adb/esm/commands/subprocess/shell/service.d.ts","../adb/esm/commands/subprocess/shell/shared.d.ts","../adb/esm/commands/subprocess/shell/index.d.ts","../adb/esm/commands/subprocess/service.d.ts","../adb/esm/commands/subprocess/utils.d.ts","../adb/esm/commands/subprocess/index.d.ts","../adb/esm/utils/auto-reset-event.d.ts","../adb/esm/utils/base64.d.ts","../adb/esm/utils/hex.d.ts","../adb/esm/utils/no-op.d.ts","../adb/esm/utils/ref.d.ts","../adb/esm/utils/sequence-equal.d.ts","../adb/esm/utils/index.d.ts","../adb/esm/commands/sync/socket.d.ts","../adb/esm/commands/sync/stat.d.ts","../adb/esm/commands/sync/list.d.ts","../adb/esm/commands/sync/pull.d.ts","../adb/esm/commands/sync/push.d.ts","../adb/esm/commands/sync/request.d.ts","../adb/esm/commands/sync/response.d.ts","../adb/esm/commands/sync/sync.d.ts","../adb/esm/commands/sync/index.d.ts","../adb/esm/commands/tcpip.d.ts","../adb/esm/commands/index.d.ts","../adb/esm/adb.d.ts","../adb/esm/daemon/packet.d.ts","../adb/esm/daemon/auth.d.ts","../adb/esm/daemon/crypto.d.ts","../adb/esm/daemon/device.d.ts","../adb/esm/daemon/dispatcher.d.ts","../adb/esm/daemon/socket.d.ts","../adb/esm/daemon/transport.d.ts","../adb/esm/daemon/index.d.ts","../adb/esm/device-observer.d.ts","../adb/esm/server/commands/m-dns.d.ts","../adb/esm/server/commands/wireless.d.ts","../adb/esm/server/commands/index.d.ts","../adb/esm/server/observer.d.ts","../adb/esm/server/stream.d.ts","../adb/esm/server/transport.d.ts","../adb/esm/server/client.d.ts","../adb/esm/server/index.d.ts","../adb/esm/index.d.ts","./src/error.ts","./src/utils.ts","./src/device.ts","./src/observer.ts","./src/manager.ts","./src/index.ts","../../node_modules/.pnpm/@types+w3c-web-usb@1.0.10/node_modules/@types/w3c-web-usb/index.d.ts"],"fileIdsList":[[99,129,193,194,195],[195,196,197,198],[195,196,197],[137,193,195,196,198],[84,129,130,131,174],[130],[137,175],[99,175],[138,139,140,141,156,172,173],[138],[129,138,175],[147,153,154,155],[142,143,145,146],[84,129,142,175],[84,129,144,175],[142,145,175],[84,129],[147,153,175],[148,149,150,151,152],[84,129,148,175],[148,150,175],[99],[164,165,166,167,168,169,170,171],[99,164,165],[99,129,164],[99,129,164,165],[99,129,163,175],[99,164],[99,129,164,165,166,175],[84,137,176],[84,129,176],[129,175,176],[176,177,178,179,180,181,182],[99,129],[129,137,175,180],[84,129,130,131,175,176,177],[84,137],[130,131,163,174,175,183,184,192],[84,129,130,137,175,184,187,188,189,190],[185,186],[191],[188,189,190,191],[84,100,129,191],[130,131,175,191],[137],[99,157,158,159,160,161,162],[132,133],[132],[132,133,134,135,136],[133,134],[133],[84,101,102],[84,99,101],[101],[109],[105,106,107,108],[101,110],[101,115],[84,101,117],[101,102,103,104,110,115,116,117,118,119,120,121,122,123,124,125,126,127,128],[110,114],[111,112,113],[110,115],[100,101],[100],[99,103],[99,101],[101,102,122],[84,101],[84],[90],[93],[85,86,87,88],[87,88,89],[87],[84,86],[85,86,90,91,92,93,94,95,96,97,98],[90,91],[90,92],[84,86,90],[80,81,82,83]],"fileInfos":[{"version":"69684132aeb9b5642cbcd9e22dff7818ff0ee1aa831728af0ecf97d3364d5546","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"8bf8b5e44e3c9c36f98e1007e8b7018c0f38d8adc07aecef42f5200114547c70","impliedFormat":1},{"version":"092c2bfe125ce69dbb1223c85d68d4d2397d7d8411867b5cc03cec902c233763","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"4245fee526a7d1754529d19227ecbf3be066ff79ebb6a380d78e41648f2f224d","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"4942ce52738852aac9e3eb7b2743abd920ea3f62dfc930e8ab49db6672c5d292","impliedFormat":99},{"version":"f232c6de4d9dacf27320453a89e04c29b3bcc7a084ee6184de18a15e4a1a3a1d","impliedFormat":99},{"version":"0bbbbb1b5a4f7a77a28dbcd2fc59311affab8cfed9dba97b5d5cf20ae7fbc3f3","impliedFormat":99},{"version":"557a9670c1bb00cdd5eb309ed1e28665fdefe501a4b12eb124dc1bcaa1498328","impliedFormat":99},{"version":"91ef0ad14ba3385732eceb83552b2a01fb9f86e0fa532f11d038368ab2ee4bc9","impliedFormat":99},{"version":"19872606f722ee6d7e7ae009f5e1d5518695d592de0bc88fbecffb09a190f61c","impliedFormat":99},{"version":"87b3f584a85a5c19bbc331b864710b5a17385c555449f10f1172a2fcdd461e80","impliedFormat":99},{"version":"584c50ac39249bea22701fc35e079d771574d7c7a5974813cac8478e49dd197f","impliedFormat":99},{"version":"f479141fdc9002c67ba83693f4d6b61daecb7af890d5f821dada93894b1c72bf","impliedFormat":99},{"version":"cc3fd3344888f2d160e3ef75189a200fd80e72f4ef4b61455a4474d79477bdeb","impliedFormat":99},{"version":"9ed39feaedfaa6d05973b74694ab07211fff43efb1ca554be3bda00ac86de46d","impliedFormat":99},{"version":"30dd5b92fc2765d755b3fb4c9da73926895a89c5a618018f2f5e259e7860b1f4","impliedFormat":99},{"version":"f03d368eceab76c159f7d9649c64aabb9f9c02f46b8d2a2c60a9e9cf4e2053fb","impliedFormat":99},{"version":"ef7f072d2e15105633948858169948be27240829cba599c2fa3d33964093b30d","impliedFormat":99},{"version":"2b8f38a2e51f762168a4ab8a06c92a78240f65ddaed431005b1056df859f1457","impliedFormat":99},{"version":"a55b182059f77da2687ed0e8877fd4e24481e883fcaf311f48b8ad98673e3e74","impliedFormat":99},{"version":"e4a185f4c6aa238c812d3c2ba9746d4bf198a31e70e9fae83d107457f0ab10df","impliedFormat":99},{"version":"910abfd85acbc348dd025d4d661db4625d4458de02c7419d948af152c282e512","impliedFormat":99},{"version":"0e7c5f81cf7dc16c999d304b346382a6002366a59278023907ea8c5685800c03","impliedFormat":99},{"version":"ca896dd22a7f1395338a89d9af4199176e8de935628611e299b218183b0f3e8f","affectsGlobalScope":true,"impliedFormat":99},{"version":"c21c96ef9d44716c3e5b10b331841a8f93bfb1c50d6118d44370792824da6a9b","impliedFormat":99},{"version":"705e82082894a3dc7f6b92b023914e1bf0db10788ddbdf07806002c26a1db3a9","impliedFormat":99},{"version":"93758b16a8798ec0957abf049ef5091497465d024e3b68a2be986ae984b8ebb0","impliedFormat":99},{"version":"233b3ef5dfa40f3459846e94d43c000736582e2ca85d17c496a47e582f79d102","impliedFormat":99},{"version":"256ac5c01fbbd7f17ec5d916b2cf1c4639cef6d5ac2161c82849db6cdc8d0c42","impliedFormat":99},{"version":"0c1970554298bff271f2e9a80e6eefd5f1edd4c359b4c78897729639805b98b1","impliedFormat":99},{"version":"a68d83b9edf5367294014b99d7809f785f1528b1123288694bd419df04c87169","impliedFormat":99},{"version":"65a273d2534e0cceee0a3999e3a586fb0fa4c9ef306b44c131de0c2134444e07","impliedFormat":99},{"version":"8aef166bd0bdf40c1930d01a7dc6e52a6b63203b070507d26780ee4a621de23e","impliedFormat":99},{"version":"fad61016cf71449ce00722a32125c5bbf41ecc1660f3dea1f88a5a0a862029ec","impliedFormat":99},{"version":"0d3f54fc90e087a51221649bf849bd7b5a1612f036889050c7f8a1f059ee17f8","impliedFormat":99},{"version":"07edb55d7f9f9fb492ccf92744f514255b534b1b994f485ff2c82f1414e88f04","impliedFormat":99},{"version":"f41b13b58a957b03fd5d07bfe5d85f4cc9249a117a1b9589d9a2ac4238b39d05","impliedFormat":99},{"version":"b715965f4d903ab130a1886c06f506211c9cbaf87ad3257a71114798475445f0","impliedFormat":99},{"version":"02ba2ea3d47215b8b4374ec4abe73048ac11f4cc2a4e6861b00e166be688c5c5","impliedFormat":99},{"version":"5d6a477460748b6b3434184178718e96bdea9cc32b73808ffc4384b1a0be485e","impliedFormat":99},{"version":"afe4250b9645928151991fd60790a92571d9251b60be91032152b472d6830ebf","impliedFormat":99},{"version":"68cdca7414470b34b6dba8e14fdbf17393148f84944d31e2adf5ed933f3ec8fa","impliedFormat":99},{"version":"0703fbf0cefe3eaa09abff465ad292b89464a2c80bb8d2bb2942fc3dc08e0285","impliedFormat":99},{"version":"d24fed323d65a8d753ff2d0ea105f5d0788a50b585c1a1334d9bd336b2f378c7","impliedFormat":99},{"version":"4ebc57d20caf062019a2b8c9ce1e54602a411022eb4f7fa325888b9bcf63693a","impliedFormat":99},{"version":"52279f70738da349b60a09be1294e3295c7e37189c10deb083ed6b5eb1c86744","impliedFormat":99},{"version":"6fa6950e14d6ca719a29c3ad2fb79d2b03a175af9e3441b3e762cf3b22c92d2b","impliedFormat":99},{"version":"98678d6ac29dfa3f80452de2a87f464dee4908476f817d6f5e0677802ad43f7b","impliedFormat":99},{"version":"b81bc956c1dfc60bfb0513e73aaad2f0331adf19407fdce70379bc7dc02c4e15","impliedFormat":99},{"version":"b96ce25bbc9ee012b65c73821ae59f90a168d1aa62da606948de8bcc561b1fde","impliedFormat":99},{"version":"560a9f24b6bcfc74fc2a18f6e8355aff169d15541c6ebd0ff7e05bdaad2f8949","impliedFormat":99},{"version":"aa375ae5339d3a81d468812021abeb49eafd532086482680f04ff539c93669bf","impliedFormat":99},{"version":"370c1b27c11d16c33a1fc96d8304fa7a2d4397cf849c6681e3c45b3818a933d7","impliedFormat":99},{"version":"b3f766182cb2158c59e513af05994dec67564359d841cdcc7dcbcb16aea3974e","impliedFormat":99},{"version":"142e20882a4b6555b471993a338c2148f555a3bf566eb99fa35a9cd12a49e10d","impliedFormat":99},{"version":"3d509bfd5593e9a158df7d8097e15e4e3115c854b0dfb38254951b8f91b63bb6","impliedFormat":99},{"version":"207ecf493b69ddca525bbbd8f1d120d99d00be1448ae8c0e690526f24dc182ca","impliedFormat":99},{"version":"af6ac8a19dbd05c34feff97d0eae81194fd0be1358bd2366478e9a574492d332","impliedFormat":99},{"version":"346557f6ca397f60089615ebe31c22e9aaa64ed104db53e72858a5b3c97aab66","impliedFormat":99},{"version":"e3427f1af48d46a0ebf78760ab9417773d00be504683ec0dd1c70e6eef3391ba","impliedFormat":99},{"version":"f00b8fc0c970cfd54d4df6047aae216bce4d7a2ceb6610655541a678ac54c57a","impliedFormat":99},{"version":"6006c2501c5f4bd65c31bad2a9ef2895a3c71d9d65a5ded4a85b1c9514c18041","impliedFormat":99},{"version":"1a47bba67b1bec83023979d7972c25f286e293902b6f4fd15c6dee8f55eff714","impliedFormat":99},{"version":"09d4077fd1fd4bf639ffacecb0adb3f375ceaf3d3b947d31f30948176f762d76","impliedFormat":99},{"version":"bdb1cfa306afeae93721bab7efe74258761247a644d85a5a10fb739a8606ab14","impliedFormat":99},{"version":"b249d533a9799a13f724da99defffd318b4acf61a5ad421a1d1ea6f60683a5f0","impliedFormat":99},{"version":"916ffd5eebeed08d4ed0fb342f40305c2a7ff2663250cbf6a965be1f1e8541e4","impliedFormat":99},{"version":"ed82977a9c942b909b2996783b9bbe90fe91391a51c511dc69d7bb20e94a8437","impliedFormat":99},{"version":"85c41b79bab9f8c206d16452e577fcbe186ade544cb526364d7bca5ed9574fcb","impliedFormat":99},{"version":"45124b54526973bc3aafc573815d1a5cebc683b61c48f35aceccfe16aec2aabc","impliedFormat":99},{"version":"5c53e0899c193cd5f80ccb5693a01eba90e17e45cd2248c6412bb2e9825c9e45","impliedFormat":99},{"version":"8f9027142f8676845857e9381a5942f80b1470233ab99e92baa52000d7293af0","impliedFormat":99},{"version":"2eb06cf91facd809e7d7ca413a4f0596e22ad6c009841caa64e5448f248985c1","impliedFormat":99},{"version":"32a5dd335b39a6ead7f14c9ada92c4293d1d48fd1e9a504db28aa03571071e45","impliedFormat":99},{"version":"36bc119be692c5a87c85d755981faa6c83f7cb24918baed60bbd1d0cf958af41","impliedFormat":99},{"version":"1b32ee5b79568242d7a2120006e5fb7b46989f3a86e2c4d609c3e0cd815e7bb1","impliedFormat":99},{"version":"232606d9b702acabb28c11ac3096ec8b164abc7025ab970175b2fb0c7e46fed6","impliedFormat":99},{"version":"6ed8b6e8060c452971256594b8f874c357a469393296e87bb3c2f1d5b4405bd1","impliedFormat":99},{"version":"51b82d4844fc1e4326629d5189ee0306b0e5d8b5986f263572b3056100d411c4","impliedFormat":99},{"version":"9bf6d10700e6702ac26248138a6bbc9f55d582c488be81a41be3b3eadedc936b","impliedFormat":99},{"version":"07a6c18e08abb31b5e4aa18c945c79195d3f453fc9419e54a75b9491c0a63d5b","impliedFormat":99},{"version":"40471ac4c2b6056bdc7ee09f1f279345d8fcc40b8b326eac38cff2df37ece97a","impliedFormat":99},{"version":"63b5fb65f038a3b29d73792b02fa5ce85e3aa9e9f3a695cdd82ef8515ea58ebf","impliedFormat":99},{"version":"6ca4db25e7bb76bda633a36d700bf10a07535a80df1870c375c8469c820448fc","impliedFormat":99},{"version":"6bfed074c652e8043dfc926842ebc05f81db6c0c45b521e4bedc9dd8998df736","impliedFormat":99},{"version":"61b6076ddd630a3ea556e9836d6b8b46d9b1e30b5d4caa338a7c0162cd148e75","impliedFormat":99},{"version":"21f936f4e0645998eb943a0b51ae386fb8c30dc5c2ec3af0202783eb6bc454ff","impliedFormat":99},{"version":"b33ef430acb7969ba485827d1dedd66d315263a57ff29a809cd246ea53d3509e","impliedFormat":99},{"version":"e0dfc3c48a5eb78ea39a9ae0d17c472e1aeb4ee213b65f6d3b54f145fafbbc42","impliedFormat":99},{"version":"694249bf032f13738866491f2f15fe984381fb6f45d7be8e29936c2c11f085d5","impliedFormat":99},{"version":"9b4f6757a9bfca5f00390e50f1b08406e73bc8d1591ec8dd9ff606333f2c5761","impliedFormat":99},{"version":"d70c85a5a0ab30712a9ace0ecb31ff2339cfb3fc209f9a3c578f64f11f7fcd44","impliedFormat":99},{"version":"60dffeffb44ee472d799379d115ef4a5ffb380dd48c45d7bf5e0e3a3224d246e","impliedFormat":99},{"version":"58b7381ddbfd466a014ad08b174df5efbe10193e297ce9da9d30c8d9cfe2c6eb","impliedFormat":99},{"version":"1d385ac55b2dfea2248fc155c4a96f7209a157612cdc1ee23d86d0377afb5834","impliedFormat":99},{"version":"4876b5ff21c8d3d161d00608f8022ebbd8ecc57555cf8e765bbc42ce13ddc378","impliedFormat":99},{"version":"eb90fe18be0b3b5b759ff8f055e9ccb19c6a4287c9061c7a4bb9805968e46498","impliedFormat":99},{"version":"a8e3ca933f3a58c5a3071761a493c760a55305b8f537a47a47a1c7c421ead6df","impliedFormat":99},{"version":"055d5c58abf9c069d88cd9f62a426008adc38258390ceba978fa527fffa54441","impliedFormat":99},{"version":"9b9bceb1f21669bdf904f3f701497ac6f9bca3af06e6b817ceb7336fe8a13ce5","impliedFormat":99},{"version":"eea976052efa564c8567a9c2905505854e59baea57831348bb97580ec12581aa","impliedFormat":99},{"version":"3633132e5cf6907c1de6fcceb417ec93ed189f4e44d1592ddfbed15d3028a642","impliedFormat":99},{"version":"35ad431bddcdd2734acb5b2b0d0da75aa3eb8b2e16bc83cdc16a3d12b4b9967b","impliedFormat":99},{"version":"bdfab105e5c6c095171d0721a84fafab796b301b7f5129158e6e7292b26a4410","impliedFormat":99},{"version":"d3f2d733b25bb7dbc29a22679abb5e8bd7235f491aec7c919272b9a824818bfa","impliedFormat":99},{"version":"816958f37db39f1d6352d585cb545c46093b56be9a9f7b49714b4e7fe75af8e1","impliedFormat":99},{"version":"015c3d99325ff0f00694781a49696e232eed7b9e81de17be2df3744fa816f0f4","impliedFormat":99},{"version":"6651e0e8d0a95ccab2cd3b24df4ea6c33da06499f588938f8758d2d3e822090a","impliedFormat":99},{"version":"43214bffa2a064162dc1c709f7a7b3d0d8fb5aff2267d092e7291b1b044010c6","impliedFormat":99},{"version":"c3ceb3c63334d4f5f85a03477ca9b91c2580cfd066094a1b58a9139bbe7eacb9","impliedFormat":99},{"version":"8a6c4b0864ddb785d14b36fd4fba10d56c5207d2951e2309c5616d80636e33a6","impliedFormat":99},{"version":"d44a0baed7a6e69366547f41056652efc7e8f3ba445696daa62469dc9703e3a9","impliedFormat":99},{"version":"51d099f542f4a6040d5bbf85c21f50afd68ff03c357ab01bc9373bd5c81878c7","impliedFormat":99},{"version":"00a2ff8223ad17bacbce81edb4fbee1ae7d8430c46cf1a86936642c14a6c0407","impliedFormat":99},{"version":"fee95edeeed4515bccf52a2f4e2c53c088e5755ce7747667d0a60abc27c6542f","impliedFormat":99},{"version":"f083f36f2504fe7d9e8c78c926931fcc7196cba21c77c983e59bf61f5a8be488","impliedFormat":99},{"version":"9794fd5a3d2183b5a987c6b02cf3732fdf1ed97b6f66d1c858b50a318069b637","impliedFormat":99},{"version":"74c194a9e7a5a5880e675fa8c22bc7d06e10c97c868117d145734aacfbda7381","impliedFormat":99},{"version":"03ec2b93674e367a79349fbfa6f130f47649cc4ef4d950e421a5ba53f828d675","signature":"538048596c9a15d056d19af2a40bfaef6f2afd080a46f0c60ac7ee48010dd6dd","impliedFormat":99},{"version":"5003200539f0f6ffbc55bbbd4190fc4ee8c4ebef02046391078564cf7a891eac","signature":"7ed15593b3caed22991b12ab2d877d0109dcfa14e37a512718fa7c0cfac105cb","impliedFormat":99},{"version":"9bac81fceb118aa29fa0873104fda5946f25c647e991643b142f6493c8f19eef","signature":"766ff31d269cbb4ace7e3712d66a2a89e335697eb5d817bc851f4acf692341c1","impliedFormat":99},{"version":"1694052dc556edf4db2c648739d1bc7e6d6afc9f12a2f09167e7db55c04aefad","signature":"ea0b11fc2006ffc9353eb87547e39dc89075c523d021a5a8ff1ee0ddc627d8a0","impliedFormat":99},{"version":"a09e0959cde3d9303e6695cc905209b1cb0b048ada1380abb5fcb5c81658c939","signature":"ffc77cb2a9bbd2136aa8a3884590339afd733eed95234d45998f6c09b7d1f667","impliedFormat":99},{"version":"52dfe8bc0ebda558c6c14a1d944664e7d1171feeb78e6c3ade01fdafa1db9f93","impliedFormat":99},{"version":"4a2986d38ffa0d5b6a3fa349c6c039c2691212777ad84114c7897d6b782ad6c9","affectsGlobalScope":true,"impliedFormat":1}],"root":[[194,199]],"options":{"composite":true,"declaration":true,"declarationDir":"./esm","declarationMap":true,"esModuleInterop":true,"exactOptionalPropertyTypes":true,"module":199,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitOverride":true,"noImplicitReturns":true,"noImplicitThis":true,"noUncheckedIndexedAccess":true,"noUncheckedSideEffectImports":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./esm","rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"stripInternal":true,"target":99,"verbatimModuleSyntax":true},"referencedMap":[[196,1],[199,2],[198,3],[197,4],[175,5],[131,6],[138,7],[139,8],[174,9],[140,10],[141,11],[156,12],[147,13],[143,14],[145,15],[146,16],[142,17],[144,17],[154,18],[153,19],[149,20],[150,15],[151,21],[152,22],[148,17],[172,23],[166,24],[167,25],[168,26],[169,22],[170,22],[164,27],[165,28],[171,29],[173,10],[177,30],[179,31],[180,32],[183,33],[176,34],[181,35],[182,36],[184,37],[193,38],[191,39],[187,40],[185,41],[186,41],[192,42],[188,41],[189,43],[190,44],[157,45],[163,46],[134,47],[133,48],[137,49],[135,50],[136,51],[103,52],[102,53],[104,54],[110,55],[109,56],[105,57],[106,57],[107,57],[108,57],[116,58],[118,59],[119,54],[129,60],[120,54],[115,61],[114,62],[111,63],[112,58],[113,58],[121,64],[122,54],[123,54],[101,65],[124,66],[125,67],[127,68],[117,69],[128,69],[85,70],[91,71],[94,72],[95,72],[89,73],[90,74],[88,75],[87,76],[99,77],[96,71],[86,70],[97,78],[93,79],[92,80],[84,81]],"latestChangedDtsFile":"./esm/index.d.ts","version":"5.8.3"}