@ama-sdk/core 10.0.0-next.8 → 11.0.0-next.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/README.md +51 -31
- package/cjs/clients/api-angular-client.js +6 -2
- package/cjs/clients/api-beacon-client.js +3 -2
- package/cjs/clients/api-fetch-client.js +9 -4
- package/cjs/fwk/Reviver.js +3 -3
- package/cjs/fwk/api.helpers.js +9 -10
- package/cjs/fwk/api.js +2 -2
- package/cjs/fwk/date.js +4 -39
- package/cjs/fwk/errors.js +10 -11
- package/cjs/fwk/index.js +1 -0
- package/cjs/fwk/logger.js +9 -0
- package/cjs/fwk/mocks/alf-mock-adapter.js +1 -8
- package/cjs/fwk/mocks/base-mock-adapter.js +0 -12
- package/cjs/plugins/additional-params/additional-params.request.js +5 -5
- package/cjs/plugins/api-configuration-override/api-configuration-override.request.js +2 -2
- package/cjs/plugins/api-key/api-key.request.js +2 -2
- package/cjs/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.js +77 -105
- package/cjs/plugins/bot-protection-fingerprint/bot-protection-fingerprint.spec.js +9 -98
- package/cjs/plugins/client-facts/client-facts.request.js +5 -7
- package/cjs/plugins/concurrent/concurrent.fetch.js +2 -2
- package/cjs/plugins/core/plugin.js +1 -3
- package/cjs/plugins/custom-info/custom-info.reply.js +0 -1
- package/cjs/plugins/index.js +0 -21
- package/cjs/plugins/mgw-mdw-auth/mgw-mdw-auth.request.js +7 -9
- package/cjs/plugins/mgw-mdw-auth/mgw-mdw-auth.spec.js +1 -0
- package/cjs/plugins/mock-intercept/mock-intercept.fetch.js +5 -4
- package/cjs/plugins/mock-intercept/mock-intercept.request.js +3 -3
- package/cjs/plugins/mock-intercept/mock-intercept.spec.js +1 -3
- package/cjs/plugins/perf-metric/perf-metric.fetch.js +2 -5
- package/cjs/plugins/pii-tokenizer/pii-tokenizer.request.js +12 -14
- package/cjs/plugins/pii-tokenizer/pii-tokenizer.spec.js +3 -1
- package/cjs/plugins/retry/retry.fetch.js +2 -3
- package/cjs/plugins/session-id/session-id.request.js +10 -11
- package/cjs/plugins/session-id/session-id.spec.js +12 -8
- package/cjs/plugins/simple-api-key-authentication/simple-api-key-authentication.request.js +2 -4
- package/cjs/plugins/timeout/timeout.fetch.js +75 -15
- package/cjs/plugins/timeout/timeout.spec.js +102 -3
- package/cjs/plugins/url-rewrite/url-rewrite.request.js +2 -2
- package/cjs/plugins/wait-for/wait-for.fetch.js +2 -2
- package/cjs/public_api.js +1 -0
- package/cjs/utils/crypto.js +5 -5
- package/cjs/utils/encoder.js +0 -5
- package/cjs/{plugins/gateway-token → utils}/index.js +5 -2
- package/cjs/utils/json-token.js +11 -13
- package/cjs/utils/json-token.spec.js +4 -2
- package/cjs/utils/mime-types.js +22 -0
- package/cli/clear-index.cjs +25 -0
- package/cli/clear-index.cjs.map +1 -0
- package/cli/clear-index.d.cts +3 -0
- package/cli/clear-index.d.cts.map +1 -0
- package/cli/files-pack.cjs +84 -0
- package/cli/files-pack.cjs.map +1 -0
- package/cli/files-pack.d.cts +3 -0
- package/cli/files-pack.d.cts.map +1 -0
- package/cli/package.json +3 -0
- package/esm2015/clients/api-angular-client.js +6 -2
- package/esm2015/clients/api-beacon-client.js +3 -2
- package/esm2015/clients/api-fetch-client.js +9 -4
- package/esm2015/fwk/Reviver.js +0 -3
- package/esm2015/fwk/api.helpers.js +3 -3
- package/esm2015/fwk/api.interface.js +1 -1
- package/esm2015/fwk/api.js +2 -2
- package/esm2015/fwk/core/api-client.js +0 -1
- package/esm2015/fwk/core/base-api-constructor.js +0 -1
- package/esm2015/fwk/date.js +1 -38
- package/esm2015/fwk/errors.js +2 -3
- package/esm2015/fwk/index.js +1 -0
- package/esm2015/fwk/logger.js +6 -0
- package/esm2015/fwk/mocks/alf-mock-adapter.js +1 -9
- package/esm2015/fwk/mocks/base-mock-adapter.js +0 -12
- package/esm2015/fwk/mocks/encoded-api-request.js +3 -1
- package/esm2015/fwk/mocks/helpers.js +0 -2
- package/esm2015/fwk/mocks/mock-adapter.js +1 -1
- package/esm2015/fwk/mocks/path-object.js +1 -1
- package/esm2015/plugins/additional-params/additional-params.request.js +2 -3
- package/esm2015/plugins/api-configuration-override/api-configuration-override.request.js +2 -3
- package/esm2015/plugins/api-key/api-key.request.js +2 -2
- package/esm2015/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.js +84 -118
- package/esm2015/plugins/bot-protection-fingerprint/bot-protection-fingerprint.spec.js +10 -99
- package/esm2015/plugins/client-facts/client-facts.request.js +14 -7
- package/esm2015/plugins/concurrent/concurrent.fetch.js +2 -2
- package/esm2015/plugins/core/fetch-plugin.js +4 -1
- package/esm2015/plugins/core/plugin.js +1 -1
- package/esm2015/plugins/core/reply-plugin.js +4 -1
- package/esm2015/plugins/core/request-plugin.js +4 -1
- package/esm2015/plugins/custom-info/custom-info.reply.js +0 -1
- package/esm2015/plugins/index.js +0 -4
- package/esm2015/plugins/mgw-mdw-auth/mgw-mdw-auth.request.js +3 -7
- package/esm2015/plugins/mgw-mdw-auth/mgw-mdw-auth.spec.js +1 -0
- package/esm2015/plugins/mock-intercept/mock-intercept.fetch.js +5 -4
- package/esm2015/plugins/mock-intercept/mock-intercept.request.js +3 -3
- package/esm2015/plugins/mock-intercept/mock-intercept.spec.js +1 -3
- package/esm2015/plugins/perf-metric/perf-metric.fetch.js +2 -5
- package/esm2015/plugins/pii-tokenizer/pii-tokenizer.request.js +19 -21
- package/esm2015/plugins/retry/retry.fetch.js +2 -3
- package/esm2015/plugins/session-id/session-id.request.js +10 -11
- package/esm2015/plugins/session-id/session-id.spec.js +12 -8
- package/esm2015/plugins/simple-api-key-authentication/simple-api-key-authentication.request.js +10 -10
- package/esm2015/plugins/timeout/timeout.fetch.js +70 -12
- package/esm2015/plugins/timeout/timeout.spec.js +102 -3
- package/esm2015/plugins/url-rewrite/url-rewrite.request.js +2 -2
- package/esm2015/plugins/wait-for/wait-for.fetch.js +4 -3
- package/esm2015/public_api.js +1 -0
- package/esm2015/utils/crypto.js +0 -4
- package/esm2015/utils/encoder.js +0 -5
- package/esm2015/utils/ie11.js +0 -1
- package/esm2015/utils/index.js +5 -0
- package/esm2015/utils/json-token.js +2 -7
- package/esm2015/utils/json-token.spec.js +4 -2
- package/esm2015/utils/mime-types.js +7 -0
- package/package.json +51 -36
- package/schematics/ng-add/index.d.ts.map +1 -1
- package/schematics/ng-add/index.js +38 -20
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/schema.json +2 -2
- package/src/clients/api-angular-client.d.ts.map +1 -1
- package/src/clients/api-angular-client.js +3 -2
- package/src/clients/api-angular-client.js.map +1 -1
- package/src/clients/api-beacon-client.d.ts +0 -1
- package/src/clients/api-beacon-client.d.ts.map +1 -1
- package/src/clients/api-beacon-client.js +1 -3
- package/src/clients/api-beacon-client.js.map +1 -1
- package/src/clients/api-fetch-client.d.ts +0 -1
- package/src/clients/api-fetch-client.d.ts.map +1 -1
- package/src/clients/api-fetch-client.js +5 -5
- package/src/clients/api-fetch-client.js.map +1 -1
- package/src/fwk/Reviver.d.ts +0 -3
- package/src/fwk/Reviver.d.ts.map +1 -1
- package/src/fwk/Reviver.js +0 -3
- package/src/fwk/Reviver.js.map +1 -1
- package/src/fwk/api.helpers.d.ts +2 -1
- package/src/fwk/api.helpers.d.ts.map +1 -1
- package/src/fwk/api.helpers.js +2 -1
- package/src/fwk/api.helpers.js.map +1 -1
- package/src/fwk/core/api-client.d.ts +0 -4
- package/src/fwk/core/api-client.d.ts.map +1 -1
- package/src/fwk/core/api-client.js +0 -1
- package/src/fwk/core/api-client.js.map +1 -1
- package/src/fwk/core/base-api-constructor.d.ts +3 -2
- package/src/fwk/core/base-api-constructor.d.ts.map +1 -1
- package/src/fwk/core/base-api-constructor.js +0 -1
- package/src/fwk/core/base-api-constructor.js.map +1 -1
- package/src/fwk/date.d.ts +0 -15
- package/src/fwk/date.d.ts.map +1 -1
- package/src/fwk/date.js +0 -36
- package/src/fwk/date.js.map +1 -1
- package/src/fwk/index.d.ts +1 -0
- package/src/fwk/index.d.ts.map +1 -1
- package/src/fwk/index.js +1 -0
- package/src/fwk/index.js.map +1 -1
- package/src/fwk/logger.d.ts +39 -0
- package/src/fwk/logger.d.ts.map +1 -0
- package/src/fwk/logger.js +2 -0
- package/src/fwk/logger.js.map +1 -0
- package/src/fwk/mocks/alf-mock-adapter.d.ts +0 -1
- package/src/fwk/mocks/alf-mock-adapter.d.ts.map +1 -1
- package/src/fwk/mocks/alf-mock-adapter.js +0 -7
- package/src/fwk/mocks/alf-mock-adapter.js.map +1 -1
- package/src/fwk/mocks/base-mock-adapter.d.ts +0 -4
- package/src/fwk/mocks/base-mock-adapter.d.ts.map +1 -1
- package/src/fwk/mocks/base-mock-adapter.js +0 -10
- package/src/fwk/mocks/base-mock-adapter.js.map +1 -1
- package/src/fwk/mocks/helpers.d.ts +0 -2
- package/src/fwk/mocks/helpers.d.ts.map +1 -1
- package/src/fwk/mocks/helpers.js +0 -2
- package/src/fwk/mocks/helpers.js.map +1 -1
- package/src/fwk/mocks/mock-adapter.d.ts +0 -10
- package/src/fwk/mocks/mock-adapter.d.ts.map +1 -1
- package/src/fwk/mocks/random-mock-adapter.d.ts +1 -1
- package/src/fwk/mocks/random-mock-adapter.d.ts.map +1 -1
- package/src/fwk/mocks/random-mock-adapter.js.map +1 -1
- package/src/plugins/additional-params/additional-params-sync.request.d.ts +1 -2
- package/src/plugins/additional-params/additional-params-sync.request.d.ts.map +1 -1
- package/src/plugins/additional-params/additional-params-sync.request.js +0 -1
- package/src/plugins/additional-params/additional-params-sync.request.js.map +1 -1
- package/src/plugins/additional-params/additional-params.request.d.ts +1 -3
- package/src/plugins/additional-params/additional-params.request.d.ts.map +1 -1
- package/src/plugins/additional-params/additional-params.request.js +0 -2
- package/src/plugins/additional-params/additional-params.request.js.map +1 -1
- package/src/plugins/api-configuration-override/api-configuration-override.request.d.ts +2 -4
- package/src/plugins/api-configuration-override/api-configuration-override.request.d.ts.map +1 -1
- package/src/plugins/api-configuration-override/api-configuration-override.request.js +0 -2
- package/src/plugins/api-configuration-override/api-configuration-override.request.js.map +1 -1
- package/src/plugins/api-key/api-key.request.d.ts +2 -3
- package/src/plugins/api-key/api-key.request.d.ts.map +1 -1
- package/src/plugins/api-key/api-key.request.js +0 -1
- package/src/plugins/api-key/api-key.request.js.map +1 -1
- package/src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.d.ts +16 -31
- package/src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.d.ts.map +1 -1
- package/src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.js +20 -61
- package/src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.js.map +1 -1
- package/src/plugins/client-facts/client-facts.request.d.ts +15 -8
- package/src/plugins/client-facts/client-facts.request.d.ts.map +1 -1
- package/src/plugins/client-facts/client-facts.request.js +12 -5
- package/src/plugins/client-facts/client-facts.request.js.map +1 -1
- package/src/plugins/concurrent/concurrent.fetch.d.ts +1 -2
- package/src/plugins/concurrent/concurrent.fetch.d.ts.map +1 -1
- package/src/plugins/concurrent/concurrent.fetch.js +0 -1
- package/src/plugins/concurrent/concurrent.fetch.js.map +1 -1
- package/src/plugins/core/fetch-plugin.d.ts +7 -4
- package/src/plugins/core/fetch-plugin.d.ts.map +1 -1
- package/src/plugins/core/plugin.d.ts +15 -2
- package/src/plugins/core/plugin.d.ts.map +1 -1
- package/src/plugins/core/reply-plugin.d.ts +8 -5
- package/src/plugins/core/reply-plugin.d.ts.map +1 -1
- package/src/plugins/core/request-plugin.d.ts +11 -3
- package/src/plugins/core/request-plugin.d.ts.map +1 -1
- package/src/plugins/custom-info/custom-info.reply.d.ts +1 -3
- package/src/plugins/custom-info/custom-info.reply.d.ts.map +1 -1
- package/src/plugins/custom-info/custom-info.reply.js +0 -2
- package/src/plugins/custom-info/custom-info.reply.js.map +1 -1
- package/src/plugins/exception/exception.reply.d.ts +1 -1
- package/src/plugins/exception/exception.reply.d.ts.map +1 -1
- package/src/plugins/exception/exception.reply.js.map +1 -1
- package/src/plugins/fetch-cache/fetch-cache.request.d.ts +3 -3
- package/src/plugins/fetch-cache/fetch-cache.request.d.ts.map +1 -1
- package/src/plugins/fetch-credentials/fetch-credentials.request.d.ts +1 -1
- package/src/plugins/fetch-credentials/fetch-credentials.request.d.ts.map +1 -1
- package/src/plugins/index.d.ts +0 -4
- package/src/plugins/index.d.ts.map +1 -1
- package/src/plugins/index.js +0 -4
- package/src/plugins/index.js.map +1 -1
- package/src/plugins/json-token/json-token.reply.d.ts +0 -1
- package/src/plugins/json-token/json-token.reply.d.ts.map +1 -1
- package/src/plugins/json-token/json-token.reply.js +0 -1
- package/src/plugins/json-token/json-token.reply.js.map +1 -1
- package/src/plugins/json-token/json-token.request.d.ts +2 -3
- package/src/plugins/json-token/json-token.request.d.ts.map +1 -1
- package/src/plugins/json-token/json-token.request.js +0 -1
- package/src/plugins/json-token/json-token.request.js.map +1 -1
- package/src/plugins/mgw-mdw-auth/mgw-mdw-auth.request.d.ts +2 -8
- package/src/plugins/mgw-mdw-auth/mgw-mdw-auth.request.d.ts.map +1 -1
- package/src/plugins/mgw-mdw-auth/mgw-mdw-auth.request.js +0 -6
- package/src/plugins/mgw-mdw-auth/mgw-mdw-auth.request.js.map +1 -1
- package/src/plugins/mock-intercept/mock-intercept.fetch.d.ts.map +1 -1
- package/src/plugins/mock-intercept/mock-intercept.fetch.js +3 -2
- package/src/plugins/mock-intercept/mock-intercept.fetch.js.map +1 -1
- package/src/plugins/mock-intercept/mock-intercept.request.d.ts +1 -1
- package/src/plugins/mock-intercept/mock-intercept.request.d.ts.map +1 -1
- package/src/plugins/mock-intercept/mock-intercept.request.js +1 -1
- package/src/plugins/mock-intercept/mock-intercept.request.js.map +1 -1
- package/src/plugins/perf-metric/perf-metric.fetch.d.ts +0 -3
- package/src/plugins/perf-metric/perf-metric.fetch.d.ts.map +1 -1
- package/src/plugins/perf-metric/perf-metric.fetch.js +0 -3
- package/src/plugins/perf-metric/perf-metric.fetch.js.map +1 -1
- package/src/plugins/pii-tokenizer/pii-tokenizer.request.d.ts +19 -21
- package/src/plugins/pii-tokenizer/pii-tokenizer.request.d.ts.map +1 -1
- package/src/plugins/pii-tokenizer/pii-tokenizer.request.js +18 -20
- package/src/plugins/pii-tokenizer/pii-tokenizer.request.js.map +1 -1
- package/src/plugins/retry/retry.fetch.d.ts +8 -7
- package/src/plugins/retry/retry.fetch.d.ts.map +1 -1
- package/src/plugins/retry/retry.fetch.js +0 -2
- package/src/plugins/retry/retry.fetch.js.map +1 -1
- package/src/plugins/session-id/session-id.request.d.ts +7 -6
- package/src/plugins/session-id/session-id.request.d.ts.map +1 -1
- package/src/plugins/session-id/session-id.request.js +11 -12
- package/src/plugins/session-id/session-id.request.js.map +1 -1
- package/src/plugins/si-token/si-token.request.d.ts +0 -1
- package/src/plugins/si-token/si-token.request.d.ts.map +1 -1
- package/src/plugins/si-token/si-token.request.js +0 -1
- package/src/plugins/si-token/si-token.request.js.map +1 -1
- package/src/plugins/simple-api-key-authentication/simple-api-key-authentication.request.d.ts +10 -11
- package/src/plugins/simple-api-key-authentication/simple-api-key-authentication.request.d.ts.map +1 -1
- package/src/plugins/simple-api-key-authentication/simple-api-key-authentication.request.js +8 -9
- package/src/plugins/simple-api-key-authentication/simple-api-key-authentication.request.js.map +1 -1
- package/src/plugins/timeout/timeout.fetch.d.ts +31 -2
- package/src/plugins/timeout/timeout.fetch.d.ts.map +1 -1
- package/src/plugins/timeout/timeout.fetch.js +62 -10
- package/src/plugins/timeout/timeout.fetch.js.map +1 -1
- package/src/plugins/url-rewrite/url-rewrite.request.d.ts +1 -2
- package/src/plugins/url-rewrite/url-rewrite.request.d.ts.map +1 -1
- package/src/plugins/url-rewrite/url-rewrite.request.js +0 -1
- package/src/plugins/url-rewrite/url-rewrite.request.js.map +1 -1
- package/src/plugins/wait-for/wait-for.fetch.d.ts +2 -3
- package/src/plugins/wait-for/wait-for.fetch.d.ts.map +1 -1
- package/src/plugins/wait-for/wait-for.fetch.js +2 -2
- package/src/plugins/wait-for/wait-for.fetch.js.map +1 -1
- package/src/public_api.d.ts +1 -0
- package/src/public_api.d.ts.map +1 -1
- package/src/public_api.js +1 -0
- package/src/public_api.js.map +1 -1
- package/src/utils/crypto.d.ts +0 -4
- package/src/utils/crypto.d.ts.map +1 -1
- package/src/utils/crypto.js +0 -4
- package/src/utils/crypto.js.map +1 -1
- package/src/utils/encoder.d.ts +0 -1
- package/src/utils/encoder.d.ts.map +1 -1
- package/src/utils/encoder.js +0 -5
- package/src/utils/encoder.js.map +1 -1
- package/src/utils/ie11.d.ts +0 -1
- package/src/utils/ie11.d.ts.map +1 -1
- package/src/utils/ie11.js +0 -1
- package/src/utils/ie11.js.map +1 -1
- package/src/utils/index.d.ts +6 -0
- package/src/utils/index.d.ts.map +1 -0
- package/src/utils/index.js +6 -0
- package/src/utils/index.js.map +1 -0
- package/src/utils/json-token.d.ts +0 -3
- package/src/utils/json-token.d.ts.map +1 -1
- package/src/utils/json-token.js +0 -5
- package/src/utils/json-token.js.map +1 -1
- package/src/utils/mime-types.d.ts +7 -0
- package/src/utils/mime-types.d.ts.map +1 -0
- package/src/utils/mime-types.js +9 -0
- package/src/utils/mime-types.js.map +1 -0
- package/cjs/plugins/fetch-options/fetch-options.request.js +0 -87
- package/cjs/plugins/fetch-options/fetch-options.spec.js +0 -280
- package/cjs/plugins/fetch-options/index.js +0 -18
- package/cjs/plugins/gateway-token/gateway-authentication.js +0 -275
- package/cjs/plugins/gateway-token/gateway-token.request.js +0 -388
- package/cjs/plugins/gateway-token/gateway-token.spec.js +0 -360
- package/cjs/plugins/imperva/imperva.fetch.js +0 -307
- package/cjs/plugins/imperva/imperva.spec.js +0 -347
- package/cjs/plugins/imperva/index.js +0 -18
- package/cjs/plugins/public-facts/index.js +0 -18
- package/cjs/plugins/public-facts/public-facts.request.js +0 -101
- package/cjs/plugins/public-facts/public-facts.spec.js +0 -367
- package/esm2015/plugins/fetch-options/fetch-options.request.js +0 -81
- package/esm2015/plugins/fetch-options/fetch-options.spec.js +0 -276
- package/esm2015/plugins/fetch-options/index.js +0 -1
- package/esm2015/plugins/gateway-token/gateway-authentication.js +0 -262
- package/esm2015/plugins/gateway-token/gateway-token.request.js +0 -406
- package/esm2015/plugins/gateway-token/gateway-token.spec.js +0 -356
- package/esm2015/plugins/gateway-token/index.js +0 -2
- package/esm2015/plugins/imperva/imperva.fetch.js +0 -303
- package/esm2015/plugins/imperva/imperva.spec.js +0 -343
- package/esm2015/plugins/imperva/index.js +0 -1
- package/esm2015/plugins/public-facts/index.js +0 -1
- package/esm2015/plugins/public-facts/public-facts.request.js +0 -138
- package/esm2015/plugins/public-facts/public-facts.spec.js +0 -363
- package/src/plugins/fetch-options/fetch-options.request.d.ts +0 -26
- package/src/plugins/fetch-options/fetch-options.request.d.ts.map +0 -1
- package/src/plugins/fetch-options/fetch-options.request.js +0 -22
- package/src/plugins/fetch-options/fetch-options.request.js.map +0 -1
- package/src/plugins/fetch-options/index.d.ts +0 -2
- package/src/plugins/fetch-options/index.d.ts.map +0 -1
- package/src/plugins/fetch-options/index.js +0 -2
- package/src/plugins/fetch-options/index.js.map +0 -1
- package/src/plugins/gateway-token/gateway-authentication.d.ts +0 -105
- package/src/plugins/gateway-token/gateway-authentication.d.ts.map +0 -1
- package/src/plugins/gateway-token/gateway-authentication.js +0 -74
- package/src/plugins/gateway-token/gateway-authentication.js.map +0 -1
- package/src/plugins/gateway-token/gateway-token.request.d.ts +0 -97
- package/src/plugins/gateway-token/gateway-token.request.d.ts.map +0 -1
- package/src/plugins/gateway-token/gateway-token.request.js +0 -127
- package/src/plugins/gateway-token/gateway-token.request.js.map +0 -1
- package/src/plugins/gateway-token/index.d.ts +0 -3
- package/src/plugins/gateway-token/index.d.ts.map +0 -1
- package/src/plugins/gateway-token/index.js +0 -3
- package/src/plugins/gateway-token/index.js.map +0 -1
- package/src/plugins/imperva/imperva.fetch.d.ts +0 -33
- package/src/plugins/imperva/imperva.fetch.d.ts.map +0 -1
- package/src/plugins/imperva/imperva.fetch.js +0 -41
- package/src/plugins/imperva/imperva.fetch.js.map +0 -1
- package/src/plugins/imperva/index.d.ts +0 -2
- package/src/plugins/imperva/index.d.ts.map +0 -1
- package/src/plugins/imperva/index.js +0 -2
- package/src/plugins/imperva/index.js.map +0 -1
- package/src/plugins/public-facts/index.d.ts +0 -2
- package/src/plugins/public-facts/index.d.ts.map +0 -1
- package/src/plugins/public-facts/index.js +0 -2
- package/src/plugins/public-facts/index.js.map +0 -1
- package/src/plugins/public-facts/public-facts.request.d.ts +0 -89
- package/src/plugins/public-facts/public-facts.request.d.ts.map +0 -1
- package/src/plugins/public-facts/public-facts.request.js +0 -62
- package/src/plugins/public-facts/public-facts.request.js.map +0 -1
|
@@ -21,10 +21,9 @@ export interface AdditionalParametersSync {
|
|
|
21
21
|
* Plugin to add (or change) the request parameters
|
|
22
22
|
*/
|
|
23
23
|
export declare class AdditionalParamsSyncRequest implements RequestPlugin {
|
|
24
|
-
private additionalParams;
|
|
24
|
+
private readonly additionalParams;
|
|
25
25
|
/**
|
|
26
26
|
* Initialize your plugin
|
|
27
|
-
*
|
|
28
27
|
* @param additionalParams Parameters to add or modify
|
|
29
28
|
*/
|
|
30
29
|
constructor(additionalParams: AdditionalParametersSync);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"additional-params-sync.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params-sync.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG1E,MAAM,WAAW,wBAAwB;IACvC,yBAAyB;IACzB,OAAO,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC;IACpF,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC;IAC/G,6BAA6B;IAC7B,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,qBAAa,2BAA4B,YAAW,aAAa;IAE/D,OAAO,CAAC,gBAAgB,CAA2B;
|
|
1
|
+
{"version":3,"file":"additional-params-sync.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params-sync.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG1E,MAAM,WAAW,wBAAwB;IACvC,yBAAyB;IACzB,OAAO,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC;IACpF,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC;IAC/G,6BAA6B;IAC7B,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,qBAAa,2BAA4B,YAAW,aAAa;IAE/D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA2B;IAE5D;;;OAGG;gBACS,gBAAgB,EAAE,wBAAwB;IAI/C,IAAI,IAAI,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC;CAuBhE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"additional-params-sync.request.js","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params-sync.request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAWlE;;GAEG;AACH,MAAM,OAAO,2BAA2B;IAItC
|
|
1
|
+
{"version":3,"file":"additional-params-sync.request.js","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params-sync.request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAWlE;;GAEG;AACH,MAAM,OAAO,2BAA2B;IAItC;;;OAGG;IACH,YAAY,gBAA0C;QACpD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,CAAC,IAAoB,EAAE,EAAE;gBAClC,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;gBACtK,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;gBAClJ,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAE9H,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,WAAW,GAAG,EAAC,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,WAAW,EAAC,CAAC;iBAC1D;gBAED,IAAI,IAAI,KAAK,SAAS,EAAE;oBACtB,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;iBAC9C;gBAED,IAAI,OAAO,EAAE;oBACX,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAC5E;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -24,7 +24,6 @@ export interface AdditionalParameters {
|
|
|
24
24
|
/**
|
|
25
25
|
* Check if the value is a string or undefined.
|
|
26
26
|
* Used to determine the request body type at runtime.
|
|
27
|
-
*
|
|
28
27
|
* @param value
|
|
29
28
|
*/
|
|
30
29
|
export declare function isStringOrUndefined(value: any): value is string | undefined;
|
|
@@ -32,10 +31,9 @@ export declare function isStringOrUndefined(value: any): value is string | undef
|
|
|
32
31
|
* Plugin to add (or change) the request parameters
|
|
33
32
|
*/
|
|
34
33
|
export declare class AdditionalParamsRequest implements RequestPlugin {
|
|
35
|
-
private additionalParams;
|
|
34
|
+
private readonly additionalParams;
|
|
36
35
|
/**
|
|
37
36
|
* Initialize your plugin
|
|
38
|
-
*
|
|
39
37
|
* @param additionalParams Parameters to add or modify
|
|
40
38
|
*/
|
|
41
39
|
constructor(additionalParams: AdditionalParameters);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"additional-params.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtE,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,OAAO,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC,CAAC;IACvH,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC,CAAC;IAClJ,6BAA6B;IAC7B,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACpE;AAED
|
|
1
|
+
{"version":3,"file":"additional-params.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtE,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,OAAO,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC,CAAC;IACvH,8BAA8B;IAC9B,WAAW,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,KAAK;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,CAAC,CAAC,CAAC;IAClJ,6BAA6B;IAC7B,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACpE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,GAAG,SAAS,CAG3E;AAED;;GAEG;AACH,qBAAa,uBAAwB,YAAW,aAAa;IAE3D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IAExD;;;OAGG;gBACS,gBAAgB,EAAE,oBAAoB;IAI3C,IAAI,IAAI,YAAY,CAAC,cAAc,EAAE,cAAc,CAAC;CAwB5D"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Check if the value is a string or undefined.
|
|
3
3
|
* Used to determine the request body type at runtime.
|
|
4
|
-
*
|
|
5
4
|
* @param value
|
|
6
5
|
*/
|
|
7
6
|
export function isStringOrUndefined(value) {
|
|
@@ -14,7 +13,6 @@ export function isStringOrUndefined(value) {
|
|
|
14
13
|
export class AdditionalParamsRequest {
|
|
15
14
|
/**
|
|
16
15
|
* Initialize your plugin
|
|
17
|
-
*
|
|
18
16
|
* @param additionalParams Parameters to add or modify
|
|
19
17
|
*/
|
|
20
18
|
constructor(additionalParams) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"additional-params.request.js","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params.request.ts"],"names":[],"mappings":"AAWA
|
|
1
|
+
{"version":3,"file":"additional-params.request.js","sourceRoot":"","sources":["../../../../src/plugins/additional-params/additional-params.request.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAU;IAC5C,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAC1B,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,uBAAuB;IAIlC;;;OAGG;IACH,YAAY,gBAAsC;QAChD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,IAAoB,EAAE,EAAE;gBACxC,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC;gBAC5K,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;gBACxJ,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAE9H,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,WAAW,GAAG,EAAC,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,WAAW,EAAC,CAAC;iBAC1D;gBAED,IAAI,IAAI,KAAK,SAAS,EAAE;oBACtB,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC;iBACpD;gBAED,IAAI,OAAO,EAAE;oBACX,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAC5E;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CAEF"}
|
|
@@ -2,15 +2,13 @@ import { AsyncPluginInput, PluginRunner, RequestOptions, RequestPlugin } from '.
|
|
|
2
2
|
/**
|
|
3
3
|
* The purpose of this plugin is to allow to send an encrypted JWT which overrides the configuration used by Digital Commerce.
|
|
4
4
|
* The plugin takes an already encoded JWT (JWS) and add it in an instance of `ama-client-facts` header.
|
|
5
|
-
*
|
|
6
5
|
* @note this is the default value for the header name. It can be customized at plugin initialization time.
|
|
7
6
|
*/
|
|
8
7
|
export declare class ApiConfigurationOverride implements RequestPlugin {
|
|
9
|
-
private jws;
|
|
10
|
-
private headerName;
|
|
8
|
+
private readonly jws;
|
|
9
|
+
private readonly headerName;
|
|
11
10
|
/**
|
|
12
11
|
* Initialize your plugin
|
|
13
|
-
*
|
|
14
12
|
* @param jws already formed JWS (signed token)
|
|
15
13
|
* @param headerName the name of the header
|
|
16
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-configuration-override.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/api-configuration-override/api-configuration-override.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExF
|
|
1
|
+
{"version":3,"file":"api-configuration-override.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/api-configuration-override/api-configuration-override.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExF;;;;GAIG;AACH,qBAAa,wBAAyB,YAAW,aAAa;IAE5D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA2B;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC;;;;OAIG;gBACS,GAAG,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,UAAU,SAAqB;IAKnE,IAAI,IAAI,YAAY,CAAC,cAAc,EAAE,cAAc,CAAC;CAc5D"}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The purpose of this plugin is to allow to send an encrypted JWT which overrides the configuration used by Digital Commerce.
|
|
3
3
|
* The plugin takes an already encoded JWT (JWS) and add it in an instance of `ama-client-facts` header.
|
|
4
|
-
*
|
|
5
4
|
* @note this is the default value for the header name. It can be customized at plugin initialization time.
|
|
6
5
|
*/
|
|
7
6
|
export class ApiConfigurationOverride {
|
|
8
7
|
/**
|
|
9
8
|
* Initialize your plugin
|
|
10
|
-
*
|
|
11
9
|
* @param jws already formed JWS (signed token)
|
|
12
10
|
* @param headerName the name of the header
|
|
13
11
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-configuration-override.request.js","sourceRoot":"","sources":["../../../../src/plugins/api-configuration-override/api-configuration-override.request.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"api-configuration-override.request.js","sourceRoot":"","sources":["../../../../src/plugins/api-configuration-override/api-configuration-override.request.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,OAAO,wBAAwB;IAKnC;;;;OAIG;IACH,YAAY,GAA6B,EAAE,UAAU,GAAG,kBAAkB;QACxE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,IAAoB,EAAE,EAAE;gBACxC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAE3E,IAAI,GAAG,EAAE;oBACP,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;iBAC3C;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CAEF"}
|
|
@@ -3,11 +3,10 @@ import { PluginRunner, RequestOptions, RequestPlugin } from '../core';
|
|
|
3
3
|
* Plugin to add an API Key
|
|
4
4
|
*/
|
|
5
5
|
export declare class ApiKeyRequest implements RequestPlugin {
|
|
6
|
-
private apiKey;
|
|
7
|
-
private apiKeyHeader;
|
|
6
|
+
private readonly apiKey;
|
|
7
|
+
private readonly apiKeyHeader;
|
|
8
8
|
/**
|
|
9
9
|
* Initialize your plugin
|
|
10
|
-
*
|
|
11
10
|
* @param apiKey API Key of your API
|
|
12
11
|
* @param apiKeyHeader Header where to store your API key
|
|
13
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/api-key/api-key.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtE;;GAEG;AACH,qBAAa,aAAc,YAAW,aAAa;IAEjD,OAAO,CAAC,MAAM,CAA4C;
|
|
1
|
+
{"version":3,"file":"api-key.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/api-key/api-key.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtE;;GAEG;AACH,qBAAa,aAAc,YAAW,aAAa;IAEjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IACnE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC;;;;OAIG;gBACS,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,SAAW;IAK/E,IAAI,IAAI,YAAY,CAAC,cAAc,EAAE,cAAc,CAAC;CAU5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-key.request.js","sourceRoot":"","sources":["../../../../src/plugins/api-key/api-key.request.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,aAAa;IAKxB
|
|
1
|
+
{"version":3,"file":"api-key.request.js","sourceRoot":"","sources":["../../../../src/plugins/api-key/api-key.request.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,aAAa;IAKxB;;;;OAIG;IACH,YAAY,MAAiD,EAAE,YAAY,GAAG,QAAQ;QACpF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAEM,IAAI;QACT,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,IAAoB,EAAE,EAAE;gBACxC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACnF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAC/C,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CAEF"}
|
|
@@ -1,16 +1,9 @@
|
|
|
1
|
-
import { PluginRunner, RequestOptions, RequestPlugin } from '../core';
|
|
1
|
+
import { PluginRunner, RequestOptions, RequestPlugin, RequestPluginContext } from '../core';
|
|
2
|
+
import type { Logger } from '../../fwk/logger';
|
|
2
3
|
/**
|
|
3
4
|
* Function that returns the value of the fingerprint if available.
|
|
4
5
|
*/
|
|
5
|
-
export type BotProtectionFingerprintRetriever = () => string | undefined | Promise<string | undefined>;
|
|
6
|
-
/**
|
|
7
|
-
* Implementation of a retriever based on a cookie.
|
|
8
|
-
* Creates a reused RegExp based on the cookieName and tries to extract its value from document.cookie.
|
|
9
|
-
*
|
|
10
|
-
* @param cookieName Name of the cookie to search for
|
|
11
|
-
* @deprecated Imperva integration should rely on the latest impervaProtectionRetrieverFactory
|
|
12
|
-
*/
|
|
13
|
-
export declare function cookieRetrieverFactory(cookieName: string): BotProtectionFingerprintRetriever;
|
|
6
|
+
export type BotProtectionFingerprintRetriever = (logger?: Logger) => string | undefined | Promise<string | undefined>;
|
|
14
7
|
/**
|
|
15
8
|
* Represents the object exposed by Imperva for the integration of their Advanced Bot Protection script with Singe Page Apps.
|
|
16
9
|
*/
|
|
@@ -18,7 +11,6 @@ export interface ImpervaProtection {
|
|
|
18
11
|
/**
|
|
19
12
|
* Returns a Promise that resolves with the most recent valid token.
|
|
20
13
|
* Rejects if token generation failed or reached the specified timeout
|
|
21
|
-
*
|
|
22
14
|
* @param timeout
|
|
23
15
|
*/
|
|
24
16
|
token: (timeout: number) => Promise<string>;
|
|
@@ -33,7 +25,6 @@ declare global {
|
|
|
33
25
|
* Implementation based on Imperva's SPA integration feature developed for Amadeus.
|
|
34
26
|
* This relies on a custom window property protectionLoaded that we feed with a callback that Imperva calls when the ABP script is loaded or when the callback is attached.
|
|
35
27
|
* This callback is called with the Protection object used internally by the ABP that exposes a __token()__ function that returns a Promise of the most up-to-date token.
|
|
36
|
-
*
|
|
37
28
|
* @param protectionTimeout How long the retrieve will wait for the onProtectionLoaded event to be fired
|
|
38
29
|
* @param tokenTimeout How long the ABP script will wait for a new token before rejecting the promise
|
|
39
30
|
*/
|
|
@@ -49,19 +40,9 @@ export interface AkamaiObject {
|
|
|
49
40
|
/**
|
|
50
41
|
* Implementation of a retriever for Akamai based on bmak object from window or as parameter.
|
|
51
42
|
* Will return the telemetry, or undefined if bmak object is not found
|
|
52
|
-
*
|
|
53
43
|
* @param bmakOpt BMak object from Akamai. Default to `window.bmak` on browser if not provided.
|
|
54
44
|
*/
|
|
55
45
|
export declare function akamaiTelemetryRetrieverFactory(bmakOpt?: AkamaiObject): BotProtectionFingerprintRetriever;
|
|
56
|
-
/**
|
|
57
|
-
* Implementation of a retriever based on the way Imperva stores the fingerprint information in localStorage.
|
|
58
|
-
* Since it contains the expiry time of the fingerprint we are able to ignore it if it has to be recomputed.
|
|
59
|
-
*
|
|
60
|
-
* @param storageKey The name of the property in local storage where the fingerprint is saved
|
|
61
|
-
* @param ignoreExpired Return the fingerprint even if it is expired. Default: false
|
|
62
|
-
* @deprecated Imperva integration should rely on the latest impervaProtectionRetrieverFactory
|
|
63
|
-
*/
|
|
64
|
-
export declare function impervaLocalStorageRetrieverFactory(storageKey: string, ignoreExpired?: boolean): BotProtectionFingerprintRetriever;
|
|
65
46
|
/**
|
|
66
47
|
* Options to configure the fingerprint poller
|
|
67
48
|
*/
|
|
@@ -107,13 +88,13 @@ export interface BotProtectionFingerprintRequestOptions {
|
|
|
107
88
|
}
|
|
108
89
|
/**
|
|
109
90
|
* Plug-in that allows to interact with Anti-Bot protection tools fingerprint like following:
|
|
110
|
-
*
|
|
111
|
-
*
|
|
91
|
+
* - Wait for the fingerprint to be present in the document before sending any call
|
|
92
|
+
* - Forward the fingerprint in a chosen request header with all the calls
|
|
112
93
|
*
|
|
113
94
|
* This plugin is modular and must be instantiated with the logic that retrieves the fingerprint value, also called {@link BotProtectionFingerprintRetriever}.
|
|
114
95
|
* This file exports two factories of {@link BotProtectionFingerprintRetriever} to cover our two most common usecases:
|
|
115
|
-
*
|
|
116
|
-
*
|
|
96
|
+
* - Imperva ABP
|
|
97
|
+
* - Akamai telemetry
|
|
117
98
|
* But you can also provide your own logic.
|
|
118
99
|
*
|
|
119
100
|
* In case this logic is unpredictable or subject to race conditions, you can configure a poller that will retry a maximum of N times every X milliseconds.
|
|
@@ -125,9 +106,8 @@ export interface BotProtectionFingerprintRequestOptions {
|
|
|
125
106
|
* authentication calls also contain the fingerprint.
|
|
126
107
|
* You can reuse the same instance that you give to the SDK, or create a simpler instance without a poller in case you
|
|
127
108
|
* make sure to load this plug-in before the AmadeusGatewayTokenRequestPlugin.
|
|
128
|
-
*
|
|
129
109
|
* @example Reusing the same instance
|
|
130
|
-
*
|
|
110
|
+
* ```typescript
|
|
131
111
|
* export function apiFactory(eventTrackService: EventTrackService): ApiManager {
|
|
132
112
|
* const botProtection = new BotProtectionFingerprintRequest({
|
|
133
113
|
* destinationHeaderName: 'X-D-Token',
|
|
@@ -153,18 +133,22 @@ export interface BotProtectionFingerprintRequestOptions {
|
|
|
153
133
|
* LoggingApi: {basePath: '/api'}
|
|
154
134
|
* });
|
|
155
135
|
* }
|
|
136
|
+
* ```
|
|
156
137
|
* @example Using a custom FingerprintRetriever
|
|
157
|
-
*
|
|
138
|
+
* ```typescript
|
|
158
139
|
* const botProtection = new BotProtectionFingerprintRequest({
|
|
159
140
|
* destinationHeaderName: 'X-D-Token',
|
|
160
141
|
* fingerprintRetriever: () => 'test'
|
|
161
142
|
* });
|
|
162
|
-
*
|
|
143
|
+
* ```
|
|
163
144
|
*
|
|
145
|
+
* @example For akamai
|
|
146
|
+
* ```typescript
|
|
164
147
|
* const botProtection = new BotProtectionFingerprintRequest({
|
|
165
148
|
* destinationHeaderName: 'Akamai-BM-Telemetry',
|
|
166
149
|
* fingerprintRetriever: akamaiTelemetryRetrieverFactory()
|
|
167
150
|
* });
|
|
151
|
+
* ```
|
|
168
152
|
*/
|
|
169
153
|
export declare class BotProtectionFingerprintRequest implements RequestPlugin {
|
|
170
154
|
/**
|
|
@@ -183,6 +167,7 @@ export declare class BotProtectionFingerprintRequest implements RequestPlugin {
|
|
|
183
167
|
* If pollOnlyOnce is set to true, the poller won't be executed again after it has been fully executed once.
|
|
184
168
|
*/
|
|
185
169
|
private waitForFingerprint;
|
|
186
|
-
|
|
170
|
+
/** @inheritdoc */
|
|
171
|
+
load(context?: RequestPluginContext): PluginRunner<RequestOptions, RequestOptions>;
|
|
187
172
|
}
|
|
188
173
|
//# sourceMappingURL=bot-protection-fingerprint.request.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot-protection-fingerprint.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"bot-protection-fingerprint.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,oBAAoB,EAAC,MAAM,SAAS,CAAC;AAC1F,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,iCAAiC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAEtH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,IAAI,CAAC,EAAE,GAAG,CAAC;QACX,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,iBAAiB,KAAK,IAAI,CAAC;KAC5D;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAAC,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,iCAAiC,CAsCpI;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,gDAAgD;IAEhD,aAAa,EAAE,MAAM,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,iCAAiC,CAQzG;AAED;;GAEG;AACH,MAAM,WAAW,qCAAqC;IACpD;;OAEG;IACH,+BAA+B,EAAE,MAAM,CAAC;IAExC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACrD;;;;;;;;OAQG;IACH,oBAAoB,EAAE,iCAAiC,CAAC;IAExD;;OAEG;IACH,qBAAqB,EAAE,MAAM,CAAC;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,qCAAqC,CAAC;CACvD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,qBAAa,+BAAgC,YAAW,aAAa;IACnE;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyC;IAEjE;;OAEG;IACH,OAAO,CAAC,SAAS,CAAS;gBAEd,OAAO,EAAE,sCAAsC;IAI3D;;;;;OAKG;YACW,kBAAkB;IAoBhC,kBAAkB;IACX,IAAI,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,YAAY,CAAC,cAAc,EAAE,cAAc,CAAC;CAW1F"}
|
|
@@ -1,27 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Implementation of a retriever based on a cookie.
|
|
3
|
-
* Creates a reused RegExp based on the cookieName and tries to extract its value from document.cookie.
|
|
4
|
-
*
|
|
5
|
-
* @param cookieName Name of the cookie to search for
|
|
6
|
-
* @deprecated Imperva integration should rely on the latest impervaProtectionRetrieverFactory
|
|
7
|
-
*/
|
|
8
|
-
export function cookieRetrieverFactory(cookieName) {
|
|
9
|
-
const cookieRegExp = new RegExp(`(?:^|;)\\s*${cookieName}\\s*=\\s*([^;]+)`);
|
|
10
|
-
return () => {
|
|
11
|
-
if (typeof document === 'undefined') {
|
|
12
|
-
throw new Error('[SDK][Plug-in][BotProtectionFingerprintRequest] Trying to use cookieRetrieverFactory but "document" is not defined.');
|
|
13
|
-
}
|
|
14
|
-
const cookieMatcher = document.cookie && document.cookie.match(cookieRegExp);
|
|
15
|
-
if (cookieMatcher) {
|
|
16
|
-
return cookieMatcher[cookieMatcher.length - 1];
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
1
|
/**
|
|
21
2
|
* Implementation based on Imperva's SPA integration feature developed for Amadeus.
|
|
22
3
|
* This relies on a custom window property protectionLoaded that we feed with a callback that Imperva calls when the ABP script is loaded or when the callback is attached.
|
|
23
4
|
* This callback is called with the Protection object used internally by the ABP that exposes a __token()__ function that returns a Promise of the most up-to-date token.
|
|
24
|
-
*
|
|
25
5
|
* @param protectionTimeout How long the retrieve will wait for the onProtectionLoaded event to be fired
|
|
26
6
|
* @param tokenTimeout How long the ABP script will wait for a new token before rejecting the promise
|
|
27
7
|
*/
|
|
@@ -41,13 +21,13 @@ If the application runs on a domain that is not protected by Imperva, this plugi
|
|
|
41
21
|
};
|
|
42
22
|
});
|
|
43
23
|
};
|
|
44
|
-
return async () => {
|
|
24
|
+
return async (logger) => {
|
|
45
25
|
if (!protection) {
|
|
46
26
|
try {
|
|
47
27
|
protection = await getProtection();
|
|
48
28
|
}
|
|
49
29
|
catch (e) {
|
|
50
|
-
console.
|
|
30
|
+
(logger || console).error(e);
|
|
51
31
|
return;
|
|
52
32
|
}
|
|
53
33
|
}
|
|
@@ -55,7 +35,7 @@ If the application runs on a domain that is not protected by Imperva, this plugi
|
|
|
55
35
|
return await protection.token(tokenTimeout);
|
|
56
36
|
}
|
|
57
37
|
catch (e) {
|
|
58
|
-
console.
|
|
38
|
+
(logger || console).error('[SDK][Plug-in][BotProtectionFingerprintRequest] Timeout: no Token was received in time.');
|
|
59
39
|
return;
|
|
60
40
|
}
|
|
61
41
|
};
|
|
@@ -63,7 +43,6 @@ If the application runs on a domain that is not protected by Imperva, this plugi
|
|
|
63
43
|
/**
|
|
64
44
|
* Implementation of a retriever for Akamai based on bmak object from window or as parameter.
|
|
65
45
|
* Will return the telemetry, or undefined if bmak object is not found
|
|
66
|
-
*
|
|
67
46
|
* @param bmakOpt BMak object from Akamai. Default to `window.bmak` on browser if not provided.
|
|
68
47
|
*/
|
|
69
48
|
export function akamaiTelemetryRetrieverFactory(bmakOpt) {
|
|
@@ -75,39 +54,15 @@ export function akamaiTelemetryRetrieverFactory(bmakOpt) {
|
|
|
75
54
|
return bmak.get_telemetry();
|
|
76
55
|
};
|
|
77
56
|
}
|
|
78
|
-
/**
|
|
79
|
-
* Implementation of a retriever based on the way Imperva stores the fingerprint information in localStorage.
|
|
80
|
-
* Since it contains the expiry time of the fingerprint we are able to ignore it if it has to be recomputed.
|
|
81
|
-
*
|
|
82
|
-
* @param storageKey The name of the property in local storage where the fingerprint is saved
|
|
83
|
-
* @param ignoreExpired Return the fingerprint even if it is expired. Default: false
|
|
84
|
-
* @deprecated Imperva integration should rely on the latest impervaProtectionRetrieverFactory
|
|
85
|
-
*/
|
|
86
|
-
export function impervaLocalStorageRetrieverFactory(storageKey, ignoreExpired = false) {
|
|
87
|
-
return () => {
|
|
88
|
-
if (typeof localStorage === 'undefined') {
|
|
89
|
-
throw new Error('[SDK][Plug-in][BotProtectionFingerprintRequest] Trying to use localStorageRetrieverFactory but localStorage is not defined.');
|
|
90
|
-
}
|
|
91
|
-
const storedFingerprint = localStorage.getItem(storageKey);
|
|
92
|
-
try {
|
|
93
|
-
const parsedFingerprint = storedFingerprint && JSON.parse(storedFingerprint);
|
|
94
|
-
if (parsedFingerprint && (ignoreExpired || parsedFingerprint.renewTime && parsedFingerprint.renewTime >= Date.now())) {
|
|
95
|
-
return parsedFingerprint.token;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
catch {
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
57
|
/**
|
|
103
58
|
* Plug-in that allows to interact with Anti-Bot protection tools fingerprint like following:
|
|
104
|
-
*
|
|
105
|
-
*
|
|
59
|
+
* - Wait for the fingerprint to be present in the document before sending any call
|
|
60
|
+
* - Forward the fingerprint in a chosen request header with all the calls
|
|
106
61
|
*
|
|
107
62
|
* This plugin is modular and must be instantiated with the logic that retrieves the fingerprint value, also called {@link BotProtectionFingerprintRetriever}.
|
|
108
63
|
* This file exports two factories of {@link BotProtectionFingerprintRetriever} to cover our two most common usecases:
|
|
109
|
-
*
|
|
110
|
-
*
|
|
64
|
+
* - Imperva ABP
|
|
65
|
+
* - Akamai telemetry
|
|
111
66
|
* But you can also provide your own logic.
|
|
112
67
|
*
|
|
113
68
|
* In case this logic is unpredictable or subject to race conditions, you can configure a poller that will retry a maximum of N times every X milliseconds.
|
|
@@ -119,9 +74,8 @@ export function impervaLocalStorageRetrieverFactory(storageKey, ignoreExpired =
|
|
|
119
74
|
* authentication calls also contain the fingerprint.
|
|
120
75
|
* You can reuse the same instance that you give to the SDK, or create a simpler instance without a poller in case you
|
|
121
76
|
* make sure to load this plug-in before the AmadeusGatewayTokenRequestPlugin.
|
|
122
|
-
*
|
|
123
77
|
* @example Reusing the same instance
|
|
124
|
-
*
|
|
78
|
+
* ```typescript
|
|
125
79
|
* export function apiFactory(eventTrackService: EventTrackService): ApiManager {
|
|
126
80
|
* const botProtection = new BotProtectionFingerprintRequest({
|
|
127
81
|
* destinationHeaderName: 'X-D-Token',
|
|
@@ -147,18 +101,22 @@ export function impervaLocalStorageRetrieverFactory(storageKey, ignoreExpired =
|
|
|
147
101
|
* LoggingApi: {basePath: '/api'}
|
|
148
102
|
* });
|
|
149
103
|
* }
|
|
104
|
+
* ```
|
|
150
105
|
* @example Using a custom FingerprintRetriever
|
|
151
|
-
*
|
|
106
|
+
* ```typescript
|
|
152
107
|
* const botProtection = new BotProtectionFingerprintRequest({
|
|
153
108
|
* destinationHeaderName: 'X-D-Token',
|
|
154
109
|
* fingerprintRetriever: () => 'test'
|
|
155
110
|
* });
|
|
156
|
-
*
|
|
111
|
+
* ```
|
|
157
112
|
*
|
|
113
|
+
* @example For akamai
|
|
114
|
+
* ```typescript
|
|
158
115
|
* const botProtection = new BotProtectionFingerprintRequest({
|
|
159
116
|
* destinationHeaderName: 'Akamai-BM-Telemetry',
|
|
160
117
|
* fingerprintRetriever: akamaiTelemetryRetrieverFactory()
|
|
161
118
|
* });
|
|
119
|
+
* ```
|
|
162
120
|
*/
|
|
163
121
|
export class BotProtectionFingerprintRequest {
|
|
164
122
|
constructor(options) {
|
|
@@ -174,13 +132,13 @@ export class BotProtectionFingerprintRequest {
|
|
|
174
132
|
*
|
|
175
133
|
* If pollOnlyOnce is set to true, the poller won't be executed again after it has been fully executed once.
|
|
176
134
|
*/
|
|
177
|
-
async waitForFingerprint() {
|
|
135
|
+
async waitForFingerprint(logger) {
|
|
178
136
|
const pollerOptions = this.options.pollerOptions;
|
|
179
137
|
if (pollerOptions === undefined || this.options.pollOnlyOnce !== false && this.hasPolled) {
|
|
180
|
-
return this.options.fingerprintRetriever();
|
|
138
|
+
return this.options.fingerprintRetriever(logger);
|
|
181
139
|
}
|
|
182
140
|
for (let i = pollerOptions.maximumTries - 1; i >= 0; i--) {
|
|
183
|
-
const fingerprint = await this.options.fingerprintRetriever();
|
|
141
|
+
const fingerprint = await this.options.fingerprintRetriever(logger);
|
|
184
142
|
if (fingerprint) {
|
|
185
143
|
this.hasPolled = true;
|
|
186
144
|
return fingerprint;
|
|
@@ -191,10 +149,11 @@ export class BotProtectionFingerprintRequest {
|
|
|
191
149
|
}
|
|
192
150
|
this.hasPolled = true;
|
|
193
151
|
}
|
|
194
|
-
|
|
152
|
+
/** @inheritdoc */
|
|
153
|
+
load(context) {
|
|
195
154
|
return {
|
|
196
155
|
transform: async (requestOptions) => {
|
|
197
|
-
const fingerprint = await this.waitForFingerprint();
|
|
156
|
+
const fingerprint = await this.waitForFingerprint(context?.logger);
|
|
198
157
|
if (fingerprint) {
|
|
199
158
|
requestOptions.headers.set(this.options.destinationHeaderName, fingerprint);
|
|
200
159
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot-protection-fingerprint.request.js","sourceRoot":"","sources":["../../../../src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bot-protection-fingerprint.request.js","sourceRoot":"","sources":["../../../../src/plugins/bot-protection-fingerprint/bot-protection-fingerprint.request.ts"],"names":[],"mappings":"AA2BA;;;;;;GAMG;AACH,MAAM,UAAU,iCAAiC,CAAC,iBAAyB,EAAE,YAAoB;IAC/F,IAAI,UAA6B,CAAC;IAElC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;KAC3F;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,OAAO,IAAI,OAAO,CAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxD,MAAM,OAAO,GAAG,UAAU,CACxB,GAAG,EAAE,CAAC,MAAM,CAAC;sGACiF,CAAC,EAC/F,iBAAiB,CAAC,CAAC;YACrB,MAAM,CAAC,gBAAgB,GAAG,CAAC,gBAAmC,EAAE,EAAE;gBAChE,UAAU,GAAG,gBAAgB,CAAC;gBAC9B,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC5B,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,KAAK,EAAE,MAAe,EAAE,EAAE;QAC/B,IAAI,CAAC,UAAU,EAAE;YACf,IAAI;gBACF,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;aACpC;YAAC,OAAO,CAAC,EAAE;gBACV,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC7B,OAAO;aACR;SACF;QAED,IAAI;YACF,OAAO,MAAM,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SAC7C;QAAC,OAAO,CAAC,EAAE;YACV,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,yFAAyF,CAAC,CAAC;YACrH,OAAO;SACR;IACH,CAAC,CAAC;AACJ,CAAC;AAYD;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAAC,OAAsB;IACpE,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClF,OAAO,GAAG,EAAE;QACV,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,EAAE;YACxD,OAAO;SACR;QACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAmDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,MAAM,OAAO,+BAA+B;IAW1C,YAAY,OAA+C;QAL3D;;WAEG;QACK,cAAS,GAAG,KAAK,CAAC;QAGxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,kBAAkB,CAAC,MAAe;QAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;QAEjD,IAAI,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;YACxF,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;SAClD;QAED,KAAK,IAAI,CAAC,GAAG,aAAa,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACxD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACpE,IAAI,WAAW,EAAE;gBACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,OAAO,WAAW,CAAC;aACpB;YACD,IAAI,CAAC,GAAG,CAAC,EAAE;gBACT,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,+BAA+B,CAAC,CAAC,CAAC;aACpG;SACF;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,kBAAkB;IACX,IAAI,CAAC,OAA8B;QACxC,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,cAA8B,EAAE,EAAE;gBAClD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACnE,IAAI,WAAW,EAAE;oBACf,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC;iBAC7E;gBACD,OAAO,cAAc,CAAC;YACxB,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -3,12 +3,13 @@ import { PluginRunner, RequestOptions, RequestPlugin } from '../core';
|
|
|
3
3
|
* Type that represents public facts.
|
|
4
4
|
* Even though the type itself is permissive to mirror what the backend accepts, it is strongly recommended to extend
|
|
5
5
|
* it from an application in order to type it with the facts expected by the rules setup for that application.
|
|
6
|
-
*
|
|
7
6
|
* @example
|
|
7
|
+
* ```typescript
|
|
8
8
|
* interface BookingPublicFacts extends PublicFacts {
|
|
9
9
|
* fact1: string;
|
|
10
10
|
* fact2: string;
|
|
11
11
|
* }
|
|
12
|
+
* ```
|
|
12
13
|
*/
|
|
13
14
|
export type PublicFacts = Record<string, string | number | undefined>;
|
|
14
15
|
/**
|
|
@@ -22,7 +23,6 @@ export type ClientFactsFactory<T extends PublicFacts = PublicFacts> = (request:
|
|
|
22
23
|
export interface ClientFactsRequestPluginOptions<T extends PublicFacts = PublicFacts> {
|
|
23
24
|
/**
|
|
24
25
|
* Name of the header where to store the encoded facts
|
|
25
|
-
*
|
|
26
26
|
* @defaultValue 'ama-client-facts'
|
|
27
27
|
*/
|
|
28
28
|
headerName?: string;
|
|
@@ -49,20 +49,22 @@ export declare function createJwtFactsEncoder(): (data: PublicFacts) => string;
|
|
|
49
49
|
* Private facts are represented as strings.
|
|
50
50
|
*
|
|
51
51
|
* The plugin allows to define two layers of facts:
|
|
52
|
-
*
|
|
53
|
-
*
|
|
52
|
+
* - Global: synchronous map of facts sent with every request
|
|
53
|
+
* - Request: function that is called with all the request information where you can return specific facts for every request
|
|
54
54
|
* If both are defined for a request, the priority is given to request specific facts.
|
|
55
55
|
*
|
|
56
56
|
* Facts are added to every requests as a Header that is configurable.
|
|
57
57
|
* Public facts are stringified and encoded in base64 before.
|
|
58
|
-
*
|
|
59
58
|
* @example only global public facts
|
|
59
|
+
* ```typescript
|
|
60
60
|
* const clientFactsPlugin = new ClientFactsRequestPlugin<BookingPublicFacts>({
|
|
61
61
|
* initialGlobalFacts: {
|
|
62
62
|
* country: 'FRA'
|
|
63
63
|
* }
|
|
64
64
|
* });
|
|
65
|
+
* ```
|
|
65
66
|
* @example request public facts
|
|
67
|
+
* ```typescript
|
|
66
68
|
* const clientFactsPlugin = new ClientFactsRequestPlugin<BookingPublicFacts>({
|
|
67
69
|
* factsFactory: (request) => {
|
|
68
70
|
* if (request.basePath.includes('/order/')) {
|
|
@@ -73,7 +75,9 @@ export declare function createJwtFactsEncoder(): (data: PublicFacts) => string;
|
|
|
73
75
|
* return {};
|
|
74
76
|
* }
|
|
75
77
|
* });
|
|
78
|
+
* ```
|
|
76
79
|
* @example global public facts based on Store value
|
|
80
|
+
* ```typescript
|
|
77
81
|
* const clientFactsPlugin = new ClientFactsRequestPlugin<BookingPublicFacts>({});
|
|
78
82
|
*
|
|
79
83
|
* store.pipe(
|
|
@@ -82,7 +86,9 @@ export declare function createJwtFactsEncoder(): (data: PublicFacts) => string;
|
|
|
82
86
|
* const facts = getFactsFromOrder(order);
|
|
83
87
|
* clientFactsPlugin.setGlobalFacts(facts);
|
|
84
88
|
* });
|
|
89
|
+
* ```
|
|
85
90
|
* @example request public facts based on Store value
|
|
91
|
+
* ```typescript
|
|
86
92
|
* const clientFactsPlugin = new ClientactsRequestPlugin<BookingPublicFacts>({
|
|
87
93
|
* factsFactory: (request) => {
|
|
88
94
|
* if (request.basePath.includes('/order/') && request.method !== 'GET') {
|
|
@@ -95,10 +101,13 @@ export declare function createJwtFactsEncoder(): (data: PublicFacts) => string;
|
|
|
95
101
|
* return {};
|
|
96
102
|
* }
|
|
97
103
|
* });
|
|
104
|
+
* ```
|
|
98
105
|
* @example private facts based on encrypted POST parameter
|
|
106
|
+
* ```typescript
|
|
99
107
|
* const clientFactsPlugin = new ClientFactsRequestPlugin({
|
|
100
108
|
* privateFacts: requestParametersService.getPostParameter('private-facts')
|
|
101
109
|
* });
|
|
110
|
+
* ```
|
|
102
111
|
*/
|
|
103
112
|
export declare class ClientFactsRequestPlugin<T extends PublicFacts = PublicFacts> implements RequestPlugin {
|
|
104
113
|
/** Name of the header where to store the encoded facts */
|
|
@@ -109,17 +118,15 @@ export declare class ClientFactsRequestPlugin<T extends PublicFacts = PublicFact
|
|
|
109
118
|
private globalFacts?;
|
|
110
119
|
/** Private facts that will be sent as-is with every request */
|
|
111
120
|
private privateFacts?;
|
|
112
|
-
private jwtEncoder;
|
|
121
|
+
private readonly jwtEncoder;
|
|
113
122
|
constructor(options: ClientFactsRequestPluginOptions<T>);
|
|
114
123
|
/**
|
|
115
124
|
* Change the value of the global facts
|
|
116
|
-
*
|
|
117
125
|
* @param facts
|
|
118
126
|
*/
|
|
119
127
|
setGlobalFacts(facts: T): void;
|
|
120
128
|
/**
|
|
121
129
|
* Change the value of the private facts
|
|
122
|
-
*
|
|
123
130
|
* @param facts
|
|
124
131
|
*/
|
|
125
132
|
setPrivateFacts(facts: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-facts.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/client-facts/client-facts.request.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAEpE
|
|
1
|
+
{"version":3,"file":"client-facts.request.d.ts","sourceRoot":"","sources":["../../../../src/plugins/client-facts/client-facts.request.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAEpE;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpI;;GAEG;AACH,MAAM,WAAW,+BAA+B,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IAClF;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAEvB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,WAQrB,WAAW,YAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,qBAAa,wBAAwB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,YAAW,aAAa;IAEjG,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAwB;IAEtD,wDAAwD;IACxD,OAAO,CAAC,WAAW,CAAC,CAAI;IAExB,+DAA+D;IAC/D,OAAO,CAAC,YAAY,CAAC,CAAS;IAE9B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;gBAE1C,OAAO,EAAE,+BAA+B,CAAC,CAAC,CAAC;IAOvD;;;OAGG;IACI,cAAc,CAAC,KAAK,EAAE,CAAC;IAI9B;;;OAGG;IACI,eAAe,CAAC,KAAK,EAAE,MAAM;IAI7B,IAAI,IAAI,YAAY,CAAC,cAAc,EAAE,cAAc,CAAC;CAc5D"}
|