@salesforce/lds-worker-api 1.428.0-dev2 → 1.428.0-dev20
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.
|
@@ -3289,7 +3289,7 @@
|
|
|
3289
3289
|
}
|
|
3290
3290
|
}
|
|
3291
3291
|
}
|
|
3292
|
-
function isFetchResponse(error) {
|
|
3292
|
+
function isFetchResponse$1(error) {
|
|
3293
3293
|
return error !== null && typeof error === 'object' && 'status' in error;
|
|
3294
3294
|
}
|
|
3295
3295
|
/**
|
|
@@ -3368,7 +3368,7 @@
|
|
|
3368
3368
|
// the new network adapter behavior
|
|
3369
3369
|
return reject(
|
|
3370
3370
|
// legacy network adapter check
|
|
3371
|
-
isFetchResponse(error)
|
|
3371
|
+
isFetchResponse$1(error)
|
|
3372
3372
|
? {
|
|
3373
3373
|
...error,
|
|
3374
3374
|
errorType: 'fetchResponse',
|
|
@@ -4152,7 +4152,7 @@
|
|
|
4152
4152
|
}
|
|
4153
4153
|
return resourceParams;
|
|
4154
4154
|
}
|
|
4155
|
-
// engine version: 0.160.
|
|
4155
|
+
// engine version: 0.160.4-dev1-4b808818
|
|
4156
4156
|
|
|
4157
4157
|
/**
|
|
4158
4158
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -4280,7 +4280,7 @@
|
|
|
4280
4280
|
}
|
|
4281
4281
|
callbacks.push(callback);
|
|
4282
4282
|
}
|
|
4283
|
-
// version: 1.428.0-
|
|
4283
|
+
// version: 1.428.0-dev20-1b319a0432
|
|
4284
4284
|
|
|
4285
4285
|
// TODO [TD-0081508]: once that TD is fulfilled we can probably change this file
|
|
4286
4286
|
function instrumentAdapter$1(createFunction, _metadata) {
|
|
@@ -5324,7 +5324,7 @@
|
|
|
5324
5324
|
const { apiFamily, name } = metadata;
|
|
5325
5325
|
return createGraphQLWireAdapterConstructor$1(adapter, `${apiFamily}.${name}`, luvio, astResolver);
|
|
5326
5326
|
}
|
|
5327
|
-
// version: 1.428.0-
|
|
5327
|
+
// version: 1.428.0-dev20-1b319a0432
|
|
5328
5328
|
|
|
5329
5329
|
function isSupportedEntity(_objectApiName) {
|
|
5330
5330
|
return true;
|
|
@@ -5428,7 +5428,7 @@
|
|
|
5428
5428
|
TypeCheckShapes[TypeCheckShapes["Integer"] = 3] = "Integer";
|
|
5429
5429
|
TypeCheckShapes[TypeCheckShapes["Unsupported"] = 4] = "Unsupported";
|
|
5430
5430
|
})(TypeCheckShapes || (TypeCheckShapes = {}));
|
|
5431
|
-
// engine version: 0.160.
|
|
5431
|
+
// engine version: 0.160.4-dev1-4b808818
|
|
5432
5432
|
|
|
5433
5433
|
const { keys: ObjectKeys$4, create: ObjectCreate$4 } = Object;
|
|
5434
5434
|
|
|
@@ -32616,9 +32616,18 @@
|
|
|
32616
32616
|
throttle(60, 60000, setupNotifyAllListRecordUpdateAvailable(luvio));
|
|
32617
32617
|
throttle(60, 60000, setupNotifyAllListInfoSummaryUpdateAvailable(luvio));
|
|
32618
32618
|
});
|
|
32619
|
-
// version: 1.428.0-
|
|
32619
|
+
// version: 1.428.0-dev20-d72ac06681
|
|
32620
32620
|
|
|
32621
|
-
var
|
|
32621
|
+
var draftQueueMaxRetryAttemptsGate = {
|
|
32622
|
+
isOpen: function (e) {
|
|
32623
|
+
return e.fallback;
|
|
32624
|
+
},
|
|
32625
|
+
hasError: function () {
|
|
32626
|
+
return !0;
|
|
32627
|
+
},
|
|
32628
|
+
};
|
|
32629
|
+
|
|
32630
|
+
var preserveIdempotencyKeyOn400Gate = {
|
|
32622
32631
|
isOpen: function (e) {
|
|
32623
32632
|
return e.fallback;
|
|
32624
32633
|
},
|
|
@@ -32670,6 +32679,15 @@
|
|
|
32670
32679
|
return mockInstrumentation;
|
|
32671
32680
|
};
|
|
32672
32681
|
|
|
32682
|
+
var allowUpdatesForNonCachedRecords = {
|
|
32683
|
+
isOpen: function (e) {
|
|
32684
|
+
return e.fallback;
|
|
32685
|
+
},
|
|
32686
|
+
hasError: function () {
|
|
32687
|
+
return !0;
|
|
32688
|
+
},
|
|
32689
|
+
};
|
|
32690
|
+
|
|
32673
32691
|
var caseSensitiveUserId = '005B0000000GR4OIAW';
|
|
32674
32692
|
|
|
32675
32693
|
/**
|
|
@@ -47840,6 +47858,13 @@
|
|
|
47840
47858
|
}
|
|
47841
47859
|
|
|
47842
47860
|
const DRAFT_SEGMENT = 'DRAFT';
|
|
47861
|
+
/**
|
|
47862
|
+
* Metadata key under which an action's upload retry-attempt count is persisted.
|
|
47863
|
+
* Lives in the action's durable `metadata` bag so the count survives app restarts
|
|
47864
|
+
* (the in-memory backoff interval resets on every startQueue()). Written by the
|
|
47865
|
+
* action handler on each retry and cleared when an action is manually retried.
|
|
47866
|
+
*/
|
|
47867
|
+
const DRAFT_ACTION_RETRY_COUNT_METADATA_KEY = 'retryCount';
|
|
47843
47868
|
class DurableDraftQueue {
|
|
47844
47869
|
getHandler(id) {
|
|
47845
47870
|
const handler = this.handlers[id];
|
|
@@ -48198,10 +48223,14 @@
|
|
|
48198
48223
|
if (!isDraftError(target)) {
|
|
48199
48224
|
throw Error(`Action ${actionId} is not in Error state`);
|
|
48200
48225
|
}
|
|
48226
|
+
// A manual retry is a fresh start: clear the persisted upload retry-attempt
|
|
48227
|
+
// count so the action doesn't immediately re-cap after a single failure.
|
|
48228
|
+
const { [DRAFT_ACTION_RETRY_COUNT_METADATA_KEY]: _retryCount, ...metadataWithoutRetryCount } = target.metadata || {};
|
|
48201
48229
|
let pendingAction = {
|
|
48202
48230
|
...target,
|
|
48203
48231
|
status: DraftActionStatus.Pending,
|
|
48204
48232
|
error: undefined,
|
|
48233
|
+
metadata: metadataWithoutRetryCount,
|
|
48205
48234
|
};
|
|
48206
48235
|
await this.draftStore.writeAction(pendingAction);
|
|
48207
48236
|
await this.notifyChangedListeners({
|
|
@@ -79609,6 +79638,322 @@
|
|
|
79609
79638
|
return create$3(adapterSpecificEnvironments, {});
|
|
79610
79639
|
}
|
|
79611
79640
|
|
|
79641
|
+
/**
|
|
79642
|
+
* This function takes an unknown error and normalizes it to an Error object
|
|
79643
|
+
*/
|
|
79644
|
+
function normalizeError$1(error) {
|
|
79645
|
+
if (typeof error === 'object' && error instanceof Error) {
|
|
79646
|
+
return error;
|
|
79647
|
+
}
|
|
79648
|
+
else if (typeof error === 'string') {
|
|
79649
|
+
return new Error(error);
|
|
79650
|
+
}
|
|
79651
|
+
return new Error(stringify$5(error));
|
|
79652
|
+
}
|
|
79653
|
+
/**
|
|
79654
|
+
* Maximum number of times an action's upload will be retried before the action is
|
|
79655
|
+
* transitioned to Error and surfaced to the consumer. Caps the otherwise-unbounded
|
|
79656
|
+
* retry loop that can wedge the single-worker draft queue when an upload fails
|
|
79657
|
+
* deterministically on every dispatch. Only enforced when the
|
|
79658
|
+
* `lmr.draft-queue-max-retry-attempts` gate is open.
|
|
79659
|
+
*/
|
|
79660
|
+
const MAX_RETRY_ATTEMPTS = 5;
|
|
79661
|
+
const MAX_RETRY_ERROR_CODE = 'MAX_RETRY_ATTEMPTS_EXCEEDED';
|
|
79662
|
+
function isFetchResponse(failure) {
|
|
79663
|
+
// The union is exactly FetchResponse | Error, so "not an Error" is the FetchResponse.
|
|
79664
|
+
// This is safer than duck-typing on status/ok: a custom Error subclass that happens to
|
|
79665
|
+
// carry those properties would be misclassified by a structural check.
|
|
79666
|
+
return !(failure instanceof Error);
|
|
79667
|
+
}
|
|
79668
|
+
/**
|
|
79669
|
+
* Builds the FetchResponse-shaped error attached to an action that has exhausted its
|
|
79670
|
+
* upload retries. Shaped like a real network error response (status/statusText/ok/
|
|
79671
|
+
* headers/body) so downstream consumers (DraftManager, queue instrumentation) that
|
|
79672
|
+
* read `action.error.status`/`.body`/etc. behave consistently with a server error.
|
|
79673
|
+
*
|
|
79674
|
+
* The failure that caused the final attempt — a non-ok response (HTTP path) or a thrown
|
|
79675
|
+
* error (catch path) — is folded into the body so the surfaced error says WHAT failed,
|
|
79676
|
+
* not merely that the attempt cap was reached.
|
|
79677
|
+
*/
|
|
79678
|
+
function buildMaxRetryError(lastFailure) {
|
|
79679
|
+
const capMessage = `Draft action exceeded ${MAX_RETRY_ATTEMPTS} upload retry attempts`;
|
|
79680
|
+
if (isFetchResponse(lastFailure)) {
|
|
79681
|
+
// Preserve the server's own error detail (status + body) so the surfaced error
|
|
79682
|
+
// carries the last response that caused us to give up retrying.
|
|
79683
|
+
return {
|
|
79684
|
+
status: HttpStatusCode$2.ServerError,
|
|
79685
|
+
statusText: capMessage,
|
|
79686
|
+
ok: false,
|
|
79687
|
+
headers: {},
|
|
79688
|
+
body: {
|
|
79689
|
+
errorCode: MAX_RETRY_ERROR_CODE,
|
|
79690
|
+
message: `${capMessage}. Last response: status=${lastFailure.status} ${lastFailure.statusText}`,
|
|
79691
|
+
lastResponseStatus: lastFailure.status,
|
|
79692
|
+
lastResponseBody: lastFailure.body,
|
|
79693
|
+
},
|
|
79694
|
+
};
|
|
79695
|
+
}
|
|
79696
|
+
return {
|
|
79697
|
+
status: HttpStatusCode$2.ServerError,
|
|
79698
|
+
statusText: capMessage,
|
|
79699
|
+
ok: false,
|
|
79700
|
+
headers: {},
|
|
79701
|
+
body: {
|
|
79702
|
+
errorCode: MAX_RETRY_ERROR_CODE,
|
|
79703
|
+
message: `${capMessage}. Last error: ${lastFailure.name}: ${lastFailure.message}`,
|
|
79704
|
+
lastErrorName: lastFailure.name,
|
|
79705
|
+
lastErrorMessage: lastFailure.message,
|
|
79706
|
+
},
|
|
79707
|
+
};
|
|
79708
|
+
}
|
|
79709
|
+
|
|
79710
|
+
function attachObserversToAdapterRequestContext(observers, adapterRequestContext) {
|
|
79711
|
+
if (adapterRequestContext === undefined) {
|
|
79712
|
+
return { eventObservers: observers };
|
|
79713
|
+
}
|
|
79714
|
+
if (adapterRequestContext.eventObservers === undefined) {
|
|
79715
|
+
return { ...adapterRequestContext, eventObservers: observers };
|
|
79716
|
+
}
|
|
79717
|
+
return {
|
|
79718
|
+
...adapterRequestContext,
|
|
79719
|
+
eventObservers: adapterRequestContext.eventObservers.concat(observers),
|
|
79720
|
+
};
|
|
79721
|
+
}
|
|
79722
|
+
/**
|
|
79723
|
+
* Use this method to sanitize the unknown error object when
|
|
79724
|
+
* we are unsure of the type of the error thrown
|
|
79725
|
+
*
|
|
79726
|
+
* @param err Unknown object to sanitize
|
|
79727
|
+
* @returns an instance of error
|
|
79728
|
+
*/
|
|
79729
|
+
function normalizeError$2(err) {
|
|
79730
|
+
if (err instanceof Error) {
|
|
79731
|
+
return err;
|
|
79732
|
+
}
|
|
79733
|
+
else if (typeof err === 'string') {
|
|
79734
|
+
return new Error(err);
|
|
79735
|
+
}
|
|
79736
|
+
return new Error(stringify$5(err));
|
|
79737
|
+
}
|
|
79738
|
+
// metrics
|
|
79739
|
+
/** GraphQL */
|
|
79740
|
+
const GRAPHQL_EVAL_ERROR = 'gql-eval-error';
|
|
79741
|
+
const GRAPHQL_EVAL_DB_READ_DURATION = 'gql-eval-db-read-duration';
|
|
79742
|
+
const GRAPHQL_EVAL_ROOT_QUERY_COUNT = 'gql-eval-root-query-count';
|
|
79743
|
+
const GRAPHQL_EVAL_TOTAL_QUERY_COUNT = 'gql-eval-total-query-count';
|
|
79744
|
+
const GRAPHQL_EVAL_MAX_CHILD_RELATIONSHIPS_COUNT = 'gql-eval-max-child-count';
|
|
79745
|
+
const GRAPHQL_EVAL_QUERY_RECORD_COUNT = 'gql-eval-query-record-count';
|
|
79746
|
+
const GRAPHQL_SNAPSHOT_REFRESH_UNDEFINED = 'gql-snapshot-refresh-undefined';
|
|
79747
|
+
/** Draft Queue */
|
|
79748
|
+
const DRAFT_QUEUE_STATE_STARTED = 'draft-queue-state-started';
|
|
79749
|
+
const DRAFT_QUEUE_STATE_ERROR = 'draft-queue-state-error';
|
|
79750
|
+
const DRAFT_QUEUE_STATE_WAITING = 'draft-queue-state-waiting';
|
|
79751
|
+
const DRAFT_QUEUE_STATE_STOPPED = 'draft-queue-state-stopped';
|
|
79752
|
+
const DRAFT_QUEUE_ACTION_ADDED = 'draft-queue-action-added';
|
|
79753
|
+
const DRAFT_QUEUE_ACTION_UPLOADING = 'draft-queue-action-uploading';
|
|
79754
|
+
const DRAFT_QUEUE_ACTION_COMPLETED = 'draft-queue-action-completed';
|
|
79755
|
+
const DRAFT_QUEUE_ACTION_DELETED = 'draft-queue-action-deleted';
|
|
79756
|
+
const DRAFT_QUEUE_ACTION_UPDATED = 'draft-queue-action-updated';
|
|
79757
|
+
const DRAFT_QUEUE_ACTION_FAILED = 'draft-queue-action-failed';
|
|
79758
|
+
const DRAFT_QUEUE_ACTION_UPLOAD_ERROR = 'draft-queue-action-upload-error';
|
|
79759
|
+
const DRAFT_QUEUE_TOTAL_MERGE_ACTIONS_CALLS = 'draft-queue-total-mergeActions-calls';
|
|
79760
|
+
/** Content Document */
|
|
79761
|
+
const CREATE_CONTENT_DOCUMENT_AND_VERSION_TOTAL_SYNTHESIZE_CALLS = 'content-document-version-total-synthesize-calls';
|
|
79762
|
+
const CREATE_CONTENT_DOCUMENT_AND_VERSION_DRAFT_SYNTHESIZE_ERROR = 'create-content-document-version-draft-synthesize-error';
|
|
79763
|
+
/** Priming */
|
|
79764
|
+
const PRIMING_TOTAL_SESSION_COUNT = 'priming-total-session-count';
|
|
79765
|
+
const PRIMING_TOTAL_ERROR_COUNT = 'priming-total-error-count';
|
|
79766
|
+
const PRIMING_TOTAL_PRIMED_COUNT = 'priming-total-primed-count';
|
|
79767
|
+
const PRIMING_TOTAL_CONFLICT_COUNT = 'priming-total-conflict-count';
|
|
79768
|
+
// logs
|
|
79769
|
+
const GRAPHQL_QUERY_PARSE_ERROR = 'gql-query-parse-error';
|
|
79770
|
+
const GRAPHQL_SQL_EVAL_PRECONDITION_ERROR = 'gql-sql-pre-eval-error';
|
|
79771
|
+
const GRAPHQL_CREATE_SNAPSHOT_ERROR = 'gql-create-snapshot-error';
|
|
79772
|
+
const DRAFT_AWARE_CREATE_CONTENT_DOCUMENT_AND_VERSION_ERROR = 'draft-aware-create-content-document-and-version-error';
|
|
79773
|
+
/** Garbage Collection */
|
|
79774
|
+
const GARBAGE_COLLECTION_AGGRESSIVE_TRIM_COUNT = 'garbage-collection-aggressive-trim-count';
|
|
79775
|
+
const GARBAGE_COLLECTION_AGGRESSIVE_TRIM_RECORDS_TRIMMED = 'garbage-collection-aggressive-trim-records-trimmed';
|
|
79776
|
+
const GARBAGE_COLLECTION_AGGRESSIVE_TRIM_TOTAL_RECORDS_BEFORE_TRIM = 'garbage-collection-aggressive-trim-total-records-before-trim';
|
|
79777
|
+
const ldsMobileInstrumentation$2 = getInstrumentation();
|
|
79778
|
+
const nimbusLogger = typeof __nimbus !== 'undefined' &&
|
|
79779
|
+
__nimbus.plugins !== undefined &&
|
|
79780
|
+
__nimbus.plugins.JSLoggerPlugin !== undefined
|
|
79781
|
+
? __nimbus.plugins.JSLoggerPlugin
|
|
79782
|
+
: undefined;
|
|
79783
|
+
function reportGraphqlQueryParseError(err) {
|
|
79784
|
+
const error = normalizeError$2(err);
|
|
79785
|
+
const errorCode = GRAPHQL_QUERY_PARSE_ERROR;
|
|
79786
|
+
// Metric
|
|
79787
|
+
reportGraphqlAdapterError(errorCode);
|
|
79788
|
+
// Log
|
|
79789
|
+
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
79790
|
+
}
|
|
79791
|
+
function reportGraphqlSqlEvalPreconditionError(err) {
|
|
79792
|
+
const error = normalizeError$2(err);
|
|
79793
|
+
const errorCode = GRAPHQL_SQL_EVAL_PRECONDITION_ERROR;
|
|
79794
|
+
// Metric
|
|
79795
|
+
reportGraphqlAdapterError(errorCode);
|
|
79796
|
+
// Log
|
|
79797
|
+
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
79798
|
+
}
|
|
79799
|
+
function reportGraphqlCreateSnapshotError(err) {
|
|
79800
|
+
const error = normalizeError$2(err);
|
|
79801
|
+
const errorCode = GRAPHQL_CREATE_SNAPSHOT_ERROR;
|
|
79802
|
+
// Metric
|
|
79803
|
+
reportGraphqlAdapterError(errorCode);
|
|
79804
|
+
// Log
|
|
79805
|
+
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
79806
|
+
}
|
|
79807
|
+
function reportGraphQlEvalDbReadDuration(duration) {
|
|
79808
|
+
ldsMobileInstrumentation$2.trackValue(GRAPHQL_EVAL_DB_READ_DURATION, duration);
|
|
79809
|
+
}
|
|
79810
|
+
function reportGraphqlAdapterError(errorCode) {
|
|
79811
|
+
// Increment overall count with errorCode as tag
|
|
79812
|
+
ldsMobileInstrumentation$2.incrementCounter(GRAPHQL_EVAL_ERROR, 1, true, { errorCode });
|
|
79813
|
+
}
|
|
79814
|
+
function reportGraphqlQueryInstrumentation(data) {
|
|
79815
|
+
const queryBuckets = [1, 2, 3, 4, 5, 10, 20, 50, 100];
|
|
79816
|
+
const recordBuckets = [
|
|
79817
|
+
1, 5, 10, 20, 50, 100, 1000, 2000, 5000, 10000, 50000, 100000, 1000000,
|
|
79818
|
+
];
|
|
79819
|
+
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_ROOT_QUERY_COUNT, data.rootQueryCount, queryBuckets);
|
|
79820
|
+
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_TOTAL_QUERY_COUNT, data.totalQueryCount, queryBuckets);
|
|
79821
|
+
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_MAX_CHILD_RELATIONSHIPS_COUNT, data.maxChildRelationships, queryBuckets);
|
|
79822
|
+
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_QUERY_RECORD_COUNT, data.requestedRecordCount, recordBuckets);
|
|
79823
|
+
}
|
|
79824
|
+
function incrementGraphQLRefreshUndfined() {
|
|
79825
|
+
ldsMobileInstrumentation$2.incrementCounter(GRAPHQL_SNAPSHOT_REFRESH_UNDEFINED);
|
|
79826
|
+
}
|
|
79827
|
+
function reportDraftActionEvent(state, draftCount, message) {
|
|
79828
|
+
if (nimbusLogger) {
|
|
79829
|
+
nimbusLogger.logInfo(`Draft action event: ${state}, depth: ${draftCount}${message ? `, message: ${message}` : ''}`);
|
|
79830
|
+
}
|
|
79831
|
+
switch (state) {
|
|
79832
|
+
case 'added':
|
|
79833
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_ADDED);
|
|
79834
|
+
break;
|
|
79835
|
+
case 'uploading':
|
|
79836
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_UPLOADING);
|
|
79837
|
+
break;
|
|
79838
|
+
case 'completed':
|
|
79839
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_COMPLETED);
|
|
79840
|
+
break;
|
|
79841
|
+
case 'deleted':
|
|
79842
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_DELETED);
|
|
79843
|
+
break;
|
|
79844
|
+
case 'failed':
|
|
79845
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_FAILED, 1, true);
|
|
79846
|
+
break;
|
|
79847
|
+
case 'updated':
|
|
79848
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_UPDATED);
|
|
79849
|
+
break;
|
|
79850
|
+
}
|
|
79851
|
+
}
|
|
79852
|
+
/**
|
|
79853
|
+
* Reports an exception thrown while uploading a draft action. The thrown error is
|
|
79854
|
+
* otherwise swallowed by the upload handler's retry path, leaving the failure
|
|
79855
|
+
* invisible in telemetry; this surfaces it to o11y (log + counter) so a deterministic
|
|
79856
|
+
* upload failure can be diagnosed instead of silently retried forever.
|
|
79857
|
+
*
|
|
79858
|
+
* PII: the device log line carries only the handler id, retry attempt, and the error
|
|
79859
|
+
* NAME (e.g. "TypeError") — never the free-text error message, which can embed record
|
|
79860
|
+
* ids (URL path segments) or server field-validation strings. The full normalized error
|
|
79861
|
+
* (message + stack) is handed only to `ldsMobileInstrumentation.error`, the structured
|
|
79862
|
+
* o11y error pipeline responsible for scrubbing/handling that detail. Also does NOT log
|
|
79863
|
+
* the action's targetId/tag or any request body/field values.
|
|
79864
|
+
*/
|
|
79865
|
+
function reportDraftActionUploadError(error, handlerId, attempt) {
|
|
79866
|
+
const normalized = normalizeError$2(error);
|
|
79867
|
+
if (nimbusLogger) {
|
|
79868
|
+
nimbusLogger.logError(`Draft action upload error: handler=${handlerId}, attempt=${attempt}, name=${normalized.name}`);
|
|
79869
|
+
}
|
|
79870
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_UPLOAD_ERROR, 1, true, {
|
|
79871
|
+
handlerId,
|
|
79872
|
+
});
|
|
79873
|
+
ldsMobileInstrumentation$2.error(normalized, DRAFT_QUEUE_ACTION_UPLOAD_ERROR);
|
|
79874
|
+
}
|
|
79875
|
+
function reportDraftQueueState(state, draftCount) {
|
|
79876
|
+
if (nimbusLogger) {
|
|
79877
|
+
nimbusLogger.logInfo(`Draft state changed: ${state}, depth: ${draftCount}`);
|
|
79878
|
+
}
|
|
79879
|
+
switch (state) {
|
|
79880
|
+
case 'started':
|
|
79881
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_STARTED);
|
|
79882
|
+
break;
|
|
79883
|
+
case 'error':
|
|
79884
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_ERROR, 1, true);
|
|
79885
|
+
break;
|
|
79886
|
+
case 'waiting':
|
|
79887
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_WAITING);
|
|
79888
|
+
break;
|
|
79889
|
+
case 'stopped':
|
|
79890
|
+
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_STOPPED);
|
|
79891
|
+
break;
|
|
79892
|
+
}
|
|
79893
|
+
}
|
|
79894
|
+
function reportDraftAwareContentDocumentVersionSynthesizeError(err) {
|
|
79895
|
+
let error;
|
|
79896
|
+
if (err.body !== undefined) {
|
|
79897
|
+
error = err.body;
|
|
79898
|
+
}
|
|
79899
|
+
else {
|
|
79900
|
+
error = normalizeError$2(err);
|
|
79901
|
+
}
|
|
79902
|
+
const errorCode = DRAFT_AWARE_CREATE_CONTENT_DOCUMENT_AND_VERSION_ERROR;
|
|
79903
|
+
const errorType = error.errorType;
|
|
79904
|
+
const tags = {
|
|
79905
|
+
errorCode,
|
|
79906
|
+
};
|
|
79907
|
+
if (errorType !== undefined) {
|
|
79908
|
+
tags.errorType = errorType;
|
|
79909
|
+
}
|
|
79910
|
+
// Metric
|
|
79911
|
+
ldsMobileInstrumentation$2.incrementCounter(CREATE_CONTENT_DOCUMENT_AND_VERSION_DRAFT_SYNTHESIZE_ERROR, 1, true, tags);
|
|
79912
|
+
// Log
|
|
79913
|
+
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
79914
|
+
}
|
|
79915
|
+
function reportDraftAwareContentVersionSynthesizeCalls(mimeType) {
|
|
79916
|
+
ldsMobileInstrumentation$2.incrementCounter(CREATE_CONTENT_DOCUMENT_AND_VERSION_TOTAL_SYNTHESIZE_CALLS, 1, undefined, { mimeType });
|
|
79917
|
+
}
|
|
79918
|
+
/** Priming */
|
|
79919
|
+
function reportPrimingSessionCreated() {
|
|
79920
|
+
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_SESSION_COUNT, 1, undefined, {});
|
|
79921
|
+
}
|
|
79922
|
+
function reportPrimingError(errorType, recordCount) {
|
|
79923
|
+
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_ERROR_COUNT, recordCount, undefined, {
|
|
79924
|
+
errorType,
|
|
79925
|
+
});
|
|
79926
|
+
}
|
|
79927
|
+
function reportPrimingSuccess(recordCount) {
|
|
79928
|
+
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_PRIMED_COUNT, recordCount, undefined);
|
|
79929
|
+
}
|
|
79930
|
+
function reportPrimingConflict(resolutionType, recordCount) {
|
|
79931
|
+
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_CONFLICT_COUNT, recordCount, undefined, {
|
|
79932
|
+
resolutionType,
|
|
79933
|
+
});
|
|
79934
|
+
}
|
|
79935
|
+
/** Network */
|
|
79936
|
+
function reportChunkCandidateUrlLength(urlLength) {
|
|
79937
|
+
const buckets = [8000, 10000, 12000, 14000, 16000];
|
|
79938
|
+
ldsMobileInstrumentation$2.bucketValue('chunk-candidate-url-length-histogram', urlLength, buckets);
|
|
79939
|
+
}
|
|
79940
|
+
/** Garbage Collection */
|
|
79941
|
+
function reportAggressiveTrimTriggered(trimCount, beforeTrimRecordCount, totalRecordsTrimmed) {
|
|
79942
|
+
ldsMobileInstrumentation$2.trackValue(GARBAGE_COLLECTION_AGGRESSIVE_TRIM_COUNT, trimCount);
|
|
79943
|
+
ldsMobileInstrumentation$2.trackValue(GARBAGE_COLLECTION_AGGRESSIVE_TRIM_TOTAL_RECORDS_BEFORE_TRIM, beforeTrimRecordCount);
|
|
79944
|
+
ldsMobileInstrumentation$2.trackValue(GARBAGE_COLLECTION_AGGRESSIVE_TRIM_RECORDS_TRIMMED, totalRecordsTrimmed);
|
|
79945
|
+
}
|
|
79946
|
+
/** One Store Cache Purge */
|
|
79947
|
+
const ONESTORE_CACHE_PURGING_RECORDS_PURGED = 'onestore-cache-purging-records-purged';
|
|
79948
|
+
const ONESTORE_CACHE_PURGING_RECORDS_ERROR = 'onestore-cache-purging-records-error';
|
|
79949
|
+
function reportOneStoreRecordsPurgedFromCache(recordsPurged) {
|
|
79950
|
+
ldsMobileInstrumentation$2.trackValue(ONESTORE_CACHE_PURGING_RECORDS_PURGED, recordsPurged);
|
|
79951
|
+
}
|
|
79952
|
+
function reportOneStoreCachePurgingError(error) {
|
|
79953
|
+
const errorMessage = normalizeError$2(error);
|
|
79954
|
+
ldsMobileInstrumentation$2.error(errorMessage, ONESTORE_CACHE_PURGING_RECORDS_ERROR);
|
|
79955
|
+
}
|
|
79956
|
+
|
|
79612
79957
|
const HTTP_HEADER_RETRY_AFTER = 'Retry-After';
|
|
79613
79958
|
const HTTP_HEADER_IDEMPOTENCY_KEY = 'Idempotency-Key';
|
|
79614
79959
|
const ERROR_CODE_IDEMPOTENCY_FEATURE_NOT_ENABLED = 'IDEMPOTENCY_FEATURE_NOT_ENABLED';
|
|
@@ -79697,6 +80042,14 @@
|
|
|
79697
80042
|
if (request && request.headers && request.headers[HTTP_HEADER_IDEMPOTENCY_KEY]) {
|
|
79698
80043
|
const status = response.status;
|
|
79699
80044
|
switch (status) {
|
|
80045
|
+
case 0 /* IdempotentWriteSpecificHttpStatusCode.NoResponse */:
|
|
80046
|
+
// statusCode 0 = the client sent the request but received no response
|
|
80047
|
+
// (connection dropped / app suspended in flight). The write may already
|
|
80048
|
+
// have committed at the origin, so we MUST retry with the SAME idempotency
|
|
80049
|
+
// key and let the server dedupe — rotating the key here would duplicate an
|
|
80050
|
+
// already-committed record.
|
|
80051
|
+
shouldRetry = true;
|
|
80052
|
+
break;
|
|
79700
80053
|
case 408 /* IdempotentWriteSpecificHttpStatusCode.RequestTimeout */:
|
|
79701
80054
|
case 503 /* IdempotentWriteSpecificHttpStatusCode.ServiceUnavailable */:
|
|
79702
80055
|
retryDelayInMs = getRetryAfterInMs(response.headers);
|
|
@@ -79743,11 +80096,33 @@
|
|
|
79743
80096
|
}
|
|
79744
80097
|
}
|
|
79745
80098
|
}
|
|
80099
|
+
// A generic 400 that none of the idempotency-specific branches above claimed
|
|
80100
|
+
// (shouldRetry still false) and that is not a backdating collision. @W-23445154
|
|
79746
80101
|
if (response.status === HttpStatusCode$2.BadRequest &&
|
|
80102
|
+
!shouldRetry &&
|
|
79747
80103
|
this.hasIdempotencySupport() &&
|
|
79748
|
-
updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] !== undefined
|
|
79749
|
-
|
|
79750
|
-
|
|
80104
|
+
updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] !== undefined &&
|
|
80105
|
+
!this.isBackdatingError(response.body, action)) {
|
|
80106
|
+
if (!preserveIdempotencyKeyOn400Gate.isOpen({ fallback: false })) {
|
|
80107
|
+
// Gate CLOSED (default) — legacy behavior: rotate the key and let the draft
|
|
80108
|
+
// error (shouldRetry stays false). Retained as the default until the fix is
|
|
80109
|
+
// enabled; this is the path that duplicated already-committed writes.
|
|
80110
|
+
updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] = uuidv4();
|
|
80111
|
+
actionDataChanged = true;
|
|
80112
|
+
}
|
|
80113
|
+
else if (!this.isServerGeneratedError(response.body)) {
|
|
80114
|
+
// Gate OPEN — the fix: only an edge/gateway-injected 400 (no recognizable
|
|
80115
|
+
// server error body) is retried with the SAME key, so the server can dedupe a
|
|
80116
|
+
// write that may already have committed at the origin. A real, server-generated
|
|
80117
|
+
// 400 (UiApiError[] or an enhancedErrorType body, e.g. a field-validation
|
|
80118
|
+
// failure) falls through to the error path below: retrying it unchanged would
|
|
80119
|
+
// only be rejected again, so the draft is errored for the user to fix or discard
|
|
80120
|
+
// — the same terminal outcome as the legacy path, minus the duplicating key
|
|
80121
|
+
// rotation. The key is only ever rotated by the recognized idempotency error
|
|
80122
|
+
// codes above, by a backdating collision (new body), or when the user edits an
|
|
80123
|
+
// errored draft (mergeActions/handleReplaceAction).
|
|
80124
|
+
shouldRetry = true;
|
|
80125
|
+
}
|
|
79751
80126
|
}
|
|
79752
80127
|
if (response.status === HttpStatusCode$2.BadRequest &&
|
|
79753
80128
|
this.isBackdatingError(response.body, action)) {
|
|
@@ -79756,23 +80131,101 @@
|
|
|
79756
80131
|
...updatedAction.data.body.fields,
|
|
79757
80132
|
LastModifiedDate: new Date(updatedAction.timestamp).toISOString(),
|
|
79758
80133
|
};
|
|
80134
|
+
// The record content changed (LastModifiedDate is bumped), so this is a NEW
|
|
80135
|
+
// logical write. Rotate the idempotency key so the server treats it as such
|
|
80136
|
+
// rather than deduping it against the stale, pre-backdate request. This is a
|
|
80137
|
+
// legitimate rotation — the request body is modified — unlike the generic-400
|
|
80138
|
+
// fallback above which must preserve the key when the fix is enabled. @W-23445154
|
|
80139
|
+
if (this.hasIdempotencySupport() &&
|
|
80140
|
+
updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] !== undefined) {
|
|
80141
|
+
updatedAction.data.headers[HTTP_HEADER_IDEMPOTENCY_KEY] = uuidv4();
|
|
80142
|
+
}
|
|
79759
80143
|
shouldRetry = true;
|
|
79760
80144
|
actionDataChanged = true;
|
|
79761
80145
|
}
|
|
79762
|
-
|
|
79763
|
-
|
|
79764
|
-
|
|
80146
|
+
if (shouldRetry) {
|
|
80147
|
+
// Funnel the retry through the cap: when the gate is open this persists
|
|
80148
|
+
// the attempt count and errors out once the cap is hit; when the gate is
|
|
80149
|
+
// closed it behaves exactly as before. The non-ok response is the failure
|
|
80150
|
+
// that would otherwise be retried.
|
|
80151
|
+
await this.retryOrCap(updatedAction, response, actionErrored, retryDelayInMs, actionDataChanged);
|
|
80152
|
+
}
|
|
80153
|
+
else {
|
|
80154
|
+
await actionErrored({
|
|
79765
80155
|
...updatedAction,
|
|
79766
80156
|
error: response,
|
|
79767
80157
|
status: DraftActionStatus.Error,
|
|
79768
|
-
},
|
|
80158
|
+
}, false, retryDelayInMs, actionDataChanged);
|
|
80159
|
+
}
|
|
79769
80160
|
return ProcessActionResult.ACTION_ERRORED;
|
|
79770
80161
|
}
|
|
79771
80162
|
catch (e) {
|
|
79772
|
-
|
|
80163
|
+
// #3 (ungated): the thrown exception is otherwise swallowed here, leaving a
|
|
80164
|
+
// deterministic upload failure invisible in telemetry. Surface it to o11y
|
|
80165
|
+
// before deciding whether to retry.
|
|
80166
|
+
const error = normalizeError$1(e);
|
|
80167
|
+
const attempt = this.getUploadRetryCount(action) + 1;
|
|
80168
|
+
reportDraftActionUploadError(error, this.handlerId, attempt);
|
|
80169
|
+
await this.retryOrCap(action, error, actionErrored);
|
|
79773
80170
|
return ProcessActionResult.NETWORK_ERROR;
|
|
79774
80171
|
}
|
|
79775
80172
|
}
|
|
80173
|
+
/**
|
|
80174
|
+
* Reads the persisted upload retry-attempt count from the action's durable metadata
|
|
80175
|
+
* bag. The count lives in metadata (rather than in-memory) so it survives app
|
|
80176
|
+
* restarts and queue re-creation — the failure modes that let the unbounded retry
|
|
80177
|
+
* loop run for days.
|
|
80178
|
+
*/
|
|
80179
|
+
getUploadRetryCount(action) {
|
|
80180
|
+
const parsed = Number(action.metadata?.[DRAFT_ACTION_RETRY_COUNT_METADATA_KEY]);
|
|
80181
|
+
// Guard against a missing/corrupt persisted value: a NaN, fractional, or negative
|
|
80182
|
+
// count must never weaken the cap. Floor to a non-negative integer, defaulting to 0.
|
|
80183
|
+
if (!Number.isFinite(parsed) || parsed < 0) {
|
|
80184
|
+
return 0;
|
|
80185
|
+
}
|
|
80186
|
+
return Math.floor(parsed);
|
|
80187
|
+
}
|
|
80188
|
+
/**
|
|
80189
|
+
* Enforces the upload retry-attempt cap around the queue's `actionErrored` callback.
|
|
80190
|
+
* Both retry paths — a retryable HTTP error and a thrown exception — funnel through
|
|
80191
|
+
* here.
|
|
80192
|
+
*
|
|
80193
|
+
* The entire cap behavior is gated behind `lmr.draft-queue-max-retry-attempts`. When
|
|
80194
|
+
* the gate is CLOSED this is a transparent passthrough: it issues the same
|
|
80195
|
+
* `actionErrored(action, true, ...)` retry the queue made before this change, and
|
|
80196
|
+
* writes no extra metadata. When the gate is OPEN it persists an incremented attempt
|
|
80197
|
+
* count to the action's durable metadata and, once the action has failed
|
|
80198
|
+
* {@link MAX_RETRY_ATTEMPTS} times, transitions it to Error (carrying a
|
|
80199
|
+
* FetchResponse-shaped error that names the failure that exhausted the retries)
|
|
80200
|
+
* instead of scheduling yet another retry.
|
|
80201
|
+
*/
|
|
80202
|
+
async retryOrCap(action, lastFailure, actionErrored, retryDelayInMs, actionDataChanged) {
|
|
80203
|
+
if (!draftQueueMaxRetryAttemptsGate.isOpen({ fallback: false })) {
|
|
80204
|
+
// Gate closed: preserve the pre-existing unbounded-retry behavior exactly.
|
|
80205
|
+
await actionErrored(action, true, retryDelayInMs, actionDataChanged);
|
|
80206
|
+
return;
|
|
80207
|
+
}
|
|
80208
|
+
const attempt = this.getUploadRetryCount(action) + 1;
|
|
80209
|
+
if (attempt >= MAX_RETRY_ATTEMPTS) {
|
|
80210
|
+
await actionErrored({
|
|
80211
|
+
...action,
|
|
80212
|
+
error: buildMaxRetryError(lastFailure),
|
|
80213
|
+
status: DraftActionStatus.Error,
|
|
80214
|
+
}, false);
|
|
80215
|
+
return;
|
|
80216
|
+
}
|
|
80217
|
+
// Persist the incremented attempt count so it survives restarts. Forcing
|
|
80218
|
+
// actionDataChanged ensures the queue writes the updated metadata before the
|
|
80219
|
+
// action is rescheduled for retry.
|
|
80220
|
+
const retryingAction = {
|
|
80221
|
+
...action,
|
|
80222
|
+
metadata: {
|
|
80223
|
+
...action.metadata,
|
|
80224
|
+
[DRAFT_ACTION_RETRY_COUNT_METADATA_KEY]: String(attempt),
|
|
80225
|
+
},
|
|
80226
|
+
};
|
|
80227
|
+
await actionErrored(retryingAction, true, retryDelayInMs, true);
|
|
80228
|
+
}
|
|
79776
80229
|
async handleActionEnqueued(action) {
|
|
79777
80230
|
const impactedKeys = await this.recordService.setSideEffectsForActions([action]);
|
|
79778
80231
|
await this.recordService.reapplyRecordSideEffects(impactedKeys);
|
|
@@ -79936,6 +80389,13 @@
|
|
|
79936
80389
|
this.isActionOfType(sourceAction)) {
|
|
79937
80390
|
targetAction.status = DraftActionStatus.Pending;
|
|
79938
80391
|
targetAction.data = sourceAction.data;
|
|
80392
|
+
// Replacing an action's data re-queues it as a fresh upload, so the persisted
|
|
80393
|
+
// upload retry-attempt count must not carry over — otherwise a previously-
|
|
80394
|
+
// throttled action could immediately re-hit the cap on its first new attempt.
|
|
80395
|
+
// (Mirrors the same clear in mergeActions.)
|
|
80396
|
+
if (targetAction.metadata !== undefined) {
|
|
80397
|
+
delete targetAction.metadata[DRAFT_ACTION_RETRY_COUNT_METADATA_KEY];
|
|
80398
|
+
}
|
|
79939
80399
|
return targetAction;
|
|
79940
80400
|
}
|
|
79941
80401
|
else {
|
|
@@ -79975,6 +80435,11 @@
|
|
|
79975
80435
|
}
|
|
79976
80436
|
// overlay metadata
|
|
79977
80437
|
merged.metadata = { ...targetMetadata, ...sourceMetadata };
|
|
80438
|
+
// A merge folds new user data into the action and re-queues it as a fresh upload,
|
|
80439
|
+
// so the persisted upload retry-attempt count must not carry over — otherwise a
|
|
80440
|
+
// previously-throttled action could immediately re-hit the cap on its first new
|
|
80441
|
+
// attempt.
|
|
80442
|
+
delete merged.metadata[DRAFT_ACTION_RETRY_COUNT_METADATA_KEY];
|
|
79978
80443
|
// put status back to pending to auto upload if queue is active and targed is at the head.
|
|
79979
80444
|
merged.status = DraftActionStatus.Pending;
|
|
79980
80445
|
return merged;
|
|
@@ -80009,8 +80474,36 @@
|
|
|
80009
80474
|
isUiApiErrors(body) {
|
|
80010
80475
|
return body !== undefined && isArray$3$1(body) && body.length > 0 && body[0].errorCode;
|
|
80011
80476
|
}
|
|
80477
|
+
// Distinguishes a real, server-generated 400 from an edge/gateway-injected one.
|
|
80478
|
+
//
|
|
80479
|
+
// A 400 the origin (UiApi/APREST) actually produced carries a structured error body:
|
|
80480
|
+
// either a `UiApiError[]` (see isUiApiErrors) or an enhanced-error object tagged with
|
|
80481
|
+
// `enhancedErrorType` (e.g. 'RecordError' for field-validation failures). These describe
|
|
80482
|
+
// a request the server understood and deliberately rejected — retrying it unchanged would
|
|
80483
|
+
// just be rejected again, so the draft must be errored for the user to fix or discard.
|
|
80484
|
+
//
|
|
80485
|
+
// An edge/gateway-injected 400 (the duplicate-record incident, @W-23445154) has NO such
|
|
80486
|
+
// body — it's a tiny generic error page ({ message: 'Bad Request' }), a plain string, or
|
|
80487
|
+
// empty — and is returned on a request that may already have committed at the origin.
|
|
80488
|
+
// Only those should be retried with the same idempotency key so the server can dedupe.
|
|
80489
|
+
isServerGeneratedError(body) {
|
|
80490
|
+
if (this.isUiApiErrors(body)) {
|
|
80491
|
+
return true;
|
|
80492
|
+
}
|
|
80493
|
+
// enhancedErrorType is the origin's marker for a structured record error (field
|
|
80494
|
+
// validation, backdating collision, etc.). Guard the deref so a string/undefined
|
|
80495
|
+
// edge body doesn't throw.
|
|
80496
|
+
return (body !== null &&
|
|
80497
|
+
typeof body === 'object' &&
|
|
80498
|
+
body.enhancedErrorType !== undefined);
|
|
80499
|
+
}
|
|
80012
80500
|
isBackdatingError(body, action) {
|
|
80013
|
-
if (
|
|
80501
|
+
if (
|
|
80502
|
+
// An edge/gateway-injected 400 can carry an empty, string, or missing body; guard
|
|
80503
|
+
// the deref so classifying such a response never throws. @W-23445154
|
|
80504
|
+
body !== null &&
|
|
80505
|
+
typeof body === 'object' &&
|
|
80506
|
+
body.enhancedErrorType &&
|
|
80014
80507
|
body.enhancedErrorType === 'RecordError' &&
|
|
80015
80508
|
body.output &&
|
|
80016
80509
|
body.output.errors &&
|
|
@@ -80585,229 +81078,6 @@
|
|
|
80585
81078
|
}
|
|
80586
81079
|
}
|
|
80587
81080
|
|
|
80588
|
-
function attachObserversToAdapterRequestContext(observers, adapterRequestContext) {
|
|
80589
|
-
if (adapterRequestContext === undefined) {
|
|
80590
|
-
return { eventObservers: observers };
|
|
80591
|
-
}
|
|
80592
|
-
if (adapterRequestContext.eventObservers === undefined) {
|
|
80593
|
-
return { ...adapterRequestContext, eventObservers: observers };
|
|
80594
|
-
}
|
|
80595
|
-
return {
|
|
80596
|
-
...adapterRequestContext,
|
|
80597
|
-
eventObservers: adapterRequestContext.eventObservers.concat(observers),
|
|
80598
|
-
};
|
|
80599
|
-
}
|
|
80600
|
-
/**
|
|
80601
|
-
* Use this method to sanitize the unknown error object when
|
|
80602
|
-
* we are unsure of the type of the error thrown
|
|
80603
|
-
*
|
|
80604
|
-
* @param err Unknown object to sanitize
|
|
80605
|
-
* @returns an instance of error
|
|
80606
|
-
*/
|
|
80607
|
-
function normalizeError$1(err) {
|
|
80608
|
-
if (err instanceof Error) {
|
|
80609
|
-
return err;
|
|
80610
|
-
}
|
|
80611
|
-
else if (typeof err === 'string') {
|
|
80612
|
-
return new Error(err);
|
|
80613
|
-
}
|
|
80614
|
-
return new Error(stringify$5(err));
|
|
80615
|
-
}
|
|
80616
|
-
// metrics
|
|
80617
|
-
/** GraphQL */
|
|
80618
|
-
const GRAPHQL_EVAL_ERROR = 'gql-eval-error';
|
|
80619
|
-
const GRAPHQL_EVAL_DB_READ_DURATION = 'gql-eval-db-read-duration';
|
|
80620
|
-
const GRAPHQL_EVAL_ROOT_QUERY_COUNT = 'gql-eval-root-query-count';
|
|
80621
|
-
const GRAPHQL_EVAL_TOTAL_QUERY_COUNT = 'gql-eval-total-query-count';
|
|
80622
|
-
const GRAPHQL_EVAL_MAX_CHILD_RELATIONSHIPS_COUNT = 'gql-eval-max-child-count';
|
|
80623
|
-
const GRAPHQL_EVAL_QUERY_RECORD_COUNT = 'gql-eval-query-record-count';
|
|
80624
|
-
const GRAPHQL_SNAPSHOT_REFRESH_UNDEFINED = 'gql-snapshot-refresh-undefined';
|
|
80625
|
-
/** Draft Queue */
|
|
80626
|
-
const DRAFT_QUEUE_STATE_STARTED = 'draft-queue-state-started';
|
|
80627
|
-
const DRAFT_QUEUE_STATE_ERROR = 'draft-queue-state-error';
|
|
80628
|
-
const DRAFT_QUEUE_STATE_WAITING = 'draft-queue-state-waiting';
|
|
80629
|
-
const DRAFT_QUEUE_STATE_STOPPED = 'draft-queue-state-stopped';
|
|
80630
|
-
const DRAFT_QUEUE_ACTION_ADDED = 'draft-queue-action-added';
|
|
80631
|
-
const DRAFT_QUEUE_ACTION_UPLOADING = 'draft-queue-action-uploading';
|
|
80632
|
-
const DRAFT_QUEUE_ACTION_COMPLETED = 'draft-queue-action-completed';
|
|
80633
|
-
const DRAFT_QUEUE_ACTION_DELETED = 'draft-queue-action-deleted';
|
|
80634
|
-
const DRAFT_QUEUE_ACTION_UPDATED = 'draft-queue-action-updated';
|
|
80635
|
-
const DRAFT_QUEUE_ACTION_FAILED = 'draft-queue-action-failed';
|
|
80636
|
-
const DRAFT_QUEUE_TOTAL_MERGE_ACTIONS_CALLS = 'draft-queue-total-mergeActions-calls';
|
|
80637
|
-
/** Content Document */
|
|
80638
|
-
const CREATE_CONTENT_DOCUMENT_AND_VERSION_TOTAL_SYNTHESIZE_CALLS = 'content-document-version-total-synthesize-calls';
|
|
80639
|
-
const CREATE_CONTENT_DOCUMENT_AND_VERSION_DRAFT_SYNTHESIZE_ERROR = 'create-content-document-version-draft-synthesize-error';
|
|
80640
|
-
/** Priming */
|
|
80641
|
-
const PRIMING_TOTAL_SESSION_COUNT = 'priming-total-session-count';
|
|
80642
|
-
const PRIMING_TOTAL_ERROR_COUNT = 'priming-total-error-count';
|
|
80643
|
-
const PRIMING_TOTAL_PRIMED_COUNT = 'priming-total-primed-count';
|
|
80644
|
-
const PRIMING_TOTAL_CONFLICT_COUNT = 'priming-total-conflict-count';
|
|
80645
|
-
// logs
|
|
80646
|
-
const GRAPHQL_QUERY_PARSE_ERROR = 'gql-query-parse-error';
|
|
80647
|
-
const GRAPHQL_SQL_EVAL_PRECONDITION_ERROR = 'gql-sql-pre-eval-error';
|
|
80648
|
-
const GRAPHQL_CREATE_SNAPSHOT_ERROR = 'gql-create-snapshot-error';
|
|
80649
|
-
const DRAFT_AWARE_CREATE_CONTENT_DOCUMENT_AND_VERSION_ERROR = 'draft-aware-create-content-document-and-version-error';
|
|
80650
|
-
/** Garbage Collection */
|
|
80651
|
-
const GARBAGE_COLLECTION_AGGRESSIVE_TRIM_COUNT = 'garbage-collection-aggressive-trim-count';
|
|
80652
|
-
const GARBAGE_COLLECTION_AGGRESSIVE_TRIM_RECORDS_TRIMMED = 'garbage-collection-aggressive-trim-records-trimmed';
|
|
80653
|
-
const GARBAGE_COLLECTION_AGGRESSIVE_TRIM_TOTAL_RECORDS_BEFORE_TRIM = 'garbage-collection-aggressive-trim-total-records-before-trim';
|
|
80654
|
-
const ldsMobileInstrumentation$2 = getInstrumentation();
|
|
80655
|
-
const nimbusLogger = typeof __nimbus !== 'undefined' &&
|
|
80656
|
-
__nimbus.plugins !== undefined &&
|
|
80657
|
-
__nimbus.plugins.JSLoggerPlugin !== undefined
|
|
80658
|
-
? __nimbus.plugins.JSLoggerPlugin
|
|
80659
|
-
: undefined;
|
|
80660
|
-
function reportGraphqlQueryParseError(err) {
|
|
80661
|
-
const error = normalizeError$1(err);
|
|
80662
|
-
const errorCode = GRAPHQL_QUERY_PARSE_ERROR;
|
|
80663
|
-
// Metric
|
|
80664
|
-
reportGraphqlAdapterError(errorCode);
|
|
80665
|
-
// Log
|
|
80666
|
-
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
80667
|
-
}
|
|
80668
|
-
function reportGraphqlSqlEvalPreconditionError(err) {
|
|
80669
|
-
const error = normalizeError$1(err);
|
|
80670
|
-
const errorCode = GRAPHQL_SQL_EVAL_PRECONDITION_ERROR;
|
|
80671
|
-
// Metric
|
|
80672
|
-
reportGraphqlAdapterError(errorCode);
|
|
80673
|
-
// Log
|
|
80674
|
-
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
80675
|
-
}
|
|
80676
|
-
function reportGraphqlCreateSnapshotError(err) {
|
|
80677
|
-
const error = normalizeError$1(err);
|
|
80678
|
-
const errorCode = GRAPHQL_CREATE_SNAPSHOT_ERROR;
|
|
80679
|
-
// Metric
|
|
80680
|
-
reportGraphqlAdapterError(errorCode);
|
|
80681
|
-
// Log
|
|
80682
|
-
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
80683
|
-
}
|
|
80684
|
-
function reportGraphQlEvalDbReadDuration(duration) {
|
|
80685
|
-
ldsMobileInstrumentation$2.trackValue(GRAPHQL_EVAL_DB_READ_DURATION, duration);
|
|
80686
|
-
}
|
|
80687
|
-
function reportGraphqlAdapterError(errorCode) {
|
|
80688
|
-
// Increment overall count with errorCode as tag
|
|
80689
|
-
ldsMobileInstrumentation$2.incrementCounter(GRAPHQL_EVAL_ERROR, 1, true, { errorCode });
|
|
80690
|
-
}
|
|
80691
|
-
function reportGraphqlQueryInstrumentation(data) {
|
|
80692
|
-
const queryBuckets = [1, 2, 3, 4, 5, 10, 20, 50, 100];
|
|
80693
|
-
const recordBuckets = [
|
|
80694
|
-
1, 5, 10, 20, 50, 100, 1000, 2000, 5000, 10000, 50000, 100000, 1000000,
|
|
80695
|
-
];
|
|
80696
|
-
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_ROOT_QUERY_COUNT, data.rootQueryCount, queryBuckets);
|
|
80697
|
-
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_TOTAL_QUERY_COUNT, data.totalQueryCount, queryBuckets);
|
|
80698
|
-
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_MAX_CHILD_RELATIONSHIPS_COUNT, data.maxChildRelationships, queryBuckets);
|
|
80699
|
-
ldsMobileInstrumentation$2.bucketValue(GRAPHQL_EVAL_QUERY_RECORD_COUNT, data.requestedRecordCount, recordBuckets);
|
|
80700
|
-
}
|
|
80701
|
-
function incrementGraphQLRefreshUndfined() {
|
|
80702
|
-
ldsMobileInstrumentation$2.incrementCounter(GRAPHQL_SNAPSHOT_REFRESH_UNDEFINED);
|
|
80703
|
-
}
|
|
80704
|
-
function reportDraftActionEvent(state, draftCount, message) {
|
|
80705
|
-
if (nimbusLogger) {
|
|
80706
|
-
nimbusLogger.logInfo(`Draft action event: ${state}, depth: ${draftCount}${message ? `, message: ${message}` : ''}`);
|
|
80707
|
-
}
|
|
80708
|
-
switch (state) {
|
|
80709
|
-
case 'added':
|
|
80710
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_ADDED);
|
|
80711
|
-
break;
|
|
80712
|
-
case 'uploading':
|
|
80713
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_UPLOADING);
|
|
80714
|
-
break;
|
|
80715
|
-
case 'completed':
|
|
80716
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_COMPLETED);
|
|
80717
|
-
break;
|
|
80718
|
-
case 'deleted':
|
|
80719
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_DELETED);
|
|
80720
|
-
break;
|
|
80721
|
-
case 'failed':
|
|
80722
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_FAILED, 1, true);
|
|
80723
|
-
break;
|
|
80724
|
-
case 'updated':
|
|
80725
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_ACTION_UPDATED);
|
|
80726
|
-
break;
|
|
80727
|
-
}
|
|
80728
|
-
}
|
|
80729
|
-
function reportDraftQueueState(state, draftCount) {
|
|
80730
|
-
if (nimbusLogger) {
|
|
80731
|
-
nimbusLogger.logInfo(`Draft state changed: ${state}, depth: ${draftCount}`);
|
|
80732
|
-
}
|
|
80733
|
-
switch (state) {
|
|
80734
|
-
case 'started':
|
|
80735
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_STARTED);
|
|
80736
|
-
break;
|
|
80737
|
-
case 'error':
|
|
80738
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_ERROR, 1, true);
|
|
80739
|
-
break;
|
|
80740
|
-
case 'waiting':
|
|
80741
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_WAITING);
|
|
80742
|
-
break;
|
|
80743
|
-
case 'stopped':
|
|
80744
|
-
ldsMobileInstrumentation$2.incrementCounter(DRAFT_QUEUE_STATE_STOPPED);
|
|
80745
|
-
break;
|
|
80746
|
-
}
|
|
80747
|
-
}
|
|
80748
|
-
function reportDraftAwareContentDocumentVersionSynthesizeError(err) {
|
|
80749
|
-
let error;
|
|
80750
|
-
if (err.body !== undefined) {
|
|
80751
|
-
error = err.body;
|
|
80752
|
-
}
|
|
80753
|
-
else {
|
|
80754
|
-
error = normalizeError$1(err);
|
|
80755
|
-
}
|
|
80756
|
-
const errorCode = DRAFT_AWARE_CREATE_CONTENT_DOCUMENT_AND_VERSION_ERROR;
|
|
80757
|
-
const errorType = error.errorType;
|
|
80758
|
-
const tags = {
|
|
80759
|
-
errorCode,
|
|
80760
|
-
};
|
|
80761
|
-
if (errorType !== undefined) {
|
|
80762
|
-
tags.errorType = errorType;
|
|
80763
|
-
}
|
|
80764
|
-
// Metric
|
|
80765
|
-
ldsMobileInstrumentation$2.incrementCounter(CREATE_CONTENT_DOCUMENT_AND_VERSION_DRAFT_SYNTHESIZE_ERROR, 1, true, tags);
|
|
80766
|
-
// Log
|
|
80767
|
-
ldsMobileInstrumentation$2.error(error, errorCode);
|
|
80768
|
-
}
|
|
80769
|
-
function reportDraftAwareContentVersionSynthesizeCalls(mimeType) {
|
|
80770
|
-
ldsMobileInstrumentation$2.incrementCounter(CREATE_CONTENT_DOCUMENT_AND_VERSION_TOTAL_SYNTHESIZE_CALLS, 1, undefined, { mimeType });
|
|
80771
|
-
}
|
|
80772
|
-
/** Priming */
|
|
80773
|
-
function reportPrimingSessionCreated() {
|
|
80774
|
-
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_SESSION_COUNT, 1, undefined, {});
|
|
80775
|
-
}
|
|
80776
|
-
function reportPrimingError(errorType, recordCount) {
|
|
80777
|
-
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_ERROR_COUNT, recordCount, undefined, {
|
|
80778
|
-
errorType,
|
|
80779
|
-
});
|
|
80780
|
-
}
|
|
80781
|
-
function reportPrimingSuccess(recordCount) {
|
|
80782
|
-
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_PRIMED_COUNT, recordCount, undefined);
|
|
80783
|
-
}
|
|
80784
|
-
function reportPrimingConflict(resolutionType, recordCount) {
|
|
80785
|
-
ldsMobileInstrumentation$2.incrementCounter(PRIMING_TOTAL_CONFLICT_COUNT, recordCount, undefined, {
|
|
80786
|
-
resolutionType,
|
|
80787
|
-
});
|
|
80788
|
-
}
|
|
80789
|
-
/** Network */
|
|
80790
|
-
function reportChunkCandidateUrlLength(urlLength) {
|
|
80791
|
-
const buckets = [8000, 10000, 12000, 14000, 16000];
|
|
80792
|
-
ldsMobileInstrumentation$2.bucketValue('chunk-candidate-url-length-histogram', urlLength, buckets);
|
|
80793
|
-
}
|
|
80794
|
-
/** Garbage Collection */
|
|
80795
|
-
function reportAggressiveTrimTriggered(trimCount, beforeTrimRecordCount, totalRecordsTrimmed) {
|
|
80796
|
-
ldsMobileInstrumentation$2.trackValue(GARBAGE_COLLECTION_AGGRESSIVE_TRIM_COUNT, trimCount);
|
|
80797
|
-
ldsMobileInstrumentation$2.trackValue(GARBAGE_COLLECTION_AGGRESSIVE_TRIM_TOTAL_RECORDS_BEFORE_TRIM, beforeTrimRecordCount);
|
|
80798
|
-
ldsMobileInstrumentation$2.trackValue(GARBAGE_COLLECTION_AGGRESSIVE_TRIM_RECORDS_TRIMMED, totalRecordsTrimmed);
|
|
80799
|
-
}
|
|
80800
|
-
/** One Store Cache Purge */
|
|
80801
|
-
const ONESTORE_CACHE_PURGING_RECORDS_PURGED = 'onestore-cache-purging-records-purged';
|
|
80802
|
-
const ONESTORE_CACHE_PURGING_RECORDS_ERROR = 'onestore-cache-purging-records-error';
|
|
80803
|
-
function reportOneStoreRecordsPurgedFromCache(recordsPurged) {
|
|
80804
|
-
ldsMobileInstrumentation$2.trackValue(ONESTORE_CACHE_PURGING_RECORDS_PURGED, recordsPurged);
|
|
80805
|
-
}
|
|
80806
|
-
function reportOneStoreCachePurgingError(error) {
|
|
80807
|
-
const errorMessage = normalizeError$1(error);
|
|
80808
|
-
ldsMobileInstrumentation$2.error(errorMessage, ONESTORE_CACHE_PURGING_RECORDS_ERROR);
|
|
80809
|
-
}
|
|
80810
|
-
|
|
80811
81081
|
const QUICK_ACTION_HANDLER = 'QUICK_ACTION_HANDLER';
|
|
80812
81082
|
class QuickActionExecutionRepresentationHandler extends AbstractQuickActionHandler {
|
|
80813
81083
|
constructor(getLuvio, draftRecordService, draftQueue, networkAdapter, isDraftId, sideEffectService, objectInfoService, getRecord) {
|
|
@@ -85514,7 +85784,7 @@
|
|
|
85514
85784
|
return Boolean(interfaces.find((iface) => iface.name === 'Record'));
|
|
85515
85785
|
}
|
|
85516
85786
|
|
|
85517
|
-
var uiapiSchemaString = "# Auto-generated merged GraphQL schema\n# Generated at: 2025-10-14T15:00:19.876399281Z\n# Source files: ui-services-private/java/resources/graphql-schemas/analytics.graphqls, ui-services-private/java/resources/graphql-schemas/setup-listview.graphqls, ui-services-private/java/resources/graphql-schemas/setup.graphqls, ui-services-private/java/resources/graphql-schemas/uiapi.graphqls\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/analytics.graphqls\n# ============================================================\ninput Analytics__AnalyticsFilter @team(name: \"TUA-Admin-Home-Search\") {\n Id: Setup__IdOperators\n MasterLabel: StringOperators\n DeveloperName: StringOperators\n NamespacePrefix: StringOperators\n AssetApiName: StringOperators\n DataConnectorType: StringOperators\n CreatedById: Setup__IdOperators\n LastModifiedById: Setup__IdOperators\n SemanticMetricId: Setup__IdOperators\n SemanticModelId: Setup__IdOperators\n LastModifiedDate: DateTimeOperators\n CreatedDate: DateTimeOperators\n AssetUsageType: PicklistOperators\n ActivePromotionRequestId: Setup__IdOperators\n SemanticModel: Analytics__SemanticModelFilter\n and: [Analytics__AnalyticsFilter]\n or: [Analytics__AnalyticsFilter]\n not: Analytics__AnalyticsFilter\n}\n\ninput Analytics__SemanticModelFilter @team(name: \"TUA-Admin-Home-Search\") {\n DeveloperName: StringOperators\n MasterLabel: StringOperators\n}\n\nenum Analytics__SortEnumType @team(name: \"TUA-Admin-Home-Search\") {\n ASC\n DESC\n}\n\ntype Analytics__SemanticSubMetricDefinitionConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__SemanticSubMetricDefinitionEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticSubMetricDefinitionEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__SemanticSubMetricDefinitionRepresentation\n cursor: String!\n}\n\ntype Analytics__DataspaceRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n MasterLabel: String\n DeveloperName: String\n}\n\ninterface Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__AnalyticsBrowse @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__AnalyticsEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\n# Empty enum is invalid GraphQL\n# enum AnalyticsAssetType @team(name: \"TUA-Admin-Home-Search\") @generic {\n# }\n\ntype Analytics__AnalyticsWorkspaceAssetConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__AnalyticsWorkspaceAssetEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticDefinition implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n SemanticModelId: IDValue\n SemanticModel: Analytics__SemanticModel\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n SubMetrics(first: Int, after: String): Analytics__SemanticSubMetricDefinitionConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__DominoTemplate implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA Intel MarketPlace\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n TemplateStatus: StringValue\n TemplateType: StringValue\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__AnalyticsEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__AnalyticsRepresentationInterface\n cursor: String!\n}\n\ntype Analytics__AnalyticsWorkspace @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n}\n\ntype Analytics__SemanticSubMetricDefinitionRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n SemanticMetricId: IDValue\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n}\n\ntype Analytics__AnalyticsWorkspaceAssetEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__AnalyticsWorkspaceAsset\n cursor: String!\n}\n\ninput Analytics__OrderByInput @team(name: \"TUA-Admin-Home-Search\") {\n order: Analytics__SortEnumType\n}\n\ntype Analytics__AnalyticsRepresentation implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n RecordOperations: [String]\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\ntype Analytics__SemanticModelRelatedModelConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__SemanticModelRelatedModelEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticModelRelatedModelRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n RelatedSemanticModel: Analytics__SemanticModel\n}\n\ntype Analytics__SemanticModelRelatedModelEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__SemanticModelRelatedModelRepresentation\n cursor: String!\n}\n\ntype Analytics__SemanticModel implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n RelatedModel(first: Int, after: String): Analytics__SemanticModelRelatedModelConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\n# assetTypes: AnalyticsAssetType - empty enum is invalid GraphQL so replace with String\ntype Analytics__Analytics @team(name: \"TUA-Admin-Home-Search\") {\n browse(where: Analytics__AnalyticsFilter, assetTypes: [String], orderBy: Analytics__AnalyticsOrderBy, first: Int, orgId: ID, after: String): Analytics__AnalyticsBrowse! @fieldCategory\n}\n\ntype Analytics__AnalyticsWorkspaceAsset @team(name: \"TUA-Admin-Home-Search\") {\n AnalyticsWorkspace: Analytics__AnalyticsWorkspace\n AssetUsageType: PicklistValue\n ActivePromotionRequestId: IDValue\n MetadataSourceType: PicklistValue\n}\n\ninput Analytics__AnalyticsOrderBy @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: Analytics__OrderByInput\n Id: Analytics__OrderByInput\n ApiName: Analytics__OrderByInput\n LastModifiedById: Analytics__OrderByInput\n CreatedById: Analytics__OrderByInput\n LastModifiedDate: Analytics__OrderByInput\n CreatedDate: Analytics__OrderByInput\n}\n\ntype Analytics__MktDataConnector implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n DataConnectorType: StringValue\n AssetApiName: String\n DloActiveStatus: Boolean\n}\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/setup-listview.graphqls\n# ============================================================\ninput Setup__ListOrderInput {\n apiName: String!\n order: ResultsOrder\n}\n\ntype Setup__ListOrder {\n apiName: String!\n order: ResultsOrder\n label: String\n}\n\ntype Setup__ListViewRowConnection {\n edges: [Setup__ListViewRowEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype Setup__ListView {\n listViewType: String!\n label: String\n displayColumns: [Setup__ListColumn!]!\n filters: [Setup__ListFilter!]\n filterLogic: String\n orderedByInfo: [Setup__ListOrder!]!\n searchable: Boolean!\n rows(first: Int, after: String, upperBound: Int, orderBy: Setup__ListOrderInput, searchTerm: String): Setup__ListViewRowConnection\n}\n\nenum Setup__ListFilterOperator {\n EQUALS\n NOT_EQUAL\n LESS_THAN\n GREATER_THAN\n LESS_OR_EQUAL\n GREATER_OR_EQUAL\n CONTAINS\n NOT_CONTAIN\n STARTS_WITH\n INCLUDES\n EXCLUDES\n WITHIN\n}\n\ntype Setup__ListFilter {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n label: String\n}\n\ntype Setup__ListColumn {\n apiName: String!\n label: String!\n type: DataType!\n displayable: Boolean!\n filterable: Boolean!\n defaultOperator: Setup__ListFilterOperator\n allowedOperators: [Setup__ListFilterOperator!]\n sortable: Boolean\n navigable: Boolean\n}\n\ntype Setup__ListScalarField {\n apiName: String!\n value: String\n dataType: DataType\n displayValue: String\n format: String\n label: String\n lookupRecordId: String\n lookupObjectApiName: String\n}\n\ntype Setup__ListViewRow {\n id: String\n columns(apiNames: [String!]): [Setup__ListScalarField]!\n}\n\ntype Setup__ListViewRowEdge {\n cursor: String!\n node: Setup__ListViewRow\n}\n\ntype Setup__ListViewObjectInfo {\n columns(apiNames: [String!], displayable: Boolean, filterable: Boolean) : [Setup__ListColumn!]!\n}\n\ninput Setup__ListFilterInput {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n}\n\nextend type Setup__Setup {\n ListView(listViewType: String!, label: String, displayColumns: [String!], filters: [Setup__ListFilterInput!], filterLogic: String): Setup__ListView!\n ListViewObjectInfo(listViewType: String!): Setup__ListViewObjectInfo!\n}\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/setup.graphqls\n# ============================================================\n# scope should be RecordScope, but it is an empty enum\ntype Setup__SetupQueryAggregate {\n recordQueryAggregate(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupAggregateOrderBy, scope: String, groupBy: Setup__SetupGroupBy, upperBound: Int, includeDeleted: Boolean): Setup__SetupAggregateConnection @fieldCategory\n}\n\nunion Setup__SetupPolymorphicParentRelationship @generic = Setup__EntityRepresentation\n\ninput Setup__SetupPolymorphicParentRelationshipRecordOrderBy @generic {\n Setup__SetupOrderBy: Setup__SetupOrderBy @fieldCategory\n}\n\ninput Setup__IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: Setup__JoinInput\n ninq: Setup__JoinInput\n}\n\ninput Setup__JoinInput {\n Record: Setup__SetupFilter @fieldCategory\n ApiName: String\n}\n\ntype Setup__SetupAggregateConnection @generic {\n edges: [Setup__SetupAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ninput Setup__SetupAggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipOrderBy @fieldCategory\n}\n\ntype Setup__SetupConnection @generic {\n edges: [Setup__SetupEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype Setup__SetupAggregateEdge @generic {\n node: Setup__SetupRecordResult\n cursor: String!\n}\n\ninput Setup__SetupPolymorphicParentRelationshipRecordFilter @generic {\n Setup__SetupFilter: Setup__SetupFilter @fieldCategory\n}\n\ntype Setup__SetupRecordResult @generic {\n aggregate: Setup__SetupRecordAggregate\n}\n\ntype Setup__SetupRecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: Setup__SetupRecordAggregate @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicAggregateParentRelationship @fieldCategory\n}\n\ninput Setup__SetupOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput Setup__SetupPolymorphicParentRelationshipOrderBy @generic {\n Setup__SetupAggregateOrderBy: Setup__SetupAggregateOrderBy @fieldCategory\n}\n\ntype Setup__SetupEdge @generic {\n node: Setup__EntityRepresentation\n cursor: String!\n}\n\n # scope should be RecordScope, but it is an empty enum\ntype Setup__SetupQuery {\n recordQuery(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, scope: String, upperBound: Int, includeDeleted: Boolean, updateMRU: Boolean): Setup__SetupConnection @fieldCategory\n}\n\ntype Setup__EntityRepresentation @generic {\n Id: ID!\n ApiName: String!\n Entity__fields(type: SObject__FieldType): [SObject__Field]! @ignoreRule(rules:[{ rule: \"FieldCamelOrPascalCaseRule\" teamName: \"UI Experience API\" justification: \"SObject__ prefix added to prevent name collisions.\" }])\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n AnyType: AnyType @fieldCategory\n parentRelationship: Setup__EntityRepresentation @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, upperBound: Int): Setup__SetupConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n}\n\ninput Setup__SetupFilter @generic {\n and: [Setup__SetupFilter]\n or: [Setup__SetupFilter]\n not: Setup__SetupFilter\n parentRelationshipRecordFilter: Setup__SetupFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: Setup__SetupPolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n Setup__IdOperator: Setup__IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ninput Setup__SetupGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: Setup__SetupGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\nunion Setup__SetupPolymorphicAggregateParentRelationship @generic = Setup__SetupRecordAggregate\n\ntype Setup__Setup {\n query: Setup__SetupQuery!\n aggregate: Setup__SetupQueryAggregate!\n objectInfos(apiNames: [String!], locale: String, objectInfoInputs: [ObjectInfoInput!]): [ObjectInfo]\n}\n\ninput Setup__SetupPolymorphicParentRelationshipGroupBy @generic {\n Setup__SetupGroupBy: Setup__SetupGroupBy @fieldCategory\n}\n\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/uiapi.graphqls\n# ============================================================\nscalar BigDecimal\nscalar Byte\nscalar Char\nscalar BigInteger\nscalar Short\nscalar String\nscalar Currency\nscalar Longitude\nscalar Float\nscalar PhoneNumber\nscalar Email\nscalar TextArea\nscalar Latitude\nscalar RichTextArea\nscalar EncryptedString\nscalar Long\nscalar JSON\nscalar Time\nscalar Percent\nscalar LongTextArea\nscalar DateTime\nscalar ID\nscalar Boolean\nscalar MultiPicklist\nscalar Base64\nscalar Url\nscalar Picklist\nscalar Double\nscalar Int\nscalar IdOrRef\nscalar Date\n\ntype PercentAggregate implements FieldValue {\n value: Percent\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: PercentValue\n min: PercentValue\n sum: PercentValue\n}\n\ntype StringAggregate implements FieldValue {\n value: String\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: StringValue\n min: StringValue\n}\n\ntype Query {\n uiapi: UIAPI!\n setup: Setup__Setup! @fieldCategory\n analytics: Analytics__Analytics! @fieldCategory\n}\n\ninput EmailOperators {\n eq: Email\n ne: Email\n like: Email\n lt: Email\n gt: Email\n lte: Email\n gte: Email\n in: [Email]\n nin: [Email]\n}\n\ninput DoubleOperators {\n eq: Double\n ne: Double\n lt: Double\n gt: Double\n lte: Double\n gte: Double\n in: [Double]\n nin: [Double]\n}\n\ntype DateOnlyAggregation {\n value: Date\n format: String\n}\n\ntype DateAggregate implements FieldValue {\n value: Date\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n grouping: IntValue\n max: DateValue\n min: DateValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\nenum GroupByFunction {\n DAY_IN_WEEK\n DAY_IN_MONTH\n DAY_IN_YEAR\n WEEK_IN_MONTH\n WEEK_IN_YEAR\n CALENDAR_MONTH\n CALENDAR_QUARTER\n CALENDAR_YEAR\n FISCAL_MONTH\n FISCAL_QUARTER\n FISCAL_YEAR\n DAY_ONLY\n HOUR_IN_DAY\n}\n\ntype RecordTypeInfo {\n available: Boolean!\n defaultRecordTypeMapping: Boolean!\n master: Boolean!\n name: String\n recordTypeId: ID\n}\n\ninput UIAPIMutationsInput {\n \"Determines whether or not all the operations should be rolled back in the event one or more operations fail.\"\n allOrNone: Boolean = true\n}\n\ntype ReferenceToInfo {\n ApiName: String!\n nameFields: [String]!\n objectInfo: ObjectInfo\n}\n\ninterface FieldValue {\n displayValue: String\n}\n\ntype LongitudeValue implements FieldValue {\n value: Longitude\n displayValue: String\n}\n\ntype IntValue implements FieldValue {\n value: Int\n displayValue: String\n format: String\n}\n\ntype UrlValue implements FieldValue {\n value: Url\n displayValue: String\n}\n\ntype LongAggregate implements FieldValue {\n value: Long\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: LongValue\n min: LongValue\n sum: LongValue\n}\n\ninput TimeOperators {\n eq: Time\n ne: Time\n lt: Time\n gt: Time\n lte: Time\n gte: Time\n in: [Time]\n nin: [Time]\n}\n\ntype PicklistValue implements FieldValue {\n value: Picklist\n displayValue: String\n label: String\n}\n\ntype RelatedListInfo @team(name: \"Lists Platform\") {\n childApiName: String!\n relatedListName: String!\n label: String!\n displayColumns: [ListColumn!]!\n orderedByInfo: [ListOrder!]!\n parentApiName: String!\n fieldApiName: String!\n}\n\ninput StringOperators {\n eq: String\n ne: String\n like: String\n lt: String\n gt: String\n lte: String\n gte: String\n in: [String]\n nin: [String]\n}\n\ntype UIAPI {\n query: RecordQuery!\n aggregate: RecordQueryAggregate!\n objectInfos(apiNames: [String!], locale: String, objectInfoInputs: [ObjectInfoInput!]): [ObjectInfo]\n relatedListByName(parentApiName: String!, relatedListName: String!): RelatedListInfo\n}\n\n\"Input for ObjectInfo and PickValues\"\ninput ObjectInfoInput {\n apiName: String!\n recordTypeIDs: [ID!]\n fieldNames: [String!]\n}\n\ninput MultiPicklistOperators {\n eq: MultiPicklist\n ne: MultiPicklist\n includes: [MultiPicklist]\n excludes: [MultiPicklist]\n}\n\ntype DateTimeAggregate implements FieldValue {\n value: DateTime\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n dayOnly: DateOnlyAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n hourInDay: DateFunctionAggregation\n max: DateTimeValue\n min: DateTimeValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\ntype EmailAggregate implements FieldValue {\n value: Email\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: EmailValue\n min: EmailValue\n}\n\ninput GroupByDateFunction {\n function: GroupByFunction\n}\n\ntype RichTextAreaValue implements FieldValue {\n value: RichTextArea\n displayValue: String\n label: String\n}\n\ninput DatePrimitiveOperators {\n eq: Date\n ne: Date\n lt: Date\n gt: Date\n lte: Date\n gte: Date\n in: [Date]\n nin: [Date]\n}\n\ntype TimeAggregate implements FieldValue {\n value: Time\n displayValue: String\n format: String\n hourInDay: DateFunctionAggregation\n}\n\ninput DistanceInput {\n latitude: Latitude!\n longitude: Longitude!\n}\n\nunion PolymorphicParentRelationship @generic = RecordRepresentation\n\nenum AggregateOrderByNumberFunction {\n AVG\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n SUM\n}\n\ntype LongTextAreaValue implements FieldValue {\n value: LongTextArea\n displayValue: String\n label: String\n}\n\ninput OrderByClause {\n order: ResultOrder\n nulls: NullOrder\n}\n\ntype SObject__Field {\n name: String!\n value: String\n}\n\ntype RecordAggregateConnection @generic {\n edges: [RecordAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype LongitudeAggregate implements FieldValue {\n value: Longitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LongitudeValue\n min: LongitudeValue\n sum: DoubleValue\n}\n\ntype DateValue implements FieldValue {\n value: Date\n displayValue: String\n format: String\n}\n\ninput URLOperators {\n eq: Url\n ne: Url\n like: Url\n lt: Url\n gt: Url\n lte: Url\n gte: Url\n in: [Url]\n nin: [Url]\n}\n\ninput LongOperators {\n eq: Long\n ne: Long\n lt: Long\n gt: Long\n lte: Long\n gte: Long\n in: [Long]\n nin: [Long]\n}\n\nenum DataType {\n STRING\n TEXTAREA\n PHONE\n EMAIL\n URL\n ENCRYPTEDSTRING\n BOOLEAN\n CURRENCY\n INT\n LONG\n DOUBLE\n PERCENT\n DATETIME\n TIME\n DATE\n REFERENCE\n PICKLIST\n MULTIPICKLIST\n ADDRESS\n LOCATION\n BASE64\n COMPLEXVALUE\n COMBOBOX\n JSON\n JUNCTIONIDLIST\n ANYTYPE\n}\n\ntype DoubleAggregate implements FieldValue {\n value: Double\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: DoubleValue\n min: DoubleValue\n sum: DoubleValue\n}\n\ninput DateOperators {\n eq: DateInput\n ne: DateInput\n lt: DateInput\n gt: DateInput\n lte: DateInput\n gte: DateInput\n in: [DateInput]\n nin: [DateInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n}\n\ninput GeolocationInput {\n latitude: Latitude!\n longitude: Longitude!\n radius: Float!\n unit: Unit!\n}\n\ninput JoinInput {\n Record: RecordFilter @fieldCategory\n ApiName: String\n}\n\ntype RecordUpdatePayload @generic {\n Record: RecordRepresentation\n success: Boolean @deprecated\n}\n\ninput PercentOperators {\n eq: Percent\n ne: Percent\n lt: Percent\n gt: Percent\n lte: Percent\n gte: Percent\n in: [Percent]\n nin: [Percent]\n}\n\ntype DoubleValue implements FieldValue {\n value: Double\n displayValue: String\n format: String\n}\n\ntype IDAggregate implements FieldValue {\n value: ID\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: IDValue\n min: IDValue\n}\n\ninput RecordCreateInput @generic {\n record: RecordCreateRepresentation! @fieldCategory\n}\n\ninput AggregateOrderByStringClause {\n function: AggregateOrderByStringFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\n\"The return value for the mutation to delete a Record\"\ntype RecordDeletePayload {\n \"The ID of the deleted Record\"\n Id: ID\n}\n\nenum DateLiteral {\n YESTERDAY\n TODAY\n TOMORROW\n LAST_WEEK\n THIS_WEEK\n NEXT_WEEK\n LAST_MONTH\n THIS_MONTH\n NEXT_MONTH\n LAST_90_DAYS\n NEXT_90_DAYS\n LAST_QUARTER\n THIS_QUARTER\n NEXT_QUARTER\n LAST_FISCAL_QUARTER\n THIS_FISCAL_QUARTER\n NEXT_FISCAL_QUARTER\n LAST_YEAR\n THIS_YEAR\n NEXT_YEAR\n LAST_FISCAL_YEAR\n THIS_FISCAL_YEAR\n NEXT_FISCAL_YEAR\n}\n\ntype RecordRepresentation implements Record @generic {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n SetupUserSpecialField: BooleanValue @fieldCategory\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n AnyType: AnyType @fieldCategory\n parentRelationship: RecordRepresentation @fieldCategory\n polymorphicParentRelationship: PolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, upperBound: Int): RecordConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n}\n\ninput OrderByGeolocationClause {\n distance: DistanceInput\n order: ResultOrder\n nulls: NullOrder\n}\n\ntype TextAreaAggregate implements FieldValue {\n value: TextArea\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: TextAreaValue\n min: TextAreaValue\n}\n\nenum GroupByType {\n GROUP_BY\n ROLLUP\n CUBE\n}\n\nenum ResultsOrder {\n ASC\n DESC\n}\n\ntype PicklistAggregate implements FieldValue {\n value: Picklist\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: PicklistValue\n min: PicklistValue\n}\n\ninput RecordUpdateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\ntype DateTimeValue implements FieldValue {\n value: DateTime\n displayValue: String\n format: String\n}\n\n\"Input to the mutation to delete a Record\"\ninput RecordDeleteInput {\n \"The ID of the Record to delete\"\n Id: IdOrRef!\n}\n\ntype ListOrder @team(name: \"Lists Platform\") {\n fieldApiName: String!\n sortDirection: ResultOrder\n}\n\nenum AggregateOrderByStringFunction {\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n}\n\ntype LongValue implements FieldValue {\n value: Long\n displayValue: String\n format: String\n}\n\ntype DependentField {\n controllingField: String!\n dependentFields: [String]!\n}\n\ntype PercentValue implements FieldValue {\n value: Percent\n displayValue: String\n format: String\n}\n\ninput NoFunctionAggregateOrderByClause {\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ntype RecordConnection @generic {\n edges: [RecordEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype FilteredLookupInfo {\n controllingFields: [String]!\n dependent: Boolean!\n optionalFilter: Boolean!\n}\n\ninput PhoneNumberOperators {\n eq: PhoneNumber\n ne: PhoneNumber\n like: PhoneNumber\n lt: PhoneNumber\n gt: PhoneNumber\n lte: PhoneNumber\n gte: PhoneNumber\n in: [PhoneNumber]\n nin: [PhoneNumber]\n}\n\ntype ObjectInfo {\n ApiName: String!\n childRelationships: [ChildRelationship]!\n createable: Boolean!\n custom: Boolean!\n defaultRecordTypeId: ID\n deletable: Boolean!\n dependentFields: [DependentField]!\n feedEnabled: Boolean!\n fields: [Field]!\n keyPrefix: String\n label: String\n labelPlural: String\n layoutable: Boolean!\n mruEnabled: Boolean!\n nameFields: [String]!\n queryable: Boolean!\n recordTypeInfos: [RecordTypeInfo]!\n searchable: Boolean!\n themeInfo: ThemeInfo\n updateable: Boolean!\n locale: String\n}\n\ninput LongitudeOperators {\n eq: Longitude\n ne: Longitude\n lt: Longitude\n gt: Longitude\n lte: Longitude\n gte: Longitude\n in: [Longitude]\n nin: [Longitude]\n}\n\ninterface Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype StandardField implements Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype PicklistField implements Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n picklistValuesByRecordTypeIDs: [PicklistValueByRecordTypeIDs]\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype PicklistValueByRecordTypeIDs {\n recordTypeID: String!\n controllerValues: [ControllerValues!]\n picklistValues: [PicklistValues!]\n defaultValue: PicklistValues\n}\n\ntype ControllerValues {\n value: String\n index: Int\n}\n\ntype PicklistValues {\n value: String\n label: String\n validFor: [Int]\n attributes: PicklistAttributes\n}\n\ntype PicklistAttributes {\n picklistAtrributesValueType: String\n connectDisplayName: String\n internalName: String\n}\n\ninput DateTimeFunctionInput {\n value: DatePrimitiveOperators\n convertTimezoneValue: DatePrimitiveOperators\n}\n\ntype Base64Value implements FieldValue {\n value: Base64\n displayValue: String\n}\n\ntype CompoundField @generic {\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n}\n\ninput RecordUpdateInput @generic {\n Id: IdOrRef!\n record: RecordUpdateRepresentation! @fieldCategory\n}\n\ninput DateTimeInput {\n value: DateTime\n literal: DateLiteral\n range: DateRange\n}\n\ntype ChildRelationship {\n childObjectApiName: String!\n fieldName: String\n junctionIdListNames: [String]!\n junctionReferenceTo: [String]!\n relationshipName: String\n objectInfo: ObjectInfo\n}\n\ntype RecordResult @generic {\n aggregate: RecordAggregate\n}\n\ntype PageInfo {\n hasNextPage: Boolean!\n hasPreviousPage: Boolean!\n startCursor: String\n endCursor: String\n}\n\ntype CurrencyValue implements FieldValue {\n value: Currency\n displayValue: String\n format: String\n convertCurrency: Currency\n}\n\ntype DateFunctionAggregation {\n value: Long\n format: String\n}\n\ninput PolymorphicParentRelationshipRecordOrderBy @generic {\n RecordOrderBy: RecordOrderBy @fieldCategory\n}\n\ntype RecordCreatePayload @generic {\n Record: RecordRepresentation\n}\n\ninput PolymorphicParentRelationshipGroupBy @generic {\n RecordGroupBy: RecordGroupBy @fieldCategory\n}\n\ntype BooleanValue implements FieldValue {\n value: Boolean\n displayValue: String\n}\n\ntype StringValue implements FieldValue {\n value: String\n displayValue: String\n label: String\n}\n\ninput IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: JoinInput\n ninq: JoinInput\n}\n\ntype PhoneNumberAggregate implements FieldValue {\n value: PhoneNumber\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: PhoneNumberValue\n min: PhoneNumberValue\n}\n\ntype CurrencyAggregate implements FieldValue {\n value: Currency\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: CurrencyValue\n min: CurrencyValue\n sum: CurrencyValue\n}\n\ninput BooleanOperators {\n eq: Boolean\n ne: Boolean\n}\n\ntype MultiPicklistValue implements FieldValue {\n value: MultiPicklist\n displayValue: String\n label: String\n}\n\ntype ListColumn @team(name: \"Lists Platform\") {\n fieldApiName: String!\n label: String!\n lookupId: String\n sortable: Boolean\n}\n\ntype LatitudeAggregate implements FieldValue {\n value: Latitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LatitudeValue\n min: LatitudeValue\n sum: DoubleValue\n}\n\ninput CurrencyOperators {\n eq: Currency\n ne: Currency\n lt: Currency\n gt: Currency\n lte: Currency\n gte: Currency\n in: [Currency]\n nin: [Currency]\n}\n\ntype LatitudeValue implements FieldValue {\n value: Latitude\n displayValue: String\n}\n\ninput GroupByClause {\n group: Boolean\n}\n\ntype RecordEdge @generic {\n node: RecordRepresentation\n cursor: String!\n}\n\nenum NullOrder {\n FIRST\n LAST\n}\n\ntype PhoneNumberValue implements FieldValue {\n value: PhoneNumber\n displayValue: String\n}\n\n# RecordScope is an empty enum\n# enum RecordScope @generic {\n# }\n\ninput TextAreaOperators {\n eq: TextArea\n ne: TextArea\n like: TextArea\n lt: TextArea\n gt: TextArea\n lte: TextArea\n gte: TextArea\n in: [TextArea]\n nin: [TextArea]\n}\n\ntype TextAreaValue implements FieldValue {\n value: TextArea\n displayValue: String\n label: String\n}\n\ntype RecordAggregateEdge @generic {\n node: RecordResult\n cursor: String!\n}\n\ntype ThemeInfo {\n color: String\n iconUrl: String\n}\n\ntype UrlAggregate implements FieldValue {\n value: Url\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: UrlValue\n min: UrlValue\n}\n\ntype IDValue implements FieldValue {\n value: ID\n displayValue: String\n}\n\nenum Unit {\n MI\n KM\n}\n\ninput PolymorphicParentRelationshipOrderBy @generic {\n RecordAggregateOrderBy: RecordAggregateOrderBy @fieldCategory\n}\n\nenum NullsOrder {\n FIRST\n LAST\n}\n\nenum ResultOrder {\n ASC\n DESC\n}\n\ninput RecordOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput PicklistOperators {\n eq: Picklist\n ne: Picklist\n in: [Picklist]\n nin: [Picklist]\n like: Picklist\n lt: Picklist\n gt: Picklist\n lte: Picklist\n gte: Picklist\n}\n\ninput RecordFilter @generic {\n and: [RecordFilter]\n or: [RecordFilter]\n not: RecordFilter\n parentRelationshipRecordFilter: RecordFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: PolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n IdOperator: IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ntype TimeValue implements FieldValue {\n value: Time\n displayValue: String\n format: String\n}\n\ninput GeolocationOperators {\n lt: GeolocationInput\n gt: GeolocationInput\n}\n\ninput LatitudeOperators {\n eq: Latitude\n ne: Latitude\n lt: Latitude\n gt: Latitude\n lte: Latitude\n gte: Latitude\n in: [Latitude]\n nin: [Latitude]\n}\n\ntype IntAggregate implements FieldValue {\n value: Int\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: IntValue\n min: IntValue\n sum: LongValue\n}\n\ntype RecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: RecordAggregate @fieldCategory\n polymorphicParentRelationship: PolymorphicAggregateParentRelationship @fieldCategory\n}\n\nenum SObject__FieldType {\n ALL\n STANDARD\n CUSTOM\n}\n\ntype JSONValue implements FieldValue {\n value: JSON\n displayValue: String\n}\n\ntype EmailValue implements FieldValue {\n value: Email\n displayValue: String\n}\n\ninput DateFunctionInput {\n value: LongOperators\n convertTimezoneValue: LongOperators\n}\n\n# Mutations are not supported by Luvio.\n# type Mutation {\n# uiapi(input: UIAPIMutationsInput): UIAPIMutations!\n# }\n\nunion PolymorphicAggregateParentRelationship @generic = RecordAggregate\n\ninput LongTextAreaOperators {\n eq: LongTextArea\n ne: LongTextArea\n like: LongTextArea\n lt: LongTextArea\n gt: LongTextArea\n lte: LongTextArea\n gte: LongTextArea\n in: [LongTextArea]\n nin: [LongTextArea]\n}\n\ninput DateTimeOperators {\n eq: DateTimeInput\n ne: DateTimeInput\n lt: DateTimeInput\n gt: DateTimeInput\n lte: DateTimeInput\n gte: DateTimeInput\n in: [DateTimeInput]\n nin: [DateTimeInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n DAY_ONLY: DateTimeFunctionInput\n HOUR_IN_DAY: DateFunctionInput\n}\n\ntype BooleanAggregate implements FieldValue {\n value: Boolean\n displayValue: String\n grouping: IntValue\n}\n\ntype RecordQueryAggregate {\n # scope should be RecordScope, but it is an empty enum\n recordQueryAggregate(first: Int, after: String, where: RecordFilter, orderBy: RecordAggregateOrderBy, scope: String, groupBy: RecordGroupBy, upperBound: Int): RecordAggregateConnection @fieldCategory\n}\n\ninput RecordCreateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\nenum FieldExtraTypeInfo {\n IMAGE_URL\n EXTERNAL_LOOKUP\n INDIRECT_LOOKUP\n PERSONNAME\n SWITCHABLE_PERSONNAME\n PLAINTEXTAREA\n RICHTEXTAREA\n}\n\ntype RateLimit {\n cost: Long\n limit: Long\n remaining: Long\n resetAt: DateTime\n}\n\ninput DateRange {\n last_n_days: Int\n next_n_days: Int\n last_n_weeks: Int\n next_n_weeks: Int\n last_n_months: Int\n next_n_months: Int\n last_n_quarters: Int\n next_n_quarters: Int\n last_n_fiscal_quarters: Int\n next_n_fiscal_quarters: Int\n last_n_years: Int\n next_n_years: Int\n last_n_fiscal_years: Int\n next_n_fiscal_years: Int\n n_days_ago: Int\n n_weeks_ago: Int\n n_months_ago: Int\n n_quarters_ago: Int\n n_years_ago: Int\n n_fiscal_quarters_ago: Int\n n_fiscal_years_ago: Int\n}\n\ntype UIAPIMutations {\n recordCreate(input: RecordCreateInput!): RecordCreatePayload @fieldCategory\n recordDelete(input: RecordDeleteInput!): RecordDeletePayload @fieldCategory\n recordUpdate(input: RecordUpdateInput!): RecordUpdatePayload @fieldCategory\n}\n\ninput IntegerOperators {\n eq: Int\n ne: Int\n lt: Int\n gt: Int\n lte: Int\n gte: Int\n in: [Int]\n nin: [Int]\n}\n\ntype EncryptedStringValue implements FieldValue {\n value: EncryptedString\n displayValue: String\n}\n\ninterface Record {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n}\n\ninput PolymorphicParentRelationshipRecordFilter @generic {\n RecordFilter: RecordFilter @fieldCategory\n}\n\n\"\"\"\nA type that can contain any of the following types: Boolean, Date, DateTime, Double, String.\nFormat and Label are not supported by AnyType and displayValue is an unformatted string representation of the value.\n\"\"\"\nunion AnyType = BooleanValue | DateValue | DateTimeValue | DoubleValue | StringValue\n\ninput AggregateOrderByNumberClause {\n function: AggregateOrderByNumberFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ninput DateInput {\n value: Date\n literal: DateLiteral\n range: DateRange\n}\n\ninput RecordGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: RecordGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: PolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\ntype RecordQuery {\n # scope should be RecordScope, but it is an empty enum\n recordQuery(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, scope: String, upperBound: Int, updateMRU: Boolean): RecordConnection @fieldCategory\n}\n\ninput RecordAggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipOrderBy @fieldCategory\n}\n\ninput IgnoreRule {\n rule: String!\n teamName: String!\n justification: String!\n}\n\ndirective @generic on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT\ndirective @fieldCategory on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE\ndirective @category(name: String!) on FIELD\n\"Specifies the team name for a type\"\ndirective @team(name: String!) on OBJECT | INPUT_OBJECT | INTERFACE | ENUM | UNION | SCALAR\n\"Specifies the validation rules to ignore for this element.\"\ndirective @ignoreRule(rules: [IgnoreRule!]!) on OBJECT\n | INPUT_OBJECT\n | INTERFACE\n | ENUM\n | UNION\n | SCALAR\n | FIELD_DEFINITION\n | INPUT_FIELD_DEFINITION\n | ARGUMENT_DEFINITION\n | ENUM_VALUE\ndirective @optional on FIELD\n\ntype __Type {\n kind: __TypeKind!\n name: String\n description: String\n fields(includeDeprecated: Boolean = false): [__Field!]\n interfaces: [__Type!]\n possibleTypes: [__Type!]\n enumValues(includeDeprecated: Boolean = false): [__EnumValue!]\n inputFields: [__InputValue!]\n ofType: __Type\n}";
|
|
85787
|
+
var uiapiSchemaString = "# Auto-generated merged GraphQL schema\n# Generated at: 2025-10-14T15:00:19.876399281Z\n# Source files: ui-services-private/java/resources/graphql-schemas/analytics.graphqls, ui-services-private/java/resources/graphql-schemas/setup-listview.graphqls, ui-services-private/java/resources/graphql-schemas/setup.graphqls, ui-services-private/java/resources/graphql-schemas/uiapi.graphqls\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/analytics.graphqls\n# ============================================================\ninput Analytics__AnalyticsFilter @team(name: \"TUA-Admin-Home-Search\") {\n Id: Setup__IdOperators\n MasterLabel: StringOperators\n DeveloperName: StringOperators\n NamespacePrefix: StringOperators\n AssetApiName: StringOperators\n DataConnectorType: StringOperators\n CreatedById: Setup__IdOperators\n LastModifiedById: Setup__IdOperators\n SemanticMetricId: Setup__IdOperators\n SemanticModelId: Setup__IdOperators\n LastModifiedDate: DateTimeOperators\n CreatedDate: DateTimeOperators\n AssetUsageType: PicklistOperators\n ActivePromotionRequestId: Setup__IdOperators\n SemanticModel: Analytics__SemanticModelFilter\n and: [Analytics__AnalyticsFilter]\n or: [Analytics__AnalyticsFilter]\n not: Analytics__AnalyticsFilter\n}\n\ninput Analytics__SemanticModelFilter @team(name: \"TUA-Admin-Home-Search\") {\n DeveloperName: StringOperators\n MasterLabel: StringOperators\n}\n\nenum Analytics__SortEnumType @team(name: \"TUA-Admin-Home-Search\") {\n ASC\n DESC\n}\n\ntype Analytics__SemanticSubMetricDefinitionConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__SemanticSubMetricDefinitionEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticSubMetricDefinitionEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__SemanticSubMetricDefinitionRepresentation\n cursor: String!\n}\n\ntype Analytics__DataspaceRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n MasterLabel: String\n DeveloperName: String\n}\n\ninterface Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n ReusedAssetStatus: String\n}\n\ntype Analytics__AnalyticsBrowse @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__AnalyticsEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\n# Empty enum is invalid GraphQL\n# enum AnalyticsAssetType @team(name: \"TUA-Admin-Home-Search\") @generic {\n# }\n\ntype Analytics__AnalyticsWorkspaceAssetConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__AnalyticsWorkspaceAssetEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticDefinition implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n SemanticModelId: IDValue\n SemanticModel: Analytics__SemanticModel\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n SubMetrics(first: Int, after: String): Analytics__SemanticSubMetricDefinitionConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n ReusedAssetStatus: String\n}\n\ntype Analytics__DominoTemplate implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA Intel MarketPlace\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n TemplateStatus: StringValue\n TemplateType: StringValue\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n ReusedAssetStatus: String\n}\n\ntype Analytics__AnalyticsEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__AnalyticsRepresentationInterface\n cursor: String!\n}\n\ntype Analytics__AnalyticsWorkspace @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n}\n\ntype Analytics__SemanticSubMetricDefinitionRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n SemanticMetricId: IDValue\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n}\n\ntype Analytics__AnalyticsWorkspaceAssetEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__AnalyticsWorkspaceAsset\n cursor: String!\n}\n\ninput Analytics__OrderByInput @team(name: \"TUA-Admin-Home-Search\") {\n order: Analytics__SortEnumType\n}\n\ntype Analytics__AnalyticsRepresentation implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n NamespacePrefix: StringValue\n RecordOperations: [String]\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n AssetApiName: String\n DloActiveStatus: Boolean\n ReusedAssetStatus: String\n}\n\ntype Analytics__SemanticModelRelatedModelConnection @team(name: \"TUA-Admin-Home-Search\") {\n edges: [Analytics__SemanticModelRelatedModelEdge]\n totalCount: Int!\n pageResultCount: Int!\n pageInfo: PageInfo!\n}\n\ntype Analytics__SemanticModelRelatedModelRepresentation @team(name: \"TUA-Admin-Home-Search\") {\n Id: ID!\n ApiName: String!\n SemanticModelId: IDValue\n RelatedSemanticModel: Analytics__SemanticModel\n}\n\ntype Analytics__SemanticModelRelatedModelEdge @team(name: \"TUA-Admin-Home-Search\") {\n node: Analytics__SemanticModelRelatedModelRepresentation\n cursor: String!\n}\n\ntype Analytics__SemanticModel implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n RelatedModel(first: Int, after: String): Analytics__SemanticModelRelatedModelConnection\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n AssetApiName: String\n DloActiveStatus: Boolean\n ReusedAssetStatus: String\n}\n\n# assetTypes: AnalyticsAssetType - empty enum is invalid GraphQL so replace with String\ntype Analytics__Analytics @team(name: \"TUA-Admin-Home-Search\") {\n browse(where: Analytics__AnalyticsFilter, assetTypes: [String], orderBy: Analytics__AnalyticsOrderBy, first: Int, orgId: ID, after: String): Analytics__AnalyticsBrowse! @fieldCategory\n}\n\ntype Analytics__AnalyticsWorkspaceAsset @team(name: \"TUA-Admin-Home-Search\") {\n AnalyticsWorkspace: Analytics__AnalyticsWorkspace\n AssetUsageType: PicklistValue\n ActivePromotionRequestId: IDValue\n MetadataSourceType: PicklistValue\n}\n\ninput Analytics__AnalyticsOrderBy @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: Analytics__OrderByInput\n Id: Analytics__OrderByInput\n ApiName: Analytics__OrderByInput\n LastModifiedById: Analytics__OrderByInput\n CreatedById: Analytics__OrderByInput\n LastModifiedDate: Analytics__OrderByInput\n CreatedDate: Analytics__OrderByInput\n}\n\ntype Analytics__MktDataConnector implements Analytics__AnalyticsRepresentationInterface @team(name: \"TUA-Admin-Home-Search\") {\n MasterLabel: StringValue\n DeveloperName: StringValue\n Description: StringValue\n CreatedById: IDValue\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n CreatedDate: DateTimeValue\n Id: ID!\n ApiName: String!\n AnalyticsWorkspaces(first: Int, after: String): Analytics__AnalyticsWorkspaceAssetConnection\n NamespacePrefix: StringValue\n Dataspaces: [Analytics__DataspaceRepresentation]\n RecordOperations: [String]\n DataConnectorType: StringValue\n AssetApiName: String\n DloActiveStatus: Boolean\n ReusedAssetStatus: String\n}\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/setup-listview.graphqls\n# ============================================================\ninput Setup__ListOrderInput {\n apiName: String!\n order: ResultsOrder\n}\n\ntype Setup__ListOrder {\n apiName: String!\n order: ResultsOrder\n label: String\n}\n\ntype Setup__ListViewRowConnection {\n edges: [Setup__ListViewRowEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype Setup__ListView {\n listViewType: String!\n label: String\n displayColumns: [Setup__ListColumn!]!\n filters: [Setup__ListFilter!]\n filterLogic: String\n orderedByInfo: [Setup__ListOrder!]!\n searchable: Boolean!\n rows(first: Int, after: String, upperBound: Int, orderBy: Setup__ListOrderInput, searchTerm: String): Setup__ListViewRowConnection\n}\n\nenum Setup__ListFilterOperator {\n EQUALS\n NOT_EQUAL\n LESS_THAN\n GREATER_THAN\n LESS_OR_EQUAL\n GREATER_OR_EQUAL\n CONTAINS\n NOT_CONTAIN\n STARTS_WITH\n INCLUDES\n EXCLUDES\n WITHIN\n}\n\ntype Setup__ListFilter {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n label: String\n}\n\ntype Setup__ListColumn {\n apiName: String!\n label: String!\n type: DataType!\n displayable: Boolean!\n filterable: Boolean!\n defaultOperator: Setup__ListFilterOperator\n allowedOperators: [Setup__ListFilterOperator!]\n sortable: Boolean\n navigable: Boolean\n}\n\ntype Setup__ListScalarField {\n apiName: String!\n value: String\n dataType: DataType\n displayValue: String\n format: String\n label: String\n lookupRecordId: String\n lookupObjectApiName: String\n}\n\ntype Setup__ListViewRow {\n id: String\n columns(apiNames: [String!]): [Setup__ListScalarField]!\n}\n\ntype Setup__ListViewRowEdge {\n cursor: String!\n node: Setup__ListViewRow\n}\n\ntype Setup__ListViewObjectInfo {\n columns(apiNames: [String!], displayable: Boolean, filterable: Boolean) : [Setup__ListColumn!]!\n}\n\ninput Setup__ListFilterInput {\n apiName: String!\n operator: Setup__ListFilterOperator!\n operand: [String!]!\n}\n\nextend type Setup__Setup {\n ListView(listViewType: String!, label: String, displayColumns: [String!], filters: [Setup__ListFilterInput!], filterLogic: String): Setup__ListView!\n ListViewObjectInfo(listViewType: String!): Setup__ListViewObjectInfo!\n}\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/setup.graphqls\n# ============================================================\n# scope should be RecordScope, but it is an empty enum\ntype Setup__SetupQueryAggregate {\n recordQueryAggregate(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupAggregateOrderBy, scope: String, groupBy: Setup__SetupGroupBy, upperBound: Int, includeDeleted: Boolean): Setup__SetupAggregateConnection @fieldCategory\n}\n\nunion Setup__SetupPolymorphicParentRelationship @generic = Setup__EntityRepresentation\n\ninput Setup__SetupPolymorphicParentRelationshipRecordOrderBy @generic {\n Setup__SetupOrderBy: Setup__SetupOrderBy @fieldCategory\n}\n\ninput Setup__IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: Setup__JoinInput\n ninq: Setup__JoinInput\n}\n\ninput Setup__JoinInput {\n Record: Setup__SetupFilter @fieldCategory\n ApiName: String\n}\n\ntype Setup__SetupAggregateConnection @generic {\n edges: [Setup__SetupAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ninput Setup__SetupAggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipOrderBy @fieldCategory\n}\n\ntype Setup__SetupConnection @generic {\n edges: [Setup__SetupEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype Setup__SetupAggregateEdge @generic {\n node: Setup__SetupRecordResult\n cursor: String!\n}\n\ninput Setup__SetupPolymorphicParentRelationshipRecordFilter @generic {\n Setup__SetupFilter: Setup__SetupFilter @fieldCategory\n}\n\ntype Setup__SetupRecordResult @generic {\n aggregate: Setup__SetupRecordAggregate\n}\n\ntype Setup__SetupRecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: Setup__SetupRecordAggregate @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicAggregateParentRelationship @fieldCategory\n}\n\ninput Setup__SetupOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: Setup__SetupOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput Setup__SetupPolymorphicParentRelationshipOrderBy @generic {\n Setup__SetupAggregateOrderBy: Setup__SetupAggregateOrderBy @fieldCategory\n}\n\ntype Setup__SetupEdge @generic {\n node: Setup__EntityRepresentation\n cursor: String!\n}\n\n # scope should be RecordScope, but it is an empty enum\ntype Setup__SetupQuery {\n recordQuery(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, scope: String, upperBound: Int, includeDeleted: Boolean, updateMRU: Boolean): Setup__SetupConnection @fieldCategory\n}\n\ntype Setup__EntityRepresentation @generic {\n Id: ID!\n ApiName: String!\n Entity__fields(type: SObject__FieldType): [SObject__Field]! @ignoreRule(rules:[{ rule: \"FieldCamelOrPascalCaseRule\" teamName: \"UI Experience API\" justification: \"SObject__ prefix added to prevent name collisions.\" }])\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n AnyType: AnyType @fieldCategory\n parentRelationship: Setup__EntityRepresentation @fieldCategory\n polymorphicParentRelationship: Setup__SetupPolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: Setup__SetupFilter, orderBy: Setup__SetupOrderBy, upperBound: Int): Setup__SetupConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n}\n\ninput Setup__SetupFilter @generic {\n and: [Setup__SetupFilter]\n or: [Setup__SetupFilter]\n not: Setup__SetupFilter\n parentRelationshipRecordFilter: Setup__SetupFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: Setup__SetupPolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n Setup__IdOperator: Setup__IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ninput Setup__SetupGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: Setup__SetupGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: Setup__SetupPolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\nunion Setup__SetupPolymorphicAggregateParentRelationship @generic = Setup__SetupRecordAggregate\n\ntype Setup__Setup {\n query: Setup__SetupQuery!\n aggregate: Setup__SetupQueryAggregate!\n objectInfos(apiNames: [String!], locale: String, objectInfoInputs: [ObjectInfoInput!]): [ObjectInfo]\n}\n\ninput Setup__SetupPolymorphicParentRelationshipGroupBy @generic {\n Setup__SetupGroupBy: Setup__SetupGroupBy @fieldCategory\n}\n\n\n# ============================================================\n# Source: ui-services-private/java/resources/graphql-schemas/uiapi.graphqls\n# ============================================================\nscalar BigDecimal\nscalar Byte\nscalar Char\nscalar BigInteger\nscalar Short\nscalar String\nscalar Currency\nscalar Longitude\nscalar Float\nscalar PhoneNumber\nscalar Email\nscalar TextArea\nscalar Latitude\nscalar RichTextArea\nscalar EncryptedString\nscalar Long\nscalar JSON\nscalar Time\nscalar Percent\nscalar LongTextArea\nscalar DateTime\nscalar ID\nscalar Boolean\nscalar MultiPicklist\nscalar Base64\nscalar Url\nscalar Picklist\nscalar Double\nscalar Int\nscalar IdOrRef\nscalar Date\n\ntype PercentAggregate implements FieldValue {\n value: Percent\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: PercentValue\n min: PercentValue\n sum: PercentValue\n}\n\ntype StringAggregate implements FieldValue {\n value: String\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: StringValue\n min: StringValue\n}\n\ntype Query {\n uiapi: UIAPI!\n setup: Setup__Setup! @fieldCategory\n analytics: Analytics__Analytics! @fieldCategory\n}\n\ninput EmailOperators {\n eq: Email\n ne: Email\n like: Email\n lt: Email\n gt: Email\n lte: Email\n gte: Email\n in: [Email]\n nin: [Email]\n}\n\ninput DoubleOperators {\n eq: Double\n ne: Double\n lt: Double\n gt: Double\n lte: Double\n gte: Double\n in: [Double]\n nin: [Double]\n}\n\ntype DateOnlyAggregation {\n value: Date\n format: String\n}\n\ntype DateAggregate implements FieldValue {\n value: Date\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n grouping: IntValue\n max: DateValue\n min: DateValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\nenum GroupByFunction {\n DAY_IN_WEEK\n DAY_IN_MONTH\n DAY_IN_YEAR\n WEEK_IN_MONTH\n WEEK_IN_YEAR\n CALENDAR_MONTH\n CALENDAR_QUARTER\n CALENDAR_YEAR\n FISCAL_MONTH\n FISCAL_QUARTER\n FISCAL_YEAR\n DAY_ONLY\n HOUR_IN_DAY\n}\n\ntype RecordTypeInfo {\n available: Boolean!\n defaultRecordTypeMapping: Boolean!\n master: Boolean!\n name: String\n recordTypeId: ID\n}\n\ninput UIAPIMutationsInput {\n \"Determines whether or not all the operations should be rolled back in the event one or more operations fail.\"\n allOrNone: Boolean = true\n}\n\ntype ReferenceToInfo {\n ApiName: String!\n nameFields: [String]!\n objectInfo: ObjectInfo\n}\n\ninterface FieldValue {\n displayValue: String\n}\n\ntype LongitudeValue implements FieldValue {\n value: Longitude\n displayValue: String\n}\n\ntype IntValue implements FieldValue {\n value: Int\n displayValue: String\n format: String\n}\n\ntype UrlValue implements FieldValue {\n value: Url\n displayValue: String\n}\n\ntype LongAggregate implements FieldValue {\n value: Long\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: LongValue\n min: LongValue\n sum: LongValue\n}\n\ninput TimeOperators {\n eq: Time\n ne: Time\n lt: Time\n gt: Time\n lte: Time\n gte: Time\n in: [Time]\n nin: [Time]\n}\n\ntype PicklistValue implements FieldValue {\n value: Picklist\n displayValue: String\n label: String\n}\n\ntype RelatedListInfo @team(name: \"Lists Platform\") {\n childApiName: String!\n relatedListName: String!\n label: String!\n displayColumns: [ListColumn!]!\n orderedByInfo: [ListOrder!]!\n parentApiName: String!\n fieldApiName: String!\n}\n\ninput StringOperators {\n eq: String\n ne: String\n like: String\n lt: String\n gt: String\n lte: String\n gte: String\n in: [String]\n nin: [String]\n}\n\ntype UIAPI {\n query: RecordQuery!\n aggregate: RecordQueryAggregate!\n objectInfos(apiNames: [String!], locale: String, objectInfoInputs: [ObjectInfoInput!]): [ObjectInfo]\n relatedListByName(parentApiName: String!, relatedListName: String!): RelatedListInfo\n}\n\n\"Input for ObjectInfo and PickValues\"\ninput ObjectInfoInput {\n apiName: String!\n recordTypeIDs: [ID!]\n fieldNames: [String!]\n}\n\ninput MultiPicklistOperators {\n eq: MultiPicklist\n ne: MultiPicklist\n includes: [MultiPicklist]\n excludes: [MultiPicklist]\n}\n\ntype DateTimeAggregate implements FieldValue {\n value: DateTime\n displayValue: String\n calendarMonth: DateFunctionAggregation\n calendarQuarter: DateFunctionAggregation\n calendarYear: DateFunctionAggregation\n count: LongValue\n countDistinct: LongValue\n dayInMonth: DateFunctionAggregation\n dayInWeek: DateFunctionAggregation\n dayInYear: DateFunctionAggregation\n dayOnly: DateOnlyAggregation\n fiscalMonth: DateFunctionAggregation\n fiscalQuarter: DateFunctionAggregation\n fiscalYear: DateFunctionAggregation\n format: String\n hourInDay: DateFunctionAggregation\n max: DateTimeValue\n min: DateTimeValue\n weekInMonth: DateFunctionAggregation\n weekInYear: DateFunctionAggregation\n}\n\ntype EmailAggregate implements FieldValue {\n value: Email\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: EmailValue\n min: EmailValue\n}\n\ninput GroupByDateFunction {\n function: GroupByFunction\n}\n\ntype RichTextAreaValue implements FieldValue {\n value: RichTextArea\n displayValue: String\n label: String\n}\n\ninput DatePrimitiveOperators {\n eq: Date\n ne: Date\n lt: Date\n gt: Date\n lte: Date\n gte: Date\n in: [Date]\n nin: [Date]\n}\n\ntype TimeAggregate implements FieldValue {\n value: Time\n displayValue: String\n format: String\n hourInDay: DateFunctionAggregation\n}\n\ninput DistanceInput {\n latitude: Latitude!\n longitude: Longitude!\n}\n\nunion PolymorphicParentRelationship @generic = RecordRepresentation\n\nenum AggregateOrderByNumberFunction {\n AVG\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n SUM\n}\n\ntype LongTextAreaValue implements FieldValue {\n value: LongTextArea\n displayValue: String\n label: String\n}\n\ninput OrderByClause {\n order: ResultOrder\n nulls: NullOrder\n}\n\ntype SObject__Field {\n name: String!\n value: String\n}\n\ntype RecordAggregateConnection @generic {\n edges: [RecordAggregateEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n}\n\ntype LongitudeAggregate implements FieldValue {\n value: Longitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LongitudeValue\n min: LongitudeValue\n sum: DoubleValue\n}\n\ntype DateValue implements FieldValue {\n value: Date\n displayValue: String\n format: String\n}\n\ninput URLOperators {\n eq: Url\n ne: Url\n like: Url\n lt: Url\n gt: Url\n lte: Url\n gte: Url\n in: [Url]\n nin: [Url]\n}\n\ninput LongOperators {\n eq: Long\n ne: Long\n lt: Long\n gt: Long\n lte: Long\n gte: Long\n in: [Long]\n nin: [Long]\n}\n\nenum DataType {\n STRING\n TEXTAREA\n PHONE\n EMAIL\n URL\n ENCRYPTEDSTRING\n BOOLEAN\n CURRENCY\n INT\n LONG\n DOUBLE\n PERCENT\n DATETIME\n TIME\n DATE\n REFERENCE\n PICKLIST\n MULTIPICKLIST\n ADDRESS\n LOCATION\n BASE64\n COMPLEXVALUE\n COMBOBOX\n JSON\n JUNCTIONIDLIST\n ANYTYPE\n}\n\ntype DoubleAggregate implements FieldValue {\n value: Double\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: DoubleValue\n min: DoubleValue\n sum: DoubleValue\n}\n\ninput DateOperators {\n eq: DateInput\n ne: DateInput\n lt: DateInput\n gt: DateInput\n lte: DateInput\n gte: DateInput\n in: [DateInput]\n nin: [DateInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n}\n\ninput GeolocationInput {\n latitude: Latitude!\n longitude: Longitude!\n radius: Float!\n unit: Unit!\n}\n\ninput JoinInput {\n Record: RecordFilter @fieldCategory\n ApiName: String\n}\n\ntype RecordUpdatePayload @generic {\n Record: RecordRepresentation\n success: Boolean @deprecated\n}\n\ninput PercentOperators {\n eq: Percent\n ne: Percent\n lt: Percent\n gt: Percent\n lte: Percent\n gte: Percent\n in: [Percent]\n nin: [Percent]\n}\n\ntype DoubleValue implements FieldValue {\n value: Double\n displayValue: String\n format: String\n}\n\ntype IDAggregate implements FieldValue {\n value: ID\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: IDValue\n min: IDValue\n}\n\ninput RecordCreateInput @generic {\n record: RecordCreateRepresentation! @fieldCategory\n}\n\ninput AggregateOrderByStringClause {\n function: AggregateOrderByStringFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\n\"The return value for the mutation to delete a Record\"\ntype RecordDeletePayload {\n \"The ID of the deleted Record\"\n Id: ID\n}\n\nenum DateLiteral {\n YESTERDAY\n TODAY\n TOMORROW\n LAST_WEEK\n THIS_WEEK\n NEXT_WEEK\n LAST_MONTH\n THIS_MONTH\n NEXT_MONTH\n LAST_90_DAYS\n NEXT_90_DAYS\n LAST_QUARTER\n THIS_QUARTER\n NEXT_QUARTER\n LAST_FISCAL_QUARTER\n THIS_FISCAL_QUARTER\n NEXT_FISCAL_QUARTER\n LAST_YEAR\n THIS_YEAR\n NEXT_YEAR\n LAST_FISCAL_YEAR\n THIS_FISCAL_YEAR\n NEXT_FISCAL_YEAR\n}\n\ntype RecordRepresentation implements Record @generic {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n SetupUserSpecialField: BooleanValue @fieldCategory\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n AnyType: AnyType @fieldCategory\n parentRelationship: RecordRepresentation @fieldCategory\n polymorphicParentRelationship: PolymorphicParentRelationship @fieldCategory\n childRelationship(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, upperBound: Int): RecordConnection @fieldCategory\n CompoundField: CompoundField @fieldCategory\n}\n\ninput OrderByGeolocationClause {\n distance: DistanceInput\n order: ResultOrder\n nulls: NullOrder\n}\n\ntype TextAreaAggregate implements FieldValue {\n value: TextArea\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: TextAreaValue\n min: TextAreaValue\n}\n\nenum GroupByType {\n GROUP_BY\n ROLLUP\n CUBE\n}\n\nenum ResultsOrder {\n ASC\n DESC\n}\n\ntype PicklistAggregate implements FieldValue {\n value: Picklist\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n label: String\n max: PicklistValue\n min: PicklistValue\n}\n\ninput RecordUpdateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\ntype DateTimeValue implements FieldValue {\n value: DateTime\n displayValue: String\n format: String\n}\n\n\"Input to the mutation to delete a Record\"\ninput RecordDeleteInput {\n \"The ID of the Record to delete\"\n Id: IdOrRef!\n}\n\ntype ListOrder @team(name: \"Lists Platform\") {\n fieldApiName: String!\n sortDirection: ResultOrder\n}\n\nenum AggregateOrderByStringFunction {\n COUNT\n COUNT_DISTINCT\n MAX\n MIN\n}\n\ntype LongValue implements FieldValue {\n value: Long\n displayValue: String\n format: String\n}\n\ntype DependentField {\n controllingField: String!\n dependentFields: [String]!\n}\n\ntype PercentValue implements FieldValue {\n value: Percent\n displayValue: String\n format: String\n}\n\ninput NoFunctionAggregateOrderByClause {\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ntype RecordConnection @generic {\n edges: [RecordEdge]\n pageInfo: PageInfo!\n totalCount: Int!\n pageResultCount: Int!\n}\n\ntype FilteredLookupInfo {\n controllingFields: [String]!\n dependent: Boolean!\n optionalFilter: Boolean!\n}\n\ninput PhoneNumberOperators {\n eq: PhoneNumber\n ne: PhoneNumber\n like: PhoneNumber\n lt: PhoneNumber\n gt: PhoneNumber\n lte: PhoneNumber\n gte: PhoneNumber\n in: [PhoneNumber]\n nin: [PhoneNumber]\n}\n\ntype ObjectInfo {\n ApiName: String!\n childRelationships: [ChildRelationship]!\n createable: Boolean!\n custom: Boolean!\n defaultRecordTypeId: ID\n deletable: Boolean!\n dependentFields: [DependentField]!\n feedEnabled: Boolean!\n fields: [Field]!\n keyPrefix: String\n label: String\n labelPlural: String\n layoutable: Boolean!\n mruEnabled: Boolean!\n nameFields: [String]!\n queryable: Boolean!\n recordTypeInfos: [RecordTypeInfo]!\n searchable: Boolean!\n themeInfo: ThemeInfo\n updateable: Boolean!\n locale: String\n}\n\ninput LongitudeOperators {\n eq: Longitude\n ne: Longitude\n lt: Longitude\n gt: Longitude\n lte: Longitude\n gte: Longitude\n in: [Longitude]\n nin: [Longitude]\n}\n\ninterface Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype StandardField implements Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype PicklistField implements Field {\n ApiName: String!\n calculated: Boolean!\n compound: Boolean!\n compoundComponentName: String\n compoundFieldName: String\n controllerName: String\n controllingFields: [String]!\n createable: Boolean!\n custom: Boolean!\n dataType: DataType\n extraTypeInfo: FieldExtraTypeInfo\n filterable: Boolean!\n filteredLookupInfo: FilteredLookupInfo\n highScaleNumber: Boolean!\n htmlFormatted: Boolean!\n inlineHelpText: String\n label: String\n nameField: Boolean!\n polymorphicForeignKey: Boolean!\n picklistValuesByRecordTypeIDs: [PicklistValueByRecordTypeIDs]\n precision: Int\n reference: Boolean!\n referenceTargetField: String\n referenceToInfos: [ReferenceToInfo]!\n relationshipName: String\n required: Boolean!\n scale: Int\n searchPrefilterable: Boolean\n sortable: Boolean!\n updateable: Boolean!\n}\n\ntype PicklistValueByRecordTypeIDs {\n recordTypeID: String!\n controllerValues: [ControllerValues!]\n picklistValues: [PicklistValues!]\n defaultValue: PicklistValues\n}\n\ntype ControllerValues {\n value: String\n index: Int\n}\n\ntype PicklistValues {\n value: String\n label: String\n validFor: [Int]\n attributes: PicklistAttributes\n}\n\ntype PicklistAttributes {\n picklistAtrributesValueType: String\n connectDisplayName: String\n internalName: String\n}\n\ninput DateTimeFunctionInput {\n value: DatePrimitiveOperators\n convertTimezoneValue: DatePrimitiveOperators\n}\n\ntype Base64Value implements FieldValue {\n value: Base64\n displayValue: String\n}\n\ntype CompoundField @generic {\n IntValue: IntValue @fieldCategory\n StringValue: StringValue @fieldCategory\n BooleanValue: BooleanValue @fieldCategory\n IDValue: IDValue @fieldCategory\n DateTimeValue: DateTimeValue @fieldCategory\n TimeValue: TimeValue @fieldCategory\n DateValue: DateValue @fieldCategory\n TextAreaValue: TextAreaValue @fieldCategory\n LongTextAreaValue: LongTextAreaValue @fieldCategory\n RichTextAreaValue: RichTextAreaValue @fieldCategory\n PhoneNumberValue: PhoneNumberValue @fieldCategory\n EmailValue: EmailValue @fieldCategory\n UrlValue: UrlValue @fieldCategory\n EncryptedStringValue: EncryptedStringValue @fieldCategory\n CurrencyValue: CurrencyValue @fieldCategory\n LongitudeValue: LongitudeValue @fieldCategory\n LatitudeValue: LatitudeValue @fieldCategory\n PicklistValue: PicklistValue @fieldCategory\n MultiPicklistValue: MultiPicklistValue @fieldCategory\n LongValue: LongValue @fieldCategory\n DoubleValue: DoubleValue @fieldCategory\n PercentValue: PercentValue @fieldCategory\n Base64Value: Base64Value @fieldCategory\n JSONValue: JSONValue @fieldCategory\n}\n\ninput RecordUpdateInput @generic {\n Id: IdOrRef!\n record: RecordUpdateRepresentation! @fieldCategory\n}\n\ninput DateTimeInput {\n value: DateTime\n literal: DateLiteral\n range: DateRange\n}\n\ntype ChildRelationship {\n childObjectApiName: String!\n fieldName: String\n junctionIdListNames: [String]!\n junctionReferenceTo: [String]!\n relationshipName: String\n objectInfo: ObjectInfo\n}\n\ntype RecordResult @generic {\n aggregate: RecordAggregate\n}\n\ntype PageInfo {\n hasNextPage: Boolean!\n hasPreviousPage: Boolean!\n startCursor: String\n endCursor: String\n}\n\ntype CurrencyValue implements FieldValue {\n value: Currency\n displayValue: String\n format: String\n convertCurrency: Currency\n}\n\ntype DateFunctionAggregation {\n value: Long\n format: String\n}\n\ninput PolymorphicParentRelationshipRecordOrderBy @generic {\n RecordOrderBy: RecordOrderBy @fieldCategory\n}\n\ntype RecordCreatePayload @generic {\n Record: RecordRepresentation\n}\n\ninput PolymorphicParentRelationshipGroupBy @generic {\n RecordGroupBy: RecordGroupBy @fieldCategory\n}\n\ntype BooleanValue implements FieldValue {\n value: Boolean\n displayValue: String\n}\n\ntype StringValue implements FieldValue {\n value: String\n displayValue: String\n label: String\n}\n\ninput IdOperators {\n eq: ID\n ne: ID\n lt: ID\n gt: ID\n lte: ID\n gte: ID\n in: [ID]\n nin: [ID]\n inq: JoinInput\n ninq: JoinInput\n}\n\ntype PhoneNumberAggregate implements FieldValue {\n value: PhoneNumber\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: PhoneNumberValue\n min: PhoneNumberValue\n}\n\ntype CurrencyAggregate implements FieldValue {\n value: Currency\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n max: CurrencyValue\n min: CurrencyValue\n sum: CurrencyValue\n}\n\ninput BooleanOperators {\n eq: Boolean\n ne: Boolean\n}\n\ntype MultiPicklistValue implements FieldValue {\n value: MultiPicklist\n displayValue: String\n label: String\n}\n\ntype ListColumn @team(name: \"Lists Platform\") {\n fieldApiName: String!\n label: String!\n lookupId: String\n sortable: Boolean\n}\n\ntype LatitudeAggregate implements FieldValue {\n value: Latitude\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n max: LatitudeValue\n min: LatitudeValue\n sum: DoubleValue\n}\n\ninput CurrencyOperators {\n eq: Currency\n ne: Currency\n lt: Currency\n gt: Currency\n lte: Currency\n gte: Currency\n in: [Currency]\n nin: [Currency]\n}\n\ntype LatitudeValue implements FieldValue {\n value: Latitude\n displayValue: String\n}\n\ninput GroupByClause {\n group: Boolean\n}\n\ntype RecordEdge @generic {\n node: RecordRepresentation\n cursor: String!\n}\n\nenum NullOrder {\n FIRST\n LAST\n}\n\ntype PhoneNumberValue implements FieldValue {\n value: PhoneNumber\n displayValue: String\n}\n\n# RecordScope is an empty enum\n# enum RecordScope @generic {\n# }\n\ninput TextAreaOperators {\n eq: TextArea\n ne: TextArea\n like: TextArea\n lt: TextArea\n gt: TextArea\n lte: TextArea\n gte: TextArea\n in: [TextArea]\n nin: [TextArea]\n}\n\ntype TextAreaValue implements FieldValue {\n value: TextArea\n displayValue: String\n label: String\n}\n\ntype RecordAggregateEdge @generic {\n node: RecordResult\n cursor: String!\n}\n\ntype ThemeInfo {\n color: String\n iconUrl: String\n}\n\ntype UrlAggregate implements FieldValue {\n value: Url\n displayValue: String\n count: LongValue\n countDistinct: LongValue\n grouping: IntValue\n max: UrlValue\n min: UrlValue\n}\n\ntype IDValue implements FieldValue {\n value: ID\n displayValue: String\n}\n\nenum Unit {\n MI\n KM\n}\n\ninput PolymorphicParentRelationshipOrderBy @generic {\n RecordAggregateOrderBy: RecordAggregateOrderBy @fieldCategory\n}\n\nenum NullsOrder {\n FIRST\n LAST\n}\n\nenum ResultOrder {\n ASC\n DESC\n}\n\ninput RecordOrderBy @generic {\n orderableField: OrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipRecordOrderBy @fieldCategory\n}\n\ninput PicklistOperators {\n eq: Picklist\n ne: Picklist\n in: [Picklist]\n nin: [Picklist]\n like: Picklist\n lt: Picklist\n gt: Picklist\n lte: Picklist\n gte: Picklist\n}\n\ninput RecordFilter @generic {\n and: [RecordFilter]\n or: [RecordFilter]\n not: RecordFilter\n parentRelationshipRecordFilter: RecordFilter @fieldCategory\n polymorphicParentRelationshipRecordFilter: PolymorphicParentRelationshipRecordFilter @fieldCategory\n IntegerOperator: IntegerOperators @fieldCategory\n LongOperator: LongOperators @fieldCategory\n StringOperator: StringOperators @fieldCategory\n DoubleOperator: DoubleOperators @fieldCategory\n PercentOperator: PercentOperators @fieldCategory\n LongitudeOperator: LongitudeOperators @fieldCategory\n LatitudeOperator: LatitudeOperators @fieldCategory\n EmailOperator: EmailOperators @fieldCategory\n TextAreaOperator: TextAreaOperators @fieldCategory\n LongTextAreaOperator: LongTextAreaOperators @fieldCategory\n URLOperator: URLOperators @fieldCategory\n PhoneNumberOperator: PhoneNumberOperators @fieldCategory\n BooleanOperator: BooleanOperators @fieldCategory\n IdOperator: IdOperators @fieldCategory\n CurrencyOperator: CurrencyOperators @fieldCategory\n TimeOperator: TimeOperators @fieldCategory\n DateOperator: DateOperators @fieldCategory\n DateTimeOperator: DateTimeOperators @fieldCategory\n PicklistOperator: PicklistOperators @fieldCategory\n MultiPicklistOperator: MultiPicklistOperators @fieldCategory\n GeolocationOperator: GeolocationOperators @fieldCategory\n}\n\ntype TimeValue implements FieldValue {\n value: Time\n displayValue: String\n format: String\n}\n\ninput GeolocationOperators {\n lt: GeolocationInput\n gt: GeolocationInput\n}\n\ninput LatitudeOperators {\n eq: Latitude\n ne: Latitude\n lt: Latitude\n gt: Latitude\n lte: Latitude\n gte: Latitude\n in: [Latitude]\n nin: [Latitude]\n}\n\ntype IntAggregate implements FieldValue {\n value: Int\n displayValue: String\n avg: DoubleValue\n count: LongValue\n countDistinct: LongValue\n format: String\n grouping: IntValue\n max: IntValue\n min: IntValue\n sum: LongValue\n}\n\ntype RecordAggregate @generic {\n ApiName: String!\n BooleanAggregate: BooleanAggregate @fieldCategory\n CurrencyAggregate: CurrencyAggregate @fieldCategory\n DateAggregate: DateAggregate @fieldCategory\n DoubleAggregate: DoubleAggregate @fieldCategory\n EmailAggregate: EmailAggregate @fieldCategory\n IDAggregate: IDAggregate @fieldCategory\n IntAggregate: IntAggregate @fieldCategory\n LatitudeAggregate: LatitudeAggregate @fieldCategory\n LongitudeAggregate: LongitudeAggregate @fieldCategory\n LongAggregate: LongAggregate @fieldCategory\n PercentAggregate: PercentAggregate @fieldCategory\n PhoneNumberAggregate: PhoneNumberAggregate @fieldCategory\n PicklistAggregate: PicklistAggregate @fieldCategory\n StringAggregate: StringAggregate @fieldCategory\n TextAreaAggregate: TextAreaAggregate @fieldCategory\n TimeAggregate: TimeAggregate @fieldCategory\n UrlAggregate: UrlAggregate @fieldCategory\n parentRelationship: RecordAggregate @fieldCategory\n polymorphicParentRelationship: PolymorphicAggregateParentRelationship @fieldCategory\n}\n\nenum SObject__FieldType {\n ALL\n STANDARD\n CUSTOM\n}\n\ntype JSONValue implements FieldValue {\n value: JSON\n displayValue: String\n}\n\ntype EmailValue implements FieldValue {\n value: Email\n displayValue: String\n}\n\ninput DateFunctionInput {\n value: LongOperators\n convertTimezoneValue: LongOperators\n}\n\n# Mutations are not supported by Luvio.\n# type Mutation {\n# uiapi(input: UIAPIMutationsInput): UIAPIMutations!\n# }\n\nunion PolymorphicAggregateParentRelationship @generic = RecordAggregate\n\ninput LongTextAreaOperators {\n eq: LongTextArea\n ne: LongTextArea\n like: LongTextArea\n lt: LongTextArea\n gt: LongTextArea\n lte: LongTextArea\n gte: LongTextArea\n in: [LongTextArea]\n nin: [LongTextArea]\n}\n\ninput DateTimeOperators {\n eq: DateTimeInput\n ne: DateTimeInput\n lt: DateTimeInput\n gt: DateTimeInput\n lte: DateTimeInput\n gte: DateTimeInput\n in: [DateTimeInput]\n nin: [DateTimeInput]\n DAY_IN_WEEK: DateFunctionInput\n DAY_IN_MONTH: DateFunctionInput\n DAY_IN_YEAR: DateFunctionInput\n WEEK_IN_MONTH: DateFunctionInput\n WEEK_IN_YEAR: DateFunctionInput\n CALENDAR_MONTH: DateFunctionInput\n CALENDAR_QUARTER: DateFunctionInput\n CALENDAR_YEAR: DateFunctionInput\n FISCAL_MONTH: DateFunctionInput\n FISCAL_QUARTER: DateFunctionInput\n FISCAL_YEAR: DateFunctionInput\n DAY_ONLY: DateTimeFunctionInput\n HOUR_IN_DAY: DateFunctionInput\n}\n\ntype BooleanAggregate implements FieldValue {\n value: Boolean\n displayValue: String\n grouping: IntValue\n}\n\ntype RecordQueryAggregate {\n # scope should be RecordScope, but it is an empty enum\n recordQueryAggregate(first: Int, after: String, where: RecordFilter, orderBy: RecordAggregateOrderBy, scope: String, groupBy: RecordGroupBy, upperBound: Int): RecordAggregateConnection @fieldCategory\n}\n\ninput RecordCreateRepresentation @generic {\n Int: Int @fieldCategory\n String: String @fieldCategory\n Boolean: Boolean @fieldCategory\n ID: IdOrRef @fieldCategory\n DateTime: DateTime @fieldCategory\n Time: Time @fieldCategory\n Date: Date @fieldCategory\n TextArea: TextArea @fieldCategory\n LongTextArea: LongTextArea @fieldCategory\n RichTextArea: RichTextArea @fieldCategory\n PhoneNumber: PhoneNumber @fieldCategory\n Email: Email @fieldCategory\n Url: Url @fieldCategory\n EncryptedString: EncryptedString @fieldCategory\n Currency: Currency @fieldCategory\n Longitude: Longitude @fieldCategory\n Latitude: Latitude @fieldCategory\n Picklist: Picklist @fieldCategory\n MultiPicklist: MultiPicklist @fieldCategory\n Long: Long @fieldCategory\n Double: Double @fieldCategory\n Percent: Percent @fieldCategory\n Base64: Base64 @fieldCategory\n JSON: JSON @fieldCategory\n}\n\nenum FieldExtraTypeInfo {\n IMAGE_URL\n EXTERNAL_LOOKUP\n INDIRECT_LOOKUP\n PERSONNAME\n SWITCHABLE_PERSONNAME\n PLAINTEXTAREA\n RICHTEXTAREA\n}\n\ntype RateLimit {\n cost: Long\n limit: Long\n remaining: Long\n resetAt: DateTime\n}\n\ninput DateRange {\n last_n_days: Int\n next_n_days: Int\n last_n_weeks: Int\n next_n_weeks: Int\n last_n_months: Int\n next_n_months: Int\n last_n_quarters: Int\n next_n_quarters: Int\n last_n_fiscal_quarters: Int\n next_n_fiscal_quarters: Int\n last_n_years: Int\n next_n_years: Int\n last_n_fiscal_years: Int\n next_n_fiscal_years: Int\n n_days_ago: Int\n n_weeks_ago: Int\n n_months_ago: Int\n n_quarters_ago: Int\n n_years_ago: Int\n n_fiscal_quarters_ago: Int\n n_fiscal_years_ago: Int\n}\n\ntype UIAPIMutations {\n recordCreate(input: RecordCreateInput!): RecordCreatePayload @fieldCategory\n recordDelete(input: RecordDeleteInput!): RecordDeletePayload @fieldCategory\n recordUpdate(input: RecordUpdateInput!): RecordUpdatePayload @fieldCategory\n}\n\ninput IntegerOperators {\n eq: Int\n ne: Int\n lt: Int\n gt: Int\n lte: Int\n gte: Int\n in: [Int]\n nin: [Int]\n}\n\ntype EncryptedStringValue implements FieldValue {\n value: EncryptedString\n displayValue: String\n}\n\ninterface Record {\n Id: ID!\n ApiName: String!\n WeakEtag: Long!\n DisplayValue: String\n LastModifiedById: IDValue\n LastModifiedDate: DateTimeValue\n SystemModstamp: DateTimeValue\n RecordTypeId(fallback: Boolean): IDValue\n}\n\ninput PolymorphicParentRelationshipRecordFilter @generic {\n RecordFilter: RecordFilter @fieldCategory\n}\n\n\"\"\"\nA type that can contain any of the following types: Boolean, Date, DateTime, Double, String.\nFormat and Label are not supported by AnyType and displayValue is an unformatted string representation of the value.\n\"\"\"\nunion AnyType = BooleanValue | DateValue | DateTimeValue | DoubleValue | StringValue\n\ninput AggregateOrderByNumberClause {\n function: AggregateOrderByNumberFunction\n order: ResultsOrder\n nulls: NullsOrder\n}\n\ninput DateInput {\n value: Date\n literal: DateLiteral\n range: DateRange\n}\n\ninput RecordGroupBy @generic {\n groupableField: GroupByClause @fieldCategory\n groupableDateField: GroupByDateFunction @fieldCategory\n groupableParentRelationship: RecordGroupBy @fieldCategory\n groupablePolymorphicParentRelationship: PolymorphicParentRelationshipGroupBy @fieldCategory\n type: GroupByType = GROUP_BY\n}\n\ntype RecordQuery {\n # scope should be RecordScope, but it is an empty enum\n recordQuery(first: Int, after: String, where: RecordFilter, orderBy: RecordOrderBy, scope: String, upperBound: Int, updateMRU: Boolean): RecordConnection @fieldCategory\n}\n\ninput RecordAggregateOrderBy @generic {\n orderableNumberField: AggregateOrderByNumberClause @fieldCategory\n orderableStringField: AggregateOrderByStringClause @fieldCategory\n orderableField: NoFunctionAggregateOrderByClause @fieldCategory\n orderableGeolocationField: OrderByGeolocationClause @fieldCategory\n orderableParentRelationship: RecordAggregateOrderBy @fieldCategory\n orderablePolymorphicParentRelationship: PolymorphicParentRelationshipOrderBy @fieldCategory\n}\n\ninput IgnoreRule {\n rule: String!\n teamName: String!\n justification: String!\n}\n\ndirective @generic on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT\ndirective @fieldCategory on FIELD_DEFINITION | ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | ENUM_VALUE\ndirective @category(name: String!) on FIELD\n\"Specifies the team name for a type\"\ndirective @team(name: String!) on OBJECT | INPUT_OBJECT | INTERFACE | ENUM | UNION | SCALAR\n\"Specifies the validation rules to ignore for this element.\"\ndirective @ignoreRule(rules: [IgnoreRule!]!) on OBJECT\n | INPUT_OBJECT\n | INTERFACE\n | ENUM\n | UNION\n | SCALAR\n | FIELD_DEFINITION\n | INPUT_FIELD_DEFINITION\n | ARGUMENT_DEFINITION\n | ENUM_VALUE\ndirective @optional on FIELD\n\ntype __Type {\n kind: __TypeKind!\n name: String\n description: String\n fields(includeDeprecated: Boolean = false): [__Field!]\n interfaces: [__Type!]\n possibleTypes: [__Type!]\n enumValues(includeDeprecated: Boolean = false): [__EnumValue!]\n inputFields: [__InputValue!]\n ofType: __Type\n}";
|
|
85518
85788
|
|
|
85519
85789
|
// Define additional schema that is missing from uiapi that we use in local evaluation
|
|
85520
85790
|
const additionalSchemaDefinitions = /* GraphQL */ `
|
|
@@ -89429,7 +89699,7 @@
|
|
|
89429
89699
|
return operation()
|
|
89430
89700
|
.catch((err) => {
|
|
89431
89701
|
hasError = true;
|
|
89432
|
-
const error = normalizeError$
|
|
89702
|
+
const error = normalizeError$2(err);
|
|
89433
89703
|
tags['errorMessage'] = error.message;
|
|
89434
89704
|
if (logError) {
|
|
89435
89705
|
ldsMobileInstrumentation$2.error(error);
|
|
@@ -95118,14 +95388,27 @@
|
|
|
95118
95388
|
constructor(services) {
|
|
95119
95389
|
super(services);
|
|
95120
95390
|
this.services = services;
|
|
95391
|
+
this.additionalNullResponses = [];
|
|
95121
95392
|
}
|
|
95122
|
-
fetch() {
|
|
95393
|
+
fetch(contextSeed) {
|
|
95123
95394
|
try {
|
|
95124
|
-
|
|
95395
|
+
const [input, init] = this.fetchParams;
|
|
95396
|
+
const initWithSeed = contextSeed === void 0 ? init : { ...init, __contextSeed: contextSeed };
|
|
95397
|
+
const fetchCall = initWithSeed === void 0 ? this.services.fetch(input) : this.services.fetch(input, initWithSeed);
|
|
95398
|
+
return this.convertFetchResponseToData(fetchCall);
|
|
95125
95399
|
} catch (reason) {
|
|
95126
95400
|
return resolvedPromiseLike$2(err$1(toError(reason)));
|
|
95127
95401
|
}
|
|
95128
95402
|
}
|
|
95403
|
+
isSemanticNullResponse(response) {
|
|
95404
|
+
return this.additionalNullResponses.includes(response.status);
|
|
95405
|
+
}
|
|
95406
|
+
isProtocolNoBodyStatus(status) {
|
|
95407
|
+
return status === 204 || status === 205;
|
|
95408
|
+
}
|
|
95409
|
+
isUndeclaredNoBodyResponse(response) {
|
|
95410
|
+
return this.isProtocolNoBodyStatus(response.status) && !this.isSemanticNullResponse(response);
|
|
95411
|
+
}
|
|
95129
95412
|
async coerceError(errorResponse) {
|
|
95130
95413
|
return toError(errorResponse.statusText);
|
|
95131
95414
|
}
|
|
@@ -95133,10 +95416,24 @@
|
|
|
95133
95416
|
return response.then(
|
|
95134
95417
|
(response2) => {
|
|
95135
95418
|
if (response2.ok) {
|
|
95136
|
-
|
|
95137
|
-
|
|
95138
|
-
|
|
95139
|
-
|
|
95419
|
+
let resultPromise;
|
|
95420
|
+
if (this.isSemanticNullResponse(response2)) {
|
|
95421
|
+
resultPromise = Promise.resolve(ok$1(null));
|
|
95422
|
+
} else if (this.isUndeclaredNoBodyResponse(response2)) {
|
|
95423
|
+
resultPromise = Promise.resolve(
|
|
95424
|
+
err$1(
|
|
95425
|
+
toError(
|
|
95426
|
+
`Unexpected ${response2.status} response: no-content status was not declared in the API specification. Declare this response in your OAS without a content property.`
|
|
95427
|
+
)
|
|
95428
|
+
)
|
|
95429
|
+
);
|
|
95430
|
+
} else {
|
|
95431
|
+
resultPromise = response2.json().then(
|
|
95432
|
+
(json) => ok$1(json),
|
|
95433
|
+
(reason) => err$1(toError(reason))
|
|
95434
|
+
);
|
|
95435
|
+
}
|
|
95436
|
+
return resultPromise.finally(() => {
|
|
95140
95437
|
try {
|
|
95141
95438
|
this.afterRequestHooks({ statusCode: response2.status });
|
|
95142
95439
|
} catch {
|
|
@@ -95183,6 +95480,7 @@
|
|
|
95183
95480
|
constructor(services) {
|
|
95184
95481
|
super(services);
|
|
95185
95482
|
this.services = services;
|
|
95483
|
+
this.additionalNullResponses = [];
|
|
95186
95484
|
}
|
|
95187
95485
|
requestFromNetwork() {
|
|
95188
95486
|
return this.fetch();
|
|
@@ -95194,6 +95492,15 @@
|
|
|
95194
95492
|
return resolvedPromiseLike$2(err$1(toError(reason)));
|
|
95195
95493
|
}
|
|
95196
95494
|
}
|
|
95495
|
+
isSemanticNullResponse(response) {
|
|
95496
|
+
return this.additionalNullResponses.includes(response.status);
|
|
95497
|
+
}
|
|
95498
|
+
isProtocolNoBodyStatus(status) {
|
|
95499
|
+
return status === 204 || status === 205;
|
|
95500
|
+
}
|
|
95501
|
+
isUndeclaredNoBodyResponse(response) {
|
|
95502
|
+
return this.isProtocolNoBodyStatus(response.status) && !this.isSemanticNullResponse(response);
|
|
95503
|
+
}
|
|
95197
95504
|
async coerceError(errorResponse) {
|
|
95198
95505
|
return toError(errorResponse.statusText);
|
|
95199
95506
|
}
|
|
@@ -95204,12 +95511,26 @@
|
|
|
95204
95511
|
return response.then(
|
|
95205
95512
|
(response2) => {
|
|
95206
95513
|
if (response2.ok) {
|
|
95207
|
-
|
|
95208
|
-
|
|
95209
|
-
|
|
95210
|
-
|
|
95211
|
-
|
|
95212
|
-
|
|
95514
|
+
let resultPromise;
|
|
95515
|
+
if (this.isSemanticNullResponse(response2)) {
|
|
95516
|
+
resultPromise = Promise.resolve(ok$1(null));
|
|
95517
|
+
} else if (this.isUndeclaredNoBodyResponse(response2)) {
|
|
95518
|
+
resultPromise = Promise.resolve(
|
|
95519
|
+
err$1(
|
|
95520
|
+
toError(
|
|
95521
|
+
`Unexpected ${response2.status} response: no-content status was not declared in the API specification. Declare this response in your OAS without a content property.`
|
|
95522
|
+
)
|
|
95523
|
+
)
|
|
95524
|
+
);
|
|
95525
|
+
} else {
|
|
95526
|
+
resultPromise = response2.json().then(
|
|
95527
|
+
(json) => {
|
|
95528
|
+
return this.processFetchReturnValue(json);
|
|
95529
|
+
},
|
|
95530
|
+
(reason) => err$1(toError(reason))
|
|
95531
|
+
);
|
|
95532
|
+
}
|
|
95533
|
+
return resultPromise.finally(() => {
|
|
95213
95534
|
try {
|
|
95214
95535
|
this.afterRequestHooks({ statusCode: response2.status });
|
|
95215
95536
|
} catch {
|
|
@@ -96197,7 +96518,7 @@
|
|
|
96197
96518
|
},
|
|
96198
96519
|
};
|
|
96199
96520
|
}
|
|
96200
|
-
// version: 1.428.0-
|
|
96521
|
+
// version: 1.428.0-dev20-d72ac06681
|
|
96201
96522
|
|
|
96202
96523
|
/**
|
|
96203
96524
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -96223,7 +96544,7 @@
|
|
|
96223
96544
|
},
|
|
96224
96545
|
};
|
|
96225
96546
|
}
|
|
96226
|
-
// version: 1.428.0-
|
|
96547
|
+
// version: 1.428.0-dev20-d72ac06681
|
|
96227
96548
|
|
|
96228
96549
|
/*!
|
|
96229
96550
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -96708,6 +97029,9 @@
|
|
|
96708
97029
|
return err$1([error]);
|
|
96709
97030
|
}
|
|
96710
97031
|
function validateJsonSchema$1(data, schema, path = "$", document = schema) {
|
|
97032
|
+
return validateJsonSchemaInternal$1(data, schema, path, document, /* @__PURE__ */ new Map());
|
|
97033
|
+
}
|
|
97034
|
+
function validateJsonSchemaInternal$1(data, schema, path, document, visited) {
|
|
96711
97035
|
if (schema === true) return validSchemaResponse$1();
|
|
96712
97036
|
if (schema === false)
|
|
96713
97037
|
return invalidSchemaResponseWithError$1(
|
|
@@ -96716,22 +97040,22 @@
|
|
|
96716
97040
|
const dataType = data === null ? "null" : Array.isArray(data) ? "array" : typeof data;
|
|
96717
97041
|
const errorCollector = new JsonSchemaErrorCollector$1();
|
|
96718
97042
|
if ("anyOf" in schema) {
|
|
96719
|
-
errorCollector.append(validateAnyOf$1(data, schema, path, document));
|
|
97043
|
+
errorCollector.append(validateAnyOf$1(data, schema, path, document, visited));
|
|
96720
97044
|
} else if ("oneOf" in schema) {
|
|
96721
|
-
errorCollector.append(validateOneOf$1(data, schema, path, document));
|
|
97045
|
+
errorCollector.append(validateOneOf$1(data, schema, path, document, visited));
|
|
96722
97046
|
} else if ("allOf" in schema) {
|
|
96723
|
-
errorCollector.append(validateAllOf$1(data, schema, path, document));
|
|
97047
|
+
errorCollector.append(validateAllOf$1(data, schema, path, document, visited));
|
|
96724
97048
|
} else if ("not" in schema) {
|
|
96725
|
-
errorCollector.append(validateNot$1(data, schema, path, document));
|
|
97049
|
+
errorCollector.append(validateNot$1(data, schema, path, document, visited));
|
|
96726
97050
|
} else if ("$ref" in schema) {
|
|
96727
|
-
errorCollector.append(validateRef$1(data, schema, path, document));
|
|
97051
|
+
errorCollector.append(validateRef$1(data, schema, path, document, visited));
|
|
96728
97052
|
} else if ("type" in schema) {
|
|
96729
97053
|
if (schema.type === "object") {
|
|
96730
97054
|
if (dataType !== "object") {
|
|
96731
97055
|
errorCollector.add(incorrectTypeError$1("object", dataType, path));
|
|
96732
97056
|
} else {
|
|
96733
97057
|
errorCollector.append(
|
|
96734
|
-
validateObject$1(data, schema, path, document)
|
|
97058
|
+
validateObject$1(data, schema, path, document, visited)
|
|
96735
97059
|
);
|
|
96736
97060
|
}
|
|
96737
97061
|
} else if (schema.type === "array") {
|
|
@@ -96739,7 +97063,7 @@
|
|
|
96739
97063
|
errorCollector.add(incorrectTypeError$1("array", dataType, path));
|
|
96740
97064
|
} else {
|
|
96741
97065
|
errorCollector.append(
|
|
96742
|
-
validateArray$1(data, schema, path, document)
|
|
97066
|
+
validateArray$1(data, schema, path, document, visited)
|
|
96743
97067
|
);
|
|
96744
97068
|
}
|
|
96745
97069
|
} else {
|
|
@@ -96756,16 +97080,17 @@
|
|
|
96756
97080
|
}
|
|
96757
97081
|
return errorCollector.toValidationResponse();
|
|
96758
97082
|
}
|
|
96759
|
-
function validateAnyOf$1(data, schema, path, document) {
|
|
97083
|
+
function validateAnyOf$1(data, schema, path, document, visited) {
|
|
96760
97084
|
let isValid = false;
|
|
96761
97085
|
const errorCollector = new JsonSchemaErrorCollector$1();
|
|
96762
97086
|
for (let i = 0, { length } = schema.anyOf; i < length; i++) {
|
|
96763
97087
|
const element = schema.anyOf[i];
|
|
96764
|
-
const validationResponse =
|
|
97088
|
+
const validationResponse = validateJsonSchemaInternal$1(
|
|
96765
97089
|
data,
|
|
96766
97090
|
element,
|
|
96767
97091
|
`${path}.anyOf[${i}]`,
|
|
96768
|
-
document
|
|
97092
|
+
document,
|
|
97093
|
+
visited
|
|
96769
97094
|
);
|
|
96770
97095
|
if (validationResponse.isOk()) {
|
|
96771
97096
|
isValid = true;
|
|
@@ -96782,13 +97107,22 @@
|
|
|
96782
97107
|
}
|
|
96783
97108
|
return validSchemaResponse$1();
|
|
96784
97109
|
}
|
|
96785
|
-
function validateOneOf$1(data, schema, path, document) {
|
|
97110
|
+
function validateOneOf$1(data, schema, path, document, visited) {
|
|
97111
|
+
if (schema.discriminator !== void 0) {
|
|
97112
|
+
return validateDiscriminatedOneOf$1(data, schema.discriminator, path, document, visited);
|
|
97113
|
+
}
|
|
96786
97114
|
let validSubShemaPaths = [];
|
|
96787
97115
|
const errorCollector = new JsonSchemaErrorCollector$1();
|
|
96788
97116
|
for (let i = 0, { length } = schema.oneOf; i < length; i++) {
|
|
96789
97117
|
const element = schema.oneOf[i];
|
|
96790
97118
|
const oneOfPath = `${path}.oneOf[${i}]`;
|
|
96791
|
-
const validationResponse =
|
|
97119
|
+
const validationResponse = validateJsonSchemaInternal$1(
|
|
97120
|
+
data,
|
|
97121
|
+
element,
|
|
97122
|
+
oneOfPath,
|
|
97123
|
+
document,
|
|
97124
|
+
visited
|
|
97125
|
+
);
|
|
96792
97126
|
if (validationResponse.isOk()) {
|
|
96793
97127
|
validSubShemaPaths.push(oneOfPath);
|
|
96794
97128
|
} else {
|
|
@@ -96810,16 +97144,45 @@
|
|
|
96810
97144
|
}
|
|
96811
97145
|
return validSchemaResponse$1();
|
|
96812
97146
|
}
|
|
96813
|
-
function
|
|
97147
|
+
function validateDiscriminatedOneOf$1(data, discriminator, path, document, visited) {
|
|
97148
|
+
if (data === null || typeof data !== "object" || Array.isArray(data)) {
|
|
97149
|
+
return invalidSchemaResponseWithError$1(incorrectTypeError$1("object", typeof data, path));
|
|
97150
|
+
}
|
|
97151
|
+
const { propertyName, mapping } = discriminator;
|
|
97152
|
+
const discriminatorValue = data[propertyName];
|
|
97153
|
+
if (discriminatorValue === void 0) {
|
|
97154
|
+
return invalidSchemaResponseWithError$1(
|
|
97155
|
+
new MissingRequiredPropertyError$1(
|
|
97156
|
+
`Object at path '${path}' is missing required discriminator property '${propertyName}'.`
|
|
97157
|
+
)
|
|
97158
|
+
);
|
|
97159
|
+
}
|
|
97160
|
+
if (typeof discriminatorValue !== "string") {
|
|
97161
|
+
return invalidSchemaResponseWithError$1(
|
|
97162
|
+
incorrectTypeError$1("string", typeof discriminatorValue, `${path}.${propertyName}`)
|
|
97163
|
+
);
|
|
97164
|
+
}
|
|
97165
|
+
const targetRef = mapping[discriminatorValue];
|
|
97166
|
+
if (targetRef === void 0) {
|
|
97167
|
+
return invalidSchemaResponseWithError$1(
|
|
97168
|
+
new JsonSchemaViolationError$1(
|
|
97169
|
+
`Discriminator value '${discriminatorValue}' at '${path}.${propertyName}' is not in the mapping. Expected one of: [${Object.keys(mapping).join(", ")}].`
|
|
97170
|
+
)
|
|
97171
|
+
);
|
|
97172
|
+
}
|
|
97173
|
+
return validateJsonSchemaInternal$1(data, { $ref: targetRef }, path, document, visited);
|
|
97174
|
+
}
|
|
97175
|
+
function validateAllOf$1(data, schema, path, document, visited) {
|
|
96814
97176
|
let isValid = true;
|
|
96815
97177
|
const errorCollector = new JsonSchemaErrorCollector$1();
|
|
96816
97178
|
for (let i = 0, { length } = schema.allOf; i < length; i++) {
|
|
96817
97179
|
const element = schema.allOf[i];
|
|
96818
|
-
const validationResponse =
|
|
97180
|
+
const validationResponse = validateJsonSchemaInternal$1(
|
|
96819
97181
|
data,
|
|
96820
97182
|
element,
|
|
96821
97183
|
`${path}.allOf[${i}]`,
|
|
96822
|
-
document
|
|
97184
|
+
document,
|
|
97185
|
+
visited
|
|
96823
97186
|
);
|
|
96824
97187
|
if (!validationResponse.isOk()) {
|
|
96825
97188
|
errorCollector.append(validationResponse);
|
|
@@ -96833,8 +97196,14 @@
|
|
|
96833
97196
|
}
|
|
96834
97197
|
return errorCollector.toValidationResponse();
|
|
96835
97198
|
}
|
|
96836
|
-
function validateNot$1(data, schema, path, document) {
|
|
96837
|
-
const validationResponse =
|
|
97199
|
+
function validateNot$1(data, schema, path, document, visited) {
|
|
97200
|
+
const validationResponse = validateJsonSchemaInternal$1(
|
|
97201
|
+
data,
|
|
97202
|
+
schema.not,
|
|
97203
|
+
path,
|
|
97204
|
+
document,
|
|
97205
|
+
visited
|
|
97206
|
+
);
|
|
96838
97207
|
if (validationResponse.isOk()) {
|
|
96839
97208
|
return invalidSchemaResponseWithError$1(
|
|
96840
97209
|
new JsonSchemaViolationError$1(
|
|
@@ -96844,7 +97213,7 @@
|
|
|
96844
97213
|
}
|
|
96845
97214
|
return validSchemaResponse$1();
|
|
96846
97215
|
}
|
|
96847
|
-
function validateObject$1(data, schema, path, document) {
|
|
97216
|
+
function validateObject$1(data, schema, path, document, visited) {
|
|
96848
97217
|
const schemaKeys = Object.keys(schema.properties);
|
|
96849
97218
|
const requiredKeys = new Set(schema.required);
|
|
96850
97219
|
const schemaKeySet = new Set(schemaKeys);
|
|
@@ -96852,11 +97221,12 @@
|
|
|
96852
97221
|
Object.keys(data).forEach((key) => {
|
|
96853
97222
|
if (!schemaKeySet.has(key)) {
|
|
96854
97223
|
errorCollector.append(
|
|
96855
|
-
|
|
97224
|
+
validateJsonSchemaInternal$1(
|
|
96856
97225
|
data[key],
|
|
96857
97226
|
schema.additionalProperties,
|
|
96858
97227
|
`${path}.additionalProperties[${key}]`,
|
|
96859
|
-
document
|
|
97228
|
+
document,
|
|
97229
|
+
visited
|
|
96860
97230
|
)
|
|
96861
97231
|
);
|
|
96862
97232
|
}
|
|
@@ -96873,18 +97243,19 @@
|
|
|
96873
97243
|
}
|
|
96874
97244
|
if (keyInData) {
|
|
96875
97245
|
errorCollector.append(
|
|
96876
|
-
|
|
97246
|
+
validateJsonSchemaInternal$1(
|
|
96877
97247
|
data[key],
|
|
96878
97248
|
schema.properties[key],
|
|
96879
97249
|
`${path}.${key}`,
|
|
96880
|
-
document
|
|
97250
|
+
document,
|
|
97251
|
+
visited
|
|
96881
97252
|
)
|
|
96882
97253
|
);
|
|
96883
97254
|
}
|
|
96884
97255
|
}
|
|
96885
97256
|
return errorCollector.toValidationResponse();
|
|
96886
97257
|
}
|
|
96887
|
-
function validateArray$1(data, schema, path, document) {
|
|
97258
|
+
function validateArray$1(data, schema, path, document, visited) {
|
|
96888
97259
|
if (schema.minItems !== void 0 && data.length < schema.minItems) {
|
|
96889
97260
|
return invalidSchemaResponseWithError$1(
|
|
96890
97261
|
new MinItemsViolationError$1(
|
|
@@ -96902,7 +97273,13 @@
|
|
|
96902
97273
|
const errorCollector = new JsonSchemaErrorCollector$1();
|
|
96903
97274
|
data.forEach(
|
|
96904
97275
|
(element, index) => errorCollector.append(
|
|
96905
|
-
|
|
97276
|
+
validateJsonSchemaInternal$1(
|
|
97277
|
+
element,
|
|
97278
|
+
schema.items,
|
|
97279
|
+
`${path}[${index}]`,
|
|
97280
|
+
document,
|
|
97281
|
+
visited
|
|
97282
|
+
)
|
|
96906
97283
|
)
|
|
96907
97284
|
);
|
|
96908
97285
|
return errorCollector.toValidationResponse();
|
|
@@ -96937,7 +97314,7 @@
|
|
|
96937
97314
|
}
|
|
96938
97315
|
return validSchemaResponse$1();
|
|
96939
97316
|
}
|
|
96940
|
-
function validateRef$1(data, schema, path, document) {
|
|
97317
|
+
function validateRef$1(data, schema, path, document, visited) {
|
|
96941
97318
|
if (!schema.$ref.startsWith("#")) {
|
|
96942
97319
|
return invalidSchemaResponseWithError$1(
|
|
96943
97320
|
new InvalidRefError$1(
|
|
@@ -96945,11 +97322,23 @@
|
|
|
96945
97322
|
)
|
|
96946
97323
|
);
|
|
96947
97324
|
}
|
|
97325
|
+
let refsForData = visited.get(data);
|
|
97326
|
+
if (refsForData !== void 0 && refsForData.has(schema.$ref)) {
|
|
97327
|
+
return validSchemaResponse$1();
|
|
97328
|
+
}
|
|
97329
|
+
if (refsForData === void 0) {
|
|
97330
|
+
refsForData = /* @__PURE__ */ new Set();
|
|
97331
|
+
visited.set(data, refsForData);
|
|
97332
|
+
}
|
|
97333
|
+
refsForData.add(schema.$ref);
|
|
96948
97334
|
try {
|
|
96949
97335
|
const schemaToValidate = findSchemaAtPath$1(document, schema.$ref);
|
|
96950
|
-
return
|
|
97336
|
+
return validateJsonSchemaInternal$1(data, schemaToValidate, path, document, visited);
|
|
96951
97337
|
} catch (e) {
|
|
96952
97338
|
return invalidSchemaResponseWithError$1(e);
|
|
97339
|
+
} finally {
|
|
97340
|
+
refsForData.delete(schema.$ref);
|
|
97341
|
+
if (refsForData.size === 0) visited.delete(data);
|
|
96953
97342
|
}
|
|
96954
97343
|
}
|
|
96955
97344
|
function validateEnum$1(data, enumValue, path) {
|
|
@@ -97834,9 +98223,18 @@
|
|
|
97834
98223
|
return {
|
|
97835
98224
|
type: "fetch",
|
|
97836
98225
|
version: "1.0",
|
|
97837
|
-
service: function(
|
|
98226
|
+
service: function(input, init) {
|
|
97838
98227
|
var _a;
|
|
97839
|
-
|
|
98228
|
+
let contextSeed;
|
|
98229
|
+
let cleanInit = init;
|
|
98230
|
+
if (init !== void 0 && "__contextSeed" in init) {
|
|
98231
|
+
const { __contextSeed, ...initWithoutSeed } = init;
|
|
98232
|
+
contextSeed = __contextSeed;
|
|
98233
|
+
cleanInit = Object.keys(initWithoutSeed).length === 0 ? void 0 : initWithoutSeed;
|
|
98234
|
+
}
|
|
98235
|
+
const fetchArgs = cleanInit === void 0 ? [input] : [input, cleanInit];
|
|
98236
|
+
const baseContext = (_a = interceptors.createContext) == null ? void 0 : _a.call(interceptors);
|
|
98237
|
+
const context = contextSeed === void 0 ? baseContext : { ...baseContext, ...contextSeed };
|
|
97840
98238
|
const {
|
|
97841
98239
|
request: requestInterceptors = [],
|
|
97842
98240
|
retry: retryInterceptor = void 0,
|
|
@@ -97844,17 +98242,17 @@
|
|
|
97844
98242
|
finally: finallyInterceptors = []
|
|
97845
98243
|
} = interceptors;
|
|
97846
98244
|
const pending = requestInterceptors.reduce(
|
|
97847
|
-
(previousPromise, interceptor) => previousPromise.then((
|
|
97848
|
-
resolvedPromiseLike$2(
|
|
98245
|
+
(previousPromise, interceptor) => previousPromise.then((args) => interceptor(args, context)),
|
|
98246
|
+
resolvedPromiseLike$2(fetchArgs)
|
|
97849
98247
|
);
|
|
97850
|
-
return Promise.resolve(pending).then((
|
|
98248
|
+
return Promise.resolve(pending).then((args) => {
|
|
97851
98249
|
if (retryInterceptor) {
|
|
97852
|
-
return retryInterceptor(
|
|
98250
|
+
return retryInterceptor(args, retryService, context);
|
|
97853
98251
|
} else {
|
|
97854
98252
|
if (retryService) {
|
|
97855
|
-
return retryService.applyRetry(() => fetch(...
|
|
98253
|
+
return retryService.applyRetry(() => fetch(...args));
|
|
97856
98254
|
}
|
|
97857
|
-
return fetch(...
|
|
98255
|
+
return fetch(...args);
|
|
97858
98256
|
}
|
|
97859
98257
|
}).then((response) => {
|
|
97860
98258
|
return responseInterceptors.reduce(
|
|
@@ -98880,7 +99278,7 @@
|
|
|
98880
99278
|
id: '@salesforce/lds-network-adapter',
|
|
98881
99279
|
instrument: instrument$2,
|
|
98882
99280
|
});
|
|
98883
|
-
// version: 1.428.0-
|
|
99281
|
+
// version: 1.428.0-dev20-1b319a0432
|
|
98884
99282
|
|
|
98885
99283
|
const { create: create$2, keys: keys$2 } = Object;
|
|
98886
99284
|
const { stringify, parse } = JSON;
|
|
@@ -98971,6 +99369,9 @@
|
|
|
98971
99369
|
return err$4([error]);
|
|
98972
99370
|
}
|
|
98973
99371
|
function validateJsonSchema(data, schema, path = "$", document = schema) {
|
|
99372
|
+
return validateJsonSchemaInternal(data, schema, path, document, /* @__PURE__ */ new Map());
|
|
99373
|
+
}
|
|
99374
|
+
function validateJsonSchemaInternal(data, schema, path, document, visited) {
|
|
98974
99375
|
if (schema === true) return validSchemaResponse();
|
|
98975
99376
|
if (schema === false)
|
|
98976
99377
|
return invalidSchemaResponseWithError(
|
|
@@ -98979,22 +99380,22 @@
|
|
|
98979
99380
|
const dataType = data === null ? "null" : Array.isArray(data) ? "array" : typeof data;
|
|
98980
99381
|
const errorCollector = new JsonSchemaErrorCollector();
|
|
98981
99382
|
if ("anyOf" in schema) {
|
|
98982
|
-
errorCollector.append(validateAnyOf(data, schema, path, document));
|
|
99383
|
+
errorCollector.append(validateAnyOf(data, schema, path, document, visited));
|
|
98983
99384
|
} else if ("oneOf" in schema) {
|
|
98984
|
-
errorCollector.append(validateOneOf(data, schema, path, document));
|
|
99385
|
+
errorCollector.append(validateOneOf(data, schema, path, document, visited));
|
|
98985
99386
|
} else if ("allOf" in schema) {
|
|
98986
|
-
errorCollector.append(validateAllOf(data, schema, path, document));
|
|
99387
|
+
errorCollector.append(validateAllOf(data, schema, path, document, visited));
|
|
98987
99388
|
} else if ("not" in schema) {
|
|
98988
|
-
errorCollector.append(validateNot(data, schema, path, document));
|
|
99389
|
+
errorCollector.append(validateNot(data, schema, path, document, visited));
|
|
98989
99390
|
} else if ("$ref" in schema) {
|
|
98990
|
-
errorCollector.append(validateRef(data, schema, path, document));
|
|
99391
|
+
errorCollector.append(validateRef(data, schema, path, document, visited));
|
|
98991
99392
|
} else if ("type" in schema) {
|
|
98992
99393
|
if (schema.type === "object") {
|
|
98993
99394
|
if (dataType !== "object") {
|
|
98994
99395
|
errorCollector.add(incorrectTypeError("object", dataType, path));
|
|
98995
99396
|
} else {
|
|
98996
99397
|
errorCollector.append(
|
|
98997
|
-
validateObject(data, schema, path, document)
|
|
99398
|
+
validateObject(data, schema, path, document, visited)
|
|
98998
99399
|
);
|
|
98999
99400
|
}
|
|
99000
99401
|
} else if (schema.type === "array") {
|
|
@@ -99002,7 +99403,7 @@
|
|
|
99002
99403
|
errorCollector.add(incorrectTypeError("array", dataType, path));
|
|
99003
99404
|
} else {
|
|
99004
99405
|
errorCollector.append(
|
|
99005
|
-
validateArray(data, schema, path, document)
|
|
99406
|
+
validateArray(data, schema, path, document, visited)
|
|
99006
99407
|
);
|
|
99007
99408
|
}
|
|
99008
99409
|
} else {
|
|
@@ -99019,16 +99420,17 @@
|
|
|
99019
99420
|
}
|
|
99020
99421
|
return errorCollector.toValidationResponse();
|
|
99021
99422
|
}
|
|
99022
|
-
function validateAnyOf(data, schema, path, document) {
|
|
99423
|
+
function validateAnyOf(data, schema, path, document, visited) {
|
|
99023
99424
|
let isValid = false;
|
|
99024
99425
|
const errorCollector = new JsonSchemaErrorCollector();
|
|
99025
99426
|
for (let i = 0, { length } = schema.anyOf; i < length; i++) {
|
|
99026
99427
|
const element = schema.anyOf[i];
|
|
99027
|
-
const validationResponse =
|
|
99428
|
+
const validationResponse = validateJsonSchemaInternal(
|
|
99028
99429
|
data,
|
|
99029
99430
|
element,
|
|
99030
99431
|
`${path}.anyOf[${i}]`,
|
|
99031
|
-
document
|
|
99432
|
+
document,
|
|
99433
|
+
visited
|
|
99032
99434
|
);
|
|
99033
99435
|
if (validationResponse.isOk()) {
|
|
99034
99436
|
isValid = true;
|
|
@@ -99045,13 +99447,22 @@
|
|
|
99045
99447
|
}
|
|
99046
99448
|
return validSchemaResponse();
|
|
99047
99449
|
}
|
|
99048
|
-
function validateOneOf(data, schema, path, document) {
|
|
99450
|
+
function validateOneOf(data, schema, path, document, visited) {
|
|
99451
|
+
if (schema.discriminator !== void 0) {
|
|
99452
|
+
return validateDiscriminatedOneOf(data, schema.discriminator, path, document, visited);
|
|
99453
|
+
}
|
|
99049
99454
|
let validSubShemaPaths = [];
|
|
99050
99455
|
const errorCollector = new JsonSchemaErrorCollector();
|
|
99051
99456
|
for (let i = 0, { length } = schema.oneOf; i < length; i++) {
|
|
99052
99457
|
const element = schema.oneOf[i];
|
|
99053
99458
|
const oneOfPath = `${path}.oneOf[${i}]`;
|
|
99054
|
-
const validationResponse =
|
|
99459
|
+
const validationResponse = validateJsonSchemaInternal(
|
|
99460
|
+
data,
|
|
99461
|
+
element,
|
|
99462
|
+
oneOfPath,
|
|
99463
|
+
document,
|
|
99464
|
+
visited
|
|
99465
|
+
);
|
|
99055
99466
|
if (validationResponse.isOk()) {
|
|
99056
99467
|
validSubShemaPaths.push(oneOfPath);
|
|
99057
99468
|
} else {
|
|
@@ -99073,16 +99484,45 @@
|
|
|
99073
99484
|
}
|
|
99074
99485
|
return validSchemaResponse();
|
|
99075
99486
|
}
|
|
99076
|
-
function
|
|
99487
|
+
function validateDiscriminatedOneOf(data, discriminator, path, document, visited) {
|
|
99488
|
+
if (data === null || typeof data !== "object" || Array.isArray(data)) {
|
|
99489
|
+
return invalidSchemaResponseWithError(incorrectTypeError("object", typeof data, path));
|
|
99490
|
+
}
|
|
99491
|
+
const { propertyName, mapping } = discriminator;
|
|
99492
|
+
const discriminatorValue = data[propertyName];
|
|
99493
|
+
if (discriminatorValue === void 0) {
|
|
99494
|
+
return invalidSchemaResponseWithError(
|
|
99495
|
+
new MissingRequiredPropertyError(
|
|
99496
|
+
`Object at path '${path}' is missing required discriminator property '${propertyName}'.`
|
|
99497
|
+
)
|
|
99498
|
+
);
|
|
99499
|
+
}
|
|
99500
|
+
if (typeof discriminatorValue !== "string") {
|
|
99501
|
+
return invalidSchemaResponseWithError(
|
|
99502
|
+
incorrectTypeError("string", typeof discriminatorValue, `${path}.${propertyName}`)
|
|
99503
|
+
);
|
|
99504
|
+
}
|
|
99505
|
+
const targetRef = mapping[discriminatorValue];
|
|
99506
|
+
if (targetRef === void 0) {
|
|
99507
|
+
return invalidSchemaResponseWithError(
|
|
99508
|
+
new JsonSchemaViolationError(
|
|
99509
|
+
`Discriminator value '${discriminatorValue}' at '${path}.${propertyName}' is not in the mapping. Expected one of: [${Object.keys(mapping).join(", ")}].`
|
|
99510
|
+
)
|
|
99511
|
+
);
|
|
99512
|
+
}
|
|
99513
|
+
return validateJsonSchemaInternal(data, { $ref: targetRef }, path, document, visited);
|
|
99514
|
+
}
|
|
99515
|
+
function validateAllOf(data, schema, path, document, visited) {
|
|
99077
99516
|
let isValid = true;
|
|
99078
99517
|
const errorCollector = new JsonSchemaErrorCollector();
|
|
99079
99518
|
for (let i = 0, { length } = schema.allOf; i < length; i++) {
|
|
99080
99519
|
const element = schema.allOf[i];
|
|
99081
|
-
const validationResponse =
|
|
99520
|
+
const validationResponse = validateJsonSchemaInternal(
|
|
99082
99521
|
data,
|
|
99083
99522
|
element,
|
|
99084
99523
|
`${path}.allOf[${i}]`,
|
|
99085
|
-
document
|
|
99524
|
+
document,
|
|
99525
|
+
visited
|
|
99086
99526
|
);
|
|
99087
99527
|
if (!validationResponse.isOk()) {
|
|
99088
99528
|
errorCollector.append(validationResponse);
|
|
@@ -99096,8 +99536,14 @@
|
|
|
99096
99536
|
}
|
|
99097
99537
|
return errorCollector.toValidationResponse();
|
|
99098
99538
|
}
|
|
99099
|
-
function validateNot(data, schema, path, document) {
|
|
99100
|
-
const validationResponse =
|
|
99539
|
+
function validateNot(data, schema, path, document, visited) {
|
|
99540
|
+
const validationResponse = validateJsonSchemaInternal(
|
|
99541
|
+
data,
|
|
99542
|
+
schema.not,
|
|
99543
|
+
path,
|
|
99544
|
+
document,
|
|
99545
|
+
visited
|
|
99546
|
+
);
|
|
99101
99547
|
if (validationResponse.isOk()) {
|
|
99102
99548
|
return invalidSchemaResponseWithError(
|
|
99103
99549
|
new JsonSchemaViolationError(
|
|
@@ -99107,7 +99553,7 @@
|
|
|
99107
99553
|
}
|
|
99108
99554
|
return validSchemaResponse();
|
|
99109
99555
|
}
|
|
99110
|
-
function validateObject(data, schema, path, document) {
|
|
99556
|
+
function validateObject(data, schema, path, document, visited) {
|
|
99111
99557
|
const schemaKeys = Object.keys(schema.properties);
|
|
99112
99558
|
const requiredKeys = new Set(schema.required);
|
|
99113
99559
|
const schemaKeySet = new Set(schemaKeys);
|
|
@@ -99115,11 +99561,12 @@
|
|
|
99115
99561
|
Object.keys(data).forEach((key) => {
|
|
99116
99562
|
if (!schemaKeySet.has(key)) {
|
|
99117
99563
|
errorCollector.append(
|
|
99118
|
-
|
|
99564
|
+
validateJsonSchemaInternal(
|
|
99119
99565
|
data[key],
|
|
99120
99566
|
schema.additionalProperties,
|
|
99121
99567
|
`${path}.additionalProperties[${key}]`,
|
|
99122
|
-
document
|
|
99568
|
+
document,
|
|
99569
|
+
visited
|
|
99123
99570
|
)
|
|
99124
99571
|
);
|
|
99125
99572
|
}
|
|
@@ -99136,18 +99583,19 @@
|
|
|
99136
99583
|
}
|
|
99137
99584
|
if (keyInData) {
|
|
99138
99585
|
errorCollector.append(
|
|
99139
|
-
|
|
99586
|
+
validateJsonSchemaInternal(
|
|
99140
99587
|
data[key],
|
|
99141
99588
|
schema.properties[key],
|
|
99142
99589
|
`${path}.${key}`,
|
|
99143
|
-
document
|
|
99590
|
+
document,
|
|
99591
|
+
visited
|
|
99144
99592
|
)
|
|
99145
99593
|
);
|
|
99146
99594
|
}
|
|
99147
99595
|
}
|
|
99148
99596
|
return errorCollector.toValidationResponse();
|
|
99149
99597
|
}
|
|
99150
|
-
function validateArray(data, schema, path, document) {
|
|
99598
|
+
function validateArray(data, schema, path, document, visited) {
|
|
99151
99599
|
if (schema.minItems !== void 0 && data.length < schema.minItems) {
|
|
99152
99600
|
return invalidSchemaResponseWithError(
|
|
99153
99601
|
new MinItemsViolationError(
|
|
@@ -99165,7 +99613,13 @@
|
|
|
99165
99613
|
const errorCollector = new JsonSchemaErrorCollector();
|
|
99166
99614
|
data.forEach(
|
|
99167
99615
|
(element, index) => errorCollector.append(
|
|
99168
|
-
|
|
99616
|
+
validateJsonSchemaInternal(
|
|
99617
|
+
element,
|
|
99618
|
+
schema.items,
|
|
99619
|
+
`${path}[${index}]`,
|
|
99620
|
+
document,
|
|
99621
|
+
visited
|
|
99622
|
+
)
|
|
99169
99623
|
)
|
|
99170
99624
|
);
|
|
99171
99625
|
return errorCollector.toValidationResponse();
|
|
@@ -99200,7 +99654,7 @@
|
|
|
99200
99654
|
}
|
|
99201
99655
|
return validSchemaResponse();
|
|
99202
99656
|
}
|
|
99203
|
-
function validateRef(data, schema, path, document) {
|
|
99657
|
+
function validateRef(data, schema, path, document, visited) {
|
|
99204
99658
|
if (!schema.$ref.startsWith("#")) {
|
|
99205
99659
|
return invalidSchemaResponseWithError(
|
|
99206
99660
|
new InvalidRefError(
|
|
@@ -99208,11 +99662,23 @@
|
|
|
99208
99662
|
)
|
|
99209
99663
|
);
|
|
99210
99664
|
}
|
|
99665
|
+
let refsForData = visited.get(data);
|
|
99666
|
+
if (refsForData !== void 0 && refsForData.has(schema.$ref)) {
|
|
99667
|
+
return validSchemaResponse();
|
|
99668
|
+
}
|
|
99669
|
+
if (refsForData === void 0) {
|
|
99670
|
+
refsForData = /* @__PURE__ */ new Set();
|
|
99671
|
+
visited.set(data, refsForData);
|
|
99672
|
+
}
|
|
99673
|
+
refsForData.add(schema.$ref);
|
|
99211
99674
|
try {
|
|
99212
99675
|
const schemaToValidate = findSchemaAtPath(document, schema.$ref);
|
|
99213
|
-
return
|
|
99676
|
+
return validateJsonSchemaInternal(data, schemaToValidate, path, document, visited);
|
|
99214
99677
|
} catch (e) {
|
|
99215
99678
|
return invalidSchemaResponseWithError(e);
|
|
99679
|
+
} finally {
|
|
99680
|
+
refsForData.delete(schema.$ref);
|
|
99681
|
+
if (refsForData.size === 0) visited.delete(data);
|
|
99216
99682
|
}
|
|
99217
99683
|
}
|
|
99218
99684
|
function validateEnum(data, enumValue, path) {
|
|
@@ -101426,6 +101892,7 @@
|
|
|
101426
101892
|
RecordOperations: new BaseArrayFieldDef(new BaseScalarFieldDef(true), true),
|
|
101427
101893
|
AssetApiName: new BaseScalarFieldDef(true),
|
|
101428
101894
|
DloActiveStatus: new BaseScalarFieldDef(true),
|
|
101895
|
+
ReusedAssetStatus: new BaseScalarFieldDef(true),
|
|
101429
101896
|
};
|
|
101430
101897
|
}
|
|
101431
101898
|
get possibleTypes() {
|
|
@@ -101467,6 +101934,7 @@
|
|
|
101467
101934
|
Dataspaces: new BaseArrayFieldDef(new BaseObjectFieldDef(this.typeRegistry.Analytics__DataspaceRepresentation, true), true),
|
|
101468
101935
|
AssetApiName: new BaseScalarFieldDef(true),
|
|
101469
101936
|
DloActiveStatus: new BaseScalarFieldDef(true),
|
|
101937
|
+
ReusedAssetStatus: new BaseScalarFieldDef(true),
|
|
101470
101938
|
};
|
|
101471
101939
|
}
|
|
101472
101940
|
get cacheControl() {
|
|
@@ -101616,6 +102084,7 @@
|
|
|
101616
102084
|
RecordOperations: new BaseArrayFieldDef(new BaseScalarFieldDef(true), true),
|
|
101617
102085
|
AssetApiName: new BaseScalarFieldDef(true),
|
|
101618
102086
|
DloActiveStatus: new BaseScalarFieldDef(true),
|
|
102087
|
+
ReusedAssetStatus: new BaseScalarFieldDef(true),
|
|
101619
102088
|
};
|
|
101620
102089
|
}
|
|
101621
102090
|
get cacheControl() {
|
|
@@ -101652,6 +102121,7 @@
|
|
|
101652
102121
|
DataConnectorType: new BaseObjectFieldDef(this.typeRegistry.StringValue, true),
|
|
101653
102122
|
AssetApiName: new BaseScalarFieldDef(true),
|
|
101654
102123
|
DloActiveStatus: new BaseScalarFieldDef(true),
|
|
102124
|
+
ReusedAssetStatus: new BaseScalarFieldDef(true),
|
|
101655
102125
|
};
|
|
101656
102126
|
}
|
|
101657
102127
|
get cacheControl() {
|
|
@@ -101690,6 +102160,7 @@
|
|
|
101690
102160
|
RecordOperations: new BaseArrayFieldDef(new BaseScalarFieldDef(true), true),
|
|
101691
102161
|
AssetApiName: new BaseScalarFieldDef(true),
|
|
101692
102162
|
DloActiveStatus: new BaseScalarFieldDef(true),
|
|
102163
|
+
ReusedAssetStatus: new BaseScalarFieldDef(true),
|
|
101693
102164
|
};
|
|
101694
102165
|
}
|
|
101695
102166
|
get cacheControl() {
|
|
@@ -101788,6 +102259,7 @@
|
|
|
101788
102259
|
RecordOperations: new BaseArrayFieldDef(new BaseScalarFieldDef(true), true),
|
|
101789
102260
|
AssetApiName: new BaseScalarFieldDef(true),
|
|
101790
102261
|
DloActiveStatus: new BaseScalarFieldDef(true),
|
|
102262
|
+
ReusedAssetStatus: new BaseScalarFieldDef(true),
|
|
101791
102263
|
};
|
|
101792
102264
|
}
|
|
101793
102265
|
get cacheControl() {
|
|
@@ -106370,6 +106842,11 @@
|
|
|
106370
106842
|
Object.entries(this.latestUsedRecordIdToWeakEtagMap).forEach(([recordId, oneStoreRecordWeakEtag]) => {
|
|
106371
106843
|
const normalizedLuvioRecord = this.services.luvioUiapiRecords.getNormalizedLuvioRecord(recordId, reader);
|
|
106372
106844
|
if (!normalizedLuvioRecord) {
|
|
106845
|
+
// A record that was present when this snapshot was read
|
|
106846
|
+
// is now absent from the Luvio store (e.g. evicted by a
|
|
106847
|
+
// uiRecordApi deleteRecord). Its disappearance changes the
|
|
106848
|
+
// result set, so treat it as a change and re-emit.
|
|
106849
|
+
dataChanged = true;
|
|
106373
106850
|
return;
|
|
106374
106851
|
}
|
|
106375
106852
|
const luvioRecordWeakEtag = normalizedLuvioRecord.weakEtag;
|
|
@@ -106818,7 +107295,7 @@
|
|
|
106818
107295
|
_(config, CONFIG_SCHEMA);
|
|
106819
107296
|
const baseCommand = new graphql_imperative_ctor(config, documentRootType, services);
|
|
106820
107297
|
return applyDecorators(baseCommand, [services.fetchNetworkCommandBaseClass.availableDecorators.abortable], options);
|
|
106821
|
-
},
|
|
107298
|
+
}, true);
|
|
106822
107299
|
graphql_imperative_legacy = services.graphQLLegacyImperativeBindings.bind(({ config, assertIsValid }) => {
|
|
106823
107300
|
const _ = assertIsValid;
|
|
106824
107301
|
_(config, CONFIG_SCHEMA);
|
|
@@ -106871,7 +107348,7 @@
|
|
|
106871
107348
|
cb(graphql_v1_import, graphql_imperative$1, graphql_imperative_legacy_v1_import, graphql_state_manager, useOneStoreGraphQL);
|
|
106872
107349
|
}
|
|
106873
107350
|
}
|
|
106874
|
-
// version: 1.428.0-
|
|
107351
|
+
// version: 1.428.0-dev20-d72ac06681
|
|
106875
107352
|
|
|
106876
107353
|
function createFragmentMap(documentNode) {
|
|
106877
107354
|
const fragments = {};
|
|
@@ -110933,7 +111410,7 @@
|
|
|
110933
111410
|
}
|
|
110934
111411
|
|
|
110935
111412
|
const name$1k = 'Analytics__SemanticModel';
|
|
110936
|
-
const VERSION$1B = '
|
|
111413
|
+
const VERSION$1B = '0c41256ae05a32ed1af0deea45e4906e';
|
|
110937
111414
|
function keyBuilder$1p(luvio, path, data) {
|
|
110938
111415
|
return keyPrefix$1 + '::uiapi::' + name$1k + '::' + data.Id; // We're missing idNodeName in the actual key here...
|
|
110939
111416
|
}
|
|
@@ -111249,6 +111726,12 @@
|
|
|
111249
111726
|
typename: 'Boolean'
|
|
111250
111727
|
};
|
|
111251
111728
|
}
|
|
111729
|
+
case 'ReusedAssetStatus': {
|
|
111730
|
+
return {
|
|
111731
|
+
isArray: false,
|
|
111732
|
+
typename: 'String'
|
|
111733
|
+
};
|
|
111734
|
+
}
|
|
111252
111735
|
default:
|
|
111253
111736
|
return undefined;
|
|
111254
111737
|
}
|
|
@@ -111315,7 +111798,7 @@
|
|
|
111315
111798
|
}
|
|
111316
111799
|
|
|
111317
111800
|
const name$1j = 'Analytics__SemanticDefinition';
|
|
111318
|
-
const VERSION$1A = '
|
|
111801
|
+
const VERSION$1A = 'df1ed427fbc57558390ff0e3537f2290';
|
|
111319
111802
|
function keyBuilder$1o(luvio, path, data) {
|
|
111320
111803
|
return keyPrefix$1 + '::uiapi::' + name$1j + '::' + data.Id; // We're missing idNodeName in the actual key here...
|
|
111321
111804
|
}
|
|
@@ -111657,6 +112140,12 @@
|
|
|
111657
112140
|
typename: 'Boolean'
|
|
111658
112141
|
};
|
|
111659
112142
|
}
|
|
112143
|
+
case 'ReusedAssetStatus': {
|
|
112144
|
+
return {
|
|
112145
|
+
isArray: false,
|
|
112146
|
+
typename: 'String'
|
|
112147
|
+
};
|
|
112148
|
+
}
|
|
111660
112149
|
default:
|
|
111661
112150
|
return undefined;
|
|
111662
112151
|
}
|
|
@@ -111728,7 +112217,7 @@
|
|
|
111728
112217
|
}
|
|
111729
112218
|
|
|
111730
112219
|
const name$1i = 'Analytics__DominoTemplate';
|
|
111731
|
-
const VERSION$1z = '
|
|
112220
|
+
const VERSION$1z = 'fda433601cadf10ecc8a0de3d54052ee';
|
|
111732
112221
|
function keyBuilder$1n(luvio, path, data) {
|
|
111733
112222
|
return keyPrefix$1 + '::uiapi::' + name$1i + '::' + data.Id; // We're missing idNodeName in the actual key here...
|
|
111734
112223
|
}
|
|
@@ -112051,6 +112540,12 @@
|
|
|
112051
112540
|
typename: 'Boolean'
|
|
112052
112541
|
};
|
|
112053
112542
|
}
|
|
112543
|
+
case 'ReusedAssetStatus': {
|
|
112544
|
+
return {
|
|
112545
|
+
isArray: false,
|
|
112546
|
+
typename: 'String'
|
|
112547
|
+
};
|
|
112548
|
+
}
|
|
112054
112549
|
default:
|
|
112055
112550
|
return undefined;
|
|
112056
112551
|
}
|
|
@@ -112112,7 +112607,7 @@
|
|
|
112112
112607
|
}
|
|
112113
112608
|
|
|
112114
112609
|
const name$1h = 'Analytics__AnalyticsRepresentation';
|
|
112115
|
-
const VERSION$1y = '
|
|
112610
|
+
const VERSION$1y = 'b299cf324d3e10f682533db156b3db05';
|
|
112116
112611
|
function keyBuilder$1m(luvio, path, data) {
|
|
112117
112612
|
return keyPrefix$1 + '::uiapi::' + name$1h + '::' + data.Id; // We're missing idNodeName in the actual key here...
|
|
112118
112613
|
}
|
|
@@ -112413,6 +112908,12 @@
|
|
|
112413
112908
|
typename: 'Boolean'
|
|
112414
112909
|
};
|
|
112415
112910
|
}
|
|
112911
|
+
case 'ReusedAssetStatus': {
|
|
112912
|
+
return {
|
|
112913
|
+
isArray: false,
|
|
112914
|
+
typename: 'String'
|
|
112915
|
+
};
|
|
112916
|
+
}
|
|
112416
112917
|
default:
|
|
112417
112918
|
return undefined;
|
|
112418
112919
|
}
|
|
@@ -112474,7 +112975,7 @@
|
|
|
112474
112975
|
}
|
|
112475
112976
|
|
|
112476
112977
|
const name$1g = 'Analytics__MktDataConnector';
|
|
112477
|
-
const VERSION$1x = '
|
|
112978
|
+
const VERSION$1x = 'b0f45c68439021ded5640b5e3920ee2f';
|
|
112478
112979
|
function keyBuilder$1l(luvio, path, data) {
|
|
112479
112980
|
return keyPrefix$1 + '::uiapi::' + name$1g + '::' + data.Id; // We're missing idNodeName in the actual key here...
|
|
112480
112981
|
}
|
|
@@ -112786,6 +113287,12 @@
|
|
|
112786
113287
|
typename: 'Boolean'
|
|
112787
113288
|
};
|
|
112788
113289
|
}
|
|
113290
|
+
case 'ReusedAssetStatus': {
|
|
113291
|
+
return {
|
|
113292
|
+
isArray: false,
|
|
113293
|
+
typename: 'String'
|
|
113294
|
+
};
|
|
113295
|
+
}
|
|
112789
113296
|
default:
|
|
112790
113297
|
return undefined;
|
|
112791
113298
|
}
|
|
@@ -113023,6 +113530,12 @@
|
|
|
113023
113530
|
typename: 'Boolean'
|
|
113024
113531
|
};
|
|
113025
113532
|
}
|
|
113533
|
+
case 'ReusedAssetStatus': {
|
|
113534
|
+
return {
|
|
113535
|
+
isArray: false,
|
|
113536
|
+
typename: 'String'
|
|
113537
|
+
};
|
|
113538
|
+
}
|
|
113026
113539
|
default:
|
|
113027
113540
|
return undefined;
|
|
113028
113541
|
}
|
|
@@ -136108,7 +136621,7 @@
|
|
|
136108
136621
|
configuration: { ...configurationForGraphQLAdapters$1 },
|
|
136109
136622
|
instrument: instrument$1,
|
|
136110
136623
|
});
|
|
136111
|
-
// version: 1.428.0-
|
|
136624
|
+
// version: 1.428.0-dev20-d72ac06681
|
|
136112
136625
|
|
|
136113
136626
|
// On core the unstable adapters are re-exported with different names,
|
|
136114
136627
|
// we want to match them here.
|
|
@@ -136260,7 +136773,7 @@
|
|
|
136260
136773
|
unstable_graphQL_imperative = createImperativeAdapter(luvio, createInstrumentedAdapter(ldsAdapter, adapterMetadata), adapterMetadata);
|
|
136261
136774
|
graphQLImperative = ldsAdapter;
|
|
136262
136775
|
});
|
|
136263
|
-
// version: 1.428.0-
|
|
136776
|
+
// version: 1.428.0-dev20-d72ac06681
|
|
136264
136777
|
|
|
136265
136778
|
var gqlApi = /*#__PURE__*/Object.freeze({
|
|
136266
136779
|
__proto__: null,
|
|
@@ -137059,7 +137572,7 @@
|
|
|
137059
137572
|
function register(r) {
|
|
137060
137573
|
callbacks$1.forEach((callback) => callback(r));
|
|
137061
137574
|
}
|
|
137062
|
-
// version: 1.428.0-
|
|
137575
|
+
// version: 1.428.0-dev20-1b319a0432
|
|
137063
137576
|
|
|
137064
137577
|
/**
|
|
137065
137578
|
* Copyright (c) 2022, Salesforce, Inc.,
|
|
@@ -138396,4 +138909,4 @@
|
|
|
138396
138909
|
exports.subscribeToAdapter = subscribeToAdapter;
|
|
138397
138910
|
|
|
138398
138911
|
}));
|
|
138399
|
-
// version: 1.428.0-
|
|
138912
|
+
// version: 1.428.0-dev20-1b319a0432
|