@salesforce/lds-adapters-uiapi 1.291.0 → 1.293.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/es/es2018/types/src/generated/types/AppRepresentation.d.ts +4 -1
- package/dist/es/es2018/types/src/generated/types/FieldRepresentation.d.ts +7 -1
- package/dist/es/es2018/types/src/generated/types/ObjectInfoRepresentation.d.ts +7 -1
- package/dist/es/es2018/uiapi-records-service.js +65 -14
- package/dist/komaci-mapping.json +4 -2
- package/package.json +7 -7
- package/sfdc/graphqlAdapters.js +1 -1
- package/sfdc/index.js +66 -15
- package/sfdc/uiapi-static-functions.js +1 -1
- package/src/raml/api.raml +16 -16
- package/src/raml/luvio.raml +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { KeyMetadata as $64$luvio_engine_KeyMetadata, NormalizedKeyMetadata as $64$luvio_engine_NormalizedKeyMetadata, Luvio as $64$luvio_engine_Luvio, IngestPath as $64$luvio_engine_IngestPath, Store as $64$luvio_engine_Store, ResourceIngest as $64$luvio_engine_ResourceIngest, FragmentSelection as $64$luvio_engine_FragmentSelection, LinkSelection as $64$luvio_engine_LinkSelection, StoreLink as $64$luvio_engine_StoreLink, DurableStoreKeyMetadataMap as $64$luvio_engine_DurableStoreKeyMetadataMap } from '@luvio/engine';
|
|
2
2
|
import { NavItemRepresentation as NavItemRepresentation_NavItemRepresentation } from './NavItemRepresentation';
|
|
3
3
|
export declare const TTL = 300000;
|
|
4
|
-
export declare const VERSION = "
|
|
4
|
+
export declare const VERSION = "0cd492fdd6c713c206ef53dc02175f71";
|
|
5
5
|
export declare function validate(obj: any, path?: string): TypeError | null;
|
|
6
6
|
export declare const RepresentationType: string;
|
|
7
7
|
export interface KeyParams extends $64$luvio_engine_KeyMetadata {
|
|
@@ -56,6 +56,8 @@ export interface AppRepresentationNormalized {
|
|
|
56
56
|
isNavPersonalizationDisabled: boolean;
|
|
57
57
|
/** Indicates if the Lightning Console App should persist a user's workspace tabs */
|
|
58
58
|
isNavTabPersistenceDisabled: boolean;
|
|
59
|
+
/** Indicates if the Lightning App should contain the Omni-Channel pinned view */
|
|
60
|
+
isOmniPinnedViewEnabled: boolean;
|
|
59
61
|
/** Label of the app */
|
|
60
62
|
label: string;
|
|
61
63
|
/** URL of the logo uploaded by Admin for this app */
|
|
@@ -90,6 +92,7 @@ export interface AppRepresentation {
|
|
|
90
92
|
isNavAutoTempTabsDisabled: boolean;
|
|
91
93
|
isNavPersonalizationDisabled: boolean;
|
|
92
94
|
isNavTabPersistenceDisabled: boolean;
|
|
95
|
+
isOmniPinnedViewEnabled: boolean;
|
|
93
96
|
label: string;
|
|
94
97
|
logoUrl: string;
|
|
95
98
|
mobileStartUrl: string | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FilteredLookupInfoRepresentation as FilteredLookupInfoRepresentation_FilteredLookupInfoRepresentation } from './FilteredLookupInfoRepresentation';
|
|
2
2
|
import { ReferenceToInfoRepresentation as ReferenceToInfoRepresentation_ReferenceToInfoRepresentation } from './ReferenceToInfoRepresentation';
|
|
3
3
|
import { IngestPath as $64$luvio_engine_IngestPath, Luvio as $64$luvio_engine_Luvio, Store as $64$luvio_engine_Store, FragmentSelection as $64$luvio_engine_FragmentSelection, ResourceIngest as $64$luvio_engine_ResourceIngest, DurableStoreKeyMetadataMap as $64$luvio_engine_DurableStoreKeyMetadataMap, NormalizedKeyMetadata as $64$luvio_engine_NormalizedKeyMetadata } from '@luvio/engine';
|
|
4
|
-
export declare const VERSION = "
|
|
4
|
+
export declare const VERSION = "49ae032caddd750dde2a40e6431b8463";
|
|
5
5
|
export declare function validate(obj: any, path?: string): TypeError | null;
|
|
6
6
|
export declare const RepresentationType: string;
|
|
7
7
|
export declare function normalize(input: FieldRepresentation, existing: FieldRepresentationNormalized, path: $64$luvio_engine_IngestPath, luvio: $64$luvio_engine_Luvio, store: $64$luvio_engine_Store, timestamp: number): FieldRepresentationNormalized;
|
|
@@ -36,6 +36,8 @@ export interface FieldRepresentationNormalized {
|
|
|
36
36
|
custom: boolean;
|
|
37
37
|
/** Field data type. */
|
|
38
38
|
dataType: string;
|
|
39
|
+
/** Returns if this field has an external id. */
|
|
40
|
+
externalId: boolean;
|
|
39
41
|
/** Additional data type information. */
|
|
40
42
|
extraTypeInfo: string | null;
|
|
41
43
|
/** Indicates whether the field is filterable. If true, then this field can be specified in the WHERE clause of a SOQL statement. */
|
|
@@ -52,6 +54,8 @@ export interface FieldRepresentationNormalized {
|
|
|
52
54
|
label: string;
|
|
53
55
|
/** For string fields, the maximum size of the field in number of Unicode characters (not bytes). */
|
|
54
56
|
length: number;
|
|
57
|
+
/** Returns the mask type. */
|
|
58
|
+
maskType: string | null;
|
|
55
59
|
/** Indicates whether the field is a name field. */
|
|
56
60
|
nameField: boolean;
|
|
57
61
|
/** Indicates whether the field is a foreign key over a domain of multiple entities. */
|
|
@@ -96,6 +100,7 @@ export interface FieldRepresentation {
|
|
|
96
100
|
createable: boolean;
|
|
97
101
|
custom: boolean;
|
|
98
102
|
dataType: string;
|
|
103
|
+
externalId: boolean;
|
|
99
104
|
extraTypeInfo: string | null;
|
|
100
105
|
filterable: boolean;
|
|
101
106
|
filteredLookupInfo: FilteredLookupInfoRepresentation_FilteredLookupInfoRepresentation | null;
|
|
@@ -104,6 +109,7 @@ export interface FieldRepresentation {
|
|
|
104
109
|
inlineHelpText: string | null;
|
|
105
110
|
label: string;
|
|
106
111
|
length: number;
|
|
112
|
+
maskType: string | null;
|
|
107
113
|
nameField: boolean;
|
|
108
114
|
polymorphicForeignKey: boolean;
|
|
109
115
|
precision: number;
|
|
@@ -4,7 +4,7 @@ import { RecordTypeInfoRepresentation as RecordTypeInfoRepresentation_RecordType
|
|
|
4
4
|
import { ThemeInfoRepresentation as ThemeInfoRepresentation_ThemeInfoRepresentation } from './ThemeInfoRepresentation';
|
|
5
5
|
import { KeyMetadata as $64$luvio_engine_KeyMetadata, NormalizedKeyMetadata as $64$luvio_engine_NormalizedKeyMetadata, Luvio as $64$luvio_engine_Luvio, IngestPath as $64$luvio_engine_IngestPath, Store as $64$luvio_engine_Store, BaseFragment as $64$luvio_engine_BaseFragment, ResourceIngest as $64$luvio_engine_ResourceIngest, DurableStoreKeyMetadataMap as $64$luvio_engine_DurableStoreKeyMetadataMap } from '@luvio/engine';
|
|
6
6
|
export declare const TTL = 900000;
|
|
7
|
-
export declare const VERSION = "
|
|
7
|
+
export declare const VERSION = "2302a71ca718abb60353eb88dedb1c12";
|
|
8
8
|
export declare function validate(obj: any, path?: string): TypeError | null;
|
|
9
9
|
export declare const RepresentationType: string;
|
|
10
10
|
export interface KeyParams extends $64$luvio_engine_KeyMetadata {
|
|
@@ -36,6 +36,8 @@ export interface ObjectInfoRepresentationNormalized {
|
|
|
36
36
|
associateParentEntity: string | null;
|
|
37
37
|
/** Child relationships for the object. */
|
|
38
38
|
childRelationships: Array<ChildRelationshipRepresentation_ChildRelationshipRepresentation>;
|
|
39
|
+
/** Indicates whether the object can have compact layouts. */
|
|
40
|
+
compactLayoutable: boolean;
|
|
39
41
|
/** Indicates whether the object can be created. */
|
|
40
42
|
createable: boolean;
|
|
41
43
|
/** Indicates whether the object is custom. */
|
|
@@ -74,6 +76,8 @@ export interface ObjectInfoRepresentationNormalized {
|
|
|
74
76
|
recordTypeInfos: {
|
|
75
77
|
[key: string]: RecordTypeInfoRepresentation_RecordTypeInfoRepresentation;
|
|
76
78
|
};
|
|
79
|
+
/** Indicates whether the object can have search layouts. */
|
|
80
|
+
searchLayoutable: boolean;
|
|
77
81
|
/** Indicates whether the object can be searched. */
|
|
78
82
|
searchable: boolean;
|
|
79
83
|
/** Theme information for the object. */
|
|
@@ -92,6 +96,7 @@ export interface ObjectInfoRepresentation {
|
|
|
92
96
|
associateEntityType: string | null;
|
|
93
97
|
associateParentEntity: string | null;
|
|
94
98
|
childRelationships: Array<ChildRelationshipRepresentation_ChildRelationshipRepresentation>;
|
|
99
|
+
compactLayoutable: boolean;
|
|
95
100
|
createable: boolean;
|
|
96
101
|
custom: boolean;
|
|
97
102
|
defaultRecordTypeId: string | null;
|
|
@@ -114,6 +119,7 @@ export interface ObjectInfoRepresentation {
|
|
|
114
119
|
recordTypeInfos: {
|
|
115
120
|
[key: string]: RecordTypeInfoRepresentation_RecordTypeInfoRepresentation;
|
|
116
121
|
};
|
|
122
|
+
searchLayoutable: boolean;
|
|
117
123
|
searchable: boolean;
|
|
118
124
|
themeInfo: ThemeInfoRepresentation_ThemeInfoRepresentation | null;
|
|
119
125
|
updateable: boolean;
|
|
@@ -10762,6 +10762,11 @@ function validate$1J(obj, path = 'FieldRepresentation') {
|
|
|
10762
10762
|
if (typeof obj_dataType !== 'string') {
|
|
10763
10763
|
return new TypeError('Expected "string" but received "' + typeof obj_dataType + '" (at "' + path_dataType + '")');
|
|
10764
10764
|
}
|
|
10765
|
+
const obj_externalId = obj.externalId;
|
|
10766
|
+
const path_externalId = path + '.externalId';
|
|
10767
|
+
if (typeof obj_externalId !== 'boolean') {
|
|
10768
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_externalId + '" (at "' + path_externalId + '")');
|
|
10769
|
+
}
|
|
10765
10770
|
const obj_extraTypeInfo = obj.extraTypeInfo;
|
|
10766
10771
|
const path_extraTypeInfo = path + '.extraTypeInfo';
|
|
10767
10772
|
let obj_extraTypeInfo_union0 = null;
|
|
@@ -10868,6 +10873,32 @@ function validate$1J(obj, path = 'FieldRepresentation') {
|
|
|
10868
10873
|
if (typeof obj_length !== 'number' || (typeof obj_length === 'number' && Math.floor(obj_length) !== obj_length)) {
|
|
10869
10874
|
return new TypeError('Expected "integer" but received "' + typeof obj_length + '" (at "' + path_length + '")');
|
|
10870
10875
|
}
|
|
10876
|
+
const obj_maskType = obj.maskType;
|
|
10877
|
+
const path_maskType = path + '.maskType';
|
|
10878
|
+
let obj_maskType_union0 = null;
|
|
10879
|
+
const obj_maskType_union0_error = (() => {
|
|
10880
|
+
if (typeof obj_maskType !== 'string') {
|
|
10881
|
+
return new TypeError('Expected "string" but received "' + typeof obj_maskType + '" (at "' + path_maskType + '")');
|
|
10882
|
+
}
|
|
10883
|
+
})();
|
|
10884
|
+
if (obj_maskType_union0_error != null) {
|
|
10885
|
+
obj_maskType_union0 = obj_maskType_union0_error.message;
|
|
10886
|
+
}
|
|
10887
|
+
let obj_maskType_union1 = null;
|
|
10888
|
+
const obj_maskType_union1_error = (() => {
|
|
10889
|
+
if (obj_maskType !== null) {
|
|
10890
|
+
return new TypeError('Expected "null" but received "' + typeof obj_maskType + '" (at "' + path_maskType + '")');
|
|
10891
|
+
}
|
|
10892
|
+
})();
|
|
10893
|
+
if (obj_maskType_union1_error != null) {
|
|
10894
|
+
obj_maskType_union1 = obj_maskType_union1_error.message;
|
|
10895
|
+
}
|
|
10896
|
+
if (obj_maskType_union0 && obj_maskType_union1) {
|
|
10897
|
+
let message = 'Object doesn\'t match union (at "' + path_maskType + '")';
|
|
10898
|
+
message += '\n' + obj_maskType_union0.split('\n').map((line) => '\t' + line).join('\n');
|
|
10899
|
+
message += '\n' + obj_maskType_union1.split('\n').map((line) => '\t' + line).join('\n');
|
|
10900
|
+
return new TypeError(message);
|
|
10901
|
+
}
|
|
10871
10902
|
const obj_nameField = obj.nameField;
|
|
10872
10903
|
const path_nameField = path + '.nameField';
|
|
10873
10904
|
if (typeof obj_nameField !== 'boolean') {
|
|
@@ -11030,7 +11061,7 @@ function validate$1I(obj, path = 'ThemeInfoRepresentation') {
|
|
|
11030
11061
|
}
|
|
11031
11062
|
|
|
11032
11063
|
const TTL$C = 900000;
|
|
11033
|
-
const VERSION$2g = "
|
|
11064
|
+
const VERSION$2g = "2302a71ca718abb60353eb88dedb1c12";
|
|
11034
11065
|
function validate$1H(obj, path = 'ObjectInfoRepresentation') {
|
|
11035
11066
|
const v_error = (() => {
|
|
11036
11067
|
if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
|
|
@@ -11108,6 +11139,11 @@ function validate$1H(obj, path = 'ObjectInfoRepresentation') {
|
|
|
11108
11139
|
return new TypeError(message);
|
|
11109
11140
|
}
|
|
11110
11141
|
}
|
|
11142
|
+
const obj_compactLayoutable = obj.compactLayoutable;
|
|
11143
|
+
const path_compactLayoutable = path + '.compactLayoutable';
|
|
11144
|
+
if (typeof obj_compactLayoutable !== 'boolean') {
|
|
11145
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_compactLayoutable + '" (at "' + path_compactLayoutable + '")');
|
|
11146
|
+
}
|
|
11111
11147
|
const obj_createable = obj.createable;
|
|
11112
11148
|
const path_createable = path + '.createable';
|
|
11113
11149
|
if (typeof obj_createable !== 'boolean') {
|
|
@@ -11270,6 +11306,11 @@ function validate$1H(obj, path = 'ObjectInfoRepresentation') {
|
|
|
11270
11306
|
return new TypeError(message);
|
|
11271
11307
|
}
|
|
11272
11308
|
}
|
|
11309
|
+
const obj_searchLayoutable = obj.searchLayoutable;
|
|
11310
|
+
const path_searchLayoutable = path + '.searchLayoutable';
|
|
11311
|
+
if (typeof obj_searchLayoutable !== 'boolean') {
|
|
11312
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_searchLayoutable + '" (at "' + path_searchLayoutable + '")');
|
|
11313
|
+
}
|
|
11273
11314
|
const obj_searchable = obj.searchable;
|
|
11274
11315
|
const path_searchable = path + '.searchable';
|
|
11275
11316
|
if (typeof obj_searchable !== 'boolean') {
|
|
@@ -11350,6 +11391,10 @@ const select$2T = function ObjectInfoRepresentationSelect() {
|
|
|
11350
11391
|
kind: 'Object',
|
|
11351
11392
|
opaque: true
|
|
11352
11393
|
},
|
|
11394
|
+
{
|
|
11395
|
+
name: 'compactLayoutable',
|
|
11396
|
+
kind: 'Scalar'
|
|
11397
|
+
},
|
|
11353
11398
|
{
|
|
11354
11399
|
name: 'createable',
|
|
11355
11400
|
kind: 'Scalar'
|
|
@@ -11414,6 +11459,10 @@ const select$2T = function ObjectInfoRepresentationSelect() {
|
|
|
11414
11459
|
kind: 'Object',
|
|
11415
11460
|
opaque: true
|
|
11416
11461
|
},
|
|
11462
|
+
{
|
|
11463
|
+
name: 'searchLayoutable',
|
|
11464
|
+
kind: 'Scalar'
|
|
11465
|
+
},
|
|
11417
11466
|
{
|
|
11418
11467
|
name: 'searchable',
|
|
11419
11468
|
kind: 'Scalar'
|
|
@@ -18061,7 +18110,7 @@ function getTypeCacheKeys$1J(rootKeySet, luvio, input, fullPathFactory) {
|
|
|
18061
18110
|
}
|
|
18062
18111
|
|
|
18063
18112
|
const TTL$t = 300000;
|
|
18064
|
-
const VERSION$20 = "
|
|
18113
|
+
const VERSION$20 = "0cd492fdd6c713c206ef53dc02175f71";
|
|
18065
18114
|
function validate$1j(obj, path = 'AppRepresentation') {
|
|
18066
18115
|
const v_error = (() => {
|
|
18067
18116
|
if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
|
|
@@ -18208,6 +18257,11 @@ function validate$1j(obj, path = 'AppRepresentation') {
|
|
|
18208
18257
|
if (typeof obj_isNavTabPersistenceDisabled !== 'boolean') {
|
|
18209
18258
|
return new TypeError('Expected "boolean" but received "' + typeof obj_isNavTabPersistenceDisabled + '" (at "' + path_isNavTabPersistenceDisabled + '")');
|
|
18210
18259
|
}
|
|
18260
|
+
const obj_isOmniPinnedViewEnabled = obj.isOmniPinnedViewEnabled;
|
|
18261
|
+
const path_isOmniPinnedViewEnabled = path + '.isOmniPinnedViewEnabled';
|
|
18262
|
+
if (typeof obj_isOmniPinnedViewEnabled !== 'boolean') {
|
|
18263
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_isOmniPinnedViewEnabled + '" (at "' + path_isOmniPinnedViewEnabled + '")');
|
|
18264
|
+
}
|
|
18211
18265
|
const obj_label = obj.label;
|
|
18212
18266
|
const path_label = path + '.label';
|
|
18213
18267
|
if (typeof obj_label !== 'string') {
|
|
@@ -18376,6 +18430,10 @@ const select$2t = function AppRepresentationSelect() {
|
|
|
18376
18430
|
name: 'isNavTabPersistenceDisabled',
|
|
18377
18431
|
kind: 'Scalar'
|
|
18378
18432
|
},
|
|
18433
|
+
{
|
|
18434
|
+
name: 'isOmniPinnedViewEnabled',
|
|
18435
|
+
kind: 'Scalar'
|
|
18436
|
+
},
|
|
18379
18437
|
{
|
|
18380
18438
|
name: 'label',
|
|
18381
18439
|
kind: 'Scalar'
|
|
@@ -18431,6 +18489,11 @@ function equals$I(existing, incoming) {
|
|
|
18431
18489
|
if (!(existing_isNavTabPersistenceDisabled === incoming_isNavTabPersistenceDisabled)) {
|
|
18432
18490
|
return false;
|
|
18433
18491
|
}
|
|
18492
|
+
const existing_isOmniPinnedViewEnabled = existing.isOmniPinnedViewEnabled;
|
|
18493
|
+
const incoming_isOmniPinnedViewEnabled = incoming.isOmniPinnedViewEnabled;
|
|
18494
|
+
if (!(existing_isOmniPinnedViewEnabled === incoming_isOmniPinnedViewEnabled)) {
|
|
18495
|
+
return false;
|
|
18496
|
+
}
|
|
18434
18497
|
const existing_selected = existing.selected;
|
|
18435
18498
|
const incoming_selected = incoming.selected;
|
|
18436
18499
|
if (!(existing_selected === incoming_selected)) {
|
|
@@ -54868,23 +54931,11 @@ function validateAdapterConfig$2(untrustedConfig, configPropertyNames) {
|
|
|
54868
54931
|
return config;
|
|
54869
54932
|
}
|
|
54870
54933
|
|
|
54871
|
-
const ISO8601_DATE_REGEX = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+Z$/;
|
|
54872
54934
|
function getHeaders(clientOptions) {
|
|
54873
54935
|
const headers = {};
|
|
54874
54936
|
if (untrustedIsObject(clientOptions)) {
|
|
54875
54937
|
if (typeof clientOptions.ifUnmodifiedSince === 'string') {
|
|
54876
54938
|
headers.ifUnmodifiedSince = clientOptions.ifUnmodifiedSince;
|
|
54877
|
-
// HTTP standard format date is expected by UI-API
|
|
54878
|
-
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Unmodified-Since
|
|
54879
|
-
// A component built for Connect API must use If-Unmodified-Since
|
|
54880
|
-
// dates formatted as ISO 8601, which does not match the HTTP spec.
|
|
54881
|
-
// For compatibility, convert the date to match the standard.
|
|
54882
|
-
if (headers.ifUnmodifiedSince.match(ISO8601_DATE_REGEX)) {
|
|
54883
|
-
const utcString = new Date(headers.ifUnmodifiedSince).toUTCString();
|
|
54884
|
-
if (utcString !== 'Invalid Date') {
|
|
54885
|
-
headers.ifUnmodifiedSince = utcString;
|
|
54886
|
-
}
|
|
54887
|
-
}
|
|
54888
54939
|
}
|
|
54889
54940
|
}
|
|
54890
54941
|
return headers;
|
package/dist/komaci-mapping.json
CHANGED
|
@@ -41,10 +41,12 @@
|
|
|
41
41
|
"importPath": "lightning/unstable_uiLayoutApi",
|
|
42
42
|
"identifier": "unstable_getLayout_imperative"
|
|
43
43
|
}
|
|
44
|
-
}
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"lightning/uiLayoutUserStateApi": {
|
|
45
47
|
"getLayoutUserState": {
|
|
46
48
|
"prime": {
|
|
47
|
-
"importPath": "lightning/
|
|
49
|
+
"importPath": "lightning/unstable_uiLayoutUserStateApi",
|
|
48
50
|
"identifier": "unstable_getLayoutUserState_imperative"
|
|
49
51
|
}
|
|
50
52
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@salesforce/lds-adapters-uiapi",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.293.0",
|
|
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",
|
|
@@ -68,14 +68,14 @@
|
|
|
68
68
|
}
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@salesforce/lds-bindings": "^1.
|
|
72
|
-
"@salesforce/lds-default-luvio": "^1.
|
|
71
|
+
"@salesforce/lds-bindings": "^1.293.0",
|
|
72
|
+
"@salesforce/lds-default-luvio": "^1.293.0"
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
75
|
"@databases/sqlite": "^3.0.0",
|
|
76
|
-
"@salesforce/lds-compiler-plugins": "^1.
|
|
77
|
-
"@salesforce/lds-jest": "^1.
|
|
78
|
-
"@salesforce/lds-store-binary": "^1.
|
|
76
|
+
"@salesforce/lds-compiler-plugins": "^1.293.0",
|
|
77
|
+
"@salesforce/lds-jest": "^1.293.0",
|
|
78
|
+
"@salesforce/lds-store-binary": "^1.293.0"
|
|
79
79
|
},
|
|
80
80
|
"luvioBundlesize": [
|
|
81
81
|
{
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
"maxSize": {
|
|
84
84
|
"none": "1.60 MB",
|
|
85
85
|
"min": "800 kB",
|
|
86
|
-
"compressed": "
|
|
86
|
+
"compressed": "112 kB"
|
|
87
87
|
}
|
|
88
88
|
},
|
|
89
89
|
{
|
package/sfdc/graphqlAdapters.js
CHANGED
|
@@ -19744,4 +19744,4 @@ register({
|
|
|
19744
19744
|
});
|
|
19745
19745
|
|
|
19746
19746
|
export { configurationForGraphQLAdapters as configuration, graphql, factory$1 as graphqlAdapterFactory, graphqlBatch, graphqlBatch_imperative, graphql_imperative };
|
|
19747
|
-
// version: 1.
|
|
19747
|
+
// version: 1.293.0-c036bce5d
|
package/sfdc/index.js
CHANGED
|
@@ -10407,6 +10407,11 @@ function validate$1F(obj, path = 'FieldRepresentation') {
|
|
|
10407
10407
|
if (typeof obj_dataType !== 'string') {
|
|
10408
10408
|
return new TypeError('Expected "string" but received "' + typeof obj_dataType + '" (at "' + path_dataType + '")');
|
|
10409
10409
|
}
|
|
10410
|
+
const obj_externalId = obj.externalId;
|
|
10411
|
+
const path_externalId = path + '.externalId';
|
|
10412
|
+
if (typeof obj_externalId !== 'boolean') {
|
|
10413
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_externalId + '" (at "' + path_externalId + '")');
|
|
10414
|
+
}
|
|
10410
10415
|
const obj_extraTypeInfo = obj.extraTypeInfo;
|
|
10411
10416
|
const path_extraTypeInfo = path + '.extraTypeInfo';
|
|
10412
10417
|
let obj_extraTypeInfo_union0 = null;
|
|
@@ -10513,6 +10518,32 @@ function validate$1F(obj, path = 'FieldRepresentation') {
|
|
|
10513
10518
|
if (typeof obj_length !== 'number' || (typeof obj_length === 'number' && Math.floor(obj_length) !== obj_length)) {
|
|
10514
10519
|
return new TypeError('Expected "integer" but received "' + typeof obj_length + '" (at "' + path_length + '")');
|
|
10515
10520
|
}
|
|
10521
|
+
const obj_maskType = obj.maskType;
|
|
10522
|
+
const path_maskType = path + '.maskType';
|
|
10523
|
+
let obj_maskType_union0 = null;
|
|
10524
|
+
const obj_maskType_union0_error = (() => {
|
|
10525
|
+
if (typeof obj_maskType !== 'string') {
|
|
10526
|
+
return new TypeError('Expected "string" but received "' + typeof obj_maskType + '" (at "' + path_maskType + '")');
|
|
10527
|
+
}
|
|
10528
|
+
})();
|
|
10529
|
+
if (obj_maskType_union0_error != null) {
|
|
10530
|
+
obj_maskType_union0 = obj_maskType_union0_error.message;
|
|
10531
|
+
}
|
|
10532
|
+
let obj_maskType_union1 = null;
|
|
10533
|
+
const obj_maskType_union1_error = (() => {
|
|
10534
|
+
if (obj_maskType !== null) {
|
|
10535
|
+
return new TypeError('Expected "null" but received "' + typeof obj_maskType + '" (at "' + path_maskType + '")');
|
|
10536
|
+
}
|
|
10537
|
+
})();
|
|
10538
|
+
if (obj_maskType_union1_error != null) {
|
|
10539
|
+
obj_maskType_union1 = obj_maskType_union1_error.message;
|
|
10540
|
+
}
|
|
10541
|
+
if (obj_maskType_union0 && obj_maskType_union1) {
|
|
10542
|
+
let message = 'Object doesn\'t match union (at "' + path_maskType + '")';
|
|
10543
|
+
message += '\n' + obj_maskType_union0.split('\n').map((line) => '\t' + line).join('\n');
|
|
10544
|
+
message += '\n' + obj_maskType_union1.split('\n').map((line) => '\t' + line).join('\n');
|
|
10545
|
+
return new TypeError(message);
|
|
10546
|
+
}
|
|
10516
10547
|
const obj_nameField = obj.nameField;
|
|
10517
10548
|
const path_nameField = path + '.nameField';
|
|
10518
10549
|
if (typeof obj_nameField !== 'boolean') {
|
|
@@ -10675,7 +10706,7 @@ function validate$1E(obj, path = 'ThemeInfoRepresentation') {
|
|
|
10675
10706
|
}
|
|
10676
10707
|
|
|
10677
10708
|
const TTL$w = 900000;
|
|
10678
|
-
const VERSION$12 = "
|
|
10709
|
+
const VERSION$12 = "2302a71ca718abb60353eb88dedb1c12";
|
|
10679
10710
|
function validate$1D(obj, path = 'ObjectInfoRepresentation') {
|
|
10680
10711
|
const v_error = (() => {
|
|
10681
10712
|
if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
|
|
@@ -10753,6 +10784,11 @@ function validate$1D(obj, path = 'ObjectInfoRepresentation') {
|
|
|
10753
10784
|
return new TypeError(message);
|
|
10754
10785
|
}
|
|
10755
10786
|
}
|
|
10787
|
+
const obj_compactLayoutable = obj.compactLayoutable;
|
|
10788
|
+
const path_compactLayoutable = path + '.compactLayoutable';
|
|
10789
|
+
if (typeof obj_compactLayoutable !== 'boolean') {
|
|
10790
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_compactLayoutable + '" (at "' + path_compactLayoutable + '")');
|
|
10791
|
+
}
|
|
10756
10792
|
const obj_createable = obj.createable;
|
|
10757
10793
|
const path_createable = path + '.createable';
|
|
10758
10794
|
if (typeof obj_createable !== 'boolean') {
|
|
@@ -10915,6 +10951,11 @@ function validate$1D(obj, path = 'ObjectInfoRepresentation') {
|
|
|
10915
10951
|
return new TypeError(message);
|
|
10916
10952
|
}
|
|
10917
10953
|
}
|
|
10954
|
+
const obj_searchLayoutable = obj.searchLayoutable;
|
|
10955
|
+
const path_searchLayoutable = path + '.searchLayoutable';
|
|
10956
|
+
if (typeof obj_searchLayoutable !== 'boolean') {
|
|
10957
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_searchLayoutable + '" (at "' + path_searchLayoutable + '")');
|
|
10958
|
+
}
|
|
10918
10959
|
const obj_searchable = obj.searchable;
|
|
10919
10960
|
const path_searchable = path + '.searchable';
|
|
10920
10961
|
if (typeof obj_searchable !== 'boolean') {
|
|
@@ -10995,6 +11036,10 @@ const select$1G = function ObjectInfoRepresentationSelect() {
|
|
|
10995
11036
|
kind: 'Object',
|
|
10996
11037
|
opaque: true
|
|
10997
11038
|
},
|
|
11039
|
+
{
|
|
11040
|
+
name: 'compactLayoutable',
|
|
11041
|
+
kind: 'Scalar'
|
|
11042
|
+
},
|
|
10998
11043
|
{
|
|
10999
11044
|
name: 'createable',
|
|
11000
11045
|
kind: 'Scalar'
|
|
@@ -11059,6 +11104,10 @@ const select$1G = function ObjectInfoRepresentationSelect() {
|
|
|
11059
11104
|
kind: 'Object',
|
|
11060
11105
|
opaque: true
|
|
11061
11106
|
},
|
|
11107
|
+
{
|
|
11108
|
+
name: 'searchLayoutable',
|
|
11109
|
+
kind: 'Scalar'
|
|
11110
|
+
},
|
|
11062
11111
|
{
|
|
11063
11112
|
name: 'searchable',
|
|
11064
11113
|
kind: 'Scalar'
|
|
@@ -17706,7 +17755,7 @@ function getTypeCacheKeys$z(rootKeySet, luvio, input, fullPathFactory) {
|
|
|
17706
17755
|
}
|
|
17707
17756
|
|
|
17708
17757
|
const TTL$n = 300000;
|
|
17709
|
-
const VERSION$O = "
|
|
17758
|
+
const VERSION$O = "0cd492fdd6c713c206ef53dc02175f71";
|
|
17710
17759
|
function validate$1f(obj, path = 'AppRepresentation') {
|
|
17711
17760
|
const v_error = (() => {
|
|
17712
17761
|
if (typeof obj !== 'object' || ArrayIsArray(obj) || obj === null) {
|
|
@@ -17853,6 +17902,11 @@ function validate$1f(obj, path = 'AppRepresentation') {
|
|
|
17853
17902
|
if (typeof obj_isNavTabPersistenceDisabled !== 'boolean') {
|
|
17854
17903
|
return new TypeError('Expected "boolean" but received "' + typeof obj_isNavTabPersistenceDisabled + '" (at "' + path_isNavTabPersistenceDisabled + '")');
|
|
17855
17904
|
}
|
|
17905
|
+
const obj_isOmniPinnedViewEnabled = obj.isOmniPinnedViewEnabled;
|
|
17906
|
+
const path_isOmniPinnedViewEnabled = path + '.isOmniPinnedViewEnabled';
|
|
17907
|
+
if (typeof obj_isOmniPinnedViewEnabled !== 'boolean') {
|
|
17908
|
+
return new TypeError('Expected "boolean" but received "' + typeof obj_isOmniPinnedViewEnabled + '" (at "' + path_isOmniPinnedViewEnabled + '")');
|
|
17909
|
+
}
|
|
17856
17910
|
const obj_label = obj.label;
|
|
17857
17911
|
const path_label = path + '.label';
|
|
17858
17912
|
if (typeof obj_label !== 'string') {
|
|
@@ -18021,6 +18075,10 @@ const select$1g = function AppRepresentationSelect() {
|
|
|
18021
18075
|
name: 'isNavTabPersistenceDisabled',
|
|
18022
18076
|
kind: 'Scalar'
|
|
18023
18077
|
},
|
|
18078
|
+
{
|
|
18079
|
+
name: 'isOmniPinnedViewEnabled',
|
|
18080
|
+
kind: 'Scalar'
|
|
18081
|
+
},
|
|
18024
18082
|
{
|
|
18025
18083
|
name: 'label',
|
|
18026
18084
|
kind: 'Scalar'
|
|
@@ -18076,6 +18134,11 @@ function equals$E(existing, incoming) {
|
|
|
18076
18134
|
if (!(existing_isNavTabPersistenceDisabled === incoming_isNavTabPersistenceDisabled)) {
|
|
18077
18135
|
return false;
|
|
18078
18136
|
}
|
|
18137
|
+
const existing_isOmniPinnedViewEnabled = existing.isOmniPinnedViewEnabled;
|
|
18138
|
+
const incoming_isOmniPinnedViewEnabled = incoming.isOmniPinnedViewEnabled;
|
|
18139
|
+
if (!(existing_isOmniPinnedViewEnabled === incoming_isOmniPinnedViewEnabled)) {
|
|
18140
|
+
return false;
|
|
18141
|
+
}
|
|
18079
18142
|
const existing_selected = existing.selected;
|
|
18080
18143
|
const incoming_selected = incoming.selected;
|
|
18081
18144
|
if (!(existing_selected === incoming_selected)) {
|
|
@@ -35854,23 +35917,11 @@ function validateAdapterConfig$2(untrustedConfig, configPropertyNames) {
|
|
|
35854
35917
|
return config;
|
|
35855
35918
|
}
|
|
35856
35919
|
|
|
35857
|
-
const ISO8601_DATE_REGEX = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+Z$/;
|
|
35858
35920
|
function getHeaders(clientOptions) {
|
|
35859
35921
|
const headers = {};
|
|
35860
35922
|
if (untrustedIsObject(clientOptions)) {
|
|
35861
35923
|
if (typeof clientOptions.ifUnmodifiedSince === 'string') {
|
|
35862
35924
|
headers.ifUnmodifiedSince = clientOptions.ifUnmodifiedSince;
|
|
35863
|
-
// HTTP standard format date is expected by UI-API
|
|
35864
|
-
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Unmodified-Since
|
|
35865
|
-
// A component built for Connect API must use If-Unmodified-Since
|
|
35866
|
-
// dates formatted as ISO 8601, which does not match the HTTP spec.
|
|
35867
|
-
// For compatibility, convert the date to match the standard.
|
|
35868
|
-
if (headers.ifUnmodifiedSince.match(ISO8601_DATE_REGEX)) {
|
|
35869
|
-
const utcString = new Date(headers.ifUnmodifiedSince).toUTCString();
|
|
35870
|
-
if (utcString !== 'Invalid Date') {
|
|
35871
|
-
headers.ifUnmodifiedSince = utcString;
|
|
35872
|
-
}
|
|
35873
|
-
}
|
|
35874
35925
|
}
|
|
35875
35926
|
}
|
|
35876
35927
|
return headers;
|
|
@@ -37031,4 +37082,4 @@ withDefaultLuvio((luvio) => {
|
|
|
37031
37082
|
});
|
|
37032
37083
|
|
|
37033
37084
|
export { API_NAMESPACE, InMemoryRecordRepresentationQueryEvaluator, MRU, RepresentationType$I as ObjectInfoDirectoryEntryRepresentationType, RepresentationType$N as ObjectInfoRepresentationType, RECORD_FIELDS_KEY_JUNCTION, RECORD_ID_PREFIX, RECORD_REPRESENTATION_NAME, RECORD_VIEW_ENTITY_ID_PREFIX, RECORD_VIEW_ENTITY_REPRESENTATION_NAME, RepresentationType$U as RecordRepresentationRepresentationType, TTL$y as RecordRepresentationTTL, RepresentationType$U as RecordRepresentationType, VERSION$1a as RecordRepresentationVersion, keyPrefix as UiApiNamespace, buildRecordRepKeyFromId, getFieldApiNamesArray as coerceFieldIdArray, getObjectApiName$1 as coerceObjectId, getObjectApiNamesArray as coerceObjectIdArray, configurationForRestAdapters as configuration, createContentDocumentAndVersion, createContentVersion, createIngestRecordWithFields, createLDSAdapterWithPrediction, createListInfo, createRecord, createRelatedListAdapterWithPrediction, deleteListInfo, deleteRecord, executeBatchRecordOperations, extractRecordIdFromStoreKey, getActionOverrides, getActionOverrides_imperative, getAllApps, getAllApps_imperative, getAppDetails, getAppDetails_imperative, getDuplicateConfiguration, getDuplicateConfiguration_imperative, getDuplicates, getDuplicates_imperative, getFlexipageFormulaOverrides, getFlexipageFormulaOverrides_imperative, getGlobalActions, getGlobalActions_imperative, getKeywordSearchResults, getKeywordSearchResults_imperative, getLayout, getLayoutUserState, getLayoutUserState_imperative, getLayout_imperative, getListInfoByName, getListInfoByName_imperative, getListInfosByName, getListInfosByName_imperative, getListInfosByObjectName, getListInfosByObjectName_imperative, getListObjectInfo, getListObjectInfo_imperative, getListPreferences, getListPreferences_imperative, getListRecordsByName, getListRecordsByName_imperative, getListUi, getListUi_imperative, getLookupActions, getLookupActions_imperative, getLookupMetadata, getLookupMetadata_imperative, getLookupRecords, getLookupRecords_imperative, getNavItems, getNavItems_imperative, getObjectCreateActions, getObjectCreateActions_imperative, getObjectInfo, getObjectInfoAdapterFactory, getObjectInfoDirectoryAdapterFactory, getObjectInfo_imperative, getObjectInfos, getObjectInfosAdapterFactory, getObjectInfos_imperative, getPathLayout, getPathLayout_imperative, getPicklistValues, getPicklistValuesByRecordType, getPicklistValuesByRecordType_imperative, getPicklistValues_imperative, getQuickActionDefaults, getQuickActionDefaults_imperative, getQuickActionLayout, getQuickActionLayout_imperative, getRecord, getRecordActions, getRecordActionsAdapterFactory, getRecordActions_imperative, factory$f as getRecordAdapterFactory, getRecordAvatars, getRecordAvatarsAdapterFactory, getRecordAvatars_imperative, getRecordCreateDefaults, getRecordCreateDefaults_imperative, getRecordEditActions, getRecordEditActions_imperative, getRecordId18, getRecordNotifyChange, getRecordTemplateClone, getRecordTemplateClone_imperative, getRecordTemplateCreate, getRecordTemplateCreate_imperative, getRecordUi, getRecordUi_imperative, getRecord_imperative, getRecords, getRecordsAdapterFactory, getRecords_imperative, getRelatedListActions, getRelatedListActions_imperative, getRelatedListCount, getRelatedListCount_imperative, getRelatedListInfo, getRelatedListInfoBatch, getRelatedListInfoBatchAdapterFactory, getRelatedListInfoBatch_imperative, getRelatedListInfo_imperative, getRelatedListPreferences, getRelatedListPreferencesBatch, getRelatedListPreferencesBatch_imperative, getRelatedListPreferences_imperative, getRelatedListRecordActions, getRelatedListRecordActions_imperative, getRelatedListRecords, getRelatedListRecordsAdapterFactory, getRelatedListRecordsBatch, getRelatedListRecordsBatchAdapterFactory, getRelatedListRecordsBatch_imperative, getRelatedListRecords_imperative, getRelatedListsActions, getRelatedListsActionsAdapterFactory, getRelatedListsActions_imperative, getRelatedListsCount, getRelatedListsCount_imperative, getRelatedListsInfo, getRelatedListsInfo_imperative, getResponseCacheKeys as getResponseCacheKeysContentDocumentCompositeRepresentation, getSearchFilterMetadata, getSearchFilterMetadata_imperative, getSearchFilterOptions, getSearchFilterOptions_imperative, getSearchResults, getSearchResults_imperative, getTypeCacheKeys$W as getTypeCacheKeysRecord, ingest as ingestContentDocumentCompositeRepresentation, ingest$G as ingestObjectInfo, ingest$A as ingestQuickActionExecutionRepresentation, ingest$N as ingestRecord, instrument, isStoreKeyRecordViewEntity, keyBuilder as keyBuilderContentDocumentCompositeRepresentation, keyBuilderFromType as keyBuilderFromTypeContentDocumentCompositeRepresentation, keyBuilderFromType$C as keyBuilderFromTypeRecordRepresentation, keyBuilder$1V as keyBuilderObjectInfo, keyBuilder$1O as keyBuilderQuickActionExecutionRepresentation, keyBuilder$26 as keyBuilderRecord, notifyAllListInfoSummaryUpdateAvailable, notifyAllListRecordUpdateAvailable, notifyListInfoSummaryUpdateAvailable, notifyListInfoUpdateAvailable, notifyListRecordCollectionUpdateAvailable, notifyListViewSummaryUpdateAvailable, notifyQuickActionDefaultsUpdateAvailable, notifyRecordUpdateAvailable, performQuickAction, performUpdateRecordQuickAction, refresh, registerPrefetcher, updateLayoutUserState, updateListInfoByName, updateListPreferences, updateRecord, updateRecordAvatar, updateRelatedListInfo, updateRelatedListPreferences };
|
|
37034
|
-
// version: 1.
|
|
37085
|
+
// version: 1.293.0-c036bce5d
|
|
@@ -95,7 +95,7 @@ var TypeCheckShapes;
|
|
|
95
95
|
TypeCheckShapes[TypeCheckShapes["Integer"] = 3] = "Integer";
|
|
96
96
|
TypeCheckShapes[TypeCheckShapes["Unsupported"] = 4] = "Unsupported";
|
|
97
97
|
})(TypeCheckShapes || (TypeCheckShapes = {}));
|
|
98
|
-
// engine version: 0.154.
|
|
98
|
+
// engine version: 0.154.19-8ff414af
|
|
99
99
|
|
|
100
100
|
const { keys: ObjectKeys, create: ObjectCreate } = Object;
|
|
101
101
|
|
package/src/raml/api.raml
CHANGED
|
@@ -341,10 +341,10 @@ types:
|
|
|
341
341
|
description: Indicates if the Lightning Console App should persist a user's
|
|
342
342
|
workspace tabs
|
|
343
343
|
type: boolean
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
344
|
+
isOmniPinnedViewEnabled:
|
|
345
|
+
description: Indicates if the Lightning App should contain the Omni-Channel
|
|
346
|
+
pinned view
|
|
347
|
+
type: boolean
|
|
348
348
|
label:
|
|
349
349
|
description: Label of the app
|
|
350
350
|
type: string
|
|
@@ -962,9 +962,9 @@ types:
|
|
|
962
962
|
- TextArea
|
|
963
963
|
- Time
|
|
964
964
|
- Url
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
965
|
+
externalId:
|
|
966
|
+
description: Returns if this field has an external id.
|
|
967
|
+
type: boolean
|
|
968
968
|
extraTypeInfo:
|
|
969
969
|
description: Additional data type information.
|
|
970
970
|
type: string | nil
|
|
@@ -1005,9 +1005,9 @@ types:
|
|
|
1005
1005
|
description: For string fields, the maximum size of the field in number of
|
|
1006
1006
|
Unicode characters (not bytes).
|
|
1007
1007
|
type: integer
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1008
|
+
maskType:
|
|
1009
|
+
description: Returns the mask type.
|
|
1010
|
+
type: string | nil # Handrolled
|
|
1011
1011
|
nameField:
|
|
1012
1012
|
description: Indicates whether the field is a name field.
|
|
1013
1013
|
type: boolean
|
|
@@ -2569,9 +2569,9 @@ types:
|
|
|
2569
2569
|
type: array
|
|
2570
2570
|
items:
|
|
2571
2571
|
type: ChildRelationshipRepresentation
|
|
2572
|
-
|
|
2573
|
-
|
|
2574
|
-
|
|
2572
|
+
compactLayoutable:
|
|
2573
|
+
description: Indicates whether the object can have compact layouts.
|
|
2574
|
+
type: boolean
|
|
2575
2575
|
createable:
|
|
2576
2576
|
description: Indicates whether the object can be created.
|
|
2577
2577
|
type: boolean
|
|
@@ -2640,9 +2640,9 @@ types:
|
|
|
2640
2640
|
properties:
|
|
2641
2641
|
//:
|
|
2642
2642
|
type: RecordTypeInfoRepresentation
|
|
2643
|
-
|
|
2644
|
-
|
|
2645
|
-
|
|
2643
|
+
searchLayoutable:
|
|
2644
|
+
description: Indicates whether the object can have search layouts.
|
|
2645
|
+
type: boolean
|
|
2646
2646
|
searchable:
|
|
2647
2647
|
description: Indicates whether the object can be searched.
|
|
2648
2648
|
type: boolean
|
package/src/raml/luvio.raml
CHANGED
|
@@ -1329,7 +1329,7 @@ types:
|
|
|
1329
1329
|
uriParameters:
|
|
1330
1330
|
recordIds:
|
|
1331
1331
|
examples:
|
|
1332
|
-
mockGetRecordUiResponse: ['
|
|
1332
|
+
mockGetRecordUiResponse: ['001SG00000QofHBYAZ', '001SG00000QpB5jYAF']
|
|
1333
1333
|
get:
|
|
1334
1334
|
(luvio.adapter):
|
|
1335
1335
|
name: getRecordUi
|
|
@@ -1342,7 +1342,7 @@ types:
|
|
|
1342
1342
|
expectedResponses:
|
|
1343
1343
|
- configInput: |
|
|
1344
1344
|
{
|
|
1345
|
-
"recordIds": ["
|
|
1345
|
+
"recordIds": ["001SG00000QofHBYAZ", "001SG00000QpB5jYAF"],
|
|
1346
1346
|
"layoutTypes": ["Full"],
|
|
1347
1347
|
"modes": ["View"]
|
|
1348
1348
|
}
|