appium-uiautomator2-driver 8.7.1 → 8.7.2

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 (134) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +1 -0
  3. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi-subscriptions.d.ts +12 -0
  4. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi-subscriptions.d.ts.map +1 -0
  5. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi-subscriptions.js +33 -0
  6. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi-subscriptions.js.map +1 -0
  7. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi.d.ts.map +1 -1
  8. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi.js +49 -12
  9. package/node_modules/@appium/base-driver/build/lib/basedriver/commands/bidi.js.map +1 -1
  10. package/node_modules/@appium/base-driver/build/lib/basedriver/driver.d.ts.map +1 -1
  11. package/node_modules/@appium/base-driver/build/lib/basedriver/driver.js +2 -0
  12. package/node_modules/@appium/base-driver/build/lib/basedriver/driver.js.map +1 -1
  13. package/node_modules/@appium/base-driver/build/lib/express/middleware.d.ts +17 -6
  14. package/node_modules/@appium/base-driver/build/lib/express/middleware.d.ts.map +1 -1
  15. package/node_modules/@appium/base-driver/build/lib/express/middleware.js +11 -7
  16. package/node_modules/@appium/base-driver/build/lib/express/middleware.js.map +1 -1
  17. package/node_modules/@appium/base-driver/build/lib/express/server.d.ts +1 -0
  18. package/node_modules/@appium/base-driver/build/lib/express/server.d.ts.map +1 -1
  19. package/node_modules/@appium/base-driver/build/lib/express/server.js +4 -3
  20. package/node_modules/@appium/base-driver/build/lib/express/server.js.map +1 -1
  21. package/node_modules/@appium/base-driver/build/lib/protocol/bidi-commands.d.ts +1 -2
  22. package/node_modules/@appium/base-driver/build/lib/protocol/bidi-commands.d.ts.map +1 -1
  23. package/node_modules/@appium/base-driver/build/lib/protocol/bidi-commands.js +8 -3
  24. package/node_modules/@appium/base-driver/build/lib/protocol/bidi-commands.js.map +1 -1
  25. package/node_modules/@appium/base-driver/lib/basedriver/commands/bidi-subscriptions.ts +36 -0
  26. package/node_modules/@appium/base-driver/lib/basedriver/commands/bidi.ts +56 -12
  27. package/node_modules/@appium/base-driver/lib/basedriver/driver.ts +2 -0
  28. package/node_modules/@appium/base-driver/lib/express/middleware.ts +32 -12
  29. package/node_modules/@appium/base-driver/lib/express/server.ts +7 -2
  30. package/node_modules/@appium/base-driver/lib/protocol/bidi-commands.ts +9 -3
  31. package/node_modules/@appium/base-driver/package.json +6 -6
  32. package/node_modules/@appium/support/build/lib/npm.d.ts.map +1 -1
  33. package/node_modules/@appium/support/build/lib/npm.js +2 -1
  34. package/node_modules/@appium/support/build/lib/npm.js.map +1 -1
  35. package/node_modules/@appium/support/build/lib/util.d.ts.map +1 -1
  36. package/node_modules/@appium/support/build/lib/util.js +13 -1
  37. package/node_modules/@appium/support/build/lib/util.js.map +1 -1
  38. package/node_modules/@appium/support/build/lib/zip.d.ts +2 -1
  39. package/node_modules/@appium/support/build/lib/zip.d.ts.map +1 -1
  40. package/node_modules/@appium/support/build/lib/zip.js +193 -64
  41. package/node_modules/@appium/support/build/lib/zip.js.map +1 -1
  42. package/node_modules/@appium/support/lib/npm.ts +2 -1
  43. package/node_modules/@appium/support/lib/util.ts +13 -1
  44. package/node_modules/@appium/support/lib/zip.ts +231 -71
  45. package/node_modules/@appium/support/package.json +6 -6
  46. package/node_modules/@appium/types/build/lib/commands/basedriver.d.ts +6 -4
  47. package/node_modules/@appium/types/build/lib/commands/basedriver.d.ts.map +1 -1
  48. package/node_modules/@appium/types/lib/commands/basedriver.ts +4 -4
  49. package/node_modules/@appium/types/package.json +2 -2
  50. package/node_modules/body-parser/README.md +17 -13
  51. package/node_modules/body-parser/lib/read.js +74 -57
  52. package/node_modules/body-parser/lib/types/json.js +11 -11
  53. package/node_modules/body-parser/lib/types/urlencoded.js +5 -5
  54. package/node_modules/body-parser/lib/utils.js +0 -15
  55. package/node_modules/body-parser/package.json +7 -12
  56. package/node_modules/qs/.editorconfig +1 -1
  57. package/node_modules/qs/CHANGELOG.md +45 -22
  58. package/node_modules/qs/README.md +26 -1
  59. package/node_modules/qs/dist/qs.js +27 -27
  60. package/node_modules/qs/eslint.config.mjs +61 -50
  61. package/node_modules/qs/lib/formats.js +7 -2
  62. package/node_modules/qs/lib/parse.js +13 -6
  63. package/node_modules/qs/lib/stringify.js +5 -3
  64. package/node_modules/qs/lib/utils.js +15 -7
  65. package/node_modules/qs/package.json +6 -6
  66. package/node_modules/qs/test/parse.js +266 -2
  67. package/node_modules/qs/test/stringify.js +222 -0
  68. package/node_modules/qs/test/utils.js +61 -3
  69. package/node_modules/shell-quote/README.md +37 -4
  70. package/node_modules/shell-quote/package.json +10 -6
  71. package/node_modules/shell-quote/parse.d.ts +1 -1
  72. package/node_modules/shell-quote/parse.js +63 -11
  73. package/node_modules/shell-quote/quote.d.ts +2 -1
  74. package/node_modules/shell-quote/quote.js +23 -3
  75. package/node_modules/uuid/package.json +17 -17
  76. package/node_modules/ws/lib/websocket.js +17 -3
  77. package/node_modules/ws/package.json +1 -1
  78. package/package.json +1 -1
  79. package/node_modules/@appium/base-driver/node_modules/asyncbox/LICENSE +0 -203
  80. package/node_modules/@appium/base-driver/node_modules/asyncbox/README.md +0 -215
  81. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/asyncbox.d.ts +0 -103
  82. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/asyncbox.d.ts.map +0 -1
  83. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/asyncbox.js +0 -311
  84. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/asyncbox.js.map +0 -1
  85. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/types.d.ts +0 -84
  86. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/types.d.ts.map +0 -1
  87. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/types.js +0 -3
  88. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/lib/types.js.map +0 -1
  89. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/cjs/package.json +0 -3
  90. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/asyncbox.d.ts +0 -103
  91. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/asyncbox.d.ts.map +0 -1
  92. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/asyncbox.js +0 -298
  93. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/asyncbox.js.map +0 -1
  94. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/types.d.ts +0 -84
  95. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/types.d.ts.map +0 -1
  96. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/types.js +0 -2
  97. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/lib/types.js.map +0 -1
  98. package/node_modules/@appium/base-driver/node_modules/asyncbox/build/esm/package.json +0 -3
  99. package/node_modules/@appium/base-driver/node_modules/asyncbox/lib/asyncbox.ts +0 -382
  100. package/node_modules/@appium/base-driver/node_modules/asyncbox/lib/types.ts +0 -88
  101. package/node_modules/@appium/base-driver/node_modules/asyncbox/package.json +0 -74
  102. package/node_modules/@appium/support/node_modules/asyncbox/LICENSE +0 -203
  103. package/node_modules/@appium/support/node_modules/asyncbox/README.md +0 -215
  104. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.d.ts +0 -103
  105. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.d.ts.map +0 -1
  106. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.js +0 -311
  107. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.js.map +0 -1
  108. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.d.ts +0 -84
  109. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.d.ts.map +0 -1
  110. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.js +0 -3
  111. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.js.map +0 -1
  112. package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/package.json +0 -3
  113. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.d.ts +0 -103
  114. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.d.ts.map +0 -1
  115. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.js +0 -298
  116. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.js.map +0 -1
  117. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.d.ts +0 -84
  118. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.d.ts.map +0 -1
  119. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.js +0 -2
  120. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.js.map +0 -1
  121. package/node_modules/@appium/support/node_modules/asyncbox/build/esm/package.json +0 -3
  122. package/node_modules/@appium/support/node_modules/asyncbox/lib/asyncbox.ts +0 -382
  123. package/node_modules/@appium/support/node_modules/asyncbox/lib/types.ts +0 -88
  124. package/node_modules/@appium/support/node_modules/asyncbox/package.json +0 -74
  125. package/node_modules/shell-quote/.nycrc +0 -14
  126. package/node_modules/shell-quote/eslint.config.mjs +0 -29
  127. package/node_modules/shell-quote/security.md +0 -11
  128. package/node_modules/shell-quote/test/comment.js +0 -16
  129. package/node_modules/shell-quote/test/env.js +0 -52
  130. package/node_modules/shell-quote/test/env_fn.js +0 -21
  131. package/node_modules/shell-quote/test/op.js +0 -102
  132. package/node_modules/shell-quote/test/parse.js +0 -149
  133. package/node_modules/shell-quote/test/quote.js +0 -145
  134. package/node_modules/shell-quote/test/set.js +0 -31
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [8.7.2](https://github.com/appium/appium-uiautomator2-driver/compare/v8.7.1...v8.7.2) (2026-10-27)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * dummy new line to kick a release again ([#1068](https://github.com/appium/appium-uiautomator2-driver/issues/1068)) ([3ea9527](https://github.com/appium/appium-uiautomator2-driver/commit/3ea9527a462fef830e9487a44057cd72c117489e))
6
+
1
7
  ## [8.7.1](https://github.com/appium/appium-uiautomator2-driver/compare/v8.7.0...v8.7.1) (2026-10-26)
2
8
 
3
9
  ### Miscellaneous Chores
package/README.md CHANGED
@@ -2327,3 +2327,4 @@ npm run e2e-test:commands:general
2327
2327
  npm run e2e-test:commands:keyboard
2328
2328
  npm run e2e-test:driver
2329
2329
  ```
2330
+
@@ -0,0 +1,12 @@
1
+ type BidiSubscriptionDriver = {
2
+ bidiEventSubs: Record<string, string[]>;
3
+ };
4
+ type Subscriptions = Map<string, Map<string, string[]>>;
5
+ /** Get (or lazily create) the subscription registry of the given driver */
6
+ export declare function getSubscriptions(driver: object): Subscriptions;
7
+ /** Recompute `bidiEventSubs` as the union of all registered subscriptions */
8
+ export declare function refreshEventSubscriptions(driver: BidiSubscriptionDriver): void;
9
+ /** Forget all subscriptions, e.g. when the session ends */
10
+ export declare function clearBidiSubscriptions(driver: BidiSubscriptionDriver): void;
11
+ export {};
12
+ //# sourceMappingURL=bidi-subscriptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bidi-subscriptions.d.ts","sourceRoot":"","sources":["../../../../lib/basedriver/commands/bidi-subscriptions.ts"],"names":[],"mappings":"AAEA,KAAK,sBAAsB,GAAG;IAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAAC,CAAC;AAGxE,KAAK,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AAIxD,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAO9D;AAED,6EAA6E;AAC7E,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAS9E;AAED,2DAA2D;AAC3D,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAG3E"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSubscriptions = getSubscriptions;
4
+ exports.refreshEventSubscriptions = refreshEventSubscriptions;
5
+ exports.clearBidiSubscriptions = clearBidiSubscriptions;
6
+ const support_1 = require("@appium/support");
7
+ const subscriptionsByDriver = new WeakMap();
8
+ /** Get (or lazily create) the subscription registry of the given driver */
9
+ function getSubscriptions(driver) {
10
+ let subscriptions = subscriptionsByDriver.get(driver);
11
+ if (!subscriptions) {
12
+ subscriptions = new Map();
13
+ subscriptionsByDriver.set(driver, subscriptions);
14
+ }
15
+ return subscriptions;
16
+ }
17
+ /** Recompute `bidiEventSubs` as the union of all registered subscriptions */
18
+ function refreshEventSubscriptions(driver) {
19
+ const events = new Map();
20
+ for (const subscription of getSubscriptions(driver).values()) {
21
+ for (const [event, contexts] of subscription) {
22
+ events.set(event, support_1.util.uniq([...(events.get(event) ?? []), ...contexts]));
23
+ }
24
+ }
25
+ // Object.fromEntries defines own properties, so names like '__proto__' stay safe
26
+ driver.bidiEventSubs = Object.fromEntries(events);
27
+ }
28
+ /** Forget all subscriptions, e.g. when the session ends */
29
+ function clearBidiSubscriptions(driver) {
30
+ subscriptionsByDriver.delete(driver);
31
+ driver.bidiEventSubs = {};
32
+ }
33
+ //# sourceMappingURL=bidi-subscriptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bidi-subscriptions.js","sourceRoot":"","sources":["../../../../lib/basedriver/commands/bidi-subscriptions.ts"],"names":[],"mappings":";;AAUA,4CAOC;AAGD,8DASC;AAGD,wDAGC;AAnCD,6CAAqC;AAOrC,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAAyB,CAAC;AAEnE,2EAA2E;AAC3E,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,IAAI,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,6EAA6E;AAC7E,SAAgB,yBAAyB,CAAC,MAA8B;IACtE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,KAAK,MAAM,YAAY,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC7D,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,cAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IACD,iFAAiF;IACjF,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,2DAA2D;AAC3D,SAAgB,sBAAsB,CAAC,MAA8B;IACnE,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC;AAC5B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bidi.d.ts","sourceRoot":"","sources":["../../../../lib/basedriver/commands/bidi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAgB,aAAa,EAAC,MAAM,eAAe,CAAC;AAK5E,OAAO,QAAQ,WAAW,CAAC;IAEzB,UAAU,UAAU,CAAC,CAAC,SAAS,WAAW,CAAE,SAAQ,aAAa;KAAG;CACrE"}
1
+ {"version":3,"file":"bidi.d.ts","sourceRoot":"","sources":["../../../../lib/basedriver/commands/bidi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAgB,aAAa,EAAC,MAAM,eAAe,CAAC;AAO5E,OAAO,QAAQ,WAAW,CAAC;IAEzB,UAAU,UAAU,CAAC,CAAC,SAAS,WAAW,CAAE,SAAQ,aAAa;KAAG;CACrE"}
@@ -1,25 +1,62 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const support_1 = require("@appium/support");
4
+ const errors_1 = require("../../protocol/errors");
5
+ const bidi_subscriptions_1 = require("./bidi-subscriptions");
4
6
  const mixin_1 = require("./mixin");
7
+ function assertStringList(value, name) {
8
+ if (!Array.isArray(value) || !value.length || value.some((item) => typeof item !== 'string' || !item.length)) {
9
+ throw new errors_1.errors.InvalidArgumentError(`${name} must be a non-empty array of non-empty strings`);
10
+ }
11
+ }
12
+ function assertContexts(value) {
13
+ if (!Array.isArray(value) || value.some((context) => typeof context !== 'string')) {
14
+ throw new errors_1.errors.InvalidArgumentError('contexts must be an array of strings');
15
+ }
16
+ }
5
17
  const BidiCommands = {
6
18
  async bidiSubscribe(events, contexts = ['']) {
7
- for (const event of events) {
8
- // a later subscribe for the same event must keep existing contexts; the spec appends subscriptions
9
- const existing = this.bidiEventSubs[event] ?? [];
10
- this.bidiEventSubs[event] = support_1.util.uniq([...existing, ...contexts]);
11
- }
19
+ assertStringList(events, 'events');
20
+ assertContexts(contexts);
21
+ const subscription = support_1.util.uuidV4();
22
+ (0, bidi_subscriptions_1.getSubscriptions)(this).set(subscription, new Map(events.map((event) => [event, [...contexts]])));
23
+ (0, bidi_subscriptions_1.refreshEventSubscriptions)(this);
24
+ return { subscription };
12
25
  },
13
- async bidiUnsubscribe(events, contexts = ['']) {
14
- for (const event of events) {
15
- if (!this.bidiEventSubs[event]) {
16
- continue;
26
+ async bidiUnsubscribe(events, contexts, subscriptions) {
27
+ const registered = (0, bidi_subscriptions_1.getSubscriptions)(this);
28
+ if (subscriptions === undefined) {
29
+ const contextsToRemove = contexts ?? [''];
30
+ assertStringList(events, 'events');
31
+ assertContexts(contextsToRemove);
32
+ for (const subscription of registered.values()) {
33
+ for (const event of events) {
34
+ const remaining = subscription.get(event)?.filter((c) => !contextsToRemove.includes(c));
35
+ if (remaining?.length) {
36
+ subscription.set(event, remaining);
37
+ }
38
+ else {
39
+ subscription.delete(event);
40
+ }
41
+ }
17
42
  }
18
- this.bidiEventSubs[event] = this.bidiEventSubs[event].filter((c) => !contexts.includes(c));
19
- if (this.bidiEventSubs[event].length === 0) {
20
- delete this.bidiEventSubs[event];
43
+ (0, bidi_subscriptions_1.refreshEventSubscriptions)(this);
44
+ return;
45
+ }
46
+ assertStringList(subscriptions, 'subscriptions');
47
+ if (events !== undefined || contexts !== undefined) {
48
+ throw new errors_1.errors.InvalidArgumentError('subscriptions cannot be combined with events or contexts');
49
+ }
50
+ // validate everything before removing anything
51
+ for (const id of subscriptions) {
52
+ if (!registered.has(id)) {
53
+ throw new errors_1.errors.InvalidArgumentError(`Unknown subscription id: ${id}`);
21
54
  }
22
55
  }
56
+ for (const id of subscriptions) {
57
+ registered.delete(id);
58
+ }
59
+ (0, bidi_subscriptions_1.refreshEventSubscriptions)(this);
23
60
  },
24
61
  async bidiStatus() {
25
62
  const result = await this.getStatus();
@@ -1 +1 @@
1
- {"version":3,"file":"bidi.js","sourceRoot":"","sources":["../../../../lib/basedriver/commands/bidi.ts"],"names":[],"mappings":";;AAAA,6CAAqC;AAIrC,mCAA8B;AAO9B,MAAM,YAAY,GAAkB;IAClC,KAAK,CAAC,aAAa,CAA6C,MAAgB,EAAE,WAAqB,CAAC,EAAE,CAAC;QACzG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,mGAAmG;YACnG,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,cAAI,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAA6C,MAAgB,EAAE,WAAqB,CAAC,EAAE,CAAC;QAC3G,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,SAAS;YACX,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3F,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,IAAI,GAA4B,cAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,MAAM,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,OAAO;YACL,GAAG,IAAI;YACP,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,KAAiB,CAAC,CAAC,CAAC,IAAI;YACvD,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,OAAkB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,8BAA8B;SAC/G,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,IAAA,aAAK,EAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"bidi.js","sourceRoot":"","sources":["../../../../lib/basedriver/commands/bidi.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../lib/basedriver/driver.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,YAAY,EAEjB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AAUvB,OAAO,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAC;AAWlC,qBAAa,UAAU,CACrB,KAAK,CAAC,CAAC,SAAS,WAAW,EAC3B,KAAK,SAAS,YAAY,GAAG,YAAY,EACzC,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,YAAY,GAAG,0BAA0B,CAAC,CAAC,CAAC,EAC5C,YAAY,GAAG,0BAA0B,EACzC,WAAW,SAAS,YAAY,GAAG,YAAY,CAE/C,SAAQ,UAAU,CAAC,CAAC,EAAE,QAAQ,CAC9B,YAAW,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC;IAE9E,OAAO,EAAE,KAAK,GAAG,UAAU,CAAC;IAC5B,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACpB,YAAY,EAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAChC,qBAAqB,EAAG,CAAC,CAAC;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,WAAW,EAAE,kBAAkB,UAAO;IAOxD;;;;;;OAMG;IACH,SAAS,KAAK,sBAAsB,IAAI,QAAQ,CAAC,wBAAwB,GAAG,CAAC,CAAC,CAI7E;IAED;;;;;OAKG;IACG,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAuG1E,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM;IAWjD,uBAAuB,CAAC,GAAG,GAAE,KAA8E;IAY3G,sBAAsB;IAkB5B,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAWrE,KAAK;IAyBX;;;;OAIG;IACG,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAC7E;;;;;;OAMG;IACG,aAAa,CAAC,GAAG,UAAU,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAkFrF;;;;OAIG;IACG,UAAU;IAOhB;;OAEG;IACG,4BAA4B,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAIrE;;OAEG;IAEG,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAa7C,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAalC,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC;IAsB/C,cAAc,CAAC,WAAW,EAAE,QAAQ;IAOpC,WAAW;CAMlB;AAED,cAAc,YAAY,CAAC;AAE3B,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../lib/basedriver/driver.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,YAAY,EAEjB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,KAAK,UAAU,EACf,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AAWvB,OAAO,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAC;AAWlC,qBAAa,UAAU,CACrB,KAAK,CAAC,CAAC,SAAS,WAAW,EAC3B,KAAK,SAAS,YAAY,GAAG,YAAY,EACzC,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,YAAY,GAAG,0BAA0B,CAAC,CAAC,CAAC,EAC5C,YAAY,GAAG,0BAA0B,EACzC,WAAW,SAAS,YAAY,GAAG,YAAY,CAE/C,SAAQ,UAAU,CAAC,CAAC,EAAE,QAAQ,CAC9B,YAAW,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC;IAE9E,OAAO,EAAE,KAAK,GAAG,UAAU,CAAC;IAC5B,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACpB,YAAY,EAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAChC,qBAAqB,EAAG,CAAC,CAAC;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,WAAW,EAAE,kBAAkB,UAAO;IAOxD;;;;;;OAMG;IACH,SAAS,KAAK,sBAAsB,IAAI,QAAQ,CAAC,wBAAwB,GAAG,CAAC,CAAC,CAI7E;IAED;;;;;OAKG;IACG,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAuG1E,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM;IAWjD,uBAAuB,CAAC,GAAG,GAAE,KAA8E;IAY3G,sBAAsB;IAkB5B,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAWrE,KAAK;IAyBX;;;;OAIG;IACG,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAC7E;;;;;;OAMG;IACG,aAAa,CAAC,GAAG,UAAU,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAkFrF;;;;OAIG;IACG,UAAU;IAOhB;;OAEG;IACG,4BAA4B,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAIrE;;OAEG;IAEG,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAc7C,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAalC,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC;IAsB/C,cAAc,CAAC,WAAW,EAAE,QAAQ;IAOpC,WAAW;CAMlB;AAED,cAAc,YAAY,CAAC;AAE3B,eAAe,UAAU,CAAC"}
@@ -46,6 +46,7 @@ const session_1 = require("../helpers/session");
46
46
  const protocol_1 = require("../protocol");
47
47
  const utils_1 = require("../utils");
48
48
  const capabilities_2 = require("./capabilities");
49
+ const bidi_subscriptions_1 = require("./commands/bidi-subscriptions");
49
50
  const core_1 = require("./core");
50
51
  const helpers = __importStar(require("./helpers"));
51
52
  const EVENT_SESSION_INIT = 'newSessionRequested';
@@ -330,6 +331,7 @@ class BaseDriver extends core_1.DriverCore {
330
331
  }
331
332
  }
332
333
  this.sessionId = null;
334
+ (0, bidi_subscriptions_1.clearBidiSubscriptions)(this);
333
335
  }
334
336
  logExtraCaps(caps) {
335
337
  const knownCaps = Object.keys(this._desiredCapConstraints);
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../lib/basedriver/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../lib/basedriver/driver.ts"],"names":[],"mappings":"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"}
@@ -25,24 +25,35 @@ export declare function handleLogContext(req: Request, _res: Response, next: Nex
25
25
  * Ensures requests default to JSON content-type when none is provided.
26
26
  */
27
27
  export declare function defaultToJSONContentType(req: Request, _res: Response, next: NextFunction): void;
28
+ /** Options for {@linkcode tryHandleWebSocketUpgrade} */
29
+ export interface WebSocketUpgradeOpts {
30
+ /** Incoming HTTP request */
31
+ req: IncomingMessage;
32
+ /** Network socket */
33
+ socket: Duplex;
34
+ /** First packet of the upgraded stream */
35
+ head: Buffer;
36
+ /** Path-to-WebSocket-server mapping */
37
+ webSocketsMapping: StringRecord<WSServer>;
38
+ /** Whether upgrades carrying an `Origin` header are accepted */
39
+ allowCors?: boolean;
40
+ }
28
41
  /**
29
42
  * Attempts to handle a WebSocket upgrade by matching the request path against registered handlers.
30
43
  *
31
- * @param req - Incoming HTTP request
32
- * @param socket - Network socket
33
- * @param head - First packet of the upgraded stream
34
- * @param webSocketsMapping - Path-to-WebSocket-server mapping
44
+ * @param opts - Upgrade options
35
45
  * @returns `true` if the upgrade was handled; `false` otherwise
36
46
  */
37
- export declare function tryHandleWebSocketUpgrade(req: IncomingMessage, socket: Duplex, head: Buffer, webSocketsMapping: StringRecord<WSServer>): boolean;
47
+ export declare function tryHandleWebSocketUpgrade({ req, socket, head, webSocketsMapping, allowCors, }: WebSocketUpgradeOpts): boolean;
38
48
  /**
39
49
  * Express middleware wrapper around {@link tryHandleWebSocketUpgrade}.
40
50
  * Delegates WebSocket upgrades to the mapping and falls through to `next()` otherwise.
41
51
  *
42
52
  * @param webSocketsMapping - Path-to-WebSocket-server mapping
53
+ * @param allowCors - Whether upgrades carrying an `Origin` header are accepted
43
54
  * @returns Express request handler
44
55
  */
45
- export declare function handleUpgrade(webSocketsMapping: StringRecord<WSServer>): RequestHandler;
56
+ export declare function handleUpgrade(webSocketsMapping: StringRecord<WSServer>, allowCors?: boolean): RequestHandler;
46
57
  /**
47
58
  * Final error-handling middleware.
48
59
  * Logs uncaught errors and returns a W3C-formatted error response unless headers were already sent.
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../lib/express/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAGxC,OAAO,KAAK,EAAC,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAI7E,OAAO,EAAC,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAQ1D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAatF;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAe7E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAiBvF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAK/F;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,YAAY,CAAC,QAAQ,CAAC,GACxC,OAAO,CAqBT;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,cAAc,CASvF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAWlG;AAUD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAIjE"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../lib/express/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAGxC,OAAO,KAAK,EAAC,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAI7E,OAAO,EAAC,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAQ1D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAatF;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAe7E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAiBvF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAK/F;AAED,wDAAwD;AACxD,MAAM,WAAW,oBAAoB;IACnC,4BAA4B;IAC5B,GAAG,EAAE,eAAe,CAAC;IACrB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,GAAG,EACH,MAAM,EACN,IAAI,EACJ,iBAAiB,EACjB,SAAiB,GAClB,EAAE,oBAAoB,GAAG,OAAO,CA4BhC;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,SAAS,UAAQ,GAAG,cAAc,CAS1G;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAWlG;AAUD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAIjE"}
@@ -80,16 +80,19 @@ function defaultToJSONContentType(req, _res, next) {
80
80
  /**
81
81
  * Attempts to handle a WebSocket upgrade by matching the request path against registered handlers.
82
82
  *
83
- * @param req - Incoming HTTP request
84
- * @param socket - Network socket
85
- * @param head - First packet of the upgraded stream
86
- * @param webSocketsMapping - Path-to-WebSocket-server mapping
83
+ * @param opts - Upgrade options
87
84
  * @returns `true` if the upgrade was handled; `false` otherwise
88
85
  */
89
- function tryHandleWebSocketUpgrade(req, socket, head, webSocketsMapping) {
86
+ function tryHandleWebSocketUpgrade({ req, socket, head, webSocketsMapping, allowCors = false, }) {
90
87
  if (String(req.headers?.upgrade ?? '').toLowerCase() !== 'websocket') {
91
88
  return false;
92
89
  }
90
+ // WebSocket handshakes are not subject to the Same-Origin Policy; browsers always send Origin
91
+ if (!allowCors && req.headers.origin !== undefined) {
92
+ logger_1.log.warn(`Rejecting the WebSocket upgrade from the browser origin '${req.headers.origin}'`);
93
+ socket.end('HTTP/1.1 403 Forbidden\r\nConnection: close\r\nContent-Length: 0\r\n\r\n');
94
+ return true;
95
+ }
93
96
  let currentPathname;
94
97
  try {
95
98
  currentPathname = new URL(req.url ?? '', 'http://localhost').pathname;
@@ -113,11 +116,12 @@ function tryHandleWebSocketUpgrade(req, socket, head, webSocketsMapping) {
113
116
  * Delegates WebSocket upgrades to the mapping and falls through to `next()` otherwise.
114
117
  *
115
118
  * @param webSocketsMapping - Path-to-WebSocket-server mapping
119
+ * @param allowCors - Whether upgrades carrying an `Origin` header are accepted
116
120
  * @returns Express request handler
117
121
  */
118
- function handleUpgrade(webSocketsMapping) {
122
+ function handleUpgrade(webSocketsMapping, allowCors = false) {
119
123
  function handleUpgradeMiddleware(req, res, next) {
120
- if (tryHandleWebSocketUpgrade(req, req.socket, Buffer.from(''), webSocketsMapping)) {
124
+ if (tryHandleWebSocketUpgrade({ req, socket: req.socket, head: Buffer.from(''), webSocketsMapping, allowCors })) {
121
125
  return;
122
126
  }
123
127
  next();
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../lib/express/middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../lib/express/middleware.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,7 @@ export interface ConfigureServerOpts {
37
37
  export interface ConfigureHttpOpts {
38
38
  httpServer: HttpServer;
39
39
  reject: (error?: unknown) => void;
40
+ allowCors?: boolean;
40
41
  keepAliveTimeout: number;
41
42
  gracefulShutdownTimeout?: number;
42
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../lib/express/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,MAAM,IAAI,UAAU,EAAC,MAAM,WAAW,CAAC;AAMpD,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,SAAS,EACT,UAAU,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EAAC,OAAO,EAAkB,MAAM,EAAC,MAAM,SAAS,CAAC;AA2B7D,uDAAuD;AACvD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;CAC5C;AAED,yCAAyC;AACzC,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,4BAA4B,KAAK,IAAI,CAAC;AAEnG,qCAAqC;AACrC,MAAM,WAAW,UAAU;IACzB,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,wBAAwB,CAAC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,iBAAiB,CAAC,EAAE,YAAY,CAAC;IACjC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;CACrB;AAQD,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAsEpE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAmD/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAe1D"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../lib/express/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,MAAM,IAAI,UAAU,EAAC,MAAM,WAAW,CAAC;AAMpD,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,SAAS,EACT,UAAU,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EAAC,OAAO,EAAkB,MAAM,EAAC,MAAM,SAAS,CAAC;AA2B7D,uDAAuD;AACvD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;CAC5C;AAED,yCAAyC;AACzC,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,4BAA4B,KAAK,IAAI,CAAC;AAEnG,qCAAqC;AACrC,MAAM,WAAW,UAAU;IACzB,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,wBAAwB,CAAC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3C,iBAAiB,CAAC,EAAE,YAAY,CAAC;IACjC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;CACrB;AAQD,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAuEpE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAmD/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAe1D"}
@@ -38,6 +38,7 @@ async function server(opts) {
38
38
  const appiumServer = configureHttp({
39
39
  httpServer,
40
40
  reject,
41
+ allowCors,
41
42
  keepAliveTimeout,
42
43
  gracefulShutdownTimeout: cliArgs.shutdownTimeout,
43
44
  });
@@ -99,7 +100,7 @@ function configureServer(opts) {
99
100
  // When shouldUpgradeCallback is available, upgrades are handled directly on the HTTP server
100
101
  // to avoid Express middleware timeout issues with long-lived connections
101
102
  if (useLegacyUpgradeHandler) {
102
- app.use((0, middleware_1.handleUpgrade)(webSocketsMapping));
103
+ app.use((0, middleware_1.handleUpgrade)(webSocketsMapping, allowCors));
103
104
  }
104
105
  if (allowCors) {
105
106
  app.use(middleware_1.allowCrossDomain);
@@ -178,7 +179,7 @@ async function createServer(app, cliArgs) {
178
179
  * @param opts - Configuration options
179
180
  * @returns The same server instance typed as AppiumServer
180
181
  */
181
- function configureHttp({ httpServer, reject, keepAliveTimeout, gracefulShutdownTimeout, }) {
182
+ function configureHttp({ httpServer, reject, allowCors, keepAliveTimeout, gracefulShutdownTimeout, }) {
182
183
  const appiumServer = httpServer;
183
184
  appiumServer.webSocketsMapping = {};
184
185
  appiumServer.frontRouter = express_1.default.Router();
@@ -196,7 +197,7 @@ function configureHttp({ httpServer, reject, keepAliveTimeout, gracefulShutdownT
196
197
  // shouldUpgradeCallback only returns a boolean to indicate if the upgrade should proceed
197
198
  appiumServer.shouldUpgradeCallback = (req) => String(req.headers?.upgrade ?? '').toLowerCase() === 'websocket';
198
199
  appiumServer.on('upgrade', (req, socket, head) => {
199
- if (!(0, middleware_1.tryHandleWebSocketUpgrade)(req, socket, head, appiumServer.webSocketsMapping)) {
200
+ if (!(0, middleware_1.tryHandleWebSocketUpgrade)({ req, socket, head, webSocketsMapping: appiumServer.webSocketsMapping, allowCors })) {
200
201
  socket.destroy();
201
202
  }
202
203
  });
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../lib/express/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../lib/express/server.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,7 @@ export declare const BIDI_COMMANDS: {
10
10
  readonly unsubscribe: {
11
11
  readonly command: "bidiUnsubscribe";
12
12
  readonly params: {
13
- readonly required: readonly ["events"];
14
- readonly optional: readonly ["contexts"];
13
+ readonly optional: readonly ["events", "contexts", "subscriptions"];
15
14
  };
16
15
  };
17
16
  readonly status: {
@@ -1 +1 @@
1
- {"version":3,"file":"bidi-commands.d.ts","sourceRoot":"","sources":["../../../lib/protocol/bidi-commands.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwBQ,CAAC"}
1
+ {"version":3,"file":"bidi-commands.d.ts","sourceRoot":"","sources":["../../../lib/protocol/bidi-commands.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwBQ,CAAC"}
@@ -1,19 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BIDI_COMMANDS = void 0;
4
- const SUBSCRIPTION_REQUEST_PARAMS = {
4
+ const SUBSCRIBE_PARAMS = {
5
5
  required: ['events'],
6
6
  optional: ['contexts'],
7
7
  };
8
+ // `subscriptions` and `events` are alternative spec forms; `contexts` is a non-standard
9
+ // addition to `events`. `subscriptions` excludes the others, which bidiUnsubscribe validates.
10
+ const UNSUBSCRIBE_PARAMS = {
11
+ optional: ['events', 'contexts', 'subscriptions'],
12
+ };
8
13
  exports.BIDI_COMMANDS = {
9
14
  session: {
10
15
  subscribe: {
11
16
  command: 'bidiSubscribe',
12
- params: SUBSCRIPTION_REQUEST_PARAMS,
17
+ params: SUBSCRIBE_PARAMS,
13
18
  },
14
19
  unsubscribe: {
15
20
  command: 'bidiUnsubscribe',
16
- params: SUBSCRIPTION_REQUEST_PARAMS,
21
+ params: UNSUBSCRIBE_PARAMS,
17
22
  },
18
23
  status: {
19
24
  command: 'bidiStatus',
@@ -1 +1 @@
1
- {"version":3,"file":"bidi-commands.js","sourceRoot":"","sources":["../../../lib/protocol/bidi-commands.ts"],"names":[],"mappings":";;;AAEA,MAAM,2BAA2B,GAAG;IAClC,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,QAAQ,EAAE,CAAC,UAAU,CAAC;CACd,CAAC;AAEE,QAAA,aAAa,GAAG;IAC3B,OAAO,EAAE;QACP,SAAS,EAAE;YACT,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,2BAA2B;SACpC;QACD,WAAW,EAAE;YACX,OAAO,EAAE,iBAAiB;YAC1B,MAAM,EAAE,2BAA2B;SACpC;QACD,MAAM,EAAE;YACN,OAAO,EAAE,YAAY;YACrB,MAAM,EAAE,EAAE;SACX;KACF;IACD,eAAe,EAAE;QACf,QAAQ,EAAE;YACR,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE;gBACN,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC;gBAC5B,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;CAC+B,CAAC;AAEnC,8CAA8C;AAC9C,mDAAmD"}
1
+ {"version":3,"file":"bidi-commands.js","sourceRoot":"","sources":["../../../lib/protocol/bidi-commands.ts"],"names":[],"mappings":";;;AAEA,MAAM,gBAAgB,GAAG;IACvB,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,QAAQ,EAAE,CAAC,UAAU,CAAC;CACd,CAAC;AAEX,wFAAwF;AACxF,8FAA8F;AAC9F,MAAM,kBAAkB,GAAG;IACzB,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC;CACzC,CAAC;AAEE,QAAA,aAAa,GAAG;IAC3B,OAAO,EAAE;QACP,SAAS,EAAE;YACT,OAAO,EAAE,eAAe;YACxB,MAAM,EAAE,gBAAgB;SACzB;QACD,WAAW,EAAE;YACX,OAAO,EAAE,iBAAiB;YAC1B,MAAM,EAAE,kBAAkB;SAC3B;QACD,MAAM,EAAE;YACN,OAAO,EAAE,YAAY;YACrB,MAAM,EAAE,EAAE;SACX;KACF;IACD,eAAe,EAAE;QACf,QAAQ,EAAE;YACR,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE;gBACN,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC;gBAC5B,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;CAC+B,CAAC;AAEnC,8CAA8C;AAC9C,mDAAmD"}
@@ -0,0 +1,36 @@
1
+ import {util} from '@appium/support';
2
+
3
+ type BidiSubscriptionDriver = {bidiEventSubs: Record<string, string[]>};
4
+
5
+ // subscription id -> event name -> contexts; kept per id so removing one keeps overlapping ones
6
+ type Subscriptions = Map<string, Map<string, string[]>>;
7
+
8
+ const subscriptionsByDriver = new WeakMap<object, Subscriptions>();
9
+
10
+ /** Get (or lazily create) the subscription registry of the given driver */
11
+ export function getSubscriptions(driver: object): Subscriptions {
12
+ let subscriptions = subscriptionsByDriver.get(driver);
13
+ if (!subscriptions) {
14
+ subscriptions = new Map();
15
+ subscriptionsByDriver.set(driver, subscriptions);
16
+ }
17
+ return subscriptions;
18
+ }
19
+
20
+ /** Recompute `bidiEventSubs` as the union of all registered subscriptions */
21
+ export function refreshEventSubscriptions(driver: BidiSubscriptionDriver): void {
22
+ const events = new Map<string, string[]>();
23
+ for (const subscription of getSubscriptions(driver).values()) {
24
+ for (const [event, contexts] of subscription) {
25
+ events.set(event, util.uniq([...(events.get(event) ?? []), ...contexts]));
26
+ }
27
+ }
28
+ // Object.fromEntries defines own properties, so names like '__proto__' stay safe
29
+ driver.bidiEventSubs = Object.fromEntries(events);
30
+ }
31
+
32
+ /** Forget all subscriptions, e.g. when the session ends */
33
+ export function clearBidiSubscriptions(driver: BidiSubscriptionDriver): void {
34
+ subscriptionsByDriver.delete(driver);
35
+ driver.bidiEventSubs = {};
36
+ }