@api-client/core 0.3.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 (537) hide show
  1. package/LICENSE.md +69 -0
  2. package/amf-models/dialects/ApiProjectVocabulary.yaml +233 -0
  3. package/amf-models/dialects/Environment.yaml +38 -0
  4. package/amf-models/dialects/HttpProject.yaml +55 -0
  5. package/amf-models/dialects/License.yaml +31 -0
  6. package/amf-models/dialects/ProjectFolder.yaml +43 -0
  7. package/amf-models/dialects/ProjectItem.yaml +22 -0
  8. package/amf-models/dialects/ProjectRequest.yaml +23 -0
  9. package/amf-models/dialects/ProjectSchema.yaml +36 -0
  10. package/amf-models/dialects/Property.yaml +43 -0
  11. package/amf-models/dialects/Provider.yaml +32 -0
  12. package/amf-models/dialects/Server.yaml +31 -0
  13. package/amf-models/dialects/Thing.yaml +28 -0
  14. package/build/browser.d.ts +79 -0
  15. package/build/browser.js +92 -0
  16. package/build/browser.js.map +1 -0
  17. package/build/index.d.ts +89 -0
  18. package/build/index.js +108 -0
  19. package/build/index.js.map +1 -0
  20. package/build/src/data/DataReader.d.ts +10 -0
  21. package/build/src/data/DataReader.js +4 -0
  22. package/build/src/data/DataReader.js.map +1 -0
  23. package/build/src/data/DataUtils.d.ts +40 -0
  24. package/build/src/data/DataUtils.js +106 -0
  25. package/build/src/data/DataUtils.js.map +1 -0
  26. package/build/src/data/JmesparthReader.d.ts +12 -0
  27. package/build/src/data/JmesparthReader.js +27 -0
  28. package/build/src/data/JmesparthReader.js.map +1 -0
  29. package/build/src/data/Json2Xml.d.ts +84 -0
  30. package/build/src/data/Json2Xml.js +185 -0
  31. package/build/src/data/Json2Xml.js.map +1 -0
  32. package/build/src/data/JsonReader.d.ts +8 -0
  33. package/build/src/data/JsonReader.js +40 -0
  34. package/build/src/data/JsonReader.js.map +1 -0
  35. package/build/src/data/PayloadPointer.d.ts +19 -0
  36. package/build/src/data/PayloadPointer.js +46 -0
  37. package/build/src/data/PayloadPointer.js.map +1 -0
  38. package/build/src/data/RequestDataExtractor.d.ts +44 -0
  39. package/build/src/data/RequestDataExtractor.js +126 -0
  40. package/build/src/data/RequestDataExtractor.js.map +1 -0
  41. package/build/src/data/UrlEncodedReader.d.ts +11 -0
  42. package/build/src/data/UrlEncodedReader.js +20 -0
  43. package/build/src/data/UrlEncodedReader.js.map +1 -0
  44. package/build/src/data/XmlReader.d.ts +14 -0
  45. package/build/src/data/XmlReader.js +97 -0
  46. package/build/src/data/XmlReader.js.map +1 -0
  47. package/build/src/events/BaseEvents.d.ts +208 -0
  48. package/build/src/events/BaseEvents.js +117 -0
  49. package/build/src/events/BaseEvents.js.map +1 -0
  50. package/build/src/events/CustomEvent.d.ts +2 -0
  51. package/build/src/events/CustomEvent.js +24 -0
  52. package/build/src/events/CustomEvent.js.map +1 -0
  53. package/build/src/events/EventTypes.d.ts +91 -0
  54. package/build/src/events/EventTypes.js +19 -0
  55. package/build/src/events/EventTypes.js.map +1 -0
  56. package/build/src/events/Events.d.ts +20 -0
  57. package/build/src/events/Events.js +19 -0
  58. package/build/src/events/Events.js.map +1 -0
  59. package/build/src/events/authorization/AuthorizationEventTypes.d.ts +22 -0
  60. package/build/src/events/authorization/AuthorizationEventTypes.js +23 -0
  61. package/build/src/events/authorization/AuthorizationEventTypes.js.map +1 -0
  62. package/build/src/events/authorization/AuthorizationEvents.d.ts +34 -0
  63. package/build/src/events/authorization/AuthorizationEvents.js +55 -0
  64. package/build/src/events/authorization/AuthorizationEvents.js.map +1 -0
  65. package/build/src/events/cookies/CookieEventTypes.d.ts +13 -0
  66. package/build/src/events/cookies/CookieEventTypes.js +14 -0
  67. package/build/src/events/cookies/CookieEventTypes.js.map +1 -0
  68. package/build/src/events/cookies/CookieEvents.d.ts +90 -0
  69. package/build/src/events/cookies/CookieEvents.js +126 -0
  70. package/build/src/events/cookies/CookieEvents.js.map +1 -0
  71. package/build/src/events/encryption/EncryptionEventTypes.d.ts +4 -0
  72. package/build/src/events/encryption/EncryptionEventTypes.js +5 -0
  73. package/build/src/events/encryption/EncryptionEventTypes.js.map +1 -0
  74. package/build/src/events/encryption/EncryptionEvents.d.ts +36 -0
  75. package/build/src/events/encryption/EncryptionEvents.js +35 -0
  76. package/build/src/events/encryption/EncryptionEvents.js.map +1 -0
  77. package/build/src/events/environment/EnvironmentEventTypes.d.ts +3 -0
  78. package/build/src/events/environment/EnvironmentEventTypes.js +4 -0
  79. package/build/src/events/environment/EnvironmentEventTypes.js.map +1 -0
  80. package/build/src/events/environment/EnvironmentEvents.d.ts +15 -0
  81. package/build/src/events/environment/EnvironmentEvents.js +19 -0
  82. package/build/src/events/environment/EnvironmentEvents.js.map +1 -0
  83. package/build/src/events/models/ClientCertificateEvents.d.ts +56 -0
  84. package/build/src/events/models/ClientCertificateEvents.js +80 -0
  85. package/build/src/events/models/ClientCertificateEvents.js.map +1 -0
  86. package/build/src/events/models/ModelEventTypes.d.ts +47 -0
  87. package/build/src/events/models/ModelEventTypes.js +48 -0
  88. package/build/src/events/models/ModelEventTypes.js.map +1 -0
  89. package/build/src/events/models/ModelEvents.d.ts +6 -0
  90. package/build/src/events/models/ModelEvents.js +7 -0
  91. package/build/src/events/models/ModelEvents.js.map +1 -0
  92. package/build/src/events/models/ProjectEvents.d.ts +221 -0
  93. package/build/src/events/models/ProjectEvents.js +254 -0
  94. package/build/src/events/models/ProjectEvents.js.map +1 -0
  95. package/build/src/events/process/ProcessEventTypes.d.ts +5 -0
  96. package/build/src/events/process/ProcessEventTypes.js +6 -0
  97. package/build/src/events/process/ProcessEventTypes.js.map +1 -0
  98. package/build/src/events/process/ProcessEvents.d.ts +42 -0
  99. package/build/src/events/process/ProcessEvents.js +59 -0
  100. package/build/src/events/process/ProcessEvents.js.map +1 -0
  101. package/build/src/events/reporting/ReportingEventTypes.d.ts +3 -0
  102. package/build/src/events/reporting/ReportingEventTypes.js +4 -0
  103. package/build/src/events/reporting/ReportingEventTypes.js.map +1 -0
  104. package/build/src/events/reporting/ReportingEvents.d.ts +16 -0
  105. package/build/src/events/reporting/ReportingEvents.js +22 -0
  106. package/build/src/events/reporting/ReportingEvents.js.map +1 -0
  107. package/build/src/events/telemetry/TelemetryEventTypes.d.ts +10 -0
  108. package/build/src/events/telemetry/TelemetryEventTypes.js +11 -0
  109. package/build/src/events/telemetry/TelemetryEventTypes.js.map +1 -0
  110. package/build/src/events/telemetry/TelemetryEvents.d.ts +89 -0
  111. package/build/src/events/telemetry/TelemetryEvents.js +109 -0
  112. package/build/src/events/telemetry/TelemetryEvents.js.map +1 -0
  113. package/build/src/lib/cookies/Cookie.d.ts +123 -0
  114. package/build/src/lib/cookies/Cookie.js +257 -0
  115. package/build/src/lib/cookies/Cookie.js.map +1 -0
  116. package/build/src/lib/cookies/Cookies.d.ts +90 -0
  117. package/build/src/lib/cookies/Cookies.js +310 -0
  118. package/build/src/lib/cookies/Cookies.js.map +1 -0
  119. package/build/src/lib/cookies/Utils.d.ts +47 -0
  120. package/build/src/lib/cookies/Utils.js +163 -0
  121. package/build/src/lib/cookies/Utils.js.map +1 -0
  122. package/build/src/lib/headers/Headers.d.ts +67 -0
  123. package/build/src/lib/headers/Headers.js +202 -0
  124. package/build/src/lib/headers/Headers.js.map +1 -0
  125. package/build/src/lib/logging/DefaultLogger.d.ts +8 -0
  126. package/build/src/lib/logging/DefaultLogger.js +19 -0
  127. package/build/src/lib/logging/DefaultLogger.js.map +1 -0
  128. package/build/src/lib/logging/DummyLogger.d.ts +8 -0
  129. package/build/src/lib/logging/DummyLogger.js +21 -0
  130. package/build/src/lib/logging/DummyLogger.js.map +1 -0
  131. package/build/src/lib/logging/Logger.d.ts +14 -0
  132. package/build/src/lib/logging/Logger.js +3 -0
  133. package/build/src/lib/logging/Logger.js.map +1 -0
  134. package/build/src/lib/transformers/PayloadSerializer.d.ts +145 -0
  135. package/build/src/lib/transformers/PayloadSerializer.js +264 -0
  136. package/build/src/lib/transformers/PayloadSerializer.js.map +1 -0
  137. package/build/src/lib/transformers/Utils.d.ts +7 -0
  138. package/build/src/lib/transformers/Utils.js +19 -0
  139. package/build/src/lib/transformers/Utils.js.map +1 -0
  140. package/build/src/lib/uuid.d.ts +8 -0
  141. package/build/src/lib/uuid.js +38 -0
  142. package/build/src/lib/uuid.js.map +1 -0
  143. package/build/src/mocking/LegacyInterfaces.d.ts +47 -0
  144. package/build/src/mocking/LegacyInterfaces.js +2 -0
  145. package/build/src/mocking/LegacyInterfaces.js.map +1 -0
  146. package/build/src/mocking/LegacyMock.d.ts +24 -0
  147. package/build/src/mocking/LegacyMock.js +34 -0
  148. package/build/src/mocking/LegacyMock.js.map +1 -0
  149. package/build/src/mocking/legacy/Authorization.d.ts +19 -0
  150. package/build/src/mocking/legacy/Authorization.js +34 -0
  151. package/build/src/mocking/legacy/Authorization.js.map +1 -0
  152. package/build/src/mocking/legacy/Certificates.d.ts +54 -0
  153. package/build/src/mocking/legacy/Certificates.js +125 -0
  154. package/build/src/mocking/legacy/Certificates.js.map +1 -0
  155. package/build/src/mocking/legacy/Cookies.d.ts +19 -0
  156. package/build/src/mocking/legacy/Cookies.js +46 -0
  157. package/build/src/mocking/legacy/Cookies.js.map +1 -0
  158. package/build/src/mocking/legacy/HostRules.d.ts +20 -0
  159. package/build/src/mocking/legacy/HostRules.js +38 -0
  160. package/build/src/mocking/legacy/HostRules.js.map +1 -0
  161. package/build/src/mocking/legacy/Http.d.ts +78 -0
  162. package/build/src/mocking/legacy/Http.js +192 -0
  163. package/build/src/mocking/legacy/Http.js.map +1 -0
  164. package/build/src/mocking/legacy/HttpResponse.d.ts +22 -0
  165. package/build/src/mocking/legacy/HttpResponse.js +98 -0
  166. package/build/src/mocking/legacy/HttpResponse.js.map +1 -0
  167. package/build/src/mocking/legacy/RestApi.d.ts +13 -0
  168. package/build/src/mocking/legacy/RestApi.js +61 -0
  169. package/build/src/mocking/legacy/RestApi.js.map +1 -0
  170. package/build/src/mocking/legacy/Urls.d.ts +19 -0
  171. package/build/src/mocking/legacy/Urls.js +39 -0
  172. package/build/src/mocking/legacy/Urls.js.map +1 -0
  173. package/build/src/mocking/legacy/Variables.d.ts +17 -0
  174. package/build/src/mocking/legacy/Variables.js +50 -0
  175. package/build/src/mocking/legacy/Variables.js.map +1 -0
  176. package/build/src/models/ArcResponse.d.ts +63 -0
  177. package/build/src/models/ArcResponse.js +142 -0
  178. package/build/src/models/ArcResponse.js.map +1 -0
  179. package/build/src/models/Authorization.d.ts +452 -0
  180. package/build/src/models/Authorization.js +2 -0
  181. package/build/src/models/Authorization.js.map +1 -0
  182. package/build/src/models/AuthorizationData.d.ts +27 -0
  183. package/build/src/models/AuthorizationData.js +52 -0
  184. package/build/src/models/AuthorizationData.js.map +1 -0
  185. package/build/src/models/Backend.d.ts +71 -0
  186. package/build/src/models/Backend.js +2 -0
  187. package/build/src/models/Backend.js.map +1 -0
  188. package/build/src/models/ClientCertificate.d.ts +65 -0
  189. package/build/src/models/ClientCertificate.js +2 -0
  190. package/build/src/models/ClientCertificate.js.map +1 -0
  191. package/build/src/models/Environment.d.ts +125 -0
  192. package/build/src/models/Environment.js +215 -0
  193. package/build/src/models/Environment.js.map +1 -0
  194. package/build/src/models/ErrorResponse.d.ts +35 -0
  195. package/build/src/models/ErrorResponse.js +88 -0
  196. package/build/src/models/ErrorResponse.js.map +1 -0
  197. package/build/src/models/HistoryIndex.d.ts +43 -0
  198. package/build/src/models/HistoryIndex.js +53 -0
  199. package/build/src/models/HistoryIndex.js.map +1 -0
  200. package/build/src/models/HistoryRequest.d.ts +13 -0
  201. package/build/src/models/HistoryRequest.js +25 -0
  202. package/build/src/models/HistoryRequest.js.map +1 -0
  203. package/build/src/models/HostRule.d.ts +78 -0
  204. package/build/src/models/HostRule.js +134 -0
  205. package/build/src/models/HostRule.js.map +1 -0
  206. package/build/src/models/HttpCookie.d.ts +123 -0
  207. package/build/src/models/HttpCookie.js +209 -0
  208. package/build/src/models/HttpCookie.js.map +1 -0
  209. package/build/src/models/HttpProject.d.ts +455 -0
  210. package/build/src/models/HttpProject.js +987 -0
  211. package/build/src/models/HttpProject.js.map +1 -0
  212. package/build/src/models/HttpProjectListItem.d.ts +23 -0
  213. package/build/src/models/HttpProjectListItem.js +2 -0
  214. package/build/src/models/HttpProjectListItem.js.map +1 -0
  215. package/build/src/models/HttpRequest.d.ts +69 -0
  216. package/build/src/models/HttpRequest.js +92 -0
  217. package/build/src/models/HttpRequest.js.map +1 -0
  218. package/build/src/models/HttpResponse.d.ts +59 -0
  219. package/build/src/models/HttpResponse.js +116 -0
  220. package/build/src/models/HttpResponse.js.map +1 -0
  221. package/build/src/models/License.d.ts +52 -0
  222. package/build/src/models/License.js +91 -0
  223. package/build/src/models/License.js.map +1 -0
  224. package/build/src/models/ProjectDefinitionProperty.d.ts +34 -0
  225. package/build/src/models/ProjectDefinitionProperty.js +2 -0
  226. package/build/src/models/ProjectDefinitionProperty.js.map +1 -0
  227. package/build/src/models/ProjectFolder.d.ts +213 -0
  228. package/build/src/models/ProjectFolder.js +314 -0
  229. package/build/src/models/ProjectFolder.js.map +1 -0
  230. package/build/src/models/ProjectItem.d.ts +59 -0
  231. package/build/src/models/ProjectItem.js +119 -0
  232. package/build/src/models/ProjectItem.js.map +1 -0
  233. package/build/src/models/ProjectParent.d.ts +58 -0
  234. package/build/src/models/ProjectParent.js +77 -0
  235. package/build/src/models/ProjectParent.js.map +1 -0
  236. package/build/src/models/ProjectRequest.d.ts +118 -0
  237. package/build/src/models/ProjectRequest.js +238 -0
  238. package/build/src/models/ProjectRequest.js.map +1 -0
  239. package/build/src/models/ProjectSchema.d.ts +105 -0
  240. package/build/src/models/ProjectSchema.js +156 -0
  241. package/build/src/models/ProjectSchema.js.map +1 -0
  242. package/build/src/models/Property.d.ts +130 -0
  243. package/build/src/models/Property.js +392 -0
  244. package/build/src/models/Property.js.map +1 -0
  245. package/build/src/models/Provider.d.ts +52 -0
  246. package/build/src/models/Provider.js +75 -0
  247. package/build/src/models/Provider.js.map +1 -0
  248. package/build/src/models/Request.d.ts +157 -0
  249. package/build/src/models/Request.js +398 -0
  250. package/build/src/models/Request.js.map +1 -0
  251. package/build/src/models/RequestActions.d.ts +67 -0
  252. package/build/src/models/RequestActions.js +116 -0
  253. package/build/src/models/RequestActions.js.map +1 -0
  254. package/build/src/models/RequestAuthorization.d.ts +59 -0
  255. package/build/src/models/RequestAuthorization.js +85 -0
  256. package/build/src/models/RequestAuthorization.js.map +1 -0
  257. package/build/src/models/RequestConfig.d.ts +161 -0
  258. package/build/src/models/RequestConfig.js +246 -0
  259. package/build/src/models/RequestConfig.js.map +1 -0
  260. package/build/src/models/RequestLog.d.ts +70 -0
  261. package/build/src/models/RequestLog.js +133 -0
  262. package/build/src/models/RequestLog.js.map +1 -0
  263. package/build/src/models/RequestTime.d.ts +36 -0
  264. package/build/src/models/RequestTime.js +91 -0
  265. package/build/src/models/RequestTime.js.map +1 -0
  266. package/build/src/models/RequestUiMeta.d.ts +169 -0
  267. package/build/src/models/RequestUiMeta.js +120 -0
  268. package/build/src/models/RequestUiMeta.js.map +1 -0
  269. package/build/src/models/RequestsSize.d.ts +34 -0
  270. package/build/src/models/RequestsSize.js +52 -0
  271. package/build/src/models/RequestsSize.js.map +1 -0
  272. package/build/src/models/ResponseAuthorization.d.ts +54 -0
  273. package/build/src/models/ResponseAuthorization.js +82 -0
  274. package/build/src/models/ResponseAuthorization.js.map +1 -0
  275. package/build/src/models/ResponseRedirect.d.ts +73 -0
  276. package/build/src/models/ResponseRedirect.js +126 -0
  277. package/build/src/models/ResponseRedirect.js.map +1 -0
  278. package/build/src/models/RevisionInfo.d.ts +36 -0
  279. package/build/src/models/RevisionInfo.js +2 -0
  280. package/build/src/models/RevisionInfo.js.map +1 -0
  281. package/build/src/models/SentRequest.d.ts +62 -0
  282. package/build/src/models/SentRequest.js +93 -0
  283. package/build/src/models/SentRequest.js.map +1 -0
  284. package/build/src/models/SerializablePayload.d.ts +30 -0
  285. package/build/src/models/SerializablePayload.js +66 -0
  286. package/build/src/models/SerializablePayload.js.map +1 -0
  287. package/build/src/models/Server.d.ts +76 -0
  288. package/build/src/models/Server.js +121 -0
  289. package/build/src/models/Server.js.map +1 -0
  290. package/build/src/models/Thing.d.ts +56 -0
  291. package/build/src/models/Thing.js +85 -0
  292. package/build/src/models/Thing.js.map +1 -0
  293. package/build/src/models/Url.d.ts +51 -0
  294. package/build/src/models/Url.js +71 -0
  295. package/build/src/models/Url.js.map +1 -0
  296. package/build/src/models/User.d.ts +110 -0
  297. package/build/src/models/User.js +2 -0
  298. package/build/src/models/User.js.map +1 -0
  299. package/build/src/models/WebApi.d.ts +119 -0
  300. package/build/src/models/WebApi.js +175 -0
  301. package/build/src/models/WebApi.js.map +1 -0
  302. package/build/src/models/WebApiIndex.d.ts +70 -0
  303. package/build/src/models/WebApiIndex.js +72 -0
  304. package/build/src/models/WebApiIndex.js.map +1 -0
  305. package/build/src/models/Workspace.d.ts +98 -0
  306. package/build/src/models/Workspace.js +139 -0
  307. package/build/src/models/Workspace.js.map +1 -0
  308. package/build/src/models/actions/Action.d.ts +75 -0
  309. package/build/src/models/actions/Action.js +188 -0
  310. package/build/src/models/actions/Action.js.map +1 -0
  311. package/build/src/models/actions/ActionView.d.ts +15 -0
  312. package/build/src/models/actions/ActionView.js +33 -0
  313. package/build/src/models/actions/ActionView.js.map +1 -0
  314. package/build/src/models/actions/Condition.d.ts +81 -0
  315. package/build/src/models/actions/Condition.js +185 -0
  316. package/build/src/models/actions/Condition.js.map +1 -0
  317. package/build/src/models/actions/ConditionView.d.ts +17 -0
  318. package/build/src/models/actions/ConditionView.js +34 -0
  319. package/build/src/models/actions/ConditionView.js.map +1 -0
  320. package/build/src/models/actions/Enums.d.ts +26 -0
  321. package/build/src/models/actions/Enums.js +31 -0
  322. package/build/src/models/actions/Enums.js.map +1 -0
  323. package/build/src/models/actions/RunnableAction.d.ts +59 -0
  324. package/build/src/models/actions/RunnableAction.js +106 -0
  325. package/build/src/models/actions/RunnableAction.js.map +1 -0
  326. package/build/src/models/actions/runnable/DeleteCookieAction.d.ts +44 -0
  327. package/build/src/models/actions/runnable/DeleteCookieAction.js +92 -0
  328. package/build/src/models/actions/runnable/DeleteCookieAction.js.map +1 -0
  329. package/build/src/models/actions/runnable/Runnable.d.ts +8 -0
  330. package/build/src/models/actions/runnable/Runnable.js +4 -0
  331. package/build/src/models/actions/runnable/Runnable.js.map +1 -0
  332. package/build/src/models/actions/runnable/SetCookieAction.d.ts +87 -0
  333. package/build/src/models/actions/runnable/SetCookieAction.js +176 -0
  334. package/build/src/models/actions/runnable/SetCookieAction.js.map +1 -0
  335. package/build/src/models/actions/runnable/SetVariableAction.d.ts +31 -0
  336. package/build/src/models/actions/runnable/SetVariableAction.js +63 -0
  337. package/build/src/models/actions/runnable/SetVariableAction.js.map +1 -0
  338. package/build/src/models/actions/runnable/index.d.ts +7 -0
  339. package/build/src/models/actions/runnable/index.js +2 -0
  340. package/build/src/models/actions/runnable/index.js.map +1 -0
  341. package/build/src/models/legacy/DataExport.d.ts +168 -0
  342. package/build/src/models/legacy/DataExport.js +2 -0
  343. package/build/src/models/legacy/DataExport.js.map +1 -0
  344. package/build/src/models/legacy/Normalizer.d.ts +12 -0
  345. package/build/src/models/legacy/Normalizer.js +104 -0
  346. package/build/src/models/legacy/Normalizer.js.map +1 -0
  347. package/build/src/models/legacy/actions/Actions.d.ts +257 -0
  348. package/build/src/models/legacy/actions/Actions.js +2 -0
  349. package/build/src/models/legacy/actions/Actions.js.map +1 -0
  350. package/build/src/models/legacy/authorization/Authorization.d.ts +540 -0
  351. package/build/src/models/legacy/authorization/Authorization.js +3 -0
  352. package/build/src/models/legacy/authorization/Authorization.js.map +1 -0
  353. package/build/src/models/legacy/models/ApiTypes.d.ts +192 -0
  354. package/build/src/models/legacy/models/ApiTypes.js +2 -0
  355. package/build/src/models/legacy/models/ApiTypes.js.map +1 -0
  356. package/build/src/models/legacy/models/ArcLegacyProject.d.ts +37 -0
  357. package/build/src/models/legacy/models/ArcLegacyProject.js +2 -0
  358. package/build/src/models/legacy/models/ArcLegacyProject.js.map +1 -0
  359. package/build/src/models/legacy/models/AuthData.d.ts +14 -0
  360. package/build/src/models/legacy/models/AuthData.js +2 -0
  361. package/build/src/models/legacy/models/AuthData.js.map +1 -0
  362. package/build/src/models/legacy/models/ClientCertificate.d.ts +89 -0
  363. package/build/src/models/legacy/models/ClientCertificate.js +2 -0
  364. package/build/src/models/legacy/models/ClientCertificate.js.map +1 -0
  365. package/build/src/models/legacy/models/Cookies.d.ts +52 -0
  366. package/build/src/models/legacy/models/Cookies.js +2 -0
  367. package/build/src/models/legacy/models/Cookies.js.map +1 -0
  368. package/build/src/models/legacy/models/HostRule.d.ts +33 -0
  369. package/build/src/models/legacy/models/HostRule.js +2 -0
  370. package/build/src/models/legacy/models/HostRule.js.map +1 -0
  371. package/build/src/models/legacy/models/RestApi.d.ts +47 -0
  372. package/build/src/models/legacy/models/RestApi.js +2 -0
  373. package/build/src/models/legacy/models/RestApi.js.map +1 -0
  374. package/build/src/models/legacy/models/UrlHistory.d.ts +32 -0
  375. package/build/src/models/legacy/models/UrlHistory.js +2 -0
  376. package/build/src/models/legacy/models/UrlHistory.js.map +1 -0
  377. package/build/src/models/legacy/models/Variable.d.ts +38 -0
  378. package/build/src/models/legacy/models/Variable.js +2 -0
  379. package/build/src/models/legacy/models/Variable.js.map +1 -0
  380. package/build/src/models/legacy/request/ArcRequest.d.ts +387 -0
  381. package/build/src/models/legacy/request/ArcRequest.js +2 -0
  382. package/build/src/models/legacy/request/ArcRequest.js.map +1 -0
  383. package/build/src/models/legacy/request/ArcResponse.d.ts +166 -0
  384. package/build/src/models/legacy/request/ArcResponse.js +2 -0
  385. package/build/src/models/legacy/request/ArcResponse.js.map +1 -0
  386. package/build/src/models/legacy/request/HistoryData.d.ts +45 -0
  387. package/build/src/models/legacy/request/HistoryData.js +2 -0
  388. package/build/src/models/legacy/request/HistoryData.js.map +1 -0
  389. package/build/src/models/legacy/request/Legacy.d.ts +43 -0
  390. package/build/src/models/legacy/request/Legacy.js +2 -0
  391. package/build/src/models/legacy/request/Legacy.js.map +1 -0
  392. package/build/src/models/legacy/request/RequestBody.d.ts +82 -0
  393. package/build/src/models/legacy/request/RequestBody.js +2 -0
  394. package/build/src/models/legacy/request/RequestBody.js.map +1 -0
  395. package/build/src/models/transformers/ArcDexieTransformer.d.ts +108 -0
  396. package/build/src/models/transformers/ArcDexieTransformer.js +252 -0
  397. package/build/src/models/transformers/ArcDexieTransformer.js.map +1 -0
  398. package/build/src/models/transformers/ArcLegacyNormalizer.d.ts +42 -0
  399. package/build/src/models/transformers/ArcLegacyNormalizer.js +80 -0
  400. package/build/src/models/transformers/ArcLegacyNormalizer.js.map +1 -0
  401. package/build/src/models/transformers/ArcLegacyTransformer.d.ts +85 -0
  402. package/build/src/models/transformers/ArcLegacyTransformer.js +150 -0
  403. package/build/src/models/transformers/ArcLegacyTransformer.js.map +1 -0
  404. package/build/src/models/transformers/ArcPouchTransformer.d.ts +46 -0
  405. package/build/src/models/transformers/ArcPouchTransformer.js +170 -0
  406. package/build/src/models/transformers/ArcPouchTransformer.js.map +1 -0
  407. package/build/src/models/transformers/BaseTransformer.d.ts +48 -0
  408. package/build/src/models/transformers/BaseTransformer.js +104 -0
  409. package/build/src/models/transformers/BaseTransformer.js.map +1 -0
  410. package/build/src/models/transformers/ImportUtils.d.ts +44 -0
  411. package/build/src/models/transformers/ImportUtils.js +135 -0
  412. package/build/src/models/transformers/ImportUtils.js.map +1 -0
  413. package/build/src/models/transformers/LegacyDataExportToApiProject.d.ts +15 -0
  414. package/build/src/models/transformers/LegacyDataExportToApiProject.js +70 -0
  415. package/build/src/models/transformers/LegacyDataExportToApiProject.js.map +1 -0
  416. package/build/src/models/transformers/LegacyExportProcessor.d.ts +47 -0
  417. package/build/src/models/transformers/LegacyExportProcessor.js +219 -0
  418. package/build/src/models/transformers/LegacyExportProcessor.js.map +1 -0
  419. package/build/src/models/transformers/PostmanBackupTransformer.d.ts +96 -0
  420. package/build/src/models/transformers/PostmanBackupTransformer.js +188 -0
  421. package/build/src/models/transformers/PostmanBackupTransformer.js.map +1 -0
  422. package/build/src/models/transformers/PostmanDataTransformer.d.ts +9 -0
  423. package/build/src/models/transformers/PostmanDataTransformer.js +46 -0
  424. package/build/src/models/transformers/PostmanDataTransformer.js.map +1 -0
  425. package/build/src/models/transformers/PostmanTransformer.d.ts +49 -0
  426. package/build/src/models/transformers/PostmanTransformer.js +90 -0
  427. package/build/src/models/transformers/PostmanTransformer.js.map +1 -0
  428. package/build/src/models/transformers/PostmanV21Transformer.d.ts +125 -0
  429. package/build/src/models/transformers/PostmanV21Transformer.js +195 -0
  430. package/build/src/models/transformers/PostmanV21Transformer.js.map +1 -0
  431. package/build/src/models/transformers/PostmanV2Transformer.d.ts +123 -0
  432. package/build/src/models/transformers/PostmanV2Transformer.js +195 -0
  433. package/build/src/models/transformers/PostmanV2Transformer.js.map +1 -0
  434. package/build/src/models/transformers/har.d.ts +857 -0
  435. package/build/src/models/transformers/har.js +2 -0
  436. package/build/src/models/transformers/har.js.map +1 -0
  437. package/build/src/runtime/actions/ActionRunner.d.ts +17 -0
  438. package/build/src/runtime/actions/ActionRunner.js +74 -0
  439. package/build/src/runtime/actions/ActionRunner.js.map +1 -0
  440. package/build/src/runtime/actions/ConditionRunner.d.ts +74 -0
  441. package/build/src/runtime/actions/ConditionRunner.js +185 -0
  442. package/build/src/runtime/actions/ConditionRunner.js.map +1 -0
  443. package/build/src/runtime/actions/RunnableCondition.d.ts +28 -0
  444. package/build/src/runtime/actions/RunnableCondition.js +51 -0
  445. package/build/src/runtime/actions/RunnableCondition.js.map +1 -0
  446. package/build/src/runtime/actions/runnable/ActionRunnable.d.ts +13 -0
  447. package/build/src/runtime/actions/runnable/ActionRunnable.js +13 -0
  448. package/build/src/runtime/actions/runnable/ActionRunnable.js.map +1 -0
  449. package/build/src/runtime/actions/runnable/DeleteCookieRunnable.d.ts +7 -0
  450. package/build/src/runtime/actions/runnable/DeleteCookieRunnable.js +36 -0
  451. package/build/src/runtime/actions/runnable/DeleteCookieRunnable.js.map +1 -0
  452. package/build/src/runtime/actions/runnable/SetCookieRunnable.d.ts +10 -0
  453. package/build/src/runtime/actions/runnable/SetCookieRunnable.js +89 -0
  454. package/build/src/runtime/actions/runnable/SetCookieRunnable.js.map +1 -0
  455. package/build/src/runtime/actions/runnable/SetVariableRunnable.d.ts +10 -0
  456. package/build/src/runtime/actions/runnable/SetVariableRunnable.js +49 -0
  457. package/build/src/runtime/actions/runnable/SetVariableRunnable.js.map +1 -0
  458. package/build/src/runtime/http-engine/ArcEngine.d.ts +218 -0
  459. package/build/src/runtime/http-engine/ArcEngine.js +1034 -0
  460. package/build/src/runtime/http-engine/ArcEngine.js.map +1 -0
  461. package/build/src/runtime/http-engine/Errors.d.ts +10 -0
  462. package/build/src/runtime/http-engine/Errors.js +14 -0
  463. package/build/src/runtime/http-engine/Errors.js.map +1 -0
  464. package/build/src/runtime/http-engine/FormData.d.ts +16 -0
  465. package/build/src/runtime/http-engine/FormData.js +72 -0
  466. package/build/src/runtime/http-engine/FormData.js.map +1 -0
  467. package/build/src/runtime/http-engine/HttpEngine.d.ts +294 -0
  468. package/build/src/runtime/http-engine/HttpEngine.js +736 -0
  469. package/build/src/runtime/http-engine/HttpEngine.js.map +1 -0
  470. package/build/src/runtime/http-engine/HttpErrorCodes.d.ts +15 -0
  471. package/build/src/runtime/http-engine/HttpErrorCodes.js +223 -0
  472. package/build/src/runtime/http-engine/HttpErrorCodes.js.map +1 -0
  473. package/build/src/runtime/http-engine/NodeEngine.d.ts +154 -0
  474. package/build/src/runtime/http-engine/NodeEngine.js +761 -0
  475. package/build/src/runtime/http-engine/NodeEngine.js.map +1 -0
  476. package/build/src/runtime/http-engine/NodeEngineDirect.d.ts +113 -0
  477. package/build/src/runtime/http-engine/NodeEngineDirect.js +443 -0
  478. package/build/src/runtime/http-engine/NodeEngineDirect.js.map +1 -0
  479. package/build/src/runtime/http-engine/PayloadSupport.d.ts +26 -0
  480. package/build/src/runtime/http-engine/PayloadSupport.js +78 -0
  481. package/build/src/runtime/http-engine/PayloadSupport.js.map +1 -0
  482. package/build/src/runtime/http-engine/RequestUtils.d.ts +66 -0
  483. package/build/src/runtime/http-engine/RequestUtils.js +144 -0
  484. package/build/src/runtime/http-engine/RequestUtils.js.map +1 -0
  485. package/build/src/runtime/http-engine/ntlm/Des.d.ts +4 -0
  486. package/build/src/runtime/http-engine/ntlm/Des.js +343 -0
  487. package/build/src/runtime/http-engine/ntlm/Des.js.map +1 -0
  488. package/build/src/runtime/http-engine/ntlm/MD4.d.ts +13 -0
  489. package/build/src/runtime/http-engine/ntlm/MD4.js +120 -0
  490. package/build/src/runtime/http-engine/ntlm/MD4.js.map +1 -0
  491. package/build/src/runtime/http-engine/ntlm/NtlmAuth.d.ts +26 -0
  492. package/build/src/runtime/http-engine/ntlm/NtlmAuth.js +159 -0
  493. package/build/src/runtime/http-engine/ntlm/NtlmAuth.js.map +1 -0
  494. package/build/src/runtime/http-engine/ntlm/NtlmMessage.d.ts +10 -0
  495. package/build/src/runtime/http-engine/ntlm/NtlmMessage.js +51 -0
  496. package/build/src/runtime/http-engine/ntlm/NtlmMessage.js.map +1 -0
  497. package/build/src/runtime/modules/BasicAuthCache.d.ts +39 -0
  498. package/build/src/runtime/modules/BasicAuthCache.js +125 -0
  499. package/build/src/runtime/modules/BasicAuthCache.js.map +1 -0
  500. package/build/src/runtime/modules/ExecutionResponse.d.ts +4 -0
  501. package/build/src/runtime/modules/ExecutionResponse.js +6 -0
  502. package/build/src/runtime/modules/ExecutionResponse.js.map +1 -0
  503. package/build/src/runtime/modules/ModulesRegistry.d.ts +93 -0
  504. package/build/src/runtime/modules/ModulesRegistry.js +69 -0
  505. package/build/src/runtime/modules/ModulesRegistry.js.map +1 -0
  506. package/build/src/runtime/modules/RequestAuthorization.d.ts +6 -0
  507. package/build/src/runtime/modules/RequestAuthorization.js +114 -0
  508. package/build/src/runtime/modules/RequestAuthorization.js.map +1 -0
  509. package/build/src/runtime/modules/RequestCookies.d.ts +17 -0
  510. package/build/src/runtime/modules/RequestCookies.js +133 -0
  511. package/build/src/runtime/modules/RequestCookies.js.map +1 -0
  512. package/build/src/runtime/node/ProjectRunner.d.ts +125 -0
  513. package/build/src/runtime/node/ProjectRunner.js +178 -0
  514. package/build/src/runtime/node/ProjectRunner.js.map +1 -0
  515. package/build/src/runtime/node/RequestFactory.d.ts +139 -0
  516. package/build/src/runtime/node/RequestFactory.js +397 -0
  517. package/build/src/runtime/node/RequestFactory.js.map +1 -0
  518. package/build/src/runtime/node/VariablesStore.d.ts +9 -0
  519. package/build/src/runtime/node/VariablesStore.js +19 -0
  520. package/build/src/runtime/node/VariablesStore.js.map +1 -0
  521. package/build/src/runtime/variables/Cache.d.ts +23 -0
  522. package/build/src/runtime/variables/Cache.js +51 -0
  523. package/build/src/runtime/variables/Cache.js.map +1 -0
  524. package/build/src/runtime/variables/EvalFunctions.d.ts +58 -0
  525. package/build/src/runtime/variables/EvalFunctions.js +123 -0
  526. package/build/src/runtime/variables/EvalFunctions.js.map +1 -0
  527. package/build/src/runtime/variables/ProjectVariables.d.ts +5 -0
  528. package/build/src/runtime/variables/ProjectVariables.js +6 -0
  529. package/build/src/runtime/variables/ProjectVariables.js.map +1 -0
  530. package/build/src/runtime/variables/VariablesProcessor.d.ts +165 -0
  531. package/build/src/runtime/variables/VariablesProcessor.js +515 -0
  532. package/build/src/runtime/variables/VariablesProcessor.js.map +1 -0
  533. package/build/src/runtime/variables/VariablesTokenizer.d.ts +26 -0
  534. package/build/src/runtime/variables/VariablesTokenizer.js +53 -0
  535. package/build/src/runtime/variables/VariablesTokenizer.js.map +1 -0
  536. package/package.json +97 -0
  537. package/readme.md +51 -0
@@ -0,0 +1,213 @@
1
+ import { ProjectParent } from './ProjectParent.js';
2
+ import { IProjectDefinitionProperty } from './ProjectDefinitionProperty.js';
3
+ import { ProjectItem, IProjectItem } from './ProjectItem.js';
4
+ import { ProjectRequest, IProjectRequest } from './ProjectRequest.js';
5
+ import { HttpProject } from './HttpProject.js';
6
+ import { IThing } from './Thing.js';
7
+ export declare const Kind = "ARC#ProjectFolder";
8
+ export declare const DefaultFolderName = "New folder";
9
+ export interface IFolderAddOptions {
10
+ /**
11
+ * Optionally the position at which to add the request into the list of items.
12
+ */
13
+ index?: number;
14
+ }
15
+ export interface IFolderCloneOptions {
16
+ /**
17
+ * By default it clones the folder with all requests in it.
18
+ * Set this to `true` to skip copying the requests along with the folder.
19
+ */
20
+ withoutRequests?: boolean;
21
+ /**
22
+ * By default it clones the folder with all folders in it.
23
+ * Set this to `true` to skip copying the folders along with the folder.
24
+ */
25
+ withoutFolders?: boolean;
26
+ /**
27
+ * The target project where to put the copied folder.
28
+ * When the target project is not the same as the source project then the folder
29
+ * is put into the project root rather than the parent folder (as it would when cloning
30
+ * a folder inside the same project).
31
+ */
32
+ targetProject?: HttpProject;
33
+ /**
34
+ * The **key** of the target folder.
35
+ *
36
+ * By default it clones the folder to its parent unless the clone is attached to another project.
37
+ * When the target folder is set then it places the clone under the passed target folder.
38
+ */
39
+ targetFolder?: string;
40
+ }
41
+ export interface IProjectFolder extends IProjectDefinitionProperty {
42
+ kind: typeof Kind;
43
+ /**
44
+ * The identifier of the folder.
45
+ */
46
+ key: string;
47
+ /**
48
+ * Folder meta
49
+ */
50
+ info: IThing;
51
+ /**
52
+ * The ordered list of HTTP requests / folders in the projects.
53
+ * The UI uses this to manipulate the view without changing the definitions.
54
+ */
55
+ items: IProjectItem[];
56
+ /**
57
+ * The environments defined for this project.
58
+ * If not set it is inherited from the parent.
59
+ */
60
+ environments?: string[];
61
+ /**
62
+ * Timestamp when the folder was last updated.
63
+ */
64
+ updated: number;
65
+ /**
66
+ * Timestamp when the folder was created.
67
+ */
68
+ created: number;
69
+ }
70
+ /**
71
+ * Represents a folder, a group of requests or other folders, in a folder.
72
+ */
73
+ export declare class ProjectFolder extends ProjectParent {
74
+ /**
75
+ * The default name of the folder.
76
+ */
77
+ static get defaultName(): string;
78
+ kind: string;
79
+ /**
80
+ * A reference to the top level project object.
81
+ */
82
+ project: HttpProject;
83
+ /**
84
+ * Timestamp when the folder was last updated.
85
+ */
86
+ updated: number;
87
+ /**
88
+ * Timestamp when the folder was created.
89
+ */
90
+ created: number;
91
+ constructor(project: HttpProject, input?: string | IProjectFolder);
92
+ /**
93
+ * Creates a new project folder clearing anything that is so far defined.
94
+ *
95
+ * Note, this throws an error when the project folder is not an ARC project folder.
96
+ */
97
+ new(init: IProjectFolder): void;
98
+ /**
99
+ * Checks whether the input is a definition of a project folder.
100
+ */
101
+ static isProjectFolder(input: unknown): boolean;
102
+ toJSON(): IProjectFolder;
103
+ /**
104
+ * Creates a new ProjectFolder object from a name.
105
+ * @param project The top-most project.
106
+ * @param name The name to set.
107
+ */
108
+ static fromName(project: HttpProject, name?: string): ProjectFolder;
109
+ /**
110
+ * Appends an instance of a folder to a project.
111
+ *
112
+ * @param folder The folder to add to this project.
113
+ * @returns The added folder.
114
+ */
115
+ addFolder(folder: ProjectFolder): ProjectFolder;
116
+ /**
117
+ * Appends new folder to a project from a full folder schema.
118
+ * This is primarily used to insert a folder on the client side
119
+ * after a folder was created in the store.
120
+ *
121
+ * @param folder The folder schema to add to this project.
122
+ * @returns The added folder.
123
+ */
124
+ addFolder(folder: IProjectFolder): ProjectFolder;
125
+ /**
126
+ * Appends a new folder to the project or a sub-folder.
127
+ *
128
+ * @param name The name to set. Optional.
129
+ * @returns The newly inserted folder. If the folder already existed it returns its instance.
130
+ */
131
+ addFolder(name?: string): ProjectFolder;
132
+ /**
133
+ * Adds a request to the project or a sub-folder.
134
+ *
135
+ * @param url The URL of the request.
136
+ * @param opts The request add options.
137
+ * @returns The inserted into the definitions request.
138
+ */
139
+ addRequest(url: string, opts?: IFolderAddOptions): ProjectRequest;
140
+ /**
141
+ * Adds a request to the project or a sub-folder.
142
+ *
143
+ * @param request The request to add.
144
+ * @param opts The request add options.
145
+ * @returns The inserted into the definitions request.
146
+ */
147
+ addRequest(request: IProjectRequest | ProjectRequest, opts?: IFolderAddOptions): ProjectRequest;
148
+ /**
149
+ * Lists items (not the actual definitions!) that are folders.
150
+ */
151
+ listFolderItems(): ProjectItem[];
152
+ /**
153
+ * Lists items (not the actual definitions!) that are requests.
154
+ */
155
+ listRequestItems(): ProjectItem[];
156
+ /**
157
+ * Lists folders in this folder.
158
+ */
159
+ listFolders(): ProjectFolder[];
160
+ /**
161
+ * Lists requests in this folder.
162
+ */
163
+ listRequests(): ProjectRequest[];
164
+ /**
165
+ * The callback called when the object is attached to a parent.
166
+ * This is called when the object is created and inserted to a project or a folder
167
+ * and when the object is moved between folders.
168
+ */
169
+ attachedCallback(): void;
170
+ /**
171
+ * The callback called when the object is detached from its parent.
172
+ * This callback is called when the item is deleted from a folder or a project,
173
+ * or when the item is about to be moved to another folder.
174
+ */
175
+ detachedCallback(): void;
176
+ /**
177
+ * @returns The instance of the HttpProject or a ProjectFolder that is a closes parent of this instance.
178
+ */
179
+ getParent(): ProjectFolder | HttpProject | undefined;
180
+ /**
181
+ * @returns A reference to the parent folder or the top-level HTTP project.
182
+ */
183
+ getProject(): HttpProject;
184
+ /**
185
+ * Removes this folder from the project.
186
+ */
187
+ remove(): void;
188
+ /**
189
+ * Makes a copy of this folder.
190
+ * By default it attaches the copied folder to the same parent.
191
+ * It also, by default, copies requests declared in this folder.
192
+ *
193
+ * Use the options dictionary to control these behaviors.
194
+ *
195
+ * @param opts Cloning options
196
+ */
197
+ clone(opts?: IFolderCloneOptions): ProjectFolder;
198
+ /**
199
+ * Clones the current requests to the target folder.
200
+ *
201
+ * @param folder The target folder into which to put the requests. The folder has to have the target project attached to it.
202
+ * @param project The originating project where the definitions are stored
203
+ */
204
+ protected cloneRequests(folder: ProjectFolder, project: HttpProject): void;
205
+ /**
206
+ * Clones the sub-folders to the target folder.
207
+ *
208
+ * @param folder The target folder into which to put the sub-folders. The folder has to have the target project attached to it.
209
+ * @param project The originating project where the definitions are stored
210
+ * @param withRequests Whether to clone requests with the folder.
211
+ */
212
+ protected cloneSubFolders(folder: ProjectFolder, project: HttpProject, withRequests?: boolean): void;
213
+ }
@@ -0,0 +1,314 @@
1
+ import { ProjectParent } from './ProjectParent.js';
2
+ import { ProjectItem } from './ProjectItem.js';
3
+ import { Kind as ProjectRequestKind } from './ProjectRequest.js';
4
+ import { Thing, Kind as ThingKind } from './Thing.js';
5
+ import v4 from '../lib/uuid.js';
6
+ export const Kind = 'ARC#ProjectFolder';
7
+ export const DefaultFolderName = 'New folder';
8
+ /**
9
+ * Represents a folder, a group of requests or other folders, in a folder.
10
+ */
11
+ export class ProjectFolder extends ProjectParent {
12
+ /**
13
+ * The default name of the folder.
14
+ */
15
+ static get defaultName() {
16
+ return DefaultFolderName;
17
+ }
18
+ kind = Kind;
19
+ /**
20
+ * A reference to the top level project object.
21
+ */
22
+ project;
23
+ /**
24
+ * Timestamp when the folder was last updated.
25
+ */
26
+ updated = 0;
27
+ /**
28
+ * Timestamp when the folder was created.
29
+ */
30
+ created = 0;
31
+ constructor(project, input) {
32
+ super();
33
+ this.project = project;
34
+ let init;
35
+ if (typeof input === 'string') {
36
+ init = JSON.parse(input);
37
+ }
38
+ else if (typeof input === 'object') {
39
+ init = input;
40
+ }
41
+ else {
42
+ const now = Date.now();
43
+ init = {
44
+ kind: Kind,
45
+ info: {
46
+ kind: ThingKind,
47
+ name: DefaultFolderName,
48
+ },
49
+ created: now,
50
+ updated: now,
51
+ items: [],
52
+ key: v4(),
53
+ };
54
+ }
55
+ this.new(init);
56
+ }
57
+ /**
58
+ * Creates a new project folder clearing anything that is so far defined.
59
+ *
60
+ * Note, this throws an error when the project folder is not an ARC project folder.
61
+ */
62
+ new(init) {
63
+ if (!ProjectFolder.isProjectFolder(init)) {
64
+ throw new Error(`Not an ARC project folder.`);
65
+ }
66
+ const { key = v4(), created = Date.now(), updated = Date.now(), items, environments, info } = init;
67
+ this.kind = Kind;
68
+ this.key = key;
69
+ this.created = created;
70
+ this.updated = updated;
71
+ if (Array.isArray(items)) {
72
+ this.items = items.map(i => new ProjectItem(this.project, i));
73
+ }
74
+ else {
75
+ this.items = [];
76
+ }
77
+ if (info) {
78
+ this.info = new Thing(info);
79
+ }
80
+ else {
81
+ this.info = new Thing({ kind: ThingKind, name: DefaultFolderName });
82
+ }
83
+ if (Array.isArray(environments)) {
84
+ this.environments = environments;
85
+ }
86
+ else {
87
+ this.environments = [];
88
+ }
89
+ }
90
+ /**
91
+ * Checks whether the input is a definition of a project folder.
92
+ */
93
+ static isProjectFolder(input) {
94
+ const typed = input;
95
+ if (!input || typed.kind !== Kind) {
96
+ return false;
97
+ }
98
+ return true;
99
+ }
100
+ toJSON() {
101
+ const result = {
102
+ kind: Kind,
103
+ info: this.info.toJSON(),
104
+ key: this.key,
105
+ created: this.created,
106
+ updated: this.updated,
107
+ items: [],
108
+ environments: [],
109
+ };
110
+ if (Array.isArray(this.items)) {
111
+ result.items = this.items.map(i => i.toJSON());
112
+ }
113
+ if (Array.isArray(this.environments)) {
114
+ result.environments = this.environments;
115
+ }
116
+ return result;
117
+ }
118
+ /**
119
+ * Creates a new ProjectFolder object from a name.
120
+ * @param project The top-most project.
121
+ * @param name The name to set.
122
+ */
123
+ static fromName(project, name = DefaultFolderName) {
124
+ const now = Date.now();
125
+ const key = v4();
126
+ const info = new Thing({ kind: ThingKind, name });
127
+ const definition = new ProjectFolder(project, {
128
+ key,
129
+ created: now,
130
+ updated: now,
131
+ items: [],
132
+ environments: [],
133
+ kind: Kind,
134
+ info: info.toJSON(),
135
+ });
136
+ return definition;
137
+ }
138
+ /**
139
+ * Appends a new folder to the folder. It updates the project to add the request definition.
140
+ * @param name The name to set. Optional.
141
+ * @returns The key of newly inserted folder.
142
+ */
143
+ addFolder(name) {
144
+ return this.project.addFolder(name, { parent: this.key });
145
+ }
146
+ /**
147
+ * Appends a new request to the folder. It updates the project to add the request definition.
148
+ * @param request The request to append to the folder.
149
+ * @returns The key of newly inserted request.
150
+ */
151
+ addRequest(request, opts = {}) {
152
+ const addOptions = { parent: this.key, ...opts };
153
+ if (typeof request === 'string') {
154
+ return this.project.addRequest(request, addOptions);
155
+ }
156
+ return this.project.addRequest(request, addOptions);
157
+ }
158
+ /**
159
+ * Lists items (not the actual definitions!) that are folders.
160
+ */
161
+ listFolderItems() {
162
+ const { items = [] } = this;
163
+ return items.filter(i => i.kind === Kind);
164
+ }
165
+ /**
166
+ * Lists items (not the actual definitions!) that are requests.
167
+ */
168
+ listRequestItems() {
169
+ const { items = [] } = this;
170
+ return items.filter(i => i.kind === ProjectRequestKind);
171
+ }
172
+ /**
173
+ * Lists folders in this folder.
174
+ */
175
+ listFolders() {
176
+ return this.project.listFolders({ folder: this.key });
177
+ }
178
+ /**
179
+ * Lists requests in this folder.
180
+ */
181
+ listRequests() {
182
+ return this.project.listRequests(this.key);
183
+ }
184
+ /**
185
+ * The callback called when the object is attached to a parent.
186
+ * This is called when the object is created and inserted to a project or a folder
187
+ * and when the object is moved between folders.
188
+ */
189
+ attachedCallback() {
190
+ // ...
191
+ }
192
+ /**
193
+ * The callback called when the object is detached from its parent.
194
+ * This callback is called when the item is deleted from a folder or a project,
195
+ * or when the item is about to be moved to another folder.
196
+ */
197
+ detachedCallback() {
198
+ // ...
199
+ }
200
+ /**
201
+ * @returns The instance of the HttpProject or a ProjectFolder that is a closes parent of this instance.
202
+ */
203
+ getParent() {
204
+ const { project, key } = this;
205
+ return project.findParent(key);
206
+ }
207
+ /**
208
+ * @returns A reference to the parent folder or the top-level HTTP project.
209
+ */
210
+ getProject() {
211
+ return this.project;
212
+ }
213
+ /**
214
+ * Removes this folder from the project.
215
+ */
216
+ remove() {
217
+ this.project.removeFolder(this.key);
218
+ }
219
+ /**
220
+ * Makes a copy of this folder.
221
+ * By default it attaches the copied folder to the same parent.
222
+ * It also, by default, copies requests declared in this folder.
223
+ *
224
+ * Use the options dictionary to control these behaviors.
225
+ *
226
+ * @param opts Cloning options
227
+ */
228
+ clone(opts = {}) {
229
+ const { targetProject = this.project, targetFolder } = opts;
230
+ const copy = new ProjectFolder(targetProject, this.toJSON());
231
+ copy.key = v4();
232
+ const extProject = targetProject !== this.project;
233
+ if (extProject) {
234
+ if (targetFolder) {
235
+ const parent = targetProject.findFolder(targetFolder, { keyOnly: true });
236
+ if (!parent) {
237
+ throw new Error(`The target project does not contain the folder ${targetFolder}`);
238
+ }
239
+ parent.addFolder(copy);
240
+ }
241
+ else {
242
+ targetProject.addFolder(copy);
243
+ }
244
+ }
245
+ else {
246
+ const parent = targetFolder ? this.project.findFolder(targetFolder, { keyOnly: true }) : this.getParent();
247
+ if (parent) {
248
+ parent.addFolder(copy);
249
+ }
250
+ else {
251
+ throw new Error(`Unable to locate a parent of the folder.`);
252
+ }
253
+ }
254
+ // removes all items. Depending on the passed option we re-add them next.
255
+ copy.items = [];
256
+ if (!opts.withoutRequests) {
257
+ this.cloneRequests(copy, this.project);
258
+ }
259
+ if (!opts.withoutFolders) {
260
+ this.cloneSubFolders(copy, this.project, !opts.withoutRequests);
261
+ }
262
+ return copy;
263
+ }
264
+ /**
265
+ * Clones the current requests to the target folder.
266
+ *
267
+ * @param folder The target folder into which to put the requests. The folder has to have the target project attached to it.
268
+ * @param project The originating project where the definitions are stored
269
+ */
270
+ cloneRequests(folder, project) {
271
+ const requests = this.items.filter(i => i.kind === ProjectRequestKind);
272
+ requests.forEach(r => {
273
+ const request = project.findRequest(r.key, { keyOnly: true });
274
+ if (!request) {
275
+ // Should we throw an error here?
276
+ // CONS:
277
+ // - It's not really related to the operation. It means there is an inconsistency in the project. That's the role of the project class.
278
+ // - Ignoring this would allow us to make a copy that is error free.
279
+ // - The error may occur in a situation when the user does not expect it (giving the nature of the error)
280
+ // Pros:
281
+ // - There's an inconsistency in the project definition that should be reported back to the UI for the user to inspect
282
+ return;
283
+ }
284
+ const copy = request.clone({ withoutAttach: true });
285
+ copy.project = folder.getProject();
286
+ folder.addRequest(copy);
287
+ });
288
+ }
289
+ /**
290
+ * Clones the sub-folders to the target folder.
291
+ *
292
+ * @param folder The target folder into which to put the sub-folders. The folder has to have the target project attached to it.
293
+ * @param project The originating project where the definitions are stored
294
+ * @param withRequests Whether to clone requests with the folder.
295
+ */
296
+ cloneSubFolders(folder, project, withRequests = true) {
297
+ const folders = this.items.filter(i => i.kind === Kind);
298
+ folders.forEach(f => {
299
+ const definition = project.findFolder(f.key, { keyOnly: true });
300
+ if (!definition) {
301
+ return;
302
+ }
303
+ const copy = new ProjectFolder(folder.getProject(), definition.toJSON());
304
+ copy.key = v4();
305
+ copy.items = [];
306
+ folder.addFolder(copy);
307
+ if (withRequests) {
308
+ definition.cloneRequests(copy, project);
309
+ }
310
+ definition.cloneSubFolders(copy, project, withRequests);
311
+ });
312
+ }
313
+ }
314
+ //# sourceMappingURL=ProjectFolder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectFolder.js","sourceRoot":"","sources":["../../../src/models/ProjectFolder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import { Kind as ProjectFolderKind, ProjectFolder } from './ProjectFolder.js';
2
+ import { Kind as ProjectRequestKind, ProjectRequest } from './ProjectRequest.js';
3
+ import { HttpProject } from './HttpProject.js';
4
+ export interface IProjectItem {
5
+ /**
6
+ * The kind of the item.
7
+ */
8
+ kind: typeof ProjectFolderKind | typeof ProjectRequestKind;
9
+ /**
10
+ * The identifier in the `definitions` array of the project.
11
+ */
12
+ key: string;
13
+ }
14
+ export declare class ProjectItem {
15
+ /**
16
+ * The kind of the item.
17
+ */
18
+ kind: typeof ProjectFolderKind | typeof ProjectRequestKind;
19
+ /**
20
+ * The identifier of the object in the `definitions` array of the project.
21
+ */
22
+ key: string;
23
+ /**
24
+ * A reference to the top level project object.
25
+ */
26
+ private project;
27
+ /**
28
+ * Checks whether the input is a definition of a project item.
29
+ */
30
+ static isProjectItem(input: unknown): boolean;
31
+ /**
32
+ * @return An instance that represents a request object
33
+ */
34
+ static projectRequest(project: HttpProject, key: string): ProjectItem;
35
+ /**
36
+ * @return An instance that represents a folder object
37
+ */
38
+ static projectFolder(project: HttpProject, key: string): ProjectItem;
39
+ /**
40
+ * @param project The top-most project.
41
+ * @param input The project item definition used to restore the state.
42
+ */
43
+ constructor(project: HttpProject, input: string | IProjectItem);
44
+ /**
45
+ * Creates a new project item clearing anything that is so far defined.
46
+ *
47
+ * Note, this throws an error when the project item is not an ARC project item.
48
+ */
49
+ new(init: IProjectItem): void;
50
+ toJSON(): IProjectItem;
51
+ /**
52
+ * @returns The instance of the definition associated with this item.
53
+ */
54
+ getItem(): ProjectFolder | ProjectRequest | undefined;
55
+ /**
56
+ * @returns The instance of the HttpProject or a ProjectFolder that is a closes parent of this item.
57
+ */
58
+ getParent(): ProjectFolder | HttpProject | undefined;
59
+ }