livekit-client 2.1.0 → 2.1.1
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/livekit-client.esm.mjs +2062 -2102
- package/dist/livekit-client.esm.mjs.map +1 -1
- package/dist/livekit-client.umd.js +1 -1
- package/dist/livekit-client.umd.js.map +1 -1
- package/dist/src/room/PCTransport.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts +2 -3
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/room/utils.d.ts +1 -1
- package/dist/src/room/utils.d.ts.map +1 -1
- package/dist/src/utils/browserParser.d.ts +1 -0
- package/dist/src/utils/browserParser.d.ts.map +1 -1
- package/dist/ts4.2/src/room/RTCEngine.d.ts +2 -3
- package/dist/ts4.2/src/room/utils.d.ts +1 -1
- package/dist/ts4.2/src/utils/browserParser.d.ts +1 -0
- package/package.json +1 -1
- package/src/room/PCTransport.ts +0 -2
- package/src/room/RTCEngine.ts +7 -61
- package/src/room/participant/LocalParticipant.ts +3 -5
- package/src/room/utils.ts +29 -27
- package/src/utils/browserParser.test.ts +4 -0
- package/src/utils/browserParser.ts +11 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PCTransport.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransport.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,gBAAgB;AAChB,UAAU,gBAAgB;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAUD,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,gBAAgB;AAChB,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,YAAY;IACnD,OAAO,CAAC,GAAG,CAA2B;IAEtC,OAAO,KAAK,EAAE,GAKb;IAED,OAAO,CAAC,MAAM,CAAC,CAAmB;IAElC,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,aAAa,CAAgB;IAErC,iBAAiB,EAAE,mBAAmB,EAAE,CAAM;IAE9C,aAAa,EAAE,OAAO,CAAS;IAE/B,WAAW,EAAE,OAAO,CAAS;IAE7B,aAAa,EAAE,gBAAgB,EAAE,CAAM;IAEvC,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAEhC,cAAc,EAAE,MAAM,EAAE,CAAM;IAE9B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAErD,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,CAAC;IAEtD,mBAAmB,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,CAAC;IAE1C,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAElE,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAEpE,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAE5D,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAElD,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;gBAE1B,MAAM,CAAC,EAAE,gBAAgB,EAAE,aAAa,GAAE,aAAkB;IAQxE,OAAO,CAAC,QAAQ;IA+BhB,OAAO,KAAK,UAAU,GAIrB;IAED,IAAI,cAAc,IAAI,OAAO,CAK5B;IAEK,eAAe,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9D,oBAAoB,CAAC,EAAE,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoFxE,SAAS;iDAAiC,KAAK,KAAK,IAAI;;MAWhD;IAEF,kBAAkB,CAAC,OAAO,CAAC,EAAE,eAAe;IA8E5C,kBAAkB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAY9D,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB;IAIpE,cAAc,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB;IAIzF,QAAQ,CAAC,KAAK,EAAE,gBAAgB;IAOhC,oBAAoB,CAAC,IAAI,EAAE,gBAAgB;IAI3C,gBAAgB,CAAC,SAAS,EAAE,gBAAgB;IAO5C,cAAc,IAAI,OAAO;IAIzB,WAAW,CAAC,MAAM,EAAE,YAAY;IAIhC,kBAAkB;IAIlB,qBAAqB;IAIrB,kBAAkB;IAIlB,eAAe;IAIf,UAAU;IAIV,mBAAmB;IAInB,oBAAoB;IAIpB,QAAQ;IAIF,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAqCxD,KAAK,aAiBH;YAEY,YAAY;
|
1
|
+
{"version":3,"file":"PCTransport.d.ts","sourceRoot":"","sources":["../../../src/room/PCTransport.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMtC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,gBAAgB;AAChB,UAAU,gBAAgB;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAUD,eAAO,MAAM,QAAQ;;;;CAIX,CAAC;AAEX,gBAAgB;AAChB,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,YAAY;IACnD,OAAO,CAAC,GAAG,CAA2B;IAEtC,OAAO,KAAK,EAAE,GAKb;IAED,OAAO,CAAC,MAAM,CAAC,CAAmB;IAElC,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,aAAa,CAAgB;IAErC,iBAAiB,EAAE,mBAAmB,EAAE,CAAM;IAE9C,aAAa,EAAE,OAAO,CAAS;IAE/B,WAAW,EAAE,OAAO,CAAS;IAE7B,aAAa,EAAE,gBAAgB,EAAE,CAAM;IAEvC,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAEhC,cAAc,EAAE,MAAM,EAAE,CAAM;IAE9B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,IAAI,CAAC;IAErD,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,CAAC;IAEtD,mBAAmB,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,CAAC;IAE1C,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAElE,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAEpE,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAE5D,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAElD,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;gBAE1B,MAAM,CAAC,EAAE,gBAAgB,EAAE,aAAa,GAAE,aAAkB;IAQxE,OAAO,CAAC,QAAQ;IA+BhB,OAAO,KAAK,UAAU,GAIrB;IAED,IAAI,cAAc,IAAI,OAAO,CAK5B;IAEK,eAAe,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9D,oBAAoB,CAAC,EAAE,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoFxE,SAAS;iDAAiC,KAAK,KAAK,IAAI;;MAWhD;IAEF,kBAAkB,CAAC,OAAO,CAAC,EAAE,eAAe;IA8E5C,kBAAkB,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAY9D,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB;IAIpE,cAAc,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,qBAAqB;IAIzF,QAAQ,CAAC,KAAK,EAAE,gBAAgB;IAOhC,oBAAoB,CAAC,IAAI,EAAE,gBAAgB;IAI3C,gBAAgB,CAAC,SAAS,EAAE,gBAAgB;IAO5C,cAAc,IAAI,OAAO;IAIzB,WAAW,CAAC,MAAM,EAAE,YAAY;IAIhC,kBAAkB;IAIlB,qBAAqB;IAIrB,kBAAkB;IAIlB,eAAe;IAIf,UAAU;IAIV,mBAAmB;IAInB,oBAAoB;IAIpB,QAAQ;IAIF,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAqCxD,KAAK,aAiBH;YAEY,YAAY;CAkD3B"}
|
@@ -8,10 +8,10 @@ import { PCTransportManager } from './PCTransportManager';
|
|
8
8
|
import type { RegionUrlProvider } from './RegionUrlProvider';
|
9
9
|
import type LocalTrack from './track/LocalTrack';
|
10
10
|
import type LocalTrackPublication from './track/LocalTrackPublication';
|
11
|
-
import
|
11
|
+
import LocalVideoTrack from './track/LocalVideoTrack';
|
12
12
|
import type { SimulcastTrackInfo } from './track/LocalVideoTrack';
|
13
13
|
import type RemoteTrackPublication from './track/RemoteTrackPublication';
|
14
|
-
import { Track } from './track/Track';
|
14
|
+
import type { Track } from './track/Track';
|
15
15
|
import type { TrackPublishOptions, VideoCodec } from './track/options';
|
16
16
|
declare const RTCEngine_base: new () => TypedEventEmitter<EngineEventCallbacks>;
|
17
17
|
/** @internal */
|
@@ -90,7 +90,6 @@ export default class RTCEngine extends RTCEngine_base {
|
|
90
90
|
private handleDataMessage;
|
91
91
|
private handleDataError;
|
92
92
|
private handleBufferedAmountLow;
|
93
|
-
private setPreferredCodec;
|
94
93
|
createSender(track: LocalTrack, opts: TrackPublishOptions, encodings?: RTCRtpEncodingParameters[]): Promise<RTCRtpSender>;
|
95
94
|
createSimulcastSender(track: LocalVideoTrack, simulcastTrack: SimulcastTrackInfo, opts: TrackPublishOptions, encodings?: RTCRtpEncodingParameters[]): Promise<RTCRtpSender | undefined>;
|
96
95
|
private createTransceiverRTCRtpSender;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RTCEngine.d.ts","sourceRoot":"","sources":["../../../src/room/RTCEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAGpB,KAAK,uBAAuB,EAE5B,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,KAAK,YAAY,EAEjB,eAAe,EAGf,IAAI,IAAI,SAAS,EAEjB,WAAW,EACX,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EAEzB,SAAS,EAET,wBAAwB,EAExB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,iBAAiB,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,YAAY,EAGb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,WAAyB,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,sBAAsB,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAW7D,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AACvE,OAAO,
|
1
|
+
{"version":3,"file":"RTCEngine.d.ts","sourceRoot":"","sources":["../../../src/room/RTCEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EAGpB,KAAK,uBAAuB,EAE5B,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,KAAK,YAAY,EAEjB,eAAe,EAGf,IAAI,IAAI,SAAS,EAEjB,WAAW,EACX,KAAK,iBAAiB,EACtB,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EAEzB,SAAS,EAET,wBAAwB,EAExB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,iBAAiB,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,YAAY,EAGb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,WAAyB,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,sBAAsB,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAW7D,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AACvE,OAAO,eAAe,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,sBAAsB,MAAM,gCAAgC,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;wCAmBL,kBAAkB,oBAAoB,CAAC;AADzG,gBAAgB;AAChB,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,cAAmE;IAuF5F,OAAO,CAAC,OAAO;IAtF3B,MAAM,EAAE,YAAY,CAAC;IAErB,SAAS,EAAE,gBAAgB,CAAM;IAEjC,qBAAqB,EAAE,MAAM,CAAmD;IAEhF,mBAAmB,EAAE,OAAO,CAAS;IAErC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAE/B;;OAEG;IACH,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAElC,IAAI,QAAQ,YAEX;IAED,IAAI,gBAAgB,YAEnB;IAED,OAAO,CAAC,OAAO,CAAC,CAAiB;IAGjC,OAAO,CAAC,UAAU,CAAC,CAAiB;IAEpC,OAAO,CAAC,UAAU,CAAC,CAAiB;IAEpC,OAAO,CAAC,cAAc,CAAgC;IAGtD,OAAO,CAAC,aAAa,CAAC,CAAiB;IAEvC,OAAO,CAAC,iBAAiB,CAAkB;IAE3C,OAAO,CAAC,OAAO,CAAwB;IAEvC,OAAO,CAAC,SAAS,CAAiB;IAElC,OAAO,CAAC,qBAAqB,CAEtB;IAGP,OAAO,CAAC,GAAG,CAAC,CAAS;IAErB,OAAO,CAAC,KAAK,CAAC,CAAS;IAEvB,OAAO,CAAC,UAAU,CAAC,CAAgB;IAEnC,OAAO,CAAC,iBAAiB,CAAa;IAEtC,OAAO,CAAC,cAAc,CAAa;IAEnC,OAAO,CAAC,mBAAmB,CAAC,CAAsB;IAElD,OAAO,CAAC,mBAAmB,CAAkB;IAE7C,OAAO,CAAC,eAAe,CAAkB;IAEzC,OAAO,CAAC,gBAAgB,CAAC,CAAgC;IAEzD,OAAO,CAAC,cAAc,CAAC,CAAS;IAEhC,yEAAyE;IACzE,OAAO,CAAC,YAAY,CAAa;IAEjC,yEAAyE;IACzE,OAAO,CAAC,eAAe,CAAa;IAEpC,OAAO,CAAC,WAAW,CAAQ;IAE3B,OAAO,CAAC,eAAe,CAAQ;IAE/B,OAAO,CAAC,cAAc,CAAkB;IAExC,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAE9C,OAAO,CAAC,GAAG,CAAO;IAElB,OAAO,CAAC,aAAa,CAAgB;IAErC,OAAO,CAAC,0BAA0B,CAA4B;gBAE1C,OAAO,EAAE,mBAAmB;IA8BhD,gBAAgB;IAChB,IAAI,UAAU;;;;;MAOb;IAEK,IAAI,CACR,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,aAAa,EACnB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,YAAY,CAAC;IAyClB,KAAK;IAmBL,sBAAsB;IAyBtB,aAAa;IAKnB,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAyBlD;;;;;OAKG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IAiB1C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAIjD,IAAI,wBAAwB,IAAI,MAAM,GAAG,SAAS,CAEjD;IAEK,yBAAyB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAK9D,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB;YAIlC,SAAS;IA0EvB,OAAO,CAAC,0BAA0B;IA+ElC,OAAO,CAAC,oBAAoB;IAyC5B,OAAO,CAAC,kBAAkB;IA0C1B,OAAO,CAAC,iBAAiB,CAavB;IAEF,OAAO,CAAC,iBAAiB,CAwBvB;IAEF,OAAO,CAAC,eAAe,CAarB;IAEF,OAAO,CAAC,uBAAuB,CAM7B;IAEI,YAAY,CAChB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,mBAAmB,EACzB,SAAS,CAAC,EAAE,wBAAwB,EAAE;IAclC,qBAAqB,CACzB,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,kBAAkB,EAClC,IAAI,EAAE,mBAAmB,EACzB,SAAS,CAAC,EAAE,wBAAwB,EAAE;YAc1B,6BAA6B;YAgC7B,gCAAgC;YAyBhC,kBAAkB;IAUhC,OAAO,CAAC,gBAAgB,CA+CtB;YAEY,gBAAgB;IAwD9B,OAAO,CAAC,iBAAiB;YAWX,iBAAiB;YAiEjB,gBAAgB;IAiExB,0BAA0B,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,eAAe;YAOtE,oBAAoB;IAkBlC,gBAAgB,sBAgBd;IAGI,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe;IAc9D,OAAO,CAAC,2BAA2B,CAMjC;IAEF,OAAO,CAAC,iBAAiB,CAKvB;IAEF;;OAEG;IACG,4BAA4B,CAChC,IAAI,EAAE,eAAe,EACrB,UAAU,GAAE,OAAgC;YA0ChC,wBAAwB;IAQtC,eAAe,IAAI,OAAO;IAgB1B,gBAAgB;IACV,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAqDhC,kBAAkB,CAAC,IAAI,EAAE,eAAe,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS;IAkBpF,gBAAgB;IAChB,aAAa,CAAC,YAAY,EAAE,sBAAsB,EAAE,EAAE,WAAW,EAAE,qBAAqB,EAAE;IAqD1F,QAAQ;IAKR,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,mBAAmB,CAMzB;IAEF,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,wBAAwB;CAKjC;AAID,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAClD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,eAAe,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAClD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,CACf,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,WAAW,EACpB,QAAQ,CAAC,EAAE,cAAc,KACtB,IAAI,CAAC;IACV,oBAAoB,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC7D,kBAAkB,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IAC5E,iBAAiB,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7E,gBAAgB;IAChB,gBAAgB,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAC/D,iBAAiB,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;IAC7D,qBAAqB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACvE,iBAAiB,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,IAAI,CAAC;IACtD,UAAU,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,uBAAuB,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IACnE,eAAe,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IACzD,kBAAkB,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACxD,iBAAiB,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACxD,4BAA4B,EAAE,CAAC,MAAM,EAAE,4BAA4B,KAAK,IAAI,CAAC;IAC7E,uBAAuB,EAAE,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;IACnE,qBAAqB,EAAE,CAAC,mBAAmB,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC/E,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACvD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
|
package/dist/src/room/utils.d.ts
CHANGED
@@ -15,13 +15,13 @@ export declare function supportsAV1(): boolean;
|
|
15
15
|
export declare function supportsVP9(): boolean;
|
16
16
|
export declare function isSVCCodec(codec?: string): boolean;
|
17
17
|
export declare function supportsSetSinkId(elm?: HTMLMediaElement): boolean;
|
18
|
-
export declare function supportsSetCodecPreferences(transceiver: RTCRtpTransceiver): boolean;
|
19
18
|
export declare function isBrowserSupported(): boolean;
|
20
19
|
export declare function isFireFox(): boolean;
|
21
20
|
export declare function isChromiumBased(): boolean;
|
22
21
|
export declare function isSafari(): boolean;
|
23
22
|
export declare function isSafari17(): boolean;
|
24
23
|
export declare function isMobile(): boolean;
|
24
|
+
export declare function isE2EESimulcastSupported(): boolean | undefined;
|
25
25
|
export declare function isWeb(): boolean;
|
26
26
|
export declare function isReactNative(): boolean;
|
27
27
|
export declare function isCloud(serverUrl: URL): boolean;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/room/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/room/utils.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"browserParser.d.ts","sourceRoot":"","sources":["../../../src/utils/browserParser.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAChE,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,YAAY,CAAC;
|
1
|
+
{"version":3,"file":"browserParser.d.ts","sourceRoot":"","sources":["../../../src/utils/browserParser.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAChE,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAIF;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,UAAO,GAAG,cAAc,GAAG,SAAS,CAUvF"}
|
@@ -9,10 +9,10 @@ import { PCTransportManager } from './PCTransportManager';
|
|
9
9
|
import type { RegionUrlProvider } from './RegionUrlProvider';
|
10
10
|
import type LocalTrack from './track/LocalTrack';
|
11
11
|
import type LocalTrackPublication from './track/LocalTrackPublication';
|
12
|
-
import
|
12
|
+
import LocalVideoTrack from './track/LocalVideoTrack';
|
13
13
|
import type { SimulcastTrackInfo } from './track/LocalVideoTrack';
|
14
14
|
import type RemoteTrackPublication from './track/RemoteTrackPublication';
|
15
|
-
import { Track } from './track/Track';
|
15
|
+
import type { Track } from './track/Track';
|
16
16
|
import type { TrackPublishOptions, VideoCodec } from './track/options';
|
17
17
|
declare const RTCEngine_base: new () => TypedEventEmitter<EngineEventCallbacks>;
|
18
18
|
/** @internal */
|
@@ -91,7 +91,6 @@ export default class RTCEngine extends RTCEngine_base {
|
|
91
91
|
private handleDataMessage;
|
92
92
|
private handleDataError;
|
93
93
|
private handleBufferedAmountLow;
|
94
|
-
private setPreferredCodec;
|
95
94
|
createSender(track: LocalTrack, opts: TrackPublishOptions, encodings?: RTCRtpEncodingParameters[]): Promise<RTCRtpSender>;
|
96
95
|
createSimulcastSender(track: LocalVideoTrack, simulcastTrack: SimulcastTrackInfo, opts: TrackPublishOptions, encodings?: RTCRtpEncodingParameters[]): Promise<RTCRtpSender | undefined>;
|
97
96
|
private createTransceiverRTCRtpSender;
|
@@ -15,13 +15,13 @@ export declare function supportsAV1(): boolean;
|
|
15
15
|
export declare function supportsVP9(): boolean;
|
16
16
|
export declare function isSVCCodec(codec?: string): boolean;
|
17
17
|
export declare function supportsSetSinkId(elm?: HTMLMediaElement): boolean;
|
18
|
-
export declare function supportsSetCodecPreferences(transceiver: RTCRtpTransceiver): boolean;
|
19
18
|
export declare function isBrowserSupported(): boolean;
|
20
19
|
export declare function isFireFox(): boolean;
|
21
20
|
export declare function isChromiumBased(): boolean;
|
22
21
|
export declare function isSafari(): boolean;
|
23
22
|
export declare function isSafari17(): boolean;
|
24
23
|
export declare function isMobile(): boolean;
|
24
|
+
export declare function isE2EESimulcastSupported(): boolean | undefined;
|
25
25
|
export declare function isWeb(): boolean;
|
26
26
|
export declare function isReactNative(): boolean;
|
27
27
|
export declare function isCloud(serverUrl: URL): boolean;
|
package/package.json
CHANGED
package/src/room/PCTransport.ts
CHANGED
@@ -474,8 +474,6 @@ export default class PCTransport extends EventEmitter {
|
|
474
474
|
await this.pc.setLocalDescription(sd);
|
475
475
|
}
|
476
476
|
} catch (e) {
|
477
|
-
// this error cannot always be caught.
|
478
|
-
// If the local description has a setCodecPreferences error, this error will be uncaught
|
479
477
|
let msg = 'unknown error';
|
480
478
|
if (e instanceof Error) {
|
481
479
|
msg = e.message;
|
package/src/room/RTCEngine.ts
CHANGED
@@ -53,22 +53,14 @@ import { EngineEvent } from './events';
|
|
53
53
|
import CriticalTimers from './timers';
|
54
54
|
import type LocalTrack from './track/LocalTrack';
|
55
55
|
import type LocalTrackPublication from './track/LocalTrackPublication';
|
56
|
-
import
|
56
|
+
import LocalVideoTrack from './track/LocalVideoTrack';
|
57
57
|
import type { SimulcastTrackInfo } from './track/LocalVideoTrack';
|
58
58
|
import type RemoteTrackPublication from './track/RemoteTrackPublication';
|
59
|
-
import { Track } from './track/Track';
|
59
|
+
import type { Track } from './track/Track';
|
60
60
|
import type { TrackPublishOptions, VideoCodec } from './track/options';
|
61
61
|
import { getTrackPublicationInfo } from './track/utils';
|
62
62
|
import type { LoggerOptions } from './types';
|
63
|
-
import {
|
64
|
-
Mutex,
|
65
|
-
isVideoCodec,
|
66
|
-
isWeb,
|
67
|
-
sleep,
|
68
|
-
supportsAddTrack,
|
69
|
-
supportsSetCodecPreferences,
|
70
|
-
supportsTransceiver,
|
71
|
-
} from './utils';
|
63
|
+
import { Mutex, isVideoCodec, isWeb, sleep, supportsAddTrack, supportsTransceiver } from './utils';
|
72
64
|
|
73
65
|
const lossyDataChannel = '_lossy';
|
74
66
|
const reliableDataChannel = '_reliable';
|
@@ -671,51 +663,6 @@ export default class RTCEngine extends (EventEmitter as new () => TypedEventEmit
|
|
671
663
|
this.updateAndEmitDCBufferStatus(channelKind);
|
672
664
|
};
|
673
665
|
|
674
|
-
private setPreferredCodec(
|
675
|
-
transceiver: RTCRtpTransceiver,
|
676
|
-
kind: Track.Kind,
|
677
|
-
videoCodec: VideoCodec,
|
678
|
-
) {
|
679
|
-
if (!('getCapabilities' in RTCRtpReceiver)) {
|
680
|
-
return;
|
681
|
-
}
|
682
|
-
// when setting codec preferences, the capabilites need to be read from the RTCRtpReceiver
|
683
|
-
const cap = RTCRtpReceiver.getCapabilities(kind);
|
684
|
-
if (!cap) return;
|
685
|
-
this.log.debug('get receiver capabilities', { ...this.logContext, cap });
|
686
|
-
const matched: RTCRtpCodecCapability[] = [];
|
687
|
-
const partialMatched: RTCRtpCodecCapability[] = [];
|
688
|
-
const unmatched: RTCRtpCodecCapability[] = [];
|
689
|
-
cap.codecs.forEach((c) => {
|
690
|
-
const codec = c.mimeType.toLowerCase();
|
691
|
-
if (codec === 'audio/opus') {
|
692
|
-
matched.push(c);
|
693
|
-
return;
|
694
|
-
}
|
695
|
-
const matchesVideoCodec = codec === `video/${videoCodec}`;
|
696
|
-
if (!matchesVideoCodec) {
|
697
|
-
unmatched.push(c);
|
698
|
-
return;
|
699
|
-
}
|
700
|
-
// for h264 codecs that have sdpFmtpLine available, use only if the
|
701
|
-
// profile-level-id is 42e01f for cross-browser compatibility
|
702
|
-
if (videoCodec === 'h264') {
|
703
|
-
if (c.sdpFmtpLine && c.sdpFmtpLine.includes('profile-level-id=42e01f')) {
|
704
|
-
matched.push(c);
|
705
|
-
} else {
|
706
|
-
partialMatched.push(c);
|
707
|
-
}
|
708
|
-
return;
|
709
|
-
}
|
710
|
-
|
711
|
-
matched.push(c);
|
712
|
-
});
|
713
|
-
|
714
|
-
if (supportsSetCodecPreferences(transceiver)) {
|
715
|
-
transceiver.setCodecPreferences(matched.concat(partialMatched, unmatched));
|
716
|
-
}
|
717
|
-
}
|
718
|
-
|
719
666
|
async createSender(
|
720
667
|
track: LocalTrack,
|
721
668
|
opts: TrackPublishOptions,
|
@@ -766,6 +713,10 @@ export default class RTCEngine extends (EventEmitter as new () => TypedEventEmit
|
|
766
713
|
streams.push(track.mediaStream);
|
767
714
|
}
|
768
715
|
|
716
|
+
if (track instanceof LocalVideoTrack) {
|
717
|
+
track.codec = opts.videoCodec;
|
718
|
+
}
|
719
|
+
|
769
720
|
const transceiverInit: RTCRtpTransceiverInit = { direction: 'sendonly', streams };
|
770
721
|
if (encodings) {
|
771
722
|
transceiverInit.sendEncodings = encodings;
|
@@ -776,10 +727,6 @@ export default class RTCEngine extends (EventEmitter as new () => TypedEventEmit
|
|
776
727
|
transceiverInit,
|
777
728
|
);
|
778
729
|
|
779
|
-
if (track.kind === Track.Kind.Video && opts.videoCodec) {
|
780
|
-
this.setPreferredCodec(transceiver, track.kind, opts.videoCodec);
|
781
|
-
track.codec = opts.videoCodec;
|
782
|
-
}
|
783
730
|
return transceiver.sender;
|
784
731
|
}
|
785
732
|
|
@@ -804,7 +751,6 @@ export default class RTCEngine extends (EventEmitter as new () => TypedEventEmit
|
|
804
751
|
if (!opts.videoCodec) {
|
805
752
|
return;
|
806
753
|
}
|
807
|
-
this.setPreferredCodec(transceiver, track.kind, opts.videoCodec);
|
808
754
|
track.setSimulcastTrackSender(opts.videoCodec, transceiver.sender);
|
809
755
|
return transceiver.sender;
|
810
756
|
}
|
@@ -40,9 +40,9 @@ import {
|
|
40
40
|
import type { DataPublishOptions } from '../types';
|
41
41
|
import {
|
42
42
|
Future,
|
43
|
+
isE2EESimulcastSupported,
|
43
44
|
isFireFox,
|
44
45
|
isSVCCodec,
|
45
|
-
isSafari,
|
46
46
|
isSafari17,
|
47
47
|
isWeb,
|
48
48
|
supportsAV1,
|
@@ -621,10 +621,9 @@ export default class LocalParticipant extends Participant {
|
|
621
621
|
...options,
|
622
622
|
};
|
623
623
|
|
624
|
-
|
625
|
-
if (isSafari() && this.roomOptions.e2ee) {
|
624
|
+
if (!isE2EESimulcastSupported() && this.roomOptions.e2ee) {
|
626
625
|
this.log.info(
|
627
|
-
`End-to-end encryption is set up, simulcast publishing will be disabled on Safari`,
|
626
|
+
`End-to-end encryption is set up, simulcast publishing will be disabled on Safari versions and iOS browsers running iOS < v17.2`,
|
628
627
|
{
|
629
628
|
...this.logContext,
|
630
629
|
},
|
@@ -827,7 +826,6 @@ export default class LocalParticipant extends Participant {
|
|
827
826
|
...getLogContextFromTrack(track),
|
828
827
|
codec: updatedCodec,
|
829
828
|
});
|
830
|
-
/* @ts-ignore */
|
831
829
|
opts.videoCodec = updatedCodec;
|
832
830
|
|
833
831
|
// recompute encodings since bitrates/etc could have changed
|
package/src/room/utils.ts
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
import { ClientInfo, ClientInfo_SDK } from '@livekit/protocol';
|
2
|
-
import type { DetectableBrowser } from '../utils/browserParser';
|
3
2
|
import { getBrowser } from '../utils/browserParser';
|
4
3
|
import { protocolVersion, version } from '../version';
|
5
4
|
import CriticalTimers from './timers';
|
@@ -107,31 +106,6 @@ export function supportsSetSinkId(elm?: HTMLMediaElement): boolean {
|
|
107
106
|
return 'setSinkId' in elm;
|
108
107
|
}
|
109
108
|
|
110
|
-
const setCodecPreferencesVersions: Record<DetectableBrowser, string> = {
|
111
|
-
Chrome: '100',
|
112
|
-
Safari: '15',
|
113
|
-
Firefox: '100',
|
114
|
-
};
|
115
|
-
|
116
|
-
export function supportsSetCodecPreferences(transceiver: RTCRtpTransceiver): boolean {
|
117
|
-
if (!isWeb()) {
|
118
|
-
return false;
|
119
|
-
}
|
120
|
-
if (!('setCodecPreferences' in transceiver)) {
|
121
|
-
return false;
|
122
|
-
}
|
123
|
-
const browser = getBrowser();
|
124
|
-
if (!browser?.name || !browser.version) {
|
125
|
-
// version is required
|
126
|
-
return false;
|
127
|
-
}
|
128
|
-
const v = setCodecPreferencesVersions[browser.name];
|
129
|
-
if (v) {
|
130
|
-
return compareVersions(browser.version, v) >= 0;
|
131
|
-
}
|
132
|
-
return false;
|
133
|
-
}
|
134
|
-
|
135
109
|
export function isBrowserSupported() {
|
136
110
|
if (typeof RTCPeerConnection === 'undefined') {
|
137
111
|
return false;
|
@@ -158,7 +132,35 @@ export function isSafari17(): boolean {
|
|
158
132
|
|
159
133
|
export function isMobile(): boolean {
|
160
134
|
if (!isWeb()) return false;
|
161
|
-
|
135
|
+
|
136
|
+
return (
|
137
|
+
// @ts-expect-error `userAgentData` is not yet part of typescript
|
138
|
+
navigator.userAgentData?.mobile ??
|
139
|
+
/Tablet|iPad|Mobile|Android|BlackBerry/.test(navigator.userAgent)
|
140
|
+
);
|
141
|
+
}
|
142
|
+
|
143
|
+
export function isE2EESimulcastSupported() {
|
144
|
+
const browser = getBrowser();
|
145
|
+
const supportedSafariVersion = '17.2'; // see https://bugs.webkit.org/show_bug.cgi?id=257803
|
146
|
+
if (browser) {
|
147
|
+
if (browser.name !== 'Safari' && browser.os !== 'iOS') {
|
148
|
+
return true;
|
149
|
+
} else if (
|
150
|
+
browser.os === 'iOS' &&
|
151
|
+
browser.osVersion &&
|
152
|
+
compareVersions(supportedSafariVersion, browser.osVersion) >= 0
|
153
|
+
) {
|
154
|
+
return true;
|
155
|
+
} else if (
|
156
|
+
browser.name === 'Safari' &&
|
157
|
+
compareVersions(supportedSafariVersion, browser.version) >= 0
|
158
|
+
) {
|
159
|
+
return true;
|
160
|
+
} else {
|
161
|
+
return false;
|
162
|
+
}
|
163
|
+
}
|
162
164
|
}
|
163
165
|
|
164
166
|
export function isWeb(): boolean {
|
@@ -29,12 +29,14 @@ describe('browser parser', () => {
|
|
29
29
|
expect(details?.name).toBe('Safari');
|
30
30
|
expect(details?.version).toBe('16.3');
|
31
31
|
expect(details?.os).toBe('macOS');
|
32
|
+
expect(details?.osVersion).toBe('10.15.7');
|
32
33
|
});
|
33
34
|
it('parses Safari iOS correctly', () => {
|
34
35
|
const details = getBrowser(iOSSafariUA, true);
|
35
36
|
expect(details?.name).toBe('Safari');
|
36
37
|
expect(details?.version).toBe('16.5');
|
37
38
|
expect(details?.os).toBe('iOS');
|
39
|
+
expect(details?.osVersion).toBe('16.5.1');
|
38
40
|
});
|
39
41
|
it('parses Firefox correctly', () => {
|
40
42
|
const details = getBrowser(firefoxUA, true);
|
@@ -46,6 +48,7 @@ describe('browser parser', () => {
|
|
46
48
|
expect(details?.name).toBe('Firefox');
|
47
49
|
expect(details?.version).toBe('115.0');
|
48
50
|
expect(details?.os).toBe('iOS');
|
51
|
+
expect(details?.osVersion).toBe('13.4.1');
|
49
52
|
});
|
50
53
|
it('parses Chrome correctly', () => {
|
51
54
|
const details = getBrowser(chromeUA, true);
|
@@ -57,6 +60,7 @@ describe('browser parser', () => {
|
|
57
60
|
expect(details?.name).toBe('Chrome');
|
58
61
|
expect(details?.version).toBe('115.0.5790.130');
|
59
62
|
expect(details?.os).toBe('iOS');
|
63
|
+
expect(details?.osVersion).toBe('16.5');
|
60
64
|
});
|
61
65
|
it('detects brave as chromium based', () => {
|
62
66
|
const details = getBrowser(braveUA, true);
|
@@ -10,6 +10,7 @@ export type BrowserDetails = {
|
|
10
10
|
name: DetectableBrowser;
|
11
11
|
version: string;
|
12
12
|
os?: DetectableOS;
|
13
|
+
osVersion?: string;
|
13
14
|
};
|
14
15
|
|
15
16
|
let browserDetails: BrowserDetails | undefined;
|
@@ -17,7 +18,7 @@ let browserDetails: BrowserDetails | undefined;
|
|
17
18
|
/**
|
18
19
|
* @internal
|
19
20
|
*/
|
20
|
-
export function getBrowser(userAgent?: string, force = true) {
|
21
|
+
export function getBrowser(userAgent?: string, force = true): BrowserDetails | undefined {
|
21
22
|
if (typeof userAgent === 'undefined' && typeof navigator === 'undefined') {
|
22
23
|
return;
|
23
24
|
}
|
@@ -37,6 +38,7 @@ const browsersList = [
|
|
37
38
|
name: 'Firefox',
|
38
39
|
version: getMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i, ua),
|
39
40
|
os: ua.toLowerCase().includes('fxios') ? 'iOS' : undefined,
|
41
|
+
osVersion: getOSVersion(ua),
|
40
42
|
};
|
41
43
|
return browser;
|
42
44
|
},
|
@@ -48,6 +50,7 @@ const browsersList = [
|
|
48
50
|
name: 'Chrome',
|
49
51
|
version: getMatch(/(?:chrome|chromium|crios|crmo)\/(\d+(\.?_?\d+)+)/i, ua),
|
50
52
|
os: ua.toLowerCase().includes('crios') ? 'iOS' : undefined,
|
53
|
+
osVersion: getOSVersion(ua),
|
51
54
|
};
|
52
55
|
|
53
56
|
return browser;
|
@@ -61,6 +64,7 @@ const browsersList = [
|
|
61
64
|
name: 'Safari',
|
62
65
|
version: getMatch(commonVersionIdentifier, ua),
|
63
66
|
os: ua.includes('mobile/') ? 'iOS' : 'macOS',
|
67
|
+
osVersion: getOSVersion(ua),
|
64
68
|
};
|
65
69
|
|
66
70
|
return browser;
|
@@ -72,3 +76,9 @@ function getMatch(exp: RegExp, ua: string, id = 1) {
|
|
72
76
|
const match = ua.match(exp);
|
73
77
|
return (match && match.length >= id && match[id]) || '';
|
74
78
|
}
|
79
|
+
|
80
|
+
function getOSVersion(ua: string) {
|
81
|
+
return ua.includes('mac os')
|
82
|
+
? getMatch(/\(.+?(\d+_\d+(:?_\d+)?)/, ua, 1).replace(/_/g, '.')
|
83
|
+
: undefined;
|
84
|
+
}
|