@vandenberghinc/volt 1.2.6 → 1.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.libris/config.json +82 -0
- package/backend/dist/cjs/backend/src/blacklist.d.ts +12 -0
- package/backend/dist/cjs/backend/src/blacklist.js +78 -0
- package/backend/dist/cjs/backend/src/cli.d.ts +2 -0
- package/backend/dist/cjs/backend/src/cli.js +198 -0
- package/backend/dist/cjs/backend/src/database/collection.d.ts +1765 -0
- package/backend/dist/cjs/backend/src/database/collection.js +3301 -0
- package/backend/dist/cjs/backend/src/database/database.d.ts +92 -0
- package/backend/dist/cjs/backend/src/database/database.js +170 -0
- package/backend/dist/cjs/backend/src/database/document.d.ts +1 -0
- package/backend/dist/cjs/backend/src/database/document.js +15 -0
- 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.d.ts +1 -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.d.ts +1 -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 +78 -0
- package/backend/dist/cjs/backend/src/database/flatten.js +53 -0
- package/backend/dist/cjs/backend/src/database/flatten_test.d.ts +1 -0
- package/backend/dist/cjs/backend/src/database/flatten_test.js +175 -0
- package/backend/dist/cjs/backend/src/database/quota/quoata_v2.d.ts +533 -0
- package/backend/dist/cjs/backend/src/database/quota/quoata_v2.js +1046 -0
- package/backend/dist/cjs/backend/src/database/quota/quota.d.ts +551 -0
- package/backend/dist/cjs/backend/src/database/quota/quota.js +1108 -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 +412 -0
- package/backend/dist/cjs/backend/src/database/quota/safe_int.js +745 -0
- package/backend/dist/cjs/backend/src/endpoint.d.ts +346 -0
- package/backend/dist/cjs/backend/src/endpoint.js +468 -0
- 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/cjs/backend/src/errors/internal_external.d.ts +52 -0
- package/backend/dist/cjs/backend/src/errors/internal_external.js +95 -0
- package/backend/dist/cjs/backend/src/errors/invalid_usage_error.d.ts +41 -0
- package/backend/dist/cjs/backend/src/errors/invalid_usage_error.js +47 -0
- package/backend/dist/cjs/backend/src/errors/system_error.d.ts +261 -0
- package/backend/dist/cjs/backend/src/errors/system_error.js +436 -0
- package/backend/dist/cjs/backend/src/events.d.ts +97 -0
- package/backend/dist/cjs/backend/src/events.js +15 -0
- package/backend/dist/cjs/backend/src/frontend.d.ts +13 -0
- package/backend/dist/cjs/backend/src/frontend.js +56 -0
- package/backend/dist/cjs/backend/src/image_endpoint.d.ts +44 -0
- package/backend/dist/cjs/backend/src/image_endpoint.js +185 -0
- package/backend/dist/cjs/backend/src/index.d.ts +23 -0
- package/backend/dist/cjs/backend/src/index.js +70 -0
- 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 +112 -0
- package/backend/dist/cjs/backend/src/meta.js +181 -0
- package/backend/dist/cjs/backend/src/payments/paddle.d.ts +329 -0
- package/backend/dist/cjs/backend/src/payments/paddle.js +1996 -0
- package/backend/dist/cjs/backend/src/payments/stripe/checkout.d.ts +113 -0
- package/backend/dist/cjs/backend/src/payments/stripe/checkout.js +295 -0
- package/backend/dist/cjs/backend/src/payments/stripe/customers.d.ts +17 -0
- package/backend/dist/cjs/backend/src/payments/stripe/customers.js +164 -0
- package/backend/dist/cjs/backend/src/payments/stripe/error.d.ts +74 -0
- package/backend/dist/cjs/backend/src/payments/stripe/error.js +64 -0
- package/backend/dist/cjs/backend/src/payments/stripe/events.d.ts +155 -0
- package/backend/dist/cjs/backend/src/payments/stripe/events.js +15 -0
- package/backend/dist/cjs/backend/src/payments/stripe/meters.d.ts +105 -0
- package/backend/dist/cjs/backend/src/payments/stripe/meters.js +230 -0
- package/backend/dist/cjs/backend/src/payments/stripe/payment_methods.d.ts +58 -0
- package/backend/dist/cjs/backend/src/payments/stripe/payment_methods.js +109 -0
- package/backend/dist/cjs/backend/src/payments/stripe/products.d.ts +519 -0
- package/backend/dist/cjs/backend/src/payments/stripe/products.js +650 -0
- package/backend/dist/cjs/backend/src/payments/stripe/stripe.d.ts +215 -0
- package/backend/dist/cjs/backend/src/payments/stripe/stripe.js +468 -0
- package/backend/dist/cjs/backend/src/payments/stripe/subscriptions.d.ts +172 -0
- package/backend/dist/cjs/backend/src/payments/stripe/subscriptions.js +557 -0
- package/backend/dist/cjs/backend/src/payments/stripe/utils.d.ts +63 -0
- package/backend/dist/cjs/backend/src/payments/stripe/utils.js +118 -0
- package/backend/dist/cjs/backend/src/payments/stripe/webhooks.d.ts +105 -0
- package/backend/dist/cjs/backend/src/payments/stripe/webhooks.js +627 -0
- 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/communication.d.ts +70 -0
- package/backend/dist/cjs/backend/src/plugins/communication.js +196 -0
- package/backend/dist/cjs/backend/src/plugins/mail/mail.d.ts +255 -0
- package/backend/dist/cjs/backend/src/plugins/mail/mail.js +381 -0
- package/backend/dist/cjs/backend/src/plugins/mail/ui.d.ts +297 -0
- package/backend/dist/cjs/backend/src/plugins/mail/ui.js +1370 -0
- package/backend/dist/cjs/backend/src/plugins/pdf.d.ts +1 -0
- package/backend/dist/cjs/backend/src/plugins/pdf.js +1456 -0
- package/backend/dist/cjs/backend/src/plugins/thread_monitor.d.ts +18 -0
- package/backend/dist/cjs/backend/src/plugins/thread_monitor.js +116 -0
- package/backend/dist/cjs/backend/src/rate_limit.d.ts +148 -0
- package/backend/dist/cjs/backend/src/rate_limit.js +543 -0
- package/backend/dist/cjs/backend/src/route.d.ts +39 -0
- package/backend/dist/cjs/backend/src/route.js +172 -0
- package/backend/dist/cjs/backend/src/server.d.ts +502 -0
- package/backend/dist/cjs/backend/src/server.js +1710 -0
- package/backend/dist/cjs/backend/src/server.old.d.ts +594 -0
- package/backend/dist/cjs/backend/src/server.old.js +2058 -0
- package/backend/dist/cjs/backend/src/splash_screen.d.ts +93 -0
- package/backend/dist/cjs/backend/src/splash_screen.js +119 -0
- package/backend/dist/cjs/backend/src/status.d.ts +89 -0
- package/backend/dist/cjs/backend/src/status.js +211 -0
- package/backend/dist/cjs/backend/src/stream.d.ts +494 -0
- package/backend/dist/cjs/backend/src/stream.js +1370 -0
- package/backend/dist/cjs/backend/src/users.d.ts +926 -0
- package/backend/dist/cjs/backend/src/users.js +2223 -0
- package/backend/dist/cjs/backend/src/utils.d.ts +22 -0
- package/backend/dist/cjs/backend/src/utils.js +626 -0
- package/backend/dist/cjs/backend/src/view.d.ts +115 -0
- package/backend/dist/cjs/backend/src/view.js +519 -0
- package/backend/dist/cjs/backend/src/vinc.d.ts +6 -0
- package/backend/dist/cjs/backend/src/vinc.js +40 -0
- package/backend/dist/cjs/backend/src/volt.d.ts +24 -0
- package/backend/dist/cjs/backend/src/volt.js +72 -0
- 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/cjs/package.json +1 -0
- package/backend/dist/esm/backend/src/blacklist.d.ts +12 -0
- package/backend/dist/esm/backend/src/blacklist.js +52 -0
- package/backend/dist/esm/backend/src/cli.d.ts +2 -0
- package/backend/dist/esm/backend/src/cli.js +211 -0
- package/backend/dist/esm/backend/src/database/collection.d.ts +1765 -0
- package/backend/dist/esm/backend/src/database/collection.js +3779 -0
- package/backend/dist/esm/backend/src/database/database.d.ts +92 -0
- package/backend/dist/esm/backend/src/database/database.js +214 -0
- 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 +415 -0
- package/backend/dist/esm/backend/src/database/flatten.d.ts +78 -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/quoata_v2.d.ts +533 -0
- package/backend/dist/esm/backend/src/database/quota/quoata_v2.js +1155 -0
- package/backend/dist/esm/backend/src/database/quota/quota.d.ts +551 -0
- package/backend/dist/esm/backend/src/database/quota/quota.js +1219 -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 +412 -0
- package/backend/dist/esm/backend/src/database/quota/safe_int.js +810 -0
- package/backend/dist/esm/backend/src/endpoint.d.ts +346 -0
- package/backend/dist/esm/backend/src/endpoint.js +479 -0
- 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/esm/backend/src/errors/internal_external.d.ts +52 -0
- package/backend/dist/esm/backend/src/errors/internal_external.js +86 -0
- package/backend/dist/esm/backend/src/errors/invalid_usage_error.d.ts +41 -0
- package/backend/dist/esm/backend/src/errors/invalid_usage_error.js +33 -0
- package/backend/dist/esm/backend/src/errors/system_error.d.ts +261 -0
- package/backend/dist/esm/backend/src/errors/system_error.js +444 -0
- package/backend/dist/esm/backend/src/events.d.ts +97 -0
- package/backend/dist/esm/backend/src/events.js +5 -0
- package/backend/dist/esm/backend/src/frontend.d.ts +13 -0
- package/backend/dist/esm/backend/src/frontend.js +23 -0
- package/backend/dist/esm/backend/src/image_endpoint.d.ts +44 -0
- package/backend/dist/esm/backend/src/image_endpoint.js +196 -0
- package/backend/dist/esm/backend/src/index.d.ts +23 -0
- package/backend/dist/esm/backend/src/index.js +26 -0
- 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 +112 -0
- package/backend/dist/esm/backend/src/meta.js +152 -0
- package/backend/dist/esm/backend/src/payments/paddle.d.ts +329 -0
- package/backend/dist/esm/backend/src/payments/paddle.js +2276 -0
- package/backend/dist/esm/backend/src/payments/stripe/checkout.d.ts +113 -0
- package/backend/dist/esm/backend/src/payments/stripe/checkout.js +356 -0
- package/backend/dist/esm/backend/src/payments/stripe/customers.d.ts +17 -0
- package/backend/dist/esm/backend/src/payments/stripe/customers.js +193 -0
- package/backend/dist/esm/backend/src/payments/stripe/error.d.ts +74 -0
- package/backend/dist/esm/backend/src/payments/stripe/error.js +51 -0
- package/backend/dist/esm/backend/src/payments/stripe/events.d.ts +155 -0
- package/backend/dist/esm/backend/src/payments/stripe/events.js +5 -0
- package/backend/dist/esm/backend/src/payments/stripe/meters.d.ts +105 -0
- package/backend/dist/esm/backend/src/payments/stripe/meters.js +318 -0
- package/backend/dist/esm/backend/src/payments/stripe/payment_methods.d.ts +58 -0
- package/backend/dist/esm/backend/src/payments/stripe/payment_methods.js +135 -0
- package/backend/dist/esm/backend/src/payments/stripe/products.d.ts +519 -0
- package/backend/dist/esm/backend/src/payments/stripe/products.js +896 -0
- package/backend/dist/esm/backend/src/payments/stripe/stripe.d.ts +215 -0
- package/backend/dist/esm/backend/src/payments/stripe/stripe.js +464 -0
- package/backend/dist/esm/backend/src/payments/stripe/subscriptions.d.ts +172 -0
- package/backend/dist/esm/backend/src/payments/stripe/subscriptions.js +754 -0
- package/backend/dist/esm/backend/src/payments/stripe/utils.d.ts +63 -0
- package/backend/dist/esm/backend/src/payments/stripe/utils.js +131 -0
- package/backend/dist/esm/backend/src/payments/stripe/webhooks.d.ts +105 -0
- package/backend/dist/esm/backend/src/payments/stripe/webhooks.js +752 -0
- 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/communication.d.ts +70 -0
- package/backend/dist/esm/backend/src/plugins/communication.js +169 -0
- package/backend/dist/esm/backend/src/plugins/mail/mail.d.ts +255 -0
- package/backend/dist/esm/backend/src/plugins/mail/mail.js +396 -0
- package/backend/dist/esm/backend/src/plugins/mail/ui.d.ts +297 -0
- package/backend/dist/esm/backend/src/plugins/mail/ui.js +1400 -0
- package/backend/dist/esm/backend/src/plugins/pdf.d.ts +1 -0
- package/backend/dist/esm/backend/src/plugins/pdf.js +1694 -0
- package/backend/dist/esm/backend/src/plugins/thread_monitor.d.ts +18 -0
- package/backend/dist/esm/backend/src/plugins/thread_monitor.js +120 -0
- package/backend/dist/esm/backend/src/rate_limit.d.ts +148 -0
- package/backend/dist/esm/backend/src/rate_limit.js +667 -0
- package/backend/dist/esm/backend/src/route.d.ts +39 -0
- package/backend/dist/esm/backend/src/route.js +222 -0
- package/backend/dist/esm/backend/src/server.d.ts +502 -0
- package/backend/dist/esm/backend/src/server.js +2031 -0
- package/backend/dist/esm/backend/src/server.old.d.ts +594 -0
- package/backend/dist/esm/backend/src/server.old.js +2630 -0
- package/backend/dist/esm/backend/src/splash_screen.d.ts +93 -0
- package/backend/dist/esm/backend/src/splash_screen.js +156 -0
- package/backend/dist/esm/backend/src/status.d.ts +89 -0
- package/backend/dist/esm/backend/src/status.js +213 -0
- package/backend/dist/esm/backend/src/stream.d.ts +494 -0
- package/backend/dist/esm/backend/src/stream.js +1611 -0
- package/backend/dist/esm/backend/src/users.d.ts +926 -0
- package/backend/dist/esm/backend/src/users.js +2423 -0
- package/backend/dist/esm/backend/src/utils.d.ts +22 -0
- package/backend/dist/esm/backend/src/utils.js +463 -0
- package/backend/dist/esm/backend/src/view.d.ts +115 -0
- package/backend/dist/esm/backend/src/view.js +584 -0
- package/backend/dist/esm/backend/src/vinc.d.ts +6 -0
- package/backend/dist/esm/backend/src/vinc.js +6 -0
- package/backend/dist/esm/backend/src/volt.d.ts +24 -0
- package/backend/dist/esm/backend/src/volt.js +27 -0
- package/backend/dist/esm/frontend/src/modules/request.d.ts +70 -0
- package/backend/dist/esm/frontend/src/modules/request.js +117 -0
- package/backend/old/file_watcher.ts +359 -0
- package/backend/old/request.deprc.js +626 -0
- package/backend/old/response.deprc.js +354 -0
- package/frontend/dist/backend/src/database/collection.d.ts +1765 -0
- package/frontend/dist/backend/src/database/collection.js +3779 -0
- package/frontend/dist/backend/src/database/database.d.ts +92 -0
- package/frontend/dist/backend/src/database/database.js +214 -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 +78 -0
- package/frontend/dist/backend/src/database/flatten.js +22 -0
- package/frontend/dist/backend/src/endpoint.d.ts +346 -0
- package/frontend/dist/backend/src/endpoint.js +479 -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 +52 -0
- package/frontend/dist/backend/src/errors/internal_external.js +86 -0
- package/frontend/dist/backend/src/errors/invalid_usage_error.d.ts +41 -0
- package/frontend/dist/backend/src/errors/invalid_usage_error.js +33 -0
- package/frontend/dist/backend/src/errors/system_error.d.ts +261 -0
- package/frontend/dist/backend/src/errors/system_error.js +444 -0
- package/frontend/dist/backend/src/events.d.ts +97 -0
- package/frontend/dist/backend/src/events.js +5 -0
- package/frontend/dist/backend/src/frontend.d.ts +13 -0
- package/frontend/dist/backend/src/frontend.js +23 -0
- package/frontend/dist/backend/src/image_endpoint.d.ts +44 -0
- package/frontend/dist/backend/src/image_endpoint.js +196 -0
- package/frontend/dist/backend/src/meta.d.ts +112 -0
- package/frontend/dist/backend/src/meta.js +152 -0
- package/frontend/dist/backend/src/payments/paddle.d.ts +329 -0
- package/frontend/dist/backend/src/payments/paddle.js +2276 -0
- package/frontend/dist/backend/src/payments/stripe/checkout.d.ts +113 -0
- package/frontend/dist/backend/src/payments/stripe/checkout.js +356 -0
- package/frontend/dist/backend/src/payments/stripe/customers.d.ts +17 -0
- package/frontend/dist/backend/src/payments/stripe/customers.js +193 -0
- package/frontend/dist/backend/src/payments/stripe/error.d.ts +74 -0
- package/frontend/dist/backend/src/payments/stripe/error.js +51 -0
- package/frontend/dist/backend/src/payments/stripe/events.d.ts +155 -0
- package/frontend/dist/backend/src/payments/stripe/events.js +5 -0
- package/frontend/dist/backend/src/payments/stripe/meters.d.ts +105 -0
- package/frontend/dist/backend/src/payments/stripe/meters.js +318 -0
- package/frontend/dist/backend/src/payments/stripe/payment_methods.d.ts +58 -0
- package/frontend/dist/backend/src/payments/stripe/payment_methods.js +135 -0
- package/frontend/dist/backend/src/payments/stripe/products.d.ts +519 -0
- package/frontend/dist/backend/src/payments/stripe/products.js +896 -0
- package/frontend/dist/backend/src/payments/stripe/stripe.d.ts +215 -0
- package/frontend/dist/backend/src/payments/stripe/stripe.js +464 -0
- package/frontend/dist/backend/src/payments/stripe/subscriptions.d.ts +172 -0
- package/frontend/dist/backend/src/payments/stripe/subscriptions.js +754 -0
- package/frontend/dist/backend/src/payments/stripe/utils.d.ts +63 -0
- package/frontend/dist/backend/src/payments/stripe/utils.js +131 -0
- package/frontend/dist/backend/src/payments/stripe/webhooks.d.ts +105 -0
- package/frontend/dist/backend/src/payments/stripe/webhooks.js +752 -0
- package/frontend/dist/backend/src/plugins/mail/mail.d.ts +255 -0
- package/frontend/dist/backend/src/plugins/mail/mail.js +396 -0
- package/frontend/dist/backend/src/plugins/mail/ui.d.ts +297 -0
- package/frontend/dist/backend/src/plugins/mail/ui.js +1400 -0
- package/frontend/dist/backend/src/rate_limit.d.ts +148 -0
- package/frontend/dist/backend/src/rate_limit.js +667 -0
- package/frontend/dist/backend/src/route.d.ts +39 -0
- package/frontend/dist/backend/src/route.js +222 -0
- package/frontend/dist/backend/src/server.d.ts +502 -0
- package/frontend/dist/backend/src/server.js +2031 -0
- package/frontend/dist/backend/src/splash_screen.d.ts +93 -0
- package/frontend/dist/backend/src/splash_screen.js +156 -0
- package/frontend/dist/backend/src/status.d.ts +89 -0
- package/frontend/dist/backend/src/status.js +213 -0
- package/frontend/dist/backend/src/stream.d.ts +494 -0
- package/frontend/dist/backend/src/stream.js +1611 -0
- package/frontend/dist/backend/src/users.d.ts +926 -0
- package/frontend/dist/backend/src/users.js +2423 -0
- package/frontend/dist/backend/src/utils.d.ts +22 -0
- package/frontend/dist/backend/src/utils.js +463 -0
- package/frontend/dist/backend/src/view.d.ts +115 -0
- package/frontend/dist/backend/src/view.js +584 -0
- package/frontend/dist/frontend/src/css/adyen.css +92 -0
- package/frontend/dist/frontend/src/css/volt.css +75 -0
- package/frontend/dist/frontend/src/elements/base.d.ts +3743 -0
- package/frontend/dist/frontend/src/elements/base.js +12151 -0
- package/frontend/dist/frontend/src/elements/module.d.ts +95 -0
- package/frontend/dist/frontend/src/elements/module.js +216 -0
- package/frontend/dist/frontend/src/elements/register_element.d.ts +3 -0
- package/frontend/dist/frontend/src/elements/register_element.js +22 -0
- package/frontend/dist/frontend/src/elements/resize_query_manager.d.ts +0 -0
- package/frontend/dist/frontend/src/elements/resize_query_manager.js +150 -0
- 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/index.d.ts +21 -0
- package/frontend/dist/frontend/src/index.js +29 -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/frontend/src/modules/color.d.ts +160 -0
- package/frontend/dist/frontend/src/modules/color.js +316 -0
- 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 +79 -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/frontend/src/modules/meta.js +48 -0
- package/frontend/dist/frontend/src/modules/paddle.d.ts +1207 -0
- package/frontend/dist/frontend/src/modules/paddle.js +2594 -0
- 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/frontend/src/modules/statics.js +43 -0
- package/frontend/dist/frontend/src/modules/stripe/cart.d.ts +112 -0
- package/frontend/dist/frontend/src/modules/stripe/cart.js +321 -0
- package/frontend/dist/frontend/src/modules/stripe/checkout.d.ts +7 -0
- package/frontend/dist/frontend/src/modules/stripe/checkout.js +37 -0
- package/frontend/dist/frontend/src/modules/stripe/index.m.d.ts +6 -0
- package/frontend/dist/frontend/src/modules/stripe/index.m.js +6 -0
- package/frontend/dist/frontend/src/modules/stripe/payments.d.ts +58 -0
- package/frontend/dist/frontend/src/modules/stripe/payments.js +92 -0
- package/frontend/dist/frontend/src/modules/support.d.ts +30 -0
- package/frontend/dist/frontend/src/modules/support.js +53 -0
- package/frontend/dist/frontend/src/modules/theme.d.ts +133 -0
- package/frontend/dist/frontend/src/modules/theme.js +406 -0
- 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 +270 -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/frontend/src/types/gradient.js +79 -0
- package/frontend/dist/frontend/src/ui/border_button.d.ts +94 -0
- package/frontend/dist/frontend/src/ui/border_button.js +228 -0
- package/frontend/dist/frontend/src/ui/button.d.ts +241 -0
- package/frontend/dist/frontend/src/ui/button.js +682 -0
- package/frontend/dist/frontend/src/ui/canvas.d.ts +138 -0
- package/frontend/dist/frontend/src/ui/canvas.js +444 -0
- package/frontend/dist/frontend/src/ui/checkbox.d.ts +74 -0
- package/frontend/dist/frontend/src/ui/checkbox.js +321 -0
- package/frontend/dist/frontend/src/ui/code.d.ts +235 -0
- package/frontend/dist/frontend/src/ui/code.js +1007 -0
- package/frontend/dist/frontend/src/ui/context_menu.d.ts +36 -0
- package/frontend/dist/frontend/src/ui/context_menu.js +205 -0
- package/frontend/dist/frontend/src/ui/css.d.ts +16 -0
- package/frontend/dist/frontend/src/ui/css.js +48 -0
- package/frontend/dist/frontend/src/ui/divider.d.ts +15 -0
- package/frontend/dist/frontend/src/ui/divider.js +78 -0
- package/frontend/dist/frontend/src/ui/dropdown.d.ts +176 -0
- package/frontend/dist/frontend/src/ui/dropdown.js +481 -0
- package/frontend/dist/frontend/src/ui/for_each.d.ts +37 -0
- package/frontend/dist/frontend/src/ui/for_each.js +92 -0
- package/frontend/dist/frontend/src/ui/form.d.ts +34 -0
- package/frontend/dist/frontend/src/ui/form.js +233 -0
- package/frontend/dist/frontend/src/ui/frame_modes.d.ts +37 -0
- package/frontend/dist/frontend/src/ui/frame_modes.js +108 -0
- package/frontend/dist/frontend/src/ui/google_map.d.ts +24 -0
- package/frontend/dist/frontend/src/ui/google_map.js +106 -0
- package/frontend/dist/frontend/src/ui/gradient.d.ts +25 -0
- package/frontend/dist/frontend/src/ui/gradient.js +131 -0
- package/frontend/dist/frontend/src/ui/image.d.ts +111 -0
- package/frontend/dist/frontend/src/ui/image.js +576 -0
- package/frontend/dist/frontend/src/ui/input.d.ts +392 -0
- package/frontend/dist/frontend/src/ui/input.js +1201 -0
- package/frontend/dist/frontend/src/ui/link.d.ts +25 -0
- package/frontend/dist/frontend/src/ui/link.js +140 -0
- package/frontend/dist/frontend/src/ui/list.d.ts +37 -0
- package/frontend/dist/frontend/src/ui/list.js +170 -0
- package/frontend/dist/frontend/src/ui/loader_button.d.ts +80 -0
- package/frontend/dist/frontend/src/ui/loader_button.js +193 -0
- package/frontend/dist/frontend/src/ui/loaders.d.ts +57 -0
- package/frontend/dist/frontend/src/ui/loaders.js +157 -0
- package/frontend/dist/frontend/src/ui/popup.d.ts +94 -0
- package/frontend/dist/frontend/src/ui/popup.js +510 -0
- package/frontend/dist/frontend/src/ui/pseudo.d.ts +44 -0
- package/frontend/dist/frontend/src/ui/pseudo.js +154 -0
- package/frontend/dist/frontend/src/ui/scroller.d.ts +105 -0
- package/frontend/dist/frontend/src/ui/scroller.js +1253 -0
- package/frontend/dist/frontend/src/ui/slider.d.ts +45 -0
- package/frontend/dist/frontend/src/ui/slider.js +217 -0
- package/frontend/dist/frontend/src/ui/spacer.d.ts +15 -0
- package/frontend/dist/frontend/src/ui/spacer.js +78 -0
- package/frontend/dist/frontend/src/ui/span.d.ts +15 -0
- package/frontend/dist/frontend/src/ui/span.js +73 -0
- package/frontend/dist/frontend/src/ui/stack.d.ts +66 -0
- package/frontend/dist/frontend/src/ui/stack.js +335 -0
- package/frontend/dist/frontend/src/ui/steps.d.ts +131 -0
- package/frontend/dist/frontend/src/ui/steps.js +308 -0
- package/frontend/dist/frontend/src/ui/style.d.ts +17 -0
- package/frontend/dist/frontend/src/ui/style.js +73 -0
- package/frontend/dist/frontend/src/ui/switch.d.ts +69 -0
- package/frontend/dist/frontend/src/ui/switch.js +357 -0
- package/frontend/dist/frontend/src/ui/table.d.ts +100 -0
- package/frontend/dist/frontend/src/ui/table.js +405 -0
- package/frontend/dist/frontend/src/ui/tabs.d.ts +111 -0
- package/frontend/dist/frontend/src/ui/tabs.js +424 -0
- package/frontend/dist/frontend/src/ui/text.d.ts +15 -0
- package/frontend/dist/frontend/src/ui/text.js +83 -0
- package/frontend/dist/frontend/src/ui/title.d.ts +91 -0
- package/frontend/dist/frontend/src/ui/title.js +272 -0
- package/frontend/dist/frontend/src/ui/ui.d.ts +35 -0
- package/frontend/dist/frontend/src/ui/ui.js +38 -0
- package/frontend/dist/frontend/src/ui/view.d.ts +15 -0
- package/frontend/dist/frontend/src/ui/view.js +88 -0
- package/frontend/dist/frontend/src/volt.d.ts +20 -0
- package/frontend/dist/frontend/src/volt.js +27 -0
- package/frontend/examples/theme/theme.ts +58 -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/frontend/tools/scan_mixed_imports.js +69 -0
- package/package.json +1 -5
|
@@ -0,0 +1,505 @@
|
|
|
1
|
+
// strict_filter_test.ts
|
|
2
|
+
// Compile-time only tests for StrictFilter<T>.
|
|
3
|
+
// Run `tsc` and confirm only the lines marked with `@ts-expect-error` error out.
|
|
4
|
+
import * as mongodb from 'mongodb';
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
// VALID filters: primitives, operators, dot-paths
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// By `_id`.
|
|
9
|
+
const ok_id = {
|
|
10
|
+
_id: new mongodb.ObjectId("507f191e810c19729de860ea")
|
|
11
|
+
};
|
|
12
|
+
const ok_eq = {
|
|
13
|
+
name: 'Ada',
|
|
14
|
+
};
|
|
15
|
+
const ok_eq_regex_on_string = {
|
|
16
|
+
name: /A.*/i,
|
|
17
|
+
};
|
|
18
|
+
const ok_numeric_ops = {
|
|
19
|
+
age: {
|
|
20
|
+
$gte: 18,
|
|
21
|
+
$lt: 65,
|
|
22
|
+
$mod: [10, 0],
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
const ok_string_ops = {
|
|
26
|
+
name: {
|
|
27
|
+
$regex: 'Ada',
|
|
28
|
+
$options: 'i',
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
const ok_date_ops = {
|
|
32
|
+
createdAt: { $gt: new Date('2020-01-01') },
|
|
33
|
+
};
|
|
34
|
+
const ok_exists_and_type = {
|
|
35
|
+
active: { $exists: true },
|
|
36
|
+
createdAt: { $type: ['date', 9] }, // array of BSON types
|
|
37
|
+
};
|
|
38
|
+
const ok_array_ops_scalars = {
|
|
39
|
+
tags: {
|
|
40
|
+
$all: ['pro', 'admin'],
|
|
41
|
+
$in: ['alpha', 'beta'],
|
|
42
|
+
$nin: ['zzz'],
|
|
43
|
+
$size: 2,
|
|
44
|
+
$elemMatch: { $eq: 'pro' },
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
const ok_array_ops_numbers = {
|
|
48
|
+
scores: {
|
|
49
|
+
$elemMatch: { $gt: 90 },
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
const ok_bitwise = {
|
|
53
|
+
age: { $bitsAnySet: 0b1010 },
|
|
54
|
+
};
|
|
55
|
+
const ok_dot_path_string = {
|
|
56
|
+
'address.street': { $regex: /Main/i },
|
|
57
|
+
};
|
|
58
|
+
const ok_dot_path_optional_number = {
|
|
59
|
+
'address.zip': { $type: 'int' },
|
|
60
|
+
};
|
|
61
|
+
const ok_subdoc_equality = {
|
|
62
|
+
address: { street: 'Main', zip: 12345 },
|
|
63
|
+
};
|
|
64
|
+
const ok_field_not_numeric = {
|
|
65
|
+
age: { $not: { $lt: 18 } },
|
|
66
|
+
};
|
|
67
|
+
const ok_field_not_regex_string = {
|
|
68
|
+
name: { $not: /tmp/i },
|
|
69
|
+
};
|
|
70
|
+
// By in status const.
|
|
71
|
+
const ok_const_status = {
|
|
72
|
+
status: { $in: ['active', 'inactive', 'pending'] },
|
|
73
|
+
};
|
|
74
|
+
// ---------------------------------------------------------------------------
|
|
75
|
+
// VALID: Geospatial operators on GeoJSON-ish field
|
|
76
|
+
// ---------------------------------------------------------------------------
|
|
77
|
+
const ok_geo_near = {
|
|
78
|
+
location: {
|
|
79
|
+
$near: { type: 'Point', coordinates: [10, 20], $maxDistance: 1000 },
|
|
80
|
+
},
|
|
81
|
+
};
|
|
82
|
+
const ok_geo_within = {
|
|
83
|
+
location: {
|
|
84
|
+
$geoWithin: {
|
|
85
|
+
$centerSphere: [[10, 20], 1],
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
};
|
|
89
|
+
const ok_geo_intersects = {
|
|
90
|
+
location: {
|
|
91
|
+
$geoIntersects: {
|
|
92
|
+
$geometry: { type: 'Point', coordinates: [11, 21] },
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
// ---------------------------------------------------------------------------
|
|
97
|
+
// VALID: Logical operators and recursion
|
|
98
|
+
// ---------------------------------------------------------------------------
|
|
99
|
+
const ok_and_or_nor = {
|
|
100
|
+
$and: [
|
|
101
|
+
{ active: { $exists: true } },
|
|
102
|
+
{ $or: [{ age: { $gte: 21 } }, { 'address.street': 'Baker St' }] },
|
|
103
|
+
{ $nor: [{ tags: { $size: 0 } }] },
|
|
104
|
+
],
|
|
105
|
+
};
|
|
106
|
+
// ---------------------------------------------------------------------------
|
|
107
|
+
// VALID: $expr with strict field refs and op shapes
|
|
108
|
+
// ---------------------------------------------------------------------------
|
|
109
|
+
const ok_expr_math_compare = {
|
|
110
|
+
$expr: {
|
|
111
|
+
$and: [
|
|
112
|
+
{ $gte: ['$age', 18] },
|
|
113
|
+
{ $lt: ['$age', { $add: [60, -1] }] },
|
|
114
|
+
],
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
// const ok_expr_string_array_helpers: StrictFilter<User> = {
|
|
118
|
+
// $expr: {
|
|
119
|
+
// $or: [
|
|
120
|
+
// { $eq: [{ $toString: '$age' }, '42'] },
|
|
121
|
+
// { $in: ['admin', '$tags'] },
|
|
122
|
+
// { $size: '$tags' },
|
|
123
|
+
// ],
|
|
124
|
+
// },
|
|
125
|
+
// };
|
|
126
|
+
const ok_expr_string_array_helpers = {
|
|
127
|
+
$expr: {
|
|
128
|
+
$or: [
|
|
129
|
+
// { $eq: [{ $toString: '$age' }, '42'] },
|
|
130
|
+
{ $in: ['admin', '$tags'] },
|
|
131
|
+
{ $size: '$tags' },
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
const bad_expr_string_array_helpers = {
|
|
136
|
+
// @ts-expect-error
|
|
137
|
+
$expr: {
|
|
138
|
+
$or: [
|
|
139
|
+
{ $in: ['admin', '$tagsUNKNOWN'] },
|
|
140
|
+
{ $size: '$tags' },
|
|
141
|
+
],
|
|
142
|
+
},
|
|
143
|
+
};
|
|
144
|
+
// ---------------------------------------------------------------------------
|
|
145
|
+
// VALID: text / where / jsonSchema / comment
|
|
146
|
+
// ---------------------------------------------------------------------------
|
|
147
|
+
const ok_text = {
|
|
148
|
+
$text: { $search: 'engineer', $language: 'en', $caseSensitive: false, $diacriticSensitive: true },
|
|
149
|
+
};
|
|
150
|
+
const ok_where_string = {
|
|
151
|
+
$where: 'this.age > 20',
|
|
152
|
+
};
|
|
153
|
+
const ok_where_function = {
|
|
154
|
+
$where: function () {
|
|
155
|
+
return this.age >= 18 && this.name.length > 0;
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
const ok_json_schema_comment = {
|
|
159
|
+
$jsonSchema: { bsonType: 'object', required: ['name'] },
|
|
160
|
+
$comment: 'unit-test',
|
|
161
|
+
};
|
|
162
|
+
// ---------------------------------------------------------------------------
|
|
163
|
+
// VALID: $elemMatch with array of subdocuments (notes?: Note[])
|
|
164
|
+
// Force using $elemMatch instead of dot paths into arrays.
|
|
165
|
+
// ---------------------------------------------------------------------------
|
|
166
|
+
const ok_elemMatch_subdoc = {
|
|
167
|
+
notes: {
|
|
168
|
+
$elemMatch: {
|
|
169
|
+
title: { $regex: '^T' },
|
|
170
|
+
// Keep `as any` here – we aren't building a full, deep StrictFilter<Note> shape
|
|
171
|
+
// and equality to subdocs is allowed; using any avoids creating another type.
|
|
172
|
+
meta: {
|
|
173
|
+
rank: { $gte: 1 },
|
|
174
|
+
tags: { $in: ['x'] },
|
|
175
|
+
},
|
|
176
|
+
},
|
|
177
|
+
},
|
|
178
|
+
};
|
|
179
|
+
// ---------------------------------------------------------------------------
|
|
180
|
+
// INVALID CASES (Each preceded by @ts-expect-error on the offending line)
|
|
181
|
+
// ---------------------------------------------------------------------------
|
|
182
|
+
// By `_id`.
|
|
183
|
+
const bad_id = {
|
|
184
|
+
// @ts-expect-error - must be ObjectId
|
|
185
|
+
_id: []
|
|
186
|
+
};
|
|
187
|
+
const bad_id_1 = {
|
|
188
|
+
// @ts-expect-error - must be ObjectId
|
|
189
|
+
_id: false
|
|
190
|
+
};
|
|
191
|
+
// Unknown top-level key
|
|
192
|
+
const bad_unknown_top = {
|
|
193
|
+
// @ts-expect-error - 'nmae' is not a declared key on User
|
|
194
|
+
nmae: 'typo',
|
|
195
|
+
};
|
|
196
|
+
// Unknown nested dot path
|
|
197
|
+
const bad_unknown_dot = {
|
|
198
|
+
// @ts-expect-error - 'adress.stret' doesn't exist
|
|
199
|
+
'adress.stret': 'nope',
|
|
200
|
+
};
|
|
201
|
+
// Dot path too deep / not present
|
|
202
|
+
const bad_too_deep = {
|
|
203
|
+
// @ts-expect-error - 'address.zip.code' is not a valid path
|
|
204
|
+
'address.zip.code': 5,
|
|
205
|
+
};
|
|
206
|
+
// Wrong operator for string ($size only for arrays)
|
|
207
|
+
const bad_string_size = {
|
|
208
|
+
name: {
|
|
209
|
+
// @ts-expect-error
|
|
210
|
+
$size: 3,
|
|
211
|
+
},
|
|
212
|
+
};
|
|
213
|
+
// Bare RegExp on non-string field
|
|
214
|
+
const bad_regex_on_number = {
|
|
215
|
+
// @ts-expect-error
|
|
216
|
+
age: /x/,
|
|
217
|
+
};
|
|
218
|
+
// $regex only valid for strings
|
|
219
|
+
const bad_number_regex = {
|
|
220
|
+
age: {
|
|
221
|
+
// @ts-expect-error
|
|
222
|
+
$regex: /x/,
|
|
223
|
+
},
|
|
224
|
+
};
|
|
225
|
+
// Wrong $mod shape
|
|
226
|
+
const bad_mod_arity = {
|
|
227
|
+
age: {
|
|
228
|
+
// @ts-expect-error
|
|
229
|
+
$mod: [2],
|
|
230
|
+
},
|
|
231
|
+
};
|
|
232
|
+
// Wrong $type string
|
|
233
|
+
const bad_type_name = {
|
|
234
|
+
age: {
|
|
235
|
+
// @ts-expect-error
|
|
236
|
+
$type: 'nonsense',
|
|
237
|
+
},
|
|
238
|
+
};
|
|
239
|
+
// $in wrong element type for scalar field
|
|
240
|
+
const bad_in_scalar_type = {
|
|
241
|
+
age: {
|
|
242
|
+
// @ts-expect-error
|
|
243
|
+
$in: ['x'],
|
|
244
|
+
},
|
|
245
|
+
};
|
|
246
|
+
// $in wrong element type for array field (tags: string[])
|
|
247
|
+
const bad_in_array_elem_type = {
|
|
248
|
+
// @ts-expect-error
|
|
249
|
+
tags: {
|
|
250
|
+
$in: [1, 2],
|
|
251
|
+
},
|
|
252
|
+
};
|
|
253
|
+
// $all wrong elem type
|
|
254
|
+
const bad_all_type = {
|
|
255
|
+
// @ts-expect-error
|
|
256
|
+
tags: {
|
|
257
|
+
$all: [1, 2, 3],
|
|
258
|
+
},
|
|
259
|
+
};
|
|
260
|
+
// $elemMatch shape mismatch for number[] (scores)
|
|
261
|
+
const bad_elemMatch_type = {
|
|
262
|
+
scores: {
|
|
263
|
+
$elemMatch: {
|
|
264
|
+
// @ts-expect-error
|
|
265
|
+
$regex: /x/,
|
|
266
|
+
},
|
|
267
|
+
},
|
|
268
|
+
};
|
|
269
|
+
// Geo: wrong $near payload (must be Point or Position-like)
|
|
270
|
+
const bad_near_shape = {
|
|
271
|
+
location: {
|
|
272
|
+
// @ts-expect-error
|
|
273
|
+
$near: [0, 0],
|
|
274
|
+
},
|
|
275
|
+
};
|
|
276
|
+
// $geoIntersects missing $geometry
|
|
277
|
+
const bad_geo_intersects_shape = {
|
|
278
|
+
location: {
|
|
279
|
+
$geoIntersects: {
|
|
280
|
+
// @ts-expect-error
|
|
281
|
+
foo: 1,
|
|
282
|
+
},
|
|
283
|
+
},
|
|
284
|
+
};
|
|
285
|
+
// $not with illegal inner operator for number (regex disallowed)
|
|
286
|
+
const bad_not_regex_on_number = {
|
|
287
|
+
age: {
|
|
288
|
+
// @ts-expect-error
|
|
289
|
+
$not: /x/,
|
|
290
|
+
},
|
|
291
|
+
};
|
|
292
|
+
// Equality with extra unknown key inside subdocument literal
|
|
293
|
+
const bad_subdoc_extra_key = {
|
|
294
|
+
address: {
|
|
295
|
+
street: 'Main',
|
|
296
|
+
zip: 1,
|
|
297
|
+
// @ts-expect-error
|
|
298
|
+
oops: true,
|
|
299
|
+
},
|
|
300
|
+
};
|
|
301
|
+
// Top-level unknown operator
|
|
302
|
+
const bad_unknown_top_op = {
|
|
303
|
+
// @ts-expect-error
|
|
304
|
+
$foo: 1,
|
|
305
|
+
};
|
|
306
|
+
// $text with extra unknown property
|
|
307
|
+
const bad_text_extra = {
|
|
308
|
+
$text: {
|
|
309
|
+
$search: 'q',
|
|
310
|
+
// @ts-expect-error
|
|
311
|
+
unknown: true,
|
|
312
|
+
},
|
|
313
|
+
};
|
|
314
|
+
// $comment wrong type
|
|
315
|
+
const bad_comment_type = {
|
|
316
|
+
// @ts-expect-error
|
|
317
|
+
$comment: 42,
|
|
318
|
+
};
|
|
319
|
+
// $where wrong type
|
|
320
|
+
const bad_where_type = {
|
|
321
|
+
// @ts-expect-error
|
|
322
|
+
$where: 7,
|
|
323
|
+
};
|
|
324
|
+
// $expr wrong field ref (typo in path)
|
|
325
|
+
const bad_expr_field_ref = {
|
|
326
|
+
// @ts-expect-error
|
|
327
|
+
$expr: {
|
|
328
|
+
$eq: ['$ages', 12],
|
|
329
|
+
},
|
|
330
|
+
};
|
|
331
|
+
// $expr wrong shapes
|
|
332
|
+
const bad_expr_add_scalar = {
|
|
333
|
+
// @ts-expect-error
|
|
334
|
+
$expr: {
|
|
335
|
+
$add: 1,
|
|
336
|
+
},
|
|
337
|
+
};
|
|
338
|
+
// $and recursive unknown keys
|
|
339
|
+
const bad_and_unknown_inside = {
|
|
340
|
+
$and: [
|
|
341
|
+
{
|
|
342
|
+
// @ts-expect-error
|
|
343
|
+
nmae: 'typo', // should be name
|
|
344
|
+
},
|
|
345
|
+
],
|
|
346
|
+
};
|
|
347
|
+
// $or element with wrong type (not a StrictFilter)
|
|
348
|
+
const bad_or_wrong_elem_type = {
|
|
349
|
+
$or: [
|
|
350
|
+
// @ts-expect-error
|
|
351
|
+
42,
|
|
352
|
+
],
|
|
353
|
+
};
|
|
354
|
+
// $elemMatch with unknown nested field on subdoc array (notes)
|
|
355
|
+
const bad_elemMatch_unknown_nested = {
|
|
356
|
+
notes: {
|
|
357
|
+
$elemMatch: {
|
|
358
|
+
// @ts-expect-error
|
|
359
|
+
titla: { $regex: '^T' }, // typo
|
|
360
|
+
},
|
|
361
|
+
},
|
|
362
|
+
};
|
|
363
|
+
const typo_in_and = {
|
|
364
|
+
'address.street': { $regex: 'Main', $options: 'i' },
|
|
365
|
+
age: { $gte: 18, $lte: 99 },
|
|
366
|
+
// @ts-expect-error
|
|
367
|
+
$expr: {
|
|
368
|
+
$and: [
|
|
369
|
+
{ $gte: ['$ageXXX', 18] },
|
|
370
|
+
{ $lt: ['$ageXXX', 100] }
|
|
371
|
+
]
|
|
372
|
+
},
|
|
373
|
+
};
|
|
374
|
+
// Bad status const.
|
|
375
|
+
const bad_const_status = {
|
|
376
|
+
// @ts-expect-error
|
|
377
|
+
status: { $in: ['UNKNOWN'] },
|
|
378
|
+
};
|
|
379
|
+
// ---------------------------------------------------------------------------
|
|
380
|
+
// Driver interop: assignment to mongodb.Filter<T>, findOne usage
|
|
381
|
+
// ---------------------------------------------------------------------------
|
|
382
|
+
const strictOk = {
|
|
383
|
+
'address.street': { $regex: 'Main', $options: 'i' },
|
|
384
|
+
age: { $gte: 18, $lte: 99 },
|
|
385
|
+
$expr: { $and: [{ $gte: ['$age', 18] }, { $lt: ['$age', 100] }] },
|
|
386
|
+
};
|
|
387
|
+
const mongoFilterAccepts = strictOk; // should compile
|
|
388
|
+
// should accept StrictFilter<User> where Filter<User> is expected
|
|
389
|
+
async function _useInFindOne() {
|
|
390
|
+
const r = await usersCol.findOne(strictOk);
|
|
391
|
+
void r;
|
|
392
|
+
}
|
|
393
|
+
// ---------------------------------------------------------------------------
|
|
394
|
+
// Generics: your requested class and a few variants
|
|
395
|
+
// ---------------------------------------------------------------------------
|
|
396
|
+
// Casting with generics (requested sample)
|
|
397
|
+
class SomeClassGeneric {
|
|
398
|
+
col;
|
|
399
|
+
cast(query) {
|
|
400
|
+
const q = query; // ensure castable to mongodb.Filter<Data>
|
|
401
|
+
void q;
|
|
402
|
+
}
|
|
403
|
+
async find(query) {
|
|
404
|
+
return (await this.col.findOne(query)) ?? undefined;
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
// Use with concrete Data:
|
|
408
|
+
const repo1 = new SomeClassGeneric();
|
|
409
|
+
repo1.cast(strictOk);
|
|
410
|
+
// (Removed SourceSomeClass usage — class no longer exported from strict_filter.ts)
|
|
411
|
+
// Generic function accepting StrictFilter<T> and assigning to Filter<T>
|
|
412
|
+
function acceptsStrict(q) {
|
|
413
|
+
const f = q;
|
|
414
|
+
void f;
|
|
415
|
+
}
|
|
416
|
+
acceptsStrict({ $and: [{ age: { $gte: 1 } }] });
|
|
417
|
+
// Nested generic repository using intersection to ensure constraints still pass
|
|
418
|
+
class FancyRepo {
|
|
419
|
+
col;
|
|
420
|
+
whereRecent(q) {
|
|
421
|
+
const f = q;
|
|
422
|
+
void f;
|
|
423
|
+
}
|
|
424
|
+
async findOneStrict(q) {
|
|
425
|
+
return (await this.col.findOne(q)) ?? undefined;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
const fancy = new FancyRepo();
|
|
429
|
+
fancy.whereRecent({ createdAt: { $gt: new Date(0) } });
|
|
430
|
+
// Ensure logicals accept nested StrictFilter<WithId<T>>[] in generics:
|
|
431
|
+
function complexWhere(conds) {
|
|
432
|
+
const merged = {
|
|
433
|
+
$and: conds,
|
|
434
|
+
};
|
|
435
|
+
const f = merged;
|
|
436
|
+
void f;
|
|
437
|
+
}
|
|
438
|
+
complexWhere([{ name: 'Ada' }, { age: { $gt: 20 } }]);
|
|
439
|
+
// ---------------------------------------------------------------------------
|
|
440
|
+
// Additional edge coverage
|
|
441
|
+
// ---------------------------------------------------------------------------
|
|
442
|
+
// Bare string equality + regex mix
|
|
443
|
+
const ok_mix = {
|
|
444
|
+
name: { $eq: 'Ada' },
|
|
445
|
+
age: 36,
|
|
446
|
+
};
|
|
447
|
+
// Plain dot path equality
|
|
448
|
+
const ok_dot_eq = {
|
|
449
|
+
'address.street': 'Baker St',
|
|
450
|
+
};
|
|
451
|
+
// Ensure array equality works but operator types still correct
|
|
452
|
+
const ok_array_equality = {
|
|
453
|
+
tags: ['x', 'y'],
|
|
454
|
+
};
|
|
455
|
+
// Invalid: $options without $regex (still allowed by Mongo but here it's under string ops only)
|
|
456
|
+
const bad_options_without_regex = {
|
|
457
|
+
// @ts-expect-error
|
|
458
|
+
name: {
|
|
459
|
+
$options: 'i',
|
|
460
|
+
},
|
|
461
|
+
};
|
|
462
|
+
// Invalid: $nearSphere wrong shape
|
|
463
|
+
const bad_nearSphere_shape = {
|
|
464
|
+
location: {
|
|
465
|
+
$nearSphere: {
|
|
466
|
+
// @ts-expect-error
|
|
467
|
+
foo: 'bar',
|
|
468
|
+
},
|
|
469
|
+
},
|
|
470
|
+
};
|
|
471
|
+
// Invalid: $jsonSchema wrong top-level type (must be object, we allow unknown, but basic sanity)
|
|
472
|
+
// This one WON'T error because $jsonSchema is `unknown` by design for pass-through.
|
|
473
|
+
const ok_jsonSchema_any = {
|
|
474
|
+
$jsonSchema: 123,
|
|
475
|
+
};
|
|
476
|
+
void ok_jsonSchema_any;
|
|
477
|
+
// Keep references to avoid TS stripping unused vars
|
|
478
|
+
void ok_eq;
|
|
479
|
+
void ok_eq_regex_on_string;
|
|
480
|
+
void ok_numeric_ops;
|
|
481
|
+
void ok_string_ops;
|
|
482
|
+
void ok_date_ops;
|
|
483
|
+
void ok_exists_and_type;
|
|
484
|
+
void ok_array_ops_scalars;
|
|
485
|
+
void ok_array_ops_numbers;
|
|
486
|
+
void ok_bitwise;
|
|
487
|
+
void ok_dot_path_string;
|
|
488
|
+
void ok_dot_path_optional_number;
|
|
489
|
+
void ok_subdoc_equality;
|
|
490
|
+
void ok_field_not_numeric;
|
|
491
|
+
void ok_field_not_regex_string;
|
|
492
|
+
void ok_geo_near;
|
|
493
|
+
void ok_geo_within;
|
|
494
|
+
void ok_geo_intersects;
|
|
495
|
+
void ok_and_or_nor;
|
|
496
|
+
void ok_expr_math_compare;
|
|
497
|
+
void ok_expr_string_array_helpers;
|
|
498
|
+
void ok_text;
|
|
499
|
+
void ok_where_string;
|
|
500
|
+
void ok_where_function;
|
|
501
|
+
void ok_json_schema_comment;
|
|
502
|
+
void ok_elemMatch_subdoc;
|
|
503
|
+
void ok_mix;
|
|
504
|
+
void ok_dot_eq;
|
|
505
|
+
void ok_array_equality;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|