{"version":3,"sources":["../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@apollo/client/utilities/graphql/directives.js","../node_modules/@apollo/client/utilities/graphql/fragments.js","../node_modules/@apollo/client/utilities/graphql/storeUtils.js","../node_modules/@apollo/client/utilities/graphql/getFromAST.js","../node_modules/@apollo/client/utilities/common/filterInPlace.js","../node_modules/@apollo/client/utilities/graphql/transform.js","../node_modules/@apollo/client/utilities/observables/Observable.js","../node_modules/@apollo/client/utilities/common/mergeDeep.js","../node_modules/@apollo/client/utilities/common/cloneDeep.js","../node_modules/@apollo/client/utilities/common/maybeDeepFreeze.js","../node_modules/@apollo/client/utilities/observables/iteration.js","../node_modules/@apollo/client/utilities/observables/asyncMap.js","../node_modules/@apollo/client/utilities/observables/Concast.js","../node_modules/@apollo/client/utilities/common/arrays.js","../node_modules/@apollo/client/utilities/common/errorHandling.js","../node_modules/@apollo/client/utilities/common/canUse.js","../node_modules/@apollo/client/utilities/common/compact.js","../node_modules/@apollo/client/utilities/index.js","../node_modules/@apollo/client/node_modules/tslib/tslib.es6.js","../node_modules/@apollo/react-components/lib/react-components.esm.js","../node_modules/@apollo/react-components/node_modules/tslib/tslib.es6.js","../node_modules/@babel/runtime/helpers/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@fluentui/theme/lib/fonts/FluentFonts.js","../node_modules/@apollo/react-hoc/node_modules/tslib/tslib.es6.js","../node_modules/@apollo/react-hoc/lib/react-hoc.esm.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@apollo/react-common/lib/react-common.esm.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/@apollo/client/core/networkStatus.js","../node_modules/@apollo/client/cache/inmemory/helpers.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/regenerator/index.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@apollo/client/node_modules/optimism/lib/bundle.esm.js","../node_modules/@apollo/client/node_modules/@wry/equality/lib/equality.esm.js","../node_modules/@apollo/client/link/utils/fromError.js","../node_modules/@apollo/client/link/utils/toPromise.js","../node_modules/@apollo/client/link/utils/fromPromise.js","../node_modules/@apollo/client/link/utils/throwServerError.js","../node_modules/@apollo/client/link/utils/validateOperation.js","../node_modules/@apollo/client/link/utils/createOperation.js","../node_modules/@apollo/client/link/utils/transformOperation.js","../node_modules/@apollo/client/link/utils/index.js","../node_modules/@fluentui/react-focus/lib/components/FocusZone/FocusZone.types.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@apollo/client/link/core/ApolloLink.js","../node_modules/@apollo/client/link/core/index.js","../node_modules/@apollo/client/errors/index.js","../node_modules/@apollo/client/cache/index.js","../node_modules/@apollo/client/node_modules/@wry/context/lib/context.esm.js","../node_modules/@fluentui/dom-utilities/lib/elementContains.js","../node_modules/@apollo/client/cache/inmemory/reactiveVars.js","../node_modules/@fluentui/theme/node_modules/tslib/tslib.es6.js","../node_modules/@fluentui/theme/lib/utilities/makeSemanticColors.js","../node_modules/@fluentui/theme/lib/spacing/DefaultSpacing.js","../node_modules/@fluentui/theme/lib/createTheme.js","../node_modules/@fluentui/theme/lib/mergeThemes.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js","../node_modules/@apollo/client/link/http/serializeFetchParameter.js","../node_modules/@apollo/client/link/http/selectHttpOptionsAndBody.js","../node_modules/@apollo/client/link/http/checkFetcher.js","../node_modules/@apollo/client/link/http/createSignalIfSupported.js","../node_modules/@apollo/client/link/http/selectURI.js","../node_modules/@apollo/client/link/http/rewriteURIForGET.js","../node_modules/@apollo/client/link/http/createHttpLink.js","../node_modules/@apollo/client/link/http/HttpLink.js","../node_modules/@apollo/client/link/http/index.js","../node_modules/@apollo/client/cache/inmemory/policies.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@fluentui/dom-utilities/lib/getParent.js","../node_modules/@fluentui/dom-utilities/lib/getVirtualParent.js","../node_modules/@fluentui/dom-utilities/lib/isVirtualElement.js","../node_modules/@apollo/client/cache/core/cache.js","../node_modules/@apollo/client/cache/core/types/common.js","../node_modules/@apollo/client/core/Reobserver.js","../node_modules/@apollo/client/core/ObservableQuery.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@fluentui/dom-utilities/lib/findElementRecursive.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@fluentui/dom-utilities/lib/setPortalAttribute.js","../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/toPropertyKey.js","../node_modules/@date-io/date-fns/build/index.esm.js","../node_modules/@apollo/client/link/core/empty.js","../node_modules/@apollo/client/link/core/from.js","../node_modules/@apollo/client/link/core/split.js","../node_modules/@apollo/client/link/core/concat.js","../node_modules/@apollo/client/link/core/execute.js","../node_modules/@apollo/client/cache/core/types/Cache.js","../node_modules/@apollo/client/core/MutationStore.js","../node_modules/@apollo/client/core/LocalState.js","../node_modules/@apollo/client/core/QueryInfo.js","../node_modules/@apollo/client/core/QueryManager.js","../node_modules/@apollo/client/core/ApolloClient.js","../node_modules/@apollo/client/version.js","../node_modules/@apollo/client/cache/inmemory/entityStore.js","../node_modules/@apollo/client/cache/inmemory/readFromStore.js","../node_modules/@apollo/client/cache/inmemory/writeToStore.js","../node_modules/@apollo/client/cache/inmemory/inMemoryCache.js","../node_modules/@fluentui/theme/lib/fonts/createFontStyles.js","../node_modules/@babel/runtime/helpers/get.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@formatjs/intl-utils/lib/invariant.js","../node_modules/@date-io/moment/build/index.esm.js","../node_modules/@babel/runtime/helpers/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/iterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/toPrimitive.js","../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/superPropBase.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/classCallCheck.js","../node_modules/@babel/runtime/helpers/createClass.js","../node_modules/@babel/runtime/helpers/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/inherits.js","../node_modules/@apollo/client/core/index.js","../node_modules/@apollo/client/utilities/common/environment.js","../node_modules/@fluentui/dom-utilities/lib/elementContainsAttribute.js","../node_modules/@formatjs/intl-utils/lib/diff.js","../node_modules/@fluentui/theme/lib/motion/AnimationStyles.js","../node_modules/@fluentui/theme/lib/colors/DefaultPalette.js","../node_modules/@fluentui/theme/lib/fonts/DefaultFontStyles.js","../node_modules/@fluentui/react-window-provider/lib/WindowProvider.js","../node_modules/@fluentui/dom-utilities/lib/setVirtualParent.js","../node_modules/@fluentui/dom-utilities/lib/portalContainsElement.js","../node_modules/@fluentui/theme/lib/effects/FluentDepths.js","../node_modules/@fluentui/theme/lib/effects/DefaultEffects.js","../node_modules/@fluentui/react-focus/node_modules/tslib/tslib.es6.js","../node_modules/@fluentui/react-focus/lib/components/FocusZone/FocusZone.js","../node_modules/@apollo/react-hooks/node_modules/tslib/tslib.es6.js","../node_modules/@apollo/react-hooks/lib/react-hooks.esm.js","../node_modules/@babel/runtime/helpers/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/interopRequireDefault.js","../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/interopRequireWildcard.js","../node_modules/@babel/runtime/helpers/objectSpread.js","../node_modules/@babel/runtime/helpers/extends.js"],"names":["_slicedToArray","arr","i","arrayWithHoles","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","Object","done","push","value","length","err","unsupportedIterableToArray","nonIterableRest","shouldInclude","_a","variables","directives","result","forEach","directive","name","isInclusionDirective","directiveArguments","arguments","ifArgument","ifValue","kind","getInclusionDirectives","every","evaledValue","hasDirectives","names","root","Directive","node","getDirectiveNames","some","indexOf","hasClientExports","document","getFragmentQueryDocument","fragmentName","actualFragmentName","fragments","definitions","definition","operation","selectionSet","selections","createFragmentMap","symTable","fragment","getFragmentFromSelection","selection","fragmentMap","makeReference","id","__ref","String","isReference","obj","Boolean","valueToObjectRepresentation","argObj","isIntValue","isFloatValue","Number","isBooleanValue","isStringValue","isObjectValue","nestedArgObj_1","fields","map","isVariable","variableValue","isListValue","values","listValue","nestedArgArrayObj","isEnumValue","isNullValue","storeKeyNameFromField","field","directivesObj","getStoreKeyName","KNOWN_DIRECTIVES","fieldName","args","filterKeys","sort","filteredArgs_1","key","JSON","stringify","completeFieldName","stringifiedArgs","keys","argumentsObjectFromField","argObj_1","resultKeyNameFromField","alias","getTypenameFromResult","__typename","isField","typename","isInlineFragment","checkDocument","doc","operations","filter","d","getOperationDefinition","getOperationName","x","getFragmentDefinitions","getQueryDefinition","queryDef","getMainDefinition","queryDoc","fragmentDefinition","getDefaultValues","defaultValues","create","defs","variableDefinitions","def","defaultValue","variable","filterInPlace","array","test","context","target","elem","this","TYPENAME_FIELD","nullIfDocIsEmpty","isEmpty","op","fragmentDef","getFragmentDefinition","getDirectiveMatcher","dir","removeDirectivesFromDocument","variablesInUse","variablesToRemove","fragmentSpreadsInUse","fragmentSpreadsToRemove","modifiedDoc","Variable","enter","_key","parent","Field","remove","arg","getAllFragmentSpreadsFromSelectionSet","allFragments","frag","FragmentSpread","v","config","argMatcher","argument","aConfig","getArgumentMatcher","OperationDefinition","varDef","argConfig","argMatchCount_1","Argument","removeArgumentsFromDocument","fs","FragmentDefinition","removeFragmentSpreadFromDocument","addTypenameToDocument","SelectionSet","lastIndexOf","added","connectionRemoveConfig","willRemove","removeConnectionDirectiveFromDocument","buildQueryFromSelectionSet","removeClientSetsFromDocument","prototype","hasOwnProperty","mergeDeep","sources","mergeDeepArray","count","merger","merge","isObject","defaultReconciler","source","property","DeepMerger","reconciler","pastCopies","Set","_this","sourceKey","targetValue","apply","shallowCopyForMerge","has","Array","isArray","slice","__proto__","getPrototypeOf","add","toString","cloneDeep","cloneDeepHelper","val","seen","Map","get","copy_1","set","child","copy_2","maybeDeepFreeze","iterateObserversSafely","observers","method","observersWithMethod","obs","asyncMap","observable","mapFn","catchFn","observer","error","complete","activeCallbackCount","completed","makeCallback","examiner","delegate","Promise","resolve","then","handler","e","sub","subscribe","unsubscribe","isPromiseLike","_super","Concast","addObserver","removeObserver","promise","reject","handlers","latest","shift","cancel","reason","catch","_","iterable","start","from","nextOrError","quietly","delete","size","Error","cleanup","callback","called","once","isNonEmptyArray","graphQLResultHasError","errors","species","defineProperty","canUseWeakMap","WeakMap","navigator","product","compact","objects","extendStatics","b","setPrototypeOf","p","__extends","__","constructor","__assign","assign","t","s","n","__rest","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","fulfilled","step","rejected","__generator","body","f","y","g","label","sent","trys","ops","verb","TypeError","pop","__spreadArrays","il","r","k","a","j","jl","props","children","query","options","mutation","runMutation","subscription","propTypes","client","object","func","isRequired","fetchPolicy","string","notifyOnNetworkStatusChange","bool","onCompleted","onError","pollInterval","number","ssr","partialRefetch","returnPartialData","optimisticResponse","oneOfType","refetchQueries","arrayOf","awaitRefetchQueries","update","onSubscriptionData","onSubscriptionComplete","shouldResubscribe","toPropertyKey","module","exports","enumerable","configurable","writable","__esModule","_defineProperty","LocalizedFontNames","LocalizedFontFamilies","FontSizes","FontWeights","IconFontSizes","Arabic","Cyrillic","EastEuropean","Greek","Hebrew","Thai","Vietnamese","WestEuropean","Selawik","Armenian","Georgian","ChineseSimplified","ChineseTraditional","Hindi","Japanese","Korean","size10","size12","size14","size16","size18","size20","size24","size28","size32","size42","size68","mini","xSmall","small","smallPlus","medium","mediumPlus","icon","large","xLarge","xLargePlus","xxLarge","xxLargePlus","superLarge","mega","light","semilight","regular","semibold","bold","defaultMapPropsToOptions","defaultMapPropsToSkip","getDisplayName","WrappedComponent","displayName","calculateVariablesFromProps","_b","type","variableName","variableProp","undefined","GraphQLBase","withRef","setWrappedInstance","bind","getWrappedInstance","wrappedInstance","ref","Component","graphql","operationOptions","Mutation","mapPropsToOptions","graphQLDisplayName","GraphQL","render","opts","createElement","ignoreResults","mutate","_c","data","resultName","childProps","newResult","ownProps","withMutation","Subscription","skip","lastResultProps","mapPropsToSkip","state","resubscribe","componentDidUpate","prevProps","setState","shouldSkip","withSubscription","Query","withQuery","_typeof","_objectWithoutPropertiesLoose","excluded","sourceKeys","apolloContext","getApolloContext","createContext","DocumentType","ApolloProvider","ApolloContext","Consumer","Provider","ApolloConsumer","cache","operationName","parser","cached","queries","mutations","subscriptions","payload","_inheritsLoose","subClass","superClass","NetworkStatus","isNetworkRequestInFlight","networkStatus","hasOwn","FieldNamePattern","fieldNameFromStoreName","storeFieldName","match","storeValueIsStoreObject","isFieldValueToBeMerged","__field","makeProcessedFieldsMerger","reconcileProcessedFields","existingObject","incomingObject","existing","incoming","__value","_defineProperties","descriptor","_createClass","Constructor","protoProps","staticProps","_classCallCheck","instance","arrayWithoutHoles","iterableToArray","nonIterableSpread","_assertThisInitialized","self","ReferenceError","runtime","regeneratorRuntime","accidentalStrictMode","globalThis","Function","_getPrototypeOf","o","_possibleConstructorReturn","_inherits","iterableToArrayLimit","defaultDispose","Cache","max","dispose","Infinity","newest","oldest","entry","getEntry","older","newer","clean","parentEntrySlot","maybeUnsubscribe","entryOrDep","emptySetPool","assert","condition","optionalMessage","valueGet","Entry","fn","parents","childValues","dirtyChildren","dirty","recomputing","deps","peek","mightBeDirty","recompute","getValue","reportDirtyChild","reportCleanChild","rememberParent","forgetChildren","withValue","recomputeNewValue","setDirty","maybeSubscribe","reportClean","setClean","reallyRecompute","reportDirty","forgetChild","dependOn","dep","forgetDeps","clear","childValue","len","valueIs","removeDirtyChild","dc","_value","defaultMakeData","KeyTrie","weakness","makeData","lookup","lookupArray","getChildTrie","isObjRef","weak","strong","depsByKey","depend","dep_1","keyTrie","defaultMakeCacheKey","caches","wrap","originalFunction","Math","pow","keyArgs","makeCacheKey","optimistic","hasValue","fnToStr","previousComparisons","equal","check","aTag","bTag","previouslyCompared","aKeys","bKeys","keyCount","message","aIterator","entries","isMap","info","aKey","aValue","aCode","full","suffix","fromIndex","endsWith","nativeCodeSuffix","bSet","fromError","errorValue","toPromise","fromPromise","throwServerError","response","statusCode","status","validateOperation","OPERATION_FIELDS","createOperation","starting","transformOperation","transformedOperation","extensions","FocusZoneDirection","FocusZoneTabbableElements","none","all","inputOnly","_extends","passthrough","forward","of","toLink","ApolloLink","isTerminating","link","request","LinkError","empty","links","reduce","concat","split","left","right","leftLink","rightLink","execute","first","second","firstLink","nextLink","setOnError","isApolloError","ApolloError","graphQLErrors","networkError","errorMessage","extraInfo","graphQLError","replace","generateErrorMessage","currentContext","MISSING_VALUE","idCounter","host","Slot","Date","now","random","join","context_1","slots","saved","noContext","elementContains","allowVirtualParents","isContained","nextParent","contains","varDep","cacheSlot","makeVar","rv","newValue","broadcast","broadcastWatches","makeSemanticColors","isInverted","depComments","listTextColor","listText","menuItemBackgroundChecked","warningHighlight","warningText","messageText","successText","_fixDeprecatedSlots","getSemanticColors","primaryButtonBorder","errorText","messageLink","messageLinkHovered","infoIcon","errorIcon","blockingIcon","warningIcon","severeWarningIcon","successIcon","infoBackground","errorBackground","blockingBackground","warningBackground","severeWarningBackground","successBackground","white","black","themePrimary","themeDark","themeDarker","themeDarkAlt","themeLighter","neutralLight","neutralLighter","neutralDark","neutralQuaternary","neutralQuaternaryAlt","neutralPrimary","neutralSecondary","neutralSecondaryAlt","neutralTertiary","neutralTertiaryAlt","neutralLighterAlt","accent","bodyBackground","bodyFrameBackground","accentButtonText","buttonBackground","primaryButtonText","primaryButtonTextHovered","primaryButtonTextPressed","inputBackground","inputForegroundChecked","listBackground","menuBackground","cardStandoutBackground","bodyTextChecked","buttonTextCheckedHovered","primaryButtonBackground","inputBackgroundChecked","inputIcon","inputFocusBorderAlt","menuIcon","menuHeader","accentButtonBackground","primaryButtonBackgroundPressed","inputBackgroundCheckedHovered","inputIconHovered","linkHovered","primaryButtonBackgroundHovered","inputPlaceholderBackgroundChecked","bodyBackgroundChecked","bodyFrameDivider","bodyDivider","variantBorder","buttonBackgroundCheckedHovered","buttonBackgroundPressed","listItemBackgroundChecked","listHeaderBackgroundPressed","menuItemBackgroundPressed","bodyBackgroundHovered","buttonBackgroundHovered","buttonBackgroundDisabled","buttonBorderDisabled","primaryButtonBackgroundDisabled","disabledBackground","listItemBackgroundHovered","listHeaderBackgroundHovered","menuItemBackgroundHovered","primaryButtonTextDisabled","disabledSubtext","listItemBackgroundCheckedHovered","disabledBodyText","variantBorderHovered","buttonTextDisabled","inputIconDisabled","disabledText","bodyText","actionLink","buttonText","inputBorderHovered","inputText","menuItemText","bodyStandoutBackground","defaultStateBackground","actionLinkHovered","buttonTextHovered","buttonTextChecked","buttonTextPressed","inputTextHovered","menuItemTextHovered","bodySubtext","focusBorder","inputBorder","smallInputBorder","inputPlaceholderText","buttonBorder","disabledBodySubtext","disabledBorder","buttonBackgroundChecked","menuDivider","elevation4","cardShadow","elevation8","cardShadowHovered","DefaultSpacing","s2","s1","m","l1","l2","createTheme","theme","partialTheme","mergedTheme","semanticColors","palette","effects","defaultFontStyle","fonts","fontStyle","stylesheets","mergeThemes","DefaultPalette","DefaultEffects","DefaultFontStyles","spacing","disableGlobalClassNames","rtl","_unsupportedIterableToArray","minLen","parseAndCheckHttpResponse","text","parse","parseError","serializeFetchParameter","serialized","fallbackHttpConfig","http","includeQuery","includeExtensions","headers","accept","selectHttpOptionsAndBody","fallbackConfig","configs","credentials","checkFetcher","fetcher","fetch","createSignalIfSupported","AbortController","controller","signal","selectURI","fallbackURI","contextURI","getContext","uri","rewriteURIForGET","chosenURI","queryParams","addQueryParam","encodeURIComponent","serializedVariables","serializedExtensions","preFragment","fragmentStart","substr","queryParamsPrefix","newURI","createHttpLink","linkOptions","useGETForQueries","requestOptions","linkConfig","fetchOptions","clientAwarenessHeaders","clientAwareness","name_1","version","contextHeaders","contextConfig","_controller","setContext","abort","HttpLink","argsFromFieldSpecifier","spec","defaultDataIdFromObject","_id","keyObject","nullKeyFieldsFn","simpleKeyArgsFn","_args","mergeTrueFn","mergeObjects","mergeFalseFn","Policies","typePolicies","rootIdsByTypename","rootTypenamesById","usingPossibleTypes","storageTrie","dataIdFromObject","setRootTypename","possibleTypes","addPossibleTypes","addTypePolicies","identify","rootId","policy","getTypePolicy","keyFn","specifierOrId","keyFieldsFnFromSpecifier","keyFields","queryType","mutationType","subscriptionType","getFieldPolicy","read","keyArgsFnFromSpecifier","which","toUpperCase","old","supertype","subtypeSet","getSubtypeSet","createIfMissing","subtypes","typePolicy","fieldPolicies","fragmentMatches","typeCondition","workQueue_1","subtype","subsubtypes","getStoreFieldName","fieldSpec","specifierOrString","readField","objectOrReference","store","getFieldValue","readOptions","makeFieldFunctionOptions","hasMergeFunction","applyMerges","storageKeys","storage","item","newFields_1","e_1","i_1","firstStorageKey_1","incomingValue","appliedValue","policies","toReference","canRead","fieldNameOrOptions","eType","iType","typesDiffer","applied","specifier","computeKeyObject","trie","aliasMap","makeAliasMap","workQueue","responseKey","storeKey","aliases","subsets","prevKey","keyObj","subset","responseName","_arrayLikeToArray","arr2","getParent","element","_virtual","getVirtualParent","parentNode","ApolloCache","getFragmentDoc","recordOptimisticTransaction","transaction","optimisticId","performTransaction","transformDocument","gc","modify","transformForLink","readQuery","readFragment","writeQuery","write","dataId","writeFragment","MissingFieldError","path","Reobserver","shouldFetch","reobserve","newOptions","newNetworkStatus","updateOptions","updatePolling","concast","stop","pollingInfo","clearTimeout","timeout","interval","maybeFetch","poll","setTimeout","ObservableQuery","queryManager","queryInfo","onSubscribe","lastError","isDifferentFromLastResult","updateLastResult","lastResult","loading","isTornDown","queryId","generateQueryId","opDef","queryName","removeQuery","getCurrentResult","ready","partial","transform","hasForcedResolvers","diff","getDiff","lastResultSnapshot","getLastResult","getLastError","resetLastResults","resetQueryStoreErrors","resetErrors","refetch","reobserveOptions","nextFetchPolicy","newReobserver","fetchMore","fetchMoreOptions","combinedOptions","qid","currentResult","fetchQuery","fetchMoreResult","updateQuery","previous","finally","stopQuery","subscribeToMore","startGraphQLSubscription","subscriptionData","setOptions","setVariables","previousResult","broadcastQueries","startPolling","getReobserver","stopPolling","reobserver","assumeImmutableResults","subObserver","_subscription","_observer","defaultSubscriptionObserverErrorCallback","tearDownQuery","shareOptions","setObservableQuery","currentOptions","fetchQueryObservable","ssrMode","_setPrototypeOf","findElementRecursive","matchFunction","_iterableToArray","iter","_arrayWithHoles","_nonIterableRest","_toArray","_toPropertyKey","input","hint","prim","toPrimitive","res","DATA_PORTAL_ATTRIBUTE","setPortalAttribute","setAttribute","arrayLikeToArray","DateFnsUtils","locale","yearFormat","yearMonthFormat","dateTime12hFormat","dateTime24hFormat","time12hFormat","time24hFormat","dateFormat","addDays","isValid","date","comparing","isAfter","isBefore","startOfDay","endOfDay","getHours","setHours","setMinutes","getSeconds","setSeconds","isSameDay","startOfMonth","endOfMonth","getYear","setYear","formatString","format","isEqual","isNull","isAfterDay","isBeforeDay","isBeforeYear","isAfterYear","formatNumber","numberToFormat","getMinutes","getMonth","setMonth","getMeridiemText","ampm","getNextMonth","getPreviousMonth","getMonthArray","monthArray","prevMonth","mergeDateAndTime","time","getWeekdays","end","day","getWeekArray","current","nestedWeeks","weekNumber","floor","getYearRange","startDate","endDate","years","getCalendarHeaderText","getYearText","getDatePickerHeaderText","getDateTimePickerHeaderText","getMonthText","getDayText","getHourText","getMinuteText","getSecondText","MutationStore","getStore","mutationId","initMutation","markMutationError","markMutationResult","reset","LocalState","resolvers","fragmentMatcher","addResolvers","setFragmentMatcher","resolverGroup","setResolvers","getResolvers","runResolvers","remoteResult","onlyRunForcedResolvers","resolveDocument","localResult","getFragmentMatcher","clientQuery","serverQuery","prepareContext","getCacheKey","addExportedVariables","buildRootValueFromCache","exportedVariables","shouldForceResolvers","forceResolvers","rootValue","mainDefinition","definitionOperation","defaultOperationType","execContext","charAt","resolveSelectionSet","resultsToMerge","resolveField","fieldResult","fragmentResult","aliasedFieldName","aliasUsed","defaultResult","resultPromise","resolverType","resolverMap","resolveSubSelectedArray","QueryInfo","listeners","lastRequestId","observableQuery","init","updateWatch","setDiff","oldDiff","notifyTimeout","notify","oq","oqListener","shouldNotify","listener","lastWatch","watch","markResult","allowCacheWrite","ignoreErrors","errorPolicy","writeWithErrors","lastWrittenResult","lastWrittenVars","markReady","markError","QueryManager","queryDeduplication","onBroadcast","localState","mutationStore","fetchCancelFns","transformCache","queryIdCounter","requestIdCounter","mutationIdCounter","inFlightLinkObservables","_info","stopQueryNoBroadcast","cancelPendingFetches","updateQueriesByName","updateQueries","updateWithProxyFn","generateUpdateQueriesInfo","optimistic_1","_f","generateMutationId","getVariables","ret","updater","queryUpdatersById","storeResult","getObservableFromLink","removeOptimistic","refetchQueryPromises","refetchQuery","queryOptions","getQueryStore","transformed","forLink","cacheEntry_1","defaultVars","watchQuery","generateRequestId","stopQueryInStore","stopQueryInStoreNoBroadcast","clearStore","resetStore","reFetchObservableQueries","includeStandby","observableQueryPromises","getQuery","makeObservable","observablePromise_1","getLocalState","deduplication","inFlightLinkObservables_1","forceFetch","byVariables_1","varJson_1","getResultsFromLink","hasErrors","aqr","oldNetworkStatus","normalized","fromVariables","fetchQueryByPolicy","readCache","resultsFromCache","fromData","resolved","resultsFromLink","newContext","cacheWrites_1","queryUpdatersById_1","currentQueryResult","nextQueryResult","mutationResult","queryVariables","c","ApolloClient","defaultOptions","resetStoreCallbacks","clearStoreCallbacks","ssrForceFetchDelay","connectToDevTools","typeDefs","clientAwarenessName","clientAwarenessVersion","disableNetworkFetches","window","__APOLLO_CLIENT__","devToolsHookCb","action","dataWithOptimisticResults","extract","__actionHookForDevTools","cb","__requestRaw","onResetStore","onClearStore","restore","serializedState","setLocalStateFragmentMatcher","setLink","newLink","DELETE","delModifier","EntityStore","group","rootIds","refs","objOrRef","objOrIdOrRef","mergeIntoStore","toObject","storeObject","dependOnExistence","merged","storeObjectReconciler","caching","fieldsToDirty_1","__exists","changedFields_1","needToMerge_1","allDeleted_1","readField_1","fieldValue","evict","evicted","newData","retain","release","getRootIdSet","ids","snapshot","findChildRefIds","idsToRemove","root_1","found_1","workSet_1","canTraverse_1","keyMaker","CacheGroup","makeDepKey","Root","resultCaching","seed","sharedLayerGroup","addLayer","layerId","replay","removeLayer","Layer","fromParent","existingValue","supportsResultCaching","missingFromInvariant","StoreReader","executeSelectionSet","execSelectionSetImpl","varString","knownResults","executeSubSelectedArray","execSubSelectedArrayImpl","addTypename","readQueryFromStore","diffQueryAgainstStore","execResult","hasMissingFields","missing","isFresh","objectsToMerge","finalResult","getMissing","handleMissing","workSet","childResult","StoreWriter","reader","writeToStore","operationDefinition","processSelectionSet","written","out","shouldApplyMerges","sets","mergedFields","resultFieldKey","processFieldValue","entityRef_1","defaultConfig","InMemoryCache","watches","typenameDocumentCache","txCount","maybeBroadcastWatch","broadcastWatch","optimisticData","watchDep","storeWriter","storeReader","immediate","idToRemove","newOptimisticData","perform","layer","defaultFontFamily","LanguageToFontMap","ar","bg","cs","el","et","he","hi","hr","hu","ja","kk","ko","lt","lv","pl","ru","sk","th","tr","uk","vi","hy","ka","_createFont","weight","fontFamily","MozOsxFontSmoothing","WebkitFontSmoothing","fontSize","fontWeight","createFontStyles","localeCode","localizedFont","language","lang","_getLocalizedFontFamily","fontFamilyWithFallback","tiny","superPropBase","_get","Reflect","receiver","base","desc","getOwnPropertyDescriptor","_objectWithoutProperties","sourceSymbolKeys","_toConsumableArray","invariant","Err","MomentUtils","moment","clone","startOf","endOf","subtract","abs","hours","minutes","seconds","isSame","isSameMonth","isSameYear","isSameHour","month","year","weekdaysShort","asyncGeneratorStep","gen","_next","_throw","_regeneratorRuntime","Op","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","innerFn","outerFn","tryLocsList","protoGenerator","Generator","Context","makeInvokeMethod","tryCatch","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","Gp","defineIteratorMethods","_invoke","AsyncIterator","PromiseImpl","previousPromise","callInvokeWithMethodAndArg","invoke","record","__await","unwrapped","delegateResult","maybeInvokeDelegate","_sent","dispatchException","abrupt","methodName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","iteratorMethod","isNaN","isGeneratorFunction","genFun","ctor","mark","awrap","async","reverse","skipTempReset","prev","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield","assertThisInitialized","resetCaches","disableFragmentWarnings","enableExperimentalFragmentVariables","disableExperimentalFragmentVariables","elementContainsAttribute","attribute","elementMatch","testElement","hasAttribute","getAttribute","selectUnit","to","thresholds","resolvedThresholds","DEFAULT_THRESHOLDS","secs","round","unit","mins","minute","SECS_PER_MIN","hour","days","SECS_PER_HOUR","fromDate","toDate","getFullYear","months","weeks","SECS_PER_DAY","EASING_FUNCTION_1","EASING_FUNCTION_2","FADE_IN","opacity","FADE_OUT","visibility","SLIDE_RIGHT_IN10","_createSlideInX","SLIDE_RIGHT_IN20","SLIDE_RIGHT_IN40","SLIDE_RIGHT_IN400","SLIDE_LEFT_IN10","SLIDE_LEFT_IN20","SLIDE_LEFT_IN40","SLIDE_LEFT_IN400","SLIDE_UP_IN10","_createSlideInY","SLIDE_UP_IN20","SLIDE_DOWN_IN10","SLIDE_DOWN_IN20","SLIDE_RIGHT_OUT10","_createSlideOutX","SLIDE_RIGHT_OUT20","SLIDE_RIGHT_OUT40","SLIDE_RIGHT_OUT400","SLIDE_LEFT_OUT10","SLIDE_LEFT_OUT20","SLIDE_LEFT_OUT40","SLIDE_LEFT_OUT400","SLIDE_UP_OUT10","_createSlideOutY","SLIDE_UP_OUT20","SLIDE_DOWN_OUT10","SLIDE_DOWN_OUT20","SCALE_UP100","SCALE_DOWN98","SCALE_DOWN100","SCALE_UP103","ROTATE90","ROTATE_N90","AnimationVariables","easeFunction1","easeFunction2","durationValue1","durationValue2","durationValue3","durationValue4","AnimationStyles","slideRightIn10","_createAnimation","slideRightIn20","slideRightIn40","slideRightIn400","slideLeftIn10","slideLeftIn20","slideLeftIn40","slideLeftIn400","slideUpIn10","slideUpIn20","slideDownIn10","slideDownIn20","slideRightOut10","slideRightOut20","slideRightOut40","slideRightOut400","slideLeftOut10","slideLeftOut20","slideLeftOut40","slideLeftOut400","slideUpOut10","slideUpOut20","slideDownOut10","slideDownOut20","scaleUpIn100","scaleDownIn100","scaleUpOut103","scaleDownOut98","fadeIn100","fadeIn200","fadeIn400","fadeIn500","fadeOut100","fadeOut200","fadeOut400","fadeOut500","rotate90deg","rotateN90deg","animationName","animationDuration","animationTimingFunction","animationFillMode","fromX","pointerEvents","fromY","toX","toY","themeSecondary","themeTertiary","themeLight","themeLighterAlt","blackTranslucent40","neutralPrimaryAlt","whiteTranslucent40","yellowDark","yellow","yellowLight","orange","orangeLight","orangeLighter","redDark","red","magentaDark","magenta","magentaLight","purpleDark","purple","purpleLight","blueDark","blueMid","blue","blueLight","tealDark","teal","tealLight","greenDark","green","greenLight","_registerFontFace","url","localFontName","localFontSrc","src","fontDisplay","_registerFontFaceSet","baseUrl","cdnFolder","cdnFontName","urlBase","fontUrl","registerDefaultFontFaces","FabricConfig","fontBaseUrl","_getFontBaseUrl","WindowContext","setVirtualParent","virtualChild","virtualParent","oldParent","index","splice","portalContainsElement","Depths","depth0","depth4","depth8","depth16","depth64","elevation16","elevation64","roundedCorner2","roundedCorner4","roundedCorner6","focusZoneStyles","raiseClickFromKeyboardEvent","ev","event","MouseEvent","ctrlKey","metaKey","shiftKey","altKey","bubbles","cancelable","createEvent","initMouseEvent","dispatchEvent","_allInstances","_outerZones","ALLOWED_INPUT_TYPES","FocusZone","_root","_mergedRef","createMergedRef","_onFocus","_portalContainsElement","newActiveElement","onActiveElementChanged","doNotAllowFocusEventToPropagate","stopFocusPropagation","onFocusNotification","onFocus","shouldFocusInnerElementWhenReceivedFocus","defaultTabbableElement","isImmediateDescendant","_isImmediateDescendantOfZone","parentElement","maybeElementToFocus","focus","_activeElement","initialElementFocused","_setFocusAlignment","_updateTabIndexes","stopPropagation","_onBlur","_setParkedFocus","_onMouseDown","disabled","_setActiveElement","_onKeyDown","direction","isInnerZoneKeystroke","pagingSupportDisabled","shouldEnterInnerZone","onKeyDown","isDefaultPrevented","_getDocument","activeElement","_isInnerZone","innerZone","_getFirstInnerZone","focusElement","firstChild","KeyCodes","space","_tryInvokeClickForFocusable","vertical","_preventDefaultWhenHandled","_moveFocusLeft","_moveFocusRight","up","horizontal","_moveFocusUp","down","_moveFocusDown","pageDown","_moveFocusPaging","pageUp","tab","allowTabKey","handleTabKey","_isElementInput","focusChanged","_processingTabKey","_shouldWrapFocus","shouldResetActiveElementWhenTabFromZone","home","_isContentEditableElement","_shouldInputLoseFocus","lastChild","preventDefault","_getHorizontalDistanceFromCenter","isForward","activeRect","targetRect","leftAlignment","_focusAlignment","targetRectTop","top","activeRectBottom","bottom","targetRectBottom","activeRectTop","width","initializeComponentRef","getId","getOuterZones","_onKeyDownCapture","zone","componentDidMount","_windowElement","getWindow","nodeType","addEventListener","querySelector","defaultActiveElement","shouldFocusOnMount","componentDidUpdate","_lastIndexPath","preventFocusRestoration","elementToFocus","componentWillUnmount","removeEventListener","_defaultFocusElement","tag","as","elementType","rootProps","ariaDescribedBy","ariaLabelledBy","className","divProps","Tag","_evaluateFocusBeforeRender","css","mergeStyles","selectors","outline","elementRef","onMouseDownCapture","forceIntoFirstElement","ownerZoneElement","_getOwnerZone","ownerZone","focusLast","forceAlignment","onBeforeFocus","shouldReceiveFocus","setFocusAlignment","point","focusedElement","shouldRestoreFocus","isParked","_isParked","allowFocusRoot","_parkedTabIndex","removeAttribute","previousActiveElement","tabIndex","preventDefaultWhenHandled","targetElement","shouldRaiseClicks","tagName","rootElement","firstElementChild","nextElementSibling","_moveFocus","getDistanceFromCenter","useDefaultWrap","candidateDistance","candidateElement","changedFocus","isBidirectional","bidirectional","getBoundingClientRect","elementDistance","isCircularNavigation","lastElementChild","targetTop","distance","shouldWrap","parseFloat","toFixed","scrollableParent","targetBottom","pagesize","clientHeight","isHorizontal","isVertical","rect","top_1","height","childNodes","childIndex","toLowerCase","selectionStart","isRangeSelected","selectionEnd","inputValue","isReadonly","readOnly","shouldInputLoseFocusOnArrowKey","noWrapDataAttribute","checkForNoWrap","getDocument","defaultProps","OperationData","isMounted","previousOptions","getOptions","storePrevious","unmount","refreshClient","isNew","verifyDocumentType","QueryData","onNewData","previousData","currentObservable","runLazy","runLazyQuery","lazyOptions","getExecuteResult","getQueryResult","startQuerySubscription","obsRefetch","obsFetchMore","obsUpdateQuery","obsStartPolling","obsStopPolling","obsSubscribeToMore","removeQuerySubscription","updateObservableQuery","getExecuteSsrResult","executeLazy","fetchData","afterExecute","lazy","handleErrorOrCompleted","ssrInitiated","renderPromises","ssrDisabled","fetchDisabled","ssrLoading","stale","observableQueryFields","addQueryPromise","prepareObservableQueryOptions","metadata","reactComponent","initializeObservableQuery","getSSRObservable","observableQueryOptions","registerSSRObservable","newObservableQueryOptions","obsQuery","resubscribeToQuery","useBaseQuery","tick","forceUpdate","updatedOptions","queryDataRef","queryData","memoFn","useDeepMemo","queryResult","useQuery","useLazyQuery","MutationData","setResult","mutationFunctionOptions","onMutationStart","generateNewMutationId","onMutationCompleted","onMutationError","mostRecentMutationId","mutationContext","mutateOptions","mutateVariables","updateResult","isMostRecentMutation","useMutation","mutationDataRef","mutationData","SubscriptionData","initialize","getLoadingResult","startSubscription","endSubscription","updateCurrentData","updateError","completeSubscription","useSubscription","subscriptionDataRef","RenderPromises","queryPromises","queryInfoTrie","lookupQueryInfo","queryInstance","hasPromises","consumeAndAwaitPromises","promises","varMap","variablesString","objectWithoutPropertiesLoose","_getRequireWildcardCache","nodeInterop","cacheBabelInterop","cacheNodeInterop","newObj","hasPropertyDescriptor","ownKeys","sym"],"mappings":"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","file":"static/js/defaultVendors~main~6e8b5f81.f94464be.chunk.js","sourcesContent":["import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","import { visit } from 'graphql/language/visitor';\nimport { invariant } from 'ts-invariant';\nexport function shouldInclude(_a, variables) {\n var directives = _a.directives;\n if (!directives || !directives.length) {\n return true;\n }\n return getInclusionDirectives(directives).every(function (_a) {\n var directive = _a.directive, ifArgument = _a.ifArgument;\n var evaledValue = false;\n if (ifArgument.value.kind === 'Variable') {\n evaledValue = variables && variables[ifArgument.value.name.value];\n process.env.NODE_ENV === \"production\" ? invariant(evaledValue !== void 0, 37) : invariant(evaledValue !== void 0, \"Invalid variable referenced in @\" + directive.name.value + \" directive.\");\n }\n else {\n evaledValue = ifArgument.value.value;\n }\n return directive.name.value === 'skip' ? !evaledValue : evaledValue;\n });\n}\nexport function getDirectiveNames(root) {\n var names = [];\n visit(root, {\n Directive: function (node) {\n names.push(node.name.value);\n },\n });\n return names;\n}\nexport function hasDirectives(names, root) {\n return getDirectiveNames(root).some(function (name) { return names.indexOf(name) > -1; });\n}\nexport function hasClientExports(document) {\n return (document &&\n hasDirectives(['client'], document) &&\n hasDirectives(['export'], document));\n}\nfunction isInclusionDirective(_a) {\n var value = _a.name.value;\n return value === 'skip' || value === 'include';\n}\nexport function getInclusionDirectives(directives) {\n var result = [];\n if (directives && directives.length) {\n directives.forEach(function (directive) {\n if (!isInclusionDirective(directive))\n return;\n var directiveArguments = directive.arguments;\n var directiveName = directive.name.value;\n process.env.NODE_ENV === \"production\" ? invariant(directiveArguments && directiveArguments.length === 1, 38) : invariant(directiveArguments && directiveArguments.length === 1, \"Incorrect number of arguments for the @\" + directiveName + \" directive.\");\n var ifArgument = directiveArguments[0];\n process.env.NODE_ENV === \"production\" ? invariant(ifArgument.name && ifArgument.name.value === 'if', 39) : invariant(ifArgument.name && ifArgument.name.value === 'if', \"Invalid argument for the @\" + directiveName + \" directive.\");\n var ifValue = ifArgument.value;\n process.env.NODE_ENV === \"production\" ? invariant(ifValue &&\n (ifValue.kind === 'Variable' || ifValue.kind === 'BooleanValue'), 40) : invariant(ifValue &&\n (ifValue.kind === 'Variable' || ifValue.kind === 'BooleanValue'), \"Argument for the @\" + directiveName + \" directive must be a variable or a boolean value.\");\n result.push({ directive: directive, ifArgument: ifArgument });\n });\n }\n return result;\n}\n//# sourceMappingURL=directives.js.map","import { __assign, __spreadArrays } from \"tslib\";\nimport { invariant, InvariantError } from 'ts-invariant';\nexport function getFragmentQueryDocument(document, fragmentName) {\n var actualFragmentName = fragmentName;\n var fragments = [];\n document.definitions.forEach(function (definition) {\n if (definition.kind === 'OperationDefinition') {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(41) : new InvariantError(\"Found a \" + definition.operation + \" operation\" + (definition.name ? \" named '\" + definition.name.value + \"'\" : '') + \". \" +\n 'No operations are allowed when using a fragment as a query. Only fragments are allowed.');\n }\n if (definition.kind === 'FragmentDefinition') {\n fragments.push(definition);\n }\n });\n if (typeof actualFragmentName === 'undefined') {\n process.env.NODE_ENV === \"production\" ? invariant(fragments.length === 1, 42) : invariant(fragments.length === 1, \"Found \" + fragments.length + \" fragments. `fragmentName` must be provided when there is not exactly 1 fragment.\");\n actualFragmentName = fragments[0].name.value;\n }\n var query = __assign(__assign({}, document), { definitions: __spreadArrays([\n {\n kind: 'OperationDefinition',\n operation: 'query',\n selectionSet: {\n kind: 'SelectionSet',\n selections: [\n {\n kind: 'FragmentSpread',\n name: {\n kind: 'Name',\n value: actualFragmentName,\n },\n },\n ],\n },\n }\n ], document.definitions) });\n return query;\n}\nexport function createFragmentMap(fragments) {\n if (fragments === void 0) { fragments = []; }\n var symTable = {};\n fragments.forEach(function (fragment) {\n symTable[fragment.name.value] = fragment;\n });\n return symTable;\n}\nexport function getFragmentFromSelection(selection, fragmentMap) {\n switch (selection.kind) {\n case 'InlineFragment':\n return selection;\n case 'FragmentSpread': {\n var fragment = fragmentMap && fragmentMap[selection.name.value];\n process.env.NODE_ENV === \"production\" ? invariant(fragment, 43) : invariant(fragment, \"No fragment named \" + selection.name.value + \".\");\n return fragment;\n }\n default:\n return null;\n }\n}\n//# sourceMappingURL=fragments.js.map","import stringify from 'fast-json-stable-stringify';\nimport { InvariantError } from 'ts-invariant';\nimport { getFragmentFromSelection } from \"./fragments.js\";\nexport function makeReference(id) {\n return { __ref: String(id) };\n}\nexport function isReference(obj) {\n return Boolean(obj && typeof obj === 'object' && typeof obj.__ref === 'string');\n}\nfunction isStringValue(value) {\n return value.kind === 'StringValue';\n}\nfunction isBooleanValue(value) {\n return value.kind === 'BooleanValue';\n}\nfunction isIntValue(value) {\n return value.kind === 'IntValue';\n}\nfunction isFloatValue(value) {\n return value.kind === 'FloatValue';\n}\nfunction isVariable(value) {\n return value.kind === 'Variable';\n}\nfunction isObjectValue(value) {\n return value.kind === 'ObjectValue';\n}\nfunction isListValue(value) {\n return value.kind === 'ListValue';\n}\nfunction isEnumValue(value) {\n return value.kind === 'EnumValue';\n}\nfunction isNullValue(value) {\n return value.kind === 'NullValue';\n}\nexport function valueToObjectRepresentation(argObj, name, value, variables) {\n if (isIntValue(value) || isFloatValue(value)) {\n argObj[name.value] = Number(value.value);\n }\n else if (isBooleanValue(value) || isStringValue(value)) {\n argObj[name.value] = value.value;\n }\n else if (isObjectValue(value)) {\n var nestedArgObj_1 = {};\n value.fields.map(function (obj) {\n return valueToObjectRepresentation(nestedArgObj_1, obj.name, obj.value, variables);\n });\n argObj[name.value] = nestedArgObj_1;\n }\n else if (isVariable(value)) {\n var variableValue = (variables || {})[value.name.value];\n argObj[name.value] = variableValue;\n }\n else if (isListValue(value)) {\n argObj[name.value] = value.values.map(function (listValue) {\n var nestedArgArrayObj = {};\n valueToObjectRepresentation(nestedArgArrayObj, name, listValue, variables);\n return nestedArgArrayObj[name.value];\n });\n }\n else if (isEnumValue(value)) {\n argObj[name.value] = value.value;\n }\n else if (isNullValue(value)) {\n argObj[name.value] = null;\n }\n else {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(52) : new InvariantError(\"The inline argument \\\"\" + name.value + \"\\\" of kind \\\"\" + value.kind + \"\\\"\" +\n 'is not supported. Use variables instead of inline arguments to ' +\n 'overcome this limitation.');\n }\n}\nexport function storeKeyNameFromField(field, variables) {\n var directivesObj = null;\n if (field.directives) {\n directivesObj = {};\n field.directives.forEach(function (directive) {\n directivesObj[directive.name.value] = {};\n if (directive.arguments) {\n directive.arguments.forEach(function (_a) {\n var name = _a.name, value = _a.value;\n return valueToObjectRepresentation(directivesObj[directive.name.value], name, value, variables);\n });\n }\n });\n }\n var argObj = null;\n if (field.arguments && field.arguments.length) {\n argObj = {};\n field.arguments.forEach(function (_a) {\n var name = _a.name, value = _a.value;\n return valueToObjectRepresentation(argObj, name, value, variables);\n });\n }\n return getStoreKeyName(field.name.value, argObj, directivesObj);\n}\nvar KNOWN_DIRECTIVES = [\n 'connection',\n 'include',\n 'skip',\n 'client',\n 'rest',\n 'export',\n];\nexport function getStoreKeyName(fieldName, args, directives) {\n if (args &&\n directives &&\n directives['connection'] &&\n directives['connection']['key']) {\n if (directives['connection']['filter'] &&\n directives['connection']['filter'].length > 0) {\n var filterKeys = directives['connection']['filter']\n ? directives['connection']['filter']\n : [];\n filterKeys.sort();\n var filteredArgs_1 = {};\n filterKeys.forEach(function (key) {\n filteredArgs_1[key] = args[key];\n });\n return directives['connection']['key'] + \"(\" + JSON.stringify(filteredArgs_1) + \")\";\n }\n else {\n return directives['connection']['key'];\n }\n }\n var completeFieldName = fieldName;\n if (args) {\n var stringifiedArgs = stringify(args);\n completeFieldName += \"(\" + stringifiedArgs + \")\";\n }\n if (directives) {\n Object.keys(directives).forEach(function (key) {\n if (KNOWN_DIRECTIVES.indexOf(key) !== -1)\n return;\n if (directives[key] && Object.keys(directives[key]).length) {\n completeFieldName += \"@\" + key + \"(\" + JSON.stringify(directives[key]) + \")\";\n }\n else {\n completeFieldName += \"@\" + key;\n }\n });\n }\n return completeFieldName;\n}\nexport function argumentsObjectFromField(field, variables) {\n if (field.arguments && field.arguments.length) {\n var argObj_1 = {};\n field.arguments.forEach(function (_a) {\n var name = _a.name, value = _a.value;\n return valueToObjectRepresentation(argObj_1, name, value, variables);\n });\n return argObj_1;\n }\n return null;\n}\nexport function resultKeyNameFromField(field) {\n return field.alias ? field.alias.value : field.name.value;\n}\nexport function getTypenameFromResult(result, selectionSet, fragmentMap) {\n if (typeof result.__typename === 'string') {\n return result.__typename;\n }\n for (var _i = 0, _a = selectionSet.selections; _i < _a.length; _i++) {\n var selection = _a[_i];\n if (isField(selection)) {\n if (selection.name.value === '__typename') {\n return result[resultKeyNameFromField(selection)];\n }\n }\n else {\n var typename = getTypenameFromResult(result, getFragmentFromSelection(selection, fragmentMap).selectionSet, fragmentMap);\n if (typeof typename === 'string') {\n return typename;\n }\n }\n }\n}\nexport function isField(selection) {\n return selection.kind === 'Field';\n}\nexport function isInlineFragment(selection) {\n return selection.kind === 'InlineFragment';\n}\n//# sourceMappingURL=storeUtils.js.map","import { invariant, InvariantError } from 'ts-invariant';\nimport { valueToObjectRepresentation } from \"./storeUtils.js\";\nexport function checkDocument(doc) {\n process.env.NODE_ENV === \"production\" ? invariant(doc && doc.kind === 'Document', 44) : invariant(doc && doc.kind === 'Document', \"Expecting a parsed GraphQL document. Perhaps you need to wrap the query string in a \\\"gql\\\" tag? http://docs.apollostack.com/apollo-client/core.html#gql\");\n var operations = doc.definitions\n .filter(function (d) { return d.kind !== 'FragmentDefinition'; })\n .map(function (definition) {\n if (definition.kind !== 'OperationDefinition') {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(45) : new InvariantError(\"Schema type definitions not allowed in queries. Found: \\\"\" + definition.kind + \"\\\"\");\n }\n return definition;\n });\n process.env.NODE_ENV === \"production\" ? invariant(operations.length <= 1, 46) : invariant(operations.length <= 1, \"Ambiguous GraphQL document: contains \" + operations.length + \" operations\");\n return doc;\n}\nexport function getOperationDefinition(doc) {\n checkDocument(doc);\n return doc.definitions.filter(function (definition) { return definition.kind === 'OperationDefinition'; })[0];\n}\nexport function getOperationName(doc) {\n return (doc.definitions\n .filter(function (definition) {\n return definition.kind === 'OperationDefinition' && definition.name;\n })\n .map(function (x) { return x.name.value; })[0] || null);\n}\nexport function getFragmentDefinitions(doc) {\n return doc.definitions.filter(function (definition) { return definition.kind === 'FragmentDefinition'; });\n}\nexport function getQueryDefinition(doc) {\n var queryDef = getOperationDefinition(doc);\n process.env.NODE_ENV === \"production\" ? invariant(queryDef && queryDef.operation === 'query', 47) : invariant(queryDef && queryDef.operation === 'query', 'Must contain a query definition.');\n return queryDef;\n}\nexport function getFragmentDefinition(doc) {\n process.env.NODE_ENV === \"production\" ? invariant(doc.kind === 'Document', 48) : invariant(doc.kind === 'Document', \"Expecting a parsed GraphQL document. Perhaps you need to wrap the query string in a \\\"gql\\\" tag? http://docs.apollostack.com/apollo-client/core.html#gql\");\n process.env.NODE_ENV === \"production\" ? invariant(doc.definitions.length <= 1, 49) : invariant(doc.definitions.length <= 1, 'Fragment must have exactly one definition.');\n var fragmentDef = doc.definitions[0];\n process.env.NODE_ENV === \"production\" ? invariant(fragmentDef.kind === 'FragmentDefinition', 50) : invariant(fragmentDef.kind === 'FragmentDefinition', 'Must be a fragment definition.');\n return fragmentDef;\n}\nexport function getMainDefinition(queryDoc) {\n checkDocument(queryDoc);\n var fragmentDefinition;\n for (var _i = 0, _a = queryDoc.definitions; _i < _a.length; _i++) {\n var definition = _a[_i];\n if (definition.kind === 'OperationDefinition') {\n var operation = definition.operation;\n if (operation === 'query' ||\n operation === 'mutation' ||\n operation === 'subscription') {\n return definition;\n }\n }\n if (definition.kind === 'FragmentDefinition' && !fragmentDefinition) {\n fragmentDefinition = definition;\n }\n }\n if (fragmentDefinition) {\n return fragmentDefinition;\n }\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(51) : new InvariantError('Expected a parsed GraphQL query with a query, mutation, subscription, or a fragment.');\n}\nexport function getDefaultValues(definition) {\n var defaultValues = Object.create(null);\n var defs = definition && definition.variableDefinitions;\n if (defs && defs.length) {\n defs.forEach(function (def) {\n if (def.defaultValue) {\n valueToObjectRepresentation(defaultValues, def.variable.name, def.defaultValue);\n }\n });\n }\n return defaultValues;\n}\n//# sourceMappingURL=getFromAST.js.map","export function filterInPlace(array, test, context) {\n var target = 0;\n array.forEach(function (elem, i) {\n if (test.call(this, elem, i, array)) {\n array[target++] = elem;\n }\n }, context);\n array.length = target;\n return array;\n}\n//# sourceMappingURL=filterInPlace.js.map","import { __assign, __spreadArrays } from \"tslib\";\nimport { visit } from 'graphql/language/visitor';\nimport { invariant } from 'ts-invariant';\nimport { checkDocument, getOperationDefinition, getFragmentDefinition, getFragmentDefinitions, getMainDefinition, } from \"./getFromAST.js\";\nimport { filterInPlace } from \"../common/filterInPlace.js\";\nimport { isField, isInlineFragment } from \"./storeUtils.js\";\nimport { createFragmentMap, } from \"./fragments.js\";\nvar TYPENAME_FIELD = {\n kind: 'Field',\n name: {\n kind: 'Name',\n value: '__typename',\n },\n};\nfunction isEmpty(op, fragments) {\n return op.selectionSet.selections.every(function (selection) {\n return selection.kind === 'FragmentSpread' &&\n isEmpty(fragments[selection.name.value], fragments);\n });\n}\nfunction nullIfDocIsEmpty(doc) {\n return isEmpty(getOperationDefinition(doc) || getFragmentDefinition(doc), createFragmentMap(getFragmentDefinitions(doc)))\n ? null\n : doc;\n}\nfunction getDirectiveMatcher(directives) {\n return function directiveMatcher(directive) {\n return directives.some(function (dir) {\n return (dir.name && dir.name === directive.name.value) ||\n (dir.test && dir.test(directive));\n });\n };\n}\nexport function removeDirectivesFromDocument(directives, doc) {\n var variablesInUse = Object.create(null);\n var variablesToRemove = [];\n var fragmentSpreadsInUse = Object.create(null);\n var fragmentSpreadsToRemove = [];\n var modifiedDoc = nullIfDocIsEmpty(visit(doc, {\n Variable: {\n enter: function (node, _key, parent) {\n if (parent.kind !== 'VariableDefinition') {\n variablesInUse[node.name.value] = true;\n }\n },\n },\n Field: {\n enter: function (node) {\n if (directives && node.directives) {\n var shouldRemoveField = directives.some(function (directive) { return directive.remove; });\n if (shouldRemoveField &&\n node.directives &&\n node.directives.some(getDirectiveMatcher(directives))) {\n if (node.arguments) {\n node.arguments.forEach(function (arg) {\n if (arg.value.kind === 'Variable') {\n variablesToRemove.push({\n name: arg.value.name.value,\n });\n }\n });\n }\n if (node.selectionSet) {\n getAllFragmentSpreadsFromSelectionSet(node.selectionSet).forEach(function (frag) {\n fragmentSpreadsToRemove.push({\n name: frag.name.value,\n });\n });\n }\n return null;\n }\n }\n },\n },\n FragmentSpread: {\n enter: function (node) {\n fragmentSpreadsInUse[node.name.value] = true;\n },\n },\n Directive: {\n enter: function (node) {\n if (getDirectiveMatcher(directives)(node)) {\n return null;\n }\n },\n },\n }));\n if (modifiedDoc &&\n filterInPlace(variablesToRemove, function (v) { return !!v.name && !variablesInUse[v.name]; }).length) {\n modifiedDoc = removeArgumentsFromDocument(variablesToRemove, modifiedDoc);\n }\n if (modifiedDoc &&\n filterInPlace(fragmentSpreadsToRemove, function (fs) { return !!fs.name && !fragmentSpreadsInUse[fs.name]; })\n .length) {\n modifiedDoc = removeFragmentSpreadFromDocument(fragmentSpreadsToRemove, modifiedDoc);\n }\n return modifiedDoc;\n}\nexport function addTypenameToDocument(doc) {\n return visit(checkDocument(doc), {\n SelectionSet: {\n enter: function (node, _key, parent) {\n if (parent &&\n parent.kind === 'OperationDefinition') {\n return;\n }\n var selections = node.selections;\n if (!selections) {\n return;\n }\n var skip = selections.some(function (selection) {\n return (isField(selection) &&\n (selection.name.value === '__typename' ||\n selection.name.value.lastIndexOf('__', 0) === 0));\n });\n if (skip) {\n return;\n }\n var field = parent;\n if (isField(field) &&\n field.directives &&\n field.directives.some(function (d) { return d.name.value === 'export'; })) {\n return;\n }\n return __assign(__assign({}, node), { selections: __spreadArrays(selections, [TYPENAME_FIELD]) });\n },\n },\n });\n}\naddTypenameToDocument.added = function (field) {\n return field === TYPENAME_FIELD;\n};\nvar connectionRemoveConfig = {\n test: function (directive) {\n var willRemove = directive.name.value === 'connection';\n if (willRemove) {\n if (!directive.arguments ||\n !directive.arguments.some(function (arg) { return arg.name.value === 'key'; })) {\n process.env.NODE_ENV === \"production\" || invariant.warn('Removing an @connection directive even though it does not have a key. ' +\n 'You may want to use the key parameter to specify a store key.');\n }\n }\n return willRemove;\n },\n};\nexport function removeConnectionDirectiveFromDocument(doc) {\n return removeDirectivesFromDocument([connectionRemoveConfig], checkDocument(doc));\n}\nfunction hasDirectivesInSelectionSet(directives, selectionSet, nestedCheck) {\n if (nestedCheck === void 0) { nestedCheck = true; }\n return (!!selectionSet &&\n selectionSet.selections &&\n selectionSet.selections.some(function (selection) {\n return hasDirectivesInSelection(directives, selection, nestedCheck);\n }));\n}\nfunction hasDirectivesInSelection(directives, selection, nestedCheck) {\n if (nestedCheck === void 0) { nestedCheck = true; }\n if (!isField(selection)) {\n return true;\n }\n if (!selection.directives) {\n return false;\n }\n return (selection.directives.some(getDirectiveMatcher(directives)) ||\n (nestedCheck &&\n hasDirectivesInSelectionSet(directives, selection.selectionSet, nestedCheck)));\n}\nfunction getArgumentMatcher(config) {\n return function argumentMatcher(argument) {\n return config.some(function (aConfig) {\n return argument.value &&\n argument.value.kind === 'Variable' &&\n argument.value.name &&\n (aConfig.name === argument.value.name.value ||\n (aConfig.test && aConfig.test(argument)));\n });\n };\n}\nexport function removeArgumentsFromDocument(config, doc) {\n var argMatcher = getArgumentMatcher(config);\n return nullIfDocIsEmpty(visit(doc, {\n OperationDefinition: {\n enter: function (node) {\n return __assign(__assign({}, node), { variableDefinitions: node.variableDefinitions ? node.variableDefinitions.filter(function (varDef) {\n return !config.some(function (arg) { return arg.name === varDef.variable.name.value; });\n }) : [] });\n },\n },\n Field: {\n enter: function (node) {\n var shouldRemoveField = config.some(function (argConfig) { return argConfig.remove; });\n if (shouldRemoveField) {\n var argMatchCount_1 = 0;\n if (node.arguments) {\n node.arguments.forEach(function (arg) {\n if (argMatcher(arg)) {\n argMatchCount_1 += 1;\n }\n });\n }\n if (argMatchCount_1 === 1) {\n return null;\n }\n }\n },\n },\n Argument: {\n enter: function (node) {\n if (argMatcher(node)) {\n return null;\n }\n },\n },\n }));\n}\nexport function removeFragmentSpreadFromDocument(config, doc) {\n function enter(node) {\n if (config.some(function (def) { return def.name === node.name.value; })) {\n return null;\n }\n }\n return nullIfDocIsEmpty(visit(doc, {\n FragmentSpread: { enter: enter },\n FragmentDefinition: { enter: enter },\n }));\n}\nfunction getAllFragmentSpreadsFromSelectionSet(selectionSet) {\n var allFragments = [];\n selectionSet.selections.forEach(function (selection) {\n if ((isField(selection) || isInlineFragment(selection)) &&\n selection.selectionSet) {\n getAllFragmentSpreadsFromSelectionSet(selection.selectionSet).forEach(function (frag) { return allFragments.push(frag); });\n }\n else if (selection.kind === 'FragmentSpread') {\n allFragments.push(selection);\n }\n });\n return allFragments;\n}\nexport function buildQueryFromSelectionSet(document) {\n var definition = getMainDefinition(document);\n var definitionOperation = definition.operation;\n if (definitionOperation === 'query') {\n return document;\n }\n var modifiedDoc = visit(document, {\n OperationDefinition: {\n enter: function (node) {\n return __assign(__assign({}, node), { operation: 'query' });\n },\n },\n });\n return modifiedDoc;\n}\nexport function removeClientSetsFromDocument(document) {\n checkDocument(document);\n var modifiedDoc = removeDirectivesFromDocument([\n {\n test: function (directive) { return directive.name.value === 'client'; },\n remove: true,\n },\n ], document);\n if (modifiedDoc) {\n modifiedDoc = visit(modifiedDoc, {\n FragmentDefinition: {\n enter: function (node) {\n if (node.selectionSet) {\n var isTypenameOnly = node.selectionSet.selections.every(function (selection) {\n return isField(selection) && selection.name.value === '__typename';\n });\n if (isTypenameOnly) {\n return null;\n }\n }\n },\n },\n });\n }\n return modifiedDoc;\n}\n//# sourceMappingURL=transform.js.map","import Observable from 'zen-observable';\nimport 'symbol-observable';\nObservable.prototype['@@observable'] = function () { return this; };\nexport { Observable };\n//# sourceMappingURL=Observable.js.map","import { __assign, __spreadArrays } from \"tslib\";\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function mergeDeep() {\n var sources = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n sources[_i] = arguments[_i];\n }\n return mergeDeepArray(sources);\n}\nexport function mergeDeepArray(sources) {\n var target = sources[0] || {};\n var count = sources.length;\n if (count > 1) {\n var merger = new DeepMerger();\n for (var i = 1; i < count; ++i) {\n target = merger.merge(target, sources[i]);\n }\n }\n return target;\n}\nfunction isObject(obj) {\n return obj !== null && typeof obj === 'object';\n}\nvar defaultReconciler = function (target, source, property) {\n return this.merge(target[property], source[property]);\n};\nvar DeepMerger = (function () {\n function DeepMerger(reconciler) {\n if (reconciler === void 0) { reconciler = defaultReconciler; }\n this.reconciler = reconciler;\n this.isObject = isObject;\n this.pastCopies = new Set();\n }\n DeepMerger.prototype.merge = function (target, source) {\n var _this = this;\n var context = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n context[_i - 2] = arguments[_i];\n }\n if (isObject(source) && isObject(target)) {\n Object.keys(source).forEach(function (sourceKey) {\n if (hasOwnProperty.call(target, sourceKey)) {\n var targetValue = target[sourceKey];\n if (source[sourceKey] !== targetValue) {\n var result = _this.reconciler.apply(_this, __spreadArrays([target, source, sourceKey], context));\n if (result !== targetValue) {\n target = _this.shallowCopyForMerge(target);\n target[sourceKey] = result;\n }\n }\n }\n else {\n target = _this.shallowCopyForMerge(target);\n target[sourceKey] = source[sourceKey];\n }\n });\n return target;\n }\n return source;\n };\n DeepMerger.prototype.shallowCopyForMerge = function (value) {\n if (isObject(value) && !this.pastCopies.has(value)) {\n if (Array.isArray(value)) {\n value = value.slice(0);\n }\n else {\n value = __assign({ __proto__: Object.getPrototypeOf(value) }, value);\n }\n this.pastCopies.add(value);\n }\n return value;\n };\n return DeepMerger;\n}());\nexport { DeepMerger };\n//# sourceMappingURL=mergeDeep.js.map","var toString = Object.prototype.toString;\nexport function cloneDeep(value) {\n return cloneDeepHelper(value);\n}\nfunction cloneDeepHelper(val, seen) {\n switch (toString.call(val)) {\n case \"[object Array]\": {\n seen = seen || new Map;\n if (seen.has(val))\n return seen.get(val);\n var copy_1 = val.slice(0);\n seen.set(val, copy_1);\n copy_1.forEach(function (child, i) {\n copy_1[i] = cloneDeepHelper(child, seen);\n });\n return copy_1;\n }\n case \"[object Object]\": {\n seen = seen || new Map;\n if (seen.has(val))\n return seen.get(val);\n var copy_2 = Object.create(Object.getPrototypeOf(val));\n seen.set(val, copy_2);\n Object.keys(val).forEach(function (key) {\n copy_2[key] = cloneDeepHelper(val[key], seen);\n });\n return copy_2;\n }\n default:\n return val;\n }\n}\n//# sourceMappingURL=cloneDeep.js.map","import { isDevelopment, isTest } from \"./environment.js\";\nfunction isObject(value) {\n return value !== null && typeof value === \"object\";\n}\nfunction deepFreeze(value) {\n var workSet = new Set([value]);\n workSet.forEach(function (obj) {\n if (isObject(obj)) {\n if (!Object.isFrozen(obj))\n Object.freeze(obj);\n Object.getOwnPropertyNames(obj).forEach(function (name) {\n if (isObject(obj[name]))\n workSet.add(obj[name]);\n });\n }\n });\n return value;\n}\nexport function maybeDeepFreeze(obj) {\n if (process.env.NODE_ENV !== \"production\" && (isDevelopment() || isTest())) {\n deepFreeze(obj);\n }\n return obj;\n}\n//# sourceMappingURL=maybeDeepFreeze.js.map","export function iterateObserversSafely(observers, method, argument) {\n var observersWithMethod = [];\n observers.forEach(function (obs) { return obs[method] && observersWithMethod.push(obs); });\n observersWithMethod.forEach(function (obs) { return obs[method](argument); });\n}\n//# sourceMappingURL=iteration.js.map","import { Observable } from \"./Observable.js\";\nexport function asyncMap(observable, mapFn, catchFn) {\n return new Observable(function (observer) {\n var next = observer.next, error = observer.error, complete = observer.complete;\n var activeCallbackCount = 0;\n var completed = false;\n function makeCallback(examiner, delegate) {\n if (examiner) {\n return function (arg) {\n ++activeCallbackCount;\n new Promise(function (resolve) { return resolve(examiner(arg)); }).then(function (result) {\n --activeCallbackCount;\n next && next.call(observer, result);\n if (completed) {\n handler.complete();\n }\n }, function (e) {\n --activeCallbackCount;\n error && error.call(observer, e);\n });\n };\n }\n else {\n return function (arg) { return delegate && delegate.call(observer, arg); };\n }\n }\n var handler = {\n next: makeCallback(mapFn, next),\n error: makeCallback(catchFn, error),\n complete: function () {\n completed = true;\n if (!activeCallbackCount) {\n complete && complete.call(observer);\n }\n },\n };\n var sub = observable.subscribe(handler);\n return function () { return sub.unsubscribe(); };\n });\n}\n//# sourceMappingURL=asyncMap.js.map","import { __extends } from \"tslib\";\nimport { Observable } from \"./Observable.js\";\nimport { iterateObserversSafely } from \"./iteration.js\";\nfunction isPromiseLike(value) {\n return value && typeof value.then === \"function\";\n}\nvar Concast = (function (_super) {\n __extends(Concast, _super);\n function Concast(sources) {\n var _this = _super.call(this, function (observer) {\n _this.addObserver(observer);\n return function () { return _this.removeObserver(observer); };\n }) || this;\n _this.observers = new Set();\n _this.promise = new Promise(function (resolve, reject) {\n _this.resolve = resolve;\n _this.reject = reject;\n });\n _this.handlers = {\n next: function (result) {\n if (_this.sub !== null) {\n _this.latest = [\"next\", result];\n iterateObserversSafely(_this.observers, \"next\", result);\n }\n },\n error: function (error) {\n if (_this.sub !== null) {\n if (_this.sub)\n _this.sub.unsubscribe();\n _this.sub = null;\n _this.latest = [\"error\", error];\n _this.reject(error);\n iterateObserversSafely(_this.observers, \"error\", error);\n }\n },\n complete: function () {\n if (_this.sub !== null) {\n var value = _this.sources.shift();\n if (!value) {\n _this.sub = null;\n if (_this.latest &&\n _this.latest[0] === \"next\") {\n _this.resolve(_this.latest[1]);\n }\n else {\n _this.resolve();\n }\n iterateObserversSafely(_this.observers, \"complete\");\n }\n else if (isPromiseLike(value)) {\n value.then(function (obs) { return _this.sub = obs.subscribe(_this.handlers); });\n }\n else {\n _this.sub = value.subscribe(_this.handlers);\n }\n }\n },\n };\n _this.cancel = function (reason) {\n _this.reject(reason);\n _this.sources = [];\n _this.handlers.complete();\n };\n _this.promise.catch(function (_) { });\n if (isPromiseLike(sources)) {\n sources.then(function (iterable) { return _this.start(iterable); }, _this.handlers.error);\n }\n else {\n _this.start(sources);\n }\n return _this;\n }\n Concast.prototype.start = function (sources) {\n if (this.sub !== void 0)\n return;\n this.sources = Array.from(sources);\n this.handlers.complete();\n };\n Concast.prototype.addObserver = function (observer) {\n if (!this.observers.has(observer)) {\n if (this.latest) {\n var nextOrError = this.latest[0];\n var method = observer[nextOrError];\n if (method) {\n method.call(observer, this.latest[1]);\n }\n if (this.sub === null &&\n nextOrError === \"next\" &&\n observer.complete) {\n observer.complete();\n }\n }\n this.observers.add(observer);\n }\n };\n Concast.prototype.removeObserver = function (observer, quietly) {\n if (this.observers.delete(observer) &&\n this.observers.size < 1) {\n if (quietly)\n return;\n if (this.sub) {\n this.sub.unsubscribe();\n this.reject(new Error(\"Observable cancelled prematurely\"));\n }\n this.sub = null;\n }\n };\n Concast.prototype.cleanup = function (callback) {\n var _this = this;\n var called = false;\n var once = function () {\n if (!called) {\n called = true;\n _this.observers.delete(observer);\n callback();\n }\n };\n var observer = {\n next: once,\n error: once,\n complete: once,\n };\n this.addObserver(observer);\n };\n return Concast;\n}(Observable));\nexport { Concast };\nif (typeof Symbol === \"function\" && Symbol.species) {\n Object.defineProperty(Concast, Symbol.species, {\n value: Observable,\n });\n}\n//# sourceMappingURL=Concast.js.map","export function isNonEmptyArray(value) {\n return Array.isArray(value) && value.length > 0;\n}\n//# sourceMappingURL=arrays.js.map","export function graphQLResultHasError(result) {\n return (result.errors && result.errors.length > 0) || false;\n}\n//# sourceMappingURL=errorHandling.js.map","export var canUseWeakMap = typeof WeakMap === 'function' && !(typeof navigator === 'object' &&\n navigator.product === 'ReactNative');\n//# sourceMappingURL=canUse.js.map","export function compact() {\n var objects = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n objects[_i] = arguments[_i];\n }\n var result = Object.create(null);\n objects.forEach(function (obj) {\n if (!obj)\n return;\n Object.keys(obj).forEach(function (key) {\n var value = obj[key];\n if (value !== void 0) {\n result[key] = value;\n }\n });\n });\n return result;\n}\n//# sourceMappingURL=compact.js.map","export { shouldInclude, hasDirectives, hasClientExports, getDirectiveNames, getInclusionDirectives, } from \"./graphql/directives.js\";\nexport { createFragmentMap, getFragmentQueryDocument, getFragmentFromSelection, } from \"./graphql/fragments.js\";\nexport { checkDocument, getOperationDefinition, getOperationName, getFragmentDefinitions, getQueryDefinition, getFragmentDefinition, getMainDefinition, getDefaultValues, } from \"./graphql/getFromAST.js\";\nexport { makeReference, isReference, isField, isInlineFragment, valueToObjectRepresentation, storeKeyNameFromField, argumentsObjectFromField, resultKeyNameFromField, getStoreKeyName, getTypenameFromResult, } from \"./graphql/storeUtils.js\";\nexport { addTypenameToDocument, buildQueryFromSelectionSet, removeDirectivesFromDocument, removeConnectionDirectiveFromDocument, removeArgumentsFromDocument, removeFragmentSpreadFromDocument, removeClientSetsFromDocument, } from \"./graphql/transform.js\";\nexport { concatPagination, offsetLimitPagination, relayStylePagination, } from \"./policies/pagination.js\";\nexport { Observable } from \"./observables/Observable.js\";\nexport * from \"./common/mergeDeep.js\";\nexport * from \"./common/cloneDeep.js\";\nexport * from \"./common/maybeDeepFreeze.js\";\nexport * from \"./observables/iteration.js\";\nexport * from \"./observables/asyncMap.js\";\nexport * from \"./observables/Concast.js\";\nexport * from \"./common/arrays.js\";\nexport * from \"./common/errorHandling.js\";\nexport * from \"./common/canUse.js\";\nexport * from \"./common/compact.js\";\n//# sourceMappingURL=index.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export { ApolloConsumer, ApolloProvider, getApolloContext, resetApolloContext } from '@apollo/react-common';\nimport { __rest } from 'tslib';\nimport { useQuery, useMutation, useSubscription } from '@apollo/react-hooks';\nimport PropTypes from 'prop-types';\n\nfunction Query(props) {\n var children = props.children, query = props.query, options = __rest(props, [\"children\", \"query\"]);\n var result = useQuery(query, options);\n return children && result ? children(result) : null;\n}\n(function (Query) {\n Query.propTypes = {\n client: PropTypes.object,\n children: PropTypes.func.isRequired,\n fetchPolicy: PropTypes.string,\n notifyOnNetworkStatusChange: PropTypes.bool,\n onCompleted: PropTypes.func,\n onError: PropTypes.func,\n pollInterval: PropTypes.number,\n query: PropTypes.object.isRequired,\n variables: PropTypes.object,\n ssr: PropTypes.bool,\n partialRefetch: PropTypes.bool,\n returnPartialData: PropTypes.bool\n };\n})(Query || (Query = {}));\n\nfunction Mutation(props) {\n var _a = useMutation(props.mutation, props), runMutation = _a[0], result = _a[1];\n return props.children ? props.children(runMutation, result) : null;\n}\n(function (Mutation) {\n Mutation.propTypes = {\n mutation: PropTypes.object.isRequired,\n variables: PropTypes.object,\n optimisticResponse: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n refetchQueries: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.object])),\n PropTypes.func\n ]),\n awaitRefetchQueries: PropTypes.bool,\n update: PropTypes.func,\n children: PropTypes.func.isRequired,\n onCompleted: PropTypes.func,\n onError: PropTypes.func,\n fetchPolicy: PropTypes.string\n };\n})(Mutation || (Mutation = {}));\n\nfunction Subscription(props) {\n var result = useSubscription(props.subscription, props);\n return props.children && result ? props.children(result) : null;\n}\n(function (Subscription) {\n Subscription.propTypes = {\n subscription: PropTypes.object.isRequired,\n variables: PropTypes.object,\n children: PropTypes.func,\n onSubscriptionData: PropTypes.func,\n onSubscriptionComplete: PropTypes.func,\n shouldResubscribe: PropTypes.oneOfType([PropTypes.func, PropTypes.bool]),\n };\n})(Subscription || (Subscription = {}));\n\nexport { Mutation, Query, Subscription };\n//# sourceMappingURL=react-components.esm.js.map\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","// Font face names to be registered.\nexport var LocalizedFontNames;\n(function (LocalizedFontNames) {\n LocalizedFontNames.Arabic = 'Segoe UI Web (Arabic)';\n LocalizedFontNames.Cyrillic = 'Segoe UI Web (Cyrillic)';\n LocalizedFontNames.EastEuropean = 'Segoe UI Web (East European)';\n LocalizedFontNames.Greek = 'Segoe UI Web (Greek)';\n LocalizedFontNames.Hebrew = 'Segoe UI Web (Hebrew)';\n LocalizedFontNames.Thai = 'Leelawadee UI Web';\n LocalizedFontNames.Vietnamese = 'Segoe UI Web (Vietnamese)';\n LocalizedFontNames.WestEuropean = 'Segoe UI Web (West European)';\n LocalizedFontNames.Selawik = 'Selawik Web';\n LocalizedFontNames.Armenian = 'Segoe UI Web (Armenian)';\n LocalizedFontNames.Georgian = 'Segoe UI Web (Georgian)';\n})(LocalizedFontNames || (LocalizedFontNames = {}));\n// Font families with fallbacks, for the general regions.\nexport var LocalizedFontFamilies;\n(function (LocalizedFontFamilies) {\n LocalizedFontFamilies.Arabic = \"'\" + LocalizedFontNames.Arabic + \"'\";\n LocalizedFontFamilies.ChineseSimplified = \"'Microsoft Yahei UI', Verdana, Simsun\";\n LocalizedFontFamilies.ChineseTraditional = \"'Microsoft Jhenghei UI', Pmingliu\";\n LocalizedFontFamilies.Cyrillic = \"'\" + LocalizedFontNames.Cyrillic + \"'\";\n LocalizedFontFamilies.EastEuropean = \"'\" + LocalizedFontNames.EastEuropean + \"'\";\n LocalizedFontFamilies.Greek = \"'\" + LocalizedFontNames.Greek + \"'\";\n LocalizedFontFamilies.Hebrew = \"'\" + LocalizedFontNames.Hebrew + \"'\";\n LocalizedFontFamilies.Hindi = \"'Nirmala UI'\";\n LocalizedFontFamilies.Japanese = \"'Yu Gothic UI', 'Meiryo UI', Meiryo, 'MS Pgothic', Osaka\";\n LocalizedFontFamilies.Korean = \"'Malgun Gothic', Gulim\";\n LocalizedFontFamilies.Selawik = \"'\" + LocalizedFontNames.Selawik + \"'\";\n LocalizedFontFamilies.Thai = \"'Leelawadee UI Web', 'Kmer UI'\";\n LocalizedFontFamilies.Vietnamese = \"'\" + LocalizedFontNames.Vietnamese + \"'\";\n LocalizedFontFamilies.WestEuropean = \"'\" + LocalizedFontNames.WestEuropean + \"'\";\n LocalizedFontFamilies.Armenian = \"'\" + LocalizedFontNames.Armenian + \"'\";\n LocalizedFontFamilies.Georgian = \"'\" + LocalizedFontNames.Georgian + \"'\";\n})(LocalizedFontFamilies || (LocalizedFontFamilies = {}));\n// Standard font sizes.\nexport var FontSizes;\n(function (FontSizes) {\n FontSizes.size10 = '10px';\n FontSizes.size12 = '12px';\n FontSizes.size14 = '14px';\n FontSizes.size16 = '16px';\n FontSizes.size18 = '18px';\n FontSizes.size20 = '20px';\n FontSizes.size24 = '24px';\n FontSizes.size28 = '28px';\n FontSizes.size32 = '32px';\n FontSizes.size42 = '42px';\n FontSizes.size68 = '68px';\n FontSizes.mini = '10px';\n FontSizes.xSmall = '10px';\n FontSizes.small = '12px';\n FontSizes.smallPlus = '12px';\n FontSizes.medium = '14px';\n FontSizes.mediumPlus = '16px';\n FontSizes.icon = '16px';\n FontSizes.large = '18px';\n FontSizes.xLarge = '20px';\n FontSizes.xLargePlus = '24px';\n FontSizes.xxLarge = '28px';\n FontSizes.xxLargePlus = '32px';\n FontSizes.superLarge = '42px';\n FontSizes.mega = '68px';\n})(FontSizes || (FontSizes = {}));\n// Standard font weights.\nexport var FontWeights;\n(function (FontWeights) {\n FontWeights.light = 100;\n FontWeights.semilight = 300;\n FontWeights.regular = 400;\n FontWeights.semibold = 600;\n FontWeights.bold = 700;\n})(FontWeights || (FontWeights = {}));\n// Standard Icon Sizes.\nexport var IconFontSizes;\n(function (IconFontSizes) {\n IconFontSizes.xSmall = '10px';\n IconFontSizes.small = '12px';\n IconFontSizes.medium = '16px';\n IconFontSizes.large = '20px';\n})(IconFontSizes || (IconFontSizes = {}));\n//# sourceMappingURL=FluentFonts.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { parser, DocumentType, ApolloConsumer } from '@apollo/react-common';\nexport { ApolloConsumer, ApolloProvider, getApolloContext, resetApolloContext } from '@apollo/react-common';\nimport { __extends, __assign, __rest } from 'tslib';\nimport React from 'react';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\nimport { Query, Mutation, Subscription } from '@apollo/react-components';\nimport { invariant } from 'ts-invariant';\n\nvar defaultMapPropsToOptions = function () { return ({}); };\nvar defaultMapPropsToSkip = function () { return false; };\nfunction getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n}\nfunction calculateVariablesFromProps(operation, props) {\n var variables = {};\n for (var _i = 0, _a = operation.variables; _i < _a.length; _i++) {\n var _b = _a[_i], variable = _b.variable, type = _b.type;\n if (!variable.name || !variable.name.value)\n continue;\n var variableName = variable.name.value;\n var variableProp = props[variableName];\n if (typeof variableProp !== 'undefined') {\n variables[variableName] = variableProp;\n continue;\n }\n if (type.kind !== 'NonNullType') {\n variables[variableName] = undefined;\n }\n }\n return variables;\n}\nvar GraphQLBase = (function (_super) {\n __extends(GraphQLBase, _super);\n function GraphQLBase(props) {\n var _this = _super.call(this, props) || this;\n _this.withRef = false;\n _this.setWrappedInstance = _this.setWrappedInstance.bind(_this);\n return _this;\n }\n GraphQLBase.prototype.getWrappedInstance = function () {\n process.env.NODE_ENV === \"production\" ? invariant(this.withRef, 2) : invariant(this.withRef, \"To access the wrapped instance, you need to specify \" +\n \"{ withRef: true } in the options\");\n return this.wrappedInstance;\n };\n GraphQLBase.prototype.setWrappedInstance = function (ref) {\n this.wrappedInstance = ref;\n };\n return GraphQLBase;\n}(React.Component));\n\nfunction withQuery(document, operationOptions) {\n if (operationOptions === void 0) { operationOptions = {}; }\n var operation = parser(document);\n var _a = operationOptions.options, options = _a === void 0 ? defaultMapPropsToOptions : _a, _b = operationOptions.skip, skip = _b === void 0 ? defaultMapPropsToSkip : _b, _c = operationOptions.alias, alias = _c === void 0 ? 'Apollo' : _c;\n var mapPropsToOptions = options;\n if (typeof mapPropsToOptions !== 'function') {\n mapPropsToOptions = function () { return options; };\n }\n var mapPropsToSkip = skip;\n if (typeof mapPropsToSkip !== 'function') {\n mapPropsToSkip = function () { return skip; };\n }\n var lastResultProps;\n return function (WrappedComponent) {\n var graphQLDisplayName = alias + \"(\" + getDisplayName(WrappedComponent) + \")\";\n var GraphQL = (function (_super) {\n __extends(GraphQL, _super);\n function GraphQL() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n GraphQL.prototype.render = function () {\n var _this = this;\n var props = this.props;\n var shouldSkip = mapPropsToSkip(props);\n var opts = shouldSkip\n ? Object.create(null)\n : __assign({}, mapPropsToOptions(props));\n if (!shouldSkip && !opts.variables && operation.variables.length > 0) {\n opts.variables = calculateVariablesFromProps(operation, props);\n }\n return (React.createElement(Query, __assign({}, opts, { displayName: graphQLDisplayName, skip: shouldSkip, query: document }), function (_a) {\n var _b, _c;\n var _ = _a.client, data = _a.data, r = __rest(_a, [\"client\", \"data\"]);\n if (operationOptions.withRef) {\n _this.withRef = true;\n props = Object.assign({}, props, {\n ref: _this.setWrappedInstance\n });\n }\n if (shouldSkip) {\n return (React.createElement(WrappedComponent, __assign({}, props, {})));\n }\n var result = Object.assign(r, data || {});\n var name = operationOptions.name || 'data';\n var childProps = (_b = {}, _b[name] = result, _b);\n if (operationOptions.props) {\n var newResult = (_c = {},\n _c[name] = result,\n _c.ownProps = props,\n _c);\n lastResultProps = operationOptions.props(newResult, lastResultProps);\n childProps = lastResultProps;\n }\n return (React.createElement(WrappedComponent, __assign({}, props, childProps)));\n }));\n };\n GraphQL.displayName = graphQLDisplayName;\n GraphQL.WrappedComponent = WrappedComponent;\n return GraphQL;\n }(GraphQLBase));\n return hoistNonReactStatics(GraphQL, WrappedComponent, {});\n };\n}\n\nfunction withMutation(document, operationOptions) {\n if (operationOptions === void 0) { operationOptions = {}; }\n var operation = parser(document);\n var _a = operationOptions.options, options = _a === void 0 ? defaultMapPropsToOptions : _a, _b = operationOptions.alias, alias = _b === void 0 ? 'Apollo' : _b;\n var mapPropsToOptions = options;\n if (typeof mapPropsToOptions !== 'function')\n mapPropsToOptions = function () { return options; };\n return function (WrappedComponent) {\n var graphQLDisplayName = alias + \"(\" + getDisplayName(WrappedComponent) + \")\";\n var GraphQL = (function (_super) {\n __extends(GraphQL, _super);\n function GraphQL() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n GraphQL.prototype.render = function () {\n var props = this.props;\n var opts = mapPropsToOptions(props);\n if (operationOptions.withRef) {\n this.withRef = true;\n props = Object.assign({}, props, {\n ref: this.setWrappedInstance\n });\n }\n if (!opts.variables && operation.variables.length > 0) {\n opts.variables = calculateVariablesFromProps(operation, props);\n }\n return (React.createElement(Mutation, __assign({ ignoreResults: true }, opts, { mutation: document }), function (mutate, _a) {\n var _b, _c;\n var data = _a.data, r = __rest(_a, [\"data\"]);\n var result = Object.assign(r, data || {});\n var name = operationOptions.name || 'mutate';\n var resultName = operationOptions.name\n ? name + \"Result\"\n : 'result';\n var childProps = (_b = {},\n _b[name] = mutate,\n _b[resultName] = result,\n _b);\n if (operationOptions.props) {\n var newResult = (_c = {},\n _c[name] = mutate,\n _c[resultName] = result,\n _c.ownProps = props,\n _c);\n childProps = operationOptions.props(newResult);\n }\n return React.createElement(WrappedComponent, __assign({}, props, childProps));\n }));\n };\n GraphQL.displayName = graphQLDisplayName;\n GraphQL.WrappedComponent = WrappedComponent;\n return GraphQL;\n }(GraphQLBase));\n return hoistNonReactStatics(GraphQL, WrappedComponent, {});\n };\n}\n\nfunction withSubscription(document, operationOptions) {\n if (operationOptions === void 0) { operationOptions = {}; }\n var operation = parser(document);\n var _a = operationOptions.options, options = _a === void 0 ? defaultMapPropsToOptions : _a, _b = operationOptions.skip, skip = _b === void 0 ? defaultMapPropsToSkip : _b, _c = operationOptions.alias, alias = _c === void 0 ? 'Apollo' : _c, shouldResubscribe = operationOptions.shouldResubscribe;\n var mapPropsToOptions = options;\n if (typeof mapPropsToOptions !== 'function')\n mapPropsToOptions = function () { return options; };\n var mapPropsToSkip = skip;\n if (typeof mapPropsToSkip !== 'function')\n mapPropsToSkip = function () { return skip; };\n var lastResultProps;\n return function (WrappedComponent) {\n var graphQLDisplayName = alias + \"(\" + getDisplayName(WrappedComponent) + \")\";\n var GraphQL = (function (_super) {\n __extends(GraphQL, _super);\n function GraphQL(props) {\n var _this = _super.call(this, props) || this;\n _this.state = { resubscribe: false };\n return _this;\n }\n GraphQL.prototype.componentDidUpate = function (prevProps) {\n if (shouldResubscribe) {\n this.setState({\n resubscribe: shouldResubscribe(prevProps, this.props)\n });\n }\n };\n GraphQL.prototype.render = function () {\n var _this = this;\n var props = this.props;\n var shouldSkip = mapPropsToSkip(props);\n var opts = shouldSkip\n ? Object.create(null)\n : mapPropsToOptions(props);\n if (!shouldSkip && !opts.variables && operation.variables.length > 0) {\n opts.variables = calculateVariablesFromProps(operation, props);\n }\n return (React.createElement(Subscription, __assign({}, opts, { displayName: graphQLDisplayName, skip: shouldSkip, subscription: document, shouldResubscribe: this.state.resubscribe }), function (_a) {\n var _b, _c;\n var data = _a.data, r = __rest(_a, [\"data\"]);\n if (operationOptions.withRef) {\n _this.withRef = true;\n props = Object.assign({}, props, {\n ref: _this.setWrappedInstance\n });\n }\n if (shouldSkip) {\n return (React.createElement(WrappedComponent, __assign({}, props, {})));\n }\n var result = Object.assign(r, data || {});\n var name = operationOptions.name || 'data';\n var childProps = (_b = {}, _b[name] = result, _b);\n if (operationOptions.props) {\n var newResult = (_c = {},\n _c[name] = result,\n _c.ownProps = props,\n _c);\n lastResultProps = operationOptions.props(newResult, lastResultProps);\n childProps = lastResultProps;\n }\n return (React.createElement(WrappedComponent, __assign({}, props, childProps)));\n }));\n };\n GraphQL.displayName = graphQLDisplayName;\n GraphQL.WrappedComponent = WrappedComponent;\n return GraphQL;\n }(GraphQLBase));\n return hoistNonReactStatics(GraphQL, WrappedComponent, {});\n };\n}\n\nfunction graphql(document, operationOptions) {\n if (operationOptions === void 0) { operationOptions = {}; }\n switch (parser(document).type) {\n case DocumentType.Mutation:\n return withMutation(document, operationOptions);\n case DocumentType.Subscription:\n return withSubscription(document, operationOptions);\n case DocumentType.Query:\n default:\n return withQuery(document, operationOptions);\n }\n}\n\nfunction getDisplayName$1(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n}\nfunction withApollo(WrappedComponent, operationOptions) {\n if (operationOptions === void 0) { operationOptions = {}; }\n var withDisplayName = \"withApollo(\" + getDisplayName$1(WrappedComponent) + \")\";\n var WithApollo = (function (_super) {\n __extends(WithApollo, _super);\n function WithApollo(props) {\n var _this = _super.call(this, props) || this;\n _this.setWrappedInstance = _this.setWrappedInstance.bind(_this);\n return _this;\n }\n WithApollo.prototype.getWrappedInstance = function () {\n process.env.NODE_ENV === \"production\" ? invariant(operationOptions.withRef, 1) : invariant(operationOptions.withRef, \"To access the wrapped instance, you need to specify \" +\n \"{ withRef: true } in the options\");\n return this.wrappedInstance;\n };\n WithApollo.prototype.setWrappedInstance = function (ref) {\n this.wrappedInstance = ref;\n };\n WithApollo.prototype.render = function () {\n var _this = this;\n return (React.createElement(ApolloConsumer, null, function (client) {\n var props = Object.assign({}, _this.props, {\n client: client,\n ref: operationOptions.withRef\n ? _this.setWrappedInstance\n : undefined\n });\n return React.createElement(WrappedComponent, __assign({}, props));\n }));\n };\n WithApollo.displayName = withDisplayName;\n WithApollo.WrappedComponent = WrappedComponent;\n return WithApollo;\n }(React.Component));\n return hoistNonReactStatics(WithApollo, WrappedComponent, {});\n}\n\nexport { graphql, withApollo, withMutation, withQuery, withSubscription };\n//# sourceMappingURL=react-hoc.esm.js.map\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import React from 'react';\nimport { invariant } from 'ts-invariant';\n\nvar apolloContext;\nfunction getApolloContext() {\n if (!apolloContext) {\n apolloContext = React.createContext({});\n }\n return apolloContext;\n}\nfunction resetApolloContext() {\n apolloContext = React.createContext({});\n}\n\nvar ApolloProvider = function (_a) {\n var client = _a.client, children = _a.children;\n var ApolloContext = getApolloContext();\n return React.createElement(ApolloContext.Consumer, null, function (context) {\n if (context === void 0) { context = {}; }\n if (client && context.client !== client) {\n context = Object.assign({}, context, { client: client });\n }\n process.env.NODE_ENV === \"production\" ? invariant(context.client, 5) : invariant(context.client, 'ApolloProvider was not passed a client instance. Make ' +\n 'sure you pass in your client via the \"client\" prop.');\n return (React.createElement(ApolloContext.Provider, { value: context }, children));\n });\n};\n\nvar ApolloConsumer = function (props) {\n var ApolloContext = getApolloContext();\n return React.createElement(ApolloContext.Consumer, null, function (context) {\n process.env.NODE_ENV === \"production\" ? invariant(context && context.client, 6) : invariant(context && context.client, 'Could not find \"client\" in the context of ApolloConsumer. ' +\n 'Wrap the root component in an .');\n return props.children(context.client);\n });\n};\n\nvar DocumentType;\n(function (DocumentType) {\n DocumentType[DocumentType[\"Query\"] = 0] = \"Query\";\n DocumentType[DocumentType[\"Mutation\"] = 1] = \"Mutation\";\n DocumentType[DocumentType[\"Subscription\"] = 2] = \"Subscription\";\n})(DocumentType || (DocumentType = {}));\nvar cache = new Map();\nfunction operationName(type) {\n var name;\n switch (type) {\n case DocumentType.Query:\n name = 'Query';\n break;\n case DocumentType.Mutation:\n name = 'Mutation';\n break;\n case DocumentType.Subscription:\n name = 'Subscription';\n break;\n }\n return name;\n}\nfunction parser(document) {\n var cached = cache.get(document);\n if (cached)\n return cached;\n var variables, type, name;\n process.env.NODE_ENV === \"production\" ? invariant(!!document && !!document.kind, 1) : invariant(!!document && !!document.kind, \"Argument of \" + document + \" passed to parser was not a valid GraphQL \" +\n \"DocumentNode. You may need to use 'graphql-tag' or another method \" +\n \"to convert your operation into a document\");\n var fragments = document.definitions.filter(function (x) { return x.kind === 'FragmentDefinition'; });\n var queries = document.definitions.filter(function (x) {\n return x.kind === 'OperationDefinition' && x.operation === 'query';\n });\n var mutations = document.definitions.filter(function (x) {\n return x.kind === 'OperationDefinition' && x.operation === 'mutation';\n });\n var subscriptions = document.definitions.filter(function (x) {\n return x.kind === 'OperationDefinition' && x.operation === 'subscription';\n });\n process.env.NODE_ENV === \"production\" ? invariant(!fragments.length ||\n (queries.length || mutations.length || subscriptions.length), 2) : invariant(!fragments.length ||\n (queries.length || mutations.length || subscriptions.length), \"Passing only a fragment to 'graphql' is not yet supported. \" +\n \"You must include a query, subscription or mutation as well\");\n process.env.NODE_ENV === \"production\" ? invariant(queries.length + mutations.length + subscriptions.length <= 1, 3) : invariant(queries.length + mutations.length + subscriptions.length <= 1, \"react-apollo only supports a query, subscription, or a mutation per HOC. \" +\n (document + \" had \" + queries.length + \" queries, \" + subscriptions.length + \" \") +\n (\"subscriptions and \" + mutations.length + \" mutations. \") +\n \"You can use 'compose' to join multiple operation types to a component\");\n type = queries.length ? DocumentType.Query : DocumentType.Mutation;\n if (!queries.length && !mutations.length)\n type = DocumentType.Subscription;\n var definitions = queries.length\n ? queries\n : mutations.length\n ? mutations\n : subscriptions;\n process.env.NODE_ENV === \"production\" ? invariant(definitions.length === 1, 4) : invariant(definitions.length === 1, \"react-apollo only supports one definition per HOC. \" + document + \" had \" +\n (definitions.length + \" definitions. \") +\n \"You can use 'compose' to join multiple operation types to a component\");\n var definition = definitions[0];\n variables = definition.variableDefinitions || [];\n if (definition.name && definition.name.kind === 'Name') {\n name = definition.name.value;\n }\n else {\n name = 'data';\n }\n var payload = { name: name, type: type, variables: variables };\n cache.set(document, payload);\n return payload;\n}\n\nexport { ApolloConsumer, ApolloProvider, DocumentType, getApolloContext, operationName, parser, resetApolloContext };\n//# sourceMappingURL=react-common.esm.js.map\n","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export var NetworkStatus;\n(function (NetworkStatus) {\n NetworkStatus[NetworkStatus[\"loading\"] = 1] = \"loading\";\n NetworkStatus[NetworkStatus[\"setVariables\"] = 2] = \"setVariables\";\n NetworkStatus[NetworkStatus[\"fetchMore\"] = 3] = \"fetchMore\";\n NetworkStatus[NetworkStatus[\"refetch\"] = 4] = \"refetch\";\n NetworkStatus[NetworkStatus[\"poll\"] = 6] = \"poll\";\n NetworkStatus[NetworkStatus[\"ready\"] = 7] = \"ready\";\n NetworkStatus[NetworkStatus[\"error\"] = 8] = \"error\";\n})(NetworkStatus || (NetworkStatus = {}));\nexport function isNetworkRequestInFlight(networkStatus) {\n return networkStatus ? networkStatus < 7 : false;\n}\n//# sourceMappingURL=networkStatus.js.map","import { isReference, isField, DeepMerger, } from \"../../utilities/index.js\";\nexport var hasOwn = Object.prototype.hasOwnProperty;\nexport function getTypenameFromStoreObject(store, objectOrReference) {\n return isReference(objectOrReference)\n ? store.get(objectOrReference.__ref, \"__typename\")\n : objectOrReference && objectOrReference.__typename;\n}\nvar FieldNamePattern = /^[_A-Za-z0-9]+/;\nexport function fieldNameFromStoreName(storeFieldName) {\n var match = storeFieldName.match(FieldNamePattern);\n return match ? match[0] : storeFieldName;\n}\nexport function storeValueIsStoreObject(value) {\n return value !== null &&\n typeof value === \"object\" &&\n !isReference(value) &&\n !Array.isArray(value);\n}\nexport function isFieldValueToBeMerged(value) {\n var field = value && value.__field;\n return field && isField(field);\n}\nexport function makeProcessedFieldsMerger() {\n return new DeepMerger(reconcileProcessedFields);\n}\nvar reconcileProcessedFields = function (existingObject, incomingObject, property) {\n var existing = existingObject[property];\n var incoming = incomingObject[property];\n if (isFieldValueToBeMerged(existing)) {\n existing.__value = this.merge(existing.__value, isFieldValueToBeMerged(incoming)\n ? incoming.__value\n : incoming);\n return existing;\n }\n if (isFieldValueToBeMerged(incoming)) {\n incoming.__value = this.merge(existing, incoming.__value);\n return incoming;\n }\n return this.merge(existing, incoming);\n};\n//# sourceMappingURL=helpers.js.map","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { Slot } from '@wry/context';\nexport { asyncFromGen, bind as bindContext, noContext, setTimeout } from '@wry/context';\n\nfunction defaultDispose() { }\r\nvar Cache = /** @class */ (function () {\r\n function Cache(max, dispose) {\r\n if (max === void 0) { max = Infinity; }\r\n if (dispose === void 0) { dispose = defaultDispose; }\r\n this.max = max;\r\n this.dispose = dispose;\r\n this.map = new Map();\r\n this.newest = null;\r\n this.oldest = null;\r\n }\r\n Cache.prototype.has = function (key) {\r\n return this.map.has(key);\r\n };\r\n Cache.prototype.get = function (key) {\r\n var entry = this.getEntry(key);\r\n return entry && entry.value;\r\n };\r\n Cache.prototype.getEntry = function (key) {\r\n var entry = this.map.get(key);\r\n if (entry && entry !== this.newest) {\r\n var older = entry.older, newer = entry.newer;\r\n if (newer) {\r\n newer.older = older;\r\n }\r\n if (older) {\r\n older.newer = newer;\r\n }\r\n entry.older = this.newest;\r\n entry.older.newer = entry;\r\n entry.newer = null;\r\n this.newest = entry;\r\n if (entry === this.oldest) {\r\n this.oldest = newer;\r\n }\r\n }\r\n return entry;\r\n };\r\n Cache.prototype.set = function (key, value) {\r\n var entry = this.getEntry(key);\r\n if (entry) {\r\n return entry.value = value;\r\n }\r\n entry = {\r\n key: key,\r\n value: value,\r\n newer: null,\r\n older: this.newest\r\n };\r\n if (this.newest) {\r\n this.newest.newer = entry;\r\n }\r\n this.newest = entry;\r\n this.oldest = this.oldest || entry;\r\n this.map.set(key, entry);\r\n return entry.value;\r\n };\r\n Cache.prototype.clean = function () {\r\n while (this.oldest && this.map.size > this.max) {\r\n this.delete(this.oldest.key);\r\n }\r\n };\r\n Cache.prototype.delete = function (key) {\r\n var entry = this.map.get(key);\r\n if (entry) {\r\n if (entry === this.newest) {\r\n this.newest = entry.older;\r\n }\r\n if (entry === this.oldest) {\r\n this.oldest = entry.newer;\r\n }\r\n if (entry.newer) {\r\n entry.newer.older = entry.older;\r\n }\r\n if (entry.older) {\r\n entry.older.newer = entry.newer;\r\n }\r\n this.map.delete(key);\r\n this.dispose(entry.value, key);\r\n return true;\r\n }\r\n return false;\r\n };\r\n return Cache;\r\n}());\n\nvar parentEntrySlot = new Slot();\n\nfunction maybeUnsubscribe(entryOrDep) {\r\n var unsubscribe = entryOrDep.unsubscribe;\r\n if (typeof unsubscribe === \"function\") {\r\n entryOrDep.unsubscribe = void 0;\r\n unsubscribe();\r\n }\r\n}\n\nvar emptySetPool = [];\r\nvar POOL_TARGET_SIZE = 100;\r\n// Since this package might be used browsers, we should avoid using the\r\n// Node built-in assert module.\r\nfunction assert(condition, optionalMessage) {\r\n if (!condition) {\r\n throw new Error(optionalMessage || \"assertion failure\");\r\n }\r\n}\r\nfunction valueIs(a, b) {\r\n var len = a.length;\r\n return (\r\n // Unknown values are not equal to each other.\r\n len > 0 &&\r\n // Both values must be ordinary (or both exceptional) to be equal.\r\n len === b.length &&\r\n // The underlying value or exception must be the same.\r\n a[len - 1] === b[len - 1]);\r\n}\r\nfunction valueGet(value) {\r\n switch (value.length) {\r\n case 0: throw new Error(\"unknown value\");\r\n case 1: return value[0];\r\n case 2: throw value[1];\r\n }\r\n}\r\nfunction valueCopy(value) {\r\n return value.slice(0);\r\n}\r\nvar Entry = /** @class */ (function () {\r\n function Entry(fn, args) {\r\n this.fn = fn;\r\n this.args = args;\r\n this.parents = new Set();\r\n this.childValues = new Map();\r\n // When this Entry has children that are dirty, this property becomes\r\n // a Set containing other Entry objects, borrowed from emptySetPool.\r\n // When the set becomes empty, it gets recycled back to emptySetPool.\r\n this.dirtyChildren = null;\r\n this.dirty = true;\r\n this.recomputing = false;\r\n this.value = [];\r\n this.deps = null;\r\n ++Entry.count;\r\n }\r\n Entry.prototype.peek = function () {\r\n if (this.value.length === 1 && !mightBeDirty(this)) {\r\n return this.value[0];\r\n }\r\n };\r\n // This is the most important method of the Entry API, because it\r\n // determines whether the cached this.value can be returned immediately,\r\n // or must be recomputed. The overall performance of the caching system\r\n // depends on the truth of the following observations: (1) this.dirty is\r\n // usually false, (2) this.dirtyChildren is usually null/empty, and thus\r\n // (3) valueGet(this.value) is usually returned without recomputation.\r\n Entry.prototype.recompute = function () {\r\n assert(!this.recomputing, \"already recomputing\");\r\n rememberParent(this);\r\n return mightBeDirty(this)\r\n ? reallyRecompute(this)\r\n : valueGet(this.value);\r\n };\r\n Entry.prototype.setDirty = function () {\r\n if (this.dirty)\r\n return;\r\n this.dirty = true;\r\n this.value.length = 0;\r\n reportDirty(this);\r\n forgetChildren(this);\r\n // We can go ahead and unsubscribe here, since any further dirty\r\n // notifications we receive will be redundant, and unsubscribing may\r\n // free up some resources, e.g. file watchers.\r\n maybeUnsubscribe(this);\r\n };\r\n Entry.prototype.dispose = function () {\r\n var _this = this;\r\n forgetChildren(this);\r\n maybeUnsubscribe(this);\r\n // Because this entry has been kicked out of the cache (in index.js),\r\n // we've lost the ability to find out if/when this entry becomes dirty,\r\n // whether that happens through a subscription, because of a direct call\r\n // to entry.setDirty(), or because one of its children becomes dirty.\r\n // Because of this loss of future information, we have to assume the\r\n // worst (that this entry might have become dirty very soon), so we must\r\n // immediately mark this entry's parents as dirty. Normally we could\r\n // just call entry.setDirty() rather than calling parent.setDirty() for\r\n // each parent, but that would leave this entry in parent.childValues\r\n // and parent.dirtyChildren, which would prevent the child from being\r\n // truly forgotten.\r\n this.parents.forEach(function (parent) {\r\n parent.setDirty();\r\n forgetChild(parent, _this);\r\n });\r\n };\r\n Entry.prototype.dependOn = function (dep) {\r\n dep.add(this);\r\n if (!this.deps) {\r\n this.deps = emptySetPool.pop() || new Set();\r\n }\r\n this.deps.add(dep);\r\n };\r\n Entry.prototype.forgetDeps = function () {\r\n var _this = this;\r\n if (this.deps) {\r\n this.deps.forEach(function (dep) { return dep.delete(_this); });\r\n this.deps.clear();\r\n emptySetPool.push(this.deps);\r\n this.deps = null;\r\n }\r\n };\r\n Entry.count = 0;\r\n return Entry;\r\n}());\r\nfunction rememberParent(child) {\r\n var parent = parentEntrySlot.getValue();\r\n if (parent) {\r\n child.parents.add(parent);\r\n if (!parent.childValues.has(child)) {\r\n parent.childValues.set(child, []);\r\n }\r\n if (mightBeDirty(child)) {\r\n reportDirtyChild(parent, child);\r\n }\r\n else {\r\n reportCleanChild(parent, child);\r\n }\r\n return parent;\r\n }\r\n}\r\nfunction reallyRecompute(entry) {\r\n forgetChildren(entry);\r\n // Set entry as the parent entry while calling recomputeNewValue(entry).\r\n parentEntrySlot.withValue(entry, recomputeNewValue, [entry]);\r\n if (maybeSubscribe(entry)) {\r\n // If we successfully recomputed entry.value and did not fail to\r\n // (re)subscribe, then this Entry is no longer explicitly dirty.\r\n setClean(entry);\r\n }\r\n return valueGet(entry.value);\r\n}\r\nfunction recomputeNewValue(entry) {\r\n entry.recomputing = true;\r\n // Set entry.value as unknown.\r\n entry.value.length = 0;\r\n try {\r\n // If entry.fn succeeds, entry.value will become a normal Value.\r\n entry.value[0] = entry.fn.apply(null, entry.args);\r\n }\r\n catch (e) {\r\n // If entry.fn throws, entry.value will become exceptional.\r\n entry.value[1] = e;\r\n }\r\n // Either way, this line is always reached.\r\n entry.recomputing = false;\r\n}\r\nfunction mightBeDirty(entry) {\r\n return entry.dirty || !!(entry.dirtyChildren && entry.dirtyChildren.size);\r\n}\r\nfunction setClean(entry) {\r\n entry.dirty = false;\r\n if (mightBeDirty(entry)) {\r\n // This Entry may still have dirty children, in which case we can't\r\n // let our parents know we're clean just yet.\r\n return;\r\n }\r\n reportClean(entry);\r\n}\r\nfunction reportDirty(child) {\r\n child.parents.forEach(function (parent) { return reportDirtyChild(parent, child); });\r\n}\r\nfunction reportClean(child) {\r\n child.parents.forEach(function (parent) { return reportCleanChild(parent, child); });\r\n}\r\n// Let a parent Entry know that one of its children may be dirty.\r\nfunction reportDirtyChild(parent, child) {\r\n // Must have called rememberParent(child) before calling\r\n // reportDirtyChild(parent, child).\r\n assert(parent.childValues.has(child));\r\n assert(mightBeDirty(child));\r\n if (!parent.dirtyChildren) {\r\n parent.dirtyChildren = emptySetPool.pop() || new Set;\r\n }\r\n else if (parent.dirtyChildren.has(child)) {\r\n // If we already know this child is dirty, then we must have already\r\n // informed our own parents that we are dirty, so we can terminate\r\n // the recursion early.\r\n return;\r\n }\r\n parent.dirtyChildren.add(child);\r\n reportDirty(parent);\r\n}\r\n// Let a parent Entry know that one of its children is no longer dirty.\r\nfunction reportCleanChild(parent, child) {\r\n // Must have called rememberChild(child) before calling\r\n // reportCleanChild(parent, child).\r\n assert(parent.childValues.has(child));\r\n assert(!mightBeDirty(child));\r\n var childValue = parent.childValues.get(child);\r\n if (childValue.length === 0) {\r\n parent.childValues.set(child, valueCopy(child.value));\r\n }\r\n else if (!valueIs(childValue, child.value)) {\r\n parent.setDirty();\r\n }\r\n removeDirtyChild(parent, child);\r\n if (mightBeDirty(parent)) {\r\n return;\r\n }\r\n reportClean(parent);\r\n}\r\nfunction removeDirtyChild(parent, child) {\r\n var dc = parent.dirtyChildren;\r\n if (dc) {\r\n dc.delete(child);\r\n if (dc.size === 0) {\r\n if (emptySetPool.length < POOL_TARGET_SIZE) {\r\n emptySetPool.push(dc);\r\n }\r\n parent.dirtyChildren = null;\r\n }\r\n }\r\n}\r\n// Removes all children from this entry and returns an array of the\r\n// removed children.\r\nfunction forgetChildren(parent) {\r\n if (parent.childValues.size > 0) {\r\n parent.childValues.forEach(function (_value, child) {\r\n forgetChild(parent, child);\r\n });\r\n }\r\n // Remove this parent Entry from any sets to which it was added by the\r\n // addToSet method.\r\n parent.forgetDeps();\r\n // After we forget all our children, this.dirtyChildren must be empty\r\n // and therefore must have been reset to null.\r\n assert(parent.dirtyChildren === null);\r\n}\r\nfunction forgetChild(parent, child) {\r\n child.parents.delete(parent);\r\n parent.childValues.delete(child);\r\n removeDirtyChild(parent, child);\r\n}\r\nfunction maybeSubscribe(entry) {\r\n if (typeof entry.subscribe === \"function\") {\r\n try {\r\n maybeUnsubscribe(entry); // Prevent double subscriptions.\r\n entry.unsubscribe = entry.subscribe.apply(null, entry.args);\r\n }\r\n catch (e) {\r\n // If this Entry has a subscribe function and it threw an exception\r\n // (or an unsubscribe function it previously returned now throws),\r\n // return false to indicate that we were not able to subscribe (or\r\n // unsubscribe), and this Entry should remain dirty.\r\n entry.setDirty();\r\n return false;\r\n }\r\n }\r\n // Returning true indicates either that there was no entry.subscribe\r\n // function or that it succeeded.\r\n return true;\r\n}\n\n// A trie data structure that holds object keys weakly, yet can also hold\r\n// non-object keys, unlike the native `WeakMap`.\r\n// If no makeData function is supplied, the looked-up data will be an empty,\r\n// no-prototype Object.\r\nvar defaultMakeData = function () { return Object.create(null); };\r\nvar KeyTrie = /** @class */ (function () {\r\n function KeyTrie(weakness, makeData) {\r\n if (makeData === void 0) { makeData = defaultMakeData; }\r\n this.weakness = weakness;\r\n this.makeData = makeData;\r\n }\r\n KeyTrie.prototype.lookup = function () {\r\n var array = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n array[_i] = arguments[_i];\r\n }\r\n return this.lookupArray(array);\r\n };\r\n KeyTrie.prototype.lookupArray = function (array) {\r\n var node = this;\r\n array.forEach(function (key) { return node = node.getChildTrie(key); });\r\n return node.data || (node.data = this.makeData(array.slice(0)));\r\n };\r\n KeyTrie.prototype.getChildTrie = function (key) {\r\n var map = this.weakness && isObjRef(key)\r\n ? this.weak || (this.weak = new WeakMap())\r\n : this.strong || (this.strong = new Map());\r\n var child = map.get(key);\r\n if (!child)\r\n map.set(key, child = new KeyTrie(this.weakness, this.makeData));\r\n return child;\r\n };\r\n return KeyTrie;\r\n}());\r\nfunction isObjRef(value) {\r\n switch (typeof value) {\r\n case \"object\":\r\n if (value === null)\r\n break;\r\n // Fall through to return true...\r\n case \"function\":\r\n return true;\r\n }\r\n return false;\r\n}\n\nfunction dep(options) {\r\n var depsByKey = new Map();\r\n var subscribe = options && options.subscribe;\r\n function depend(key) {\r\n var parent = parentEntrySlot.getValue();\r\n if (parent) {\r\n var dep_1 = depsByKey.get(key);\r\n if (!dep_1) {\r\n depsByKey.set(key, dep_1 = new Set);\r\n }\r\n parent.dependOn(dep_1);\r\n if (typeof subscribe === \"function\") {\r\n maybeUnsubscribe(dep_1);\r\n dep_1.unsubscribe = subscribe(key);\r\n }\r\n }\r\n }\r\n depend.dirty = function dirty(key) {\r\n var dep = depsByKey.get(key);\r\n if (dep) {\r\n dep.forEach(function (entry) { return entry.setDirty(); });\r\n depsByKey.delete(key);\r\n maybeUnsubscribe(dep);\r\n }\r\n };\r\n return depend;\r\n}\n\n// The defaultMakeCacheKey function is remarkably powerful, because it gives\r\n// a unique object for any shallow-identical list of arguments. If you need\r\n// to implement a custom makeCacheKey function, you may find it helpful to\r\n// delegate the final work to defaultMakeCacheKey, which is why we export it\r\n// here. However, you may want to avoid defaultMakeCacheKey if your runtime\r\n// does not support WeakMap, or you have the ability to return a string key.\r\n// In those cases, just write your own custom makeCacheKey functions.\r\nvar keyTrie = new KeyTrie(typeof WeakMap === \"function\");\r\nfunction defaultMakeCacheKey() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n return keyTrie.lookupArray(args);\r\n}\r\nvar caches = new Set();\r\nfunction wrap(originalFunction, options) {\r\n if (options === void 0) { options = Object.create(null); }\r\n var cache = new Cache(options.max || Math.pow(2, 16), function (entry) { return entry.dispose(); });\r\n var keyArgs = options.keyArgs || (function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n return args;\r\n });\r\n var makeCacheKey = options.makeCacheKey || defaultMakeCacheKey;\r\n function optimistic() {\r\n var key = makeCacheKey.apply(null, keyArgs.apply(null, arguments));\r\n if (key === void 0) {\r\n return originalFunction.apply(null, arguments);\r\n }\r\n var args = Array.prototype.slice.call(arguments);\r\n var entry = cache.get(key);\r\n if (entry) {\r\n entry.args = args;\r\n }\r\n else {\r\n entry = new Entry(originalFunction, args);\r\n cache.set(key, entry);\r\n entry.subscribe = options.subscribe;\r\n }\r\n var value = entry.recompute();\r\n // Move this entry to the front of the least-recently used queue,\r\n // since we just finished computing its value.\r\n cache.set(key, entry);\r\n caches.add(cache);\r\n // Clean up any excess entries in the cache, but only if there is no\r\n // active parent entry, meaning we're not in the middle of a larger\r\n // computation that might be flummoxed by the cleaning.\r\n if (!parentEntrySlot.hasValue()) {\r\n caches.forEach(function (cache) { return cache.clean(); });\r\n caches.clear();\r\n }\r\n return value;\r\n }\r\n function lookup() {\r\n var key = makeCacheKey.apply(null, arguments);\r\n if (key !== void 0) {\r\n return cache.get(key);\r\n }\r\n }\r\n optimistic.dirty = function () {\r\n var entry = lookup.apply(null, arguments);\r\n if (entry) {\r\n entry.setDirty();\r\n }\r\n };\r\n optimistic.peek = function () {\r\n var entry = lookup.apply(null, arguments);\r\n if (entry) {\r\n return entry.peek();\r\n }\r\n };\r\n return optimistic;\r\n}\n\nexport { KeyTrie, defaultMakeCacheKey, dep, wrap };\n//# sourceMappingURL=bundle.esm.js.map\n","var _a = Object.prototype, toString = _a.toString, hasOwnProperty = _a.hasOwnProperty;\r\nvar fnToStr = Function.prototype.toString;\r\nvar previousComparisons = new Map();\r\n/**\r\n * Performs a deep equality check on two JavaScript values, tolerating cycles.\r\n */\r\nfunction equal(a, b) {\r\n try {\r\n return check(a, b);\r\n }\r\n finally {\r\n previousComparisons.clear();\r\n }\r\n}\r\nfunction check(a, b) {\r\n // If the two values are strictly equal, our job is easy.\r\n if (a === b) {\r\n return true;\r\n }\r\n // Object.prototype.toString returns a representation of the runtime type of\r\n // the given value that is considerably more precise than typeof.\r\n var aTag = toString.call(a);\r\n var bTag = toString.call(b);\r\n // If the runtime types of a and b are different, they could maybe be equal\r\n // under some interpretation of equality, but for simplicity and performance\r\n // we just return false instead.\r\n if (aTag !== bTag) {\r\n return false;\r\n }\r\n switch (aTag) {\r\n case '[object Array]':\r\n // Arrays are a lot like other objects, but we can cheaply compare their\r\n // lengths as a short-cut before comparing their elements.\r\n if (a.length !== b.length)\r\n return false;\r\n // Fall through to object case...\r\n case '[object Object]': {\r\n if (previouslyCompared(a, b))\r\n return true;\r\n var aKeys = Object.keys(a);\r\n var bKeys = Object.keys(b);\r\n // If `a` and `b` have a different number of enumerable keys, they\r\n // must be different.\r\n var keyCount = aKeys.length;\r\n if (keyCount !== bKeys.length)\r\n return false;\r\n // Now make sure they have the same keys.\r\n for (var k = 0; k < keyCount; ++k) {\r\n if (!hasOwnProperty.call(b, aKeys[k])) {\r\n return false;\r\n }\r\n }\r\n // Finally, check deep equality of all child properties.\r\n for (var k = 0; k < keyCount; ++k) {\r\n var key = aKeys[k];\r\n if (!check(a[key], b[key])) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n case '[object Error]':\r\n return a.name === b.name && a.message === b.message;\r\n case '[object Number]':\r\n // Handle NaN, which is !== itself.\r\n if (a !== a)\r\n return b !== b;\r\n // Fall through to shared +a === +b case...\r\n case '[object Boolean]':\r\n case '[object Date]':\r\n return +a === +b;\r\n case '[object RegExp]':\r\n case '[object String]':\r\n return a == \"\" + b;\r\n case '[object Map]':\r\n case '[object Set]': {\r\n if (a.size !== b.size)\r\n return false;\r\n if (previouslyCompared(a, b))\r\n return true;\r\n var aIterator = a.entries();\r\n var isMap = aTag === '[object Map]';\r\n while (true) {\r\n var info = aIterator.next();\r\n if (info.done)\r\n break;\r\n // If a instanceof Set, aValue === aKey.\r\n var _a = info.value, aKey = _a[0], aValue = _a[1];\r\n // So this works the same way for both Set and Map.\r\n if (!b.has(aKey)) {\r\n return false;\r\n }\r\n // However, we care about deep equality of values only when dealing\r\n // with Map structures.\r\n if (isMap && !check(aValue, b.get(aKey))) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n case '[object Function]': {\r\n var aCode = fnToStr.call(a);\r\n if (aCode !== fnToStr.call(b)) {\r\n return false;\r\n }\r\n // We consider non-native functions equal if they have the same code\r\n // (native functions require === because their code is censored).\r\n // Note that this behavior is not entirely sound, since !== function\r\n // objects with the same code can behave differently depending on\r\n // their closure scope. However, any function can behave differently\r\n // depending on the values of its input arguments (including this)\r\n // and its calling context (including its closure scope), even\r\n // though the function object is === to itself; and it is entirely\r\n // possible for functions that are not === to behave exactly the\r\n // same under all conceivable circumstances. Because none of these\r\n // factors are statically decidable in JavaScript, JS function\r\n // equality is not well-defined. This ambiguity allows us to\r\n // consider the best possible heuristic among various imperfect\r\n // options, and equating non-native functions that have the same\r\n // code has enormous practical benefits, such as when comparing\r\n // functions that are repeatedly passed as fresh function\r\n // expressions within objects that are otherwise deeply equal. Since\r\n // any function created from the same syntactic expression (in the\r\n // same code location) will always stringify to the same code\r\n // according to fnToStr.call, we can reasonably expect these\r\n // repeatedly passed function expressions to have the same code, and\r\n // thus behave \"the same\" (with all the caveats mentioned above),\r\n // even though the runtime function objects are !== to one another.\r\n return !endsWith(aCode, nativeCodeSuffix);\r\n }\r\n }\r\n // Otherwise the values are not equal.\r\n return false;\r\n}\r\nvar nativeCodeSuffix = \"{ [native code] }\";\r\nfunction endsWith(full, suffix) {\r\n var fromIndex = full.length - suffix.length;\r\n return fromIndex >= 0 &&\r\n full.indexOf(suffix, fromIndex) === fromIndex;\r\n}\r\nfunction previouslyCompared(a, b) {\r\n // Though cyclic references can make an object graph appear infinite from the\r\n // perspective of a depth-first traversal, the graph still contains a finite\r\n // number of distinct object references. We use the previousComparisons cache\r\n // to avoid comparing the same pair of object references more than once, which\r\n // guarantees termination (even if we end up comparing every object in one\r\n // graph to every object in the other graph, which is extremely unlikely),\r\n // while still allowing weird isomorphic structures (like rings with different\r\n // lengths) a chance to pass the equality test.\r\n var bSet = previousComparisons.get(a);\r\n if (bSet) {\r\n // Return true here because we can be sure false will be returned somewhere\r\n // else if the objects are not equivalent.\r\n if (bSet.has(b))\r\n return true;\r\n }\r\n else {\r\n previousComparisons.set(a, bSet = new Set);\r\n }\r\n bSet.add(b);\r\n return false;\r\n}\n\nexport default equal;\nexport { equal };\n//# sourceMappingURL=equality.esm.js.map\n","import { Observable } from \"../../utilities/index.js\";\nexport function fromError(errorValue) {\n return new Observable(function (observer) {\n observer.error(errorValue);\n });\n}\n//# sourceMappingURL=fromError.js.map","import { invariant } from 'ts-invariant';\nexport function toPromise(observable) {\n var completed = false;\n return new Promise(function (resolve, reject) {\n observable.subscribe({\n next: function (data) {\n if (completed) {\n process.env.NODE_ENV === \"production\" || invariant.warn(\"Promise Wrapper does not support multiple results from Observable\");\n }\n else {\n completed = true;\n resolve(data);\n }\n },\n error: reject,\n });\n });\n}\n//# sourceMappingURL=toPromise.js.map","import { Observable } from \"../../utilities/index.js\";\nexport function fromPromise(promise) {\n return new Observable(function (observer) {\n promise\n .then(function (value) {\n observer.next(value);\n observer.complete();\n })\n .catch(observer.error.bind(observer));\n });\n}\n//# sourceMappingURL=fromPromise.js.map","export var throwServerError = function (response, result, message) {\n var error = new Error(message);\n error.name = 'ServerError';\n error.response = response;\n error.statusCode = response.status;\n error.result = result;\n throw error;\n};\n//# sourceMappingURL=throwServerError.js.map","import { InvariantError } from 'ts-invariant';\nexport function validateOperation(operation) {\n var OPERATION_FIELDS = [\n 'query',\n 'operationName',\n 'variables',\n 'extensions',\n 'context',\n ];\n for (var _i = 0, _a = Object.keys(operation); _i < _a.length; _i++) {\n var key = _a[_i];\n if (OPERATION_FIELDS.indexOf(key) < 0) {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(25) : new InvariantError(\"illegal argument: \" + key);\n }\n }\n return operation;\n}\n//# sourceMappingURL=validateOperation.js.map","import { __assign } from \"tslib\";\nexport function createOperation(starting, operation) {\n var context = __assign({}, starting);\n var setContext = function (next) {\n if (typeof next === 'function') {\n context = __assign(__assign({}, context), next(context));\n }\n else {\n context = __assign(__assign({}, context), next);\n }\n };\n var getContext = function () { return (__assign({}, context)); };\n Object.defineProperty(operation, 'setContext', {\n enumerable: false,\n value: setContext,\n });\n Object.defineProperty(operation, 'getContext', {\n enumerable: false,\n value: getContext,\n });\n return operation;\n}\n//# sourceMappingURL=createOperation.js.map","import { getOperationName } from \"../../utilities/index.js\";\nexport function transformOperation(operation) {\n var transformedOperation = {\n variables: operation.variables || {},\n extensions: operation.extensions || {},\n operationName: operation.operationName,\n query: operation.query,\n };\n if (!transformedOperation.operationName) {\n transformedOperation.operationName =\n typeof transformedOperation.query !== 'string'\n ? getOperationName(transformedOperation.query) || undefined\n : '';\n }\n return transformedOperation;\n}\n//# sourceMappingURL=transformOperation.js.map","export { fromError } from \"./fromError.js\";\nexport { toPromise } from \"./toPromise.js\";\nexport { fromPromise } from \"./fromPromise.js\";\nexport { throwServerError } from \"./throwServerError.js\";\nexport { validateOperation } from \"./validateOperation.js\";\nexport { createOperation } from \"./createOperation.js\";\nexport { transformOperation } from \"./transformOperation.js\";\n//# sourceMappingURL=index.js.map","/**\n * {@docCategory FocusZone}\n */\nexport var FocusZoneTabbableElements = {\n /** Tabbing is not allowed */\n none: 0,\n /** All tabbing action is allowed */\n all: 1,\n /** Tabbing is allowed only on input elements */\n inputOnly: 2,\n};\n/**\n * {@docCategory FocusZone}\n */\nexport var FocusZoneDirection;\n(function (FocusZoneDirection) {\n /** Only react to up/down arrows. */\n FocusZoneDirection[FocusZoneDirection[\"vertical\"] = 0] = \"vertical\";\n /** Only react to left/right arrows. */\n FocusZoneDirection[FocusZoneDirection[\"horizontal\"] = 1] = \"horizontal\";\n /** React to all arrows. */\n FocusZoneDirection[FocusZoneDirection[\"bidirectional\"] = 2] = \"bidirectional\";\n /**\n * React to all arrows. Navigate next item in DOM on right/down arrow keys and previous - left/up arrow keys.\n * Right and Left arrow keys are swapped in RTL mode.\n */\n FocusZoneDirection[FocusZoneDirection[\"domOrder\"] = 3] = \"domOrder\";\n})(FocusZoneDirection || (FocusZoneDirection = {}));\n//# sourceMappingURL=FocusZone.types.js.map","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import { __extends } from \"tslib\";\nimport { InvariantError, invariant } from 'ts-invariant';\nimport { Observable } from \"../../utilities/index.js\";\nimport { validateOperation, createOperation, transformOperation, } from \"../utils/index.js\";\nfunction passthrough(op, forward) {\n return (forward ? forward(op) : Observable.of());\n}\nfunction toLink(handler) {\n return typeof handler === 'function' ? new ApolloLink(handler) : handler;\n}\nfunction isTerminating(link) {\n return link.request.length <= 1;\n}\nvar LinkError = (function (_super) {\n __extends(LinkError, _super);\n function LinkError(message, link) {\n var _this = _super.call(this, message) || this;\n _this.link = link;\n return _this;\n }\n return LinkError;\n}(Error));\nvar ApolloLink = (function () {\n function ApolloLink(request) {\n if (request)\n this.request = request;\n }\n ApolloLink.empty = function () {\n return new ApolloLink(function () { return Observable.of(); });\n };\n ApolloLink.from = function (links) {\n if (links.length === 0)\n return ApolloLink.empty();\n return links.map(toLink).reduce(function (x, y) { return x.concat(y); });\n };\n ApolloLink.split = function (test, left, right) {\n var leftLink = toLink(left);\n var rightLink = toLink(right || new ApolloLink(passthrough));\n if (isTerminating(leftLink) && isTerminating(rightLink)) {\n return new ApolloLink(function (operation) {\n return test(operation)\n ? leftLink.request(operation) || Observable.of()\n : rightLink.request(operation) || Observable.of();\n });\n }\n else {\n return new ApolloLink(function (operation, forward) {\n return test(operation)\n ? leftLink.request(operation, forward) || Observable.of()\n : rightLink.request(operation, forward) || Observable.of();\n });\n }\n };\n ApolloLink.execute = function (link, operation) {\n return (link.request(createOperation(operation.context, transformOperation(validateOperation(operation)))) || Observable.of());\n };\n ApolloLink.concat = function (first, second) {\n var firstLink = toLink(first);\n if (isTerminating(firstLink)) {\n process.env.NODE_ENV === \"production\" || invariant.warn(new LinkError(\"You are calling concat on a terminating link, which will have no effect\", firstLink));\n return firstLink;\n }\n var nextLink = toLink(second);\n if (isTerminating(nextLink)) {\n return new ApolloLink(function (operation) {\n return firstLink.request(operation, function (op) { return nextLink.request(op) || Observable.of(); }) || Observable.of();\n });\n }\n else {\n return new ApolloLink(function (operation, forward) {\n return (firstLink.request(operation, function (op) {\n return nextLink.request(op, forward) || Observable.of();\n }) || Observable.of());\n });\n }\n };\n ApolloLink.prototype.split = function (test, left, right) {\n return this.concat(ApolloLink.split(test, left, right || new ApolloLink(passthrough)));\n };\n ApolloLink.prototype.concat = function (next) {\n return ApolloLink.concat(this, next);\n };\n ApolloLink.prototype.request = function (operation, forward) {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(22) : new InvariantError('request is not implemented');\n };\n ApolloLink.prototype.onError = function (reason) {\n throw reason;\n };\n ApolloLink.prototype.setOnError = function (fn) {\n this.onError = fn;\n return this;\n };\n return ApolloLink;\n}());\nexport { ApolloLink };\n//# sourceMappingURL=ApolloLink.js.map","export { empty } from \"./empty.js\";\nexport { from } from \"./from.js\";\nexport { split } from \"./split.js\";\nexport { concat } from \"./concat.js\";\nexport { execute } from \"./execute.js\";\nexport { ApolloLink } from \"./ApolloLink.js\";\nexport * from \"./types.js\";\n//# sourceMappingURL=index.js.map","import { __extends } from \"tslib\";\nimport { isNonEmptyArray } from \"../utilities/index.js\";\nexport function isApolloError(err) {\n return err.hasOwnProperty('graphQLErrors');\n}\nvar generateErrorMessage = function (err) {\n var message = '';\n if (isNonEmptyArray(err.graphQLErrors)) {\n err.graphQLErrors.forEach(function (graphQLError) {\n var errorMessage = graphQLError\n ? graphQLError.message\n : 'Error message not found.';\n message += errorMessage + \"\\n\";\n });\n }\n if (err.networkError) {\n message += err.networkError.message + \"\\n\";\n }\n message = message.replace(/\\n$/, '');\n return message;\n};\nvar ApolloError = (function (_super) {\n __extends(ApolloError, _super);\n function ApolloError(_a) {\n var graphQLErrors = _a.graphQLErrors, networkError = _a.networkError, errorMessage = _a.errorMessage, extraInfo = _a.extraInfo;\n var _this = _super.call(this, errorMessage) || this;\n _this.graphQLErrors = graphQLErrors || [];\n _this.networkError = networkError || null;\n _this.message = errorMessage || generateErrorMessage(_this);\n _this.extraInfo = extraInfo;\n _this.__proto__ = ApolloError.prototype;\n return _this;\n }\n return ApolloError;\n}(Error));\nexport { ApolloError };\n//# sourceMappingURL=index.js.map","export { ApolloCache } from \"./core/cache.js\";\nexport { Cache } from \"./core/types/Cache.js\";\nexport { MissingFieldError } from \"./core/types/common.js\";\nexport { isReference, makeReference, } from \"../utilities/index.js\";\nexport { InMemoryCache, } from \"./inmemory/inMemoryCache.js\";\nexport { makeVar, cacheSlot, } from \"./inmemory/reactiveVars.js\";\nexport { defaultDataIdFromObject, } from \"./inmemory/policies.js\";\nexport * from \"./inmemory/types.js\";\n//# sourceMappingURL=index.js.map","// This currentContext variable will only be used if the makeSlotClass\r\n// function is called, which happens only if this is the first copy of the\r\n// @wry/context package to be imported.\r\nvar currentContext = null;\r\n// This unique internal object is used to denote the absence of a value\r\n// for a given Slot, and is never exposed to outside code.\r\nvar MISSING_VALUE = {};\r\nvar idCounter = 1;\r\n// Although we can't do anything about the cost of duplicated code from\r\n// accidentally bundling multiple copies of the @wry/context package, we can\r\n// avoid creating the Slot class more than once using makeSlotClass.\r\nvar makeSlotClass = function () { return /** @class */ (function () {\r\n function Slot() {\r\n // If you have a Slot object, you can find out its slot.id, but you cannot\r\n // guess the slot.id of a Slot you don't have access to, thanks to the\r\n // randomized suffix.\r\n this.id = [\r\n \"slot\",\r\n idCounter++,\r\n Date.now(),\r\n Math.random().toString(36).slice(2),\r\n ].join(\":\");\r\n }\r\n Slot.prototype.hasValue = function () {\r\n for (var context_1 = currentContext; context_1; context_1 = context_1.parent) {\r\n // We use the Slot object iself as a key to its value, which means the\r\n // value cannot be obtained without a reference to the Slot object.\r\n if (this.id in context_1.slots) {\r\n var value = context_1.slots[this.id];\r\n if (value === MISSING_VALUE)\r\n break;\r\n if (context_1 !== currentContext) {\r\n // Cache the value in currentContext.slots so the next lookup will\r\n // be faster. This caching is safe because the tree of contexts and\r\n // the values of the slots are logically immutable.\r\n currentContext.slots[this.id] = value;\r\n }\r\n return true;\r\n }\r\n }\r\n if (currentContext) {\r\n // If a value was not found for this Slot, it's never going to be found\r\n // no matter how many times we look it up, so we might as well cache\r\n // the absence of the value, too.\r\n currentContext.slots[this.id] = MISSING_VALUE;\r\n }\r\n return false;\r\n };\r\n Slot.prototype.getValue = function () {\r\n if (this.hasValue()) {\r\n return currentContext.slots[this.id];\r\n }\r\n };\r\n Slot.prototype.withValue = function (value, callback, \r\n // Given the prevalence of arrow functions, specifying arguments is likely\r\n // to be much more common than specifying `this`, hence this ordering:\r\n args, thisArg) {\r\n var _a;\r\n var slots = (_a = {\r\n __proto__: null\r\n },\r\n _a[this.id] = value,\r\n _a);\r\n var parent = currentContext;\r\n currentContext = { parent: parent, slots: slots };\r\n try {\r\n // Function.prototype.apply allows the arguments array argument to be\r\n // omitted or undefined, so args! is fine here.\r\n return callback.apply(thisArg, args);\r\n }\r\n finally {\r\n currentContext = parent;\r\n }\r\n };\r\n // Capture the current context and wrap a callback function so that it\r\n // reestablishes the captured context when called.\r\n Slot.bind = function (callback) {\r\n var context = currentContext;\r\n return function () {\r\n var saved = currentContext;\r\n try {\r\n currentContext = context;\r\n return callback.apply(this, arguments);\r\n }\r\n finally {\r\n currentContext = saved;\r\n }\r\n };\r\n };\r\n // Immediately run a callback function without any captured context.\r\n Slot.noContext = function (callback, \r\n // Given the prevalence of arrow functions, specifying arguments is likely\r\n // to be much more common than specifying `this`, hence this ordering:\r\n args, thisArg) {\r\n if (currentContext) {\r\n var saved = currentContext;\r\n try {\r\n currentContext = null;\r\n // Function.prototype.apply allows the arguments array argument to be\r\n // omitted or undefined, so args! is fine here.\r\n return callback.apply(thisArg, args);\r\n }\r\n finally {\r\n currentContext = saved;\r\n }\r\n }\r\n else {\r\n return callback.apply(thisArg, args);\r\n }\r\n };\r\n return Slot;\r\n}()); };\r\n// We store a single global implementation of the Slot class as a permanent\r\n// non-enumerable symbol property of the Array constructor. This obfuscation\r\n// does nothing to prevent access to the Slot class, but at least it ensures\r\n// the implementation (i.e. currentContext) cannot be tampered with, and all\r\n// copies of the @wry/context package (hopefully just one) will share the\r\n// same Slot implementation. Since the first copy of the @wry/context package\r\n// to be imported wins, this technique imposes a very high cost for any\r\n// future breaking changes to the Slot class.\r\nvar globalKey = \"@wry/context:Slot\";\r\nvar host = Array;\r\nvar Slot = host[globalKey] || function () {\r\n var Slot = makeSlotClass();\r\n try {\r\n Object.defineProperty(host, globalKey, {\r\n value: host[globalKey] = Slot,\r\n enumerable: false,\r\n writable: false,\r\n configurable: false,\r\n });\r\n }\r\n finally {\r\n return Slot;\r\n }\r\n}();\n\nvar bind = Slot.bind, noContext = Slot.noContext;\r\nfunction setTimeoutWithContext(callback, delay) {\r\n return setTimeout(bind(callback), delay);\r\n}\r\n// Turn any generator function into an async function (using yield instead\r\n// of await), with context automatically preserved across yields.\r\nfunction asyncFromGen(genFn) {\r\n return function () {\r\n var gen = genFn.apply(this, arguments);\r\n var boundNext = bind(gen.next);\r\n var boundThrow = bind(gen.throw);\r\n return new Promise(function (resolve, reject) {\r\n function invoke(method, argument) {\r\n try {\r\n var result = method.call(gen, argument);\r\n }\r\n catch (error) {\r\n return reject(error);\r\n }\r\n var next = result.done ? resolve : invokeNext;\r\n if (isPromiseLike(result.value)) {\r\n result.value.then(next, result.done ? reject : invokeThrow);\r\n }\r\n else {\r\n next(result.value);\r\n }\r\n }\r\n var invokeNext = function (value) { return invoke(boundNext, value); };\r\n var invokeThrow = function (error) { return invoke(boundThrow, error); };\r\n invokeNext();\r\n });\r\n };\r\n}\r\nfunction isPromiseLike(value) {\r\n return value && typeof value.then === \"function\";\r\n}\r\n// If you use the fibers npm package to implement coroutines in Node.js,\r\n// you should call this function at least once to ensure context management\r\n// remains coherent across any yields.\r\nvar wrappedFibers = [];\r\nfunction wrapYieldingFiberMethods(Fiber) {\r\n // There can be only one implementation of Fiber per process, so this array\r\n // should never grow longer than one element.\r\n if (wrappedFibers.indexOf(Fiber) < 0) {\r\n var wrap = function (obj, method) {\r\n var fn = obj[method];\r\n obj[method] = function () {\r\n return noContext(fn, arguments, this);\r\n };\r\n };\r\n // These methods can yield, according to\r\n // https://github.com/laverdet/node-fibers/blob/ddebed9b8ae3883e57f822e2108e6943e5c8d2a8/fibers.js#L97-L100\r\n wrap(Fiber, \"yield\");\r\n wrap(Fiber.prototype, \"run\");\r\n wrap(Fiber.prototype, \"throwInto\");\r\n wrappedFibers.push(Fiber);\r\n }\r\n return Fiber;\r\n}\n\nexport { Slot, asyncFromGen, bind, noContext, setTimeoutWithContext as setTimeout, wrapYieldingFiberMethods };\n//# sourceMappingURL=context.esm.js.map\n","import { getParent } from './getParent';\n/**\n * Determines whether or not a parent element contains a given child element.\n * If `allowVirtualParents` is true, this method may return `true` if the child\n * has the parent in its virtual element hierarchy.\n *\n * @public\n */\nexport function elementContains(parent, child, allowVirtualParents) {\n if (allowVirtualParents === void 0) { allowVirtualParents = true; }\n var isContained = false;\n if (parent && child) {\n if (allowVirtualParents) {\n if (parent === child) {\n isContained = true;\n }\n else {\n isContained = false;\n while (child) {\n var nextParent = getParent(child);\n if (nextParent === parent) {\n isContained = true;\n break;\n }\n child = nextParent;\n }\n }\n }\n else if (parent.contains) {\n isContained = parent.contains(child);\n }\n }\n return isContained;\n}\n//# sourceMappingURL=elementContains.js.map","import { Slot } from \"@wry/context\";\nimport { dep } from \"optimism\";\nvar varDep = dep();\nexport var cacheSlot = new Slot();\nexport function makeVar(value) {\n var caches = new Set();\n return function rv(newValue) {\n if (arguments.length > 0) {\n if (value !== newValue) {\n value = newValue;\n varDep.dirty(rv);\n caches.forEach(broadcast);\n }\n }\n else {\n var cache = cacheSlot.getValue();\n if (cache)\n caches.add(cache);\n varDep(rv);\n }\n return value;\n };\n}\nfunction broadcast(cache) {\n if (cache.broadcastWatches) {\n cache.broadcastWatches();\n }\n}\n//# sourceMappingURL=reactiveVars.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { __assign } from \"tslib\";\n/** Generates all the semantic slot colors based on the theme so far\n * We'll use these as fallbacks for semantic slots that the passed in theme did not define.\n * The caller must still mix in the customized semantic slots at the end.\n */\nexport function makeSemanticColors(p, e, s, isInverted, depComments) {\n if (depComments === void 0) { depComments = false; }\n var semanticColors = __assign({ primaryButtonBorder: 'transparent', errorText: !isInverted ? '#a4262c' : '#F1707B', messageText: !isInverted ? '#323130' : '#F3F2F1', messageLink: !isInverted ? '#005A9E' : '#6CB8F6', messageLinkHovered: !isInverted ? '#004578' : '#82C7FF', infoIcon: !isInverted ? '#605e5c' : '#C8C6C4', errorIcon: !isInverted ? '#A80000' : '#F1707B', blockingIcon: !isInverted ? '#FDE7E9' : '#442726', warningIcon: !isInverted ? '#797775' : '#C8C6C4', severeWarningIcon: !isInverted ? '#D83B01' : '#FCE100', successIcon: !isInverted ? '#107C10' : '#92C353', infoBackground: !isInverted ? '#f3f2f1' : '#323130', errorBackground: !isInverted ? '#FDE7E9' : '#442726', blockingBackground: !isInverted ? '#FDE7E9' : '#442726', warningBackground: !isInverted ? '#FFF4CE' : '#433519', severeWarningBackground: !isInverted ? '#FED9CC' : '#4F2A0F', successBackground: !isInverted ? '#DFF6DD' : '#393D1B', \n // deprecated\n warningHighlight: !isInverted ? '#ffb900' : '#fff100', successText: !isInverted ? '#107C10' : '#92c353' }, s);\n var fullSemanticColors = getSemanticColors(p, e, semanticColors, isInverted);\n return _fixDeprecatedSlots(fullSemanticColors, depComments);\n}\n/**\n * Map partial platte and effects to partial semantic colors.\n */\nexport function getSemanticColors(p, e, s, isInverted, depComments) {\n if (depComments === void 0) { depComments = false; }\n var _a, _b, _c;\n var result = {};\n // map palette\n var _d = p || {}, white = _d.white, black = _d.black, themePrimary = _d.themePrimary, themeDark = _d.themeDark, themeDarker = _d.themeDarker, themeDarkAlt = _d.themeDarkAlt, themeLighter = _d.themeLighter, neutralLight = _d.neutralLight, neutralLighter = _d.neutralLighter, neutralDark = _d.neutralDark, neutralQuaternary = _d.neutralQuaternary, neutralQuaternaryAlt = _d.neutralQuaternaryAlt, neutralPrimary = _d.neutralPrimary, neutralSecondary = _d.neutralSecondary, neutralSecondaryAlt = _d.neutralSecondaryAlt, neutralTertiary = _d.neutralTertiary, neutralTertiaryAlt = _d.neutralTertiaryAlt, neutralLighterAlt = _d.neutralLighterAlt, accent = _d.accent;\n if (white) {\n result.bodyBackground = white;\n result.bodyFrameBackground = white;\n result.accentButtonText = white;\n result.buttonBackground = white;\n result.primaryButtonText = white;\n result.primaryButtonTextHovered = white;\n result.primaryButtonTextPressed = white;\n result.inputBackground = white;\n result.inputForegroundChecked = white;\n result.listBackground = white;\n result.menuBackground = white;\n result.cardStandoutBackground = white;\n }\n if (black) {\n result.bodyTextChecked = black;\n result.buttonTextCheckedHovered = black;\n }\n if (themePrimary) {\n result.link = themePrimary;\n result.primaryButtonBackground = themePrimary;\n result.inputBackgroundChecked = themePrimary;\n result.inputIcon = themePrimary;\n result.inputFocusBorderAlt = themePrimary;\n result.menuIcon = themePrimary;\n result.menuHeader = themePrimary;\n result.accentButtonBackground = themePrimary;\n }\n if (themeDark) {\n result.primaryButtonBackgroundPressed = themeDark;\n result.inputBackgroundCheckedHovered = themeDark;\n result.inputIconHovered = themeDark;\n }\n if (themeDarker) {\n result.linkHovered = themeDarker;\n }\n if (themeDarkAlt) {\n result.primaryButtonBackgroundHovered = themeDarkAlt;\n }\n if (themeLighter) {\n result.inputPlaceholderBackgroundChecked = themeLighter;\n }\n if (neutralLight) {\n result.bodyBackgroundChecked = neutralLight;\n result.bodyFrameDivider = neutralLight;\n result.bodyDivider = neutralLight;\n result.variantBorder = neutralLight;\n result.buttonBackgroundCheckedHovered = neutralLight;\n result.buttonBackgroundPressed = neutralLight;\n result.listItemBackgroundChecked = neutralLight;\n result.listHeaderBackgroundPressed = neutralLight;\n result.menuItemBackgroundPressed = neutralLight;\n // eslint-disable-next-line deprecation/deprecation\n result.menuItemBackgroundChecked = neutralLight;\n }\n if (neutralLighter) {\n result.bodyBackgroundHovered = neutralLighter;\n result.buttonBackgroundHovered = neutralLighter;\n result.buttonBackgroundDisabled = neutralLighter;\n result.buttonBorderDisabled = neutralLighter;\n result.primaryButtonBackgroundDisabled = neutralLighter;\n result.disabledBackground = neutralLighter;\n result.listItemBackgroundHovered = neutralLighter;\n result.listHeaderBackgroundHovered = neutralLighter;\n result.menuItemBackgroundHovered = neutralLighter;\n }\n if (neutralQuaternary) {\n result.primaryButtonTextDisabled = neutralQuaternary;\n result.disabledSubtext = neutralQuaternary;\n }\n if (neutralQuaternaryAlt) {\n result.listItemBackgroundCheckedHovered = neutralQuaternaryAlt;\n }\n if (neutralTertiary) {\n result.disabledBodyText = neutralTertiary;\n result.variantBorderHovered = ((_a = s) === null || _a === void 0 ? void 0 : _a.variantBorderHovered) || neutralTertiary;\n result.buttonTextDisabled = neutralTertiary;\n result.inputIconDisabled = neutralTertiary;\n result.disabledText = neutralTertiary;\n }\n if (neutralPrimary) {\n result.bodyText = neutralPrimary;\n result.actionLink = neutralPrimary;\n result.buttonText = neutralPrimary;\n result.inputBorderHovered = neutralPrimary;\n result.inputText = neutralPrimary;\n result.listText = neutralPrimary;\n result.menuItemText = neutralPrimary;\n }\n if (neutralLighterAlt) {\n result.bodyStandoutBackground = neutralLighterAlt;\n result.defaultStateBackground = neutralLighterAlt;\n }\n if (neutralDark) {\n result.actionLinkHovered = neutralDark;\n result.buttonTextHovered = neutralDark;\n result.buttonTextChecked = neutralDark;\n result.buttonTextPressed = neutralDark;\n result.inputTextHovered = neutralDark;\n result.menuItemTextHovered = neutralDark;\n }\n if (neutralSecondary) {\n result.bodySubtext = neutralSecondary;\n result.focusBorder = neutralSecondary;\n result.inputBorder = neutralSecondary;\n result.smallInputBorder = neutralSecondary;\n result.inputPlaceholderText = neutralSecondary;\n }\n if (neutralSecondaryAlt) {\n result.buttonBorder = neutralSecondaryAlt;\n }\n if (neutralTertiaryAlt) {\n result.disabledBodySubtext = neutralTertiaryAlt;\n result.disabledBorder = neutralTertiaryAlt;\n result.buttonBackgroundChecked = neutralTertiaryAlt;\n result.menuDivider = neutralTertiaryAlt;\n }\n if (accent) {\n result.accentButtonBackground = accent;\n }\n // map effects\n if ((_b = e) === null || _b === void 0 ? void 0 : _b.elevation4) {\n result.cardShadow = e.elevation4;\n }\n if (!isInverted && ((_c = e) === null || _c === void 0 ? void 0 : _c.elevation8)) {\n result.cardShadowHovered = e.elevation8;\n }\n else if (result.variantBorderHovered) {\n result.cardShadowHovered = '0 0 1px ' + result.variantBorderHovered;\n }\n result = __assign(__assign({}, result), s);\n return result;\n}\nfunction _fixDeprecatedSlots(s, depComments) {\n // Add @deprecated tag as comment if enabled\n var dep = '';\n if (depComments === true) {\n dep = ' /* @deprecated */';\n }\n /* eslint-disable deprecation/deprecation */\n s.listTextColor = s.listText + dep;\n s.menuItemBackgroundChecked += dep;\n s.warningHighlight += dep;\n s.warningText = s.messageText + dep;\n s.successText += dep;\n /* eslint-enable deprecation/deprecation */\n return s;\n}\n//# sourceMappingURL=makeSemanticColors.js.map","export var DefaultSpacing = {\n s2: '4px',\n s1: '8px',\n m: '16px',\n l1: '20px',\n l2: '32px',\n};\n//# sourceMappingURL=DefaultSpacing.js.map","import { DefaultPalette } from './colors/index';\nimport { DefaultEffects } from './effects/index';\nimport { DefaultFontStyles } from './fonts/index';\nimport { mergeThemes } from './mergeThemes';\nimport { DefaultSpacing } from './spacing/index';\nimport { makeSemanticColors } from './utilities/makeSemanticColors';\n/**\n * Creates a custom theme definition.\n * @param theme - Partial theme object.\n * @param depComments - Whether to include deprecated tags as comments for deprecated slots.\n */\nexport function createTheme(theme, depComments) {\n if (theme === void 0) { theme = {}; }\n if (depComments === void 0) { depComments = false; }\n var isInverted = !!theme.isInverted;\n var baseTheme = {\n palette: DefaultPalette,\n effects: DefaultEffects,\n fonts: DefaultFontStyles,\n spacing: DefaultSpacing,\n isInverted: isInverted,\n disableGlobalClassNames: false,\n semanticColors: makeSemanticColors(DefaultPalette, DefaultEffects, undefined, isInverted, depComments),\n rtl: undefined,\n };\n return mergeThemes(baseTheme, theme);\n}\n//# sourceMappingURL=createTheme.js.map","import { merge } from '@uifabric/utilities';\nimport { getSemanticColors } from './utilities/makeSemanticColors';\n/**\n * Merge a partial/full theme into a full theme and returns a merged full theme.\n */\nexport function mergeThemes(theme, partialTheme) {\n if (partialTheme === void 0) { partialTheme = {}; }\n var _a, _b, _c, _d;\n var mergedTheme = merge({}, theme, partialTheme, {\n semanticColors: getSemanticColors(partialTheme.palette, partialTheme.effects, partialTheme.semanticColors, partialTheme.isInverted === undefined ? theme.isInverted : partialTheme.isInverted),\n });\n if (((_a = partialTheme.palette) === null || _a === void 0 ? void 0 : _a.themePrimary) && !((_b = partialTheme.palette) === null || _b === void 0 ? void 0 : _b.accent)) {\n mergedTheme.palette.accent = partialTheme.palette.themePrimary;\n }\n if (partialTheme.defaultFontStyle) {\n for (var _i = 0, _e = Object.keys(mergedTheme.fonts); _i < _e.length; _i++) {\n var fontStyle = _e[_i];\n mergedTheme.fonts[fontStyle] = merge(mergedTheme.fonts[fontStyle], partialTheme.defaultFontStyle, (_d = (_c = partialTheme) === null || _c === void 0 ? void 0 : _c.fonts) === null || _d === void 0 ? void 0 : _d[fontStyle]);\n }\n }\n if (partialTheme.stylesheets) {\n mergedTheme.stylesheets = (theme.stylesheets || []).concat(partialTheme.stylesheets);\n }\n return mergedTheme;\n}\n//# sourceMappingURL=mergeThemes.js.map","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import { throwServerError } from \"../utils/index.js\";\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function parseAndCheckHttpResponse(operations) {\n return function (response) { return response\n .text()\n .then(function (bodyText) {\n try {\n return JSON.parse(bodyText);\n }\n catch (err) {\n var parseError = err;\n parseError.name = 'ServerParseError';\n parseError.response = response;\n parseError.statusCode = response.status;\n parseError.bodyText = bodyText;\n throw parseError;\n }\n })\n .then(function (result) {\n if (response.status >= 300) {\n throwServerError(response, result, \"Response not successful: Received status code \" + response.status);\n }\n if (!Array.isArray(result) &&\n !hasOwnProperty.call(result, 'data') &&\n !hasOwnProperty.call(result, 'errors')) {\n throwServerError(response, result, \"Server response was missing for query '\" + (Array.isArray(operations)\n ? operations.map(function (op) { return op.operationName; })\n : operations.operationName) + \"'.\");\n }\n return result;\n }); };\n}\n//# sourceMappingURL=parseAndCheckHttpResponse.js.map","import { InvariantError } from 'ts-invariant';\nexport var serializeFetchParameter = function (p, label) {\n var serialized;\n try {\n serialized = JSON.stringify(p);\n }\n catch (e) {\n var parseError = process.env.NODE_ENV === \"production\" ? new InvariantError(24) : new InvariantError(\"Network request failed. \" + label + \" is not serializable: \" + e.message);\n parseError.parseError = e;\n throw parseError;\n }\n return serialized;\n};\n//# sourceMappingURL=serializeFetchParameter.js.map","import { __assign } from \"tslib\";\nimport { print } from 'graphql/language/printer';\nvar defaultHttpOptions = {\n includeQuery: true,\n includeExtensions: false,\n};\nvar defaultHeaders = {\n accept: '*/*',\n 'content-type': 'application/json',\n};\nvar defaultOptions = {\n method: 'POST',\n};\nexport var fallbackHttpConfig = {\n http: defaultHttpOptions,\n headers: defaultHeaders,\n options: defaultOptions,\n};\nexport var selectHttpOptionsAndBody = function (operation, fallbackConfig) {\n var configs = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n configs[_i - 2] = arguments[_i];\n }\n var options = __assign(__assign({}, fallbackConfig.options), { headers: fallbackConfig.headers, credentials: fallbackConfig.credentials });\n var http = fallbackConfig.http || {};\n configs.forEach(function (config) {\n options = __assign(__assign(__assign({}, options), config.options), { headers: __assign(__assign({}, options.headers), config.headers) });\n if (config.credentials)\n options.credentials = config.credentials;\n http = __assign(__assign({}, http), config.http);\n });\n var operationName = operation.operationName, extensions = operation.extensions, variables = operation.variables, query = operation.query;\n var body = { operationName: operationName, variables: variables };\n if (http.includeExtensions)\n body.extensions = extensions;\n if (http.includeQuery)\n body.query = print(query);\n return {\n options: options,\n body: body,\n };\n};\n//# sourceMappingURL=selectHttpOptionsAndBody.js.map","import { InvariantError } from 'ts-invariant';\nexport var checkFetcher = function (fetcher) {\n if (!fetcher && typeof fetch === 'undefined') {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(23) : new InvariantError(\"\\n\\\"fetch\\\" has not been found globally and no fetcher has been configured. To fix this, install a fetch package (like https://www.npmjs.com/package/cross-fetch), instantiate the fetcher, and pass it into your HttpLink constructor. For example:\\n\\nimport fetch from 'cross-fetch';\\nimport { ApolloClient, HttpLink } from '@apollo/client';\\nconst client = new ApolloClient({\\n link: new HttpLink({ uri: '/graphql', fetch })\\n});\\n \");\n }\n};\n//# sourceMappingURL=checkFetcher.js.map","export var createSignalIfSupported = function () {\n if (typeof AbortController === 'undefined')\n return { controller: false, signal: false };\n var controller = new AbortController();\n var signal = controller.signal;\n return { controller: controller, signal: signal };\n};\n//# sourceMappingURL=createSignalIfSupported.js.map","export var selectURI = function (operation, fallbackURI) {\n var context = operation.getContext();\n var contextURI = context.uri;\n if (contextURI) {\n return contextURI;\n }\n else if (typeof fallbackURI === 'function') {\n return fallbackURI(operation);\n }\n else {\n return fallbackURI || '/graphql';\n }\n};\n//# sourceMappingURL=selectURI.js.map","import { serializeFetchParameter } from \"./serializeFetchParameter.js\";\nexport function rewriteURIForGET(chosenURI, body) {\n var queryParams = [];\n var addQueryParam = function (key, value) {\n queryParams.push(key + \"=\" + encodeURIComponent(value));\n };\n if ('query' in body) {\n addQueryParam('query', body.query);\n }\n if (body.operationName) {\n addQueryParam('operationName', body.operationName);\n }\n if (body.variables) {\n var serializedVariables = void 0;\n try {\n serializedVariables = serializeFetchParameter(body.variables, 'Variables map');\n }\n catch (parseError) {\n return { parseError: parseError };\n }\n addQueryParam('variables', serializedVariables);\n }\n if (body.extensions) {\n var serializedExtensions = void 0;\n try {\n serializedExtensions = serializeFetchParameter(body.extensions, 'Extensions map');\n }\n catch (parseError) {\n return { parseError: parseError };\n }\n addQueryParam('extensions', serializedExtensions);\n }\n var fragment = '', preFragment = chosenURI;\n var fragmentStart = chosenURI.indexOf('#');\n if (fragmentStart !== -1) {\n fragment = chosenURI.substr(fragmentStart);\n preFragment = chosenURI.substr(0, fragmentStart);\n }\n var queryParamsPrefix = preFragment.indexOf('?') === -1 ? '?' : '&';\n var newURI = preFragment + queryParamsPrefix + queryParams.join('&') + fragment;\n return { newURI: newURI };\n}\n//# sourceMappingURL=rewriteURIForGET.js.map","import { __assign, __rest } from \"tslib\";\nimport { ApolloLink } from \"../core/index.js\";\nimport { Observable } from \"../../utilities/index.js\";\nimport { serializeFetchParameter } from \"./serializeFetchParameter.js\";\nimport { selectURI } from \"./selectURI.js\";\nimport { parseAndCheckHttpResponse } from \"./parseAndCheckHttpResponse.js\";\nimport { checkFetcher } from \"./checkFetcher.js\";\nimport { selectHttpOptionsAndBody, fallbackHttpConfig } from \"./selectHttpOptionsAndBody.js\";\nimport { createSignalIfSupported } from \"./createSignalIfSupported.js\";\nimport { rewriteURIForGET } from \"./rewriteURIForGET.js\";\nimport { fromError } from \"../utils/index.js\";\nexport var createHttpLink = function (linkOptions) {\n if (linkOptions === void 0) { linkOptions = {}; }\n var _a = linkOptions.uri, uri = _a === void 0 ? '/graphql' : _a, fetcher = linkOptions.fetch, includeExtensions = linkOptions.includeExtensions, useGETForQueries = linkOptions.useGETForQueries, requestOptions = __rest(linkOptions, [\"uri\", \"fetch\", \"includeExtensions\", \"useGETForQueries\"]);\n checkFetcher(fetcher);\n if (!fetcher) {\n fetcher = fetch;\n }\n var linkConfig = {\n http: { includeExtensions: includeExtensions },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n return new ApolloLink(function (operation) {\n var chosenURI = selectURI(operation, uri);\n var context = operation.getContext();\n var clientAwarenessHeaders = {};\n if (context.clientAwareness) {\n var _a = context.clientAwareness, name_1 = _a.name, version = _a.version;\n if (name_1) {\n clientAwarenessHeaders['apollographql-client-name'] = name_1;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n var contextHeaders = __assign(__assign({}, clientAwarenessHeaders), context.headers);\n var contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n var _b = selectHttpOptionsAndBody(operation, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;\n var controller;\n if (!options.signal) {\n var _c = createSignalIfSupported(), _controller = _c.controller, signal = _c.signal;\n controller = _controller;\n if (controller)\n options.signal = signal;\n }\n var definitionIsMutation = function (d) {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)) {\n options.method = 'GET';\n }\n if (options.method === 'GET') {\n var _d = rewriteURIForGET(chosenURI, body), newURI = _d.newURI, parseError = _d.parseError;\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n }\n else {\n try {\n options.body = serializeFetchParameter(body, 'Payload');\n }\n catch (parseError) {\n return fromError(parseError);\n }\n }\n return new Observable(function (observer) {\n fetcher(chosenURI, options)\n .then(function (response) {\n operation.setContext({ response: response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then(function (result) {\n observer.next(result);\n observer.complete();\n return result;\n })\n .catch(function (err) {\n if (err.name === 'AbortError')\n return;\n if (err.result && err.result.errors && err.result.data) {\n observer.next(err.result);\n }\n observer.error(err);\n });\n return function () {\n if (controller)\n controller.abort();\n };\n });\n });\n};\n//# sourceMappingURL=createHttpLink.js.map","import { __extends } from \"tslib\";\nimport { ApolloLink } from \"../core/index.js\";\nimport { createHttpLink } from \"./createHttpLink.js\";\nvar HttpLink = (function (_super) {\n __extends(HttpLink, _super);\n function HttpLink(options) {\n if (options === void 0) { options = {}; }\n var _this = _super.call(this, createHttpLink(options).request) || this;\n _this.options = options;\n return _this;\n }\n return HttpLink;\n}(ApolloLink));\nexport { HttpLink };\n//# sourceMappingURL=HttpLink.js.map","export { parseAndCheckHttpResponse } from \"./parseAndCheckHttpResponse.js\";\nexport { serializeFetchParameter } from \"./serializeFetchParameter.js\";\nexport { fallbackHttpConfig, selectHttpOptionsAndBody } from \"./selectHttpOptionsAndBody.js\";\nexport { checkFetcher } from \"./checkFetcher.js\";\nexport { createSignalIfSupported } from \"./createSignalIfSupported.js\";\nexport { selectURI } from \"./selectURI.js\";\nexport { createHttpLink } from \"./createHttpLink.js\";\nexport { HttpLink } from \"./HttpLink.js\";\nexport { rewriteURIForGET } from \"./rewriteURIForGET.js\";\n//# sourceMappingURL=index.js.map","import { __assign } from \"tslib\";\nimport { KeyTrie } from 'optimism';\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { getFragmentFromSelection, isField, getTypenameFromResult, storeKeyNameFromField, argumentsObjectFromField, isReference, getStoreKeyName, canUseWeakMap, } from \"../../utilities/index.js\";\nimport { hasOwn, fieldNameFromStoreName, isFieldValueToBeMerged, storeValueIsStoreObject, } from \"./helpers.js\";\nimport { cacheSlot } from \"./reactiveVars.js\";\nfunction argsFromFieldSpecifier(spec) {\n return spec.args !== void 0 ? spec.args :\n spec.field ? argumentsObjectFromField(spec.field, spec.variables) : null;\n}\nexport var defaultDataIdFromObject = function (_a, context) {\n var __typename = _a.__typename, id = _a.id, _id = _a._id;\n if (typeof __typename === \"string\") {\n if (context) {\n context.keyObject =\n id !== void 0 ? { id: id } :\n _id !== void 0 ? { _id: _id } :\n void 0;\n }\n if (id === void 0)\n id = _id;\n if (id !== void 0) {\n return __typename + \":\" + ((typeof id === \"number\" ||\n typeof id === \"string\") ? id : JSON.stringify(id));\n }\n }\n};\nvar nullKeyFieldsFn = function () { return void 0; };\nvar simpleKeyArgsFn = function (_args, context) { return context.fieldName; };\nvar mergeTrueFn = function (existing, incoming, _a) {\n var mergeObjects = _a.mergeObjects;\n return mergeObjects(existing, incoming);\n};\nvar mergeFalseFn = function (_, incoming) { return incoming; };\nvar Policies = (function () {\n function Policies(config) {\n this.config = config;\n this.typePolicies = Object.create(null);\n this.rootIdsByTypename = Object.create(null);\n this.rootTypenamesById = Object.create(null);\n this.usingPossibleTypes = false;\n this.storageTrie = new KeyTrie(true);\n this.config = __assign({ dataIdFromObject: defaultDataIdFromObject }, config);\n this.cache = this.config.cache;\n this.setRootTypename(\"Query\");\n this.setRootTypename(\"Mutation\");\n this.setRootTypename(\"Subscription\");\n if (config.possibleTypes) {\n this.addPossibleTypes(config.possibleTypes);\n }\n if (config.typePolicies) {\n this.addTypePolicies(config.typePolicies);\n }\n }\n Policies.prototype.identify = function (object, selectionSet, fragmentMap) {\n var typename = selectionSet && fragmentMap\n ? getTypenameFromResult(object, selectionSet, fragmentMap)\n : object.__typename;\n if (typename) {\n var rootId = this.rootIdsByTypename[typename];\n if (\"string\" === typeof rootId)\n return [rootId];\n }\n var context = {\n typename: typename,\n selectionSet: selectionSet,\n fragmentMap: fragmentMap,\n };\n var id;\n var policy = this.getTypePolicy(typename, false);\n var keyFn = policy && policy.keyFn || this.config.dataIdFromObject;\n while (keyFn) {\n var specifierOrId = keyFn(object, context);\n if (Array.isArray(specifierOrId)) {\n keyFn = keyFieldsFnFromSpecifier(specifierOrId);\n }\n else {\n id = specifierOrId;\n break;\n }\n }\n id = id && String(id);\n return context.keyObject ? [id, context.keyObject] : [id];\n };\n Policies.prototype.addTypePolicies = function (typePolicies) {\n var _this = this;\n Object.keys(typePolicies).forEach(function (typename) {\n var existing = _this.getTypePolicy(typename, true);\n var incoming = typePolicies[typename];\n var keyFields = incoming.keyFields, fields = incoming.fields;\n if (incoming.queryType)\n _this.setRootTypename(\"Query\", typename);\n if (incoming.mutationType)\n _this.setRootTypename(\"Mutation\", typename);\n if (incoming.subscriptionType)\n _this.setRootTypename(\"Subscription\", typename);\n existing.keyFn =\n keyFields === false ? nullKeyFieldsFn :\n Array.isArray(keyFields) ? keyFieldsFnFromSpecifier(keyFields) :\n typeof keyFields === \"function\" ? keyFields :\n existing.keyFn;\n if (fields) {\n Object.keys(fields).forEach(function (fieldName) {\n var existing = _this.getFieldPolicy(typename, fieldName, true);\n var incoming = fields[fieldName];\n if (typeof incoming === \"function\") {\n existing.read = incoming;\n }\n else {\n var keyArgs = incoming.keyArgs, read = incoming.read, merge = incoming.merge;\n existing.keyFn =\n keyArgs === false ? simpleKeyArgsFn :\n Array.isArray(keyArgs) ? keyArgsFnFromSpecifier(keyArgs) :\n typeof keyArgs === \"function\" ? keyArgs :\n existing.keyFn;\n if (typeof read === \"function\")\n existing.read = read;\n existing.merge =\n typeof merge === \"function\" ? merge :\n merge === true ? mergeTrueFn :\n merge === false ? mergeFalseFn :\n existing.merge;\n }\n if (existing.read && existing.merge) {\n existing.keyFn = existing.keyFn || simpleKeyArgsFn;\n }\n });\n }\n });\n };\n Policies.prototype.setRootTypename = function (which, typename) {\n if (typename === void 0) { typename = which; }\n var rootId = \"ROOT_\" + which.toUpperCase();\n var old = this.rootTypenamesById[rootId];\n if (typename !== old) {\n process.env.NODE_ENV === \"production\" ? invariant(!old || old === which, 1) : invariant(!old || old === which, \"Cannot change root \" + which + \" __typename more than once\");\n if (old)\n delete this.rootIdsByTypename[old];\n this.rootIdsByTypename[typename] = rootId;\n this.rootTypenamesById[rootId] = typename;\n }\n };\n Policies.prototype.addPossibleTypes = function (possibleTypes) {\n var _this = this;\n this.usingPossibleTypes = true;\n Object.keys(possibleTypes).forEach(function (supertype) {\n var subtypeSet = _this.getSubtypeSet(supertype, true);\n possibleTypes[supertype].forEach(subtypeSet.add, subtypeSet);\n });\n };\n Policies.prototype.getTypePolicy = function (typename, createIfMissing) {\n if (typename) {\n return this.typePolicies[typename] || (createIfMissing && (this.typePolicies[typename] = Object.create(null)));\n }\n };\n Policies.prototype.getSubtypeSet = function (supertype, createIfMissing) {\n var policy = this.getTypePolicy(supertype, createIfMissing);\n if (policy) {\n return policy.subtypes || (createIfMissing ? policy.subtypes = new Set() : void 0);\n }\n };\n Policies.prototype.getFieldPolicy = function (typename, fieldName, createIfMissing) {\n var typePolicy = this.getTypePolicy(typename, createIfMissing);\n if (typePolicy) {\n var fieldPolicies = typePolicy.fields || (createIfMissing && (typePolicy.fields = Object.create(null)));\n if (fieldPolicies) {\n return fieldPolicies[fieldName] || (createIfMissing && (fieldPolicies[fieldName] = Object.create(null)));\n }\n }\n };\n Policies.prototype.fragmentMatches = function (fragment, typename) {\n var _this = this;\n if (!fragment.typeCondition)\n return true;\n if (!typename)\n return false;\n var supertype = fragment.typeCondition.name.value;\n if (typename === supertype)\n return true;\n if (this.usingPossibleTypes) {\n var workQueue_1 = [this.getSubtypeSet(supertype, false)];\n for (var i = 0; i < workQueue_1.length; ++i) {\n var subtypes = workQueue_1[i];\n if (subtypes) {\n if (subtypes.has(typename))\n return true;\n subtypes.forEach(function (subtype) {\n var subsubtypes = _this.getSubtypeSet(subtype, false);\n if (subsubtypes && workQueue_1.indexOf(subsubtypes) < 0) {\n workQueue_1.push(subsubtypes);\n }\n });\n }\n }\n }\n return false;\n };\n Policies.prototype.getStoreFieldName = function (fieldSpec) {\n var typename = fieldSpec.typename, fieldName = fieldSpec.fieldName;\n var policy = this.getFieldPolicy(typename, fieldName, false);\n var storeFieldName;\n var keyFn = policy && policy.keyFn;\n if (keyFn && typename) {\n var context = {\n typename: typename,\n fieldName: fieldName,\n field: fieldSpec.field || null,\n variables: fieldSpec.variables,\n };\n var args = argsFromFieldSpecifier(fieldSpec);\n while (keyFn) {\n var specifierOrString = keyFn(args, context);\n if (Array.isArray(specifierOrString)) {\n keyFn = keyArgsFnFromSpecifier(specifierOrString);\n }\n else {\n storeFieldName = specifierOrString || fieldName;\n break;\n }\n }\n }\n if (storeFieldName === void 0) {\n storeFieldName = fieldSpec.field\n ? storeKeyNameFromField(fieldSpec.field, fieldSpec.variables)\n : getStoreKeyName(fieldName, argsFromFieldSpecifier(fieldSpec));\n }\n return fieldName === fieldNameFromStoreName(storeFieldName)\n ? storeFieldName\n : fieldName + \":\" + storeFieldName;\n };\n Policies.prototype.readField = function (options, context) {\n var objectOrReference = options.from;\n if (!objectOrReference)\n return;\n var nameOrField = options.field || options.fieldName;\n if (!nameOrField)\n return;\n if (options.typename === void 0) {\n var typename = context.store.getFieldValue(objectOrReference, \"__typename\");\n if (typename)\n options.typename = typename;\n }\n var storeFieldName = this.getStoreFieldName(options);\n var fieldName = fieldNameFromStoreName(storeFieldName);\n var existing = context.store.getFieldValue(objectOrReference, storeFieldName);\n var policy = this.getFieldPolicy(options.typename, fieldName, false);\n var read = policy && policy.read;\n if (read) {\n var readOptions = makeFieldFunctionOptions(this, objectOrReference, options, context, this.storageTrie.lookup(isReference(objectOrReference)\n ? objectOrReference.__ref\n : objectOrReference, storeFieldName));\n return cacheSlot.withValue(this.cache, read, [existing, readOptions]);\n }\n return existing;\n };\n Policies.prototype.hasMergeFunction = function (typename, fieldName) {\n var policy = this.getFieldPolicy(typename, fieldName, false);\n return !!(policy && policy.merge);\n };\n Policies.prototype.applyMerges = function (existing, incoming, context, storageKeys) {\n var _this = this;\n if (isFieldValueToBeMerged(incoming)) {\n var field = incoming.__field;\n var fieldName = field.name.value;\n var merge = this.getFieldPolicy(incoming.__typename, fieldName, false).merge;\n var storage = storageKeys\n ? this.storageTrie.lookupArray(storageKeys)\n : null;\n incoming = merge(existing, incoming.__value, makeFieldFunctionOptions(this, void 0, { typename: incoming.__typename, fieldName: fieldName,\n field: field, variables: context.variables }, context, storage));\n }\n if (Array.isArray(incoming)) {\n return incoming.map(function (item) { return _this.applyMerges(void 0, item, context); });\n }\n if (storeValueIsStoreObject(incoming)) {\n var e_1 = existing;\n var i_1 = incoming;\n var firstStorageKey_1 = isReference(e_1)\n ? e_1.__ref\n : typeof e_1 === \"object\" && e_1;\n var newFields_1;\n Object.keys(i_1).forEach(function (storeFieldName) {\n var incomingValue = i_1[storeFieldName];\n var appliedValue = _this.applyMerges(context.store.getFieldValue(e_1, storeFieldName), incomingValue, context, firstStorageKey_1 ? [firstStorageKey_1, storeFieldName] : void 0);\n if (appliedValue !== incomingValue) {\n newFields_1 = newFields_1 || Object.create(null);\n newFields_1[storeFieldName] = appliedValue;\n }\n });\n if (newFields_1) {\n return __assign(__assign({}, i_1), newFields_1);\n }\n }\n return incoming;\n };\n return Policies;\n}());\nexport { Policies };\nfunction makeFieldFunctionOptions(policies, objectOrReference, fieldSpec, context, storage) {\n var storeFieldName = policies.getStoreFieldName(fieldSpec);\n var fieldName = fieldNameFromStoreName(storeFieldName);\n var variables = fieldSpec.variables || context.variables;\n var _a = context.store, getFieldValue = _a.getFieldValue, toReference = _a.toReference, canRead = _a.canRead;\n return {\n args: argsFromFieldSpecifier(fieldSpec),\n field: fieldSpec.field || null,\n fieldName: fieldName,\n storeFieldName: storeFieldName,\n variables: variables,\n isReference: isReference,\n toReference: toReference,\n storage: storage,\n cache: policies.cache,\n canRead: canRead,\n readField: function (fieldNameOrOptions, from) {\n var options = typeof fieldNameOrOptions === \"string\" ? {\n fieldName: fieldNameOrOptions,\n from: from,\n } : __assign({}, fieldNameOrOptions);\n if (void 0 === options.from) {\n options.from = objectOrReference;\n }\n if (void 0 === options.variables) {\n options.variables = variables;\n }\n return policies.readField(options, context);\n },\n mergeObjects: function (existing, incoming) {\n if (Array.isArray(existing) || Array.isArray(incoming)) {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(2) : new InvariantError(\"Cannot automatically merge arrays\");\n }\n if (existing && typeof existing === \"object\" &&\n incoming && typeof incoming === \"object\") {\n var eType = getFieldValue(existing, \"__typename\");\n var iType = getFieldValue(incoming, \"__typename\");\n var typesDiffer = eType && iType && eType !== iType;\n var applied = policies.applyMerges(typesDiffer ? void 0 : existing, incoming, context);\n if (typesDiffer ||\n !storeValueIsStoreObject(existing) ||\n !storeValueIsStoreObject(applied)) {\n return applied;\n }\n return __assign(__assign({}, existing), applied);\n }\n return incoming;\n }\n };\n}\nfunction keyArgsFnFromSpecifier(specifier) {\n return function (args, context) {\n return args ? context.fieldName + \":\" + JSON.stringify(computeKeyObject(args, specifier)) : context.fieldName;\n };\n}\nfunction keyFieldsFnFromSpecifier(specifier) {\n var trie = new KeyTrie(canUseWeakMap);\n return function (object, context) {\n var aliasMap;\n if (context.selectionSet && context.fragmentMap) {\n var info = trie.lookupArray([\n context.selectionSet,\n context.fragmentMap,\n ]);\n aliasMap = info.aliasMap || (info.aliasMap = makeAliasMap(context.selectionSet, context.fragmentMap));\n }\n var keyObject = context.keyObject =\n computeKeyObject(object, specifier, aliasMap);\n return context.typename + \":\" + JSON.stringify(keyObject);\n };\n}\nfunction makeAliasMap(selectionSet, fragmentMap) {\n var map = Object.create(null);\n var workQueue = new Set([selectionSet]);\n workQueue.forEach(function (selectionSet) {\n selectionSet.selections.forEach(function (selection) {\n if (isField(selection)) {\n if (selection.alias) {\n var responseKey = selection.alias.value;\n var storeKey = selection.name.value;\n if (storeKey !== responseKey) {\n var aliases = map.aliases || (map.aliases = Object.create(null));\n aliases[storeKey] = responseKey;\n }\n }\n if (selection.selectionSet) {\n var subsets = map.subsets || (map.subsets = Object.create(null));\n subsets[selection.name.value] =\n makeAliasMap(selection.selectionSet, fragmentMap);\n }\n }\n else {\n var fragment = getFragmentFromSelection(selection, fragmentMap);\n if (fragment) {\n workQueue.add(fragment.selectionSet);\n }\n }\n });\n });\n return map;\n}\nfunction computeKeyObject(response, specifier, aliasMap) {\n var keyObj = Object.create(null);\n var prevKey;\n specifier.forEach(function (s) {\n if (Array.isArray(s)) {\n if (typeof prevKey === \"string\") {\n var subsets = aliasMap && aliasMap.subsets;\n var subset = subsets && subsets[prevKey];\n keyObj[prevKey] = computeKeyObject(response[prevKey], s, subset);\n }\n }\n else {\n var aliases = aliasMap && aliasMap.aliases;\n var responseName = aliases && aliases[s] || s;\n process.env.NODE_ENV === \"production\" ? invariant(hasOwn.call(response, responseName), 3) : invariant(hasOwn.call(response, responseName), \"Missing field '\" + responseName + \"' while computing key fields\");\n keyObj[prevKey = s] = response[responseName];\n }\n });\n return keyObj;\n}\n//# sourceMappingURL=policies.js.map","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import { getVirtualParent } from './getVirtualParent';\n/**\n * Gets the element which is the parent of a given element.\n * If `allowVirtuaParents` is `true`, this method prefers the virtual parent over\n * real DOM parent when present.\n *\n * @public\n */\nexport function getParent(child, allowVirtualParents) {\n if (allowVirtualParents === void 0) { allowVirtualParents = true; }\n return (child &&\n ((allowVirtualParents && getVirtualParent(child)) || (child.parentNode && child.parentNode)));\n}\n//# sourceMappingURL=getParent.js.map","import { isVirtualElement } from './isVirtualElement';\n/**\n * Gets the virtual parent given the child element, if it exists.\n *\n * @public\n */\nexport function getVirtualParent(child) {\n var parent;\n if (child && isVirtualElement(child)) {\n parent = child._virtual.parent;\n }\n return parent;\n}\n//# sourceMappingURL=getVirtualParent.js.map","/**\n * Determines whether or not an element has the virtual hierarchy extension.\n *\n * @public\n */\nexport function isVirtualElement(element) {\n return element && !!element._virtual;\n}\n//# sourceMappingURL=isVirtualElement.js.map","import { wrap } from 'optimism';\nimport { getFragmentQueryDocument, } from \"../../utilities/index.js\";\nvar ApolloCache = (function () {\n function ApolloCache() {\n this.getFragmentDoc = wrap(getFragmentQueryDocument);\n }\n ApolloCache.prototype.recordOptimisticTransaction = function (transaction, optimisticId) {\n this.performTransaction(transaction, optimisticId);\n };\n ApolloCache.prototype.transformDocument = function (document) {\n return document;\n };\n ApolloCache.prototype.identify = function (object) {\n return;\n };\n ApolloCache.prototype.gc = function () {\n return [];\n };\n ApolloCache.prototype.modify = function (options) {\n return false;\n };\n ApolloCache.prototype.transformForLink = function (document) {\n return document;\n };\n ApolloCache.prototype.readQuery = function (options, optimistic) {\n if (optimistic === void 0) { optimistic = false; }\n return this.read({\n rootId: options.id || 'ROOT_QUERY',\n query: options.query,\n variables: options.variables,\n optimistic: optimistic,\n });\n };\n ApolloCache.prototype.readFragment = function (options, optimistic) {\n if (optimistic === void 0) { optimistic = false; }\n return this.read({\n query: this.getFragmentDoc(options.fragment, options.fragmentName),\n variables: options.variables,\n rootId: options.id,\n optimistic: optimistic,\n });\n };\n ApolloCache.prototype.writeQuery = function (options) {\n return this.write({\n dataId: options.id || 'ROOT_QUERY',\n result: options.data,\n query: options.query,\n variables: options.variables,\n broadcast: options.broadcast,\n });\n };\n ApolloCache.prototype.writeFragment = function (options) {\n return this.write({\n dataId: options.id,\n result: options.data,\n variables: options.variables,\n query: this.getFragmentDoc(options.fragment, options.fragmentName),\n broadcast: options.broadcast,\n });\n };\n return ApolloCache;\n}());\nexport { ApolloCache };\n//# sourceMappingURL=cache.js.map","var MissingFieldError = (function () {\n function MissingFieldError(message, path, query, variables) {\n this.message = message;\n this.path = path;\n this.query = query;\n this.variables = variables;\n }\n return MissingFieldError;\n}());\nexport { MissingFieldError };\n//# sourceMappingURL=common.js.map","import { NetworkStatus } from \"./networkStatus.js\";\nimport { compact } from \"../utilities/index.js\";\nimport { invariant } from 'ts-invariant';\nvar Reobserver = (function () {\n function Reobserver(observer, options, fetch, shouldFetch) {\n this.observer = observer;\n this.options = options;\n this.fetch = fetch;\n this.shouldFetch = shouldFetch;\n }\n Reobserver.prototype.reobserve = function (newOptions, newNetworkStatus) {\n if (newOptions) {\n this.updateOptions(newOptions);\n }\n else {\n this.updatePolling();\n }\n var concast = this.fetch(this.options, newNetworkStatus);\n if (this.concast) {\n this.concast.removeObserver(this.observer, true);\n }\n concast.addObserver(this.observer);\n return (this.concast = concast).promise;\n };\n Reobserver.prototype.updateOptions = function (newOptions) {\n Object.assign(this.options, compact(newOptions));\n this.updatePolling();\n return this;\n };\n Reobserver.prototype.stop = function () {\n if (this.concast) {\n this.concast.removeObserver(this.observer);\n delete this.concast;\n }\n if (this.pollingInfo) {\n clearTimeout(this.pollingInfo.timeout);\n this.options.pollInterval = 0;\n this.updatePolling();\n }\n };\n Reobserver.prototype.updatePolling = function () {\n var _this = this;\n var _a = this, pollingInfo = _a.pollingInfo, pollInterval = _a.options.pollInterval;\n if (!pollInterval) {\n if (pollingInfo) {\n clearTimeout(pollingInfo.timeout);\n delete this.pollingInfo;\n }\n return;\n }\n if (pollingInfo &&\n pollingInfo.interval === pollInterval) {\n return;\n }\n process.env.NODE_ENV === \"production\" ? invariant(pollInterval, 21) : invariant(pollInterval, 'Attempted to start a polling query without a polling interval.');\n if (this.shouldFetch === false) {\n return;\n }\n var info = pollingInfo || (this.pollingInfo = {});\n info.interval = pollInterval;\n var maybeFetch = function () {\n if (_this.pollingInfo) {\n if (_this.shouldFetch && _this.shouldFetch()) {\n _this.reobserve({\n fetchPolicy: \"network-only\",\n }, NetworkStatus.poll).then(poll, poll);\n }\n else {\n poll();\n }\n }\n ;\n };\n var poll = function () {\n var info = _this.pollingInfo;\n if (info) {\n clearTimeout(info.timeout);\n info.timeout = setTimeout(maybeFetch, info.interval);\n }\n };\n poll();\n };\n return Reobserver;\n}());\nexport { Reobserver };\n//# sourceMappingURL=Reobserver.js.map","import { __assign, __extends } from \"tslib\";\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { equal } from '@wry/equality';\nimport { NetworkStatus, isNetworkRequestInFlight } from \"./networkStatus.js\";\nimport { cloneDeep, getOperationDefinition, Observable, iterateObserversSafely, isNonEmptyArray, } from \"../utilities/index.js\";\nimport { Reobserver } from \"./Reobserver.js\";\nvar warnedAboutUpdateQuery = false;\nvar ObservableQuery = (function (_super) {\n __extends(ObservableQuery, _super);\n function ObservableQuery(_a) {\n var queryManager = _a.queryManager, queryInfo = _a.queryInfo, options = _a.options;\n var _this = _super.call(this, function (observer) {\n return _this.onSubscribe(observer);\n }) || this;\n _this.observers = new Set();\n _this.subscriptions = new Set();\n _this.observer = {\n next: function (result) {\n if (_this.lastError || _this.isDifferentFromLastResult(result)) {\n _this.updateLastResult(result);\n iterateObserversSafely(_this.observers, 'next', result);\n }\n },\n error: function (error) {\n _this.updateLastResult(__assign(__assign({}, _this.lastResult), { errors: error.graphQLErrors, networkStatus: NetworkStatus.error, loading: false }));\n iterateObserversSafely(_this.observers, 'error', _this.lastError = error);\n },\n };\n _this.isTornDown = false;\n _this.options = options;\n _this.queryId = queryManager.generateQueryId();\n var opDef = getOperationDefinition(options.query);\n _this.queryName = opDef && opDef.name && opDef.name.value;\n _this.queryManager = queryManager;\n _this.queryInfo = queryInfo;\n return _this;\n }\n Object.defineProperty(ObservableQuery.prototype, \"variables\", {\n get: function () {\n return this.options.variables;\n },\n enumerable: false,\n configurable: true\n });\n ObservableQuery.prototype.result = function () {\n var _this = this;\n return new Promise(function (resolve, reject) {\n var observer = {\n next: function (result) {\n resolve(result);\n _this.observers.delete(observer);\n if (!_this.observers.size) {\n _this.queryManager.removeQuery(_this.queryId);\n }\n setTimeout(function () {\n subscription.unsubscribe();\n }, 0);\n },\n error: reject,\n };\n var subscription = _this.subscribe(observer);\n });\n };\n ObservableQuery.prototype.getCurrentResult = function () {\n var _a = this, lastResult = _a.lastResult, lastError = _a.lastError;\n var networkStatus = this.queryInfo.networkStatus || NetworkStatus.ready;\n var result = __assign(__assign({}, (lastError ? { error: lastError } : lastResult)), { loading: isNetworkRequestInFlight(networkStatus), networkStatus: networkStatus });\n if (this.isTornDown) {\n return result;\n }\n var _b = this.options.fetchPolicy, fetchPolicy = _b === void 0 ? 'cache-first' : _b;\n if (fetchPolicy === 'no-cache' ||\n fetchPolicy === 'network-only') {\n result.partial = false;\n }\n else if (!result.data ||\n !this.queryManager.transform(this.options.query).hasForcedResolvers) {\n var diff = this.queryInfo.getDiff();\n result.partial = !diff.complete;\n result.data = (diff.complete ||\n this.options.returnPartialData) ? diff.result : void 0;\n if (diff.complete &&\n result.networkStatus === NetworkStatus.loading &&\n (fetchPolicy === 'cache-first' ||\n fetchPolicy === 'cache-only')) {\n result.networkStatus = NetworkStatus.ready;\n result.loading = false;\n }\n }\n this.updateLastResult(result);\n return result;\n };\n ObservableQuery.prototype.isDifferentFromLastResult = function (newResult) {\n return !equal(this.lastResultSnapshot, newResult);\n };\n ObservableQuery.prototype.getLastResult = function () {\n return this.lastResult;\n };\n ObservableQuery.prototype.getLastError = function () {\n return this.lastError;\n };\n ObservableQuery.prototype.resetLastResults = function () {\n delete this.lastResult;\n delete this.lastResultSnapshot;\n delete this.lastError;\n this.isTornDown = false;\n };\n ObservableQuery.prototype.resetQueryStoreErrors = function () {\n this.queryManager.resetErrors(this.queryId);\n };\n ObservableQuery.prototype.refetch = function (variables) {\n var fetchPolicy = this.options.fetchPolicy;\n if (fetchPolicy === 'cache-only') {\n return Promise.reject(process.env.NODE_ENV === \"production\" ? new InvariantError(12) : new InvariantError('cache-only fetchPolicy option should not be used together with query refetch.'));\n }\n var reobserveOptions = {\n pollInterval: 0,\n };\n if (fetchPolicy !== 'no-cache' &&\n fetchPolicy !== 'cache-and-network') {\n reobserveOptions.fetchPolicy = 'network-only';\n reobserveOptions.nextFetchPolicy = fetchPolicy;\n }\n if (variables && !equal(this.options.variables, variables)) {\n reobserveOptions.variables = this.options.variables = __assign(__assign({}, this.options.variables), variables);\n }\n return this.newReobserver(false).reobserve(reobserveOptions, NetworkStatus.refetch);\n };\n ObservableQuery.prototype.fetchMore = function (fetchMoreOptions) {\n var _this = this;\n var combinedOptions = __assign(__assign({}, (fetchMoreOptions.query ? fetchMoreOptions : __assign(__assign(__assign({}, this.options), fetchMoreOptions), { variables: __assign(__assign({}, this.options.variables), fetchMoreOptions.variables) }))), { fetchPolicy: \"no-cache\" });\n var qid = this.queryManager.generateQueryId();\n if (combinedOptions.notifyOnNetworkStatusChange) {\n var currentResult = this.getCurrentResult();\n this.queryInfo.networkStatus = NetworkStatus.fetchMore;\n this.observer.next(__assign(__assign({}, currentResult), { loading: true, networkStatus: NetworkStatus.fetchMore }));\n }\n return this.queryManager.fetchQuery(qid, combinedOptions, NetworkStatus.fetchMore).then(function (fetchMoreResult) {\n var data = fetchMoreResult.data;\n var updateQuery = fetchMoreOptions.updateQuery;\n if (updateQuery) {\n if (process.env.NODE_ENV !== \"production\" &&\n !warnedAboutUpdateQuery) {\n process.env.NODE_ENV === \"production\" || invariant.warn(\"The updateQuery callback for fetchMore is deprecated, and will be removed\\nin the next major version of Apollo Client.\\n\\nPlease convert updateQuery functions to field policies with appropriate\\nread and merge functions, or use/adapt a helper function (such as\\nconcatPagination, offsetLimitPagination, or relayStylePagination) from\\n@apollo/client/utilities.\\n\\nThe field policy system handles pagination more effectively than a\\nhand-written updateQuery function, and you only need to define the policy\\nonce, rather than every time you call fetchMore.\");\n warnedAboutUpdateQuery = true;\n }\n _this.updateQuery(function (previous) { return updateQuery(previous, {\n fetchMoreResult: data,\n variables: combinedOptions.variables,\n }); });\n }\n else {\n _this.queryManager.cache.writeQuery({\n query: combinedOptions.query,\n variables: combinedOptions.variables,\n data: data,\n });\n }\n return fetchMoreResult;\n }).finally(function () {\n _this.queryManager.stopQuery(qid);\n _this.reobserve();\n });\n };\n ObservableQuery.prototype.subscribeToMore = function (options) {\n var _this = this;\n var subscription = this.queryManager\n .startGraphQLSubscription({\n query: options.document,\n variables: options.variables,\n context: options.context,\n })\n .subscribe({\n next: function (subscriptionData) {\n var updateQuery = options.updateQuery;\n if (updateQuery) {\n _this.updateQuery(function (previous, _a) {\n var variables = _a.variables;\n return updateQuery(previous, {\n subscriptionData: subscriptionData,\n variables: variables,\n });\n });\n }\n },\n error: function (err) {\n if (options.onError) {\n options.onError(err);\n return;\n }\n process.env.NODE_ENV === \"production\" || invariant.error('Unhandled GraphQL subscription error', err);\n },\n });\n this.subscriptions.add(subscription);\n return function () {\n if (_this.subscriptions.delete(subscription)) {\n subscription.unsubscribe();\n }\n };\n };\n ObservableQuery.prototype.setOptions = function (newOptions) {\n return this.reobserve(newOptions);\n };\n ObservableQuery.prototype.setVariables = function (variables) {\n if (equal(this.variables, variables)) {\n return this.observers.size\n ? this.result()\n : Promise.resolve();\n }\n this.options.variables = variables;\n if (!this.observers.size) {\n return Promise.resolve();\n }\n var _a = this.options.fetchPolicy, fetchPolicy = _a === void 0 ? 'cache-first' : _a;\n if (fetchPolicy !== 'cache-first' &&\n fetchPolicy !== 'no-cache' &&\n fetchPolicy !== 'network-only') {\n fetchPolicy = 'cache-and-network';\n }\n return this.reobserve({\n fetchPolicy: fetchPolicy,\n variables: variables,\n }, NetworkStatus.setVariables);\n };\n ObservableQuery.prototype.updateQuery = function (mapFn) {\n var _a;\n var queryManager = this.queryManager;\n var result = queryManager.cache.diff({\n query: this.options.query,\n variables: this.variables,\n previousResult: (_a = this.lastResult) === null || _a === void 0 ? void 0 : _a.data,\n returnPartialData: true,\n optimistic: false,\n }).result;\n var newResult = mapFn(result, {\n variables: this.variables,\n });\n if (newResult) {\n queryManager.cache.writeQuery({\n query: this.options.query,\n data: newResult,\n variables: this.variables,\n });\n queryManager.broadcastQueries();\n }\n };\n ObservableQuery.prototype.startPolling = function (pollInterval) {\n this.getReobserver().updateOptions({ pollInterval: pollInterval });\n };\n ObservableQuery.prototype.stopPolling = function () {\n if (this.reobserver) {\n this.reobserver.updateOptions({ pollInterval: 0 });\n }\n };\n ObservableQuery.prototype.updateLastResult = function (newResult) {\n var previousResult = this.lastResult;\n this.lastResult = newResult;\n this.lastResultSnapshot = this.queryManager.assumeImmutableResults\n ? newResult\n : cloneDeep(newResult);\n if (!isNonEmptyArray(newResult.errors)) {\n delete this.lastError;\n }\n return previousResult;\n };\n ObservableQuery.prototype.onSubscribe = function (observer) {\n var _this = this;\n if (observer === this.observer) {\n return function () { };\n }\n try {\n var subObserver = observer._subscription._observer;\n if (subObserver && !subObserver.error) {\n subObserver.error = defaultSubscriptionObserverErrorCallback;\n }\n }\n catch (_a) { }\n var first = !this.observers.size;\n this.observers.add(observer);\n if (this.lastError) {\n observer.error && observer.error(this.lastError);\n }\n else if (this.lastResult) {\n observer.next && observer.next(this.lastResult);\n }\n if (first) {\n this.reobserve().catch(function (_) {\n });\n }\n return function () {\n if (_this.observers.delete(observer) && !_this.observers.size) {\n _this.tearDownQuery();\n }\n };\n };\n ObservableQuery.prototype.getReobserver = function () {\n return this.reobserver || (this.reobserver = this.newReobserver(true));\n };\n ObservableQuery.prototype.newReobserver = function (shareOptions) {\n var _this = this;\n var _a = this, queryManager = _a.queryManager, queryId = _a.queryId;\n queryManager.setObservableQuery(this);\n return new Reobserver(this.observer, shareOptions ? this.options : __assign({}, this.options), function (currentOptions, newNetworkStatus) {\n queryManager.setObservableQuery(_this);\n return queryManager.fetchQueryObservable(queryId, currentOptions, newNetworkStatus);\n }, !queryManager.ssrMode && (function () { return !isNetworkRequestInFlight(_this.queryInfo.networkStatus); }));\n };\n ObservableQuery.prototype.reobserve = function (newOptions, newNetworkStatus) {\n this.isTornDown = false;\n return this.getReobserver().reobserve(newOptions, newNetworkStatus);\n };\n ObservableQuery.prototype.tearDownQuery = function () {\n var queryManager = this.queryManager;\n if (this.reobserver) {\n this.reobserver.stop();\n delete this.reobserver;\n }\n this.isTornDown = true;\n this.subscriptions.forEach(function (sub) { return sub.unsubscribe(); });\n this.subscriptions.clear();\n queryManager.stopQuery(this.queryId);\n this.observers.clear();\n };\n return ObservableQuery;\n}(Observable));\nexport { ObservableQuery };\nfunction defaultSubscriptionObserverErrorCallback(error) {\n process.env.NODE_ENV === \"production\" || invariant.error('Unhandled error', error.message, error.stack);\n}\n//# sourceMappingURL=ObservableQuery.js.map","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import { getParent } from './getParent';\n/**\n * Finds the first parent element where the matchFunction returns true\n * @param element - element to start searching at\n * @param matchFunction - the function that determines if the element is a match\n * @returns the matched element or null no match was found\n */\nexport function findElementRecursive(element, matchFunction) {\n if (!element || element === document.body) {\n return null;\n }\n return matchFunction(element) ? element : findElementRecursive(getParent(element), matchFunction);\n}\n//# sourceMappingURL=findElementRecursive.js.map","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","export var DATA_PORTAL_ATTRIBUTE = 'data-portal-element';\n/**\n * Identify element as a portal by setting an attribute.\n * @param element - Element to mark as a portal.\n */\nexport function setPortalAttribute(element) {\n element.setAttribute(DATA_PORTAL_ATTRIBUTE, 'true');\n}\n//# sourceMappingURL=setPortalAttribute.js.map","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import addDays from 'date-fns/addDays';\nimport addMonths from 'date-fns/addMonths';\nimport addYears from 'date-fns/addYears';\nimport differenceInMilliseconds from 'date-fns/differenceInMilliseconds';\nimport eachDayOfInterval from 'date-fns/eachDayOfInterval';\nimport endOfDay from 'date-fns/endOfDay';\nimport endOfWeek from 'date-fns/endOfWeek';\nimport endOfYear from 'date-fns/endOfYear';\nimport format from 'date-fns/format';\nimport getHours from 'date-fns/getHours';\nimport getSeconds from 'date-fns/getSeconds';\nimport getYear from 'date-fns/getYear';\nimport isAfter from 'date-fns/isAfter';\nimport isBefore from 'date-fns/isBefore';\nimport isEqual from 'date-fns/isEqual';\nimport isSameDay from 'date-fns/isSameDay';\nimport isValid from 'date-fns/isValid';\nimport dateFnsParse from 'date-fns/parse';\nimport setHours from 'date-fns/setHours';\nimport setMinutes from 'date-fns/setMinutes';\nimport setMonth from 'date-fns/setMonth';\nimport setSeconds from 'date-fns/setSeconds';\nimport setYear from 'date-fns/setYear';\nimport startOfDay from 'date-fns/startOfDay';\nimport startOfMonth from 'date-fns/startOfMonth';\nimport endOfMonth from 'date-fns/endOfMonth';\nimport startOfWeek from 'date-fns/startOfWeek';\nimport startOfYear from 'date-fns/startOfYear';\n\nvar DateFnsUtils = /** @class */ (function () {\n function DateFnsUtils(_a) {\n var locale = (_a === void 0 ? {} : _a).locale;\n this.yearFormat = \"yyyy\";\n this.yearMonthFormat = \"MMMM yyyy\";\n this.dateTime12hFormat = \"MMMM do hh:mm aaaa\";\n this.dateTime24hFormat = \"MMMM do HH:mm\";\n this.time12hFormat = \"hh:mm a\";\n this.time24hFormat = \"HH:mm\";\n this.dateFormat = \"MMMM do\";\n this.locale = locale;\n }\n // Note: date-fns input types are more lenient than this adapter, so we need to expose our more\n // strict signature and delegate to the more lenient signature. Otherwise, we have downstream type errors upon usage.\n DateFnsUtils.prototype.addDays = function (value, count) {\n return addDays(value, count);\n };\n DateFnsUtils.prototype.isValid = function (value) {\n return isValid(this.date(value));\n };\n DateFnsUtils.prototype.getDiff = function (value, comparing) {\n return differenceInMilliseconds(value, this.date(comparing));\n };\n DateFnsUtils.prototype.isAfter = function (value, comparing) {\n return isAfter(value, comparing);\n };\n DateFnsUtils.prototype.isBefore = function (value, comparing) {\n return isBefore(value, comparing);\n };\n DateFnsUtils.prototype.startOfDay = function (value) {\n return startOfDay(value);\n };\n DateFnsUtils.prototype.endOfDay = function (value) {\n return endOfDay(value);\n };\n DateFnsUtils.prototype.getHours = function (value) {\n return getHours(value);\n };\n DateFnsUtils.prototype.setHours = function (value, count) {\n return setHours(value, count);\n };\n DateFnsUtils.prototype.setMinutes = function (value, count) {\n return setMinutes(value, count);\n };\n DateFnsUtils.prototype.getSeconds = function (value) {\n return getSeconds(value);\n };\n DateFnsUtils.prototype.setSeconds = function (value, count) {\n return setSeconds(value, count);\n };\n DateFnsUtils.prototype.isSameDay = function (value, comparing) {\n return isSameDay(value, comparing);\n };\n DateFnsUtils.prototype.startOfMonth = function (value) {\n return startOfMonth(value);\n };\n DateFnsUtils.prototype.endOfMonth = function (value) {\n return endOfMonth(value);\n };\n DateFnsUtils.prototype.getYear = function (value) {\n return getYear(value);\n };\n DateFnsUtils.prototype.setYear = function (value, count) {\n return setYear(value, count);\n };\n DateFnsUtils.prototype.date = function (value) {\n if (typeof value === \"undefined\") {\n return new Date();\n }\n if (value === null) {\n return null;\n }\n return new Date(value);\n };\n DateFnsUtils.prototype.parse = function (value, formatString) {\n if (value === \"\") {\n return null;\n }\n return dateFnsParse(value, formatString, new Date());\n };\n DateFnsUtils.prototype.format = function (date, formatString) {\n return format(date, formatString, { locale: this.locale });\n };\n DateFnsUtils.prototype.isEqual = function (date, comparing) {\n if (date === null && comparing === null) {\n return true;\n }\n return isEqual(date, comparing);\n };\n DateFnsUtils.prototype.isNull = function (date) {\n return date === null;\n };\n DateFnsUtils.prototype.isAfterDay = function (date, value) {\n return isAfter(date, endOfDay(value));\n };\n DateFnsUtils.prototype.isBeforeDay = function (date, value) {\n return isBefore(date, startOfDay(value));\n };\n DateFnsUtils.prototype.isBeforeYear = function (date, value) {\n return isBefore(date, startOfYear(value));\n };\n DateFnsUtils.prototype.isAfterYear = function (date, value) {\n return isAfter(date, endOfYear(value));\n };\n DateFnsUtils.prototype.formatNumber = function (numberToFormat) {\n return numberToFormat;\n };\n DateFnsUtils.prototype.getMinutes = function (date) {\n return date.getMinutes();\n };\n DateFnsUtils.prototype.getMonth = function (date) {\n return date.getMonth();\n };\n DateFnsUtils.prototype.setMonth = function (date, count) {\n return setMonth(date, count);\n };\n DateFnsUtils.prototype.getMeridiemText = function (ampm) {\n return ampm === \"am\" ? \"AM\" : \"PM\";\n };\n DateFnsUtils.prototype.getNextMonth = function (date) {\n return addMonths(date, 1);\n };\n DateFnsUtils.prototype.getPreviousMonth = function (date) {\n return addMonths(date, -1);\n };\n DateFnsUtils.prototype.getMonthArray = function (date) {\n var firstMonth = startOfYear(date);\n var monthArray = [firstMonth];\n while (monthArray.length < 12) {\n var prevMonth = monthArray[monthArray.length - 1];\n monthArray.push(this.getNextMonth(prevMonth));\n }\n return monthArray;\n };\n DateFnsUtils.prototype.mergeDateAndTime = function (date, time) {\n return this.setMinutes(this.setHours(date, this.getHours(time)), this.getMinutes(time));\n };\n DateFnsUtils.prototype.getWeekdays = function () {\n var _this = this;\n var now = new Date();\n return eachDayOfInterval({\n start: startOfWeek(now, { locale: this.locale }),\n end: endOfWeek(now, { locale: this.locale })\n }).map(function (day) { return format(day, \"EEEEEE\", { locale: _this.locale }); });\n };\n DateFnsUtils.prototype.getWeekArray = function (date) {\n var start = startOfWeek(startOfMonth(date), { locale: this.locale });\n var end = endOfWeek(endOfMonth(date), { locale: this.locale });\n var count = 0;\n var current = start;\n var nestedWeeks = [];\n while (isBefore(current, end)) {\n var weekNumber = Math.floor(count / 7);\n nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];\n nestedWeeks[weekNumber].push(current);\n current = addDays(current, 1);\n count += 1;\n }\n return nestedWeeks;\n };\n DateFnsUtils.prototype.getYearRange = function (start, end) {\n var startDate = startOfYear(start);\n var endDate = endOfYear(end);\n var years = [];\n var current = startDate;\n while (isBefore(current, endDate)) {\n years.push(current);\n current = addYears(current, 1);\n }\n return years;\n };\n // displaying methpds\n DateFnsUtils.prototype.getCalendarHeaderText = function (date) {\n return format(date, this.yearMonthFormat, { locale: this.locale });\n };\n DateFnsUtils.prototype.getYearText = function (date) {\n return format(date, \"yyyy\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getDatePickerHeaderText = function (date) {\n return format(date, \"EEE, MMM d\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getDateTimePickerHeaderText = function (date) {\n return format(date, \"MMM d\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getMonthText = function (date) {\n return format(date, \"MMMM\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getDayText = function (date) {\n return format(date, \"d\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getHourText = function (date, ampm) {\n return format(date, ampm ? \"hh\" : \"HH\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getMinuteText = function (date) {\n return format(date, \"mm\", { locale: this.locale });\n };\n DateFnsUtils.prototype.getSecondText = function (date) {\n return format(date, \"ss\", { locale: this.locale });\n };\n return DateFnsUtils;\n}());\n\nexport default DateFnsUtils;\n","import { ApolloLink } from \"./ApolloLink.js\";\nexport var empty = ApolloLink.empty;\n//# sourceMappingURL=empty.js.map","import { ApolloLink } from \"./ApolloLink.js\";\nexport var from = ApolloLink.from;\n//# sourceMappingURL=from.js.map","import { ApolloLink } from \"./ApolloLink.js\";\nexport var split = ApolloLink.split;\n//# sourceMappingURL=split.js.map","import { ApolloLink } from \"./ApolloLink.js\";\nexport var concat = ApolloLink.concat;\n//# sourceMappingURL=concat.js.map","import { ApolloLink } from \"./ApolloLink.js\";\nexport var execute = ApolloLink.execute;\n//# sourceMappingURL=execute.js.map","export var Cache;\n(function (Cache) {\n})(Cache || (Cache = {}));\n//# sourceMappingURL=Cache.js.map","var MutationStore = (function () {\n function MutationStore() {\n this.store = {};\n }\n MutationStore.prototype.getStore = function () {\n return this.store;\n };\n MutationStore.prototype.get = function (mutationId) {\n return this.store[mutationId];\n };\n MutationStore.prototype.initMutation = function (mutationId, mutation, variables) {\n this.store[mutationId] = {\n mutation: mutation,\n variables: variables || {},\n loading: true,\n error: null,\n };\n };\n MutationStore.prototype.markMutationError = function (mutationId, error) {\n var mutation = this.store[mutationId];\n if (mutation) {\n mutation.loading = false;\n mutation.error = error;\n }\n };\n MutationStore.prototype.markMutationResult = function (mutationId) {\n var mutation = this.store[mutationId];\n if (mutation) {\n mutation.loading = false;\n mutation.error = null;\n }\n };\n MutationStore.prototype.reset = function () {\n this.store = {};\n };\n return MutationStore;\n}());\nexport { MutationStore };\n//# sourceMappingURL=MutationStore.js.map","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { visit, BREAK } from 'graphql/language/visitor';\nimport { invariant } from 'ts-invariant';\nimport { argumentsObjectFromField, buildQueryFromSelectionSet, createFragmentMap, getFragmentDefinitions, getMainDefinition, hasDirectives, isField, isInlineFragment, mergeDeep, mergeDeepArray, removeClientSetsFromDocument, resultKeyNameFromField, shouldInclude, } from \"../utilities/index.js\";\nimport { cacheSlot } from \"../cache/index.js\";\nvar LocalState = (function () {\n function LocalState(_a) {\n var cache = _a.cache, client = _a.client, resolvers = _a.resolvers, fragmentMatcher = _a.fragmentMatcher;\n this.cache = cache;\n if (client) {\n this.client = client;\n }\n if (resolvers) {\n this.addResolvers(resolvers);\n }\n if (fragmentMatcher) {\n this.setFragmentMatcher(fragmentMatcher);\n }\n }\n LocalState.prototype.addResolvers = function (resolvers) {\n var _this = this;\n this.resolvers = this.resolvers || {};\n if (Array.isArray(resolvers)) {\n resolvers.forEach(function (resolverGroup) {\n _this.resolvers = mergeDeep(_this.resolvers, resolverGroup);\n });\n }\n else {\n this.resolvers = mergeDeep(this.resolvers, resolvers);\n }\n };\n LocalState.prototype.setResolvers = function (resolvers) {\n this.resolvers = {};\n this.addResolvers(resolvers);\n };\n LocalState.prototype.getResolvers = function () {\n return this.resolvers || {};\n };\n LocalState.prototype.runResolvers = function (_a) {\n var document = _a.document, remoteResult = _a.remoteResult, context = _a.context, variables = _a.variables, _b = _a.onlyRunForcedResolvers, onlyRunForcedResolvers = _b === void 0 ? false : _b;\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_c) {\n if (document) {\n return [2, this.resolveDocument(document, remoteResult.data, context, variables, this.fragmentMatcher, onlyRunForcedResolvers).then(function (localResult) { return (__assign(__assign({}, remoteResult), { data: localResult.result })); })];\n }\n return [2, remoteResult];\n });\n });\n };\n LocalState.prototype.setFragmentMatcher = function (fragmentMatcher) {\n this.fragmentMatcher = fragmentMatcher;\n };\n LocalState.prototype.getFragmentMatcher = function () {\n return this.fragmentMatcher;\n };\n LocalState.prototype.clientQuery = function (document) {\n if (hasDirectives(['client'], document)) {\n if (this.resolvers) {\n return document;\n }\n }\n return null;\n };\n LocalState.prototype.serverQuery = function (document) {\n return removeClientSetsFromDocument(document);\n };\n LocalState.prototype.prepareContext = function (context) {\n var cache = this.cache;\n return __assign(__assign({}, context), { cache: cache,\n getCacheKey: function (obj) {\n return cache.identify(obj);\n } });\n };\n LocalState.prototype.addExportedVariables = function (document, variables, context) {\n if (variables === void 0) { variables = {}; }\n if (context === void 0) { context = {}; }\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (document) {\n return [2, this.resolveDocument(document, this.buildRootValueFromCache(document, variables) || {}, this.prepareContext(context), variables).then(function (data) { return (__assign(__assign({}, variables), data.exportedVariables)); })];\n }\n return [2, __assign({}, variables)];\n });\n });\n };\n LocalState.prototype.shouldForceResolvers = function (document) {\n var forceResolvers = false;\n visit(document, {\n Directive: {\n enter: function (node) {\n if (node.name.value === 'client' && node.arguments) {\n forceResolvers = node.arguments.some(function (arg) {\n return arg.name.value === 'always' &&\n arg.value.kind === 'BooleanValue' &&\n arg.value.value === true;\n });\n if (forceResolvers) {\n return BREAK;\n }\n }\n },\n },\n });\n return forceResolvers;\n };\n LocalState.prototype.buildRootValueFromCache = function (document, variables) {\n return this.cache.diff({\n query: buildQueryFromSelectionSet(document),\n variables: variables,\n returnPartialData: true,\n optimistic: false,\n }).result;\n };\n LocalState.prototype.resolveDocument = function (document, rootValue, context, variables, fragmentMatcher, onlyRunForcedResolvers) {\n if (context === void 0) { context = {}; }\n if (variables === void 0) { variables = {}; }\n if (fragmentMatcher === void 0) { fragmentMatcher = function () { return true; }; }\n if (onlyRunForcedResolvers === void 0) { onlyRunForcedResolvers = false; }\n return __awaiter(this, void 0, void 0, function () {\n var mainDefinition, fragments, fragmentMap, definitionOperation, defaultOperationType, _a, cache, client, execContext;\n return __generator(this, function (_b) {\n mainDefinition = getMainDefinition(document);\n fragments = getFragmentDefinitions(document);\n fragmentMap = createFragmentMap(fragments);\n definitionOperation = mainDefinition\n .operation;\n defaultOperationType = definitionOperation\n ? definitionOperation.charAt(0).toUpperCase() +\n definitionOperation.slice(1)\n : 'Query';\n _a = this, cache = _a.cache, client = _a.client;\n execContext = {\n fragmentMap: fragmentMap,\n context: __assign(__assign({}, context), { cache: cache,\n client: client }),\n variables: variables,\n fragmentMatcher: fragmentMatcher,\n defaultOperationType: defaultOperationType,\n exportedVariables: {},\n onlyRunForcedResolvers: onlyRunForcedResolvers,\n };\n return [2, this.resolveSelectionSet(mainDefinition.selectionSet, rootValue, execContext).then(function (result) { return ({\n result: result,\n exportedVariables: execContext.exportedVariables,\n }); })];\n });\n });\n };\n LocalState.prototype.resolveSelectionSet = function (selectionSet, rootValue, execContext) {\n return __awaiter(this, void 0, void 0, function () {\n var fragmentMap, context, variables, resultsToMerge, execute;\n var _this = this;\n return __generator(this, function (_a) {\n fragmentMap = execContext.fragmentMap, context = execContext.context, variables = execContext.variables;\n resultsToMerge = [rootValue];\n execute = function (selection) { return __awaiter(_this, void 0, void 0, function () {\n var fragment, typeCondition;\n return __generator(this, function (_a) {\n if (!shouldInclude(selection, variables)) {\n return [2];\n }\n if (isField(selection)) {\n return [2, this.resolveField(selection, rootValue, execContext).then(function (fieldResult) {\n var _a;\n if (typeof fieldResult !== 'undefined') {\n resultsToMerge.push((_a = {},\n _a[resultKeyNameFromField(selection)] = fieldResult,\n _a));\n }\n })];\n }\n if (isInlineFragment(selection)) {\n fragment = selection;\n }\n else {\n fragment = fragmentMap[selection.name.value];\n process.env.NODE_ENV === \"production\" ? invariant(fragment, 11) : invariant(fragment, \"No fragment named \" + selection.name.value);\n }\n if (fragment && fragment.typeCondition) {\n typeCondition = fragment.typeCondition.name.value;\n if (execContext.fragmentMatcher(rootValue, typeCondition, context)) {\n return [2, this.resolveSelectionSet(fragment.selectionSet, rootValue, execContext).then(function (fragmentResult) {\n resultsToMerge.push(fragmentResult);\n })];\n }\n }\n return [2];\n });\n }); };\n return [2, Promise.all(selectionSet.selections.map(execute)).then(function () {\n return mergeDeepArray(resultsToMerge);\n })];\n });\n });\n };\n LocalState.prototype.resolveField = function (field, rootValue, execContext) {\n return __awaiter(this, void 0, void 0, function () {\n var variables, fieldName, aliasedFieldName, aliasUsed, defaultResult, resultPromise, resolverType, resolverMap, resolve;\n var _this = this;\n return __generator(this, function (_a) {\n variables = execContext.variables;\n fieldName = field.name.value;\n aliasedFieldName = resultKeyNameFromField(field);\n aliasUsed = fieldName !== aliasedFieldName;\n defaultResult = rootValue[aliasedFieldName] || rootValue[fieldName];\n resultPromise = Promise.resolve(defaultResult);\n if (!execContext.onlyRunForcedResolvers ||\n this.shouldForceResolvers(field)) {\n resolverType = rootValue.__typename || execContext.defaultOperationType;\n resolverMap = this.resolvers && this.resolvers[resolverType];\n if (resolverMap) {\n resolve = resolverMap[aliasUsed ? fieldName : aliasedFieldName];\n if (resolve) {\n resultPromise = Promise.resolve(cacheSlot.withValue(this.cache, resolve, [\n rootValue,\n argumentsObjectFromField(field, variables),\n execContext.context,\n { field: field, fragmentMap: execContext.fragmentMap },\n ]));\n }\n }\n }\n return [2, resultPromise.then(function (result) {\n if (result === void 0) { result = defaultResult; }\n if (field.directives) {\n field.directives.forEach(function (directive) {\n if (directive.name.value === 'export' && directive.arguments) {\n directive.arguments.forEach(function (arg) {\n if (arg.name.value === 'as' && arg.value.kind === 'StringValue') {\n execContext.exportedVariables[arg.value.value] = result;\n }\n });\n }\n });\n }\n if (!field.selectionSet) {\n return result;\n }\n if (result == null) {\n return result;\n }\n if (Array.isArray(result)) {\n return _this.resolveSubSelectedArray(field, result, execContext);\n }\n if (field.selectionSet) {\n return _this.resolveSelectionSet(field.selectionSet, result, execContext);\n }\n })];\n });\n });\n };\n LocalState.prototype.resolveSubSelectedArray = function (field, result, execContext) {\n var _this = this;\n return Promise.all(result.map(function (item) {\n if (item === null) {\n return null;\n }\n if (Array.isArray(item)) {\n return _this.resolveSubSelectedArray(field, item, execContext);\n }\n if (field.selectionSet) {\n return _this.resolveSelectionSet(field.selectionSet, item, execContext);\n }\n }));\n };\n return LocalState;\n}());\nexport { LocalState };\n//# sourceMappingURL=LocalState.js.map","import { equal } from \"@wry/equality\";\nimport { isNonEmptyArray, graphQLResultHasError, } from \"../utilities/index.js\";\nimport { NetworkStatus, isNetworkRequestInFlight, } from \"./networkStatus.js\";\nvar QueryInfo = (function () {\n function QueryInfo(cache) {\n this.cache = cache;\n this.listeners = new Set();\n this.document = null;\n this.lastRequestId = 1;\n this.subscriptions = new Set();\n this.dirty = false;\n this.diff = null;\n this.observableQuery = null;\n }\n QueryInfo.prototype.init = function (query) {\n var networkStatus = query.networkStatus || NetworkStatus.loading;\n if (this.variables &&\n this.networkStatus !== NetworkStatus.loading &&\n !equal(this.variables, query.variables)) {\n networkStatus = NetworkStatus.setVariables;\n }\n if (!equal(query.variables, this.variables)) {\n this.diff = null;\n }\n Object.assign(this, {\n document: query.document,\n variables: query.variables,\n networkError: null,\n graphQLErrors: this.graphQLErrors || [],\n networkStatus: networkStatus,\n });\n if (query.observableQuery) {\n this.setObservableQuery(query.observableQuery);\n }\n if (query.lastRequestId) {\n this.lastRequestId = query.lastRequestId;\n }\n return this;\n };\n QueryInfo.prototype.getDiff = function (variables) {\n if (variables === void 0) { variables = this.variables; }\n if (this.diff && equal(variables, this.variables)) {\n return this.diff;\n }\n this.updateWatch(this.variables = variables);\n return this.diff = this.cache.diff({\n query: this.document,\n variables: variables,\n returnPartialData: true,\n optimistic: true,\n });\n };\n QueryInfo.prototype.setDiff = function (diff) {\n var _this = this;\n var oldDiff = this.diff;\n this.diff = diff;\n if (!this.dirty && (diff === null || diff === void 0 ? void 0 : diff.result) !== (oldDiff === null || oldDiff === void 0 ? void 0 : oldDiff.result)) {\n this.dirty = true;\n if (!this.notifyTimeout) {\n this.notifyTimeout = setTimeout(function () { return _this.notify(); }, 0);\n }\n }\n };\n QueryInfo.prototype.setObservableQuery = function (oq) {\n if (oq === this.observableQuery)\n return;\n if (this.oqListener) {\n this.listeners.delete(this.oqListener);\n }\n this.observableQuery = oq;\n if (oq) {\n oq[\"queryInfo\"] = this;\n this.listeners.add(this.oqListener = function () { return oq.reobserve(); });\n }\n else {\n delete this.oqListener;\n }\n };\n QueryInfo.prototype.notify = function () {\n var _this = this;\n if (this.notifyTimeout) {\n clearTimeout(this.notifyTimeout);\n this.notifyTimeout = void 0;\n }\n if (this.shouldNotify()) {\n this.listeners.forEach(function (listener) { return listener(_this); });\n }\n this.dirty = false;\n };\n QueryInfo.prototype.shouldNotify = function () {\n if (!this.dirty || !this.listeners.size) {\n return false;\n }\n if (isNetworkRequestInFlight(this.networkStatus) &&\n this.observableQuery) {\n var fetchPolicy = this.observableQuery.options.fetchPolicy;\n if (fetchPolicy !== \"cache-only\" &&\n fetchPolicy !== \"cache-and-network\") {\n return false;\n }\n }\n return true;\n };\n QueryInfo.prototype.stop = function () {\n this.cancel();\n delete this.cancel;\n var oq = this.observableQuery;\n if (oq)\n oq.stopPolling();\n };\n QueryInfo.prototype.cancel = function () { };\n QueryInfo.prototype.updateWatch = function (variables) {\n var _this = this;\n if (variables === void 0) { variables = this.variables; }\n var oq = this.observableQuery;\n if (oq && oq.options.fetchPolicy === \"no-cache\") {\n return;\n }\n if (!this.lastWatch ||\n this.lastWatch.query !== this.document ||\n !equal(variables, this.lastWatch.variables)) {\n this.cancel();\n this.cancel = this.cache.watch(this.lastWatch = {\n query: this.document,\n variables: variables,\n optimistic: true,\n callback: function (diff) { return _this.setDiff(diff); },\n });\n }\n };\n QueryInfo.prototype.markResult = function (result, options, allowCacheWrite) {\n var _this = this;\n this.graphQLErrors = isNonEmptyArray(result.errors) ? result.errors : [];\n if (options.fetchPolicy === 'no-cache') {\n this.diff = { result: result.data, complete: true };\n }\n else if (allowCacheWrite) {\n var ignoreErrors = options.errorPolicy === 'ignore' ||\n options.errorPolicy === 'all';\n var writeWithErrors = !graphQLResultHasError(result);\n if (!writeWithErrors && ignoreErrors && result.data) {\n writeWithErrors = true;\n }\n if (writeWithErrors) {\n this.cache.performTransaction(function (cache) {\n if (_this.lastWrittenResult &&\n equal(result.data, _this.lastWrittenResult.data) &&\n equal(options.variables, _this.lastWrittenVars)) {\n if (_this.diff && _this.diff.complete) {\n result.data = _this.diff.result;\n return;\n }\n }\n else {\n cache.writeQuery({\n query: _this.document,\n data: result.data,\n variables: options.variables,\n });\n _this.lastWrittenResult = result;\n _this.lastWrittenVars = options.variables;\n }\n var diff = cache.diff({\n query: _this.document,\n variables: options.variables,\n returnPartialData: true,\n optimistic: true,\n });\n _this.updateWatch(options.variables);\n _this.diff = diff;\n if (diff.complete) {\n result.data = diff.result;\n }\n });\n }\n else {\n this.lastWrittenResult = this.lastWrittenVars = void 0;\n }\n }\n };\n QueryInfo.prototype.markReady = function () {\n this.networkError = null;\n return this.networkStatus = NetworkStatus.ready;\n };\n QueryInfo.prototype.markError = function (error) {\n this.networkStatus = NetworkStatus.error;\n this.lastWrittenResult = this.lastWrittenVars = void 0;\n if (error.graphQLErrors) {\n this.graphQLErrors = error.graphQLErrors;\n }\n if (error.networkError) {\n this.networkError = error.networkError;\n }\n return error;\n };\n return QueryInfo;\n}());\nexport { QueryInfo };\n//# sourceMappingURL=QueryInfo.js.map","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { equal } from '@wry/equality';\nimport { execute } from \"../link/core/index.js\";\nimport { getDefaultValues, getOperationDefinition, getOperationName, hasClientExports, graphQLResultHasError, removeConnectionDirectiveFromDocument, canUseWeakMap, Observable, asyncMap, isNonEmptyArray, Concast, } from \"../utilities/index.js\";\nimport { ApolloError, isApolloError } from \"../errors/index.js\";\nimport { MutationStore } from \"./MutationStore.js\";\nimport { ObservableQuery } from \"./ObservableQuery.js\";\nimport { NetworkStatus, isNetworkRequestInFlight } from \"./networkStatus.js\";\nimport { LocalState } from \"./LocalState.js\";\nimport { QueryInfo } from \"./QueryInfo.js\";\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar QueryManager = (function () {\n function QueryManager(_a) {\n var cache = _a.cache, link = _a.link, _b = _a.queryDeduplication, queryDeduplication = _b === void 0 ? false : _b, _c = _a.onBroadcast, onBroadcast = _c === void 0 ? function () { return undefined; } : _c, _d = _a.ssrMode, ssrMode = _d === void 0 ? false : _d, _e = _a.clientAwareness, clientAwareness = _e === void 0 ? {} : _e, localState = _a.localState, assumeImmutableResults = _a.assumeImmutableResults;\n this.mutationStore = new MutationStore();\n this.clientAwareness = {};\n this.queries = new Map();\n this.fetchCancelFns = new Map();\n this.transformCache = new (canUseWeakMap ? WeakMap : Map)();\n this.queryIdCounter = 1;\n this.requestIdCounter = 1;\n this.mutationIdCounter = 1;\n this.inFlightLinkObservables = new Map();\n this.cache = cache;\n this.link = link;\n this.queryDeduplication = queryDeduplication;\n this.onBroadcast = onBroadcast;\n this.clientAwareness = clientAwareness;\n this.localState = localState || new LocalState({ cache: cache });\n this.ssrMode = ssrMode;\n this.assumeImmutableResults = !!assumeImmutableResults;\n }\n QueryManager.prototype.stop = function () {\n var _this = this;\n this.queries.forEach(function (_info, queryId) {\n _this.stopQueryNoBroadcast(queryId);\n });\n this.cancelPendingFetches(process.env.NODE_ENV === \"production\" ? new InvariantError(13) : new InvariantError('QueryManager stopped while query was in flight'));\n };\n QueryManager.prototype.cancelPendingFetches = function (error) {\n this.fetchCancelFns.forEach(function (cancel) { return cancel(error); });\n this.fetchCancelFns.clear();\n };\n QueryManager.prototype.mutate = function (_a) {\n var mutation = _a.mutation, variables = _a.variables, optimisticResponse = _a.optimisticResponse, updateQueriesByName = _a.updateQueries, _b = _a.refetchQueries, refetchQueries = _b === void 0 ? [] : _b, _c = _a.awaitRefetchQueries, awaitRefetchQueries = _c === void 0 ? false : _c, updateWithProxyFn = _a.update, _d = _a.errorPolicy, errorPolicy = _d === void 0 ? 'none' : _d, fetchPolicy = _a.fetchPolicy, _e = _a.context, context = _e === void 0 ? {} : _e;\n return __awaiter(this, void 0, void 0, function () {\n var mutationId, generateUpdateQueriesInfo, optimistic_1, self;\n var _this = this;\n return __generator(this, function (_f) {\n switch (_f.label) {\n case 0:\n process.env.NODE_ENV === \"production\" ? invariant(mutation, 14) : invariant(mutation, 'mutation option is required. You must specify your GraphQL document in the mutation option.');\n process.env.NODE_ENV === \"production\" ? invariant(!fetchPolicy || fetchPolicy === 'no-cache', 15) : invariant(!fetchPolicy || fetchPolicy === 'no-cache', \"Mutations only support a 'no-cache' fetchPolicy. If you don't want to disable the cache, remove your fetchPolicy setting to proceed with the default mutation behavior.\");\n mutationId = this.generateMutationId();\n mutation = this.transform(mutation).document;\n variables = this.getVariables(mutation, variables);\n if (!this.transform(mutation).hasClientExports) return [3, 2];\n return [4, this.localState.addExportedVariables(mutation, variables, context)];\n case 1:\n variables = _f.sent();\n _f.label = 2;\n case 2:\n generateUpdateQueriesInfo = function () {\n var ret = {};\n if (updateQueriesByName) {\n _this.queries.forEach(function (_a, queryId) {\n var observableQuery = _a.observableQuery;\n if (observableQuery) {\n var queryName = observableQuery.queryName;\n if (queryName &&\n hasOwnProperty.call(updateQueriesByName, queryName)) {\n ret[queryId] = {\n updater: updateQueriesByName[queryName],\n queryInfo: _this.queries.get(queryId),\n };\n }\n }\n });\n }\n return ret;\n };\n this.mutationStore.initMutation(mutationId, mutation, variables);\n if (optimisticResponse) {\n optimistic_1 = typeof optimisticResponse === 'function'\n ? optimisticResponse(variables)\n : optimisticResponse;\n this.cache.recordOptimisticTransaction(function (cache) {\n try {\n markMutationResult({\n mutationId: mutationId,\n result: { data: optimistic_1 },\n document: mutation,\n variables: variables,\n queryUpdatersById: generateUpdateQueriesInfo(),\n update: updateWithProxyFn,\n }, cache);\n }\n catch (error) {\n process.env.NODE_ENV === \"production\" || invariant.error(error);\n }\n }, mutationId);\n }\n this.broadcastQueries();\n self = this;\n return [2, new Promise(function (resolve, reject) {\n var storeResult;\n var error;\n self.getObservableFromLink(mutation, __assign(__assign({}, context), { optimisticResponse: optimisticResponse }), variables, false).subscribe({\n next: function (result) {\n if (graphQLResultHasError(result) && errorPolicy === 'none') {\n error = new ApolloError({\n graphQLErrors: result.errors,\n });\n return;\n }\n self.mutationStore.markMutationResult(mutationId);\n if (fetchPolicy !== 'no-cache') {\n try {\n markMutationResult({\n mutationId: mutationId,\n result: result,\n document: mutation,\n variables: variables,\n queryUpdatersById: generateUpdateQueriesInfo(),\n update: updateWithProxyFn,\n }, self.cache);\n }\n catch (e) {\n error = new ApolloError({\n networkError: e,\n });\n return;\n }\n }\n storeResult = result;\n },\n error: function (err) {\n self.mutationStore.markMutationError(mutationId, err);\n if (optimisticResponse) {\n self.cache.removeOptimistic(mutationId);\n }\n self.broadcastQueries();\n reject(new ApolloError({\n networkError: err,\n }));\n },\n complete: function () {\n if (error) {\n self.mutationStore.markMutationError(mutationId, error);\n }\n if (optimisticResponse) {\n self.cache.removeOptimistic(mutationId);\n }\n self.broadcastQueries();\n if (error) {\n reject(error);\n return;\n }\n if (typeof refetchQueries === 'function') {\n refetchQueries = refetchQueries(storeResult);\n }\n var refetchQueryPromises = [];\n if (isNonEmptyArray(refetchQueries)) {\n refetchQueries.forEach(function (refetchQuery) {\n if (typeof refetchQuery === 'string') {\n self.queries.forEach(function (_a) {\n var observableQuery = _a.observableQuery;\n if (observableQuery &&\n observableQuery.queryName === refetchQuery) {\n refetchQueryPromises.push(observableQuery.refetch());\n }\n });\n }\n else {\n var queryOptions = {\n query: refetchQuery.query,\n variables: refetchQuery.variables,\n fetchPolicy: 'network-only',\n };\n if (refetchQuery.context) {\n queryOptions.context = refetchQuery.context;\n }\n refetchQueryPromises.push(self.query(queryOptions));\n }\n });\n }\n Promise.all(awaitRefetchQueries ? refetchQueryPromises : []).then(function () {\n if (errorPolicy === 'ignore' &&\n storeResult &&\n graphQLResultHasError(storeResult)) {\n delete storeResult.errors;\n }\n resolve(storeResult);\n }, reject);\n },\n });\n })];\n }\n });\n });\n };\n QueryManager.prototype.fetchQuery = function (queryId, options, networkStatus) {\n return this.fetchQueryObservable(queryId, options, networkStatus).promise;\n };\n QueryManager.prototype.getQueryStore = function () {\n var store = Object.create(null);\n this.queries.forEach(function (info, queryId) {\n store[queryId] = {\n variables: info.variables,\n networkStatus: info.networkStatus,\n networkError: info.networkError,\n graphQLErrors: info.graphQLErrors,\n };\n });\n return store;\n };\n QueryManager.prototype.resetErrors = function (queryId) {\n var queryInfo = this.queries.get(queryId);\n if (queryInfo) {\n queryInfo.networkError = undefined;\n queryInfo.graphQLErrors = [];\n }\n };\n QueryManager.prototype.transform = function (document) {\n var transformCache = this.transformCache;\n if (!transformCache.has(document)) {\n var transformed = this.cache.transformDocument(document);\n var forLink = removeConnectionDirectiveFromDocument(this.cache.transformForLink(transformed));\n var clientQuery = this.localState.clientQuery(transformed);\n var serverQuery = forLink && this.localState.serverQuery(forLink);\n var cacheEntry_1 = {\n document: transformed,\n hasClientExports: hasClientExports(transformed),\n hasForcedResolvers: this.localState.shouldForceResolvers(transformed),\n clientQuery: clientQuery,\n serverQuery: serverQuery,\n defaultVars: getDefaultValues(getOperationDefinition(transformed)),\n };\n var add = function (doc) {\n if (doc && !transformCache.has(doc)) {\n transformCache.set(doc, cacheEntry_1);\n }\n };\n add(document);\n add(transformed);\n add(clientQuery);\n add(serverQuery);\n }\n return transformCache.get(document);\n };\n QueryManager.prototype.getVariables = function (document, variables) {\n return __assign(__assign({}, this.transform(document).defaultVars), variables);\n };\n QueryManager.prototype.watchQuery = function (options) {\n options = __assign(__assign({}, options), { variables: this.getVariables(options.query, options.variables) });\n if (typeof options.notifyOnNetworkStatusChange === 'undefined') {\n options.notifyOnNetworkStatusChange = false;\n }\n var queryInfo = new QueryInfo(this.cache);\n var observable = new ObservableQuery({\n queryManager: this,\n queryInfo: queryInfo,\n options: options,\n });\n this.queries.set(observable.queryId, queryInfo);\n queryInfo.init({\n document: options.query,\n observableQuery: observable,\n variables: options.variables,\n });\n return observable;\n };\n QueryManager.prototype.query = function (options) {\n var _this = this;\n process.env.NODE_ENV === \"production\" ? invariant(options.query, 16) : invariant(options.query, 'query option is required. You must specify your GraphQL document ' +\n 'in the query option.');\n process.env.NODE_ENV === \"production\" ? invariant(options.query.kind === 'Document', 17) : invariant(options.query.kind === 'Document', 'You must wrap the query string in a \"gql\" tag.');\n process.env.NODE_ENV === \"production\" ? invariant(!options.returnPartialData, 18) : invariant(!options.returnPartialData, 'returnPartialData option only supported on watchQuery.');\n process.env.NODE_ENV === \"production\" ? invariant(!options.pollInterval, 19) : invariant(!options.pollInterval, 'pollInterval option only supported on watchQuery.');\n var queryId = this.generateQueryId();\n return this.fetchQuery(queryId, options).finally(function () { return _this.stopQuery(queryId); });\n };\n QueryManager.prototype.generateQueryId = function () {\n return String(this.queryIdCounter++);\n };\n QueryManager.prototype.generateRequestId = function () {\n return this.requestIdCounter++;\n };\n QueryManager.prototype.generateMutationId = function () {\n return String(this.mutationIdCounter++);\n };\n QueryManager.prototype.stopQueryInStore = function (queryId) {\n this.stopQueryInStoreNoBroadcast(queryId);\n this.broadcastQueries();\n };\n QueryManager.prototype.stopQueryInStoreNoBroadcast = function (queryId) {\n var queryInfo = this.queries.get(queryId);\n if (queryInfo)\n queryInfo.stop();\n };\n QueryManager.prototype.clearStore = function () {\n this.cancelPendingFetches(process.env.NODE_ENV === \"production\" ? new InvariantError(20) : new InvariantError('Store reset while query was in flight (not completed in link chain)'));\n this.queries.forEach(function (queryInfo) {\n if (queryInfo.observableQuery) {\n queryInfo.networkStatus = NetworkStatus.loading;\n }\n else {\n queryInfo.stop();\n }\n });\n this.mutationStore.reset();\n return this.cache.reset();\n };\n QueryManager.prototype.resetStore = function () {\n var _this = this;\n return this.clearStore().then(function () {\n return _this.reFetchObservableQueries();\n });\n };\n QueryManager.prototype.reFetchObservableQueries = function (includeStandby) {\n var _this = this;\n if (includeStandby === void 0) { includeStandby = false; }\n var observableQueryPromises = [];\n this.queries.forEach(function (_a, queryId) {\n var observableQuery = _a.observableQuery;\n if (observableQuery) {\n var fetchPolicy = observableQuery.options.fetchPolicy;\n observableQuery.resetLastResults();\n if (fetchPolicy !== 'cache-only' &&\n (includeStandby || fetchPolicy !== 'standby')) {\n observableQueryPromises.push(observableQuery.refetch());\n }\n _this.getQuery(queryId).setDiff(null);\n }\n });\n this.broadcastQueries();\n return Promise.all(observableQueryPromises);\n };\n QueryManager.prototype.setObservableQuery = function (observableQuery) {\n this.getQuery(observableQuery.queryId).setObservableQuery(observableQuery);\n };\n QueryManager.prototype.startGraphQLSubscription = function (_a) {\n var _this = this;\n var query = _a.query, fetchPolicy = _a.fetchPolicy, variables = _a.variables, _b = _a.context, context = _b === void 0 ? {} : _b;\n query = this.transform(query).document;\n variables = this.getVariables(query, variables);\n var makeObservable = function (variables) {\n return _this.getObservableFromLink(query, context, variables, false).map(function (result) {\n if (!fetchPolicy || fetchPolicy !== 'no-cache') {\n if (!graphQLResultHasError(result)) {\n _this.cache.write({\n query: query,\n result: result.data,\n dataId: 'ROOT_SUBSCRIPTION',\n variables: variables,\n });\n }\n _this.broadcastQueries();\n }\n if (graphQLResultHasError(result)) {\n throw new ApolloError({\n graphQLErrors: result.errors,\n });\n }\n return result;\n });\n };\n if (this.transform(query).hasClientExports) {\n var observablePromise_1 = this.localState.addExportedVariables(query, variables, context).then(makeObservable);\n return new Observable(function (observer) {\n var sub = null;\n observablePromise_1.then(function (observable) { return sub = observable.subscribe(observer); }, observer.error);\n return function () { return sub && sub.unsubscribe(); };\n });\n }\n return makeObservable(variables);\n };\n QueryManager.prototype.stopQuery = function (queryId) {\n this.stopQueryNoBroadcast(queryId);\n this.broadcastQueries();\n };\n QueryManager.prototype.stopQueryNoBroadcast = function (queryId) {\n this.stopQueryInStoreNoBroadcast(queryId);\n this.removeQuery(queryId);\n };\n QueryManager.prototype.removeQuery = function (queryId) {\n this.fetchCancelFns.delete(queryId);\n this.getQuery(queryId).subscriptions.forEach(function (x) { return x.unsubscribe(); });\n this.queries.delete(queryId);\n };\n QueryManager.prototype.broadcastQueries = function () {\n this.onBroadcast();\n this.queries.forEach(function (info) { return info.notify(); });\n };\n QueryManager.prototype.getLocalState = function () {\n return this.localState;\n };\n QueryManager.prototype.getObservableFromLink = function (query, context, variables, deduplication) {\n var _this = this;\n var _a;\n if (deduplication === void 0) { deduplication = (_a = context === null || context === void 0 ? void 0 : context.queryDeduplication) !== null && _a !== void 0 ? _a : this.queryDeduplication; }\n var observable;\n var serverQuery = this.transform(query).serverQuery;\n if (serverQuery) {\n var _b = this, inFlightLinkObservables_1 = _b.inFlightLinkObservables, link = _b.link;\n var operation = {\n query: serverQuery,\n variables: variables,\n operationName: getOperationName(serverQuery) || void 0,\n context: this.prepareContext(__assign(__assign({}, context), { forceFetch: !deduplication })),\n };\n context = operation.context;\n if (deduplication) {\n var byVariables_1 = inFlightLinkObservables_1.get(serverQuery) || new Map();\n inFlightLinkObservables_1.set(serverQuery, byVariables_1);\n var varJson_1 = JSON.stringify(variables);\n observable = byVariables_1.get(varJson_1);\n if (!observable) {\n var concast = new Concast([\n execute(link, operation)\n ]);\n byVariables_1.set(varJson_1, observable = concast);\n concast.cleanup(function () {\n if (byVariables_1.delete(varJson_1) &&\n byVariables_1.size < 1) {\n inFlightLinkObservables_1.delete(serverQuery);\n }\n });\n }\n }\n else {\n observable = new Concast([\n execute(link, operation)\n ]);\n }\n }\n else {\n observable = new Concast([\n Observable.of({ data: {} })\n ]);\n context = this.prepareContext(context);\n }\n var clientQuery = this.transform(query).clientQuery;\n if (clientQuery) {\n observable = asyncMap(observable, function (result) {\n return _this.localState.runResolvers({\n document: clientQuery,\n remoteResult: result,\n context: context,\n variables: variables,\n });\n });\n }\n return observable;\n };\n QueryManager.prototype.getResultsFromLink = function (queryInfo, allowCacheWrite, options) {\n var lastRequestId = queryInfo.lastRequestId;\n return asyncMap(this.getObservableFromLink(queryInfo.document, options.context, options.variables), function (result) {\n var hasErrors = isNonEmptyArray(result.errors);\n if (lastRequestId >= queryInfo.lastRequestId) {\n if (hasErrors && options.errorPolicy === \"none\") {\n throw queryInfo.markError(new ApolloError({\n graphQLErrors: result.errors,\n }));\n }\n queryInfo.markResult(result, options, allowCacheWrite);\n queryInfo.markReady();\n }\n var aqr = {\n data: result.data,\n loading: false,\n networkStatus: queryInfo.networkStatus || NetworkStatus.ready,\n };\n if (hasErrors && options.errorPolicy !== \"ignore\") {\n aqr.errors = result.errors;\n }\n return aqr;\n }, function (networkError) {\n var error = isApolloError(networkError)\n ? networkError\n : new ApolloError({ networkError: networkError });\n if (lastRequestId >= queryInfo.lastRequestId) {\n queryInfo.markError(error);\n }\n throw error;\n });\n };\n QueryManager.prototype.fetchQueryObservable = function (queryId, options, networkStatus) {\n var _this = this;\n if (networkStatus === void 0) { networkStatus = NetworkStatus.loading; }\n var query = this.transform(options.query).document;\n var variables = this.getVariables(query, options.variables);\n var queryInfo = this.getQuery(queryId);\n var oldNetworkStatus = queryInfo.networkStatus;\n var _a = options.fetchPolicy, fetchPolicy = _a === void 0 ? \"cache-first\" : _a, _b = options.errorPolicy, errorPolicy = _b === void 0 ? \"none\" : _b, _c = options.returnPartialData, returnPartialData = _c === void 0 ? false : _c, _d = options.notifyOnNetworkStatusChange, notifyOnNetworkStatusChange = _d === void 0 ? false : _d, _e = options.context, context = _e === void 0 ? {} : _e;\n var mightUseNetwork = fetchPolicy === \"cache-first\" ||\n fetchPolicy === \"cache-and-network\" ||\n fetchPolicy === \"network-only\" ||\n fetchPolicy === \"no-cache\";\n if (mightUseNetwork &&\n notifyOnNetworkStatusChange &&\n typeof oldNetworkStatus === \"number\" &&\n oldNetworkStatus !== networkStatus &&\n isNetworkRequestInFlight(networkStatus)) {\n if (fetchPolicy !== \"cache-first\") {\n fetchPolicy = \"cache-and-network\";\n }\n returnPartialData = true;\n }\n var normalized = Object.assign({}, options, {\n query: query,\n variables: variables,\n fetchPolicy: fetchPolicy,\n errorPolicy: errorPolicy,\n returnPartialData: returnPartialData,\n notifyOnNetworkStatusChange: notifyOnNetworkStatusChange,\n context: context,\n });\n var fromVariables = function (variables) {\n normalized.variables = variables;\n return _this.fetchQueryByPolicy(queryInfo, normalized, networkStatus);\n };\n this.fetchCancelFns.set(queryId, function (reason) {\n Promise.resolve().then(function () { return concast.cancel(reason); });\n });\n var concast = new Concast(this.transform(normalized.query).hasClientExports\n ? this.localState.addExportedVariables(normalized.query, normalized.variables, normalized.context).then(fromVariables)\n : fromVariables(normalized.variables));\n concast.cleanup(function () {\n _this.fetchCancelFns.delete(queryId);\n if (options.nextFetchPolicy) {\n options.fetchPolicy = options.nextFetchPolicy;\n options.nextFetchPolicy = void 0;\n }\n });\n return concast;\n };\n QueryManager.prototype.fetchQueryByPolicy = function (queryInfo, options, networkStatus) {\n var _this = this;\n var query = options.query, variables = options.variables, fetchPolicy = options.fetchPolicy, errorPolicy = options.errorPolicy, returnPartialData = options.returnPartialData, context = options.context;\n queryInfo.init({\n document: query,\n variables: variables,\n lastRequestId: this.generateRequestId(),\n networkStatus: networkStatus,\n });\n var readCache = function () { return queryInfo.getDiff(variables); };\n var resultsFromCache = function (diff, networkStatus) {\n if (networkStatus === void 0) { networkStatus = queryInfo.networkStatus || NetworkStatus.loading; }\n var data = diff.result;\n if (process.env.NODE_ENV !== 'production' &&\n isNonEmptyArray(diff.missing) &&\n !equal(data, {})) {\n process.env.NODE_ENV === \"production\" || invariant.warn(\"Missing cache result fields: \" + diff.missing.map(function (m) { return m.path.join('.'); }).join(', '), diff.missing);\n }\n var fromData = function (data) { return Observable.of(__assign({ data: data, loading: isNetworkRequestInFlight(networkStatus), networkStatus: networkStatus }, (diff.complete ? null : { partial: true }))); };\n if (_this.transform(query).hasForcedResolvers) {\n return _this.localState.runResolvers({\n document: query,\n remoteResult: { data: data },\n context: context,\n variables: variables,\n onlyRunForcedResolvers: true,\n }).then(function (resolved) { return fromData(resolved.data); });\n }\n return fromData(data);\n };\n var resultsFromLink = function (allowCacheWrite) {\n return _this.getResultsFromLink(queryInfo, allowCacheWrite, {\n variables: variables,\n context: context,\n fetchPolicy: fetchPolicy,\n errorPolicy: errorPolicy,\n });\n };\n switch (fetchPolicy) {\n default:\n case \"cache-first\": {\n var diff = readCache();\n if (diff.complete) {\n return [\n resultsFromCache(diff, queryInfo.markReady()),\n ];\n }\n if (returnPartialData) {\n return [\n resultsFromCache(diff),\n resultsFromLink(true),\n ];\n }\n return [\n resultsFromLink(true),\n ];\n }\n case \"cache-and-network\": {\n var diff = readCache();\n if (diff.complete || returnPartialData) {\n return [\n resultsFromCache(diff),\n resultsFromLink(true),\n ];\n }\n return [\n resultsFromLink(true),\n ];\n }\n case \"cache-only\":\n return [\n resultsFromCache(readCache(), queryInfo.markReady()),\n ];\n case \"network-only\":\n return [resultsFromLink(true)];\n case \"no-cache\":\n return [resultsFromLink(false)];\n case \"standby\":\n return [];\n }\n };\n QueryManager.prototype.getQuery = function (queryId) {\n if (queryId && !this.queries.has(queryId)) {\n this.queries.set(queryId, new QueryInfo(this.cache));\n }\n return this.queries.get(queryId);\n };\n QueryManager.prototype.prepareContext = function (context) {\n if (context === void 0) { context = {}; }\n var newContext = this.localState.prepareContext(context);\n return __assign(__assign({}, newContext), { clientAwareness: this.clientAwareness });\n };\n return QueryManager;\n}());\nexport { QueryManager };\nfunction markMutationResult(mutation, cache) {\n if (!graphQLResultHasError(mutation.result)) {\n var cacheWrites_1 = [{\n result: mutation.result.data,\n dataId: 'ROOT_MUTATION',\n query: mutation.document,\n variables: mutation.variables,\n }];\n var queryUpdatersById_1 = mutation.queryUpdatersById;\n if (queryUpdatersById_1) {\n Object.keys(queryUpdatersById_1).forEach(function (id) {\n var _a = queryUpdatersById_1[id], updater = _a.updater, _b = _a.queryInfo, document = _b.document, variables = _b.variables;\n var _c = cache.diff({\n query: document,\n variables: variables,\n returnPartialData: true,\n optimistic: false,\n }), currentQueryResult = _c.result, complete = _c.complete;\n if (complete && currentQueryResult) {\n var nextQueryResult = updater(currentQueryResult, {\n mutationResult: mutation.result,\n queryName: getOperationName(document) || undefined,\n queryVariables: variables,\n });\n if (nextQueryResult) {\n cacheWrites_1.push({\n result: nextQueryResult,\n dataId: 'ROOT_QUERY',\n query: document,\n variables: variables,\n });\n }\n }\n });\n }\n cache.performTransaction(function (c) {\n cacheWrites_1.forEach(function (write) { return c.write(write); });\n var update = mutation.update;\n if (update) {\n update(c, mutation.result);\n }\n }, null);\n }\n}\n//# sourceMappingURL=QueryManager.js.map","import { __assign } from \"tslib\";\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { ApolloLink, execute } from \"../link/core/index.js\";\nimport { compact } from \"../utilities/index.js\";\nimport { version } from \"../version.js\";\nimport { HttpLink } from \"../link/http/index.js\";\nimport { QueryManager } from \"./QueryManager.js\";\nimport { LocalState, } from \"./LocalState.js\";\nvar hasSuggestedDevtools = false;\nvar ApolloClient = (function () {\n function ApolloClient(options) {\n var _this = this;\n this.defaultOptions = {};\n this.resetStoreCallbacks = [];\n this.clearStoreCallbacks = [];\n var uri = options.uri, credentials = options.credentials, headers = options.headers, cache = options.cache, _a = options.ssrMode, ssrMode = _a === void 0 ? false : _a, _b = options.ssrForceFetchDelay, ssrForceFetchDelay = _b === void 0 ? 0 : _b, connectToDevTools = options.connectToDevTools, _c = options.queryDeduplication, queryDeduplication = _c === void 0 ? true : _c, defaultOptions = options.defaultOptions, _d = options.assumeImmutableResults, assumeImmutableResults = _d === void 0 ? false : _d, resolvers = options.resolvers, typeDefs = options.typeDefs, fragmentMatcher = options.fragmentMatcher, clientAwarenessName = options.name, clientAwarenessVersion = options.version;\n var link = options.link;\n if (!link) {\n link = uri\n ? new HttpLink({ uri: uri, credentials: credentials, headers: headers })\n : ApolloLink.empty();\n }\n if (!cache) {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(9) : new InvariantError(\"To initialize Apollo Client, you must specify a 'cache' property \" +\n \"in the options object. \\n\" +\n \"For more information, please visit: https://go.apollo.dev/c/docs\");\n }\n this.link = link;\n this.cache = cache;\n this.disableNetworkFetches = ssrMode || ssrForceFetchDelay > 0;\n this.queryDeduplication = queryDeduplication;\n this.defaultOptions = defaultOptions || {};\n this.typeDefs = typeDefs;\n if (ssrForceFetchDelay) {\n setTimeout(function () { return (_this.disableNetworkFetches = false); }, ssrForceFetchDelay);\n }\n this.watchQuery = this.watchQuery.bind(this);\n this.query = this.query.bind(this);\n this.mutate = this.mutate.bind(this);\n this.resetStore = this.resetStore.bind(this);\n this.reFetchObservableQueries = this.reFetchObservableQueries.bind(this);\n var defaultConnectToDevTools = process.env.NODE_ENV !== 'production' &&\n typeof window !== 'undefined' &&\n !window.__APOLLO_CLIENT__;\n if (typeof connectToDevTools === 'undefined'\n ? defaultConnectToDevTools\n : connectToDevTools && typeof window !== 'undefined') {\n window.__APOLLO_CLIENT__ = this;\n }\n if (!hasSuggestedDevtools && process.env.NODE_ENV !== 'production') {\n hasSuggestedDevtools = true;\n if (typeof window !== 'undefined' &&\n window.document &&\n window.top === window.self) {\n if (typeof window.__APOLLO_DEVTOOLS_GLOBAL_HOOK__ === 'undefined') {\n if (window.navigator &&\n window.navigator.userAgent &&\n window.navigator.userAgent.indexOf('Chrome') > -1) {\n console.debug('Download the Apollo DevTools ' +\n 'for a better development experience: ' +\n 'https://chrome.google.com/webstore/detail/apollo-client-developer-t/jdkknkkbebbapilgoeccciglkfbmbnfm');\n }\n }\n }\n }\n this.version = version;\n this.localState = new LocalState({\n cache: cache,\n client: this,\n resolvers: resolvers,\n fragmentMatcher: fragmentMatcher,\n });\n this.queryManager = new QueryManager({\n cache: this.cache,\n link: this.link,\n queryDeduplication: queryDeduplication,\n ssrMode: ssrMode,\n clientAwareness: {\n name: clientAwarenessName,\n version: clientAwarenessVersion,\n },\n localState: this.localState,\n assumeImmutableResults: assumeImmutableResults,\n onBroadcast: function () {\n if (_this.devToolsHookCb) {\n _this.devToolsHookCb({\n action: {},\n state: {\n queries: _this.queryManager.getQueryStore(),\n mutations: _this.queryManager.mutationStore.getStore(),\n },\n dataWithOptimisticResults: _this.cache.extract(true),\n });\n }\n },\n });\n }\n ApolloClient.prototype.stop = function () {\n this.queryManager.stop();\n };\n ApolloClient.prototype.watchQuery = function (options) {\n if (this.defaultOptions.watchQuery) {\n options = compact(this.defaultOptions.watchQuery, options);\n }\n if (this.disableNetworkFetches &&\n (options.fetchPolicy === 'network-only' ||\n options.fetchPolicy === 'cache-and-network')) {\n options = __assign(__assign({}, options), { fetchPolicy: 'cache-first' });\n }\n return this.queryManager.watchQuery(options);\n };\n ApolloClient.prototype.query = function (options) {\n if (this.defaultOptions.query) {\n options = compact(this.defaultOptions.query, options);\n }\n process.env.NODE_ENV === \"production\" ? invariant(options.fetchPolicy !== 'cache-and-network', 10) : invariant(options.fetchPolicy !== 'cache-and-network', 'The cache-and-network fetchPolicy does not work with client.query, because ' +\n 'client.query can only return a single result. Please use client.watchQuery ' +\n 'to receive multiple results from the cache and the network, or consider ' +\n 'using a different fetchPolicy, such as cache-first or network-only.');\n if (this.disableNetworkFetches && options.fetchPolicy === 'network-only') {\n options = __assign(__assign({}, options), { fetchPolicy: 'cache-first' });\n }\n return this.queryManager.query(options);\n };\n ApolloClient.prototype.mutate = function (options) {\n if (this.defaultOptions.mutate) {\n options = compact(this.defaultOptions.mutate, options);\n }\n return this.queryManager.mutate(options);\n };\n ApolloClient.prototype.subscribe = function (options) {\n return this.queryManager.startGraphQLSubscription(options);\n };\n ApolloClient.prototype.readQuery = function (options, optimistic) {\n if (optimistic === void 0) { optimistic = false; }\n return this.cache.readQuery(options, optimistic);\n };\n ApolloClient.prototype.readFragment = function (options, optimistic) {\n if (optimistic === void 0) { optimistic = false; }\n return this.cache.readFragment(options, optimistic);\n };\n ApolloClient.prototype.writeQuery = function (options) {\n this.cache.writeQuery(options);\n this.queryManager.broadcastQueries();\n };\n ApolloClient.prototype.writeFragment = function (options) {\n this.cache.writeFragment(options);\n this.queryManager.broadcastQueries();\n };\n ApolloClient.prototype.__actionHookForDevTools = function (cb) {\n this.devToolsHookCb = cb;\n };\n ApolloClient.prototype.__requestRaw = function (payload) {\n return execute(this.link, payload);\n };\n ApolloClient.prototype.resetStore = function () {\n var _this = this;\n return Promise.resolve()\n .then(function () { return _this.queryManager.clearStore(); })\n .then(function () { return Promise.all(_this.resetStoreCallbacks.map(function (fn) { return fn(); })); })\n .then(function () { return _this.reFetchObservableQueries(); });\n };\n ApolloClient.prototype.clearStore = function () {\n var _this = this;\n return Promise.resolve()\n .then(function () { return _this.queryManager.clearStore(); })\n .then(function () { return Promise.all(_this.clearStoreCallbacks.map(function (fn) { return fn(); })); });\n };\n ApolloClient.prototype.onResetStore = function (cb) {\n var _this = this;\n this.resetStoreCallbacks.push(cb);\n return function () {\n _this.resetStoreCallbacks = _this.resetStoreCallbacks.filter(function (c) { return c !== cb; });\n };\n };\n ApolloClient.prototype.onClearStore = function (cb) {\n var _this = this;\n this.clearStoreCallbacks.push(cb);\n return function () {\n _this.clearStoreCallbacks = _this.clearStoreCallbacks.filter(function (c) { return c !== cb; });\n };\n };\n ApolloClient.prototype.reFetchObservableQueries = function (includeStandby) {\n return this.queryManager.reFetchObservableQueries(includeStandby);\n };\n ApolloClient.prototype.extract = function (optimistic) {\n return this.cache.extract(optimistic);\n };\n ApolloClient.prototype.restore = function (serializedState) {\n return this.cache.restore(serializedState);\n };\n ApolloClient.prototype.addResolvers = function (resolvers) {\n this.localState.addResolvers(resolvers);\n };\n ApolloClient.prototype.setResolvers = function (resolvers) {\n this.localState.setResolvers(resolvers);\n };\n ApolloClient.prototype.getResolvers = function () {\n return this.localState.getResolvers();\n };\n ApolloClient.prototype.setLocalStateFragmentMatcher = function (fragmentMatcher) {\n this.localState.setFragmentMatcher(fragmentMatcher);\n };\n ApolloClient.prototype.setLink = function (newLink) {\n this.link = this.queryManager.link = newLink;\n };\n return ApolloClient;\n}());\nexport { ApolloClient };\n//# sourceMappingURL=ApolloClient.js.map","export var version = 'local';\n//# sourceMappingURL=version.js.map","import { __assign, __extends } from \"tslib\";\nimport { dep, KeyTrie } from 'optimism';\nimport { equal } from '@wry/equality';\nimport { isReference, makeReference, DeepMerger, maybeDeepFreeze, canUseWeakMap, } from \"../../utilities/index.js\";\nimport { hasOwn, fieldNameFromStoreName } from \"./helpers.js\";\nvar DELETE = Object.create(null);\nvar delModifier = function () { return DELETE; };\nvar EntityStore = (function () {\n function EntityStore(policies, group) {\n var _this = this;\n this.policies = policies;\n this.group = group;\n this.data = Object.create(null);\n this.rootIds = Object.create(null);\n this.refs = Object.create(null);\n this.getFieldValue = function (objectOrReference, storeFieldName) { return maybeDeepFreeze(isReference(objectOrReference)\n ? _this.get(objectOrReference.__ref, storeFieldName)\n : objectOrReference && objectOrReference[storeFieldName]); };\n this.canRead = function (objOrRef) {\n return isReference(objOrRef)\n ? _this.has(objOrRef.__ref)\n : typeof objOrRef === \"object\";\n };\n this.toReference = function (objOrIdOrRef, mergeIntoStore) {\n if (typeof objOrIdOrRef === \"string\") {\n return makeReference(objOrIdOrRef);\n }\n if (isReference(objOrIdOrRef)) {\n return objOrIdOrRef;\n }\n var id = _this.policies.identify(objOrIdOrRef)[0];\n if (id) {\n var ref = makeReference(id);\n if (mergeIntoStore) {\n _this.merge(id, objOrIdOrRef);\n }\n return ref;\n }\n };\n }\n EntityStore.prototype.toObject = function () {\n return __assign({}, this.data);\n };\n EntityStore.prototype.has = function (dataId) {\n return this.lookup(dataId, true) !== void 0;\n };\n EntityStore.prototype.get = function (dataId, fieldName) {\n this.group.depend(dataId, fieldName);\n if (hasOwn.call(this.data, dataId)) {\n var storeObject = this.data[dataId];\n if (storeObject && hasOwn.call(storeObject, fieldName)) {\n return storeObject[fieldName];\n }\n }\n if (fieldName === \"__typename\" &&\n hasOwn.call(this.policies.rootTypenamesById, dataId)) {\n return this.policies.rootTypenamesById[dataId];\n }\n if (this instanceof Layer) {\n return this.parent.get(dataId, fieldName);\n }\n };\n EntityStore.prototype.lookup = function (dataId, dependOnExistence) {\n if (dependOnExistence)\n this.group.depend(dataId, \"__exists\");\n return hasOwn.call(this.data, dataId) ? this.data[dataId] :\n this instanceof Layer ? this.parent.lookup(dataId, dependOnExistence) : void 0;\n };\n EntityStore.prototype.merge = function (dataId, incoming) {\n var _this = this;\n var existing = this.lookup(dataId);\n var merged = new DeepMerger(storeObjectReconciler).merge(existing, incoming);\n this.data[dataId] = merged;\n if (merged !== existing) {\n delete this.refs[dataId];\n if (this.group.caching) {\n var fieldsToDirty_1 = Object.create(null);\n if (!existing)\n fieldsToDirty_1.__exists = 1;\n Object.keys(incoming).forEach(function (storeFieldName) {\n if (!existing || existing[storeFieldName] !== merged[storeFieldName]) {\n fieldsToDirty_1[fieldNameFromStoreName(storeFieldName)] = 1;\n if (merged[storeFieldName] === void 0 && !(_this instanceof Layer)) {\n delete merged[storeFieldName];\n }\n }\n });\n Object.keys(fieldsToDirty_1).forEach(function (fieldName) { return _this.group.dirty(dataId, fieldName); });\n }\n }\n };\n EntityStore.prototype.modify = function (dataId, fields) {\n var _this = this;\n var storeObject = this.lookup(dataId);\n if (storeObject) {\n var changedFields_1 = Object.create(null);\n var needToMerge_1 = false;\n var allDeleted_1 = true;\n var readField_1 = function (fieldNameOrOptions, from) { return _this.policies.readField(typeof fieldNameOrOptions === \"string\" ? {\n fieldName: fieldNameOrOptions,\n from: from || makeReference(dataId),\n } : fieldNameOrOptions, { store: _this }); };\n Object.keys(storeObject).forEach(function (storeFieldName) {\n var fieldName = fieldNameFromStoreName(storeFieldName);\n var fieldValue = storeObject[storeFieldName];\n if (fieldValue === void 0)\n return;\n var modify = typeof fields === \"function\"\n ? fields\n : fields[storeFieldName] || fields[fieldName];\n if (modify) {\n var newValue = modify === delModifier ? DELETE :\n modify(maybeDeepFreeze(fieldValue), {\n DELETE: DELETE,\n fieldName: fieldName,\n storeFieldName: storeFieldName,\n isReference: isReference,\n toReference: _this.toReference,\n canRead: _this.canRead,\n readField: readField_1,\n });\n if (newValue === DELETE)\n newValue = void 0;\n if (newValue !== fieldValue) {\n changedFields_1[storeFieldName] = newValue;\n needToMerge_1 = true;\n fieldValue = newValue;\n }\n }\n if (fieldValue !== void 0) {\n allDeleted_1 = false;\n }\n });\n if (needToMerge_1) {\n this.merge(dataId, changedFields_1);\n if (allDeleted_1) {\n if (this instanceof Layer) {\n this.data[dataId] = void 0;\n }\n else {\n delete this.data[dataId];\n }\n this.group.dirty(dataId, \"__exists\");\n }\n return true;\n }\n }\n return false;\n };\n EntityStore.prototype.delete = function (dataId, fieldName, args) {\n var _a;\n var storeObject = this.lookup(dataId);\n if (storeObject) {\n var typename = this.getFieldValue(storeObject, \"__typename\");\n var storeFieldName = fieldName && args\n ? this.policies.getStoreFieldName({ typename: typename, fieldName: fieldName, args: args })\n : fieldName;\n return this.modify(dataId, storeFieldName ? (_a = {},\n _a[storeFieldName] = delModifier,\n _a) : delModifier);\n }\n return false;\n };\n EntityStore.prototype.evict = function (options) {\n var evicted = false;\n if (options.id) {\n if (hasOwn.call(this.data, options.id)) {\n evicted = this.delete(options.id, options.fieldName, options.args);\n }\n if (this instanceof Layer) {\n evicted = this.parent.evict(options) || evicted;\n }\n if (options.fieldName || evicted) {\n this.group.dirty(options.id, options.fieldName || \"__exists\");\n }\n }\n return evicted;\n };\n EntityStore.prototype.clear = function () {\n this.replace(null);\n };\n EntityStore.prototype.replace = function (newData) {\n var _this = this;\n Object.keys(this.data).forEach(function (dataId) {\n if (!(newData && hasOwn.call(newData, dataId))) {\n _this.delete(dataId);\n }\n });\n if (newData) {\n Object.keys(newData).forEach(function (dataId) {\n _this.merge(dataId, newData[dataId]);\n });\n }\n };\n EntityStore.prototype.retain = function (rootId) {\n return this.rootIds[rootId] = (this.rootIds[rootId] || 0) + 1;\n };\n EntityStore.prototype.release = function (rootId) {\n if (this.rootIds[rootId] > 0) {\n var count = --this.rootIds[rootId];\n if (!count)\n delete this.rootIds[rootId];\n return count;\n }\n return 0;\n };\n EntityStore.prototype.getRootIdSet = function (ids) {\n if (ids === void 0) { ids = new Set(); }\n Object.keys(this.rootIds).forEach(ids.add, ids);\n if (this instanceof Layer) {\n this.parent.getRootIdSet(ids);\n }\n return ids;\n };\n EntityStore.prototype.gc = function () {\n var _this = this;\n var ids = this.getRootIdSet();\n var snapshot = this.toObject();\n ids.forEach(function (id) {\n if (hasOwn.call(snapshot, id)) {\n Object.keys(_this.findChildRefIds(id)).forEach(ids.add, ids);\n delete snapshot[id];\n }\n });\n var idsToRemove = Object.keys(snapshot);\n if (idsToRemove.length) {\n var root_1 = this;\n while (root_1 instanceof Layer)\n root_1 = root_1.parent;\n idsToRemove.forEach(function (id) { return root_1.delete(id); });\n }\n return idsToRemove;\n };\n EntityStore.prototype.findChildRefIds = function (dataId) {\n if (!hasOwn.call(this.refs, dataId)) {\n var found_1 = this.refs[dataId] = Object.create(null);\n var workSet_1 = new Set([this.data[dataId]]);\n var canTraverse_1 = function (obj) { return obj !== null && typeof obj === 'object'; };\n workSet_1.forEach(function (obj) {\n if (isReference(obj)) {\n found_1[obj.__ref] = true;\n }\n else if (canTraverse_1(obj)) {\n Object.values(obj)\n .filter(canTraverse_1)\n .forEach(workSet_1.add, workSet_1);\n }\n });\n }\n return this.refs[dataId];\n };\n EntityStore.prototype.makeCacheKey = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return this.group.keyMaker.lookupArray(args);\n };\n return EntityStore;\n}());\nexport { EntityStore };\nvar CacheGroup = (function () {\n function CacheGroup(caching) {\n this.caching = caching;\n this.d = null;\n this.keyMaker = new KeyTrie(canUseWeakMap);\n this.d = caching ? dep() : null;\n }\n CacheGroup.prototype.depend = function (dataId, storeFieldName) {\n if (this.d) {\n this.d(makeDepKey(dataId, storeFieldName));\n }\n };\n CacheGroup.prototype.dirty = function (dataId, storeFieldName) {\n if (this.d) {\n this.d.dirty(makeDepKey(dataId, storeFieldName));\n }\n };\n return CacheGroup;\n}());\nfunction makeDepKey(dataId, storeFieldName) {\n return fieldNameFromStoreName(storeFieldName) + '#' + dataId;\n}\n(function (EntityStore) {\n var Root = (function (_super) {\n __extends(Root, _super);\n function Root(_a) {\n var policies = _a.policies, _b = _a.resultCaching, resultCaching = _b === void 0 ? true : _b, seed = _a.seed;\n var _this = _super.call(this, policies, new CacheGroup(resultCaching)) || this;\n _this.sharedLayerGroup = new CacheGroup(resultCaching);\n if (seed)\n _this.replace(seed);\n return _this;\n }\n Root.prototype.addLayer = function (layerId, replay) {\n return new Layer(layerId, this, replay, this.sharedLayerGroup);\n };\n Root.prototype.removeLayer = function () {\n return this;\n };\n return Root;\n }(EntityStore));\n EntityStore.Root = Root;\n})(EntityStore || (EntityStore = {}));\nvar Layer = (function (_super) {\n __extends(Layer, _super);\n function Layer(id, parent, replay, group) {\n var _this = _super.call(this, parent.policies, group) || this;\n _this.id = id;\n _this.parent = parent;\n _this.replay = replay;\n _this.group = group;\n replay(_this);\n return _this;\n }\n Layer.prototype.addLayer = function (layerId, replay) {\n return new Layer(layerId, this, replay, this.group);\n };\n Layer.prototype.removeLayer = function (layerId) {\n var _this = this;\n var parent = this.parent.removeLayer(layerId);\n if (layerId === this.id) {\n if (this.group.caching) {\n Object.keys(this.data).forEach(function (dataId) {\n if (_this.data[dataId] !== parent.lookup(dataId)) {\n _this.delete(dataId);\n }\n });\n }\n return parent;\n }\n if (parent === this.parent)\n return this;\n return parent.addLayer(this.id, this.replay);\n };\n Layer.prototype.toObject = function () {\n return __assign(__assign({}, this.parent.toObject()), this.data);\n };\n Layer.prototype.findChildRefIds = function (dataId) {\n var fromParent = this.parent.findChildRefIds(dataId);\n return hasOwn.call(this.data, dataId) ? __assign(__assign({}, fromParent), _super.prototype.findChildRefIds.call(this, dataId)) : fromParent;\n };\n return Layer;\n}(EntityStore));\nfunction storeObjectReconciler(existingObject, incomingObject, property) {\n var existingValue = existingObject[property];\n var incomingValue = incomingObject[property];\n return equal(existingValue, incomingValue) ? existingValue : incomingValue;\n}\nexport function supportsResultCaching(store) {\n return !!(store instanceof EntityStore && store.group.caching);\n}\n//# sourceMappingURL=entityStore.js.map","import { __assign } from \"tslib\";\nimport { wrap } from 'optimism';\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { isField, isInlineFragment, resultKeyNameFromField, isReference, makeReference, createFragmentMap, shouldInclude, addTypenameToDocument, getDefaultValues, getFragmentDefinitions, getMainDefinition, getQueryDefinition, maybeDeepFreeze, mergeDeepArray, } from \"../../utilities/index.js\";\nimport { supportsResultCaching } from \"./entityStore.js\";\nimport { getTypenameFromStoreObject } from \"./helpers.js\";\nimport { MissingFieldError } from \"../core/types/common.js\";\n;\nfunction missingFromInvariant(err, context) {\n return new MissingFieldError(err.message, context.path.slice(), context.query, context.variables);\n}\nvar StoreReader = (function () {\n function StoreReader(config) {\n var _this = this;\n this.config = config;\n this.executeSelectionSet = wrap(function (options) { return _this.execSelectionSetImpl(options); }, {\n keyArgs: function (options) {\n return [\n options.selectionSet,\n options.objectOrReference,\n options.context,\n ];\n },\n makeCacheKey: function (selectionSet, parent, context) {\n if (supportsResultCaching(context.store)) {\n return context.store.makeCacheKey(selectionSet, isReference(parent) ? parent.__ref : parent, context.varString);\n }\n }\n });\n this.knownResults = new WeakMap();\n this.executeSubSelectedArray = wrap(function (options) {\n return _this.execSubSelectedArrayImpl(options);\n }, {\n makeCacheKey: function (_a) {\n var field = _a.field, array = _a.array, context = _a.context;\n if (supportsResultCaching(context.store)) {\n return context.store.makeCacheKey(field, array, context.varString);\n }\n }\n });\n this.config = __assign({ addTypename: true }, config);\n }\n StoreReader.prototype.readQueryFromStore = function (options) {\n return this.diffQueryAgainstStore(__assign(__assign({}, options), { returnPartialData: false })).result;\n };\n StoreReader.prototype.diffQueryAgainstStore = function (_a) {\n var store = _a.store, query = _a.query, _b = _a.rootId, rootId = _b === void 0 ? 'ROOT_QUERY' : _b, variables = _a.variables, _c = _a.returnPartialData, returnPartialData = _c === void 0 ? true : _c;\n var policies = this.config.cache.policies;\n variables = __assign(__assign({}, getDefaultValues(getQueryDefinition(query))), variables);\n var execResult = this.executeSelectionSet({\n selectionSet: getMainDefinition(query).selectionSet,\n objectOrReference: makeReference(rootId),\n context: {\n store: store,\n query: query,\n policies: policies,\n variables: variables,\n varString: JSON.stringify(variables),\n fragmentMap: createFragmentMap(getFragmentDefinitions(query)),\n path: [],\n },\n });\n var hasMissingFields = execResult.missing && execResult.missing.length > 0;\n if (hasMissingFields && !returnPartialData) {\n throw execResult.missing[0];\n }\n return {\n result: execResult.result,\n missing: execResult.missing,\n complete: !hasMissingFields,\n };\n };\n StoreReader.prototype.isFresh = function (result, parent, selectionSet, context) {\n if (supportsResultCaching(context.store) &&\n this.knownResults.get(result) === selectionSet) {\n var latest = this.executeSelectionSet.peek(selectionSet, parent, context);\n if (latest && result === latest.result) {\n return true;\n }\n }\n return false;\n };\n StoreReader.prototype.execSelectionSetImpl = function (_a) {\n var _this = this;\n var selectionSet = _a.selectionSet, objectOrReference = _a.objectOrReference, context = _a.context;\n if (isReference(objectOrReference) &&\n !context.policies.rootTypenamesById[objectOrReference.__ref] &&\n !context.store.has(objectOrReference.__ref)) {\n return {\n result: {},\n missing: [missingFromInvariant(process.env.NODE_ENV === \"production\" ? new InvariantError(4) : new InvariantError(\"Dangling reference to missing \" + objectOrReference.__ref + \" object\"), context)],\n };\n }\n var fragmentMap = context.fragmentMap, variables = context.variables, policies = context.policies, store = context.store;\n var objectsToMerge = [];\n var finalResult = { result: null };\n var typename = store.getFieldValue(objectOrReference, \"__typename\");\n if (this.config.addTypename &&\n typeof typename === \"string\" &&\n !policies.rootIdsByTypename[typename]) {\n objectsToMerge.push({ __typename: typename });\n }\n function getMissing() {\n return finalResult.missing || (finalResult.missing = []);\n }\n function handleMissing(result) {\n var _a;\n if (result.missing)\n (_a = getMissing()).push.apply(_a, result.missing);\n return result.result;\n }\n var workSet = new Set(selectionSet.selections);\n workSet.forEach(function (selection) {\n var _a;\n if (!shouldInclude(selection, variables))\n return;\n if (isField(selection)) {\n var fieldValue = policies.readField({\n fieldName: selection.name.value,\n field: selection,\n variables: context.variables,\n from: objectOrReference,\n }, context);\n var resultName = resultKeyNameFromField(selection);\n context.path.push(resultName);\n if (fieldValue === void 0) {\n if (!addTypenameToDocument.added(selection)) {\n getMissing().push(missingFromInvariant(process.env.NODE_ENV === \"production\" ? new InvariantError(5) : new InvariantError(\"Can't find field '\" + selection.name.value + \"' on \" + (isReference(objectOrReference)\n ? objectOrReference.__ref + \" object\"\n : \"object \" + JSON.stringify(objectOrReference, null, 2))), context));\n }\n }\n else if (Array.isArray(fieldValue)) {\n fieldValue = handleMissing(_this.executeSubSelectedArray({\n field: selection,\n array: fieldValue,\n context: context,\n }));\n }\n else if (!selection.selectionSet) {\n if (process.env.NODE_ENV !== 'production') {\n assertSelectionSetForIdValue(context.store, selection, fieldValue);\n maybeDeepFreeze(fieldValue);\n }\n }\n else if (fieldValue != null) {\n fieldValue = handleMissing(_this.executeSelectionSet({\n selectionSet: selection.selectionSet,\n objectOrReference: fieldValue,\n context: context,\n }));\n }\n if (fieldValue !== void 0) {\n objectsToMerge.push((_a = {}, _a[resultName] = fieldValue, _a));\n }\n invariant(context.path.pop() === resultName);\n }\n else {\n var fragment = void 0;\n if (isInlineFragment(selection)) {\n fragment = selection;\n }\n else {\n process.env.NODE_ENV === \"production\" ? invariant(fragment = fragmentMap[selection.name.value], 6) : invariant(fragment = fragmentMap[selection.name.value], \"No fragment named \" + selection.name.value);\n }\n if (policies.fragmentMatches(fragment, typename)) {\n fragment.selectionSet.selections.forEach(workSet.add, workSet);\n }\n }\n });\n finalResult.result = mergeDeepArray(objectsToMerge);\n if (process.env.NODE_ENV !== 'production') {\n Object.freeze(finalResult.result);\n }\n this.knownResults.set(finalResult.result, selectionSet);\n return finalResult;\n };\n StoreReader.prototype.execSubSelectedArrayImpl = function (_a) {\n var _this = this;\n var field = _a.field, array = _a.array, context = _a.context;\n var missing;\n function handleMissing(childResult, i) {\n if (childResult.missing) {\n missing = missing || [];\n missing.push.apply(missing, childResult.missing);\n }\n invariant(context.path.pop() === i);\n return childResult.result;\n }\n if (field.selectionSet) {\n array = array.filter(context.store.canRead);\n }\n array = array.map(function (item, i) {\n if (item === null) {\n return null;\n }\n context.path.push(i);\n if (Array.isArray(item)) {\n return handleMissing(_this.executeSubSelectedArray({\n field: field,\n array: item,\n context: context,\n }), i);\n }\n if (field.selectionSet) {\n return handleMissing(_this.executeSelectionSet({\n selectionSet: field.selectionSet,\n objectOrReference: item,\n context: context,\n }), i);\n }\n if (process.env.NODE_ENV !== 'production') {\n assertSelectionSetForIdValue(context.store, field, item);\n }\n invariant(context.path.pop() === i);\n return item;\n });\n if (process.env.NODE_ENV !== 'production') {\n Object.freeze(array);\n }\n return { result: array, missing: missing };\n };\n return StoreReader;\n}());\nexport { StoreReader };\nfunction assertSelectionSetForIdValue(store, field, fieldValue) {\n if (!field.selectionSet) {\n var workSet_1 = new Set([fieldValue]);\n workSet_1.forEach(function (value) {\n if (value && typeof value === \"object\") {\n process.env.NODE_ENV === \"production\" ? invariant(!isReference(value), 7) : invariant(!isReference(value), \"Missing selection set for object of type \" + getTypenameFromStoreObject(store, value) + \" returned for query field \" + field.name.value);\n Object.values(value).forEach(workSet_1.add, workSet_1);\n }\n });\n }\n}\n//# sourceMappingURL=readFromStore.js.map","import { __assign } from \"tslib\";\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { equal } from '@wry/equality';\nimport { createFragmentMap, getFragmentFromSelection, getDefaultValues, getFragmentDefinitions, getOperationDefinition, getTypenameFromResult, makeReference, isField, resultKeyNameFromField, isReference, shouldInclude, hasDirectives, cloneDeep, } from \"../../utilities/index.js\";\nimport { makeProcessedFieldsMerger, fieldNameFromStoreName } from \"./helpers.js\";\n;\nvar StoreWriter = (function () {\n function StoreWriter(cache, reader) {\n this.cache = cache;\n this.reader = reader;\n }\n StoreWriter.prototype.writeToStore = function (_a) {\n var query = _a.query, result = _a.result, dataId = _a.dataId, store = _a.store, variables = _a.variables;\n var operationDefinition = getOperationDefinition(query);\n var merger = makeProcessedFieldsMerger();\n variables = __assign(__assign({}, getDefaultValues(operationDefinition)), variables);\n var objOrRef = this.processSelectionSet({\n result: result || Object.create(null),\n dataId: dataId,\n selectionSet: operationDefinition.selectionSet,\n context: {\n store: store,\n written: Object.create(null),\n merge: function (existing, incoming) {\n return merger.merge(existing, incoming);\n },\n variables: variables,\n varString: JSON.stringify(variables),\n fragmentMap: createFragmentMap(getFragmentDefinitions(query)),\n },\n });\n var ref = isReference(objOrRef) ? objOrRef :\n dataId && makeReference(dataId) || void 0;\n if (ref) {\n store.retain(ref.__ref);\n }\n return ref;\n };\n StoreWriter.prototype.processSelectionSet = function (_a) {\n var _this = this;\n var dataId = _a.dataId, result = _a.result, selectionSet = _a.selectionSet, context = _a.context, _b = _a.out, out = _b === void 0 ? {\n shouldApplyMerges: false,\n } : _b;\n var policies = this.cache.policies;\n var _c = policies.identify(result, selectionSet, context.fragmentMap), id = _c[0], keyObject = _c[1];\n dataId = dataId || id;\n if (\"string\" === typeof dataId) {\n var sets = context.written[dataId] || (context.written[dataId] = []);\n var ref = makeReference(dataId);\n if (sets.indexOf(selectionSet) >= 0)\n return ref;\n sets.push(selectionSet);\n if (this.reader && this.reader.isFresh(result, ref, selectionSet, context)) {\n return ref;\n }\n }\n var mergedFields = Object.create(null);\n if (keyObject) {\n mergedFields = context.merge(mergedFields, keyObject);\n }\n var typename = (dataId && policies.rootTypenamesById[dataId]) ||\n getTypenameFromResult(result, selectionSet, context.fragmentMap) ||\n (dataId && context.store.get(dataId, \"__typename\"));\n if (\"string\" === typeof typename) {\n mergedFields.__typename = typename;\n }\n var workSet = new Set(selectionSet.selections);\n workSet.forEach(function (selection) {\n var _a;\n if (!shouldInclude(selection, context.variables))\n return;\n if (isField(selection)) {\n var resultFieldKey = resultKeyNameFromField(selection);\n var value = result[resultFieldKey];\n if (typeof value !== 'undefined') {\n var storeFieldName = policies.getStoreFieldName({\n typename: typename,\n fieldName: selection.name.value,\n field: selection,\n variables: context.variables,\n });\n var incomingValue = _this.processFieldValue(value, selection, context, out);\n if (policies.hasMergeFunction(typename, selection.name.value)) {\n incomingValue = {\n __field: selection,\n __typename: typename,\n __value: incomingValue,\n };\n out.shouldApplyMerges = true;\n }\n mergedFields = context.merge(mergedFields, (_a = {},\n _a[storeFieldName] = incomingValue,\n _a));\n }\n else if (policies.usingPossibleTypes &&\n !hasDirectives([\"defer\", \"client\"], selection)) {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(8) : new InvariantError(\"Missing field '\" + resultFieldKey + \"' in \" + JSON.stringify(result, null, 2).substring(0, 100));\n }\n }\n else {\n var fragment = getFragmentFromSelection(selection, context.fragmentMap);\n if (fragment && policies.fragmentMatches(fragment, typename)) {\n fragment.selectionSet.selections.forEach(workSet.add, workSet);\n }\n }\n });\n if (\"string\" === typeof dataId) {\n var entityRef_1 = makeReference(dataId);\n if (out.shouldApplyMerges) {\n mergedFields = policies.applyMerges(entityRef_1, mergedFields, context);\n }\n if (process.env.NODE_ENV !== \"production\") {\n Object.keys(mergedFields).forEach(function (storeFieldName) {\n var fieldName = fieldNameFromStoreName(storeFieldName);\n if (!policies.hasMergeFunction(typename, fieldName)) {\n warnAboutDataLoss(entityRef_1, mergedFields, storeFieldName, context.store);\n }\n });\n }\n context.store.merge(dataId, mergedFields);\n return entityRef_1;\n }\n return mergedFields;\n };\n StoreWriter.prototype.processFieldValue = function (value, field, context, out) {\n var _this = this;\n if (!field.selectionSet || value === null) {\n return process.env.NODE_ENV === 'production' ? value : cloneDeep(value);\n }\n if (Array.isArray(value)) {\n return value.map(function (item) { return _this.processFieldValue(item, field, context, out); });\n }\n return this.processSelectionSet({\n result: value,\n selectionSet: field.selectionSet,\n context: context,\n out: out,\n });\n };\n return StoreWriter;\n}());\nexport { StoreWriter };\nvar warnings = new Set();\nfunction warnAboutDataLoss(existingRef, incomingObj, storeFieldName, store) {\n var getChild = function (objOrRef) {\n var child = store.getFieldValue(objOrRef, storeFieldName);\n return typeof child === \"object\" && child;\n };\n var existing = getChild(existingRef);\n if (!existing)\n return;\n var incoming = getChild(incomingObj);\n if (!incoming)\n return;\n if (isReference(existing))\n return;\n if (equal(existing, incoming))\n return;\n if (Object.keys(existing).every(function (key) { return store.getFieldValue(incoming, key) !== void 0; })) {\n return;\n }\n var parentType = store.getFieldValue(existingRef, \"__typename\") ||\n store.getFieldValue(incomingObj, \"__typename\");\n var fieldName = fieldNameFromStoreName(storeFieldName);\n var typeDotName = parentType + \".\" + fieldName;\n if (warnings.has(typeDotName))\n return;\n warnings.add(typeDotName);\n var childTypenames = [];\n if (!Array.isArray(existing) &&\n !Array.isArray(incoming)) {\n [existing, incoming].forEach(function (child) {\n var typename = store.getFieldValue(child, \"__typename\");\n if (typeof typename === \"string\" &&\n !childTypenames.includes(typename)) {\n childTypenames.push(typename);\n }\n });\n }\n process.env.NODE_ENV === \"production\" || invariant.warn(\"Cache data may be lost when replacing the \" + fieldName + \" field of a \" + parentType + \" object.\\n\\nTo address this problem (which is not a bug in Apollo Client), \" + (childTypenames.length\n ? \"either ensure all objects of type \" +\n childTypenames.join(\" and \") + \" have IDs, or \"\n : \"\") + \"define a custom merge function for the \" + typeDotName + \" field, so InMemoryCache can safely merge these objects:\\n\\n existing: \" + JSON.stringify(existing).slice(0, 1000) + \"\\n incoming: \" + JSON.stringify(incoming).slice(0, 1000) + \"\\n\\nFor more information about these options, please refer to the documentation:\\n\\n * Ensuring entity objects have IDs: https://go.apollo.dev/c/generating-unique-identifiers\\n * Defining custom merge functions: https://go.apollo.dev/c/merging-non-normalized-objects\\n\");\n}\n//# sourceMappingURL=writeToStore.js.map","import { __assign, __extends } from \"tslib\";\nimport \"./fixPolyfills.js\";\nimport { dep, wrap } from 'optimism';\nimport { ApolloCache } from \"../core/cache.js\";\nimport { addTypenameToDocument, isReference, } from \"../../utilities/index.js\";\nimport { StoreReader } from \"./readFromStore.js\";\nimport { StoreWriter } from \"./writeToStore.js\";\nimport { EntityStore, supportsResultCaching } from \"./entityStore.js\";\nimport { makeVar } from \"./reactiveVars.js\";\nimport { defaultDataIdFromObject, Policies, } from \"./policies.js\";\nimport { hasOwn } from \"./helpers.js\";\nvar defaultConfig = {\n dataIdFromObject: defaultDataIdFromObject,\n addTypename: true,\n resultCaching: true,\n typePolicies: {},\n};\nvar InMemoryCache = (function (_super) {\n __extends(InMemoryCache, _super);\n function InMemoryCache(config) {\n if (config === void 0) { config = {}; }\n var _this = _super.call(this) || this;\n _this.watches = new Set();\n _this.typenameDocumentCache = new Map();\n _this.makeVar = makeVar;\n _this.txCount = 0;\n _this.maybeBroadcastWatch = wrap(function (c) {\n return _this.broadcastWatch.call(_this, c);\n }, {\n makeCacheKey: function (c) {\n var store = c.optimistic ? _this.optimisticData : _this.data;\n if (supportsResultCaching(store)) {\n var optimistic = c.optimistic, rootId = c.rootId, variables = c.variables;\n return store.makeCacheKey(c.query, c.callback, JSON.stringify({ optimistic: optimistic, rootId: rootId, variables: variables }));\n }\n }\n });\n _this.watchDep = dep();\n _this.config = __assign(__assign({}, defaultConfig), config);\n _this.addTypename = !!_this.config.addTypename;\n _this.policies = new Policies({\n cache: _this,\n dataIdFromObject: _this.config.dataIdFromObject,\n possibleTypes: _this.config.possibleTypes,\n typePolicies: _this.config.typePolicies,\n });\n _this.data = new EntityStore.Root({\n policies: _this.policies,\n resultCaching: _this.config.resultCaching,\n });\n _this.optimisticData = _this.data;\n _this.storeWriter = new StoreWriter(_this, _this.storeReader = new StoreReader({\n cache: _this,\n addTypename: _this.addTypename,\n }));\n return _this;\n }\n InMemoryCache.prototype.restore = function (data) {\n if (data)\n this.data.replace(data);\n return this;\n };\n InMemoryCache.prototype.extract = function (optimistic) {\n if (optimistic === void 0) { optimistic = false; }\n return (optimistic ? this.optimisticData : this.data).toObject();\n };\n InMemoryCache.prototype.read = function (options) {\n var store = options.optimistic ? this.optimisticData : this.data;\n if (typeof options.rootId === 'string' && !store.has(options.rootId)) {\n return null;\n }\n return this.storeReader.readQueryFromStore({\n store: store,\n query: options.query,\n variables: options.variables,\n rootId: options.rootId,\n config: this.config,\n }) || null;\n };\n InMemoryCache.prototype.write = function (options) {\n try {\n ++this.txCount;\n return this.storeWriter.writeToStore({\n store: this.data,\n query: options.query,\n result: options.result,\n dataId: options.dataId,\n variables: options.variables,\n });\n }\n finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n };\n InMemoryCache.prototype.modify = function (options) {\n if (hasOwn.call(options, \"id\") && !options.id) {\n return false;\n }\n var store = options.optimistic\n ? this.optimisticData\n : this.data;\n try {\n ++this.txCount;\n return store.modify(options.id || \"ROOT_QUERY\", options.fields);\n }\n finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n };\n InMemoryCache.prototype.diff = function (options) {\n return this.storeReader.diffQueryAgainstStore({\n store: options.optimistic ? this.optimisticData : this.data,\n rootId: options.id || \"ROOT_QUERY\",\n query: options.query,\n variables: options.variables,\n returnPartialData: options.returnPartialData,\n config: this.config,\n });\n };\n InMemoryCache.prototype.watch = function (watch) {\n var _this = this;\n this.watches.add(watch);\n if (watch.immediate) {\n this.maybeBroadcastWatch(watch);\n }\n return function () {\n _this.watches.delete(watch);\n };\n };\n InMemoryCache.prototype.gc = function () {\n return this.optimisticData.gc();\n };\n InMemoryCache.prototype.retain = function (rootId, optimistic) {\n return (optimistic ? this.optimisticData : this.data).retain(rootId);\n };\n InMemoryCache.prototype.release = function (rootId, optimistic) {\n return (optimistic ? this.optimisticData : this.data).release(rootId);\n };\n InMemoryCache.prototype.identify = function (object) {\n return isReference(object) ? object.__ref :\n this.policies.identify(object)[0];\n };\n InMemoryCache.prototype.evict = function (options) {\n if (!options.id) {\n if (hasOwn.call(options, \"id\")) {\n return false;\n }\n options = __assign(__assign({}, options), { id: \"ROOT_QUERY\" });\n }\n try {\n ++this.txCount;\n return this.optimisticData.evict(options);\n }\n finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n };\n InMemoryCache.prototype.reset = function () {\n this.data.clear();\n this.optimisticData = this.data;\n this.broadcastWatches();\n return Promise.resolve();\n };\n InMemoryCache.prototype.removeOptimistic = function (idToRemove) {\n var newOptimisticData = this.optimisticData.removeLayer(idToRemove);\n if (newOptimisticData !== this.optimisticData) {\n this.optimisticData = newOptimisticData;\n this.broadcastWatches();\n }\n };\n InMemoryCache.prototype.performTransaction = function (transaction, optimisticId) {\n var _this = this;\n var perform = function (layer) {\n var _a = _this, data = _a.data, optimisticData = _a.optimisticData;\n ++_this.txCount;\n if (layer) {\n _this.data = _this.optimisticData = layer;\n }\n try {\n transaction(_this);\n }\n finally {\n --_this.txCount;\n _this.data = data;\n _this.optimisticData = optimisticData;\n }\n };\n if (typeof optimisticId === 'string') {\n this.optimisticData = this.optimisticData.addLayer(optimisticId, perform);\n }\n else if (optimisticId === null) {\n perform(this.data);\n }\n else {\n perform();\n }\n this.broadcastWatches();\n };\n InMemoryCache.prototype.transformDocument = function (document) {\n if (this.addTypename) {\n var result = this.typenameDocumentCache.get(document);\n if (!result) {\n result = addTypenameToDocument(document);\n this.typenameDocumentCache.set(document, result);\n this.typenameDocumentCache.set(result, result);\n }\n return result;\n }\n return document;\n };\n InMemoryCache.prototype.broadcastWatches = function () {\n var _this = this;\n if (!this.txCount) {\n this.watches.forEach(function (c) { return _this.maybeBroadcastWatch(c); });\n }\n };\n InMemoryCache.prototype.broadcastWatch = function (c) {\n this.watchDep.dirty(c);\n this.watchDep(c);\n c.callback(this.diff({\n query: c.query,\n variables: c.variables,\n optimistic: c.optimistic,\n }));\n };\n return InMemoryCache;\n}(ApolloCache));\nexport { InMemoryCache };\n//# sourceMappingURL=inMemoryCache.js.map","import { FontSizes, FontWeights, LocalizedFontFamilies, LocalizedFontNames } from './FluentFonts';\n// Fallback fonts, if specified system or web fonts are unavailable.\nvar FontFamilyFallbacks = \"'Segoe UI', -apple-system, BlinkMacSystemFont, 'Roboto', 'Helvetica Neue', sans-serif\";\n// By default, we favor system fonts for the default.\n// All localized fonts use a web font and never use the system font.\nvar defaultFontFamily = \"'Segoe UI', '\" + LocalizedFontNames.WestEuropean + \"'\";\n// Mapping of language prefix to to font family.\nvar LanguageToFontMap = {\n ar: LocalizedFontFamilies.Arabic,\n bg: LocalizedFontFamilies.Cyrillic,\n cs: LocalizedFontFamilies.EastEuropean,\n el: LocalizedFontFamilies.Greek,\n et: LocalizedFontFamilies.EastEuropean,\n he: LocalizedFontFamilies.Hebrew,\n hi: LocalizedFontFamilies.Hindi,\n hr: LocalizedFontFamilies.EastEuropean,\n hu: LocalizedFontFamilies.EastEuropean,\n ja: LocalizedFontFamilies.Japanese,\n kk: LocalizedFontFamilies.EastEuropean,\n ko: LocalizedFontFamilies.Korean,\n lt: LocalizedFontFamilies.EastEuropean,\n lv: LocalizedFontFamilies.EastEuropean,\n pl: LocalizedFontFamilies.EastEuropean,\n ru: LocalizedFontFamilies.Cyrillic,\n sk: LocalizedFontFamilies.EastEuropean,\n 'sr-latn': LocalizedFontFamilies.EastEuropean,\n th: LocalizedFontFamilies.Thai,\n tr: LocalizedFontFamilies.EastEuropean,\n uk: LocalizedFontFamilies.Cyrillic,\n vi: LocalizedFontFamilies.Vietnamese,\n 'zh-hans': LocalizedFontFamilies.ChineseSimplified,\n 'zh-hant': LocalizedFontFamilies.ChineseTraditional,\n hy: LocalizedFontFamilies.Armenian,\n ka: LocalizedFontFamilies.Georgian,\n};\nfunction _fontFamilyWithFallbacks(fontFamily) {\n return fontFamily + \", \" + FontFamilyFallbacks;\n}\n/**\n * If there is a localized font for this language, return that.\n * Returns undefined if there is no localized font for that language.\n */\nfunction _getLocalizedFontFamily(language) {\n for (var lang in LanguageToFontMap) {\n if (LanguageToFontMap.hasOwnProperty(lang) && language && lang.indexOf(language) === 0) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return LanguageToFontMap[lang];\n }\n }\n return defaultFontFamily;\n}\nfunction _createFont(size, weight, fontFamily) {\n return {\n fontFamily: fontFamily,\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontSize: size,\n fontWeight: weight,\n };\n}\nexport function createFontStyles(localeCode) {\n var localizedFont = _getLocalizedFontFamily(localeCode);\n var fontFamilyWithFallback = _fontFamilyWithFallbacks(localizedFont);\n var fontStyles = {\n tiny: _createFont(FontSizes.mini, FontWeights.regular, fontFamilyWithFallback),\n xSmall: _createFont(FontSizes.xSmall, FontWeights.regular, fontFamilyWithFallback),\n small: _createFont(FontSizes.small, FontWeights.regular, fontFamilyWithFallback),\n smallPlus: _createFont(FontSizes.smallPlus, FontWeights.regular, fontFamilyWithFallback),\n medium: _createFont(FontSizes.medium, FontWeights.regular, fontFamilyWithFallback),\n mediumPlus: _createFont(FontSizes.mediumPlus, FontWeights.regular, fontFamilyWithFallback),\n large: _createFont(FontSizes.large, FontWeights.regular, fontFamilyWithFallback),\n xLarge: _createFont(FontSizes.xLarge, FontWeights.semibold, fontFamilyWithFallback),\n xLargePlus: _createFont(FontSizes.xLargePlus, FontWeights.semibold, fontFamilyWithFallback),\n xxLarge: _createFont(FontSizes.xxLarge, FontWeights.semibold, fontFamilyWithFallback),\n xxLargePlus: _createFont(FontSizes.xxLargePlus, FontWeights.semibold, fontFamilyWithFallback),\n superLarge: _createFont(FontSizes.superLarge, FontWeights.semibold, fontFamilyWithFallback),\n mega: _createFont(FontSizes.mega, FontWeights.semibold, fontFamilyWithFallback),\n };\n return fontStyles;\n}\n//# sourceMappingURL=createFontStyles.js.map","var superPropBase = require(\"./superPropBase.js\");\nfunction _get() {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n module.exports = _get = Reflect.get.bind(), module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n } else {\n module.exports = _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n if (desc.get) {\n return desc.get.call(arguments.length < 3 ? target : receiver);\n }\n return desc.value;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n }\n return _get.apply(this, arguments);\n}\nmodule.exports = _get, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","export function invariant(condition, message, Err) {\n if (Err === void 0) { Err = Error; }\n if (!condition) {\n throw new Err(message);\n }\n}\n//# sourceMappingURL=invariant.js.map","import defaultMoment from 'moment';\n\nvar MomentUtils = /** @class */ (function () {\n function MomentUtils(_a) {\n var _b = _a === void 0 ? {} : _a, locale = _b.locale, instance = _b.instance, moment = _b.moment;\n this.yearFormat = \"YYYY\";\n this.yearMonthFormat = \"MMMM YYYY\";\n this.dateTime12hFormat = \"MMMM Do hh:mm a\";\n this.dateTime24hFormat = \"MMMM Do HH:mm\";\n this.time12hFormat = \"hh:mm A\";\n this.time24hFormat = \"HH:mm\";\n this.dateFormat = \"MMMM Do\";\n this.moment = instance || moment || defaultMoment;\n this.locale = locale;\n }\n MomentUtils.prototype.parse = function (value, format) {\n if (value === \"\") {\n return null;\n }\n return this.moment(value, format, true);\n };\n MomentUtils.prototype.date = function (value) {\n if (value === null) {\n return null;\n }\n var moment = this.moment(value);\n moment.locale(this.locale);\n return moment;\n };\n MomentUtils.prototype.isValid = function (value) {\n return this.moment(value).isValid();\n };\n MomentUtils.prototype.isNull = function (date) {\n return date === null;\n };\n MomentUtils.prototype.getDiff = function (date, comparing) {\n return date.diff(comparing);\n };\n MomentUtils.prototype.isAfter = function (date, value) {\n return date.isAfter(value);\n };\n MomentUtils.prototype.isBefore = function (date, value) {\n return date.isBefore(value);\n };\n MomentUtils.prototype.isAfterDay = function (date, value) {\n return date.isAfter(value, \"day\");\n };\n MomentUtils.prototype.isBeforeDay = function (date, value) {\n return date.isBefore(value, \"day\");\n };\n MomentUtils.prototype.isBeforeYear = function (date, value) {\n return date.isBefore(value, \"year\");\n };\n MomentUtils.prototype.isAfterYear = function (date, value) {\n return date.isAfter(value, \"year\");\n };\n MomentUtils.prototype.startOfDay = function (date) {\n return date.clone().startOf(\"day\");\n };\n MomentUtils.prototype.endOfDay = function (date) {\n return date.clone().endOf(\"day\");\n };\n MomentUtils.prototype.format = function (date, formatString) {\n date.locale(this.locale);\n return date.format(formatString);\n };\n MomentUtils.prototype.formatNumber = function (numberToFormat) {\n return numberToFormat;\n };\n MomentUtils.prototype.getHours = function (date) {\n return date.get(\"hours\");\n };\n MomentUtils.prototype.addDays = function (date, count) {\n return count < 0\n ? date.clone().subtract(Math.abs(count), \"days\")\n : date.clone().add(count, \"days\");\n };\n MomentUtils.prototype.setHours = function (date, count) {\n return date.clone().hours(count);\n };\n MomentUtils.prototype.getMinutes = function (date) {\n return date.get(\"minutes\");\n };\n MomentUtils.prototype.setMinutes = function (date, count) {\n return date.clone().minutes(count);\n };\n MomentUtils.prototype.getSeconds = function (date) {\n return date.get(\"seconds\");\n };\n MomentUtils.prototype.setSeconds = function (date, count) {\n return date.clone().seconds(count);\n };\n MomentUtils.prototype.getMonth = function (date) {\n return date.get(\"month\");\n };\n MomentUtils.prototype.isSameDay = function (date, comparing) {\n return date.isSame(comparing, \"day\");\n };\n MomentUtils.prototype.isSameMonth = function (date, comparing) {\n return date.isSame(comparing, \"month\");\n };\n MomentUtils.prototype.isSameYear = function (date, comparing) {\n return date.isSame(comparing, \"year\");\n };\n MomentUtils.prototype.isSameHour = function (date, comparing) {\n return date.isSame(comparing, \"hour\");\n };\n MomentUtils.prototype.setMonth = function (date, count) {\n return date.clone().month(count);\n };\n MomentUtils.prototype.getMeridiemText = function (ampm) {\n return ampm === \"am\" ? \"AM\" : \"PM\";\n };\n MomentUtils.prototype.startOfMonth = function (date) {\n return date.clone().startOf(\"month\");\n };\n MomentUtils.prototype.endOfMonth = function (date) {\n return date.clone().endOf(\"month\");\n };\n MomentUtils.prototype.getNextMonth = function (date) {\n return date.clone().add(1, \"month\");\n };\n MomentUtils.prototype.getPreviousMonth = function (date) {\n return date.clone().subtract(1, \"month\");\n };\n MomentUtils.prototype.getMonthArray = function (date) {\n var firstMonth = date.clone().startOf(\"year\");\n var monthArray = [firstMonth];\n while (monthArray.length < 12) {\n var prevMonth = monthArray[monthArray.length - 1];\n monthArray.push(this.getNextMonth(prevMonth));\n }\n return monthArray;\n };\n MomentUtils.prototype.getYear = function (date) {\n return date.get(\"year\");\n };\n MomentUtils.prototype.setYear = function (date, year) {\n return date.clone().set(\"year\", year);\n };\n MomentUtils.prototype.mergeDateAndTime = function (date, time) {\n return this.setMinutes(this.setHours(date, this.getHours(time)), this.getMinutes(time));\n };\n MomentUtils.prototype.getWeekdays = function () {\n return this.moment.weekdaysShort(true);\n };\n MomentUtils.prototype.isEqual = function (value, comparing) {\n if (value === null && comparing === null) {\n return true;\n }\n return this.moment(value).isSame(comparing);\n };\n MomentUtils.prototype.getWeekArray = function (date) {\n var start = date\n .clone()\n .startOf(\"month\")\n .startOf(\"week\");\n var end = date\n .clone()\n .endOf(\"month\")\n .endOf(\"week\");\n var count = 0;\n var current = start;\n var nestedWeeks = [];\n while (current.isBefore(end)) {\n var weekNumber = Math.floor(count / 7);\n nestedWeeks[weekNumber] = nestedWeeks[weekNumber] || [];\n nestedWeeks[weekNumber].push(current);\n current = current.clone().add(1, \"day\");\n count += 1;\n }\n return nestedWeeks;\n };\n MomentUtils.prototype.getYearRange = function (start, end) {\n var startDate = this.moment(start).startOf(\"year\");\n var endDate = this.moment(end).endOf(\"year\");\n var years = [];\n var current = startDate;\n while (current.isBefore(endDate)) {\n years.push(current);\n current = current.clone().add(1, \"year\");\n }\n return years;\n };\n // displaying methods\n MomentUtils.prototype.getCalendarHeaderText = function (date) {\n return this.format(date, this.yearMonthFormat);\n };\n MomentUtils.prototype.getYearText = function (date) {\n return this.format(date, \"YYYY\");\n };\n MomentUtils.prototype.getDatePickerHeaderText = function (date) {\n return this.format(date, \"ddd, MMM D\");\n };\n MomentUtils.prototype.getDateTimePickerHeaderText = function (date) {\n return this.format(date, \"MMM D\");\n };\n MomentUtils.prototype.getMonthText = function (date) {\n return this.format(date, \"MMMM\");\n };\n MomentUtils.prototype.getDayText = function (date) {\n return this.format(date, \"D\");\n };\n MomentUtils.prototype.getHourText = function (date, ampm) {\n return this.format(date, ampm ? \"hh\" : \"HH\");\n };\n MomentUtils.prototype.getMinuteText = function (date) {\n return this.format(date, \"mm\");\n };\n MomentUtils.prototype.getSecondText = function (date) {\n return this.format(date, \"ss\");\n };\n return MomentUtils;\n}());\n\nexport default MomentUtils;\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n return object;\n}\nmodule.exports = _superPropBase, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return {\n value: void 0,\n done: !0\n };\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable || \"\" === iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n throw new TypeError(_typeof(iterable) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export { ApolloClient, } from \"./ApolloClient.js\";\nexport { ObservableQuery, } from \"./ObservableQuery.js\";\nexport { NetworkStatus } from \"./networkStatus.js\";\nexport * from \"./types.js\";\nexport { isApolloError, ApolloError } from \"../errors/index.js\";\nexport { Cache, ApolloCache, InMemoryCache, MissingFieldError, defaultDataIdFromObject, makeVar, } from \"../cache/index.js\";\nexport * from \"../cache/inmemory/types.js\";\nexport * from \"../link/core/index.js\";\nexport * from \"../link/http/index.js\";\nexport { fromError, toPromise, fromPromise, throwServerError, } from \"../link/utils/index.js\";\nexport { Observable, isReference, makeReference, } from \"../utilities/index.js\";\nimport gql from 'graphql-tag';\nexport var resetCaches = gql.resetCaches, disableFragmentWarnings = gql.disableFragmentWarnings, enableExperimentalFragmentVariables = gql.enableExperimentalFragmentVariables, disableExperimentalFragmentVariables = gql.disableExperimentalFragmentVariables;\nexport { gql };\n//# sourceMappingURL=index.js.map","export function getEnv() {\n if (typeof process !== 'undefined' && process.env.NODE_ENV) {\n return process.env.NODE_ENV;\n }\n return 'development';\n}\nexport function isEnv(env) {\n return getEnv() === env;\n}\nexport function isDevelopment() {\n return isEnv('development') === true;\n}\nexport function isTest() {\n return isEnv('test') === true;\n}\n//# sourceMappingURL=environment.js.map","import { findElementRecursive } from './findElementRecursive';\n/**\n * Determines if an element, or any of its ancestors, contain the given attribute\n * @param element - element to start searching at\n * @param attribute - the attribute to search for\n * @returns the value of the first instance found\n */\nexport function elementContainsAttribute(element, attribute) {\n var elementMatch = findElementRecursive(element, function (testElement) { return testElement.hasAttribute(attribute); });\n return elementMatch && elementMatch.getAttribute(attribute);\n}\n//# sourceMappingURL=elementContainsAttribute.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar MS_PER_SECOND = 1e3;\nvar SECS_PER_MIN = 60;\nvar SECS_PER_HOUR = SECS_PER_MIN * 60;\nvar SECS_PER_DAY = SECS_PER_HOUR * 24;\nvar SECS_PER_WEEK = SECS_PER_DAY * 7;\nexport function selectUnit(from, to, thresholds) {\n if (to === void 0) { to = Date.now(); }\n if (thresholds === void 0) { thresholds = {}; }\n var resolvedThresholds = __assign(__assign({}, DEFAULT_THRESHOLDS), (thresholds || {}));\n var secs = (+from - +to) / MS_PER_SECOND;\n if (Math.abs(secs) < resolvedThresholds.second) {\n return {\n value: Math.round(secs),\n unit: 'second',\n };\n }\n var mins = secs / SECS_PER_MIN;\n if (Math.abs(mins) < resolvedThresholds.minute) {\n return {\n value: Math.round(mins),\n unit: 'minute',\n };\n }\n var hours = secs / SECS_PER_HOUR;\n if (Math.abs(hours) < resolvedThresholds.hour) {\n return {\n value: Math.round(hours),\n unit: 'hour',\n };\n }\n var days = secs / SECS_PER_DAY;\n if (Math.abs(days) < resolvedThresholds.day) {\n return {\n value: Math.round(days),\n unit: 'day',\n };\n }\n var fromDate = new Date(from);\n var toDate = new Date(to);\n var years = fromDate.getFullYear() - toDate.getFullYear();\n if (Math.round(Math.abs(years)) > 0) {\n return {\n value: Math.round(years),\n unit: 'year',\n };\n }\n var months = years * 12 + fromDate.getMonth() - toDate.getMonth();\n if (Math.round(Math.abs(months)) > 0) {\n return {\n value: Math.round(months),\n unit: 'month',\n };\n }\n var weeks = secs / SECS_PER_WEEK;\n return {\n value: Math.round(weeks),\n unit: 'week',\n };\n}\nexport var DEFAULT_THRESHOLDS = {\n second: 45,\n minute: 45,\n hour: 22,\n day: 5,\n};\n//# sourceMappingURL=diff.js.map","import { keyframes } from '@uifabric/merge-styles';\n/* Register the keyframes */\nvar EASING_FUNCTION_1 = 'cubic-bezier(.1,.9,.2,1)';\nvar EASING_FUNCTION_2 = 'cubic-bezier(.1,.25,.75,.9)';\nvar DURATION_1 = '0.167s';\nvar DURATION_2 = '0.267s';\nvar DURATION_3 = '0.367s';\nvar DURATION_4 = '0.467s';\nvar FADE_IN = keyframes({\n from: { opacity: 0 },\n to: { opacity: 1 },\n});\nvar FADE_OUT = keyframes({\n from: { opacity: 1 },\n to: { opacity: 0, visibility: 'hidden' },\n});\nvar SLIDE_RIGHT_IN10 = _createSlideInX(-10);\nvar SLIDE_RIGHT_IN20 = _createSlideInX(-20);\nvar SLIDE_RIGHT_IN40 = _createSlideInX(-40);\nvar SLIDE_RIGHT_IN400 = _createSlideInX(-400);\nvar SLIDE_LEFT_IN10 = _createSlideInX(10);\nvar SLIDE_LEFT_IN20 = _createSlideInX(20);\nvar SLIDE_LEFT_IN40 = _createSlideInX(40);\nvar SLIDE_LEFT_IN400 = _createSlideInX(400);\nvar SLIDE_UP_IN10 = _createSlideInY(10);\nvar SLIDE_UP_IN20 = _createSlideInY(20);\nvar SLIDE_DOWN_IN10 = _createSlideInY(-10);\nvar SLIDE_DOWN_IN20 = _createSlideInY(-20);\nvar SLIDE_RIGHT_OUT10 = _createSlideOutX(10);\nvar SLIDE_RIGHT_OUT20 = _createSlideOutX(20);\nvar SLIDE_RIGHT_OUT40 = _createSlideOutX(40);\nvar SLIDE_RIGHT_OUT400 = _createSlideOutX(400);\nvar SLIDE_LEFT_OUT10 = _createSlideOutX(-10);\nvar SLIDE_LEFT_OUT20 = _createSlideOutX(-20);\nvar SLIDE_LEFT_OUT40 = _createSlideOutX(-40);\nvar SLIDE_LEFT_OUT400 = _createSlideOutX(-400);\nvar SLIDE_UP_OUT10 = _createSlideOutY(-10);\nvar SLIDE_UP_OUT20 = _createSlideOutY(-20);\nvar SLIDE_DOWN_OUT10 = _createSlideOutY(10);\nvar SLIDE_DOWN_OUT20 = _createSlideOutY(20);\nvar SCALE_UP100 = keyframes({\n from: { transform: 'scale3d(.98,.98,1)' },\n to: { transform: 'scale3d(1,1,1)' },\n});\nvar SCALE_DOWN98 = keyframes({\n from: { transform: 'scale3d(1,1,1)' },\n to: { transform: 'scale3d(.98,.98,1)' },\n});\nvar SCALE_DOWN100 = keyframes({\n from: { transform: 'scale3d(1.03,1.03,1)' },\n to: { transform: 'scale3d(1,1,1)' },\n});\nvar SCALE_UP103 = keyframes({\n from: { transform: 'scale3d(1,1,1)' },\n to: { transform: 'scale3d(1.03,1.03,1)' },\n});\nvar ROTATE90 = keyframes({\n from: { transform: 'rotateZ(0deg)' },\n to: { transform: 'rotateZ(90deg)' },\n});\nvar ROTATE_N90 = keyframes({\n from: { transform: 'rotateZ(0deg)' },\n to: { transform: 'rotateZ(-90deg)' },\n});\n/**\n * Exporting raw duraction values and easing functions to be used in custom animations\n */\nexport var AnimationVariables = {\n easeFunction1: EASING_FUNCTION_1,\n easeFunction2: EASING_FUNCTION_2,\n durationValue1: DURATION_1,\n durationValue2: DURATION_2,\n durationValue3: DURATION_3,\n durationValue4: DURATION_4,\n};\n/**\n * All Fabric standard animations, exposed as json objects referencing predefined\n * keyframes. These objects can be mixed in with other class definitions.\n */\nexport var AnimationStyles = {\n slideRightIn10: _createAnimation(FADE_IN + \",\" + SLIDE_RIGHT_IN10, DURATION_3, EASING_FUNCTION_1),\n slideRightIn20: _createAnimation(FADE_IN + \",\" + SLIDE_RIGHT_IN20, DURATION_3, EASING_FUNCTION_1),\n slideRightIn40: _createAnimation(FADE_IN + \",\" + SLIDE_RIGHT_IN40, DURATION_3, EASING_FUNCTION_1),\n slideRightIn400: _createAnimation(FADE_IN + \",\" + SLIDE_RIGHT_IN400, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn10: _createAnimation(FADE_IN + \",\" + SLIDE_LEFT_IN10, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn20: _createAnimation(FADE_IN + \",\" + SLIDE_LEFT_IN20, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn40: _createAnimation(FADE_IN + \",\" + SLIDE_LEFT_IN40, DURATION_3, EASING_FUNCTION_1),\n slideLeftIn400: _createAnimation(FADE_IN + \",\" + SLIDE_LEFT_IN400, DURATION_3, EASING_FUNCTION_1),\n slideUpIn10: _createAnimation(FADE_IN + \",\" + SLIDE_UP_IN10, DURATION_3, EASING_FUNCTION_1),\n slideUpIn20: _createAnimation(FADE_IN + \",\" + SLIDE_UP_IN20, DURATION_3, EASING_FUNCTION_1),\n slideDownIn10: _createAnimation(FADE_IN + \",\" + SLIDE_DOWN_IN10, DURATION_3, EASING_FUNCTION_1),\n slideDownIn20: _createAnimation(FADE_IN + \",\" + SLIDE_DOWN_IN20, DURATION_3, EASING_FUNCTION_1),\n slideRightOut10: _createAnimation(FADE_OUT + \",\" + SLIDE_RIGHT_OUT10, DURATION_3, EASING_FUNCTION_1),\n slideRightOut20: _createAnimation(FADE_OUT + \",\" + SLIDE_RIGHT_OUT20, DURATION_3, EASING_FUNCTION_1),\n slideRightOut40: _createAnimation(FADE_OUT + \",\" + SLIDE_RIGHT_OUT40, DURATION_3, EASING_FUNCTION_1),\n slideRightOut400: _createAnimation(FADE_OUT + \",\" + SLIDE_RIGHT_OUT400, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut10: _createAnimation(FADE_OUT + \",\" + SLIDE_LEFT_OUT10, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut20: _createAnimation(FADE_OUT + \",\" + SLIDE_LEFT_OUT20, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut40: _createAnimation(FADE_OUT + \",\" + SLIDE_LEFT_OUT40, DURATION_3, EASING_FUNCTION_1),\n slideLeftOut400: _createAnimation(FADE_OUT + \",\" + SLIDE_LEFT_OUT400, DURATION_3, EASING_FUNCTION_1),\n slideUpOut10: _createAnimation(FADE_OUT + \",\" + SLIDE_UP_OUT10, DURATION_3, EASING_FUNCTION_1),\n slideUpOut20: _createAnimation(FADE_OUT + \",\" + SLIDE_UP_OUT20, DURATION_3, EASING_FUNCTION_1),\n slideDownOut10: _createAnimation(FADE_OUT + \",\" + SLIDE_DOWN_OUT10, DURATION_3, EASING_FUNCTION_1),\n slideDownOut20: _createAnimation(FADE_OUT + \",\" + SLIDE_DOWN_OUT20, DURATION_3, EASING_FUNCTION_1),\n scaleUpIn100: _createAnimation(FADE_IN + \",\" + SCALE_UP100, DURATION_3, EASING_FUNCTION_1),\n scaleDownIn100: _createAnimation(FADE_IN + \",\" + SCALE_DOWN100, DURATION_3, EASING_FUNCTION_1),\n scaleUpOut103: _createAnimation(FADE_OUT + \",\" + SCALE_UP103, DURATION_1, EASING_FUNCTION_2),\n scaleDownOut98: _createAnimation(FADE_OUT + \",\" + SCALE_DOWN98, DURATION_1, EASING_FUNCTION_2),\n fadeIn100: _createAnimation(FADE_IN, DURATION_1, EASING_FUNCTION_2),\n fadeIn200: _createAnimation(FADE_IN, DURATION_2, EASING_FUNCTION_2),\n fadeIn400: _createAnimation(FADE_IN, DURATION_3, EASING_FUNCTION_2),\n fadeIn500: _createAnimation(FADE_IN, DURATION_4, EASING_FUNCTION_2),\n fadeOut100: _createAnimation(FADE_OUT, DURATION_1, EASING_FUNCTION_2),\n fadeOut200: _createAnimation(FADE_OUT, DURATION_2, EASING_FUNCTION_2),\n fadeOut400: _createAnimation(FADE_OUT, DURATION_3, EASING_FUNCTION_2),\n fadeOut500: _createAnimation(FADE_OUT, DURATION_4, EASING_FUNCTION_2),\n rotate90deg: _createAnimation(ROTATE90, '0.1s', EASING_FUNCTION_2),\n rotateN90deg: _createAnimation(ROTATE_N90, '0.1s', EASING_FUNCTION_2),\n};\nfunction _createAnimation(animationName, animationDuration, animationTimingFunction) {\n return {\n animationName: animationName,\n animationDuration: animationDuration,\n animationTimingFunction: animationTimingFunction,\n animationFillMode: 'both',\n };\n}\nfunction _createSlideInX(fromX) {\n return keyframes({\n from: { transform: \"translate3d(\" + fromX + \"px,0,0)\", pointerEvents: 'none' },\n to: { transform: \"translate3d(0,0,0)\", pointerEvents: 'auto' },\n });\n}\nfunction _createSlideInY(fromY) {\n return keyframes({\n from: { transform: \"translate3d(0,\" + fromY + \"px,0)\", pointerEvents: 'none' },\n to: { transform: \"translate3d(0,0,0)\", pointerEvents: 'auto' },\n });\n}\nfunction _createSlideOutX(toX) {\n return keyframes({\n from: { transform: \"translate3d(0,0,0)\" },\n to: { transform: \"translate3d(\" + toX + \"px,0,0)\" },\n });\n}\nfunction _createSlideOutY(toY) {\n return keyframes({\n from: { transform: \"translate3d(0,0,0)\" },\n to: { transform: \"translate3d(0,\" + toY + \"px,0)\" },\n });\n}\n//# sourceMappingURL=AnimationStyles.js.map","// When adding or removing a color, make sure you keep this consistent with IColorClassNames\n// by adding the color variants.\nexport var DefaultPalette = {\n themeDarker: '#004578',\n themeDark: '#005a9e',\n themeDarkAlt: '#106ebe',\n themePrimary: '#0078d4',\n themeSecondary: '#2b88d8',\n themeTertiary: '#71afe5',\n themeLight: '#c7e0f4',\n themeLighter: '#deecf9',\n themeLighterAlt: '#eff6fc',\n black: '#000000',\n blackTranslucent40: 'rgba(0,0,0,.4)',\n neutralDark: '#201f1e',\n neutralPrimary: '#323130',\n neutralPrimaryAlt: '#3b3a39',\n neutralSecondary: '#605e5c',\n neutralSecondaryAlt: '#8a8886',\n neutralTertiary: '#a19f9d',\n neutralTertiaryAlt: '#c8c6c4',\n neutralQuaternary: '#d2d0ce',\n neutralQuaternaryAlt: '#e1dfdd',\n neutralLight: '#edebe9',\n neutralLighter: '#f3f2f1',\n neutralLighterAlt: '#faf9f8',\n accent: '#0078d4',\n white: '#ffffff',\n whiteTranslucent40: 'rgba(255,255,255,.4)',\n yellowDark: '#d29200',\n yellow: '#ffb900',\n yellowLight: '#fff100',\n orange: '#d83b01',\n orangeLight: '#ea4300',\n orangeLighter: '#ff8c00',\n redDark: '#a4262c',\n red: '#e81123',\n magentaDark: '#5c005c',\n magenta: '#b4009e',\n magentaLight: '#e3008c',\n purpleDark: '#32145a',\n purple: '#5c2d91',\n purpleLight: '#b4a0ff',\n blueDark: '#002050',\n blueMid: '#00188f',\n blue: '#0078d4',\n blueLight: '#00bcf2',\n tealDark: '#004b50',\n teal: '#008272',\n tealLight: '#00b294',\n greenDark: '#004b1c',\n green: '#107c10',\n greenLight: '#bad80a',\n};\n//# sourceMappingURL=DefaultPalette.js.map","import { fontFace } from '@uifabric/merge-styles';\nimport { FontWeights, LocalizedFontFamilies, LocalizedFontNames } from './FluentFonts';\nimport { createFontStyles } from './createFontStyles';\nimport { getLanguage, getWindow } from '@uifabric/utilities';\n// Default urls.\nvar DefaultBaseUrl = 'https://static2.sharepointonline.com/files/fabric/assets';\n// Standard font styling.\nexport var DefaultFontStyles = createFontStyles(getLanguage('sessionStorage'));\nfunction _registerFontFace(fontFamily, url, fontWeight, localFontName) {\n fontFamily = \"'\" + fontFamily + \"'\";\n var localFontSrc = localFontName !== undefined ? \"local('\" + localFontName + \"'),\" : '';\n fontFace({\n fontFamily: fontFamily,\n src: localFontSrc + (\"url('\" + url + \".woff2') format('woff2'),\") + (\"url('\" + url + \".woff') format('woff')\"),\n fontWeight: fontWeight,\n fontStyle: 'normal',\n fontDisplay: 'swap',\n });\n}\nfunction _registerFontFaceSet(baseUrl, fontFamily, cdnFolder, cdnFontName, localFontName) {\n if (cdnFontName === void 0) { cdnFontName = 'segoeui'; }\n var urlBase = baseUrl + \"/\" + cdnFolder + \"/\" + cdnFontName;\n _registerFontFace(fontFamily, urlBase + '-light', FontWeights.light, localFontName && localFontName + ' Light');\n _registerFontFace(fontFamily, urlBase + '-semilight', FontWeights.semilight, localFontName && localFontName + ' SemiLight');\n _registerFontFace(fontFamily, urlBase + '-regular', FontWeights.regular, localFontName);\n _registerFontFace(fontFamily, urlBase + '-semibold', FontWeights.semibold, localFontName && localFontName + ' SemiBold');\n _registerFontFace(fontFamily, urlBase + '-bold', FontWeights.bold, localFontName && localFontName + ' Bold');\n}\nexport function registerDefaultFontFaces(baseUrl) {\n if (baseUrl) {\n var fontUrl = baseUrl + \"/fonts\";\n // Produce @font-face definitions for all supported web fonts.\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Thai, 'leelawadeeui-thai', 'leelawadeeui');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Arabic, 'segoeui-arabic');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Cyrillic, 'segoeui-cyrillic');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.EastEuropean, 'segoeui-easteuropean');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Greek, 'segoeui-greek');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Hebrew, 'segoeui-hebrew');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Vietnamese, 'segoeui-vietnamese');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.WestEuropean, 'segoeui-westeuropean', 'segoeui', 'Segoe UI');\n _registerFontFaceSet(fontUrl, LocalizedFontFamilies.Selawik, 'selawik', 'selawik');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Armenian, 'segoeui-armenian');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Georgian, 'segoeui-georgian');\n // Leelawadee UI (Thai) does not have a 'light' weight, so we override\n // the font-face generated above to use the 'semilight' weight instead.\n _registerFontFace('Leelawadee UI Web', fontUrl + \"/leelawadeeui-thai/leelawadeeui-semilight\", FontWeights.light);\n // Leelawadee UI (Thai) does not have a 'semibold' weight, so we override\n // the font-face generated above to use the 'bold' weight instead.\n _registerFontFace('Leelawadee UI Web', fontUrl + \"/leelawadeeui-thai/leelawadeeui-bold\", FontWeights.semibold);\n }\n}\n/**\n * Reads the fontBaseUrl from window.FabricConfig.fontBaseUrl or falls back to a default.\n */\nfunction _getFontBaseUrl() {\n var _a, _b, _c;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var fabricConfig = (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.FabricConfig;\n return _c = (_b = fabricConfig) === null || _b === void 0 ? void 0 : _b.fontBaseUrl, (_c !== null && _c !== void 0 ? _c : DefaultBaseUrl);\n}\n/**\n * Register the font faces.\n */\nregisterDefaultFontFaces(_getFontBaseUrl());\n//# sourceMappingURL=DefaultFontStyles.js.map","import * as React from 'react';\n/**\n * Context for providing the window.\n */\nexport var WindowContext = React.createContext({\n window: typeof window === 'object' ? window : undefined,\n});\n/**\n * Hook to access the window object. This can be overridden contextually using the `WindowProvider`.\n */\nexport var useWindow = function () { return React.useContext(WindowContext).window; };\n/**\n * Hook to access the document object. This can be overridden contextually using the `WindowProvider`.\n */\nexport var useDocument = function () { var _a; return (_a = React.useContext(WindowContext).window) === null || _a === void 0 ? void 0 : _a.document; };\n/**\n * Component to provide the window object contextually. This is useful when rendering content to an element\n * contained within a child window or iframe element, where event handlers and styling must be projected\n * to an alternative window or document.\n */\nexport var WindowProvider = function (props) {\n return React.createElement(WindowContext.Provider, { value: props }, props.children);\n};\n//# sourceMappingURL=WindowProvider.js.map","/**\n * Sets the virtual parent of an element.\n * Pass `undefined` as the `parent` to clear the virtual parent.\n *\n * @public\n */\nexport function setVirtualParent(child, parent) {\n var virtualChild = child;\n var virtualParent = parent;\n if (!virtualChild._virtual) {\n virtualChild._virtual = {\n children: [],\n };\n }\n var oldParent = virtualChild._virtual.parent;\n if (oldParent && oldParent !== parent) {\n // Remove the child from its old parent.\n var index = oldParent._virtual.children.indexOf(virtualChild);\n if (index > -1) {\n oldParent._virtual.children.splice(index, 1);\n }\n }\n virtualChild._virtual.parent = virtualParent || undefined;\n if (virtualParent) {\n if (!virtualParent._virtual) {\n virtualParent._virtual = {\n children: [],\n };\n }\n virtualParent._virtual.children.push(virtualChild);\n }\n}\n//# sourceMappingURL=setVirtualParent.js.map","import { findElementRecursive } from './findElementRecursive';\nimport { DATA_PORTAL_ATTRIBUTE } from './setPortalAttribute';\n/**\n * Determine whether a target is within a portal from perspective of root or optional parent.\n * This function only works against portal components that use the setPortalAttribute function.\n * If both parent and child are within the same portal this function will return false.\n * @param target - Element to query portal containment status of.\n * @param parent - Optional parent perspective. Search for containing portal stops at parent\n * (or root if parent is undefined or invalid.)\n */\nexport function portalContainsElement(target, parent) {\n var elementMatch = findElementRecursive(target, function (testElement) { return parent === testElement || testElement.hasAttribute(DATA_PORTAL_ATTRIBUTE); });\n return elementMatch !== null && elementMatch.hasAttribute(DATA_PORTAL_ATTRIBUTE);\n}\n//# sourceMappingURL=portalContainsElement.js.map","export var Depths;\n(function (Depths) {\n Depths.depth0 = '0 0 0 0 transparent';\n Depths.depth4 = '0 1.6px 3.6px 0 rgba(0, 0, 0, 0.132), 0 0.3px 0.9px 0 rgba(0, 0, 0, 0.108)';\n Depths.depth8 = '0 3.2px 7.2px 0 rgba(0, 0, 0, 0.132), 0 0.6px 1.8px 0 rgba(0, 0, 0, 0.108)';\n Depths.depth16 = '0 6.4px 14.4px 0 rgba(0, 0, 0, 0.132), 0 1.2px 3.6px 0 rgba(0, 0, 0, 0.108)';\n Depths.depth64 = '0 25.6px 57.6px 0 rgba(0, 0, 0, 0.22), 0 4.8px 14.4px 0 rgba(0, 0, 0, 0.18)';\n})(Depths || (Depths = {}));\n//# sourceMappingURL=FluentDepths.js.map","import { Depths } from './FluentDepths';\nexport var DefaultEffects = {\n elevation4: Depths.depth4,\n elevation8: Depths.depth8,\n elevation16: Depths.depth16,\n elevation64: Depths.depth64,\n roundedCorner2: '2px',\n roundedCorner4: '4px',\n roundedCorner6: '6px',\n};\n//# sourceMappingURL=DefaultEffects.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { __assign, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { mergeStyles } from '@uifabric/merge-styles';\nimport { getTheme } from '@uifabric/styling';\nimport { KeyCodes, css, elementContains, getDocument, getElementIndexPath, getFocusableByIndexPath, getId, getNativeProps, getNextElement, getParent, getPreviousElement, getRTL, htmlElementProperties, initializeComponentRef, isElementFocusSubZone, isElementFocusZone, isElementTabbable, shouldWrapFocus, warnDeprecations, portalContainsElement, getWindow, findScrollableParent, createMergedRef, } from '@uifabric/utilities';\nimport { FocusZoneDirection, FocusZoneTabbableElements } from './FocusZone.types';\nvar IS_FOCUSABLE_ATTRIBUTE = 'data-is-focusable';\nvar IS_ENTER_DISABLED_ATTRIBUTE = 'data-disable-click-on-enter';\nvar FOCUSZONE_ID_ATTRIBUTE = 'data-focuszone-id';\nvar TABINDEX = 'tabindex';\nvar NO_VERTICAL_WRAP = 'data-no-vertical-wrap';\nvar NO_HORIZONTAL_WRAP = 'data-no-horizontal-wrap';\nvar LARGE_DISTANCE_FROM_CENTER = 999999999;\nvar LARGE_NEGATIVE_DISTANCE_FROM_CENTER = -999999999;\nvar focusZoneStyles;\nvar focusZoneClass = 'ms-FocusZone';\n/**\n * Raises a click on a target element based on a keyboard event.\n */\nfunction raiseClickFromKeyboardEvent(target, ev) {\n var _a, _b, _c, _d, _e, _f;\n var event;\n if (typeof MouseEvent === 'function') {\n event = new MouseEvent('click', {\n ctrlKey: (_a = ev) === null || _a === void 0 ? void 0 : _a.ctrlKey,\n metaKey: (_b = ev) === null || _b === void 0 ? void 0 : _b.metaKey,\n shiftKey: (_c = ev) === null || _c === void 0 ? void 0 : _c.shiftKey,\n altKey: (_d = ev) === null || _d === void 0 ? void 0 : _d.altKey,\n bubbles: (_e = ev) === null || _e === void 0 ? void 0 : _e.bubbles,\n cancelable: (_f = ev) === null || _f === void 0 ? void 0 : _f.cancelable,\n });\n }\n else {\n event = document.createEvent('MouseEvents');\n event.initMouseEvent('click', ev ? ev.bubbles : false, ev ? ev.cancelable : false, window, // not using getWindow() since this can only be run client side\n 0, // detail\n 0, // screen x\n 0, // screen y\n 0, // client x\n 0, // client y\n ev ? ev.ctrlKey : false, ev ? ev.altKey : false, ev ? ev.shiftKey : false, ev ? ev.metaKey : false, 0, // button\n null);\n }\n target.dispatchEvent(event);\n}\n// Helper function that will return a class for when the root is focused\nfunction getRootClass() {\n if (!focusZoneStyles) {\n focusZoneStyles = mergeStyles({\n selectors: {\n ':focus': {\n outline: 'none',\n },\n },\n }, focusZoneClass);\n }\n return focusZoneStyles;\n}\nvar _allInstances = {};\nvar _outerZones = new Set();\nvar ALLOWED_INPUT_TYPES = ['text', 'number', 'password', 'email', 'tel', 'url', 'search'];\nvar ALLOW_VIRTUAL_ELEMENTS = false;\nvar FocusZone = /** @class */ (function (_super) {\n __extends(FocusZone, _super);\n function FocusZone(props) {\n var _this = _super.call(this, props) || this;\n _this._root = React.createRef();\n _this._mergedRef = createMergedRef();\n _this._onFocus = function (ev) {\n if (_this._portalContainsElement(ev.target)) {\n // If the event target is inside a portal do not process the event.\n return;\n }\n var _a = _this.props, onActiveElementChanged = _a.onActiveElementChanged, \n // eslint-disable-next-line deprecation/deprecation\n doNotAllowFocusEventToPropagate = _a.doNotAllowFocusEventToPropagate, stopFocusPropagation = _a.stopFocusPropagation, \n // eslint-disable-next-line deprecation/deprecation\n onFocusNotification = _a.onFocusNotification, onFocus = _a.onFocus, shouldFocusInnerElementWhenReceivedFocus = _a.shouldFocusInnerElementWhenReceivedFocus, defaultTabbableElement = _a.defaultTabbableElement;\n var isImmediateDescendant = _this._isImmediateDescendantOfZone(ev.target);\n var newActiveElement;\n if (isImmediateDescendant) {\n newActiveElement = ev.target;\n }\n else {\n var parentElement = ev.target;\n while (parentElement && parentElement !== _this._root.current) {\n if (isElementTabbable(parentElement) && _this._isImmediateDescendantOfZone(parentElement)) {\n newActiveElement = parentElement;\n break;\n }\n parentElement = getParent(parentElement, ALLOW_VIRTUAL_ELEMENTS);\n }\n }\n // If an inner focusable element should be focused when FocusZone container receives focus\n if (shouldFocusInnerElementWhenReceivedFocus && ev.target === _this._root.current) {\n var maybeElementToFocus = defaultTabbableElement &&\n typeof defaultTabbableElement === 'function' &&\n defaultTabbableElement(_this._root.current);\n // try to focus defaultTabbable element\n if (maybeElementToFocus && isElementTabbable(maybeElementToFocus)) {\n newActiveElement = maybeElementToFocus;\n maybeElementToFocus.focus();\n }\n else {\n // force focus on first focusable element\n _this.focus(true);\n if (_this._activeElement) {\n // set to null as new active element was handled in method above\n newActiveElement = null;\n }\n }\n }\n var initialElementFocused = !_this._activeElement;\n // If the new active element is a child of this zone and received focus,\n // update alignment an immediate descendant\n if (newActiveElement && newActiveElement !== _this._activeElement) {\n if (isImmediateDescendant || initialElementFocused) {\n _this._setFocusAlignment(newActiveElement, true, true);\n }\n _this._activeElement = newActiveElement;\n if (initialElementFocused) {\n _this._updateTabIndexes();\n }\n }\n if (onActiveElementChanged) {\n onActiveElementChanged(_this._activeElement, ev);\n }\n if (stopFocusPropagation || doNotAllowFocusEventToPropagate) {\n ev.stopPropagation();\n }\n if (onFocus) {\n onFocus(ev);\n }\n else if (onFocusNotification) {\n onFocusNotification();\n }\n };\n _this._onBlur = function () {\n _this._setParkedFocus(false);\n };\n _this._onMouseDown = function (ev) {\n if (_this._portalContainsElement(ev.target)) {\n // If the event target is inside a portal do not process the event.\n return;\n }\n var disabled = _this.props.disabled;\n if (disabled) {\n return;\n }\n var target = ev.target;\n var path = [];\n while (target && target !== _this._root.current) {\n path.push(target);\n target = getParent(target, ALLOW_VIRTUAL_ELEMENTS);\n }\n while (path.length) {\n target = path.pop();\n if (target && isElementTabbable(target)) {\n _this._setActiveElement(target, true);\n }\n if (isElementFocusZone(target)) {\n // Stop here since the focus zone will take care of its own children.\n break;\n }\n }\n };\n /**\n * Handle the keystrokes.\n */\n _this._onKeyDown = function (ev, theme) {\n if (_this._portalContainsElement(ev.target)) {\n // If the event target is inside a portal do not process the event.\n return;\n }\n // eslint-disable-next-line deprecation/deprecation\n var _a = _this.props, direction = _a.direction, disabled = _a.disabled, isInnerZoneKeystroke = _a.isInnerZoneKeystroke, pagingSupportDisabled = _a.pagingSupportDisabled, shouldEnterInnerZone = _a.shouldEnterInnerZone;\n if (disabled) {\n return;\n }\n if (_this.props.onKeyDown) {\n _this.props.onKeyDown(ev);\n }\n // If the default has been prevented, do not process keyboard events.\n if (ev.isDefaultPrevented()) {\n return;\n }\n if (_this._getDocument().activeElement === _this._root.current && _this._isInnerZone) {\n // If this element has focus, it is being controlled by a parent.\n // Ignore the keystroke.\n return;\n }\n if (((shouldEnterInnerZone && shouldEnterInnerZone(ev)) || (isInnerZoneKeystroke && isInnerZoneKeystroke(ev))) &&\n _this._isImmediateDescendantOfZone(ev.target)) {\n // Try to focus\n var innerZone = _this._getFirstInnerZone();\n if (innerZone) {\n if (!innerZone.focus(true)) {\n return;\n }\n }\n else if (isElementFocusSubZone(ev.target)) {\n if (!_this.focusElement(getNextElement(ev.target, ev.target.firstChild, true))) {\n return;\n }\n }\n else {\n return;\n }\n }\n else if (ev.altKey) {\n return;\n }\n else {\n // eslint-disable-next-line @fluentui/deprecated-keyboard-event-props\n switch (ev.which) {\n case KeyCodes.space:\n if (_this._tryInvokeClickForFocusable(ev.target, ev)) {\n break;\n }\n return;\n case KeyCodes.left:\n if (direction !== FocusZoneDirection.vertical) {\n _this._preventDefaultWhenHandled(ev);\n if (_this._moveFocusLeft(theme)) {\n break;\n }\n }\n return;\n case KeyCodes.right:\n if (direction !== FocusZoneDirection.vertical) {\n _this._preventDefaultWhenHandled(ev);\n if (_this._moveFocusRight(theme)) {\n break;\n }\n }\n return;\n case KeyCodes.up:\n if (direction !== FocusZoneDirection.horizontal) {\n _this._preventDefaultWhenHandled(ev);\n if (_this._moveFocusUp()) {\n break;\n }\n }\n return;\n case KeyCodes.down:\n if (direction !== FocusZoneDirection.horizontal) {\n _this._preventDefaultWhenHandled(ev);\n if (_this._moveFocusDown()) {\n break;\n }\n }\n return;\n case KeyCodes.pageDown:\n if (!pagingSupportDisabled && _this._moveFocusPaging(true)) {\n break;\n }\n return;\n case KeyCodes.pageUp:\n if (!pagingSupportDisabled && _this._moveFocusPaging(false)) {\n break;\n }\n return;\n case KeyCodes.tab:\n if (\n // eslint-disable-next-line deprecation/deprecation\n _this.props.allowTabKey ||\n _this.props.handleTabKey === FocusZoneTabbableElements.all ||\n (_this.props.handleTabKey === FocusZoneTabbableElements.inputOnly &&\n _this._isElementInput(ev.target))) {\n var focusChanged = false;\n _this._processingTabKey = true;\n if (direction === FocusZoneDirection.vertical ||\n !_this._shouldWrapFocus(_this._activeElement, NO_HORIZONTAL_WRAP)) {\n focusChanged = ev.shiftKey ? _this._moveFocusUp() : _this._moveFocusDown();\n }\n else {\n var tabWithDirection = getRTL(theme) ? !ev.shiftKey : ev.shiftKey;\n focusChanged = tabWithDirection ? _this._moveFocusLeft(theme) : _this._moveFocusRight(theme);\n }\n _this._processingTabKey = false;\n if (focusChanged) {\n break;\n }\n else if (_this.props.shouldResetActiveElementWhenTabFromZone) {\n _this._activeElement = null;\n }\n }\n return;\n case KeyCodes.home:\n if (_this._isContentEditableElement(ev.target) ||\n (_this._isElementInput(ev.target) &&\n !_this._shouldInputLoseFocus(ev.target, false))) {\n return false;\n }\n var firstChild = _this._root.current && _this._root.current.firstChild;\n if (_this._root.current &&\n firstChild &&\n _this.focusElement(getNextElement(_this._root.current, firstChild, true))) {\n break;\n }\n return;\n case KeyCodes.end:\n if (_this._isContentEditableElement(ev.target) ||\n (_this._isElementInput(ev.target) &&\n !_this._shouldInputLoseFocus(ev.target, true))) {\n return false;\n }\n var lastChild = _this._root.current && _this._root.current.lastChild;\n if (_this._root.current &&\n _this.focusElement(getPreviousElement(_this._root.current, lastChild, true, true, true))) {\n break;\n }\n return;\n case KeyCodes.enter:\n if (_this._tryInvokeClickForFocusable(ev.target, ev)) {\n break;\n }\n return;\n default:\n return;\n }\n }\n ev.preventDefault();\n ev.stopPropagation();\n };\n _this._getHorizontalDistanceFromCenter = function (isForward, activeRect, targetRect) {\n // eslint-disable-next-line deprecation/deprecation\n var leftAlignment = _this._focusAlignment.left || _this._focusAlignment.x || 0;\n // ClientRect values can be floats that differ by very small fractions of a decimal.\n // If the difference between top and bottom are within a pixel then we should treat\n // them as equivalent by using Math.floor. For instance 5.2222 and 5.222221 should be equivalent,\n // but without Math.Floor they will be handled incorrectly.\n var targetRectTop = Math.floor(targetRect.top);\n var activeRectBottom = Math.floor(activeRect.bottom);\n var targetRectBottom = Math.floor(targetRect.bottom);\n var activeRectTop = Math.floor(activeRect.top);\n var isValidCandidateOnpagingDown = isForward && targetRectTop > activeRectBottom;\n var isValidCandidateOnpagingUp = !isForward && targetRectBottom < activeRectTop;\n if (isValidCandidateOnpagingDown || isValidCandidateOnpagingUp) {\n if (leftAlignment >= targetRect.left && leftAlignment <= targetRect.left + targetRect.width) {\n return 0;\n }\n return Math.abs(targetRect.left + targetRect.width / 2 - leftAlignment);\n }\n if (!_this._shouldWrapFocus(_this._activeElement, NO_VERTICAL_WRAP)) {\n return LARGE_NEGATIVE_DISTANCE_FROM_CENTER;\n }\n return LARGE_DISTANCE_FROM_CENTER;\n };\n // Manage componentRef resolution.\n initializeComponentRef(_this);\n if (process.env.NODE_ENV !== 'production') {\n warnDeprecations('FocusZone', props, {\n rootProps: undefined,\n allowTabKey: 'handleTabKey',\n elementType: 'as',\n ariaDescribedBy: 'aria-describedby',\n ariaLabelledBy: 'aria-labelledby',\n });\n }\n _this._id = getId('FocusZone');\n _this._focusAlignment = {\n left: 0,\n top: 0,\n };\n _this._processingTabKey = false;\n return _this;\n }\n /** Used for testing purposes only. */\n FocusZone.getOuterZones = function () {\n return _outerZones.size;\n };\n /**\n * Handle global tab presses so that we can patch tabindexes on the fly.\n * HEADS UP: This must not be an arrow function in order to be referentially equal among instances\n * for ref counting to work correctly!\n */\n FocusZone._onKeyDownCapture = function (ev) {\n // eslint-disable-next-line deprecation/deprecation, @fluentui/deprecated-keyboard-event-props\n if (ev.which === KeyCodes.tab) {\n _outerZones.forEach(function (zone) { return zone._updateTabIndexes(); });\n }\n };\n FocusZone.prototype.componentDidMount = function () {\n var root = this._root.current;\n _allInstances[this._id] = this;\n if (root) {\n this._windowElement = getWindow(root);\n var parentElement = getParent(root, ALLOW_VIRTUAL_ELEMENTS);\n while (parentElement && parentElement !== this._getDocument().body && parentElement.nodeType === 1) {\n if (isElementFocusZone(parentElement)) {\n this._isInnerZone = true;\n break;\n }\n parentElement = getParent(parentElement, ALLOW_VIRTUAL_ELEMENTS);\n }\n if (!this._isInnerZone) {\n _outerZones.add(this);\n if (this._windowElement && _outerZones.size === 1) {\n this._windowElement.addEventListener('keydown', FocusZone._onKeyDownCapture, true);\n }\n }\n this._root.current && this._root.current.addEventListener('blur', this._onBlur, true);\n // Assign initial tab indexes so that we can set initial focus as appropriate.\n this._updateTabIndexes();\n if (this.props.defaultTabbableElement && typeof this.props.defaultTabbableElement === 'string') {\n this._activeElement = this._getDocument().querySelector(this.props.defaultTabbableElement);\n // eslint-disable-next-line deprecation/deprecation\n }\n else if (this.props.defaultActiveElement) {\n // eslint-disable-next-line deprecation/deprecation\n this._activeElement = this._getDocument().querySelector(this.props.defaultActiveElement);\n }\n if (this.props.shouldFocusOnMount) {\n this.focus();\n }\n }\n };\n FocusZone.prototype.componentDidUpdate = function () {\n var root = this._root.current;\n var doc = this._getDocument();\n if (doc &&\n this._lastIndexPath &&\n (doc.activeElement === doc.body ||\n doc.activeElement === null ||\n (!this.props.preventFocusRestoration && doc.activeElement === root))) {\n // The element has been removed after the render, attempt to restore focus.\n var elementToFocus = getFocusableByIndexPath(root, this._lastIndexPath);\n if (elementToFocus) {\n this._setActiveElement(elementToFocus, true);\n elementToFocus.focus();\n this._setParkedFocus(false);\n }\n else {\n // We had a focus path to restore, but now that path is unresolvable. Park focus\n // on the container until we can try again.\n this._setParkedFocus(true);\n }\n }\n };\n FocusZone.prototype.componentWillUnmount = function () {\n delete _allInstances[this._id];\n if (!this._isInnerZone) {\n _outerZones.delete(this);\n // If this is the last outer zone, remove the keydown listener.\n if (this._windowElement && _outerZones.size === 0) {\n this._windowElement.removeEventListener('keydown', FocusZone._onKeyDownCapture, true);\n }\n }\n if (this._root.current) {\n this._root.current.removeEventListener('blur', this._onBlur, true);\n }\n this._activeElement = null;\n this._defaultFocusElement = null;\n };\n FocusZone.prototype.render = function () {\n var _this = this;\n // eslint-disable-next-line deprecation/deprecation\n var _a = this.props, tag = _a.as, elementType = _a.elementType, rootProps = _a.rootProps, ariaDescribedBy = _a.ariaDescribedBy, ariaLabelledBy = _a.ariaLabelledBy, className = _a.className;\n var divProps = getNativeProps(this.props, htmlElementProperties);\n var Tag = tag || elementType || 'div';\n // Note, right before rendering/reconciling proceeds, we need to record if focus\n // was in the zone before the update. This helper will track this and, if focus\n // was actually in the zone, what the index path to the element is at this time.\n // Then, later in componentDidUpdate, we can evaluate if we need to restore it in\n // the case the element was removed.\n this._evaluateFocusBeforeRender();\n // Only support RTL defined in global theme, not contextual theme/RTL.\n var theme = getTheme();\n return (React.createElement(Tag, __assign({ \"aria-labelledby\": ariaLabelledBy, \"aria-describedby\": ariaDescribedBy }, divProps, rootProps, { \n // Once the getClassName correctly memoizes inputs this should\n // be replaced so that className is passed to getRootClass and is included there so\n // the class names will always be in the same order.\n className: css(getRootClass(), className), \n // eslint-disable-next-line deprecation/deprecation\n ref: this._mergedRef(this.props.elementRef, this._root), \"data-focuszone-id\": this._id, \n // eslint-disable-next-line react/jsx-no-bind\n onKeyDown: function (ev) { return _this._onKeyDown(ev, theme); }, onFocus: this._onFocus, onMouseDownCapture: this._onMouseDown }), this.props.children));\n };\n /**\n * Sets focus to the first tabbable item in the zone.\n * @param forceIntoFirstElement - If true, focus will be forced into the first element, even\n * if focus is already in the focus zone.\n * @returns True if focus could be set to an active element, false if no operation was taken.\n */\n FocusZone.prototype.focus = function (forceIntoFirstElement) {\n if (forceIntoFirstElement === void 0) { forceIntoFirstElement = false; }\n if (this._root.current) {\n if (!forceIntoFirstElement &&\n this._root.current.getAttribute(IS_FOCUSABLE_ATTRIBUTE) === 'true' &&\n this._isInnerZone) {\n var ownerZoneElement = this._getOwnerZone(this._root.current);\n if (ownerZoneElement !== this._root.current) {\n var ownerZone = _allInstances[ownerZoneElement.getAttribute(FOCUSZONE_ID_ATTRIBUTE)];\n return !!ownerZone && ownerZone.focusElement(this._root.current);\n }\n return false;\n }\n else if (!forceIntoFirstElement &&\n this._activeElement &&\n elementContains(this._root.current, this._activeElement) &&\n isElementTabbable(this._activeElement)) {\n this._activeElement.focus();\n return true;\n }\n else {\n var firstChild = this._root.current.firstChild;\n return this.focusElement(getNextElement(this._root.current, firstChild, true));\n }\n }\n return false;\n };\n /**\n * Sets focus to the last tabbable item in the zone.\n * @returns True if focus could be set to an active element, false if no operation was taken.\n */\n FocusZone.prototype.focusLast = function () {\n if (this._root.current) {\n var lastChild = this._root.current && this._root.current.lastChild;\n return this.focusElement(getPreviousElement(this._root.current, lastChild, true, true, true));\n }\n return false;\n };\n /**\n * Sets focus to a specific child element within the zone. This can be used in conjunction with\n * shouldReceiveFocus to create delayed focus scenarios (like animate the scroll position to the correct\n * location and then focus.)\n * @param element - The child element within the zone to focus.\n * @param forceAlignment - If true, focus alignment will be set according to the element provided.\n * @returns True if focus could be set to an active element, false if no operation was taken.\n */\n FocusZone.prototype.focusElement = function (element, forceAlignment) {\n // eslint-disable-next-line deprecation/deprecation\n var _a = this.props, onBeforeFocus = _a.onBeforeFocus, shouldReceiveFocus = _a.shouldReceiveFocus;\n if ((shouldReceiveFocus && !shouldReceiveFocus(element)) || (onBeforeFocus && !onBeforeFocus(element))) {\n return false;\n }\n if (element) {\n // when we set focus to a specific child, we should recalculate the alignment depending on its position.\n this._setActiveElement(element, forceAlignment);\n if (this._activeElement) {\n this._activeElement.focus();\n }\n return true;\n }\n return false;\n };\n /**\n * Forces horizontal alignment in the context of vertical arrowing to use specific point as the reference,\n * rather than a center based on the last horizontal motion.\n * @param point - the new reference point.\n */\n FocusZone.prototype.setFocusAlignment = function (point) {\n this._focusAlignment = point;\n };\n FocusZone.prototype._evaluateFocusBeforeRender = function () {\n var root = this._root.current;\n var doc = this._getDocument();\n if (doc) {\n var focusedElement = doc.activeElement;\n // Only update the index path if we are not parked on the root.\n if (focusedElement !== root) {\n var shouldRestoreFocus = elementContains(root, focusedElement, false);\n this._lastIndexPath = shouldRestoreFocus ? getElementIndexPath(root, focusedElement) : undefined;\n }\n }\n };\n /**\n * When focus is in the zone at render time but then all focusable elements are removed,\n * we \"park\" focus temporarily on the root. Once we update with focusable children, we restore\n * focus to the closest path from previous. If the user tabs away from the parked container,\n * we restore focusability to the pre-parked state.\n */\n FocusZone.prototype._setParkedFocus = function (isParked) {\n var root = this._root.current;\n if (root && this._isParked !== isParked) {\n this._isParked = isParked;\n if (isParked) {\n if (!this.props.allowFocusRoot) {\n this._parkedTabIndex = root.getAttribute('tabindex');\n root.setAttribute('tabindex', '-1');\n }\n root.focus();\n }\n else if (!this.props.allowFocusRoot) {\n if (this._parkedTabIndex) {\n root.setAttribute('tabindex', this._parkedTabIndex);\n this._parkedTabIndex = undefined;\n }\n else {\n root.removeAttribute('tabindex');\n }\n }\n }\n };\n FocusZone.prototype._setActiveElement = function (element, forceAlignment) {\n var previousActiveElement = this._activeElement;\n this._activeElement = element;\n if (previousActiveElement) {\n if (isElementFocusZone(previousActiveElement)) {\n this._updateTabIndexes(previousActiveElement);\n }\n previousActiveElement.tabIndex = -1;\n }\n if (this._activeElement) {\n if (!this._focusAlignment || forceAlignment) {\n this._setFocusAlignment(element, true, true);\n }\n this._activeElement.tabIndex = 0;\n }\n };\n FocusZone.prototype._preventDefaultWhenHandled = function (ev) {\n this.props.preventDefaultWhenHandled && ev.preventDefault();\n };\n /**\n * Walk up the dom try to find a focusable element.\n */\n FocusZone.prototype._tryInvokeClickForFocusable = function (targetElement, ev) {\n var target = targetElement;\n if (target === this._root.current || !this.props.shouldRaiseClicks) {\n return false;\n }\n do {\n if (target.tagName === 'BUTTON' ||\n target.tagName === 'A' ||\n target.tagName === 'INPUT' ||\n target.tagName === 'TEXTAREA') {\n return false;\n }\n if (this._isImmediateDescendantOfZone(target) &&\n target.getAttribute(IS_FOCUSABLE_ATTRIBUTE) === 'true' &&\n target.getAttribute(IS_ENTER_DISABLED_ATTRIBUTE) !== 'true') {\n raiseClickFromKeyboardEvent(target, ev);\n return true;\n }\n target = getParent(target, ALLOW_VIRTUAL_ELEMENTS);\n } while (target !== this._root.current);\n return false;\n };\n /**\n * Traverse to find first child zone.\n */\n FocusZone.prototype._getFirstInnerZone = function (rootElement) {\n rootElement = rootElement || this._activeElement || this._root.current;\n if (!rootElement) {\n return null;\n }\n if (isElementFocusZone(rootElement)) {\n return _allInstances[rootElement.getAttribute(FOCUSZONE_ID_ATTRIBUTE)];\n }\n var child = rootElement.firstElementChild;\n while (child) {\n if (isElementFocusZone(child)) {\n return _allInstances[child.getAttribute(FOCUSZONE_ID_ATTRIBUTE)];\n }\n var match = this._getFirstInnerZone(child);\n if (match) {\n return match;\n }\n child = child.nextElementSibling;\n }\n return null;\n };\n FocusZone.prototype._moveFocus = function (isForward, getDistanceFromCenter, ev, useDefaultWrap) {\n if (useDefaultWrap === void 0) { useDefaultWrap = true; }\n var element = this._activeElement;\n var candidateDistance = -1;\n var candidateElement = undefined;\n var changedFocus = false;\n var isBidirectional = this.props.direction === FocusZoneDirection.bidirectional;\n if (!element || !this._root.current) {\n return false;\n }\n if (this._isElementInput(element)) {\n if (!this._shouldInputLoseFocus(element, isForward)) {\n return false;\n }\n }\n var activeRect = isBidirectional ? element.getBoundingClientRect() : null;\n do {\n element = (isForward\n ? getNextElement(this._root.current, element)\n : getPreviousElement(this._root.current, element));\n if (isBidirectional) {\n if (element) {\n var targetRect = element.getBoundingClientRect();\n var elementDistance = getDistanceFromCenter(activeRect, targetRect);\n if (elementDistance === -1 && candidateDistance === -1) {\n candidateElement = element;\n break;\n }\n if (elementDistance > -1 && (candidateDistance === -1 || elementDistance < candidateDistance)) {\n candidateDistance = elementDistance;\n candidateElement = element;\n }\n if (candidateDistance >= 0 && elementDistance < 0) {\n break;\n }\n }\n }\n else {\n candidateElement = element;\n break;\n }\n } while (element);\n // Focus the closest candidate\n if (candidateElement && candidateElement !== this._activeElement) {\n changedFocus = true;\n this.focusElement(candidateElement);\n }\n else if (this.props.isCircularNavigation && useDefaultWrap) {\n if (isForward) {\n return this.focusElement(getNextElement(this._root.current, this._root.current.firstElementChild, true));\n }\n else {\n return this.focusElement(getPreviousElement(this._root.current, this._root.current.lastElementChild, true, true, true));\n }\n }\n return changedFocus;\n };\n FocusZone.prototype._moveFocusDown = function () {\n var _this = this;\n var targetTop = -1;\n // eslint-disable-next-line deprecation/deprecation\n var leftAlignment = this._focusAlignment.left || this._focusAlignment.x || 0;\n if (this._moveFocus(true, function (activeRect, targetRect) {\n var distance = -1;\n // ClientRect values can be floats that differ by very small fractions of a decimal.\n // If the difference between top and bottom are within a pixel then we should treat\n // them as equivalent by using Math.floor. For instance 5.2222 and 5.222221 should be equivalent,\n // but without Math.Floor they will be handled incorrectly.\n var targetRectTop = Math.floor(targetRect.top);\n var activeRectBottom = Math.floor(activeRect.bottom);\n if (targetRectTop < activeRectBottom) {\n if (!_this._shouldWrapFocus(_this._activeElement, NO_VERTICAL_WRAP)) {\n return LARGE_NEGATIVE_DISTANCE_FROM_CENTER;\n }\n return LARGE_DISTANCE_FROM_CENTER;\n }\n if ((targetTop === -1 && targetRectTop >= activeRectBottom) || targetRectTop === targetTop) {\n targetTop = targetRectTop;\n if (leftAlignment >= targetRect.left && leftAlignment <= targetRect.left + targetRect.width) {\n distance = 0;\n }\n else {\n distance = Math.abs(targetRect.left + targetRect.width / 2 - leftAlignment);\n }\n }\n return distance;\n })) {\n this._setFocusAlignment(this._activeElement, false, true);\n return true;\n }\n return false;\n };\n FocusZone.prototype._moveFocusUp = function () {\n var _this = this;\n var targetTop = -1;\n // eslint-disable-next-line deprecation/deprecation\n var leftAlignment = this._focusAlignment.left || this._focusAlignment.x || 0;\n if (this._moveFocus(false, function (activeRect, targetRect) {\n var distance = -1;\n // ClientRect values can be floats that differ by very small fractions of a decimal.\n // If the difference between top and bottom are within a pixel then we should treat\n // them as equivalent by using Math.floor. For instance 5.2222 and 5.222221 should be equivalent,\n // but without Math.Floor they will be handled incorrectly.\n var targetRectBottom = Math.floor(targetRect.bottom);\n var targetRectTop = Math.floor(targetRect.top);\n var activeRectTop = Math.floor(activeRect.top);\n if (targetRectBottom > activeRectTop) {\n if (!_this._shouldWrapFocus(_this._activeElement, NO_VERTICAL_WRAP)) {\n return LARGE_NEGATIVE_DISTANCE_FROM_CENTER;\n }\n return LARGE_DISTANCE_FROM_CENTER;\n }\n if ((targetTop === -1 && targetRectBottom <= activeRectTop) || targetRectTop === targetTop) {\n targetTop = targetRectTop;\n if (leftAlignment >= targetRect.left && leftAlignment <= targetRect.left + targetRect.width) {\n distance = 0;\n }\n else {\n distance = Math.abs(targetRect.left + targetRect.width / 2 - leftAlignment);\n }\n }\n return distance;\n })) {\n this._setFocusAlignment(this._activeElement, false, true);\n return true;\n }\n return false;\n };\n FocusZone.prototype._moveFocusLeft = function (theme) {\n var _this = this;\n var shouldWrap = this._shouldWrapFocus(this._activeElement, NO_HORIZONTAL_WRAP);\n if (this._moveFocus(getRTL(theme), function (activeRect, targetRect) {\n var distance = -1;\n var topBottomComparison;\n if (getRTL(theme)) {\n // When in RTL, this comparison should be the same as the one in _moveFocusRight for LTR.\n // Going left at a leftmost rectangle will go down a line instead of up a line like in LTR.\n // This is important, because we want to be comparing the top of the target rect\n // with the bottom of the active rect.\n topBottomComparison = parseFloat(targetRect.top.toFixed(3)) < parseFloat(activeRect.bottom.toFixed(3));\n }\n else {\n topBottomComparison = parseFloat(targetRect.bottom.toFixed(3)) > parseFloat(activeRect.top.toFixed(3));\n }\n if (topBottomComparison &&\n targetRect.right <= activeRect.right &&\n _this.props.direction !== FocusZoneDirection.vertical) {\n distance = activeRect.right - targetRect.right;\n }\n else if (!shouldWrap) {\n distance = LARGE_NEGATIVE_DISTANCE_FROM_CENTER;\n }\n return distance;\n }, undefined /*ev*/, shouldWrap)) {\n this._setFocusAlignment(this._activeElement, true, false);\n return true;\n }\n return false;\n };\n FocusZone.prototype._moveFocusRight = function (theme) {\n var _this = this;\n var shouldWrap = this._shouldWrapFocus(this._activeElement, NO_HORIZONTAL_WRAP);\n if (this._moveFocus(!getRTL(theme), function (activeRect, targetRect) {\n var distance = -1;\n var topBottomComparison;\n if (getRTL(theme)) {\n // When in RTL, this comparison should be the same as the one in _moveFocusLeft for LTR.\n // Going right at a rightmost rectangle will go up a line instead of down a line like in LTR.\n // This is important, because we want to be comparing the bottom of the target rect\n // with the top of the active rect.\n topBottomComparison = parseFloat(targetRect.bottom.toFixed(3)) > parseFloat(activeRect.top.toFixed(3));\n }\n else {\n topBottomComparison = parseFloat(targetRect.top.toFixed(3)) < parseFloat(activeRect.bottom.toFixed(3));\n }\n if (topBottomComparison &&\n targetRect.left >= activeRect.left &&\n _this.props.direction !== FocusZoneDirection.vertical) {\n distance = targetRect.left - activeRect.left;\n }\n else if (!shouldWrap) {\n distance = LARGE_NEGATIVE_DISTANCE_FROM_CENTER;\n }\n return distance;\n }, undefined /*ev*/, shouldWrap)) {\n this._setFocusAlignment(this._activeElement, true, false);\n return true;\n }\n return false;\n };\n FocusZone.prototype._moveFocusPaging = function (isForward, useDefaultWrap) {\n if (useDefaultWrap === void 0) { useDefaultWrap = true; }\n var element = this._activeElement;\n if (!element || !this._root.current) {\n return false;\n }\n if (this._isElementInput(element)) {\n if (!this._shouldInputLoseFocus(element, isForward)) {\n return false;\n }\n }\n var scrollableParent = findScrollableParent(element);\n if (!scrollableParent) {\n return false;\n }\n var candidateDistance = -1;\n var candidateElement = undefined;\n var targetTop = -1;\n var targetBottom = -1;\n var pagesize = scrollableParent.clientHeight;\n var activeRect = element.getBoundingClientRect();\n do {\n element = isForward\n ? getNextElement(this._root.current, element)\n : getPreviousElement(this._root.current, element);\n if (element) {\n var targetRect = element.getBoundingClientRect();\n var targetRectTop = Math.floor(targetRect.top);\n var activeRectBottom = Math.floor(activeRect.bottom);\n var targetRectBottom = Math.floor(targetRect.bottom);\n var activeRectTop = Math.floor(activeRect.top);\n var elementDistance = this._getHorizontalDistanceFromCenter(isForward, activeRect, targetRect);\n var isElementPassedPageSizeOnPagingDown = isForward && targetRectTop > activeRectBottom + pagesize;\n var isElementPassedPageSizeOnPagingUp = !isForward && targetRectBottom < activeRectTop - pagesize;\n if (isElementPassedPageSizeOnPagingDown || isElementPassedPageSizeOnPagingUp) {\n break;\n }\n if (elementDistance > -1) {\n // for paging down\n if (isForward && targetRectTop > targetTop) {\n targetTop = targetRectTop;\n candidateDistance = elementDistance;\n candidateElement = element;\n }\n else if (!isForward && targetRectBottom < targetBottom) {\n // for paging up\n targetBottom = targetRectBottom;\n candidateDistance = elementDistance;\n candidateElement = element;\n }\n else if (candidateDistance === -1 || elementDistance <= candidateDistance) {\n candidateDistance = elementDistance;\n candidateElement = element;\n }\n }\n }\n } while (element);\n var changedFocus = false;\n // Focus the closest candidate\n if (candidateElement && candidateElement !== this._activeElement) {\n changedFocus = true;\n this.focusElement(candidateElement);\n this._setFocusAlignment(candidateElement, false, true);\n }\n else if (this.props.isCircularNavigation && useDefaultWrap) {\n if (isForward) {\n return this.focusElement(getNextElement(this._root.current, this._root.current.firstElementChild, true));\n }\n return this.focusElement(getPreviousElement(this._root.current, this._root.current.lastElementChild, true, true, true));\n }\n return changedFocus;\n };\n FocusZone.prototype._setFocusAlignment = function (element, isHorizontal, isVertical) {\n if (this.props.direction === FocusZoneDirection.bidirectional &&\n (!this._focusAlignment || isHorizontal || isVertical)) {\n var rect = element.getBoundingClientRect();\n var left = rect.left + rect.width / 2;\n var top_1 = rect.top + rect.height / 2;\n if (!this._focusAlignment) {\n this._focusAlignment = { left: left, top: top_1 };\n }\n if (isHorizontal) {\n this._focusAlignment.left = left;\n }\n if (isVertical) {\n this._focusAlignment.top = top_1;\n }\n }\n };\n FocusZone.prototype._isImmediateDescendantOfZone = function (element) {\n return this._getOwnerZone(element) === this._root.current;\n };\n FocusZone.prototype._getOwnerZone = function (element) {\n var parentElement = getParent(element, ALLOW_VIRTUAL_ELEMENTS);\n while (parentElement && parentElement !== this._root.current && parentElement !== this._getDocument().body) {\n if (isElementFocusZone(parentElement)) {\n return parentElement;\n }\n parentElement = getParent(parentElement, ALLOW_VIRTUAL_ELEMENTS);\n }\n return parentElement;\n };\n FocusZone.prototype._updateTabIndexes = function (element) {\n if (!this._activeElement &&\n this.props.defaultTabbableElement &&\n typeof this.props.defaultTabbableElement === 'function') {\n this._activeElement = this.props.defaultTabbableElement(this._root.current);\n }\n if (!element && this._root.current) {\n this._defaultFocusElement = null;\n element = this._root.current;\n if (this._activeElement && !elementContains(element, this._activeElement)) {\n this._activeElement = null;\n }\n }\n // If active element changes state to disabled, set it to null.\n // Otherwise, we lose keyboard accessibility to other elements in focus zone.\n if (this._activeElement && !isElementTabbable(this._activeElement)) {\n this._activeElement = null;\n }\n var childNodes = element && element.children;\n for (var childIndex = 0; childNodes && childIndex < childNodes.length; childIndex++) {\n var child = childNodes[childIndex];\n if (!isElementFocusZone(child)) {\n // If the item is explicitly set to not be focusable then TABINDEX needs to be set to -1.\n if (child.getAttribute && child.getAttribute(IS_FOCUSABLE_ATTRIBUTE) === 'false') {\n child.setAttribute(TABINDEX, '-1');\n }\n if (isElementTabbable(child)) {\n if (this.props.disabled) {\n child.setAttribute(TABINDEX, '-1');\n }\n else if (!this._isInnerZone &&\n ((!this._activeElement && !this._defaultFocusElement) || this._activeElement === child)) {\n this._defaultFocusElement = child;\n if (child.getAttribute(TABINDEX) !== '0') {\n child.setAttribute(TABINDEX, '0');\n }\n }\n else if (child.getAttribute(TABINDEX) !== '-1') {\n child.setAttribute(TABINDEX, '-1');\n }\n }\n else if (child.tagName === 'svg' && child.getAttribute('focusable') !== 'false') {\n // Disgusting IE hack. Sad face.\n child.setAttribute('focusable', 'false');\n }\n }\n else if (child.getAttribute(IS_FOCUSABLE_ATTRIBUTE) === 'true') {\n if (!this._isInnerZone &&\n ((!this._activeElement && !this._defaultFocusElement) || this._activeElement === child)) {\n this._defaultFocusElement = child;\n if (child.getAttribute(TABINDEX) !== '0') {\n child.setAttribute(TABINDEX, '0');\n }\n }\n else if (child.getAttribute(TABINDEX) !== '-1') {\n child.setAttribute(TABINDEX, '-1');\n }\n }\n this._updateTabIndexes(child);\n }\n };\n FocusZone.prototype._isContentEditableElement = function (element) {\n return element && element.getAttribute('contenteditable') === 'true';\n };\n FocusZone.prototype._isElementInput = function (element) {\n if (element &&\n element.tagName &&\n (element.tagName.toLowerCase() === 'input' || element.tagName.toLowerCase() === 'textarea')) {\n return true;\n }\n return false;\n };\n FocusZone.prototype._shouldInputLoseFocus = function (element, isForward) {\n // If a tab was used, we want to focus on the next element.\n if (!this._processingTabKey &&\n element &&\n element.type &&\n ALLOWED_INPUT_TYPES.indexOf(element.type.toLowerCase()) > -1) {\n var selectionStart = element.selectionStart;\n var selectionEnd = element.selectionEnd;\n var isRangeSelected = selectionStart !== selectionEnd;\n var inputValue = element.value;\n var isReadonly = element.readOnly;\n // We shouldn't lose focus in the following cases:\n // 1. There is range selected.\n // 2. When selection start is larger than 0 and it is backward and not readOnly.\n // 3. when selection start is not the end of length, it is forward and not readOnly.\n // 4. We press any of the arrow keys when our handleTabKey isn't none or undefined (only losing focus if we hit\n // tab) and if shouldInputLoseFocusOnArrowKey is defined, if scenario prefers to not loose the focus which is\n // determined by calling the callback shouldInputLoseFocusOnArrowKey\n if (isRangeSelected ||\n (selectionStart > 0 && !isForward && !isReadonly) ||\n (selectionStart !== inputValue.length && isForward && !isReadonly) ||\n (!!this.props.handleTabKey &&\n !(this.props.shouldInputLoseFocusOnArrowKey && this.props.shouldInputLoseFocusOnArrowKey(element)))) {\n return false;\n }\n }\n return true;\n };\n FocusZone.prototype._shouldWrapFocus = function (element, noWrapDataAttribute) {\n return this.props.checkForNoWrap ? shouldWrapFocus(element, noWrapDataAttribute) : true;\n };\n /**\n * Returns true if the element is a descendant of the FocusZone through a React portal.\n */\n FocusZone.prototype._portalContainsElement = function (element) {\n return element && !!this._root.current && portalContainsElement(element, this._root.current);\n };\n FocusZone.prototype._getDocument = function () {\n return getDocument(this._root.current);\n };\n FocusZone.defaultProps = {\n isCircularNavigation: false,\n direction: FocusZoneDirection.bidirectional,\n shouldRaiseClicks: true,\n };\n return FocusZone;\n}(React.Component));\nexport { FocusZone };\n//# sourceMappingURL=FocusZone.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { parser, operationName, DocumentType, getApolloContext } from '@apollo/react-common';\nexport { ApolloConsumer, ApolloProvider, getApolloContext, resetApolloContext } from '@apollo/react-common';\nimport { __extends, __assign } from 'tslib';\nimport React, { useRef, useContext, useReducer, useEffect, useState } from 'react';\nimport { NetworkStatus, ApolloError } from 'apollo-client';\nimport { equal } from '@wry/equality';\nimport { invariant } from 'ts-invariant';\n\nvar OperationData = (function () {\n function OperationData(options, context) {\n this.isMounted = false;\n this.previousOptions = {};\n this.context = {};\n this.options = {};\n this.options = options || {};\n this.context = context || {};\n }\n OperationData.prototype.getOptions = function () {\n return this.options;\n };\n OperationData.prototype.setOptions = function (newOptions, storePrevious) {\n if (storePrevious === void 0) { storePrevious = false; }\n if (storePrevious && !equal(this.options, newOptions)) {\n this.previousOptions = this.options;\n }\n this.options = newOptions;\n };\n OperationData.prototype.unmount = function () {\n this.isMounted = false;\n };\n OperationData.prototype.refreshClient = function () {\n var client = (this.options && this.options.client) ||\n (this.context && this.context.client);\n process.env.NODE_ENV === \"production\" ? invariant(!!client, 2) : invariant(!!client, 'Could not find \"client\" in the context or passed in as an option. ' +\n 'Wrap the root component in an , or pass an ' +\n 'ApolloClient instance in via options.');\n var isNew = false;\n if (client !== this.client) {\n isNew = true;\n this.client = client;\n this.cleanup();\n }\n return {\n client: this.client,\n isNew: isNew\n };\n };\n OperationData.prototype.verifyDocumentType = function (document, type) {\n var operation = parser(document);\n var requiredOperationName = operationName(type);\n var usedOperationName = operationName(operation.type);\n process.env.NODE_ENV === \"production\" ? invariant(operation.type === type, 3) : invariant(operation.type === type, \"Running a \" + requiredOperationName + \" requires a graphql \" +\n (requiredOperationName + \", but a \" + usedOperationName + \" was used instead.\"));\n };\n return OperationData;\n}());\n\nvar QueryData = (function (_super) {\n __extends(QueryData, _super);\n function QueryData(_a) {\n var options = _a.options, context = _a.context, onNewData = _a.onNewData;\n var _this = _super.call(this, options, context) || this;\n _this.previousData = {};\n _this.currentObservable = {};\n _this.runLazy = false;\n _this.runLazyQuery = function (options) {\n _this.cleanup();\n _this.runLazy = true;\n _this.lazyOptions = options;\n _this.onNewData();\n };\n _this.getExecuteResult = function () {\n var result = _this.getQueryResult();\n _this.startQuerySubscription();\n return result;\n };\n _this.obsRefetch = function (variables) {\n return _this.currentObservable.query.refetch(variables);\n };\n _this.obsFetchMore = function (fetchMoreOptions) { return _this.currentObservable.query.fetchMore(fetchMoreOptions); };\n _this.obsUpdateQuery = function (mapFn) { return _this.currentObservable.query.updateQuery(mapFn); };\n _this.obsStartPolling = function (pollInterval) {\n _this.currentObservable &&\n _this.currentObservable.query &&\n _this.currentObservable.query.startPolling(pollInterval);\n };\n _this.obsStopPolling = function () {\n _this.currentObservable &&\n _this.currentObservable.query &&\n _this.currentObservable.query.stopPolling();\n };\n _this.obsSubscribeToMore = function (options) { return _this.currentObservable.query.subscribeToMore(options); };\n _this.onNewData = onNewData;\n return _this;\n }\n QueryData.prototype.execute = function () {\n this.refreshClient();\n var _a = this.getOptions(), skip = _a.skip, query = _a.query;\n if (skip || query !== this.previousData.query) {\n this.removeQuerySubscription();\n this.previousData.query = query;\n }\n this.updateObservableQuery();\n if (this.isMounted)\n this.startQuerySubscription();\n return this.getExecuteSsrResult() || this.getExecuteResult();\n };\n QueryData.prototype.executeLazy = function () {\n return !this.runLazy\n ? [\n this.runLazyQuery,\n {\n loading: false,\n networkStatus: NetworkStatus.ready,\n called: false,\n data: undefined,\n },\n ]\n : [this.runLazyQuery, this.execute()];\n };\n QueryData.prototype.fetchData = function () {\n var options = this.getOptions();\n if (options.skip || options.ssr === false)\n return false;\n var obs = this.currentObservable.query;\n var currentResult = obs.getCurrentResult();\n return currentResult.loading ? obs.result() : false;\n };\n QueryData.prototype.afterExecute = function (_a) {\n var _b = (_a === void 0 ? {} : _a).lazy, lazy = _b === void 0 ? false : _b;\n this.isMounted = true;\n if (!lazy || this.runLazy) {\n this.handleErrorOrCompleted();\n }\n this.previousOptions = this.getOptions();\n return this.unmount.bind(this);\n };\n QueryData.prototype.cleanup = function () {\n this.removeQuerySubscription();\n delete this.currentObservable.query;\n delete this.previousData.result;\n };\n QueryData.prototype.getOptions = function () {\n var options = _super.prototype.getOptions.call(this);\n if (this.lazyOptions) {\n options.variables = __assign(__assign({}, options.variables), this.lazyOptions.variables);\n options.context = __assign(__assign({}, options.context), this.lazyOptions.context);\n }\n if (this.runLazy) {\n delete options.skip;\n }\n return options;\n };\n QueryData.prototype.ssrInitiated = function () {\n return this.context && this.context.renderPromises;\n };\n QueryData.prototype.getExecuteSsrResult = function () {\n var ssrDisabled = this.getOptions().ssr === false;\n var fetchDisabled = this.refreshClient().client.disableNetworkFetches;\n var ssrLoading = __assign({ loading: true, networkStatus: NetworkStatus.loading, called: true, data: undefined, stale: false, client: this.client }, this.observableQueryFields());\n if (ssrDisabled && (this.ssrInitiated() || fetchDisabled)) {\n this.previousData.result = ssrLoading;\n return ssrLoading;\n }\n var result;\n if (this.ssrInitiated()) {\n result =\n this.context.renderPromises.addQueryPromise(this, this.getExecuteResult) || ssrLoading;\n }\n return result;\n };\n QueryData.prototype.prepareObservableQueryOptions = function () {\n var options = this.getOptions();\n this.verifyDocumentType(options.query, DocumentType.Query);\n var displayName = options.displayName || 'Query';\n if (this.ssrInitiated() &&\n (options.fetchPolicy === 'network-only' ||\n options.fetchPolicy === 'cache-and-network')) {\n options.fetchPolicy = 'cache-first';\n }\n return __assign(__assign({}, options), { displayName: displayName, context: options.context, metadata: { reactComponent: { displayName: displayName } } });\n };\n QueryData.prototype.initializeObservableQuery = function () {\n var _a, _b;\n if (this.ssrInitiated()) {\n this.currentObservable.query = this.context.renderPromises.getSSRObservable(this.getOptions());\n }\n if (!this.currentObservable.query) {\n var observableQueryOptions = this.prepareObservableQueryOptions();\n this.previousData.observableQueryOptions = __assign(__assign({}, observableQueryOptions), { children: null });\n this.currentObservable.query = this.refreshClient().client.watchQuery(__assign({}, observableQueryOptions));\n if (this.ssrInitiated()) {\n (_b = (_a = this.context) === null || _a === void 0 ? void 0 : _a.renderPromises) === null || _b === void 0 ? void 0 : _b.registerSSRObservable(this.currentObservable.query, observableQueryOptions);\n }\n }\n };\n QueryData.prototype.updateObservableQuery = function () {\n if (!this.currentObservable.query) {\n this.initializeObservableQuery();\n return;\n }\n var newObservableQueryOptions = __assign(__assign({}, this.prepareObservableQueryOptions()), { children: null });\n if (!equal(newObservableQueryOptions, this.previousData.observableQueryOptions)) {\n this.previousData.observableQueryOptions = newObservableQueryOptions;\n this.currentObservable\n .query.setOptions(newObservableQueryOptions)\n .catch(function () { });\n }\n };\n QueryData.prototype.startQuerySubscription = function () {\n var _this = this;\n if (this.currentObservable.subscription || this.getOptions().skip)\n return;\n var obsQuery = this.currentObservable.query;\n this.currentObservable.subscription = obsQuery.subscribe({\n next: function (_a) {\n var loading = _a.loading, networkStatus = _a.networkStatus, data = _a.data;\n var previousResult = _this.previousData.result;\n if (previousResult &&\n previousResult.loading === loading &&\n previousResult.networkStatus === networkStatus &&\n equal(previousResult.data, data)) {\n return;\n }\n _this.onNewData();\n },\n error: function (error) {\n _this.resubscribeToQuery();\n if (!error.hasOwnProperty('graphQLErrors'))\n throw error;\n var previousResult = _this.previousData.result;\n if ((previousResult && previousResult.loading) ||\n !equal(error, _this.previousData.error)) {\n _this.previousData.error = error;\n _this.onNewData();\n }\n },\n });\n };\n QueryData.prototype.resubscribeToQuery = function () {\n this.removeQuerySubscription();\n var lastError = this.currentObservable.query.getLastError();\n var lastResult = this.currentObservable.query.getLastResult();\n this.currentObservable.query.resetLastResults();\n this.startQuerySubscription();\n Object.assign(this.currentObservable.query, {\n lastError: lastError,\n lastResult: lastResult,\n });\n };\n QueryData.prototype.getQueryResult = function () {\n var result = this.observableQueryFields();\n var options = this.getOptions();\n if (options.skip) {\n result = __assign(__assign({}, result), { data: undefined, error: undefined, loading: false, called: true });\n }\n else {\n var currentResult = this.currentObservable.query.getCurrentResult();\n var loading = currentResult.loading, partial = currentResult.partial, networkStatus = currentResult.networkStatus, errors = currentResult.errors;\n var error = currentResult.error, data = currentResult.data;\n if (errors && errors.length > 0) {\n error = new ApolloError({ graphQLErrors: errors });\n }\n result = __assign(__assign({}, result), { loading: loading,\n networkStatus: networkStatus,\n error: error, called: true });\n if (loading) {\n var previousData = this.previousData.result && this.previousData.result.data;\n result.data =\n previousData && data\n ? __assign(__assign({}, previousData), data) : previousData || data;\n }\n else if (error) {\n Object.assign(result, {\n data: (this.currentObservable.query.getLastResult() || {})\n .data,\n });\n }\n else {\n var fetchPolicy = this.currentObservable.query.options.fetchPolicy;\n var partialRefetch = options.partialRefetch;\n if (partialRefetch &&\n !data &&\n partial &&\n fetchPolicy !== 'cache-only') {\n Object.assign(result, {\n loading: true,\n networkStatus: NetworkStatus.loading,\n });\n result.refetch();\n return result;\n }\n result.data = data;\n }\n }\n result.client = this.client;\n this.previousData.loading =\n (this.previousData.result && this.previousData.result.loading) || false;\n this.previousData.result = result;\n this.currentObservable.query &&\n this.currentObservable.query.resetQueryStoreErrors();\n return result;\n };\n QueryData.prototype.handleErrorOrCompleted = function () {\n var obsQuery = this.currentObservable.query;\n if (!obsQuery || !this.previousData.result)\n return;\n var _a = this.previousData.result, data = _a.data, loading = _a.loading, error = _a.error;\n if (!loading) {\n var _b = this.getOptions(), query = _b.query, variables = _b.variables, onCompleted = _b.onCompleted, onError = _b.onError;\n if (this.previousOptions &&\n !this.previousData.loading &&\n equal(this.previousOptions.query, query) &&\n equal(this.previousOptions.variables, variables)) {\n return;\n }\n if (onCompleted && !error) {\n onCompleted(data);\n }\n else if (onError && error) {\n onError(error);\n }\n }\n };\n QueryData.prototype.removeQuerySubscription = function () {\n if (this.currentObservable.subscription) {\n this.currentObservable.subscription.unsubscribe();\n delete this.currentObservable.subscription;\n }\n };\n QueryData.prototype.observableQueryFields = function () {\n var observable = this.currentObservable.query;\n return {\n variables: observable.variables,\n refetch: this.obsRefetch,\n fetchMore: this.obsFetchMore,\n updateQuery: this.obsUpdateQuery,\n startPolling: this.obsStartPolling,\n stopPolling: this.obsStopPolling,\n subscribeToMore: this.obsSubscribeToMore,\n };\n };\n return QueryData;\n}(OperationData));\n\nfunction useDeepMemo(memoFn, key) {\n var ref = useRef();\n if (!ref.current || !equal(key, ref.current.key)) {\n ref.current = { key: key, value: memoFn() };\n }\n return ref.current.value;\n}\n\nfunction useBaseQuery(query, options, lazy) {\n if (lazy === void 0) { lazy = false; }\n var context = useContext(getApolloContext());\n var _a = useReducer(function (x) { return x + 1; }, 0), tick = _a[0], forceUpdate = _a[1];\n var updatedOptions = options ? __assign(__assign({}, options), { query: query }) : { query: query };\n var queryDataRef = useRef();\n var queryData = queryDataRef.current ||\n new QueryData({\n options: updatedOptions,\n context: context,\n onNewData: function () {\n if (!queryData.ssrInitiated()) {\n Promise.resolve().then(forceUpdate);\n }\n else {\n forceUpdate();\n }\n },\n });\n queryData.setOptions(updatedOptions);\n queryData.context = context;\n if (queryData.ssrInitiated() && !queryDataRef.current) {\n queryDataRef.current = queryData;\n }\n var memo = {\n options: __assign(__assign({}, updatedOptions), { onError: undefined, onCompleted: undefined }),\n context: context,\n tick: tick,\n };\n var result = useDeepMemo(function () { return (lazy ? queryData.executeLazy() : queryData.execute()); }, memo);\n var queryResult = lazy\n ? result[1]\n : result;\n useEffect(function () {\n if (!queryDataRef.current) {\n queryDataRef.current = queryData;\n }\n return function () { return queryData.cleanup(); };\n }, []);\n useEffect(function () { return queryData.afterExecute({ lazy: lazy }); }, [\n queryResult.loading,\n queryResult.networkStatus,\n queryResult.error,\n queryResult.data,\n ]);\n return result;\n}\n\nfunction useQuery(query, options) {\n return useBaseQuery(query, options, false);\n}\n\nfunction useLazyQuery(query, options) {\n return useBaseQuery(query, options, true);\n}\n\nvar MutationData = (function (_super) {\n __extends(MutationData, _super);\n function MutationData(_a) {\n var options = _a.options, context = _a.context, result = _a.result, setResult = _a.setResult;\n var _this = _super.call(this, options, context) || this;\n _this.runMutation = function (mutationFunctionOptions) {\n if (mutationFunctionOptions === void 0) { mutationFunctionOptions = {}; }\n _this.onMutationStart();\n var mutationId = _this.generateNewMutationId();\n return _this.mutate(mutationFunctionOptions)\n .then(function (response) {\n _this.onMutationCompleted(response, mutationId);\n return response;\n })\n .catch(function (error) {\n _this.onMutationError(error, mutationId);\n if (!_this.getOptions().onError)\n throw error;\n });\n };\n _this.verifyDocumentType(options.mutation, DocumentType.Mutation);\n _this.result = result;\n _this.setResult = setResult;\n _this.mostRecentMutationId = 0;\n return _this;\n }\n MutationData.prototype.execute = function (result) {\n this.isMounted = true;\n this.verifyDocumentType(this.getOptions().mutation, DocumentType.Mutation);\n result.client = this.refreshClient().client;\n return [this.runMutation, result];\n };\n MutationData.prototype.afterExecute = function () {\n this.isMounted = true;\n return this.unmount.bind(this);\n };\n MutationData.prototype.cleanup = function () {\n };\n MutationData.prototype.mutate = function (mutationFunctionOptions) {\n var _a = this.getOptions(), mutation = _a.mutation, variables = _a.variables, optimisticResponse = _a.optimisticResponse, update = _a.update, _b = _a.context, mutationContext = _b === void 0 ? {} : _b, _c = _a.awaitRefetchQueries, awaitRefetchQueries = _c === void 0 ? false : _c, fetchPolicy = _a.fetchPolicy;\n var mutateOptions = __assign({}, mutationFunctionOptions);\n var mutateVariables = Object.assign({}, variables, mutateOptions.variables);\n delete mutateOptions.variables;\n return this.refreshClient().client.mutate(__assign({ mutation: mutation,\n optimisticResponse: optimisticResponse, refetchQueries: mutateOptions.refetchQueries || this.getOptions().refetchQueries, awaitRefetchQueries: awaitRefetchQueries,\n update: update, context: mutationContext, fetchPolicy: fetchPolicy, variables: mutateVariables }, mutateOptions));\n };\n MutationData.prototype.onMutationStart = function () {\n if (!this.result.loading && !this.getOptions().ignoreResults) {\n this.updateResult({\n loading: true,\n error: undefined,\n data: undefined,\n called: true\n });\n }\n };\n MutationData.prototype.onMutationCompleted = function (response, mutationId) {\n var _a = this.getOptions(), onCompleted = _a.onCompleted, ignoreResults = _a.ignoreResults;\n var data = response.data, errors = response.errors;\n var error = errors && errors.length > 0\n ? new ApolloError({ graphQLErrors: errors })\n : undefined;\n var callOncomplete = function () {\n return onCompleted ? onCompleted(data) : null;\n };\n if (this.isMostRecentMutation(mutationId) && !ignoreResults) {\n this.updateResult({\n called: true,\n loading: false,\n data: data,\n error: error\n });\n }\n callOncomplete();\n };\n MutationData.prototype.onMutationError = function (error, mutationId) {\n var onError = this.getOptions().onError;\n if (this.isMostRecentMutation(mutationId)) {\n this.updateResult({\n loading: false,\n error: error,\n data: undefined,\n called: true\n });\n }\n if (onError) {\n onError(error);\n }\n };\n MutationData.prototype.generateNewMutationId = function () {\n return ++this.mostRecentMutationId;\n };\n MutationData.prototype.isMostRecentMutation = function (mutationId) {\n return this.mostRecentMutationId === mutationId;\n };\n MutationData.prototype.updateResult = function (result) {\n if (this.isMounted &&\n (!this.previousResult || !equal(this.previousResult, result))) {\n this.setResult(result);\n this.previousResult = result;\n }\n };\n return MutationData;\n}(OperationData));\n\nfunction useMutation(mutation, options) {\n var context = useContext(getApolloContext());\n var _a = useState({ called: false, loading: false }), result = _a[0], setResult = _a[1];\n var updatedOptions = options ? __assign(__assign({}, options), { mutation: mutation }) : { mutation: mutation };\n var mutationDataRef = useRef();\n function getMutationDataRef() {\n if (!mutationDataRef.current) {\n mutationDataRef.current = new MutationData({\n options: updatedOptions,\n context: context,\n result: result,\n setResult: setResult\n });\n }\n return mutationDataRef.current;\n }\n var mutationData = getMutationDataRef();\n mutationData.setOptions(updatedOptions);\n mutationData.context = context;\n useEffect(function () { return mutationData.afterExecute(); });\n return mutationData.execute(result);\n}\n\nvar SubscriptionData = (function (_super) {\n __extends(SubscriptionData, _super);\n function SubscriptionData(_a) {\n var options = _a.options, context = _a.context, setResult = _a.setResult;\n var _this = _super.call(this, options, context) || this;\n _this.currentObservable = {};\n _this.setResult = setResult;\n _this.initialize(options);\n return _this;\n }\n SubscriptionData.prototype.execute = function (result) {\n if (this.getOptions().skip === true) {\n this.cleanup();\n return {\n loading: false,\n error: undefined,\n data: undefined,\n variables: this.getOptions().variables\n };\n }\n var currentResult = result;\n if (this.refreshClient().isNew) {\n currentResult = this.getLoadingResult();\n }\n var shouldResubscribe = this.getOptions().shouldResubscribe;\n if (typeof shouldResubscribe === 'function') {\n shouldResubscribe = !!shouldResubscribe(this.getOptions());\n }\n if (shouldResubscribe !== false &&\n this.previousOptions &&\n Object.keys(this.previousOptions).length > 0 &&\n (this.previousOptions.subscription !== this.getOptions().subscription ||\n !equal(this.previousOptions.variables, this.getOptions().variables) ||\n this.previousOptions.skip !== this.getOptions().skip)) {\n this.cleanup();\n currentResult = this.getLoadingResult();\n }\n this.initialize(this.getOptions());\n this.startSubscription();\n this.previousOptions = this.getOptions();\n return __assign(__assign({}, currentResult), { variables: this.getOptions().variables });\n };\n SubscriptionData.prototype.afterExecute = function () {\n this.isMounted = true;\n };\n SubscriptionData.prototype.cleanup = function () {\n this.endSubscription();\n delete this.currentObservable.query;\n };\n SubscriptionData.prototype.initialize = function (options) {\n if (this.currentObservable.query || this.getOptions().skip === true)\n return;\n this.currentObservable.query = this.refreshClient().client.subscribe({\n query: options.subscription,\n variables: options.variables,\n fetchPolicy: options.fetchPolicy\n });\n };\n SubscriptionData.prototype.startSubscription = function () {\n if (this.currentObservable.subscription)\n return;\n this.currentObservable.subscription = this.currentObservable.query.subscribe({\n next: this.updateCurrentData.bind(this),\n error: this.updateError.bind(this),\n complete: this.completeSubscription.bind(this)\n });\n };\n SubscriptionData.prototype.getLoadingResult = function () {\n return {\n loading: true,\n error: undefined,\n data: undefined\n };\n };\n SubscriptionData.prototype.updateResult = function (result) {\n if (this.isMounted) {\n this.setResult(result);\n }\n };\n SubscriptionData.prototype.updateCurrentData = function (result) {\n var onSubscriptionData = this.getOptions().onSubscriptionData;\n this.updateResult({\n data: result.data,\n loading: false,\n error: undefined\n });\n if (onSubscriptionData) {\n onSubscriptionData({\n client: this.refreshClient().client,\n subscriptionData: result\n });\n }\n };\n SubscriptionData.prototype.updateError = function (error) {\n this.updateResult({\n error: error,\n loading: false\n });\n };\n SubscriptionData.prototype.completeSubscription = function () {\n var onSubscriptionComplete = this.getOptions().onSubscriptionComplete;\n if (onSubscriptionComplete)\n onSubscriptionComplete();\n this.endSubscription();\n };\n SubscriptionData.prototype.endSubscription = function () {\n if (this.currentObservable.subscription) {\n this.currentObservable.subscription.unsubscribe();\n delete this.currentObservable.subscription;\n }\n };\n return SubscriptionData;\n}(OperationData));\n\nfunction useSubscription(subscription, options) {\n var context = useContext(getApolloContext());\n var updatedOptions = options\n ? __assign(__assign({}, options), { subscription: subscription }) : { subscription: subscription };\n var _a = useState({\n loading: !updatedOptions.skip,\n error: undefined,\n data: undefined\n }), result = _a[0], setResult = _a[1];\n var subscriptionDataRef = useRef();\n function getSubscriptionDataRef() {\n if (!subscriptionDataRef.current) {\n subscriptionDataRef.current = new SubscriptionData({\n options: updatedOptions,\n context: context,\n setResult: setResult\n });\n }\n return subscriptionDataRef.current;\n }\n var subscriptionData = getSubscriptionDataRef();\n subscriptionData.setOptions(updatedOptions, true);\n subscriptionData.context = context;\n useEffect(function () { return subscriptionData.afterExecute(); });\n useEffect(function () { return subscriptionData.cleanup.bind(subscriptionData); }, []);\n return subscriptionData.execute(result);\n}\n\nfunction useApolloClient() {\n var client = React.useContext(getApolloContext()).client;\n process.env.NODE_ENV === \"production\" ? invariant(client, 1) : invariant(client, 'No Apollo Client instance can be found. Please ensure that you ' +\n 'have called `ApolloProvider` higher up in your tree.');\n return client;\n}\n\nfunction makeDefaultQueryInfo() {\n return {\n seen: false,\n observable: null\n };\n}\nvar RenderPromises = (function () {\n function RenderPromises() {\n this.queryPromises = new Map();\n this.queryInfoTrie = new Map();\n }\n RenderPromises.prototype.registerSSRObservable = function (observable, props) {\n this.lookupQueryInfo(props).observable = observable;\n };\n RenderPromises.prototype.getSSRObservable = function (props) {\n return this.lookupQueryInfo(props).observable;\n };\n RenderPromises.prototype.addQueryPromise = function (queryInstance, finish) {\n var info = this.lookupQueryInfo(queryInstance.getOptions());\n if (!info.seen) {\n this.queryPromises.set(queryInstance.getOptions(), new Promise(function (resolve) {\n resolve(queryInstance.fetchData());\n }));\n return null;\n }\n return finish();\n };\n RenderPromises.prototype.hasPromises = function () {\n return this.queryPromises.size > 0;\n };\n RenderPromises.prototype.consumeAndAwaitPromises = function () {\n var _this = this;\n var promises = [];\n this.queryPromises.forEach(function (promise, queryInstance) {\n _this.lookupQueryInfo(queryInstance).seen = true;\n promises.push(promise);\n });\n this.queryPromises.clear();\n return Promise.all(promises);\n };\n RenderPromises.prototype.lookupQueryInfo = function (props) {\n var queryInfoTrie = this.queryInfoTrie;\n var query = props.query, variables = props.variables;\n var varMap = queryInfoTrie.get(query) || new Map();\n if (!queryInfoTrie.has(query))\n queryInfoTrie.set(query, varMap);\n var variablesString = JSON.stringify(variables);\n var info = varMap.get(variablesString) || makeDefaultQueryInfo();\n if (!varMap.has(variablesString))\n varMap.set(variablesString, info);\n return info;\n };\n return RenderPromises;\n}());\n\nexport { RenderPromises, useApolloClient, useLazyQuery, useMutation, useQuery, useSubscription };\n//# sourceMappingURL=react-hooks.esm.js.map\n","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interopRequireWildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) {\n return obj;\n }\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n var cache = _getRequireWildcardCache(nodeInterop);\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n newObj[\"default\"] = obj;\n if (cache) {\n cache.set(obj, newObj);\n }\n return newObj;\n}\nmodule.exports = _interopRequireWildcard, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var defineProperty = require(\"./defineProperty.js\");\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? Object(arguments[i]) : {};\n var ownKeys = Object.keys(source);\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys.push.apply(ownKeys, Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n return target;\n}\nmodule.exports = _objectSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _extends() {\n module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _extends.apply(this, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"sourceRoot":""}