meridianjs 0.1.2 → 0.2.0
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/CHANGELOG.md +13 -0
- package/README.md +470 -57
- package/dist/core/adapter-validator.d.ts.map +1 -1
- package/dist/core/adapter-validator.js.map +1 -1
- package/dist/core/error-sanitizer.d.ts.map +1 -1
- package/dist/core/error-sanitizer.js +5 -11
- package/dist/core/error-sanitizer.js.map +1 -1
- package/dist/core/header-parser.d.ts.map +1 -1
- package/dist/core/header-parser.js +9 -9
- package/dist/core/header-parser.js.map +1 -1
- package/dist/core/normalizer.d.ts +1 -1
- package/dist/core/normalizer.d.ts.map +1 -1
- package/dist/core/normalizer.js +1 -1
- package/dist/core/normalizer.js.map +1 -1
- package/dist/core/observability-sanitizer.d.ts.map +1 -1
- package/dist/core/observability-sanitizer.js +5 -12
- package/dist/core/observability-sanitizer.js.map +1 -1
- package/dist/core/pipeline.d.ts +9 -5
- package/dist/core/pipeline.d.ts.map +1 -1
- package/dist/core/pipeline.js +45 -8
- package/dist/core/pipeline.js.map +1 -1
- package/dist/core/request-sanitizer.d.ts +1 -0
- package/dist/core/request-sanitizer.d.ts.map +1 -1
- package/dist/core/request-sanitizer.js +51 -28
- package/dist/core/request-sanitizer.js.map +1 -1
- package/dist/core/streaming.d.ts +19 -0
- package/dist/core/streaming.d.ts.map +1 -0
- package/dist/core/streaming.js +130 -0
- package/dist/core/streaming.js.map +1 -0
- package/dist/core/types.d.ts +14 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +0 -4
- package/dist/core/types.js.map +1 -1
- package/dist/index.d.ts +34 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +180 -10
- package/dist/index.js.map +1 -1
- package/dist/observability/adapter.d.ts.map +1 -1
- package/dist/observability/console.d.ts +1 -1
- package/dist/observability/console.d.ts.map +1 -1
- package/dist/observability/console.js.map +1 -1
- package/dist/observability/noop.d.ts +1 -1
- package/dist/observability/noop.d.ts.map +1 -1
- package/dist/observability/noop.js +5 -10
- package/dist/observability/noop.js.map +1 -1
- package/dist/observability/otel.d.ts +1 -1
- package/dist/observability/otel.d.ts.map +1 -1
- package/dist/observability/otel.js.map +1 -1
- package/dist/observability/prometheus.d.ts +1 -1
- package/dist/observability/prometheus.d.ts.map +1 -1
- package/dist/observability/prometheus.js +5 -13
- package/dist/observability/prometheus.js.map +1 -1
- package/dist/providers/adyen/adapter.d.ts +18 -0
- package/dist/providers/adyen/adapter.d.ts.map +1 -0
- package/dist/providers/adyen/adapter.js +224 -0
- package/dist/providers/adyen/adapter.js.map +1 -0
- package/dist/providers/adyen/index.d.ts +3 -0
- package/dist/providers/adyen/index.d.ts.map +1 -0
- package/dist/providers/adyen/index.js +3 -0
- package/dist/providers/adyen/index.js.map +1 -0
- package/dist/providers/adyen/pagination.d.ts +11 -0
- package/dist/providers/adyen/pagination.d.ts.map +1 -0
- package/dist/providers/adyen/pagination.js +50 -0
- package/dist/providers/adyen/pagination.js.map +1 -0
- package/dist/providers/anthropic/adapter.d.ts +1 -1
- package/dist/providers/anthropic/adapter.d.ts.map +1 -1
- package/dist/providers/anthropic/adapter.js +8 -8
- package/dist/providers/anthropic/adapter.js.map +1 -1
- package/dist/providers/anthropic/pagination.d.ts.map +1 -1
- package/dist/providers/anthropic/pagination.js +3 -3
- package/dist/providers/anthropic/pagination.js.map +1 -1
- package/dist/providers/auth0/adapter.d.ts +17 -0
- package/dist/providers/auth0/adapter.d.ts.map +1 -0
- package/dist/providers/auth0/adapter.js +150 -0
- package/dist/providers/auth0/adapter.js.map +1 -0
- package/dist/providers/auth0/index.d.ts +3 -0
- package/dist/providers/auth0/index.d.ts.map +1 -0
- package/dist/providers/auth0/index.js +3 -0
- package/dist/providers/auth0/index.js.map +1 -0
- package/dist/providers/auth0/pagination.d.ts +11 -0
- package/dist/providers/auth0/pagination.d.ts.map +1 -0
- package/dist/providers/auth0/pagination.js +42 -0
- package/dist/providers/auth0/pagination.js.map +1 -0
- package/dist/providers/braintree/adapter.d.ts +18 -0
- package/dist/providers/braintree/adapter.d.ts.map +1 -0
- package/dist/providers/braintree/adapter.js +203 -0
- package/dist/providers/braintree/adapter.js.map +1 -0
- package/dist/providers/braintree/index.d.ts +3 -0
- package/dist/providers/braintree/index.d.ts.map +1 -0
- package/dist/providers/braintree/index.js +3 -0
- package/dist/providers/braintree/index.js.map +1 -0
- package/dist/providers/braintree/pagination.d.ts +11 -0
- package/dist/providers/braintree/pagination.d.ts.map +1 -0
- package/dist/providers/braintree/pagination.js +34 -0
- package/dist/providers/braintree/pagination.js.map +1 -0
- package/dist/providers/cashfree/adapter.d.ts +18 -0
- package/dist/providers/cashfree/adapter.d.ts.map +1 -0
- package/dist/providers/cashfree/adapter.js +175 -0
- package/dist/providers/cashfree/adapter.js.map +1 -0
- package/dist/providers/cashfree/index.d.ts +3 -0
- package/dist/providers/cashfree/index.d.ts.map +1 -0
- package/dist/providers/cashfree/index.js +3 -0
- package/dist/providers/cashfree/index.js.map +1 -0
- package/dist/providers/cashfree/pagination.d.ts +11 -0
- package/dist/providers/cashfree/pagination.d.ts.map +1 -0
- package/dist/providers/cashfree/pagination.js +32 -0
- package/dist/providers/cashfree/pagination.js.map +1 -0
- package/dist/providers/checkout/adapter.d.ts +18 -0
- package/dist/providers/checkout/adapter.d.ts.map +1 -0
- package/dist/providers/checkout/adapter.js +158 -0
- package/dist/providers/checkout/adapter.js.map +1 -0
- package/dist/providers/checkout/index.d.ts +3 -0
- package/dist/providers/checkout/index.d.ts.map +1 -0
- package/dist/providers/checkout/index.js +3 -0
- package/dist/providers/checkout/index.js.map +1 -0
- package/dist/providers/checkout/pagination.d.ts +11 -0
- package/dist/providers/checkout/pagination.d.ts.map +1 -0
- package/dist/providers/checkout/pagination.js +32 -0
- package/dist/providers/checkout/pagination.js.map +1 -0
- package/dist/providers/cleartax/adapter.d.ts +17 -0
- package/dist/providers/cleartax/adapter.d.ts.map +1 -0
- package/dist/providers/cleartax/adapter.js +135 -0
- package/dist/providers/cleartax/adapter.js.map +1 -0
- package/dist/providers/cleartax/index.d.ts +3 -0
- package/dist/providers/cleartax/index.d.ts.map +1 -0
- package/dist/providers/cleartax/index.js +3 -0
- package/dist/providers/cleartax/index.js.map +1 -0
- package/dist/providers/cleartax/pagination.d.ts +11 -0
- package/dist/providers/cleartax/pagination.d.ts.map +1 -0
- package/dist/providers/cleartax/pagination.js +62 -0
- package/dist/providers/cleartax/pagination.js.map +1 -0
- package/dist/providers/cohere/adapter.d.ts +19 -0
- package/dist/providers/cohere/adapter.d.ts.map +1 -0
- package/dist/providers/cohere/adapter.js +128 -0
- package/dist/providers/cohere/adapter.js.map +1 -0
- package/dist/providers/cohere/index.d.ts +3 -0
- package/dist/providers/cohere/index.d.ts.map +1 -0
- package/dist/providers/cohere/index.js +3 -0
- package/dist/providers/cohere/index.js.map +1 -0
- package/dist/providers/cohere/pagination.d.ts +11 -0
- package/dist/providers/cohere/pagination.d.ts.map +1 -0
- package/dist/providers/cohere/pagination.js +9 -0
- package/dist/providers/cohere/pagination.js.map +1 -0
- package/dist/providers/decentro/adapter.d.ts +18 -0
- package/dist/providers/decentro/adapter.d.ts.map +1 -0
- package/dist/providers/decentro/adapter.js +144 -0
- package/dist/providers/decentro/adapter.js.map +1 -0
- package/dist/providers/decentro/index.d.ts +3 -0
- package/dist/providers/decentro/index.d.ts.map +1 -0
- package/dist/providers/decentro/index.js +3 -0
- package/dist/providers/decentro/index.js.map +1 -0
- package/dist/providers/decentro/pagination.d.ts +11 -0
- package/dist/providers/decentro/pagination.d.ts.map +1 -0
- package/dist/providers/decentro/pagination.js +45 -0
- package/dist/providers/decentro/pagination.js.map +1 -0
- package/dist/providers/delhivery/adapter.d.ts +17 -0
- package/dist/providers/delhivery/adapter.d.ts.map +1 -0
- package/dist/providers/delhivery/adapter.js +119 -0
- package/dist/providers/delhivery/adapter.js.map +1 -0
- package/dist/providers/delhivery/index.d.ts +3 -0
- package/dist/providers/delhivery/index.d.ts.map +1 -0
- package/dist/providers/delhivery/index.js +3 -0
- package/dist/providers/delhivery/index.js.map +1 -0
- package/dist/providers/delhivery/pagination.d.ts +12 -0
- package/dist/providers/delhivery/pagination.d.ts.map +1 -0
- package/dist/providers/delhivery/pagination.js +47 -0
- package/dist/providers/delhivery/pagination.js.map +1 -0
- package/dist/providers/digio/adapter.d.ts +17 -0
- package/dist/providers/digio/adapter.d.ts.map +1 -0
- package/dist/providers/digio/adapter.js +144 -0
- package/dist/providers/digio/adapter.js.map +1 -0
- package/dist/providers/digio/index.d.ts +3 -0
- package/dist/providers/digio/index.d.ts.map +1 -0
- package/dist/providers/digio/index.js +3 -0
- package/dist/providers/digio/index.js.map +1 -0
- package/dist/providers/digio/pagination.d.ts +11 -0
- package/dist/providers/digio/pagination.d.ts.map +1 -0
- package/dist/providers/digio/pagination.js +48 -0
- package/dist/providers/digio/pagination.js.map +1 -0
- package/dist/providers/exotel/adapter.d.ts +18 -0
- package/dist/providers/exotel/adapter.d.ts.map +1 -0
- package/dist/providers/exotel/adapter.js +170 -0
- package/dist/providers/exotel/adapter.js.map +1 -0
- package/dist/providers/exotel/index.d.ts +3 -0
- package/dist/providers/exotel/index.d.ts.map +1 -0
- package/dist/providers/exotel/index.js +3 -0
- package/dist/providers/exotel/index.js.map +1 -0
- package/dist/providers/exotel/pagination.d.ts +11 -0
- package/dist/providers/exotel/pagination.d.ts.map +1 -0
- package/dist/providers/exotel/pagination.js +54 -0
- package/dist/providers/exotel/pagination.js.map +1 -0
- package/dist/providers/gemini/adapter.d.ts +18 -0
- package/dist/providers/gemini/adapter.d.ts.map +1 -0
- package/dist/providers/gemini/adapter.js +171 -0
- package/dist/providers/gemini/adapter.js.map +1 -0
- package/dist/providers/gemini/index.d.ts +3 -0
- package/dist/providers/gemini/index.d.ts.map +1 -0
- package/dist/providers/gemini/index.js +3 -0
- package/dist/providers/gemini/index.js.map +1 -0
- package/dist/providers/gemini/pagination.d.ts +11 -0
- package/dist/providers/gemini/pagination.d.ts.map +1 -0
- package/dist/providers/gemini/pagination.js +15 -0
- package/dist/providers/gemini/pagination.js.map +1 -0
- package/dist/providers/github/adapter.d.ts +1 -1
- package/dist/providers/github/adapter.d.ts.map +1 -1
- package/dist/providers/github/adapter.js +10 -16
- package/dist/providers/github/adapter.js.map +1 -1
- package/dist/providers/github/pagination.d.ts.map +1 -1
- package/dist/providers/github/pagination.js +3 -3
- package/dist/providers/github/pagination.js.map +1 -1
- package/dist/providers/gupshup/adapter.d.ts +18 -0
- package/dist/providers/gupshup/adapter.d.ts.map +1 -0
- package/dist/providers/gupshup/adapter.js +138 -0
- package/dist/providers/gupshup/adapter.js.map +1 -0
- package/dist/providers/gupshup/index.d.ts +3 -0
- package/dist/providers/gupshup/index.d.ts.map +1 -0
- package/dist/providers/gupshup/index.js +3 -0
- package/dist/providers/gupshup/index.js.map +1 -0
- package/dist/providers/gupshup/pagination.d.ts +12 -0
- package/dist/providers/gupshup/pagination.d.ts.map +1 -0
- package/dist/providers/gupshup/pagination.js +55 -0
- package/dist/providers/gupshup/pagination.js.map +1 -0
- package/dist/providers/hubspot/adapter.d.ts +17 -0
- package/dist/providers/hubspot/adapter.d.ts.map +1 -0
- package/dist/providers/hubspot/adapter.js +150 -0
- package/dist/providers/hubspot/adapter.js.map +1 -0
- package/dist/providers/hubspot/index.d.ts +3 -0
- package/dist/providers/hubspot/index.d.ts.map +1 -0
- package/dist/providers/hubspot/index.js +3 -0
- package/dist/providers/hubspot/index.js.map +1 -0
- package/dist/providers/hubspot/pagination.d.ts +11 -0
- package/dist/providers/hubspot/pagination.d.ts.map +1 -0
- package/dist/providers/hubspot/pagination.js +32 -0
- package/dist/providers/hubspot/pagination.js.map +1 -0
- package/dist/providers/hyperverge/adapter.d.ts +17 -0
- package/dist/providers/hyperverge/adapter.d.ts.map +1 -0
- package/dist/providers/hyperverge/adapter.js +140 -0
- package/dist/providers/hyperverge/adapter.js.map +1 -0
- package/dist/providers/hyperverge/index.d.ts +3 -0
- package/dist/providers/hyperverge/index.d.ts.map +1 -0
- package/dist/providers/hyperverge/index.js +3 -0
- package/dist/providers/hyperverge/index.js.map +1 -0
- package/dist/providers/hyperverge/pagination.d.ts +11 -0
- package/dist/providers/hyperverge/pagination.d.ts.map +1 -0
- package/dist/providers/hyperverge/pagination.js +16 -0
- package/dist/providers/hyperverge/pagination.js.map +1 -0
- package/dist/providers/idfy/adapter.d.ts +17 -0
- package/dist/providers/idfy/adapter.d.ts.map +1 -0
- package/dist/providers/idfy/adapter.js +148 -0
- package/dist/providers/idfy/adapter.js.map +1 -0
- package/dist/providers/idfy/index.d.ts +3 -0
- package/dist/providers/idfy/index.d.ts.map +1 -0
- package/dist/providers/idfy/index.js +3 -0
- package/dist/providers/idfy/index.js.map +1 -0
- package/dist/providers/idfy/pagination.d.ts +11 -0
- package/dist/providers/idfy/pagination.d.ts.map +1 -0
- package/dist/providers/idfy/pagination.js +47 -0
- package/dist/providers/idfy/pagination.js.map +1 -0
- package/dist/providers/juspay/adapter.d.ts +18 -0
- package/dist/providers/juspay/adapter.d.ts.map +1 -0
- package/dist/providers/juspay/adapter.js +160 -0
- package/dist/providers/juspay/adapter.js.map +1 -0
- package/dist/providers/juspay/index.d.ts +3 -0
- package/dist/providers/juspay/index.d.ts.map +1 -0
- package/dist/providers/juspay/index.js +3 -0
- package/dist/providers/juspay/index.js.map +1 -0
- package/dist/providers/juspay/pagination.d.ts +11 -0
- package/dist/providers/juspay/pagination.d.ts.map +1 -0
- package/dist/providers/juspay/pagination.js +45 -0
- package/dist/providers/juspay/pagination.js.map +1 -0
- package/dist/providers/karza/adapter.d.ts +17 -0
- package/dist/providers/karza/adapter.d.ts.map +1 -0
- package/dist/providers/karza/adapter.js +132 -0
- package/dist/providers/karza/adapter.js.map +1 -0
- package/dist/providers/karza/index.d.ts +3 -0
- package/dist/providers/karza/index.d.ts.map +1 -0
- package/dist/providers/karza/index.js +3 -0
- package/dist/providers/karza/index.js.map +1 -0
- package/dist/providers/karza/pagination.d.ts +11 -0
- package/dist/providers/karza/pagination.d.ts.map +1 -0
- package/dist/providers/karza/pagination.js +16 -0
- package/dist/providers/karza/pagination.js.map +1 -0
- package/dist/providers/klarna/adapter.d.ts +18 -0
- package/dist/providers/klarna/adapter.d.ts.map +1 -0
- package/dist/providers/klarna/adapter.js +150 -0
- package/dist/providers/klarna/adapter.js.map +1 -0
- package/dist/providers/klarna/index.d.ts +3 -0
- package/dist/providers/klarna/index.d.ts.map +1 -0
- package/dist/providers/klarna/index.js +3 -0
- package/dist/providers/klarna/index.js.map +1 -0
- package/dist/providers/klarna/pagination.d.ts +11 -0
- package/dist/providers/klarna/pagination.d.ts.map +1 -0
- package/dist/providers/klarna/pagination.js +15 -0
- package/dist/providers/klarna/pagination.js.map +1 -0
- package/dist/providers/mailgun/adapter.d.ts +18 -0
- package/dist/providers/mailgun/adapter.d.ts.map +1 -0
- package/dist/providers/mailgun/adapter.js +201 -0
- package/dist/providers/mailgun/adapter.js.map +1 -0
- package/dist/providers/mailgun/index.d.ts +3 -0
- package/dist/providers/mailgun/index.d.ts.map +1 -0
- package/dist/providers/mailgun/index.js +3 -0
- package/dist/providers/mailgun/index.js.map +1 -0
- package/dist/providers/mailgun/pagination.d.ts +11 -0
- package/dist/providers/mailgun/pagination.d.ts.map +1 -0
- package/dist/providers/mailgun/pagination.js +46 -0
- package/dist/providers/mailgun/pagination.js.map +1 -0
- package/dist/providers/mapmyindia/adapter.d.ts +17 -0
- package/dist/providers/mapmyindia/adapter.d.ts.map +1 -0
- package/dist/providers/mapmyindia/adapter.js +134 -0
- package/dist/providers/mapmyindia/adapter.js.map +1 -0
- package/dist/providers/mapmyindia/index.d.ts +3 -0
- package/dist/providers/mapmyindia/index.d.ts.map +1 -0
- package/dist/providers/mapmyindia/index.js +3 -0
- package/dist/providers/mapmyindia/index.js.map +1 -0
- package/dist/providers/mapmyindia/pagination.d.ts +11 -0
- package/dist/providers/mapmyindia/pagination.d.ts.map +1 -0
- package/dist/providers/mapmyindia/pagination.js +78 -0
- package/dist/providers/mapmyindia/pagination.js.map +1 -0
- package/dist/providers/mistral/adapter.d.ts +19 -0
- package/dist/providers/mistral/adapter.d.ts.map +1 -0
- package/dist/providers/mistral/adapter.js +114 -0
- package/dist/providers/mistral/adapter.js.map +1 -0
- package/dist/providers/mistral/index.d.ts +3 -0
- package/dist/providers/mistral/index.d.ts.map +1 -0
- package/dist/providers/mistral/index.js +3 -0
- package/dist/providers/mistral/index.js.map +1 -0
- package/dist/providers/mistral/pagination.d.ts +11 -0
- package/dist/providers/mistral/pagination.d.ts.map +1 -0
- package/dist/providers/mistral/pagination.js +7 -0
- package/dist/providers/mistral/pagination.js.map +1 -0
- package/dist/providers/mollie/adapter.d.ts +18 -0
- package/dist/providers/mollie/adapter.d.ts.map +1 -0
- package/dist/providers/mollie/adapter.js +143 -0
- package/dist/providers/mollie/adapter.js.map +1 -0
- package/dist/providers/mollie/index.d.ts +3 -0
- package/dist/providers/mollie/index.d.ts.map +1 -0
- package/dist/providers/mollie/index.js +3 -0
- package/dist/providers/mollie/index.js.map +1 -0
- package/dist/providers/mollie/pagination.d.ts +11 -0
- package/dist/providers/mollie/pagination.d.ts.map +1 -0
- package/dist/providers/mollie/pagination.js +36 -0
- package/dist/providers/mollie/pagination.js.map +1 -0
- package/dist/providers/msg91/adapter.d.ts +18 -0
- package/dist/providers/msg91/adapter.d.ts.map +1 -0
- package/dist/providers/msg91/adapter.js +158 -0
- package/dist/providers/msg91/adapter.js.map +1 -0
- package/dist/providers/msg91/index.d.ts +3 -0
- package/dist/providers/msg91/index.d.ts.map +1 -0
- package/dist/providers/msg91/index.js +3 -0
- package/dist/providers/msg91/index.js.map +1 -0
- package/dist/providers/msg91/pagination.d.ts +11 -0
- package/dist/providers/msg91/pagination.d.ts.map +1 -0
- package/dist/providers/msg91/pagination.js +46 -0
- package/dist/providers/msg91/pagination.js.map +1 -0
- package/dist/providers/openai/adapter.d.ts +1 -1
- package/dist/providers/openai/adapter.d.ts.map +1 -1
- package/dist/providers/openai/adapter.js +12 -12
- package/dist/providers/openai/adapter.js.map +1 -1
- package/dist/providers/openai/pagination.d.ts.map +1 -1
- package/dist/providers/openai/pagination.js +3 -3
- package/dist/providers/openai/pagination.js.map +1 -1
- package/dist/providers/payu/adapter.d.ts +18 -0
- package/dist/providers/payu/adapter.d.ts.map +1 -0
- package/dist/providers/payu/adapter.js +149 -0
- package/dist/providers/payu/adapter.js.map +1 -0
- package/dist/providers/payu/index.d.ts +3 -0
- package/dist/providers/payu/index.d.ts.map +1 -0
- package/dist/providers/payu/index.js +3 -0
- package/dist/providers/payu/index.js.map +1 -0
- package/dist/providers/payu/pagination.d.ts +11 -0
- package/dist/providers/payu/pagination.d.ts.map +1 -0
- package/dist/providers/payu/pagination.js +48 -0
- package/dist/providers/payu/pagination.js.map +1 -0
- package/dist/providers/perfios/adapter.d.ts +17 -0
- package/dist/providers/perfios/adapter.d.ts.map +1 -0
- package/dist/providers/perfios/adapter.js +140 -0
- package/dist/providers/perfios/adapter.js.map +1 -0
- package/dist/providers/perfios/index.d.ts +3 -0
- package/dist/providers/perfios/index.d.ts.map +1 -0
- package/dist/providers/perfios/index.js +3 -0
- package/dist/providers/perfios/index.js.map +1 -0
- package/dist/providers/perfios/pagination.d.ts +11 -0
- package/dist/providers/perfios/pagination.d.ts.map +1 -0
- package/dist/providers/perfios/pagination.js +17 -0
- package/dist/providers/perfios/pagination.js.map +1 -0
- package/dist/providers/phonepe/adapter.d.ts +18 -0
- package/dist/providers/phonepe/adapter.d.ts.map +1 -0
- package/dist/providers/phonepe/adapter.js +213 -0
- package/dist/providers/phonepe/adapter.js.map +1 -0
- package/dist/providers/phonepe/index.d.ts +3 -0
- package/dist/providers/phonepe/index.d.ts.map +1 -0
- package/dist/providers/phonepe/index.js +3 -0
- package/dist/providers/phonepe/index.js.map +1 -0
- package/dist/providers/phonepe/pagination.d.ts +11 -0
- package/dist/providers/phonepe/pagination.d.ts.map +1 -0
- package/dist/providers/phonepe/pagination.js +15 -0
- package/dist/providers/phonepe/pagination.js.map +1 -0
- package/dist/providers/razorpay/adapter.d.ts +18 -0
- package/dist/providers/razorpay/adapter.d.ts.map +1 -0
- package/dist/providers/razorpay/adapter.js +184 -0
- package/dist/providers/razorpay/adapter.js.map +1 -0
- package/dist/providers/razorpay/index.d.ts +3 -0
- package/dist/providers/razorpay/index.d.ts.map +1 -0
- package/dist/providers/razorpay/index.js +3 -0
- package/dist/providers/razorpay/index.js.map +1 -0
- package/dist/providers/razorpay/pagination.d.ts +11 -0
- package/dist/providers/razorpay/pagination.d.ts.map +1 -0
- package/dist/providers/razorpay/pagination.js +39 -0
- package/dist/providers/razorpay/pagination.js.map +1 -0
- package/dist/providers/sendgrid/adapter.d.ts +25 -0
- package/dist/providers/sendgrid/adapter.d.ts.map +1 -0
- package/dist/providers/sendgrid/adapter.js +191 -0
- package/dist/providers/sendgrid/adapter.js.map +1 -0
- package/dist/providers/sendgrid/index.d.ts +3 -0
- package/dist/providers/sendgrid/index.d.ts.map +1 -0
- package/dist/providers/sendgrid/index.js +3 -0
- package/dist/providers/sendgrid/index.js.map +1 -0
- package/dist/providers/sendgrid/pagination.d.ts +11 -0
- package/dist/providers/sendgrid/pagination.d.ts.map +1 -0
- package/dist/providers/sendgrid/pagination.js +69 -0
- package/dist/providers/sendgrid/pagination.js.map +1 -0
- package/dist/providers/setu/adapter.d.ts +18 -0
- package/dist/providers/setu/adapter.d.ts.map +1 -0
- package/dist/providers/setu/adapter.js +166 -0
- package/dist/providers/setu/adapter.js.map +1 -0
- package/dist/providers/setu/index.d.ts +3 -0
- package/dist/providers/setu/index.d.ts.map +1 -0
- package/dist/providers/setu/index.js +3 -0
- package/dist/providers/setu/index.js.map +1 -0
- package/dist/providers/setu/pagination.d.ts +11 -0
- package/dist/providers/setu/pagination.d.ts.map +1 -0
- package/dist/providers/setu/pagination.js +38 -0
- package/dist/providers/setu/pagination.js.map +1 -0
- package/dist/providers/shiprocket/adapter.d.ts +18 -0
- package/dist/providers/shiprocket/adapter.d.ts.map +1 -0
- package/dist/providers/shiprocket/adapter.js +133 -0
- package/dist/providers/shiprocket/adapter.js.map +1 -0
- package/dist/providers/shiprocket/index.d.ts +3 -0
- package/dist/providers/shiprocket/index.d.ts.map +1 -0
- package/dist/providers/shiprocket/index.js +3 -0
- package/dist/providers/shiprocket/index.js.map +1 -0
- package/dist/providers/shiprocket/pagination.d.ts +12 -0
- package/dist/providers/shiprocket/pagination.d.ts.map +1 -0
- package/dist/providers/shiprocket/pagination.js +54 -0
- package/dist/providers/shiprocket/pagination.js.map +1 -0
- package/dist/providers/stripe/adapter.d.ts +2 -1
- package/dist/providers/stripe/adapter.d.ts.map +1 -1
- package/dist/providers/stripe/adapter.js +44 -8
- package/dist/providers/stripe/adapter.js.map +1 -1
- package/dist/providers/stripe/pagination.d.ts.map +1 -1
- package/dist/providers/stripe/pagination.js +5 -5
- package/dist/providers/stripe/pagination.js.map +1 -1
- package/dist/providers/supabase/adapter.d.ts +17 -0
- package/dist/providers/supabase/adapter.d.ts.map +1 -0
- package/dist/providers/supabase/adapter.js +151 -0
- package/dist/providers/supabase/adapter.js.map +1 -0
- package/dist/providers/supabase/index.d.ts +3 -0
- package/dist/providers/supabase/index.d.ts.map +1 -0
- package/dist/providers/supabase/index.js +3 -0
- package/dist/providers/supabase/index.js.map +1 -0
- package/dist/providers/supabase/pagination.d.ts +11 -0
- package/dist/providers/supabase/pagination.d.ts.map +1 -0
- package/dist/providers/supabase/pagination.js +56 -0
- package/dist/providers/supabase/pagination.js.map +1 -0
- package/dist/providers/twilio/adapter.d.ts +26 -0
- package/dist/providers/twilio/adapter.d.ts.map +1 -0
- package/dist/providers/twilio/adapter.js +200 -0
- package/dist/providers/twilio/adapter.js.map +1 -0
- package/dist/providers/twilio/index.d.ts +3 -0
- package/dist/providers/twilio/index.d.ts.map +1 -0
- package/dist/providers/twilio/index.js +3 -0
- package/dist/providers/twilio/index.js.map +1 -0
- package/dist/providers/twilio/pagination.d.ts +11 -0
- package/dist/providers/twilio/pagination.d.ts.map +1 -0
- package/dist/providers/twilio/pagination.js +57 -0
- package/dist/providers/twilio/pagination.js.map +1 -0
- package/dist/providers/vonage/adapter.d.ts +18 -0
- package/dist/providers/vonage/adapter.d.ts.map +1 -0
- package/dist/providers/vonage/adapter.js +215 -0
- package/dist/providers/vonage/adapter.js.map +1 -0
- package/dist/providers/vonage/index.d.ts +3 -0
- package/dist/providers/vonage/index.d.ts.map +1 -0
- package/dist/providers/vonage/index.js +3 -0
- package/dist/providers/vonage/index.js.map +1 -0
- package/dist/providers/vonage/pagination.d.ts +11 -0
- package/dist/providers/vonage/pagination.d.ts.map +1 -0
- package/dist/providers/vonage/pagination.js +62 -0
- package/dist/providers/vonage/pagination.js.map +1 -0
- package/dist/proxy/cli.d.ts +27 -0
- package/dist/proxy/cli.d.ts.map +1 -0
- package/dist/proxy/cli.js +38 -0
- package/dist/proxy/cli.js.map +1 -0
- package/dist/proxy/index.d.ts +3 -0
- package/dist/proxy/index.d.ts.map +1 -0
- package/dist/proxy/index.js +2 -0
- package/dist/proxy/index.js.map +1 -0
- package/dist/proxy/server.d.ts +28 -0
- package/dist/proxy/server.d.ts.map +1 -0
- package/dist/proxy/server.js +387 -0
- package/dist/proxy/server.js.map +1 -0
- package/dist/public.d.ts +40 -1
- package/dist/public.d.ts.map +1 -1
- package/dist/public.js +39 -0
- package/dist/public.js.map +1 -1
- package/dist/routers/index.d.ts +3 -0
- package/dist/routers/index.d.ts.map +1 -0
- package/dist/routers/index.js +2 -0
- package/dist/routers/index.js.map +1 -0
- package/dist/routers/payment-router.d.ts +27 -0
- package/dist/routers/payment-router.d.ts.map +1 -0
- package/dist/routers/payment-router.js +53 -0
- package/dist/routers/payment-router.js.map +1 -0
- package/dist/state/index.d.ts +6 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js +4 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/memory.d.ts +10 -0
- package/dist/state/memory.d.ts.map +1 -0
- package/dist/state/memory.js +27 -0
- package/dist/state/memory.js.map +1 -0
- package/dist/state/redis.d.ts +17 -0
- package/dist/state/redis.d.ts.map +1 -0
- package/dist/state/redis.js +19 -0
- package/dist/state/redis.js.map +1 -0
- package/dist/state/upstash.d.ts +17 -0
- package/dist/state/upstash.d.ts.map +1 -0
- package/dist/state/upstash.js +17 -0
- package/dist/state/upstash.js.map +1 -0
- package/dist/strategies/circuit-breaker.d.ts.map +1 -1
- package/dist/strategies/circuit-breaker.js +5 -7
- package/dist/strategies/circuit-breaker.js.map +1 -1
- package/dist/strategies/idempotency.d.ts +1 -1
- package/dist/strategies/idempotency.d.ts.map +1 -1
- package/dist/strategies/idempotency.js +2 -3
- package/dist/strategies/idempotency.js.map +1 -1
- package/dist/strategies/pagination.d.ts.map +1 -1
- package/dist/strategies/pagination.js +11 -21
- package/dist/strategies/pagination.js.map +1 -1
- package/dist/strategies/rate-limit.d.ts.map +1 -1
- package/dist/strategies/rate-limit.js +3 -1
- package/dist/strategies/rate-limit.js.map +1 -1
- package/dist/strategies/retry.d.ts +1 -1
- package/dist/strategies/retry.d.ts.map +1 -1
- package/dist/strategies/retry.js +2 -2
- package/dist/strategies/retry.js.map +1 -1
- package/dist/testing/fixtures.d.ts +22 -0
- package/dist/testing/fixtures.d.ts.map +1 -0
- package/dist/testing/fixtures.js +70 -0
- package/dist/testing/fixtures.js.map +1 -0
- package/dist/testing/index.d.ts +4 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-adapter.d.ts +58 -0
- package/dist/testing/mock-adapter.d.ts.map +1 -0
- package/dist/testing/mock-adapter.js +108 -0
- package/dist/testing/mock-adapter.js.map +1 -0
- package/dist/validation/drift-detector.d.ts.map +1 -1
- package/dist/validation/drift-detector.js.map +1 -1
- package/dist/validation/schema-storage.d.ts.map +1 -1
- package/dist/validation/schema-storage.js +4 -8
- package/dist/validation/schema-storage.js.map +1 -1
- package/dist/webhooks/index.d.ts +2 -0
- package/dist/webhooks/index.d.ts.map +1 -0
- package/dist/webhooks/index.js +2 -0
- package/dist/webhooks/index.js.map +1 -0
- package/dist/webhooks/verifier.d.ts +21 -0
- package/dist/webhooks/verifier.d.ts.map +1 -0
- package/dist/webhooks/verifier.js +41 -0
- package/dist/webhooks/verifier.js.map +1 -0
- package/package.json +7 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-sanitizer.d.ts","sourceRoot":"","sources":["../../src/core/error-sanitizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error-sanitizer.d.ts","sourceRoot":"","sources":["../../src/core/error-sanitizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA8B,MAAM,YAAY,CAAC;AAoGvE,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,gBAAgB,EAAE,MAAM,EACxB,SAAS,SAAK,GACb,aAAa,CAyDf"}
|
|
@@ -40,7 +40,7 @@ const VALID_CATEGORIES = [
|
|
|
40
40
|
"validation",
|
|
41
41
|
];
|
|
42
42
|
function isValidCategory(category) {
|
|
43
|
-
return typeof category === "string" && VALID_CATEGORIES.includes(category);
|
|
43
|
+
return (typeof category === "string" && VALID_CATEGORIES.includes(category));
|
|
44
44
|
}
|
|
45
45
|
function inferCategory(error) {
|
|
46
46
|
if (error && typeof error === "object") {
|
|
@@ -94,21 +94,15 @@ export function sanitizeMeridianError(error, expectedProvider, requestId = "") {
|
|
|
94
94
|
return createFallbackError(String(error), expectedProvider, requestId);
|
|
95
95
|
}
|
|
96
96
|
const err = error;
|
|
97
|
-
const message = typeof err.message === "string" && err.message.length > 0
|
|
98
|
-
? err.message
|
|
99
|
-
: "Unknown error";
|
|
97
|
+
const message = typeof err.message === "string" && err.message.length > 0 ? err.message : "Unknown error";
|
|
100
98
|
const rawCategory = err.category;
|
|
101
99
|
const category = isValidCategory(rawCategory)
|
|
102
100
|
? rawCategory
|
|
103
101
|
: inferCategory(error);
|
|
104
102
|
const rawRetryable = err.retryable;
|
|
105
|
-
const retryable = typeof rawRetryable === "boolean"
|
|
106
|
-
? rawRetryable
|
|
107
|
-
: inferRetryable(category, error);
|
|
103
|
+
const retryable = typeof rawRetryable === "boolean" ? rawRetryable : inferRetryable(category, error);
|
|
108
104
|
const provider = expectedProvider;
|
|
109
|
-
const errorRequestId = typeof err.requestId === "string" && err.requestId.length > 0
|
|
110
|
-
? err.requestId
|
|
111
|
-
: requestId;
|
|
105
|
+
const errorRequestId = typeof err.requestId === "string" && err.requestId.length > 0 ? err.requestId : requestId;
|
|
112
106
|
const status = typeof err.status === "number" ? err.status : undefined;
|
|
113
107
|
const rawMetadata = err.metadata;
|
|
114
108
|
const metadata = rawMetadata ? sanitizeErrorMetadata(rawMetadata) : undefined;
|
|
@@ -121,7 +115,7 @@ export function sanitizeMeridianError(error, expectedProvider, requestId = "") {
|
|
|
121
115
|
}
|
|
122
116
|
else if (typeof err.retryAfter === "string") {
|
|
123
117
|
const parsed = Date.parse(err.retryAfter);
|
|
124
|
-
if (!isNaN(parsed)) {
|
|
118
|
+
if (!Number.isNaN(parsed)) {
|
|
125
119
|
retryAfter = new Date(parsed);
|
|
126
120
|
}
|
|
127
121
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-sanitizer.js","sourceRoot":"","sources":["../../src/core/error-sanitizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error-sanitizer.js","sourceRoot":"","sources":["../../src/core/error-sanitizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header-parser.d.ts","sourceRoot":"","sources":["../../src/core/header-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"header-parser.d.ts","sourceRoot":"","sources":["../../src/core/header-parser.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAuBlE;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU,EAAE,CAiBnE;AAoED,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAEjF;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,IAAI,CAAC;CACb;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAwB9E"}
|
|
@@ -3,12 +3,12 @@ export function parseRetryAfter(header) {
|
|
|
3
3
|
return null;
|
|
4
4
|
}
|
|
5
5
|
const trimmed = header.trim();
|
|
6
|
-
const seconds = parseInt(trimmed, 10);
|
|
7
|
-
if (!isNaN(seconds) && seconds >= 0 && seconds <= 86400 * 365) {
|
|
6
|
+
const seconds = Number.parseInt(trimmed, 10);
|
|
7
|
+
if (!Number.isNaN(seconds) && seconds >= 0 && seconds <= 86400 * 365) {
|
|
8
8
|
return new Date(Date.now() + seconds * 1000);
|
|
9
9
|
}
|
|
10
10
|
const date = Date.parse(trimmed);
|
|
11
|
-
if (!isNaN(date)) {
|
|
11
|
+
if (!Number.isNaN(date)) {
|
|
12
12
|
const parsedDate = new Date(date);
|
|
13
13
|
const now = Date.now();
|
|
14
14
|
if (parsedDate.getTime() > now && parsedDate.getTime() < now + 86400 * 365 * 1000) {
|
|
@@ -73,7 +73,7 @@ function parseSingleLink(link) {
|
|
|
73
73
|
if (!trimmed)
|
|
74
74
|
continue;
|
|
75
75
|
const match = trimmed.match(/^(\w+)=["']?([^"']+)["']?$/);
|
|
76
|
-
if (match
|
|
76
|
+
if (match?.[1] && match[2]) {
|
|
77
77
|
const key = match[1].toLowerCase();
|
|
78
78
|
const value = match[2];
|
|
79
79
|
if (key === "rel") {
|
|
@@ -117,8 +117,8 @@ function parseIntHeader(value) {
|
|
|
117
117
|
if (!value || typeof value !== "string") {
|
|
118
118
|
return null;
|
|
119
119
|
}
|
|
120
|
-
const parsed = parseInt(value.trim(), 10);
|
|
121
|
-
if (isNaN(parsed) || parsed < 0 || parsed > Number.MAX_SAFE_INTEGER) {
|
|
120
|
+
const parsed = Number.parseInt(value.trim(), 10);
|
|
121
|
+
if (Number.isNaN(parsed) || parsed < 0 || parsed > Number.MAX_SAFE_INTEGER) {
|
|
122
122
|
return null;
|
|
123
123
|
}
|
|
124
124
|
return parsed;
|
|
@@ -128,15 +128,15 @@ function parseResetHeader(value) {
|
|
|
128
128
|
return null;
|
|
129
129
|
}
|
|
130
130
|
const trimmed = value.trim();
|
|
131
|
-
const timestamp = parseInt(trimmed, 10);
|
|
132
|
-
if (!isNaN(timestamp) && timestamp > 0) {
|
|
131
|
+
const timestamp = Number.parseInt(trimmed, 10);
|
|
132
|
+
if (!Number.isNaN(timestamp) && timestamp > 0) {
|
|
133
133
|
const now = Math.floor(Date.now() / 1000);
|
|
134
134
|
if (timestamp >= now - 60 && timestamp < now + 86400 * 365) {
|
|
135
135
|
return new Date(timestamp * 1000);
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
const date = Date.parse(trimmed);
|
|
139
|
-
if (!isNaN(date)) {
|
|
139
|
+
if (!Number.isNaN(date)) {
|
|
140
140
|
const parsedDate = new Date(date);
|
|
141
141
|
const now = Date.now();
|
|
142
142
|
if (parsedDate.getTime() >= now - 60000 && parsedDate.getTime() < now + 86400 * 365 * 1000) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header-parser.js","sourceRoot":"","sources":["../../src/core/header-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"header-parser.js","sourceRoot":"","sources":["../../src/core/header-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NormalizedResponse,
|
|
1
|
+
import type { NormalizedResponse, PaginationInfo, RateLimitInfo, RawResponse } from "./types.js";
|
|
2
2
|
export declare class ResponseNormalizer {
|
|
3
3
|
static normalize<T>(raw: RawResponse, provider: string, rateLimitInfo: RateLimitInfo, paginationInfo?: PaginationInfo, warnings?: string[], schemaVersion?: string): NormalizedResponse<T>;
|
|
4
4
|
static extractPaginationInfo(raw: RawResponse, paginationStrategy: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizer.d.ts","sourceRoot":"","sources":["../../src/core/normalizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"normalizer.d.ts","sourceRoot":"","sources":["../../src/core/normalizer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,WAAW,EAEZ,MAAM,YAAY,CAAC;AAEpB,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,SAAS,CAAC,CAAC,EAChB,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,aAAa,EAC5B,cAAc,CAAC,EAAE,cAAc,EAC/B,QAAQ,GAAE,MAAM,EAAO,EACvB,aAAa,SAAU,GACtB,kBAAkB,CAAC,CAAC,CAAC;IAqBxB,MAAM,CAAC,qBAAqB,CAC1B,GAAG,EAAE,WAAW,EAChB,kBAAkB,EAAE;QAClB,OAAO,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,OAAO,CAAC;QAC5C,aAAa,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,GAAG,IAAI,CAAC;QACxD,YAAY,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,MAAM,GAAG,IAAI,CAAC;KACxD,GACA,cAAc,GAAG,SAAS;CAoB9B"}
|
package/dist/core/normalizer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizer.js","sourceRoot":"","sources":["../../src/core/normalizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"normalizer.js","sourceRoot":"","sources":["../../src/core/normalizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASzC,MAAM,OAAO,kBAAkB;IAC7B,MAAM,CAAC,SAAS,CACd,GAAgB,EAChB,QAAgB,EAChB,aAA4B,EAC5B,cAA+B,EAC/B,WAAqB,EAAE,EACvB,aAAa,GAAG,OAAO;QAEvB,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;QAE/B,MAAM,IAAI,GAAiB;YACzB,QAAQ;YACR,SAAS;YACT,SAAS,EAAE,aAAa;YACxB,QAAQ;YACR,aAAa;SACd,CAAC;QAEF,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC;QACnC,CAAC;QAED,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,IAAS;YACnB,IAAI;SACL,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,qBAAqB,CAC1B,GAAgB,EAChB,kBAIC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,kBAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAEnD,MAAM,UAAU,GAAmB;YACjC,OAAO;SACR,CAAC;QACF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;QAC7B,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observability-sanitizer.d.ts","sourceRoot":"","sources":["../../src/core/observability-sanitizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,WAAW,6BAA6B;IAC5C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"observability-sanitizer.d.ts","sourceRoot":"","sources":["../../src/core/observability-sanitizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,WAAW,6BAA6B;IAC5C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AASD,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,6BAA6B,GAAG,OAAO,CAsB1F;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,6BAA6B,GAAG,MAAM,CAW3F"}
|
|
@@ -1,17 +1,10 @@
|
|
|
1
|
-
const DEFAULT = [
|
|
2
|
-
"authorization",
|
|
3
|
-
"cookie",
|
|
4
|
-
"token",
|
|
5
|
-
"apikey",
|
|
6
|
-
"api_key",
|
|
7
|
-
"body",
|
|
8
|
-
];
|
|
1
|
+
const DEFAULT = ["authorization", "cookie", "token", "apikey", "api_key", "body"];
|
|
9
2
|
function shouldRedact(key, redacted) {
|
|
10
3
|
const lower = key.toLowerCase();
|
|
11
|
-
return redacted.some(r => lower.includes(r));
|
|
4
|
+
return redacted.some((r) => lower.includes(r));
|
|
12
5
|
}
|
|
13
6
|
export function sanitizeObject(obj, opts) {
|
|
14
|
-
const redacted = (opts?.redactedKeys ?? DEFAULT).map(s => s.toLowerCase());
|
|
7
|
+
const redacted = (opts?.redactedKeys ?? DEFAULT).map((s) => s.toLowerCase());
|
|
15
8
|
if (obj === null || obj === undefined)
|
|
16
9
|
return obj;
|
|
17
10
|
if (typeof obj === "string")
|
|
@@ -19,7 +12,7 @@ export function sanitizeObject(obj, opts) {
|
|
|
19
12
|
if (typeof obj !== "object")
|
|
20
13
|
return obj;
|
|
21
14
|
if (Array.isArray(obj)) {
|
|
22
|
-
return obj.map(v => sanitizeObject(v, opts));
|
|
15
|
+
return obj.map((v) => sanitizeObject(v, opts));
|
|
23
16
|
}
|
|
24
17
|
const out = {};
|
|
25
18
|
for (const [k, v] of Object.entries(obj)) {
|
|
@@ -36,7 +29,7 @@ export function sanitizeObject(obj, opts) {
|
|
|
36
29
|
return out;
|
|
37
30
|
}
|
|
38
31
|
export function sanitizeMetric(metric, opts) {
|
|
39
|
-
const redacted = (opts?.redactedKeys ?? DEFAULT).map(s => s.toLowerCase());
|
|
32
|
+
const redacted = (opts?.redactedKeys ?? DEFAULT).map((s) => s.toLowerCase());
|
|
40
33
|
const tags = {};
|
|
41
34
|
for (const [k, v] of Object.entries(metric.tags)) {
|
|
42
35
|
if (shouldRedact(k, redacted) || shouldRedact(v, redacted)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observability-sanitizer.js","sourceRoot":"","sources":["../../src/core/observability-sanitizer.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,GAAG
|
|
1
|
+
{"version":3,"file":"observability-sanitizer.js","sourceRoot":"","sources":["../../src/core/observability-sanitizer.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,GAAG,CAAC,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AAElF,SAAS,YAAY,CAAC,GAAW,EAAE,QAAkB;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAY,EAAE,IAAoC;IAC/E,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAE7E,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAClD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IAExC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;QACpE,IAAI,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;QACxB,CAAC;aAAM,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YACtC,GAAG,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,IAAoC;IACjF,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7E,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,IAAI,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC;AAC7B,CAAC"}
|
package/dist/core/pipeline.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
3
|
-
import { RateLimiter } from "../strategies/rate-limit.js";
|
|
4
|
-
import { RetryStrategy } from "../strategies/retry.js";
|
|
5
|
-
import {
|
|
1
|
+
import type { ProviderCircuitBreaker } from "../strategies/circuit-breaker.js";
|
|
2
|
+
import type { IdempotencyResolver } from "../strategies/idempotency.js";
|
|
3
|
+
import type { RateLimiter } from "../strategies/rate-limit.js";
|
|
4
|
+
import type { RetryStrategy } from "../strategies/retry.js";
|
|
5
|
+
import type { NormalizedResponse, ObservabilityAdapter, ProviderAdapter, RequestOptions } from "./types.js";
|
|
6
6
|
import type { AuthConfig } from "./types.js";
|
|
7
7
|
export interface PipelineConfig {
|
|
8
8
|
provider: string;
|
|
@@ -18,15 +18,19 @@ export interface PipelineConfig {
|
|
|
18
18
|
sanitizerOptions?: {
|
|
19
19
|
redactedKeys?: string[];
|
|
20
20
|
piiRedaction?: boolean | undefined;
|
|
21
|
+
indiaMode?: boolean | undefined;
|
|
21
22
|
} | undefined;
|
|
22
23
|
compliance?: {
|
|
23
24
|
piiRedaction?: boolean | undefined;
|
|
24
25
|
auditLog?: boolean | undefined;
|
|
26
|
+
indiaMode?: boolean | undefined;
|
|
25
27
|
} | undefined;
|
|
26
28
|
}
|
|
27
29
|
export declare class RequestPipeline {
|
|
28
30
|
private config;
|
|
31
|
+
private cachedToken;
|
|
29
32
|
constructor(config: PipelineConfig);
|
|
33
|
+
private getAuthToken;
|
|
30
34
|
private safelyBroadcastObservability;
|
|
31
35
|
execute<T>(endpoint: string, options?: RequestOptions): Promise<NormalizedResponse<T>>;
|
|
32
36
|
private executeHttpRequest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/core/pipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/core/pipeline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAI5D,OAAO,KAAK,EAEV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EAGf,cAAc,EAEf,MAAM,YAAY,CAAC;AAGpB,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,YAAY,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,sBAAsB,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,aAAa,EAAE,oBAAoB,EAAE,CAAC;IACtC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,gBAAgB,CAAC,EACb;QACE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACnC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KACjC,GACD,SAAS,CAAC;IACd,UAAU,CAAC,EACP;QACE,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACnC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAC/B,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KACjC,GACD,SAAS,CAAC;CACf;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAA0B;gBAEjC,MAAM,EAAE,cAAc;YAIpB,YAAY;IAkB1B,OAAO,CAAC,4BAA4B;IA+B9B,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;YAoNlF,kBAAkB;CAgFjC"}
|
package/dist/core/pipeline.js
CHANGED
|
@@ -1,13 +1,32 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { sanitizeMeridianError } from "./error-sanitizer.js";
|
|
3
|
-
import {
|
|
3
|
+
import { sanitizeMetric, sanitizeObject } from "./observability-sanitizer.js";
|
|
4
4
|
import { sanitizeRequestOptions } from "./request-sanitizer.js";
|
|
5
|
-
import {
|
|
5
|
+
import { MeridianError } from "./types.js";
|
|
6
6
|
export class RequestPipeline {
|
|
7
7
|
config;
|
|
8
|
+
cachedToken = null;
|
|
8
9
|
constructor(config) {
|
|
9
10
|
this.config = config;
|
|
10
11
|
}
|
|
12
|
+
async getAuthToken() {
|
|
13
|
+
if (this.cachedToken) {
|
|
14
|
+
if (this.cachedToken.expiresAt) {
|
|
15
|
+
const bufferMs = 60_000;
|
|
16
|
+
if (this.cachedToken.expiresAt.getTime() - bufferMs > Date.now()) {
|
|
17
|
+
return this.cachedToken;
|
|
18
|
+
}
|
|
19
|
+
// Token expired or about to expire — fall through to re-fetch
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
// No expiry = static API key — cache forever
|
|
23
|
+
return this.cachedToken;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
const token = await this.config.adapter.authStrategy(this.config.authConfig);
|
|
27
|
+
this.cachedToken = token;
|
|
28
|
+
return token;
|
|
29
|
+
}
|
|
11
30
|
safelyBroadcastObservability(action, actionName) {
|
|
12
31
|
const errors = [];
|
|
13
32
|
for (const obs of this.config.observability) {
|
|
@@ -39,7 +58,8 @@ export class RequestPipeline {
|
|
|
39
58
|
const identity = options.identity;
|
|
40
59
|
const sanitizerOpts = {
|
|
41
60
|
...this.config.sanitizerOptions,
|
|
42
|
-
piiRedaction: this.config.compliance?.piiRedaction || this.config.sanitizerOptions?.piiRedaction
|
|
61
|
+
piiRedaction: this.config.compliance?.piiRedaction || this.config.sanitizerOptions?.piiRedaction,
|
|
62
|
+
indiaMode: this.config.compliance?.indiaMode || this.config.sanitizerOptions?.indiaMode,
|
|
43
63
|
};
|
|
44
64
|
const sanitizedOptions = sanitizeRequestOptions(options, sanitizerOpts);
|
|
45
65
|
const requestContext = {
|
|
@@ -53,11 +73,29 @@ export class RequestPipeline {
|
|
|
53
73
|
};
|
|
54
74
|
this.safelyBroadcastObservability((obs) => obs.logRequest(requestContext), "logRequest");
|
|
55
75
|
try {
|
|
56
|
-
|
|
76
|
+
await this.getAuthToken(); // warm the cache before acquiring the rate limiter
|
|
57
77
|
await this.config.rateLimiter.acquire();
|
|
58
78
|
const response = await this.config.retryStrategy.execute(async () => {
|
|
59
79
|
return await this.config.circuitBreaker.execute(async () => {
|
|
60
|
-
|
|
80
|
+
try {
|
|
81
|
+
return await this.executeHttpRequest(endpoint, options, await this.getAuthToken());
|
|
82
|
+
}
|
|
83
|
+
catch (err) {
|
|
84
|
+
// On 401, attempt a one-shot token refresh if the adapter supports it
|
|
85
|
+
if (typeof err === "object" &&
|
|
86
|
+
err !== null &&
|
|
87
|
+
"status" in err &&
|
|
88
|
+
err.status === 401 &&
|
|
89
|
+
typeof this.config.adapter.refreshAuth === "function") {
|
|
90
|
+
const currentToken = this.cachedToken;
|
|
91
|
+
if (currentToken) {
|
|
92
|
+
const refreshed = await this.config.adapter.refreshAuth(this.config.authConfig, currentToken);
|
|
93
|
+
this.cachedToken = refreshed;
|
|
94
|
+
return await this.executeHttpRequest(endpoint, options, refreshed);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
throw err;
|
|
98
|
+
}
|
|
61
99
|
});
|
|
62
100
|
}, idempotencyLevel, !!options.idempotencyKey);
|
|
63
101
|
const rateLimitInfo = this.config.adapter.rateLimitPolicy(response.headers);
|
|
@@ -133,8 +171,7 @@ export class RequestPipeline {
|
|
|
133
171
|
}
|
|
134
172
|
errorContext = { ...errorContext, error: sanitizedError };
|
|
135
173
|
}
|
|
136
|
-
catch {
|
|
137
|
-
}
|
|
174
|
+
catch { }
|
|
138
175
|
this.safelyBroadcastObservability((obs) => obs.logError(errorContext), "logError");
|
|
139
176
|
this.safelyBroadcastObservability((obs) => obs.recordMetric(sanitizeMetric({
|
|
140
177
|
name: "meridian.request.error",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/core/pipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/core/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAWhE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA+B3C,MAAM,OAAO,eAAe;IAClB,MAAM,CAAiB;IACvB,WAAW,GAAqB,IAAI,CAAC;IAE7C,YAAY,MAAsB;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;gBAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC;gBACxB,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;oBACjE,OAAO,IAAI,CAAC,WAAW,CAAC;gBAC1B,CAAC;gBACD,8DAA8D;YAChE,CAAC;iBAAM,CAAC;gBACN,6CAA6C;gBAC7C,OAAO,IAAI,CAAC,WAAW,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC7E,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,4BAA4B,CAClC,MAA+C,EAC/C,UAAkB;QAElB,MAAM,MAAM,GAA+C,EAAE,CAAC;QAE9D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC;oBACV,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,IAAI,6BAA6B;oBAC/D,KAAK;iBACN,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM;iBACxB,GAAG,CACF,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CACrB,OAAO,OAAO,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9E;iBACA,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,OAAO,CAAC,KAAK,CACX,uCAAuC,UAAU,KAAK,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,uBAAuB,YAAY,EAAE,CAC7I,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAI,QAAgB,EAAE,UAA0B,EAAE;QAC7D,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,IAAI,CAAC,MAAM,CAAC,2BAA2B,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YACvE,OAAO,CAAC,cAAc,GAAG,UAAU,EAAE,CAAC;QACxC,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,mBAAmB,CAC1E,MAAM,EACN,QAAQ,EACR,OAAO,CACR,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAElC,MAAM,aAAa,GAAG;YACpB,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB;YAC/B,YAAY,EACV,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,YAAY;YACpF,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,SAAS;SACxF,CAAC;QAEF,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAExE,MAAM,cAAc,GAAmB;YACrC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,QAAQ;YACR,MAAM;YACN,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,OAAO,EAAE,gBAAgB;YACzB,QAAQ;SACT,CAAC;QAEF,IAAI,CAAC,4BAA4B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC,CAAC;QAEzF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,mDAAmD;YAE9E,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAExC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CACtD,KAAK,IAAI,EAAE;gBACT,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;oBACzD,IAAI,CAAC;wBACH,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;oBACrF,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,sEAAsE;wBACtE,IACE,OAAO,GAAG,KAAK,QAAQ;4BACvB,GAAG,KAAK,IAAI;4BACZ,QAAQ,IAAI,GAAG;4BACd,GAA0B,CAAC,MAAM,KAAK,GAAG;4BAC1C,OAAQ,IAAI,CAAC,MAAM,CAAC,OAAqC,CAAC,WAAW,KAAK,UAAU,EACpF,CAAC;4BACD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;4BACtC,IAAI,YAAY,EAAE,CAAC;gCACjB,MAAM,SAAS,GAAG,MAChB,IAAI,CAAC,MAAM,CAAC,OACb,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;gCACpD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;gCAC7B,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;4BACrE,CAAC;wBACH,CAAC;wBACD,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,EACD,gBAAgB,EAChB,CAAC,CAAC,OAAO,CAAC,cAAc,CACzB,CAAC;YAEF,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAE3E,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAE/D,UAAU,CAAC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAExC,MAAM,eAAe,GAAoB;gBACvC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAC9B,QAAQ;gBACR,MAAM;gBACN,SAAS;gBACT,UAAU,EAAE,QAAQ,CAAC,MAAM;gBAC3B,QAAQ;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,QAAQ;aACT,CAAC;YAEF,IAAI,CAAC,4BAA4B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,aAAa,CAAC,CAAC;YAE5F,IAAI,CAAC,4BAA4B,CAC/B,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,YAAY,CACd,cAAc,CACZ;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE;oBACJ,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAC9B,QAAQ;oBACR,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;iBAChC;gBACD,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,EACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CACF,EACH,4BAA4B,CAC7B,CAAC;YAEF,IAAI,CAAC,4BAA4B,CAC/B,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,YAAY,CACd,cAAc,CACZ;gBACE,IAAI,EAAE,2BAA2B;gBACjC,KAAK,EAAE,QAAQ;gBACf,IAAI,EAAE;oBACJ,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAC9B,QAAQ;iBACT;gBACD,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,EACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CACF,EACH,+BAA+B,CAChC,CAAC;YAEF,OAAO,UAAmC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAExC,IAAI,aAA4B,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAE3D,aAAa,GAAG,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACvF,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,aAAa,GAAG,qBAAqB,CACnC;oBACE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC/D,QAAQ,EAAE;wBACR,aAAa,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;wBAC7D,UAAU,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;qBAC1E;iBACF,EACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,SAAS,CACV,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,CAAC,QAAQ,KAAK,YAAY,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;gBACxE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAC/B,IAAI,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CACrE,CAAC;YACJ,CAAC;YAED,IAAI,YAAY,GAAiB;gBAC/B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAC9B,QAAQ;gBACR,MAAM;gBACN,SAAS;gBACT,KAAK,EAAE,aAAa;gBACpB,QAAQ;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,QAAQ;aACT,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,EAAE,GAAG,aAAa,EAAS,CAAC;gBACnD,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;oBAC5B,cAAc,CAAC,QAAQ,GAAG,cAAc,CACtC,cAAc,CAAC,QAAQ,EACvB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACF,CAAC;gBAC/B,CAAC;gBACD,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;YAC5D,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YAEV,IAAI,CAAC,4BAA4B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC;YAEnF,IAAI,CAAC,4BAA4B,CAC/B,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,YAAY,CACd,cAAc,CACZ;gBACE,IAAI,EAAE,wBAAwB;gBAC9B,KAAK,EAAE,CAAC;gBACR,IAAI,EAAE;oBACJ,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAC9B,QAAQ;oBACR,aAAa,EAAE,aAAa,CAAC,QAAQ;iBACtC;gBACD,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,EACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CACF,EACH,4BAA4B,CAC7B,CAAC;YAEF,MAAM,aAAa,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,QAAgB,EAChB,OAAuB,EACvB,SAAoB;QAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;QAE7C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;YACpD,QAAQ;YACR,OAAO;YACP,SAAS;SACV,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;QAEhE,MAAM,YAAY,GAAgB;YAChC,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC;QACF,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpC,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;QACxC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;YAE7D,IAAI,IAAa,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBACzD,IAAI,WAAW,EAAE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBAC9C,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACN,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,GAAG,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,OAAO,EAAE,CAAC;YACjC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACtC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM;oBACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,OAAO,EAAE,UAAU;oBACnB,IAAI;iBACL,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,OAAO,EAAE,UAAU;gBACnB,IAAI;aACU,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1D,MAAM,IAAI,aAAa,CACrB,yBAAyB,OAAO,IAAI,EACpC,SAAS,EACT,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,EACJ,EAAE,EACF;oBACE,OAAO;oBACP,GAAG,EAAE,YAAY,CAAC,GAAG;oBACrB,MAAM,EAAE,YAAY,CAAC,MAAM;iBAC5B,EACD,SAAS,EACT,SAAS,CACV,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;CACF"}
|
|
@@ -2,6 +2,7 @@ import type { RequestOptions } from "./types.js";
|
|
|
2
2
|
export interface SanitizerOptions {
|
|
3
3
|
redactedKeys?: string[];
|
|
4
4
|
piiRedaction?: boolean | undefined;
|
|
5
|
+
indiaMode?: boolean | undefined;
|
|
5
6
|
}
|
|
6
7
|
export declare function sanitizeRequestOptions(options: RequestOptions | undefined, opts?: SanitizerOptions): RequestOptions;
|
|
7
8
|
//# sourceMappingURL=request-sanitizer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-sanitizer.d.ts","sourceRoot":"","sources":["../../src/core/request-sanitizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"request-sanitizer.d.ts","sourceRoot":"","sources":["../../src/core/request-sanitizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACjC;AAgDD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,GAAG,SAAS,EACnC,IAAI,CAAC,EAAE,gBAAgB,GACtB,cAAc,CAiEhB"}
|
|
@@ -4,24 +4,52 @@ const PII_PATTERNS = {
|
|
|
4
4
|
SSN: /\b\d{3}-\d{2}-\d{4}\b/g,
|
|
5
5
|
CREDIT_CARD: /\b(?:\d[ -]*?){13,16}\b/g,
|
|
6
6
|
};
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
// India-specific PII patterns (DPDPA compliance)
|
|
8
|
+
// Application order within India mode: VPA, AADHAAR, PAN, then generic EMAIL/PHONE/SSN/CREDIT_CARD, then BANK_ACCOUNT
|
|
9
|
+
// AADHAAR before BANK_ACCOUNT ensures 12-digit Aadhaar numbers get their specific label
|
|
10
|
+
// VPA before generic EMAIL so handles-without-TLD are caught as VPA, not EMAIL
|
|
11
|
+
const INDIA_PII_PATTERNS = {
|
|
12
|
+
// UPI Virtual Payment Address: user@oksbi (no dot in domain part distinguishes from email)
|
|
13
|
+
UPI_VPA: /\b[a-zA-Z0-9.\-_]{2,256}@[a-zA-Z]{2,64}\b/g,
|
|
14
|
+
// Aadhaar: 12 digits optionally grouped 4-4-4 with spaces or hyphens
|
|
15
|
+
AADHAAR: /\b\d{4}[\s-]?\d{4}[\s-]?\d{4}\b/g,
|
|
16
|
+
// PAN: 5 uppercase letters, 4 digits, 1 uppercase letter
|
|
17
|
+
PAN: /\b[A-Z]{5}[0-9]{4}[A-Z]\b/g,
|
|
18
|
+
// Bank account: 9–18 digit run (applied after AADHAAR to avoid re-matching)
|
|
19
|
+
BANK_ACCOUNT: /\b\d{9,18}\b/g,
|
|
20
|
+
};
|
|
21
|
+
const DEFAULT_REDACTED = ["authorization", "cookie", "token", "apikey", "api_key", "body"];
|
|
22
|
+
function applyPiiPatterns(text, indiaMode) {
|
|
23
|
+
let result = text;
|
|
24
|
+
if (indiaMode) {
|
|
25
|
+
// VPA first (before generic EMAIL) so UPI addresses without TLD are caught
|
|
26
|
+
result = result.replace(INDIA_PII_PATTERNS.UPI_VPA, "[VPA-REDACTED]");
|
|
27
|
+
// Aadhaar before bank account/credit card so 12-digit gets its specific label
|
|
28
|
+
result = result.replace(INDIA_PII_PATTERNS.AADHAAR, "[AADHAAR-REDACTED]");
|
|
29
|
+
result = result.replace(INDIA_PII_PATTERNS.PAN, "[PAN-REDACTED]");
|
|
30
|
+
// Bank account before generic CREDIT_CARD so long digit runs get their specific label
|
|
31
|
+
result = result.replace(INDIA_PII_PATTERNS.BANK_ACCOUNT, "[ACCOUNT-REDACTED]");
|
|
32
|
+
}
|
|
33
|
+
// Generic PII patterns (run for both piiRedaction and indiaMode)
|
|
34
|
+
result = result.replace(PII_PATTERNS.EMAIL, "[PII-REDACTED]");
|
|
35
|
+
result = result.replace(PII_PATTERNS.PHONE, "[PII-REDACTED]");
|
|
36
|
+
result = result.replace(PII_PATTERNS.SSN, "[PII-REDACTED]");
|
|
37
|
+
result = result.replace(PII_PATTERNS.CREDIT_CARD, "[PII-REDACTED]");
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
15
40
|
export function sanitizeRequestOptions(options, opts) {
|
|
16
|
-
const redacted = (opts?.redactedKeys ?? DEFAULT_REDACTED).map(k => k.toLowerCase());
|
|
41
|
+
const redacted = (opts?.redactedKeys ?? DEFAULT_REDACTED).map((k) => k.toLowerCase());
|
|
17
42
|
const input = options ?? {};
|
|
43
|
+
const piiRedaction = opts?.piiRedaction === true;
|
|
44
|
+
const indiaMode = opts?.indiaMode === true;
|
|
45
|
+
const runPatternRedaction = piiRedaction || indiaMode;
|
|
18
46
|
const sanitized = { ...input };
|
|
19
47
|
if (sanitized.headers) {
|
|
20
48
|
const headersCopy = {};
|
|
21
49
|
for (const [k, v] of Object.entries(sanitized.headers)) {
|
|
22
50
|
const lower = k.toLowerCase().replace(/[-_]/g, "");
|
|
23
51
|
const lowerValue = String(v).toLowerCase();
|
|
24
|
-
if (redacted.some(r => {
|
|
52
|
+
if (redacted.some((r) => {
|
|
25
53
|
const normalizedR = r.replace(/[-_]/g, "");
|
|
26
54
|
return lower.includes(normalizedR) || lowerValue.includes(r);
|
|
27
55
|
})) {
|
|
@@ -38,7 +66,7 @@ export function sanitizeRequestOptions(options, opts) {
|
|
|
38
66
|
for (const [k, v] of Object.entries(sanitized.query)) {
|
|
39
67
|
const lower = k.toLowerCase().replace(/[-_]/g, "");
|
|
40
68
|
const lowerValue = String(v).toLowerCase();
|
|
41
|
-
if (redacted.some(r => {
|
|
69
|
+
if (redacted.some((r) => {
|
|
42
70
|
const normalizedR = r.replace(/[-_]/g, "");
|
|
43
71
|
return lower.includes(normalizedR) || lowerValue.includes(r);
|
|
44
72
|
})) {
|
|
@@ -51,37 +79,32 @@ export function sanitizeRequestOptions(options, opts) {
|
|
|
51
79
|
sanitized.query = queryCopy;
|
|
52
80
|
}
|
|
53
81
|
if (sanitized.body !== undefined) {
|
|
54
|
-
if (redacted.includes("body") && !
|
|
82
|
+
if (redacted.includes("body") && !runPatternRedaction) {
|
|
83
|
+
// Non-PII path: blanket-redact body
|
|
55
84
|
sanitized.body = "[REDACTED]";
|
|
56
85
|
}
|
|
57
|
-
else if (
|
|
58
|
-
|
|
59
|
-
for (const pattern of Object.values(PII_PATTERNS)) {
|
|
60
|
-
newBody = newBody.replace(pattern, "[PII-REDACTED]");
|
|
61
|
-
}
|
|
62
|
-
sanitized.body = newBody;
|
|
86
|
+
else if (runPatternRedaction && typeof sanitized.body === "string") {
|
|
87
|
+
sanitized.body = applyPiiPatterns(sanitized.body, indiaMode);
|
|
63
88
|
}
|
|
64
|
-
else if (
|
|
65
|
-
sanitized.body
|
|
89
|
+
else if (runPatternRedaction &&
|
|
90
|
+
typeof sanitized.body === "object" &&
|
|
91
|
+
sanitized.body !== null) {
|
|
92
|
+
sanitized.body = sanitizeValue(sanitized.body, indiaMode);
|
|
66
93
|
}
|
|
67
94
|
}
|
|
68
95
|
return sanitized;
|
|
69
96
|
}
|
|
70
|
-
function sanitizeValue(val) {
|
|
97
|
+
function sanitizeValue(val, indiaMode) {
|
|
71
98
|
if (typeof val === "string") {
|
|
72
|
-
|
|
73
|
-
for (const pattern of Object.values(PII_PATTERNS)) {
|
|
74
|
-
newVal = newVal.replace(pattern, "[PII-REDACTED]");
|
|
75
|
-
}
|
|
76
|
-
return newVal;
|
|
99
|
+
return applyPiiPatterns(val, indiaMode);
|
|
77
100
|
}
|
|
78
101
|
if (Array.isArray(val)) {
|
|
79
|
-
return val.map(sanitizeValue);
|
|
102
|
+
return val.map((item) => sanitizeValue(item, indiaMode));
|
|
80
103
|
}
|
|
81
104
|
if (typeof val === "object" && val !== null) {
|
|
82
105
|
const copy = {};
|
|
83
106
|
for (const [k, v] of Object.entries(val)) {
|
|
84
|
-
copy[k] = sanitizeValue(v);
|
|
107
|
+
copy[k] = sanitizeValue(v, indiaMode);
|
|
85
108
|
}
|
|
86
109
|
return copy;
|
|
87
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-sanitizer.js","sourceRoot":"","sources":["../../src/core/request-sanitizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request-sanitizer.js","sourceRoot":"","sources":["../../src/core/request-sanitizer.ts"],"names":[],"mappings":"AAQA,MAAM,YAAY,GAAG;IACnB,KAAK,EAAE,iDAAiD;IACxD,KAAK,EAAE,0DAA0D;IACjE,GAAG,EAAE,wBAAwB;IAC7B,WAAW,EAAE,0BAA0B;CACxC,CAAC;AAEF,iDAAiD;AACjD,sHAAsH;AACtH,wFAAwF;AACxF,+EAA+E;AAC/E,MAAM,kBAAkB,GAAG;IACzB,2FAA2F;IAC3F,OAAO,EAAE,4CAA4C;IACrD,qEAAqE;IACrE,OAAO,EAAE,kCAAkC;IAC3C,yDAAyD;IACzD,GAAG,EAAE,4BAA4B;IACjC,4EAA4E;IAC5E,YAAY,EAAE,eAAe;CAC9B,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AAE3F,SAAS,gBAAgB,CAAC,IAAY,EAAE,SAAkB;IACxD,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,IAAI,SAAS,EAAE,CAAC;QACd,2EAA2E;QAC3E,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACtE,8EAA8E;QAC9E,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAC1E,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAClE,sFAAsF;QACtF,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;IACjF,CAAC;IAED,iEAAiE;IACjE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAC9D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAC9D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC5D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAEpE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAmC,EACnC,IAAuB;IAEvB,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACtF,MAAM,KAAK,GAAG,OAAO,IAAI,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAC3C,MAAM,mBAAmB,GAAG,YAAY,IAAI,SAAS,CAAC;IAEtD,MAAM,SAAS,GAAmB,EAAE,GAAG,KAAK,EAAE,CAAC;IAE/C,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,MAAM,WAAW,GAA2B,EAAE,CAAC;QAC/C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAE3C,IACE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBAClB,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC3C,OAAO,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC/D,CAAC,CAAC,EACF,CAAC;gBACD,WAAW,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QACD,SAAS,CAAC,OAAO,GAAG,WAAW,CAAC;IAClC,CAAC;IAED,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,SAAS,GAA8C,EAAE,CAAC;QAChE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAE3C,IACE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBAClB,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC3C,OAAO,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC/D,CAAC,CAAC,EACF,CAAC;gBACD,SAAS,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QACD,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACtD,oCAAoC;YACpC,SAAS,CAAC,IAAI,GAAG,YAAY,CAAC;QAChC,CAAC;aAAM,IAAI,mBAAmB,IAAI,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrE,SAAS,CAAC,IAAI,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC;aAAM,IACL,mBAAmB;YACnB,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;YAClC,SAAS,CAAC,IAAI,KAAK,IAAI,EACvB,CAAC;YACD,SAAS,CAAC,IAAI,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CAAC,GAAY,EAAE,SAAkB;IACrD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Server-Sent-Events (SSE) streaming support for Meridian.
|
|
3
|
+
*
|
|
4
|
+
* This is an additive, standalone code path. It does NOT touch the buffered
|
|
5
|
+
* request pipeline used by get/post/etc.
|
|
6
|
+
*/
|
|
7
|
+
export interface StreamChunk<T = unknown> {
|
|
8
|
+
event?: string;
|
|
9
|
+
data: T;
|
|
10
|
+
raw: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Robust SSE parser. Decodes the byte stream, buffers across network chunks,
|
|
14
|
+
* splits on event boundaries (double-newline, tolerant of `\r\n`), parses each
|
|
15
|
+
* event block, and yields a StreamChunk per data event. Skips `[DONE]` and
|
|
16
|
+
* flushes any trailing buffered event when the stream ends.
|
|
17
|
+
*/
|
|
18
|
+
export declare function parseSSEStream(stream: ReadableStream<Uint8Array>): AsyncGenerator<StreamChunk>;
|
|
19
|
+
//# sourceMappingURL=streaming.d.ts.map
|