appium-xcuitest-driver 12.18.1 → 12.18.3

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 (174) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/build/lib/commands/web-native-bridge.d.ts.map +1 -1
  3. package/build/lib/commands/web-native-bridge.js +8 -8
  4. package/build/lib/commands/web-native-bridge.js.map +1 -1
  5. package/lib/commands/web-native-bridge.ts +8 -16
  6. package/node_modules/@appium/coresim/CHANGELOG.md +14 -0
  7. package/node_modules/@appium/coresim/README.md +1 -0
  8. package/node_modules/@appium/coresim/lib/src/commands/permissions.d.ts +15 -7
  9. package/node_modules/@appium/coresim/lib/src/commands/permissions.d.ts.map +1 -1
  10. package/node_modules/@appium/coresim/lib/src/commands/permissions.js +66 -6
  11. package/node_modules/@appium/coresim/lib/src/commands/permissions.js.map +1 -1
  12. package/node_modules/@appium/coresim/lib/src/index.d.ts +1 -1
  13. package/node_modules/@appium/coresim/lib/src/index.d.ts.map +1 -1
  14. package/node_modules/@appium/coresim/lib/src/index.js.map +1 -1
  15. package/node_modules/@appium/coresim/lib/src/native-simctl.d.ts +27 -9
  16. package/node_modules/@appium/coresim/lib/src/native-simctl.d.ts.map +1 -1
  17. package/node_modules/@appium/coresim/lib/src/native-simctl.js +9 -16
  18. package/node_modules/@appium/coresim/lib/src/native-simctl.js.map +1 -1
  19. package/node_modules/@appium/coresim/lib/src/types.d.ts +6 -4
  20. package/node_modules/@appium/coresim/lib/src/types.d.ts.map +1 -1
  21. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v2.d.ts +10 -0
  22. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v2.d.ts.map +1 -0
  23. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v2.js +73 -0
  24. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v2.js.map +1 -0
  25. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v3.d.ts +4 -0
  26. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v3.d.ts.map +1 -0
  27. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v3.js +16 -0
  28. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model-v3.js.map +1 -0
  29. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model.d.ts +19 -0
  30. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model.d.ts.map +1 -0
  31. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model.js +2 -0
  32. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-model.js.map +1 -0
  33. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-store.d.ts +41 -0
  34. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-store.d.ts.map +1 -0
  35. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-store.js +114 -0
  36. package/node_modules/@appium/coresim/lib/src/utils/bulletin-board-store.js.map +1 -0
  37. package/node_modules/@appium/coresim/lib/src/utils/index.d.ts +3 -0
  38. package/node_modules/@appium/coresim/lib/src/utils/index.d.ts.map +1 -1
  39. package/node_modules/@appium/coresim/lib/src/utils/index.js +2 -0
  40. package/node_modules/@appium/coresim/lib/src/utils/index.js.map +1 -1
  41. package/node_modules/@appium/coresim/lib/src/utils/springboard.d.ts +26 -0
  42. package/node_modules/@appium/coresim/lib/src/utils/springboard.d.ts.map +1 -0
  43. package/node_modules/@appium/coresim/lib/src/utils/springboard.js +106 -0
  44. package/node_modules/@appium/coresim/lib/src/utils/springboard.js.map +1 -0
  45. package/node_modules/@appium/coresim/package.json +3 -3
  46. package/node_modules/@appium/coresim/prebuilds/darwin-arm64/@appium+coresim.node +0 -0
  47. package/node_modules/@appium/coresim/src/commands/permissions.ts +75 -11
  48. package/node_modules/@appium/coresim/src/coresim.mm +7 -0
  49. package/node_modules/@appium/coresim/src/index.ts +1 -1
  50. package/node_modules/@appium/coresim/src/native-simctl.ts +45 -19
  51. package/node_modules/@appium/coresim/src/types.ts +6 -3
  52. package/node_modules/@appium/coresim/src/utils/bulletin-board-model-v2.ts +79 -0
  53. package/node_modules/@appium/coresim/src/utils/bulletin-board-model-v3.ts +16 -0
  54. package/node_modules/@appium/coresim/src/utils/bulletin-board-model.ts +20 -0
  55. package/node_modules/@appium/coresim/src/utils/bulletin-board-store.ts +126 -0
  56. package/node_modules/@appium/coresim/src/utils/index.ts +3 -0
  57. package/node_modules/@appium/coresim/src/utils/springboard.ts +119 -0
  58. package/node_modules/appium-ios-remotexpc/CHANGELOG.md +28 -0
  59. package/node_modules/appium-ios-remotexpc/build/src/lib/lockdown/index.d.ts.map +1 -1
  60. package/node_modules/appium-ios-remotexpc/build/src/lib/lockdown/index.js +8 -2
  61. package/node_modules/appium-ios-remotexpc/build/src/lib/lockdown/index.js.map +1 -1
  62. package/node_modules/appium-ios-remotexpc/build/src/lib/plist/binary-plist-parser.d.ts.map +1 -1
  63. package/node_modules/appium-ios-remotexpc/build/src/lib/plist/binary-plist-parser.js +19 -13
  64. package/node_modules/appium-ios-remotexpc/build/src/lib/plist/binary-plist-parser.js.map +1 -1
  65. package/node_modules/appium-ios-remotexpc/build/src/lib/types.d.ts +12 -0
  66. package/node_modules/appium-ios-remotexpc/build/src/lib/types.d.ts.map +1 -1
  67. package/node_modules/appium-ios-remotexpc/build/src/services/ios/base-service.d.ts +5 -0
  68. package/node_modules/appium-ios-remotexpc/build/src/services/ios/base-service.d.ts.map +1 -1
  69. package/node_modules/appium-ios-remotexpc/build/src/services/ios/base-service.js +18 -0
  70. package/node_modules/appium-ios-remotexpc/build/src/services/ios/base-service.js.map +1 -1
  71. package/node_modules/appium-ios-remotexpc/build/src/services/ios/dvt/index.js +1 -1
  72. package/node_modules/appium-ios-remotexpc/build/src/services/ios/dvt/index.js.map +1 -1
  73. package/node_modules/appium-ios-remotexpc/build/src/services/ios/misagent/index.d.ts +8 -0
  74. package/node_modules/appium-ios-remotexpc/build/src/services/ios/misagent/index.d.ts.map +1 -1
  75. package/node_modules/appium-ios-remotexpc/build/src/services/ios/misagent/index.js +16 -4
  76. package/node_modules/appium-ios-remotexpc/build/src/services/ios/misagent/index.js.map +1 -1
  77. package/node_modules/appium-ios-remotexpc/build/src/services/ios/mobile-config/index.d.ts +8 -0
  78. package/node_modules/appium-ios-remotexpc/build/src/services/ios/mobile-config/index.d.ts.map +1 -1
  79. package/node_modules/appium-ios-remotexpc/build/src/services/ios/mobile-config/index.js +17 -7
  80. package/node_modules/appium-ios-remotexpc/build/src/services/ios/mobile-config/index.js.map +1 -1
  81. package/node_modules/appium-ios-remotexpc/build/src/services/ios/springboard-service/index.d.ts +8 -0
  82. package/node_modules/appium-ios-remotexpc/build/src/services/ios/springboard-service/index.d.ts.map +1 -1
  83. package/node_modules/appium-ios-remotexpc/build/src/services/ios/springboard-service/index.js +17 -7
  84. package/node_modules/appium-ios-remotexpc/build/src/services/ios/springboard-service/index.js.map +1 -1
  85. package/node_modules/appium-ios-remotexpc/build/src/services/ios/testmanagerd/index.d.ts +5 -0
  86. package/node_modules/appium-ios-remotexpc/build/src/services/ios/testmanagerd/index.d.ts.map +1 -1
  87. package/node_modules/appium-ios-remotexpc/build/src/services/ios/testmanagerd/index.js +8 -1
  88. package/node_modules/appium-ios-remotexpc/build/src/services/ios/testmanagerd/index.js.map +1 -1
  89. package/node_modules/appium-ios-remotexpc/package.json +3 -3
  90. package/node_modules/appium-ios-remotexpc/src/lib/lockdown/index.ts +7 -2
  91. package/node_modules/appium-ios-remotexpc/src/lib/plist/binary-plist-parser.ts +17 -19
  92. package/node_modules/appium-ios-remotexpc/src/lib/types.ts +12 -0
  93. package/node_modules/appium-ios-remotexpc/src/services/ios/base-service.ts +18 -0
  94. package/node_modules/appium-ios-remotexpc/src/services/ios/dvt/index.ts +1 -1
  95. package/node_modules/appium-ios-remotexpc/src/services/ios/misagent/index.ts +17 -4
  96. package/node_modules/appium-ios-remotexpc/src/services/ios/mobile-config/index.ts +18 -7
  97. package/node_modules/appium-ios-remotexpc/src/services/ios/springboard-service/index.ts +18 -7
  98. package/node_modules/appium-ios-remotexpc/src/services/ios/testmanagerd/index.ts +8 -1
  99. package/node_modules/appium-ios-simulator/CHANGELOG.md +14 -0
  100. package/node_modules/appium-ios-simulator/build/lib/extensions/permissions.d.ts +17 -4
  101. package/node_modules/appium-ios-simulator/build/lib/extensions/permissions.d.ts.map +1 -1
  102. package/node_modules/appium-ios-simulator/build/lib/extensions/permissions.js +48 -13
  103. package/node_modules/appium-ios-simulator/build/lib/extensions/permissions.js.map +1 -1
  104. package/node_modules/appium-ios-simulator/build/lib/native/native-simctl.d.ts +4 -1
  105. package/node_modules/appium-ios-simulator/build/lib/native/native-simctl.d.ts.map +1 -1
  106. package/node_modules/appium-ios-simulator/build/lib/native/native-simctl.js +5 -2
  107. package/node_modules/appium-ios-simulator/build/lib/native/native-simctl.js.map +1 -1
  108. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-15.d.ts +5 -0
  109. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-15.d.ts.map +1 -1
  110. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-15.js +9 -2
  111. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-15.js.map +1 -1
  112. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-27.d.ts +2 -0
  113. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-27.d.ts.map +1 -1
  114. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-27.js +4 -0
  115. package/node_modules/appium-ios-simulator/build/lib/simulator-xcode-27.js.map +1 -1
  116. package/node_modules/appium-ios-simulator/lib/extensions/permissions.ts +54 -14
  117. package/node_modules/appium-ios-simulator/lib/native/native-simctl.ts +8 -2
  118. package/node_modules/appium-ios-simulator/lib/simulator-xcode-15.ts +10 -2
  119. package/node_modules/appium-ios-simulator/lib/simulator-xcode-27.ts +5 -0
  120. package/node_modules/appium-ios-simulator/package.json +4 -4
  121. package/node_modules/appium-remote-debugger/CHANGELOG.md +76 -0
  122. package/node_modules/appium-remote-debugger/atoms/execute_script.js +1 -1
  123. package/node_modules/appium-remote-debugger/build/lib/index.d.ts +2 -2
  124. package/node_modules/appium-remote-debugger/build/lib/index.d.ts.map +1 -1
  125. package/node_modules/appium-remote-debugger/build/lib/index.js.map +1 -1
  126. package/node_modules/appium-remote-debugger/build/lib/mixins/execute.d.ts +17 -3
  127. package/node_modules/appium-remote-debugger/build/lib/mixins/execute.d.ts.map +1 -1
  128. package/node_modules/appium-remote-debugger/build/lib/mixins/execute.js +125 -7
  129. package/node_modules/appium-remote-debugger/build/lib/mixins/execute.js.map +1 -1
  130. package/node_modules/appium-remote-debugger/build/lib/mixins/property-accessors.d.ts +2 -0
  131. package/node_modules/appium-remote-debugger/build/lib/mixins/property-accessors.d.ts.map +1 -1
  132. package/node_modules/appium-remote-debugger/build/lib/mixins/property-accessors.js +4 -0
  133. package/node_modules/appium-remote-debugger/build/lib/mixins/property-accessors.js.map +1 -1
  134. package/node_modules/appium-remote-debugger/build/lib/protocol/index.js +2 -2
  135. package/node_modules/appium-remote-debugger/build/lib/protocol/index.js.map +1 -1
  136. package/node_modules/appium-remote-debugger/build/lib/remote-debugger.d.ts +1 -0
  137. package/node_modules/appium-remote-debugger/build/lib/remote-debugger.d.ts.map +1 -1
  138. package/node_modules/appium-remote-debugger/build/lib/remote-debugger.js +5 -1
  139. package/node_modules/appium-remote-debugger/build/lib/remote-debugger.js.map +1 -1
  140. package/node_modules/appium-remote-debugger/build/lib/types.d.ts +41 -0
  141. package/node_modules/appium-remote-debugger/build/lib/types.d.ts.map +1 -1
  142. package/node_modules/appium-remote-debugger/lib/index.ts +8 -1
  143. package/node_modules/appium-remote-debugger/lib/mixins/execute.ts +165 -6
  144. package/node_modules/appium-remote-debugger/lib/mixins/property-accessors.ts +5 -0
  145. package/node_modules/appium-remote-debugger/lib/protocol/index.ts +2 -2
  146. package/node_modules/appium-remote-debugger/lib/remote-debugger.ts +5 -0
  147. package/node_modules/appium-remote-debugger/lib/types.ts +43 -0
  148. package/node_modules/appium-remote-debugger/package.json +5 -5
  149. package/node_modules/appium-webdriveragent/CHANGELOG.md +44 -0
  150. package/node_modules/appium-webdriveragent/README.md +1 -1
  151. package/node_modules/appium-webdriveragent/Scripts/fetch-prebuilt-wda.mjs +3 -2
  152. package/node_modules/appium-webdriveragent/WebDriverAgentLib/Categories/XCUIDevice+FBHelpers.m +55 -0
  153. package/node_modules/appium-webdriveragent/WebDriverAgentLib/Info.plist +2 -2
  154. package/node_modules/appium-webdriveragent/WebDriverAgentLib/Routing/FBSession.m +52 -9
  155. package/node_modules/appium-webdriveragent/WebDriverAgentLib/Routing/FBWebServer.m +4 -1
  156. package/node_modules/appium-webdriveragent/WebDriverAgentTests/IntegrationTests/FBSessionIntegrationTests.m +26 -0
  157. package/node_modules/appium-webdriveragent/WebDriverAgentTests/IntegrationTests_tvOS/FBTVFocusIntegrationTests.m +21 -0
  158. package/node_modules/appium-webdriveragent/WebDriverAgentTests/IntegrationTests_watchOS/WDAAppLifecycleIntegrationTests.swift +12 -0
  159. package/node_modules/appium-webdriveragent/WebDriverAgentTests/UnitTests/FBHTTPServerTests.m +23 -0
  160. package/node_modules/appium-webdriveragent/WebDriverAgentTests/UnitTests/FBSessionTests.m +201 -0
  161. package/node_modules/appium-webdriveragent/package.json +7 -11
  162. package/node_modules/qs/.github/THREAT_MODEL.md +4 -2
  163. package/node_modules/qs/CHANGELOG.md +38 -14
  164. package/node_modules/qs/README.md +31 -3
  165. package/node_modules/qs/dist/qs.js +20 -20
  166. package/node_modules/qs/lib/parse.js +94 -4
  167. package/node_modules/qs/lib/stringify.js +4 -4
  168. package/node_modules/qs/lib/utils.js +130 -6
  169. package/node_modules/qs/package.json +4 -4
  170. package/node_modules/qs/test/parse.js +174 -0
  171. package/node_modules/qs/test/stringify.js +263 -33
  172. package/node_modules/qs/test/utils.js +184 -0
  173. package/package.json +5 -5
  174. package/scripts/download-wda.mjs +12 -5
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [12.18.3](https://github.com/appium/appium-xcuitest-driver/compare/v12.18.2...v12.18.3) (2026-10-18)
2
+
3
+ ### Bug Fixes
4
+
5
+ * preserve calibrated scale and viewport origin for native web taps ([#3046](https://github.com/appium/appium-xcuitest-driver/issues/3046)) ([e62b338](https://github.com/appium/appium-xcuitest-driver/commit/e62b338a21f6f8ce401d93c81801e42e26047a45))
6
+
7
+ ## [12.18.2](https://github.com/appium/appium-xcuitest-driver/compare/v12.18.1...v12.18.2) (2026-10-18)
8
+
9
+ ### Bug Fixes
10
+
11
+ * resolve WDA downloads from the monorepo release ([#3050](https://github.com/appium/appium-xcuitest-driver/issues/3050)) ([0e990dc](https://github.com/appium/appium-xcuitest-driver/commit/0e990dcf45fddcb2b635bd9dad7cd278c066f735))
12
+
1
13
  ## [12.18.1](https://github.com/appium/appium-xcuitest-driver/compare/v12.18.0...v12.18.1) (2026-10-13)
2
14
 
3
15
  ### Bug Fixes
@@ -1 +1 @@
1
- {"version":3,"file":"web-native-bridge.d.ts","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,QAAQ,EAAQ,IAAI,EAAC,MAAM,eAAe,CAAC;AAIjE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAwB,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;AA6J1G;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,eAAe,CAwCzF;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAK9D;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9F;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE9E;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;AAED;;;;GAIG;AACH,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,EAC7B,QAAQ,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,OAAO,EACjB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB5F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAsCtG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,8CAA8C,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CASnH"}
1
+ {"version":3,"file":"web-native-bridge.d.ts","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAE,QAAQ,EAAQ,IAAI,EAAC,MAAM,eAAe,CAAC;AAIjE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAwB,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC;AAgK1G;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,eAAe,CAwCzF;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAK9D;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9F;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE9E;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;AAED;;;;GAIG;AACH,wBAAsB,gCAAgC,CACpD,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,EAC7B,QAAQ,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,OAAO,EACjB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB5F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA2BtG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,8CAA8C,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CASnH"}
@@ -52,7 +52,10 @@ const INJECT_CALIBRATION_OVERLAY_SCRIPT = `(function () {
52
52
  (document.body || document.documentElement).appendChild(overlay);
53
53
  var taps = window.${CALIBRATION_TAPS_MARKER};
54
54
  overlay.contentDocument.addEventListener('click', function (e) {
55
- taps.push({x: e.clientX, y: e.clientY});
55
+ // Match the parent-page client coordinates used by element geometry atoms.
56
+ // A fixed iframe can move relative to that viewport when Safari zooms/pans.
57
+ var rect = overlay.getBoundingClientRect();
58
+ taps.push({x: e.clientX + rect.left, y: e.clientY + rect.top});
56
59
  }, true);
57
60
  window.${CALIBRATION_OVERLAY_MARKER} = overlay;
58
61
  })();`;
@@ -310,14 +313,11 @@ export async function translateWebCoords(x, y) {
310
313
  }
311
314
  const frameX = x + frameOffset.offsetX;
312
315
  const frameY = y + frameOffset.offsetY;
313
- const cmd = '(function () {return {innerWidth: window.innerWidth, innerHeight: window.innerHeight, ' +
314
- 'outerWidth: window.outerWidth, outerHeight: window.outerHeight}; })()';
315
- const wvDims = await this.waitForAtom(this.remote.execute(cmd));
316
- // https://tripleodeon.com/2011/12/first-understand-your-screen/
317
- const shouldApplyPixelRatio = wvDims.innerWidth > wvDims.outerWidth || wvDims.innerHeight > wvDims.outerHeight;
316
+ // Calibration already measures the CSS-to-native scale, including viewport zoom.
317
+ // Inner/outer window dimensions cannot determine whether that fitted scale applies.
318
318
  const newCoords = {
319
- x: offsetX + frameX * (shouldApplyPixelRatio ? pixelRatioX : 1),
320
- y: offsetY + frameY * (shouldApplyPixelRatio ? pixelRatioY : 1),
319
+ x: offsetX + frameX * pixelRatioX,
320
+ y: offsetY + frameY * pixelRatioY,
321
321
  };
322
322
  this.log.debug(`Converted web coords ${JSON.stringify({ x, y })} into real coords ${JSON.stringify(newCoords)}`);
323
323
  return newCoords;
@@ -1 +1 @@
1
- {"version":3,"file":"web-native-bridge.js","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-native-bridge.js","sourceRoot":"","sources":["../../../lib/commands/web-native-bridge.ts"],"names":[],"mappings":"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"}
@@ -61,7 +61,10 @@ const INJECT_CALIBRATION_OVERLAY_SCRIPT = `(function () {
61
61
  (document.body || document.documentElement).appendChild(overlay);
62
62
  var taps = window.${CALIBRATION_TAPS_MARKER};
63
63
  overlay.contentDocument.addEventListener('click', function (e) {
64
- taps.push({x: e.clientX, y: e.clientY});
64
+ // Match the parent-page client coordinates used by element geometry atoms.
65
+ // A fixed iframe can move relative to that viewport when Safari zooms/pans.
66
+ var rect = overlay.getBoundingClientRect();
67
+ taps.push({x: e.clientX + rect.left, y: e.clientY + rect.top});
65
68
  }, true);
66
69
  window.${CALIBRATION_OVERLAY_MARKER} = overlay;
67
70
  })();`;
@@ -362,22 +365,11 @@ export async function translateWebCoords(this: XCUITestDriver, x: number, y: num
362
365
  const frameX = x + frameOffset.offsetX;
363
366
  const frameY = y + frameOffset.offsetY;
364
367
 
365
- const cmd =
366
- '(function () {return {innerWidth: window.innerWidth, innerHeight: window.innerHeight, ' +
367
- 'outerWidth: window.outerWidth, outerHeight: window.outerHeight}; })()';
368
- const wvDims = await this.waitForAtom(
369
- this.remote.execute<{
370
- innerWidth: number;
371
- innerHeight: number;
372
- outerWidth: number;
373
- outerHeight: number;
374
- }>(cmd),
375
- );
376
- // https://tripleodeon.com/2011/12/first-understand-your-screen/
377
- const shouldApplyPixelRatio = wvDims.innerWidth > wvDims.outerWidth || wvDims.innerHeight > wvDims.outerHeight;
368
+ // Calibration already measures the CSS-to-native scale, including viewport zoom.
369
+ // Inner/outer window dimensions cannot determine whether that fitted scale applies.
378
370
  const newCoords = {
379
- x: offsetX + frameX * (shouldApplyPixelRatio ? pixelRatioX : 1),
380
- y: offsetY + frameY * (shouldApplyPixelRatio ? pixelRatioY : 1),
371
+ x: offsetX + frameX * pixelRatioX,
372
+ y: offsetY + frameY * pixelRatioY,
381
373
  };
382
374
 
383
375
  this.log.debug(`Converted web coords ${JSON.stringify({x, y})} into real coords ${JSON.stringify(newCoords)}`);
@@ -3,6 +3,20 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.13.1](https://github.com/appium/appium-ios/compare/@appium/coresim@1.13.0...@appium/coresim@1.13.1) (2026-10-16)
7
+
8
+ ### Code Refactoring
9
+
10
+ * **coresim:** split notifications store handling out of permissions ([#68](https://github.com/appium/appium-ios/issues/68)) ([7808a34](https://github.com/appium/appium-ios/commit/7808a34bd5c57918414abed62279be31ac18e353))
11
+
12
+
13
+ ## [1.13.0](https://github.com/appium/appium-ios/compare/@appium/coresim@1.12.0...@appium/coresim@1.13.0) (2026-10-15)
14
+
15
+ ### Features
16
+
17
+ * restore the notifications permission and the &#x60;all&#x60; permissions key ([#38](https://github.com/appium/appium-ios/issues/38)) ([d374250](https://github.com/appium/appium-ios/commit/d374250c24a99d8f91b6d83a77afcc771e00c9b1))
18
+
19
+
6
20
  ## [1.12.0](https://github.com/appium/appium-ios/compare/@appium/coresim@1.11.1...@appium/coresim@1.12.0) (2026-10-12)
7
21
 
8
22
  ### Features
@@ -27,6 +27,7 @@ instead of crashing.
27
27
  ```ts
28
28
  import {NativeSimctl} from '@appium/coresim';
29
29
 
30
+ // Optionally: new NativeSimctl({developerDir, deviceSetPath}), like `simctl --set <path>`
30
31
  const sim = new NativeSimctl();
31
32
 
32
33
  const devices = await sim.getDevices();
@@ -1,8 +1,8 @@
1
1
  import type { NativeSimctl } from '../native-simctl.js';
2
- import type { SimPermissionService, SimPermissionStatus } from '../types.js';
2
+ import { type SimPermissionService, type SimPermissionStatus } from '../types.js';
3
3
  declare module '../native-simctl.js' {
4
4
  interface NativeSimctl {
5
- grantPermission(udid: string, service: SimPermissionService, bundleId: string, status?: 'granted' | 'limited'): Promise<void>;
5
+ grantPermission(udid: string, service: SimPermissionService, bundleId: string, status?: 'granted' | 'limited' | 'critical'): Promise<void>;
6
6
  revokePermission(udid: string, service: SimPermissionService, bundleId: string): Promise<void>;
7
7
  resetPermission(udid: string, service: SimPermissionService, bundleId: string): Promise<void>;
8
8
  getPermission(udid: string, service: SimPermissionService, bundleId: string): Promise<SimPermissionStatus>;
@@ -13,15 +13,20 @@ declare module '../native-simctl.js' {
13
13
  * simulator's own TCC (privacy) database — see CLAUDE.md for why this bypasses CoreSimulator's own
14
14
  * privacy API.
15
15
  *
16
+ * `notifications` isn't a TCC row: it is written to SpringBoard's BulletinBoard store instead. On a
17
+ * booted device SpringBoard is restarted to load it, which terminates every running app; a shut down
18
+ * device picks it up on its next boot.
19
+ *
16
20
  * @param udid — UDID of the target device
17
- * @param service — permission to grant, e.g. `"camera"`, `"contacts"`, `"photos"`
21
+ * @param service — permission to grant, e.g. `"camera"`, `"contacts"`, `"photos"`, `"notifications"`
18
22
  * @param bundleId — bundle identifier of the app the permission applies to
19
23
  * @param status — defaults to `'granted'`. `'limited'` ("selected photos" access) is only valid
20
- * for the `photos` service.
24
+ * for the `photos` service, `'critical'` (critical alerts allowed too) — for `notifications`.
21
25
  */
22
- export declare function grantPermission(this: NativeSimctl, udid: string, service: SimPermissionService, bundleId: string, status?: 'granted' | 'limited'): Promise<void>;
26
+ export declare function grantPermission(this: NativeSimctl, udid: string, service: SimPermissionService, bundleId: string, status?: 'granted' | 'limited' | 'critical'): Promise<void>;
23
27
  /**
24
- * Revokes a previously granted privacy permission from the given app.
28
+ * Revokes a previously granted privacy permission from the given app. For `notifications`, a booted
29
+ * device's SpringBoard is restarted, see {@link grantPermission}.
25
30
  *
26
31
  * @param udid — UDID of the target device
27
32
  * @param service — permission to revoke (see {@link grantPermission})
@@ -29,7 +34,9 @@ export declare function grantPermission(this: NativeSimctl, udid: string, servic
29
34
  */
30
35
  export declare function revokePermission(this: NativeSimctl, udid: string, service: SimPermissionService, bundleId: string): Promise<void>;
31
36
  /**
32
- * Resets a privacy permission for the given app to its default (unprompted) state.
37
+ * Resets a privacy permission for the given app to its default (unprompted) state. For
38
+ * `notifications`, the app's section is removed from SpringBoard's store and a booted device's
39
+ * SpringBoard is restarted, see {@link grantPermission}.
33
40
  *
34
41
  * @param udid — UDID of the target device
35
42
  * @param service — permission to reset (see {@link grantPermission})
@@ -45,6 +52,7 @@ export declare function resetPermission(this: NativeSimctl, udid: string, servic
45
52
  * @param service — permission to check (see {@link grantPermission})
46
53
  * @param bundleId — bundle identifier of the app the permission applies to
47
54
  * @returns `'unset'` if the app has never been prompted/decided for this permission
55
+ * @throws {Error} for `notifications`: reading it isn't supported
48
56
  */
49
57
  export declare function getPermission(this: NativeSimctl, udid: string, service: SimPermissionService, bundleId: string): Promise<SimPermissionStatus>;
50
58
  //# sourceMappingURL=permissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../src/commands/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAG3E,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,YAAY;QACpB,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;QACjB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/F,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9F,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;KAC5G;CACF;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,SAAS,GAAG,SAAqB,GACxC,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAK9B"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../src/commands/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAKhG,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,YAAY;QACpB,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAC1C,OAAO,CAAC,IAAI,CAAC,CAAC;QACjB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/F,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9F,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;KAC5G;CACF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,SAAS,GAAG,SAAS,GAAG,UAAsB,GACrD,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAQ9B"}
@@ -1,26 +1,39 @@
1
- import { runCatchingAsync } from '../utils/index.js';
1
+ import { SimDeviceState } from '../types.js';
2
+ import { BulletinBoardStore, runCatchingAsync, SpringBoard } from '../utils/index.js';
3
+ const NOTIFICATIONS_SERVICE = 'notifications';
2
4
  /**
3
5
  * Grants a privacy permission to the given app on the given device, by writing directly to the
4
6
  * simulator's own TCC (privacy) database — see CLAUDE.md for why this bypasses CoreSimulator's own
5
7
  * privacy API.
6
8
  *
9
+ * `notifications` isn't a TCC row: it is written to SpringBoard's BulletinBoard store instead. On a
10
+ * booted device SpringBoard is restarted to load it, which terminates every running app; a shut down
11
+ * device picks it up on its next boot.
12
+ *
7
13
  * @param udid — UDID of the target device
8
- * @param service — permission to grant, e.g. `"camera"`, `"contacts"`, `"photos"`
14
+ * @param service — permission to grant, e.g. `"camera"`, `"contacts"`, `"photos"`, `"notifications"`
9
15
  * @param bundleId — bundle identifier of the app the permission applies to
10
16
  * @param status — defaults to `'granted'`. `'limited'` ("selected photos" access) is only valid
11
- * for the `photos` service.
17
+ * for the `photos` service, `'critical'` (critical alerts allowed too) — for `notifications`.
12
18
  */
13
19
  export async function grantPermission(udid, service, bundleId, status = 'granted') {
14
20
  return runCatchingAsync(async () => {
15
21
  if (status === 'limited' && service !== 'photos') {
16
22
  throw new Error(`'limited' is only a valid status for the 'photos' service, not '${service}'`);
17
23
  }
24
+ if (service === NOTIFICATIONS_SERVICE) {
25
+ return await setNotificationsAccess.call(this, udid, bundleId, status === 'critical' ? 'critical' : 'granted');
26
+ }
27
+ if (status === 'critical') {
28
+ throw new Error(`'critical' is only a valid status for the 'notifications' service, not '${service}'`);
29
+ }
18
30
  const tccIdentifier = toTCCIdentifier(service);
19
31
  return (await this._findDevice(udid)).grantPermission(tccIdentifier, bundleId, status);
20
32
  });
21
33
  }
22
34
  /**
23
- * Revokes a previously granted privacy permission from the given app.
35
+ * Revokes a previously granted privacy permission from the given app. For `notifications`, a booted
36
+ * device's SpringBoard is restarted, see {@link grantPermission}.
24
37
  *
25
38
  * @param udid — UDID of the target device
26
39
  * @param service — permission to revoke (see {@link grantPermission})
@@ -28,12 +41,17 @@ export async function grantPermission(udid, service, bundleId, status = 'granted
28
41
  */
29
42
  export async function revokePermission(udid, service, bundleId) {
30
43
  return runCatchingAsync(async () => {
44
+ if (service === NOTIFICATIONS_SERVICE) {
45
+ return await setNotificationsAccess.call(this, udid, bundleId, 'denied');
46
+ }
31
47
  const tccIdentifier = toTCCIdentifier(service);
32
48
  return (await this._findDevice(udid)).revokePermission(tccIdentifier, bundleId);
33
49
  });
34
50
  }
35
51
  /**
36
- * Resets a privacy permission for the given app to its default (unprompted) state.
52
+ * Resets a privacy permission for the given app to its default (unprompted) state. For
53
+ * `notifications`, the app's section is removed from SpringBoard's store and a booted device's
54
+ * SpringBoard is restarted, see {@link grantPermission}.
37
55
  *
38
56
  * @param udid — UDID of the target device
39
57
  * @param service — permission to reset (see {@link grantPermission})
@@ -41,6 +59,9 @@ export async function revokePermission(udid, service, bundleId) {
41
59
  */
42
60
  export async function resetPermission(udid, service, bundleId) {
43
61
  return runCatchingAsync(async () => {
62
+ if (service === NOTIFICATIONS_SERVICE) {
63
+ return await setNotificationsAccess.call(this, udid, bundleId, 'unset');
64
+ }
44
65
  const tccIdentifier = toTCCIdentifier(service);
45
66
  return (await this._findDevice(udid)).resetPermission(tccIdentifier, bundleId);
46
67
  });
@@ -54,9 +75,13 @@ export async function resetPermission(udid, service, bundleId) {
54
75
  * @param service — permission to check (see {@link grantPermission})
55
76
  * @param bundleId — bundle identifier of the app the permission applies to
56
77
  * @returns `'unset'` if the app has never been prompted/decided for this permission
78
+ * @throws {Error} for `notifications`: reading it isn't supported
57
79
  */
58
80
  export async function getPermission(udid, service, bundleId) {
59
81
  return runCatchingAsync(async () => {
82
+ if (service === NOTIFICATIONS_SERVICE) {
83
+ throw new Error(`The status of the '${NOTIFICATIONS_SERVICE}' permission cannot be read`);
84
+ }
60
85
  const tccIdentifier = toTCCIdentifier(service);
61
86
  return (await this._findDevice(udid)).getPermission(tccIdentifier, bundleId);
62
87
  });
@@ -64,7 +89,7 @@ export async function getPermission(udid, service, bundleId) {
64
89
  // Maps a friendly service name to the internal TCC service identifier its row in the simulator's
65
90
  // own TCC.db is keyed on (see native/tcc_privacy.h). `location` is deliberately absent: it isn't a
66
91
  // plain TCC row (CoreLocation simulation has its own subsystem), so it isn't supported by this
67
- // TCC.db-based implementation.
92
+ // TCC.db-based implementation. `notifications` isn't a TCC row either, see setNotificationsAccess.
68
93
  const SERVICE_TO_TCC_IDENTIFIER = {
69
94
  calendar: 'kTCCServiceCalendar',
70
95
  camera: 'kTCCServiceCamera',
@@ -88,4 +113,39 @@ function toTCCIdentifier(service) {
88
113
  }
89
114
  return identifier;
90
115
  }
116
+ /**
117
+ * `notifications` isn't a TCC row: SpringBoard keeps it per app in its BulletinBoard store, reads
118
+ * that file only on its own start and rewrites it from memory from time to time (e.g. a few seconds
119
+ * after it starts). So SpringBoard of a booted device is paused while the app's section is written,
120
+ * then restarted with the store kept immutable until the old process is gone. The new SpringBoard
121
+ * loads the change and terminates every running app. A shut down device only gets the file,
122
+ * SpringBoard loads it on boot.
123
+ */
124
+ async function setNotificationsAccess(udid, bundleId, status) {
125
+ const device = await this._findDevice(udid);
126
+ const store = new BulletinBoardStore(device.dataPath(), this._options.bulletinBoardVersions);
127
+ await store.withLock(async () => {
128
+ const springBoard = device.state() === SimDeviceState.Booted ? new SpringBoard(this, udid) : undefined;
129
+ await springBoard?.pause();
130
+ let written = false;
131
+ try {
132
+ written = await store.setNotificationsStatus(bundleId, status);
133
+ }
134
+ finally {
135
+ if (!written) {
136
+ springBoard?.resume();
137
+ }
138
+ }
139
+ if (!springBoard || !written) {
140
+ return;
141
+ }
142
+ await store.setImmutable(true);
143
+ try {
144
+ await springBoard.restart();
145
+ }
146
+ finally {
147
+ await store.setImmutable(false);
148
+ }
149
+ });
150
+ }
91
151
  //# sourceMappingURL=permissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/commands/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../../src/commands/permissions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { NativeSimError, NativeSimUnavailableError, NativeSimDispatchError, NativeSimOperationError } from './errors.js';
2
- export { NativeSimctl } from './native-simctl.js';
2
+ export { NativeSimctl, type NativeSimctlOptions } from './native-simctl.js';
3
3
  export { SpawnedProcess } from './commands/spawn.js';
4
4
  export { VideoStream } from './commands/video-stream.js';
5
5
  export { JpegStream } from './commands/jpeg-stream.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,uBAAuB,EAAC,MAAM,aAAa,CAAC;AACvH,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACrD,YAAY,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AACxD,YAAY,EAAC,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,GACxB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,uBAAuB,EAAC,MAAM,aAAa,CAAC;AACvH,OAAO,EAAC,YAAY,EAAE,KAAK,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACrD,YAAY,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AACxD,YAAY,EAAC,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,GACxB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,uBAAuB,EAAC,MAAM,aAAa,CAAC;AACvH,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,cAAc,GAuBf,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,uBAAuB,EAAC,MAAM,aAAa,CAAC;AACvH,OAAO,EAAC,YAAY,EAA2B,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,cAAc,GAuBf,MAAM,YAAY,CAAC"}
@@ -34,6 +34,21 @@ import './commands/ui.js';
34
34
  import './commands/video-recording.js';
35
35
  import './commands/video-stream.js';
36
36
  import './commands/webinspector.js';
37
+ export interface NativeSimctlOptions {
38
+ /** Defaults to `xcode-select -p` (the active Xcode's Developer dir). */
39
+ developerDir?: string;
40
+ /**
41
+ * Defaults to the default device set (`~/Library/Developer/CoreSimulator/Devices`), same as
42
+ * `simctl --set <path>`.
43
+ */
44
+ deviceSetPath?: string;
45
+ /**
46
+ * The versions of SpringBoard's notifications store (`sectionInfoVersionNumber`) the runtimes in
47
+ * use may have, the oldest first. Defaults to all the known ones; callers that know their Xcode
48
+ * narrow it. A store of any other version is refused.
49
+ */
50
+ bulletinBoardVersions?: readonly number[];
51
+ }
37
52
  /**
38
53
  * Drives `CoreSimulator.framework` directly — no `simctl`/`xcrun` subprocess — for the operations
39
54
  * `node-simctl`'s `Simctl` class exposes over the CLI. Devices are addressed by UDID; each call
@@ -53,18 +68,21 @@ import './commands/webinspector.js';
53
68
  * textually define.
54
69
  */
55
70
  export declare class NativeSimctl {
56
- private readonly developerDir?;
57
- private readonly deviceSetPath?;
58
71
  private cachedServiceContext;
59
72
  /**
60
- * @param developerDir — defaults to `xcode-select -p` (the active Xcode's Developer dir).
61
- * @param deviceSetPath — defaults to the default device set
62
- * (`~/Library/Developer/CoreSimulator/Devices`), same as `simctl --set <path>`. Constructing a
63
- * NativeSimctl must never throw — the platform check and the native sharedServiceContext call
64
- * both happen lazily in the `_serviceContext` getter below, so only a method that actually needs
65
- * the simulator (getDevices(), createDevice(), ...) can raise.
73
+ * Constructing a NativeSimctl must never throw — the platform check and the native
74
+ * sharedServiceContext call both happen lazily in the `_serviceContext` getter below, so only a
75
+ * method that actually needs the simulator (getDevices(), createDevice(), ...) can raise.
76
+ *
77
+ * @param options — see {@link NativeSimctlOptions}.
78
+ */
79
+ constructor(options?: NativeSimctlOptions);
80
+ /**
81
+ * @deprecated Pass {@link NativeSimctlOptions} instead.
82
+ * @param developerDir — see {@link NativeSimctlOptions.developerDir}.
83
+ * @param deviceSetPath — see {@link NativeSimctlOptions.deviceSetPath}.
66
84
  */
67
- constructor(developerDir?: string | undefined, deviceSetPath?: string | undefined);
85
+ constructor(developerDir?: string, deviceSetPath?: string);
68
86
  /** @returns `CFBundleVersion` of the loaded `CoreSimulator.framework` (e.g. `"1171.6"`). */
69
87
  static frameworkVersion(): Promise<string>;
70
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"native-simctl.d.ts","sourceRoot":"","sources":["../../src/native-simctl.ts"],"names":[],"mappings":"AAKA,OASO,mBAAmB,CAAC;AAC3B,OAAuE,yBAAyB,CAAC;AACjG,OAIO,mCAAmC,CAAC;AAC3C,OAA4E,2BAA2B,CAAC;AACxG,OAA8B,2BAA2B,CAAC;AAC1D,OAAgE,wBAAwB,CAAC;AACzF,OAaO,yBAAyB,CAAC;AACjC,OAA2C,qBAAqB,CAAC;AACjE,OAAoB,oBAAoB,CAAC;AACzC,OAA2C,0BAA0B,CAAC;AACtE,OAAgF,2BAA2B,CAAC;AAC5G,OAAgD,uBAAuB,CAAC;AACxE,OAAyC,0BAA0B,CAAC;AACpE,OAA2B,qBAAqB,CAAC;AACjD,OASO,kBAAkB,CAAC;AAC1B,OAAwE,+BAA+B,CAAC;AACxG,OAA+B,4BAA4B,CAAC;AAC5D,OAAoC,4BAA4B,CAAC;AAKjE,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yBAAyB,CAAC;AACjC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,2BAA2B,CAAC;AACnC,OAAO,2BAA2B,CAAC;AACnC,OAAO,wBAAwB,CAAC;AAChC,OAAO,yBAAyB,CAAC;AACjC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,0BAA0B,CAAC;AAClC,OAAO,2BAA2B,CAAC;AACnC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,0BAA0B,CAAC;AAClC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,4BAA4B,CAAC;AAYpC;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IAYrB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAZjC,OAAO,CAAC,oBAAoB,CAAkD;IAE9E;;;;;;;OAOG;gBAEgB,YAAY,CAAC,EAAE,MAAM,YAAA,EACrB,aAAa,CAAC,EAAE,MAAM,YAAA;IAGzC,4FAA4F;WAC/E,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;CAkDjD"}
1
+ {"version":3,"file":"native-simctl.d.ts","sourceRoot":"","sources":["../../src/native-simctl.ts"],"names":[],"mappings":"AAKA,OASO,mBAAmB,CAAC;AAC3B,OAAuE,yBAAyB,CAAC;AACjG,OAIO,mCAAmC,CAAC;AAC3C,OAA4E,2BAA2B,CAAC;AACxG,OAA8B,2BAA2B,CAAC;AAC1D,OAAgE,wBAAwB,CAAC;AACzF,OAaO,yBAAyB,CAAC;AACjC,OAA2C,qBAAqB,CAAC;AACjE,OAAoB,oBAAoB,CAAC;AACzC,OAA2C,0BAA0B,CAAC;AACtE,OAAgF,2BAA2B,CAAC;AAC5G,OAAgD,uBAAuB,CAAC;AACxE,OAAyC,0BAA0B,CAAC;AACpE,OAA2B,qBAAqB,CAAC;AACjD,OASO,kBAAkB,CAAC;AAC1B,OAAwE,+BAA+B,CAAC;AACxG,OAA+B,4BAA4B,CAAC;AAC5D,OAAoC,4BAA4B,CAAC;AAYjE,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yBAAyB,CAAC;AACjC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,2BAA2B,CAAC;AACnC,OAAO,2BAA2B,CAAC;AACnC,OAAO,wBAAwB,CAAC;AAChC,OAAO,yBAAyB,CAAC;AACjC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,0BAA0B,CAAC;AAClC,OAAO,2BAA2B,CAAC;AACnC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,0BAA0B,CAAC;AAClC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,4BAA4B,CAAC;AAKpC,MAAM,WAAW,mBAAmB;IAClC,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,oBAAoB,CAAkD;IAK9E;;;;;;OAMG;gBACS,OAAO,CAAC,EAAE,mBAAmB;IACzC;;;;OAIG;gBACS,YAAY,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;IAOzD,4FAA4F;WAC/E,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;CAkDjD"}
@@ -19,6 +19,7 @@ import { getAppearance, getContentSize, getIncreaseContrast, getOrientation, set
19
19
  import { isVideoRecording, startVideoRecording, stopVideoRecording } from './commands/video-recording.js';
20
20
  import { startVideoStream } from './commands/video-stream.js';
21
21
  import { getWebInspectorSocket } from './commands/webinspector.js';
22
+ import { NativeSimUnavailableError } from './errors.js';
22
23
  // Bare re-imports so `declare module './native-simctl.js'` augmentations in the command modules
23
24
  // (which add their methods to NativeSimctl's type) reach downstream consumers' emitted .d.ts
24
25
  // import graph — the named imports above alone aren't part of NativeSimctl's emitted type
@@ -41,7 +42,6 @@ import './commands/ui.js';
41
42
  import './commands/video-recording.js';
42
43
  import './commands/video-stream.js';
43
44
  import './commands/webinspector.js';
44
- import { NativeSimUnavailableError } from './errors.js';
45
45
  import { getPkgRoot, PACKAGE_NAME, runCatchingAsync } from './utils/index.js';
46
46
  const require = createRequire(import.meta.url);
47
47
  /**
@@ -63,20 +63,13 @@ const require = createRequire(import.meta.url);
63
63
  * textually define.
64
64
  */
65
65
  export class NativeSimctl {
66
- developerDir;
67
- deviceSetPath;
68
66
  cachedServiceContext;
69
- /**
70
- * @param developerDir — defaults to `xcode-select -p` (the active Xcode's Developer dir).
71
- * @param deviceSetPath — defaults to the default device set
72
- * (`~/Library/Developer/CoreSimulator/Devices`), same as `simctl --set <path>`. Constructing a
73
- * NativeSimctl must never throw — the platform check and the native sharedServiceContext call
74
- * both happen lazily in the `_serviceContext` getter below, so only a method that actually needs
75
- * the simulator (getDevices(), createDevice(), ...) can raise.
76
- */
77
- constructor(developerDir, deviceSetPath) {
78
- this.developerDir = developerDir;
79
- this.deviceSetPath = deviceSetPath;
67
+ /** @internal Read by the command mixins. */
68
+ _options;
69
+ constructor(optionsOrDeveloperDir, deviceSetPath) {
70
+ this._options = util.isPlainObject(optionsOrDeveloperDir)
71
+ ? { ...optionsOrDeveloperDir }
72
+ : { developerDir: optionsOrDeveloperDir, deviceSetPath };
80
73
  }
81
74
  /** @returns `CFBundleVersion` of the loaded `CoreSimulator.framework` (e.g. `"1171.6"`). */
82
75
  static async frameworkVersion() {
@@ -96,7 +89,7 @@ export class NativeSimctl {
96
89
  */
97
90
  async _serviceContext() {
98
91
  if (!this.cachedServiceContext) {
99
- this.cachedServiceContext = runCatchingAsync(() => loadNative().sharedServiceContext(this.developerDir ?? defaultDeveloperDir())).catch((err) => {
92
+ this.cachedServiceContext = runCatchingAsync(() => loadNative().sharedServiceContext(this._options.developerDir ?? defaultDeveloperDir())).catch((err) => {
100
93
  this.cachedServiceContext = undefined;
101
94
  throw err;
102
95
  });
@@ -106,7 +99,7 @@ export class NativeSimctl {
106
99
  /** @internal Not part of the public API — exposed only so `src/commands/*.ts` mixins can call it. */
107
100
  async _deviceSet() {
108
101
  const context = await this._serviceContext();
109
- const deviceSetPath = this.deviceSetPath;
102
+ const deviceSetPath = this._options.deviceSetPath;
110
103
  return runCatchingAsync(() => deviceSetPath ? context.deviceSetWithPath(deviceSetPath) : context.defaultDeviceSet());
111
104
  }
112
105
  /** @internal Not part of the public API — exposed only so `src/commands/*.ts` mixins can call it. */
@@ -1 +1 @@
1
- {"version":3,"file":"native-simctl.js","sourceRoot":"","sources":["../../src/native-simctl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-simctl.js","sourceRoot":"","sources":["../../src/native-simctl.ts"],"names":[],"mappings":"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"}
@@ -79,11 +79,12 @@ export interface SimBootInfo {
79
79
  export type SimPermissionStatus = 'unset' | 'denied' | 'granted' | 'limited';
80
80
  /**
81
81
  * A privacy permission grantable via `NativeSimctl.grantPermission`/`revokePermission`/
82
- * `resetPermission`. Each is backed by a row in the simulator's own TCC (privacy) database —
83
- * `location` isn't included since CoreLocation simulation has its own subsystem, not a plain TCC
84
- * row (see CLAUDE.md).
82
+ * `resetPermission`. Each except `notifications` is backed by a row in the simulator's own TCC
83
+ * (privacy) database — `location` isn't included since CoreLocation simulation has its own
84
+ * subsystem, not a plain TCC row (see CLAUDE.md). `notifications` is SpringBoard's own setting:
85
+ * changing it restarts SpringBoard, and its status can't be read back via `getPermission`.
85
86
  */
86
- export type SimPermissionService = 'calendar' | 'camera' | 'contacts' | 'faceid' | 'health' | 'homekit' | 'medialibrary' | 'microphone' | 'motion' | 'photos' | 'reminders' | 'siri' | 'speech' | 'usertracking';
87
+ export type SimPermissionService = 'calendar' | 'camera' | 'contacts' | 'faceid' | 'health' | 'homekit' | 'medialibrary' | 'microphone' | 'motion' | 'notifications' | 'photos' | 'reminders' | 'siri' | 'speech' | 'usertracking';
87
88
  /**
88
89
  * A device's renderable display, as returned by `NativeSimctl.getDisplays()`.
89
90
  */
@@ -371,6 +372,7 @@ export interface NativeDeviceHandle {
371
372
  deviceTypeIdentifier(): string;
372
373
  runtimeIdentifier(): string;
373
374
  runtimeRootPath(): string;
375
+ dataPath(): string;
374
376
  boot(options?: Record<string, unknown>): Promise<void>;
375
377
  getBootStatus(): Promise<SimBootInfo | null>;
376
378
  shutdown(): Promise<void>;