@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.
- package/backend/dist/cjs/{blacklist.d.ts → backend/src/blacklist.d.ts} +5 -3
- package/backend/dist/cjs/{blacklist.js → backend/src/blacklist.js} +8 -5
- package/backend/dist/cjs/{cli.js → backend/src/cli.js} +29 -47
- package/backend/dist/cjs/backend/src/database/collection.d.ts +1543 -0
- package/backend/dist/cjs/backend/src/database/collection.js +3042 -0
- package/backend/dist/cjs/backend/src/database/database.d.ts +66 -0
- package/backend/dist/cjs/{database → backend/src/database}/database.js +48 -43
- package/backend/dist/cjs/backend/src/database/filters/filters.d.ts +6 -0
- package/backend/dist/cjs/backend/src/database/filters/filters.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter.d.ts +223 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_test.js +443 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_test_v0.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v0.d.ts +50 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v0.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v1.d.ts +76 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v1.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v2.d.ts +75 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v2.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v3.d.ts +219 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_filter_v3.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_update_filter.d.ts +165 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_update_filter.js +15 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_update_filter_test.d.ts +5 -0
- package/backend/dist/cjs/backend/src/database/filters/strict_update_filter_test.js +355 -0
- package/backend/dist/cjs/backend/src/database/flatten.d.ts +75 -0
- package/backend/dist/cjs/{logger.js → backend/src/database/flatten.js} +18 -7
- package/backend/dist/cjs/backend/src/database/flatten_test.js +175 -0
- package/backend/dist/cjs/backend/src/database/quota/quota.d.ts +461 -0
- package/backend/dist/cjs/backend/src/database/quota/quota.js +1014 -0
- package/backend/dist/cjs/backend/src/database/quota/quota_v1.d.ts +534 -0
- package/backend/dist/cjs/backend/src/database/quota/quota_v1.js +1087 -0
- package/backend/dist/cjs/backend/src/database/quota/safe_int.d.ts +293 -0
- package/backend/dist/cjs/backend/src/database/quota/safe_int.js +573 -0
- package/backend/dist/{esm → cjs/backend/src}/endpoint.d.ts +69 -46
- package/backend/dist/cjs/{endpoint.js → backend/src/endpoint.js} +87 -101
- package/backend/dist/cjs/backend/src/errors/index.d.ts +7 -0
- package/backend/dist/cjs/backend/src/errors/index.js +25 -0
- package/backend/dist/{esm/utils.d.ts → cjs/backend/src/errors/internal_external.d.ts} +14 -22
- package/backend/dist/cjs/backend/src/errors/internal_external.js +85 -0
- package/backend/dist/cjs/backend/src/errors/invalid_usage_error.d.ts +38 -0
- package/backend/dist/cjs/{mutex.js → backend/src/errors/invalid_usage_error.js} +20 -37
- package/backend/dist/cjs/backend/src/errors/system_error.d.ts +230 -0
- package/backend/dist/cjs/backend/src/errors/system_error.js +393 -0
- package/backend/dist/cjs/backend/src/events.d.ts +54 -0
- package/backend/dist/cjs/backend/src/events.js +15 -0
- package/backend/dist/cjs/{frontend.js → backend/src/frontend.js} +1 -1
- package/backend/dist/cjs/{image_endpoint.d.ts → backend/src/image_endpoint.d.ts} +16 -1
- package/backend/dist/cjs/{image_endpoint.js → backend/src/image_endpoint.js} +3 -5
- package/backend/dist/cjs/backend/src/logger.d.ts +5 -0
- package/backend/dist/cjs/backend/src/logger.js +15 -0
- package/backend/dist/cjs/backend/src/meta.d.ts +64 -0
- package/backend/dist/cjs/{meta.js → backend/src/meta.js} +9 -12
- package/backend/dist/cjs/backend/src/payments/paddle.d.ts +326 -0
- package/backend/dist/cjs/{payments → backend/src/payments}/paddle.js +377 -327
- package/backend/dist/cjs/backend/src/plugins/browser.d.ts +1 -0
- package/backend/dist/cjs/backend/src/plugins/browser.js +15 -0
- package/backend/dist/cjs/backend/src/plugins/mail/mail.d.ts +248 -0
- package/backend/dist/cjs/backend/src/plugins/mail/mail.js +379 -0
- package/backend/dist/{esm → cjs/backend/src}/plugins/mail/ui.d.ts +23 -0
- package/backend/dist/cjs/backend/src/plugins/pdf.d.ts +1 -0
- package/backend/dist/cjs/backend/src/rate_limit.d.ts +145 -0
- package/backend/dist/cjs/backend/src/rate_limit.js +549 -0
- package/backend/dist/cjs/{route.d.ts → backend/src/route.d.ts} +3 -10
- package/backend/dist/cjs/{route.js → backend/src/route.js} +23 -21
- package/backend/dist/cjs/backend/src/server.d.ts +485 -0
- package/backend/dist/cjs/{server.js → backend/src/server.js} +688 -873
- package/backend/dist/cjs/backend/src/splash_screen.d.ts +80 -0
- package/backend/dist/cjs/{splash_screen.js → backend/src/splash_screen.js} +24 -3
- package/backend/dist/cjs/backend/src/status.d.ts +74 -0
- package/backend/dist/cjs/{status.js → backend/src/status.js} +64 -64
- package/backend/dist/cjs/backend/src/stream.d.ts +376 -0
- package/backend/dist/cjs/{stream.js → backend/src/stream.js} +299 -276
- package/backend/dist/cjs/backend/src/users.d.ts +807 -0
- package/backend/dist/cjs/backend/src/users.js +1971 -0
- package/backend/dist/cjs/backend/src/utils.d.ts +16 -0
- package/backend/dist/cjs/{utils.js → backend/src/utils.js} +14 -77
- package/backend/dist/{esm → cjs/backend/src}/view.d.ts +33 -11
- package/backend/dist/cjs/backend/src/view.js +508 -0
- package/backend/dist/{esm → cjs/backend/src}/volt.d.ts +10 -1
- package/backend/dist/cjs/{volt.js → backend/src/volt.js} +8 -5
- package/backend/dist/cjs/frontend/src/modules/request.d.ts +70 -0
- package/backend/dist/cjs/frontend/src/modules/request.js +99 -0
- package/backend/dist/esm/{blacklist.d.ts → backend/src/blacklist.d.ts} +5 -3
- package/backend/dist/esm/{blacklist.js → backend/src/blacklist.js} +9 -6
- package/backend/dist/esm/{cli.js → backend/src/cli.js} +43 -60
- package/backend/dist/esm/backend/src/database/collection.d.ts +1543 -0
- package/backend/dist/esm/backend/src/database/collection.js +3510 -0
- package/backend/dist/esm/backend/src/database/database.d.ts +66 -0
- package/backend/dist/esm/{database → backend/src/database}/database.js +62 -103
- package/backend/dist/esm/backend/src/database/document.d.ts +1 -0
- package/backend/dist/esm/backend/src/database/document.js +558 -0
- package/backend/dist/esm/backend/src/database/filters/filters.d.ts +6 -0
- package/backend/dist/esm/backend/src/database/filters/filters.js +1 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter.d.ts +223 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter.js +3 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_test.d.ts +1 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_test.js +505 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_test_v0.d.ts +1 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_test_v0.js +712 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v0.d.ts +50 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v0.js +5 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v1.d.ts +76 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v1.js +44 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v2.d.ts +75 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v2.js +5 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v3.d.ts +219 -0
- package/backend/dist/esm/backend/src/database/filters/strict_filter_v3.js +1 -0
- package/backend/dist/esm/backend/src/database/filters/strict_update_filter.d.ts +165 -0
- package/backend/dist/esm/backend/src/database/filters/strict_update_filter.js +5 -0
- package/backend/dist/esm/backend/src/database/filters/strict_update_filter_test.d.ts +5 -0
- package/backend/dist/esm/backend/src/database/filters/strict_update_filter_test.js +405 -0
- package/backend/dist/esm/backend/src/database/flatten.d.ts +75 -0
- package/backend/dist/esm/backend/src/database/flatten.js +22 -0
- package/backend/dist/esm/backend/src/database/flatten_test.d.ts +1 -0
- package/backend/dist/esm/backend/src/database/flatten_test.js +174 -0
- package/backend/dist/esm/backend/src/database/quota/quota.d.ts +461 -0
- package/backend/dist/esm/backend/src/database/quota/quota.js +1118 -0
- package/backend/dist/esm/backend/src/database/quota/quota_v1.d.ts +534 -0
- package/backend/dist/esm/backend/src/database/quota/quota_v1.js +1242 -0
- package/backend/dist/esm/backend/src/database/quota/safe_int.d.ts +293 -0
- package/backend/dist/esm/backend/src/database/quota/safe_int.js +602 -0
- package/backend/dist/{cjs → esm/backend/src}/endpoint.d.ts +69 -46
- package/backend/dist/esm/{endpoint.js → backend/src/endpoint.js} +136 -127
- package/backend/dist/esm/backend/src/errors/index.d.ts +7 -0
- package/backend/dist/esm/backend/src/errors/index.js +7 -0
- package/backend/dist/{cjs/utils.d.ts → esm/backend/src/errors/internal_external.d.ts} +14 -22
- package/backend/dist/esm/backend/src/errors/internal_external.js +70 -0
- package/backend/dist/esm/backend/src/errors/invalid_usage_error.d.ts +38 -0
- package/backend/dist/esm/backend/src/errors/invalid_usage_error.js +30 -0
- package/backend/dist/esm/backend/src/errors/system_error.d.ts +230 -0
- package/backend/dist/esm/backend/src/errors/system_error.js +402 -0
- package/backend/dist/esm/backend/src/events.d.ts +54 -0
- package/backend/dist/esm/backend/src/events.js +5 -0
- package/backend/dist/esm/{frontend.js → backend/src/frontend.js} +1 -1
- package/backend/dist/esm/{image_endpoint.d.ts → backend/src/image_endpoint.d.ts} +16 -1
- package/backend/dist/esm/{image_endpoint.js → backend/src/image_endpoint.js} +16 -20
- package/backend/dist/esm/backend/src/logger.d.ts +5 -0
- package/backend/dist/esm/backend/src/logger.js +8 -0
- package/backend/dist/esm/backend/src/meta.d.ts +64 -0
- package/backend/dist/esm/{meta.js → backend/src/meta.js} +15 -54
- package/backend/dist/esm/backend/src/payments/paddle.d.ts +326 -0
- package/backend/dist/esm/{payments → backend/src/payments}/paddle.js +417 -452
- package/backend/dist/esm/backend/src/plugins/browser.d.ts +1 -0
- package/backend/dist/esm/backend/src/plugins/browser.js +170 -0
- package/backend/dist/esm/backend/src/plugins/mail/mail.d.ts +248 -0
- package/backend/dist/esm/backend/src/plugins/mail/mail.js +389 -0
- package/backend/dist/{cjs → esm/backend/src}/plugins/mail/ui.d.ts +23 -0
- package/backend/dist/esm/{plugins → backend/src/plugins}/mail/ui.js +3 -6
- package/backend/dist/esm/backend/src/plugins/pdf.d.ts +1 -0
- package/backend/dist/esm/{plugins → backend/src/plugins}/pdf.js +3 -3
- package/backend/dist/esm/backend/src/rate_limit.d.ts +145 -0
- package/backend/dist/esm/backend/src/rate_limit.js +667 -0
- package/backend/dist/esm/{route.d.ts → backend/src/route.d.ts} +3 -10
- package/backend/dist/esm/{route.js → backend/src/route.js} +26 -21
- package/backend/dist/esm/backend/src/server.d.ts +485 -0
- package/backend/dist/esm/{server.js → backend/src/server.js} +891 -1441
- package/backend/dist/esm/backend/src/splash_screen.d.ts +80 -0
- package/backend/dist/esm/{splash_screen.js → backend/src/splash_screen.js} +42 -55
- package/backend/dist/esm/backend/src/status.d.ts +74 -0
- package/backend/dist/esm/backend/src/status.js +199 -0
- package/backend/dist/esm/backend/src/stream.d.ts +376 -0
- package/backend/dist/esm/{stream.js → backend/src/stream.js} +327 -292
- package/backend/dist/esm/backend/src/users.d.ts +809 -0
- package/backend/dist/esm/backend/src/users.js +2140 -0
- package/backend/dist/esm/backend/src/utils.d.ts +16 -0
- package/backend/dist/esm/{utils.js → backend/src/utils.js} +20 -81
- package/backend/dist/{cjs → esm/backend/src}/view.d.ts +33 -11
- package/backend/dist/esm/{view.js → backend/src/view.js} +266 -86
- package/backend/dist/{cjs → esm/backend/src}/volt.d.ts +10 -1
- package/backend/dist/esm/{volt.js → backend/src/volt.js} +7 -4
- package/backend/dist/esm/frontend/src/modules/request.d.ts +70 -0
- package/backend/dist/esm/frontend/src/modules/request.js +117 -0
- package/frontend/dist/backend/src/database/collection.d.ts +1543 -0
- package/frontend/dist/backend/src/database/collection.js +3510 -0
- package/frontend/dist/backend/src/database/database.d.ts +66 -0
- package/frontend/dist/backend/src/database/database.js +196 -0
- package/frontend/dist/backend/src/database/filters/filters.d.ts +6 -0
- package/frontend/dist/backend/src/database/filters/filters.js +1 -0
- package/frontend/dist/backend/src/database/filters/strict_filter.d.ts +223 -0
- package/frontend/dist/backend/src/database/filters/strict_filter.js +3 -0
- package/frontend/dist/backend/src/database/filters/strict_update_filter.d.ts +165 -0
- package/frontend/dist/backend/src/database/filters/strict_update_filter.js +5 -0
- package/frontend/dist/backend/src/database/flatten.d.ts +75 -0
- package/frontend/dist/backend/src/database/flatten.js +22 -0
- package/frontend/dist/backend/src/endpoint.d.ts +204 -0
- package/frontend/dist/backend/src/endpoint.js +570 -0
- package/frontend/dist/backend/src/errors/index.d.ts +7 -0
- package/frontend/dist/backend/src/errors/index.js +7 -0
- package/frontend/dist/backend/src/errors/internal_external.d.ts +38 -0
- package/frontend/dist/backend/src/errors/internal_external.js +70 -0
- package/frontend/dist/backend/src/errors/invalid_usage_error.d.ts +38 -0
- package/frontend/dist/backend/src/errors/invalid_usage_error.js +30 -0
- package/frontend/dist/backend/src/errors/system_error.d.ts +230 -0
- package/frontend/dist/backend/src/errors/system_error.js +402 -0
- package/frontend/dist/backend/src/events.d.ts +54 -0
- package/frontend/dist/backend/src/events.js +5 -0
- package/frontend/dist/backend/src/frontend.d.ts +11 -0
- package/frontend/dist/backend/src/frontend.js +12 -0
- package/frontend/dist/backend/src/image_endpoint.d.ts +39 -0
- package/frontend/dist/backend/src/image_endpoint.js +202 -0
- package/frontend/dist/backend/src/meta.d.ts +64 -0
- package/frontend/dist/backend/src/meta.js +110 -0
- package/frontend/dist/backend/src/payments/paddle.d.ts +326 -0
- package/frontend/dist/backend/src/payments/paddle.js +2256 -0
- package/frontend/dist/backend/src/plugins/mail/mail.d.ts +248 -0
- package/frontend/dist/backend/src/plugins/mail/mail.js +389 -0
- package/{backend/dist/esm/plugins/mail.d.ts → frontend/dist/backend/src/plugins/mail/ui.d.ts} +23 -0
- package/{backend/dist/esm/plugins/mail.js → frontend/dist/backend/src/plugins/mail/ui.js} +3 -6
- package/frontend/dist/backend/src/rate_limit.d.ts +145 -0
- package/frontend/dist/backend/src/rate_limit.js +673 -0
- package/frontend/dist/backend/src/route.d.ts +35 -0
- package/frontend/dist/backend/src/route.js +212 -0
- package/frontend/dist/backend/src/server.d.ts +485 -0
- package/frontend/dist/backend/src/server.js +2670 -0
- package/frontend/dist/backend/src/splash_screen.d.ts +80 -0
- package/frontend/dist/backend/src/splash_screen.js +135 -0
- package/frontend/dist/backend/src/status.d.ts +74 -0
- package/frontend/dist/backend/src/status.js +199 -0
- package/frontend/dist/backend/src/stream.d.ts +376 -0
- package/frontend/dist/backend/src/stream.js +1007 -0
- package/frontend/dist/backend/src/users.d.ts +807 -0
- package/frontend/dist/backend/src/users.js +2118 -0
- package/frontend/dist/backend/src/utils.d.ts +16 -0
- package/frontend/dist/backend/src/utils.js +241 -0
- package/frontend/dist/backend/src/view.d.ts +162 -0
- package/frontend/dist/backend/src/view.js +720 -0
- package/frontend/dist/frontend/src/elements/base.d.ts +4414 -0
- package/frontend/dist/{elements → frontend/src/elements}/base.js +3624 -260
- package/frontend/dist/frontend/src/elements/module.d.ts +95 -0
- package/frontend/dist/{elements → frontend/src/elements}/module.js +53 -52
- package/frontend/dist/frontend/src/elements/types.d.ts +52 -0
- package/frontend/dist/frontend/src/elements/types.js +5 -0
- package/frontend/dist/frontend/src/modules/attachment.d.ts +126 -0
- package/frontend/dist/frontend/src/modules/attachment.js +306 -0
- package/frontend/dist/frontend/src/modules/auth.d.ts +44 -0
- package/frontend/dist/frontend/src/modules/auth.js +80 -0
- package/frontend/dist/{modules → frontend/src/modules}/color.js +2 -2
- package/frontend/dist/frontend/src/modules/compression.d.ts +39 -0
- package/frontend/dist/frontend/src/modules/compression.js +102 -0
- package/frontend/dist/frontend/src/modules/cookies.d.ts +44 -0
- package/frontend/dist/frontend/src/modules/cookies.js +143 -0
- package/frontend/dist/frontend/src/modules/events.d.ts +31 -0
- package/frontend/dist/frontend/src/modules/events.js +74 -0
- package/frontend/dist/frontend/src/modules/google.d.ts +23 -0
- package/frontend/dist/frontend/src/modules/google.js +52 -0
- package/frontend/dist/frontend/src/modules/meta.d.ts +14 -0
- package/frontend/dist/{modules → frontend/src/modules}/meta.js +9 -7
- package/frontend/dist/{modules → frontend/src/modules}/paddle.d.ts +37 -134
- package/frontend/dist/{modules → frontend/src/modules}/paddle.js +620 -568
- package/frontend/dist/frontend/src/modules/request.d.ts +70 -0
- package/frontend/dist/frontend/src/modules/request.js +117 -0
- package/frontend/dist/frontend/src/modules/settings.d.ts +3 -0
- package/frontend/dist/frontend/src/modules/settings.js +5 -0
- package/frontend/dist/frontend/src/modules/statics.d.ts +21 -0
- package/frontend/dist/{modules → frontend/src/modules}/statics.js +15 -18
- package/frontend/dist/frontend/src/modules/support.d.ts +30 -0
- package/frontend/dist/frontend/src/modules/support.js +53 -0
- package/frontend/dist/{modules → frontend/src/modules}/theme.d.ts +67 -0
- package/frontend/dist/{modules → frontend/src/modules}/theme.js +68 -38
- package/frontend/dist/frontend/src/modules/themes.d.ts +12 -0
- package/frontend/dist/frontend/src/modules/themes.js +22 -0
- package/frontend/dist/frontend/src/modules/user.d.ts +164 -0
- package/frontend/dist/frontend/src/modules/user.js +268 -0
- package/frontend/dist/frontend/src/modules/utils.d.ts +176 -0
- package/frontend/dist/frontend/src/modules/utils.js +569 -0
- package/frontend/dist/frontend/src/types/gradient.d.ts +29 -0
- package/frontend/dist/{types → frontend/src/types}/gradient.js +14 -18
- package/frontend/dist/frontend/src/ui/border_button.d.ts +94 -0
- package/frontend/dist/{ui → frontend/src/ui}/border_button.js +7 -13
- package/frontend/dist/frontend/src/ui/button.d.ts +28 -0
- package/frontend/dist/{ui → frontend/src/ui}/button.js +21 -12
- package/frontend/dist/frontend/src/ui/canvas.d.ts +138 -0
- package/frontend/dist/{ui → frontend/src/ui}/canvas.js +88 -55
- package/frontend/dist/frontend/src/ui/checkbox.d.ts +74 -0
- package/frontend/dist/{ui → frontend/src/ui}/checkbox.js +80 -41
- package/frontend/dist/{ui → frontend/src/ui}/code.d.ts +73 -6
- package/frontend/dist/{ui → frontend/src/ui}/code.js +55 -52
- package/frontend/dist/{ui → frontend/src/ui}/context_menu.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/context_menu.js +12 -17
- package/frontend/dist/{ui → frontend/src/ui}/css.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/css.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/divider.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/divider.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/dropdown.d.ts +57 -2
- package/frontend/dist/{ui → frontend/src/ui}/dropdown.js +87 -94
- package/frontend/dist/{ui → frontend/src/ui}/for_each.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/for_each.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/form.d.ts +6 -2
- package/frontend/dist/{ui → frontend/src/ui}/form.js +10 -7
- package/frontend/dist/frontend/src/ui/frame_modes.d.ts +37 -0
- package/frontend/dist/{ui → frontend/src/ui}/frame_modes.js +16 -22
- package/frontend/dist/{ui → frontend/src/ui}/google_map.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/google_map.js +4 -4
- package/frontend/dist/{ui → frontend/src/ui}/gradient.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/gradient.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/image.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/image.js +5 -5
- package/frontend/dist/frontend/src/ui/input.d.ts +392 -0
- package/frontend/dist/{ui → frontend/src/ui}/input.js +346 -360
- package/frontend/dist/{ui → frontend/src/ui}/link.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/link.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/list.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/list.js +12 -6
- package/frontend/dist/frontend/src/ui/loader_button.d.ts +80 -0
- package/frontend/dist/{ui → frontend/src/ui}/loader_button.js +35 -47
- package/frontend/dist/frontend/src/ui/loaders.d.ts +57 -0
- package/frontend/dist/{ui → frontend/src/ui}/loaders.js +11 -11
- package/frontend/dist/{ui → frontend/src/ui}/popup.d.ts +11 -6
- package/frontend/dist/{ui → frontend/src/ui}/popup.js +32 -18
- package/frontend/dist/frontend/src/ui/pseudo.d.ts +44 -0
- package/frontend/dist/{ui → frontend/src/ui}/pseudo.js +84 -8
- package/frontend/dist/{ui → frontend/src/ui}/scroller.d.ts +14 -2
- package/frontend/dist/{ui → frontend/src/ui}/scroller.js +37 -43
- package/frontend/dist/{ui → frontend/src/ui}/slider.d.ts +5 -1
- package/frontend/dist/{ui → frontend/src/ui}/slider.js +4 -4
- package/frontend/dist/{ui → frontend/src/ui}/spacer.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/spacer.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/span.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/span.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/stack.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/stack.js +3 -9
- package/frontend/dist/frontend/src/ui/steps.d.ts +131 -0
- package/frontend/dist/{ui → frontend/src/ui}/steps.js +30 -45
- package/frontend/dist/{ui → frontend/src/ui}/style.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/style.js +3 -3
- package/frontend/dist/{ui → frontend/src/ui}/switch.d.ts +5 -1
- package/frontend/dist/{ui → frontend/src/ui}/switch.js +4 -4
- package/frontend/dist/{ui → frontend/src/ui}/table.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/table.js +6 -6
- package/frontend/dist/{ui → frontend/src/ui}/tabs.d.ts +45 -3
- package/frontend/dist/{ui → frontend/src/ui}/tabs.js +65 -40
- package/frontend/dist/{ui → frontend/src/ui}/text.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/text.js +3 -3
- package/frontend/dist/frontend/src/ui/title.d.ts +91 -0
- package/frontend/dist/frontend/src/ui/title.js +272 -0
- package/frontend/dist/{ui → frontend/src/ui}/view.d.ts +4 -0
- package/frontend/dist/{ui → frontend/src/ui}/view.js +3 -3
- package/frontend/dist/{volt.d.ts → frontend/src/volt.d.ts} +3 -0
- package/frontend/dist/{volt.js → frontend/src/volt.js} +4 -0
- package/frontend/tools/bundle_d_ts.js +71 -0
- package/frontend/tools/convert_to_jsdoc_input.txt +9452 -0
- package/frontend/tools/convert_to_jsdoc_output.txt +7626 -0
- package/frontend/tools/convert_to_jsdoc_tmp.js +345 -0
- package/package.json +11 -12
- package/backend/dist/cjs/database/collection.d.ts +0 -160
- package/backend/dist/cjs/database/collection.js +0 -842
- package/backend/dist/cjs/database/database.d.ts +0 -121
- package/backend/dist/cjs/database/document.d.ts +0 -131
- package/backend/dist/cjs/database/document.js +0 -224
- package/backend/dist/cjs/database.d.ts +0 -502
- package/backend/dist/cjs/database.js +0 -2248
- package/backend/dist/cjs/logger.d.ts +0 -3
- package/backend/dist/cjs/meta.d.ts +0 -50
- package/backend/dist/cjs/mutex.d.ts +0 -24
- package/backend/dist/cjs/payments/paddle.d.ts +0 -160
- package/backend/dist/cjs/plugins/browser.d.ts +0 -36
- package/backend/dist/cjs/plugins/browser.js +0 -198
- package/backend/dist/cjs/plugins/css.d.ts +0 -11
- package/backend/dist/cjs/plugins/css.js +0 -80
- package/backend/dist/cjs/plugins/mail.d.ts +0 -277
- package/backend/dist/cjs/plugins/mail.js +0 -1370
- package/backend/dist/cjs/plugins/ts/compiler.d.ts +0 -139
- package/backend/dist/cjs/plugins/ts/compiler.js +0 -750
- package/backend/dist/cjs/plugins/ts/preprocessing.d.ts +0 -14
- package/backend/dist/cjs/plugins/ts/preprocessing.js +0 -440
- package/backend/dist/cjs/rate_limit.d.ts +0 -63
- package/backend/dist/cjs/rate_limit.js +0 -348
- package/backend/dist/cjs/request.deprc.d.ts +0 -48
- package/backend/dist/cjs/request.deprc.js +0 -572
- package/backend/dist/cjs/response.deprc.d.ts +0 -55
- package/backend/dist/cjs/response.deprc.js +0 -275
- package/backend/dist/cjs/server.d.ts +0 -342
- package/backend/dist/cjs/splash_screen.d.ts +0 -35
- package/backend/dist/cjs/status.d.ts +0 -61
- package/backend/dist/cjs/stream.d.ts +0 -79
- package/backend/dist/cjs/users.d.ts +0 -111
- package/backend/dist/cjs/users.js +0 -1817
- package/backend/dist/cjs/view.js +0 -352
- package/backend/dist/cjs/vinc.dev.d.ts +0 -3
- package/backend/dist/cjs/vinc.dev.js +0 -7
- package/backend/dist/css/adyen.css +0 -92
- package/backend/dist/css/volt.css +0 -70
- package/backend/dist/esm/database/collection.d.ts +0 -160
- package/backend/dist/esm/database/collection.js +0 -1328
- package/backend/dist/esm/database/database.d.ts +0 -121
- package/backend/dist/esm/database/document.d.ts +0 -131
- package/backend/dist/esm/database/document.js +0 -247
- package/backend/dist/esm/database.d.ts +0 -502
- package/backend/dist/esm/database.js +0 -2423
- package/backend/dist/esm/file_watcher.js +0 -329
- package/backend/dist/esm/logger.d.ts +0 -3
- package/backend/dist/esm/logger.js +0 -11
- package/backend/dist/esm/meta.d.ts +0 -50
- package/backend/dist/esm/mutex.d.ts +0 -24
- package/backend/dist/esm/mutex.js +0 -48
- package/backend/dist/esm/payments/paddle.d.ts +0 -160
- package/backend/dist/esm/plugins/browser.d.ts +0 -36
- package/backend/dist/esm/plugins/browser.js +0 -176
- package/backend/dist/esm/plugins/css.d.ts +0 -11
- package/backend/dist/esm/plugins/css.js +0 -90
- package/backend/dist/esm/plugins/ts/compiler.d.ts +0 -139
- package/backend/dist/esm/plugins/ts/compiler.js +0 -1194
- package/backend/dist/esm/plugins/ts/preprocessing.d.ts +0 -14
- package/backend/dist/esm/plugins/ts/preprocessing.js +0 -726
- package/backend/dist/esm/rate_limit.d.ts +0 -63
- package/backend/dist/esm/rate_limit.js +0 -417
- package/backend/dist/esm/request.deprc.d.ts +0 -48
- package/backend/dist/esm/request.deprc.js +0 -572
- package/backend/dist/esm/response.deprc.d.ts +0 -55
- package/backend/dist/esm/response.deprc.js +0 -275
- package/backend/dist/esm/server.d.ts +0 -342
- package/backend/dist/esm/splash_screen.d.ts +0 -35
- package/backend/dist/esm/status.d.ts +0 -61
- package/backend/dist/esm/status.js +0 -197
- package/backend/dist/esm/stream.d.ts +0 -79
- package/backend/dist/esm/users.d.ts +0 -111
- package/backend/dist/esm/users.js +0 -1935
- package/backend/dist/esm/vinc.dev.d.ts +0 -3
- package/backend/dist/esm/vinc.dev.js +0 -7
- package/frontend/dist/elements/base.d.ts +0 -9889
- package/frontend/dist/elements/module.d.ts +0 -30
- package/frontend/dist/modules/array.d.ts +0 -94
- package/frontend/dist/modules/array.js +0 -634
- package/frontend/dist/modules/auth.d.ts +0 -46
- package/frontend/dist/modules/auth.js +0 -139
- package/frontend/dist/modules/colors.d.ts +0 -1
- package/frontend/dist/modules/colors.js +0 -417
- package/frontend/dist/modules/compression.d.ts +0 -6
- package/frontend/dist/modules/compression.js +0 -999
- package/frontend/dist/modules/cookies.d.ts +0 -18
- package/frontend/dist/modules/cookies.js +0 -167
- package/frontend/dist/modules/date.d.ts +0 -142
- package/frontend/dist/modules/date.js +0 -493
- package/frontend/dist/modules/events.d.ts +0 -8
- package/frontend/dist/modules/events.js +0 -91
- package/frontend/dist/modules/google.d.ts +0 -11
- package/frontend/dist/modules/google.js +0 -54
- package/frontend/dist/modules/meta.d.ts +0 -10
- package/frontend/dist/modules/mutex.d.ts +0 -7
- package/frontend/dist/modules/mutex.js +0 -51
- package/frontend/dist/modules/number.d.ts +0 -16
- package/frontend/dist/modules/number.js +0 -23
- package/frontend/dist/modules/object.d.ts +0 -52
- package/frontend/dist/modules/object.js +0 -383
- package/frontend/dist/modules/scheme.d.ts +0 -227
- package/frontend/dist/modules/scheme.js +0 -531
- package/frontend/dist/modules/settings.d.ts +0 -3
- package/frontend/dist/modules/settings.js +0 -4
- package/frontend/dist/modules/statics.d.ts +0 -5
- package/frontend/dist/modules/string.d.ts +0 -124
- package/frontend/dist/modules/string.js +0 -745
- package/frontend/dist/modules/support.d.ts +0 -19
- package/frontend/dist/modules/support.js +0 -103
- package/frontend/dist/modules/themes.d.ts +0 -8
- package/frontend/dist/modules/themes.js +0 -18
- package/frontend/dist/modules/user.d.ts +0 -59
- package/frontend/dist/modules/user.js +0 -280
- package/frontend/dist/modules/utils.d.ts +0 -87
- package/frontend/dist/modules/utils.js +0 -923
- package/frontend/dist/types/gradient.d.ts +0 -12
- package/frontend/dist/ui/border_button.d.ts +0 -152
- package/frontend/dist/ui/button.d.ts +0 -21
- package/frontend/dist/ui/canvas.d.ts +0 -56
- package/frontend/dist/ui/checkbox.d.ts +0 -52
- package/frontend/dist/ui/frame_modes.d.ts +0 -25
- package/frontend/dist/ui/input.d.ts +0 -241
- package/frontend/dist/ui/loader_button.d.ts +0 -93
- package/frontend/dist/ui/loaders.d.ts +0 -57
- package/frontend/dist/ui/pseudo.d.ts +0 -16
- package/frontend/dist/ui/steps.d.ts +0 -59
- package/frontend/dist/ui/title.d.ts +0 -21
- package/frontend/dist/ui/title.js +0 -121
- package/frontend/examples/dashboard/dashboard.ts +0 -776
- /package/backend/dist/cjs/{cli.d.ts → backend/src/cli.d.ts} +0 -0
- /package/backend/dist/cjs/{file_watcher.d.ts → backend/src/database/document.d.ts} +0 -0
- /package/backend/dist/cjs/{file_watcher.js → backend/src/database/document.js} +0 -0
- /package/backend/dist/cjs/{plugins/pdf.d.ts → backend/src/database/filters/strict_filter_test.d.ts} +0 -0
- /package/backend/dist/{esm/file_watcher.d.ts → cjs/backend/src/database/filters/strict_filter_test_v0.d.ts} +0 -0
- /package/backend/dist/{esm/plugins/pdf.d.ts → cjs/backend/src/database/flatten_test.d.ts} +0 -0
- /package/backend/dist/cjs/{frontend.d.ts → backend/src/frontend.d.ts} +0 -0
- /package/backend/dist/cjs/{plugins → backend/src/plugins}/communication.d.ts +0 -0
- /package/backend/dist/cjs/{plugins → backend/src/plugins}/communication.js +0 -0
- /package/backend/dist/cjs/{plugins → backend/src/plugins}/mail/ui.js +0 -0
- /package/backend/dist/cjs/{plugins → backend/src/plugins}/pdf.js +0 -0
- /package/backend/dist/cjs/{plugins → backend/src/plugins}/thread_monitor.d.ts +0 -0
- /package/backend/dist/cjs/{plugins → backend/src/plugins}/thread_monitor.js +0 -0
- /package/backend/dist/cjs/{vinc.d.ts → backend/src/vinc.d.ts} +0 -0
- /package/backend/dist/cjs/{vinc.js → backend/src/vinc.js} +0 -0
- /package/backend/dist/esm/{cli.d.ts → backend/src/cli.d.ts} +0 -0
- /package/backend/dist/esm/{frontend.d.ts → backend/src/frontend.d.ts} +0 -0
- /package/backend/dist/esm/{plugins → backend/src/plugins}/communication.d.ts +0 -0
- /package/backend/dist/esm/{plugins → backend/src/plugins}/communication.js +0 -0
- /package/backend/dist/esm/{plugins → backend/src/plugins}/thread_monitor.d.ts +0 -0
- /package/backend/dist/esm/{plugins → backend/src/plugins}/thread_monitor.js +0 -0
- /package/backend/dist/esm/{vinc.d.ts → backend/src/vinc.d.ts} +0 -0
- /package/backend/dist/esm/{vinc.js → backend/src/vinc.js} +0 -0
- /package/frontend/dist/{elements → frontend/src/elements}/register_element.d.ts +0 -0
- /package/frontend/dist/{elements → frontend/src/elements}/register_element.js +0 -0
- /package/frontend/dist/{modules → frontend/src/modules}/color.d.ts +0 -0
- /package/frontend/dist/{ui → frontend/src/ui}/ui.d.ts +0 -0
- /package/frontend/dist/{ui → frontend/src/ui}/ui.js +0 -0
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author Daan van den Bergh
|
|
3
|
+
* @copyright © 2022 - 2025 Daan van den Bergh. All rights reserved
|
|
4
|
+
*/
|
|
1
5
|
import { View } from './view.js';
|
|
2
6
|
import * as vlib from "@vandenberghinc/vlib";
|
|
3
|
-
import {
|
|
7
|
+
import { RateLimitGroup, RateLimitData } from "./rate_limit.js";
|
|
4
8
|
import { Stream, AuthStream } from "./stream.js";
|
|
5
9
|
import type { Server } from "./server.js";
|
|
6
10
|
import { Route } from './route.js';
|
|
@@ -93,8 +97,7 @@ import { Route } from './route.js';
|
|
|
93
97
|
* and only have to be assigned once. The assigned attributes will be overridden when
|
|
94
98
|
* these attributes are reassigned for the same group.
|
|
95
99
|
*/
|
|
96
|
-
export declare class Endpoint<const S extends vlib.
|
|
97
|
-
static rate_limits: Map<string, any>;
|
|
100
|
+
export declare class Endpoint<const M extends Endpoint.Method = "GET", const E extends string | RegExp = string, const S extends vlib.Schema.Entries.Opts = {}> {
|
|
98
101
|
static compressed_content_types: string[];
|
|
99
102
|
/** Route attributes */
|
|
100
103
|
id: string;
|
|
@@ -102,17 +105,19 @@ export declare class Endpoint<const S extends vlib.scheme.Infer.Scheme.S = {}> {
|
|
|
102
105
|
/** Requires authentication */
|
|
103
106
|
authenticated: boolean;
|
|
104
107
|
/** Parameter scheme validator */
|
|
105
|
-
|
|
108
|
+
params_schema?: vlib.Schema.Validator<object>;
|
|
106
109
|
/** The default response headers */
|
|
107
110
|
headers: [string, string][];
|
|
108
111
|
/** Option 1) User callback - defined as method so a derived endpoint can do that as well. */
|
|
109
|
-
callback?(stream: Stream, params: vlib.
|
|
110
|
-
callback?(stream: AuthStream, params: vlib.
|
|
112
|
+
callback?(stream: Stream, params: vlib.Schema.Entries.Infer<S>): any;
|
|
113
|
+
callback?(stream: AuthStream, params: vlib.Schema.Entries.Infer<S>): any;
|
|
111
114
|
/** Option 2) View based endpoint */
|
|
112
115
|
view?: View;
|
|
113
116
|
/** Option 3) Data endpoint, raw */
|
|
114
|
-
data
|
|
117
|
+
data?: Buffer | string | any[] | Record<any, any>;
|
|
115
118
|
raw_data?: Buffer | string | any[] | Record<any, any>;
|
|
119
|
+
/** Option 4 Data endpoint by file path. */
|
|
120
|
+
file_path?: vlib.Path;
|
|
116
121
|
/** Content length & type */
|
|
117
122
|
content_length?: number;
|
|
118
123
|
content_type?: string;
|
|
@@ -122,60 +127,78 @@ export declare class Endpoint<const S extends vlib.scheme.Infer.Scheme.S = {}> {
|
|
|
122
127
|
allow_sitemap: boolean;
|
|
123
128
|
allow_robots: boolean;
|
|
124
129
|
/** Rate limit groups for internal use. */
|
|
125
|
-
rate_limit_groups:
|
|
130
|
+
rate_limit_groups: RateLimitData[];
|
|
126
131
|
/** Private attributes */
|
|
127
132
|
private _compress;
|
|
128
133
|
private _cache;
|
|
129
|
-
_static_path?: string;
|
|
130
|
-
private _templates;
|
|
131
134
|
private ip_whitelist?;
|
|
132
135
|
private _is_compressed?;
|
|
133
136
|
private _initialized;
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
compress, cache, ip_whitelist, sitemap, robots, allow_unknown_params,
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
137
|
+
/** A reference to the server. */
|
|
138
|
+
server?: Server;
|
|
139
|
+
constructor({ method, endpoint, authenticated, rate_limit, params, compress, cache, ip_whitelist, sitemap, robots, allow_unknown_params, _is_static, callback, view, data, file_path, content_type, }: Endpoint.Opts<M, E, S>);
|
|
140
|
+
/** Initialize with server. */
|
|
141
|
+
_initialize(server: Server): this;
|
|
142
|
+
_dynamic_initialize(): Promise<void>;
|
|
143
|
+
_set_headers(stream: Stream): void;
|
|
144
|
+
_serve_options(stream: Stream): Promise<void>;
|
|
145
|
+
_serve(stream: Stream, status_code?: number): Promise<void>;
|
|
146
|
+
private _load_data_by_path;
|
|
147
|
+
}
|
|
148
|
+
export declare namespace Endpoint {
|
|
149
|
+
/** The endpoint method. */
|
|
150
|
+
type Method = "GET" | "POST" | "DELETE" | "PUT" | "PATCH" | "OPTIONS";
|
|
151
|
+
/** Options for constructing an endpoint. */
|
|
152
|
+
type Opts<M extends Method = Method, E extends string | RegExp = string, S extends vlib.Schema.Entries.Opts = {}> = {
|
|
153
|
+
/**
|
|
154
|
+
* The endpoint method.
|
|
155
|
+
* @default "GET"
|
|
156
|
+
*/
|
|
157
|
+
method?: M extends undefined ? "GET" : M;
|
|
158
|
+
endpoint: E;
|
|
159
|
+
rate_limit?: string | RateLimitGroup | (string | RateLimitGroup)[];
|
|
142
160
|
params?: S;
|
|
143
|
-
callback?: ((stream: Stream, params: vlib.scheme.Infer.Scheme<S>) => any) | ((stream: AuthStream, params: vlib.scheme.Infer.Scheme<S>) => any);
|
|
144
|
-
data?: any;
|
|
145
161
|
compress?: "auto" | boolean;
|
|
146
162
|
cache?: boolean | number;
|
|
147
163
|
ip_whitelist?: string[];
|
|
148
164
|
sitemap?: boolean;
|
|
149
165
|
robots?: boolean;
|
|
150
|
-
_templates?: Record<string, any>;
|
|
151
|
-
_static_path?: string;
|
|
152
166
|
_is_static?: boolean;
|
|
153
167
|
allow_unknown_params?: boolean;
|
|
154
168
|
} & ({
|
|
155
|
-
|
|
156
|
-
|
|
169
|
+
data?: Buffer | string | any[] | Record<any, any>;
|
|
170
|
+
file_path?: never;
|
|
171
|
+
view?: never;
|
|
172
|
+
authenticated?: boolean;
|
|
173
|
+
callback?: never;
|
|
174
|
+
content_type: string;
|
|
175
|
+
} | {
|
|
176
|
+
data?: never;
|
|
177
|
+
file_path: string | vlib.Path;
|
|
178
|
+
authenticated?: boolean;
|
|
179
|
+
callback?: never;
|
|
180
|
+
view?: never;
|
|
181
|
+
content_type: string;
|
|
157
182
|
} | {
|
|
158
|
-
|
|
183
|
+
data?: never;
|
|
184
|
+
file_path?: never;
|
|
185
|
+
authenticated?: false;
|
|
186
|
+
callback: ((stream: Stream, params: vlib.Schema.Entries.Infer<S>) => any);
|
|
187
|
+
view?: never;
|
|
159
188
|
content_type: string;
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
_serve_options(stream: Stream): Promise<void>;
|
|
176
|
-
_serve(stream: Stream, status_code?: number): Promise<void>;
|
|
177
|
-
}
|
|
178
|
-
export declare namespace Endpoint {
|
|
179
|
-
/** Constructor options without the `_server` attribute. */
|
|
180
|
-
type Opts<S extends vlib.scheme.Infer.Scheme.S = {}> = ConstructorParameters<typeof Endpoint<S>>[0];
|
|
189
|
+
} | {
|
|
190
|
+
data?: never;
|
|
191
|
+
file_path?: never;
|
|
192
|
+
authenticated: true;
|
|
193
|
+
callback: ((stream: AuthStream, params: vlib.Schema.Entries.Infer<S>) => any);
|
|
194
|
+
view?: never;
|
|
195
|
+
content_type: string;
|
|
196
|
+
} | {
|
|
197
|
+
data?: never;
|
|
198
|
+
file_path?: never;
|
|
199
|
+
authenticated?: boolean;
|
|
200
|
+
callback?: never;
|
|
201
|
+
view: View | View.Opts;
|
|
202
|
+
content_type?: string;
|
|
203
|
+
});
|
|
181
204
|
}
|
|
@@ -34,17 +34,14 @@ var import_clean_css = __toESM(require("clean-css"));
|
|
|
34
34
|
var import_zlib = __toESM(require("zlib"));
|
|
35
35
|
var import_view = require("./view.js");
|
|
36
36
|
var vlib = __toESM(require("@vandenberghinc/vlib"));
|
|
37
|
-
var
|
|
37
|
+
var import_internal_external = require("./errors/internal_external.js");
|
|
38
38
|
var import_status = require("./status.js");
|
|
39
|
-
var import_logger = require("./logger.js");
|
|
40
39
|
var import_rate_limit = require("./rate_limit.js");
|
|
41
40
|
var import_route = require("./route.js");
|
|
42
41
|
var import_meta = __toESM(require("./meta.js"));
|
|
43
|
-
const { log, error, warn } = import_logger.logger;
|
|
44
42
|
const { debug } = vlib;
|
|
45
43
|
class Endpoint {
|
|
46
44
|
// Static attributes.
|
|
47
|
-
static rate_limits = /* @__PURE__ */ new Map();
|
|
48
45
|
static compressed_content_types = [
|
|
49
46
|
// Image formats (often already compressed)
|
|
50
47
|
"image/jpeg",
|
|
@@ -106,7 +103,7 @@ class Endpoint {
|
|
|
106
103
|
/** Requires authentication */
|
|
107
104
|
authenticated;
|
|
108
105
|
/** Parameter scheme validator */
|
|
109
|
-
|
|
106
|
+
params_schema;
|
|
110
107
|
/** The default response headers */
|
|
111
108
|
headers;
|
|
112
109
|
/** Option 2) View based endpoint */
|
|
@@ -114,6 +111,8 @@ class Endpoint {
|
|
|
114
111
|
/** Option 3) Data endpoint, raw */
|
|
115
112
|
data;
|
|
116
113
|
raw_data;
|
|
114
|
+
/** Option 4 Data endpoint by file path. */
|
|
115
|
+
file_path;
|
|
117
116
|
/** Content length & type */
|
|
118
117
|
content_length;
|
|
119
118
|
content_type;
|
|
@@ -127,35 +126,33 @@ class Endpoint {
|
|
|
127
126
|
/** Private attributes */
|
|
128
127
|
_compress;
|
|
129
128
|
_cache;
|
|
130
|
-
_static_path;
|
|
131
|
-
_templates;
|
|
132
129
|
ip_whitelist;
|
|
133
130
|
_is_compressed;
|
|
134
131
|
_initialized = false;
|
|
135
|
-
|
|
132
|
+
/** A reference to the server. */
|
|
133
|
+
server;
|
|
136
134
|
constructor({
|
|
137
|
-
method
|
|
138
|
-
endpoint
|
|
135
|
+
method,
|
|
136
|
+
endpoint,
|
|
139
137
|
authenticated = false,
|
|
140
138
|
rate_limit = void 0,
|
|
141
139
|
params = void 0,
|
|
142
|
-
callback = void 0,
|
|
143
|
-
view = void 0,
|
|
144
|
-
data = void 0,
|
|
145
|
-
content_type,
|
|
146
|
-
// = "text/plain",
|
|
147
140
|
compress = "auto",
|
|
148
141
|
cache = true,
|
|
149
142
|
ip_whitelist = void 0,
|
|
150
143
|
sitemap = void 0,
|
|
151
144
|
robots = void 0,
|
|
152
145
|
allow_unknown_params = false,
|
|
153
|
-
|
|
154
|
-
//
|
|
155
|
-
|
|
156
|
-
|
|
146
|
+
_is_static = false,
|
|
147
|
+
// mode options.
|
|
148
|
+
callback = void 0,
|
|
149
|
+
view = void 0,
|
|
150
|
+
data = void 0,
|
|
151
|
+
file_path = void 0,
|
|
152
|
+
content_type
|
|
153
|
+
// = "text/plain",
|
|
157
154
|
}) {
|
|
158
|
-
this.route = new import_route.Route(method, endpoint);
|
|
155
|
+
this.route = new import_route.Route(method ?? "GET", endpoint);
|
|
159
156
|
this.id = this.route.id;
|
|
160
157
|
this.authenticated = authenticated;
|
|
161
158
|
if (this.callback === void 0) {
|
|
@@ -166,8 +163,7 @@ class Endpoint {
|
|
|
166
163
|
this._cache = cache;
|
|
167
164
|
this.allow_sitemap = sitemap ?? true;
|
|
168
165
|
this.allow_robots = robots ?? true;
|
|
169
|
-
this.
|
|
170
|
-
this._static_path = _static_path == null ? void 0 : new vlib.Path(_static_path).abs().str();
|
|
166
|
+
this.file_path = file_path == null ? file_path : new vlib.Path(file_path).abs();
|
|
171
167
|
this.ip_whitelist = Array.isArray(ip_whitelist) ? ip_whitelist : void 0;
|
|
172
168
|
this.is_static = _is_static;
|
|
173
169
|
this.headers = [];
|
|
@@ -209,10 +205,20 @@ class Endpoint {
|
|
|
209
205
|
this.rate_limit_groups = [];
|
|
210
206
|
if (Array.isArray(rate_limit)) {
|
|
211
207
|
rate_limit.forEach((item) => {
|
|
212
|
-
|
|
208
|
+
if (typeof item === "string") {
|
|
209
|
+
const group = import_rate_limit.RateLimits.groups.get(item);
|
|
210
|
+
if (!group)
|
|
211
|
+
throw new Error(`Rate limit group "${item}" does not exist.`);
|
|
212
|
+
this.rate_limit_groups.push(group);
|
|
213
|
+
} else {
|
|
214
|
+
this.rate_limit_groups.push(import_rate_limit.RateLimits.add(item));
|
|
215
|
+
}
|
|
213
216
|
});
|
|
214
217
|
} else if (typeof rate_limit === "string") {
|
|
215
|
-
|
|
218
|
+
const group = import_rate_limit.RateLimits.groups.get(rate_limit);
|
|
219
|
+
if (!group)
|
|
220
|
+
throw new Error(`Rate limit group "${rate_limit}" does not exist.`);
|
|
221
|
+
this.rate_limit_groups.push(group);
|
|
216
222
|
} else if (typeof rate_limit === "object" && rate_limit != null) {
|
|
217
223
|
this.rate_limit_groups.push(import_rate_limit.RateLimits.add(rate_limit));
|
|
218
224
|
}
|
|
@@ -230,9 +236,9 @@ class Endpoint {
|
|
|
230
236
|
});
|
|
231
237
|
}
|
|
232
238
|
if (params_scheme != null) {
|
|
233
|
-
this.
|
|
234
|
-
|
|
235
|
-
|
|
239
|
+
this.params_schema = new vlib.Schema.Validator({
|
|
240
|
+
schema: params_scheme,
|
|
241
|
+
unknown: !allow_unknown_params,
|
|
236
242
|
parent: this.route.id + ":",
|
|
237
243
|
throw: false
|
|
238
244
|
});
|
|
@@ -240,7 +246,7 @@ class Endpoint {
|
|
|
240
246
|
}
|
|
241
247
|
/** Initialize with server. */
|
|
242
248
|
_initialize(server) {
|
|
243
|
-
this.
|
|
249
|
+
this.server = server;
|
|
244
250
|
if (this.view != null) {
|
|
245
251
|
this.view._initialize(server, this);
|
|
246
252
|
}
|
|
@@ -253,78 +259,30 @@ class Endpoint {
|
|
|
253
259
|
}
|
|
254
260
|
return this;
|
|
255
261
|
}
|
|
256
|
-
/**
|
|
257
|
-
* Convert a RegExp into a readable path:
|
|
258
|
-
* - strips ^…$ anchors
|
|
259
|
-
* - unescapes `\/` → `/`
|
|
260
|
-
* - `(?<name>…)` → `:name`
|
|
261
|
-
* - anonymous captures `(…)` → `:param1`, `:param2`, …
|
|
262
|
-
*/
|
|
263
|
-
_stringify_endpoint_regex(re) {
|
|
264
|
-
let src = re.source;
|
|
265
|
-
src = src.replace(/^\^/, "").replace(/\$$/, "");
|
|
266
|
-
src = src.replace(/\\\//g, "/");
|
|
267
|
-
src = src.replace(/\(\?<([^>]+)>[^)]+\)/g, (_match, name) => `:${name}`);
|
|
268
|
-
let idx = 1;
|
|
269
|
-
src = src.replace(/\((?!\?)[^)]+\)/g, () => `:param${idx++}`);
|
|
270
|
-
return src;
|
|
271
|
-
}
|
|
272
|
-
// Load data by path.
|
|
273
|
-
_load_data_by_path(server) {
|
|
274
|
-
const path = new vlib.Path(this._static_path);
|
|
275
|
-
let data;
|
|
276
|
-
if (path.extension() === ".js") {
|
|
277
|
-
data = path.load_sync();
|
|
278
|
-
} else if (path.extension() === ".css") {
|
|
279
|
-
const minifier = new import_clean_css.default();
|
|
280
|
-
data = minifier.minify(path.load_sync()).styles;
|
|
281
|
-
} else {
|
|
282
|
-
data = path.load_sync({ type: "buffer" });
|
|
283
|
-
}
|
|
284
|
-
if (this._templates && typeof data === "string") {
|
|
285
|
-
data = import_utils.Utils.fill_templates(data, this._templates);
|
|
286
|
-
}
|
|
287
|
-
this.data = data;
|
|
288
|
-
return this;
|
|
289
|
-
}
|
|
290
|
-
// Set default headers.
|
|
291
|
-
_set_headers(stream) {
|
|
292
|
-
this.headers.forEach((item) => {
|
|
293
|
-
stream.set_header(item[0], item[1]);
|
|
294
|
-
});
|
|
295
|
-
}
|
|
296
|
-
// Refresh for file watcher.
|
|
297
|
-
async _refresh(server) {
|
|
298
|
-
if (server.production) {
|
|
299
|
-
throw new Error("This function is not designed for production mode.");
|
|
300
|
-
}
|
|
301
|
-
if (this.view != null) {
|
|
302
|
-
await this.view._build_html();
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
262
|
// Initialize.
|
|
306
263
|
async _dynamic_initialize() {
|
|
307
|
-
if (!this.
|
|
264
|
+
if (!this.server) {
|
|
308
265
|
throw new Error(`Endpoint "${this.id}" is not initialized by the server yet.`);
|
|
309
266
|
}
|
|
310
|
-
if (this.
|
|
311
|
-
|
|
267
|
+
if (this.file_path != null) {
|
|
268
|
+
this._load_data_by_path(this.server);
|
|
312
269
|
}
|
|
313
|
-
if (this.
|
|
270
|
+
if (this.server.production && this.callback == null && this._compress) {
|
|
314
271
|
this._is_compressed = true;
|
|
315
272
|
if (this.data != null && (this.data instanceof Buffer || typeof this.data === "string")) {
|
|
316
273
|
this.raw_data = this.data;
|
|
317
274
|
this.data = import_zlib.default.gzipSync(this.data, { level: import_zlib.default.constants.Z_BEST_COMPRESSION });
|
|
318
275
|
this.content_length = this.data.length;
|
|
319
|
-
} else if (this.view != null) {
|
|
320
|
-
this.view.raw_html = this.view.html;
|
|
321
|
-
this.view.html = import_zlib.default.gzipSync(this.view.html, { level: import_zlib.default.constants.Z_BEST_COMPRESSION });
|
|
322
|
-
this.content_length = this.view.html.length;
|
|
323
276
|
}
|
|
324
277
|
debug(2, this.route.id, ": ", "Compressed - content_length:", this.content_length);
|
|
325
278
|
}
|
|
326
|
-
this.
|
|
327
|
-
|
|
279
|
+
if (!this.server.production) {
|
|
280
|
+
this._cache = false;
|
|
281
|
+
}
|
|
282
|
+
if (
|
|
283
|
+
// (this.callback == null || this.is_image_endpoint) &&
|
|
284
|
+
typeof this._cache === "number" || this._cache === true
|
|
285
|
+
) {
|
|
328
286
|
if (this._cache === 1 || this._cache === true) {
|
|
329
287
|
this.headers.push(["Cache-Control", "max-age=86400"]);
|
|
330
288
|
} else {
|
|
@@ -346,6 +304,12 @@ class Endpoint {
|
|
|
346
304
|
}
|
|
347
305
|
this._initialized = true;
|
|
348
306
|
}
|
|
307
|
+
// Set default headers.
|
|
308
|
+
_set_headers(stream) {
|
|
309
|
+
this.headers.forEach((item) => {
|
|
310
|
+
stream.set_header(item[0], item[1]);
|
|
311
|
+
});
|
|
312
|
+
}
|
|
349
313
|
// Serve a client.
|
|
350
314
|
async _serve_options(stream) {
|
|
351
315
|
if (!this._initialized) {
|
|
@@ -353,13 +317,17 @@ class Endpoint {
|
|
|
353
317
|
}
|
|
354
318
|
try {
|
|
355
319
|
if (this.ip_whitelist && !this.ip_whitelist.includes(stream.ip)) {
|
|
356
|
-
stream.
|
|
320
|
+
stream.error({
|
|
357
321
|
status: import_status.Status.unauthorized,
|
|
358
|
-
|
|
322
|
+
type: "Unauthorized",
|
|
323
|
+
message: "Unauthorized."
|
|
359
324
|
});
|
|
360
325
|
return;
|
|
361
326
|
}
|
|
362
327
|
this._set_headers(stream);
|
|
328
|
+
if (this.content_length == null && this.view != null) {
|
|
329
|
+
stream.set_header("Content-Length", (await this.view.content_length()).toString());
|
|
330
|
+
}
|
|
363
331
|
stream.send({ status: import_status.Status.no_content });
|
|
364
332
|
} catch (err) {
|
|
365
333
|
throw err;
|
|
@@ -371,7 +339,7 @@ class Endpoint {
|
|
|
371
339
|
}
|
|
372
340
|
try {
|
|
373
341
|
if (this.ip_whitelist && !this.ip_whitelist.includes(stream.ip)) {
|
|
374
|
-
log(2, this.route.id, ": ", "Blocking ip ", stream.ip, " per ip whitelist.");
|
|
342
|
+
this.server?.log(2, this.route.id, ": ", "Blocking ip ", stream.ip, " per ip whitelist.");
|
|
375
343
|
stream.send({
|
|
376
344
|
status: import_status.Status.unauthorized,
|
|
377
345
|
data: "Unauthorized."
|
|
@@ -380,15 +348,15 @@ class Endpoint {
|
|
|
380
348
|
}
|
|
381
349
|
this._set_headers(stream);
|
|
382
350
|
if (this.callback != null) {
|
|
383
|
-
log(3, this.route.id, ": ", "Serving endpoint in callback mode.");
|
|
384
|
-
if (this.
|
|
385
|
-
const { error
|
|
386
|
-
if (
|
|
351
|
+
this.server?.log(3, this.route.id, ": ", "Serving endpoint in callback mode.");
|
|
352
|
+
if (this.params_schema != null) {
|
|
353
|
+
const { error, invalid_fields } = this.params_schema.validate(stream.params ?? {});
|
|
354
|
+
if (error) {
|
|
387
355
|
stream.send({
|
|
388
356
|
status: import_status.Status.bad_request,
|
|
389
357
|
headers: { "Content-Type": "application/json" },
|
|
390
358
|
data: {
|
|
391
|
-
error
|
|
359
|
+
error,
|
|
392
360
|
invalid_fields
|
|
393
361
|
}
|
|
394
362
|
});
|
|
@@ -397,7 +365,7 @@ class Endpoint {
|
|
|
397
365
|
}
|
|
398
366
|
try {
|
|
399
367
|
let promise;
|
|
400
|
-
if (this.
|
|
368
|
+
if (this.params_schema != null) {
|
|
401
369
|
promise = this.callback(stream, stream.params ?? {});
|
|
402
370
|
} else {
|
|
403
371
|
promise = this.callback(stream, {});
|
|
@@ -406,7 +374,7 @@ class Endpoint {
|
|
|
406
374
|
await promise;
|
|
407
375
|
}
|
|
408
376
|
} catch (err) {
|
|
409
|
-
if (err instanceof
|
|
377
|
+
if (err instanceof import_internal_external.ExternalError || err instanceof import_internal_external.InternalError) {
|
|
410
378
|
err.serve(stream);
|
|
411
379
|
} else {
|
|
412
380
|
stream.error({
|
|
@@ -416,15 +384,15 @@ class Endpoint {
|
|
|
416
384
|
type: "InternalServerError"
|
|
417
385
|
});
|
|
418
386
|
}
|
|
419
|
-
error(`${this.id}: `, err);
|
|
387
|
+
this.server?.log.error(`${this.id}: `, err);
|
|
420
388
|
}
|
|
421
389
|
return;
|
|
422
390
|
} else if (this.view != null) {
|
|
423
|
-
log(3, this.route.id, ": ", "Serving endpoint in view mode.");
|
|
424
|
-
this.view._serve(stream, status_code);
|
|
391
|
+
this.server?.log(3, this.route.id, ": ", "Serving endpoint in view mode.");
|
|
392
|
+
await this.view._serve(stream, status_code, { compress: this._compress });
|
|
425
393
|
return;
|
|
426
394
|
} else if (this.data != null) {
|
|
427
|
-
log(3, this.route.id, ": ", "Serving endpoint in data mode.");
|
|
395
|
+
this.server?.log(3, this.route.id, ": ", "Serving endpoint in data mode.");
|
|
428
396
|
stream.send({
|
|
429
397
|
status: status_code,
|
|
430
398
|
data: this.data
|
|
@@ -437,6 +405,24 @@ class Endpoint {
|
|
|
437
405
|
throw err;
|
|
438
406
|
}
|
|
439
407
|
}
|
|
408
|
+
// Load data by path.
|
|
409
|
+
_load_data_by_path(server) {
|
|
410
|
+
if (!this.file_path) {
|
|
411
|
+
throw new Error(`Endpoint "${this.id}" has no file path assigned.`);
|
|
412
|
+
}
|
|
413
|
+
const path = new vlib.Path(this.file_path);
|
|
414
|
+
let data;
|
|
415
|
+
if (path.extension() === ".js") {
|
|
416
|
+
data = path.load_sync();
|
|
417
|
+
} else if (path.extension() === ".css") {
|
|
418
|
+
const minifier = new import_clean_css.default();
|
|
419
|
+
data = minifier.minify(path.load_sync()).styles;
|
|
420
|
+
} else {
|
|
421
|
+
data = path.load_sync({ type: "buffer" });
|
|
422
|
+
}
|
|
423
|
+
this.data = data;
|
|
424
|
+
return this;
|
|
425
|
+
}
|
|
440
426
|
}
|
|
441
427
|
// Annotate the CommonJS export names for ESM import in node:
|
|
442
428
|
0 && (module.exports = {
|
|
@@ -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
|
+
});
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @author Daan van den Bergh
|
|
3
|
+
* @copyright © 2022 - 2025 Daan van den Bergh.
|
|
4
|
+
*/
|
|
5
|
+
import type { Stream } from "../stream.js";
|
|
2
6
|
/**
|
|
3
7
|
* The base class for internal and external errors.
|
|
4
8
|
*/
|
|
@@ -7,40 +11,28 @@ declare class BaseError extends Error {
|
|
|
7
11
|
status: number;
|
|
8
12
|
data?: any[] | Record<string, any>;
|
|
9
13
|
invalid_fields: Record<string, string>;
|
|
10
|
-
constructor({ type, message, status, data, invalid_fields }: {
|
|
11
|
-
type?: string;
|
|
14
|
+
constructor({ type, message, status, data, invalid_fields, cause }: {
|
|
12
15
|
message: string;
|
|
16
|
+
type?: string;
|
|
13
17
|
status?: number;
|
|
14
|
-
data?: any
|
|
18
|
+
data?: any[] | Record<string, any>;
|
|
15
19
|
invalid_fields?: Record<string, string>;
|
|
20
|
+
cause?: unknown;
|
|
16
21
|
});
|
|
17
22
|
serve(stream: Stream): this;
|
|
18
23
|
}
|
|
19
24
|
/**
|
|
20
|
-
* Thrown
|
|
25
|
+
* Thrown internal errors are not presented to the user, isntead an internal server error message is shown.
|
|
21
26
|
*/
|
|
22
|
-
export declare class
|
|
27
|
+
export declare class InternalError extends BaseError {
|
|
23
28
|
constructor(args: ConstructorParameters<typeof BaseError>[0]);
|
|
24
29
|
serve(stream: Stream): this;
|
|
25
30
|
}
|
|
26
31
|
/**
|
|
27
|
-
* Thrown
|
|
32
|
+
* Thrown external errors are presented to the user.
|
|
28
33
|
*/
|
|
29
|
-
export declare class
|
|
34
|
+
export declare class ExternalError extends BaseError {
|
|
30
35
|
constructor(args: ConstructorParameters<typeof BaseError>[0]);
|
|
31
36
|
serve(stream: Stream): this;
|
|
32
37
|
}
|
|
33
|
-
|
|
34
|
-
"APIError": typeof ExternalError;
|
|
35
|
-
fill_templates(data: string, templates: Record<string, any>, curly_style?: boolean): string;
|
|
36
|
-
get_currency_symbol(currency: string): string | null;
|
|
37
|
-
get_compiled_cache(domain: string, method: string, endpoint: string): {
|
|
38
|
-
cache_path: any;
|
|
39
|
-
cache_hash: any;
|
|
40
|
-
cache_data: any;
|
|
41
|
-
};
|
|
42
|
-
set_compiled_cache(path: any, data: string, hash: string): void;
|
|
43
|
-
}
|
|
44
|
-
export declare const Utils: UtilsInt;
|
|
45
|
-
export { Utils as utils };
|
|
46
|
-
export default Utils;
|
|
38
|
+
export {};
|