@aerokit/sdk 12.44.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 (399) hide show
  1. package/LICENSE +277 -0
  2. package/README.md +170 -0
  3. package/dist/cjs/bpm/deployer.js +57 -0
  4. package/dist/cjs/bpm/index.js +35 -0
  5. package/dist/cjs/bpm/process.js +636 -0
  6. package/dist/cjs/bpm/tasks.js +973 -0
  7. package/dist/cjs/bpm/values.js +82 -0
  8. package/dist/cjs/cache/cache.js +64 -0
  9. package/dist/cjs/cache/index.js +26 -0
  10. package/dist/cjs/cms/cmis.js +689 -0
  11. package/dist/cjs/cms/index.js +26 -0
  12. package/dist/cjs/component/decorators.js +126 -0
  13. package/dist/cjs/component/index.js +36 -0
  14. package/dist/cjs/core/configurations.js +110 -0
  15. package/dist/cjs/core/context.js +47 -0
  16. package/dist/cjs/core/env.js +45 -0
  17. package/dist/cjs/core/globals.js +54 -0
  18. package/dist/cjs/core/index.js +35 -0
  19. package/dist/cjs/db/dao.js +795 -0
  20. package/dist/cjs/db/database.js +904 -0
  21. package/dist/cjs/db/decorators.js +167 -0
  22. package/dist/cjs/db/index.js +72 -0
  23. package/dist/cjs/db/insert.js +51 -0
  24. package/dist/cjs/db/orm.js +245 -0
  25. package/dist/cjs/db/ormstatements.js +243 -0
  26. package/dist/cjs/db/procedure.js +112 -0
  27. package/dist/cjs/db/query.js +57 -0
  28. package/dist/cjs/db/repository.js +148 -0
  29. package/dist/cjs/db/sequence.js +59 -0
  30. package/dist/cjs/db/sql.js +516 -0
  31. package/dist/cjs/db/store.js +172 -0
  32. package/dist/cjs/db/translator.js +100 -0
  33. package/dist/cjs/db/update.js +43 -0
  34. package/dist/cjs/etcd/client.js +174 -0
  35. package/dist/cjs/etcd/index.js +26 -0
  36. package/dist/cjs/extensions/decorators.js +40 -0
  37. package/dist/cjs/extensions/extensions.js +108 -0
  38. package/dist/cjs/extensions/index.js +39 -0
  39. package/dist/cjs/git/client.js +277 -0
  40. package/dist/cjs/git/index.js +26 -0
  41. package/dist/cjs/http/client-async.js +224 -0
  42. package/dist/cjs/http/client.js +145 -0
  43. package/dist/cjs/http/decorators.js +76 -0
  44. package/dist/cjs/http/errors/ForbiddenError.js +41 -0
  45. package/dist/cjs/http/errors/ValidationError.js +41 -0
  46. package/dist/cjs/http/errors.js +26 -0
  47. package/dist/cjs/http/index.js +59 -0
  48. package/dist/cjs/http/request.js +281 -0
  49. package/dist/cjs/http/response.js +452 -0
  50. package/dist/cjs/http/rs/resource-common.js +32 -0
  51. package/dist/cjs/http/rs/resource-http-controller.js +306 -0
  52. package/dist/cjs/http/rs/resource-mappings.js +130 -0
  53. package/dist/cjs/http/rs/resource-method.js +218 -0
  54. package/dist/cjs/http/rs/resource.js +232 -0
  55. package/dist/cjs/http/rs.js +31 -0
  56. package/dist/cjs/http/session.js +124 -0
  57. package/dist/cjs/http/upload.js +144 -0
  58. package/dist/cjs/http/utils.js +106 -0
  59. package/dist/cjs/index.js +1 -0
  60. package/dist/cjs/indexing/index.js +29 -0
  61. package/dist/cjs/indexing/searcher.js +70 -0
  62. package/dist/cjs/indexing/writer.js +45 -0
  63. package/dist/cjs/integrations/index.js +26 -0
  64. package/dist/cjs/integrations/integrations.js +55 -0
  65. package/dist/cjs/io/bytes.js +101 -0
  66. package/dist/cjs/io/files.js +344 -0
  67. package/dist/cjs/io/image.js +43 -0
  68. package/dist/cjs/io/index.js +38 -0
  69. package/dist/cjs/io/streams.js +243 -0
  70. package/dist/cjs/io/zip.js +251 -0
  71. package/dist/cjs/job/decorators.js +40 -0
  72. package/dist/cjs/job/index.js +39 -0
  73. package/dist/cjs/job/scheduler.js +347 -0
  74. package/dist/cjs/junit/index.js +18 -0
  75. package/dist/cjs/junit/junit.js +67 -0
  76. package/dist/cjs/kafka/consumer.js +70 -0
  77. package/dist/cjs/kafka/index.js +29 -0
  78. package/dist/cjs/kafka/producer.js +70 -0
  79. package/dist/cjs/log/index.js +26 -0
  80. package/dist/cjs/log/logging.js +174 -0
  81. package/dist/cjs/mail/client.js +153 -0
  82. package/dist/cjs/mail/index.js +26 -0
  83. package/dist/cjs/messaging/consumer.js +83 -0
  84. package/dist/cjs/messaging/decorators.js +40 -0
  85. package/dist/cjs/messaging/index.js +42 -0
  86. package/dist/cjs/messaging/producer.js +81 -0
  87. package/dist/cjs/mongodb/client.js +627 -0
  88. package/dist/cjs/mongodb/dao.js +390 -0
  89. package/dist/cjs/mongodb/index.js +36 -0
  90. package/dist/cjs/net/decorators.js +40 -0
  91. package/dist/cjs/net/index.js +42 -0
  92. package/dist/cjs/net/soap.js +228 -0
  93. package/dist/cjs/net/websockets.js +151 -0
  94. package/dist/cjs/net/wrappers/onClose.js +2 -0
  95. package/dist/cjs/net/wrappers/onError.js +2 -0
  96. package/dist/cjs/net/wrappers/onMessage.js +2 -0
  97. package/dist/cjs/net/wrappers/onOpen.js +2 -0
  98. package/dist/cjs/pdf/index.js +26 -0
  99. package/dist/cjs/pdf/pdf.js +160 -0
  100. package/dist/cjs/platform/command.js +47 -0
  101. package/dist/cjs/platform/engines.js +70 -0
  102. package/dist/cjs/platform/index.js +47 -0
  103. package/dist/cjs/platform/lifecycle.js +49 -0
  104. package/dist/cjs/platform/os.js +51 -0
  105. package/dist/cjs/platform/problems.js +127 -0
  106. package/dist/cjs/platform/registry.js +319 -0
  107. package/dist/cjs/platform/repository.js +498 -0
  108. package/dist/cjs/platform/workspace.js +574 -0
  109. package/dist/cjs/qldb/index.js +26 -0
  110. package/dist/cjs/qldb/qldb.js +24 -0
  111. package/dist/cjs/rabbitmq/consumer.js +50 -0
  112. package/dist/cjs/rabbitmq/index.js +29 -0
  113. package/dist/cjs/rabbitmq/producer.js +38 -0
  114. package/dist/cjs/redis/client.js +190 -0
  115. package/dist/cjs/redis/index.js +26 -0
  116. package/dist/cjs/security/decorators.js +48 -0
  117. package/dist/cjs/security/index.js +40 -0
  118. package/dist/cjs/security/oauth.js +75 -0
  119. package/dist/cjs/security/user.js +88 -0
  120. package/dist/cjs/template/engines.js +139 -0
  121. package/dist/cjs/template/index.js +26 -0
  122. package/dist/cjs/utils/alphanumeric.js +107 -0
  123. package/dist/cjs/utils/base64.js +104 -0
  124. package/dist/cjs/utils/converter.js +78 -0
  125. package/dist/cjs/utils/digest.js +167 -0
  126. package/dist/cjs/utils/escape.js +160 -0
  127. package/dist/cjs/utils/hex.js +104 -0
  128. package/dist/cjs/utils/index.js +68 -0
  129. package/dist/cjs/utils/jsonpath.js +489 -0
  130. package/dist/cjs/utils/qrcode.js +41 -0
  131. package/dist/cjs/utils/url.js +82 -0
  132. package/dist/cjs/utils/utf8.js +61 -0
  133. package/dist/cjs/utils/uuid.js +48 -0
  134. package/dist/cjs/utils/xml.js +57 -0
  135. package/dist/dts/bpm/deployer.d.ts +29 -0
  136. package/dist/dts/bpm/index.d.ts +8 -0
  137. package/dist/dts/bpm/process.d.ts +433 -0
  138. package/dist/dts/bpm/tasks.d.ts +2022 -0
  139. package/dist/dts/bpm/values.d.ts +38 -0
  140. package/dist/dts/cache/cache.d.ts +30 -0
  141. package/dist/dts/cache/index.d.ts +2 -0
  142. package/dist/dts/cms/cmis.d.ts +413 -0
  143. package/dist/dts/cms/index.d.ts +2 -0
  144. package/dist/dts/component/decorators.d.ts +52 -0
  145. package/dist/dts/component/index.d.ts +2 -0
  146. package/dist/dts/core/configurations.d.ts +65 -0
  147. package/dist/dts/core/context.d.ts +19 -0
  148. package/dist/dts/core/env.d.ts +23 -0
  149. package/dist/dts/core/globals.d.ts +30 -0
  150. package/dist/dts/core/index.d.ts +8 -0
  151. package/dist/dts/db/dao.d.ts +8 -0
  152. package/dist/dts/db/database.d.ts +507 -0
  153. package/dist/dts/db/decorators.d.ts +89 -0
  154. package/dist/dts/db/index.d.ts +25 -0
  155. package/dist/dts/db/insert.d.ts +32 -0
  156. package/dist/dts/db/orm.d.ts +44 -0
  157. package/dist/dts/db/ormstatements.d.ts +4 -0
  158. package/dist/dts/db/procedure.d.ts +25 -0
  159. package/dist/dts/db/query.d.ts +48 -0
  160. package/dist/dts/db/repository.d.ts +64 -0
  161. package/dist/dts/db/sequence.d.ts +34 -0
  162. package/dist/dts/db/sql.d.ts +267 -0
  163. package/dist/dts/db/store.d.ts +138 -0
  164. package/dist/dts/db/translator.d.ts +26 -0
  165. package/dist/dts/db/update.d.ts +21 -0
  166. package/dist/dts/etcd/client.d.ts +92 -0
  167. package/dist/dts/etcd/index.d.ts +2 -0
  168. package/dist/dts/extensions/decorators.d.ts +11 -0
  169. package/dist/dts/extensions/extensions.d.ts +41 -0
  170. package/dist/dts/extensions/index.d.ts +4 -0
  171. package/dist/dts/git/client.d.ts +478 -0
  172. package/dist/dts/git/index.d.ts +2 -0
  173. package/dist/dts/http/client-async.d.ts +158 -0
  174. package/dist/dts/http/client.d.ts +180 -0
  175. package/dist/dts/http/decorators.d.ts +11 -0
  176. package/dist/dts/http/errors/ForbiddenError.d.ts +20 -0
  177. package/dist/dts/http/errors/ValidationError.d.ts +20 -0
  178. package/dist/dts/http/errors.d.ts +2 -0
  179. package/dist/dts/http/index.d.ts +16 -0
  180. package/dist/dts/http/request.d.ts +158 -0
  181. package/dist/dts/http/response.d.ts +281 -0
  182. package/dist/dts/http/rs/resource-common.d.ts +11 -0
  183. package/dist/dts/http/rs/resource-http-controller.d.ts +43 -0
  184. package/dist/dts/http/rs/resource-mappings.d.ts +70 -0
  185. package/dist/dts/http/rs/resource-method.d.ts +206 -0
  186. package/dist/dts/http/rs/resource.d.ts +126 -0
  187. package/dist/dts/http/rs.d.ts +4 -0
  188. package/dist/dts/http/session.d.ts +81 -0
  189. package/dist/dts/http/upload.d.ts +100 -0
  190. package/dist/dts/http/utils.d.ts +54 -0
  191. package/dist/dts/index.d.ts +0 -0
  192. package/dist/dts/indexing/index.d.ts +4 -0
  193. package/dist/dts/indexing/searcher.d.ts +47 -0
  194. package/dist/dts/indexing/writer.d.ts +22 -0
  195. package/dist/dts/integrations/index.d.ts +2 -0
  196. package/dist/dts/integrations/integrations.d.ts +118 -0
  197. package/dist/dts/io/bytes.d.ts +56 -0
  198. package/dist/dts/io/files.d.ts +261 -0
  199. package/dist/dts/io/image.d.ts +22 -0
  200. package/dist/dts/io/index.d.ts +10 -0
  201. package/dist/dts/io/streams.d.ts +172 -0
  202. package/dist/dts/io/zip.d.ts +178 -0
  203. package/dist/dts/job/decorators.d.ts +11 -0
  204. package/dist/dts/job/index.d.ts +4 -0
  205. package/dist/dts/job/scheduler.d.ts +250 -0
  206. package/dist/dts/junit/index.d.ts +1 -0
  207. package/dist/dts/junit/junit.d.ts +50 -0
  208. package/dist/dts/kafka/consumer.d.ts +48 -0
  209. package/dist/dts/kafka/index.d.ts +4 -0
  210. package/dist/dts/kafka/producer.d.ts +50 -0
  211. package/dist/dts/log/index.d.ts +2 -0
  212. package/dist/dts/log/logging.d.ts +102 -0
  213. package/dist/dts/mail/client.d.ts +90 -0
  214. package/dist/dts/mail/index.d.ts +2 -0
  215. package/dist/dts/messaging/consumer.d.ts +61 -0
  216. package/dist/dts/messaging/decorators.d.ts +11 -0
  217. package/dist/dts/messaging/index.d.ts +6 -0
  218. package/dist/dts/messaging/producer.d.ts +59 -0
  219. package/dist/dts/mongodb/client.d.ts +367 -0
  220. package/dist/dts/mongodb/dao.d.ts +24 -0
  221. package/dist/dts/mongodb/index.d.ts +2 -0
  222. package/dist/dts/net/decorators.d.ts +11 -0
  223. package/dist/dts/net/index.d.ts +6 -0
  224. package/dist/dts/net/soap.d.ts +115 -0
  225. package/dist/dts/net/websockets.d.ts +100 -0
  226. package/dist/dts/net/wrappers/onClose.d.ts +0 -0
  227. package/dist/dts/net/wrappers/onError.d.ts +0 -0
  228. package/dist/dts/net/wrappers/onMessage.d.ts +0 -0
  229. package/dist/dts/net/wrappers/onOpen.d.ts +0 -0
  230. package/dist/dts/pdf/index.d.ts +2 -0
  231. package/dist/dts/pdf/pdf.d.ts +72 -0
  232. package/dist/dts/platform/command.d.ts +41 -0
  233. package/dist/dts/platform/engines.d.ts +35 -0
  234. package/dist/dts/platform/index.d.ts +16 -0
  235. package/dist/dts/platform/lifecycle.d.ts +22 -0
  236. package/dist/dts/platform/os.d.ts +23 -0
  237. package/dist/dts/platform/problems.d.ts +114 -0
  238. package/dist/dts/platform/registry.d.ts +227 -0
  239. package/dist/dts/platform/repository.d.ts +354 -0
  240. package/dist/dts/platform/workspace.d.ts +421 -0
  241. package/dist/dts/qldb/index.d.ts +2 -0
  242. package/dist/dts/qldb/qldb.d.ts +1 -0
  243. package/dist/dts/rabbitmq/consumer.d.ts +25 -0
  244. package/dist/dts/rabbitmq/index.d.ts +4 -0
  245. package/dist/dts/rabbitmq/producer.d.ts +15 -0
  246. package/dist/dts/redis/client.d.ts +134 -0
  247. package/dist/dts/redis/index.d.ts +2 -0
  248. package/dist/dts/security/decorators.d.ts +4 -0
  249. package/dist/dts/security/index.d.ts +5 -0
  250. package/dist/dts/security/oauth.d.ts +39 -0
  251. package/dist/dts/security/user.d.ts +51 -0
  252. package/dist/dts/template/engines.d.ts +98 -0
  253. package/dist/dts/template/index.d.ts +2 -0
  254. package/dist/dts/utils/alphanumeric.d.ts +39 -0
  255. package/dist/dts/utils/base64.d.ts +48 -0
  256. package/dist/dts/utils/converter.d.ts +44 -0
  257. package/dist/dts/utils/digest.d.ts +50 -0
  258. package/dist/dts/utils/escape.d.ts +110 -0
  259. package/dist/dts/utils/hex.d.ts +48 -0
  260. package/dist/dts/utils/index.d.ts +23 -0
  261. package/dist/dts/utils/jsonpath.d.ts +22 -0
  262. package/dist/dts/utils/qrcode.d.ts +16 -0
  263. package/dist/dts/utils/url.d.ts +50 -0
  264. package/dist/dts/utils/utf8.d.ts +33 -0
  265. package/dist/dts/utils/uuid.d.ts +21 -0
  266. package/dist/dts/utils/xml.d.ts +22 -0
  267. package/dist/esm/bpm/deployer.mjs +38 -0
  268. package/dist/esm/bpm/index.mjs +15 -0
  269. package/dist/esm/bpm/process.mjs +617 -0
  270. package/dist/esm/bpm/tasks.mjs +954 -0
  271. package/dist/esm/bpm/values.mjs +63 -0
  272. package/dist/esm/cache/cache.mjs +45 -0
  273. package/dist/esm/cache/index.mjs +6 -0
  274. package/dist/esm/cms/cmis.mjs +660 -0
  275. package/dist/esm/cms/index.mjs +6 -0
  276. package/dist/esm/component/decorators.mjs +107 -0
  277. package/dist/esm/component/index.mjs +6 -0
  278. package/dist/esm/core/configurations.mjs +91 -0
  279. package/dist/esm/core/context.mjs +28 -0
  280. package/dist/esm/core/env.mjs +26 -0
  281. package/dist/esm/core/globals.mjs +35 -0
  282. package/dist/esm/core/index.mjs +15 -0
  283. package/dist/esm/db/dao.mjs +775 -0
  284. package/dist/esm/db/database.mjs +885 -0
  285. package/dist/esm/db/decorators.mjs +148 -0
  286. package/dist/esm/db/index.mjs +42 -0
  287. package/dist/esm/db/insert.mjs +32 -0
  288. package/dist/esm/db/orm.mjs +225 -0
  289. package/dist/esm/db/ormstatements.mjs +223 -0
  290. package/dist/esm/db/procedure.mjs +93 -0
  291. package/dist/esm/db/query.mjs +38 -0
  292. package/dist/esm/db/repository.mjs +129 -0
  293. package/dist/esm/db/sequence.mjs +40 -0
  294. package/dist/esm/db/sql.mjs +497 -0
  295. package/dist/esm/db/store.mjs +153 -0
  296. package/dist/esm/db/translator.mjs +81 -0
  297. package/dist/esm/db/update.mjs +24 -0
  298. package/dist/esm/etcd/client.mjs +155 -0
  299. package/dist/esm/etcd/index.mjs +6 -0
  300. package/dist/esm/extensions/decorators.mjs +21 -0
  301. package/dist/esm/extensions/extensions.mjs +89 -0
  302. package/dist/esm/extensions/index.mjs +9 -0
  303. package/dist/esm/git/client.mjs +258 -0
  304. package/dist/esm/git/index.mjs +6 -0
  305. package/dist/esm/http/client-async.mjs +205 -0
  306. package/dist/esm/http/client.mjs +126 -0
  307. package/dist/esm/http/decorators.mjs +47 -0
  308. package/dist/esm/http/errors/ForbiddenError.mjs +22 -0
  309. package/dist/esm/http/errors/ValidationError.mjs +22 -0
  310. package/dist/esm/http/errors.mjs +7 -0
  311. package/dist/esm/http/index.mjs +29 -0
  312. package/dist/esm/http/request.mjs +262 -0
  313. package/dist/esm/http/response.mjs +433 -0
  314. package/dist/esm/http/rs/resource-common.mjs +13 -0
  315. package/dist/esm/http/rs/resource-http-controller.mjs +287 -0
  316. package/dist/esm/http/rs/resource-mappings.mjs +111 -0
  317. package/dist/esm/http/rs/resource-method.mjs +199 -0
  318. package/dist/esm/http/rs/resource.mjs +213 -0
  319. package/dist/esm/http/rs.mjs +12 -0
  320. package/dist/esm/http/session.mjs +105 -0
  321. package/dist/esm/http/upload.mjs +125 -0
  322. package/dist/esm/http/utils.mjs +87 -0
  323. package/dist/esm/index.mjs +1 -0
  324. package/dist/esm/indexing/index.mjs +9 -0
  325. package/dist/esm/indexing/searcher.mjs +51 -0
  326. package/dist/esm/indexing/writer.mjs +26 -0
  327. package/dist/esm/integrations/index.mjs +6 -0
  328. package/dist/esm/integrations/integrations.mjs +36 -0
  329. package/dist/esm/io/bytes.mjs +82 -0
  330. package/dist/esm/io/files.mjs +325 -0
  331. package/dist/esm/io/image.mjs +24 -0
  332. package/dist/esm/io/index.mjs +18 -0
  333. package/dist/esm/io/streams.mjs +224 -0
  334. package/dist/esm/io/zip.mjs +232 -0
  335. package/dist/esm/job/decorators.mjs +21 -0
  336. package/dist/esm/job/index.mjs +9 -0
  337. package/dist/esm/job/scheduler.mjs +328 -0
  338. package/dist/esm/junit/index.mjs +2 -0
  339. package/dist/esm/junit/junit.mjs +48 -0
  340. package/dist/esm/kafka/consumer.mjs +51 -0
  341. package/dist/esm/kafka/index.mjs +9 -0
  342. package/dist/esm/kafka/producer.mjs +51 -0
  343. package/dist/esm/log/index.mjs +6 -0
  344. package/dist/esm/log/logging.mjs +155 -0
  345. package/dist/esm/mail/client.mjs +134 -0
  346. package/dist/esm/mail/index.mjs +6 -0
  347. package/dist/esm/messaging/consumer.mjs +64 -0
  348. package/dist/esm/messaging/decorators.mjs +21 -0
  349. package/dist/esm/messaging/index.mjs +12 -0
  350. package/dist/esm/messaging/producer.mjs +62 -0
  351. package/dist/esm/mongodb/client.mjs +608 -0
  352. package/dist/esm/mongodb/dao.mjs +360 -0
  353. package/dist/esm/mongodb/index.mjs +7 -0
  354. package/dist/esm/net/decorators.mjs +21 -0
  355. package/dist/esm/net/index.mjs +12 -0
  356. package/dist/esm/net/soap.mjs +209 -0
  357. package/dist/esm/net/websockets.mjs +132 -0
  358. package/dist/esm/net/wrappers/onClose.mjs +2 -0
  359. package/dist/esm/net/wrappers/onError.mjs +2 -0
  360. package/dist/esm/net/wrappers/onMessage.mjs +2 -0
  361. package/dist/esm/net/wrappers/onOpen.mjs +2 -0
  362. package/dist/esm/pdf/index.mjs +6 -0
  363. package/dist/esm/pdf/pdf.mjs +141 -0
  364. package/dist/esm/platform/command.mjs +28 -0
  365. package/dist/esm/platform/engines.mjs +51 -0
  366. package/dist/esm/platform/index.mjs +27 -0
  367. package/dist/esm/platform/lifecycle.mjs +30 -0
  368. package/dist/esm/platform/os.mjs +32 -0
  369. package/dist/esm/platform/problems.mjs +108 -0
  370. package/dist/esm/platform/registry.mjs +300 -0
  371. package/dist/esm/platform/repository.mjs +479 -0
  372. package/dist/esm/platform/workspace.mjs +555 -0
  373. package/dist/esm/qldb/index.mjs +6 -0
  374. package/dist/esm/qldb/qldb.mjs +5 -0
  375. package/dist/esm/rabbitmq/consumer.mjs +31 -0
  376. package/dist/esm/rabbitmq/index.mjs +9 -0
  377. package/dist/esm/rabbitmq/producer.mjs +19 -0
  378. package/dist/esm/redis/client.mjs +171 -0
  379. package/dist/esm/redis/index.mjs +6 -0
  380. package/dist/esm/security/decorators.mjs +29 -0
  381. package/dist/esm/security/index.mjs +10 -0
  382. package/dist/esm/security/oauth.mjs +56 -0
  383. package/dist/esm/security/user.mjs +69 -0
  384. package/dist/esm/template/engines.mjs +120 -0
  385. package/dist/esm/template/index.mjs +6 -0
  386. package/dist/esm/utils/alphanumeric.mjs +88 -0
  387. package/dist/esm/utils/base64.mjs +85 -0
  388. package/dist/esm/utils/converter.mjs +59 -0
  389. package/dist/esm/utils/digest.mjs +148 -0
  390. package/dist/esm/utils/escape.mjs +141 -0
  391. package/dist/esm/utils/hex.mjs +85 -0
  392. package/dist/esm/utils/index.mjs +38 -0
  393. package/dist/esm/utils/jsonpath.mjs +470 -0
  394. package/dist/esm/utils/qrcode.mjs +22 -0
  395. package/dist/esm/utils/url.mjs +63 -0
  396. package/dist/esm/utils/utf8.mjs +42 -0
  397. package/dist/esm/utils/uuid.mjs +29 -0
  398. package/dist/esm/utils/xml.mjs +38 -0
  399. package/package.json +58 -0
@@ -0,0 +1,126 @@
1
+ const HttpClientFacade = Java.type("org.eclipse.dirigible.components.api.http.HttpClientFacade");
2
+ class HttpClient {
3
+ /**
4
+ * Executes a synchronous HTTP GET request.
5
+ * @param url The target URL.
6
+ * @param options Configuration options for the request.
7
+ * @returns The parsed response object containing status, headers, and body.
8
+ */
9
+ static get(url, options = {}) {
10
+ const requestUrl = HttpClient.buildUrl(url, options);
11
+ const response = HttpClientFacade.get(requestUrl, JSON.stringify(options));
12
+ return JSON.parse(response);
13
+ }
14
+ /**
15
+ * Executes a synchronous HTTP POST request.
16
+ * @param url The target URL.
17
+ * @param options Configuration options for the request, including request body in `text` or `data`.
18
+ * @returns The parsed response object.
19
+ */
20
+ static post(url, options = {}) {
21
+ const requestUrl = HttpClient.buildUrl(url, options);
22
+ const response = HttpClientFacade.post(requestUrl, JSON.stringify(options));
23
+ return JSON.parse(response);
24
+ }
25
+ /**
26
+ * Executes a synchronous HTTP PUT request.
27
+ * @param url The target URL.
28
+ * @param options Configuration options for the request.
29
+ * @returns The parsed response object.
30
+ */
31
+ static put(url, options = {}) {
32
+ const requestUrl = HttpClient.buildUrl(url, options);
33
+ const response = HttpClientFacade.put(requestUrl, JSON.stringify(options));
34
+ return JSON.parse(response);
35
+ }
36
+ /**
37
+ * Executes a synchronous HTTP PATCH request.
38
+ * @param url The target URL.
39
+ * @param options Configuration options for the request.
40
+ * @returns The parsed response object.
41
+ */
42
+ static patch(url, options = {}) {
43
+ const requestUrl = HttpClient.buildUrl(url, options);
44
+ const response = HttpClientFacade.patch(requestUrl, JSON.stringify(options));
45
+ return JSON.parse(response);
46
+ }
47
+ /**
48
+ * Executes a synchronous HTTP DELETE request.
49
+ * @param url The target URL.
50
+ * @param options Configuration options for the request.
51
+ * @returns The parsed response object.
52
+ */
53
+ static delete(url, options = {}) {
54
+ const requestUrl = HttpClient.buildUrl(url, options);
55
+ const response = HttpClientFacade.delete(requestUrl, JSON.stringify(options));
56
+ return JSON.parse(response);
57
+ }
58
+ /**
59
+ * Alias for {@link HttpClient.delete}. Executes a synchronous HTTP DELETE request.
60
+ * @param url The target URL.
61
+ * @param options Configuration options for the request.
62
+ * @returns The parsed response object.
63
+ */
64
+ static del(url, options = {}) {
65
+ return HttpClient.delete(url, options);
66
+ }
67
+ /**
68
+ * Executes a synchronous HTTP HEAD request (fetches headers only).
69
+ * @param url The target URL.
70
+ * @param options Configuration options for the request.
71
+ * @returns The parsed response object. The body (`text` and `data`) will typically be empty.
72
+ */
73
+ static head(url, options = {}) {
74
+ const requestUrl = HttpClient.buildUrl(url, options);
75
+ const response = HttpClientFacade.head(requestUrl, JSON.stringify(options));
76
+ return JSON.parse(response);
77
+ }
78
+ /**
79
+ * Executes a synchronous HTTP TRACE request.
80
+ * @param url The target URL.
81
+ * @param options Configuration options for the request.
82
+ * @returns The parsed response object.
83
+ */
84
+ static trace(url, options = {}) {
85
+ const requestUrl = HttpClient.buildUrl(url, options);
86
+ const response = HttpClientFacade.trace(requestUrl, JSON.stringify(options));
87
+ return JSON.parse(response);
88
+ }
89
+ /**
90
+ * @private
91
+ * Builds the request URL by appending query parameters from options.params,
92
+ * then removes `params` from the options object before passing it to the Java Facade.
93
+ * @param url The base URL.
94
+ * @param options The request options object.
95
+ * @returns The URL with appended query parameters.
96
+ */
97
+ static buildUrl(url, options) {
98
+ if (!options || !options.params || options.params.length === 0) {
99
+ return url;
100
+ }
101
+ let processedUrl = url;
102
+ let firstParam = true;
103
+ for (const param of options.params) {
104
+ if (firstParam) {
105
+ if (processedUrl.includes("?")) {
106
+ processedUrl += "&";
107
+ } else {
108
+ processedUrl += "?";
109
+ }
110
+ firstParam = false;
111
+ } else {
112
+ processedUrl += "&";
113
+ }
114
+ processedUrl += `${param.name}=${param.value}`;
115
+ }
116
+ delete options.params;
117
+ return processedUrl;
118
+ }
119
+ }
120
+ if (typeof module !== "undefined") {
121
+ module.exports = HttpClient;
122
+ }
123
+ export {
124
+ HttpClient
125
+ };
126
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvY2xpZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIGEgSmF2YVNjcmlwdC9UeXBlU2NyaXB0IHdyYXBwZXIgKEZhY2FkZSkgZm9yIG1ha2luZyBzeW5jaHJvbm91cyBIVFRQIHJlcXVlc3RzLlxuICpcbiAqL1xuXG5jb25zdCBIdHRwQ2xpZW50RmFjYWRlID0gSmF2YS50eXBlKFwib3JnLmVjbGlwc2UuZGlyaWdpYmxlLmNvbXBvbmVudHMuYXBpLmh0dHAuSHR0cENsaWVudEZhY2FkZVwiKTtcblxuLyoqXG4gKiBEZWZpbmVzIGEgc2luZ2xlIEhUVFAgaGVhZGVyLCB1c2VkIGZvciBib3RoIHJlcXVlc3QgYW5kIHJlc3BvbnNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBDbGllbnRIZWFkZXIge1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgaGVhZGVyIChlLmcuLCAnQ29udGVudC1UeXBlJywgJ0F1dGhvcml6YXRpb24nKS4gKi9cbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgLyoqIFRoZSB2YWx1ZSBvZiB0aGUgaGVhZGVyLiAqL1xuICAgIHZhbHVlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGVmaW5lcyBhIHF1ZXJ5IHBhcmFtZXRlciB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gdGhlIFVSTC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwQ2xpZW50UGFyYW0ge1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgVVJMIHF1ZXJ5IHBhcmFtZXRlciAoZS5nLiwgJ2lkJykuICovXG4gICAgbmFtZTogc3RyaW5nO1xuICAgIC8qKiBUaGUgdmFsdWUgb2YgdGhlIFVSTCBxdWVyeSBwYXJhbWV0ZXIuICovXG4gICAgdmFsdWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBEZWZpbmVzIGEgZmlsZSB0byBiZSBpbmNsdWRlZCBpbiBhIG11bHRpLXBhcnQgZm9ybSBkYXRhIHJlcXVlc3QuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cENsaWVudEZpbGUge1xuICAgIC8qKiBUaGUgZm9ybSBmaWVsZCBuYW1lIGZvciB0aGUgZmlsZS4gKi9cbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgLyoqIFRoZSBmaWxlIHBhdGggb3IgY29udGVudCAoYmVoYXZpb3IgZGVwZW5kcyBvbiB0aGUgdW5kZXJseWluZyBKYXZhIGltcGxlbWVudGF0aW9uKS4gKi9cbiAgICB2YWx1ZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgYW4gSFRUUCByZXF1ZXN0LCBtaXJyb3JpbmcgdGhlIGNhcGFiaWxpdGllcyBvZiB0aGUgdW5kZXJseWluZyBKYXZhIGNsaWVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwQ2xpZW50UmVxdWVzdE9wdGlvbnMge1xuICAgIC8qKiBXaGV0aGVyICdFeHBlY3Q6IDEwMC1Db250aW51ZScgaGFuZHNoYWtlIGlzIGVuYWJsZWQuIERlZmF1bHRzIHRvIGZhbHNlLiAqL1xuICAgIGV4cGVjdENvbnRpbnVlRW5hYmxlZD86IGJvb2xlYW47XG4gICAgLyoqIFRoZSBwcm94eSBob3N0bmFtZSB0byB1c2UgZm9yIHRoZSByZXF1ZXN0LiAqL1xuICAgIHByb3h5SG9zdD86IHN0cmluZztcbiAgICAvKiogVGhlIHByb3h5IHBvcnQgbnVtYmVyLiAqL1xuICAgIHByb3h5UG9ydD86IG51bWJlcjtcbiAgICAvKiogVGhlIGNvb2tpZSBzcGVjaWZpY2F0aW9uIHRvIHVzZSAoZS5nLiwgJ2RlZmF1bHQnLCAnbmV0c2NhcGUnKS4gKi9cbiAgICBjb29raWVTcGVjPzogc3RyaW5nO1xuICAgIC8qKiBXaGV0aGVyIGF1dG9tYXRpYyByZWRpcmVjdHMgYXJlIGVuYWJsZWQuIERlZmF1bHRzIHRvIHRydWUuICovXG4gICAgcmVkaXJlY3RzRW5hYmxlZD86IGJvb2xlYW47XG4gICAgLyoqIFdoZXRoZXIgcmVsYXRpdmUgcmVkaXJlY3RzIHNob3VsZCBiZSBhbGxvd2VkLiBEZWZhdWx0cyB0byB0cnVlLiAqL1xuICAgIHJlbGF0aXZlUmVkaXJlY3RzQWxsb3dlZD86IGJvb2xlYW47XG4gICAgLyoqIFdoZXRoZXIgY2lyY3VsYXIgcmVkaXJlY3RzIChpbmZpbml0ZSBsb29wcykgc2hvdWxkIGJlIGFsbG93ZWQuIERlZmF1bHRzIHRvIGZhbHNlLiAqL1xuICAgIGNpcmN1bGFyUmVkaXJlY3RzQWxsb3dlZD86IGJvb2xlYW47XG4gICAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiByZWRpcmVjdHMgdG8gZm9sbG93LiAqL1xuICAgIG1heFJlZGlyZWN0cz86IG51bWJlcjtcbiAgICAvKiogV2hldGhlciBhdXRoZW50aWNhdGlvbiBoYW5kbGluZyBpcyBlbmFibGVkLiAqL1xuICAgIGF1dGhlbnRpY2F0aW9uRW5hYmxlZD86IGJvb2xlYW47XG4gICAgLyoqIEFycmF5IG9mIHByZWZlcnJlZCBhdXRoZW50aWNhdGlvbiBzY2hlbWVzIGZvciB0aGUgdGFyZ2V0IGhvc3QuICovXG4gICAgdGFyZ2V0UHJlZmVycmVkQXV0aFNjaGVtZXM/OiBzdHJpbmdbXTtcbiAgICAvKiogQXJyYXkgb2YgcHJlZmVycmVkIGF1dGhlbnRpY2F0aW9uIHNjaGVtZXMgZm9yIHRoZSBwcm94eS4gKi9cbiAgICBwcm94eVByZWZlcnJlZEF1dGhTY2hlbWVzPzogc3RyaW5nW107XG4gICAgLyoqIFRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIGZvciByZXF1ZXN0aW5nIGEgY29ubmVjdGlvbiBmcm9tIHRoZSBjb25uZWN0aW9uIG1hbmFnZXIuICovXG4gICAgY29ubmVjdGlvblJlcXVlc3RUaW1lb3V0PzogbnVtYmVyO1xuICAgIC8qKiBUaW1lb3V0IGluIG1pbGxpc2Vjb25kcyBmb3IgZXN0YWJsaXNoaW5nIHRoZSBjb25uZWN0aW9uLiAqL1xuICAgIGNvbm5lY3RUaW1lb3V0PzogbnVtYmVyO1xuICAgIC8qKiBTb2NrZXQgdGltZW91dCAodGltZW91dCBmb3Igd2FpdGluZyBmb3IgZGF0YSkgaW4gbWlsbGlzZWNvbmRzLiAqL1xuICAgIHNvY2tldFRpbWVvdXQ/OiBudW1iZXI7XG4gICAgLyoqIFdoZXRoZXIgYXV0b21hdGljIGNvbnRlbnQgY29tcHJlc3Npb24gKGUuZy4sIGd6aXApIGlzIGVuYWJsZWQuICovXG4gICAgY29udGVudENvbXByZXNzaW9uRW5hYmxlZD86IGJvb2xlYW47XG4gICAgLyoqIFdoZXRoZXIgdG8gdHJ1c3QgYWxsIFNTTCBjZXJ0aWZpY2F0ZXMgKHVzZSBvbmx5IGZvciB0ZXN0aW5nIG5vbi1wcm9kdWN0aW9uIHN5c3RlbXMpLiAqL1xuICAgIHNzbFRydXN0QWxsRW5hYmxlZD86IGJvb2xlYW47XG4gICAgLyoqIERhdGEgdG8gYmUgc2VudCBhcyB0aGUgcmVxdWVzdCBib2R5LCB0eXBpY2FsbHkgYXMgYW4gYXJyYXkgb2YgYnl0ZXMvaW50ZWdlcnMuICovXG4gICAgZGF0YT86IGFueVtdO1xuICAgIC8qKiBUZXh0IGNvbnRlbnQgdG8gYmUgc2VudCBhcyB0aGUgcmVxdWVzdCBib2R5LiBUYWtlcyBwcmVjZWRlbmNlIG92ZXIgYGRhdGFgLiAqL1xuICAgIHRleHQ/OiBzdHJpbmc7XG4gICAgLyoqIEFycmF5IG9mIGZpbGVzIGZvciBtdWx0aS1wYXJ0IGZvcm0gZGF0YSBzdWJtaXNzaW9ucy4gKi9cbiAgICBmaWxlcz86IEh0dHBDbGllbnRGaWxlW107XG4gICAgLyoqIFRoZSBjaGFyYWN0ZXIgZW5jb2RpbmcgKGNoYXJzZXQpIHRvIHVzZSBmb3IgdGhlIHJlcXVlc3QgYm9keSAoZS5nLiwgJ1VURi04JykuICovXG4gICAgY2hhcmFjdGVyRW5jb2Rpbmc/OiBzdHJpbmc7XG4gICAgLyoqIFdoZXRoZXIgdG8gZW5mb3JjZSB0aGUgY2hhcmFjdGVyIGVuY29kaW5nLiAqL1xuICAgIGNoYXJhY3RlckVuY29kaW5nRW5hYmxlZD86IGJvb2xlYW47XG4gICAgLyoqIFRoZSBDb250ZW50LVR5cGUgaGVhZGVyIHZhbHVlIGZvciB0aGUgcmVxdWVzdCBib2R5LiAqL1xuICAgIGNvbnRlbnRUeXBlPzogc3RyaW5nO1xuICAgIC8qKiBBcnJheSBvZiBjdXN0b20gaGVhZGVycyB0byBpbmNsdWRlIGluIHRoZSByZXF1ZXN0LiAqL1xuICAgIGhlYWRlcnM/OiBIdHRwQ2xpZW50SGVhZGVyW107XG4gICAgLyoqIEFycmF5IG9mIHF1ZXJ5IHBhcmFtZXRlcnMgdG8gYmUgYXBwZW5kZWQgdG8gdGhlIFVSTC4gKi9cbiAgICBwYXJhbXM/OiBIdHRwQ2xpZW50UGFyYW1bXTtcbiAgICAvKiogSWYgdHJ1ZSwgdHJlYXRzIHRoZSByZXNwb25zZSBib2R5IGFzIGJpbmFyeSBkYXRhLiAqL1xuICAgIGJpbmFyeT86IGJvb2xlYW47XG4gICAgLyoqIE9wdGlvbmFsIGNvbnRleHQgbWFwIGZvciBhZHZhbmNlZCBjb25maWd1cmF0aW9uIG9mIHRoZSB1bmRlcmx5aW5nIEphdmEgY2xpZW50LiAqL1xuICAgIGNvbnRleHQ/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xufVxuXG4vKipcbiAqIFRoZSBzdHJ1Y3R1cmUgb2YgdGhlIHJlc3BvbnNlIHJldHVybmVkIGJ5IHRoZSBIdHRwQ2xpZW50IG1ldGhvZHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cENsaWVudFJlc3BvbnNlIHtcbiAgICAvKiogVGhlIEhUVFAgc3RhdHVzIGNvZGUgKGUuZy4sIDIwMCwgNDA0LCA1MDApLiAqL1xuICAgIHN0YXR1c0NvZGU6IG51bWJlcjtcbiAgICAvKiogVGhlIHN0YXR1cyBtZXNzYWdlIHJldHVybmVkIGJ5IHRoZSBzZXJ2ZXIgKGUuZy4sICdPSycsICdOb3QgRm91bmQnKS4gKi9cbiAgICBzdGF0dXNNZXNzYWdlOiBzdHJpbmc7XG4gICAgLyoqIFJlc3BvbnNlIGJvZHkgY29udGVudCBhcyBhbiBhcnJheSBvZiBieXRlcyAoaWYgcmVxdWVzdGVkIGFzIGJpbmFyeSkuICovXG4gICAgZGF0YTogYW55W107XG4gICAgLyoqIFJlc3BvbnNlIGJvZHkgY29udGVudCBhcyBhIGRlY29kZWQgc3RyaW5nLiAqL1xuICAgIHRleHQ6IHN0cmluZztcbiAgICAvKiogVGhlIHByb3RvY29sIHVzZWQgKGUuZy4sICdIVFRQLzEuMScpLiAqL1xuICAgIHByb3RvY29sOiBzdHJpbmc7XG4gICAgLyoqIEluZGljYXRlcyBpZiB0aGUgcmVzcG9uc2Ugd2FzIHByb2Nlc3NlZCBhcyBiaW5hcnkgZGF0YS4gKi9cbiAgICBiaW5hcnk6IGJvb2xlYW47XG4gICAgLyoqIEFycmF5IG9mIGFsbCBoZWFkZXJzIHJlY2VpdmVkIGluIHRoZSByZXNwb25zZS4gKi9cbiAgICBoZWFkZXJzOiBIdHRwQ2xpZW50SGVhZGVyW11cbn1cblxuLyoqXG4gKiBBIHN0YXRpYyBjbGFzcyBwcm92aWRpbmcgbWV0aG9kcyBmb3IgbWFraW5nIHN5bmNocm9ub3VzIEhUVFAgcmVxdWVzdHMuXG4gKiBBbGwgbWV0aG9kcyBjYWxsIHRoZSB1bmRlcmx5aW5nIEphdmEgRmFjYWRlIGFuZCBwYXJzZSB0aGUgSlNPTiByZXNwb25zZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEh0dHBDbGllbnQge1xuXG4gICAgLyoqXG4gICAgICogRXhlY3V0ZXMgYSBzeW5jaHJvbm91cyBIVFRQIEdFVCByZXF1ZXN0LlxuICAgICAqIEBwYXJhbSB1cmwgVGhlIHRhcmdldCBVUkwuXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIHJlc3BvbnNlIG9iamVjdCBjb250YWluaW5nIHN0YXR1cywgaGVhZGVycywgYW5kIGJvZHkuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBnZXQodXJsOiBzdHJpbmcsIG9wdGlvbnM6IEh0dHBDbGllbnRSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cENsaWVudFJlc3BvbnNlIHtcbiAgICAgICAgY29uc3QgcmVxdWVzdFVybCA9IEh0dHBDbGllbnQuYnVpbGRVcmwodXJsLCBvcHRpb25zKTtcbiAgICAgICAgLy8gVGhlIEphdmEgRmFjYWRlIGV4cGVjdHMgdGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBhcyBhIEpTT04gc3RyaW5nXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gSHR0cENsaWVudEZhY2FkZS5nZXQocmVxdWVzdFVybCwgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykpO1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXNwb25zZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRXhlY3V0ZXMgYSBzeW5jaHJvbm91cyBIVFRQIFBPU1QgcmVxdWVzdC5cbiAgICAgKiBAcGFyYW0gdXJsIFRoZSB0YXJnZXQgVVJMLlxuICAgICAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QsIGluY2x1ZGluZyByZXF1ZXN0IGJvZHkgaW4gYHRleHRgIG9yIGBkYXRhYC5cbiAgICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIHJlc3BvbnNlIG9iamVjdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHBvc3QodXJsOiBzdHJpbmcsIG9wdGlvbnM6IEh0dHBDbGllbnRSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cENsaWVudFJlc3BvbnNlIHtcbiAgICAgICAgY29uc3QgcmVxdWVzdFVybCA9IEh0dHBDbGllbnQuYnVpbGRVcmwodXJsLCBvcHRpb25zKTtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBIdHRwQ2xpZW50RmFjYWRlLnBvc3QocmVxdWVzdFVybCwgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykpO1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXNwb25zZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRXhlY3V0ZXMgYSBzeW5jaHJvbm91cyBIVFRQIFBVVCByZXF1ZXN0LlxuICAgICAqIEBwYXJhbSB1cmwgVGhlIHRhcmdldCBVUkwuXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIHJlc3BvbnNlIG9iamVjdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHB1dCh1cmw6IHN0cmluZywgb3B0aW9uczogSHR0cENsaWVudFJlcXVlc3RPcHRpb25zID0ge30pOiBIdHRwQ2xpZW50UmVzcG9uc2Uge1xuICAgICAgICBjb25zdCByZXF1ZXN0VXJsID0gSHR0cENsaWVudC5idWlsZFVybCh1cmwsIG9wdGlvbnMpO1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IEh0dHBDbGllbnRGYWNhZGUucHV0KHJlcXVlc3RVcmwsIEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpKTtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UocmVzcG9uc2UpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4ZWN1dGVzIGEgc3luY2hyb25vdXMgSFRUUCBQQVRDSCByZXF1ZXN0LlxuICAgICAqIEBwYXJhbSB1cmwgVGhlIHRhcmdldCBVUkwuXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIHJlc3BvbnNlIG9iamVjdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHBhdGNoKHVybDogc3RyaW5nLCBvcHRpb25zOiBIdHRwQ2xpZW50UmVxdWVzdE9wdGlvbnMgPSB7fSk6IEh0dHBDbGllbnRSZXNwb25zZSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3RVcmwgPSBIdHRwQ2xpZW50LmJ1aWxkVXJsKHVybCwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gSHR0cENsaWVudEZhY2FkZS5wYXRjaChyZXF1ZXN0VXJsLCBKU09OLnN0cmluZ2lmeShvcHRpb25zKSk7XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3BvbnNlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFeGVjdXRlcyBhIHN5bmNocm9ub3VzIEhUVFAgREVMRVRFIHJlcXVlc3QuXG4gICAgICogQHBhcmFtIHVybCBUaGUgdGFyZ2V0IFVSTC5cbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgICAqIEByZXR1cm5zIFRoZSBwYXJzZWQgcmVzcG9uc2Ugb2JqZWN0LlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZGVsZXRlKHVybDogc3RyaW5nLCBvcHRpb25zOiBIdHRwQ2xpZW50UmVxdWVzdE9wdGlvbnMgPSB7fSk6IEh0dHBDbGllbnRSZXNwb25zZSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3RVcmwgPSBIdHRwQ2xpZW50LmJ1aWxkVXJsKHVybCwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gSHR0cENsaWVudEZhY2FkZS5kZWxldGUocmVxdWVzdFVybCwgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykpO1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXNwb25zZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWxpYXMgZm9yIHtAbGluayBIdHRwQ2xpZW50LmRlbGV0ZX0uIEV4ZWN1dGVzIGEgc3luY2hyb25vdXMgSFRUUCBERUxFVEUgcmVxdWVzdC5cbiAgICAgKiBAcGFyYW0gdXJsIFRoZSB0YXJnZXQgVVJMLlxuICAgICAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAgICogQHJldHVybnMgVGhlIHBhcnNlZCByZXNwb25zZSBvYmplY3QuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBkZWwodXJsOiBzdHJpbmcsIG9wdGlvbnM6IEh0dHBDbGllbnRSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cENsaWVudFJlc3BvbnNlIHtcbiAgICAgICAgcmV0dXJuIEh0dHBDbGllbnQuZGVsZXRlKHVybCwgb3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRXhlY3V0ZXMgYSBzeW5jaHJvbm91cyBIVFRQIEhFQUQgcmVxdWVzdCAoZmV0Y2hlcyBoZWFkZXJzIG9ubHkpLlxuICAgICAqIEBwYXJhbSB1cmwgVGhlIHRhcmdldCBVUkwuXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIHJlc3BvbnNlIG9iamVjdC4gVGhlIGJvZHkgKGB0ZXh0YCBhbmQgYGRhdGFgKSB3aWxsIHR5cGljYWxseSBiZSBlbXB0eS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGhlYWQodXJsOiBzdHJpbmcsIG9wdGlvbnM6IEh0dHBDbGllbnRSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cENsaWVudFJlc3BvbnNlIHtcbiAgICAgICAgY29uc3QgcmVxdWVzdFVybCA9IEh0dHBDbGllbnQuYnVpbGRVcmwodXJsLCBvcHRpb25zKTtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBIdHRwQ2xpZW50RmFjYWRlLmhlYWQocmVxdWVzdFVybCwgSlNPTi5zdHJpbmdpZnkob3B0aW9ucykpO1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXNwb25zZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRXhlY3V0ZXMgYSBzeW5jaHJvbm91cyBIVFRQIFRSQUNFIHJlcXVlc3QuXG4gICAgICogQHBhcmFtIHVybCBUaGUgdGFyZ2V0IFVSTC5cbiAgICAgKiBAcGFyYW0gb3B0aW9ucyBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgICAqIEByZXR1cm5zIFRoZSBwYXJzZWQgcmVzcG9uc2Ugb2JqZWN0LlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgdHJhY2UodXJsOiBzdHJpbmcsIG9wdGlvbnM6IEh0dHBDbGllbnRSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cENsaWVudFJlc3BvbnNlIHtcbiAgICAgICAgY29uc3QgcmVxdWVzdFVybCA9IEh0dHBDbGllbnQuYnVpbGRVcmwodXJsLCBvcHRpb25zKTtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBIdHRwQ2xpZW50RmFjYWRlLnRyYWNlKHJlcXVlc3RVcmwsIEpTT04uc3RyaW5naWZ5KG9wdGlvbnMpKTtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UocmVzcG9uc2UpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBwcml2YXRlXG4gICAgICogQnVpbGRzIHRoZSByZXF1ZXN0IFVSTCBieSBhcHBlbmRpbmcgcXVlcnkgcGFyYW1ldGVycyBmcm9tIG9wdGlvbnMucGFyYW1zLFxuICAgICAqIHRoZW4gcmVtb3ZlcyBgcGFyYW1zYCBmcm9tIHRoZSBvcHRpb25zIG9iamVjdCBiZWZvcmUgcGFzc2luZyBpdCB0byB0aGUgSmF2YSBGYWNhZGUuXG4gICAgICogQHBhcmFtIHVybCBUaGUgYmFzZSBVUkwuXG4gICAgICogQHBhcmFtIG9wdGlvbnMgVGhlIHJlcXVlc3Qgb3B0aW9ucyBvYmplY3QuXG4gICAgICogQHJldHVybnMgVGhlIFVSTCB3aXRoIGFwcGVuZGVkIHF1ZXJ5IHBhcmFtZXRlcnMuXG4gICAgICovXG4gICAgcHJpdmF0ZSBzdGF0aWMgYnVpbGRVcmwodXJsOiBzdHJpbmcsIG9wdGlvbnM6IEh0dHBDbGllbnRSZXF1ZXN0T3B0aW9ucyk6IHN0cmluZyB7XG4gICAgICAgIGlmICghb3B0aW9ucyB8fCAhb3B0aW9ucy5wYXJhbXMgfHwgb3B0aW9ucy5wYXJhbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdXJsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHByb2Nlc3NlZFVybCA9IHVybDtcbiAgICAgICAgbGV0IGZpcnN0UGFyYW0gPSB0cnVlO1xuXG4gICAgICAgIGZvciAoY29uc3QgcGFyYW0gb2Ygb3B0aW9ucy5wYXJhbXMpIHtcbiAgICAgICAgICAgIGlmIChmaXJzdFBhcmFtKSB7XG4gICAgICAgICAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIG9yaWdpbmFsIFVSTCBhbHJlYWR5IGhhcyBxdWVyeSBwYXJhbWV0ZXJzXG4gICAgICAgICAgICAgICAgaWYgKHByb2Nlc3NlZFVybC5pbmNsdWRlcygnPycpKSB7XG4gICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZFVybCArPSAnJic7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2VkVXJsICs9ICc/JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlyc3RQYXJhbSA9IGZhbHNlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwcm9jZXNzZWRVcmwgKz0gJyYnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBTaW1wbGUgVVJMIGVuY29kaW5nIG9mIHRoZSB2YWx1ZSBpcyBhc3N1bWVkIGhlcmUgZm9yIGJhc2ljIG9wZXJhdGlvblxuICAgICAgICAgICAgcHJvY2Vzc2VkVXJsICs9IGAke3BhcmFtLm5hbWV9PSR7cGFyYW0udmFsdWV9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJlbW92ZSBwYXJhbXMgZnJvbSBvcHRpb25zIGJlY2F1c2UgdGhleSBhcmUgbm93IHBhcnQgb2YgdGhlIFVSTCBzdHJpbmcuXG4gICAgICAgIGRlbGV0ZSBvcHRpb25zLnBhcmFtcztcblxuICAgICAgICByZXR1cm4gcHJvY2Vzc2VkVXJsO1xuICAgIH1cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBIdHRwQ2xpZW50O1xufSJdLAogICJtYXBwaW5ncyI6ICJBQUtBLE1BQU0sbUJBQW1CLEtBQUssS0FBSyw0REFBNEQ7QUFrSHhGLE1BQU0sV0FBVztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUXBCLE9BQWMsSUFBSSxLQUFhLFVBQW9DLENBQUMsR0FBdUI7QUFDdkYsVUFB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
@@ -0,0 +1,47 @@
1
+ import * as rs from "@aerokit/sdk/http/rs";
2
+ const router = rs.service();
3
+ let instance = null;
4
+ function Controller(ctr, context) {
5
+ instance = new ctr();
6
+ router.execute();
7
+ }
8
+ function Documentation(documentation) {
9
+ return function(value, context) {
10
+ };
11
+ }
12
+ const Get = createRequestDecorator("get");
13
+ const Post = createRequestDecorator("post");
14
+ const Put = createRequestDecorator("put");
15
+ const Patch = createRequestDecorator("patch");
16
+ const Delete = createRequestDecorator("delete");
17
+ const Head = createRequestDecorator("head");
18
+ const Options = createRequestDecorator("options");
19
+ function createRequestDecorator(httpMethod) {
20
+ return function(path, consumesMimeTypes = ["*/*"], producesMimeTypes = ["application/json"]) {
21
+ return function(target, propertyKey, descriptor) {
22
+ const handler = descriptor ? descriptor.value : target;
23
+ router.resource(path)[httpMethod]((ctx, req, res) => {
24
+ handleRequest(req, res, ctx, handler);
25
+ }).consumes(consumesMimeTypes).produces(producesMimeTypes);
26
+ };
27
+ };
28
+ }
29
+ function handleRequest(req, res, ctx, handler) {
30
+ const body = req.json();
31
+ const maybeResponseBody = handler.apply(instance || {}, [body, ctx, req, res]);
32
+ if (maybeResponseBody) {
33
+ res.json(maybeResponseBody);
34
+ }
35
+ }
36
+ export {
37
+ Controller,
38
+ Delete,
39
+ Documentation,
40
+ Get,
41
+ Head,
42
+ Options,
43
+ Patch,
44
+ Post,
45
+ Put
46
+ };
47
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvZGVjb3JhdG9ycy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0ICogYXMgcnMgZnJvbSBcIkBhZXJva2l0L3Nkay9odHRwL3JzXCJcblxuY29uc3Qgcm91dGVyID0gcnMuc2VydmljZSgpO1xubGV0IGluc3RhbmNlID0gbnVsbDtcblxuZXhwb3J0IGZ1bmN0aW9uIENvbnRyb2xsZXIoY3RyOiB7IG5ldygpIH0sIGNvbnRleHQ6IENsYXNzRGVjb3JhdG9yQ29udGV4dCk6IHZvaWQge1xuICAgIGluc3RhbmNlID0gbmV3IGN0cigpO1xuICAgIHJvdXRlci5leGVjdXRlKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBEb2N1bWVudGF0aW9uKGRvY3VtZW50YXRpb246IHN0cmluZykge1xuICByZXR1cm4gZnVuY3Rpb24gKFxuICAgIHZhbHVlOiBhbnksXG4gICAgY29udGV4dDogQ2xhc3NEZWNvcmF0b3JDb250ZXh0IHwgQ2xhc3NGaWVsZERlY29yYXRvckNvbnRleHQgfCBDbGFzc01ldGhvZERlY29yYXRvckNvbnRleHRcbiAgKSB7fTtcbn1cblxuZXhwb3J0IGNvbnN0IEdldCA9IGNyZWF0ZVJlcXVlc3REZWNvcmF0b3IoXCJnZXRcIilcbmV4cG9ydCBjb25zdCBQb3N0ID0gY3JlYXRlUmVxdWVzdERlY29yYXRvcihcInBvc3RcIilcbmV4cG9ydCBjb25zdCBQdXQgPSBjcmVhdGVSZXF1ZXN0RGVjb3JhdG9yKFwicHV0XCIpXG5leHBvcnQgY29uc3QgUGF0Y2ggPSBjcmVhdGVSZXF1ZXN0RGVjb3JhdG9yKFwicGF0Y2hcIilcbmV4cG9ydCBjb25zdCBEZWxldGUgPSBjcmVhdGVSZXF1ZXN0RGVjb3JhdG9yKFwiZGVsZXRlXCIpXG5leHBvcnQgY29uc3QgSGVhZCA9IGNyZWF0ZVJlcXVlc3REZWNvcmF0b3IoXCJoZWFkXCIpXG5leHBvcnQgY29uc3QgT3B0aW9ucyA9IGNyZWF0ZVJlcXVlc3REZWNvcmF0b3IoXCJvcHRpb25zXCIpXG5cbmZ1bmN0aW9uIGNyZWF0ZVJlcXVlc3REZWNvcmF0b3IoaHR0cE1ldGhvZCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAocGF0aDogc3RyaW5nLCBjb25zdW1lc01pbWVUeXBlczogdW5kZWZpbmVkIHwgc3RyaW5nIHwgc3RyaW5nW10gPSBbJyovKiddLCBwcm9kdWNlc01pbWVUeXBlczogdW5kZWZpbmVkIHwgc3RyaW5nIHwgc3RyaW5nW10gPSBbJ2FwcGxpY2F0aW9uL2pzb24nXSk6IGFueSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0LCBwcm9wZXJ0eUtleSwgZGVzY3JpcHRvcikge1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlciA9IGRlc2NyaXB0b3IgPyBkZXNjcmlwdG9yLnZhbHVlIDogdGFyZ2V0O1xuICAgICAgICAgICAgcm91dGVyLnJlc291cmNlKHBhdGgpW2h0dHBNZXRob2RdKChjdHgsIHJlcSwgcmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlUmVxdWVzdChyZXEsIHJlcywgY3R4LCBoYW5kbGVyKTtcbiAgICAgICAgICAgIH0pLmNvbnN1bWVzKGNvbnN1bWVzTWltZVR5cGVzKS5wcm9kdWNlcyhwcm9kdWNlc01pbWVUeXBlcyk7XG4gICAgICAgIH07XG4gICAgfVxufVxuXG5mdW5jdGlvbiBoYW5kbGVSZXF1ZXN0KHJlcSwgcmVzLCBjdHgsIGhhbmRsZXIpIHtcbiAgICBjb25zdCBib2R5ID0gcmVxLmpzb24oKTtcbiAgICBjb25zdCBtYXliZVJlc3BvbnNlQm9keSA9IGhhbmRsZXIuYXBwbHkoaW5zdGFuY2UgfHwge30sIFtib2R5LCBjdHgsIHJlcSwgcmVzXSk7XG4gICAgaWYgKG1heWJlUmVzcG9uc2VCb2R5KSB7XG4gICAgICAgIHJlcy5qc29uKG1heWJlUmVzcG9uc2VCb2R5KTtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQSxZQUFZLFFBQVE7QUFFcEIsTUFBTSxTQUFTLEdBQUcsUUFBUTtBQUMxQixJQUFJLFdBQVc7QUFFUixTQUFTLFdBQVcsS0FBZ0IsU0FBc0M7QUFDN0UsYUFBVyxJQUFJLElBQUk7QUFDbkIsU0FBTyxRQUFRO0FBQ25CO0FBRU8sU0FBUyxjQUFjLGVBQXVCO0FBQ25ELFNBQU8sU0FDTCxPQUNBLFNBQ0E7QUFBQSxFQUFDO0FBQ0w7QUFFTyxNQUFNLE1BQU0sdUJBQXVCLEtBQUs7QUFDeEMsTUFBTSxPQUFPLHVCQUF1QixNQUFNO0FBQzFDLE1BQU0sTUFBTSx1QkFBdUIsS0FBSztBQUN4QyxNQUFNLFFBQVEsdUJBQXVCLE9BQU87QUFDNUMsTUFBTSxTQUFTLHVCQUF1QixRQUFRO0FBQzlDLE1BQU0sT0FBTyx1QkFBdUIsTUFBTTtBQUMxQyxNQUFNLFVBQVUsdUJBQXVCLFNBQVM7QUFFdkQsU0FBUyx1QkFBdUIsWUFBWTtBQUN4QyxTQUFPLFNBQVUsTUFBYyxvQkFBbUQsQ0FBQyxLQUFLLEdBQUcsb0JBQW1ELENBQUMsa0JBQWtCLEdBQVE7QUFDckssV0FBTyxTQUFVLFFBQVEsYUFBYSxZQUFZO0FBQzlDLFlBQU0sVUFBVSxhQUFhLFdBQVcsUUFBUTtBQUNoRCxhQUFPLFNBQVMsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLEtBQUssS0FBSyxRQUFRO0FBQ2pELHNCQUFjLEtBQUssS0FBSyxLQUFLLE9BQU87QUFBQSxNQUN4QyxDQUFDLEVBQUUsU0FBUyxpQkFBaUIsRUFBRSxTQUFTLGlCQUFpQjtBQUFBLElBQzdEO0FBQUEsRUFDSjtBQUNKO0FBRUEsU0FBUyxjQUFjLEtBQUssS0FBSyxLQUFLLFNBQVM7QUFDM0MsUUFBTSxPQUFPLElBQUksS0FBSztBQUN0QixRQUFNLG9CQUFvQixRQUFRLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssS0FBSyxHQUFHLENBQUM7QUFDN0UsTUFBSSxtQkFBbUI7QUFDbkIsUUFBSSxLQUFLLGlCQUFpQjtBQUFBLEVBQzlCO0FBQ0o7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1,22 @@
1
+ class ForbiddenError extends Error {
2
+ /**
3
+ * Creates an instance of ForbiddenError.
4
+ *
5
+ * @param message The error message. Defaults to "You don't have permission to access this resource".
6
+ */
7
+ constructor(message = "You don't have permission to access this resource") {
8
+ super(message);
9
+ /**
10
+ * The name of the error, set to "ForbiddenError".
11
+ */
12
+ this.name = "ForbiddenError";
13
+ /**
14
+ * Captures the stack trace when the error is instantiated.
15
+ */
16
+ this.stack = new Error().stack;
17
+ }
18
+ }
19
+ export {
20
+ ForbiddenError
21
+ };
22
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2h0dHAvZXJyb3JzL0ZvcmJpZGRlbkVycm9yLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEN1c3RvbSBlcnJvciBjbGFzcyByZXByZXNlbnRpbmcgYSA0MDMgRm9yYmlkZGVuIHN0YXR1cywgaW5kaWNhdGluZ1xuICogdGhhdCB0aGUgdXNlciBkb2VzIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gYWNjZXNzIHRoZSByZXF1ZXN0ZWQgcmVzb3VyY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBGb3JiaWRkZW5FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgZXJyb3IsIHNldCB0byBcIkZvcmJpZGRlbkVycm9yXCIuXG4gICAgICovXG4gICAgcmVhZG9ubHkgbmFtZSA9IFwiRm9yYmlkZGVuRXJyb3JcIjtcbiAgICAvKipcbiAgICAgKiBDYXB0dXJlcyB0aGUgc3RhY2sgdHJhY2Ugd2hlbiB0aGUgZXJyb3IgaXMgaW5zdGFudGlhdGVkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN0YWNrID0gKG5ldyBFcnJvcigpKS5zdGFjaztcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRm9yYmlkZGVuRXJyb3IuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgZXJyb3IgbWVzc2FnZS4gRGVmYXVsdHMgdG8gXCJZb3UgZG9uJ3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyB0aGlzIHJlc291cmNlXCIuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nID0gXCJZb3UgZG9uJ3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyB0aGlzIHJlc291cmNlXCIpIHtcbiAgICAgICAgc3VwZXIobWVzc2FnZSk7XG4gICAgfVxufSJdLAogICJtYXBwaW5ncyI6ICJBQUlPLE1BQU0sdUJBQXVCLE1BQU07QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFldEMsWUFBWSxVQUFrQixxREFBcUQ7QUFDL0UsVUFBTSxPQUFPO0FBWmpCO0FBQUE7QUFBQTtBQUFBLFNBQVMsT0FBTztBQUloQjtBQUFBO0FBQUE7QUFBQSxTQUFTLFFBQVMsSUFBSSxNQUFNLEVBQUc7QUFBQSxFQVMvQjtBQUNKOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,22 @@
1
+ class ValidationError extends Error {
2
+ /**
3
+ * Creates an instance of ValidationError.
4
+ *
5
+ * @param message The detailed message describing the validation failure.
6
+ */
7
+ constructor(message) {
8
+ super(message);
9
+ /**
10
+ * The name of the error, set to "ValidationError".
11
+ */
12
+ this.name = "ValidationError";
13
+ /**
14
+ * Captures the stack trace when the error is instantiated.
15
+ */
16
+ this.stack = new Error().stack;
17
+ }
18
+ }
19
+ export {
20
+ ValidationError
21
+ };
22
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL2h0dHAvZXJyb3JzL1ZhbGlkYXRpb25FcnJvci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDdXN0b20gZXJyb3IgY2xhc3MgdXNlZCBmb3IgcmVwcmVzZW50aW5nIGZhaWx1cmVzIGR1ZSB0byBpbnZhbGlkIGlucHV0XG4gKiBvciBkYXRhIHRoYXQgdmlvbGF0ZXMgZG9tYWluLXNwZWNpZmljIHZhbGlkYXRpb24gcnVsZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGVycm9yLCBzZXQgdG8gXCJWYWxpZGF0aW9uRXJyb3JcIi5cbiAgICAgKi9cbiAgICByZWFkb25seSBuYW1lID0gXCJWYWxpZGF0aW9uRXJyb3JcIjtcbiAgICAvKipcbiAgICAgKiBDYXB0dXJlcyB0aGUgc3RhY2sgdHJhY2Ugd2hlbiB0aGUgZXJyb3IgaXMgaW5zdGFudGlhdGVkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN0YWNrID0gKG5ldyBFcnJvcigpKS5zdGFjaztcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgVmFsaWRhdGlvbkVycm9yLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGRldGFpbGVkIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGUgdmFsaWRhdGlvbiBmYWlsdXJlLlxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgICAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB9XG59Il0sCiAgIm1hcHBpbmdzIjogIkFBSU8sTUFBTSx3QkFBd0IsTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWV2QyxZQUFZLFNBQWlCO0FBQ3pCLFVBQU0sT0FBTztBQVpqQjtBQUFBO0FBQUE7QUFBQSxTQUFTLE9BQU87QUFJaEI7QUFBQTtBQUFBO0FBQUEsU0FBUyxRQUFTLElBQUksTUFBTSxFQUFHO0FBQUEsRUFTL0I7QUFDSjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,7 @@
1
+ import { ForbiddenError } from "./errors/ForbiddenError";
2
+ import { ValidationError } from "./errors/ValidationError";
3
+ export {
4
+ ForbiddenError,
5
+ ValidationError
6
+ };
7
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvZXJyb3JzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJleHBvcnQgeyBGb3JiaWRkZW5FcnJvciB9IGZyb20gXCIuL2Vycm9ycy9Gb3JiaWRkZW5FcnJvclwiO1xuZXhwb3J0IHsgVmFsaWRhdGlvbkVycm9yIH0gZnJvbSBcIi4vZXJyb3JzL1ZhbGlkYXRpb25FcnJvclwiOyJdLAogICJtYXBwaW5ncyI6ICJBQUFBLFNBQVMsc0JBQXNCO0FBQy9CLFNBQVMsdUJBQXVCOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,29 @@
1
+ import * as asyncClient from "./client-async";
2
+ export * from "./client";
3
+ import { HttpClient } from "./client";
4
+ import * as decorators from "./decorators";
5
+ export * from "./decorators";
6
+ export * from "./request";
7
+ import { Request } from "./request";
8
+ export * from "./response";
9
+ import { Response } from "./response";
10
+ import * as rs from "./rs";
11
+ export * from "./session";
12
+ import { Session } from "./session";
13
+ export * from "./upload";
14
+ import { Upload } from "./upload";
15
+ import * as errors from "./errors";
16
+ import { HttpUtils } from "./utils";
17
+ export {
18
+ asyncClient,
19
+ HttpClient as client,
20
+ decorators,
21
+ errors,
22
+ Request as request,
23
+ Response as response,
24
+ rs,
25
+ Session as session,
26
+ Upload as upload,
27
+ HttpUtils as utils
28
+ };
29
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvaW5kZXgudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImV4cG9ydCAqIGFzIGFzeW5jQ2xpZW50IGZyb20gXCIuL2NsaWVudC1hc3luY1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY2xpZW50XCI7XG5leHBvcnQgeyBIdHRwQ2xpZW50IGFzIGNsaWVudCB9IGZyb20gXCIuL2NsaWVudFwiO1xuZXhwb3J0ICogYXMgZGVjb3JhdG9ycyBmcm9tIFwiLi9kZWNvcmF0b3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kZWNvcmF0b3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXF1ZXN0XCI7XG5leHBvcnQgeyBSZXF1ZXN0IGFzIHJlcXVlc3QgfSBmcm9tIFwiLi9yZXF1ZXN0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNwb25zZVwiO1xuZXhwb3J0IHsgUmVzcG9uc2UgYXMgcmVzcG9uc2UgfSBmcm9tIFwiLi9yZXNwb25zZVwiO1xuZXhwb3J0ICogYXMgcnMgZnJvbSBcIi4vcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Nlc3Npb25cIjtcbmV4cG9ydCB7IFNlc3Npb24gYXMgc2Vzc2lvbiB9IGZyb20gXCIuL3Nlc3Npb25cIjtcbmV4cG9ydCAqIGZyb20gXCIuL3VwbG9hZFwiO1xuZXhwb3J0IHsgVXBsb2FkIGFzIHVwbG9hZCB9IGZyb20gXCIuL3VwbG9hZFwiO1xuZXhwb3J0ICogYXMgZXJyb3JzIGZyb20gXCIuL2Vycm9yc1wiO1xuZXhwb3J0IHsgSHR0cFV0aWxzIGFzIHV0aWxzIH0gZnJvbSBcIi4vdXRpbHNcIjtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBLFlBQVksaUJBQWlCO0FBQzdCLGNBQWM7QUFDZCxTQUF1QixrQkFBYztBQUNyQyxZQUFZLGdCQUFnQjtBQUM1QixjQUFjO0FBQ2QsY0FBYztBQUNkLFNBQW9CLGVBQWU7QUFDbkMsY0FBYztBQUNkLFNBQXFCLGdCQUFnQjtBQUNyQyxZQUFZLFFBQVE7QUFDcEIsY0FBYztBQUNkLFNBQW9CLGVBQWU7QUFDbkMsY0FBYztBQUNkLFNBQW1CLGNBQWM7QUFDakMsWUFBWSxZQUFZO0FBQ3hCLFNBQXNCLGlCQUFhOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,262 @@
1
+ import { Streams } from "@aerokit/sdk/io/streams";
2
+ const HttpRequestFacade = Java.type("org.eclipse.dirigible.components.api.http.HttpRequestFacade");
3
+ class Request {
4
+ /**
5
+ * Determines whether the current thread is handling a valid HTTP request.
6
+ *
7
+ * @returns `true` if called in a valid HTTP request context, otherwise `false`.
8
+ */
9
+ static isValid() {
10
+ return HttpRequestFacade.isValid();
11
+ }
12
+ /** Returns the HTTP method (GET, POST, PUT, DELETE, etc.). */
13
+ static getMethod() {
14
+ return HttpRequestFacade.getMethod();
15
+ }
16
+ /** Returns the authenticated remote user name if available. */
17
+ static getRemoteUser() {
18
+ return HttpRequestFacade.getRemoteUser();
19
+ }
20
+ /** Returns the portion of the request path following the servlet path. */
21
+ static getPathInfo() {
22
+ return HttpRequestFacade.getPathInfo();
23
+ }
24
+ /** Returns the translated file system path for the request. */
25
+ static getPathTranslated() {
26
+ return HttpRequestFacade.getPathTranslated();
27
+ }
28
+ /**
29
+ * Returns the value of a specific HTTP header.
30
+ *
31
+ * @param name - Header name to retrieve.
32
+ * @returns The header value or `undefined` if not found.
33
+ */
34
+ static getHeader(name) {
35
+ const header = HttpRequestFacade.getHeader(name);
36
+ return header ? header : void 0;
37
+ }
38
+ /**
39
+ * Checks whether the remote user has the given role.
40
+ *
41
+ * @param role - The role name to check.
42
+ */
43
+ static isUserInRole(role) {
44
+ return HttpRequestFacade.isUserInRole(role);
45
+ }
46
+ /**
47
+ * Returns a request attribute value previously associated with the request.
48
+ *
49
+ * @param name - The attribute name.
50
+ * @returns A string value or `undefined`.
51
+ */
52
+ static getAttribute(name) {
53
+ const attribute = HttpRequestFacade.getAttribute(name);
54
+ return attribute ? attribute : void 0;
55
+ }
56
+ /** Returns the authentication type if known (BASIC, CLIENT_CERT, etc.). */
57
+ static getAuthType() {
58
+ return HttpRequestFacade.getAuthType();
59
+ }
60
+ /**
61
+ * Returns all cookies sent with the request.
62
+ *
63
+ * @returns An array of Cookie objects.
64
+ */
65
+ static getCookies() {
66
+ return JSON.parse(HttpRequestFacade.getCookies());
67
+ }
68
+ /** Returns all available request attribute names. */
69
+ static getAttributeNames() {
70
+ return JSON.parse(HttpRequestFacade.getAttributeNames());
71
+ }
72
+ /** Returns the character encoding used in the request body. */
73
+ static getCharacterEncoding() {
74
+ return HttpRequestFacade.getCharacterEncoding();
75
+ }
76
+ /** Returns the size of the request body in bytes, if known. */
77
+ static getContentLength() {
78
+ return HttpRequestFacade.getContentLength();
79
+ }
80
+ /**
81
+ * Returns all values of a specific header.
82
+ *
83
+ * @param name - Header name to retrieve.
84
+ */
85
+ static getHeaders(name) {
86
+ return JSON.parse(HttpRequestFacade.getHeaders(name));
87
+ }
88
+ /** Returns the MIME content type of the request body. */
89
+ static getContentType() {
90
+ return HttpRequestFacade.getContentType();
91
+ }
92
+ /** Returns the raw request body as a byte array. */
93
+ static getBytes() {
94
+ return JSON.parse(HttpRequestFacade.getBytes());
95
+ }
96
+ /**
97
+ * Returns the request body as text. This is computed once and cached.
98
+ */
99
+ static getText() {
100
+ if (!Request.TEXT_DATA) {
101
+ Request.TEXT_DATA = HttpRequestFacade.getText();
102
+ }
103
+ return Request.TEXT_DATA;
104
+ }
105
+ /**
106
+ * Returns the request body parsed as JSON if valid.
107
+ *
108
+ * @returns A JSON object or `undefined` if parsing fails.
109
+ */
110
+ static json() {
111
+ return Request.getJSON();
112
+ }
113
+ /** Same as json(); explicit form. */
114
+ static getJSON() {
115
+ try {
116
+ return JSON.parse(Request.getText());
117
+ } catch (e) {
118
+ return void 0;
119
+ }
120
+ }
121
+ /** Returns a request parameter value. */
122
+ static getParameter(name) {
123
+ return HttpRequestFacade.getParameter(name);
124
+ }
125
+ /** Returns a map of request parameters to arrays of values. */
126
+ static getParameters() {
127
+ return JSON.parse(HttpRequestFacade.getParameters());
128
+ }
129
+ /** Returns the allocated request resource path. */
130
+ static getResourcePath() {
131
+ return HttpRequestFacade.getResourcePath();
132
+ }
133
+ /** Returns all header names. */
134
+ static getHeaderNames() {
135
+ return JSON.parse(HttpRequestFacade.getHeaderNames());
136
+ }
137
+ /** Returns all parameter names. */
138
+ static getParameterNames() {
139
+ return JSON.parse(HttpRequestFacade.getParameterNames());
140
+ }
141
+ /** Returns all values for a given parameter name. */
142
+ static getParameterValues(name) {
143
+ return JSON.parse(HttpRequestFacade.getParameterValues(name));
144
+ }
145
+ /** Returns the HTTP protocol version. */
146
+ static getProtocol() {
147
+ return HttpRequestFacade.getProtocol();
148
+ }
149
+ /** Returns the transport scheme (e.g., http, https). */
150
+ static getScheme() {
151
+ return HttpRequestFacade.getScheme();
152
+ }
153
+ /** Returns the context path of the request. */
154
+ static getContextPath() {
155
+ return HttpRequestFacade.getContextPath();
156
+ }
157
+ /** Returns the server host name. */
158
+ static getServerName() {
159
+ return HttpRequestFacade.getServerName();
160
+ }
161
+ /** Returns the server port number. */
162
+ static getServerPort() {
163
+ return HttpRequestFacade.getServerPort();
164
+ }
165
+ /** Returns the full raw query string. */
166
+ static getQueryString() {
167
+ return HttpRequestFacade.getQueryString();
168
+ }
169
+ /**
170
+ * Parses the query string and returns a map of parameter keys to values.
171
+ * If the same key appears multiple times, values are collected into arrays.
172
+ */
173
+ static getQueryParametersMap() {
174
+ let queryString = Request.getQueryString();
175
+ if (!queryString)
176
+ return {};
177
+ queryString = decodeURI(queryString);
178
+ let queryStringSegments = queryString.split("&");
179
+ let queryMap = {};
180
+ queryStringSegments.forEach(function(seg) {
181
+ seg = seg.replace("amp;", "");
182
+ const kv = seg.split("=");
183
+ const key = kv[0].trim();
184
+ const value = kv[1] === void 0 ? true : kv[1].trim();
185
+ if (queryMap[key] !== void 0) {
186
+ if (!Array.isArray(queryMap[key]))
187
+ queryMap[key] = [queryMap[key]];
188
+ queryMap[key].push(value);
189
+ } else {
190
+ queryMap[key] = value;
191
+ }
192
+ });
193
+ return queryMap;
194
+ }
195
+ /** Returns the remote client IP address. */
196
+ static getRemoteAddress() {
197
+ return HttpRequestFacade.getRemoteAddress();
198
+ }
199
+ /** Returns the remote client host name. */
200
+ static getRemoteHost() {
201
+ return HttpRequestFacade.getRemoteHost();
202
+ }
203
+ /** Assigns a new attribute to the request. */
204
+ static setAttribute(name, value) {
205
+ HttpRequestFacade.setAttribute(name, value);
206
+ }
207
+ /** Removes an attribute from the request. */
208
+ static removeAttribute(name) {
209
+ HttpRequestFacade.removeAttribute(name);
210
+ }
211
+ /** Returns the client locale preferences. */
212
+ static getLocale() {
213
+ return JSON.parse(HttpRequestFacade.getLocale());
214
+ }
215
+ /** Returns the full request URI. */
216
+ static getRequestURI() {
217
+ return HttpRequestFacade.getRequestURI();
218
+ }
219
+ /** Returns `true` if the request was made over HTTPS. */
220
+ static isSecure() {
221
+ return HttpRequestFacade.isSecure();
222
+ }
223
+ /** Returns the full request URL including protocol and host. */
224
+ static getRequestURL() {
225
+ return HttpRequestFacade.getRequestURL();
226
+ }
227
+ /** Returns the internal service path for routing. */
228
+ static getServicePath() {
229
+ return HttpRequestFacade.getServicePath();
230
+ }
231
+ /** Returns the remote client port number. */
232
+ static getRemotePort() {
233
+ return HttpRequestFacade.getRemotePort();
234
+ }
235
+ /** Returns the local network host name. */
236
+ static getLocalName() {
237
+ return HttpRequestFacade.getLocalName();
238
+ }
239
+ /** Returns the local IP address. */
240
+ static getLocalAddress() {
241
+ return HttpRequestFacade.getLocalAddress();
242
+ }
243
+ /** Returns the server local port number handling the request. */
244
+ static getLocalPort() {
245
+ return HttpRequestFacade.getLocalPort();
246
+ }
247
+ /**
248
+ * Returns the request body as a binary input stream.
249
+ *
250
+ * Useful for processing binary uploads.
251
+ */
252
+ static getInputStream() {
253
+ return Streams.createInputStream(HttpRequestFacade.getInputStream());
254
+ }
255
+ }
256
+ if (typeof module !== "undefined") {
257
+ module.exports = Request;
258
+ }
259
+ export {
260
+ Request
261
+ };
262
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvcmVxdWVzdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBUaGUgUmVxdWVzdCBBUEkgdW5kZXIgdGhlIEhUVFAgbW9kdWxlIGlzIHJlc3BvbnNpYmxlIGZvclxuICogbWFuYWdpbmcgc3RhbmRhcmQgSFRUUCByZXF1ZXN0IHBhcmFtZXRlcnMsIGhlYWRlcnMsIGNvb2tpZXMsXG4gKiBhbmQgcmVxdWVzdCBtZXRhZGF0YSBwcm92aWRlZCB0byBzZXJ2ZXItc2lkZSBzY3JpcHRpbmcgc2VydmljZXMuXG4gKlxuICovXG5cbmltcG9ydCB7IElucHV0U3RyZWFtLCBTdHJlYW1zIH0gZnJvbSBcIkBhZXJva2l0L3Nkay9pby9zdHJlYW1zXCI7XG5pbXBvcnQgeyBDb29raWUgfSBmcm9tIFwiLi9yZXNwb25zZVwiO1xuXG5jb25zdCBIdHRwUmVxdWVzdEZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS5odHRwLkh0dHBSZXF1ZXN0RmFjYWRlXCIpO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIEhUVFAgUmVxdWVzdCBvYmplY3QgYXZhaWxhYmxlIHdpdGhpbiBhIHNlcnZpY2UgZXhlY3V0aW9uXG4gKiBjb250ZXh0LiBJdCBwcm92aWRlcyBhY2Nlc3MgdG8gSFRUUCBtZXRhZGF0YSwgcXVlcnkgcGFyYW1ldGVycywgcmVxdWVzdFxuICogYm9keSBjb250ZW50LCBjb29raWVzLCBhbmQgc2VjdXJpdHkgaW5mb3JtYXRpb24uXG4gKlxuICogQWxsIGZ1bmN0aW9ucyBpbiB0aGlzIGNsYXNzIGFyZSBzdGF0aWM6IG5vIGluc3RhbmNlIG9mIGBSZXF1ZXN0YFxuICogbmVlZHMgdG8gYmUgY3JlYXRlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlcXVlc3Qge1xuXG4gICAgcHJpdmF0ZSBzdGF0aWMgVEVYVF9EQVRBOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGN1cnJlbnQgdGhyZWFkIGlzIGhhbmRsaW5nIGEgdmFsaWQgSFRUUCByZXF1ZXN0LlxuICAgICAqXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIGNhbGxlZCBpbiBhIHZhbGlkIEhUVFAgcmVxdWVzdCBjb250ZXh0LCBvdGhlcndpc2UgYGZhbHNlYC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5pc1ZhbGlkKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIEhUVFAgbWV0aG9kIChHRVQsIFBPU1QsIFBVVCwgREVMRVRFLCBldGMuKS4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldE1ldGhvZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0TWV0aG9kKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIGF1dGhlbnRpY2F0ZWQgcmVtb3RlIHVzZXIgbmFtZSBpZiBhdmFpbGFibGUuICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRSZW1vdGVVc2VyKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRSZW1vdGVVc2VyKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIHBvcnRpb24gb2YgdGhlIHJlcXVlc3QgcGF0aCBmb2xsb3dpbmcgdGhlIHNlcnZsZXQgcGF0aC4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFBhdGhJbmZvKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRQYXRoSW5mbygpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSB0cmFuc2xhdGVkIGZpbGUgc3lzdGVtIHBhdGggZm9yIHRoZSByZXF1ZXN0LiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UGF0aFRyYW5zbGF0ZWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldFBhdGhUcmFuc2xhdGVkKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgYSBzcGVjaWZpYyBIVFRQIGhlYWRlci5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBuYW1lIC0gSGVhZGVyIG5hbWUgdG8gcmV0cmlldmUuXG4gICAgICogQHJldHVybnMgVGhlIGhlYWRlciB2YWx1ZSBvciBgdW5kZWZpbmVkYCBpZiBub3QgZm91bmQuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRIZWFkZXIobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgaGVhZGVyID0gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0SGVhZGVyKG5hbWUpO1xuICAgICAgICByZXR1cm4gaGVhZGVyID8gaGVhZGVyIDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyB3aGV0aGVyIHRoZSByZW1vdGUgdXNlciBoYXMgdGhlIGdpdmVuIHJvbGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcm9sZSAtIFRoZSByb2xlIG5hbWUgdG8gY2hlY2suXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpc1VzZXJJblJvbGUocm9sZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5pc1VzZXJJblJvbGUocm9sZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIHJlcXVlc3QgYXR0cmlidXRlIHZhbHVlIHByZXZpb3VzbHkgYXNzb2NpYXRlZCB3aXRoIHRoZSByZXF1ZXN0LlxuICAgICAqXG4gICAgICogQHBhcmFtIG5hbWUgLSBUaGUgYXR0cmlidXRlIG5hbWUuXG4gICAgICogQHJldHVybnMgQSBzdHJpbmcgdmFsdWUgb3IgYHVuZGVmaW5lZGAuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRBdHRyaWJ1dGUobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgYXR0cmlidXRlID0gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0QXR0cmlidXRlKG5hbWUpO1xuICAgICAgICByZXR1cm4gYXR0cmlidXRlID8gYXR0cmlidXRlIDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBhdXRoZW50aWNhdGlvbiB0eXBlIGlmIGtub3duIChCQVNJQywgQ0xJRU5UX0NFUlQsIGV0Yy4pLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0QXV0aFR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldEF1dGhUeXBlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbGwgY29va2llcyBzZW50IHdpdGggdGhlIHJlcXVlc3QuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBDb29raWUgb2JqZWN0cy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldENvb2tpZXMoKTogQ29va2llW10ge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShIdHRwUmVxdWVzdEZhY2FkZS5nZXRDb29raWVzKCkpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIGFsbCBhdmFpbGFibGUgcmVxdWVzdCBhdHRyaWJ1dGUgbmFtZXMuICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRBdHRyaWJ1dGVOYW1lcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKEh0dHBSZXF1ZXN0RmFjYWRlLmdldEF0dHJpYnV0ZU5hbWVzKCkpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBjaGFyYWN0ZXIgZW5jb2RpbmcgdXNlZCBpbiB0aGUgcmVxdWVzdCBib2R5LiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0Q2hhcmFjdGVyRW5jb2RpbmcoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldENoYXJhY3RlckVuY29kaW5nKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIHNpemUgb2YgdGhlIHJlcXVlc3QgYm9keSBpbiBieXRlcywgaWYga25vd24uICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRDb250ZW50TGVuZ3RoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRDb250ZW50TGVuZ3RoKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbGwgdmFsdWVzIG9mIGEgc3BlY2lmaWMgaGVhZGVyLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5hbWUgLSBIZWFkZXIgbmFtZSB0byByZXRyaWV2ZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldEhlYWRlcnMobmFtZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShIdHRwUmVxdWVzdEZhY2FkZS5nZXRIZWFkZXJzKG5hbWUpKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyB0aGUgTUlNRSBjb250ZW50IHR5cGUgb2YgdGhlIHJlcXVlc3QgYm9keS4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldENvbnRlbnRUeXBlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRDb250ZW50VHlwZSgpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSByYXcgcmVxdWVzdCBib2R5IGFzIGEgYnl0ZSBhcnJheS4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldEJ5dGVzKCk6IGFueVtdIHtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoSHR0cFJlcXVlc3RGYWNhZGUuZ2V0Qnl0ZXMoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgcmVxdWVzdCBib2R5IGFzIHRleHQuIFRoaXMgaXMgY29tcHV0ZWQgb25jZSBhbmQgY2FjaGVkLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VGV4dCgpIHtcbiAgICAgICAgaWYgKCFSZXF1ZXN0LlRFWFRfREFUQSkge1xuICAgICAgICAgICAgUmVxdWVzdC5URVhUX0RBVEEgPSBIdHRwUmVxdWVzdEZhY2FkZS5nZXRUZXh0KCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFJlcXVlc3QuVEVYVF9EQVRBO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHJlcXVlc3QgYm9keSBwYXJzZWQgYXMgSlNPTiBpZiB2YWxpZC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIEEgSlNPTiBvYmplY3Qgb3IgYHVuZGVmaW5lZGAgaWYgcGFyc2luZyBmYWlscy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGpzb24oKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiBSZXF1ZXN0LmdldEpTT04oKTtcbiAgICB9XG5cbiAgICAvKiogU2FtZSBhcyBqc29uKCk7IGV4cGxpY2l0IGZvcm0uICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRKU09OKCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0gfCB1bmRlZmluZWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoUmVxdWVzdC5nZXRUZXh0KCkpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgYSByZXF1ZXN0IHBhcmFtZXRlciB2YWx1ZS4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFBhcmFtZXRlcihuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0UGFyYW1ldGVyKG5hbWUpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIGEgbWFwIG9mIHJlcXVlc3QgcGFyYW1ldGVycyB0byBhcnJheXMgb2YgdmFsdWVzLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UGFyYW1ldGVycygpOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZ1tdIH0ge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShIdHRwUmVxdWVzdEZhY2FkZS5nZXRQYXJhbWV0ZXJzKCkpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBhbGxvY2F0ZWQgcmVxdWVzdCByZXNvdXJjZSBwYXRoLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UmVzb3VyY2VQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRSZXNvdXJjZVBhdGgoKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyBhbGwgaGVhZGVyIG5hbWVzLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0SGVhZGVyTmFtZXMoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShIdHRwUmVxdWVzdEZhY2FkZS5nZXRIZWFkZXJOYW1lcygpKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyBhbGwgcGFyYW1ldGVyIG5hbWVzLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UGFyYW1ldGVyTmFtZXMoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShIdHRwUmVxdWVzdEZhY2FkZS5nZXRQYXJhbWV0ZXJOYW1lcygpKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyBhbGwgdmFsdWVzIGZvciBhIGdpdmVuIHBhcmFtZXRlciBuYW1lLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UGFyYW1ldGVyVmFsdWVzKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoSHR0cFJlcXVlc3RGYWNhZGUuZ2V0UGFyYW1ldGVyVmFsdWVzKG5hbWUpKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyB0aGUgSFRUUCBwcm90b2NvbCB2ZXJzaW9uLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UHJvdG9jb2woKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldFByb3RvY29sKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIHRyYW5zcG9ydCBzY2hlbWUgKGUuZy4sIGh0dHAsIGh0dHBzKS4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFNjaGVtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0U2NoZW1lKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIGNvbnRleHQgcGF0aCBvZiB0aGUgcmVxdWVzdC4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldENvbnRleHRQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRDb250ZXh0UGF0aCgpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBzZXJ2ZXIgaG9zdCBuYW1lLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0U2VydmVyTmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0U2VydmVyTmFtZSgpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBzZXJ2ZXIgcG9ydCBudW1iZXIuICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRTZXJ2ZXJQb3J0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRTZXJ2ZXJQb3J0KCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIGZ1bGwgcmF3IHF1ZXJ5IHN0cmluZy4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFF1ZXJ5U3RyaW5nKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRRdWVyeVN0cmluZygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhcnNlcyB0aGUgcXVlcnkgc3RyaW5nIGFuZCByZXR1cm5zIGEgbWFwIG9mIHBhcmFtZXRlciBrZXlzIHRvIHZhbHVlcy5cbiAgICAgKiBJZiB0aGUgc2FtZSBrZXkgYXBwZWFycyBtdWx0aXBsZSB0aW1lcywgdmFsdWVzIGFyZSBjb2xsZWN0ZWQgaW50byBhcnJheXMuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRRdWVyeVBhcmFtZXRlcnNNYXAoKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9IHtcbiAgICAgICAgbGV0IHF1ZXJ5U3RyaW5nID0gUmVxdWVzdC5nZXRRdWVyeVN0cmluZygpO1xuICAgICAgICBpZiAoIXF1ZXJ5U3RyaW5nKVxuICAgICAgICAgICAgcmV0dXJuIHt9XG5cbiAgICAgICAgcXVlcnlTdHJpbmcgPSBkZWNvZGVVUkkocXVlcnlTdHJpbmcpO1xuICAgICAgICBsZXQgcXVlcnlTdHJpbmdTZWdtZW50cyA9IHF1ZXJ5U3RyaW5nLnNwbGl0KCcmJyk7XG5cbiAgICAgICAgbGV0IHF1ZXJ5TWFwOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgICAgIHF1ZXJ5U3RyaW5nU2VnbWVudHMuZm9yRWFjaChmdW5jdGlvbiAoc2VnKSB7XG4gICAgICAgICAgICBzZWcgPSBzZWcucmVwbGFjZSgnYW1wOycsICcnKTtcbiAgICAgICAgICAgIGNvbnN0IGt2ID0gc2VnLnNwbGl0KCc9Jyk7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBrdlswXS50cmltKCk7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGt2WzFdID09PSB1bmRlZmluZWQgPyB0cnVlIDoga3ZbMV0udHJpbSgpO1xuICAgICAgICAgICAgaWYgKHF1ZXJ5TWFwW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShxdWVyeU1hcFtrZXldKSlcbiAgICAgICAgICAgICAgICAgICAgcXVlcnlNYXBba2V5XSA9IFtxdWVyeU1hcFtrZXldXTtcbiAgICAgICAgICAgICAgICBxdWVyeU1hcFtrZXldLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBxdWVyeU1hcFtrZXldID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcXVlcnlNYXA7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIHJlbW90ZSBjbGllbnQgSVAgYWRkcmVzcy4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFJlbW90ZUFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldFJlbW90ZUFkZHJlc3MoKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyB0aGUgcmVtb3RlIGNsaWVudCBob3N0IG5hbWUuICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRSZW1vdGVIb3N0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRSZW1vdGVIb3N0KCk7XG4gICAgfVxuXG4gICAgLyoqIEFzc2lnbnMgYSBuZXcgYXR0cmlidXRlIHRvIHRoZSByZXF1ZXN0LiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgc2V0QXR0cmlidXRlKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBIdHRwUmVxdWVzdEZhY2FkZS5zZXRBdHRyaWJ1dGUobmFtZSwgdmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBSZW1vdmVzIGFuIGF0dHJpYnV0ZSBmcm9tIHRoZSByZXF1ZXN0LiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgcmVtb3ZlQXR0cmlidXRlKG5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBIdHRwUmVxdWVzdEZhY2FkZS5yZW1vdmVBdHRyaWJ1dGUobmFtZSk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIGNsaWVudCBsb2NhbGUgcHJlZmVyZW5jZXMuICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRMb2NhbGUoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoSHR0cFJlcXVlc3RGYWNhZGUuZ2V0TG9jYWxlKCkpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBmdWxsIHJlcXVlc3QgVVJJLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UmVxdWVzdFVSSSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0UmVxdWVzdFVSSSgpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVxdWVzdCB3YXMgbWFkZSBvdmVyIEhUVFBTLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaXNTZWN1cmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5pc1NlY3VyZSgpO1xuICAgIH1cblxuICAgIC8qKiBSZXR1cm5zIHRoZSBmdWxsIHJlcXVlc3QgVVJMIGluY2x1ZGluZyBwcm90b2NvbCBhbmQgaG9zdC4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFJlcXVlc3RVUkwoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldFJlcXVlc3RVUkwoKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyB0aGUgaW50ZXJuYWwgc2VydmljZSBwYXRoIGZvciByb3V0aW5nLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0U2VydmljZVBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIEh0dHBSZXF1ZXN0RmFjYWRlLmdldFNlcnZpY2VQYXRoKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIHJlbW90ZSBjbGllbnQgcG9ydCBudW1iZXIuICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRSZW1vdGVQb3J0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRSZW1vdGVQb3J0KCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIGxvY2FsIG5ldHdvcmsgaG9zdCBuYW1lLiAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0TG9jYWxOYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBIdHRwUmVxdWVzdEZhY2FkZS5nZXRMb2NhbE5hbWUoKTtcbiAgICB9XG5cbiAgICAvKiogUmV0dXJucyB0aGUgbG9jYWwgSVAgYWRkcmVzcy4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldExvY2FsQWRkcmVzcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0TG9jYWxBZGRyZXNzKCk7XG4gICAgfVxuXG4gICAgLyoqIFJldHVybnMgdGhlIHNlcnZlciBsb2NhbCBwb3J0IG51bWJlciBoYW5kbGluZyB0aGUgcmVxdWVzdC4gKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldExvY2FsUG9ydCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gSHR0cFJlcXVlc3RGYWNhZGUuZ2V0TG9jYWxQb3J0KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgcmVxdWVzdCBib2R5IGFzIGEgYmluYXJ5IGlucHV0IHN0cmVhbS5cbiAgICAgKlxuICAgICAqIFVzZWZ1bCBmb3IgcHJvY2Vzc2luZyBiaW5hcnkgdXBsb2Fkcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldElucHV0U3RyZWFtKCk6IElucHV0U3RyZWFtIHtcbiAgICAgICAgcmV0dXJuIFN0cmVhbXMuY3JlYXRlSW5wdXRTdHJlYW0oSHR0cFJlcXVlc3RGYWNhZGUuZ2V0SW5wdXRTdHJlYW0oKSk7XG4gICAgfVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFJlcXVlc3Q7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFP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