@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,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,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
|
-
}
|