@transcend-io/cli 6.13.2 → 6.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/README.md +40 -13
  2. package/build/cli-sync-ot.d.ts +3 -0
  3. package/build/cli-sync-ot.d.ts.map +1 -0
  4. package/build/cli-sync-ot.js +56 -0
  5. package/build/cli-sync-ot.js.map +1 -0
  6. package/build/codecs.d.ts +46 -0
  7. package/build/codecs.d.ts.map +1 -1
  8. package/build/codecs.js +28 -1
  9. package/build/codecs.js.map +1 -1
  10. package/build/graphql/fetchAllRequestIdentifiers.d.ts +2 -0
  11. package/build/graphql/fetchAllRequestIdentifiers.d.ts.map +1 -1
  12. package/build/graphql/gqls/assessment.d.ts +1 -0
  13. package/build/graphql/gqls/assessment.d.ts.map +1 -1
  14. package/build/graphql/gqls/assessment.js +13 -1
  15. package/build/graphql/gqls/assessment.js.map +1 -1
  16. package/build/graphql/parseAssessmentRiskLogic.d.ts +3 -1
  17. package/build/graphql/parseAssessmentRiskLogic.d.ts.map +1 -1
  18. package/build/graphql/parseAssessmentRiskLogic.js +3 -1
  19. package/build/graphql/parseAssessmentRiskLogic.js.map +1 -1
  20. package/build/graphql/pullTranscendConfiguration.d.ts.map +1 -1
  21. package/build/graphql/pullTranscendConfiguration.js +3 -1
  22. package/build/graphql/pullTranscendConfiguration.js.map +1 -1
  23. package/build/oneTrust/{getListOfAssessments.d.ts → endpoints/getListOfOneTrustAssessments.d.ts} +4 -3
  24. package/build/oneTrust/endpoints/getListOfOneTrustAssessments.d.ts.map +1 -0
  25. package/build/oneTrust/{getListOfAssessments.js → endpoints/getListOfOneTrustAssessments.js} +9 -7
  26. package/build/oneTrust/endpoints/getListOfOneTrustAssessments.js.map +1 -0
  27. package/build/oneTrust/{getAssessment.d.ts → endpoints/getOneTrustAssessment.d.ts} +4 -3
  28. package/build/oneTrust/endpoints/getOneTrustAssessment.d.ts.map +1 -0
  29. package/build/oneTrust/endpoints/getOneTrustAssessment.js +18 -0
  30. package/build/oneTrust/endpoints/getOneTrustAssessment.js.map +1 -0
  31. package/build/oneTrust/endpoints/getOneTrustRisk.d.ts +16 -0
  32. package/build/oneTrust/endpoints/getOneTrustRisk.d.ts.map +1 -0
  33. package/build/oneTrust/endpoints/getOneTrustRisk.js +18 -0
  34. package/build/oneTrust/endpoints/getOneTrustRisk.js.map +1 -0
  35. package/build/oneTrust/endpoints/getOneTrustUser.d.ts +16 -0
  36. package/build/oneTrust/endpoints/getOneTrustUser.d.ts.map +1 -0
  37. package/build/oneTrust/endpoints/getOneTrustUser.js +18 -0
  38. package/build/oneTrust/endpoints/getOneTrustUser.js.map +1 -0
  39. package/build/oneTrust/endpoints/index.d.ts +5 -0
  40. package/build/oneTrust/endpoints/index.d.ts.map +1 -0
  41. package/build/oneTrust/endpoints/index.js +21 -0
  42. package/build/oneTrust/endpoints/index.js.map +1 -0
  43. package/build/oneTrust/helpers/constants.d.ts +3 -0
  44. package/build/oneTrust/helpers/constants.d.ts.map +1 -0
  45. package/build/oneTrust/helpers/constants.js +15 -0
  46. package/build/oneTrust/helpers/constants.js.map +1 -0
  47. package/build/oneTrust/helpers/convertToEmptyStrings.d.ts +34 -0
  48. package/build/oneTrust/helpers/convertToEmptyStrings.d.ts.map +1 -0
  49. package/build/oneTrust/helpers/convertToEmptyStrings.js +58 -0
  50. package/build/oneTrust/helpers/convertToEmptyStrings.js.map +1 -0
  51. package/build/oneTrust/helpers/enrichOneTrustAssessment.d.ts +22 -0
  52. package/build/oneTrust/helpers/enrichOneTrustAssessment.d.ts.map +1 -0
  53. package/build/oneTrust/helpers/enrichOneTrustAssessment.js +95 -0
  54. package/build/oneTrust/helpers/enrichOneTrustAssessment.js.map +1 -0
  55. package/build/oneTrust/helpers/flattenOneTrustAssessment.d.ts +5 -0
  56. package/build/oneTrust/helpers/flattenOneTrustAssessment.d.ts.map +1 -0
  57. package/build/oneTrust/helpers/flattenOneTrustAssessment.js +136 -0
  58. package/build/oneTrust/helpers/flattenOneTrustAssessment.js.map +1 -0
  59. package/build/oneTrust/helpers/index.d.ts +4 -0
  60. package/build/oneTrust/helpers/index.d.ts.map +1 -0
  61. package/build/oneTrust/helpers/index.js +20 -0
  62. package/build/oneTrust/helpers/index.js.map +1 -0
  63. package/build/oneTrust/helpers/oneTrustAssessmentToCsv.d.ts +14 -0
  64. package/build/oneTrust/helpers/oneTrustAssessmentToCsv.d.ts.map +1 -0
  65. package/build/oneTrust/helpers/oneTrustAssessmentToCsv.js +25 -0
  66. package/build/oneTrust/helpers/oneTrustAssessmentToCsv.js.map +1 -0
  67. package/build/oneTrust/helpers/oneTrustAssessmentToCsvRecord.d.ts +10 -0
  68. package/build/oneTrust/helpers/oneTrustAssessmentToCsvRecord.d.ts.map +1 -0
  69. package/build/oneTrust/helpers/oneTrustAssessmentToCsvRecord.js +38 -0
  70. package/build/oneTrust/helpers/oneTrustAssessmentToCsvRecord.js.map +1 -0
  71. package/build/oneTrust/helpers/oneTrustAssessmentToJson.d.ts +18 -0
  72. package/build/oneTrust/helpers/oneTrustAssessmentToJson.d.ts.map +1 -0
  73. package/build/oneTrust/helpers/oneTrustAssessmentToJson.js +28 -0
  74. package/build/oneTrust/helpers/oneTrustAssessmentToJson.js.map +1 -0
  75. package/build/oneTrust/{parseCliPullOtArguments.d.ts → helpers/parseCliSyncOtArguments.d.ts} +11 -5
  76. package/build/oneTrust/helpers/parseCliSyncOtArguments.d.ts.map +1 -0
  77. package/build/oneTrust/helpers/parseCliSyncOtArguments.js +109 -0
  78. package/build/oneTrust/helpers/parseCliSyncOtArguments.js.map +1 -0
  79. package/build/oneTrust/{writeOneTrustAssessment.d.ts → helpers/syncOneTrustAssessmentToDisk.d.ts} +5 -7
  80. package/build/oneTrust/helpers/syncOneTrustAssessmentToDisk.d.ts.map +1 -0
  81. package/build/oneTrust/helpers/syncOneTrustAssessmentToDisk.js +49 -0
  82. package/build/oneTrust/helpers/syncOneTrustAssessmentToDisk.js.map +1 -0
  83. package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.d.ts +25 -0
  84. package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.d.ts.map +1 -0
  85. package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.js +35 -0
  86. package/build/oneTrust/helpers/syncOneTrustAssessmentToTranscend.js.map +1 -0
  87. package/build/oneTrust/helpers/syncOneTrustAssessments.d.ts +22 -0
  88. package/build/oneTrust/helpers/syncOneTrustAssessments.d.ts.map +1 -0
  89. package/build/oneTrust/helpers/syncOneTrustAssessments.js +125 -0
  90. package/build/oneTrust/helpers/syncOneTrustAssessments.js.map +1 -0
  91. package/build/oneTrust/helpers/tests/convertToEmptyStrings.test.d.ts +2 -0
  92. package/build/oneTrust/helpers/tests/convertToEmptyStrings.test.d.ts.map +1 -0
  93. package/build/oneTrust/helpers/tests/convertToEmptyStrings.test.js +74 -0
  94. package/build/oneTrust/helpers/tests/convertToEmptyStrings.test.js.map +1 -0
  95. package/build/oneTrust/helpers/tests/flattenOneTrustQuestionResponses.test.d.ts +2 -0
  96. package/build/oneTrust/helpers/tests/flattenOneTrustQuestionResponses.test.d.ts.map +1 -0
  97. package/build/oneTrust/helpers/tests/flattenOneTrustQuestionResponses.test.js +592 -0
  98. package/build/oneTrust/helpers/tests/flattenOneTrustQuestionResponses.test.js.map +1 -0
  99. package/build/oneTrust/index.d.ts +2 -4
  100. package/build/oneTrust/index.d.ts.map +1 -1
  101. package/build/oneTrust/index.js +2 -4
  102. package/build/oneTrust/index.js.map +1 -1
  103. package/build/tsbuildinfo +1 -1
  104. package/package.json +4 -4
  105. package/build/cli-pull-ot.d.ts +0 -3
  106. package/build/cli-pull-ot.d.ts.map +0 -1
  107. package/build/cli-pull-ot.js +0 -55
  108. package/build/cli-pull-ot.js.map +0 -1
  109. package/build/oneTrust/getAssessment.d.ts.map +0 -1
  110. package/build/oneTrust/getAssessment.js +0 -15
  111. package/build/oneTrust/getAssessment.js.map +0 -1
  112. package/build/oneTrust/getListOfAssessments.d.ts.map +0 -1
  113. package/build/oneTrust/getListOfAssessments.js.map +0 -1
  114. package/build/oneTrust/parseCliPullOtArguments.d.ts.map +0 -1
  115. package/build/oneTrust/parseCliPullOtArguments.js +0 -67
  116. package/build/oneTrust/parseCliPullOtArguments.js.map +0 -1
  117. package/build/oneTrust/types.d.ts +0 -391
  118. package/build/oneTrust/types.d.ts.map +0 -1
  119. package/build/oneTrust/types.js +0 -4
  120. package/build/oneTrust/types.js.map +0 -1
  121. package/build/oneTrust/writeOneTrustAssessment.d.ts.map +0 -1
  122. package/build/oneTrust/writeOneTrustAssessment.js +0 -41
  123. package/build/oneTrust/writeOneTrustAssessment.js.map +0 -1
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOneTrustRisk = void 0;
4
+ const type_utils_1 = require("@transcend-io/type-utils");
5
+ const privacy_types_1 = require("@transcend-io/privacy-types");
6
+ /**
7
+ * Retrieve details about a particular risk.
8
+ * ref: https://developer.onetrust.com/onetrust/reference/getriskusingget
9
+ *
10
+ * @param param - the information about the OneTrust client and risk to retrieve
11
+ * @returns the OneTrust risk
12
+ */
13
+ const getOneTrustRisk = async ({ oneTrust, riskId, }) => {
14
+ const { body } = await oneTrust.get(`api/risk/v2/risks/${riskId}`);
15
+ return (0, type_utils_1.decodeCodec)(privacy_types_1.OneTrustGetRiskResponse, body);
16
+ };
17
+ exports.getOneTrustRisk = getOneTrustRisk;
18
+ //# sourceMappingURL=getOneTrustRisk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOneTrustRisk.js","sourceRoot":"","sources":["../../../src/oneTrust/endpoints/getOneTrustRisk.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AACvD,+DAAsE;AAEtE;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,EACpC,QAAQ,EACR,MAAM,GAMP,EAAoC,EAAE;IACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;IAEnE,OAAO,IAAA,wBAAW,EAAC,uCAAuB,EAAE,IAAI,CAAC,CAAC;AACpD,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B"}
@@ -0,0 +1,16 @@
1
+ import { Got } from 'got';
2
+ import { OneTrustGetUserResponse } from '@transcend-io/privacy-types';
3
+ /**
4
+ * Retrieve details about a particular user.
5
+ * ref: https://developer.onetrust.com/onetrust/reference/getriskusingget
6
+ *
7
+ * @param param - the information about the OneTrust client and risk to retrieve
8
+ * @returns the OneTrust risk
9
+ */
10
+ export declare const getOneTrustUser: ({ oneTrust, userId, }: {
11
+ /** The OneTrust client instance */
12
+ oneTrust: Got;
13
+ /** The ID of the OneTrust user to retrieve */
14
+ userId: string;
15
+ }) => Promise<OneTrustGetUserResponse>;
16
+ //# sourceMappingURL=getOneTrustUser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOneTrustUser.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/endpoints/getOneTrustUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAEtE;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;IAI1B,mCAAmC;cACzB,GAAG;IACb,8CAA8C;YACtC,MAAM;MACZ,QAAQ,uBAAuB,CAIlC,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getOneTrustUser = void 0;
4
+ const type_utils_1 = require("@transcend-io/type-utils");
5
+ const privacy_types_1 = require("@transcend-io/privacy-types");
6
+ /**
7
+ * Retrieve details about a particular user.
8
+ * ref: https://developer.onetrust.com/onetrust/reference/getriskusingget
9
+ *
10
+ * @param param - the information about the OneTrust client and risk to retrieve
11
+ * @returns the OneTrust risk
12
+ */
13
+ const getOneTrustUser = async ({ oneTrust, userId, }) => {
14
+ const { body } = await oneTrust.get(`api/scim/v2/Users/${userId}`);
15
+ return (0, type_utils_1.decodeCodec)(privacy_types_1.OneTrustGetUserResponse, body);
16
+ };
17
+ exports.getOneTrustUser = getOneTrustUser;
18
+ //# sourceMappingURL=getOneTrustUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getOneTrustUser.js","sourceRoot":"","sources":["../../../src/oneTrust/endpoints/getOneTrustUser.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AACvD,+DAAsE;AAEtE;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,EACpC,QAAQ,EACR,MAAM,GAMP,EAAoC,EAAE;IACrC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;IAEnE,OAAO,IAAA,wBAAW,EAAC,uCAAuB,EAAE,IAAI,CAAC,CAAC;AACpD,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B"}
@@ -0,0 +1,5 @@
1
+ export * from './getListOfOneTrustAssessments';
2
+ export * from './getOneTrustAssessment';
3
+ export * from './getOneTrustRisk';
4
+ export * from './getOneTrustUser';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/endpoints/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,21 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./getListOfOneTrustAssessments"), exports);
18
+ __exportStar(require("./getOneTrustAssessment"), exports);
19
+ __exportStar(require("./getOneTrustRisk"), exports);
20
+ __exportStar(require("./getOneTrustUser"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/oneTrust/endpoints/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iEAA+C;AAC/C,0DAAwC;AACxC,oDAAkC;AAClC,oDAAkC"}
@@ -0,0 +1,3 @@
1
+ /** The OneTrust Assessment CSV file headers */
2
+ export declare const DEFAULT_ONE_TRUST_ASSESSMENT_CSV_HEADER: string[];
3
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/constants.ts"],"names":[],"mappings":"AAYA,+CAA+C;AAC/C,eAAO,MAAM,uCAAuC,UAEnD,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_ONE_TRUST_ASSESSMENT_CSV_HEADER = void 0;
4
+ const type_utils_1 = require("@transcend-io/type-utils");
5
+ const flattenOneTrustAssessment_1 = require("./flattenOneTrustAssessment");
6
+ const privacy_types_1 = require("@transcend-io/privacy-types");
7
+ /**
8
+ * An object with default values of type OneTrustEnrichedAssessment. It's very
9
+ * valuable when converting assessments to CSV, as it contains all keys that
10
+ * make up the CSV header in the expected order
11
+ */
12
+ const DEFAULT_ONE_TRUST_COMBINED_ASSESSMENT = (0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustEnrichedAssessment);
13
+ /** The OneTrust Assessment CSV file headers */
14
+ exports.DEFAULT_ONE_TRUST_ASSESSMENT_CSV_HEADER = Object.keys((0, flattenOneTrustAssessment_1.flattenOneTrustAssessment)(DEFAULT_ONE_TRUST_COMBINED_ASSESSMENT));
15
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/constants.ts"],"names":[],"mappings":";;;AAAA,yDAA8D;AAC9D,2EAAwE;AACxE,+DAAyE;AAEzE;;;;GAIG;AACH,MAAM,qCAAqC,GACzC,IAAA,+BAAkB,EAAC,0CAA0B,CAAC,CAAC;AAEjD,+CAA+C;AAClC,QAAA,uCAAuC,GAAG,MAAM,CAAC,IAAI,CAChE,IAAA,qDAAyB,EAAC,qCAAqC,CAAC,CACjE,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Converts all primitive values in an object or array to empty strings while maintaining structure
3
+ *
4
+ * @param input - A primitive value, object, or array to be processed
5
+ * @returns The input structure with all primitive values converted to empty strings
6
+ * @example
7
+ * // Simple primitive
8
+ * convertToEmptyStrings(42) // returns ''
9
+ *
10
+ * // Array
11
+ * convertToEmptyStrings([1, 'hello', true]) // returns ['', '', '']
12
+ *
13
+ * // Complex object
14
+ * convertToEmptyStrings({
15
+ * id: 123,
16
+ * name: 'test',
17
+ * nested: {
18
+ * active: true,
19
+ * count: 0
20
+ * },
21
+ * items: [1, 2, 3]
22
+ * })
23
+ * // returns {
24
+ * // id: '',
25
+ * // name: '',
26
+ * // nested: {
27
+ * // active: '',
28
+ * // count: ''
29
+ * // },
30
+ * // items: ['', '', '']
31
+ * // }
32
+ */
33
+ export declare function convertToEmptyStrings<T>(input: T): any;
34
+ //# sourceMappingURL=convertToEmptyStrings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertToEmptyStrings.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/convertToEmptyStrings.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAwBtD"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /* eslint-disable eslint-comments/disable-enable-pair */
3
+ /* eslint-disable @typescript-eslint/no-explicit-any */
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.convertToEmptyStrings = void 0;
6
+ /**
7
+ * Converts all primitive values in an object or array to empty strings while maintaining structure
8
+ *
9
+ * @param input - A primitive value, object, or array to be processed
10
+ * @returns The input structure with all primitive values converted to empty strings
11
+ * @example
12
+ * // Simple primitive
13
+ * convertToEmptyStrings(42) // returns ''
14
+ *
15
+ * // Array
16
+ * convertToEmptyStrings([1, 'hello', true]) // returns ['', '', '']
17
+ *
18
+ * // Complex object
19
+ * convertToEmptyStrings({
20
+ * id: 123,
21
+ * name: 'test',
22
+ * nested: {
23
+ * active: true,
24
+ * count: 0
25
+ * },
26
+ * items: [1, 2, 3]
27
+ * })
28
+ * // returns {
29
+ * // id: '',
30
+ * // name: '',
31
+ * // nested: {
32
+ * // active: '',
33
+ * // count: ''
34
+ * // },
35
+ * // items: ['', '', '']
36
+ * // }
37
+ */
38
+ function convertToEmptyStrings(input) {
39
+ // Handle null/undefined
40
+ if (input === null || input === undefined) {
41
+ return '';
42
+ }
43
+ // Handle arrays
44
+ if (Array.isArray(input)) {
45
+ return input.map((item) => convertToEmptyStrings(item));
46
+ }
47
+ // Handle objects
48
+ if (typeof input === 'object') {
49
+ return Object.entries(input).reduce((acc, [key, value]) => ({
50
+ ...acc,
51
+ [key]: convertToEmptyStrings(value),
52
+ }), {});
53
+ }
54
+ // Handle primitives
55
+ return '';
56
+ }
57
+ exports.convertToEmptyStrings = convertToEmptyStrings;
58
+ //# sourceMappingURL=convertToEmptyStrings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertToEmptyStrings.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/convertToEmptyStrings.ts"],"names":[],"mappings":";AAAA,wDAAwD;AACxD,uDAAuD;;;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,SAAgB,qBAAqB,CAAI,KAAQ;IAC/C,wBAAwB;IACxB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;QACzC,OAAO,EAAE,CAAC;KACX;IAED,gBAAgB;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;KACzD;IAED,iBAAiB;IACjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,GAAG,GAAG;YACN,CAAC,GAAG,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC;SACpC,CAAC,EACF,EAAyB,CAC1B,CAAC;KACH;IAED,oBAAoB;IACpB,OAAO,EAAE,CAAC;AACZ,CAAC;AAxBD,sDAwBC"}
@@ -0,0 +1,22 @@
1
+ import { OneTrustAssessment, OneTrustEnrichedAssessment, OneTrustGetAssessmentResponse, OneTrustGetRiskResponse, OneTrustGetUserResponse } from '@transcend-io/privacy-types';
2
+ /**
3
+ * Merge the assessment, assessmentDetails, and riskDetails into one object.
4
+ *
5
+ * @param param - the assessment and risk information
6
+ * @returns the assessment enriched with details and risk information
7
+ */
8
+ export declare const enrichOneTrustAssessment: ({ assessment, assessmentDetails, riskDetails, creatorDetails, approversDetails, respondentsDetails, }: {
9
+ /** The OneTrust risk details */
10
+ riskDetails: OneTrustGetRiskResponse[];
11
+ /** The OneTrust assessment as returned from Get List of Assessments endpoint */
12
+ assessment: OneTrustAssessment;
13
+ /** The OneTrust assessment details */
14
+ assessmentDetails: OneTrustGetAssessmentResponse;
15
+ /** The OneTrust assessment creator details */
16
+ creatorDetails: OneTrustGetUserResponse;
17
+ /** The OneTrust assessment approvers details */
18
+ approversDetails: OneTrustGetUserResponse[];
19
+ /** The OneTrust assessment internal respondents details */
20
+ respondentsDetails: OneTrustGetUserResponse[];
21
+ }) => OneTrustEnrichedAssessment;
22
+ //# sourceMappingURL=enrichOneTrustAssessment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enrichOneTrustAssessment.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/enrichOneTrustAssessment.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,6BAA6B,EAC7B,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AAGrC;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;IAQnC,gCAAgC;iBACnB,uBAAuB,EAAE;IACtC,gFAAgF;gBACpE,kBAAkB;IAC9B,sCAAsC;uBACnB,6BAA6B;IAChD,8CAA8C;oBAC9B,uBAAuB;IACvC,gDAAgD;sBAC9B,uBAAuB,EAAE;IAC3C,2DAA2D;wBACvC,uBAAuB,EAAE;MAC3C,0BA+EH,CAAC"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.enrichOneTrustAssessment = void 0;
7
+ const keyBy_1 = __importDefault(require("lodash/keyBy"));
8
+ /**
9
+ * Merge the assessment, assessmentDetails, and riskDetails into one object.
10
+ *
11
+ * @param param - the assessment and risk information
12
+ * @returns the assessment enriched with details and risk information
13
+ */
14
+ const enrichOneTrustAssessment = ({ assessment, assessmentDetails, riskDetails, creatorDetails, approversDetails, respondentsDetails, }) => {
15
+ var _a, _b;
16
+ const riskDetailsById = (0, keyBy_1.default)(riskDetails, 'id');
17
+ const { sections, createdBy, ...restAssessmentDetails } = assessmentDetails;
18
+ const sectionsWithEnrichedRisk = sections.map((section) => {
19
+ const { questions, ...restSection } = section;
20
+ const enrichedQuestions = questions.map((question) => {
21
+ const { risks, ...restQuestion } = question;
22
+ const enrichedRisks = (risks !== null && risks !== void 0 ? risks : []).map((risk) => {
23
+ var _a;
24
+ const details = riskDetailsById[risk.riskId];
25
+ return {
26
+ ...risk,
27
+ ...details,
28
+ impactLevel: (_a = risk.impactLevel) !== null && _a !== void 0 ? _a : 0,
29
+ };
30
+ });
31
+ return {
32
+ ...restQuestion,
33
+ risks: enrichedRisks,
34
+ };
35
+ });
36
+ return {
37
+ ...restSection,
38
+ questions: enrichedQuestions,
39
+ };
40
+ });
41
+ // grab creator details
42
+ const enrichedCreatedBy = {
43
+ ...createdBy,
44
+ active: creatorDetails.active,
45
+ userType: creatorDetails.userType,
46
+ emails: creatorDetails.emails,
47
+ title: creatorDetails.title,
48
+ givenName: (_a = creatorDetails.name.givenName) !== null && _a !== void 0 ? _a : null,
49
+ familyName: (_b = creatorDetails.name.familyName) !== null && _b !== void 0 ? _b : null,
50
+ };
51
+ // grab approvers details
52
+ const approverDetailsById = (0, keyBy_1.default)(approversDetails, 'id');
53
+ const enrichedApprovers = assessmentDetails.approvers.map((originalApprover) => {
54
+ var _a, _b;
55
+ return ({
56
+ ...originalApprover,
57
+ approver: {
58
+ ...originalApprover.approver,
59
+ active: approverDetailsById[originalApprover.id].active,
60
+ userType: approverDetailsById[originalApprover.id].userType,
61
+ emails: approverDetailsById[originalApprover.id].emails,
62
+ title: approverDetailsById[originalApprover.id].title,
63
+ givenName: (_a = approverDetailsById[originalApprover.id].name.givenName) !== null && _a !== void 0 ? _a : null,
64
+ familyName: (_b = approverDetailsById[originalApprover.id].name.familyName) !== null && _b !== void 0 ? _b : null,
65
+ },
66
+ });
67
+ });
68
+ // grab respondents details
69
+ const respondentsDetailsById = (0, keyBy_1.default)(respondentsDetails, 'id');
70
+ const enrichedRespondents = assessmentDetails.respondents
71
+ .filter((r) => !r.name.includes('@')) // search only internal respondents
72
+ .map((respondent) => {
73
+ var _a, _b;
74
+ return ({
75
+ ...respondent,
76
+ active: respondentsDetailsById[respondent.id].active,
77
+ userType: respondentsDetailsById[respondent.id].userType,
78
+ emails: respondentsDetailsById[respondent.id].emails,
79
+ title: respondentsDetailsById[respondent.id].title,
80
+ givenName: (_a = respondentsDetailsById[respondent.id].name.givenName) !== null && _a !== void 0 ? _a : null,
81
+ familyName: (_b = respondentsDetailsById[respondent.id].name.familyName) !== null && _b !== void 0 ? _b : null,
82
+ });
83
+ });
84
+ // combine everything into a single enriched assessment
85
+ return {
86
+ ...assessment,
87
+ ...restAssessmentDetails,
88
+ approvers: enrichedApprovers,
89
+ respondents: enrichedRespondents,
90
+ createdBy: enrichedCreatedBy,
91
+ sections: sectionsWithEnrichedRisk,
92
+ };
93
+ };
94
+ exports.enrichOneTrustAssessment = enrichOneTrustAssessment;
95
+ //# sourceMappingURL=enrichOneTrustAssessment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enrichOneTrustAssessment.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/enrichOneTrustAssessment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { OneTrustEnrichedAssessment, OneTrustEnrichedAssessmentQuestion, OneTrustEnrichedAssessmentSection } from '@transcend-io/privacy-types';
2
+ export declare const flattenOneTrustQuestions: (allSectionQuestions: OneTrustEnrichedAssessmentQuestion[][], prefix: string) => any;
3
+ export declare const flattenOneTrustSections: (sections: OneTrustEnrichedAssessmentSection[]) => any;
4
+ export declare const flattenOneTrustAssessment: (combinedAssessment: OneTrustEnrichedAssessment) => Record<string, string>;
5
+ //# sourceMappingURL=flattenOneTrustAssessment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flattenOneTrustAssessment.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/flattenOneTrustAssessment.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,0BAA0B,EAC1B,kCAAkC,EAClC,iCAAiC,EAGlC,MAAM,6BAA6B,CAAC;AAyHrC,eAAO,MAAM,wBAAwB,wBACd,kCAAkC,EAAE,EAAE,UACnD,MAAM,KACb,GA2CF,CAAC;AA6BF,eAAO,MAAM,uBAAuB,aACxB,iCAAiC,EAAE,KAC5C,GAcF,CAAC;AAEF,eAAO,MAAM,yBAAyB,uBAChB,0BAA0B,KAC7C,OAAO,MAAM,EAAE,MAAM,CAkBvB,CAAC"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.flattenOneTrustAssessment = exports.flattenOneTrustSections = exports.flattenOneTrustQuestions = void 0;
4
+ // eslint-disable-next-line eslint-comments/disable-enable-pair
5
+ /* eslint-disable @typescript-eslint/no-explicit-any */
6
+ const privacy_types_1 = require("@transcend-io/privacy-types");
7
+ const type_utils_1 = require("@transcend-io/type-utils");
8
+ const convertToEmptyStrings_1 = require("./convertToEmptyStrings");
9
+ const flattenOneTrustNestedQuestionsOptions = (allOptions, prefix) => {
10
+ const allOptionsFlat = allOptions.map((options) => (0, type_utils_1.flattenObject)({ obj: { options }, prefix }));
11
+ return (0, type_utils_1.aggregateObjects)({ objs: allOptionsFlat, wrap: true });
12
+ };
13
+ const flattenOneTrustNestedQuestions = (questions, prefix) => {
14
+ const { options: allOptions, rest: restQuestions } = (0, type_utils_1.transposeObjectArray)(questions, ['options']);
15
+ const defaultQuestionResponses = (0, convertToEmptyStrings_1.convertToEmptyStrings)((0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustAssessmentQuestionOption));
16
+ const allOptionsWithDefault = allOptions.map((questionOptions) => !questionOptions || questionOptions.length === 0
17
+ ? [defaultQuestionResponses]
18
+ : questionOptions);
19
+ return {
20
+ ...(0, type_utils_1.flattenObject)({ obj: { questions: restQuestions }, prefix }),
21
+ ...flattenOneTrustNestedQuestionsOptions(allOptionsWithDefault, `${prefix}_questions`),
22
+ };
23
+ };
24
+ const flattenOneTrustRiskCategories = (allCategories, prefix) => {
25
+ const defaultRiskCategories = (0, convertToEmptyStrings_1.convertToEmptyStrings)((0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustRiskCategories));
26
+ const allCategoriesFlat = allCategories.map((categories) => !categories
27
+ ? {}
28
+ : (0, type_utils_1.flattenObject)({
29
+ obj: {
30
+ categories: categories.length === 0 ? defaultRiskCategories : categories,
31
+ },
32
+ prefix,
33
+ }));
34
+ return (0, type_utils_1.aggregateObjects)({ objs: allCategoriesFlat, wrap: true });
35
+ };
36
+ const flattenOneTrustRisks = (allRisks, prefix) => {
37
+ const allRisksFlat = (allRisks !== null && allRisks !== void 0 ? allRisks : []).map((ars) => {
38
+ const { categories: allCategories, rest: risks } = (0, type_utils_1.transposeObjectArray)(ars !== null && ars !== void 0 ? ars : [], ['categories']);
39
+ return {
40
+ ...(risks && (0, type_utils_1.flattenObject)({ obj: { risks }, prefix })),
41
+ ...(allCategories &&
42
+ flattenOneTrustRiskCategories(allCategories, `${prefix}_risks`)),
43
+ };
44
+ });
45
+ return (0, type_utils_1.aggregateObjects)({ objs: allRisksFlat, wrap: true });
46
+ };
47
+ const flattenOneTrustQuestionResponses = (allQuestionResponses, prefix) => {
48
+ const allQuestionResponsesFlat = allQuestionResponses.map((qrs) => {
49
+ const defaultQuestionResponses = (0, convertToEmptyStrings_1.convertToEmptyStrings)((0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustAssessmentQuestionResponses));
50
+ const defaultResponses = (0, convertToEmptyStrings_1.convertToEmptyStrings)((0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustAssessmentResponses));
51
+ const { responses, rest: questionResponses } = (0, type_utils_1.transposeObjectArray)((qrs.length === 0 ? defaultQuestionResponses : qrs).map((q) => {
52
+ var _a;
53
+ return ({
54
+ ...q,
55
+ // there is always at most one response within responses
56
+ responses: (_a = q.responses[0]) !== null && _a !== void 0 ? _a : defaultResponses[0],
57
+ });
58
+ }), ['responses']);
59
+ return {
60
+ ...(0, type_utils_1.flattenObject)({ obj: { questionResponses: responses }, prefix }),
61
+ ...(0, type_utils_1.flattenObject)({ obj: { questionResponses }, prefix }),
62
+ };
63
+ });
64
+ return (0, type_utils_1.aggregateObjects)({ objs: allQuestionResponsesFlat, wrap: true });
65
+ };
66
+ const flattenOneTrustQuestions = (allSectionQuestions, prefix) => {
67
+ const allSectionQuestionsFlat = allSectionQuestions.map((sectionQuestions) => {
68
+ const { rest: questions, question: nestedQuestions, questionResponses: allQuestionResponses, risks: allRisks, } = (0, type_utils_1.transposeObjectArray)(sectionQuestions, [
69
+ 'question',
70
+ 'questionResponses',
71
+ 'risks',
72
+ ]);
73
+ const defaultRisk = {
74
+ ...(0, convertToEmptyStrings_1.convertToEmptyStrings)((0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustEnrichedRisk)),
75
+ categories: null,
76
+ };
77
+ const allRisksDefault = allRisks
78
+ ? allRisks.map((risks) => !risks || risks.length === 0 ? [defaultRisk] : risks)
79
+ : undefined;
80
+ return {
81
+ ...(questions && (0, type_utils_1.flattenObject)({ obj: { questions }, prefix })),
82
+ ...(nestedQuestions &&
83
+ flattenOneTrustNestedQuestions(nestedQuestions, prefix)),
84
+ ...(allRisksDefault &&
85
+ flattenOneTrustRisks(allRisksDefault, `${prefix}_questions`)),
86
+ ...(allQuestionResponses &&
87
+ flattenOneTrustQuestionResponses(allQuestionResponses, `${prefix}_questions`)),
88
+ };
89
+ });
90
+ return (0, type_utils_1.aggregateObjects)({
91
+ objs: allSectionQuestionsFlat,
92
+ wrap: true,
93
+ });
94
+ };
95
+ exports.flattenOneTrustQuestions = flattenOneTrustQuestions;
96
+ const flattenOneTrustSectionHeaders = (headers, prefix) => {
97
+ const { riskStatistics, rest: restHeaders } = (0, type_utils_1.transposeObjectArray)(headers, [
98
+ 'riskStatistics',
99
+ ]);
100
+ const defaultRiskStatistics = (0, convertToEmptyStrings_1.convertToEmptyStrings)((0, type_utils_1.createDefaultCodec)(privacy_types_1.OneTrustAssessmentSectionHeaderRiskStatistics));
101
+ const riskStatisticsWithDefault = riskStatistics.map((rs) => !rs ? defaultRiskStatistics : rs);
102
+ const flatFlatHeaders = (restHeaders !== null && restHeaders !== void 0 ? restHeaders : []).map((h) => (0, type_utils_1.flattenObject)({ obj: h, prefix }));
103
+ return {
104
+ ...(0, type_utils_1.aggregateObjects)({ objs: flatFlatHeaders }),
105
+ ...(riskStatisticsWithDefault &&
106
+ (0, type_utils_1.flattenObject)({
107
+ obj: { riskStatistics: riskStatisticsWithDefault },
108
+ prefix,
109
+ })),
110
+ };
111
+ };
112
+ const flattenOneTrustSections = (sections) => {
113
+ // filter out sections without questions (shouldn't happen, but just to be safe)
114
+ const sectionsWithQuestions = sections.filter((s) => s.questions.length > 0);
115
+ const { questions: allQuestions, header: headers, rest: restSections, } = (0, type_utils_1.transposeObjectArray)(sectionsWithQuestions, ['questions', 'header']);
116
+ return {
117
+ ...(restSections && (0, type_utils_1.flattenObject)({ obj: { sections: restSections } })),
118
+ ...(headers && flattenOneTrustSectionHeaders(headers, 'sections')),
119
+ ...(allQuestions && (0, exports.flattenOneTrustQuestions)(allQuestions, 'sections')),
120
+ };
121
+ };
122
+ exports.flattenOneTrustSections = flattenOneTrustSections;
123
+ const flattenOneTrustAssessment = (combinedAssessment) => {
124
+ const { approvers, primaryEntityDetails, respondents,
125
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
126
+ respondent, sections, ...rest } = combinedAssessment;
127
+ return {
128
+ ...(0, type_utils_1.flattenObject)({ obj: rest }),
129
+ ...(0, type_utils_1.flattenObject)({ obj: { approvers } }),
130
+ ...(0, type_utils_1.flattenObject)({ obj: { respondents } }),
131
+ ...(0, type_utils_1.flattenObject)({ obj: { primaryEntityDetails } }),
132
+ ...(0, exports.flattenOneTrustSections)(sections),
133
+ };
134
+ };
135
+ exports.flattenOneTrustAssessment = flattenOneTrustAssessment;
136
+ //# sourceMappingURL=flattenOneTrustAssessment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flattenOneTrustAssessment.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/flattenOneTrustAssessment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './flattenOneTrustAssessment';
2
+ export * from './parseCliSyncOtArguments';
3
+ export * from './syncOneTrustAssessmentToDisk';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC"}
@@ -0,0 +1,20 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./flattenOneTrustAssessment"), exports);
18
+ __exportStar(require("./parseCliSyncOtArguments"), exports);
19
+ __exportStar(require("./syncOneTrustAssessmentToDisk"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C;AAC5C,4DAA0C;AAC1C,iEAA+C"}
@@ -0,0 +1,14 @@
1
+ import { OneTrustEnrichedAssessment } from '@transcend-io/privacy-types';
2
+ /**
3
+ * Converts the assessment into a csv entry.
4
+ *
5
+ * @param param - information about the assessment and amount of entries
6
+ * @returns a stringified csv entry ready to be appended to a file
7
+ */
8
+ export declare const oneTrustAssessmentToCsv: ({ assessment, index, }: {
9
+ /** The assessment to convert */
10
+ assessment: OneTrustEnrichedAssessment;
11
+ /** The position of the assessment in the final Json object */
12
+ index: number;
13
+ }) => string;
14
+ //# sourceMappingURL=oneTrustAssessmentToCsv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oneTrustAssessmentToCsv.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/oneTrustAssessmentToCsv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AAGzE;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;IAIlC,gCAAgC;gBACpB,0BAA0B;IACtC,8DAA8D;WACvD,MAAM;MACX,MAeH,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.oneTrustAssessmentToCsv = void 0;
4
+ const oneTrustAssessmentToCsvRecord_1 = require("./oneTrustAssessmentToCsvRecord");
5
+ /**
6
+ * Converts the assessment into a csv entry.
7
+ *
8
+ * @param param - information about the assessment and amount of entries
9
+ * @returns a stringified csv entry ready to be appended to a file
10
+ */
11
+ const oneTrustAssessmentToCsv = ({ assessment, index, }) => {
12
+ const assessmentCsvRecord = (0, oneTrustAssessmentToCsvRecord_1.oneTrustAssessmentToCsvRecord)(assessment);
13
+ // write csv header at the beginning of the file
14
+ const csvRows = [];
15
+ if (index === 0) {
16
+ const header = Object.keys(assessmentCsvRecord).join(',');
17
+ csvRows.push(header);
18
+ }
19
+ // append the row
20
+ const row = `${Object.values(assessmentCsvRecord).join(',')}\n`;
21
+ csvRows.push(row);
22
+ return csvRows.join('\n');
23
+ };
24
+ exports.oneTrustAssessmentToCsv = oneTrustAssessmentToCsv;
25
+ //# sourceMappingURL=oneTrustAssessmentToCsv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oneTrustAssessmentToCsv.js","sourceRoot":"","sources":["../../../src/oneTrust/helpers/oneTrustAssessmentToCsv.ts"],"names":[],"mappings":";;;AACA,mFAAgF;AAEhF;;;;;GAKG;AACI,MAAM,uBAAuB,GAAG,CAAC,EACtC,UAAU,EACV,KAAK,GAMN,EAAU,EAAE;IACX,MAAM,mBAAmB,GAAG,IAAA,6DAA6B,EAAC,UAAU,CAAC,CAAC;IAEtE,gDAAgD;IAChD,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,IAAI,KAAK,KAAK,CAAC,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACtB;IAED,iBAAiB;IACjB,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IAChE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAElB,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC;AAvBW,QAAA,uBAAuB,2BAuBlC"}
@@ -0,0 +1,10 @@
1
+ import { OneTrustAssessmentCsvRecord, OneTrustEnrichedAssessment } from '@transcend-io/privacy-types';
2
+ /**
3
+ * Converts the assessment into a csv record (i.e. a map from the csv header
4
+ * to values). It always returns a record with every key in the same order.
5
+ *
6
+ * @param assessment - the assessment to convert to a csv record
7
+ * @returns a stringified csv entry ready to be appended to a file
8
+ */
9
+ export declare const oneTrustAssessmentToCsvRecord: (assessment: OneTrustEnrichedAssessment) => OneTrustAssessmentCsvRecord;
10
+ //# sourceMappingURL=oneTrustAssessmentToCsvRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oneTrustAssessmentToCsvRecord.d.ts","sourceRoot":"","sources":["../../../src/oneTrust/helpers/oneTrustAssessmentToCsvRecord.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,6BAA6B,CAAC;AAErC;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B,eAE5B,0BAA0B,KACrC,2BAuBF,CAAC"}