diff --git a/lib/bindings/hci/misc/Hci.d.ts.map b/lib/bindings/hci/misc/Hci.d.ts.map index e2713ec6..516700f2 100644 --- a/lib/bindings/hci/misc/Hci.d.ts.map +++ b/lib/bindings/hci/misc/Hci.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Hci.d.ts","sourceRoot":"","sources":["../../../../src/bindings/hci/misc/Hci.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Hci.d.ts","sourceRoot":"","sources":["../../../../src/bindings/hci/misc/Hci.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAQ9C,UAAU,SAAS;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACtB;AAsBD,UAAU,SAAS;IAClB,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhE,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,KAAK,IAAI,CAAC;IACpE,cAAc,EAAE,CACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,KACtB,IAAI,CAAC;IACV,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,KAAK,IAAI,CAAC;IACtH,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7E,iBAAiB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAElH,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpD,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;AAED,qBAAa,GAAI,SAAQ,YAAY,CAAC,SAAS,CAAC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAEjD,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAEhB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IAG3B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,OAAO,CAAsB;IAErC,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,cAAc,CAAyC;gBAE5C,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,UAAU,GAAE,MAAwB;IAiB1G,OAAO,CAAC,MAAM,CAAC,YAAY;WAmBb,aAAa,IAAI,SAAS,EAAE;IAK1C,OAAO,CAAC,cAAc,CAAS;IACxB,IAAI,CAAC,gBAAgB,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBhD,OAAO,CAAC,WAAW;IAoCnB,OAAO,CAAC,gBAAgB,CAqDtB;IAEK,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAO5D,OAAO,IAAI,IAAI;IAiBtB,OAAO,CAAC,WAAW;IAoFnB,OAAO,CAAC,eAAe;YAoBT,YAAY;IAgBb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAarB,gBAAgB;YAoBhB,UAAU;YAqBV,cAAc;YAgBd,mBAAmB;YAkBnB,oBAAoB;IAiBrB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBlC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhF,YAAY,CAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,WAAW,SAAS,EACpB,WAAW,SAAS,EACpB,OAAO,SAAS,EAChB,kBAAkB,SAAS,GACzB,OAAO,CAAC,MAAM,CAAC;IAyGL,YAAY,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAalD,YAAY,CACxB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,GACxB,OAAO,CAAC,IAAI,CAAC;IAsBH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,SAAqC,GAAG,OAAO,CAAC,IAAI,CAAC;IA8DtF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB/C,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAuCzE,OAAO,CAAC,qBAAqB;IAkBhB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB/B,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBjC,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhD,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/C,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBnE,OAAO,CAAC,YAAY,CAsBlB;IAEF,OAAO,CAAC,cAAc;IAqCtB,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,oBAAoB;IAgB5B,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,yBAAyB;IAmCjC,OAAO,CAAC,uBAAuB;IAoB/B,OAAO,CAAC,8BAA8B;IAyBtC,OAAO,CAAC,yBAAyB;IAqBjC,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,gBAAgB;IAiDxB,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,aAAa,CAenB;CACF"} \ No newline at end of file diff --git a/lib/bindings/hci/misc/Hci.js b/lib/bindings/hci/misc/Hci.js index eb8b4cce..c6e2e8c5 100644 --- a/lib/bindings/hci/misc/Hci.js +++ b/lib/bindings/hci/misc/Hci.js @@ -130,7 +130,20 @@ class Hci extends tiny_typed_emitter_1.TypedEmitter { this.currentCmd = null; } static createSocket() { - return new (require(`@modum-io/bluetooth-hci-socket`))(); + let Socket; + try { + Socket = require(`@modum-io/bluetooth-hci-socket`); + } + catch (_a) { + try { + Socket = require(`@abandonware/bluetooth-hci-socket`); + } + catch (_b) { } + } + if (!Socket) { + throw new Error(`Could not find any socket implementations. Please install @modum-io/bluetooth-hci-socket or @abandonware/bluetooth-hci-socket`); + } + return new Socket(); } static getDeviceList() { const socket = Hci.createSocket(); diff --git a/lib/bindings/hci/misc/Hci.js.map b/lib/bindings/hci/misc/Hci.js.map index 15fbbc8f..c7ea98ee 100644 --- a/lib/bindings/hci/misc/Hci.js.map +++ b/lib/bindings/hci/misc/Hci.js.map @@ -1 +1 @@ -{"version":3,"file":"Hci.js","sourceRoot":"","sources":["../../../../src/bindings/hci/misc/Hci.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Hci.js","sourceRoot":"","sources":["../../../../src/bindings/hci/misc/Hci.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/bindings/hci/misc/Hci.ts b/src/bindings/hci/misc/Hci.ts index 1ee3ad05..45b2479f 100644 --- a/src/bindings/hci/misc/Hci.ts +++ b/src/bindings/hci/misc/Hci.ts @@ -110,7 +110,22 @@ export class Hci extends TypedEmitter { } private static createSocket() { - return new (require(`@modum-io/bluetooth-hci-socket`))(); + let Socket; + try { + Socket = require(`@modum-io/bluetooth-hci-socket`); + } catch { + try { + Socket = require(`@abandonware/bluetooth-hci-socket`); + } catch {} + } + + if (!Socket) { + throw new Error( + `Could not find any socket implementations. Please install @modum-io/bluetooth-hci-socket or @abandonware/bluetooth-hci-socket` + ); + } + + return new Socket(); } public static getDeviceList(): HciDevice[] {