agora-rte-sdk 2.3.1 → 2.5.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 (92) hide show
  1. package/lib/configs/index.d.ts +0 -5
  2. package/lib/configs/index.js +153 -0
  3. package/lib/core/decorator/bound/index.d.ts +4 -4
  4. package/lib/core/decorator/bound/index.js +108 -0
  5. package/lib/core/decorator/handlers/log-handler.js +45 -0
  6. package/lib/core/decorator/index.d.ts +3 -3
  7. package/lib/core/decorator/index.js +31 -0
  8. package/lib/core/decorator/lodash/index.d.ts +5 -4
  9. package/lib/core/decorator/lodash/index.js +153 -0
  10. package/lib/core/decorator/log/index.js +109 -0
  11. package/lib/core/decorator/log/log-serializer.js +50 -0
  12. package/lib/core/decorator/log/logger.js +51 -0
  13. package/lib/core/decorator/proxy.js +168 -0
  14. package/lib/core/decorator/type.js +20 -0
  15. package/lib/core/decorator/utils.js +26 -0
  16. package/lib/core/engine/index.d.ts +3 -0
  17. package/lib/core/engine/index.js +338 -0
  18. package/lib/core/logger/db.js +64 -0
  19. package/lib/core/logger/index.js +355 -0
  20. package/lib/core/logger/log.worker.js +130 -0
  21. package/lib/core/logger/mutex.js +86 -0
  22. package/lib/core/media/control.js +244 -0
  23. package/lib/core/media/track.js +208 -0
  24. package/lib/core/processor/channel-msg/data.js +132 -0
  25. package/lib/core/processor/channel-msg/handler.js +714 -0
  26. package/lib/core/processor/channel-msg/struct.d.ts +7 -0
  27. package/lib/core/processor/channel-msg/struct.js +271 -0
  28. package/lib/core/processor/channel-msg/synchronizer.js +368 -0
  29. package/lib/core/rc/index.d.ts +78 -0
  30. package/lib/core/rc/index.js +702 -0
  31. package/lib/core/rc/type.d.ts +28 -0
  32. package/lib/core/rc/type.js +25 -0
  33. package/lib/core/rtc/adapter/base.d.ts +2 -2
  34. package/lib/core/rtc/adapter/base.js +94 -0
  35. package/lib/core/rtc/adapter/electron/device.js +382 -0
  36. package/lib/core/rtc/adapter/electron/index.d.ts +3 -2
  37. package/lib/core/rtc/adapter/electron/index.js +864 -0
  38. package/lib/core/rtc/adapter/electron/stats.d.ts +2 -0
  39. package/lib/core/rtc/adapter/electron/stats.js +57 -0
  40. package/lib/core/rtc/adapter/electron/thread.d.ts +1 -1
  41. package/lib/core/rtc/adapter/electron/thread.js +293 -0
  42. package/lib/core/rtc/adapter/electron-ng/device.d.ts +39 -0
  43. package/lib/core/rtc/adapter/electron-ng/device.js +382 -0
  44. package/lib/core/rtc/adapter/electron-ng/index.d.ts +106 -0
  45. package/lib/core/rtc/adapter/electron-ng/index.js +976 -0
  46. package/lib/core/rtc/adapter/electron-ng/stats.d.ts +16 -0
  47. package/lib/core/rtc/adapter/electron-ng/stats.js +74 -0
  48. package/lib/core/rtc/adapter/electron-ng/thread.d.ts +19 -0
  49. package/lib/core/rtc/adapter/electron-ng/thread.js +264 -0
  50. package/lib/core/rtc/adapter/index.js +42 -0
  51. package/lib/core/rtc/adapter/web/client.d.ts +6 -3
  52. package/lib/core/rtc/adapter/web/client.js +761 -0
  53. package/lib/core/rtc/adapter/web/device.js +551 -0
  54. package/lib/core/rtc/adapter/web/index.d.ts +2 -2
  55. package/lib/core/rtc/adapter/web/index.js +591 -0
  56. package/lib/core/rtc/adapter/web/player.js +264 -0
  57. package/lib/core/rtc/adapter/web/stats.d.ts +6 -0
  58. package/lib/core/rtc/adapter/web/stats.js +55 -0
  59. package/lib/core/rtc/adapter/web/thread.js +1246 -0
  60. package/lib/core/rtc/canvas.js +80 -0
  61. package/lib/core/rtc/channel.d.ts +2 -2
  62. package/lib/core/rtc/channel.js +129 -0
  63. package/lib/core/rtc/index.js +249 -0
  64. package/lib/core/rtc/type.d.ts +4 -6
  65. package/lib/core/rtc/type.js +95 -0
  66. package/lib/core/rtm/index.js +495 -0
  67. package/lib/core/schedule/index.js +40 -0
  68. package/lib/core/schedule/scheduler.js +141 -0
  69. package/lib/core/schedule/task.js +212 -0
  70. package/lib/core/services/api.js +536 -0
  71. package/lib/core/services/base.js +172 -0
  72. package/lib/core/services/log.js +193 -0
  73. package/lib/core/services/oss.js +403 -0
  74. package/lib/core/services/report.js +398 -0
  75. package/lib/core/utils/decorator.js +101 -0
  76. package/lib/core/utils/error.js +201 -0
  77. package/lib/core/utils/events.js +165 -0
  78. package/lib/core/utils/http-client.js +83 -0
  79. package/lib/core/utils/networkutils.js +95 -0
  80. package/lib/core/utils/thread.js +119 -0
  81. package/lib/core/utils/types.js +23 -0
  82. package/lib/core/utils/utils.d.ts +7 -2
  83. package/lib/core/utils/utils.js +242 -0
  84. package/lib/index.d.ts +6 -4
  85. package/lib/index.js +355 -2
  86. package/lib/scene/index.d.ts +3 -2
  87. package/lib/scene/index.js +755 -0
  88. package/lib/type.js +34 -0
  89. package/lib/user/index.js +476 -0
  90. package/package.json +34 -25
  91. package/lib/index.js.LICENSE.txt +0 -93
  92. package/lib/index.worker.js +0 -1
@@ -1,9 +1,4 @@
1
1
  import { AGRtcConfig } from '../core/rtc/adapter';
2
- declare global {
3
- interface Window {
4
- isElectron: boolean;
5
- }
6
- }
7
2
  export declare enum AgoraRteLogLevel {
8
3
  OFF = 0,
9
4
  ERROR = 1,
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.keys.js");
4
+
5
+ require("core-js/modules/es.symbol.js");
6
+
7
+ require("core-js/modules/es.array.filter.js");
8
+
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+
11
+ require("core-js/modules/es.array.for-each.js");
12
+
13
+ require("core-js/modules/web.dom-collections.for-each.js");
14
+
15
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
16
+
17
+ require("core-js/modules/es.object.define-properties.js");
18
+
19
+ require("core-js/modules/es.object.define-property.js");
20
+
21
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
22
+
23
+ Object.defineProperty(exports, "__esModule", {
24
+ value: true
25
+ });
26
+ exports.RteLanguage = exports.AgoraRteRuntimePlatform = exports.AgoraRteLogLevel = exports.AgoraRteEngineConfig = exports.AgoraRegion = void 0;
27
+
28
+ require("core-js/modules/es.array.index-of.js");
29
+
30
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
+
32
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
33
+
34
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
35
+
36
+ var _error = require("../core/utils/error");
37
+
38
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
39
+
40
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
41
+
42
+ var AgoraRteLogLevel;
43
+ exports.AgoraRteLogLevel = AgoraRteLogLevel;
44
+
45
+ (function (AgoraRteLogLevel) {
46
+ AgoraRteLogLevel[AgoraRteLogLevel["OFF"] = 0] = "OFF";
47
+ AgoraRteLogLevel[AgoraRteLogLevel["ERROR"] = 1] = "ERROR";
48
+ AgoraRteLogLevel[AgoraRteLogLevel["WARN"] = 2] = "WARN";
49
+ AgoraRteLogLevel[AgoraRteLogLevel["INFO"] = 3] = "INFO";
50
+ AgoraRteLogLevel[AgoraRteLogLevel["DEBUG"] = 4] = "DEBUG";
51
+ AgoraRteLogLevel[AgoraRteLogLevel["VERBOSE"] = 5] = "VERBOSE";
52
+ })(AgoraRteLogLevel || (exports.AgoraRteLogLevel = AgoraRteLogLevel = {}));
53
+
54
+ var AgoraRteRuntimePlatform;
55
+ exports.AgoraRteRuntimePlatform = AgoraRteRuntimePlatform;
56
+
57
+ (function (AgoraRteRuntimePlatform) {
58
+ AgoraRteRuntimePlatform[AgoraRteRuntimePlatform["Electron"] = 0] = "Electron";
59
+ AgoraRteRuntimePlatform[AgoraRteRuntimePlatform["Web"] = 1] = "Web";
60
+ })(AgoraRteRuntimePlatform || (exports.AgoraRteRuntimePlatform = AgoraRteRuntimePlatform = {}));
61
+
62
+ var RteLanguage;
63
+ exports.RteLanguage = RteLanguage;
64
+
65
+ (function (RteLanguage) {
66
+ RteLanguage["zh"] = "zh";
67
+ RteLanguage["en"] = "en";
68
+ })(RteLanguage || (exports.RteLanguage = RteLanguage = {}));
69
+
70
+ var AgoraRegion;
71
+ exports.AgoraRegion = AgoraRegion;
72
+
73
+ (function (AgoraRegion) {
74
+ AgoraRegion["CN"] = "CN";
75
+ AgoraRegion["AP"] = "AP";
76
+ AgoraRegion["EU"] = "EU";
77
+ AgoraRegion["NA"] = "NA";
78
+ })(AgoraRegion || (exports.AgoraRegion = AgoraRegion = {}));
79
+
80
+ var AgoraRteEngineConfig = /*#__PURE__*/function () {
81
+ function AgoraRteEngineConfig(appId, opts) {
82
+ (0, _classCallCheck2["default"])(this, AgoraRteEngineConfig);
83
+ this.appId = void 0;
84
+ this.service = {};
85
+ this.rtcConfigs = {};
86
+ this.logFilePath = void 0;
87
+ this.rtcSDKParameters = [];
88
+ this.userId = '';
89
+ this.token = '';
90
+ this.ignoreUrlRegionPrefix = false;
91
+ this.language = RteLanguage.zh;
92
+ this.debugI18n = false;
93
+ this.region = AgoraRegion.CN;
94
+ this.SCENE_JOIN_RETRY_ATTEMPTS = 3;
95
+ this.appId = appId;
96
+
97
+ if (opts) {
98
+ if (opts.language) {
99
+ this.language = opts.language;
100
+ }
101
+
102
+ if (opts.region) {
103
+ this.region = opts.region;
104
+ }
105
+
106
+ if (opts.rtcConfigs) {
107
+ this.rtcConfigs = _objectSpread(_objectSpread({}, this.rtcConfigs), opts.rtcConfigs);
108
+ }
109
+
110
+ if (opts.rtcSDKParameters) {
111
+ this.rtcSDKParameters = opts.rtcSDKParameters;
112
+ }
113
+ }
114
+ }
115
+
116
+ (0, _createClass2["default"])(AgoraRteEngineConfig, null, [{
117
+ key: "shared",
118
+ get: function get() {
119
+ if (!this._config) {
120
+ return _error.RteErrorCenter.shared.handleThrowableError(_error.AGRteErrorCode.RTE_ERR_CONFIG_NOT_READY, new Error("classroom config not ready"));
121
+ }
122
+
123
+ return this._config;
124
+ }
125
+ }, {
126
+ key: "setConfig",
127
+ value: function setConfig(config) {
128
+ this._config = config;
129
+ }
130
+ }, {
131
+ key: "platform",
132
+ get: function get() {
133
+ var userAgent = navigator.userAgent.toLowerCase();
134
+
135
+ if (userAgent.indexOf(' electron/') > -1) {
136
+ // Electron-specific code
137
+ return AgoraRteRuntimePlatform.Electron;
138
+ }
139
+
140
+ return AgoraRteRuntimePlatform.Web;
141
+ }
142
+ }, {
143
+ key: "version",
144
+ get: function get() {
145
+ return RTE_SDK_VERSION;
146
+ }
147
+ }]);
148
+ return AgoraRteEngineConfig;
149
+ }();
150
+
151
+ exports.AgoraRteEngineConfig = AgoraRteEngineConfig;
152
+ AgoraRteEngineConfig._config = void 0;
153
+ AgoraRteEngineConfig.logLevel = AgoraRteLogLevel.DEBUG;
@@ -1,11 +1,11 @@
1
- declare const bound: (proto: any, propertyName: string, descriptor: PropertyDescriptor) => {
1
+ export declare const cleanup: () => void;
2
+ export declare const bound: (proto: any, propertyName: string, descriptor: PropertyDescriptor) => {
2
3
  configurable: boolean;
3
4
  enumerable: boolean;
4
5
  get(this: {
5
- __cacheMap: WeakMap<Object, any>;
6
+ __cacheMap?: WeakMap<Object, any> | undefined;
6
7
  }): any;
7
8
  set(this: {
8
- __cacheMap: WeakMap<Object, any>;
9
+ __cacheMap?: WeakMap<Object, any> | undefined;
9
10
  }, v: any): void;
10
11
  };
11
- export { bound };
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.cleanup = exports.bound = void 0;
9
+
10
+ require("core-js/modules/es.array.iterator.js");
11
+
12
+ require("core-js/modules/es.object.to-string.js");
13
+
14
+ require("core-js/modules/es.set.js");
15
+
16
+ require("core-js/modules/es.string.iterator.js");
17
+
18
+ require("core-js/modules/esnext.set.add-all.js");
19
+
20
+ require("core-js/modules/esnext.set.delete-all.js");
21
+
22
+ require("core-js/modules/esnext.set.difference.js");
23
+
24
+ require("core-js/modules/esnext.set.every.js");
25
+
26
+ require("core-js/modules/esnext.set.filter.js");
27
+
28
+ require("core-js/modules/esnext.set.find.js");
29
+
30
+ require("core-js/modules/esnext.set.intersection.js");
31
+
32
+ require("core-js/modules/esnext.set.is-disjoint-from.js");
33
+
34
+ require("core-js/modules/esnext.set.is-subset-of.js");
35
+
36
+ require("core-js/modules/esnext.set.is-superset-of.js");
37
+
38
+ require("core-js/modules/esnext.set.join.js");
39
+
40
+ require("core-js/modules/esnext.set.map.js");
41
+
42
+ require("core-js/modules/esnext.set.reduce.js");
43
+
44
+ require("core-js/modules/esnext.set.some.js");
45
+
46
+ require("core-js/modules/esnext.set.symmetric-difference.js");
47
+
48
+ require("core-js/modules/esnext.set.union.js");
49
+
50
+ require("core-js/modules/web.dom-collections.iterator.js");
51
+
52
+ require("core-js/modules/es.array.for-each.js");
53
+
54
+ require("core-js/modules/web.dom-collections.for-each.js");
55
+
56
+ require("core-js/modules/es.weak-map.js");
57
+
58
+ require("core-js/modules/esnext.weak-map.delete-all.js");
59
+
60
+ require("core-js/modules/es.function.bind.js");
61
+
62
+ var registry = new Set();
63
+
64
+ var cleanup = function cleanup() {
65
+ registry.forEach(function (r) {
66
+ delete r.__cacheMap;
67
+ });
68
+ registry = new Set();
69
+ };
70
+
71
+ exports.cleanup = cleanup;
72
+
73
+ var bound = function bound(proto, propertyName, descriptor) {
74
+ var value = descriptor.value;
75
+ return {
76
+ configurable: true,
77
+ enumerable: false,
78
+ get: function get() {
79
+ var cacheMap = this.__cacheMap;
80
+
81
+ if (!cacheMap) {
82
+ cacheMap = new WeakMap();
83
+ this.__cacheMap = cacheMap;
84
+ registry.add(this);
85
+ }
86
+
87
+ if (!cacheMap.has(value)) {
88
+ cacheMap.set(value, value.bind(this));
89
+ }
90
+
91
+ var cache = cacheMap.get(value);
92
+ return cache;
93
+ },
94
+ set: function set(v) {
95
+ var cacheMap = this.__cacheMap;
96
+
97
+ if (!cacheMap) {
98
+ cacheMap = new WeakMap();
99
+ this.__cacheMap = cacheMap;
100
+ registry.add(this);
101
+ }
102
+
103
+ cacheMap.set(v, v.bind(this));
104
+ }
105
+ };
106
+ };
107
+
108
+ exports.bound = bound;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.createLogHandler = void 0;
9
+
10
+ require("core-js/modules/es.date.to-string.js");
11
+
12
+ require("core-js/modules/es.array.concat.js");
13
+
14
+ var _logger = require("../../logger");
15
+
16
+ var _type = require("../type");
17
+
18
+ var noop = function noop() {};
19
+
20
+ var createLogHandler = function createLogHandler(level) {
21
+ var log = _logger.Logger[level] || noop;
22
+ return function (evt) {
23
+ if (evt.type === _type.InvocationEventType.pre) {
24
+ var _evt$arguments;
25
+
26
+ evt.context.start = new Date().getTime();
27
+ var message = ["[".concat(evt["class"], "] >>> [").concat(evt.method, "]")];
28
+ ((_evt$arguments = evt.arguments) === null || _evt$arguments === void 0 ? void 0 : _evt$arguments.length) && message.push(', args:', evt.arguments); //@ts-ignore
29
+
30
+ log.apply(void 0, message);
31
+ } else {
32
+ var elapsed = new Date().getTime() - evt.context.start;
33
+ var _message = ["[".concat(evt["class"], "] <<< [").concat(evt.method, "]")];
34
+ evt["return"] && _message.push(', return:', evt["return"]);
35
+ evt.error && _message.push(', err:', evt.error);
36
+
37
+ _message.push(", Time elapsed: ".concat(elapsed, "ms")); //@ts-ignore
38
+
39
+
40
+ log.apply(void 0, _message);
41
+ }
42
+ };
43
+ };
44
+
45
+ exports.createLogHandler = createLogHandler;
@@ -1,4 +1,4 @@
1
- export * from './log';
2
- export * from './bound';
3
- export * from './lodash';
1
+ export { Log } from './log';
2
+ export { bound } from './bound';
3
+ export { Lodash } from './lodash';
4
4
  export type { Injectable } from './type';
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "Lodash", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _lodash.Lodash;
12
+ }
13
+ });
14
+ Object.defineProperty(exports, "Log", {
15
+ enumerable: true,
16
+ get: function get() {
17
+ return _log.Log;
18
+ }
19
+ });
20
+ Object.defineProperty(exports, "bound", {
21
+ enumerable: true,
22
+ get: function get() {
23
+ return _bound.bound;
24
+ }
25
+ });
26
+
27
+ var _log = require("./log");
28
+
29
+ var _bound = require("./bound");
30
+
31
+ var _lodash = require("./lodash");
@@ -1,23 +1,24 @@
1
1
  import { DebounceSettings, ThrottleSettings } from 'lodash';
2
+ export declare const cleanup: () => void;
2
3
  export declare const Lodash: {
3
4
  debounced: (wait?: number | undefined, options?: DebounceSettings | undefined) => (proto: any, propertyName: string, descriptor: PropertyDescriptor) => {
4
5
  configurable: boolean;
5
6
  enumerable: boolean;
6
7
  get(this: {
7
- __cacheMap: WeakMap<Object, any>;
8
+ __cacheMap?: WeakMap<Object, any> | undefined;
8
9
  }): any;
9
10
  set(this: {
10
- __cacheMap: WeakMap<Object, any>;
11
+ __cacheMap?: WeakMap<Object, any> | undefined;
11
12
  }, v: any): void;
12
13
  };
13
14
  throttled: (wait?: number | undefined, options?: ThrottleSettings | undefined) => (proto: any, propertyName: string, descriptor: PropertyDescriptor) => {
14
15
  configurable: boolean;
15
16
  enumerable: boolean;
16
17
  get(this: {
17
- __cacheMap: WeakMap<Object, any>;
18
+ __cacheMap?: WeakMap<Object, any> | undefined;
18
19
  }): any;
19
20
  set(this: {
20
- __cacheMap: WeakMap<Object, any>;
21
+ __cacheMap?: WeakMap<Object, any> | undefined;
21
22
  }, v: any): void;
22
23
  };
23
24
  };
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.cleanup = exports.Lodash = void 0;
9
+
10
+ require("core-js/modules/es.array.iterator.js");
11
+
12
+ require("core-js/modules/es.object.to-string.js");
13
+
14
+ require("core-js/modules/es.set.js");
15
+
16
+ require("core-js/modules/es.string.iterator.js");
17
+
18
+ require("core-js/modules/esnext.set.add-all.js");
19
+
20
+ require("core-js/modules/esnext.set.delete-all.js");
21
+
22
+ require("core-js/modules/esnext.set.difference.js");
23
+
24
+ require("core-js/modules/esnext.set.every.js");
25
+
26
+ require("core-js/modules/esnext.set.filter.js");
27
+
28
+ require("core-js/modules/esnext.set.find.js");
29
+
30
+ require("core-js/modules/esnext.set.intersection.js");
31
+
32
+ require("core-js/modules/esnext.set.is-disjoint-from.js");
33
+
34
+ require("core-js/modules/esnext.set.is-subset-of.js");
35
+
36
+ require("core-js/modules/esnext.set.is-superset-of.js");
37
+
38
+ require("core-js/modules/esnext.set.join.js");
39
+
40
+ require("core-js/modules/esnext.set.map.js");
41
+
42
+ require("core-js/modules/esnext.set.reduce.js");
43
+
44
+ require("core-js/modules/esnext.set.some.js");
45
+
46
+ require("core-js/modules/esnext.set.symmetric-difference.js");
47
+
48
+ require("core-js/modules/esnext.set.union.js");
49
+
50
+ require("core-js/modules/web.dom-collections.iterator.js");
51
+
52
+ require("core-js/modules/es.array.for-each.js");
53
+
54
+ require("core-js/modules/web.dom-collections.for-each.js");
55
+
56
+ require("core-js/modules/es.weak-map.js");
57
+
58
+ require("core-js/modules/esnext.weak-map.delete-all.js");
59
+
60
+ require("core-js/modules/es.function.bind.js");
61
+
62
+ var _lodash = require("lodash");
63
+
64
+ var registry = new Set();
65
+
66
+ var cleanup = function cleanup() {
67
+ registry.forEach(function (r) {
68
+ delete r.__cacheMap;
69
+ });
70
+ registry = new Set();
71
+ };
72
+
73
+ exports.cleanup = cleanup;
74
+
75
+ var debounced = function debounced(wait, options) {
76
+ return function (proto, propertyName, descriptor) {
77
+ var value = descriptor.value;
78
+ return {
79
+ configurable: true,
80
+ enumerable: false,
81
+ get: function get() {
82
+ var cacheMap = this.__cacheMap;
83
+
84
+ if (!cacheMap) {
85
+ cacheMap = new WeakMap();
86
+ this.__cacheMap = cacheMap;
87
+ registry.add(this);
88
+ }
89
+
90
+ if (!cacheMap.has(value)) {
91
+ cacheMap.set(value, (0, _lodash.debounce)(value, wait, options).bind(this));
92
+ }
93
+
94
+ var cache = cacheMap.get(value);
95
+ return cache;
96
+ },
97
+ set: function set(v) {
98
+ var cacheMap = this.__cacheMap;
99
+
100
+ if (!cacheMap) {
101
+ cacheMap = new WeakMap();
102
+ this.__cacheMap = cacheMap;
103
+ registry.add(this);
104
+ }
105
+
106
+ cacheMap.set(v, v.bind(this));
107
+ }
108
+ };
109
+ };
110
+ };
111
+
112
+ var throttled = function throttled(wait, options) {
113
+ return function (proto, propertyName, descriptor) {
114
+ var value = descriptor.value;
115
+ return {
116
+ configurable: true,
117
+ enumerable: false,
118
+ get: function get() {
119
+ var cacheMap = this.__cacheMap;
120
+
121
+ if (!cacheMap) {
122
+ cacheMap = new WeakMap();
123
+ this.__cacheMap = cacheMap;
124
+ registry.add(this);
125
+ }
126
+
127
+ if (!cacheMap.has(value)) {
128
+ cacheMap.set(value, (0, _lodash.throttle)(value, wait, options).bind(this));
129
+ }
130
+
131
+ var cache = cacheMap.get(value);
132
+ return cache;
133
+ },
134
+ set: function set(v) {
135
+ var cacheMap = this.__cacheMap;
136
+
137
+ if (!cacheMap) {
138
+ cacheMap = new WeakMap();
139
+ this.__cacheMap = cacheMap;
140
+ registry.add(this);
141
+ }
142
+
143
+ cacheMap.set(v, v.bind(this));
144
+ }
145
+ };
146
+ };
147
+ };
148
+
149
+ var Lodash = {
150
+ debounced: debounced,
151
+ throttled: throttled
152
+ };
153
+ exports.Lodash = Lodash;
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.Log = void 0;
9
+
10
+ require("core-js/modules/es.function.bind.js");
11
+
12
+ var _utils = require("../utils");
13
+
14
+ var _proxy = require("../proxy");
15
+
16
+ var _logHandler = require("../handlers/log-handler");
17
+
18
+ var _configs = require("../../../configs");
19
+
20
+ var _logger = require("./logger");
21
+
22
+ var info = function info(proto, propertyName, descriptor) {
23
+ var context = {};
24
+ var handler = (0, _logHandler.createLogHandler)('info');
25
+ var method = proto[propertyName];
26
+ var proxy = (0, _proxy.proxyMethod)(method, proto, propertyName, handler, context);
27
+ return {
28
+ configurable: true,
29
+ enumerable: false,
30
+ get: function get() {
31
+ return proxy.bind(this);
32
+ } // value: proxy,
33
+
34
+ };
35
+ };
36
+
37
+ var warn = function warn(proto, propertyName, descriptor) {
38
+ var context = {};
39
+ var handler = (0, _logHandler.createLogHandler)('warn');
40
+ var method = proto[propertyName];
41
+ var proxy = (0, _proxy.proxyMethod)(method, proto, propertyName, handler, context);
42
+ return {
43
+ configurable: true,
44
+ enumerable: false,
45
+ get: function get() {
46
+ return proxy.bind(this);
47
+ } // value: proxy,
48
+
49
+ };
50
+ };
51
+
52
+ var error = function error(proto, propertyName, descriptor) {
53
+ var context = {};
54
+ var handler = (0, _logHandler.createLogHandler)('error');
55
+ var method = proto[propertyName];
56
+ var proxy = (0, _proxy.proxyMethod)(method, proto, propertyName, handler, context);
57
+ return {
58
+ configurable: true,
59
+ enumerable: false,
60
+ get: function get() {
61
+ return proxy.bind(this);
62
+ } // value: proxy,
63
+
64
+ };
65
+ };
66
+
67
+ var silence = function silence(proto, propertyName) {
68
+ (0, _utils.addIgnoredMethodsToPrototype)(proto, [propertyName]);
69
+ };
70
+
71
+ var attach = function attach(_ref) {
72
+ var _ref$level = _ref.level,
73
+ level = _ref$level === void 0 ? _configs.AgoraRteLogLevel.INFO : _ref$level,
74
+ _ref$proxyMethods = _ref.proxyMethods,
75
+ proxyMethods = _ref$proxyMethods === void 0 ? true : _ref$proxyMethods;
76
+ return function (constructor) {
77
+ var l = [, 'error', 'warn', 'info', 'info', 'info'][level];
78
+ var context = {};
79
+ var handler = (0, _logHandler.createLogHandler)(l);
80
+ var logger = (0, _logger.createLogger)(constructor); // proxy all methods
81
+
82
+ return (0, _proxy.extendConstructor)(constructor, handler, context, {
83
+ logger: logger
84
+ }, proxyMethods);
85
+ };
86
+ }; // const inject = (proto: any, propertyName: string) => {
87
+ // Object.defineProperty(proto, propertyName, {
88
+ // value: createLogger(proto.constructor),
89
+ // });
90
+ // return {
91
+ // configurable: true,
92
+ // enumerable: false,
93
+ // get() {
94
+ // createLogger(proto.constructor);
95
+ // return proxyMethod(method, proto, propertyName, handler, context).bind(this);
96
+ // },
97
+ // };
98
+ // };
99
+
100
+
101
+ var Log = {
102
+ info: info,
103
+ warn: warn,
104
+ error: error,
105
+ attach: attach,
106
+ silence: silence // inject,
107
+
108
+ };
109
+ exports.Log = Log;