@transcend-io/cli 4.23.1 → 4.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +46 -0
- package/build/cli-mark-request-data-silos-completed.d.ts +3 -0
- package/build/cli-mark-request-data-silos-completed.d.ts.map +1 -0
- package/build/cli-mark-request-data-silos-completed.js +44 -0
- package/build/cli-mark-request-data-silos-completed.js.map +1 -0
- package/build/codecs.d.ts +15 -10
- package/build/codecs.d.ts.map +1 -1
- package/build/codecs.js +10 -6
- package/build/codecs.js.map +1 -1
- package/build/cron/index.d.ts +1 -0
- package/build/cron/index.d.ts.map +1 -1
- package/build/cron/index.js +1 -0
- package/build/cron/index.js.map +1 -1
- package/build/cron/markRequestDataSiloIdsCompleted.d.ts +19 -0
- package/build/cron/markRequestDataSiloIdsCompleted.d.ts.map +1 -0
- package/build/cron/markRequestDataSiloIdsCompleted.js +75 -0
- package/build/cron/markRequestDataSiloIdsCompleted.js.map +1 -0
- package/build/graphql/fetchRequestDataSilo.d.ts +19 -0
- package/build/graphql/fetchRequestDataSilo.d.ts.map +1 -0
- package/build/graphql/fetchRequestDataSilo.js +24 -0
- package/build/graphql/fetchRequestDataSilo.js.map +1 -0
- package/build/graphql/gqls/RequestDataSilo.d.ts +3 -0
- package/build/graphql/gqls/RequestDataSilo.d.ts.map +1 -0
- package/build/graphql/gqls/RequestDataSilo.js +30 -0
- package/build/graphql/gqls/RequestDataSilo.js.map +1 -0
- package/build/graphql/gqls/index.d.ts +1 -0
- package/build/graphql/gqls/index.d.ts.map +1 -1
- package/build/graphql/gqls/index.js +1 -0
- package/build/graphql/gqls/index.js.map +1 -1
- package/build/graphql/index.d.ts +1 -0
- package/build/graphql/index.d.ts.map +1 -1
- package/build/graphql/index.js +1 -0
- package/build/graphql/index.js.map +1 -1
- package/build/tsbuildinfo +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -41,6 +41,10 @@
|
|
|
41
41
|
- [Authentication](#authentication-7)
|
|
42
42
|
- [Arguments](#arguments-7)
|
|
43
43
|
- [Usage](#usage-8)
|
|
44
|
+
- [tr-mark-request-data-silos-completed](#tr-mark-request-data-silos-completed)
|
|
45
|
+
- [Authentication](#authentication-8)
|
|
46
|
+
- [Arguments](#arguments-8)
|
|
47
|
+
- [Usage](#usage-9)
|
|
44
48
|
|
|
45
49
|
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
|
|
46
50
|
|
|
@@ -837,3 +841,45 @@ With specific concurrency
|
|
|
837
841
|
```sh
|
|
838
842
|
yarn tr-manual-enrichment-push-identifiers --auth=$TRANSCEND_API_KEY --concurrency=200
|
|
839
843
|
```
|
|
844
|
+
|
|
845
|
+
### tr-mark-request-data-silos-completed
|
|
846
|
+
|
|
847
|
+
This command takes in a CSV of Request IDs as well as a Data Silo ID and marks all associated privacy request jobs as completed.
|
|
848
|
+
This command is useful with the "Bulk Response" UI.
|
|
849
|
+
|
|
850
|
+
#### Authentication
|
|
851
|
+
|
|
852
|
+
In order to use this cli, you will first need to generate an API key on the Transcend Admin Dashboard (https://app.transcend.io/infrastructure/api-keys).
|
|
853
|
+
|
|
854
|
+
The API key must have the following scopes:
|
|
855
|
+
|
|
856
|
+
- "Manage Request Compilation"
|
|
857
|
+
|
|
858
|
+
#### Arguments
|
|
859
|
+
|
|
860
|
+
| Argument | Description | Type | Default | Required |
|
|
861
|
+
| ------------ | ----------------------------------------------------------------------------- | ------------------ | ------------------------- | -------- |
|
|
862
|
+
| auth | The Transcend API capable of pulling the cron identifiers. | string | N/A | true |
|
|
863
|
+
| dataSiloId | The ID of the data silo to pull in. | string - UUID | N/A | true |
|
|
864
|
+
| file | Path to the CSV file where identifiers will be written to. | string - file-path | ./request-identifiers.csv | false |
|
|
865
|
+
| transcendUrl | URL of the Transcend backend. Use https://api.us.transcend.io for US hosting. | string - URL | https://api.transcend.io | false |
|
|
866
|
+
|
|
867
|
+
### Usage
|
|
868
|
+
|
|
869
|
+
```sh
|
|
870
|
+
yarn tr-mark-request-data-silos-completed --auth=$TRANSCEND_API_KEY --dataSiloId=70810f2e-cf90-43f6-9776-901a5950599f
|
|
871
|
+
```
|
|
872
|
+
|
|
873
|
+
Pull to a specific file location
|
|
874
|
+
|
|
875
|
+
```sh
|
|
876
|
+
yarn tr-mark-request-data-silos-completed --auth=$TRANSCEND_API_KEY --dataSiloId=70810f2e-cf90-43f6-9776-901a5950599f \
|
|
877
|
+
--file=/Users/transcend/Desktop/test.csv
|
|
878
|
+
```
|
|
879
|
+
|
|
880
|
+
Specifying the backend URL, needed for US hosted backend infrastructure.
|
|
881
|
+
|
|
882
|
+
```sh
|
|
883
|
+
yarn tr-mark-request-data-silos-completed --auth=$TRANSCEND_API_KEY --dataSiloId=70810f2e-cf90-43f6-9776-901a5950599f \
|
|
884
|
+
--transcendUrl=https://api.us.transcend.io
|
|
885
|
+
```
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-mark-request-data-silos-completed.d.ts","sourceRoot":"","sources":["../src/cli-mark-request-data-silos-completed.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const yargs_parser_1 = __importDefault(require("yargs-parser"));
|
|
8
|
+
const colors_1 = __importDefault(require("colors"));
|
|
9
|
+
const logger_1 = require("./logger");
|
|
10
|
+
const cron_1 = require("./cron");
|
|
11
|
+
/**
|
|
12
|
+
* Given a set of Request IDs and a Data Silo ID, mark the RequestDataSilos as completed
|
|
13
|
+
*
|
|
14
|
+
* Requires an API key with scope:
|
|
15
|
+
* - "Manage Request Compilation"
|
|
16
|
+
*
|
|
17
|
+
* Dev Usage:
|
|
18
|
+
* yarn ts-node ./src/mark-request-data-silos-completed..ts --auth=asd123 \
|
|
19
|
+
* --dataSiloId=92636cda-b7c6-48c6-b1b1-2df574596cbc \
|
|
20
|
+
* --file=/Users/michaelfarrell/Desktop/test.csv
|
|
21
|
+
*
|
|
22
|
+
* Standard usage:
|
|
23
|
+
* yarn tr-mark-request-data-silos-completed. --auth=asd123 \
|
|
24
|
+
* --dataSiloId=92636cda-b7c6-48c6-b1b1-2df574596cbc \
|
|
25
|
+
* --file=/Users/michaelfarrell/Desktop/test.csv
|
|
26
|
+
*/
|
|
27
|
+
async function main() {
|
|
28
|
+
// Parse command line arguments
|
|
29
|
+
const { file = './request-identifiers.csv', transcendUrl = 'https://api.transcend.io', auth, dataSiloId, } = (0, yargs_parser_1.default)(process.argv.slice(2));
|
|
30
|
+
// Ensure auth is passed
|
|
31
|
+
if (!auth) {
|
|
32
|
+
logger_1.logger.error(colors_1.default.red('A Transcend API key must be provided. You can specify using --auth=asd123'));
|
|
33
|
+
process.exit(1);
|
|
34
|
+
}
|
|
35
|
+
// Upload privacy requests
|
|
36
|
+
await (0, cron_1.markRequestDataSiloIdsCompleted)({
|
|
37
|
+
file,
|
|
38
|
+
transcendUrl,
|
|
39
|
+
auth,
|
|
40
|
+
dataSiloId,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
main();
|
|
44
|
+
//# sourceMappingURL=cli-mark-request-data-silos-completed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-mark-request-data-silos-completed.js","sourceRoot":"","sources":["../src/cli-mark-request-data-silos-completed.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,oDAA4B;AAE5B,qCAAkC;AAClC,iCAAyD;AAEzD;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,IAAI;IACjB,+BAA+B;IAC/B,MAAM,EACJ,IAAI,GAAG,2BAA2B,EAClC,YAAY,GAAG,0BAA0B,EACzC,IAAI,EACJ,UAAU,GACX,GAAG,IAAA,sBAAK,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAA8B,CAAC;IAE9D,wBAAwB;IACxB,IAAI,CAAC,IAAI,EAAE;QACT,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CACR,2EAA2E,CAC5E,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,0BAA0B;IAC1B,MAAM,IAAA,sCAA+B,EAAC;QACpC,IAAI;QACJ,YAAY;QACZ,IAAI;QACJ,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC"}
|
package/build/codecs.d.ts
CHANGED
|
@@ -129,7 +129,7 @@ export declare type ProcessingPurposeInput = t.TypeOf<typeof ProcessingPurposeIn
|
|
|
129
129
|
/**
|
|
130
130
|
* The data category for a field
|
|
131
131
|
*/
|
|
132
|
-
export declare const DataCategoryInput: t.TypeC<{
|
|
132
|
+
export declare const DataCategoryInput: t.IntersectionC<[t.TypeC<{
|
|
133
133
|
/** The parent category */
|
|
134
134
|
category: t.KeyofC<{
|
|
135
135
|
OTHER: unknown;
|
|
@@ -149,9 +149,10 @@ export declare const DataCategoryInput: t.TypeC<{
|
|
|
149
149
|
SURVEY: unknown;
|
|
150
150
|
NOT_PERSONAL_DATA: unknown;
|
|
151
151
|
}>;
|
|
152
|
+
}>, t.PartialC<{
|
|
152
153
|
/** User-defined name for this sub category */
|
|
153
154
|
name: t.StringC;
|
|
154
|
-
}>;
|
|
155
|
+
}>]>;
|
|
155
156
|
export declare const Attributes: t.TypeC<{
|
|
156
157
|
key: t.StringC;
|
|
157
158
|
values: t.ArrayC<t.StringC>;
|
|
@@ -202,7 +203,7 @@ export declare const FieldInput: t.IntersectionC<[t.TypeC<{
|
|
|
202
203
|
*
|
|
203
204
|
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
204
205
|
*/
|
|
205
|
-
categories: t.ArrayC<t.TypeC<{
|
|
206
|
+
categories: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
206
207
|
/** The parent category */
|
|
207
208
|
category: t.KeyofC<{
|
|
208
209
|
OTHER: unknown;
|
|
@@ -222,9 +223,10 @@ export declare const FieldInput: t.IntersectionC<[t.TypeC<{
|
|
|
222
223
|
SURVEY: unknown;
|
|
223
224
|
NOT_PERSONAL_DATA: unknown;
|
|
224
225
|
}>;
|
|
226
|
+
}>, t.PartialC<{
|
|
225
227
|
/** User-defined name for this sub category */
|
|
226
228
|
name: t.StringC;
|
|
227
|
-
}>>;
|
|
229
|
+
}>]>>;
|
|
228
230
|
/**
|
|
229
231
|
* When true, this subdatapoint should be revealed in a data access request.
|
|
230
232
|
* When false, this field should be redacted
|
|
@@ -372,7 +374,7 @@ export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
|
372
374
|
*
|
|
373
375
|
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
374
376
|
*/
|
|
375
|
-
categories: t.ArrayC<t.TypeC<{
|
|
377
|
+
categories: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
376
378
|
/** The parent category */
|
|
377
379
|
category: t.KeyofC<{
|
|
378
380
|
OTHER: unknown;
|
|
@@ -392,9 +394,10 @@ export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
|
392
394
|
SURVEY: unknown;
|
|
393
395
|
NOT_PERSONAL_DATA: unknown;
|
|
394
396
|
}>;
|
|
397
|
+
}>, t.PartialC<{
|
|
395
398
|
/** User-defined name for this sub category */
|
|
396
399
|
name: t.StringC;
|
|
397
|
-
}>>;
|
|
400
|
+
}>]>>;
|
|
398
401
|
/**
|
|
399
402
|
* When true, this subdatapoint should be revealed in a data access request.
|
|
400
403
|
* When false, this field should be redacted
|
|
@@ -644,7 +647,7 @@ export declare const DataSiloInput: t.IntersectionC<[t.TypeC<{
|
|
|
644
647
|
*
|
|
645
648
|
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
646
649
|
*/
|
|
647
|
-
categories: t.ArrayC<t.TypeC<{
|
|
650
|
+
categories: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
648
651
|
/** The parent category */
|
|
649
652
|
category: t.KeyofC<{
|
|
650
653
|
OTHER: unknown;
|
|
@@ -664,9 +667,10 @@ export declare const DataSiloInput: t.IntersectionC<[t.TypeC<{
|
|
|
664
667
|
SURVEY: unknown;
|
|
665
668
|
NOT_PERSONAL_DATA: unknown;
|
|
666
669
|
}>;
|
|
670
|
+
}>, t.PartialC<{
|
|
667
671
|
/** User-defined name for this sub category */
|
|
668
672
|
name: t.StringC;
|
|
669
|
-
}>>;
|
|
673
|
+
}>]>>;
|
|
670
674
|
/**
|
|
671
675
|
* When true, this subdatapoint should be revealed in a data access request.
|
|
672
676
|
* When false, this field should be redacted
|
|
@@ -989,7 +993,7 @@ export declare const TranscendInput: t.PartialC<{
|
|
|
989
993
|
*
|
|
990
994
|
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
991
995
|
*/
|
|
992
|
-
categories: t.ArrayC<t.TypeC<{
|
|
996
|
+
categories: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
993
997
|
/** The parent category */
|
|
994
998
|
category: t.KeyofC<{
|
|
995
999
|
OTHER: unknown;
|
|
@@ -1009,9 +1013,10 @@ export declare const TranscendInput: t.PartialC<{
|
|
|
1009
1013
|
SURVEY: unknown;
|
|
1010
1014
|
NOT_PERSONAL_DATA: unknown;
|
|
1011
1015
|
}>;
|
|
1016
|
+
}>, t.PartialC<{
|
|
1012
1017
|
/** User-defined name for this sub category */
|
|
1013
1018
|
name: t.StringC;
|
|
1014
|
-
}>>;
|
|
1019
|
+
}>]>>;
|
|
1015
1020
|
/**
|
|
1016
1021
|
* When true, this subdatapoint should be revealed in a data access request.
|
|
1017
1022
|
* When false, this field should be redacted
|
package/build/codecs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAW3B;;;;;GAKG;AACH,eAAO,MAAM,aAAa;IACxB,gCAAgC;;EAEhC,CAAC;AAEH,oBAAoB;AACpB,oBAAY,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAE3D,eAAO,MAAM,aAAa;IAEtB,qCAAqC;;IAErC,+BAA+B;;;IAI/B,mCAAmC;;IAGrC,CAAC;AAEH,oBAAoB;AACpB,oBAAY,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAC3D;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;IACtB,wCAAwC;;EAExC,CAAC;AAEH,oBAAoB;AACpB,oBAAY,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEvD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa;IAEtB,wCAAwC;;IAExC,8BAA8B;;IAE9B;;;;OAIG;;IAEH;;;OAGG;;;;QAxDH,qCAAqC;;QAErC,+BAA+B;;;QAI/B,mCAAmC;;;IAuDnC,0DAA0D;;IAE1D,+DAA+D;;;;;;;;;;;;;;;;;;;;;;IAGjE,CAAC;AAEH,oBAAoB;AACpB,oBAAY,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,sBAAsB;IACjC,yBAAyB;;;;;;;;;;;;;;;;IAEzB,iEAAiE;;EAEjE,CAAC;AAEH,oBAAoB;AACpB,oBAAY,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,iBAAiB;
|
|
1
|
+
{"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":"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"}
|
package/build/codecs.js
CHANGED
|
@@ -109,12 +109,16 @@ exports.ProcessingPurposeInput = t.type({
|
|
|
109
109
|
/**
|
|
110
110
|
* The data category for a field
|
|
111
111
|
*/
|
|
112
|
-
exports.DataCategoryInput = t.
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
112
|
+
exports.DataCategoryInput = t.intersection([
|
|
113
|
+
t.type({
|
|
114
|
+
/** The parent category */
|
|
115
|
+
category: (0, type_utils_1.valuesOf)(privacy_types_1.DataCategoryType),
|
|
116
|
+
}),
|
|
117
|
+
t.partial({
|
|
118
|
+
/** User-defined name for this sub category */
|
|
119
|
+
name: t.string,
|
|
120
|
+
}),
|
|
121
|
+
]);
|
|
118
122
|
exports.Attributes = t.type({
|
|
119
123
|
key: t.string,
|
|
120
124
|
values: t.array(t.string),
|
package/build/codecs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codecs.js","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA+D;AAC/D,8BAA8B;AAC9B,yCAA2B;AAC3B,yDAA+D;AAC/D,+DAOqC;AAErC;;;;;GAKG;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,gCAAgC;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM;CAChB,CAAC,CAAC;AAKU,QAAA,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,CAAC,CAAC,IAAI,CAAC;QACL,qCAAqC;QACrC,IAAI,EAAE,CAAC,CAAC,MAAM;QACd,+BAA+B;QAC/B,KAAK,EAAE,CAAC,CAAC,MAAM;KAChB,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,mCAAmC;QACnC,QAAQ,EAAE,CAAC,CAAC,OAAO;KACpB,CAAC;CACH,CAAC,CAAC;AAIH;;;;;;;GAOG;AACU,QAAA,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC;IAChC,wCAAwC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM;CAChB,CAAC,CAAC;AAKH;;;;;;;;;;;GAWG;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,CAAC,CAAC,IAAI,CAAC;QACL,wCAAwC;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM;QACf,8BAA8B;QAC9B,GAAG,EAAE,CAAC,CAAC,MAAM;QACb;;;;WAIG;QACH,kBAAkB,EAAE,CAAC,CAAC,MAAM;QAC5B;;;WAGG;QACH,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;KACxC,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;QAC/B,0DAA0D;QAC1D,WAAW,EAAE,CAAC,CAAC,MAAM;QACrB,+DAA+D;QAC/D,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,IAAA,qBAAQ,EAAC,6BAAa,CAAC,CAAC;KACpD,CAAC;CACH,CAAC,CAAC;AAKH;;GAEG;AACU,QAAA,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC3C,yBAAyB;IACzB,OAAO,EAAE,IAAA,qBAAQ,EAAC,iCAAiB,CAAC;IACpC,iEAAiE;IACjE,IAAI,EAAE,CAAC,CAAC,MAAM;CACf,CAAC,CAAC;AAKH;;GAEG;AACU,QAAA,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"codecs.js","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA+D;AAC/D,8BAA8B;AAC9B,yCAA2B;AAC3B,yDAA+D;AAC/D,+DAOqC;AAErC;;;;;GAKG;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,gCAAgC;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM;CAChB,CAAC,CAAC;AAKU,QAAA,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,CAAC,CAAC,IAAI,CAAC;QACL,qCAAqC;QACrC,IAAI,EAAE,CAAC,CAAC,MAAM;QACd,+BAA+B;QAC/B,KAAK,EAAE,CAAC,CAAC,MAAM;KAChB,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,mCAAmC;QACnC,QAAQ,EAAE,CAAC,CAAC,OAAO;KACpB,CAAC;CACH,CAAC,CAAC;AAIH;;;;;;;GAOG;AACU,QAAA,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC;IAChC,wCAAwC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM;CAChB,CAAC,CAAC;AAKH;;;;;;;;;;;GAWG;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,CAAC,CAAC,IAAI,CAAC;QACL,wCAAwC;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM;QACf,8BAA8B;QAC9B,GAAG,EAAE,CAAC,CAAC,MAAM;QACb;;;;WAIG;QACH,kBAAkB,EAAE,CAAC,CAAC,MAAM;QAC5B;;;WAGG;QACH,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;KACxC,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;QAC/B,0DAA0D;QAC1D,WAAW,EAAE,CAAC,CAAC,MAAM;QACrB,+DAA+D;QAC/D,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,IAAA,qBAAQ,EAAC,6BAAa,CAAC,CAAC;KACpD,CAAC;CACH,CAAC,CAAC;AAKH;;GAEG;AACU,QAAA,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC3C,yBAAyB;IACzB,OAAO,EAAE,IAAA,qBAAQ,EAAC,iCAAiB,CAAC;IACpC,iEAAiE;IACjE,IAAI,EAAE,CAAC,CAAC,MAAM;CACf,CAAC,CAAC;AAKH;;GAEG;AACU,QAAA,iBAAiB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC9C,CAAC,CAAC,IAAI,CAAC;QACL,0BAA0B;QAC1B,QAAQ,EAAE,IAAA,qBAAQ,EAAC,gCAAgB,CAAC;KACrC,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,8CAA8C;QAC9C,IAAI,EAAE,CAAC,CAAC,MAAM;KACf,CAAC;CACH,CAAC,CAAC;AAEU,QAAA,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC;IAC/B,GAAG,EAAE,CAAC,CAAC,MAAM;IACb,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;CAC1B,CAAC,CAAC;AAQH;;;GAGG;AACU,QAAA,UAAU,GAAG,CAAC,CAAC,YAAY,CAAC;IACvC,CAAC,CAAC,IAAI,CAAC;QACL,6EAA6E;QAC7E,GAAG,EAAE,CAAC,CAAC,MAAM;KACd,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,qCAAqC;QACrC,KAAK,EAAE,CAAC,CAAC,MAAM;QACf,+BAA+B;QAC/B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACxC;;;;WAIG;QACH,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,8BAAsB,CAAC;QACzC;;;;WAIG;QACH,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,yBAAiB,CAAC;QACtC;;;WAGG;QACH,mCAAmC,EAAE,CAAC,CAAC,OAAO;QAC9C;;;;;WAKG;QACH,mCAAmC,EAAE,CAAC,CAAC,OAAO;QAC9C,wCAAwC;QACxC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAU,CAAC;KAChC,CAAC;CACH,CAAC,CAAC;AAKH;;;;;;GAMG;AACU,QAAA,cAAc,GAAG,CAAC,CAAC,YAAY,CAAC;IAC3C,CAAC,CAAC,IAAI,CAAC;QACL,+EAA+E;QAC/E,GAAG,EAAE,CAAC,CAAC,MAAM;KACd,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR;;;;;;;;;;WAUG;QACH,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACvB,wCAAwC;QACxC,KAAK,EAAE,CAAC,CAAC,MAAM;QACf,0DAA0D;QAC1D,WAAW,EAAE,CAAC,CAAC,MAAM;QACrB;;;;WAIG;QACH,qBAAqB,EAAE,CAAC,CAAC,MAAM;QAC/B;;;;WAIG;QACH,wBAAwB,EAAE,CAAC,CAAC,OAAO,CACjC,IAAA,sBAAS,EAAC,2CAA2B,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CACvD;QACD;;;;WAIG;QACH,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,IAAA,qBAAQ,EAAC,2CAA2B,CAAC,CAAC;QACjE;;;WAGG;QACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAU,CAAC;KAC5B,CAAC;CACH,CAAC,CAAC;AAKU,QAAA,0BAA0B,GAAG,CAAC,CAAC,OAAO,CAAC;IAClD,+EAA+E;IAC/E,sBAAsB,EAAE,CAAC,CAAC,MAAM;IAChC;;OAEG;IACH,gBAAgB,EAAE,CAAC,CAAC,MAAM;IAC1B;;;OAGG;IACH,WAAW,EAAE,IAAA,qBAAQ,EAAC,0CAA0B,CAAC;IACjD;;;OAGG;IACH,gCAAgC,EAAE,CAAC,CAAC,OAAO;IAC3C;;OAEG;IACH,sBAAsB,EAAE,IAAA,qBAAQ,EAAC,oDAAoC,CAAC;IACtE;;;OAGG;IACH,6BAA6B,EAAE,CAAC,CAAC,MAAM;CACxC,CAAC,CAAC;AAOH;;;;;;;GAOG;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,CAAC,CAAC,IAAI,CAAC;QACL,yCAAyC;QACzC,KAAK,EAAE,CAAC,CAAC,MAAM;QACf;;;WAGG;QACH,eAAe,EAAE,CAAC,CAAC,MAAM;KAC1B,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,uCAAuC;QACvC,WAAW,EAAE,CAAC,CAAC,MAAM;QACrB,0DAA0D;QAC1D,GAAG,EAAE,CAAC,CAAC,MAAM;QACb,gFAAgF;QAChF,eAAe,EAAE,CAAC,CAAC,MAAM;QACzB,oDAAoD;QACpD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;QAC/B;;;;WAIG;QACH,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAClC;;;WAGG;QACH,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAClC;;;;WAIG;QACH,uBAAuB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1C;;;WAGG;QACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACzB;;;;;;WAMG;QACH,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACxB;;;WAGG;QACH,QAAQ,EAAE,CAAC,CAAC,OAAO;QACnB;;;WAGG;QACH,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAc,CAAC;QACnC;;WAEG;QACH,gBAAgB,EAAE,kCAA0B;QAC5C;;WAEG;QACH,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAU,CAAC;KAChC,CAAC;CACH,CAAC,CAAC;AAKU,QAAA,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC;IACtC;;OAEG;IACH,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAW,CAAC;IAChC;;OAEG;IACH,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;IACjC;;OAEG;IACH,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;IACjC;;OAEG;IACH,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;CACrC,CAAC,CAAC"}
|
package/build/cron/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cron/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cron/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,YAAY,CAAC;AAC3B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC"}
|
package/build/cron/index.js
CHANGED
|
@@ -15,4 +15,5 @@ __exportStar(require("./pullCronPageOfIdentifiers"), exports);
|
|
|
15
15
|
__exportStar(require("./writeCsv"), exports);
|
|
16
16
|
__exportStar(require("./pushCronIdentifiersFromCsv"), exports);
|
|
17
17
|
__exportStar(require("./markCronIdentifierCompleted"), exports);
|
|
18
|
+
__exportStar(require("./markRequestDataSiloIdsCompleted"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
package/build/cron/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cron/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6DAA2C;AAC3C,8DAA4C;AAC5C,6CAA2B;AAC3B,+DAA6C;AAC7C,gEAA8C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cron/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6DAA2C;AAC3C,8DAA4C;AAC5C,6CAA2B;AAC3B,+DAA6C;AAC7C,gEAA8C;AAC9C,oEAAkD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Given a CSV of Request IDs, mark associated RequestDataSilos as completed
|
|
3
|
+
*
|
|
4
|
+
* @param options - Options
|
|
5
|
+
* @returns Number of items marked as completed
|
|
6
|
+
*/
|
|
7
|
+
export declare function markRequestDataSiloIdsCompleted({ file, dataSiloId, auth, concurrency, transcendUrl, }: {
|
|
8
|
+
/** CSV file path */
|
|
9
|
+
file: string;
|
|
10
|
+
/** Transcend API key authentication */
|
|
11
|
+
auth: string;
|
|
12
|
+
/** Data Silo ID to pull down jobs for */
|
|
13
|
+
dataSiloId: string;
|
|
14
|
+
/** Upload concurrency */
|
|
15
|
+
concurrency?: number;
|
|
16
|
+
/** API URL for Transcend backend */
|
|
17
|
+
transcendUrl?: string;
|
|
18
|
+
}): Promise<number>;
|
|
19
|
+
//# sourceMappingURL=markRequestDataSiloIdsCompleted.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markRequestDataSiloIdsCompleted.d.ts","sourceRoot":"","sources":["../../src/cron/markRequestDataSiloIdsCompleted.ts"],"names":[],"mappings":"AAiBA;;;;;GAKG;AACH,wBAAsB,+BAA+B,CAAC,EACpD,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,WAAiB,EACjB,YAAyC,GAC1C,EAAE;IACD,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,OAAO,CAAC,MAAM,CAAC,CAyDlB"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.markRequestDataSiloIdsCompleted = void 0;
|
|
26
|
+
const bluebird_1 = require("bluebird");
|
|
27
|
+
const colors_1 = __importDefault(require("colors"));
|
|
28
|
+
const logger_1 = require("../logger");
|
|
29
|
+
const requests_1 = require("../requests");
|
|
30
|
+
const graphql_1 = require("../graphql");
|
|
31
|
+
const t = __importStar(require("io-ts"));
|
|
32
|
+
const cli_progress_1 = __importDefault(require("cli-progress"));
|
|
33
|
+
const RequestIdRow = t.type({
|
|
34
|
+
'Request Id': t.string,
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
* Given a CSV of Request IDs, mark associated RequestDataSilos as completed
|
|
38
|
+
*
|
|
39
|
+
* @param options - Options
|
|
40
|
+
* @returns Number of items marked as completed
|
|
41
|
+
*/
|
|
42
|
+
async function markRequestDataSiloIdsCompleted({ file, dataSiloId, auth, concurrency = 100, transcendUrl = 'https://api.transcend.io', }) {
|
|
43
|
+
// Find all requests made before createdAt that are in a removing data state
|
|
44
|
+
const client = (0, graphql_1.buildTranscendGraphQLClient)(transcendUrl, auth);
|
|
45
|
+
// Time duration
|
|
46
|
+
const t0 = new Date().getTime();
|
|
47
|
+
// create a new progress bar instance and use shades_classic theme
|
|
48
|
+
const progressBar = new cli_progress_1.default.SingleBar({}, cli_progress_1.default.Presets.shades_classic);
|
|
49
|
+
// Read from CSV
|
|
50
|
+
logger_1.logger.info(colors_1.default.magenta(`Reading "${file}" from disk`));
|
|
51
|
+
const activeResults = (0, requests_1.readCsv)(file, RequestIdRow);
|
|
52
|
+
// Notify Transcend
|
|
53
|
+
logger_1.logger.info(colors_1.default.magenta(`Notifying Transcend for data silo "${dataSiloId}" marking "${activeResults.length}" requests as completed.`));
|
|
54
|
+
let total = 0;
|
|
55
|
+
progressBar.start(activeResults.length, 0);
|
|
56
|
+
await (0, bluebird_1.map)(activeResults, async (identifier) => {
|
|
57
|
+
const requestDataSilo = await (0, graphql_1.fetchRequestDataSilo)(client, {
|
|
58
|
+
requestId: identifier['Request Id'],
|
|
59
|
+
dataSiloId,
|
|
60
|
+
});
|
|
61
|
+
await (0, graphql_1.makeGraphQLRequest)(client, graphql_1.CHANGE_REQUEST_DATA_SILO_STATUS, {
|
|
62
|
+
requestDataSiloId: requestDataSilo.id,
|
|
63
|
+
status: 'RESOLVED',
|
|
64
|
+
});
|
|
65
|
+
total += 1;
|
|
66
|
+
progressBar.update(total);
|
|
67
|
+
}, { concurrency });
|
|
68
|
+
progressBar.stop();
|
|
69
|
+
const t1 = new Date().getTime();
|
|
70
|
+
const totalTime = t1 - t0;
|
|
71
|
+
logger_1.logger.info(colors_1.default.green(`Successfully notified Transcend in "${totalTime / 1000}" seconds!`));
|
|
72
|
+
return activeResults.length;
|
|
73
|
+
}
|
|
74
|
+
exports.markRequestDataSiloIdsCompleted = markRequestDataSiloIdsCompleted;
|
|
75
|
+
//# sourceMappingURL=markRequestDataSiloIdsCompleted.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markRequestDataSiloIdsCompleted.js","sourceRoot":"","sources":["../../src/cron/markRequestDataSiloIdsCompleted.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA+B;AAC/B,oDAA4B;AAC5B,sCAAmC;AACnC,0CAAsC;AACtC,wCAKoB;AACpB,yCAA2B;AAC3B,gEAAuC;AAEvC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1B,YAAY,EAAE,CAAC,CAAC,MAAM;CACvB,CAAC,CAAC;AAEH;;;;;GAKG;AACI,KAAK,UAAU,+BAA+B,CAAC,EACpD,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,WAAW,GAAG,GAAG,EACjB,YAAY,GAAG,0BAA0B,GAY1C;IACC,4EAA4E;IAC5E,MAAM,MAAM,GAAG,IAAA,qCAA2B,EAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAE/D,gBAAgB;IAChB,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAChC,kEAAkE;IAClE,MAAM,WAAW,GAAG,IAAI,sBAAW,CAAC,SAAS,CAC3C,EAAE,EACF,sBAAW,CAAC,OAAO,CAAC,cAAc,CACnC,CAAC;IAEF,gBAAgB;IAChB,eAAM,CAAC,IAAI,CAAC,gBAAM,CAAC,OAAO,CAAC,YAAY,IAAI,aAAa,CAAC,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,IAAA,kBAAO,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAElD,mBAAmB;IACnB,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,OAAO,CACZ,sCAAsC,UAAU,cAAc,aAAa,CAAC,MAAM,0BAA0B,CAC7G,CACF,CAAC;IAEF,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC3C,MAAM,IAAA,cAAG,EACP,aAAa,EACb,KAAK,EAAE,UAAU,EAAE,EAAE;QACnB,MAAM,eAAe,GAAG,MAAM,IAAA,8BAAoB,EAAC,MAAM,EAAE;YACzD,SAAS,EAAE,UAAU,CAAC,YAAY,CAAC;YACnC,UAAU;SACX,CAAC,CAAC;QAEH,MAAM,IAAA,4BAAkB,EAGrB,MAAM,EAAE,yCAA+B,EAAE;YAC1C,iBAAiB,EAAE,eAAe,CAAC,EAAE;YACrC,MAAM,EAAE,UAAU;SACnB,CAAC,CAAC;QAEH,KAAK,IAAI,CAAC,CAAC;QACX,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,EACD,EAAE,WAAW,EAAE,CAChB,CAAC;IAEF,WAAW,CAAC,IAAI,EAAE,CAAC;IACnB,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,CAAC;IAE1B,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,KAAK,CACV,uCAAuC,SAAS,GAAG,IAAI,YAAY,CACpE,CACF,CAAC;IACF,OAAO,aAAa,CAAC,MAAM,CAAC;AAC9B,CAAC;AA1ED,0EA0EC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { GraphQLClient } from 'graphql-request';
|
|
2
|
+
export interface RequestDataSilo {
|
|
3
|
+
/** ID of RequestDataSilo */
|
|
4
|
+
id: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Fetch all request identifiers for a particular request
|
|
8
|
+
*
|
|
9
|
+
* @param client - GraphQL client
|
|
10
|
+
* @param options - Filter options
|
|
11
|
+
* @returns List of request identifiers
|
|
12
|
+
*/
|
|
13
|
+
export declare function fetchRequestDataSilo(client: GraphQLClient, { requestId, dataSiloId, }: {
|
|
14
|
+
/** ID of request to filter on */
|
|
15
|
+
requestId: string;
|
|
16
|
+
/** Data silo ID */
|
|
17
|
+
dataSiloId: string;
|
|
18
|
+
}): Promise<RequestDataSilo>;
|
|
19
|
+
//# sourceMappingURL=fetchRequestDataSilo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchRequestDataSilo.d.ts","sourceRoot":"","sources":["../../src/graphql/fetchRequestDataSilo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,WAAW,eAAe;IAC9B,4BAA4B;IAC5B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,aAAa,EACrB,EACE,SAAS,EACT,UAAU,GACX,EAAE;IACD,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,GACA,OAAO,CAAC,eAAe,CAAC,CAc1B"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchRequestDataSilo = void 0;
|
|
4
|
+
const gqls_1 = require("./gqls");
|
|
5
|
+
const makeGraphQLRequest_1 = require("./makeGraphQLRequest");
|
|
6
|
+
/**
|
|
7
|
+
* Fetch all request identifiers for a particular request
|
|
8
|
+
*
|
|
9
|
+
* @param client - GraphQL client
|
|
10
|
+
* @param options - Filter options
|
|
11
|
+
* @returns List of request identifiers
|
|
12
|
+
*/
|
|
13
|
+
async function fetchRequestDataSilo(client, { requestId, dataSiloId, }) {
|
|
14
|
+
const { requestDataSilos: { nodes }, } = await (0, makeGraphQLRequest_1.makeGraphQLRequest)(client, gqls_1.REQUEST_DATA_SILOS, {
|
|
15
|
+
dataSiloId,
|
|
16
|
+
requestId,
|
|
17
|
+
});
|
|
18
|
+
if (nodes.length !== 1) {
|
|
19
|
+
throw new Error(`Failed to find RequestDataSilo with requestId:${requestId},dataSiloId:${dataSiloId}`);
|
|
20
|
+
}
|
|
21
|
+
return nodes[0];
|
|
22
|
+
}
|
|
23
|
+
exports.fetchRequestDataSilo = fetchRequestDataSilo;
|
|
24
|
+
//# sourceMappingURL=fetchRequestDataSilo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchRequestDataSilo.js","sourceRoot":"","sources":["../../src/graphql/fetchRequestDataSilo.ts"],"names":[],"mappings":";;;AACA,iCAA4C;AAC5C,6DAA0D;AAO1D;;;;;;GAMG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAqB,EACrB,EACE,SAAS,EACT,UAAU,GAMX;IAED,MAAM,EACJ,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAC5B,GAAG,MAAM,IAAA,uCAAkB,EAAC,MAAM,EAAE,yBAAkB,EAAE;QACvD,UAAU;QACV,SAAS;KACV,CAAC,CAAC;IACH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,MAAM,IAAI,KAAK,CACb,iDAAiD,SAAS,eAAe,UAAU,EAAE,CACtF,CAAC;KACH;IAED,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAzBD,oDAyBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestDataSilo.d.ts","sourceRoot":"","sources":["../../../src/graphql/gqls/RequestDataSilo.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,QAU9B,CAAC;AAEF,eAAO,MAAM,+BAA+B,QAa3C,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CHANGE_REQUEST_DATA_SILO_STATUS = exports.REQUEST_DATA_SILOS = void 0;
|
|
4
|
+
const graphql_request_1 = require("graphql-request");
|
|
5
|
+
exports.REQUEST_DATA_SILOS = (0, graphql_request_1.gql) `
|
|
6
|
+
query TranscendCliRequestDataSilos($requestId: ID!, $dataSiloId: ID!) {
|
|
7
|
+
requestDataSilos(
|
|
8
|
+
filterBy: { requestId: $requestId, dataSiloId: $dataSiloId }
|
|
9
|
+
) {
|
|
10
|
+
nodes {
|
|
11
|
+
id
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
exports.CHANGE_REQUEST_DATA_SILO_STATUS = (0, graphql_request_1.gql) `
|
|
17
|
+
mutation TranscendCliMarkRequestDataSiloCompleted(
|
|
18
|
+
$requestDataSiloId: ID!
|
|
19
|
+
$status: UpdateRequestDataSiloStatus!
|
|
20
|
+
) {
|
|
21
|
+
changeRequestDataSiloStatus(
|
|
22
|
+
input: { id: $requestDataSiloId, status: $status }
|
|
23
|
+
) {
|
|
24
|
+
requestDataSilo {
|
|
25
|
+
id
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
30
|
+
//# sourceMappingURL=RequestDataSilo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestDataSilo.js","sourceRoot":"","sources":["../../../src/graphql/gqls/RequestDataSilo.ts"],"names":[],"mappings":";;;AAAA,qDAAsC;AAEzB,QAAA,kBAAkB,GAAG,IAAA,qBAAG,EAAA;;;;;;;;;;CAUpC,CAAC;AAEW,QAAA,+BAA+B,GAAG,IAAA,qBAAG,EAAA;;;;;;;;;;;;;CAajD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/gqls/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/gqls/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
|
|
@@ -23,4 +23,5 @@ __exportStar(require("./attributeKey"), exports);
|
|
|
23
23
|
__exportStar(require("./request"), exports);
|
|
24
24
|
__exportStar(require("./RequestIdentifier"), exports);
|
|
25
25
|
__exportStar(require("./RequestEnricher"), exports);
|
|
26
|
+
__exportStar(require("./RequestDataSilo"), exports);
|
|
26
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/gqls/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4B;AAC5B,6CAA2B;AAC3B,6CAA2B;AAC3B,+CAA6B;AAC7B,gDAA8B;AAC9B,2CAAyB;AACzB,kDAAgC;AAChC,6CAA2B;AAC3B,iDAA+B;AAC/B,iDAA+B;AAC/B,4CAA0B;AAC1B,sDAAoC;AACpC,oDAAkC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/gqls/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4B;AAC5B,6CAA2B;AAC3B,6CAA2B;AAC3B,+CAA6B;AAC7B,gDAA8B;AAC9B,2CAAyB;AACzB,kDAAgC;AAChC,6CAA2B;AAC3B,iDAA+B;AAC/B,iDAA+B;AAC/B,4CAA0B;AAC1B,sDAAoC;AACpC,oDAAkC;AAClC,oDAAkC"}
|
package/build/graphql/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graphql/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC;AACvB,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graphql/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC;AACvB,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC"}
|
package/build/graphql/index.js
CHANGED
|
@@ -28,4 +28,5 @@ __exportStar(require("./fetchAllAttributeKeys"), exports);
|
|
|
28
28
|
__exportStar(require("./fetchAllRequests"), exports);
|
|
29
29
|
__exportStar(require("./fetchAllRequestIdentifiers"), exports);
|
|
30
30
|
__exportStar(require("./fetchAllRequestEnrichers"), exports);
|
|
31
|
+
__exportStar(require("./fetchRequestDataSilo"), exports);
|
|
31
32
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graphql/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA6C;AAC7C,iDAA+B;AAC/B,sDAAoC;AACpC,qDAAmC;AACnC,+DAA6C;AAC7C,iEAA+C;AAC/C,kDAAgC;AAChC,kDAAgC;AAChC,+DAA6C;AAC7C,kDAAgC;AAChC,uDAAqC;AACrC,4DAA0C;AAC1C,gEAA8C;AAC9C,yCAAuB;AACvB,0DAAwC;AACxC,qDAAmC;AACnC,+DAA6C;AAC7C,6DAA2C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graphql/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA6C;AAC7C,iDAA+B;AAC/B,sDAAoC;AACpC,qDAAmC;AACnC,+DAA6C;AAC7C,iEAA+C;AAC/C,kDAAgC;AAChC,kDAAgC;AAChC,+DAA6C;AAC7C,kDAAgC;AAChC,uDAAqC;AACrC,4DAA0C;AAC1C,gEAA8C;AAC9C,yCAAuB;AACvB,0DAAwC;AACxC,qDAAmC;AACnC,+DAA6C;AAC7C,6DAA2C;AAC3C,yDAAuC"}
|