@vandenberghinc/volt 1.2.6 → 1.2.8

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 (472) hide show
  1. package/.libris/config.json +82 -0
  2. package/backend/dist/cjs/backend/src/blacklist.d.ts +12 -0
  3. package/backend/dist/cjs/backend/src/blacklist.js +78 -0
  4. package/backend/dist/cjs/backend/src/cli.d.ts +2 -0
  5. package/backend/dist/cjs/backend/src/cli.js +198 -0
  6. package/backend/dist/cjs/backend/src/database/collection.d.ts +1765 -0
  7. package/backend/dist/cjs/backend/src/database/collection.js +3301 -0
  8. package/backend/dist/cjs/backend/src/database/database.d.ts +92 -0
  9. package/backend/dist/cjs/backend/src/database/database.js +170 -0
  10. package/backend/dist/cjs/backend/src/database/document.d.ts +1 -0
  11. package/backend/dist/cjs/backend/src/database/document.js +15 -0
  12. package/backend/dist/cjs/backend/src/database/filters/filters.d.ts +6 -0
  13. package/backend/dist/cjs/backend/src/database/filters/filters.js +15 -0
  14. package/backend/dist/cjs/backend/src/database/filters/strict_filter.d.ts +223 -0
  15. package/backend/dist/cjs/backend/src/database/filters/strict_filter.js +15 -0
  16. package/backend/dist/cjs/backend/src/database/filters/strict_filter_test.d.ts +1 -0
  17. package/backend/dist/cjs/backend/src/database/filters/strict_filter_test.js +443 -0
  18. package/backend/dist/cjs/backend/src/database/filters/strict_filter_test_v0.d.ts +1 -0
  19. package/backend/dist/cjs/backend/src/database/filters/strict_filter_test_v0.js +15 -0
  20. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v0.d.ts +50 -0
  21. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v0.js +15 -0
  22. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v1.d.ts +76 -0
  23. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v1.js +15 -0
  24. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v2.d.ts +75 -0
  25. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v2.js +15 -0
  26. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v3.d.ts +219 -0
  27. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v3.js +15 -0
  28. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter.d.ts +165 -0
  29. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter.js +15 -0
  30. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter_test.d.ts +5 -0
  31. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter_test.js +355 -0
  32. package/backend/dist/cjs/backend/src/database/flatten.d.ts +78 -0
  33. package/backend/dist/cjs/backend/src/database/flatten.js +53 -0
  34. package/backend/dist/cjs/backend/src/database/flatten_test.d.ts +1 -0
  35. package/backend/dist/cjs/backend/src/database/flatten_test.js +175 -0
  36. package/backend/dist/cjs/backend/src/database/quota/quoata_v2.d.ts +533 -0
  37. package/backend/dist/cjs/backend/src/database/quota/quoata_v2.js +1046 -0
  38. package/backend/dist/cjs/backend/src/database/quota/quota.d.ts +551 -0
  39. package/backend/dist/cjs/backend/src/database/quota/quota.js +1108 -0
  40. package/backend/dist/cjs/backend/src/database/quota/quota_v1.d.ts +534 -0
  41. package/backend/dist/cjs/backend/src/database/quota/quota_v1.js +1087 -0
  42. package/backend/dist/cjs/backend/src/database/quota/safe_int.d.ts +412 -0
  43. package/backend/dist/cjs/backend/src/database/quota/safe_int.js +745 -0
  44. package/backend/dist/cjs/backend/src/endpoint.d.ts +346 -0
  45. package/backend/dist/cjs/backend/src/endpoint.js +468 -0
  46. package/backend/dist/cjs/backend/src/errors/index.d.ts +7 -0
  47. package/backend/dist/cjs/backend/src/errors/index.js +25 -0
  48. package/backend/dist/cjs/backend/src/errors/internal_external.d.ts +52 -0
  49. package/backend/dist/cjs/backend/src/errors/internal_external.js +95 -0
  50. package/backend/dist/cjs/backend/src/errors/invalid_usage_error.d.ts +41 -0
  51. package/backend/dist/cjs/backend/src/errors/invalid_usage_error.js +47 -0
  52. package/backend/dist/cjs/backend/src/errors/system_error.d.ts +261 -0
  53. package/backend/dist/cjs/backend/src/errors/system_error.js +436 -0
  54. package/backend/dist/cjs/backend/src/events.d.ts +97 -0
  55. package/backend/dist/cjs/backend/src/events.js +15 -0
  56. package/backend/dist/cjs/backend/src/frontend.d.ts +13 -0
  57. package/backend/dist/cjs/backend/src/frontend.js +56 -0
  58. package/backend/dist/cjs/backend/src/image_endpoint.d.ts +44 -0
  59. package/backend/dist/cjs/backend/src/image_endpoint.js +185 -0
  60. package/backend/dist/cjs/backend/src/index.d.ts +23 -0
  61. package/backend/dist/cjs/backend/src/index.js +70 -0
  62. package/backend/dist/cjs/backend/src/logger.d.ts +5 -0
  63. package/backend/dist/cjs/backend/src/logger.js +15 -0
  64. package/backend/dist/cjs/backend/src/meta.d.ts +112 -0
  65. package/backend/dist/cjs/backend/src/meta.js +181 -0
  66. package/backend/dist/cjs/backend/src/payments/paddle.d.ts +329 -0
  67. package/backend/dist/cjs/backend/src/payments/paddle.js +1996 -0
  68. package/backend/dist/cjs/backend/src/payments/stripe/checkout.d.ts +113 -0
  69. package/backend/dist/cjs/backend/src/payments/stripe/checkout.js +295 -0
  70. package/backend/dist/cjs/backend/src/payments/stripe/customers.d.ts +17 -0
  71. package/backend/dist/cjs/backend/src/payments/stripe/customers.js +164 -0
  72. package/backend/dist/cjs/backend/src/payments/stripe/error.d.ts +74 -0
  73. package/backend/dist/cjs/backend/src/payments/stripe/error.js +64 -0
  74. package/backend/dist/cjs/backend/src/payments/stripe/events.d.ts +155 -0
  75. package/backend/dist/cjs/backend/src/payments/stripe/events.js +15 -0
  76. package/backend/dist/cjs/backend/src/payments/stripe/meters.d.ts +105 -0
  77. package/backend/dist/cjs/backend/src/payments/stripe/meters.js +230 -0
  78. package/backend/dist/cjs/backend/src/payments/stripe/payment_methods.d.ts +58 -0
  79. package/backend/dist/cjs/backend/src/payments/stripe/payment_methods.js +109 -0
  80. package/backend/dist/cjs/backend/src/payments/stripe/products.d.ts +519 -0
  81. package/backend/dist/cjs/backend/src/payments/stripe/products.js +650 -0
  82. package/backend/dist/cjs/backend/src/payments/stripe/stripe.d.ts +215 -0
  83. package/backend/dist/cjs/backend/src/payments/stripe/stripe.js +468 -0
  84. package/backend/dist/cjs/backend/src/payments/stripe/subscriptions.d.ts +172 -0
  85. package/backend/dist/cjs/backend/src/payments/stripe/subscriptions.js +557 -0
  86. package/backend/dist/cjs/backend/src/payments/stripe/utils.d.ts +63 -0
  87. package/backend/dist/cjs/backend/src/payments/stripe/utils.js +118 -0
  88. package/backend/dist/cjs/backend/src/payments/stripe/webhooks.d.ts +105 -0
  89. package/backend/dist/cjs/backend/src/payments/stripe/webhooks.js +627 -0
  90. package/backend/dist/cjs/backend/src/plugins/browser.d.ts +1 -0
  91. package/backend/dist/cjs/backend/src/plugins/browser.js +15 -0
  92. package/backend/dist/cjs/backend/src/plugins/communication.d.ts +70 -0
  93. package/backend/dist/cjs/backend/src/plugins/communication.js +196 -0
  94. package/backend/dist/cjs/backend/src/plugins/mail/mail.d.ts +255 -0
  95. package/backend/dist/cjs/backend/src/plugins/mail/mail.js +381 -0
  96. package/backend/dist/cjs/backend/src/plugins/mail/ui.d.ts +297 -0
  97. package/backend/dist/cjs/backend/src/plugins/mail/ui.js +1370 -0
  98. package/backend/dist/cjs/backend/src/plugins/pdf.d.ts +1 -0
  99. package/backend/dist/cjs/backend/src/plugins/pdf.js +1456 -0
  100. package/backend/dist/cjs/backend/src/plugins/thread_monitor.d.ts +18 -0
  101. package/backend/dist/cjs/backend/src/plugins/thread_monitor.js +116 -0
  102. package/backend/dist/cjs/backend/src/rate_limit.d.ts +148 -0
  103. package/backend/dist/cjs/backend/src/rate_limit.js +543 -0
  104. package/backend/dist/cjs/backend/src/route.d.ts +39 -0
  105. package/backend/dist/cjs/backend/src/route.js +172 -0
  106. package/backend/dist/cjs/backend/src/server.d.ts +502 -0
  107. package/backend/dist/cjs/backend/src/server.js +1710 -0
  108. package/backend/dist/cjs/backend/src/server.old.d.ts +594 -0
  109. package/backend/dist/cjs/backend/src/server.old.js +2058 -0
  110. package/backend/dist/cjs/backend/src/splash_screen.d.ts +93 -0
  111. package/backend/dist/cjs/backend/src/splash_screen.js +119 -0
  112. package/backend/dist/cjs/backend/src/status.d.ts +89 -0
  113. package/backend/dist/cjs/backend/src/status.js +211 -0
  114. package/backend/dist/cjs/backend/src/stream.d.ts +494 -0
  115. package/backend/dist/cjs/backend/src/stream.js +1370 -0
  116. package/backend/dist/cjs/backend/src/users.d.ts +926 -0
  117. package/backend/dist/cjs/backend/src/users.js +2223 -0
  118. package/backend/dist/cjs/backend/src/utils.d.ts +22 -0
  119. package/backend/dist/cjs/backend/src/utils.js +626 -0
  120. package/backend/dist/cjs/backend/src/view.d.ts +115 -0
  121. package/backend/dist/cjs/backend/src/view.js +519 -0
  122. package/backend/dist/cjs/backend/src/vinc.d.ts +6 -0
  123. package/backend/dist/cjs/backend/src/vinc.js +40 -0
  124. package/backend/dist/cjs/backend/src/volt.d.ts +24 -0
  125. package/backend/dist/cjs/backend/src/volt.js +72 -0
  126. package/backend/dist/cjs/frontend/src/modules/request.d.ts +70 -0
  127. package/backend/dist/cjs/frontend/src/modules/request.js +99 -0
  128. package/backend/dist/cjs/package.json +1 -0
  129. package/backend/dist/esm/backend/src/blacklist.d.ts +12 -0
  130. package/backend/dist/esm/backend/src/blacklist.js +52 -0
  131. package/backend/dist/esm/backend/src/cli.d.ts +2 -0
  132. package/backend/dist/esm/backend/src/cli.js +211 -0
  133. package/backend/dist/esm/backend/src/database/collection.d.ts +1765 -0
  134. package/backend/dist/esm/backend/src/database/collection.js +3779 -0
  135. package/backend/dist/esm/backend/src/database/database.d.ts +92 -0
  136. package/backend/dist/esm/backend/src/database/database.js +214 -0
  137. package/backend/dist/esm/backend/src/database/document.d.ts +1 -0
  138. package/backend/dist/esm/backend/src/database/document.js +558 -0
  139. package/backend/dist/esm/backend/src/database/filters/filters.d.ts +6 -0
  140. package/backend/dist/esm/backend/src/database/filters/filters.js +1 -0
  141. package/backend/dist/esm/backend/src/database/filters/strict_filter.d.ts +223 -0
  142. package/backend/dist/esm/backend/src/database/filters/strict_filter.js +3 -0
  143. package/backend/dist/esm/backend/src/database/filters/strict_filter_test.d.ts +1 -0
  144. package/backend/dist/esm/backend/src/database/filters/strict_filter_test.js +505 -0
  145. package/backend/dist/esm/backend/src/database/filters/strict_filter_test_v0.d.ts +1 -0
  146. package/backend/dist/esm/backend/src/database/filters/strict_filter_test_v0.js +712 -0
  147. package/backend/dist/esm/backend/src/database/filters/strict_filter_v0.d.ts +50 -0
  148. package/backend/dist/esm/backend/src/database/filters/strict_filter_v0.js +5 -0
  149. package/backend/dist/esm/backend/src/database/filters/strict_filter_v1.d.ts +76 -0
  150. package/backend/dist/esm/backend/src/database/filters/strict_filter_v1.js +44 -0
  151. package/backend/dist/esm/backend/src/database/filters/strict_filter_v2.d.ts +75 -0
  152. package/backend/dist/esm/backend/src/database/filters/strict_filter_v2.js +5 -0
  153. package/backend/dist/esm/backend/src/database/filters/strict_filter_v3.d.ts +219 -0
  154. package/backend/dist/esm/backend/src/database/filters/strict_filter_v3.js +1 -0
  155. package/backend/dist/esm/backend/src/database/filters/strict_update_filter.d.ts +165 -0
  156. package/backend/dist/esm/backend/src/database/filters/strict_update_filter.js +5 -0
  157. package/backend/dist/esm/backend/src/database/filters/strict_update_filter_test.d.ts +5 -0
  158. package/backend/dist/esm/backend/src/database/filters/strict_update_filter_test.js +415 -0
  159. package/backend/dist/esm/backend/src/database/flatten.d.ts +78 -0
  160. package/backend/dist/esm/backend/src/database/flatten.js +22 -0
  161. package/backend/dist/esm/backend/src/database/flatten_test.d.ts +1 -0
  162. package/backend/dist/esm/backend/src/database/flatten_test.js +174 -0
  163. package/backend/dist/esm/backend/src/database/quota/quoata_v2.d.ts +533 -0
  164. package/backend/dist/esm/backend/src/database/quota/quoata_v2.js +1155 -0
  165. package/backend/dist/esm/backend/src/database/quota/quota.d.ts +551 -0
  166. package/backend/dist/esm/backend/src/database/quota/quota.js +1219 -0
  167. package/backend/dist/esm/backend/src/database/quota/quota_v1.d.ts +534 -0
  168. package/backend/dist/esm/backend/src/database/quota/quota_v1.js +1242 -0
  169. package/backend/dist/esm/backend/src/database/quota/safe_int.d.ts +412 -0
  170. package/backend/dist/esm/backend/src/database/quota/safe_int.js +810 -0
  171. package/backend/dist/esm/backend/src/endpoint.d.ts +346 -0
  172. package/backend/dist/esm/backend/src/endpoint.js +479 -0
  173. package/backend/dist/esm/backend/src/errors/index.d.ts +7 -0
  174. package/backend/dist/esm/backend/src/errors/index.js +7 -0
  175. package/backend/dist/esm/backend/src/errors/internal_external.d.ts +52 -0
  176. package/backend/dist/esm/backend/src/errors/internal_external.js +86 -0
  177. package/backend/dist/esm/backend/src/errors/invalid_usage_error.d.ts +41 -0
  178. package/backend/dist/esm/backend/src/errors/invalid_usage_error.js +33 -0
  179. package/backend/dist/esm/backend/src/errors/system_error.d.ts +261 -0
  180. package/backend/dist/esm/backend/src/errors/system_error.js +444 -0
  181. package/backend/dist/esm/backend/src/events.d.ts +97 -0
  182. package/backend/dist/esm/backend/src/events.js +5 -0
  183. package/backend/dist/esm/backend/src/frontend.d.ts +13 -0
  184. package/backend/dist/esm/backend/src/frontend.js +23 -0
  185. package/backend/dist/esm/backend/src/image_endpoint.d.ts +44 -0
  186. package/backend/dist/esm/backend/src/image_endpoint.js +196 -0
  187. package/backend/dist/esm/backend/src/index.d.ts +23 -0
  188. package/backend/dist/esm/backend/src/index.js +26 -0
  189. package/backend/dist/esm/backend/src/logger.d.ts +5 -0
  190. package/backend/dist/esm/backend/src/logger.js +8 -0
  191. package/backend/dist/esm/backend/src/meta.d.ts +112 -0
  192. package/backend/dist/esm/backend/src/meta.js +152 -0
  193. package/backend/dist/esm/backend/src/payments/paddle.d.ts +329 -0
  194. package/backend/dist/esm/backend/src/payments/paddle.js +2276 -0
  195. package/backend/dist/esm/backend/src/payments/stripe/checkout.d.ts +113 -0
  196. package/backend/dist/esm/backend/src/payments/stripe/checkout.js +356 -0
  197. package/backend/dist/esm/backend/src/payments/stripe/customers.d.ts +17 -0
  198. package/backend/dist/esm/backend/src/payments/stripe/customers.js +193 -0
  199. package/backend/dist/esm/backend/src/payments/stripe/error.d.ts +74 -0
  200. package/backend/dist/esm/backend/src/payments/stripe/error.js +51 -0
  201. package/backend/dist/esm/backend/src/payments/stripe/events.d.ts +155 -0
  202. package/backend/dist/esm/backend/src/payments/stripe/events.js +5 -0
  203. package/backend/dist/esm/backend/src/payments/stripe/meters.d.ts +105 -0
  204. package/backend/dist/esm/backend/src/payments/stripe/meters.js +318 -0
  205. package/backend/dist/esm/backend/src/payments/stripe/payment_methods.d.ts +58 -0
  206. package/backend/dist/esm/backend/src/payments/stripe/payment_methods.js +135 -0
  207. package/backend/dist/esm/backend/src/payments/stripe/products.d.ts +519 -0
  208. package/backend/dist/esm/backend/src/payments/stripe/products.js +896 -0
  209. package/backend/dist/esm/backend/src/payments/stripe/stripe.d.ts +215 -0
  210. package/backend/dist/esm/backend/src/payments/stripe/stripe.js +464 -0
  211. package/backend/dist/esm/backend/src/payments/stripe/subscriptions.d.ts +172 -0
  212. package/backend/dist/esm/backend/src/payments/stripe/subscriptions.js +754 -0
  213. package/backend/dist/esm/backend/src/payments/stripe/utils.d.ts +63 -0
  214. package/backend/dist/esm/backend/src/payments/stripe/utils.js +131 -0
  215. package/backend/dist/esm/backend/src/payments/stripe/webhooks.d.ts +105 -0
  216. package/backend/dist/esm/backend/src/payments/stripe/webhooks.js +752 -0
  217. package/backend/dist/esm/backend/src/plugins/browser.d.ts +1 -0
  218. package/backend/dist/esm/backend/src/plugins/browser.js +170 -0
  219. package/backend/dist/esm/backend/src/plugins/communication.d.ts +70 -0
  220. package/backend/dist/esm/backend/src/plugins/communication.js +169 -0
  221. package/backend/dist/esm/backend/src/plugins/mail/mail.d.ts +255 -0
  222. package/backend/dist/esm/backend/src/plugins/mail/mail.js +396 -0
  223. package/backend/dist/esm/backend/src/plugins/mail/ui.d.ts +297 -0
  224. package/backend/dist/esm/backend/src/plugins/mail/ui.js +1400 -0
  225. package/backend/dist/esm/backend/src/plugins/pdf.d.ts +1 -0
  226. package/backend/dist/esm/backend/src/plugins/pdf.js +1694 -0
  227. package/backend/dist/esm/backend/src/plugins/thread_monitor.d.ts +18 -0
  228. package/backend/dist/esm/backend/src/plugins/thread_monitor.js +120 -0
  229. package/backend/dist/esm/backend/src/rate_limit.d.ts +148 -0
  230. package/backend/dist/esm/backend/src/rate_limit.js +667 -0
  231. package/backend/dist/esm/backend/src/route.d.ts +39 -0
  232. package/backend/dist/esm/backend/src/route.js +222 -0
  233. package/backend/dist/esm/backend/src/server.d.ts +502 -0
  234. package/backend/dist/esm/backend/src/server.js +2031 -0
  235. package/backend/dist/esm/backend/src/server.old.d.ts +594 -0
  236. package/backend/dist/esm/backend/src/server.old.js +2630 -0
  237. package/backend/dist/esm/backend/src/splash_screen.d.ts +93 -0
  238. package/backend/dist/esm/backend/src/splash_screen.js +156 -0
  239. package/backend/dist/esm/backend/src/status.d.ts +89 -0
  240. package/backend/dist/esm/backend/src/status.js +213 -0
  241. package/backend/dist/esm/backend/src/stream.d.ts +494 -0
  242. package/backend/dist/esm/backend/src/stream.js +1611 -0
  243. package/backend/dist/esm/backend/src/users.d.ts +926 -0
  244. package/backend/dist/esm/backend/src/users.js +2423 -0
  245. package/backend/dist/esm/backend/src/utils.d.ts +22 -0
  246. package/backend/dist/esm/backend/src/utils.js +463 -0
  247. package/backend/dist/esm/backend/src/view.d.ts +115 -0
  248. package/backend/dist/esm/backend/src/view.js +584 -0
  249. package/backend/dist/esm/backend/src/vinc.d.ts +6 -0
  250. package/backend/dist/esm/backend/src/vinc.js +6 -0
  251. package/backend/dist/esm/backend/src/volt.d.ts +24 -0
  252. package/backend/dist/esm/backend/src/volt.js +27 -0
  253. package/backend/dist/esm/frontend/src/modules/request.d.ts +70 -0
  254. package/backend/dist/esm/frontend/src/modules/request.js +117 -0
  255. package/backend/old/file_watcher.ts +359 -0
  256. package/backend/old/request.deprc.js +626 -0
  257. package/backend/old/response.deprc.js +354 -0
  258. package/frontend/dist/backend/src/database/collection.d.ts +1765 -0
  259. package/frontend/dist/backend/src/database/collection.js +3779 -0
  260. package/frontend/dist/backend/src/database/database.d.ts +92 -0
  261. package/frontend/dist/backend/src/database/database.js +214 -0
  262. package/frontend/dist/backend/src/database/filters/filters.d.ts +6 -0
  263. package/frontend/dist/backend/src/database/filters/filters.js +1 -0
  264. package/frontend/dist/backend/src/database/filters/strict_filter.d.ts +223 -0
  265. package/frontend/dist/backend/src/database/filters/strict_filter.js +3 -0
  266. package/frontend/dist/backend/src/database/filters/strict_update_filter.d.ts +165 -0
  267. package/frontend/dist/backend/src/database/filters/strict_update_filter.js +5 -0
  268. package/frontend/dist/backend/src/database/flatten.d.ts +78 -0
  269. package/frontend/dist/backend/src/database/flatten.js +22 -0
  270. package/frontend/dist/backend/src/endpoint.d.ts +346 -0
  271. package/frontend/dist/backend/src/endpoint.js +479 -0
  272. package/frontend/dist/backend/src/errors/index.d.ts +7 -0
  273. package/frontend/dist/backend/src/errors/index.js +7 -0
  274. package/frontend/dist/backend/src/errors/internal_external.d.ts +52 -0
  275. package/frontend/dist/backend/src/errors/internal_external.js +86 -0
  276. package/frontend/dist/backend/src/errors/invalid_usage_error.d.ts +41 -0
  277. package/frontend/dist/backend/src/errors/invalid_usage_error.js +33 -0
  278. package/frontend/dist/backend/src/errors/system_error.d.ts +261 -0
  279. package/frontend/dist/backend/src/errors/system_error.js +444 -0
  280. package/frontend/dist/backend/src/events.d.ts +97 -0
  281. package/frontend/dist/backend/src/events.js +5 -0
  282. package/frontend/dist/backend/src/frontend.d.ts +13 -0
  283. package/frontend/dist/backend/src/frontend.js +23 -0
  284. package/frontend/dist/backend/src/image_endpoint.d.ts +44 -0
  285. package/frontend/dist/backend/src/image_endpoint.js +196 -0
  286. package/frontend/dist/backend/src/meta.d.ts +112 -0
  287. package/frontend/dist/backend/src/meta.js +152 -0
  288. package/frontend/dist/backend/src/payments/paddle.d.ts +329 -0
  289. package/frontend/dist/backend/src/payments/paddle.js +2276 -0
  290. package/frontend/dist/backend/src/payments/stripe/checkout.d.ts +113 -0
  291. package/frontend/dist/backend/src/payments/stripe/checkout.js +356 -0
  292. package/frontend/dist/backend/src/payments/stripe/customers.d.ts +17 -0
  293. package/frontend/dist/backend/src/payments/stripe/customers.js +193 -0
  294. package/frontend/dist/backend/src/payments/stripe/error.d.ts +74 -0
  295. package/frontend/dist/backend/src/payments/stripe/error.js +51 -0
  296. package/frontend/dist/backend/src/payments/stripe/events.d.ts +155 -0
  297. package/frontend/dist/backend/src/payments/stripe/events.js +5 -0
  298. package/frontend/dist/backend/src/payments/stripe/meters.d.ts +105 -0
  299. package/frontend/dist/backend/src/payments/stripe/meters.js +318 -0
  300. package/frontend/dist/backend/src/payments/stripe/payment_methods.d.ts +58 -0
  301. package/frontend/dist/backend/src/payments/stripe/payment_methods.js +135 -0
  302. package/frontend/dist/backend/src/payments/stripe/products.d.ts +519 -0
  303. package/frontend/dist/backend/src/payments/stripe/products.js +896 -0
  304. package/frontend/dist/backend/src/payments/stripe/stripe.d.ts +215 -0
  305. package/frontend/dist/backend/src/payments/stripe/stripe.js +464 -0
  306. package/frontend/dist/backend/src/payments/stripe/subscriptions.d.ts +172 -0
  307. package/frontend/dist/backend/src/payments/stripe/subscriptions.js +754 -0
  308. package/frontend/dist/backend/src/payments/stripe/utils.d.ts +63 -0
  309. package/frontend/dist/backend/src/payments/stripe/utils.js +131 -0
  310. package/frontend/dist/backend/src/payments/stripe/webhooks.d.ts +105 -0
  311. package/frontend/dist/backend/src/payments/stripe/webhooks.js +752 -0
  312. package/frontend/dist/backend/src/plugins/mail/mail.d.ts +255 -0
  313. package/frontend/dist/backend/src/plugins/mail/mail.js +396 -0
  314. package/frontend/dist/backend/src/plugins/mail/ui.d.ts +297 -0
  315. package/frontend/dist/backend/src/plugins/mail/ui.js +1400 -0
  316. package/frontend/dist/backend/src/rate_limit.d.ts +148 -0
  317. package/frontend/dist/backend/src/rate_limit.js +667 -0
  318. package/frontend/dist/backend/src/route.d.ts +39 -0
  319. package/frontend/dist/backend/src/route.js +222 -0
  320. package/frontend/dist/backend/src/server.d.ts +502 -0
  321. package/frontend/dist/backend/src/server.js +2031 -0
  322. package/frontend/dist/backend/src/splash_screen.d.ts +93 -0
  323. package/frontend/dist/backend/src/splash_screen.js +156 -0
  324. package/frontend/dist/backend/src/status.d.ts +89 -0
  325. package/frontend/dist/backend/src/status.js +213 -0
  326. package/frontend/dist/backend/src/stream.d.ts +494 -0
  327. package/frontend/dist/backend/src/stream.js +1611 -0
  328. package/frontend/dist/backend/src/users.d.ts +926 -0
  329. package/frontend/dist/backend/src/users.js +2423 -0
  330. package/frontend/dist/backend/src/utils.d.ts +22 -0
  331. package/frontend/dist/backend/src/utils.js +463 -0
  332. package/frontend/dist/backend/src/view.d.ts +115 -0
  333. package/frontend/dist/backend/src/view.js +584 -0
  334. package/frontend/dist/frontend/src/css/adyen.css +92 -0
  335. package/frontend/dist/frontend/src/css/volt.css +75 -0
  336. package/frontend/dist/frontend/src/elements/base.d.ts +3743 -0
  337. package/frontend/dist/frontend/src/elements/base.js +12151 -0
  338. package/frontend/dist/frontend/src/elements/module.d.ts +95 -0
  339. package/frontend/dist/frontend/src/elements/module.js +216 -0
  340. package/frontend/dist/frontend/src/elements/register_element.d.ts +3 -0
  341. package/frontend/dist/frontend/src/elements/register_element.js +22 -0
  342. package/frontend/dist/frontend/src/elements/resize_query_manager.d.ts +0 -0
  343. package/frontend/dist/frontend/src/elements/resize_query_manager.js +150 -0
  344. package/frontend/dist/frontend/src/elements/types.d.ts +52 -0
  345. package/frontend/dist/frontend/src/elements/types.js +5 -0
  346. package/frontend/dist/frontend/src/index.d.ts +21 -0
  347. package/frontend/dist/frontend/src/index.js +29 -0
  348. package/frontend/dist/frontend/src/modules/attachment.d.ts +126 -0
  349. package/frontend/dist/frontend/src/modules/attachment.js +306 -0
  350. package/frontend/dist/frontend/src/modules/auth.d.ts +44 -0
  351. package/frontend/dist/frontend/src/modules/auth.js +80 -0
  352. package/frontend/dist/frontend/src/modules/color.d.ts +160 -0
  353. package/frontend/dist/frontend/src/modules/color.js +316 -0
  354. package/frontend/dist/frontend/src/modules/compression.d.ts +39 -0
  355. package/frontend/dist/frontend/src/modules/compression.js +102 -0
  356. package/frontend/dist/frontend/src/modules/cookies.d.ts +44 -0
  357. package/frontend/dist/frontend/src/modules/cookies.js +143 -0
  358. package/frontend/dist/frontend/src/modules/events.d.ts +31 -0
  359. package/frontend/dist/frontend/src/modules/events.js +79 -0
  360. package/frontend/dist/frontend/src/modules/google.d.ts +23 -0
  361. package/frontend/dist/frontend/src/modules/google.js +52 -0
  362. package/frontend/dist/frontend/src/modules/meta.d.ts +14 -0
  363. package/frontend/dist/frontend/src/modules/meta.js +48 -0
  364. package/frontend/dist/frontend/src/modules/paddle.d.ts +1207 -0
  365. package/frontend/dist/frontend/src/modules/paddle.js +2594 -0
  366. package/frontend/dist/frontend/src/modules/request.d.ts +70 -0
  367. package/frontend/dist/frontend/src/modules/request.js +117 -0
  368. package/frontend/dist/frontend/src/modules/settings.d.ts +3 -0
  369. package/frontend/dist/frontend/src/modules/settings.js +5 -0
  370. package/frontend/dist/frontend/src/modules/statics.d.ts +21 -0
  371. package/frontend/dist/frontend/src/modules/statics.js +43 -0
  372. package/frontend/dist/frontend/src/modules/stripe/cart.d.ts +112 -0
  373. package/frontend/dist/frontend/src/modules/stripe/cart.js +321 -0
  374. package/frontend/dist/frontend/src/modules/stripe/checkout.d.ts +7 -0
  375. package/frontend/dist/frontend/src/modules/stripe/checkout.js +37 -0
  376. package/frontend/dist/frontend/src/modules/stripe/index.m.d.ts +6 -0
  377. package/frontend/dist/frontend/src/modules/stripe/index.m.js +6 -0
  378. package/frontend/dist/frontend/src/modules/stripe/payments.d.ts +58 -0
  379. package/frontend/dist/frontend/src/modules/stripe/payments.js +92 -0
  380. package/frontend/dist/frontend/src/modules/support.d.ts +30 -0
  381. package/frontend/dist/frontend/src/modules/support.js +53 -0
  382. package/frontend/dist/frontend/src/modules/theme.d.ts +133 -0
  383. package/frontend/dist/frontend/src/modules/theme.js +406 -0
  384. package/frontend/dist/frontend/src/modules/themes.d.ts +12 -0
  385. package/frontend/dist/frontend/src/modules/themes.js +22 -0
  386. package/frontend/dist/frontend/src/modules/user.d.ts +164 -0
  387. package/frontend/dist/frontend/src/modules/user.js +270 -0
  388. package/frontend/dist/frontend/src/modules/utils.d.ts +176 -0
  389. package/frontend/dist/frontend/src/modules/utils.js +569 -0
  390. package/frontend/dist/frontend/src/types/gradient.d.ts +29 -0
  391. package/frontend/dist/frontend/src/types/gradient.js +79 -0
  392. package/frontend/dist/frontend/src/ui/border_button.d.ts +94 -0
  393. package/frontend/dist/frontend/src/ui/border_button.js +228 -0
  394. package/frontend/dist/frontend/src/ui/button.d.ts +241 -0
  395. package/frontend/dist/frontend/src/ui/button.js +682 -0
  396. package/frontend/dist/frontend/src/ui/canvas.d.ts +138 -0
  397. package/frontend/dist/frontend/src/ui/canvas.js +444 -0
  398. package/frontend/dist/frontend/src/ui/checkbox.d.ts +74 -0
  399. package/frontend/dist/frontend/src/ui/checkbox.js +321 -0
  400. package/frontend/dist/frontend/src/ui/code.d.ts +235 -0
  401. package/frontend/dist/frontend/src/ui/code.js +1007 -0
  402. package/frontend/dist/frontend/src/ui/context_menu.d.ts +36 -0
  403. package/frontend/dist/frontend/src/ui/context_menu.js +205 -0
  404. package/frontend/dist/frontend/src/ui/css.d.ts +16 -0
  405. package/frontend/dist/frontend/src/ui/css.js +48 -0
  406. package/frontend/dist/frontend/src/ui/divider.d.ts +15 -0
  407. package/frontend/dist/frontend/src/ui/divider.js +78 -0
  408. package/frontend/dist/frontend/src/ui/dropdown.d.ts +176 -0
  409. package/frontend/dist/frontend/src/ui/dropdown.js +481 -0
  410. package/frontend/dist/frontend/src/ui/for_each.d.ts +37 -0
  411. package/frontend/dist/frontend/src/ui/for_each.js +92 -0
  412. package/frontend/dist/frontend/src/ui/form.d.ts +34 -0
  413. package/frontend/dist/frontend/src/ui/form.js +233 -0
  414. package/frontend/dist/frontend/src/ui/frame_modes.d.ts +37 -0
  415. package/frontend/dist/frontend/src/ui/frame_modes.js +108 -0
  416. package/frontend/dist/frontend/src/ui/google_map.d.ts +24 -0
  417. package/frontend/dist/frontend/src/ui/google_map.js +106 -0
  418. package/frontend/dist/frontend/src/ui/gradient.d.ts +25 -0
  419. package/frontend/dist/frontend/src/ui/gradient.js +131 -0
  420. package/frontend/dist/frontend/src/ui/image.d.ts +111 -0
  421. package/frontend/dist/frontend/src/ui/image.js +576 -0
  422. package/frontend/dist/frontend/src/ui/input.d.ts +392 -0
  423. package/frontend/dist/frontend/src/ui/input.js +1201 -0
  424. package/frontend/dist/frontend/src/ui/link.d.ts +25 -0
  425. package/frontend/dist/frontend/src/ui/link.js +140 -0
  426. package/frontend/dist/frontend/src/ui/list.d.ts +37 -0
  427. package/frontend/dist/frontend/src/ui/list.js +170 -0
  428. package/frontend/dist/frontend/src/ui/loader_button.d.ts +80 -0
  429. package/frontend/dist/frontend/src/ui/loader_button.js +193 -0
  430. package/frontend/dist/frontend/src/ui/loaders.d.ts +57 -0
  431. package/frontend/dist/frontend/src/ui/loaders.js +157 -0
  432. package/frontend/dist/frontend/src/ui/popup.d.ts +94 -0
  433. package/frontend/dist/frontend/src/ui/popup.js +510 -0
  434. package/frontend/dist/frontend/src/ui/pseudo.d.ts +44 -0
  435. package/frontend/dist/frontend/src/ui/pseudo.js +154 -0
  436. package/frontend/dist/frontend/src/ui/scroller.d.ts +105 -0
  437. package/frontend/dist/frontend/src/ui/scroller.js +1253 -0
  438. package/frontend/dist/frontend/src/ui/slider.d.ts +45 -0
  439. package/frontend/dist/frontend/src/ui/slider.js +217 -0
  440. package/frontend/dist/frontend/src/ui/spacer.d.ts +15 -0
  441. package/frontend/dist/frontend/src/ui/spacer.js +78 -0
  442. package/frontend/dist/frontend/src/ui/span.d.ts +15 -0
  443. package/frontend/dist/frontend/src/ui/span.js +73 -0
  444. package/frontend/dist/frontend/src/ui/stack.d.ts +66 -0
  445. package/frontend/dist/frontend/src/ui/stack.js +335 -0
  446. package/frontend/dist/frontend/src/ui/steps.d.ts +131 -0
  447. package/frontend/dist/frontend/src/ui/steps.js +308 -0
  448. package/frontend/dist/frontend/src/ui/style.d.ts +17 -0
  449. package/frontend/dist/frontend/src/ui/style.js +73 -0
  450. package/frontend/dist/frontend/src/ui/switch.d.ts +69 -0
  451. package/frontend/dist/frontend/src/ui/switch.js +357 -0
  452. package/frontend/dist/frontend/src/ui/table.d.ts +100 -0
  453. package/frontend/dist/frontend/src/ui/table.js +405 -0
  454. package/frontend/dist/frontend/src/ui/tabs.d.ts +111 -0
  455. package/frontend/dist/frontend/src/ui/tabs.js +424 -0
  456. package/frontend/dist/frontend/src/ui/text.d.ts +15 -0
  457. package/frontend/dist/frontend/src/ui/text.js +83 -0
  458. package/frontend/dist/frontend/src/ui/title.d.ts +91 -0
  459. package/frontend/dist/frontend/src/ui/title.js +272 -0
  460. package/frontend/dist/frontend/src/ui/ui.d.ts +35 -0
  461. package/frontend/dist/frontend/src/ui/ui.js +38 -0
  462. package/frontend/dist/frontend/src/ui/view.d.ts +15 -0
  463. package/frontend/dist/frontend/src/ui/view.js +88 -0
  464. package/frontend/dist/frontend/src/volt.d.ts +20 -0
  465. package/frontend/dist/frontend/src/volt.js +27 -0
  466. package/frontend/examples/theme/theme.ts +58 -0
  467. package/frontend/tools/bundle_d_ts.js +71 -0
  468. package/frontend/tools/convert_to_jsdoc_input.txt +9452 -0
  469. package/frontend/tools/convert_to_jsdoc_output.txt +7626 -0
  470. package/frontend/tools/convert_to_jsdoc_tmp.js +345 -0
  471. package/frontend/tools/scan_mixed_imports.js +69 -0
  472. package/package.json +1 -5
@@ -0,0 +1,468 @@
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 stdin_exports = {};
29
+ __export(stdin_exports, {
30
+ Endpoint: () => Endpoint
31
+ });
32
+ module.exports = __toCommonJS(stdin_exports);
33
+ var import_view = require("./view.js");
34
+ var vlib = __toESM(require("@vandenberghinc/vlib"));
35
+ var import_internal_external = require("./errors/internal_external.js");
36
+ var import_status = require("./status.js");
37
+ var import_rate_limit = require("./rate_limit.js");
38
+ var import_route = require("./route.js");
39
+ var import_meta = __toESM(require("./meta.js"));
40
+ var import_utils = require("./utils.js");
41
+ const { debug } = vlib;
42
+ class Endpoint {
43
+ /** Route attributes */
44
+ id;
45
+ route;
46
+ /** Requires authentication */
47
+ authenticated;
48
+ /** Parameter scheme validator */
49
+ params_validator;
50
+ params_schema;
51
+ allow_unknown_params;
52
+ /** The default response headers */
53
+ headers;
54
+ /** Option 2) View based endpoint */
55
+ view;
56
+ /** Option 3) Data endpoint, raw */
57
+ data;
58
+ raw_data;
59
+ /** Option 4 Data endpoint by file path. */
60
+ file_path;
61
+ /** Content length & type */
62
+ content_type;
63
+ /** Booleans */
64
+ is_static;
65
+ is_image_endpoint = false;
66
+ allow_sitemap;
67
+ allow_robots;
68
+ /** Rate limit groups for internal use. */
69
+ rate_limit_groups;
70
+ /** Private attributes */
71
+ _compress;
72
+ _cache;
73
+ ip_whitelist;
74
+ // private _is_compressed?: boolean;
75
+ _dynamic_initialized = false;
76
+ /** A reference to the server. */
77
+ server;
78
+ /**
79
+ * Clone this endpoint, used to create a modified copy of the current endpoint.
80
+ * @param override Override specific endpoint options, note that this will be shallow merged.
81
+ *
82
+ * @docs
83
+ */
84
+ static clone(endpoint, override) {
85
+ return new Endpoint({
86
+ ...vlib.Object.deep_copy({
87
+ method: endpoint.route.method,
88
+ endpoint: endpoint.route.endpoint,
89
+ authenticated: endpoint.authenticated,
90
+ rate_limit: endpoint.rate_limit_groups,
91
+ params: endpoint.params_schema,
92
+ compress: endpoint._compress,
93
+ cache: endpoint._cache,
94
+ ip_whitelist: endpoint.ip_whitelist,
95
+ sitemap: endpoint.allow_sitemap,
96
+ robots: endpoint.allow_robots,
97
+ allow_unknown_params: endpoint.allow_unknown_params,
98
+ _is_static: endpoint.is_static,
99
+ data: endpoint.data,
100
+ file_path: endpoint.file_path,
101
+ content_type: endpoint.content_type,
102
+ callback: endpoint.callback
103
+ }),
104
+ view: endpoint.view?.clone(),
105
+ ...override
106
+ });
107
+ }
108
+ /**
109
+ * Static function to create a very strict method.
110
+ * This is a utility type that can be used when defining frontend `Request.Info` types.
111
+ * With this function we can enforce that the method matches the method defined in the `Request.Info` type,
112
+ * which can be useful to prevent mistakes when defining endpoints.
113
+ *
114
+ * @example
115
+ * {Create Strict Endpoint}
116
+ * Create a strict endpoint based on a frontend request info type.
117
+ * If there are any mismatches between the defined method,
118
+ * endpoint or result data with the `Request.Info` type,
119
+ * a TypeScript compile-time error will be thrown.
120
+ *
121
+ * ```ts
122
+ * import { Request } from "@vandenberghinc/volt/frontend";
123
+ * import * as volt from "@vandenberghinc/volt";
124
+ *
125
+ * type MyRequestInfo = Request.Info<
126
+ * "POST", // method
127
+ * "/api/my-endpoint", // endpoint
128
+ * { id: string } // params
129
+ * { name: string } // result
130
+ * undefined // error
131
+ * >;
132
+ *
133
+ * server.endpoint({
134
+ * method: volt.Endpoint.method<MyRequestInfo>("POST"),
135
+ * endpoint: volt.Endpoint.endpoint<MyRequestInfo>("/api/my-endpoint"),
136
+ * params: { id: "string" },
137
+ * callback: async (stream, params) => {
138
+ * // Send a success response.
139
+ * stream.send<MyRequestInfo["result"]>({
140
+ * status: 200,
141
+ * data: { name: "John Doe" },
142
+ * });
143
+ *. },
144
+ * })
145
+ * ```
146
+ */
147
+ static method(method) {
148
+ return method;
149
+ }
150
+ /**
151
+ * Static function to create a very strict endpoint.
152
+ * This is a utility type that can be used when defining frontend `Request.Info` types.
153
+ * With this function we can enforce that the endpoint matches the endpoint defined in the `Request.Info` type,
154
+ * which can be useful to prevent mistakes when defining endpoints.
155
+ *
156
+ * @example
157
+ * {Create Strict Endpoint}
158
+ * Create a strict endpoint based on a frontend request info type.
159
+ * If there are any mismatches between the defined method,
160
+ * endpoint or result data with the `Request.Info` type,
161
+ * a TypeScript compile-time error will be thrown.
162
+ *
163
+ * ```ts
164
+ * import { Request } from "@vandenberghinc/volt/frontend";
165
+ * import * as volt from "@vandenberghinc/volt";
166
+ *
167
+ * type MyRequestInfo = Request.Info<
168
+ * "POST", // method
169
+ * "/api/my-endpoint", // endpoint
170
+ * { id: string } // params
171
+ * { name: string } // result
172
+ * undefined // error
173
+ * >;
174
+ *
175
+ * server.endpoint({
176
+ * method: volt.Endpoint.method<MyRequestInfo>("POST"),
177
+ * endpoint: volt.Endpoint.endpoint<MyRequestInfo>("/api/my-endpoint"),
178
+ * params: { id: "string" },
179
+ * callback: async (stream, params) => {
180
+ * // Send a success response.
181
+ * stream.send<MyRequestInfo["result"]>({
182
+ * status: 200,
183
+ * data: { name: "John Doe" },
184
+ * });
185
+ *. },
186
+ * })
187
+ * ```
188
+ */
189
+ static endpoint(endpoint) {
190
+ return endpoint;
191
+ }
192
+ /**
193
+ * Construct an endpoint.
194
+ * @docs
195
+ */
196
+ constructor({
197
+ method,
198
+ endpoint,
199
+ authenticated = false,
200
+ rate_limit = void 0,
201
+ params = void 0,
202
+ compress = true,
203
+ cache = true,
204
+ ip_whitelist = void 0,
205
+ sitemap = void 0,
206
+ robots = void 0,
207
+ allow_unknown_params = false,
208
+ _is_static = false,
209
+ // mode options.
210
+ callback = void 0,
211
+ view = void 0,
212
+ data = void 0,
213
+ file_path = void 0,
214
+ content_type
215
+ // = "text/plain",
216
+ }) {
217
+ this.route = new import_route.Route(method ?? "GET", endpoint);
218
+ this.id = this.route.id;
219
+ this.authenticated = authenticated;
220
+ if (this.callback === void 0) {
221
+ this.callback = callback;
222
+ }
223
+ this.data = data;
224
+ this.content_type = content_type;
225
+ this._cache = cache;
226
+ this.allow_sitemap = sitemap ?? true;
227
+ this.allow_robots = robots ?? true;
228
+ this.file_path = file_path == null ? file_path : new vlib.Path(file_path).abs();
229
+ this.ip_whitelist = Array.isArray(ip_whitelist) ? ip_whitelist : void 0;
230
+ this.is_static = _is_static;
231
+ this.headers = [];
232
+ this.params_schema = params;
233
+ this.allow_unknown_params = allow_unknown_params;
234
+ if (typeof endpoint === "string") {
235
+ ["\n", ","].forEach((c) => {
236
+ if (endpoint.indexOf(c) !== -1) {
237
+ throw Error('The "," character is not allowed inside an endpoint url.');
238
+ }
239
+ });
240
+ }
241
+ if (view == null) {
242
+ this.view = void 0;
243
+ } else if (view instanceof import_view.View) {
244
+ this.view = view;
245
+ } else {
246
+ this.view = new import_view.View(view);
247
+ }
248
+ if (this.file_path != null && this.content_type == null) {
249
+ this.content_type = import_utils.Utils.mime_type(this.file_path.extension()) ?? "application/octet-stream";
250
+ } else if (this.view != null) {
251
+ this.content_type = "text/html";
252
+ }
253
+ if (compress === false) {
254
+ this._compress = false;
255
+ } else if (this.file_path) {
256
+ this._compress = !(import_utils.Utils.is_compressed_extension(this.file_path.extension()) ?? false);
257
+ } else if (this.content_type != null) {
258
+ this._compress = !import_utils.Utils.is_compressed_content_type(this.content_type);
259
+ } else {
260
+ this._compress = true;
261
+ }
262
+ if (this.allow_sitemap == null) {
263
+ if (this.view != null && this.route.endpoint != "robots.txt" && this.route.endpoint != "sitemap.xml" && !this.authenticated) {
264
+ this.allow_sitemap = true;
265
+ } else {
266
+ this.allow_sitemap = false;
267
+ }
268
+ }
269
+ if (this.allow_robots == null) {
270
+ this.allow_robots = !this.authenticated && (this.view != null || this.route.endpoint == "robots.txt" || this.route.endpoint == "sitemap.xml");
271
+ }
272
+ this.rate_limit_groups = [];
273
+ if (Array.isArray(rate_limit)) {
274
+ rate_limit.forEach((item) => {
275
+ if (typeof item === "string") {
276
+ const group = import_rate_limit.RateLimits.groups.get(item);
277
+ if (!group)
278
+ throw new Error(`Rate limit group "${item}" does not exist.`);
279
+ this.rate_limit_groups.push(group);
280
+ } else {
281
+ this.rate_limit_groups.push(import_rate_limit.RateLimits.add(item));
282
+ }
283
+ });
284
+ } else if (typeof rate_limit === "string") {
285
+ const group = import_rate_limit.RateLimits.groups.get(rate_limit);
286
+ if (!group)
287
+ throw new Error(`Rate limit group "${rate_limit}" does not exist.`);
288
+ this.rate_limit_groups.push(group);
289
+ } else if (typeof rate_limit === "object" && rate_limit != null) {
290
+ this.rate_limit_groups.push(import_rate_limit.RateLimits.add(rate_limit));
291
+ }
292
+ let params_scheme = params;
293
+ if (this.route.params.length > 0) {
294
+ params_scheme ??= {};
295
+ this.route.params.forEach((item) => {
296
+ if (params_scheme[item.name] == null) {
297
+ params_scheme[item.name] = {
298
+ type: "string",
299
+ required: item.required ?? true,
300
+ allow_empty: false
301
+ };
302
+ }
303
+ });
304
+ }
305
+ if (params_scheme != null) {
306
+ this.params_validator = new vlib.Schema.Validator({
307
+ schema: params_scheme,
308
+ unknown: allow_unknown_params,
309
+ parent: this.route.id + ":",
310
+ throw: false
311
+ });
312
+ }
313
+ }
314
+ /**
315
+ * Serve this endpoint manually from a stream.
316
+ * This can for instance be used to serve a HTML `/error` endpoint from within a callback.
317
+ * @docs
318
+ */
319
+ async serve({ stream, status: status_code = 200, templates }) {
320
+ if (!this._dynamic_initialized) {
321
+ await this._dynamic_initialize();
322
+ }
323
+ try {
324
+ if (this.ip_whitelist && !this.ip_whitelist.includes(stream.ip)) {
325
+ this.server?.log(2, this.route.id, ": ", "Blocking ip ", stream.ip, " per ip whitelist.");
326
+ stream.send({
327
+ status: import_status.Status.unauthorized,
328
+ data: "Unauthorized."
329
+ });
330
+ return;
331
+ }
332
+ this._set_headers(stream);
333
+ if (this.callback != null) {
334
+ this.server?.log(3, this.route.id, ": ", "Serving endpoint in callback mode.");
335
+ if (this.params_validator != null) {
336
+ const { error, invalid_fields } = this.params_validator.validate(stream.params ?? {});
337
+ if (error) {
338
+ stream.send({
339
+ status: import_status.Status.bad_request,
340
+ headers: { "Content-Type": "application/json" },
341
+ data: {
342
+ error,
343
+ invalid_fields
344
+ }
345
+ });
346
+ return;
347
+ }
348
+ }
349
+ try {
350
+ if (this.params_validator != null) {
351
+ await this.callback(stream, stream.params ?? {});
352
+ } else {
353
+ await this.callback(stream, {});
354
+ }
355
+ } catch (err) {
356
+ if (err instanceof import_internal_external.ExternalError || err instanceof import_internal_external.InternalError) {
357
+ err.serve(stream);
358
+ } else {
359
+ stream.error({
360
+ status: import_status.Status.internal_server_error,
361
+ headers: { "Content-Type": "application/json" },
362
+ message: "Internal Server Error",
363
+ type: "InternalServerError"
364
+ });
365
+ }
366
+ this.server?.log.error(`${this.id}: `, err);
367
+ }
368
+ return;
369
+ } else if (this.view != null) {
370
+ this.server?.log(3, this.route.id, ": ", "Serving endpoint in view mode.");
371
+ await this.view._serve(stream, status_code, { compress: this._compress, templates });
372
+ return;
373
+ } else if (this.file_path != null) {
374
+ this.server?.log(3, this.route.id, ": ", "Serving endpoint in file mode.");
375
+ stream.send({
376
+ status: status_code,
377
+ from_file: this.file_path,
378
+ compress: this._compress,
379
+ templates
380
+ });
381
+ return;
382
+ } else if (this.data != null) {
383
+ this.server?.log(3, this.route.id, ": ", "Serving endpoint in data mode.");
384
+ stream.send({
385
+ status: status_code,
386
+ data: this.data,
387
+ compress: this._compress,
388
+ templates
389
+ });
390
+ return;
391
+ } else {
392
+ throw new Error(`${this.id}: Undefined behaviour, define one of the following endpoint attributes [callback, view, data].`);
393
+ }
394
+ } catch (err) {
395
+ throw err;
396
+ }
397
+ }
398
+ // ----------------------------------------------------------
399
+ // System methods.
400
+ /** Initialize with server. */
401
+ _initialize(server) {
402
+ if (this.server != null) {
403
+ return this;
404
+ }
405
+ this.server = server;
406
+ if (this.view != null) {
407
+ this.view.initialize(server, this);
408
+ }
409
+ if (this.view != null) {
410
+ if (this.view.meta == null) {
411
+ this.view.meta = server.meta.copy();
412
+ } else if (typeof this.view.meta === "object" && !(this.view.meta instanceof import_meta.default)) {
413
+ this.view.meta = new import_meta.default(this.view.meta);
414
+ }
415
+ }
416
+ return this;
417
+ }
418
+ // Initialize.
419
+ async _dynamic_initialize() {
420
+ if (!this.server) {
421
+ throw new Error(`Endpoint "${this.id}" is not initialized by the server yet.`);
422
+ }
423
+ if (!this.server.production) {
424
+ this._cache = false;
425
+ }
426
+ if (typeof this._cache === "number" || this._cache === true) {
427
+ if (this._cache === 1 || this._cache === true) {
428
+ this.headers.push(["Cache-Control", "max-age=86400"]);
429
+ } else {
430
+ this.headers.push(["Cache-Control", `max-age=${this._cache}`]);
431
+ }
432
+ }
433
+ if (this.content_type != null) {
434
+ this.headers.push(["Content-Type", this.content_type]);
435
+ }
436
+ this._dynamic_initialized = true;
437
+ }
438
+ // Set default headers.
439
+ _set_headers(stream) {
440
+ this.headers.forEach((item) => {
441
+ stream.set_header(item[0], item[1]);
442
+ });
443
+ }
444
+ // Serve a client.
445
+ async _serve_options(stream) {
446
+ if (!this._dynamic_initialized) {
447
+ await this._dynamic_initialize();
448
+ }
449
+ try {
450
+ if (this.ip_whitelist && !this.ip_whitelist.includes(stream.ip)) {
451
+ stream.error({
452
+ status: import_status.Status.unauthorized,
453
+ type: "Unauthorized",
454
+ message: "Unauthorized."
455
+ });
456
+ return;
457
+ }
458
+ this._set_headers(stream);
459
+ stream.send({ status: import_status.Status.no_content });
460
+ } catch (err) {
461
+ throw err;
462
+ }
463
+ }
464
+ }
465
+ // Annotate the CommonJS export names for ESM import in node:
466
+ 0 && (module.exports = {
467
+ Endpoint
468
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @author Daan van den Bergh
3
+ * @copyright © 2022 - 2025 Daan van den Bergh.
4
+ */
5
+ export * from './invalid_usage_error.js';
6
+ export * from './system_error.js';
7
+ export * from './internal_external.js';
@@ -0,0 +1,25 @@
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 stdin_exports = {};
16
+ module.exports = __toCommonJS(stdin_exports);
17
+ __reExport(stdin_exports, require("./invalid_usage_error.js"), module.exports);
18
+ __reExport(stdin_exports, require("./system_error.js"), module.exports);
19
+ __reExport(stdin_exports, require("./internal_external.js"), module.exports);
20
+ // Annotate the CommonJS export names for ESM import in node:
21
+ 0 && (module.exports = {
22
+ ...require("./invalid_usage_error.js"),
23
+ ...require("./system_error.js"),
24
+ ...require("./internal_external.js")
25
+ });
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @author Daan van den Bergh
3
+ * @copyright © 2022 - 2025 Daan van den Bergh.
4
+ */
5
+ import type { Stream } from "../stream.js";
6
+ /**
7
+ * The base class for internal and external errors.
8
+ */
9
+ declare class BaseError extends Error {
10
+ type: string;
11
+ status: number;
12
+ data?: any[] | Record<string, any>;
13
+ invalid_fields: Record<string, string>;
14
+ constructor({ type, message, status, data, invalid_fields, cause }: {
15
+ message: string;
16
+ type?: string;
17
+ status?: number;
18
+ data?: any[] | Record<string, any>;
19
+ invalid_fields?: Record<string, string>;
20
+ cause?: unknown;
21
+ });
22
+ serve(stream: Stream): this;
23
+ }
24
+ /**
25
+ * Thrown internal errors are not presented to the user, instead an internal server error message is shown.
26
+ *
27
+ * @nav Errors
28
+ * @docs
29
+ */
30
+ export declare class InternalError extends BaseError {
31
+ constructor(args: ConstructorParameters<typeof BaseError>[0]);
32
+ /**
33
+ * Serve a generic internal server error response.
34
+ * @docs
35
+ */
36
+ serve(stream: Stream): this;
37
+ }
38
+ /**
39
+ * Thrown external errors are presented to the user when caused inside a request context.
40
+ *
41
+ * @nav Errors
42
+ * @docs
43
+ */
44
+ export declare class ExternalError extends BaseError {
45
+ constructor(args: ConstructorParameters<typeof BaseError>[0]);
46
+ /**
47
+ * Serve the external error response.
48
+ * @docs
49
+ */
50
+ serve(stream: Stream): this;
51
+ }
52
+ export {};
@@ -0,0 +1,95 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var stdin_exports = {};
19
+ __export(stdin_exports, {
20
+ ExternalError: () => ExternalError,
21
+ InternalError: () => InternalError
22
+ });
23
+ module.exports = __toCommonJS(stdin_exports);
24
+ var import_status = require("../status.js");
25
+ class BaseError extends Error {
26
+ type;
27
+ status;
28
+ data;
29
+ invalid_fields;
30
+ constructor({ type = "BaseError", message, status, data, invalid_fields, cause }) {
31
+ super(message);
32
+ this.name = "BaseError";
33
+ this.type = type;
34
+ this.status = status ?? import_status.Status.internal_server_error;
35
+ this.data = data;
36
+ this.invalid_fields = invalid_fields ?? {};
37
+ this.cause = cause;
38
+ }
39
+ serve(stream) {
40
+ stream.error({
41
+ status: this.status ?? import_status.Status.internal_server_error,
42
+ headers: { "Content-Type": "application/json" },
43
+ message: this.message,
44
+ type: this.type,
45
+ invalid_fields: this.invalid_fields
46
+ });
47
+ return this;
48
+ }
49
+ }
50
+ class InternalError extends BaseError {
51
+ constructor(args) {
52
+ args.type ??= "InternalError";
53
+ super(args);
54
+ this.name = "InternalError";
55
+ }
56
+ /**
57
+ * Serve a generic internal server error response.
58
+ * @docs
59
+ */
60
+ serve(stream) {
61
+ stream.error({
62
+ status: import_status.Status.internal_server_error,
63
+ headers: { "Content-Type": "application/json" },
64
+ message: "Internal Server Error",
65
+ type: "InternalServerError"
66
+ });
67
+ return this;
68
+ }
69
+ }
70
+ class ExternalError extends BaseError {
71
+ constructor(args) {
72
+ args.type ??= "ExternalError";
73
+ super(args);
74
+ this.name = "ExternalError";
75
+ }
76
+ /**
77
+ * Serve the external error response.
78
+ * @docs
79
+ */
80
+ serve(stream) {
81
+ stream.error({
82
+ status: this.status ?? import_status.Status.internal_server_error,
83
+ headers: { "Content-Type": "application/json" },
84
+ message: this.message,
85
+ type: this.type,
86
+ invalid_fields: this.invalid_fields
87
+ });
88
+ return this;
89
+ }
90
+ }
91
+ // Annotate the CommonJS export names for ESM import in node:
92
+ 0 && (module.exports = {
93
+ ExternalError,
94
+ InternalError
95
+ });
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @author Daan van den Bergh
3
+ * @copyright © 2022 - 2025 Daan van den Bergh.
4
+ */
5
+ /**
6
+ * An invalid usage error.
7
+ * This only extends the base Error class.
8
+ * By default this class will be shown as an internal server error when caused inside an endpoint callback.
9
+ *
10
+ * @nav Errors
11
+ * @docs
12
+ */
13
+ export declare class InvalidUsageError extends Error {
14
+ /**
15
+ * The reason code for the invalid usage error, e.g. `bad_ttl`
16
+ * or `invalid_filter`.
17
+ *
18
+ * Could be used to detect specific issues with the request,
19
+ */
20
+ reason?: string;
21
+ /** The optional param/attr/field that was invalid. */
22
+ field?: string;
23
+ /** An optional error that caused the invalid usage error. */
24
+ cause?: unknown;
25
+ /** Construct an invalid usage error. */
26
+ constructor(opts: {
27
+ /** The error message. */
28
+ message: string;
29
+ /** The optional param/attr/field that was invalid. */
30
+ field?: string;
31
+ /**
32
+ * The reason code for the invalid usage error, e.g. `bad_ttl`
33
+ * or `invalid_filter`.
34
+ *
35
+ * Could be used to detect specific issues with the request,
36
+ */
37
+ reason?: string;
38
+ /** An optional error that caused the invalid usage error. */
39
+ cause?: unknown;
40
+ });
41
+ }