@transcend-io/cli 2.2.4 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -2
- package/build/cli-discover-silos.d.ts +3 -0
- package/build/cli-discover-silos.d.ts.map +1 -0
- package/build/cli-discover-silos.js +54 -0
- package/build/cli-discover-silos.js.map +1 -0
- package/build/cli-pull.js +2 -2
- package/build/cli-pull.js.map +1 -1
- package/build/cli-push.js +2 -2
- package/build/cli-push.js.map +1 -1
- package/build/codecs.d.ts +265 -141
- package/build/codecs.d.ts.map +1 -1
- package/build/codecs.js +34 -18
- package/build/codecs.js.map +1 -1
- package/build/graphql/fetchActiveSiloDiscoPlugin.d.ts +29 -0
- package/build/graphql/fetchActiveSiloDiscoPlugin.d.ts.map +1 -0
- package/build/graphql/fetchActiveSiloDiscoPlugin.js +33 -0
- package/build/graphql/fetchActiveSiloDiscoPlugin.js.map +1 -0
- package/build/{fetchApiKeys.d.ts → graphql/fetchApiKeys.d.ts} +1 -1
- package/build/graphql/fetchApiKeys.d.ts.map +1 -0
- package/build/{fetchApiKeys.js → graphql/fetchApiKeys.js} +1 -1
- package/build/graphql/fetchApiKeys.js.map +1 -0
- package/build/{fetchDataSubjects.d.ts → graphql/fetchDataSubjects.d.ts} +1 -1
- package/build/graphql/fetchDataSubjects.d.ts.map +1 -0
- package/build/{fetchDataSubjects.js → graphql/fetchDataSubjects.js} +1 -1
- package/build/graphql/fetchDataSubjects.js.map +1 -0
- package/build/{fetchIdentifiers.d.ts → graphql/fetchIdentifiers.d.ts} +1 -1
- package/build/graphql/fetchIdentifiers.d.ts.map +1 -0
- package/build/{fetchIdentifiers.js → graphql/fetchIdentifiers.js} +1 -1
- package/build/graphql/fetchIdentifiers.js.map +1 -0
- package/build/graphql/gqls/apiKey.d.ts +2 -0
- package/build/graphql/gqls/apiKey.d.ts.map +1 -0
- package/build/graphql/gqls/apiKey.js +15 -0
- package/build/graphql/gqls/apiKey.js.map +1 -0
- package/build/graphql/gqls/dataPoint.d.ts +4 -0
- package/build/graphql/gqls/dataPoint.d.ts.map +1 -0
- package/build/graphql/gqls/dataPoint.js +95 -0
- package/build/graphql/gqls/dataPoint.js.map +1 -0
- package/build/graphql/gqls/dataSilo.d.ts +5 -0
- package/build/graphql/gqls/dataSilo.d.ts.map +1 -0
- package/build/graphql/gqls/dataSilo.js +125 -0
- package/build/graphql/gqls/dataSilo.js.map +1 -0
- package/build/graphql/gqls/dataSubject.d.ts +3 -0
- package/build/graphql/gqls/dataSubject.d.ts.map +1 -0
- package/build/graphql/gqls/dataSubject.js +23 -0
- package/build/graphql/gqls/dataSubject.js.map +1 -0
- package/build/graphql/gqls/enricher.d.ts +4 -0
- package/build/graphql/gqls/enricher.d.ts.map +1 -0
- package/build/graphql/gqls/enricher.js +73 -0
- package/build/graphql/gqls/enricher.js.map +1 -0
- package/build/graphql/gqls/identifier.d.ts +4 -0
- package/build/graphql/gqls/identifier.d.ts.map +1 -0
- package/build/graphql/gqls/identifier.js +32 -0
- package/build/graphql/gqls/identifier.js.map +1 -0
- package/build/graphql/gqls/index.d.ts +8 -0
- package/build/graphql/gqls/index.d.ts.map +1 -0
- package/build/graphql/gqls/index.js +20 -0
- package/build/graphql/gqls/index.js.map +1 -0
- package/build/graphql/gqls/siloDiscovery.d.ts +3 -0
- package/build/graphql/gqls/siloDiscovery.d.ts.map +1 -0
- package/build/graphql/gqls/siloDiscovery.js +30 -0
- package/build/graphql/gqls/siloDiscovery.js.map +1 -0
- package/build/graphql/index.d.ts +10 -0
- package/build/graphql/index.d.ts.map +1 -0
- package/build/graphql/index.js +22 -0
- package/build/graphql/index.js.map +1 -0
- package/build/{pullTranscendConfiguration.d.ts → graphql/pullTranscendConfiguration.d.ts} +1 -1
- package/build/graphql/pullTranscendConfiguration.d.ts.map +1 -0
- package/build/{pullTranscendConfiguration.js → graphql/pullTranscendConfiguration.js} +10 -2
- package/build/graphql/pullTranscendConfiguration.js.map +1 -0
- package/build/{syncConfigurationToTranscend.d.ts → graphql/syncConfigurationToTranscend.d.ts} +1 -1
- package/build/graphql/syncConfigurationToTranscend.d.ts.map +1 -0
- package/build/{syncConfigurationToTranscend.js → graphql/syncConfigurationToTranscend.js} +1 -1
- package/build/graphql/syncConfigurationToTranscend.js.map +1 -0
- package/build/{syncDataSilos.d.ts → graphql/syncDataSilos.d.ts} +26 -8
- package/build/graphql/syncDataSilos.d.ts.map +1 -0
- package/build/{syncDataSilos.js → graphql/syncDataSilos.js} +51 -6
- package/build/graphql/syncDataSilos.js.map +1 -0
- package/build/{syncEnrichers.d.ts → graphql/syncEnrichers.d.ts} +1 -1
- package/build/graphql/syncEnrichers.d.ts.map +1 -0
- package/build/{syncEnrichers.js → graphql/syncEnrichers.js} +0 -0
- package/build/graphql/syncEnrichers.js.map +1 -0
- package/build/graphql/uploadSiloDiscoveryResults.d.ts +11 -0
- package/build/graphql/uploadSiloDiscoveryResults.d.ts.map +1 -0
- package/build/graphql/uploadSiloDiscoveryResults.js +25 -0
- package/build/graphql/uploadSiloDiscoveryResults.js.map +1 -0
- package/build/index.d.ts +1 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/plugins/constants.d.ts +9 -0
- package/build/plugins/constants.d.ts.map +1 -0
- package/build/plugins/constants.js +8 -0
- package/build/plugins/constants.js.map +1 -0
- package/build/plugins/index.d.ts +4 -0
- package/build/plugins/index.d.ts.map +1 -0
- package/build/plugins/index.js +16 -0
- package/build/plugins/index.js.map +1 -0
- package/build/plugins/scanPackageJson.d.ts +10 -0
- package/build/plugins/scanPackageJson.d.ts.map +1 -0
- package/build/plugins/scanPackageJson.js +51 -0
- package/build/plugins/scanPackageJson.js.map +1 -0
- package/build/plugins/typeguards.d.ts +9 -0
- package/build/plugins/typeguards.d.ts.map +1 -0
- package/build/plugins/typeguards.js +15 -0
- package/build/plugins/typeguards.js.map +1 -0
- package/build/plugins/types.d.ts +13 -0
- package/build/plugins/types.d.ts.map +1 -0
- package/build/plugins/types.js +3 -0
- package/build/plugins/types.js.map +1 -0
- package/build/tsbuildinfo +1 -1
- package/package.json +4 -2
- package/build/fetchApiKeys.d.ts.map +0 -1
- package/build/fetchApiKeys.js.map +0 -1
- package/build/fetchDataSubjects.d.ts.map +0 -1
- package/build/fetchDataSubjects.js.map +0 -1
- package/build/fetchIdentifiers.d.ts.map +0 -1
- package/build/fetchIdentifiers.js.map +0 -1
- package/build/gqls.d.ts +0 -16
- package/build/gqls.d.ts.map +0 -1
- package/build/gqls.js +0 -310
- package/build/gqls.js.map +0 -1
- package/build/pullTranscendConfiguration.d.ts.map +0 -1
- package/build/pullTranscendConfiguration.js.map +0 -1
- package/build/syncConfigurationToTranscend.d.ts.map +0 -1
- package/build/syncConfigurationToTranscend.js.map +0 -1
- package/build/syncDataSilos.d.ts.map +0 -1
- package/build/syncDataSilos.js.map +0 -1
- package/build/syncEnrichers.d.ts.map +0 -1
- package/build/syncEnrichers.js.map +0 -1
package/README.md
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
- [tr-push](#tr-push)
|
|
13
13
|
- [CI Integration](#ci-integration)
|
|
14
14
|
- [Dynamic Variables](#dynamic-variables)
|
|
15
|
+
- [tr-scan](#tr-scan)
|
|
15
16
|
|
|
16
17
|
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
|
|
17
18
|
|
|
@@ -32,6 +33,7 @@ yarn add -D @transcend-io/cli
|
|
|
32
33
|
# cli commands available within package
|
|
33
34
|
yarn tr-pull --auth=xxx
|
|
34
35
|
yarn tr-push --auth=xxx
|
|
36
|
+
yarn tr-scan --auth=xxx
|
|
35
37
|
```
|
|
36
38
|
|
|
37
39
|
or
|
|
@@ -43,6 +45,7 @@ npm i -D @transcend-io/cli
|
|
|
43
45
|
# cli commands available within package
|
|
44
46
|
tr-pull --auth=xxx
|
|
45
47
|
tr-push --auth=xxx
|
|
48
|
+
tr-scan --auth=xxx
|
|
46
49
|
```
|
|
47
50
|
|
|
48
51
|
alternatively, you can install the cli globally on your machine:
|
|
@@ -54,6 +57,7 @@ npm i -g @transcend-io/cli
|
|
|
54
57
|
# cli commands available everywhere on machine
|
|
55
58
|
tr-pull --auth=xxx
|
|
56
59
|
tr-push --auth=xxx
|
|
60
|
+
tr-scan --auth=xxx
|
|
57
61
|
```
|
|
58
62
|
|
|
59
63
|
## Authentication
|
|
@@ -148,8 +152,6 @@ data-silos:
|
|
|
148
152
|
- title: User Model
|
|
149
153
|
description: The centralized user model user
|
|
150
154
|
key: users
|
|
151
|
-
purpose: ESSENTIAL
|
|
152
|
-
category: USER_PROFILE
|
|
153
155
|
privacy-actions:
|
|
154
156
|
- ACCESS
|
|
155
157
|
fields:
|
|
@@ -299,3 +301,18 @@ data-silos:
|
|
|
299
301
|
url: https://example.<<parameters.domain>>/transcend-webhook
|
|
300
302
|
api-key-title: Webhook Key
|
|
301
303
|
```
|
|
304
|
+
|
|
305
|
+
### tr-scan
|
|
306
|
+
|
|
307
|
+
Transcend can help scan dependency management files to help detect new data silos where you may be storing user personal data. Currently we support scanning for new data silos in package.json, but soon we will be adding more!
|
|
308
|
+
|
|
309
|
+
To get started, you'll need to add a data silo with "silo discovery" plugin enabled. You can do this in the Transcend admin-dashboard (or via this CLI tooling).
|
|
310
|
+
|
|
311
|
+
Then, you'll need to grab that `dataSiloId` and pass it to the CLI:
|
|
312
|
+
|
|
313
|
+
```sh
|
|
314
|
+
# Scan a javascript project (package.json files) to look for new data silos
|
|
315
|
+
yarn tr-scan --scanPath=./myJavascriptProject --auth=asd123 --dataSiloId=abcdefg
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
This call will look for all the package.json files that in the scan path `./myJavascriptProject`, parse each of the dependencies into their individual package names, and send it to our Transcend backend for classification. These classifications can then be viewed [here](https://app.transcend.io/data-map/data-inventory/silo-discovery/triage).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-discover-silos.d.ts","sourceRoot":"","sources":["../src/cli-discover-silos.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const yargs_parser_1 = __importDefault(require("yargs-parser"));
|
|
8
|
+
const logger_1 = require("./logger");
|
|
9
|
+
const colors_1 = __importDefault(require("colors"));
|
|
10
|
+
const constants_1 = require("./constants");
|
|
11
|
+
const graphql_request_1 = require("graphql-request");
|
|
12
|
+
const plugins_1 = require("./plugins");
|
|
13
|
+
const graphql_1 = require("./graphql");
|
|
14
|
+
/**
|
|
15
|
+
* Scan dependency files for new data silos.
|
|
16
|
+
*
|
|
17
|
+
* Dev Usage:
|
|
18
|
+
* yarn ts-node ./src/cli-discover-silos.ts --scanPath=./myJavascriptProject \
|
|
19
|
+
* --auth=asd123 \
|
|
20
|
+
* --ignoreDirs=build_directories_to_ignore \
|
|
21
|
+
* --dataSiloId=abcdefgh
|
|
22
|
+
*
|
|
23
|
+
* Note: the data silo ID has to belong to a data silo that has an active plugin of type SILO_DISCOVERY
|
|
24
|
+
*
|
|
25
|
+
* Standard usage
|
|
26
|
+
* yarn tr-scan --scanPath=./myJavascriptProject --auth=asd123
|
|
27
|
+
*/
|
|
28
|
+
async function main() {
|
|
29
|
+
// Parse command line arguments
|
|
30
|
+
const { scanPath = '.', ignoreDirs = '', transcendUrl = 'https://api.transcend.io', dataSiloId = '', auth, } = (0, yargs_parser_1.default)(process.argv.slice(2));
|
|
31
|
+
// // Ensure auth is passed
|
|
32
|
+
if (!auth) {
|
|
33
|
+
logger_1.logger.error(colors_1.default.red('A Transcend API key must be provided. You can specify using --auth=asd123'));
|
|
34
|
+
process.exit(1);
|
|
35
|
+
}
|
|
36
|
+
// Create a GraphQL client
|
|
37
|
+
// eslint-disable-next-line global-require
|
|
38
|
+
const { version } = require('../package.json');
|
|
39
|
+
const client = new graphql_request_1.GraphQLClient(`${transcendUrl}/graphql`, {
|
|
40
|
+
headers: {
|
|
41
|
+
Authorization: `Bearer ${auth}`,
|
|
42
|
+
version,
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
const plugin = await (0, graphql_1.fetchActiveSiloDiscoPlugin)(client, dataSiloId);
|
|
46
|
+
const scanFunction = plugins_1.SILO_DISCOVERY_FUNCTIONS[plugin.dataSilo.type];
|
|
47
|
+
const results = await scanFunction(scanPath, ignoreDirs);
|
|
48
|
+
await (0, graphql_1.uploadSiloDiscoveryResults)(client, plugin.id, results);
|
|
49
|
+
// Indicate success
|
|
50
|
+
logger_1.logger.info(colors_1.default.green(`Scan found ${results.length} potential data silos at ${scanPath}! ` +
|
|
51
|
+
`View at ${constants_1.ADMIN_DASH}/data-map/data-inventory/silo-discovery/triage`));
|
|
52
|
+
}
|
|
53
|
+
main();
|
|
54
|
+
//# sourceMappingURL=cli-discover-silos.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-discover-silos.js","sourceRoot":"","sources":["../src/cli-discover-silos.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,qCAAkC;AAClC,oDAA4B;AAC5B,2CAAyC;AACzC,qDAAgD;AAChD,uCAAqD;AACrD,uCAGmB;AAEnB;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,IAAI;IACjB,+BAA+B;IAC/B,MAAM,EACJ,QAAQ,GAAG,GAAG,EACd,UAAU,GAAG,EAAE,EACf,YAAY,GAAG,0BAA0B,EACzC,UAAU,GAAG,EAAE,EACf,IAAI,GACL,GAAG,IAAA,sBAAK,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjC,2BAA2B;IAC3B,IAAI,CAAC,IAAI,EAAE;QACT,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CACR,2EAA2E,CAC5E,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,0BAA0B;IAC1B,0CAA0C;IAC1C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,IAAI,+BAAa,CAAC,GAAG,YAAY,UAAU,EAAE;QAC1D,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,EAAE;YAC/B,OAAO;SACR;KACF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,IAAA,oCAA0B,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,kCAAwB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAEzD,MAAM,IAAA,oCAA0B,EAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAE7D,mBAAmB;IACnB,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,KAAK,CACV,cAAc,OAAO,CAAC,MAAM,4BAA4B,QAAQ,IAAI;QAClE,WAAW,sBAAU,gDAAgD,CACxE,CACF,CAAC;AACJ,CAAC;AAED,IAAI,EAAE,CAAC"}
|
package/build/cli-pull.js
CHANGED
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
const yargs_parser_1 = __importDefault(require("yargs-parser"));
|
|
8
8
|
const logger_1 = require("./logger");
|
|
9
9
|
const colors_1 = __importDefault(require("colors"));
|
|
10
|
-
const
|
|
10
|
+
const graphql_1 = require("./graphql");
|
|
11
11
|
const graphql_request_1 = require("graphql-request");
|
|
12
12
|
const readTranscendYaml_1 = require("./readTranscendYaml");
|
|
13
13
|
const constants_1 = require("./constants");
|
|
@@ -39,7 +39,7 @@ async function main() {
|
|
|
39
39
|
});
|
|
40
40
|
// Sync to Disk
|
|
41
41
|
try {
|
|
42
|
-
const configuration = await (0,
|
|
42
|
+
const configuration = await (0, graphql_1.pullTranscendConfiguration)(client, dataSiloIds.split(',').filter((x) => !!x));
|
|
43
43
|
(0, readTranscendYaml_1.writeTranscendYaml)(file, configuration);
|
|
44
44
|
}
|
|
45
45
|
catch (err) {
|
package/build/cli-pull.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-pull.js","sourceRoot":"","sources":["../src/cli-pull.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,qCAAkC;AAClC,oDAA4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"cli-pull.js","sourceRoot":"","sources":["../src/cli-pull.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,qCAAkC;AAClC,oDAA4B;AAC5B,uCAAuD;AACvD,qDAAgD;AAChD,2DAAyD;AACzD,2CAAyC;AAEzC;;;;;;;;GAQG;AACH,KAAK,UAAU,IAAI;IACjB,+BAA+B;IAC/B,MAAM,EACJ,IAAI,GAAG,iBAAiB,EACxB,YAAY,GAAG,0BAA0B,EACzC,WAAW,GAAG,EAAE,EAChB,IAAI,GACL,GAAG,IAAA,sBAAK,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjC,wBAAwB;IACxB,IAAI,CAAC,IAAI,EAAE;QACT,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CACR,2EAA2E,CAC5E,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,0BAA0B;IAC1B,0CAA0C;IAC1C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,IAAI,+BAAa,CAAC,GAAG,YAAY,UAAU,EAAE;QAC1D,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,EAAE;YAC/B,OAAO;SACR;KACF,CAAC,CAAC;IAEH,eAAe;IACf,IAAI;QACF,MAAM,aAAa,GAAG,MAAM,IAAA,oCAA0B,EACpD,MAAM,EACL,WAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CACtD,CAAC;QACF,IAAA,sCAAkB,EAAC,IAAI,EAAE,aAAa,CAAC,CAAC;KACzC;IAAC,OAAO,GAAG,EAAE;QACZ,eAAM,CAAC,KAAK,CACV,gBAAM,CAAC,GAAG,CAAC,yCAAyC,GAAG,CAAC,OAAO,EAAE,CAAC,CACnE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,mBAAmB;IACnB,eAAM,CAAC,IAAI,CACT,gBAAM,CAAC,KAAK,CACV,4CAA4C,IAAI,aAAa,sBAAU,EAAE,CAC1E,CACF,CAAC;AACJ,CAAC;AAED,IAAI,EAAE,CAAC"}
|
package/build/cli-push.js
CHANGED
|
@@ -9,7 +9,7 @@ const logger_1 = require("./logger");
|
|
|
9
9
|
const fs_1 = require("fs");
|
|
10
10
|
const readTranscendYaml_1 = require("./readTranscendYaml");
|
|
11
11
|
const colors_1 = __importDefault(require("colors"));
|
|
12
|
-
const
|
|
12
|
+
const graphql_1 = require("./graphql");
|
|
13
13
|
const graphql_request_1 = require("graphql-request");
|
|
14
14
|
const constants_1 = require("./constants");
|
|
15
15
|
/**
|
|
@@ -65,7 +65,7 @@ async function main() {
|
|
|
65
65
|
});
|
|
66
66
|
// Sync to Transcend
|
|
67
67
|
try {
|
|
68
|
-
const encounteredError = await (0,
|
|
68
|
+
const encounteredError = await (0, graphql_1.syncConfigurationToTranscend)(contents, client);
|
|
69
69
|
if (encounteredError) {
|
|
70
70
|
logger_1.logger.info(colors_1.default.red(`Sync encountered errors. View output above for more information, or check out ${constants_1.ADMIN_DASH}`));
|
|
71
71
|
process.exit(1);
|
package/build/cli-push.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-push.js","sourceRoot":"","sources":["../src/cli-push.ts"],"names":[],"mappings":";;;;;;AAEA,gEAAiC;AACjC,qCAAkC;AAClC,2BAAgC;AAChC,2DAAwD;AACxD,oDAA4B;AAE5B,
|
|
1
|
+
{"version":3,"file":"cli-push.js","sourceRoot":"","sources":["../src/cli-push.ts"],"names":[],"mappings":"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"}
|
package/build/codecs.d.ts
CHANGED
|
@@ -55,48 +55,15 @@ export declare const EnricherInput: t.IntersectionC<[t.TypeC<{
|
|
|
55
55
|
ACCOUNT_DELETION: unknown;
|
|
56
56
|
RECTIFICATION: unknown;
|
|
57
57
|
RESTRICTION: unknown;
|
|
58
|
-
DATA_CHECK: unknown;
|
|
59
58
|
}>>;
|
|
60
59
|
}>]>;
|
|
61
60
|
/** Type override */
|
|
62
61
|
export declare type EnricherInput = t.TypeOf<typeof EnricherInput>;
|
|
63
62
|
/**
|
|
64
|
-
*
|
|
65
|
-
* Fields can also be a JSON object or separate file.
|
|
63
|
+
* The data category for a field
|
|
66
64
|
*/
|
|
67
|
-
export declare const
|
|
68
|
-
/** The
|
|
69
|
-
key: t.StringC;
|
|
70
|
-
}>, t.PartialC<{
|
|
71
|
-
/** Display title of the field */
|
|
72
|
-
title: t.StringC;
|
|
73
|
-
/** The unique key of the datapoint. When a database, this is the table name. */
|
|
74
|
-
key: t.StringC;
|
|
75
|
-
/** Description of the field */
|
|
76
|
-
description: t.StringC;
|
|
77
|
-
}>]>;
|
|
78
|
-
/** Type override */
|
|
79
|
-
export declare type FieldInput = t.TypeOf<typeof FieldInput>;
|
|
80
|
-
/**
|
|
81
|
-
* Datapoints are the different types of data models that existing within your data silo.
|
|
82
|
-
* If the data silo is a database, these would be your tables.
|
|
83
|
-
* Note: These are currently called "datapoints" in the Transcend UI and documentation.
|
|
84
|
-
*
|
|
85
|
-
* @see https://docs.transcend.io/docs/the-data-map#datapoints
|
|
86
|
-
*/
|
|
87
|
-
export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
88
|
-
/** The display title of the enricher */
|
|
89
|
-
title: t.StringC;
|
|
90
|
-
/** The unique key of the datapoint. When a database, this is the table name. */
|
|
91
|
-
key: t.StringC;
|
|
92
|
-
}>, t.PartialC<{
|
|
93
|
-
/** Internal description for why the enricher is needed */
|
|
94
|
-
description: t.StringC;
|
|
95
|
-
/**
|
|
96
|
-
* What is the purpose of processing for this datapoint/table?
|
|
97
|
-
*
|
|
98
|
-
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
99
|
-
*/
|
|
65
|
+
export declare const ProcessingPurposeInput: t.TypeC<{
|
|
66
|
+
/** The parent purpose */
|
|
100
67
|
purpose: t.KeyofC<{
|
|
101
68
|
ESSENTIAL: unknown;
|
|
102
69
|
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
@@ -112,11 +79,16 @@ export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
|
112
79
|
OTHER: unknown;
|
|
113
80
|
UNSPECIFIED: unknown;
|
|
114
81
|
}>;
|
|
115
|
-
/**
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
82
|
+
/** User-defined name for this processing purpose sub category */
|
|
83
|
+
name: t.StringC;
|
|
84
|
+
}>;
|
|
85
|
+
/** Type override */
|
|
86
|
+
export declare type ProcessingPurposeInput = t.TypeOf<typeof ProcessingPurposeInput>;
|
|
87
|
+
/**
|
|
88
|
+
* The data category for a field
|
|
89
|
+
*/
|
|
90
|
+
export declare const DataCategoryInput: t.TypeC<{
|
|
91
|
+
/** The parent category */
|
|
120
92
|
category: t.KeyofC<{
|
|
121
93
|
OTHER: unknown;
|
|
122
94
|
UNSPECIFIED: unknown;
|
|
@@ -134,6 +106,93 @@ export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
|
134
106
|
DEVICE: unknown;
|
|
135
107
|
SURVEY: unknown;
|
|
136
108
|
}>;
|
|
109
|
+
/** User-defined name for this sub category */
|
|
110
|
+
name: t.StringC;
|
|
111
|
+
}>;
|
|
112
|
+
/** Type override */
|
|
113
|
+
export declare type DataCategoryInput = t.TypeOf<typeof DataCategoryInput>;
|
|
114
|
+
/**
|
|
115
|
+
* Annotate specific fields within a datapoint. These are often database table columns.
|
|
116
|
+
* Fields can also be a JSON object or separate file.
|
|
117
|
+
*/
|
|
118
|
+
export declare const FieldInput: t.IntersectionC<[t.TypeC<{
|
|
119
|
+
/** The unique key of the field. When a database, this is the column name. */
|
|
120
|
+
key: t.StringC;
|
|
121
|
+
}>, t.PartialC<{
|
|
122
|
+
/** The display title of the field */
|
|
123
|
+
title: t.StringC;
|
|
124
|
+
/** Description of the field */
|
|
125
|
+
description: t.UnionC<[t.StringC, t.NullC]>;
|
|
126
|
+
/**
|
|
127
|
+
* What is the purpose of processing for this datapoint/table?
|
|
128
|
+
*
|
|
129
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
130
|
+
*/
|
|
131
|
+
purposes: t.ArrayC<t.TypeC<{
|
|
132
|
+
/** The parent purpose */
|
|
133
|
+
purpose: t.KeyofC<{
|
|
134
|
+
ESSENTIAL: unknown;
|
|
135
|
+
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
136
|
+
ADVERTISING: unknown;
|
|
137
|
+
MARKETING: unknown;
|
|
138
|
+
ANALYTICS: unknown;
|
|
139
|
+
PERSONALIZATION: unknown;
|
|
140
|
+
OPERATION_SECURITY: unknown;
|
|
141
|
+
LEGAL: unknown;
|
|
142
|
+
TRANSFER: unknown;
|
|
143
|
+
SALE: unknown;
|
|
144
|
+
HR: unknown;
|
|
145
|
+
OTHER: unknown;
|
|
146
|
+
UNSPECIFIED: unknown;
|
|
147
|
+
}>;
|
|
148
|
+
/** User-defined name for this processing purpose sub category */
|
|
149
|
+
name: t.StringC;
|
|
150
|
+
}>>;
|
|
151
|
+
/**
|
|
152
|
+
* The category of personal data for this datapoint
|
|
153
|
+
*
|
|
154
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
155
|
+
*/
|
|
156
|
+
categories: t.ArrayC<t.TypeC<{
|
|
157
|
+
/** The parent category */
|
|
158
|
+
category: t.KeyofC<{
|
|
159
|
+
OTHER: unknown;
|
|
160
|
+
UNSPECIFIED: unknown;
|
|
161
|
+
FINANCIAL: unknown;
|
|
162
|
+
HEALTH: unknown;
|
|
163
|
+
CONTACT: unknown;
|
|
164
|
+
LOCATION: unknown;
|
|
165
|
+
DEMOGRAPHIC: unknown;
|
|
166
|
+
ID: unknown;
|
|
167
|
+
ONLINE_ACTIVITY: unknown;
|
|
168
|
+
USER_PROFILE: unknown;
|
|
169
|
+
SOCIAL_MEDIA: unknown;
|
|
170
|
+
CONNECTION: unknown;
|
|
171
|
+
TRACKING: unknown;
|
|
172
|
+
DEVICE: unknown;
|
|
173
|
+
SURVEY: unknown;
|
|
174
|
+
}>;
|
|
175
|
+
/** User-defined name for this sub category */
|
|
176
|
+
name: t.StringC;
|
|
177
|
+
}>>;
|
|
178
|
+
}>]>;
|
|
179
|
+
/** Type override */
|
|
180
|
+
export declare type FieldInput = t.TypeOf<typeof FieldInput>;
|
|
181
|
+
/**
|
|
182
|
+
* Datapoints are the different types of data models that existing within your data silo.
|
|
183
|
+
* If the data silo is a database, these would be your tables.
|
|
184
|
+
* Note: These are currently called "datapoints" in the Transcend UI and documentation.
|
|
185
|
+
*
|
|
186
|
+
* @see https://docs.transcend.io/docs/the-data-map#datapoints
|
|
187
|
+
*/
|
|
188
|
+
export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
189
|
+
/** The display title of the enricher */
|
|
190
|
+
title: t.StringC;
|
|
191
|
+
/** The unique key of the datapoint. When a database, this is the table name. */
|
|
192
|
+
key: t.StringC;
|
|
193
|
+
}>, t.PartialC<{
|
|
194
|
+
/** Internal description for why the enricher is needed */
|
|
195
|
+
description: t.StringC;
|
|
137
196
|
/**
|
|
138
197
|
* The SQL queries that should be run for that datapoint in a privacy request.
|
|
139
198
|
*
|
|
@@ -171,15 +230,65 @@ export declare const DatapointInput: t.IntersectionC<[t.TypeC<{
|
|
|
171
230
|
* This is often the column metadata
|
|
172
231
|
*/
|
|
173
232
|
fields: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
174
|
-
/** The unique key of the field */
|
|
233
|
+
/** The unique key of the field. When a database, this is the column name. */
|
|
175
234
|
key: t.StringC;
|
|
176
235
|
}>, t.PartialC<{
|
|
177
|
-
/**
|
|
236
|
+
/** The display title of the field */
|
|
178
237
|
title: t.StringC;
|
|
179
|
-
/** The unique key of the datapoint. When a database, this is the table name. */
|
|
180
|
-
key: t.StringC;
|
|
181
238
|
/** Description of the field */
|
|
182
|
-
description: t.StringC
|
|
239
|
+
description: t.UnionC<[t.StringC, t.NullC]>;
|
|
240
|
+
/**
|
|
241
|
+
* What is the purpose of processing for this datapoint/table?
|
|
242
|
+
*
|
|
243
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
244
|
+
*/
|
|
245
|
+
purposes: t.ArrayC<t.TypeC<{
|
|
246
|
+
/** The parent purpose */
|
|
247
|
+
purpose: t.KeyofC<{
|
|
248
|
+
ESSENTIAL: unknown;
|
|
249
|
+
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
250
|
+
ADVERTISING: unknown;
|
|
251
|
+
MARKETING: unknown;
|
|
252
|
+
ANALYTICS: unknown;
|
|
253
|
+
PERSONALIZATION: unknown;
|
|
254
|
+
OPERATION_SECURITY: unknown;
|
|
255
|
+
LEGAL: unknown;
|
|
256
|
+
TRANSFER: unknown;
|
|
257
|
+
SALE: unknown;
|
|
258
|
+
HR: unknown;
|
|
259
|
+
OTHER: unknown;
|
|
260
|
+
UNSPECIFIED: unknown;
|
|
261
|
+
}>;
|
|
262
|
+
/** User-defined name for this processing purpose sub category */
|
|
263
|
+
name: t.StringC;
|
|
264
|
+
}>>;
|
|
265
|
+
/**
|
|
266
|
+
* The category of personal data for this datapoint
|
|
267
|
+
*
|
|
268
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
269
|
+
*/
|
|
270
|
+
categories: t.ArrayC<t.TypeC<{
|
|
271
|
+
/** The parent category */
|
|
272
|
+
category: t.KeyofC<{
|
|
273
|
+
OTHER: unknown;
|
|
274
|
+
UNSPECIFIED: unknown;
|
|
275
|
+
FINANCIAL: unknown;
|
|
276
|
+
HEALTH: unknown;
|
|
277
|
+
CONTACT: unknown;
|
|
278
|
+
LOCATION: unknown;
|
|
279
|
+
DEMOGRAPHIC: unknown;
|
|
280
|
+
ID: unknown;
|
|
281
|
+
ONLINE_ACTIVITY: unknown;
|
|
282
|
+
USER_PROFILE: unknown;
|
|
283
|
+
SOCIAL_MEDIA: unknown;
|
|
284
|
+
CONNECTION: unknown;
|
|
285
|
+
TRACKING: unknown;
|
|
286
|
+
DEVICE: unknown;
|
|
287
|
+
SURVEY: unknown;
|
|
288
|
+
}>;
|
|
289
|
+
/** User-defined name for this sub category */
|
|
290
|
+
name: t.StringC;
|
|
291
|
+
}>>;
|
|
183
292
|
}>]>>;
|
|
184
293
|
}>]>;
|
|
185
294
|
/** Type override */
|
|
@@ -248,48 +357,6 @@ export declare const DataSiloInput: t.IntersectionC<[t.TypeC<{
|
|
|
248
357
|
}>, t.PartialC<{
|
|
249
358
|
/** Internal description for why the enricher is needed */
|
|
250
359
|
description: t.StringC;
|
|
251
|
-
/**
|
|
252
|
-
* What is the purpose of processing for this datapoint/table?
|
|
253
|
-
*
|
|
254
|
-
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
255
|
-
*/
|
|
256
|
-
purpose: t.KeyofC<{
|
|
257
|
-
ESSENTIAL: unknown;
|
|
258
|
-
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
259
|
-
ADVERTISING: unknown;
|
|
260
|
-
MARKETING: unknown;
|
|
261
|
-
ANALYTICS: unknown;
|
|
262
|
-
PERSONALIZATION: unknown;
|
|
263
|
-
OPERATION_SECURITY: unknown;
|
|
264
|
-
LEGAL: unknown;
|
|
265
|
-
TRANSFER: unknown;
|
|
266
|
-
SALE: unknown;
|
|
267
|
-
HR: unknown;
|
|
268
|
-
OTHER: unknown;
|
|
269
|
-
UNSPECIFIED: unknown;
|
|
270
|
-
}>;
|
|
271
|
-
/**
|
|
272
|
-
* The category of personal data for this datapoint
|
|
273
|
-
*
|
|
274
|
-
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
275
|
-
*/
|
|
276
|
-
category: t.KeyofC<{
|
|
277
|
-
OTHER: unknown;
|
|
278
|
-
UNSPECIFIED: unknown;
|
|
279
|
-
FINANCIAL: unknown;
|
|
280
|
-
HEALTH: unknown;
|
|
281
|
-
CONTACT: unknown;
|
|
282
|
-
LOCATION: unknown;
|
|
283
|
-
DEMOGRAPHIC: unknown;
|
|
284
|
-
ID: unknown;
|
|
285
|
-
ONLINE_ACTIVITY: unknown;
|
|
286
|
-
USER_PROFILE: unknown;
|
|
287
|
-
SOCIAL_MEDIA: unknown;
|
|
288
|
-
CONNECTION: unknown;
|
|
289
|
-
TRACKING: unknown;
|
|
290
|
-
DEVICE: unknown;
|
|
291
|
-
SURVEY: unknown;
|
|
292
|
-
}>;
|
|
293
360
|
/**
|
|
294
361
|
* The SQL queries that should be run for that datapoint in a privacy request.
|
|
295
362
|
*
|
|
@@ -327,15 +394,65 @@ export declare const DataSiloInput: t.IntersectionC<[t.TypeC<{
|
|
|
327
394
|
* This is often the column metadata
|
|
328
395
|
*/
|
|
329
396
|
fields: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
330
|
-
/** The unique key of the field */
|
|
397
|
+
/** The unique key of the field. When a database, this is the column name. */
|
|
331
398
|
key: t.StringC;
|
|
332
399
|
}>, t.PartialC<{
|
|
333
|
-
/**
|
|
400
|
+
/** The display title of the field */
|
|
334
401
|
title: t.StringC;
|
|
335
|
-
/** The unique key of the datapoint. When a database, this is the table name. */
|
|
336
|
-
key: t.StringC;
|
|
337
402
|
/** Description of the field */
|
|
338
|
-
description: t.StringC
|
|
403
|
+
description: t.UnionC<[t.StringC, t.NullC]>;
|
|
404
|
+
/**
|
|
405
|
+
* What is the purpose of processing for this datapoint/table?
|
|
406
|
+
*
|
|
407
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
408
|
+
*/
|
|
409
|
+
purposes: t.ArrayC<t.TypeC<{
|
|
410
|
+
/** The parent purpose */
|
|
411
|
+
purpose: t.KeyofC<{
|
|
412
|
+
ESSENTIAL: unknown;
|
|
413
|
+
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
414
|
+
ADVERTISING: unknown;
|
|
415
|
+
MARKETING: unknown;
|
|
416
|
+
ANALYTICS: unknown;
|
|
417
|
+
PERSONALIZATION: unknown;
|
|
418
|
+
OPERATION_SECURITY: unknown;
|
|
419
|
+
LEGAL: unknown;
|
|
420
|
+
TRANSFER: unknown;
|
|
421
|
+
SALE: unknown;
|
|
422
|
+
HR: unknown;
|
|
423
|
+
OTHER: unknown;
|
|
424
|
+
UNSPECIFIED: unknown;
|
|
425
|
+
}>;
|
|
426
|
+
/** User-defined name for this processing purpose sub category */
|
|
427
|
+
name: t.StringC;
|
|
428
|
+
}>>;
|
|
429
|
+
/**
|
|
430
|
+
* The category of personal data for this datapoint
|
|
431
|
+
*
|
|
432
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
433
|
+
*/
|
|
434
|
+
categories: t.ArrayC<t.TypeC<{
|
|
435
|
+
/** The parent category */
|
|
436
|
+
category: t.KeyofC<{
|
|
437
|
+
OTHER: unknown;
|
|
438
|
+
UNSPECIFIED: unknown;
|
|
439
|
+
FINANCIAL: unknown;
|
|
440
|
+
HEALTH: unknown;
|
|
441
|
+
CONTACT: unknown;
|
|
442
|
+
LOCATION: unknown;
|
|
443
|
+
DEMOGRAPHIC: unknown;
|
|
444
|
+
ID: unknown;
|
|
445
|
+
ONLINE_ACTIVITY: unknown;
|
|
446
|
+
USER_PROFILE: unknown;
|
|
447
|
+
SOCIAL_MEDIA: unknown;
|
|
448
|
+
CONNECTION: unknown;
|
|
449
|
+
TRACKING: unknown;
|
|
450
|
+
DEVICE: unknown;
|
|
451
|
+
SURVEY: unknown;
|
|
452
|
+
}>;
|
|
453
|
+
/** User-defined name for this sub category */
|
|
454
|
+
name: t.StringC;
|
|
455
|
+
}>>;
|
|
339
456
|
}>]>>;
|
|
340
457
|
}>]>>;
|
|
341
458
|
}>]>;
|
|
@@ -382,7 +499,6 @@ export declare const TranscendInput: t.PartialC<{
|
|
|
382
499
|
ACCOUNT_DELETION: unknown;
|
|
383
500
|
RECTIFICATION: unknown;
|
|
384
501
|
RESTRICTION: unknown;
|
|
385
|
-
DATA_CHECK: unknown;
|
|
386
502
|
}>>;
|
|
387
503
|
}>]>>;
|
|
388
504
|
/**
|
|
@@ -444,48 +560,6 @@ export declare const TranscendInput: t.PartialC<{
|
|
|
444
560
|
}>, t.PartialC<{
|
|
445
561
|
/** Internal description for why the enricher is needed */
|
|
446
562
|
description: t.StringC;
|
|
447
|
-
/**
|
|
448
|
-
* What is the purpose of processing for this datapoint/table?
|
|
449
|
-
*
|
|
450
|
-
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
451
|
-
*/
|
|
452
|
-
purpose: t.KeyofC<{
|
|
453
|
-
ESSENTIAL: unknown;
|
|
454
|
-
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
455
|
-
ADVERTISING: unknown;
|
|
456
|
-
MARKETING: unknown;
|
|
457
|
-
ANALYTICS: unknown;
|
|
458
|
-
PERSONALIZATION: unknown;
|
|
459
|
-
OPERATION_SECURITY: unknown;
|
|
460
|
-
LEGAL: unknown;
|
|
461
|
-
TRANSFER: unknown;
|
|
462
|
-
SALE: unknown;
|
|
463
|
-
HR: unknown;
|
|
464
|
-
OTHER: unknown;
|
|
465
|
-
UNSPECIFIED: unknown;
|
|
466
|
-
}>;
|
|
467
|
-
/**
|
|
468
|
-
* The category of personal data for this datapoint
|
|
469
|
-
*
|
|
470
|
-
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
471
|
-
*/
|
|
472
|
-
category: t.KeyofC<{
|
|
473
|
-
OTHER: unknown;
|
|
474
|
-
UNSPECIFIED: unknown;
|
|
475
|
-
FINANCIAL: unknown;
|
|
476
|
-
HEALTH: unknown;
|
|
477
|
-
CONTACT: unknown;
|
|
478
|
-
LOCATION: unknown;
|
|
479
|
-
DEMOGRAPHIC: unknown;
|
|
480
|
-
ID: unknown;
|
|
481
|
-
ONLINE_ACTIVITY: unknown;
|
|
482
|
-
USER_PROFILE: unknown;
|
|
483
|
-
SOCIAL_MEDIA: unknown;
|
|
484
|
-
CONNECTION: unknown;
|
|
485
|
-
TRACKING: unknown;
|
|
486
|
-
DEVICE: unknown;
|
|
487
|
-
SURVEY: unknown;
|
|
488
|
-
}>;
|
|
489
563
|
/**
|
|
490
564
|
* The SQL queries that should be run for that datapoint in a privacy request.
|
|
491
565
|
*
|
|
@@ -523,15 +597,65 @@ export declare const TranscendInput: t.PartialC<{
|
|
|
523
597
|
* This is often the column metadata
|
|
524
598
|
*/
|
|
525
599
|
fields: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
526
|
-
/** The unique key of the field */
|
|
600
|
+
/** The unique key of the field. When a database, this is the column name. */
|
|
527
601
|
key: t.StringC;
|
|
528
602
|
}>, t.PartialC<{
|
|
529
|
-
/**
|
|
603
|
+
/** The display title of the field */
|
|
530
604
|
title: t.StringC;
|
|
531
|
-
/** The unique key of the datapoint. When a database, this is the table name. */
|
|
532
|
-
key: t.StringC;
|
|
533
605
|
/** Description of the field */
|
|
534
|
-
description: t.StringC
|
|
606
|
+
description: t.UnionC<[t.StringC, t.NullC]>;
|
|
607
|
+
/**
|
|
608
|
+
* What is the purpose of processing for this datapoint/table?
|
|
609
|
+
*
|
|
610
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
611
|
+
*/
|
|
612
|
+
purposes: t.ArrayC<t.TypeC<{
|
|
613
|
+
/** The parent purpose */
|
|
614
|
+
purpose: t.KeyofC<{
|
|
615
|
+
ESSENTIAL: unknown;
|
|
616
|
+
ADDITIONAL_FUNCTIONALITY: unknown;
|
|
617
|
+
ADVERTISING: unknown;
|
|
618
|
+
MARKETING: unknown;
|
|
619
|
+
ANALYTICS: unknown;
|
|
620
|
+
PERSONALIZATION: unknown;
|
|
621
|
+
OPERATION_SECURITY: unknown;
|
|
622
|
+
LEGAL: unknown;
|
|
623
|
+
TRANSFER: unknown;
|
|
624
|
+
SALE: unknown;
|
|
625
|
+
HR: unknown;
|
|
626
|
+
OTHER: unknown;
|
|
627
|
+
UNSPECIFIED: unknown;
|
|
628
|
+
}>;
|
|
629
|
+
/** User-defined name for this processing purpose sub category */
|
|
630
|
+
name: t.StringC;
|
|
631
|
+
}>>;
|
|
632
|
+
/**
|
|
633
|
+
* The category of personal data for this datapoint
|
|
634
|
+
*
|
|
635
|
+
* @see https://github.com/transcend-io/privacy-types/blob/main/src/objects.ts
|
|
636
|
+
*/
|
|
637
|
+
categories: t.ArrayC<t.TypeC<{
|
|
638
|
+
/** The parent category */
|
|
639
|
+
category: t.KeyofC<{
|
|
640
|
+
OTHER: unknown;
|
|
641
|
+
UNSPECIFIED: unknown;
|
|
642
|
+
FINANCIAL: unknown;
|
|
643
|
+
HEALTH: unknown;
|
|
644
|
+
CONTACT: unknown;
|
|
645
|
+
LOCATION: unknown;
|
|
646
|
+
DEMOGRAPHIC: unknown;
|
|
647
|
+
ID: unknown;
|
|
648
|
+
ONLINE_ACTIVITY: unknown;
|
|
649
|
+
USER_PROFILE: unknown;
|
|
650
|
+
SOCIAL_MEDIA: unknown;
|
|
651
|
+
CONNECTION: unknown;
|
|
652
|
+
TRACKING: unknown;
|
|
653
|
+
DEVICE: unknown;
|
|
654
|
+
SURVEY: unknown;
|
|
655
|
+
}>;
|
|
656
|
+
/** User-defined name for this sub category */
|
|
657
|
+
name: t.StringC;
|
|
658
|
+
}>>;
|
|
535
659
|
}>]>>;
|
|
536
660
|
}>]>>;
|
|
537
661
|
}>]>>;
|