@salesforce/lds-runtime-mobile 1.326.0 → 1.327.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -19,14 +19,11 @@ import { withRegistration, register } from '@salesforce/lds-default-luvio';
19
19
  import { setupInstrumentation, instrumentAdapter as instrumentAdapter$1, instrumentLuvio, setLdsAdaptersUiapiInstrumentation, setLdsNetworkAdapterInstrumentation } from '@salesforce/lds-instrumentation';
20
20
  import { HttpStatusCode, setBypassDeepFreeze, StoreKeySet, serializeStructuredKey, StringKeyInMemoryStore, Reader, deepFreeze, emitAdapterEvent, ingestShape, coerceConfig as coerceConfig$1, typeCheckConfig as typeCheckConfig$h, createResourceParams as createResourceParams$h, StoreKeyMap, buildNetworkSnapshotCachePolicy as buildNetworkSnapshotCachePolicy$f, resolveLink, createCustomAdapterEventEmitter, isFileReference, Environment, Luvio, InMemoryStore } from '@luvio/engine';
21
21
  import { isSupportedEntity, configuration, getObjectInfoAdapterFactory, RECORD_ID_PREFIX, RECORD_FIELDS_KEY_JUNCTION, isStoreKeyRecordViewEntity, extractRecordIdFromStoreKey, buildRecordRepKeyFromId, keyBuilderRecord, RecordRepresentationTTL, keyBuilderQuickActionExecutionRepresentation, ingestQuickActionExecutionRepresentation, getRecordId18 as getRecordId18$1, getRecordsAdapterFactory as getRecordsAdapterFactory$1, RecordRepresentationRepresentationType, ObjectInfoRepresentationType, getObjectInfosAdapterFactory, getObjectInfoDirectoryAdapterFactory, UiApiNamespace, RecordRepresentationType, RecordRepresentationVersion } from '@salesforce/lds-adapters-uiapi';
22
- import ldsIdempotencyWriteDisabled from '@salesforce/gate/lds.idempotencyWriteDisabled';
23
- import ldsBackdatingEnabled from '@salesforce/gate/lds.backdatingEnabled';
24
22
  import { Kind as Kind$1, visit as visit$1, isObjectType, defaultFieldResolver, buildSchema, parse as parse$5, extendSchema, isScalarType, execute, print } from '@luvio/graphql-parser';
25
23
  import FIRST_DAY_OF_WEEK from '@salesforce/i18n/firstDayOfWeek';
26
24
  import graphqQueryFieldLimit from '@salesforce/gate/lmr.graphqQueryFieldLimit';
27
25
  import caseSensitiveUserId from '@salesforce/user/Id';
28
26
  import { idleDetector, getInstrumentation } from 'o11y/client';
29
- import ldsUseShortUrlGate from '@salesforce/gate/lds.useShortUrl';
30
27
  import { instrument as instrument$1 } from '@salesforce/lds-bindings';
31
28
  import ldsAdapterO11yLoggingGate from '@salesforce/gate/lmr.ldsAdapterO11yLogging';
32
29
  import LOCALE from '@salesforce/i18n/locale';
@@ -37,12 +34,8 @@ import shortTimeFormat from '@salesforce/i18n/dateTime.shortTimeFormat';
37
34
  import shortDateTimeFormat from '@salesforce/i18n/dateTime.shortDateTimeFormat';
38
35
  import { getDateTimeFormat, getDateTimeISO8601Parser, getNumberFormat } from 'lightning/i18nService';
39
36
  import formattingOptions from 'lightning/i18nCldrOptions';
40
- import eagerEvalValidAt from '@salesforce/gate/lds.eagerEvalValidAt';
41
- import eagerEvalStaleWhileRevalidate from '@salesforce/gate/lds.eagerEvalStaleWhileRevalidate';
42
- import eagerEvalDefaultCachePolicy from '@salesforce/gate/lds.eagerEvalDefaultCachePolicy';
43
37
  import ldsPrimingGraphqlBatch from '@salesforce/gate/lds.primingGraphqlBatch';
44
38
  import lmrPrimingUseSoql from '@salesforce/gate/lmr.primingUseSoql';
45
- import ldsMetadataRefreshEnabled from '@salesforce/gate/lds.metadataRefreshEnabled';
46
39
  import graphqlL2AdapterGate from '@salesforce/gate/lmr.graphqlL2Adapter';
47
40
 
48
41
  /**
@@ -77,7 +70,7 @@ function instrument(newInstrumentation) {
77
70
  const LDS_RECORDS_AGGREGATE_UI = 'LDS_Records_AggregateUi';
78
71
  // Boundary which represents the limit that we start chunking at,
79
72
  // determined by comma separated string length of fields
80
- const MAX_STRING_LENGTH_PER_CHUNK$1 = 10000;
73
+ const MAX_STRING_LENGTH_PER_CHUNK = 10000;
81
74
  // UIAPI limit
82
75
  const MAX_AGGREGATE_UI_CHUNK_LIMIT = 50;
83
76
  function createOkResponse$1(body) {
@@ -181,7 +174,7 @@ function dispatchSplitRecordAggregateUiAction(recordId, networkAdapter, resource
181
174
  });
182
175
  }
183
176
  function shouldUseAggregateUiForGetRecord(fieldsArray, optionalFieldsArray) {
184
- return fieldsArray.length + optionalFieldsArray.length >= MAX_STRING_LENGTH_PER_CHUNK$1;
177
+ return fieldsArray.length + optionalFieldsArray.length >= MAX_STRING_LENGTH_PER_CHUNK;
185
178
  }
186
179
  function buildAggregateUiUrl$1(params, resourceRequest) {
187
180
  const { fields, optionalFields } = params;
@@ -200,7 +193,7 @@ function buildGetRecordByFieldsCompositeRequest(resourceRequest, recordsComposit
200
193
  const { fieldsArray, optionalFieldsArray, fieldsLength, optionalFieldsLength } = recordsCompositeRequest;
201
194
  // Formula: # of fields per chunk = floor(avg field length / max length per chunk)
202
195
  const averageFieldStringLength = Math.floor((fieldsLength + optionalFieldsLength) / (fieldsArray.length + optionalFieldsArray.length));
203
- const fieldsPerChunk = Math.floor(MAX_STRING_LENGTH_PER_CHUNK$1 / averageFieldStringLength);
196
+ const fieldsPerChunk = Math.floor(MAX_STRING_LENGTH_PER_CHUNK / averageFieldStringLength);
204
197
  const optionalFieldsChunks = [];
205
198
  // Do the same for optional tracked fields
206
199
  for (let i = 0, j = optionalFieldsArray.length; i < j; i += fieldsPerChunk) {
@@ -41834,11 +41827,6 @@ class AbstractResourceRequestActionHandler {
41834
41827
  this.recordService = recordService;
41835
41828
  // determined by Server setup.
41836
41829
  this.isIdempotencySupported = true;
41837
- // idempotency write flag set by lds
41838
- this.isLdsIdempotencyWriteDisabled = ldsIdempotencyWriteDisabled.isOpen({
41839
- fallback: false,
41840
- });
41841
- this.isBackdatingEnabled = ldsBackdatingEnabled.isOpen({ fallback: false });
41842
41830
  }
41843
41831
  enqueue(data) {
41844
41832
  return this.draftQueue.enqueue(this.handlerId, data);
@@ -41937,8 +41925,7 @@ class AbstractResourceRequestActionHandler {
41937
41925
  updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] = uuidv4();
41938
41926
  actionDataChanged = true;
41939
41927
  }
41940
- if (this.isBackdatingEnabled &&
41941
- response.status === HttpStatusCode.BadRequest &&
41928
+ if (response.status === HttpStatusCode.BadRequest &&
41942
41929
  this.isBackdatingError(response.body, action)) {
41943
41930
  updatedAction.timestamp = Date.now();
41944
41931
  updatedAction.data.body.fields = {
@@ -42213,7 +42200,7 @@ class AbstractResourceRequestActionHandler {
42213
42200
  return [action.targetId];
42214
42201
  }
42215
42202
  hasIdempotencySupport() {
42216
- return this.isIdempotencySupported && !this.isLdsIdempotencyWriteDisabled;
42203
+ return this.isIdempotencySupported;
42217
42204
  }
42218
42205
  async ingestResponses(responses, action) {
42219
42206
  const luvio = this.getLuvio();
@@ -42341,8 +42328,7 @@ class UiApiActionHandler extends AbstractResourceRequestActionHandler {
42341
42328
  }
42342
42329
  // handles backdating
42343
42330
  const objectInfo = await this.objectInfoService.getObjectInfo(targetApiName);
42344
- if (this.isBackdatingEnabled &&
42345
- pendingAction.data &&
42331
+ if (pendingAction.data &&
42346
42332
  pendingAction.data.method !== 'delete' && //'delete' action does not have fields
42347
42333
  objectInfo) {
42348
42334
  const appendedFields = this.getBackdatingFields(objectInfo, resolvedRequest.method, pendingAction);
@@ -43053,7 +43039,7 @@ class ContentDocumentCompositeRepresentationActionHandler extends AbstractResour
43053
43039
  if (objectInfo === undefined) {
43054
43040
  throw Error(`Could not generate draft. Object info is missing`);
43055
43041
  }
43056
- if (this.isBackdatingEnabled && pendingAction.data) {
43042
+ if (pendingAction.data) {
43057
43043
  pendingAction.data.body.namedEntries = [
43058
43044
  ...pendingAction.data.body.namedEntries,
43059
43045
  ...this.getBackdatingNameEntries(objectInfo, pendingAction.timestamp),
@@ -50378,7 +50364,7 @@ class ScopedFieldsCollection {
50378
50364
  * which there max fields list length will not exceeded the specified maxLength
50379
50365
  * @param maxLength
50380
50366
  */
50381
- split(maxLength = MAX_STRING_LENGTH_PER_CHUNK) {
50367
+ split(maxLength = MAX_URL_LENGTH) {
50382
50368
  const size = this.size();
50383
50369
  if (size > maxLength) {
50384
50370
  const fieldsArray = [];
@@ -50465,7 +50451,6 @@ class ScopedFieldsCollection {
50465
50451
  }
50466
50452
  }
50467
50453
 
50468
- const MAX_STRING_LENGTH_PER_CHUNK = 10000;
50469
50454
  //Salesforce/Akamai cdn uri max size is 8898 bytes, short than normal. Per
50470
50455
  //https://help.salesforce.com/s/articleView?id=sf.community_builder_cdn_considerations.htm&type=5
50471
50456
  //Due to we don't know the domain ResourceRequest, here we give 8000
@@ -50700,22 +50685,18 @@ function arrayOrEmpty(array) {
50700
50685
  return array !== undefined && isArray(array) ? array : [];
50701
50686
  }
50702
50687
  /**
50703
- * Calculate the max lengh per chunk.
50704
- * If useShortUrlGate is open, allow max chunk size is MAX_URL_LENGTH - the url without fields and optional fields in url.
50705
- * Otherwise MAX_STRING_LENGTH_PER_CHUNK
50688
+ * Calculate the max length per chunk.
50689
+ * Max chunk size is MAX_URL_LENGTH - the url without fields and optional fields.
50690
+ *
50706
50691
  * @param resourceRequest
50707
50692
  * @returns
50708
50693
  */
50709
50694
  function getMaxLengthPerChunkAllowed(request) {
50710
- if (!ldsUseShortUrlGate.isOpen({ fallback: false })) {
50711
- return MAX_STRING_LENGTH_PER_CHUNK;
50712
- }
50713
50695
  // Too much work to get exact length of the final url, so use stringified json to get the rough length.
50714
50696
  const roughUrlLengthWithoutFieldsAndOptionFields = request.basePath.length +
50715
50697
  request.baseUri.length +
50716
50698
  (request.urlParams ? stringify$1(request.urlParams).length : 0) +
50717
50699
  stringify$1({ ...request.queryParams, fields: {}, optionalFields: {} }).length;
50718
- // MAX_URL_LENGTH - full lenght without fields, optionalFields
50719
50700
  return MAX_URL_LENGTH - roughUrlLengthWithoutFieldsAndOptionFields;
50720
50701
  }
50721
50702
  // we don't have access to the host so we cannot calculate the exact length of the url
@@ -52294,22 +52275,14 @@ function makeEnvironmentGraphqlAware(environment) {
52294
52275
  return upstream;
52295
52276
  };
52296
52277
  const { cachePolicy } = adapterRequestContext;
52297
- if (eagerEvalValidAt.isOpen({ fallback: false }) &&
52298
- cachePolicy &&
52278
+ if (cachePolicy &&
52299
52279
  cachePolicy.type === 'valid-at' &&
52300
52280
  cachePolicy.timestamp === 0 &&
52301
52281
  cachePolicy.basePolicy &&
52302
52282
  cachePolicy.basePolicy.type === 'stale-while-revalidate') {
52303
52283
  localBuildCachedSnapshot = hoistUnfulfilledToStale;
52304
52284
  }
52305
- if (eagerEvalStaleWhileRevalidate.isOpen({ fallback: false }) &&
52306
- cachePolicy &&
52307
- cachePolicy.type === 'stale-while-revalidate' &&
52308
- cachePolicy.staleDurationSeconds >= Number.MAX_SAFE_INTEGER) {
52309
- localBuildCachedSnapshot = hoistUnfulfilledToStale;
52310
- }
52311
- if (eagerEvalDefaultCachePolicy.isOpen({ fallback: false }) &&
52312
- (cachePolicy === undefined || cachePolicy === null)) {
52285
+ if (cachePolicy === undefined || cachePolicy === null) {
52313
52286
  localBuildCachedSnapshot = hoistUnfulfilledToStale;
52314
52287
  }
52315
52288
  return environment.applyCachePolicy(luvio, adapterRequestContext, buildSnapshotContext, localBuildCachedSnapshot, buildNetworkSnapshot);
@@ -55203,7 +55176,7 @@ function getRuntime() {
55203
55176
  const gqlEnv = makeEnvironmentGraphqlAware(baseEnv);
55204
55177
  const durableEnv = makeDurable(gqlEnv, {
55205
55178
  durableStore: lazyDurableStore,
55206
- enableDurableMetadataRefresh: ldsMetadataRefreshEnabled.isOpen({ fallback: false }),
55179
+ enableDurableMetadataRefresh: true,
55207
55180
  // disable luvio deep freeze in headless environments
55208
55181
  disableDeepFreeze: typeof window === 'undefined',
55209
55182
  shouldFlush,
@@ -55324,4 +55297,4 @@ register({
55324
55297
  });
55325
55298
 
55326
55299
  export { O11Y_NAMESPACE_LDS_MOBILE, getRuntime, registerReportObserver, reportGraphqlQueryParseError };
55327
- // version: 1.326.0-562167ef21
55300
+ // version: 1.327.0-8614d511e1
@@ -21,8 +21,6 @@ export declare abstract class AbstractResourceRequestActionHandler<ResponseType>
21
21
  protected readonly getLuvio: () => Luvio;
22
22
  protected readonly recordService: UiApiDraftRecordService;
23
23
  isIdempotencySupported: boolean;
24
- isLdsIdempotencyWriteDisabled: boolean;
25
- isBackdatingEnabled: boolean;
26
24
  constructor(draftQueue: DraftQueue, networkAdapter: NetworkAdapter, getLuvio: () => Luvio, recordService: UiApiDraftRecordService);
27
25
  enqueue(data: ResourceRequest): Promise<PendingDraftAction<ResourceRequest>>;
28
26
  buildPendingAction(request: ResourceRequest, queue: DraftAction<unknown, unknown>[]): Promise<PendingDraftAction<ResourceRequest>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/lds-runtime-mobile",
3
- "version": "1.326.0",
3
+ "version": "1.327.0",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "description": "LDS runtime for mobile/hybrid environments.",
6
6
  "main": "dist/main.js",
@@ -32,23 +32,23 @@
32
32
  "release:corejar": "yarn build && ../core-build/scripts/core.js --name=lds-runtime-mobile"
33
33
  },
34
34
  "dependencies": {
35
- "@salesforce/lds-adapters-uiapi": "^1.326.0",
36
- "@salesforce/lds-bindings": "^1.326.0",
37
- "@salesforce/lds-instrumentation": "^1.326.0",
35
+ "@salesforce/lds-adapters-uiapi": "^1.327.0",
36
+ "@salesforce/lds-bindings": "^1.327.0",
37
+ "@salesforce/lds-instrumentation": "^1.327.0",
38
38
  "@salesforce/user": "0.0.21",
39
39
  "o11y": "250.7.0"
40
40
  },
41
41
  "devDependencies": {
42
- "@salesforce/lds-adapters-graphql": "^1.326.0",
43
- "@salesforce/lds-drafts": "^1.326.0",
44
- "@salesforce/lds-durable-records": "^1.326.0",
45
- "@salesforce/lds-network-adapter": "^1.326.0",
46
- "@salesforce/lds-network-nimbus": "^1.326.0",
47
- "@salesforce/lds-store-binary": "^1.326.0",
48
- "@salesforce/lds-store-nimbus": "^1.326.0",
49
- "@salesforce/lds-store-sql": "^1.326.0",
50
- "@salesforce/lds-utils-adapters": "^1.326.0",
51
- "@salesforce/nimbus-plugin-lds": "^1.326.0",
42
+ "@salesforce/lds-adapters-graphql": "^1.327.0",
43
+ "@salesforce/lds-drafts": "^1.327.0",
44
+ "@salesforce/lds-durable-records": "^1.327.0",
45
+ "@salesforce/lds-network-adapter": "^1.327.0",
46
+ "@salesforce/lds-network-nimbus": "^1.327.0",
47
+ "@salesforce/lds-store-binary": "^1.327.0",
48
+ "@salesforce/lds-store-nimbus": "^1.327.0",
49
+ "@salesforce/lds-store-sql": "^1.327.0",
50
+ "@salesforce/lds-utils-adapters": "^1.327.0",
51
+ "@salesforce/nimbus-plugin-lds": "^1.327.0",
52
52
  "babel-plugin-dynamic-import-node": "^2.3.3",
53
53
  "wait-for-expect": "^3.0.2"
54
54
  },
package/sfdc/main.js CHANGED
@@ -19,14 +19,11 @@ import { withRegistration, register } from 'force/ldsEngine';
19
19
  import { setupInstrumentation, instrumentAdapter as instrumentAdapter$1, instrumentLuvio, setLdsAdaptersUiapiInstrumentation, setLdsNetworkAdapterInstrumentation } from 'force/ldsInstrumentation';
20
20
  import { HttpStatusCode, setBypassDeepFreeze, StoreKeySet, serializeStructuredKey, StringKeyInMemoryStore, Reader, deepFreeze, emitAdapterEvent, ingestShape, coerceConfig as coerceConfig$1, typeCheckConfig as typeCheckConfig$h, createResourceParams as createResourceParams$h, StoreKeyMap, buildNetworkSnapshotCachePolicy as buildNetworkSnapshotCachePolicy$f, resolveLink, createCustomAdapterEventEmitter, isFileReference, Environment, Luvio, InMemoryStore } from 'force/luvioEngine';
21
21
  import { isSupportedEntity, configuration, getObjectInfoAdapterFactory, RECORD_ID_PREFIX, RECORD_FIELDS_KEY_JUNCTION, isStoreKeyRecordViewEntity, extractRecordIdFromStoreKey, buildRecordRepKeyFromId, keyBuilderRecord, RecordRepresentationTTL, keyBuilderQuickActionExecutionRepresentation, ingestQuickActionExecutionRepresentation, getRecordId18 as getRecordId18$1, getRecordsAdapterFactory as getRecordsAdapterFactory$1, RecordRepresentationRepresentationType, ObjectInfoRepresentationType, getObjectInfosAdapterFactory, getObjectInfoDirectoryAdapterFactory, UiApiNamespace, RecordRepresentationType, RecordRepresentationVersion } from 'force/ldsAdaptersUiapi';
22
- import ldsIdempotencyWriteDisabled from '@salesforce/gate/lds.idempotencyWriteDisabled';
23
- import ldsBackdatingEnabled from '@salesforce/gate/lds.backdatingEnabled';
24
22
  import { Kind as Kind$1, visit as visit$1, isObjectType, defaultFieldResolver, buildSchema, parse as parse$5, extendSchema, isScalarType, execute, print } from 'force/ldsGraphqlParser';
25
23
  import FIRST_DAY_OF_WEEK from '@salesforce/i18n/firstDayOfWeek';
26
24
  import graphqQueryFieldLimit from '@salesforce/gate/lmr.graphqQueryFieldLimit';
27
25
  import caseSensitiveUserId from '@salesforce/user/Id';
28
26
  import { idleDetector, getInstrumentation } from 'o11y/client';
29
- import ldsUseShortUrlGate from '@salesforce/gate/lds.useShortUrl';
30
27
  import { instrument as instrument$1 } from 'force/ldsBindings';
31
28
  import ldsAdapterO11yLoggingGate from '@salesforce/gate/lmr.ldsAdapterO11yLogging';
32
29
  import LOCALE from '@salesforce/i18n/locale';
@@ -37,12 +34,8 @@ import shortTimeFormat from '@salesforce/i18n/dateTime.shortTimeFormat';
37
34
  import shortDateTimeFormat from '@salesforce/i18n/dateTime.shortDateTimeFormat';
38
35
  import { getDateTimeFormat, getDateTimeISO8601Parser, getNumberFormat } from 'lightning/i18nService';
39
36
  import formattingOptions from 'lightning/i18nCldrOptions';
40
- import eagerEvalValidAt from '@salesforce/gate/lds.eagerEvalValidAt';
41
- import eagerEvalStaleWhileRevalidate from '@salesforce/gate/lds.eagerEvalStaleWhileRevalidate';
42
- import eagerEvalDefaultCachePolicy from '@salesforce/gate/lds.eagerEvalDefaultCachePolicy';
43
37
  import ldsPrimingGraphqlBatch from '@salesforce/gate/lds.primingGraphqlBatch';
44
38
  import lmrPrimingUseSoql from '@salesforce/gate/lmr.primingUseSoql';
45
- import ldsMetadataRefreshEnabled from '@salesforce/gate/lds.metadataRefreshEnabled';
46
39
  import graphqlL2AdapterGate from '@salesforce/gate/lmr.graphqlL2Adapter';
47
40
 
48
41
  /**
@@ -77,7 +70,7 @@ function instrument(newInstrumentation) {
77
70
  const LDS_RECORDS_AGGREGATE_UI = 'LDS_Records_AggregateUi';
78
71
  // Boundary which represents the limit that we start chunking at,
79
72
  // determined by comma separated string length of fields
80
- const MAX_STRING_LENGTH_PER_CHUNK$1 = 10000;
73
+ const MAX_STRING_LENGTH_PER_CHUNK = 10000;
81
74
  // UIAPI limit
82
75
  const MAX_AGGREGATE_UI_CHUNK_LIMIT = 50;
83
76
  function createOkResponse$1(body) {
@@ -181,7 +174,7 @@ function dispatchSplitRecordAggregateUiAction(recordId, networkAdapter, resource
181
174
  });
182
175
  }
183
176
  function shouldUseAggregateUiForGetRecord(fieldsArray, optionalFieldsArray) {
184
- return fieldsArray.length + optionalFieldsArray.length >= MAX_STRING_LENGTH_PER_CHUNK$1;
177
+ return fieldsArray.length + optionalFieldsArray.length >= MAX_STRING_LENGTH_PER_CHUNK;
185
178
  }
186
179
  function buildAggregateUiUrl$1(params, resourceRequest) {
187
180
  const { fields, optionalFields } = params;
@@ -200,7 +193,7 @@ function buildGetRecordByFieldsCompositeRequest(resourceRequest, recordsComposit
200
193
  const { fieldsArray, optionalFieldsArray, fieldsLength, optionalFieldsLength } = recordsCompositeRequest;
201
194
  // Formula: # of fields per chunk = floor(avg field length / max length per chunk)
202
195
  const averageFieldStringLength = Math.floor((fieldsLength + optionalFieldsLength) / (fieldsArray.length + optionalFieldsArray.length));
203
- const fieldsPerChunk = Math.floor(MAX_STRING_LENGTH_PER_CHUNK$1 / averageFieldStringLength);
196
+ const fieldsPerChunk = Math.floor(MAX_STRING_LENGTH_PER_CHUNK / averageFieldStringLength);
204
197
  const optionalFieldsChunks = [];
205
198
  // Do the same for optional tracked fields
206
199
  for (let i = 0, j = optionalFieldsArray.length; i < j; i += fieldsPerChunk) {
@@ -41834,11 +41827,6 @@ class AbstractResourceRequestActionHandler {
41834
41827
  this.recordService = recordService;
41835
41828
  // determined by Server setup.
41836
41829
  this.isIdempotencySupported = true;
41837
- // idempotency write flag set by lds
41838
- this.isLdsIdempotencyWriteDisabled = ldsIdempotencyWriteDisabled.isOpen({
41839
- fallback: false,
41840
- });
41841
- this.isBackdatingEnabled = ldsBackdatingEnabled.isOpen({ fallback: false });
41842
41830
  }
41843
41831
  enqueue(data) {
41844
41832
  return this.draftQueue.enqueue(this.handlerId, data);
@@ -41937,8 +41925,7 @@ class AbstractResourceRequestActionHandler {
41937
41925
  updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] = uuidv4();
41938
41926
  actionDataChanged = true;
41939
41927
  }
41940
- if (this.isBackdatingEnabled &&
41941
- response.status === HttpStatusCode.BadRequest &&
41928
+ if (response.status === HttpStatusCode.BadRequest &&
41942
41929
  this.isBackdatingError(response.body, action)) {
41943
41930
  updatedAction.timestamp = Date.now();
41944
41931
  updatedAction.data.body.fields = {
@@ -42213,7 +42200,7 @@ class AbstractResourceRequestActionHandler {
42213
42200
  return [action.targetId];
42214
42201
  }
42215
42202
  hasIdempotencySupport() {
42216
- return this.isIdempotencySupported && !this.isLdsIdempotencyWriteDisabled;
42203
+ return this.isIdempotencySupported;
42217
42204
  }
42218
42205
  async ingestResponses(responses, action) {
42219
42206
  const luvio = this.getLuvio();
@@ -42341,8 +42328,7 @@ class UiApiActionHandler extends AbstractResourceRequestActionHandler {
42341
42328
  }
42342
42329
  // handles backdating
42343
42330
  const objectInfo = await this.objectInfoService.getObjectInfo(targetApiName);
42344
- if (this.isBackdatingEnabled &&
42345
- pendingAction.data &&
42331
+ if (pendingAction.data &&
42346
42332
  pendingAction.data.method !== 'delete' && //'delete' action does not have fields
42347
42333
  objectInfo) {
42348
42334
  const appendedFields = this.getBackdatingFields(objectInfo, resolvedRequest.method, pendingAction);
@@ -43053,7 +43039,7 @@ class ContentDocumentCompositeRepresentationActionHandler extends AbstractResour
43053
43039
  if (objectInfo === undefined) {
43054
43040
  throw Error(`Could not generate draft. Object info is missing`);
43055
43041
  }
43056
- if (this.isBackdatingEnabled && pendingAction.data) {
43042
+ if (pendingAction.data) {
43057
43043
  pendingAction.data.body.namedEntries = [
43058
43044
  ...pendingAction.data.body.namedEntries,
43059
43045
  ...this.getBackdatingNameEntries(objectInfo, pendingAction.timestamp),
@@ -50378,7 +50364,7 @@ class ScopedFieldsCollection {
50378
50364
  * which there max fields list length will not exceeded the specified maxLength
50379
50365
  * @param maxLength
50380
50366
  */
50381
- split(maxLength = MAX_STRING_LENGTH_PER_CHUNK) {
50367
+ split(maxLength = MAX_URL_LENGTH) {
50382
50368
  const size = this.size();
50383
50369
  if (size > maxLength) {
50384
50370
  const fieldsArray = [];
@@ -50465,7 +50451,6 @@ class ScopedFieldsCollection {
50465
50451
  }
50466
50452
  }
50467
50453
 
50468
- const MAX_STRING_LENGTH_PER_CHUNK = 10000;
50469
50454
  //Salesforce/Akamai cdn uri max size is 8898 bytes, short than normal. Per
50470
50455
  //https://help.salesforce.com/s/articleView?id=sf.community_builder_cdn_considerations.htm&type=5
50471
50456
  //Due to we don't know the domain ResourceRequest, here we give 8000
@@ -50700,22 +50685,18 @@ function arrayOrEmpty(array) {
50700
50685
  return array !== undefined && isArray(array) ? array : [];
50701
50686
  }
50702
50687
  /**
50703
- * Calculate the max lengh per chunk.
50704
- * If useShortUrlGate is open, allow max chunk size is MAX_URL_LENGTH - the url without fields and optional fields in url.
50705
- * Otherwise MAX_STRING_LENGTH_PER_CHUNK
50688
+ * Calculate the max length per chunk.
50689
+ * Max chunk size is MAX_URL_LENGTH - the url without fields and optional fields.
50690
+ *
50706
50691
  * @param resourceRequest
50707
50692
  * @returns
50708
50693
  */
50709
50694
  function getMaxLengthPerChunkAllowed(request) {
50710
- if (!ldsUseShortUrlGate.isOpen({ fallback: false })) {
50711
- return MAX_STRING_LENGTH_PER_CHUNK;
50712
- }
50713
50695
  // Too much work to get exact length of the final url, so use stringified json to get the rough length.
50714
50696
  const roughUrlLengthWithoutFieldsAndOptionFields = request.basePath.length +
50715
50697
  request.baseUri.length +
50716
50698
  (request.urlParams ? stringify$1(request.urlParams).length : 0) +
50717
50699
  stringify$1({ ...request.queryParams, fields: {}, optionalFields: {} }).length;
50718
- // MAX_URL_LENGTH - full lenght without fields, optionalFields
50719
50700
  return MAX_URL_LENGTH - roughUrlLengthWithoutFieldsAndOptionFields;
50720
50701
  }
50721
50702
  // we don't have access to the host so we cannot calculate the exact length of the url
@@ -52294,22 +52275,14 @@ function makeEnvironmentGraphqlAware(environment) {
52294
52275
  return upstream;
52295
52276
  };
52296
52277
  const { cachePolicy } = adapterRequestContext;
52297
- if (eagerEvalValidAt.isOpen({ fallback: false }) &&
52298
- cachePolicy &&
52278
+ if (cachePolicy &&
52299
52279
  cachePolicy.type === 'valid-at' &&
52300
52280
  cachePolicy.timestamp === 0 &&
52301
52281
  cachePolicy.basePolicy &&
52302
52282
  cachePolicy.basePolicy.type === 'stale-while-revalidate') {
52303
52283
  localBuildCachedSnapshot = hoistUnfulfilledToStale;
52304
52284
  }
52305
- if (eagerEvalStaleWhileRevalidate.isOpen({ fallback: false }) &&
52306
- cachePolicy &&
52307
- cachePolicy.type === 'stale-while-revalidate' &&
52308
- cachePolicy.staleDurationSeconds >= Number.MAX_SAFE_INTEGER) {
52309
- localBuildCachedSnapshot = hoistUnfulfilledToStale;
52310
- }
52311
- if (eagerEvalDefaultCachePolicy.isOpen({ fallback: false }) &&
52312
- (cachePolicy === undefined || cachePolicy === null)) {
52285
+ if (cachePolicy === undefined || cachePolicy === null) {
52313
52286
  localBuildCachedSnapshot = hoistUnfulfilledToStale;
52314
52287
  }
52315
52288
  return environment.applyCachePolicy(luvio, adapterRequestContext, buildSnapshotContext, localBuildCachedSnapshot, buildNetworkSnapshot);
@@ -55203,7 +55176,7 @@ function getRuntime() {
55203
55176
  const gqlEnv = makeEnvironmentGraphqlAware(baseEnv);
55204
55177
  const durableEnv = makeDurable(gqlEnv, {
55205
55178
  durableStore: lazyDurableStore,
55206
- enableDurableMetadataRefresh: ldsMetadataRefreshEnabled.isOpen({ fallback: false }),
55179
+ enableDurableMetadataRefresh: true,
55207
55180
  // disable luvio deep freeze in headless environments
55208
55181
  disableDeepFreeze: typeof window === 'undefined',
55209
55182
  shouldFlush,
@@ -55324,4 +55297,4 @@ register({
55324
55297
  });
55325
55298
 
55326
55299
  export { O11Y_NAMESPACE_LDS_MOBILE, getRuntime, registerReportObserver, reportGraphqlQueryParseError };
55327
- // version: 1.326.0-562167ef21
55300
+ // version: 1.327.0-8614d511e1
@@ -21,8 +21,6 @@ export declare abstract class AbstractResourceRequestActionHandler<ResponseType>
21
21
  protected readonly getLuvio: () => Luvio;
22
22
  protected readonly recordService: UiApiDraftRecordService;
23
23
  isIdempotencySupported: boolean;
24
- isLdsIdempotencyWriteDisabled: boolean;
25
- isBackdatingEnabled: boolean;
26
24
  constructor(draftQueue: DraftQueue, networkAdapter: NetworkAdapter, getLuvio: () => Luvio, recordService: UiApiDraftRecordService);
27
25
  enqueue(data: ResourceRequest): Promise<PendingDraftAction<ResourceRequest>>;
28
26
  buildPendingAction(request: ResourceRequest, queue: DraftAction<unknown, unknown>[]): Promise<PendingDraftAction<ResourceRequest>>;