@api-client/core 0.6.29 → 0.7.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 (325) hide show
  1. package/build/browser.d.ts +6 -14
  2. package/build/browser.js +11 -16
  3. package/build/browser.js.map +1 -1
  4. package/build/index.d.ts +8 -20
  5. package/build/index.js +13 -25
  6. package/build/index.js.map +1 -1
  7. package/build/src/amf/ApiSchemaValues.d.ts +2 -0
  8. package/build/src/amf/ApiSchemaValues.js +29 -23
  9. package/build/src/amf/ApiSchemaValues.js.map +1 -1
  10. package/build/src/authorization/lib/Utils.d.ts +1 -1
  11. package/build/src/cookies/CookieJar.d.ts +23 -0
  12. package/build/src/cookies/CookieJar.js +3 -0
  13. package/build/src/cookies/CookieJar.js.map +1 -0
  14. package/build/src/cookies/CookieParser.d.ts +67 -0
  15. package/build/src/cookies/CookieParser.js +316 -0
  16. package/build/src/cookies/CookieParser.js.map +1 -0
  17. package/build/src/cookies/InMemoryCookieJar.d.ts +12 -0
  18. package/build/src/cookies/InMemoryCookieJar.js +68 -0
  19. package/build/src/cookies/InMemoryCookieJar.js.map +1 -0
  20. package/build/src/cookies/Punycode.d.ts +12 -0
  21. package/build/src/cookies/Punycode.js +124 -0
  22. package/build/src/cookies/Punycode.js.map +1 -0
  23. package/build/src/data/RequestDataExtractor.d.ts +8 -7
  24. package/build/src/data/RequestDataExtractor.js +8 -10
  25. package/build/src/data/RequestDataExtractor.js.map +1 -1
  26. package/build/src/events/CustomEvent.js +5 -0
  27. package/build/src/events/CustomEvent.js.map +1 -1
  28. package/build/src/events/EventTypes.d.ts +43 -43
  29. package/build/src/events/amf/AmfEventTypes.d.ts +4 -4
  30. package/build/src/events/authorization/AuthorizationEventTypes.d.ts +4 -4
  31. package/build/src/events/cookies/CookieEventTypes.d.ts +9 -9
  32. package/build/src/events/encryption/EncryptionEventTypes.d.ts +2 -2
  33. package/build/src/events/environment/EnvironmentEventTypes.d.ts +1 -1
  34. package/build/src/events/models/ModelEventTypes.d.ts +7 -7
  35. package/build/src/events/process/ProcessEventTypes.d.ts +3 -3
  36. package/build/src/events/reporting/ReportingEventTypes.d.ts +1 -1
  37. package/build/src/events/telemetry/TelemetryEventTypes.d.ts +6 -6
  38. package/build/src/events/transport/TransportEventTypes.d.ts +6 -6
  39. package/build/src/events/transport/TransportEvents.d.ts +2 -2
  40. package/build/src/mocking/ProjectMock.d.ts +3 -2
  41. package/build/src/mocking/ProjectMock.js +3 -3
  42. package/build/src/mocking/ProjectMock.js.map +1 -1
  43. package/build/src/mocking/lib/App.d.ts +36 -0
  44. package/build/src/mocking/lib/App.js +70 -0
  45. package/build/src/mocking/lib/App.js.map +1 -0
  46. package/build/src/models/{arc/ArcProject.d.ts → AppProject.d.ts} +296 -134
  47. package/build/src/models/{arc/ArcProject.js → AppProject.js} +436 -79
  48. package/build/src/models/AppProject.js.map +1 -0
  49. package/build/src/models/AppRequest.d.ts +69 -0
  50. package/build/src/models/AppRequest.js +150 -0
  51. package/build/src/models/AppRequest.js.map +1 -0
  52. package/build/src/models/ClientCertificate.d.ts +2 -2
  53. package/build/src/models/Environment.d.ts +8 -1
  54. package/build/src/models/Environment.js +21 -0
  55. package/build/src/models/Environment.js.map +1 -1
  56. package/build/src/models/HostRule.d.ts +2 -2
  57. package/build/src/models/HttpCookie.d.ts +63 -12
  58. package/build/src/models/HttpCookie.js +178 -44
  59. package/build/src/models/HttpCookie.js.map +1 -1
  60. package/build/src/models/HttpHistory.d.ts +8 -3
  61. package/build/src/models/HttpHistory.js +3 -3
  62. package/build/src/models/HttpHistory.js.map +1 -1
  63. package/build/src/models/HttpProject.d.ts +34 -1
  64. package/build/src/models/HttpProject.js +104 -8
  65. package/build/src/models/HttpProject.js.map +1 -1
  66. package/build/src/models/ProjectFolder.d.ts +2 -0
  67. package/build/src/models/ProjectFolder.js +14 -0
  68. package/build/src/models/ProjectFolder.js.map +1 -1
  69. package/build/src/models/ProjectItem.d.ts +2 -0
  70. package/build/src/models/ProjectItem.js +20 -0
  71. package/build/src/models/ProjectItem.js.map +1 -1
  72. package/build/src/models/ProjectParent.js.map +1 -1
  73. package/build/src/models/ProjectRequest.d.ts +3 -2
  74. package/build/src/models/ProjectRequest.js.map +1 -1
  75. package/build/src/models/Property.d.ts +2 -2
  76. package/build/src/models/Property.js +2 -2
  77. package/build/src/models/Property.js.map +1 -1
  78. package/build/src/models/Request.d.ts +16 -8
  79. package/build/src/models/Request.js +20 -15
  80. package/build/src/models/Request.js.map +1 -1
  81. package/build/src/models/RequestAuthorization.js.map +1 -1
  82. package/build/src/models/RequestUiMeta.d.ts +0 -14
  83. package/build/src/models/RequestUiMeta.js +1 -10
  84. package/build/src/models/RequestUiMeta.js.map +1 -1
  85. package/build/src/models/Server.d.ts +1 -2
  86. package/build/src/models/Server.js.map +1 -1
  87. package/build/src/models/http-actions/HttpActions.d.ts +256 -0
  88. package/build/src/models/http-actions/HttpActions.js +46 -0
  89. package/build/src/models/http-actions/HttpActions.js.map +1 -0
  90. package/build/src/models/http-actions/LegacyTranslator.d.ts +17 -0
  91. package/build/src/models/http-actions/LegacyTranslator.js +222 -0
  92. package/build/src/models/http-actions/LegacyTranslator.js.map +1 -0
  93. package/build/src/models/store/Backend.d.ts +136 -1
  94. package/build/src/models/store/File.d.ts +1 -1
  95. package/build/src/models/store/File.js +2 -0
  96. package/build/src/models/store/File.js.map +1 -1
  97. package/build/src/models/store/User.d.ts +3 -3
  98. package/build/src/runtime/http-engine/CoreEngine.d.ts +2 -0
  99. package/build/src/runtime/http-engine/CoreEngine.js +1 -0
  100. package/build/src/runtime/http-engine/CoreEngine.js.map +1 -1
  101. package/build/src/runtime/http-engine/HttpEngine.d.ts +13 -0
  102. package/build/src/runtime/http-engine/HttpEngine.js +39 -31
  103. package/build/src/runtime/http-engine/HttpEngine.js.map +1 -1
  104. package/build/src/runtime/{actions/ConditionRunner.d.ts → http-runner/ConditionCheck.d.ts} +2 -2
  105. package/build/src/runtime/{actions/ConditionRunner.js → http-runner/ConditionCheck.js} +2 -2
  106. package/build/src/runtime/http-runner/ConditionCheck.js.map +1 -0
  107. package/build/src/runtime/http-runner/HttpFlowRunner.d.ts +62 -0
  108. package/build/src/runtime/http-runner/HttpFlowRunner.js +217 -0
  109. package/build/src/runtime/http-runner/HttpFlowRunner.js.map +1 -0
  110. package/build/src/runtime/{node/RequestFactory.d.ts → http-runner/HttpRequestRunner.d.ts} +40 -54
  111. package/build/src/runtime/http-runner/HttpRequestRunner.js +316 -0
  112. package/build/src/runtime/http-runner/HttpRequestRunner.js.map +1 -0
  113. package/build/src/runtime/http-runner/HttpRuntimeEnvironment.d.ts +25 -0
  114. package/build/src/runtime/http-runner/HttpRuntimeEnvironment.js +2 -0
  115. package/build/src/runtime/http-runner/HttpRuntimeEnvironment.js.map +1 -0
  116. package/build/src/runtime/http-runner/RequestAuthorizationProcessor.d.ts +56 -0
  117. package/build/src/runtime/http-runner/RequestAuthorizationProcessor.js +143 -0
  118. package/build/src/runtime/http-runner/RequestAuthorizationProcessor.js.map +1 -0
  119. package/build/src/runtime/http-runner/RequestCookiesProcessor.d.ts +24 -0
  120. package/build/src/runtime/http-runner/RequestCookiesProcessor.js +65 -0
  121. package/build/src/runtime/http-runner/RequestCookiesProcessor.js.map +1 -0
  122. package/build/src/runtime/node/InteropInterfaces.d.ts +21 -6
  123. package/build/src/runtime/node/ProjectParallelRunner.js +3 -1
  124. package/build/src/runtime/node/ProjectParallelRunner.js.map +1 -1
  125. package/build/src/runtime/node/ProjectRequestRunner.d.ts +24 -10
  126. package/build/src/runtime/node/ProjectRequestRunner.js +116 -45
  127. package/build/src/runtime/node/ProjectRequestRunner.js.map +1 -1
  128. package/build/src/runtime/node/ProjectRunner.d.ts +5 -7
  129. package/build/src/runtime/node/ProjectRunner.js +30 -14
  130. package/build/src/runtime/node/ProjectRunner.js.map +1 -1
  131. package/build/src/runtime/node/ProjectRunnerWorker.js +3 -0
  132. package/build/src/runtime/node/ProjectRunnerWorker.js.map +1 -1
  133. package/build/src/runtime/reporters/Reporter.d.ts +5 -0
  134. package/build/src/runtime/reporters/Reporter.js.map +1 -1
  135. package/build/src/runtime/store/FilesSdk.js +4 -4
  136. package/build/src/runtime/store/FilesSdk.js.map +1 -1
  137. package/build/src/runtime/store/HistorySdk.js +1 -1
  138. package/build/src/runtime/store/HistorySdk.js.map +1 -1
  139. package/build/src/runtime/store/HttpClientSdk.d.ts +167 -0
  140. package/build/src/runtime/store/HttpClientSdk.js +624 -0
  141. package/build/src/runtime/store/HttpClientSdk.js.map +1 -0
  142. package/build/src/runtime/store/RouteBuilder.d.ts +17 -2
  143. package/build/src/runtime/store/RouteBuilder.js +60 -3
  144. package/build/src/runtime/store/RouteBuilder.js.map +1 -1
  145. package/build/src/runtime/store/Sdk.d.ts +5 -0
  146. package/build/src/runtime/store/Sdk.js +5 -0
  147. package/build/src/runtime/store/Sdk.js.map +1 -1
  148. package/build/src/runtime/store/SharedSdk.js +1 -1
  149. package/build/src/runtime/store/SharedSdk.js.map +1 -1
  150. package/build/src/runtime/store/UsersSdk.js +1 -1
  151. package/build/src/runtime/store/UsersSdk.js.map +1 -1
  152. package/package.json +2 -2
  153. package/src/amf/ApiSchemaValues.ts +41 -33
  154. package/src/cookies/CookieJar.ts +26 -0
  155. package/src/cookies/CookieParser.ts +327 -0
  156. package/src/cookies/InMemoryCookieJar.ts +70 -0
  157. package/src/cookies/Punycode.ts +133 -0
  158. package/src/data/RequestDataExtractor.ts +14 -15
  159. package/src/events/CustomEvent.ts +4 -0
  160. package/src/mocking/ProjectMock.ts +4 -3
  161. package/src/mocking/lib/App.ts +101 -0
  162. package/src/models/{arc/ArcProject.ts → AppProject.ts} +671 -225
  163. package/src/models/AppRequest.ts +176 -0
  164. package/src/models/ClientCertificate.ts +2 -2
  165. package/src/models/Environment.ts +24 -2
  166. package/src/models/HostRule.ts +2 -2
  167. package/src/models/HttpCookie.ts +210 -48
  168. package/src/models/HttpHistory.ts +12 -5
  169. package/src/models/HttpProject.ts +113 -10
  170. package/src/models/ProjectFolder.ts +16 -0
  171. package/src/models/ProjectItem.ts +18 -0
  172. package/src/models/ProjectParent.ts +4 -1
  173. package/src/models/ProjectRequest.ts +4 -3
  174. package/src/models/Property.ts +4 -4
  175. package/src/models/Request.ts +29 -19
  176. package/src/models/RequestAuthorization.ts +4 -4
  177. package/src/models/RequestUiMeta.ts +1 -21
  178. package/src/models/Server.ts +1 -2
  179. package/src/models/http-actions/HttpActions.ts +270 -0
  180. package/src/models/http-actions/LegacyTranslator.ts +223 -0
  181. package/src/models/store/Backend.ts +148 -2
  182. package/src/models/store/File.ts +3 -1
  183. package/src/models/store/User.ts +3 -3
  184. package/src/runtime/http-engine/CoreEngine.ts +3 -2
  185. package/src/runtime/http-engine/HttpEngine.ts +48 -30
  186. package/src/runtime/{actions/ConditionRunner.ts → http-runner/ConditionCheck.ts} +3 -3
  187. package/src/runtime/http-runner/HttpFlowRunner.ts +232 -0
  188. package/src/runtime/http-runner/HttpRequestRunner.ts +353 -0
  189. package/src/runtime/http-runner/HttpRuntimeEnvironment.ts +27 -0
  190. package/src/runtime/http-runner/RequestAuthorizationProcessor.ts +144 -0
  191. package/src/runtime/http-runner/RequestCookiesProcessor.ts +74 -0
  192. package/src/runtime/node/InteropInterfaces.ts +24 -6
  193. package/src/runtime/node/ProjectParallelRunner.ts +4 -2
  194. package/src/runtime/node/ProjectRequestRunner.ts +130 -60
  195. package/src/runtime/node/ProjectRunner.ts +37 -22
  196. package/src/runtime/node/ProjectRunnerWorker.ts +3 -0
  197. package/src/runtime/reporters/Reporter.ts +5 -0
  198. package/src/runtime/store/FilesSdk.ts +4 -4
  199. package/src/runtime/store/HistorySdk.ts +1 -1
  200. package/src/runtime/store/HttpClientSdk.ts +629 -0
  201. package/src/runtime/store/RouteBuilder.ts +75 -3
  202. package/src/runtime/store/Sdk.ts +6 -0
  203. package/src/runtime/store/SharedSdk.ts +1 -1
  204. package/src/runtime/store/UsersSdk.ts +1 -1
  205. package/build/src/lib/cookies/Cookie.d.ts +0 -123
  206. package/build/src/lib/cookies/Cookie.js +0 -257
  207. package/build/src/lib/cookies/Cookie.js.map +0 -1
  208. package/build/src/lib/cookies/Cookies.d.ts +0 -90
  209. package/build/src/lib/cookies/Cookies.js +0 -310
  210. package/build/src/lib/cookies/Cookies.js.map +0 -1
  211. package/build/src/lib/cookies/Utils.d.ts +0 -47
  212. package/build/src/lib/cookies/Utils.js +0 -163
  213. package/build/src/lib/cookies/Utils.js.map +0 -1
  214. package/build/src/mocking/lib/Arc.d.ts +0 -10
  215. package/build/src/mocking/lib/Arc.js +0 -31
  216. package/build/src/mocking/lib/Arc.js.map +0 -1
  217. package/build/src/models/RequestActions.d.ts +0 -65
  218. package/build/src/models/RequestActions.js +0 -114
  219. package/build/src/models/RequestActions.js.map +0 -1
  220. package/build/src/models/actions/Action.d.ts +0 -75
  221. package/build/src/models/actions/Action.js +0 -188
  222. package/build/src/models/actions/Action.js.map +0 -1
  223. package/build/src/models/actions/ActionView.d.ts +0 -15
  224. package/build/src/models/actions/ActionView.js +0 -33
  225. package/build/src/models/actions/ActionView.js.map +0 -1
  226. package/build/src/models/actions/Condition.d.ts +0 -81
  227. package/build/src/models/actions/Condition.js +0 -185
  228. package/build/src/models/actions/Condition.js.map +0 -1
  229. package/build/src/models/actions/ConditionView.d.ts +0 -17
  230. package/build/src/models/actions/ConditionView.js +0 -34
  231. package/build/src/models/actions/ConditionView.js.map +0 -1
  232. package/build/src/models/actions/Enums.d.ts +0 -26
  233. package/build/src/models/actions/Enums.js +0 -31
  234. package/build/src/models/actions/Enums.js.map +0 -1
  235. package/build/src/models/actions/RunnableAction.d.ts +0 -59
  236. package/build/src/models/actions/RunnableAction.js +0 -106
  237. package/build/src/models/actions/RunnableAction.js.map +0 -1
  238. package/build/src/models/actions/runnable/DeleteCookieAction.d.ts +0 -44
  239. package/build/src/models/actions/runnable/DeleteCookieAction.js +0 -92
  240. package/build/src/models/actions/runnable/DeleteCookieAction.js.map +0 -1
  241. package/build/src/models/actions/runnable/Runnable.d.ts +0 -8
  242. package/build/src/models/actions/runnable/Runnable.js +0 -4
  243. package/build/src/models/actions/runnable/Runnable.js.map +0 -1
  244. package/build/src/models/actions/runnable/SetCookieAction.d.ts +0 -87
  245. package/build/src/models/actions/runnable/SetCookieAction.js +0 -176
  246. package/build/src/models/actions/runnable/SetCookieAction.js.map +0 -1
  247. package/build/src/models/actions/runnable/SetVariableAction.d.ts +0 -31
  248. package/build/src/models/actions/runnable/SetVariableAction.js +0 -63
  249. package/build/src/models/actions/runnable/SetVariableAction.js.map +0 -1
  250. package/build/src/models/actions/runnable/index.d.ts +0 -7
  251. package/build/src/models/actions/runnable/index.js +0 -2
  252. package/build/src/models/actions/runnable/index.js.map +0 -1
  253. package/build/src/models/arc/ArcHttpRequest.d.ts +0 -39
  254. package/build/src/models/arc/ArcHttpRequest.js +0 -106
  255. package/build/src/models/arc/ArcHttpRequest.js.map +0 -1
  256. package/build/src/models/arc/ArcProject.js.map +0 -1
  257. package/build/src/runtime/actions/ActionRunner.d.ts +0 -17
  258. package/build/src/runtime/actions/ActionRunner.js +0 -74
  259. package/build/src/runtime/actions/ActionRunner.js.map +0 -1
  260. package/build/src/runtime/actions/ConditionRunner.js.map +0 -1
  261. package/build/src/runtime/actions/RunnableCondition.d.ts +0 -27
  262. package/build/src/runtime/actions/RunnableCondition.js +0 -50
  263. package/build/src/runtime/actions/RunnableCondition.js.map +0 -1
  264. package/build/src/runtime/actions/runnable/ActionRunnable.d.ts +0 -13
  265. package/build/src/runtime/actions/runnable/ActionRunnable.js +0 -13
  266. package/build/src/runtime/actions/runnable/ActionRunnable.js.map +0 -1
  267. package/build/src/runtime/actions/runnable/DeleteCookieRunnable.d.ts +0 -7
  268. package/build/src/runtime/actions/runnable/DeleteCookieRunnable.js +0 -36
  269. package/build/src/runtime/actions/runnable/DeleteCookieRunnable.js.map +0 -1
  270. package/build/src/runtime/actions/runnable/SetCookieRunnable.d.ts +0 -10
  271. package/build/src/runtime/actions/runnable/SetCookieRunnable.js +0 -89
  272. package/build/src/runtime/actions/runnable/SetCookieRunnable.js.map +0 -1
  273. package/build/src/runtime/actions/runnable/SetVariableRunnable.d.ts +0 -10
  274. package/build/src/runtime/actions/runnable/SetVariableRunnable.js +0 -49
  275. package/build/src/runtime/actions/runnable/SetVariableRunnable.js.map +0 -1
  276. package/build/src/runtime/modules/BasicAuthCache.d.ts +0 -39
  277. package/build/src/runtime/modules/BasicAuthCache.js +0 -122
  278. package/build/src/runtime/modules/BasicAuthCache.js.map +0 -1
  279. package/build/src/runtime/modules/ExecutionResponse.d.ts +0 -4
  280. package/build/src/runtime/modules/ExecutionResponse.js +0 -6
  281. package/build/src/runtime/modules/ExecutionResponse.js.map +0 -1
  282. package/build/src/runtime/modules/ModulesRegistry.d.ts +0 -93
  283. package/build/src/runtime/modules/ModulesRegistry.js +0 -69
  284. package/build/src/runtime/modules/ModulesRegistry.js.map +0 -1
  285. package/build/src/runtime/modules/RequestAuthorization.d.ts +0 -6
  286. package/build/src/runtime/modules/RequestAuthorization.js +0 -110
  287. package/build/src/runtime/modules/RequestAuthorization.js.map +0 -1
  288. package/build/src/runtime/modules/RequestCookies.d.ts +0 -17
  289. package/build/src/runtime/modules/RequestCookies.js +0 -134
  290. package/build/src/runtime/modules/RequestCookies.js.map +0 -1
  291. package/build/src/runtime/node/RequestFactory.js +0 -406
  292. package/build/src/runtime/node/RequestFactory.js.map +0 -1
  293. package/build/src/runtime/node/VariablesStore.d.ts +0 -9
  294. package/build/src/runtime/node/VariablesStore.js +0 -19
  295. package/build/src/runtime/node/VariablesStore.js.map +0 -1
  296. package/src/lib/cookies/Cookie.ts +0 -312
  297. package/src/lib/cookies/Cookies.ts +0 -326
  298. package/src/lib/cookies/Utils.ts +0 -168
  299. package/src/mocking/lib/Arc.ts +0 -34
  300. package/src/models/RequestActions.ts +0 -161
  301. package/src/models/actions/Action.ts +0 -213
  302. package/src/models/actions/ActionView.ts +0 -40
  303. package/src/models/actions/Condition.ts +0 -207
  304. package/src/models/actions/ConditionView.ts +0 -42
  305. package/src/models/actions/Enums.ts +0 -29
  306. package/src/models/actions/RunnableAction.ts +0 -144
  307. package/src/models/actions/runnable/DeleteCookieAction.ts +0 -113
  308. package/src/models/actions/runnable/Runnable.ts +0 -9
  309. package/src/models/actions/runnable/SetCookieAction.ts +0 -216
  310. package/src/models/actions/runnable/SetVariableAction.ts +0 -81
  311. package/src/models/arc/ArcHttpRequest.ts +0 -121
  312. package/src/models/arc/readme.md +0 -3
  313. package/src/runtime/actions/ActionRunner.ts +0 -83
  314. package/src/runtime/actions/RunnableCondition.ts +0 -56
  315. package/src/runtime/actions/runnable/ActionRunnable.ts +0 -19
  316. package/src/runtime/actions/runnable/DeleteCookieRunnable.ts +0 -39
  317. package/src/runtime/actions/runnable/SetCookieRunnable.ts +0 -92
  318. package/src/runtime/actions/runnable/SetVariableRunnable.ts +0 -53
  319. package/src/runtime/modules/BasicAuthCache.ts +0 -129
  320. package/src/runtime/modules/ExecutionResponse.ts +0 -4
  321. package/src/runtime/modules/ModulesRegistry.ts +0 -136
  322. package/src/runtime/modules/RequestAuthorization.ts +0 -106
  323. package/src/runtime/modules/RequestCookies.ts +0 -146
  324. package/src/runtime/node/RequestFactory.ts +0 -432
  325. package/src/runtime/node/VariablesStore.ts +0 -25
@@ -1,216 +0,0 @@
1
- import { SetCookieConfig } from '../../legacy/actions/Actions.js';
2
- import { Runnable, IRunnable } from './Runnable.js';
3
- import { IDataSource } from '../Condition.js';
4
- import { RequestDataSourceEnum } from '../Enums.js';
5
-
6
- export const Kind = 'Core#SetCookieAction';
7
-
8
- export interface ISetCookieAction extends IRunnable {
9
- kind?: typeof Kind;
10
- /**
11
- * Name of the cookie
12
- */
13
- name: string;
14
- /**
15
- * Source of the cookie value
16
- */
17
- source: IDataSource;
18
- /**
19
- * When set it uses request URL instead of defined URL in the action
20
- */
21
- useRequestUrl?: boolean;
22
- /**
23
- * An URL associated with the cookie
24
- */
25
- url?: string;
26
- /**
27
- * The cookie expiration time
28
- */
29
- expires?: string;
30
- /**
31
- * Whether the cookie is host only
32
- */
33
- hostOnly?: boolean;
34
- /**
35
- * Whether the cookie is HTTP only
36
- */
37
- httpOnly?: boolean;
38
- /**
39
- * Whether the cookie is HTTPS only
40
- */
41
- secure?: boolean;
42
- /**
43
- * Whether the cookie is a session cookie
44
- */
45
- session?: boolean;
46
- }
47
-
48
- export class SetCookieAction extends Runnable {
49
- kind = Kind;
50
- /**
51
- * Name of the cookie
52
- */
53
- name = '';
54
- /**
55
- * Source of the cookie value
56
- */
57
- source: IDataSource = { source: RequestDataSourceEnum.url, };
58
- /**
59
- * When set it uses request URL instead of defined URL in the action
60
- */
61
- useRequestUrl?: boolean;
62
- /**
63
- * An URL associated with the cookie
64
- */
65
- url?: string;
66
- /**
67
- * The cookie expiration time
68
- */
69
- expires?: string;
70
- /**
71
- * Whether the cookie is host only
72
- */
73
- hostOnly?: boolean;
74
- /**
75
- * Whether the cookie is HTTP only
76
- */
77
- httpOnly?: boolean;
78
- /**
79
- * Whether the cookie is HTTPS only
80
- */
81
- secure?: boolean;
82
- /**
83
- * Whether the cookie is a session cookie
84
- */
85
- session?: boolean;
86
-
87
- static fromLegacy(legacy: SetCookieConfig): SetCookieAction {
88
- const source = ({ ...legacy.source } as unknown) as IDataSource;
89
- // @ts-ignore
90
- delete source.iterator;
91
- // @ts-ignore
92
- delete source.iteratorEnabled;
93
- const init: ISetCookieAction = {
94
- kind: Kind,
95
- name: legacy.name,
96
- source,
97
- };
98
- if (legacy.url) {
99
- init.url = legacy.url;
100
- }
101
- if (typeof legacy.useRequestUrl === 'boolean') {
102
- init.useRequestUrl = legacy.useRequestUrl;
103
- }
104
- if (legacy.expires) {
105
- init.expires = legacy.expires;
106
- }
107
- if (typeof legacy.hostOnly === 'boolean') {
108
- init.hostOnly = legacy.hostOnly;
109
- }
110
- if (typeof legacy.httpOnly === 'boolean') {
111
- init.httpOnly = legacy.httpOnly;
112
- }
113
- if (typeof legacy.secure === 'boolean') {
114
- init.secure = legacy.secure;
115
- }
116
- if (typeof legacy.session === 'boolean') {
117
- init.session = legacy.session;
118
- }
119
- return new SetCookieAction(init);
120
- }
121
-
122
- constructor(input?: string | ISetCookieAction) {
123
- super();
124
- let init: ISetCookieAction;
125
- if (typeof input === 'string') {
126
- init = JSON.parse(input);
127
- } else if (typeof input === 'object') {
128
- init = input;
129
- } else {
130
- init = {
131
- kind: Kind,
132
- name: '',
133
- source: { source: RequestDataSourceEnum.url, },
134
- };
135
- }
136
- this.new(init);
137
- }
138
-
139
- new(init: ISetCookieAction): void {
140
- const { source={ source: RequestDataSourceEnum.url, }, name, useRequestUrl, url, expires, hostOnly, httpOnly, secure, session } = init;
141
- this.source = source;
142
- this.name = name;
143
- if (typeof useRequestUrl === 'boolean') {
144
- this.useRequestUrl = useRequestUrl;
145
- }
146
- if (url) {
147
- this.url = url;
148
- } else {
149
- this.url = undefined;
150
- }
151
- if (expires) {
152
- this.expires = expires;
153
- } else {
154
- this.expires = undefined;
155
- }
156
- if (typeof hostOnly === 'boolean') {
157
- this.hostOnly = hostOnly;
158
- } else {
159
- this.hostOnly = undefined;
160
- }
161
- if (typeof httpOnly === 'boolean') {
162
- this.httpOnly = httpOnly;
163
- } else {
164
- this.httpOnly = undefined;
165
- }
166
- if (typeof secure === 'boolean') {
167
- this.secure = secure;
168
- } else {
169
- this.secure = undefined;
170
- }
171
- if (typeof session === 'boolean') {
172
- this.session = session;
173
- } else {
174
- this.session = undefined;
175
- }
176
- }
177
-
178
- toJSON(): ISetCookieAction {
179
- const result: ISetCookieAction = {
180
- kind: Kind,
181
- source: this.source,
182
- name: this.name,
183
- };
184
- if (this.url) {
185
- result.url = this.url;
186
- }
187
- if (this.expires) {
188
- result.expires = this.expires;
189
- }
190
- if (typeof this.useRequestUrl === 'boolean') {
191
- result.useRequestUrl = this.useRequestUrl;
192
- }
193
- if (typeof this.hostOnly === 'boolean') {
194
- result.hostOnly = this.hostOnly;
195
- }
196
- if (typeof this.httpOnly === 'boolean') {
197
- result.httpOnly = this.httpOnly;
198
- }
199
- if (typeof this.secure === 'boolean') {
200
- result.secure = this.secure;
201
- }
202
- if (typeof this.session === 'boolean') {
203
- result.session = this.session;
204
- }
205
- return result;
206
- }
207
-
208
- isValid(): boolean {
209
- const hasTarget = !!this.useRequestUrl || !!this.url;
210
- if (!hasTarget) {
211
- return hasTarget;
212
- }
213
- const { source } = this.source;
214
- return !!source;
215
- }
216
- }
@@ -1,81 +0,0 @@
1
- import { SetVariableConfig } from '../../legacy/actions/Actions.js';
2
- import { Runnable, IRunnable } from './Runnable.js';
3
- import { IDataSource } from '../Condition.js';
4
- import { RequestDataSourceEnum } from '../Enums.js';
5
-
6
- export const Kind = 'Core#SetVariableAction';
7
-
8
- export interface ISetVariableAction extends IRunnable {
9
- kind?: typeof Kind;
10
- /**
11
- * Name of the variable to set
12
- */
13
- name: string;
14
- /**
15
- * Source of the cookie value
16
- */
17
- source: IDataSource;
18
- }
19
-
20
- export class SetVariableAction extends Runnable {
21
- kind = Kind;
22
- /**
23
- * Name of the variable to set
24
- */
25
- name = '';
26
- /**
27
- * Source of the cookie value
28
- */
29
- source: IDataSource = { source: RequestDataSourceEnum.url, };
30
-
31
- static fromLegacy(legacy: SetVariableConfig): SetVariableAction {
32
- const source = ({ ...legacy.source } as unknown) as IDataSource;
33
- // @ts-ignore
34
- delete source.iterator;
35
- // @ts-ignore
36
- delete source.iteratorEnabled;
37
- const init: ISetVariableAction = {
38
- kind: Kind,
39
- name: legacy.name,
40
- source,
41
- };
42
- return new SetVariableAction(init);
43
- }
44
-
45
- constructor(input?: string | ISetVariableAction) {
46
- super();
47
- let init: ISetVariableAction;
48
- if (typeof input === 'string') {
49
- init = JSON.parse(input);
50
- } else if (typeof input === 'object') {
51
- init = input;
52
- } else {
53
- init = {
54
- kind: Kind,
55
- name: '',
56
- source: { source: RequestDataSourceEnum.url, },
57
- };
58
- }
59
- this.new(init);
60
- }
61
-
62
- new(init: ISetVariableAction): void {
63
- const { source={ source: RequestDataSourceEnum.url, }, name, } = init;
64
- this.kind = Kind;
65
- this.source = source;
66
- this.name = name;
67
- }
68
-
69
- toJSON(): ISetVariableAction {
70
- const result: ISetVariableAction = {
71
- kind: Kind,
72
- source: this.source,
73
- name: this.name,
74
- };
75
- return result;
76
- }
77
-
78
- isValid(): boolean {
79
- return !!this.name && !!this.source;
80
- }
81
- }
@@ -1,121 +0,0 @@
1
- import { IRequest, Request } from "../Request.js";
2
- import v4 from "../../lib/uuid.js";
3
- import { HttpRequest, IHttpRequest } from "../HttpRequest.js";
4
- import { Thing } from "../Thing.js";
5
-
6
- export const Kind = 'Arc#ArcRequest';
7
-
8
- export interface IArcHttpRequest extends IRequest {
9
- kind: typeof Kind;
10
- key: string;
11
- }
12
-
13
- export class ArcHttpRequest extends Request {
14
- kind = Kind;
15
-
16
- /**
17
- * The identifier of the request.
18
- */
19
- key = '';
20
-
21
- /**
22
- * Creates a project request from an URL.
23
- *
24
- * @param url The Request URL. This is required.
25
- */
26
- static fromUrl(url: string): ArcHttpRequest {
27
- const now: number = Date.now();
28
- const request = new ArcHttpRequest({
29
- key: v4(),
30
- kind: Kind,
31
- created: now,
32
- updated: now,
33
- expects: HttpRequest.fromBaseValues({ url, method: 'GET' }).toJSON(),
34
- info: Thing.fromName(url).toJSON(),
35
- });
36
- return request;
37
- }
38
-
39
- /**
40
- * Creates a project request from a name.
41
- *
42
- * @param name The Request name.
43
- */
44
- static fromName(name: string): ArcHttpRequest {
45
- const now: number = Date.now();
46
- const request = new ArcHttpRequest({
47
- key: v4(),
48
- kind: Kind,
49
- created: now,
50
- updated: now,
51
- expects: new HttpRequest().toJSON(),
52
- info: Thing.fromName(name).toJSON(),
53
- });
54
- return request;
55
- }
56
-
57
- /**
58
- * Creates a request from an HttpRequest definition.
59
- *
60
- * @param info The request data.
61
- */
62
- static fromHttpRequest(info: IHttpRequest): ArcHttpRequest {
63
- const now: number = Date.now();
64
- const request = new ArcHttpRequest({
65
- key: v4(),
66
- kind: Kind,
67
- created: now,
68
- updated: now,
69
- expects: HttpRequest.fromBaseValues({ method: info.method, url: info.url, headers: info.headers, payload: info.payload }).toJSON(),
70
- info: Thing.fromName(info.url).toJSON(),
71
- });
72
- return request;
73
- }
74
-
75
- /**
76
- * Creates a request for a schema of a Request.
77
- */
78
- static fromRequest(request: IArcHttpRequest): ArcHttpRequest {
79
- const key = v4();
80
- const init: IArcHttpRequest = {
81
- ...request,
82
- key,
83
- kind: Kind
84
- };
85
- const result = new ArcHttpRequest(init);
86
- return result;
87
- }
88
-
89
- constructor(input?: string | IArcHttpRequest) {
90
- super(input);
91
-
92
- let init: IArcHttpRequest | undefined;
93
- if (typeof input === 'string') {
94
- init = JSON.parse(input);
95
- } else if (typeof input === 'object') {
96
- init = input;
97
- }
98
- if (init) {
99
- this.key = init.key || v4();
100
- }
101
- this.kind = Kind;
102
- }
103
-
104
- new(init: IArcHttpRequest): void {
105
- super.new(init);
106
-
107
- const { key } = init;
108
- this.key = key || v4();
109
- this.kind = Kind;
110
- }
111
-
112
- toJSON(): IArcHttpRequest {
113
- const request = super.toJSON();
114
- const result: IArcHttpRequest = {
115
- ...request,
116
- key: this.key,
117
- kind: Kind
118
- };
119
- return result;
120
- }
121
- }
@@ -1,3 +0,0 @@
1
- # ARC models
2
-
3
- The modules used in the Advanced REST Client application.
@@ -1,83 +0,0 @@
1
- import { Action } from '../../models/actions/Action.js';
2
- import { Runnable as ModelRunnable } from '../../models/actions/runnable/Runnable.js';
3
- import { IHttpRequest } from '../../models/HttpRequest.js';
4
- import { IRequestLog } from '../../models/RequestLog.js';
5
- import { Kind as DeleteCookieKind } from '../../models/actions/runnable/DeleteCookieAction.js';
6
- import { Kind as SetCookieKind } from '../../models/actions/runnable/SetCookieAction.js';
7
- import { Kind as SetVariableKind } from '../../models/actions/runnable/SetVariableAction.js';
8
- import { ActionRunnable } from './runnable/ActionRunnable.js';
9
- import { DeleteCookieRunnable } from './runnable/DeleteCookieRunnable.js';
10
- import { SetCookieRunnable } from './runnable/SetCookieRunnable.js';
11
- import { SetVariableRunnable } from './runnable/SetVariableRunnable.js';
12
-
13
- /**
14
- * A class that is responsible for running a single action.
15
- */
16
- export class ActionRunner {
17
- action: Action;
18
- eventTarget: EventTarget;
19
-
20
- constructor(action: Action, eventTarget: EventTarget) {
21
- this.action = action;
22
- this.eventTarget = eventTarget;
23
- }
24
-
25
- async request(request: IHttpRequest): Promise<void> {
26
- const runnable = this.getActionRunnable();
27
- if (!runnable) {
28
- throw new Error(`Invalid action configuration. The runnable configuration is not defined.`);
29
- }
30
- const { action } = this;
31
- if (action.sync === false) {
32
- this.requestAsync(runnable, request);
33
- return;
34
- }
35
- await runnable.request(request);
36
- }
37
-
38
- async requestAsync(runnable: ActionRunnable, request: IHttpRequest): Promise<void> {
39
- const { action } = this;
40
- try {
41
- await runnable.request(request);
42
- } catch (e) {
43
- const err = e as Error;
44
- console.error(`Unable to run a request action: ${action.name || 'unknown name'}: ${err.message}`);
45
- }
46
- }
47
-
48
- getActionRunnable(): ActionRunnable | undefined {
49
- const { action, eventTarget } = this;
50
- const config = action.config as ModelRunnable;
51
- if (!config) {
52
- return;
53
- }
54
- switch (config.kind) {
55
- case DeleteCookieKind: return new DeleteCookieRunnable(config.toJSON(), eventTarget);
56
- case SetCookieKind: return new SetCookieRunnable(config.toJSON(), eventTarget);
57
- case SetVariableKind: return new SetVariableRunnable(config.toJSON(), eventTarget);
58
- }
59
- }
60
-
61
- async response(log: IRequestLog): Promise<void> {
62
- const runnable = this.getActionRunnable();
63
- if (!runnable) {
64
- throw new Error(`Invalid action configuration. The runnable configuration is not defined.`);
65
- }
66
- const { action } = this;
67
- if (action.sync === false) {
68
- this.responseAsync(runnable, log);
69
- return;
70
- }
71
- await runnable.response(log);
72
- }
73
-
74
- async responseAsync(runnable: ActionRunnable, log: IRequestLog): Promise<void> {
75
- const { action } = this;
76
- try {
77
- await runnable.response(log);
78
- } catch (e) {
79
- const err = e as Error;
80
- console.error(`Unable to run a response action: ${action.name || 'unknown name'}: ${err.message}`);
81
- }
82
- }
83
- }
@@ -1,56 +0,0 @@
1
- import { IRunnableAction, RunnableAction } from '../../models/actions/RunnableAction.js';
2
- import { IHttpRequest } from '../../models/HttpRequest.js';
3
- import { IResponse } from '../../models/Response.js';
4
- import { ISentRequest } from '../../models/SentRequest.js';
5
- import { IErrorResponse } from '../../models/ErrorResponse.js';
6
- import { RequestDataExtractor } from '../../data/RequestDataExtractor.js';
7
- import { checkCondition } from './ConditionRunner.js';
8
-
9
- /**
10
- * A class that represents API Client condition that runs actions when the condition is met.
11
- */
12
- export class RunnableCondition extends RunnableAction {
13
- /**
14
- * Tests whether the condition is satisfied for request and/or response.
15
- *
16
- * @param request The API Client request object.
17
- * @param response The API Client response object, if available.
18
- * @return True when the condition is satisfied.
19
- */
20
- async satisfied(request: IHttpRequest | ISentRequest, response?: IResponse | IErrorResponse): Promise<boolean> {
21
- if (this.enabled === false) {
22
- return false;
23
- }
24
- if (this.condition.alwaysPass === true) {
25
- return true;
26
- }
27
- const extractor = new RequestDataExtractor(request, response);
28
- const value = await extractor.extract(this.condition);
29
-
30
- const op = this.condition.operator;
31
- if (!op || !this.condition.value) {
32
- return false;
33
- }
34
- return checkCondition(value, op, this.condition.value);
35
- }
36
- }
37
-
38
- /**
39
- * Maps runnables interface to
40
- * If an item is not an instance of `RunnableCondition` then it creates an instance of it
41
- * by passing the map as an argument.
42
- *
43
- * @param value Passed list of actions.
44
- * @returns Mapped actions.
45
- */
46
- export const mapRunnables = (value: (IRunnableAction | RunnableCondition)[]): RunnableCondition[] => {
47
- if (!Array.isArray(value)) {
48
- return [];
49
- }
50
- return value.map((item) => {
51
- if (!(item instanceof RunnableCondition)) {
52
- return new RunnableCondition(item as IRunnableAction);
53
- }
54
- return item;
55
- });
56
- };
@@ -1,19 +0,0 @@
1
- import { IHttpRequest } from '../../../models/HttpRequest.js';
2
- import { IRequestLog } from '../../../models/RequestLog.js';
3
-
4
- export abstract class ActionRunnable {
5
- /**
6
- * The specific action configuration.
7
- * This depends on the action.
8
- */
9
- config: unknown;
10
- eventTarget: EventTarget;
11
-
12
- constructor(config: unknown, eventTarget: EventTarget) {
13
- this.config = Object.freeze(config);
14
- this.eventTarget = eventTarget;
15
- }
16
-
17
- abstract request(request: IHttpRequest): Promise<void>;
18
- abstract response(log: IRequestLog): Promise<void>;
19
- }
@@ -1,39 +0,0 @@
1
- import { IHttpRequest } from '../../../models/HttpRequest.js';
2
- import { ActionRunnable } from './ActionRunnable.js';
3
- import { IDeleteCookieAction } from '../../../models/actions/runnable/DeleteCookieAction.js';
4
- import { Events } from '../../../events/Events.js';
5
- import { IRequestLog } from '../../../models/RequestLog.js';
6
-
7
- export class DeleteCookieRunnable extends ActionRunnable {
8
- async response(log: IRequestLog): Promise<void> {
9
- if (!log.request) {
10
- return;
11
- }
12
- const config = this.config as IDeleteCookieAction;
13
- let url;
14
- if (config.useRequestUrl) {
15
- url = log.request.url;
16
- } else {
17
- url = config.url;
18
- }
19
- if (!url) {
20
- return;
21
- }
22
- Events.Cookie.deleteUrl(url, config.name, this.eventTarget);
23
- }
24
-
25
- async request(request: IHttpRequest): Promise<void> {
26
- const config = this.config as IDeleteCookieAction;
27
-
28
- let url;
29
- if (config.useRequestUrl) {
30
- url = request.url;
31
- } else {
32
- url = config.url;
33
- }
34
- if (!url) {
35
- return;
36
- }
37
- Events.Cookie.deleteUrl(url, config.name, this.eventTarget);
38
- }
39
- }