@vandenberghinc/volt 1.1.26 → 1.1.28

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 (502) hide show
  1. package/backend/dist/cjs/{blacklist.d.ts → backend/src/blacklist.d.ts} +5 -3
  2. package/backend/dist/cjs/{blacklist.js → backend/src/blacklist.js} +8 -5
  3. package/backend/dist/cjs/{cli.js → backend/src/cli.js} +29 -47
  4. package/backend/dist/cjs/backend/src/database/collection.d.ts +1543 -0
  5. package/backend/dist/cjs/backend/src/database/collection.js +3042 -0
  6. package/backend/dist/cjs/backend/src/database/database.d.ts +66 -0
  7. package/backend/dist/cjs/{database → backend/src/database}/database.js +48 -43
  8. package/backend/dist/cjs/backend/src/database/filters/filters.d.ts +6 -0
  9. package/backend/dist/cjs/backend/src/database/filters/filters.js +15 -0
  10. package/backend/dist/cjs/backend/src/database/filters/strict_filter.d.ts +223 -0
  11. package/backend/dist/cjs/backend/src/database/filters/strict_filter.js +15 -0
  12. package/backend/dist/cjs/backend/src/database/filters/strict_filter_test.js +443 -0
  13. package/backend/dist/cjs/backend/src/database/filters/strict_filter_test_v0.js +15 -0
  14. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v0.d.ts +50 -0
  15. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v0.js +15 -0
  16. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v1.d.ts +76 -0
  17. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v1.js +15 -0
  18. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v2.d.ts +75 -0
  19. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v2.js +15 -0
  20. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v3.d.ts +219 -0
  21. package/backend/dist/cjs/backend/src/database/filters/strict_filter_v3.js +15 -0
  22. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter.d.ts +165 -0
  23. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter.js +15 -0
  24. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter_test.d.ts +5 -0
  25. package/backend/dist/cjs/backend/src/database/filters/strict_update_filter_test.js +355 -0
  26. package/backend/dist/cjs/backend/src/database/flatten.d.ts +75 -0
  27. package/backend/dist/cjs/{logger.js → backend/src/database/flatten.js} +18 -7
  28. package/backend/dist/cjs/backend/src/database/flatten_test.js +175 -0
  29. package/backend/dist/cjs/backend/src/database/quota/quota.d.ts +461 -0
  30. package/backend/dist/cjs/backend/src/database/quota/quota.js +1014 -0
  31. package/backend/dist/cjs/backend/src/database/quota/quota_v1.d.ts +534 -0
  32. package/backend/dist/cjs/backend/src/database/quota/quota_v1.js +1087 -0
  33. package/backend/dist/cjs/backend/src/database/quota/safe_int.d.ts +293 -0
  34. package/backend/dist/cjs/backend/src/database/quota/safe_int.js +573 -0
  35. package/backend/dist/{esm → cjs/backend/src}/endpoint.d.ts +69 -46
  36. package/backend/dist/cjs/{endpoint.js → backend/src/endpoint.js} +87 -101
  37. package/backend/dist/cjs/backend/src/errors/index.d.ts +7 -0
  38. package/backend/dist/cjs/backend/src/errors/index.js +25 -0
  39. package/backend/dist/{esm/utils.d.ts → cjs/backend/src/errors/internal_external.d.ts} +14 -22
  40. package/backend/dist/cjs/backend/src/errors/internal_external.js +85 -0
  41. package/backend/dist/cjs/backend/src/errors/invalid_usage_error.d.ts +38 -0
  42. package/backend/dist/cjs/{mutex.js → backend/src/errors/invalid_usage_error.js} +20 -37
  43. package/backend/dist/cjs/backend/src/errors/system_error.d.ts +230 -0
  44. package/backend/dist/cjs/backend/src/errors/system_error.js +393 -0
  45. package/backend/dist/cjs/backend/src/events.d.ts +54 -0
  46. package/backend/dist/cjs/backend/src/events.js +15 -0
  47. package/backend/dist/cjs/{frontend.js → backend/src/frontend.js} +1 -1
  48. package/backend/dist/cjs/{image_endpoint.d.ts → backend/src/image_endpoint.d.ts} +16 -1
  49. package/backend/dist/cjs/{image_endpoint.js → backend/src/image_endpoint.js} +3 -5
  50. package/backend/dist/cjs/backend/src/logger.d.ts +5 -0
  51. package/backend/dist/cjs/backend/src/logger.js +15 -0
  52. package/backend/dist/cjs/backend/src/meta.d.ts +64 -0
  53. package/backend/dist/cjs/{meta.js → backend/src/meta.js} +9 -12
  54. package/backend/dist/cjs/backend/src/payments/paddle.d.ts +326 -0
  55. package/backend/dist/cjs/{payments → backend/src/payments}/paddle.js +377 -327
  56. package/backend/dist/cjs/backend/src/plugins/browser.d.ts +1 -0
  57. package/backend/dist/cjs/backend/src/plugins/browser.js +15 -0
  58. package/backend/dist/cjs/backend/src/plugins/mail/mail.d.ts +248 -0
  59. package/backend/dist/cjs/backend/src/plugins/mail/mail.js +379 -0
  60. package/backend/dist/{esm → cjs/backend/src}/plugins/mail/ui.d.ts +23 -0
  61. package/backend/dist/cjs/backend/src/plugins/pdf.d.ts +1 -0
  62. package/backend/dist/cjs/backend/src/rate_limit.d.ts +145 -0
  63. package/backend/dist/cjs/backend/src/rate_limit.js +549 -0
  64. package/backend/dist/cjs/{route.d.ts → backend/src/route.d.ts} +3 -10
  65. package/backend/dist/cjs/{route.js → backend/src/route.js} +23 -21
  66. package/backend/dist/cjs/backend/src/server.d.ts +485 -0
  67. package/backend/dist/cjs/{server.js → backend/src/server.js} +688 -873
  68. package/backend/dist/cjs/backend/src/splash_screen.d.ts +80 -0
  69. package/backend/dist/cjs/{splash_screen.js → backend/src/splash_screen.js} +24 -3
  70. package/backend/dist/cjs/backend/src/status.d.ts +74 -0
  71. package/backend/dist/cjs/{status.js → backend/src/status.js} +64 -64
  72. package/backend/dist/cjs/backend/src/stream.d.ts +376 -0
  73. package/backend/dist/cjs/{stream.js → backend/src/stream.js} +299 -276
  74. package/backend/dist/cjs/backend/src/users.d.ts +807 -0
  75. package/backend/dist/cjs/backend/src/users.js +1971 -0
  76. package/backend/dist/cjs/backend/src/utils.d.ts +16 -0
  77. package/backend/dist/cjs/{utils.js → backend/src/utils.js} +14 -77
  78. package/backend/dist/{esm → cjs/backend/src}/view.d.ts +33 -11
  79. package/backend/dist/cjs/backend/src/view.js +508 -0
  80. package/backend/dist/{esm → cjs/backend/src}/volt.d.ts +10 -1
  81. package/backend/dist/cjs/{volt.js → backend/src/volt.js} +8 -5
  82. package/backend/dist/cjs/frontend/src/modules/request.d.ts +70 -0
  83. package/backend/dist/cjs/frontend/src/modules/request.js +99 -0
  84. package/backend/dist/esm/{blacklist.d.ts → backend/src/blacklist.d.ts} +5 -3
  85. package/backend/dist/esm/{blacklist.js → backend/src/blacklist.js} +9 -6
  86. package/backend/dist/esm/{cli.js → backend/src/cli.js} +43 -60
  87. package/backend/dist/esm/backend/src/database/collection.d.ts +1543 -0
  88. package/backend/dist/esm/backend/src/database/collection.js +3510 -0
  89. package/backend/dist/esm/backend/src/database/database.d.ts +66 -0
  90. package/backend/dist/esm/{database → backend/src/database}/database.js +62 -103
  91. package/backend/dist/esm/backend/src/database/document.d.ts +1 -0
  92. package/backend/dist/esm/backend/src/database/document.js +558 -0
  93. package/backend/dist/esm/backend/src/database/filters/filters.d.ts +6 -0
  94. package/backend/dist/esm/backend/src/database/filters/filters.js +1 -0
  95. package/backend/dist/esm/backend/src/database/filters/strict_filter.d.ts +223 -0
  96. package/backend/dist/esm/backend/src/database/filters/strict_filter.js +3 -0
  97. package/backend/dist/esm/backend/src/database/filters/strict_filter_test.d.ts +1 -0
  98. package/backend/dist/esm/backend/src/database/filters/strict_filter_test.js +505 -0
  99. package/backend/dist/esm/backend/src/database/filters/strict_filter_test_v0.d.ts +1 -0
  100. package/backend/dist/esm/backend/src/database/filters/strict_filter_test_v0.js +712 -0
  101. package/backend/dist/esm/backend/src/database/filters/strict_filter_v0.d.ts +50 -0
  102. package/backend/dist/esm/backend/src/database/filters/strict_filter_v0.js +5 -0
  103. package/backend/dist/esm/backend/src/database/filters/strict_filter_v1.d.ts +76 -0
  104. package/backend/dist/esm/backend/src/database/filters/strict_filter_v1.js +44 -0
  105. package/backend/dist/esm/backend/src/database/filters/strict_filter_v2.d.ts +75 -0
  106. package/backend/dist/esm/backend/src/database/filters/strict_filter_v2.js +5 -0
  107. package/backend/dist/esm/backend/src/database/filters/strict_filter_v3.d.ts +219 -0
  108. package/backend/dist/esm/backend/src/database/filters/strict_filter_v3.js +1 -0
  109. package/backend/dist/esm/backend/src/database/filters/strict_update_filter.d.ts +165 -0
  110. package/backend/dist/esm/backend/src/database/filters/strict_update_filter.js +5 -0
  111. package/backend/dist/esm/backend/src/database/filters/strict_update_filter_test.d.ts +5 -0
  112. package/backend/dist/esm/backend/src/database/filters/strict_update_filter_test.js +405 -0
  113. package/backend/dist/esm/backend/src/database/flatten.d.ts +75 -0
  114. package/backend/dist/esm/backend/src/database/flatten.js +22 -0
  115. package/backend/dist/esm/backend/src/database/flatten_test.d.ts +1 -0
  116. package/backend/dist/esm/backend/src/database/flatten_test.js +174 -0
  117. package/backend/dist/esm/backend/src/database/quota/quota.d.ts +461 -0
  118. package/backend/dist/esm/backend/src/database/quota/quota.js +1118 -0
  119. package/backend/dist/esm/backend/src/database/quota/quota_v1.d.ts +534 -0
  120. package/backend/dist/esm/backend/src/database/quota/quota_v1.js +1242 -0
  121. package/backend/dist/esm/backend/src/database/quota/safe_int.d.ts +293 -0
  122. package/backend/dist/esm/backend/src/database/quota/safe_int.js +602 -0
  123. package/backend/dist/{cjs → esm/backend/src}/endpoint.d.ts +69 -46
  124. package/backend/dist/esm/{endpoint.js → backend/src/endpoint.js} +136 -127
  125. package/backend/dist/esm/backend/src/errors/index.d.ts +7 -0
  126. package/backend/dist/esm/backend/src/errors/index.js +7 -0
  127. package/backend/dist/{cjs/utils.d.ts → esm/backend/src/errors/internal_external.d.ts} +14 -22
  128. package/backend/dist/esm/backend/src/errors/internal_external.js +70 -0
  129. package/backend/dist/esm/backend/src/errors/invalid_usage_error.d.ts +38 -0
  130. package/backend/dist/esm/backend/src/errors/invalid_usage_error.js +30 -0
  131. package/backend/dist/esm/backend/src/errors/system_error.d.ts +230 -0
  132. package/backend/dist/esm/backend/src/errors/system_error.js +402 -0
  133. package/backend/dist/esm/backend/src/events.d.ts +54 -0
  134. package/backend/dist/esm/backend/src/events.js +5 -0
  135. package/backend/dist/esm/{frontend.js → backend/src/frontend.js} +1 -1
  136. package/backend/dist/esm/{image_endpoint.d.ts → backend/src/image_endpoint.d.ts} +16 -1
  137. package/backend/dist/esm/{image_endpoint.js → backend/src/image_endpoint.js} +16 -20
  138. package/backend/dist/esm/backend/src/logger.d.ts +5 -0
  139. package/backend/dist/esm/backend/src/logger.js +8 -0
  140. package/backend/dist/esm/backend/src/meta.d.ts +64 -0
  141. package/backend/dist/esm/{meta.js → backend/src/meta.js} +15 -54
  142. package/backend/dist/esm/backend/src/payments/paddle.d.ts +326 -0
  143. package/backend/dist/esm/{payments → backend/src/payments}/paddle.js +417 -452
  144. package/backend/dist/esm/backend/src/plugins/browser.d.ts +1 -0
  145. package/backend/dist/esm/backend/src/plugins/browser.js +170 -0
  146. package/backend/dist/esm/backend/src/plugins/mail/mail.d.ts +248 -0
  147. package/backend/dist/esm/backend/src/plugins/mail/mail.js +389 -0
  148. package/backend/dist/{cjs → esm/backend/src}/plugins/mail/ui.d.ts +23 -0
  149. package/backend/dist/esm/{plugins → backend/src/plugins}/mail/ui.js +3 -6
  150. package/backend/dist/esm/backend/src/plugins/pdf.d.ts +1 -0
  151. package/backend/dist/esm/{plugins → backend/src/plugins}/pdf.js +3 -3
  152. package/backend/dist/esm/backend/src/rate_limit.d.ts +145 -0
  153. package/backend/dist/esm/backend/src/rate_limit.js +667 -0
  154. package/backend/dist/esm/{route.d.ts → backend/src/route.d.ts} +3 -10
  155. package/backend/dist/esm/{route.js → backend/src/route.js} +26 -21
  156. package/backend/dist/esm/backend/src/server.d.ts +485 -0
  157. package/backend/dist/esm/{server.js → backend/src/server.js} +891 -1441
  158. package/backend/dist/esm/backend/src/splash_screen.d.ts +80 -0
  159. package/backend/dist/esm/{splash_screen.js → backend/src/splash_screen.js} +42 -55
  160. package/backend/dist/esm/backend/src/status.d.ts +74 -0
  161. package/backend/dist/esm/backend/src/status.js +199 -0
  162. package/backend/dist/esm/backend/src/stream.d.ts +376 -0
  163. package/backend/dist/esm/{stream.js → backend/src/stream.js} +327 -292
  164. package/backend/dist/esm/backend/src/users.d.ts +809 -0
  165. package/backend/dist/esm/backend/src/users.js +2140 -0
  166. package/backend/dist/esm/backend/src/utils.d.ts +16 -0
  167. package/backend/dist/esm/{utils.js → backend/src/utils.js} +20 -81
  168. package/backend/dist/{cjs → esm/backend/src}/view.d.ts +33 -11
  169. package/backend/dist/esm/{view.js → backend/src/view.js} +266 -86
  170. package/backend/dist/{cjs → esm/backend/src}/volt.d.ts +10 -1
  171. package/backend/dist/esm/{volt.js → backend/src/volt.js} +7 -4
  172. package/backend/dist/esm/frontend/src/modules/request.d.ts +70 -0
  173. package/backend/dist/esm/frontend/src/modules/request.js +117 -0
  174. package/frontend/dist/backend/src/database/collection.d.ts +1543 -0
  175. package/frontend/dist/backend/src/database/collection.js +3510 -0
  176. package/frontend/dist/backend/src/database/database.d.ts +66 -0
  177. package/frontend/dist/backend/src/database/database.js +196 -0
  178. package/frontend/dist/backend/src/database/filters/filters.d.ts +6 -0
  179. package/frontend/dist/backend/src/database/filters/filters.js +1 -0
  180. package/frontend/dist/backend/src/database/filters/strict_filter.d.ts +223 -0
  181. package/frontend/dist/backend/src/database/filters/strict_filter.js +3 -0
  182. package/frontend/dist/backend/src/database/filters/strict_update_filter.d.ts +165 -0
  183. package/frontend/dist/backend/src/database/filters/strict_update_filter.js +5 -0
  184. package/frontend/dist/backend/src/database/flatten.d.ts +75 -0
  185. package/frontend/dist/backend/src/database/flatten.js +22 -0
  186. package/frontend/dist/backend/src/endpoint.d.ts +204 -0
  187. package/frontend/dist/backend/src/endpoint.js +570 -0
  188. package/frontend/dist/backend/src/errors/index.d.ts +7 -0
  189. package/frontend/dist/backend/src/errors/index.js +7 -0
  190. package/frontend/dist/backend/src/errors/internal_external.d.ts +38 -0
  191. package/frontend/dist/backend/src/errors/internal_external.js +70 -0
  192. package/frontend/dist/backend/src/errors/invalid_usage_error.d.ts +38 -0
  193. package/frontend/dist/backend/src/errors/invalid_usage_error.js +30 -0
  194. package/frontend/dist/backend/src/errors/system_error.d.ts +230 -0
  195. package/frontend/dist/backend/src/errors/system_error.js +402 -0
  196. package/frontend/dist/backend/src/events.d.ts +54 -0
  197. package/frontend/dist/backend/src/events.js +5 -0
  198. package/frontend/dist/backend/src/frontend.d.ts +11 -0
  199. package/frontend/dist/backend/src/frontend.js +12 -0
  200. package/frontend/dist/backend/src/image_endpoint.d.ts +39 -0
  201. package/frontend/dist/backend/src/image_endpoint.js +202 -0
  202. package/frontend/dist/backend/src/meta.d.ts +64 -0
  203. package/frontend/dist/backend/src/meta.js +110 -0
  204. package/frontend/dist/backend/src/payments/paddle.d.ts +326 -0
  205. package/frontend/dist/backend/src/payments/paddle.js +2256 -0
  206. package/frontend/dist/backend/src/plugins/mail/mail.d.ts +248 -0
  207. package/frontend/dist/backend/src/plugins/mail/mail.js +389 -0
  208. package/{backend/dist/esm/plugins/mail.d.ts → frontend/dist/backend/src/plugins/mail/ui.d.ts} +23 -0
  209. package/{backend/dist/esm/plugins/mail.js → frontend/dist/backend/src/plugins/mail/ui.js} +3 -6
  210. package/frontend/dist/backend/src/rate_limit.d.ts +145 -0
  211. package/frontend/dist/backend/src/rate_limit.js +673 -0
  212. package/frontend/dist/backend/src/route.d.ts +35 -0
  213. package/frontend/dist/backend/src/route.js +212 -0
  214. package/frontend/dist/backend/src/server.d.ts +485 -0
  215. package/frontend/dist/backend/src/server.js +2670 -0
  216. package/frontend/dist/backend/src/splash_screen.d.ts +80 -0
  217. package/frontend/dist/backend/src/splash_screen.js +135 -0
  218. package/frontend/dist/backend/src/status.d.ts +74 -0
  219. package/frontend/dist/backend/src/status.js +199 -0
  220. package/frontend/dist/backend/src/stream.d.ts +376 -0
  221. package/frontend/dist/backend/src/stream.js +1007 -0
  222. package/frontend/dist/backend/src/users.d.ts +807 -0
  223. package/frontend/dist/backend/src/users.js +2118 -0
  224. package/frontend/dist/backend/src/utils.d.ts +16 -0
  225. package/frontend/dist/backend/src/utils.js +241 -0
  226. package/frontend/dist/backend/src/view.d.ts +162 -0
  227. package/frontend/dist/backend/src/view.js +720 -0
  228. package/frontend/dist/frontend/src/elements/base.d.ts +4414 -0
  229. package/frontend/dist/{elements → frontend/src/elements}/base.js +3624 -260
  230. package/frontend/dist/frontend/src/elements/module.d.ts +95 -0
  231. package/frontend/dist/{elements → frontend/src/elements}/module.js +53 -52
  232. package/frontend/dist/frontend/src/elements/types.d.ts +52 -0
  233. package/frontend/dist/frontend/src/elements/types.js +5 -0
  234. package/frontend/dist/frontend/src/modules/attachment.d.ts +126 -0
  235. package/frontend/dist/frontend/src/modules/attachment.js +306 -0
  236. package/frontend/dist/frontend/src/modules/auth.d.ts +44 -0
  237. package/frontend/dist/frontend/src/modules/auth.js +80 -0
  238. package/frontend/dist/{modules → frontend/src/modules}/color.js +2 -2
  239. package/frontend/dist/frontend/src/modules/compression.d.ts +39 -0
  240. package/frontend/dist/frontend/src/modules/compression.js +102 -0
  241. package/frontend/dist/frontend/src/modules/cookies.d.ts +44 -0
  242. package/frontend/dist/frontend/src/modules/cookies.js +143 -0
  243. package/frontend/dist/frontend/src/modules/events.d.ts +31 -0
  244. package/frontend/dist/frontend/src/modules/events.js +74 -0
  245. package/frontend/dist/frontend/src/modules/google.d.ts +23 -0
  246. package/frontend/dist/frontend/src/modules/google.js +52 -0
  247. package/frontend/dist/frontend/src/modules/meta.d.ts +14 -0
  248. package/frontend/dist/{modules → frontend/src/modules}/meta.js +9 -7
  249. package/frontend/dist/{modules → frontend/src/modules}/paddle.d.ts +37 -134
  250. package/frontend/dist/{modules → frontend/src/modules}/paddle.js +620 -568
  251. package/frontend/dist/frontend/src/modules/request.d.ts +70 -0
  252. package/frontend/dist/frontend/src/modules/request.js +117 -0
  253. package/frontend/dist/frontend/src/modules/settings.d.ts +3 -0
  254. package/frontend/dist/frontend/src/modules/settings.js +5 -0
  255. package/frontend/dist/frontend/src/modules/statics.d.ts +21 -0
  256. package/frontend/dist/{modules → frontend/src/modules}/statics.js +15 -18
  257. package/frontend/dist/frontend/src/modules/support.d.ts +30 -0
  258. package/frontend/dist/frontend/src/modules/support.js +53 -0
  259. package/frontend/dist/{modules → frontend/src/modules}/theme.d.ts +67 -0
  260. package/frontend/dist/{modules → frontend/src/modules}/theme.js +68 -38
  261. package/frontend/dist/frontend/src/modules/themes.d.ts +12 -0
  262. package/frontend/dist/frontend/src/modules/themes.js +22 -0
  263. package/frontend/dist/frontend/src/modules/user.d.ts +164 -0
  264. package/frontend/dist/frontend/src/modules/user.js +268 -0
  265. package/frontend/dist/frontend/src/modules/utils.d.ts +176 -0
  266. package/frontend/dist/frontend/src/modules/utils.js +569 -0
  267. package/frontend/dist/frontend/src/types/gradient.d.ts +29 -0
  268. package/frontend/dist/{types → frontend/src/types}/gradient.js +14 -18
  269. package/frontend/dist/frontend/src/ui/border_button.d.ts +94 -0
  270. package/frontend/dist/{ui → frontend/src/ui}/border_button.js +7 -13
  271. package/frontend/dist/frontend/src/ui/button.d.ts +28 -0
  272. package/frontend/dist/{ui → frontend/src/ui}/button.js +21 -12
  273. package/frontend/dist/frontend/src/ui/canvas.d.ts +138 -0
  274. package/frontend/dist/{ui → frontend/src/ui}/canvas.js +88 -55
  275. package/frontend/dist/frontend/src/ui/checkbox.d.ts +74 -0
  276. package/frontend/dist/{ui → frontend/src/ui}/checkbox.js +80 -41
  277. package/frontend/dist/{ui → frontend/src/ui}/code.d.ts +73 -6
  278. package/frontend/dist/{ui → frontend/src/ui}/code.js +55 -52
  279. package/frontend/dist/{ui → frontend/src/ui}/context_menu.d.ts +4 -0
  280. package/frontend/dist/{ui → frontend/src/ui}/context_menu.js +12 -17
  281. package/frontend/dist/{ui → frontend/src/ui}/css.d.ts +4 -0
  282. package/frontend/dist/{ui → frontend/src/ui}/css.js +3 -3
  283. package/frontend/dist/{ui → frontend/src/ui}/divider.d.ts +4 -0
  284. package/frontend/dist/{ui → frontend/src/ui}/divider.js +3 -3
  285. package/frontend/dist/{ui → frontend/src/ui}/dropdown.d.ts +57 -2
  286. package/frontend/dist/{ui → frontend/src/ui}/dropdown.js +87 -94
  287. package/frontend/dist/{ui → frontend/src/ui}/for_each.d.ts +4 -0
  288. package/frontend/dist/{ui → frontend/src/ui}/for_each.js +3 -3
  289. package/frontend/dist/{ui → frontend/src/ui}/form.d.ts +6 -2
  290. package/frontend/dist/{ui → frontend/src/ui}/form.js +10 -7
  291. package/frontend/dist/frontend/src/ui/frame_modes.d.ts +37 -0
  292. package/frontend/dist/{ui → frontend/src/ui}/frame_modes.js +16 -22
  293. package/frontend/dist/{ui → frontend/src/ui}/google_map.d.ts +4 -0
  294. package/frontend/dist/{ui → frontend/src/ui}/google_map.js +4 -4
  295. package/frontend/dist/{ui → frontend/src/ui}/gradient.d.ts +4 -0
  296. package/frontend/dist/{ui → frontend/src/ui}/gradient.js +3 -3
  297. package/frontend/dist/{ui → frontend/src/ui}/image.d.ts +4 -0
  298. package/frontend/dist/{ui → frontend/src/ui}/image.js +5 -5
  299. package/frontend/dist/frontend/src/ui/input.d.ts +392 -0
  300. package/frontend/dist/{ui → frontend/src/ui}/input.js +346 -360
  301. package/frontend/dist/{ui → frontend/src/ui}/link.d.ts +4 -0
  302. package/frontend/dist/{ui → frontend/src/ui}/link.js +3 -3
  303. package/frontend/dist/{ui → frontend/src/ui}/list.d.ts +4 -0
  304. package/frontend/dist/{ui → frontend/src/ui}/list.js +12 -6
  305. package/frontend/dist/frontend/src/ui/loader_button.d.ts +80 -0
  306. package/frontend/dist/{ui → frontend/src/ui}/loader_button.js +35 -47
  307. package/frontend/dist/frontend/src/ui/loaders.d.ts +57 -0
  308. package/frontend/dist/{ui → frontend/src/ui}/loaders.js +11 -11
  309. package/frontend/dist/{ui → frontend/src/ui}/popup.d.ts +11 -6
  310. package/frontend/dist/{ui → frontend/src/ui}/popup.js +32 -18
  311. package/frontend/dist/frontend/src/ui/pseudo.d.ts +44 -0
  312. package/frontend/dist/{ui → frontend/src/ui}/pseudo.js +84 -8
  313. package/frontend/dist/{ui → frontend/src/ui}/scroller.d.ts +14 -2
  314. package/frontend/dist/{ui → frontend/src/ui}/scroller.js +37 -43
  315. package/frontend/dist/{ui → frontend/src/ui}/slider.d.ts +5 -1
  316. package/frontend/dist/{ui → frontend/src/ui}/slider.js +4 -4
  317. package/frontend/dist/{ui → frontend/src/ui}/spacer.d.ts +4 -0
  318. package/frontend/dist/{ui → frontend/src/ui}/spacer.js +3 -3
  319. package/frontend/dist/{ui → frontend/src/ui}/span.d.ts +4 -0
  320. package/frontend/dist/{ui → frontend/src/ui}/span.js +3 -3
  321. package/frontend/dist/{ui → frontend/src/ui}/stack.d.ts +4 -0
  322. package/frontend/dist/{ui → frontend/src/ui}/stack.js +3 -9
  323. package/frontend/dist/frontend/src/ui/steps.d.ts +131 -0
  324. package/frontend/dist/{ui → frontend/src/ui}/steps.js +30 -45
  325. package/frontend/dist/{ui → frontend/src/ui}/style.d.ts +4 -0
  326. package/frontend/dist/{ui → frontend/src/ui}/style.js +3 -3
  327. package/frontend/dist/{ui → frontend/src/ui}/switch.d.ts +5 -1
  328. package/frontend/dist/{ui → frontend/src/ui}/switch.js +4 -4
  329. package/frontend/dist/{ui → frontend/src/ui}/table.d.ts +4 -0
  330. package/frontend/dist/{ui → frontend/src/ui}/table.js +6 -6
  331. package/frontend/dist/{ui → frontend/src/ui}/tabs.d.ts +45 -3
  332. package/frontend/dist/{ui → frontend/src/ui}/tabs.js +65 -40
  333. package/frontend/dist/{ui → frontend/src/ui}/text.d.ts +4 -0
  334. package/frontend/dist/{ui → frontend/src/ui}/text.js +3 -3
  335. package/frontend/dist/frontend/src/ui/title.d.ts +91 -0
  336. package/frontend/dist/frontend/src/ui/title.js +272 -0
  337. package/frontend/dist/{ui → frontend/src/ui}/view.d.ts +4 -0
  338. package/frontend/dist/{ui → frontend/src/ui}/view.js +3 -3
  339. package/frontend/dist/{volt.d.ts → frontend/src/volt.d.ts} +3 -0
  340. package/frontend/dist/{volt.js → frontend/src/volt.js} +4 -0
  341. package/frontend/tools/bundle_d_ts.js +71 -0
  342. package/frontend/tools/convert_to_jsdoc_input.txt +9452 -0
  343. package/frontend/tools/convert_to_jsdoc_output.txt +7626 -0
  344. package/frontend/tools/convert_to_jsdoc_tmp.js +345 -0
  345. package/package.json +11 -12
  346. package/backend/dist/cjs/database/collection.d.ts +0 -160
  347. package/backend/dist/cjs/database/collection.js +0 -842
  348. package/backend/dist/cjs/database/database.d.ts +0 -121
  349. package/backend/dist/cjs/database/document.d.ts +0 -131
  350. package/backend/dist/cjs/database/document.js +0 -224
  351. package/backend/dist/cjs/database.d.ts +0 -502
  352. package/backend/dist/cjs/database.js +0 -2248
  353. package/backend/dist/cjs/logger.d.ts +0 -3
  354. package/backend/dist/cjs/meta.d.ts +0 -50
  355. package/backend/dist/cjs/mutex.d.ts +0 -24
  356. package/backend/dist/cjs/payments/paddle.d.ts +0 -160
  357. package/backend/dist/cjs/plugins/browser.d.ts +0 -36
  358. package/backend/dist/cjs/plugins/browser.js +0 -198
  359. package/backend/dist/cjs/plugins/css.d.ts +0 -11
  360. package/backend/dist/cjs/plugins/css.js +0 -80
  361. package/backend/dist/cjs/plugins/mail.d.ts +0 -277
  362. package/backend/dist/cjs/plugins/mail.js +0 -1370
  363. package/backend/dist/cjs/plugins/ts/compiler.d.ts +0 -139
  364. package/backend/dist/cjs/plugins/ts/compiler.js +0 -750
  365. package/backend/dist/cjs/plugins/ts/preprocessing.d.ts +0 -14
  366. package/backend/dist/cjs/plugins/ts/preprocessing.js +0 -440
  367. package/backend/dist/cjs/rate_limit.d.ts +0 -63
  368. package/backend/dist/cjs/rate_limit.js +0 -348
  369. package/backend/dist/cjs/request.deprc.d.ts +0 -48
  370. package/backend/dist/cjs/request.deprc.js +0 -572
  371. package/backend/dist/cjs/response.deprc.d.ts +0 -55
  372. package/backend/dist/cjs/response.deprc.js +0 -275
  373. package/backend/dist/cjs/server.d.ts +0 -342
  374. package/backend/dist/cjs/splash_screen.d.ts +0 -35
  375. package/backend/dist/cjs/status.d.ts +0 -61
  376. package/backend/dist/cjs/stream.d.ts +0 -79
  377. package/backend/dist/cjs/users.d.ts +0 -111
  378. package/backend/dist/cjs/users.js +0 -1817
  379. package/backend/dist/cjs/view.js +0 -352
  380. package/backend/dist/cjs/vinc.dev.d.ts +0 -3
  381. package/backend/dist/cjs/vinc.dev.js +0 -7
  382. package/backend/dist/css/adyen.css +0 -92
  383. package/backend/dist/css/volt.css +0 -70
  384. package/backend/dist/esm/database/collection.d.ts +0 -160
  385. package/backend/dist/esm/database/collection.js +0 -1328
  386. package/backend/dist/esm/database/database.d.ts +0 -121
  387. package/backend/dist/esm/database/document.d.ts +0 -131
  388. package/backend/dist/esm/database/document.js +0 -247
  389. package/backend/dist/esm/database.d.ts +0 -502
  390. package/backend/dist/esm/database.js +0 -2423
  391. package/backend/dist/esm/file_watcher.js +0 -329
  392. package/backend/dist/esm/logger.d.ts +0 -3
  393. package/backend/dist/esm/logger.js +0 -11
  394. package/backend/dist/esm/meta.d.ts +0 -50
  395. package/backend/dist/esm/mutex.d.ts +0 -24
  396. package/backend/dist/esm/mutex.js +0 -48
  397. package/backend/dist/esm/payments/paddle.d.ts +0 -160
  398. package/backend/dist/esm/plugins/browser.d.ts +0 -36
  399. package/backend/dist/esm/plugins/browser.js +0 -176
  400. package/backend/dist/esm/plugins/css.d.ts +0 -11
  401. package/backend/dist/esm/plugins/css.js +0 -90
  402. package/backend/dist/esm/plugins/ts/compiler.d.ts +0 -139
  403. package/backend/dist/esm/plugins/ts/compiler.js +0 -1194
  404. package/backend/dist/esm/plugins/ts/preprocessing.d.ts +0 -14
  405. package/backend/dist/esm/plugins/ts/preprocessing.js +0 -726
  406. package/backend/dist/esm/rate_limit.d.ts +0 -63
  407. package/backend/dist/esm/rate_limit.js +0 -417
  408. package/backend/dist/esm/request.deprc.d.ts +0 -48
  409. package/backend/dist/esm/request.deprc.js +0 -572
  410. package/backend/dist/esm/response.deprc.d.ts +0 -55
  411. package/backend/dist/esm/response.deprc.js +0 -275
  412. package/backend/dist/esm/server.d.ts +0 -342
  413. package/backend/dist/esm/splash_screen.d.ts +0 -35
  414. package/backend/dist/esm/status.d.ts +0 -61
  415. package/backend/dist/esm/status.js +0 -197
  416. package/backend/dist/esm/stream.d.ts +0 -79
  417. package/backend/dist/esm/users.d.ts +0 -111
  418. package/backend/dist/esm/users.js +0 -1935
  419. package/backend/dist/esm/vinc.dev.d.ts +0 -3
  420. package/backend/dist/esm/vinc.dev.js +0 -7
  421. package/frontend/dist/elements/base.d.ts +0 -9889
  422. package/frontend/dist/elements/module.d.ts +0 -30
  423. package/frontend/dist/modules/array.d.ts +0 -94
  424. package/frontend/dist/modules/array.js +0 -634
  425. package/frontend/dist/modules/auth.d.ts +0 -46
  426. package/frontend/dist/modules/auth.js +0 -139
  427. package/frontend/dist/modules/colors.d.ts +0 -1
  428. package/frontend/dist/modules/colors.js +0 -417
  429. package/frontend/dist/modules/compression.d.ts +0 -6
  430. package/frontend/dist/modules/compression.js +0 -999
  431. package/frontend/dist/modules/cookies.d.ts +0 -18
  432. package/frontend/dist/modules/cookies.js +0 -167
  433. package/frontend/dist/modules/date.d.ts +0 -142
  434. package/frontend/dist/modules/date.js +0 -493
  435. package/frontend/dist/modules/events.d.ts +0 -8
  436. package/frontend/dist/modules/events.js +0 -91
  437. package/frontend/dist/modules/google.d.ts +0 -11
  438. package/frontend/dist/modules/google.js +0 -54
  439. package/frontend/dist/modules/meta.d.ts +0 -10
  440. package/frontend/dist/modules/mutex.d.ts +0 -7
  441. package/frontend/dist/modules/mutex.js +0 -51
  442. package/frontend/dist/modules/number.d.ts +0 -16
  443. package/frontend/dist/modules/number.js +0 -23
  444. package/frontend/dist/modules/object.d.ts +0 -52
  445. package/frontend/dist/modules/object.js +0 -383
  446. package/frontend/dist/modules/scheme.d.ts +0 -227
  447. package/frontend/dist/modules/scheme.js +0 -531
  448. package/frontend/dist/modules/settings.d.ts +0 -3
  449. package/frontend/dist/modules/settings.js +0 -4
  450. package/frontend/dist/modules/statics.d.ts +0 -5
  451. package/frontend/dist/modules/string.d.ts +0 -124
  452. package/frontend/dist/modules/string.js +0 -745
  453. package/frontend/dist/modules/support.d.ts +0 -19
  454. package/frontend/dist/modules/support.js +0 -103
  455. package/frontend/dist/modules/themes.d.ts +0 -8
  456. package/frontend/dist/modules/themes.js +0 -18
  457. package/frontend/dist/modules/user.d.ts +0 -59
  458. package/frontend/dist/modules/user.js +0 -280
  459. package/frontend/dist/modules/utils.d.ts +0 -87
  460. package/frontend/dist/modules/utils.js +0 -923
  461. package/frontend/dist/types/gradient.d.ts +0 -12
  462. package/frontend/dist/ui/border_button.d.ts +0 -152
  463. package/frontend/dist/ui/button.d.ts +0 -21
  464. package/frontend/dist/ui/canvas.d.ts +0 -56
  465. package/frontend/dist/ui/checkbox.d.ts +0 -52
  466. package/frontend/dist/ui/frame_modes.d.ts +0 -25
  467. package/frontend/dist/ui/input.d.ts +0 -241
  468. package/frontend/dist/ui/loader_button.d.ts +0 -93
  469. package/frontend/dist/ui/loaders.d.ts +0 -57
  470. package/frontend/dist/ui/pseudo.d.ts +0 -16
  471. package/frontend/dist/ui/steps.d.ts +0 -59
  472. package/frontend/dist/ui/title.d.ts +0 -21
  473. package/frontend/dist/ui/title.js +0 -121
  474. package/frontend/examples/dashboard/dashboard.ts +0 -776
  475. /package/backend/dist/cjs/{cli.d.ts → backend/src/cli.d.ts} +0 -0
  476. /package/backend/dist/cjs/{file_watcher.d.ts → backend/src/database/document.d.ts} +0 -0
  477. /package/backend/dist/cjs/{file_watcher.js → backend/src/database/document.js} +0 -0
  478. /package/backend/dist/cjs/{plugins/pdf.d.ts → backend/src/database/filters/strict_filter_test.d.ts} +0 -0
  479. /package/backend/dist/{esm/file_watcher.d.ts → cjs/backend/src/database/filters/strict_filter_test_v0.d.ts} +0 -0
  480. /package/backend/dist/{esm/plugins/pdf.d.ts → cjs/backend/src/database/flatten_test.d.ts} +0 -0
  481. /package/backend/dist/cjs/{frontend.d.ts → backend/src/frontend.d.ts} +0 -0
  482. /package/backend/dist/cjs/{plugins → backend/src/plugins}/communication.d.ts +0 -0
  483. /package/backend/dist/cjs/{plugins → backend/src/plugins}/communication.js +0 -0
  484. /package/backend/dist/cjs/{plugins → backend/src/plugins}/mail/ui.js +0 -0
  485. /package/backend/dist/cjs/{plugins → backend/src/plugins}/pdf.js +0 -0
  486. /package/backend/dist/cjs/{plugins → backend/src/plugins}/thread_monitor.d.ts +0 -0
  487. /package/backend/dist/cjs/{plugins → backend/src/plugins}/thread_monitor.js +0 -0
  488. /package/backend/dist/cjs/{vinc.d.ts → backend/src/vinc.d.ts} +0 -0
  489. /package/backend/dist/cjs/{vinc.js → backend/src/vinc.js} +0 -0
  490. /package/backend/dist/esm/{cli.d.ts → backend/src/cli.d.ts} +0 -0
  491. /package/backend/dist/esm/{frontend.d.ts → backend/src/frontend.d.ts} +0 -0
  492. /package/backend/dist/esm/{plugins → backend/src/plugins}/communication.d.ts +0 -0
  493. /package/backend/dist/esm/{plugins → backend/src/plugins}/communication.js +0 -0
  494. /package/backend/dist/esm/{plugins → backend/src/plugins}/thread_monitor.d.ts +0 -0
  495. /package/backend/dist/esm/{plugins → backend/src/plugins}/thread_monitor.js +0 -0
  496. /package/backend/dist/esm/{vinc.d.ts → backend/src/vinc.d.ts} +0 -0
  497. /package/backend/dist/esm/{vinc.js → backend/src/vinc.js} +0 -0
  498. /package/frontend/dist/{elements → frontend/src/elements}/register_element.d.ts +0 -0
  499. /package/frontend/dist/{elements → frontend/src/elements}/register_element.js +0 -0
  500. /package/frontend/dist/{modules → frontend/src/modules}/color.d.ts +0 -0
  501. /package/frontend/dist/{ui → frontend/src/ui}/ui.d.ts +0 -0
  502. /package/frontend/dist/{ui → frontend/src/ui}/ui.js +0 -0
@@ -1,531 +0,0 @@
1
- /**
2
- * @author Daan van den Bergh
3
- * @copyright © 2022 - 2025 Daan van den Bergh. All rights reserved.
4
- *
5
- * @note FRONTEND - This file should also be accessable from the frontend.
6
- */
7
- /** @docs
8
- * @title Scheme
9
- * @desc The scheme validation module
10
- */
11
- export var Scheme;
12
- (function (Scheme) {
13
- /** @docs
14
- * @title value_type
15
- * @desc Get a value type for error reporting
16
- */
17
- function value_type(value) {
18
- if (value == null) {
19
- return "null";
20
- }
21
- else if (typeof value === "object" && Array.isArray(value)) {
22
- return "array";
23
- }
24
- else {
25
- return typeof value;
26
- }
27
- }
28
- Scheme.value_type = value_type;
29
- // Initialize scheme item.
30
- // Param `scheme` and `scheme` key should be assigned when validating non array objects.
31
- function init_scheme_item(scheme_item, scheme, scheme_key) {
32
- // Convert scheme item into object.
33
- if (typeof scheme_item === "string") {
34
- scheme_item = { type: scheme_item };
35
- // Convert to object for subsequent requests, useful for vweb restapi callback.
36
- if (scheme !== undefined && scheme_key !== undefined) {
37
- scheme[scheme_key] = scheme_item;
38
- }
39
- }
40
- // Rename aliases.
41
- else {
42
- if (scheme_item.def !== undefined) {
43
- scheme_item.default = scheme_item.def;
44
- delete scheme_item.def;
45
- }
46
- if (scheme_item.attrs !== undefined) {
47
- scheme_item.scheme = scheme_item.attrs;
48
- delete scheme_item.attrs;
49
- }
50
- else if (scheme_item.attributes !== undefined) {
51
- scheme_item.scheme = scheme_item.attributes;
52
- delete scheme_item.attributes;
53
- }
54
- if (scheme_item.enumerate !== undefined) {
55
- scheme_item.enum = scheme_item.enumerate;
56
- delete scheme_item.enumerate;
57
- }
58
- }
59
- // Response.
60
- return scheme_item;
61
- }
62
- Scheme.init_scheme_item = init_scheme_item;
63
- /** @docs
64
- * @title type_error_str
65
- * @desc Generate a type error string
66
- */
67
- function type_error_str(scheme_item, prefix = " of type ") {
68
- let type_error_str = "";
69
- if (Array.isArray(scheme_item.type)) {
70
- type_error_str = prefix;
71
- for (let i = 0; i < scheme_item.type.length; i++) {
72
- if (typeof scheme_item.type[i] === "function") {
73
- try {
74
- type_error_str += `"${scheme_item.type[i].name}"`;
75
- }
76
- catch (e) {
77
- type_error_str += `"${scheme_item.type[i]}"`;
78
- }
79
- }
80
- else {
81
- type_error_str += `"${scheme_item.type[i]}"`;
82
- }
83
- if (i === scheme_item.type.length - 2) {
84
- type_error_str += " or ";
85
- }
86
- else if (i < scheme_item.type.length - 2) {
87
- type_error_str += ", ";
88
- }
89
- }
90
- }
91
- else {
92
- type_error_str = `${prefix}"${scheme_item.type}"`;
93
- }
94
- return type_error_str;
95
- }
96
- Scheme.type_error_str = type_error_str;
97
- function verify({ object, scheme = {}, value_scheme = null, check_unknown = false, parent = "", error_prefix = "", err_prefix = null, throw_err = true, }) {
98
- // Set error prefix.
99
- if (err_prefix !== null) {
100
- error_prefix = err_prefix;
101
- }
102
- if (typeof parent === "string" && parent.length > 0 && /[a-zA-Z0-9]+/g.test(parent.charAt(parent.length - 1))) {
103
- parent += ".";
104
- }
105
- // Throw an error and pop the verify_object from the stacktrace.
106
- const throw_err_h = (e, field) => {
107
- const invalid_fields = {};
108
- invalid_fields[field] = e;
109
- if (throw_err === false) {
110
- return { error: e, invalid_fields, object: undefined };
111
- }
112
- const error = new Error(e);
113
- // let stack = error.stack.split("\n");
114
- // stack = [stack[0], ...stack.slice(3)];
115
- // error.stack = stack.join("\n");
116
- error.json = { error: e, invalid_fields, object: undefined };
117
- throw error;
118
- };
119
- // Check type of the parameter function.
120
- // Scheme key may also be an index for when object is an array.
121
- const check_type = (object, obj_key, scheme_item, type) => {
122
- // Check VS instance.
123
- if (typeof type === "function") {
124
- return object[obj_key] instanceof type;
125
- }
126
- // Check vs string named type.
127
- switch (type) {
128
- case "null":
129
- return object[obj_key] == null;
130
- case "array": {
131
- if (Array.isArray(object[obj_key]) === false) {
132
- return false;
133
- }
134
- if (scheme_item.scheme || scheme_item.value_scheme) {
135
- try {
136
- object[obj_key] = Scheme.verify({
137
- object: object[obj_key],
138
- scheme: scheme_item.scheme,
139
- value_scheme: scheme_item.value_scheme,
140
- check_unknown,
141
- parent: `${parent}${obj_key}.`,
142
- error_prefix,
143
- throw_err: true,
144
- });
145
- }
146
- catch (e) {
147
- if (!throw_err && e.json) {
148
- return e.json;
149
- }
150
- else {
151
- throw e;
152
- }
153
- }
154
- }
155
- // Check min max items.
156
- if (typeof scheme_item.min_length === "number" && object[obj_key].length < scheme_item.min_length) {
157
- const field = `${parent}${obj_key}`;
158
- return throw_err_h(`${error_prefix}Attribute "${field}" has an invalid array length [${object[obj_key].length}], the minimum length is [${scheme_item.min_length}].`, field);
159
- }
160
- if (typeof scheme_item.max_length === "number" && object[obj_key].length > scheme_item.max_length) {
161
- const field = `${parent}${obj_key}`;
162
- return throw_err_h(`${error_prefix}Attribute "${field}" has an invalid array length [${object[obj_key].length}], the maximum length is [${scheme_item.max_length}].`, field);
163
- }
164
- return true;
165
- }
166
- case "object": {
167
- if (typeof object[obj_key] !== "object" || object[obj_key] == null) {
168
- return false;
169
- }
170
- if (scheme_item.scheme || scheme_item.value_scheme) {
171
- try {
172
- object[obj_key] = Scheme.verify({
173
- object: object[obj_key],
174
- scheme: scheme_item.scheme,
175
- value_scheme: scheme_item.value_scheme,
176
- check_unknown,
177
- parent: `${parent}${obj_key}.`,
178
- error_prefix,
179
- throw_err: true,
180
- });
181
- }
182
- catch (e) {
183
- if (!throw_err && e.json) {
184
- return e.json;
185
- }
186
- else {
187
- throw e;
188
- }
189
- }
190
- }
191
- return true;
192
- }
193
- case "string": {
194
- if (typeof object[obj_key] !== "string" && !(object[obj_key] instanceof String)) {
195
- return false;
196
- }
197
- if (scheme_item.allow_empty !== true && object[obj_key].length === 0) {
198
- return 1;
199
- }
200
- if (typeof scheme_item.min_length === "number" && object[obj_key].length < scheme_item.min_length) {
201
- const field = `${parent}${obj_key}`;
202
- return throw_err_h(`${error_prefix}Attribute "${field}" has an invalid string length [${object[obj_key].length}], the minimum length is [${scheme_item.min_length}].`, field);
203
- }
204
- if (typeof scheme_item.max_length === "number" && object[obj_key].length > scheme_item.max_length) {
205
- const field = `${parent}${obj_key}`;
206
- return throw_err_h(`${error_prefix}Attribute "${field}" has an invalid string length [${object[obj_key].length}], the maximum length is [${scheme_item.max_length}].`, field);
207
- }
208
- }
209
- default:
210
- if (type !== typeof object[obj_key]) {
211
- return false;
212
- }
213
- if (type === "string" && scheme_item.allow_empty !== true && object[obj_key].length === 0) {
214
- return 1;
215
- }
216
- return true;
217
- }
218
- };
219
- // Verify a value by scheme.
220
- const verify_value_scheme = (scheme_item, key, object, value_scheme_key = undefined) => {
221
- // Execute the pre process callback.
222
- if (typeof scheme_item.preprocess === "function") {
223
- const res = scheme_item.preprocess(object[key], object, key);
224
- if (res !== undefined) {
225
- object[key] = res;
226
- }
227
- }
228
- // Do a type check.
229
- if (scheme_item.type && scheme_item.type !== "any") {
230
- const is_required = scheme_item.required ?? true;
231
- // Skip when value is `null / undefined` and default is `null`.
232
- if (!((scheme_item.default == null || !is_required) && object[key] == null)) {
233
- // Multiple types supported.
234
- if (Array.isArray(scheme_item.type)) {
235
- let correct_type = false;
236
- let is_empty = false;
237
- for (let i = 0; i < scheme_item.type.length; i++) {
238
- const res = check_type(object, key, scheme_item, scheme_item.type[i]);
239
- if (typeof res === "object") { // json error.
240
- return res;
241
- }
242
- else if (res === true) {
243
- correct_type = true;
244
- break;
245
- }
246
- else if (res === 1) {
247
- correct_type = true;
248
- is_empty = true;
249
- break;
250
- }
251
- }
252
- if (correct_type === false) {
253
- const field = `${parent}${value_scheme_key || key}`;
254
- const current_type = Scheme.value_type(object[key]);
255
- return throw_err_h(`${error_prefix}Attribute "${field}" has an invalid type "${current_type}", the valid type is ${Scheme.type_error_str(scheme_item, "")}.`, field);
256
- }
257
- else if (is_empty && is_required && scheme_item.default !== "") {
258
- const field = `${parent}${value_scheme_key || key}`;
259
- return throw_err_h(`${error_prefix}Attribute "${field}" is an empty string.`, field);
260
- }
261
- }
262
- // Single type supported.
263
- else {
264
- const res = check_type(object, key, scheme_item, scheme_item.type);
265
- if (typeof res === "object") { // json error.
266
- return res;
267
- }
268
- else if (res === false) {
269
- const field = `${parent}${value_scheme_key || key}`;
270
- const current_type = Scheme.value_type(object[key]);
271
- return throw_err_h(`${error_prefix}Attribute "${field}" has an invalid type "${current_type}", the valid type is ${Scheme.type_error_str(scheme_item, "")}.`, field);
272
- }
273
- else if (res === 1 && is_required && scheme_item.default !== "") {
274
- const field = `${parent}${value_scheme_key || key}`;
275
- return throw_err_h(`${error_prefix}Attribute "${field}" is an empty string.`, field);
276
- }
277
- }
278
- }
279
- }
280
- // Set default.
281
- if (object[key] === undefined && scheme_item.default !== undefined) {
282
- if (typeof scheme_item.default === "function") {
283
- object[key] = scheme_item.default(object);
284
- }
285
- else {
286
- object[key] = scheme_item.default;
287
- }
288
- }
289
- // if (object[key] === undefined && scheme_item[key]?.default !== undefined) {
290
- // // console.log(`Set default "${key}" with value "${scheme_item[key].default}".`)
291
- // object[key] = scheme_item[key].default;
292
- // }
293
- // Check enum.
294
- if (scheme_item.enum) {
295
- if (!scheme_item.enum.includes(object[key])) {
296
- const field = `${parent}${value_scheme_key || key}`;
297
- const joined = scheme_item.enum.map(item => {
298
- if (item == null) {
299
- return 'null';
300
- }
301
- else if (typeof item !== "string" && !(item instanceof String)) {
302
- return item.toString();
303
- }
304
- return `"${item.toString()}"`;
305
- }).join(", ");
306
- return throw_err_h(`${error_prefix}Attribute "${field}" must be one of the following enumerated values [${joined}].`, field);
307
- }
308
- }
309
- // Execute the verify callback.
310
- if (typeof scheme_item.verify === "function") {
311
- const err = scheme_item.verify(object[key], object, key);
312
- if (err) {
313
- return throw_err_h(`${error_prefix}${err}`, `${parent}${value_scheme_key || key}`);
314
- }
315
- }
316
- if (typeof scheme_item.callback === "function") {
317
- // Show deprecated warning with shortened stack trace.
318
- let stack = new Error("SPLIT-AFTER").stack?.split("SPLIT-AFTER\n")[1].split('\n') ?? [];
319
- let last = -1;
320
- for (let i = 0; i < stack.length; i++) {
321
- if (stack[i].includes('at Scheme.verify ')) {
322
- last = i;
323
- }
324
- }
325
- if (last !== -1) {
326
- stack = stack.slice(last);
327
- }
328
- const color_end = "\u001b[0m";
329
- const color_yellow = "\u001b[33m";
330
- console.warn(`${color_end}[Scheme.verify] ${color_yellow}Warning${color_end}: Attribute "callback" is deprecated and replaced by attribute "verify" and will be removed in future versions.\n${stack.join('\n')}`);
331
- // Still proceed as normal.
332
- const err = scheme_item.callback(object[key], object, key);
333
- if (err) {
334
- return throw_err_h(`${error_prefix}${err}`, `${parent}${value_scheme_key || key}`);
335
- }
336
- }
337
- // Execute the post process callback.
338
- if (typeof scheme_item.postprocess === "function") {
339
- const res = scheme_item.postprocess(object[key], object, key);
340
- if (res !== undefined) {
341
- object[key] = res;
342
- }
343
- }
344
- };
345
- // When object is an array.
346
- if (Array.isArray(object)) {
347
- // @deprecated: No longer use scheme for arrays since if a param may be both an array and obj, there must be a distinction possible to verify the scheme of the possible object vs the value scheme of a possible array.
348
- //
349
- // Always use value scheme.
350
- if (value_scheme != null) {
351
- // Use the scheme as a scheme item for the entire array.
352
- const scheme_item = Scheme.init_scheme_item(value_scheme);
353
- // Iterate array.
354
- for (let index = 0; index < object.length; index++) {
355
- const err = verify_value_scheme(scheme_item, index, object);
356
- if (err) {
357
- return err;
358
- }
359
- }
360
- }
361
- }
362
- // When object is an object.
363
- else if (typeof object === "object" && object != null) {
364
- // Verify object's value scheme.
365
- // So only check the values of the object, not the object itself.
366
- if (value_scheme != null) {
367
- // Convert scheme item into object.
368
- const scheme_item = Scheme.init_scheme_item(value_scheme);
369
- // Iterate the object.
370
- const keys = Object.keys(object);
371
- for (let i = 0; i < keys.length; i++) {
372
- // Verify the values of the object by scheme.
373
- const err = verify_value_scheme(scheme_item, keys[i], object);
374
- if (err) {
375
- return err;
376
- }
377
- }
378
- }
379
- // Verify the object itself.
380
- else {
381
- // Iterate all object to check if there are any undefined object passed.
382
- // This must be done before checking known attributes, otherwise it can lead to weird error messages when attributes are only required if other (wrongly-spelled) attributes are missing.
383
- if (check_unknown) {
384
- const object_keys = Object.keys(object);
385
- for (let x = 0; x < object_keys.length; x++) {
386
- if (object_keys[x] in scheme === false) {
387
- const field = `${parent}${object_keys[x]}`;
388
- return throw_err_h(`${error_prefix}Attribute "${field}" is not a valid attribute name.`, field);
389
- }
390
- }
391
- }
392
- // Iterate all scheme object to check if any object are missing.
393
- const scheme_keys = Object.keys(scheme);
394
- for (let scheme_index = 0; scheme_index < scheme_keys.length; scheme_index++) {
395
- const scheme_key = scheme_keys[scheme_index];
396
- if (scheme[scheme_key] == null) {
397
- continue;
398
- }
399
- let scheme_item = Scheme.init_scheme_item(scheme[scheme_key], scheme, scheme_key);
400
- if (typeof scheme_item.alias === "string") {
401
- scheme_item = Scheme.init_scheme_item(scheme[scheme_item.alias], scheme, scheme_item.alias);
402
- }
403
- // Parameter is not found in passed object.
404
- if (scheme_key in object === false) {
405
- // Not required.
406
- // Set default.
407
- if (scheme_item.default !== undefined) {
408
- if (typeof scheme_item.default === "function") {
409
- object[scheme_key] = scheme_item.default(object);
410
- }
411
- else {
412
- object[scheme_key] = scheme_item.default;
413
- }
414
- }
415
- // Required unless specified otherwise.
416
- else {
417
- if (scheme_item.required === false) {
418
- continue;
419
- }
420
- else if (typeof scheme_item.required === "function") {
421
- const required = scheme_item.required(object);
422
- if (required) {
423
- const field = `${parent}${scheme_key}`;
424
- return throw_err_h(`${error_prefix}Attribute "${field}" should be a defined value${Scheme.type_error_str(scheme_item)}.`, field);
425
- }
426
- }
427
- else {
428
- const field = `${parent}${scheme_key}`;
429
- return throw_err_h(`${error_prefix}Attribute "${field}" should be a defined value${Scheme.type_error_str(scheme_item)}.`, field);
430
- }
431
- }
432
- // Continue.
433
- continue;
434
- }
435
- // Verify value.
436
- const err = verify_value_scheme(scheme_item, scheme_key, object);
437
- if (err) {
438
- return err;
439
- }
440
- }
441
- }
442
- }
443
- // Return when no throw err.
444
- if (throw_err === false) {
445
- return { error: undefined, invalid_fields: {}, object };
446
- }
447
- return object;
448
- }
449
- Scheme.verify = verify;
450
- /** @docs
451
- * @title _type_string
452
- * @desc Create a type string from an array
453
- */
454
- function _type_string(type = [], prefix = "") {
455
- if (typeof type === "string") {
456
- return `${prefix}"${type}"`;
457
- }
458
- if (Array.isArray(type) && type.length > 0) {
459
- let str = prefix;
460
- for (let i = 0; i < type.length; i++) {
461
- if (typeof type[i] === "function") {
462
- try {
463
- str += `"${type[i].name}"`;
464
- }
465
- catch (e) {
466
- str += `"${type[i]}"`;
467
- }
468
- }
469
- else {
470
- str += `"${type[i]}"`;
471
- }
472
- if (i === type.length - 2) {
473
- str += " or ";
474
- }
475
- else if (i < type.length - 2) {
476
- str += ", ";
477
- }
478
- }
479
- return str;
480
- }
481
- return "";
482
- }
483
- // Throw an error saying an argument is undefined.
484
- // @note supports keyword (obj) assignment parameters using the same names and a single object argument.
485
- /** @docs
486
- * @title throw_undefined
487
- * @desc Throw an error for undefined arguments
488
- */
489
- function throw_undefined(name, type = [], throw_err = true) {
490
- // Support keyword assignment params.
491
- if (typeof name === "object" && name != null) {
492
- ({
493
- name,
494
- type = [],
495
- throw_err = true,
496
- } = name);
497
- }
498
- const err = `Argument "${name}" should be a defined value${_type_string(type, " of type ")}.`;
499
- if (throw_err) {
500
- throw new Error(err);
501
- }
502
- return err;
503
- }
504
- Scheme.throw_undefined = throw_undefined;
505
- // Throw an error saying an argument is undefined.
506
- // @note supports keyword (obj) assignment parameters using the same names and a single object argument.
507
- /** @docs
508
- * @title throw_invalid_type
509
- * @desc Throw an error for invalid type arguments
510
- */
511
- function throw_invalid_type(name, value, type = [], throw_err = true) {
512
- // Support keyword assignment params.
513
- if (typeof name === "object" && name != null) {
514
- ({
515
- name,
516
- value,
517
- type = [],
518
- throw_err = true,
519
- } = name);
520
- }
521
- const err = `Invalid type "${Scheme.value_type(value)}" for argument "${name}"${_type_string(type, ", the valid type is ")}.`;
522
- if (throw_err) {
523
- throw new Error(err);
524
- }
525
- return err;
526
- }
527
- Scheme.throw_invalid_type = throw_invalid_type;
528
- })(Scheme || (Scheme = {}));
529
- ;
530
- export { Scheme as scheme }; // also export as lowercase for compatibility.
531
- export default Scheme;
@@ -1,3 +0,0 @@
1
- export declare const Settings: {
2
- production: boolean;
3
- };
@@ -1,4 +0,0 @@
1
- // Settings.
2
- export const Settings = {
3
- production: "{{PRODUCTION}}",
4
- };
@@ -1,5 +0,0 @@
1
- export declare const Statics: {
2
- aspect_ratios: any;
3
- aspect_ratio(endpoint: string): any;
4
- };
5
- export { Statics as statics };
@@ -1,124 +0,0 @@
1
- /**
2
- * @author Daan van den Bergh
3
- * @copyright © 2022 - 2025 Daan van den Bergh. All rights reserved.
4
- *
5
- * @note FRONTEND - This file should also be accessable from the frontend.
6
- */
7
- declare namespace StringUtils {
8
- /**
9
- * Removes common indentation from multiline strings.
10
- */
11
- function dedent(data: string | String, allow_empty_first_line?: boolean): string;
12
- /**
13
- * Returns the first character of the string.
14
- */
15
- function first(data: string | String): string | undefined;
16
- /**
17
- * Returns the last character of the string.
18
- */
19
- function last(data: string | String): string | undefined;
20
- /**
21
- * Gets the first non-whitespace character. Optionally ignores newline as whitespace.
22
- */
23
- function first_non_whitespace(data: string | String, line_break?: boolean): string | null;
24
- /**
25
- * Gets the last non-whitespace character. Optionally ignores newline as whitespace.
26
- */
27
- function last_non_whitespace(data: string | String, line_break?: boolean): string | null;
28
- /**
29
- * Gets the first character not in the exclude list, starting from an index.
30
- */
31
- function first_not_of(data: string | String, exclude?: string[], start_index?: number): string | null;
32
- /**
33
- * Gets the index of the first character not in the exclude list, starting from an index.
34
- */
35
- function first_index_not_of(data: string | String, exclude?: string[], start_index?: number): number | null;
36
- /**
37
- * Gets the last character not in the exclude list, searching backward.
38
- */
39
- function last_not_of(data: string | String, exclude?: string[], start_index?: number): string | null;
40
- /**
41
- * Gets the index of the last character not in the exclude list, searching backward.
42
- */
43
- function last_index_not_of(data: string | String, exclude?: string[], start_index?: number): number | null;
44
- /**
45
- * Inserts a substring at the given index.
46
- */
47
- function insert(data: string | String, index: number, substr: string): string;
48
- /**
49
- * Removes characters between start and end indices.
50
- */
51
- function remove_indices(data: string | String, start: number, end: number): string;
52
- /**
53
- * Replaces characters between start and end indices with the given substring.
54
- */
55
- function replace_indices(data: string | String, substr: string, start: number, end: number): string;
56
- /**
57
- * Checks if the string starts with the given substring at an optional index.
58
- */
59
- function eq_first(data: string | String, substr: string, start_index?: number): boolean;
60
- /**
61
- * Checks if the string ends with the given substring.
62
- */
63
- function eq_last(data: string | String, substr: string): boolean;
64
- /**
65
- * Ensures the string ends with one of the given characters, appending the first if not.
66
- */
67
- function ensure_last(data: string | String, ensure_last: string): string;
68
- /**
69
- * Returns true if all characters are uppercase (digits optional).
70
- */
71
- function is_uppercase(data: string | String, allow_digits?: boolean): boolean;
72
- /**
73
- * Capitalizes only the first letter of the string.
74
- */
75
- function capitalize_word(data: string | String): string;
76
- /**
77
- * Capitalizes the first letter of each word separated by whitespace.
78
- */
79
- function capitalize_words(data: string | String): string;
80
- /**
81
- * Removes all instances of the given character(s) from the string.
82
- */
83
- function drop(data: string | String, char: string | string[]): string;
84
- /**
85
- * Returns the reversed string.
86
- */
87
- function reverse(data: string | String): string;
88
- /**
89
- * Generates a random alphanumeric string of the given length.
90
- */
91
- function random(length?: number): string;
92
- /**
93
- * Returns true if the string contains only digits.
94
- */
95
- function is_integer_string(data: string | String): boolean;
96
- /**
97
- * Returns true if the string is a valid floating-point representation.
98
- */
99
- function is_floating_string(data: string | String): boolean;
100
- /**
101
- * Returns info or boolean about numeric string (integer/floating).
102
- */
103
- function is_numeric_string(data: string | String, info?: boolean): boolean | {
104
- integer: boolean;
105
- floating: boolean;
106
- };
107
- /**
108
- * Removes matching quotes from the ends of the string.
109
- */
110
- function unquote(data: string | String): string;
111
- /**
112
- * Wraps the string in quotes if not already quoted.
113
- */
114
- function quote(data: string | String): string;
115
- }
116
- export { StringUtils as String };
117
- /** Extend global string with some basic methods. */
118
- declare global {
119
- interface String {
120
- first(): string | undefined;
121
- last(): string | undefined;
122
- dedent(allow_empty_first_line?: boolean): string;
123
- }
124
- }