@transcend-io/cli 4.26.3 → 4.30.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 (83) hide show
  1. package/README.md +72 -24
  2. package/build/cli-pull.js +18 -1
  3. package/build/cli-pull.js.map +1 -1
  4. package/build/codecs.d.ts +11417 -17
  5. package/build/codecs.d.ts.map +1 -1
  6. package/build/codecs.js +259 -10
  7. package/build/codecs.js.map +1 -1
  8. package/build/graphql/fetchAllActions.d.ts +24 -0
  9. package/build/graphql/fetchAllActions.d.ts.map +1 -0
  10. package/build/graphql/fetchAllActions.js +32 -0
  11. package/build/graphql/fetchAllActions.js.map +1 -0
  12. package/build/graphql/fetchAllBusinessEntities.d.ts +38 -0
  13. package/build/graphql/fetchAllBusinessEntities.d.ts.map +1 -0
  14. package/build/graphql/fetchAllBusinessEntities.js +32 -0
  15. package/build/graphql/fetchAllBusinessEntities.js.map +1 -0
  16. package/build/graphql/fetchAllCookies.js +1 -1
  17. package/build/graphql/fetchAllCookies.js.map +1 -1
  18. package/build/graphql/fetchConsentManagerId.d.ts +29 -0
  19. package/build/graphql/fetchConsentManagerId.d.ts.map +1 -1
  20. package/build/graphql/fetchConsentManagerId.js +24 -2
  21. package/build/graphql/fetchConsentManagerId.js.map +1 -1
  22. package/build/graphql/fetchDataSubjects.d.ts +21 -1
  23. package/build/graphql/fetchDataSubjects.d.ts.map +1 -1
  24. package/build/graphql/fetchDataSubjects.js +16 -4
  25. package/build/graphql/fetchDataSubjects.js.map +1 -1
  26. package/build/graphql/fetchIdentifiers.d.ts +28 -0
  27. package/build/graphql/fetchIdentifiers.d.ts.map +1 -1
  28. package/build/graphql/fetchIdentifiers.js.map +1 -1
  29. package/build/graphql/gqls/action.d.ts +2 -0
  30. package/build/graphql/gqls/action.d.ts.map +1 -0
  31. package/build/graphql/gqls/action.js +19 -0
  32. package/build/graphql/gqls/action.js.map +1 -0
  33. package/build/graphql/gqls/attribute.js +2 -2
  34. package/build/graphql/gqls/attribute.js.map +1 -1
  35. package/build/graphql/gqls/businessEntity.d.ts +2 -0
  36. package/build/graphql/gqls/businessEntity.d.ts.map +1 -0
  37. package/build/graphql/gqls/businessEntity.js +27 -0
  38. package/build/graphql/gqls/businessEntity.js.map +1 -0
  39. package/build/graphql/gqls/consentManager.d.ts +4 -0
  40. package/build/graphql/gqls/consentManager.d.ts.map +1 -1
  41. package/build/graphql/gqls/consentManager.js +47 -4
  42. package/build/graphql/gqls/consentManager.js.map +1 -1
  43. package/build/graphql/gqls/dataSubject.d.ts.map +1 -1
  44. package/build/graphql/gqls/dataSubject.js +7 -0
  45. package/build/graphql/gqls/dataSubject.js.map +1 -1
  46. package/build/graphql/gqls/enricher.js +1 -1
  47. package/build/graphql/gqls/identifier.d.ts.map +1 -1
  48. package/build/graphql/gqls/identifier.js +15 -0
  49. package/build/graphql/gqls/identifier.js.map +1 -1
  50. package/build/graphql/gqls/index.d.ts +2 -0
  51. package/build/graphql/gqls/index.d.ts.map +1 -1
  52. package/build/graphql/gqls/index.js +2 -0
  53. package/build/graphql/gqls/index.js.map +1 -1
  54. package/build/graphql/index.d.ts +5 -0
  55. package/build/graphql/index.d.ts.map +1 -1
  56. package/build/graphql/index.js +5 -0
  57. package/build/graphql/index.js.map +1 -1
  58. package/build/graphql/pullTranscendConfiguration.d.ts +28 -7
  59. package/build/graphql/pullTranscendConfiguration.d.ts.map +1 -1
  60. package/build/graphql/pullTranscendConfiguration.js +298 -109
  61. package/build/graphql/pullTranscendConfiguration.js.map +1 -1
  62. package/build/graphql/syncAttribute.d.ts +12 -0
  63. package/build/graphql/syncAttribute.d.ts.map +1 -0
  64. package/build/graphql/syncAttribute.js +68 -0
  65. package/build/graphql/syncAttribute.js.map +1 -0
  66. package/build/graphql/syncConfigurationToTranscend.d.ts.map +1 -1
  67. package/build/graphql/syncConfigurationToTranscend.js +107 -9
  68. package/build/graphql/syncConfigurationToTranscend.js.map +1 -1
  69. package/build/graphql/syncConsentManager.d.ts +10 -0
  70. package/build/graphql/syncConsentManager.d.ts.map +1 -0
  71. package/build/graphql/syncConsentManager.js +23 -0
  72. package/build/graphql/syncConsentManager.js.map +1 -0
  73. package/build/graphql/syncDataFlows.d.ts +17 -0
  74. package/build/graphql/syncDataFlows.d.ts.map +1 -0
  75. package/build/graphql/syncDataFlows.js +70 -0
  76. package/build/graphql/syncDataFlows.js.map +1 -0
  77. package/build/graphql/syncEnrichers.d.ts.map +1 -1
  78. package/build/graphql/syncEnrichers.js +6 -3
  79. package/build/graphql/syncEnrichers.js.map +1 -1
  80. package/build/tests/readTranscendYaml.test.js +0 -3
  81. package/build/tests/readTranscendYaml.test.js.map +1 -1
  82. package/build/tsbuildinfo +1 -1
  83. package/package.json +2 -2
@@ -3,18 +3,51 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.pullTranscendConfiguration = void 0;
6
+ exports.pullTranscendConfiguration = exports.DEFAULT_TRANSCEND_PULL_RESOURCES = exports.TranscendPullResource = void 0;
7
+ const tmp_attribute_key_1 = require("../tmp-attribute-key");
8
+ const privacy_types_1 = require("@transcend-io/privacy-types");
7
9
  const flatten_1 = __importDefault(require("lodash/flatten"));
8
10
  const keyBy_1 = __importDefault(require("lodash/keyBy"));
9
11
  const mapValues_1 = __importDefault(require("lodash/mapValues"));
10
12
  const syncDataSilos_1 = require("./syncDataSilos");
11
13
  const fetchDataSubjects_1 = require("./fetchDataSubjects");
12
14
  const fetchApiKeys_1 = require("./fetchApiKeys");
15
+ const fetchConsentManagerId_1 = require("./fetchConsentManagerId");
13
16
  const syncEnrichers_1 = require("./syncEnrichers");
17
+ const fetchAllDataFlows_1 = require("./fetchAllDataFlows");
18
+ const fetchAllBusinessEntities_1 = require("./fetchAllBusinessEntities");
19
+ const fetchAllActions_1 = require("./fetchAllActions");
20
+ const fetchIdentifiers_1 = require("./fetchIdentifiers");
21
+ const fetchAllCookies_1 = require("./fetchAllCookies");
14
22
  const syncTemplates_1 = require("./syncTemplates");
23
+ const fetchAllAttributes_1 = require("./fetchAllAttributes");
15
24
  const formatAttributeValues_1 = require("./formatAttributeValues");
16
25
  const logger_1 = require("../logger");
17
26
  const colors_1 = __importDefault(require("colors"));
27
+ /**
28
+ * Resources that can be pulled in
29
+ */
30
+ var TranscendPullResource;
31
+ (function (TranscendPullResource) {
32
+ TranscendPullResource["ApiKeys"] = "apiKeys";
33
+ TranscendPullResource["Attributes"] = "attributes";
34
+ TranscendPullResource["Templates"] = "templates";
35
+ TranscendPullResource["DataSilos"] = "dataSilos";
36
+ TranscendPullResource["Enrichers"] = "enrichers";
37
+ TranscendPullResource["DataFlows"] = "dataFlows";
38
+ TranscendPullResource["BusinessEntities"] = "businessEntities";
39
+ TranscendPullResource["Actions"] = "actions";
40
+ TranscendPullResource["DataSubjects"] = "dataSubjects";
41
+ TranscendPullResource["Identifiers"] = "identifiers";
42
+ TranscendPullResource["Cookies"] = "cookies";
43
+ TranscendPullResource["ConsentManager"] = "consentManager";
44
+ })(TranscendPullResource = exports.TranscendPullResource || (exports.TranscendPullResource = {}));
45
+ exports.DEFAULT_TRANSCEND_PULL_RESOURCES = [
46
+ TranscendPullResource.DataSilos,
47
+ TranscendPullResource.Enrichers,
48
+ TranscendPullResource.Templates,
49
+ TranscendPullResource.ApiKeys,
50
+ ];
18
51
  /**
19
52
  * Pull a yaml configuration from Transcend
20
53
  *
@@ -22,27 +55,73 @@ const colors_1 = __importDefault(require("colors"));
22
55
  * @param dataSiloIds - The data silos to sync. If empty list, pull all.
23
56
  * @returns The configuration
24
57
  */
25
- async function pullTranscendConfiguration(client, { dataSiloIds, integrationNames, debug, pageSize, }) {
58
+ async function pullTranscendConfiguration(client, { dataSiloIds, integrationNames, debug, resources = exports.DEFAULT_TRANSCEND_PULL_RESOURCES, pageSize, }) {
26
59
  if (dataSiloIds.length > 0 && integrationNames.length > 0) {
27
60
  throw new Error('Only 1 of integrationNames OR dataSiloIds can be provided');
28
61
  }
29
62
  logger_1.logger.info(colors_1.default.magenta(`Fetching data with page size ${pageSize}...`));
30
- const [dataSubjects, apiKeyTitleMap, dataSilos, enrichers, templates] = await Promise.all([
63
+ // Fetch all data, but only conditional fetch data that is requested
64
+ const [dataSubjects, apiKeyTitleMap, dataSilos, enrichers, dataFlows, cookies, attributes, templates, identifiers, actions, businessEntities, consentManager,] = await Promise.all([
31
65
  // Grab all data subjects in the organization
32
- (0, fetchDataSubjects_1.fetchDataSubjects)({}, client, true),
66
+ resources.includes(TranscendPullResource.DataSilos) ||
67
+ resources.includes(TranscendPullResource.DataSubjects)
68
+ ? (0, fetchDataSubjects_1.fetchAllDataSubjects)(client)
69
+ : [],
33
70
  // Grab API keys
34
- (0, fetchApiKeys_1.fetchApiKeys)({}, client, true),
71
+ resources.includes(TranscendPullResource.ApiKeys)
72
+ ? (0, fetchApiKeys_1.fetchApiKeys)({}, client, true)
73
+ : [],
35
74
  // Fetch the data silos
36
- (0, syncDataSilos_1.fetchEnrichedDataSilos)(client, {
37
- ids: dataSiloIds,
38
- integrationNames,
39
- pageSize,
40
- debug,
41
- }),
75
+ resources.includes(TranscendPullResource.DataSilos)
76
+ ? (0, syncDataSilos_1.fetchEnrichedDataSilos)(client, {
77
+ ids: dataSiloIds,
78
+ integrationNames,
79
+ pageSize,
80
+ debug,
81
+ })
82
+ : [],
42
83
  // Fetch enrichers
43
- (0, syncEnrichers_1.fetchAllEnrichers)(client),
84
+ resources.includes(TranscendPullResource.Enrichers)
85
+ ? (0, syncEnrichers_1.fetchAllEnrichers)(client)
86
+ : [],
87
+ // Fetch data flows
88
+ resources.includes(TranscendPullResource.DataFlows)
89
+ ? [
90
+ ...(await (0, fetchAllDataFlows_1.fetchAllDataFlows)(client, privacy_types_1.ConsentTrackerStatus.Live)),
91
+ ...(await (0, fetchAllDataFlows_1.fetchAllDataFlows)(client, privacy_types_1.ConsentTrackerStatus.NeedsReview)),
92
+ ]
93
+ : [],
94
+ // Fetch data flows
95
+ resources.includes(TranscendPullResource.Cookies)
96
+ ? [
97
+ ...(await (0, fetchAllCookies_1.fetchAllCookies)(client, privacy_types_1.ConsentTrackerStatus.Live)),
98
+ ...(await (0, fetchAllCookies_1.fetchAllCookies)(client, privacy_types_1.ConsentTrackerStatus.NeedsReview)),
99
+ ]
100
+ : [],
101
+ // Fetch attributes
102
+ resources.includes(TranscendPullResource.Attributes)
103
+ ? (0, fetchAllAttributes_1.fetchAllAttributes)(client)
104
+ : [],
44
105
  // Fetch email templates
45
- (0, syncTemplates_1.fetchAllTemplates)(client),
106
+ resources.includes(TranscendPullResource.Templates)
107
+ ? (0, syncTemplates_1.fetchAllTemplates)(client)
108
+ : [],
109
+ // Fetch identifiers
110
+ resources.includes(TranscendPullResource.Identifiers)
111
+ ? (0, fetchIdentifiers_1.fetchAllIdentifiers)(client)
112
+ : [],
113
+ // Fetch actions
114
+ resources.includes(TranscendPullResource.Actions)
115
+ ? (0, fetchAllActions_1.fetchAllActions)(client)
116
+ : [],
117
+ // Fetch business entities
118
+ resources.includes(TranscendPullResource.BusinessEntities)
119
+ ? (0, fetchAllBusinessEntities_1.fetchAllBusinessEntities)(client)
120
+ : [],
121
+ // Fetch consent manager
122
+ resources.includes(TranscendPullResource.ConsentManager)
123
+ ? (0, fetchConsentManagerId_1.fetchConsentManager)(client)
124
+ : undefined,
46
125
  ]);
47
126
  const result = {};
48
127
  // Save API keys
@@ -55,113 +134,223 @@ async function pullTranscendConfiguration(client, { dataSiloIds, integrationName
55
134
  title,
56
135
  }));
57
136
  }
137
+ // Save Consent Manager
138
+ if (consentManager) {
139
+ result['consent-manager'] = {
140
+ domains: consentManager.configuration.domains,
141
+ };
142
+ }
143
+ // Save Data Subjects
144
+ if (dataSubjects.length > 0) {
145
+ result['data-subjects'] = dataSubjects.map(({ type, title, adminDashboardDefaultSilentMode, actions, }) => ({
146
+ type,
147
+ title: title === null || title === void 0 ? void 0 : title.defaultMessage,
148
+ adminDashboardDefaultSilentMode,
149
+ actions: actions.map(({ type }) => type),
150
+ }));
151
+ }
152
+ // Save business entities
153
+ if (businessEntities.length > 0) {
154
+ result['business-entities'] = businessEntities.map(({ title, description, address, headquarterCountry, headquarterSubDivision, dataProtectionOfficerName, dataProtectionOfficerEmail, attributeValues, }) => ({
155
+ title,
156
+ description: description || undefined,
157
+ address: address || undefined,
158
+ headquarterCountry: headquarterCountry || undefined,
159
+ headquarterSubDivision: headquarterSubDivision || undefined,
160
+ dataProtectionOfficerName: dataProtectionOfficerName || undefined,
161
+ dataProtectionOfficerEmail: dataProtectionOfficerEmail || undefined,
162
+ attributes: attributeValues !== undefined && attributeValues.length > 0
163
+ ? (0, formatAttributeValues_1.formatAttributeValues)(attributeValues)
164
+ : undefined,
165
+ }));
166
+ }
167
+ // Save Actions
168
+ if (actions.length > 0) {
169
+ result.actions = actions.map(({ type, skipSecondaryIfNoFiles, skipDownloadableStep, requiresReview, waitingPeriod, }) => ({
170
+ type,
171
+ skipSecondaryIfNoFiles,
172
+ skipDownloadableStep,
173
+ requiresReview,
174
+ waitingPeriod,
175
+ }));
176
+ }
177
+ // Save identifiers
178
+ if (identifiers.length > 0) {
179
+ result.identifiers = identifiers.map(({ name, type, regex, selectOptions, privacyCenterVisibility, isRequiredInForm, placeholder, displayTitle, dataSubjects, displayDescription, }) => ({
180
+ name,
181
+ type,
182
+ regex,
183
+ selectOptions: selectOptions.length > 0 ? selectOptions : undefined,
184
+ privacyCenterVisibility: privacyCenterVisibility.length > 0
185
+ ? privacyCenterVisibility
186
+ : undefined,
187
+ isRequiredInForm,
188
+ placeholder: placeholder || undefined,
189
+ dataSubjects: dataSubjects.length > 0
190
+ ? dataSubjects.map(({ type }) => type)
191
+ : undefined,
192
+ displayTitle: displayTitle === null || displayTitle === void 0 ? void 0 : displayTitle.defaultMessage,
193
+ displayDescription: displayDescription === null || displayDescription === void 0 ? void 0 : displayDescription.defaultMessage,
194
+ }));
195
+ }
196
+ // Save data flows
197
+ if (dataFlows.length > 0) {
198
+ result['data-flows'] = dataFlows.map(({ value, type, description, trackingType, service, status, owners, teams, attributeValues, }) => ({
199
+ value,
200
+ type,
201
+ description: description || undefined,
202
+ trackingPurposes: trackingType,
203
+ status,
204
+ service: service === null || service === void 0 ? void 0 : service.integrationName,
205
+ owners: owners.map(({ email }) => email),
206
+ teams: teams.map(({ name }) => name),
207
+ attributes: attributeValues !== undefined && attributeValues.length > 0
208
+ ? (0, formatAttributeValues_1.formatAttributeValues)(attributeValues)
209
+ : undefined,
210
+ }));
211
+ }
212
+ // Save cookies
213
+ if (cookies.length > 0) {
214
+ result.cookies = cookies.map(({ name, isRegex, description, trackingPurposes, service, status, owners, teams, attributeValues, }) => ({
215
+ name,
216
+ isRegex,
217
+ description: description || undefined,
218
+ trackingPurposes,
219
+ status,
220
+ service: service === null || service === void 0 ? void 0 : service.integrationName,
221
+ owners: owners.map(({ email }) => email),
222
+ teams: teams.map(({ name }) => name),
223
+ attributes: attributeValues !== undefined && attributeValues.length > 0
224
+ ? (0, formatAttributeValues_1.formatAttributeValues)(attributeValues)
225
+ : undefined,
226
+ }));
227
+ }
228
+ // Save attributes
229
+ if (attributes.length > 0) {
230
+ result.attributes = attributes.map(({ description, name, type, values, ...rest }) => ({
231
+ description: description || undefined,
232
+ resources: Object.entries(rest)
233
+ .filter(([key, value]) => value && key.startsWith('enabledOn'))
234
+ .map(([key]) => tmp_attribute_key_1.ENABLED_ON_TO_ATTRIBUTE_KEY[key]),
235
+ name,
236
+ type,
237
+ values: values.map(({ name, color }) => ({
238
+ name,
239
+ color: color || undefined,
240
+ })),
241
+ }));
242
+ }
58
243
  // save email templates
59
- if (dataSiloIds.length === 0) {
244
+ if (dataSiloIds.length === 0 && templates.length > 0) {
60
245
  result.templates = templates.map(({ title }) => ({ title }));
61
246
  }
62
247
  // Save enrichers
63
- if (enrichers.length > 0 && dataSiloIds.length === 0) {
64
- result.enrichers = enrichers
65
- .filter(({ type }) => type === 'SERVER')
66
- .map(({ title, url, inputIdentifier, identifiers, actions, }) => ({
248
+ if (enrichers.length > 0) {
249
+ result.enrichers = enrichers.map(({ title, url, inputIdentifier, identifiers, actions, }) => ({
67
250
  title,
68
- url,
69
- 'input-identifier': inputIdentifier.name,
251
+ url: url || undefined,
252
+ 'input-identifier': inputIdentifier === null || inputIdentifier === void 0 ? void 0 : inputIdentifier.name,
70
253
  'output-identifiers': identifiers.map(({ name }) => name),
71
- 'privacy-actions': actions,
254
+ 'privacy-actions': Object.values(privacy_types_1.RequestAction).length === actions.length
255
+ ? undefined
256
+ : actions,
72
257
  }));
73
258
  }
74
259
  // Save data silos
75
- result['data-silos'] = dataSilos.map(([{ title, description, url, type, apiKeys, notifyEmailAddress, identifiers, dependentDataSilos, owners, teams, subjectBlocklist, isLive, promptAVendorEmailSendFrequency, promptAVendorEmailSendType, promptAVendorEmailIncludeIdentifiersAttachment, promptAVendorEmailCompletionLinkType, manualWorkRetryFrequency, catalog, attributeValues, }, dataPoints,]) => {
76
- var _a;
77
- return ({
78
- title,
79
- description,
80
- integrationName: type,
81
- url: url || undefined,
82
- 'api-key-title': (_a = apiKeys[0]) === null || _a === void 0 ? void 0 : _a.title,
83
- 'identity-keys': identifiers
84
- .filter(({ isConnected }) => isConnected)
85
- .map(({ name }) => name),
86
- ...(dependentDataSilos.length > 0
87
- ? {
88
- 'deletion-dependencies': dependentDataSilos.map(({ title }) => title),
89
- }
90
- : {}),
91
- ...(owners.length > 0
92
- ? { owners: owners.map(({ email }) => email) }
93
- : {}),
94
- ...(teams.length > 0 ? { teams: teams.map(({ name }) => name) } : {}),
95
- disabled: !isLive,
96
- 'data-subjects': subjectBlocklist.length > 0
97
- ? (0, fetchDataSubjects_1.convertToDataSubjectAllowlist)(subjectBlocklist.map(({ type }) => type), dataSubjects)
98
- : undefined,
99
- ...(catalog.hasAvcFunctionality
100
- ? {
101
- 'email-settings': {
102
- 'notify-email-address': notifyEmailAddress || undefined,
103
- 'send-frequency': promptAVendorEmailSendFrequency,
104
- 'send-type': promptAVendorEmailSendType,
105
- 'include-identifiers-attachment': promptAVendorEmailIncludeIdentifiersAttachment,
106
- 'completion-link-type': promptAVendorEmailCompletionLinkType,
107
- 'manual-work-retry-frequency': manualWorkRetryFrequency,
108
- },
109
- }
110
- : {}),
111
- attributes: attributeValues !== undefined && attributeValues.length > 0
112
- ? (0, formatAttributeValues_1.formatAttributeValues)(attributeValues)
113
- : undefined,
114
- datapoints: dataPoints
115
- .map((dataPoint) => {
116
- var _a, _b, _c;
117
- return ({
118
- key: dataPoint.name,
119
- title: (_a = dataPoint.title) === null || _a === void 0 ? void 0 : _a.defaultMessage,
120
- description: (_b = dataPoint.description) === null || _b === void 0 ? void 0 : _b.defaultMessage,
121
- ...(dataPoint.path.length > 0 ? { path: dataPoint.path } : {}),
122
- ...(((_c = dataPoint.dataCollection) === null || _c === void 0 ? void 0 : _c.title)
123
- ? {
124
- 'data-collection-tag': dataPoint.dataCollection.title.defaultMessage,
125
- }
126
- : {}),
127
- ...(dataPoint.dbIntegrationQueries.length > 0
128
- ? {
129
- 'privacy-action-queries': (0, mapValues_1.default)((0, keyBy_1.default)(dataPoint.dbIntegrationQueries, 'requestType'), (databaseIntegrationQuery) => databaseIntegrationQuery.suggestedQuery ||
130
- databaseIntegrationQuery.query),
131
- }
132
- : {}),
133
- ...(dataPoint.subDataPoints.length > 0
134
- ? {
135
- fields: dataPoint.subDataPoints
136
- .map((field) => ({
137
- key: field.name,
138
- description: field.description,
139
- purposes: field.purposes,
140
- categories: field.categories,
141
- 'access-request-visibility-enabled': field.accessRequestVisibilityEnabled,
142
- 'erasure-request-redaction-enabled': field.erasureRequestRedactionEnabled,
143
- attributes: field.attributeValues !== undefined &&
144
- field.attributeValues.length > 0
145
- ? (0, formatAttributeValues_1.formatAttributeValues)(field.attributeValues)
146
- : undefined,
147
- }))
148
- .sort((a, b) => a.key.localeCompare(b.key)),
149
- }
150
- : {}),
151
- 'privacy-actions': dataPoint.actionSettings
152
- .filter(({ active }) => active)
153
- .map(({ type }) => type),
154
- });
155
- })
156
- .sort((a, b) => {
157
- var _a, _b;
158
- return [...((_a = a.path) !== null && _a !== void 0 ? _a : []), a.key]
159
- .join('.')
160
- .localeCompare([...((_b = b.path) !== null && _b !== void 0 ? _b : []), b.key].join('.'));
161
- }),
260
+ if (dataSilos.length > 0) {
261
+ const indexedDataSubjects = (0, keyBy_1.default)(dataSubjects, 'type');
262
+ result['data-silos'] = dataSilos.map(([{ title, description, url, type, apiKeys, notifyEmailAddress, identifiers, dependentDataSilos, owners, teams, subjectBlocklist, isLive, promptAVendorEmailSendFrequency, promptAVendorEmailSendType, promptAVendorEmailIncludeIdentifiersAttachment, promptAVendorEmailCompletionLinkType, manualWorkRetryFrequency, catalog, attributeValues, }, dataPoints,]) => {
263
+ var _a;
264
+ return ({
265
+ title,
266
+ description,
267
+ integrationName: type,
268
+ url: url || undefined,
269
+ 'api-key-title': (_a = apiKeys[0]) === null || _a === void 0 ? void 0 : _a.title,
270
+ 'identity-keys': identifiers
271
+ .filter(({ isConnected }) => isConnected)
272
+ .map(({ name }) => name),
273
+ ...(dependentDataSilos.length > 0
274
+ ? {
275
+ 'deletion-dependencies': dependentDataSilos.map(({ title }) => title),
276
+ }
277
+ : {}),
278
+ ...(owners.length > 0
279
+ ? { owners: owners.map(({ email }) => email) }
280
+ : {}),
281
+ ...(teams.length > 0 ? { teams: teams.map(({ name }) => name) } : {}),
282
+ disabled: !isLive,
283
+ 'data-subjects': subjectBlocklist.length > 0
284
+ ? (0, fetchDataSubjects_1.convertToDataSubjectAllowlist)(subjectBlocklist.map(({ type }) => type), indexedDataSubjects)
285
+ : undefined,
286
+ ...(catalog.hasAvcFunctionality
287
+ ? {
288
+ 'email-settings': {
289
+ 'notify-email-address': notifyEmailAddress || undefined,
290
+ 'send-frequency': promptAVendorEmailSendFrequency,
291
+ 'send-type': promptAVendorEmailSendType,
292
+ 'include-identifiers-attachment': promptAVendorEmailIncludeIdentifiersAttachment,
293
+ 'completion-link-type': promptAVendorEmailCompletionLinkType,
294
+ 'manual-work-retry-frequency': manualWorkRetryFrequency,
295
+ },
296
+ }
297
+ : {}),
298
+ attributes: attributeValues !== undefined && attributeValues.length > 0
299
+ ? (0, formatAttributeValues_1.formatAttributeValues)(attributeValues)
300
+ : undefined,
301
+ datapoints: dataPoints
302
+ .map((dataPoint) => {
303
+ var _a, _b, _c;
304
+ return ({
305
+ key: dataPoint.name,
306
+ title: (_a = dataPoint.title) === null || _a === void 0 ? void 0 : _a.defaultMessage,
307
+ description: (_b = dataPoint.description) === null || _b === void 0 ? void 0 : _b.defaultMessage,
308
+ ...(dataPoint.path.length > 0 ? { path: dataPoint.path } : {}),
309
+ ...(((_c = dataPoint.dataCollection) === null || _c === void 0 ? void 0 : _c.title)
310
+ ? {
311
+ 'data-collection-tag': dataPoint.dataCollection.title.defaultMessage,
312
+ }
313
+ : {}),
314
+ ...(dataPoint.dbIntegrationQueries.length > 0
315
+ ? {
316
+ 'privacy-action-queries': (0, mapValues_1.default)((0, keyBy_1.default)(dataPoint.dbIntegrationQueries, 'requestType'), (databaseIntegrationQuery) => databaseIntegrationQuery.suggestedQuery ||
317
+ databaseIntegrationQuery.query),
318
+ }
319
+ : {}),
320
+ ...(dataPoint.subDataPoints.length > 0
321
+ ? {
322
+ fields: dataPoint.subDataPoints
323
+ .map((field) => ({
324
+ key: field.name,
325
+ description: field.description,
326
+ purposes: field.purposes,
327
+ categories: field.categories,
328
+ 'access-request-visibility-enabled': field.accessRequestVisibilityEnabled,
329
+ 'erasure-request-redaction-enabled': field.erasureRequestRedactionEnabled,
330
+ attributes: field.attributeValues !== undefined &&
331
+ field.attributeValues.length > 0
332
+ ? (0, formatAttributeValues_1.formatAttributeValues)(field.attributeValues)
333
+ : undefined,
334
+ }))
335
+ .sort((a, b) => a.key.localeCompare(b.key)),
336
+ }
337
+ : {}),
338
+ 'privacy-actions': dataPoint.actionSettings
339
+ .filter(({ active }) => active)
340
+ .map(({ type }) => type),
341
+ });
342
+ })
343
+ .sort((a, b) => {
344
+ var _a, _b;
345
+ return [...((_a = a.path) !== null && _a !== void 0 ? _a : []), a.key]
346
+ .join('.')
347
+ .localeCompare([...((_b = b.path) !== null && _b !== void 0 ? _b : []), b.key].join('.'));
348
+ }),
349
+ });
162
350
  });
163
- });
351
+ }
164
352
  return result;
165
353
  }
166
354
  exports.pullTranscendConfiguration = pullTranscendConfiguration;
355
+ /* eslint-enable max-lines */
167
356
  //# sourceMappingURL=pullTranscendConfiguration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pullTranscendConfiguration.js","sourceRoot":"","sources":["../../src/graphql/pullTranscendConfiguration.ts"],"names":[],"mappings":";;;;;;AAOA,6DAAqC;AACrC,yDAAiC;AACjC,iEAAyC;AACzC,mDAAyD;AACzD,2DAG6B;AAC7B,iDAA8C;AAC9C,mDAAoD;AACpD,mDAAoD;AACpD,mEAAgE;AAChE,sCAAmC;AACnC,oDAA4B;AAE5B;;;;;;GAMG;AACI,KAAK,UAAU,0BAA0B,CAC9C,MAAqB,EACrB,EACE,WAAW,EACX,gBAAgB,EAChB,KAAK,EACL,QAAQ,GAUT;IAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QACzD,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;KACH;IAED,eAAM,CAAC,IAAI,CAAC,gBAAM,CAAC,OAAO,CAAC,gCAAgC,QAAQ,KAAK,CAAC,CAAC,CAAC;IAE3E,MAAM,CAAC,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,GACnE,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,6CAA6C;QAC7C,IAAA,qCAAiB,EAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC;QACnC,gBAAgB;QAChB,IAAA,2BAAY,EAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC;QAC9B,uBAAuB;QACvB,IAAA,sCAAsB,EAAC,MAAM,EAAE;YAC7B,GAAG,EAAE,WAAW;YAChB,gBAAgB;YAChB,QAAQ;YACR,KAAK;SACN,CAAC;QACF,kBAAkB;QAClB,IAAA,iCAAiB,EAAC,MAAM,CAAC;QACzB,wBAAwB;QACxB,IAAA,iCAAiB,EAAC,MAAM,CAAC;KAC1B,CAAC,CAAC;IAEL,MAAM,MAAM,GAAmB,EAAE,CAAC;IAElC,gBAAgB;IAChB,MAAM,YAAY,GAAG,IAAA,iBAAO,EAC1B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CACpE,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACzE,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC7B,CAAC;IACF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9B,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;aAC/C,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;aACnD,GAAG,CACF,CAAC,EAAE,KAAK,EAAE,EAAe,EAAE,CAAC,CAAC;YAC3B,KAAK;SACN,CAAC,CACH,CAAC;KACL;IAED,uBAAuB;IACvB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;KAC9D;IAED,iBAAiB;IACjB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QACpD,MAAM,CAAC,SAAS,GAAG,SAAS;aACzB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC;aACvC,GAAG,CACF,CAAC,EACC,KAAK,EACL,GAAG,EACH,eAAe,EACf,WAAW,EACX,OAAO,GACR,EAAiB,EAAE,CAAC,CAAC;YACpB,KAAK;YACL,GAAG;YACH,kBAAkB,EAAE,eAAe,CAAC,IAAI;YACxC,oBAAoB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;YACzD,iBAAiB,EAAE,OAAO;SAC3B,CAAC,CACH,CAAC;KACL;IAED,kBAAkB;IAClB,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,GAAG,CAClC,CAAC,CACC,EACE,KAAK,EACL,WAAW,EACX,GAAG,EACH,IAAI,EACJ,OAAO,EACP,kBAAkB,EAClB,WAAW,EACX,kBAAkB,EAClB,MAAM,EACN,KAAK,EACL,gBAAgB,EAChB,MAAM,EACN,+BAA+B,EAC/B,0BAA0B,EAC1B,8CAA8C,EAC9C,oCAAoC,EACpC,wBAAwB,EACxB,OAAO,EACP,eAAe,GAChB,EACD,UAAU,EACX,EAAiB,EAAE;;QAAC,OAAA,CAAC;YACpB,KAAK;YACL,WAAW;YACX,eAAe,EAAE,IAAI;YACrB,GAAG,EAAE,GAAG,IAAI,SAAS;YACrB,eAAe,EAAE,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,KAAK;YAClC,eAAe,EAAE,WAAW;iBACzB,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC;iBACxC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;YAC1B,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;gBAC/B,CAAC,CAAC;oBACE,uBAAuB,EAAE,kBAAkB,CAAC,GAAG,CAC7C,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CACrB;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBACnB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE;gBAC9C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,QAAQ,EAAE,CAAC,MAAM;YACjB,eAAe,EACb,gBAAgB,CAAC,MAAM,GAAG,CAAC;gBACzB,CAAC,CAAC,IAAA,iDAA6B,EAC3B,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EACxC,YAAY,CACb;gBACH,CAAC,CAAC,SAAS;YACf,GAAG,CAAC,OAAO,CAAC,mBAAmB;gBAC7B,CAAC,CAAC;oBACE,gBAAgB,EAAE;wBAChB,sBAAsB,EAAE,kBAAkB,IAAI,SAAS;wBACvD,gBAAgB,EAAE,+BAA+B;wBACjD,WAAW,EAAE,0BAA0B;wBACvC,gCAAgC,EAC9B,8CAA8C;wBAChD,sBAAsB,EAAE,oCAAoC;wBAC5D,6BAA6B,EAAE,wBAAwB;qBACxD;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,UAAU,EACR,eAAe,KAAK,SAAS,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;gBACzD,CAAC,CAAC,IAAA,6CAAqB,EAAC,eAAe,CAAC;gBACxC,CAAC,CAAC,SAAS;YAEf,UAAU,EAAE,UAAU;iBACnB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;;gBAAC,OAAA,CAAC;oBACnB,GAAG,EAAE,SAAS,CAAC,IAAI;oBACnB,KAAK,EAAE,MAAA,SAAS,CAAC,KAAK,0CAAE,cAAc;oBACtC,WAAW,EAAE,MAAA,SAAS,CAAC,WAAW,0CAAE,cAAc;oBAClD,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9D,GAAG,CAAC,CAAA,MAAA,SAAS,CAAC,cAAc,0CAAE,KAAK;wBACjC,CAAC,CAAC;4BACE,qBAAqB,EACnB,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,cAAc;yBAChD;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC;wBAC3C,CAAC,CAAC;4BACE,wBAAwB,EAAE,IAAA,mBAAS,EACjC,IAAA,eAAK,EAAC,SAAS,CAAC,oBAAoB,EAAE,aAAa,CAAC,EACpD,CAAC,wBAAwB,EAAE,EAAE,CAC3B,wBAAwB,CAAC,cAAc;gCACvC,wBAAwB,CAAC,KAAK,CACjC;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;wBACpC,CAAC,CAAC;4BACE,MAAM,EAAE,SAAS,CAAC,aAAa;iCAC5B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gCACf,GAAG,EAAE,KAAK,CAAC,IAAI;gCACf,WAAW,EAAE,KAAK,CAAC,WAAW;gCAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gCACxB,UAAU,EAAE,KAAK,CAAC,UAAU;gCAC5B,mCAAmC,EACjC,KAAK,CAAC,8BAA8B;gCACtC,mCAAmC,EACjC,KAAK,CAAC,8BAA8B;gCACtC,UAAU,EACR,KAAK,CAAC,eAAe,KAAK,SAAS;oCACnC,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;oCAC9B,CAAC,CAAC,IAAA,6CAAqB,EAAC,KAAK,CAAC,eAAe,CAAC;oCAC9C,CAAC,CAAC,SAAS;6BAChB,CAAC,CAAC;iCACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;yBAC9C;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,iBAAiB,EAAE,SAAS,CAAC,cAAc;yBACxC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC;yBAC9B,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;iBAC3B,CAAC,CAAA;aAAA,CAAC;iBACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;;gBACb,OAAA,CAAC,GAAG,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;qBACvB,IAAI,CAAC,GAAG,CAAC;qBACT,aAAa,CAAC,CAAC,GAAG,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;aAAA,CACvD;SACJ,CAAC,CAAA;KAAA,CACH,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC;AAxND,gEAwNC"}
1
+ {"version":3,"file":"pullTranscendConfiguration.js","sourceRoot":"","sources":["../../src/graphql/pullTranscendConfiguration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { AttributeInput } from '../codecs';
2
+ import { GraphQLClient } from 'graphql-request';
3
+ import { Attribute } from './fetchAllAttributes';
4
+ /**
5
+ * Sync attribute
6
+ *
7
+ * @param client - GraphQL client
8
+ * @param attribute - The attribute input
9
+ * @param existingAttribute - The existing attribute configuration if it exists
10
+ */
11
+ export declare function syncAttribute(client: GraphQLClient, attribute: AttributeInput, existingAttribute?: Attribute): Promise<void>;
12
+ //# sourceMappingURL=syncAttribute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncAttribute.d.ts","sourceRoot":"","sources":["../../src/graphql/syncAttribute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAO3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAOhD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,cAAc,EACzB,iBAAiB,CAAC,EAAE,SAAS,GAC5B,OAAO,CAAC,IAAI,CAAC,CAqEf"}
@@ -0,0 +1,68 @@
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.syncAttribute = void 0;
7
+ const tmp_attribute_key_1 = require("../tmp-attribute-key");
8
+ const difference_1 = __importDefault(require("lodash/difference"));
9
+ const keyBy_1 = __importDefault(require("lodash/keyBy"));
10
+ const gqls_1 = require("./gqls");
11
+ const makeGraphQLRequest_1 = require("./makeGraphQLRequest");
12
+ /**
13
+ * Sync attribute
14
+ *
15
+ * @param client - GraphQL client
16
+ * @param attribute - The attribute input
17
+ * @param existingAttribute - The existing attribute configuration if it exists
18
+ */
19
+ async function syncAttribute(client, attribute, existingAttribute) {
20
+ var _a, _b;
21
+ // attribute key input
22
+ const input = {
23
+ name: attribute.name,
24
+ ...(_a = attribute.resources) === null || _a === void 0 ? void 0 : _a.reduce((acc, resource) => Object.assign(acc, {
25
+ [tmp_attribute_key_1.ATTRIBUTE_KEY_TO_ENABLED_ON[resource]]: true,
26
+ }), {}),
27
+ ...(0, difference_1.default)(Object.values(tmp_attribute_key_1.AttributeResourceType), attribute.resources || []).reduce((acc, resource) => Object.assign(acc, {
28
+ [tmp_attribute_key_1.ATTRIBUTE_KEY_TO_ENABLED_ON[resource]]: false,
29
+ }), {}),
30
+ };
31
+ // create or update attribute key
32
+ let attributeKeyId;
33
+ if (!existingAttribute) {
34
+ const { createAttributeKey: { attributeKey }, } = await (0, makeGraphQLRequest_1.makeGraphQLRequest)(client, gqls_1.CREATE_ATTRIBUTE, {
35
+ type: attribute.type,
36
+ description: attribute.description,
37
+ ...input,
38
+ });
39
+ attributeKeyId = attributeKey.id;
40
+ }
41
+ else {
42
+ await (0, makeGraphQLRequest_1.makeGraphQLRequest)(client, gqls_1.UPDATE_ATTRIBUTE, {
43
+ attributeKeyId: existingAttribute.id,
44
+ description: existingAttribute.isCustom
45
+ ? attribute.description
46
+ : undefined,
47
+ ...input,
48
+ });
49
+ attributeKeyId = existingAttribute.id;
50
+ }
51
+ // upsert attribute values
52
+ const existingAttributeMap = (0, keyBy_1.default)((existingAttribute === null || existingAttribute === void 0 ? void 0 : existingAttribute.values) || [], 'name');
53
+ const missingAttributes = !existingAttribute
54
+ ? attribute.values || []
55
+ : ((_b = attribute.values) === null || _b === void 0 ? void 0 : _b.filter((value) => !existingAttributeMap[value.name])) ||
56
+ [];
57
+ if (missingAttributes.length > 0) {
58
+ await (0, makeGraphQLRequest_1.makeGraphQLRequest)(client, gqls_1.CREATE_ATTRIBUTE_VALUES, {
59
+ input: missingAttributes.map(({ color, name }) => ({
60
+ color: color || undefined,
61
+ name,
62
+ attributeKeyId,
63
+ })),
64
+ });
65
+ }
66
+ }
67
+ exports.syncAttribute = syncAttribute;
68
+ //# sourceMappingURL=syncAttribute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncAttribute.js","sourceRoot":"","sources":["../../src/graphql/syncAttribute.ts"],"names":[],"mappings":";;;;;;AACA,4DAG8B;AAC9B,mEAA2C;AAC3C,yDAAiC;AAEjC,iCAIgB;AAChB,6DAA0D;AAG1D;;;;;;GAMG;AACI,KAAK,UAAU,aAAa,CACjC,MAAqB,EACrB,SAAyB,EACzB,iBAA6B;;IAE7B,sBAAsB;IACtB,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,GAAG,MAAA,SAAS,CAAC,SAAS,0CAAE,MAAM,CAC5B,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAChB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACjB,CAAC,+CAA2B,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI;SAC9C,CAAC,EACJ,EAAE,CACH;QACD,GAAG,IAAA,oBAAU,EACX,MAAM,CAAC,MAAM,CAAC,yCAAqB,CAAC,EACpC,SAAS,CAAC,SAAS,IAAI,EAAE,CAC1B,CAAC,MAAM,CACN,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAChB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACjB,CAAC,+CAA2B,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK;SAC/C,CAAC,EACJ,EAAE,CACH;KACF,CAAC;IAEF,iCAAiC;IACjC,IAAI,cAAsB,CAAC;IAC3B,IAAI,CAAC,iBAAiB,EAAE;QACtB,MAAM,EACJ,kBAAkB,EAAE,EAAE,YAAY,EAAE,GACrC,GAAG,MAAM,IAAA,uCAAkB,EASzB,MAAM,EAAE,uBAAgB,EAAE;YAC3B,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,GAAG,KAAK;SACT,CAAC,CAAC;QACH,cAAc,GAAG,YAAY,CAAC,EAAE,CAAC;KAClC;SAAM;QACL,MAAM,IAAA,uCAAkB,EAAC,MAAM,EAAE,uBAAgB,EAAE;YACjD,cAAc,EAAE,iBAAiB,CAAC,EAAE;YACpC,WAAW,EAAE,iBAAiB,CAAC,QAAQ;gBACrC,CAAC,CAAC,SAAS,CAAC,WAAW;gBACvB,CAAC,CAAC,SAAS;YACb,GAAG,KAAK;SACT,CAAC,CAAC;QACH,cAAc,GAAG,iBAAiB,CAAC,EAAE,CAAC;KACvC;IAED,0BAA0B;IAC1B,MAAM,oBAAoB,GAAG,IAAA,eAAK,EAAC,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,KAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAC5E,MAAM,iBAAiB,GAAG,CAAC,iBAAiB;QAC1C,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE;QACxB,CAAC,CAAC,CAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtE,EAAE,CAAC;IACP,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;QAChC,MAAM,IAAA,uCAAkB,EAAC,MAAM,EAAE,8BAAuB,EAAE;YACxD,KAAK,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;gBACjD,KAAK,EAAE,KAAK,IAAI,SAAS;gBACzB,IAAI;gBACJ,cAAc;aACf,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ;AACH,CAAC;AAzED,sCAyEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"syncConfigurationToTranscend.d.ts","sourceRoot":"","sources":["../../src/graphql/syncConfigurationToTranscend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAYhD;;;;;;;GAOG;AACH,wBAAsB,4BAA4B,CAChD,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CAsIlB"}
1
+ {"version":3,"file":"syncConfigurationToTranscend.d.ts","sourceRoot":"","sources":["../../src/graphql/syncConfigurationToTranscend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAmBhD;;;;;;;GAOG;AACH,wBAAsB,4BAA4B,CAChD,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CA6QlB"}