@nlabs/reaktor 0.10.0 → 0.10.2

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 (448) hide show
  1. package/.env +1 -0
  2. package/.env.example +1 -0
  3. package/DATABASE_I18N_GUIDE.md +434 -0
  4. package/TEST_UTILITIES_GUIDE.md +360 -0
  5. package/coverage/actions/index.html +21 -36
  6. package/coverage/actions/notifications.ts.html +223 -0
  7. package/coverage/actions/posts.ts.html +2356 -0
  8. package/coverage/adapters/arangoAdapter.ts.html +170 -20
  9. package/coverage/adapters/fileAdapter.ts.html +445 -0
  10. package/coverage/adapters/index.html +72 -42
  11. package/coverage/adapters/postAdapter.ts.html +436 -0
  12. package/coverage/adapters/reaktorAdapter.ts.html +201 -18
  13. package/coverage/adapters/tagAdapter.ts.html +274 -25
  14. package/coverage/adapters/userAdapter.ts.html +829 -0
  15. package/coverage/analyticsUtils.ts.html +286 -0
  16. package/coverage/config.ts.html +766 -0
  17. package/coverage/index.html +77 -77
  18. package/coverage/mocks/group.ts.html +5 -5
  19. package/coverage/mocks/image.ts.html +18 -12
  20. package/coverage/mocks/index.html +37 -7
  21. package/coverage/mocks/post.ts.html +8 -8
  22. package/coverage/mocks/tag.ts.html +2 -2
  23. package/coverage/mocks/user.ts.html +18 -15
  24. package/coverage/testUtils.ts.html +1309 -0
  25. package/coverage/translationQueue.ts.html +592 -0
  26. package/coverage/types/error.types.ts.html +148 -0
  27. package/coverage/types/index.html +2 -2
  28. package/coverage/utils/adapterUtils.ts.html +39 -27
  29. package/coverage/utils/analyticsUtils.ts.html +35 -41
  30. package/coverage/utils/authUtils.ts.html +328 -0
  31. package/coverage/utils/dbI18n.ts.html +280 -0
  32. package/coverage/utils/googleTranslate.ts.html +385 -0
  33. package/coverage/utils/index.html +29 -44
  34. package/coverage/utils/localeUtils.ts.html +193 -0
  35. package/coverage/utils/sessionUtils.ts.html +211 -0
  36. package/coverage/utils/testUtils.ts.html +1309 -0
  37. package/index.js +1 -1
  38. package/lex.config.mjs +34 -0
  39. package/lib/actions/apps.d.ts +4 -4
  40. package/lib/actions/apps.js +17 -239
  41. package/lib/actions/connections.d.ts +2 -1
  42. package/lib/actions/connections.js +6 -89
  43. package/lib/actions/content.d.ts +13 -0
  44. package/lib/actions/content.js +17 -0
  45. package/lib/actions/conversations.d.ts +4 -2
  46. package/lib/actions/conversations.js +19 -336
  47. package/lib/actions/dynamodb.d.ts +4 -0
  48. package/lib/actions/dynamodb.js +2 -150
  49. package/lib/actions/email.d.ts +5 -2
  50. package/lib/actions/email.js +2 -152
  51. package/lib/actions/files.d.ts +3 -3
  52. package/lib/actions/files.js +5 -283
  53. package/lib/actions/groups.d.ts +4 -5
  54. package/lib/actions/groups.js +19 -259
  55. package/lib/actions/images.d.ts +8 -1
  56. package/lib/actions/images.js +31 -700
  57. package/lib/actions/index.d.ts +27 -23
  58. package/lib/actions/index.js +2 -66
  59. package/lib/actions/ios.d.ts +3 -3
  60. package/lib/actions/ios.js +9 -162
  61. package/lib/actions/locations.d.ts +3 -3
  62. package/lib/actions/locations.js +7 -122
  63. package/lib/actions/messages.d.ts +3 -4
  64. package/lib/actions/messages.js +21 -196
  65. package/lib/actions/notifications.d.ts +5 -1
  66. package/lib/actions/notifications.js +2 -59
  67. package/lib/actions/payments.d.ts +3 -1
  68. package/lib/actions/payments.js +11 -464
  69. package/lib/actions/posts.d.ts +7 -4
  70. package/lib/actions/posts.js +75 -527
  71. package/lib/actions/profiles.d.ts +4 -0
  72. package/lib/actions/profiles.js +8 -0
  73. package/lib/actions/reactions.d.ts +3 -1
  74. package/lib/actions/reactions.js +25 -312
  75. package/lib/actions/s3.d.ts +4 -0
  76. package/lib/actions/s3.js +2 -133
  77. package/lib/actions/search.d.ts +2 -2
  78. package/lib/actions/search.js +5 -90
  79. package/lib/actions/sms.d.ts +2 -9
  80. package/lib/actions/sms.js +2 -108
  81. package/lib/actions/statistics.d.ts +2 -1
  82. package/lib/actions/statistics.js +6 -60
  83. package/lib/actions/{subscription.d.ts → subscriptions.d.ts} +2 -2
  84. package/lib/actions/subscriptions.js +12 -0
  85. package/lib/actions/tags.d.ts +3 -3
  86. package/lib/actions/tags.js +19 -287
  87. package/lib/actions/users.d.ts +13 -12
  88. package/lib/actions/users.js +66 -763
  89. package/lib/actions/websockets.d.ts +2 -2
  90. package/lib/actions/websockets.js +14 -158
  91. package/lib/adapters/arangoAdapter.d.ts +7 -1
  92. package/lib/adapters/arangoAdapter.js +2 -46
  93. package/lib/adapters/contentAdapter.d.ts +8 -0
  94. package/lib/adapters/contentAdapter.js +2 -0
  95. package/lib/adapters/fileAdapter.d.ts +8 -2
  96. package/lib/adapters/fileAdapter.js +2 -76
  97. package/lib/adapters/imageAdapter.d.ts +7 -1
  98. package/lib/adapters/imageAdapter.js +2 -40
  99. package/lib/adapters/index.d.ts +9 -0
  100. package/lib/adapters/index.js +2 -0
  101. package/lib/adapters/messageAdapter.d.ts +7 -1
  102. package/lib/adapters/messageAdapter.js +2 -49
  103. package/lib/adapters/postAdapter.d.ts +7 -1
  104. package/lib/adapters/postAdapter.js +2 -70
  105. package/lib/adapters/reaktorAdapter.d.ts +16 -6
  106. package/lib/adapters/reaktorAdapter.js +2 -44
  107. package/lib/adapters/tagAdapter.d.ts +8 -1
  108. package/lib/adapters/tagAdapter.js +2 -50
  109. package/lib/adapters/userAdapter.d.ts +12 -1
  110. package/lib/adapters/userAdapter.js +2 -115
  111. package/lib/config.d.ts +43 -6
  112. package/lib/config.js +2 -125
  113. package/lib/handlers/graphqlHandler.d.ts +4 -0
  114. package/lib/handlers/graphqlHandler.js +2 -0
  115. package/lib/index.d.ts +17 -10
  116. package/lib/index.js +2 -66
  117. package/lib/lambdas/actions/websockets.d.ts +3 -3
  118. package/lib/lambdas/actions/websockets.js +14 -116
  119. package/lib/lambdas/authorizer.js +2 -67
  120. package/lib/lambdas/connection.js +2 -91
  121. package/lib/lambdas/utils/message.js +2 -42
  122. package/lib/lambdas/utils/websocket.js +2 -105
  123. package/lib/mocks/conversation.js +2 -35
  124. package/lib/mocks/file.js +2 -38
  125. package/lib/mocks/group.js +2 -47
  126. package/lib/mocks/image.d.ts +1 -1
  127. package/lib/mocks/image.js +2 -44
  128. package/lib/mocks/post.js +2 -55
  129. package/lib/mocks/tag.d.ts +1 -1
  130. package/lib/mocks/tag.js +2 -37
  131. package/lib/mocks/user.d.ts +1 -1
  132. package/lib/mocks/user.js +2 -88
  133. package/lib/mutations/content.d.ts +2 -0
  134. package/lib/mutations/content.js +2 -0
  135. package/lib/mutations/index.d.ts +11 -3
  136. package/lib/mutations/index.js +2 -26
  137. package/lib/mutations/locations.d.ts +1 -1
  138. package/lib/mutations/locations.js +2 -44
  139. package/lib/mutations/messages.d.ts +1 -1
  140. package/lib/mutations/messages.js +2 -86
  141. package/lib/mutations/posts.d.ts +1 -1
  142. package/lib/mutations/posts.js +2 -53
  143. package/lib/mutations/profiles.d.ts +2 -0
  144. package/lib/mutations/profiles.js +2 -0
  145. package/lib/mutations/reactions.d.ts +1 -1
  146. package/lib/mutations/reactions.js +2 -51
  147. package/lib/mutations/statistics.d.ts +1 -1
  148. package/lib/mutations/statistics.js +2 -39
  149. package/lib/mutations/subscriptions.d.ts +1 -1
  150. package/lib/mutations/subscriptions.js +2 -56
  151. package/lib/mutations/tags.d.ts +1 -1
  152. package/lib/mutations/tags.js +2 -120
  153. package/lib/mutations/users.js +2 -116
  154. package/lib/objectTypes/app.js +2 -173
  155. package/lib/objectTypes/bankAccount.js +2 -76
  156. package/lib/objectTypes/connection.js +2 -48
  157. package/lib/objectTypes/content.d.ts +2 -0
  158. package/lib/objectTypes/content.js +2 -0
  159. package/lib/objectTypes/conversation.js +2 -77
  160. package/lib/objectTypes/creditCard.js +2 -86
  161. package/lib/objectTypes/document.js +2 -46
  162. package/lib/objectTypes/error.js +2 -46
  163. package/lib/objectTypes/external.js +2 -74
  164. package/lib/objectTypes/file.js +2 -100
  165. package/lib/objectTypes/filter.js +2 -43
  166. package/lib/objectTypes/group.js +2 -123
  167. package/lib/objectTypes/iapSubscription.js +2 -40
  168. package/lib/objectTypes/image.d.ts +4 -0
  169. package/lib/objectTypes/image.js +2 -129
  170. package/lib/objectTypes/index.d.ts +26 -24
  171. package/lib/objectTypes/index.js +2 -68
  172. package/lib/objectTypes/location.js +2 -109
  173. package/lib/objectTypes/message.js +2 -96
  174. package/lib/objectTypes/passcode.js +2 -42
  175. package/lib/objectTypes/plan.js +2 -95
  176. package/lib/objectTypes/post.js +2 -125
  177. package/lib/objectTypes/profile.d.ts +3 -0
  178. package/lib/objectTypes/profile.js +2 -0
  179. package/lib/objectTypes/reaction.js +2 -61
  180. package/lib/objectTypes/relation.js +2 -49
  181. package/lib/objectTypes/search.js +2 -72
  182. package/lib/objectTypes/statistics.js +2 -39
  183. package/lib/objectTypes/subscription.js +2 -117
  184. package/lib/objectTypes/tag.js +2 -65
  185. package/lib/objectTypes/user.js +2 -144
  186. package/lib/queries/content.d.ts +2 -0
  187. package/lib/queries/content.js +2 -0
  188. package/lib/queries/index.d.ts +10 -3
  189. package/lib/queries/index.js +2 -33
  190. package/lib/queries/locations.d.ts +1 -1
  191. package/lib/queries/locations.js +2 -45
  192. package/lib/queries/messages.d.ts +1 -1
  193. package/lib/queries/messages.js +2 -52
  194. package/lib/queries/posts.d.ts +1 -1
  195. package/lib/queries/posts.js +2 -154
  196. package/lib/queries/reactions.d.ts +1 -1
  197. package/lib/queries/reactions.js +2 -56
  198. package/lib/queries/statistics.d.ts +1 -1
  199. package/lib/queries/statistics.js +2 -39
  200. package/lib/queries/subscriptions.d.ts +1 -1
  201. package/lib/queries/subscriptions.js +2 -44
  202. package/lib/queries/tags.d.ts +1 -1
  203. package/lib/queries/tags.js +2 -75
  204. package/lib/queries/users.js +2 -64
  205. package/lib/templates/email/layout.js +3 -25
  206. package/lib/templates/email/passwordForgot.js +3 -25
  207. package/lib/templates/email/passwordRecovery.js +3 -25
  208. package/lib/templates/email/verifyEmail.js +3 -25
  209. package/lib/templates/email/welcome.js +3 -25
  210. package/lib/templates/sms/passwordForgot.js +2 -24
  211. package/lib/templates/sms/passwordRecovery.js +2 -24
  212. package/lib/templates/sms/verifyEmail.js +2 -24
  213. package/lib/templates/sms/verifyPhone.js +2 -24
  214. package/lib/templates/sms/welcome.js +2 -24
  215. package/lib/types/apps.types.d.ts +6 -2
  216. package/lib/types/apps.types.js +2 -32
  217. package/lib/types/arangodb.types.d.ts +8 -4
  218. package/lib/types/arangodb.types.js +1 -16
  219. package/lib/types/auth.types.d.ts +11 -5
  220. package/lib/types/auth.types.js +1 -16
  221. package/lib/types/connections.types.d.ts +5 -1
  222. package/lib/types/connections.types.js +1 -16
  223. package/lib/types/content.types.d.ts +31 -0
  224. package/lib/types/content.types.js +1 -0
  225. package/lib/types/conversations.types.d.ts +6 -2
  226. package/lib/types/conversations.types.js +1 -16
  227. package/lib/types/email.types.d.ts +9 -5
  228. package/lib/types/email.types.js +1 -16
  229. package/lib/types/error.types.d.ts +1 -0
  230. package/lib/types/error.types.js +2 -44
  231. package/lib/types/files.types.d.ts +5 -1
  232. package/lib/types/files.types.js +1 -16
  233. package/lib/types/google.types.d.ts +4 -0
  234. package/lib/types/google.types.js +1 -16
  235. package/lib/types/groups.types.d.ts +5 -1
  236. package/lib/types/groups.types.js +1 -16
  237. package/lib/types/images.types.d.ts +6 -2
  238. package/lib/types/images.types.js +1 -16
  239. package/lib/types/index.d.ts +26 -20
  240. package/lib/types/index.js +2 -60
  241. package/lib/types/locations.types.d.ts +5 -1
  242. package/lib/types/locations.types.js +1 -16
  243. package/lib/types/messages.types.d.ts +7 -3
  244. package/lib/types/messages.types.js +1 -16
  245. package/lib/types/notifications.types.d.ts +9 -5
  246. package/lib/types/notifications.types.js +1 -16
  247. package/lib/types/payments.types.d.ts +5 -1
  248. package/lib/types/payments.types.js +1 -16
  249. package/lib/types/posts.types.d.ts +7 -3
  250. package/lib/types/posts.types.js +1 -16
  251. package/lib/types/{personas.types.d.ts → profiles.types.d.ts} +3 -15
  252. package/lib/types/profiles.types.js +1 -0
  253. package/lib/types/statistics.types.js +1 -16
  254. package/lib/types/tags.types.d.ts +5 -1
  255. package/lib/types/tags.types.js +1 -16
  256. package/lib/types/users.types.d.ts +41 -10
  257. package/lib/types/users.types.js +1 -16
  258. package/lib/types/websockets.types.d.ts +5 -1
  259. package/lib/types/websockets.types.js +1 -16
  260. package/lib/utils/adapterUtils.d.ts +4 -0
  261. package/lib/utils/adapterUtils.js +2 -45
  262. package/lib/utils/analyticsUtils.d.ts +5 -1
  263. package/lib/utils/analyticsUtils.js +2 -72
  264. package/lib/utils/arangodbUtils.d.ts +6 -2
  265. package/lib/utils/arangodbUtils.js +5 -163
  266. package/lib/utils/{auth.d.ts → authUtils.d.ts} +3 -1
  267. package/lib/utils/authUtils.js +2 -0
  268. package/lib/utils/contextUtils.d.ts +3 -0
  269. package/lib/utils/contextUtils.js +2 -0
  270. package/lib/utils/dbI18n.d.ts +10 -0
  271. package/lib/utils/dbI18n.example.d.ts +20 -0
  272. package/lib/utils/dbI18n.example.js +6 -0
  273. package/lib/utils/dbI18n.js +2 -0
  274. package/lib/utils/googleTranslate.d.ts +6 -0
  275. package/lib/utils/googleTranslate.js +2 -0
  276. package/lib/utils/graphqlUtils.d.ts +10 -0
  277. package/lib/utils/graphqlUtils.js +2 -0
  278. package/lib/utils/index.d.ts +18 -5
  279. package/lib/utils/index.js +2 -30
  280. package/lib/utils/languageDetection.d.ts +8 -0
  281. package/lib/utils/languageDetection.js +2 -0
  282. package/lib/utils/localeUtils.d.ts +11 -0
  283. package/lib/utils/localeUtils.example.d.ts +5 -0
  284. package/lib/utils/localeUtils.example.js +2 -0
  285. package/lib/utils/localeUtils.js +2 -0
  286. package/lib/utils/middlewareUtils.d.ts +2 -0
  287. package/lib/utils/middlewareUtils.js +2 -0
  288. package/lib/utils/{session.d.ts → sessionUtils.d.ts} +1 -1
  289. package/lib/utils/sessionUtils.js +2 -0
  290. package/lib/utils/stripeUtils.d.ts +7 -3
  291. package/lib/utils/stripeUtils.js +2 -43
  292. package/lib/utils/templateUtils.d.ts +3 -0
  293. package/lib/utils/templateUtils.js +2 -0
  294. package/lib/utils/testUtils.d.ts +95 -0
  295. package/lib/utils/testUtils.js +2 -0
  296. package/lib/utils/translationQueue.d.ts +29 -0
  297. package/lib/utils/translationQueue.example.d.ts +33 -0
  298. package/lib/utils/translationQueue.example.js +2 -0
  299. package/lib/utils/translationQueue.js +2 -0
  300. package/package.json +32 -28
  301. package/tsconfig.build.json +21 -0
  302. package/tsconfig.lint.json +33 -0
  303. package/tsconfig.test.json +31 -0
  304. package/.prettierrc.js +0 -4
  305. package/dist/actions/apps.js +0 -242
  306. package/dist/actions/connections.js +0 -90
  307. package/dist/actions/conversations.js +0 -350
  308. package/dist/actions/dynamodb.js +0 -150
  309. package/dist/actions/email.js +0 -152
  310. package/dist/actions/files.js +0 -283
  311. package/dist/actions/groups.js +0 -292
  312. package/dist/actions/images.js +0 -735
  313. package/dist/actions/index.js +0 -66
  314. package/dist/actions/ios.js +0 -164
  315. package/dist/actions/locations.js +0 -122
  316. package/dist/actions/messages.js +0 -208
  317. package/dist/actions/notifications.js +0 -59
  318. package/dist/actions/payments.js +0 -497
  319. package/dist/actions/personas.js +0 -110
  320. package/dist/actions/posts.js +0 -595
  321. package/dist/actions/reactions.js +0 -322
  322. package/dist/actions/s3.js +0 -133
  323. package/dist/actions/search.js +0 -90
  324. package/dist/actions/sms.js +0 -108
  325. package/dist/actions/statistics.js +0 -62
  326. package/dist/actions/subscription.js +0 -220
  327. package/dist/actions/tags.js +0 -292
  328. package/dist/actions/users.js +0 -784
  329. package/dist/actions/websockets.js +0 -174
  330. package/dist/adapters/arangoAdapter.js +0 -46
  331. package/dist/adapters/fileAdapter.js +0 -76
  332. package/dist/adapters/imageAdapter.js +0 -40
  333. package/dist/adapters/messageAdapter.js +0 -49
  334. package/dist/adapters/postAdapter.js +0 -70
  335. package/dist/adapters/reaktorAdapter.js +0 -44
  336. package/dist/adapters/tagAdapter.js +0 -50
  337. package/dist/adapters/userAdapter.js +0 -115
  338. package/dist/config.js +0 -125
  339. package/dist/index.js +0 -66
  340. package/dist/lambdas/actions/websockets.js +0 -132
  341. package/dist/lambdas/authorizer.js +0 -67
  342. package/dist/lambdas/connection.js +0 -91
  343. package/dist/lambdas/utils/message.js +0 -42
  344. package/dist/lambdas/utils/websocket.js +0 -105
  345. package/dist/mocks/conversation.js +0 -35
  346. package/dist/mocks/file.js +0 -38
  347. package/dist/mocks/group.js +0 -47
  348. package/dist/mocks/image.js +0 -44
  349. package/dist/mocks/nlabs.png +0 -0
  350. package/dist/mocks/post.js +0 -55
  351. package/dist/mocks/tag.js +0 -37
  352. package/dist/mocks/user.js +0 -88
  353. package/dist/mutations/index.js +0 -26
  354. package/dist/mutations/locations.js +0 -44
  355. package/dist/mutations/messages.js +0 -86
  356. package/dist/mutations/personas.js +0 -100
  357. package/dist/mutations/posts.js +0 -53
  358. package/dist/mutations/reactions.js +0 -51
  359. package/dist/mutations/statistics.js +0 -39
  360. package/dist/mutations/subscriptions.js +0 -56
  361. package/dist/mutations/tags.js +0 -120
  362. package/dist/mutations/users.js +0 -116
  363. package/dist/objectTypes/app.js +0 -173
  364. package/dist/objectTypes/bankAccount.js +0 -76
  365. package/dist/objectTypes/connection.js +0 -48
  366. package/dist/objectTypes/conversation.js +0 -77
  367. package/dist/objectTypes/creditCard.js +0 -86
  368. package/dist/objectTypes/document.js +0 -46
  369. package/dist/objectTypes/error.js +0 -46
  370. package/dist/objectTypes/external.js +0 -74
  371. package/dist/objectTypes/file.js +0 -100
  372. package/dist/objectTypes/filter.js +0 -43
  373. package/dist/objectTypes/group.js +0 -123
  374. package/dist/objectTypes/iapSubscription.js +0 -40
  375. package/dist/objectTypes/image.js +0 -129
  376. package/dist/objectTypes/index.js +0 -68
  377. package/dist/objectTypes/location.js +0 -109
  378. package/dist/objectTypes/message.js +0 -96
  379. package/dist/objectTypes/passcode.js +0 -42
  380. package/dist/objectTypes/persona.js +0 -87
  381. package/dist/objectTypes/plan.js +0 -95
  382. package/dist/objectTypes/post.js +0 -125
  383. package/dist/objectTypes/reaction.js +0 -61
  384. package/dist/objectTypes/relation.js +0 -49
  385. package/dist/objectTypes/search.js +0 -72
  386. package/dist/objectTypes/statistics.js +0 -39
  387. package/dist/objectTypes/subscription.js +0 -117
  388. package/dist/objectTypes/tag.js +0 -65
  389. package/dist/objectTypes/user.js +0 -144
  390. package/dist/queries/index.js +0 -33
  391. package/dist/queries/locations.js +0 -45
  392. package/dist/queries/messages.js +0 -52
  393. package/dist/queries/posts.js +0 -154
  394. package/dist/queries/reactions.js +0 -56
  395. package/dist/queries/statistics.js +0 -39
  396. package/dist/queries/subscriptions.js +0 -44
  397. package/dist/queries/tags.js +0 -75
  398. package/dist/queries/users.js +0 -64
  399. package/dist/templates/email/layout.js +0 -302
  400. package/dist/templates/email/passwordForgot.js +0 -38
  401. package/dist/templates/email/passwordRecovery.js +0 -35
  402. package/dist/templates/email/verifyEmail.js +0 -38
  403. package/dist/templates/email/welcome.js +0 -38
  404. package/dist/templates/sms/passwordForgot.js +0 -24
  405. package/dist/templates/sms/passwordRecovery.js +0 -24
  406. package/dist/templates/sms/verifyEmail.js +0 -24
  407. package/dist/templates/sms/verifyPhone.js +0 -24
  408. package/dist/templates/sms/welcome.js +0 -24
  409. package/dist/types/apps.js +0 -32
  410. package/dist/types/arangodb.js +0 -16
  411. package/dist/types/auth.js +0 -16
  412. package/dist/types/connections.js +0 -16
  413. package/dist/types/conversations.js +0 -16
  414. package/dist/types/email.js +0 -16
  415. package/dist/types/error.js +0 -44
  416. package/dist/types/files.js +0 -16
  417. package/dist/types/google.js +0 -16
  418. package/dist/types/groups.js +0 -16
  419. package/dist/types/images.js +0 -16
  420. package/dist/types/index.js +0 -60
  421. package/dist/types/locations.js +0 -16
  422. package/dist/types/messages.js +0 -16
  423. package/dist/types/notifications.js +0 -16
  424. package/dist/types/payments.js +0 -16
  425. package/dist/types/personas.js +0 -16
  426. package/dist/types/posts.js +0 -16
  427. package/dist/types/statistics.js +0 -16
  428. package/dist/types/tags.js +0 -16
  429. package/dist/types/users.js +0 -16
  430. package/dist/types/websockets.js +0 -16
  431. package/dist/utils/adapterUtils.js +0 -45
  432. package/dist/utils/analyticsUtils.js +0 -72
  433. package/dist/utils/arangodbUtils.js +0 -165
  434. package/dist/utils/auth.js +0 -57
  435. package/dist/utils/index.js +0 -30
  436. package/dist/utils/session.js +0 -60
  437. package/jest.setup.js +0 -0
  438. package/lex.config.cjs +0 -13
  439. package/lib/actions/personas.d.ts +0 -3
  440. package/lib/actions/personas.js +0 -110
  441. package/lib/actions/subscription.js +0 -208
  442. package/lib/mutations/personas.d.ts +0 -2
  443. package/lib/mutations/personas.js +0 -100
  444. package/lib/objectTypes/persona.d.ts +0 -3
  445. package/lib/objectTypes/persona.js +0 -87
  446. package/lib/types/personas.types.js +0 -16
  447. package/lib/utils/auth.js +0 -57
  448. package/lib/utils/session.js +0 -60
@@ -1,5 +1,5 @@
1
- import { ApiContext } from '../types/auth.types';
2
- import type { WebsocketConnection } from '../types/websockets.types';
1
+ import { ApiContext } from '../types/auth.types.js';
2
+ import type { WebsocketConnection } from '../types/websockets.types.js';
3
3
  export declare const addSocket: (socketId: string, token: string) => Promise<WebsocketConnection>;
4
4
  export declare const getSocketByUser: (userId: string) => Promise<WebsocketConnection>;
5
5
  export declare const getSocketById: (socketId: string) => Promise<any>;
@@ -1,82 +1,11 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var websockets_exports = {};
19
- __export(websockets_exports, {
20
- WebsocketClient: () => WebsocketClient,
21
- addSocket: () => addSocket,
22
- getConnectionByConvo: () => getConnectionByConvo,
23
- getSocketById: () => getSocketById,
24
- getSocketByUser: () => getSocketByUser,
25
- removeSocket: () => removeSocket
26
- });
27
- module.exports = __toCommonJS(websockets_exports);
28
- var import_client_apigatewaymanagementapi = require("@aws-sdk/client-apigatewaymanagementapi");
29
- var import_utils = require("@nlabs/utils");
30
- var import_arangojs = require("arangojs");
31
- var import_users = require("./users");
32
- var import_config = require("../config");
33
- var import_arangodbUtils = require("../utils/arangodbUtils");
34
- const addSocket = async (socketId, token) => {
35
- const action = "addSocket";
36
- const formatSocketId = (0, import_utils.parseString)(socketId, 32);
37
- const formatToken = (0, import_utils.parseString)(token);
38
- try {
39
- const database = (0, import_arangodbUtils.useDb)(process.env.ARANGODB_DATABASE);
40
- const user = await (0, import_users.getUserByToken)({ database, session: null }, formatToken);
41
- if (!user) {
42
- throw new Error("Unauthorized");
43
- }
44
- const update = {
45
- socketId: formatSocketId,
46
- modified: Date.now()
47
- };
48
- const insert = {
49
- ...update,
50
- _key: (0, import_utils.createHash)(`socket-${formatSocketId}`),
51
- userId: user.userId
52
- };
53
- const aqlQry = import_arangojs.aql`UPSERT {userId: ${user.userId}}
54
- INSERT ${insert}
55
- UPDATE ${update}
56
- IN sockets RETURN NEW`;
57
- return database.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
58
- throw error;
59
- });
60
- } catch (error) {
61
- throw new Error("Unauthorized");
62
- }
63
- };
64
- const getSocketByUser = (userId) => {
65
- const formatUserId = (0, import_utils.parseId)(userId);
66
- const db = (0, import_arangodbUtils.useDb)(process.env.ARANGODB_DATABASE);
67
- const aqlQry = import_arangojs.aql`FOR s IN sockets
68
- FILTER s.userId == ${formatUserId}
1
+ import{ApiGatewayManagementApi as N}from"@aws-sdk/client-apigatewaymanagementapi";import{createHash as T,parseId as u,parseString as p}from"@nlabs/utils/parsers/strings";import{aql as d}from"arangojs";import{Config as g}from"../config.js";import{useDb as I}from"../utils/arangodbUtils.js";import{getUserByToken as k}from"./users.js";import{ErrorTypes as E}from"../types/error.types.js";import{logError as R}from"../utils/analyticsUtils.js";const x=async(n,t)=>{const r="addSocket",s=p(n,32),o=p(t);try{const e=process.env.ARANGODB_DATABASE||"",a=I(e),i=await k({config:g.get(),databaseName:e},o);if(!i)throw new Error("Unauthorized");const c={socketId:s,modified:Date.now()},l={...c,_key:T(`socket-${s}`),userId:i.userId},y=d`UPSERT {userId: ${i.userId}}
2
+ INSERT ${l}
3
+ UPDATE ${c}
4
+ IN sockets RETURN NEW`;return a.query(y).then(m=>m.next()).catch(m=>{throw R({action:r,category:"websockets",value:E.DATABASE_ERROR},m,{})})}catch{throw new Error("Unauthorized")}},B=n=>{const t=u(n),r=process.env.ARANGODB_DATABASE||"",s=I(r),o=d`FOR s IN sockets
5
+ FILTER s.userId == ${t}
69
6
  LIMIT 1
70
- RETURN s`;
71
- return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
72
- throw error;
73
- });
74
- };
75
- const getSocketById = (socketId) => {
76
- const formatSocketId = (0, import_utils.parseId)(socketId);
77
- const db = (0, import_arangodbUtils.useDb)(process.env.ARANGODB_DATABASE);
78
- const aqlQry = import_arangojs.aql`FOR s IN sockets
79
- FILTER s.socketId == ${formatSocketId}
7
+ RETURN s`;return s.query(o).then(e=>e.next()).catch(e=>{throw e})},$=n=>{const t=u(n),r=process.env.ARANGODB_DATABASE||"",s=I(r),o=d`FOR s IN sockets
8
+ FILTER s.socketId == ${t}
80
9
  LET user = FIRST(
81
10
  FOR u IN users
82
11
  FILTER u.sub == s.sub
@@ -84,91 +13,18 @@ const getSocketById = (socketId) => {
84
13
  RETURN u;
85
14
  )
86
15
  LIMIT 1
87
- RETURN MERGE(c, {user:user}`;
88
- return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
89
- throw error;
90
- });
91
- };
92
- const getConnectionByConvo = (context, convoId) => {
93
- const { database, session: { userId: sessionId } } = context;
94
- const sessionDocId = `users/${(0, import_utils.parseId)(sessionId)}`;
95
- const convoDocId = `conversations/${(0, import_utils.parseId)(convoId)}`;
96
- const db = database;
97
- const aqlQry = import_arangojs.aql`FOR c, e IN 1..1 OUTBOUND ${sessionDocId} hasConversation
98
- FILTER c._id == ${convoDocId}
16
+ RETURN MERGE(c, {user:user}`;return s.query(o).then(e=>e.next()).catch(e=>{throw e})},q=(n,t)=>{const{databaseName:r,session:{userId:s}={}}=n,o=`users/${u(s)}`,e=`conversations/${u(t)}`,a=I(r),i=d`FOR c, e IN 1..1 OUTBOUND ${o} hasConversation
17
+ FILTER c._id == ${e}
99
18
  LIMIT 1
100
19
  LET u = (
101
- FOR inUser, inEdge IN 1..1 INBOUND ${convoDocId} hasConversation
20
+ FOR inUser, inEdge IN 1..1 INBOUND ${e} hasConversation
102
21
  FOR n IN connections
103
22
  FILTER inUser.sub == n.sub
104
23
  RETURN n.connectionId
105
24
  )
106
- RETURN u`;
107
- return db.query(aqlQry).then((cursor) => cursor.all()).catch((error) => {
108
- throw error;
109
- });
110
- };
111
- const removeSocket = (socketId) => {
112
- const action = "removeSocket";
113
- const formatSocketId = (0, import_utils.parseString)(socketId, 32);
114
- const db = (0, import_arangodbUtils.useDb)(process.env.ARANGODB_DATABASE);
115
- const aqlQry = import_arangojs.aql`FOR s IN sockets
116
- FILTER s.socketId == ${formatSocketId}
25
+ RETURN u`;return a.query(i).then(c=>c.all()).catch(c=>{throw c})},A=n=>{const t="removeSocket",r=p(n,32),s=process.env.ARANGODB_DATABASE||"",o=I(s),e=d`FOR s IN sockets
26
+ FILTER s.socketId == ${r}
117
27
  LIMIT 1
118
28
  REMOVE s IN sockets
119
- RETURN OLD`;
120
- return db.query(aqlQry).then((cursor) => cursor.next()).catch((error) => {
121
- throw error;
122
- });
123
- };
124
- class WebsocketClient {
125
- client;
126
- constructor(config) {
127
- if (config) {
128
- this.setupClient(config || {});
129
- }
130
- }
131
- // Allow just passing a single event to setup the client for ease of use
132
- async setupClient({ requestContext }) {
133
- if (!this.client && requestContext) {
134
- const { apiId, domainName, stage } = requestContext;
135
- let updatedDomainName = domainName;
136
- if (apiId) {
137
- updatedDomainName = `${apiId}.execute-api.${process.env.API_REGION}.amazonaws.com`;
138
- }
139
- this.client = new import_client_apigatewaymanagementapi.ApiGatewayManagementApi({
140
- credentials: import_config.Config.get("aws.credentials"),
141
- endpoint: `https://${updatedDomainName}/${stage}`,
142
- region: import_config.Config.get("aws.region")
143
- });
144
- }
145
- }
146
- async send(connection, payload) {
147
- console.log(connection, payload);
148
- let socketId;
149
- if (connection?.requestContext) {
150
- await this.setupClient(connection);
151
- const { socketId: updatedSocketId } = connection.requestContext;
152
- socketId = updatedSocketId;
153
- } else {
154
- socketId = connection;
155
- }
156
- await this.client.postToConnection({ ConnectionId: socketId, Data: JSON.stringify(payload) }).promise().catch(async (postError) => {
157
- console.log(JSON.stringify(postError));
158
- if (postError.statusCode === 410) {
159
- await removeSocket(socketId);
160
- }
161
- });
162
- return true;
163
- }
164
- }
165
- // Annotate the CommonJS export names for ESM import in node:
166
- 0 && (module.exports = {
167
- WebsocketClient,
168
- addSocket,
169
- getConnectionByConvo,
170
- getSocketById,
171
- getSocketByUser,
172
- removeSocket
173
- });
174
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvd2Vic29ja2V0cy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7QXBpR2F0ZXdheU1hbmFnZW1lbnRBcGl9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1hcGlnYXRld2F5bWFuYWdlbWVudGFwaSc7XG5pbXBvcnQge2NyZWF0ZUhhc2gsIHBhcnNlSWQsIHBhcnNlU3RyaW5nfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHthcWwsIERhdGFiYXNlfSBmcm9tICdhcmFuZ29qcyc7XG5pbXBvcnQge0FxbFF1ZXJ5fSBmcm9tICdhcmFuZ29qcy9hcWwnO1xuXG5pbXBvcnQge2dldFVzZXJCeVRva2VufSBmcm9tICcuL3VzZXJzJztcbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi9jb25maWcnO1xuaW1wb3J0IHtBcGlDb250ZXh0fSBmcm9tICcuLi90eXBlcy9hdXRoLnR5cGVzJztcbmltcG9ydCB7dXNlRGJ9IGZyb20gJy4uL3V0aWxzL2FyYW5nb2RiVXRpbHMnO1xuXG5pbXBvcnQgdHlwZSB7V2Vic29ja2V0Q29ubmVjdGlvbn0gZnJvbSAnLi4vdHlwZXMvd2Vic29ja2V0cy50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBhZGRTb2NrZXQgPSBhc3luYyAoc29ja2V0SWQ6IHN0cmluZywgdG9rZW46IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdhZGRTb2NrZXQnO1xuICBjb25zdCBmb3JtYXRTb2NrZXRJZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoc29ja2V0SWQsIDMyKTtcbiAgY29uc3QgZm9ybWF0VG9rZW46IHN0cmluZyA9IHBhcnNlU3RyaW5nKHRva2VuKTtcblxuICB0cnkge1xuICAgIGNvbnN0IGRhdGFiYXNlOiBEYXRhYmFzZSA9IHVzZURiKHByb2Nlc3MuZW52LkFSQU5HT0RCX0RBVEFCQVNFKTtcbiAgICBjb25zdCB1c2VyID0gYXdhaXQgZ2V0VXNlckJ5VG9rZW4oe2RhdGFiYXNlLCBzZXNzaW9uOiBudWxsfSwgZm9ybWF0VG9rZW4pO1xuXG4gICAgaWYoIXVzZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5hdXRob3JpemVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgdXBkYXRlID0ge1xuICAgICAgc29ja2V0SWQ6IGZvcm1hdFNvY2tldElkLFxuICAgICAgbW9kaWZpZWQ6IERhdGUubm93KClcbiAgICB9O1xuICAgIGNvbnN0IGluc2VydCA9IHtcbiAgICAgIC4uLnVwZGF0ZSxcbiAgICAgIF9rZXk6IGNyZWF0ZUhhc2goYHNvY2tldC0ke2Zvcm1hdFNvY2tldElkfWApLFxuICAgICAgdXNlcklkOiB1c2VyLnVzZXJJZFxuICAgIH07XG4gICAgY29uc3QgYXFsUXJ5OiBBcWxRdWVyeSA9IGFxbGBVUFNFUlQge3VzZXJJZDogJHt1c2VyLnVzZXJJZH19XG4gICAgICBJTlNFUlQgJHtpbnNlcnR9XG4gICAgICBVUERBVEUgJHt1cGRhdGV9XG4gICAgICBJTiBzb2NrZXRzIFJFVFVSTiBORVdgO1xuXG4gICAgcmV0dXJuIGRhdGFiYXNlLnF1ZXJ5KGFxbFFyeSlcbiAgICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgIH0pO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdVbmF1dGhvcml6ZWQnKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGdldFNvY2tldEJ5VXNlciA9ICh1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICBjb25zdCBmb3JtYXRVc2VySWQ6IHN0cmluZyA9IHBhcnNlSWQodXNlcklkKTtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIocHJvY2Vzcy5lbnYuQVJBTkdPREJfREFUQUJBU0UpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIHMgSU4gc29ja2V0c1xuICAgIEZJTFRFUiBzLnVzZXJJZCA9PSAke2Zvcm1hdFVzZXJJZH1cbiAgICBMSU1JVCAxXG4gICAgUkVUVVJOIHNgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U29ja2V0QnlJZCA9IChzb2NrZXRJZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgY29uc3QgZm9ybWF0U29ja2V0SWQ6IHN0cmluZyA9IHBhcnNlSWQoc29ja2V0SWQpO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSB1c2VEYihwcm9jZXNzLmVudi5BUkFOR09EQl9EQVRBQkFTRSk7XG4gIGNvbnN0IGFxbFFyeSA9IGFxbGBGT1IgcyBJTiBzb2NrZXRzXG4gICAgRklMVEVSIHMuc29ja2V0SWQgPT0gJHtmb3JtYXRTb2NrZXRJZH1cbiAgICBMRVQgdXNlciA9IEZJUlNUKFxuICAgICAgRk9SIHUgSU4gdXNlcnNcbiAgICAgIEZJTFRFUiB1LnN1YiA9PSBzLnN1YlxuICAgICAgTElNSVQgMVxuICAgICAgUkVUVVJOIHU7XG4gICAgKVxuICAgIExJTUlUIDFcbiAgICBSRVRVUk4gTUVSR0UoYywge3VzZXI6dXNlcn1gO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q29ubmVjdGlvbkJ5Q29udm8gPSAoY29udGV4dDogQXBpQ29udGV4dCwgY29udm9JZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgY29uc3Qge2RhdGFiYXNlLCBzZXNzaW9uOiB7dXNlcklkOiBzZXNzaW9uSWR9fSA9IGNvbnRleHQ7XG4gIGNvbnN0IHNlc3Npb25Eb2NJZDogc3RyaW5nID0gYHVzZXJzLyR7cGFyc2VJZChzZXNzaW9uSWQpfWA7XG4gIGNvbnN0IGNvbnZvRG9jSWQ6IHN0cmluZyA9IGBjb252ZXJzYXRpb25zLyR7cGFyc2VJZChjb252b0lkKX1gO1xuICBjb25zdCBkYjogRGF0YWJhc2UgPSBkYXRhYmFzZTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjLCBlIElOIDEuLjEgT1VUQk9VTkQgJHtzZXNzaW9uRG9jSWR9IGhhc0NvbnZlcnNhdGlvblxuICBGSUxURVIgYy5faWQgPT0gJHtjb252b0RvY0lkfVxuICBMSU1JVCAxXG4gIExFVCB1ID0gKFxuICAgIEZPUiBpblVzZXIsIGluRWRnZSBJTiAxLi4xIElOQk9VTkQgJHtjb252b0RvY0lkfSBoYXNDb252ZXJzYXRpb25cbiAgICBGT1IgbiBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBpblVzZXIuc3ViID09IG4uc3ViXG4gICAgUkVUVVJOIG4uY29ubmVjdGlvbklkXG4gIClcbiAgUkVUVVJOIHVgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCByZW1vdmVTb2NrZXQgPSAoc29ja2V0SWQ6IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdyZW1vdmVTb2NrZXQnO1xuICBjb25zdCBmb3JtYXRTb2NrZXRJZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoc29ja2V0SWQsIDMyKTtcbiAgY29uc3QgZGI6IERhdGFiYXNlID0gdXNlRGIocHJvY2Vzcy5lbnYuQVJBTkdPREJfREFUQUJBU0UpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIHMgSU4gc29ja2V0c1xuICAgICAgRklMVEVSIHMuc29ja2V0SWQgPT0gJHtmb3JtYXRTb2NrZXRJZH1cbiAgICAgIExJTUlUIDFcbiAgICAgIFJFTU9WRSBzIElOIHNvY2tldHNcbiAgICAgIFJFVFVSTiBPTERgO1xuXG4gIHJldHVybiBkYi5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFdlYlNvY2tldENsaWVudENvbnRleHQge1xuICByZWFkb25seSByZXF1ZXN0Q29udGV4dD86IHtcbiAgICByZWFkb25seSBhcGlJZDogc3RyaW5nO1xuICAgIHJlYWRvbmx5IGRvbWFpbk5hbWU6IHN0cmluZztcbiAgICByZWFkb25seSBzdGFnZTogc3RyaW5nO1xuICB9O1xufVxuZXhwb3J0IGNsYXNzIFdlYnNvY2tldENsaWVudCB7XG4gIGNsaWVudDtcblxuICBjb25zdHJ1Y3Rvcihjb25maWc/KSB7XG4gICAgaWYoY29uZmlnKSB7XG4gICAgICB0aGlzLnNldHVwQ2xpZW50KGNvbmZpZyB8fCB7fSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWxsb3cganVzdCBwYXNzaW5nIGEgc2luZ2xlIGV2ZW50IHRvIHNldHVwIHRoZSBjbGllbnQgZm9yIGVhc2Ugb2YgdXNlXG4gIGFzeW5jIHNldHVwQ2xpZW50KHtyZXF1ZXN0Q29udGV4dH06IFdlYlNvY2tldENsaWVudENvbnRleHQpIHtcbiAgICBpZighdGhpcy5jbGllbnQgJiYgcmVxdWVzdENvbnRleHQpIHtcbiAgICAgIGNvbnN0IHthcGlJZCwgZG9tYWluTmFtZSwgc3RhZ2V9ID0gcmVxdWVzdENvbnRleHQ7XG4gICAgICBsZXQgdXBkYXRlZERvbWFpbk5hbWU6IHN0cmluZyA9IGRvbWFpbk5hbWU7XG5cbiAgICAgIGlmKGFwaUlkKSB7XG4gICAgICAgIHVwZGF0ZWREb21haW5OYW1lID0gYCR7YXBpSWR9LmV4ZWN1dGUtYXBpLiR7cHJvY2Vzcy5lbnYuQVBJX1JFR0lPTn0uYW1hem9uYXdzLmNvbWA7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2xpZW50ID0gbmV3IEFwaUdhdGV3YXlNYW5hZ2VtZW50QXBpKHtcbiAgICAgICAgY3JlZGVudGlhbHM6IENvbmZpZy5nZXQoJ2F3cy5jcmVkZW50aWFscycpLFxuICAgICAgICBlbmRwb2ludDogYGh0dHBzOi8vJHt1cGRhdGVkRG9tYWluTmFtZX0vJHtzdGFnZX1gLFxuICAgICAgICByZWdpb246IENvbmZpZy5nZXQoJ2F3cy5yZWdpb24nKVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2VuZChjb25uZWN0aW9uLCBwYXlsb2FkKSB7XG4gICAgY29uc29sZS5sb2coY29ubmVjdGlvbiwgcGF5bG9hZCk7XG5cbiAgICAvLyBDaGVhdCBhbmQgYWxsb3cgZXZlbnQgdG8gYmUgcGFzc2VkIGluIHRoaXMgYWxzbyBsZXRzIHVzIGRlZmF1bHQgdG8gc2V0dXBDbGllbnQgdG9vXG4gICAgbGV0IHNvY2tldElkO1xuXG4gICAgaWYoY29ubmVjdGlvbj8ucmVxdWVzdENvbnRleHQpIHtcbiAgICAgIGF3YWl0IHRoaXMuc2V0dXBDbGllbnQoY29ubmVjdGlvbik7XG4gICAgICBjb25zdCB7c29ja2V0SWQ6IHVwZGF0ZWRTb2NrZXRJZH0gPSBjb25uZWN0aW9uLnJlcXVlc3RDb250ZXh0O1xuICAgICAgc29ja2V0SWQgPSB1cGRhdGVkU29ja2V0SWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNvY2tldElkID0gY29ubmVjdGlvbjtcbiAgICB9XG5cbiAgICBhd2FpdCB0aGlzLmNsaWVudC5wb3N0VG9Db25uZWN0aW9uKHtDb25uZWN0aW9uSWQ6IHNvY2tldElkLCBEYXRhOiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKX0pXG4gICAgICAucHJvbWlzZSgpXG4gICAgICAuY2F0Y2goYXN5bmMgKHBvc3RFcnJvcikgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShwb3N0RXJyb3IpKTtcblxuICAgICAgICBpZihwb3N0RXJyb3Iuc3RhdHVzQ29kZSA9PT0gNDEwKSB7XG4gICAgICAgICAgLy8gRGlzY29ubmVjdCBjbGllbnRcbiAgICAgICAgICBhd2FpdCByZW1vdmVTb2NrZXQoc29ja2V0SWQpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsNENBQXNDO0FBQ3RDLG1CQUErQztBQUMvQyxzQkFBNEI7QUFHNUIsbUJBQTZCO0FBQzdCLG9CQUFxQjtBQUVyQiwyQkFBb0I7QUFJYixNQUFNLFlBQVksT0FBTyxVQUFrQixVQUFnRDtBQUNoRyxRQUFNLFNBQWlCO0FBQ3ZCLFFBQU0scUJBQXlCLDBCQUFZLFVBQVUsRUFBRTtBQUN2RCxRQUFNLGtCQUFzQiwwQkFBWSxLQUFLO0FBRTdDLE1BQUk7QUFDRixVQUFNLGVBQXFCLDRCQUFNLFFBQVEsSUFBSSxpQkFBaUI7QUFDOUQsVUFBTSxPQUFPLFVBQU0sNkJBQWUsRUFBQyxVQUFVLFNBQVMsS0FBSSxHQUFHLFdBQVc7QUFFeEUsUUFBRyxDQUFDLE1BQU07QUFDUixZQUFNLElBQUksTUFBTSxjQUFjO0FBQUEsSUFDaEM7QUFFQSxVQUFNLFNBQVM7QUFBQSxNQUNiLFVBQVU7QUFBQSxNQUNWLFVBQVUsS0FBSyxJQUFJO0FBQUEsSUFDckI7QUFDQSxVQUFNLFNBQVM7QUFBQSxNQUNiLEdBQUc7QUFBQSxNQUNILFVBQU0seUJBQVcsVUFBVSxjQUFjLEVBQUU7QUFBQSxNQUMzQyxRQUFRLEtBQUs7QUFBQSxJQUNmO0FBQ0EsVUFBTSxTQUFtQixzQ0FBc0IsS0FBSyxNQUFNO0FBQUEsZUFDL0MsTUFBTTtBQUFBLGVBQ04sTUFBTTtBQUFBO0FBR2pCLFdBQU8sU0FBUyxNQUFNLE1BQU0sRUFDekIsS0FBSyxDQUFDLFdBQVcsT0FBTyxLQUFLLENBQUMsRUFDOUIsTUFBTSxDQUFDLFVBQWlCO0FBQ3ZCLFlBQU07QUFBQSxJQUNSLENBQUM7QUFBQSxFQUNMLFNBQVEsT0FBTztBQUNiLFVBQU0sSUFBSSxNQUFNLGNBQWM7QUFBQSxFQUNoQztBQUNGO0FBRU8sTUFBTSxrQkFBa0IsQ0FBQyxXQUFpRDtBQUMvRSxRQUFNLG1CQUF1QixzQkFBUSxNQUFNO0FBQzNDLFFBQU0sU0FBZSw0QkFBTSxRQUFRLElBQUksaUJBQWlCO0FBQ3hELFFBQU0sU0FBUztBQUFBLHlCQUNRLFlBQVk7QUFBQTtBQUFBO0FBSW5DLFNBQU8sR0FBRyxNQUFNLE1BQU0sRUFDbkIsS0FBSyxDQUFDLFdBQVcsT0FBTyxLQUFLLENBQUMsRUFDOUIsTUFBTSxDQUFDLFVBQWlCO0FBQ3ZCLFVBQU07QUFBQSxFQUNSLENBQUM7QUFDTDtBQUVPLE1BQU0sZ0JBQWdCLENBQUMsYUFBbUM7QUFDL0QsUUFBTSxxQkFBeUIsc0JBQVEsUUFBUTtBQUMvQyxRQUFNLFNBQWUsNEJBQU0sUUFBUSxJQUFJLGlCQUFpQjtBQUN4RCxRQUFNLFNBQVM7QUFBQSwyQkFDVSxjQUFjO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVV2QyxTQUFPLEdBQUcsTUFBTSxNQUFNLEVBQ25CLEtBQUssQ0FBQyxXQUFXLE9BQU8sS0FBSyxDQUFDLEVBQzlCLE1BQU0sQ0FBQyxVQUFpQjtBQUN2QixVQUFNO0FBQUEsRUFDUixDQUFDO0FBQ0w7QUFFTyxNQUFNLHVCQUF1QixDQUFDLFNBQXFCLFlBQWtDO0FBQzFGLFFBQU0sRUFBQyxVQUFVLFNBQVMsRUFBQyxRQUFRLFVBQVMsRUFBQyxJQUFJO0FBQ2pELFFBQU0sZUFBdUIsYUFBUyxzQkFBUSxTQUFTLENBQUM7QUFDeEQsUUFBTSxhQUFxQixxQkFBaUIsc0JBQVEsT0FBTyxDQUFDO0FBQzVELFFBQU0sS0FBZTtBQUNyQixRQUFNLFNBQVMsZ0RBQWdDLFlBQVk7QUFBQSxvQkFDekMsVUFBVTtBQUFBO0FBQUE7QUFBQSx5Q0FHVyxVQUFVO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9qRCxTQUFPLEdBQUcsTUFBTSxNQUFNLEVBQ25CLEtBQUssQ0FBQyxXQUFXLE9BQU8sSUFBSSxDQUFDLEVBQzdCLE1BQU0sQ0FBQyxVQUFpQjtBQUN2QixVQUFNO0FBQUEsRUFDUixDQUFDO0FBQ0w7QUFFTyxNQUFNLGVBQWUsQ0FBQyxhQUFtRDtBQUM5RSxRQUFNLFNBQWlCO0FBQ3ZCLFFBQU0scUJBQXlCLDBCQUFZLFVBQVUsRUFBRTtBQUN2RCxRQUFNLFNBQWUsNEJBQU0sUUFBUSxJQUFJLGlCQUFpQjtBQUN4RCxRQUFNLFNBQVM7QUFBQSw2QkFDWSxjQUFjO0FBQUE7QUFBQTtBQUFBO0FBS3pDLFNBQU8sR0FBRyxNQUFNLE1BQU0sRUFDbkIsS0FBSyxDQUFDLFdBQVcsT0FBTyxLQUFLLENBQUMsRUFDOUIsTUFBTSxDQUFDLFVBQWlCO0FBQ3ZCLFVBQU07QUFBQSxFQUNSLENBQUM7QUFDTDtBQVNPLE1BQU0sZ0JBQWdCO0FBQUEsRUFDM0I7QUFBQSxFQUVBLFlBQVksUUFBUztBQUNuQixRQUFHLFFBQVE7QUFDVCxXQUFLLFlBQVksVUFBVSxDQUFDLENBQUM7QUFBQSxJQUMvQjtBQUFBLEVBQ0Y7QUFBQTtBQUFBLEVBR0EsTUFBTSxZQUFZLEVBQUMsZUFBYyxHQUEyQjtBQUMxRCxRQUFHLENBQUMsS0FBSyxVQUFVLGdCQUFnQjtBQUNqQyxZQUFNLEVBQUMsT0FBTyxZQUFZLE1BQUssSUFBSTtBQUNuQyxVQUFJLG9CQUE0QjtBQUVoQyxVQUFHLE9BQU87QUFDUiw0QkFBb0IsR0FBRyxLQUFLLGdCQUFnQixRQUFRLElBQUksVUFBVTtBQUFBLE1BQ3BFO0FBRUEsV0FBSyxTQUFTLElBQUksOERBQXdCO0FBQUEsUUFDeEMsYUFBYSxxQkFBTyxJQUFJLGlCQUFpQjtBQUFBLFFBQ3pDLFVBQVUsV0FBVyxpQkFBaUIsSUFBSSxLQUFLO0FBQUEsUUFDL0MsUUFBUSxxQkFBTyxJQUFJLFlBQVk7QUFBQSxNQUNqQyxDQUFDO0FBQUEsSUFDSDtBQUFBLEVBQ0Y7QUFBQSxFQUVBLE1BQU0sS0FBSyxZQUFZLFNBQVM7QUFDOUIsWUFBUSxJQUFJLFlBQVksT0FBTztBQUcvQixRQUFJO0FBRUosUUFBRyxZQUFZLGdCQUFnQjtBQUM3QixZQUFNLEtBQUssWUFBWSxVQUFVO0FBQ2pDLFlBQU0sRUFBQyxVQUFVLGdCQUFlLElBQUksV0FBVztBQUMvQyxpQkFBVztBQUFBLElBQ2IsT0FBTztBQUNMLGlCQUFXO0FBQUEsSUFDYjtBQUVBLFVBQU0sS0FBSyxPQUFPLGlCQUFpQixFQUFDLGNBQWMsVUFBVSxNQUFNLEtBQUssVUFBVSxPQUFPLEVBQUMsQ0FBQyxFQUN2RixRQUFRLEVBQ1IsTUFBTSxPQUFPLGNBQWM7QUFDMUIsY0FBUSxJQUFJLEtBQUssVUFBVSxTQUFTLENBQUM7QUFFckMsVUFBRyxVQUFVLGVBQWUsS0FBSztBQUUvQixjQUFNLGFBQWEsUUFBUTtBQUFBLE1BQzdCO0FBQUEsSUFDRixDQUFDO0FBRUgsV0FBTztBQUFBLEVBQ1Q7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
29
+ RETURN OLD`;return o.query(e).then(a=>a.next()).catch(a=>{throw R({action:t,category:"websockets",value:E.DATABASE_ERROR},a,{})})};class v{client;constructor(t){t&&this.setupClient(t||{})}async setupClient({requestContext:t}){if(!this.client&&t){const{apiId:r,domainName:s,stage:o}=t;let e=s;r&&(e=`${r}.execute-api.${process.env.API_REGION}.amazonaws.com`),this.client=new N({credentials:g.get("aws.credentials"),endpoint:`https://${e}/${o}`,region:g.get("aws.region")})}}async send(t,r){let s;if(t?.requestContext){await this.setupClient(t);const{socketId:o}=t.requestContext;s=o}else s=t;return await this.client.postToConnection({ConnectionId:s,Data:JSON.stringify(r)}).promise().catch(async o=>{o.statusCode===410&&await A(s)}),!0}}export{v as WebsocketClient,x as addSocket,q as getConnectionByConvo,$ as getSocketById,B as getSocketByUser,A as removeSocket};
30
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FjdGlvbnMvd2Vic29ja2V0cy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7QXBpR2F0ZXdheU1hbmFnZW1lbnRBcGl9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1hcGlnYXRld2F5bWFuYWdlbWVudGFwaSc7XG5pbXBvcnQge2NyZWF0ZUhhc2gsIHBhcnNlSWQsIHBhcnNlU3RyaW5nfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9zdHJpbmdzJztcbmltcG9ydCB7YXFsLCBEYXRhYmFzZX0gZnJvbSAnYXJhbmdvanMnO1xuaW1wb3J0IHtBcWxRdWVyeX0gZnJvbSAnYXJhbmdvanMvYXFsJztcblxuaW1wb3J0IHtDb25maWd9IGZyb20gJy4uL2NvbmZpZy5qcyc7XG5pbXBvcnQge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgudHlwZXMuanMnO1xuaW1wb3J0IHt1c2VEYn0gZnJvbSAnLi4vdXRpbHMvYXJhbmdvZGJVdGlscy5qcyc7XG5pbXBvcnQge2dldFVzZXJCeVRva2VufSBmcm9tICcuL3VzZXJzLmpzJztcblxuaW1wb3J0IHtFcnJvclR5cGVzfSBmcm9tICcuLi90eXBlcy9lcnJvci50eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7V2Vic29ja2V0Q29ubmVjdGlvbn0gZnJvbSAnLi4vdHlwZXMvd2Vic29ja2V0cy50eXBlcy5qcyc7XG5pbXBvcnQge2xvZ0Vycm9yfSBmcm9tICcuLi91dGlscy9hbmFseXRpY3NVdGlscy5qcyc7XG5cbmV4cG9ydCBjb25zdCBhZGRTb2NrZXQgPSBhc3luYyAoc29ja2V0SWQ6IHN0cmluZywgdG9rZW46IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdhZGRTb2NrZXQnO1xuICBjb25zdCBmb3JtYXRTb2NrZXRJZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoc29ja2V0SWQsIDMyKTtcbiAgY29uc3QgZm9ybWF0VG9rZW46IHN0cmluZyA9IHBhcnNlU3RyaW5nKHRva2VuKTtcblxuICB0cnkge1xuICAgIGNvbnN0IGRhdGFiYXNlTmFtZTogc3RyaW5nID0gcHJvY2Vzcy5lbnYuQVJBTkdPREJfREFUQUJBU0UgfHwgJyc7XG4gICAgY29uc3QgZGF0YWJhc2U6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2VOYW1lKTtcbiAgICBjb25zdCB1c2VyID0gYXdhaXQgZ2V0VXNlckJ5VG9rZW4oe2NvbmZpZzogQ29uZmlnLmdldCgpLCBkYXRhYmFzZU5hbWV9LCBmb3JtYXRUb2tlbik7XG5cbiAgICBpZighdXNlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmF1dGhvcml6ZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCB1cGRhdGUgPSB7XG4gICAgICBzb2NrZXRJZDogZm9ybWF0U29ja2V0SWQsXG4gICAgICBtb2RpZmllZDogRGF0ZS5ub3coKVxuICAgIH07XG4gICAgY29uc3QgaW5zZXJ0ID0ge1xuICAgICAgLi4udXBkYXRlLFxuICAgICAgX2tleTogY3JlYXRlSGFzaChgc29ja2V0LSR7Zm9ybWF0U29ja2V0SWR9YCksXG4gICAgICB1c2VySWQ6IHVzZXIudXNlcklkXG4gICAgfTtcbiAgICBjb25zdCBhcWxRcnk6IEFxbFF1ZXJ5ID0gYXFsYFVQU0VSVCB7dXNlcklkOiAke3VzZXIudXNlcklkfX1cbiAgICAgIElOU0VSVCAke2luc2VydH1cbiAgICAgIFVQREFURSAke3VwZGF0ZX1cbiAgICAgIElOIHNvY2tldHMgUkVUVVJOIE5FV2A7XG5cbiAgICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICAgIHRocm93IGxvZ0Vycm9yKHtcbiAgICAgICAgICBhY3Rpb24sXG4gICAgICAgICAgY2F0ZWdvcnk6ICd3ZWJzb2NrZXRzJyxcbiAgICAgICAgICB2YWx1ZTogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgICAgICB9LCBlcnJvciwge30pO1xuICAgICAgfSk7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYXV0aG9yaXplZCcpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U29ja2V0QnlVc2VyID0gKHVzZXJJZDogc3RyaW5nKTogUHJvbWlzZTxXZWJzb2NrZXRDb25uZWN0aW9uPiA9PiB7XG4gIGNvbnN0IGZvcm1hdFVzZXJJZDogc3RyaW5nID0gcGFyc2VJZCh1c2VySWQpO1xuICBjb25zdCBkYXRhYmFzZU5hbWU6IHN0cmluZyA9IHByb2Nlc3MuZW52LkFSQU5HT0RCX0RBVEFCQVNFIHx8ICcnO1xuICBjb25zdCBkYXRhYmFzZTogRGF0YWJhc2UgPSB1c2VEYihkYXRhYmFzZU5hbWUpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIHMgSU4gc29ja2V0c1xuICAgIEZJTFRFUiBzLnVzZXJJZCA9PSAke2Zvcm1hdFVzZXJJZH1cbiAgICBMSU1JVCAxXG4gICAgUkVUVVJOIHNgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLm5leHQoKSlcbiAgICAuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U29ja2V0QnlJZCA9IChzb2NrZXRJZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgY29uc3QgZm9ybWF0U29ja2V0SWQ6IHN0cmluZyA9IHBhcnNlSWQoc29ja2V0SWQpO1xuICBjb25zdCBkYXRhYmFzZU5hbWU6IHN0cmluZyA9IHByb2Nlc3MuZW52LkFSQU5HT0RCX0RBVEFCQVNFIHx8ICcnO1xuICBjb25zdCBkYXRhYmFzZTogRGF0YWJhc2UgPSB1c2VEYihkYXRhYmFzZU5hbWUpO1xuICBjb25zdCBhcWxRcnkgPSBhcWxgRk9SIHMgSU4gc29ja2V0c1xuICAgIEZJTFRFUiBzLnNvY2tldElkID09ICR7Zm9ybWF0U29ja2V0SWR9XG4gICAgTEVUIHVzZXIgPSBGSVJTVChcbiAgICAgIEZPUiB1IElOIHVzZXJzXG4gICAgICBGSUxURVIgdS5zdWIgPT0gcy5zdWJcbiAgICAgIExJTUlUIDFcbiAgICAgIFJFVFVSTiB1O1xuICAgIClcbiAgICBMSU1JVCAxXG4gICAgUkVUVVJOIE1FUkdFKGMsIHt1c2VyOnVzZXJ9YDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldENvbm5lY3Rpb25CeUNvbnZvID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIGNvbnZvSWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiA9PiB7XG4gIGNvbnN0IHtkYXRhYmFzZU5hbWUsIHNlc3Npb246IHt1c2VySWQ6IHNlc3Npb25JZH0gPSB7fX0gPSBjb250ZXh0O1xuICBjb25zdCBzZXNzaW9uRG9jSWQ6IHN0cmluZyA9IGB1c2Vycy8ke3BhcnNlSWQoc2Vzc2lvbklkKX1gO1xuICBjb25zdCBjb252b0RvY0lkOiBzdHJpbmcgPSBgY29udmVyc2F0aW9ucy8ke3BhcnNlSWQoY29udm9JZCl9YDtcbiAgY29uc3QgZGF0YWJhc2U6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2VOYW1lKTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBjLCBlIElOIDEuLjEgT1VUQk9VTkQgJHtzZXNzaW9uRG9jSWR9IGhhc0NvbnZlcnNhdGlvblxuICBGSUxURVIgYy5faWQgPT0gJHtjb252b0RvY0lkfVxuICBMSU1JVCAxXG4gIExFVCB1ID0gKFxuICAgIEZPUiBpblVzZXIsIGluRWRnZSBJTiAxLi4xIElOQk9VTkQgJHtjb252b0RvY0lkfSBoYXNDb252ZXJzYXRpb25cbiAgICBGT1IgbiBJTiBjb25uZWN0aW9uc1xuICAgIEZJTFRFUiBpblVzZXIuc3ViID09IG4uc3ViXG4gICAgUkVUVVJOIG4uY29ubmVjdGlvbklkXG4gIClcbiAgUkVUVVJOIHVgO1xuXG4gIHJldHVybiBkYXRhYmFzZS5xdWVyeShhcWxRcnkpXG4gICAgLnRoZW4oKGN1cnNvcikgPT4gY3Vyc29yLmFsbCgpKVxuICAgIC5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCByZW1vdmVTb2NrZXQgPSAoc29ja2V0SWQ6IHN0cmluZyk6IFByb21pc2U8V2Vic29ja2V0Q29ubmVjdGlvbj4gPT4ge1xuICBjb25zdCBhY3Rpb246IHN0cmluZyA9ICdyZW1vdmVTb2NrZXQnO1xuICBjb25zdCBmb3JtYXRTb2NrZXRJZDogc3RyaW5nID0gcGFyc2VTdHJpbmcoc29ja2V0SWQsIDMyKTtcbiAgY29uc3QgZGF0YWJhc2VOYW1lOiBzdHJpbmcgPSBwcm9jZXNzLmVudi5BUkFOR09EQl9EQVRBQkFTRSB8fCAnJztcbiAgY29uc3QgZGF0YWJhc2U6IERhdGFiYXNlID0gdXNlRGIoZGF0YWJhc2VOYW1lKTtcbiAgY29uc3QgYXFsUXJ5ID0gYXFsYEZPUiBzIElOIHNvY2tldHNcbiAgICAgIEZJTFRFUiBzLnNvY2tldElkID09ICR7Zm9ybWF0U29ja2V0SWR9XG4gICAgICBMSU1JVCAxXG4gICAgICBSRU1PVkUgcyBJTiBzb2NrZXRzXG4gICAgICBSRVRVUk4gT0xEYDtcblxuICByZXR1cm4gZGF0YWJhc2UucXVlcnkoYXFsUXJ5KVxuICAgIC50aGVuKChjdXJzb3IpID0+IGN1cnNvci5uZXh0KCkpXG4gICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IGxvZ0Vycm9yKHtcbiAgICAgICAgYWN0aW9uLFxuICAgICAgICBjYXRlZ29yeTogJ3dlYnNvY2tldHMnLFxuICAgICAgICB2YWx1ZTogRXJyb3JUeXBlcy5EQVRBQkFTRV9FUlJPUlxuICAgICAgfSwgZXJyb3IsIHt9KTtcbiAgICB9KTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2ViU29ja2V0Q2xpZW50Q29udGV4dCB7XG4gIHJlYWRvbmx5IHJlcXVlc3RDb250ZXh0Pzoge1xuICAgIHJlYWRvbmx5IGFwaUlkOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgZG9tYWluTmFtZTogc3RyaW5nO1xuICAgIHJlYWRvbmx5IHN0YWdlOiBzdHJpbmc7XG4gIH07XG59XG5leHBvcnQgY2xhc3MgV2Vic29ja2V0Q2xpZW50IHtcbiAgY2xpZW50O1xuXG4gIGNvbnN0cnVjdG9yKGNvbmZpZz8pIHtcbiAgICBpZihjb25maWcpIHtcbiAgICAgIHRoaXMuc2V0dXBDbGllbnQoY29uZmlnIHx8IHt9KTtcbiAgICB9XG4gIH1cblxuICAvLyBBbGxvdyBqdXN0IHBhc3NpbmcgYSBzaW5nbGUgZXZlbnQgdG8gc2V0dXAgdGhlIGNsaWVudCBmb3IgZWFzZSBvZiB1c2VcbiAgYXN5bmMgc2V0dXBDbGllbnQoe3JlcXVlc3RDb250ZXh0fTogV2ViU29ja2V0Q2xpZW50Q29udGV4dCkge1xuICAgIGlmKCF0aGlzLmNsaWVudCAmJiByZXF1ZXN0Q29udGV4dCkge1xuICAgICAgY29uc3Qge2FwaUlkLCBkb21haW5OYW1lLCBzdGFnZX0gPSByZXF1ZXN0Q29udGV4dDtcbiAgICAgIGxldCB1cGRhdGVkRG9tYWluTmFtZTogc3RyaW5nID0gZG9tYWluTmFtZTtcblxuICAgICAgaWYoYXBpSWQpIHtcbiAgICAgICAgdXBkYXRlZERvbWFpbk5hbWUgPSBgJHthcGlJZH0uZXhlY3V0ZS1hcGkuJHtwcm9jZXNzLmVudi5BUElfUkVHSU9OfS5hbWF6b25hd3MuY29tYDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jbGllbnQgPSBuZXcgQXBpR2F0ZXdheU1hbmFnZW1lbnRBcGkoe1xuICAgICAgICBjcmVkZW50aWFsczogQ29uZmlnLmdldCgnYXdzLmNyZWRlbnRpYWxzJyksXG4gICAgICAgIGVuZHBvaW50OiBgaHR0cHM6Ly8ke3VwZGF0ZWREb21haW5OYW1lfS8ke3N0YWdlfWAsXG4gICAgICAgIHJlZ2lvbjogQ29uZmlnLmdldCgnYXdzLnJlZ2lvbicpXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzZW5kKGNvbm5lY3Rpb24sIHBheWxvYWQpIHtcbiAgICBjb25zb2xlLmxvZyhjb25uZWN0aW9uLCBwYXlsb2FkKTtcblxuICAgIC8vIENoZWF0IGFuZCBhbGxvdyBldmVudCB0byBiZSBwYXNzZWQgaW4gdGhpcyBhbHNvIGxldHMgdXMgZGVmYXVsdCB0byBzZXR1cENsaWVudCB0b29cbiAgICBsZXQgc29ja2V0SWQ7XG5cbiAgICBpZihjb25uZWN0aW9uPy5yZXF1ZXN0Q29udGV4dCkge1xuICAgICAgYXdhaXQgdGhpcy5zZXR1cENsaWVudChjb25uZWN0aW9uKTtcbiAgICAgIGNvbnN0IHtzb2NrZXRJZDogdXBkYXRlZFNvY2tldElkfSA9IGNvbm5lY3Rpb24ucmVxdWVzdENvbnRleHQ7XG4gICAgICBzb2NrZXRJZCA9IHVwZGF0ZWRTb2NrZXRJZDtcbiAgICB9IGVsc2Uge1xuICAgICAgc29ja2V0SWQgPSBjb25uZWN0aW9uO1xuICAgIH1cblxuICAgIGF3YWl0IHRoaXMuY2xpZW50LnBvc3RUb0Nvbm5lY3Rpb24oe0Nvbm5lY3Rpb25JZDogc29ja2V0SWQsIERhdGE6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpfSlcbiAgICAgIC5wcm9taXNlKClcbiAgICAgIC5jYXRjaChhc3luYyAocG9zdEVycm9yKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KHBvc3RFcnJvcikpO1xuXG4gICAgICAgIGlmKHBvc3RFcnJvci5zdGF0dXNDb2RlID09PSA0MTApIHtcbiAgICAgICAgICAvLyBEaXNjb25uZWN0IGNsaWVudFxuICAgICAgICAgIGF3YWl0IHJlbW92ZVNvY2tldChzb2NrZXRJZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUlBLE9BQVEsMkJBQUFBLE1BQThCLDBDQUN0QyxPQUFRLGNBQUFDLEVBQVksV0FBQUMsRUFBUyxlQUFBQyxNQUFrQiwrQkFDL0MsT0FBUSxPQUFBQyxNQUFvQixXQUc1QixPQUFRLFVBQUFDLE1BQWEsZUFFckIsT0FBUSxTQUFBQyxNQUFZLDRCQUNwQixPQUFRLGtCQUFBQyxNQUFxQixhQUU3QixPQUFRLGNBQUFDLE1BQWlCLDBCQUV6QixPQUFRLFlBQUFDLE1BQWUsNkJBRWhCLE1BQU1DLEVBQVksTUFBT0MsRUFBa0JDLElBQWdELENBQ2hHLE1BQU1DLEVBQWlCLFlBQ2pCQyxFQUF5QlgsRUFBWVEsRUFBVSxFQUFFLEVBQ2pESSxFQUFzQlosRUFBWVMsQ0FBSyxFQUU3QyxHQUFJLENBQ0YsTUFBTUksRUFBdUIsUUFBUSxJQUFJLG1CQUFxQixHQUN4REMsRUFBcUJYLEVBQU1VLENBQVksRUFDdkNFLEVBQU8sTUFBTVgsRUFBZSxDQUFDLE9BQVFGLEVBQU8sSUFBSSxFQUFHLGFBQUFXLENBQVksRUFBR0QsQ0FBVyxFQUVuRixHQUFHLENBQUNHLEVBQ0YsTUFBTSxJQUFJLE1BQU0sY0FBYyxFQUdoQyxNQUFNQyxFQUFTLENBQ2IsU0FBVUwsRUFDVixTQUFVLEtBQUssSUFBSSxDQUNyQixFQUNNTSxFQUFTLENBQ2IsR0FBR0QsRUFDSCxLQUFNbEIsRUFBVyxVQUFVYSxDQUFjLEVBQUUsRUFDM0MsT0FBUUksRUFBSyxNQUNmLEVBQ01HLEVBQW1CakIsb0JBQXNCYyxFQUFLLE1BQU07QUFBQSxlQUMvQ0UsQ0FB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SSxVQUFVLGtCQUdwRSxLQUFLLE9BQVMsSUFBSXRDLEVBQXdCLENBQ3hDLFlBQWFLLEVBQU8sSUFBSSxpQkFBaUIsRUFDekMsU0FBVSxXQUFXb0MsQ0FBaUIsSUFBSUQsQ0FBSyxHQUMvQyxPQUFRbkMsRUFBTyxJQUFJLFlBQVksQ0FDakMsQ0FBQyxDQUNILENBQ0YsQ0FFQSxNQUFNLEtBQUtxQyxFQUFZQyxFQUFTLENBSTlCLElBQUloQyxFQUVKLEdBQUcrQixHQUFZLGVBQWdCLENBQzdCLE1BQU0sS0FBSyxZQUFZQSxDQUFVLEVBQ2pDLEtBQU0sQ0FBQyxTQUFVRSxDQUFlLEVBQUlGLEVBQVcsZUFDL0MvQixFQUFXaUMsQ0FDYixNQUNFakMsRUFBVytCLEVBR2IsYUFBTSxLQUFLLE9BQU8saUJBQWlCLENBQUMsYUFBYy9CLEVBQVUsS0FBTSxLQUFLLFVBQVVnQyxDQUFPLENBQUMsQ0FBQyxFQUN2RixRQUFRLEVBQ1IsTUFBTSxNQUFPRSxHQUFjLENBR3ZCQSxFQUFVLGFBQWUsS0FFMUIsTUFBTVgsRUFBYXZCLENBQVEsQ0FFL0IsQ0FBQyxFQUVJLEVBQ1QsQ0FDRiIsCiAgIm5hbWVzIjogWyJBcGlHYXRld2F5TWFuYWdlbWVudEFwaSIsICJjcmVhdGVIYXNoIiwgInBhcnNlSWQiLCAicGFyc2VTdHJpbmciLCAiYXFsIiwgIkNvbmZpZyIsICJ1c2VEYiIsICJnZXRVc2VyQnlUb2tlbiIsICJFcnJvclR5cGVzIiwgImxvZ0Vycm9yIiwgImFkZFNvY2tldCIsICJzb2NrZXRJZCIsICJ0b2tlbiIsICJhY3Rpb24iLCAiZm9ybWF0U29ja2V0SWQiLCAiZm9ybWF0VG9rZW4iLCAiZGF0YWJhc2VOYW1lIiwgImRhdGFiYXNlIiwgInVzZXIiLCAidXBkYXRlIiwgImluc2VydCIsICJhcWxRcnkiLCAiY3Vyc29yIiwgImVycm9yIiwgImdldFNvY2tldEJ5VXNlciIsICJ1c2VySWQiLCAiZm9ybWF0VXNlcklkIiwgImdldFNvY2tldEJ5SWQiLCAiZ2V0Q29ubmVjdGlvbkJ5Q29udm8iLCAiY29udGV4dCIsICJjb252b0lkIiwgInNlc3Npb25JZCIsICJzZXNzaW9uRG9jSWQiLCAiY29udm9Eb2NJZCIsICJyZW1vdmVTb2NrZXQiLCAiV2Vic29ja2V0Q2xpZW50IiwgImNvbmZpZyIsICJyZXF1ZXN0Q29udGV4dCIsICJhcGlJZCIsICJkb21haW5OYW1lIiwgInN0YWdlIiwgInVwZGF0ZWREb21haW5OYW1lIiwgImNvbm5lY3Rpb24iLCAicGF5bG9hZCIsICJ1cGRhdGVkU29ja2V0SWQiLCAicG9zdEVycm9yIl0KfQo=
@@ -1,2 +1,8 @@
1
- import { DocumentType } from '../types/arangodb.types';
1
+ import { DocumentType } from '../types/arangodb.types.js';
2
+ export declare class ArangoValidationError extends Error {
3
+ field?: string;
4
+ constructor(message: string, field?: string);
5
+ }
6
+ export declare const validateDocumentInput: (doc: unknown) => DocumentType;
7
+ export declare const formatDocumentOutput: (doc: DocumentType) => DocumentType;
2
8
  export declare const parseDocument: (doc: DocumentType) => DocumentType;
@@ -1,46 +1,2 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var arangoAdapter_exports = {};
19
- __export(arangoAdapter_exports, {
20
- parseDocument: () => parseDocument
21
- });
22
- module.exports = __toCommonJS(arangoAdapter_exports);
23
- var import_utils = require("@nlabs/utils");
24
- var import_adapterUtils = require("../utils/adapterUtils");
25
- const parseDocument = (doc) => {
26
- const {
27
- _id,
28
- _key,
29
- added,
30
- id,
31
- modified
32
- } = doc;
33
- return (0, import_adapterUtils.removeEmptyKeys)({
34
- ...doc,
35
- _id: _id && (0, import_utils.parseArangoId)(_id),
36
- _key: _key && (0, import_utils.parseId)(_key),
37
- added: added && (0, import_utils.parseNum)(added, 13),
38
- id: (0, import_utils.parseArangoId)(_id || id),
39
- modified: modified && (0, import_utils.parseNum)(modified, 13)
40
- });
41
- };
42
- // Annotate the CommonJS export names for ESM import in node:
43
- 0 && (module.exports = {
44
- parseDocument
45
- });
46
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2FyYW5nb0FkYXB0ZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7cGFyc2VBcmFuZ29JZCwgcGFyc2VJZCwgcGFyc2VOdW19IGZyb20gJ0BubGFicy91dGlscyc7XG5cbmltcG9ydCB7RG9jdW1lbnRUeXBlfSBmcm9tICcuLi90eXBlcy9hcmFuZ29kYi50eXBlcyc7XG5pbXBvcnQge3JlbW92ZUVtcHR5S2V5c30gZnJvbSAnLi4vdXRpbHMvYWRhcHRlclV0aWxzJztcblxuZXhwb3J0IGNvbnN0IHBhcnNlRG9jdW1lbnQgPSAoZG9jOiBEb2N1bWVudFR5cGUpOiBEb2N1bWVudFR5cGUgPT4ge1xuICBjb25zdCB7XG4gICAgX2lkLFxuICAgIF9rZXksXG4gICAgYWRkZWQsXG4gICAgaWQsXG4gICAgbW9kaWZpZWRcbiAgfSA9IGRvYztcblxuICByZXR1cm4gcmVtb3ZlRW1wdHlLZXlzKHtcbiAgICAuLi5kb2MsXG4gICAgX2lkOiBfaWQgJiYgcGFyc2VBcmFuZ29JZChfaWQpLFxuICAgIF9rZXk6IF9rZXkgJiYgcGFyc2VJZChfa2V5KSxcbiAgICBhZGRlZDogYWRkZWQgJiYgcGFyc2VOdW0oYWRkZWQsIDEzKSxcbiAgICBpZDogcGFyc2VBcmFuZ29JZChfaWQgfHwgaWQpLFxuICAgIG1vZGlmaWVkOiBtb2RpZmllZCAmJiBwYXJzZU51bShtb2RpZmllZCwgMTMpXG4gIH0pO1xufTsiXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFBK0M7QUFHL0MsMEJBQThCO0FBRXZCLE1BQU0sZ0JBQWdCLENBQUMsUUFBb0M7QUFDaEUsUUFBTTtBQUFBLElBQ0o7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsRUFDRixJQUFJO0FBRUosYUFBTyxxQ0FBZ0I7QUFBQSxJQUNyQixHQUFHO0FBQUEsSUFDSCxLQUFLLFdBQU8sNEJBQWMsR0FBRztBQUFBLElBQzdCLE1BQU0sWUFBUSxzQkFBUSxJQUFJO0FBQUEsSUFDMUIsT0FBTyxhQUFTLHVCQUFTLE9BQU8sRUFBRTtBQUFBLElBQ2xDLFFBQUksNEJBQWMsT0FBTyxFQUFFO0FBQUEsSUFDM0IsVUFBVSxnQkFBWSx1QkFBUyxVQUFVLEVBQUU7QUFBQSxFQUM3QyxDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
1
+ import{parseNum as d}from"@nlabs/utils/parsers/numbers";import{parseArangoId as m,parseId as p}from"@nlabs/utils/parsers/strings";import{z as r}from"zod";import{removeEmptyKeys as c}from"../utils/adapterUtils.js";class i extends Error{constructor(e,n){super(e);this.field=n;this.name="ArangoValidationError"}}const u=r.object({_from:r.string().optional(),_id:r.string().optional(),_key:r.string().optional(),_oldRev:r.string().optional(),_rev:r.string().optional(),_to:r.string().optional(),added:r.number().optional(),id:r.string().optional(),modified:r.number().optional()}).passthrough(),T=t=>{try{return u.parse(t)}catch(o){if(o instanceof r.ZodError){const e=o.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new i(`Document validation failed: ${e}`)}throw o}},_=t=>t,w=t=>{try{return f(t)}catch(o){throw o instanceof i?o:new i(`Document parsing failed: ${o instanceof Error?o.message:"Unknown error"}`)}},f=t=>{const{_id:o,_key:e,added:n,id:a,modified:s}=t;return c({...t,...o&&{_id:m(o)},...e&&{_key:p(e)},...n!==void 0&&{added:d(n,13)},...(o||a)&&{id:m(o||a)},...s!==void 0&&{modified:d(s,13)}})};export{i as ArangoValidationError,_ as formatDocumentOutput,w as parseDocument,T as validateDocumentInput};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2FyYW5nb0FkYXB0ZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7cGFyc2VOdW19IGZyb20gJ0BubGFicy91dGlscy9wYXJzZXJzL251bWJlcnMnO1xuaW1wb3J0IHtwYXJzZUFyYW5nb0lkLCBwYXJzZUlkfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9zdHJpbmdzJztcbmltcG9ydCB7en0gZnJvbSAnem9kJztcblxuaW1wb3J0IHtEb2N1bWVudFR5cGV9IGZyb20gJy4uL3R5cGVzL2FyYW5nb2RiLnR5cGVzLmpzJztcbmltcG9ydCB7cmVtb3ZlRW1wdHlLZXlzfSBmcm9tICcuLi91dGlscy9hZGFwdGVyVXRpbHMuanMnO1xuXG5leHBvcnQgY2xhc3MgQXJhbmdvVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyBmaWVsZD86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdBcmFuZ29WYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IERvY3VtZW50SW5wdXRTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIF9mcm9tOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9pZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfa2V5OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9vbGRSZXY6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX3Jldjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfdG86IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgYWRkZWQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbW9kaWZpZWQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKVxufSkucGFzc3Rocm91Z2goKTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlRG9jdW1lbnRJbnB1dCA9IChkb2M6IHVua25vd24pOiBEb2N1bWVudFR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHZhbGlkYXRlZCA9IERvY3VtZW50SW5wdXRTY2hlbWEucGFyc2UoZG9jKTtcbiAgICByZXR1cm4gdmFsaWRhdGVkIGFzIERvY3VtZW50VHlwZTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChlKSA9PiBgJHtlLnBhdGguam9pbignLicpfTogJHtlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBBcmFuZ29WYWxpZGF0aW9uRXJyb3IoYERvY3VtZW50IHZhbGlkYXRpb24gZmFpbGVkOiAke2ZpZWxkRXJyb3JzfWApO1xuICAgIH1cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGZvcm1hdERvY3VtZW50T3V0cHV0ID0gKGRvYzogRG9jdW1lbnRUeXBlKTogRG9jdW1lbnRUeXBlID0+IGRvYztcblxuZXhwb3J0IGNvbnN0IHBhcnNlRG9jdW1lbnQgPSAoZG9jOiBEb2N1bWVudFR5cGUpOiBEb2N1bWVudFR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHBhcnNlZCA9IHBlcmZvcm1Eb2N1bWVudFRyYW5zZm9ybWF0aW9uKGRvYyk7XG4gICAgcmV0dXJuIHBhcnNlZDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2YgQXJhbmdvVmFsaWRhdGlvbkVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEFyYW5nb1ZhbGlkYXRpb25FcnJvcihgRG9jdW1lbnQgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1Eb2N1bWVudFRyYW5zZm9ybWF0aW9uID0gKGRvYzogRG9jdW1lbnRUeXBlKTogRG9jdW1lbnRUeXBlID0+IHtcbiAgY29uc3Qge1xuICAgIF9pZCxcbiAgICBfa2V5LFxuICAgIGFkZGVkLFxuICAgIGlkLFxuICAgIG1vZGlmaWVkXG4gIH0gPSBkb2M7XG5cbiAgY29uc3QgdHJhbnNmb3JtZWQgPSByZW1vdmVFbXB0eUtleXMoe1xuICAgIC4uLmRvYyxcbiAgICAuLi4oX2lkICYmIHtfaWQ6IHBhcnNlQXJhbmdvSWQoX2lkKX0pLFxuICAgIC4uLihfa2V5ICYmIHtfa2V5OiBwYXJzZUlkKF9rZXkpfSksXG4gICAgLi4uKGFkZGVkICE9PSB1bmRlZmluZWQgJiYge2FkZGVkOiBwYXJzZU51bShhZGRlZCwgMTMpfSksXG4gICAgLi4uKChfaWQgfHwgaWQpICYmIHtpZDogcGFyc2VBcmFuZ29JZChfaWQgfHwgaWQpfSksXG4gICAgLi4uKG1vZGlmaWVkICE9PSB1bmRlZmluZWQgJiYge21vZGlmaWVkOiBwYXJzZU51bShtb2RpZmllZCwgMTMpfSlcbiAgfSk7XG5cbiAgcmV0dXJuIHRyYW5zZm9ybWVkO1xufTsiXSwKICAibWFwcGluZ3MiOiAiQUFBQSxPQUFRLFlBQUFBLE1BQWUsK0JBQ3ZCLE9BQVEsaUJBQUFDLEVBQWUsV0FBQUMsTUFBYywrQkFDckMsT0FBUSxLQUFBQyxNQUFRLE1BR2hCLE9BQVEsbUJBQUFDLE1BQXNCLDJCQUV2QixNQUFNQyxVQUE4QixLQUFNLENBQy9DLFlBQVlDLEVBQXdCQyxFQUFnQixDQUNsRCxNQUFNRCxDQUFPLEVBRHFCLFdBQUFDLEVBRWxDLEtBQUssS0FBTyx1QkFDZCxDQUNGLENBRUEsTUFBTUMsRUFBc0JMLEVBQUUsT0FBTyxDQUNuQyxNQUFPQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzNCLElBQUtBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDekIsS0FBTUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUMxQixRQUFTQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzdCLEtBQU1BLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDMUIsSUFBS0EsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUN6QixNQUFPQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzNCLEdBQUlBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDeEIsU0FBVUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUNoQyxDQUFDLEVBQUUsWUFBWSxFQUVGTSxFQUF5QkMsR0FBK0IsQ0FDbkUsR0FBSSxDQUVGLE9BRGtCRixFQUFvQixNQUFNRSxDQUFHLENBRWpELE9BQVFDLEVBQU8sQ0FDYixHQUFHQSxhQUFpQlIsRUFBRSxTQUFVLENBQzlCLE1BQU1TLEVBQWNELEVBQU0sT0FBTyxJQUFLRSxHQUFNLEdBQUdBLEVBQUUsS0FBSyxLQUFLLEdBQUcsQ0FBQyxLQUFLQSxFQUFFLE9BQU8sRUFBRSxFQUFFLEtBQUssSUFBSSxFQUMxRixNQUFNLElBQUlSLEVBQXNCLCtCQUErQk8sQ0FBVyxFQUFFLENBQzlFLENBQ0EsTUFBTUQsQ0FDUixDQUNGLEVBRWFHLEVBQXdCSixHQUFvQ0EsRUFFNURLLEVBQWlCTCxHQUFvQyxDQUNoRSxHQUFJLENBRUYsT0FEZU0sRUFBOEJOLENBQUcsQ0FFbEQsT0FBUUMsRUFBTyxDQUNiLE1BQUdBLGFBQWlCTixFQUNaTSxFQUVGLElBQUlOLEVBQXNCLDRCQUE0Qk0sYUFBaUIsTUFBUUEsRUFBTSxRQUFVLGVBQWUsRUFBRSxDQUN4SCxDQUNGLEVBRU1LLEVBQWlDTixHQUFvQyxDQUN6RSxLQUFNLENBQ0osSUFBQU8sRUFDQSxLQUFBQyxFQUNBLE1BQUFDLEVBQ0EsR0FBQUMsRUFDQSxTQUFBQyxDQUNGLEVBQUlYLEVBV0osT0FUb0JOLEVBQWdCLENBQ2xDLEdBQUdNLEVBQ0gsR0FBSU8sR0FBTyxDQUFDLElBQUtoQixFQUFjZ0IsQ0FBRyxDQUFDLEVBQ25DLEdBQUlDLEdBQVEsQ0FBQyxLQUFNaEIsRUFBUWdCLENBQUksQ0FBQyxFQUNoQyxHQUFJQyxJQUFVLFFBQWEsQ0FBQyxNQUFPbkIsRUFBU21CLEVBQU8sRUFBRSxDQUFDLEVBQ3RELElBQUtGLEdBQU9HLElBQU8sQ0FBQyxHQUFJbkIsRUFBY2dCLEdBQU9HLENBQUUsQ0FBQyxFQUNoRCxHQUFJQyxJQUFhLFFBQWEsQ0FBQyxTQUFVckIsRUFBU3FCLEVBQVUsRUFBRSxDQUFDLENBQ2pFLENBQUMsQ0FHSCIsCiAgIm5hbWVzIjogWyJwYXJzZU51bSIsICJwYXJzZUFyYW5nb0lkIiwgInBhcnNlSWQiLCAieiIsICJyZW1vdmVFbXB0eUtleXMiLCAiQXJhbmdvVmFsaWRhdGlvbkVycm9yIiwgIm1lc3NhZ2UiLCAiZmllbGQiLCAiRG9jdW1lbnRJbnB1dFNjaGVtYSIsICJ2YWxpZGF0ZURvY3VtZW50SW5wdXQiLCAiZG9jIiwgImVycm9yIiwgImZpZWxkRXJyb3JzIiwgImUiLCAiZm9ybWF0RG9jdW1lbnRPdXRwdXQiLCAicGFyc2VEb2N1bWVudCIsICJwZXJmb3JtRG9jdW1lbnRUcmFuc2Zvcm1hdGlvbiIsICJfaWQiLCAiX2tleSIsICJhZGRlZCIsICJpZCIsICJtb2RpZmllZCJdCn0K
@@ -0,0 +1,8 @@
1
+ import { ContentInputType, ContentType } from '../types/content.types.js';
2
+ export declare class ContentValidationError extends Error {
3
+ field?: string;
4
+ constructor(message: string, field?: string);
5
+ }
6
+ export declare const parseContent: (content: ContentType) => ContentType;
7
+ export declare const parseContentInput: (content: ContentInputType) => ContentInputType;
8
+ export declare const parseContentFromDb: (content: ContentType) => ContentType;
@@ -0,0 +1,2 @@
1
+ import{parseArangoId as C,parseId as d,parseString as r}from"@nlabs/utils/parsers/strings";import{z as t}from"zod";import{removeEmptyKeys as f}from"../utils/adapterUtils.js";import{parseDocument as b}from"./arangoAdapter.js";class l extends Error{constructor(n,s){super(n);this.field=s;this.name="ContentValidationError"}}const I=t.object({contentId:t.string().optional(),key:t.string().min(1,"Key is required").max(200,"Key must be less than 200 characters"),locale:t.enum(["en","es","fr","de","pt","it"],{message:"Locale must be one of: en, es, fr, de, pt, it"}),content:t.string().min(1,"Content is required").max(1e4,"Content must be less than 10000 characters"),description:t.string().max(500,"Description must be less than 500 characters").optional(),category:t.string().max(100,"Category must be less than 100 characters").optional(),isActive:t.boolean().optional(),userId:t.string().optional()}),T=t.object({contentId:t.string().optional(),key:t.string().min(1,"Key is required").max(200,"Key must be less than 200 characters"),locale:t.enum(["en","es","fr","de","pt","it"],{message:"Locale must be one of: en, es, fr, de, pt, it"}).optional(),content:t.string().min(1,"Content is required").max(1e4,"Content must be less than 10000 characters"),description:t.string().max(500,"Description must be less than 500 characters").optional(),category:t.string().max(100,"Category must be less than 100 characters").optional(),isActive:t.boolean().optional()}),K=o=>{try{return I.parse(o)}catch(e){if(e instanceof t.ZodError){const n=e.issues[0]?.path.join("."),s=e.issues[0]?.message||"Validation failed";throw new l(s,n)}throw e}},j=o=>{try{return T.parse(o)}catch(e){if(e instanceof t.ZodError){const n=e.issues[0]?.path.join("."),s=e.issues[0]?.message||"Validation failed";throw new l(s,n)}throw e}},x=o=>{const{_id:e,_key:n,contentId:s,id:a,key:u,locale:y,content:g,description:i,category:c,isActive:p,userId:m}=o,h={...b(o),...(n||s)&&{contentId:d(n||s)},...(e||a||n||s)&&{id:C(e||a||`content/${n||s}`)},key:r(u,200),locale:y,content:r(g,1e4),...i&&{description:r(i,500)},...c&&{category:r(c,100)},...p!==void 0&&{isActive:p},...m&&{userId:d(m)}};return f(h)},q=o=>x(o);export{l as ContentValidationError,K as parseContent,q as parseContentFromDb,j as parseContentInput};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2NvbnRlbnRBZGFwdGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtwYXJzZUFyYW5nb0lkLCBwYXJzZUlkLCBwYXJzZVN0cmluZ30gZnJvbSAnQG5sYWJzL3V0aWxzL3BhcnNlcnMvc3RyaW5ncyc7XG5pbXBvcnQge3p9IGZyb20gJ3pvZCc7XG5cbmltcG9ydCB7Q29udGVudElucHV0VHlwZSwgQ29udGVudFR5cGV9IGZyb20gJy4uL3R5cGVzL2NvbnRlbnQudHlwZXMuanMnO1xuaW1wb3J0IHtyZW1vdmVFbXB0eUtleXN9IGZyb20gJy4uL3V0aWxzL2FkYXB0ZXJVdGlscy5qcyc7XG5pbXBvcnQge3BhcnNlRG9jdW1lbnR9IGZyb20gJy4vYXJhbmdvQWRhcHRlci5qcyc7XG5cbmV4cG9ydCBjbGFzcyBDb250ZW50VmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHB1YmxpYyBmaWVsZD86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9ICdDb250ZW50VmFsaWRhdGlvbkVycm9yJztcbiAgfVxufVxuXG5jb25zdCBjb250ZW50U2NoZW1hID0gei5vYmplY3Qoe1xuICBjb250ZW50SWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAga2V5OiB6LnN0cmluZygpLm1pbigxLCAnS2V5IGlzIHJlcXVpcmVkJykubWF4KDIwMCwgJ0tleSBtdXN0IGJlIGxlc3MgdGhhbiAyMDAgY2hhcmFjdGVycycpLFxuICBsb2NhbGU6IHouZW51bShbJ2VuJywgJ2VzJywgJ2ZyJywgJ2RlJywgJ3B0JywgJ2l0J10sIHtcbiAgICBtZXNzYWdlOiAnTG9jYWxlIG11c3QgYmUgb25lIG9mOiBlbiwgZXMsIGZyLCBkZSwgcHQsIGl0J1xuICB9KSxcbiAgY29udGVudDogei5zdHJpbmcoKS5taW4oMSwgJ0NvbnRlbnQgaXMgcmVxdWlyZWQnKS5tYXgoMTAwMDAsICdDb250ZW50IG11c3QgYmUgbGVzcyB0aGFuIDEwMDAwIGNoYXJhY3RlcnMnKSxcbiAgZGVzY3JpcHRpb246IHouc3RyaW5nKCkubWF4KDUwMCwgJ0Rlc2NyaXB0aW9uIG11c3QgYmUgbGVzcyB0aGFuIDUwMCBjaGFyYWN0ZXJzJykub3B0aW9uYWwoKSxcbiAgY2F0ZWdvcnk6IHouc3RyaW5nKCkubWF4KDEwMCwgJ0NhdGVnb3J5IG11c3QgYmUgbGVzcyB0aGFuIDEwMCBjaGFyYWN0ZXJzJykub3B0aW9uYWwoKSxcbiAgaXNBY3RpdmU6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIHVzZXJJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KTtcblxuY29uc3QgY29udGVudElucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBjb250ZW50SWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAga2V5OiB6LnN0cmluZygpLm1pbigxLCAnS2V5IGlzIHJlcXVpcmVkJykubWF4KDIwMCwgJ0tleSBtdXN0IGJlIGxlc3MgdGhhbiAyMDAgY2hhcmFjdGVycycpLFxuICBsb2NhbGU6IHouZW51bShbJ2VuJywgJ2VzJywgJ2ZyJywgJ2RlJywgJ3B0JywgJ2l0J10sIHtcbiAgICBtZXNzYWdlOiAnTG9jYWxlIG11c3QgYmUgb25lIG9mOiBlbiwgZXMsIGZyLCBkZSwgcHQsIGl0J1xuICB9KS5vcHRpb25hbCgpLFxuICBjb250ZW50OiB6LnN0cmluZygpLm1pbigxLCAnQ29udGVudCBpcyByZXF1aXJlZCcpLm1heCgxMDAwMCwgJ0NvbnRlbnQgbXVzdCBiZSBsZXNzIHRoYW4gMTAwMDAgY2hhcmFjdGVycycpLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKS5tYXgoNTAwLCAnRGVzY3JpcHRpb24gbXVzdCBiZSBsZXNzIHRoYW4gNTAwIGNoYXJhY3RlcnMnKS5vcHRpb25hbCgpLFxuICBjYXRlZ29yeTogei5zdHJpbmcoKS5tYXgoMTAwLCAnQ2F0ZWdvcnkgbXVzdCBiZSBsZXNzIHRoYW4gMTAwIGNoYXJhY3RlcnMnKS5vcHRpb25hbCgpLFxuICBpc0FjdGl2ZTogei5ib29sZWFuKCkub3B0aW9uYWwoKVxufSk7XG5cbmV4cG9ydCBjb25zdCBwYXJzZUNvbnRlbnQgPSAoY29udGVudDogQ29udGVudFR5cGUpOiBDb250ZW50VHlwZSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgdmFsaWRhdGVkID0gY29udGVudFNjaGVtYS5wYXJzZShjb250ZW50KTtcbiAgICByZXR1cm4gdmFsaWRhdGVkIGFzIENvbnRlbnRUeXBlO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiB6LlpvZEVycm9yKSB7XG4gICAgICBjb25zdCBmaWVsZCA9IGVycm9yLmlzc3Vlc1swXT8ucGF0aC5qb2luKCcuJyk7XG4gICAgICBjb25zdCBtZXNzYWdlID0gZXJyb3IuaXNzdWVzWzBdPy5tZXNzYWdlIHx8ICdWYWxpZGF0aW9uIGZhaWxlZCc7XG4gICAgICB0aHJvdyBuZXcgQ29udGVudFZhbGlkYXRpb25FcnJvcihtZXNzYWdlLCBmaWVsZCk7XG4gICAgfVxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgcGFyc2VDb250ZW50SW5wdXQgPSAoY29udGVudDogQ29udGVudElucHV0VHlwZSk6IENvbnRlbnRJbnB1dFR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHZhbGlkYXRlZCA9IGNvbnRlbnRJbnB1dFNjaGVtYS5wYXJzZShjb250ZW50KTtcbiAgICByZXR1cm4gdmFsaWRhdGVkIGFzIENvbnRlbnRJbnB1dFR5cGU7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBpZihlcnJvciBpbnN0YW5jZW9mIHouWm9kRXJyb3IpIHtcbiAgICAgIGNvbnN0IGZpZWxkID0gZXJyb3IuaXNzdWVzWzBdPy5wYXRoLmpvaW4oJy4nKTtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBlcnJvci5pc3N1ZXNbMF0/Lm1lc3NhZ2UgfHwgJ1ZhbGlkYXRpb24gZmFpbGVkJztcbiAgICAgIHRocm93IG5ldyBDb250ZW50VmFsaWRhdGlvbkVycm9yKG1lc3NhZ2UsIGZpZWxkKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1Db250ZW50VHJhbnNmb3JtYXRpb24gPSAoY29udGVudDogQ29udGVudFR5cGUpOiBDb250ZW50VHlwZSA9PiB7XG4gIGNvbnN0IHtcbiAgICBfaWQsXG4gICAgX2tleSxcbiAgICBjb250ZW50SWQsXG4gICAgaWQsXG4gICAga2V5LFxuICAgIGxvY2FsZSxcbiAgICBjb250ZW50OiBjb250ZW50VGV4dCxcbiAgICBkZXNjcmlwdGlvbixcbiAgICBjYXRlZ29yeSxcbiAgICBpc0FjdGl2ZSxcbiAgICB1c2VySWRcbiAgfSA9IGNvbnRlbnQ7XG5cbiAgY29uc3QgdHJhbnNmb3JtZWQgPSB7XG4gICAgLi4ucGFyc2VEb2N1bWVudChjb250ZW50KSxcbiAgICAuLi4oKF9rZXkgfHwgY29udGVudElkKSAmJiB7Y29udGVudElkOiBwYXJzZUlkKF9rZXkgfHwgY29udGVudElkKX0pLFxuICAgIC4uLigoX2lkIHx8IGlkIHx8IF9rZXkgfHwgY29udGVudElkKSAmJiB7aWQ6IHBhcnNlQXJhbmdvSWQoX2lkIHx8IGlkIHx8IGBjb250ZW50LyR7X2tleSB8fCBjb250ZW50SWR9YCl9KSxcbiAgICBrZXk6IHBhcnNlU3RyaW5nKGtleSwgMjAwKSxcbiAgICBsb2NhbGUsXG4gICAgY29udGVudDogcGFyc2VTdHJpbmcoY29udGVudFRleHQsIDEwMDAwKSxcbiAgICAuLi4oZGVzY3JpcHRpb24gJiYge2Rlc2NyaXB0aW9uOiBwYXJzZVN0cmluZyhkZXNjcmlwdGlvbiwgNTAwKX0pLFxuICAgIC4uLihjYXRlZ29yeSAmJiB7Y2F0ZWdvcnk6IHBhcnNlU3RyaW5nKGNhdGVnb3J5LCAxMDApfSksXG4gICAgLi4uKGlzQWN0aXZlICE9PSB1bmRlZmluZWQgJiYge2lzQWN0aXZlfSksXG4gICAgLi4uKHVzZXJJZCAmJiB7dXNlcklkOiBwYXJzZUlkKHVzZXJJZCl9KVxuICB9O1xuXG4gIHJldHVybiByZW1vdmVFbXB0eUtleXModHJhbnNmb3JtZWQpIGFzIENvbnRlbnRUeXBlO1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcnNlQ29udGVudEZyb21EYiA9IChjb250ZW50OiBDb250ZW50VHlwZSk6IENvbnRlbnRUeXBlID0+IHBlcmZvcm1Db250ZW50VHJhbnNmb3JtYXRpb24oY29udGVudCk7Il0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBUSxpQkFBQUEsRUFBZSxXQUFBQyxFQUFTLGVBQUFDLE1BQWtCLCtCQUNsRCxPQUFRLEtBQUFDLE1BQVEsTUFHaEIsT0FBUSxtQkFBQUMsTUFBc0IsMkJBQzlCLE9BQVEsaUJBQUFDLE1BQW9CLHFCQUVyQixNQUFNQyxVQUErQixLQUFNLENBQ2hELFlBQVlDLEVBQXdCQyxFQUFnQixDQUNsRCxNQUFNRCxDQUFPLEVBRHFCLFdBQUFDLEVBRWxDLEtBQUssS0FBTyx3QkFDZCxDQUNGLENBRUEsTUFBTUMsRUFBZ0JOLEVBQUUsT0FBTyxDQUM3QixVQUFXQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQy9CLElBQUtBLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRyxpQkFBaUIsRUFBRSxJQUFJLElBQUssc0NBQXNDLEVBQ3pGLE9BQVFBLEVBQUUsS0FBSyxDQUFDLEtBQU0sS0FBTSxLQUFNLEtBQU0sS0FBTSxJQUFJLEVBQUcsQ0FDbkQsUUFBUywrQ0FDWCxDQUFDLEVBQ0QsUUFBU0EsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFHLHFCQUFxQixFQUFFLElBQUksSUFBTyw0Q0FBNEMsRUFDekcsWUFBYUEsRUFBRSxPQUFPLEVBQUUsSUFBSSxJQUFLLDhDQUE4QyxFQUFFLFNBQVMsRUFDMUYsU0FBVUEsRUFBRSxPQUFPLEVBQUUsSUFBSSxJQUFLLDJDQUEyQyxFQUFFLFNBQVMsRUFDcEYsU0FBVUEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUMvQixPQUFRQSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQzlCLENBQUMsRUFFS08sRUFBcUJQLEVBQUUsT0FBTyxDQUNsQyxVQUFXQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQy9CLElBQUtBLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRyxpQkFBaUIsRUFBRSxJQUFJLElBQUssc0NBQXNDLEVBQ3pGLE9BQVFBLEVBQUUsS0FBSyxDQUFDLEtBQU0sS0FBTSxLQUFNLEtBQU0sS0FBTSxJQUFJLEVBQUcsQ0FDbkQsUUFBUywrQ0FDWCxDQUFDLEVBQUUsU0FBUyxFQUNaLFFBQVNBLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRyxxQkFBcUIsRUFBRSxJQUFJLElBQU8sNENBQTRDLEVBQ3pHLFlBQWFBLEVBQUUsT0FBTyxFQUFFLElBQUksSUFBSyw4Q0FBOEMsRUFBRSxTQUFTLEVBQzFGLFNBQVVBLEVBQUUsT0FBTyxFQUFFLElBQUksSUFBSywyQ0FBMkMsRUFBRSxTQUFTLEVBQ3BGLFNBQVVBLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FDakMsQ0FBQyxFQUVZUSxFQUFnQkMsR0FBc0MsQ0FDakUsR0FBSSxDQUVGLE9BRGtCSCxFQUFjLE1BQU1HLENBQU8sQ0FFL0MsT0FBUUMsRUFBTyxDQUNiLEdBQUdBLGFBQWlCVixFQUFFLFNBQVUsQ0FDOUIsTUFBTUssRUFBUUssRUFBTSxPQUFPLENBQUMsR0FBRyxLQUFLLEtBQUssR0FBRyxFQUN0Q04sRUFBVU0sRUFBTSxPQUFPLENBQUMsR0FBRyxTQUFXLG9CQUM1QyxNQUFNLElBQUlQLEVBQXVCQyxFQUFTQyxDQUFLLENBQ2pELENBQ0EsTUFBTUssQ0FDUixDQUNGLEVBRWFDLEVBQXFCRixHQUFnRCxDQUNoRixHQUFJLENBRUYsT0FEa0JGLEVBQW1CLE1BQU1FLENBQU8sQ0FFcEQsT0FBUUMsRUFBTyxDQUNiLEdBQUdBLGFBQWlCVixFQUFFLFNBQVUsQ0FDOUIsTUFBTUssRUFBUUssRUFBTSxPQUFPLENBQUMsR0FBRyxLQUFLLEtBQUssR0FBRyxFQUN0Q04sRUFBVU0sRUFBTSxPQUFPLENBQUMsR0FBRyxTQUFXLG9CQUM1QyxNQUFNLElBQUlQLEVBQXVCQyxFQUFTQyxDQUFLLENBQ2pELENBQ0EsTUFBTUssQ0FDUixDQUNGLEVBRU1FLEVBQWdDSCxHQUFzQyxDQUMxRSxLQUFNLENBQ0osSUFBQUksRUFDQSxLQUFBQyxFQUNBLFVBQUFDLEVBQ0EsR0FBQUMsRUFDQSxJQUFBQyxFQUNBLE9BQUFDLEVBQ0EsUUFBU0MsRUFDVCxZQUFBQyxFQUNBLFNBQUFDLEVBQ0EsU0FBQUMsRUFDQSxPQUFBQyxDQUNGLEVBQUlkLEVBRUVlLEVBQWMsQ0FDbEIsR0FBR3RCLEVBQWNPLENBQU8sRUFDeEIsSUFBS0ssR0FBUUMsSUFBYyxDQUFDLFVBQVdqQixFQUFRZ0IsR0FBUUMsQ0FBUyxDQUFDLEVBQ2pFLElBQUtGLEdBQU9HLEdBQU1GLEdBQVFDLElBQWMsQ0FBQyxHQUFJbEIsRUFBY2dCLEdBQU9HLEdBQU0sV0FBV0YsR0FBUUMsQ0FBUyxFQUFFLENBQUMsRUFDdkcsSUFBS2hCLEVBQVlrQixFQUFLLEdBQUcsRUFDekIsT0FBQUMsRUFDQSxRQUFTbkIsRUFBWW9CLEVBQWEsR0FBSyxFQUN2QyxHQUFJQyxHQUFlLENBQUMsWUFBYXJCLEVBQVlxQixFQUFhLEdBQUcsQ0FBQyxFQUM5RCxHQUFJQyxHQUFZLENBQUMsU0FBVXRCLEVBQVlzQixFQUFVLEdBQUcsQ0FBQyxFQUNyRCxHQUFJQyxJQUFhLFFBQWEsQ0FBQyxTQUFBQSxDQUFRLEVBQ3ZDLEdBQUlDLEdBQVUsQ0FBQyxPQUFRekIsRUFBUXlCLENBQU0sQ0FBQyxDQUN4QyxFQUVBLE9BQU90QixFQUFnQnVCLENBQVcsQ0FDcEMsRUFFYUMsRUFBc0JoQixHQUFzQ0csRUFBNkJILENBQU8iLAogICJuYW1lcyI6IFsicGFyc2VBcmFuZ29JZCIsICJwYXJzZUlkIiwgInBhcnNlU3RyaW5nIiwgInoiLCAicmVtb3ZlRW1wdHlLZXlzIiwgInBhcnNlRG9jdW1lbnQiLCAiQ29udGVudFZhbGlkYXRpb25FcnJvciIsICJtZXNzYWdlIiwgImZpZWxkIiwgImNvbnRlbnRTY2hlbWEiLCAiY29udGVudElucHV0U2NoZW1hIiwgInBhcnNlQ29udGVudCIsICJjb250ZW50IiwgImVycm9yIiwgInBhcnNlQ29udGVudElucHV0IiwgInBlcmZvcm1Db250ZW50VHJhbnNmb3JtYXRpb24iLCAiX2lkIiwgIl9rZXkiLCAiY29udGVudElkIiwgImlkIiwgImtleSIsICJsb2NhbGUiLCAiY29udGVudFRleHQiLCAiZGVzY3JpcHRpb24iLCAiY2F0ZWdvcnkiLCAiaXNBY3RpdmUiLCAidXNlcklkIiwgInRyYW5zZm9ybWVkIiwgInBhcnNlQ29udGVudEZyb21EYiJdCn0K
@@ -1,3 +1,9 @@
1
- import { FileType } from '../types';
2
- export declare const getFileType: (file: FileType) => string;
1
+ import { FileType } from '../types/files.types.js';
2
+ export declare class FileValidationError extends Error {
3
+ field?: string;
4
+ constructor(message: string, field?: string);
5
+ }
6
+ export declare const validateFileInput: (file: unknown) => FileType;
7
+ export declare const formatFileOutput: (file: FileType) => FileType;
8
+ export declare const getFileType: (file: FileType) => string | undefined;
3
9
  export declare const parseFile: (file: FileType) => FileType;
@@ -1,76 +1,2 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var fileAdapter_exports = {};
19
- __export(fileAdapter_exports, {
20
- getFileType: () => getFileType,
21
- parseFile: () => parseFile
22
- });
23
- module.exports = __toCommonJS(fileAdapter_exports);
24
- var import_utils = require("@nlabs/utils");
25
- var import_arangoAdapter = require("./arangoAdapter");
26
- var import_reaktorAdapter = require("./reaktorAdapter");
27
- const getFileType = (file) => {
28
- const { fileType, name } = file;
29
- if (fileType) {
30
- return (0, import_utils.parseString)(fileType, 16);
31
- }
32
- const nameArr = name?.split(".") || [];
33
- const ext = nameArr.length && nameArr[nameArr.length - 1];
34
- switch (ext) {
35
- case "jpeg":
36
- case "jpg":
37
- return "image/jpeg";
38
- case "png":
39
- return "image/png";
40
- case "zip":
41
- return "application/zip";
42
- default:
43
- return void 0;
44
- }
45
- };
46
- const parseFile = (file) => {
47
- const {
48
- _key,
49
- description,
50
- fileId,
51
- fileSize,
52
- itemId,
53
- itemType,
54
- name,
55
- url,
56
- userId
57
- } = file;
58
- return {
59
- ...(0, import_arangoAdapter.parseDocument)(file),
60
- description: (0, import_reaktorAdapter.parseReaktorContent)(description),
61
- fileId: (0, import_reaktorAdapter.parseReaktorItemId)(_key || fileId),
62
- fileSize: fileSize ? (0, import_utils.parseNum)(fileSize) : void 0,
63
- fileType: getFileType(file),
64
- itemId: (0, import_reaktorAdapter.parseReaktorItemId)(itemId),
65
- itemType: (0, import_reaktorAdapter.parseReaktorType)(itemType),
66
- name: (0, import_reaktorAdapter.parseReaktorName)(name),
67
- url: (0, import_reaktorAdapter.parseReaktorUrl)(url),
68
- userId: (0, import_reaktorAdapter.parseReaktorItemId)(userId)
69
- };
70
- };
71
- // Annotate the CommonJS export names for ESM import in node:
72
- 0 && (module.exports = {
73
- getFileType,
74
- parseFile
75
- });
76
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2ZpbGVBZGFwdGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge3BhcnNlTnVtLCBwYXJzZVN0cmluZ30gZnJvbSAnQG5sYWJzL3V0aWxzJztcblxuaW1wb3J0IHtGaWxlVHlwZX0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtwYXJzZURvY3VtZW50fSBmcm9tICcuL2FyYW5nb0FkYXB0ZXInO1xuaW1wb3J0IHtcbiAgcGFyc2VSZWFrdG9yQ29udGVudCxcbiAgcGFyc2VSZWFrdG9ySXRlbUlkLFxuICBwYXJzZVJlYWt0b3JOYW1lLFxuICBwYXJzZVJlYWt0b3JUeXBlLFxuICBwYXJzZVJlYWt0b3JVcmxcbn0gZnJvbSAnLi9yZWFrdG9yQWRhcHRlcic7XG5cbmV4cG9ydCBjb25zdCBnZXRGaWxlVHlwZSA9IChmaWxlOiBGaWxlVHlwZSk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IHtmaWxlVHlwZSwgbmFtZX0gPSBmaWxlO1xuXG4gIGlmKGZpbGVUeXBlKSB7XG4gICAgcmV0dXJuIHBhcnNlU3RyaW5nKGZpbGVUeXBlLCAxNik7XG4gIH1cblxuICBjb25zdCBuYW1lQXJyOiBzdHJpbmdbXSA9IG5hbWU/LnNwbGl0KCcuJykgfHwgW107XG4gIGNvbnN0IGV4dDogc3RyaW5nID0gbmFtZUFyci5sZW5ndGggJiYgbmFtZUFycltuYW1lQXJyLmxlbmd0aCAtIDFdO1xuXG4gIHN3aXRjaChleHQpIHtcbiAgICBjYXNlICdqcGVnJzpcbiAgICBjYXNlICdqcGcnOlxuICAgICAgcmV0dXJuICdpbWFnZS9qcGVnJztcbiAgICBjYXNlICdwbmcnOlxuICAgICAgcmV0dXJuICdpbWFnZS9wbmcnO1xuICAgIGNhc2UgJ3ppcCc6XG4gICAgICByZXR1cm4gJ2FwcGxpY2F0aW9uL3ppcCc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBwYXJzZUZpbGUgPSAoZmlsZTogRmlsZVR5cGUpOiBGaWxlVHlwZSA9PiB7XG4gIGNvbnN0IHtcbiAgICBfa2V5LFxuICAgIGRlc2NyaXB0aW9uLFxuICAgIGZpbGVJZCxcbiAgICBmaWxlU2l6ZSxcbiAgICBpdGVtSWQsXG4gICAgaXRlbVR5cGUsXG4gICAgbmFtZSxcbiAgICB1cmwsXG4gICAgdXNlcklkXG4gIH0gPSBmaWxlO1xuXG4gIHJldHVybiB7XG4gICAgLi4ucGFyc2VEb2N1bWVudChmaWxlKSxcbiAgICBkZXNjcmlwdGlvbjogcGFyc2VSZWFrdG9yQ29udGVudChkZXNjcmlwdGlvbiksXG4gICAgZmlsZUlkOiBwYXJzZVJlYWt0b3JJdGVtSWQoX2tleSB8fCBmaWxlSWQpLFxuICAgIGZpbGVTaXplOiBmaWxlU2l6ZSA/IHBhcnNlTnVtKGZpbGVTaXplKSA6IHVuZGVmaW5lZCxcbiAgICBmaWxlVHlwZTogZ2V0RmlsZVR5cGUoZmlsZSksXG4gICAgaXRlbUlkOiBwYXJzZVJlYWt0b3JJdGVtSWQoaXRlbUlkKSxcbiAgICBpdGVtVHlwZTogcGFyc2VSZWFrdG9yVHlwZShpdGVtVHlwZSksXG4gICAgbmFtZTogcGFyc2VSZWFrdG9yTmFtZShuYW1lKSxcbiAgICB1cmw6IHBhcnNlUmVha3RvclVybCh1cmwpLFxuICAgIHVzZXJJZDogcGFyc2VSZWFrdG9ySXRlbUlkKHVzZXJJZClcbiAgfTtcbn07Il0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFBb0M7QUFHcEMsMkJBQTRCO0FBQzVCLDRCQU1PO0FBRUEsTUFBTSxjQUFjLENBQUMsU0FBMkI7QUFDckQsUUFBTSxFQUFDLFVBQVUsS0FBSSxJQUFJO0FBRXpCLE1BQUcsVUFBVTtBQUNYLGVBQU8sMEJBQVksVUFBVSxFQUFFO0FBQUEsRUFDakM7QUFFQSxRQUFNLFVBQW9CLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQztBQUMvQyxRQUFNLE1BQWMsUUFBUSxVQUFVLFFBQVEsUUFBUSxTQUFTLENBQUM7QUFFaEUsVUFBTyxLQUFLO0FBQUEsSUFDVixLQUFLO0FBQUEsSUFDTCxLQUFLO0FBQ0gsYUFBTztBQUFBLElBQ1QsS0FBSztBQUNILGFBQU87QUFBQSxJQUNULEtBQUs7QUFDSCxhQUFPO0FBQUEsSUFDVDtBQUNFLGFBQU87QUFBQSxFQUNYO0FBQ0Y7QUFFTyxNQUFNLFlBQVksQ0FBQyxTQUE2QjtBQUNyRCxRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsRUFDRixJQUFJO0FBRUosU0FBTztBQUFBLElBQ0wsT0FBRyxvQ0FBYyxJQUFJO0FBQUEsSUFDckIsaUJBQWEsMkNBQW9CLFdBQVc7QUFBQSxJQUM1QyxZQUFRLDBDQUFtQixRQUFRLE1BQU07QUFBQSxJQUN6QyxVQUFVLGVBQVcsdUJBQVMsUUFBUSxJQUFJO0FBQUEsSUFDMUMsVUFBVSxZQUFZLElBQUk7QUFBQSxJQUMxQixZQUFRLDBDQUFtQixNQUFNO0FBQUEsSUFDakMsY0FBVSx3Q0FBaUIsUUFBUTtBQUFBLElBQ25DLFVBQU0sd0NBQWlCLElBQUk7QUFBQSxJQUMzQixTQUFLLHVDQUFnQixHQUFHO0FBQUEsSUFDeEIsWUFBUSwwQ0FBbUIsTUFBTTtBQUFBLEVBQ25DO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
1
+ import{parseNum as h}from"@nlabs/utils/parsers/numbers";import{parseArangoId as I,parseId as a,parseString as F,parseUrl as w}from"@nlabs/utils/parsers/strings";import{z as e}from"zod";import{parseDocument as x}from"./arangoAdapter.js";import{parseReaktorContent as _,parseReaktorType as b}from"./reaktorAdapter.js";class p extends Error{constructor(t,n){super(t);this.field=n;this.name="FileValidationError"}}const j=e.object({_from:e.string().optional(),_id:e.string().optional(),_key:e.string().optional(),_oldRev:e.string().optional(),_rev:e.string().optional(),_to:e.string().optional(),base64:e.string().optional(),buffer:e.any().optional(),description:e.string().optional(),fileId:e.string().optional(),fileSize:e.number().optional(),fileType:e.string().optional(),itemId:e.string().optional(),itemType:e.string().optional(),name:e.string().optional(),url:e.string().optional(),userId:e.string().optional()}).passthrough(),U=i=>{try{return j.parse(i)}catch(r){if(r instanceof e.ZodError){const t=r.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new p(`File validation failed: ${t}`)}throw r}},V=i=>i,k=i=>{const{fileType:r,name:t}=i;if(r)return F(r,16);const n=t?.split(".")||[];switch(n.length&&n[n.length-1]||""){case"jpeg":case"jpg":return"image/jpeg";case"png":return"image/png";case"zip":return"application/zip";default:return}},C=i=>{try{return v(i)}catch(r){throw r instanceof p?r:new p(`File parsing failed: ${r instanceof Error?r.message:"Unknown error"}`)}},v=i=>{const{_id:r,_key:t,base64:n,buffer:s,description:l,fileId:o,fileSize:d,fileType:T,id:f,itemId:m,itemType:c,name:g,url:u,userId:y}=i;return{...x(i),...n&&{base64:n},...s&&{buffer:s},...l&&{description:_(l)},...(t||o)&&{fileId:a(t||o)},...(r||f||t||o)&&{id:I(r||f||`files/${t||o}`)},...d!==void 0&&{fileSize:h(d)},...T&&{fileType:k(i)},...m&&{itemId:a(m)},...c&&{itemType:b(c)},...g&&{name:F(g,160)},...u&&{url:w(u)},...y&&{userId:a(y)}}};export{p as FileValidationError,V as formatFileOutput,k as getFileType,C as parseFile,U as validateFileInput};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2ZpbGVBZGFwdGVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQge3BhcnNlTnVtfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9udW1iZXJzJztcbmltcG9ydCB7cGFyc2VBcmFuZ29JZCwgcGFyc2VJZCwgcGFyc2VTdHJpbmcsIHBhcnNlVXJsfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9zdHJpbmdzJztcbmltcG9ydCB7en0gZnJvbSAnem9kJztcblxuaW1wb3J0IHtGaWxlVHlwZX0gZnJvbSAnLi4vdHlwZXMvZmlsZXMudHlwZXMuanMnO1xuaW1wb3J0IHtwYXJzZURvY3VtZW50fSBmcm9tICcuL2FyYW5nb0FkYXB0ZXIuanMnO1xuaW1wb3J0IHtwYXJzZVJlYWt0b3JDb250ZW50LCBwYXJzZVJlYWt0b3JUeXBlfSBmcm9tICcuL3JlYWt0b3JBZGFwdGVyLmpzJztcblxuZXhwb3J0IGNsYXNzIEZpbGVWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgcHVibGljIGZpZWxkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0ZpbGVWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IEZpbGVJbnB1dFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgX2Zyb206IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2lkOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9rZXk6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX29sZFJldjogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfcmV2OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF90bzogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBiYXNlNjQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgYnVmZmVyOiB6LmFueSgpLm9wdGlvbmFsKCksXG4gIGRlc2NyaXB0aW9uOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIGZpbGVJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBmaWxlU2l6ZTogei5udW1iZXIoKS5vcHRpb25hbCgpLFxuICBmaWxlVHlwZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBpdGVtSWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaXRlbVR5cGU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB1cmw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdXNlcklkOiB6LnN0cmluZygpLm9wdGlvbmFsKClcbn0pLnBhc3N0aHJvdWdoKCk7XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZUZpbGVJbnB1dCA9IChmaWxlOiB1bmtub3duKTogRmlsZVR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHZhbGlkYXRlZCA9IEZpbGVJbnB1dFNjaGVtYS5wYXJzZShmaWxlKTtcbiAgICByZXR1cm4gdmFsaWRhdGVkIGFzIEZpbGVUeXBlO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiB6LlpvZEVycm9yKSB7XG4gICAgICBjb25zdCBmaWVsZEVycm9ycyA9IGVycm9yLmlzc3Vlcy5tYXAoKGUpID0+IGAke2UucGF0aC5qb2luKCcuJyl9OiAke2UubWVzc2FnZX1gKS5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IEZpbGVWYWxpZGF0aW9uRXJyb3IoYEZpbGUgdmFsaWRhdGlvbiBmYWlsZWQ6ICR7ZmllbGRFcnJvcnN9YCk7XG4gICAgfVxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZm9ybWF0RmlsZU91dHB1dCA9IChmaWxlOiBGaWxlVHlwZSk6IEZpbGVUeXBlID0+IGZpbGU7XG5cbmV4cG9ydCBjb25zdCBnZXRGaWxlVHlwZSA9IChmaWxlOiBGaWxlVHlwZSk6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHtmaWxlVHlwZSwgbmFtZX0gPSBmaWxlO1xuXG4gIGlmKGZpbGVUeXBlKSB7XG4gICAgcmV0dXJuIHBhcnNlU3RyaW5nKGZpbGVUeXBlLCAxNik7XG4gIH1cblxuICBjb25zdCBuYW1lQXJyOiBzdHJpbmdbXSA9IG5hbWU/LnNwbGl0KCcuJykgfHwgW107XG4gIGNvbnN0IGV4dDogc3RyaW5nID0gbmFtZUFyci5sZW5ndGggJiYgbmFtZUFycltuYW1lQXJyLmxlbmd0aCAtIDFdIHx8ICcnO1xuXG4gIHN3aXRjaChleHQpIHtcbiAgICBjYXNlICdqcGVnJzpcbiAgICBjYXNlICdqcGcnOlxuICAgICAgcmV0dXJuICdpbWFnZS9qcGVnJztcbiAgICBjYXNlICdwbmcnOlxuICAgICAgcmV0dXJuICdpbWFnZS9wbmcnO1xuICAgIGNhc2UgJ3ppcCc6XG4gICAgICByZXR1cm4gJ2FwcGxpY2F0aW9uL3ppcCc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBwYXJzZUZpbGUgPSAoZmlsZTogRmlsZVR5cGUpOiBGaWxlVHlwZSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGVyZm9ybUZpbGVUcmFuc2Zvcm1hdGlvbihmaWxlKTtcbiAgICByZXR1cm4gcGFyc2VkO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiBGaWxlVmFsaWRhdGlvbkVycm9yKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEZpbGVWYWxpZGF0aW9uRXJyb3IoYEZpbGUgcGFyc2luZyBmYWlsZWQ6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcid9YCk7XG4gIH1cbn07XG5cbmNvbnN0IHBlcmZvcm1GaWxlVHJhbnNmb3JtYXRpb24gPSAoZmlsZTogRmlsZVR5cGUpOiBGaWxlVHlwZSA9PiB7XG4gIGNvbnN0IHtcbiAgICBfaWQsXG4gICAgX2tleSxcbiAgICBiYXNlNjQsXG4gICAgYnVmZmVyLFxuICAgIGRlc2NyaXB0aW9uLFxuICAgIGZpbGVJZCxcbiAgICBmaWxlU2l6ZSxcbiAgICBmaWxlVHlwZSxcbiAgICBpZCxcbiAgICBpdGVtSWQsXG4gICAgaXRlbVR5cGUsXG4gICAgbmFtZSxcbiAgICB1cmwsXG4gICAgdXNlcklkXG4gIH0gPSBmaWxlO1xuXG4gIGNvbnN0IHRyYW5zZm9ybWVkID0ge1xuICAgIC4uLnBhcnNlRG9jdW1lbnQoZmlsZSksXG4gICAgLi4uKGJhc2U2NCAmJiB7YmFzZTY0fSksXG4gICAgLi4uKGJ1ZmZlciAmJiB7YnVmZmVyfSksXG4gICAgLi4uKGRlc2NyaXB0aW9uICYmIHtkZXNjcmlwdGlvbjogcGFyc2VSZWFrdG9yQ29udGVudChkZXNjcmlwdGlvbil9KSxcbiAgICAuLi4oKF9rZXkgfHwgZmlsZUlkKSAmJiB7ZmlsZUlkOiBwYXJzZUlkKF9rZXkgfHwgZmlsZUlkKX0pLFxuICAgIC4uLigoX2lkIHx8IGlkIHx8IF9rZXkgfHwgZmlsZUlkKSAmJiB7aWQ6IHBhcnNlQXJhbmdvSWQoX2lkIHx8IGlkIHx8IGBmaWxlcy8ke19rZXkgfHwgZmlsZUlkfWApfSksXG4gICAgLi4uKGZpbGVTaXplICE9PSB1bmRlZmluZWQgJiYge2ZpbGVTaXplOiBwYXJzZU51bShmaWxlU2l6ZSl9KSxcbiAgICAuLi4oZmlsZVR5cGUgJiYge2ZpbGVUeXBlOiBnZXRGaWxlVHlwZShmaWxlKX0pLFxuICAgIC4uLihpdGVtSWQgJiYge2l0ZW1JZDogcGFyc2VJZChpdGVtSWQpfSksXG4gICAgLi4uKGl0ZW1UeXBlICYmIHtpdGVtVHlwZTogcGFyc2VSZWFrdG9yVHlwZShpdGVtVHlwZSl9KSxcbiAgICAuLi4obmFtZSAmJiB7bmFtZTogcGFyc2VTdHJpbmcobmFtZSwgMTYwKX0pLFxuICAgIC4uLih1cmwgJiYge3VybDogcGFyc2VVcmwodXJsKX0pLFxuICAgIC4uLih1c2VySWQgJiYge3VzZXJJZDogcGFyc2VJZCh1c2VySWQpfSlcbiAgfTtcblxuICByZXR1cm4gdHJhbnNmb3JtZWQ7XG59OyJdLAogICJtYXBwaW5ncyI6ICJBQUFBLE9BQVEsWUFBQUEsTUFBZSwrQkFDdkIsT0FBUSxpQkFBQUMsRUFBZSxXQUFBQyxFQUFTLGVBQUFDLEVBQWEsWUFBQUMsTUFBZSwrQkFDNUQsT0FBUSxLQUFBQyxNQUFRLE1BR2hCLE9BQVEsaUJBQUFDLE1BQW9CLHFCQUM1QixPQUFRLHVCQUFBQyxFQUFxQixvQkFBQUMsTUFBdUIsc0JBRTdDLE1BQU1DLFVBQTRCLEtBQU0sQ0FDN0MsWUFBWUMsRUFBd0JDLEVBQWdCLENBQ2xELE1BQU1ELENBQU8sRUFEcUIsV0FBQUMsRUFFbEMsS0FBSyxLQUFPLHFCQUNkLENBQ0YsQ0FFQSxNQUFNQyxFQUFrQlAsRUFBRSxPQUFPLENBQy9CLE1BQU9BLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDM0IsSUFBS0EsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUN6QixLQUFNQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzFCLFFBQVNBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDN0IsS0FBTUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUMxQixJQUFLQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQ3pCLE9BQVFBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDNUIsT0FBUUEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUN6QixZQUFhQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQ2pDLE9BQVFBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDNUIsU0FBVUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUM5QixTQUFVQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzlCLE9BQVFBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDNUIsU0FBVUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUM5QixLQUFNQSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQzFCLElBQUtBLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFDekIsT0FBUUEsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUM5QixDQUFDLEVBQUUsWUFBWSxFQUVGUSxFQUFxQkMsR0FBNEIsQ0FDNUQsR0FBSSxDQUVGLE9BRGtCRixFQUFnQixNQUFNRSxDQUFJLENBRTlDLE9BQVFDLEVBQU8sQ0FDYixHQUFHQSxhQUFpQlYsRUFBRSxTQUFVLENBQzlCLE1BQU1XLEVBQWNELEVBQU0sT0FBTyxJQUFLRSxHQUFNLEdBQUdBLEVBQUUsS0FBSyxLQUFLLEdBQUcsQ0FBQyxLQUFLQSxFQUFFLE9BQU8sRUFBRSxFQUFFLEtBQUssSUFBSSxFQUMxRixNQUFNLElBQUlSLEVBQW9CLDJCQUEyQk8sQ0FBVyxFQUFFLENBQ3hFLENBQ0EsTUFBTUQsQ0FDUixDQUNGLEVBRWFHLEVBQW9CSixHQUE2QkEsRUFFakRLLEVBQWVMLEdBQXVDLENBQ2pFLEtBQU0sQ0FBQyxTQUFBTSxFQUFVLEtBQUFDLENBQUksRUFBSVAsRUFFekIsR0FBR00sRUFDRCxPQUFPakIsRUFBWWlCLEVBQVUsRUFBRSxFQUdqQyxNQUFNRSxFQUFvQkQsR0FBTSxNQUFNLEdBQUcsR0FBSyxDQUFDLEVBRy9DLE9BRm9CQyxFQUFRLFFBQVVBLEVBQVFBLEVBQVEsT0FBUyxDQUFDLEdBQUssR0FFekQsQ0FDVixJQUFLLE9BQ0wsSUFBSyxNQUNILE1BQU8sYUFDVCxJQUFLLE1BQ0gsTUFBTyxZQUNULElBQUssTUFDSCxNQUFPLGtCQUNULFFBQ0UsTUFDSixDQUNGLEVBRWFDLEVBQWFULEdBQTZCLENBQ3JELEdBQUksQ0FFRixPQURlVSxFQUEwQlYsQ0FBSSxDQUUvQyxPQUFRQyxFQUFPLENBQ2IsTUFBR0EsYUFBaUJOLEVBQ1pNLEVBRUYsSUFBSU4sRUFBb0Isd0JBQXdCTSxhQUFpQixNQUFRQSxFQUFNLFFBQVUsZUFBZSxFQUFFLENBQ2xILENBQ0YsRUFFTVMsRUFBNkJWLEdBQTZCLENBQzlELEtBQU0sQ0FDSixJQUFBVyxFQUNBLEtBQUFDLEVBQ0EsT0FBQUMsRUFDQSxPQUFBQyxFQUNBLFlBQUFDLEVBQ0EsT0FBQUMsRUFDQSxTQUFBQyxFQUNBLFNBQUFYLEVBQ0EsR0FBQVksRUFDQSxPQUFBQyxFQUNBLFNBQUFDLEVBQ0EsS0FBQWIsRUFDQSxJQUFBYyxFQUNBLE9BQUFDLENBQ0YsRUFBSXRCLEVBa0JKLE1BaEJvQixDQUNsQixHQUFHUixFQUFjUSxDQUFJLEVBQ3JCLEdBQUlhLEdBQVUsQ0FBQyxPQUFBQSxDQUFNLEVBQ3JCLEdBQUlDLEdBQVUsQ0FBQyxPQUFBQSxDQUFNLEVBQ3JCLEdBQUlDLEdBQWUsQ0FBQyxZQUFhdEIsRUFBb0JzQixDQUFXLENBQUMsRUFDakUsSUFBS0gsR0FBUUksSUFBVyxDQUFDLE9BQVE1QixFQUFRd0IsR0FBUUksQ0FBTSxDQUFDLEVBQ3hELElBQUtMLEdBQU9PLEdBQU1OLEdBQVFJLElBQVcsQ0FBQyxHQUFJN0IsRUFBY3dCLEdBQU9PLEdBQU0sU0FBU04sR0FBUUksQ0FBTSxFQUFFLENBQUMsRUFDL0YsR0FBSUMsSUFBYSxRQUFhLENBQUMsU0FBVS9CLEVBQVMrQixDQUFRLENBQUMsRUFDM0QsR0FBSVgsR0FBWSxDQUFDLFNBQVVELEVBQVlMLENBQUksQ0FBQyxFQUM1QyxHQUFJbUIsR0FBVSxDQUFDLE9BQVEvQixFQUFRK0IsQ0FBTSxDQUFDLEVBQ3RDLEdBQUlDLEdBQVksQ0FBQyxTQUFVMUIsRUFBaUIwQixDQUFRLENBQUMsRUFDckQsR0FBSWIsR0FBUSxDQUFDLEtBQU1sQixFQUFZa0IsRUFBTSxHQUFHLENBQUMsRUFDekMsR0FBSWMsR0FBTyxDQUFDLElBQUsvQixFQUFTK0IsQ0FBRyxDQUFDLEVBQzlCLEdBQUlDLEdBQVUsQ0FBQyxPQUFRbEMsRUFBUWtDLENBQU0sQ0FBQyxDQUN4QyxDQUdGIiwKICAibmFtZXMiOiBbInBhcnNlTnVtIiwgInBhcnNlQXJhbmdvSWQiLCAicGFyc2VJZCIsICJwYXJzZVN0cmluZyIsICJwYXJzZVVybCIsICJ6IiwgInBhcnNlRG9jdW1lbnQiLCAicGFyc2VSZWFrdG9yQ29udGVudCIsICJwYXJzZVJlYWt0b3JUeXBlIiwgIkZpbGVWYWxpZGF0aW9uRXJyb3IiLCAibWVzc2FnZSIsICJmaWVsZCIsICJGaWxlSW5wdXRTY2hlbWEiLCAidmFsaWRhdGVGaWxlSW5wdXQiLCAiZmlsZSIsICJlcnJvciIsICJmaWVsZEVycm9ycyIsICJlIiwgImZvcm1hdEZpbGVPdXRwdXQiLCAiZ2V0RmlsZVR5cGUiLCAiZmlsZVR5cGUiLCAibmFtZSIsICJuYW1lQXJyIiwgInBhcnNlRmlsZSIsICJwZXJmb3JtRmlsZVRyYW5zZm9ybWF0aW9uIiwgIl9pZCIsICJfa2V5IiwgImJhc2U2NCIsICJidWZmZXIiLCAiZGVzY3JpcHRpb24iLCAiZmlsZUlkIiwgImZpbGVTaXplIiwgImlkIiwgIml0ZW1JZCIsICJpdGVtVHlwZSIsICJ1cmwiLCAidXNlcklkIl0KfQo=
@@ -1,2 +1,8 @@
1
- import type { ImageType } from '../types/images.types';
1
+ import type { ImageType } from '../types/images.types.js';
2
+ export declare class ImageValidationError extends Error {
3
+ field?: string;
4
+ constructor(message: string, field?: string);
5
+ }
6
+ export declare const validateImageInput: (image: unknown) => ImageType;
7
+ export declare const formatImageOutput: (image: ImageType) => ImageType;
2
8
  export declare const parseImage: (image: ImageType) => ImageType;
@@ -1,40 +1,2 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var imageAdapter_exports = {};
19
- __export(imageAdapter_exports, {
20
- parseImage: () => parseImage
21
- });
22
- module.exports = __toCommonJS(imageAdapter_exports);
23
- var import_utils = require("@nlabs/utils");
24
- var import_arangoAdapter = require("./arangoAdapter");
25
- var import_adapterUtils = require("../utils/adapterUtils");
26
- const parseImage = (image) => {
27
- const {
28
- _key: imageId,
29
- name
30
- } = image;
31
- return (0, import_adapterUtils.removeEmptyKeys)({
32
- ...(0, import_arangoAdapter.parseDocument)(image),
33
- imageId: imageId ? (0, import_utils.parseArangoId)(imageId) : void 0
34
- });
35
- };
36
- // Annotate the CommonJS export names for ESM import in node:
37
- 0 && (module.exports = {
38
- parseImage
39
- });
40
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2ltYWdlQWRhcHRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHtwYXJzZUFyYW5nb0lkfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuXG5pbXBvcnQge3BhcnNlRG9jdW1lbnR9IGZyb20gJy4vYXJhbmdvQWRhcHRlcic7XG5pbXBvcnQge3JlbW92ZUVtcHR5S2V5c30gZnJvbSAnLi4vdXRpbHMvYWRhcHRlclV0aWxzJztcblxuaW1wb3J0IHR5cGUge0ltYWdlVHlwZX0gZnJvbSAnLi4vdHlwZXMvaW1hZ2VzLnR5cGVzJztcblxuZXhwb3J0IGNvbnN0IHBhcnNlSW1hZ2UgPSAoaW1hZ2U6IEltYWdlVHlwZSk6IEltYWdlVHlwZSA9PiB7XG4gIGNvbnN0IHtcbiAgICBfa2V5OiBpbWFnZUlkLFxuICAgIG5hbWVcbiAgfSA9IGltYWdlO1xuXG4gIHJldHVybiByZW1vdmVFbXB0eUtleXMoe1xuICAgIC4uLnBhcnNlRG9jdW1lbnQoaW1hZ2UpLFxuICAgIGltYWdlSWQ6IGltYWdlSWQgPyBwYXJzZUFyYW5nb0lkKGltYWdlSWQpIDogdW5kZWZpbmVkXG4gIH0pO1xufTtcblxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsbUJBQTRCO0FBRTVCLDJCQUE0QjtBQUM1QiwwQkFBOEI7QUFJdkIsTUFBTSxhQUFhLENBQUMsVUFBZ0M7QUFDekQsUUFBTTtBQUFBLElBQ0osTUFBTTtBQUFBLElBQ047QUFBQSxFQUNGLElBQUk7QUFFSixhQUFPLHFDQUFnQjtBQUFBLElBQ3JCLE9BQUcsb0NBQWMsS0FBSztBQUFBLElBQ3RCLFNBQVMsY0FBVSw0QkFBYyxPQUFPLElBQUk7QUFBQSxFQUM5QyxDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
1
+ import{z as e}from"zod";import{removeEmptyKeys as _}from"../utils/adapterUtils.js";import{parseDocument as v}from"./arangoAdapter.js";import{parseNum as i}from"@nlabs/utils/parsers/numbers";import{parseArangoId as b,parseString as a,parseUrl as E}from"@nlabs/utils/parsers/strings";class s extends Error{constructor(r,n){super(r);this.field=n;this.name="ImageValidationError"}}const x=e.object({bucket:e.string().optional(),color:e.string().optional(),imageId:e.string().optional(),height:e.number().optional(),model:e.string().optional(),make:e.string().optional(),s3Options:e.any().optional(),taken:e.number().optional(),thumb:e.string().optional(),fileType:e.string().optional(),type:e.string().optional(),url:e.string().optional(),width:e.number().optional(),name:e.string().optional(),_id:e.string().optional(),_key:e.string().optional(),_rev:e.string().optional(),_oldRev:e.string().optional(),_from:e.string().optional(),_to:e.string().optional()}).passthrough(),A=o=>{try{return x.parse(o)}catch(t){if(t instanceof e.ZodError){const r=t.issues.map(n=>`${n.path.join(".")}: ${n.message}`).join(", ");throw new s(`Image validation failed: ${r}`)}throw t}},D=o=>o,K=o=>{try{return $(o)}catch(t){throw t instanceof s?t:new s(`Image parsing failed: ${t instanceof Error?t.message:"Unknown error"}`)}},$=o=>{const{_id:t,_key:r,bucket:n,color:p,id:m,imageId:g,height:l,model:d,make:c,s3Options:u,taken:f,thumb:y,fileType:I,type:h,url:T,width:k,name:w}=o;return _({...v(o),...r&&{imageId:b(r)},...n&&{bucket:n},...p&&{color:p},...(t||m||r||g)&&{imageId:b(t||m||`images/${r||g}`)},...l!==void 0&&{height:i(l)},...d&&{model:a(d,160)},...c&&{make:a(c,160)},...u&&{s3Options:u},...f!==void 0&&{taken:i(f)},...y&&{thumb:y},...I&&{fileType:a(I,16)},...h&&{type:a(h,16)},...T&&{url:E(T)},...k!==void 0&&{width:i(k)},...w&&{name:a(w,160)}})};export{s as ImageValidationError,D as formatImageOutput,K as parseImage,A as validateImageInput};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2ltYWdlQWRhcHRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHt6fSBmcm9tICd6b2QnO1xuXG5pbXBvcnQge3JlbW92ZUVtcHR5S2V5c30gZnJvbSAnLi4vdXRpbHMvYWRhcHRlclV0aWxzLmpzJztcbmltcG9ydCB7cGFyc2VEb2N1bWVudH0gZnJvbSAnLi9hcmFuZ29BZGFwdGVyLmpzJztcblxuaW1wb3J0IHtwYXJzZU51bX0gZnJvbSAnQG5sYWJzL3V0aWxzL3BhcnNlcnMvbnVtYmVycyc7XG5pbXBvcnQge3BhcnNlQXJhbmdvSWQsIHBhcnNlU3RyaW5nLCBwYXJzZVVybH0gZnJvbSAnQG5sYWJzL3V0aWxzL3BhcnNlcnMvc3RyaW5ncyc7XG5pbXBvcnQgdHlwZSB7SW1hZ2VUeXBlfSBmcm9tICcuLi90eXBlcy9pbWFnZXMudHlwZXMuanMnO1xuXG5leHBvcnQgY2xhc3MgSW1hZ2VWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgcHVibGljIGZpZWxkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0ltYWdlVmFsaWRhdGlvbkVycm9yJztcbiAgfVxufVxuXG5jb25zdCBJbWFnZUlucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBidWNrZXQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgY29sb3I6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgaW1hZ2VJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBoZWlnaHQ6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgbW9kZWw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgbWFrZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBzM09wdGlvbnM6IHouYW55KCkub3B0aW9uYWwoKSxcbiAgdGFrZW46IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgdGh1bWI6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgZmlsZVR5cGU6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgdHlwZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICB1cmw6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgd2lkdGg6IHoubnVtYmVyKCkub3B0aW9uYWwoKSxcbiAgbmFtZTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfaWQ6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2tleTogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBfcmV2OiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIF9vbGRSZXY6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX2Zyb206IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgX3RvOiB6LnN0cmluZygpLm9wdGlvbmFsKClcbn0pLnBhc3N0aHJvdWdoKCk7XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZUltYWdlSW5wdXQgPSAoaW1hZ2U6IHVua25vd24pOiBJbWFnZVR5cGUgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHZhbGlkYXRlZCA9IEltYWdlSW5wdXRTY2hlbWEucGFyc2UoaW1hZ2UpO1xuICAgIHJldHVybiB2YWxpZGF0ZWQgYXMgSW1hZ2VUeXBlO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgaWYoZXJyb3IgaW5zdGFuY2VvZiB6LlpvZEVycm9yKSB7XG4gICAgICBjb25zdCBmaWVsZEVycm9ycyA9IGVycm9yLmlzc3Vlcy5tYXAoKGUpID0+IGAke2UucGF0aC5qb2luKCcuJyl9OiAke2UubWVzc2FnZX1gKS5qb2luKCcsICcpO1xuICAgICAgdGhyb3cgbmV3IEltYWdlVmFsaWRhdGlvbkVycm9yKGBJbWFnZSB2YWxpZGF0aW9uIGZhaWxlZDogJHtmaWVsZEVycm9yc31gKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRJbWFnZU91dHB1dCA9IChpbWFnZTogSW1hZ2VUeXBlKTogSW1hZ2VUeXBlID0+IGltYWdlO1xuXG5leHBvcnQgY29uc3QgcGFyc2VJbWFnZSA9IChpbWFnZTogSW1hZ2VUeXBlKTogSW1hZ2VUeXBlID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBwZXJmb3JtSW1hZ2VUcmFuc2Zvcm1hdGlvbihpbWFnZSk7XG4gICAgcmV0dXJuIHBhcnNlZDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2YgSW1hZ2VWYWxpZGF0aW9uRXJyb3IpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgSW1hZ2VWYWxpZGF0aW9uRXJyb3IoYEltYWdlIHBhcnNpbmcgZmFpbGVkOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InfWApO1xuICB9XG59O1xuXG5jb25zdCBwZXJmb3JtSW1hZ2VUcmFuc2Zvcm1hdGlvbiA9IChpbWFnZTogSW1hZ2VUeXBlKTogSW1hZ2VUeXBlID0+IHtcbiAgY29uc3Qge1xuICAgIF9pZCxcbiAgICBfa2V5LFxuICAgIGJ1Y2tldCxcbiAgICBjb2xvcixcbiAgICBpZCxcbiAgICBpbWFnZUlkLFxuICAgIGhlaWdodCxcbiAgICBtb2RlbCxcbiAgICBtYWtlLFxuICAgIHMzT3B0aW9ucyxcbiAgICB0YWtlbixcbiAgICB0aHVtYixcbiAgICBmaWxlVHlwZSxcbiAgICB0eXBlLFxuICAgIHVybCxcbiAgICB3aWR0aCxcbiAgICBuYW1lXG4gIH0gPSBpbWFnZTtcblxuICBjb25zdCB0cmFuc2Zvcm1lZCA9IHJlbW92ZUVtcHR5S2V5cyh7XG4gICAgLi4ucGFyc2VEb2N1bWVudChpbWFnZSksXG4gICAgLi4uKF9rZXkgJiYge2ltYWdlSWQ6IHBhcnNlQXJhbmdvSWQoX2tleSl9KSxcbiAgICAuLi4oYnVja2V0ICYmIHtidWNrZXR9KSxcbiAgICAuLi4oY29sb3IgJiYge2NvbG9yfSksXG4gICAgLi4uKChfaWQgfHwgaWQgfHwgX2tleSB8fCBpbWFnZUlkKSAmJiB7aW1hZ2VJZDogcGFyc2VBcmFuZ29JZChfaWQgfHwgaWQgfHwgYGltYWdlcy8ke19rZXkgfHwgaW1hZ2VJZH1gKX0pLFxuICAgIC4uLihoZWlnaHQgIT09IHVuZGVmaW5lZCAmJiB7aGVpZ2h0OiBwYXJzZU51bShoZWlnaHQpfSksXG4gICAgLi4uKG1vZGVsICYmIHttb2RlbDogcGFyc2VTdHJpbmcobW9kZWwsIDE2MCl9KSxcbiAgICAuLi4obWFrZSAmJiB7bWFrZTogcGFyc2VTdHJpbmcobWFrZSwgMTYwKX0pLFxuICAgIC4uLihzM09wdGlvbnMgJiYge3MzT3B0aW9uc30pLFxuICAgIC4uLih0YWtlbiAhPT0gdW5kZWZpbmVkICYmIHt0YWtlbjogcGFyc2VOdW0odGFrZW4pfSksXG4gICAgLi4uKHRodW1iICYmIHt0aHVtYn0pLFxuICAgIC4uLihmaWxlVHlwZSAmJiB7ZmlsZVR5cGU6IHBhcnNlU3RyaW5nKGZpbGVUeXBlLCAxNil9KSxcbiAgICAuLi4odHlwZSAmJiB7dHlwZTogcGFyc2VTdHJpbmcodHlwZSwgMTYpfSksXG4gICAgLi4uKHVybCAmJiB7dXJsOiBwYXJzZVVybCh1cmwpfSksXG4gICAgLi4uKHdpZHRoICE9PSB1bmRlZmluZWQgJiYge3dpZHRoOiBwYXJzZU51bSh3aWR0aCl9KSxcbiAgICAuLi4obmFtZSAmJiB7bmFtZTogcGFyc2VTdHJpbmcobmFtZSwgMTYwKX0pXG4gIH0pO1xuXG4gIHJldHVybiB0cmFuc2Zvcm1lZDtcbn07XG5cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBLE9BQVEsS0FBQUEsTUFBUSxNQUVoQixPQUFRLG1CQUFBQyxNQUFzQiwyQkFDOUIsT0FBUSxpQkFBQUMsTUFBb0IscUJBRTVCLE9BQVEsWUFBQUMsTUFBZSwrQkFDdkIsT0FBUSxpQkFBQUMsRUFBZSxlQUFBQyxFQUFhLFlBQUFDLE1BQWUsK0JBRzVDLE1BQU1DLFVBQTZCLEtBQU0sQ0FDOUMsWUFBWUMsRUFBd0JDLEVB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QVEsQ0FBQyxLQUFNdEIsRUFBWXNCLEVBQU0sR0FBRyxDQUFDLEVBQ3pDLEdBQUlDLEdBQWEsQ0FBQyxVQUFBQSxDQUFTLEVBQzNCLEdBQUlDLElBQVUsUUFBYSxDQUFDLE1BQU8xQixFQUFTMEIsQ0FBSyxDQUFDLEVBQ2xELEdBQUlDLEdBQVMsQ0FBQyxNQUFBQSxDQUFLLEVBQ25CLEdBQUlDLEdBQVksQ0FBQyxTQUFVMUIsRUFBWTBCLEVBQVUsRUFBRSxDQUFDLEVBQ3BELEdBQUlDLEdBQVEsQ0FBQyxLQUFNM0IsRUFBWTJCLEVBQU0sRUFBRSxDQUFDLEVBQ3hDLEdBQUlDLEdBQU8sQ0FBQyxJQUFLM0IsRUFBUzJCLENBQUcsQ0FBQyxFQUM5QixHQUFJQyxJQUFVLFFBQWEsQ0FBQyxNQUFPL0IsRUFBUytCLENBQUssQ0FBQyxFQUNsRCxHQUFJQyxHQUFRLENBQUMsS0FBTTlCLEVBQVk4QixFQUFNLEdBQUcsQ0FBQyxDQUMzQyxDQUFDLENBR0giLAogICJuYW1lcyI6IFsieiIsICJyZW1vdmVFbXB0eUtleXMiLCAicGFyc2VEb2N1bWVudCIsICJwYXJzZU51bSIsICJwYXJzZUFyYW5nb0lkIiwgInBhcnNlU3RyaW5nIiwgInBhcnNlVXJsIiwgIkltYWdlVmFsaWRhdGlvbkVycm9yIiwgIm1lc3NhZ2UiLCAiZmllbGQiLCAiSW1hZ2VJbnB1dFNjaGVtYSIsICJ2YWxpZGF0ZUltYWdlSW5wdXQiLCAiaW1hZ2UiLCAiZXJyb3IiLCAiZmllbGRFcnJvcnMiLCAiZSIsICJmb3JtYXRJbWFnZU91dHB1dCIsICJwYXJzZUltYWdlIiwgInBlcmZvcm1JbWFnZVRyYW5zZm9ybWF0aW9uIiwgIl9pZCIsICJfa2V5IiwgImJ1Y2tldCIsICJjb2xvciIsICJpZCIsICJpbWFnZUlkIiwgImhlaWdodCIsICJtb2RlbCIsICJtYWtlIiwgInMzT3B0aW9ucyIsICJ0YWtlbiIsICJ0aHVtYiIsICJmaWxlVHlwZSIsICJ0eXBlIiwgInVybCIsICJ3aWR0aCIsICJuYW1lIl0KfQo=
@@ -0,0 +1,9 @@
1
+ export * from './arangoAdapter.js';
2
+ export * from './contentAdapter.js';
3
+ export * from './fileAdapter.js';
4
+ export * from './imageAdapter.js';
5
+ export * from './messageAdapter.js';
6
+ export * from './postAdapter.js';
7
+ export * from './reaktorAdapter.js';
8
+ export * from './tagAdapter.js';
9
+ export * from './userAdapter.js';
@@ -0,0 +1,2 @@
1
+ export*from"./arangoAdapter.js";export*from"./contentAdapter.js";export*from"./fileAdapter.js";export*from"./imageAdapter.js";export*from"./messageAdapter.js";export*from"./postAdapter.js";export*from"./reaktorAdapter.js";export*from"./tagAdapter.js";export*from"./userAdapter.js";
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2FkYXB0ZXJzL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJleHBvcnQgKiBmcm9tICcuL2FyYW5nb0FkYXB0ZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZW50QWRhcHRlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbGVBZGFwdGVyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2VBZGFwdGVyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vbWVzc2FnZUFkYXB0ZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9wb3N0QWRhcHRlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3JlYWt0b3JBZGFwdGVyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdGFnQWRhcHRlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXJBZGFwdGVyLmpzJztcbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBLFdBQWMscUJBQ2QsV0FBYyxzQkFDZCxXQUFjLG1CQUNkLFdBQWMsb0JBQ2QsV0FBYyxzQkFDZCxXQUFjLG1CQUNkLFdBQWMsc0JBQ2QsV0FBYyxrQkFDZCxXQUFjIiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -1,2 +1,8 @@
1
- import type { MessageType } from '../types/messages.types';
1
+ import type { MessageType } from '../types/messages.types.js';
2
+ export declare class MessageValidationError extends Error {
3
+ field?: string;
4
+ constructor(message: string, field?: string);
5
+ }
6
+ export declare const validateMessageInput: (message: unknown) => MessageType;
7
+ export declare const formatMessageOutput: (message: MessageType) => MessageType;
2
8
  export declare const parseMessage: (message: MessageType) => MessageType;