@salesforce/lds-adapters-uiapi 1.212.1 → 1.213.1

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 (72) hide show
  1. package/dist/es/es2018/types/src/generated/adapters/adapter-utils.d.ts +3 -1
  2. package/dist/es/es2018/types/src/generated/adapters/createContentDocumentAndVersion.d.ts +3 -2
  3. package/dist/es/es2018/types/src/generated/adapters/createContentVersion.d.ts +3 -2
  4. package/dist/es/es2018/types/src/generated/adapters/createRecord.d.ts +3 -2
  5. package/dist/es/es2018/types/src/generated/adapters/deleteRecord.d.ts +3 -3
  6. package/dist/es/es2018/types/src/generated/adapters/getActionOverrides.d.ts +3 -3
  7. package/dist/es/es2018/types/src/generated/adapters/getAllApps.d.ts +3 -3
  8. package/dist/es/es2018/types/src/generated/adapters/getAppDetails.d.ts +3 -3
  9. package/dist/es/es2018/types/src/generated/adapters/getDuplicateConfiguration.d.ts +3 -2
  10. package/dist/es/es2018/types/src/generated/adapters/getDuplicates.d.ts +3 -2
  11. package/dist/es/es2018/types/src/generated/adapters/getGlobalActions.d.ts +3 -3
  12. package/dist/es/es2018/types/src/generated/adapters/getKeywordSearchResults.d.ts +3 -2
  13. package/dist/es/es2018/types/src/generated/adapters/getLayout.d.ts +3 -3
  14. package/dist/es/es2018/types/src/generated/adapters/getLayoutUserState.d.ts +3 -3
  15. package/dist/es/es2018/types/src/generated/adapters/getListInfoByName.d.ts +3 -2
  16. package/dist/es/es2018/types/src/generated/adapters/getListInfosByName.d.ts +3 -2
  17. package/dist/es/es2018/types/src/generated/adapters/getListObjectInfo.d.ts +3 -3
  18. package/dist/es/es2018/types/src/generated/adapters/getListRecordsByName.d.ts +3 -2
  19. package/dist/es/es2018/types/src/generated/adapters/getListUiByApiName.d.ts +3 -3
  20. package/dist/es/es2018/types/src/generated/adapters/getListUiByListViewId.d.ts +3 -3
  21. package/dist/es/es2018/types/src/generated/adapters/getListViewSummaryCollection.d.ts +3 -3
  22. package/dist/es/es2018/types/src/generated/adapters/getLookupActions.d.ts +3 -3
  23. package/dist/es/es2018/types/src/generated/adapters/getLookupMetadata.d.ts +3 -2
  24. package/dist/es/es2018/types/src/generated/adapters/getLookupRecords.d.ts +3 -3
  25. package/dist/es/es2018/types/src/generated/adapters/getMruListUi.d.ts +3 -3
  26. package/dist/es/es2018/types/src/generated/adapters/getNavItems.d.ts +3 -3
  27. package/dist/es/es2018/types/src/generated/adapters/getObjectCreateActions.d.ts +3 -3
  28. package/dist/es/es2018/types/src/generated/adapters/getObjectInfo.d.ts +3 -3
  29. package/dist/es/es2018/types/src/generated/adapters/getObjectInfos.d.ts +3 -3
  30. package/dist/es/es2018/types/src/generated/adapters/getPicklistValues.d.ts +3 -3
  31. package/dist/es/es2018/types/src/generated/adapters/getPicklistValuesByRecordType.d.ts +3 -3
  32. package/dist/es/es2018/types/src/generated/adapters/getQuickActionDefaults.d.ts +3 -3
  33. package/dist/es/es2018/types/src/generated/adapters/getQuickActionLayout.d.ts +3 -2
  34. package/dist/es/es2018/types/src/generated/adapters/getRecord.d.ts +3 -3
  35. package/dist/es/es2018/types/src/generated/adapters/getRecordActions.d.ts +3 -3
  36. package/dist/es/es2018/types/src/generated/adapters/getRecordAvatars.d.ts +3 -3
  37. package/dist/es/es2018/types/src/generated/adapters/getRecordCreateDefaults.d.ts +3 -3
  38. package/dist/es/es2018/types/src/generated/adapters/getRecordEditActions.d.ts +3 -3
  39. package/dist/es/es2018/types/src/generated/adapters/getRecordTemplateClone.d.ts +3 -3
  40. package/dist/es/es2018/types/src/generated/adapters/getRecordTemplateCreate.d.ts +3 -3
  41. package/dist/es/es2018/types/src/generated/adapters/getRecordUi.d.ts +3 -3
  42. package/dist/es/es2018/types/src/generated/adapters/getRecords.d.ts +3 -2
  43. package/dist/es/es2018/types/src/generated/adapters/getRelatedListActions.d.ts +3 -3
  44. package/dist/es/es2018/types/src/generated/adapters/getRelatedListCount.d.ts +3 -2
  45. package/dist/es/es2018/types/src/generated/adapters/getRelatedListInfo.d.ts +3 -3
  46. package/dist/es/es2018/types/src/generated/adapters/getRelatedListInfoBatch.d.ts +3 -3
  47. package/dist/es/es2018/types/src/generated/adapters/getRelatedListPreferences.d.ts +3 -2
  48. package/dist/es/es2018/types/src/generated/adapters/getRelatedListPreferencesBatch.d.ts +3 -2
  49. package/dist/es/es2018/types/src/generated/adapters/getRelatedListRecordActions.d.ts +3 -3
  50. package/dist/es/es2018/types/src/generated/adapters/getRelatedListRecords.d.ts +3 -2
  51. package/dist/es/es2018/types/src/generated/adapters/getRelatedListRecordsBatch.d.ts +3 -2
  52. package/dist/es/es2018/types/src/generated/adapters/getRelatedListsActions.d.ts +3 -3
  53. package/dist/es/es2018/types/src/generated/adapters/getRelatedListsCount.d.ts +3 -3
  54. package/dist/es/es2018/types/src/generated/adapters/getRelatedListsInfo.d.ts +3 -3
  55. package/dist/es/es2018/types/src/generated/adapters/getSearchFilterMetadata.d.ts +3 -2
  56. package/dist/es/es2018/types/src/generated/adapters/getSearchFilterOptions.d.ts +3 -2
  57. package/dist/es/es2018/types/src/generated/adapters/getSearchResults.d.ts +3 -2
  58. package/dist/es/es2018/types/src/generated/adapters/getSelectedApp.d.ts +3 -2
  59. package/dist/es/es2018/types/src/generated/adapters/graphql.d.ts +3 -2
  60. package/dist/es/es2018/types/src/generated/adapters/performQuickAction.d.ts +3 -2
  61. package/dist/es/es2018/types/src/generated/adapters/performUpdateRecordQuickAction.d.ts +3 -2
  62. package/dist/es/es2018/types/src/generated/adapters/updateLayoutUserState.d.ts +3 -2
  63. package/dist/es/es2018/types/src/generated/adapters/updateListInfoByName.d.ts +3 -3
  64. package/dist/es/es2018/types/src/generated/adapters/updateRecord.d.ts +3 -3
  65. package/dist/es/es2018/types/src/generated/adapters/updateRecordAvatar.d.ts +3 -2
  66. package/dist/es/es2018/types/src/generated/adapters/updateRelatedListInfo.d.ts +3 -3
  67. package/dist/es/es2018/types/src/generated/adapters/updateRelatedListPreferences.d.ts +3 -2
  68. package/dist/es/es2018/uiapi-records-service.js +968 -2722
  69. package/package.json +2 -2
  70. package/sfdc/graphqlAdapters.js +153 -43
  71. package/sfdc/index.js +992 -2655
  72. package/sfdc/uiapi-static-functions.js +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/lds-adapters-uiapi",
3
- "version": "1.212.1",
3
+ "version": "1.213.1",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "description": "Wire adapters for record related UI API endpoints",
6
6
  "main": "dist/es/es2018/uiapi-records-service.js",
@@ -90,7 +90,7 @@
90
90
  "maxSize": {
91
91
  "none": "740 kB",
92
92
  "min": "280 kB",
93
- "compressed": "37 kB"
93
+ "compressed": "38 kB"
94
94
  }
95
95
  }
96
96
  ],
@@ -16,8 +16,8 @@ import { register, withDefaultLuvio } from 'force/ldsEngine';
16
16
  import { print, visit, parse, astResolver } from 'force/ldsGraphqlParser';
17
17
  import { createInstrumentedAdapter, createLDSAdapter, createGraphQLWireAdapterConstructor, createGraphQLImperativeAdapter } from 'force/ldsBindings';
18
18
  export { refresh as refreshGraphQL } from 'force/ldsBindings';
19
+ import { serializeStructuredKey, deepFreeze, buildNetworkSnapshotCachePolicy as buildNetworkSnapshotCachePolicy$2, StoreKeyMap, StoreKeySet } from 'force/luvioEngine';
19
20
  import { buildFieldState, createFragmentMap, serializeFieldArguments, buildQueryTypeStringKey, getOperationFromDocument } from 'force/luvioGraphql';
20
- import { serializeStructuredKey, deepFreeze, StoreKeyMap, StoreKeySet } from 'force/luvioEngine';
21
21
  import { createIngestRecordWithFields } from 'force/ldsAdaptersUiapi';
22
22
 
23
23
  const { hasOwnProperty: ObjectPrototypeHasOwnProperty } = Object.prototype;
@@ -137,6 +137,24 @@ function getFetchResponseStatusText(status) {
137
137
  return `Unexpected HTTP Status Code: ${status}`;
138
138
  }
139
139
  }
140
+ function generateParamConfigMetadata(name, required, coerceFn) {
141
+ return {
142
+ name,
143
+ required,
144
+ coerceFn,
145
+ };
146
+ }
147
+ function buildAdapterValidationConfig(displayName, paramsMeta) {
148
+ const required = paramsMeta.filter(p => p.required).map(p => p.name);
149
+ const optional = paramsMeta.filter(p => !p.required).map(p => p.name);
150
+ return {
151
+ displayName,
152
+ parameters: {
153
+ required,
154
+ optional,
155
+ }
156
+ };
157
+ }
140
158
  const keyPrefix = 'UiApi';
141
159
 
142
160
  const { keys: ObjectKeys, create: ObjectCreate, assign: ObjectAssign } = Object;
@@ -12934,6 +12952,8 @@ function getFieldType$6(field) {
12934
12952
  }
12935
12953
 
12936
12954
  const { assign, create, freeze, keys } = Object;
12955
+ const { isArray } = Array;
12956
+ const { concat, filter, includes, push, reduce } = Array.prototype;
12937
12957
 
12938
12958
  // we override the generated so we can set "mergeable: true" on the root key
12939
12959
  const getTypeCacheKeys$b = (rootKeySet, luvio, input, _fullPathFactory) => {
@@ -16928,13 +16948,13 @@ function createResourceRequest$1(config) {
16928
16948
  });
16929
16949
  }
16930
16950
 
16931
- const graphql_ConfigPropertyNames = {
16932
- displayName: 'graphql',
16933
- parameters: {
16934
- required: ['query'],
16935
- optional: ['operationName', 'variables']
16936
- }
16937
- };
16951
+ const adapterName$3 = 'graphql';
16952
+ const graphql_ConfigPropertyMetadata = [
16953
+ generateParamConfigMetadata('operationName', false),
16954
+ generateParamConfigMetadata('query', true),
16955
+ generateParamConfigMetadata('variables', false),
16956
+ ];
16957
+ const graphql_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$3, graphql_ConfigPropertyMetadata);
16938
16958
  function createResourceParams$1(config) {
16939
16959
  const resourceParams = {
16940
16960
  body: {
@@ -17045,21 +17065,7 @@ function buildNetworkSnapshot$1(luvio, config, options) {
17045
17065
  });
17046
17066
  }
17047
17067
  function buildNetworkSnapshotCachePolicy$1(context, coercedAdapterRequestContext) {
17048
- const { luvio, config } = context;
17049
- const { networkPriority, requestCorrelator, eventObservers } = coercedAdapterRequestContext;
17050
- const dispatchOptions = {
17051
- resourceRequestContext: {
17052
- requestCorrelator,
17053
- luvioRequestMethod: undefined,
17054
- },
17055
- eventObservers
17056
- };
17057
- if (networkPriority !== 'normal') {
17058
- dispatchOptions.overrides = {
17059
- priority: networkPriority
17060
- };
17061
- }
17062
- return buildNetworkSnapshot$1(luvio, config, dispatchOptions);
17068
+ return buildNetworkSnapshotCachePolicy$2(context, coercedAdapterRequestContext, buildNetworkSnapshot$1, undefined, false);
17063
17069
  }
17064
17070
  function buildCachedSnapshotCachePolicy$1(context, storeLookup) {
17065
17071
  const { luvio, config } = context;
@@ -17764,34 +17770,138 @@ function instrument(newInstrumentation) {
17764
17770
  instrumentation = Object.assign(instrumentation, newInstrumentation);
17765
17771
  }
17766
17772
 
17767
- const getListUiByApiName_ConfigPropertyNames = {
17768
- displayName: 'getListUiByApiName',
17769
- parameters: {
17770
- required: ['listViewApiName', 'objectApiName'],
17771
- optional: ['fields', 'optionalFields', 'pageSize', 'pageToken', 'sortBy']
17773
+ function isString(value) {
17774
+ return typeof value === 'string';
17775
+ }
17776
+ /**
17777
+ * @param value The array to dedupe
17778
+ * @returns An array without duplicates.
17779
+ */
17780
+ function dedupe(value) {
17781
+ const result = {};
17782
+ for (let i = 0, len = value.length; i < len; i += 1) {
17783
+ result[value[i]] = true;
17772
17784
  }
17773
- };
17785
+ return keys(result);
17786
+ }
17774
17787
 
17775
- const getListUiByListViewId_ConfigPropertyNames = {
17776
- displayName: 'getListUiByListViewId',
17777
- parameters: {
17778
- required: ['listViewId'],
17779
- optional: ['fields', 'optionalFields', 'pageSize', 'pageToken', 'sortBy']
17788
+ function isObjectId(unknown) {
17789
+ if (typeof unknown !== 'object' || unknown === null) {
17790
+ return false;
17780
17791
  }
17781
- };
17792
+ return isString(unknown.objectApiName);
17793
+ }
17794
+
17795
+ /**
17796
+ * Returns the object API name.
17797
+ * @param value The value from which to get the object API name.
17798
+ * @returns The object API name.
17799
+ */
17800
+ function getObjectApiName(value) {
17801
+ // Note: tightening validation logic changes behavior from userland getting
17802
+ // a server-provided error to the adapter noop'ing. In 224 we decided to not
17803
+ // change the behavior.
17804
+ if (typeof value === 'string') {
17805
+ const trimmed = value.trim();
17806
+ if (trimmed.length > 0) {
17807
+ return trimmed;
17808
+ }
17809
+ }
17810
+ else if (isObjectId(value)) {
17811
+ return value.objectApiName.trim();
17812
+ }
17813
+ return undefined;
17814
+ }
17815
+
17816
+ function isFieldId(unknown) {
17817
+ if (typeof unknown !== 'object' || unknown === null) {
17818
+ return false;
17819
+ }
17820
+ const value = unknown;
17821
+ return isString(value.objectApiName) && isString(value.fieldApiName);
17822
+ }
17823
+
17824
+ /**
17825
+ * Returns the field API name, qualified with an object name if possible.
17826
+ * @param value The value from which to get the qualified field API name.
17827
+ * @return The qualified field API name.
17828
+ */
17829
+ function getFieldApiName(value) {
17830
+ // Note: tightening validation logic changes behavior from userland getting
17831
+ // a server-provided error to the adapter noop'ing. In 224 we decided to not
17832
+ // change the behavior.
17833
+ if (isString(value)) {
17834
+ const trimmed = value.trim();
17835
+ if (trimmed.length > 0) {
17836
+ return trimmed;
17837
+ }
17838
+ }
17839
+ else if (isFieldId(value)) {
17840
+ return value.objectApiName + '.' + value.fieldApiName;
17841
+ }
17842
+ return undefined;
17843
+ }
17844
+
17845
+ /**
17846
+ * Returns the field API name.
17847
+ * @param value The value from which to get the field API name.
17848
+ * @returns The field API name.
17849
+ */
17850
+ function getFieldApiNamesArray(value) {
17851
+ const valueArray = isArray(value) ? value : [value];
17852
+ const array = [];
17853
+ for (let i = 0, len = valueArray.length; i < len; i += 1) {
17854
+ const item = valueArray[i];
17855
+ const apiName = getFieldApiName(item);
17856
+ if (apiName === undefined) {
17857
+ return undefined;
17858
+ }
17859
+ push.call(array, apiName);
17860
+ }
17861
+ if (array.length === 0) {
17862
+ return undefined;
17863
+ }
17864
+ return dedupe(array).sort();
17865
+ }
17866
+
17867
+ const adapterName$2 = 'getListUiByApiName';
17868
+ const getListUiByApiName_ConfigPropertyMetadata = [
17869
+ generateParamConfigMetadata('listViewApiName', true),
17870
+ generateParamConfigMetadata('objectApiName', true, getObjectApiName),
17871
+ generateParamConfigMetadata('fields', false, getFieldApiNamesArray),
17872
+ generateParamConfigMetadata('optionalFields', false, getFieldApiNamesArray),
17873
+ generateParamConfigMetadata('pageSize', false),
17874
+ generateParamConfigMetadata('pageToken', false),
17875
+ generateParamConfigMetadata('sortBy', false, getFieldApiNamesArray),
17876
+ ];
17877
+ const getListUiByApiName_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$2, getListUiByApiName_ConfigPropertyMetadata);
17878
+
17879
+ const adapterName$1 = 'getListUiByListViewId';
17880
+ const getListUiByListViewId_ConfigPropertyMetadata = [
17881
+ generateParamConfigMetadata('listViewId', true),
17882
+ generateParamConfigMetadata('fields', false, getFieldApiNamesArray),
17883
+ generateParamConfigMetadata('optionalFields', false, getFieldApiNamesArray),
17884
+ generateParamConfigMetadata('pageSize', false),
17885
+ generateParamConfigMetadata('pageToken', false),
17886
+ generateParamConfigMetadata('sortBy', false, getFieldApiNamesArray),
17887
+ ];
17888
+ const getListUiByListViewId_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName$1, getListUiByListViewId_ConfigPropertyMetadata);
17782
17889
 
17783
17890
  freeze({
17784
17891
  name: '',
17785
17892
  children: {},
17786
17893
  });
17787
17894
 
17788
- const getMruListUi_ConfigPropertyNames = {
17789
- displayName: 'getMruListUi',
17790
- parameters: {
17791
- required: ['objectApiName'],
17792
- optional: ['fields', 'optionalFields', 'pageSize', 'pageToken', 'sortBy']
17793
- }
17794
- };
17895
+ const adapterName = 'getMruListUi';
17896
+ const getMruListUi_ConfigPropertyMetadata = [
17897
+ generateParamConfigMetadata('objectApiName', true, getObjectApiName),
17898
+ generateParamConfigMetadata('fields', false, getFieldApiNamesArray),
17899
+ generateParamConfigMetadata('optionalFields', false, getFieldApiNamesArray),
17900
+ generateParamConfigMetadata('pageSize', false),
17901
+ generateParamConfigMetadata('pageToken', false),
17902
+ generateParamConfigMetadata('sortBy', false, getFieldApiNamesArray),
17903
+ ];
17904
+ const getMruListUi_ConfigPropertyNames = /*#__PURE__*/ buildAdapterValidationConfig(adapterName, getMruListUi_ConfigPropertyMetadata);
17795
17905
 
17796
17906
  // make local copies of the adapter configs so we can ignore other getListUi config parameters to match
17797
17907
  // lds222 behavior
@@ -18075,4 +18185,4 @@ register({
18075
18185
  });
18076
18186
 
18077
18187
  export { configurationForGraphQLAdapters as configuration, graphql, factory$1 as graphqlAdapterFactory, graphqlBatch, graphqlBatch_imperative, graphql_imperative };
18078
- // version: 1.212.1-49679d2a7
18188
+ // version: 1.213.1-79de10fe1