@microsoft/live-share-media 1.2.2 → 1.3.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.
Files changed (54) hide show
  1. package/.nycrc.json +10 -10
  2. package/LICENSE +90 -90
  3. package/README.md +135 -135
  4. package/bin/LiveMediaSession.d.ts.map +1 -1
  5. package/bin/LiveMediaSession.js +4 -6
  6. package/bin/LiveMediaSession.js.map +1 -1
  7. package/bin/LiveMediaSessionCoordinator.d.ts +4 -3
  8. package/bin/LiveMediaSessionCoordinator.d.ts.map +1 -1
  9. package/bin/LiveMediaSessionCoordinator.js +56 -69
  10. package/bin/LiveMediaSessionCoordinator.js.map +1 -1
  11. package/bin/MediaPlayerSynchronizer.d.ts +12 -0
  12. package/bin/MediaPlayerSynchronizer.d.ts.map +1 -1
  13. package/bin/MediaPlayerSynchronizer.js +26 -6
  14. package/bin/MediaPlayerSynchronizer.js.map +1 -1
  15. package/bin/MediaSessionExtensions.d.ts +0 -4
  16. package/bin/MediaSessionExtensions.d.ts.map +1 -1
  17. package/bin/MediaSessionExtensions.js.map +1 -1
  18. package/bin/internals/GroupCoordinatorState.d.ts.map +1 -1
  19. package/bin/internals/GroupCoordinatorState.js +1 -1
  20. package/bin/internals/GroupCoordinatorState.js.map +1 -1
  21. package/bin/internals/consts.d.ts +2 -2
  22. package/bin/internals/consts.d.ts.map +1 -1
  23. package/bin/internals/consts.js +2 -2
  24. package/bin/internals/consts.js.map +1 -1
  25. package/bin/internals/errors.d.ts +17 -0
  26. package/bin/internals/errors.d.ts.map +1 -0
  27. package/bin/internals/errors.js +34 -0
  28. package/bin/internals/errors.js.map +1 -0
  29. package/bin/internals/index.d.ts +1 -0
  30. package/bin/internals/index.d.ts.map +1 -1
  31. package/bin/internals/index.js +1 -0
  32. package/bin/internals/index.js.map +1 -1
  33. package/package.json +45 -45
  34. package/src/IMediaPlayer.ts +29 -29
  35. package/src/LiveMediaSession.ts +337 -334
  36. package/src/LiveMediaSessionCoordinator.ts +711 -671
  37. package/src/LiveMediaSessionCoordinatorSuspension.ts +39 -39
  38. package/src/MediaPlayerSynchronizer.ts +714 -690
  39. package/src/MediaSessionActionThrottler.ts +19 -19
  40. package/src/MediaSessionExtensions.ts +182 -187
  41. package/src/RepeatedActionThrottler.ts +76 -76
  42. package/src/VolumeManager.ts +200 -200
  43. package/src/index.ts +14 -14
  44. package/src/internals/GroupCoordinatorState.ts +685 -683
  45. package/src/internals/GroupPlaybackPosition.ts +228 -228
  46. package/src/internals/GroupPlaybackTrack.ts +182 -182
  47. package/src/internals/GroupPlaybackTrackData.ts +104 -104
  48. package/src/internals/GroupTransportState.ts +170 -170
  49. package/src/internals/consts.ts +103 -102
  50. package/src/internals/errors.ts +42 -0
  51. package/src/internals/index.ts +12 -11
  52. package/tsconfig.build.json +8 -8
  53. package/tsconfig.json +76 -76
  54. package/typedoc.json +10 -10
@@ -49,14 +49,14 @@ export declare const TelemetryEvents: {
49
49
  BeginSuspensionAndWait: string;
50
50
  EndSuspension: string;
51
51
  EndSuspensionAndWait: string;
52
- RemoteJoinReceived: string;
52
+ RemoteConnectReceived: string;
53
53
  RemoteSetTrackReceived: string;
54
54
  RemoteSetTrackDataReceived: string;
55
55
  RemotePlayReceived: string;
56
56
  RemotePauseReceived: string;
57
57
  RemoteSeekToReceived: string;
58
58
  PositionUpdateEventError: string;
59
- SendJoinedEventError: string;
59
+ LiveObjectSynchronizerStartError: string;
60
60
  };
61
61
  GroupCoordinator: {
62
62
  TrackChanged: string;
@@ -1 +1 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/internals/consts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoF3B,CAAC"}
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/internals/consts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqF3B,CAAC"}
@@ -52,14 +52,14 @@ exports.TelemetryEvents = {
52
52
  BeginSuspensionAndWait: transmit("SessionCoordinator:BeginSuspensionAndWait"),
53
53
  EndSuspension: "SessionCoordinator:EndSuspension",
54
54
  EndSuspensionAndWait: transmit("SessionCoordinator:EndSuspensionAndWait"),
55
- RemoteJoinReceived: "SessionCoordinator:RemoteJoinReceived",
55
+ RemoteConnectReceived: "SessionCoordinator:RemoteConnectReceived",
56
56
  RemoteSetTrackReceived: transmit("SessionCoordinator:RemoteSetTrackReceived"),
57
57
  RemoteSetTrackDataReceived: transmit("SessionCoordinator:RemoteSetTrackDataReceived"),
58
58
  RemotePlayReceived: transmit("SessionCoordinator:RemotePlayReceived"),
59
59
  RemotePauseReceived: transmit("SessionCoordinator:RemotePauseReceived"),
60
60
  RemoteSeekToReceived: transmit("SessionCoordinator:RemoteSeekToReceived"),
61
61
  PositionUpdateEventError: "SessionCoordinator:PositionUpdateEventError",
62
- SendJoinedEventError: "SessionCoordinator:SendJoinedEventError",
62
+ LiveObjectSynchronizerStartError: "SessionCoordinator:LiveObjectSynchronizerStartError",
63
63
  },
64
64
  GroupCoordinator: {
65
65
  TrackChanged: "GroupCoordinator:TrackChanged",
@@ -1 +1 @@
1
- {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/internals/consts.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;;;GAIG;AACU,QAAA,eAAe,GAAG;IAC3B,uBAAuB,EAAE;QACrB,sBAAsB,EAClB,gDAAgD;QACpD,WAAW,EAAE,qCAAqC;QAClD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,aAAa,EAAE,uCAAuC;QACtD,cAAc,EAAE,wCAAwC;QACxD,gBAAgB,EAAE,0CAA0C;QAC5D,qBAAqB,EAAE,QAAQ,CAC3B,+CAA+C,CAClD;QACD,0BAA0B,EACtB,oDAAoD;QACxD,yBAAyB,EACrB,mDAAmD;QACvD,sBAAsB,EAAE,QAAQ,CAC5B,gDAAgD,CACnD;QACD,4BAA4B,EACxB,sDAAsD;QAC1D,eAAe,EAAE,yCAAyC;QAC1D,aAAa,EAAE,uCAAuC;QACtD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,cAAc,EAAE,wCAAwC;QACxD,kBAAkB,EAAE,4CAA4C;KACnE;IACD,YAAY,EAAE;QACV,UAAU,EAAE,QAAQ,CAAC,yBAAyB,CAAC;QAC/C,WAAW,EAAE,QAAQ,CAAC,0BAA0B,CAAC;QACjD,YAAY,EAAE,QAAQ,CAAC,2BAA2B,CAAC;QACnD,aAAa,EAAE,QAAQ,CAAC,4BAA4B,CAAC;QACrD,cAAc,EAAE,QAAQ,CAAC,6BAA6B,CAAC;QACvD,gBAAgB,EAAE,+BAA+B;QACjD,wBAAwB,EAAE,uCAAuC;KACpE;IACD,kBAAkB,EAAE;QAChB,UAAU,EAAE,QAAQ,CAAC,+BAA+B,CAAC;QACrD,WAAW,EAAE,QAAQ,CAAC,gCAAgC,CAAC;QACvD,YAAY,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QACzD,cAAc,EAAE,QAAQ,CAAC,mCAAmC,CAAC;QAC7D,kBAAkB,EAAE,uCAAuC;QAC3D,eAAe,EAAE,oCAAoC;QACrD,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,aAAa,EAAE,kCAAkC;QACjD,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,kBAAkB,EAAE,uCAAuC;QAC3D,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,0BAA0B,EAAE,QAAQ,CAChC,+CAA+C,CAClD;QACD,kBAAkB,EAAE,QAAQ,CAAC,uCAAuC,CAAC;QACrE,mBAAmB,EAAE,QAAQ,CAAC,wCAAwC,CAAC;QACvE,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,wBAAwB,EAAE,6CAA6C;QACvE,oBAAoB,EAAE,yCAAyC;KAClE;IACD,gBAAgB,EAAE;QACd,YAAY,EAAE,+BAA+B;QAC7C,kBAAkB,EAAE,qCAAqC;QACzD,gBAAgB,EAAE,mCAAmC;QACrD,sBAAsB,EAAE,yCAAyC;QACjE,qBAAqB,EAAE,wCAAwC;QAC/D,2BAA2B,EACvB,8CAA8C;QAClD,mBAAmB,EAAE,sCAAsC;QAC3D,qBAAqB,EAAE,wCAAwC;QAC/D,cAAc,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QAC3D,kBAAkB,EAAE,QAAQ,CAAC,qCAAqC,CAAC;QACnE,kBAAkB,EAAE,QAAQ,CAAC,qCAAqC,CAAC;QACnE,iBAAiB,EAAE,QAAQ,CAAC,oCAAoC,CAAC;KACpE;CACJ,CAAC;AAEF;;GAEG;AACH,SAAS,QAAQ,CAAC,SAAiB;IAC/B,OAAO,GAAG,SAAS,WAAW,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/internals/consts.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;;;GAIG;AACU,QAAA,eAAe,GAAG;IAC3B,uBAAuB,EAAE;QACrB,sBAAsB,EAClB,gDAAgD;QACpD,WAAW,EAAE,qCAAqC;QAClD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,aAAa,EAAE,uCAAuC;QACtD,cAAc,EAAE,wCAAwC;QACxD,gBAAgB,EAAE,0CAA0C;QAC5D,qBAAqB,EAAE,QAAQ,CAC3B,+CAA+C,CAClD;QACD,0BAA0B,EACtB,oDAAoD;QACxD,yBAAyB,EACrB,mDAAmD;QACvD,sBAAsB,EAAE,QAAQ,CAC5B,gDAAgD,CACnD;QACD,4BAA4B,EACxB,sDAAsD;QAC1D,eAAe,EAAE,yCAAyC;QAC1D,aAAa,EAAE,uCAAuC;QACtD,UAAU,EAAE,oCAAoC;QAChD,WAAW,EAAE,qCAAqC;QAClD,YAAY,EAAE,sCAAsC;QACpD,cAAc,EAAE,wCAAwC;QACxD,kBAAkB,EAAE,4CAA4C;KACnE;IACD,YAAY,EAAE;QACV,UAAU,EAAE,QAAQ,CAAC,yBAAyB,CAAC;QAC/C,WAAW,EAAE,QAAQ,CAAC,0BAA0B,CAAC;QACjD,YAAY,EAAE,QAAQ,CAAC,2BAA2B,CAAC;QACnD,aAAa,EAAE,QAAQ,CAAC,4BAA4B,CAAC;QACrD,cAAc,EAAE,QAAQ,CAAC,6BAA6B,CAAC;QACvD,gBAAgB,EAAE,+BAA+B;QACjD,wBAAwB,EAAE,uCAAuC;KACpE;IACD,kBAAkB,EAAE;QAChB,UAAU,EAAE,QAAQ,CAAC,+BAA+B,CAAC;QACrD,WAAW,EAAE,QAAQ,CAAC,gCAAgC,CAAC;QACvD,YAAY,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QACzD,cAAc,EAAE,QAAQ,CAAC,mCAAmC,CAAC;QAC7D,kBAAkB,EAAE,uCAAuC;QAC3D,eAAe,EAAE,oCAAoC;QACrD,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,aAAa,EAAE,kCAAkC;QACjD,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,qBAAqB,EAAE,0CAA0C;QACjE,sBAAsB,EAAE,QAAQ,CAC5B,2CAA2C,CAC9C;QACD,0BAA0B,EAAE,QAAQ,CAChC,+CAA+C,CAClD;QACD,kBAAkB,EAAE,QAAQ,CAAC,uCAAuC,CAAC;QACrE,mBAAmB,EAAE,QAAQ,CAAC,wCAAwC,CAAC;QACvE,oBAAoB,EAAE,QAAQ,CAC1B,yCAAyC,CAC5C;QACD,wBAAwB,EAAE,6CAA6C;QACvE,gCAAgC,EAC5B,qDAAqD;KAC5D;IACD,gBAAgB,EAAE;QACd,YAAY,EAAE,+BAA+B;QAC7C,kBAAkB,EAAE,qCAAqC;QACzD,gBAAgB,EAAE,mCAAmC;QACrD,sBAAsB,EAAE,yCAAyC;QACjE,qBAAqB,EAAE,wCAAwC;QAC/D,2BAA2B,EACvB,8CAA8C;QAClD,mBAAmB,EAAE,sCAAsC;QAC3D,qBAAqB,EAAE,wCAAwC;QAC/D,cAAc,EAAE,QAAQ,CAAC,iCAAiC,CAAC;QAC3D,kBAAkB,EAAE,QAAQ,CAAC,qCAAqC,CAAC;QACnE,kBAAkB,EAAE,QAAQ,CAAC,qCAAqC,CAAC;QACnE,iBAAiB,EAAE,QAAQ,CAAC,oCAAoC,CAAC;KACpE;CACJ,CAAC;AAEF;;GAEG;AACH,SAAS,QAAQ,CAAC,SAAiB;IAC/B,OAAO,GAAG,SAAS,WAAW,CAAC;AACnC,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @hidden
3
+ * Use for operations that are blocked due to the metadata not being set.
4
+ */
5
+ export declare class TrackMetadataNotSetError extends Error {
6
+ constructor(prefix: string, callingFunction: string);
7
+ static assert(condition: boolean, prefix: string, callingFunction: string): asserts condition;
8
+ }
9
+ /**
10
+ * @hidden
11
+ * Use for operations that are blocked due to the metadata not being set.
12
+ */
13
+ export declare class ActionBlockedError extends Error {
14
+ constructor(prefix: string, callingFunction: string, settingName: string);
15
+ static assert(condition: boolean, prefix: string, callingFunction: string, settingName: string): asserts condition;
16
+ }
17
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/internals/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;gBACnC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM;IAMnD,MAAM,CAAC,MAAM,CACT,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,GACxB,OAAO,CAAC,SAAS;CAIvB;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC7B,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAMxE,MAAM,CAAC,MAAM,CACT,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,GACpB,OAAO,CAAC,SAAS;CAIvB"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionBlockedError = exports.TrackMetadataNotSetError = void 0;
4
+ /**
5
+ * @hidden
6
+ * Use for operations that are blocked due to the metadata not being set.
7
+ */
8
+ class TrackMetadataNotSetError extends Error {
9
+ constructor(prefix, callingFunction) {
10
+ super(`${prefix} - called before playback track metadata has been assigned.\nTo fix this error, ensure \`setTrack()\` has been called with the track information before calling \`${callingFunction}()\``);
11
+ }
12
+ static assert(condition, prefix, callingFunction) {
13
+ if (condition)
14
+ return;
15
+ throw new TrackMetadataNotSetError(prefix, callingFunction);
16
+ }
17
+ }
18
+ exports.TrackMetadataNotSetError = TrackMetadataNotSetError;
19
+ /**
20
+ * @hidden
21
+ * Use for operations that are blocked due to the metadata not being set.
22
+ */
23
+ class ActionBlockedError extends Error {
24
+ constructor(prefix, callingFunction, settingName) {
25
+ super(`${prefix} - operation blocked due to \`${settingName}\` being set to false.\nTo fix this error, ensure \`${settingName}\` is true before calling \`${callingFunction}()\`, or set \`${settingName}\` to true. If you are using \`MediaPlayerSynchronizer\`, you can instead use the \`viewOnly\`, which when set to false, it will set \`${settingName}\` value to true.`);
26
+ }
27
+ static assert(condition, prefix, callingFunction, settingName) {
28
+ if (condition)
29
+ return;
30
+ throw new ActionBlockedError(prefix, callingFunction, settingName);
31
+ }
32
+ }
33
+ exports.ActionBlockedError = ActionBlockedError;
34
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/internals/errors.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,MAAa,wBAAyB,SAAQ,KAAK;IAC/C,YAAY,MAAc,EAAE,eAAuB;QAC/C,KAAK,CACD,GAAG,MAAM,sKAAsK,eAAe,MAAM,CACvM,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAM,CACT,SAAkB,EAClB,MAAc,EACd,eAAuB;QAEvB,IAAI,SAAS;YAAE,OAAO;QACtB,MAAM,IAAI,wBAAwB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAChE,CAAC;CACJ;AAfD,4DAeC;AAED;;;GAGG;AACH,MAAa,kBAAmB,SAAQ,KAAK;IACzC,YAAY,MAAc,EAAE,eAAuB,EAAE,WAAmB;QACpE,KAAK,CACD,GAAG,MAAM,iCAAiC,WAAW,uDAAuD,WAAW,+BAA+B,eAAe,kBAAkB,WAAW,0IAA0I,WAAW,mBAAmB,CAC7W,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAM,CACT,SAAkB,EAClB,MAAc,EACd,eAAuB,EACvB,WAAmB;QAEnB,IAAI,SAAS;YAAE,OAAO;QACtB,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;IACvE,CAAC;CACJ;AAhBD,gDAgBC"}
@@ -8,4 +8,5 @@ export * from "./GroupPlaybackPosition";
8
8
  export * from "./GroupPlaybackTrack";
9
9
  export * from "./GroupPlaybackTrackData";
10
10
  export * from "./GroupTransportState";
11
+ export * from "./errors";
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internals/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internals/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC"}
@@ -24,4 +24,5 @@ __exportStar(require("./GroupPlaybackPosition"), exports);
24
24
  __exportStar(require("./GroupPlaybackTrack"), exports);
25
25
  __exportStar(require("./GroupPlaybackTrackData"), exports);
26
26
  __exportStar(require("./GroupTransportState"), exports);
27
+ __exportStar(require("./errors"), exports);
27
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internals/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,0DAAwC;AACxC,0DAAwC;AACxC,uDAAqC;AACrC,2DAAyC;AACzC,wDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internals/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,2CAAyB;AACzB,0DAAwC;AACxC,0DAAwC;AACxC,uDAAqC;AACrC,2DAAyC;AACzC,wDAAsC;AACtC,2CAAyB"}
package/package.json CHANGED
@@ -1,45 +1,45 @@
1
- {
2
- "name": "@microsoft/live-share-media",
3
- "version": "1.2.2",
4
- "description": "Live Share classes that synchronize media playback across clients.",
5
- "author": "Microsoft",
6
- "license": "SEE LICENSE IN LICENSE",
7
- "main": "./bin/index.js",
8
- "types": "./bin/index.d.ts",
9
- "scripts": {
10
- "clean": "npx shx rm -rf bin",
11
- "build": "tsc -p tsconfig.build.json",
12
- "test": "ts-mocha --config ./src/test/.mocharc.js src/**/*.spec.ts --timeout 10000",
13
- "test:debug": "ts-mocha --config ./src/test/.mocharc.js src/**/*.spec.ts --inspect-brk",
14
- "test:coverage": "nyc --reporter=html --reporter=text --reporter=text-summary npm test",
15
- "test:race": "node ./../live-share/test-for-race-conditions.js"
16
- },
17
- "devDependencies": {
18
- "@microsoft/live-share": "1.2.2",
19
- "@fluidframework/test-client-utils": "^1.3.6",
20
- "@fluidframework/test-runtime-utils": "^1.3.6",
21
- "@fluidframework/test-utils": "^1.3.6",
22
- "@fluidframework/test-version-utils": "^1.3.6",
23
- "@types/assert": "^1.5.6",
24
- "@types/mocha": "^10.0.1",
25
- "@types/node": "^20.2.3",
26
- "fluid-framework": "^1.3.6",
27
- "mocha": "^10.2.0",
28
- "nyc": "^15.1.0",
29
- "ts-mocha": "^10.0.0",
30
- "typescript": "^5.0.4"
31
- },
32
- "peerDependencies": {
33
- "@microsoft/live-share": "1.2.2",
34
- "fluid-framework": "^1.2.3"
35
- },
36
- "repository": {
37
- "directory": "packages/live-share-media",
38
- "type": "git",
39
- "url": "https://github.com/microsoft/live-share-sdk"
40
- },
41
- "homepage": "https://aka.ms/teamsliveshare",
42
- "bugs": {
43
- "url": "https://github.com/microsoft/live-share-sdk/issues"
44
- }
45
- }
1
+ {
2
+ "name": "@microsoft/live-share-media",
3
+ "version": "1.3.1",
4
+ "description": "Live Share classes that synchronize media playback across clients.",
5
+ "author": "Microsoft",
6
+ "license": "SEE LICENSE IN LICENSE",
7
+ "main": "./bin/index.js",
8
+ "types": "./bin/index.d.ts",
9
+ "scripts": {
10
+ "clean": "npx shx rm -rf bin",
11
+ "build": "tsc -p tsconfig.build.json",
12
+ "test": "ts-mocha --config ./src/test/.mocharc.js src/**/*.spec.ts --timeout 10000",
13
+ "test:debug": "ts-mocha --config ./src/test/.mocharc.js src/**/*.spec.ts --inspect-brk",
14
+ "test:coverage": "nyc --reporter=html --reporter=text --reporter=text-summary npm test",
15
+ "test:race": "node ./../live-share/test-for-race-conditions.js"
16
+ },
17
+ "devDependencies": {
18
+ "@microsoft/live-share": "1.3.1",
19
+ "@fluidframework/test-client-utils": "^1.3.6",
20
+ "@fluidframework/test-runtime-utils": "^1.3.6",
21
+ "@fluidframework/test-utils": "^1.3.6",
22
+ "@fluidframework/test-version-utils": "^1.3.6",
23
+ "@types/assert": "^1.5.6",
24
+ "@types/mocha": "^10.0.1",
25
+ "@types/node": "^20.2.3",
26
+ "fluid-framework": "^1.3.6",
27
+ "mocha": "^10.2.0",
28
+ "nyc": "^15.1.0",
29
+ "ts-mocha": "^10.0.0",
30
+ "typescript": "^5.0.4"
31
+ },
32
+ "peerDependencies": {
33
+ "@microsoft/live-share": "1.3.1",
34
+ "fluid-framework": "^1.2.3"
35
+ },
36
+ "repository": {
37
+ "directory": "packages/live-share-media",
38
+ "type": "git",
39
+ "url": "https://github.com/microsoft/live-share-sdk"
40
+ },
41
+ "homepage": "https://aka.ms/teamsliveshare",
42
+ "bugs": {
43
+ "url": "https://github.com/microsoft/live-share-sdk/issues"
44
+ }
45
+ }
@@ -1,29 +1,29 @@
1
- /**
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the Microsoft Live Share SDK License.
4
- */
5
-
6
- export interface IMediaPlayer {
7
- readonly currentSrc: string;
8
- currentTime: number;
9
- readonly duration: number;
10
- readonly ended: boolean;
11
- muted: boolean;
12
- readonly paused: boolean;
13
- playbackRate: number;
14
- src: string;
15
- volume: number;
16
- load(): void;
17
- pause(): void;
18
- play(): Promise<void>;
19
- addEventListener(
20
- type: string,
21
- listener: EventListenerOrEventListenerObject,
22
- options?: boolean | AddEventListenerOptions
23
- ): void;
24
- removeEventListener(
25
- type: string,
26
- listener: EventListenerOrEventListenerObject,
27
- options?: boolean | EventListenerOptions
28
- ): void;
29
- }
1
+ /**
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the Microsoft Live Share SDK License.
4
+ */
5
+
6
+ export interface IMediaPlayer {
7
+ readonly currentSrc: string;
8
+ currentTime: number;
9
+ readonly duration: number;
10
+ readonly ended: boolean;
11
+ muted: boolean;
12
+ readonly paused: boolean;
13
+ playbackRate: number;
14
+ src: string;
15
+ volume: number;
16
+ load(): void;
17
+ pause(): void;
18
+ play(): Promise<void>;
19
+ addEventListener(
20
+ type: string,
21
+ listener: EventListenerOrEventListenerObject,
22
+ options?: boolean | AddEventListenerOptions
23
+ ): void;
24
+ removeEventListener(
25
+ type: string,
26
+ listener: EventListenerOrEventListenerObject,
27
+ options?: boolean | EventListenerOptions
28
+ ): void;
29
+ }