@salesforce/lds-worker-api 1.278.0 → 1.280.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.
@@ -4,7 +4,7 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
 
7
- /* *******************************************************************************************
7
+ /*
8
8
  * ATTENTION!
9
9
  * THIS IS A GENERATED FILE FROM https://github.com/salesforce-experience-platform-emu/lds-lightning-platform
10
10
  * If you would like to contribute to LDS, please follow the steps outlined in the git repo.
@@ -2293,6 +2293,13 @@
2293
2293
  return value !== undefined && value !== null;
2294
2294
  }
2295
2295
 
2296
+ /**
2297
+ * Checks if the given variable is an object
2298
+ */
2299
+ function isObject$1(value) {
2300
+ return typeof value === 'object' && value !== null;
2301
+ }
2302
+
2296
2303
  var StoreLinkStateValues$2;
2297
2304
  (function (StoreLinkStateValues) {
2298
2305
  StoreLinkStateValues[StoreLinkStateValues["NotPresent"] = 0] = "NotPresent";
@@ -2443,6 +2450,7 @@
2443
2450
  variables: {},
2444
2451
  });
2445
2452
  }
2453
+ const readerOpaqueReferenceMap = new WeakMap();
2446
2454
  class Reader {
2447
2455
  constructor(store, variables, refresh, baseSnapshot, ttlStrategy) {
2448
2456
  this.store = store;
@@ -2907,7 +2915,12 @@
2907
2915
  }
2908
2916
  if (fragment.opaque) {
2909
2917
  this.checkIfChanged(result.value, { useDeepEquals: true });
2910
- const opaqueValue = this.opaqueCopy(result.value);
2918
+ if (isObject$1(result.value) && !readerOpaqueReferenceMap.has(result.value)) {
2919
+ readerOpaqueReferenceMap.set(result.value, this.opaqueCopy(result.value));
2920
+ }
2921
+ const opaqueValue = isObject$1(result.value)
2922
+ ? readerOpaqueReferenceMap.get(result.value)
2923
+ : result.value;
2911
2924
  return {
2912
2925
  state: FragmentReadResultState$1.Success,
2913
2926
  value: opaqueValue,
@@ -4034,7 +4047,7 @@
4034
4047
  }
4035
4048
  return resourceParams;
4036
4049
  }
4037
- // engine version: 0.154.12-43ac02c6
4050
+ // engine version: 0.154.14-2fbbff64
4038
4051
 
4039
4052
  /**
4040
4053
  * Copyright (c) 2022, Salesforce, Inc.,
@@ -4162,7 +4175,7 @@
4162
4175
  }
4163
4176
  callbacks.push(callback);
4164
4177
  }
4165
- // version: 1.278.0-f0e8ebcd6
4178
+ // version: 1.280.0-92c104b03
4166
4179
 
4167
4180
  // TODO [TD-0081508]: once that TD is fulfilled we can probably change this file
4168
4181
  function instrumentAdapter$1(createFunction, _metadata) {
@@ -4186,7 +4199,7 @@
4186
4199
  * For full license text, see the LICENSE.txt file
4187
4200
  */
4188
4201
 
4189
- /* *******************************************************************************************
4202
+ /*
4190
4203
  * ATTENTION!
4191
4204
  * THIS IS A GENERATED FILE FROM https://github.com/salesforce-experience-platform-emu/lds-lightning-platform
4192
4205
  * If you would like to contribute to LDS, please follow the steps outlined in the git repo.
@@ -15670,7 +15683,7 @@
15670
15683
  }
15671
15684
  return superResult;
15672
15685
  }
15673
- // version: 1.278.0-f0e8ebcd6
15686
+ // version: 1.280.0-92c104b03
15674
15687
 
15675
15688
  function unwrap(data) {
15676
15689
  // The lwc-luvio bindings import a function from lwc called "unwrap".
@@ -16595,7 +16608,7 @@
16595
16608
  const { apiFamily, name } = metadata;
16596
16609
  return createGraphQLWireAdapterConstructor$1(adapter, `${apiFamily}.${name}`, luvio, astResolver);
16597
16610
  }
16598
- // version: 1.278.0-f0e8ebcd6
16611
+ // version: 1.280.0-92c104b03
16599
16612
 
16600
16613
  /**
16601
16614
  * Copyright (c) 2022, Salesforce, Inc.,
@@ -16694,7 +16707,7 @@
16694
16707
  TypeCheckShapes[TypeCheckShapes["Integer"] = 3] = "Integer";
16695
16708
  TypeCheckShapes[TypeCheckShapes["Unsupported"] = 4] = "Unsupported";
16696
16709
  })(TypeCheckShapes || (TypeCheckShapes = {}));
16697
- // engine version: 0.154.12-43ac02c6
16710
+ // engine version: 0.154.14-2fbbff64
16698
16711
 
16699
16712
  const { keys: ObjectKeys$3, create: ObjectCreate$3 } = Object;
16700
16713
 
@@ -16754,6 +16767,10 @@
16754
16767
  /**
16755
16768
  * Defines configuration for the module with a default value which can be overridden by the runtime environment.
16756
16769
  */
16770
+ /**
16771
+ * Environment Aware GraphQLBatch adapter
16772
+ */
16773
+ let environmentAwareGraphQLBatchAdapter$2 = undefined;
16757
16774
  /**
16758
16775
  * Draft-aware GraphQL adapter
16759
16776
  */
@@ -16880,6 +16897,12 @@
16880
16897
  getDraftAwareGraphQLAdapter: function () {
16881
16898
  return draftAwareGraphQLAdapter$2;
16882
16899
  },
16900
+ setEnvironmentAwareGraphQLBatchAdapter: function (adapter) {
16901
+ environmentAwareGraphQLBatchAdapter$2 = adapter;
16902
+ },
16903
+ getEnvironmentAwareGraphQLBatchAdapter: function () {
16904
+ return environmentAwareGraphQLBatchAdapter$2;
16905
+ },
16883
16906
  };
16884
16907
  const registrations$2 = new Set();
16885
16908
  /**
@@ -28563,7 +28586,7 @@
28563
28586
  buildCachedSnapshotCachePolicy$E, buildNetworkSnapshotCachePolicy$F);
28564
28587
  };
28565
28588
 
28566
- function validate$1f(obj, path = 'ActionRelatedListSingleBatchInputRepresentation') {
28589
+ function validate$1i(obj, path = 'ActionRelatedListSingleBatchInputRepresentation') {
28567
28590
  const v_error = (() => {
28568
28591
  if (typeof obj !== 'object' || ArrayIsArray$2(obj) || obj === null) {
28569
28592
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -28974,7 +28997,7 @@
28974
28997
  const untrustedConfig_relatedListsActionParameters_array = [];
28975
28998
  for (let i = 0, arrayLength = untrustedConfig_relatedListsActionParameters.length; i < arrayLength; i++) {
28976
28999
  const untrustedConfig_relatedListsActionParameters_item = untrustedConfig_relatedListsActionParameters[i];
28977
- const referenceActionRelatedListSingleBatchInputRepresentationValidationError = validate$1f(untrustedConfig_relatedListsActionParameters_item);
29000
+ const referenceActionRelatedListSingleBatchInputRepresentationValidationError = validate$1i(untrustedConfig_relatedListsActionParameters_item);
28978
29001
  if (referenceActionRelatedListSingleBatchInputRepresentationValidationError === null) {
28979
29002
  untrustedConfig_relatedListsActionParameters_array.push(untrustedConfig_relatedListsActionParameters_item);
28980
29003
  }
@@ -31431,7 +31454,7 @@
31431
31454
  buildCachedSnapshotCachePolicy$u, buildNetworkSnapshotCachePolicy$v);
31432
31455
  };
31433
31456
 
31434
- function validate$15(obj, path = 'ListFilterByInfoInputRepresentation') {
31457
+ function validate$18(obj, path = 'ListFilterByInfoInputRepresentation') {
31435
31458
  const v_error = (() => {
31436
31459
  if (typeof obj !== 'object' || ArrayIsArray$2(obj) || obj === null) {
31437
31460
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -31462,7 +31485,7 @@
31462
31485
  return v_error === undefined ? null : v_error;
31463
31486
  }
31464
31487
 
31465
- function validate$14(obj, path = 'ListScopeInputRepresentation') {
31488
+ function validate$17(obj, path = 'ListScopeInputRepresentation') {
31466
31489
  const v_error = (() => {
31467
31490
  if (typeof obj !== 'object' || ArrayIsArray$2(obj) || obj === null) {
31468
31491
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -31586,7 +31609,7 @@
31586
31609
  const untrustedConfig_filteredByInfo_array = [];
31587
31610
  for (let i = 0, arrayLength = untrustedConfig_filteredByInfo.length; i < arrayLength; i++) {
31588
31611
  const untrustedConfig_filteredByInfo_item = untrustedConfig_filteredByInfo[i];
31589
- const referenceListFilterByInfoInputRepresentationValidationError = validate$15(untrustedConfig_filteredByInfo_item);
31612
+ const referenceListFilterByInfoInputRepresentationValidationError = validate$18(untrustedConfig_filteredByInfo_item);
31590
31613
  if (referenceListFilterByInfoInputRepresentationValidationError === null) {
31591
31614
  untrustedConfig_filteredByInfo_array.push(untrustedConfig_filteredByInfo_item);
31592
31615
  }
@@ -31594,7 +31617,7 @@
31594
31617
  config.filteredByInfo = untrustedConfig_filteredByInfo_array;
31595
31618
  }
31596
31619
  const untrustedConfig_scope = untrustedConfig.scope;
31597
- const referenceListScopeInputRepresentationValidationError = validate$14(untrustedConfig_scope);
31620
+ const referenceListScopeInputRepresentationValidationError = validate$17(untrustedConfig_scope);
31598
31621
  if (referenceListScopeInputRepresentationValidationError === null) {
31599
31622
  config.scope = untrustedConfig_scope;
31600
31623
  }
@@ -31862,7 +31885,7 @@
31862
31885
  const untrustedConfig_filteredByInfo_array = [];
31863
31886
  for (let i = 0, arrayLength = untrustedConfig_filteredByInfo.length; i < arrayLength; i++) {
31864
31887
  const untrustedConfig_filteredByInfo_item = untrustedConfig_filteredByInfo[i];
31865
- const referenceListFilterByInfoInputRepresentationValidationError = validate$15(untrustedConfig_filteredByInfo_item);
31888
+ const referenceListFilterByInfoInputRepresentationValidationError = validate$18(untrustedConfig_filteredByInfo_item);
31866
31889
  if (referenceListFilterByInfoInputRepresentationValidationError === null) {
31867
31890
  untrustedConfig_filteredByInfo_array.push(untrustedConfig_filteredByInfo_item);
31868
31891
  }
@@ -31870,7 +31893,7 @@
31870
31893
  config.filteredByInfo = untrustedConfig_filteredByInfo_array;
31871
31894
  }
31872
31895
  const untrustedConfig_scope = untrustedConfig.scope;
31873
- const referenceListScopeInputRepresentationValidationError = validate$14(untrustedConfig_scope);
31896
+ const referenceListScopeInputRepresentationValidationError = validate$17(untrustedConfig_scope);
31874
31897
  if (referenceListScopeInputRepresentationValidationError === null) {
31875
31898
  config.scope = untrustedConfig_scope;
31876
31899
  }
@@ -32621,7 +32644,7 @@
32621
32644
  buildCachedSnapshotCachePolicy$r, buildNetworkSnapshotCachePolicy$s);
32622
32645
  };
32623
32646
 
32624
- function validate$Z(obj, path = 'ListOrderedByInfoInputRepresentation') {
32647
+ function validate$10(obj, path = 'ListOrderedByInfoInputRepresentation') {
32625
32648
  const v_error = (() => {
32626
32649
  if (typeof obj !== 'object' || ArrayIsArray$2(obj) || obj === null) {
32627
32650
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -32724,7 +32747,7 @@
32724
32747
  const untrustedConfig_orderedBy_array = [];
32725
32748
  for (let i = 0, arrayLength = untrustedConfig_orderedBy.length; i < arrayLength; i++) {
32726
32749
  const untrustedConfig_orderedBy_item = untrustedConfig_orderedBy[i];
32727
- const referenceListOrderedByInfoInputRepresentationValidationError = validate$Z(untrustedConfig_orderedBy_item);
32750
+ const referenceListOrderedByInfoInputRepresentationValidationError = validate$10(untrustedConfig_orderedBy_item);
32728
32751
  if (referenceListOrderedByInfoInputRepresentationValidationError === null) {
32729
32752
  untrustedConfig_orderedBy_array.push(untrustedConfig_orderedBy_item);
32730
32753
  }
@@ -36928,7 +36951,7 @@
36928
36951
  buildCachedSnapshotCachePolicy$d, buildNetworkSnapshotCachePolicy$e);
36929
36952
  };
36930
36953
 
36931
- function validate$z(obj, path = 'ListUserPreferenceInputRepresentation') {
36954
+ function validate$C(obj, path = 'ListUserPreferenceInputRepresentation') {
36932
36955
  const v_error = (() => {
36933
36956
  if (typeof obj !== 'object' || ArrayIsArray$2(obj) || obj === null) {
36934
36957
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -37005,7 +37028,7 @@
37005
37028
  const untrustedConfig_orderedByInfo_array = [];
37006
37029
  for (let i = 0, arrayLength = untrustedConfig_orderedByInfo.length; i < arrayLength; i++) {
37007
37030
  const untrustedConfig_orderedByInfo_item = untrustedConfig_orderedByInfo[i];
37008
- const referenceListOrderedByInfoInputRepresentationValidationError = validate$Z(untrustedConfig_orderedByInfo_item);
37031
+ const referenceListOrderedByInfoInputRepresentationValidationError = validate$10(untrustedConfig_orderedByInfo_item);
37009
37032
  if (referenceListOrderedByInfoInputRepresentationValidationError === null) {
37010
37033
  untrustedConfig_orderedByInfo_array.push(untrustedConfig_orderedByInfo_item);
37011
37034
  }
@@ -37013,7 +37036,7 @@
37013
37036
  config.orderedByInfo = untrustedConfig_orderedByInfo_array;
37014
37037
  }
37015
37038
  const untrustedConfig_userPreferences = untrustedConfig.userPreferences;
37016
- const referenceListUserPreferenceInputRepresentationValidationError = validate$z(untrustedConfig_userPreferences);
37039
+ const referenceListUserPreferenceInputRepresentationValidationError = validate$C(untrustedConfig_userPreferences);
37017
37040
  if (referenceListUserPreferenceInputRepresentationValidationError === null) {
37018
37041
  config.userPreferences = untrustedConfig_userPreferences;
37019
37042
  }
@@ -37668,7 +37691,7 @@
37668
37691
  const untrustedConfig_orderedBy_array = [];
37669
37692
  for (let i = 0, arrayLength = untrustedConfig_orderedBy.length; i < arrayLength; i++) {
37670
37693
  const untrustedConfig_orderedBy_item = untrustedConfig_orderedBy[i];
37671
- const referenceListOrderedByInfoInputRepresentationValidationError = validate$Z(untrustedConfig_orderedBy_item);
37694
+ const referenceListOrderedByInfoInputRepresentationValidationError = validate$10(untrustedConfig_orderedBy_item);
37672
37695
  if (referenceListOrderedByInfoInputRepresentationValidationError === null) {
37673
37696
  untrustedConfig_orderedBy_array.push(untrustedConfig_orderedBy_item);
37674
37697
  }
@@ -37716,7 +37739,7 @@
37716
37739
  };
37717
37740
  };
37718
37741
 
37719
- function validate$x(obj, path = 'RelatedListRecordsSingleBatchInputRepresentation') {
37742
+ function validate$A(obj, path = 'RelatedListRecordsSingleBatchInputRepresentation') {
37720
37743
  const v_error = (() => {
37721
37744
  if (typeof obj !== 'object' || ArrayIsArray$2(obj) || obj === null) {
37722
37745
  return new TypeError('Expected "object" but received "' + typeof obj + '" (at "' + path + '")');
@@ -38670,7 +38693,7 @@
38670
38693
  const untrustedConfig_relatedListParameters_array = [];
38671
38694
  for (let i = 0, arrayLength = untrustedConfig_relatedListParameters.length; i < arrayLength; i++) {
38672
38695
  const untrustedConfig_relatedListParameters_item = untrustedConfig_relatedListParameters[i];
38673
- const referenceRelatedListRecordsSingleBatchInputRepresentationValidationError = validate$x(untrustedConfig_relatedListParameters_item);
38696
+ const referenceRelatedListRecordsSingleBatchInputRepresentationValidationError = validate$A(untrustedConfig_relatedListParameters_item);
38674
38697
  if (referenceRelatedListRecordsSingleBatchInputRepresentationValidationError === null) {
38675
38698
  untrustedConfig_relatedListParameters_array.push(untrustedConfig_relatedListParameters_item);
38676
38699
  }
@@ -44047,7 +44070,7 @@
44047
44070
  throttle(60, 60000, setupNotifyAllListRecordUpdateAvailable(luvio));
44048
44071
  throttle(60, 60000, setupNotifyAllListInfoSummaryUpdateAvailable(luvio));
44049
44072
  });
44050
- // version: 1.278.0-a388a38f0
44073
+ // version: 1.280.0-09f980816
44051
44074
 
44052
44075
  var ldsIdempotencyWriteDisabled = {
44053
44076
  isOpen: function (e) {
@@ -50023,7 +50046,12 @@
50023
50046
  }
50024
50047
  finally {
50025
50048
  this.replacingAction = undefined;
50026
- await this.startQueueSafe();
50049
+ try {
50050
+ await this.startQueueSafe();
50051
+ }
50052
+ catch (_a) {
50053
+ // An error starting the queue should not bubble up from this method
50054
+ }
50027
50055
  }
50028
50056
  return updatedTarget;
50029
50057
  });
@@ -51651,9 +51679,25 @@
51651
51679
  isCaseSensitive: false,
51652
51680
  };
51653
51681
  if (value !== undefined) {
51654
- const dateFn = field.dataType === 'Date' ? 'date' : 'datetime';
51655
- predicate.value = `${dateFn}(?)`;
51656
- predicate.bindings = [value];
51682
+ if (value === null) {
51683
+ switch (predicate.operator) {
51684
+ case '=':
51685
+ predicate.operator = 'IS';
51686
+ break;
51687
+ case '!=':
51688
+ predicate.operator = 'IS NOT';
51689
+ break;
51690
+ default:
51691
+ // eslint-disable-next-line @salesforce/lds/no-error-in-production
51692
+ throw new Error(`Unsupported operator ${predicate.operator} with null value operand`);
51693
+ }
51694
+ predicate.value = 'NULL';
51695
+ }
51696
+ else {
51697
+ const dateFn = field.dataType === 'Date' ? 'date' : 'datetime';
51698
+ predicate.value = `${dateFn}(?)`;
51699
+ predicate.bindings = [value];
51700
+ }
51657
51701
  return predicate;
51658
51702
  }
51659
51703
  else if (literal !== undefined) {
@@ -53581,16 +53625,26 @@
53581
53625
  : null;
53582
53626
  };
53583
53627
  const { recordRepresentation: record, ingestionTimestamp } = obj;
53584
- const fieldName = field.name.endsWith('__r')
53585
- ? field.name.replace('__r', '__c')
53586
- : field.name;
53587
- const id = (record.fields[fieldName] && record.fields[fieldName].value) ||
53588
- (record.fields[`${fieldName}Id`] &&
53589
- record.fields[`${fieldName}Id`].value);
53590
- if (!id)
53628
+ let id = undefined;
53629
+ if (field.name === 'RecordType') {
53630
+ // RecordTypeId has special handling during ingest and is
53631
+ // not in record.fields, so check for it at the UIAPI root property location
53632
+ id = record.recordTypeId;
53633
+ }
53634
+ else if (field.name.endsWith('__r')) {
53635
+ // Custom relationships end in `__r` and the corresponding ID field should be `__c`
53636
+ let fieldName = field.name.replace('__r', '__c');
53637
+ id = record.fields[fieldName] && record.fields[fieldName].value;
53638
+ }
53639
+ else {
53640
+ // Standard relationships are just FieldNameId
53641
+ let fieldName = field.name + 'Id';
53642
+ id = record.fields[fieldName] && record.fields[fieldName].value;
53643
+ }
53644
+ if (!id || typeof id !== 'string') {
53645
+ // possibly field injection did not inject the necessary Id field
53646
+ // for the relationship, or we found a non-string value.
53591
53647
  return null;
53592
- if (id['__ref'] !== undefined) {
53593
- return fetchRecordOrNull(record.fields[`${field.name}Id`].value);
53594
53648
  }
53595
53649
  seenRecordIds.add(id);
53596
53650
  return fetchRecordOrNull(id);
@@ -53781,7 +53835,7 @@
53781
53835
  return ingestionTimestamp;
53782
53836
  }
53783
53837
 
53784
- 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}\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\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\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 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 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 AggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: AggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipOrderBy @fieldCategory\n type: String = ORDER_BY # Handrolled\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\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\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\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 NEXT_QUARTER\n THIS_FISCAL_YEAR\n NEXT_FISCAL_YEAR\n THIS_WEEK\n LAST_YEAR\n NEXT_FISCAL_QUARTER\n THIS_MONTH\n THIS_YEAR\n LAST_FISCAL_YEAR\n LAST_WEEK\n LAST_90_DAYS\n THIS_FISCAL_QUARTER\n NEXT_YEAR\n NEXT_90_DAYS\n LAST_QUARTER\n LAST_FISCAL_QUARTER\n NEXT_WEEK\n TODAY\n YESTERDAY\n LAST_MONTH\n TOMORROW\n NEXT_MONTH\n THIS_QUARTER\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}\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 AggregateOrderBy: AggregateOrderBy @fieldCategory\n}\n\ninput OrderByGeolocationClause {\n distance: DistanceInput\n order: ResultOrder\n nulls: NullOrder\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 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}\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\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 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(first: Int, after: String, where: RecordFilter, orderBy: AggregateOrderBy, scope: String, groupBy: RecordGroupBy, upperBound: Int): RecordAggregateConnection @fieldCategory\n}\n\ntype RecordConnection @generic {\n edges: [RecordEdge]\n pageInfo: PageInfo!\n totalCount: 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\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 # scope should be type RecordScope but that's empty enum.\n recordQuery(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, scope: String, upperBound: Int): RecordConnection @fieldCategory\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";
53838
+ 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 setup: Setup__Setup!\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 recordQuery(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, scope: String, upperBound: Int): Setup__SetupConnection @fieldCategory\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 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}\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 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 AggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: AggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipOrderBy @fieldCategory\n type: String = ORDER_BY\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}\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 AggregateOrderBy: AggregateOrderBy @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}\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}\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(first: Int, after: String, where: RecordFilter, orderBy: AggregateOrderBy, scope: String, groupBy: RecordGroupBy, upperBound: Int): RecordAggregateConnection @fieldCategory\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\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 # scope should be type RecordScope but that's empty enum.\n recordQuery(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, scope: String, upperBound: Int): RecordConnection @fieldCategory\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";
53785
53839
 
53786
53840
  // Define additional schema that is missing from uiapi that we use in local evaluation
53787
53841
  const additionalSchemaDefinitions = /* GraphQL */ `
@@ -54298,6 +54352,18 @@
54298
54352
  },
54299
54353
  ],
54300
54354
  };
54355
+ const FieldValueNodeSelectionSet = {
54356
+ kind: Kind$1.SELECTION_SET,
54357
+ selections: [
54358
+ {
54359
+ kind: Kind$1.FIELD,
54360
+ name: {
54361
+ kind: Kind$1.NAME,
54362
+ value: 'value',
54363
+ },
54364
+ },
54365
+ ],
54366
+ };
54301
54367
  async function injectSyntheticFields(originalAST, objectInfoService, draftFunctions, variables) {
54302
54368
  const inlineFragmentSelections = {};
54303
54369
  // read pass; generate ObjectInfo
@@ -54451,20 +54517,19 @@
54451
54517
  },
54452
54518
  },
54453
54519
  Field: {
54454
- leave(node, key, parent, path, ancestors) {
54455
- if (node.name.value !== `node`)
54456
- return;
54457
- if (!node.selectionSet)
54520
+ leave(node, _key, _parent, _path, ancestors) {
54521
+ if (node.name.value !== 'node')
54458
54522
  return;
54459
54523
  // it could be 'recordQuery' or 'childRelationship'
54460
- const recordQueryField = findNearestConnection(ancestors);
54461
- if (!recordQueryField)
54524
+ const recordConnection = findNearestConnection(ancestors);
54525
+ if (recordConnection === undefined)
54462
54526
  return;
54463
54527
  const ancestorPath = findAncesterPath(ancestors);
54528
+ if (node.selectionSet === undefined)
54529
+ return;
54464
54530
  // spanning fields of the 'parentRelationship'. 'childRelationship' is handled by 'node' parent.
54465
54531
  const spanningSelections = [];
54466
54532
  for (const selection of node.selectionSet.selections) {
54467
- //
54468
54533
  if (isFieldSpanning(selection) || isInlineFragmentFieldSpanning(selection)) {
54469
54534
  spanningSelections.push(selection);
54470
54535
  }
@@ -55081,25 +55146,9 @@
55081
55146
  }
55082
55147
  // spanning field needs to have the directive with 'parentRelationship'
55083
55148
  const directives = isSpanning && !isInlineFragment ? [parentRelationshipDirective] : [];
55084
- let idField = isSpanning && !isPolymorphicField
55085
- ? [
55086
- {
55087
- kind: Kind$1.FIELD,
55088
- name: {
55089
- kind: Kind$1.NAME,
55090
- value: 'Id',
55091
- },
55092
- },
55093
- ]
55094
- : [];
55149
+ let idField = isSpanning && !isPolymorphicField ? [createFieldNode('Id')] : [];
55095
55150
  // This variable change to InlineFragment if 'isInlineFragment' is true
55096
- let sel = {
55097
- kind: Kind$1.FIELD,
55098
- name: {
55099
- kind: Kind$1.NAME,
55100
- value: fieldName,
55101
- },
55102
- };
55151
+ let sel = createFieldNode(fieldName);
55103
55152
  // Check if fields is valid
55104
55153
  if (apiNames.length === 1 && !isInlineFragment) {
55105
55154
  const objectInfo = objectInfos[apiNames[0]];
@@ -55145,13 +55194,7 @@
55145
55194
  idField = [];
55146
55195
  }
55147
55196
  if (isInlineFragment && !isTypeNameExisting) {
55148
- idField.push({
55149
- kind: Kind$1.FIELD,
55150
- name: {
55151
- kind: Kind$1.NAME,
55152
- value: '__typename',
55153
- },
55154
- });
55197
+ idField.push(createFieldNode('__typename'));
55155
55198
  }
55156
55199
  //Inject Conditions: 1. Same field does not exist 2. Same fields has different children. 3. Filter spanning field does not have Id. 4. InLineFragment does not have the '__typename' field
55157
55200
  if (!existingFields ||
@@ -55197,18 +55240,7 @@
55197
55240
  if (!isSpanning) {
55198
55241
  sel = {
55199
55242
  ...sel,
55200
- selectionSet: {
55201
- kind: Kind$1.SELECTION_SET,
55202
- selections: [
55203
- {
55204
- kind: Kind$1.FIELD,
55205
- name: {
55206
- kind: Kind$1.NAME,
55207
- value: 'value',
55208
- },
55209
- },
55210
- ],
55211
- },
55243
+ selectionSet: FieldValueNodeSelectionSet,
55212
55244
  };
55213
55245
  }
55214
55246
  }
@@ -55229,25 +55261,7 @@
55229
55261
  .filter(isFieldNode)
55230
55262
  .filter((subNode) => subNode.name.value === relationField);
55231
55263
  if (!existingRelationFields || existingRelationFields.length === 0) {
55232
- injectedSelections.push({
55233
- kind: Kind$1.FIELD,
55234
- name: {
55235
- kind: Kind$1.NAME,
55236
- value: relationField,
55237
- },
55238
- selectionSet: {
55239
- kind: Kind$1.SELECTION_SET,
55240
- selections: [
55241
- {
55242
- kind: Kind$1.FIELD,
55243
- name: {
55244
- kind: Kind$1.NAME,
55245
- value: 'value',
55246
- },
55247
- },
55248
- ],
55249
- },
55250
- });
55264
+ injectedSelections.push(createFieldNode(relationField, FieldValueNodeSelectionSet));
55251
55265
  }
55252
55266
  }
55253
55267
  }
@@ -55338,15 +55352,7 @@
55338
55352
  .filter(isFieldNode)
55339
55353
  .filter((subNode) => subNode.name.value === 'value');
55340
55354
  return !existingValueFields || existingValueFields.length === 0
55341
- ? [
55342
- {
55343
- kind: Kind$1.FIELD,
55344
- name: {
55345
- kind: Kind$1.NAME,
55346
- value: 'value',
55347
- },
55348
- },
55349
- ]
55355
+ ? [createFieldNode('value')]
55350
55356
  : [];
55351
55357
  }
55352
55358
  function updateIDInfo(fieldNode, idState, draftFunctions) {
@@ -55428,25 +55434,7 @@
55428
55434
  .filter((subNode) => subNode.name.value === relationshipId);
55429
55435
  if (existingRelationFields.length === 0) {
55430
55436
  injectedRelationshipField = [
55431
- {
55432
- kind: Kind$1.FIELD,
55433
- name: {
55434
- kind: Kind$1.NAME,
55435
- value: relationshipId,
55436
- },
55437
- selectionSet: {
55438
- kind: Kind$1.SELECTION_SET,
55439
- selections: [
55440
- {
55441
- kind: Kind$1.FIELD,
55442
- name: {
55443
- kind: Kind$1.NAME,
55444
- value: 'value',
55445
- },
55446
- },
55447
- ],
55448
- },
55449
- },
55437
+ createFieldNode(relationshipId, FieldValueNodeSelectionSet),
55450
55438
  ];
55451
55439
  }
55452
55440
  }
@@ -55454,25 +55442,13 @@
55454
55442
  const excludeId = isPolymorphicFieldPath(curPath, pathToObjectApiNamesMap, objectInfos);
55455
55443
  const idSelection = [];
55456
55444
  if (!excludeId && !hasIdAlready) {
55457
- idSelection.push({
55458
- kind: Kind$1.FIELD,
55459
- name: {
55460
- kind: Kind$1.NAME,
55461
- value: 'Id',
55462
- },
55463
- });
55445
+ idSelection.push(createFieldNode('Id'));
55464
55446
  }
55465
55447
  // Inject '__typename' for InlineFragment. '__typename' field acts as a reference to concrete type of a polymorphic field or a standard field in the returned GQL response, which equals to
55466
55448
  // `typedCondition` of the InlineFragment in the query AST. It is used to match JSON response with AST node. For more detail, please reference 'removeSyntheticFields'.
55467
55449
  if (isInlineFragmentNode(selection) &&
55468
55450
  !selection.selectionSet.selections.find((selection) => isFieldNode(selection) && selection.name.value === '__typename')) {
55469
- idSelection.push({
55470
- kind: Kind$1.FIELD,
55471
- name: {
55472
- kind: Kind$1.NAME,
55473
- value: '__typename',
55474
- },
55475
- });
55451
+ idSelection.push(createFieldNode('__typename'));
55476
55452
  }
55477
55453
  // 'ServiceAppointment' --> 'Contact' --> 'Id', Inject 'Contact' with Id. 'Id' field is at the sub level.
55478
55454
  const injectedSelectionIdField = idSelection.length > 0 || subInjectedSelections.length > 0
@@ -55492,6 +55468,8 @@
55492
55468
  const idForChildRelationship = [];
55493
55469
  // inject related field for the parent of the 'childRelationship'.
55494
55470
  const relatedIdForChildRelationship = [];
55471
+ // injected fields for DisplayValue
55472
+ let displayValueNameFields = [];
55495
55473
  // injects 'childRelatiship' at the 'node' level, it does not matter if the 'selections' is empty or not.
55496
55474
  // the operation happens at the same level as the 'childRelationship' field.
55497
55475
  if (isFieldNode(parentNode) && parentNode.selectionSet && parentNode.name.value === 'node') {
@@ -55501,13 +55479,7 @@
55501
55479
  if (!parentNode.selectionSet.selections
55502
55480
  .filter(isFieldNode)
55503
55481
  .some((sibling) => sibling.name.value === 'Id')) {
55504
- idForChildRelationship.push({
55505
- kind: Kind$1.FIELD,
55506
- name: {
55507
- kind: Kind$1.NAME,
55508
- value: 'Id',
55509
- },
55510
- });
55482
+ idForChildRelationship.push(createFieldNode('Id'));
55511
55483
  }
55512
55484
  }
55513
55485
  else {
@@ -55536,29 +55508,32 @@
55536
55508
  .filter(isFieldNode)
55537
55509
  .some((sibling) => sibling.name.value === injectedParentFieldName)) {
55538
55510
  // example: TimeSheetId { value }
55539
- relatedIdForChildRelationship.push({
55540
- kind: Kind$1.FIELD,
55541
- name: {
55542
- kind: Kind$1.NAME,
55543
- value: injectedParentFieldName,
55544
- },
55545
- selectionSet: {
55546
- kind: Kind$1.SELECTION_SET,
55547
- selections: [
55548
- {
55549
- kind: Kind$1.FIELD,
55550
- name: {
55551
- kind: Kind$1.NAME,
55552
- value: 'value',
55553
- },
55554
- },
55555
- ],
55556
- },
55557
- });
55511
+ relatedIdForChildRelationship.push(createFieldNode(injectedParentFieldName, FieldValueNodeSelectionSet));
55558
55512
  }
55559
55513
  }
55560
55514
  }
55561
55515
  }
55516
+ const { selectionSet: { selections }, } = parentNode;
55517
+ // see if node selection has DisplayValue and needs to inject
55518
+ let displayValue;
55519
+ for (let i = 0, len = selections.length; i < len; i++) {
55520
+ const node = selections[i];
55521
+ if (isFieldNode(node) && node.name.value === 'DisplayValue') {
55522
+ displayValue = node;
55523
+ break;
55524
+ }
55525
+ }
55526
+ if (displayValue !== undefined) {
55527
+ const apiName = parent.name.value;
55528
+ const objectInfo = objectInfos[apiName];
55529
+ if (objectInfo !== undefined &&
55530
+ objectInfo.nameFields !== undefined &&
55531
+ objectInfo.nameFields.length > 0) {
55532
+ displayValueNameFields = objectInfo.nameFields.map((fieldName) => {
55533
+ return createFieldNode(fieldName, FieldValueNodeSelectionSet);
55534
+ });
55535
+ }
55536
+ }
55562
55537
  }
55563
55538
  }
55564
55539
  }
@@ -55566,6 +55541,7 @@
55566
55541
  ...flat(parentRelaltionships),
55567
55542
  ...idForChildRelationship,
55568
55543
  ...relatedIdForChildRelationship,
55544
+ ...displayValueNameFields,
55569
55545
  ];
55570
55546
  }
55571
55547
  function dedupeFieldOrInlineFragmentNodes(duped) {
@@ -55896,6 +55872,22 @@
55896
55872
  ? relationshipName.replace('__r', '__c')
55897
55873
  : `${relationshipName}Id`;
55898
55874
  }
55875
+ /**
55876
+ * Creates a FieldNode with the passed name value and optional selection set node
55877
+ * @param nameValue
55878
+ * @param selectionSet
55879
+ * @returns
55880
+ */
55881
+ function createFieldNode(nameValue, selectionSet) {
55882
+ return {
55883
+ kind: Kind$1.FIELD,
55884
+ name: {
55885
+ kind: Kind$1.NAME,
55886
+ value: nameValue,
55887
+ },
55888
+ selectionSet,
55889
+ };
55890
+ }
55899
55891
 
55900
55892
  /**
55901
55893
  * Copyright (c) 2022, Salesforce, Inc.,
@@ -57991,6 +57983,11 @@
57991
57983
  return resultSnapshot;
57992
57984
  };
57993
57985
  }
57986
+ function environmentAwareGraphQLBatchAdapterFactory(objectInfoService, luvio) {
57987
+ return async function environmentAwareGraphQLBatchAdapter(config, buildCachedSnapshotCachePolicy, buildNetworkSnapshotCachePolicy, requestContext = {}) {
57988
+ return luvio.applyCachePolicy(requestContext, { config, luvio }, buildCachedSnapshotCachePolicy, buildNetworkSnapshotCachePolicy);
57989
+ };
57990
+ }
57994
57991
 
57995
57992
  const CONTENT_DOCUMENT_DRAFT_ID_KEY = 'CONTENT_DOCUMENT_DRAFT_ID';
57996
57993
  const CONTENT_VERSION_DRAFT_ID_KEY = 'CONTENT_VERSION_DRAFT_ID';
@@ -61960,11 +61957,13 @@
61960
61957
  // on core the graphql configuration is split so we need to set configureUIAPIGraphQL both in the
61961
61958
  // graphql registration and the uiapi for off core
61962
61959
  const configureUIAPIGraphQL = (registration) => {
61963
- const { configuration: { setDraftAwareGraphQLAdapter }, } = registration;
61960
+ const { configuration: { setDraftAwareGraphQLAdapter, setEnvironmentAwareGraphQLBatchAdapter, }, } = registration;
61964
61961
  const draftAwareGraphQLAdapter = draftAwareGraphQLAdapterFactory(userId, lazyObjectInfoService, lazyBaseDurableStore, lazyLuvio, isGenerated);
61965
61962
  setDraftAwareGraphQLAdapter(
61966
61963
  // return a draft aware graphql adapter here
61967
61964
  draftAwareGraphQLAdapter);
61965
+ const environmentAwareGraphQLBatchAdapter = environmentAwareGraphQLBatchAdapterFactory(lazyObjectInfoService, lazyLuvio);
61966
+ setEnvironmentAwareGraphQLBatchAdapter(environmentAwareGraphQLBatchAdapter);
61968
61967
  };
61969
61968
  const draftAwareCreateContentDocumentAndVersionAdapter = createContentDocumentAndVersionDraftAdapterFactory(lazyLuvio, NimbusBinaryStore, contentDocumentCompositeActionHandler);
61970
61969
  const draftAwareCreateRecord = createRecordDraftAdapterFactory(lazyLuvio, uiApiRecordHandler);
@@ -62010,7 +62009,7 @@
62010
62009
  id: '@salesforce/lds-network-adapter',
62011
62010
  instrument: instrument$2,
62012
62011
  });
62013
- // version: 1.278.0-f0e8ebcd6
62012
+ // version: 1.280.0-92c104b03
62014
62013
 
62015
62014
  const { create: create$3, keys: keys$3 } = Object;
62016
62015
  const { stringify: stringify$1, parse: parse$1 } = JSON;
@@ -79287,6 +79286,10 @@
79287
79286
  /**
79288
79287
  * Defines configuration for the module with a default value which can be overridden by the runtime environment.
79289
79288
  */
79289
+ /**
79290
+ * Environment Aware GraphQLBatch adapter
79291
+ */
79292
+ let environmentAwareGraphQLBatchAdapter$1 = undefined;
79290
79293
  /**
79291
79294
  * Draft-aware GraphQL adapter
79292
79295
  */
@@ -79413,6 +79416,12 @@
79413
79416
  getDraftAwareGraphQLAdapter: function () {
79414
79417
  return draftAwareGraphQLAdapter$1;
79415
79418
  },
79419
+ setEnvironmentAwareGraphQLBatchAdapter: function (adapter) {
79420
+ environmentAwareGraphQLBatchAdapter$1 = adapter;
79421
+ },
79422
+ getEnvironmentAwareGraphQLBatchAdapter: function () {
79423
+ return environmentAwareGraphQLBatchAdapter$1;
79424
+ },
79416
79425
  };
79417
79426
  const registrations$1 = new Set();
79418
79427
  /**
@@ -79795,6 +79804,11 @@
79795
79804
  if (config === null) {
79796
79805
  return null;
79797
79806
  }
79807
+ const { getEnvironmentAwareGraphQLBatchAdapter } = configurationForGraphQLAdapters$1;
79808
+ const adapter = getEnvironmentAwareGraphQLBatchAdapter();
79809
+ if (adapter !== undefined) {
79810
+ return adapter(config, buildCachedSnapshotCachePolicy, buildNetworkSnapshotCachePolicy$2, requestContext);
79811
+ }
79798
79812
  return luvio.applyCachePolicy(requestContext || {}, { config, luvio }, // BuildSnapshotContext
79799
79813
  buildCachedSnapshotCachePolicy, buildNetworkSnapshotCachePolicy$2);
79800
79814
  };
@@ -80404,7 +80418,7 @@
80404
80418
  configuration: { ...configurationForGraphQLAdapters$1 },
80405
80419
  instrument: instrument$1,
80406
80420
  });
80407
- // version: 1.278.0-a388a38f0
80421
+ // version: 1.280.0-09f980816
80408
80422
 
80409
80423
  // On core the unstable adapters are re-exported with different names,
80410
80424
  // we want to match them here.
@@ -80415,6 +80429,7 @@
80415
80429
  get deleteRecord () { return deleteRecord; },
80416
80430
  gql: gql,
80417
80431
  get graphql () { return graphql; },
80432
+ get graphqlBatch () { return graphqlBatch; },
80418
80433
  get refreshGraphQL () { return refresh$2; },
80419
80434
  get unstable_getActionOverrides_imperative () { return unstable_getActionOverrides_imperative; },
80420
80435
  get unstable_getFlexipageFormulaOverrides_imperative () { return unstable_getFlexipageFormulaOverrides_imperative; },
@@ -80452,6 +80467,7 @@
80452
80467
  get unstable_getRelatedListsCount_imperative () { return unstable_getRelatedListsCount_imperative; },
80453
80468
  get unstable_getRelatedListsInfo_imperative () { return unstable_getRelatedListsInfo_imperative; },
80454
80469
  get unstable_graphql () { return graphql; },
80470
+ get unstable_graphqlBatch__imperative () { return graphqlBatch_imperative; },
80455
80471
  get unstable_graphql_imperative () { return graphql_imperative; },
80456
80472
  unstable_refresh: refresh,
80457
80473
  unstable_updateRelatedListInfo: updateRelatedListInfo,
@@ -82658,7 +82674,7 @@
82658
82674
  unstable_graphQL_imperative = createImperativeAdapter(luvio, createInstrumentedAdapter(ldsAdapter, adapterMetadata), adapterMetadata);
82659
82675
  graphQLImperative = ldsAdapter;
82660
82676
  });
82661
- // version: 1.278.0-a388a38f0
82677
+ // version: 1.280.0-09f980816
82662
82678
 
82663
82679
  var gqlApi = /*#__PURE__*/Object.freeze({
82664
82680
  __proto__: null,
@@ -83001,8 +83017,22 @@
83001
83017
  draftIds !== undefined &&
83002
83018
  draftIds.length > 0) {
83003
83019
  const draftId = draftIds[draftIds.length - 1];
83004
- draftManager.replaceAction(draftIdToReplace, draftId).then(() => {
83020
+ draftManager
83021
+ .replaceAction(draftIdToReplace, draftId)
83022
+ .then(() => {
83005
83023
  onResponse(responseValue);
83024
+ })
83025
+ .catch((error) => {
83026
+ let message = 'Unknown error replacing draft';
83027
+ if (error instanceof Error) {
83028
+ message = error.message;
83029
+ }
83030
+ else if (typeof error === 'string') {
83031
+ message = error;
83032
+ }
83033
+ onResponse({
83034
+ error: createNativeFetchErrorResponse(message),
83035
+ });
83006
83036
  });
83007
83037
  }
83008
83038
  else {
@@ -83356,7 +83386,7 @@
83356
83386
  function register(r) {
83357
83387
  callbacks$1.forEach((callback) => callback(r));
83358
83388
  }
83359
- // version: 1.278.0-f0e8ebcd6
83389
+ // version: 1.280.0-92c104b03
83360
83390
 
83361
83391
  /**
83362
83392
  * Returns true if the value acts like a Promise, i.e. has a "then" function,
@@ -87286,6 +87316,10 @@
87286
87316
  /**
87287
87317
  * Defines configuration for the module with a default value which can be overridden by the runtime environment.
87288
87318
  */
87319
+ /**
87320
+ * Environment Aware GraphQLBatch adapter
87321
+ */
87322
+ let environmentAwareGraphQLBatchAdapter = undefined;
87289
87323
  /**
87290
87324
  * Draft-aware GraphQL adapter
87291
87325
  */
@@ -87412,6 +87446,12 @@
87412
87446
  getDraftAwareGraphQLAdapter: function () {
87413
87447
  return draftAwareGraphQLAdapter;
87414
87448
  },
87449
+ setEnvironmentAwareGraphQLBatchAdapter: function (adapter) {
87450
+ environmentAwareGraphQLBatchAdapter = adapter;
87451
+ },
87452
+ getEnvironmentAwareGraphQLBatchAdapter: function () {
87453
+ return environmentAwareGraphQLBatchAdapter;
87454
+ },
87415
87455
  };
87416
87456
  const registrations = new Set();
87417
87457
  /**
@@ -88279,4 +88319,4 @@
88279
88319
  exports.subscribeToAdapter = subscribeToAdapter;
88280
88320
 
88281
88321
  }));
88282
- // version: 1.278.0-f0e8ebcd6
88322
+ // version: 1.280.0-92c104b03