android-emulator-webrtc 1.0.17 → 2.0.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 (72) hide show
  1. package/README.md +93 -204
  2. package/dist/components/emulator/emulator.d.ts +64 -0
  3. package/dist/components/emulator/emulator.js +161 -173
  4. package/dist/components/emulator/net/emulator_status.d.ts +45 -0
  5. package/dist/components/emulator/net/emulator_status.js +35 -42
  6. package/dist/components/emulator/net/logcat.js +37 -54
  7. package/dist/components/emulator/net/logger.d.ts +7 -0
  8. package/dist/components/emulator/net/logger.js +20 -0
  9. package/dist/components/emulator/net/ws_jsep_protocol_driver.d.ts +213 -0
  10. package/dist/components/emulator/net/ws_jsep_protocol_driver.js +640 -0
  11. package/dist/components/emulator/views/event_handler.d.ts +37 -0
  12. package/dist/components/emulator/views/event_handler.js +274 -260
  13. package/dist/components/emulator/views/webrtc_view.d.ts +27 -0
  14. package/dist/components/emulator/views/webrtc_view.js +42 -25
  15. package/dist/index.d.ts +8 -0
  16. package/dist/index.js +0 -7
  17. package/dist/proto/emulator_controller_pb.d.ts +1 -0
  18. package/dist/proto/emulator_controller_pb.js +146 -287
  19. package/dist/src/components/emulator/emulator.d.ts +64 -0
  20. package/dist/src/components/emulator/net/emulator_status.d.ts +45 -0
  21. package/dist/src/components/emulator/net/logger.d.ts +7 -0
  22. package/dist/src/components/emulator/net/ws_jsep_protocol_driver.d.ts +213 -0
  23. package/dist/src/components/emulator/views/event_handler.d.ts +37 -0
  24. package/dist/src/components/emulator/views/webrtc_view.d.ts +27 -0
  25. package/dist/src/index.d.ts +8 -0
  26. package/dist/src/proto/emulator_controller_pb.d.ts +1 -0
  27. package/package.json +17 -18
  28. package/proto/emulator_controller.proto +746 -181
  29. package/.vscode/launch.json +0 -21
  30. package/.vscode/settings.json +0 -3
  31. package/CONTRIBUTING.md +0 -28
  32. package/Makefile +0 -123
  33. package/android-emulator-webrtc.code-workspace +0 -7
  34. package/api_descriptor.pb +0 -0
  35. package/babel.config.js +0 -16
  36. package/cloudbuild.yaml +0 -41
  37. package/cloudbuilders/.gcloudignore +0 -1
  38. package/cloudbuilders/Dockerfile +0 -20
  39. package/cloudbuilders/README.md +0 -29
  40. package/cloudbuilders/cloudbuild.yaml +0 -19
  41. package/dist/components/emulator/net/jsep_protocol_driver.js +0 -365
  42. package/dist/components/emulator/views/resizing_component.js +0 -86
  43. package/dist/components/emulator/views/simple_png_view.js +0 -111
  44. package/dist/proto/emulator_controller_grpc_web_pb.js +0 -1601
  45. package/dist/proto/emulator_web_client.js +0 -176
  46. package/dist/proto/rtc_service_grpc_web_pb.js +0 -231
  47. package/dist/proto/rtc_service_pb.js +0 -338
  48. package/emulator/index.js +0 -1
  49. package/eslint_prefix.py +0 -37
  50. package/gen_md_doc.js +0 -40
  51. package/npmrc.enc +0 -0
  52. package/proto/rtc_service.proto +0 -117
  53. package/protoc-plugin/Makefile +0 -31
  54. package/protoc-plugin/grpc_generator.cc +0 -1755
  55. package/src/components/emulator/emulator.js +0 -217
  56. package/src/components/emulator/net/emulator_status.js +0 -94
  57. package/src/components/emulator/net/jsep_protocol_driver.js +0 -364
  58. package/src/components/emulator/net/logcat.js +0 -155
  59. package/src/components/emulator/views/event_handler.js +0 -268
  60. package/src/components/emulator/views/resizing_component.js +0 -65
  61. package/src/components/emulator/views/simple_png_view.js +0 -106
  62. package/src/components/emulator/views/webrtc_view.js +0 -146
  63. package/src/index.js +0 -20
  64. package/src/proto/emulator_web_client.js +0 -140
  65. package/test/cloudbuild.yaml +0 -41
  66. package/test/emulator.test.js +0 -125
  67. package/test/event_handler.test.js +0 -91
  68. package/test/fake_events.js +0 -50
  69. package/test/jsep_protocol_driver.test.js +0 -228
  70. package/test/resizing_component.test.js +0 -37
  71. package/test/simple_png_view.test.js +0 -145
  72. package/test/touch_event_handler.test.js +0 -118
@@ -1,86 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _react = _interopRequireDefault(require("react"));
11
- var _resizeObserver = _interopRequireDefault(require("@react-hook/resize-observer"));
12
- /**
13
- * @jest-environment jsdom
14
- */
15
- /*
16
- * Copyright 2023 The Android Open Source Project
17
- *
18
- * Licensed under the Apache License, Version 2.0 (the "License")
19
- * you may not use this file except in compliance with the License.
20
- * You may obtain a copy of the License at
21
- *
22
- * http://www.apache.org/licenses/LICENSE-2.0
23
- *
24
- * Unless required by applicable law or agreed to in writing, software
25
- * distributed under the License is distributed on an "AS IS" BASIS,
26
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27
- * See the License for the specific language governing permissions and
28
- * limitations under the License.
29
- */
30
-
31
- function useSize(target, onResize) {
32
- var _React$useState = _react["default"].useState(),
33
- _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
34
- size = _React$useState2[0],
35
- setSize = _React$useState2[1];
36
- _react["default"].useLayoutEffect(function () {
37
- if (target) {
38
- var newSize = target.getBoundingClientRect();
39
- console.log("Resizing to ".concat(JSON.stringify(newSize)));
40
- setSize(newSize);
41
- if (onResize) {
42
- onResize(newSize);
43
- }
44
- }
45
- }, [target]);
46
-
47
- // Where the magic happens
48
- (0, _resizeObserver["default"])(target, function (entry) {
49
- setSize(entry.contentRect);
50
- if (onResize) {
51
- console.log("Resizing to ".concat(JSON.stringify(entry.contentRect)));
52
- onResize(entry.contentRect);
53
- }
54
- });
55
- return size;
56
- }
57
- function ResizingComponent(_ref) {
58
- var children = _ref.children,
59
- onResize = _ref.onResize,
60
- dataTestId = _ref["data-testid"];
61
- // const ref = useRef();
62
- var _React$useState3 = _react["default"].useState(),
63
- _React$useState4 = (0, _slicedToArray2["default"])(_React$useState3, 2),
64
- target = _React$useState4[0],
65
- setTarget = _React$useState4[1];
66
- var size = useSize(target, onResize);
67
- return /*#__PURE__*/_react["default"].createElement("div", {
68
- style: {
69
- width: "100%",
70
- height: "100%"
71
- },
72
- ref: setTarget,
73
- "data-testid": dataTestId
74
- }, /*#__PURE__*/_react["default"].createElement("div", {
75
- style: {
76
- width: size === null || size === void 0 ? void 0 : size.width,
77
- height: size === null || size === void 0 ? void 0 : size.height
78
- }
79
- }, children));
80
- }
81
- ResizingComponent.propTypes = {
82
- onResize: _propTypes["default"].func,
83
- "data-testid": _propTypes["default"].string
84
- };
85
- var _default = ResizingComponent;
86
- exports["default"] = _default;
@@ -1,111 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _react = _interopRequireWildcard(require("react"));
12
- var Proto = _interopRequireWildcard(require("../../../proto/emulator_controller_pb"));
13
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
- var EmulatorPngView = function EmulatorPngView(_ref) {
16
- var emulator = _ref.emulator,
17
- onStateChange = _ref.onStateChange,
18
- poll = _ref.poll,
19
- width = _ref.width,
20
- height = _ref.height,
21
- dataTestId = _ref["data-testid"];
22
- var _useState = (0, _react.useState)(""),
23
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
24
- png = _useState2[0],
25
- setPng = _useState2[1];
26
- var _useState3 = (0, _react.useState)("connecting"),
27
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
28
- connect = _useState4[0],
29
- setConnect = _useState4[1];
30
- var screenShot = null;
31
- (0, _react.useEffect)(function () {
32
- startStream();
33
- return function () {
34
- setConnect("disconnected");
35
- if (screenShot) {
36
- screenShot.cancel();
37
- }
38
- };
39
- }, [width, height]);
40
- (0, _react.useEffect)(function () {
41
- console.log("Png state changed to: " + connect);
42
- if (onStateChange) {
43
- onStateChange(connect);
44
- }
45
- }, [connect]);
46
- var startStream = function startStream() {
47
- setConnect("connecting");
48
- var request = new Proto.ImageFormat();
49
- if (!isNaN(width)) {
50
- request.setWidth(Math.floor(width));
51
- }
52
- if (!isNaN(height)) {
53
- request.setWidth(Math.floor(height));
54
- }
55
- if (poll && connect !== "disconnected") {
56
- emulator.getScreenshot(request, {}, function (err, response) {
57
- setConnect("connected");
58
- setPng("data:image/jpeg;base64," + response.getImage_asB64());
59
- startStream();
60
- });
61
- } else {
62
- var receivedImage = false;
63
- screenShot = emulator.streamScreenshot(request);
64
- screenShot.on("data", function (response) {
65
- receivedImage = true;
66
- setConnect("connected");
67
- setPng("data:image/jpeg;base64," + response.getImage_asB64());
68
- });
69
- screenShot.on("error", function (e) {
70
- console.warn("Screenshot stream broken", e);
71
- if (receivedImage) {
72
- setConnect("connecting");
73
- startStream();
74
- } else {
75
- setConnect("disconnected");
76
- }
77
- });
78
- }
79
- };
80
- var preventDragHandler = function preventDragHandler(e) {
81
- e.preventDefault();
82
- };
83
- return /*#__PURE__*/_react["default"].createElement("div", {
84
- width: width,
85
- style: {
86
- display: "block",
87
- position: "relative",
88
- height: "100%",
89
- objectFit: "contain",
90
- objectPosition: "center"
91
- },
92
- onDragStart: preventDragHandler
93
- }, /*#__PURE__*/_react["default"].createElement("img", {
94
- src: png,
95
- width: "100%",
96
- draggable: "false",
97
- style: {
98
- pointerEvents: "none"
99
- }
100
- }));
101
- };
102
- EmulatorPngView.propTypes = {
103
- emulator: _propTypes["default"].object,
104
- onStateChange: _propTypes["default"].func,
105
- poll: _propTypes["default"].bool,
106
- width: _propTypes["default"].number,
107
- height: _propTypes["default"].number,
108
- "data-testid": _propTypes["default"].string
109
- };
110
- var _default = EmulatorPngView;
111
- exports["default"] = _default;