@devrev/airsync-sdk 2.0.0-beta.3 → 2.0.0-beta.5
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/MIGRATION.md +1028 -0
- package/README.md +5 -11
- package/dist/attachments-streaming/attachments-streaming-pool.d.ts +7 -9
- package/dist/attachments-streaming/attachments-streaming-pool.d.ts.map +1 -1
- package/dist/attachments-streaming/attachments-streaming-pool.interfaces.d.ts +2 -7
- package/dist/attachments-streaming/attachments-streaming-pool.interfaces.d.ts.map +1 -1
- package/dist/attachments-streaming/attachments-streaming-pool.js +54 -56
- package/dist/common/constants.d.ts +4 -5
- package/dist/common/constants.d.ts.map +1 -1
- package/dist/common/constants.js +6 -7
- package/dist/common/helpers.d.ts +3 -35
- package/dist/common/helpers.d.ts.map +1 -1
- package/dist/common/helpers.js +5 -50
- package/dist/http/{axios-client-internal.d.ts → client.d.ts} +1 -1
- package/dist/http/client.d.ts.map +1 -0
- package/dist/http/{axios-client-internal.js → client.js} +4 -8
- package/dist/index.d.ts +24 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -32
- package/dist/logger/logger.d.ts +12 -53
- package/dist/logger/logger.d.ts.map +1 -1
- package/dist/logger/logger.interfaces.d.ts +0 -1
- package/dist/logger/logger.interfaces.d.ts.map +1 -1
- package/dist/logger/logger.js +36 -68
- package/dist/mappers/mappers.d.ts +7 -46
- package/dist/mappers/mappers.d.ts.map +1 -1
- package/dist/mappers/mappers.interfaces.d.ts +175 -0
- package/dist/mappers/mappers.interfaces.d.ts.map +1 -0
- package/dist/mappers/{mappers.interface.js → mappers.interfaces.js} +4 -13
- package/dist/mappers/mappers.js +11 -45
- package/dist/multithreading/adapters/base-adapter.d.ts +30 -32
- package/dist/multithreading/adapters/base-adapter.d.ts.map +1 -1
- package/dist/multithreading/adapters/base-adapter.js +97 -62
- package/dist/multithreading/adapters/extraction-adapter.d.ts +16 -29
- package/dist/multithreading/adapters/extraction-adapter.d.ts.map +1 -1
- package/dist/multithreading/adapters/extraction-adapter.js +203 -206
- package/dist/multithreading/adapters/loading-adapter.d.ts +8 -13
- package/dist/multithreading/adapters/loading-adapter.d.ts.map +1 -1
- package/dist/multithreading/adapters/loading-adapter.helpers.d.ts +2 -12
- package/dist/multithreading/adapters/loading-adapter.helpers.d.ts.map +1 -1
- package/dist/multithreading/adapters/loading-adapter.helpers.js +2 -12
- package/dist/multithreading/adapters/loading-adapter.js +294 -346
- package/dist/multithreading/emit.d.ts +11 -0
- package/dist/multithreading/emit.d.ts.map +1 -0
- package/dist/{common/control-protocol.js → multithreading/emit.js} +5 -7
- package/dist/multithreading/process-task.d.ts +2 -12
- package/dist/multithreading/process-task.d.ts.map +1 -1
- package/dist/multithreading/process-task.js +46 -43
- package/dist/multithreading/spawn/spawn.d.ts +3 -9
- package/dist/multithreading/spawn/spawn.d.ts.map +1 -1
- package/dist/multithreading/spawn/spawn.helpers.d.ts +12 -11
- package/dist/multithreading/spawn/spawn.helpers.d.ts.map +1 -1
- package/dist/multithreading/spawn/spawn.helpers.js +128 -20
- package/dist/multithreading/spawn/spawn.js +24 -39
- package/dist/multithreading/worker.js +1 -4
- package/dist/repo/repo.d.ts +10 -0
- package/dist/repo/repo.d.ts.map +1 -1
- package/dist/repo/repo.helpers.d.ts +6 -0
- package/dist/repo/repo.helpers.d.ts.map +1 -0
- package/dist/repo/repo.helpers.js +16 -0
- package/dist/repo/repo.interfaces.d.ts +4 -16
- package/dist/repo/repo.interfaces.d.ts.map +1 -1
- package/dist/repo/repo.js +23 -8
- package/dist/state/base-state.d.ts +16 -38
- package/dist/state/base-state.d.ts.map +1 -1
- package/dist/state/base-state.js +19 -41
- package/dist/state/extraction-state.d.ts +6 -21
- package/dist/state/extraction-state.d.ts.map +1 -1
- package/dist/state/extraction-state.js +8 -25
- package/dist/{common → state}/install-initial-domain-mapping.d.ts +1 -1
- package/dist/state/install-initial-domain-mapping.d.ts.map +1 -0
- package/dist/{common → state}/install-initial-domain-mapping.js +5 -7
- package/dist/state/loading-state.d.ts +3 -14
- package/dist/state/loading-state.d.ts.map +1 -1
- package/dist/state/loading-state.js +3 -14
- package/dist/state/state.d.ts +4 -0
- package/dist/state/state.d.ts.map +1 -0
- package/dist/state/state.interfaces.d.ts +33 -37
- package/dist/state/state.interfaces.d.ts.map +1 -1
- package/dist/state/state.interfaces.js +16 -11
- package/dist/state/state.js +11 -0
- package/dist/state/time-value-resolver.d.ts +17 -0
- package/dist/state/time-value-resolver.d.ts.map +1 -0
- package/dist/{common → state}/time-value-resolver.js +9 -41
- package/dist/testing/mock-event.d.ts +10 -0
- package/dist/testing/mock-event.d.ts.map +1 -0
- package/dist/{common/test-utils.js → testing/mock-event.js} +17 -14
- package/dist/testing/mock-server.d.ts +29 -0
- package/dist/testing/mock-server.d.ts.map +1 -0
- package/dist/testing/mock-server.interfaces.d.ts +48 -0
- package/dist/testing/mock-server.interfaces.d.ts.map +1 -0
- package/dist/{mock-server → testing}/mock-server.js +21 -33
- package/dist/types/common.d.ts +1 -12
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/common.js +1 -6
- package/dist/types/errors.d.ts +9 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/external-domain-metadata.d.ts +30 -171
- package/dist/types/external-domain-metadata.d.ts.map +1 -1
- package/dist/types/extraction.d.ts +64 -94
- package/dist/types/extraction.d.ts.map +1 -1
- package/dist/types/extraction.js +6 -34
- package/dist/types/loading.d.ts +1 -2
- package/dist/types/loading.d.ts.map +1 -1
- package/dist/types/loading.js +0 -1
- package/dist/types/workers.d.ts +39 -94
- package/dist/types/workers.d.ts.map +1 -1
- package/dist/types/workers.js +0 -6
- package/dist/uploader/uploader.d.ts +8 -59
- package/dist/uploader/uploader.d.ts.map +1 -1
- package/dist/uploader/uploader.helpers.d.ts +4 -27
- package/dist/uploader/uploader.helpers.d.ts.map +1 -1
- package/dist/uploader/uploader.helpers.js +64 -30
- package/dist/uploader/uploader.interfaces.d.ts +15 -25
- package/dist/uploader/uploader.interfaces.d.ts.map +1 -1
- package/dist/uploader/uploader.interfaces.js +8 -0
- package/dist/uploader/uploader.js +23 -89
- package/package.json +8 -6
- package/dist/airsync-sdk.d.ts +0 -2059
- package/dist/attachments-streaming/attachments-streaming-pool.test.d.ts +0 -2
- package/dist/attachments-streaming/attachments-streaming-pool.test.d.ts.map +0 -1
- package/dist/attachments-streaming/attachments-streaming-pool.test.js +0 -540
- package/dist/common/control-protocol.d.ts +0 -10
- package/dist/common/control-protocol.d.ts.map +0 -1
- package/dist/common/errors.d.ts +0 -6
- package/dist/common/errors.d.ts.map +0 -1
- package/dist/common/install-initial-domain-mapping.d.ts.map +0 -1
- package/dist/common/install-initial-domain-mapping.test.d.ts +0 -2
- package/dist/common/install-initial-domain-mapping.test.d.ts.map +0 -1
- package/dist/common/install-initial-domain-mapping.test.js +0 -211
- package/dist/common/test-utils.d.ts +0 -19
- package/dist/common/test-utils.d.ts.map +0 -1
- package/dist/common/time-value-resolver.d.ts +0 -47
- package/dist/common/time-value-resolver.d.ts.map +0 -1
- package/dist/common/time-value-resolver.test.d.ts +0 -2
- package/dist/common/time-value-resolver.test.d.ts.map +0 -1
- package/dist/common/time-value-resolver.test.js +0 -268
- package/dist/http/axios-client-internal.d.ts.map +0 -1
- package/dist/http/axios-client-internal.test.d.ts +0 -2
- package/dist/http/axios-client-internal.test.d.ts.map +0 -1
- package/dist/http/axios-client-internal.test.js +0 -175
- package/dist/http/axios-client.d.ts +0 -27
- package/dist/http/axios-client.d.ts.map +0 -1
- package/dist/http/axios-client.js +0 -60
- package/dist/http/constants.d.ts +0 -4
- package/dist/http/constants.d.ts.map +0 -1
- package/dist/http/constants.js +0 -6
- package/dist/http/index.d.ts +0 -2
- package/dist/http/index.d.ts.map +0 -1
- package/dist/http/index.js +0 -17
- package/dist/logger/logger.constants.d.ts +0 -6
- package/dist/logger/logger.constants.d.ts.map +0 -1
- package/dist/logger/logger.constants.js +0 -13
- package/dist/logger/logger.context.d.ts +0 -58
- package/dist/logger/logger.context.d.ts.map +0 -1
- package/dist/logger/logger.context.js +0 -86
- package/dist/logger/logger.test.d.ts +0 -2
- package/dist/logger/logger.test.d.ts.map +0 -1
- package/dist/logger/logger.test.js +0 -537
- package/dist/mappers/mappers.interface.d.ts +0 -294
- package/dist/mappers/mappers.interface.d.ts.map +0 -1
- package/dist/mappers/mappers.test.d.ts +0 -2
- package/dist/mappers/mappers.test.d.ts.map +0 -1
- package/dist/mappers/mappers.test.js +0 -105
- package/dist/mock-server/mock-server.d.ts +0 -47
- package/dist/mock-server/mock-server.d.ts.map +0 -1
- package/dist/mock-server/mock-server.interfaces.d.ts +0 -73
- package/dist/mock-server/mock-server.interfaces.d.ts.map +0 -1
- package/dist/multithreading/adapters/base-adapter.emit.test.d.ts +0 -2
- package/dist/multithreading/adapters/base-adapter.emit.test.d.ts.map +0 -1
- package/dist/multithreading/adapters/base-adapter.emit.test.js +0 -403
- package/dist/multithreading/adapters/extraction-adapter.artifacts.test.d.ts +0 -2
- package/dist/multithreading/adapters/extraction-adapter.artifacts.test.d.ts.map +0 -1
- package/dist/multithreading/adapters/extraction-adapter.artifacts.test.js +0 -175
- package/dist/multithreading/adapters/extraction-adapter.test.d.ts +0 -2
- package/dist/multithreading/adapters/extraction-adapter.test.d.ts.map +0 -1
- package/dist/multithreading/adapters/extraction-adapter.test.js +0 -789
- package/dist/multithreading/adapters/loading-adapter.helpers.test.d.ts +0 -2
- package/dist/multithreading/adapters/loading-adapter.helpers.test.d.ts.map +0 -1
- package/dist/multithreading/adapters/loading-adapter.helpers.test.js +0 -514
- package/dist/multithreading/adapters/loading-adapter.test.d.ts +0 -2
- package/dist/multithreading/adapters/loading-adapter.test.d.ts.map +0 -1
- package/dist/multithreading/adapters/loading-adapter.test.js +0 -589
- package/dist/multithreading/adapters/serialization.test.d.ts +0 -2
- package/dist/multithreading/adapters/serialization.test.d.ts.map +0 -1
- package/dist/multithreading/adapters/serialization.test.js +0 -71
- package/dist/multithreading/create-worker.test.d.ts +0 -2
- package/dist/multithreading/create-worker.test.d.ts.map +0 -1
- package/dist/multithreading/create-worker.test.js +0 -108
- package/dist/multithreading/process-task.test.d.ts +0 -2
- package/dist/multithreading/process-task.test.d.ts.map +0 -1
- package/dist/multithreading/process-task.test.js +0 -146
- package/dist/multithreading/spawn/spawn.helpers.test.d.ts +0 -2
- package/dist/multithreading/spawn/spawn.helpers.test.d.ts.map +0 -1
- package/dist/multithreading/spawn/spawn.helpers.test.js +0 -293
- package/dist/multithreading/spawn/spawn.test.d.ts +0 -2
- package/dist/multithreading/spawn/spawn.test.d.ts.map +0 -1
- package/dist/multithreading/spawn/spawn.test.js +0 -232
- package/dist/repo/repo.test.d.ts +0 -2
- package/dist/repo/repo.test.d.ts.map +0 -1
- package/dist/repo/repo.test.js +0 -184
- package/dist/state/state.extract-window.test.d.ts +0 -2
- package/dist/state/state.extract-window.test.d.ts.map +0 -1
- package/dist/state/state.extract-window.test.js +0 -163
- package/dist/state/state.pending-boundaries.test.d.ts +0 -2
- package/dist/state/state.pending-boundaries.test.d.ts.map +0 -1
- package/dist/state/state.pending-boundaries.test.js +0 -189
- package/dist/state/state.post-state.test.d.ts +0 -2
- package/dist/state/state.post-state.test.d.ts.map +0 -1
- package/dist/state/state.post-state.test.js +0 -78
- package/dist/state/state.test.d.ts +0 -2
- package/dist/state/state.test.d.ts.map +0 -1
- package/dist/state/state.test.js +0 -271
- package/dist/state/state.time-value-resolution.test.d.ts +0 -2
- package/dist/state/state.time-value-resolution.test.d.ts.map +0 -1
- package/dist/state/state.time-value-resolution.test.js +0 -175
- package/dist/tsdoc-metadata.json +0 -11
- package/dist/types/extraction.test.d.ts +0 -2
- package/dist/types/extraction.test.d.ts.map +0 -1
- package/dist/types/extraction.test.js +0 -96
- package/dist/types/index.d.ts +0 -10
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -21
- package/dist/uploader/uploader.helpers.test.d.ts +0 -2
- package/dist/uploader/uploader.helpers.test.d.ts.map +0 -1
- package/dist/uploader/uploader.helpers.test.js +0 -256
- package/dist/uploader/uploader.test.d.ts +0 -2
- package/dist/uploader/uploader.test.d.ts.map +0 -1
- package/dist/uploader/uploader.test.js +0 -601
- /package/dist/{mock-server → testing}/mock-server.interfaces.js +0 -0
- /package/dist/{common → types}/errors.js +0 -0
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
import { AirSyncEvent } from '../types';
|
|
2
|
-
import { DonV2 } from '../types/loading';
|
|
3
|
-
import { WorkerAdapterOptions } from '../types/workers';
|
|
4
|
-
/**
|
|
5
|
-
* Configuration interface for creating a Mappers instance.
|
|
6
|
-
*/
|
|
7
|
-
export interface MappersFactoryInterface {
|
|
8
|
-
event: AirSyncEvent;
|
|
9
|
-
options?: WorkerAdapterOptions;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Parameters for updating a sync mapper record.
|
|
13
|
-
*/
|
|
14
|
-
export interface UpdateSyncMapperRecordParams {
|
|
15
|
-
/** External system IDs to add */
|
|
16
|
-
external_ids: {
|
|
17
|
-
add: string[];
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Optional map that labels values in `external_ids` with their usage context.
|
|
21
|
-
* Use for example when an external system requires different identifiers for different API calls
|
|
22
|
-
* (for example, a UUID for one endpoint and a login username for another).
|
|
23
|
-
*
|
|
24
|
-
* Example:
|
|
25
|
-
* external_ids: ["2a1c...-uuid", "john_doe"]
|
|
26
|
-
* secondary_ids: { "username": "john_doe" }
|
|
27
|
-
*
|
|
28
|
-
* Note: Values in `secondary_ids` are not indexed. If you need to look up by a
|
|
29
|
-
* secondary value (e.g., username), you must also include that value in `external_ids`.
|
|
30
|
-
*/
|
|
31
|
-
secondary_ids?: Record<string, string>;
|
|
32
|
-
/** DevRev entity IDs to add */
|
|
33
|
-
targets: {
|
|
34
|
-
add: DonV2[];
|
|
35
|
-
};
|
|
36
|
-
status: SyncMapperRecordStatus;
|
|
37
|
-
/**
|
|
38
|
-
* Optionally populated with the file name of the input file that contains the
|
|
39
|
-
* object data. Can be populated on create and on update of the object to help
|
|
40
|
-
* in finding the object later if some debugging is needed.
|
|
41
|
-
*/
|
|
42
|
-
input_files?: {
|
|
43
|
-
add: string[];
|
|
44
|
-
};
|
|
45
|
-
/**
|
|
46
|
-
* Records external-system changes to prevent update loops.
|
|
47
|
-
* When you create/update the object in the external system during loading,
|
|
48
|
-
* add that object's modified_date here. Later, when the object is extracted
|
|
49
|
-
* and the DevRev Loader evaluates whether to apply it, if the modified_date
|
|
50
|
-
* is present in this list the update is skipped (because the change
|
|
51
|
-
* originated in DevRev).
|
|
52
|
-
*/
|
|
53
|
-
external_versions?: {
|
|
54
|
-
add: SyncMapperRecordExternalVersion[];
|
|
55
|
-
};
|
|
56
|
-
/**
|
|
57
|
-
* Free-form data storage for your use. Store any additional information here.
|
|
58
|
-
*/
|
|
59
|
-
extra_data?: string;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Represents a sync mapper record that links external system entities to DevRev entities.
|
|
63
|
-
*/
|
|
64
|
-
export interface SyncMapperRecord {
|
|
65
|
-
id: DonV2;
|
|
66
|
-
/** Array of external system IDs that map to the same DevRev object */
|
|
67
|
-
external_ids: string[];
|
|
68
|
-
/**
|
|
69
|
-
* Optional map that labels values in `external_ids` with their usage context.
|
|
70
|
-
* Use when an external system requires different identifiers for different API calls
|
|
71
|
-
* (for example, a UUID for one endpoint and a login username for another).
|
|
72
|
-
*
|
|
73
|
-
* Example:
|
|
74
|
-
* external_ids: ["2a1c...-uuid", "john_doe"]
|
|
75
|
-
* secondary_ids: { "username": "john_doe" }
|
|
76
|
-
*
|
|
77
|
-
* Note: Values in `secondary_ids` are not indexed. If you need to look up by a
|
|
78
|
-
* secondary value (e.g., username), you must also include that value in `external_ids`.
|
|
79
|
-
*/
|
|
80
|
-
secondary_ids?: Record<string, string>;
|
|
81
|
-
/** Array of DevRev entity IDs this mapping points to */
|
|
82
|
-
targets: DonV2[];
|
|
83
|
-
status: SyncMapperRecordStatus;
|
|
84
|
-
/**
|
|
85
|
-
* Optional file name where the object data was found.
|
|
86
|
-
* Useful for debugging - helps locate the source of object data later.
|
|
87
|
-
*/
|
|
88
|
-
input_files?: string[];
|
|
89
|
-
/**
|
|
90
|
-
* Records external-system changes to prevent update loops.
|
|
91
|
-
* When the Loader writes to the external system, store the object's
|
|
92
|
-
* modified_date here. During the next sync back to DevRev, if the extracted
|
|
93
|
-
* object's modified_date exists in this list the update is skipped (avoids
|
|
94
|
-
* re-applying a DevRev-originated change).
|
|
95
|
-
*/
|
|
96
|
-
external_versions?: SyncMapperRecordExternalVersion[];
|
|
97
|
-
/**
|
|
98
|
-
* Free-form data storage for your use. Store any additional information here.
|
|
99
|
-
* Completely opaque to the platform - use however you need.
|
|
100
|
-
*/
|
|
101
|
-
extra_data?: string;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Parameters for retrieving a sync mapper record by DevRev target ID.
|
|
105
|
-
*/
|
|
106
|
-
export interface MappersGetByTargetIdParams {
|
|
107
|
-
/** The sync unit ID that scopes the synchronization context */
|
|
108
|
-
sync_unit: DonV2;
|
|
109
|
-
/** The DevRev entity ID to look up */
|
|
110
|
-
target: DonV2;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Response containing a sync mapper record retrieved by target ID.
|
|
114
|
-
*/
|
|
115
|
-
export interface MappersGetByTargetIdResponse {
|
|
116
|
-
sync_mapper_record: SyncMapperRecord;
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Parameters for creating a new sync mapper record.
|
|
120
|
-
*/
|
|
121
|
-
export interface MappersCreateParams {
|
|
122
|
-
/** The sync unit ID that scopes the synchronization context */
|
|
123
|
-
sync_unit: DonV2;
|
|
124
|
-
/** Array of external system identifiers */
|
|
125
|
-
external_ids: string[];
|
|
126
|
-
/**
|
|
127
|
-
* Optional map that labels values in `external_ids` with their usage context.
|
|
128
|
-
* Use when an external system requires different identifiers for different API calls
|
|
129
|
-
* (for example, a UUID for one endpoint and a login username for another).
|
|
130
|
-
*
|
|
131
|
-
* Example:
|
|
132
|
-
* external_ids: ["2a1c...-uuid", "john_doe"]
|
|
133
|
-
* secondary_ids: { "username": "john_doe" }
|
|
134
|
-
*
|
|
135
|
-
* Note: Values in `secondary_ids` are not indexed. If you need to look up by a
|
|
136
|
-
* secondary value (e.g., username), you must also include that value in `external_ids`.
|
|
137
|
-
*/
|
|
138
|
-
secondary_ids?: Record<string, string>;
|
|
139
|
-
/** Array of DevRev entity IDs this mapping points to */
|
|
140
|
-
targets: DonV2[];
|
|
141
|
-
status: SyncMapperRecordStatus;
|
|
142
|
-
/**
|
|
143
|
-
* Input file names where the object was encountered.
|
|
144
|
-
* Used for observability and tracking.
|
|
145
|
-
*/
|
|
146
|
-
input_files?: string[];
|
|
147
|
-
/**
|
|
148
|
-
* External version markers used to avoid update loops.
|
|
149
|
-
* After creating or updating the object in the external system, add its
|
|
150
|
-
* modified_date here. On subsequent extraction, the Loader skips applying the
|
|
151
|
-
* update if the modified_date is present (change originated in DevRev).
|
|
152
|
-
*/
|
|
153
|
-
external_versions?: SyncMapperRecordExternalVersion[];
|
|
154
|
-
/**
|
|
155
|
-
* Opaque data for storing additional client-specific information.
|
|
156
|
-
* Fully managed by snapin authors.
|
|
157
|
-
*/
|
|
158
|
-
extra_data?: string;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Response containing the newly created sync mapper record.
|
|
162
|
-
*/
|
|
163
|
-
export interface MappersCreateResponse {
|
|
164
|
-
sync_mapper_record: SyncMapperRecord;
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Parameters for updating an existing sync mapper record.
|
|
168
|
-
*/
|
|
169
|
-
export interface MappersUpdateParams {
|
|
170
|
-
/** The ID of the existing sync mapper record to update */
|
|
171
|
-
id: DonV2;
|
|
172
|
-
/** The sync unit ID that scopes the synchronization context */
|
|
173
|
-
sync_unit: DonV2;
|
|
174
|
-
/** External system IDs to add to the existing mapping */
|
|
175
|
-
external_ids: {
|
|
176
|
-
add: string[];
|
|
177
|
-
};
|
|
178
|
-
/**
|
|
179
|
-
* Optional map that labels values in `external_ids` with their usage context.
|
|
180
|
-
* Use when an external system requires different identifiers for different API calls
|
|
181
|
-
* (for example, a UUID for one endpoint and a login username for another).
|
|
182
|
-
*
|
|
183
|
-
* Example:
|
|
184
|
-
* external_ids: ["2a1c...-uuid", "john_doe"]
|
|
185
|
-
* secondary_ids: { "username": "john_doe" }
|
|
186
|
-
*
|
|
187
|
-
* Note: Values in `secondary_ids` are not indexed. If you need to look up by a
|
|
188
|
-
* secondary value (e.g., username), you must also include that value in `external_ids`.
|
|
189
|
-
*/
|
|
190
|
-
secondary_ids?: Record<string, string>;
|
|
191
|
-
/** DevRev entity IDs to add to the existing mapping */
|
|
192
|
-
targets: {
|
|
193
|
-
add: DonV2[];
|
|
194
|
-
};
|
|
195
|
-
status: SyncMapperRecordStatus;
|
|
196
|
-
/**
|
|
197
|
-
* Input file names where the object was encountered.
|
|
198
|
-
* Used for observability and tracking.
|
|
199
|
-
*/
|
|
200
|
-
input_files?: {
|
|
201
|
-
add: string[];
|
|
202
|
-
};
|
|
203
|
-
/**
|
|
204
|
-
* External version markers used to avoid update loops.
|
|
205
|
-
* After creating or updating the object in the external system, add its
|
|
206
|
-
* modified_date here. On subsequent extraction, the Loader skips applying the
|
|
207
|
-
* update if the modified_date is present (change originated in DevRev).
|
|
208
|
-
*/
|
|
209
|
-
external_versions?: {
|
|
210
|
-
add: SyncMapperRecordExternalVersion[];
|
|
211
|
-
};
|
|
212
|
-
/**
|
|
213
|
-
* Opaque data for storing additional client-specific information.
|
|
214
|
-
* Fully managed by snapin authors.
|
|
215
|
-
*/
|
|
216
|
-
extra_data?: string;
|
|
217
|
-
}
|
|
218
|
-
/**
|
|
219
|
-
* Response containing the updated sync mapper record.
|
|
220
|
-
*/
|
|
221
|
-
export interface MappersUpdateResponse {
|
|
222
|
-
sync_mapper_record: SyncMapperRecord;
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* Status of a sync mapper record indicating its operational state.
|
|
226
|
-
*/
|
|
227
|
-
export declare enum SyncMapperRecordStatus {
|
|
228
|
-
/** The mapping is active and operational (default) */
|
|
229
|
-
OPERATIONAL = "operational",
|
|
230
|
-
/** The mapping was filtered out by user filter settings */
|
|
231
|
-
FILTERED = "filtered",
|
|
232
|
-
/**
|
|
233
|
-
* The external object should be ignored in sync operations.
|
|
234
|
-
* Use to prevent objects from being created or updated in DevRev.
|
|
235
|
-
*/
|
|
236
|
-
IGNORED = "ignored"
|
|
237
|
-
}
|
|
238
|
-
/**
|
|
239
|
-
* External version tracking to prevent update loops.
|
|
240
|
-
* Used to identify changes that originated from your system.
|
|
241
|
-
*/
|
|
242
|
-
export interface SyncMapperRecordExternalVersion {
|
|
243
|
-
/** Sync recipe version at the time the external change was written */
|
|
244
|
-
recipe_version: number;
|
|
245
|
-
/** External system modified timestamp (ISO 8601 string) used for loop detection */
|
|
246
|
-
modified_date: string;
|
|
247
|
-
}
|
|
248
|
-
/**
|
|
249
|
-
* Parameters for retrieving a sync mapper record by external system ID.
|
|
250
|
-
*/
|
|
251
|
-
export interface MappersGetByExternalIdParams {
|
|
252
|
-
/** The sync unit ID that scopes the synchronization context */
|
|
253
|
-
sync_unit: DonV2;
|
|
254
|
-
/** The identifier from the external system */
|
|
255
|
-
external_id: string;
|
|
256
|
-
/** The type of DevRev entity to look for */
|
|
257
|
-
target_type: SyncMapperRecordTargetType;
|
|
258
|
-
}
|
|
259
|
-
/**
|
|
260
|
-
* Types of DevRev entities that can be targets in sync mapper records.
|
|
261
|
-
*/
|
|
262
|
-
export declare enum SyncMapperRecordTargetType {
|
|
263
|
-
ACCESS_CONTROL_ENTRY = "access_control_entry",
|
|
264
|
-
ACCOUNT = "account",
|
|
265
|
-
AIRSYNC_AUTHORIZATION_POLICY = "airdrop_authorization_policy",
|
|
266
|
-
AIRSYNC_FIELD_AUTHORIZATION_POLICY = "airdrop_field_authorization_policy",
|
|
267
|
-
AIRSYNC_PLATFORM_GROUP = "airdrop_platform_group",
|
|
268
|
-
ARTICLE = "article",
|
|
269
|
-
ARTIFACT = "artifact",
|
|
270
|
-
CHAT = "chat",
|
|
271
|
-
CONVERSATION = "conversation",
|
|
272
|
-
CUSTOM_OBJECT = "custom_object",
|
|
273
|
-
DIRECTORY = "directory",
|
|
274
|
-
GROUP = "group",
|
|
275
|
-
INCIDENT = "incident",
|
|
276
|
-
LINK = "link",
|
|
277
|
-
MEETING = "meeting",
|
|
278
|
-
OBJECT_MEMBER = "object_member",
|
|
279
|
-
PART = "part",
|
|
280
|
-
REV_ORG = "rev_org",
|
|
281
|
-
ROLE = "role",
|
|
282
|
-
ROLE_SET = "role_set",
|
|
283
|
-
TAG = "tag",
|
|
284
|
-
TIMELINE_COMMENT = "timeline_comment",
|
|
285
|
-
USER = "user",
|
|
286
|
-
WORK = "work"
|
|
287
|
-
}
|
|
288
|
-
/**
|
|
289
|
-
* Response containing a sync mapper record retrieved by external ID.
|
|
290
|
-
*/
|
|
291
|
-
export interface MappersGetByExternalIdResponse {
|
|
292
|
-
sync_mapper_record: SyncMapperRecord;
|
|
293
|
-
}
|
|
294
|
-
//# sourceMappingURL=mappers.interface.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mappers.interface.d.ts","sourceRoot":"","sources":["../../src/mappers/mappers.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mappers.test.d.ts","sourceRoot":"","sources":["../../src/mappers/mappers.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_utils_1 = require("../common/test-utils");
|
|
4
|
-
const axios_client_internal_1 = require("../http/axios-client-internal");
|
|
5
|
-
const extraction_1 = require("../types/extraction");
|
|
6
|
-
const mappers_1 = require("./mappers");
|
|
7
|
-
const mappers_interface_1 = require("./mappers.interface");
|
|
8
|
-
// Mock the axios client
|
|
9
|
-
jest.mock('../http/axios-client-internal');
|
|
10
|
-
const mockAxiosClient = axios_client_internal_1.axiosClient;
|
|
11
|
-
describe(mappers_1.Mappers.name, () => {
|
|
12
|
-
const apiToken = 'test_service_token';
|
|
13
|
-
const syncUnit = 'test_sync_unit';
|
|
14
|
-
const targetId = 'test_target_id';
|
|
15
|
-
const externalId = 'test_external_id';
|
|
16
|
-
const id = 'test_id';
|
|
17
|
-
const externalIds = ['test_external_id'];
|
|
18
|
-
const targets = ['test_target_id'];
|
|
19
|
-
const mockEvent = (0, test_utils_1.createMockEvent)(test_utils_1.MOCK_SERVER_DEFAULT_URL, {
|
|
20
|
-
context: {
|
|
21
|
-
secrets: { service_account_token: apiToken },
|
|
22
|
-
},
|
|
23
|
-
payload: { event_type: extraction_1.EventType.StartExtractingData },
|
|
24
|
-
});
|
|
25
|
-
const mappers = new mappers_1.Mappers({ event: mockEvent });
|
|
26
|
-
beforeEach(() => {
|
|
27
|
-
jest.clearAllMocks();
|
|
28
|
-
});
|
|
29
|
-
it(`should call ${mappers.getByTargetId.name} with correct endpoint, headers and params`, async () => {
|
|
30
|
-
// Arrange
|
|
31
|
-
const params = {
|
|
32
|
-
sync_unit: syncUnit,
|
|
33
|
-
target: targetId,
|
|
34
|
-
};
|
|
35
|
-
mockAxiosClient.get.mockResolvedValue({ data: {} });
|
|
36
|
-
// Act
|
|
37
|
-
await mappers.getByTargetId(params);
|
|
38
|
-
// Assert
|
|
39
|
-
expect(mockAxiosClient.get).toHaveBeenCalledWith(`${test_utils_1.MOCK_SERVER_DEFAULT_URL}/internal/airdrop.sync-mapper-record.get-by-target`, {
|
|
40
|
-
headers: {
|
|
41
|
-
Authorization: apiToken,
|
|
42
|
-
},
|
|
43
|
-
params: { sync_unit: syncUnit, target: targetId },
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
it(`should call ${mappers.getByExternalId.name} with correct endpoint, headers and params`, async () => {
|
|
47
|
-
// Arrange
|
|
48
|
-
const params = {
|
|
49
|
-
sync_unit: syncUnit,
|
|
50
|
-
external_id: externalId,
|
|
51
|
-
target_type: mappers_interface_1.SyncMapperRecordTargetType.USER,
|
|
52
|
-
};
|
|
53
|
-
mockAxiosClient.get.mockResolvedValue({ data: {} });
|
|
54
|
-
// Act
|
|
55
|
-
await mappers.getByExternalId(params);
|
|
56
|
-
// Assert
|
|
57
|
-
expect(mockAxiosClient.get).toHaveBeenCalledWith(`${test_utils_1.MOCK_SERVER_DEFAULT_URL}/internal/airdrop.sync-mapper-record.get-by-external-id`, {
|
|
58
|
-
headers: {
|
|
59
|
-
Authorization: apiToken,
|
|
60
|
-
},
|
|
61
|
-
params: {
|
|
62
|
-
sync_unit: syncUnit,
|
|
63
|
-
external_id: externalId,
|
|
64
|
-
target_type: mappers_interface_1.SyncMapperRecordTargetType.USER,
|
|
65
|
-
},
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
it(`should call ${mappers.create.name} with correct endpoint, headers and data`, async () => {
|
|
69
|
-
// Arrange
|
|
70
|
-
const params = {
|
|
71
|
-
sync_unit: syncUnit,
|
|
72
|
-
external_ids: externalIds,
|
|
73
|
-
targets: targets,
|
|
74
|
-
status: mappers_interface_1.SyncMapperRecordStatus.OPERATIONAL,
|
|
75
|
-
};
|
|
76
|
-
mockAxiosClient.post.mockResolvedValue({ data: {} });
|
|
77
|
-
// Act
|
|
78
|
-
await mappers.create(params);
|
|
79
|
-
// Assert
|
|
80
|
-
expect(mockAxiosClient.post).toHaveBeenCalledWith(`${test_utils_1.MOCK_SERVER_DEFAULT_URL}/internal/airdrop.sync-mapper-record.create`, params, {
|
|
81
|
-
headers: {
|
|
82
|
-
Authorization: apiToken,
|
|
83
|
-
},
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
it(`should call ${mappers.update.name} with correct endpoint, headers and data`, async () => {
|
|
87
|
-
// Arrange
|
|
88
|
-
const params = {
|
|
89
|
-
id: id,
|
|
90
|
-
sync_unit: syncUnit,
|
|
91
|
-
external_ids: { add: externalIds },
|
|
92
|
-
targets: { add: targets },
|
|
93
|
-
status: mappers_interface_1.SyncMapperRecordStatus.OPERATIONAL,
|
|
94
|
-
};
|
|
95
|
-
mockAxiosClient.post.mockResolvedValue({ data: {} });
|
|
96
|
-
// Act
|
|
97
|
-
await mappers.update(params);
|
|
98
|
-
// Assert
|
|
99
|
-
expect(mockAxiosClient.post).toHaveBeenCalledWith(`${test_utils_1.MOCK_SERVER_DEFAULT_URL}/internal/airdrop.sync-mapper-record.update`, params, {
|
|
100
|
-
headers: {
|
|
101
|
-
Authorization: apiToken,
|
|
102
|
-
},
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
});
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { RequestInfo, RouteConfig } from './mock-server.interfaces';
|
|
2
|
-
/**
|
|
3
|
-
* MockServer used in tests to mock internal AirSync endpoints.
|
|
4
|
-
* This is a simple mock server that listens on a port and responds to requests.
|
|
5
|
-
* Supports per-test route configuration to simulate different response scenarios.
|
|
6
|
-
*/
|
|
7
|
-
export declare class MockServer {
|
|
8
|
-
private server;
|
|
9
|
-
private internalPort;
|
|
10
|
-
port: number;
|
|
11
|
-
baseUrl: string;
|
|
12
|
-
private routeHandlers;
|
|
13
|
-
private requests;
|
|
14
|
-
private requestCounts;
|
|
15
|
-
constructor(port?: number);
|
|
16
|
-
start(): Promise<void>;
|
|
17
|
-
stop(): Promise<void>;
|
|
18
|
-
private handleRequest;
|
|
19
|
-
/**
|
|
20
|
-
* Default route handler for the mock server. Returns { success: true } for
|
|
21
|
-
* routes that are not explicitly set.
|
|
22
|
-
*/
|
|
23
|
-
private defaultRouteHandler;
|
|
24
|
-
private getRouteKey;
|
|
25
|
-
/**
|
|
26
|
-
* Configures a route to return a specific status code and optional response body.
|
|
27
|
-
*/
|
|
28
|
-
setRoute(config: RouteConfig): void;
|
|
29
|
-
/**
|
|
30
|
-
* Resets all custom route handlers, restoring all default handlers.
|
|
31
|
-
* Also clears request tracking data.
|
|
32
|
-
*/
|
|
33
|
-
resetRoutes(): void;
|
|
34
|
-
/**
|
|
35
|
-
* Returns the most recent request or undefined if no requests exist.
|
|
36
|
-
*/
|
|
37
|
-
getLastRequest(): RequestInfo | undefined;
|
|
38
|
-
/**
|
|
39
|
-
* Gets the number of requests made to a specific endpoint.
|
|
40
|
-
*/
|
|
41
|
-
getRequestCount(method: string, path: string): number;
|
|
42
|
-
/**
|
|
43
|
-
* Gets all requests made to a specific endpoint.
|
|
44
|
-
*/
|
|
45
|
-
getRequests(method: string, path: string): RequestInfo[];
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=mock-server.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-server.d.ts","sourceRoot":"","sources":["../../src/mock-server/mock-server.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,WAAW,EACX,WAAW,EAEZ,MAAM,0BAA0B,CAAC;AAuElC;;;;GAIG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,YAAY,CAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,aAAa,CAA4B;gBAErC,IAAI,GAAE,MAAiC;IAMtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAkBpB,aAAa;IA+B3B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA6B3B,OAAO,CAAC,WAAW;IAInB;;OAEG;IACI,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAyE1C;;;OAGG;IACI,WAAW,IAAI,IAAI;IAM1B;;OAEG;IACI,cAAc,IAAI,WAAW,GAAG,SAAS;IAOhD;;OAEG;IACI,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAI5D;;OAEG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE;CAQhE"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { IncomingMessage, ServerResponse } from 'http';
|
|
2
|
-
export declare const DEFAULT_MOCK_SERVER_PORT = 3001;
|
|
3
|
-
export interface ParsedRequest extends IncomingMessage {
|
|
4
|
-
/** Parsed URL path (without query string) */
|
|
5
|
-
path: string;
|
|
6
|
-
/** Parsed JSON body (if any) */
|
|
7
|
-
body?: unknown;
|
|
8
|
-
}
|
|
9
|
-
export interface MockResponse extends ServerResponse {
|
|
10
|
-
/** Set response headers from a record */
|
|
11
|
-
set(headers: Record<string, string>): MockResponse;
|
|
12
|
-
/** Set the HTTP status code */
|
|
13
|
-
status(code: number): MockResponse;
|
|
14
|
-
/** Send a JSON response */
|
|
15
|
-
json(data: unknown): void;
|
|
16
|
-
/** Send an empty response */
|
|
17
|
-
send(): void;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Configuration for retry simulation behavior.
|
|
21
|
-
*/
|
|
22
|
-
export interface RetryConfig {
|
|
23
|
-
/** Number of times to return error before succeeding (default: 4) */
|
|
24
|
-
failureCount?: number;
|
|
25
|
-
/** 5xx status code to return during failures (default: 500) */
|
|
26
|
-
errorStatus?: number;
|
|
27
|
-
/** Optional error response body to send as JSON during failures */
|
|
28
|
-
errorBody?: unknown;
|
|
29
|
-
/** Optional headers to send with the error response */
|
|
30
|
-
headers?: Record<string, string>;
|
|
31
|
-
/** Optional delay in milliseconds before sending each failure response */
|
|
32
|
-
delay?: number;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Configuration object for setting up a route response.
|
|
36
|
-
*/
|
|
37
|
-
export interface RouteConfig {
|
|
38
|
-
/** The path of the route (e.g., '/callback_url', '/worker_data_url.get') */
|
|
39
|
-
path: string;
|
|
40
|
-
/** The HTTP method (e.g., 'GET', 'POST', 'PUT', 'DELETE') */
|
|
41
|
-
method: string;
|
|
42
|
-
/** The HTTP status code to return (e.g., 200, 401, 500) */
|
|
43
|
-
status: number;
|
|
44
|
-
/** Optional response body to send as JSON */
|
|
45
|
-
body?: unknown;
|
|
46
|
-
/** Optional headers to send with the response */
|
|
47
|
-
headers?: Record<string, string>;
|
|
48
|
-
/** Optional retry configuration for simulating failures before success */
|
|
49
|
-
retry?: RetryConfig;
|
|
50
|
-
/** Optional delay in milliseconds before sending the response */
|
|
51
|
-
delay?: number;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Type for custom route handler functions.
|
|
55
|
-
*/
|
|
56
|
-
export type RouteHandler = (req: ParsedRequest, res: MockResponse) => unknown;
|
|
57
|
-
/**
|
|
58
|
-
* Information about a request received by the mock server.
|
|
59
|
-
*/
|
|
60
|
-
export interface RequestInfo {
|
|
61
|
-
/** The HTTP method (e.g., 'GET', 'POST') */
|
|
62
|
-
method: string;
|
|
63
|
-
/** The full URL path of the request */
|
|
64
|
-
url: string;
|
|
65
|
-
/** Optional request body (for POST/PUT requests) */
|
|
66
|
-
body?: unknown;
|
|
67
|
-
}
|
|
68
|
-
export type RouteHandlers = Map<string, RouteHandler>;
|
|
69
|
-
/**
|
|
70
|
-
* Type for tracking request counts per route.
|
|
71
|
-
*/
|
|
72
|
-
export type RequestCounts = Map<string, number>;
|
|
73
|
-
//# sourceMappingURL=mock-server.interfaces.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock-server.interfaces.d.ts","sourceRoot":"","sources":["../../src/mock-server/mock-server.interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEvD,eAAO,MAAM,wBAAwB,OAAO,CAAC;AAE7C,MAAM,WAAW,aAAc,SAAQ,eAAe;IACpD,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD,yCAAyC;IACzC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,YAAY,CAAC;IACnD,+BAA+B;IAC/B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,2BAA2B;IAC3B,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,6BAA6B;IAC7B,IAAI,IAAI,IAAI,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,0EAA0E;IAC1E,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base-adapter.emit.test.d.ts","sourceRoot":"","sources":["../../../src/multithreading/adapters/base-adapter.emit.test.ts"],"names":[],"mappings":""}
|