@transcend-io/cli 4.65.0 → 4.68.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.
- package/README.md +13 -0
- package/build/cli-manual-enrichment-push-identifiers.js +2 -1
- package/build/cli-manual-enrichment-push-identifiers.js.map +1 -1
- package/build/logger.d.ts.map +1 -1
- package/build/logger.js +18 -0
- package/build/logger.js.map +1 -1
- package/build/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.d.ts +3 -1
- package/build/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.d.ts.map +1 -1
- package/build/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.js +12 -1
- package/build/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.js.map +1 -1
- package/build/tsbuildinfo +1 -1
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -89,6 +89,7 @@
|
|
|
89
89
|
- [Authentication](#authentication-19)
|
|
90
90
|
- [Arguments](#arguments-19)
|
|
91
91
|
- [Usage](#usage-20)
|
|
92
|
+
- [Proxy usage](#proxy-usage)
|
|
92
93
|
|
|
93
94
|
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
|
|
94
95
|
|
|
@@ -1237,6 +1238,7 @@ In order to use this cli, you will first need to generate an API key on the Tran
|
|
|
1237
1238
|
The API key must have the following scopes:
|
|
1238
1239
|
|
|
1239
1240
|
- "Manage Request Identity Verification"
|
|
1241
|
+
- "Manage Request Compilation" (only when specifying `markSilent`)
|
|
1240
1242
|
|
|
1241
1243
|
#### Arguments
|
|
1242
1244
|
|
|
@@ -1247,6 +1249,7 @@ The API key must have the following scopes:
|
|
|
1247
1249
|
| sombraAuth | The sombra internal key, use for additional authentication when self-hosting sombra. | string | N/A | false |
|
|
1248
1250
|
| transcendUrl | URL of the Transcend backend. Use https://api.us.transcend.io for US hosting. | string - URL | https://api.transcend.io | false |
|
|
1249
1251
|
| file | Path to the CSV file where requests will be written to. | string - file-path | ./manual-enrichment-identifiers.csv | false |
|
|
1252
|
+
| markSilent | When true, set requests into silent mode before enriching | boolean | false | false |
|
|
1250
1253
|
| concurrency | The concurrency to use when uploading requests in parallel. | number | 100 | false |
|
|
1251
1254
|
|
|
1252
1255
|
#### Usage
|
|
@@ -1279,6 +1282,12 @@ With specific concurrency
|
|
|
1279
1282
|
yarn tr-manual-enrichment-push-identifiers --auth=$TRANSCEND_API_KEY --enricherId=27d45a0d-7d03-47fa-9b30-6d697005cfcf --concurrency=200
|
|
1280
1283
|
```
|
|
1281
1284
|
|
|
1285
|
+
When enriching requests, mark all requests as silent mode before processing
|
|
1286
|
+
|
|
1287
|
+
```sh
|
|
1288
|
+
yarn tr-manual-enrichment-push-identifiers --auth=$TRANSCEND_API_KEY --enricherId=27d45a0d-7d03-47fa-9b30-6d697005cfcf --markSilent=true
|
|
1289
|
+
```
|
|
1290
|
+
|
|
1282
1291
|
### tr-mark-request-data-silos-completed
|
|
1283
1292
|
|
|
1284
1293
|
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.
|
|
@@ -1706,3 +1715,7 @@ Override XDI allowed commands
|
|
|
1706
1715
|
```sh
|
|
1707
1716
|
yarn tr-build-xdi-sync-endpoint --auth=$TRANSCEND_API_KEY --xdiLocation=https://cdn.your-site.com/xdi.js --xdiAllowedCommands="ExtractIdentifiers:Simple"
|
|
1708
1717
|
```
|
|
1718
|
+
|
|
1719
|
+
## Proxy usage
|
|
1720
|
+
|
|
1721
|
+
If you are trying to use the cli inside a corporate firewall and need to send traffic through a proxy, you can do so via the `http_proxy` environment variable or the `--httpProxy` flag, with a command like `yarn tr-pull --auth=$TRANSCEND_API_KEY --httpProxy="http://localhost:5051"`.
|
|
@@ -24,7 +24,7 @@ const constants_1 = require("./constants");
|
|
|
24
24
|
*/
|
|
25
25
|
async function main() {
|
|
26
26
|
// Parse command line arguments
|
|
27
|
-
const { file = './manual-enrichment-identifiers.csv', transcendUrl = constants_1.DEFAULT_TRANSCEND_API, auth, enricherId, sombraAuth, concurrency = '100', } = (0, yargs_parser_1.default)(process.argv.slice(2));
|
|
27
|
+
const { file = './manual-enrichment-identifiers.csv', transcendUrl = constants_1.DEFAULT_TRANSCEND_API, auth, enricherId, sombraAuth, markSilent = 'false', concurrency = '100', } = (0, yargs_parser_1.default)(process.argv.slice(2));
|
|
28
28
|
// Ensure auth is passed
|
|
29
29
|
if (!auth) {
|
|
30
30
|
logger_1.logger.error(colors_1.default.red('A Transcend API key must be provided. You can specify using --auth=$TRANSCEND_API_KEY'));
|
|
@@ -42,6 +42,7 @@ async function main() {
|
|
|
42
42
|
transcendUrl,
|
|
43
43
|
enricherId,
|
|
44
44
|
concurrency: parseInt(concurrency, 10),
|
|
45
|
+
markSilent: markSilent === 'true',
|
|
45
46
|
auth,
|
|
46
47
|
sombraAuth,
|
|
47
48
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-manual-enrichment-push-identifiers.js","sourceRoot":"","sources":["../src/cli-manual-enrichment-push-identifiers.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,oDAA4B;AAE5B,qCAAkC;AAClC,2DAA6E;AAC7E,2CAAoD;AAEpD;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,IAAI;IACjB,+BAA+B;IAC/B,MAAM,EACJ,IAAI,GAAG,qCAAqC,EAC5C,YAAY,GAAG,iCAAqB,EACpC,IAAI,EACJ,UAAU,EACV,UAAU,EACV,WAAW,GAAG,KAAK,GACpB,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,uFAAuF,CACxF,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,gCAAgC;IAChC,IAAI,CAAC,UAAU,EAAE;QACf,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CACR,mCAAmC;YACjC,yEAAyE,CAC5E,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,qCAAqC;IACrC,MAAM,IAAA,0DAAsC,EAAC;QAC3C,IAAI;QACJ,YAAY;QACZ,UAAU;QACV,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACtC,IAAI;QACJ,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli-manual-enrichment-push-identifiers.js","sourceRoot":"","sources":["../src/cli-manual-enrichment-push-identifiers.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,oDAA4B;AAE5B,qCAAkC;AAClC,2DAA6E;AAC7E,2CAAoD;AAEpD;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,IAAI;IACjB,+BAA+B;IAC/B,MAAM,EACJ,IAAI,GAAG,qCAAqC,EAC5C,YAAY,GAAG,iCAAqB,EACpC,IAAI,EACJ,UAAU,EACV,UAAU,EACV,UAAU,GAAG,OAAO,EACpB,WAAW,GAAG,KAAK,GACpB,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,uFAAuF,CACxF,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,gCAAgC;IAChC,IAAI,CAAC,UAAU,EAAE;QACf,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CACR,mCAAmC;YACjC,yEAAyE,CAC5E,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,qCAAqC;IACrC,MAAM,IAAA,0DAAsC,EAAC;QAC3C,IAAI;QACJ,YAAY;QACZ,UAAU;QACV,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACtC,UAAU,EAAE,UAAU,KAAK,MAAM;QACjC,IAAI;QACJ,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC"}
|
package/build/logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,MAAM,SAAU,CAAC"}
|
package/build/logger.js
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.logger = void 0;
|
|
7
|
+
const colors_1 = __importDefault(require("colors"));
|
|
8
|
+
const global_agent_1 = require("global-agent");
|
|
9
|
+
const undici_1 = require("undici");
|
|
10
|
+
const yargs_parser_1 = __importDefault(require("yargs-parser"));
|
|
4
11
|
exports.logger = console;
|
|
12
|
+
// When the proxy env var of flag is specified, initiate the proxy
|
|
13
|
+
const { httpProxy = process.env.http_proxy } = (0, yargs_parser_1.default)(process.argv.slice(2));
|
|
14
|
+
exports.logger.info(colors_1.default.magenta(`Got httpProxy parameter of '${httpProxy}'`));
|
|
15
|
+
if (httpProxy) {
|
|
16
|
+
exports.logger.info(colors_1.default.green(`Initializing proxy: ${httpProxy}`));
|
|
17
|
+
// Use global-agent, which overrides `request` based requests
|
|
18
|
+
process.env.GLOBAL_AGENT_HTTP_PROXY = httpProxy;
|
|
19
|
+
(0, global_agent_1.bootstrap)();
|
|
20
|
+
// Use undici, which overrides `fetch` based requests
|
|
21
|
+
(0, undici_1.setGlobalDispatcher)(new undici_1.ProxyAgent(httpProxy));
|
|
22
|
+
}
|
|
5
23
|
//# sourceMappingURL=logger.js.map
|
package/build/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,+CAAyC;AACzC,mCAAyD;AACzD,gEAAiC;AAEpB,QAAA,MAAM,GAAG,OAAO,CAAC;AAE9B,kEAAkE;AAClE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,IAAA,sBAAK,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,cAAM,CAAC,IAAI,CAAC,gBAAM,CAAC,OAAO,CAAC,+BAA+B,SAAS,GAAG,CAAC,CAAC,CAAC;AACzE,IAAI,SAAS,EAAE;IACb,cAAM,CAAC,IAAI,CAAC,gBAAM,CAAC,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC,CAAC;IAE9D,6DAA6D;IAC7D,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,SAAS,CAAC;IAChD,IAAA,wBAAS,GAAE,CAAC;IAEZ,qDAAqD;IACrD,IAAA,4BAAmB,EAAC,IAAI,mBAAU,CAAC,SAAS,CAAC,CAAC,CAAC;CAChD"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @param options - Options
|
|
5
5
|
* @returns Number of items processed
|
|
6
6
|
*/
|
|
7
|
-
export declare function pushManualEnrichmentIdentifiersFromCsv({ file, auth, sombraAuth, enricherId, concurrency, transcendUrl, }: {
|
|
7
|
+
export declare function pushManualEnrichmentIdentifiersFromCsv({ file, auth, sombraAuth, enricherId, markSilent, concurrency, transcendUrl, }: {
|
|
8
8
|
/** CSV file path */
|
|
9
9
|
file: string;
|
|
10
10
|
/** Transcend API key authentication */
|
|
@@ -17,5 +17,7 @@ export declare function pushManualEnrichmentIdentifiersFromCsv({ file, auth, som
|
|
|
17
17
|
concurrency?: number;
|
|
18
18
|
/** API URL for Transcend backend */
|
|
19
19
|
transcendUrl?: string;
|
|
20
|
+
/** Mark requests in silent mode before enriching */
|
|
21
|
+
markSilent?: boolean;
|
|
20
22
|
}): Promise<number>;
|
|
21
23
|
//# sourceMappingURL=pushManualEnrichmentIdentifiersFromCsv.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pushManualEnrichmentIdentifiersFromCsv.d.ts","sourceRoot":"","sources":["../../src/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pushManualEnrichmentIdentifiersFromCsv.d.ts","sourceRoot":"","sources":["../../src/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.ts"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH,wBAAsB,sCAAsC,CAAC,EAC3D,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAiB,EACjB,YAAoC,GACrC,EAAE;IACD,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsElB"}
|
|
@@ -17,9 +17,10 @@ const constants_1 = require("../constants");
|
|
|
17
17
|
* @param options - Options
|
|
18
18
|
* @returns Number of items processed
|
|
19
19
|
*/
|
|
20
|
-
async function pushManualEnrichmentIdentifiersFromCsv({ file, auth, sombraAuth, enricherId, concurrency = 100, transcendUrl = constants_1.DEFAULT_TRANSCEND_API, }) {
|
|
20
|
+
async function pushManualEnrichmentIdentifiersFromCsv({ file, auth, sombraAuth, enricherId, markSilent, concurrency = 100, transcendUrl = constants_1.DEFAULT_TRANSCEND_API, }) {
|
|
21
21
|
// Create sombra instance to communicate with
|
|
22
22
|
const sombra = await (0, graphql_1.createSombraGotInstance)(transcendUrl, auth, sombraAuth);
|
|
23
|
+
const client = (0, graphql_1.buildTranscendGraphQLClient)(transcendUrl, auth);
|
|
23
24
|
// Read from CSV
|
|
24
25
|
logger_1.logger.info(colors_1.default.magenta(`Reading "${file}" from disk`));
|
|
25
26
|
const activeResults = (0, requests_1.readCsv)(file, enrichPrivacyRequest_1.EnrichPrivacyRequest);
|
|
@@ -30,6 +31,16 @@ async function pushManualEnrichmentIdentifiersFromCsv({ file, auth, sombraAuth,
|
|
|
30
31
|
let errorCount = 0;
|
|
31
32
|
await (0, bluebird_1.map)(activeResults, async (request, index) => {
|
|
32
33
|
try {
|
|
34
|
+
// Mark requests in silent mode before a certain date
|
|
35
|
+
if (markSilent) {
|
|
36
|
+
await (0, graphql_1.makeGraphQLRequest)(client, graphql_1.UPDATE_PRIVACY_REQUEST, {
|
|
37
|
+
input: {
|
|
38
|
+
id: request.id,
|
|
39
|
+
isSilent: true,
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
logger_1.logger.info(colors_1.default.magenta(`Mark request as silent mode - ${request.id}`));
|
|
43
|
+
}
|
|
33
44
|
const result = await (0, enrichPrivacyRequest_1.enrichPrivacyRequest)(sombra, request, enricherId, index);
|
|
34
45
|
if (result) {
|
|
35
46
|
successCount += 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pushManualEnrichmentIdentifiersFromCsv.js","sourceRoot":"","sources":["../../src/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,uCAA+B;AAC/B,sCAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"pushManualEnrichmentIdentifiersFromCsv.js","sourceRoot":"","sources":["../../src/manual-enrichment/pushManualEnrichmentIdentifiersFromCsv.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,uCAA+B;AAC/B,sCAAmC;AACnC,wCAKoB;AACpB,iEAGgC;AAChC,0CAAsC;AACtC,4CAAqD;AAErD;;;;;GAKG;AACI,KAAK,UAAU,sCAAsC,CAAC,EAC3D,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,GAAG,GAAG,EACjB,YAAY,GAAG,iCAAqB,GAgBrC;IACC,6CAA6C;IAC7C,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAuB,EAAC,YAAY,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAG,IAAA,qCAA2B,EAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAE/D,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,2CAAoB,CAAC,CAAC;IAE1D,mBAAmB;IACnB,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,OAAO,CAAC,cAAc,aAAa,CAAC,MAAM,qBAAqB,CAAC,CACxE,CAAC;IAEF,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,MAAM,IAAA,cAAG,EACP,aAAa,EACb,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACvB,IAAI;YACF,qDAAqD;YACrD,IAAI,UAAU,EAAE;gBACd,MAAM,IAAA,4BAAkB,EAAC,MAAM,EAAE,gCAAsB,EAAE;oBACvD,KAAK,EAAE;wBACL,EAAE,EAAE,OAAO,CAAC,EAAE;wBACd,QAAQ,EAAE,IAAI;qBACf;iBACF,CAAC,CAAC;gBAEH,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,OAAO,CAAC,iCAAiC,OAAO,CAAC,EAAE,EAAE,CAAC,CAC9D,CAAC;aACH;YAED,MAAM,MAAM,GAAG,MAAM,IAAA,2CAAoB,EACvC,MAAM,EACN,OAAO,EACP,UAAU,EACV,KAAK,CACN,CAAC;YACF,IAAI,MAAM,EAAE;gBACV,YAAY,IAAI,CAAC,CAAC;aACnB;iBAAM;gBACL,YAAY,IAAI,CAAC,CAAC;aACnB;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,UAAU,IAAI,CAAC,CAAC;SACjB;IACH,CAAC,EACD,EAAE,WAAW,EAAE,CAChB,CAAC;IAEF,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,KAAK,CACV,sDAAsD,YAAY,GAAG,CACtE,CACF,CAAC;IAEF,IAAI,YAAY,GAAG,CAAC,EAAE;QACpB,eAAM,CAAC,IAAI,CAAC,gBAAM,CAAC,OAAO,CAAC,kBAAkB,YAAY,GAAG,CAAC,CAAC,CAAC;KAChE;IAED,IAAI,UAAU,GAAG,CAAC,EAAE;QAClB,eAAM,CAAC,IAAI,CAAC,gBAAM,CAAC,GAAG,CAAC,gBAAgB,UAAU,GAAG,CAAC,CAAC,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,YAAY,CAAC,CAAC;KAC9D;IAED,OAAO,aAAa,CAAC,MAAM,CAAC;AAC9B,CAAC;AA7FD,wFA6FC"}
|