relay-runtime
Version:
A core runtime for building GraphQL-driven applications.
236 lines (235 loc) • 11.9 kB
JavaScript
'use strict';
var _require = require('./experimental'),
isErrorResult = _require.isErrorResult,
isValueResult = _require.isValueResult;
var ConnectionHandler = require('./handlers/connection/ConnectionHandler');
var ConnectionInterface = require('./handlers/connection/ConnectionInterface');
var MutationHandlers = require('./handlers/connection/MutationHandlers');
var RelayDefaultHandlerProvider = require('./handlers/RelayDefaultHandlerProvider');
var applyOptimisticMutation = require('./mutations/applyOptimisticMutation');
var commitLocalUpdate = require('./mutations/commitLocalUpdate');
var commitMutation = require('./mutations/commitMutation');
var RelayDeclarativeMutationConfig = require('./mutations/RelayDeclarativeMutationConfig');
var RelayNetwork = require('./network/RelayNetwork');
var RelayObservable = require('./network/RelayObservable');
var RelayQueryResponseCache = require('./network/RelayQueryResponseCache');
var fetchQuery = require('./query/fetchQuery');
var fetchQuery_DEPRECATED = require('./query/fetchQuery_DEPRECATED');
var fetchQueryInternal = require('./query/fetchQueryInternal');
var GraphQLTag = require('./query/GraphQLTag');
var PreloadableQueryRegistry = require('./query/PreloadableQueryRegistry');
var _require2 = require('./store/ClientID'),
generateClientID = _require2.generateClientID,
generateUniqueClientID = _require2.generateUniqueClientID,
isClientID = _require2.isClientID;
var createFragmentSpecResolver = require('./store/createFragmentSpecResolver');
var createRelayContext = require('./store/createRelayContext');
var createRelayLoggingContext = require('./store/createRelayLoggingContext');
var defaultGetDataID = require('./store/defaultGetDataID');
var isRelayModernEnvironment = require('./store/isRelayModernEnvironment');
var _require3 = require('./store/live-resolvers/LiveResolverSuspenseSentinel'),
isSuspenseSentinel = _require3.isSuspenseSentinel,
suspenseSentinel = _require3.suspenseSentinel;
var NormalizationEngine = require('./store/NormalizationEngine');
var normalizeResponse = require('./store/normalizeResponse');
var readInlineData = require('./store/readInlineData');
var RelayConcreteVariables = require('./store/RelayConcreteVariables');
var RelayModernEnvironment = require('./store/RelayModernEnvironment');
var RelayModernOperationDescriptor = require('./store/RelayModernOperationDescriptor');
var RelayModernRecord = require('./store/RelayModernRecord');
var RelayModernSelector = require('./store/RelayModernSelector');
var RelayModernStore = require('./store/RelayModernStore');
var RelayOperationTracker = require('./store/RelayOperationTracker');
var RelayRecordSource = require('./store/RelayRecordSource');
var RelayStoreUtils = require('./store/RelayStoreUtils');
var ResolverFragments = require('./store/ResolverFragments');
var ViewerPattern = require('./store/ViewerPattern');
var requestSubscription = require('./subscription/requestSubscription');
var createPayloadFor3DField = require('./util/createPayloadFor3DField');
var deepFreeze = require('./util/deepFreeze');
var getFragmentIdentifier = require('./util/getFragmentIdentifier');
var getPaginationMetadata = require('./util/getPaginationMetadata');
var getPaginationVariables = require('./util/getPaginationVariables');
var getPendingOperationsForFragment = require('./util/getPendingOperationsForFragment');
var getRefetchMetadata = require('./util/getRefetchMetadata');
var getRelayHandleKey = require('./util/getRelayHandleKey');
var getRequestIdentifier = require('./util/getRequestIdentifier');
var getValueAtPath = require('./util/getValueAtPath');
var _require4 = require('./util/handlePotentialSnapshotErrors'),
handlePotentialSnapshotErrors = _require4.handlePotentialSnapshotErrors;
var isPromise = require('./util/isPromise');
var isScalarAndEqual = require('./util/isScalarAndEqual');
var recycleNodesInto = require('./util/recycleNodesInto');
var RelayConcreteNode = require('./util/RelayConcreteNode');
var RelayDefaultHandleKey = require('./util/RelayDefaultHandleKey');
var RelayError = require('./util/RelayError');
var RelayFeatureFlags = require('./util/RelayFeatureFlags');
var RelayProfiler = require('./util/RelayProfiler');
var RelayReplaySubject = require('./util/RelayReplaySubject');
var _require5 = require('./util/stableCopy'),
hasCycle = _require5.hasCycle,
stableCopy = _require5.stableCopy;
var withProvidedVariables = require('./util/withProvidedVariables');
if (process.env.NODE_ENV !== "production") {
var mapStr = typeof Map !== 'function' ? 'Map' : null;
var setStr = typeof Set !== 'function' ? 'Set' : null;
var promiseStr = typeof Promise !== 'function' ? 'Promise' : null;
var objStr = typeof Object.assign !== 'function' ? 'Object.assign' : null;
if (mapStr || setStr || promiseStr || objStr) {
throw new Error("relay-runtime requires ".concat([mapStr, setStr, promiseStr, objStr].filter(Boolean).join(', and '), " to exist. ") + 'Use a polyfill to provide these for older browsers.');
}
}
var areEqualSelectors = RelayModernSelector.areEqualSelectors,
createNormalizationSelector = RelayModernSelector.createNormalizationSelector,
createReaderSelector = RelayModernSelector.createReaderSelector,
getDataIDsFromFragment = RelayModernSelector.getDataIDsFromFragment,
getDataIDsFromObject = RelayModernSelector.getDataIDsFromObject,
getPluralSelector = RelayModernSelector.getPluralSelector,
getSelector = RelayModernSelector.getSelector,
getSelectorsFromObject = RelayModernSelector.getSelectorsFromObject,
getSingularSelector = RelayModernSelector.getSingularSelector,
getVariablesFromFragment = RelayModernSelector.getVariablesFromFragment,
getVariablesFromObject = RelayModernSelector.getVariablesFromObject,
getVariablesFromPluralFragment = RelayModernSelector.getVariablesFromPluralFragment,
getVariablesFromSingularFragment = RelayModernSelector.getVariablesFromSingularFragment;
var createOperationDescriptor = RelayModernOperationDescriptor.createOperationDescriptor,
createRequestDescriptor = RelayModernOperationDescriptor.createRequestDescriptor;
var getArgumentValues = RelayStoreUtils.getArgumentValues,
getModuleComponentKey = RelayStoreUtils.getModuleComponentKey,
getModuleOperationKey = RelayStoreUtils.getModuleOperationKey,
getStorageKey = RelayStoreUtils.getStorageKey,
FRAGMENTS_KEY = RelayStoreUtils.FRAGMENTS_KEY,
FRAGMENT_OWNER_KEY = RelayStoreUtils.FRAGMENT_OWNER_KEY,
ID_KEY = RelayStoreUtils.ID_KEY,
REF_KEY = RelayStoreUtils.REF_KEY,
REFS_KEY = RelayStoreUtils.REFS_KEY,
ROOT_ID = RelayStoreUtils.ROOT_ID,
ROOT_TYPE = RelayStoreUtils.ROOT_TYPE,
TYPENAME_KEY = RelayStoreUtils.TYPENAME_KEY;
var getNode = GraphQLTag.getNode,
getFragment = GraphQLTag.getFragment,
getInlineDataFragment = GraphQLTag.getInlineDataFragment,
getPaginationFragment = GraphQLTag.getPaginationFragment,
getRefetchableFragment = GraphQLTag.getRefetchableFragment,
getRequest = GraphQLTag.getRequest,
graphql = GraphQLTag.graphql,
isFragment = GraphQLTag.isFragment,
isInlineDataFragment = GraphQLTag.isInlineDataFragment,
isRequest = GraphQLTag.isRequest;
var readFragment = ResolverFragments.readFragment;
var DEFAULT_HANDLE_KEY = RelayDefaultHandleKey.DEFAULT_HANDLE_KEY;
var MutationTypes = RelayDeclarativeMutationConfig.MutationTypes,
RangeOperations = RelayDeclarativeMutationConfig.RangeOperations;
var VIEWER_ID = ViewerPattern.VIEWER_ID,
VIEWER_TYPE = ViewerPattern.VIEWER_TYPE;
var __internal = {
ResolverFragments: ResolverFragments,
OperationTracker: RelayOperationTracker,
createRelayContext: createRelayContext,
createRelayLoggingContext: createRelayLoggingContext,
defaultGetDataID: defaultGetDataID,
getOperationVariables: RelayConcreteVariables.getOperationVariables,
getLocalVariables: RelayConcreteVariables.getLocalVariables,
fetchQuery: fetchQueryInternal.fetchQuery,
fetchQueryDeduped: fetchQueryInternal.fetchQueryDeduped,
getPromiseForActiveRequest: fetchQueryInternal.getPromiseForActiveRequest,
getObservableForActiveRequest: fetchQueryInternal.getObservableForActiveRequest,
NormalizationEngine: NormalizationEngine,
normalizeResponse: normalizeResponse,
withProvidedVariables: withProvidedVariables
};
module.exports = {
Environment: RelayModernEnvironment,
Network: RelayNetwork,
Observable: RelayObservable,
QueryResponseCache: RelayQueryResponseCache,
RecordSource: RelayRecordSource,
Record: RelayModernRecord,
ReplaySubject: RelayReplaySubject,
Store: RelayModernStore,
areEqualSelectors: areEqualSelectors,
createFragmentSpecResolver: createFragmentSpecResolver,
createNormalizationSelector: createNormalizationSelector,
createOperationDescriptor: createOperationDescriptor,
createReaderSelector: createReaderSelector,
createRequestDescriptor: createRequestDescriptor,
getArgumentValues: getArgumentValues,
getDataIDsFromFragment: getDataIDsFromFragment,
getDataIDsFromObject: getDataIDsFromObject,
getNode: getNode,
getFragment: getFragment,
getInlineDataFragment: getInlineDataFragment,
getModuleComponentKey: getModuleComponentKey,
getModuleOperationKey: getModuleOperationKey,
getPaginationFragment: getPaginationFragment,
getPluralSelector: getPluralSelector,
getRefetchableFragment: getRefetchableFragment,
getRequest: getRequest,
getRequestIdentifier: getRequestIdentifier,
getSelector: getSelector,
getSelectorsFromObject: getSelectorsFromObject,
getSingularSelector: getSingularSelector,
getStorageKey: getStorageKey,
getVariablesFromFragment: getVariablesFromFragment,
getVariablesFromObject: getVariablesFromObject,
getVariablesFromPluralFragment: getVariablesFromPluralFragment,
getVariablesFromSingularFragment: getVariablesFromSingularFragment,
handlePotentialSnapshotErrors: handlePotentialSnapshotErrors,
graphql: graphql,
isErrorResult: isErrorResult,
isValueResult: isValueResult,
isFragment: isFragment,
isInlineDataFragment: isInlineDataFragment,
isSuspenseSentinel: isSuspenseSentinel,
suspenseSentinel: suspenseSentinel,
isRequest: isRequest,
readInlineData: readInlineData,
readFragment: readFragment,
MutationTypes: MutationTypes,
RangeOperations: RangeOperations,
DefaultHandlerProvider: RelayDefaultHandlerProvider,
ConnectionHandler: ConnectionHandler,
MutationHandlers: MutationHandlers,
VIEWER_ID: VIEWER_ID,
VIEWER_TYPE: VIEWER_TYPE,
applyOptimisticMutation: applyOptimisticMutation,
commitLocalUpdate: commitLocalUpdate,
commitMutation: commitMutation,
fetchQuery: fetchQuery,
fetchQuery_DEPRECATED: fetchQuery_DEPRECATED,
isRelayModernEnvironment: isRelayModernEnvironment,
requestSubscription: requestSubscription,
ConnectionInterface: ConnectionInterface,
PreloadableQueryRegistry: PreloadableQueryRegistry,
RelayProfiler: RelayProfiler,
createPayloadFor3DField: createPayloadFor3DField,
RelayConcreteNode: RelayConcreteNode,
RelayError: RelayError,
RelayFeatureFlags: RelayFeatureFlags,
DEFAULT_HANDLE_KEY: DEFAULT_HANDLE_KEY,
FRAGMENTS_KEY: FRAGMENTS_KEY,
FRAGMENT_OWNER_KEY: FRAGMENT_OWNER_KEY,
ID_KEY: ID_KEY,
REF_KEY: REF_KEY,
REFS_KEY: REFS_KEY,
ROOT_ID: ROOT_ID,
ROOT_TYPE: ROOT_TYPE,
TYPENAME_KEY: TYPENAME_KEY,
deepFreeze: deepFreeze,
generateClientID: generateClientID,
generateUniqueClientID: generateUniqueClientID,
getRelayHandleKey: getRelayHandleKey,
isClientID: isClientID,
isPromise: isPromise,
isScalarAndEqual: isScalarAndEqual,
recycleNodesInto: recycleNodesInto,
stableCopy: stableCopy,
hasCycle: hasCycle,
getFragmentIdentifier: getFragmentIdentifier,
getRefetchMetadata: getRefetchMetadata,
getPaginationMetadata: getPaginationMetadata,
getPaginationVariables: getPaginationVariables,
getPendingOperationsForFragment: getPendingOperationsForFragment,
getValueAtPath: getValueAtPath,
__internal: __internal
};