@salesforce/lds-runtime-mobile 1.110.0 → 1.110.2

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 (3) hide show
  1. package/dist/main.js +37 -25
  2. package/package.json +15 -15
  3. package/sfdc/main.js +37 -25
package/dist/main.js CHANGED
@@ -5720,9 +5720,8 @@ class AbstractResourceRequestActionHandler {
5720
5720
  const { response, synchronousIngest } = entry;
5721
5721
  synchronousIngest(response, action);
5722
5722
  }
5723
- // ingestAndBroadcastFunction can return Promise<void>, that's easiest
5724
- // to return since it's unused in this function
5725
- return Promise.resolve();
5723
+ // must call base broadcast
5724
+ return luvio.storeBroadcast();
5726
5725
  },
5727
5726
  // getTypeCacheKeysRecord uses the response, not the full path factory
5728
5727
  // so 2nd parameter will be unused
@@ -9170,23 +9169,18 @@ async function injectSyntheticFields(originalAST, objectInfoService, draftFuncti
9170
9169
  function swapIdField(filterFields, objectInfo, swapped, idState, draftFunctions) {
9171
9170
  switch (filterFields.kind) {
9172
9171
  case Kind.OBJECT: {
9173
- const fieldNodes = [];
9174
- for (const fieldNode of filterFields.fields) {
9175
- if (isObjectValueNode(fieldNode.value)) {
9176
- const fieldValue = swapIdField(fieldNode.value, objectInfo, isFieldAnIdField(fieldNode.name.value, objectInfo), idState, draftFunctions);
9177
- fieldNodes.push({
9178
- ...fieldNode,
9179
- value: fieldValue,
9180
- });
9181
- }
9182
- else {
9183
- const fieldValue = swapIdField(fieldNode.value, objectInfo, swapped, idState, draftFunctions);
9184
- fieldNodes.push({
9185
- ...fieldNode,
9186
- value: fieldValue,
9187
- });
9188
- }
9189
- }
9172
+ const fieldNodes = filterFields.fields.map((fieldNode) => {
9173
+ // check at the object value node level if the node's name is an Id/Reference
9174
+ // if not then just pass the current swapped state
9175
+ const checkIfSwapNeeded = isObjectValueNode(fieldNode.value)
9176
+ ? isFieldAnIdField(fieldNode.name.value, objectInfo)
9177
+ : swapped;
9178
+ const fieldValue = swapIdField(fieldNode.value, objectInfo, checkIfSwapNeeded, idState, draftFunctions);
9179
+ return {
9180
+ ...fieldNode,
9181
+ value: fieldValue,
9182
+ };
9183
+ });
9190
9184
  return {
9191
9185
  kind: 'ObjectValue',
9192
9186
  fields: fieldNodes,
@@ -9211,6 +9205,13 @@ function swapIdField(filterFields, objectInfo, swapped, idState, draftFunctions)
9211
9205
  block: false,
9212
9206
  };
9213
9207
  }
9208
+ case Kind.LIST: {
9209
+ const values = filterFields.values.map((valueNode) => swapIdField(valueNode, objectInfo, swapped, idState, draftFunctions));
9210
+ return {
9211
+ kind: 'ListValue',
9212
+ values,
9213
+ };
9214
+ }
9214
9215
  default:
9215
9216
  return {
9216
9217
  ...filterFields,
@@ -9928,12 +9929,23 @@ function produceValueFieldLeaves(queryNode) {
9928
9929
  : [];
9929
9930
  }
9930
9931
  function updateIDInfo(fieldNode, idState, draftFunctions) {
9931
- idState.swapNeeded = true;
9932
+ if (idState.swapNeeded)
9933
+ return;
9932
9934
  if (isObjectValueNode(fieldNode.value)) {
9933
9935
  const idOpValueNode = fieldNode.value.fields[0];
9934
- if (isStringValueNode(idOpValueNode.value)) {
9935
- const id = idOpValueNode.value.value;
9936
- idState.swapNeeded = draftFunctions.isDraftId(id);
9936
+ switch (idOpValueNode.value.kind) {
9937
+ case Kind.STRING: {
9938
+ const id = idOpValueNode.value.value;
9939
+ idState.swapNeeded = draftFunctions.isDraftId(id);
9940
+ break;
9941
+ }
9942
+ case Kind.LIST: {
9943
+ const listValues = idOpValueNode.value.values;
9944
+ idState.swapNeeded = listValues
9945
+ .filter(isStringValueNode)
9946
+ .some((v) => draftFunctions.isDraftId(v.value));
9947
+ break;
9948
+ }
9937
9949
  }
9938
9950
  }
9939
9951
  }
@@ -15386,4 +15398,4 @@ register({
15386
15398
  });
15387
15399
 
15388
15400
  export { getRuntime, registerReportObserver, reportGraphqlQueryParseError };
15389
- // version: 1.110.0-5ccdc0e23
15401
+ // version: 1.110.2-c54b4a458
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/lds-runtime-mobile",
3
- "version": "1.110.0",
3
+ "version": "1.110.2",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "description": "LDS runtime for mobile/hybrid environments.",
6
6
  "main": "dist/main.js",
@@ -32,10 +32,10 @@
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.110.0",
36
- "@salesforce/lds-bindings": "^1.110.0",
37
- "@salesforce/lds-instrumentation": "^1.110.0",
38
- "@salesforce/lds-priming": "^1.110.0",
35
+ "@salesforce/lds-adapters-uiapi": "^1.110.2",
36
+ "@salesforce/lds-bindings": "^1.110.2",
37
+ "@salesforce/lds-instrumentation": "^1.110.2",
38
+ "@salesforce/lds-priming": "^1.110.2",
39
39
  "@salesforce/user": "0.0.12",
40
40
  "o11y": "244.0.0"
41
41
  },
@@ -43,16 +43,16 @@
43
43
  "@luvio/engine": "0.135.4",
44
44
  "@luvio/environments": "0.135.4",
45
45
  "@luvio/graphql-parser": "0.135.4",
46
- "@salesforce/lds-adapters-graphql": "^1.110.0",
47
- "@salesforce/lds-drafts": "^1.110.0",
48
- "@salesforce/lds-drafts-adapters-uiapi": "^1.110.0",
49
- "@salesforce/lds-graphql-eval": "^1.110.0",
50
- "@salesforce/lds-network-adapter": "^1.110.0",
51
- "@salesforce/lds-network-nimbus": "^1.110.0",
52
- "@salesforce/lds-store-binary": "^1.110.0",
53
- "@salesforce/lds-store-sql": "^1.110.0",
54
- "@salesforce/lds-utils-adapters": "^1.110.0",
55
- "@salesforce/nimbus-plugin-lds": "^1.110.0",
46
+ "@salesforce/lds-adapters-graphql": "^1.110.2",
47
+ "@salesforce/lds-drafts": "^1.110.2",
48
+ "@salesforce/lds-drafts-adapters-uiapi": "^1.110.2",
49
+ "@salesforce/lds-graphql-eval": "^1.110.2",
50
+ "@salesforce/lds-network-adapter": "^1.110.2",
51
+ "@salesforce/lds-network-nimbus": "^1.110.2",
52
+ "@salesforce/lds-store-binary": "^1.110.2",
53
+ "@salesforce/lds-store-sql": "^1.110.2",
54
+ "@salesforce/lds-utils-adapters": "^1.110.2",
55
+ "@salesforce/nimbus-plugin-lds": "^1.110.2",
56
56
  "babel-plugin-dynamic-import-node": "^2.3.3",
57
57
  "wait-for-expect": "^3.0.2"
58
58
  },
package/sfdc/main.js CHANGED
@@ -5720,9 +5720,8 @@ class AbstractResourceRequestActionHandler {
5720
5720
  const { response, synchronousIngest } = entry;
5721
5721
  synchronousIngest(response, action);
5722
5722
  }
5723
- // ingestAndBroadcastFunction can return Promise<void>, that's easiest
5724
- // to return since it's unused in this function
5725
- return Promise.resolve();
5723
+ // must call base broadcast
5724
+ return luvio.storeBroadcast();
5726
5725
  },
5727
5726
  // getTypeCacheKeysRecord uses the response, not the full path factory
5728
5727
  // so 2nd parameter will be unused
@@ -9170,23 +9169,18 @@ async function injectSyntheticFields(originalAST, objectInfoService, draftFuncti
9170
9169
  function swapIdField(filterFields, objectInfo, swapped, idState, draftFunctions) {
9171
9170
  switch (filterFields.kind) {
9172
9171
  case Kind.OBJECT: {
9173
- const fieldNodes = [];
9174
- for (const fieldNode of filterFields.fields) {
9175
- if (isObjectValueNode(fieldNode.value)) {
9176
- const fieldValue = swapIdField(fieldNode.value, objectInfo, isFieldAnIdField(fieldNode.name.value, objectInfo), idState, draftFunctions);
9177
- fieldNodes.push({
9178
- ...fieldNode,
9179
- value: fieldValue,
9180
- });
9181
- }
9182
- else {
9183
- const fieldValue = swapIdField(fieldNode.value, objectInfo, swapped, idState, draftFunctions);
9184
- fieldNodes.push({
9185
- ...fieldNode,
9186
- value: fieldValue,
9187
- });
9188
- }
9189
- }
9172
+ const fieldNodes = filterFields.fields.map((fieldNode) => {
9173
+ // check at the object value node level if the node's name is an Id/Reference
9174
+ // if not then just pass the current swapped state
9175
+ const checkIfSwapNeeded = isObjectValueNode(fieldNode.value)
9176
+ ? isFieldAnIdField(fieldNode.name.value, objectInfo)
9177
+ : swapped;
9178
+ const fieldValue = swapIdField(fieldNode.value, objectInfo, checkIfSwapNeeded, idState, draftFunctions);
9179
+ return {
9180
+ ...fieldNode,
9181
+ value: fieldValue,
9182
+ };
9183
+ });
9190
9184
  return {
9191
9185
  kind: 'ObjectValue',
9192
9186
  fields: fieldNodes,
@@ -9211,6 +9205,13 @@ function swapIdField(filterFields, objectInfo, swapped, idState, draftFunctions)
9211
9205
  block: false,
9212
9206
  };
9213
9207
  }
9208
+ case Kind.LIST: {
9209
+ const values = filterFields.values.map((valueNode) => swapIdField(valueNode, objectInfo, swapped, idState, draftFunctions));
9210
+ return {
9211
+ kind: 'ListValue',
9212
+ values,
9213
+ };
9214
+ }
9214
9215
  default:
9215
9216
  return {
9216
9217
  ...filterFields,
@@ -9928,12 +9929,23 @@ function produceValueFieldLeaves(queryNode) {
9928
9929
  : [];
9929
9930
  }
9930
9931
  function updateIDInfo(fieldNode, idState, draftFunctions) {
9931
- idState.swapNeeded = true;
9932
+ if (idState.swapNeeded)
9933
+ return;
9932
9934
  if (isObjectValueNode(fieldNode.value)) {
9933
9935
  const idOpValueNode = fieldNode.value.fields[0];
9934
- if (isStringValueNode(idOpValueNode.value)) {
9935
- const id = idOpValueNode.value.value;
9936
- idState.swapNeeded = draftFunctions.isDraftId(id);
9936
+ switch (idOpValueNode.value.kind) {
9937
+ case Kind.STRING: {
9938
+ const id = idOpValueNode.value.value;
9939
+ idState.swapNeeded = draftFunctions.isDraftId(id);
9940
+ break;
9941
+ }
9942
+ case Kind.LIST: {
9943
+ const listValues = idOpValueNode.value.values;
9944
+ idState.swapNeeded = listValues
9945
+ .filter(isStringValueNode)
9946
+ .some((v) => draftFunctions.isDraftId(v.value));
9947
+ break;
9948
+ }
9937
9949
  }
9938
9950
  }
9939
9951
  }
@@ -15386,4 +15398,4 @@ register({
15386
15398
  });
15387
15399
 
15388
15400
  export { getRuntime, registerReportObserver, reportGraphqlQueryParseError };
15389
- // version: 1.110.0-5ccdc0e23
15401
+ // version: 1.110.2-c54b4a458