@chainlink/external-adapter-framework 0.26.0 → 0.27.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.
Files changed (60) hide show
  1. package/adapter/basic.d.ts +9 -19
  2. package/adapter/basic.js +42 -63
  3. package/adapter/basic.js.map +1 -1
  4. package/adapter/endpoint.d.ts +7 -7
  5. package/adapter/endpoint.js +17 -25
  6. package/adapter/endpoint.js.map +1 -1
  7. package/adapter/price.d.ts +3 -3
  8. package/adapter/price.js +1 -1
  9. package/adapter/price.js.map +1 -1
  10. package/adapter/types.d.ts +12 -14
  11. package/background-executor.js +5 -5
  12. package/background-executor.js.map +1 -1
  13. package/cache/index.d.ts +4 -5
  14. package/cache/index.js +8 -8
  15. package/cache/index.js.map +1 -1
  16. package/cache/response.d.ts +4 -4
  17. package/cache/response.js +7 -6
  18. package/cache/response.js.map +1 -1
  19. package/config/index.d.ts +51 -16
  20. package/config/index.js +76 -26
  21. package/config/index.js.map +1 -1
  22. package/index.d.ts +4 -4
  23. package/index.js +25 -21
  24. package/index.js.map +1 -1
  25. package/metrics/index.d.ts +8 -8
  26. package/metrics/index.js +13 -11
  27. package/metrics/index.js.map +1 -1
  28. package/metrics/util.d.ts +1 -2
  29. package/metrics/util.js.map +1 -1
  30. package/package.json +1 -1
  31. package/rate-limiting/index.d.ts +4 -4
  32. package/rate-limiting/index.js +13 -13
  33. package/rate-limiting/index.js.map +1 -1
  34. package/transports/abstract/subscription.d.ts +5 -6
  35. package/transports/abstract/subscription.js +4 -4
  36. package/transports/abstract/subscription.js.map +1 -1
  37. package/transports/http.d.ts +8 -9
  38. package/transports/http.js +14 -14
  39. package/transports/http.js.map +1 -1
  40. package/transports/index.d.ts +15 -8
  41. package/transports/index.js +28 -0
  42. package/transports/index.js.map +1 -1
  43. package/transports/metrics.d.ts +1 -2
  44. package/transports/metrics.js.map +1 -1
  45. package/transports/sse.d.ts +3 -4
  46. package/transports/sse.js +8 -8
  47. package/transports/sse.js.map +1 -1
  48. package/transports/websocket.d.ts +1 -2
  49. package/transports/websocket.js +7 -7
  50. package/transports/websocket.js.map +1 -1
  51. package/util/logger.js +1 -1
  52. package/util/logger.js.map +1 -1
  53. package/util/requester.d.ts +2 -2
  54. package/util/requester.js +4 -4
  55. package/util/requester.js.map +1 -1
  56. package/util/subscription-set/subscription-set.d.ts +2 -2
  57. package/util/subscription-set/subscription-set.js +3 -3
  58. package/util/subscription-set/subscription-set.js.map +1 -1
  59. package/validation/index.js +11 -10
  60. package/validation/index.js.map +1 -1
@@ -1,32 +1,27 @@
1
- import { AdapterConfig, BaseAdapterConfig, SettingsMap } from '../config';
2
- import { AdapterRequest, AdapterResponse, Merge } from '../util';
1
+ import { BaseAdapterSettings, AdapterConfig } from '../config';
2
+ import { AdapterRequest, AdapterResponse } from '../util';
3
3
  import { AdapterEndpoint } from './endpoint';
4
- import { AdapterDependencies, AdapterParams, AdapterRateLimitingConfig, CustomAdapterSettings, EndpointGenerics } from './types';
4
+ import { AdapterDependencies, AdapterParams, AdapterRateLimitingConfig, EndpointGenerics } from './types';
5
5
  /**
6
6
  * Main class to represent an External Adapter
7
7
  */
8
- export declare class Adapter<CustomSettings extends CustomAdapterSettings = SettingsMap> implements Omit<AdapterParams<CustomSettings>, 'bootstrap'> {
8
+ export declare class Adapter<T extends AdapterConfig = AdapterConfig> implements Omit<AdapterParams<T>, 'bootstrap'> {
9
9
  name: Uppercase<string>;
10
10
  defaultEndpoint?: string | undefined;
11
- endpoints: AdapterEndpoint<Merge<EndpointGenerics, {
12
- CustomSettings: CustomSettings;
13
- }>>[];
14
- envDefaultOverrides?: Partial<BaseAdapterConfig> | undefined;
15
- customSettings?: SettingsMap | undefined;
11
+ endpoints: AdapterEndpoint<EndpointGenerics>[];
12
+ envDefaultOverrides?: Partial<BaseAdapterSettings> | undefined;
16
13
  rateLimiting?: AdapterRateLimitingConfig | undefined;
17
14
  envVarsPrefix?: string;
18
15
  initialized: boolean;
19
16
  /** Object containing alias translations for all endpoints */
20
- endpointsMap: Record<string, AdapterEndpoint<Merge<EndpointGenerics, {
21
- CustomSettings: CustomSettings;
22
- }>>>;
17
+ endpointsMap: Record<string, AdapterEndpoint<EndpointGenerics>>;
23
18
  /** Initialized dependencies that the adapter will use */
24
19
  dependencies: AdapterDependencies;
25
20
  /** Configuration params for various adapter properties */
26
- config: AdapterConfig<CustomSettings>;
21
+ config: T;
27
22
  /** Bootstrap function that will run when initializing the adapter */
28
23
  private readonly bootstrap?;
29
- constructor(params: AdapterParams<CustomSettings>);
24
+ constructor(params: AdapterParams<T>);
30
25
  /**
31
26
  * Initializes all of the [[Transport]]s in the adapter, passing along any [[AdapterDependencies]] and [[AdapterConfig]].
32
27
  * Additionally, it builds a map out of all the endpoint names and aliases (checking for duplicates).
@@ -43,11 +38,6 @@ export declare class Adapter<CustomSettings extends CustomAdapterSettings = Sett
43
38
  *
44
39
  */
45
40
  private calculateRateLimitAllocations;
46
- /**
47
- * Creates a list of key/value pairs that need to be censored in the logs
48
- * using the sensitive flag in the adapter config
49
- */
50
- private buildCensorList;
51
41
  /**
52
42
  * Logs a warning for certain configs if set to particular values.
53
43
  * Used to warn stakeholders of potential risks.
package/adapter/basic.js CHANGED
@@ -11,7 +11,6 @@ const config_1 = require("../config");
11
11
  const metrics_2 = require("../metrics");
12
12
  const rate_limiting_1 = require("../rate-limiting");
13
13
  const util_1 = require("../util");
14
- const censor_list_1 = __importDefault(require("../util/censor/censor-list"));
15
14
  const requester_1 = require("../util/requester");
16
15
  const error_1 = require("../validation/error");
17
16
  const logger = (0, util_1.makeLogger)('Adapter');
@@ -28,15 +27,10 @@ class Adapter {
28
27
  this.name = params.name;
29
28
  this.defaultEndpoint = params.defaultEndpoint?.toLowerCase();
30
29
  this.endpoints = params.endpoints;
31
- this.envDefaultOverrides = params.envDefaultOverrides;
32
- this.customSettings = params.customSettings;
33
30
  this.rateLimiting = params.rateLimiting;
34
31
  this.bootstrap = params.bootstrap;
35
- this.config = (0, config_1.buildAdapterConfig)({
36
- overrides: this.envDefaultOverrides,
37
- customSettings: this.customSettings,
38
- envVarsPrefix: this.envVarsPrefix,
39
- });
32
+ this.config = params.config || new config_1.AdapterConfig({});
33
+ this.config.initialize();
40
34
  this.normalizeEndpointNames();
41
35
  this.calculateRateLimitAllocations();
42
36
  }
@@ -51,7 +45,7 @@ class Adapter {
51
45
  // Initialize metrics to register them with the prom-client
52
46
  metrics_2.metrics.initialize();
53
47
  // Building configs during initialization to avoid validation errors during construction
54
- (0, config_1.validateAdapterConfig)(this.config, this.customSettings);
48
+ this.config.validate();
55
49
  // Log warnings for risks associated with certain configs and values
56
50
  this.logConfigWarnings();
57
51
  if (this.bootstrap) {
@@ -68,11 +62,11 @@ class Adapter {
68
62
  this.endpointsMap[alias] = endpoint;
69
63
  }
70
64
  logger.debug(`Initializing endpoint "${endpoint.name}"...`);
71
- await endpoint.initialize(this.name, this.dependencies, this.config);
65
+ await endpoint.initialize(this.name, this.dependencies, this.config.settings);
72
66
  }
73
67
  // Build list of key/values that need to be redacted in logs
74
68
  // Populates the static array in CensorList to use in censor-transport
75
- this.buildCensorList();
69
+ this.config.buildCensorList();
76
70
  logger.debug('Adapter initialization complete.');
77
71
  this.initialized = true;
78
72
  }
@@ -115,43 +109,24 @@ class Adapter {
115
109
  logger.debug(`Endpoint [${endpoint.name}] - ${endpoint.rateLimiting?.allocationPercentage}%`);
116
110
  }
117
111
  }
118
- /**
119
- * Creates a list of key/value pairs that need to be censored in the logs
120
- * using the sensitive flag in the adapter config
121
- */
122
- buildCensorList() {
123
- const censorList = Object.entries(config_1.BaseSettings)
124
- .concat(Object.entries(this.customSettings || {}))
125
- .filter(([name, setting]) => setting &&
126
- setting.type === 'string' &&
127
- setting.sensitive &&
128
- this.config[name])
129
- .map(([name]) => ({
130
- key: name,
131
- // Escaping potential special characters in values before creating regex
132
- value: new RegExp(
133
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
134
- this.config[name].replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&'), 'gi'),
135
- }));
136
- censor_list_1.default.set(censorList);
137
- }
138
112
  /**
139
113
  * Logs a warning for certain configs if set to particular values.
140
114
  * Used to warn stakeholders of potential risks.
141
115
  */
142
116
  logConfigWarnings() {
143
- if (this.config.LOG_LEVEL.toUpperCase() === 'DEBUG' ||
144
- this.config.LOG_LEVEL.toUpperCase() === 'TRACE') {
145
- logger.warn(`LOG_LEVEL has been set to ${this.config.LOG_LEVEL.toUpperCase()}. Setting higher log levels results in increased memory usage and potentially slower performance.`);
117
+ if (this.config.settings.LOG_LEVEL.toUpperCase() === 'DEBUG' ||
118
+ this.config.settings.LOG_LEVEL.toUpperCase() === 'TRACE') {
119
+ logger.warn(`LOG_LEVEL has been set to ${this.config.settings.LOG_LEVEL.toUpperCase()}. Setting higher log levels results in increased memory usage and potentially slower performance.`);
146
120
  }
147
- if (this.config.DEBUG === true) {
121
+ if (this.config.settings.DEBUG === true) {
148
122
  logger.warn(`The adapter is running with DEBUG mode on.`);
149
123
  }
150
- if (this.config.METRICS_ENABLED === false) {
124
+ if (this.config.settings.METRICS_ENABLED === false) {
151
125
  logger.warn(`METRICS_ENABLED has been set to false. Metrics should not be disabled in a production environment.`);
152
126
  }
153
- if (this.config.MAX_PAYLOAD_SIZE_LIMIT !== config_1.BaseSettings.MAX_PAYLOAD_SIZE_LIMIT.default) {
154
- logger.warn(`MAX_PAYLOAD_SIZE_LIMIT has been set to ${this.config.MAX_PAYLOAD_SIZE_LIMIT}. This setting should only be set when absolutely necessary.`);
127
+ if (this.config.settings.MAX_PAYLOAD_SIZE_LIMIT !==
128
+ config_1.BaseSettingsDefinition.MAX_PAYLOAD_SIZE_LIMIT.default) {
129
+ logger.warn(`MAX_PAYLOAD_SIZE_LIMIT has been set to ${this.config.settings.MAX_PAYLOAD_SIZE_LIMIT}. This setting should only be set when absolutely necessary.`);
155
130
  }
156
131
  }
157
132
  /**
@@ -164,25 +139,25 @@ class Adapter {
164
139
  initializeDependencies(inputDependencies) {
165
140
  const dependencies = inputDependencies || {};
166
141
  if (!dependencies.redisClient) {
167
- if (this.config.CACHE_TYPE === 'redis') {
168
- const maxCooldown = this.config.CACHE_REDIS_MAX_RECONNECT_COOLDOWN;
142
+ if (this.config.settings.CACHE_TYPE === 'redis') {
143
+ const maxCooldown = this.config.settings.CACHE_REDIS_MAX_RECONNECT_COOLDOWN;
169
144
  const redisOptions = {
170
145
  enableAutoPipelining: true,
171
- host: this.config.CACHE_REDIS_HOST,
172
- port: this.config.CACHE_REDIS_PORT,
173
- password: this.config.CACHE_REDIS_PASSWORD,
174
- path: this.config.CACHE_REDIS_PATH,
175
- timeout: this.config.CACHE_REDIS_TIMEOUT,
146
+ host: this.config.settings.CACHE_REDIS_HOST,
147
+ port: this.config.settings.CACHE_REDIS_PORT,
148
+ password: this.config.settings.CACHE_REDIS_PASSWORD,
149
+ path: this.config.settings.CACHE_REDIS_PATH,
150
+ timeout: this.config.settings.CACHE_REDIS_TIMEOUT,
176
151
  retryStrategy(times) {
177
152
  metrics_2.metrics.get('redisRetriesCount').inc();
178
153
  logger.warn(`Redis reconnect attempt #${times}`);
179
154
  return Math.min(times * 100, maxCooldown); // Next reconnect attempt time
180
155
  },
181
- connectTimeout: this.config.CACHE_REDIS_CONNECTION_TIMEOUT,
156
+ connectTimeout: this.config.settings.CACHE_REDIS_CONNECTION_TIMEOUT,
182
157
  maxRetriesPerRequest: 30, // Limits the number of retries before the adapter shuts down
183
158
  };
184
- if (this.config.CACHE_REDIS_URL) {
185
- dependencies.redisClient = new ioredis_1.default(this.config.CACHE_REDIS_URL, redisOptions);
159
+ if (this.config.settings.CACHE_REDIS_URL) {
160
+ dependencies.redisClient = new ioredis_1.default(this.config.settings.CACHE_REDIS_URL, redisOptions);
186
161
  }
187
162
  else {
188
163
  dependencies.redisClient = new ioredis_1.default(redisOptions);
@@ -193,18 +168,21 @@ class Adapter {
193
168
  }
194
169
  }
195
170
  if (!dependencies.cache) {
196
- dependencies.cache = cache_1.CacheFactory.buildCache({ cacheType: this.config.CACHE_TYPE, maxSizeForLocalCache: this.config.CACHE_MAX_ITEMS }, dependencies.redisClient);
171
+ dependencies.cache = cache_1.CacheFactory.buildCache({
172
+ cacheType: this.config.settings.CACHE_TYPE,
173
+ maxSizeForLocalCache: this.config.settings.CACHE_MAX_ITEMS,
174
+ }, dependencies.redisClient);
197
175
  }
198
- const rateLimitingTier = (0, rate_limiting_1.getRateLimitingTier)(this.config, this.rateLimiting?.tiers);
176
+ const rateLimitingTier = (0, rate_limiting_1.getRateLimitingTier)(this.config.settings, this.rateLimiting?.tiers);
199
177
  const highestTierValue = (0, rate_limiting_1.highestRateLimitTiers)(this.rateLimiting?.tiers);
200
- const rateLimitTierFromConfig = (0, rate_limiting_1.buildRateLimitTiersFromConfig)(this.config);
178
+ const rateLimitTierFromConfig = (0, rate_limiting_1.buildRateLimitTiersFromConfig)(this.config.settings);
201
179
  const perSecRateLimit = rateLimitTierFromConfig?.rateLimit1s || 0;
202
180
  const perMinuteRateLimit = (rateLimitTierFromConfig?.rateLimit1m || 0) * 60;
203
181
  if (perSecRateLimit > highestTierValue) {
204
182
  logger.warn(`The configured RATE_LIMIT_CAPACITY_SECOND value is higher than the highest tier value in the adapter rate limiting configurations ${highestTierValue}`);
205
183
  }
206
184
  if (perMinuteRateLimit > highestTierValue) {
207
- logger.warn(`The configured ${this.config.RATE_LIMIT_CAPACITY_MINUTE
185
+ logger.warn(`The configured ${this.config.settings.RATE_LIMIT_CAPACITY_MINUTE
208
186
  ? 'RATE_LIMIT_CAPACITY_MINUTE'
209
187
  : 'RATE_LIMIT_CAPACITY'}
210
188
  value is higher than the highest tier value the adapter rate limiting configurations ${highestTierValue}`);
@@ -213,10 +191,10 @@ class Adapter {
213
191
  dependencies.rateLimiter = new rate_limiting_1.SimpleCountingRateLimiter().initialize(this.endpoints, rateLimitingTier);
214
192
  }
215
193
  if (!dependencies.subscriptionSetFactory) {
216
- dependencies.subscriptionSetFactory = new util_1.SubscriptionSetFactory(this.config, this.name, dependencies.redisClient);
194
+ dependencies.subscriptionSetFactory = new util_1.SubscriptionSetFactory(this.config.settings, this.name, dependencies.redisClient);
217
195
  }
218
196
  if (!dependencies.requester) {
219
- dependencies.requester = new requester_1.Requester(dependencies.rateLimiter, this.config);
197
+ dependencies.requester = new requester_1.Requester(dependencies.rateLimiter, this.config.settings);
220
198
  }
221
199
  return dependencies;
222
200
  }
@@ -229,8 +207,9 @@ class Adapter {
229
207
  async findResponseInCache(req) {
230
208
  const response = await this.dependencies.cache.get(req.requestContext.cacheKey);
231
209
  if (response) {
232
- if (this.config.METRICS_ENABLED && this.config.EXPERIMENTAL_METRICS_ENABLED) {
233
- const label = (0, metrics_1.cacheMetricsLabel)(req.requestContext.cacheKey, req.requestContext.meta?.metrics?.feedId || 'N/A', this.config.CACHE_TYPE);
210
+ if (this.config.settings.METRICS_ENABLED &&
211
+ this.config.settings.EXPERIMENTAL_METRICS_ENABLED) {
212
+ const label = (0, metrics_1.cacheMetricsLabel)(req.requestContext.cacheKey, req.requestContext.meta?.metrics?.feedId || 'N/A', this.config.settings.CACHE_TYPE);
234
213
  // Record cache staleness and cache get count and value
235
214
  const now = Date.now();
236
215
  (0, metrics_1.cacheGet)(label, response.result, {
@@ -257,7 +236,7 @@ class Adapter {
257
236
  async handleRequest(req, replySent) {
258
237
  // Get transport, must be here because it's already checked in the validator
259
238
  const endpoint = this.endpointsMap[req.requestContext.endpointName];
260
- const transport = endpoint.transports[req.requestContext.transportName];
239
+ const transport = endpoint.transportRoutes.get(req.requestContext.transportName);
261
240
  // First try to find the response in our cache, keep it ready
262
241
  const cachedResponse = await this.findResponseInCache(req);
263
242
  // Next we fire off the transport's registration of the request if defined, regardless of if we already have a cached response.
@@ -275,7 +254,7 @@ class Adapter {
275
254
  // `await` is required to catch the error, you'll get an unhandled promise rejection otherwise
276
255
  // Disable non-null assertion operator because we already checked for the existence of registerRequest
277
256
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
278
- return await transport.registerRequest(req, this.config);
257
+ return await transport.registerRequest(req, this.config.settings);
279
258
  }
280
259
  catch (err) {
281
260
  logger.error(`Error registering request: ${err}`);
@@ -292,7 +271,7 @@ class Adapter {
292
271
  return cachedResponse;
293
272
  }
294
273
  // If there was no cached response, execute the foregroundExecute if defined
295
- const immediateResponse = transport.foregroundExecute && (await transport.foregroundExecute(req, this.config));
274
+ const immediateResponse = transport.foregroundExecute && (await transport.foregroundExecute(req, this.config.settings));
296
275
  if (immediateResponse) {
297
276
  logger.debug('Got immediate response from transport, sending as response');
298
277
  return immediateResponse;
@@ -308,12 +287,12 @@ class Adapter {
308
287
  // Observe the idle time taken for polling response
309
288
  const metricsTimer = metrics_2.metrics
310
289
  .get('transportPollingDurationSeconds')
311
- .labels({ endpoint: req.requestContext.endpointName })
290
+ .labels({ adapter_endpoint: req.requestContext.endpointName })
312
291
  .startTimer();
313
292
  logger.debug('Transport is set up, polling cache for response...');
314
293
  const response = await (0, cache_1.pollResponseFromCache)(this.dependencies.cache, req.requestContext.cacheKey, {
315
- maxRetries: this.config.CACHE_POLLING_MAX_RETRIES,
316
- sleep: this.config.CACHE_POLLING_SLEEP_MS,
294
+ maxRetries: this.config.settings.CACHE_POLLING_MAX_RETRIES,
295
+ sleep: this.config.settings.CACHE_POLLING_SLEEP_MS,
317
296
  });
318
297
  metricsTimer({ succeeded: String(!!response) });
319
298
  if (response) {
@@ -323,7 +302,7 @@ class Adapter {
323
302
  // Record polling mechanism failure to return response
324
303
  metrics_2.metrics
325
304
  .get('transportPollingFailureCount')
326
- .labels({ endpoint: req.requestContext.endpointName })
305
+ .labels({ adapter_endpoint: req.requestContext.endpointName })
327
306
  .inc();
328
307
  logger.debug('Ran out of polling attempts, returning timeout');
329
308
  throw new error_1.AdapterTimeoutError({
@@ -1 +1 @@
1
- {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../src/adapter/basic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../src/adapter/basic.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
- import { AdapterConfig } from '../config';
2
- import { Transport } from '../transports';
1
+ import { TransportRoutes } from '../transports';
3
2
  import { AdapterRequest } from '../util';
4
3
  import { SpecificInputParameters } from '../validation';
5
4
  import { InputValidator } from '../validation/input-validator';
6
5
  import { AdapterDependencies, AdapterEndpointInterface, AdapterEndpointParams, CustomInputValidator, EndpointGenerics, EndpointRateLimitingConfig, RequestTransform } from './types';
6
+ export declare const DEFAULT_TRANSPORT_NAME = "default_single_transport";
7
7
  /**
8
8
  * Main class to represent an endpoint within an External Adapter
9
9
  */
10
10
  export declare class AdapterEndpoint<T extends EndpointGenerics> implements AdapterEndpointInterface<T> {
11
11
  name: string;
12
12
  aliases?: string[] | undefined;
13
- transports: Record<string, Transport<T>>;
13
+ transportRoutes: TransportRoutes<T>;
14
14
  inputParameters: SpecificInputParameters<T['Request']['Params']>;
15
15
  rateLimiting?: EndpointRateLimitingConfig | undefined;
16
16
  validator: InputValidator;
@@ -18,16 +18,16 @@ export declare class AdapterEndpoint<T extends EndpointGenerics> implements Adap
18
18
  customInputValidation?: CustomInputValidator<T>;
19
19
  requestTransforms?: RequestTransform<T>[];
20
20
  overrides?: Record<string, string> | undefined;
21
- customRouter?: (req: AdapterRequest<T['Request']>, adapterConfig: AdapterConfig<T['CustomSettings']>) => string;
21
+ customRouter?: (req: AdapterRequest<T['Request']>, settings: T['Settings']) => string;
22
22
  defaultTransport?: string;
23
23
  constructor(params: AdapterEndpointParams<T>);
24
24
  /**
25
25
  * Performs all necessary initialization processes that are async or need async initialized dependencies
26
26
  *
27
27
  * @param dependencies - all dependencies initialized at the adapter level
28
- * @param config - configuration for the adapter
28
+ * @param adapterSettings - configuration for the adapter
29
29
  */
30
- initialize(adapterName: string, dependencies: AdapterDependencies, config: AdapterConfig<T['CustomSettings']>): Promise<void>;
30
+ initialize(adapterName: string, dependencies: AdapterDependencies, adapterSettings: T['Settings']): Promise<void>;
31
31
  /**
32
32
  * Takes the incoming request and applies all request transforms in the adapter
33
33
  *
@@ -43,7 +43,7 @@ export declare class AdapterEndpoint<T extends EndpointGenerics> implements Adap
43
43
  * @returns the modified (or new) request
44
44
  */
45
45
  symbolOverrider(req: AdapterRequest): AdapterRequest<import("../util").RequestGenerics>;
46
- getTransportNameForRequest(req: AdapterRequest<T['Request']>, adapterConfig: AdapterConfig<T['CustomSettings']>): string;
46
+ getTransportNameForRequest(req: AdapterRequest<T['Request']>, settings: T['Settings']): string;
47
47
  /**
48
48
  * Default routing strategy. Will try and use the transport input parameter if present in the request body.
49
49
  *
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AdapterEndpoint = void 0;
3
+ exports.AdapterEndpoint = exports.DEFAULT_TRANSPORT_NAME = void 0;
4
4
  const response_1 = require("../cache/response");
5
+ const transports_1 = require("../transports");
5
6
  const util_1 = require("../util");
6
7
  const error_1 = require("../validation/error");
7
8
  const input_validator_1 = require("../validation/input-validator");
8
9
  const logger = (0, util_1.makeLogger)('AdapterEndpoint');
9
- const DEFAULT_TRANSPORT_NAME = 'default_single_transport';
10
+ exports.DEFAULT_TRANSPORT_NAME = 'default_single_transport';
10
11
  /**
11
12
  * Main class to represent an endpoint within an External Adapter
12
13
  */
@@ -15,22 +16,13 @@ class AdapterEndpoint {
15
16
  this.name = params.name;
16
17
  this.aliases = params.aliases;
17
18
  // These ifs are annoying but it's to make it type safe
18
- if ('transports' in params) {
19
- this.transports = params.transports;
19
+ if ('transportRoutes' in params) {
20
+ this.transportRoutes = params.transportRoutes;
20
21
  this.customRouter = params.customRouter;
21
22
  this.defaultTransport = params.defaultTransport;
22
- // Validate transport names
23
- for (const transportName in this.transports) {
24
- // This is intentional, to keep names to one word only
25
- if (!/^[a-z]+$/.test(transportName)) {
26
- throw new Error(`Transport name "${transportName}" is invalid. Names in the AdapterEndpoint transports map can only include lowercase letters.`);
27
- }
28
- }
29
23
  }
30
24
  else {
31
- this.transports = {
32
- [DEFAULT_TRANSPORT_NAME]: params.transport,
33
- };
25
+ this.transportRoutes = new transports_1.TransportRoutes().register(exports.DEFAULT_TRANSPORT_NAME, params.transport);
34
26
  }
35
27
  this.inputParameters = params.inputParameters;
36
28
  this.rateLimiting = params.rateLimiting;
@@ -44,12 +36,12 @@ class AdapterEndpoint {
44
36
  * Performs all necessary initialization processes that are async or need async initialized dependencies
45
37
  *
46
38
  * @param dependencies - all dependencies initialized at the adapter level
47
- * @param config - configuration for the adapter
39
+ * @param adapterSettings - configuration for the adapter
48
40
  */
49
- async initialize(adapterName, dependencies, config) {
41
+ async initialize(adapterName, dependencies, adapterSettings) {
50
42
  const responseCache = new response_1.ResponseCache({
51
43
  dependencies,
52
- config: config,
44
+ adapterSettings: adapterSettings,
53
45
  adapterName,
54
46
  endpointName: this.name,
55
47
  inputParameters: this.inputParameters,
@@ -59,8 +51,8 @@ class AdapterEndpoint {
59
51
  responseCache,
60
52
  };
61
53
  logger.debug(`Initializing transports for endpoint "${this.name}"...`);
62
- for (const [transportName, transport] of Object.entries(this.transports)) {
63
- await transport.initialize(transportDependencies, config, this.name, transportName);
54
+ for (const [transportName, transport] of this.transportRoutes.entries()) {
55
+ await transport.initialize(transportDependencies, adapterSettings, this.name, transportName);
64
56
  }
65
57
  }
66
58
  /**
@@ -98,16 +90,16 @@ class AdapterEndpoint {
98
90
  }
99
91
  return req;
100
92
  }
101
- getTransportNameForRequest(req, adapterConfig) {
93
+ getTransportNameForRequest(req, settings) {
102
94
  // If there's only one transport, return it
103
- if (this.transports[DEFAULT_TRANSPORT_NAME]) {
104
- return DEFAULT_TRANSPORT_NAME;
95
+ if (this.transportRoutes.get(exports.DEFAULT_TRANSPORT_NAME)) {
96
+ return exports.DEFAULT_TRANSPORT_NAME;
105
97
  }
106
98
  // Attempt to get the transport to use from:
107
99
  // 1. Custom router (whatever logic the user wrote)
108
100
  // 2. Default router (try to get it from the input params)
109
101
  // 3. Default transport (if it was specified in the instance params)
110
- const rawTransportName = (this.customRouter && this.customRouter(req, adapterConfig)) ||
102
+ const rawTransportName = (this.customRouter && this.customRouter(req, settings)) ||
111
103
  this.defaultRouter(req) ||
112
104
  this.defaultTransport;
113
105
  if (!rawTransportName) {
@@ -117,10 +109,10 @@ class AdapterEndpoint {
117
109
  });
118
110
  }
119
111
  const transportName = rawTransportName.toLowerCase();
120
- if (!this.transports[transportName]) {
112
+ if (!this.transportRoutes.get(transportName)) {
121
113
  throw new error_1.AdapterError({
122
114
  statusCode: 400,
123
- message: `No transport found for key "${transportName}", must be one of ${JSON.stringify(Object.keys(this.transports))}`,
115
+ message: `No transport found for key "${transportName}", must be one of ${JSON.stringify(this.transportRoutes.routeNames())}`,
124
116
  });
125
117
  }
126
118
  logger.debug(`Request will be routed to transport "${transportName}"`);
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/adapter/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/adapter/endpoint.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { SettingsMap } from '../config';
1
+ import { AdapterConfig } from '../config';
2
2
  import { AdapterRequest, AdapterRequestContext, AdapterResponse, RequestGenerics } from '../util';
3
3
  import { AdapterEndpoint } from './endpoint';
4
4
  import { Adapter, AdapterEndpointParams, AdapterParams, PriceEndpointGenerics } from './index';
@@ -65,9 +65,9 @@ type PriceAdapterRequest<T extends RequestGenerics> = AdapterRequest<T> & {
65
65
  /**
66
66
  * A PriceAdapter is a specific kind of Adapter that includes at least one PriceEnpoint.
67
67
  */
68
- export declare class PriceAdapter<CustomSettings extends SettingsMap> extends Adapter<CustomSettings> {
68
+ export declare class PriceAdapter<T extends AdapterConfig> extends Adapter<T> {
69
69
  includesMap?: IncludesMap;
70
- constructor(params: AdapterParams<CustomSettings> & {
70
+ constructor(params: AdapterParams<T> & {
71
71
  includes?: IncludesFile;
72
72
  });
73
73
  handleRequest(req: PriceAdapterRequest<{
package/adapter/price.js CHANGED
@@ -73,7 +73,7 @@ class PriceAdapter extends index_1.Adapter {
73
73
  }
74
74
  async handleRequest(req, replySent) {
75
75
  const response = await super.handleRequest(req, replySent);
76
- if (this.includesMap && req.requestContext.priceMeta.inverse) {
76
+ if (this.includesMap && req.requestContext.priceMeta?.inverse) {
77
77
  // We need to search in the reverse order (quote -> base) because the request transform will have inverted the pair
78
78
  const cloneResponse = { ...response };
79
79
  const inverseResult = 1 / cloneResponse.result;
@@ -1 +1 @@
1
- {"version":3,"file":"price.js","sourceRoot":"","sources":["../../../src/adapter/price.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"price.js","sourceRoot":"","sources":["../../../src/adapter/price.ts"],"names":[],"mappings":"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"}