@transcend-io/cli 6.17.0 → 6.19.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 +9 -0
- package/build/cli-chunk-csv.d.ts +14 -0
- package/build/cli-chunk-csv.d.ts.map +1 -0
- package/build/cli-chunk-csv.js +140 -0
- package/build/cli-chunk-csv.js.map +1 -0
- package/build/cli-upload-preferences.js +78 -18
- package/build/cli-upload-preferences.js.map +1 -1
- package/build/cron/writeCsv.d.ts +17 -1
- package/build/cron/writeCsv.d.ts.map +1 -1
- package/build/cron/writeCsv.js +51 -2
- package/build/cron/writeCsv.js.map +1 -1
- package/build/enums.d.ts +2 -2
- package/build/enums.d.ts.map +1 -1
- package/build/oneTrust/helpers/oneTrustAssessmentToJson.d.ts +1 -1
- package/build/oneTrust/helpers/oneTrustAssessmentToJson.d.ts.map +1 -1
- package/build/oneTrust/helpers/oneTrustAssessmentToJson.js +2 -2
- package/build/oneTrust/helpers/oneTrustAssessmentToJson.js.map +1 -1
- package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.d.ts +1 -1
- package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.d.ts.map +1 -1
- package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.js +2 -2
- package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.js.map +1 -1
- package/build/oneTrust/helpers/syncOneTrustAssessmentsFromFile.d.ts.map +1 -1
- package/build/oneTrust/helpers/syncOneTrustAssessmentsFromFile.js +44 -51
- package/build/oneTrust/helpers/syncOneTrustAssessmentsFromFile.js.map +1 -1
- package/build/preference-management/getPreferencesForIdentifiers.d.ts.map +1 -1
- package/build/preference-management/getPreferencesForIdentifiers.js +6 -1
- package/build/preference-management/getPreferencesForIdentifiers.js.map +1 -1
- package/build/preference-management/parsePreferenceAndPurposeValuesFromCsv.d.ts.map +1 -1
- package/build/preference-management/parsePreferenceAndPurposeValuesFromCsv.js +75 -10
- package/build/preference-management/parsePreferenceAndPurposeValuesFromCsv.js.map +1 -1
- package/build/preference-management/parsePreferenceManagementCsv.d.ts +3 -1
- package/build/preference-management/parsePreferenceManagementCsv.d.ts.map +1 -1
- package/build/preference-management/parsePreferenceManagementCsv.js +7 -5
- package/build/preference-management/parsePreferenceManagementCsv.js.map +1 -1
- package/build/preference-management/uploadPreferenceManagementPreferencesInteractive.d.ts +3 -1
- package/build/preference-management/uploadPreferenceManagementPreferencesInteractive.d.ts.map +1 -1
- package/build/preference-management/uploadPreferenceManagementPreferencesInteractive.js +2 -1
- package/build/preference-management/uploadPreferenceManagementPreferencesInteractive.js.map +1 -1
- package/build/tsbuildinfo +1 -1
- package/package.json +3 -1
|
@@ -1,27 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
4
|
};
|
|
@@ -30,8 +7,8 @@ exports.syncOneTrustAssessmentsFromFile = void 0;
|
|
|
30
7
|
const type_utils_1 = require("@transcend-io/type-utils");
|
|
31
8
|
const colors_1 = __importDefault(require("colors"));
|
|
32
9
|
const logger_1 = require("../../logger");
|
|
10
|
+
const JSONStream_1 = __importDefault(require("JSONStream"));
|
|
33
11
|
const fs_1 = require("fs");
|
|
34
|
-
const readline = __importStar(require("readline"));
|
|
35
12
|
const privacy_types_1 = require("@transcend-io/privacy-types");
|
|
36
13
|
const syncOneTrustAssessmentToTranscend_1 = require("./syncOneTrustAssessmentToTranscend");
|
|
37
14
|
/**
|
|
@@ -39,40 +16,56 @@ const syncOneTrustAssessmentToTranscend_1 = require("./syncOneTrustAssessmentToT
|
|
|
39
16
|
*
|
|
40
17
|
* @param param - the information about the source file and Transcend instance to write them to.
|
|
41
18
|
*/
|
|
42
|
-
const syncOneTrustAssessmentsFromFile =
|
|
19
|
+
const syncOneTrustAssessmentsFromFile = ({ transcend, file, }) => {
|
|
43
20
|
logger_1.logger.info(`Getting list of all assessments from file ${file}...`);
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
const parsedAssessment = (0, type_utils_1.decodeCodec)(privacy_types_1.OneTrustEnrichedAssessment,
|
|
21
|
+
return new Promise((resolve, reject) => {
|
|
22
|
+
// Create a readable stream from the file
|
|
23
|
+
const fileStream = (0, fs_1.createReadStream)(file, {
|
|
24
|
+
encoding: 'utf-8',
|
|
25
|
+
highWaterMark: 64 * 1024, // 64KB chunks
|
|
26
|
+
});
|
|
27
|
+
// Create a JSONStream parser to parse the array of OneTrust assessments from the file
|
|
28
|
+
const parser = JSONStream_1.default.parse('*'); // '*' matches each element in the root array
|
|
29
|
+
let index = 0;
|
|
30
|
+
// Pipe the file stream into the JSON parser
|
|
31
|
+
fileStream.pipe(parser);
|
|
32
|
+
// Handle each parsed assessment object
|
|
33
|
+
parser.on('data', async (assessment) => {
|
|
34
|
+
try {
|
|
35
|
+
// Pause the stream while processing to avoid overwhelming memory
|
|
36
|
+
parser.pause();
|
|
37
|
+
// Decode and validate the assessment
|
|
38
|
+
const parsedAssessment = (0, type_utils_1.decodeCodec)(privacy_types_1.OneTrustEnrichedAssessment, assessment);
|
|
39
|
+
// Sync the assessment to transcend
|
|
62
40
|
await (0, syncOneTrustAssessmentToTranscend_1.syncOneTrustAssessmentToTranscend)({
|
|
63
41
|
assessment: parsedAssessment,
|
|
64
42
|
transcend,
|
|
65
|
-
total: 2178,
|
|
66
43
|
index,
|
|
67
44
|
});
|
|
45
|
+
index += 1;
|
|
46
|
+
// Resume the stream after processing
|
|
47
|
+
parser.resume();
|
|
68
48
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
49
|
+
catch (e) {
|
|
50
|
+
// if failed to parse a line, report error and continue
|
|
51
|
+
logger_1.logger.error(colors_1.default.red(`Failed to parse the assessment ${index} from file '${file}': ${e.message}.`));
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
// Handle completion
|
|
55
|
+
parser.on('end', () => {
|
|
56
|
+
logger_1.logger.info(`Finished processing ${index} assessments from file ${file}`);
|
|
57
|
+
resolve();
|
|
58
|
+
});
|
|
59
|
+
// Handle stream or parsing errors
|
|
60
|
+
parser.on('error', (error) => {
|
|
61
|
+
logger_1.logger.error(colors_1.default.red(`Error parsing file '${file}': ${error.message}`));
|
|
62
|
+
reject(error);
|
|
63
|
+
});
|
|
64
|
+
fileStream.on('error', (error) => {
|
|
65
|
+
logger_1.logger.error(colors_1.default.red(`Error reading file '${file}': ${error.message}`));
|
|
66
|
+
reject(error);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
76
69
|
};
|
|
77
70
|
exports.syncOneTrustAssessmentsFromFile = syncOneTrustAssessmentsFromFile;
|
|
78
71
|
//# sourceMappingURL=syncOneTrustAssessmentsFromFile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncOneTrustAssessmentsFromFile.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/syncOneTrustAssessmentsFromFile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"syncOneTrustAssessmentsFromFile.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/syncOneTrustAssessmentsFromFile.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAuD;AACvD,oDAA4B;AAC5B,yCAAsC;AACtC,4DAAoC;AAEpC,2BAAsC;AACtC,+DAAyE;AACzE,2FAAwF;AAGxF;;;;GAIG;AACI,MAAM,+BAA+B,GAAG,CAAC,EAC9C,SAAS,EACT,IAAI,GAML,EAAiB,EAAE;IAClB,eAAM,CAAC,IAAI,CAAC,6CAA6C,IAAI,KAAK,CAAC,CAAC;IAEpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,yCAAyC;QACzC,MAAM,UAAU,GAAG,IAAA,qBAAgB,EAAC,IAAI,EAAE;YACxC,QAAQ,EAAE,OAAO;YACjB,aAAa,EAAE,EAAE,GAAG,IAAI,EAAE,cAAc;SACzC,CAAC,CAAC;QAEH,sFAAsF;QACtF,MAAM,MAAM,GAAG,oBAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,6CAA6C;QAEnF,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,4CAA4C;QAC5C,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAExB,uCAAuC;QACvC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;YACrC,IAAI;gBACF,iEAAiE;gBACjE,MAAM,CAAC,KAAK,EAAE,CAAC;gBAEf,qCAAqC;gBACrC,MAAM,gBAAgB,GAAG,IAAA,wBAAW,EAClC,0CAA0B,EAC1B,UAAU,CACX,CAAC;gBAEF,mCAAmC;gBACnC,MAAM,IAAA,qEAAiC,EAAC;oBACtC,UAAU,EAAE,gBAAgB;oBAC5B,SAAS;oBACT,KAAK;iBACN,CAAC,CAAC;gBAEH,KAAK,IAAI,CAAC,CAAC;gBAEX,qCAAqC;gBACrC,MAAM,CAAC,MAAM,EAAE,CAAC;aACjB;YAAC,OAAO,CAAC,EAAE;gBACV,uDAAuD;gBACvD,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CACR,kCAAkC,KAAK,eAAe,IAAI,MAAM,CAAC,CAAC,OAAO,GAAG,CAC7E,CACF,CAAC;aACH;QACH,CAAC,CAAC,CAAC;QAEH,oBAAoB;QACpB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACpB,eAAM,CAAC,IAAI,CAAC,uBAAuB,KAAK,0BAA0B,IAAI,EAAE,CAAC,CAAC;YAC1E,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,kCAAkC;QAClC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3B,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CAAC,uBAAuB,IAAI,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAC7D,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/B,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CAAC,uBAAuB,IAAI,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAC7D,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAhFW,QAAA,+BAA+B,mCAgF1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPreferencesForIdentifiers.d.ts","sourceRoot":"","sources":["../../src/preference-management/getPreferencesForIdentifiers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"getPreferencesForIdentifiers.d.ts","sourceRoot":"","sources":["../../src/preference-management/getPreferencesForIdentifiers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AA0B/B;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,GAAG,EACX,EACE,WAAW,EACX,YAAY,EACZ,WAAmB,GACpB,EAAE;IACD,yCAAyC;IACzC,WAAW,EAAE;QACX,kCAAkC;QAClC,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GACA,OAAO,CAAC,2BAA2B,EAAE,CAAC,CA8ExC"}
|
|
@@ -44,7 +44,12 @@ const PreferenceRecordsQueryResponse = t.intersection([
|
|
|
44
44
|
cursor: t.string,
|
|
45
45
|
}),
|
|
46
46
|
]);
|
|
47
|
-
const MSGS = [
|
|
47
|
+
const MSGS = [
|
|
48
|
+
'ENOTFOUND',
|
|
49
|
+
'ETIMEDOUT',
|
|
50
|
+
'504 Gateway Time-out',
|
|
51
|
+
'Task timed out after',
|
|
52
|
+
];
|
|
48
53
|
/**
|
|
49
54
|
* Grab the current consent preference values for a list of identifiers
|
|
50
55
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPreferencesForIdentifiers.js","sourceRoot":"","sources":["../../src/preference-management/getPreferencesForIdentifiers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA0E;AAE1E,oDAA4B;AAC5B,gEAAuC;AACvC,yDAAiC;AACjC,yDAAuD;AACvD,yCAA2B;AAC3B,uCAA+B;AAC/B,sCAAmC;AAEnC,MAAM,8BAA8B,GAAG,CAAC,CAAC,YAAY,CAAC;IACpD,CAAC,CAAC,IAAI,CAAC;QACL,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,2CAA2B,CAAC;KAC5C,CAAC;IACF,CAAC,CAAC,OAAO,CAAC;QACR,6EAA6E;QAC7E,MAAM,EAAE,CAAC,CAAC,MAAM;KACjB,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"getPreferencesForIdentifiers.js","sourceRoot":"","sources":["../../src/preference-management/getPreferencesForIdentifiers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsePreferenceAndPurposeValuesFromCsv.d.ts","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceAndPurposeValuesFromCsv.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"parsePreferenceAndPurposeValuesFromCsv.d.ts","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceAndPurposeValuesFromCsv.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM7C;;;;;;;GAOG;AACH,wBAAsB,sCAAsC,CAC1D,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EACrC,YAAY,EAAE,iBAAiB,EAC/B,EACE,YAAY,EACZ,gBAAgB,GACjB,EAAE;IACD,uDAAuD;IACvD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,4BAA4B;IAC5B,gBAAgB,EAAE,eAAe,EAAE,CAAC;CACrC,GACA,OAAO,CAAC,iBAAiB,CAAC,CAwK5B"}
|
|
@@ -10,6 +10,8 @@ const inquirer_1 = __importDefault(require("inquirer"));
|
|
|
10
10
|
const difference_1 = __importDefault(require("lodash/difference"));
|
|
11
11
|
const logger_1 = require("../logger");
|
|
12
12
|
const bluebird_1 = require("bluebird");
|
|
13
|
+
const privacy_types_1 = require("@transcend-io/privacy-types");
|
|
14
|
+
const requests_1 = require("../requests");
|
|
13
15
|
/* eslint-disable no-param-reassign */
|
|
14
16
|
/**
|
|
15
17
|
* Parse out the purpose.enabled and preference values from a CSV file
|
|
@@ -50,7 +52,7 @@ async function parsePreferenceAndPurposeValuesFromCsv(preferences, currentState,
|
|
|
50
52
|
name: 'purposeName',
|
|
51
53
|
message: `Choose the purpose that column ${col} is associated with`,
|
|
52
54
|
type: 'list',
|
|
53
|
-
default: purposeNames[0],
|
|
55
|
+
default: purposeNames.find((x) => x.startsWith(purposeSlugs[0])),
|
|
54
56
|
choices: purposeNames,
|
|
55
57
|
},
|
|
56
58
|
]);
|
|
@@ -67,15 +69,78 @@ async function parsePreferenceAndPurposeValuesFromCsv(preferences, currentState,
|
|
|
67
69
|
logger_1.logger.info(colors_1.default.magenta(`Value "${value}" is associated with purpose value "${purposeMapping.valueMapping[value]}"`));
|
|
68
70
|
return;
|
|
69
71
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
72
|
+
// if preference is null, this column is just for the purpose
|
|
73
|
+
if (purposeMapping.preference === null) {
|
|
74
|
+
const { purposeValue } = await inquirer_1.default.prompt([
|
|
75
|
+
{
|
|
76
|
+
name: 'purposeValue',
|
|
77
|
+
message: `Choose the purpose value for value "${value}" associated with purpose "${purposeMapping.purpose}"`,
|
|
78
|
+
type: 'confirm',
|
|
79
|
+
default: value !== 'false',
|
|
80
|
+
},
|
|
81
|
+
]);
|
|
82
|
+
purposeMapping.valueMapping[value] = purposeValue;
|
|
83
|
+
}
|
|
84
|
+
// if preference is not null, this column is for a specific preference
|
|
85
|
+
if (purposeMapping.preference !== null) {
|
|
86
|
+
const preferenceTopic = preferenceTopics.find((x) => x.slug === purposeMapping.preference);
|
|
87
|
+
if (!preferenceTopic) {
|
|
88
|
+
logger_1.logger.error(colors_1.default.red(`Preference topic "${purposeMapping.preference}" not found`));
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
const preferenceOptions = preferenceTopic.preferenceOptionValues.map(({ slug }) => slug);
|
|
92
|
+
if (preferenceTopic.type === privacy_types_1.PreferenceTopicType.Boolean) {
|
|
93
|
+
const { preferenceValue } = await inquirer_1.default.prompt([
|
|
94
|
+
{
|
|
95
|
+
name: 'preferenceValue',
|
|
96
|
+
message:
|
|
97
|
+
// eslint-disable-next-line max-len
|
|
98
|
+
`Choose the preference value for "${preferenceTopic.slug}" value "${value}" associated with purpose "${purposeMapping.purpose}"`,
|
|
99
|
+
type: 'confirm',
|
|
100
|
+
default: value !== 'false',
|
|
101
|
+
},
|
|
102
|
+
]);
|
|
103
|
+
purposeMapping.valueMapping[value] = preferenceValue;
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (preferenceTopic.type === privacy_types_1.PreferenceTopicType.Select) {
|
|
107
|
+
const { preferenceValue } = await inquirer_1.default.prompt([
|
|
108
|
+
{
|
|
109
|
+
name: 'preferenceValue',
|
|
110
|
+
// eslint-disable-next-line max-len
|
|
111
|
+
message: `Choose the preference value for "${preferenceTopic.slug}" value "${value}" associated with purpose "${purposeMapping.purpose}"`,
|
|
112
|
+
type: 'list',
|
|
113
|
+
choices: preferenceOptions,
|
|
114
|
+
default: preferenceOptions.find((x) => x === value),
|
|
115
|
+
},
|
|
116
|
+
]);
|
|
117
|
+
purposeMapping.valueMapping[value] = preferenceValue;
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
if (preferenceTopic.type === privacy_types_1.PreferenceTopicType.MultiSelect) {
|
|
121
|
+
const parsedValues = (0, requests_1.splitCsvToList)(value);
|
|
122
|
+
// need to do this serially
|
|
123
|
+
await (0, bluebird_1.mapSeries)(parsedValues, async (parsedValue) => {
|
|
124
|
+
// if we already have a value, skip re-processing it again
|
|
125
|
+
if (purposeMapping.valueMapping[parsedValue] !== undefined) {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
const { preferenceValue } = await inquirer_1.default.prompt([
|
|
129
|
+
{
|
|
130
|
+
name: 'preferenceValue',
|
|
131
|
+
// eslint-disable-next-line max-len
|
|
132
|
+
message: `Choose the preference value for "${preferenceTopic.slug}" value "${parsedValue}" associated with purpose "${purposeMapping.purpose}"`,
|
|
133
|
+
type: 'list',
|
|
134
|
+
choices: preferenceOptions,
|
|
135
|
+
default: preferenceOptions.find((x) => x === parsedValue),
|
|
136
|
+
},
|
|
137
|
+
]);
|
|
138
|
+
purposeMapping.valueMapping[parsedValue] = preferenceValue;
|
|
139
|
+
});
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
throw new Error(`Unknown preference topic type: ${preferenceTopic.type}`);
|
|
143
|
+
}
|
|
79
144
|
});
|
|
80
145
|
currentState.columnToPurposeName[col] = purposeMapping;
|
|
81
146
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsePreferenceAndPurposeValuesFromCsv.js","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceAndPurposeValuesFromCsv.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AAC/B,oDAA4B;AAC5B,wDAAgC;AAChC,mEAA2C;AAE3C,sCAAmC;AACnC,uCAAqC;
|
|
1
|
+
{"version":3,"file":"parsePreferenceAndPurposeValuesFromCsv.js","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceAndPurposeValuesFromCsv.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { PreferenceTopic } from '../graphql';
|
|
|
10
10
|
* @param cache - The cache to store the parsed file in
|
|
11
11
|
* @returns The cache with the parsed file
|
|
12
12
|
*/
|
|
13
|
-
export declare function parsePreferenceManagementCsvWithCache({ file, sombra, purposeSlugs, preferenceTopics, partitionKey, }: {
|
|
13
|
+
export declare function parsePreferenceManagementCsvWithCache({ file, sombra, purposeSlugs, preferenceTopics, partitionKey, skipExistingRecordCheck, }: {
|
|
14
14
|
/** File to parse */
|
|
15
15
|
file: string;
|
|
16
16
|
/** The purpose slugs that are allowed to be updated */
|
|
@@ -21,5 +21,7 @@ export declare function parsePreferenceManagementCsvWithCache({ file, sombra, pu
|
|
|
21
21
|
sombra: Got;
|
|
22
22
|
/** Partition key */
|
|
23
23
|
partitionKey: string;
|
|
24
|
+
/** Whether to skip the check for existing records. SHOULD ONLY BE USED FOR INITIAL UPLOAD */
|
|
25
|
+
skipExistingRecordCheck: boolean;
|
|
24
26
|
}, cache: PersistedState<typeof PreferenceState>): Promise<void>;
|
|
25
27
|
//# sourceMappingURL=parsePreferenceManagementCsv.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsePreferenceManagementCsv.d.ts","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceManagementCsv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI/B,OAAO,EAAqB,eAAe,EAAE,MAAM,UAAU,CAAC;AAI9D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQ7C;;;;;;;GAOG;AACH,wBAAsB,qCAAqC,CACzD,EACE,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"parsePreferenceManagementCsv.d.ts","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceManagementCsv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI/B,OAAO,EAAqB,eAAe,EAAE,MAAM,UAAU,CAAC;AAI9D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQ7C;;;;;;;GAOG;AACH,wBAAsB,qCAAqC,CACzD,EACE,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,uBAA+B,GAChC,EAAE;IACD,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,4BAA4B;IAC5B,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,0BAA0B;IAC1B,MAAM,EAAE,GAAG,CAAC;IACZ,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,6FAA6F;IAC7F,uBAAuB,EAAE,OAAO,CAAC;CAClC,EACD,KAAK,EAAE,cAAc,CAAC,OAAO,eAAe,CAAC,GAC5C,OAAO,CAAC,IAAI,CAAC,CAkIf"}
|
|
@@ -47,7 +47,7 @@ const checkIfPendingPreferenceUpdatesCauseConflict_1 = require("./checkIfPending
|
|
|
47
47
|
* @param cache - The cache to store the parsed file in
|
|
48
48
|
* @returns The cache with the parsed file
|
|
49
49
|
*/
|
|
50
|
-
async function parsePreferenceManagementCsvWithCache({ file, sombra, purposeSlugs, preferenceTopics, partitionKey, }, cache) {
|
|
50
|
+
async function parsePreferenceManagementCsvWithCache({ file, sombra, purposeSlugs, preferenceTopics, partitionKey, skipExistingRecordCheck = false, }, cache) {
|
|
51
51
|
// Start the timer
|
|
52
52
|
const t0 = new Date().getTime();
|
|
53
53
|
// Get the current metadata
|
|
@@ -85,10 +85,12 @@ async function parsePreferenceManagementCsvWithCache({ file, sombra, purposeSlug
|
|
|
85
85
|
await cache.setValue(fileMetadata, 'fileMetadata');
|
|
86
86
|
// Grab existing preference store records
|
|
87
87
|
const identifiers = preferences.map((pref) => pref[currentState.identifierColumn]);
|
|
88
|
-
const existingConsentRecords =
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
88
|
+
const existingConsentRecords = skipExistingRecordCheck
|
|
89
|
+
? []
|
|
90
|
+
: await (0, getPreferencesForIdentifiers_1.getPreferencesForIdentifiers)(sombra, {
|
|
91
|
+
identifiers: identifiers.map((x) => ({ value: x })),
|
|
92
|
+
partitionKey,
|
|
93
|
+
});
|
|
92
94
|
const consentRecordByIdentifier = (0, keyBy_1.default)(existingConsentRecords, 'userId');
|
|
93
95
|
// Clear out previous updates
|
|
94
96
|
currentState.pendingConflictUpdates = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsePreferenceManagementCsv.js","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceManagementCsv.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yDAAiC;AACjC,yCAA2B;AAC3B,oDAA4B;AAE5B,sCAAmC;AACnC,0CAAsC;AACtC,iFAA8E;AAE9E,+EAA4E;AAC5E,yFAAsF;AACtF,2FAAwF;AACxF,qGAAkG;AAClG,qGAAkG;AAClG,iHAA8G;AAE9G;;;;;;;GAOG;AACI,KAAK,UAAU,qCAAqC,CACzD,EACE,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"parsePreferenceManagementCsv.js","sourceRoot":"","sources":["../../src/preference-management/parsePreferenceManagementCsv.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @param options - Options
|
|
5
5
|
*/
|
|
6
|
-
export declare function uploadPreferenceManagementPreferencesInteractive({ auth, sombraAuth, receiptFilepath, file, partition, isSilent, dryRun, skipWorkflowTriggers, skipConflictUpdates, attributes, transcendUrl, }: {
|
|
6
|
+
export declare function uploadPreferenceManagementPreferencesInteractive({ auth, sombraAuth, receiptFilepath, file, partition, isSilent, dryRun, skipWorkflowTriggers, skipConflictUpdates, skipExistingRecordCheck, attributes, transcendUrl, }: {
|
|
7
7
|
/** The Transcend API key */
|
|
8
8
|
auth: string;
|
|
9
9
|
/** Sombra API key authentication */
|
|
@@ -29,5 +29,7 @@ export declare function uploadPreferenceManagementPreferencesInteractive({ auth,
|
|
|
29
29
|
* preferences. When false, update all preferences in CSV based on timestamp.
|
|
30
30
|
*/
|
|
31
31
|
skipConflictUpdates?: boolean;
|
|
32
|
+
/** Whether to skip the check for existing records. SHOULD ONLY BE USED FOR INITIAL UPLOAD */
|
|
33
|
+
skipExistingRecordCheck?: boolean;
|
|
32
34
|
}): Promise<void>;
|
|
33
35
|
//# sourceMappingURL=uploadPreferenceManagementPreferencesInteractive.d.ts.map
|
package/build/preference-management/uploadPreferenceManagementPreferencesInteractive.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploadPreferenceManagementPreferencesInteractive.d.ts","sourceRoot":"","sources":["../../src/preference-management/uploadPreferenceManagementPreferencesInteractive.ts"],"names":[],"mappings":"AAqBA;;;;GAIG;AACH,wBAAsB,gDAAgD,CAAC,EACrE,IAAI,EACJ,UAAU,EACV,eAAe,EACf,IAAI,EACJ,SAAS,EACT,QAAe,EACf,MAAc,EACd,oBAA4B,EAC5B,mBAA2B,EAC3B,UAAe,EACf,YAA4C,GAC7C,EAAE;IACD,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,eAAe,EAAE,MAAM,CAAC;IACxB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,6BAA6B;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"uploadPreferenceManagementPreferencesInteractive.d.ts","sourceRoot":"","sources":["../../src/preference-management/uploadPreferenceManagementPreferencesInteractive.ts"],"names":[],"mappings":"AAqBA;;;;GAIG;AACH,wBAAsB,gDAAgD,CAAC,EACrE,IAAI,EACJ,UAAU,EACV,eAAe,EACf,IAAI,EACJ,SAAS,EACT,QAAe,EACf,MAAc,EACd,oBAA4B,EAC5B,mBAA2B,EAC3B,uBAA+B,EAC/B,UAAe,EACf,YAA4C,GAC7C,EAAE;IACD,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,eAAe,EAAE,MAAM,CAAC;IACxB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,6BAA6B;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,6FAA6F;IAC7F,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,GAAG,OAAO,CAAC,IAAI,CAAC,CAyNhB"}
|
|
@@ -24,7 +24,7 @@ const getPreferenceUpdatesFromRow_1 = require("./getPreferenceUpdatesFromRow");
|
|
|
24
24
|
*
|
|
25
25
|
* @param options - Options
|
|
26
26
|
*/
|
|
27
|
-
async function uploadPreferenceManagementPreferencesInteractive({ auth, sombraAuth, receiptFilepath, file, partition, isSilent = true, dryRun = false, skipWorkflowTriggers = false, skipConflictUpdates = false, attributes = [], transcendUrl = constants_1.DEFAULT_TRANSCEND_CONSENT_API, }) {
|
|
27
|
+
async function uploadPreferenceManagementPreferencesInteractive({ auth, sombraAuth, receiptFilepath, file, partition, isSilent = true, dryRun = false, skipWorkflowTriggers = false, skipConflictUpdates = false, skipExistingRecordCheck = false, attributes = [], transcendUrl = constants_1.DEFAULT_TRANSCEND_CONSENT_API, }) {
|
|
28
28
|
// Parse out the extra attributes to apply to all requests uploaded
|
|
29
29
|
const parsedAttributes = (0, requests_1.parseAttributesFromString)(attributes);
|
|
30
30
|
// Create a new state file to store the requests from this run
|
|
@@ -59,6 +59,7 @@ async function uploadPreferenceManagementPreferencesInteractive({ auth, sombraAu
|
|
|
59
59
|
preferenceTopics,
|
|
60
60
|
sombra,
|
|
61
61
|
partitionKey: partition,
|
|
62
|
+
skipExistingRecordCheck,
|
|
62
63
|
}, preferenceState);
|
|
63
64
|
// Construct the pending updates
|
|
64
65
|
const pendingUpdates = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploadPreferenceManagementPreferencesInteractive.js","sourceRoot":"","sources":["../../src/preference-management/uploadPreferenceManagementPreferencesInteractive.ts"],"names":[],"mappings":";;;;;;AAAA,wCAIoB;AACpB,oDAA4B;AAC5B,uCAA+B;AAC/B,yDAAiC;AACjC,4CAA6D;AAC7D,sCAAmC;AACnC,gEAAuC;AACvC,0CAAwD;AACxD,mEAA+D;AAC/D,iFAAuF;AACvF,qCAA2C;AAC3C,kFAA+E;AAE/E,yDAAiD;AACjD,yFAAyE;AACzE,+EAA4E;AAE5E;;;;GAIG;AACI,KAAK,UAAU,gDAAgD,CAAC,EACrE,IAAI,EACJ,UAAU,EACV,eAAe,EACf,IAAI,EACJ,SAAS,EACT,QAAQ,GAAG,IAAI,EACf,MAAM,GAAG,KAAK,EACd,oBAAoB,GAAG,KAAK,EAC5B,mBAAmB,GAAG,KAAK,EAC3B,UAAU,GAAG,EAAE,EACf,YAAY,GAAG,yCAA6B,
|
|
1
|
+
{"version":3,"file":"uploadPreferenceManagementPreferencesInteractive.js","sourceRoot":"","sources":["../../src/preference-management/uploadPreferenceManagementPreferencesInteractive.ts"],"names":[],"mappings":"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"}
|