@limrun/api 0.58.1 → 0.60.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/CHANGELOG.md +75 -0
  2. package/destination-tunnel-dialer.d.mts +7 -0
  3. package/destination-tunnel-dialer.d.mts.map +1 -1
  4. package/destination-tunnel-dialer.d.ts +7 -0
  5. package/destination-tunnel-dialer.d.ts.map +1 -1
  6. package/destination-tunnel-dialer.js +15 -4
  7. package/destination-tunnel-dialer.js.map +1 -1
  8. package/destination-tunnel-dialer.mjs +13 -3
  9. package/destination-tunnel-dialer.mjs.map +1 -1
  10. package/destination-tunnel.d.mts +4 -0
  11. package/destination-tunnel.d.mts.map +1 -1
  12. package/destination-tunnel.d.ts +4 -0
  13. package/destination-tunnel.d.ts.map +1 -1
  14. package/destination-tunnel.js +2 -0
  15. package/destination-tunnel.js.map +1 -1
  16. package/destination-tunnel.mjs +2 -0
  17. package/destination-tunnel.mjs.map +1 -1
  18. package/index.d.mts +1 -0
  19. package/index.d.mts.map +1 -1
  20. package/index.d.ts +1 -0
  21. package/index.d.ts.map +1 -1
  22. package/index.js +4 -2
  23. package/index.js.map +1 -1
  24. package/index.mjs +1 -0
  25. package/index.mjs.map +1 -1
  26. package/internal/destination-tunnel-management.d.mts +2 -0
  27. package/internal/destination-tunnel-management.d.mts.map +1 -1
  28. package/internal/destination-tunnel-management.d.ts +2 -0
  29. package/internal/destination-tunnel-management.d.ts.map +1 -1
  30. package/internal/destination-tunnel-management.js +5 -0
  31. package/internal/destination-tunnel-management.js.map +1 -1
  32. package/internal/destination-tunnel-management.mjs +6 -1
  33. package/internal/destination-tunnel-management.mjs.map +1 -1
  34. package/internal/destination-tunnel-url.d.mts +2 -0
  35. package/internal/destination-tunnel-url.d.mts.map +1 -1
  36. package/internal/destination-tunnel-url.d.ts +2 -0
  37. package/internal/destination-tunnel-url.d.ts.map +1 -1
  38. package/internal/destination-tunnel-url.js +9 -2
  39. package/internal/destination-tunnel-url.js.map +1 -1
  40. package/internal/destination-tunnel-url.mjs +8 -2
  41. package/internal/destination-tunnel-url.mjs.map +1 -1
  42. package/ios-client.d.mts +58 -7
  43. package/ios-client.d.mts.map +1 -1
  44. package/ios-client.d.ts +58 -7
  45. package/ios-client.d.ts.map +1 -1
  46. package/ios-client.js +58 -30
  47. package/ios-client.js.map +1 -1
  48. package/ios-client.mjs +58 -30
  49. package/ios-client.mjs.map +1 -1
  50. package/ios-launch-environment.d.mts +3 -0
  51. package/ios-launch-environment.d.mts.map +1 -0
  52. package/ios-launch-environment.d.ts +3 -0
  53. package/ios-launch-environment.d.ts.map +1 -0
  54. package/ios-launch-environment.js +14 -0
  55. package/ios-launch-environment.js.map +1 -0
  56. package/ios-launch-environment.mjs +11 -0
  57. package/ios-launch-environment.mjs.map +1 -0
  58. package/package.json +22 -2
  59. package/resources/android-instances.d.mts +12 -0
  60. package/resources/android-instances.d.mts.map +1 -1
  61. package/resources/android-instances.d.ts +12 -0
  62. package/resources/android-instances.d.ts.map +1 -1
  63. package/resources/ios-instances.d.mts +12 -0
  64. package/resources/ios-instances.d.mts.map +1 -1
  65. package/resources/ios-instances.d.ts +12 -0
  66. package/resources/ios-instances.d.ts.map +1 -1
  67. package/src/destination-tunnel-dialer.ts +18 -3
  68. package/src/destination-tunnel.ts +6 -0
  69. package/src/index.ts +6 -0
  70. package/src/internal/destination-tunnel-management.ts +15 -1
  71. package/src/internal/destination-tunnel-url.ts +15 -2
  72. package/src/ios-client.ts +137 -43
  73. package/src/ios-launch-environment.ts +11 -0
  74. package/src/resources/android-instances.ts +14 -0
  75. package/src/resources/ios-instances.ts +14 -0
  76. package/src/tunnel-connector.ts +677 -0
  77. package/src/tunnel.ts +8 -6
  78. package/src/version.ts +1 -1
  79. package/tunnel-connector.d.mts +77 -0
  80. package/tunnel-connector.d.mts.map +1 -0
  81. package/tunnel-connector.d.ts +77 -0
  82. package/tunnel-connector.d.ts.map +1 -0
  83. package/tunnel-connector.js +561 -0
  84. package/tunnel-connector.js.map +1 -0
  85. package/tunnel-connector.mjs +557 -0
  86. package/tunnel-connector.mjs.map +1 -0
  87. package/tunnel.d.mts +2 -0
  88. package/tunnel.d.mts.map +1 -1
  89. package/tunnel.d.ts +2 -0
  90. package/tunnel.d.ts.map +1 -1
  91. package/tunnel.js +8 -6
  92. package/tunnel.js.map +1 -1
  93. package/tunnel.mjs +7 -6
  94. package/tunnel.mjs.map +1 -1
  95. package/version.d.mts +1 -1
  96. package/version.d.ts +1 -1
  97. package/version.js +1 -1
  98. package/version.mjs +1 -1
@@ -0,0 +1,3 @@
1
+ /** Parse repeatable KEY=VALUE entries; the last occurrence of a key wins. */
2
+ export declare function parseLaunchEnvironment(entries: string[]): Record<string, string>;
3
+ //# sourceMappingURL=ios-launch-environment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ios-launch-environment.d.ts","sourceRoot":"","sources":["src/ios-launch-environment.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAShF"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseLaunchEnvironment = parseLaunchEnvironment;
4
+ /** Parse repeatable KEY=VALUE entries; the last occurrence of a key wins. */
5
+ function parseLaunchEnvironment(entries) {
6
+ const env = Object.fromEntries(entries.map((entry) => {
7
+ const separator = entry.indexOf('=');
8
+ if (separator < 1)
9
+ throw new Error('launch environment must use KEY=VALUE');
10
+ return [entry.slice(0, separator), entry.slice(separator + 1)];
11
+ }));
12
+ return env;
13
+ }
14
+ //# sourceMappingURL=ios-launch-environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ios-launch-environment.js","sourceRoot":"","sources":["src/ios-launch-environment.ts"],"names":[],"mappings":";;AACA,wDASC;AAVD,6EAA6E;AAC7E,SAAgB,sBAAsB,CAAC,OAAiB;IACtD,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAC5B,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,SAAS,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CACH,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** Parse repeatable KEY=VALUE entries; the last occurrence of a key wins. */
2
+ export function parseLaunchEnvironment(entries) {
3
+ const env = Object.fromEntries(entries.map((entry) => {
4
+ const separator = entry.indexOf('=');
5
+ if (separator < 1)
6
+ throw new Error('launch environment must use KEY=VALUE');
7
+ return [entry.slice(0, separator), entry.slice(separator + 1)];
8
+ }));
9
+ return env;
10
+ }
11
+ //# sourceMappingURL=ios-launch-environment.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ios-launch-environment.mjs","sourceRoot":"","sources":["src/ios-launch-environment.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,MAAM,UAAU,sBAAsB,CAAC,OAAiB;IACtD,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAC5B,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,SAAS,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CACH,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@limrun/api",
3
- "version": "0.58.1",
3
+ "version": "0.60.0",
4
4
  "description": "The official TypeScript library for the Limrun API",
5
5
  "author": "Limrun <contact@limrun.com>",
6
6
  "types": "./index.d.ts",
@@ -35,7 +35,7 @@
35
35
  "https-proxy-agent": "7.0.6",
36
36
  "ignore": "^7.0.5",
37
37
  "proxy-from-env": "^2.1.0",
38
- "undici": "7.29.0",
38
+ "undici": "7.29.1",
39
39
  "ws": "^8.21.1",
40
40
  "yauzl": "^3.4.0"
41
41
  },
@@ -249,6 +249,16 @@
249
249
  "./ios-client.mjs": {
250
250
  "default": "./ios-client.mjs"
251
251
  },
252
+ "./ios-launch-environment": {
253
+ "import": "./ios-launch-environment.mjs",
254
+ "require": "./ios-launch-environment.js"
255
+ },
256
+ "./ios-launch-environment.js": {
257
+ "default": "./ios-launch-environment.js"
258
+ },
259
+ "./ios-launch-environment.mjs": {
260
+ "default": "./ios-launch-environment.mjs"
261
+ },
252
262
  "./ios-maestro": {
253
263
  "import": "./ios-maestro.mjs",
254
264
  "require": "./ios-maestro.js"
@@ -359,6 +369,16 @@
359
369
  "./resources.mjs": {
360
370
  "default": "./resources.mjs"
361
371
  },
372
+ "./tunnel-connector": {
373
+ "import": "./tunnel-connector.mjs",
374
+ "require": "./tunnel-connector.js"
375
+ },
376
+ "./tunnel-connector.js": {
377
+ "default": "./tunnel-connector.js"
378
+ },
379
+ "./tunnel-connector.mjs": {
380
+ "default": "./tunnel-connector.mjs"
381
+ },
362
382
  "./tunnel": {
363
383
  "import": "./tunnel.mjs",
364
384
  "require": "./tunnel.js"
@@ -54,6 +54,12 @@ export declare namespace AndroidInstance {
54
54
  * 10m, 3h. Default is "0" which means no hard timeout.
55
55
  */
56
56
  hardTimeout?: string;
57
+ /**
58
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
59
+ * instance. Creation fails while that tunnel is offline, and the instance
60
+ * becomes ready only after the tunnel attaches.
61
+ */
62
+ tunnel?: string;
57
63
  }
58
64
  interface Status {
59
65
  /**
@@ -181,6 +187,12 @@ export declare namespace AndroidInstanceCreateParams {
181
187
  */
182
188
  region?: string;
183
189
  sandbox?: Spec.Sandbox;
190
+ /**
191
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
192
+ * instance. Creation fails while that tunnel is offline, and the instance
193
+ * becomes ready only after the tunnel attaches.
194
+ */
195
+ tunnel?: string;
184
196
  }
185
197
  namespace Spec {
186
198
  interface Clue {
@@ -1 +1 @@
1
- {"version":3,"file":"android-instances.d.mts","sourceRoot":"","sources":["../src/resources/android-instances.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"android-instances.d.mts","sourceRoot":"","sources":["../src/resources/android-instances.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,12 @@ export declare namespace AndroidInstance {
54
54
  * 10m, 3h. Default is "0" which means no hard timeout.
55
55
  */
56
56
  hardTimeout?: string;
57
+ /**
58
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
59
+ * instance. Creation fails while that tunnel is offline, and the instance
60
+ * becomes ready only after the tunnel attaches.
61
+ */
62
+ tunnel?: string;
57
63
  }
58
64
  interface Status {
59
65
  /**
@@ -181,6 +187,12 @@ export declare namespace AndroidInstanceCreateParams {
181
187
  */
182
188
  region?: string;
183
189
  sandbox?: Spec.Sandbox;
190
+ /**
191
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
192
+ * instance. Creation fails while that tunnel is offline, and the instance
193
+ * becomes ready only after the tunnel attaches.
194
+ */
195
+ tunnel?: string;
184
196
  }
185
197
  namespace Spec {
186
198
  interface Clue {
@@ -1 +1 @@
1
- {"version":3,"file":"android-instances.d.ts","sourceRoot":"","sources":["../src/resources/android-instances.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"android-instances.d.ts","sourceRoot":"","sources":["../src/resources/android-instances.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,12 @@ export declare namespace IosInstance {
54
54
  * 10m, 3h. Default is "0" which means no hard timeout.
55
55
  */
56
56
  hardTimeout?: string;
57
+ /**
58
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
59
+ * instance. Creation fails while that tunnel is offline, and the instance
60
+ * becomes ready only after the tunnel attaches.
61
+ */
62
+ tunnel?: string;
57
63
  }
58
64
  interface Status {
59
65
  /**
@@ -174,6 +180,12 @@ export declare namespace IosInstanceCreateParams {
174
180
  * the first.
175
181
  */
176
182
  region?: string;
183
+ /**
184
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
185
+ * instance. Creation fails while that tunnel is offline, and the instance
186
+ * becomes ready only after the tunnel attaches.
187
+ */
188
+ tunnel?: string;
177
189
  }
178
190
  namespace Spec {
179
191
  interface Clue {
@@ -1 +1 @@
1
- {"version":3,"file":"ios-instances.d.mts","sourceRoot":"","sources":["../src/resources/ios-instances.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ios-instances.d.mts","sourceRoot":"","sources":["../src/resources/ios-instances.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,6BAAyB;AAC/C,OAAO,EAAE,UAAU,EAAE,gCAA4B;AACjD,OAAO,EAAE,KAAK,EAAE,KAAK,WAAW,EAAE,WAAW,EAAE,+BAA2B;AAE1E,OAAO,EAAE,cAAc,EAAE,wCAAoC;AAG7D,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,WAAW,CAAC;IAK1F;;OAEG;IACH,IAAI,CACF,KAAK,GAAE,qBAAqB,GAAG,IAAI,GAAG,SAAc,EACpD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,iBAAiB,EAAE,WAAW,CAAC;IAI9C;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IAO9D;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,WAAW,CAAC;CAGnE;AAED,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAEnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC;IAE/B,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;IAEvB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC;CAC5B;AAED,yBAAiB,WAAW,CAAC;IAC3B,UAAiB,QAAQ;QACvB,EAAE,EAAE,MAAM,CAAC;QAEX,SAAS,EAAE,MAAM,CAAC;QAElB,cAAc,EAAE,MAAM,CAAC;QAEvB,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,MAAM,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;QAEnC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;IAED,UAAiB,IAAI;QACnB;;;;WAIG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;;WAGG;QACH,MAAM,EAAE,MAAM,CAAC;QAEf;;;WAGG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;IAED,UAAiB,MAAM;QACrB;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,YAAY,CAAC;QAEpE,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAE9B,YAAY,CAAC,EAAE,MAAM,CAAC;QAEtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,eAAe,CAAC,EAAE,MAAM,CAAC;QAEzB;;;;;WAKG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QAEjC;;;;;;;;;;;WAWG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B;CACF;AAED,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,uBAAuB,CAAC,QAAQ,CAAC;IAE5C;;OAEG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC,IAAI,CAAC;CACrC;AAED,yBAAiB,uBAAuB,CAAC;IACvC,UAAiB,QAAQ;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,MAAM,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;KACpC;IAED,UAAiB,IAAI;QACnB;;;WAGG;QACH,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB;;;;WAIG;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;QAEvB;;;WAGG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEzC;;;;;;;WAOG;QACH,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;QAElC;;WAEG;QACH,KAAK,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;QAEnD;;;;;;;;;;;;;;;;;;WAkBG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;IAED,UAAiB,IAAI,CAAC;QACpB,UAAiB,IAAI;YACnB,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAAC;YAEpC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAElB;;;eAGG;YACH,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC;SACtC;QAED,UAAiB,IAAI,CAAC;YACpB,UAAiB,cAAc;gBAC7B;;mBAEG;gBACH,QAAQ,EAAE,MAAM,CAAC;gBAEjB;;mBAEG;gBACH,SAAS,EAAE,MAAM,CAAC;aACnB;SACF;QAED,UAAiB,YAAY;YAC3B,IAAI,EAAE,KAAK,GAAG,UAAU,CAAC;YAEzB,MAAM,EAAE,KAAK,GAAG,WAAW,GAAG,SAAS,CAAC;YAExC,OAAO,CAAC,EAAE,MAAM,CAAC;YAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;YAEnB;;;eAGG;YACH,aAAa,CAAC,EAAE,MAAM,CAAC;YAEvB;;eAEG;YACH,UAAU,CAAC,EAAE,qBAAqB,GAAG,mBAAmB,CAAC;YAEzD,GAAG,CAAC,EAAE,MAAM,CAAC;SACd;KACF;CACF;AAED,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,OAAO,EACL,KAAK,WAAW,IAAI,WAAW,EAC/B,KAAK,iBAAiB,IAAI,iBAAiB,EAC3C,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,qBAAqB,IAAI,qBAAqB,GACpD,CAAC;CACH"}
@@ -54,6 +54,12 @@ export declare namespace IosInstance {
54
54
  * 10m, 3h. Default is "0" which means no hard timeout.
55
55
  */
56
56
  hardTimeout?: string;
57
+ /**
58
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
59
+ * instance. Creation fails while that tunnel is offline, and the instance
60
+ * becomes ready only after the tunnel attaches.
61
+ */
62
+ tunnel?: string;
57
63
  }
58
64
  interface Status {
59
65
  /**
@@ -174,6 +180,12 @@ export declare namespace IosInstanceCreateParams {
174
180
  * the first.
175
181
  */
176
182
  region?: string;
183
+ /**
184
+ * Names a persistent tunnel (`lim tunnel run --name`) that serves this
185
+ * instance. Creation fails while that tunnel is offline, and the instance
186
+ * becomes ready only after the tunnel attaches.
187
+ */
188
+ tunnel?: string;
177
189
  }
178
190
  namespace Spec {
179
191
  interface Clue {
@@ -1 +1 @@
1
- {"version":3,"file":"ios-instances.d.ts","sourceRoot":"","sources":["../src/resources/ios-instances.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ios-instances.d.ts","sourceRoot":"","sources":["../src/resources/ios-instances.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,4BAAyB;AAC/C,OAAO,EAAE,UAAU,EAAE,+BAA4B;AACjD,OAAO,EAAE,KAAK,EAAE,KAAK,WAAW,EAAE,WAAW,EAAE,8BAA2B;AAE1E,OAAO,EAAE,cAAc,EAAE,uCAAoC;AAG7D,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,WAAW,CAAC;IAK1F;;OAEG;IACH,IAAI,CACF,KAAK,GAAE,qBAAqB,GAAG,IAAI,GAAG,SAAc,EACpD,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,iBAAiB,EAAE,WAAW,CAAC;IAI9C;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IAO9D;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,WAAW,CAAC;CAGnE;AAED,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AAEnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC;IAE/B,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;IAEvB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC;CAC5B;AAED,yBAAiB,WAAW,CAAC;IAC3B,UAAiB,QAAQ;QACvB,EAAE,EAAE,MAAM,CAAC;QAEX,SAAS,EAAE,MAAM,CAAC;QAElB,cAAc,EAAE,MAAM,CAAC;QAEvB,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,MAAM,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;QAEnC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;IAED,UAAiB,IAAI;QACnB;;;;WAIG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;;WAGG;QACH,MAAM,EAAE,MAAM,CAAC;QAEf;;;WAGG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;IAED,UAAiB,MAAM;QACrB;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,YAAY,CAAC;QAEpE,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAE9B,YAAY,CAAC,EAAE,MAAM,CAAC;QAEtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,eAAe,CAAC,EAAE,MAAM,CAAC;QAEzB;;;;;WAKG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QAEjC;;;;;;;;;;;WAWG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B;CACF;AAED,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,uBAAuB,CAAC,QAAQ,CAAC;IAE5C;;OAEG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC,IAAI,CAAC;CACrC;AAED,yBAAiB,uBAAuB,CAAC;IACvC,UAAiB,QAAQ;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB,MAAM,CAAC,EAAE;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;KACpC;IAED,UAAiB,IAAI;QACnB;;;WAGG;QACH,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB;;;;WAIG;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;QAEvB;;;WAGG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,aAAa,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEzC;;;;;;;WAOG;QACH,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;QAElC;;WAEG;QACH,KAAK,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;QAEnD;;;;;;;;;;;;;;;;;;WAkBG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;IAED,UAAiB,IAAI,CAAC;QACpB,UAAiB,IAAI;YACnB,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAAC;YAEpC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAElB;;;eAGG;YACH,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC;SACtC;QAED,UAAiB,IAAI,CAAC;YACpB,UAAiB,cAAc;gBAC7B;;mBAEG;gBACH,QAAQ,EAAE,MAAM,CAAC;gBAEjB;;mBAEG;gBACH,SAAS,EAAE,MAAM,CAAC;aACnB;SACF;QAED,UAAiB,YAAY;YAC3B,IAAI,EAAE,KAAK,GAAG,UAAU,CAAC;YAEzB,MAAM,EAAE,KAAK,GAAG,WAAW,GAAG,SAAS,CAAC;YAExC,OAAO,CAAC,EAAE,MAAM,CAAC;YAEjB,SAAS,CAAC,EAAE,MAAM,CAAC;YAEnB;;;eAGG;YACH,aAAa,CAAC,EAAE,MAAM,CAAC;YAEvB;;eAEG;YACH,UAAU,CAAC,EAAE,qBAAqB,GAAG,mBAAmB,CAAC;YAEzD,GAAG,CAAC,EAAE,MAAM,CAAC;SACd;KACF;CACF;AAED,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,OAAO,EACL,KAAK,WAAW,IAAI,WAAW,EAC/B,KAAK,iBAAiB,IAAI,iBAAiB,EAC3C,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,qBAAqB,IAAI,qBAAqB,GACpD,CAAC;CACH"}
@@ -70,6 +70,8 @@ export interface DestinationTcpTunnelOptions {
70
70
  onInspectionError?: DestinationTunnelInspectionErrorCallback;
71
71
  /** Per-flow receive window in bytes. Defaults to 1 MiB. */
72
72
  window?: number;
73
+ /** Persistent tunnel this session serves; the instance reports it in tunnel status. */
74
+ name?: string;
73
75
  logLevel?: LogLevel;
74
76
  maxConnections?: number;
75
77
  maxPendingBytesPerConnection?: number;
@@ -136,13 +138,23 @@ interface OpenDialConnection extends DialConnection {
136
138
  /** Thrown (message prefix) when the server terminates the session with `error`. */
137
139
  export const DESTINATION_TUNNEL_SERVER_ERROR_PREFIX = 'destination tunnel failed: ';
138
140
 
141
+ /** The server ended the session with an `error` frame carrying `code`. */
142
+ export class DestinationTunnelSessionError extends Error {
143
+ readonly code: string;
144
+
145
+ constructor(code: string) {
146
+ super(`${DESTINATION_TUNNEL_SERVER_ERROR_PREFIX}${code}`);
147
+ this.code = code;
148
+ }
149
+ }
150
+
139
151
  /**
140
152
  * True when the failure is a terminal protocol/policy rejection from the
141
153
  * server rather than a transient transport problem. Reconnect supervisors
142
154
  * must not retry terminal failures.
143
155
  */
144
156
  export function isTerminalDestinationTunnelError(error: unknown): boolean {
145
- return error instanceof Error && error.message.startsWith(DESTINATION_TUNNEL_SERVER_ERROR_PREFIX);
157
+ return error instanceof DestinationTunnelSessionError;
146
158
  }
147
159
 
148
160
  export async function startDestinationTcpTunnel(
@@ -729,7 +741,9 @@ export async function startDestinationTcpTunnel(
729
741
  logger.info(
730
742
  `Destination tunnel ready with ${selectors.length} selector(s); relaunch apps that connected before it`,
731
743
  );
732
- if (inspection.enabled) {
744
+ // The stream only feeds the callbacks; without one it would be an
745
+ // idle connection per tunnel.
746
+ if (inspection.enabled && (options.onInspectionEvent || options.onInspectionError)) {
733
747
  try {
734
748
  inspectionStream = startDestinationTunnelInspectionStream(remoteURL, message.tunnelId, token, {
735
749
  ...(options.onInspectionEvent ? { onEvent: options.onInspectionEvent } : {}),
@@ -756,7 +770,7 @@ export async function startDestinationTcpTunnel(
756
770
  return;
757
771
  }
758
772
  case 'error':
759
- throw new Error(`${DESTINATION_TUNNEL_SERVER_ERROR_PREFIX}${message.code}`);
773
+ throw new DestinationTunnelSessionError(message.code);
760
774
  case 'open':
761
775
  if (!tunnelReady) throw new DestinationTunnelProtocolError('received OPEN before READY');
762
776
  handleOpen(message);
@@ -796,6 +810,7 @@ export async function startDestinationTcpTunnel(
796
810
  selectors,
797
811
  inspection,
798
812
  window: creditWindow,
813
+ ...(options.name === undefined ? {} : { name: options.name }),
799
814
  });
800
815
  pingInterval = setInterval(() => {
801
816
  if (ws.readyState === WebSocket.OPEN) {
@@ -136,6 +136,8 @@ export type DestinationTunnelClientMessage =
136
136
  inspection: DestinationTunnelInspectionConfig;
137
137
  /** Default per-flow receive window this client grants. */
138
138
  window: number;
139
+ /** Persistent tunnel this session serves. The instance only echoes it in status. */
140
+ name?: string;
139
141
  }
140
142
  | {
141
143
  type: 'openOk';
@@ -160,6 +162,8 @@ export type DestinationTunnelServerMessage =
160
162
  tunnelId: string;
161
163
  selectors: DestinationTunnelSelectorReport[];
162
164
  configHash: string;
165
+ /** The persistent tunnel name the client sent in start, echoed back. */
166
+ name?: string;
163
167
  }
164
168
  | {
165
169
  type: 'open';
@@ -466,6 +470,7 @@ export function encodeDestinationTunnelClientMessage(message: DestinationTunnelC
466
470
  selectors,
467
471
  inspection,
468
472
  window: readWindow(record),
473
+ ...readOptionalString(record, 'name'),
469
474
  });
470
475
  }
471
476
  case 'openOk':
@@ -510,6 +515,7 @@ export function decodeDestinationTunnelServerMessage(value: unknown): Destinatio
510
515
  readSelectorReport(value, `selector-${index + 1}`),
511
516
  ),
512
517
  configHash: readString(message, 'configHash'),
518
+ ...readOptionalString(message, 'name'),
513
519
  };
514
520
  case 'open':
515
521
  return {
package/src/index.ts CHANGED
@@ -13,6 +13,12 @@ export {
13
13
  type DestinationTcpTunnel,
14
14
  type DestinationTcpTunnelOptions,
15
15
  } from './destination-tunnel-dialer';
16
+ export {
17
+ runTunnel,
18
+ type TunnelConnector,
19
+ type TunnelConnectorEvent,
20
+ type TunnelConnectorOptions,
21
+ } from './tunnel-connector';
16
22
  export {
17
23
  decodeDestinationTunnelInspectionSSEEvent,
18
24
  deriveDestinationTunnelInspectionURL,
@@ -1,6 +1,12 @@
1
1
  import { nodeProxyTransport } from './proxy-transport';
2
2
  import { deriveDestinationTunnelStatusURL, deriveDestinationTunnelStopURL } from './destination-tunnel-url';
3
- import { readArray, readNonEmptyString, readRecord, readString } from './destination-tunnel-wire-reader';
3
+ import {
4
+ readArray,
5
+ readNonEmptyString,
6
+ readOptionalString,
7
+ readRecord,
8
+ readString,
9
+ } from './destination-tunnel-wire-reader';
4
10
  import {
5
11
  normalizeDestinationTunnelInspection,
6
12
  type DestinationTunnelBindReport,
@@ -11,6 +17,8 @@ import {
11
17
  export interface DestinationTunnelStatus {
12
18
  active?: {
13
19
  tunnelId: string;
20
+ /** Persistent tunnel the session serves, absent for a one-instance tunnel. */
21
+ name?: string;
14
22
  state: 'starting' | 'ready' | 'stopping';
15
23
  selectors: DestinationTunnelSelectorReport[];
16
24
  inspection: DestinationTunnelInspectionConfig;
@@ -28,12 +36,16 @@ export interface DestinationTunnelStatus {
28
36
  };
29
37
  }
30
38
 
39
+ /** Status and stop answer at once; a wedged instance must not hold its caller for minutes. */
40
+ const MANAGEMENT_TIMEOUT_MS = 10_000;
41
+
31
42
  export async function getDestinationTunnelStatus(
32
43
  apiUrl: string,
33
44
  token: string,
34
45
  ): Promise<DestinationTunnelStatus> {
35
46
  const response = await nodeProxyTransport.fetch(deriveDestinationTunnelStatusURL(apiUrl).toString(), {
36
47
  headers: { Authorization: `Bearer ${token}` },
48
+ signal: AbortSignal.timeout(MANAGEMENT_TIMEOUT_MS),
37
49
  });
38
50
  if (!response.ok) {
39
51
  throw new Error(`getTunnelStatus failed: ${response.status} ${await response.text()}`);
@@ -50,6 +62,7 @@ export async function stopDestinationTunnel(apiUrl: string, token: string, tunne
50
62
  {
51
63
  method: 'DELETE',
52
64
  headers: { Authorization: `Bearer ${token}` },
65
+ signal: AbortSignal.timeout(MANAGEMENT_TIMEOUT_MS),
53
66
  },
54
67
  );
55
68
  if (!response.ok) {
@@ -80,6 +93,7 @@ function readActiveTunnel(value: unknown): NonNullable<DestinationTunnelStatus['
80
93
  }
81
94
  return {
82
95
  tunnelId: readNonEmptyString(active, 'tunnelId'),
96
+ ...readOptionalString(active, 'name'),
83
97
  state,
84
98
  selectors: readArray(active, 'selectors').map((selector, index) =>
85
99
  readSelectorReport(selector, `selector-${index + 1}`),
@@ -1,4 +1,4 @@
1
- /** The endpoint at `path` under an instance URL, without query or fragment. */
1
+ /** The endpoint at `path` under a base URL, without query or fragment. */
2
2
  function deriveEndpointURL(apiUrl: string, path: string): URL {
3
3
  const url = new URL(apiUrl);
4
4
  if (
@@ -26,7 +26,20 @@ export function deriveAdbHttpURL(adbUrl: string, path: string): URL {
26
26
  }
27
27
 
28
28
  export function deriveDestinationTunnelURL(apiUrl: string): string {
29
- const url = deriveEndpointURL(apiUrl, 'tunnel');
29
+ return webSocketURL(deriveEndpointURL(apiUrl, 'tunnel'));
30
+ }
31
+
32
+ /** The control WebSocket of a persistent tunnel, under the Limrun API base URL. */
33
+ export function deriveTunnelConnectURL(baseURL: string, organizationId: string, name: string): string {
34
+ return webSocketURL(
35
+ deriveEndpointURL(
36
+ baseURL,
37
+ `v1/organizations/${encodeURIComponent(organizationId)}/tunnels/${encodeURIComponent(name)}/connect`,
38
+ ),
39
+ );
40
+ }
41
+
42
+ function webSocketURL(url: URL): string {
30
43
  url.protocol = url.protocol === 'https:' || url.protocol === 'wss:' ? 'wss:' : 'ws:';
31
44
  return url.toString();
32
45
  }