@salesforce/lds-worker-api 1.287.0-dev1 → 1.287.0-dev10

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.
@@ -904,6 +904,9 @@
904
904
  delete this.records[canonicalKey];
905
905
  this.markVisited(canonicalKey);
906
906
  }
907
+ cleanup() {
908
+ this.scheduleTrim();
909
+ }
907
910
  /**
908
911
  * Deallocates data at the canonical key location for in-memory (L1) cache
909
912
  * @param key key to deallocate
@@ -1606,6 +1609,11 @@
1606
1609
  this.recordsMap.delete(canonicalKey);
1607
1610
  this.markVisited(canonicalKey);
1608
1611
  }
1612
+ cleanup() {
1613
+ if (this.fallbackStringKeyInMemoryStore.pendingTrimKeys.size > 0) {
1614
+ this.fallbackStringKeyInMemoryStore.cleanup();
1615
+ }
1616
+ }
1609
1617
  /**
1610
1618
  * Deallocates data at the canonical key location for in-memory (L1) cache
1611
1619
  * @param key key to deallocate
@@ -2093,7 +2101,7 @@
2093
2101
  headers: {},
2094
2102
  ok: false,
2095
2103
  status: HttpStatusCode$1.GatewayTimeout,
2096
- statusText: 'Gateway Timeout',
2104
+ statusText: 'Data requested with only-if-cached policy and not found in the cache.',
2097
2105
  errorType: 'fetchResponse',
2098
2106
  }, refresh);
2099
2107
  });
@@ -3411,6 +3419,9 @@
3411
3419
  storeLookup(sel, createSnapshot, refresh, ttlStrategy) {
3412
3420
  return this.store.lookup(sel, createSnapshot, refresh, ttlStrategy);
3413
3421
  }
3422
+ storeCleanup() {
3423
+ this.store.cleanup();
3424
+ }
3414
3425
  storeEvict(key) {
3415
3426
  this.store.evict(key);
3416
3427
  }
@@ -3680,6 +3691,9 @@
3680
3691
  storeEvict(key) {
3681
3692
  this.environment.storeEvict(key);
3682
3693
  }
3694
+ storeCleanup() {
3695
+ this.environment.storeCleanup();
3696
+ }
3683
3697
  createSnapshot(selector, refresh) {
3684
3698
  return this.environment.createSnapshot(selector, refresh);
3685
3699
  }
@@ -4068,7 +4082,7 @@
4068
4082
  }
4069
4083
  return resourceParams;
4070
4084
  }
4071
- // engine version: 0.154.16-5cc35392
4085
+ // engine version: 0.154.17-dev2-5c176528
4072
4086
 
4073
4087
  /**
4074
4088
  * Copyright (c) 2022, Salesforce, Inc.,
@@ -4196,7 +4210,7 @@
4196
4210
  }
4197
4211
  callbacks.push(callback);
4198
4212
  }
4199
- // version: 1.287.0-dev1-26543bf66
4213
+ // version: 1.287.0-dev10-0c7922050
4200
4214
 
4201
4215
  // TODO [TD-0081508]: once that TD is fulfilled we can probably change this file
4202
4216
  function instrumentAdapter$1(createFunction, _metadata) {
@@ -15704,7 +15718,7 @@
15704
15718
  }
15705
15719
  return superResult;
15706
15720
  }
15707
- // version: 1.287.0-dev1-26543bf66
15721
+ // version: 1.287.0-dev10-0c7922050
15708
15722
 
15709
15723
  function unwrap(data) {
15710
15724
  // The lwc-luvio bindings import a function from lwc called "unwrap".
@@ -16362,12 +16376,16 @@
16362
16376
  callback(snapshotToTuple$1(snapshotOrPromise));
16363
16377
  return;
16364
16378
  }
16365
- snapshotOrPromise.then((snapshot) => {
16379
+ snapshotOrPromise
16380
+ .then((snapshot) => {
16366
16381
  if (snapshot === null) {
16367
16382
  callback(createInvalidConfigError$1());
16368
16383
  return;
16369
16384
  }
16370
16385
  callback(snapshotToTuple$1(snapshot));
16386
+ })
16387
+ .finally(() => {
16388
+ luvio.storeCleanup();
16371
16389
  });
16372
16390
  };
16373
16391
  defineProperty(imperativeAdapterInvoke, 'name', {
@@ -16629,7 +16647,7 @@
16629
16647
  const { apiFamily, name } = metadata;
16630
16648
  return createGraphQLWireAdapterConstructor$1(adapter, `${apiFamily}.${name}`, luvio, astResolver);
16631
16649
  }
16632
- // version: 1.287.0-dev1-26543bf66
16650
+ // version: 1.287.0-dev10-0c7922050
16633
16651
 
16634
16652
  /**
16635
16653
  * Copyright (c) 2022, Salesforce, Inc.,
@@ -16728,7 +16746,7 @@
16728
16746
  TypeCheckShapes[TypeCheckShapes["Integer"] = 3] = "Integer";
16729
16747
  TypeCheckShapes[TypeCheckShapes["Unsupported"] = 4] = "Unsupported";
16730
16748
  })(TypeCheckShapes || (TypeCheckShapes = {}));
16731
- // engine version: 0.154.16-5cc35392
16749
+ // engine version: 0.154.17-dev2-5c176528
16732
16750
 
16733
16751
  const { keys: ObjectKeys$3, create: ObjectCreate$3 } = Object;
16734
16752
 
@@ -16850,6 +16868,10 @@
16850
16868
  * One store enabled Get Object Infos adapter
16851
16869
  */
16852
16870
  let oneStoreGetObjectInfosAdapter$2 = undefined;
16871
+ /**
16872
+ * Determines when to include PDL strategies for Related Lists
16873
+ */
16874
+ let relatedListsPredictionsEnabled$2 = false;
16853
16875
  /**
16854
16876
  * Defines the configuration API and is exposed internally as well as externally.
16855
16877
  * Configuration for one store enabled REST adapters only.
@@ -16934,6 +16956,12 @@
16934
16956
  getDraftAwareCreateContentDocumentAndVersionAdapter: function () {
16935
16957
  return draftAwareCreateContentDocumentAndVersionAdapter$2;
16936
16958
  },
16959
+ setRelatedListsPredictionsEnabled: function (f) {
16960
+ relatedListsPredictionsEnabled$2 = f;
16961
+ },
16962
+ areRelatedListsPredictionsEnabled: function () {
16963
+ return relatedListsPredictionsEnabled$2 === true;
16964
+ },
16937
16965
  // createContentVersion
16938
16966
  setDraftAwareCreateContentVersionAdapter: function (adapter) {
16939
16967
  draftAwareCreateContentVersionAdapter$2 = adapter;
@@ -17050,6 +17078,16 @@
17050
17078
  return result;
17051
17079
  };
17052
17080
  }
17081
+ function createRelatedListAdapterWithPrediction(adapter, luvio, name) {
17082
+ if (configurationForRestAdapters$2.areRelatedListsPredictionsEnabled() /* gate is open */) {
17083
+ return createLDSAdapterWithPrediction(adapter, luvio, name);
17084
+ }
17085
+ else {
17086
+ return (config, requestContext) => {
17087
+ return adapter(config, requestContext);
17088
+ };
17089
+ }
17090
+ }
17053
17091
 
17054
17092
  const { hasOwnProperty: ObjectPrototypeHasOwnProperty$2 } = Object.prototype;
17055
17093
  const { keys: ObjectKeys$1$2, create: ObjectCreate$1$2 } = Object;
@@ -17698,20 +17736,23 @@
17698
17736
  });
17699
17737
  }
17700
17738
 
17739
+ const keyBuilderFromType$E = function ListInfoRepresentationKeyBuilderFromType(luvio, object) {
17740
+ const keyParams = {
17741
+ listViewApiName: object.listReference.listViewApiName
17742
+ ? object.listReference.listViewApiName.toLowerCase()
17743
+ : object.listReference.listViewApiName,
17744
+ objectApiName: object.listReference.objectApiName.toLowerCase(),
17745
+ type: object.listReference.type,
17746
+ };
17747
+ return keyBuilder$27(luvio, keyParams);
17748
+ };
17749
+
17701
17750
  const TTL$A = 900000;
17702
17751
  const VERSION$1e$1 = "c658fe1591386d570e214eaed0daadd1";
17703
17752
  const RepresentationType$X = 'ListInfoRepresentation';
17704
17753
  function keyBuilder$27(luvio, config) {
17705
17754
  return keyPrefix$2 + '::' + RepresentationType$X + ':' + (config.listViewApiName === null ? '' : config.listViewApiName) + ':' + config.objectApiName + ':' + config.type;
17706
17755
  }
17707
- function keyBuilderFromType$E(luvio, object) {
17708
- const keyParams = {
17709
- listViewApiName: object.listReference.listViewApiName,
17710
- objectApiName: object.listReference.objectApiName,
17711
- type: object.listReference.type
17712
- };
17713
- return keyBuilder$27(luvio, keyParams);
17714
- }
17715
17756
  function normalize$Q(input, existing, path, luvio, store, timestamp) {
17716
17757
  const input_displayColumns = input.displayColumns;
17717
17758
  const input_displayColumns_id = path.fullPath + '__displayColumns';
@@ -21699,21 +21740,24 @@
21699
21740
  return [tokenResult, offsetResult];
21700
21741
  }
21701
21742
 
21702
- const TTL$x = 30000;
21703
- const VERSION$18$1 = "e5c90c4081cd557f8ffec53028ede1e8";
21704
- const RepresentationType$T = 'ListRecordCollectionRepresentation';
21705
- function keyBuilder$23(luvio, config) {
21706
- return keyPrefix$2 + '::' + RepresentationType$T + ':' + config.objectApiName + ':' + (config.searchTerm === null ? '' : config.searchTerm) + ':' + (config.sortBy === null ? '' : '[' + config.sortBy.join(',') + ']') + ':' + (config.where === null ? '' : config.where) + ':' + (config.listViewApiName === null ? '' : config.listViewApiName);
21707
- }
21708
- function keyBuilderFromType$B(luvio, object) {
21743
+ const keyBuilderFromType$B = function ListRecordCollectionRepresentationKeyBuilderFromType(luvio, object) {
21709
21744
  const keyParams = {
21710
- objectApiName: object.listReference.objectApiName,
21745
+ objectApiName: object.listReference.objectApiName.toLowerCase(),
21711
21746
  searchTerm: object.searchTerm,
21712
21747
  sortBy: object.sortBy,
21713
21748
  where: object.where,
21714
21749
  listViewApiName: object.listReference.listViewApiName
21750
+ ? object.listReference.listViewApiName.toLowerCase()
21751
+ : object.listReference.listViewApiName,
21715
21752
  };
21716
21753
  return keyBuilder$23(luvio, keyParams);
21754
+ };
21755
+
21756
+ const TTL$x = 30000;
21757
+ const VERSION$18$1 = "e5c90c4081cd557f8ffec53028ede1e8";
21758
+ const RepresentationType$T = 'ListRecordCollectionRepresentation';
21759
+ function keyBuilder$23(luvio, config) {
21760
+ return keyPrefix$2 + '::' + RepresentationType$T + ':' + config.objectApiName + ':' + (config.searchTerm === null ? '' : config.searchTerm) + ':' + (config.sortBy === null ? '' : '[' + config.sortBy.join(',') + ']') + ':' + (config.where === null ? '' : config.where) + ':' + (config.listViewApiName === null ? '' : config.listViewApiName);
21717
21761
  }
21718
21762
  function paginationKeyBuilder(luvio, config) {
21719
21763
  return keyBuilder$23(luvio, config) + '__pagination';
@@ -22723,8 +22767,8 @@
22723
22767
  let listRecordCollectionCache = new Map();
22724
22768
  let listSummaryCollectionCache = new Map();
22725
22769
  function getListRecordCollectionKeys(objectApiName, listViewApiName) {
22726
- const cacheEntriesByObjectApiName = listRecordCollectionCache.get(objectApiName) || new Map();
22727
- const keys = cacheEntriesByObjectApiName.get(listViewApiName) || [];
22770
+ const cacheEntriesByObjectApiName = listRecordCollectionCache.get(objectApiName.toLowerCase()) || new Map();
22771
+ const keys = cacheEntriesByObjectApiName.get(listViewApiName.toLowerCase()) || [];
22728
22772
  return [...keys];
22729
22773
  }
22730
22774
  function getListSummaryCollectionKeys(objectApiName, recentLists = undefined) {
@@ -22756,8 +22800,8 @@
22756
22800
  keys.add(key);
22757
22801
  }
22758
22802
  function removeListRecordCollectionKeys(objectApiName, listViewApiName) {
22759
- const cacheEntriesByObjectApiName = listRecordCollectionCache.get(objectApiName) || new Map();
22760
- cacheEntriesByObjectApiName.delete(listViewApiName);
22803
+ const cacheEntriesByObjectApiName = listRecordCollectionCache.get(objectApiName.toLowerCase()) || new Map();
22804
+ cacheEntriesByObjectApiName.delete(listViewApiName.toLowerCase());
22761
22805
  }
22762
22806
  function removeListSummaryCollectionKeys(objectApiName, recentLists = undefined) {
22763
22807
  const cacheEntriesByObjectApiName = listSummaryCollectionCache.get(objectApiName) || new Map();
@@ -22809,7 +22853,7 @@
22809
22853
  return `listReferenceById::${listViewId}`;
22810
22854
  }
22811
22855
  function buildListRefByApiNameContextKey(objectApiName, listViewApiName) {
22812
- return `listReferenceByApiName::${objectApiName}:${listViewApiName}`;
22856
+ return `listReferenceByApiName::${objectApiName.toLowerCase()}:${listViewApiName.toLowerCase()}`;
22813
22857
  }
22814
22858
  /**
22815
22859
  * Adds a list reference so it can be retrieved with #getListReference later.
@@ -22865,7 +22909,12 @@
22865
22909
  * @param luvio Luvio
22866
22910
  */
22867
22911
  function getListInfo(luvio, listRef, storeLookup) {
22868
- const key = keyBuilder$27(luvio, { ...listRef });
22912
+ let mutatedListRef = { ...listRef };
22913
+ mutatedListRef.objectApiName = mutatedListRef.objectApiName.toLowerCase();
22914
+ mutatedListRef.listViewApiName = mutatedListRef.listViewApiName
22915
+ ? mutatedListRef.listViewApiName.toLowerCase()
22916
+ : mutatedListRef.listViewApiName;
22917
+ const key = keyBuilder$27(luvio, { ...mutatedListRef });
22869
22918
  return storeLookup({
22870
22919
  recordId: key,
22871
22920
  node: {
@@ -22879,7 +22928,7 @@
22879
22928
  }
22880
22929
  function buildDefaultsKey(listRef) {
22881
22930
  const { objectApiName, listViewApiName } = listRef;
22882
- return `defaults::${objectApiName}:${listViewApiName}`;
22931
+ return `defaults::${objectApiName.toLowerCase()}:${listViewApiName ? listViewApiName.toLowerCase() : listViewApiName}`;
22883
22932
  }
22884
22933
  /**
22885
22934
  * Update the default values based on a server response.
@@ -23054,9 +23103,11 @@
23054
23103
  context$1 = adapterContext;
23055
23104
  }
23056
23105
  function keyBuilder$1$(luvio, params) {
23106
+ // lists data can now be fetched using case insensitive urlParams therefore
23107
+ // also changing contextStore to use lowercase caching
23057
23108
  const query = {
23058
- objectApiName: params.urlParams.objectApiName,
23059
- listViewApiName: params.urlParams.listViewApiName,
23109
+ objectApiName: params.urlParams.objectApiName.toLowerCase(),
23110
+ listViewApiName: params.urlParams.listViewApiName.toLowerCase(),
23060
23111
  };
23061
23112
  // Fetch listReference from internal store to better ensure a cache hit regardless of listViewApiName or listViewId
23062
23113
  const listReference = getListReference(query, context$1);
@@ -23066,8 +23117,10 @@
23066
23117
  const defaults = getServerDefaults(config, context$1);
23067
23118
  // Use default values when sortBy is undefined or an empty Array []
23068
23119
  return keyBuilder$23(luvio, {
23069
- objectApiName: listReference.objectApiName,
23070
- listViewApiName: listReference.listViewApiName,
23120
+ objectApiName: listReference.objectApiName.toLowerCase(),
23121
+ listViewApiName: listReference.listViewApiName
23122
+ ? listReference.listViewApiName.toLowerCase()
23123
+ : listReference.listViewApiName,
23071
23124
  // # removing listViewId from key only supporing getting records using api name
23072
23125
  // listViewId: listReference.id,
23073
23126
  searchTerm: params.body.searchTerm || null,
@@ -23080,8 +23133,8 @@
23080
23133
  // If there are no matching entries in the store, then we haven't fetched any data for this list view yet.
23081
23134
  // Assuming that listViewId is empty and continue on
23082
23135
  return keyBuilder$23(luvio, {
23083
- objectApiName: params.urlParams.objectApiName,
23084
- listViewApiName: params.urlParams.listViewApiName,
23136
+ objectApiName: params.urlParams.objectApiName.toLowerCase(),
23137
+ listViewApiName: params.urlParams.listViewApiName.toLowerCase(),
23085
23138
  // # removing listViewId from key only supporing getting records using api name
23086
23139
  // listViewId: '',
23087
23140
  searchTerm: params.body.searchTerm || null,
@@ -24028,8 +24081,10 @@
24028
24081
  searchTerm: null,
24029
24082
  where: null,
24030
24083
  sortBy: config.sortBy === undefined ? null : config.sortBy,
24031
- objectApiName: listInfo.listReference.objectApiName,
24032
- listViewApiName: listInfo.listReference.listViewApiName,
24084
+ objectApiName: listInfo.listReference.objectApiName.toLowerCase(),
24085
+ listViewApiName: listInfo.listReference.listViewApiName
24086
+ ? listInfo.listReference.listViewApiName.toLowerCase()
24087
+ : listInfo.listReference.listViewApiName,
24033
24088
  });
24034
24089
  const selector = {
24035
24090
  recordId: paginationKey,
@@ -24076,8 +24131,10 @@
24076
24131
  searchTerm: null,
24077
24132
  where: null,
24078
24133
  sortBy: body.sortBy,
24079
- objectApiName: listInfo.listReference.objectApiName,
24080
- listViewApiName: listInfo.listReference.listViewApiName,
24134
+ objectApiName: listInfo.listReference.objectApiName.toLowerCase(),
24135
+ listViewApiName: listInfo.listReference.listViewApiName
24136
+ ? listInfo.listReference.listViewApiName.toLowerCase()
24137
+ : listInfo.listReference.listViewApiName,
24081
24138
  }), ingest$M$1, body);
24082
24139
  const snapshot = buildCachedSnapshot$8(luvio, luvio.storeLookup.bind(luvio), config, listInfo, fields);
24083
24140
  return luvio.storeBroadcast().then(() => snapshot);
@@ -24125,7 +24182,7 @@
24125
24182
  return getListInfo(luvio, {
24126
24183
  id: null,
24127
24184
  listViewApiName: null,
24128
- objectApiName: config.objectApiName,
24185
+ objectApiName: config.objectApiName.toLowerCase(),
24129
24186
  type: 'mru',
24130
24187
  }, storeLookup);
24131
24188
  }
@@ -24411,8 +24468,10 @@
24411
24468
  searchTerm: null,
24412
24469
  where: null,
24413
24470
  sortBy: getSortBy(config, context),
24414
- objectApiName: listInfo.listReference.objectApiName,
24415
- listViewApiName: listInfo.listReference.listViewApiName,
24471
+ objectApiName: listInfo.listReference.objectApiName.toLowerCase(),
24472
+ listViewApiName: listInfo.listReference.listViewApiName
24473
+ ? listInfo.listReference.listViewApiName.toLowerCase()
24474
+ : listInfo.listReference.listViewApiName,
24416
24475
  });
24417
24476
  const selector = {
24418
24477
  recordId: paginationKey,
@@ -24462,8 +24521,10 @@
24462
24521
  searchTerm: null,
24463
24522
  where: null,
24464
24523
  sortBy: body.sortBy,
24465
- objectApiName: listInfo.listReference.objectApiName,
24466
- listViewApiName: listInfo.listReference.listViewApiName,
24524
+ objectApiName: listInfo.listReference.objectApiName.toLowerCase(),
24525
+ listViewApiName: listInfo.listReference.listViewApiName
24526
+ ? listInfo.listReference.listViewApiName.toLowerCase()
24527
+ : listInfo.listReference.listViewApiName,
24467
24528
  }), ingest$M$1, body);
24468
24529
  const snapshot = buildCachedSnapshot$7(luvio, luvio.storeLookup.bind(luvio), context, config, listInfo, fields);
24469
24530
  releaseKeys();
@@ -26386,8 +26447,14 @@
26386
26447
  // We automatically set the type based on the listViewApiName, and we need to do the same
26387
26448
  // here for key matching and validation
26388
26449
  configs.forEach((config) => {
26450
+ config.listViewApiName = config.listViewApiName
26451
+ ? config.listViewApiName.toLowerCase()
26452
+ : config.listViewApiName;
26453
+ config.objectApiName = config.objectApiName
26454
+ ? config.objectApiName.toLowerCase()
26455
+ : config.objectApiName;
26389
26456
  if (!config.type) {
26390
- config.type = config.listViewApiName === '__Recent' ? 'mru' : 'listView';
26457
+ config.type = config.listViewApiName === '__recent' ? 'mru' : 'listView';
26391
26458
  }
26392
26459
  });
26393
26460
  return generated_notifyUpdateAvailable(configs);
@@ -30927,9 +30994,9 @@
30927
30994
 
30928
30995
  function keyBuilder$1c$1(luvio, params) {
30929
30996
  return keyBuilder$27(luvio, {
30930
- objectApiName: params.urlParams.objectApiName,
30931
- listViewApiName: params.urlParams.listViewApiName,
30932
- type: params.urlParams.listViewApiName === '__Recent' ? 'mru' : 'listView',
30997
+ objectApiName: params.urlParams.objectApiName.toLowerCase(),
30998
+ listViewApiName: params.urlParams.listViewApiName.toLowerCase(),
30999
+ type: params.urlParams.listViewApiName.toLowerCase() === '__recent' ? 'mru' : 'listView',
30933
31000
  });
30934
31001
  }
30935
31002
 
@@ -43860,13 +43927,13 @@
43860
43927
  const getRelatedListActions_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListActions', getRelatedListActionsAdapterFactory), getRelatedListActionsMetadata);
43861
43928
  const getRelatedListCount_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListCount', getRelatedListCountAdapterFactory), getRelatedListCountMetadata);
43862
43929
  const getRelatedListInfo_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListInfo', getRelatedListInfoAdapterFactory), getRelatedListInfoMetadata);
43863
- const getRelatedListInfoBatch_ldsAdapter = createInstrumentedAdapter(createLDSAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListInfoBatch', getRelatedListInfoBatchAdapterFactory), luvio, 'getRelatedListInfoBatch'), getRelatedListInfoBatchMetadata);
43930
+ const getRelatedListInfoBatch_ldsAdapter = createInstrumentedAdapter(createRelatedListAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListInfoBatch', getRelatedListInfoBatchAdapterFactory), luvio, 'getRelatedListInfoBatch'), getRelatedListInfoBatchMetadata);
43864
43931
  const getRelatedListPreferences_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListPreferences', getRelatedListPreferencesAdapterFactory), getRelatedListPreferencesMetadata);
43865
43932
  const getRelatedListPreferencesBatch_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListPreferencesBatch', getRelatedListPreferencesBatchAdapterFactory), getRelatedListPreferencesBatchMetadata);
43866
43933
  const getRelatedListRecordActions_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListRecordActions', getRelatedListRecordActionsAdapterFactory), getRelatedListRecordActionsMetadata);
43867
- const getRelatedListRecords_ldsAdapter = createInstrumentedAdapter(createLDSAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListRecords', getRelatedListRecordsAdapterFactory), luvio, 'getRelatedListRecords'), getRelatedListRecordsMetadata);
43868
- const getRelatedListRecordsBatch_ldsAdapter = createInstrumentedAdapter(createLDSAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListRecordsBatch', getRelatedListRecordsBatchAdapterFactory), luvio, 'getRelatedListRecordsBatch'), getRelatedListRecordsBatchMetadata);
43869
- const getRelatedListsActions_ldsAdapter = createInstrumentedAdapter(createLDSAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListsActions', getRelatedListsActionsAdapterFactory), luvio, 'getRelatedListsActions'), getRelatedListsActionsMetadata);
43934
+ const getRelatedListRecords_ldsAdapter = createInstrumentedAdapter(createRelatedListAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListRecords', getRelatedListRecordsAdapterFactory), luvio, 'getRelatedListRecords'), getRelatedListRecordsMetadata);
43935
+ const getRelatedListRecordsBatch_ldsAdapter = createInstrumentedAdapter(createRelatedListAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListRecordsBatch', getRelatedListRecordsBatchAdapterFactory), luvio, 'getRelatedListRecordsBatch'), getRelatedListRecordsBatchMetadata);
43936
+ const getRelatedListsActions_ldsAdapter = createInstrumentedAdapter(createRelatedListAdapterWithPrediction(createLDSAdapter(luvio, 'getRelatedListsActions', getRelatedListsActionsAdapterFactory), luvio, 'getRelatedListsActions'), getRelatedListsActionsMetadata);
43870
43937
  const getRelatedListsCount_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListsCount', getRelatedListsCountAdapterFactory), getRelatedListsCountMetadata);
43871
43938
  const getRelatedListsInfo_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getRelatedListsInfo', getRelatedListsInfoAdapterFactory), getRelatedListsInfoMetadata);
43872
43939
  const getSearchFilterMetadata_ldsAdapter = createInstrumentedAdapter(createLDSAdapter(luvio, 'getSearchFilterMetadata', getSearchFilterMetadataAdapterFactory), getSearchFilterMetadataMetadata);
@@ -44170,7 +44237,7 @@
44170
44237
  throttle(60, 60000, setupNotifyAllListRecordUpdateAvailable(luvio));
44171
44238
  throttle(60, 60000, setupNotifyAllListInfoSummaryUpdateAvailable(luvio));
44172
44239
  });
44173
- // version: 1.287.0-dev1-bb4d690c6
44240
+ // version: 1.287.0-dev10-32adad9f2
44174
44241
 
44175
44242
  var ldsIdempotencyWriteDisabled = {
44176
44243
  isOpen: function (e) {
@@ -44329,6 +44396,15 @@
44329
44396
  },
44330
44397
  };
44331
44398
 
44399
+ var aggressiveTrimLowLimitGate = {
44400
+ isOpen: function (e) {
44401
+ return e.fallback;
44402
+ },
44403
+ hasError: function () {
44404
+ return !0;
44405
+ },
44406
+ };
44407
+
44332
44408
  var ldsMetadataRefreshEnabled = {
44333
44409
  isOpen: function (e) {
44334
44410
  return e.fallback;
@@ -45479,7 +45555,7 @@
45479
45555
  // because we do not want some other code attempting to use the
45480
45556
  // in-memory values before the durable store onChanged handler
45481
45557
  // calls back and revives the values to in-memory
45482
- environment.storeEvict(key);
45558
+ environment.storeDealloc(key);
45483
45559
  };
45484
45560
  const publishStoreMetadata = function (recordId, storeMetadata) {
45485
45561
  validateNotDisposed();
@@ -56853,7 +56929,7 @@
56853
56929
  const referencedRecord = referencedRecords.get(key);
56854
56930
  recordFields[relationshipName] = {
56855
56931
  displayValue: null,
56856
- value: createLink$2(key),
56932
+ value: createLink$1$1(key),
56857
56933
  };
56858
56934
  // for custom objects, we select the 'Name' field
56859
56935
  // otherwise we check the object info for name fields.
@@ -56881,7 +56957,7 @@
56881
56957
  }
56882
56958
  return { ...record, fields: recordFields };
56883
56959
  }
56884
- function createLink$2(key) {
56960
+ function createLink$1$1(key) {
56885
56961
  return { __ref: key };
56886
56962
  }
56887
56963
  function getReferenceInfoForKey(fieldName, field, luvio, objectInfo) {
@@ -56896,7 +56972,7 @@
56896
56972
  referenceFieldName: relationshipName,
56897
56973
  field: {
56898
56974
  displayValue: null,
56899
- value: createLink$2(key),
56975
+ value: createLink$1$1(key),
56900
56976
  },
56901
56977
  };
56902
56978
  }
@@ -57359,6 +57435,9 @@
57359
57435
  !draftActionFieldNames.includes(backdatingFieldName));
57360
57436
  }
57361
57437
 
57438
+ function createLink$2(key) {
57439
+ return { __ref: key };
57440
+ }
57362
57441
  /**
57363
57442
  * Records are stored in the durable store with scalar fields denormalized. This function takes that denoramlized
57364
57443
  * durable store record representation and normalizes it back out into the format the the luvio store expects it
@@ -57369,26 +57448,25 @@
57369
57448
  function normalizeRecordFields(key, entry) {
57370
57449
  const { data: record } = entry;
57371
57450
  const { fields, links } = record;
57372
- const linkNames = keys$3$1(links);
57451
+ const missingFieldLinks = keys$3$1(links);
57452
+ const fieldNames = keys$3$1(fields);
57373
57453
  const normalizedFields = {};
57374
57454
  const returnEntries = {};
57375
- for (let i = 0, len = linkNames.length; i < len; i++) {
57376
- const fieldName = linkNames[i];
57455
+ // restore fields
57456
+ for (let i = 0, len = fieldNames.length; i < len; i++) {
57457
+ const fieldName = fieldNames[i];
57377
57458
  const field = fields[fieldName];
57459
+ const fieldKey = buildRecordFieldStoreKey(key, fieldName);
57460
+ returnEntries[fieldKey] = { data: field };
57461
+ normalizedFields[fieldName] = createLink$2(fieldKey);
57462
+ }
57463
+ // restore missing fields
57464
+ for (let i = 0, len = missingFieldLinks.length; i < len; i++) {
57465
+ const fieldName = missingFieldLinks[i];
57378
57466
  const link = links[fieldName];
57379
- // field is undefined for missing links
57380
- if (field !== undefined) {
57381
- const fieldKey = buildRecordFieldStoreKey(key, fieldName);
57382
- returnEntries[fieldKey] = { data: field };
57383
- }
57384
- // we need to restore the undefined __ref node as it is
57385
- // lost during serialization
57386
57467
  if (link.isMissing === true) {
57387
57468
  normalizedFields[fieldName] = { ...link, __ref: undefined };
57388
57469
  }
57389
- else {
57390
- normalizedFields[fieldName] = link;
57391
- }
57392
57470
  }
57393
57471
  returnEntries[key] = {
57394
57472
  data: assign$3(record, { fields: normalizedFields }),
@@ -57450,7 +57528,7 @@
57450
57528
  }
57451
57529
  }
57452
57530
  // we want to preserve fields that are missing nodes
57453
- if (filteredFields[fieldName] !== undefined || field.isMissing === true) {
57531
+ if (field.isMissing === true) {
57454
57532
  links[fieldName] = field;
57455
57533
  }
57456
57534
  }
@@ -57469,7 +57547,7 @@
57469
57547
  }
57470
57548
  return keyBuilder$26(luvio, { recordId });
57471
57549
  }
57472
- function makeRecordDenormalizingDurableStore(luvio, durableStore, getStoreRecords, getStoreMetadata, getStore) {
57550
+ function makeRecordDenormalizingDurableStore(luvio, durableStore, getStoreRecords, getStoreMetadata, getStore, sqlStore) {
57473
57551
  const getEntries = function (entries, segment) {
57474
57552
  // this HOF only inspects records in the default segment
57475
57553
  if (segment !== DefaultDurableSegment) {
@@ -57531,7 +57609,10 @@
57531
57609
  });
57532
57610
  };
57533
57611
  const denormalizeEntries = function (entries) {
57612
+ let hasEntries = false;
57613
+ let hasMetadata = false;
57534
57614
  const putEntries = create$3$1(null);
57615
+ const putMetadata = create$3$1(null);
57535
57616
  const keys$1 = keys$3$1(entries);
57536
57617
  const putRecords = {};
57537
57618
  const putRecordViews = {};
@@ -57574,6 +57655,7 @@
57574
57655
  putRecords[recordId] = true;
57575
57656
  }
57576
57657
  if (isStoreRecordError(record)) {
57658
+ hasEntries = true;
57577
57659
  putEntries[recordKey] = value;
57578
57660
  continue;
57579
57661
  }
@@ -57586,24 +57668,43 @@
57586
57668
  }
57587
57669
  const denormalizedRecord = buildDurableRecordRepresentation(record, storeRecords, recordEntries, store);
57588
57670
  if (denormalizedRecord !== undefined) {
57671
+ hasEntries = true;
57589
57672
  putEntries[recordKey] = {
57590
57673
  data: denormalizedRecord,
57591
57674
  metadata,
57592
57675
  };
57676
+ // if undefined then it is pending
57677
+ // we should still update metadata on pending records
57678
+ }
57679
+ else {
57680
+ hasMetadata = true;
57681
+ metadata.expirationTimestamp = metadata.ingestionTimestamp;
57682
+ putMetadata[recordKey] = {
57683
+ metadata,
57684
+ };
57593
57685
  }
57594
57686
  }
57595
57687
  else {
57688
+ hasEntries = true;
57596
57689
  putEntries[key] = value;
57597
57690
  }
57598
57691
  }
57599
- return putEntries;
57692
+ return { putEntries, putMetadata, hasEntries, hasMetadata };
57600
57693
  };
57601
57694
  const setEntries = function (entries, segment) {
57602
57695
  if (segment !== DefaultDurableSegment) {
57603
57696
  return durableStore.setEntries(entries, segment);
57604
57697
  }
57605
- const putEntries = denormalizeEntries(entries);
57606
- return durableStore.setEntries(putEntries, segment);
57698
+ const { putEntries, putMetadata, hasEntries, hasMetadata } = denormalizeEntries(entries);
57699
+ const promises = [
57700
+ hasEntries ? durableStore.setEntries(putEntries, segment) : undefined,
57701
+ ];
57702
+ if (sqlStore !== undefined && sqlStore.isBatchUpdateSupported()) {
57703
+ promises.push(hasMetadata && sqlStore !== undefined
57704
+ ? durableStore.setMetadata(putMetadata, segment)
57705
+ : undefined);
57706
+ }
57707
+ return Promise.all(promises).then(() => { });
57607
57708
  };
57608
57709
  const batchOperations = function (operations) {
57609
57710
  const operationsWithDenormedRecords = [];
@@ -57620,10 +57721,20 @@
57620
57721
  // this is determined by the plugin supporting update batch calls before it gets to this HOF.
57621
57722
  // so we only need to check one entry to confirm this for performance
57622
57723
  if (firstEntry.data !== undefined) {
57724
+ const { putEntries, putMetadata, hasMetadata } = denormalizeEntries(operation.entries);
57623
57725
  operationsWithDenormedRecords.push({
57624
57726
  ...operation,
57625
- entries: denormalizeEntries(operation.entries),
57727
+ entries: putEntries,
57626
57728
  });
57729
+ if (hasMetadata &&
57730
+ sqlStore !== undefined &&
57731
+ sqlStore.isBatchUpdateSupported() === true) {
57732
+ operationsWithDenormedRecords.push({
57733
+ ...operation,
57734
+ entries: putMetadata,
57735
+ type: 'setMetadata',
57736
+ });
57737
+ }
57627
57738
  }
57628
57739
  else {
57629
57740
  operationsWithDenormedRecords.push(operation);
@@ -57635,10 +57746,20 @@
57635
57746
  operationsWithDenormedRecords.push(operation);
57636
57747
  continue;
57637
57748
  }
57749
+ const { putEntries, putMetadata, hasMetadata } = denormalizeEntries(operation.entries);
57638
57750
  operationsWithDenormedRecords.push({
57639
57751
  ...operation,
57640
- entries: denormalizeEntries(operation.entries),
57752
+ entries: putEntries,
57641
57753
  });
57754
+ if (hasMetadata &&
57755
+ sqlStore !== undefined &&
57756
+ sqlStore.isBatchUpdateSupported() === true) {
57757
+ operationsWithDenormedRecords.push({
57758
+ ...operation,
57759
+ entries: putMetadata,
57760
+ type: 'setMetadata',
57761
+ });
57762
+ }
57642
57763
  }
57643
57764
  return durableStore.batchOperations(operationsWithDenormedRecords);
57644
57765
  };
@@ -60105,9 +60226,11 @@
60105
60226
  let apiName = null;
60106
60227
  let objectInfo;
60107
60228
  if (dataIsRecord(key)) {
60229
+ incomingRecords.delete(key);
60108
60230
  apiName = data.apiName;
60109
60231
  }
60110
60232
  else if (dataIsObjectInfo(key)) {
60233
+ incomingObjectInfos.delete(key);
60111
60234
  apiName = data.apiName;
60112
60235
  objectInfo = data;
60113
60236
  }
@@ -60618,6 +60741,9 @@
60618
60741
  isEvalSupported() {
60619
60742
  return true;
60620
60743
  }
60744
+ isBatchUpdateSupported() {
60745
+ return this.supportsBatchUpdates;
60746
+ }
60621
60747
  query(sql, params) {
60622
60748
  return new Promise((resolve, reject) => {
60623
60749
  this.plugin.query(sql, params, (result) => {
@@ -61782,7 +61908,6 @@
61782
61908
  }, {});
61783
61909
  fields['Id'] = { value: id, displayValue: null };
61784
61910
  fields['RecordTypeId'] = { value: recordTypeId, displayValue: null };
61785
- const links = this.generateFieldLinks(id, [...requestedFields, 'Id', 'RecordTypeId']);
61786
61911
  return {
61787
61912
  apiName: node[`${requiredPrefix}ApiName`],
61788
61913
  childRelationships: {},
@@ -61804,18 +61929,9 @@
61804
61929
  : null,
61805
61930
  weakEtag: node[`${requiredPrefix}WeakEtag`],
61806
61931
  fields,
61807
- links,
61932
+ links: {},
61808
61933
  };
61809
61934
  }
61810
- generateFieldLinks(id, fields) {
61811
- const links = {};
61812
- for (const field of fields) {
61813
- links[field] = {
61814
- __ref: `UiApi::RecordRepresentation:${id}__fields__${field}`,
61815
- };
61816
- }
61817
- return links;
61818
- }
61819
61935
  }
61820
61936
 
61821
61937
  class RecordIngestor {
@@ -62044,6 +62160,20 @@
62044
62160
  async writeBatch(records, overwrite) {
62045
62161
  const idsToPrime = new Set();
62046
62162
  const written = [];
62163
+ if (overwrite === true) {
62164
+ // if overwrite is true we need to raise change notifications so use the batchOperations
62165
+ const operations = {};
62166
+ for (const { record, metadata } of records) {
62167
+ const key = keyBuilder$26(this.getLuvio(), { recordId: record.id });
62168
+ idsToPrime.add(record.id);
62169
+ operations[key] = {
62170
+ data: record,
62171
+ metadata: { ...metadata, metadataVersion: DURABLE_METADATA_VERSION },
62172
+ };
62173
+ }
62174
+ await this.store.setEntries(operations, DefaultDurableSegment);
62175
+ return { written: Array.from(idsToPrime), conflicted: [], errors: [] };
62176
+ }
62047
62177
  const statement = `${overwrite ? 'REPLACE' : 'INSERT or IGNORE'} INTO lds_data (key, data, metadata) VALUES ${records
62048
62178
  .map((_) => `(?,?,?)`)
62049
62179
  .join(',')} returning key;`;
@@ -62159,7 +62289,9 @@
62159
62289
  return instrumentPrimingSession(session);
62160
62290
  }
62161
62291
 
62162
- const DEFAULT_MAX_RECORD_COUNT = 80000;
62292
+ const DEFAULT_MAX_RECORD_COUNT = aggressiveTrimLowLimitGate.isOpen({ fallback: false })
62293
+ ? 20000
62294
+ : 200000;
62163
62295
  const DEFAULT_MAX_BATCH_SIZE = 200;
62164
62296
  async function aggressiveTrim(data, deallocateFn, options = {}) {
62165
62297
  const maxStoreRecords = options.maxStoreRecords !== undefined ? options.maxStoreRecords : DEFAULT_MAX_RECORD_COUNT;
@@ -62270,9 +62402,11 @@
62270
62402
  // user id centric record ID generator
62271
62403
  const { newRecordId, isGenerated } = recordIdGenerator(userId);
62272
62404
  // non-draft-aware base services
62273
- const store = new InMemoryStore({
62274
- customTrimPolicy: aggressiveTrim,
62275
- });
62405
+ let storeOptions = {};
62406
+ {
62407
+ storeOptions.customTrimPolicy = aggressiveTrim;
62408
+ }
62409
+ const store = new InMemoryStore(storeOptions);
62276
62410
  lazyNetworkAdapter = platformNetworkAdapter(makeNetworkAdapterChunkRecordFields(NimbusNetworkAdapter, {
62277
62411
  reportChunkCandidateUrlLength: reportChunkCandidateUrlLength,
62278
62412
  }));
@@ -62299,7 +62433,7 @@
62299
62433
  let getIngestRecords;
62300
62434
  let getIngestMetadata;
62301
62435
  let getIngestStore;
62302
- const recordDenormingStore = makeRecordDenormalizingDurableStore(lazyLuvio, lazyBaseDurableStore, () => (getIngestRecords !== undefined ? getIngestRecords() : {}), () => (getIngestMetadata !== undefined ? getIngestMetadata() : {}), () => (getIngestStore !== undefined ? getIngestStore() : undefined));
62436
+ const recordDenormingStore = makeRecordDenormalizingDurableStore(lazyLuvio, lazyBaseDurableStore, () => (getIngestRecords !== undefined ? getIngestRecords() : {}), () => (getIngestMetadata !== undefined ? getIngestMetadata() : {}), () => (getIngestStore !== undefined ? getIngestStore() : undefined), lazyBaseDurableStore);
62303
62437
  const baseEnv = new Environment(store, lazyNetworkAdapter);
62304
62438
  const gqlEnv = makeEnvironmentGraphqlAware(baseEnv);
62305
62439
  const durableEnv = makeDurable(gqlEnv, {
@@ -62409,7 +62543,7 @@
62409
62543
  id: '@salesforce/lds-network-adapter',
62410
62544
  instrument: instrument$2,
62411
62545
  });
62412
- // version: 1.287.0-dev1-26543bf66
62546
+ // version: 1.287.0-dev10-0c7922050
62413
62547
 
62414
62548
  const { create: create$3, keys: keys$3 } = Object;
62415
62549
  const { stringify: stringify$1, parse: parse$1 } = JSON;
@@ -78811,6 +78945,29 @@
78811
78945
  return sharedGetFragmentType(fragment, fragmentMap);
78812
78946
  }
78813
78947
 
78948
+ function getFieldType$b(field) {
78949
+ const fieldName = field.name.value;
78950
+ switch (fieldName) {
78951
+ case '__typename': {
78952
+ return {
78953
+ isArray: false,
78954
+ typename: 'String',
78955
+ };
78956
+ }
78957
+ /*
78958
+ Probably should use metaschema like the RecordQuery graphql-artifact,
78959
+ but this type only has one generic type possible. Also, the most likely scenario for future schema additions,
78960
+ is UISDK adding the the parent of this type, Setup__Setup. Therefore, we will just default to SetupConnection so that
78961
+ query authors don't need to use metaschema when there's no real decision point in this type.
78962
+ */
78963
+ default:
78964
+ return {
78965
+ isArray: false,
78966
+ typename: 'Setup__SetupConnection',
78967
+ };
78968
+ }
78969
+ }
78970
+
78814
78971
  const name$2 = 'Setup__SetupQuery';
78815
78972
  const VERSION$a = 'b89cccb5fa5e458d89dc1137af3e5469';
78816
78973
  function keyBuilder$6(luvio, path, data) {
@@ -78928,24 +79085,6 @@
78928
79085
  }
78929
79086
  // Deal with mapped types' cache keys
78930
79087
  }
78931
- function getFieldType$b(field) {
78932
- switch (field.name.value) {
78933
- case '__typename': {
78934
- return {
78935
- isArray: false,
78936
- typename: 'String'
78937
- };
78938
- }
78939
- case 'recordQuery': {
78940
- return {
78941
- isArray: false,
78942
- typename: 'Setup__SetupConnection'
78943
- };
78944
- }
78945
- default:
78946
- return undefined;
78947
- }
78948
- }
78949
79088
  function ingestFieldByType$2(typename, parentKey, requestedField, sink, fieldKey, fieldData, state) {
78950
79089
  // TODO: add validation logic to only allow nullable fields to be null in the future
78951
79090
  if (fieldData === null) {
@@ -81350,6 +81489,10 @@
81350
81489
  * One store enabled Get Object Infos adapter
81351
81490
  */
81352
81491
  let oneStoreGetObjectInfosAdapter$1 = undefined;
81492
+ /**
81493
+ * Determines when to include PDL strategies for Related Lists
81494
+ */
81495
+ let relatedListsPredictionsEnabled$1 = false;
81353
81496
  /**
81354
81497
  * Defines the configuration API and is exposed internally as well as externally.
81355
81498
  * Configuration for one store enabled REST adapters only.
@@ -81425,6 +81568,12 @@
81425
81568
  getDraftAwareCreateContentDocumentAndVersionAdapter: function () {
81426
81569
  return draftAwareCreateContentDocumentAndVersionAdapter$1;
81427
81570
  },
81571
+ setRelatedListsPredictionsEnabled: function (f) {
81572
+ relatedListsPredictionsEnabled$1 = f;
81573
+ },
81574
+ areRelatedListsPredictionsEnabled: function () {
81575
+ return relatedListsPredictionsEnabled$1 === true;
81576
+ },
81428
81577
  // createContentVersion
81429
81578
  setDraftAwareCreateContentVersionAdapter: function (adapter) {
81430
81579
  draftAwareCreateContentVersionAdapter$1 = adapter;
@@ -82458,7 +82607,7 @@
82458
82607
  configuration: { ...configurationForGraphQLAdapters$1 },
82459
82608
  instrument: instrument$1,
82460
82609
  });
82461
- // version: 1.287.0-dev1-bb4d690c6
82610
+ // version: 1.287.0-dev10-32adad9f2
82462
82611
 
82463
82612
  // On core the unstable adapters are re-exported with different names,
82464
82613
  // we want to match them here.
@@ -84714,7 +84863,7 @@
84714
84863
  unstable_graphQL_imperative = createImperativeAdapter(luvio, createInstrumentedAdapter(ldsAdapter, adapterMetadata), adapterMetadata);
84715
84864
  graphQLImperative = ldsAdapter;
84716
84865
  });
84717
- // version: 1.287.0-dev1-bb4d690c6
84866
+ // version: 1.287.0-dev10-32adad9f2
84718
84867
 
84719
84868
  var gqlApi = /*#__PURE__*/Object.freeze({
84720
84869
  __proto__: null,
@@ -85452,7 +85601,7 @@
85452
85601
  function register(r) {
85453
85602
  callbacks$1.forEach((callback) => callback(r));
85454
85603
  }
85455
- // version: 1.287.0-dev1-26543bf66
85604
+ // version: 1.287.0-dev10-0c7922050
85456
85605
 
85457
85606
  /**
85458
85607
  * Returns true if the value acts like a Promise, i.e. has a "then" function,
@@ -89444,6 +89593,10 @@
89444
89593
  * One store enabled Get Object Infos adapter
89445
89594
  */
89446
89595
  let oneStoreGetObjectInfosAdapter = undefined;
89596
+ /**
89597
+ * Determines when to include PDL strategies for Related Lists
89598
+ */
89599
+ let relatedListsPredictionsEnabled = false;
89447
89600
  /**
89448
89601
  * Defines the configuration API and is exposed internally as well as externally.
89449
89602
  * Configuration for one store enabled REST adapters only.
@@ -89519,6 +89672,12 @@
89519
89672
  getDraftAwareCreateContentDocumentAndVersionAdapter: function () {
89520
89673
  return draftAwareCreateContentDocumentAndVersionAdapter;
89521
89674
  },
89675
+ setRelatedListsPredictionsEnabled: function (f) {
89676
+ relatedListsPredictionsEnabled = f;
89677
+ },
89678
+ areRelatedListsPredictionsEnabled: function () {
89679
+ return relatedListsPredictionsEnabled === true;
89680
+ },
89522
89681
  // createContentVersion
89523
89682
  setDraftAwareCreateContentVersionAdapter: function (adapter) {
89524
89683
  draftAwareCreateContentVersionAdapter = adapter;
@@ -90423,4 +90582,4 @@
90423
90582
  exports.subscribeToAdapter = subscribeToAdapter;
90424
90583
 
90425
90584
  }));
90426
- // version: 1.287.0-dev1-26543bf66
90585
+ // version: 1.287.0-dev10-0c7922050