@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,125 @@
1
+ import { InputStream } from "@aerokit/sdk/io/streams";
2
+ import { Bytes } from "@aerokit/sdk/io/bytes";
3
+ const HttpUploadFacade = Java.type("org.eclipse.dirigible.components.api.http.HttpUploadFacade");
4
+ class Upload {
5
+ /**
6
+ * Checks if the current incoming HTTP request contains multipart content
7
+ * (e.g., from an HTML form with `enctype="multipart/form-data"`).
8
+ * @returns True if the request is multipart, false otherwise.
9
+ */
10
+ static isMultipartContent() {
11
+ return HttpUploadFacade.isMultipartContent();
12
+ }
13
+ /**
14
+ * Parses the incoming multipart request content into a collection of file items.
15
+ * This operation typically consumes the request body.
16
+ * @returns A FileItems object representing all parts (files and form fields) of the request.
17
+ */
18
+ static parseRequest() {
19
+ return new FileItems(__context.get("files"));
20
+ }
21
+ }
22
+ class FileItems {
23
+ /**
24
+ * @param native The native Java collection object holding the file items.
25
+ */
26
+ constructor(native) {
27
+ this.native = native;
28
+ }
29
+ /**
30
+ * Retrieves a specific item (file or form field) by its index in the collection.
31
+ * @param index The zero-based index of the item.
32
+ * @returns A FileItem object representing the item at the specified index.
33
+ */
34
+ get(index) {
35
+ const native = this.native.get(index);
36
+ return new FileItem(native);
37
+ }
38
+ /**
39
+ * Returns the total number of items (files and form fields) in the collection.
40
+ * @returns The size of the collection.
41
+ */
42
+ size() {
43
+ return this.native.size();
44
+ }
45
+ }
46
+ class FileItem {
47
+ /**
48
+ * @param native The native Java object representing the file item.
49
+ */
50
+ constructor(native) {
51
+ this.native = native;
52
+ }
53
+ /**
54
+ * For a file upload, returns the original filename as reported by the client.
55
+ * For a regular form field, this is typically null or undefined.
56
+ * @returns The original filename string.
57
+ */
58
+ getName() {
59
+ return this.native.getOriginalFilename();
60
+ }
61
+ /**
62
+ * Returns the MIME type of the uploaded file or content part.
63
+ * @returns The content type string (e.g., 'image/png', 'text/plain').
64
+ */
65
+ getContentType() {
66
+ return this.native.getContentType();
67
+ }
68
+ /**
69
+ * Checks if the uploaded item is empty (e.g., a file upload with zero bytes).
70
+ * @returns True if the item is empty, false otherwise.
71
+ */
72
+ isEmpty() {
73
+ return this.native.isEmpty();
74
+ }
75
+ /**
76
+ * Returns the size of the uploaded item in bytes.
77
+ * @returns The size as a number.
78
+ */
79
+ getSize() {
80
+ return this.native.getSize();
81
+ }
82
+ /**
83
+ * Retrieves the content of the file item as a JavaScript array of bytes.
84
+ * This uses a utility (`Bytes.toJavaScriptBytes`) to convert the native Java byte array.
85
+ * @returns An array of bytes (`any[]`).
86
+ */
87
+ getBytes() {
88
+ const data = this.getBytesNative();
89
+ return Bytes.toJavaScriptBytes(data);
90
+ }
91
+ /**
92
+ * Retrieves the content of the file item as the native Java byte array.
93
+ * @returns The native byte array (`any[]`).
94
+ */
95
+ getBytesNative() {
96
+ return this.native.getBytes();
97
+ }
98
+ /**
99
+ * Retrieves the content of the file item as a string.
100
+ * Note: This assumes the content is text and may not handle all encodings correctly.
101
+ * It relies on JavaScript's `String.fromCharCode.apply` for conversion.
102
+ * @returns The content as a string.
103
+ */
104
+ getText() {
105
+ return String.fromCharCode.apply(null, this.getBytesNative());
106
+ }
107
+ /**
108
+ * Gets an input stream for reading the content of the file item.
109
+ * This is useful for handling large files without loading the entire content into memory.
110
+ * @returns An InputStream object wrapping the native input stream.
111
+ */
112
+ getInputStream() {
113
+ const native = this.native.getInputStream();
114
+ return new InputStream(native);
115
+ }
116
+ }
117
+ if (typeof module !== "undefined") {
118
+ module.exports = Upload;
119
+ }
120
+ export {
121
+ FileItem,
122
+ FileItems,
123
+ Upload
124
+ };
125
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvdXBsb2FkLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIGEgc3RhdGljIGZhXHUwMEU3YWRlIChgVXBsb2FkYCBjbGFzcykgZm9yIGNoZWNraW5nIGFuZCBwYXJzaW5nXG4gKiBtdWx0aXBhcnQvZm9ybS1kYXRhIEhUVFAgcmVxdWVzdHMsIHR5cGljYWxseSB1c2VkIGZvciBmaWxlIHVwbG9hZHMuXG4gKi9cbmltcG9ydCB7IElucHV0U3RyZWFtIH0gZnJvbSBcIkBhZXJva2l0L3Nkay9pby9zdHJlYW1zXCJcbmltcG9ydCB7IEJ5dGVzIH0gZnJvbSBcIkBhZXJva2l0L3Nkay9pby9ieXRlc1wiXG5cbmNvbnN0IEh0dHBVcGxvYWRGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuaHR0cC5IdHRwVXBsb2FkRmFjYWRlXCIpO1xuXG4vKipcbiAqIFRoZSBzdGF0aWMgVXBsb2FkIGNsYXNzIHByb3ZpZGVzIG1ldGhvZHMgdG8gZGV0ZXJtaW5lIGlmIGEgcmVxdWVzdCBjb250YWluc1xuICogbXVsdGlwYXJ0IGNvbnRlbnQgYW5kIHRvIHBhcnNlIHRoYXQgY29udGVudCBpbnRvIGZpbGUgaXRlbXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBVcGxvYWQge1xuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGluY29taW5nIEhUVFAgcmVxdWVzdCBjb250YWlucyBtdWx0aXBhcnQgY29udGVudFxuICAgICAqIChlLmcuLCBmcm9tIGFuIEhUTUwgZm9ybSB3aXRoIGBlbmN0eXBlPVwibXVsdGlwYXJ0L2Zvcm0tZGF0YVwiYCkuXG4gICAgICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgcmVxdWVzdCBpcyBtdWx0aXBhcnQsIGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGlzTXVsdGlwYXJ0Q29udGVudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEh0dHBVcGxvYWRGYWNhZGUuaXNNdWx0aXBhcnRDb250ZW50KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUGFyc2VzIHRoZSBpbmNvbWluZyBtdWx0aXBhcnQgcmVxdWVzdCBjb250ZW50IGludG8gYSBjb2xsZWN0aW9uIG9mIGZpbGUgaXRlbXMuXG4gICAgICogVGhpcyBvcGVyYXRpb24gdHlwaWNhbGx5IGNvbnN1bWVzIHRoZSByZXF1ZXN0IGJvZHkuXG4gICAgICogQHJldHVybnMgQSBGaWxlSXRlbXMgb2JqZWN0IHJlcHJlc2VudGluZyBhbGwgcGFydHMgKGZpbGVzIGFuZCBmb3JtIGZpZWxkcykgb2YgdGhlIHJlcXVlc3QuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBwYXJzZVJlcXVlc3QoKTogRmlsZUl0ZW1zIHtcbiAgICAgICAgLy8gVGhlIHVuZGVybHlpbmcgbmF0aXZlIGV4ZWN1dGlvbiBjb250ZXh0IChfX2NvbnRleHQpIGlzIGFzc3VtZWQgdG8gY29udGFpblxuICAgICAgICAvLyB0aGUgcGFyc2VkIGZpbGUgaXRlbXMgdW5kZXIgdGhlIFwiZmlsZXNcIiBrZXkgYWZ0ZXIgdGhlIG5hdGl2ZSBmYWNhZGUgcHJvY2Vzc2luZy5cbiAgICAgICAgLy8gQHRzLWlnbm9yZTogX19jb250ZXh0IGlzIGFzc3VtZWQgdG8gYmUgZ2xvYmFsbHkgYXZhaWxhYmxlIGluIHRoZSBydW50aW1lIGVudmlyb25tZW50XG4gICAgICAgIHJldHVybiBuZXcgRmlsZUl0ZW1zKF9fY29udGV4dC5nZXQoXCJmaWxlc1wiKSk7XG4gICAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb2xsZWN0aW9uIG9mIHVwbG9hZGVkIGZpbGUgYW5kIGZvcm0gZmllbGQgaXRlbXMgcGFyc2VkIGZyb20gYSBtdWx0aXBhcnQgcmVxdWVzdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEZpbGVJdGVtcyB7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG5hdGl2ZTogYW55O1xuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIG5hdGl2ZSBUaGUgbmF0aXZlIEphdmEgY29sbGVjdGlvbiBvYmplY3QgaG9sZGluZyB0aGUgZmlsZSBpdGVtcy5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihuYXRpdmU6IGFueSkge1xuICAgICAgICB0aGlzLm5hdGl2ZSA9IG5hdGl2ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBpdGVtIChmaWxlIG9yIGZvcm0gZmllbGQpIGJ5IGl0cyBpbmRleCBpbiB0aGUgY29sbGVjdGlvbi5cbiAgICAgKiBAcGFyYW0gaW5kZXggVGhlIHplcm8tYmFzZWQgaW5kZXggb2YgdGhlIGl0ZW0uXG4gICAgICogQHJldHVybnMgQSBGaWxlSXRlbSBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBpdGVtIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXguXG4gICAgICovXG4gICAgcHVibGljIGdldChpbmRleDogbnVtYmVyKTogRmlsZUl0ZW0ge1xuICAgICAgICBjb25zdCBuYXRpdmUgPSB0aGlzLm5hdGl2ZS5nZXQoaW5kZXgpO1xuICAgICAgICByZXR1cm4gbmV3IEZpbGVJdGVtKG5hdGl2ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zIChmaWxlcyBhbmQgZm9ybSBmaWVsZHMpIGluIHRoZSBjb2xsZWN0aW9uLlxuICAgICAqIEByZXR1cm5zIFRoZSBzaXplIG9mIHRoZSBjb2xsZWN0aW9uLlxuICAgICAqL1xuICAgIHB1YmxpYyBzaXplKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZS5zaXplKCk7XG4gICAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgaXRlbSAoZWl0aGVyIGFuIHVwbG9hZGVkIGZpbGUgb3IgYSByZWd1bGFyIGZvcm0gZmllbGQpXG4gKiB3aXRoaW4gYSBtdWx0aXBhcnQgcmVxdWVzdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEZpbGVJdGVtIHtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmF0aXZlOiBhbnlcblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBuYXRpdmUgVGhlIG5hdGl2ZSBKYXZhIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGZpbGUgaXRlbS5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihuYXRpdmU6IGFueSkge1xuICAgICAgICB0aGlzLm5hdGl2ZSA9IG5hdGl2ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGb3IgYSBmaWxlIHVwbG9hZCwgcmV0dXJucyB0aGUgb3JpZ2luYWwgZmlsZW5hbWUgYXMgcmVwb3J0ZWQgYnkgdGhlIGNsaWVudC5cbiAgICAgKiBGb3IgYSByZWd1bGFyIGZvcm0gZmllbGQsIHRoaXMgaXMgdHlwaWNhbGx5IG51bGwgb3IgdW5kZWZpbmVkLlxuICAgICAqIEByZXR1cm5zIFRoZSBvcmlnaW5hbCBmaWxlbmFtZSBzdHJpbmcuXG4gICAgICovXG4gICAgcHVibGljIGdldE5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlLmdldE9yaWdpbmFsRmlsZW5hbWUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBNSU1FIHR5cGUgb2YgdGhlIHVwbG9hZGVkIGZpbGUgb3IgY29udGVudCBwYXJ0LlxuICAgICAqIEByZXR1cm5zIFRoZSBjb250ZW50IHR5cGUgc3RyaW5nIChlLmcuLCAnaW1hZ2UvcG5nJywgJ3RleHQvcGxhaW4nKS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q29udGVudFR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlLmdldENvbnRlbnRUeXBlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZSB1cGxvYWRlZCBpdGVtIGlzIGVtcHR5IChlLmcuLCBhIGZpbGUgdXBsb2FkIHdpdGggemVybyBieXRlcykuXG4gICAgICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgaXRlbSBpcyBlbXB0eSwgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqL1xuICAgIHB1YmxpYyBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmUuaXNFbXB0eSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIHNpemUgb2YgdGhlIHVwbG9hZGVkIGl0ZW0gaW4gYnl0ZXMuXG4gICAgICogQHJldHVybnMgVGhlIHNpemUgYXMgYSBudW1iZXIuXG4gICAgICovXG4gICAgcHVibGljIGdldFNpemUoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlLmdldFNpemUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgdGhlIGNvbnRlbnQgb2YgdGhlIGZpbGUgaXRlbSBhcyBhIEphdmFTY3JpcHQgYXJyYXkgb2YgYnl0ZXMuXG4gICAgICogVGhpcyB1c2VzIGEgdXRpbGl0eSAoYEJ5dGVzLnRvSmF2YVNjcmlwdEJ5dGVzYCkgdG8gY29udmVydCB0aGUgbmF0aXZlIEphdmEgYnl0ZSBhcnJheS5cbiAgICAgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBieXRlcyAoYGFueVtdYCkuXG4gICAgICovXG4gICAgcHVibGljIGdldEJ5dGVzKCk6IGFueVtdIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0Qnl0ZXNOYXRpdmUoKTtcbiAgICAgICAgcmV0dXJuIEJ5dGVzLnRvSmF2YVNjcmlwdEJ5dGVzKGRhdGEpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgY29udGVudCBvZiB0aGUgZmlsZSBpdGVtIGFzIHRoZSBuYXRpdmUgSmF2YSBieXRlIGFycmF5LlxuICAgICAqIEByZXR1cm5zIFRoZSBuYXRpdmUgYnl0ZSBhcnJheSAoYGFueVtdYCkuXG4gICAgICovXG4gICAgcHVibGljIGdldEJ5dGVzTmF0aXZlKCk6IGFueVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmF0aXZlLmdldEJ5dGVzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIHRoZSBjb250ZW50IG9mIHRoZSBmaWxlIGl0ZW0gYXMgYSBzdHJpbmcuXG4gICAgICogTm90ZTogVGhpcyBhc3N1bWVzIHRoZSBjb250ZW50IGlzIHRleHQgYW5kIG1heSBub3QgaGFuZGxlIGFsbCBlbmNvZGluZ3MgY29ycmVjdGx5LlxuICAgICAqIEl0IHJlbGllcyBvbiBKYXZhU2NyaXB0J3MgYFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHlgIGZvciBjb252ZXJzaW9uLlxuICAgICAqIEByZXR1cm5zIFRoZSBjb250ZW50IGFzIGEgc3RyaW5nLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRUZXh0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsIHRoaXMuZ2V0Qnl0ZXNOYXRpdmUoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBhbiBpbnB1dCBzdHJlYW0gZm9yIHJlYWRpbmcgdGhlIGNvbnRlbnQgb2YgdGhlIGZpbGUgaXRlbS5cbiAgICAgKiBUaGlzIGlzIHVzZWZ1bCBmb3IgaGFuZGxpbmcgbGFyZ2UgZmlsZXMgd2l0aG91dCBsb2FkaW5nIHRoZSBlbnRpcmUgY29udGVudCBpbnRvIG1lbW9yeS5cbiAgICAgKiBAcmV0dXJucyBBbiBJbnB1dFN0cmVhbSBvYmplY3Qgd3JhcHBpbmcgdGhlIG5hdGl2ZSBpbnB1dCBzdHJlYW0uXG4gICAgICovXG4gICAgcHVibGljIGdldElucHV0U3RyZWFtKCk6IElucHV0U3RyZWFtIHtcbiAgICAgICAgY29uc3QgbmF0aXZlID0gdGhpcy5uYXRpdmUuZ2V0SW5wdXRTdHJlYW0oKTtcbiAgICAgICAgcmV0dXJuIG5ldyBJbnB1dFN0cmVhbShuYXRpdmUpO1xuICAgIH1cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBVcGxvYWQ7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFJQSxTQUFTLG1CQUFtQjtBQUM1QixTQUFTLGFBQWE7QUFFdEIsTUFBTSxtQkFBbUIsS0FBSyxLQUFLLDREQUE0RDtBQU14RixNQUFNLE9BQU87QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPaEIsT0FBYyxxQkFBOEI7QUFDeEMsV0FBTyxpQkFBaUIsbUJBQW1CO0FBQUEsRUFDL0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGVBQTBCO0FBSXBDLFdBQU8sSUFBSSxVQUFVLFVBQVUsSUFBSSxPQUFPLENBQUM7QUFBQSxFQUMvQztBQUNKO0FBS08sTUFBTSxVQUFVO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbkIsWUFBWSxRQUFhO0FBQ3JCLFNBQUssU0FBUztBQUFBLEVBQ2xCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sSUFBSSxPQUF5QjtBQUNoQyxVQUFNLFNBQVMsS0FBSyxPQUFPLElBQUksS0FBSztBQUNwQyxXQUFPLElBQUksU0FBUyxNQUFNO0FBQUEsRUFDOUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTU8sT0FBZTtBQUNsQixXQUFPLEtBQUssT0FBTyxLQUFLO0FBQUEsRUFDNUI7QUFDSjtBQU1PLE1BQU0sU0FBUztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT2xCLFlBQVksUUFBYTtBQUNyQixTQUFLLFNBQVM7QUFBQSxFQUNsQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFVBQWtCO0FBQ3JCLFdBQU8sS0FBSyxPQUFPLG9CQUFvQjtBQUFBLEVBQzNDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1PLGlCQUF5QjtBQUM1QixXQUFPLEtBQUssT0FBTyxlQUFlO0FBQUEsRUFDdEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTU8sVUFBbUI7QUFDdEIsV0FBTyxLQUFLLE9BQU8sUUFBUTtBQUFBLEVBQy9CO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1PLFVBQWtCO0FBQ3JCLFdBQU8sS0FBSyxPQUFPLFFBQVE7QUFBQSxFQUMvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFdBQWtCO0FBQ3JCLFVBQU0sT0FBTyxLQUFLLGVBQWU7QUFDakMsV0FBTyxNQUFNLGtCQUFrQixJQUFJO0FBQUEsRUFDdkM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTU8saUJBQXdCO0FBQzNCLFdBQU8sS0FBSyxPQUFPLFNBQVM7QUFBQSxFQUNoQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sVUFBa0I7QUFDckIsV0FBTyxPQUFPLGFBQWEsTUFBTSxNQUFNLEtBQUssZUFBZSxDQUFDO0FBQUEsRUFDaEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxpQkFBOEI7QUFDakMsVUFBTSxTQUFTLEtBQUssT0FBTyxlQUFlO0FBQzFDLFdBQU8sSUFBSSxZQUFZLE1BQU07QUFBQSxFQUNqQztBQUNKO0FBR0EsSUFBSSxPQUFPLFdBQVcsYUFBYTtBQUVsQyxTQUFPLFVBQVU7QUFDbEI7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1,87 @@
1
+ import { response } from "@aerokit/sdk/http";
2
+ class HttpUtils {
3
+ /**
4
+ * Sends a successful response with HTTP status 200 (OK).
5
+ * The provided entity is serialized as the JSON response body.
6
+ * @param entity The data entity to return in the response body.
7
+ */
8
+ static sendResponseOk(entity) {
9
+ HttpUtils.sendResponse(200, entity);
10
+ }
11
+ /**
12
+ * Sends a successful response with HTTP status 201 (Created).
13
+ * Typically used after a resource has been successfully created.
14
+ * @param entity The data entity of the newly created resource.
15
+ */
16
+ static sendResponseCreated(entity) {
17
+ HttpUtils.sendResponse(201, entity);
18
+ }
19
+ /**
20
+ * Sends a successful response with HTTP status 204 (No Content).
21
+ * Typically used for successful DELETE requests or updates that do not return a body.
22
+ */
23
+ static sendResponseNoContent() {
24
+ HttpUtils.sendResponse(204);
25
+ }
26
+ /**
27
+ * Sends an error response with HTTP status 400 (Bad Request).
28
+ * Used when the request could not be understood or processed due to client-side errors (e.g., validation failure).
29
+ * @param message A descriptive error message explaining why the request was invalid.
30
+ */
31
+ static sendResponseBadRequest(message) {
32
+ HttpUtils.sendResponse(400, {
33
+ "code": 400,
34
+ "message": message
35
+ });
36
+ }
37
+ /**
38
+ * Sends an error response with HTTP status 403 (Forbidden).
39
+ * Used when the client is authenticated but does not have the necessary permissions to access the resource.
40
+ * @param message A descriptive error message.
41
+ */
42
+ static sendForbiddenRequest(message) {
43
+ HttpUtils.sendResponse(403, {
44
+ "code": 403,
45
+ "message": message
46
+ });
47
+ }
48
+ /**
49
+ * Sends an error response with HTTP status 404 (Not Found).
50
+ * Used when the requested resource could not be found.
51
+ * @param message A descriptive error message.
52
+ */
53
+ static sendResponseNotFound(message) {
54
+ HttpUtils.sendResponse(404, {
55
+ "code": 404,
56
+ "message": message
57
+ });
58
+ }
59
+ /**
60
+ * Sends an error response with HTTP status 500 (Internal Server Error).
61
+ * Used for unexpected server-side conditions encountered during processing.
62
+ * @param message A descriptive error message (should mask internal details in production).
63
+ */
64
+ static sendInternalServerError(message) {
65
+ HttpUtils.sendResponse(500, {
66
+ "code": 500,
67
+ "message": message
68
+ });
69
+ }
70
+ /**
71
+ * Generic private method to set the response status, content type, and body.
72
+ * If a body is provided, it is stringified into JSON and written to the response.
73
+ * @param status The HTTP status code to set (e.g., 200, 404, 500).
74
+ * @param body The JavaScript object or string to be serialized as the response body (optional).
75
+ */
76
+ static sendResponse(status, body) {
77
+ response.setContentType("application/json");
78
+ response.setStatus(status);
79
+ if (body) {
80
+ response.println(JSON.stringify(body));
81
+ }
82
+ }
83
+ }
84
+ export {
85
+ HttpUtils
86
+ };
87
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2h0dHAvdXRpbHMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQSB1dGlsaXR5IGNsYXNzIHByb3ZpZGluZyBzdGF0aWMgbWV0aG9kcyB0byBzdGFuZGFyZGl6ZSBhbmQgc2VuZFxuICogY29tbW9uIEhUVFAgcmVzcG9uc2VzIChzdWNjZXNzIGFuZCBlcnJvcikgd2l0aCBhcHBsaWNhdGlvbi9qc29uIGNvbnRlbnQgdHlwZS5cbiAqL1xuaW1wb3J0IHsgcmVzcG9uc2UgfSBmcm9tIFwiQGFlcm9raXQvc2RrL2h0dHBcIjtcblxuLyoqXG4gKiBQcm92aWRlcyBjb252ZW5pZW50IHN0YXRpYyBtZXRob2RzIGZvciBzZW5kaW5nIHN0YW5kYXJkIEhUVFAgcmVzcG9uc2VzLlxuICogQWxsIHJlc3BvbnNlcyBhcmUgYXV0b21hdGljYWxseSBmb3JtYXR0ZWQgYXMgJ2FwcGxpY2F0aW9uL2pzb24nLlxuICovXG5leHBvcnQgY2xhc3MgSHR0cFV0aWxzIHtcblxuICAgIC8qKlxuICAgICAqIFNlbmRzIGEgc3VjY2Vzc2Z1bCByZXNwb25zZSB3aXRoIEhUVFAgc3RhdHVzIDIwMCAoT0spLlxuICAgICAqIFRoZSBwcm92aWRlZCBlbnRpdHkgaXMgc2VyaWFsaXplZCBhcyB0aGUgSlNPTiByZXNwb25zZSBib2R5LlxuICAgICAqIEBwYXJhbSBlbnRpdHkgVGhlIGRhdGEgZW50aXR5IHRvIHJldHVybiBpbiB0aGUgcmVzcG9uc2UgYm9keS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHNlbmRSZXNwb25zZU9rKGVudGl0eTogYW55KTogdm9pZCB7XG4gICAgICAgIEh0dHBVdGlscy5zZW5kUmVzcG9uc2UoMjAwLCBlbnRpdHkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlbmRzIGEgc3VjY2Vzc2Z1bCByZXNwb25zZSB3aXRoIEhUVFAgc3RhdHVzIDIwMSAoQ3JlYXRlZCkuXG4gICAgICogVHlwaWNhbGx5IHVzZWQgYWZ0ZXIgYSByZXNvdXJjZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY3JlYXRlZC5cbiAgICAgKiBAcGFyYW0gZW50aXR5IFRoZSBkYXRhIGVudGl0eSBvZiB0aGUgbmV3bHkgY3JlYXRlZCByZXNvdXJjZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHNlbmRSZXNwb25zZUNyZWF0ZWQoZW50aXR5OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgSHR0cFV0aWxzLnNlbmRSZXNwb25zZSgyMDEsIGVudGl0eSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VuZHMgYSBzdWNjZXNzZnVsIHJlc3BvbnNlIHdpdGggSFRUUCBzdGF0dXMgMjA0IChObyBDb250ZW50KS5cbiAgICAgKiBUeXBpY2FsbHkgdXNlZCBmb3Igc3VjY2Vzc2Z1bCBERUxFVEUgcmVxdWVzdHMgb3IgdXBkYXRlcyB0aGF0IGRvIG5vdCByZXR1cm4gYSBib2R5LlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgc2VuZFJlc3BvbnNlTm9Db250ZW50KCk6IHZvaWQge1xuICAgICAgICBIdHRwVXRpbHMuc2VuZFJlc3BvbnNlKDIwNCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VuZHMgYW4gZXJyb3IgcmVzcG9uc2Ugd2l0aCBIVFRQIHN0YXR1cyA0MDAgKEJhZCBSZXF1ZXN0KS5cbiAgICAgKiBVc2VkIHdoZW4gdGhlIHJlcXVlc3QgY291bGQgbm90IGJlIHVuZGVyc3Rvb2Qgb3IgcHJvY2Vzc2VkIGR1ZSB0byBjbGllbnQtc2lkZSBlcnJvcnMgKGUuZy4sIHZhbGlkYXRpb24gZmFpbHVyZSkuXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgQSBkZXNjcmlwdGl2ZSBlcnJvciBtZXNzYWdlIGV4cGxhaW5pbmcgd2h5IHRoZSByZXF1ZXN0IHdhcyBpbnZhbGlkLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgc2VuZFJlc3BvbnNlQmFkUmVxdWVzdChtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgSHR0cFV0aWxzLnNlbmRSZXNwb25zZSg0MDAsIHtcbiAgICAgICAgICAgIFwiY29kZVwiOiA0MDAsXG4gICAgICAgICAgICBcIm1lc3NhZ2VcIjogbWVzc2FnZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZW5kcyBhbiBlcnJvciByZXNwb25zZSB3aXRoIEhUVFAgc3RhdHVzIDQwMyAoRm9yYmlkZGVuKS5cbiAgICAgKiBVc2VkIHdoZW4gdGhlIGNsaWVudCBpcyBhdXRoZW50aWNhdGVkIGJ1dCBkb2VzIG5vdCBoYXZlIHRoZSBuZWNlc3NhcnkgcGVybWlzc2lvbnMgdG8gYWNjZXNzIHRoZSByZXNvdXJjZS5cbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBBIGRlc2NyaXB0aXZlIGVycm9yIG1lc3NhZ2UuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBzZW5kRm9yYmlkZGVuUmVxdWVzdChtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgSHR0cFV0aWxzLnNlbmRSZXNwb25zZSg0MDMsIHtcbiAgICAgICAgICAgIFwiY29kZVwiOiA0MDMsXG4gICAgICAgICAgICBcIm1lc3NhZ2VcIjogbWVzc2FnZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZW5kcyBhbiBlcnJvciByZXNwb25zZSB3aXRoIEhUVFAgc3RhdHVzIDQwNCAoTm90IEZvdW5kKS5cbiAgICAgKiBVc2VkIHdoZW4gdGhlIHJlcXVlc3RlZCByZXNvdXJjZSBjb3VsZCBub3QgYmUgZm91bmQuXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgQSBkZXNjcmlwdGl2ZSBlcnJvciBtZXNzYWdlLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgc2VuZFJlc3BvbnNlTm90Rm91bmQobWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIEh0dHBVdGlscy5zZW5kUmVzcG9uc2UoNDA0LCB7XG4gICAgICAgICAgICBcImNvZGVcIjogNDA0LFxuICAgICAgICAgICAgXCJtZXNzYWdlXCI6IG1lc3NhZ2VcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2VuZHMgYW4gZXJyb3IgcmVzcG9uc2Ugd2l0aCBIVFRQIHN0YXR1cyA1MDAgKEludGVybmFsIFNlcnZlciBFcnJvcikuXG4gICAgICogVXNlZCBmb3IgdW5leHBlY3RlZCBzZXJ2ZXItc2lkZSBjb25kaXRpb25zIGVuY291bnRlcmVkIGR1cmluZyBwcm9jZXNzaW5nLlxuICAgICAqIEBwYXJhbSBtZXNzYWdlIEEgZGVzY3JpcHRpdmUgZXJyb3IgbWVzc2FnZSAoc2hvdWxkIG1hc2sgaW50ZXJuYWwgZGV0YWlscyBpbiBwcm9kdWN0aW9uKS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHNlbmRJbnRlcm5hbFNlcnZlckVycm9yKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBIdHRwVXRpbHMuc2VuZFJlc3BvbnNlKDUwMCwge1xuICAgICAgICAgICAgXCJjb2RlXCI6IDUwMCxcbiAgICAgICAgICAgIFwibWVzc2FnZVwiOiBtZXNzYWdlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdlbmVyaWMgcHJpdmF0ZSBtZXRob2QgdG8gc2V0IHRoZSByZXNwb25zZSBzdGF0dXMsIGNvbnRlbnQgdHlwZSwgYW5kIGJvZHkuXG4gICAgICogSWYgYSBib2R5IGlzIHByb3ZpZGVkLCBpdCBpcyBzdHJpbmdpZmllZCBpbnRvIEpTT04gYW5kIHdyaXR0ZW4gdG8gdGhlIHJlc3BvbnNlLlxuICAgICAqIEBwYXJhbSBzdGF0dXMgVGhlIEhUVFAgc3RhdHVzIGNvZGUgdG8gc2V0IChlLmcuLCAyMDAsIDQwNCwgNTAwKS5cbiAgICAgKiBAcGFyYW0gYm9keSBUaGUgSmF2YVNjcmlwdCBvYmplY3Qgb3Igc3RyaW5nIHRvIGJlIHNlcmlhbGl6ZWQgYXMgdGhlIHJlc3BvbnNlIGJvZHkgKG9wdGlvbmFsKS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHN0YXRpYyBzZW5kUmVzcG9uc2Uoc3RhdHVzOiBudW1iZXIsIGJvZHk/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgcmVzcG9uc2Uuc2V0Q29udGVudFR5cGUoXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xuICAgICAgICByZXNwb25zZS5zZXRTdGF0dXMoc3RhdHVzKTtcbiAgICAgICAgaWYgKGJvZHkpIHtcbiAgICAgICAgICAgIHJlc3BvbnNlLnByaW50bG4oSlNPTi5zdHJpbmdpZnkoYm9keSkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsU0FBUyxnQkFBZ0I7QUFNbEIsTUFBTSxVQUFVO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT25CLE9BQWMsZUFBZSxRQUFtQjtBQUM1QyxjQUFVLGFBQWEsS0FBSyxNQUFNO0FBQUEsRUFDdEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLG9CQUFvQixRQUFtQjtBQUNqRCxjQUFVLGFBQWEsS0FBSyxNQUFNO0FBQUEsRUFDdEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyx3QkFBOEI7QUFDeEMsY0FBVSxhQUFhLEdBQUc7QUFBQSxFQUM5QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsdUJBQXVCLFNBQXVCO0FBQ3hELGNBQVUsYUFBYSxLQUFLO0FBQUEsTUFDeEIsUUFBUTtBQUFBLE1BQ1IsV0FBVztBQUFBLElBQ2YsQ0FBQztBQUFBLEVBQ0w7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLHFCQUFxQixTQUF1QjtBQUN0RCxjQUFVLGFBQWEsS0FBSztBQUFBLE1BQ3hCLFFBQVE7QUFBQSxNQUNSLFdBQVc7QUFBQSxJQUNmLENBQUM7QUFBQSxFQUNMO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxxQkFBcUIsU0FBdUI7QUFDdEQsY0FBVSxhQUFhLEtBQUs7QUFBQSxNQUN4QixRQUFRO0FBQUEsTUFDUixXQUFXO0FBQUEsSUFDZixDQUFDO0FBQUEsRUFDTDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsd0JBQXdCLFNBQXVCO0FBQ3pELGNBQVUsYUFBYSxLQUFLO0FBQUEsTUFDeEIsUUFBUTtBQUFBLE1BQ1IsV0FBVztBQUFBLElBQ2YsQ0FBQztBQUFBLEVBQ0w7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWUsYUFBYSxRQUFnQixNQUFrQjtBQUMxRCxhQUFTLGVBQWUsa0JBQWtCO0FBQzFDLGFBQVMsVUFBVSxNQUFNO0FBQ3pCLFFBQUksTUFBTTtBQUNOLGVBQVMsUUFBUSxLQUFLLFVBQVUsSUFBSSxDQUFDO0FBQUEsSUFDekM7QUFBQSxFQUNKO0FBQ0o7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFtdLAogICJzb3VyY2VzQ29udGVudCI6IFtdLAogICJtYXBwaW5ncyI6ICIiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,9 @@
1
+ export * from "./searcher";
2
+ import { Searcher } from "./searcher";
3
+ export * from "./writer";
4
+ import { Writer } from "./writer";
5
+ export {
6
+ Searcher as searcher,
7
+ Writer as writer
8
+ };
9
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2luZGV4aW5nL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJleHBvcnQgKiBmcm9tIFwiLi9zZWFyY2hlclwiO1xuZXhwb3J0IHsgU2VhcmNoZXIgYXMgc2VhcmNoZXIgfSBmcm9tIFwiLi9zZWFyY2hlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vd3JpdGVyXCI7XG5leHBvcnQgeyBXcml0ZXIgYXMgd3JpdGVyIH0gZnJvbSBcIi4vd3JpdGVyXCI7XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQSxjQUFjO0FBQ2QsU0FBcUIsZ0JBQWdCO0FBQ3JDLGNBQWM7QUFDZCxTQUFtQixjQUFjOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,51 @@
1
+ const IndexingFacade = Java.type("org.eclipse.dirigible.components.api.indexing.IndexingFacade");
2
+ class Searcher {
3
+ /**
4
+ * Executes a keyword search against a specified index.
5
+ * @param index The name or identifier of the index to search (e.g., 'documents', 'products').
6
+ * @param term The keyword or search phrase to look for.
7
+ * @returns An array of result objects, parsed from the native JSON string output.
8
+ */
9
+ static search(index, term) {
10
+ const results = IndexingFacade.search(index, term);
11
+ return JSON.parse(results);
12
+ }
13
+ /**
14
+ * Finds all entries in the index that were indexed before the specified date.
15
+ * @param index The name or identifier of the index.
16
+ * @param date The Date object representing the upper bound (exclusive) of the time range.
17
+ * @returns An array of result objects, parsed from the native JSON string output.
18
+ */
19
+ static before(index, date) {
20
+ const results = IndexingFacade.before(index, "" + date.getTime());
21
+ return JSON.parse(results);
22
+ }
23
+ /**
24
+ * Finds all entries in the index that were indexed after the specified date.
25
+ * @param index The name or identifier of the index.
26
+ * @param date The Date object representing the lower bound (exclusive) of the time range.
27
+ * @returns An array of result objects, parsed from the native JSON string output.
28
+ */
29
+ static after(index, date) {
30
+ const results = IndexingFacade.after(index, "" + date.getTime());
31
+ return JSON.parse(results);
32
+ }
33
+ /**
34
+ * Finds all entries in the index that were indexed within the specified date range.
35
+ * @param index The name or identifier of the index.
36
+ * @param lower The Date object for the lower bound (exclusive).
37
+ * @param upper The Date object for the upper bound (exclusive).
38
+ * @returns An array of result objects, parsed from the native JSON string output.
39
+ */
40
+ static between(index, lower, upper) {
41
+ const results = IndexingFacade.between(index, "" + lower.getTime(), "" + upper.getTime());
42
+ return JSON.parse(results);
43
+ }
44
+ }
45
+ if (typeof module !== "undefined") {
46
+ module.exports = Searcher;
47
+ }
48
+ export {
49
+ Searcher
50
+ };
51
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2luZGV4aW5nL3NlYXJjaGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIGEgc3RhdGljIGZhXHUwMEU3YWRlIChgU2VhcmNoZXJgIGNsYXNzKSBmb3IgcGVyZm9ybWluZ1xuICogdGVybS1iYXNlZCBhbmQgdGltZS1iYXNlZCBxdWVyaWVzIGFnYWluc3QgYSBuYXRpdmUgaW5kZXhpbmcgc2VydmljZS5cbiAqL1xuXG5jb25zdCBJbmRleGluZ0ZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS5pbmRleGluZy5JbmRleGluZ0ZhY2FkZVwiKTtcblxuLyoqXG4gKiBUaGUgU2VhcmNoZXIgY2xhc3MgcHJvdmlkZXMgbWV0aG9kcyBmb3IgcXVlcnlpbmcgYSBzcGVjaWZpYyBpbmRleFxuICogdXNpbmcga2V5d29yZHMgb3IgZGF0ZSByYW5nZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZWFyY2hlciB7XG5cblx0LyoqXG5cdCAqIEV4ZWN1dGVzIGEga2V5d29yZCBzZWFyY2ggYWdhaW5zdCBhIHNwZWNpZmllZCBpbmRleC5cblx0ICogQHBhcmFtIGluZGV4IFRoZSBuYW1lIG9yIGlkZW50aWZpZXIgb2YgdGhlIGluZGV4IHRvIHNlYXJjaCAoZS5nLiwgJ2RvY3VtZW50cycsICdwcm9kdWN0cycpLlxuXHQgKiBAcGFyYW0gdGVybSBUaGUga2V5d29yZCBvciBzZWFyY2ggcGhyYXNlIHRvIGxvb2sgZm9yLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiByZXN1bHQgb2JqZWN0cywgcGFyc2VkIGZyb20gdGhlIG5hdGl2ZSBKU09OIHN0cmluZyBvdXRwdXQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHNlYXJjaChpbmRleDogc3RyaW5nLCB0ZXJtOiBzdHJpbmcpOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9W10ge1xuXHRcdGNvbnN0IHJlc3VsdHMgPSBJbmRleGluZ0ZhY2FkZS5zZWFyY2goaW5kZXgsIHRlcm0pO1xuXHRcdHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHMpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEZpbmRzIGFsbCBlbnRyaWVzIGluIHRoZSBpbmRleCB0aGF0IHdlcmUgaW5kZXhlZCBiZWZvcmUgdGhlIHNwZWNpZmllZCBkYXRlLlxuXHQgKiBAcGFyYW0gaW5kZXggVGhlIG5hbWUgb3IgaWRlbnRpZmllciBvZiB0aGUgaW5kZXguXG5cdCAqIEBwYXJhbSBkYXRlIFRoZSBEYXRlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIHVwcGVyIGJvdW5kIChleGNsdXNpdmUpIG9mIHRoZSB0aW1lIHJhbmdlLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiByZXN1bHQgb2JqZWN0cywgcGFyc2VkIGZyb20gdGhlIG5hdGl2ZSBKU09OIHN0cmluZyBvdXRwdXQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGJlZm9yZShpbmRleDogc3RyaW5nLCBkYXRlOiBEYXRlKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVtdIHtcblx0XHQvLyBDb252ZXJ0cyB0aGUgRGF0ZSBvYmplY3QgdG8gbWlsbGlzZWNvbmRzIHNpbmNlIGVwb2NoIGFzIGEgc3RyaW5nLlxuXHRcdGNvbnN0IHJlc3VsdHMgPSBJbmRleGluZ0ZhY2FkZS5iZWZvcmUoaW5kZXgsICcnICsgZGF0ZS5nZXRUaW1lKCkpO1xuXHRcdHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHMpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEZpbmRzIGFsbCBlbnRyaWVzIGluIHRoZSBpbmRleCB0aGF0IHdlcmUgaW5kZXhlZCBhZnRlciB0aGUgc3BlY2lmaWVkIGRhdGUuXG5cdCAqIEBwYXJhbSBpbmRleCBUaGUgbmFtZSBvciBpZGVudGlmaWVyIG9mIHRoZSBpbmRleC5cblx0ICogQHBhcmFtIGRhdGUgVGhlIERhdGUgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgbG93ZXIgYm91bmQgKGV4Y2x1c2l2ZSkgb2YgdGhlIHRpbWUgcmFuZ2UuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHJlc3VsdCBvYmplY3RzLCBwYXJzZWQgZnJvbSB0aGUgbmF0aXZlIEpTT04gc3RyaW5nIG91dHB1dC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgYWZ0ZXIoaW5kZXg6IHN0cmluZywgZGF0ZTogRGF0ZSk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH1bXSB7XG5cdFx0Ly8gQ29udmVydHMgdGhlIERhdGUgb2JqZWN0IHRvIG1pbGxpc2Vjb25kcyBzaW5jZSBlcG9jaCBhcyBhIHN0cmluZy5cblx0XHRjb25zdCByZXN1bHRzID0gSW5kZXhpbmdGYWNhZGUuYWZ0ZXIoaW5kZXgsICcnICsgZGF0ZS5nZXRUaW1lKCkpO1xuXHRcdHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHMpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEZpbmRzIGFsbCBlbnRyaWVzIGluIHRoZSBpbmRleCB0aGF0IHdlcmUgaW5kZXhlZCB3aXRoaW4gdGhlIHNwZWNpZmllZCBkYXRlIHJhbmdlLlxuXHQgKiBAcGFyYW0gaW5kZXggVGhlIG5hbWUgb3IgaWRlbnRpZmllciBvZiB0aGUgaW5kZXguXG5cdCAqIEBwYXJhbSBsb3dlciBUaGUgRGF0ZSBvYmplY3QgZm9yIHRoZSBsb3dlciBib3VuZCAoZXhjbHVzaXZlKS5cblx0ICogQHBhcmFtIHVwcGVyIFRoZSBEYXRlIG9iamVjdCBmb3IgdGhlIHVwcGVyIGJvdW5kIChleGNsdXNpdmUpLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiByZXN1bHQgb2JqZWN0cywgcGFyc2VkIGZyb20gdGhlIG5hdGl2ZSBKU09OIHN0cmluZyBvdXRwdXQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGJldHdlZW4oaW5kZXg6IHN0cmluZywgbG93ZXI6IERhdGUsIHVwcGVyOiBEYXRlKTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVtdIHtcblx0XHQvLyBDb252ZXJ0cyBib3RoIERhdGUgb2JqZWN0cyB0byBtaWxsaXNlY29uZHMgc2luY2UgZXBvY2ggYXMgc3RyaW5ncy5cblx0XHRjb25zdCByZXN1bHRzID0gSW5kZXhpbmdGYWNhZGUuYmV0d2VlbihpbmRleCwgJycgKyBsb3dlci5nZXRUaW1lKCksICcnICsgdXBwZXIuZ2V0VGltZSgpKTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzKTtcblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFNlYXJjaGVyO1xufSJdLAogICJtYXBwaW5ncyI6ICJBQUtBLE1BQU0saUJBQWlCLEtBQUssS0FBSyw4REFBOEQ7QUFNeEYsTUFBTSxTQUFTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRckIsT0FBYyxPQUFPLE9BQWUsTUFBMkM7QUFDOUUsVUFBTSxVQUFVLGVBQWUsT0FBTyxPQUFPLElBQUk7QUFDakQsV0FBTyxLQUFLLE1BQU0sT0FBTztBQUFBLEVBQzFCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxPQUFjLE9BQU8sT0FBZSxNQUF5QztBQUU1RSxVQUFNLFVBQVUsZUFBZSxPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQztBQUNoRSxXQUFPLEtBQUssTUFBTSxPQUFPO0FBQUEsRUFDMUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsTUFBTSxPQUFlLE1BQXlDO0FBRTNFLFVBQU0sVUFBVSxlQUFlLE1BQU0sT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDO0FBQy9ELFdBQU8sS0FBSyxNQUFNLE9BQU87QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTQSxPQUFjLFFBQVEsT0FBZSxPQUFhLE9BQTBDO0FBRTNGLFVBQU0sVUFBVSxlQUFlLFFBQVEsT0FBTyxLQUFLLE1BQU0sUUFBUSxHQUFHLEtBQUssTUFBTSxRQUFRLENBQUM7QUFDeEYsV0FBTyxLQUFLLE1BQU0sT0FBTztBQUFBLEVBQzFCO0FBQ0Q7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,26 @@
1
+ const IndexingFacade = Java.type("org.eclipse.dirigible.components.api.indexing.IndexingFacade");
2
+ class Writer {
3
+ /**
4
+ * Adds a new document entry to the specified index.
5
+ *
6
+ * @param index The name or identifier of the index (e.g., 'documents', 'users').
7
+ * @param location A unique identifier or path for the indexed document (e.g., a file path or URL).
8
+ * @param contents The full-text content of the document to be indexed and made searchable.
9
+ * @param lastModified The Date object representing the last modification time of the document. Defaults to the current date/time if omitted.
10
+ * @param parameters Optional key-value map of additional metadata to associate with the document.
11
+ */
12
+ static add(index, location, contents, lastModified = /* @__PURE__ */ new Date(), parameters) {
13
+ let map = "{}";
14
+ if (parameters) {
15
+ map = JSON.stringify(parameters);
16
+ }
17
+ IndexingFacade.add(index, location, contents, "" + lastModified.getTime(), map);
18
+ }
19
+ }
20
+ if (typeof module !== "undefined") {
21
+ module.exports = Writer;
22
+ }
23
+ export {
24
+ Writer
25
+ };
26
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2luZGV4aW5nL3dyaXRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBQcm92aWRlcyBhIHN0YXRpYyBmYVx1MDBFN2FkZSAoYFdyaXRlcmAgY2xhc3MpIGZvciBhZGRpbmcgbmV3IGRvY3VtZW50c1xuICogb3IgY29udGVudCB0byB0aGUgbmF0aXZlIGluZGV4aW5nIHNlcnZpY2UuXG4gKi9cblxuY29uc3QgSW5kZXhpbmdGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuaW5kZXhpbmcuSW5kZXhpbmdGYWNhZGVcIik7XG5cbi8qKlxuICogVGhlIFdyaXRlciBjbGFzcyBwcm92aWRlcyBhIHN0YXRpYyBtZXRob2QgZm9yIGluZGV4aW5nIGRvY3VtZW50cywgYWxsb3dpbmdcbiAqIGZvciBmdWxsLXRleHQgY29udGVudCwgYSBsYXN0IG1vZGlmaWNhdGlvbiB0aW1lc3RhbXAsIGFuZCBvcHRpb25hbCBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IGNsYXNzIFdyaXRlciB7XG5cblx0LyoqXG5cdCAqIEFkZHMgYSBuZXcgZG9jdW1lbnQgZW50cnkgdG8gdGhlIHNwZWNpZmllZCBpbmRleC5cblx0ICpcblx0ICogQHBhcmFtIGluZGV4IFRoZSBuYW1lIG9yIGlkZW50aWZpZXIgb2YgdGhlIGluZGV4IChlLmcuLCAnZG9jdW1lbnRzJywgJ3VzZXJzJykuXG5cdCAqIEBwYXJhbSBsb2NhdGlvbiBBIHVuaXF1ZSBpZGVudGlmaWVyIG9yIHBhdGggZm9yIHRoZSBpbmRleGVkIGRvY3VtZW50IChlLmcuLCBhIGZpbGUgcGF0aCBvciBVUkwpLlxuXHQgKiBAcGFyYW0gY29udGVudHMgVGhlIGZ1bGwtdGV4dCBjb250ZW50IG9mIHRoZSBkb2N1bWVudCB0byBiZSBpbmRleGVkIGFuZCBtYWRlIHNlYXJjaGFibGUuXG5cdCAqIEBwYXJhbSBsYXN0TW9kaWZpZWQgVGhlIERhdGUgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgbGFzdCBtb2RpZmljYXRpb24gdGltZSBvZiB0aGUgZG9jdW1lbnQuIERlZmF1bHRzIHRvIHRoZSBjdXJyZW50IGRhdGUvdGltZSBpZiBvbWl0dGVkLlxuXHQgKiBAcGFyYW0gcGFyYW1ldGVycyBPcHRpb25hbCBrZXktdmFsdWUgbWFwIG9mIGFkZGl0aW9uYWwgbWV0YWRhdGEgdG8gYXNzb2NpYXRlIHdpdGggdGhlIGRvY3VtZW50LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBhZGQoaW5kZXg6IHN0cmluZywgbG9jYXRpb246IHN0cmluZywgY29udGVudHM6IHN0cmluZywgbGFzdE1vZGlmaWVkOiBEYXRlID0gbmV3IERhdGUoKSwgcGFyYW1ldGVycz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0pIHtcblx0XHRsZXQgbWFwID0gXCJ7fVwiO1xuXHRcdGlmIChwYXJhbWV0ZXJzKSB7XG5cdFx0XHQvLyBJZiBwYXJhbWV0ZXJzIGFyZSBwcm92aWRlZCwgc2VyaWFsaXplIHRoZSBvYmplY3QgaW50byBhIEpTT04gc3RyaW5nXG5cdFx0XHRtYXAgPSBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKTtcblx0XHR9XG5cblx0XHQvLyBUaGUgbmF0aXZlIGZhY2FkZSByZXF1aXJlcyB0aGUgbGFzdE1vZGlmaWVkIGRhdGUgYXMgYSBzdHJpbmcgcmVwcmVzZW50aW5nIG1pbGxpc2Vjb25kcyBzaW5jZSBlcG9jaC5cblx0XHRJbmRleGluZ0ZhY2FkZS5hZGQoaW5kZXgsIGxvY2F0aW9uLCBjb250ZW50cywgJycgKyBsYXN0TW9kaWZpZWQuZ2V0VGltZSgpLCBtYXApO1xuXHR9XG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJykge1xuXHQvLyBAdHMtaWdub3JlXG5cdG1vZHVsZS5leHBvcnRzID0gV3JpdGVyO1xufSJdLAogICJtYXBwaW5ncyI6ICJBQUtBLE1BQU0saUJBQWlCLEtBQUssS0FBSyw4REFBOEQ7QUFNeEYsTUFBTSxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXbkIsT0FBYyxJQUFJLE9BQWUsVUFBa0IsVUFBa0IsZUFBcUIsb0JBQUksS0FBSyxHQUFHLFlBQXdDO0FBQzdJLFFBQUksTUFBTTtBQUNWLFFBQUksWUFBWTtBQUVmLFlBQU0sS0FBSyxVQUFVLFVBQVU7QUFBQSxJQUNoQztBQUdBLG1CQUFlLElBQUksT0FBTyxVQUFVLFVBQVUsS0FBSyxhQUFhLFFBQVEsR0FBRyxHQUFHO0FBQUEsRUFDL0U7QUFDRDtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFbEMsU0FBTyxVQUFVO0FBQ2xCOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,6 @@
1
+ export * from "./integrations";
2
+ import { Integrations } from "./integrations";
3
+ export {
4
+ Integrations as integrations
5
+ };
6
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2ludGVncmF0aW9ucy9pbmRleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiZXhwb3J0ICogZnJvbSBcIi4vaW50ZWdyYXRpb25zXCI7XG5leHBvcnQgeyBJbnRlZ3JhdGlvbnMgYXMgaW50ZWdyYXRpb25zIH0gZnJvbSBcIi4vaW50ZWdyYXRpb25zXCI7Il0sCiAgIm1hcHBpbmdzIjogIkFBQUEsY0FBYztBQUNkLFNBQXlCLG9CQUFvQjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,36 @@
1
+ const SpringBeanProvider = Java.type("org.eclipse.dirigible.components.spring.SpringBeanProvider");
2
+ const Invoker = Java.type("org.eclipse.dirigible.components.engine.camel.invoke.Invoker");
3
+ const invoker = SpringBeanProvider.getBean(Invoker.class);
4
+ const CamelMessage = Java.type("org.apache.camel.Message");
5
+ class Integrations {
6
+ /**
7
+ * Synchronously invokes a specified Camel route.
8
+ *
9
+ * @param routeId The unique identifier of the Camel route to be executed.
10
+ * @param payload The initial message body/payload for the route.
11
+ * @param headers A map of headers to set on the initial Camel Message.
12
+ * @param exchangeProperties A map of properties to set on the Camel Exchange context.
13
+ * @returns The final result (the body of the resulting Camel Message) after the route has completed execution.
14
+ */
15
+ static invokeRoute(routeId, payload, headers, exchangeProperties) {
16
+ return invoker.invokeRoute(routeId, payload, headers, exchangeProperties);
17
+ }
18
+ /**
19
+ * Retrieves the current message being processed by the underlying integration
20
+ * engine's context. This is typically used within a route endpoint (e.g., a script component)
21
+ * to access or modify the message.
22
+ *
23
+ * Note: '__context' is assumed to be a global or context-injected variable.
24
+ * @returns The current IntegrationMessage wrapper.
25
+ */
26
+ static getInvokingRouteMessage() {
27
+ return __context.camelMessage;
28
+ }
29
+ }
30
+ if (typeof module !== "undefined") {
31
+ module.exports = Integrations;
32
+ }
33
+ export {
34
+ Integrations
35
+ };
36
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2ludGVncmF0aW9ucy9pbnRlZ3JhdGlvbnMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogUHJvdmlkZXMgYSBzdGF0aWMgZmFcdTAwRTdhZGUgZm9yIGludGVyYWN0aW5nIHdpdGggQXBhY2hlIENhbWVsIHJvdXRlc1xuICogd2l0aGluIHRoZSBleGVjdXRpb24gZW52aXJvbm1lbnQuIFRoaXMgYWxsb3dzIEphdmFTY3JpcHQgY29kZSB0byBzeW5jaHJvbm91c2x5XG4gKiBpbnZva2UgaW50ZWdyYXRpb24gcm91dGVzIGFuZCBhY2Nlc3MgdGhlIGN1cnJlbnQgbWVzc2FnZSBjb250ZXh0LlxuICovXG5cbmNvbnN0IFNwcmluZ0JlYW5Qcm92aWRlciA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLnNwcmluZy5TcHJpbmdCZWFuUHJvdmlkZXJcIik7XG5jb25zdCBJbnZva2VyID0gSmF2YS50eXBlKCdvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5lbmdpbmUuY2FtZWwuaW52b2tlLkludm9rZXInKTtcbmNvbnN0IGludm9rZXIgPSBTcHJpbmdCZWFuUHJvdmlkZXIuZ2V0QmVhbihJbnZva2VyLmNsYXNzKTtcbmNvbnN0IENhbWVsTWVzc2FnZSA9IEphdmEudHlwZSgnb3JnLmFwYWNoZS5jYW1lbC5NZXNzYWdlJyk7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgc3RydWN0dXJlIGZvciBDYW1lbCBNZXNzYWdlIEhlYWRlcnMsIHR5cGljYWxseSB1c2VkIGZvclxuICogc3RhbmRhcmQgY29tbXVuaWNhdGlvbiBtZXRhZGF0YS4gS2V5cyBhcmUgc3RyaW5ncywgYW5kIHZhbHVlcyBjYW4gYmVcbiAqIGEgc2luZ2xlIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEhlYWRlcnNNYXAge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIERlZmluZXMgdGhlIHN0cnVjdHVyZSBmb3IgQ2FtZWwgRXhjaGFuZ2UgUHJvcGVydGllcywgd2hpY2ggYXJlIGNvbnRleHQtc3BlY2lmaWNcbiAqIHZhcmlhYmxlcyB1c2VkIGZvciBwcm9jZXNzaW5nIHdpdGhpbiBhIHNpbmdsZSByb3V0ZSBleGVjdXRpb24uIEtleXMgYXJlIHN0cmluZ3MsXG4gKiBhbmQgdmFsdWVzIGNhbiBiZSBhIHNpbmdsZSBzdHJpbmcgb3IgYW4gYXJyYXkgb2Ygc3RyaW5ncy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeGNoYW5nZVByb3BlcnRpZXMge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIENhbWVsIG1lc3NhZ2UgY3VycmVudGx5IGJlaW5nIHByb2Nlc3NlZC4gVGhpcyBpbnRlcmZhY2UgbWlycm9yc1xuICoga2V5IGZ1bmN0aW9uYWxpdHkgb2YgdGhlIHVuZGVybHlpbmcgQXBhY2hlIENhbWVsIE1lc3NhZ2UgYW5kIEV4Y2hhbmdlIG9iamVjdHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZWdyYXRpb25NZXNzYWdlIHtcblxuICAgIC8qKlxuICAgICAqIENvbnN0cnVjdHMgYW4gSW50ZWdyYXRpb25NZXNzYWdlIHdyYXBwZXIgYXJvdW5kIGEgbmF0aXZlIG1lc3NhZ2Ugb2JqZWN0LlxuICAgICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBuYXRpdmUgbWVzc2FnZSBvYmplY3QgKHVzdWFsbHkgYSBDYW1lbCBNZXNzYWdlIG9yIEV4Y2hhbmdlKS5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBhbnkpO1xuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIHRoZSBib2R5IG9mIHRoZSBtZXNzYWdlLlxuICAgICAqIEByZXR1cm5zIFRoZSBtZXNzYWdlIGJvZHkgKGNhbiBiZSBhbnkgdHlwZSwgZS5nLiwgc3RyaW5nLCBvYmplY3QsIHN0cmVhbSkuXG4gICAgICovXG4gICAgZ2V0Qm9keSgpOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBwcm9wZXJ0eSBmcm9tIHRoZSBjdXJyZW50IEV4Y2hhbmdlIGNvbnRleHQuXG4gICAgICogQHBhcmFtIHByb3BlcnR5TmFtZSBUaGUgbmFtZSBvZiB0aGUgZXhjaGFuZ2UgcHJvcGVydHkuXG4gICAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBleGNoYW5nZSBwcm9wZXJ0eS5cbiAgICAgKi9cbiAgICBnZXRFeGNoYW5nZVByb3BlcnR5KHByb3BlcnR5TmFtZTogc3RyaW5nKTogYW55O1xuXG4gICAgLyoqXG4gICAgICogU2V0cyBhIHNwZWNpZmljIHByb3BlcnR5IG9uIHRoZSBjdXJyZW50IEV4Y2hhbmdlIGNvbnRleHQuXG4gICAgICogQHBhcmFtIHByb3BlcnR5TmFtZSBUaGUgbmFtZSBvZiB0aGUgZXhjaGFuZ2UgcHJvcGVydHkuXG4gICAgICogQHBhcmFtIHByb3BlcnR5VmFsdWUgVGhlIHZhbHVlIHRvIHNldC5cbiAgICAgKi9cbiAgICBzZXRFeGNoYW5nZVByb3BlcnR5KHByb3BlcnR5TmFtZTogc3RyaW5nLCBwcm9wZXJ0eVZhbHVlOiBhbnkpOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIGFsbCBwcm9wZXJ0aWVzIGZyb20gdGhlIGN1cnJlbnQgRXhjaGFuZ2UgY29udGV4dC5cbiAgICAgKiBAcmV0dXJucyBBIG1hcCBvZiBhbGwgZXhjaGFuZ2UgcHJvcGVydGllcy5cbiAgICAgKi9cbiAgICBnZXRFeGNoYW5nZVByb3BlcnRpZXMoKTogUmVjb3JkPHN0cmluZywgYW55PjtcblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgYm9keSBvZiB0aGUgbWVzc2FnZSBhcyBhIHN0cmluZy5cbiAgICAgKiBAcmV0dXJucyBUaGUgbWVzc2FnZSBib2R5IGNvbnZlcnRlZCB0byBhIHN0cmluZy5cbiAgICAgKi9cbiAgICBnZXRCb2R5QXNTdHJpbmcoKTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgYm9keSBvZiB0aGUgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0gYm9keSBUaGUgbmV3IGJvZHkgY29udGVudC5cbiAgICAgKi9cbiAgICBzZXRCb2R5KGJvZHk6IGFueSk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYWxsIGhlYWRlcnMgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZXNzYWdlLlxuICAgICAqIEByZXR1cm5zIEEgbWFwIG9mIGhlYWRlcnMuXG4gICAgICovXG4gICAgZ2V0SGVhZGVycygpOiBIZWFkZXJzTWFwO1xuXG4gICAgLyoqXG4gICAgICogUmV0cmlldmVzIGEgc3BlY2lmaWMgaGVhZGVyIHZhbHVlLlxuICAgICAqIEBwYXJhbSBrZXkgVGhlIGhlYWRlciBrZXkuXG4gICAgICogQHJldHVybnMgVGhlIGhlYWRlciB2YWx1ZShzKS5cbiAgICAgKi9cbiAgICBnZXRIZWFkZXIoa2V5OiBzdHJpbmcpOiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAgIC8qKlxuICAgICAqIFNldHMgbXVsdGlwbGUgaGVhZGVycyBvbiB0aGUgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0gaGVhZGVycyBUaGUgbWFwIG9mIGhlYWRlcnMgdG8gc2V0LlxuICAgICAqL1xuICAgIHNldEhlYWRlcnMoaGVhZGVyczogSGVhZGVyc01hcCk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgc2luZ2xlIGhlYWRlciBvbiB0aGUgbWVzc2FnZS5cbiAgICAgKiBAcGFyYW0ga2V5IFRoZSBoZWFkZXIga2V5LlxuICAgICAqIEBwYXJhbSB2YWx1ZSBUaGUgaGVhZGVyIHZhbHVlLlxuICAgICAqL1xuICAgIHNldEhlYWRlcihrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgdW5kZXJseWluZyBuYXRpdmUgQ2FtZWwgTWVzc2FnZSBvYmplY3QuXG4gICAgICogQHJldHVybnMgVGhlIHJhdyBDYW1lbCBNZXNzYWdlIGluc3RhbmNlLlxuICAgICAqL1xuICAgIGdldENhbWVsTWVzc2FnZSgpOiB0eXBlb2YgQ2FtZWxNZXNzYWdlO1xufVxuXG4vKipcbiAqIFRoZSBJbnRlZ3JhdGlvbnMgY2xhc3MgcHJvdmlkZXMgdXRpbGl0eSBtZXRob2RzIGZvciB0cmlnZ2VyaW5nIGFuZCBpbnRlcmFjdGluZ1xuICogd2l0aCBwcmVkZWZpbmVkIEFwYWNoZSBDYW1lbCBpbnRlZ3JhdGlvbiByb3V0ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlZ3JhdGlvbnMge1xuXG4gICAgLyoqXG4gICAgICogU3luY2hyb25vdXNseSBpbnZva2VzIGEgc3BlY2lmaWVkIENhbWVsIHJvdXRlLlxuICAgICAqXG4gICAgICogQHBhcmFtIHJvdXRlSWQgVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBDYW1lbCByb3V0ZSB0byBiZSBleGVjdXRlZC5cbiAgICAgKiBAcGFyYW0gcGF5bG9hZCBUaGUgaW5pdGlhbCBtZXNzYWdlIGJvZHkvcGF5bG9hZCBmb3IgdGhlIHJvdXRlLlxuICAgICAqIEBwYXJhbSBoZWFkZXJzIEEgbWFwIG9mIGhlYWRlcnMgdG8gc2V0IG9uIHRoZSBpbml0aWFsIENhbWVsIE1lc3NhZ2UuXG4gICAgICogQHBhcmFtIGV4Y2hhbmdlUHJvcGVydGllcyBBIG1hcCBvZiBwcm9wZXJ0aWVzIHRvIHNldCBvbiB0aGUgQ2FtZWwgRXhjaGFuZ2UgY29udGV4dC5cbiAgICAgKiBAcmV0dXJucyBUaGUgZmluYWwgcmVzdWx0ICh0aGUgYm9keSBvZiB0aGUgcmVzdWx0aW5nIENhbWVsIE1lc3NhZ2UpIGFmdGVyIHRoZSByb3V0ZSBoYXMgY29tcGxldGVkIGV4ZWN1dGlvbi5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGludm9rZVJvdXRlKHJvdXRlSWQ6IHN0cmluZywgcGF5bG9hZDogYW55LCBoZWFkZXJzOiBIZWFkZXJzTWFwLCBleGNoYW5nZVByb3BlcnRpZXM6IEV4Y2hhbmdlUHJvcGVydGllcykge1xuICAgICAgICByZXR1cm4gaW52b2tlci5pbnZva2VSb3V0ZShyb3V0ZUlkLCBwYXlsb2FkLCBoZWFkZXJzLCBleGNoYW5nZVByb3BlcnRpZXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHJpZXZlcyB0aGUgY3VycmVudCBtZXNzYWdlIGJlaW5nIHByb2Nlc3NlZCBieSB0aGUgdW5kZXJseWluZyBpbnRlZ3JhdGlvblxuICAgICAqIGVuZ2luZSdzIGNvbnRleHQuIFRoaXMgaXMgdHlwaWNhbGx5IHVzZWQgd2l0aGluIGEgcm91dGUgZW5kcG9pbnQgKGUuZy4sIGEgc2NyaXB0IGNvbXBvbmVudClcbiAgICAgKiB0byBhY2Nlc3Mgb3IgbW9kaWZ5IHRoZSBtZXNzYWdlLlxuICAgICAqXG4gICAgICogTm90ZTogJ19fY29udGV4dCcgaXMgYXNzdW1lZCB0byBiZSBhIGdsb2JhbCBvciBjb250ZXh0LWluamVjdGVkIHZhcmlhYmxlLlxuICAgICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IEludGVncmF0aW9uTWVzc2FnZSB3cmFwcGVyLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0SW52b2tpbmdSb3V0ZU1lc3NhZ2UoKTogSW50ZWdyYXRpb25NZXNzYWdlIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZTogX19jb250ZXh0IGlzIGFuIGltcGxpY2l0IGdsb2JhbCBwcm92aWRlZCBieSB0aGUgZW52aXJvbm1lbnRcbiAgICAgICAgcmV0dXJuIF9fY29udGV4dC5jYW1lbE1lc3NhZ2U7XG4gICAgfVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IEludGVncmF0aW9ucztcbn0iXSwKICAibWFwcGluZ3MiOiAiQUFNQSxNQUFNLHFCQUFxQixLQUFLLEtBQUssNERBQTREO0FBQ2pHLE1BQU0sVUFBVSxLQUFLLEtBQUssOERBQThEO0FBQ3hGLE1BQU0sVUFBVSxtQkFBbUIsUUFBUSxRQUFRLEtBQUs7QUFDeEQsTUFBTSxlQUFlLEtBQUssS0FBSywwQkFBMEI7QUEyR2xELE1BQU0sYUFBYTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBV3RCLE9BQWMsWUFBWSxTQUFpQixTQUFjLFNBQXFCLG9CQUF3QztBQUNsSCxXQUFPLFFBQVEsWUFBWSxTQUFTLFNBQVMsU0FBUyxrQkFBa0I7QUFBQSxFQUM1RTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVBLE9BQWMsMEJBQThDO0FBRXhELFdBQU8sVUFBVTtBQUFBLEVBQ3JCO0FBQ0o7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,82 @@
1
+ const JString = Java.type("java.lang.String");
2
+ const JByte = Java.type("java.lang.Byte");
3
+ const JArray = Java.type("java.lang.reflect.Array");
4
+ const BytesFacade = Java.type("org.eclipse.dirigible.components.api.io.BytesFacade");
5
+ class Bytes {
6
+ /**
7
+ * Converts a native JavaScript byte array (an array of numbers) to a Java byte array.
8
+ * This is used internally by the API layer to pass data to Java methods.
9
+ *
10
+ * @param bytes The JavaScript array of bytes (e.g., [104, 101, 108, 108, 111]).
11
+ * @returns A native Java byte array (internal representation).
12
+ */
13
+ static toJavaBytes(bytes) {
14
+ const internalBytes = JArray.newInstance(JByte.TYPE, bytes.length);
15
+ for (let i = 0; i < bytes.length; i++) {
16
+ internalBytes[i] = bytes[i];
17
+ }
18
+ return internalBytes;
19
+ }
20
+ /**
21
+ * Converts a native Java byte array back to a JavaScript array of numbers.
22
+ * This is used internally by the API layer to retrieve data from Java methods.
23
+ *
24
+ * @param internalBytes The native Java byte array.
25
+ * @returns A JavaScript array containing the byte values (numbers).
26
+ */
27
+ static toJavaScriptBytes(internalBytes) {
28
+ const bytes = [];
29
+ for (let i = 0; i < internalBytes.length; i++) {
30
+ bytes.push(internalBytes[i]);
31
+ }
32
+ return bytes;
33
+ }
34
+ /**
35
+ * Converts a standard text string into a byte array using the default platform encoding.
36
+ *
37
+ * @param text The input text string.
38
+ * @returns A JavaScript array representing the bytes of the text.
39
+ */
40
+ static textToByteArray(text) {
41
+ const javaString = new JString(text);
42
+ const native = BytesFacade.textToByteArray(text);
43
+ return Bytes.toJavaScriptBytes(native);
44
+ }
45
+ /**
46
+ * Converts a byte array back into a text string.
47
+ *
48
+ * @param data The JavaScript array of bytes.
49
+ * @returns The reconstructed text string.
50
+ */
51
+ static byteArrayToText(data) {
52
+ const native = Bytes.toJavaBytes(data);
53
+ return String.fromCharCode.apply(String, Bytes.toJavaScriptBytes(native));
54
+ }
55
+ /**
56
+ * Converts a 32-bit integer value into a byte array, respecting the specified byte order.
57
+ *
58
+ * @param value The integer value to convert.
59
+ * @param byteOrder Specifies the byte ordering: "BIG_ENDIAN" (most significant byte first) or "LITTLE_ENDIAN" (least significant byte first).
60
+ * @returns A JavaScript array representing the 4-byte integer.
61
+ */
62
+ static intToByteArray(value, byteOrder) {
63
+ return BytesFacade.intToByteArray(value, byteOrder);
64
+ }
65
+ /**
66
+ * Converts a 4-byte array back into a 32-bit integer value, respecting the specified byte order.
67
+ *
68
+ * @param data The 4-byte array (JavaScript array of numbers).
69
+ * @param byteOrder Specifies the byte ordering used during conversion.
70
+ * @returns The reconstructed integer value.
71
+ */
72
+ static byteArrayToInt(data, byteOrder) {
73
+ return BytesFacade.byteArrayToInt(data, byteOrder);
74
+ }
75
+ }
76
+ if (typeof module !== "undefined") {
77
+ module.exports = Bytes;
78
+ }
79
+ export {
80
+ Bytes
81
+ };
82
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2lvL2J5dGVzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIHV0aWxpdGllcyBmb3IgY29udmVydGluZyBhbmQgbWFuaXB1bGF0aW5nIGJ5dGUgYXJyYXlzLFxuICogZmFjaWxpdGF0aW5nIGNvbnZlcnNpb25zIGJldHdlZW4gSmF2YVNjcmlwdCBhcnJheXMsIEphdmEgYXJyYXlzLCB0ZXh0LCBhbmQgaW50ZWdlcnMuXG4gKi9cblxuY29uc3QgSlN0cmluZyA9IEphdmEudHlwZShcImphdmEubGFuZy5TdHJpbmdcIik7XG5jb25zdCBKQnl0ZSA9IEphdmEudHlwZShcImphdmEubGFuZy5CeXRlXCIpO1xuY29uc3QgSkFycmF5ID0gSmF2YS50eXBlKFwiamF2YS5sYW5nLnJlZmxlY3QuQXJyYXlcIik7XG5jb25zdCBCeXRlc0ZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS5pby5CeXRlc0ZhY2FkZVwiKTtcblxuLyoqXG4gKiBUaGUgQnl0ZXMgY2xhc3MgcHJvdmlkZXMgc3RhdGljIG1ldGhvZHMgZm9yIGJ5dGUgYXJyYXkgb3BlcmF0aW9ucywgcHJpbWFyaWx5XG4gKiB1c2VkIHRvIGJyaWRnZSBkYXRhIHR5cGVzIGJldHdlZW4gdGhlIEphdmFTY3JpcHQgZW52aXJvbm1lbnQgYW5kIG5hdGl2ZSBKYXZhIGNvbXBvbmVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCeXRlcyB7XG5cblx0LyoqXG5cdCAqIENvbnZlcnRzIGEgbmF0aXZlIEphdmFTY3JpcHQgYnl0ZSBhcnJheSAoYW4gYXJyYXkgb2YgbnVtYmVycykgdG8gYSBKYXZhIGJ5dGUgYXJyYXkuXG5cdCAqIFRoaXMgaXMgdXNlZCBpbnRlcm5hbGx5IGJ5IHRoZSBBUEkgbGF5ZXIgdG8gcGFzcyBkYXRhIHRvIEphdmEgbWV0aG9kcy5cblx0ICpcblx0ICogQHBhcmFtIGJ5dGVzIFRoZSBKYXZhU2NyaXB0IGFycmF5IG9mIGJ5dGVzIChlLmcuLCBbMTA0LCAxMDEsIDEwOCwgMTA4LCAxMTFdKS5cblx0ICogQHJldHVybnMgQSBuYXRpdmUgSmF2YSBieXRlIGFycmF5IChpbnRlcm5hbCByZXByZXNlbnRhdGlvbikuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHRvSmF2YUJ5dGVzKGJ5dGVzOiBhbnlbXSk6IGFueVtdIHtcblx0XHRjb25zdCBpbnRlcm5hbEJ5dGVzID0gSkFycmF5Lm5ld0luc3RhbmNlKEpCeXRlLlRZUEUsIGJ5dGVzLmxlbmd0aCk7XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBieXRlcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0aW50ZXJuYWxCeXRlc1tpXSA9IGJ5dGVzW2ldO1xuXHRcdH1cblx0XHRyZXR1cm4gaW50ZXJuYWxCeXRlcztcblx0fVxuXG5cdC8qKlxuXHQgKiBDb252ZXJ0cyBhIG5hdGl2ZSBKYXZhIGJ5dGUgYXJyYXkgYmFjayB0byBhIEphdmFTY3JpcHQgYXJyYXkgb2YgbnVtYmVycy5cblx0ICogVGhpcyBpcyB1c2VkIGludGVybmFsbHkgYnkgdGhlIEFQSSBsYXllciB0byByZXRyaWV2ZSBkYXRhIGZyb20gSmF2YSBtZXRob2RzLlxuXHQgKlxuXHQgKiBAcGFyYW0gaW50ZXJuYWxCeXRlcyBUaGUgbmF0aXZlIEphdmEgYnl0ZSBhcnJheS5cblx0ICogQHJldHVybnMgQSBKYXZhU2NyaXB0IGFycmF5IGNvbnRhaW5pbmcgdGhlIGJ5dGUgdmFsdWVzIChudW1iZXJzKS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgdG9KYXZhU2NyaXB0Qnl0ZXMoaW50ZXJuYWxCeXRlczogYW55W10pOiBhbnlbXSB7XG5cdFx0Y29uc3QgYnl0ZXMgPSBbXTtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGludGVybmFsQnl0ZXMubGVuZ3RoOyBpKyspIHtcblx0XHRcdGJ5dGVzLnB1c2goaW50ZXJuYWxCeXRlc1tpXSk7XG5cdFx0fVxuXHRcdHJldHVybiBieXRlcztcblx0fVxuXG5cdC8qKlxuXHQgKiBDb252ZXJ0cyBhIHN0YW5kYXJkIHRleHQgc3RyaW5nIGludG8gYSBieXRlIGFycmF5IHVzaW5nIHRoZSBkZWZhdWx0IHBsYXRmb3JtIGVuY29kaW5nLlxuXHQgKlxuXHQgKiBAcGFyYW0gdGV4dCBUaGUgaW5wdXQgdGV4dCBzdHJpbmcuXG5cdCAqIEByZXR1cm5zIEEgSmF2YVNjcmlwdCBhcnJheSByZXByZXNlbnRpbmcgdGhlIGJ5dGVzIG9mIHRoZSB0ZXh0LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyB0ZXh0VG9CeXRlQXJyYXkodGV4dDogc3RyaW5nKTogYW55W10ge1xuXHRcdC8vIEphdmFTdHJpbmcgaXMgdW51c2VkIGluIHRoZSBmaW5hbCBpbXBsZW1lbnRhdGlvbiwgYnV0IGtlcHQgZnJvbSBvcmlnaW5hbCBzdHJ1Y3R1cmVcblx0XHRjb25zdCBqYXZhU3RyaW5nID0gbmV3IEpTdHJpbmcodGV4dCk7XG5cdFx0Y29uc3QgbmF0aXZlID0gQnl0ZXNGYWNhZGUudGV4dFRvQnl0ZUFycmF5KHRleHQpO1xuXHRcdHJldHVybiBCeXRlcy50b0phdmFTY3JpcHRCeXRlcyhuYXRpdmUpO1xuXHR9XG5cblx0LyoqXG5cdCAqIENvbnZlcnRzIGEgYnl0ZSBhcnJheSBiYWNrIGludG8gYSB0ZXh0IHN0cmluZy5cblx0ICpcblx0ICogQHBhcmFtIGRhdGEgVGhlIEphdmFTY3JpcHQgYXJyYXkgb2YgYnl0ZXMuXG5cdCAqIEByZXR1cm5zIFRoZSByZWNvbnN0cnVjdGVkIHRleHQgc3RyaW5nLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBieXRlQXJyYXlUb1RleHQoZGF0YTogYW55W10pOiBzdHJpbmcge1xuXHRcdGNvbnN0IG5hdGl2ZSA9IEJ5dGVzLnRvSmF2YUJ5dGVzKGRhdGEpO1xuXHRcdHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZywgQnl0ZXMudG9KYXZhU2NyaXB0Qnl0ZXMobmF0aXZlKSk7XG5cdH1cblxuXHQvKipcblx0ICogQ29udmVydHMgYSAzMi1iaXQgaW50ZWdlciB2YWx1ZSBpbnRvIGEgYnl0ZSBhcnJheSwgcmVzcGVjdGluZyB0aGUgc3BlY2lmaWVkIGJ5dGUgb3JkZXIuXG5cdCAqXG5cdCAqIEBwYXJhbSB2YWx1ZSBUaGUgaW50ZWdlciB2YWx1ZSB0byBjb252ZXJ0LlxuXHQgKiBAcGFyYW0gYnl0ZU9yZGVyIFNwZWNpZmllcyB0aGUgYnl0ZSBvcmRlcmluZzogXCJCSUdfRU5ESUFOXCIgKG1vc3Qgc2lnbmlmaWNhbnQgYnl0ZSBmaXJzdCkgb3IgXCJMSVRUTEVfRU5ESUFOXCIgKGxlYXN0IHNpZ25pZmljYW50IGJ5dGUgZmlyc3QpLlxuXHQgKiBAcmV0dXJucyBBIEphdmFTY3JpcHQgYXJyYXkgcmVwcmVzZW50aW5nIHRoZSA0LWJ5dGUgaW50ZWdlci5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaW50VG9CeXRlQXJyYXkodmFsdWU6IG51bWJlciwgYnl0ZU9yZGVyOiAgXCJCSUdfRU5ESUFOXCIgfCBcIkxJVFRMRV9FTkRJQU5cIik6IGFueVtdIHtcblx0XHRyZXR1cm4gQnl0ZXNGYWNhZGUuaW50VG9CeXRlQXJyYXkodmFsdWUsIGJ5dGVPcmRlcik7XG5cdH1cblxuXHQvKipcblx0ICogQ29udmVydHMgYSA0LWJ5dGUgYXJyYXkgYmFjayBpbnRvIGEgMzItYml0IGludGVnZXIgdmFsdWUsIHJlc3BlY3RpbmcgdGhlIHNwZWNpZmllZCBieXRlIG9yZGVyLlxuXHQgKlxuXHQgKiBAcGFyYW0gZGF0YSBUaGUgNC1ieXRlIGFycmF5IChKYXZhU2NyaXB0IGFycmF5IG9mIG51bWJlcnMpLlxuXHQgKiBAcGFyYW0gYnl0ZU9yZGVyIFNwZWNpZmllcyB0aGUgYnl0ZSBvcmRlcmluZyB1c2VkIGR1cmluZyBjb252ZXJzaW9uLlxuXHQgKiBAcmV0dXJucyBUaGUgcmVjb25zdHJ1Y3RlZCBpbnRlZ2VyIHZhbHVlLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBieXRlQXJyYXlUb0ludChkYXRhOiBhbnlbXSwgYnl0ZU9yZGVyOiBcIkJJR19FTkRJQU5cIiB8IFwiTElUVExFX0VORElBTlwiKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gQnl0ZXNGYWNhZGUuYnl0ZUFycmF5VG9JbnQoZGF0YSwgYnl0ZU9yZGVyKTtcblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IEJ5dGVzO1xufSJdLAogICJtYXBwaW5ncyI6ICJBQUtBLE1BQU0sVUFBVSxLQUFLLEtBQUssa0JBQWtCO0FBQzVDLE1BQU0sUUFBUSxLQUFLLEtBQUssZ0JBQWdCO0FBQ3hDLE1BQU0sU0FBUyxLQUFLLEtBQUsseUJBQXlCO0FBQ2xELE1BQU0sY0FBYyxLQUFLLEtBQUsscURBQXFEO0FBTTVFLE1BQU0sTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTbEIsT0FBYyxZQUFZLE9BQXFCO0FBQzlDLFVBQU0sZ0JBQWdCLE9BQU8sWUFBWSxNQUFNLE1BQU0sTUFBTSxNQUFNO0FBQ2pFLGFBQVMsSUFBSSxHQUFHLElBQUksTUFBTSxRQUFRLEtBQUs7QUFDdEMsb0JBQWMsQ0FBQyxJQUFJLE1BQU0sQ0FBQztBQUFBLElBQzNCO0FBQ0EsV0FBTztBQUFBLEVBQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0EsT0FBYyxrQkFBa0IsZUFBNkI7QUFDNUQsVUFBTSxRQUFRLENBQUM7QUFDZixhQUFTLElBQUksR0FBRyxJQUFJLGNBQWMsUUFBUSxLQUFLO0FBQzlDLFlBQU0sS0FBSyxjQUFjLENBQUMsQ0FBQztBQUFBLElBQzVCO0FBQ0EsV0FBTztBQUFBLEVBQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsZ0JBQWdCLE1BQXFCO0FBRWxELFVBQU0sYUFBYSxJQUFJLFFBQVEsSUFBSTtBQUNuQyxVQUFNLFNBQVMsWUFBWSxnQkFBZ0IsSUFBSTtBQUMvQyxXQUFPLE1BQU0sa0JBQWtCLE1BQU07QUFBQSxFQUN0QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUUEsT0FBYyxnQkFBZ0IsTUFBcUI7QUFDbEQsVUFBTSxTQUFTLE1BQU0sWUFBWSxJQUFJO0FBQ3JDLFdBQU8sT0FBTyxhQUFhLE1BQU0sUUFBUSxNQUFNLGtCQUFrQixNQUFNLENBQUM7QUFBQSxFQUN6RTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTQSxPQUFjLGVBQWUsT0FBZSxXQUFtRDtBQUM5RixXQUFPLFlBQVksZUFBZSxPQUFPLFNBQVM7QUFBQSxFQUNuRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTQSxPQUFjLGVBQWUsTUFBYSxXQUFtRDtBQUM1RixXQUFPLFlBQVksZUFBZSxNQUFNLFNBQVM7QUFBQSxFQUNsRDtBQUNEO0FBR0EsSUFBSSxPQUFPLFdBQVcsYUFBYTtBQUVsQyxTQUFPLFVBQVU7QUFDbEI7IiwKICAibmFtZXMiOiBbXQp9Cg==