@transai/connector-runner-api 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/index.cjs +2 -0
  2. package/index.cjs.map +7 -0
  3. package/index.js +2 -0
  4. package/index.js.map +7 -0
  5. package/libs/connector-runner-api/src/lib/connector-runner-api.d.ts +8 -0
  6. package/libs/connector-runner-api/src/lib/extractor.service.d.ts +9 -0
  7. package/libs/connector-runner-api/src/lib/http-client-authentication.d.ts +8 -0
  8. package/libs/connector-runner-api/src/lib/result.handler.d.ts +7 -0
  9. package/libs/connector-runner-api/src/lib/types.d.ts +30 -0
  10. package/libs/connector-runtime-sdk/src/index.d.ts +3 -0
  11. package/libs/connector-runtime-sdk/src/lib/connector-runtime.d.ts +16 -0
  12. package/libs/connector-runtime-sdk/src/lib/connector-runtime.interface.d.ts +5 -0
  13. package/libs/connector-runtime-sdk/src/lib/sdk/files.sdk.interface.d.ts +18 -0
  14. package/libs/connector-runtime-sdk/src/lib/sdk/http-client.interface.d.ts +38 -0
  15. package/libs/connector-runtime-sdk/src/lib/sdk/index.d.ts +10 -0
  16. package/libs/connector-runtime-sdk/src/lib/sdk/logger.sdk.interface.d.ts +7 -0
  17. package/libs/connector-runtime-sdk/src/lib/sdk/offset-store.sdk.interface.d.ts +12 -0
  18. package/libs/connector-runtime-sdk/src/lib/sdk/processing.sdk.interface.d.ts +13 -0
  19. package/libs/connector-runtime-sdk/src/lib/sdk/receiver.sdk.interface.d.ts +14 -0
  20. package/libs/connector-runtime-sdk/src/lib/sdk/sdk.interface.d.ts +31 -0
  21. package/libs/connector-runtime-sdk/src/lib/sdk/sender.sdk.interface.d.ts +22 -0
  22. package/libs/connector-runtime-sdk/src/lib/sdk/telemetry.sdk.interface.d.ts +15 -0
  23. package/libs/connector-runtime-sdk/src/lib/sdk/templating.sdk.interface.d.ts +12 -0
  24. package/libs/types/src/index.d.ts +7 -0
  25. package/libs/types/src/lib/cube-query-config.types.d.ts +20 -0
  26. package/libs/types/src/lib/file-action.types.d.ts +5 -0
  27. package/libs/types/src/lib/http-status-codes.enum.d.ts +64 -0
  28. package/libs/types/src/lib/management-api/action-definition.interface.d.ts +12 -0
  29. package/libs/types/src/lib/management-api/chart.interface.d.ts +9 -0
  30. package/libs/types/src/lib/management-api/connector/connector.interface.d.ts +140 -0
  31. package/libs/types/src/lib/management-api/connector/connectors.interface.d.ts +126 -0
  32. package/libs/types/src/lib/management-api/connector-orchestrator-config.interface.d.ts +14 -0
  33. package/libs/types/src/lib/management-api/cube-dataset.interface.d.ts +93 -0
  34. package/libs/types/src/lib/management-api/dashboard.interface.d.ts +35 -0
  35. package/libs/types/src/lib/management-api/dataset/collection.interface.d.ts +16 -0
  36. package/libs/types/src/lib/management-api/dataset/dataset-record.interface.d.ts +5 -0
  37. package/libs/types/src/lib/management-api/dataset/dataset.interface.d.ts +730 -0
  38. package/libs/types/src/lib/management-api/dataset/datasets.interface.d.ts +710 -0
  39. package/libs/types/src/lib/management-api/dataset/dimension.interface.d.ts +205 -0
  40. package/libs/types/src/lib/management-api/dataset/dimensions.interface.d.ts +186 -0
  41. package/libs/types/src/lib/management-api/dataset/filter-group.interface.d.ts +8 -0
  42. package/libs/types/src/lib/management-api/dataset/filter.interface.d.ts +34 -0
  43. package/libs/types/src/lib/management-api/dataset/filters.interface.d.ts +7 -0
  44. package/libs/types/src/lib/management-api/dataset/measure.interface.d.ts +65 -0
  45. package/libs/types/src/lib/management-api/dataset/measures.interface.d.ts +56 -0
  46. package/libs/types/src/lib/management-api/dataset/meta.interface.d.ts +9 -0
  47. package/libs/types/src/lib/management-api/dataset/pre-aggregate.interface.d.ts +69 -0
  48. package/libs/types/src/lib/management-api/dataset/pre-aggregations.interface.d.ts +54 -0
  49. package/libs/types/src/lib/management-api/dataset/relation.interface.d.ts +40 -0
  50. package/libs/types/src/lib/management-api/dataset/relations.interface.d.ts +36 -0
  51. package/libs/types/src/lib/management-api/dataset/segment.interface.d.ts +45 -0
  52. package/libs/types/src/lib/management-api/dataset/segments.interface.d.ts +43 -0
  53. package/libs/types/src/lib/management-api/dataset/switch.interface.d.ts +70 -0
  54. package/libs/types/src/lib/management-api/dataset/when-item.interface.d.ts +41 -0
  55. package/libs/types/src/lib/management-api/dataset/when-items.interface.d.ts +40 -0
  56. package/libs/types/src/lib/management-api/event-origin.interface.d.ts +24 -0
  57. package/libs/types/src/lib/management-api/index.d.ts +39 -0
  58. package/libs/types/src/lib/management-api/semantic-trigger/custom-cron-trigger-record.interface.d.ts +6 -0
  59. package/libs/types/src/lib/management-api/semantic-trigger/index.d.ts +6 -0
  60. package/libs/types/src/lib/management-api/semantic-trigger/semantic-trigger-filter.interface.d.ts +20 -0
  61. package/libs/types/src/lib/management-api/semantic-trigger/semantic-trigger-filters.interface.d.ts +18 -0
  62. package/libs/types/src/lib/management-api/semantic-trigger/semantic-trigger-record.interface.d.ts +6 -0
  63. package/libs/types/src/lib/management-api/semantic-trigger/semantic-trigger.interface.d.ts +75 -0
  64. package/libs/types/src/lib/management-api/semantic-trigger/semantic-triggers.interface.d.ts +62 -0
  65. package/libs/types/src/lib/management-api/template-implementation-overrides.interface.d.ts +1152 -0
  66. package/libs/types/src/lib/management-api/template-implementation.interface.d.ts +2860 -0
  67. package/libs/types/src/lib/management-api/template.interface.d.ts +1191 -0
  68. package/libs/types/src/lib/management-api/tenant.interface.d.ts +8 -0
  69. package/libs/types/src/lib/management-api/type-enums.d.ts +85 -0
  70. package/libs/types/src/lib/management-api/web/generic-filter.dto.d.ts +37 -0
  71. package/libs/types/src/lib/management-api/web/index.d.ts +2 -0
  72. package/libs/types/src/lib/management-api/web/paginated-response.interface.d.ts +17 -0
  73. package/libs/types/src/lib/management-api/workflow/action.interface.d.ts +85 -0
  74. package/libs/types/src/lib/management-api/workflow/index.d.ts +6 -0
  75. package/libs/types/src/lib/management-api/workflow/offset.interface.d.ts +14 -0
  76. package/libs/types/src/lib/management-api/workflow/trigger-types.interface.d.ts +14 -0
  77. package/libs/types/src/lib/management-api/workflow/workflow-definition.interface.d.ts +57 -0
  78. package/libs/types/src/lib/management-api/workflow/workflow-run.d.ts +70 -0
  79. package/libs/types/src/lib/management-api/workflow/workflow.drawing.d.ts +102 -0
  80. package/libs/types/src/lib/message.types.d.ts +59 -0
  81. package/libs/types/src/lib/response.types.d.ts +27 -0
  82. package/libs/types/src/lib/types.d.ts +116 -0
  83. package/package.json +1 -1
  84. package/.eslintrc.json +0 -18
  85. package/jest.config.ts +0 -10
  86. package/project.json +0 -29
  87. package/src/lib/connector-runner-api.ts +0 -53
  88. package/src/lib/extractor.service.spec.ts +0 -90
  89. package/src/lib/extractor.service.ts +0 -97
  90. package/src/lib/http-client-authentication.ts +0 -108
  91. package/src/lib/result.handler.spec.ts +0 -135
  92. package/src/lib/result.handler.ts +0 -100
  93. package/src/lib/types.ts +0 -38
  94. package/tsconfig.json +0 -22
  95. package/tsconfig.lib.json +0 -10
  96. package/tsconfig.spec.json +0 -14
  97. /package/{src/index.ts → libs/connector-runner-api/src/index.d.ts} +0 -0
@@ -1,100 +0,0 @@
1
- import { ConnectorSDKInterface } from '@transai/connector-runtime-sdk';
2
- import { decode } from 'html-entities';
3
-
4
- import { ApiConfig, ConnectorConfig } from './types';
5
-
6
- export class ResultHandler {
7
- readonly #sdk: ConnectorSDKInterface<ConnectorConfig>;
8
-
9
- constructor(sdk: ConnectorSDKInterface<ConnectorConfig>) {
10
- this.#sdk = sdk;
11
- }
12
-
13
- async handleResult(result: string, apiConfig: ApiConfig): Promise<void> {
14
- const parsedContent = JSON.parse(decode(result));
15
- const keys = Object.keys(parsedContent);
16
- if (keys.length === 0) {
17
- return;
18
- }
19
-
20
- if (apiConfig.listField) {
21
- await this.#sendBatch(parsedContent, apiConfig);
22
- } else {
23
- await this.#sendSingleRecord(parsedContent, apiConfig);
24
- }
25
- }
26
-
27
- async #sendBatch(
28
- parsedContent: Record<string, Array<{ [key: string]: string }>>,
29
- apiConfig: ApiConfig,
30
- ): Promise<void> {
31
- const list = parsedContent[apiConfig.listField ?? ''];
32
- if (!(list && Array.isArray(list))) {
33
- this.#sdk.logger.debug(
34
- `[API] [${apiConfig.name}] No records found, skipping. ${JSON.stringify(list)}`,
35
- );
36
- return;
37
- }
38
-
39
- await this.#sendData(list, apiConfig);
40
-
41
- const item = list[list.length - 1];
42
- this.#sdk.offsetStore.setOffset(
43
- {
44
- timestamp: (apiConfig.incrementalField
45
- ? new Date(item[apiConfig.incrementalField] as string)
46
- : new Date()
47
- ).getTime(),
48
- id: 0,
49
- rawTimestamp: 0,
50
- },
51
- `${apiConfig.offsetFilePrefix ?? 'offset'}_${apiConfig.name}`,
52
- );
53
- }
54
-
55
- async #sendSingleRecord(
56
- parsedContent: object,
57
- apiConfig: ApiConfig,
58
- ): Promise<void> {
59
- const success = await this.#sendData([parsedContent], apiConfig);
60
- if (!success) {
61
- this.#sdk.logger.debug(
62
- `[API] [${apiConfig.name}] Error while sending record to Kafka: `,
63
- parsedContent,
64
- );
65
- return;
66
- }
67
-
68
- this.#sdk.offsetStore.setOffset(
69
- {
70
- timestamp: Date.now(),
71
- id: 0,
72
- rawTimestamp: 0,
73
- },
74
- `${apiConfig.offsetFilePrefix ?? 'offset'}_${apiConfig.name}`,
75
- );
76
- }
77
-
78
- async #sendData(list: Array<object>, apiConfig: ApiConfig): Promise<boolean> {
79
- const collection = `${this.#sdk.config.datasourceIdentifier ?? 'api'}_${apiConfig.name}`;
80
- const metadata = {
81
- ...(apiConfig.metadata ?? {}),
82
- ...(apiConfig.incrementalField
83
- ? { incrementalField: apiConfig.incrementalField }
84
- : {}),
85
- ...(apiConfig.keyField ? { keyField: apiConfig.keyField } : {}),
86
- collection,
87
- };
88
-
89
- if (apiConfig.type === 'metric') {
90
- return (
91
- (await this.#sdk.sender.metricsLegacy(
92
- list as Array<never>,
93
- metadata,
94
- )) === true
95
- );
96
- }
97
-
98
- return (await this.#sdk.sender.documents(list, metadata)) === true;
99
- }
100
- }
package/src/lib/types.ts DELETED
@@ -1,38 +0,0 @@
1
- import { HttpMethod } from '@transai/connector-runtime-sdk';
2
- import { BaseConnectorConfig } from '@xip-online-data/types';
3
-
4
- export interface HttpClientConfig {
5
- method?: HttpMethod;
6
- url?: string;
7
- }
8
-
9
- export interface HttpClientAuthConfig {
10
- tokenUrl?: string;
11
- clientId?: string;
12
- clientSecret?: string;
13
- authorization?: string;
14
- }
15
-
16
- export interface ApiConfig extends HttpClientConfig, HttpClientAuthConfig {
17
- name: string;
18
- interval: number;
19
-
20
- body?: string;
21
- batchSize?: number;
22
- offsetFilePrefix?: string;
23
- format?: string;
24
- listField?: string;
25
- keyField?: string;
26
- incrementalField?: string;
27
- type?: 'metric' | 'document';
28
- metadata?: {
29
- [key: string]: string;
30
- };
31
- }
32
-
33
- export interface ConnectorConfig
34
- extends BaseConnectorConfig,
35
- HttpClientConfig,
36
- HttpClientAuthConfig {
37
- apiCalls?: Array<ApiConfig>;
38
- }
package/tsconfig.json DELETED
@@ -1,22 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "module": "commonjs",
5
- "forceConsistentCasingInFileNames": true,
6
- "strict": true,
7
- "noImplicitOverride": true,
8
- "noImplicitReturns": true,
9
- "noFallthroughCasesInSwitch": true,
10
- "noPropertyAccessFromIndexSignature": true
11
- },
12
- "files": [],
13
- "include": [],
14
- "references": [
15
- {
16
- "path": "./tsconfig.lib.json"
17
- },
18
- {
19
- "path": "./tsconfig.spec.json"
20
- }
21
- ]
22
- }
package/tsconfig.lib.json DELETED
@@ -1,10 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "outDir": "../../dist/out-tsc",
5
- "declaration": true,
6
- "types": ["node"]
7
- },
8
- "include": ["src/**/*.ts"],
9
- "exclude": ["jest.config.ts", "src/**/*.spec.ts", "src/**/*.test.ts"]
10
- }
@@ -1,14 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "outDir": "../../dist/out-tsc",
5
- "module": "commonjs",
6
- "types": ["jest", "node"]
7
- },
8
- "include": [
9
- "jest.config.ts",
10
- "src/**/*.test.ts",
11
- "src/**/*.spec.ts",
12
- "src/**/*.d.ts"
13
- ]
14
- }