@transcend-io/cli 4.85.0 → 4.87.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.
Files changed (136) hide show
  1. package/README.md +24 -23
  2. package/build/cli-cron-pull-identifiers.js +18 -10
  3. package/build/cli-cron-pull-identifiers.js.map +1 -1
  4. package/build/cli-mark-request-data-silos-completed.js +32 -1
  5. package/build/cli-mark-request-data-silos-completed.js.map +1 -1
  6. package/build/cli-pull-consent-metrics.js +1 -1
  7. package/build/cli-pull-consent-metrics.js.map +1 -1
  8. package/build/cli-pull.js +1 -1
  9. package/build/cli-pull.js.map +1 -1
  10. package/build/cli-push.js +1 -1
  11. package/build/cli-push.js.map +1 -1
  12. package/build/cli-request-export.js +7 -2
  13. package/build/cli-request-export.js.map +1 -1
  14. package/build/codecs.d.ts +10778 -0
  15. package/build/codecs.d.ts.map +1 -1
  16. package/build/codecs.js +4 -0
  17. package/build/codecs.js.map +1 -1
  18. package/build/cron/index.d.ts +1 -1
  19. package/build/cron/index.d.ts.map +1 -1
  20. package/build/cron/index.js +1 -1
  21. package/build/cron/index.js.map +1 -1
  22. package/build/cron/markRequestDataSiloIdsCompleted.d.ts +6 -3
  23. package/build/cron/markRequestDataSiloIdsCompleted.d.ts.map +1 -1
  24. package/build/cron/markRequestDataSiloIdsCompleted.js +8 -38
  25. package/build/cron/markRequestDataSiloIdsCompleted.js.map +1 -1
  26. package/build/cron/pullCustomSiloOutstandingIdentifiers.d.ts +33 -0
  27. package/build/cron/pullCustomSiloOutstandingIdentifiers.d.ts.map +1 -0
  28. package/build/cron/pullCustomSiloOutstandingIdentifiers.js +56 -0
  29. package/build/cron/pullCustomSiloOutstandingIdentifiers.js.map +1 -0
  30. package/build/graphql/fetchAllActions.js +1 -1
  31. package/build/graphql/fetchAllActions.js.map +1 -1
  32. package/build/graphql/fetchAllAttributeKeys.js +1 -1
  33. package/build/graphql/fetchAllAttributeKeys.js.map +1 -1
  34. package/build/graphql/fetchAllAttributes.js +2 -2
  35. package/build/graphql/fetchAllAttributes.js.map +1 -1
  36. package/build/graphql/fetchAllBusinessEntities.js +1 -1
  37. package/build/graphql/fetchAllBusinessEntities.js.map +1 -1
  38. package/build/graphql/fetchAllCookies.js +1 -1
  39. package/build/graphql/fetchAllCookies.js.map +1 -1
  40. package/build/graphql/fetchAllDataFlows.js +1 -1
  41. package/build/graphql/fetchAllDataFlows.js.map +1 -1
  42. package/build/graphql/fetchApiKeys.d.ts.map +1 -1
  43. package/build/graphql/fetchApiKeys.js +7 -4
  44. package/build/graphql/fetchApiKeys.js.map +1 -1
  45. package/build/graphql/fetchCatalogs.d.ts.map +1 -1
  46. package/build/graphql/fetchCatalogs.js +1 -1
  47. package/build/graphql/fetchCatalogs.js.map +1 -1
  48. package/build/graphql/fetchConsentManagerId.js +1 -1
  49. package/build/graphql/fetchConsentManagerId.js.map +1 -1
  50. package/build/graphql/fetchIdentifiers.js +1 -1
  51. package/build/graphql/fetchIdentifiers.js.map +1 -1
  52. package/build/graphql/gqls/RequestDataSilo.d.ts.map +1 -1
  53. package/build/graphql/gqls/RequestDataSilo.js +12 -1
  54. package/build/graphql/gqls/RequestDataSilo.js.map +1 -1
  55. package/build/graphql/gqls/RequestEnricher.d.ts.map +1 -1
  56. package/build/graphql/gqls/RequestEnricher.js +8 -0
  57. package/build/graphql/gqls/RequestEnricher.js.map +1 -1
  58. package/build/graphql/gqls/RequestIdentifier.d.ts.map +1 -1
  59. package/build/graphql/gqls/RequestIdentifier.js +7 -0
  60. package/build/graphql/gqls/RequestIdentifier.js.map +1 -1
  61. package/build/graphql/gqls/action.d.ts.map +1 -1
  62. package/build/graphql/gqls/action.js +9 -1
  63. package/build/graphql/gqls/action.js.map +1 -1
  64. package/build/graphql/gqls/apiKey.d.ts.map +1 -1
  65. package/build/graphql/gqls/apiKey.js +12 -1
  66. package/build/graphql/gqls/apiKey.js.map +1 -1
  67. package/build/graphql/gqls/attribute.d.ts.map +1 -1
  68. package/build/graphql/gqls/attribute.js +8 -0
  69. package/build/graphql/gqls/attribute.js.map +1 -1
  70. package/build/graphql/gqls/attributeKey.d.ts.map +1 -1
  71. package/build/graphql/gqls/attributeKey.js +4 -0
  72. package/build/graphql/gqls/attributeKey.js.map +1 -1
  73. package/build/graphql/gqls/businessEntity.d.ts.map +1 -1
  74. package/build/graphql/gqls/businessEntity.js +12 -1
  75. package/build/graphql/gqls/businessEntity.js.map +1 -1
  76. package/build/graphql/gqls/catalog.d.ts.map +1 -1
  77. package/build/graphql/gqls/catalog.js +4 -0
  78. package/build/graphql/gqls/catalog.js.map +1 -1
  79. package/build/graphql/gqls/consentManager.d.ts.map +1 -1
  80. package/build/graphql/gqls/consentManager.js +18 -0
  81. package/build/graphql/gqls/consentManager.js.map +1 -1
  82. package/build/graphql/gqls/dataPoint.d.ts.map +1 -1
  83. package/build/graphql/gqls/dataPoint.js +11 -0
  84. package/build/graphql/gqls/dataPoint.js.map +1 -1
  85. package/build/graphql/gqls/dataSilo.d.ts +2 -3
  86. package/build/graphql/gqls/dataSilo.d.ts.map +1 -1
  87. package/build/graphql/gqls/dataSilo.js +21 -112
  88. package/build/graphql/gqls/dataSilo.js.map +1 -1
  89. package/build/graphql/gqls/enricher.d.ts.map +1 -1
  90. package/build/graphql/gqls/enricher.js +12 -1
  91. package/build/graphql/gqls/enricher.js.map +1 -1
  92. package/build/graphql/gqls/identifier.d.ts.map +1 -1
  93. package/build/graphql/gqls/identifier.js +11 -1
  94. package/build/graphql/gqls/identifier.js.map +1 -1
  95. package/build/graphql/gqls/request.d.ts.map +1 -1
  96. package/build/graphql/gqls/request.js +13 -1
  97. package/build/graphql/gqls/request.js.map +1 -1
  98. package/build/graphql/gqls/template.d.ts.map +1 -1
  99. package/build/graphql/gqls/template.js +4 -0
  100. package/build/graphql/gqls/template.js.map +1 -1
  101. package/build/graphql/makeGraphQLRequest.d.ts.map +1 -1
  102. package/build/graphql/makeGraphQLRequest.js +9 -0
  103. package/build/graphql/makeGraphQLRequest.js.map +1 -1
  104. package/build/graphql/pullTranscendConfiguration.d.ts.map +1 -1
  105. package/build/graphql/pullTranscendConfiguration.js +7 -5
  106. package/build/graphql/pullTranscendConfiguration.js.map +1 -1
  107. package/build/graphql/syncConfigurationToTranscend.d.ts.map +1 -1
  108. package/build/graphql/syncConfigurationToTranscend.js +14 -39
  109. package/build/graphql/syncConfigurationToTranscend.js.map +1 -1
  110. package/build/graphql/syncDataSilos.d.ts +23 -4
  111. package/build/graphql/syncDataSilos.d.ts.map +1 -1
  112. package/build/graphql/syncDataSilos.js +212 -137
  113. package/build/graphql/syncDataSilos.js.map +1 -1
  114. package/build/graphql/syncEnrichers.js +1 -1
  115. package/build/graphql/syncEnrichers.js.map +1 -1
  116. package/build/graphql/syncTemplates.js +1 -1
  117. package/build/graphql/syncTemplates.js.map +1 -1
  118. package/build/requests/index.d.ts +1 -1
  119. package/build/requests/index.d.ts.map +1 -1
  120. package/build/requests/index.js +1 -1
  121. package/build/requests/index.js.map +1 -1
  122. package/build/requests/{pullRequestsToCsv.d.ts → pullPrivacyRequests.d.ts} +11 -6
  123. package/build/requests/pullPrivacyRequests.d.ts.map +1 -0
  124. package/build/requests/{pullRequestsToCsv.js → pullPrivacyRequests.js} +7 -12
  125. package/build/requests/pullPrivacyRequests.js.map +1 -0
  126. package/build/requests/uploadPrivacyRequestsFromCsv.d.ts.map +1 -1
  127. package/build/requests/uploadPrivacyRequestsFromCsv.js +5 -5
  128. package/build/requests/uploadPrivacyRequestsFromCsv.js.map +1 -1
  129. package/build/tsbuildinfo +1 -1
  130. package/package.json +1 -1
  131. package/build/cron/pullCronIdentifiersToCsv.d.ts +0 -24
  132. package/build/cron/pullCronIdentifiersToCsv.d.ts.map +0 -1
  133. package/build/cron/pullCronIdentifiersToCsv.js +0 -53
  134. package/build/cron/pullCronIdentifiersToCsv.js.map +0 -1
  135. package/build/requests/pullRequestsToCsv.d.ts.map +0 -1
  136. package/build/requests/pullRequestsToCsv.js.map +0 -1
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "author": "Transcend Inc.",
3
3
  "name": "@transcend-io/cli",
4
4
  "description": "Small package containing useful typescript utilities.",
5
- "version": "4.85.0",
5
+ "version": "4.87.0",
6
6
  "homepage": "https://github.com/transcend-io/cli",
7
7
  "repository": {
8
8
  "type": "git",
@@ -1,24 +0,0 @@
1
- import { CronIdentifier } from './pullCronPageOfIdentifiers';
2
- import { RequestAction } from '@transcend-io/privacy-types';
3
- /**
4
- * Pull the set of cron job identifiers to CSV
5
- *
6
- * @param options - Options
7
- */
8
- export declare function pullCronIdentifiersToCsv({ file, dataSiloId, auth, sombraAuth, requestType, pageLimit, transcendUrl, }: {
9
- /** CSV file path */
10
- file: string;
11
- /** Transcend API key authentication */
12
- auth: string;
13
- /** Data Silo ID to pull down jobs for */
14
- dataSiloId: string;
15
- /** The request action to fetch */
16
- requestType: RequestAction;
17
- /** Page limit when fetching identifiers */
18
- pageLimit?: number;
19
- /** API URL for Transcend backend */
20
- transcendUrl?: string;
21
- /** Sombra API key authentication */
22
- sombraAuth?: string;
23
- }): Promise<CronIdentifier[]>;
24
- //# sourceMappingURL=pullCronIdentifiersToCsv.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pullCronIdentifiersToCsv.d.ts","sourceRoot":"","sources":["../../src/cron/pullCronIdentifiersToCsv.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,cAAc,EACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAK5D;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,UAAU,EACV,WAAW,EACX,SAAe,EACf,YAAoC,GACrC,EAAE;IACD,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,WAAW,EAAE,aAAa,CAAC;IAC3B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAuD5B"}
@@ -1,53 +0,0 @@
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.pullCronIdentifiersToCsv = void 0;
7
- const graphql_1 = require("../graphql");
8
- const colors_1 = __importDefault(require("colors"));
9
- const uniq_1 = __importDefault(require("lodash/uniq"));
10
- const pullCronPageOfIdentifiers_1 = require("./pullCronPageOfIdentifiers");
11
- const writeCsv_1 = require("./writeCsv");
12
- const logger_1 = require("../logger");
13
- const constants_1 = require("../constants");
14
- /**
15
- * Pull the set of cron job identifiers to CSV
16
- *
17
- * @param options - Options
18
- */
19
- async function pullCronIdentifiersToCsv({ file, dataSiloId, auth, sombraAuth, requestType, pageLimit = 100, transcendUrl = constants_1.DEFAULT_TRANSCEND_API, }) {
20
- // Create sombra instance to communicate with
21
- const sombra = await (0, graphql_1.createSombraGotInstance)(transcendUrl, auth, sombraAuth);
22
- logger_1.logger.info(colors_1.default.magenta(`Pulling identifier for data silo: ${dataSiloId} of type ${requestType}`));
23
- let offset = 0;
24
- const identifiers = [];
25
- let shouldContinue = true;
26
- // Fetch a page of identifiers
27
- while (shouldContinue) {
28
- // eslint-disable-next-line no-await-in-loop
29
- const pageIdentifiers = await (0, pullCronPageOfIdentifiers_1.pullCronPageOfIdentifiers)(sombra, {
30
- dataSiloId,
31
- limit: pageLimit,
32
- offset,
33
- requestType,
34
- });
35
- identifiers.push(...pageIdentifiers);
36
- shouldContinue = pageIdentifiers.length === pageLimit;
37
- offset += pageLimit;
38
- }
39
- logger_1.logger.info(colors_1.default.magenta(`Found: ${identifiers.length} outstanding identifiers to parse`));
40
- // Write out to CSV
41
- const data = identifiers.map(({ attributes, ...identifier }) => ({
42
- ...identifier,
43
- ...attributes.reduce((acc, val) => Object.assign(acc, {
44
- [val.key]: val.values.join(','),
45
- }), {}),
46
- }));
47
- const headers = (0, uniq_1.default)(data.map((d) => Object.keys(d)).flat());
48
- (0, writeCsv_1.writeCsv)(file, data, headers);
49
- logger_1.logger.info(colors_1.default.green(`Successfully wrote ${identifiers.length} identifiers to file "${file}"`));
50
- return identifiers;
51
- }
52
- exports.pullCronIdentifiersToCsv = pullCronIdentifiersToCsv;
53
- //# sourceMappingURL=pullCronIdentifiersToCsv.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pullCronIdentifiersToCsv.js","sourceRoot":"","sources":["../../src/cron/pullCronIdentifiersToCsv.ts"],"names":[],"mappings":";;;;;;AAAA,wCAAqD;AACrD,oDAA4B;AAC5B,uDAA+B;AAC/B,2EAGqC;AAErC,yCAAsC;AACtC,sCAAmC;AACnC,4CAAqD;AAErD;;;;GAIG;AACI,KAAK,UAAU,wBAAwB,CAAC,EAC7C,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,UAAU,EACV,WAAW,EACX,SAAS,GAAG,GAAG,EACf,YAAY,GAAG,iCAAqB,GAgBrC;IACC,6CAA6C;IAC7C,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAuB,EAAC,YAAY,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IAE7E,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,OAAO,CACZ,qCAAqC,UAAU,YAAY,WAAW,EAAE,CACzE,CACF,CAAC;IAEF,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,WAAW,GAAqB,EAAE,CAAC;IACzC,IAAI,cAAc,GAAG,IAAI,CAAC;IAE1B,8BAA8B;IAC9B,OAAO,cAAc,EAAE;QACrB,4CAA4C;QAC5C,MAAM,eAAe,GAAG,MAAM,IAAA,qDAAyB,EAAC,MAAM,EAAE;YAC9D,UAAU;YACV,KAAK,EAAE,SAAS;YAChB,MAAM;YACN,WAAW;SACZ,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QACrC,cAAc,GAAG,eAAe,CAAC,MAAM,KAAK,SAAS,CAAC;QACtD,MAAM,IAAI,SAAS,CAAC;KACrB;IAED,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,OAAO,CACZ,UAAU,WAAW,CAAC,MAAM,mCAAmC,CAChE,CACF,CAAC;IAEF,mBAAmB;IACnB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/D,GAAG,UAAU;QACb,GAAG,UAAU,CAAC,MAAM,CAClB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACX,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACjB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SAChC,CAAC,EACJ,EAAE,CACH;KACF,CAAC,CAAC,CAAC;IACJ,MAAM,OAAO,GAAG,IAAA,cAAI,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,IAAA,mBAAQ,EAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAE9B,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,KAAK,CACV,sBAAsB,WAAW,CAAC,MAAM,yBAAyB,IAAI,GAAG,CACzE,CACF,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AA9ED,4DA8EC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pullRequestsToCsv.d.ts","sourceRoot":"","sources":["../../src/requests/pullRequestsToCsv.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,iBAAiB,EACjB,cAAc,EAEf,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAK3E,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAC5D,0BAA0B;IAC1B,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;CACzC;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,IAAI,EACJ,IAAI,EACJ,OAAY,EACZ,QAAa,EACb,SAAe,EACf,YAAoC,EACpC,eAAe,EACf,cAAc,EACd,SAAS,GACV,EAAE;IACD,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,kCAAkC;IAClC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,eAAe,CAAC,EAAE,IAAI,CAAC;IACvB,kDAAkD;IAClD,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAsHpC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pullRequestsToCsv.js","sourceRoot":"","sources":["../../src/requests/pullRequestsToCsv.ts"],"names":[],"mappings":"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"}