@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,165 +1,7 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var arangodbUtils_exports = {};
29
- __export(arangodbUtils_exports, {
30
- collectionDetails: () => collectionDetails,
31
- getDocId: () => getDocId,
32
- getGqlFields: () => getGqlFields,
33
- getLimit: () => getLimit,
34
- selectReactionCountByType: () => selectReactionCountByType,
35
- sortIds: () => sortIds,
36
- useDb: () => useDb
37
- });
38
- module.exports = __toCommonJS(arangodbUtils_exports);
39
- var import_utils = require("@nlabs/utils");
40
- var import_arangojs = require("arangojs");
41
- var import_graphql_fields = __toESM(require("graphql-fields"), 1);
42
- const useDb = (databaseName) => new import_arangojs.Database({
43
- auth: {
44
- password: process.env.ARANGODB_PASSWORD,
45
- username: process.env.ARANGODB_USERNAME
46
- },
47
- databaseName,
48
- url: `${process.env.ARANGODB_URL}:${process.env.ARANGODB_PORT}`
49
- });
50
- const collectionDetails = {
51
- apps: {
52
- collection: "apps",
53
- key: "appId"
54
- },
55
- conversations: {
56
- collection: "conversations",
57
- key: "conversationId"
58
- },
59
- files: {
60
- collection: "files",
61
- key: "fileId"
62
- },
63
- groups: {
64
- collection: "groups",
65
- key: "groupId"
66
- },
67
- images: {
68
- collection: "images",
69
- key: "imageId"
70
- },
71
- locations: {
72
- collection: "locations",
73
- key: "locationId"
74
- },
75
- messages: {
76
- collection: "messages",
77
- key: "messageId"
78
- },
79
- notifications: {
80
- collection: "notifications",
81
- key: "notificationId"
82
- },
83
- payments: {
84
- collection: "payments",
85
- key: "paymentId"
86
- },
87
- posts: {
88
- collection: "posts",
89
- key: "postId"
90
- },
91
- reactions: {
92
- collection: "reactions",
93
- key: "reactionId"
94
- },
95
- subscriptions: {
96
- collection: "subscriptions",
97
- key: "subscriptionId"
98
- },
99
- tags: {
100
- collection: "tags",
101
- key: "tagId"
102
- },
103
- users: {
104
- collection: "users",
105
- key: "userId"
106
- }
107
- };
108
- const getDocId = (collection, item) => {
109
- const { _id, _key, id } = item;
110
- const itemId = (0, import_utils.parseArangoId)(_id || id);
111
- if (itemId) {
112
- const idParts = itemId.split("/");
113
- if (collectionDetails[idParts[0]]) {
114
- return itemId;
115
- }
116
- }
117
- let itemKey = (0, import_utils.parseId)(_key);
118
- if (!itemKey) {
119
- itemKey = item[collectionDetails[collection].key];
120
- }
121
- return itemKey ? `${collection}/${itemKey}` : "";
122
- };
123
- const getLimit = (start = 0, to = 30) => {
124
- let num = (0, import_utils.parseNum)(to) - (0, import_utils.parseNum)(start);
125
- if (num > 50) {
126
- num = 50;
127
- }
128
- return { aql: to >= 0 ? `LIMIT ${start}, ${num}` : "", num, start };
129
- };
130
- const selectReactionCountByType = (objectType, objectKey, field, selects) => {
131
- const reactionType = field.substring(0, field.indexOf("Count"));
132
- selects.queries.push(`LET ${field} = FIRST(
133
- FOR obj, r IN INBOUND ${objectKey}._id hasReaction
134
- FILTER r.name == "${reactionType}" && r.type == "${objectType}"
1
+ import{Database as l}from"arangojs";import g from"graphql-fields";import{Config as m}from"../config.js";import{parseNum as a}from"@nlabs/utils/parsers/numbers";import{parseArangoId as u,parseId as d}from"@nlabs/utils/parsers/strings";const C=e=>{const t=m.get("arangodb");return new l({auth:{password:t.password,username:t.username},databaseName:e||"reaktor",url:`${t.url}:${t.port}`})},c={apps:{collection:"apps",key:"appId"},conversations:{collection:"conversations",key:"conversationId"},files:{collection:"files",key:"fileId"},groups:{collection:"groups",key:"groupId"},images:{collection:"images",key:"imageId"},locations:{collection:"locations",key:"locationId"},messages:{collection:"messages",key:"messageId"},notifications:{collection:"notifications",key:"notificationId"},payments:{collection:"payments",key:"paymentId"},posts:{collection:"posts",key:"postId"},reactions:{collection:"reactions",key:"reactionId"},subscriptions:{collection:"subscriptions",key:"subscriptionId"},tags:{collection:"tags",key:"tagId"},users:{collection:"users",key:"userId"}},$=(e,t)=>{const{_id:o,_key:s,id:r}=t,i=u(o||r);if(i){const p=i.split("/");if(c[p[0]])return i}let n=d(s);return n||(n=t[c[e].key]),n?`${e}/${n}`:""},T=(e=0,t=30)=>{let o=a(t)-a(e);return o>50&&(o=50),{aql:t>=0?`LIMIT ${e}, ${o}`:"",num:o,start:e}},D=(e,t,o,s)=>{const r=o.substring(0,o.indexOf("Count"));return s.queries.push(`LET ${o} = FIRST(
2
+ FOR obj, r IN INBOUND ${t}._id hasReaction
3
+ FILTER r.name == "${r}" && r.type == "${e}"
135
4
  COLLECT WITH COUNT INTO count
136
5
  RETURN count
137
- )`);
138
- selects.objects.push(`${field}:${field}`);
139
- return selects;
140
- };
141
- const sortIds = (ids, sort = "ASC") => ids.sort((a, b) => {
142
- if (sort.toUpperCase() === "ASC") {
143
- return a.localeCompare(b);
144
- }
145
- return b.localeCompare(a);
146
- });
147
- const getGqlFields = (info) => {
148
- const fields = (0, import_graphql_fields.default)(info) || {};
149
- const methodName = Object.keys(fields)[0];
150
- if (methodName) {
151
- return Object.keys(fields[methodName]);
152
- }
153
- return [];
154
- };
155
- // Annotate the CommonJS export names for ESM import in node:
156
- 0 && (module.exports = {
157
- collectionDetails,
158
- getDocId,
159
- getGqlFields,
160
- getLimit,
161
- selectReactionCountByType,
162
- sortIds,
163
- useDb
164
- });
165
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2FyYW5nb2RiVXRpbHMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge3BhcnNlQXJhbmdvSWQsIHBhcnNlSWQsIHBhcnNlTnVtfSBmcm9tICdAbmxhYnMvdXRpbHMnO1xuaW1wb3J0IHtEYXRhYmFzZX0gZnJvbSAnYXJhbmdvanMnO1xuaW1wb3J0IGdyYXBocWxGaWVsZHMgZnJvbSAnZ3JhcGhxbC1maWVsZHMnO1xuXG5pbXBvcnQgdHlwZSB7QXJhbmdvRGJDb2xsZWN0aW9uLCBBcmFuZ29EYkxpbWl0fSBmcm9tICcuLi90eXBlcy9hcmFuZ29kYi50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCB1c2VEYiA9IChkYXRhYmFzZU5hbWU6IHN0cmluZyk6IERhdGFiYXNlID0+IG5ldyBEYXRhYmFzZSh7XG4gIGF1dGg6IHtcbiAgICBwYXNzd29yZDogcHJvY2Vzcy5lbnYuQVJBTkdPREJfUEFTU1dPUkQsXG4gICAgdXNlcm5hbWU6IHByb2Nlc3MuZW52LkFSQU5HT0RCX1VTRVJOQU1FXG4gIH0sXG4gIGRhdGFiYXNlTmFtZSxcbiAgdXJsOiBgJHtwcm9jZXNzLmVudi5BUkFOR09EQl9VUkx9OiR7cHJvY2Vzcy5lbnYuQVJBTkdPREJfUE9SVH1gXG59KTtcblxuZXhwb3J0IGNvbnN0IGNvbGxlY3Rpb25EZXRhaWxzID0ge1xuICBhcHBzOiB7XG4gICAgY29sbGVjdGlvbjogJ2FwcHMnLFxuICAgIGtleTogJ2FwcElkJ1xuICB9LFxuICBjb252ZXJzYXRpb25zOiB7XG4gICAgY29sbGVjdGlvbjogJ2NvbnZlcnNhdGlvbnMnLFxuICAgIGtleTogJ2NvbnZlcnNhdGlvbklkJ1xuICB9LFxuICBmaWxlczoge1xuICAgIGNvbGxlY3Rpb246ICdmaWxlcycsXG4gICAga2V5OiAnZmlsZUlkJ1xuICB9LFxuICBncm91cHM6IHtcbiAgICBjb2xsZWN0aW9uOiAnZ3JvdXBzJyxcbiAgICBrZXk6ICdncm91cElkJ1xuICB9LFxuICBpbWFnZXM6IHtcbiAgICBjb2xsZWN0aW9uOiAnaW1hZ2VzJyxcbiAgICBrZXk6ICdpbWFnZUlkJ1xuICB9LFxuICBsb2NhdGlvbnM6IHtcbiAgICBjb2xsZWN0aW9uOiAnbG9jYXRpb25zJyxcbiAgICBrZXk6ICdsb2NhdGlvbklkJ1xuICB9LFxuICBtZXNzYWdlczoge1xuICAgIGNvbGxlY3Rpb246ICdtZXNzYWdlcycsXG4gICAga2V5OiAnbWVzc2FnZUlkJ1xuICB9LFxuICBub3RpZmljYXRpb25zOiB7XG4gICAgY29sbGVjdGlvbjogJ25vdGlmaWNhdGlvbnMnLFxuICAgIGtleTogJ25vdGlmaWNhdGlvbklkJ1xuICB9LFxuICBwYXltZW50czoge1xuICAgIGNvbGxlY3Rpb246ICdwYXltZW50cycsXG4gICAga2V5OiAncGF5bWVudElkJ1xuICB9LFxuICBwb3N0czoge1xuICAgIGNvbGxlY3Rpb246ICdwb3N0cycsXG4gICAga2V5OiAncG9zdElkJ1xuICB9LFxuICByZWFjdGlvbnM6IHtcbiAgICBjb2xsZWN0aW9uOiAncmVhY3Rpb25zJyxcbiAgICBrZXk6ICdyZWFjdGlvbklkJ1xuICB9LFxuICBzdWJzY3JpcHRpb25zOiB7XG4gICAgY29sbGVjdGlvbjogJ3N1YnNjcmlwdGlvbnMnLFxuICAgIGtleTogJ3N1YnNjcmlwdGlvbklkJ1xuICB9LFxuICB0YWdzOiB7XG4gICAgY29sbGVjdGlvbjogJ3RhZ3MnLFxuICAgIGtleTogJ3RhZ0lkJ1xuICB9LFxuICB1c2Vyczoge1xuICAgIGNvbGxlY3Rpb246ICd1c2VycycsXG4gICAga2V5OiAndXNlcklkJ1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0RG9jSWQgPSAoY29sbGVjdGlvbjogQXJhbmdvRGJDb2xsZWN0aW9uLCBpdGVtKTogc3RyaW5nID0+IHtcbiAgY29uc3Qge19pZCwgX2tleSwgaWR9ID0gaXRlbTtcbiAgY29uc3QgaXRlbUlkID0gcGFyc2VBcmFuZ29JZChfaWQgfHwgaWQpO1xuXG4gIGlmKGl0ZW1JZCkge1xuICAgIGNvbnN0IGlkUGFydHMgPSBpdGVtSWQuc3BsaXQoJy8nKTtcblxuICAgIGlmKGNvbGxlY3Rpb25EZXRhaWxzW2lkUGFydHNbMF1dKSB7XG4gICAgICByZXR1cm4gaXRlbUlkO1xuICAgIH1cbiAgfVxuXG4gIGxldCBpdGVtS2V5ID0gcGFyc2VJZChfa2V5KTtcblxuICBpZighaXRlbUtleSkge1xuICAgIGl0ZW1LZXkgPSBpdGVtW2NvbGxlY3Rpb25EZXRhaWxzW2NvbGxlY3Rpb25dLmtleV07XG4gIH1cblxuICByZXR1cm4gaXRlbUtleSA/IGAke2NvbGxlY3Rpb259LyR7aXRlbUtleX1gIDogJyc7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TGltaXQgPSAoc3RhcnQ6IG51bWJlciA9IDAsIHRvOiBudW1iZXIgPSAzMCk6IEFyYW5nb0RiTGltaXQgPT4ge1xuICBsZXQgbnVtID0gcGFyc2VOdW0odG8pIC0gcGFyc2VOdW0oc3RhcnQpO1xuXG4gIGlmKG51bSA+IDUwKSB7XG4gICAgbnVtID0gNTA7XG4gIH1cblxuICByZXR1cm4ge2FxbDogdG8gPj0gMCA/IGBMSU1JVCAke3N0YXJ0fSwgJHtudW19YCA6ICcnLCBudW0sIHN0YXJ0fTtcbn07XG5cbmV4cG9ydCBjb25zdCBzZWxlY3RSZWFjdGlvbkNvdW50QnlUeXBlID0gKG9iamVjdFR5cGU6IHN0cmluZywgb2JqZWN0S2V5OiBzdHJpbmcsIGZpZWxkOiBzdHJpbmcsIHNlbGVjdHMpID0+IHtcbiAgY29uc3QgcmVhY3Rpb25UeXBlOiBzdHJpbmcgPSBmaWVsZC5zdWJzdHJpbmcoMCwgZmllbGQuaW5kZXhPZignQ291bnQnKSk7XG4gIHNlbGVjdHMucXVlcmllcy5wdXNoKGBMRVQgJHtmaWVsZH0gPSBGSVJTVChcbiAgICAgIEZPUiBvYmosIHIgSU4gSU5CT1VORCAke29iamVjdEtleX0uX2lkIGhhc1JlYWN0aW9uXG4gICAgICBGSUxURVIgci5uYW1lID09IFwiJHtyZWFjdGlvblR5cGV9XCIgJiYgci50eXBlID09IFwiJHtvYmplY3RUeXBlfVwiXG4gICAgICBDT0xMRUNUIFdJVEggQ09VTlQgSU5UTyBjb3VudFxuICAgICAgUkVUVVJOIGNvdW50XG4gICAgKWApO1xuICBzZWxlY3RzLm9iamVjdHMucHVzaChgJHtmaWVsZH06JHtmaWVsZH1gKTtcbiAgcmV0dXJuIHNlbGVjdHM7XG59O1xuXG5leHBvcnQgY29uc3Qgc29ydElkcyA9IChpZHM6IHN0cmluZ1tdLCBzb3J0OiBzdHJpbmcgPSAnQVNDJyk6IHN0cmluZ1tdID0+IGlkcy5zb3J0KChhLCBiKSA9PiB7XG4gIGlmKHNvcnQudG9VcHBlckNhc2UoKSA9PT0gJ0FTQycpIHtcbiAgICByZXR1cm4gYS5sb2NhbGVDb21wYXJlKGIpO1xuICB9XG5cbiAgcmV0dXJuIGIubG9jYWxlQ29tcGFyZShhKTtcbn0pO1xuXG5leHBvcnQgY29uc3QgZ2V0R3FsRmllbGRzID0gKGluZm8pID0+IHtcbiAgY29uc3QgZmllbGRzID0gZ3JhcGhxbEZpZWxkcyhpbmZvKSB8fCB7fTtcbiAgY29uc3QgbWV0aG9kTmFtZTogc3RyaW5nID0gT2JqZWN0LmtleXMoZmllbGRzKVswXTtcblxuICBpZihtZXRob2ROYW1lKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGZpZWxkc1ttZXRob2ROYW1lXSk7XG4gIH1cblxuICByZXR1cm4gW107XG59OyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSxtQkFBK0M7QUFDL0Msc0JBQXVCO0FBQ3ZCLDRCQUEwQjtBQUluQixNQUFNLFFBQVEsQ0FBQyxpQkFBbUMsSUFBSSx5QkFBUztBQUFBLEVBQ3BFLE1BQU07QUFBQSxJQUNKLFVBQVUsUUFBUSxJQUFJO0FBQUEsSUFDdEIsVUFBVSxRQUFRLElBQUk7QUFBQSxFQUN4QjtBQUFBLEVBQ0E7QUFBQSxFQUNBLEtBQUssR0FBRyxRQUFRLElBQUksWUFBWSxJQUFJLFFBQVEsSUFBSSxhQUFhO0FBQy9ELENBQUM7QUFFTSxNQUFNLG9CQUFvQjtBQUFBLEVBQy9CLE1BQU07QUFBQSxJQUNKLFlBQVk7QUFBQSxJQUNaLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxlQUFlO0FBQUEsSUFDYixZQUFZO0FBQUEsSUFDWixLQUFLO0FBQUEsRUFDUDtBQUFBLEVBQ0EsT0FBTztBQUFBLElBQ0wsWUFBWTtBQUFBLElBQ1osS0FBSztBQUFBLEVBQ1A7QUFBQSxFQUNBLFFBQVE7QUFBQSxJQUNOLFlBQVk7QUFBQSxJQUNaLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxRQUFRO0FBQUEsSUFDTixZQUFZO0FBQUEsSUFDWixLQUFLO0FBQUEsRUFDUDtBQUFBLEVBQ0EsV0FBVztBQUFBLElBQ1QsWUFBWTtBQUFBLElBQ1osS0FBSztBQUFBLEVBQ1A7QUFBQSxFQUNBLFVBQVU7QUFBQSxJQUNSLFlBQVk7QUFBQSxJQUNaLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxlQUFlO0FBQUEsSUFDYixZQUFZO0FBQUEsSUFDWixLQUFLO0FBQUEsRUFDUDtBQUFBLEVBQ0EsVUFBVTtBQUFBLElBQ1IsWUFBWTtBQUFBLElBQ1osS0FBSztBQUFBLEVBQ1A7QUFBQSxFQUNBLE9BQU87QUFBQSxJQUNMLFlBQVk7QUFBQSxJQUNaLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxXQUFXO0FBQUEsSUFDVCxZQUFZO0FBQUEsSUFDWixLQUFLO0FBQUEsRUFDUDtBQUFBLEVBQ0EsZUFBZTtBQUFBLElBQ2IsWUFBWTtBQUFBLElBQ1osS0FBSztBQUFBLEVBQ1A7QUFBQSxFQUNBLE1BQU07QUFBQSxJQUNKLFlBQVk7QUFBQSxJQUNaLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxPQUFPO0FBQUEsSUFDTCxZQUFZO0FBQUEsSUFDWixLQUFLO0FBQUEsRUFDUDtBQUNGO0FBRU8sTUFBTSxXQUFXLENBQUMsWUFBZ0MsU0FBaUI7QUFDeEUsUUFBTSxFQUFDLEtBQUssTUFBTSxHQUFFLElBQUk7QUFDeEIsUUFBTSxhQUFTLDRCQUFjLE9BQU8sRUFBRTtBQUV0QyxNQUFHLFFBQVE7QUFDVCxVQUFNLFVBQVUsT0FBTyxNQUFNLEdBQUc7QUFFaEMsUUFBRyxrQkFBa0IsUUFBUSxDQUFDLENBQUMsR0FBRztBQUNoQyxhQUFPO0FBQUEsSUFDVDtBQUFBLEVBQ0Y7QUFFQSxNQUFJLGNBQVUsc0JBQVEsSUFBSTtBQUUxQixNQUFHLENBQUMsU0FBUztBQUNYLGNBQVUsS0FBSyxrQkFBa0IsVUFBVSxFQUFFLEdBQUc7QUFBQSxFQUNsRDtBQUVBLFNBQU8sVUFBVSxHQUFHLFVBQVUsSUFBSSxPQUFPLEtBQUs7QUFDaEQ7QUFFTyxNQUFNLFdBQVcsQ0FBQyxRQUFnQixHQUFHLEtBQWEsT0FBc0I7QUFDN0UsTUFBSSxVQUFNLHVCQUFTLEVBQUUsUUFBSSx1QkFBUyxLQUFLO0FBRXZDLE1BQUcsTUFBTSxJQUFJO0FBQ1gsVUFBTTtBQUFBLEVBQ1I7QUFFQSxTQUFPLEVBQUMsS0FBSyxNQUFNLElBQUksU0FBUyxLQUFLLEtBQUssR0FBRyxLQUFLLElBQUksS0FBSyxNQUFLO0FBQ2xFO0FBRU8sTUFBTSw0QkFBNEIsQ0FBQyxZQUFvQixXQUFtQixPQUFlLFlBQVk7QUFDMUcsUUFBTSxlQUF1QixNQUFNLFVBQVUsR0FBRyxNQUFNLFFBQVEsT0FBTyxDQUFDO0FBQ3RFLFVBQVEsUUFBUSxLQUFLLE9BQU8sS0FBSztBQUFBLDhCQUNMLFNBQVM7QUFBQSwwQkFDYixZQUFZLG1CQUFtQixVQUFVO0FBQUE7QUFBQTtBQUFBLE1BRzdEO0FBQ0osVUFBUSxRQUFRLEtBQUssR0FBRyxLQUFLLElBQUksS0FBSyxFQUFFO0FBQ3hDLFNBQU87QUFDVDtBQUVPLE1BQU0sVUFBVSxDQUFDLEtBQWUsT0FBZSxVQUFvQixJQUFJLEtBQUssQ0FBQyxHQUFHLE1BQU07QUFDM0YsTUFBRyxLQUFLLFlBQVksTUFBTSxPQUFPO0FBQy9CLFdBQU8sRUFBRSxjQUFjLENBQUM7QUFBQSxFQUMxQjtBQUVBLFNBQU8sRUFBRSxjQUFjLENBQUM7QUFDMUIsQ0FBQztBQUVNLE1BQU0sZUFBZSxDQUFDLFNBQVM7QUFDcEMsUUFBTSxhQUFTLHNCQUFBQSxTQUFjLElBQUksS0FBSyxDQUFDO0FBQ3ZDLFFBQU0sYUFBcUIsT0FBTyxLQUFLLE1BQU0sRUFBRSxDQUFDO0FBRWhELE1BQUcsWUFBWTtBQUNiLFdBQU8sT0FBTyxLQUFLLE9BQU8sVUFBVSxDQUFDO0FBQUEsRUFDdkM7QUFFQSxTQUFPLENBQUM7QUFDVjsiLAogICJuYW1lcyI6IFsiZ3JhcGhxbEZpZWxkcyJdCn0K
6
+ )`),s.objects.push(`${o}:${o}`),s},N=(e,t="ASC")=>e.sort((o,s)=>t.toUpperCase()==="ASC"?o.localeCompare(s):s.localeCompare(o)),x=e=>{const t=g(e)||{},o=Object.keys(t)[0];return o?Object.keys(t[o]):[]};export{c as collectionDetails,$ as getDocId,x as getGqlFields,T as getLimit,D as selectReactionCountByType,N as sortIds,C as useDb};
7
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2FyYW5nb2RiVXRpbHMudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge0RhdGFiYXNlfSBmcm9tICdhcmFuZ29qcyc7XG5pbXBvcnQgZ3JhcGhxbEZpZWxkcyBmcm9tICdncmFwaHFsLWZpZWxkcyc7XG5cbmltcG9ydCB7Q29uZmlnfSBmcm9tICcuLi9jb25maWcuanMnO1xuXG5pbXBvcnQge3BhcnNlTnVtfSBmcm9tICdAbmxhYnMvdXRpbHMvcGFyc2Vycy9udW1iZXJzJztcbmltcG9ydCB7cGFyc2VBcmFuZ29JZCwgcGFyc2VJZH0gZnJvbSAnQG5sYWJzL3V0aWxzL3BhcnNlcnMvc3RyaW5ncyc7XG5pbXBvcnQgdHlwZSB7QXJhbmdvRGJDb2xsZWN0aW9uLCBBcmFuZ29EYkxpbWl0fSBmcm9tICcuLi90eXBlcy9hcmFuZ29kYi50eXBlcy5qcyc7XG5cbmV4cG9ydCBjb25zdCB1c2VEYiA9IChkYXRhYmFzZU5hbWU/OiBzdHJpbmcpOiBEYXRhYmFzZSA9PiB7XG4gIGNvbnN0IGFyYW5nb0NvbmZpZyA9IENvbmZpZy5nZXQoJ2FyYW5nb2RiJyk7XG5cbiAgcmV0dXJuIG5ldyBEYXRhYmFzZSh7XG4gICAgYXV0aDoge1xuICAgICAgcGFzc3dvcmQ6IGFyYW5nb0NvbmZpZy5wYXNzd29yZCxcbiAgICAgIHVzZXJuYW1lOiBhcmFuZ29Db25maWcudXNlcm5hbWVcbiAgICB9LFxuICAgIGRhdGFiYXNlTmFtZTogZGF0YWJhc2VOYW1lIHx8ICdyZWFrdG9yJyxcbiAgICB1cmw6IGAke2FyYW5nb0NvbmZpZy51cmx9OiR7YXJhbmdvQ29uZmlnLnBvcnR9YFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBjb2xsZWN0aW9uRGV0YWlscyA9IHtcbiAgYXBwczoge1xuICAgIGNvbGxlY3Rpb246ICdhcHBzJyxcbiAgICBrZXk6ICdhcHBJZCdcbiAgfSxcbiAgY29udmVyc2F0aW9uczoge1xuICAgIGNvbGxlY3Rpb246ICdjb252ZXJzYXRpb25zJyxcbiAgICBrZXk6ICdjb252ZXJzYXRpb25JZCdcbiAgfSxcbiAgZmlsZXM6IHtcbiAgICBjb2xsZWN0aW9uOiAnZmlsZXMnLFxuICAgIGtleTogJ2ZpbGVJZCdcbiAgfSxcbiAgZ3JvdXBzOiB7XG4gICAgY29sbGVjdGlvbjogJ2dyb3VwcycsXG4gICAga2V5OiAnZ3JvdXBJZCdcbiAgfSxcbiAgaW1hZ2VzOiB7XG4gICAgY29sbGVjdGlvbjogJ2ltYWdlcycsXG4gICAga2V5OiAnaW1hZ2VJZCdcbiAgfSxcbiAgbG9jYXRpb25zOiB7XG4gICAgY29sbGVjdGlvbjogJ2xvY2F0aW9ucycsXG4gICAga2V5OiAnbG9jYXRpb25JZCdcbiAgfSxcbiAgbWVzc2FnZXM6IHtcbiAgICBjb2xsZWN0aW9uOiAnbWVzc2FnZXMnLFxuICAgIGtleTogJ21lc3NhZ2VJZCdcbiAgfSxcbiAgbm90aWZpY2F0aW9uczoge1xuICAgIGNvbGxlY3Rpb246ICdub3RpZmljYXRpb25zJyxcbiAgICBrZXk6ICdub3RpZmljYXRpb25JZCdcbiAgfSxcbiAgcGF5bWVudHM6IHtcbiAgICBjb2xsZWN0aW9uOiAncGF5bWVudHMnLFxuICAgIGtleTogJ3BheW1lbnRJZCdcbiAgfSxcbiAgcG9zdHM6IHtcbiAgICBjb2xsZWN0aW9uOiAncG9zdHMnLFxuICAgIGtleTogJ3Bvc3RJZCdcbiAgfSxcbiAgcmVhY3Rpb25zOiB7XG4gICAgY29sbGVjdGlvbjogJ3JlYWN0aW9ucycsXG4gICAga2V5OiAncmVhY3Rpb25JZCdcbiAgfSxcbiAgc3Vic2NyaXB0aW9uczoge1xuICAgIGNvbGxlY3Rpb246ICdzdWJzY3JpcHRpb25zJyxcbiAgICBrZXk6ICdzdWJzY3JpcHRpb25JZCdcbiAgfSxcbiAgdGFnczoge1xuICAgIGNvbGxlY3Rpb246ICd0YWdzJyxcbiAgICBrZXk6ICd0YWdJZCdcbiAgfSxcbiAgdXNlcnM6IHtcbiAgICBjb2xsZWN0aW9uOiAndXNlcnMnLFxuICAgIGtleTogJ3VzZXJJZCdcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGdldERvY0lkID0gKGNvbGxlY3Rpb246IEFyYW5nb0RiQ29sbGVjdGlvbiwgaXRlbSk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IHtfaWQsIF9rZXksIGlkfSA9IGl0ZW07XG4gIGNvbnN0IGl0ZW1JZCA9IHBhcnNlQXJhbmdvSWQoX2lkIHx8IGlkKTtcblxuICBpZihpdGVtSWQpIHtcbiAgICBjb25zdCBpZFBhcnRzID0gaXRlbUlkLnNwbGl0KCcvJyk7XG5cbiAgICBpZihjb2xsZWN0aW9uRGV0YWlsc1tpZFBhcnRzWzBdXSkge1xuICAgICAgcmV0dXJuIGl0ZW1JZDtcbiAgICB9XG4gIH1cblxuICBsZXQgaXRlbUtleSA9IHBhcnNlSWQoX2tleSk7XG5cbiAgaWYoIWl0ZW1LZXkpIHtcbiAgICBpdGVtS2V5ID0gaXRlbVtjb2xsZWN0aW9uRGV0YWlsc1tjb2xsZWN0aW9uXS5rZXldO1xuICB9XG5cbiAgcmV0dXJuIGl0ZW1LZXkgPyBgJHtjb2xsZWN0aW9ufS8ke2l0ZW1LZXl9YCA6ICcnO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldExpbWl0ID0gKHN0YXJ0OiBudW1iZXIgPSAwLCB0bzogbnVtYmVyID0gMzApOiBBcmFuZ29EYkxpbWl0ID0+IHtcbiAgbGV0IG51bSA9IHBhcnNlTnVtKHRvKSAtIHBhcnNlTnVtKHN0YXJ0KTtcblxuICBpZihudW0gPiA1MCkge1xuICAgIG51bSA9IDUwO1xuICB9XG5cbiAgcmV0dXJuIHthcWw6IHRvID49IDAgPyBgTElNSVQgJHtzdGFydH0sICR7bnVtfWAgOiAnJywgbnVtLCBzdGFydH07XG59O1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0UmVhY3Rpb25Db3VudEJ5VHlwZSA9IChvYmplY3RUeXBlOiBzdHJpbmcsIG9iamVjdEtleTogc3RyaW5nLCBmaWVsZDogc3RyaW5nLCBzZWxlY3RzKSA9PiB7XG4gIGNvbnN0IHJlYWN0aW9uVHlwZTogc3RyaW5nID0gZmllbGQuc3Vic3RyaW5nKDAsIGZpZWxkLmluZGV4T2YoJ0NvdW50JykpO1xuICBzZWxlY3RzLnF1ZXJpZXMucHVzaChgTEVUICR7ZmllbGR9ID0gRklSU1QoXG4gICAgICBGT1Igb2JqLCByIElOIElOQk9VTkQgJHtvYmplY3RLZXl9Ll9pZCBoYXNSZWFjdGlvblxuICAgICAgRklMVEVSIHIubmFtZSA9PSBcIiR7cmVhY3Rpb25UeXBlfVwiICYmIHIudHlwZSA9PSBcIiR7b2JqZWN0VHlwZX1cIlxuICAgICAgQ09MTEVDVCBXSVRIIENPVU5UIElOVE8gY291bnRcbiAgICAgIFJFVFVSTiBjb3VudFxuICAgIClgKTtcbiAgc2VsZWN0cy5vYmplY3RzLnB1c2goYCR7ZmllbGR9OiR7ZmllbGR9YCk7XG4gIHJldHVybiBzZWxlY3RzO1xufTtcblxuZXhwb3J0IGNvbnN0IHNvcnRJZHMgPSAoaWRzOiBzdHJpbmdbXSwgc29ydDogc3RyaW5nID0gJ0FTQycpOiBzdHJpbmdbXSA9PiBpZHMuc29ydCgoYSwgYikgPT4ge1xuICBpZihzb3J0LnRvVXBwZXJDYXNlKCkgPT09ICdBU0MnKSB7XG4gICAgcmV0dXJuIGEubG9jYWxlQ29tcGFyZShiKTtcbiAgfVxuXG4gIHJldHVybiBiLmxvY2FsZUNvbXBhcmUoYSk7XG59KTtcblxuZXhwb3J0IGNvbnN0IGdldEdxbEZpZWxkcyA9IChpbmZvKSA9PiB7XG4gIGNvbnN0IGZpZWxkcyA9IGdyYXBocWxGaWVsZHMoaW5mbykgfHwge307XG4gIGNvbnN0IG1ldGhvZE5hbWU6IHN0cmluZyA9IE9iamVjdC5rZXlzKGZpZWxkcylbMF07XG5cbiAgaWYobWV0aG9kTmFtZSkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhmaWVsZHNbbWV0aG9kTmFtZV0pO1xuICB9XG5cbiAgcmV0dXJuIFtdO1xufTsiXSwKICAibWFwcGluZ3MiOiAiQUFJQSxPQUFRLFlBQUFBLE1BQWUsV0FDdkIsT0FBT0MsTUFBbUIsaUJBRTFCLE9BQVEsVUFBQUMsTUFBYSxlQUVyQixPQUFRLFlBQUFDLE1BQWUsK0JBQ3ZCLE9BQVEsaUJBQUFDLEVBQWUsV0FBQUMsTUFBYywrQkFHOUIsTUFBTUMsRUFBU0MsR0FBb0MsQ0FDeEQsTUFBTUMsRUFBZU4sRUFBTyxJQUFJLFVBQVUsRUFFMUMsT0FBTyxJQUFJRixFQUFTLENBQ2xCLEtBQU0sQ0FDSixTQUFVUSxFQUFhLFNBQ3ZCLFNBQVVBLEVBQWEsUUFDekIsRUFDQSxhQUFjRCxHQUFnQixVQUM5QixJQUFLLEdBQUdDLEVBQWEsR0FBRyxJQUFJQSxFQUFhLElBQUksRUFDL0MsQ0FBQyxDQUNILEVBRWFDLEVBQW9CLENBQy9CLEtBQU0sQ0FDSixXQUFZLE9BQ1osSUFBSyxPQUNQLEVBQ0EsY0FBZSxDQUNiLFdBQVksZ0JBQ1osSUFBSyxnQkFDUCxFQUNBLE1BQU8sQ0FDTCxXQUFZLFFBQ1osSUFBSyxRQUNQLEVBQ0EsT0FBUSxDQUNOLFdBQVksU0FDWixJQUFLLFNBQ1AsRUFDQSxPQUFRLENBQ04sV0FBWSxTQUNaLElBQUssU0FDUCxFQUNBLFVBQVcsQ0FDVCxXQUFZLFlBQ1osSUFBSyxZQUNQLEVBQ0EsU0FBVSxDQUNSLFdBQVksV0FDWixJQUFLLFdBQ1AsRUFDQSxjQUFlLENBQ2IsV0FBWSxnQkFDWixJQUFLLGdCQUNQLEVBQ0EsU0FBVSxDQUNSLFdBQVksV0FDWixJQUFLLFdBQ1AsRUFDQSxNQUFPLENBQ0wsV0FBWSxRQUNaLElBQUssUUFDUCxFQUNBLFVBQVcsQ0FDVCxXQUFZLFlBQ1osSUFBSyxZQUNQLEVBQ0EsY0FBZSxDQUNiLFdBQVksZ0JBQ1osSUFBSyxnQkFDUCxFQUNBLEtBQU0sQ0FDSixXQUFZLE9BQ1osSUFBSyxPQUNQLEVBQ0EsTUFBTyxDQUNMLFdBQVksUUFDWixJQUFLLFFBQ1AsQ0FDRixFQUVhQyxFQUFXLENBQUNDLEVBQWdDQyxJQUFpQixDQUN4RSxLQUFNLENBQUMsSUFBQUMsRUFBSyxLQUFBQyxFQUFNLEdBQUFDLENBQUUsRUFBSUgsRUFDbEJJLEVBQVNaLEVBQWNTLEdBQU9FLENBQUUsRUFFdEMsR0FBR0MsRUFBUSxDQUNULE1BQU1DLEVBQVVELEVBQU8sTUFBTSxHQUFHLEVBRWhDLEdBQUdQLEVBQWtCUSxFQUFRLENBQUMsQ0FBQyxFQUM3QixPQUFPRCxDQUVYLENBRUEsSUFBSUUsRUFBVWIsRUFBUVMsQ0FBSSxFQUUxQixPQUFJSSxJQUNGQSxFQUFVTixFQUFLSCxFQUFrQkUsQ0FBVSxFQUFFLEdBQUcsR0FHM0NPLEVBQVUsR0FBR1AsQ0FBVSxJQUFJTyxDQUFPLEdBQUssRUFDaEQsRUFFYUMsRUFBVyxDQUFDQyxFQUFnQixFQUFHQyxFQUFhLEtBQXNCLENBQzdFLElBQUlDLEVBQU1uQixFQUFTa0IsQ0FBRSxFQUFJbEIsRUFBU2lCLENBQUssRUFFdkMsT0FBR0UsRUFBTSxLQUNQQSxFQUFNLElBR0QsQ0FBQyxJQUFLRCxHQUFNLEVBQUksU0FBU0QsQ0FBSyxLQUFLRSxDQUFHLEdBQUssR0FBSSxJQUFBQSxFQUFLLE1BQUFGLENBQUssQ0FDbEUsRUFFYUcsRUFBNEIsQ0FBQ0MsRUFBb0JDLEVBQW1CQyxFQUFlQyxJQUFZLENBQzFHLE1BQU1DLEVBQXVCRixFQUFNLFVBQVUsRUFBR0EsRUFBTSxRQUFRLE9BQU8sQ0FBQyxFQUN0RSxPQUFBQyxFQUFRLFFBQVEsS0FBSyxPQUFPRCxDQUFLO0FBQUEsOEJBQ0xELENBQVM7QUFBQSwwQkFDYkcsQ0FBWSxtQkFBbUJKLENBQVU7QUFBQTtBQUFBO0FBQUEsTUFHN0QsRUFDSkcsRUFBUSxRQUFRLEtBQUssR0FBR0QsQ0FBSyxJQUFJQSxDQUFLLEVBQUUsRUFDakNDLENBQ1QsRUFFYUUsRUFBVSxDQUFDQyxFQUFlQyxFQUFlLFFBQW9CRCxFQUFJLEtBQUssQ0FBQ0UsRUFBR0MsSUFDbEZGLEVBQUssWUFBWSxJQUFNLE1BQ2pCQyxFQUFFLGNBQWNDLENBQUMsRUFHbkJBLEVBQUUsY0FBY0QsQ0FBQyxDQUN6QixFQUVZRSxFQUFnQkMsR0FBUyxDQUNwQyxNQUFNQyxFQUFTbkMsRUFBY2tDLENBQUksR0FBSyxDQUFDLEVBQ2pDRSxFQUFxQixPQUFPLEtBQUtELENBQU0sRUFBRSxDQUFDLEVBRWhELE9BQUdDLEVBQ00sT0FBTyxLQUFLRCxFQUFPQyxDQUFVLENBQUMsRUFHaEMsQ0FBQyxDQUNWIiwKICAibmFtZXMiOiBbIkRhdGFiYXNlIiwgImdyYXBocWxGaWVsZHMiLCAiQ29uZmlnIiwgInBhcnNlTnVtIiwgInBhcnNlQXJhbmdvSWQiLCAicGFyc2VJZCIsICJ1c2VEYiIsICJkYXRhYmFzZU5hbWUiLCAiYXJhbmdvQ29uZmlnIiwgImNvbGxlY3Rpb25EZXRhaWxzIiwgImdldERvY0lkIiwgImNvbGxlY3Rpb24iLCAiaXRlbSIsICJfaWQiLCAiX2tleSIsICJpZCIsICJpdGVtSWQiLCAiaWRQYXJ0cyIsICJpdGVtS2V5IiwgImdldExpbWl0IiwgInN0YXJ0IiwgInRvIiwgIm51bSIsICJzZWxlY3RSZWFjdGlvbkNvdW50QnlUeXBlIiwgIm9iamVjdFR5cGUiLCAib2JqZWN0S2V5IiwgImZpZWxkIiwgInNlbGVjdHMiLCAicmVhY3Rpb25UeXBlIiwgInNvcnRJZHMiLCAiaWRzIiwgInNvcnQiLCAiYSIsICJiIiwgImdldEdxbEZpZWxkcyIsICJpbmZvIiwgImZpZWxkcyIsICJtZXRob2ROYW1lIl0KfQo=
@@ -1,4 +1,5 @@
1
- import { AppStage, type ApiContext } from '../types';
1
+ import type { AppStage } from '../types/apps.types.js';
2
+ import type { ApiContext } from '../types/auth.types.js';
2
3
  export type LambdaDataContext = {
3
4
  accountId: 'accountId';
4
5
  readonly requestId: string;
@@ -19,3 +20,4 @@ export declare const getLambdaData: (data: LambdaData | string) => {
19
20
  };
20
21
  export declare const parseJsonData: (data: any) => any;
21
22
  export declare const isAuthenticated: (context: ApiContext, userId: string) => boolean;
23
+ export declare const createContext: (context: ApiContext, event: any) => Promise<ApiContext>;
@@ -0,0 +1,2 @@
1
+ import{getSession as a}from"./sessionUtils.js";const p=t=>{if(typeof t=="string")return{body:n(t),context:{}};const{body:e,"body-json":o,requestContext:r}=t;return{body:n(e||o),context:r?{...r}:{}}},n=t=>{try{return JSON.parse(t)}catch{return t}},c=(t,e)=>{const{session:o}=t,{userAccess:r=0,userId:s}=o||{};return r>3||s===e},d=async(t,e)=>{try{const r=(e.headers?.Authorization||e.headers?.authorization)?.replace("Bearer ","");if(!r)return t;const s=a(r);return s?.userId?{...t,session:s}:t}catch{return t}};export{d as createContext,p as getLambdaData,c as isAuthenticated,n as parseJsonData};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2F1dGhVdGlscy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7Z2V0U2Vzc2lvbn0gZnJvbSAnLi9zZXNzaW9uVXRpbHMuanMnO1xuXG5pbXBvcnQgdHlwZSB7QXBwU3RhZ2V9IGZyb20gJy4uL3R5cGVzL2FwcHMudHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgudHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge1Nlc3Npb259IGZyb20gJy4vc2Vzc2lvblV0aWxzLmpzJztcblxuZXhwb3J0IHR5cGUgTGFtYmRhRGF0YUNvbnRleHQgPSB7YWNjb3VudElkOiAnYWNjb3VudElkJyxcbiAgcmVhZG9ubHkgcmVxdWVzdElkOiBzdHJpbmcsXG4gIHJlYWRvbmx5IHJlcXVlc3RUaW1lRXBvY2g6IG51bWJlcixcbiAgcmVhZG9ubHkgcmVzb3VyY2VJZDogc3RyaW5nLFxuICByZWFkb25seSByZXNvdXJjZVBhdGg6IHN0cmluZyxcbiAgcmVhZG9ubHkgc3RhZ2U6IEFwcFN0YWdlXG59O1xuXG5leHBvcnQgdHlwZSBMYW1iZGFEYXRhID0ge1xuICByZWFkb25seSBib2R5Pzogc3RyaW5nIHwgb2JqZWN0O1xuICByZWFkb25seSAnYm9keS1qc29uJz86IHN0cmluZztcbiAgcmVhZG9ubHkgY29udGV4dD86IExhbWJkYURhdGFDb250ZXh0O1xuICByZWFkb25seSByZXF1ZXN0Q29udGV4dD86IG9iamVjdDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRMYW1iZGFEYXRhID0gKGRhdGE6IExhbWJkYURhdGEgfCBzdHJpbmcpID0+IHtcbiAgaWYodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJvZHk6IHBhcnNlSnNvbkRhdGEoZGF0YSksXG4gICAgICBjb250ZXh0OiB7fVxuICAgIH07XG4gIH1cblxuICBjb25zdCB7Ym9keSwgJ2JvZHktanNvbic6IGJvZHlKc29uLCByZXF1ZXN0Q29udGV4dH0gPSBkYXRhIGFzIExhbWJkYURhdGE7XG4gIGNvbnN0IHF1ZXJ5RGF0YSA9IGJvZHkgfHwgYm9keUpzb247XG5cbiAgcmV0dXJuIHtcbiAgICBib2R5OiBwYXJzZUpzb25EYXRhKHF1ZXJ5RGF0YSksXG4gICAgY29udGV4dDogcmVxdWVzdENvbnRleHQgPyB7Li4ucmVxdWVzdENvbnRleHR9IDoge31cbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBwYXJzZUpzb25EYXRhID0gKGRhdGEpID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShkYXRhKTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIHJldHVybiBkYXRhO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaXNBdXRoZW50aWNhdGVkID0gKGNvbnRleHQ6IEFwaUNvbnRleHQsIHVzZXJJZDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHtzZXNzaW9ufSA9IGNvbnRleHQ7XG4gIGNvbnN0IHt1c2VyQWNjZXNzID0gMCwgdXNlcklkOiBzZXNzaW9uVXNlcklkfSA9IHNlc3Npb24gfHwge307XG5cbiAgcmV0dXJuIHVzZXJBY2Nlc3MgPiAzIHx8IHNlc3Npb25Vc2VySWQgPT09IHVzZXJJZDtcbn07XG5cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNvbnRleHQgPSBhc3luYyAoY29udGV4dDogQXBpQ29udGV4dCwgZXZlbnQpOiBQcm9taXNlPEFwaUNvbnRleHQ+ID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBhdXRoSGVhZGVyID0gZXZlbnQuaGVhZGVycz8uQXV0aG9yaXphdGlvbiB8fCBldmVudC5oZWFkZXJzPy5hdXRob3JpemF0aW9uO1xuICAgIGNvbnN0IHRva2VuID0gYXV0aEhlYWRlcj8ucmVwbGFjZSgnQmVhcmVyICcsICcnKTtcblxuICAgIGlmKCF0b2tlbikge1xuICAgICAgcmV0dXJuIGNvbnRleHQ7XG4gICAgfVxuXG4gICAgY29uc3Qgc2Vzc2lvbjogU2Vzc2lvbiA9IGdldFNlc3Npb24odG9rZW4pO1xuXG4gICAgaWYoc2Vzc2lvbj8udXNlcklkKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5jb250ZXh0LFxuICAgICAgICBzZXNzaW9uXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBjb250ZXh0O1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignQXV0aCBlcnJvcjonLCBlcnJvcik7XG4gICAgcmV0dXJuIGNvbnRleHQ7XG4gIH1cbn07Il0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBUSxjQUFBQSxNQUFpQixvQkFxQmxCLE1BQU1DLEVBQWlCQyxHQUE4QixDQUMxRCxHQUFHLE9BQU9BLEdBQVMsU0FDakIsTUFBTyxDQUNMLEtBQU1DLEVBQWNELENBQUksRUFDeEIsUUFBUyxDQUFDLENBQ1osRUFHRixLQUFNLENBQUMsS0FBQUUsRUFBTSxZQUFhQyxFQUFVLGVBQUFDLENBQWMsRUFBSUosRUFHdEQsTUFBTyxDQUNMLEtBQU1DLEVBSFVDLEdBQVFDLENBR0ssRUFDN0IsUUFBU0MsRUFBaUIsQ0FBQyxHQUFHQSxDQUFjLEVBQUksQ0FBQyxDQUNuRCxDQUNGLEVBRWFILEVBQWlCRCxHQUFTLENBQ3JDLEdBQUksQ0FDRixPQUFPLEtBQUssTUFBTUEsQ0FBSSxDQUN4QixNQUFlLENBQ2IsT0FBT0EsQ0FDVCxDQUNGLEVBRWFLLEVBQWtCLENBQUNDLEVBQXFCQyxJQUFtQixDQUN0RSxLQUFNLENBQUMsUUFBQUMsQ0FBTyxFQUFJRixFQUNaLENBQUMsV0FBQUcsRUFBYSxFQUFHLE9BQVFDLENBQWEsRUFBSUYsR0FBVyxDQUFDLEVBRTVELE9BQU9DLEVBQWEsR0FBS0MsSUFBa0JILENBQzdDLEVBR2FJLEVBQWdCLE1BQU9MLEVBQXFCTSxJQUErQixDQUN0RixHQUFJLENBRUYsTUFBTUMsR0FEYUQsRUFBTSxTQUFTLGVBQWlCQSxFQUFNLFNBQVMsZ0JBQ3hDLFFBQVEsVUFBVyxFQUFFLEVBRS9DLEdBQUcsQ0FBQ0MsRUFDRixPQUFPUCxFQUdULE1BQU1FLEVBQW1CVixFQUFXZSxDQUFLLEVBRXpDLE9BQUdMLEdBQVMsT0FDSCxDQUNMLEdBQUdGLEVBQ0gsUUFBQUUsQ0FDRixFQUdLRixDQUNULE1BQWUsQ0FFYixPQUFPQSxDQUNULENBQ0YiLAogICJuYW1lcyI6IFsiZ2V0U2Vzc2lvbiIsICJnZXRMYW1iZGFEYXRhIiwgImRhdGEiLCAicGFyc2VKc29uRGF0YSIsICJib2R5IiwgImJvZHlKc29uIiwgInJlcXVlc3RDb250ZXh0IiwgImlzQXV0aGVudGljYXRlZCIsICJjb250ZXh0IiwgInVzZXJJZCIsICJzZXNzaW9uIiwgInVzZXJBY2Nlc3MiLCAic2Vzc2lvblVzZXJJZCIsICJjcmVhdGVDb250ZXh0IiwgImV2ZW50IiwgInRva2VuIl0KfQo=
@@ -0,0 +1,3 @@
1
+ import type { APIGatewayEvent } from 'aws-lambda';
2
+ import type { LanguageDetectionContext } from './languageDetection.js';
3
+ export declare const extractLanguageContext: (event: APIGatewayEvent) => LanguageDetectionContext;
@@ -0,0 +1,2 @@
1
+ const r=e=>{const a=e.headers?.["Accept-Language"]||e.headers?.["accept-language"]||e.headers?.["Accept-Language"]||e.headers?.["accept-language"],t=e.requestContext?.identity?.sourceIp||e.headers?.["X-Forwarded-For"]?.split(",")[0]||e.headers?.["x-forwarded-for"]?.split(",")[0];return{acceptLanguage:a,ipCountry:t?"US":void 0}};export{r as extractLanguageContext};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2NvbnRleHRVdGlscy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHR5cGUge0FQSUdhdGV3YXlFdmVudH0gZnJvbSAnYXdzLWxhbWJkYSc7XG5pbXBvcnQgdHlwZSB7TGFuZ3VhZ2VEZXRlY3Rpb25Db250ZXh0fSBmcm9tICcuL2xhbmd1YWdlRGV0ZWN0aW9uLmpzJztcblxuZXhwb3J0IGNvbnN0IGV4dHJhY3RMYW5ndWFnZUNvbnRleHQgPSAoZXZlbnQ6IEFQSUdhdGV3YXlFdmVudCk6IExhbmd1YWdlRGV0ZWN0aW9uQ29udGV4dCA9PiB7XG4gIGNvbnN0IGFjY2VwdExhbmd1YWdlID0gZXZlbnQuaGVhZGVycz8uWydBY2NlcHQtTGFuZ3VhZ2UnXVxuICAgIHx8IGV2ZW50LmhlYWRlcnM/LlsnYWNjZXB0LWxhbmd1YWdlJ11cbiAgICB8fCBldmVudC5oZWFkZXJzPy5bJ0FjY2VwdC1MYW5ndWFnZSddXG4gICAgfHwgZXZlbnQuaGVhZGVycz8uWydhY2NlcHQtbGFuZ3VhZ2UnXTtcblxuICBjb25zdCBpcEFkZHJlc3MgPSBldmVudC5yZXF1ZXN0Q29udGV4dD8uaWRlbnRpdHk/LnNvdXJjZUlwXG4gICAgfHwgZXZlbnQuaGVhZGVycz8uWydYLUZvcndhcmRlZC1Gb3InXT8uc3BsaXQoJywnKVswXVxuICAgIHx8IGV2ZW50LmhlYWRlcnM/LlsneC1mb3J3YXJkZWQtZm9yJ10/LnNwbGl0KCcsJylbMF07XG5cbiAgcmV0dXJuIHtcbiAgICBhY2NlcHRMYW5ndWFnZSxcbiAgICBpcENvdW50cnk6IGlwQWRkcmVzcyA/ICdVUycgOiB1bmRlZmluZWRcbiAgfSBhcyBMYW5ndWFnZURldGVjdGlvbkNvbnRleHQ7XG59OyJdLAogICJtYXBwaW5ncyI6ICJBQUdPLE1BQU1BLEVBQTBCQyxHQUFxRCxDQUMxRixNQUFNQyxFQUFpQkQsRUFBTSxVQUFVLGlCQUFpQixHQUNuREEsRUFBTSxVQUFVLGlCQUFpQixHQUNqQ0EsRUFBTSxVQUFVLGlCQUFpQixHQUNqQ0EsRUFBTSxVQUFVLGlCQUFpQixFQUVoQ0UsRUFBWUYsRUFBTSxnQkFBZ0IsVUFBVSxVQUM3Q0EsRUFBTSxVQUFVLGlCQUFpQixHQUFHLE1BQU0sR0FBRyxFQUFFLENBQUMsR0FDaERBLEVBQU0sVUFBVSxpQkFBaUIsR0FBRyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBRXJELE1BQU8sQ0FDTCxlQUFBQyxFQUNBLFVBQVdDLEVBQVksS0FBTyxNQUNoQyxDQUNGIiwKICAibmFtZXMiOiBbImV4dHJhY3RMYW5ndWFnZUNvbnRleHQiLCAiZXZlbnQiLCAiYWNjZXB0TGFuZ3VhZ2UiLCAiaXBBZGRyZXNzIl0KfQo=
@@ -0,0 +1,10 @@
1
+ import type { ApiContext } from '../types/auth.types.js';
2
+ import type { Locale } from '../types/content.types.js';
3
+ export declare const dbI18n: (context: ApiContext, key: string, fallbackContent: string, locale?: Locale) => Promise<string>;
4
+ export declare const dbI18nMultiple: (context: ApiContext, translations: Array<{
5
+ key: string;
6
+ fallback: string;
7
+ locale?: Locale;
8
+ }>) => Promise<string[]>;
9
+ export declare const dbI18nWithInterpolation: (context: ApiContext, key: string, fallbackContent: string, interpolation?: Record<string, any>, locale?: Locale) => Promise<string>;
10
+ export declare const dbI18nBatch: (context: ApiContext, keys: string[], fallbackMap: Record<string, string>, locale?: Locale) => Promise<Record<string, string>>;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Copyright (c) 2025-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ *
5
+ * Example usage of the database-driven i18n system
6
+ *
7
+ * This demonstrates how to use the new i18n utility that fetches
8
+ * translations from the database with fallback support.
9
+ */
10
+ import type { ApiContext } from '../types/auth.types.js';
11
+ import type { Locale } from '../types/content.types.js';
12
+ export declare function sendWelcomeSMS(context: ApiContext, username: string, phoneNumber: string): Promise<string>;
13
+ export declare function sendVerificationCode(context: ApiContext, code: string, locale?: Locale): Promise<string>;
14
+ export declare function generateWelcomeEmail(context: ApiContext, username: string, locale?: Locale): Promise<{
15
+ subject: string;
16
+ body: string;
17
+ }>;
18
+ export declare function generateNotificationMessages(context: ApiContext, locale?: Locale): Promise<Record<string, string>>;
19
+ export declare function getErrorMessage(context: ApiContext, errorCode: string, locale?: Locale): Promise<string>;
20
+ export declare function getUserGreeting(context: ApiContext, userLocale?: string): Promise<string>;
@@ -0,0 +1,6 @@
1
+ import{dbI18n as a,dbI18nBatch as c,dbI18nMultiple as l,dbI18nWithInterpolation as m}from"./dbI18n.js";async function g(t,e,o){return await a(t,"sms.welcome","Welcome to TorchOne, {{username}}! Thank you for joining our platform.","en")}async function f(t,e,o="en"){return await m(t,"sms.verificationCode","Your verification code is: {{code}}",{code:e},o)}async function u(t,e,o="en"){const[n,r,s]=await l(t,[{key:"email.welcome",fallback:"Welcome to TorchOne, {{username}}!",locale:o},{key:"email.getStarted",fallback:"To get started, please complete your profile and explore our features.",locale:o},{key:"email.teamSignature",fallback:"The TorchOne Team",locale:o}]),i=n.replace(/\{\{username\}\}/g,e);return{subject:i,body:`${i}
2
+
3
+ ${r}
4
+
5
+ ${s}`}}async function d(t,e="en"){return await c(t,["notification.welcome","notification.verification","notification.passwordReset","notification.profileUpdate"],{"notification.welcome":"Welcome to TorchOne!","notification.verification":"Please verify your account.","notification.passwordReset":"Your password has been reset.","notification.profileUpdate":"Your profile has been updated."},e)}async function y(t,e,o="en"){try{return await a(t,`error.${e}`,`An error occurred: ${e}`,o)}catch{return`An error occurred: ${e}`}}async function b(t,e){return await a(t,"greeting.morning","Good morning!",e||"en")}export{d as generateNotificationMessages,u as generateWelcomeEmail,y as getErrorMessage,b as getUserGreeting,f as sendVerificationCode,g as sendWelcomeSMS};
6
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2RiSTE4bi5leGFtcGxlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqXG4gKiBFeGFtcGxlIHVzYWdlIG9mIHRoZSBkYXRhYmFzZS1kcml2ZW4gaTE4biBzeXN0ZW1cbiAqXG4gKiBUaGlzIGRlbW9uc3RyYXRlcyBob3cgdG8gdXNlIHRoZSBuZXcgaTE4biB1dGlsaXR5IHRoYXQgZmV0Y2hlc1xuICogdHJhbnNsYXRpb25zIGZyb20gdGhlIGRhdGFiYXNlIHdpdGggZmFsbGJhY2sgc3VwcG9ydC5cbiAqL1xuXG5pbXBvcnQge2RiSTE4biwgZGJJMThuQmF0Y2gsIGRiSTE4bk11bHRpcGxlLCBkYkkxOG5XaXRoSW50ZXJwb2xhdGlvbn0gZnJvbSAnLi9kYkkxOG4uanMnO1xuXG5pbXBvcnQgdHlwZSB7QXBpQ29udGV4dH0gZnJvbSAnLi4vdHlwZXMvYXV0aC50eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7TG9jYWxlfSBmcm9tICcuLi90eXBlcy9jb250ZW50LnR5cGVzLmpzJztcblxuLy8gRXhhbXBsZSAxOiBCYXNpYyBkYXRhYmFzZSB0cmFuc2xhdGlvbiB3aXRoIGZhbGxiYWNrXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2VuZFdlbGNvbWVTTVMoY29udGV4dDogQXBpQ29udGV4dCwgdXNlcm5hbWU6IHN0cmluZywgcGhvbmVOdW1iZXI6IHN0cmluZykge1xuICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZGJJMThuKFxuICAgIGNvbnRleHQsXG4gICAgJ3Ntcy53ZWxjb21lJyxcbiAgICAnV2VsY29tZSB0byBUb3JjaE9uZSwge3t1c2VybmFtZX19ISBUaGFuayB5b3UgZm9yIGpvaW5pbmcgb3VyIHBsYXRmb3JtLicsXG4gICAgJ2VuJ1xuICApO1xuXG4gIGNvbnNvbGUubG9nKGBTZW5kaW5nIFNNUyB0byAke3Bob25lTnVtYmVyfTogJHttZXNzYWdlfWApO1xuICByZXR1cm4gbWVzc2FnZTtcbn1cblxuLy8gRXhhbXBsZSAyOiBUcmFuc2xhdGlvbiB3aXRoIGludGVycG9sYXRpb25cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzZW5kVmVyaWZpY2F0aW9uQ29kZShcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAgY29kZTogc3RyaW5nLFxuICBsb2NhbGU6IExvY2FsZSA9ICdlbidcbikge1xuICBjb25zdCBtZXNzYWdlID0gYXdhaXQgZGJJMThuV2l0aEludGVycG9sYXRpb24oXG4gICAgY29udGV4dCxcbiAgICAnc21zLnZlcmlmaWNhdGlvbkNvZGUnLFxuICAgICdZb3VyIHZlcmlmaWNhdGlvbiBjb2RlIGlzOiB7e2NvZGV9fScsXG4gICAge2NvZGV9LFxuICAgIGxvY2FsZVxuICApO1xuXG4gIGNvbnNvbGUubG9nKGBTZW5kaW5nIHZlcmlmaWNhdGlvbiBjb2RlIGluICR7bG9jYWxlfTogJHttZXNzYWdlfWApO1xuICByZXR1cm4gbWVzc2FnZTtcbn1cblxuLy8gRXhhbXBsZSAzOiBNdWx0aXBsZSB0cmFuc2xhdGlvbnMgYXQgb25jZVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdlbmVyYXRlV2VsY29tZUVtYWlsKGNvbnRleHQ6IEFwaUNvbnRleHQsIHVzZXJuYW1lOiBzdHJpbmcsIGxvY2FsZTogTG9jYWxlID0gJ2VuJykge1xuICBjb25zdCBbd2VsY29tZU1lc3NhZ2UsIGdldFN0YXJ0ZWRNZXNzYWdlLCB0ZWFtU2lnbmF0dXJlXSA9IGF3YWl0IGRiSTE4bk11bHRpcGxlKGNvbnRleHQsIFtcbiAgICB7XG4gICAgICBrZXk6ICdlbWFpbC53ZWxjb21lJyxcbiAgICAgIGZhbGxiYWNrOiAnV2VsY29tZSB0byBUb3JjaE9uZSwge3t1c2VybmFtZX19IScsXG4gICAgICBsb2NhbGVcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ2VtYWlsLmdldFN0YXJ0ZWQnLFxuICAgICAgZmFsbGJhY2s6ICdUbyBnZXQgc3RhcnRlZCwgcGxlYXNlIGNvbXBsZXRlIHlvdXIgcHJvZmlsZSBhbmQgZXhwbG9yZSBvdXIgZmVhdHVyZXMuJyxcbiAgICAgIGxvY2FsZVxuICAgIH0sXG4gICAge1xuICAgICAga2V5OiAnZW1haWwudGVhbVNpZ25hdHVyZScsXG4gICAgICBmYWxsYmFjazogJ1RoZSBUb3JjaE9uZSBUZWFtJyxcbiAgICAgIGxvY2FsZVxuICAgIH1cbiAgXSk7XG5cbiAgLy8gQXBwbHkgaW50ZXJwb2xhdGlvbiB0byB3ZWxjb21lIG1lc3NhZ2VcbiAgY29uc3QgaW50ZXJwb2xhdGVkV2VsY29tZSA9IHdlbGNvbWVNZXNzYWdlLnJlcGxhY2UoL1xce1xce3VzZXJuYW1lXFx9XFx9L2csIHVzZXJuYW1lKTtcblxuICByZXR1cm4ge1xuICAgIHN1YmplY3Q6IGludGVycG9sYXRlZFdlbGNvbWUsXG4gICAgYm9keTogYCR7aW50ZXJwb2xhdGVkV2VsY29tZX1cXG5cXG4ke2dldFN0YXJ0ZWRNZXNzYWdlfVxcblxcbiR7dGVhbVNpZ25hdHVyZX1gXG4gIH07XG59XG5cbi8vIEV4YW1wbGUgNDogQmF0Y2ggdHJhbnNsYXRpb24gZm9yIGJldHRlciBwZXJmb3JtYW5jZVxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdlbmVyYXRlTm90aWZpY2F0aW9uTWVzc2FnZXMoY29udGV4dDogQXBpQ29udGV4dCwgbG9jYWxlOiBMb2NhbGUgPSAnZW4nKSB7XG4gIGNvbnN0IGtleXMgPSBbXG4gICAgJ25vdGlmaWNhdGlvbi53ZWxjb21lJyxcbiAgICAnbm90aWZpY2F0aW9uLnZlcmlmaWNhdGlvbicsXG4gICAgJ25vdGlmaWNhdGlvbi5wYXNzd29yZFJlc2V0JyxcbiAgICAnbm90aWZpY2F0aW9uLnByb2ZpbGVVcGRhdGUnXG4gIF07XG5cbiAgY29uc3QgZmFsbGJhY2tNYXAgPSB7XG4gICAgJ25vdGlmaWNhdGlvbi53ZWxjb21lJzogJ1dlbGNvbWUgdG8gVG9yY2hPbmUhJyxcbiAgICAnbm90aWZpY2F0aW9uLnZlcmlmaWNhdGlvbic6ICdQbGVhc2UgdmVyaWZ5IHlvdXIgYWNjb3VudC4nLFxuICAgICdub3RpZmljYXRpb24ucGFzc3dvcmRSZXNldCc6ICdZb3VyIHBhc3N3b3JkIGhhcyBiZWVuIHJlc2V0LicsXG4gICAgJ25vdGlmaWNhdGlvbi5wcm9maWxlVXBkYXRlJzogJ1lvdXIgcHJvZmlsZSBoYXMgYmVlbiB1cGRhdGVkLidcbiAgfTtcblxuICBjb25zdCB0cmFuc2xhdGlvbnMgPSBhd2FpdCBkYkkxOG5CYXRjaChjb250ZXh0LCBrZXlzLCBmYWxsYmFja01hcCwgbG9jYWxlKTtcblxuICByZXR1cm4gdHJhbnNsYXRpb25zO1xufVxuXG4vLyBFeGFtcGxlIDU6IEVycm9yIGhhbmRsaW5nIHdpdGggZmFsbGJhY2tcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRFcnJvck1lc3NhZ2UoY29udGV4dDogQXBpQ29udGV4dCwgZXJyb3JDb2RlOiBzdHJpbmcsIGxvY2FsZTogTG9jYWxlID0gJ2VuJykge1xuICB0cnkge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBkYkkxOG4oXG4gICAgICBjb250ZXh0LFxuICAgICAgYGVycm9yLiR7ZXJyb3JDb2RlfWAsXG4gICAgICBgQW4gZXJyb3Igb2NjdXJyZWQ6ICR7ZXJyb3JDb2RlfWAsXG4gICAgICBsb2NhbGVcbiAgICApO1xuICAgIHJldHVybiBtZXNzYWdlO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgLy8gSWYgZGF0YWJhc2UgaXMgdW5hdmFpbGFibGUsIHJldHVybiBmYWxsYmFja1xuICAgIGNvbnNvbGUuZXJyb3IoJ0RhdGFiYXNlIGVycm9yLCB1c2luZyBmYWxsYmFjazonLCBlcnJvcik7XG4gICAgcmV0dXJuIGBBbiBlcnJvciBvY2N1cnJlZDogJHtlcnJvckNvZGV9YDtcbiAgfVxufVxuXG4vLyBFeGFtcGxlIDY6IER5bmFtaWMgY29udGVudCBiYXNlZCBvbiB1c2VyIHByZWZlcmVuY2VzXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0VXNlckdyZWV0aW5nKGNvbnRleHQ6IEFwaUNvbnRleHQsIHVzZXJMb2NhbGU/OiBzdHJpbmcpIHtcbiAgLy8gVXNlIHVzZXIncyBsb2NhbGUgaWYgYXZhaWxhYmxlLCBvdGhlcndpc2UgZGVmYXVsdCB0byAnZW4nXG4gIGNvbnN0IGxvY2FsZTogTG9jYWxlID0gKHVzZXJMb2NhbGUgYXMgTG9jYWxlKSB8fCAnZW4nO1xuXG4gIGNvbnN0IGdyZWV0aW5nID0gYXdhaXQgZGJJMThuKFxuICAgIGNvbnRleHQsXG4gICAgJ2dyZWV0aW5nLm1vcm5pbmcnLFxuICAgICdHb29kIG1vcm5pbmchJyxcbiAgICBsb2NhbGVcbiAgKTtcblxuICByZXR1cm4gZ3JlZXRpbmc7XG59XG5cbi8vIFVzYWdlIGV4YW1wbGVzOlxuLy8gY29uc3QgY29udGV4dCA9IHsgZGF0YWJhc2VOYW1lOiAndG9yY2hvbmUtZGV2Jywgc2Vzc2lvbjogeyB1c2VySWQ6ICd1c2VyMTIzJyB9IH07XG4vLyBhd2FpdCBzZW5kV2VsY29tZVNNUyhjb250ZXh0LCAnSm9obicsICcrMTIzNDU2Nzg5MCcpO1xuLy8gYXdhaXQgc2VuZFZlcmlmaWNhdGlvbkNvZGUoY29udGV4dCwgJzEyMzQ1NicsICdlcycpO1xuLy8gY29uc3QgZW1haWwgPSBhd2FpdCBnZW5lcmF0ZVdlbGNvbWVFbWFpbChjb250ZXh0LCAnTWFyaWEnLCAncHQnKTtcbi8vIGNvbnN0IG5vdGlmaWNhdGlvbnMgPSBhd2FpdCBnZW5lcmF0ZU5vdGlmaWNhdGlvbk1lc3NhZ2VzKGNvbnRleHQsICdmcicpO1xuLy8gY29uc3QgZXJyb3JNc2cgPSBhd2FpdCBnZXRFcnJvck1lc3NhZ2UoY29udGV4dCwgJ0lOVkFMSURfRU1BSUwnLCAnZGUnKTtcbi8vIGNvbnN0IGdyZWV0aW5nID0gYXdhaXQgZ2V0VXNlckdyZWV0aW5nKGNvbnRleHQsICdlbicpOyJdLAogICJtYXBwaW5ncyI6ICJBQVVBLE9BQVEsVUFBQUEsRUFBUSxlQUFBQyxFQUFhLGtCQUFBQyxFQUFnQiwyQkFBQUMsTUFBOEIsY0FNM0UsZUFBc0JDLEVBQWVDLEVBQXFCQyxFQUFrQkMsRUFBcUIsQ0FTL0YsT0FSZ0IsTUFBTVAsRUFDcEJLLEVBQ0EsY0FDQSx5RUFDQSxJQUNGLENBSUYsQ0FHQSxlQUFzQkcsRUFDcEJILEVBQ0FJLEVBQ0FDLEVBQWlCLEtBQ2pCLENBVUEsT0FUZ0IsTUFBTVAsRUFDcEJFLEVBQ0EsdUJBQ0Esc0NBQ0EsQ0FBQyxLQUFBSSxDQUFJLEVBQ0xDLENBQ0YsQ0FJRixDQUdBLGVBQXNCQyxFQUFxQk4sRUFBcUJDLEVBQWtCSSxFQUFpQixLQUFNLENBQ3ZHLEtBQU0sQ0FBQ0UsRUFBZ0JDLEVBQW1CQyxDQUFhLEVBQUksTUFBTVosRUFBZUcsRUFBUyxDQUN2RixDQUNFLElBQUssZ0JBQ0wsU0FBVSxxQ0FDVixPQUFBSyxDQUNGLEVBQ0EsQ0FDRSxJQUFLLG1CQUNMLFNBQVUseUVBQ1YsT0FBQUEsQ0FDRixFQUNBLENBQ0UsSUFBSyxzQkFDTCxTQUFVLG9CQUNWLE9BQUFBLENBQ0YsQ0FDRixDQUFDLEVBR0tLLEVBQXNCSCxFQUFlLFFBQVEsb0JBQXFCTixDQUFRLEVBRWhGLE1BQU8sQ0FDTCxRQUFTUyxFQUNULEtBQU0sR0FBR0EsQ0FBbUI7QUFBQTtBQUFBLEVBQU9GLENBQWlCO0FBQUE7QUFBQSxFQUFPQyxDQUFhLEVBQzFFLENBQ0YsQ0FHQSxlQUFzQkUsRUFBNkJYLEVBQXFCSyxFQUFpQixLQUFNLENBaUI3RixPQUZxQixNQUFNVCxFQUFZSSxFQWQxQixDQUNYLHVCQUNBLDRCQUNBLDZCQUNBLDRCQUNGLEVBRW9CLENBQ2xCLHVCQUF3Qix1QkFDeEIsNEJBQTZCLDhCQUM3Qiw2QkFBOEIsZ0NBQzlCLDZCQUE4QixnQ0FDaEMsRUFFbUVLLENBQU0sQ0FHM0UsQ0FHQSxlQUFzQk8sRUFBZ0JaLEVBQXFCYSxFQUFtQlIsRUFBaUIsS0FBTSxDQUNuRyxHQUFJLENBT0YsT0FOZ0IsTUFBTVYsRUFDcEJLLEVBQ0EsU0FBU2EsQ0FBUyxHQUNsQixzQkFBc0JBLENBQVMsR0FDL0JSLENBQ0YsQ0FFRixNQUFlLENBR2IsTUFBTyxzQkFBc0JRLENBQVMsRUFDeEMsQ0FDRixDQUdBLGVBQXNCQyxFQUFnQmQsRUFBcUJlLEVBQXFCLENBVzlFLE9BUGlCLE1BQU1wQixFQUNyQkssRUFDQSxtQkFDQSxnQkFMc0JlLEdBQXlCLElBT2pELENBR0YiLAogICJuYW1lcyI6IFsiZGJJMThuIiwgImRiSTE4bkJhdGNoIiwgImRiSTE4bk11bHRpcGxlIiwgImRiSTE4bldpdGhJbnRlcnBvbGF0aW9uIiwgInNlbmRXZWxjb21lU01TIiwgImNvbnRleHQiLCAidXNlcm5hbWUiLCAicGhvbmVOdW1iZXIiLCAic2VuZFZlcmlmaWNhdGlvbkNvZGUiLCAiY29kZSIsICJsb2NhbGUiLCAiZ2VuZXJhdGVXZWxjb21lRW1haWwiLCAid2VsY29tZU1lc3NhZ2UiLCAiZ2V0U3RhcnRlZE1lc3NhZ2UiLCAidGVhbVNpZ25hdHVyZSIsICJpbnRlcnBvbGF0ZWRXZWxjb21lIiwgImdlbmVyYXRlTm90aWZpY2F0aW9uTWVzc2FnZXMiLCAiZ2V0RXJyb3JNZXNzYWdlIiwgImVycm9yQ29kZSIsICJnZXRVc2VyR3JlZXRpbmciLCAidXNlckxvY2FsZSJdCn0K
@@ -0,0 +1,2 @@
1
+ import{getContentWithFallback as c}from"../actions/content.js";const m=async(e,t,s,n="en")=>c(e,t,s,n),l=async(e,t)=>{const s=t.map(({key:n,fallback:o,locale:i="en"})=>c(e,n,o,i));return Promise.all(s)},d=async(e,t,s,n={},o="en")=>(await c(e,t,s,o)).replace(/\{\{(\w+)\}\}/g,(a,r)=>n[r]!==void 0?String(n[r]):a),x=async(e,t,s,n="en")=>{const o=t.map(r=>({key:r,fallback:s[r]||r,locale:n})),i=await l(e,o),a={};return t.forEach((r,p)=>{a[r]=i[p]}),a};export{m as dbI18n,x as dbI18nBatch,l as dbI18nMultiple,d as dbI18nWithInterpolation};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2RiSTE4bi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjUtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7Z2V0Q29udGVudFdpdGhGYWxsYmFja30gZnJvbSAnLi4vYWN0aW9ucy9jb250ZW50LmpzJztcblxuaW1wb3J0IHR5cGUge0FwaUNvbnRleHR9IGZyb20gJy4uL3R5cGVzL2F1dGgudHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge0xvY2FsZX0gZnJvbSAnLi4vdHlwZXMvY29udGVudC50eXBlcy5qcyc7XG5cbmV4cG9ydCBjb25zdCBkYkkxOG4gPSBhc3luYyAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGtleTogc3RyaW5nLFxuICBmYWxsYmFja0NvbnRlbnQ6IHN0cmluZyxcbiAgbG9jYWxlOiBMb2NhbGUgPSAnZW4nXG4pOiBQcm9taXNlPHN0cmluZz4gPT4gZ2V0Q29udGVudFdpdGhGYWxsYmFjayhjb250ZXh0LCBrZXksIGZhbGxiYWNrQ29udGVudCwgbG9jYWxlKTtcblxuZXhwb3J0IGNvbnN0IGRiSTE4bk11bHRpcGxlID0gYXN5bmMgKFxuICBjb250ZXh0OiBBcGlDb250ZXh0LFxuICB0cmFuc2xhdGlvbnM6IEFycmF5PHtcbiAgICBrZXk6IHN0cmluZztcbiAgICBmYWxsYmFjazogc3RyaW5nO1xuICAgIGxvY2FsZT86IExvY2FsZTtcbiAgfT5cbik6IFByb21pc2U8c3RyaW5nW10+ID0+IHtcbiAgY29uc3QgcHJvbWlzZXMgPSB0cmFuc2xhdGlvbnMubWFwKCh7a2V5LCBmYWxsYmFjaywgbG9jYWxlID0gJ2VuJ30pID0+XG4gICAgZ2V0Q29udGVudFdpdGhGYWxsYmFjayhjb250ZXh0LCBrZXksIGZhbGxiYWNrLCBsb2NhbGUpXG4gICk7XG5cbiAgcmV0dXJuIFByb21pc2UuYWxsKHByb21pc2VzKTtcbn07XG5cbmV4cG9ydCBjb25zdCBkYkkxOG5XaXRoSW50ZXJwb2xhdGlvbiA9IGFzeW5jIChcbiAgY29udGV4dDogQXBpQ29udGV4dCxcbiAga2V5OiBzdHJpbmcsXG4gIGZhbGxiYWNrQ29udGVudDogc3RyaW5nLFxuICBpbnRlcnBvbGF0aW9uOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge30sXG4gIGxvY2FsZTogTG9jYWxlID0gJ2VuJ1xuKTogUHJvbWlzZTxzdHJpbmc+ID0+IHtcbiAgY29uc3QgY29udGVudCA9IGF3YWl0IGdldENvbnRlbnRXaXRoRmFsbGJhY2soY29udGV4dCwga2V5LCBmYWxsYmFja0NvbnRlbnQsIGxvY2FsZSk7XG5cbiAgcmV0dXJuIGNvbnRlbnQucmVwbGFjZSgvXFx7XFx7KFxcdyspXFx9XFx9L2csIChtYXRjaCwga2V5KSA9PlxuICAgIChpbnRlcnBvbGF0aW9uW2tleV0gIT09IHVuZGVmaW5lZCA/IFN0cmluZyhpbnRlcnBvbGF0aW9uW2tleV0pIDogbWF0Y2gpXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZGJJMThuQmF0Y2ggPSBhc3luYyAoXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGtleXM6IHN0cmluZ1tdLFxuICBmYWxsYmFja01hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgbG9jYWxlOiBMb2NhbGUgPSAnZW4nXG4pOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+ID0+IHtcbiAgY29uc3QgdHJhbnNsYXRpb25zID0ga2V5cy5tYXAoKGtleSkgPT4gKHtcbiAgICBrZXksXG4gICAgZmFsbGJhY2s6IGZhbGxiYWNrTWFwW2tleV0gfHwga2V5LFxuICAgIGxvY2FsZVxuICB9KSk7XG5cbiAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IGRiSTE4bk11bHRpcGxlKGNvbnRleHQsIHRyYW5zbGF0aW9ucyk7XG5cbiAgY29uc3QgcmVzdWx0TWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG4gIGtleXMuZm9yRWFjaCgoa2V5LCBpbmRleCkgPT4ge1xuICAgIHJlc3VsdE1hcFtrZXldID0gcmVzdWx0c1tpbmRleF07XG4gIH0pO1xuXG4gIHJldHVybiByZXN1bHRNYXA7XG59OyJdLAogICJtYXBwaW5ncyI6ICJBQUlBLE9BQVEsMEJBQUFBLE1BQTZCLHdCQUs5QixNQUFNQyxFQUFTLE1BQ3BCQyxFQUNBQyxFQUNBQyxFQUNBQyxFQUFpQixPQUNHTCxFQUF1QkUsRUFBU0MsRUFBS0MsRUFBaUJDLENBQU0sRUFFckVDLEVBQWlCLE1BQzVCSixFQUNBSyxJQUtzQixDQUN0QixNQUFNQyxFQUFXRCxFQUFhLElBQUksQ0FBQyxDQUFDLElBQUFKLEVBQUssU0FBQU0sRUFBVSxPQUFBSixFQUFTLElBQUksSUFDOURMLEVBQXVCRSxFQUFTQyxFQUFLTSxFQUFVSixDQUFNLENBQ3ZELEVBRUEsT0FBTyxRQUFRLElBQUlHLENBQVEsQ0FDN0IsRUFFYUUsRUFBMEIsTUFDckNSLEVBQ0FDLEVBQ0FDLEVBQ0FPLEVBQXFDLENBQUMsRUFDdENOLEVBQWlCLFFBRUQsTUFBTUwsRUFBdUJFLEVBQVNDLEVBQUtDLEVBQWlCQyxDQUFNLEdBRW5FLFFBQVEsaUJBQWtCLENBQUNPLEVBQU9ULElBQzlDUSxFQUFjUixDQUFHLElBQU0sT0FBWSxPQUFPUSxFQUFjUixDQUFHLENBQUMsRUFBSVMsQ0FDbkUsRUFHV0MsRUFBYyxNQUN6QlgsRUFDQVksRUFDQUMsRUFDQVYsRUFBaUIsT0FDbUIsQ0FDcEMsTUFBTUUsRUFBZU8sRUFBSyxJQUFLWCxJQUFTLENBQ3RDLElBQUFBLEVBQ0EsU0FBVVksRUFBWVosQ0FBRyxHQUFLQSxFQUM5QixPQUFBRSxDQUNGLEVBQUUsRUFFSVcsRUFBVSxNQUFNVixFQUFlSixFQUFTSyxDQUFZLEVBRXBEVSxFQUFvQyxDQUFDLEVBQzNDLE9BQUFILEVBQUssUUFBUSxDQUFDWCxFQUFLZSxJQUFVLENBQzNCRCxFQUFVZCxDQUFHLEVBQUlhLEVBQVFFLENBQUssQ0FDaEMsQ0FBQyxFQUVNRCxDQUNUIiwKICAibmFtZXMiOiBbImdldENvbnRlbnRXaXRoRmFsbGJhY2siLCAiZGJJMThuIiwgImNvbnRleHQiLCAia2V5IiwgImZhbGxiYWNrQ29udGVudCIsICJsb2NhbGUiLCAiZGJJMThuTXVsdGlwbGUiLCAidHJhbnNsYXRpb25zIiwgInByb21pc2VzIiwgImZhbGxiYWNrIiwgImRiSTE4bldpdGhJbnRlcnBvbGF0aW9uIiwgImludGVycG9sYXRpb24iLCAibWF0Y2giLCAiZGJJMThuQmF0Y2giLCAia2V5cyIsICJmYWxsYmFja01hcCIsICJyZXN1bHRzIiwgInJlc3VsdE1hcCIsICJpbmRleCJdCn0K
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Copyright (c) 2025-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ */
5
+ export declare const translateText: (text: string, targetLanguage: string, sourceLanguage?: string) => Promise<string>;
6
+ export declare const translateBatch: (texts: string[], targetLanguage: string, sourceLanguage?: string) => Promise<string[]>;
@@ -0,0 +1,2 @@
1
+ import{Config as i}from"../config.js";const c=async(o,a,n="en")=>{try{const t=i.get("google.key");if(!t)throw new Error("Google Translate API key not configured");const s=`https://translation.googleapis.com/language/translate/v2?key=${t}`,r=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({q:o,target:a,source:n,format:"text"})});if(!r.ok)throw new Error(`Google Translate API error: ${r.status} ${r.statusText}`);const e=await r.json();if(!e.data?.translations?.[0]?.translatedText)throw new Error("Invalid response from Google Translate API");return e.data.translations[0].translatedText}catch(t){throw t}},d=async(o,a,n="en")=>{try{const t=i.get("google.key");if(!t)throw new Error("Google Translate API key not configured");const s=`https://translation.googleapis.com/language/translate/v2?key=${t}`,r=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({q:o,target:a,source:n,format:"text"})});if(!r.ok)throw new Error(`Google Translate API error: ${r.status} ${r.statusText}`);const e=await r.json();if(!e.data?.translations)throw new Error("Invalid response from Google Translate API");return e.data.translations.map(l=>l.translatedText)}catch(t){throw t}};export{d as translateBatch,c as translateText};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2dvb2dsZVRyYW5zbGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjUtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cblxuaW1wb3J0IHtDb25maWd9IGZyb20gJy4uL2NvbmZpZy5qcyc7XG5cbmludGVyZmFjZSBHb29nbGVUcmFuc2xhdGVSZXNwb25zZSB7XG4gIGRhdGE6IHtcbiAgICB0cmFuc2xhdGlvbnM6IEFycmF5PHtcbiAgICAgIHRyYW5zbGF0ZWRUZXh0OiBzdHJpbmc7XG4gICAgICBkZXRlY3RlZFNvdXJjZUxhbmd1YWdlPzogc3RyaW5nO1xuICAgIH0+O1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlVGV4dCA9IGFzeW5jIChcbiAgdGV4dDogc3RyaW5nLFxuICB0YXJnZXRMYW5ndWFnZTogc3RyaW5nLFxuICBzb3VyY2VMYW5ndWFnZTogc3RyaW5nID0gJ2VuJ1xuKTogUHJvbWlzZTxzdHJpbmc+ID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBhcGlLZXkgPSBDb25maWcuZ2V0KCdnb29nbGUua2V5Jyk7XG4gICAgaWYoIWFwaUtleSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdHb29nbGUgVHJhbnNsYXRlIEFQSSBrZXkgbm90IGNvbmZpZ3VyZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCB1cmwgPSBgaHR0cHM6Ly90cmFuc2xhdGlvbi5nb29nbGVhcGlzLmNvbS9sYW5ndWFnZS90cmFuc2xhdGUvdjI/a2V5PSR7YXBpS2V5fWA7XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHVybCwge1xuICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgIH0sXG4gICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHE6IHRleHQsXG4gICAgICAgIHRhcmdldDogdGFyZ2V0TGFuZ3VhZ2UsXG4gICAgICAgIHNvdXJjZTogc291cmNlTGFuZ3VhZ2UsXG4gICAgICAgIGZvcm1hdDogJ3RleHQnXG4gICAgICB9KVxuICAgIH0pO1xuXG4gICAgaWYoIXJlc3BvbnNlLm9rKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEdvb2dsZSBUcmFuc2xhdGUgQVBJIGVycm9yOiAke3Jlc3BvbnNlLnN0YXR1c30gJHtyZXNwb25zZS5zdGF0dXNUZXh0fWApO1xuICAgIH1cblxuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCkgYXMgR29vZ2xlVHJhbnNsYXRlUmVzcG9uc2U7XG5cbiAgICBpZighZGF0YS5kYXRhPy50cmFuc2xhdGlvbnM/LlswXT8udHJhbnNsYXRlZFRleHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCByZXNwb25zZSBmcm9tIEdvb2dsZSBUcmFuc2xhdGUgQVBJJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRhdGEuZGF0YS50cmFuc2xhdGlvbnNbMF0udHJhbnNsYXRlZFRleHQ7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKCdUcmFuc2xhdGlvbiBlcnJvcjonLCBlcnJvcik7XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCB0cmFuc2xhdGVCYXRjaCA9IGFzeW5jIChcbiAgdGV4dHM6IHN0cmluZ1tdLFxuICB0YXJnZXRMYW5ndWFnZTogc3RyaW5nLFxuICBzb3VyY2VMYW5ndWFnZTogc3RyaW5nID0gJ2VuJ1xuKTogUHJvbWlzZTxzdHJpbmdbXT4gPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IGFwaUtleSA9IENvbmZpZy5nZXQoJ2dvb2dsZS5rZXknKTtcbiAgICBpZighYXBpS2V5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0dvb2dsZSBUcmFuc2xhdGUgQVBJIGtleSBub3QgY29uZmlndXJlZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHVybCA9IGBodHRwczovL3RyYW5zbGF0aW9uLmdvb2dsZWFwaXMuY29tL2xhbmd1YWdlL3RyYW5zbGF0ZS92Mj9rZXk9JHthcGlLZXl9YDtcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsLCB7XG4gICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgcTogdGV4dHMsXG4gICAgICAgIHRhcmdldDogdGFyZ2V0TGFuZ3VhZ2UsXG4gICAgICAgIHNvdXJjZTogc291cmNlTGFuZ3VhZ2UsXG4gICAgICAgIGZvcm1hdDogJ3RleHQnXG4gICAgICB9KVxuICAgIH0pO1xuXG4gICAgaWYoIXJlc3BvbnNlLm9rKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEdvb2dsZSBUcmFuc2xhdGUgQVBJIGVycm9yOiAke3Jlc3BvbnNlLnN0YXR1c30gJHtyZXNwb25zZS5zdGF0dXNUZXh0fWApO1xuICAgIH1cblxuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCkgYXMgR29vZ2xlVHJhbnNsYXRlUmVzcG9uc2U7XG5cbiAgICBpZighZGF0YS5kYXRhPy50cmFuc2xhdGlvbnMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCByZXNwb25zZSBmcm9tIEdvb2dsZSBUcmFuc2xhdGUgQVBJJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRhdGEuZGF0YS50cmFuc2xhdGlvbnMubWFwKCh0KSA9PiB0LnRyYW5zbGF0ZWRUZXh0KTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoJ0JhdGNoIHRyYW5zbGF0aW9uIGVycm9yOicsIGVycm9yKTtcbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTsiXSwKICAibWFwcGluZ3MiOiAiQUFLQSxPQUFRLFVBQUFBLE1BQWEsZUFXZCxNQUFNQyxFQUFnQixNQUMzQkMsRUFDQUMsRUFDQUMsRUFBeUIsT0FDTCxDQUNwQixHQUFJLENBQ0YsTUFBTUMsRUFBU0wsRUFBTyxJQUFJLFlBQVksRUFDdEMsR0FBRyxDQUFDSyxFQUNGLE1BQU0sSUFBSSxNQUFNLHlDQUF5QyxFQUczRCxNQUFNQyxFQUFNLGdFQUFnRUQsQ0FBTSxHQUU1RUUsRUFBVyxNQUFNLE1BQU1ELEVBQUssQ0FDaEMsT0FBUSxPQUNSLFFBQVMsQ0FDUCxlQUFnQixrQkFDbEIsRUFDQSxLQUFNLEtBQUssVUFBVSxDQUNuQixFQUFHSixFQUNILE9BQVFDLEVBQ1IsT0FBUUMsRUFDUixPQUFRLE1BQ1YsQ0FBQyxDQUNILENBQUMsRUFFRCxHQUFHLENBQUNHLEVBQVMsR0FDWCxNQUFNLElBQUksTUFBTSwrQkFBK0JBLEVBQVMsTUFBTSxJQUFJQSxFQUFTLFVBQVUsRUFBRSxFQUd6RixNQUFNQyxFQUFPLE1BQU1ELEVBQVMsS0FBSyxFQUVqQyxHQUFHLENBQUNDLEVBQUssTUFBTSxlQUFlLENBQUMsR0FBRyxlQUNoQyxNQUFNLElBQUksTUFBTSw0Q0FBNEMsRUFHOUQsT0FBT0EsRUFBSyxLQUFLLGFBQWEsQ0FBQyxFQUFFLGNBQ25DLE9BQVFDLEVBQU8sQ0FFYixNQUFNQSxDQUNSLENBQ0YsRUFFYUMsRUFBaUIsTUFDNUJDLEVBQ0FSLEVBQ0FDLEVBQXlCLE9BQ0gsQ0FDdEIsR0FBSSxDQUNGLE1BQU1DLEVBQVNMLEVBQU8sSUFBSSxZQUFZLEVBQ3RDLEdBQUcsQ0FBQ0ssRUFDRixNQUFNLElBQUksTUFBTSx5Q0FBeUMsRUFHM0QsTUFBTUMsRUFBTSxnRUFBZ0VELENBQU0sR0FFNUVFLEVBQVcsTUFBTSxNQUFNRCxFQUFLLENBQ2hDLE9BQVEsT0FDUixRQUFTLENBQ1AsZUFBZ0Isa0JBQ2xCLEVBQ0EsS0FBTSxLQUFLLFVBQVUsQ0FDbkIsRUFBR0ssRUFDSCxPQUFRUixFQUNSLE9BQVFDLEVBQ1IsT0FBUSxNQUNWLENBQUMsQ0FDSCxDQUFDLEVBRUQsR0FBRyxDQUFDRyxFQUFTLEdBQ1gsTUFBTSxJQUFJLE1BQU0sK0JBQStCQSxFQUFTLE1BQU0sSUFBSUEsRUFBUyxVQUFVLEVBQUUsRUFHekYsTUFBTUMsRUFBTyxNQUFNRCxFQUFTLEtBQUssRUFFakMsR0FBRyxDQUFDQyxFQUFLLE1BQU0sYUFDYixNQUFNLElBQUksTUFBTSw0Q0FBNEMsRUFHOUQsT0FBT0EsRUFBSyxLQUFLLGFBQWEsSUFBS0ksR0FBTUEsRUFBRSxjQUFjLENBQzNELE9BQVFILEVBQU8sQ0FFYixNQUFNQSxDQUNSLENBQ0YiLAogICJuYW1lcyI6IFsiQ29uZmlnIiwgInRyYW5zbGF0ZVRleHQiLCAidGV4dCIsICJ0YXJnZXRMYW5ndWFnZSIsICJzb3VyY2VMYW5ndWFnZSIsICJhcGlLZXkiLCAidXJsIiwgInJlc3BvbnNlIiwgImRhdGEiLCAiZXJyb3IiLCAidHJhbnNsYXRlQmF0Y2giLCAidGV4dHMiLCAidCJdCn0K
@@ -0,0 +1,10 @@
1
+ import type { ApiContext } from '../types/auth.types.js';
2
+ export declare const getRequestedFields: (info: any) => string[];
3
+ export declare const enhanceContextWithFields: (baseContext: ApiContext) => (root: any, args: any, context: any, info: any) => {
4
+ fields: string[];
5
+ config?: import("../config.js").AppConfig;
6
+ context?: any;
7
+ databaseName?: string;
8
+ languageContext?: import("./languageDetection.js").LanguageDetectionContext;
9
+ session?: import("./sessionUtils.js").Session;
10
+ };
@@ -0,0 +1,2 @@
1
+ import{getGqlFields as e}from"./arangodbUtils.js";const p=t=>e(t),x=t=>(o,s,r,n)=>({...t,fields:e(n)});export{x as enhanceContextWithFields,p as getRequestedFields};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2dyYXBocWxVdGlscy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHtnZXRHcWxGaWVsZHN9IGZyb20gJy4vYXJhbmdvZGJVdGlscy5qcyc7XG5cbmltcG9ydCB0eXBlIHtBcGlDb250ZXh0fSBmcm9tICcuLi90eXBlcy9hdXRoLnR5cGVzLmpzJztcblxuZXhwb3J0IGNvbnN0IGdldFJlcXVlc3RlZEZpZWxkcyA9IChpbmZvOiBhbnkpOiBzdHJpbmdbXSA9PiBnZXRHcWxGaWVsZHMoaW5mbyk7XG5cbmV4cG9ydCBjb25zdCBlbmhhbmNlQ29udGV4dFdpdGhGaWVsZHMgPSAoYmFzZUNvbnRleHQ6IEFwaUNvbnRleHQpID0+IChyb290OiBhbnksIGFyZ3M6IGFueSwgY29udGV4dDogYW55LCBpbmZvOiBhbnkpID0+IHtcbiAgY29uc3QgZW5oYW5jZWRDb250ZXh0ID0ge1xuICAgIC4uLmJhc2VDb250ZXh0LFxuICAgIGZpZWxkczogZ2V0R3FsRmllbGRzKGluZm8pXG4gIH07XG5cbiAgcmV0dXJuIGVuaGFuY2VkQ29udGV4dDtcbn07Il0sCiAgIm1hcHBpbmdzIjogIkFBQUEsT0FBUSxnQkFBQUEsTUFBbUIscUJBSXBCLE1BQU1DLEVBQXNCQyxHQUF3QkYsRUFBYUUsQ0FBSSxFQUUvREMsRUFBNEJDLEdBQTRCLENBQUNDLEVBQVdDLEVBQVdDLEVBQWNMLEtBQ2hGLENBQ3RCLEdBQUdFLEVBQ0gsT0FBUUosRUFBYUUsQ0FBSSxDQUMzQiIsCiAgIm5hbWVzIjogWyJnZXRHcWxGaWVsZHMiLCAiZ2V0UmVxdWVzdGVkRmllbGRzIiwgImluZm8iLCAiZW5oYW5jZUNvbnRleHRXaXRoRmllbGRzIiwgImJhc2VDb250ZXh0IiwgInJvb3QiLCAiYXJncyIsICJjb250ZXh0Il0KfQo=
@@ -1,5 +1,18 @@
1
- export * from './adapterUtils';
2
- export * from './analyticsUtils';
3
- export * from './arangodbUtils';
4
- export * from './auth';
5
- export * from './session';
1
+ /**
2
+ * Copyright (c) 2019-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ */
5
+ export * from './adapterUtils.js';
6
+ export * from './analyticsUtils.js';
7
+ export * from './arangodbUtils.js';
8
+ export * from './authUtils.js';
9
+ export * from './contextUtils.js';
10
+ export * from './dbI18n.js';
11
+ export * from './googleTranslate.js';
12
+ export * from './graphqlUtils.js';
13
+ export * from './languageDetection.js';
14
+ export * from './localeUtils.js';
15
+ export * from './middlewareUtils.js';
16
+ export * from './sessionUtils.js';
17
+ export * from './templateUtils.js';
18
+ export * from './translationQueue.js';
@@ -1,30 +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 __copyProps = (to, from, except, desc) => {
6
- if (from && typeof from === "object" || typeof from === "function") {
7
- for (let key of __getOwnPropNames(from))
8
- if (!__hasOwnProp.call(to, key) && key !== except)
9
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
- }
11
- return to;
12
- };
13
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
14
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
- var utils_exports = {};
16
- module.exports = __toCommonJS(utils_exports);
17
- __reExport(utils_exports, require("./adapterUtils"), module.exports);
18
- __reExport(utils_exports, require("./analyticsUtils"), module.exports);
19
- __reExport(utils_exports, require("./arangodbUtils"), module.exports);
20
- __reExport(utils_exports, require("./auth"), module.exports);
21
- __reExport(utils_exports, require("./session"), module.exports);
22
- // Annotate the CommonJS export names for ESM import in node:
23
- 0 && (module.exports = {
24
- ...require("./adapterUtils"),
25
- ...require("./analyticsUtils"),
26
- ...require("./arangodbUtils"),
27
- ...require("./auth"),
28
- ...require("./session")
29
- });
30
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJcbi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE5LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5leHBvcnQgKiBmcm9tICcuL2FkYXB0ZXJVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2FuYWx5dGljc1V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXJhbmdvZGJVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXNzaW9uJzsiXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFLQSwwQkFBYywyQkFMZDtBQU1BLDBCQUFjLDZCQU5kO0FBT0EsMEJBQWMsNEJBUGQ7QUFRQSwwQkFBYyxtQkFSZDtBQVNBLDBCQUFjLHNCQVRkOyIsCiAgIm5hbWVzIjogW10KfQo=
1
+ export*from"./adapterUtils.js";export*from"./analyticsUtils.js";export*from"./arangodbUtils.js";export*from"./authUtils.js";export*from"./contextUtils.js";export*from"./dbI18n.js";export*from"./googleTranslate.js";export*from"./graphqlUtils.js";export*from"./languageDetection.js";export*from"./localeUtils.js";export*from"./middlewareUtils.js";export*from"./sessionUtils.js";export*from"./templateUtils.js";export*from"./translationQueue.js";
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9hZGFwdGVyVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9hbmFseXRpY3NVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2FyYW5nb2RiVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0VXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9kYkkxOG4uanMnO1xuZXhwb3J0ICogZnJvbSAnLi9nb29nbGVUcmFuc2xhdGUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9ncmFwaHFsVXRpbHMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYW5ndWFnZURldGVjdGlvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsZVV0aWxzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vbWlkZGxld2FyZVV0aWxzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2Vzc2lvblV0aWxzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdGVtcGxhdGVVdGlscy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3RyYW5zbGF0aW9uUXVldWUuanMnO1xuXG4iXSwKICAibWFwcGluZ3MiOiAiQUFJQSxXQUFjLG9CQUNkLFdBQWMsc0JBQ2QsV0FBYyxxQkFDZCxXQUFjLGlCQUNkLFdBQWMsb0JBQ2QsV0FBYyxjQUNkLFdBQWMsdUJBQ2QsV0FBYyxvQkFDZCxXQUFjLHlCQUNkLFdBQWMsbUJBQ2QsV0FBYyx1QkFDZCxXQUFjLG9CQUNkLFdBQWMscUJBQ2QsV0FBYyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,8 @@
1
+ import type { Locale } from '../types/content.types.js';
2
+ export interface LanguageDetectionContext {
3
+ acceptLanguage?: string;
4
+ ipCountry?: string;
5
+ phoneCountryCode?: string;
6
+ userPreference?: Locale;
7
+ }
8
+ export declare const detectLanguage: (context: LanguageDetectionContext) => Locale;
@@ -0,0 +1,2 @@
1
+ const r={AR:"es",AU:"en",BE:"fr",BO:"es",BR:"pt",CA:"en",CL:"es",CO:"es",CR:"es",CU:"es",CV:"pt",DO:"es",EC:"es",ES:"es",FR:"fr",GB:"en",GQ:"es",GT:"es",GW:"pt",HN:"es",IT:"it",LI:"de",LU:"fr",MC:"fr",MX:"es",MZ:"pt",NI:"es",PA:"es",PE:"es",PY:"es",SM:"it",SV:"es",TL:"pt",US:"en",VA:"it",VE:"es"},o={1:"en",32:"fr",33:"fr",34:"es",39:"it",41:"fr",43:"de",49:"de",51:"es",52:"es",53:"es",54:"es",55:"pt",56:"es",57:"es",58:"es",240:"es",244:"pt",245:"pt",258:"pt",351:"pt",352:"fr",377:"fr",378:"it",379:"it",423:"de",502:"es",503:"es",504:"es",505:"es",506:"es",507:"es",591:"es",593:"es",595:"es",670:"pt",1809:"es"},c=e=>{if(e.userPreference)return e.userPreference;if(e.phoneCountryCode){const s=o[e.phoneCountryCode];if(s)return s}if(e.acceptLanguage){const s=a(e.acceptLanguage);if(s)return s}if(e.ipCountry){const s=r[e.ipCountry];if(s)return s}return"en"},a=e=>{const s=e.split(",").map(t=>t.trim().split(";")[0]).filter(t=>t.length>=2);for(const t of s){const n=t.substring(0,2);if(["en","es","fr","de","pt","it"].includes(n))return n}return null};export{c as detectLanguage};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2xhbmd1YWdlRGV0ZWN0aW9uLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgdHlwZSB7TG9jYWxlfSBmcm9tICcuLi90eXBlcy9jb250ZW50LnR5cGVzLmpzJztcblxuZXhwb3J0IGludGVyZmFjZSBMYW5ndWFnZURldGVjdGlvbkNvbnRleHQge1xuICBhY2NlcHRMYW5ndWFnZT86IHN0cmluZztcbiAgaXBDb3VudHJ5Pzogc3RyaW5nO1xuICBwaG9uZUNvdW50cnlDb2RlPzogc3RyaW5nO1xuICB1c2VyUHJlZmVyZW5jZT86IExvY2FsZTtcbn1cblxuY29uc3QgY291bnRyeVRvTG9jYWxlTWFwOiBSZWNvcmQ8c3RyaW5nLCBMb2NhbGU+ID0ge1xuICBBUjogJ2VzJyxcbiAgQVU6ICdlbicsXG4gIEJFOiAnZnInLFxuICBCTzogJ2VzJyxcbiAgQlI6ICdwdCcsXG4gIENBOiAnZW4nLFxuICBDTDogJ2VzJyxcbiAgQ086ICdlcycsXG4gIENSOiAnZXMnLFxuICBDVTogJ2VzJyxcbiAgQ1Y6ICdwdCcsXG4gIERPOiAnZXMnLFxuICBFQzogJ2VzJyxcbiAgRVM6ICdlcycsXG4gIEZSOiAnZnInLFxuICBHQjogJ2VuJyxcbiAgR1E6ICdlcycsXG4gIEdUOiAnZXMnLFxuICBHVzogJ3B0JyxcbiAgSE46ICdlcycsXG4gIElUOiAnaXQnLFxuICBMSTogJ2RlJyxcbiAgTFU6ICdmcicsXG4gIE1DOiAnZnInLFxuICBNWDogJ2VzJyxcbiAgTVo6ICdwdCcsXG4gIE5JOiAnZXMnLFxuICBQQTogJ2VzJyxcbiAgUEU6ICdlcycsXG4gIFBZOiAnZXMnLFxuICBTTTogJ2l0JyxcbiAgU1Y6ICdlcycsXG4gIFRMOiAncHQnLFxuICBVUzogJ2VuJyxcbiAgVkE6ICdpdCcsXG4gIFZFOiAnZXMnXG59O1xuXG5jb25zdCBwaG9uZUNvZGVUb0xvY2FsZU1hcDogUmVjb3JkPHN0cmluZywgTG9jYWxlPiA9IHtcbiAgMTogJ2VuJyxcbiAgMzI6ICdmcicsXG4gIDMzOiAnZnInLFxuICAzNDogJ2VzJyxcbiAgMzk6ICdpdCcsXG4gIDQxOiAnZnInLFxuICA0MzogJ2RlJyxcbiAgNDk6ICdkZScsXG4gIDUxOiAnZXMnLFxuICA1MjogJ2VzJyxcbiAgNTM6ICdlcycsXG4gIDU0OiAnZXMnLFxuICA1NTogJ3B0JyxcbiAgNTY6ICdlcycsXG4gIDU3OiAnZXMnLFxuICA1ODogJ2VzJyxcbiAgMjQwOiAnZXMnLFxuICAyNDQ6ICdwdCcsXG4gIDI0NTogJ3B0JyxcbiAgMjU4OiAncHQnLFxuICAzNTE6ICdwdCcsXG4gIDM1MjogJ2ZyJyxcbiAgMzc3OiAnZnInLFxuICAzNzg6ICdpdCcsXG4gIDM3OTogJ2l0JyxcbiAgNDIzOiAnZGUnLFxuICA1MDI6ICdlcycsXG4gIDUwMzogJ2VzJyxcbiAgNTA0OiAnZXMnLFxuICA1MDU6ICdlcycsXG4gIDUwNjogJ2VzJyxcbiAgNTA3OiAnZXMnLFxuICA1OTE6ICdlcycsXG4gIDU5MzogJ2VzJyxcbiAgNTk1OiAnZXMnLFxuICA2NzA6ICdwdCcsXG4gIDE4MDk6ICdlcydcbn07XG5cbmV4cG9ydCBjb25zdCBkZXRlY3RMYW5ndWFnZSA9IChjb250ZXh0OiBMYW5ndWFnZURldGVjdGlvbkNvbnRleHQpOiBMb2NhbGUgPT4ge1xuICBpZihjb250ZXh0LnVzZXJQcmVmZXJlbmNlKSB7XG4gICAgcmV0dXJuIGNvbnRleHQudXNlclByZWZlcmVuY2U7XG4gIH1cblxuICBpZihjb250ZXh0LnBob25lQ291bnRyeUNvZGUpIHtcbiAgICBjb25zdCBsb2NhbGUgPSBwaG9uZUNvZGVUb0xvY2FsZU1hcFtjb250ZXh0LnBob25lQ291bnRyeUNvZGVdO1xuICAgIGlmKGxvY2FsZSkge1xuICAgICAgcmV0dXJuIGxvY2FsZTtcbiAgICB9XG4gIH1cblxuICBpZihjb250ZXh0LmFjY2VwdExhbmd1YWdlKSB7XG4gICAgY29uc3QgbG9jYWxlID0gcGFyc2VBY2NlcHRMYW5ndWFnZShjb250ZXh0LmFjY2VwdExhbmd1YWdlKTtcbiAgICBpZihsb2NhbGUpIHtcbiAgICAgIHJldHVybiBsb2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaWYoY29udGV4dC5pcENvdW50cnkpIHtcbiAgICBjb25zdCBsb2NhbGUgPSBjb3VudHJ5VG9Mb2NhbGVNYXBbY29udGV4dC5pcENvdW50cnldO1xuICAgIGlmKGxvY2FsZSkge1xuICAgICAgcmV0dXJuIGxvY2FsZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gJ2VuJztcbn07XG5cbmNvbnN0IHBhcnNlQWNjZXB0TGFuZ3VhZ2UgPSAoYWNjZXB0TGFuZ3VhZ2U6IHN0cmluZyk6IExvY2FsZSB8IG51bGwgPT4ge1xuICBjb25zdCBsYW5ndWFnZXMgPSBhY2NlcHRMYW5ndWFnZVxuICAgIC5zcGxpdCgnLCcpXG4gICAgLm1hcCgobGFuZykgPT4gbGFuZy50cmltKCkuc3BsaXQoJzsnKVswXSlcbiAgICAuZmlsdGVyKChsYW5nKSA9PiBsYW5nLmxlbmd0aCA+PSAyKTtcblxuICBmb3IoY29uc3QgbGFuZyBvZiBsYW5ndWFnZXMpIHtcbiAgICBjb25zdCBsb2NhbGUgPSBsYW5nLnN1YnN0cmluZygwLCAyKSBhcyBMb2NhbGU7XG4gICAgaWYoWydlbicsICdlcycsICdmcicsICdkZScsICdwdCcsICdpdCddLmluY2x1ZGVzKGxvY2FsZSkpIHtcbiAgICAgIHJldHVybiBsb2NhbGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59OyJdLAogICJtYXBwaW5ncyI6ICJBQVNBLE1BQU1BLEVBQTZDLENBQ2pELEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxJQUNOLEVBRU1DLEVBQStDLENBQ25ELEVBQUcsS0FDSCxHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixHQUFJLEtBQ0osR0FBSSxLQUNKLEdBQUksS0FDSixJQUFLLEtBQ0wsSUFBSyxLQUNMLElBQUssS0FDTCxJQUFLLEtBQ0wsSUFBSyxLQUNMLElBQUssS0FDTCxJQUFLLEtBQ0wsSUFBSyxLQUNMLElBQUssS0FDTCxJQUFLLEtBQ0wsSUFBSyxLQUNMLElBQUssS0FDTCxJQUFLLEtBQ0wsSUFBSyxLQUNMLElBQUssS0FDTCxJQUFLLEtBQ0wsSUFBSyxLQUNMLElBQUssS0FDTCxJQUFLLEtBQ0wsSUFBSyxLQUNMLEtBQU0sSUFDUixFQUVhQyxFQUFrQkMsR0FBOEMsQ0FDM0UsR0FBR0EsRUFBUSxlQUNULE9BQU9BLEVBQVEsZUFHakIsR0FBR0EsRUFBUSxpQkFBa0IsQ0FDM0IsTUFBTUMsRUFBU0gsRUFBcUJFLEVBQVEsZ0JBQWdCLEVBQzVELEdBQUdDLEVBQ0QsT0FBT0EsQ0FFWCxDQUVBLEdBQUdELEVBQVEsZUFBZ0IsQ0FDekIsTUFBTUMsRUFBU0MsRUFBb0JGLEVBQVEsY0FBYyxFQUN6RCxHQUFHQyxFQUNELE9BQU9BLENBRVgsQ0FFQSxHQUFHRCxFQUFRLFVBQVcsQ0FDcEIsTUFBTUMsRUFBU0osRUFBbUJHLEVBQVEsU0FBUyxFQUNuRCxHQUFHQyxFQUNELE9BQU9BLENBRVgsQ0FFQSxNQUFPLElBQ1QsRUFFTUMsRUFBdUJDLEdBQTBDLENBQ3JFLE1BQU1DLEVBQVlELEVBQ2YsTUFBTSxHQUFHLEVBQ1QsSUFBS0UsR0FBU0EsRUFBSyxLQUFLLEVBQUUsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQ3ZDLE9BQVFBLEdBQVNBLEVBQUssUUFBVSxDQUFDLEVBRXBDLFVBQVVBLEtBQVFELEVBQVcsQ0FDM0IsTUFBTUgsRUFBU0ksRUFBSyxVQUFVLEVBQUcsQ0FBQyxFQUNsQyxHQUFHLENBQUMsS0FBTSxLQUFNLEtBQU0sS0FBTSxLQUFNLElBQUksRUFBRSxTQUFTSixDQUFNLEVBQ3JELE9BQU9BLENBRVgsQ0FFQSxPQUFPLElBQ1QiLAogICJuYW1lcyI6IFsiY291bnRyeVRvTG9jYWxlTWFwIiwgInBob25lQ29kZVRvTG9jYWxlTWFwIiwgImRldGVjdExhbmd1YWdlIiwgImNvbnRleHQiLCAibG9jYWxlIiwgInBhcnNlQWNjZXB0TGFuZ3VhZ2UiLCAiYWNjZXB0TGFuZ3VhZ2UiLCAibGFuZ3VhZ2VzIiwgImxhbmciXQp9Cg==
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) 2025-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ */
5
+ import type { Locale } from '../types/content.types.js';
6
+ export declare const extractLanguage: (locale: string) => string;
7
+ export declare const isRegionalLocale: (locale: string) => boolean;
8
+ export declare const getFallbackChain: (locale: string) => string[];
9
+ export declare const getPrimaryLanguages: () => string[];
10
+ export declare const isValidLocale: (locale: string) => locale is Locale;
11
+ export declare const getSupportedLocales: () => Locale[];
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Copyright (c) 2025-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ */
5
+ export declare const runLocaleExamples: () => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import{extractLanguage as a,getPrimaryLanguages as r,getSupportedLocales as i,isRegionalLocale as u}from"./localeUtils.js";const L=async(e,o,l="en")=>{const n=a(o),s=a(l);return`[Translated: ${e}]`},p=async(e,o,l)=>({key:e,locale:l,content:o}),t=async(e,o)=>{if(u(o)){const l=a(o)}return`[Content for ${e} in ${o}]`},f=i(),y=r(),m=async()=>{const e="welcome_message",o="es-mx",l="en-us",n=a(o),s=a(l);if(n!==s){const c=await t(e,l),g=await L(c,n,s);await p(e,g,o)}},h=async()=>{await t("welcome_message","es-mx"),await m()};export{h as runLocaleExamples};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2xvY2FsZVV0aWxzLmV4YW1wbGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDI1LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5cbmltcG9ydCB7XG4gIGV4dHJhY3RMYW5ndWFnZSxcbiAgZ2V0RmFsbGJhY2tDaGFpbixcbiAgZ2V0UHJpbWFyeUxhbmd1YWdlcyxcbiAgZ2V0U3VwcG9ydGVkTG9jYWxlcyxcbiAgaXNSZWdpb25hbExvY2FsZSxcbiAgaXNWYWxpZExvY2FsZVxufSBmcm9tICcuL2xvY2FsZVV0aWxzLmpzJztcblxuLyoqXG4gKiBFeGFtcGxlOiBMb2NhbGUgVXRpbGl0aWVzIHdpdGggUmVnaW9uYWwgU3VwcG9ydFxuICpcbiAqIFRoaXMgZXhhbXBsZSBkZW1vbnN0cmF0ZXMgaG93IHRvIHVzZSB0aGUgbG9jYWxlIHV0aWxpdGllcyBmb3IgaGFuZGxpbmdcbiAqIHJlZ2lvbmFsIGxvY2FsZXMgKGUuZy4sIFwiZW4tdXNcIiwgXCJlcy1teFwiKSB3aXRoIGxhbmd1YWdlIGV4dHJhY3Rpb25cbiAqIGZvciB0cmFuc2xhdGlvbiBBUElzIHdoaWxlIG1haW50YWluaW5nIGZ1bGwgbG9jYWxlIHN1cHBvcnQgZm9yXG4gKiB0aW1lLCBjdXJyZW5jeSwgYW5kIG90aGVyIHJlZ2lvbmFsIGZvcm1hdHRpbmcuXG4gKi9cblxuLy8gRXhhbXBsZSAxOiBMYW5ndWFnZSBFeHRyYWN0aW9uIGZvciBUcmFuc2xhdGlvbiBBUElzXG5jb25zb2xlLmxvZygnPT09IExhbmd1YWdlIEV4dHJhY3Rpb24gRXhhbXBsZXMgPT09Jyk7XG5jb25zb2xlLmxvZyhleHRyYWN0TGFuZ3VhZ2UoJ2VuLXVzJykpOyAvLyAnZW4nXG5jb25zb2xlLmxvZyhleHRyYWN0TGFuZ3VhZ2UoJ2VzLW14JykpOyAvLyAnZXMnXG5jb25zb2xlLmxvZyhleHRyYWN0TGFuZ3VhZ2UoJ2ZyLWNhJykpOyAvLyAnZnInXG5jb25zb2xlLmxvZyhleHRyYWN0TGFuZ3VhZ2UoJ2VuJykpOyAvLyAnZW4nXG5cbi8vIEV4YW1wbGUgMjogUmVnaW9uYWwgTG9jYWxlIERldGVjdGlvblxuY29uc29sZS5sb2coJ1xcbj09PSBSZWdpb25hbCBMb2NhbGUgRGV0ZWN0aW9uID09PScpO1xuY29uc29sZS5sb2coaXNSZWdpb25hbExvY2FsZSgnZW4tdXMnKSk7IC8vIHRydWVcbmNvbnNvbGUubG9nKGlzUmVnaW9uYWxMb2NhbGUoJ2VzLW14JykpOyAvLyB0cnVlXG5jb25zb2xlLmxvZyhpc1JlZ2lvbmFsTG9jYWxlKCdlbicpKTsgLy8gZmFsc2VcbmNvbnNvbGUubG9nKGlzUmVnaW9uYWxMb2NhbGUoJ2ZyJykpOyAvLyBmYWxzZVxuXG4vLyBFeGFtcGxlIDM6IEZhbGxiYWNrIENoYWluIEdlbmVyYXRpb25cbmNvbnNvbGUubG9nKCdcXG49PT0gRmFsbGJhY2sgQ2hhaW4gRXhhbXBsZXMgPT09Jyk7XG5jb25zb2xlLmxvZyhnZXRGYWxsYmFja0NoYWluKCdlbi11cycpKTsgLy8gWydlbi11cycsICdlbiddXG5jb25zb2xlLmxvZyhnZXRGYWxsYmFja0NoYWluKCdlcy1teCcpKTsgLy8gWydlcy1teCcsICdlcyddXG5jb25zb2xlLmxvZyhnZXRGYWxsYmFja0NoYWluKCdmci1jYScpKTsgLy8gWydmci1jYScsICdmciddXG5jb25zb2xlLmxvZyhnZXRGYWxsYmFja0NoYWluKCdlbicpKTsgLy8gWydlbiddXG5cbi8vIEV4YW1wbGUgNDogVHJhbnNsYXRpb24gQVBJIEludGVncmF0aW9uXG5jb25zdCB0cmFuc2xhdGVUZXh0ID0gYXN5bmMgKHRleHQ6IHN0cmluZywgdGFyZ2V0TG9jYWxlOiBzdHJpbmcsIHNvdXJjZUxvY2FsZTogc3RyaW5nID0gJ2VuJykgPT4ge1xuICAvLyBFeHRyYWN0IGxhbmd1YWdlIGNvZGVzIGZvciB0cmFuc2xhdGlvbiBBUElcbiAgY29uc3QgdGFyZ2V0TGFuZ3VhZ2UgPSBleHRyYWN0TGFuZ3VhZ2UodGFyZ2V0TG9jYWxlKTtcbiAgY29uc3Qgc291cmNlTGFuZ3VhZ2UgPSBleHRyYWN0TGFuZ3VhZ2Uoc291cmNlTG9jYWxlKTtcblxuICBjb25zb2xlLmxvZyhgVHJhbnNsYXRpbmcgZnJvbSAke3NvdXJjZUxhbmd1YWdlfSB0byAke3RhcmdldExhbmd1YWdlfWApO1xuICBjb25zb2xlLmxvZyhgRnVsbCBsb2NhbGVzOiAke3NvdXJjZUxvY2FsZX0gXHUyMTkyICR7dGFyZ2V0TG9jYWxlfWApO1xuXG4gIC8vIENhbGwgdHJhbnNsYXRpb24gQVBJIHdpdGggbGFuZ3VhZ2UgY29kZXNcbiAgLy8gY29uc3QgcmVzdWx0ID0gYXdhaXQgZ29vZ2xlVHJhbnNsYXRlQVBJLnRyYW5zbGF0ZSh0ZXh0LCB0YXJnZXRMYW5ndWFnZSwgc291cmNlTGFuZ3VhZ2UpO1xuXG4gIHJldHVybiBgW1RyYW5zbGF0ZWQ6ICR7dGV4dH1dYDtcbn07XG5cbi8vIEV4YW1wbGUgNTogRGF0YWJhc2UgU3RvcmFnZSBTdHJhdGVneVxuY29uc3Qgc3RvcmVUcmFuc2xhdGlvbiA9IGFzeW5jIChrZXk6IHN0cmluZywgY29udGVudDogc3RyaW5nLCBsb2NhbGU6IHN0cmluZykgPT4ge1xuICAvLyBTdG9yZSB3aXRoIGZ1bGwgbG9jYWxlIGZvciByZWdpb25hbCBzdXBwb3J0XG4gIGNvbnNvbGUubG9nKGBTdG9yaW5nIHRyYW5zbGF0aW9uIGZvciBrZXkgXCIke2tleX1cIiB3aXRoIGxvY2FsZSBcIiR7bG9jYWxlfVwiYCk7XG5cbiAgLy8gRGF0YWJhc2UgcmVjb3JkIHdvdWxkIGluY2x1ZGU6XG4gIC8vIC0ga2V5OiBcIndlbGNvbWVfbWVzc2FnZVwiXG4gIC8vIC0gbG9jYWxlOiBcImVuLXVzXCIgKGZ1bGwgbG9jYWxlIHdpdGggcmVnaW9uKVxuICAvLyAtIGNvbnRlbnQ6IFwiV2VsY29tZSB0byBvdXIgVVMgc2l0ZSFcIlxuXG4gIHJldHVybiB7a2V5LCBsb2NhbGUsIGNvbnRlbnR9O1xufTtcblxuLy8gRXhhbXBsZSA2OiBDb250ZW50IFJldHJpZXZhbCB3aXRoIEZhbGxiYWNrXG5jb25zdCBnZXRDb250ZW50V2l0aEZhbGxiYWNrID0gYXN5bmMgKGtleTogc3RyaW5nLCByZXF1ZXN0ZWRMb2NhbGU6IHN0cmluZykgPT4ge1xuICBjb25zb2xlLmxvZyhgXFxuPT09IENvbnRlbnQgUmV0cmlldmFsIGZvciBcIiR7a2V5fVwiIHdpdGggbG9jYWxlIFwiJHtyZXF1ZXN0ZWRMb2NhbGV9XCIgPT09YCk7XG5cbiAgLy8gMS4gVHJ5IGV4YWN0IGxvY2FsZSBtYXRjaCBmaXJzdFxuICBjb25zb2xlLmxvZyhgMS4gVHJ5aW5nIGV4YWN0IG1hdGNoOiAke3JlcXVlc3RlZExvY2FsZX1gKTtcblxuICAvLyAyLiBJZiByZWdpb25hbCBsb2NhbGUgYW5kIG5vIGV4YWN0IG1hdGNoLCB0cnkgbGFuZ3VhZ2UgZmFsbGJhY2tcbiAgaWYoaXNSZWdpb25hbExvY2FsZShyZXF1ZXN0ZWRMb2NhbGUpKSB7XG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBleHRyYWN0TGFuZ3VhZ2UocmVxdWVzdGVkTG9jYWxlKTtcbiAgICBjb25zb2xlLmxvZyhgMi4gVHJ5aW5nIGxhbmd1YWdlIGZhbGxiYWNrOiAke2xhbmd1YWdlfWApO1xuXG4gICAgLy8gSWYgZm91bmQsIHN0b3JlIHRoZSByZWdpb25hbCB2ZXJzaW9uIGZvciBmdXR1cmUgdXNlXG4gICAgY29uc29sZS5sb2coYDMuIFN0b3JpbmcgZXh0cmFjdGVkIGNvbnRlbnQgZm9yICR7cmVxdWVzdGVkTG9jYWxlfWApO1xuICB9XG5cbiAgLy8gMy4gSWYgc3RpbGwgbm8gbWF0Y2gsIHVzZSBhcHAgZGVmYXVsdCBsb2NhbGVcbiAgY29uc29sZS5sb2coJzQuIEZhbGxpbmcgYmFjayB0byBhcHAgZGVmYXVsdCBsb2NhbGUnKTtcblxuICByZXR1cm4gYFtDb250ZW50IGZvciAke2tleX0gaW4gJHtyZXF1ZXN0ZWRMb2NhbGV9XWA7XG59O1xuXG4vLyBFeGFtcGxlIDc6IFZhbGlkYXRpb25cbmNvbnNvbGUubG9nKCdcXG49PT0gTG9jYWxlIFZhbGlkYXRpb24gPT09Jyk7XG5jb25zb2xlLmxvZyhpc1ZhbGlkTG9jYWxlKCdlbi11cycpKTsgLy8gdHJ1ZVxuY29uc29sZS5sb2coaXNWYWxpZExvY2FsZSgnZXMtbXgnKSk7IC8vIHRydWVcbmNvbnNvbGUubG9nKGlzVmFsaWRMb2NhbGUoJ2ludmFsaWQnKSk7IC8vIGZhbHNlXG5jb25zb2xlLmxvZyhpc1ZhbGlkTG9jYWxlKCdlbi14eCcpKTsgLy8gZmFsc2VcblxuLy8gRXhhbXBsZSA4OiBTdXBwb3J0ZWQgTG9jYWxlc1xuY29uc29sZS5sb2coJ1xcbj09PSBTdXBwb3J0ZWQgTG9jYWxlcyA9PT0nKTtcbmNvbnN0IHN1cHBvcnRlZExvY2FsZXMgPSBnZXRTdXBwb3J0ZWRMb2NhbGVzKCk7XG5jb25zb2xlLmxvZyhgVG90YWwgc3VwcG9ydGVkIGxvY2FsZXM6ICR7c3VwcG9ydGVkTG9jYWxlcy5sZW5ndGh9YCk7XG5jb25zb2xlLmxvZygnRW5nbGlzaCB2YXJpYW50czonLCBzdXBwb3J0ZWRMb2NhbGVzLmZpbHRlcigobCkgPT4gbC5zdGFydHNXaXRoKCdlbicpKSk7XG5jb25zb2xlLmxvZygnU3BhbmlzaCB2YXJpYW50czonLCBzdXBwb3J0ZWRMb2NhbGVzLmZpbHRlcigobCkgPT4gbC5zdGFydHNXaXRoKCdlcycpKSk7XG5cbi8vIEV4YW1wbGUgOTogUHJpbWFyeSBMYW5ndWFnZXNcbmNvbnNvbGUubG9nKCdcXG49PT0gUHJpbWFyeSBMYW5ndWFnZXMgPT09Jyk7XG5jb25zdCBwcmltYXJ5TGFuZ3VhZ2VzID0gZ2V0UHJpbWFyeUxhbmd1YWdlcygpO1xuY29uc29sZS5sb2coJ1ByaW1hcnkgbGFuZ3VhZ2VzOicsIHByaW1hcnlMYW5ndWFnZXMpO1xuXG4vLyBFeGFtcGxlIDEwOiBDb21wbGV0ZSBXb3JrZmxvd1xuY29uc3QgY29tcGxldGVUcmFuc2xhdGlvbldvcmtmbG93ID0gYXN5bmMgKCkgPT4ge1xuICBjb25zb2xlLmxvZygnXFxuPT09IENvbXBsZXRlIFRyYW5zbGF0aW9uIFdvcmtmbG93ID09PScpO1xuXG4gIGNvbnN0IGtleSA9ICd3ZWxjb21lX21lc3NhZ2UnO1xuICBjb25zdCB1c2VyTG9jYWxlID0gJ2VzLW14JzsgLy8gVXNlcidzIGZ1bGwgbG9jYWxlXG4gIGNvbnN0IGFwcExvY2FsZSA9ICdlbi11cyc7IC8vIEFwcCdzIGRlZmF1bHQgbG9jYWxlXG5cbiAgLy8gMS4gRXh0cmFjdCBsYW5ndWFnZSBmb3IgdHJhbnNsYXRpb24gQVBJXG4gIGNvbnN0IHVzZXJMYW5ndWFnZSA9IGV4dHJhY3RMYW5ndWFnZSh1c2VyTG9jYWxlKTtcbiAgY29uc3QgYXBwTGFuZ3VhZ2UgPSBleHRyYWN0TGFuZ3VhZ2UoYXBwTG9jYWxlKTtcblxuICBjb25zb2xlLmxvZyhgVXNlciBsb2NhbGU6ICR7dXNlckxvY2FsZX0gKGxhbmd1YWdlOiAke3VzZXJMYW5ndWFnZX0pYCk7XG4gIGNvbnNvbGUubG9nKGBBcHAgbG9jYWxlOiAke2FwcExvY2FsZX0gKGxhbmd1YWdlOiAke2FwcExhbmd1YWdlfSlgKTtcblxuICAvLyAyLiBDaGVjayBpZiB3ZSBuZWVkIHRyYW5zbGF0aW9uXG4gIGlmKHVzZXJMYW5ndWFnZSAhPT0gYXBwTGFuZ3VhZ2UpIHtcbiAgICBjb25zb2xlLmxvZygnVHJhbnNsYXRpb24gbmVlZGVkIScpO1xuXG4gICAgLy8gMy4gR2V0IHNvdXJjZSBjb250ZW50IChmcm9tIGFwcCBsb2NhbGUpXG4gICAgY29uc3Qgc291cmNlQ29udGVudCA9IGF3YWl0IGdldENvbnRlbnRXaXRoRmFsbGJhY2soa2V5LCBhcHBMb2NhbGUpO1xuXG4gICAgLy8gNC4gVHJhbnNsYXRlIHVzaW5nIGxhbmd1YWdlIGNvZGVzXG4gICAgY29uc3QgdHJhbnNsYXRlZENvbnRlbnQgPSBhd2FpdCB0cmFuc2xhdGVUZXh0KHNvdXJjZUNvbnRlbnQsIHVzZXJMYW5ndWFnZSwgYXBwTGFuZ3VhZ2UpO1xuXG4gICAgLy8gNS4gU3RvcmUgd2l0aCBmdWxsIGxvY2FsZVxuICAgIGF3YWl0IHN0b3JlVHJhbnNsYXRpb24oa2V5LCB0cmFuc2xhdGVkQ29udGVudCwgdXNlckxvY2FsZSk7XG5cbiAgICBjb25zb2xlLmxvZyhgVHJhbnNsYXRpb24gY29tcGxldGU6ICR7dHJhbnNsYXRlZENvbnRlbnR9YCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc29sZS5sb2coJ05vIHRyYW5zbGF0aW9uIG5lZWRlZCAtIHNhbWUgbGFuZ3VhZ2UnKTtcbiAgfVxufTtcblxuLy8gUnVuIGV4YW1wbGVzXG5leHBvcnQgY29uc3QgcnVuTG9jYWxlRXhhbXBsZXMgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnNvbGUubG9nKCdMb2NhbGUgVXRpbGl0aWVzIEV4YW1wbGVzXFxuJyk7XG5cbiAgLy8gUnVuIHN5bmNocm9ub3VzIGV4YW1wbGVzXG4gIGNvbnNvbGUubG9nKCdTeW5jaHJvbm91cyBleGFtcGxlcyBjb21wbGV0ZWQgYWJvdmUnKTtcblxuICAvLyBSdW4gYXN5bmMgZXhhbXBsZXNcbiAgYXdhaXQgZ2V0Q29udGVudFdpdGhGYWxsYmFjaygnd2VsY29tZV9tZXNzYWdlJywgJ2VzLW14Jyk7XG4gIGF3YWl0IGNvbXBsZXRlVHJhbnNsYXRpb25Xb3JrZmxvdygpO1xuXG4gIGNvbnNvbGUubG9nKCdcXG49PT0gRXhhbXBsZSBDb21wbGV0ZSA9PT0nKTtcbn07XG5cbi8vIFVuY29tbWVudCB0byBydW4gZXhhbXBsZXNcbi8vIHJ1bkxvY2FsZUV4YW1wbGVzKCk7Il0sCiAgIm1hcHBpbmdzIjogIkFBS0EsT0FDRSxtQkFBQUEsRUFFQSx1QkFBQUMsRUFDQSx1QkFBQUMsRUFDQSxvQkFBQUMsTUFFSyxtQkFpQ1AsTUFBTUMsRUFBZ0IsTUFBT0MsRUFBY0MsRUFBc0JDLEVBQXVCLE9BQVMsQ0FFL0YsTUFBTUMsRUFBaUJSLEVBQWdCTSxDQUFZLEVBQzdDRyxFQUFpQlQsRUFBZ0JPLENBQVksRUFRbkQsTUFBTyxnQkFBZ0JGLENBQUksR0FDN0IsRUFHTUssRUFBbUIsTUFBT0MsRUFBYUMsRUFBaUJDLEtBU3JELENBQUMsSUFBQUYsRUFBSyxPQUFBRSxFQUFRLFFBQUFELENBQU8sR0FJeEJFLEVBQXlCLE1BQU9ILEVBQWFJLElBQTRCLENBTzdFLEdBQUdaLEVBQWlCWSxDQUFlLEVBQUcsQ0FDcEMsTUFBTUMsRUFBV2hCLEVBQWdCZSxDQUFlLENBS2xELENBS0EsTUFBTyxnQkFBZ0JKLENBQUcsT0FBT0ksQ0FBZSxHQUNsRCxFQVdNRSxFQUFtQmYsRUFBb0IsRUFPdkNnQixFQUFtQmpCLEVBQW9CLEVBSXZDa0IsRUFBOEIsU0FBWSxDQUc5QyxNQUFNUixFQUFNLGtCQUNOUyxFQUFhLFFBQ2JDLEVBQVksUUFHWkMsRUFBZXRCLEVBQWdCb0IsQ0FBVSxFQUN6Q0csRUFBY3ZCLEVBQWdCcUIsQ0FBUyxFQU03QyxHQUFHQyxJQUFpQkMsRUFBYSxDQUkvQixNQUFNQyxFQUFnQixNQUFNVixFQUF1QkgsRUFBS1UsQ0FBUyxFQUczREksRUFBb0IsTUFBTXJCLEVBQWNvQixFQUFlRixFQUFjQyxDQUFXLEVBR3RGLE1BQU1iLEVBQWlCQyxFQUFLYyxFQUFtQkwsQ0FBVSxDQUczRCxDQUdGLEVBR2FNLEVBQW9CLFNBQVksQ0FPM0MsTUFBTVosRUFBdUIsa0JBQW1CLE9BQU8sRUFDdkQsTUFBTUssRUFBNEIsQ0FHcEMiLAogICJuYW1lcyI6IFsiZXh0cmFjdExhbmd1YWdlIiwgImdldFByaW1hcnlMYW5ndWFnZXMiLCAiZ2V0U3VwcG9ydGVkTG9jYWxlcyIsICJpc1JlZ2lvbmFsTG9jYWxlIiwgInRyYW5zbGF0ZVRleHQiLCAidGV4dCIsICJ0YXJnZXRMb2NhbGUiLCAic291cmNlTG9jYWxlIiwgInRhcmdldExhbmd1YWdlIiwgInNvdXJjZUxhbmd1YWdlIiwgInN0b3JlVHJhbnNsYXRpb24iLCAia2V5IiwgImNvbnRlbnQiLCAibG9jYWxlIiwgImdldENvbnRlbnRXaXRoRmFsbGJhY2siLCAicmVxdWVzdGVkTG9jYWxlIiwgImxhbmd1YWdlIiwgInN1cHBvcnRlZExvY2FsZXMiLCAicHJpbWFyeUxhbmd1YWdlcyIsICJjb21wbGV0ZVRyYW5zbGF0aW9uV29ya2Zsb3ciLCAidXNlckxvY2FsZSIsICJhcHBMb2NhbGUiLCAidXNlckxhbmd1YWdlIiwgImFwcExhbmd1YWdlIiwgInNvdXJjZUNvbnRlbnQiLCAidHJhbnNsYXRlZENvbnRlbnQiLCAicnVuTG9jYWxlRXhhbXBsZXMiXQp9Cg==
@@ -0,0 +1,2 @@
1
+ const s=e=>e.split("-")[0],n=e=>e.includes("-"),r=e=>{const t=s(e);return n(e)?[e,t]:[e]},a=()=>["en","es","fr","de","pt","it"],o=e=>["en","en-us","en-gb","en-ca","en-au","es","es-mx","es-es","es-ar","fr","fr-fr","fr-ca","de","de-de","de-at","pt","pt-br","pt-pt","it","it-it"].includes(e),i=()=>["en","en-us","en-gb","en-ca","en-au","es","es-mx","es-es","es-ar","fr","fr-fr","fr-ca","de","de-de","de-at","pt","pt-br","pt-pt","it","it-it"];export{s as extractLanguage,r as getFallbackChain,a as getPrimaryLanguages,i as getSupportedLocales,n as isRegionalLocale,o as isValidLocale};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL2xvY2FsZVV0aWxzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHR5cGUge0xvY2FsZX0gZnJvbSAnLi4vdHlwZXMvY29udGVudC50eXBlcy5qcyc7XG5cbmV4cG9ydCBjb25zdCBleHRyYWN0TGFuZ3VhZ2UgPSAobG9jYWxlOiBzdHJpbmcpOiBzdHJpbmcgPT4gbG9jYWxlLnNwbGl0KCctJylbMF07XG5cbmV4cG9ydCBjb25zdCBpc1JlZ2lvbmFsTG9jYWxlID0gKGxvY2FsZTogc3RyaW5nKTogYm9vbGVhbiA9PiBsb2NhbGUuaW5jbHVkZXMoJy0nKTtcblxuZXhwb3J0IGNvbnN0IGdldEZhbGxiYWNrQ2hhaW4gPSAobG9jYWxlOiBzdHJpbmcpOiBzdHJpbmdbXSA9PiB7XG4gIGNvbnN0IGxhbmd1YWdlID0gZXh0cmFjdExhbmd1YWdlKGxvY2FsZSk7XG4gIHJldHVybiBpc1JlZ2lvbmFsTG9jYWxlKGxvY2FsZSkgPyBbbG9jYWxlLCBsYW5ndWFnZV0gOiBbbG9jYWxlXTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRQcmltYXJ5TGFuZ3VhZ2VzID0gKCk6IHN0cmluZ1tdID0+IFsnZW4nLCAnZXMnLCAnZnInLCAnZGUnLCAncHQnLCAnaXQnXTtcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRMb2NhbGUgPSAobG9jYWxlOiBzdHJpbmcpOiBsb2NhbGUgaXMgTG9jYWxlID0+IHtcbiAgY29uc3QgdmFsaWRMb2NhbGVzOiBMb2NhbGVbXSA9IFtcbiAgICAnZW4nLCAnZW4tdXMnLCAnZW4tZ2InLCAnZW4tY2EnLCAnZW4tYXUnLFxuICAgICdlcycsICdlcy1teCcsICdlcy1lcycsICdlcy1hcicsXG4gICAgJ2ZyJywgJ2ZyLWZyJywgJ2ZyLWNhJyxcbiAgICAnZGUnLCAnZGUtZGUnLCAnZGUtYXQnLFxuICAgICdwdCcsICdwdC1icicsICdwdC1wdCcsXG4gICAgJ2l0JywgJ2l0LWl0J1xuICBdO1xuICByZXR1cm4gdmFsaWRMb2NhbGVzLmluY2x1ZGVzKGxvY2FsZSBhcyBMb2NhbGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFN1cHBvcnRlZExvY2FsZXMgPSAoKTogTG9jYWxlW10gPT4gW1xuICAnZW4nLCAnZW4tdXMnLCAnZW4tZ2InLCAnZW4tY2EnLCAnZW4tYXUnLFxuICAnZXMnLCAnZXMtbXgnLCAnZXMtZXMnLCAnZXMtYXInLFxuICAnZnInLCAnZnItZnInLCAnZnItY2EnLFxuICAnZGUnLCAnZGUtZGUnLCAnZGUtYXQnLFxuICAncHQnLCAncHQtYnInLCAncHQtcHQnLFxuICAnaXQnLCAnaXQtaXQnXG5dOyJdLAogICJtYXBwaW5ncyI6ICJBQU1PLE1BQU1BLEVBQW1CQyxHQUEyQkEsRUFBTyxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBRWpFQyxFQUFvQkQsR0FBNEJBLEVBQU8sU0FBUyxHQUFHLEVBRW5FRSxFQUFvQkYsR0FBNkIsQ0FDNUQsTUFBTUcsRUFBV0osRUFBZ0JDLENBQU0sRUFDdkMsT0FBT0MsRUFBaUJELENBQU0sRUFBSSxDQUFDQSxFQUFRRyxDQUFRLEVBQUksQ0FBQ0gsQ0FBTSxDQUNoRSxFQUVhSSxFQUFzQixJQUFnQixDQUFDLEtBQU0sS0FBTSxLQUFNLEtBQU0sS0FBTSxJQUFJLEVBRXpFQyxFQUFpQkwsR0FDRyxDQUM3QixLQUFNLFFBQVMsUUFBUyxRQUFTLFFBQ2pDLEtBQU0sUUFBUyxRQUFTLFFBQ3hCLEtBQU0sUUFBUyxRQUNmLEtBQU0sUUFBUyxRQUNmLEtBQU0sUUFBUyxRQUNmLEtBQU0sT0FDUixFQUNvQixTQUFTQSxDQUFnQixFQUdsQ00sRUFBc0IsSUFBZ0IsQ0FDakQsS0FBTSxRQUFTLFFBQVMsUUFBUyxRQUNqQyxLQUFNLFFBQVMsUUFBUyxRQUN4QixLQUFNLFFBQVMsUUFDZixLQUFNLFFBQVMsUUFDZixLQUFNLFFBQVMsUUFDZixLQUFNLE9BQ1IiLAogICJuYW1lcyI6IFsiZXh0cmFjdExhbmd1YWdlIiwgImxvY2FsZSIsICJpc1JlZ2lvbmFsTG9jYWxlIiwgImdldEZhbGxiYWNrQ2hhaW4iLCAibGFuZ3VhZ2UiLCAiZ2V0UHJpbWFyeUxhbmd1YWdlcyIsICJpc1ZhbGlkTG9jYWxlIiwgImdldFN1cHBvcnRlZExvY2FsZXMiXQp9Cg==
@@ -0,0 +1,2 @@
1
+ import type { ApiContext } from '../types/auth.types.js';
2
+ export declare const addFieldsToContext: (resolve: Function, parent: any, args: any, context: ApiContext, info: any) => any;
@@ -0,0 +1,2 @@
1
+ import{getGqlFields as p}from"./arangodbUtils.js";const d=(e,o,n,i,t)=>{const s={...i,fields:p(t)};return e(o,n,s,t)};export{d as addFieldsToContext};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL21pZGRsZXdhcmVVdGlscy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHtnZXRHcWxGaWVsZHN9IGZyb20gJy4vYXJhbmdvZGJVdGlscy5qcyc7XG5cbmltcG9ydCB0eXBlIHtBcGlDb250ZXh0fSBmcm9tICcuLi90eXBlcy9hdXRoLnR5cGVzLmpzJztcblxuZXhwb3J0IGNvbnN0IGFkZEZpZWxkc1RvQ29udGV4dCA9IChcbiAgcmVzb2x2ZTogRnVuY3Rpb24sXG4gIHBhcmVudDogYW55LFxuICBhcmdzOiBhbnksXG4gIGNvbnRleHQ6IEFwaUNvbnRleHQsXG4gIGluZm86IGFueVxuKSA9PiB7XG4gIGNvbnN0IGNvbnRleHRXaXRoRmllbGRzID0ge1xuICAgIC4uLmNvbnRleHQsXG4gICAgZmllbGRzOiBnZXRHcWxGaWVsZHMoaW5mbylcbiAgfTtcblxuICByZXR1cm4gcmVzb2x2ZShwYXJlbnQsIGFyZ3MsIGNvbnRleHRXaXRoRmllbGRzLCBpbmZvKTtcbn07Il0sCiAgIm1hcHBpbmdzIjogIkFBQUEsT0FBUSxnQkFBQUEsTUFBbUIscUJBSXBCLE1BQU1DLEVBQXFCLENBQ2hDQyxFQUNBQyxFQUNBQyxFQUNBQyxFQUNBQyxJQUNHLENBQ0gsTUFBTUMsRUFBb0IsQ0FDeEIsR0FBR0YsRUFDSCxPQUFRTCxFQUFhTSxDQUFJLENBQzNCLEVBRUEsT0FBT0osRUFBUUMsRUFBUUMsRUFBTUcsRUFBbUJELENBQUksQ0FDdEQiLAogICJuYW1lcyI6IFsiZ2V0R3FsRmllbGRzIiwgImFkZEZpZWxkc1RvQ29udGV4dCIsICJyZXNvbHZlIiwgInBhcmVudCIsICJhcmdzIiwgImNvbnRleHQiLCAiaW5mbyIsICJjb250ZXh0V2l0aEZpZWxkcyJdCn0K
@@ -15,4 +15,4 @@ export type SessionToken = {
15
15
  };
16
16
  export declare const setSession: (session: Session) => string;
17
17
  export declare const getSession: (token: string) => Session;
18
- export declare const isAdminUser: (session: Session) => boolean;
18
+ export declare const isAdminUser: (session?: Session) => boolean;
@@ -0,0 +1,2 @@
1
+ import r from"jsonwebtoken";const t=e=>r.sign(e,process.env.SESSION_SECRET),i=e=>{try{return r.verify(e,process.env.SESSION_SECRET)}catch(s){switch(s.message){case"jwt expired":throw new Error("expired_session");default:throw new Error("invalid_session")}}},a=e=>!!e?.userAccess&&e.userAccess>2;export{i as getSession,a as isAdminUser,t as setSession};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL3Nlc3Npb25VdGlscy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTktUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCBqd3QgZnJvbSAnanNvbndlYnRva2VuJztcblxuZXhwb3J0IHR5cGUgU2Vzc2lvbiA9IHtcbiAgcmVhZG9ubHkgZXJyb3JzPzogc3RyaW5nW107XG4gIHJlYWRvbmx5IGV4cD86IG51bWJlcjtcbiAgcmVhZG9ubHkgaWF0PzogbnVtYmVyO1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcbiAgcmVhZG9ubHkgdXNlckFjY2Vzcz86IG51bWJlcjtcbiAgcmVhZG9ubHkgdXNlcklkOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBTZXNzaW9uVG9rZW4gPSB7XG4gIHJlYWRvbmx5IGV4cGlyZXM6IG51bWJlcjtcbiAgcmVhZG9ubHkgaXNzdWVkOiBudW1iZXI7XG4gIHJlYWRvbmx5IHRva2VuOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHVzZXJJZDogc3RyaW5nO1xuICByZWFkb25seSB1c2VybmFtZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldFNlc3Npb24gPSAoc2Vzc2lvbjogU2Vzc2lvbik6IHN0cmluZyA9PiBqd3Quc2lnbihzZXNzaW9uLCBwcm9jZXNzLmVudi5TRVNTSU9OX1NFQ1JFVCk7XG5cbmV4cG9ydCBjb25zdCBnZXRTZXNzaW9uID0gKHRva2VuOiBzdHJpbmcpOiBTZXNzaW9uID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gand0LnZlcmlmeSh0b2tlbiwgcHJvY2Vzcy5lbnYuU0VTU0lPTl9TRUNSRVQpO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgc3dpdGNoKGVycm9yLm1lc3NhZ2UpIHtcbiAgICAgIGNhc2UgJ2p3dCBleHBpcmVkJzoge1xuICAgICAgICBjb25zdCBlcnIgPSBuZXcgRXJyb3IoJ2V4cGlyZWRfc2Vzc2lvbicpO1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIGNvbnN0IGVyciA9IG5ldyBFcnJvcignaW52YWxpZF9zZXNzaW9uJyk7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpc0FkbWluVXNlciA9IChzZXNzaW9uPzogU2Vzc2lvbik6IGJvb2xlYW4gPT4gISFzZXNzaW9uPy51c2VyQWNjZXNzICYmIHNlc3Npb24udXNlckFjY2VzcyA+IDI7Il0sCiAgIm1hcHBpbmdzIjogIkFBSUEsT0FBT0EsTUFBUyxlQW1CVCxNQUFNQyxFQUFjQyxHQUE2QkYsRUFBSSxLQUFLRSxFQUFTLFFBQVEsSUFBSSxjQUFjLEVBRXZGQyxFQUFjQyxHQUEyQixDQUNwRCxHQUFJLENBQ0YsT0FBT0osRUFBSSxPQUFPSSxFQUFPLFFBQVEsSUFBSSxjQUFjLENBQ3JELE9BQVFDLEVBQU8sQ0FDYixPQUFPQSxFQUFNLFFBQVMsQ0FDcEIsSUFBSyxjQUVILE1BRFksSUFBSSxNQUFNLGlCQUFpQixFQUd6QyxRQUVFLE1BRFksSUFBSSxNQUFNLGlCQUFpQixDQUczQyxDQUNGLENBQ0YsRUFFYUMsRUFBZUosR0FBK0IsQ0FBQyxDQUFDQSxHQUFTLFlBQWNBLEVBQVEsV0FBYSIsCiAgIm5hbWVzIjogWyJqd3QiLCAic2V0U2Vzc2lvbiIsICJzZXNzaW9uIiwgImdldFNlc3Npb24iLCAidG9rZW4iLCAiZXJyb3IiLCAiaXNBZG1pblVzZXIiXQp9Cg==
@@ -1,3 +1,7 @@
1
- import Stripe from 'stripe';
2
- export declare const stripeApiVersion = "2025-05-28.basil";
3
- export declare const getStripeClient: () => Stripe;
1
+ /**
2
+ * Copyright (c) 2025-Present, Nitrogen Labs, Inc.
3
+ * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
+ */
5
+ import stripe from 'stripe';
6
+ export declare const stripeApiVersion = "2025-07-30.basil";
7
+ export declare const getStripeClient: () => stripe;
@@ -1,43 +1,2 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var stripeUtils_exports = {};
29
- __export(stripeUtils_exports, {
30
- getStripeClient: () => getStripeClient,
31
- stripeApiVersion: () => stripeApiVersion
32
- });
33
- module.exports = __toCommonJS(stripeUtils_exports);
34
- var import_stripe = __toESM(require("stripe"), 1);
35
- var import_config = require("../config");
36
- const stripeApiVersion = "2025-05-28.basil";
37
- const getStripeClient = () => new import_stripe.default(import_config.Config.get("stripe.token"), { apiVersion: stripeApiVersion, typescript: true });
38
- // Annotate the CommonJS export names for ESM import in node:
39
- 0 && (module.exports = {
40
- getStripeClient,
41
- stripeApiVersion
42
- });
43
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL3N0cmlwZVV0aWxzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgU3RyaXBlIGZyb20gJ3N0cmlwZSc7XG5pbXBvcnQge0NvbmZpZ30gZnJvbSAnLi4vY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IHN0cmlwZUFwaVZlcnNpb24gPSAnMjAyNS0wNS0yOC5iYXNpbCc7XG5cbmV4cG9ydCBjb25zdCBnZXRTdHJpcGVDbGllbnQgPSAoKSA9PiBuZXcgU3RyaXBlKENvbmZpZy5nZXQoJ3N0cmlwZS50b2tlbicpLCB7YXBpVmVyc2lvbjogc3RyaXBlQXBpVmVyc2lvbiwgdHlwZXNjcmlwdDogdHJ1ZX0pOyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLG9CQUFtQjtBQUNuQixvQkFBcUI7QUFFZCxNQUFNLG1CQUFtQjtBQUV6QixNQUFNLGtCQUFrQixNQUFNLElBQUksY0FBQUEsUUFBTyxxQkFBTyxJQUFJLGNBQWMsR0FBRyxFQUFDLFlBQVksa0JBQWtCLFlBQVksS0FBSSxDQUFDOyIsCiAgIm5hbWVzIjogWyJTdHJpcGUiXQp9Cg==
1
+ import t from"stripe";import{Config as e}from"../config.js";const i="2025-07-30.basil",p=()=>new t(e.get("stripe.token"),{apiVersion:i,typescript:!0});export{p as getStripeClient,i as stripeApiVersion};
2
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL3N0cmlwZVV0aWxzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyNS1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHN0cmlwZSBmcm9tICdzdHJpcGUnO1xuXG5pbXBvcnQge0NvbmZpZ30gZnJvbSAnLi4vY29uZmlnLmpzJztcblxuZXhwb3J0IGNvbnN0IHN0cmlwZUFwaVZlcnNpb24gPSAnMjAyNS0wNy0zMC5iYXNpbCc7XG5cbmV4cG9ydCBjb25zdCBnZXRTdHJpcGVDbGllbnQgPSAoKSA9PiBuZXcgc3RyaXBlKENvbmZpZy5nZXQoJ3N0cmlwZS50b2tlbicpLCB7YXBpVmVyc2lvbjogc3RyaXBlQXBpVmVyc2lvbiwgdHlwZXNjcmlwdDogdHJ1ZX0pOyJdLAogICJtYXBwaW5ncyI6ICJBQUlBLE9BQU9BLE1BQVksU0FFbkIsT0FBUSxVQUFBQyxNQUFhLGVBRWQsTUFBTUMsRUFBbUIsbUJBRW5CQyxFQUFrQixJQUFNLElBQUlILEVBQU9DLEVBQU8sSUFBSSxjQUFjLEVBQUcsQ0FBQyxXQUFZQyxFQUFrQixXQUFZLEVBQUksQ0FBQyIsCiAgIm5hbWVzIjogWyJzdHJpcGUiLCAiQ29uZmlnIiwgInN0cmlwZUFwaVZlcnNpb24iLCAiZ2V0U3RyaXBlQ2xpZW50Il0KfQo=
@@ -0,0 +1,3 @@
1
+ export type TemplateParams = Record<string, string>;
2
+ export declare const parseTemplate: (template: string, params: TemplateParams) => string;
3
+ export declare const createTemplate: <T extends TemplateParams>(templateString: string, params: T) => string;