@techsee/techsee-media-service 10.0.0 → 12.0.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.
Files changed (109) hide show
  1. package/lib/MultiParty/DetectWebRtcService.d.ts +16 -14
  2. package/lib/MultiParty/DetectWebRtcService.d.ts.map +1 -1
  3. package/lib/MultiParty/DetectWebRtcService.js +221 -44
  4. package/lib/MultiParty/DetectWebRtcService.js.map +1 -1
  5. package/lib/MultiParty/MediaCapabilitiesService.d.ts +6 -12
  6. package/lib/MultiParty/MediaCapabilitiesService.d.ts.map +1 -1
  7. package/lib/MultiParty/MediaCapabilitiesService.js +58 -119
  8. package/lib/MultiParty/MediaCapabilitiesService.js.map +1 -1
  9. package/lib/MultiParty/MediaCapabilitiesUtils.d.ts.map +1 -1
  10. package/lib/MultiParty/MediaCapabilitiesUtils.js +2 -2
  11. package/lib/MultiParty/MediaCapabilitiesUtils.js.map +1 -1
  12. package/lib/MultiParty/MediaTracer.d.ts +3 -0
  13. package/lib/MultiParty/MediaTracer.d.ts.map +1 -0
  14. package/lib/MultiParty/MediaTracer.js +17 -0
  15. package/lib/MultiParty/MediaTracer.js.map +1 -0
  16. package/lib/MultiParty/MultiPartyService.d.ts +2 -2
  17. package/lib/MultiParty/MultiPartyService.d.ts.map +1 -1
  18. package/lib/MultiParty/MultiPartyServiceFactory.d.ts +1 -1
  19. package/lib/MultiParty/MultiPartyServiceFactory.d.ts.map +1 -1
  20. package/lib/MultiParty/MultiPartyServiceFactory.js +2 -2
  21. package/lib/MultiParty/MultiPartyServiceFactory.js.map +1 -1
  22. package/lib/MultiParty/MultipartyServiceEventTypes.d.ts +1 -1
  23. package/lib/MultiParty/MultipartyServiceEventTypes.d.ts.map +1 -1
  24. package/lib/MultiParty/MultipartyServiceEventTypes.js +13 -13
  25. package/lib/MultiParty/MultipartyServiceEventTypes.js.map +1 -1
  26. package/lib/MultiParty/index.d.ts +2 -0
  27. package/lib/MultiParty/index.d.ts.map +1 -1
  28. package/lib/MultiParty/index.js +4 -0
  29. package/lib/MultiParty/index.js.map +1 -1
  30. package/lib/MultiParty/opentok/OpentokMultiPartyService.d.ts +6 -18
  31. package/lib/MultiParty/opentok/OpentokMultiPartyService.d.ts.map +1 -1
  32. package/lib/MultiParty/opentok/OpentokMultiPartyService.js +72 -77
  33. package/lib/MultiParty/opentok/OpentokMultiPartyService.js.map +1 -1
  34. package/lib/MultiParty/opentok/OpentokPublisher.d.ts +14 -4
  35. package/lib/MultiParty/opentok/OpentokPublisher.d.ts.map +1 -1
  36. package/lib/MultiParty/opentok/OpentokPublisher.js +49 -84
  37. package/lib/MultiParty/opentok/OpentokPublisher.js.map +1 -1
  38. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.d.ts +18 -0
  39. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.d.ts.map +1 -0
  40. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js +66 -0
  41. package/lib/MultiParty/opentok/OpentokPublisherEventMapper.js.map +1 -0
  42. package/lib/MultiParty/opentok/trace.d.ts.map +1 -1
  43. package/lib/MultiParty/opentok/trace.js +2 -2
  44. package/lib/MultiParty/opentok/trace.js.map +1 -1
  45. package/lib/MultiParty/{Contracts.d.ts → types.d.ts} +8 -1
  46. package/lib/MultiParty/types.d.ts.map +1 -0
  47. package/lib/MultiParty/{Contracts.js → types.js} +1 -1
  48. package/lib/MultiParty/types.js.map +1 -0
  49. package/lib/MultiParty/utils.d.ts +3 -0
  50. package/lib/MultiParty/utils.d.ts.map +1 -0
  51. package/lib/MultiParty/utils.js +21 -0
  52. package/lib/MultiParty/utils.js.map +1 -0
  53. package/package.json +7 -5
  54. package/lib/MultiParty/Contracts.d.ts.map +0 -1
  55. package/lib/MultiParty/Contracts.js.map +0 -1
  56. package/lib/MultiParty/opentok/OpentokUtils.d.ts +0 -2
  57. package/lib/MultiParty/opentok/OpentokUtils.d.ts.map +0 -1
  58. package/lib/MultiParty/opentok/OpentokUtils.js +0 -17
  59. package/lib/MultiParty/opentok/OpentokUtils.js.map +0 -1
  60. package/lib/oldCode/constants.js +0 -25
  61. package/lib/oldCode/constants.js.map +0 -1
  62. package/lib/oldCode/event-emitter.js +0 -62
  63. package/lib/oldCode/event-emitter.js.map +0 -1
  64. package/lib/oldCode/index.js +0 -60
  65. package/lib/oldCode/index.js.map +0 -1
  66. package/lib/oldCode/opentok/session.js +0 -335
  67. package/lib/oldCode/opentok/session.js.map +0 -1
  68. package/lib/oldCode/opentok/stream.js +0 -324
  69. package/lib/oldCode/opentok/stream.js.map +0 -1
  70. package/lib/oldCode/publisher.js +0 -168
  71. package/lib/oldCode/publisher.js.map +0 -1
  72. package/lib/oldCode/service.js +0 -417
  73. package/lib/oldCode/service.js.map +0 -1
  74. package/lib/oldCode/session.js +0 -132
  75. package/lib/oldCode/session.js.map +0 -1
  76. package/lib/oldCode/stream.js +0 -223
  77. package/lib/oldCode/stream.js.map +0 -1
  78. package/lib/oldCode/subscriber.js +0 -115
  79. package/lib/oldCode/subscriber.js.map +0 -1
  80. package/lib/oldCode/tracer.d.ts +0 -36
  81. package/lib/oldCode/tracer.d.ts.map +0 -1
  82. package/lib/oldCode/tracer.js +0 -202
  83. package/lib/oldCode/tracer.js.map +0 -1
  84. package/lib/oldCode/utils/ImageFixer.d.ts +0 -1
  85. package/lib/oldCode/utils/ImageFixer.d.ts.map +0 -1
  86. package/lib/oldCode/utils/ImageFixer.js +0 -83
  87. package/lib/oldCode/utils/ImageFixer.js.map +0 -1
  88. package/lib/oldCode/webrtc/constants.js +0 -106
  89. package/lib/oldCode/webrtc/constants.js.map +0 -1
  90. package/lib/oldCode/webrtc/helper.js +0 -225
  91. package/lib/oldCode/webrtc/helper.js.map +0 -1
  92. package/lib/oldCode/webrtc/session-kms.js +0 -573
  93. package/lib/oldCode/webrtc/session-kms.js.map +0 -1
  94. package/lib/oldCode/webrtc/session-loopback.js +0 -354
  95. package/lib/oldCode/webrtc/session-loopback.js.map +0 -1
  96. package/lib/oldCode/webrtc/session-turn.js +0 -927
  97. package/lib/oldCode/webrtc/session-turn.js.map +0 -1
  98. package/lib/oldCode/webrtc/session-turn.v2.js +0 -592
  99. package/lib/oldCode/webrtc/session-turn.v2.js.map +0 -1
  100. package/lib/oldCode/webrtc/session.js +0 -58
  101. package/lib/oldCode/webrtc/session.js.map +0 -1
  102. package/lib/oldCode/webrtc/stream.js +0 -696
  103. package/lib/oldCode/webrtc/stream.js.map +0 -1
  104. package/lib/oldCode/webrtc/temasys/adapter-loader.js +0 -11
  105. package/lib/oldCode/webrtc/temasys/adapter-loader.js.map +0 -1
  106. package/lib/oldCode/webrtc/temasys/adapter.js +0 -5933
  107. package/lib/oldCode/webrtc/temasys/adapter.js.map +0 -1
  108. package/lib/oldCode/webrtc/webrtc-ie-shim.js +0 -3437
  109. package/lib/oldCode/webrtc/webrtc-ie-shim.js.map +0 -1
@@ -1,223 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.TsMediaStream = exports.EVENTS = void 0;
9
-
10
- var _eventEmitter = require("./event-emitter");
11
-
12
- var _session = require("./session");
13
-
14
- var _subscriber = require("./subscriber");
15
-
16
- var _tsEnvironmentDetect = require("@techsee/techsee-common/lib/helpers/ts-environment-detect");
17
-
18
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
19
-
20
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
21
-
22
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
23
-
24
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
25
-
26
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
27
-
28
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
29
-
30
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
31
-
32
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
33
-
34
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
35
-
36
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
37
-
38
- /**
39
- * @enum STREAM_EVENTS
40
- */
41
- var STREAM_EVENTS = {
42
- PROPERTY_CHANGED: 'PROPERTY_CHANGED'
43
- };
44
- exports.EVENTS = STREAM_EVENTS;
45
-
46
- /**
47
- * Media stream wrapper.
48
- *
49
- * Represents video or audio stream, local or remote.
50
- *
51
- * General interface for the specific implementations - TsOpenTokStream or TsWebRTCStream
52
- *
53
- * @interface
54
- *
55
- * @see TsOpenTokStream
56
- * @see TsWebRTCStream
57
- */
58
- var TsMediaStream = /*#__PURE__*/function (_EventEmitter) {
59
- _inherits(TsMediaStream, _EventEmitter);
60
-
61
- var _super = _createSuper(TsMediaStream);
62
-
63
- function TsMediaStream(id, session) {
64
- var _this;
65
-
66
- var isRemote = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
67
- var videoTrackSettings = arguments.length > 3 ? arguments[3] : undefined;
68
-
69
- _classCallCheck(this, TsMediaStream);
70
-
71
- _this = _super.call(this);
72
- session.registerStream(id, _assertThisInitialized(_this));
73
- _this.remote = isRemote;
74
-
75
- if (videoTrackSettings) {
76
- _this._width = videoTrackSettings.width;
77
- _this._height = videoTrackSettings.height;
78
- }
79
- /**
80
- * Environment detector
81
- *
82
- * @protected
83
- * @member { Object }
84
- */
85
-
86
-
87
- _this._environment = new _tsEnvironmentDetect.TsEnvironmentDetect();
88
- return _this;
89
- }
90
- /**
91
- * Stream video dimensions
92
- *
93
- * @member { Object }
94
- * @type { Object }
95
- */
96
-
97
-
98
- _createClass(TsMediaStream, [{
99
- key: "videoDimensions",
100
- get: function get() {
101
- // FIXME the fallback dimensions should be removed, and the Opentok/Webrtc implementations
102
- // should pass the dimensions just like loopback does. I suspect current behavior is
103
- // the cause of the video element "jumping" (change size) on initial connection
104
- return {
105
- width: this._width || 480,
106
- height: this._height || 640
107
- };
108
- }
109
- }, {
110
- key: "_updateVideoDimensions",
111
- value: function _updateVideoDimensions(videoEl) {
112
- if (videoEl) {
113
- this._width = videoEl.videoWidth;
114
- this._height = videoEl.videoHeight;
115
- var stream = this;
116
- var property = 'videoDimensions';
117
- var value = this.videoDimensions;
118
-
119
- this._session.emit(_session.EVENTS.STREAM_PROPERTY_CHANGED, {
120
- stream: stream,
121
- property: property,
122
- value: value
123
- });
124
- }
125
- }
126
- }, {
127
- key: "setupDimensionsListener",
128
- value: function setupDimensionsListener(videoEl, subscriber) {
129
- var _this2 = this;
130
-
131
- this._clearUpdateDimensionsInterval();
132
-
133
- this._width = videoEl.videoWidth;
134
- this._height = videoEl.videoHeight;
135
-
136
- if (!subscriber && !this._environment.isIE11() && !this._environment.isIOS()) {
137
- $(videoEl).on('resize', function () {
138
- return _this2._updateVideoDimensions(videoEl);
139
- });
140
- } else {
141
- this.intervalId = setInterval(function () {
142
- if (subscriber && !(subscriber.stream && subscriber.stream.hasVideo)) {
143
- return;
144
- }
145
-
146
- if (_this2._width !== videoEl.videoWidth || _this2._height !== videoEl.videoHeight) {
147
- _this2._updateVideoDimensions(videoEl);
148
- }
149
- }, 500);
150
- }
151
-
152
- if (subscriber && this.intervalId) {
153
- subscriber.on(_subscriber.EVENTS.DESTROYED, function () {
154
- _this2._clearUpdateDimensionsInterval();
155
- });
156
- }
157
- }
158
- }, {
159
- key: "_clearUpdateDimensionsInterval",
160
- value: function _clearUpdateDimensionsInterval() {
161
- if (this.intervalId) {
162
- clearInterval(this.intervalId);
163
- this.intervalId = null;
164
- }
165
- }
166
- /* eslint-disable no-unused-vars */
167
-
168
- /**
169
- * Get snapshot of the current frame in the media stream
170
- *
171
- * Used internally in (TsMediaPublisher | TsMediaSubscriber).getSnapshot
172
- *
173
- * @method
174
- * @param { TsMediaPublisher | TsMediaSubscriber } tsMediaElement
175
- * @param { Number } timeout Usually used in IE. Time between video element transformation and snapshot.
176
- * @param { Object } options
177
- * format: Output MIME type (image/png or image/jpeg; default: image/png).
178
- * quality: Output quality (between 0 and 1; default: 0.92; applies only when the format is image/jpeg).
179
- * x: The x coordinate of the crop starting position.
180
- * y: The y coordinate of the crop starting position.
181
- * w: Crop width.
182
- * h: Crop Height.
183
- *
184
- * @returns { Promise<String> } snapshot
185
- */
186
-
187
- }, {
188
- key: "getSnapshot",
189
- value: function getSnapshot(tsMediaElement) {
190
- var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
191
-
192
- var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
193
- _ref$format = _ref.format,
194
- format = _ref$format === void 0 ? 'image/png' : _ref$format,
195
- _ref$quality = _ref.quality,
196
- quality = _ref$quality === void 0 ? 0.92 : _ref$quality,
197
- x = _ref.x,
198
- y = _ref.y,
199
- w = _ref.w,
200
- h = _ref.h;
201
-
202
- throw new TypeError('The method \'getSnapshot\' is not implemented');
203
- }
204
- }, {
205
- key: "turnFlashlight",
206
- value: function turnFlashlight() {
207
- var isTorchOn = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
208
- throw new TypeError('The method \'turnFlashlight\' is not implemented');
209
- }
210
- }, {
211
- key: "setAutoLightOffTimer",
212
- value: function setAutoLightOffTimer(flashlightTimeout) {
213
- throw new TypeError('The method \'setAutoLightOffTimer\' is not implemented');
214
- }
215
- /* eslint-enable no-unused-vars */
216
-
217
- }]);
218
-
219
- return TsMediaStream;
220
- }(_eventEmitter.EventEmitter);
221
-
222
- exports.TsMediaStream = TsMediaStream;
223
- //# sourceMappingURL=stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["oldCode/stream.js"],"names":["STREAM_EVENTS","PROPERTY_CHANGED","TsMediaStream","id","session","isRemote","videoTrackSettings","registerStream","remote","_width","width","_height","height","_environment","TsEnvironmentDetect","videoEl","videoWidth","videoHeight","stream","property","value","videoDimensions","_session","emit","SESSION_EVENTS","STREAM_PROPERTY_CHANGED","subscriber","_clearUpdateDimensionsInterval","isIE11","isIOS","$","on","_updateVideoDimensions","intervalId","setInterval","hasVideo","SUBSCRIBER_EVENTS","DESTROYED","clearInterval","tsMediaElement","timeout","format","quality","x","y","w","h","TypeError","isTorchOn","flashlightTimeout","EventEmitter"],"mappings":"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","sourcesContent":["import {EventEmitter} from './event-emitter';\n\nimport {\n EVENTS as SESSION_EVENTS\n} from './session';\n\nimport {\n EVENTS as SUBSCRIBER_EVENTS\n} from './subscriber';\n\nimport {TsEnvironmentDetect} from '@techsee/techsee-common/lib/helpers/ts-environment-detect';\n\n/**\n * @enum STREAM_EVENTS\n */\nconst STREAM_EVENTS = {\n PROPERTY_CHANGED: 'PROPERTY_CHANGED'\n};\n\nexport {STREAM_EVENTS as EVENTS};\n\n/**\n * Media stream wrapper.\n *\n * Represents video or audio stream, local or remote.\n *\n * General interface for the specific implementations - TsOpenTokStream or TsWebRTCStream\n *\n * @interface\n *\n * @see TsOpenTokStream\n * @see TsWebRTCStream\n */\nexport class TsMediaStream extends EventEmitter {\n constructor(id, session, isRemote = true, videoTrackSettings) {\n super();\n\n session.registerStream(id, this);\n this.remote = isRemote;\n\n if (videoTrackSettings) {\n this._width = videoTrackSettings.width;\n this._height = videoTrackSettings.height;\n }\n\n /**\n * Environment detector\n *\n * @protected\n * @member { Object }\n */\n this._environment = new TsEnvironmentDetect();\n }\n\n /**\n * Stream video dimensions\n *\n * @member { Object }\n * @type { Object }\n */\n get videoDimensions() {\n // FIXME the fallback dimensions should be removed, and the Opentok/Webrtc implementations\n // should pass the dimensions just like loopback does. I suspect current behavior is\n // the cause of the video element \"jumping\" (change size) on initial connection\n return {width: this._width || 480, height: this._height || 640};\n }\n\n _updateVideoDimensions(videoEl) {\n if (videoEl) {\n this._width = videoEl.videoWidth;\n this._height = videoEl.videoHeight;\n\n const stream = this;\n const property = 'videoDimensions';\n const value = this.videoDimensions;\n\n this._session.emit(SESSION_EVENTS.STREAM_PROPERTY_CHANGED, {stream, property, value});\n }\n }\n\n setupDimensionsListener(videoEl, subscriber) {\n this._clearUpdateDimensionsInterval();\n\n this._width = videoEl.videoWidth;\n this._height = videoEl.videoHeight;\n\n if (!subscriber && !this._environment.isIE11() && !this._environment.isIOS()) {\n $(videoEl).on('resize', () => this._updateVideoDimensions(videoEl));\n } else {\n this.intervalId = setInterval(() => {\n if (subscriber && !(subscriber.stream && subscriber.stream.hasVideo)) {\n return;\n }\n\n if (this._width !== videoEl.videoWidth || this._height !== videoEl.videoHeight) {\n this._updateVideoDimensions(videoEl);\n }\n }, 500);\n }\n\n if (subscriber && this.intervalId) {\n subscriber.on(SUBSCRIBER_EVENTS.DESTROYED, () => {\n this._clearUpdateDimensionsInterval();\n });\n }\n }\n\n _clearUpdateDimensionsInterval() {\n if (this.intervalId) {\n clearInterval(this.intervalId);\n\n this.intervalId = null;\n }\n }\n\n /* eslint-disable no-unused-vars */\n /**\n * Get snapshot of the current frame in the media stream\n *\n * Used internally in (TsMediaPublisher | TsMediaSubscriber).getSnapshot\n *\n * @method\n * @param { TsMediaPublisher | TsMediaSubscriber } tsMediaElement\n * @param { Number } timeout Usually used in IE. Time between video element transformation and snapshot.\n * @param { Object } options\n * format: Output MIME type (image/png or image/jpeg; default: image/png).\n * quality: Output quality (between 0 and 1; default: 0.92; applies only when the format is image/jpeg).\n * x: The x coordinate of the crop starting position.\n * y: The y coordinate of the crop starting position.\n * w: Crop width.\n * h: Crop Height.\n *\n * @returns { Promise<String> } snapshot\n */\n getSnapshot(tsMediaElement, timeout = 0, {format = 'image/png', quality = 0.92, x, y, w, h} = {}) {\n throw new TypeError('The method \\'getSnapshot\\' is not implemented');\n }\n\n turnFlashlight(isTorchOn = true) {\n throw new TypeError('The method \\'turnFlashlight\\' is not implemented');\n }\n\n setAutoLightOffTimer(flashlightTimeout) {\n throw new TypeError('The method \\'setAutoLightOffTimer\\' is not implemented');\n }\n\n /* eslint-enable no-unused-vars */\n}\n\n"],"file":"stream.js"}
@@ -1,115 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.TsMediaSubscriber = exports.EVENTS = void 0;
9
-
10
- var _eventEmitter = require("./event-emitter");
11
-
12
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
13
-
14
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
15
-
16
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
17
-
18
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
19
-
20
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
21
-
22
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
23
-
24
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
25
-
26
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
27
-
28
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
29
-
30
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
31
-
32
- /**
33
- * @enum SUBSCRIBER_EVENTS
34
- */
35
- var SUBSCRIBER_EVENTS = {
36
- DESTROYED: 'DESTROYED',
37
- DISCONNECTED: 'DISCONNECTED'
38
- };
39
- exports.EVENTS = SUBSCRIBER_EVENTS;
40
-
41
- /**
42
- * Subscriber object represents subscription to a media stream.
43
- *
44
- * Exposes session and stream wrapper methods specific for media subscription.
45
- *
46
- * Instance is returned by TsMediaStream.subscribe() call
47
- *
48
- * @class
49
- *
50
- * @see TsMediaStream
51
- */
52
- var TsMediaSubscriber = /*#__PURE__*/function (_EventEmitter) {
53
- _inherits(TsMediaSubscriber, _EventEmitter);
54
-
55
- var _super = _createSuper(TsMediaSubscriber);
56
-
57
- function TsMediaSubscriber(data) {
58
- var _this;
59
-
60
- _classCallCheck(this, TsMediaSubscriber);
61
-
62
- _this = _super.call(this);
63
-
64
- _.assign(_assertThisInitialized(_this), data);
65
-
66
- return _this;
67
- }
68
- /**
69
- * Unsubscribe from the media stream and destroy subscriber's view
70
- *
71
- * @method
72
- */
73
-
74
-
75
- _createClass(TsMediaSubscriber, [{
76
- key: "destroy",
77
- value: function destroy() {
78
- return this.stream.destroySubscriber(this);
79
- }
80
- /**
81
- * Get snapshot of the current frame in the media stream
82
- *
83
- * @method
84
- * @param { Number } timeout Usually used in IE.
85
- * Time between video element transformation and snapshot.
86
- *
87
- * @param { Object } options Snapshot options: format, quality and crop positions
88
- *
89
- * @returns { Promise<String> } snapshot
90
- */
91
-
92
- }, {
93
- key: "getSnapshot",
94
- value: function getSnapshot(timeout, options) {
95
- return this.stream.getSnapshot(this, timeout, options);
96
- }
97
- /**
98
- * Get statistics of the media subscription like bytes received.
99
- *
100
- * @method
101
- * @returns { Promise<ToBeDefined> } stats
102
- */
103
-
104
- }, {
105
- key: "getStats",
106
- value: function getStats() {
107
- return this.stream.getStats(this);
108
- }
109
- }]);
110
-
111
- return TsMediaSubscriber;
112
- }(_eventEmitter.EventEmitter);
113
-
114
- exports.TsMediaSubscriber = TsMediaSubscriber;
115
- //# sourceMappingURL=subscriber.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["oldCode/subscriber.js"],"names":["SUBSCRIBER_EVENTS","DESTROYED","DISCONNECTED","TsMediaSubscriber","data","_","assign","stream","destroySubscriber","timeout","options","getSnapshot","getStats","EventEmitter"],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA,IAAMA,iBAAiB,GAAG;AACtBC,EAAAA,SAAS,EAAE,WADW;AAEtBC,EAAAA,YAAY,EAAE;AAFQ,CAA1B;;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaC,iB;;;;;AACT,6BAAYC,IAAZ,EAAkB;AAAA;;AAAA;;AACd;;AAEAC,IAAAA,CAAC,CAACC,MAAF,gCAAeF,IAAf;;AAHc;AAIjB;AAED;AACJ;AACA;AACA;AACA;;;;;WACI,mBAAU;AACN,aAAO,KAAKG,MAAL,CAAYC,iBAAZ,CAA8B,IAA9B,CAAP;AACH;AAED;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;WACI,qBAAYC,OAAZ,EAAqBC,OAArB,EAA8B;AAC1B,aAAO,KAAKH,MAAL,CAAYI,WAAZ,CAAwB,IAAxB,EAA8BF,OAA9B,EAAuCC,OAAvC,CAAP;AACH;AAED;AACJ;AACA;AACA;AACA;AACA;;;;WACI,oBAAW;AACP,aAAO,KAAKH,MAAL,CAAYK,QAAZ,CAAqB,IAArB,CAAP;AACH;;;;EAvCkCC,0B","sourcesContent":["import { EventEmitter } from './event-emitter';\n\n/**\n * @enum SUBSCRIBER_EVENTS\n */\nconst SUBSCRIBER_EVENTS = {\n DESTROYED: 'DESTROYED',\n DISCONNECTED: 'DISCONNECTED',\n};\n\nexport { SUBSCRIBER_EVENTS as EVENTS };\n\n/**\n * Subscriber object represents subscription to a media stream.\n *\n * Exposes session and stream wrapper methods specific for media subscription.\n *\n * Instance is returned by TsMediaStream.subscribe() call\n *\n * @class\n *\n * @see TsMediaStream\n */\nexport class TsMediaSubscriber extends EventEmitter {\n constructor(data) {\n super();\n\n _.assign(this, data);\n }\n\n /**\n * Unsubscribe from the media stream and destroy subscriber's view\n *\n * @method\n */\n destroy() {\n return this.stream.destroySubscriber(this);\n }\n\n /**\n * Get snapshot of the current frame in the media stream\n *\n * @method\n * @param { Number } timeout Usually used in IE.\n * Time between video element transformation and snapshot.\n *\n * @param { Object } options Snapshot options: format, quality and crop positions\n *\n * @returns { Promise<String> } snapshot\n */\n getSnapshot(timeout, options) {\n return this.stream.getSnapshot(this, timeout, options);\n }\n\n /**\n * Get statistics of the media subscription like bytes received.\n *\n * @method\n * @returns { Promise<ToBeDefined> } stats\n */\n getStats() {\n return this.stream.getStats(this);\n }\n}\n\n"],"file":"subscriber.js"}
@@ -1,36 +0,0 @@
1
- export declare enum TsTracerType {
2
- WebRtcSessionTrace = "WebRtcSessionTrace",
3
- TSMediaServiceHelper = "TSMediaServiceHelper"
4
- }
5
- export interface ITsTracerEvent {
6
- readonly Type: TsTracerType;
7
- readonly Message: string;
8
- readonly Extra: any[];
9
- }
10
- export interface ITsTraceEvent {
11
- (event: ITsTracerEvent): any;
12
- }
13
- export declare class TsTracer {
14
- private _enabled;
15
- private readonly _type;
16
- private readonly _callback;
17
- consoleOutputEnabled: boolean;
18
- constructor(tracerType: TsTracerType, enabled: boolean, callback: ITsTraceEvent);
19
- get Enabled(): boolean;
20
- set Enabled(enabled: boolean);
21
- get TracerType(): TsTracerType;
22
- trace(message: string, ...rest: any[]): void;
23
- }
24
- export declare class TsTracers {
25
- private _tracers;
26
- private _callbacks;
27
- constructor();
28
- register(callback: ITsTraceEvent): void;
29
- unregister(callback: ITsTraceEvent): void;
30
- private _add;
31
- enableTracers(value: boolean): void;
32
- enableConsoleOutput(): void;
33
- getTracer(tracerType: TsTracerType): TsTracer | undefined;
34
- }
35
- export declare function getTracers(): TsTracers;
36
- export declare function getTracer(tracerType?: TsTracerType): TsTracer | undefined;
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/oldCode/tracer.ts"],"names":[],"mappings":"AAAA,oBAAY,YAAY;IACpB,kBAAkB,uBAAuB;IACzC,oBAAoB,yBAAyB;CAChD;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC1B,CAAC,KAAK,EAAE,cAAc,GAAG,GAAG,CAAA;CAC/B;AA0BD,qBAAa,QAAQ;IACjB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiD;IACvE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IACnC,oBAAoB,EAAE,OAAO,CAAS;gBAEjC,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa;IAM/E,IAAI,OAAO,IAIU,OAAO,CAF3B;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,OAAO,EAE3B;IAED,IAAI,UAAU,iBAEb;IAED,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAaxC;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,UAAU,CAA4B;;IAY9C,QAAQ,CAAC,QAAQ,EAAE,aAAa;IAMhC,UAAU,CAAC,QAAQ,EAAE,aAAa;IAQlC,OAAO,CAAC,IAAI;IASZ,aAAa,CAAC,KAAK,EAAE,OAAO;IAQ5B,mBAAmB;IAQnB,SAAS,CAAC,UAAU,EAAE,YAAY;CAIrC;AAID,wBAAgB,UAAU,IAAI,SAAS,CAEtC;AAED,wBAAgB,SAAS,CAAC,UAAU,GAAE,YAA8C,wBAGnF","file":"tracer.d.ts","sourcesContent":["export enum TsTracerType {\n WebRtcSessionTrace = 'WebRtcSessionTrace',\n TSMediaServiceHelper = 'TSMediaServiceHelper'\n}\n\nexport interface ITsTracerEvent {\n readonly Type: TsTracerType;\n readonly Message: string;\n readonly Extra: any[];\n}\n\nexport interface ITsTraceEvent {\n (event: ITsTracerEvent): any\n}\n\nclass TsTracerEvent implements ITsTracerEvent {\n private _type: TsTracerType = TsTracerType.WebRtcSessionTrace;\n private _message: string = '';\n private _extra: any[];\n\n constructor(type: TsTracerType, message: string, extra: any[]) {\n this._type = type;\n this._message = message;\n this._extra = extra;\n }\n\n get Type(): TsTracerType {\n return this._type;\n }\n\n get Message(): string {\n return this._message;\n }\n\n get Extra(): any[] {\n return this._extra;\n }\n}\n\nexport class TsTracer {\n private _enabled: boolean = false;\n private readonly _type: TsTracerType = TsTracerType.WebRtcSessionTrace;\n private readonly _callback: ITsTraceEvent;\n public consoleOutputEnabled: boolean = false;\n\n constructor(tracerType: TsTracerType, enabled: boolean, callback: ITsTraceEvent) {\n this._type = tracerType;\n this._enabled = enabled;\n this._callback = callback;\n }\n\n get Enabled() {\n return this._enabled;\n }\n\n set Enabled(enabled: boolean) {\n this._enabled = enabled;\n }\n\n get TracerType() {\n return this._type;\n }\n\n trace(message: string, ...rest: any[]) {\n if (this.consoleOutputEnabled) {\n console.log(`${this._type}:${message}`, ...rest);\n }\n\n if (!this.Enabled) {\n return;\n }\n\n if (this._callback) {\n this._callback(new TsTracerEvent(this._type, message, rest));\n }\n }\n}\n\nexport class TsTracers {\n private _tracers: Array<TsTracer> = [];\n private _callbacks: Array<ITsTraceEvent> = [];\n\n constructor() {\n\n // @ts-ignore\n _.keys(TsTracerType).forEach((tracerType: string) => {\n\n // @ts-ignore\n this._add(TsTracerType[tracerType]);\n });\n }\n\n register(callback: ITsTraceEvent) {\n if (this._callbacks.indexOf(callback) < 0) {\n this._callbacks.push(callback);\n }\n }\n\n unregister(callback: ITsTraceEvent) {\n let index = this._callbacks.indexOf(callback);\n\n if (index >= 0) {\n this._callbacks.splice(index, 1);\n }\n }\n\n private _add(tracerType: TsTracerType) {\n const tracer = new TsTracer(tracerType, false, (event: ITsTracerEvent) => {\n // @ts-ignore\n _.forEach(this._callbacks, (callback) => callback(event));\n });\n\n this._tracers.push(tracer);\n }\n\n enableTracers(value: boolean) {\n // @ts-ignore\n _.forEach(this._tracers, (tracer) => {\n tracer.Enabled = value;\n\n });\n }\n\n enableConsoleOutput() {\n // @ts-ignore\n _.forEach(this._tracers, (tracer) => {\n tracer.consoleOutputEnabled = true;\n\n });\n }\n\n getTracer(tracerType: TsTracerType) {\n // @ts-ignore\n return _.find(this._tracers, (tracer) => tracer.TracerType === tracerType);\n }\n}\n\nconst tracers = new TsTracers();\n\nexport function getTracers(): TsTracers {\n return tracers;\n}\n\nexport function getTracer(tracerType: TsTracerType = TsTracerType.WebRtcSessionTrace) {\n\n return getTracers().getTracer(tracerType);\n}\n"]}
@@ -1,202 +0,0 @@
1
- "use strict";
2
-
3
- var __spreadArrays = void 0 && (void 0).__spreadArrays || function () {
4
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) {
5
- s += arguments[i].length;
6
- }
7
-
8
- for (var r = Array(s), k = 0, i = 0; i < il; i++) {
9
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) {
10
- r[k] = a[j];
11
- }
12
- }
13
-
14
- return r;
15
- };
16
-
17
- Object.defineProperty(exports, "__esModule", {
18
- value: true
19
- });
20
- exports.getTracer = exports.getTracers = exports.TsTracers = exports.TsTracer = exports.TsTracerType = void 0;
21
- var TsTracerType;
22
-
23
- (function (TsTracerType) {
24
- TsTracerType["WebRtcSessionTrace"] = "WebRtcSessionTrace";
25
- TsTracerType["TSMediaServiceHelper"] = "TSMediaServiceHelper";
26
- })(TsTracerType = exports.TsTracerType || (exports.TsTracerType = {}));
27
-
28
- var TsTracerEvent =
29
- /** @class */
30
- function () {
31
- function TsTracerEvent(type, message, extra) {
32
- this._type = TsTracerType.WebRtcSessionTrace;
33
- this._message = '';
34
- this._type = type;
35
- this._message = message;
36
- this._extra = extra;
37
- }
38
-
39
- Object.defineProperty(TsTracerEvent.prototype, "Type", {
40
- get: function get() {
41
- return this._type;
42
- },
43
- enumerable: false,
44
- configurable: true
45
- });
46
- Object.defineProperty(TsTracerEvent.prototype, "Message", {
47
- get: function get() {
48
- return this._message;
49
- },
50
- enumerable: false,
51
- configurable: true
52
- });
53
- Object.defineProperty(TsTracerEvent.prototype, "Extra", {
54
- get: function get() {
55
- return this._extra;
56
- },
57
- enumerable: false,
58
- configurable: true
59
- });
60
- return TsTracerEvent;
61
- }();
62
-
63
- var TsTracer =
64
- /** @class */
65
- function () {
66
- function TsTracer(tracerType, enabled, callback) {
67
- this._enabled = false;
68
- this._type = TsTracerType.WebRtcSessionTrace;
69
- this.consoleOutputEnabled = false;
70
- this._type = tracerType;
71
- this._enabled = enabled;
72
- this._callback = callback;
73
- }
74
-
75
- Object.defineProperty(TsTracer.prototype, "Enabled", {
76
- get: function get() {
77
- return this._enabled;
78
- },
79
- set: function set(enabled) {
80
- this._enabled = enabled;
81
- },
82
- enumerable: false,
83
- configurable: true
84
- });
85
- Object.defineProperty(TsTracer.prototype, "TracerType", {
86
- get: function get() {
87
- return this._type;
88
- },
89
- enumerable: false,
90
- configurable: true
91
- });
92
-
93
- TsTracer.prototype.trace = function (message) {
94
- var rest = [];
95
-
96
- for (var _i = 1; _i < arguments.length; _i++) {
97
- rest[_i - 1] = arguments[_i];
98
- }
99
-
100
- if (this.consoleOutputEnabled) {
101
- console.log.apply(console, __spreadArrays([this._type + ":" + message], rest));
102
- }
103
-
104
- if (!this.Enabled) {
105
- return;
106
- }
107
-
108
- if (this._callback) {
109
- this._callback(new TsTracerEvent(this._type, message, rest));
110
- }
111
- };
112
-
113
- return TsTracer;
114
- }();
115
-
116
- exports.TsTracer = TsTracer;
117
-
118
- var TsTracers =
119
- /** @class */
120
- function () {
121
- function TsTracers() {
122
- var _this = this;
123
-
124
- this._tracers = [];
125
- this._callbacks = []; // @ts-ignore
126
-
127
- _.keys(TsTracerType).forEach(function (tracerType) {
128
- // @ts-ignore
129
- _this._add(TsTracerType[tracerType]);
130
- });
131
- }
132
-
133
- TsTracers.prototype.register = function (callback) {
134
- if (this._callbacks.indexOf(callback) < 0) {
135
- this._callbacks.push(callback);
136
- }
137
- };
138
-
139
- TsTracers.prototype.unregister = function (callback) {
140
- var index = this._callbacks.indexOf(callback);
141
-
142
- if (index >= 0) {
143
- this._callbacks.splice(index, 1);
144
- }
145
- };
146
-
147
- TsTracers.prototype._add = function (tracerType) {
148
- var _this = this;
149
-
150
- var tracer = new TsTracer(tracerType, false, function (event) {
151
- // @ts-ignore
152
- _.forEach(_this._callbacks, function (callback) {
153
- return callback(event);
154
- });
155
- });
156
-
157
- this._tracers.push(tracer);
158
- };
159
-
160
- TsTracers.prototype.enableTracers = function (value) {
161
- // @ts-ignore
162
- _.forEach(this._tracers, function (tracer) {
163
- tracer.Enabled = value;
164
- });
165
- };
166
-
167
- TsTracers.prototype.enableConsoleOutput = function () {
168
- // @ts-ignore
169
- _.forEach(this._tracers, function (tracer) {
170
- tracer.consoleOutputEnabled = true;
171
- });
172
- };
173
-
174
- TsTracers.prototype.getTracer = function (tracerType) {
175
- // @ts-ignore
176
- return _.find(this._tracers, function (tracer) {
177
- return tracer.TracerType === tracerType;
178
- });
179
- };
180
-
181
- return TsTracers;
182
- }();
183
-
184
- exports.TsTracers = TsTracers;
185
- var tracers = new TsTracers();
186
-
187
- function getTracers() {
188
- return tracers;
189
- }
190
-
191
- exports.getTracers = getTracers;
192
-
193
- function getTracer(tracerType) {
194
- if (tracerType === void 0) {
195
- tracerType = TsTracerType.WebRtcSessionTrace;
196
- }
197
-
198
- return getTracers().getTracer(tracerType);
199
- }
200
-
201
- exports.getTracer = getTracer;
202
- //# sourceMappingURL=tracer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["oldCode/tracer.js"],"names":["__spreadArrays","s","i","il","arguments","length","r","Array","k","a","j","jl","Object","defineProperty","exports","value","getTracer","getTracers","TsTracers","TsTracer","TsTracerType","TsTracerEvent","type","message","extra","_type","WebRtcSessionTrace","_message","_extra","prototype","get","enumerable","configurable","tracerType","enabled","callback","_enabled","consoleOutputEnabled","_callback","set","trace","rest","_i","console","log","apply","Enabled","_this","_tracers","_callbacks","_","keys","forEach","_add","register","indexOf","push","unregister","index","splice","tracer","event","enableTracers","enableConsoleOutput","find","TracerType","tracers"],"mappings":"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","file":"tracer.js","sourcesContent":["\"use strict\";\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTracer = exports.getTracers = exports.TsTracers = exports.TsTracer = exports.TsTracerType = void 0;\nvar TsTracerType;\n(function (TsTracerType) {\n TsTracerType[\"WebRtcSessionTrace\"] = \"WebRtcSessionTrace\";\n TsTracerType[\"TSMediaServiceHelper\"] = \"TSMediaServiceHelper\";\n})(TsTracerType = exports.TsTracerType || (exports.TsTracerType = {}));\nvar TsTracerEvent = /** @class */ (function () {\n function TsTracerEvent(type, message, extra) {\n this._type = TsTracerType.WebRtcSessionTrace;\n this._message = '';\n this._type = type;\n this._message = message;\n this._extra = extra;\n }\n Object.defineProperty(TsTracerEvent.prototype, \"Type\", {\n get: function () {\n return this._type;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TsTracerEvent.prototype, \"Message\", {\n get: function () {\n return this._message;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TsTracerEvent.prototype, \"Extra\", {\n get: function () {\n return this._extra;\n },\n enumerable: false,\n configurable: true\n });\n return TsTracerEvent;\n}());\nvar TsTracer = /** @class */ (function () {\n function TsTracer(tracerType, enabled, callback) {\n this._enabled = false;\n this._type = TsTracerType.WebRtcSessionTrace;\n this.consoleOutputEnabled = false;\n this._type = tracerType;\n this._enabled = enabled;\n this._callback = callback;\n }\n Object.defineProperty(TsTracer.prototype, \"Enabled\", {\n get: function () {\n return this._enabled;\n },\n set: function (enabled) {\n this._enabled = enabled;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TsTracer.prototype, \"TracerType\", {\n get: function () {\n return this._type;\n },\n enumerable: false,\n configurable: true\n });\n TsTracer.prototype.trace = function (message) {\n var rest = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n rest[_i - 1] = arguments[_i];\n }\n if (this.consoleOutputEnabled) {\n console.log.apply(console, __spreadArrays([this._type + \":\" + message], rest));\n }\n if (!this.Enabled) {\n return;\n }\n if (this._callback) {\n this._callback(new TsTracerEvent(this._type, message, rest));\n }\n };\n return TsTracer;\n}());\nexports.TsTracer = TsTracer;\nvar TsTracers = /** @class */ (function () {\n function TsTracers() {\n var _this = this;\n this._tracers = [];\n this._callbacks = [];\n // @ts-ignore\n _.keys(TsTracerType).forEach(function (tracerType) {\n // @ts-ignore\n _this._add(TsTracerType[tracerType]);\n });\n }\n TsTracers.prototype.register = function (callback) {\n if (this._callbacks.indexOf(callback) < 0) {\n this._callbacks.push(callback);\n }\n };\n TsTracers.prototype.unregister = function (callback) {\n var index = this._callbacks.indexOf(callback);\n if (index >= 0) {\n this._callbacks.splice(index, 1);\n }\n };\n TsTracers.prototype._add = function (tracerType) {\n var _this = this;\n var tracer = new TsTracer(tracerType, false, function (event) {\n // @ts-ignore\n _.forEach(_this._callbacks, function (callback) { return callback(event); });\n });\n this._tracers.push(tracer);\n };\n TsTracers.prototype.enableTracers = function (value) {\n // @ts-ignore\n _.forEach(this._tracers, function (tracer) {\n tracer.Enabled = value;\n });\n };\n TsTracers.prototype.enableConsoleOutput = function () {\n // @ts-ignore\n _.forEach(this._tracers, function (tracer) {\n tracer.consoleOutputEnabled = true;\n });\n };\n TsTracers.prototype.getTracer = function (tracerType) {\n // @ts-ignore\n return _.find(this._tracers, function (tracer) { return tracer.TracerType === tracerType; });\n };\n return TsTracers;\n}());\nexports.TsTracers = TsTracers;\nvar tracers = new TsTracers();\nfunction getTracers() {\n return tracers;\n}\nexports.getTracers = getTracers;\nfunction getTracer(tracerType) {\n if (tracerType === void 0) { tracerType = TsTracerType.WebRtcSessionTrace; }\n return getTracers().getTracer(tracerType);\n}\nexports.getTracer = getTracer;\n\n//# sourceMappingURL=tracer.js.map\n"]}
@@ -1 +0,0 @@
1
- export declare function fixDataUrl(dataUrl: string, useHighQuality: boolean): Promise<string>;
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/oldCode/utils/ImageFixer.ts"],"names":[],"mappings":"AAOA,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAWpF","file":"ImageFixer.d.ts","sourcesContent":["const FIX_SETTINGS = {\n imageSizeThreshold: 640000, // 0.64 MP images and larger get resized\n highQualityImageSizeThreshold: 16000000, // 4000x4000 MP images and larger get resized\n defaultMime: 'image/jpeg',\n imageQuality: 0.8\n};\n\nexport function fixDataUrl(dataUrl: string, useHighQuality: boolean): Promise<string> {\n return _dataUrlToImage(dataUrl)\n .then((image: any) => {\n const resizeRequirement = _isResizeRequired(image, useHighQuality);\n\n if (resizeRequirement.resized) {\n return _resizeCanvas(image, resizeRequirement);\n }\n\n return dataUrl;\n });\n}\n\nfunction _dataUrlToImage(dataUrl: string) {\n return new Promise((resolve, reject) => {\n const img = new Image();\n\n img.onload = () => resolve(img);\n img.onerror = (err) => reject(err);\n img.src = dataUrl;\n });\n}\n\nfunction _isResizeRequired(image: any, useHighQuality?: boolean) {\n const maxImageSize = useHighQuality\n ? FIX_SETTINGS.highQualityImageSizeThreshold\n : FIX_SETTINGS.imageSizeThreshold;\n\n if (image.naturalWidth * image.naturalHeight > maxImageSize) {\n const ratio = image.naturalWidth / image.naturalHeight,\n newWidth = Math.sqrt(maxImageSize * ratio),\n newHeight = newWidth / ratio;\n\n return {resized: true, width: newWidth, height: newHeight};\n }\n\n return {width: image.naturalWidth, height: image.naturalHeight};\n}\n\nfunction _resizeCanvas(image: any, size: any) {\n const canvas = document.createElement('canvas') as HTMLCanvasElement;\n const ctx = canvas.getContext('2d');\n\n if (!ctx) {\n throw new Error('RESIZE_CANVAS_FAILED');\n }\n\n const {width, height} = size || _isResizeRequired(image);\n\n canvas.width = width;\n canvas.height = height;\n\n ctx.drawImage(image, 0, 0, canvas.width, canvas.height);\n\n return canvas.toDataURL(FIX_SETTINGS.defaultMime, FIX_SETTINGS.imageQuality);\n}\n"]}