@intuned/runtime-dev 1.3.18-interface.13 → 1.3.18-interface.16

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 (234) hide show
  1. package/.babelrc +27 -0
  2. package/.claude/settings.local.json +7 -0
  3. package/.eslintignore +10 -0
  4. package/.eslintrc.js +39 -0
  5. package/InterfaceTemplate/__utils.ts +3 -1
  6. package/WebTemplate.zip +0 -0
  7. package/dist/commands/api/run.d.ts +1 -3
  8. package/dist/commands/api/run.js +64 -2039
  9. package/dist/commands/auth-sessions/load.d.ts +1 -0
  10. package/dist/commands/auth-sessions/load.js +28 -1552
  11. package/dist/commands/auth-sessions/run-check.d.ts +1 -0
  12. package/dist/commands/auth-sessions/run-check.js +71 -1961
  13. package/dist/commands/auth-sessions/run-create.d.ts +1 -0
  14. package/dist/commands/auth-sessions/run-create.js +65 -1955
  15. package/dist/commands/browser/save-state.d.ts +1 -0
  16. package/dist/commands/browser/save-state.js +11 -102
  17. package/dist/commands/browser/start-browser.d.ts +1 -0
  18. package/dist/commands/browser/start-browser.js +9 -62
  19. package/dist/commands/build.d.ts +1 -2
  20. package/dist/commands/build.js +52 -172
  21. package/dist/commands/common/browserUtils.d.ts +14 -0
  22. package/dist/commands/common/browserUtils.js +57 -0
  23. package/dist/commands/common/getFirstLineNumber.d.ts +9 -0
  24. package/dist/commands/common/getFirstLineNumber.js +101 -0
  25. package/dist/commands/common/getFirstLineNumber.test.js +227 -0
  26. package/dist/commands/common/projectExclusions.d.ts +2 -0
  27. package/dist/commands/common/projectExclusions.js +8 -0
  28. package/dist/commands/common/sendMessageToClient.d.ts +1 -0
  29. package/dist/commands/common/sendMessageToClient.js +10 -0
  30. package/dist/commands/common/tsNodeImport.d.ts +2 -5
  31. package/dist/commands/common/tsNodeImport.js +15 -55
  32. package/dist/commands/common/utils/fileUtils.d.ts +6 -0
  33. package/dist/commands/common/utils/fileUtils.js +32 -0
  34. package/dist/commands/common/utils/interfaceClient.d.ts +31 -0
  35. package/dist/commands/common/utils/interfaceClient.js +98 -0
  36. package/dist/commands/common/utils/settings.d.ts +2 -0
  37. package/dist/commands/common/utils/settings.js +31 -0
  38. package/dist/commands/common/utils/template.d.ts +2 -0
  39. package/dist/commands/common/utils/template.js +30 -0
  40. package/dist/commands/get-headless-user-agent.d.ts +1 -2
  41. package/dist/commands/get-headless-user-agent.js +12 -348
  42. package/dist/commands/interface/pingPong.d.ts +2 -0
  43. package/dist/commands/interface/pingPong.js +11 -0
  44. package/dist/commands/interface/run.d.ts +1 -3
  45. package/dist/commands/interface/run.js +139 -2034
  46. package/dist/commands/interface/runApi.d.ts +1 -0
  47. package/dist/commands/interface/runApi.js +102 -0
  48. package/dist/commands/intuned-cli/commands/attempt.command.d.ts +1 -0
  49. package/dist/commands/intuned-cli/commands/attempt.command.js +8 -0
  50. package/dist/commands/intuned-cli/commands/attempt_api.command.d.ts +1 -0
  51. package/dist/commands/intuned-cli/commands/attempt_api.command.js +30 -0
  52. package/dist/commands/intuned-cli/commands/attempt_authsession.command.d.ts +1 -0
  53. package/dist/commands/intuned-cli/commands/attempt_authsession.command.js +8 -0
  54. package/dist/commands/intuned-cli/commands/attempt_authsession_check.command.d.ts +1 -0
  55. package/dist/commands/intuned-cli/commands/attempt_authsession_check.command.js +19 -0
  56. package/dist/commands/intuned-cli/commands/attempt_authsession_create.command.d.ts +1 -0
  57. package/dist/commands/intuned-cli/commands/attempt_authsession_create.command.js +24 -0
  58. package/dist/commands/intuned-cli/commands/authsession.command.d.ts +1 -0
  59. package/dist/commands/intuned-cli/commands/authsession.command.js +8 -0
  60. package/dist/commands/intuned-cli/commands/authsession_record.command.d.ts +1 -0
  61. package/dist/commands/intuned-cli/commands/authsession_record.command.js +32 -0
  62. package/dist/commands/intuned-cli/commands/authsession_scaffold.command.d.ts +1 -0
  63. package/dist/commands/intuned-cli/commands/authsession_scaffold.command.js +16 -0
  64. package/dist/commands/intuned-cli/commands/build.command.d.ts +1 -0
  65. package/dist/commands/intuned-cli/commands/build.command.js +12 -0
  66. package/dist/commands/intuned-cli/commands/command.d.ts +2 -0
  67. package/dist/commands/intuned-cli/commands/command.js +9 -0
  68. package/dist/commands/intuned-cli/commands/deploy.command.d.ts +1 -0
  69. package/dist/commands/intuned-cli/commands/deploy.command.js +42 -0
  70. package/dist/commands/intuned-cli/commands/index.d.ts +18 -0
  71. package/dist/commands/intuned-cli/commands/index.js +203 -0
  72. package/dist/commands/intuned-cli/commands/provision.command.d.ts +13 -0
  73. package/dist/commands/intuned-cli/commands/provision.command.js +50 -0
  74. package/dist/commands/intuned-cli/commands/run.command.d.ts +1 -0
  75. package/dist/commands/intuned-cli/commands/run.command.js +8 -0
  76. package/dist/commands/intuned-cli/commands/run_api.command.d.ts +1 -0
  77. package/dist/commands/intuned-cli/commands/run_api.command.js +46 -0
  78. package/dist/commands/intuned-cli/commands/run_authsession.command.d.ts +35 -0
  79. package/dist/commands/intuned-cli/commands/run_authsession.command.js +17 -0
  80. package/dist/commands/intuned-cli/commands/run_authsession_create.command.d.ts +1 -0
  81. package/dist/commands/intuned-cli/commands/run_authsession_create.command.js +35 -0
  82. package/dist/commands/intuned-cli/commands/run_authsession_update.command.d.ts +1 -0
  83. package/dist/commands/intuned-cli/commands/run_authsession_update.command.js +35 -0
  84. package/dist/commands/intuned-cli/commands/run_authsession_validate.command.d.ts +1 -0
  85. package/dist/commands/intuned-cli/commands/run_authsession_validate.command.js +33 -0
  86. package/dist/commands/intuned-cli/commands/types.d.ts +39 -0
  87. package/dist/commands/intuned-cli/commands/types.js +33 -0
  88. package/dist/commands/intuned-cli/constants/index.d.ts +17 -0
  89. package/dist/commands/intuned-cli/constants/index.js +25 -0
  90. package/dist/commands/intuned-cli/controller/__test__/api.test.js +398 -0
  91. package/dist/commands/intuned-cli/controller/__test__/authSession.test.js +1060 -0
  92. package/dist/commands/intuned-cli/controller/api.d.ts +42 -0
  93. package/dist/commands/intuned-cli/controller/api.js +194 -0
  94. package/dist/commands/intuned-cli/controller/authSession.d.ts +209 -0
  95. package/dist/commands/intuned-cli/controller/authSession.js +425 -0
  96. package/dist/commands/intuned-cli/controller/build.d.ts +1 -0
  97. package/dist/commands/intuned-cli/controller/build.js +35 -0
  98. package/dist/commands/intuned-cli/controller/deploy.d.ts +5 -0
  99. package/dist/commands/intuned-cli/controller/deploy.js +317 -0
  100. package/dist/commands/intuned-cli/controller/index.d.ts +1 -0
  101. package/dist/commands/intuned-cli/controller/index.js +45 -0
  102. package/dist/commands/intuned-cli/controller/provision.d.ts +21 -0
  103. package/dist/commands/intuned-cli/controller/provision.js +299 -0
  104. package/dist/commands/intuned-cli/controller/scaffold.d.ts +1 -0
  105. package/dist/commands/intuned-cli/controller/scaffold.js +77 -0
  106. package/dist/commands/intuned-cli/helpers/__test__/browser.test.js +152 -0
  107. package/dist/commands/intuned-cli/helpers/__test__/tracing.test.js +41 -0
  108. package/dist/commands/intuned-cli/helpers/api.d.ts +3 -0
  109. package/dist/commands/intuned-cli/helpers/api.js +16 -0
  110. package/dist/commands/intuned-cli/helpers/auth.d.ts +46 -0
  111. package/dist/commands/intuned-cli/helpers/auth.js +147 -0
  112. package/dist/commands/intuned-cli/helpers/backend.d.ts +8 -0
  113. package/dist/commands/intuned-cli/helpers/backend.js +35 -0
  114. package/dist/commands/intuned-cli/helpers/browser.d.ts +14 -0
  115. package/dist/commands/intuned-cli/helpers/browser.js +93 -0
  116. package/dist/commands/intuned-cli/helpers/context.d.ts +3 -0
  117. package/dist/commands/intuned-cli/helpers/context.js +33 -0
  118. package/dist/commands/intuned-cli/helpers/errors.d.ts +16 -0
  119. package/dist/commands/intuned-cli/helpers/errors.js +44 -0
  120. package/dist/commands/intuned-cli/helpers/index.d.ts +12 -0
  121. package/dist/commands/intuned-cli/helpers/index.js +137 -0
  122. package/dist/commands/intuned-cli/helpers/intunedJson.d.ts +39 -0
  123. package/dist/commands/intuned-cli/helpers/intunedJson.js +20 -0
  124. package/dist/commands/intuned-cli/helpers/prompts.d.ts +3 -0
  125. package/dist/commands/intuned-cli/helpers/prompts.js +71 -0
  126. package/dist/commands/intuned-cli/helpers/proxy.d.ts +5 -0
  127. package/dist/commands/intuned-cli/helpers/proxy.js +23 -0
  128. package/dist/commands/intuned-cli/helpers/terminal.d.ts +5 -0
  129. package/dist/commands/intuned-cli/helpers/terminal.js +13 -0
  130. package/dist/commands/intuned-cli/helpers/timeout.d.ts +1 -0
  131. package/dist/commands/intuned-cli/helpers/timeout.js +23 -0
  132. package/dist/commands/intuned-cli/helpers/traces.d.ts +2 -0
  133. package/dist/commands/intuned-cli/helpers/traces.js +32 -0
  134. package/dist/commands/intuned-cli/helpers/validation.d.ts +2 -0
  135. package/dist/commands/intuned-cli/helpers/validation.js +14 -0
  136. package/dist/commands/intuned-cli/helpers/wrapper.d.ts +2 -0
  137. package/dist/commands/intuned-cli/helpers/wrapper.js +76 -0
  138. package/dist/commands/intuned-cli/index.d.ts +1 -0
  139. package/dist/commands/intuned-cli/index.js +16 -0
  140. package/dist/commands/intuned-cli/main.d.ts +1 -2
  141. package/dist/commands/intuned-cli/main.js +24 -5392
  142. package/dist/commands/intuned-cli/types.d.ts +70 -0
  143. package/dist/commands/intuned-cli/types.js +22 -0
  144. package/dist/commands/ts-check.d.ts +1 -0
  145. package/dist/commands/ts-check.js +28 -131
  146. package/dist/common/Logger/Logger/index.d.ts +12 -0
  147. package/dist/common/Logger/Logger/index.js +60 -0
  148. package/dist/common/Logger/Logger/types.d.ts +8 -0
  149. package/dist/common/Logger/Logger/types.js +5 -0
  150. package/dist/common/Logger/index.d.ts +12 -0
  151. package/dist/common/Logger/index.js +60 -0
  152. package/dist/common/Logger/types.d.ts +8 -0
  153. package/dist/common/Logger/types.js +5 -0
  154. package/dist/common/asyncLocalStorage/index.d.ts +8 -9
  155. package/dist/common/asyncLocalStorage/index.js +9 -33
  156. package/dist/common/backendFunctions/getAuthSessionParameters.d.ts +1 -0
  157. package/dist/common/backendFunctions/getAuthSessionParameters.js +38 -0
  158. package/dist/common/binStartupScript.d.ts +1 -2
  159. package/dist/common/binStartupScript.js +10 -126
  160. package/dist/common/browserTabs.d.ts +72 -0
  161. package/dist/common/browserTabs.js +74 -0
  162. package/dist/common/cleanEnvironmentVariables.d.ts +1 -3
  163. package/dist/common/cleanEnvironmentVariables.js +7 -29
  164. package/dist/common/constants.d.ts +11 -13
  165. package/dist/common/constants.js +15 -57
  166. package/dist/common/contextStorageStateHelpers.d.ts +6 -8
  167. package/dist/common/contextStorageStateHelpers.js +22 -46
  168. package/dist/common/extension/extensionsHelpers.d.ts +11 -0
  169. package/dist/common/extension/extensionsHelpers.js +147 -0
  170. package/dist/common/extension/intunedExtensionServer.d.ts +24 -0
  171. package/dist/common/extension/intunedExtensionServer.js +178 -0
  172. package/dist/common/extension/types.d.ts +219 -0
  173. package/dist/common/extension/types.js +51 -0
  174. package/dist/common/formatZodError.d.ts +2 -0
  175. package/dist/common/formatZodError.js +18 -0
  176. package/dist/common/intunedJson.d.ts +229 -0
  177. package/dist/common/intunedJson.js +132 -0
  178. package/dist/common/jwtTokenManager.d.ts +4 -6
  179. package/dist/common/jwtTokenManager.js +40 -107
  180. package/dist/common/launchBrowser.d.ts +34 -0
  181. package/dist/common/launchBrowser.js +247 -0
  182. package/dist/common/playwrightContext.d.ts +29 -0
  183. package/dist/common/playwrightContext.js +148 -0
  184. package/dist/common/runApi/importUsingImportFunction.d.ts +7 -0
  185. package/dist/common/runApi/importUsingImportFunction.js +46 -0
  186. package/dist/common/runApi/index.d.ts +6 -9
  187. package/dist/common/runApi/index.js +70 -1765
  188. package/dist/common/settingsSchema.d.ts +6 -9
  189. package/dist/common/settingsSchema.js +18 -53
  190. package/dist/common/setupContextHook.d.ts +16 -0
  191. package/dist/common/setupContextHook.js +22 -0
  192. package/dist/common/telemetry.d.ts +3 -6
  193. package/dist/common/telemetry.js +8 -40
  194. package/dist/index.d.ts +4 -6
  195. package/dist/index.js +92 -783
  196. package/dist/runtime/RunError.d.ts +5 -0
  197. package/dist/runtime/RunError.js +19 -0
  198. package/dist/runtime/attemptStore.d.ts +2 -0
  199. package/dist/runtime/attemptStore.js +23 -0
  200. package/dist/runtime/captcha.d.ts +15 -0
  201. package/dist/runtime/captcha.js +191 -0
  202. package/dist/runtime/captcha.test.js +821 -0
  203. package/dist/runtime/downloadDirectory.d.ts +1 -0
  204. package/dist/runtime/downloadDirectory.js +19 -0
  205. package/dist/runtime/enums.d.js +5 -0
  206. package/dist/runtime/enums.d.ts +11 -0
  207. package/dist/runtime/enums.js +18 -0
  208. package/dist/runtime/executionHelpers.test.js +52 -0
  209. package/dist/runtime/export.d.js +5 -0
  210. package/dist/runtime/export.d.ts +284 -0
  211. package/dist/runtime/extendPayload.d.ts +2 -0
  212. package/dist/runtime/extendPayload.js +21 -0
  213. package/dist/runtime/extendTimeout.d.ts +1 -0
  214. package/dist/runtime/extendTimeout.js +23 -0
  215. package/dist/runtime/getAiGatewayConfig.d.ts +10 -0
  216. package/dist/runtime/getAiGatewayConfig.js +16 -0
  217. package/dist/runtime/getAuthSessionParameters.d.ts +1 -0
  218. package/dist/runtime/getAuthSessionParameters.js +20 -0
  219. package/dist/runtime/index.d.ts +10 -168
  220. package/dist/runtime/index.js +88 -778
  221. package/dist/runtime/persistentStore.d.ts +2 -0
  222. package/dist/runtime/persistentStore.js +37 -0
  223. package/dist/runtime/persistentStore.test.js +101 -0
  224. package/dist/runtime/runInfo.d.ts +2 -0
  225. package/dist/runtime/runInfo.js +21 -0
  226. package/dist/vendor/runtime-interface.d.ts +1 -0
  227. package/dist/vendor/runtime-interface.js +474 -0
  228. package/package.json +18 -72
  229. package/template.tsconfig.json +11 -0
  230. package/tsconfig.eslint.json +5 -0
  231. package/tsconfig.json +25 -0
  232. package/tsup.config.ts +11 -0
  233. package/typedoc.json +49 -0
  234. package/dist/export.d-BAUMB-lG.d.ts +0 -140
@@ -0,0 +1,2 @@
1
+ import type { PersistentStore } from "./export";
2
+ export declare const persistentStore: PersistentStore;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.persistentStore = void 0;
7
+ var _zod = require("zod");
8
+ var _jwtTokenManager = require("../common/jwtTokenManager");
9
+ const forbiddenCharacters = /[:#]/g;
10
+ const keySchema = _zod.z.string().min(1, "Key must be at least 1 character long").refine(key => (key.match(forbiddenCharacters)?.length ?? 0) === 0, 'Key cannot contain the following characters: ":" or "#"');
11
+ const persistentStore = exports.persistentStore = Object.freeze({
12
+ get: async key => {
13
+ const parsedKey = keySchema.parse(key);
14
+ const response = await (0, _jwtTokenManager.callBackendFunctionWithToken)(`kv-store/${parsedKey}`, {
15
+ method: "GET"
16
+ });
17
+ const json = await response.json();
18
+ if (!response.ok) {
19
+ throw new Error(json.message);
20
+ }
21
+ return json.value;
22
+ },
23
+ set: async (key, value) => {
24
+ const keyResult = keySchema.parse(key);
25
+ const response = await (0, _jwtTokenManager.callBackendFunctionWithToken)(`kv-store/${keyResult}`, {
26
+ method: "PUT",
27
+ body: JSON.stringify(value),
28
+ headers: {
29
+ "Content-Type": "application/json"
30
+ }
31
+ });
32
+ const json = await response.json();
33
+ if (!response.ok) {
34
+ throw new Error(json.message);
35
+ }
36
+ }
37
+ });
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+
3
+ var _vitest = require("vitest");
4
+ var _zod = require("zod");
5
+ var _persistentStore = require("./persistentStore");
6
+ var _jwtTokenManager = require("../common/jwtTokenManager");
7
+ _vitest.vi.mock("../common/jwtTokenManager", () => ({
8
+ callBackendFunctionWithToken: _vitest.vi.fn()
9
+ }));
10
+ (0, _vitest.describe)("Cache", () => {
11
+ (0, _vitest.beforeEach)(() => {
12
+ _vitest.vi.clearAllMocks();
13
+ });
14
+ (0, _vitest.describe)("get", () => {
15
+ (0, _vitest.it)("should return value when successful", async () => {
16
+ const mockResponse = {
17
+ ok: true,
18
+ json: _vitest.vi.fn().mockResolvedValue({
19
+ value: "cached_data"
20
+ })
21
+ };
22
+ _vitest.vi.mocked(_jwtTokenManager.callBackendFunctionWithToken).mockResolvedValue(mockResponse);
23
+ const result = await _persistentStore.persistentStore.get("test_key");
24
+ (0, _vitest.expect)(result).toBe("cached_data");
25
+ (0, _vitest.expect)(_jwtTokenManager.callBackendFunctionWithToken).toHaveBeenCalledWith("kv-store/test_key", {
26
+ method: "GET"
27
+ });
28
+ (0, _vitest.expect)(mockResponse.json).toHaveBeenCalled();
29
+ });
30
+ (0, _vitest.it)("should throw error when response is not ok", async () => {
31
+ const mockResponse = {
32
+ ok: false,
33
+ json: _vitest.vi.fn().mockResolvedValue({
34
+ message: "Cache miss"
35
+ })
36
+ };
37
+ _vitest.vi.mocked(_jwtTokenManager.callBackendFunctionWithToken).mockResolvedValue(mockResponse);
38
+ await (0, _vitest.expect)(_persistentStore.persistentStore.get("test_key")).rejects.toThrow("Cache miss");
39
+ });
40
+ (0, _vitest.it)("should throw error for empty key", async () => {
41
+ await (0, _vitest.expect)(_persistentStore.persistentStore.get("")).rejects.toThrow(_zod.ZodError);
42
+ });
43
+ (0, _vitest.it)("should throw error for key with colon", async () => {
44
+ await (0, _vitest.expect)(_persistentStore.persistentStore.get("invalid:key")).rejects.toThrow(_zod.ZodError);
45
+ });
46
+ (0, _vitest.it)("should throw error for key with hash", async () => {
47
+ await (0, _vitest.expect)(_persistentStore.persistentStore.get("invalid#key")).rejects.toThrow(_zod.ZodError);
48
+ });
49
+ });
50
+ (0, _vitest.describe)("set", () => {
51
+ (0, _vitest.it)("should call backend correctly when successful", async () => {
52
+ const mockResponse = {
53
+ ok: true,
54
+ json: _vitest.vi.fn().mockResolvedValue({})
55
+ };
56
+ _vitest.vi.mocked(_jwtTokenManager.callBackendFunctionWithToken).mockResolvedValue(mockResponse);
57
+ const testValue = {
58
+ data: "test"
59
+ };
60
+ await _persistentStore.persistentStore.set("test_key", testValue);
61
+ (0, _vitest.expect)(_jwtTokenManager.callBackendFunctionWithToken).toHaveBeenCalledWith("kv-store/test_key", {
62
+ method: "PUT",
63
+ body: JSON.stringify(testValue),
64
+ headers: {
65
+ "Content-Type": "application/json"
66
+ }
67
+ });
68
+ (0, _vitest.expect)(mockResponse.json).toHaveBeenCalled();
69
+ });
70
+ (0, _vitest.it)("should throw error when response is not ok", async () => {
71
+ const mockResponse = {
72
+ ok: false,
73
+ json: _vitest.vi.fn().mockResolvedValue({
74
+ message: "Set failed"
75
+ })
76
+ };
77
+ _vitest.vi.mocked(_jwtTokenManager.callBackendFunctionWithToken).mockResolvedValue(mockResponse);
78
+ await (0, _vitest.expect)(_persistentStore.persistentStore.set("test_key", "value")).rejects.toThrow("Set failed");
79
+ });
80
+ (0, _vitest.it)("should throw error for empty key", async () => {
81
+ await (0, _vitest.expect)(_persistentStore.persistentStore.set("", "value")).rejects.toThrow(_zod.ZodError);
82
+ });
83
+ (0, _vitest.it)("should throw error for key with forbidden characters", async () => {
84
+ await (0, _vitest.expect)(_persistentStore.persistentStore.set("invalid:key", "value")).rejects.toThrow(_zod.ZodError);
85
+ await (0, _vitest.expect)(_persistentStore.persistentStore.set("invalid#key", "value")).rejects.toThrow(_zod.ZodError);
86
+ });
87
+ (0, _vitest.it)("should handle different value types", async () => {
88
+ const mockResponse = {
89
+ ok: true,
90
+ json: _vitest.vi.fn().mockResolvedValue({})
91
+ };
92
+ _vitest.vi.mocked(_jwtTokenManager.callBackendFunctionWithToken).mockResolvedValue(mockResponse);
93
+ await _persistentStore.persistentStore.set("key1", "string_value");
94
+ await _persistentStore.persistentStore.set("key2", {
95
+ object: "value"
96
+ });
97
+ await _persistentStore.persistentStore.set("key3", 123);
98
+ (0, _vitest.expect)(_jwtTokenManager.callBackendFunctionWithToken).toHaveBeenCalledTimes(3);
99
+ });
100
+ });
101
+ });
@@ -0,0 +1,2 @@
1
+ import { RunInfo } from "./export";
2
+ export declare function runInfo(): RunInfo;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.runInfo = runInfo;
7
+ var _asyncLocalStorage = require("../common/asyncLocalStorage");
8
+ var _enums = require("./enums");
9
+ function runInfo() {
10
+ const context = (0, _asyncLocalStorage.getExecutionContext)();
11
+ if (!context) {
12
+ return {
13
+ runEnvironment: _enums.RunEnvironment.IDE
14
+ };
15
+ }
16
+ const {
17
+ extendedPayloads: _extendedPayloads,
18
+ ...rest
19
+ } = context;
20
+ return rest;
21
+ }
@@ -0,0 +1 @@
1
+ export * from '@intuned/runtime-interface';
@@ -0,0 +1,474 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __commonJS = (cb, mod) => function __require() {
8
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // ../packages/runtime-interface/dist/errors.js
30
+ var require_errors = __commonJS({
31
+ "../packages/runtime-interface/dist/errors.js"(exports2) {
32
+ "use strict";
33
+ Object.defineProperty(exports2, "__esModule", { value: true });
34
+ exports2.ResultTooBigError = exports2.InternalInvalidInputError = exports2.AutomationError = exports2.MaxLevelsExceededError = exports2.AuthCheckFailedError = exports2.AuthCheckNotFoundError = exports2.AuthRequiredError = exports2.AbortedError = exports2.InvalidCheckError = exports2.InvalidApiError = exports2.ApiNotFoundError = exports2.RunAutomationError = exports2.runAutomationErrorCodes = exports2.resultTooBigErrorCode = exports2.internalInvalidInputErrorCode = exports2.automationError = exports2.maxLevelsExceededErrorCode = exports2.authCheckFailedErrorCode = exports2.authCheckNotFoundErrorCode = exports2.authRequiredErrorCode = exports2.abortedErrorCode = exports2.invalidCheckErrorCode = exports2.invalidApiErrorCode = exports2.apiNotFoundErrorCode = void 0;
35
+ exports2.apiNotFoundErrorCode = "APINotFoundError";
36
+ exports2.invalidApiErrorCode = "InvalidAPIError";
37
+ exports2.invalidCheckErrorCode = "InvalidCheckError";
38
+ exports2.abortedErrorCode = "AbortedError";
39
+ exports2.authRequiredErrorCode = "AuthRequiredError";
40
+ exports2.authCheckNotFoundErrorCode = "AuthCheckNotFoundError";
41
+ exports2.authCheckFailedErrorCode = "AuthCheckFailedError";
42
+ exports2.maxLevelsExceededErrorCode = "MaxLevelsExceededError";
43
+ exports2.automationError = "AutomationError";
44
+ exports2.internalInvalidInputErrorCode = "InternalInvalidInputError";
45
+ exports2.resultTooBigErrorCode = "ResultTooBigError";
46
+ exports2.runAutomationErrorCodes = [
47
+ exports2.apiNotFoundErrorCode,
48
+ exports2.invalidApiErrorCode,
49
+ exports2.invalidCheckErrorCode,
50
+ exports2.abortedErrorCode,
51
+ exports2.authRequiredErrorCode,
52
+ exports2.authCheckNotFoundErrorCode,
53
+ exports2.authCheckFailedErrorCode,
54
+ exports2.maxLevelsExceededErrorCode,
55
+ exports2.automationError,
56
+ exports2.internalInvalidInputErrorCode,
57
+ exports2.resultTooBigErrorCode
58
+ ];
59
+ var RunAutomationError = class {
60
+ constructor(code, message) {
61
+ this.code = code;
62
+ this.message = message;
63
+ }
64
+ get json() {
65
+ return {
66
+ code: this.code,
67
+ details: this.details,
68
+ cause: this.cause?.json
69
+ };
70
+ }
71
+ };
72
+ exports2.RunAutomationError = RunAutomationError;
73
+ var ApiNotFoundError = class extends RunAutomationError {
74
+ constructor(apiName) {
75
+ super(exports2.apiNotFoundErrorCode, `API ${apiName} not found`);
76
+ }
77
+ };
78
+ exports2.ApiNotFoundError = ApiNotFoundError;
79
+ var InvalidApiError = class extends RunAutomationError {
80
+ constructor(message) {
81
+ super(exports2.invalidApiErrorCode, `API is invalid: ${message}`);
82
+ this.details = {
83
+ message
84
+ };
85
+ }
86
+ };
87
+ exports2.InvalidApiError = InvalidApiError;
88
+ var InvalidCheckError = class extends RunAutomationError {
89
+ constructor(message, cause) {
90
+ super(exports2.invalidCheckErrorCode, message);
91
+ this.cause = cause;
92
+ }
93
+ };
94
+ exports2.InvalidCheckError = InvalidCheckError;
95
+ var AbortedError = class extends RunAutomationError {
96
+ constructor() {
97
+ super(exports2.abortedErrorCode, "Operation was aborted");
98
+ }
99
+ };
100
+ exports2.AbortedError = AbortedError;
101
+ var AuthRequiredError = class extends RunAutomationError {
102
+ constructor() {
103
+ super(exports2.authRequiredErrorCode, "AuthSessions are required");
104
+ }
105
+ };
106
+ exports2.AuthRequiredError = AuthRequiredError;
107
+ var AuthCheckNotFoundError = class extends RunAutomationError {
108
+ constructor() {
109
+ super(exports2.authCheckNotFoundErrorCode, "AuthSession check not found");
110
+ }
111
+ };
112
+ exports2.AuthCheckNotFoundError = AuthCheckNotFoundError;
113
+ var AuthCheckFailedError = class extends RunAutomationError {
114
+ constructor() {
115
+ super(exports2.authCheckFailedErrorCode, "AuthSession check failed");
116
+ }
117
+ };
118
+ exports2.AuthCheckFailedError = AuthCheckFailedError;
119
+ var MaxLevelsExceededError = class extends RunAutomationError {
120
+ constructor(levels) {
121
+ super(exports2.maxLevelsExceededErrorCode, `Max levels exceeded. Only ${levels} levels are supported`);
122
+ this.details = { levels };
123
+ }
124
+ };
125
+ exports2.MaxLevelsExceededError = MaxLevelsExceededError;
126
+ var AutomationError = class extends RunAutomationError {
127
+ constructor(error) {
128
+ super(exports2.automationError, `[${error?.name ?? error}] ${error?.message}`);
129
+ this.details = {
130
+ ...error
131
+ };
132
+ }
133
+ };
134
+ exports2.AutomationError = AutomationError;
135
+ var InternalInvalidInputError = class extends RunAutomationError {
136
+ constructor(message, details) {
137
+ super(exports2.internalInvalidInputErrorCode, message);
138
+ this.details = details;
139
+ }
140
+ };
141
+ exports2.InternalInvalidInputError = InternalInvalidInputError;
142
+ var ResultTooBigError = class extends RunAutomationError {
143
+ constructor(sizeInBytes, maxSizeInBytes) {
144
+ super(exports2.resultTooBigErrorCode, `Automation result is too big. Size: ${Math.round(sizeInBytes / 1024 / 1024 * 100) / 100}MB, Max allowed: ${Math.round(maxSizeInBytes / 1024 / 1024 * 100) / 100}MB`);
145
+ this.details = { sizeInBytes, maxSizeInBytes };
146
+ }
147
+ };
148
+ exports2.ResultTooBigError = ResultTooBigError;
149
+ }
150
+ });
151
+
152
+ // ../packages/runtime-interface/dist/types.js
153
+ var require_types = __commonJS({
154
+ "../packages/runtime-interface/dist/types.js"(exports2) {
155
+ "use strict";
156
+ var __importDefault = exports2 && exports2.__importDefault || function(mod) {
157
+ return mod && mod.__esModule ? mod : { "default": mod };
158
+ };
159
+ Object.defineProperty(exports2, "__esModule", { value: true });
160
+ exports2.outputRunApiSchema = exports2.pongMessageSchema = exports2.doneMessageSchema = exports2.extendMessageSchema = exports2.runApiInputSchema = exports2.pingSchema = exports2.tokenUpdateSchema = exports2.abortRunApiSchema = exports2.startRunApiSchema = exports2.startRunApiParametersSchema = exports2.runApiParametersSchema = exports2.runApiRunOptionsSchema = exports2.runApiCdpRunOptionsSchema = exports2.runApiStandaloneRunOptionsSchema = exports2.runApiAuthSchema = exports2.runApiTracingSchema = exports2.runApiAutomationFunctionSchema = exports2.runApiSessionSchema = exports2.runApiStorageStateSchema = void 0;
161
+ exports2.runApiResultOkSchema = runApiResultOkSchema;
162
+ exports2.runApiResultWithSessionOkSchema = runApiResultWithSessionOkSchema;
163
+ var zod_1 = __importDefault(require("zod"));
164
+ exports2.runApiStorageStateSchema = zod_1.default.object({
165
+ cookies: zod_1.default.array(zod_1.default.object({
166
+ name: zod_1.default.string(),
167
+ value: zod_1.default.string(),
168
+ domain: zod_1.default.string(),
169
+ path: zod_1.default.string(),
170
+ expires: zod_1.default.number(),
171
+ httpOnly: zod_1.default.boolean(),
172
+ secure: zod_1.default.boolean(),
173
+ sameSite: zod_1.default.enum(["Strict", "Lax", "None"])
174
+ })),
175
+ origins: zod_1.default.array(zod_1.default.object({
176
+ origin: zod_1.default.string(),
177
+ localStorage: zod_1.default.array(zod_1.default.object({
178
+ name: zod_1.default.string(),
179
+ value: zod_1.default.string()
180
+ }))
181
+ })),
182
+ sessionStorage: zod_1.default.array(zod_1.default.object({
183
+ origin: zod_1.default.string(),
184
+ sessionStorage: zod_1.default.array(zod_1.default.object({
185
+ name: zod_1.default.string(),
186
+ value: zod_1.default.string()
187
+ }))
188
+ })).optional()
189
+ });
190
+ exports2.runApiSessionSchema = zod_1.default.discriminatedUnion("type", [
191
+ zod_1.default.object({
192
+ type: zod_1.default.literal("file"),
193
+ path: zod_1.default.string()
194
+ }),
195
+ zod_1.default.object({
196
+ type: zod_1.default.literal("state"),
197
+ state: exports2.runApiStorageStateSchema.nullable().optional()
198
+ })
199
+ ]);
200
+ exports2.runApiAutomationFunctionSchema = zod_1.default.object({
201
+ name: zod_1.default.string(),
202
+ params: zod_1.default.any().optional()
203
+ });
204
+ exports2.runApiTracingSchema = zod_1.default.discriminatedUnion("enabled", [
205
+ zod_1.default.object({ enabled: zod_1.default.literal(false) }),
206
+ zod_1.default.object({ enabled: zod_1.default.literal(true), filePath: zod_1.default.string() })
207
+ ]).optional().default({ enabled: false });
208
+ exports2.runApiAuthSchema = zod_1.default.object({
209
+ session: exports2.runApiSessionSchema,
210
+ parameters: zod_1.default.record(zod_1.default.any()).optional()
211
+ }).optional();
212
+ exports2.runApiStandaloneRunOptionsSchema = zod_1.default.object({
213
+ environment: zod_1.default.literal("standalone"),
214
+ headless: zod_1.default.boolean().default(true),
215
+ proxy: zod_1.default.object({
216
+ server: zod_1.default.string(),
217
+ username: zod_1.default.string(),
218
+ password: zod_1.default.string()
219
+ }).optional()
220
+ });
221
+ exports2.runApiCdpRunOptionsSchema = zod_1.default.object({
222
+ environment: zod_1.default.literal("cdp"),
223
+ cdpAddress: zod_1.default.string(),
224
+ cdpTargetId: zod_1.default.string().optional()
225
+ });
226
+ exports2.runApiRunOptionsSchema = zod_1.default.discriminatedUnion("environment", [
227
+ exports2.runApiStandaloneRunOptionsSchema,
228
+ exports2.runApiCdpRunOptionsSchema
229
+ ]).default({ environment: "standalone", headless: true });
230
+ exports2.runApiParametersSchema = zod_1.default.object({
231
+ automationFunction: exports2.runApiAutomationFunctionSchema,
232
+ tracing: exports2.runApiTracingSchema,
233
+ auth: exports2.runApiAuthSchema,
234
+ runOptions: exports2.runApiRunOptionsSchema,
235
+ retrieveSession: zod_1.default.boolean().default(false)
236
+ });
237
+ function runApiResultOkSchema(resultSchema) {
238
+ return zod_1.default.object({
239
+ result: resultSchema,
240
+ extendedPayloads: zod_1.default.array(zod_1.default.object({
241
+ api: zod_1.default.string(),
242
+ parameters: zod_1.default.record(zod_1.default.any())
243
+ })).optional()
244
+ });
245
+ }
246
+ function runApiResultWithSessionOkSchema(resultSchema) {
247
+ return runApiResultOkSchema(resultSchema).extend({
248
+ session: exports2.runApiStorageStateSchema
249
+ });
250
+ }
251
+ exports2.startRunApiParametersSchema = exports2.runApiParametersSchema.extend({
252
+ retrieveSession: zod_1.default.boolean(),
253
+ functionsToken: zod_1.default.string().optional(),
254
+ context: zod_1.default.object({
255
+ jobId: zod_1.default.string().optional(),
256
+ jobRunId: zod_1.default.string().optional(),
257
+ runId: zod_1.default.string().optional(),
258
+ queueId: zod_1.default.string().optional(),
259
+ authSessionId: zod_1.default.string().optional()
260
+ }).optional()
261
+ });
262
+ exports2.startRunApiSchema = zod_1.default.object({
263
+ type: zod_1.default.literal("start"),
264
+ parameters: exports2.startRunApiParametersSchema
265
+ });
266
+ exports2.abortRunApiSchema = zod_1.default.object({
267
+ type: zod_1.default.literal("abort"),
268
+ parameters: zod_1.default.object({}).optional()
269
+ });
270
+ exports2.tokenUpdateSchema = zod_1.default.object({
271
+ type: zod_1.default.literal("tokenUpdate"),
272
+ parameters: zod_1.default.object({
273
+ functionsToken: zod_1.default.string()
274
+ })
275
+ });
276
+ exports2.pingSchema = zod_1.default.object({
277
+ type: zod_1.default.literal("ping"),
278
+ parameters: zod_1.default.object({}).optional()
279
+ });
280
+ exports2.runApiInputSchema = zod_1.default.union([
281
+ exports2.startRunApiSchema,
282
+ exports2.abortRunApiSchema,
283
+ exports2.tokenUpdateSchema,
284
+ exports2.pingSchema
285
+ ]);
286
+ exports2.extendMessageSchema = zod_1.default.object({ type: zod_1.default.literal("extend") });
287
+ exports2.doneMessageSchema = zod_1.default.object({
288
+ type: zod_1.default.literal("done"),
289
+ result: zod_1.default.any(),
290
+ success: zod_1.default.boolean()
291
+ });
292
+ exports2.pongMessageSchema = zod_1.default.object({
293
+ type: zod_1.default.literal("pong")
294
+ });
295
+ exports2.outputRunApiSchema = zod_1.default.union([
296
+ exports2.extendMessageSchema,
297
+ exports2.doneMessageSchema,
298
+ exports2.pongMessageSchema
299
+ ]);
300
+ }
301
+ });
302
+
303
+ // ../packages/runtime-interface/dist/interfaceClient.js
304
+ var require_interfaceClient = __commonJS({
305
+ "../packages/runtime-interface/dist/interfaceClient.js"(exports2) {
306
+ "use strict";
307
+ var __createBinding = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
308
+ if (k2 === void 0) k2 = k;
309
+ var desc = Object.getOwnPropertyDescriptor(m, k);
310
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
311
+ desc = { enumerable: true, get: function() {
312
+ return m[k];
313
+ } };
314
+ }
315
+ Object.defineProperty(o, k2, desc);
316
+ }) : (function(o, m, k, k2) {
317
+ if (k2 === void 0) k2 = k;
318
+ o[k2] = m[k];
319
+ }));
320
+ var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o, v) {
321
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
322
+ }) : function(o, v) {
323
+ o["default"] = v;
324
+ });
325
+ var __importStar = exports2 && exports2.__importStar || function(mod) {
326
+ if (mod && mod.__esModule) return mod;
327
+ var result = {};
328
+ if (mod != null) {
329
+ for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
330
+ }
331
+ __setModuleDefault(result, mod);
332
+ return result;
333
+ };
334
+ Object.defineProperty(exports2, "__esModule", { value: true });
335
+ exports2.JSONLFileClient = exports2.TCPSocketClient = exports2.UnixSocketClient = exports2.SocketClient = void 0;
336
+ var net = __importStar(require("net"));
337
+ var fs = __importStar(require("fs-extra"));
338
+ var readline_1 = require("readline");
339
+ var promises_1 = require("timers/promises");
340
+ var SocketClient = class _SocketClient {
341
+ constructor(socket) {
342
+ this.socket = socket;
343
+ }
344
+ sendJSON(data) {
345
+ const dataToSend = JSON.stringify(data);
346
+ const length = Buffer.byteLength(dataToSend);
347
+ const buffer = Buffer.alloc(_SocketClient.LENGTH_HEADER_LENGTH + length);
348
+ buffer.writeUInt32BE(length, 0);
349
+ buffer.write(dataToSend, _SocketClient.LENGTH_HEADER_LENGTH);
350
+ this.socket.write(buffer);
351
+ }
352
+ async *receiveJSON() {
353
+ let buffer = Buffer.alloc(0);
354
+ const endPromise = new Promise((resolve, reject) => {
355
+ this.socket.once("end", () => {
356
+ resolve();
357
+ });
358
+ this.socket.once("error", reject);
359
+ });
360
+ while (true) {
361
+ const chunk = await Promise.race([
362
+ new Promise((resolve) => this.socket.once("data", (data2) => {
363
+ if (typeof data2 === "string") {
364
+ return resolve(Buffer.from(data2));
365
+ }
366
+ resolve(data2);
367
+ })),
368
+ endPromise
369
+ ]);
370
+ if (!(chunk instanceof Buffer)) {
371
+ break;
372
+ }
373
+ buffer = Buffer.concat([buffer, chunk]);
374
+ const length = buffer.readUInt32BE(0);
375
+ if (buffer.length < length + _SocketClient.LENGTH_HEADER_LENGTH) {
376
+ continue;
377
+ }
378
+ const data = buffer.subarray(_SocketClient.LENGTH_HEADER_LENGTH, length + _SocketClient.LENGTH_HEADER_LENGTH);
379
+ buffer = buffer.subarray(length + _SocketClient.LENGTH_HEADER_LENGTH);
380
+ yield JSON.parse(data.toString());
381
+ }
382
+ }
383
+ async close() {
384
+ this.socket.end();
385
+ await Promise.race([
386
+ new Promise((resolve) => this.socket.once("close", resolve)),
387
+ new Promise((resolve) => this.socket.once("error", resolve)),
388
+ (0, promises_1.setTimeout)(3e3)
389
+ ]);
390
+ }
391
+ get closed() {
392
+ return this.socket.closed;
393
+ }
394
+ };
395
+ exports2.SocketClient = SocketClient;
396
+ SocketClient.LENGTH_HEADER_LENGTH = 4;
397
+ var UnixSocketClient = class extends SocketClient {
398
+ constructor(path) {
399
+ super(net.createConnection(path));
400
+ }
401
+ };
402
+ exports2.UnixSocketClient = UnixSocketClient;
403
+ var TCPSocketClient = class extends SocketClient {
404
+ constructor(host, port) {
405
+ super(net.createConnection(port, host));
406
+ }
407
+ };
408
+ exports2.TCPSocketClient = TCPSocketClient;
409
+ var JSONLFileClient = class {
410
+ constructor(filePath) {
411
+ this.fileStream = fs.createReadStream(filePath, { encoding: "utf-8" });
412
+ }
413
+ sendJSON(data) {
414
+ console.log("Sending message", data);
415
+ }
416
+ async *receiveJSON() {
417
+ const rl = (0, readline_1.createInterface)({
418
+ input: this.fileStream,
419
+ crlfDelay: Infinity
420
+ });
421
+ for await (const line of rl) {
422
+ if (line.trim() === "") {
423
+ continue;
424
+ }
425
+ yield JSON.parse(line);
426
+ }
427
+ }
428
+ async close() {
429
+ this.fileStream.close();
430
+ await Promise.race([
431
+ new Promise((resolve) => this.fileStream.once("close", resolve)),
432
+ new Promise((resolve) => this.fileStream.once("error", resolve)),
433
+ (0, promises_1.setTimeout)(3e3)
434
+ ]);
435
+ }
436
+ get closed() {
437
+ return this.fileStream.closed;
438
+ }
439
+ };
440
+ exports2.JSONLFileClient = JSONLFileClient;
441
+ }
442
+ });
443
+
444
+ // ../packages/runtime-interface/dist/index.js
445
+ var require_dist = __commonJS({
446
+ "../packages/runtime-interface/dist/index.js"(exports2) {
447
+ "use strict";
448
+ var __createBinding = exports2 && exports2.__createBinding || (Object.create ? (function(o, m, k, k2) {
449
+ if (k2 === void 0) k2 = k;
450
+ var desc = Object.getOwnPropertyDescriptor(m, k);
451
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
452
+ desc = { enumerable: true, get: function() {
453
+ return m[k];
454
+ } };
455
+ }
456
+ Object.defineProperty(o, k2, desc);
457
+ }) : (function(o, m, k, k2) {
458
+ if (k2 === void 0) k2 = k;
459
+ o[k2] = m[k];
460
+ }));
461
+ var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) {
462
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p);
463
+ };
464
+ Object.defineProperty(exports2, "__esModule", { value: true });
465
+ __exportStar(require_errors(), exports2);
466
+ __exportStar(require_types(), exports2);
467
+ __exportStar(require_interfaceClient(), exports2);
468
+ }
469
+ });
470
+
471
+ // src/vendor/runtime-interface.ts
472
+ var runtime_interface_exports = {};
473
+ module.exports = __toCommonJS(runtime_interface_exports);
474
+ __reExport(runtime_interface_exports, __toESM(require_dist()), module.exports);