@chainlink/external-adapter-framework 0.23.2 → 0.25.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 (148) hide show
  1. package/README.md +12 -7
  2. package/adapter/basic.js +2 -2
  3. package/adapter/basic.js.map +1 -1
  4. package/adapter/endpoint.d.ts +2 -2
  5. package/adapter/endpoint.js.map +1 -1
  6. package/adapter/types.d.ts +2 -2
  7. package/background-executor.js +8 -4
  8. package/background-executor.js.map +1 -1
  9. package/cache/index.js +9 -3
  10. package/cache/index.js.map +1 -1
  11. package/config/index.d.ts +0 -4
  12. package/config/index.js +0 -4
  13. package/config/index.js.map +1 -1
  14. package/config/provider-limits.js +3 -3
  15. package/config/provider-limits.js.map +1 -1
  16. package/index.d.ts +4 -0
  17. package/index.js +25 -56
  18. package/index.js.map +1 -1
  19. package/metrics/index.d.ts +2 -1
  20. package/metrics/index.js +1 -4
  21. package/metrics/index.js.map +1 -1
  22. package/package.json +3 -3
  23. package/transports/http.js +40 -22
  24. package/transports/http.js.map +1 -1
  25. package/transports/meta/routing.d.ts +19 -9
  26. package/transports/meta/routing.js +28 -8
  27. package/transports/meta/routing.js.map +1 -1
  28. package/transports/sse.d.ts +2 -0
  29. package/transports/sse.js +7 -12
  30. package/transports/sse.js.map +1 -1
  31. package/transports/websocket.js +15 -2
  32. package/transports/websocket.js.map +1 -1
  33. package/util/requester.js +2 -1
  34. package/util/requester.js.map +1 -1
  35. package/util/types.d.ts +1 -6
  36. package/validation/error.d.ts +4 -1
  37. package/validation/error.js +1 -0
  38. package/validation/error.js.map +1 -1
  39. package/validation/index.d.ts +1 -1
  40. package/validation/index.js +6 -2
  41. package/validation/index.js.map +1 -1
  42. package/validation/input-params.d.ts +6 -1
  43. package/examples/bank-frick/accounts.d.ts +0 -45
  44. package/examples/bank-frick/accounts.js +0 -203
  45. package/examples/bank-frick/accounts.js.map +0 -1
  46. package/examples/bank-frick/config/index.d.ts +0 -17
  47. package/examples/bank-frick/config/index.js +0 -55
  48. package/examples/bank-frick/config/index.js.map +0 -1
  49. package/examples/bank-frick/index.d.ts +0 -2
  50. package/examples/bank-frick/index.js +0 -16
  51. package/examples/bank-frick/index.js.map +0 -1
  52. package/examples/bank-frick/util.d.ts +0 -4
  53. package/examples/bank-frick/util.js +0 -40
  54. package/examples/bank-frick/util.js.map +0 -1
  55. package/examples/coingecko/src/config/index.d.ts +0 -2
  56. package/examples/coingecko/src/config/index.js +0 -6
  57. package/examples/coingecko/src/config/index.js.map +0 -1
  58. package/examples/coingecko/src/config/overrides.json +0 -10825
  59. package/examples/coingecko/src/crypto-utils.d.ts +0 -62
  60. package/examples/coingecko/src/crypto-utils.js +0 -60
  61. package/examples/coingecko/src/crypto-utils.js.map +0 -1
  62. package/examples/coingecko/src/endpoint/coins.d.ts +0 -26
  63. package/examples/coingecko/src/endpoint/coins.js +0 -37
  64. package/examples/coingecko/src/endpoint/coins.js.map +0 -1
  65. package/examples/coingecko/src/endpoint/crypto-marketcap.d.ts +0 -3
  66. package/examples/coingecko/src/endpoint/crypto-marketcap.js +0 -30
  67. package/examples/coingecko/src/endpoint/crypto-marketcap.js.map +0 -1
  68. package/examples/coingecko/src/endpoint/crypto-volume.d.ts +0 -3
  69. package/examples/coingecko/src/endpoint/crypto-volume.js +0 -30
  70. package/examples/coingecko/src/endpoint/crypto-volume.js.map +0 -1
  71. package/examples/coingecko/src/endpoint/crypto.d.ts +0 -3
  72. package/examples/coingecko/src/endpoint/crypto.js +0 -28
  73. package/examples/coingecko/src/endpoint/crypto.js.map +0 -1
  74. package/examples/coingecko/src/endpoint/dominance.d.ts +0 -3
  75. package/examples/coingecko/src/endpoint/dominance.js +0 -28
  76. package/examples/coingecko/src/endpoint/dominance.js.map +0 -1
  77. package/examples/coingecko/src/endpoint/global-marketcap.d.ts +0 -3
  78. package/examples/coingecko/src/endpoint/global-marketcap.js +0 -28
  79. package/examples/coingecko/src/endpoint/global-marketcap.js.map +0 -1
  80. package/examples/coingecko/src/endpoint/index.d.ts +0 -6
  81. package/examples/coingecko/src/endpoint/index.js +0 -16
  82. package/examples/coingecko/src/endpoint/index.js.map +0 -1
  83. package/examples/coingecko/src/global-utils.d.ts +0 -42
  84. package/examples/coingecko/src/global-utils.js +0 -47
  85. package/examples/coingecko/src/global-utils.js.map +0 -1
  86. package/examples/coingecko/src/index.d.ts +0 -4
  87. package/examples/coingecko/src/index.js +0 -19
  88. package/examples/coingecko/src/index.js.map +0 -1
  89. package/examples/cryptocompare/src/config/index.d.ts +0 -2
  90. package/examples/cryptocompare/src/config/index.js +0 -6
  91. package/examples/cryptocompare/src/config/index.js.map +0 -1
  92. package/examples/cryptocompare/src/endpoints/crypto.d.ts +0 -40
  93. package/examples/cryptocompare/src/endpoints/crypto.js +0 -54
  94. package/examples/cryptocompare/src/endpoints/crypto.js.map +0 -1
  95. package/examples/cryptocompare/src/endpoints/index.d.ts +0 -1
  96. package/examples/cryptocompare/src/endpoints/index.js +0 -6
  97. package/examples/cryptocompare/src/endpoints/index.js.map +0 -1
  98. package/examples/cryptocompare/src/index.d.ts +0 -4
  99. package/examples/cryptocompare/src/index.js +0 -14
  100. package/examples/cryptocompare/src/index.js.map +0 -1
  101. package/examples/genesis/config/index.d.ts +0 -7
  102. package/examples/genesis/config/index.js +0 -11
  103. package/examples/genesis/config/index.js.map +0 -1
  104. package/examples/genesis/index.d.ts +0 -2
  105. package/examples/genesis/index.js +0 -13
  106. package/examples/genesis/index.js.map +0 -1
  107. package/examples/genesis/sseStream.d.ts +0 -27
  108. package/examples/genesis/sseStream.js +0 -149
  109. package/examples/genesis/sseStream.js.map +0 -1
  110. package/rate-limiting/background/fixed-frequency.d.ts +0 -10
  111. package/rate-limiting/background/fixed-frequency.js +0 -36
  112. package/rate-limiting/background/fixed-frequency.js.map +0 -1
  113. package/rate-limiting/metrics.d.ts +0 -1
  114. package/rate-limiting/metrics.js +0 -16
  115. package/rate-limiting/metrics.js.map +0 -1
  116. package/rate-limiting/request/simple-counting.d.ts +0 -20
  117. package/rate-limiting/request/simple-counting.js +0 -63
  118. package/rate-limiting/request/simple-counting.js.map +0 -1
  119. package/scripts/generator/index.d.ts +0 -1
  120. package/scripts/generator/index.js +0 -5
  121. package/scripts/generator/index.js.map +0 -1
  122. package/scripts/generator/lib.d.ts +0 -1
  123. package/scripts/generator/lib.js +0 -170
  124. package/scripts/generator/lib.js.map +0 -1
  125. package/scripts/generator/workspace.d.ts +0 -21
  126. package/scripts/generator/workspace.js +0 -76
  127. package/scripts/generator/workspace.js.map +0 -1
  128. package/transports/batch-warming.d.ts +0 -52
  129. package/transports/batch-warming.js +0 -150
  130. package/transports/batch-warming.js.map +0 -1
  131. package/transports/rest.d.ts +0 -66
  132. package/transports/rest.js +0 -144
  133. package/transports/rest.js.map +0 -1
  134. package/transports/routing.d.ts +0 -22
  135. package/transports/routing.js +0 -60
  136. package/transports/routing.js.map +0 -1
  137. package/transports/util.d.ts +0 -11
  138. package/transports/util.js +0 -117
  139. package/transports/util.js.map +0 -1
  140. package/util/metrics.d.ts +0 -8
  141. package/util/metrics.js +0 -50
  142. package/util/metrics.js.map +0 -1
  143. package/util/request.d.ts +0 -217
  144. package/util/request.js +0 -3
  145. package/util/request.js.map +0 -1
  146. package/util/test-payload-loader.d.ts +0 -26
  147. package/util/test-payload-loader.js +0 -85
  148. package/util/test-payload-loader.js.map +0 -1
package/util/request.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=request.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/util/request.ts"],"names":[],"mappings":""}
@@ -1,26 +0,0 @@
1
- import { AdapterRequestData } from './types';
2
- /**
3
- * The test payload read in from filesystem
4
- */
5
- export interface Payload {
6
- requests: Array<AdapterRequestData>;
7
- }
8
- /**
9
- * Test payload with discriminated union so we can tell when we should just do
10
- * a simple liveness check rather than a sample request
11
- */
12
- type TestPayload = (Payload & {
13
- isDefault: false;
14
- }) | {
15
- isDefault: true;
16
- };
17
- /**
18
- * Load in a JSON file containing a test payload for the current adapter,
19
- * used in healthchecks to make sample requests
20
- *
21
- * @param fileName - name of file that contains the test payload data for the smoke endpoint
22
- * @returns the parsed payload with individual requests
23
- */
24
- export declare function loadTestPayload(fileName?: string): TestPayload;
25
- export declare function resolvePayload(fileName?: string): Payload | null;
26
- export {};
@@ -1,85 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.resolvePayload = exports.loadTestPayload = void 0;
7
- const ajv_1 = __importDefault(require("ajv"));
8
- const fs_1 = __importDefault(require("fs"));
9
- const path_1 = __importDefault(require("path"));
10
- const logger_1 = require("./logger");
11
- const logger = (0, logger_1.makeLogger)('TestPayloadLoader');
12
- /**
13
- * Load in a JSON file containing a test payload for the current adapter,
14
- * used in healthchecks to make sample requests
15
- *
16
- * @param fileName - name of file that contains the test payload data for the smoke endpoint
17
- * @returns the parsed payload with individual requests
18
- */
19
- function loadTestPayload(fileName) {
20
- const ajv = new ajv_1.default();
21
- const schema = {
22
- type: 'object',
23
- required: ['requests'],
24
- properties: {
25
- requests: {
26
- type: 'array',
27
- items: {
28
- type: 'object',
29
- required: [],
30
- },
31
- },
32
- },
33
- };
34
- const validate = ajv.compile(schema);
35
- try {
36
- const payload = resolvePayload(fileName);
37
- if (!validate(payload) || !payload?.requests) {
38
- throw Error(JSON.stringify(validate?.errors || 'Could not validate schema for test payload'));
39
- }
40
- return { ...payload, isDefault: false };
41
- }
42
- catch (e) {
43
- logger.warn(`Could not load payload: ${e.message}`);
44
- logger.warn('Falling back to default empty payload');
45
- return { isDefault: true };
46
- }
47
- }
48
- exports.loadTestPayload = loadTestPayload;
49
- function resolvePayload(fileName) {
50
- try {
51
- let payload = null;
52
- // Find test payload by specified name, fallback to default names if not found
53
- if (fileName && fs_1.default.existsSync(path_1.default.join(process.cwd(), fileName))) {
54
- payload = require(path_1.default.join(process.cwd(), fileName));
55
- }
56
- else if (fileName && fs_1.default.existsSync(`./${fileName}`)) {
57
- payload = require(`./${fileName}`);
58
- }
59
- // Search for test payload js first if no filename specified or found
60
- else if (fs_1.default.existsSync(path_1.default.resolve('.', 'test-payload.js'))) {
61
- payload = require(path_1.default.join(process.cwd(), 'test-payload.js'));
62
- }
63
- else if (fs_1.default.existsSync(`./test-payload.js`)) {
64
- payload = require(`./test-payload.js`);
65
- }
66
- // Search for test payload json second if no filename specified or found
67
- else if (fs_1.default.existsSync(path_1.default.join(process.cwd(), 'test-payload.json'))) {
68
- payload = require(path_1.default.join(process.cwd(), 'test-payload.json'));
69
- }
70
- else if (fs_1.default.existsSync(`./test-payload.json`)) {
71
- payload = require(`./test-payload.json`);
72
- }
73
- if (typeof payload === 'string') {
74
- return JSON.parse(payload);
75
- }
76
- else {
77
- return payload;
78
- }
79
- }
80
- catch {
81
- return null;
82
- }
83
- }
84
- exports.resolvePayload = resolvePayload;
85
- //# sourceMappingURL=test-payload-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-payload-loader.js","sourceRoot":"","sources":["../../../src/util/test-payload-loader.ts"],"names":[],"mappings":"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"}