@salesforce/lds-adapters-cdp-data-clean-room 1.332.0-dev23 → 1.332.0-dev25

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 (26) hide show
  1. package/dist/es/es2018/cdp-data-clean-room.js +1406 -107
  2. package/dist/es/es2018/types/src/generated/adapters/createDataCleanRoomCollaboration.d.ts +21 -0
  3. package/dist/es/es2018/types/src/generated/adapters/createDataCleanRoomSpecification.d.ts +22 -0
  4. package/dist/es/es2018/types/src/generated/adapters/getDataCleanRoomProvidersPaginated.d.ts +1 -1
  5. package/dist/es/es2018/types/src/generated/adapters/getDataCleanRoomSpecificationsPaginated.d.ts +30 -0
  6. package/dist/es/es2018/types/src/generated/artifacts/main.d.ts +3 -0
  7. package/dist/es/es2018/types/src/generated/artifacts/sfdc.d.ts +5 -1
  8. package/dist/es/es2018/types/src/generated/resources/getSsotDataCleanRoomProviders.d.ts +1 -1
  9. package/dist/es/es2018/types/src/generated/resources/getSsotDataCleanRoomSpecifications.d.ts +18 -0
  10. package/dist/es/es2018/types/src/generated/resources/postSsotDataCleanRoomCollaborations.d.ts +18 -0
  11. package/dist/es/es2018/types/src/generated/resources/postSsotDataCleanRoomSpecifications.d.ts +19 -0
  12. package/dist/es/es2018/types/src/generated/types/DataCleanRoomCollaborationInputRepresentation.d.ts +46 -0
  13. package/dist/es/es2018/types/src/generated/types/DataCleanRoomCollaborationRepresentation.d.ts +78 -0
  14. package/dist/es/es2018/types/src/generated/types/DataCleanRoomDataSpecificationInputRepresentation.d.ts +49 -0
  15. package/dist/es/es2018/types/src/generated/types/DataCleanRoomDataSpecificationRepresentation.d.ts +84 -0
  16. package/dist/es/es2018/types/src/generated/types/DataCleanRoomMemberRepresentation.d.ts +49 -0
  17. package/dist/es/es2018/types/src/generated/types/DataCleanRoomSpecificationCollectionRepresentation.d.ts +53 -0
  18. package/dist/es/es2018/types/src/generated/types/DataCleanRoomTemplateRepresentation.d.ts +62 -0
  19. package/dist/es/es2018/types/src/generated/types/UseCaseTemplateMappingAttributeRepresentation.d.ts +69 -0
  20. package/dist/es/es2018/types/src/generated/types/UseCaseTemplateMappingPathAttributeRepresentation.d.ts +31 -0
  21. package/dist/es/es2018/types/src/generated/types/UseCaseTemplateMappingRepresentation.d.ts +60 -0
  22. package/dist/es/es2018/types/src/generated/types/UseCaseTemplateMappingSubjectAttributeRepresentation.d.ts +37 -0
  23. package/package.json +3 -3
  24. package/sfdc/index.js +1515 -199
  25. package/src/raml/api.raml +488 -36
  26. package/src/raml/luvio.raml +27 -7
package/sfdc/index.js CHANGED
@@ -14,7 +14,7 @@
14
14
  /* proxy-compat-disable */
15
15
  import { createInstrumentedAdapter, createLDSAdapter, createWireAdapterConstructor, createImperativeAdapter } from 'force/ldsBindings';
16
16
  import { withDefaultLuvio } from 'force/ldsEngine';
17
- import { serializeStructuredKey, ingestShape, deepFreeze, StoreKeyMap, createResourceParams as createResourceParams$2, typeCheckConfig as typeCheckConfig$2, buildNetworkSnapshotCachePolicy as buildNetworkSnapshotCachePolicy$1 } from 'force/luvioEngine';
17
+ import { serializeStructuredKey, ingestShape, deepFreeze, StoreKeyMap, createResourceParams as createResourceParams$5, typeCheckConfig as typeCheckConfig$5, buildNetworkSnapshotCachePolicy as buildNetworkSnapshotCachePolicy$2 } from 'force/luvioEngine';
18
18
 
19
19
  const { hasOwnProperty: ObjectPrototypeHasOwnProperty } = Object.prototype;
20
20
  const { keys: ObjectKeys, create: ObjectCreate } = Object;
@@ -102,7 +102,7 @@ function createLink(ref) {
102
102
  };
103
103
  }
104
104
 
105
- function validate$2(obj, path = 'CdpUserRepresentation') {
105
+ function validate$b(obj, path = 'CdpUserRepresentation') {
106
106
  const v_error = (() => {
107
107
  if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
108
108
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -130,16 +130,71 @@ function validate$2(obj, path = 'CdpUserRepresentation') {
130
130
  return v_error === undefined ? null : v_error;
131
131
  }
132
132
 
133
- const VERSION$1 = "929b1bcf37fe62f914c2364146a0f5e6";
134
- function validate$1(obj, path = 'DataCleanRoomProviderRepresentation') {
133
+ function validate$a(obj, path = 'DataCleanRoomMemberRepresentation') {
135
134
  const v_error = (() => {
136
135
  if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
137
136
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
138
137
  }
138
+ const obj_invitationId = obj.invitationId;
139
+ const path_invitationId = path + '.invitationId';
140
+ if (typeof obj_invitationId !== 'string') {
141
+ return new TypeError('Expected "string" but received "' + typeof obj_invitationId + '" (at "' + path_invitationId + '")');
142
+ }
143
+ const obj_invitationStatus = obj.invitationStatus;
144
+ const path_invitationStatus = path + '.invitationStatus';
145
+ if (typeof obj_invitationStatus !== 'string') {
146
+ return new TypeError('Expected "string" but received "' + typeof obj_invitationStatus + '" (at "' + path_invitationStatus + '")');
147
+ }
148
+ const obj_memberId = obj.memberId;
149
+ const path_memberId = path + '.memberId';
150
+ if (typeof obj_memberId !== 'string') {
151
+ return new TypeError('Expected "string" but received "' + typeof obj_memberId + '" (at "' + path_memberId + '")');
152
+ }
153
+ const obj_memberOrgId = obj.memberOrgId;
154
+ const path_memberOrgId = path + '.memberOrgId';
155
+ if (typeof obj_memberOrgId !== 'string') {
156
+ return new TypeError('Expected "string" but received "' + typeof obj_memberOrgId + '" (at "' + path_memberOrgId + '")');
157
+ }
158
+ const obj_memberStatus = obj.memberStatus;
159
+ const path_memberStatus = path + '.memberStatus';
160
+ if (typeof obj_memberStatus !== 'string') {
161
+ return new TypeError('Expected "string" but received "' + typeof obj_memberStatus + '" (at "' + path_memberStatus + '")');
162
+ }
163
+ const obj_memberType = obj.memberType;
164
+ const path_memberType = path + '.memberType';
165
+ if (typeof obj_memberType !== 'string') {
166
+ return new TypeError('Expected "string" but received "' + typeof obj_memberType + '" (at "' + path_memberType + '")');
167
+ }
168
+ const obj_providerId = obj.providerId;
169
+ const path_providerId = path + '.providerId';
170
+ if (typeof obj_providerId !== 'string') {
171
+ return new TypeError('Expected "string" but received "' + typeof obj_providerId + '" (at "' + path_providerId + '")');
172
+ }
173
+ if (obj.specificationId !== undefined) {
174
+ const obj_specificationId = obj.specificationId;
175
+ const path_specificationId = path + '.specificationId';
176
+ if (typeof obj_specificationId !== 'string') {
177
+ return new TypeError('Expected "string" but received "' + typeof obj_specificationId + '" (at "' + path_specificationId + '")');
178
+ }
179
+ }
180
+ })();
181
+ return v_error === undefined ? null : v_error;
182
+ }
183
+
184
+ function validate$9(obj, path = 'DataCleanRoomTemplateRepresentation') {
185
+ const v_error = (() => {
186
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
187
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
188
+ }
189
+ const obj_configuration = obj.configuration;
190
+ const path_configuration = path + '.configuration';
191
+ if (obj_configuration === undefined) {
192
+ return new TypeError('Expected "defined" but received "' + typeof obj_configuration + '" (at "' + path_configuration + '")');
193
+ }
139
194
  if (obj.createdBy !== undefined) {
140
195
  const obj_createdBy = obj.createdBy;
141
196
  const path_createdBy = path + '.createdBy';
142
- const referencepath_createdByValidationError = validate$2(obj_createdBy, path_createdBy);
197
+ const referencepath_createdByValidationError = validate$b(obj_createdBy, path_createdBy);
143
198
  if (referencepath_createdByValidationError !== null) {
144
199
  let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_createdBy + '")\n';
145
200
  message += referencepath_createdByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
@@ -153,11 +208,6 @@ function validate$1(obj, path = 'DataCleanRoomProviderRepresentation') {
153
208
  return new TypeError('Expected "string" but received "' + typeof obj_createdDate + '" (at "' + path_createdDate + '")');
154
209
  }
155
210
  }
156
- const obj_dataCloudOrgId = obj.dataCloudOrgId;
157
- const path_dataCloudOrgId = path + '.dataCloudOrgId';
158
- if (typeof obj_dataCloudOrgId !== 'string') {
159
- return new TypeError('Expected "string" but received "' + typeof obj_dataCloudOrgId + '" (at "' + path_dataCloudOrgId + '")');
160
- }
161
211
  const obj_description = obj.description;
162
212
  const path_description = path + '.description';
163
213
  if (typeof obj_description !== 'string') {
@@ -178,7 +228,103 @@ function validate$1(obj, path = 'DataCleanRoomProviderRepresentation') {
178
228
  if (obj.lastModifiedBy !== undefined) {
179
229
  const obj_lastModifiedBy = obj.lastModifiedBy;
180
230
  const path_lastModifiedBy = path + '.lastModifiedBy';
181
- const referencepath_lastModifiedByValidationError = validate$2(obj_lastModifiedBy, path_lastModifiedBy);
231
+ const referencepath_lastModifiedByValidationError = validate$b(obj_lastModifiedBy, path_lastModifiedBy);
232
+ if (referencepath_lastModifiedByValidationError !== null) {
233
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_lastModifiedBy + '")\n';
234
+ message += referencepath_lastModifiedByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
235
+ return new TypeError(message);
236
+ }
237
+ }
238
+ if (obj.lastModifiedDate !== undefined) {
239
+ const obj_lastModifiedDate = obj.lastModifiedDate;
240
+ const path_lastModifiedDate = path + '.lastModifiedDate';
241
+ if (typeof obj_lastModifiedDate !== 'string') {
242
+ return new TypeError('Expected "string" but received "' + typeof obj_lastModifiedDate + '" (at "' + path_lastModifiedDate + '")');
243
+ }
244
+ }
245
+ if (obj.name !== undefined) {
246
+ const obj_name = obj.name;
247
+ const path_name = path + '.name';
248
+ if (typeof obj_name !== 'string') {
249
+ return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
250
+ }
251
+ }
252
+ if (obj.namespace !== undefined) {
253
+ const obj_namespace = obj.namespace;
254
+ const path_namespace = path + '.namespace';
255
+ if (typeof obj_namespace !== 'string') {
256
+ return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
257
+ }
258
+ }
259
+ const obj_queryTemplate = obj.queryTemplate;
260
+ const path_queryTemplate = path + '.queryTemplate';
261
+ if (obj_queryTemplate === undefined) {
262
+ return new TypeError('Expected "defined" but received "' + typeof obj_queryTemplate + '" (at "' + path_queryTemplate + '")');
263
+ }
264
+ if (obj.url !== undefined) {
265
+ const obj_url = obj.url;
266
+ const path_url = path + '.url';
267
+ if (typeof obj_url !== 'string') {
268
+ return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
269
+ }
270
+ }
271
+ })();
272
+ return v_error === undefined ? null : v_error;
273
+ }
274
+
275
+ const VERSION$4 = "30341cb5fc17b6b6a436ef81c0f1def0";
276
+ function validate$8(obj, path = 'DataCleanRoomCollaborationRepresentation') {
277
+ const v_error = (() => {
278
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
279
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
280
+ }
281
+ if (obj.createdBy !== undefined) {
282
+ const obj_createdBy = obj.createdBy;
283
+ const path_createdBy = path + '.createdBy';
284
+ const referencepath_createdByValidationError = validate$b(obj_createdBy, path_createdBy);
285
+ if (referencepath_createdByValidationError !== null) {
286
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_createdBy + '")\n';
287
+ message += referencepath_createdByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
288
+ return new TypeError(message);
289
+ }
290
+ }
291
+ if (obj.createdDate !== undefined) {
292
+ const obj_createdDate = obj.createdDate;
293
+ const path_createdDate = path + '.createdDate';
294
+ if (typeof obj_createdDate !== 'string') {
295
+ return new TypeError('Expected "string" but received "' + typeof obj_createdDate + '" (at "' + path_createdDate + '")');
296
+ }
297
+ }
298
+ if (obj.dataSpaceName !== undefined) {
299
+ const obj_dataSpaceName = obj.dataSpaceName;
300
+ const path_dataSpaceName = path + '.dataSpaceName';
301
+ if (typeof obj_dataSpaceName !== 'string') {
302
+ return new TypeError('Expected "string" but received "' + typeof obj_dataSpaceName + '" (at "' + path_dataSpaceName + '")');
303
+ }
304
+ }
305
+ if (obj.description !== undefined) {
306
+ const obj_description = obj.description;
307
+ const path_description = path + '.description';
308
+ if (typeof obj_description !== 'string') {
309
+ return new TypeError('Expected "string" but received "' + typeof obj_description + '" (at "' + path_description + '")');
310
+ }
311
+ }
312
+ const obj_id = obj.id;
313
+ const path_id = path + '.id';
314
+ if (typeof obj_id !== 'string') {
315
+ return new TypeError('Expected "string" but received "' + typeof obj_id + '" (at "' + path_id + '")');
316
+ }
317
+ if (obj.label !== undefined) {
318
+ const obj_label = obj.label;
319
+ const path_label = path + '.label';
320
+ if (typeof obj_label !== 'string') {
321
+ return new TypeError('Expected "string" but received "' + typeof obj_label + '" (at "' + path_label + '")');
322
+ }
323
+ }
324
+ if (obj.lastModifiedBy !== undefined) {
325
+ const obj_lastModifiedBy = obj.lastModifiedBy;
326
+ const path_lastModifiedBy = path + '.lastModifiedBy';
327
+ const referencepath_lastModifiedByValidationError = validate$b(obj_lastModifiedBy, path_lastModifiedBy);
182
328
  if (referencepath_lastModifiedByValidationError !== null) {
183
329
  let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_lastModifiedBy + '")\n';
184
330
  message += referencepath_lastModifiedByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
@@ -192,113 +338,1252 @@ function validate$1(obj, path = 'DataCleanRoomProviderRepresentation') {
192
338
  return new TypeError('Expected "string" but received "' + typeof obj_lastModifiedDate + '" (at "' + path_lastModifiedDate + '")');
193
339
  }
194
340
  }
195
- if (obj.logoUrl !== undefined) {
196
- const obj_logoUrl = obj.logoUrl;
197
- const path_logoUrl = path + '.logoUrl';
198
- if (typeof obj_logoUrl !== 'string') {
199
- return new TypeError('Expected "string" but received "' + typeof obj_logoUrl + '" (at "' + path_logoUrl + '")');
200
- }
341
+ const obj_members = obj.members;
342
+ const path_members = path + '.members';
343
+ if (!ArrayIsArray(obj_members)) {
344
+ return new TypeError('Expected "array" but received "' + typeof obj_members + '" (at "' + path_members + '")');
345
+ }
346
+ for (let i = 0; i < obj_members.length; i++) {
347
+ const obj_members_item = obj_members[i];
348
+ const path_members_item = path_members + '[' + i + ']';
349
+ const referencepath_members_itemValidationError = validate$a(obj_members_item, path_members_item);
350
+ if (referencepath_members_itemValidationError !== null) {
351
+ let message = 'Object doesn\'t match DataCleanRoomMemberRepresentation (at "' + path_members_item + '")\n';
352
+ message += referencepath_members_itemValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
353
+ return new TypeError(message);
354
+ }
355
+ }
356
+ if (obj.name !== undefined) {
357
+ const obj_name = obj.name;
358
+ const path_name = path + '.name';
359
+ if (typeof obj_name !== 'string') {
360
+ return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
361
+ }
362
+ }
363
+ if (obj.namespace !== undefined) {
364
+ const obj_namespace = obj.namespace;
365
+ const path_namespace = path + '.namespace';
366
+ if (typeof obj_namespace !== 'string') {
367
+ return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
368
+ }
369
+ }
370
+ const obj_status = obj.status;
371
+ const path_status = path + '.status';
372
+ if (typeof obj_status !== 'string') {
373
+ return new TypeError('Expected "string" but received "' + typeof obj_status + '" (at "' + path_status + '")');
374
+ }
375
+ const obj_templateVersion = obj.templateVersion;
376
+ const path_templateVersion = path + '.templateVersion';
377
+ const referencepath_templateVersionValidationError = validate$9(obj_templateVersion, path_templateVersion);
378
+ if (referencepath_templateVersionValidationError !== null) {
379
+ let message = 'Object doesn\'t match DataCleanRoomTemplateRepresentation (at "' + path_templateVersion + '")\n';
380
+ message += referencepath_templateVersionValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
381
+ return new TypeError(message);
382
+ }
383
+ if (obj.url !== undefined) {
384
+ const obj_url = obj.url;
385
+ const path_url = path + '.url';
386
+ if (typeof obj_url !== 'string') {
387
+ return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
388
+ }
389
+ }
390
+ })();
391
+ return v_error === undefined ? null : v_error;
392
+ }
393
+ const RepresentationType$4 = 'DataCleanRoomCollaborationRepresentation';
394
+ function keyBuilder$6(luvio, config) {
395
+ return keyPrefix + '::' + RepresentationType$4 + ':' + config.id;
396
+ }
397
+ function keyBuilderFromType$2(luvio, object) {
398
+ const keyParams = {
399
+ id: object.id
400
+ };
401
+ return keyBuilder$6(luvio, keyParams);
402
+ }
403
+ function normalize$4(input, existing, path, luvio, store, timestamp) {
404
+ return input;
405
+ }
406
+ const select$9 = function DataCleanRoomCollaborationRepresentationSelect() {
407
+ return {
408
+ kind: 'Fragment',
409
+ version: VERSION$4,
410
+ private: [],
411
+ opaque: true
412
+ };
413
+ };
414
+ function equals$4(existing, incoming) {
415
+ if (JSONStringify(incoming) !== JSONStringify(existing)) {
416
+ return false;
417
+ }
418
+ return true;
419
+ }
420
+ const ingest$4 = function DataCleanRoomCollaborationRepresentationIngest(input, path, luvio, store, timestamp) {
421
+ if (process.env.NODE_ENV !== 'production') {
422
+ const validateError = validate$8(input);
423
+ if (validateError !== null) {
424
+ throw validateError;
425
+ }
426
+ }
427
+ const key = keyBuilderFromType$2(luvio, input);
428
+ const ttlToUse = path.ttl !== undefined ? path.ttl : 60000;
429
+ ingestShape(input, path, luvio, store, timestamp, ttlToUse, key, normalize$4, "data-clean-room", VERSION$4, RepresentationType$4, equals$4);
430
+ return createLink(key);
431
+ };
432
+ function getTypeCacheKeys$4(rootKeySet, luvio, input, fullPathFactory) {
433
+ // root cache key (uses fullPathFactory if keyBuilderFromType isn't defined)
434
+ const rootKey = keyBuilderFromType$2(luvio, input);
435
+ rootKeySet.set(rootKey, {
436
+ namespace: keyPrefix,
437
+ representationName: RepresentationType$4,
438
+ mergeable: false
439
+ });
440
+ }
441
+
442
+ function select$8(luvio, params) {
443
+ return select$9();
444
+ }
445
+ function getResponseCacheKeys$4(storeKeyMap, luvio, resourceParams, response) {
446
+ getTypeCacheKeys$4(storeKeyMap, luvio, response);
447
+ }
448
+ function ingestSuccess$4(luvio, resourceParams, response) {
449
+ const { body } = response;
450
+ const key = keyBuilderFromType$2(luvio, body);
451
+ luvio.storeIngest(key, ingest$4, body);
452
+ const snapshot = luvio.storeLookup({
453
+ recordId: key,
454
+ node: select$8(),
455
+ variables: {},
456
+ });
457
+ if (process.env.NODE_ENV !== 'production') {
458
+ if (snapshot.state !== 'Fulfilled') {
459
+ throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
460
+ }
461
+ }
462
+ deepFreeze(snapshot.data);
463
+ return snapshot;
464
+ }
465
+ function createResourceRequest$4(config) {
466
+ const headers = {};
467
+ return {
468
+ baseUri: '/services/data/v63.0',
469
+ basePath: '/ssot/data-clean-room/collaborations',
470
+ method: 'post',
471
+ body: config.body,
472
+ urlParams: {},
473
+ queryParams: {},
474
+ headers,
475
+ priority: 'normal',
476
+ };
477
+ }
478
+
479
+ const adapterName$4 = 'createDataCleanRoomCollaboration';
480
+ const createDataCleanRoomCollaboration_ConfigPropertyMetadata = [
481
+ generateParamConfigMetadata('apiKey', false, 2 /* Body */, 0 /* String */),
482
+ generateParamConfigMetadata('dataCloudOrgId', true, 2 /* Body */, 0 /* String */),
483
+ generateParamConfigMetadata('dataSpaceName', false, 2 /* Body */, 0 /* String */),
484
+ generateParamConfigMetadata('providerDevName', true, 2 /* Body */, 0 /* String */),
485
+ generateParamConfigMetadata('specificationDevName', true, 2 /* Body */, 0 /* String */),
486
+ generateParamConfigMetadata('templateName', true, 2 /* Body */, 0 /* String */),
487
+ generateParamConfigMetadata('label', true, 2 /* Body */, 0 /* String */),
488
+ ];
489
+ const createDataCleanRoomCollaboration_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$4, createDataCleanRoomCollaboration_ConfigPropertyMetadata);
490
+ const createResourceParams$4 = /*#__PURE__*/ createResourceParams$5(createDataCleanRoomCollaboration_ConfigPropertyMetadata);
491
+ function typeCheckConfig$4(untrustedConfig) {
492
+ const config = {};
493
+ typeCheckConfig$5(untrustedConfig, config, createDataCleanRoomCollaboration_ConfigPropertyMetadata);
494
+ return config;
495
+ }
496
+ function validateAdapterConfig$4(untrustedConfig, configPropertyNames) {
497
+ if (!untrustedIsObject(untrustedConfig)) {
498
+ return null;
499
+ }
500
+ if (process.env.NODE_ENV !== 'production') {
501
+ validateConfig(untrustedConfig, configPropertyNames);
502
+ }
503
+ const config = typeCheckConfig$4(untrustedConfig);
504
+ if (!areRequiredParametersPresent(config, configPropertyNames)) {
505
+ return null;
506
+ }
507
+ return config;
508
+ }
509
+ function buildNetworkSnapshot$4(luvio, config, options) {
510
+ const resourceParams = createResourceParams$4(config);
511
+ const request = createResourceRequest$4(resourceParams);
512
+ return luvio.dispatchResourceRequest(request, options)
513
+ .then((response) => {
514
+ return luvio.handleSuccessResponse(() => {
515
+ const snapshot = ingestSuccess$4(luvio, resourceParams, response);
516
+ return luvio.storeBroadcast().then(() => snapshot);
517
+ }, () => {
518
+ const cache = new StoreKeyMap();
519
+ getResponseCacheKeys$4(cache, luvio, resourceParams, response.body);
520
+ return cache;
521
+ });
522
+ }, (response) => {
523
+ deepFreeze(response);
524
+ throw response;
525
+ });
526
+ }
527
+ const createDataCleanRoomCollaborationAdapterFactory = (luvio) => {
528
+ return function createDataCleanRoomCollaboration(untrustedConfig) {
529
+ const config = validateAdapterConfig$4(untrustedConfig, createDataCleanRoomCollaboration_ConfigPropertyNames);
530
+ // Invalid or incomplete config
531
+ if (config === null) {
532
+ throw new Error('Invalid config for "createDataCleanRoomCollaboration"');
533
+ }
534
+ return buildNetworkSnapshot$4(luvio, config);
535
+ };
536
+ };
537
+
538
+ function validate$7(obj, path = 'UseCaseTemplateMappingPathAttributeRepresentation') {
539
+ const v_error = (() => {
540
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
541
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
542
+ }
543
+ const obj_sourceAttribute = obj.sourceAttribute;
544
+ const path_sourceAttribute = path + '.sourceAttribute';
545
+ if (obj_sourceAttribute === undefined) {
546
+ return new TypeError('Expected "defined" but received "' + typeof obj_sourceAttribute + '" (at "' + path_sourceAttribute + '")');
547
+ }
548
+ const obj_targetAttribute = obj.targetAttribute;
549
+ const path_targetAttribute = path + '.targetAttribute';
550
+ if (obj_targetAttribute === undefined) {
551
+ return new TypeError('Expected "defined" but received "' + typeof obj_targetAttribute + '" (at "' + path_targetAttribute + '")');
552
+ }
553
+ })();
554
+ return v_error === undefined ? null : v_error;
555
+ }
556
+
557
+ function validate$6(obj, path = 'UseCaseTemplateMappingSubjectAttributeRepresentation') {
558
+ const v_error = (() => {
559
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
560
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
561
+ }
562
+ const obj_fieldLabel = obj.fieldLabel;
563
+ const path_fieldLabel = path + '.fieldLabel';
564
+ if (typeof obj_fieldLabel !== 'string') {
565
+ return new TypeError('Expected "string" but received "' + typeof obj_fieldLabel + '" (at "' + path_fieldLabel + '")');
566
+ }
567
+ const obj_fieldName = obj.fieldName;
568
+ const path_fieldName = path + '.fieldName';
569
+ if (typeof obj_fieldName !== 'string') {
570
+ return new TypeError('Expected "string" but received "' + typeof obj_fieldName + '" (at "' + path_fieldName + '")');
571
+ }
572
+ const obj_objectLabel = obj.objectLabel;
573
+ const path_objectLabel = path + '.objectLabel';
574
+ if (typeof obj_objectLabel !== 'string') {
575
+ return new TypeError('Expected "string" but received "' + typeof obj_objectLabel + '" (at "' + path_objectLabel + '")');
576
+ }
577
+ const obj_objectName = obj.objectName;
578
+ const path_objectName = path + '.objectName';
579
+ if (typeof obj_objectName !== 'string') {
580
+ return new TypeError('Expected "string" but received "' + typeof obj_objectName + '" (at "' + path_objectName + '")');
581
+ }
582
+ })();
583
+ return v_error === undefined ? null : v_error;
584
+ }
585
+
586
+ function validate$5(obj, path = 'UseCaseTemplateMappingAttributeRepresentation') {
587
+ const v_error = (() => {
588
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
589
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
590
+ }
591
+ const obj_alias = obj.alias;
592
+ const path_alias = path + '.alias';
593
+ if (typeof obj_alias !== 'string') {
594
+ return new TypeError('Expected "string" but received "' + typeof obj_alias + '" (at "' + path_alias + '")');
595
+ }
596
+ if (obj.attributeId !== undefined) {
597
+ const obj_attributeId = obj.attributeId;
598
+ const path_attributeId = path + '.attributeId';
599
+ if (typeof obj_attributeId !== 'string') {
600
+ return new TypeError('Expected "string" but received "' + typeof obj_attributeId + '" (at "' + path_attributeId + '")');
601
+ }
602
+ }
603
+ if (obj.createdBy !== undefined) {
604
+ const obj_createdBy = obj.createdBy;
605
+ const path_createdBy = path + '.createdBy';
606
+ const referencepath_createdByValidationError = validate$b(obj_createdBy, path_createdBy);
607
+ if (referencepath_createdByValidationError !== null) {
608
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_createdBy + '")\n';
609
+ message += referencepath_createdByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
610
+ return new TypeError(message);
611
+ }
612
+ }
613
+ if (obj.createdDate !== undefined) {
614
+ const obj_createdDate = obj.createdDate;
615
+ const path_createdDate = path + '.createdDate';
616
+ if (typeof obj_createdDate !== 'string') {
617
+ return new TypeError('Expected "string" but received "' + typeof obj_createdDate + '" (at "' + path_createdDate + '")');
618
+ }
619
+ }
620
+ if (obj.dataMapping !== undefined) {
621
+ const obj_dataMapping = obj.dataMapping;
622
+ const path_dataMapping = path + '.dataMapping';
623
+ const referencepath_dataMappingValidationError = validate$4(obj_dataMapping, path_dataMapping);
624
+ if (referencepath_dataMappingValidationError !== null) {
625
+ let message = 'Object doesn\'t match UseCaseTemplateMappingRepresentation (at "' + path_dataMapping + '")\n';
626
+ message += referencepath_dataMappingValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
627
+ return new TypeError(message);
628
+ }
629
+ }
630
+ if (obj.id !== undefined) {
631
+ const obj_id = obj.id;
632
+ const path_id = path + '.id';
633
+ if (typeof obj_id !== 'string') {
634
+ return new TypeError('Expected "string" but received "' + typeof obj_id + '" (at "' + path_id + '")');
635
+ }
636
+ }
637
+ if (obj.label !== undefined) {
638
+ const obj_label = obj.label;
639
+ const path_label = path + '.label';
640
+ if (typeof obj_label !== 'string') {
641
+ return new TypeError('Expected "string" but received "' + typeof obj_label + '" (at "' + path_label + '")');
642
+ }
643
+ }
644
+ if (obj.lastModifiedBy !== undefined) {
645
+ const obj_lastModifiedBy = obj.lastModifiedBy;
646
+ const path_lastModifiedBy = path + '.lastModifiedBy';
647
+ const referencepath_lastModifiedByValidationError = validate$b(obj_lastModifiedBy, path_lastModifiedBy);
648
+ if (referencepath_lastModifiedByValidationError !== null) {
649
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_lastModifiedBy + '")\n';
650
+ message += referencepath_lastModifiedByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
651
+ return new TypeError(message);
652
+ }
653
+ }
654
+ if (obj.lastModifiedDate !== undefined) {
655
+ const obj_lastModifiedDate = obj.lastModifiedDate;
656
+ const path_lastModifiedDate = path + '.lastModifiedDate';
657
+ if (typeof obj_lastModifiedDate !== 'string') {
658
+ return new TypeError('Expected "string" but received "' + typeof obj_lastModifiedDate + '" (at "' + path_lastModifiedDate + '")');
659
+ }
660
+ }
661
+ if (obj.name !== undefined) {
662
+ const obj_name = obj.name;
663
+ const path_name = path + '.name';
664
+ if (typeof obj_name !== 'string') {
665
+ return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
666
+ }
667
+ }
668
+ if (obj.namespace !== undefined) {
669
+ const obj_namespace = obj.namespace;
670
+ const path_namespace = path + '.namespace';
671
+ if (typeof obj_namespace !== 'string') {
672
+ return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
673
+ }
674
+ }
675
+ const obj_path = obj.path;
676
+ const path_path = path + '.path';
677
+ if (!ArrayIsArray(obj_path)) {
678
+ return new TypeError('Expected "array" but received "' + typeof obj_path + '" (at "' + path_path + '")');
679
+ }
680
+ for (let i = 0; i < obj_path.length; i++) {
681
+ const obj_path_item = obj_path[i];
682
+ const path_path_item = path_path + '[' + i + ']';
683
+ const referencepath_path_itemValidationError = validate$7(obj_path_item, path_path_item);
684
+ if (referencepath_path_itemValidationError !== null) {
685
+ let message = 'Object doesn\'t match UseCaseTemplateMappingPathAttributeRepresentation (at "' + path_path_item + '")\n';
686
+ message += referencepath_path_itemValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
687
+ return new TypeError(message);
688
+ }
689
+ }
690
+ const obj_subjectAttribute = obj.subjectAttribute;
691
+ const path_subjectAttribute = path + '.subjectAttribute';
692
+ const referencepath_subjectAttributeValidationError = validate$6(obj_subjectAttribute, path_subjectAttribute);
693
+ if (referencepath_subjectAttributeValidationError !== null) {
694
+ let message = 'Object doesn\'t match UseCaseTemplateMappingSubjectAttributeRepresentation (at "' + path_subjectAttribute + '")\n';
695
+ message += referencepath_subjectAttributeValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
696
+ return new TypeError(message);
697
+ }
698
+ if (obj.url !== undefined) {
699
+ const obj_url = obj.url;
700
+ const path_url = path + '.url';
701
+ if (typeof obj_url !== 'string') {
702
+ return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
703
+ }
704
+ }
705
+ })();
706
+ return v_error === undefined ? null : v_error;
707
+ }
708
+
709
+ function validate$4(obj, path = 'UseCaseTemplateMappingRepresentation') {
710
+ const v_error = (() => {
711
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
712
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
713
+ }
714
+ const obj_attributes = obj.attributes;
715
+ const path_attributes = path + '.attributes';
716
+ if (!ArrayIsArray(obj_attributes)) {
717
+ return new TypeError('Expected "array" but received "' + typeof obj_attributes + '" (at "' + path_attributes + '")');
718
+ }
719
+ for (let i = 0; i < obj_attributes.length; i++) {
720
+ const obj_attributes_item = obj_attributes[i];
721
+ const path_attributes_item = path_attributes + '[' + i + ']';
722
+ const referencepath_attributes_itemValidationError = validate$5(obj_attributes_item, path_attributes_item);
723
+ if (referencepath_attributes_itemValidationError !== null) {
724
+ let message = 'Object doesn\'t match UseCaseTemplateMappingAttributeRepresentation (at "' + path_attributes_item + '")\n';
725
+ message += referencepath_attributes_itemValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
726
+ return new TypeError(message);
727
+ }
728
+ }
729
+ const obj_collaborationEntity = obj.collaborationEntity;
730
+ const path_collaborationEntity = path + '.collaborationEntity';
731
+ if (typeof obj_collaborationEntity !== 'string') {
732
+ return new TypeError('Expected "string" but received "' + typeof obj_collaborationEntity + '" (at "' + path_collaborationEntity + '")');
733
+ }
734
+ if (obj.createdBy !== undefined) {
735
+ const obj_createdBy = obj.createdBy;
736
+ const path_createdBy = path + '.createdBy';
737
+ const referencepath_createdByValidationError = validate$b(obj_createdBy, path_createdBy);
738
+ if (referencepath_createdByValidationError !== null) {
739
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_createdBy + '")\n';
740
+ message += referencepath_createdByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
741
+ return new TypeError(message);
742
+ }
743
+ }
744
+ if (obj.createdDate !== undefined) {
745
+ const obj_createdDate = obj.createdDate;
746
+ const path_createdDate = path + '.createdDate';
747
+ if (typeof obj_createdDate !== 'string') {
748
+ return new TypeError('Expected "string" but received "' + typeof obj_createdDate + '" (at "' + path_createdDate + '")');
749
+ }
750
+ }
751
+ if (obj.id !== undefined) {
752
+ const obj_id = obj.id;
753
+ const path_id = path + '.id';
754
+ if (typeof obj_id !== 'string') {
755
+ return new TypeError('Expected "string" but received "' + typeof obj_id + '" (at "' + path_id + '")');
756
+ }
757
+ }
758
+ if (obj.label !== undefined) {
759
+ const obj_label = obj.label;
760
+ const path_label = path + '.label';
761
+ if (typeof obj_label !== 'string') {
762
+ return new TypeError('Expected "string" but received "' + typeof obj_label + '" (at "' + path_label + '")');
763
+ }
764
+ }
765
+ if (obj.lastModifiedBy !== undefined) {
766
+ const obj_lastModifiedBy = obj.lastModifiedBy;
767
+ const path_lastModifiedBy = path + '.lastModifiedBy';
768
+ const referencepath_lastModifiedByValidationError = validate$b(obj_lastModifiedBy, path_lastModifiedBy);
769
+ if (referencepath_lastModifiedByValidationError !== null) {
770
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_lastModifiedBy + '")\n';
771
+ message += referencepath_lastModifiedByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
772
+ return new TypeError(message);
773
+ }
774
+ }
775
+ if (obj.lastModifiedDate !== undefined) {
776
+ const obj_lastModifiedDate = obj.lastModifiedDate;
777
+ const path_lastModifiedDate = path + '.lastModifiedDate';
778
+ if (typeof obj_lastModifiedDate !== 'string') {
779
+ return new TypeError('Expected "string" but received "' + typeof obj_lastModifiedDate + '" (at "' + path_lastModifiedDate + '")');
780
+ }
781
+ }
782
+ if (obj.name !== undefined) {
783
+ const obj_name = obj.name;
784
+ const path_name = path + '.name';
785
+ if (typeof obj_name !== 'string') {
786
+ return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
787
+ }
788
+ }
789
+ if (obj.namespace !== undefined) {
790
+ const obj_namespace = obj.namespace;
791
+ const path_namespace = path + '.namespace';
792
+ if (typeof obj_namespace !== 'string') {
793
+ return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
794
+ }
795
+ }
796
+ if (obj.url !== undefined) {
797
+ const obj_url = obj.url;
798
+ const path_url = path + '.url';
799
+ if (typeof obj_url !== 'string') {
800
+ return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
801
+ }
802
+ }
803
+ })();
804
+ return v_error === undefined ? null : v_error;
805
+ }
806
+
807
+ const VERSION$3 = "422829d0bdee7c37a92811d97b2c7c2b";
808
+ function validate$3(obj, path = 'DataCleanRoomDataSpecificationRepresentation') {
809
+ const v_error = (() => {
810
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
811
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
812
+ }
813
+ if (obj.createdBy !== undefined) {
814
+ const obj_createdBy = obj.createdBy;
815
+ const path_createdBy = path + '.createdBy';
816
+ const referencepath_createdByValidationError = validate$b(obj_createdBy, path_createdBy);
817
+ if (referencepath_createdByValidationError !== null) {
818
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_createdBy + '")\n';
819
+ message += referencepath_createdByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
820
+ return new TypeError(message);
821
+ }
822
+ }
823
+ if (obj.createdDate !== undefined) {
824
+ const obj_createdDate = obj.createdDate;
825
+ const path_createdDate = path + '.createdDate';
826
+ if (typeof obj_createdDate !== 'string') {
827
+ return new TypeError('Expected "string" but received "' + typeof obj_createdDate + '" (at "' + path_createdDate + '")');
828
+ }
829
+ }
830
+ const obj_dataMapping = obj.dataMapping;
831
+ const path_dataMapping = path + '.dataMapping';
832
+ const referencepath_dataMappingValidationError = validate$4(obj_dataMapping, path_dataMapping);
833
+ if (referencepath_dataMappingValidationError !== null) {
834
+ let message = 'Object doesn\'t match UseCaseTemplateMappingRepresentation (at "' + path_dataMapping + '")\n';
835
+ message += referencepath_dataMappingValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
836
+ return new TypeError(message);
837
+ }
838
+ const obj_dataSpaceName = obj.dataSpaceName;
839
+ const path_dataSpaceName = path + '.dataSpaceName';
840
+ if (typeof obj_dataSpaceName !== 'string') {
841
+ return new TypeError('Expected "string" but received "' + typeof obj_dataSpaceName + '" (at "' + path_dataSpaceName + '")');
842
+ }
843
+ const obj_description = obj.description;
844
+ const path_description = path + '.description';
845
+ if (typeof obj_description !== 'string') {
846
+ return new TypeError('Expected "string" but received "' + typeof obj_description + '" (at "' + path_description + '")');
847
+ }
848
+ const obj_id = obj.id;
849
+ const path_id = path + '.id';
850
+ if (typeof obj_id !== 'string') {
851
+ return new TypeError('Expected "string" but received "' + typeof obj_id + '" (at "' + path_id + '")');
852
+ }
853
+ if (obj.label !== undefined) {
854
+ const obj_label = obj.label;
855
+ const path_label = path + '.label';
856
+ if (typeof obj_label !== 'string') {
857
+ return new TypeError('Expected "string" but received "' + typeof obj_label + '" (at "' + path_label + '")');
858
+ }
859
+ }
860
+ if (obj.lastModifiedBy !== undefined) {
861
+ const obj_lastModifiedBy = obj.lastModifiedBy;
862
+ const path_lastModifiedBy = path + '.lastModifiedBy';
863
+ const referencepath_lastModifiedByValidationError = validate$b(obj_lastModifiedBy, path_lastModifiedBy);
864
+ if (referencepath_lastModifiedByValidationError !== null) {
865
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_lastModifiedBy + '")\n';
866
+ message += referencepath_lastModifiedByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
867
+ return new TypeError(message);
868
+ }
869
+ }
870
+ if (obj.lastModifiedDate !== undefined) {
871
+ const obj_lastModifiedDate = obj.lastModifiedDate;
872
+ const path_lastModifiedDate = path + '.lastModifiedDate';
873
+ if (typeof obj_lastModifiedDate !== 'string') {
874
+ return new TypeError('Expected "string" but received "' + typeof obj_lastModifiedDate + '" (at "' + path_lastModifiedDate + '")');
875
+ }
876
+ }
877
+ const obj_memberType = obj.memberType;
878
+ const path_memberType = path + '.memberType';
879
+ if (typeof obj_memberType !== 'string') {
880
+ return new TypeError('Expected "string" but received "' + typeof obj_memberType + '" (at "' + path_memberType + '")');
881
+ }
882
+ if (obj.name !== undefined) {
883
+ const obj_name = obj.name;
884
+ const path_name = path + '.name';
885
+ if (typeof obj_name !== 'string') {
886
+ return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
887
+ }
888
+ }
889
+ if (obj.namespace !== undefined) {
890
+ const obj_namespace = obj.namespace;
891
+ const path_namespace = path + '.namespace';
892
+ if (typeof obj_namespace !== 'string') {
893
+ return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
894
+ }
895
+ }
896
+ if (obj.ownerOrgId !== undefined) {
897
+ const obj_ownerOrgId = obj.ownerOrgId;
898
+ const path_ownerOrgId = path + '.ownerOrgId';
899
+ if (typeof obj_ownerOrgId !== 'string') {
900
+ return new TypeError('Expected "string" but received "' + typeof obj_ownerOrgId + '" (at "' + path_ownerOrgId + '")');
901
+ }
902
+ }
903
+ const obj_status = obj.status;
904
+ const path_status = path + '.status';
905
+ if (typeof obj_status !== 'string') {
906
+ return new TypeError('Expected "string" but received "' + typeof obj_status + '" (at "' + path_status + '")');
907
+ }
908
+ const obj_templateName = obj.templateName;
909
+ const path_templateName = path + '.templateName';
910
+ if (typeof obj_templateName !== 'string') {
911
+ return new TypeError('Expected "string" but received "' + typeof obj_templateName + '" (at "' + path_templateName + '")');
912
+ }
913
+ if (obj.url !== undefined) {
914
+ const obj_url = obj.url;
915
+ const path_url = path + '.url';
916
+ if (typeof obj_url !== 'string') {
917
+ return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
918
+ }
919
+ }
920
+ })();
921
+ return v_error === undefined ? null : v_error;
922
+ }
923
+ const RepresentationType$3 = 'DataCleanRoomDataSpecificationRepresentation';
924
+ function keyBuilder$5(luvio, config) {
925
+ return keyPrefix + '::' + RepresentationType$3 + ':' + config.id;
926
+ }
927
+ function keyBuilderFromType$1(luvio, object) {
928
+ const keyParams = {
929
+ id: object.id
930
+ };
931
+ return keyBuilder$5(luvio, keyParams);
932
+ }
933
+ function normalize$3(input, existing, path, luvio, store, timestamp) {
934
+ return input;
935
+ }
936
+ const select$7 = function DataCleanRoomDataSpecificationRepresentationSelect() {
937
+ return {
938
+ kind: 'Fragment',
939
+ version: VERSION$3,
940
+ private: [],
941
+ opaque: true
942
+ };
943
+ };
944
+ function equals$3(existing, incoming) {
945
+ if (JSONStringify(incoming) !== JSONStringify(existing)) {
946
+ return false;
947
+ }
948
+ return true;
949
+ }
950
+ const ingest$3 = function DataCleanRoomDataSpecificationRepresentationIngest(input, path, luvio, store, timestamp) {
951
+ if (process.env.NODE_ENV !== 'production') {
952
+ const validateError = validate$3(input);
953
+ if (validateError !== null) {
954
+ throw validateError;
955
+ }
956
+ }
957
+ const key = keyBuilderFromType$1(luvio, input);
958
+ const ttlToUse = path.ttl !== undefined ? path.ttl : 60000;
959
+ ingestShape(input, path, luvio, store, timestamp, ttlToUse, key, normalize$3, "data-clean-room", VERSION$3, RepresentationType$3, equals$3);
960
+ return createLink(key);
961
+ };
962
+ function getTypeCacheKeys$3(rootKeySet, luvio, input, fullPathFactory) {
963
+ // root cache key (uses fullPathFactory if keyBuilderFromType isn't defined)
964
+ const rootKey = keyBuilderFromType$1(luvio, input);
965
+ rootKeySet.set(rootKey, {
966
+ namespace: keyPrefix,
967
+ representationName: RepresentationType$3,
968
+ mergeable: false
969
+ });
970
+ }
971
+
972
+ function select$6(luvio, params) {
973
+ return select$7();
974
+ }
975
+ function getResponseCacheKeys$3(storeKeyMap, luvio, resourceParams, response) {
976
+ getTypeCacheKeys$3(storeKeyMap, luvio, response);
977
+ }
978
+ function ingestSuccess$3(luvio, resourceParams, response) {
979
+ const { body } = response;
980
+ const key = keyBuilderFromType$1(luvio, body);
981
+ luvio.storeIngest(key, ingest$3, body);
982
+ const snapshot = luvio.storeLookup({
983
+ recordId: key,
984
+ node: select$6(),
985
+ variables: {},
986
+ });
987
+ if (process.env.NODE_ENV !== 'production') {
988
+ if (snapshot.state !== 'Fulfilled') {
989
+ throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
990
+ }
991
+ }
992
+ deepFreeze(snapshot.data);
993
+ return snapshot;
994
+ }
995
+ function createResourceRequest$3(config) {
996
+ const headers = {};
997
+ return {
998
+ baseUri: '/services/data/v63.0',
999
+ basePath: '/ssot/data-clean-room/specifications',
1000
+ method: 'post',
1001
+ body: config.body,
1002
+ urlParams: {},
1003
+ queryParams: {},
1004
+ headers,
1005
+ priority: 'normal',
1006
+ };
1007
+ }
1008
+
1009
+ const adapterName$3 = 'createDataCleanRoomSpecification';
1010
+ const createDataCleanRoomSpecification_ConfigPropertyMetadata = [
1011
+ generateParamConfigMetadata('dataMapping', true, 2 /* Body */, 4 /* Unsupported */, true),
1012
+ generateParamConfigMetadata('memberType', true, 2 /* Body */, 0 /* String */),
1013
+ generateParamConfigMetadata('ownerOrgId', true, 2 /* Body */, 0 /* String */),
1014
+ generateParamConfigMetadata('templateName', true, 2 /* Body */, 0 /* String */),
1015
+ generateParamConfigMetadata('name', false, 2 /* Body */, 0 /* String */),
1016
+ generateParamConfigMetadata('label', true, 2 /* Body */, 0 /* String */),
1017
+ generateParamConfigMetadata('description', true, 2 /* Body */, 0 /* String */),
1018
+ generateParamConfigMetadata('dataspaceName', false, 2 /* Body */, 0 /* String */),
1019
+ ];
1020
+ const createDataCleanRoomSpecification_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$3, createDataCleanRoomSpecification_ConfigPropertyMetadata);
1021
+ const createResourceParams$3 = /*#__PURE__*/ createResourceParams$5(createDataCleanRoomSpecification_ConfigPropertyMetadata);
1022
+ function typeCheckConfig$3(untrustedConfig) {
1023
+ const config = {};
1024
+ typeCheckConfig$5(untrustedConfig, config, createDataCleanRoomSpecification_ConfigPropertyMetadata);
1025
+ const untrustedConfig_dataMapping = untrustedConfig.dataMapping;
1026
+ if (ArrayIsArray$1(untrustedConfig_dataMapping)) {
1027
+ const untrustedConfig_dataMapping_array = [];
1028
+ for (let i = 0, arrayLength = untrustedConfig_dataMapping.length; i < arrayLength; i++) {
1029
+ const untrustedConfig_dataMapping_item = untrustedConfig_dataMapping[i];
1030
+ untrustedConfig_dataMapping_array.push(untrustedConfig_dataMapping_item);
1031
+ }
1032
+ config.dataMapping = untrustedConfig_dataMapping_array;
1033
+ }
1034
+ return config;
1035
+ }
1036
+ function validateAdapterConfig$3(untrustedConfig, configPropertyNames) {
1037
+ if (!untrustedIsObject(untrustedConfig)) {
1038
+ return null;
1039
+ }
1040
+ if (process.env.NODE_ENV !== 'production') {
1041
+ validateConfig(untrustedConfig, configPropertyNames);
1042
+ }
1043
+ const config = typeCheckConfig$3(untrustedConfig);
1044
+ if (!areRequiredParametersPresent(config, configPropertyNames)) {
1045
+ return null;
1046
+ }
1047
+ return config;
1048
+ }
1049
+ function buildNetworkSnapshot$3(luvio, config, options) {
1050
+ const resourceParams = createResourceParams$3(config);
1051
+ const request = createResourceRequest$3(resourceParams);
1052
+ return luvio.dispatchResourceRequest(request, options)
1053
+ .then((response) => {
1054
+ return luvio.handleSuccessResponse(() => {
1055
+ const snapshot = ingestSuccess$3(luvio, resourceParams, response);
1056
+ return luvio.storeBroadcast().then(() => snapshot);
1057
+ }, () => {
1058
+ const cache = new StoreKeyMap();
1059
+ getResponseCacheKeys$3(cache, luvio, resourceParams, response.body);
1060
+ return cache;
1061
+ });
1062
+ }, (response) => {
1063
+ deepFreeze(response);
1064
+ throw response;
1065
+ });
1066
+ }
1067
+ const createDataCleanRoomSpecificationAdapterFactory = (luvio) => {
1068
+ return function createDataCleanRoomSpecification(untrustedConfig) {
1069
+ const config = validateAdapterConfig$3(untrustedConfig, createDataCleanRoomSpecification_ConfigPropertyNames);
1070
+ // Invalid or incomplete config
1071
+ if (config === null) {
1072
+ throw new Error('Invalid config for "createDataCleanRoomSpecification"');
1073
+ }
1074
+ return buildNetworkSnapshot$3(luvio, config);
1075
+ };
1076
+ };
1077
+
1078
+ const VERSION$2 = "929b1bcf37fe62f914c2364146a0f5e6";
1079
+ function validate$2(obj, path = 'DataCleanRoomProviderRepresentation') {
1080
+ const v_error = (() => {
1081
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
1082
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
1083
+ }
1084
+ if (obj.createdBy !== undefined) {
1085
+ const obj_createdBy = obj.createdBy;
1086
+ const path_createdBy = path + '.createdBy';
1087
+ const referencepath_createdByValidationError = validate$b(obj_createdBy, path_createdBy);
1088
+ if (referencepath_createdByValidationError !== null) {
1089
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_createdBy + '")\n';
1090
+ message += referencepath_createdByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
1091
+ return new TypeError(message);
1092
+ }
1093
+ }
1094
+ if (obj.createdDate !== undefined) {
1095
+ const obj_createdDate = obj.createdDate;
1096
+ const path_createdDate = path + '.createdDate';
1097
+ if (typeof obj_createdDate !== 'string') {
1098
+ return new TypeError('Expected "string" but received "' + typeof obj_createdDate + '" (at "' + path_createdDate + '")');
1099
+ }
1100
+ }
1101
+ const obj_dataCloudOrgId = obj.dataCloudOrgId;
1102
+ const path_dataCloudOrgId = path + '.dataCloudOrgId';
1103
+ if (typeof obj_dataCloudOrgId !== 'string') {
1104
+ return new TypeError('Expected "string" but received "' + typeof obj_dataCloudOrgId + '" (at "' + path_dataCloudOrgId + '")');
1105
+ }
1106
+ const obj_description = obj.description;
1107
+ const path_description = path + '.description';
1108
+ if (typeof obj_description !== 'string') {
1109
+ return new TypeError('Expected "string" but received "' + typeof obj_description + '" (at "' + path_description + '")');
1110
+ }
1111
+ const obj_id = obj.id;
1112
+ const path_id = path + '.id';
1113
+ if (typeof obj_id !== 'string') {
1114
+ return new TypeError('Expected "string" but received "' + typeof obj_id + '" (at "' + path_id + '")');
1115
+ }
1116
+ if (obj.label !== undefined) {
1117
+ const obj_label = obj.label;
1118
+ const path_label = path + '.label';
1119
+ if (typeof obj_label !== 'string') {
1120
+ return new TypeError('Expected "string" but received "' + typeof obj_label + '" (at "' + path_label + '")');
1121
+ }
1122
+ }
1123
+ if (obj.lastModifiedBy !== undefined) {
1124
+ const obj_lastModifiedBy = obj.lastModifiedBy;
1125
+ const path_lastModifiedBy = path + '.lastModifiedBy';
1126
+ const referencepath_lastModifiedByValidationError = validate$b(obj_lastModifiedBy, path_lastModifiedBy);
1127
+ if (referencepath_lastModifiedByValidationError !== null) {
1128
+ let message = 'Object doesn\'t match CdpUserRepresentation (at "' + path_lastModifiedBy + '")\n';
1129
+ message += referencepath_lastModifiedByValidationError.message.split('\n').map((line) => '\t' + line).join('\n');
1130
+ return new TypeError(message);
1131
+ }
1132
+ }
1133
+ if (obj.lastModifiedDate !== undefined) {
1134
+ const obj_lastModifiedDate = obj.lastModifiedDate;
1135
+ const path_lastModifiedDate = path + '.lastModifiedDate';
1136
+ if (typeof obj_lastModifiedDate !== 'string') {
1137
+ return new TypeError('Expected "string" but received "' + typeof obj_lastModifiedDate + '" (at "' + path_lastModifiedDate + '")');
1138
+ }
1139
+ }
1140
+ if (obj.logoUrl !== undefined) {
1141
+ const obj_logoUrl = obj.logoUrl;
1142
+ const path_logoUrl = path + '.logoUrl';
1143
+ if (typeof obj_logoUrl !== 'string') {
1144
+ return new TypeError('Expected "string" but received "' + typeof obj_logoUrl + '" (at "' + path_logoUrl + '")');
1145
+ }
1146
+ }
1147
+ if (obj.name !== undefined) {
1148
+ const obj_name = obj.name;
1149
+ const path_name = path + '.name';
1150
+ if (typeof obj_name !== 'string') {
1151
+ return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
1152
+ }
1153
+ }
1154
+ if (obj.namespace !== undefined) {
1155
+ const obj_namespace = obj.namespace;
1156
+ const path_namespace = path + '.namespace';
1157
+ if (typeof obj_namespace !== 'string') {
1158
+ return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
1159
+ }
1160
+ }
1161
+ const obj_templateNames = obj.templateNames;
1162
+ const path_templateNames = path + '.templateNames';
1163
+ if (!ArrayIsArray(obj_templateNames)) {
1164
+ return new TypeError('Expected "array" but received "' + typeof obj_templateNames + '" (at "' + path_templateNames + '")');
1165
+ }
1166
+ for (let i = 0; i < obj_templateNames.length; i++) {
1167
+ const obj_templateNames_item = obj_templateNames[i];
1168
+ const path_templateNames_item = path_templateNames + '[' + i + ']';
1169
+ if (typeof obj_templateNames_item !== 'string') {
1170
+ return new TypeError('Expected "string" but received "' + typeof obj_templateNames_item + '" (at "' + path_templateNames_item + '")');
1171
+ }
1172
+ }
1173
+ if (obj.url !== undefined) {
1174
+ const obj_url = obj.url;
1175
+ const path_url = path + '.url';
1176
+ if (typeof obj_url !== 'string') {
1177
+ return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
1178
+ }
1179
+ }
1180
+ })();
1181
+ return v_error === undefined ? null : v_error;
1182
+ }
1183
+ const RepresentationType$2 = 'DataCleanRoomProviderRepresentation';
1184
+ function keyBuilder$4(luvio, config) {
1185
+ return keyPrefix + '::' + RepresentationType$2 + ':' + config.id;
1186
+ }
1187
+ function keyBuilderFromType(luvio, object) {
1188
+ const keyParams = {
1189
+ id: object.id
1190
+ };
1191
+ return keyBuilder$4(luvio, keyParams);
1192
+ }
1193
+ function normalize$2(input, existing, path, luvio, store, timestamp) {
1194
+ return input;
1195
+ }
1196
+ const select$5 = function DataCleanRoomProviderRepresentationSelect() {
1197
+ return {
1198
+ kind: 'Fragment',
1199
+ version: VERSION$2,
1200
+ private: [],
1201
+ opaque: true
1202
+ };
1203
+ };
1204
+ function equals$2(existing, incoming) {
1205
+ if (JSONStringify(incoming) !== JSONStringify(existing)) {
1206
+ return false;
1207
+ }
1208
+ return true;
1209
+ }
1210
+ const ingest$2 = function DataCleanRoomProviderRepresentationIngest(input, path, luvio, store, timestamp) {
1211
+ if (process.env.NODE_ENV !== 'production') {
1212
+ const validateError = validate$2(input);
1213
+ if (validateError !== null) {
1214
+ throw validateError;
1215
+ }
1216
+ }
1217
+ const key = keyBuilderFromType(luvio, input);
1218
+ const ttlToUse = path.ttl !== undefined ? path.ttl : 60000;
1219
+ ingestShape(input, path, luvio, store, timestamp, ttlToUse, key, normalize$2, "data-clean-room", VERSION$2, RepresentationType$2, equals$2);
1220
+ return createLink(key);
1221
+ };
1222
+ function getTypeCacheKeys$2(rootKeySet, luvio, input, fullPathFactory) {
1223
+ // root cache key (uses fullPathFactory if keyBuilderFromType isn't defined)
1224
+ const rootKey = keyBuilderFromType(luvio, input);
1225
+ rootKeySet.set(rootKey, {
1226
+ namespace: keyPrefix,
1227
+ representationName: RepresentationType$2,
1228
+ mergeable: false
1229
+ });
1230
+ }
1231
+
1232
+ function select$4(luvio, params) {
1233
+ return select$5();
1234
+ }
1235
+ function getResponseCacheKeys$2(storeKeyMap, luvio, resourceParams, response) {
1236
+ getTypeCacheKeys$2(storeKeyMap, luvio, response);
1237
+ }
1238
+ function ingestSuccess$2(luvio, resourceParams, response) {
1239
+ const { body } = response;
1240
+ const key = keyBuilderFromType(luvio, body);
1241
+ luvio.storeIngest(key, ingest$2, body);
1242
+ const snapshot = luvio.storeLookup({
1243
+ recordId: key,
1244
+ node: select$4(),
1245
+ variables: {},
1246
+ });
1247
+ if (process.env.NODE_ENV !== 'production') {
1248
+ if (snapshot.state !== 'Fulfilled') {
1249
+ throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
1250
+ }
1251
+ }
1252
+ deepFreeze(snapshot.data);
1253
+ return snapshot;
1254
+ }
1255
+ function createResourceRequest$2(config) {
1256
+ const headers = {};
1257
+ return {
1258
+ baseUri: '/services/data/v63.0',
1259
+ basePath: '/ssot/data-clean-room/providers',
1260
+ method: 'post',
1261
+ body: config.body,
1262
+ urlParams: {},
1263
+ queryParams: {},
1264
+ headers,
1265
+ priority: 'normal',
1266
+ };
1267
+ }
1268
+
1269
+ const adapterName$2 = 'createProvider';
1270
+ const createProvider_ConfigPropertyMetadata = [
1271
+ generateParamConfigMetadata('label', true, 2 /* Body */, 0 /* String */),
1272
+ generateParamConfigMetadata('description', true, 2 /* Body */, 0 /* String */),
1273
+ generateParamConfigMetadata('templateNames', true, 2 /* Body */, 0 /* String */, true),
1274
+ generateParamConfigMetadata('dataCloudOrgId', true, 2 /* Body */, 0 /* String */),
1275
+ generateParamConfigMetadata('dataspaceName', false, 2 /* Body */, 0 /* String */),
1276
+ generateParamConfigMetadata('name', false, 2 /* Body */, 0 /* String */),
1277
+ generateParamConfigMetadata('logoUrl', false, 2 /* Body */, 0 /* String */),
1278
+ ];
1279
+ const createProvider_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$2, createProvider_ConfigPropertyMetadata);
1280
+ const createResourceParams$2 = /*#__PURE__*/ createResourceParams$5(createProvider_ConfigPropertyMetadata);
1281
+ function typeCheckConfig$2(untrustedConfig) {
1282
+ const config = {};
1283
+ typeCheckConfig$5(untrustedConfig, config, createProvider_ConfigPropertyMetadata);
1284
+ return config;
1285
+ }
1286
+ function validateAdapterConfig$2(untrustedConfig, configPropertyNames) {
1287
+ if (!untrustedIsObject(untrustedConfig)) {
1288
+ return null;
1289
+ }
1290
+ if (process.env.NODE_ENV !== 'production') {
1291
+ validateConfig(untrustedConfig, configPropertyNames);
1292
+ }
1293
+ const config = typeCheckConfig$2(untrustedConfig);
1294
+ if (!areRequiredParametersPresent(config, configPropertyNames)) {
1295
+ return null;
1296
+ }
1297
+ return config;
1298
+ }
1299
+ function buildNetworkSnapshot$2(luvio, config, options) {
1300
+ const resourceParams = createResourceParams$2(config);
1301
+ const request = createResourceRequest$2(resourceParams);
1302
+ return luvio.dispatchResourceRequest(request, options)
1303
+ .then((response) => {
1304
+ return luvio.handleSuccessResponse(() => {
1305
+ const snapshot = ingestSuccess$2(luvio, resourceParams, response);
1306
+ return luvio.storeBroadcast().then(() => snapshot);
1307
+ }, () => {
1308
+ const cache = new StoreKeyMap();
1309
+ getResponseCacheKeys$2(cache, luvio, resourceParams, response.body);
1310
+ return cache;
1311
+ });
1312
+ }, (response) => {
1313
+ deepFreeze(response);
1314
+ throw response;
1315
+ });
1316
+ }
1317
+ const createProviderAdapterFactory = (luvio) => {
1318
+ return function createProvider(untrustedConfig) {
1319
+ const config = validateAdapterConfig$2(untrustedConfig, createProvider_ConfigPropertyNames);
1320
+ // Invalid or incomplete config
1321
+ if (config === null) {
1322
+ throw new Error('Invalid config for "createProvider"');
1323
+ }
1324
+ return buildNetworkSnapshot$2(luvio, config);
1325
+ };
1326
+ };
1327
+
1328
+ const VERSION$1 = "52237eeecd4f8f11ae22e265d9abe5ca";
1329
+ function validate$1(obj, path = 'DataCleanRoomProviderCollectionRepresentation') {
1330
+ const v_error = (() => {
1331
+ if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
1332
+ return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
1333
+ }
1334
+ if (obj.currentPageUrl !== undefined) {
1335
+ const obj_currentPageUrl = obj.currentPageUrl;
1336
+ const path_currentPageUrl = path + '.currentPageUrl';
1337
+ if (typeof obj_currentPageUrl !== 'string') {
1338
+ return new TypeError('Expected "string" but received "' + typeof obj_currentPageUrl + '" (at "' + path_currentPageUrl + '")');
1339
+ }
1340
+ }
1341
+ if (obj.limit !== undefined) {
1342
+ const obj_limit = obj.limit;
1343
+ const path_limit = path + '.limit';
1344
+ if (typeof obj_limit !== 'number' || (typeof obj_limit === 'number' && Math.floor(obj_limit) !== obj_limit)) {
1345
+ return new TypeError('Expected "integer" but received "' + typeof obj_limit + '" (at "' + path_limit + '")');
1346
+ }
1347
+ }
1348
+ if (obj.nextPageUrl !== undefined) {
1349
+ const obj_nextPageUrl = obj.nextPageUrl;
1350
+ const path_nextPageUrl = path + '.nextPageUrl';
1351
+ let obj_nextPageUrl_union0 = null;
1352
+ const obj_nextPageUrl_union0_error = (() => {
1353
+ if (typeof obj_nextPageUrl !== 'string') {
1354
+ return new TypeError('Expected "string" but received "' + typeof obj_nextPageUrl + '" (at "' + path_nextPageUrl + '")');
1355
+ }
1356
+ })();
1357
+ if (obj_nextPageUrl_union0_error != null) {
1358
+ obj_nextPageUrl_union0 = obj_nextPageUrl_union0_error.message;
1359
+ }
1360
+ let obj_nextPageUrl_union1 = null;
1361
+ const obj_nextPageUrl_union1_error = (() => {
1362
+ if (obj_nextPageUrl !== null) {
1363
+ return new TypeError('Expected "null" but received "' + typeof obj_nextPageUrl + '" (at "' + path_nextPageUrl + '")');
1364
+ }
1365
+ })();
1366
+ if (obj_nextPageUrl_union1_error != null) {
1367
+ obj_nextPageUrl_union1 = obj_nextPageUrl_union1_error.message;
1368
+ }
1369
+ if (obj_nextPageUrl_union0 && obj_nextPageUrl_union1) {
1370
+ let message = 'Object doesn\'t match union (at "' + path_nextPageUrl + '")';
1371
+ message += '\n' + obj_nextPageUrl_union0.split('\n').map((line) => '\t' + line).join('\n');
1372
+ message += '\n' + obj_nextPageUrl_union1.split('\n').map((line) => '\t' + line).join('\n');
1373
+ return new TypeError(message);
1374
+ }
1375
+ }
1376
+ if (obj.offset !== undefined) {
1377
+ const obj_offset = obj.offset;
1378
+ const path_offset = path + '.offset';
1379
+ if (typeof obj_offset !== 'number' || (typeof obj_offset === 'number' && Math.floor(obj_offset) !== obj_offset)) {
1380
+ return new TypeError('Expected "integer" but received "' + typeof obj_offset + '" (at "' + path_offset + '")');
1381
+ }
1382
+ }
1383
+ const obj_providers = obj.providers;
1384
+ const path_providers = path + '.providers';
1385
+ if (!ArrayIsArray(obj_providers)) {
1386
+ return new TypeError('Expected "array" but received "' + typeof obj_providers + '" (at "' + path_providers + '")');
1387
+ }
1388
+ for (let i = 0; i < obj_providers.length; i++) {
1389
+ const obj_providers_item = obj_providers[i];
1390
+ const path_providers_item = path_providers + '[' + i + ']';
1391
+ if (typeof obj_providers_item !== 'object') {
1392
+ return new TypeError('Expected "object" but received "' + typeof obj_providers_item + '" (at "' + path_providers_item + '")');
1393
+ }
1394
+ }
1395
+ if (obj.totalSize !== undefined) {
1396
+ const obj_totalSize = obj.totalSize;
1397
+ const path_totalSize = path + '.totalSize';
1398
+ if (typeof obj_totalSize !== 'number' || (typeof obj_totalSize === 'number' && Math.floor(obj_totalSize) !== obj_totalSize)) {
1399
+ return new TypeError('Expected "integer" but received "' + typeof obj_totalSize + '" (at "' + path_totalSize + '")');
1400
+ }
1401
+ }
1402
+ })();
1403
+ return v_error === undefined ? null : v_error;
1404
+ }
1405
+ const RepresentationType$1 = 'DataCleanRoomProviderCollectionRepresentation';
1406
+ function normalize$1(input, existing, path, luvio, store, timestamp) {
1407
+ const input_providers = input.providers;
1408
+ const input_providers_id = path.fullPath + '__providers';
1409
+ for (let i = 0; i < input_providers.length; i++) {
1410
+ const input_providers_item = input_providers[i];
1411
+ let input_providers_item_id = input_providers_id + '__' + i;
1412
+ input_providers[i] = ingest$2(input_providers_item, {
1413
+ fullPath: input_providers_item_id,
1414
+ propertyName: i,
1415
+ parent: {
1416
+ data: input,
1417
+ key: path.fullPath,
1418
+ existing: existing,
1419
+ },
1420
+ ttl: path.ttl
1421
+ }, luvio, store, timestamp);
1422
+ }
1423
+ return input;
1424
+ }
1425
+ const select$3 = function DataCleanRoomProviderCollectionRepresentationSelect() {
1426
+ return {
1427
+ kind: 'Fragment',
1428
+ version: VERSION$1,
1429
+ private: [],
1430
+ selections: [
1431
+ {
1432
+ name: 'currentPageUrl',
1433
+ kind: 'Scalar',
1434
+ required: false
1435
+ },
1436
+ {
1437
+ name: 'limit',
1438
+ kind: 'Scalar',
1439
+ required: false
1440
+ },
1441
+ {
1442
+ name: 'nextPageUrl',
1443
+ kind: 'Scalar',
1444
+ required: false
1445
+ },
1446
+ {
1447
+ name: 'offset',
1448
+ kind: 'Scalar',
1449
+ required: false
1450
+ },
1451
+ {
1452
+ name: 'providers',
1453
+ kind: 'Link',
1454
+ plural: true,
1455
+ fragment: select$5()
1456
+ },
1457
+ {
1458
+ name: 'totalSize',
1459
+ kind: 'Scalar',
1460
+ required: false
1461
+ }
1462
+ ]
1463
+ };
1464
+ };
1465
+ function equals$1(existing, incoming) {
1466
+ const existing_limit = existing.limit;
1467
+ const incoming_limit = incoming.limit;
1468
+ // if at least one of these optionals is defined
1469
+ if (existing_limit !== undefined || incoming_limit !== undefined) {
1470
+ // if one of these is not defined we know the other is defined and therefore
1471
+ // not equal
1472
+ if (existing_limit === undefined || incoming_limit === undefined) {
1473
+ return false;
1474
+ }
1475
+ if (!(existing_limit === incoming_limit)) {
1476
+ return false;
1477
+ }
1478
+ }
1479
+ const existing_offset = existing.offset;
1480
+ const incoming_offset = incoming.offset;
1481
+ // if at least one of these optionals is defined
1482
+ if (existing_offset !== undefined || incoming_offset !== undefined) {
1483
+ // if one of these is not defined we know the other is defined and therefore
1484
+ // not equal
1485
+ if (existing_offset === undefined || incoming_offset === undefined) {
1486
+ return false;
1487
+ }
1488
+ if (!(existing_offset === incoming_offset)) {
1489
+ return false;
1490
+ }
1491
+ }
1492
+ const existing_totalSize = existing.totalSize;
1493
+ const incoming_totalSize = incoming.totalSize;
1494
+ // if at least one of these optionals is defined
1495
+ if (existing_totalSize !== undefined || incoming_totalSize !== undefined) {
1496
+ // if one of these is not defined we know the other is defined and therefore
1497
+ // not equal
1498
+ if (existing_totalSize === undefined || incoming_totalSize === undefined) {
1499
+ return false;
1500
+ }
1501
+ if (!(existing_totalSize === incoming_totalSize)) {
1502
+ return false;
201
1503
  }
202
- if (obj.name !== undefined) {
203
- const obj_name = obj.name;
204
- const path_name = path + '.name';
205
- if (typeof obj_name !== 'string') {
206
- return new TypeError('Expected "string" but received "' + typeof obj_name + '" (at "' + path_name + '")');
207
- }
1504
+ }
1505
+ const existing_currentPageUrl = existing.currentPageUrl;
1506
+ const incoming_currentPageUrl = incoming.currentPageUrl;
1507
+ // if at least one of these optionals is defined
1508
+ if (existing_currentPageUrl !== undefined || incoming_currentPageUrl !== undefined) {
1509
+ // if one of these is not defined we know the other is defined and therefore
1510
+ // not equal
1511
+ if (existing_currentPageUrl === undefined || incoming_currentPageUrl === undefined) {
1512
+ return false;
208
1513
  }
209
- if (obj.namespace !== undefined) {
210
- const obj_namespace = obj.namespace;
211
- const path_namespace = path + '.namespace';
212
- if (typeof obj_namespace !== 'string') {
213
- return new TypeError('Expected "string" but received "' + typeof obj_namespace + '" (at "' + path_namespace + '")');
214
- }
1514
+ if (!(existing_currentPageUrl === incoming_currentPageUrl)) {
1515
+ return false;
215
1516
  }
216
- const obj_templateNames = obj.templateNames;
217
- const path_templateNames = path + '.templateNames';
218
- if (!ArrayIsArray(obj_templateNames)) {
219
- return new TypeError('Expected "array" but received "' + typeof obj_templateNames + '" (at "' + path_templateNames + '")');
1517
+ }
1518
+ const existing_nextPageUrl = existing.nextPageUrl;
1519
+ const incoming_nextPageUrl = incoming.nextPageUrl;
1520
+ // if at least one of these optionals is defined
1521
+ if (existing_nextPageUrl !== undefined || incoming_nextPageUrl !== undefined) {
1522
+ // if one of these is not defined we know the other is defined and therefore
1523
+ // not equal
1524
+ if (existing_nextPageUrl === undefined || incoming_nextPageUrl === undefined) {
1525
+ return false;
220
1526
  }
221
- for (let i = 0; i < obj_templateNames.length; i++) {
222
- const obj_templateNames_item = obj_templateNames[i];
223
- const path_templateNames_item = path_templateNames + '[' + i + ']';
224
- if (typeof obj_templateNames_item !== 'string') {
225
- return new TypeError('Expected "string" but received "' + typeof obj_templateNames_item + '" (at "' + path_templateNames_item + '")');
226
- }
1527
+ if (!(existing_nextPageUrl === incoming_nextPageUrl)) {
1528
+ return false;
227
1529
  }
228
- if (obj.url !== undefined) {
229
- const obj_url = obj.url;
230
- const path_url = path + '.url';
231
- if (typeof obj_url !== 'string') {
232
- return new TypeError('Expected "string" but received "' + typeof obj_url + '" (at "' + path_url + '")');
233
- }
1530
+ }
1531
+ const existing_providers = existing.providers;
1532
+ const incoming_providers = incoming.providers;
1533
+ const equals_providers_items = equalsArray(existing_providers, incoming_providers, (existing_providers_item, incoming_providers_item) => {
1534
+ if (!(existing_providers_item.__ref === incoming_providers_item.__ref)) {
1535
+ return false;
234
1536
  }
235
- })();
236
- return v_error === undefined ? null : v_error;
237
- }
238
- const RepresentationType$1 = 'DataCleanRoomProviderRepresentation';
239
- function keyBuilder$2(luvio, config) {
240
- return keyPrefix + '::' + RepresentationType$1 + ':' + config.id;
241
- }
242
- function keyBuilderFromType(luvio, object) {
243
- const keyParams = {
244
- id: object.id
245
- };
246
- return keyBuilder$2(luvio, keyParams);
247
- }
248
- function normalize$1(input, existing, path, luvio, store, timestamp) {
249
- return input;
250
- }
251
- const select$3 = function DataCleanRoomProviderRepresentationSelect() {
252
- return {
253
- kind: 'Fragment',
254
- version: VERSION$1,
255
- private: [],
256
- opaque: true
257
- };
258
- };
259
- function equals$1(existing, incoming) {
260
- if (JSONStringify(incoming) !== JSONStringify(existing)) {
1537
+ });
1538
+ if (equals_providers_items === false) {
261
1539
  return false;
262
1540
  }
263
1541
  return true;
264
1542
  }
265
- const ingest$1 = function DataCleanRoomProviderRepresentationIngest(input, path, luvio, store, timestamp) {
1543
+ const ingest$1 = function DataCleanRoomProviderCollectionRepresentationIngest(input, path, luvio, store, timestamp) {
266
1544
  if (process.env.NODE_ENV !== 'production') {
267
1545
  const validateError = validate$1(input);
268
1546
  if (validateError !== null) {
269
1547
  throw validateError;
270
1548
  }
271
1549
  }
272
- const key = keyBuilderFromType(luvio, input);
1550
+ const key = path.fullPath;
273
1551
  const ttlToUse = path.ttl !== undefined ? path.ttl : 60000;
274
1552
  ingestShape(input, path, luvio, store, timestamp, ttlToUse, key, normalize$1, "data-clean-room", VERSION$1, RepresentationType$1, equals$1);
275
1553
  return createLink(key);
276
1554
  };
277
1555
  function getTypeCacheKeys$1(rootKeySet, luvio, input, fullPathFactory) {
278
1556
  // root cache key (uses fullPathFactory if keyBuilderFromType isn't defined)
279
- const rootKey = keyBuilderFromType(luvio, input);
1557
+ const rootKey = fullPathFactory();
280
1558
  rootKeySet.set(rootKey, {
281
1559
  namespace: keyPrefix,
282
1560
  representationName: RepresentationType$1,
283
1561
  mergeable: false
284
1562
  });
1563
+ const input_providers_length = input.providers.length;
1564
+ for (let i = 0; i < input_providers_length; i++) {
1565
+ getTypeCacheKeys$2(rootKeySet, luvio, input.providers[i]);
1566
+ }
285
1567
  }
286
1568
 
287
1569
  function select$2(luvio, params) {
288
1570
  return select$3();
289
1571
  }
1572
+ function keyBuilder$3(luvio, params) {
1573
+ return keyPrefix + '::DataCleanRoomProviderCollectionRepresentation:(' + 'filters:' + params.queryParams.filters + ',' + 'limit:' + params.queryParams.limit + ',' + 'offset:' + params.queryParams.offset + ',' + 'orderBy:' + params.queryParams.orderBy + ')';
1574
+ }
290
1575
  function getResponseCacheKeys$1(storeKeyMap, luvio, resourceParams, response) {
291
- getTypeCacheKeys$1(storeKeyMap, luvio, response);
1576
+ getTypeCacheKeys$1(storeKeyMap, luvio, response, () => keyBuilder$3(luvio, resourceParams));
292
1577
  }
293
- function ingestSuccess$1(luvio, resourceParams, response) {
1578
+ function ingestSuccess$1(luvio, resourceParams, response, snapshotRefresh) {
294
1579
  const { body } = response;
295
- const key = keyBuilderFromType(luvio, body);
1580
+ const key = keyBuilder$3(luvio, resourceParams);
296
1581
  luvio.storeIngest(key, ingest$1, body);
297
1582
  const snapshot = luvio.storeLookup({
298
1583
  recordId: key,
299
1584
  node: select$2(),
300
1585
  variables: {},
301
- });
1586
+ }, snapshotRefresh);
302
1587
  if (process.env.NODE_ENV !== 'production') {
303
1588
  if (snapshot.state !== 'Fulfilled') {
304
1589
  throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
@@ -307,35 +1592,42 @@ function ingestSuccess$1(luvio, resourceParams, response) {
307
1592
  deepFreeze(snapshot.data);
308
1593
  return snapshot;
309
1594
  }
1595
+ function ingestError$1(luvio, params, error, snapshotRefresh) {
1596
+ const key = keyBuilder$3(luvio, params);
1597
+ const errorSnapshot = luvio.errorSnapshot(error, snapshotRefresh);
1598
+ luvio.storeIngestError(key, errorSnapshot);
1599
+ return errorSnapshot;
1600
+ }
310
1601
  function createResourceRequest$1(config) {
311
1602
  const headers = {};
312
1603
  return {
313
1604
  baseUri: '/services/data/v63.0',
314
1605
  basePath: '/ssot/data-clean-room/providers',
315
- method: 'post',
316
- body: config.body,
1606
+ method: 'get',
1607
+ body: null,
317
1608
  urlParams: {},
318
- queryParams: {},
1609
+ queryParams: config.queryParams,
319
1610
  headers,
320
1611
  priority: 'normal',
321
1612
  };
322
1613
  }
323
1614
 
324
- const adapterName$1 = 'createProvider';
325
- const createProvider_ConfigPropertyMetadata = [
326
- generateParamConfigMetadata('label', true, 2 /* Body */, 0 /* String */),
327
- generateParamConfigMetadata('description', true, 2 /* Body */, 0 /* String */),
328
- generateParamConfigMetadata('templateNames', true, 2 /* Body */, 0 /* String */, true),
329
- generateParamConfigMetadata('dataCloudOrgId', true, 2 /* Body */, 0 /* String */),
330
- generateParamConfigMetadata('dataspaceName', false, 2 /* Body */, 0 /* String */),
331
- generateParamConfigMetadata('name', false, 2 /* Body */, 0 /* String */),
332
- generateParamConfigMetadata('logoUrl', false, 2 /* Body */, 0 /* String */),
1615
+ const adapterName$1 = 'getDataCleanRoomProvidersPaginated';
1616
+ const getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata = [
1617
+ generateParamConfigMetadata('filters', false, 1 /* QueryParameter */, 0 /* String */),
1618
+ generateParamConfigMetadata('limit', false, 1 /* QueryParameter */, 3 /* Integer */),
1619
+ generateParamConfigMetadata('offset', false, 1 /* QueryParameter */, 3 /* Integer */),
1620
+ generateParamConfigMetadata('orderBy', false, 1 /* QueryParameter */, 0 /* String */),
333
1621
  ];
334
- const createProvider_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$1, createProvider_ConfigPropertyMetadata);
335
- const createResourceParams$1 = /*#__PURE__*/ createResourceParams$2(createProvider_ConfigPropertyMetadata);
1622
+ const getDataCleanRoomProvidersPaginated_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$1, getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata);
1623
+ const createResourceParams$1 = /*#__PURE__*/ createResourceParams$5(getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata);
1624
+ function keyBuilder$2(luvio, config) {
1625
+ const resourceParams = createResourceParams$1(config);
1626
+ return keyBuilder$3(luvio, resourceParams);
1627
+ }
336
1628
  function typeCheckConfig$1(untrustedConfig) {
337
1629
  const config = {};
338
- typeCheckConfig$2(untrustedConfig, config, createProvider_ConfigPropertyMetadata);
1630
+ typeCheckConfig$5(untrustedConfig, config, getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata);
339
1631
  return config;
340
1632
  }
341
1633
  function validateAdapterConfig$1(untrustedConfig, configPropertyNames) {
@@ -351,41 +1643,82 @@ function validateAdapterConfig$1(untrustedConfig, configPropertyNames) {
351
1643
  }
352
1644
  return config;
353
1645
  }
1646
+ function adapterFragment$1(luvio, config) {
1647
+ createResourceParams$1(config);
1648
+ return select$2();
1649
+ }
1650
+ function onFetchResponseSuccess$1(luvio, config, resourceParams, response) {
1651
+ const snapshot = ingestSuccess$1(luvio, resourceParams, response, {
1652
+ config,
1653
+ resolve: () => buildNetworkSnapshot$1(luvio, config, snapshotRefreshOptions)
1654
+ });
1655
+ return luvio.storeBroadcast().then(() => snapshot);
1656
+ }
1657
+ function onFetchResponseError$1(luvio, config, resourceParams, response) {
1658
+ const snapshot = ingestError$1(luvio, resourceParams, response, {
1659
+ config,
1660
+ resolve: () => buildNetworkSnapshot$1(luvio, config, snapshotRefreshOptions)
1661
+ });
1662
+ return luvio.storeBroadcast().then(() => snapshot);
1663
+ }
354
1664
  function buildNetworkSnapshot$1(luvio, config, options) {
355
1665
  const resourceParams = createResourceParams$1(config);
356
1666
  const request = createResourceRequest$1(resourceParams);
357
1667
  return luvio.dispatchResourceRequest(request, options)
358
1668
  .then((response) => {
359
- return luvio.handleSuccessResponse(() => {
360
- const snapshot = ingestSuccess$1(luvio, resourceParams, response);
361
- return luvio.storeBroadcast().then(() => snapshot);
362
- }, () => {
1669
+ return luvio.handleSuccessResponse(() => onFetchResponseSuccess$1(luvio, config, resourceParams, response), () => {
363
1670
  const cache = new StoreKeyMap();
364
1671
  getResponseCacheKeys$1(cache, luvio, resourceParams, response.body);
365
1672
  return cache;
366
1673
  });
367
1674
  }, (response) => {
368
- deepFreeze(response);
369
- throw response;
1675
+ return luvio.handleErrorResponse(() => onFetchResponseError$1(luvio, config, resourceParams, response));
370
1676
  });
371
1677
  }
372
- const createProviderAdapterFactory = (luvio) => {
373
- return function createProvider(untrustedConfig) {
374
- const config = validateAdapterConfig$1(untrustedConfig, createProvider_ConfigPropertyNames);
375
- // Invalid or incomplete config
376
- if (config === null) {
377
- throw new Error('Invalid config for "createProvider"');
378
- }
379
- return buildNetworkSnapshot$1(luvio, config);
1678
+ function buildNetworkSnapshotCachePolicy$1(context, coercedAdapterRequestContext) {
1679
+ return buildNetworkSnapshotCachePolicy$2(context, coercedAdapterRequestContext, buildNetworkSnapshot$1, undefined, false);
1680
+ }
1681
+ function buildCachedSnapshotCachePolicy$1(context, storeLookup) {
1682
+ const { luvio, config } = context;
1683
+ const selector = {
1684
+ recordId: keyBuilder$2(luvio, config),
1685
+ node: adapterFragment$1(luvio, config),
1686
+ variables: {},
380
1687
  };
1688
+ const cacheSnapshot = storeLookup(selector, {
1689
+ config,
1690
+ resolve: () => buildNetworkSnapshot$1(luvio, config, snapshotRefreshOptions)
1691
+ });
1692
+ return cacheSnapshot;
1693
+ }
1694
+ const getDataCleanRoomProvidersPaginatedAdapterFactory = (luvio) => function dataCleanRoom__getDataCleanRoomProvidersPaginated(untrustedConfig, requestContext) {
1695
+ const config = validateAdapterConfig$1(untrustedConfig, getDataCleanRoomProvidersPaginated_ConfigPropertyNames);
1696
+ // Invalid or incomplete config
1697
+ if (config === null) {
1698
+ return null;
1699
+ }
1700
+ return luvio.applyCachePolicy((requestContext || {}), { config, luvio }, // BuildSnapshotContext
1701
+ buildCachedSnapshotCachePolicy$1, buildNetworkSnapshotCachePolicy$1);
381
1702
  };
382
1703
 
383
- const VERSION = "52237eeecd4f8f11ae22e265d9abe5ca";
384
- function validate(obj, path = 'DataCleanRoomProviderCollectionRepresentation') {
1704
+ const VERSION = "6fb37e337652e88218f2171d1e56647b";
1705
+ function validate(obj, path = 'DataCleanRoomSpecificationCollectionRepresentation') {
385
1706
  const v_error = (() => {
386
1707
  if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
387
1708
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
388
1709
  }
1710
+ const obj_cleanroomSpecifications = obj.cleanroomSpecifications;
1711
+ const path_cleanroomSpecifications = path + '.cleanroomSpecifications';
1712
+ if (!ArrayIsArray(obj_cleanroomSpecifications)) {
1713
+ return new TypeError('Expected "array" but received "' + typeof obj_cleanroomSpecifications + '" (at "' + path_cleanroomSpecifications + '")');
1714
+ }
1715
+ for (let i = 0; i < obj_cleanroomSpecifications.length; i++) {
1716
+ const obj_cleanroomSpecifications_item = obj_cleanroomSpecifications[i];
1717
+ const path_cleanroomSpecifications_item = path_cleanroomSpecifications + '[' + i + ']';
1718
+ if (typeof obj_cleanroomSpecifications_item !== 'object') {
1719
+ return new TypeError('Expected "object" but received "' + typeof obj_cleanroomSpecifications_item + '" (at "' + path_cleanroomSpecifications_item + '")');
1720
+ }
1721
+ }
389
1722
  if (obj.currentPageUrl !== undefined) {
390
1723
  const obj_currentPageUrl = obj.currentPageUrl;
391
1724
  const path_currentPageUrl = path + '.currentPageUrl';
@@ -393,12 +1726,10 @@ function validate(obj, path = 'DataCleanRoomProviderCollectionRepresentation') {
393
1726
  return new TypeError('Expected "string" but received "' + typeof obj_currentPageUrl + '" (at "' + path_currentPageUrl + '")');
394
1727
  }
395
1728
  }
396
- if (obj.limit !== undefined) {
397
- const obj_limit = obj.limit;
398
- const path_limit = path + '.limit';
399
- if (typeof obj_limit !== 'number' || (typeof obj_limit === 'number' && Math.floor(obj_limit) !== obj_limit)) {
400
- return new TypeError('Expected "integer" but received "' + typeof obj_limit + '" (at "' + path_limit + '")');
401
- }
1729
+ const obj_limit = obj.limit;
1730
+ const path_limit = path + '.limit';
1731
+ if (typeof obj_limit !== 'number' || (typeof obj_limit === 'number' && Math.floor(obj_limit) !== obj_limit)) {
1732
+ return new TypeError('Expected "integer" but received "' + typeof obj_limit + '" (at "' + path_limit + '")');
402
1733
  }
403
1734
  if (obj.nextPageUrl !== undefined) {
404
1735
  const obj_nextPageUrl = obj.nextPageUrl;
@@ -428,24 +1759,10 @@ function validate(obj, path = 'DataCleanRoomProviderCollectionRepresentation') {
428
1759
  return new TypeError(message);
429
1760
  }
430
1761
  }
431
- if (obj.offset !== undefined) {
432
- const obj_offset = obj.offset;
433
- const path_offset = path + '.offset';
434
- if (typeof obj_offset !== 'number' || (typeof obj_offset === 'number' && Math.floor(obj_offset) !== obj_offset)) {
435
- return new TypeError('Expected "integer" but received "' + typeof obj_offset + '" (at "' + path_offset + '")');
436
- }
437
- }
438
- const obj_providers = obj.providers;
439
- const path_providers = path + '.providers';
440
- if (!ArrayIsArray(obj_providers)) {
441
- return new TypeError('Expected "array" but received "' + typeof obj_providers + '" (at "' + path_providers + '")');
442
- }
443
- for (let i = 0; i < obj_providers.length; i++) {
444
- const obj_providers_item = obj_providers[i];
445
- const path_providers_item = path_providers + '[' + i + ']';
446
- if (typeof obj_providers_item !== 'object') {
447
- return new TypeError('Expected "object" but received "' + typeof obj_providers_item + '" (at "' + path_providers_item + '")');
448
- }
1762
+ const obj_offset = obj.offset;
1763
+ const path_offset = path + '.offset';
1764
+ if (typeof obj_offset !== 'number' || (typeof obj_offset === 'number' && Math.floor(obj_offset) !== obj_offset)) {
1765
+ return new TypeError('Expected "integer" but received "' + typeof obj_offset + '" (at "' + path_offset + '")');
449
1766
  }
450
1767
  if (obj.totalSize !== undefined) {
451
1768
  const obj_totalSize = obj.totalSize;
@@ -457,15 +1774,15 @@ function validate(obj, path = 'DataCleanRoomProviderCollectionRepresentation') {
457
1774
  })();
458
1775
  return v_error === undefined ? null : v_error;
459
1776
  }
460
- const RepresentationType = 'DataCleanRoomProviderCollectionRepresentation';
1777
+ const RepresentationType = 'DataCleanRoomSpecificationCollectionRepresentation';
461
1778
  function normalize(input, existing, path, luvio, store, timestamp) {
462
- const input_providers = input.providers;
463
- const input_providers_id = path.fullPath + '__providers';
464
- for (let i = 0; i < input_providers.length; i++) {
465
- const input_providers_item = input_providers[i];
466
- let input_providers_item_id = input_providers_id + '__' + i;
467
- input_providers[i] = ingest$1(input_providers_item, {
468
- fullPath: input_providers_item_id,
1779
+ const input_cleanroomSpecifications = input.cleanroomSpecifications;
1780
+ const input_cleanroomSpecifications_id = path.fullPath + '__cleanroomSpecifications';
1781
+ for (let i = 0; i < input_cleanroomSpecifications.length; i++) {
1782
+ const input_cleanroomSpecifications_item = input_cleanroomSpecifications[i];
1783
+ let input_cleanroomSpecifications_item_id = input_cleanroomSpecifications_id + '__' + i;
1784
+ input_cleanroomSpecifications[i] = ingest$3(input_cleanroomSpecifications_item, {
1785
+ fullPath: input_cleanroomSpecifications_item_id,
469
1786
  propertyName: i,
470
1787
  parent: {
471
1788
  data: input,
@@ -477,12 +1794,18 @@ function normalize(input, existing, path, luvio, store, timestamp) {
477
1794
  }
478
1795
  return input;
479
1796
  }
480
- const select$1 = function DataCleanRoomProviderCollectionRepresentationSelect() {
1797
+ const select$1 = function DataCleanRoomSpecificationCollectionRepresentationSelect() {
481
1798
  return {
482
1799
  kind: 'Fragment',
483
1800
  version: VERSION,
484
1801
  private: [],
485
1802
  selections: [
1803
+ {
1804
+ name: 'cleanroomSpecifications',
1805
+ kind: 'Link',
1806
+ plural: true,
1807
+ fragment: select$7()
1808
+ },
486
1809
  {
487
1810
  name: 'currentPageUrl',
488
1811
  kind: 'Scalar',
@@ -490,8 +1813,7 @@ const select$1 = function DataCleanRoomProviderCollectionRepresentationSelect()
490
1813
  },
491
1814
  {
492
1815
  name: 'limit',
493
- kind: 'Scalar',
494
- required: false
1816
+ kind: 'Scalar'
495
1817
  },
496
1818
  {
497
1819
  name: 'nextPageUrl',
@@ -500,14 +1822,7 @@ const select$1 = function DataCleanRoomProviderCollectionRepresentationSelect()
500
1822
  },
501
1823
  {
502
1824
  name: 'offset',
503
- kind: 'Scalar',
504
- required: false
505
- },
506
- {
507
- name: 'providers',
508
- kind: 'Link',
509
- plural: true,
510
- fragment: select$3()
1825
+ kind: 'Scalar'
511
1826
  },
512
1827
  {
513
1828
  name: 'totalSize',
@@ -520,29 +1835,13 @@ const select$1 = function DataCleanRoomProviderCollectionRepresentationSelect()
520
1835
  function equals(existing, incoming) {
521
1836
  const existing_limit = existing.limit;
522
1837
  const incoming_limit = incoming.limit;
523
- // if at least one of these optionals is defined
524
- if (existing_limit !== undefined || incoming_limit !== undefined) {
525
- // if one of these is not defined we know the other is defined and therefore
526
- // not equal
527
- if (existing_limit === undefined || incoming_limit === undefined) {
528
- return false;
529
- }
530
- if (!(existing_limit === incoming_limit)) {
531
- return false;
532
- }
1838
+ if (!(existing_limit === incoming_limit)) {
1839
+ return false;
533
1840
  }
534
1841
  const existing_offset = existing.offset;
535
1842
  const incoming_offset = incoming.offset;
536
- // if at least one of these optionals is defined
537
- if (existing_offset !== undefined || incoming_offset !== undefined) {
538
- // if one of these is not defined we know the other is defined and therefore
539
- // not equal
540
- if (existing_offset === undefined || incoming_offset === undefined) {
541
- return false;
542
- }
543
- if (!(existing_offset === incoming_offset)) {
544
- return false;
545
- }
1843
+ if (!(existing_offset === incoming_offset)) {
1844
+ return false;
546
1845
  }
547
1846
  const existing_totalSize = existing.totalSize;
548
1847
  const incoming_totalSize = incoming.totalSize;
@@ -570,6 +1869,16 @@ function equals(existing, incoming) {
570
1869
  return false;
571
1870
  }
572
1871
  }
1872
+ const existing_cleanroomSpecifications = existing.cleanroomSpecifications;
1873
+ const incoming_cleanroomSpecifications = incoming.cleanroomSpecifications;
1874
+ const equals_cleanroomSpecifications_items = equalsArray(existing_cleanroomSpecifications, incoming_cleanroomSpecifications, (existing_cleanroomSpecifications_item, incoming_cleanroomSpecifications_item) => {
1875
+ if (!(existing_cleanroomSpecifications_item.__ref === incoming_cleanroomSpecifications_item.__ref)) {
1876
+ return false;
1877
+ }
1878
+ });
1879
+ if (equals_cleanroomSpecifications_items === false) {
1880
+ return false;
1881
+ }
573
1882
  const existing_nextPageUrl = existing.nextPageUrl;
574
1883
  const incoming_nextPageUrl = incoming.nextPageUrl;
575
1884
  // if at least one of these optionals is defined
@@ -583,19 +1892,9 @@ function equals(existing, incoming) {
583
1892
  return false;
584
1893
  }
585
1894
  }
586
- const existing_providers = existing.providers;
587
- const incoming_providers = incoming.providers;
588
- const equals_providers_items = equalsArray(existing_providers, incoming_providers, (existing_providers_item, incoming_providers_item) => {
589
- if (!(existing_providers_item.__ref === incoming_providers_item.__ref)) {
590
- return false;
591
- }
592
- });
593
- if (equals_providers_items === false) {
594
- return false;
595
- }
596
1895
  return true;
597
1896
  }
598
- const ingest = function DataCleanRoomProviderCollectionRepresentationIngest(input, path, luvio, store, timestamp) {
1897
+ const ingest = function DataCleanRoomSpecificationCollectionRepresentationIngest(input, path, luvio, store, timestamp) {
599
1898
  if (process.env.NODE_ENV !== 'production') {
600
1899
  const validateError = validate(input);
601
1900
  if (validateError !== null) {
@@ -615,9 +1914,9 @@ function getTypeCacheKeys(rootKeySet, luvio, input, fullPathFactory) {
615
1914
  representationName: RepresentationType,
616
1915
  mergeable: false
617
1916
  });
618
- const input_providers_length = input.providers.length;
619
- for (let i = 0; i < input_providers_length; i++) {
620
- getTypeCacheKeys$1(rootKeySet, luvio, input.providers[i]);
1917
+ const input_cleanroomSpecifications_length = input.cleanroomSpecifications.length;
1918
+ for (let i = 0; i < input_cleanroomSpecifications_length; i++) {
1919
+ getTypeCacheKeys$3(rootKeySet, luvio, input.cleanroomSpecifications[i]);
621
1920
  }
622
1921
  }
623
1922
 
@@ -625,7 +1924,7 @@ function select(luvio, params) {
625
1924
  return select$1();
626
1925
  }
627
1926
  function keyBuilder$1(luvio, params) {
628
- return keyPrefix + '::DataCleanRoomProviderCollectionRepresentation:(' + 'batchSize:' + params.queryParams.batchSize + ',' + 'filters:' + params.queryParams.filters + ',' + 'offset:' + params.queryParams.offset + ',' + 'orderBy:' + params.queryParams.orderBy + ')';
1927
+ return keyPrefix + '::DataCleanRoomSpecificationCollectionRepresentation:(' + 'filters:' + params.queryParams.filters + ',' + 'limit:' + params.queryParams.limit + ',' + 'offset:' + params.queryParams.offset + ',' + 'orderBy:' + params.queryParams.orderBy + ')';
629
1928
  }
630
1929
  function getResponseCacheKeys(storeKeyMap, luvio, resourceParams, response) {
631
1930
  getTypeCacheKeys(storeKeyMap, luvio, response, () => keyBuilder$1(luvio, resourceParams));
@@ -657,7 +1956,7 @@ function createResourceRequest(config) {
657
1956
  const headers = {};
658
1957
  return {
659
1958
  baseUri: '/services/data/v63.0',
660
- basePath: '/ssot/data-clean-room/providers',
1959
+ basePath: '/ssot/data-clean-room/specifications',
661
1960
  method: 'get',
662
1961
  body: null,
663
1962
  urlParams: {},
@@ -667,22 +1966,22 @@ function createResourceRequest(config) {
667
1966
  };
668
1967
  }
669
1968
 
670
- const adapterName = 'getDataCleanRoomProvidersPaginated';
671
- const getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata = [
672
- generateParamConfigMetadata('batchSize', false, 1 /* QueryParameter */, 3 /* Integer */),
1969
+ const adapterName = 'getDataCleanRoomSpecificationsPaginated';
1970
+ const getDataCleanRoomSpecificationsPaginated_ConfigPropertyMetadata = [
673
1971
  generateParamConfigMetadata('filters', false, 1 /* QueryParameter */, 0 /* String */),
1972
+ generateParamConfigMetadata('limit', false, 1 /* QueryParameter */, 3 /* Integer */),
674
1973
  generateParamConfigMetadata('offset', false, 1 /* QueryParameter */, 3 /* Integer */),
675
1974
  generateParamConfigMetadata('orderBy', false, 1 /* QueryParameter */, 0 /* String */),
676
1975
  ];
677
- const getDataCleanRoomProvidersPaginated_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName, getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata);
678
- const createResourceParams = /*#__PURE__*/ createResourceParams$2(getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata);
1976
+ const getDataCleanRoomSpecificationsPaginated_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName, getDataCleanRoomSpecificationsPaginated_ConfigPropertyMetadata);
1977
+ const createResourceParams = /*#__PURE__*/ createResourceParams$5(getDataCleanRoomSpecificationsPaginated_ConfigPropertyMetadata);
679
1978
  function keyBuilder(luvio, config) {
680
1979
  const resourceParams = createResourceParams(config);
681
1980
  return keyBuilder$1(luvio, resourceParams);
682
1981
  }
683
1982
  function typeCheckConfig(untrustedConfig) {
684
1983
  const config = {};
685
- typeCheckConfig$2(untrustedConfig, config, getDataCleanRoomProvidersPaginated_ConfigPropertyMetadata);
1984
+ typeCheckConfig$5(untrustedConfig, config, getDataCleanRoomSpecificationsPaginated_ConfigPropertyMetadata);
686
1985
  return config;
687
1986
  }
688
1987
  function validateAdapterConfig(untrustedConfig, configPropertyNames) {
@@ -731,7 +2030,7 @@ function buildNetworkSnapshot(luvio, config, options) {
731
2030
  });
732
2031
  }
733
2032
  function buildNetworkSnapshotCachePolicy(context, coercedAdapterRequestContext) {
734
- return buildNetworkSnapshotCachePolicy$1(context, coercedAdapterRequestContext, buildNetworkSnapshot, undefined, false);
2033
+ return buildNetworkSnapshotCachePolicy$2(context, coercedAdapterRequestContext, buildNetworkSnapshot, undefined, false);
735
2034
  }
736
2035
  function buildCachedSnapshotCachePolicy(context, storeLookup) {
737
2036
  const { luvio, config } = context;
@@ -746,8 +2045,8 @@ function buildCachedSnapshotCachePolicy(context, storeLookup) {
746
2045
  });
747
2046
  return cacheSnapshot;
748
2047
  }
749
- const getDataCleanRoomProvidersPaginatedAdapterFactory = (luvio) => function dataCleanRoom__getDataCleanRoomProvidersPaginated(untrustedConfig, requestContext) {
750
- const config = validateAdapterConfig(untrustedConfig, getDataCleanRoomProvidersPaginated_ConfigPropertyNames);
2048
+ const getDataCleanRoomSpecificationsPaginatedAdapterFactory = (luvio) => function dataCleanRoom__getDataCleanRoomSpecificationsPaginated(untrustedConfig, requestContext) {
2049
+ const config = validateAdapterConfig(untrustedConfig, getDataCleanRoomSpecificationsPaginated_ConfigPropertyNames);
751
2050
  // Invalid or incomplete config
752
2051
  if (config === null) {
753
2052
  return null;
@@ -756,37 +2055,54 @@ const getDataCleanRoomProvidersPaginatedAdapterFactory = (luvio) => function dat
756
2055
  buildCachedSnapshotCachePolicy, buildNetworkSnapshotCachePolicy);
757
2056
  };
758
2057
 
2058
+ let createDataCleanRoomCollaboration;
2059
+ let createDataCleanRoomSpecification;
759
2060
  let createProvider;
760
2061
  let getDataCleanRoomProvidersPaginated;
2062
+ let getDataCleanRoomSpecificationsPaginated;
761
2063
  // Imperative GET Adapters
762
2064
  let getDataCleanRoomProvidersPaginated_imperative;
2065
+ let getDataCleanRoomSpecificationsPaginated_imperative;
763
2066
  const getDataCleanRoomProvidersPaginatedMetadata = {
764
2067
  apiFamily: 'dataclean-room',
765
2068
  name: 'getDataCleanRoomProvidersPaginated',
766
2069
  };
2070
+ const getDataCleanRoomSpecificationsPaginatedMetadata = {
2071
+ apiFamily: 'dataclean-room',
2072
+ name: 'getDataCleanRoomSpecificationsPaginated',
2073
+ };
767
2074
  // Notify Update Available
768
2075
  function bindExportsTo(luvio) {
769
2076
  // LDS Adapters
770
2077
  const getDataCleanRoomProvidersPaginated_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getDataCleanRoomProvidersPaginated', getDataCleanRoomProvidersPaginatedAdapterFactory), getDataCleanRoomProvidersPaginatedMetadata);
2078
+ const getDataCleanRoomSpecificationsPaginated_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getDataCleanRoomSpecificationsPaginated', getDataCleanRoomSpecificationsPaginatedAdapterFactory), getDataCleanRoomSpecificationsPaginatedMetadata);
771
2079
  function unwrapSnapshotData(factory) {
772
2080
  const adapter = factory(luvio);
773
2081
  return (config) => adapter(config).then((snapshot) => snapshot.data);
774
2082
  }
775
2083
  return {
2084
+ createDataCleanRoomCollaboration: unwrapSnapshotData(createDataCleanRoomCollaborationAdapterFactory),
2085
+ createDataCleanRoomSpecification: unwrapSnapshotData(createDataCleanRoomSpecificationAdapterFactory),
776
2086
  createProvider: unwrapSnapshotData(createProviderAdapterFactory),
777
2087
  getDataCleanRoomProvidersPaginated: createWireAdapterConstructor(luvio, getDataCleanRoomProvidersPaginated_ldsAdapter, getDataCleanRoomProvidersPaginatedMetadata),
2088
+ getDataCleanRoomSpecificationsPaginated: createWireAdapterConstructor(luvio, getDataCleanRoomSpecificationsPaginated_ldsAdapter, getDataCleanRoomSpecificationsPaginatedMetadata),
778
2089
  // Imperative GET Adapters
779
2090
  getDataCleanRoomProvidersPaginated_imperative: createImperativeAdapter(luvio, getDataCleanRoomProvidersPaginated_ldsAdapter, getDataCleanRoomProvidersPaginatedMetadata),
2091
+ getDataCleanRoomSpecificationsPaginated_imperative: createImperativeAdapter(luvio, getDataCleanRoomSpecificationsPaginated_ldsAdapter, getDataCleanRoomSpecificationsPaginatedMetadata),
780
2092
  // Notify Update Availables
781
2093
  };
782
2094
  }
783
2095
  withDefaultLuvio((luvio) => {
784
2096
  ({
2097
+ createDataCleanRoomCollaboration,
2098
+ createDataCleanRoomSpecification,
785
2099
  createProvider,
786
2100
  getDataCleanRoomProvidersPaginated,
2101
+ getDataCleanRoomSpecificationsPaginated,
787
2102
  getDataCleanRoomProvidersPaginated_imperative,
2103
+ getDataCleanRoomSpecificationsPaginated_imperative,
788
2104
  } = bindExportsTo(luvio));
789
2105
  });
790
2106
 
791
- export { createProvider, getDataCleanRoomProvidersPaginated, getDataCleanRoomProvidersPaginated_imperative };
792
- // version: 1.332.0-dev23-282e881c4e
2107
+ export { createDataCleanRoomCollaboration, createDataCleanRoomSpecification, createProvider, getDataCleanRoomProvidersPaginated, getDataCleanRoomProvidersPaginated_imperative, getDataCleanRoomSpecificationsPaginated, getDataCleanRoomSpecificationsPaginated_imperative };
2108
+ // version: 1.332.0-dev25-cf098333d5