@salesforce/lds-runtime-mobile 1.401.0 → 1.403.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 +1505 -163
- package/dist/types/drafts/records/draftAwareAdapters/updateRecord.d.ts +2 -1
- package/dist/types/onestore/index.d.ts +2 -1
- package/package.json +34 -34
- package/sfdc/main.js +1505 -163
- package/sfdc/types/drafts/records/draftAwareAdapters/updateRecord.d.ts +2 -1
- package/sfdc/types/onestore/index.d.ts +2 -1
package/dist/main.js
CHANGED
|
@@ -17,14 +17,15 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import { withRegistration, register } from '@salesforce/lds-default-luvio';
|
|
19
19
|
import { setupInstrumentation, instrumentAdapter as instrumentAdapter$1, instrumentLuvio, setLdsAdaptersUiapiInstrumentation, setLdsNetworkAdapterInstrumentation } from '@salesforce/lds-instrumentation';
|
|
20
|
-
import { HttpStatusCode as HttpStatusCode$1, 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';
|
|
20
|
+
import { HttpStatusCode as HttpStatusCode$1, setBypassDeepFreeze, StoreKeySet, serializeStructuredKey, StringKeyInMemoryStore, Reader, deepFreeze as deepFreeze$1, 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 allowUpdatesForNonCachedRecords from '@salesforce/gate/lmr.allowUpdatesForNonCachedRecords';
|
|
22
23
|
import { getInstrumentation, idleDetector } from 'o11y/client';
|
|
24
|
+
import caseSensitiveUserId from '@salesforce/user/Id';
|
|
23
25
|
import { Kind as Kind$2, visit as visit$2, isObjectType, defaultFieldResolver, buildSchema, parse as parse$8, extendSchema, isScalarType, execute, print as print$1 } from '@luvio/graphql-parser';
|
|
24
26
|
import FIRST_DAY_OF_WEEK from '@salesforce/i18n/firstDayOfWeek';
|
|
25
27
|
import graphqQueryFieldLimit from '@salesforce/gate/lmr.graphqQueryFieldLimit';
|
|
26
28
|
import graphqlPartialEmitParity from '@salesforce/gate/lmr.graphqlPartialEmitParity';
|
|
27
|
-
import caseSensitiveUserId from '@salesforce/user/Id';
|
|
28
29
|
import { instrument as instrument$1 } from '@salesforce/lds-bindings';
|
|
29
30
|
import ldsAdapterO11yLoggingGate from '@salesforce/gate/lmr.ldsAdapterO11yLogging';
|
|
30
31
|
import LOCALE from '@salesforce/i18n/locale';
|
|
@@ -616,7 +617,7 @@ function publishDurableStoreEntries(durableRecords, put, publishMetadata) {
|
|
|
616
617
|
}
|
|
617
618
|
if (isStoreEntryError(data)) {
|
|
618
619
|
// freeze errors on way into L1
|
|
619
|
-
deepFreeze(data.error);
|
|
620
|
+
deepFreeze$1(data.error);
|
|
620
621
|
}
|
|
621
622
|
put(key, data);
|
|
622
623
|
revivedKeys.add(key);
|
|
@@ -6611,6 +6612,20 @@ function equals$k(existing, incoming) {
|
|
|
6611
6612
|
}
|
|
6612
6613
|
return true;
|
|
6613
6614
|
}
|
|
6615
|
+
const notifyUpdateAvailableFactory = (luvio) => {
|
|
6616
|
+
return function notifyRecordUpdateAvailable(configs) {
|
|
6617
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
6618
|
+
const requiredKeyParams = ['recordId'];
|
|
6619
|
+
configs.forEach((config) => {
|
|
6620
|
+
if (false === requiredKeyParams.every((req) => req in config)) {
|
|
6621
|
+
throw new Error(`one of the configs did not contain all required parameters: ${JSONStringify(ObjectKeys(config))}`);
|
|
6622
|
+
}
|
|
6623
|
+
});
|
|
6624
|
+
}
|
|
6625
|
+
const keys = configs.map((c) => keyBuilder$1N(luvio, c));
|
|
6626
|
+
return luvio.notifyStoreUpdateAvailable(keys);
|
|
6627
|
+
};
|
|
6628
|
+
};
|
|
6614
6629
|
|
|
6615
6630
|
/**
|
|
6616
6631
|
* The master record type id.
|
|
@@ -7595,7 +7610,7 @@ function ingestSuccessChildResourceParams$2(luvio, childResourceParamsArray, chi
|
|
|
7595
7610
|
const childSnapshotData = {
|
|
7596
7611
|
results: childSnapshotDataResponses,
|
|
7597
7612
|
};
|
|
7598
|
-
deepFreeze(childSnapshotData);
|
|
7613
|
+
deepFreeze$1(childSnapshotData);
|
|
7599
7614
|
return {
|
|
7600
7615
|
childSnapshotData,
|
|
7601
7616
|
seenRecords,
|
|
@@ -7714,7 +7729,7 @@ function selectChildResourceParams$2(luvio, childResources, resourceParams) {
|
|
|
7714
7729
|
reader.exitPath();
|
|
7715
7730
|
}
|
|
7716
7731
|
reader.assignNonScalar(sink, envelopePath, results);
|
|
7717
|
-
deepFreeze(sink);
|
|
7732
|
+
deepFreeze$1(sink);
|
|
7718
7733
|
reader.exitPath();
|
|
7719
7734
|
return sink;
|
|
7720
7735
|
},
|
|
@@ -10647,7 +10662,7 @@ function ingestSuccess$6(luvio, resourceParams, response, snapshotRefresh) {
|
|
|
10647
10662
|
throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
|
|
10648
10663
|
}
|
|
10649
10664
|
}
|
|
10650
|
-
deepFreeze(snapshot.data);
|
|
10665
|
+
deepFreeze$1(snapshot.data);
|
|
10651
10666
|
return snapshot;
|
|
10652
10667
|
}
|
|
10653
10668
|
function ingestError$8(luvio, params, error, snapshotRefresh) {
|
|
@@ -17954,7 +17969,7 @@ function ingestSuccessChildResourceParams$1(luvio, childResourceParamsArray, chi
|
|
|
17954
17969
|
statusCode: 200,
|
|
17955
17970
|
result: childSnapshot.data,
|
|
17956
17971
|
};
|
|
17957
|
-
deepFreeze(childValue);
|
|
17972
|
+
deepFreeze$1(childValue);
|
|
17958
17973
|
ArrayPrototypePush.call(childSnapshotDataResponses, childValue);
|
|
17959
17974
|
}
|
|
17960
17975
|
else {
|
|
@@ -17973,7 +17988,7 @@ function ingestSuccessChildResourceParams$1(luvio, childResourceParamsArray, chi
|
|
|
17973
17988
|
statusCode: childStatusCode,
|
|
17974
17989
|
result: childBody,
|
|
17975
17990
|
};
|
|
17976
|
-
deepFreeze(childValue);
|
|
17991
|
+
deepFreeze$1(childValue);
|
|
17977
17992
|
ArrayPrototypePush.call(childSnapshotDataResponses, childValue);
|
|
17978
17993
|
}
|
|
17979
17994
|
// track non-cached responses so rebuilds work properly
|
|
@@ -17991,7 +18006,7 @@ function ingestSuccessChildResourceParams$1(luvio, childResourceParamsArray, chi
|
|
|
17991
18006
|
const childSnapshotData = {
|
|
17992
18007
|
results: childSnapshotDataResponses,
|
|
17993
18008
|
};
|
|
17994
|
-
deepFreeze(childSnapshotData);
|
|
18009
|
+
deepFreeze$1(childSnapshotData);
|
|
17995
18010
|
return { childSnapshotData: childSnapshotData, seenRecords, snapshotState };
|
|
17996
18011
|
}
|
|
17997
18012
|
function ingestSuccess$4(luvio, resourceParams, response, snapshotRefresh) {
|
|
@@ -19592,7 +19607,7 @@ function ingestSuccess$3(luvio, resourceParams, response, snapshotRefresh) {
|
|
|
19592
19607
|
throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
|
|
19593
19608
|
}
|
|
19594
19609
|
}
|
|
19595
|
-
deepFreeze(snapshot.data);
|
|
19610
|
+
deepFreeze$1(snapshot.data);
|
|
19596
19611
|
return snapshot;
|
|
19597
19612
|
}
|
|
19598
19613
|
function ingestError$4(luvio, params, error, snapshotRefresh) {
|
|
@@ -19916,7 +19931,7 @@ function ingestSuccess$2(luvio, resourceParams, response, snapshotRefresh) {
|
|
|
19916
19931
|
throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
|
|
19917
19932
|
}
|
|
19918
19933
|
}
|
|
19919
|
-
deepFreeze(snapshot.data);
|
|
19934
|
+
deepFreeze$1(snapshot.data);
|
|
19920
19935
|
return snapshot;
|
|
19921
19936
|
}
|
|
19922
19937
|
function ingestError$3(luvio, params, error, snapshotRefresh) {
|
|
@@ -20618,7 +20633,7 @@ function buildNetworkSnapshot$5(luvio, config, options) {
|
|
|
20618
20633
|
.map((targetApiName) => body.lookupResults[targetApiName].records)
|
|
20619
20634
|
.reduce((allRecords, records) => allRecords.concat(records), [])
|
|
20620
20635
|
.forEach((record) => removeEtags(record));
|
|
20621
|
-
deepFreeze(body);
|
|
20636
|
+
deepFreeze$1(body);
|
|
20622
20637
|
return Promise.resolve({
|
|
20623
20638
|
state: 'Fulfilled',
|
|
20624
20639
|
recordId: key,
|
|
@@ -40405,7 +40420,7 @@ function ingestTypeWithStrategy(astNode, state, isCursorConnectionType, { key, i
|
|
|
40405
40420
|
const fieldKey = getSerializedKeyForField(requestedField, variables, fieldType);
|
|
40406
40421
|
if (fieldType === undefined) {
|
|
40407
40422
|
console.warn(`Unknown Field: ${requestedField}. This field or nested fields cannot participate in normalization`);
|
|
40408
|
-
deepFreeze(fieldData);
|
|
40423
|
+
deepFreeze$1(fieldData);
|
|
40409
40424
|
sink[fieldKey] = fieldData;
|
|
40410
40425
|
continue;
|
|
40411
40426
|
}
|
|
@@ -41268,7 +41283,7 @@ function selectTypeLinkWithPagination(resolvedLink, sel, fieldData, reader, key,
|
|
|
41268
41283
|
}
|
|
41269
41284
|
}
|
|
41270
41285
|
}
|
|
41271
|
-
deepFreeze(trimmedEdges);
|
|
41286
|
+
deepFreeze$1(trimmedEdges);
|
|
41272
41287
|
const paginatedData = {
|
|
41273
41288
|
data: {
|
|
41274
41289
|
...source,
|
|
@@ -42302,15 +42317,21 @@ class UiApiActionHandler extends AbstractResourceRequestActionHandler {
|
|
|
42302
42317
|
// allowed us to get a record with the fields we have cached (i.e. would never go to the network)
|
|
42303
42318
|
const doesRecordExist = await this.durableRecordStore.exists(tag);
|
|
42304
42319
|
if (!doesRecordExist) {
|
|
42305
|
-
|
|
42306
|
-
|
|
42307
|
-
|
|
42308
|
-
|
|
42309
|
-
|
|
42310
|
-
|
|
42311
|
-
|
|
42312
|
-
|
|
42313
|
-
|
|
42320
|
+
if (!allowUpdatesForNonCachedRecords.isOpen({ fallback: false })) {
|
|
42321
|
+
// we are trying to patch or delete a record that we don't have cached. This is not supported.
|
|
42322
|
+
// we'll do one last ditch effort to fetch the record with just the Id field in case we're online.
|
|
42323
|
+
// Note this scenario is unlikely outside test and manual test environments
|
|
42324
|
+
const record = await getAdapterData(this.getRecordAdapter, {
|
|
42325
|
+
recordId: targetId,
|
|
42326
|
+
optionalFields: [`${targetApiName}.Id`],
|
|
42327
|
+
});
|
|
42328
|
+
if (record === undefined) {
|
|
42329
|
+
throw Error('Cannot apply a draft to a record that is not cached');
|
|
42330
|
+
}
|
|
42331
|
+
}
|
|
42332
|
+
else if (resolvedRequest.method !== 'patch') {
|
|
42333
|
+
// the allowUpdatesForNonCachedRecords gate is open but a patch is not being attempted. This is not supported.
|
|
42334
|
+
throw Error('Can only perform patch on a record that is not cached');
|
|
42314
42335
|
}
|
|
42315
42336
|
}
|
|
42316
42337
|
}
|
|
@@ -43650,8 +43671,8 @@ function createRecordDraftAdapterFactory(actionHandler, durableRecordStore) {
|
|
|
43650
43671
|
* @param actionHandler The UIAPI Record action handler. NOTE: this adapter doesn't
|
|
43651
43672
|
* register it with the DraftQueue, runtime should set that up
|
|
43652
43673
|
*/
|
|
43653
|
-
function updateRecordDraftAdapterFactory(actionHandler, durableRecordStore) {
|
|
43654
|
-
return async function
|
|
43674
|
+
function updateRecordDraftAdapterFactory(actionHandler, durableRecordStore, objectInfoService) {
|
|
43675
|
+
return async function updateRecordDraftAdapter(config, createResourceRequest) {
|
|
43655
43676
|
const request = createResourceRequest(config);
|
|
43656
43677
|
if (actionHandler.hasIdempotencySupport()) {
|
|
43657
43678
|
request.headers[HTTP_HEADER_IDEMPOTENCY_KEY] = uuidv4();
|
|
@@ -43665,6 +43686,38 @@ function updateRecordDraftAdapterFactory(actionHandler, durableRecordStore) {
|
|
|
43665
43686
|
if (!record) {
|
|
43666
43687
|
record = await durableRecordStore.getRedirectedRecord(action.tag);
|
|
43667
43688
|
}
|
|
43689
|
+
if (record === undefined && allowUpdatesForNonCachedRecords.isOpen({ fallback: false })) {
|
|
43690
|
+
// Fabricate synthetic record for non-cached update.
|
|
43691
|
+
let apiName = config.apiName;
|
|
43692
|
+
if (!apiName) {
|
|
43693
|
+
// try to determine the apiName from the record id prefix
|
|
43694
|
+
try {
|
|
43695
|
+
apiName = await objectInfoService.apiNameForPrefix(config.recordId.substring(0, 3));
|
|
43696
|
+
}
|
|
43697
|
+
catch (error) {
|
|
43698
|
+
throw transformErrorToDraftSynthesisError(new Error(`Cannot determine apiName for record ${config.recordId}: ${error}`));
|
|
43699
|
+
}
|
|
43700
|
+
}
|
|
43701
|
+
const recordFields = Object.entries(config.fields || {}).reduce((acc, [key, value]) => {
|
|
43702
|
+
acc[key] = { value, displayValue: null };
|
|
43703
|
+
return acc;
|
|
43704
|
+
}, {});
|
|
43705
|
+
const currentTimestamp = new Date().toISOString();
|
|
43706
|
+
// fabricate the record
|
|
43707
|
+
record = {
|
|
43708
|
+
id: config.recordId,
|
|
43709
|
+
apiName: apiName,
|
|
43710
|
+
fields: recordFields,
|
|
43711
|
+
systemModstamp: currentTimestamp,
|
|
43712
|
+
lastModifiedDate: currentTimestamp,
|
|
43713
|
+
lastModifiedById: caseSensitiveUserId,
|
|
43714
|
+
recordTypeId: null,
|
|
43715
|
+
recordTypeInfo: null,
|
|
43716
|
+
weakEtag: 0,
|
|
43717
|
+
eTag: '',
|
|
43718
|
+
childRelationships: {},
|
|
43719
|
+
};
|
|
43720
|
+
}
|
|
43668
43721
|
if (record) {
|
|
43669
43722
|
return {
|
|
43670
43723
|
state: 'Fulfilled',
|
|
@@ -43704,7 +43757,7 @@ function performQuickActionDraftAdapterFactory(actionHandler, userId) {
|
|
|
43704
43757
|
const request = createResourceRequest(config);
|
|
43705
43758
|
const action = await actionHandler.enqueue(request).catch((err) => {
|
|
43706
43759
|
const error = transformErrorToDraftSynthesisError(err);
|
|
43707
|
-
deepFreeze(error);
|
|
43760
|
+
deepFreeze$1(error);
|
|
43708
43761
|
throw error;
|
|
43709
43762
|
});
|
|
43710
43763
|
let contextId = action.data.body.contextId;
|
|
@@ -43740,7 +43793,7 @@ function performUpdateRecordQuickActionDraftAdapterFactory(actionHandler, userId
|
|
|
43740
43793
|
const request = createResourceRequest(config);
|
|
43741
43794
|
const action = await actionHandler.enqueue(request).catch((err) => {
|
|
43742
43795
|
const error = transformErrorToDraftSynthesisError(err);
|
|
43743
|
-
deepFreeze(error);
|
|
43796
|
+
deepFreeze$1(error);
|
|
43744
43797
|
throw error;
|
|
43745
43798
|
});
|
|
43746
43799
|
let contextId = action.data.body.contextId;
|
|
@@ -47325,6 +47378,11 @@ function passThroughResolver(source) {
|
|
|
47325
47378
|
function addResolversToSchema(schema, polyFields) {
|
|
47326
47379
|
// Polymorphic field type is 'recordInterface'
|
|
47327
47380
|
let recordInterface = undefined;
|
|
47381
|
+
// UIAPI ObjectInfo.fields uses the 'Field' interface with concrete implementations.
|
|
47382
|
+
// We need to resolve the concrete type at runtime when returning snapshot data.
|
|
47383
|
+
let fieldInterface = undefined;
|
|
47384
|
+
let picklistFieldType = undefined;
|
|
47385
|
+
let standardFieldType = undefined;
|
|
47328
47386
|
let baseRecord = undefined;
|
|
47329
47387
|
// Concrete types for Polymorphic field
|
|
47330
47388
|
const polyTypes = [];
|
|
@@ -47332,6 +47390,9 @@ function addResolversToSchema(schema, polyFields) {
|
|
|
47332
47390
|
if (type.name === 'Record') {
|
|
47333
47391
|
recordInterface = type;
|
|
47334
47392
|
}
|
|
47393
|
+
else if (type.name === 'Field') {
|
|
47394
|
+
fieldInterface = type;
|
|
47395
|
+
}
|
|
47335
47396
|
else if (type.name === 'RecordRepresentation') {
|
|
47336
47397
|
baseRecord = type;
|
|
47337
47398
|
}
|
|
@@ -47341,6 +47402,13 @@ function addResolversToSchema(schema, polyFields) {
|
|
|
47341
47402
|
if (polyFields.find((fieldTypeName) => fieldTypeName === type.name) !== undefined) {
|
|
47342
47403
|
polyTypes.push(type);
|
|
47343
47404
|
}
|
|
47405
|
+
// Cache concrete 'Field' implementors for resolveType below
|
|
47406
|
+
if (type.name === 'PicklistField') {
|
|
47407
|
+
picklistFieldType = type;
|
|
47408
|
+
}
|
|
47409
|
+
else if (type.name === 'StandardField') {
|
|
47410
|
+
standardFieldType = type;
|
|
47411
|
+
}
|
|
47344
47412
|
const fields = values$1(type.getFields());
|
|
47345
47413
|
// initialize the fields of current type with default behavior
|
|
47346
47414
|
for (const field of fields) {
|
|
@@ -47578,6 +47646,20 @@ function addResolversToSchema(schema, polyFields) {
|
|
|
47578
47646
|
return targetType === undefined ? baseRecord : targetType;
|
|
47579
47647
|
};
|
|
47580
47648
|
}
|
|
47649
|
+
// Resolve concrete UIAPI Field types when ObjectInfo.fields is read from a snapshot without __typename
|
|
47650
|
+
if (fieldInterface !== undefined &&
|
|
47651
|
+
(picklistFieldType !== undefined || standardFieldType !== undefined)) {
|
|
47652
|
+
fieldInterface.resolveType = function (value) {
|
|
47653
|
+
// Prefer explicit picklist discriminator if present
|
|
47654
|
+
const dataType = value && value.dataType;
|
|
47655
|
+
const isPicklistDataType = dataType === 'PICKLIST' || dataType === 'MULTIPICKLIST';
|
|
47656
|
+
const hasPicklistValues = value && value.picklistValuesByRecordTypeIDs !== undefined;
|
|
47657
|
+
if ((isPicklistDataType || hasPicklistValues) && picklistFieldType) {
|
|
47658
|
+
return picklistFieldType;
|
|
47659
|
+
}
|
|
47660
|
+
return standardFieldType ?? null;
|
|
47661
|
+
};
|
|
47662
|
+
}
|
|
47581
47663
|
return schema;
|
|
47582
47664
|
}
|
|
47583
47665
|
/**
|
|
@@ -47618,7 +47700,7 @@ function isRecordType(type) {
|
|
|
47618
47700
|
return Boolean(interfaces.find((iface) => iface.name === 'Record'));
|
|
47619
47701
|
}
|
|
47620
47702
|
|
|
47621
|
-
var uiapiSchemaString = "scalar String\nscalar DateTime\nscalar Currency\nscalar ID\nscalar Boolean\nscalar Longitude\nscalar Float\nscalar MultiPicklist\nscalar Base64\nscalar Url\nscalar PhoneNumber\nscalar Email\nscalar TextArea\nscalar Latitude\nscalar Picklist\nscalar RichTextArea\nscalar EncryptedString\nscalar Double\nscalar Long\nscalar JSON\nscalar Time\nscalar Int\nscalar Percent\nscalar LongTextArea\nscalar IdOrRef\nscalar Date\ntype PercentAggregate implements FieldValue {\n value: Percent\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: PercentValue\n min: PercentValue\n sum: PercentValue\n}\n\ntype StringAggregate implements FieldValue {\n value: String\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: StringValue\n min: StringValue\n}\n\ntype Query {\n uiapi: UIAPI!\n analytics: Analytics__Analytics! @fieldCategory\n setup: Setup__Setup! @fieldCategory\n}\n\ninput EmailOperators {\n eq: Email\n ne: Email\n like: Email\n lt: Email\n gt: Email\n lte: Email\n gte: Email\n in: [Email]\n nin: [Email]\n}\n\ninput PolymorphicParentRelationshipRecordOrderBy @generic {\n RecordOrderBy: RecordOrderBy @fieldCategory\n}\n\ninput DoubleOperators {\n eq: Double\n ne: Double\n lt: Double\n gt: Double\n lte: Double\n gte: Double\n in: [Double]\n nin: [Double]\n}\n\ntype DateOnlyAggregation {\n value: Date\n format: String\n}\n\ntype RecordCreatePayload @generic {\n Record: RecordRepresentation\n}\n\ntype DateAggregate implements FieldValue {\n value: Date\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n grouping: IntValue\n max: DateValue\n min: DateValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\ninput PolymorphicParentRelationshipGroupBy @generic {\n RecordGroupBy: RecordGroupBy @fieldCategory\n}\n\nenum GroupByFunction {\n DAY_IN_WEEK\n DAY_IN_MONTH\n DAY_IN_YEAR\n WEEK_IN_MONTH\n WEEK_IN_YEAR\n CALENDAR_MONTH\n CALENDAR_QUARTER\n CALENDAR_YEAR\n FISCAL_MONTH\n FISCAL_QUARTER\n FISCAL_YEAR\n DAY_ONLY\n HOUR_IN_DAY\n}\n\ntype RecordTypeInfo {\n available: Boolean!\n defaultRecordTypeMapping: Boolean!\n master: Boolean!\n name: String\n recordTypeId: ID\n}\n\ninput UIAPIMutationsInput {\n allOrNone: Boolean = true\n}\n\ntype BooleanValue implements FieldValue {\n value: Boolean\n displayValue: String\n}\n\ntype ReferenceToInfo {\n ApiName: String!\n nameFields: [String]!\n objectInfo: ObjectInfo\n}\n\ninterface FieldValue {\n displayValue: String\n}\n\ntype LongitudeValue implements FieldValue {\n value: Longitude\n displayValue: String\n}\n\ntype StringValue implements FieldValue {\n value: String\n displayValue: String\n label: String\n}\n\ntype IntValue implements FieldValue {\n value: Int\n displayValue: String\n format: String\n}\n\ntype UrlValue implements FieldValue {\n value: Url\n displayValue: String\n}\n\ninput IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: JoinInput\n ninq: JoinInput\n}\n\ninput Setup__SetupOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ntype LongAggregate implements FieldValue {\n value: Long\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: LongValue\n min: LongValue\n sum: LongValue\n}\n\ntype PhoneNumberAggregate implements FieldValue {\n value: PhoneNumber\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: PhoneNumberValue\n min: PhoneNumberValue\n}\n\ninput TimeOperators {\n eq: Time\n ne: Time\n lt: Time\n gt: Time\n lte: Time\n gte: Time\n in: [Time]\n nin: [Time]\n}\n\ntype PicklistValue implements FieldValue {\n value: Picklist\n displayValue: String\n label: String\n}\n\ntype CurrencyAggregate implements FieldValue {\n value: Currency\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: CurrencyValue\n min: CurrencyValue\n sum: CurrencyValue\n}\n\ntype RelatedListInfo {\n childApiName: String!\n relatedListName: String!\n label: String!\n displayColumns: [ListColumn!]!\n orderedByInfo: [ListOrder!]!\n parentApiName: String!\n fieldApiName: String!\n}\n\ninput StringOperators {\n eq: String\n ne: String\n like: String\n lt: String\n gt: String\n lte: String\n gte: String\n in: [String]\n nin: [String]\n}\n\ntype UIAPI {\n query: RecordQuery!\n aggregate: RecordQueryAggregate!\n objectInfos(apiNames: [String], locale: String): [ObjectInfo]\n relatedListByName(parentApiName: String!, relatedListName: String!): RelatedListInfo\n}\n\ninput MultiPicklistOperators {\n eq: MultiPicklist\n ne: MultiPicklist\n includes: [MultiPicklist]\n excludes: [MultiPicklist]\n}\n\ntype DateTimeAggregate implements FieldValue {\n value: DateTime\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n dayOnly: DateOnlyAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n hourInDay: DateFunctionAggregation\n max: DateTimeValue\n min: DateTimeValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\ninput BooleanOperators {\n eq: Boolean\n ne: Boolean\n}\n\ntype EmailAggregate implements FieldValue {\n value: Email\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: EmailValue\n min: EmailValue\n}\n\n#enum OrderByType {\n#}\n\ninput GroupByDateFunction {\n function: GroupByFunction\n}\n\ntype RichTextAreaValue implements FieldValue {\n value: RichTextArea\n displayValue: String\n}\n\ntype MultiPicklistValue implements FieldValue {\n value: MultiPicklist\n displayValue: String\n label: String\n}\n\ntype Setup__SetupEdge @generic {\n node: Setup__EntityRepresentation\n cursor: String!\n}\n\ninput DatePrimitiveOperators {\n eq: Date\n ne: Date\n lt: Date\n gt: Date\n lte: Date\n gte: Date\n in: [Date]\n nin: [Date]\n}\n\ntype TimeAggregate implements FieldValue {\n value: Time\n displayValue: String\n format: String\n hourInDay: DateFunctionAggregation\n}\n\ntype __Type {\n kind: __TypeKind!\n name: String\n description: String\n fields(includeDeprecated: Boolean = false): [__Field!]\n interfaces: [__Type!]\n possibleTypes: [__Type!]\n enumValues(includeDeprecated: Boolean = false): [__EnumValue!]\n inputFields: [__InputValue!]\n ofType: __Type\n}\n\ntype ListColumn {\n fieldApiName: String!\n label: String!\n lookupId: String\n sortable: Boolean\n}\n\ntype Setup__SetupQuery {\n # scope should be RecordScope, but it is an empty enum\n recordQuery(after: String, first: Int, orderBy: Setup__SetupOrderBy, scope: String @fieldCategory, upperBound: Int, where: Setup__SetupFilter): Setup__SetupConnection @fieldCategory\n}\n\ntype Setup__SetupQueryAggregate {\n recordQueryAggregate(after: String, first: Int, groupBy: Setup__SetupGroupBy, orderBy: Setup__SetupAggregateOrderBy, scope: String @fieldCategory, upperBound: Int, where: Setup__SetupFilter): Setup__SetupAggregateConnection @fieldCategory\n}\n\ntype Setup__SetupRecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: Setup__SetupRecordAggregate @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicAggregateParentRelationship @fieldCategory\n}\n\ntype Setup__SetupRecordResult @generic {\n aggregate: Setup__SetupRecordAggregate\n}\n\ntype SObject__Field {\n name: String!\n value: String\n}\n\nenum SObject__FieldType {\n ALL\n CUSTOM\n STANDARD\n}\n\ntype Setup__EntityRepresentation @generic {\n Id: ID!\n ApiName: String!\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n Entity__fields(type: SObject__FieldType): [SObject__Field]!\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n parentRelationship: Setup__EntityRepresentation @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, upperBound: Int): Setup__SetupConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n AnyType: AnyType @fieldCategory\n}\n\ntype LatitudeAggregate implements FieldValue {\n value: Latitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LatitudeValue\n min: LatitudeValue\n sum: DoubleValue\n}\n\ninput CurrencyOperators {\n eq: Currency\n ne: Currency\n lt: Currency\n gt: Currency\n lte: Currency\n gte: Currency\n in: [Currency]\n nin: [Currency]\n}\n\ninput DistanceInput {\n latitude: Latitude!\n longitude: Longitude!\n}\n\nunion PolymorphicAggregateParentRelationship @generic = RecordAggregate\n\nunion PolymorphicParentRelationship @generic = RecordRepresentation\n\nenum AggregateOrderByNumberFunction {\n AVG\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n SUM\n}\n\ntype LongTextAreaValue implements FieldValue {\n value: LongTextArea\n displayValue: String\n}\n\ntype LatitudeValue implements FieldValue {\n value: Latitude\n displayValue: String\n}\n\ninput OrderByClause {\n order: ResultOrder\n nulls: NullOrder\n}\n\ninput GroupByClause {\n group: Boolean\n}\n\ntype RecordAggregateConnection @generic {\n edges: [RecordAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype LongitudeAggregate implements FieldValue {\n value: Longitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LongitudeValue\n min: LongitudeValue\n sum: DoubleValue\n}\n\ntype RecordEdge @generic {\n node: RecordRepresentation\n cursor: String!\n}\n\nunion Setup__SetupPolymorphicParentRelationship @generic = Setup__EntityRepresentation\n\ntype DateValue implements FieldValue {\n value: Date\n displayValue: String\n format: String\n}\n\ninput URLOperators {\n eq: Url\n ne: Url\n like: Url\n lt: Url\n gt: Url\n lte: Url\n gte: Url\n in: [Url]\n nin: [Url]\n}\n\ninput LongOperators {\n eq: Long\n ne: Long\n lt: Long\n gt: Long\n lte: Long\n gte: Long\n in: [Long]\n nin: [Long]\n}\n\nenum DataType {\n STRING\n TEXTAREA\n PHONE\n EMAIL\n URL\n ENCRYPTEDSTRING\n BOOLEAN\n CURRENCY\n INT\n LONG\n DOUBLE\n PERCENT\n DATETIME\n TIME\n DATE\n REFERENCE\n PICKLIST\n MULTIPICKLIST\n ADDRESS\n LOCATION\n BASE64\n COMPLEXVALUE\n COMBOBOX\n JSON\n JUNCTIONIDLIST\n ANYTYPE\n}\n\nenum NullOrder {\n FIRST\n LAST\n}\n\ntype PhoneNumberValue implements FieldValue {\n value: PhoneNumber\n displayValue: String\n}\n\n# Cannot have empty enum\n# enum RecordScope @generic {\n# }\n\ninput Setup__SetupFilter @generic {\n and: [Setup__SetupFilter]\n or: [Setup__SetupFilter]\n not: Setup__SetupFilter\n parentRelationshipRecordFilter: Setup__SetupFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: Setup__SetupPolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n Setup__IdOperator: Setup__IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ntype DoubleAggregate implements FieldValue {\n value: Double\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: DoubleValue\n min: DoubleValue\n sum: DoubleValue\n}\n\ntype __Field {\n name: String!\n description: String\n args: [__InputValue!]!\n type: __Type!\n isDeprecated: Boolean!\n deprecationReason: String\n}\n\ninput DateOperators {\n eq: DateInput\n ne: DateInput\n lt: DateInput\n gt: DateInput\n lte: DateInput\n gte: DateInput\n in: [DateInput]\n nin: [DateInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n}\n\ninput GeolocationInput {\n latitude: Latitude!\n longitude: Longitude!\n radius: Float!\n unit: Unit!\n}\n\ninput JoinInput {\n Record: RecordFilter @fieldCategory\n ApiName: String\n}\n\ninput TextAreaOperators {\n eq: TextArea\n ne: TextArea\n like: TextArea\n lt: TextArea\n gt: TextArea\n lte: TextArea\n gte: TextArea\n in: [TextArea]\n nin: [TextArea]\n}\n\ntype TextAreaValue implements FieldValue {\n value: TextArea\n displayValue: String\n}\n\ntype RecordUpdatePayload @generic {\n success: Boolean\n}\n\ninput PercentOperators {\n eq: Percent\n ne: Percent\n lt: Percent\n gt: Percent\n lte: Percent\n gte: Percent\n in: [Percent]\n nin: [Percent]\n}\n\ninput Setup__SetupPolymorphicParentRelationshipRecordOrderBy @generic {\n Setup__SetupOrderBy: Setup__SetupOrderBy @fieldCategory\n}\n\ntype DoubleValue implements FieldValue {\n value: Double\n displayValue: String\n format: String\n}\n\ntype IDAggregate implements FieldValue {\n value: ID\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: IDValue\n min: IDValue\n}\n\ntype __InputValue {\n name: String!\n description: String\n type: __Type!\n defaultValue: String\n}\n\ntype RecordAggregateEdge @generic {\n node: RecordResult\n cursor: String!\n}\n\ntype __Directive {\n name: String\n description: String\n locations: [__DirectiveLocation!]\n args: [__InputValue!]!\n}\n\ninput RecordCreateInput @generic {\n record: RecordCreateRepresentation! @fieldCategory\n}\n\ntype ThemeInfo {\n color: String\n iconUrl: String\n}\n\ninput AggregateOrderByStringClause {\n function: AggregateOrderByStringFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ntype RecordDeletePayload {\n Id: ID\n}\n\ntype UrlAggregate implements FieldValue {\n value: Url\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: UrlValue\n min: UrlValue\n}\n\nenum DateLiteral {\n LAST_YEAR\n LAST_WEEK\n THIS_QUARTER\n NEXT_FISCAL_YEAR\n LAST_QUARTER\n TOMORROW\n NEXT_FISCAL_QUARTER\n YESTERDAY\n NEXT_QUARTER\n THIS_FISCAL_QUARTER\n THIS_WEEK\n LAST_MONTH\n LAST_90_DAYS\n NEXT_90_DAYS\n THIS_FISCAL_YEAR\n NEXT_WEEK\n TODAY\n NEXT_YEAR\n NEXT_MONTH\n LAST_FISCAL_QUARTER\n THIS_MONTH\n LAST_FISCAL_YEAR\n THIS_YEAR\n}\n\ntype __EnumValue {\n name: String!\n description: String\n isDeprecated: Boolean!\n deprecationReason: String\n}\n\ntype RecordRepresentation implements Record @generic {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n parentRelationship: RecordRepresentation @fieldCategory\n polymorphicParentRelationship: PolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, upperBound: Int): RecordConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n AnyType: AnyType @fieldCategory\n}\n\nunion AnyType = BooleanValue | DateValue | DateTimeValue | DoubleValue | StringValue\n\ntype IDValue implements FieldValue {\n value: ID\n displayValue: String\n}\n\nenum Unit {\n MI\n KM\n}\n\ninput PolymorphicParentRelationshipOrderBy @generic {\n RecordAggregateOrderBy: RecordAggregateOrderBy @fieldCategory\n}\n\ninput OrderByGeolocationClause {\n distance: DistanceInput\n order: ResultOrder\n nulls: NullOrder\n}\n\ninput Setup__IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: Setup__JoinInput\n ninq: Setup__JoinInput\n}\n\nenum NullsOrder {\n FIRST\n LAST\n}\n\ntype TextAreaAggregate implements FieldValue {\n value: TextArea\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: TextAreaValue\n min: TextAreaValue\n}\n\nenum GroupByType {\n GROUP_BY\n ROLLUP\n CUBE\n}\n\nenum ResultOrder {\n ASC\n DESC\n}\n\ninput RecordOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput Setup__JoinInput {\n Record: Setup__SetupFilter @fieldCategory\n ApiName: String\n}\n\ninput PicklistOperators {\n eq: Picklist\n ne: Picklist\n in: [Picklist]\n nin: [Picklist]\n like: Picklist\n lt: Picklist\n gt: Picklist\n lte: Picklist\n gte: Picklist\n}\n\nenum ResultsOrder {\n ASC\n DESC\n}\n\ninput RecordFilter @generic {\n and: [RecordFilter]\n or: [RecordFilter]\n not: RecordFilter\n parentRelationshipRecordFilter: RecordFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: PolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n IdOperator: IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ntype TimeValue implements FieldValue {\n value: Time\n displayValue: String\n format: String\n}\n\ninput GeolocationOperators {\n lt: GeolocationInput\n gt: GeolocationInput\n}\n\ntype PicklistAggregate implements FieldValue {\n value: Picklist\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: PicklistValue\n min: PicklistValue\n}\n\ninput LatitudeOperators {\n eq: Latitude\n ne: Latitude\n lt: Latitude\n gt: Latitude\n lte: Latitude\n gte: Latitude\n in: [Latitude]\n nin: [Latitude]\n}\n\ninput RecordUpdateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\ntype DateTimeValue implements FieldValue {\n value: DateTime\n displayValue: String\n format: String\n}\n\ninput RecordDeleteInput {\n Id: IdOrRef!\n}\n\nenum __DirectiveLocation {\n QUERY\n MUTATION\n FIELD\n FRAGMENT_DEFINITION\n FRAGMENT_SPREAD\n INLINE_FRAGMENT\n SCHEMA\n SCALAR\n OBJECT\n FIELD_DEFINITION\n ARGUMENT_DEFINITION\n INTERFACE\n UNION\n ENUM\n ENUM_VALUE\n INPUT_OBJECT\n INPUT_FIELD_DEFINITION\n}\n\ntype IntAggregate implements FieldValue {\n value: Int\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: IntValue\n min: IntValue\n sum: LongValue\n}\n\ntype ListOrder {\n fieldApiName: String!\n sortDirection: ResultOrder\n}\n\ntype RecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: RecordAggregate @fieldCategory\n polymorphicParentRelationship: PolymorphicAggregateParentRelationship @fieldCategory\n}\n\ntype JSONValue implements FieldValue {\n value: JSON\n displayValue: String\n}\n\ntype EmailValue implements FieldValue {\n value: Email\n displayValue: String\n}\n\ntype Setup__Setup {\n query: Setup__SetupQuery!\n aggregate: Setup__SetupQueryAggregate!\n ListView(\n listViewType: String!,\n label: String,\n displayColumns: [String!],\n filters: [Setup__ListFilterInput!],\n filterLogic: String,\n orderedByInfo: [Setup__ListOrderInput!]!\n ): Setup__ListView!\n ListViewObjectInfo(listViewType: String!): Setup__ListViewObjectInfo!\n}\n\ntype Setup__SetupAggregateConnection @generic {\n edges: [Setup__SetupAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ninput Setup__SetupGroupBy @generic {\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableField: GroupByClause @fieldCategory\n groupableParentRelationship: Setup__SetupGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\ntype Setup__SetupAggregateEdge @generic {\n cursor: String!\n node: Setup__SetupRecordResult\n}\n\ninput Setup__SetupAggregateOrderBy @generic {\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableParentRelationship: Setup__SetupAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipOrderBy @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n type: String\n}\n\n\nenum AggregateOrderByStringFunction {\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n}\n\ntype LongValue implements FieldValue {\n value: Long\n displayValue: String\n format: String\n}\n\ninput DateFunctionInput {\n value: LongOperators\n convertTimezoneValue: LongOperators\n}\n\n# Mutations aren't supported yet.\n#type Mutation {\n# uiapi(input: UIAPIMutationsInput): UIAPIMutations!\n#}\n\ntype DependentField {\n controllingField: String!\n dependentFields: [String]!\n}\n\ninput LongTextAreaOperators {\n eq: LongTextArea\n ne: LongTextArea\n like: LongTextArea\n lt: LongTextArea\n gt: LongTextArea\n lte: LongTextArea\n gte: LongTextArea\n in: [LongTextArea]\n nin: [LongTextArea]\n}\n\nenum __TypeKind {\n SCALAR\n OBJECT\n INTERFACE\n UNION\n ENUM\n INPUT_OBJECT\n LIST\n NON_NULL\n}\n\ntype Setup__SetupConnection @generic {\n edges: [Setup__SetupEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype PercentValue implements FieldValue {\n value: Percent\n displayValue: String\n format: String\n}\n\ninput DateTimeOperators {\n eq: DateTimeInput\n ne: DateTimeInput\n lt: DateTimeInput\n gt: DateTimeInput\n lte: DateTimeInput\n gte: DateTimeInput\n in: [DateTimeInput]\n nin: [DateTimeInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n DAY_ONLY: DateTimeFunctionInput\n HOUR_IN_DAY: DateFunctionInput\n}\n\ninput NoFunctionAggregateOrderByClause {\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ntype BooleanAggregate implements FieldValue {\n value: Boolean\n displayValue: String\n grouping: IntValue\n}\n\ntype RecordQueryAggregate {\n # RecordScope is replaced with String\n recordQueryAggregate(after: String, first: Int, groupBy: RecordGroupBy, orderBy: RecordAggregateOrderBy, scope: String @fieldCategory, upperBound: Int, where: RecordFilter): RecordAggregateConnection @fieldCategory\n}\n\ninput RecordAggregateOrderBy @generic {\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableParentRelationship: RecordAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipOrderBy @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n type: String\n}\n\ntype RecordConnection @generic {\n edges: [RecordEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype FilteredLookupInfo {\n controllingFields: [String]!\n dependent: Boolean!\n optionalFilter: Boolean!\n}\n\ninput PhoneNumberOperators {\n eq: PhoneNumber\n ne: PhoneNumber\n like: PhoneNumber\n lt: PhoneNumber\n gt: PhoneNumber\n lte: PhoneNumber\n gte: PhoneNumber\n in: [PhoneNumber]\n nin: [PhoneNumber]\n}\n\ntype ObjectInfo {\n ApiName: String!\n childRelationships: [ChildRelationship]!\n createable: Boolean!\n custom: Boolean!\n defaultRecordTypeId: ID\n deletable: Boolean!\n dependentFields: [DependentField]!\n feedEnabled: Boolean!\n fields: [Field]!\n keyPrefix: String\n label: String\n labelPlural: String\n layoutable: Boolean!\n mruEnabled: Boolean!\n nameFields: [String]!\n queryable: Boolean!\n recordTypeInfos: [RecordTypeInfo]!\n searchable: Boolean!\n themeInfo: ThemeInfo\n updateable: Boolean!\n locale: String\n}\n\ninput LongitudeOperators {\n eq: Longitude\n ne: Longitude\n lt: Longitude\n gt: Longitude\n lte: Longitude\n gte: Longitude\n in: [Longitude]\n nin: [Longitude]\n}\n\ninput RecordCreateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\ntype Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\nenum FieldExtraTypeInfo {\n IMAGE_URL\n EXTERNAL_LOOKUP\n INDIRECT_LOOKUP\n PERSONNAME\n SWITCHABLE_PERSONNAME\n PLAINTEXTAREA\n RICHTEXTAREA\n}\n\ntype RateLimit {\n cost: Long\n limit: Long\n remaining: Long\n resetAt: DateTime\n}\n\ninput DateRange {\n last_n_days: Int\n next_n_days: Int\n last_n_weeks: Int\n next_n_weeks: Int\n last_n_months: Int\n next_n_months: Int\n last_n_quarters: Int\n next_n_quarters: Int\n last_n_fiscal_quarters: Int\n next_n_fiscal_quarters: Int\n last_n_years: Int\n next_n_years: Int\n last_n_fiscal_years: Int\n next_n_fiscal_years: Int\n n_days_ago: Int\n n_weeks_ago: Int\n n_months_ago: Int\n n_quarters_ago: Int\n n_years_ago: Int\n n_fiscal_quarters_ago: Int\n n_fiscal_years_ago: Int\n}\n\ntype UIAPIMutations {\n recordCreate(input: RecordCreateInput!): RecordCreatePayload @fieldCategory\n recordDelete(input: RecordDeleteInput!): RecordDeletePayload @fieldCategory\n recordUpdate(input: RecordUpdateInput!): RecordUpdatePayload @fieldCategory\n}\n\ninput DateTimeFunctionInput {\n value: DatePrimitiveOperators\n convertTimezoneValue: DatePrimitiveOperators\n}\n\ntype Base64Value implements FieldValue {\n value: Base64\n displayValue: String\n}\n\ninput IntegerOperators {\n eq: Int\n ne: Int\n lt: Int\n gt: Int\n lte: Int\n gte: Int\n in: [Int]\n nin: [Int]\n}\n\ntype EncryptedStringValue implements FieldValue {\n value: EncryptedString\n displayValue: String\n}\n\ninterface Record {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n}\n\ninput PolymorphicParentRelationshipRecordFilter @generic {\n RecordFilter: RecordFilter @fieldCategory\n}\n\ninput AggregateOrderByNumberClause {\n function: AggregateOrderByNumberFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ntype __Schema {\n types: [__Type!]!\n queryType: __Type!\n mutationType: __Type\n directives: [__Directive!]!\n subscriptionType: __Type\n}\n\ninput Setup__SetupPolymorphicParentRelationshipRecordFilter @generic {\n Setup__SetupFilter: Setup__SetupFilter @fieldCategory\n}\n\nunion Setup__SetupPolymorphicAggregateParentRelationship @generic = Setup__SetupRecordAggregate\n\ninput Setup__SetupPolymorphicParentRelationshipGroupBy @generic {\n Setup__SetupGroupBy: Setup__SetupGroupBy @fieldCategory\n}\n\ninput Setup__SetupPolymorphicParentRelationshipOrderBy @generic {\n Setup__SetupAggregateOrderBy: Setup__SetupAggregateOrderBy @fieldCategory\n}\n\ntype CompoundField @generic {\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n}\n\ninput RecordUpdateInput @generic {\n Id: IdOrRef!\n record: RecordUpdateRepresentation! @fieldCategory\n}\n\ninput DateTimeInput {\n value: DateTime\n literal: DateLiteral\n range: DateRange\n}\n\ntype ChildRelationship {\n childObjectApiName: String!\n fieldName: String\n junctionIdListNames: [String]!\n junctionReferenceTo: [String]!\n relationshipName: String\n objectInfo: ObjectInfo\n}\n\ntype RecordResult @generic {\n aggregate: RecordAggregate\n}\n\ntype PageInfo {\n hasNextPage: Boolean!\n hasPreviousPage: Boolean!\n startCursor: String\n endCursor: String\n}\n\ntype CurrencyValue implements FieldValue {\n value: Currency\n displayValue: String\n format: String\n}\n\ninput DateInput {\n value: Date\n literal: DateLiteral\n range: DateRange\n}\n\ninput RecordGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: RecordGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: PolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\ntype DateFunctionAggregation {\n value: Long\n format: String\n}\n\ntype RecordQuery {\n recordQuery(after: String, first: Int, orderBy: RecordOrderBy, scope: String @fieldCategory, upperBound: Int, where: RecordFilter): RecordConnection @fieldCategory\n}\n\n# add browse family schema\ntype Analytics__Analytics {\n # assetTypes: [AnalyticsAssetType], but AnalyticsAssetType is an empty enum\n browse(after: String, assetTypes: [String], first: Int, orderBy: Analytics__AnalyticsOrderBy, where: Analytics__AnalyticsFilter): Analytics__AnalyticsBrowse!\n # Add other fields here if needed\n}\n\n# enum AnalyticsAssetType @generic {\n# }\n\ntype Analytics__AnalyticsBrowse {\n edges: [Analytics__AnalyticsEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__AnalyticsEdge {\n node: Analytics__AnalyticsRepresentation\n cursor: String!\n}\n\ninterface Analytics__AnalyticsRepresentationInterface {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n AnalyticsWorkspaces: Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__DataspaceRepresentation {\n Id: ID!\n ApiName: String!\n MasterLabel: String\n DeveloperName: String\n}\n\ntype Analytics__AnalyticsRepresentation implements Analytics__AnalyticsRepresentationInterface {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n RecordOperations: [String]\n AnalyticsWorkspaces: Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__SemanticDefinition implements Analytics__AnalyticsRepresentationInterface {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n SemanticModel: Analytics__SemanticModel\n AnalyticsWorkspaces: Analytics__AnalyticsWorkspaceAssetConnection\n SubMetrics: Analytics__SemanticSubMetricDefinitionConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__MktDataConnector implements Analytics__AnalyticsRepresentationInterface {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n AnalyticsWorkspaces: Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n DataConnectorType: StringValue\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ninput Analytics__AnalyticsOrderBy {\n MasterLabel: Analytics__OrderByInput\n Id: Analytics__OrderByInput\n ApiName: Analytics__OrderByInput\n CreatedById: Analytics__OrderByInput\n CreatedDate: Analytics__OrderByInput\n LastModifiedDate: Analytics__OrderByInput\n LastModifiedById: Analytics__OrderByInput\n}\n\ninput Analytics__OrderByInput {\n order: Analytics__SortEnumType\n}\n\nenum Analytics__SortEnumType {\n ASC\n DESC\n}\n\ninput Analytics__AnalyticsFilter {\n Id: Setup__IdOperators\n MasterLabel: StringOperators\n DeveloperName: StringOperators\n NamespacePrefix: StringOperators\n AssetApiName: StringOperators\n DataConnectorType: StringOperators\n CreatedById: Setup__IdOperators\n CreatedDate: DateTimeOperators\n LastModifiedById: Setup__IdOperators\n LastModifiedDate: DateTimeOperators\n SemanticModel: Analytics__SemanticModelFilter\n and: [Analytics__AnalyticsFilter]\n or: [Analytics__AnalyticsFilter]\n not: Analytics__AnalyticsFilter\n}\n\ninput Analytics__SemanticModelFilter {\n DeveloperName: StringOperators\n MasterLabel: StringOperators\n}\n\ntype Analytics__AnalyticsWorkspaceAssetConnection {\n edges: [Analytics__AnalyticsWorkspaceAssetEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__AnalyticsWorkspaceAssetEdge {\n node: Analytics__AnalyticsWorkspaceAsset\n cursor: String!\n}\n\ntype Analytics__AnalyticsWorkspaceAsset {\n AnalyticsWorkspace: Analytics__AnalyticsWorkspace\n AssetUsageType: PicklistValue\n ActivePromotionRequestId: IDValue\n MetadataSourceType: PicklistValue\n}\n\ntype Analytics__AnalyticsWorkspace {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n}\n\ntype Analytics__SemanticSubMetricDefinitionConnection {\n edges: [Analytics__SemanticSubMetricDefinitionEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticSubMetricDefinitionEdge {\n node: Analytics__SemanticSubMetricDefinitionRepresentation\n cursor: String!\n}\n\ntype Analytics__SemanticSubMetricDefinitionRepresentation {\n Id: ID!\n ApiName: String!\n}\n\ntype Analytics__SemanticModel {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces: Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n RelatedModel: Analytics__SemanticModelRelatedModelConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n}\n\ntype Analytics__SemanticModelRelatedModelConnection {\n edges: [Analytics__SemanticModelRelatedModelEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticModelRelatedModelEdge {\n node: Analytics__SemanticModelRelatedModelRepresentation\n cursor: String!\n}\n\ntype Analytics__SemanticModelRelatedModelRepresentation {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n RelatedSemanticModel: Analytics__SemanticModel\n}\n\ninput Setup__ListOrderInput {\n apiName: String!\n order: ResultsOrder\n}\n\ntype Setup__ListViewRow {\n id: ID!\n columns(apiNames: [String!]): [Setup__ListScalarField]!\n}\n\ntype Setup__ListView {\n listViewType: String!\n label: String\n displayColumns: [Setup__ListColumn!]!\n filters: [Setup__ListFilter!]\n filterLogic: String\n orderedByInfo: [Setup__ListOrder!]!\n searchable: Boolean!\n rows(first: Int, after: String, upperBound: Int, orderBy: Setup__ListOrderInput, searchTerm: String): Setup__ListViewRowConnection\n}\n\ntype Setup__ListFilter {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n}\n\nenum Setup__ListFilterOperator {\n EQUALS\n NOT_EQUAL\n LESS_THAN\n GREATER_THAN\n LESS_OR_EQUAL\n GREATER_OR_EQUAL\n CONTAINS\n NOT_CONTAIN\n STARTS_WITH\n INCLUDES\n EXCLUDES\n WITHIN\n}\n\ntype Setup__ListViewRowConnection {\n edges: [Setup__ListViewRowEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ninput Setup__ListFilterInput {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n}\n\ntype Setup__ListOrder {\n apiName: String!\n order: ResultsOrder\n}\n\ntype Setup__ListScalarField {\n apiName: String!\n value: String\n dataType: DataType\n displayValue: String\n format: String\n label: String\n}\n\ntype Setup__ListViewRowEdge {\n cursor: String!\n node: Setup__ListViewRow\n}\n\ntype Setup__ListViewObjectInfo {\n columns(apiNames: [String!], displayable: Boolean, filterable: Boolean) : [Setup__ListColumn!]!\n}\n\ntype Setup__ListColumn {\n apiName: String!\n label: String!\n type: DataType!\n displayable: Boolean!\n filterable: Boolean!\n defaultOperator: Setup__ListFilterOperator\n allowedOperators: [Setup__ListFilterOperator!]\n sortable: Boolean\n lookupIdColumn: String\n}\n\ndirective @generic on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT\ndirective @fieldCategory on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE\ndirective @category(name: String!) on FIELD\n";
|
|
47703
|
+
var uiapiSchemaString = "# Auto-generated merged GraphQL schema\n# Generated at: 2025-10-14T15:00:19.876399281Z\n# Source files: ui-services-private/java/resources/graphql-schemas/analytics.graphqls, ui-services-private/java/resources/graphql-schemas/setup-listview.graphqls, ui-services-private/java/resources/graphql-schemas/setup.graphqls, ui-services-private/java/resources/graphql-schemas/uiapi.graphqls\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/analytics.graphqls\n# ============================================================\ninput Analytics__AnalyticsFilter @team(name: \"TUA-Admin-Home-Search\") {\n Id: Setup__IdOperators\n MasterLabel: StringOperators\n DeveloperName: StringOperators\n NamespacePrefix: StringOperators\n AssetApiName: StringOperators\n DataConnectorType: StringOperators\n CreatedById: Setup__IdOperators\n LastModifiedById: Setup__IdOperators\n SemanticMetricId: Setup__IdOperators\n SemanticModelId: Setup__IdOperators\n LastModifiedDate: DateTimeOperators\n CreatedDate: DateTimeOperators\n AssetUsageType: PicklistOperators\n ActivePromotionRequestId: Setup__IdOperators\n SemanticModel: Analytics__SemanticModelFilter\n and: [Analytics__AnalyticsFilter]\n or: [Analytics__AnalyticsFilter]\n not: Analytics__AnalyticsFilter\n}\n\ninput Analytics__SemanticModelFilter @team(name: \"TUA-Admin-Home-Search\") {\n DeveloperName: StringOperators\n MasterLabel: StringOperators\n}\n\nenum Analytics__SortEnumType @team(name: \"TUA-Admin-Home-Search\") {\n ASC\n DESC\n}\n\ntype Analytics__SemanticSubMetricDefinitionConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__SemanticSubMetricDefinitionEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticSubMetricDefinitionEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__SemanticSubMetricDefinitionRepresentation\n cursor: String!\n}\n\ntype Analytics__DataspaceRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n MasterLabel: String\n DeveloperName: String\n}\n\ninterface Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__AnalyticsBrowse @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__AnalyticsEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\n# Empty enum is invalid GraphQL\n# enum AnalyticsAssetType @team(name: \"TUA-Admin-Home-Search\") @generic {\n# }\n\ntype Analytics__AnalyticsWorkspaceAssetConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__AnalyticsWorkspaceAssetEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticDefinition implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n SemanticModelId: IDValue\n SemanticModel: Analytics__SemanticModel\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n SubMetrics(first: Int, after: String): Analytics__SemanticSubMetricDefinitionConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__DominoTemplate implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA Intel MarketPlace\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n TemplateStatus: StringValue\n TemplateType: StringValue\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__AnalyticsEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__AnalyticsRepresentationInterface\n cursor: String!\n}\n\ntype Analytics__AnalyticsWorkspace @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n}\n\ntype Analytics__SemanticSubMetricDefinitionRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n SemanticMetricId: IDValue\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n}\n\ntype Analytics__AnalyticsWorkspaceAssetEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__AnalyticsWorkspaceAsset\n cursor: String!\n}\n\ninput Analytics__OrderByInput @team(name: \"TUA-Admin-Home-Search\") {\n order: Analytics__SortEnumType\n}\n\ntype Analytics__AnalyticsRepresentation implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n RecordOperations: [String]\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__SemanticModelRelatedModelConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__SemanticModelRelatedModelEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticModelRelatedModelRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n RelatedSemanticModel: Analytics__SemanticModel\n}\n\ntype Analytics__SemanticModelRelatedModelEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__SemanticModelRelatedModelRepresentation\n cursor: String!\n}\n\ntype Analytics__SemanticModel implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n RelatedModel(first: Int, after: String): Analytics__SemanticModelRelatedModelConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\n# assetTypes: AnalyticsAssetType - empty enum is invalid GraphQL so replace with String\ntype Analytics__Analytics @team(name: \"TUA-Admin-Home-Search\") {\n browse(where: Analytics__AnalyticsFilter, assetTypes: [String], orderBy: Analytics__AnalyticsOrderBy, first: Int, orgId: ID, after: String): Analytics__AnalyticsBrowse! @fieldCategory\n}\n\ntype Analytics__AnalyticsWorkspaceAsset @team(name: \"TUA-Admin-Home-Search\") {\n AnalyticsWorkspace: Analytics__AnalyticsWorkspace\n AssetUsageType: PicklistValue\n ActivePromotionRequestId: IDValue\n MetadataSourceType: PicklistValue\n}\n\ninput Analytics__AnalyticsOrderBy @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: Analytics__OrderByInput\n Id: Analytics__OrderByInput\n ApiName: Analytics__OrderByInput\n LastModifiedById: Analytics__OrderByInput\n CreatedById: Analytics__OrderByInput\n LastModifiedDate: Analytics__OrderByInput\n CreatedDate: Analytics__OrderByInput\n}\n\ntype Analytics__MktDataConnector implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n DataConnectorType: StringValue\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/setup-listview.graphqls\n# ============================================================\ninput Setup__ListOrderInput {\n apiName: String!\n order: ResultsOrder\n}\n\ntype Setup__ListOrder {\n apiName: String!\n order: ResultsOrder\n label: String\n}\n\ntype Setup__ListViewRowConnection {\n edges: [Setup__ListViewRowEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype Setup__ListView {\n listViewType: String!\n label: String\n displayColumns: [Setup__ListColumn!]!\n filters: [Setup__ListFilter!]\n filterLogic: String\n orderedByInfo: [Setup__ListOrder!]!\n searchable: Boolean!\n rows(first: Int, after: String, upperBound: Int, orderBy: Setup__ListOrderInput, searchTerm: String): Setup__ListViewRowConnection\n}\n\nenum Setup__ListFilterOperator {\n EQUALS\n NOT_EQUAL\n LESS_THAN\n GREATER_THAN\n LESS_OR_EQUAL\n GREATER_OR_EQUAL\n CONTAINS\n NOT_CONTAIN\n STARTS_WITH\n INCLUDES\n EXCLUDES\n WITHIN\n}\n\ntype Setup__ListFilter {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n label: String\n}\n\ntype Setup__ListColumn {\n apiName: String!\n label: String!\n type: DataType!\n displayable: Boolean!\n filterable: Boolean!\n defaultOperator: Setup__ListFilterOperator\n allowedOperators: [Setup__ListFilterOperator!]\n sortable: Boolean\n lookupIdColumn: String\n}\n\ntype Setup__ListScalarField {\n apiName: String!\n value: String\n dataType: DataType\n displayValue: String\n format: String\n label: String\n}\n\ntype Setup__ListViewRow {\n id: String\n columns(apiNames: [String!]): [Setup__ListScalarField]!\n}\n\ntype Setup__ListViewRowEdge {\n cursor: String!\n node: Setup__ListViewRow\n}\n\ntype Setup__ListViewObjectInfo {\n columns(apiNames: [String!], displayable: Boolean, filterable: Boolean) : [Setup__ListColumn!]!\n}\n\ninput Setup__ListFilterInput {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n}\n\nextend type Setup__Setup {\n ListView(listViewType: String!, label: String, displayColumns: [String!], filters: [Setup__ListFilterInput!], filterLogic: String): Setup__ListView!\n ListViewObjectInfo(listViewType: String!): Setup__ListViewObjectInfo!\n}\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/setup.graphqls\n# ============================================================\n# scope should be RecordScope, but it is an empty enum\ntype Setup__SetupQueryAggregate {\n recordQueryAggregate(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupAggregateOrderBy, scope: String, groupBy: Setup__SetupGroupBy, upperBound: Int, includeDeleted: Boolean): Setup__SetupAggregateConnection @fieldCategory\n}\n\nunion Setup__SetupPolymorphicParentRelationship @generic = Setup__EntityRepresentation\n\ninput Setup__SetupPolymorphicParentRelationshipRecordOrderBy @generic {\n Setup__SetupOrderBy: Setup__SetupOrderBy @fieldCategory\n}\n\ninput Setup__IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: Setup__JoinInput\n ninq: Setup__JoinInput\n}\n\ninput Setup__JoinInput {\n Record: Setup__SetupFilter @fieldCategory\n ApiName: String\n}\n\ntype Setup__SetupAggregateConnection @generic {\n edges: [Setup__SetupAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ninput Setup__SetupAggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipOrderBy @fieldCategory\n}\n\ntype Setup__SetupConnection @generic {\n edges: [Setup__SetupEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype Setup__SetupAggregateEdge @generic {\n node: Setup__SetupRecordResult\n cursor: String!\n}\n\ninput Setup__SetupPolymorphicParentRelationshipRecordFilter @generic {\n Setup__SetupFilter: Setup__SetupFilter @fieldCategory\n}\n\ntype Setup__SetupRecordResult @generic {\n aggregate: Setup__SetupRecordAggregate\n}\n\ntype Setup__SetupRecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: Setup__SetupRecordAggregate @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicAggregateParentRelationship @fieldCategory\n}\n\ninput Setup__SetupOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput Setup__SetupPolymorphicParentRelationshipOrderBy @generic {\n Setup__SetupAggregateOrderBy: Setup__SetupAggregateOrderBy @fieldCategory\n}\n\ntype Setup__SetupEdge @generic {\n node: Setup__EntityRepresentation\n cursor: String!\n}\n\n # scope should be RecordScope, but it is an empty enum\ntype Setup__SetupQuery {\n recordQuery(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, scope: String, upperBound: Int, includeDeleted: Boolean, updateMRU: Boolean): Setup__SetupConnection @fieldCategory\n}\n\ntype Setup__EntityRepresentation @generic {\n Id: ID!\n ApiName: String!\n Entity__fields(type: SObject__FieldType): [SObject__Field]! @ignoreRule(rules:[{ rule: \"FieldCamelOrPascalCaseRule\" teamName: \"UI Experience API\" justification: \"SObject__ prefix added to prevent name collisions.\" }])\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n AnyType: AnyType @fieldCategory\n parentRelationship: Setup__EntityRepresentation @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, upperBound: Int): Setup__SetupConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n}\n\ninput Setup__SetupFilter @generic {\n and: [Setup__SetupFilter]\n or: [Setup__SetupFilter]\n not: Setup__SetupFilter\n parentRelationshipRecordFilter: Setup__SetupFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: Setup__SetupPolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n Setup__IdOperator: Setup__IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ninput Setup__SetupGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: Setup__SetupGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\nunion Setup__SetupPolymorphicAggregateParentRelationship @generic = Setup__SetupRecordAggregate\n\ntype Setup__Setup {\n query: Setup__SetupQuery!\n aggregate: Setup__SetupQueryAggregate!\n objectInfos(apiNames: [String!], locale: String, objectInfoInputs: [ObjectInfoInput!]): [ObjectInfo]\n}\n\ninput Setup__SetupPolymorphicParentRelationshipGroupBy @generic {\n Setup__SetupGroupBy: Setup__SetupGroupBy @fieldCategory\n}\n\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/uiapi.graphqls\n# ============================================================\nscalar BigDecimal\nscalar Byte\nscalar Char\nscalar BigInteger\nscalar Short\nscalar String\nscalar Currency\nscalar Longitude\nscalar Float\nscalar PhoneNumber\nscalar Email\nscalar TextArea\nscalar Latitude\nscalar RichTextArea\nscalar EncryptedString\nscalar Long\nscalar JSON\nscalar Time\nscalar Percent\nscalar LongTextArea\nscalar DateTime\nscalar ID\nscalar Boolean\nscalar MultiPicklist\nscalar Base64\nscalar Url\nscalar Picklist\nscalar Double\nscalar Int\nscalar IdOrRef\nscalar Date\n\ntype PercentAggregate implements FieldValue {\n value: Percent\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: PercentValue\n min: PercentValue\n sum: PercentValue\n}\n\ntype StringAggregate implements FieldValue {\n value: String\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: StringValue\n min: StringValue\n}\n\ntype Query {\n uiapi: UIAPI!\n setup: Setup__Setup! @fieldCategory\n analytics: Analytics__Analytics! @fieldCategory\n}\n\ninput EmailOperators {\n eq: Email\n ne: Email\n like: Email\n lt: Email\n gt: Email\n lte: Email\n gte: Email\n in: [Email]\n nin: [Email]\n}\n\ninput DoubleOperators {\n eq: Double\n ne: Double\n lt: Double\n gt: Double\n lte: Double\n gte: Double\n in: [Double]\n nin: [Double]\n}\n\ntype DateOnlyAggregation {\n value: Date\n format: String\n}\n\ntype DateAggregate implements FieldValue {\n value: Date\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n grouping: IntValue\n max: DateValue\n min: DateValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\nenum GroupByFunction {\n DAY_IN_WEEK\n DAY_IN_MONTH\n DAY_IN_YEAR\n WEEK_IN_MONTH\n WEEK_IN_YEAR\n CALENDAR_MONTH\n CALENDAR_QUARTER\n CALENDAR_YEAR\n FISCAL_MONTH\n FISCAL_QUARTER\n FISCAL_YEAR\n DAY_ONLY\n HOUR_IN_DAY\n}\n\ntype RecordTypeInfo {\n available: Boolean!\n defaultRecordTypeMapping: Boolean!\n master: Boolean!\n name: String\n recordTypeId: ID\n}\n\ninput UIAPIMutationsInput {\n \"Determines whether or not all the operations should be rolled back in the event one or more operations fail.\"\n allOrNone: Boolean = true\n}\n\ntype ReferenceToInfo {\n ApiName: String!\n nameFields: [String]!\n objectInfo: ObjectInfo\n}\n\ninterface FieldValue {\n displayValue: String\n}\n\ntype LongitudeValue implements FieldValue {\n value: Longitude\n displayValue: String\n}\n\ntype IntValue implements FieldValue {\n value: Int\n displayValue: String\n format: String\n}\n\ntype UrlValue implements FieldValue {\n value: Url\n displayValue: String\n}\n\ntype LongAggregate implements FieldValue {\n value: Long\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: LongValue\n min: LongValue\n sum: LongValue\n}\n\ninput TimeOperators {\n eq: Time\n ne: Time\n lt: Time\n gt: Time\n lte: Time\n gte: Time\n in: [Time]\n nin: [Time]\n}\n\ntype PicklistValue implements FieldValue {\n value: Picklist\n displayValue: String\n label: String\n}\n\ntype RelatedListInfo @team(name: \"Lists Platform\") {\n childApiName: String!\n relatedListName: String!\n label: String!\n displayColumns: [ListColumn!]!\n orderedByInfo: [ListOrder!]!\n parentApiName: String!\n fieldApiName: String!\n}\n\ninput StringOperators {\n eq: String\n ne: String\n like: String\n lt: String\n gt: String\n lte: String\n gte: String\n in: [String]\n nin: [String]\n}\n\ntype UIAPI {\n query: RecordQuery!\n aggregate: RecordQueryAggregate!\n objectInfos(apiNames: [String!], locale: String, objectInfoInputs: [ObjectInfoInput!]): [ObjectInfo]\n relatedListByName(parentApiName: String!, relatedListName: String!): RelatedListInfo\n}\n\n\"Input for ObjectInfo and PickValues\"\ninput ObjectInfoInput {\n apiName: String!\n recordTypeIDs: [ID!]\n fieldNames: [String!]\n}\n\ninput MultiPicklistOperators {\n eq: MultiPicklist\n ne: MultiPicklist\n includes: [MultiPicklist]\n excludes: [MultiPicklist]\n}\n\ntype DateTimeAggregate implements FieldValue {\n value: DateTime\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n dayOnly: DateOnlyAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n hourInDay: DateFunctionAggregation\n max: DateTimeValue\n min: DateTimeValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\ntype EmailAggregate implements FieldValue {\n value: Email\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: EmailValue\n min: EmailValue\n}\n\ninput GroupByDateFunction {\n function: GroupByFunction\n}\n\ntype RichTextAreaValue implements FieldValue {\n value: RichTextArea\n displayValue: String\n label: String\n}\n\ninput DatePrimitiveOperators {\n eq: Date\n ne: Date\n lt: Date\n gt: Date\n lte: Date\n gte: Date\n in: [Date]\n nin: [Date]\n}\n\ntype TimeAggregate implements FieldValue {\n value: Time\n displayValue: String\n format: String\n hourInDay: DateFunctionAggregation\n}\n\ninput DistanceInput {\n latitude: Latitude!\n longitude: Longitude!\n}\n\nunion PolymorphicParentRelationship @generic = RecordRepresentation\n\nenum AggregateOrderByNumberFunction {\n AVG\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n SUM\n}\n\ntype LongTextAreaValue implements FieldValue {\n value: LongTextArea\n displayValue: String\n label: String\n}\n\ninput OrderByClause {\n order: ResultOrder\n nulls: NullOrder\n}\n\ntype SObject__Field {\n name: String!\n value: String\n}\n\ntype RecordAggregateConnection @generic {\n edges: [RecordAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype LongitudeAggregate implements FieldValue {\n value: Longitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LongitudeValue\n min: LongitudeValue\n sum: DoubleValue\n}\n\ntype DateValue implements FieldValue {\n value: Date\n displayValue: String\n format: String\n}\n\ninput URLOperators {\n eq: Url\n ne: Url\n like: Url\n lt: Url\n gt: Url\n lte: Url\n gte: Url\n in: [Url]\n nin: [Url]\n}\n\ninput LongOperators {\n eq: Long\n ne: Long\n lt: Long\n gt: Long\n lte: Long\n gte: Long\n in: [Long]\n nin: [Long]\n}\n\nenum DataType {\n STRING\n TEXTAREA\n PHONE\n EMAIL\n URL\n ENCRYPTEDSTRING\n BOOLEAN\n CURRENCY\n INT\n LONG\n DOUBLE\n PERCENT\n DATETIME\n TIME\n DATE\n REFERENCE\n PICKLIST\n MULTIPICKLIST\n ADDRESS\n LOCATION\n BASE64\n COMPLEXVALUE\n COMBOBOX\n JSON\n JUNCTIONIDLIST\n ANYTYPE\n}\n\ntype DoubleAggregate implements FieldValue {\n value: Double\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: DoubleValue\n min: DoubleValue\n sum: DoubleValue\n}\n\ninput DateOperators {\n eq: DateInput\n ne: DateInput\n lt: DateInput\n gt: DateInput\n lte: DateInput\n gte: DateInput\n in: [DateInput]\n nin: [DateInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n}\n\ninput GeolocationInput {\n latitude: Latitude!\n longitude: Longitude!\n radius: Float!\n unit: Unit!\n}\n\ninput JoinInput {\n Record: RecordFilter @fieldCategory\n ApiName: String\n}\n\ntype RecordUpdatePayload @generic {\n Record: RecordRepresentation\n success: Boolean @deprecated\n}\n\ninput PercentOperators {\n eq: Percent\n ne: Percent\n lt: Percent\n gt: Percent\n lte: Percent\n gte: Percent\n in: [Percent]\n nin: [Percent]\n}\n\ntype DoubleValue implements FieldValue {\n value: Double\n displayValue: String\n format: String\n}\n\ntype IDAggregate implements FieldValue {\n value: ID\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: IDValue\n min: IDValue\n}\n\ninput RecordCreateInput @generic {\n record: RecordCreateRepresentation! @fieldCategory\n}\n\ninput AggregateOrderByStringClause {\n function: AggregateOrderByStringFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\n\"The return value for the mutation to delete a Record\"\ntype RecordDeletePayload {\n \"The ID of the deleted Record\"\n Id: ID\n}\n\nenum DateLiteral {\n YESTERDAY\n TODAY\n TOMORROW\n LAST_WEEK\n THIS_WEEK\n NEXT_WEEK\n LAST_MONTH\n THIS_MONTH\n NEXT_MONTH\n LAST_90_DAYS\n NEXT_90_DAYS\n LAST_QUARTER\n THIS_QUARTER\n NEXT_QUARTER\n LAST_FISCAL_QUARTER\n THIS_FISCAL_QUARTER\n NEXT_FISCAL_QUARTER\n LAST_YEAR\n THIS_YEAR\n NEXT_YEAR\n LAST_FISCAL_YEAR\n THIS_FISCAL_YEAR\n NEXT_FISCAL_YEAR\n}\n\ntype RecordRepresentation implements Record @generic {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n SetupUserSpecialField: BooleanValue @fieldCategory\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n AnyType: AnyType @fieldCategory\n parentRelationship: RecordRepresentation @fieldCategory\n polymorphicParentRelationship: PolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, upperBound: Int): RecordConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n}\n\ninput OrderByGeolocationClause {\n distance: DistanceInput\n order: ResultOrder\n nulls: NullOrder\n}\n\ntype TextAreaAggregate implements FieldValue {\n value: TextArea\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: TextAreaValue\n min: TextAreaValue\n}\n\nenum GroupByType {\n GROUP_BY\n ROLLUP\n CUBE\n}\n\nenum ResultsOrder {\n ASC\n DESC\n}\n\ntype PicklistAggregate implements FieldValue {\n value: Picklist\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: PicklistValue\n min: PicklistValue\n}\n\ninput RecordUpdateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\ntype DateTimeValue implements FieldValue {\n value: DateTime\n displayValue: String\n format: String\n}\n\n\"Input to the mutation to delete a Record\"\ninput RecordDeleteInput {\n \"The ID of the Record to delete\"\n Id: IdOrRef!\n}\n\ntype ListOrder @team(name: \"Lists Platform\") {\n fieldApiName: String!\n sortDirection: ResultOrder\n}\n\nenum AggregateOrderByStringFunction {\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n}\n\ntype LongValue implements FieldValue {\n value: Long\n displayValue: String\n format: String\n}\n\ntype DependentField {\n controllingField: String!\n dependentFields: [String]!\n}\n\ntype PercentValue implements FieldValue {\n value: Percent\n displayValue: String\n format: String\n}\n\ninput NoFunctionAggregateOrderByClause {\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ntype RecordConnection @generic {\n edges: [RecordEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype FilteredLookupInfo {\n controllingFields: [String]!\n dependent: Boolean!\n optionalFilter: Boolean!\n}\n\ninput PhoneNumberOperators {\n eq: PhoneNumber\n ne: PhoneNumber\n like: PhoneNumber\n lt: PhoneNumber\n gt: PhoneNumber\n lte: PhoneNumber\n gte: PhoneNumber\n in: [PhoneNumber]\n nin: [PhoneNumber]\n}\n\ntype ObjectInfo {\n ApiName: String!\n childRelationships: [ChildRelationship]!\n createable: Boolean!\n custom: Boolean!\n defaultRecordTypeId: ID\n deletable: Boolean!\n dependentFields: [DependentField]!\n feedEnabled: Boolean!\n fields: [Field]!\n keyPrefix: String\n label: String\n labelPlural: String\n layoutable: Boolean!\n mruEnabled: Boolean!\n nameFields: [String]!\n queryable: Boolean!\n recordTypeInfos: [RecordTypeInfo]!\n searchable: Boolean!\n themeInfo: ThemeInfo\n updateable: Boolean!\n locale: String\n}\n\ninput LongitudeOperators {\n eq: Longitude\n ne: Longitude\n lt: Longitude\n gt: Longitude\n lte: Longitude\n gte: Longitude\n in: [Longitude]\n nin: [Longitude]\n}\n\ninterface Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype StandardField implements Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype PicklistField implements Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n picklistValuesByRecordTypeIDs: [PicklistValueByRecordTypeIDs]\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype PicklistValueByRecordTypeIDs {\n recordTypeID: String!\n controllerValues: [ControllerValues!]\n picklistValues: [PicklistValues!]\n defaultValue: PicklistValues\n}\n\ntype ControllerValues {\n value: String\n index: Int\n}\n\ntype PicklistValues {\n value: String\n label: String\n validFor: [Int]\n attributes: PicklistAttributes\n}\n\ntype PicklistAttributes {\n picklistAtrributesValueType: String\n connectDisplayName: String\n internalName: String\n}\n\ninput DateTimeFunctionInput {\n value: DatePrimitiveOperators\n convertTimezoneValue: DatePrimitiveOperators\n}\n\ntype Base64Value implements FieldValue {\n value: Base64\n displayValue: String\n}\n\ntype CompoundField @generic {\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n}\n\ninput RecordUpdateInput @generic {\n Id: IdOrRef!\n record: RecordUpdateRepresentation! @fieldCategory\n}\n\ninput DateTimeInput {\n value: DateTime\n literal: DateLiteral\n range: DateRange\n}\n\ntype ChildRelationship {\n childObjectApiName: String!\n fieldName: String\n junctionIdListNames: [String]!\n junctionReferenceTo: [String]!\n relationshipName: String\n objectInfo: ObjectInfo\n}\n\ntype RecordResult @generic {\n aggregate: RecordAggregate\n}\n\ntype PageInfo {\n hasNextPage: Boolean!\n hasPreviousPage: Boolean!\n startCursor: String\n endCursor: String\n}\n\ntype CurrencyValue implements FieldValue {\n value: Currency\n displayValue: String\n format: String\n convertCurrency: Currency\n}\n\ntype DateFunctionAggregation {\n value: Long\n format: String\n}\n\ninput PolymorphicParentRelationshipRecordOrderBy @generic {\n RecordOrderBy: RecordOrderBy @fieldCategory\n}\n\ntype RecordCreatePayload @generic {\n Record: RecordRepresentation\n}\n\ninput PolymorphicParentRelationshipGroupBy @generic {\n RecordGroupBy: RecordGroupBy @fieldCategory\n}\n\ntype BooleanValue implements FieldValue {\n value: Boolean\n displayValue: String\n}\n\ntype StringValue implements FieldValue {\n value: String\n displayValue: String\n label: String\n}\n\ninput IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: JoinInput\n ninq: JoinInput\n}\n\ntype PhoneNumberAggregate implements FieldValue {\n value: PhoneNumber\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: PhoneNumberValue\n min: PhoneNumberValue\n}\n\ntype CurrencyAggregate implements FieldValue {\n value: Currency\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: CurrencyValue\n min: CurrencyValue\n sum: CurrencyValue\n}\n\ninput BooleanOperators {\n eq: Boolean\n ne: Boolean\n}\n\ntype MultiPicklistValue implements FieldValue {\n value: MultiPicklist\n displayValue: String\n label: String\n}\n\ntype ListColumn @team(name: \"Lists Platform\") {\n fieldApiName: String!\n label: String!\n lookupId: String\n sortable: Boolean\n}\n\ntype LatitudeAggregate implements FieldValue {\n value: Latitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LatitudeValue\n min: LatitudeValue\n sum: DoubleValue\n}\n\ninput CurrencyOperators {\n eq: Currency\n ne: Currency\n lt: Currency\n gt: Currency\n lte: Currency\n gte: Currency\n in: [Currency]\n nin: [Currency]\n}\n\ntype LatitudeValue implements FieldValue {\n value: Latitude\n displayValue: String\n}\n\ninput GroupByClause {\n group: Boolean\n}\n\ntype RecordEdge @generic {\n node: RecordRepresentation\n cursor: String!\n}\n\nenum NullOrder {\n FIRST\n LAST\n}\n\ntype PhoneNumberValue implements FieldValue {\n value: PhoneNumber\n displayValue: String\n}\n\n# RecordScope is an empty enum\n# enum RecordScope @generic {\n# }\n\ninput TextAreaOperators {\n eq: TextArea\n ne: TextArea\n like: TextArea\n lt: TextArea\n gt: TextArea\n lte: TextArea\n gte: TextArea\n in: [TextArea]\n nin: [TextArea]\n}\n\ntype TextAreaValue implements FieldValue {\n value: TextArea\n displayValue: String\n label: String\n}\n\ntype RecordAggregateEdge @generic {\n node: RecordResult\n cursor: String!\n}\n\ntype ThemeInfo {\n color: String\n iconUrl: String\n}\n\ntype UrlAggregate implements FieldValue {\n value: Url\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: UrlValue\n min: UrlValue\n}\n\ntype IDValue implements FieldValue {\n value: ID\n displayValue: String\n}\n\nenum Unit {\n MI\n KM\n}\n\ninput PolymorphicParentRelationshipOrderBy @generic {\n RecordAggregateOrderBy: RecordAggregateOrderBy @fieldCategory\n}\n\nenum NullsOrder {\n FIRST\n LAST\n}\n\nenum ResultOrder {\n ASC\n DESC\n}\n\ninput RecordOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput PicklistOperators {\n eq: Picklist\n ne: Picklist\n in: [Picklist]\n nin: [Picklist]\n like: Picklist\n lt: Picklist\n gt: Picklist\n lte: Picklist\n gte: Picklist\n}\n\ninput RecordFilter @generic {\n and: [RecordFilter]\n or: [RecordFilter]\n not: RecordFilter\n parentRelationshipRecordFilter: RecordFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: PolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n IdOperator: IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ntype TimeValue implements FieldValue {\n value: Time\n displayValue: String\n format: String\n}\n\ninput GeolocationOperators {\n lt: GeolocationInput\n gt: GeolocationInput\n}\n\ninput LatitudeOperators {\n eq: Latitude\n ne: Latitude\n lt: Latitude\n gt: Latitude\n lte: Latitude\n gte: Latitude\n in: [Latitude]\n nin: [Latitude]\n}\n\ntype IntAggregate implements FieldValue {\n value: Int\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: IntValue\n min: IntValue\n sum: LongValue\n}\n\ntype RecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: RecordAggregate @fieldCategory\n polymorphicParentRelationship: PolymorphicAggregateParentRelationship @fieldCategory\n}\n\nenum SObject__FieldType {\n ALL\n STANDARD\n CUSTOM\n}\n\ntype JSONValue implements FieldValue {\n value: JSON\n displayValue: String\n}\n\ntype EmailValue implements FieldValue {\n value: Email\n displayValue: String\n}\n\ninput DateFunctionInput {\n value: LongOperators\n convertTimezoneValue: LongOperators\n}\n\n# Mutations are not supported by Luvio.\n# type Mutation {\n# uiapi(input: UIAPIMutationsInput): UIAPIMutations!\n# }\n\nunion PolymorphicAggregateParentRelationship @generic = RecordAggregate\n\ninput LongTextAreaOperators {\n eq: LongTextArea\n ne: LongTextArea\n like: LongTextArea\n lt: LongTextArea\n gt: LongTextArea\n lte: LongTextArea\n gte: LongTextArea\n in: [LongTextArea]\n nin: [LongTextArea]\n}\n\ninput DateTimeOperators {\n eq: DateTimeInput\n ne: DateTimeInput\n lt: DateTimeInput\n gt: DateTimeInput\n lte: DateTimeInput\n gte: DateTimeInput\n in: [DateTimeInput]\n nin: [DateTimeInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n DAY_ONLY: DateTimeFunctionInput\n HOUR_IN_DAY: DateFunctionInput\n}\n\ntype BooleanAggregate implements FieldValue {\n value: Boolean\n displayValue: String\n grouping: IntValue\n}\n\ntype RecordQueryAggregate {\n # scope should be RecordScope, but it is an empty enum\n recordQueryAggregate(first: Int, after: String, where: RecordFilter, orderBy: RecordAggregateOrderBy, scope: String, groupBy: RecordGroupBy, upperBound: Int): RecordAggregateConnection @fieldCategory\n}\n\ninput RecordCreateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\nenum FieldExtraTypeInfo {\n IMAGE_URL\n EXTERNAL_LOOKUP\n INDIRECT_LOOKUP\n PERSONNAME\n SWITCHABLE_PERSONNAME\n PLAINTEXTAREA\n RICHTEXTAREA\n}\n\ntype RateLimit {\n cost: Long\n limit: Long\n remaining: Long\n resetAt: DateTime\n}\n\ninput DateRange {\n last_n_days: Int\n next_n_days: Int\n last_n_weeks: Int\n next_n_weeks: Int\n last_n_months: Int\n next_n_months: Int\n last_n_quarters: Int\n next_n_quarters: Int\n last_n_fiscal_quarters: Int\n next_n_fiscal_quarters: Int\n last_n_years: Int\n next_n_years: Int\n last_n_fiscal_years: Int\n next_n_fiscal_years: Int\n n_days_ago: Int\n n_weeks_ago: Int\n n_months_ago: Int\n n_quarters_ago: Int\n n_years_ago: Int\n n_fiscal_quarters_ago: Int\n n_fiscal_years_ago: Int\n}\n\ntype UIAPIMutations {\n recordCreate(input: RecordCreateInput!): RecordCreatePayload @fieldCategory\n recordDelete(input: RecordDeleteInput!): RecordDeletePayload @fieldCategory\n recordUpdate(input: RecordUpdateInput!): RecordUpdatePayload @fieldCategory\n}\n\ninput IntegerOperators {\n eq: Int\n ne: Int\n lt: Int\n gt: Int\n lte: Int\n gte: Int\n in: [Int]\n nin: [Int]\n}\n\ntype EncryptedStringValue implements FieldValue {\n value: EncryptedString\n displayValue: String\n}\n\ninterface Record {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n}\n\ninput PolymorphicParentRelationshipRecordFilter @generic {\n RecordFilter: RecordFilter @fieldCategory\n}\n\n\"\"\"\nA type that can contain any of the following types: Boolean, Date, DateTime, Double, String.\nFormat and Label are not supported by AnyType and displayValue is an unformatted string representation of the value.\n\"\"\"\nunion AnyType = BooleanValue | DateValue | DateTimeValue | DoubleValue | StringValue\n\ninput AggregateOrderByNumberClause {\n function: AggregateOrderByNumberFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ninput DateInput {\n value: Date\n literal: DateLiteral\n range: DateRange\n}\n\ninput RecordGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: RecordGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: PolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\ntype RecordQuery {\n # scope should be RecordScope, but it is an empty enum\n recordQuery(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, scope: String, upperBound: Int, updateMRU: Boolean): RecordConnection @fieldCategory\n}\n\ninput RecordAggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipOrderBy @fieldCategory\n}\n\ninput IgnoreRule {\n rule: String!\n teamName: String!\n justification: String!\n}\n\ndirective @generic on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT\ndirective @fieldCategory on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE\ndirective @category(name: String!) on FIELD\n\"Specifies the team name for a type\"\ndirective @team(name: String!) on OBJECT | INPUT_OBJECT | INTERFACE | ENUM | UNION | SCALAR\n\"Specifies the validation rules to ignore for this element.\"\ndirective @ignoreRule(rules: [IgnoreRule!]!) on OBJECT\n | INPUT_OBJECT\n | INTERFACE\n | ENUM\n | UNION\n | SCALAR\n | FIELD_DEFINITION\n | INPUT_FIELD_DEFINITION\n | ARGUMENT_DEFINITION\n | ENUM_VALUE\ndirective @optional on FIELD\n\ntype __Type {\n kind: __TypeKind!\n name: String\n description: String\n fields(includeDeprecated: Boolean = false): [__Field!]\n interfaces: [__Type!]\n possibleTypes: [__Type!]\n enumValues(includeDeprecated: Boolean = false): [__EnumValue!]\n inputFields: [__InputValue!]\n ofType: __Type\n}";
|
|
47622
47704
|
|
|
47623
47705
|
// Define additional schema that is missing from uiapi that we use in local evaluation
|
|
47624
47706
|
const additionalSchemaDefinitions = /* GraphQL */ `
|
|
@@ -48848,6 +48930,10 @@ async function fetchObjectInfos(objectInfotree, pathToObjectApiNamesMap, objectI
|
|
|
48848
48930
|
}
|
|
48849
48931
|
// fetch 'ObjectInfo' before the next fields
|
|
48850
48932
|
const objectInfosAtThisLevel = await objectInfoService.getObjectInfos(apiNames);
|
|
48933
|
+
if (keys$3(objectInfosAtThisLevel).length < apiNames.length) {
|
|
48934
|
+
// eslint-disable-next-line
|
|
48935
|
+
throw new Error(`Unable to resolve ObjectInfo(s) for ${apiNames.join(', ')}`);
|
|
48936
|
+
}
|
|
48851
48937
|
updatedObjectInfoMap = { ...objectInfoMap, ...objectInfosAtThisLevel };
|
|
48852
48938
|
}
|
|
48853
48939
|
for (const nodeInfo of validObjectInfoNodes) {
|
|
@@ -49166,6 +49252,10 @@ function isPolymorphicFieldPath(path, pathToObjectApiNamesMap, objectInfos) {
|
|
|
49166
49252
|
return false;
|
|
49167
49253
|
}
|
|
49168
49254
|
const parentObjectInfo = objectInfos[parentObjectApiNames[0]];
|
|
49255
|
+
// this should not be undefined, but lets catch it if we do end up in that state.
|
|
49256
|
+
if (parentObjectInfo === undefined) {
|
|
49257
|
+
throw new Error(`ObjectInfo is missing for ${parentObjectApiNames[0]} for ${parentApiPath}`);
|
|
49258
|
+
}
|
|
49169
49259
|
const relationshipField = referenceIdFieldForRelationship(lastSegment);
|
|
49170
49260
|
let fieldDefinition = parentObjectInfo.fields[relationshipField];
|
|
49171
49261
|
if (fieldDefinition === undefined) {
|
|
@@ -54631,7 +54721,7 @@ function selectChildResourceParams(luvio, childResources, resourceParams) {
|
|
|
54631
54721
|
reader.exitPath();
|
|
54632
54722
|
}
|
|
54633
54723
|
reader.assignNonScalar(sink, envelopePath, results);
|
|
54634
|
-
deepFreeze(sink);
|
|
54724
|
+
deepFreeze$1(sink);
|
|
54635
54725
|
reader.exitPath();
|
|
54636
54726
|
return sink;
|
|
54637
54727
|
},
|
|
@@ -54741,7 +54831,7 @@ function ingestSuccessChildResourceParams(luvio, childConfigs, childResourcePara
|
|
|
54741
54831
|
const childSnapshotData = {
|
|
54742
54832
|
results: childSnapshotDataResponses,
|
|
54743
54833
|
};
|
|
54744
|
-
deepFreeze(childSnapshotData);
|
|
54834
|
+
deepFreeze$1(childSnapshotData);
|
|
54745
54835
|
return {
|
|
54746
54836
|
childSnapshotData: childSnapshotData,
|
|
54747
54837
|
seenRecords,
|
|
@@ -55764,6 +55854,7 @@ function createSfsSideEffectHooks(durableRecordStore) {
|
|
|
55764
55854
|
const { create, freeze, keys, entries } = Object;
|
|
55765
55855
|
const { isArray: isArray$1 } = Array;
|
|
55766
55856
|
const { stringify: stringify$2, parse: parse$2 } = JSON;
|
|
55857
|
+
const WeakSetConstructor = WeakSet;
|
|
55767
55858
|
const LogLevelMap = {
|
|
55768
55859
|
TRACE: 4,
|
|
55769
55860
|
DEBUG: 3,
|
|
@@ -55843,43 +55934,79 @@ function buildSubscribableResult$1(result, subscribe, refresh) {
|
|
|
55843
55934
|
return err$1({ failure: result.error, subscribe, refresh });
|
|
55844
55935
|
}
|
|
55845
55936
|
}
|
|
55846
|
-
function resolvedPromiseLike$
|
|
55847
|
-
if (isPromiseLike$
|
|
55937
|
+
function resolvedPromiseLike$2(result) {
|
|
55938
|
+
if (isPromiseLike$2(result)) {
|
|
55848
55939
|
return result.then((nextResult) => nextResult);
|
|
55849
55940
|
}
|
|
55850
55941
|
return {
|
|
55851
55942
|
then: (onFulfilled, _onRejected) => {
|
|
55852
55943
|
try {
|
|
55853
|
-
return resolvedPromiseLike$
|
|
55944
|
+
return resolvedPromiseLike$2(onFulfilled(result));
|
|
55854
55945
|
} catch (e) {
|
|
55855
55946
|
if (onFulfilled === void 0) {
|
|
55856
|
-
return resolvedPromiseLike$
|
|
55947
|
+
return resolvedPromiseLike$2(result);
|
|
55857
55948
|
}
|
|
55858
|
-
return rejectedPromiseLike$
|
|
55949
|
+
return rejectedPromiseLike$2(e);
|
|
55859
55950
|
}
|
|
55860
55951
|
}
|
|
55861
55952
|
};
|
|
55862
55953
|
}
|
|
55863
|
-
function rejectedPromiseLike$
|
|
55864
|
-
if (isPromiseLike$
|
|
55954
|
+
function rejectedPromiseLike$2(reason) {
|
|
55955
|
+
if (isPromiseLike$2(reason)) {
|
|
55865
55956
|
return reason.then((nextResult) => nextResult);
|
|
55866
55957
|
}
|
|
55867
55958
|
return {
|
|
55868
55959
|
then: (_onFulfilled, onRejected) => {
|
|
55869
55960
|
if (typeof onRejected === "function") {
|
|
55870
55961
|
try {
|
|
55871
|
-
return resolvedPromiseLike$
|
|
55962
|
+
return resolvedPromiseLike$2(onRejected(reason));
|
|
55872
55963
|
} catch (e) {
|
|
55873
|
-
return rejectedPromiseLike$
|
|
55964
|
+
return rejectedPromiseLike$2(e);
|
|
55874
55965
|
}
|
|
55875
55966
|
}
|
|
55876
|
-
return rejectedPromiseLike$
|
|
55967
|
+
return rejectedPromiseLike$2(reason);
|
|
55877
55968
|
}
|
|
55878
55969
|
};
|
|
55879
55970
|
}
|
|
55880
|
-
function isPromiseLike$
|
|
55971
|
+
function isPromiseLike$2(x) {
|
|
55881
55972
|
return typeof (x == null ? void 0 : x.then) === "function";
|
|
55882
55973
|
}
|
|
55974
|
+
function deepEquals$1(x, y) {
|
|
55975
|
+
if (x === void 0) {
|
|
55976
|
+
return y === void 0;
|
|
55977
|
+
} else if (x === null) {
|
|
55978
|
+
return y === null;
|
|
55979
|
+
} else if (y === null) {
|
|
55980
|
+
return x === null;
|
|
55981
|
+
} else if (isArray$1(x)) {
|
|
55982
|
+
if (!isArray$1(y) || x.length !== y.length) {
|
|
55983
|
+
return false;
|
|
55984
|
+
}
|
|
55985
|
+
for (let i = 0; i < x.length; ++i) {
|
|
55986
|
+
if (!deepEquals$1(x[i], y[i])) {
|
|
55987
|
+
return false;
|
|
55988
|
+
}
|
|
55989
|
+
}
|
|
55990
|
+
return true;
|
|
55991
|
+
} else if (typeof x === "object") {
|
|
55992
|
+
if (typeof y !== "object") {
|
|
55993
|
+
return false;
|
|
55994
|
+
}
|
|
55995
|
+
const xkeys = Object.keys(x);
|
|
55996
|
+
const ykeys = Object.keys(y);
|
|
55997
|
+
if (xkeys.length !== ykeys.length) {
|
|
55998
|
+
return false;
|
|
55999
|
+
}
|
|
56000
|
+
for (let i = 0; i < xkeys.length; ++i) {
|
|
56001
|
+
const key = xkeys[i];
|
|
56002
|
+
if (!deepEquals$1(x[key], y[key])) {
|
|
56003
|
+
return false;
|
|
56004
|
+
}
|
|
56005
|
+
}
|
|
56006
|
+
return true;
|
|
56007
|
+
}
|
|
56008
|
+
return x === y;
|
|
56009
|
+
}
|
|
55883
56010
|
function stableJSONStringify(node) {
|
|
55884
56011
|
if (node && node.toJSON && typeof node.toJSON === "function") {
|
|
55885
56012
|
node = node.toJSON();
|
|
@@ -55970,6 +56097,24 @@ class FetchResponse extends Error {
|
|
|
55970
56097
|
this.statusText = getStatusText(status);
|
|
55971
56098
|
}
|
|
55972
56099
|
}
|
|
56100
|
+
const deeplyFrozen = new WeakSetConstructor();
|
|
56101
|
+
function deepFreeze(value) {
|
|
56102
|
+
if (typeof value !== "object" || value === null || deeplyFrozen.has(value)) {
|
|
56103
|
+
return;
|
|
56104
|
+
}
|
|
56105
|
+
deeplyFrozen.add(value);
|
|
56106
|
+
if (isArray$1(value)) {
|
|
56107
|
+
for (let i = 0, len = value.length; i < len; i += 1) {
|
|
56108
|
+
deepFreeze(value[i]);
|
|
56109
|
+
}
|
|
56110
|
+
} else {
|
|
56111
|
+
const keys$1 = keys(value);
|
|
56112
|
+
for (let i = 0, len = keys$1.length; i < len; i += 1) {
|
|
56113
|
+
deepFreeze(value[keys$1[i]]);
|
|
56114
|
+
}
|
|
56115
|
+
}
|
|
56116
|
+
freeze(value);
|
|
56117
|
+
}
|
|
55973
56118
|
class InternalError extends Error {
|
|
55974
56119
|
constructor(data) {
|
|
55975
56120
|
super();
|
|
@@ -55984,6 +56129,15 @@ class UserVisibleError extends Error {
|
|
|
55984
56129
|
this.type = "user-visible";
|
|
55985
56130
|
}
|
|
55986
56131
|
}
|
|
56132
|
+
function isUserVisibleError$1(error) {
|
|
56133
|
+
return error instanceof Error && "type" in error && error.type === "user-visible";
|
|
56134
|
+
}
|
|
56135
|
+
function logError$1(error) {
|
|
56136
|
+
if (isUserVisibleError$1(error)) {
|
|
56137
|
+
return;
|
|
56138
|
+
}
|
|
56139
|
+
console.error("OneStore Command threw an error that we did not expect", error);
|
|
56140
|
+
}
|
|
55987
56141
|
|
|
55988
56142
|
/*!
|
|
55989
56143
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -56040,7 +56194,7 @@ let NetworkCommand$1 = class NetworkCommand extends BaseCommand {
|
|
|
56040
56194
|
async afterRequestHooks(_options) {
|
|
56041
56195
|
}
|
|
56042
56196
|
};
|
|
56043
|
-
function buildServiceDescriptor$
|
|
56197
|
+
function buildServiceDescriptor$n() {
|
|
56044
56198
|
return {
|
|
56045
56199
|
type: "networkCommandBaseClass",
|
|
56046
56200
|
version: "1.0",
|
|
@@ -56139,10 +56293,10 @@ class AuraNetworkCommand extends NetworkCommand$1 {
|
|
|
56139
56293
|
} else if (this.shouldUseFetch()) {
|
|
56140
56294
|
return this.convertFetchResponseToData(this.services.fetch(...this.fetchParams));
|
|
56141
56295
|
}
|
|
56142
|
-
return resolvedPromiseLike$
|
|
56296
|
+
return resolvedPromiseLike$2(err$1(toError("Aura/Fetch network services not found")));
|
|
56143
56297
|
}
|
|
56144
56298
|
}
|
|
56145
|
-
function buildServiceDescriptor$
|
|
56299
|
+
function buildServiceDescriptor$m() {
|
|
56146
56300
|
return {
|
|
56147
56301
|
type: "auraNetworkCommandBaseClass",
|
|
56148
56302
|
version: "1.0",
|
|
@@ -56192,41 +56346,41 @@ function buildSubscribableResult(result, subscribe, refresh) {
|
|
|
56192
56346
|
return err({ failure: result.error, subscribe, refresh });
|
|
56193
56347
|
}
|
|
56194
56348
|
}
|
|
56195
|
-
function resolvedPromiseLike$
|
|
56196
|
-
if (isPromiseLike$
|
|
56349
|
+
function resolvedPromiseLike$1(result) {
|
|
56350
|
+
if (isPromiseLike$1(result)) {
|
|
56197
56351
|
return result.then((nextResult) => nextResult);
|
|
56198
56352
|
}
|
|
56199
56353
|
return {
|
|
56200
56354
|
then: (onFulfilled, _onRejected) => {
|
|
56201
56355
|
try {
|
|
56202
|
-
return resolvedPromiseLike$
|
|
56356
|
+
return resolvedPromiseLike$1(onFulfilled(result));
|
|
56203
56357
|
} catch (e) {
|
|
56204
56358
|
if (onFulfilled === void 0) {
|
|
56205
|
-
return resolvedPromiseLike$
|
|
56359
|
+
return resolvedPromiseLike$1(result);
|
|
56206
56360
|
}
|
|
56207
|
-
return rejectedPromiseLike$
|
|
56361
|
+
return rejectedPromiseLike$1(e);
|
|
56208
56362
|
}
|
|
56209
56363
|
}
|
|
56210
56364
|
};
|
|
56211
56365
|
}
|
|
56212
|
-
function rejectedPromiseLike$
|
|
56213
|
-
if (isPromiseLike$
|
|
56366
|
+
function rejectedPromiseLike$1(reason) {
|
|
56367
|
+
if (isPromiseLike$1(reason)) {
|
|
56214
56368
|
return reason.then((nextResult) => nextResult);
|
|
56215
56369
|
}
|
|
56216
56370
|
return {
|
|
56217
56371
|
then: (_onFulfilled, onRejected) => {
|
|
56218
56372
|
if (typeof onRejected === "function") {
|
|
56219
56373
|
try {
|
|
56220
|
-
return resolvedPromiseLike$
|
|
56374
|
+
return resolvedPromiseLike$1(onRejected(reason));
|
|
56221
56375
|
} catch (e) {
|
|
56222
|
-
return rejectedPromiseLike$
|
|
56376
|
+
return rejectedPromiseLike$1(e);
|
|
56223
56377
|
}
|
|
56224
56378
|
}
|
|
56225
|
-
return rejectedPromiseLike$
|
|
56379
|
+
return rejectedPromiseLike$1(reason);
|
|
56226
56380
|
}
|
|
56227
56381
|
};
|
|
56228
56382
|
}
|
|
56229
|
-
function isPromiseLike$
|
|
56383
|
+
function isPromiseLike$1(x) {
|
|
56230
56384
|
return typeof (x == null ? void 0 : x.then) === "function";
|
|
56231
56385
|
}
|
|
56232
56386
|
function deepEquals(x, y) {
|
|
@@ -56461,7 +56615,7 @@ class CacheControlCommand extends BaseCommand {
|
|
|
56461
56615
|
});
|
|
56462
56616
|
}
|
|
56463
56617
|
}
|
|
56464
|
-
return resolvedPromiseLike$
|
|
56618
|
+
return resolvedPromiseLike$1(void 0);
|
|
56465
56619
|
}
|
|
56466
56620
|
get operationType() {
|
|
56467
56621
|
return "query";
|
|
@@ -56737,7 +56891,7 @@ let AuraCacheControlCommand$1 = class AuraCacheControlCommand extends CacheContr
|
|
|
56737
56891
|
} else if (this.shouldUseFetch()) {
|
|
56738
56892
|
return this.convertFetchResponseToData(this.services.fetch(...this.fetchParams));
|
|
56739
56893
|
}
|
|
56740
|
-
return resolvedPromiseLike$
|
|
56894
|
+
return resolvedPromiseLike$2(err$1(toError("Aura/Fetch network services not found")));
|
|
56741
56895
|
}
|
|
56742
56896
|
coerceAuraErrors(auraErrors) {
|
|
56743
56897
|
return toError(auraErrors[0]);
|
|
@@ -56810,11 +56964,11 @@ class AuraNormalizedCacheControlCommand extends AuraCacheControlCommand$1 {
|
|
|
56810
56964
|
readFromCache(cache) {
|
|
56811
56965
|
const data = this.buildResultType().query(cache, this.buildQuery());
|
|
56812
56966
|
if (data.isErr()) {
|
|
56813
|
-
return resolvedPromiseLike$
|
|
56967
|
+
return resolvedPromiseLike$2(
|
|
56814
56968
|
err$1(new Error(`Failed to build data from type: ${stringify$2(data.error)}`))
|
|
56815
56969
|
);
|
|
56816
56970
|
}
|
|
56817
|
-
return resolvedPromiseLike$
|
|
56971
|
+
return resolvedPromiseLike$2(ok$1(data.value));
|
|
56818
56972
|
}
|
|
56819
56973
|
writeToCache(cache, networkResult) {
|
|
56820
56974
|
if (networkResult.isOk()) {
|
|
@@ -56823,10 +56977,10 @@ class AuraNormalizedCacheControlCommand extends AuraCacheControlCommand$1 {
|
|
|
56823
56977
|
this.buildWriteInput(networkResult.value)
|
|
56824
56978
|
);
|
|
56825
56979
|
}
|
|
56826
|
-
return resolvedPromiseLike$
|
|
56980
|
+
return resolvedPromiseLike$2(void 0);
|
|
56827
56981
|
}
|
|
56828
56982
|
}
|
|
56829
|
-
function buildServiceDescriptor$
|
|
56983
|
+
function buildServiceDescriptor$l() {
|
|
56830
56984
|
return {
|
|
56831
56985
|
type: "auraNormalizedCacheControlCommand",
|
|
56832
56986
|
version: "1.0",
|
|
@@ -56876,7 +57030,7 @@ class AuraCacheControlCommand extends CacheControlCommand {
|
|
|
56876
57030
|
} else if (this.shouldUseFetch()) {
|
|
56877
57031
|
return this.convertFetchResponseToData(this.services.fetch(...this.fetchParams));
|
|
56878
57032
|
}
|
|
56879
|
-
return resolvedPromiseLike$
|
|
57033
|
+
return resolvedPromiseLike$2(err$1(toError("Aura/Fetch network services not found")));
|
|
56880
57034
|
}
|
|
56881
57035
|
coerceAuraErrors(auraErrors) {
|
|
56882
57036
|
return toError(auraErrors[0]);
|
|
@@ -56950,9 +57104,9 @@ class AuraResourceCacheControlCommand extends AuraCacheControlCommand {
|
|
|
56950
57104
|
var _a;
|
|
56951
57105
|
const data = (_a = cache.get(this.buildKey())) == null ? void 0 : _a.value;
|
|
56952
57106
|
if (data === void 0) {
|
|
56953
|
-
return resolvedPromiseLike$
|
|
57107
|
+
return resolvedPromiseLike$2(err$1(new Error("Failed to find data in cache")));
|
|
56954
57108
|
}
|
|
56955
|
-
return resolvedPromiseLike$
|
|
57109
|
+
return resolvedPromiseLike$2(ok$1(data));
|
|
56956
57110
|
}
|
|
56957
57111
|
writeToCache(cache, networkResult) {
|
|
56958
57112
|
if (networkResult.isOk()) {
|
|
@@ -56963,13 +57117,13 @@ class AuraResourceCacheControlCommand extends AuraCacheControlCommand {
|
|
|
56963
57117
|
}
|
|
56964
57118
|
});
|
|
56965
57119
|
}
|
|
56966
|
-
return resolvedPromiseLike$
|
|
57120
|
+
return resolvedPromiseLike$2(void 0);
|
|
56967
57121
|
}
|
|
56968
57122
|
buildKey() {
|
|
56969
57123
|
return `{"endpoint":${this.endpoint},"params":${stableJSONStringify(this.auraParams)}}`;
|
|
56970
57124
|
}
|
|
56971
57125
|
}
|
|
56972
|
-
function buildServiceDescriptor$
|
|
57126
|
+
function buildServiceDescriptor$k() {
|
|
56973
57127
|
return {
|
|
56974
57128
|
type: "auraResourceCacheControlCommand",
|
|
56975
57129
|
version: "1.0",
|
|
@@ -57147,7 +57301,7 @@ _FetchNetworkCommand.availableDecorators = {
|
|
|
57147
57301
|
abortable: createAbortableDecorator
|
|
57148
57302
|
};
|
|
57149
57303
|
let FetchNetworkCommand = _FetchNetworkCommand;
|
|
57150
|
-
function buildServiceDescriptor$
|
|
57304
|
+
function buildServiceDescriptor$j() {
|
|
57151
57305
|
return {
|
|
57152
57306
|
type: "fetchNetworkCommandBaseClass",
|
|
57153
57307
|
version: "1.0",
|
|
@@ -57220,11 +57374,11 @@ class HttpNormalizedCacheControlCommand extends HttpCacheControlCommand {
|
|
|
57220
57374
|
readFromCache(cache) {
|
|
57221
57375
|
const data = this.buildResultType().query(cache, this.buildQuery());
|
|
57222
57376
|
if (data.isErr()) {
|
|
57223
|
-
return resolvedPromiseLike$
|
|
57377
|
+
return resolvedPromiseLike$2(
|
|
57224
57378
|
err$1(new Error(`Failed to build data from type: ${stringify$2(data.error)}`))
|
|
57225
57379
|
);
|
|
57226
57380
|
}
|
|
57227
|
-
return resolvedPromiseLike$
|
|
57381
|
+
return resolvedPromiseLike$2(ok$1(data.value));
|
|
57228
57382
|
}
|
|
57229
57383
|
writeToCache(cache, networkResult) {
|
|
57230
57384
|
if (networkResult.isOk()) {
|
|
@@ -57233,10 +57387,10 @@ class HttpNormalizedCacheControlCommand extends HttpCacheControlCommand {
|
|
|
57233
57387
|
this.buildWriteInput(networkResult.value)
|
|
57234
57388
|
);
|
|
57235
57389
|
}
|
|
57236
|
-
return resolvedPromiseLike$
|
|
57390
|
+
return resolvedPromiseLike$2(void 0);
|
|
57237
57391
|
}
|
|
57238
57392
|
}
|
|
57239
|
-
function buildServiceDescriptor$
|
|
57393
|
+
function buildServiceDescriptor$i() {
|
|
57240
57394
|
return {
|
|
57241
57395
|
type: "httpNormalizedCacheControlCommand",
|
|
57242
57396
|
version: "1.0",
|
|
@@ -57489,7 +57643,7 @@ let DefaultCache$1 = class DefaultCache {
|
|
|
57489
57643
|
return new FixedTimeWritableCache$1(this, generatedTime);
|
|
57490
57644
|
}
|
|
57491
57645
|
};
|
|
57492
|
-
function buildServiceDescriptor$
|
|
57646
|
+
function buildServiceDescriptor$h() {
|
|
57493
57647
|
return {
|
|
57494
57648
|
type: "cache",
|
|
57495
57649
|
version: "1.0",
|
|
@@ -57712,7 +57866,7 @@ class CacheController {
|
|
|
57712
57866
|
yield* this.services.cacheInclusionPolicy.findAndModify(query, cacheUpdate);
|
|
57713
57867
|
}
|
|
57714
57868
|
}
|
|
57715
|
-
function buildServiceDescriptor$
|
|
57869
|
+
function buildServiceDescriptor$g(cache, cacheInclusionPolicy, instrumentation) {
|
|
57716
57870
|
return {
|
|
57717
57871
|
type: "cacheController",
|
|
57718
57872
|
version: "1.0",
|
|
@@ -57763,7 +57917,7 @@ function buildInstrumentCommand(services) {
|
|
|
57763
57917
|
};
|
|
57764
57918
|
};
|
|
57765
57919
|
}
|
|
57766
|
-
function buildServiceDescriptor$
|
|
57920
|
+
function buildServiceDescriptor$f(instrumentation) {
|
|
57767
57921
|
return {
|
|
57768
57922
|
type: "instrumentCommand",
|
|
57769
57923
|
version: "1.0",
|
|
@@ -58033,7 +58187,7 @@ class O11yInstrumentation {
|
|
|
58033
58187
|
this.metrics = new O11yOTelMetricsAPI(this.services);
|
|
58034
58188
|
}
|
|
58035
58189
|
}
|
|
58036
|
-
function buildServiceDescriptor$
|
|
58190
|
+
function buildServiceDescriptor$e(logger) {
|
|
58037
58191
|
return {
|
|
58038
58192
|
type: "instrumentation",
|
|
58039
58193
|
version: "1.0",
|
|
@@ -58046,48 +58200,6 @@ function buildServiceDescriptor$8(logger) {
|
|
|
58046
58200
|
* All rights reserved.
|
|
58047
58201
|
* For full license text, see the LICENSE.txt file
|
|
58048
58202
|
*/
|
|
58049
|
-
/*!
|
|
58050
|
-
* Copyright (c) 2022, Salesforce, Inc.,
|
|
58051
|
-
* All rights reserved.
|
|
58052
|
-
* For full license text, see the LICENSE.txt file
|
|
58053
|
-
*/
|
|
58054
|
-
function resolvedPromiseLike$1(result) {
|
|
58055
|
-
if (isPromiseLike$1(result)) {
|
|
58056
|
-
return result.then((nextResult) => nextResult);
|
|
58057
|
-
}
|
|
58058
|
-
return {
|
|
58059
|
-
then: (onFulfilled, _onRejected) => {
|
|
58060
|
-
try {
|
|
58061
|
-
return resolvedPromiseLike$1(onFulfilled(result));
|
|
58062
|
-
} catch (e) {
|
|
58063
|
-
if (onFulfilled === void 0) {
|
|
58064
|
-
return resolvedPromiseLike$1(result);
|
|
58065
|
-
}
|
|
58066
|
-
return rejectedPromiseLike$1(e);
|
|
58067
|
-
}
|
|
58068
|
-
}
|
|
58069
|
-
};
|
|
58070
|
-
}
|
|
58071
|
-
function rejectedPromiseLike$1(reason) {
|
|
58072
|
-
if (isPromiseLike$1(reason)) {
|
|
58073
|
-
return reason.then((nextResult) => nextResult);
|
|
58074
|
-
}
|
|
58075
|
-
return {
|
|
58076
|
-
then: (_onFulfilled, onRejected) => {
|
|
58077
|
-
if (typeof onRejected === "function") {
|
|
58078
|
-
try {
|
|
58079
|
-
return resolvedPromiseLike$1(onRejected(reason));
|
|
58080
|
-
} catch (e) {
|
|
58081
|
-
return rejectedPromiseLike$1(e);
|
|
58082
|
-
}
|
|
58083
|
-
}
|
|
58084
|
-
return rejectedPromiseLike$1(reason);
|
|
58085
|
-
}
|
|
58086
|
-
};
|
|
58087
|
-
}
|
|
58088
|
-
function isPromiseLike$1(x) {
|
|
58089
|
-
return typeof (x == null ? void 0 : x.then) === "function";
|
|
58090
|
-
}
|
|
58091
58203
|
const EventTypeWildcard = Symbol("EventTypeWildcard");
|
|
58092
58204
|
class DefaultPubSubService {
|
|
58093
58205
|
constructor() {
|
|
@@ -58115,14 +58227,14 @@ class DefaultPubSubService {
|
|
|
58115
58227
|
return;
|
|
58116
58228
|
}
|
|
58117
58229
|
const returnVal = subscription.callback.call(subscription, event);
|
|
58118
|
-
if (isPromiseLike$
|
|
58230
|
+
if (isPromiseLike$2(returnVal)) {
|
|
58119
58231
|
promises.push(returnVal);
|
|
58120
58232
|
}
|
|
58121
58233
|
});
|
|
58122
58234
|
if (promises.length > 0) {
|
|
58123
58235
|
return Promise.all(promises).then(() => void 0);
|
|
58124
58236
|
}
|
|
58125
|
-
return resolvedPromiseLike$
|
|
58237
|
+
return resolvedPromiseLike$2(void 0);
|
|
58126
58238
|
}
|
|
58127
58239
|
getSubscriptions(event) {
|
|
58128
58240
|
const eventTypeSubscriptions = this.subscriptions.get(event.type);
|
|
@@ -58143,7 +58255,7 @@ class DefaultPubSubService {
|
|
|
58143
58255
|
return matchingSubscriptions;
|
|
58144
58256
|
}
|
|
58145
58257
|
}
|
|
58146
|
-
function buildServiceDescriptor$
|
|
58258
|
+
function buildServiceDescriptor$d() {
|
|
58147
58259
|
return {
|
|
58148
58260
|
type: "pubSub",
|
|
58149
58261
|
version: "1.0",
|
|
@@ -58167,7 +58279,7 @@ class FeatureFlagsService {
|
|
|
58167
58279
|
return this.flags.get(flagName) || defaultValue;
|
|
58168
58280
|
}
|
|
58169
58281
|
}
|
|
58170
|
-
function buildServiceDescriptor$
|
|
58282
|
+
function buildServiceDescriptor$c() {
|
|
58171
58283
|
return {
|
|
58172
58284
|
version: "1.0",
|
|
58173
58285
|
service: new FeatureFlagsService(),
|
|
@@ -58208,7 +58320,7 @@ function buildServiceDescriptor$6() {
|
|
|
58208
58320
|
* };
|
|
58209
58321
|
* ```
|
|
58210
58322
|
*/
|
|
58211
|
-
function buildServiceDescriptor$
|
|
58323
|
+
function buildServiceDescriptor$b(luvio) {
|
|
58212
58324
|
return {
|
|
58213
58325
|
type: 'luvio',
|
|
58214
58326
|
version: '1.0',
|
|
@@ -58217,7 +58329,7 @@ function buildServiceDescriptor$5(luvio) {
|
|
|
58217
58329
|
},
|
|
58218
58330
|
};
|
|
58219
58331
|
}
|
|
58220
|
-
// version: 1.
|
|
58332
|
+
// version: 1.403.0-5476a05446
|
|
58221
58333
|
|
|
58222
58334
|
/**
|
|
58223
58335
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -58233,7 +58345,7 @@ function buildServiceDescriptor$5(luvio) {
|
|
|
58233
58345
|
* *******************************************************************************************
|
|
58234
58346
|
*/
|
|
58235
58347
|
/* proxy-compat-disable */
|
|
58236
|
-
function buildServiceDescriptor$
|
|
58348
|
+
function buildServiceDescriptor$a(notifyRecordUpdateAvailable, getNormalizedLuvioRecord) {
|
|
58237
58349
|
return {
|
|
58238
58350
|
type: 'luvioUiapiRecords',
|
|
58239
58351
|
version: '1.0',
|
|
@@ -58243,7 +58355,7 @@ function buildServiceDescriptor$4(notifyRecordUpdateAvailable, getNormalizedLuvi
|
|
|
58243
58355
|
},
|
|
58244
58356
|
};
|
|
58245
58357
|
}
|
|
58246
|
-
// version: 1.
|
|
58358
|
+
// version: 1.403.0-5476a05446
|
|
58247
58359
|
|
|
58248
58360
|
/*!
|
|
58249
58361
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -59084,6 +59196,62 @@ function hasMultilineItems(maybeArray) {
|
|
|
59084
59196
|
var _maybeArray$some;
|
|
59085
59197
|
return (_maybeArray$some = maybeArray === null || maybeArray === void 0 ? void 0 : maybeArray.some((str) => str.includes("\n"))) !== null && _maybeArray$some !== void 0 ? _maybeArray$some : false;
|
|
59086
59198
|
}
|
|
59199
|
+
const referenceMap = /* @__PURE__ */ new WeakMap();
|
|
59200
|
+
const astResolver = function(astReference) {
|
|
59201
|
+
return referenceMap.get(astReference);
|
|
59202
|
+
};
|
|
59203
|
+
function findExecutableOperation$1(document, operationName) {
|
|
59204
|
+
const operations = document.definitions.filter(
|
|
59205
|
+
(def) => def.kind === Kind.OPERATION_DEFINITION
|
|
59206
|
+
);
|
|
59207
|
+
if (operations.length === 0) {
|
|
59208
|
+
return void 0;
|
|
59209
|
+
}
|
|
59210
|
+
if (operations.length === 1 && !operationName) {
|
|
59211
|
+
return operations[0];
|
|
59212
|
+
}
|
|
59213
|
+
if (operationName) {
|
|
59214
|
+
return operations.find((op) => {
|
|
59215
|
+
var _a;
|
|
59216
|
+
return ((_a = op.name) == null ? void 0 : _a.value) === operationName;
|
|
59217
|
+
});
|
|
59218
|
+
}
|
|
59219
|
+
return void 0;
|
|
59220
|
+
}
|
|
59221
|
+
function validateGraphQLOperations(config, options) {
|
|
59222
|
+
const executableOperation = findExecutableOperation$1(config.query, config.operationName);
|
|
59223
|
+
if (executableOperation) {
|
|
59224
|
+
const operationType = executableOperation.operation;
|
|
59225
|
+
if (!options.acceptedOperations.includes(operationType)) {
|
|
59226
|
+
const operationTypeCapitalized = operationType.charAt(0).toUpperCase() + operationType.slice(1);
|
|
59227
|
+
throw new Error(
|
|
59228
|
+
`${operationTypeCapitalized} operations are not supported in this context`
|
|
59229
|
+
);
|
|
59230
|
+
}
|
|
59231
|
+
}
|
|
59232
|
+
}
|
|
59233
|
+
function resolveAst(ast) {
|
|
59234
|
+
if (ast === null || ast === void 0) {
|
|
59235
|
+
return;
|
|
59236
|
+
}
|
|
59237
|
+
const result = astResolver(ast);
|
|
59238
|
+
if (result === void 0) {
|
|
59239
|
+
throw new Error("Could not resolve AST. Did you parse the query with gql?");
|
|
59240
|
+
}
|
|
59241
|
+
return result;
|
|
59242
|
+
}
|
|
59243
|
+
function wrapConfigAndVerify(config, options) {
|
|
59244
|
+
if (config == null ? void 0 : config.query) {
|
|
59245
|
+
config = { ...config, query: resolveAst(config.query) };
|
|
59246
|
+
if (config.query === void 0) {
|
|
59247
|
+
throw new Error("Internal error in GraphQL adapter occurred: Unable to resolve query");
|
|
59248
|
+
}
|
|
59249
|
+
validateGraphQLOperations(config, {
|
|
59250
|
+
acceptedOperations: (options == null ? void 0 : options.acceptedOperations) ?? ["query"]
|
|
59251
|
+
});
|
|
59252
|
+
}
|
|
59253
|
+
return config;
|
|
59254
|
+
}
|
|
59087
59255
|
|
|
59088
59256
|
/*!
|
|
59089
59257
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -59300,7 +59468,7 @@ class AuraGraphQLNormalizedCacheControlCommand extends AuraNormalizedCacheContro
|
|
|
59300
59468
|
return buildSubscribableResult$1(result, this.buildSubscribe(), () => this.refresh());
|
|
59301
59469
|
});
|
|
59302
59470
|
}
|
|
59303
|
-
return resolvedPromiseLike$
|
|
59471
|
+
return resolvedPromiseLike$2(
|
|
59304
59472
|
buildSubscribableResult$1(
|
|
59305
59473
|
err$1(toError("Aura/Fetch network services not found")),
|
|
59306
59474
|
this.buildSubscribe(),
|
|
@@ -59342,7 +59510,7 @@ class AuraGraphQLNormalizedCacheControlCommand extends AuraNormalizedCacheContro
|
|
|
59342
59510
|
});
|
|
59343
59511
|
}
|
|
59344
59512
|
}
|
|
59345
|
-
function buildServiceDescriptor$
|
|
59513
|
+
function buildServiceDescriptor$9() {
|
|
59346
59514
|
return {
|
|
59347
59515
|
type: "auraGraphQLNormalizedCacheControlCommand",
|
|
59348
59516
|
version: "1.0",
|
|
@@ -59460,7 +59628,7 @@ class HttpGraphQLNormalizedCacheControlCommand extends HttpNormalizedCacheContro
|
|
|
59460
59628
|
});
|
|
59461
59629
|
}
|
|
59462
59630
|
}
|
|
59463
|
-
function buildServiceDescriptor$
|
|
59631
|
+
function buildServiceDescriptor$8() {
|
|
59464
59632
|
return {
|
|
59465
59633
|
type: "httpGraphQLNormalizedCacheControlCommand",
|
|
59466
59634
|
version: "1.0",
|
|
@@ -59473,26 +59641,1179 @@ function buildServiceDescriptor$2() {
|
|
|
59473
59641
|
* All rights reserved.
|
|
59474
59642
|
* For full license text, see the LICENSE.txt file
|
|
59475
59643
|
*/
|
|
59476
|
-
|
|
59644
|
+
class JsonSchemaViolationError extends Error {
|
|
59645
|
+
constructor(message, validationErrors) {
|
|
59646
|
+
super(message);
|
|
59647
|
+
this.validationErrors = [];
|
|
59648
|
+
this.validationErrors = validationErrors || [];
|
|
59649
|
+
}
|
|
59650
|
+
}
|
|
59651
|
+
class MinItemsViolationError extends JsonSchemaViolationError {
|
|
59652
|
+
}
|
|
59653
|
+
class MaxItemsViolationError extends JsonSchemaViolationError {
|
|
59654
|
+
}
|
|
59655
|
+
class IncorrectTypeError extends JsonSchemaViolationError {
|
|
59656
|
+
}
|
|
59657
|
+
class AdditionalPropertiesError extends JsonSchemaViolationError {
|
|
59658
|
+
}
|
|
59659
|
+
class MissingRequiredPropertyError extends JsonSchemaViolationError {
|
|
59660
|
+
}
|
|
59661
|
+
class InvalidRefError extends JsonSchemaViolationError {
|
|
59662
|
+
}
|
|
59663
|
+
class JsonSchemaErrorCollector {
|
|
59664
|
+
constructor() {
|
|
59665
|
+
this.errors = [];
|
|
59666
|
+
}
|
|
59667
|
+
add(error) {
|
|
59668
|
+
this.errors.push(error);
|
|
59669
|
+
}
|
|
59670
|
+
append(response) {
|
|
59671
|
+
if (response.isErr()) {
|
|
59672
|
+
this.errors.push(...response.error);
|
|
59673
|
+
}
|
|
59674
|
+
}
|
|
59675
|
+
hasErrors() {
|
|
59676
|
+
return this.errors.length > 0;
|
|
59677
|
+
}
|
|
59678
|
+
prepend(error) {
|
|
59679
|
+
this.errors.unshift(error);
|
|
59680
|
+
}
|
|
59681
|
+
toValidationResponse() {
|
|
59682
|
+
return !this.hasErrors() ? ok$1(true) : err$1(this.errors);
|
|
59683
|
+
}
|
|
59684
|
+
}
|
|
59685
|
+
function createThrowableError(errors) {
|
|
59686
|
+
if (errors[0] instanceof MinItemsViolationError) {
|
|
59687
|
+
return new MinItemsViolationError(errors[0].message, errors);
|
|
59688
|
+
}
|
|
59689
|
+
if (errors[0] instanceof MaxItemsViolationError) {
|
|
59690
|
+
return new MaxItemsViolationError(errors[0].message, errors);
|
|
59691
|
+
}
|
|
59692
|
+
if (errors[0] instanceof IncorrectTypeError) {
|
|
59693
|
+
return new IncorrectTypeError(errors[0].message, errors);
|
|
59694
|
+
}
|
|
59695
|
+
if (errors[0] instanceof AdditionalPropertiesError) {
|
|
59696
|
+
return new AdditionalPropertiesError(errors[0].message, errors);
|
|
59697
|
+
}
|
|
59698
|
+
if (errors[0] instanceof MissingRequiredPropertyError) {
|
|
59699
|
+
return new MissingRequiredPropertyError(errors[0].message, errors);
|
|
59700
|
+
}
|
|
59701
|
+
if (errors[0] instanceof InvalidRefError) {
|
|
59702
|
+
return new InvalidRefError(errors[0].message, errors);
|
|
59703
|
+
}
|
|
59704
|
+
return new JsonSchemaViolationError(errors[0].message, errors);
|
|
59705
|
+
}
|
|
59706
|
+
function assertIsValid(data, schema) {
|
|
59707
|
+
const validationResponse = validateJsonSchema(data, schema);
|
|
59708
|
+
if (validationResponse.isErr()) {
|
|
59709
|
+
throw createThrowableError(validationResponse.error);
|
|
59710
|
+
}
|
|
59711
|
+
}
|
|
59712
|
+
function incorrectTypeError(expected, actual, path) {
|
|
59713
|
+
return new IncorrectTypeError(
|
|
59714
|
+
`Expected type ${expected} at path '${path}', found type ${actual}.`
|
|
59715
|
+
);
|
|
59716
|
+
}
|
|
59717
|
+
function validSchemaResponse() {
|
|
59718
|
+
return ok$1(true);
|
|
59719
|
+
}
|
|
59720
|
+
function invalidSchemaResponseWithError(error) {
|
|
59721
|
+
return err$1([error]);
|
|
59722
|
+
}
|
|
59723
|
+
function validateJsonSchema(data, schema, path = "$", document = schema) {
|
|
59724
|
+
if (schema === true) return validSchemaResponse();
|
|
59725
|
+
if (schema === false)
|
|
59726
|
+
return invalidSchemaResponseWithError(
|
|
59727
|
+
new JsonSchemaViolationError(`Data at ${path} has schema 'false'`)
|
|
59728
|
+
);
|
|
59729
|
+
const dataType = data === null ? "null" : Array.isArray(data) ? "array" : typeof data;
|
|
59730
|
+
const errorCollector = new JsonSchemaErrorCollector();
|
|
59731
|
+
if ("anyOf" in schema) {
|
|
59732
|
+
errorCollector.append(validateAnyOf(data, schema, path, document));
|
|
59733
|
+
} else if ("oneOf" in schema) {
|
|
59734
|
+
errorCollector.append(validateOneOf(data, schema, path, document));
|
|
59735
|
+
} else if ("allOf" in schema) {
|
|
59736
|
+
errorCollector.append(validateAllOf(data, schema, path, document));
|
|
59737
|
+
} else if ("not" in schema) {
|
|
59738
|
+
errorCollector.append(validateNot(data, schema, path, document));
|
|
59739
|
+
} else if ("$ref" in schema) {
|
|
59740
|
+
errorCollector.append(validateRef(data, schema, path, document));
|
|
59741
|
+
} else if ("type" in schema) {
|
|
59742
|
+
if (schema.type === "object") {
|
|
59743
|
+
if (dataType !== "object") {
|
|
59744
|
+
errorCollector.add(incorrectTypeError("object", dataType, path));
|
|
59745
|
+
} else {
|
|
59746
|
+
errorCollector.append(
|
|
59747
|
+
validateObject(data, schema, path, document)
|
|
59748
|
+
);
|
|
59749
|
+
}
|
|
59750
|
+
} else if (schema.type === "array") {
|
|
59751
|
+
if (dataType !== "array") {
|
|
59752
|
+
errorCollector.add(incorrectTypeError("array", dataType, path));
|
|
59753
|
+
} else {
|
|
59754
|
+
errorCollector.append(
|
|
59755
|
+
validateArray(data, schema, path, document)
|
|
59756
|
+
);
|
|
59757
|
+
}
|
|
59758
|
+
} else {
|
|
59759
|
+
errorCollector.append(
|
|
59760
|
+
validateScalar(data, schema, path)
|
|
59761
|
+
);
|
|
59762
|
+
}
|
|
59763
|
+
}
|
|
59764
|
+
if (schema.enum) {
|
|
59765
|
+
errorCollector.append(validateEnum(data, schema.enum, path));
|
|
59766
|
+
}
|
|
59767
|
+
if (schema.const) {
|
|
59768
|
+
errorCollector.append(validateConst(data, schema.const, path));
|
|
59769
|
+
}
|
|
59770
|
+
return errorCollector.toValidationResponse();
|
|
59771
|
+
}
|
|
59772
|
+
function validateAnyOf(data, schema, path, document) {
|
|
59773
|
+
let isValid = false;
|
|
59774
|
+
const errorCollector = new JsonSchemaErrorCollector();
|
|
59775
|
+
for (let i = 0, { length } = schema.anyOf; i < length; i++) {
|
|
59776
|
+
const element = schema.anyOf[i];
|
|
59777
|
+
const validationResponse = validateJsonSchema(
|
|
59778
|
+
data,
|
|
59779
|
+
element,
|
|
59780
|
+
`${path}.anyOf[${i}]`,
|
|
59781
|
+
document
|
|
59782
|
+
);
|
|
59783
|
+
if (validationResponse.isOk()) {
|
|
59784
|
+
isValid = true;
|
|
59785
|
+
break;
|
|
59786
|
+
} else {
|
|
59787
|
+
errorCollector.append(validationResponse);
|
|
59788
|
+
}
|
|
59789
|
+
}
|
|
59790
|
+
if (!isValid) {
|
|
59791
|
+
errorCollector.prepend(
|
|
59792
|
+
new JsonSchemaViolationError(`Data at ${path} did not match any subschema in anyOf.`)
|
|
59793
|
+
);
|
|
59794
|
+
return errorCollector.toValidationResponse();
|
|
59795
|
+
}
|
|
59796
|
+
return validSchemaResponse();
|
|
59797
|
+
}
|
|
59798
|
+
function validateOneOf(data, schema, path, document) {
|
|
59799
|
+
let validSubShemaPaths = [];
|
|
59800
|
+
const errorCollector = new JsonSchemaErrorCollector();
|
|
59801
|
+
for (let i = 0, { length } = schema.oneOf; i < length; i++) {
|
|
59802
|
+
const element = schema.oneOf[i];
|
|
59803
|
+
const oneOfPath = `${path}.oneOf[${i}]`;
|
|
59804
|
+
const validationResponse = validateJsonSchema(data, element, oneOfPath, document);
|
|
59805
|
+
if (validationResponse.isOk()) {
|
|
59806
|
+
validSubShemaPaths.push(oneOfPath);
|
|
59807
|
+
} else {
|
|
59808
|
+
errorCollector.append(validationResponse);
|
|
59809
|
+
}
|
|
59810
|
+
}
|
|
59811
|
+
if (validSubShemaPaths.length === 0) {
|
|
59812
|
+
errorCollector.prepend(
|
|
59813
|
+
new JsonSchemaViolationError(`Data at ${path} did not match any subschema in oneOf.`)
|
|
59814
|
+
);
|
|
59815
|
+
return errorCollector.toValidationResponse();
|
|
59816
|
+
} else if (validSubShemaPaths.length > 1) {
|
|
59817
|
+
errorCollector.prepend(
|
|
59818
|
+
new JsonSchemaViolationError(
|
|
59819
|
+
`Data at ${path} matched multiple subschemas: [${validSubShemaPaths.join(", ")}].`
|
|
59820
|
+
)
|
|
59821
|
+
);
|
|
59822
|
+
return errorCollector.toValidationResponse();
|
|
59823
|
+
}
|
|
59824
|
+
return validSchemaResponse();
|
|
59825
|
+
}
|
|
59826
|
+
function validateAllOf(data, schema, path, document) {
|
|
59827
|
+
let isValid = true;
|
|
59828
|
+
const errorCollector = new JsonSchemaErrorCollector();
|
|
59829
|
+
for (let i = 0, { length } = schema.allOf; i < length; i++) {
|
|
59830
|
+
const element = schema.allOf[i];
|
|
59831
|
+
const validationResponse = validateJsonSchema(
|
|
59832
|
+
data,
|
|
59833
|
+
element,
|
|
59834
|
+
`${path}.allOf[${i}]`,
|
|
59835
|
+
document
|
|
59836
|
+
);
|
|
59837
|
+
if (!validationResponse.isOk()) {
|
|
59838
|
+
errorCollector.append(validationResponse);
|
|
59839
|
+
isValid = false;
|
|
59840
|
+
}
|
|
59841
|
+
}
|
|
59842
|
+
if (!isValid) {
|
|
59843
|
+
errorCollector.prepend(
|
|
59844
|
+
new JsonSchemaViolationError(`Data at ${path} did not match some subschemas in allOf.`)
|
|
59845
|
+
);
|
|
59846
|
+
}
|
|
59847
|
+
return errorCollector.toValidationResponse();
|
|
59848
|
+
}
|
|
59849
|
+
function validateNot(data, schema, path, document) {
|
|
59850
|
+
const validationResponse = validateJsonSchema(data, schema.not, path, document);
|
|
59851
|
+
if (validationResponse.isOk()) {
|
|
59852
|
+
return invalidSchemaResponseWithError(
|
|
59853
|
+
new JsonSchemaViolationError(
|
|
59854
|
+
`Data at ${path} validated against the schema of a not clause.`
|
|
59855
|
+
)
|
|
59856
|
+
);
|
|
59857
|
+
}
|
|
59858
|
+
return validSchemaResponse();
|
|
59859
|
+
}
|
|
59860
|
+
function validateObject(data, schema, path, document) {
|
|
59861
|
+
const schemaKeys = Object.keys(schema.properties);
|
|
59862
|
+
const requiredKeys = new Set(schema.required);
|
|
59863
|
+
const schemaKeySet = new Set(schemaKeys);
|
|
59864
|
+
const errorCollector = new JsonSchemaErrorCollector();
|
|
59865
|
+
Object.keys(data).forEach((key) => {
|
|
59866
|
+
if (!schemaKeySet.has(key)) {
|
|
59867
|
+
errorCollector.append(
|
|
59868
|
+
validateJsonSchema(
|
|
59869
|
+
data[key],
|
|
59870
|
+
schema.additionalProperties,
|
|
59871
|
+
`${path}.additionalProperties[${key}]`,
|
|
59872
|
+
document
|
|
59873
|
+
)
|
|
59874
|
+
);
|
|
59875
|
+
}
|
|
59876
|
+
});
|
|
59877
|
+
for (let i = 0, length = schemaKeys.length; i < length; i++) {
|
|
59878
|
+
const key = schemaKeys[i];
|
|
59879
|
+
const keyInData = key in data && data[key] !== void 0;
|
|
59880
|
+
if (requiredKeys.has(key) && !keyInData) {
|
|
59881
|
+
errorCollector.add(
|
|
59882
|
+
new MissingRequiredPropertyError(
|
|
59883
|
+
`Object at path '${path}' is missing required property '${key}'.`
|
|
59884
|
+
)
|
|
59885
|
+
);
|
|
59886
|
+
}
|
|
59887
|
+
if (keyInData) {
|
|
59888
|
+
errorCollector.append(
|
|
59889
|
+
validateJsonSchema(
|
|
59890
|
+
data[key],
|
|
59891
|
+
schema.properties[key],
|
|
59892
|
+
`${path}.${key}`,
|
|
59893
|
+
document
|
|
59894
|
+
)
|
|
59895
|
+
);
|
|
59896
|
+
}
|
|
59897
|
+
}
|
|
59898
|
+
return errorCollector.toValidationResponse();
|
|
59899
|
+
}
|
|
59900
|
+
function validateArray(data, schema, path, document) {
|
|
59901
|
+
if (schema.minItems !== void 0 && data.length < schema.minItems) {
|
|
59902
|
+
return invalidSchemaResponseWithError(
|
|
59903
|
+
new MinItemsViolationError(
|
|
59904
|
+
`Array at path '${path}' fails minItems constraint. Has ${data.length} items, needs at least ${schema.minItems}.`
|
|
59905
|
+
)
|
|
59906
|
+
);
|
|
59907
|
+
}
|
|
59908
|
+
if (schema.maxItems !== void 0 && data.length > schema.maxItems) {
|
|
59909
|
+
return invalidSchemaResponseWithError(
|
|
59910
|
+
new MaxItemsViolationError(
|
|
59911
|
+
`Array at path '${path}' fails maxItems constraint. Has ${data.length} items, needs at most ${schema.maxItems}.`
|
|
59912
|
+
)
|
|
59913
|
+
);
|
|
59914
|
+
}
|
|
59915
|
+
const errorCollector = new JsonSchemaErrorCollector();
|
|
59916
|
+
data.forEach(
|
|
59917
|
+
(element, index) => errorCollector.append(
|
|
59918
|
+
validateJsonSchema(element, schema.items, `${path}[${index}]`, document)
|
|
59919
|
+
)
|
|
59920
|
+
);
|
|
59921
|
+
return errorCollector.toValidationResponse();
|
|
59922
|
+
}
|
|
59923
|
+
function validateScalar(data, schema, path) {
|
|
59924
|
+
const schemaDataType = schema.type;
|
|
59925
|
+
const dataType = typeof data;
|
|
59926
|
+
if (schemaDataType === "integer") {
|
|
59927
|
+
if (dataType !== "number" || !Number.isInteger(data)) {
|
|
59928
|
+
return invalidSchemaResponseWithError(incorrectTypeError("integer", dataType, path));
|
|
59929
|
+
}
|
|
59930
|
+
} else if (schemaDataType === "number") {
|
|
59931
|
+
if (dataType !== "number") {
|
|
59932
|
+
return invalidSchemaResponseWithError(incorrectTypeError("number", dataType, path));
|
|
59933
|
+
}
|
|
59934
|
+
} else if (schemaDataType === "string") {
|
|
59935
|
+
if (dataType !== "string") {
|
|
59936
|
+
return invalidSchemaResponseWithError(incorrectTypeError("string", dataType, path));
|
|
59937
|
+
}
|
|
59938
|
+
} else if (schemaDataType === "boolean") {
|
|
59939
|
+
if (dataType !== "boolean") {
|
|
59940
|
+
return invalidSchemaResponseWithError(incorrectTypeError("boolean", dataType, path));
|
|
59941
|
+
}
|
|
59942
|
+
} else if (schemaDataType === "null") {
|
|
59943
|
+
if (data !== null) {
|
|
59944
|
+
return invalidSchemaResponseWithError(incorrectTypeError("null", dataType, path));
|
|
59945
|
+
}
|
|
59946
|
+
} else {
|
|
59947
|
+
return invalidSchemaResponseWithError(
|
|
59948
|
+
new IncorrectTypeError(`Unknown schema data type: ${schemaDataType}.`)
|
|
59949
|
+
);
|
|
59950
|
+
}
|
|
59951
|
+
return validSchemaResponse();
|
|
59952
|
+
}
|
|
59953
|
+
function validateRef(data, schema, path, document) {
|
|
59954
|
+
if (!schema.$ref.startsWith("#")) {
|
|
59955
|
+
return invalidSchemaResponseWithError(
|
|
59956
|
+
new InvalidRefError(
|
|
59957
|
+
`$ref values that do not refer to the current document are unsupported (must start with '#')`
|
|
59958
|
+
)
|
|
59959
|
+
);
|
|
59960
|
+
}
|
|
59961
|
+
try {
|
|
59962
|
+
const schemaToValidate = findSchemaAtPath(document, schema.$ref);
|
|
59963
|
+
return validateJsonSchema(data, schemaToValidate, path, document);
|
|
59964
|
+
} catch (e) {
|
|
59965
|
+
return invalidSchemaResponseWithError(e);
|
|
59966
|
+
}
|
|
59967
|
+
}
|
|
59968
|
+
function validateEnum(data, enumValue, path) {
|
|
59969
|
+
if (!enumValue.some((value) => deepEquals$1(value, data))) {
|
|
59970
|
+
return invalidSchemaResponseWithError(
|
|
59971
|
+
new JsonSchemaViolationError(
|
|
59972
|
+
`Data at ${path} did not match any values in enum. Expected value in: [${enumValue.map((value) => stringify$2(value)).join()}]`
|
|
59973
|
+
)
|
|
59974
|
+
);
|
|
59975
|
+
}
|
|
59976
|
+
return validSchemaResponse();
|
|
59977
|
+
}
|
|
59978
|
+
function validateConst(data, constValue, path) {
|
|
59979
|
+
if (!deepEquals$1(constValue, data)) {
|
|
59980
|
+
return invalidSchemaResponseWithError(
|
|
59981
|
+
new JsonSchemaViolationError(
|
|
59982
|
+
`Data at ${path} did not match const. Expected: ${stringify$2(constValue)}`
|
|
59983
|
+
)
|
|
59984
|
+
);
|
|
59985
|
+
}
|
|
59986
|
+
return validSchemaResponse();
|
|
59987
|
+
}
|
|
59988
|
+
function findSchemaAtPath(document, ref) {
|
|
59989
|
+
if (ref === "#") return document;
|
|
59990
|
+
const keys = ref.replace(/^#\//, "").split("/");
|
|
59991
|
+
let current = document;
|
|
59992
|
+
let path = "#";
|
|
59993
|
+
for (const key of keys) {
|
|
59994
|
+
path = `${path}/${key}`;
|
|
59995
|
+
if (current[key] === void 0) {
|
|
59996
|
+
throw new InvalidRefError(
|
|
59997
|
+
`Invalid $ref value '${ref}'. Cannot find target schema at '${path}'`
|
|
59998
|
+
);
|
|
59999
|
+
}
|
|
60000
|
+
current = current[key];
|
|
60001
|
+
}
|
|
60002
|
+
return current;
|
|
60003
|
+
}
|
|
60004
|
+
|
|
60005
|
+
/*!
|
|
60006
|
+
* Copyright (c) 2022, Salesforce, Inc.,
|
|
60007
|
+
* All rights reserved.
|
|
60008
|
+
* For full license text, see the LICENSE.txt file
|
|
60009
|
+
*/
|
|
60010
|
+
function isUserVisibleError(error) {
|
|
60011
|
+
return error instanceof Error && "type" in error && error.type === "user-visible";
|
|
60012
|
+
}
|
|
60013
|
+
function throwUserlandError(error) {
|
|
60014
|
+
logError(error);
|
|
60015
|
+
throw buildUserlandError(error);
|
|
60016
|
+
}
|
|
60017
|
+
function emitError(callback, error) {
|
|
60018
|
+
logError(error);
|
|
60019
|
+
callback({ data: void 0, error: buildUserlandError(error) });
|
|
60020
|
+
}
|
|
60021
|
+
function buildUserlandError(error) {
|
|
60022
|
+
if (isUserVisibleError(error)) {
|
|
60023
|
+
return error.data;
|
|
60024
|
+
}
|
|
60025
|
+
return new Error("Internal error in Lightning Data Service adapter occurred.");
|
|
60026
|
+
}
|
|
60027
|
+
function logError(error) {
|
|
60028
|
+
if (isUserVisibleError(error)) {
|
|
60029
|
+
return;
|
|
60030
|
+
}
|
|
60031
|
+
console.error("OneStore Command threw an error that we did not expect", error);
|
|
60032
|
+
}
|
|
60033
|
+
|
|
60034
|
+
/*!
|
|
60035
|
+
* Copyright (c) 2022, Salesforce, Inc.,
|
|
60036
|
+
* All rights reserved.
|
|
60037
|
+
* For full license text, see the LICENSE.txt file
|
|
60038
|
+
*/
|
|
60039
|
+
function buildBaseImperativeInvoker(getCommand, transformResult) {
|
|
60040
|
+
return async (...params) => {
|
|
60041
|
+
const command = getCommand({ params, assertIsValid });
|
|
60042
|
+
try {
|
|
60043
|
+
return command.execute().then((result) => transformResult(result));
|
|
60044
|
+
} catch (error) {
|
|
60045
|
+
throwUserlandError(error);
|
|
60046
|
+
}
|
|
60047
|
+
};
|
|
60048
|
+
}
|
|
60049
|
+
const supportedCachePolicyTypes = ["no-cache", "only-if-cached"];
|
|
60050
|
+
function requestContextIsSupportedCachePolicy(requestContext) {
|
|
60051
|
+
return typeof requestContext === "object" && requestContext !== null && "cachePolicy" in requestContext && typeof requestContext.cachePolicy === "object" && requestContext.cachePolicy !== null && "type" in requestContext.cachePolicy && typeof requestContext.cachePolicy.type === "string" && supportedCachePolicyTypes.includes(
|
|
60052
|
+
requestContext.cachePolicy.type
|
|
60053
|
+
);
|
|
60054
|
+
}
|
|
60055
|
+
function getOverridesForLegacyRequestContext(requestContext) {
|
|
60056
|
+
if (requestContextIsSupportedCachePolicy(requestContext)) {
|
|
60057
|
+
return { cacheControlConfig: { type: requestContext.cachePolicy.type } };
|
|
60058
|
+
}
|
|
60059
|
+
return {};
|
|
60060
|
+
}
|
|
60061
|
+
function handleEmit(res, callback) {
|
|
60062
|
+
const consumerEmittedData = {
|
|
60063
|
+
data: void 0,
|
|
60064
|
+
errors: void 0
|
|
60065
|
+
};
|
|
60066
|
+
if (res.isOk()) {
|
|
60067
|
+
consumerEmittedData.data = res.value.data;
|
|
60068
|
+
} else {
|
|
60069
|
+
const { data, errors } = toGraphQLResponseFromFailure$1(res.error);
|
|
60070
|
+
consumerEmittedData.data = data;
|
|
60071
|
+
consumerEmittedData.errors = errors;
|
|
60072
|
+
}
|
|
60073
|
+
callback(consumerEmittedData);
|
|
60074
|
+
}
|
|
60075
|
+
function toGraphQLResponseFromFailure$1(failure) {
|
|
60076
|
+
if (isUserVisibleError$1(failure)) {
|
|
60077
|
+
return {
|
|
60078
|
+
data: failure.data.data,
|
|
60079
|
+
errors: failure.data.errors
|
|
60080
|
+
};
|
|
60081
|
+
}
|
|
60082
|
+
logError$1(failure);
|
|
60083
|
+
return {
|
|
60084
|
+
data: void 0,
|
|
60085
|
+
errors: [{ message: "Internal error in GraphQL adapter occurred", locations: [] }]
|
|
60086
|
+
};
|
|
60087
|
+
}
|
|
60088
|
+
class DefaultImperativeBindingsService {
|
|
60089
|
+
bind(getCommand) {
|
|
60090
|
+
return buildBaseImperativeInvoker(getCommand, (result) => {
|
|
60091
|
+
if (result.isOk()) {
|
|
60092
|
+
deepFreeze(result.value);
|
|
60093
|
+
return isSubscribableResult(result) ? result.value.data : result.value;
|
|
60094
|
+
}
|
|
60095
|
+
throw toError(isSubscribableResult(result) ? result.error.failure : result.error);
|
|
60096
|
+
});
|
|
60097
|
+
}
|
|
60098
|
+
}
|
|
60099
|
+
function buildServiceDescriptor$6() {
|
|
60100
|
+
return {
|
|
60101
|
+
type: "defaultImperativeBindings",
|
|
60102
|
+
version: "1.0",
|
|
60103
|
+
service: new DefaultImperativeBindingsService()
|
|
60104
|
+
};
|
|
60105
|
+
}
|
|
60106
|
+
class QueryImperativeBindingsService {
|
|
60107
|
+
bind(getCommand) {
|
|
60108
|
+
return buildBaseImperativeInvoker(getCommand, (result) => {
|
|
60109
|
+
if (result.isOk()) {
|
|
60110
|
+
deepFreeze(result.value);
|
|
60111
|
+
return isSubscribableResult(result) ? { data: result.value.data } : { data: result.value };
|
|
60112
|
+
}
|
|
60113
|
+
throw toError(isSubscribableResult(result) ? result.error.failure : result.error);
|
|
60114
|
+
});
|
|
60115
|
+
}
|
|
60116
|
+
}
|
|
60117
|
+
function buildServiceDescriptor$5() {
|
|
60118
|
+
return {
|
|
60119
|
+
type: "queryImperativeBindings",
|
|
60120
|
+
version: "1.0",
|
|
60121
|
+
service: new QueryImperativeBindingsService()
|
|
60122
|
+
};
|
|
60123
|
+
}
|
|
60124
|
+
class SubscribableImperativeBindingsService {
|
|
60125
|
+
bind(getCommand, exposeRefresh = false) {
|
|
60126
|
+
return buildBaseImperativeInvoker(
|
|
60127
|
+
getCommand,
|
|
60128
|
+
(result) => this.transformResult(result, exposeRefresh)
|
|
60129
|
+
);
|
|
60130
|
+
}
|
|
60131
|
+
transformResult(result, exposeRefresh = false) {
|
|
60132
|
+
if (!isSubscribableResult(result)) {
|
|
60133
|
+
console.error(
|
|
60134
|
+
"Non-subscribable result encountered - please use correct operation type"
|
|
60135
|
+
);
|
|
60136
|
+
throw new Error("Internal error in Lightning Data Service adapter occurred");
|
|
60137
|
+
}
|
|
60138
|
+
if (result.isOk()) {
|
|
60139
|
+
deepFreeze(result.value.data);
|
|
60140
|
+
const api = {
|
|
60141
|
+
data: result.value.data,
|
|
60142
|
+
subscribe: (cb) => {
|
|
60143
|
+
result.value.subscribe((result2) => {
|
|
60144
|
+
if (result2.isErr()) {
|
|
60145
|
+
return cb({ data: void 0, error: toError(result2.error) });
|
|
60146
|
+
}
|
|
60147
|
+
return cb({ data: result2.value, error: void 0 });
|
|
60148
|
+
});
|
|
60149
|
+
}
|
|
60150
|
+
};
|
|
60151
|
+
if (exposeRefresh) {
|
|
60152
|
+
return {
|
|
60153
|
+
...api,
|
|
60154
|
+
refresh: () => {
|
|
60155
|
+
return result.value.refresh().then((res) => {
|
|
60156
|
+
if (res.isOk()) {
|
|
60157
|
+
return void 0;
|
|
60158
|
+
}
|
|
60159
|
+
throw res.error;
|
|
60160
|
+
});
|
|
60161
|
+
}
|
|
60162
|
+
};
|
|
60163
|
+
} else {
|
|
60164
|
+
return api;
|
|
60165
|
+
}
|
|
60166
|
+
} else {
|
|
60167
|
+
throw toError(result.error.failure);
|
|
60168
|
+
}
|
|
60169
|
+
}
|
|
60170
|
+
}
|
|
60171
|
+
function buildServiceDescriptor$4() {
|
|
60172
|
+
return {
|
|
60173
|
+
type: "subscribableImperativeBindings",
|
|
60174
|
+
version: "1.0",
|
|
60175
|
+
service: new SubscribableImperativeBindingsService()
|
|
60176
|
+
};
|
|
60177
|
+
}
|
|
60178
|
+
class LegacyImperativeBindingsService {
|
|
60179
|
+
bind(getCommand) {
|
|
60180
|
+
const invoke = async (config, requestContext, callback) => {
|
|
60181
|
+
const command = getCommand({ config, assertIsValid });
|
|
60182
|
+
try {
|
|
60183
|
+
const overrides = getOverridesForLegacyRequestContext(requestContext);
|
|
60184
|
+
const result = await command.execute(overrides);
|
|
60185
|
+
if (result.isOk()) {
|
|
60186
|
+
deepFreeze(result.value);
|
|
60187
|
+
callback({ data: result.value.data, error: void 0 });
|
|
60188
|
+
} else {
|
|
60189
|
+
callback({ data: void 0, error: toError(result.error.failure) });
|
|
60190
|
+
}
|
|
60191
|
+
} catch (error) {
|
|
60192
|
+
emitError(callback, error);
|
|
60193
|
+
}
|
|
60194
|
+
};
|
|
60195
|
+
const subscribe = (config, requestContext, callback) => {
|
|
60196
|
+
const command = getCommand({ config, assertIsValid });
|
|
60197
|
+
let unsubscribe = () => {
|
|
60198
|
+
};
|
|
60199
|
+
try {
|
|
60200
|
+
const overrides = getOverridesForLegacyRequestContext(requestContext);
|
|
60201
|
+
command.execute(overrides).then(
|
|
60202
|
+
(result) => {
|
|
60203
|
+
if (!result.isOk()) {
|
|
60204
|
+
callback({ data: void 0, error: toError(result.error.failure) });
|
|
60205
|
+
return;
|
|
60206
|
+
}
|
|
60207
|
+
unsubscribe = result.value.subscribe((res) => {
|
|
60208
|
+
if (res.isOk()) {
|
|
60209
|
+
callback({ data: res.value, error: void 0 });
|
|
60210
|
+
} else {
|
|
60211
|
+
callback({ data: void 0, error: toError(res.error) });
|
|
60212
|
+
}
|
|
60213
|
+
});
|
|
60214
|
+
callback({ data: result.value.data, error: void 0 });
|
|
60215
|
+
},
|
|
60216
|
+
(e) => {
|
|
60217
|
+
emitError(callback, e);
|
|
60218
|
+
}
|
|
60219
|
+
);
|
|
60220
|
+
} catch (e) {
|
|
60221
|
+
emitError(callback, e);
|
|
60222
|
+
}
|
|
60223
|
+
return () => {
|
|
60224
|
+
unsubscribe();
|
|
60225
|
+
};
|
|
60226
|
+
};
|
|
60227
|
+
return { invoke, subscribe };
|
|
60228
|
+
}
|
|
60229
|
+
}
|
|
60230
|
+
function buildServiceDescriptor$3() {
|
|
60231
|
+
return {
|
|
60232
|
+
type: "legacyImperativeBindings",
|
|
60233
|
+
version: "1.0",
|
|
60234
|
+
service: new LegacyImperativeBindingsService()
|
|
60235
|
+
};
|
|
60236
|
+
}
|
|
60237
|
+
class GraphQLImperativeBindingsService {
|
|
60238
|
+
bind(getCommand, exposeRefresh = false) {
|
|
60239
|
+
return async (...params) => {
|
|
60240
|
+
try {
|
|
60241
|
+
if (params.length) {
|
|
60242
|
+
params[0] = wrapConfigAndVerify(params[0]);
|
|
60243
|
+
}
|
|
60244
|
+
return await buildBaseImperativeInvoker(getCommand, (result) => this.transformResult(result, exposeRefresh))(...params);
|
|
60245
|
+
} catch (error) {
|
|
60246
|
+
logError$1(error);
|
|
60247
|
+
return {
|
|
60248
|
+
data: void 0,
|
|
60249
|
+
errors: [
|
|
60250
|
+
{ message: "Internal error in GraphQL adapter occurred", locations: [] }
|
|
60251
|
+
]
|
|
60252
|
+
};
|
|
60253
|
+
}
|
|
60254
|
+
};
|
|
60255
|
+
}
|
|
60256
|
+
transformResult(result, exposeRefresh = false) {
|
|
60257
|
+
const consumerEmittedData = {
|
|
60258
|
+
data: void 0,
|
|
60259
|
+
errors: void 0
|
|
60260
|
+
};
|
|
60261
|
+
if (result.isOk()) {
|
|
60262
|
+
deepFreeze(result.value);
|
|
60263
|
+
consumerEmittedData.data = result.value.data.data;
|
|
60264
|
+
consumerEmittedData.subscribe = (cb) => {
|
|
60265
|
+
result.value.subscribe((res) => {
|
|
60266
|
+
const consumerEmittedData2 = {
|
|
60267
|
+
data: void 0,
|
|
60268
|
+
errors: void 0
|
|
60269
|
+
};
|
|
60270
|
+
if (res.isOk()) {
|
|
60271
|
+
consumerEmittedData2.data = res.value.data;
|
|
60272
|
+
} else {
|
|
60273
|
+
if (isUserVisibleError$1(res.error)) {
|
|
60274
|
+
consumerEmittedData2.data = res.error.data.data;
|
|
60275
|
+
consumerEmittedData2.errors = res.error.data.errors;
|
|
60276
|
+
} else {
|
|
60277
|
+
logError$1(res.error);
|
|
60278
|
+
consumerEmittedData2.errors = [
|
|
60279
|
+
{
|
|
60280
|
+
message: "Internal error in GraphQL adapter occurred",
|
|
60281
|
+
locations: []
|
|
60282
|
+
}
|
|
60283
|
+
];
|
|
60284
|
+
}
|
|
60285
|
+
}
|
|
60286
|
+
cb(consumerEmittedData2);
|
|
60287
|
+
});
|
|
60288
|
+
};
|
|
60289
|
+
if (exposeRefresh) {
|
|
60290
|
+
consumerEmittedData.refresh = () => {
|
|
60291
|
+
return new Promise((resolve, reject) => {
|
|
60292
|
+
try {
|
|
60293
|
+
result.value.refresh().then((res) => {
|
|
60294
|
+
if (res.isOk()) {
|
|
60295
|
+
resolve();
|
|
60296
|
+
} else {
|
|
60297
|
+
reject(
|
|
60298
|
+
new Error(
|
|
60299
|
+
"Internal error in GraphQL adapter occurred: Failed to refresh GraphQL data"
|
|
60300
|
+
)
|
|
60301
|
+
);
|
|
60302
|
+
}
|
|
60303
|
+
});
|
|
60304
|
+
} catch (error) {
|
|
60305
|
+
logError$1(error);
|
|
60306
|
+
reject(
|
|
60307
|
+
new Error(
|
|
60308
|
+
"Internal error in GraphQL adapter occurred: Failed to refresh GraphQL data"
|
|
60309
|
+
)
|
|
60310
|
+
);
|
|
60311
|
+
}
|
|
60312
|
+
});
|
|
60313
|
+
};
|
|
60314
|
+
}
|
|
60315
|
+
} else {
|
|
60316
|
+
const resp = toGraphQLResponseFromFailure$1(result.error.failure);
|
|
60317
|
+
consumerEmittedData.data = resp.data;
|
|
60318
|
+
consumerEmittedData.errors = resp.errors;
|
|
60319
|
+
}
|
|
60320
|
+
return consumerEmittedData;
|
|
60321
|
+
}
|
|
60322
|
+
}
|
|
60323
|
+
function buildServiceDescriptor$2$1() {
|
|
60324
|
+
return {
|
|
60325
|
+
type: "graphQLImperativeBindings",
|
|
60326
|
+
version: "1.0",
|
|
60327
|
+
service: new GraphQLImperativeBindingsService()
|
|
60328
|
+
};
|
|
60329
|
+
}
|
|
60330
|
+
class GraphQLLegacyImperativeBindingsService {
|
|
60331
|
+
bind(getCommand) {
|
|
60332
|
+
const invoke = async (config, requestContext, callback) => {
|
|
60333
|
+
config = wrapConfigAndVerify(config);
|
|
60334
|
+
const command = getCommand({ config, assertIsValid });
|
|
60335
|
+
try {
|
|
60336
|
+
const overrides = getOverridesForLegacyRequestContext(requestContext);
|
|
60337
|
+
const result = await command.execute(overrides);
|
|
60338
|
+
const consumerEmittedData = {
|
|
60339
|
+
data: void 0,
|
|
60340
|
+
errors: void 0
|
|
60341
|
+
};
|
|
60342
|
+
if (result.isOk()) {
|
|
60343
|
+
deepFreeze(result.value);
|
|
60344
|
+
consumerEmittedData.data = result.value.data.data;
|
|
60345
|
+
} else {
|
|
60346
|
+
const { data, errors } = toGraphQLResponseFromFailure$1(result.error.failure);
|
|
60347
|
+
consumerEmittedData.data = data;
|
|
60348
|
+
consumerEmittedData.errors = errors;
|
|
60349
|
+
}
|
|
60350
|
+
callback(consumerEmittedData);
|
|
60351
|
+
} catch (error) {
|
|
60352
|
+
logError$1(error);
|
|
60353
|
+
callback({
|
|
60354
|
+
data: void 0,
|
|
60355
|
+
errors: [
|
|
60356
|
+
{ message: "Internal error in GraphQL adapter occurred", locations: [] }
|
|
60357
|
+
]
|
|
60358
|
+
});
|
|
60359
|
+
}
|
|
60360
|
+
};
|
|
60361
|
+
const subscribe = (config, requestContext, callback) => {
|
|
60362
|
+
config = wrapConfigAndVerify(config);
|
|
60363
|
+
const command = getCommand({ config, assertIsValid });
|
|
60364
|
+
let unsubscribe = () => {
|
|
60365
|
+
};
|
|
60366
|
+
const overrides = getOverridesForLegacyRequestContext(requestContext);
|
|
60367
|
+
command.execute(overrides).then((result) => {
|
|
60368
|
+
const consumerEmittedData = {
|
|
60369
|
+
data: void 0,
|
|
60370
|
+
errors: void 0
|
|
60371
|
+
};
|
|
60372
|
+
if (result.isOk()) {
|
|
60373
|
+
deepFreeze(result.value);
|
|
60374
|
+
consumerEmittedData.data = result.value.data.data;
|
|
60375
|
+
unsubscribe = result.value.subscribe(
|
|
60376
|
+
(res) => {
|
|
60377
|
+
handleEmit(res, callback);
|
|
60378
|
+
}
|
|
60379
|
+
);
|
|
60380
|
+
} else {
|
|
60381
|
+
const { data, errors } = toGraphQLResponseFromFailure$1(result.error.failure);
|
|
60382
|
+
consumerEmittedData.data = data;
|
|
60383
|
+
consumerEmittedData.errors = errors;
|
|
60384
|
+
unsubscribe = result.error.subscribe(
|
|
60385
|
+
(res) => {
|
|
60386
|
+
handleEmit(res, callback);
|
|
60387
|
+
}
|
|
60388
|
+
);
|
|
60389
|
+
}
|
|
60390
|
+
callback(consumerEmittedData);
|
|
60391
|
+
});
|
|
60392
|
+
return () => {
|
|
60393
|
+
unsubscribe();
|
|
60394
|
+
};
|
|
60395
|
+
};
|
|
60396
|
+
return { invoke, subscribe };
|
|
60397
|
+
}
|
|
60398
|
+
}
|
|
60399
|
+
function buildServiceDescriptor$1$2() {
|
|
60400
|
+
return {
|
|
60401
|
+
type: "graphQLLegacyImperativeBindings",
|
|
60402
|
+
version: "1.0",
|
|
60403
|
+
service: new GraphQLLegacyImperativeBindingsService()
|
|
60404
|
+
};
|
|
60405
|
+
}
|
|
60406
|
+
class GraphQLMutationBindingsService {
|
|
60407
|
+
bind(getCommand) {
|
|
60408
|
+
return async (...params) => {
|
|
60409
|
+
try {
|
|
60410
|
+
if (params.length) {
|
|
60411
|
+
params[0] = wrapConfigAndVerify(params[0], {
|
|
60412
|
+
acceptedOperations: ["mutation"]
|
|
60413
|
+
});
|
|
60414
|
+
}
|
|
60415
|
+
const command = getCommand({ params, assertIsValid });
|
|
60416
|
+
const result = await command.execute({ cacheControlConfig: { type: "no-cache" } });
|
|
60417
|
+
if (result.isOk()) {
|
|
60418
|
+
deepFreeze(result.value);
|
|
60419
|
+
return result.value.data;
|
|
60420
|
+
} else {
|
|
60421
|
+
return toGraphQLResponseFromFailure$1(result.error.failure);
|
|
60422
|
+
}
|
|
60423
|
+
} catch (error) {
|
|
60424
|
+
logError$1(error);
|
|
60425
|
+
return {
|
|
60426
|
+
data: void 0,
|
|
60427
|
+
errors: [
|
|
60428
|
+
{ message: "Internal error in GraphQL adapter occurred", locations: [] }
|
|
60429
|
+
]
|
|
60430
|
+
};
|
|
60431
|
+
}
|
|
60432
|
+
};
|
|
60433
|
+
}
|
|
60434
|
+
}
|
|
60435
|
+
function buildServiceDescriptor$7() {
|
|
60436
|
+
return {
|
|
60437
|
+
type: "graphQLMutationBindings",
|
|
60438
|
+
version: "1.0",
|
|
60439
|
+
service: new GraphQLMutationBindingsService()
|
|
60440
|
+
};
|
|
60441
|
+
}
|
|
60442
|
+
|
|
60443
|
+
/*!
|
|
60444
|
+
* Copyright (c) 2022, Salesforce, Inc.,
|
|
60445
|
+
* All rights reserved.
|
|
60446
|
+
* For full license text, see the LICENSE.txt file
|
|
60447
|
+
*/
|
|
60448
|
+
class Sanitizer {
|
|
60449
|
+
constructor(obj) {
|
|
60450
|
+
this.obj = obj;
|
|
60451
|
+
this.copy = {};
|
|
60452
|
+
this.currentPath = {
|
|
60453
|
+
key: "",
|
|
60454
|
+
value: obj,
|
|
60455
|
+
parent: null,
|
|
60456
|
+
data: this.copy
|
|
60457
|
+
};
|
|
60458
|
+
}
|
|
60459
|
+
sanitize() {
|
|
60460
|
+
const sanitizer = this;
|
|
60461
|
+
JSON.stringify(this.obj, function(key, value) {
|
|
60462
|
+
if (key === "") {
|
|
60463
|
+
return value;
|
|
60464
|
+
}
|
|
60465
|
+
const parent = this;
|
|
60466
|
+
if (parent !== sanitizer.currentPath.value) {
|
|
60467
|
+
sanitizer.exit(parent);
|
|
60468
|
+
}
|
|
60469
|
+
if (typeof value === "object" && value !== null) {
|
|
60470
|
+
sanitizer.enter(key, value);
|
|
60471
|
+
return value;
|
|
60472
|
+
}
|
|
60473
|
+
sanitizer.currentPath.data[key] = value;
|
|
60474
|
+
return value;
|
|
60475
|
+
});
|
|
60476
|
+
return this.copy;
|
|
60477
|
+
}
|
|
60478
|
+
enter(key, value) {
|
|
60479
|
+
const { currentPath: parentPath } = this;
|
|
60480
|
+
const data = parentPath.data[key] = Array.isArray(value) ? [] : {};
|
|
60481
|
+
this.currentPath = {
|
|
60482
|
+
key,
|
|
60483
|
+
value,
|
|
60484
|
+
parent: parentPath,
|
|
60485
|
+
data
|
|
60486
|
+
};
|
|
60487
|
+
}
|
|
60488
|
+
exit(parent) {
|
|
60489
|
+
while (this.currentPath.value !== parent) {
|
|
60490
|
+
this.currentPath = this.currentPath.parent || this.currentPath;
|
|
60491
|
+
}
|
|
60492
|
+
}
|
|
60493
|
+
}
|
|
60494
|
+
function sanitize(obj) {
|
|
60495
|
+
return new Sanitizer(obj).sanitize();
|
|
60496
|
+
}
|
|
60497
|
+
function isIncompleteConfigError(err) {
|
|
60498
|
+
return err instanceof MissingRequiredPropertyError || err instanceof JsonSchemaViolationError && err.validationErrors.find(
|
|
60499
|
+
(validationError) => validationError instanceof MissingRequiredPropertyError
|
|
60500
|
+
) !== void 0;
|
|
60501
|
+
}
|
|
60502
|
+
class CommandWireAdapterConstructor {
|
|
60503
|
+
constructor(callback, sourceContext, options) {
|
|
60504
|
+
this.callback = callback;
|
|
60505
|
+
this.connected = false;
|
|
60506
|
+
this.exposeRefresh = false;
|
|
60507
|
+
if (!(options == null ? void 0 : options.skipEmptyEmit)) {
|
|
60508
|
+
this.emit();
|
|
60509
|
+
}
|
|
60510
|
+
}
|
|
60511
|
+
connect() {
|
|
60512
|
+
this.connected = true;
|
|
60513
|
+
this.invokeAdapter();
|
|
60514
|
+
}
|
|
60515
|
+
disconnect() {
|
|
60516
|
+
this.unsubscribe();
|
|
60517
|
+
this.connected = false;
|
|
60518
|
+
}
|
|
60519
|
+
update(config, _context) {
|
|
60520
|
+
this.unsubscribe();
|
|
60521
|
+
this.config = sanitize(config);
|
|
60522
|
+
this.invokeAdapter();
|
|
60523
|
+
}
|
|
60524
|
+
emit(result) {
|
|
60525
|
+
try {
|
|
60526
|
+
if (result === void 0) {
|
|
60527
|
+
this.callback({ data: void 0, error: void 0 });
|
|
60528
|
+
} else {
|
|
60529
|
+
const consumerEmittedRefresh = () => {
|
|
60530
|
+
if (!this.refresh) {
|
|
60531
|
+
return Promise.resolve();
|
|
60532
|
+
}
|
|
60533
|
+
return new Promise((resolve, reject) => {
|
|
60534
|
+
if (!this.refresh) {
|
|
60535
|
+
resolve();
|
|
60536
|
+
return;
|
|
60537
|
+
}
|
|
60538
|
+
this.refresh().then((res) => {
|
|
60539
|
+
if (res.isOk()) {
|
|
60540
|
+
resolve();
|
|
60541
|
+
} else {
|
|
60542
|
+
reject(
|
|
60543
|
+
new Error(
|
|
60544
|
+
"Internal error in Lightning Data Service adapter occurred: Failed to refresh data"
|
|
60545
|
+
)
|
|
60546
|
+
);
|
|
60547
|
+
}
|
|
60548
|
+
});
|
|
60549
|
+
});
|
|
60550
|
+
};
|
|
60551
|
+
let consumerEmittedData = {
|
|
60552
|
+
data: void 0,
|
|
60553
|
+
error: void 0
|
|
60554
|
+
};
|
|
60555
|
+
if (this.exposeRefresh && this.refresh) {
|
|
60556
|
+
consumerEmittedData.refresh = consumerEmittedRefresh;
|
|
60557
|
+
}
|
|
60558
|
+
if (result.isErr()) {
|
|
60559
|
+
if (isSubscribableResult(result)) {
|
|
60560
|
+
consumerEmittedData.error = result.error.failure;
|
|
60561
|
+
} else {
|
|
60562
|
+
consumerEmittedData.error = result.error;
|
|
60563
|
+
}
|
|
60564
|
+
} else {
|
|
60565
|
+
if (isSubscribableResult(result)) {
|
|
60566
|
+
deepFreeze(result.value.data);
|
|
60567
|
+
consumerEmittedData.data = result.value.data;
|
|
60568
|
+
} else {
|
|
60569
|
+
deepFreeze(result.value);
|
|
60570
|
+
consumerEmittedData.data = result.value;
|
|
60571
|
+
}
|
|
60572
|
+
}
|
|
60573
|
+
this.callback(consumerEmittedData);
|
|
60574
|
+
}
|
|
60575
|
+
} catch (e) {
|
|
60576
|
+
this.handleExecutionThrow(e);
|
|
60577
|
+
}
|
|
60578
|
+
}
|
|
60579
|
+
invokeAdapter() {
|
|
60580
|
+
if (!this.connected || this.config === void 0) {
|
|
60581
|
+
return;
|
|
60582
|
+
}
|
|
60583
|
+
if (this.configSchema) {
|
|
60584
|
+
try {
|
|
60585
|
+
assertIsValid(this.config, this.configSchema);
|
|
60586
|
+
} catch (err) {
|
|
60587
|
+
if (isIncompleteConfigError(err)) {
|
|
60588
|
+
return;
|
|
60589
|
+
}
|
|
60590
|
+
throw err;
|
|
60591
|
+
}
|
|
60592
|
+
}
|
|
60593
|
+
const initialConfig = this.config;
|
|
60594
|
+
const command = this.getCommand();
|
|
60595
|
+
try {
|
|
60596
|
+
command.execute().then((result) => {
|
|
60597
|
+
if (!this.connected || this.config !== initialConfig) {
|
|
60598
|
+
return;
|
|
60599
|
+
}
|
|
60600
|
+
this.refresh = void 0;
|
|
60601
|
+
if (result.isOk()) {
|
|
60602
|
+
if (isSubscribableResult(result)) {
|
|
60603
|
+
const value = result.value;
|
|
60604
|
+
this.unsubscriber = value.subscribe((updatedResult) => {
|
|
60605
|
+
if (!this.connected || this.config !== initialConfig) {
|
|
60606
|
+
this.unsubscribe();
|
|
60607
|
+
return;
|
|
60608
|
+
}
|
|
60609
|
+
this.emit(updatedResult);
|
|
60610
|
+
});
|
|
60611
|
+
this.refresh = value.refresh;
|
|
60612
|
+
this.emit(ok$1(value.data));
|
|
60613
|
+
} else {
|
|
60614
|
+
this.emit(result);
|
|
60615
|
+
}
|
|
60616
|
+
} else {
|
|
60617
|
+
if (isSubscribableResult(result)) {
|
|
60618
|
+
const value = result.error;
|
|
60619
|
+
this.unsubscriber = value.subscribe((updatedResult) => {
|
|
60620
|
+
if (!this.connected || this.config !== initialConfig) {
|
|
60621
|
+
this.unsubscribe();
|
|
60622
|
+
return;
|
|
60623
|
+
}
|
|
60624
|
+
this.emit(updatedResult);
|
|
60625
|
+
});
|
|
60626
|
+
this.refresh = value.refresh;
|
|
60627
|
+
this.emit(result);
|
|
60628
|
+
} else {
|
|
60629
|
+
this.unsubscriber = () => {
|
|
60630
|
+
};
|
|
60631
|
+
this.emit(result);
|
|
60632
|
+
}
|
|
60633
|
+
}
|
|
60634
|
+
});
|
|
60635
|
+
} catch (e) {
|
|
60636
|
+
this.handleExecutionThrow(e);
|
|
60637
|
+
}
|
|
60638
|
+
}
|
|
60639
|
+
handleExecutionThrow(error) {
|
|
60640
|
+
emitError(this.callback, error);
|
|
60641
|
+
}
|
|
60642
|
+
unsubscribe() {
|
|
60643
|
+
if (this.unsubscriber) {
|
|
60644
|
+
this.unsubscriber();
|
|
60645
|
+
delete this.unsubscriber;
|
|
60646
|
+
}
|
|
60647
|
+
}
|
|
60648
|
+
}
|
|
60649
|
+
function toGraphQLResponseFromFailure(failure) {
|
|
60650
|
+
if (isUserVisibleError$1(failure)) {
|
|
60651
|
+
return {
|
|
60652
|
+
data: failure.data.data,
|
|
60653
|
+
errors: failure.data.errors
|
|
60654
|
+
};
|
|
60655
|
+
}
|
|
60656
|
+
logError$1(failure);
|
|
60657
|
+
return {
|
|
60658
|
+
data: void 0,
|
|
60659
|
+
errors: [{ message: "Internal error in GraphQL adapter occurred", locations: [] }]
|
|
60660
|
+
};
|
|
60661
|
+
}
|
|
60662
|
+
class LWCWireBindingsService {
|
|
60663
|
+
bind(getCommand, configSchema, exposeRefresh = false) {
|
|
60664
|
+
return class extends CommandWireAdapterConstructor {
|
|
60665
|
+
constructor() {
|
|
60666
|
+
super(...arguments);
|
|
60667
|
+
this.configSchema = configSchema;
|
|
60668
|
+
this.exposeRefresh = exposeRefresh;
|
|
60669
|
+
}
|
|
60670
|
+
getCommand() {
|
|
60671
|
+
return getCommand(this.config);
|
|
60672
|
+
}
|
|
60673
|
+
};
|
|
60674
|
+
}
|
|
60675
|
+
}
|
|
60676
|
+
function buildServiceDescriptor$1$1() {
|
|
60677
|
+
return {
|
|
60678
|
+
type: "lwcWireBindings",
|
|
60679
|
+
version: "1.0",
|
|
60680
|
+
service: new LWCWireBindingsService()
|
|
60681
|
+
};
|
|
60682
|
+
}
|
|
60683
|
+
class GraphQLCommandWireAdapterConstructor extends CommandWireAdapterConstructor {
|
|
60684
|
+
emit(result) {
|
|
60685
|
+
try {
|
|
60686
|
+
if (result === void 0) {
|
|
60687
|
+
this.callback({ data: void 0, errors: void 0 });
|
|
60688
|
+
} else {
|
|
60689
|
+
const consumerEmittedRefresh = () => {
|
|
60690
|
+
if (!this.refresh) {
|
|
60691
|
+
return Promise.resolve();
|
|
60692
|
+
}
|
|
60693
|
+
return new Promise((resolve, reject) => {
|
|
60694
|
+
if (!this.refresh) {
|
|
60695
|
+
resolve();
|
|
60696
|
+
return;
|
|
60697
|
+
}
|
|
60698
|
+
this.refresh().then((res) => {
|
|
60699
|
+
if (res.isOk()) {
|
|
60700
|
+
resolve();
|
|
60701
|
+
} else {
|
|
60702
|
+
reject(
|
|
60703
|
+
new Error(
|
|
60704
|
+
"Internal error in GraphQL adapter occurred: Failed to refresh GraphQL data"
|
|
60705
|
+
)
|
|
60706
|
+
);
|
|
60707
|
+
}
|
|
60708
|
+
});
|
|
60709
|
+
});
|
|
60710
|
+
};
|
|
60711
|
+
let consumerEmittedData = {
|
|
60712
|
+
data: void 0,
|
|
60713
|
+
errors: void 0
|
|
60714
|
+
};
|
|
60715
|
+
if (this.exposeRefresh && this.refresh) {
|
|
60716
|
+
consumerEmittedData.refresh = consumerEmittedRefresh;
|
|
60717
|
+
}
|
|
60718
|
+
if (result.isErr()) {
|
|
60719
|
+
const failure = isSubscribableResult(result) ? result.error.failure : result.error;
|
|
60720
|
+
const resp = toGraphQLResponseFromFailure(failure);
|
|
60721
|
+
consumerEmittedData.data = resp.data;
|
|
60722
|
+
consumerEmittedData.errors = resp.errors;
|
|
60723
|
+
} else {
|
|
60724
|
+
consumerEmittedData.data = result.value.data;
|
|
60725
|
+
}
|
|
60726
|
+
deepFreeze(consumerEmittedData);
|
|
60727
|
+
this.callback(consumerEmittedData);
|
|
60728
|
+
}
|
|
60729
|
+
} catch (e) {
|
|
60730
|
+
logError$1(e);
|
|
60731
|
+
this.handleExecutionThrow(e);
|
|
60732
|
+
}
|
|
60733
|
+
}
|
|
60734
|
+
handleExecutionThrow(e) {
|
|
60735
|
+
logError$1(e);
|
|
60736
|
+
this.callback({
|
|
60737
|
+
data: void 0,
|
|
60738
|
+
errors: [{ message: "Internal error in GraphQL adapter occurred", locations: [] }]
|
|
60739
|
+
});
|
|
60740
|
+
}
|
|
60741
|
+
update(config, _context) {
|
|
60742
|
+
this.unsubscribe();
|
|
60743
|
+
const resolvedQuery = resolveAst(config.query);
|
|
60744
|
+
if (resolvedQuery) {
|
|
60745
|
+
validateGraphQLOperations(
|
|
60746
|
+
{ query: resolvedQuery, operationName: config == null ? void 0 : config.operationName },
|
|
60747
|
+
{ acceptedOperations: ["query"] }
|
|
60748
|
+
);
|
|
60749
|
+
}
|
|
60750
|
+
this.config = {
|
|
60751
|
+
...sanitize(config),
|
|
60752
|
+
query: resolvedQuery
|
|
60753
|
+
};
|
|
60754
|
+
this.invokeAdapter();
|
|
60755
|
+
}
|
|
60756
|
+
}
|
|
60757
|
+
class LWCGraphQLWireBindingsService {
|
|
60758
|
+
bind(getCommand, configSchema, exposeRefresh = false) {
|
|
60759
|
+
return class extends GraphQLCommandWireAdapterConstructor {
|
|
60760
|
+
constructor() {
|
|
60761
|
+
super(...arguments);
|
|
60762
|
+
this.configSchema = configSchema;
|
|
60763
|
+
this.exposeRefresh = exposeRefresh;
|
|
60764
|
+
}
|
|
60765
|
+
getCommand() {
|
|
60766
|
+
return getCommand(this.config);
|
|
60767
|
+
}
|
|
60768
|
+
};
|
|
60769
|
+
}
|
|
60770
|
+
}
|
|
60771
|
+
function buildServiceDescriptor$2() {
|
|
60772
|
+
return {
|
|
60773
|
+
type: "lwcGraphQLWireBindings",
|
|
60774
|
+
version: "1.0",
|
|
60775
|
+
service: new LWCGraphQLWireBindingsService()
|
|
60776
|
+
};
|
|
60777
|
+
}
|
|
60778
|
+
|
|
60779
|
+
/*!
|
|
60780
|
+
* Copyright (c) 2022, Salesforce, Inc.,
|
|
60781
|
+
* All rights reserved.
|
|
60782
|
+
* For full license text, see the LICENSE.txt file
|
|
60783
|
+
*/
|
|
60784
|
+
function buildServiceDescriptor$1(interceptors = { request: [], response: [], finally: [] }, retryService) {
|
|
59477
60785
|
return {
|
|
59478
60786
|
type: "fetch",
|
|
59479
60787
|
version: "1.0",
|
|
59480
60788
|
service: function(...args) {
|
|
59481
|
-
|
|
60789
|
+
var _a;
|
|
60790
|
+
const context = (_a = interceptors.createContext) == null ? void 0 : _a.call(interceptors);
|
|
60791
|
+
const {
|
|
60792
|
+
request: requestInterceptors = [],
|
|
60793
|
+
response: responseInterceptors = [],
|
|
60794
|
+
finally: finallyInterceptors = []
|
|
60795
|
+
} = interceptors;
|
|
59482
60796
|
const pending = requestInterceptors.reduce(
|
|
59483
|
-
(previousPromise, interceptor) => previousPromise.then(interceptor),
|
|
59484
|
-
resolvedPromiseLike$
|
|
60797
|
+
(previousPromise, interceptor) => previousPromise.then((args2) => interceptor(args2, context)),
|
|
60798
|
+
resolvedPromiseLike$2(args)
|
|
59485
60799
|
);
|
|
59486
|
-
return pending.then((args2) => {
|
|
60800
|
+
return Promise.resolve(pending).then((args2) => {
|
|
59487
60801
|
if (retryService) {
|
|
59488
60802
|
return retryService.applyRetry(() => fetch(...args2));
|
|
59489
60803
|
}
|
|
59490
60804
|
return fetch(...args2);
|
|
59491
60805
|
}).then((response) => {
|
|
59492
60806
|
return responseInterceptors.reduce(
|
|
59493
|
-
(previousPromise, interceptor) => previousPromise.then(interceptor),
|
|
59494
|
-
resolvedPromiseLike$
|
|
60807
|
+
(previousPromise, interceptor) => previousPromise.then((response2) => interceptor(response2, context)),
|
|
60808
|
+
resolvedPromiseLike$2(response)
|
|
59495
60809
|
);
|
|
60810
|
+
}).finally(() => {
|
|
60811
|
+
if (finallyInterceptors.length > 0) {
|
|
60812
|
+
return finallyInterceptors.reduce(
|
|
60813
|
+
(previousPromise, interceptor) => previousPromise.then(() => interceptor(context)),
|
|
60814
|
+
Promise.resolve()
|
|
60815
|
+
);
|
|
60816
|
+
}
|
|
59496
60817
|
});
|
|
59497
60818
|
}
|
|
59498
60819
|
};
|
|
@@ -60064,7 +61385,7 @@ class NimbusDurableCacheInclusionPolicy extends DurableCacheInclusionPolicy {
|
|
|
60064
61385
|
return;
|
|
60065
61386
|
entries.forEach(({ key, entry }) => {
|
|
60066
61387
|
this.services.cache.set(key, entry);
|
|
60067
|
-
return resolvedPromiseLike$
|
|
61388
|
+
return resolvedPromiseLike$2(ok$1(undefined));
|
|
60068
61389
|
});
|
|
60069
61390
|
});
|
|
60070
61391
|
}
|
|
@@ -60175,11 +61496,7 @@ class NimbusSqliteOneStoreCache {
|
|
|
60175
61496
|
}
|
|
60176
61497
|
|
|
60177
61498
|
const PURGE_CACHE_DAYS = 30;
|
|
60178
|
-
|
|
60179
|
-
// import { buildServiceDescriptor as buildNdJsonServiceDescriptor } from '@conduit-client/command-ndjson/v1';
|
|
60180
|
-
// import { buildServiceDescriptor as buildStreamingCommandServiceDescriptor } from '@conduit-client/command-streaming/v1';
|
|
60181
|
-
// import { buildServiceDescriptor as buildSseCommandServiceDescriptor } from '@conduit-client/command-sse/v1';
|
|
60182
|
-
function initializeOneStore(sqliteStore) {
|
|
61499
|
+
function initializeOneStore(sqliteStore, luvio) {
|
|
60183
61500
|
if (!useOneStore.isOpen({ fallback: true })) {
|
|
60184
61501
|
return;
|
|
60185
61502
|
}
|
|
@@ -60188,35 +61505,60 @@ function initializeOneStore(sqliteStore) {
|
|
|
60188
61505
|
globalThis.performance = { now: () => Date.now() };
|
|
60189
61506
|
}
|
|
60190
61507
|
const loggerService = new ConsoleLogger('ERROR');
|
|
60191
|
-
const cacheServiceDescriptor = buildServiceDescriptor$
|
|
60192
|
-
const instrumentationServiceDescriptor = buildServiceDescriptor$
|
|
61508
|
+
const cacheServiceDescriptor = buildServiceDescriptor$h();
|
|
61509
|
+
const instrumentationServiceDescriptor = buildServiceDescriptor$e(loggerService);
|
|
60193
61510
|
const nimbusSqliteOneStoreCacheServiceDescriptor = buildNimbusDurableCacheInclusionPolicyService(cacheServiceDescriptor.service, new NimbusSqliteOneStoreCache(sqliteStore));
|
|
60194
|
-
const featureFlagsServiceDescriptor = buildServiceDescriptor$
|
|
61511
|
+
const featureFlagsServiceDescriptor = buildServiceDescriptor$c();
|
|
60195
61512
|
const featureFlagsService = featureFlagsServiceDescriptor.service;
|
|
60196
|
-
// This disables the
|
|
60197
|
-
//
|
|
60198
|
-
// due to the fact that offline support depends on Luvio, and mobile
|
|
60199
|
-
// does not want to migrate right now
|
|
61513
|
+
// This disables the GraphQL mapping from lightning/uiGraphQLApi to lightning/graphql in this runtime
|
|
61514
|
+
// The gate is likely NOT to rollout ever, but we keep it here for completeness
|
|
60200
61515
|
featureFlagsService.set('useOneStoreGraphQL', false);
|
|
61516
|
+
const luvioUiapiRecordsServiceDescriptor = buildServiceDescriptor$a((configs) => {
|
|
61517
|
+
return notifyUpdateAvailableFactory(luvio)(configs);
|
|
61518
|
+
}, (recordId, reader) => {
|
|
61519
|
+
const recordKey = buildRecordRepKeyFromId(recordId);
|
|
61520
|
+
reader.markSeenId(recordKey);
|
|
61521
|
+
const linkedData = reader.read({
|
|
61522
|
+
recordId: recordKey,
|
|
61523
|
+
node: {
|
|
61524
|
+
kind: 'Fragment',
|
|
61525
|
+
private: [],
|
|
61526
|
+
opaque: true,
|
|
61527
|
+
version: VERSION$1v,
|
|
61528
|
+
},
|
|
61529
|
+
variables: {},
|
|
61530
|
+
});
|
|
61531
|
+
// we don't want anything to be marked missing, since this results in an unfulfilled snapshot
|
|
61532
|
+
reader.unMarkMissing();
|
|
61533
|
+
return linkedData.data;
|
|
61534
|
+
});
|
|
60201
61535
|
const services = [
|
|
60202
61536
|
instrumentationServiceDescriptor,
|
|
60203
61537
|
buildNimbusFetchServiceDescriptor(),
|
|
60204
|
-
buildServiceDescriptor$
|
|
61538
|
+
buildServiceDescriptor$f(instrumentationServiceDescriptor.service),
|
|
60205
61539
|
// NOTE: These do not directly depend on Aura, and are necessary for HTTP fallback support.
|
|
60206
|
-
buildServiceDescriptor$
|
|
60207
|
-
buildServiceDescriptor$
|
|
60208
|
-
buildServiceDescriptor$
|
|
60209
|
-
buildServiceDescriptor$
|
|
61540
|
+
buildServiceDescriptor$m(),
|
|
61541
|
+
buildServiceDescriptor$l(),
|
|
61542
|
+
buildServiceDescriptor$k(),
|
|
61543
|
+
buildServiceDescriptor$g(cacheServiceDescriptor.service, nimbusSqliteOneStoreCacheServiceDescriptor.service, instrumentationServiceDescriptor.service),
|
|
61544
|
+
buildServiceDescriptor$j(),
|
|
61545
|
+
buildServiceDescriptor$n(),
|
|
61546
|
+
buildServiceDescriptor$i(),
|
|
60210
61547
|
buildServiceDescriptor$d(),
|
|
60211
|
-
buildServiceDescriptor$
|
|
60212
|
-
buildServiceDescriptor$
|
|
60213
|
-
|
|
61548
|
+
buildServiceDescriptor$9(),
|
|
61549
|
+
buildServiceDescriptor$8(),
|
|
61550
|
+
featureFlagsServiceDescriptor,
|
|
61551
|
+
buildServiceDescriptor$b(luvio),
|
|
61552
|
+
luvioUiapiRecordsServiceDescriptor,
|
|
61553
|
+
buildServiceDescriptor$6(),
|
|
61554
|
+
buildServiceDescriptor$5(),
|
|
61555
|
+
buildServiceDescriptor$4(),
|
|
60214
61556
|
buildServiceDescriptor$3(),
|
|
61557
|
+
buildServiceDescriptor$2$1(),
|
|
61558
|
+
buildServiceDescriptor$1$2(),
|
|
61559
|
+
buildServiceDescriptor$7(),
|
|
61560
|
+
buildServiceDescriptor$1$1(),
|
|
60215
61561
|
buildServiceDescriptor$2(),
|
|
60216
|
-
featureFlagsServiceDescriptor,
|
|
60217
|
-
// Luvio service won't be used since we set the useOneStoreGraphQL flag to false
|
|
60218
|
-
buildServiceDescriptor$5({}),
|
|
60219
|
-
buildServiceDescriptor$4({}, {}),
|
|
60220
61562
|
// TODO[@W-18753648]: See note above.
|
|
60221
61563
|
// buildStreamingCommandServiceDescriptor(),
|
|
60222
61564
|
// buildNdJsonServiceDescriptor(),
|
|
@@ -60405,7 +61747,7 @@ function getRuntime({ primeUser = false } = {}) {
|
|
|
60405
61747
|
};
|
|
60406
61748
|
const draftAwareCreateContentDocumentAndVersionAdapter = createContentDocumentAndVersionDraftAdapterFactory(lazyLuvio, NimbusBinaryStore, contentDocumentCompositeActionHandler, lazyDurableRecordStore);
|
|
60407
61749
|
const draftAwareCreateRecord = createRecordDraftAdapterFactory(uiApiRecordHandler, lazyDurableRecordStore);
|
|
60408
|
-
const draftAwareUpdateRecord = updateRecordDraftAdapterFactory(uiApiRecordHandler, lazyDurableRecordStore);
|
|
61750
|
+
const draftAwareUpdateRecord = updateRecordDraftAdapterFactory(uiApiRecordHandler, lazyDurableRecordStore, lazyObjectInfoService);
|
|
60409
61751
|
const draftAwareDeleteRecord = deleteRecordDraftAdapterFactory(uiApiRecordHandler);
|
|
60410
61752
|
const draftAwarePeformQuickAction = performQuickActionDraftAdapterFactory(quickActionHandler, userId);
|
|
60411
61753
|
const draftAwarePerformUpdateRecordQuickActionAdapter = performUpdateRecordQuickActionDraftAdapterFactory(updateRecordQuickActionHandler, userId);
|
|
@@ -60438,7 +61780,7 @@ function getRuntime({ primeUser = false } = {}) {
|
|
|
60438
61780
|
withRegistration('@salesforce/lds-adapters-uiapi/graphql', configureUIAPIGraphQL);
|
|
60439
61781
|
}
|
|
60440
61782
|
// onestore initialization
|
|
60441
|
-
initializeOneStore(lazyDurableStore['plugin']);
|
|
61783
|
+
initializeOneStore(lazyDurableStore['plugin'], lazyLuvio);
|
|
60442
61784
|
return {
|
|
60443
61785
|
luvio: lazyLuvio,
|
|
60444
61786
|
internalLuvio: lazyInternalLuvio,
|
|
@@ -60472,4 +61814,4 @@ register({
|
|
|
60472
61814
|
});
|
|
60473
61815
|
|
|
60474
61816
|
export { O11Y_NAMESPACE_LDS_MOBILE, getRuntime, ingest$1o as ingestDenormalizedRecordRepresentation, initializeOneStore, registerReportObserver, reportGraphqlQueryParseError };
|
|
60475
|
-
// version: 1.
|
|
61817
|
+
// version: 1.403.0-bc09fbc54b
|