{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///../node_modules/moment/dist/locale sync ^\\.\\/.*$","webpack:///../node_modules/moment/dist/locale/cs.js","webpack:///../../../src/link/core/split.ts","webpack:///../node_modules/moment/dist/locale/fr-ch.js","webpack:///../node_modules/@material-ui/core/esm/styles/transitions.js","webpack:///../node_modules/moment/dist/locale/az.js","webpack:///../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack:///../node_modules/moment/dist/locale/ku.js","webpack:///./routes/users/index.tsx?daaa","webpack:///../node_modules/moment/dist/locale/mn.js","webpack:///./routes/devices/index.tsx?5e2f","webpack:///../node_modules/moment/dist/locale/bn-bd.js","webpack:///./routes/reset-password/index.tsx?8e11","webpack:///./index.tsx","webpack:///../node_modules/window-or-global/lib/index.js","webpack:///../node_modules/moment/dist/locale/nb.js","webpack:///../node_modules/apollo-upload-client/public/index.js","webpack:///../node_modules/moment/dist/locale/zh-cn.js","webpack:///../node_modules/moment/dist/locale/ro.js","webpack:///../node_modules/moment/dist/locale/yo.js","webpack:///../src/invariant.ts","webpack:///../node_modules/@ungap/global-this/esm/index.js","webpack:///../node_modules/moment/dist/locale/br.js","webpack:///./routes/terms-and-conditions/index.tsx?c85b","webpack:///../node_modules/graphql/jsutils/isObjectLike.mjs","webpack:///../node_modules/graphql/language/location.mjs","webpack:///../node_modules/graphql/language/printLocation.mjs","webpack:///../node_modules/graphql/error/GraphQLError.mjs","webpack:///../node_modules/graphql/error/syntaxError.mjs","webpack:///../node_modules/graphql/jsutils/devAssert.mjs","webpack:///../node_modules/graphql/language/source.mjs","webpack:///../node_modules/graphql/language/lexer.mjs","webpack:///../node_modules/graphql/language/parser.mjs","webpack:///../node_modules/graphql/polyfills/symbols.mjs","webpack:///../node_modules/graphql/language/kinds.mjs","webpack:///../node_modules/graphql/language/tokenKind.mjs","webpack:///../node_modules/graphql/jsutils/instanceOf.mjs","webpack:///../node_modules/graphql/language/directiveLocation.mjs","webpack:///../node_modules/moment/dist/locale/fy.js","webpack:///../node_modules/universal-cookie/es6/utils.js","webpack:///../node_modules/universal-cookie/es6/Cookies.js","webpack:///../node_modules/react-cookie/es6/Cookies.js","webpack:///./services/authService.ts","webpack:///../node_modules/moment/dist/locale/ms.js","webpack:///../node_modules/cookie/index.js","webpack:///../node_modules/graphql/jsutils/defineInspect.mjs","webpack:///../node_modules/graphql/language/ast.mjs","webpack:///../node_modules/moment/dist/locale/fr.js","webpack:///../node_modules/moment/dist/locale/gom-deva.js","webpack:///../node_modules/moment/dist/locale/gom-latn.js","webpack:///./routes/login/index.tsx?50b8","webpack:///../node_modules/moment/dist/locale/si.js","webpack:///./i18n/fr-FR.js","webpack:///../node_modules/moment/dist/locale/tzl.js","webpack:///../node_modules/moment/dist/locale/es-us.js","webpack:///../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///../node_modules/@material-ui/utils/esm/deepmerge.js","webpack:///../node_modules/moment/dist/locale/de.js","webpack:///../node_modules/moment/dist/locale/te.js","webpack:///./routes/visit/index.tsx?563a","webpack:///../node_modules/moment/dist/locale/ca.js","webpack:///../node_modules/moment/dist/locale/tzm.js","webpack:///../node_modules/extract-files/public/ReactNativeFile.js","webpack:///../node_modules/moment/dist/locale/x-pseudo.js","webpack:///../node_modules/moment/dist/locale/ug-cn.js","webpack:///../node_modules/moment/dist/locale/pt-br.js","webpack:///../node_modules/moment/dist/locale/th.js","webpack:///../node_modules/moment/dist/locale/ja.js","webpack:///../node_modules/moment/dist/locale/ar-dz.js","webpack:///../node_modules/moment/dist/locale/pt.js","webpack:///../node_modules/moment/dist/locale/sv.js","webpack:///../node_modules/apollo-upload-client/public/createUploadLink.js","webpack:///../../src/errors/index.ts","webpack:///../../src/event/EventType.ts","webpack:///./routes/register/index.tsx?bf19","webpack:///../node_modules/moment/dist/locale/pa-in.js","webpack:///../../src/account/ClientInfo.ts","webpack:///../node_modules/moment/dist/locale/sr.js","webpack:///../node_modules/moment/dist/locale/bn.js","webpack:///../node_modules/moment/dist/locale/ka.js","webpack:///../node_modules/moment/dist/locale/eo.js","webpack:///../../src/core/ObservableQuery.ts","webpack:///../../src/core/Reobserver.ts","webpack:///../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack:///./i18n/de-DE.js","webpack:///../node_modules/graphql/jsutils/inspect.mjs","webpack:///../node_modules/moment/dist/locale/me.js","webpack:///../src/cache.ts","webpack:///../src/helpers.ts","webpack:///../src/entry.ts","webpack:///../src/dep.ts","webpack:///../src/index.ts","webpack:///../src/trie.ts","webpack:///../src/context.ts","webpack:///../../../src/cache/core/cache.ts","webpack:///../node_modules/moment/dist/locale/nl-be.js","webpack:///./i18n/nl-NL.js","webpack:///../node_modules/moment/dist/locale/sd.js","webpack:///../node_modules/moment/dist/locale/de-at.js","webpack:///../node_modules/moment/dist/locale/bm.js","webpack:///../node_modules/moment/dist/locale/zh-tw.js","webpack:///../node_modules/moment/dist/locale/ar-tn.js","webpack:///../node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack:///../../../src/link/utils/fromError.ts","webpack:///../../../src/link/utils/toPromise.ts","webpack:///../../../src/link/utils/fromPromise.ts","webpack:///../../../src/link/utils/validateOperation.ts","webpack:///../../../src/link/utils/createOperation.ts","webpack:///../../../src/link/utils/transformOperation.ts","webpack:///../../../src/link/utils/throwServerError.ts","webpack:///./routes/bait-types/index.tsx?a7f9","webpack:///../node_modules/moment/dist/locale/gd.js","webpack:///../../src/utils/BrowserConstants.ts","webpack:///../node_modules/extract-files/public/isExtractableFile.js","webpack:///../../src/core/index.ts","webpack:///../../src/cache/index.ts","webpack:///../node_modules/moment/dist/locale/es-do.js","webpack:///../../src/utils/StringUtils.ts","webpack:///../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../node_modules/moment/dist/locale/gl.js","webpack:///../../../src/cache/inmemory/entityStore.ts","webpack:///../../../src/cache/inmemory/readFromStore.ts","webpack:///../../../src/cache/inmemory/writeToStore.ts","webpack:///../../../src/cache/inmemory/inMemoryCache.ts","webpack:///../node_modules/@material-ui/core/esm/styles/cssUtils.js","webpack:///../node_modules/@material-ui/core/esm/styles/responsiveFontSizes.js","webpack:///../node_modules/moment/dist/locale/es-mx.js","webpack:///./routes/branches/index.tsx?094c","webpack:///../../../src/link/http/parseAndCheckHttpResponse.ts","webpack:///../node_modules/graphql/language/printer.mjs","webpack:///../../../src/link/http/rewriteURIForGET.ts","webpack:///../../../src/link/http/serializeFetchParameter.ts","webpack:///../../../src/link/http/selectHttpOptionsAndBody.ts","webpack:///../../../src/link/http/checkFetcher.ts","webpack:///../../../src/link/http/createSignalIfSupported.ts","webpack:///../../../src/link/http/selectURI.ts","webpack:///../../../src/link/http/createHttpLink.ts","webpack:///../../../src/link/http/HttpLink.ts","webpack:///../node_modules/graphql/language/blockString.mjs","webpack:///../node_modules/zen-observable/index.js","webpack:///../node_modules/moment/dist/locale/uk.js","webpack:///../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack:///../node_modules/moment/dist/locale/he.js","webpack:///../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./routes/my-account/index.tsx?87dc","webpack:///../../../src/link/core/concat.ts","webpack:///../../../../src/cache/core/types/common.ts","webpack:///../node_modules/moment/dist/locale/ar-ma.js","webpack:///./routes/set-password/index.tsx?e738","webpack:///./routes/home/index.tsx?ade6","webpack:///../node_modules/moment/dist/locale/ar-sa.js","webpack:///../node_modules/moment/dist/locale/nn.js","webpack:///../node_modules/moment/dist/locale/et.js","webpack:///../node_modules/moment/dist/locale/fo.js","webpack:///../../../src/react/hooks/useApolloClient.ts","webpack:///../../../../src/react/hooks/utils/useBaseQuery.ts","webpack:///../../../../src/react/hooks/utils/useDeepMemo.ts","webpack:///../../../src/react/hooks/useLazyQuery.ts","webpack:///../../../src/react/hooks/useMutation.ts","webpack:///../../../src/react/hooks/useQuery.ts","webpack:///../../../src/react/data/OperationData.ts","webpack:///../../../src/react/data/SubscriptionData.ts","webpack:///../../../src/react/data/MutationData.ts","webpack:///../../../src/react/data/QueryData.ts","webpack:///../../../src/link/context/index.ts","webpack:///../src/MsalProvider.tsx","webpack:///../src/packageMetadata.ts","webpack:///../src/utils/utilities.ts","webpack:///../../src/app/IPublicClientApplication.ts","webpack:///../../src/event/EventMessage.ts","webpack:///../src/MsalContext.ts","webpack:///../src/hooks/useMsal.ts","webpack:///../node_modules/@material-ui/styles/esm/ThemeProvider/ThemeProvider.js","webpack:///./i18n/en-US.js","webpack:///../node_modules/prop-types/factoryWithThrowingShims.js","webpack:///../../src/core/QueryInfo.ts","webpack:///../../src/core/ApolloClient.ts","webpack:///../../src/core/LocalState.ts","webpack:///../../src/core/QueryManager.ts","webpack:///../src/version.ts","webpack:///./routes/production-line/index.tsx?d3b3","webpack:///../node_modules/moment/dist/locale/id.js","webpack:///../../../src/cache/entities/AccountEntity.ts","webpack:///../node_modules/moment/dist/locale/zh-hk.js","webpack:///../src/lib/util.js","webpack:///../src/components/intl-provider.js","webpack:///../src/intl.js","webpack:///../src/lib/template.js","webpack:///../src/lib/translate.js","webpack:///../src/components/highlight-i18n.js","webpack:///../src/components/text.js","webpack:///../src/lib/translate-mapping.js","webpack:///../src/components/localizer.js","webpack:///../src/components/markup-text.js","webpack:///../src/components/with-text.js","webpack:///../index.js","webpack:///../src/contexts/intl-context.js","webpack:///../src/index.js","webpack:///../src/hooks/use-text.js","webpack:///../node_modules/webpack/buildin/harmony-module.js","webpack:///../node_modules/@material-ui/core/esm/styles/createMixins.js","webpack:///../node_modules/@material-ui/core/esm/styles/createPalette.js","webpack:///../node_modules/@material-ui/core/esm/styles/createTypography.js","webpack:///../node_modules/@material-ui/core/esm/styles/shadows.js","webpack:///../node_modules/@material-ui/core/esm/styles/createSpacing.js","webpack:///../node_modules/@material-ui/core/esm/colors/common.js","webpack:///../node_modules/@material-ui/core/esm/colors/grey.js","webpack:///../node_modules/@material-ui/core/esm/colors/indigo.js","webpack:///../node_modules/@material-ui/core/esm/colors/pink.js","webpack:///../node_modules/@material-ui/core/esm/colors/red.js","webpack:///../node_modules/@material-ui/core/esm/colors/orange.js","webpack:///../node_modules/@material-ui/core/esm/colors/blue.js","webpack:///../node_modules/@material-ui/core/esm/colors/green.js","webpack:///../node_modules/@material-ui/core/esm/styles/shape.js","webpack:///../node_modules/@material-ui/core/esm/styles/createMuiTheme.js","webpack:///../node_modules/moment/dist/locale/af.js","webpack:///../node_modules/moment/dist/locale/bs.js","webpack:///../../src/react/index.ts","webpack:///../node_modules/moment/dist/moment.js","webpack:///../node_modules/moment/dist/locale/oc-lnc.js","webpack:///../node_modules/moment/dist/locale/lb.js","webpack:///../node_modules/extract-files/public/extractFiles.js","webpack:///../node_modules/moment/dist/locale/cy.js","webpack:///../node_modules/symbol-observable/es/index.js","webpack:///../node_modules/webpack/buildin/module.js","webpack:///../node_modules/@material-ui/core/esm/styles/colorManipulator.js","webpack:///../node_modules/moment/dist/locale/ml.js","webpack:///../node_modules/psl/index.js","webpack:///../node_modules/moment/dist/locale/kn.js","webpack:///../node_modules/moment/dist/locale/ru.js","webpack:///../node_modules/moment/dist/locale/en-au.js","webpack:///../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./routes/account/index.tsx?6e67","webpack:///./routes/device/index.tsx?058c","webpack:///../node_modules/moment/dist/locale/es.js","webpack:///../node_modules/moment/dist/locale/fil.js","webpack:///../node_modules/moment/dist/locale/my.js","webpack:///../node_modules/moment/dist/locale/en-ie.js","webpack:///../node_modules/moment/dist/locale/mi.js","webpack:///../node_modules/moment/dist/locale/en-sg.js","webpack:///../node_modules/moment/dist/locale/de-ch.js","webpack:///../node_modules/@material-ui/core/esm/styles/zIndex.js","webpack:///../../../src/cache/inmemory/policies.ts","webpack:///../node_modules/prop-types/index.js","webpack:///../node_modules/moment/dist/locale/gu.js","webpack:///../node_modules/moment/dist/locale/uz.js","webpack:///../node_modules/moment/dist/locale/lo.js","webpack:///./routes/resend-verification/index.tsx?9fb2","webpack:///../../src/logger/Logger.ts","webpack:///../../src/error/ClientAuthError.ts","webpack:///../node_modules/apollo-upload-client/public/ReactNativeFile.js","webpack:///../node_modules/symbol-observable/es/ponyfill.js","webpack:///../node_modules/@date-io/moment/build/index.esm.js","webpack:///../src/equality.ts","webpack:///../node_modules/@material-ui/system/esm/breakpoints.js","webpack:///../node_modules/moment/dist/locale/sw.js","webpack:///../../../src/react/parser/index.ts","webpack:///./routes/reports/index.tsx?4d60","webpack:///../src/util.js","webpack:///../../../src/react/context/ApolloContext.ts","webpack:///../../../src/react/context/ApolloProvider.tsx","webpack:///../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///../node_modules/moment/dist/locale/en-nz.js","webpack:///../node_modules/moment/dist/locale/tg.js","webpack:///../node_modules/moment/dist/locale/da.js","webpack:///../node_modules/moment/dist/locale/tr.js","webpack:///./routes/user/index.tsx?836e","webpack:///../../../src/link/core/execute.ts","webpack:///../node_modules/moment/dist/locale/en-il.js","webpack:///../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack:///../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack:///../../src/_shared/hooks/useUtils.ts","webpack:///../../src/MuiPickersUtilsProvider.tsx","webpack:///../../src/error/BrowserConfigurationAuthError.ts","webpack:///../node_modules/moment/dist/locale/ur.js","webpack:///../../../src/link/core/empty.ts","webpack:///../node_modules/tslib/tslib.es6.js?6dbe","webpack:///./routes/accounts/index.tsx?443f","webpack:///../node_modules/moment/dist/locale/it.js","webpack:///../node_modules/moment/dist/locale/lt.js","webpack:///../node_modules/moment/dist/locale/fr-ca.js","webpack:///../node_modules/moment/dist/locale/uz-latn.js","webpack:///../node_modules/moment/dist/locale/en-in.js","webpack:///../../../src/link/core/from.ts","webpack:///../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","webpack:///../../../src/link/core/index.ts","webpack:///../node_modules/moment/dist/locale/kk.js","webpack:///./components/app.tsx","webpack:///../node_modules/fast-json-stable-stringify/index.js","webpack:///../node_modules/moment/dist/locale/ms-my.js","webpack:///../node_modules/moment/dist/locale/ar-ly.js","webpack:///../node_modules/moment/dist/locale/fi.js","webpack:///../node_modules/@preact/async-loader/async.js","webpack:///../node_modules/moment/dist/locale/be.js","webpack:///../node_modules/moment/dist/locale/en-gb.js","webpack:///../node_modules/moment/dist/locale/zh-mo.js","webpack:///../node_modules/moment/dist/locale/is.js","webpack:///../node_modules/moment/dist/locale/tk.js","webpack:///../node_modules/graphql/jsutils/nodejsCustomInspectSymbol.mjs","webpack:///../node_modules/moment/dist/locale/hr.js","webpack:///../node_modules/moment/dist/locale/dv.js","webpack:///../node_modules/zen-observable/lib/Observable.js","webpack:///../node_modules/@material-ui/styles/esm/useTheme/ThemeContext.js","webpack:///../node_modules/@material-ui/utils/esm/formatMuiErrorMessage.js","webpack:///../src/create-element.js","webpack:///../src/component.js","webpack:///../src/diff/children.js","webpack:///../src/diff/props.js","webpack:///../src/diff/index.js","webpack:///../src/render.js","webpack:///../src/clone-element.js","webpack:///../src/create-context.js","webpack:///../src/constants.js","webpack:///../src/options.js","webpack:///../src/diff/catch-error.js","webpack:///../node_modules/moment/dist/locale/sq.js","webpack:///../node_modules/moment/dist/locale/fa.js","webpack:///../node_modules/moment/dist/locale/tzm-latn.js","webpack:///../../../src/utilities/graphql/directives.ts","webpack:///../../../src/utilities/graphql/fragments.ts","webpack:///../../../src/utilities/graphql/storeUtils.ts","webpack:///../../../src/utilities/graphql/getFromAST.ts","webpack:///../../../src/utilities/common/filterInPlace.ts","webpack:///../../../src/utilities/graphql/transform.ts","webpack:///../../../src/utilities/common/mergeDeep.ts","webpack:///../../../src/utilities/common/cloneDeep.ts","webpack:///../../../src/utilities/common/maybeDeepFreeze.ts","webpack:///../../../src/utilities/observables/iteration.ts","webpack:///../../../src/utilities/observables/asyncMap.ts","webpack:///../../../src/utilities/observables/Concast.ts","webpack:///../../../src/utilities/common/arrays.ts","webpack:///../../../src/utilities/common/errorHandling.ts","webpack:///../../../src/utilities/common/compact.ts","webpack:///../../../src/utilities/observables/Observable.ts","webpack:///../../../src/utilities/common/canUse.ts","webpack:///../node_modules/moment/dist/locale/se.js","webpack:///../node_modules/moment/dist/locale/ky.js","webpack:///../node_modules/moment/dist/locale/ar-kw.js","webpack:///../node_modules/moment/dist/locale/nl.js","webpack:///./routes/remote-monitor/index.tsx?c056","webpack:///../node_modules/@material-ui/core/esm/styles/createBreakpoints.js","webpack:///../node_modules/moment/dist/locale/bo.js","webpack:///../../src/authority/OpenIdConfigResponse.ts","webpack:///../../src/account/CcsCredential.ts","webpack:///../../src/utils/MathUtils.ts","webpack:///../../src/crypto/GuidGenerator.ts","webpack:///../../src/utils/BrowserStringUtils.ts","webpack:///../../src/encode/Base64Encode.ts","webpack:///../../src/encode/Base64Decode.ts","webpack:///../../src/error/BrowserAuthError.ts","webpack:///../../src/crypto/PkceGenerator.ts","webpack:///../../src/crypto/BrowserCrypto.ts","webpack:///../../src/cache/DatabaseStorage.ts","webpack:///../../src/crypto/CryptoOps.ts","webpack:///../../src/crypto/ICrypto.ts","webpack:///../../src/error/ServerError.ts","webpack:///../../src/error/InteractionRequiredAuthError.ts","webpack:///../../../src/cache/entities/CredentialEntity.ts","webpack:///../../src/error/ClientConfigurationError.ts","webpack:///../../src/request/ScopeSet.ts","webpack:///../../src/account/AuthToken.ts","webpack:///../../src/cache/CacheManager.ts","webpack:///../../../src/cache/entities/IdTokenEntity.ts","webpack:///../../src/utils/TimeUtils.ts","webpack:///../../../src/cache/entities/AccessTokenEntity.ts","webpack:///../../../src/cache/entities/RefreshTokenEntity.ts","webpack:///../../../src/cache/entities/AppMetadataEntity.ts","webpack:///../../../src/cache/entities/ServerTelemetryEntity.ts","webpack:///../../../src/cache/entities/AuthorityMetadataEntity.ts","webpack:///../../../src/cache/entities/ThrottlingEntity.ts","webpack:///../../src/utils/ProtocolUtils.ts","webpack:///../../src/authority/ProtocolMode.ts","webpack:///../../src/cache/BrowserStorage.ts","webpack:///../../src/cache/MemoryStorage.ts","webpack:///../../src/url/UrlString.ts","webpack:///../../src/utils/BrowserProtocolUtils.ts","webpack:///../../src/cache/BrowserCacheManager.ts","webpack:///../../src/crypto/PopTokenGenerator.ts","webpack:///../../src/config/ClientConfiguration.ts","webpack:///../../src/network/INetworkModule.ts","webpack:///../../src/network/FetchClient.ts","webpack:///../../src/network/XhrClient.ts","webpack:///../../src/utils/BrowserUtils.ts","webpack:///../../src/navigation/NavigationClient.ts","webpack:///../../src/event/EventHandler.ts","webpack:///../../src/network/ThrottlingUtils.ts","webpack:///../../src/network/NetworkManager.ts","webpack:///../../src/client/BaseClient.ts","webpack:///../../src/request/RequestValidator.ts","webpack:///../../src/request/RequestParameterBuilder.ts","webpack:///../../../src/cache/entities/CacheRecord.ts","webpack:///../../../src/cache/persistence/TokenCacheContext.ts","webpack:///../../src/response/ResponseHandler.ts","webpack:///../../src/client/AuthorizationCodeClient.ts","webpack:///../../src/authority/RegionDiscovery.ts","webpack:///../../src/authority/Authority.ts","webpack:///../../src/authority/CloudInstanceDiscoveryResponse.ts","webpack:///../../src/authority/AuthorityFactory.ts","webpack:///../../../src/telemetry/server/ServerTelemetryManager.ts","webpack:///../../src/interaction_client/StandardInteractionClient.ts","webpack:///../../src/interaction_client/BaseInteractionClient.ts","webpack:///../../src/utils/PopupUtils.ts","webpack:///../../src/interaction_handler/InteractionHandler.ts","webpack:///../../src/interaction_handler/PopupHandler.ts","webpack:///../../src/interaction_client/PopupClient.ts","webpack:///../../src/interaction_handler/RedirectHandler.ts","webpack:///../../src/interaction_client/RedirectClient.ts","webpack:///../../src/interaction_handler/SilentHandler.ts","webpack:///../../src/config/Configuration.ts","webpack:///../../src/interaction_client/SilentIframeClient.ts","webpack:///../../src/client/RefreshTokenClient.ts","webpack:///../../src/interaction_client/SilentRefreshClient.ts","webpack:///../../src/cache/TokenCache.ts","webpack:///../../src/app/ClientApplication.ts","webpack:///../../src/client/SilentFlowClient.ts","webpack:///../../src/interaction_client/SilentCacheClient.ts","webpack:///../../src/app/PublicClientApplication.ts","webpack:///../src/PureComponent.js","webpack:///../src/memo.js","webpack:///../src/forwardRef.js","webpack:///../src/suspense.js","webpack:///../src/suspense-list.js","webpack:///../src/portals.js","webpack:///../src/scheduler.js","webpack:///../src/Children.js","webpack:///../node_modules/moment/dist/locale/vi.js","webpack:///../node_modules/moment/dist/locale/ta.js","webpack:///../node_modules/moment/dist/locale/sl.js","webpack:///../node_modules/node-libs-browser/node_modules/punycode/punycode.js","webpack:///./routes/forgot-password/index.tsx?7d20","webpack:///../node_modules/moment/dist/locale/pl.js","webpack:///../../src/error/AuthError.ts","webpack:///../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../node_modules/moment/dist/locale/eu.js","webpack:///../node_modules/moment/dist/locale/ne.js","webpack:///../node_modules/preact-cli/lib/lib/entry.js","webpack:///../src/slot.ts","webpack:///./routes/branch/index.tsx?4734","webpack:///../node_modules/moment/dist/locale/lv.js","webpack:///../node_modules/@material-ui/styles/esm/useTheme/useTheme.js","webpack:///../node_modules/@material-ui/system/esm/merge.js","webpack:///../../../src/cache/inmemory/reactiveVars.ts","webpack:///../node_modules/moment/dist/locale/en-ca.js","webpack:///../../../src/link/error/index.ts","webpack:///../../src/utils/Constants.ts","webpack:///../node_modules/moment/dist/locale/ko.js","webpack:///../node_modules/webpack/buildin/global.js","webpack:///../../../src/cache/inmemory/helpers.ts","webpack:///../node_modules/moment/dist/locale/bg.js","webpack:///../node_modules/moment/dist/locale/it-ch.js","webpack:///../node_modules/graphql-tag/src/index.js","webpack:///../../../../src/cache/core/types/Cache.ts","webpack:///../node_modules/moment/dist/locale/tet.js","webpack:///../node_modules/moment/dist/locale/sr-cyrl.js","webpack:///../node_modules/moment/dist/locale/ar.js","webpack:///../node_modules/@material-ui/system/esm/spacing.js","webpack:///../node_modules/@material-ui/system/esm/memoize.js","webpack:///../node_modules/@material-ui/styles/esm/ThemeProvider/nested.js","webpack:///../node_modules/moment/dist/locale/el.js","webpack:///../node_modules/moment/dist/locale/mr.js","webpack:///../node_modules/moment/dist/locale/tl-ph.js","webpack:///../../src/core/networkStatus.ts","webpack:///../../src/authority/AuthorityType.ts","webpack:///../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///../node_modules/moment/dist/locale/ss.js","webpack:///../node_modules/moment/dist/locale/sk.js","webpack:///../node_modules/graphql/language/visitor.mjs","webpack:///../node_modules/moment/dist/locale/mt.js","webpack:///../node_modules/moment/dist/locale/mk.js","webpack:///../node_modules/apollo-upload-client/public/isExtractableFile.js","webpack:///../node_modules/moment/dist/locale/hi.js","webpack:///../node_modules/moment/dist/locale/jv.js","webpack:///./i18n/it-IT.js","webpack:///../node_modules/moment/dist/locale/hu.js","webpack:///./i18n/es-ES.js","webpack:///../../../src/link/core/ApolloLink.ts","webpack:///../node_modules/apollo-upload-client/public/formDataAppendFile.js","webpack:///../node_modules/moment/dist/locale/ga.js","webpack:///../node_modules/moment/dist/locale/cv.js","webpack:///../node_modules/moment/dist/locale/tlh.js","webpack:///../node_modules/moment/dist/locale/km.js","webpack:///../node_modules/moment/dist/locale/hy-am.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","__webpack_require__","installedModules","exports","module","l","4","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","p","jsonpScriptSrc","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","window","oldJsonpFunction","slice","s","webpackContext","req","id","webpackContextResolve","map","code","keys","plural","translate","number","withoutSuffix","isFuture","result","months","split","monthsShort","monthsParse","monthsRegex","moment","defineLocale","monthsShortRegex","monthsStrictRegex","monthsShortStrictRegex","longMonthsParse","shortMonthsParse","weekdays","weekdaysShort","weekdaysMin","longDateFormat","LT","LTS","L","LL","LLL","LLLL","calendar","sameDay","nextDay","nextWeek","this","day","lastDay","lastWeek","sameElse","relativeTime","future","past","ss","mm","h","hh","dd","M","MM","y","yy","dayOfMonthOrdinalParse","ordinal","week","dow","doy","monthsParseExact","weekdaysParseExact","period","formatMs","milliseconds","concat","Math","round","easing","easeInOut","easeOut","easeIn","sharp","duration","shortest","shorter","short","standard","complex","enteringScreen","leavingScreen","props","arguments","options","_options$duration","durationOption","_options$easing","easingOption","_options$delay","delay","_objectWithoutProperties","Array","isArray","animatedProp","join","getAutoHeightDuration","height","constant","pow","suffixes","1","5","8","70","80","2","7","20","50","3","100","6","9","10","30","60","90","meridiemParse","isPM","input","test","meridiem","hour","a","_objectWithoutPropertiesLoose","source","excluded","sourceKeys","indexOf","symbolMap","0","numberMap","preparse","string","replace","match","postformat","cb","meridiemHour","App","self","global","w","ww","createUploadLink","require","formDataAppendFile","isExtractableFile","ReactNativeFile","ll","lll","llll","minute","hm","now","relativeTimeWithPlural","separator","invariant","condition","wrapConsoleMethod","method","verbosityLevels","verbosityLevel","apply","setVerbosity","level","old","max","globalThis","_T_","configurable","setPrototypeOf","obj","proto","__proto__","genericMessage","framesToPop","InvariantError","log","warn","processStub","process","env","relativeTimeWithMutation","text","mutationTable","b","charAt","substring","softMutation","mutation","minWeekdaysParse","weekdaysParse","fullWeekdaysParse","shortWeekdaysParse","lastNumber","token","_typeof","iterator","constructor","getLocation","position","lineRegexp","line","column","exec","body","index","printLocation","location","printSourceLocation","start","sourceLocation","firstLineColumnOffset","locationOffset","whitespace","lineIndex","lineNum","columnNum","locationStr","lines","locationLine","subLineIndex","floor","subLineColumnNum","subLines","printPrefixedLines","subLine","existingLines","filter","_ref","padLen","_ref2","_ref3","str","len","_defineProperties","descriptor","writable","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","_wrapNativeSuper","Class","_cache","Map","Wrapper","_construct","_getPrototypeOf","Function","toString","TypeError","has","set","_setPrototypeOf","_isNativeReflectConstruct","Reflect","construct","Parent","args","instance","sham","Proxy","Date","getPrototypeOf","syntaxError","description","GraphQLError","devAssert","Boolean","printCharCode","isNaN","TokenKind","EOF","JSON","stringify","String","fromCharCode","toUpperCase","readToken","lexer","prev","bodyLength","pos","end","charCodeAt","_line","_col","lineStart","Token","BANG","readComment","DOLLAR","AMP","PAREN_L","PAREN_R","SPREAD","COLON","EQUALS","AT","BRACKET_L","BRACKET_R","BRACE_L","PIPE","BRACE_R","readBlockString","readString","readNumber","readName","unexpectedCharacterMessage","col","COMMENT","firstCode","isFloat","readDigits","isNameStart","FLOAT","INT","chunkStart","STRING","charCode","char2hex","invalidSequence","rawValue","BLOCK_STRING","dedentBlockStringValue","NAME","parse","Parser","parseDocument","parseValue","parser","expectToken","SOF","parseValueLiteral","parseType","parseTypeReference","getTokenDesc","getTokenKindDesc","kind","isPunctuatorTokenKind","asyncIterator","SYMBOL_TO_STRING_TAG","_Error","nodes","positions","path","originalError","extensions","_locations2","_source2","_positions2","_extensions2","_this","_super","_nodes$0$loc","_nodes","_source","loc","_locations","_positions","reduce","list","node","_extensions","originalExtensions","defineProperties","locations","stack","captureStackTrace","subClass","superClass","_inherits","Derived","hasNativeReflectConstruct","Constructor","protoProps","staticProps","Super","NewTarget","output","_i2","_error$nodes2","_i4","_error$locations2","printError","Kind","freeze","DOCUMENT","OPERATION_DEFINITION","VARIABLE_DEFINITION","SELECTION_SET","FIELD","ARGUMENT","FRAGMENT_SPREAD","INLINE_FRAGMENT","FRAGMENT_DEFINITION","VARIABLE","BOOLEAN","NULL","ENUM","LIST","OBJECT","OBJECT_FIELD","DIRECTIVE","NAMED_TYPE","LIST_TYPE","NON_NULL_TYPE","SCHEMA_DEFINITION","OPERATION_TYPE_DEFINITION","SCALAR_TYPE_DEFINITION","OBJECT_TYPE_DEFINITION","FIELD_DEFINITION","INPUT_VALUE_DEFINITION","INTERFACE_TYPE_DEFINITION","UNION_TYPE_DEFINITION","ENUM_TYPE_DEFINITION","ENUM_VALUE_DEFINITION","INPUT_OBJECT_TYPE_DEFINITION","DIRECTIVE_DEFINITION","SCHEMA_EXTENSION","SCALAR_TYPE_EXTENSION","OBJECT_TYPE_EXTENSION","INTERFACE_TYPE_EXTENSION","UNION_TYPE_EXTENSION","ENUM_TYPE_EXTENSION","INPUT_OBJECT_TYPE_EXTENSION","Source","inspect","DirectiveLocation","QUERY","MUTATION","SUBSCRIPTION","SCHEMA","SCALAR","ARGUMENT_DEFINITION","INTERFACE","UNION","ENUM_VALUE","INPUT_OBJECT","INPUT_FIELD_DEFINITION","Lexer","startOfFileToken","lastToken","_proto","advance","lookahead","_token$next","next","sourceObj","instanceOf","isSource","_lexer","_options","parseName","definitions","many","parseDefinition","peek","parseOperationDefinition","parseFragmentDefinition","parseTypeSystemDefinition","parseTypeSystemExtension","peekDescription","unexpected","operation","variableDefinitions","directives","selectionSet","parseSelectionSet","parseOperationType","parseVariableDefinitions","parseDirectives","operationToken","optionalMany","parseVariableDefinition","variable","parseVariable","defaultValue","expectOptionalToken","selections","parseSelection","parseFragment","parseField","alias","nameOrAlias","parseArguments","isConst","parseConstArgument","parseArgument","hasTypeCondition","expectOptionalKeyword","parseFragmentName","typeCondition","parseNamedType","_this$_options","expectKeyword","experimentalFragmentVariables","parseList","parseObject","parseStringLiteral","block","values","any","_this2","fields","parseObjectField","parseDirective","keywordToken","parseSchemaDefinition","parseScalarTypeDefinition","parseObjectTypeDefinition","parseInterfaceTypeDefinition","parseUnionTypeDefinition","parseEnumTypeDefinition","parseInputObjectTypeDefinition","parseDirectiveDefinition","parseDescription","operationTypes","parseOperationTypeDefinition","interfaces","parseImplementsInterfaces","parseFieldsDefinition","_this$_options2","allowLegacySDLImplementsInterfaces","types","delimitedMany","_this$_options3","allowLegacySDLEmptyFields","parseFieldDefinition","parseArgumentDefs","parseInputValueDef","parseUnionMemberTypes","parseEnumValuesDefinition","parseEnumValueDefinition","parseInputFieldsDefinition","parseSchemaExtension","parseScalarTypeExtension","parseObjectTypeExtension","parseInterfaceTypeExtension","parseUnionTypeExtension","parseEnumTypeExtension","parseInputObjectTypeExtension","repeatable","parseDirectiveLocations","parseDirectiveLocation","startToken","_this$_options4","noLocation","Location","atToken","openKind","parseFn","closeKind","delimiterKind","monthsShortWithDots","monthsShortWithoutDots","format","month","readCookie","cleanValue","substr","cleanupCookieValue","doNotParse","isParsingCookie","__assign","assign","Cookies","cookies","changeListeners","HAS_DOCUMENT_COOKIE","cookie","parseCookies","catch","_updateBrowserValues","parseOptions","_emitChange","params","getAll","name_1","_a","remove","finalOptions","expires","maxAge","addChangeListener","callback","removeChangeListener","idx","splice","signUpSignInAuthority","config","b2cPolicies","names","signUpSignIn","authorities","authority","authorityDomain","msalConfig","auth","clientId","knownAuthorities","redirectUri","postLogoutRedirectUri","navigateToLoginRequestUrl","cache","cacheLocation","storeAuthStateInCookie","system","loggerOptions","loggerCallback","containsPii","LogLevel","Info","Verbose","Warning","loginRequest","scopes","clearStoreAndCookies","async","localStorage","clear","sessionStorage","client","clearStore","interactionStatusCookie","parsed","psl","root","hostname","pathname","domain","reload","hours","tryDecode","decode","opt","pairs","pairSplitRegExp","dec","pair","eq_idx","trim","val","serialize","enc","encode","fieldContentRegExp","isFinite","toUTCString","httpOnly","secure","sameSite","toLowerCase","decodeURIComponent","encodeURIComponent","defineInspect","classObject","fn","toJSON","nodejsCustomInspectSymbol","isNode","maybeNode","endToken","processRelativeTime","standalone","isFormat","minutes","isLower","account","accountNameError","accountAddressError","accountCityError","accountZipPostalError","accountRegionError","accountList","title","addNewReportingEmail","baitListWarning","createNewAccount","newAccount","createAccount","disableAccount","enableAccount","editAccount","editAccountWarningMessage","editAccountWarningMessageNoUser","eventsMap","heatMap","accountInfo","accountSpecifications","clientContactInfo","devicesWithEvents","devicesWithoutEvents","proofOfService","selectProofOfService","customizeServiceReport","serviceFrequency","serviceRules","serviceRulesInfo","size","sizeMetric","industryClassification","accountLocation","deviceInspectionDetail","deviceInspectionSummary","generalCommentsInstructions","productApplicationDetail","productApplicationSummary","serviceDetail","floorPlan","deleteFloorPlan","rotateFloorPlan","updateFloorPlan","reportingEmails","reportingEmailNote","scheduledVisits","confirmDisableTitle","confirmDisableMessage","confirmReactivateBranchTitle","confirmReactivateBranchMessage","visitsThisYear","manageAccounts","serviceRuleOptions","baitingRules","days","deviceRules","trappingRules","visualInspection","replaceBait","bait","definedDays","withActivity","device","everyVisit","everyOtherVisit","trap","serviceRulesApplyToModels","baitType","activeIngredientPercentage","addRodenticideToCompare","baitApplied","baitMaterial","baitTypeName","confirmEnableTitle","confirmEnableMessage","contactSales","editBaitType","errorInvalidBaitType","epaNumber","grams","productLineUp","rodenticideList","rodenticideDescription","contrac","final","detex","ditrac","fastrac","formus","liquaTox","pcq","terad3","zp","form","inputNumberAsPercentage","manageBaitList","manageBaitTypes","newBaitType","pieceSize","provider","quantityApplied","selectRodenticide","branch","newBranch","manageBranches","branchList","createNewBranch","branchInfo","branchAddress","branchLogo","editBranch","disableBranch","enableBranch","branchesLocation","cardTable","searchBar","changePassword","currentPassword","manageDevices","deviceDetails","deviceName","deviceNameTooltip","deviceTypeTooltip","deviceInformation","disableDevice","editDevice","enableDevice","eventFrequency","lookup","lookupHelperText","lastServiced","lifetimeEvents","lifetimeEventsTooltip","deviceTypeBreakdown","deviceLocation","deviceMapInfo","deviceSerial","serialNumber","temperature","highTemp","mediumTemp","lowTemp","deviceType","weeklyTooltip","fullRangeTooltip","deviceList","accountEvents","currentAccountCaptures","currentAccountCapturesTooltip","currentAccountEvents","currentAccountTooltip","battery","good","medium","bad","ready","deviceLookupResults","firmwareVersion","hardwareVersion","deviceServiceHistory","deviceStatusLog","viewedTime","sensorTemperature","averageTemp","totalActiveDevices","tRex","forgotPassword","helperText","reset","resetPassword","iRememberNow","home","editDetails","organizationInfo","content","companyName","hierarchyExplanation","metaphor","tree","treeBranch","fruit","seeds","example","organizationExplain","branchExplain","siteExplain","deviceExplain","login","hello","logIntoYourAccount","emailAddress","rememberMe","logIn","dontHaveAnAccount","register","loraWan","acknowledgePackage","applicationNetwork","applicationNetworks","applicationNetworkChangeText","applicationNetworkChangeDevicesText","applicationNetworkChangeNoCheckText","applicationNetworkLookup","applicationNetworkName","applicationNetworkSetText","applicationNetworkText","applicationNetworkText2","applied","appliedApplicationNetwork","autoEnableLoraWanHierarchyOrganization","autoEnableLoraWanHierarchyBranch","batteryPercentage","confirmDisableRemoteMonitoringOrganization","confirmDisableRemoteMonitoringOrganizationText","confirmDisableRemoteMonitoringOrganizationNoLensText","confirmLensAccountSwapText","confirmLensLogout","confirmLensLogoutText","connect","customConfigurationsFound","customConfigurationsBranchesAndSitesFoundText","customConfigurationsSitesFoundText","dataPackageOrigin","devEui","devEuiInfoTitle","deviceSummaryRemoteMonitor","disabled","disableRemoteMonitoring","enabled","enableRemoteMonitoring","eventNotificationThreshold","failedLoraJoinAttempts","formatCells","formatCellsItem1","formatCellsItem2","formatCellsItem3","fullList","heartBeatTime","invalid","joinDelay","keepCustom","lastPackageReceived","lensLogout","linkedLensAccount","loraDataRate","loraJoinAttempts","loraJoinStatus","loraPowerLevel","loraSNRMinimum","loraSNRMaximum","loraSubChannelPlan","loraWanModeDevice","loraWanNetwork","loraWanNetworkAccount","loraWanNetworkBranch","loraWanNetworkOrganization","loraWanNetworkTrap","loraWanInformation","loraWanDataPackage","loraWanEnabledBranchText","loraWanEnabledOrganizationText","loraWanEnabledSiteText","loraWanHealth","loraWanSignal","loraWanSignalTrap","loraWanStatus","loraWanRegion","networkDelay","networkName","newNetwork","noApplicationNetworkApplied","noNetwork","noSignal","numberOfRetries","optional","organizationBranchesAndAccounts","organizationOnly","overwrite","packageAcknowledge","preferredNetworks","remoteMonitor","remoteMonitorAccount","remoteMonitorBranch","remoteMonitorLastPackage","remoteMonitorLoraWan","remoteMonitorOrganization","retrySentPackage","ribbonShortcuts","ribbonShortcutsItem1","ribbonShortcutsItem2","ribbonShortcutsItem3","scientificNotation","scientificNotationText","selected","solution","strong","successfulLoraJoinAttempts","supportImage","swap","swapLensAccount","totalLoraPayloadsFailed","totalLoraPayloadsSent","transmissionFrequency","unableToConnect","unapplied","unselected","updateNetwork","updateSettings","usingFormatCellsPopUp","usingRibbonShortcuts","weak","willBeUpdatedTo","manageAdminAccount","adminOverview","scheduledPayment","nextPaymentScheduledFor","noScheduledPayments","paymentsPhaseOutNotice","billingHistory","selectYear","moneySpentThisMonth","manageSubscription","billing","billingFrequency","billingMethod","cancelSubscription","confirmCancelSubscriptionMessage","confirmCancelSubscriptionMessage2","pleaseReadBeforeProceeding","receipts","unit","amount","receipt","subscription","totalAmount","activeBillableUsers","activeLicenses","pendingLicenses","paymentMethod","payment","currentPaymentMethod","nameOnCard","cardNumber","expiresOnMMYY","cvv","lastModified","typeOfCard","billingInformation","balanceTrend","mostActiveUser","lastReported","noOfVisits","navigation","clickHere","contactSupport","generalSettings","manageAccount","reports","subject","yourEmailAddress","latestGatewayReadings","latestServiceReadings","recentActivities","time","reported","details","createAccountTitle","createAccountText","createCustomAccount","createDefaultAccount","addDetailsText","passwordRequirements","termsAndConditions","passwordNumberRequired","passwordLowercaseRequired","passwordUppercaseRequired","passwordMinimumLength","confirmPasswordMismatch","serviceProviders","selectDefault","duplicateEmail","validEmail","productInfo","userProfile","companyProfile","companyDetails","paymentDetails","accountDetails","success","areYouAuthorized","back","alreadyHaveAnAccount","iAcceptAgreement","almostDone","pleaseCheckEmail","numberOfTechnicians","distributor","pleaseIdentify","howDidYouHear","seconds","year","years","report","manageReports","accountHistorical","filterDesc","selectUser","serviceTech","summaryReport","baitSummary","note","includeExpansion","historicalReport","accountHistoricalReport","installed","detected","serviced","status","serviceTechSummaryReport","dateOfService","pdf","noteReport","replies","user","baitSummaryReport","totalPieces","placeholder","serviceHistory","servicedBy","serviceNotes","setPassword","activateAccount","resendVerification","linkExpired","resendLink","shared","action","actions","activationDate","activeIngredient","accounts","accountsDetails","accountName","accountPerformance","active","activeBranches","activeAccounts","activeTechnicians","activeBaits","averageVisitTime","activity","activities","add","address","addAccountToCompare","addBranchToCompare","addDeviceToCompare","address2","average","averageBaitApplicationRate","averageBaitRefillPerVisit","averageRefill","baits","baitApplicationRate","baitName","baitTypes","baitTypesDetails","batteryLevel","branches","branchesDetails","branchLocation","branchName","branchPerformance","cancel","captureTotals","captures","category","city","close","continue","company","confirmPassword","confirm","country","dashboard","date","dateRangeOptionText","devices","deviceModel","disable","download","downloadChart","downloadTooltip","edit","email","enable","events","eventTotals","eventTooltip","errorAccountText","errorBranchText","errorUserText","expand","fullRange","weekly","fullName","generalInfo","history","inactive","information","organization","organizationDetails","language","last","lastVisit","latitude","longitude","loading","logOut","mainAddress","mainContactPhone","manage","modify","mostActiveBranches","mostUsedBait","mostUsedBaits","newPassword","no","notes","noDataFound","noneSelected","noneSelectedMessage","numberOfEvents","ok","overview","password","pending","percentage","phoneNumber","quantity","rangeTooltip","recent","regulatoryNumber","results","rows","rowsPerPage","save","saveChanges","scrollDownToViewMore","stateProvince","select","selectAll","searchAddress","selectAccount","selectBranch","selectCountry","selectDevice","selectLanguage","selectIndustry","selectRegion","selectServiceFrequency","selectSize","sendEmail","service","serviceBaitType","serviceBaitUsed","serviceDate","serviceIsCapture","services","trendAnalysis","true","false","units","update","updated","updatedBy","users","usersDetails","usersRecords","technicians","view","visitTime","visit","visits","warning","yes","zipPostal","terms","subscriptionAgreement","read","agreement","estimatedReadingTime","readingTimeMinutes","readingTimeCalculation","accountsVisited","activeUsers","allUsers","corporate","disableUser","usersList","role","accessLevel","accountServiced","personalInfo","pendingUsers","inactiveUsers","manageUsers","mostActiveAccounts","accessLevels","branchAccess","timezone","dateFormat","editUser","enableUser","firstName","lastName","newUser","profilePicture","selectOneAccessLevel","selectOneBranch","sendVerification","serviceLocations","visitsLog","lastAccountVisited","eventLog","timestamp","manual","auto","serviceType","totalCaptures","totalEvents","devicesServiced","monthsShortDot","_toConsumableArray","arr","arrayLikeToArray","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","isPlainObject","item","deepmerge","clone","_extends","forEach","uri","invalidDate","eras","since","offset","narrow","abbr","until","Infinity","eraYearOrdinalRegex","eraYearOrdinalParse","parseInt","pluralForm","plurals","pluralize","u","f","ApolloLink","Observable","createSignalIfSupported","fallbackHttpConfig","parseAndCheckHttpResponse","rewriteURIForGET","selectHttpOptionsAndBody","selectURI","serializeFetchParameter","extractFiles","fetchUri","useGETForQueries","customIsExtractableFile","FormData","CustomFormData","customFormDataAppendFile","fetch","customFetch","fetchOptions","credentials","headers","includeExtensions","linkConfig","http","context","getContext","clientAwareness","version","contextConfig","files","append","paths","file","query","some","definition","newURI","parseError","observer","controller","signal","aborted","abort","addEventListener","once","runtimeFetch","cleaningUp","then","response","setContext","complete","errors","isApolloError","graphQLErrors","networkError","errorMessage","extraInfo","graphQLError","ApolloError","EventType","buildClientInfo","rawClientInfo","crypto","isEmpty","createClientInfoEmptyError","decodedClientInfo","base64Decode","createClientInfoDecodingError","buildClientInfoFromHomeAccountId","homeAccountId","clientInfoParts","CLIENT_INFO_SEPARATOR","uid","utid","EMPTY_STRING","translator","words","correctGrammaticalCase","wordKey","$0","$1","$2","defaultSubscriptionObserverErrorCallback","shouldFetch","reobserve","newOptions","newNetworkStatus","updateOptions","updatePolling","concast","removeObserver","addObserver","stop","pollingInfo","pollInterval","interval","maybeFetch","fetchPolicy","nextFetchPolicy","poll","info","queryManager","queryInfo","onSubscribe","observers","Set","subscriptions","lastError","isDifferentFromLastResult","updateLastResult","lastResult","networkStatus","isTornDown","queryId","generateQueryId","opDef","queryName","variables","delete","removeQuery","unsubscribe","subscribe","getCurrentResult","saveAsLastResult","partial","transform","hasForcedResolvers","diff","getDiff","returnPartialData","newResult","lastResultSnapshot","getLastResult","getLastError","resetLastResults","resetQueryStoreErrors","resetErrors","refetch","reobserveOptions","newReobserver","fetchMore","fetchMoreOptions","combinedOptions","qid","notifyOnNetworkStatusChange","observe","fetchQuery","fetchMoreResult","updateQuery","previous","writeQuery","finally","stopQuery","subscribeToMore","startGraphQLSubscription","subscriptionData","onError","setOptions","setVariables","mapFn","previousResult","optimistic","broadcastQueries","startPolling","getReobserver","stopPolling","reobserver","assumeImmutableResults","subObserver","_subscription","_observer","first","tearDownQuery","shareOptions","setObservableQuery","currentOptions","fetchQueryObservable","ssrMode","hasObservers","sub","_arrayWithHoles","formatValue","seenValues","previouslySeenValues","customInspectFn","getCustomFn","customValue","array","min","remaining","items","formatArray","tag","getObjectTag","formatObject","formatObjectValue","defaultDispose","maybeUnsubscribe","entryOrDep","assert","optionalMessage","valueGet","reallyRecompute","entry","forgetChildren","parentEntrySlot","withValue","recomputeNewValue","setDirty","maybeSubscribe","dirty","mightBeDirty","reportClean","setClean","recomputing","dirtyChildren","reportDirty","child","parents","parent","reportDirtyChild","reportCleanChild","childValues","emptySetPool","pop","childValue","removeDirtyChild","dc","_value","forgetChild","forgetDeps","dep","depend","getValue","depsByKey","dependOn","defaultMakeData","weakness","makeData","lookupArray","getChildTrie","isObjRef","WeakMap","Trie","dispose","newest","oldest","getEntry","older","newer","clean","deps","Entry","count","recompute","rememberParent","getFragmentDoc","recordOptimisticTransaction","transaction","optimisticId","performTransaction","transformDocument","identify","gc","transformForLink","readQuery","rootId","readFragment","fragment","fragmentName","write","dataId","broadcast","writeFragment","wourEmailAddress","mostActiveDevice","noVisitsYet","mostVisitedAccount","summary","createNewUser","expirationDate","fromError","errorValue","toPromise","observable","completed","fromPromise","validateOperation","OPERATION_FIELDS","createOperation","starting","transformOperation","transformedOperation","operationName","throwServerError","statusCode","BrowserCacheLocation","HTTP_REQUEST_TYPE","TemporaryCacheKeys","InMemoryCacheKeys","ApiId","InteractionType","InteractionStatus","BrowserConstants","INTERACTION_IN_PROGRESS_VALUE","INVALID_GRANT_ERROR","POPUP_WIDTH","POPUP_HEIGHT","POPUP_NAME_PREFIX","POLL_INTERVAL_MS","MSAL_SKU","WrapperSKU","DEFAULT_REQUEST","KEY_FORMAT_JWK","File","Blob","resetCaches","disableFragmentWarnings","enableExperimentalFragmentVariables","disableExperimentalFragmentVariables","decodeAuthToken","authToken","StringUtils","createTokenNullOrEmptyError","matches","createTokenParsingError","header","JWSPayload","JWSSig","isEmptyObj","strObj","startsWith","search","endsWith","lastIndexOf","queryStringToObject","trimArrayEntries","removeEmptyStringsFromArray","jsonParseHelper","matchPattern","pattern","RegExp","makeDepKey","storeFieldName","storeObjectReconciler","existingObject","incomingObject","existingValue","incomingValue","supportsResultCaching","store","group","caching","missingFromInvariant","clientOnly","getChildMergeTree","emptyMergeTreePool","maybeRecycleChildMergeTree","childTree","EntityStore","DELETE","delModifier","INVALIDATE","policies","rootIds","refs","getFieldValue","objectOrReference","__ref","canRead","objOrRef","toReference","objOrIdOrRef","mergeIntoStore","ref","merge","toObject","fieldName","storeObject","rootTypenamesById","dependOnExistence","incoming","existing","merged","__exists","hasKeyArgs","__typename","isReference","readField","fieldNameOrOptions","from","fieldValue","newValue","storage","getStorage","typename","getStoreFieldName","evict","evicted","extract","extraRootIds","getRootIdSet","__META","sort","newData","retain","release","ids","snapshot","findChildRefIds","idsToRemove","makeCacheKey","keyMaker","resultCaching","seed","storageTrie","sharedLayerGroup","addLayer","layerId","replay","removeLayer","Root","Layer","fromParent","executeSelectionSet","execSelectionSetImpl","keyArgs","varString","knownResults","executeSubSelectedArray","execSubSelectedArrayImpl","field","addTypename","diffQueryAgainstStore","execResult","fragmentMap","hasMissingFields","missing","isFresh","latest","getMissing","finalResult","handleMissing","objectsToMerge","rootIdsByTypename","workSet","selection","resultName","wasClientOnly","added","fragmentMatches","childResult","reader","writeToStore","operationDefinition","merger","processSelectionSet","mergeTree","written","keyObject","sets","incomingFields","resultFieldKey","processFieldValue","childTypename","getMergeFunction","usingPossibleTypes","applyMerges","getStorageArgs","eVal","iVal","aVal","runMergeFunction","defaultConfig","dataIdFromObject","typePolicies","watches","typenameDocumentCache","makeVar","txCount","maybeBroadcastWatch","fromOptimisticTransaction","broadcastWatch","optimisticData","watchDep","possibleTypes","storeWriter","storeReader","restore","broadcastWatches","watch","immediate","forget","removeOptimistic","idToRemove","newOptimisticData","perform","layer","isUnitless","parseFloat","toUnitless","convertLength","baseFontSize","toUnit","fromUnit","pxLength","outputLength","toFixed","alignProperty","grid","sizeBelow","sizeAbove","fontGrid","pixels","lineHeight","htmlFontSize","responsiveProperty","cssProperty","_ref3$unit","_ref3$breakpoints","breakpoints","_ref3$transform","_defineProperty","factor","breakpoint","responsiveFontSizes","themeInput","_options$breakpoints","_options$disableAlign","disableAlign","_options$factor","_options$variants","variants","theme","typography","convert","breakpointValues","x","variant","style","remFontSize","fontSize","maxFontSize","minFontSize","_formatMuiErrorMessage","operations","bodyText","op","print","ast","leave","printDocASTReducer","addDescription","maybeArray","_maybeArray$filter$jo","wrap","indent","maybeString","isMultiline","hasMultilineItems","chosenURI","queryParams","addQueryParam","serializedVariables","serializedExtensions","preFragment","fragmentStart","queryParamsPrefix","serialized","Name","Variable","Document","OperationDefinition","varDefs","VariableDefinition","SelectionSet","Field","prefix","argsLine","Argument","_ref4","FragmentSpread","_ref5","InlineFragment","_ref6","FragmentDefinition","_ref7","IntValue","_ref8","FloatValue","_ref9","StringValue","_ref10","printBlockString","BooleanValue","_ref11","NullValue","EnumValue","_ref12","ListValue","_ref13","ObjectValue","_ref14","ObjectField","_ref15","Directive","_ref16","NamedType","_ref17","ListType","_ref18","NonNullType","_ref19","SchemaDefinition","_ref20","OperationTypeDefinition","_ref21","ScalarTypeDefinition","_ref22","ObjectTypeDefinition","_ref23","FieldDefinition","_ref24","InputValueDefinition","_ref25","InterfaceTypeDefinition","_ref26","UnionTypeDefinition","_ref27","EnumTypeDefinition","_ref28","EnumValueDefinition","_ref29","InputObjectTypeDefinition","_ref30","DirectiveDefinition","_ref31","SchemaExtension","_ref32","ScalarTypeExtension","_ref33","ObjectTypeExtension","_ref34","InterfaceTypeExtension","_ref35","UnionTypeExtension","_ref36","EnumTypeExtension","_ref37","InputObjectTypeExtension","_ref38","includeQuery","accept","fallbackConfig","configs","fetcher","AbortController","fallbackURI","contextURI","linkOptions","includeUnusedVariables","requestOptions","clientAwarenessHeaders","contextHeaders","_key","rawString","commonIndent","_commonIndent","isFirstLine","isEmptyLine","getBlockStringIndentation","startLine","isBlank","endLine","indentation","preferMultipleLines","isSingleLine","hasLeadingSpace","hasTrailingQuote","hasTrailingSlash","printAsMultipleLines","num","forms","processHoursFunction","nominative","accusative","genitive","_nonIterableRest","useApolloClient","useContext","useBaseQuery","lazy","tick","forceUpdate","updatedOptions","queryDataRef","queryData","current","onNewData","ssrInitiated","memoFn","memo","onCompleted","executeLazy","queryResult","afterExecute","useLazyQuery","useMutation","called","setResult","mutationDataRef","mutationData","execute","useQuery","isMounted","previousOptions","getOptions","storePrevious","unmount","refreshClient","isNew","cleanup","verifyDocumentType","currentObservable","initialize","skip","currentResult","getLoadingResult","shouldResubscribe","startSubscription","endSubscription","updateCurrentData","updateError","completeSubscription","updateResult","onSubscriptionData","onSubscriptionComplete","runMutation","mutationFunctionOptions","onMutationStart","mutationId","generateNewMutationId","mutate","onMutationCompleted","onMutationError","Mutation","mostRecentMutationId","ignoreResults","isMostRecentMutation","runLazy","runLazyQuery","lazyOptions","getQueryResult","observableQueryFields","previousData","obsRefetch","obsFetchMore","obsUpdateQuery","obsStartPolling","obsStopPolling","obsSubscribeToMore","removeQuerySubscription","removeObservable","updateObservableQuery","startQuerySubscription","getExecuteSsrResult","getExecuteResult","fetchData","ssr","handleErrorOrCompleted","renderPromises","ssrDisabled","fetchDisabled","disableNetworkFetches","ssrLoading","stale","addQueryPromise","prepareObservableQueryOptions","Query","displayName","initializeObservableQuery","getSSRObservable","observableQueryOptions","children","watchQuery","registerSSRObservable","newObservableQueryOptions","currentSubscription","resubscribeToQuery","andDelete","setter","forward","handle","MsalProvider","useEffect","logger","useMemo","useState","inProgress","inProgressRef","useRef","callbackId","currentAccounts","arrayA","arrayB","comparisonArray","elementA","elementB","accountArraysAreEqual","setAccounts","EventMessageUtils","eventType","setInProgress","MsalContext","stubbedPublicClientApplication","acquireTokenPopup","BrowserConfigurationAuthError","createStubPcaInstanceCalledError","acquireTokenRedirect","acquireTokenSilent","getAllAccounts","getAccountByHomeId","getAccountByUsername","getAccountByLocalId","handleRedirectPromise","loginPopup","loginRedirect","logout","logoutRedirect","logoutPopup","ssoSilent","addEventCallback","removeEventCallback","getTokenCache","getLogger","setLogger","setActiveAccount","getActiveAccount","initializeWrapperLibrary","setNavigationClient","getInteractionStatusFromEvent","currentStatus","LOGIN_START","Login","SSO_SILENT_START","SsoSilent","ACQUIRE_TOKEN_START","interactionType","Redirect","Popup","AcquireToken","HANDLE_REDIRECT_START","HandleRedirect","LOGOUT_START","Logout","SSO_SILENT_SUCCESS","SSO_SILENT_FAILURE","None","LOGOUT_END","HANDLE_REDIRECT_END","LOGIN_SUCCESS","LOGIN_FAILURE","ACQUIRE_TOKEN_SUCCESS","ACQUIRE_TOKEN_FAILURE","defaultMsalContext","Logger","React","useMsal","ThemeProvider","localTheme","outerTheme","useTheme","mergeOuterLocalTheme","nested","ThemeContext","Provider","customBaitType","accessToLens","accessToLensText","availableNetworks","availableApplicationNetworks","branchOnly","branchAndAccounts","confirmEnableRemoteMonitoringBranch","confirmEnableRemoteMonitoringOrganization","createNewNetwork","currentApplicationNetwork","customConfigurationsFoundText","customConfigurationsFoundWarning","enableRemoteMonitoringText","eventNotificationThresholdHelper","lensAccount","lensPassword","loraWanModeDisabled","loraWanModeEnabled","loraWanModeHelper","loraWanSettingsDevices","loraWanTransmissionFrequency","loraWanTransmissionFrequencyHelper","numberOfEventsHelper","remoteMonitorDevice","productionLine","accountApplied","alertCategory","alertManager","alertMeWhen","alertType","alertSummary","alertsSummary","alertsList","alreadyPreProvisionedDevices","averageDeviceSignal","averageSensorTemperature","batteryCapacity","batteryAlerts","batteryAlertsText","batteryMonitoring","batterySummary","bestBatteryPerformance","branchApplied","createdAlerts","critical","criticalAlerts","criticalBatteryDevices","dateOfLastService","dateOfPreProvision","devEUI","deviceSummary","devicesOverdue","enabledAlerts","eventsAlerts","eventsAlertsText","eventsDiagnose","eventsMonitoring","eventsSummary","eventsTrend","failedJoinAttempts","failedPreProvisionDevices","failedPreProvisioned","failedTransmissions","filtersApplied","goodBatteryDevices","high","highBatteryDevices","highTemperatureDevices","historicPreProvisionedReports","historicalGatewayReading","historicalServiceReadings","ideal","idealTemperatureDevices","joinAttempts","joinRequests","joinStatus","joined","lastConnectionServiceReadings","lastPreProvisioned","lastReading","lastReadings","loRaWanMonitoring","loRaWanSignal","loRaWanSummary","low","lowBatteryDevices","lowTemperatureDevices","mediumBatteryDevices","mediumSignalDevices","mediumTemperatureDevices","numberOfAccounts","networkSignalMonitoring","notJoined","notifications","notificationEmails","notificationEmailsText","organizationNotifications","overdue","pdfReports","pendingPreProvisionDevices","pendingPreProvisionedDevices","percentageOfTheTrapsHave","preProvision","preProvisionedBy","preProvisionDate","preProvisionedDevices","region","remoteMonitorAlerts","remoteMonitorHistorical","remoteMonitorModeDevice","remoteMonitorOverview","remoteMonitorSignal","remoteMonitorStatus","remoteMonitorStatusText","remoteMonitorSummary","reportedOn","selectAvailableAccount","selectAvailableBranch","selectDeviceType","selectOrganization","serviceReadingPackage","strongSignalDevices","successfulPreProvisioned","totalPreProvisioned","temperatureAlerts","temperatureAlertsText","temperatureLevel","temperatureMonitoring","temperatureReading","temperatureSummary","temperatureTrend","trapEvents","totalAlerts","totalPayloadsFailed","totalPayloadsSent","warningAlerts","weakSignalDevices","hoursLabel","daysLabel","failed","noEvents","temp","emptyFunction","emptyFunctionWithReset","ReactPropTypesSecret","resetWarningCache","shim","propName","componentName","propFullName","secret","getShim","isRequired","ReactPropTypes","bool","func","symbol","arrayOf","element","elementType","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","wrapDestructiveCacheMethod","methodName","original","destructiveMethodCounts","cancelNotifyTimeout","shouldWriteResult","errorPolicy","ignoreErrors","writeWithErrors","mergeOptions","defaults","resolvers","fragmentMatcher","addResolvers","setFragmentMatcher","resolverGroup","setResolvers","getResolvers","runResolvers","remoteResult","onlyRunForcedResolvers","resolveDocument","localResult","getFragmentMatcher","clientQuery","serverQuery","prepareContext","getCacheKey","addExportedVariables","buildRootValueFromCache","shouldForceResolvers","forceResolvers","enter","arg","rootValue","mainDefinition","fragments","defaultOperationType","definitionOperation","execContext","exportedVariables","resolveSelectionSet","resultsToMerge","resolveField","fieldResult","fragmentResult","aliasedFieldName","aliasUsed","defaultResult","resultPromise","resolverType","resolverMap","directive","resolveSubSelectedArray","listeners","lastRequestId","stopped","observableQuery","init","updateWatch","setDiff","oldDiff","notifyTimeout","oq","oqListener","notify","shouldNotify","listener","lastWatch","shouldWrite","lastWrite","dmCount","markResult","allowCacheWrite","markReady","markError","link","queryDeduplication","onBroadcast","localState","queries","fetchCancelFns","transformCache","queryIdCounter","requestIdCounter","mutationIdCounter","inFlightLinkObservables","mutationStore","_info","stopQueryNoBroadcast","cancelPendingFetches","optimisticResponse","updateQueries","refetchQueries","awaitRefetchQueries","updateWithProxyFn","generateMutationId","getVariables","hasClientExports","mutationStoreValue","markMutationOptimistic","storeResult","getObservableFromLink","markMutationResult","refetchQueryPromises","refetchQuery","queryOptions","updater","currentQueryResult","nextQueryResult","mutationResult","queryVariables","getQueryStore","transformed","forLink","defaultVars","doc","ObservableQuery","generateRequestId","stopQueryInStore","stopQueryInStoreNoBroadcast","resetStore","reFetchObservableQueries","includeStandby","observableQueryPromises","getQuery","makeObservable","getLocalState","deduplication","forceFetch","of","getResultsFromLink","hasErrors","aqr","oldNetworkStatus","normalized","fromVariables","fetchQueryByPolicy","reason","readCache","resultsFromCache","fromData","resolved","resultsFromLink","newContext","defaultOptions","resetStoreCallbacks","clearStoreCallbacks","ssrForceFetchDelay","connectToDevTools","__APOLLO_CLIENT__","typeDefs","clientAwarenessName","clientAwarenessVersion","empty","devToolsHookCb","state","mutations","dataWithOptimisticResults","__actionHookForDevTools","__requestRaw","payload","onResetStore","onClearStore","serializedState","setLocalStateFragmentMatcher","setLink","newLink","generateAccountId","environment","CACHE_KEY_SEPARATOR","generateAccountKey","AccountEntity","generateAccountCacheKey","tenantId","realm","username","localAccountId","generateType","authorityType","ADFS_ACCOUNT_TYPE","ADFS","MSAV1_ACCOUNT_TYPE","MSA","MSSTS_ACCOUNT_TYPE","MSSTS","GENERIC_ACCOUNT_TYPE","GENERIC","createUnexpectedAccountTypeError","getAccountInfo","idTokenClaims","accountInterface","clientInfo","idToken","oboAssertion","cloudGraphHostName","msGraphHost","getPreferredCache","createInvalidCacheEnvironmentError","claims","tid","oid","preferred_username","emails","createGenericAccount","Adfs","upn","generateHomeAccountId","serverClientInfo","authType","cryptoObj","accountId","verbose","isAccountEntity","entity","accountInfoIsEqual","accountA","accountB","compareClaims","claimsMatch","accountAClaims","accountBClaims","iat","nonce","defined","let","IntlProvider","intl","IntlContext","scope","dictionary","deepAssign","out","mark","URL_FLAG","Child","IntlProviderWrapper","getWrappedComponent","template","replacer","EMPTY","currentFields","parts","v","Text","fallback","none","one","singular","other","HighlightI18N","const","dictionaryKey","background","translateMapping","onlyTextNodes","properties","def","Localizer","MarkupText","Html","html","dangerouslySetInnerHTML","__html","withText","mapping","WithTextWrapper","translations","undef","originalModule","webpackPolyfill","createMixins","spacing","mixins","_toolbar","gutters","styles","paddingLeft","paddingRight","up","toolbar","minHeight","addLightOrDark","intent","direction","shade","tonalOffset","tonalOffsetLight","light","tonalOffsetDark","dark","lighten","main","darken","createPalette","palette","getContrastText","getContrastRatio","primary","contrastThreshold","_palette$primary","indigo","_palette$secondary","secondary","pink","A200","A400","A700","_palette$error","red","_palette$warning","orange","_palette$info","blue","_palette$success","green","_palette$type","_palette$contrastThre","_palette$tonalOffset","augmentColor","color","mainShade","lightShade","darkShade","contrastText","common","grey","createTypography","_ref$fontFamily","fontFamily","_ref$fontSize","_ref$fontWeightLight","fontWeightLight","_ref$fontWeightRegula","fontWeightRegular","_ref$fontWeightMedium","fontWeightMedium","_ref$fontWeightBold","fontWeightBold","_ref$htmlFontSize","allVariants","pxToRem2","pxToRem","coef","buildVariant","fontWeight","letterSpacing","casing","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","button","caseAllCaps","caption","overline","createShadow","createSpacing","spacingInput","mui","createUnarySpacing","_len","argument","black","white","200","300","400","500","600","700","800","900","A100","hint","divider","paper","default","hover","hoverOpacity","selectedOpacity","disabledBackground","disabledOpacity","focus","focusOpacity","activatedOpacity","icon","textTransform","shadows","borderRadius","createMuiTheme","breakpointsInput","_options$mixins","mixinsInput","_options$palette","paletteInput","_options$typography","typographyInput","createBreakpoints","muiTheme","overrides","transitions","zIndex","acc","hooks","hookCallback","isObject","hasOwnProp","isObjectEmpty","getOwnPropertyNames","k","isUndefined","isNumber","isDate","res","extend","valueOf","createUTC","locale","strict","createLocalOrUTC","utc","getParsingFlags","_pf","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidEra","invalidMonth","invalidFormat","userInvalidated","iso","parsedDateParts","era","rfc2822","weekdayMismatch","isValid","_isValid","flags","parsedParts","isNowValid","_d","getTime","invalidWeekday","_strict","bigHour","isFrozen","createInvalid","NaN","copyConfig","to","prop","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","updateInProgress","updateOffset","isMoment","msg","suppressDeprecationWarnings","deprecate","firstTime","deprecationHandler","deprecateSimple","deprecations","isFunction","mergeConfigs","parentConfig","childConfig","Locale","zeroFill","targetLength","forceSign","absNumber","abs","addFormatToken","padded","formatTokenFunctions","localeData","formatMoment","expandFormat","formatFunctions","formattingTokens","mom","makeFormatFunction","replaceLongDateFormatTokens","localFormattingTokens","lastIndex","addUnitAlias","shorthand","lowerCase","aliases","normalizeUnits","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","addUnitPriority","priority","priorities","isLeapYear","absFloor","ceil","toInt","argumentForCoercion","coercedNumber","makeGetSet","keepTime","set$1","daysInMonth","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","regexEscape","matched","p1","p2","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","modMonth","handleStrictParse","monthName","ii","llc","toLocaleLowerCase","_monthsParse","_longMonthsParse","_shortMonthsParse","setMonth","dayOfMonth","getSetMonth","computeMonthsParse","cmpLenRev","shortPieces","longPieces","mixedPieces","_monthsRegex","_monthsShortRegex","_monthsStrictRegex","_monthsShortStrictRegex","daysInYear","createDate","ms","getFullYear","setFullYear","createUTCDate","UTC","getUTCFullYear","setUTCFullYear","firstWeekOffset","fwd","getUTCDay","dayOfYearFromWeeks","weekday","resYear","resDayOfYear","dayOfYear","weekOfYear","resWeek","weekOffset","weeksInYear","weekOffsetNext","shiftWeekdays","ws","handleStrictParse$1","weekdayName","_weekdaysParse","_shortWeekdaysParse","_minWeekdaysParse","computeWeekdaysParse","minp","shortp","longp","minPieces","_weekdaysRegex","_weekdaysShortRegex","_weekdaysMinRegex","_weekdaysStrictRegex","_weekdaysShortStrictRegex","_weekdaysMinStrictRegex","hFormat","lowercase","matchMeridiem","_meridiemParse","commonPrefix","arr1","arr2","minl","normalizeLocale","loadLocale","oldLocale","locales","globalLocale","_abbr","aliasedRequire","getSetGlobalLocale","getLocale","baseConfig","_config","parentLocale","localeFamilies","j","chooseLocale","checkOverflow","_overflowDayOfYear","_overflowWeeks","_overflowWeekday","configFromISO","allowTime","timeFormat","tzFormat","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","untruncateYear","yearStr","configFromRFC2822","parsedArray","monthStr","dayStr","hourStr","minuteStr","secondStr","defaultLocaleMonthsShort","weekdayStr","parsedInput","defaultLocaleWeekdaysShort","getDay","checkWeekday","obsOffset","militaryOffset","numOffset","obsOffsets","calculateOffset","setUTCMinutes","getUTCMinutes","configFromArray","currentDate","expectedWeekday","yearToUse","nowValue","_useUTC","getUTCMonth","getUTCDate","getMonth","getDate","currentDateArray","weekYear","weekdayOverflow","curWeek","GG","W","E","createLocal","_week","gg","_dayOfYear","dayOfYearFromWeekInfo","_nextDay","ISO_8601","RFC_2822","skipped","stringLength","totalParsedInputLength","_meridiem","isPm","meridiemFixWrap","erasConvertYear","prepareConfig","tempConfig","bestMoment","scoreToBeat","currentScore","validFormatFound","bestFormatIsValid","score","configFromStringAndArray","aspNetJsonRegex","createFromInputFallback","configFromString","second","millisecond","configFromObject","configFromInput","isUTC","pickBy","moments","Duration","quarters","quarter","weeks","isoWeek","unitHasDecimal","ordering","isDurationValid","_milliseconds","_days","_months","_data","_bubble","isDuration","absRound","utcOffset","sign","offsetFromString","matcher","chunkOffset","cloneWithOffset","model","setTime","local","getDateOffset","getTimezoneOffset","isUtc","createDuration","ret","diffRes","aspNetRegex","isoRegex","parseIso","base","isBefore","positiveMomentsDifference","momentsDifference","inp","isAfter","createAdder","tmp","addSubtract","isAdding","isString","isMomentInput","arrayTest","dataTypeTest","isNumberOrStringArray","objectTest","propertyTest","isMomentInputObject","isCalendarSpec","monthDiff","wholeMonthDiff","anchor","newLocaleData","mod$1","dividend","divisor","localStartOfDate","utcStartOfDate","matchEraAbbr","erasAbbrRegex","computeErasParse","abbrPieces","namePieces","narrowPieces","_erasRegex","_erasNameRegex","_erasAbbrRegex","_erasNarrowRegex","addWeekYearFormatToken","getSetWeekYearHelper","weeksTarget","setWeekAll","dayOfYearData","parseMs","preParsePostFormat","get$1","listMonthsImpl","listWeekdaysImpl","localeSorted","addSubtract$1","absCeil","daysToMonths","monthsToDays","makeAs","as","makeGetter","substituteTimeAgo","toISOString$1","totalSign","ymSign","daysSign","hmsSign","abs$1","total","asSeconds","fun","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchOffset","matchShortOffset","matchWord","defaultLocaleMonths","MONTHS_IN_FORMAT","defaultMonthsShortRegex","defaultMonthsRegex","parseTwoDigitYear","getSetYear","weekdaysMinRegex","weekdaysShortRegex","weekdaysRegex","defaultLocaleWeekdays","defaultLocaleWeekdaysMin","defaultWeekdaysRegex","defaultWeekdaysShortRegex","defaultWeekdaysMinRegex","kInput","_isPm","pos1","pos2","getSetHour","UT","GMT","EDT","EST","CDT","CST","MDT","MST","PDT","PST","prototypeMin","prototypeMax","subtract","defaultFormat","defaultFormatUtc","lang","erasNameRegex","erasNarrowRegex","erasParse","_eraYearOrdinalRegex","isoWeekYear","_dayOfMonthOrdinalParse","_ordinalParse","_dayOfMonthOrdinalParseLenient","getSetDayOfMonth","getSetMinute","getSetMillisecond","getSetSecond","formats","sod","startOf","calendarFormat","asFloat","that","zoneDelta","endOf","startOfDate","isoWeekday","inputString","humanize","fromNow","toNow","invalidAt","localInput","isBetween","inclusivity","localFrom","localTo","isSame","inputMs","isSameOrAfter","isSameOrBefore","parsingFlags","prioritized","unitsObj","getPrioritizedUnits","toArray","toDate","toISOString","keepOffset","zone","isLocal","for","unix","creationData","eraName","eraNarrow","eraAbbr","eraYear","dir","isoWeeks","weekInfo","weeksInWeekYear","isoWeeksInYear","isoWeeksInISOWeekYear","parseWeekday","parseIsoWeekday","keepLocalTime","keepMinutes","localAdjust","_changeInProgress","parseZone","tZone","hasAlignedHourOffset","isDST","isUtcOffset","zoneAbbr","zoneName","dates","isDSTShifted","_isDSTShifted","array1","array2","dontConvert","lengthDiff","diffs","compareArrays","proto$1","_calendar","_longDateFormat","formatUpper","tok","_invalidDate","_ordinal","_relativeTime","pastFuture","_eras","_monthsShort","_monthsParseExact","firstDayOfYear","firstDayOfWeek","_weekdays","_weekdaysMin","_weekdaysShort","_weekdaysParseExact","_fullWeekdaysParse","langData","mathAbs","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asQuarters","asYears","thresholds","proto$2","monthsFromDays","argWithSuffix","argThresholds","withSuffix","th","posNegDuration","relativeTime$1","toIsoString","updateLocale","tmpLocale","relativeTimeRounding","roundingFunction","relativeTimeThreshold","threshold","limit","myMoment","HTML5_FMT","DATETIME_LOCAL","DATETIME_LOCAL_SECONDS","DATETIME_LOCAL_MS","DATE","TIME","TIME_SECONDS","TIME_MS","WEEK","MONTH","getHookState","currentComponent","currentHook","initialState","useReducer","invokeOrReturn","reducer","hookState","currentIndex","_reducer","nextValue","setState","argsChanged","useLayoutEffect","initialValue","useImperativeHandle","createHandle","factory","useCallback","useDebugValue","formatter","useErrorBoundary","errState","componentDidCatch","flushAfterPaintEffects","afterPaintEffects","component","invokeCleanup","invokeEffect","hook","comp","oldArgs","newArgs","prevRaf","oldBeforeDiff","oldBeforeRender","oldAfterDiff","diffed","oldCommit","oldBeforeUnmount","vnode","requestAnimationFrame","raf","done","HAS_RAF","cancelAnimationFrame","commitQueue","eifelerRegelAppliesToNumber","lastDigit","defaultIsExtractableFile","addFile","storedPaths","FileList","ponyfill","clamp","hexToRgb","re","colors","rgbToHex","_decomposeColor","decomposeColor","hex","hslToRgb","rgb","recomposeColor","marker","foreground","lumA","getLuminance","lumB","Number","emphasize","coefficient","fade","Punycode","internals","rules","rule","suffix","punySuffix","wildcard","exception","findRule","punyDomain","toASCII","errorCodes","DOMAIN_TOO_SHORT","DOMAIN_TOO_LONG","LABEL_STARTS_WITH_DASH","LABEL_ENDS_WITH_DASH","LABEL_TOO_LONG","LABEL_TOO_SHORT","LABEL_INVALID_CHARS","validate","ascii","label","labels","tld","sld","subdomain","listed","domainParts","handlePunycode","tldParts","privateParts","unshift","_unsupportedIterableToArray","minLen","mobileStepper","speedDial","appBar","drawer","modal","snackbar","tooltip","argsFromFieldSpecifier","spec","makeFieldFunctionOptions","fieldSpec","mergeObjects","makeMergeObjectsFunction","eType","iType","keyArgsFnFromSpecifier","specifier","computeKeyObject","keyFieldsFnFromSpecifier","trie","aliasMap","makeAliasMap","workQueue","responseKey","storeKey","subsets","prevKey","keyObj","responseName","defaultDataIdFromObject","_id","nullKeyFieldsFn","simpleKeyArgsFn","_args","mergeTrueFn","mergeFalseFn","_","toBeAdded","supertypeMap","fuzzySubtypes","setRootTypename","addPossibleTypes","addTypePolicies","ROOT_QUERY","policy","getTypePolicy","keyFn","specifierOrId","queryType","mutationType","subscriptionType","updateTypePolicy","setMerge","keyFields","getFieldPolicy","which","supertype","getSupertypeSet","subtype","supertypes","rest","inbox","createIfMissing","fieldPolicies","supertypeSet","typenameSupertypeSet","needToCheckFuzzySubtypes","regExp","fuzzyString","specifierOrString","readOptions","parentTypename","packageName","packageVersion","localCallback","piiLoggingEnabled","logLevel","correlationId","logMessage","logHeader","executeCallback","errorPii","warningPii","infoPii","verbosePii","trace","Trace","tracePii","isPiiLoggingEnabled","ClientAuthErrorMessage","clientInfoDecodingError","desc","clientInfoEmptyError","tokenParsingError","nullOrEmptyToken","endpointResolutionError","unableToGetOpenidConfigError","hashNotDeserialized","blankGuidGenerated","invalidStateError","stateMismatchError","stateNotFoundError","nonceMismatchError","nonceNotFoundError","noTokensFoundError","multipleMatchingTokens","multipleMatchingAccounts","multipleMatchingAppMetadata","tokenRequestCannotBeMade","appendEmptyScopeError","removeEmptyScopeError","appendScopeSetError","emptyInputScopeSetError","DeviceCodePollingCancelled","DeviceCodeExpired","DeviceCodeUnknownError","NoAccountInSilentRequest","invalidCacheRecord","invalidCacheEnvironment","noAccountFound","CachePluginError","noCryptoObj","invalidCacheType","unexpectedAccountType","unexpectedCredentialType","invalidAssertion","invalidClientCredential","tokenRefreshRequired","userTimeoutReached","tokenClaimsRequired","noAuthorizationCodeFromServer","noAzureRegionDetected","accessTokenEntityNullError","bindingKeyNotRemovedError","errorCode","ClientAuthError","caughtError","caughtExtractionError","invalidRawTokenString","createEndpointDiscoveryIncompleteError","errDetail","createNetworkError","endpoint","createUnableToGetOpenidConfigError","createHashNotDeserializedError","hashParamObj","createInvalidStateError","invalidState","errorString","createStateMismatchError","createStateNotFoundError","missingState","createNonceMismatchError","createNonceNotFoundError","missingNonce","createNoTokensFoundError","createMultipleMatchingTokensInCacheError","createMultipleMatchingAccountsInCacheError","createMultipleMatchingAppMetadataInCacheError","createTokenRequestCannotBeMadeError","createAppendEmptyScopeToSetError","givenScope","createRemoveEmptyScopeFromSetError","createAppendScopeSetError","appendError","createEmptyInputScopeSetError","createDeviceCodeCancelledError","createDeviceCodeExpiredError","createDeviceCodeUnknownError","createNoAccountInSilentRequestError","createNullOrUndefinedCacheRecord","createNoAccountFoundError","createCachePluginError","createNoCryptoObjectError","createInvalidCacheTypeError","createUnexpectedCredentialTypeError","createInvalidAssertionError","createInvalidCredentialError","createRefreshRequiredError","createUserTimeoutReachedError","createTokenClaimsRequiredError","createNoAuthCodeInServerResponseError","createBindingKeyNotRemovedError","symbolObservablePonyfill","MomentUtils","_b","yearFormat","yearMonthFormat","dateTime12hFormat","dateTime24hFormat","time12hFormat","time24hFormat","defaultMoment","isNull","comparing","isAfterDay","isBeforeDay","isBeforeYear","isAfterYear","startOfDay","endOfDay","formatString","formatNumber","numberToFormat","getHours","addDays","setHours","getMinutes","setMinutes","getSeconds","setSeconds","isSameDay","isSameMonth","isSameYear","isSameHour","getMeridiemText","ampm","startOfMonth","endOfMonth","getNextMonth","getPreviousMonth","getMonthArray","monthArray","getYear","setYear","mergeDateAndTime","getWeekdays","isEqual","getWeekArray","nestedWeeks","weekNumber","getYearRange","startDate","endDate","getCalendarHeaderText","getYearText","getDatePickerHeaderText","getDateTimePickerHeaderText","getMonthText","getDayText","getHourText","getMinuteText","getSecondText","equal","check","aTag","bTag","previouslyCompared","aKeys","definedKeys","bKeys","keyCount","aIterator","entries","isMap","aKey","aValue","aCode","fnToStr","fromIndex","full","nativeCodeSuffix","previousComparisons","isDefinedKey","bSet","handleBreakpoints","propValue","styleFromPropValue","themeBreakpoints","defaultBreakpoints","_themeBreakpoints","xs","sm","md","lg","xl","DocumentType","Subscription","cached","super","getApolloContext","createContext","ApolloContext","_arrayLikeToArray","12","13","40","_slicedToArray","arrayWithHoles","_arr","_n","_e","_s","iterableToArrayLimit","nonIterableRest","useUtils","utils","checkUtils","MuiPickersContext","MuiPickersUtilsProvider","Utils","libInstance","React.createElement","BrowserConfigurationAuthErrorMessage","createRedirectUriEmptyError","createPostLogoutRedirectUriEmptyError","createStorageNotSupportedError","givenStorageLocation","createRedirectCallbacksNotSetError","createInMemoryRedirectUnavailableError","__extends","__","extendStatics","__rest","getOwnPropertySymbols","propertyIsEnumerable","__awaiter","thisArg","_arguments","P","generator","fulfilled","step","rejected","__generator","verb","ops","trys","g","sent","__spreadArrays","il","jl","translateSingular","special","objectWithoutPropertiesLoose","sourceSymbolKeys","msalInstance","PublicClientApplication","httpLink","errorLink","authLink","activeAccount","authorization","ApolloClient","InMemoryCache","MainContent","setLanguageDefinition","tokenReceived","setTokenReceived","changeLanguage","spanishDefinition","frenchDefinition","germanDefinition","italianDefinition","dutchDefinition","englishDefinition","onChange","scrollTo","top","url","route","includes","authResult","languageDefinition","opts","cmp","cycles","seen","seenIndex","numbersFuture","numbersPast","verbalNumber","load","AsyncComponent","Component","componentWillMount","mod","shouldComponentUpdate","render","getPreviousSibling","inner","__k","dom","__e","__v","me","nextSibling","__P","_parentDom","firstChild","localName","PENDING","preload","_createClass","getMethod","getSpecies","ctor","SymbolSpecies","isObservable","hostReportError","enqueue","cleanupSubscription","_cleanup","closeSubscription","_queue","_state","notifySubscription","onNotify","queue","flushSubscription","hasSymbols","hasSymbol","getSymbol","SymbolIterator","SymbolObservable","subscriber","subscriptionObserver","SubscriptionObserver","_subscriber","_this3","_this4","C","hasSeed","hasValue","_this5","sources","startNext","_this6","completeIfDone","outer","closed","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","return","_len2","_key2","formatMuiErrorMessage","removeNode","parentNode","removeChild","normalizedProps","defaultProps","createVNode","createRef","Fragment","getDomSibling","childIndex","sibling","updateParentDomPointers","enqueueRender","rerenderQueue","prevDebounce","debounceRendering","defer","oldVNode","oldDom","parentDom","ownerSVGElement","commitRoot","diffChildren","renderResult","newParentVNode","oldParentVNode","globalContext","isSvg","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","oldChildren","EMPTY_ARR","oldChildrenLength","EMPTY_OBJ","reorderChildren","placeChild","applyRef","toChildArray","nextDom","sibDom","insertBefore","setStyle","setProperty","IS_NON_DIMENSIONAL","oldValue","useCapture","cssText","_listeners","eventProxyCapture","eventProxy","removeEventListener","removeAttribute","newVNode","oldProps","oldState","clearProcessingException","newProps","componentContext","newType","contextType","doRender","getDerivedStateFromProps","componentDidMount","componentWillReceiveProps","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","diffElementNodes","oldHtml","newHtml","nodeType","createTextNode","createElementNS","is","childNodes","attributes","innerHTML","hydrate","diffProps","checked","parentVNode","skipRemove","componentWillUnmount","replaceNode","cloneElement","contextId","Consumer","contextValue","subs","ctx","_props","isValidElement","handled","getDerivedStateFromError","shouldInclude","directiveArguments","ifArgument","ifValue","getInclusionDirectives","every","evaledValue","hasDirectives","getDirectiveNames","getFragmentQueryDocument","actualFragmentName","createFragmentMap","symTable","getFragmentFromSelection","makeReference","valueToObjectRepresentation","argObj","isIntValue","isFloatValue","isBooleanValue","isStringValue","isObjectValue","isVariable","isListValue","listValue","nestedArgArrayObj","isEnumValue","isNullValue","storeKeyNameFromField","directivesObj","getStoreKeyName","filterKeys","completeFieldName","stringifiedArgs","KNOWN_DIRECTIVES","argumentsObjectFromField","resultKeyNameFromField","getTypenameFromResult","isField","isInlineFragment","checkDocument","getOperationDefinition","getOperationName","getFragmentDefinitions","getQueryDefinition","queryDef","getMainDefinition","queryDoc","fragmentDefinition","getDefaultValues","defaultValues","defs","filterInPlace","elem","nullIfDocIsEmpty","fragmentDef","getFragmentDefinition","getDirectiveMatcher","removeDirectivesFromDocument","variablesInUse","variablesToRemove","fragmentSpreadsInUse","fragmentSpreadsToRemove","modifiedDoc","getAllFragmentSpreadsFromSelectionSet","allFragments","frag","argMatcher","aConfig","getArgumentMatcher","varDef","argConfig","removeArgumentsFromDocument","fs","removeFragmentSpreadFromDocument","addTypenameToDocument","TYPENAME_FIELD","removeConnectionDirectiveFromDocument","connectionRemoveConfig","buildQueryFromSelectionSet","removeClientSetsFromDocument","mergeDeep","mergeDeepArray","cloneDeep","cloneDeepHelper","maybeDeepFreeze","iterateObserversSafely","observersWithMethod","obs","asyncMap","catchFn","makeCallback","examiner","delegate","activeCallbackCount","handler","isPromiseLike","isNonEmptyArray","graphQLResultHasError","compact","objects","willRemove","defaultReconciler","reconciler","pastCopies","sourceKey","targetValue","shallowCopyForMerge","addCount","handlers","iterable","deliverLastMessage","nextOrError","quietly","species","canUseWeakMap","navigator","product","between","endIndex","_breakpoints$values","_breakpoints$unit","_breakpoints$step","down","upperbound","only","width","isOpenIdConfigResponse","CcsCredentialType","decimalToHex","generateGuid","buffer","Uint8Array","getRandomValues","MathUtils","guidHolder","guidResponse","random","isGuid","guid","stringToUtf8Arr","sDOMStr","nChr","nArrLen","nStrLen","nMapIdx","aBytes","nIdx","nChrIdx","stringToArrayBuffer","dataString","ArrayBuffer","dataView","utf8ArrToString","sView","nPart","nLen","urlEncode","urlEncodeArr","inputArr","base64EncArr","inputUtf8Arr","BrowserStringUtils","eqLen","sB64Enc","nMod3","nUint24","uint6ToB64","nUint6","encodedString","base64DecToArr","base64String","nBlockSize","nInLen","nOutLen","nMod4","nOutIdx","nInIdx","b64ToUint6","charNum","BrowserAuthErrorMessage","BrowserAuthError","createPkceNotGeneratedError","createCryptoNotAvailableError","createHttpMethodNotImplementedError","createEmptyNavigationUriError","createEmptyHashError","hashValue","createHashDoesNotContainStateError","createHashDoesNotContainKnownPropertiesError","createUnableToParseStateError","createStateInteractionTypeMismatchError","createInteractionInProgressError","createPopupWindowError","createEmptyWindowCreatedError","createUserCancelledError","createMonitorPopupTimeoutError","createMonitorIframeTimeoutError","createRedirectInIframeError","windowParentCheck","createBlockReloadInHiddenIframeError","createBlockAcquireTokenInPopupsError","createIframeClosedPrematurelyError","createSilentSSOInsufficientInfoError","createSilentLogoutUnsupportedError","createNoAccountError","createSilentPromptValueError","givenPrompt","createUnableToParseTokenRequestCacheError","createNoTokenRequestCacheError","createAuthRequestNotSetError","createNoCachedAuthorityError","createNonBrowserEnvironmentError","createDatabaseNotOpenError","createNoNetworkConnectivityError","createPostRequestFailedError","errorDesc","createGetRequestFailedError","createFailedToParseNetworkResponseError","createUnableToLoadTokenError","errorDetail","createSigningKeyNotFoundInStorageError","keyId","AuthError","base64Encode","generateCodes","codeVerifier","generateCodeVerifier","generateCodeChallengeFromVerifier","codeChallenge","verifier","challenge","pkceCodeVerifier","sha256Digest","pkceHashedCodeVerifier","PUBLIC_EXPONENT","hasCryptoAPI","_keygenAlgorithmOptions","hash","modulusLength","publicExponent","hasIECrypto","getMSCryptoDigest","getSubtleCryptoDigest","dataBuffer","generateKeyPair","extractable","usages","msCryptoGenerateKey","subtle","generateKey","exportJwk","msCryptoExportJwk","exportKey","importJwk","keyString","BrowserCrypto","getJwkString","keyBuffer","msCryptoImportKey","importKey","msCryptoSign","hasBrowserCrypto","algorithm","digest","digestOperation","msGenerateKey","msExportKey","resultString","msImportKey","msSign","jwk","dbName","tableName","dbOpen","open","openDB","indexedDB","createObjectStore","db","dbGet","objectStore","put","dbPut","dbDelete","browserCrypto","b64Encode","b64Decode","guidGenerator","pkceGenerator","CryptoOps","DB_NAME","TABLE_NAME","DB_VERSION","createNewGuid","generatePkceCodes","getPublicKeyThumbprint","EXTRACTABLE","POP_KEY_USAGES","keyPair","publicKey","publicKeyJwk","publicJwkString","kty","publicJwkBuffer","publicJwkHash","privateKey","privateKeyJwk","unextractablePrivateKey","requestMethod","resourceRequestMethod","requestUri","resourceRequestUri","removeTokenBindingKey","kid","clearKeystore","signJwt","cachedKeyPair","publicKeyJwkString","encodedHeader","alg","cnf","encodedPayload","tokenBuffer","tokenString","signatureBuffer","encodedSignature","DEFAULT_CRYPTO_IMPLEMENTATION","createUnexpectedError","subError","ServerError","InteractionRequiredAuthErrorMessage","InteractionRequiredAuthSubErrorMessage","InteractionRequiredAuthError","isInteractionRequiredError","isInteractionRequiredErrorCode","isInteractionRequiredSubError","isInteractionRequiredErrorDesc","irErrorCode","CredentialEntity","generateAccountIdForCacheKey","generateCredentialId","generateCredentialIdForCacheKey","credentialType","familyId","generateTarget","generateTargetForCacheKey","generateCredentialKey","generateCredentialCacheKey","tokenType","ID_TOKEN","ACCESS_TOKEN","ACCESS_TOKEN_WITH_AUTH_SCHEME","REFRESH_TOKEN","getCredentialType","Constants","NOT_DEFINED","credentialKey","POP","ClientConfigurationErrorMessage","ClientConfigurationError","createClaimsRequestParsingError","claimsRequestParseError","createInsecureAuthorityUriError","urlString","createUrlParseError","urlParseError","createUrlEmptyError","createEmptyScopesArrayError","createClientIdSingleScopeError","inputScopes","createInvalidPromptError","promptValue","createInvalidClaimsRequestError","createEmptyLogoutRequestError","createEmptyTokenRequestError","createInvalidCodeChallengeMethodError","createInvalidCodeChallengeParamsError","createInvalidCloudDiscoveryMetadataError","createInvalidAuthorityMetadataError","createUntrustedAuthorityError","scopeArr","filteredInput","validateInputScopes","fromString","inputScopeString","ScopeSet","containsScope","lowerCaseScopesSet","printScopesLowerCase","containsScopeSet","scopeSet","asArray","containsOnlyOIDCScopes","defaultScopeCount","defaultScope","appendScope","newScope","appendScopes","newScopes","removeScope","removeOIDCScopes","unionScopeSets","otherScopes","unionScopes","intersectingScopeSets","sizeOtherScopes","getScopeCount","sizeThisScopes","printScopes","rawToken","AuthToken","extractTokenClaims","encodedToken","decodedToken","base64Decoded","cryptoImpl","getAccountsFilteredBy","accountValues","accountKey","CacheManager","readIdTokenFromCache","saveCacheRecord","cacheRecord","setAccount","setIdTokenCredential","accessToken","saveAccessToken","refreshToken","setRefreshTokenCredential","appMetadata","setAppMetadata","credential","currentTokenCache","getCredentialsFilteredBy","currentScopes","currentAccessTokens","accessTokens","tokenEntity","removeCredential","setAccessTokenCredential","accountFilter","getAccountsFilteredByInternal","allCacheKeys","getKeys","matchingAccounts","cacheKey","getAccount","matchHomeAccountId","matchEnvironment","matchRealm","getCredentialsFilteredByInternal","matchingCredentials","idTokens","refreshTokens","credType","getSpecificCredential","matchOboAssertion","matchCredentialType","matchClientId","matchFamilyId","matchTarget","matchTokenType","removeItem","CREDENTIAL","getAppMetadataFilteredBy","getAppMetadataFilteredByInternal","matchingAppMetadata","isAppMetadata","getAppMetadata","getAuthorityMetadataByAlias","host","getAuthorityMetadataKeys","matchedEntity","isAuthorityMetadata","getAuthorityMetadata","removeAllAccounts","removedAccounts","removeAccount","removeAccountContext","ACCOUNT","removedCredentials","cacheEntity","removeAppMetadata","APP_METADATA","readCacheRecord","authScheme","cachedAccount","readAccountFromCache","cachedIdToken","cachedAccessToken","readAccessTokenFromCache","cachedRefreshToken","readRefreshTokenFromCache","cachedAppMetadata","readAppMetadataFromCache","credentialCache","numIdTokens","accessTokenFilter","numAccessTokens","familyRT","appMetadataEntries","numAppMetadata","isAppMetadataFOCI","cloudMetadata","entityScopeSet","requestTargetScopeSet","OFFLINE_ACCESS_SCOPE","CACHE_KEY","generateAuthorityMetadataCacheKey","getIdTokenCredential","getAccessTokenCredential","getRefreshTokenCredential","json","propertyName","setServerTelemetry","getServerTelemetry","setAuthorityMetadata","setThrottlingCache","getThrottlingCache","containsKey","createIdTokenEntity","idTokenEntity","IdTokenEntity","isIdTokenEntity","nowSeconds","isTokenExpired","expiresOn","expirationSec","TimeUtils","wasClockTurnedBack","cachedAt","createAccessTokenEntity","extExpiresOn","cryptoUtils","refreshOn","atEntity","AccessTokenEntity","currentTime","extendedExpiresOn","BEARER","tokenClaims","isAccessTokenEntity","createRefreshTokenEntity","rtEntity","RefreshTokenEntity","isRefreshTokenEntity","generateAppMetadataKey","AppMetadataEntity","generateAppMetadataCacheKey","createAppMetadataEntity","isAppMetadataEntity","failedRequests","cacheHits","isServerTelemetryEntity","validateKey","validateEntity","expiresAt","REFRESH_TIME_SECONDS","updateCloudDiscoveryMetadata","metadata","fromNetwork","preferred_cache","preferred_network","aliasesFromNetwork","updateEndpointMetadata","authorization_endpoint","token_endpoint","end_session_endpoint","issuer","endpointsFromNetwork","updateCanonicalAuthority","canonical_authority","resetExpiresAt","isExpired","isAuthorityMetadataEntity","isThrottlingEntity","THROTTLING_PREFIX","setRequestState","userState","meta","libraryState","ProtocolUtils","generateLibraryState","RESOURCE_DELIM","stateObj","stateString","parseRequestState","splitState","libraryStateString","libraryStateObj","userRequestState","ProtocolMode","validateWindowStorage","windowStorage","LocalStorage","SessionStorage","getItem","setItem","cacheKeys","_urlString","getHash","UrlString","canonicalizeUri","lowerCaseUrl","validateAsUri","components","getUrlComponents","HostNameAndPort","PathSegments","Protocol","appendQueryString","queryString","removeHashFromUrl","replaceTenantPath","urlObject","pathArray","COMMON","ORGANIZATIONS","constructAuthorityUriFromObject","parseHash","regEx","urlComponents","AbsolutePath","QueryString","pathSegments","getDomainFromUrl","getAbsoluteUrl","relativeUrl","baseUrl","FORWARD_SLASH","baseComponents","hashString","hashIndex1","hashIndex2","getDeserializedHash","parsedHash","deserializedHash","hashContainsKnownProperties","parameters","error_description","extractBrowserRequestState","parseServerResponseFromHash","locationHash","hashUrlString","cacheConfig","COOKIE_LIFE_MULTIPLIER","internalStorage","MemoryStorage","browserStorage","setupBrowserStorage","temporaryCacheStorage","setupTemporaryCacheStorage","migrateCacheEntries","clientInfoKey","CACHE_PREFIX","CLIENT_INFO","errorKey","ERROR","errorDescKey","ERROR_DESC","migrateCacheEntry","newKey","setTemporaryCache","validateAndParseJson","jsonValue","parsedJson","parsedAccount","idTokenKey","parsedIdToken","accessTokenKey","parsedAccessToken","refreshTokenKey","parsedRefreshToken","appMetadataKey","parsedMetadata","serverTelemetryKey","serverTelemetry","setWrapperMetadata","wrapperSKU","wrapperVersion","WRAPPER_SKU","WRAPPER_VER","getWrapperMetadata","activeAccountIdKey","generateCacheKey","ACTIVE_ACCOUNT","activeAccountId","getAccountInfoByFilter","accountObj","throttlingCacheKey","parsedThrottlingCache","throttlingCache","getTemporaryCache","itemCookie","getItemCookie","setItemCookie","clearItemCookie","cookieName","cookieValue","cookieStr","getCookieExpirationTime","secureCookies","cookieList","clearMsalCookies","cookiePrefix","cookieKey","cookieLifeDays","today","getCache","setCache","ADAL_ID_TOKEN","generateAuthorityKey","stateId","AUTHORITY","generateNonceKey","NONCE_IDTOKEN","generateStateKey","REQUEST_STATE","getCachedAuthority","cachedState","stateCacheKey","authorityCacheKey","updateCacheEntries","authorityInstance","loginHint","nonceCacheKey","ccsCredential","HOME_ACCOUNT_ID","CCS_CREDENTIAL","UPN","resetRequestCache","REQUEST_PARAMS","ORIGIN_URI","URL_HASH","CORRELATION_ID","setInteractionInProgress","cleanRequestByState","stateKey","cleanRequestByInteractionType","stateValue","parsedState","cacheCodeRequest","authCodeRequest","encodedValue","getCachedRequest","encodedTokenRequest","parsedRequest","cachedAuthority","isInteractionInProgress","getInteractionInProgress","INTERACTION_STATUS_KEY","KeyLocation","DEFAULT_SYSTEM_OPTIONS","tokenRenewalOffsetSeconds","preventCorsPreflight","DEFAULT_LOGGER_IMPLEMENTATION","DEFAULT_NETWORK_IMPLEMENTATION","sendGetRequestAsync","sendPostRequestAsync","DEFAULT_LIBRARY_INFO","sku","SKU","cpu","os","DEFAULT_CLIENT_CREDENTIALS","clientSecret","clientAssertion","StubbedNetworkModule","GET","getFetchHeaders","onLine","getHeaderDict","reqBody","POST","Headers","optionsHeaders","headerDict","sendRequestAsync","xhr","XMLHttpRequest","setXhrHeaders","jsonResponse","responseText","networkResponse","send","setRequestHeader","headerArr","getAllResponseHeaders","headerName","headerVal","clearHash","contentWindow","replaceState","origin","replaceHash","urlParts","isInIframe","isInPopup","opener","getCurrentUri","href","getHomepage","getBrowserNetworkClient","blockReloadInHiddenIframes","BrowserUtils","blockRedirectInIframe","allowRedirectInIframe","isIframedApp","blockAcquireTokenInPopups","blockNonBrowserEnvironment","isBrowserEnvironment","detectIEOrEdge","ua","userAgent","msie","msie11","msedge","navigateInternal","NavigationClient","defaultNavigateWindow","navigateExternal","noHistory","eventCallbacks","emitEvent","generateThrottlingStorageKey","thumbprint","preProcess","cacheManager","ThrottlingUtils","throttleTime","THROTTLING","postProcess","checkResponseStatus","checkResponseForRetryAfter","thumbprintValue","calculateThrottleTime","RETRY_AFTER","error_codes","suberror","currentSeconds","DEFAULT_THROTTLE_TIME_SECONDS","DEFAULT_MAX_THROTTLE_TIME_SECONDS","removeThrottle","homeAccountIdentifier","authenticationScheme","shrClaims","networkClient","sendPostRequest","tokenEndpoint","configuration","authOptions","userAuthOptions","userSystemOptions","userLoggerOption","storageImplementation","networkImplementation","cryptoImplementation","clientCredentials","libraryInfo","serverTelemetryManager","persistencePlugin","serializableCache","clientCapabilities","systemOptions","storageInterface","networkInterface","cryptoInterface","networkManager","createTokenRequestHeaders","ccsCred","CONTENT_TYPE","URL_FORM_CONTENT_TYPE","CCS_HEADER","executePostToTokenEndpoint","clearTelemetryCache","updateAuthority","updatedAuthority","discoveryComplete","validateRedirectUri","validatePrompt","prompt","promptValues","validateClaims","validateCodeChallengeParams","codeChallengeMethod","validateCodeChallengeMethod","PLAIN","S256","sanitizeEQParams","eQParams","addResponseTypeCode","RESPONSE_TYPE","CODE_RESPONSE_TYPE","addResponseMode","responseMode","RESPONSE_MODE","addScopes","addOidcScopes","requestScopes","SCOPE","addClientId","CLIENT_ID","addRedirectUri","REDIRECT_URI","addPostLogoutRedirectUri","POST_LOGOUT_URI","addIdTokenHint","idTokenHint","ID_TOKEN_HINT","addDomainHint","domainHint","DOMAIN_HINT","addLoginHint","LOGIN_HINT","addCcsUpn","addCcsOid","addSid","sid","SID","addClaims","mergedClaims","addClientCapabilitiesToClaims","CLAIMS","addCorrelationId","CLIENT_REQUEST_ID","addLibraryInfo","X_CLIENT_SKU","X_CLIENT_VER","X_CLIENT_OS","X_CLIENT_CPU","addPrompt","PROMPT","addState","STATE","addNonce","NONCE","addCodeChallengeParams","CODE_CHALLENGE","CODE_CHALLENGE_METHOD","addAuthorizationCode","CODE","addDeviceCode","DEVICE_CODE","addRefreshToken","addCodeVerifier","CODE_VERIFIER","addClientSecret","CLIENT_SECRET","addClientAssertion","CLIENT_ASSERTION","addClientAssertionType","clientAssertionType","CLIENT_ASSERTION_TYPE","addOboAssertion","OBO_ASSERTION","addRequestTokenUse","tokenUse","REQUESTED_TOKEN_USE","addGrantType","grantType","GRANT_TYPE","addClientInfo","addExtraQueryParameters","eQparams","XMS_CC","addUsername","addPassword","addPopToken","cnfString","TOKEN_TYPE","REQ_CNF","addServerTelemetry","X_CLIENT_CURR_TELEM","generateCurrentRequestHeaderValue","X_CLIENT_LAST_TELEM","generateLastRequestHeaderValue","addThrottling","X_MS_LIB_CAPABILITY","X_MS_LIB_CAPABILITY_VALUE","createQueryString","queryParameterArray","accountEntity","accessTokenEntity","refreshTokenEntity","appMetadataEntity","generateCnf","generateKid","reqCnf","xms_ksl","SW","signPopToken","signPayload","resourceUrlString","resourceUrlComponents","at","ts","q","client_claims","tokenCache","hasChanged","cacheStorage","validateServerAuthorizationCodeResponse","serverResponseHash","client_info","validateTokenResponse","serverResponse","correlation_id","trace_id","handleServerTokenResponse","serverTokenResponse","reqTimestamp","authCodePayload","handlingRefreshTokenResponse","id_token","idTokenObj","requestStateObj","generateCacheRecord","cacheContext","TokenCacheContext","beforeCacheAccess","ResponseHandler","generateAuthenticationResult","afterCacheAccess","generateAccountEntity","access_token","responseScopes","expiresIn","expires_in","extExpiresIn","ext_expires_in","refreshIn","refresh_in","tokenExpirationSeconds","extendedTokenExpirationSeconds","refreshOnSeconds","tenant","token_type","refresh_token","foci","CacheRecord","cloud_graph_host_name","msGraphhost","msgraph_host","AuthorityType","protocolMode","fromTokenCache","requestState","canonicalAuthority","uniqueId","fromCache","getAuthCodeUrl","createAuthCodeUrlQueryString","authorizationEndpoint","acquireToken","executeTokenRequest","responseHandler","handleFragmentResponse","hashFragment","serverParams","getLogoutUri","logoutRequest","createLogoutUrlQueryString","endSessionEndpoint","createTokenRequestBody","requestBody","queryParameters","createTokenQueryParameters","parameterBuilder","tokenQueryParameters","assertion","assertionType","AUTHORIZATION_CODE_GRANT","extraScopesToConsent","SELECT_ACCOUNT","NONE","accountSid","extractAccountSid","extraQueryParameters","detectRegion","environmentRegion","regionDiscoveryMetadata","autodetectedRegionName","getRegionFromIMDS","IMDS_VERSION","localIMDSVersionResponse","httpSuccess","region_source","IMDS","httpBadRequest","getCurrentVersion","currentIMDSVersion","FAILED_AUTO_DETECTION","currentIMDSVersionResponse","ENVIRONMENT_VARIABLE","IMDS_ENDPOINT","RegionDiscovery","IMDS_OPTIONS","IMDS_TIMEOUT","authorityOptions","_canonicalAuthority","regionDiscovery","region_used","region_outcome","canonicalAuthorityUrlComponents","Default","_canonicalAuthorityUrlComponents","replacePath","replaceTenant","cachedAuthorityParts","currentPart","cachedPart","OIDC","resolveEndpointsAsync","metadataEntity","hostnameAndPort","cloudDiscoverySource","endpointSource","CACHE","getEndpointMetadataFromConfig","CONFIG","isAuthoritySameType","getEndpointMetadataFromNetwork","azureRegionConfiguration","azureRegion","AZURE_REGION_AUTO_DISCOVER_FLAG","AUTO_DETECTION_REQUESTED_SUCCESSFUL","AUTO_DETECTION_REQUESTED_FAILED","CONFIGURED_MATCHES_DETECTED","CONFIGURED_NOT_DETECTED","CONFIGURED_NO_AUTO_DETECTION","Authority","replaceWithRegionalInformation","NETWORK","defaultOpenIdConfigurationEndpoint","authorityMetadata","getCloudDiscoveryMetadataFromConfig","getCloudDiscoveryMetadataFromNetwork","cloudDiscoveryMetadata","parsedResponse","getCloudDiscoveryMetadataFromNetworkResponse","isInKnownAuthorities","createCloudDiscoveryMetadataFromHost","instanceDiscoveryEndpoint","AAD_INSTANCE_DISCOVERY_ENDPT","isCloudInstanceDiscoveryResponse","isAlias","isPublicCloudAuthority","KNOWN_PUBLIC_CLOUDS","buildRegionalAuthorityString","authorityUrlInstance","authorityUrlParts","hostNameAndPort","REGIONAL_AUTH_PUBLIC_CLOUD_SUFFIX","createDiscoveredInstance","authorityUri","acquireTokenAuthority","AuthorityFactory","createInstance","authorityUrl","telemetryRequest","cacheOutcome","NO_CACHE_HIT","apiId","wrapperVer","telemetryCacheKey","VALUE_SEPARATOR","platformFields","requestWithRegionDiscoveryFields","getRegionDiscoveryFields","SCHEMA_VERSION","CATEGORY_SEPARATOR","lastRequests","getLastRequests","maxErrors","ServerTelemetryManager","maxErrorsToSend","errorCount","OVERFLOW_TRUE","OVERFLOW_FALSE","cacheFailedRequest","MAX_CACHED_ERRORS","UNKNOWN_ERROR","incrementCacheHits","numErrorsFlushed","serverTelemEntity","serverTelemetryEntity","dataSize","MAX_LAST_HEADER_BYTES","regionDiscoveryFields","regionUsed","regionSource","regionOutcome","updateRegionDiscoveryMetadata","setCacheOutcome","storageImpl","eventHandler","navigationClient","initializeAuthorizationCodeRequest","generatedPkceParams","S256_CODE_CHALLENGE_METHOD","initializeLogoutRequest","validLogoutRequest","createAuthCodeClient","getClientConfiguration","clientConfig","requestAuthority","getDiscoveredAuthority","discoveredAuthority","validateAndExtractStateFromHash","requestCorrelationId","platformStateObj","initializeServerTelemetryManager","forceRefresh","telemetryPayload","preflightInteractiveRequest","initializeAuthorizationRequest","getRedirectUri","validatedRequest","initializeBaseRequest","FRAGMENT","adalIdTokenString","msalIdTokenString","cachedIdTokenString","requestRedirectUri","clearCacheOnLogout","unloadWindow","openPopup","urlNavigate","popupParams","popupWindow","popup","PopupUtils","openSizedPopup","popupName","popupWindowAttributes","currentWindow","winLeft","screenLeft","screenX","winTop","screenTop","screenY","winWidth","innerWidth","documentElement","clientWidth","winHeight","innerHeight","clientHeight","popupSize","popupPosition","left","preventDefault","cleanPopup","monitorPopupForSameOrigin","intervalId","setInterval","clearInterval","generatePopupName","generateLogoutPopupName","authCodeModule","browserRequestLogger","authModule","handleCodeResponse","networkModule","authCodeResponse","nonceKey","cachedNonce","cloud_instance_host_name","updateTokenEndpointAuthority","cachedCcsCred","checkCcsCredentials","tokenResponse","cloudInstanceHostname","cloudInstanceAuthority","popupUtils","initiateAuthRequest","requestUrl","monitorPopupForHash","contentHash","validRequest","asyncPopups","acquireTokenPopupAsync","mainWindowRedirectUri","logoutPopupAsync","authClient","navigateUrl","interactionHandler","POPUP_OPENED","setCorrelationId","logoutUri","LOGOUT_SUCCESS","navigationOptions","redirectNavigationTimeout","absoluteUrl","LOGOUT_FAILURE","redirectStartPage","redirectTimeout","onRedirectNavigate","getRedirectStartPage","responseHash","getRedirectResponseHash","loginRequestUrl","loginRequestUrlNormalized","currentUrlNormalized","handleHash","handleHashResult","processHashOnRedirect","homepage","isResponseHash","cachedHash","cachedRequest","currentAuthority","requestStartPage","navigateFrameWait","loadFrame","loadFrameSync","monitorIframeForHash","iframe","timeoutMark","performance","removeHiddenIframe","frameHandle","createHiddenIframe","authFrame","visibility","border","getElementsByTagName","silentRequest","Silent","silentTokenHelper","silentHandler","msalFrame","iframeHashTimeout","acquireTokenByRefreshToken","acquireTokenWithCachedRefreshToken","clientMismatchErrorWithFamilyRT","CLIENT_MISMATCH_ERROR","refreshTokenRequest","REFRESH_TOKEN_GRANT","popTokenGenerator","acquireTokenSilent_silentFlow","createRefreshTokenClient","refreshTokenClient","loadExternalTokens","loadIdToken","loadAccessToken","idAuthToken","userInputAuth","userInputCache","userInputSystem","DEFAULT_AUTH_OPTIONS","DEFAULT_CACHE_OPTIONS","DEFAULT_LOGGER_OPTIONS","DEFAULT_BROWSER_SYSTEM_OPTIONS","DEFAULT_AUTHORITY","AAD","loadFrameTimeout","windowHashTimeout","redirectResponse","EventHandler","loggedInAccounts","redirectResponseKey","redirectClient","preflightBrowserEnvironmentCheck","isLoggedIn","isLoggingIn","silentTokenResult","ACQUIRE_TOKEN_NETWORK_START","acquireTokenSilent_authCode","userName","allAccounts","acquireCachedToken","FORCE_REFRESH","NO_CACHED_ACCESS_TOKEN","CACHED_ACCESS_TOKEN_EXPIRED","REFRESH_CACHED_ACCESS_TOKEN","generateResultFromCacheRecord","createSilentFlowClient","silentAuthClient","cachedToken","initializeSilentRequest","activeSilentTokenRequests","silentRequestKey","cachedResponse","acquireTokenSilentAsync","silentCacheClient","tokenRenewalResult","shallowDiffers","PureComponent","comparer","shouldUpdate","nextProps","updateRef","Memoed","isReactComponent","forwardRef","Forwarded","$$typeof","REACT_FORWARD_SYMBOL","Suspense","_suspenders","suspended","loader","Lazy","prom","SuspenseList","_next","_map","ContextProvider","Portal","container","_container","_temp","before","createPortal","textContent","preactRender","preactHydrate","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","unstable_runWithPriority","createFactory","REACT_ELEMENT_TYPE","preactCloneElement","unmountComponentAtNode","findDOMNode","isPureReactComponent","oldDiffHook","Children","oldCatchError","suspendingVNode","suspendingComponent","onResolved","onSuspensionComplete","suspendedVNode","removeOriginal","detachedParent","originalParent","wasHydrating","detachedComponent","detachedClone","effect","revealOrder","delegated","wrappedUnsuspend","unsuspend","reverse","CAMEL_PROPS","onChangeInputType","oldEventHook","persist","nativeEvent","classNameDescriptor","class","oldVNodeHook","multiple","className","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","unstable_ImmediatePriority","unstable_UserBlockingPriority","unstable_NormalPriority","unstable_LowPriority","unstable_IdlePriority","unstable_now","unstable_batchedUpdates","StrictMode","RangeError","mapDomain","regexSeparators","ucs2decode","extra","counter","ucs2encode","stringFromCharCode","digitToBasic","digit","flag","adapt","delta","numPoints","baseMinusTMin","basic","oldi","baseMinusT","codePoint","inputLength","bias","maxInt","handledCPCount","basicLength","currentValue","handledCPCountPlusOne","qMinusT","freeGlobal","punycode","regexPunycode","regexNonASCII","define","monthsNominative","monthsSubjective","momentToFormat","AuthErrorMessage","errDesc","Preact","interopDefault","serviceWorker","__webpack_public_path__","getElementById","firstElementChild","app","preRenderData","inlineDataElement","querySelector","decodeURI","CLI_DATA","currentContext","MISSING_VALUE","idCounter","Slot","slots","saved","noContext","relativeTimeWithSingular","consumeAndIterate","forgetCache","vars","varsByCache","rv","caches","varDep","cacheSlot","attach","onNextChange","attachCache","deleted","errorHandler","retriedSub","retriedResult","HeaderNames","PersistentCacheKeys","AADAuthorityConstants","AADServerParamKeys","ClaimsRequestKeys","LIBRARY_NAME","DEFAULT_AUTHORITY_HOST","NO_ACCOUNT","CONSUMER_UTID","OPENID_SCOPE","PROFILE_SCOPE","EMAIL_SCOPE","CODE_GRANT_TYPE","RT_GRANT_TYPE","FRAGMENT_RESPONSE_MODE","AUTHORIZATION_PENDING","OIDC_DEFAULT_SCOPES","OIDC_SCOPES","SSOTypes","PromptValue","LOGIN","CONSENT","CREATE","ResponseMode","GrantType","CacheAccountType","Separators","CredentialType","CacheSchemaType","CacheType","CodeChallengeMethodValues","AuthorityMetadataSource","THE_FAMILY_ID","AUTHORITY_METADATA_CONSTANTS","AuthenticationScheme","SERVER_TELEM_CONSTANTS","MAX_CUR_HEADER_BYTES","PasswordGrantConstants","ResponseCodes","RegionDiscoverySources","RegionDiscoveryOutcomes","CacheOutcome","ThrottlingConstants","Errors","fieldNameFromStoreName","TypeOrFieldNameRegExp","selectionSetMatchesResult","hasOwn","storeValueIsStoreObject","makeProcessedFieldsMerger","last2Digits","normalize","docCache","stripLoc","removeLocAtThisLevel","docType","valueType","astFragmentMap","fragmentSourceMap","printFragmentWarnings","processFragments","gql","literals","Cache","themeSpacing","getStyleFromPropValue","cssProperties","transformer","spacingKeys","getCssProperties","directions","marginX","marginY","paddingX","paddingY","_prop$split","_prop$split2","propTypes","filterProps","monthsNominativeEl","monthsGenitiveEl","_monthsGenitiveEl","_monthsNominativeEl","calendarEl","_calendarEl","relativeTimeMr","isNetworkRequestInFlight","NetworkStatus","_iterableToArray","iter","visitor","visitorKeys","QueryDocumentKeys","inArray","edits","ancestors","newRoot","isLeaving","isEdited","_Object$keys2","editOffset","editKey","editValue","_visitorKeys$node$kin","visitFn","getVisitFn","BREAK","kindVisitor","kindSpecificVisitor","specificVisitor","specificKindVisitor","weekEndings","passthrough","toLink","isTerminating","links","right","leftLink","rightLink","firstLink","nextLink","setOnError","formData","numberNoun","hundred","ten","word","numbersNouns","numberAsNoun"],"mappings":"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","file":"bundle.64c1e.esm.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t};\n\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t4: 0\n \t};\n\n\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + ({\"0\":\"vendors~route-account~route-accounts~route-bait-types~route-branch~route-branches~route-device~route~40097000\",\"1\":\"vendors~route-account~route-accounts~route-bait-types~route-branch~route-branches~route-device~route~ffecd984\",\"2\":\"vendors~route-account~route-accounts~route-bait-types~route-branch~route-branches~route-device~route~80ec4130\",\"3\":\"vendors~route-account~route-accounts~route-bait-types~route-branch~route-branches~route-device~route~8e2302cf\",\"6\":\"route-account\",\"7\":\"route-accounts\",\"8\":\"route-bait-types\",\"9\":\"route-branch\",\"10\":\"route-branches\",\"11\":\"route-device\",\"12\":\"route-devices\",\"13\":\"route-forgot-password\",\"14\":\"route-home\",\"15\":\"route-login\",\"16\":\"route-my-account\",\"17\":\"route-production-line\",\"18\":\"route-register\",\"19\":\"route-remote-monitor\",\"20\":\"route-reports\",\"21\":\"route-resend-verification\",\"22\":\"route-reset-password\",\"23\":\"route-set-password\",\"24\":\"route-terms-and-conditions\",\"25\":\"route-user\",\"26\":\"route-users\",\"27\":\"route-visit\"}[chunkId]||chunkId) + \".chunk.\" + {\"0\":\"b8ea6\",\"1\":\"c0a62\",\"2\":\"ba321\",\"3\":\"97cf5\",\"6\":\"6b3d0\",\"7\":\"a164c\",\"8\":\"12fb6\",\"9\":\"fc84f\",\"10\":\"cdcb4\",\"11\":\"06f17\",\"12\":\"d000f\",\"13\":\"94fd5\",\"14\":\"42148\",\"15\":\"1f9c9\",\"16\":\"d3028\",\"17\":\"d62d6\",\"18\":\"ab97d\",\"19\":\"39edd\",\"20\":\"265a5\",\"21\":\"26551\",\"22\":\"08c99\",\"23\":\"ee304\",\"24\":\"0ce93\",\"25\":\"69888\",\"26\":\"f2878\",\"27\":\"cf2e7\"}[chunkId] + \".esm.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"mdyV\");\n","var map = {\n\t\"./af\": \"PCLY\",\n\t\"./af.js\": \"PCLY\",\n\t\"./ar\": \"rWbD\",\n\t\"./ar-dz\": \"8fO9\",\n\t\"./ar-dz.js\": \"8fO9\",\n\t\"./ar-kw\": \"jAHx\",\n\t\"./ar-kw.js\": \"jAHx\",\n\t\"./ar-ly\": \"eaVr\",\n\t\"./ar-ly.js\": \"eaVr\",\n\t\"./ar-ma\": \"KjxB\",\n\t\"./ar-ma.js\": \"KjxB\",\n\t\"./ar-sa\": \"Kzfg\",\n\t\"./ar-sa.js\": \"Kzfg\",\n\t\"./ar-tn\": \"E/xU\",\n\t\"./ar-tn.js\": \"E/xU\",\n\t\"./ar.js\": \"rWbD\",\n\t\"./az\": \"+H07\",\n\t\"./az.js\": \"+H07\",\n\t\"./be\": \"epgC\",\n\t\"./be.js\": \"epgC\",\n\t\"./bg\": \"q8m2\",\n\t\"./bg.js\": \"q8m2\",\n\t\"./bm\": \"Ds9W\",\n\t\"./bm.js\": \"Ds9W\",\n\t\"./bn\": \"BYi5\",\n\t\"./bn-bd\": \"/dpb\",\n\t\"./bn-bd.js\": \"/dpb\",\n\t\"./bn.js\": \"BYi5\",\n\t\"./bo\": \"kvt3\",\n\t\"./bo.js\": \"kvt3\",\n\t\"./br\": \"2DI3\",\n\t\"./br.js\": \"2DI3\",\n\t\"./bs\": \"Ph7h\",\n\t\"./bs.js\": \"Ph7h\",\n\t\"./ca\": \"7VNv\",\n\t\"./ca.js\": \"7VNv\",\n\t\"./cs\": \"+1Zc\",\n\t\"./cs.js\": \"+1Zc\",\n\t\"./cv\": \"y6JY\",\n\t\"./cv.js\": \"y6JY\",\n\t\"./cy\": \"RS7N\",\n\t\"./cy.js\": \"RS7N\",\n\t\"./da\": \"Zen1\",\n\t\"./da.js\": \"Zen1\",\n\t\"./de\": \"6gdt\",\n\t\"./de-at\": \"DmzJ\",\n\t\"./de-at.js\": \"DmzJ\",\n\t\"./de-ch\": \"VbkY\",\n\t\"./de-ch.js\": \"VbkY\",\n\t\"./de.js\": \"6gdt\",\n\t\"./dv\": \"gCmr\",\n\t\"./dv.js\": \"gCmr\",\n\t\"./el\": \"s2AQ\",\n\t\"./el.js\": \"s2AQ\",\n\t\"./en-au\": \"TJRi\",\n\t\"./en-au.js\": \"TJRi\",\n\t\"./en-ca\": \"ns/j\",\n\t\"./en-ca.js\": \"ns/j\",\n\t\"./en-gb\": \"f+Zs\",\n\t\"./en-gb.js\": \"f+Zs\",\n\t\"./en-ie\": \"VDG+\",\n\t\"./en-ie.js\": \"VDG+\",\n\t\"./en-il\": \"aIWT\",\n\t\"./en-il.js\": \"aIWT\",\n\t\"./en-in\": \"ctPk\",\n\t\"./en-in.js\": \"ctPk\",\n\t\"./en-nz\": \"YtB9\",\n\t\"./en-nz.js\": \"YtB9\",\n\t\"./en-sg\": \"VRbA\",\n\t\"./en-sg.js\": \"VRbA\",\n\t\"./eo\": \"C9Mo\",\n\t\"./eo.js\": \"C9Mo\",\n\t\"./es\": \"Tzm6\",\n\t\"./es-do\": \"FC41\",\n\t\"./es-do.js\": \"FC41\",\n\t\"./es-mx\": \"H7Ec\",\n\t\"./es-mx.js\": \"H7Ec\",\n\t\"./es-us\": \"66xG\",\n\t\"./es-us.js\": \"66xG\",\n\t\"./es.js\": \"Tzm6\",\n\t\"./et\": \"LfUM\",\n\t\"./et.js\": \"LfUM\",\n\t\"./eu\": \"mTJk\",\n\t\"./eu.js\": \"mTJk\",\n\t\"./fa\": \"i4ZP\",\n\t\"./fa.js\": \"i4ZP\",\n\t\"./fi\": \"eiii\",\n\t\"./fi.js\": \"eiii\",\n\t\"./fil\": \"UWQU\",\n\t\"./fil.js\": \"UWQU\",\n\t\"./fo\": \"MJ0B\",\n\t\"./fo.js\": \"MJ0B\",\n\t\"./fr\": \"4l5I\",\n\t\"./fr-ca\": \"cc/L\",\n\t\"./fr-ca.js\": \"cc/L\",\n\t\"./fr-ch\": \"+AA/\",\n\t\"./fr-ch.js\": \"+AA/\",\n\t\"./fr.js\": \"4l5I\",\n\t\"./fy\": \"2r41\",\n\t\"./fy.js\": \"2r41\",\n\t\"./ga\": \"y0eM\",\n\t\"./ga.js\": \"y0eM\",\n\t\"./gd\": \"ESyC\",\n\t\"./gd.js\": \"ESyC\",\n\t\"./gl\": \"FcxU\",\n\t\"./gl.js\": \"FcxU\",\n\t\"./gom-deva\": \"4xMu\",\n\t\"./gom-deva.js\": \"4xMu\",\n\t\"./gom-latn\": \"5TAi\",\n\t\"./gom-latn.js\": \"5TAi\",\n\t\"./gu\": \"WBo+\",\n\t\"./gu.js\": \"WBo+\",\n\t\"./he\": \"J09Q\",\n\t\"./he.js\": \"J09Q\",\n\t\"./hi\": \"vZFb\",\n\t\"./hi.js\": \"vZFb\",\n\t\"./hr\": \"fqp+\",\n\t\"./hr.js\": \"fqp+\",\n\t\"./hu\": \"wFEF\",\n\t\"./hu.js\": \"wFEF\",\n\t\"./hy-am\": \"z9lm\",\n\t\"./hy-am.js\": \"z9lm\",\n\t\"./id\": \"OICW\",\n\t\"./id.js\": \"OICW\",\n\t\"./is\": \"fMp8\",\n\t\"./is.js\": \"fMp8\",\n\t\"./it\": \"c7Ev\",\n\t\"./it-ch\": \"qSxU\",\n\t\"./it-ch.js\": \"qSxU\",\n\t\"./it.js\": \"c7Ev\",\n\t\"./ja\": \"8bte\",\n\t\"./ja.js\": \"8bte\",\n\t\"./jv\": \"vsoA\",\n\t\"./jv.js\": \"vsoA\",\n\t\"./ka\": \"C2iA\",\n\t\"./ka.js\": \"C2iA\",\n\t\"./kk\": \"diVh\",\n\t\"./kk.js\": \"diVh\",\n\t\"./km\": \"yCJP\",\n\t\"./km.js\": \"yCJP\",\n\t\"./kn\": \"SwWG\",\n\t\"./kn.js\": \"SwWG\",\n\t\"./ko\": \"pCbo\",\n\t\"./ko.js\": \"pCbo\",\n\t\"./ku\": \"+TGZ\",\n\t\"./ku.js\": \"+TGZ\",\n\t\"./ky\": \"j8dY\",\n\t\"./ky.js\": \"j8dY\",\n\t\"./lb\": \"RGqZ\",\n\t\"./lb.js\": \"RGqZ\",\n\t\"./lo\": \"Wl8+\",\n\t\"./lo.js\": \"Wl8+\",\n\t\"./lt\": \"cGFC\",\n\t\"./lt.js\": \"cGFC\",\n\t\"./lv\": \"n4Ja\",\n\t\"./lv.js\": \"n4Ja\",\n\t\"./me\": \"D1pq\",\n\t\"./me.js\": \"D1pq\",\n\t\"./mi\": \"VPZN\",\n\t\"./mi.js\": \"VPZN\",\n\t\"./mk\": \"uSIl\",\n\t\"./mk.js\": \"uSIl\",\n\t\"./ml\": \"SFiE\",\n\t\"./ml.js\": \"SFiE\",\n\t\"./mn\": \"/B1x\",\n\t\"./mn.js\": \"/B1x\",\n\t\"./mr\": \"sAJi\",\n\t\"./mr.js\": \"sAJi\",\n\t\"./ms\": \"3mDr\",\n\t\"./ms-my\": \"eJ/i\",\n\t\"./ms-my.js\": \"eJ/i\",\n\t\"./ms.js\": \"3mDr\",\n\t\"./mt\": \"uMmE\",\n\t\"./mt.js\": \"uMmE\",\n\t\"./my\": \"Uabd\",\n\t\"./my.js\": \"Uabd\",\n\t\"./nb\": \"0FXm\",\n\t\"./nb.js\": \"0FXm\",\n\t\"./ne\": \"mUFG\",\n\t\"./ne.js\": \"mUFG\",\n\t\"./nl\": \"jQOB\",\n\t\"./nl-be\": \"DImR\",\n\t\"./nl-be.js\": \"DImR\",\n\t\"./nl.js\": \"jQOB\",\n\t\"./nn\": \"LcWX\",\n\t\"./nn.js\": \"LcWX\",\n\t\"./oc-lnc\": \"RGKg\",\n\t\"./oc-lnc.js\": \"RGKg\",\n\t\"./pa-in\": \"AyEX\",\n\t\"./pa-in.js\": \"AyEX\",\n\t\"./pl\": \"lrVE\",\n\t\"./pl.js\": \"lrVE\",\n\t\"./pt\": \"8qDa\",\n\t\"./pt-br\": \"89iQ\",\n\t\"./pt-br.js\": \"89iQ\",\n\t\"./pt.js\": \"8qDa\",\n\t\"./ro\": \"1JUL\",\n\t\"./ro.js\": \"1JUL\",\n\t\"./ru\": \"TEyo\",\n\t\"./ru.js\": \"TEyo\",\n\t\"./sd\": \"Dgb/\",\n\t\"./sd.js\": \"Dgb/\",\n\t\"./se\": \"iNh+\",\n\t\"./se.js\": \"iNh+\",\n\t\"./si\": \"5rvi\",\n\t\"./si.js\": \"5rvi\",\n\t\"./sk\": \"uICS\",\n\t\"./sk.js\": \"uICS\",\n\t\"./sl\": \"lZZk\",\n\t\"./sl.js\": \"lZZk\",\n\t\"./sq\": \"hytz\",\n\t\"./sq.js\": \"hytz\",\n\t\"./sr\": \"BHUR\",\n\t\"./sr-cyrl\": \"rASL\",\n\t\"./sr-cyrl.js\": \"rASL\",\n\t\"./sr.js\": \"BHUR\",\n\t\"./ss\": \"uBSF\",\n\t\"./ss.js\": \"uBSF\",\n\t\"./sv\": \"8wt6\",\n\t\"./sv.js\": \"8wt6\",\n\t\"./sw\": \"Xvk3\",\n\t\"./sw.js\": \"Xvk3\",\n\t\"./ta\": \"lKhH\",\n\t\"./ta.js\": \"lKhH\",\n\t\"./te\": \"7D/J\",\n\t\"./te.js\": \"7D/J\",\n\t\"./tet\": \"r1/O\",\n\t\"./tet.js\": \"r1/O\",\n\t\"./tg\": \"ZJbS\",\n\t\"./tg.js\": \"ZJbS\",\n\t\"./th\": \"8K9R\",\n\t\"./th.js\": \"8K9R\",\n\t\"./tk\": \"fTzc\",\n\t\"./tk.js\": \"fTzc\",\n\t\"./tl-ph\": \"sKBs\",\n\t\"./tl-ph.js\": \"sKBs\",\n\t\"./tlh\": \"yA37\",\n\t\"./tlh.js\": \"yA37\",\n\t\"./tr\": \"ZesP\",\n\t\"./tr.js\": \"ZesP\",\n\t\"./tzl\": \"66bL\",\n\t\"./tzl.js\": \"66bL\",\n\t\"./tzm\": \"7hkg\",\n\t\"./tzm-latn\": \"iGTw\",\n\t\"./tzm-latn.js\": \"iGTw\",\n\t\"./tzm.js\": \"7hkg\",\n\t\"./ug-cn\": \"835Y\",\n\t\"./ug-cn.js\": \"835Y\",\n\t\"./uk\": \"Ifhy\",\n\t\"./uk.js\": \"Ifhy\",\n\t\"./ur\": \"acJm\",\n\t\"./ur.js\": \"acJm\",\n\t\"./uz\": \"WLld\",\n\t\"./uz-latn\": \"cfQs\",\n\t\"./uz-latn.js\": \"cfQs\",\n\t\"./uz.js\": \"WLld\",\n\t\"./vi\": \"lCFP\",\n\t\"./vi.js\": \"lCFP\",\n\t\"./x-pseudo\": \"7kpk\",\n\t\"./x-pseudo.js\": \"7kpk\",\n\t\"./yo\": \"1KeI\",\n\t\"./yo.js\": \"1KeI\",\n\t\"./zh-cn\": \"1DNC\",\n\t\"./zh-cn.js\": \"1DNC\",\n\t\"./zh-hk\": \"ORTk\",\n\t\"./zh-hk.js\": \"ORTk\",\n\t\"./zh-mo\": \"f9fx\",\n\t\"./zh-mo.js\": \"f9fx\",\n\t\"./zh-tw\": \"DyU+\",\n\t\"./zh-tw.js\": \"DyU+\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"+1ZA\";","//! moment.js locale configuration\n//! locale : Czech [cs]\n//! author : petrbela : https://github.com/petrbela\n\nimport moment from '../moment';\n\nvar months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split(\n '_'\n ),\n monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'),\n monthsParse = [\n /^led/i,\n /^úno/i,\n /^bře/i,\n /^dub/i,\n /^kvě/i,\n /^(čvn|červen$|června)/i,\n /^(čvc|červenec|července)/i,\n /^srp/i,\n /^zář/i,\n /^říj/i,\n /^lis/i,\n /^pro/i,\n ],\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsRegex = /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;\n\nfunction plural(n) {\n return n > 1 && n < 5 && ~~(n / 10) !== 1;\n}\nfunction translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's': // a few seconds / in a few seconds / a few seconds ago\n return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';\n case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'sekundy' : 'sekund');\n } else {\n return result + 'sekundami';\n }\n case 'm': // a minute / in a minute / a minute ago\n return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';\n case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'minuty' : 'minut');\n } else {\n return result + 'minutami';\n }\n case 'h': // an hour / in an hour / an hour ago\n return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';\n case 'hh': // 9 hours / in 9 hours / 9 hours ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'hodiny' : 'hodin');\n } else {\n return result + 'hodinami';\n }\n case 'd': // a day / in a day / a day ago\n return withoutSuffix || isFuture ? 'den' : 'dnem';\n case 'dd': // 9 days / in 9 days / 9 days ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'dny' : 'dní');\n } else {\n return result + 'dny';\n }\n case 'M': // a month / in a month / a month ago\n return withoutSuffix || isFuture ? 'měsíc' : 'měsícem';\n case 'MM': // 9 months / in 9 months / 9 months ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'měsíce' : 'měsíců');\n } else {\n return result + 'měsíci';\n }\n case 'y': // a year / in a year / a year ago\n return withoutSuffix || isFuture ? 'rok' : 'rokem';\n case 'yy': // 9 years / in 9 years / 9 years ago\n if (withoutSuffix || isFuture) {\n return result + (plural(number) ? 'roky' : 'let');\n } else {\n return result + 'lety';\n }\n }\n}\n\nexport default moment.defineLocale('cs', {\n months: months,\n monthsShort: monthsShort,\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched.\n // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'.\n monthsStrictRegex: /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,\n monthsShortStrictRegex: /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),\n weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'),\n weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd D. MMMM YYYY H:mm',\n l: 'D. M. YYYY',\n },\n calendar: {\n sameDay: '[dnes v] LT',\n nextDay: '[zítra v] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[v neděli v] LT';\n case 1:\n case 2:\n return '[v] dddd [v] LT';\n case 3:\n return '[ve středu v] LT';\n case 4:\n return '[ve čtvrtek v] LT';\n case 5:\n return '[v pátek v] LT';\n case 6:\n return '[v sobotu v] LT';\n }\n },\n lastDay: '[včera v] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[minulou neděli v] LT';\n case 1:\n case 2:\n return '[minulé] dddd [v] LT';\n case 3:\n return '[minulou středu v] LT';\n case 4:\n case 5:\n return '[minulý] dddd [v] LT';\n case 6:\n return '[minulou sobotu v] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'před %s',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import { ApolloLink } from './ApolloLink';\n\nexport const split = ApolloLink.split;\n","//! moment.js locale configuration\n//! locale : French (Switzerland) [fr-ch]\n//! author : Gaspard Bucher : https://github.com/gaspard\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('fr-ch', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort: 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\n// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves\n// to learn the context in which each easing should be used.\nexport var easing = {\n // This is the most common easing curve.\n easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',\n // Objects enter the screen at full velocity from off-screen and\n // slowly decelerate to a resting point.\n easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',\n // Objects leave the screen at full velocity. They do not decelerate when off-screen.\n easeIn: 'cubic-bezier(0.4, 0, 1, 1)',\n // The sharp curve is used by objects that may return to the screen at any time.\n sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'\n}; // Follow https://material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations\n// to learn when use what timing\n\nexport var duration = {\n shortest: 150,\n shorter: 200,\n short: 250,\n // most basic recommended timing\n standard: 300,\n // this is to be used in complex animations\n complex: 375,\n // recommended when something is entering screen\n enteringScreen: 225,\n // recommended when something is leaving screen\n leavingScreen: 195\n};\n\nfunction formatMs(milliseconds) {\n return \"\".concat(Math.round(milliseconds), \"ms\");\n}\n/**\n * @param {string|Array} props\n * @param {object} param\n * @param {string} param.prop\n * @param {number} param.duration\n * @param {string} param.easing\n * @param {number} param.delay\n */\n\n\nexport default {\n easing: easing,\n duration: duration,\n create: function create() {\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['all'];\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var _options$duration = options.duration,\n durationOption = _options$duration === void 0 ? duration.standard : _options$duration,\n _options$easing = options.easing,\n easingOption = _options$easing === void 0 ? easing.easeInOut : _options$easing,\n _options$delay = options.delay,\n delay = _options$delay === void 0 ? 0 : _options$delay,\n other = _objectWithoutProperties(options, [\"duration\", \"easing\", \"delay\"]);\n\n if (process.env.NODE_ENV !== 'production') {\n var isString = function isString(value) {\n return typeof value === 'string';\n };\n\n var isNumber = function isNumber(value) {\n return !isNaN(parseFloat(value));\n };\n\n if (!isString(props) && !Array.isArray(props)) {\n console.error('Material-UI: Argument \"props\" must be a string or Array.');\n }\n\n if (!isNumber(durationOption) && !isString(durationOption)) {\n console.error(\"Material-UI: Argument \\\"duration\\\" must be a number or a string but found \".concat(durationOption, \".\"));\n }\n\n if (!isString(easingOption)) {\n console.error('Material-UI: Argument \"easing\" must be a string.');\n }\n\n if (!isNumber(delay) && !isString(delay)) {\n console.error('Material-UI: Argument \"delay\" must be a number or a string.');\n }\n\n if (Object.keys(other).length !== 0) {\n console.error(\"Material-UI: Unrecognized argument(s) [\".concat(Object.keys(other).join(','), \"].\"));\n }\n }\n\n return (Array.isArray(props) ? props : [props]).map(function (animatedProp) {\n return \"\".concat(animatedProp, \" \").concat(typeof durationOption === 'string' ? durationOption : formatMs(durationOption), \" \").concat(easingOption, \" \").concat(typeof delay === 'string' ? delay : formatMs(delay));\n }).join(',');\n },\n getAutoHeightDuration: function getAutoHeightDuration(height) {\n if (!height) {\n return 0;\n }\n\n var constant = height / 36; // https://www.wolframalpha.com/input/?i=(4+%2B+15+*+(x+%2F+36+)+**+0.25+%2B+(x+%2F+36)+%2F+5)+*+10\n\n return Math.round((4 + 15 * Math.pow(constant, 0.25) + constant / 5) * 10);\n }\n};","//! moment.js locale configuration\n//! locale : Azerbaijani [az]\n//! author : topchiyev : https://github.com/topchiyev\n\nimport moment from '../moment';\n\nvar suffixes = {\n 1: '-inci',\n 5: '-inci',\n 8: '-inci',\n 70: '-inci',\n 80: '-inci',\n 2: '-nci',\n 7: '-nci',\n 20: '-nci',\n 50: '-nci',\n 3: '-üncü',\n 4: '-üncü',\n 100: '-üncü',\n 6: '-ncı',\n 9: '-uncu',\n 10: '-uncu',\n 30: '-uncu',\n 60: '-ıncı',\n 90: '-ıncı',\n};\n\nexport default moment.defineLocale('az', {\n months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split(\n '_'\n ),\n monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n weekdays: 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split(\n '_'\n ),\n weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),\n weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[sabah saat] LT',\n nextWeek: '[gələn həftə] dddd [saat] LT',\n lastDay: '[dünən] LT',\n lastWeek: '[keçən həftə] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s əvvəl',\n s: 'bir neçə saniyə',\n ss: '%d saniyə',\n m: 'bir dəqiqə',\n mm: '%d dəqiqə',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir il',\n yy: '%d il',\n },\n meridiemParse: /gecə|səhər|gündüz|axşam/,\n isPM: function (input) {\n return /^(gündüz|axşam)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'gecə';\n } else if (hour < 12) {\n return 'səhər';\n } else if (hour < 17) {\n return 'gündüz';\n } else {\n return 'axşam';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,\n ordinal: function (number) {\n if (number === 0) {\n // special case for zero\n return number + '-ıncı';\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","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\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\n return target;\n}","//! moment.js locale configuration\n//! locale : Kurdish [ku]\n//! author : Shahram Mebashar : https://github.com/ShahramMebashar\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n },\n months = [\n 'کانونی دووەم',\n 'شوبات',\n 'ئازار',\n 'نیسان',\n 'ئایار',\n 'حوزەیران',\n 'تەمموز',\n 'ئاب',\n 'ئەیلوول',\n 'تشرینی یەكەم',\n 'تشرینی دووەم',\n 'كانونی یەکەم',\n ];\n\nexport default moment.defineLocale('ku', {\n months: months,\n monthsShort: months,\n weekdays: 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split(\n '_'\n ),\n weekdaysShort: 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split(\n '_'\n ),\n weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n meridiemParse: /ئێواره‌|به‌یانی/,\n isPM: function (input) {\n return /ئێواره‌/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'به‌یانی';\n } else {\n return 'ئێواره‌';\n }\n },\n calendar: {\n sameDay: '[ئه‌مرۆ كاتژمێر] LT',\n nextDay: '[به‌یانی كاتژمێر] LT',\n nextWeek: 'dddd [كاتژمێر] LT',\n lastDay: '[دوێنێ كاتژمێر] LT',\n lastWeek: 'dddd [كاتژمێر] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'له‌ %s',\n past: '%s',\n s: 'چه‌ند چركه‌یه‌ك',\n ss: 'چركه‌ %d',\n m: 'یه‌ك خوله‌ك',\n mm: '%d خوله‌ك',\n h: 'یه‌ك كاتژمێر',\n hh: '%d كاتژمێر',\n d: 'یه‌ك ڕۆژ',\n dd: '%d ڕۆژ',\n M: 'یه‌ك مانگ',\n MM: '%d مانگ',\n y: 'یه‌ك ساڵ',\n yy: '%d ساڵ',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-users\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Mongolian [mn]\n//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7\n\nimport moment from '../moment';\n\nfunction translate(number, withoutSuffix, key, isFuture) {\n switch (key) {\n case 's':\n return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын';\n case 'ss':\n return number + (withoutSuffix ? ' секунд' : ' секундын');\n case 'm':\n case 'mm':\n return number + (withoutSuffix ? ' минут' : ' минутын');\n case 'h':\n case 'hh':\n return number + (withoutSuffix ? ' цаг' : ' цагийн');\n case 'd':\n case 'dd':\n return number + (withoutSuffix ? ' өдөр' : ' өдрийн');\n case 'M':\n case 'MM':\n return number + (withoutSuffix ? ' сар' : ' сарын');\n case 'y':\n case 'yy':\n return number + (withoutSuffix ? ' жил' : ' жилийн');\n default:\n return number;\n }\n}\n\nexport default moment.defineLocale('mn', {\n months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split(\n '_'\n ),\n monthsShort: '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'),\n weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'),\n weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY оны MMMMын D',\n LLL: 'YYYY оны MMMMын D HH:mm',\n LLLL: 'dddd, YYYY оны MMMMын D HH:mm',\n },\n meridiemParse: /ҮӨ|ҮХ/i,\n isPM: function (input) {\n return input === 'ҮХ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ҮӨ';\n } else {\n return 'ҮХ';\n }\n },\n calendar: {\n sameDay: '[Өнөөдөр] LT',\n nextDay: '[Маргааш] LT',\n nextWeek: '[Ирэх] dddd LT',\n lastDay: '[Өчигдөр] LT',\n lastWeek: '[Өнгөрсөн] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s дараа',\n past: '%s өмнө',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2} өдөр/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + ' өдөр';\n default:\n return number;\n }\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-devices\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Bengali (Bangladesh) [bn-bd]\n//! author : Asraf Hossain Patoary : https://github.com/ashwoolford\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\nexport default moment.defineLocale('bn-bd', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort: 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n\n meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'রাত') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ভোর') {\n return hour;\n } else if (meridiem === 'সকাল') {\n return hour;\n } else if (meridiem === 'দুপুর') {\n return hour >= 3 ? hour : hour + 12;\n } else if (meridiem === 'বিকাল') {\n return hour + 12;\n } else if (meridiem === 'সন্ধ্যা') {\n return hour + 12;\n }\n },\n\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 6) {\n return 'ভোর';\n } else if (hour < 12) {\n return 'সকাল';\n } else if (hour < 15) {\n return 'দুপুর';\n } else if (hour < 18) {\n return 'বিকাল';\n } else if (hour < 20) {\n return 'সন্ধ্যা';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-reset-password\");\n\t\t}\n\n\t\texport default Async(load);\n\t","import './style';\r\nimport App from './components/app';\r\n\r\nexport default App;\r\n","'use strict'\nmodule.exports = (typeof self === 'object' && self.self === self && self) ||\n (typeof global === 'object' && global.global === global && global) ||\n this\n","//! moment.js locale configuration\n//! locale : Norwegian Bokmål [nb]\n//! authors : Espen Hovlandsdal : https://github.com/rexxars\n//! Sigurd Gartmann : https://github.com/sigurdga\n//! Stephen Ramthun : https://github.com/stephenramthun\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('nb', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[forrige] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'noen sekunder',\n ss: '%d sekunder',\n m: 'ett minutt',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dager',\n w: 'en uke',\n ww: '%d uker',\n M: 'en måned',\n MM: '%d måneder',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","'use strict';\n\nexports.createUploadLink = require('./createUploadLink.js');\nexports.formDataAppendFile = require('./formDataAppendFile.js');\nexports.isExtractableFile = require('./isExtractableFile.js');\nexports.ReactNativeFile = require('./ReactNativeFile.js');\n\n/**\n * A React Native\n * [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File) substitute.\n *\n * Be aware that inspecting network traffic with buggy versions of dev tools\n * such as [Flipper](https://fbflipper.com) can interfere with the React Native\n * `FormData` implementation, causing multipart requests to have network errors.\n * @kind typedef\n * @name ReactNativeFileSubstitute\n * @type {object}\n * @see [`extract-files` `ReactNativeFileSubstitute` docs](https://github.com/jaydenseric/extract-files#type-reactnativefilesubstitute).\n * @see [React Native `FormData` polyfill source](https://github.com/facebook/react-native/blob/v0.45.1/Libraries/Network/FormData.js#L34).\n * @prop {string} uri Filesystem path.\n * @prop {string} [name] File name.\n * @prop {string} [type] File content type. Some environments (particularly Android) require a valid MIME type; Expo `ImageResult.type` is unreliable as it can be just `image`.\n * @example A camera roll file.\n * ```js\n * const fileSubstitute = {\n * uri: uriFromCameraRoll,\n * name: 'a.jpg',\n * type: 'image/jpeg',\n * };\n * ```\n */\n\n/**\n * GraphQL request `fetch` options.\n * @kind typedef\n * @name FetchOptions\n * @type {object}\n * @see [Polyfillable fetch options](https://github.github.io/fetch#options).\n * @prop {object} headers HTTP request headers.\n * @prop {string} [credentials] Authentication credentials mode.\n */\n\n/**\n * A function that checks if a value is an extractable file.\n * @kind typedef\n * @name ExtractableFileMatcher\n * @type {Function}\n * @param {*} value Value to check.\n * @returns {boolean} Is the value an extractable file.\n * @see [`isExtractableFile`]{@link isExtractableFile} has this type.\n * @example How to check for the default exactable files, as well as a custom type of file.\n * ```js\n * import { isExtractableFile } from 'apollo-upload-client';\n *\n * const isExtractableFileEnhanced = (value) =>\n * isExtractableFile(value) ||\n * (typeof CustomFile !== 'undefined' && value instanceof CustomFile);\n * ```\n */\n\n/**\n * Appends a file extracted from the GraphQL operation to the\n * [`FormData`](https://developer.mozilla.org/en-US/docs/Web/API/FormData)\n * instance used as the [`fetch`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch)\n * `options.body` for the [GraphQL multipart request](https://github.com/jaydenseric/graphql-multipart-request-spec).\n * @kind typedef\n * @name FormDataFileAppender\n * @param {FormData} formData [`FormData`](https://developer.mozilla.org/en-US/docs/Web/API/FormData) instance to append the specified file to.\n * @param {string} fieldName Field name for the file.\n * @param {*} file File to append. The file type depends on what the [`ExtractableFileMatcher`]{@link ExtractableFileMatcher} extracts.\n * @see [`formDataAppendFile`]{@link formDataAppendFile} has this type.\n * @see [`createUploadLink`]{@link createUploadLink} accepts this type in `options.formDataAppendFile`.\n */\n","//! moment.js locale configuration\n//! locale : Chinese (China) [zh-cn]\n//! author : suupic : https://github.com/suupic\n//! author : Zeno Zeng : https://github.com/zenozeng\n//! author : uu109 : https://github.com/uu109\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('zh-cn', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日Ah点mm分',\n LLLL: 'YYYY年M月D日ddddAh点mm分',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n } else {\n // '中午'\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[下]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n lastDay: '[昨天]LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[上]dddLT';\n } else {\n return '[本]dddLT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|周)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '周';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s后',\n past: '%s前',\n s: '几秒',\n ss: '%d 秒',\n m: '1 分钟',\n mm: '%d 分钟',\n h: '1 小时',\n hh: '%d 小时',\n d: '1 天',\n dd: '%d 天',\n w: '1 周',\n ww: '%d 周',\n M: '1 个月',\n MM: '%d 个月',\n y: '1 年',\n yy: '%d 年',\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Romanian [ro]\n//! author : Vlad Gurdiga : https://github.com/gurdiga\n//! author : Valentin Agachi : https://github.com/avaly\n//! author : Emanuel Cepoi : https://github.com/cepem\n\nimport moment from '../moment';\n\nfunction relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: 'secunde',\n mm: 'minute',\n hh: 'ore',\n dd: 'zile',\n ww: 'săptămâni',\n MM: 'luni',\n yy: 'ani',\n },\n separator = ' ';\n if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n separator = ' de ';\n }\n return number + separator + format[key];\n}\n\nexport default moment.defineLocale('ro', {\n months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split(\n '_'\n ),\n monthsShort: 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),\n weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),\n weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY H:mm',\n LLLL: 'dddd, D MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[azi la] LT',\n nextDay: '[mâine la] LT',\n nextWeek: 'dddd [la] LT',\n lastDay: '[ieri la] LT',\n lastWeek: '[fosta] dddd [la] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'peste %s',\n past: '%s în urmă',\n s: 'câteva secunde',\n ss: relativeTimeWithPlural,\n m: 'un minut',\n mm: relativeTimeWithPlural,\n h: 'o oră',\n hh: relativeTimeWithPlural,\n d: 'o zi',\n dd: relativeTimeWithPlural,\n w: 'o săptămână',\n ww: relativeTimeWithPlural,\n M: 'o lună',\n MM: relativeTimeWithPlural,\n y: 'un an',\n yy: relativeTimeWithPlural,\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Yoruba Nigeria [yo]\n//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('yo', {\n months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split(\n '_'\n ),\n monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'),\n weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'),\n weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'),\n weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Ònì ni] LT',\n nextDay: '[Ọ̀la ni] LT',\n nextWeek: \"dddd [Ọsẹ̀ tón'bọ] [ni] LT\",\n lastDay: '[Àna ni] LT',\n lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ní %s',\n past: '%s kọjá',\n s: 'ìsẹjú aayá die',\n ss: 'aayá %d',\n m: 'ìsẹjú kan',\n mm: 'ìsẹjú %d',\n h: 'wákati kan',\n hh: 'wákati %d',\n d: 'ọjọ́ kan',\n dd: 'ọjọ́ %d',\n M: 'osù kan',\n MM: 'osù %d',\n y: 'ọdún kan',\n yy: 'ọdún %d',\n },\n dayOfMonthOrdinalParse: /ọjọ́\\s\\d{1,2}/,\n ordinal: 'ọjọ́ %d',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","const genericMessage = \"Invariant Violation\";\nconst {\n setPrototypeOf = function (obj: any, proto: any) {\n obj.__proto__ = proto;\n return obj;\n },\n} = Object as any;\n\nexport class InvariantError extends Error {\n framesToPop = 1;\n name = genericMessage;\n constructor(message: string | number = genericMessage) {\n super(\n typeof message === \"number\"\n ? `${genericMessage}: ${message} (see https://github.com/apollographql/invariant-packages)`\n : message\n );\n setPrototypeOf(this, InvariantError.prototype);\n }\n}\n\nexport function invariant(\n condition: any,\n message?: string | number,\n): asserts condition {\n if (!condition) {\n throw new InvariantError(message);\n }\n}\n\nconst verbosityLevels = [\"log\", \"warn\", \"error\", \"silent\"] as const;\ntype VerbosityLevel = (typeof verbosityLevels)[number];\ntype ConsoleMethodName = Exclude;\nlet verbosityLevel = verbosityLevels.indexOf(\"log\");\n\nfunction wrapConsoleMethod(method: M) {\n return function () {\n if (verbosityLevels.indexOf(method) >= verbosityLevel) {\n return console[method].apply(console, arguments as any);\n }\n } as (typeof console)[M];\n}\n\nexport namespace invariant {\n export const log = wrapConsoleMethod(\"log\");\n export const warn = wrapConsoleMethod(\"warn\");\n export const error = wrapConsoleMethod(\"error\");\n}\n\nexport function setVerbosity(level: VerbosityLevel): VerbosityLevel {\n const old = verbosityLevels[verbosityLevel];\n verbosityLevel = Math.max(0, verbosityLevels.indexOf(level));\n return old;\n}\n\n// Code that uses ts-invariant with rollup-plugin-invariant may want to\n// import this process stub to avoid errors evaluating process.env.NODE_ENV.\n// However, because most ESM-to-CJS compilers will rewrite the process import\n// as tsInvariant.process, which prevents proper replacement by minifiers, we\n// also attempt to define the stub globally when it is not already defined.\nimport globalThis from \"@ungap/global-this\";\nconst processStub = globalThis.process || { env: {} };\nexport { processStub as process };\nif (!globalThis.process) try {\n Object.defineProperty(globalThis, \"process\", {\n value: processStub,\n });\n} catch {\n // If this fails, it isn't the end of the world.\n}\n\nexport default invariant;\n","(function (Object) {\n typeof globalThis !== 'object' && (\n this ?\n get() :\n (Object.defineProperty(Object.prototype, '_T_', {\n configurable: true,\n get: get\n }), _T_)\n );\n function get() {\n var global = this || self;\n global.globalThis = global;\n delete Object.prototype._T_;\n }\n}(Object));\nexport default globalThis;\n","//! moment.js locale configuration\n//! locale : Breton [br]\n//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou\n\nimport moment from '../moment';\n\nfunction relativeTimeWithMutation(number, withoutSuffix, key) {\n var format = {\n mm: 'munutenn',\n MM: 'miz',\n dd: 'devezh',\n };\n return number + ' ' + mutation(format[key], number);\n}\nfunction specialMutationForYears(number) {\n switch (lastNumber(number)) {\n case 1:\n case 3:\n case 4:\n case 5:\n case 9:\n return number + ' bloaz';\n default:\n return number + ' vloaz';\n }\n}\nfunction lastNumber(number) {\n if (number > 9) {\n return lastNumber(number % 10);\n }\n return number;\n}\nfunction mutation(text, number) {\n if (number === 2) {\n return softMutation(text);\n }\n return text;\n}\nfunction softMutation(text) {\n var mutationTable = {\n m: 'v',\n b: 'v',\n d: 'z',\n };\n if (mutationTable[text.charAt(0)] === undefined) {\n return text;\n }\n return mutationTable[text.charAt(0)] + text.substring(1);\n}\n\nvar monthsParse = [\n /^gen/i,\n /^c[ʼ\\']hwe/i,\n /^meu/i,\n /^ebr/i,\n /^mae/i,\n /^(mez|eve)/i,\n /^gou/i,\n /^eos/i,\n /^gwe/i,\n /^her/i,\n /^du/i,\n /^ker/i,\n ],\n monthsRegex = /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n monthsStrictRegex = /^(genver|c[ʼ\\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,\n monthsShortStrictRegex = /^(gen|c[ʼ\\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,\n fullWeekdaysParse = [\n /^sul/i,\n /^lun/i,\n /^meurzh/i,\n /^merc[ʼ\\']her/i,\n /^yaou/i,\n /^gwener/i,\n /^sadorn/i,\n ],\n shortWeekdaysParse = [\n /^Sul/i,\n /^Lun/i,\n /^Meu/i,\n /^Mer/i,\n /^Yao/i,\n /^Gwe/i,\n /^Sad/i,\n ],\n minWeekdaysParse = [\n /^Su/i,\n /^Lu/i,\n /^Me([^r]|$)/i,\n /^Mer/i,\n /^Ya/i,\n /^Gw/i,\n /^Sa/i,\n ];\n\nexport default moment.defineLocale('br', {\n months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split(\n '_'\n ),\n monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'),\n weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n weekdaysParse: minWeekdaysParse,\n fullWeekdaysParse: fullWeekdaysParse,\n shortWeekdaysParse: shortWeekdaysParse,\n minWeekdaysParse: minWeekdaysParse,\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [a viz] MMMM YYYY',\n LLL: 'D [a viz] MMMM YYYY HH:mm',\n LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hiziv da] LT',\n nextDay: '[Warcʼhoazh da] LT',\n nextWeek: 'dddd [da] LT',\n lastDay: '[Decʼh da] LT',\n lastWeek: 'dddd [paset da] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'a-benn %s',\n past: '%s ʼzo',\n s: 'un nebeud segondennoù',\n ss: '%d eilenn',\n m: 'ur vunutenn',\n mm: relativeTimeWithMutation,\n h: 'un eur',\n hh: '%d eur',\n d: 'un devezh',\n dd: relativeTimeWithMutation,\n M: 'ur miz',\n MM: relativeTimeWithMutation,\n y: 'ur bloaz',\n yy: specialMutationForYears,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(añ|vet)/,\n ordinal: function (number) {\n var output = number === 1 ? 'añ' : 'vet';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn\n isPM: function (token) {\n return token === 'g.m.';\n },\n meridiem: function (hour, minute, isLower) {\n return hour < 12 ? 'a.m.' : 'g.m.';\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-terms-and-conditions\");\n\t\t}\n\n\t\texport default Async(load);\n\t","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n/**\n * Return true if `value` is object-like. A value is object-like if it's not\n * `null` and has a `typeof` result of \"object\".\n */\nexport default function isObjectLike(value) {\n return _typeof(value) == 'object' && value !== null;\n}\n","/**\n * Represents a location in a Source.\n */\n\n/**\n * Takes a Source and a UTF-8 character offset, and returns the corresponding\n * line and column as a SourceLocation.\n */\nexport function getLocation(source, position) {\n var lineRegexp = /\\r\\n|[\\n\\r]/g;\n var line = 1;\n var column = position + 1;\n var match;\n\n while ((match = lineRegexp.exec(source.body)) && match.index < position) {\n line += 1;\n column = position + 1 - (match.index + match[0].length);\n }\n\n return {\n line: line,\n column: column\n };\n}\n","import { getLocation } from \"./location.mjs\";\n/**\n * Render a helpful description of the location in the GraphQL Source document.\n */\n\nexport function printLocation(location) {\n return printSourceLocation(location.source, getLocation(location.source, location.start));\n}\n/**\n * Render a helpful description of the location in the GraphQL Source document.\n */\n\nexport function printSourceLocation(source, sourceLocation) {\n var firstLineColumnOffset = source.locationOffset.column - 1;\n var body = whitespace(firstLineColumnOffset) + source.body;\n var lineIndex = sourceLocation.line - 1;\n var lineOffset = source.locationOffset.line - 1;\n var lineNum = sourceLocation.line + lineOffset;\n var columnOffset = sourceLocation.line === 1 ? firstLineColumnOffset : 0;\n var columnNum = sourceLocation.column + columnOffset;\n var locationStr = \"\".concat(source.name, \":\").concat(lineNum, \":\").concat(columnNum, \"\\n\");\n var lines = body.split(/\\r\\n|[\\n\\r]/g);\n var locationLine = lines[lineIndex]; // Special case for minified documents\n\n if (locationLine.length > 120) {\n var subLineIndex = Math.floor(columnNum / 80);\n var subLineColumnNum = columnNum % 80;\n var subLines = [];\n\n for (var i = 0; i < locationLine.length; i += 80) {\n subLines.push(locationLine.slice(i, i + 80));\n }\n\n return locationStr + printPrefixedLines([[\"\".concat(lineNum), subLines[0]]].concat(subLines.slice(1, subLineIndex + 1).map(function (subLine) {\n return ['', subLine];\n }), [[' ', whitespace(subLineColumnNum - 1) + '^'], ['', subLines[subLineIndex + 1]]]));\n }\n\n return locationStr + printPrefixedLines([// Lines specified like this: [\"prefix\", \"string\"],\n [\"\".concat(lineNum - 1), lines[lineIndex - 1]], [\"\".concat(lineNum), locationLine], ['', whitespace(columnNum - 1) + '^'], [\"\".concat(lineNum + 1), lines[lineIndex + 1]]]);\n}\n\nfunction printPrefixedLines(lines) {\n var existingLines = lines.filter(function (_ref) {\n var _ = _ref[0],\n line = _ref[1];\n return line !== undefined;\n });\n var padLen = Math.max.apply(Math, existingLines.map(function (_ref2) {\n var prefix = _ref2[0];\n return prefix.length;\n }));\n return existingLines.map(function (_ref3) {\n var prefix = _ref3[0],\n line = _ref3[1];\n return leftPad(padLen, prefix) + (line ? ' | ' + line : ' |');\n }).join('\\n');\n}\n\nfunction whitespace(len) {\n return Array(len + 1).join(' ');\n}\n\nfunction leftPad(len, str) {\n return whitespace(len - str.length) + str;\n}\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n// FIXME:\n// flowlint uninitialized-instance-property:off\nimport isObjectLike from \"../jsutils/isObjectLike.mjs\";\nimport { SYMBOL_TO_STRING_TAG } from \"../polyfills/symbols.mjs\";\nimport { getLocation } from \"../language/location.mjs\";\nimport { printLocation, printSourceLocation } from \"../language/printLocation.mjs\";\n/**\n * A GraphQLError describes an Error found during the parse, validate, or\n * execute phases of performing a GraphQL operation. In addition to a message\n * and stack trace, it also includes information about the locations in a\n * GraphQL document and/or execution result that correspond to the Error.\n */\n\nexport var GraphQLError = /*#__PURE__*/function (_Error) {\n _inherits(GraphQLError, _Error);\n\n var _super = _createSuper(GraphQLError);\n\n /**\n * A message describing the Error for debugging purposes.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n *\n * Note: should be treated as readonly, despite invariant usage.\n */\n\n /**\n * An array of { line, column } locations within the source GraphQL document\n * which correspond to this error.\n *\n * Errors during validation often contain multiple locations, for example to\n * point out two things with the same name. Errors during execution include a\n * single location, the field which produced the error.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n */\n\n /**\n * An array describing the JSON-path into the execution response which\n * corresponds to this error. Only included for errors during execution.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n */\n\n /**\n * An array of GraphQL AST Nodes corresponding to this error.\n */\n\n /**\n * The source GraphQL document for the first location of this error.\n *\n * Note that if this Error represents more than one node, the source may not\n * represent nodes after the first node.\n */\n\n /**\n * An array of character offsets within the source GraphQL document\n * which correspond to this error.\n */\n\n /**\n * The original error thrown from a field resolver during execution.\n */\n\n /**\n * Extension fields to add to the formatted error.\n */\n function GraphQLError(message, nodes, source, positions, path, originalError, extensions) {\n var _locations2, _source2, _positions2, _extensions2;\n\n var _this;\n\n _classCallCheck(this, GraphQLError);\n\n _this = _super.call(this, message); // Compute list of blame nodes.\n\n var _nodes = Array.isArray(nodes) ? nodes.length !== 0 ? nodes : undefined : nodes ? [nodes] : undefined; // Compute locations in the source for the given nodes/positions.\n\n\n var _source = source;\n\n if (!_source && _nodes) {\n var _nodes$0$loc;\n\n _source = (_nodes$0$loc = _nodes[0].loc) === null || _nodes$0$loc === void 0 ? void 0 : _nodes$0$loc.source;\n }\n\n var _positions = positions;\n\n if (!_positions && _nodes) {\n _positions = _nodes.reduce(function (list, node) {\n if (node.loc) {\n list.push(node.loc.start);\n }\n\n return list;\n }, []);\n }\n\n if (_positions && _positions.length === 0) {\n _positions = undefined;\n }\n\n var _locations;\n\n if (positions && source) {\n _locations = positions.map(function (pos) {\n return getLocation(source, pos);\n });\n } else if (_nodes) {\n _locations = _nodes.reduce(function (list, node) {\n if (node.loc) {\n list.push(getLocation(node.loc.source, node.loc.start));\n }\n\n return list;\n }, []);\n }\n\n var _extensions = extensions;\n\n if (_extensions == null && originalError != null) {\n var originalExtensions = originalError.extensions;\n\n if (isObjectLike(originalExtensions)) {\n _extensions = originalExtensions;\n }\n }\n\n Object.defineProperties(_assertThisInitialized(_this), {\n name: {\n value: 'GraphQLError'\n },\n message: {\n value: message,\n // By being enumerable, JSON.stringify will include `message` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: true,\n writable: true\n },\n locations: {\n // Coercing falsy values to undefined ensures they will not be included\n // in JSON.stringify() when not provided.\n value: (_locations2 = _locations) !== null && _locations2 !== void 0 ? _locations2 : undefined,\n // By being enumerable, JSON.stringify will include `locations` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: _locations != null\n },\n path: {\n // Coercing falsy values to undefined ensures they will not be included\n // in JSON.stringify() when not provided.\n value: path !== null && path !== void 0 ? path : undefined,\n // By being enumerable, JSON.stringify will include `path` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: path != null\n },\n nodes: {\n value: _nodes !== null && _nodes !== void 0 ? _nodes : undefined\n },\n source: {\n value: (_source2 = _source) !== null && _source2 !== void 0 ? _source2 : undefined\n },\n positions: {\n value: (_positions2 = _positions) !== null && _positions2 !== void 0 ? _positions2 : undefined\n },\n originalError: {\n value: originalError\n },\n extensions: {\n // Coercing falsy values to undefined ensures they will not be included\n // in JSON.stringify() when not provided.\n value: (_extensions2 = _extensions) !== null && _extensions2 !== void 0 ? _extensions2 : undefined,\n // By being enumerable, JSON.stringify will include `path` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: _extensions != null\n }\n }); // Include (non-enumerable) stack trace.\n\n if (originalError === null || originalError === void 0 ? void 0 : originalError.stack) {\n Object.defineProperty(_assertThisInitialized(_this), 'stack', {\n value: originalError.stack,\n writable: true,\n configurable: true\n });\n return _possibleConstructorReturn(_this);\n } // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), GraphQLError);\n } else {\n Object.defineProperty(_assertThisInitialized(_this), 'stack', {\n value: Error().stack,\n writable: true,\n configurable: true\n });\n }\n\n return _this;\n }\n\n _createClass(GraphQLError, [{\n key: \"toString\",\n value: function toString() {\n return printError(this);\n } // FIXME: workaround to not break chai comparisons, should be remove in v16\n // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n\n }, {\n key: SYMBOL_TO_STRING_TAG,\n get: function get() {\n return 'Object';\n }\n }]);\n\n return GraphQLError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n/**\n * Prints a GraphQLError to a string, representing useful location information\n * about the error's position in the source.\n */\n\nexport function printError(error) {\n var output = error.message;\n\n if (error.nodes) {\n for (var _i2 = 0, _error$nodes2 = error.nodes; _i2 < _error$nodes2.length; _i2++) {\n var node = _error$nodes2[_i2];\n\n if (node.loc) {\n output += '\\n\\n' + printLocation(node.loc);\n }\n }\n } else if (error.source && error.locations) {\n for (var _i4 = 0, _error$locations2 = error.locations; _i4 < _error$locations2.length; _i4++) {\n var location = _error$locations2[_i4];\n output += '\\n\\n' + printSourceLocation(error.source, location);\n }\n }\n\n return output;\n}\n","import { GraphQLError } from \"./GraphQLError.mjs\";\n/**\n * Produces a GraphQLError representing a syntax error, containing useful\n * descriptive information about the syntax error's position in the source.\n */\n\nexport function syntaxError(source, position, description) {\n return new GraphQLError(\"Syntax Error: \".concat(description), undefined, source, [position]);\n}\n","export default function devAssert(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n\n if (!booleanCondition) {\n throw new Error(message);\n }\n}\n","function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nimport { SYMBOL_TO_STRING_TAG } from \"../polyfills/symbols.mjs\";\nimport inspect from \"../jsutils/inspect.mjs\";\nimport devAssert from \"../jsutils/devAssert.mjs\";\nimport instanceOf from \"../jsutils/instanceOf.mjs\";\n\n/**\n * A representation of source input to GraphQL. The `name` and `locationOffset` parameters are\n * optional, but they are useful for clients who store GraphQL documents in source files.\n * For example, if the GraphQL input starts at line 40 in a file named `Foo.graphql`, it might\n * be useful for `name` to be `\"Foo.graphql\"` and location to be `{ line: 40, column: 1 }`.\n * The `line` and `column` properties in `locationOffset` are 1-indexed.\n */\nexport var Source = /*#__PURE__*/function () {\n function Source(body) {\n var name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'GraphQL request';\n var locationOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n line: 1,\n column: 1\n };\n typeof body === 'string' || devAssert(0, \"Body must be a string. Received: \".concat(inspect(body), \".\"));\n this.body = body;\n this.name = name;\n this.locationOffset = locationOffset;\n this.locationOffset.line > 0 || devAssert(0, 'line in locationOffset is 1-indexed and must be positive.');\n this.locationOffset.column > 0 || devAssert(0, 'column in locationOffset is 1-indexed and must be positive.');\n } // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n\n\n _createClass(Source, [{\n key: SYMBOL_TO_STRING_TAG,\n get: function get() {\n return 'Source';\n }\n }]);\n\n return Source;\n}();\n/**\n * Test if the given value is a Source object.\n *\n * @internal\n */\n\n// eslint-disable-next-line no-redeclare\nexport function isSource(source) {\n return instanceOf(source, Source);\n}\n","import { syntaxError } from \"../error/syntaxError.mjs\";\nimport { Token } from \"./ast.mjs\";\nimport { TokenKind } from \"./tokenKind.mjs\";\nimport { dedentBlockStringValue } from \"./blockString.mjs\";\n/**\n * Given a Source object, creates a Lexer for that source.\n * A Lexer is a stateful stream generator in that every time\n * it is advanced, it returns the next token in the Source. Assuming the\n * source lexes, the final Token emitted by the lexer will be of kind\n * EOF, after which the lexer will repeatedly return the same EOF token\n * whenever called.\n */\n\nexport var Lexer = /*#__PURE__*/function () {\n /**\n * The previously focused non-ignored token.\n */\n\n /**\n * The currently focused non-ignored token.\n */\n\n /**\n * The (1-indexed) line containing the current token.\n */\n\n /**\n * The character offset at which the current line begins.\n */\n function Lexer(source) {\n var startOfFileToken = new Token(TokenKind.SOF, 0, 0, 0, 0, null);\n this.source = source;\n this.lastToken = startOfFileToken;\n this.token = startOfFileToken;\n this.line = 1;\n this.lineStart = 0;\n }\n /**\n * Advances the token stream to the next non-ignored token.\n */\n\n\n var _proto = Lexer.prototype;\n\n _proto.advance = function advance() {\n this.lastToken = this.token;\n var token = this.token = this.lookahead();\n return token;\n }\n /**\n * Looks ahead and returns the next non-ignored token, but does not change\n * the state of Lexer.\n */\n ;\n\n _proto.lookahead = function lookahead() {\n var token = this.token;\n\n if (token.kind !== TokenKind.EOF) {\n do {\n var _token$next;\n\n // Note: next is only mutable during parsing, so we cast to allow this.\n token = (_token$next = token.next) !== null && _token$next !== void 0 ? _token$next : token.next = readToken(this, token);\n } while (token.kind === TokenKind.COMMENT);\n }\n\n return token;\n };\n\n return Lexer;\n}();\n/**\n * @internal\n */\n\nexport function isPunctuatorTokenKind(kind) {\n return kind === TokenKind.BANG || kind === TokenKind.DOLLAR || kind === TokenKind.AMP || kind === TokenKind.PAREN_L || kind === TokenKind.PAREN_R || kind === TokenKind.SPREAD || kind === TokenKind.COLON || kind === TokenKind.EQUALS || kind === TokenKind.AT || kind === TokenKind.BRACKET_L || kind === TokenKind.BRACKET_R || kind === TokenKind.BRACE_L || kind === TokenKind.PIPE || kind === TokenKind.BRACE_R;\n}\n\nfunction printCharCode(code) {\n return (// NaN/undefined represents access beyond the end of the file.\n isNaN(code) ? TokenKind.EOF : // Trust JSON for ASCII.\n code < 0x007f ? JSON.stringify(String.fromCharCode(code)) : // Otherwise print the escaped form.\n \"\\\"\\\\u\".concat(('00' + code.toString(16).toUpperCase()).slice(-4), \"\\\"\")\n );\n}\n/**\n * Gets the next token from the source starting at the given position.\n *\n * This skips over whitespace until it finds the next lexable token, then lexes\n * punctuators immediately or calls the appropriate helper function for more\n * complicated tokens.\n */\n\n\nfunction readToken(lexer, prev) {\n var source = lexer.source;\n var body = source.body;\n var bodyLength = body.length;\n var pos = prev.end;\n\n while (pos < bodyLength) {\n var code = body.charCodeAt(pos);\n var _line = lexer.line;\n\n var _col = 1 + pos - lexer.lineStart; // SourceCharacter\n\n\n switch (code) {\n case 0xfeff: // \n\n case 9: // \\t\n\n case 32: // \n\n case 44:\n // ,\n ++pos;\n continue;\n\n case 10:\n // \\n\n ++pos;\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n\n case 13:\n // \\r\n if (body.charCodeAt(pos + 1) === 10) {\n pos += 2;\n } else {\n ++pos;\n }\n\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n\n case 33:\n // !\n return new Token(TokenKind.BANG, pos, pos + 1, _line, _col, prev);\n\n case 35:\n // #\n return readComment(source, pos, _line, _col, prev);\n\n case 36:\n // $\n return new Token(TokenKind.DOLLAR, pos, pos + 1, _line, _col, prev);\n\n case 38:\n // &\n return new Token(TokenKind.AMP, pos, pos + 1, _line, _col, prev);\n\n case 40:\n // (\n return new Token(TokenKind.PAREN_L, pos, pos + 1, _line, _col, prev);\n\n case 41:\n // )\n return new Token(TokenKind.PAREN_R, pos, pos + 1, _line, _col, prev);\n\n case 46:\n // .\n if (body.charCodeAt(pos + 1) === 46 && body.charCodeAt(pos + 2) === 46) {\n return new Token(TokenKind.SPREAD, pos, pos + 3, _line, _col, prev);\n }\n\n break;\n\n case 58:\n // :\n return new Token(TokenKind.COLON, pos, pos + 1, _line, _col, prev);\n\n case 61:\n // =\n return new Token(TokenKind.EQUALS, pos, pos + 1, _line, _col, prev);\n\n case 64:\n // @\n return new Token(TokenKind.AT, pos, pos + 1, _line, _col, prev);\n\n case 91:\n // [\n return new Token(TokenKind.BRACKET_L, pos, pos + 1, _line, _col, prev);\n\n case 93:\n // ]\n return new Token(TokenKind.BRACKET_R, pos, pos + 1, _line, _col, prev);\n\n case 123:\n // {\n return new Token(TokenKind.BRACE_L, pos, pos + 1, _line, _col, prev);\n\n case 124:\n // |\n return new Token(TokenKind.PIPE, pos, pos + 1, _line, _col, prev);\n\n case 125:\n // }\n return new Token(TokenKind.BRACE_R, pos, pos + 1, _line, _col, prev);\n\n case 34:\n // \"\n if (body.charCodeAt(pos + 1) === 34 && body.charCodeAt(pos + 2) === 34) {\n return readBlockString(source, pos, _line, _col, prev, lexer);\n }\n\n return readString(source, pos, _line, _col, prev);\n\n case 45: // -\n\n case 48: // 0\n\n case 49: // 1\n\n case 50: // 2\n\n case 51: // 3\n\n case 52: // 4\n\n case 53: // 5\n\n case 54: // 6\n\n case 55: // 7\n\n case 56: // 8\n\n case 57:\n // 9\n return readNumber(source, pos, code, _line, _col, prev);\n\n case 65: // A\n\n case 66: // B\n\n case 67: // C\n\n case 68: // D\n\n case 69: // E\n\n case 70: // F\n\n case 71: // G\n\n case 72: // H\n\n case 73: // I\n\n case 74: // J\n\n case 75: // K\n\n case 76: // L\n\n case 77: // M\n\n case 78: // N\n\n case 79: // O\n\n case 80: // P\n\n case 81: // Q\n\n case 82: // R\n\n case 83: // S\n\n case 84: // T\n\n case 85: // U\n\n case 86: // V\n\n case 87: // W\n\n case 88: // X\n\n case 89: // Y\n\n case 90: // Z\n\n case 95: // _\n\n case 97: // a\n\n case 98: // b\n\n case 99: // c\n\n case 100: // d\n\n case 101: // e\n\n case 102: // f\n\n case 103: // g\n\n case 104: // h\n\n case 105: // i\n\n case 106: // j\n\n case 107: // k\n\n case 108: // l\n\n case 109: // m\n\n case 110: // n\n\n case 111: // o\n\n case 112: // p\n\n case 113: // q\n\n case 114: // r\n\n case 115: // s\n\n case 116: // t\n\n case 117: // u\n\n case 118: // v\n\n case 119: // w\n\n case 120: // x\n\n case 121: // y\n\n case 122:\n // z\n return readName(source, pos, _line, _col, prev);\n }\n\n throw syntaxError(source, pos, unexpectedCharacterMessage(code));\n }\n\n var line = lexer.line;\n var col = 1 + pos - lexer.lineStart;\n return new Token(TokenKind.EOF, bodyLength, bodyLength, line, col, prev);\n}\n/**\n * Report a message that an unexpected character was encountered.\n */\n\n\nfunction unexpectedCharacterMessage(code) {\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) {\n return \"Cannot contain the invalid character \".concat(printCharCode(code), \".\");\n }\n\n if (code === 39) {\n // '\n return 'Unexpected single quote character (\\'), did you mean to use a double quote (\")?';\n }\n\n return \"Cannot parse the unexpected character \".concat(printCharCode(code), \".\");\n}\n/**\n * Reads a comment token from the source file.\n *\n * #[\\u0009\\u0020-\\uFFFF]*\n */\n\n\nfunction readComment(source, start, line, col, prev) {\n var body = source.body;\n var code;\n var position = start;\n\n do {\n code = body.charCodeAt(++position);\n } while (!isNaN(code) && ( // SourceCharacter but not LineTerminator\n code > 0x001f || code === 0x0009));\n\n return new Token(TokenKind.COMMENT, start, position, line, col, prev, body.slice(start + 1, position));\n}\n/**\n * Reads a number token from the source file, either a float\n * or an int depending on whether a decimal point appears.\n *\n * Int: -?(0|[1-9][0-9]*)\n * Float: -?(0|[1-9][0-9]*)(\\.[0-9]+)?((E|e)(+|-)?[0-9]+)?\n */\n\n\nfunction readNumber(source, start, firstCode, line, col, prev) {\n var body = source.body;\n var code = firstCode;\n var position = start;\n var isFloat = false;\n\n if (code === 45) {\n // -\n code = body.charCodeAt(++position);\n }\n\n if (code === 48) {\n // 0\n code = body.charCodeAt(++position);\n\n if (code >= 48 && code <= 57) {\n throw syntaxError(source, position, \"Invalid number, unexpected digit after 0: \".concat(printCharCode(code), \".\"));\n }\n } else {\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n\n if (code === 46) {\n // .\n isFloat = true;\n code = body.charCodeAt(++position);\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n\n if (code === 69 || code === 101) {\n // E e\n isFloat = true;\n code = body.charCodeAt(++position);\n\n if (code === 43 || code === 45) {\n // + -\n code = body.charCodeAt(++position);\n }\n\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n } // Numbers cannot be followed by . or NameStart\n\n\n if (code === 46 || isNameStart(code)) {\n throw syntaxError(source, position, \"Invalid number, expected digit but got: \".concat(printCharCode(code), \".\"));\n }\n\n return new Token(isFloat ? TokenKind.FLOAT : TokenKind.INT, start, position, line, col, prev, body.slice(start, position));\n}\n/**\n * Returns the new position in the source after reading digits.\n */\n\n\nfunction readDigits(source, start, firstCode) {\n var body = source.body;\n var position = start;\n var code = firstCode;\n\n if (code >= 48 && code <= 57) {\n // 0 - 9\n do {\n code = body.charCodeAt(++position);\n } while (code >= 48 && code <= 57); // 0 - 9\n\n\n return position;\n }\n\n throw syntaxError(source, position, \"Invalid number, expected digit but got: \".concat(printCharCode(code), \".\"));\n}\n/**\n * Reads a string token from the source file.\n *\n * \"([^\"\\\\\\u000A\\u000D]|(\\\\(u[0-9a-fA-F]{4}|[\"\\\\/bfnrt])))*\"\n */\n\n\nfunction readString(source, start, line, col, prev) {\n var body = source.body;\n var position = start + 1;\n var chunkStart = position;\n var code = 0;\n var value = '';\n\n while (position < body.length && !isNaN(code = body.charCodeAt(position)) && // not LineTerminator\n code !== 0x000a && code !== 0x000d) {\n // Closing Quote (\")\n if (code === 34) {\n value += body.slice(chunkStart, position);\n return new Token(TokenKind.STRING, start, position + 1, line, col, prev, value);\n } // SourceCharacter\n\n\n if (code < 0x0020 && code !== 0x0009) {\n throw syntaxError(source, position, \"Invalid character within String: \".concat(printCharCode(code), \".\"));\n }\n\n ++position;\n\n if (code === 92) {\n // \\\n value += body.slice(chunkStart, position - 1);\n code = body.charCodeAt(position);\n\n switch (code) {\n case 34:\n value += '\"';\n break;\n\n case 47:\n value += '/';\n break;\n\n case 92:\n value += '\\\\';\n break;\n\n case 98:\n value += '\\b';\n break;\n\n case 102:\n value += '\\f';\n break;\n\n case 110:\n value += '\\n';\n break;\n\n case 114:\n value += '\\r';\n break;\n\n case 116:\n value += '\\t';\n break;\n\n case 117:\n {\n // uXXXX\n var charCode = uniCharCode(body.charCodeAt(position + 1), body.charCodeAt(position + 2), body.charCodeAt(position + 3), body.charCodeAt(position + 4));\n\n if (charCode < 0) {\n var invalidSequence = body.slice(position + 1, position + 5);\n throw syntaxError(source, position, \"Invalid character escape sequence: \\\\u\".concat(invalidSequence, \".\"));\n }\n\n value += String.fromCharCode(charCode);\n position += 4;\n break;\n }\n\n default:\n throw syntaxError(source, position, \"Invalid character escape sequence: \\\\\".concat(String.fromCharCode(code), \".\"));\n }\n\n ++position;\n chunkStart = position;\n }\n }\n\n throw syntaxError(source, position, 'Unterminated string.');\n}\n/**\n * Reads a block string token from the source file.\n *\n * \"\"\"(\"?\"?(\\\\\"\"\"|\\\\(?!=\"\"\")|[^\"\\\\]))*\"\"\"\n */\n\n\nfunction readBlockString(source, start, line, col, prev, lexer) {\n var body = source.body;\n var position = start + 3;\n var chunkStart = position;\n var code = 0;\n var rawValue = '';\n\n while (position < body.length && !isNaN(code = body.charCodeAt(position))) {\n // Closing Triple-Quote (\"\"\")\n if (code === 34 && body.charCodeAt(position + 1) === 34 && body.charCodeAt(position + 2) === 34) {\n rawValue += body.slice(chunkStart, position);\n return new Token(TokenKind.BLOCK_STRING, start, position + 3, line, col, prev, dedentBlockStringValue(rawValue));\n } // SourceCharacter\n\n\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) {\n throw syntaxError(source, position, \"Invalid character within String: \".concat(printCharCode(code), \".\"));\n }\n\n if (code === 10) {\n // new line\n ++position;\n ++lexer.line;\n lexer.lineStart = position;\n } else if (code === 13) {\n // carriage return\n if (body.charCodeAt(position + 1) === 10) {\n position += 2;\n } else {\n ++position;\n }\n\n ++lexer.line;\n lexer.lineStart = position;\n } else if ( // Escape Triple-Quote (\\\"\"\")\n code === 92 && body.charCodeAt(position + 1) === 34 && body.charCodeAt(position + 2) === 34 && body.charCodeAt(position + 3) === 34) {\n rawValue += body.slice(chunkStart, position) + '\"\"\"';\n position += 4;\n chunkStart = position;\n } else {\n ++position;\n }\n }\n\n throw syntaxError(source, position, 'Unterminated string.');\n}\n/**\n * Converts four hexadecimal chars to the integer that the\n * string represents. For example, uniCharCode('0','0','0','f')\n * will return 15, and uniCharCode('0','0','f','f') returns 255.\n *\n * Returns a negative number on error, if a char was invalid.\n *\n * This is implemented by noting that char2hex() returns -1 on error,\n * which means the result of ORing the char2hex() will also be negative.\n */\n\n\nfunction uniCharCode(a, b, c, d) {\n return char2hex(a) << 12 | char2hex(b) << 8 | char2hex(c) << 4 | char2hex(d);\n}\n/**\n * Converts a hex character to its integer value.\n * '0' becomes 0, '9' becomes 9\n * 'A' becomes 10, 'F' becomes 15\n * 'a' becomes 10, 'f' becomes 15\n *\n * Returns -1 on error.\n */\n\n\nfunction char2hex(a) {\n return a >= 48 && a <= 57 ? a - 48 // 0-9\n : a >= 65 && a <= 70 ? a - 55 // A-F\n : a >= 97 && a <= 102 ? a - 87 // a-f\n : -1;\n}\n/**\n * Reads an alphanumeric + underscore name from the source.\n *\n * [_A-Za-z][_0-9A-Za-z]*\n */\n\n\nfunction readName(source, start, line, col, prev) {\n var body = source.body;\n var bodyLength = body.length;\n var position = start + 1;\n var code = 0;\n\n while (position !== bodyLength && !isNaN(code = body.charCodeAt(position)) && (code === 95 || // _\n code >= 48 && code <= 57 || // 0-9\n code >= 65 && code <= 90 || // A-Z\n code >= 97 && code <= 122) // a-z\n ) {\n ++position;\n }\n\n return new Token(TokenKind.NAME, start, position, line, col, prev, body.slice(start, position));\n} // _ A-Z a-z\n\n\nfunction isNameStart(code) {\n return code === 95 || code >= 65 && code <= 90 || code >= 97 && code <= 122;\n}\n","import { syntaxError } from \"../error/syntaxError.mjs\";\nimport { Kind } from \"./kinds.mjs\";\nimport { Location } from \"./ast.mjs\";\nimport { TokenKind } from \"./tokenKind.mjs\";\nimport { Source, isSource } from \"./source.mjs\";\nimport { DirectiveLocation } from \"./directiveLocation.mjs\";\nimport { Lexer, isPunctuatorTokenKind } from \"./lexer.mjs\";\n/**\n * Configuration options to control parser behavior\n */\n\n/**\n * Given a GraphQL source, parses it into a Document.\n * Throws GraphQLError if a syntax error is encountered.\n */\nexport function parse(source, options) {\n var parser = new Parser(source, options);\n return parser.parseDocument();\n}\n/**\n * Given a string containing a GraphQL value (ex. `[42]`), parse the AST for\n * that value.\n * Throws GraphQLError if a syntax error is encountered.\n *\n * This is useful within tools that operate upon GraphQL Values directly and\n * in isolation of complete GraphQL documents.\n *\n * Consider providing the results to the utility function: valueFromAST().\n */\n\nexport function parseValue(source, options) {\n var parser = new Parser(source, options);\n parser.expectToken(TokenKind.SOF);\n var value = parser.parseValueLiteral(false);\n parser.expectToken(TokenKind.EOF);\n return value;\n}\n/**\n * Given a string containing a GraphQL Type (ex. `[Int!]`), parse the AST for\n * that type.\n * Throws GraphQLError if a syntax error is encountered.\n *\n * This is useful within tools that operate upon GraphQL Types directly and\n * in isolation of complete GraphQL documents.\n *\n * Consider providing the results to the utility function: typeFromAST().\n */\n\nexport function parseType(source, options) {\n var parser = new Parser(source, options);\n parser.expectToken(TokenKind.SOF);\n var type = parser.parseTypeReference();\n parser.expectToken(TokenKind.EOF);\n return type;\n}\n/**\n * This class is exported only to assist people in implementing their own parsers\n * without duplicating too much code and should be used only as last resort for cases\n * such as experimental syntax or if certain features could not be contributed upstream.\n *\n * It is still part of the internal API and is versioned, so any changes to it are never\n * considered breaking changes. If you still need to support multiple versions of the\n * library, please use the `versionInfo` variable for version detection.\n *\n * @internal\n */\n\nexport var Parser = /*#__PURE__*/function () {\n function Parser(source, options) {\n var sourceObj = isSource(source) ? source : new Source(source);\n this._lexer = new Lexer(sourceObj);\n this._options = options;\n }\n /**\n * Converts a name lex token into a name parse node.\n */\n\n\n var _proto = Parser.prototype;\n\n _proto.parseName = function parseName() {\n var token = this.expectToken(TokenKind.NAME);\n return {\n kind: Kind.NAME,\n value: token.value,\n loc: this.loc(token)\n };\n } // Implements the parsing rules in the Document section.\n\n /**\n * Document : Definition+\n */\n ;\n\n _proto.parseDocument = function parseDocument() {\n var start = this._lexer.token;\n return {\n kind: Kind.DOCUMENT,\n definitions: this.many(TokenKind.SOF, this.parseDefinition, TokenKind.EOF),\n loc: this.loc(start)\n };\n }\n /**\n * Definition :\n * - ExecutableDefinition\n * - TypeSystemDefinition\n * - TypeSystemExtension\n *\n * ExecutableDefinition :\n * - OperationDefinition\n * - FragmentDefinition\n */\n ;\n\n _proto.parseDefinition = function parseDefinition() {\n if (this.peek(TokenKind.NAME)) {\n switch (this._lexer.token.value) {\n case 'query':\n case 'mutation':\n case 'subscription':\n return this.parseOperationDefinition();\n\n case 'fragment':\n return this.parseFragmentDefinition();\n\n case 'schema':\n case 'scalar':\n case 'type':\n case 'interface':\n case 'union':\n case 'enum':\n case 'input':\n case 'directive':\n return this.parseTypeSystemDefinition();\n\n case 'extend':\n return this.parseTypeSystemExtension();\n }\n } else if (this.peek(TokenKind.BRACE_L)) {\n return this.parseOperationDefinition();\n } else if (this.peekDescription()) {\n return this.parseTypeSystemDefinition();\n }\n\n throw this.unexpected();\n } // Implements the parsing rules in the Operations section.\n\n /**\n * OperationDefinition :\n * - SelectionSet\n * - OperationType Name? VariableDefinitions? Directives? SelectionSet\n */\n ;\n\n _proto.parseOperationDefinition = function parseOperationDefinition() {\n var start = this._lexer.token;\n\n if (this.peek(TokenKind.BRACE_L)) {\n return {\n kind: Kind.OPERATION_DEFINITION,\n operation: 'query',\n name: undefined,\n variableDefinitions: [],\n directives: [],\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n\n var operation = this.parseOperationType();\n var name;\n\n if (this.peek(TokenKind.NAME)) {\n name = this.parseName();\n }\n\n return {\n kind: Kind.OPERATION_DEFINITION,\n operation: operation,\n name: name,\n variableDefinitions: this.parseVariableDefinitions(),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * OperationType : one of query mutation subscription\n */\n ;\n\n _proto.parseOperationType = function parseOperationType() {\n var operationToken = this.expectToken(TokenKind.NAME);\n\n switch (operationToken.value) {\n case 'query':\n return 'query';\n\n case 'mutation':\n return 'mutation';\n\n case 'subscription':\n return 'subscription';\n }\n\n throw this.unexpected(operationToken);\n }\n /**\n * VariableDefinitions : ( VariableDefinition+ )\n */\n ;\n\n _proto.parseVariableDefinitions = function parseVariableDefinitions() {\n return this.optionalMany(TokenKind.PAREN_L, this.parseVariableDefinition, TokenKind.PAREN_R);\n }\n /**\n * VariableDefinition : Variable : Type DefaultValue? Directives[Const]?\n */\n ;\n\n _proto.parseVariableDefinition = function parseVariableDefinition() {\n var start = this._lexer.token;\n return {\n kind: Kind.VARIABLE_DEFINITION,\n variable: this.parseVariable(),\n type: (this.expectToken(TokenKind.COLON), this.parseTypeReference()),\n defaultValue: this.expectOptionalToken(TokenKind.EQUALS) ? this.parseValueLiteral(true) : undefined,\n directives: this.parseDirectives(true),\n loc: this.loc(start)\n };\n }\n /**\n * Variable : $ Name\n */\n ;\n\n _proto.parseVariable = function parseVariable() {\n var start = this._lexer.token;\n this.expectToken(TokenKind.DOLLAR);\n return {\n kind: Kind.VARIABLE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n }\n /**\n * SelectionSet : { Selection+ }\n */\n ;\n\n _proto.parseSelectionSet = function parseSelectionSet() {\n var start = this._lexer.token;\n return {\n kind: Kind.SELECTION_SET,\n selections: this.many(TokenKind.BRACE_L, this.parseSelection, TokenKind.BRACE_R),\n loc: this.loc(start)\n };\n }\n /**\n * Selection :\n * - Field\n * - FragmentSpread\n * - InlineFragment\n */\n ;\n\n _proto.parseSelection = function parseSelection() {\n return this.peek(TokenKind.SPREAD) ? this.parseFragment() : this.parseField();\n }\n /**\n * Field : Alias? Name Arguments? Directives? SelectionSet?\n *\n * Alias : Name :\n */\n ;\n\n _proto.parseField = function parseField() {\n var start = this._lexer.token;\n var nameOrAlias = this.parseName();\n var alias;\n var name;\n\n if (this.expectOptionalToken(TokenKind.COLON)) {\n alias = nameOrAlias;\n name = this.parseName();\n } else {\n name = nameOrAlias;\n }\n\n return {\n kind: Kind.FIELD,\n alias: alias,\n name: name,\n arguments: this.parseArguments(false),\n directives: this.parseDirectives(false),\n selectionSet: this.peek(TokenKind.BRACE_L) ? this.parseSelectionSet() : undefined,\n loc: this.loc(start)\n };\n }\n /**\n * Arguments[Const] : ( Argument[?Const]+ )\n */\n ;\n\n _proto.parseArguments = function parseArguments(isConst) {\n var item = isConst ? this.parseConstArgument : this.parseArgument;\n return this.optionalMany(TokenKind.PAREN_L, item, TokenKind.PAREN_R);\n }\n /**\n * Argument[Const] : Name : Value[?Const]\n */\n ;\n\n _proto.parseArgument = function parseArgument() {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken(TokenKind.COLON);\n return {\n kind: Kind.ARGUMENT,\n name: name,\n value: this.parseValueLiteral(false),\n loc: this.loc(start)\n };\n };\n\n _proto.parseConstArgument = function parseConstArgument() {\n var start = this._lexer.token;\n return {\n kind: Kind.ARGUMENT,\n name: this.parseName(),\n value: (this.expectToken(TokenKind.COLON), this.parseValueLiteral(true)),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Fragments section.\n\n /**\n * Corresponds to both FragmentSpread and InlineFragment in the spec.\n *\n * FragmentSpread : ... FragmentName Directives?\n *\n * InlineFragment : ... TypeCondition? Directives? SelectionSet\n */\n ;\n\n _proto.parseFragment = function parseFragment() {\n var start = this._lexer.token;\n this.expectToken(TokenKind.SPREAD);\n var hasTypeCondition = this.expectOptionalKeyword('on');\n\n if (!hasTypeCondition && this.peek(TokenKind.NAME)) {\n return {\n kind: Kind.FRAGMENT_SPREAD,\n name: this.parseFragmentName(),\n directives: this.parseDirectives(false),\n loc: this.loc(start)\n };\n }\n\n return {\n kind: Kind.INLINE_FRAGMENT,\n typeCondition: hasTypeCondition ? this.parseNamedType() : undefined,\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * FragmentDefinition :\n * - fragment FragmentName on TypeCondition Directives? SelectionSet\n *\n * TypeCondition : NamedType\n */\n ;\n\n _proto.parseFragmentDefinition = function parseFragmentDefinition() {\n var _this$_options;\n\n var start = this._lexer.token;\n this.expectKeyword('fragment'); // Experimental support for defining variables within fragments changes\n // the grammar of FragmentDefinition:\n // - fragment FragmentName VariableDefinitions? on TypeCondition Directives? SelectionSet\n\n if (((_this$_options = this._options) === null || _this$_options === void 0 ? void 0 : _this$_options.experimentalFragmentVariables) === true) {\n return {\n kind: Kind.FRAGMENT_DEFINITION,\n name: this.parseFragmentName(),\n variableDefinitions: this.parseVariableDefinitions(),\n typeCondition: (this.expectKeyword('on'), this.parseNamedType()),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n\n return {\n kind: Kind.FRAGMENT_DEFINITION,\n name: this.parseFragmentName(),\n typeCondition: (this.expectKeyword('on'), this.parseNamedType()),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * FragmentName : Name but not `on`\n */\n ;\n\n _proto.parseFragmentName = function parseFragmentName() {\n if (this._lexer.token.value === 'on') {\n throw this.unexpected();\n }\n\n return this.parseName();\n } // Implements the parsing rules in the Values section.\n\n /**\n * Value[Const] :\n * - [~Const] Variable\n * - IntValue\n * - FloatValue\n * - StringValue\n * - BooleanValue\n * - NullValue\n * - EnumValue\n * - ListValue[?Const]\n * - ObjectValue[?Const]\n *\n * BooleanValue : one of `true` `false`\n *\n * NullValue : `null`\n *\n * EnumValue : Name but not `true`, `false` or `null`\n */\n ;\n\n _proto.parseValueLiteral = function parseValueLiteral(isConst) {\n var token = this._lexer.token;\n\n switch (token.kind) {\n case TokenKind.BRACKET_L:\n return this.parseList(isConst);\n\n case TokenKind.BRACE_L:\n return this.parseObject(isConst);\n\n case TokenKind.INT:\n this._lexer.advance();\n\n return {\n kind: Kind.INT,\n value: token.value,\n loc: this.loc(token)\n };\n\n case TokenKind.FLOAT:\n this._lexer.advance();\n\n return {\n kind: Kind.FLOAT,\n value: token.value,\n loc: this.loc(token)\n };\n\n case TokenKind.STRING:\n case TokenKind.BLOCK_STRING:\n return this.parseStringLiteral();\n\n case TokenKind.NAME:\n this._lexer.advance();\n\n switch (token.value) {\n case 'true':\n return {\n kind: Kind.BOOLEAN,\n value: true,\n loc: this.loc(token)\n };\n\n case 'false':\n return {\n kind: Kind.BOOLEAN,\n value: false,\n loc: this.loc(token)\n };\n\n case 'null':\n return {\n kind: Kind.NULL,\n loc: this.loc(token)\n };\n\n default:\n return {\n kind: Kind.ENUM,\n value: token.value,\n loc: this.loc(token)\n };\n }\n\n case TokenKind.DOLLAR:\n if (!isConst) {\n return this.parseVariable();\n }\n\n break;\n }\n\n throw this.unexpected();\n };\n\n _proto.parseStringLiteral = function parseStringLiteral() {\n var token = this._lexer.token;\n\n this._lexer.advance();\n\n return {\n kind: Kind.STRING,\n value: token.value,\n block: token.kind === TokenKind.BLOCK_STRING,\n loc: this.loc(token)\n };\n }\n /**\n * ListValue[Const] :\n * - [ ]\n * - [ Value[?Const]+ ]\n */\n ;\n\n _proto.parseList = function parseList(isConst) {\n var _this = this;\n\n var start = this._lexer.token;\n\n var item = function item() {\n return _this.parseValueLiteral(isConst);\n };\n\n return {\n kind: Kind.LIST,\n values: this.any(TokenKind.BRACKET_L, item, TokenKind.BRACKET_R),\n loc: this.loc(start)\n };\n }\n /**\n * ObjectValue[Const] :\n * - { }\n * - { ObjectField[?Const]+ }\n */\n ;\n\n _proto.parseObject = function parseObject(isConst) {\n var _this2 = this;\n\n var start = this._lexer.token;\n\n var item = function item() {\n return _this2.parseObjectField(isConst);\n };\n\n return {\n kind: Kind.OBJECT,\n fields: this.any(TokenKind.BRACE_L, item, TokenKind.BRACE_R),\n loc: this.loc(start)\n };\n }\n /**\n * ObjectField[Const] : Name : Value[?Const]\n */\n ;\n\n _proto.parseObjectField = function parseObjectField(isConst) {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken(TokenKind.COLON);\n return {\n kind: Kind.OBJECT_FIELD,\n name: name,\n value: this.parseValueLiteral(isConst),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Directives section.\n\n /**\n * Directives[Const] : Directive[?Const]+\n */\n ;\n\n _proto.parseDirectives = function parseDirectives(isConst) {\n var directives = [];\n\n while (this.peek(TokenKind.AT)) {\n directives.push(this.parseDirective(isConst));\n }\n\n return directives;\n }\n /**\n * Directive[Const] : @ Name Arguments[?Const]?\n */\n ;\n\n _proto.parseDirective = function parseDirective(isConst) {\n var start = this._lexer.token;\n this.expectToken(TokenKind.AT);\n return {\n kind: Kind.DIRECTIVE,\n name: this.parseName(),\n arguments: this.parseArguments(isConst),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Types section.\n\n /**\n * Type :\n * - NamedType\n * - ListType\n * - NonNullType\n */\n ;\n\n _proto.parseTypeReference = function parseTypeReference() {\n var start = this._lexer.token;\n var type;\n\n if (this.expectOptionalToken(TokenKind.BRACKET_L)) {\n type = this.parseTypeReference();\n this.expectToken(TokenKind.BRACKET_R);\n type = {\n kind: Kind.LIST_TYPE,\n type: type,\n loc: this.loc(start)\n };\n } else {\n type = this.parseNamedType();\n }\n\n if (this.expectOptionalToken(TokenKind.BANG)) {\n return {\n kind: Kind.NON_NULL_TYPE,\n type: type,\n loc: this.loc(start)\n };\n }\n\n return type;\n }\n /**\n * NamedType : Name\n */\n ;\n\n _proto.parseNamedType = function parseNamedType() {\n var start = this._lexer.token;\n return {\n kind: Kind.NAMED_TYPE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Type Definition section.\n\n /**\n * TypeSystemDefinition :\n * - SchemaDefinition\n * - TypeDefinition\n * - DirectiveDefinition\n *\n * TypeDefinition :\n * - ScalarTypeDefinition\n * - ObjectTypeDefinition\n * - InterfaceTypeDefinition\n * - UnionTypeDefinition\n * - EnumTypeDefinition\n * - InputObjectTypeDefinition\n */\n ;\n\n _proto.parseTypeSystemDefinition = function parseTypeSystemDefinition() {\n // Many definitions begin with a description and require a lookahead.\n var keywordToken = this.peekDescription() ? this._lexer.lookahead() : this._lexer.token;\n\n if (keywordToken.kind === TokenKind.NAME) {\n switch (keywordToken.value) {\n case 'schema':\n return this.parseSchemaDefinition();\n\n case 'scalar':\n return this.parseScalarTypeDefinition();\n\n case 'type':\n return this.parseObjectTypeDefinition();\n\n case 'interface':\n return this.parseInterfaceTypeDefinition();\n\n case 'union':\n return this.parseUnionTypeDefinition();\n\n case 'enum':\n return this.parseEnumTypeDefinition();\n\n case 'input':\n return this.parseInputObjectTypeDefinition();\n\n case 'directive':\n return this.parseDirectiveDefinition();\n }\n }\n\n throw this.unexpected(keywordToken);\n };\n\n _proto.peekDescription = function peekDescription() {\n return this.peek(TokenKind.STRING) || this.peek(TokenKind.BLOCK_STRING);\n }\n /**\n * Description : StringValue\n */\n ;\n\n _proto.parseDescription = function parseDescription() {\n if (this.peekDescription()) {\n return this.parseStringLiteral();\n }\n }\n /**\n * SchemaDefinition : Description? schema Directives[Const]? { OperationTypeDefinition+ }\n */\n ;\n\n _proto.parseSchemaDefinition = function parseSchemaDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('schema');\n var directives = this.parseDirectives(true);\n var operationTypes = this.many(TokenKind.BRACE_L, this.parseOperationTypeDefinition, TokenKind.BRACE_R);\n return {\n kind: Kind.SCHEMA_DEFINITION,\n description: description,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n }\n /**\n * OperationTypeDefinition : OperationType : NamedType\n */\n ;\n\n _proto.parseOperationTypeDefinition = function parseOperationTypeDefinition() {\n var start = this._lexer.token;\n var operation = this.parseOperationType();\n this.expectToken(TokenKind.COLON);\n var type = this.parseNamedType();\n return {\n kind: Kind.OPERATION_TYPE_DEFINITION,\n operation: operation,\n type: type,\n loc: this.loc(start)\n };\n }\n /**\n * ScalarTypeDefinition : Description? scalar Name Directives[Const]?\n */\n ;\n\n _proto.parseScalarTypeDefinition = function parseScalarTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('scalar');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.SCALAR_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ObjectTypeDefinition :\n * Description?\n * type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition?\n */\n ;\n\n _proto.parseObjectTypeDefinition = function parseObjectTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('type');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n return {\n kind: Kind.OBJECT_TYPE_DEFINITION,\n description: description,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * ImplementsInterfaces :\n * - implements `&`? NamedType\n * - ImplementsInterfaces & NamedType\n */\n ;\n\n _proto.parseImplementsInterfaces = function parseImplementsInterfaces() {\n var _this$_options2;\n\n if (!this.expectOptionalKeyword('implements')) {\n return [];\n }\n\n if (((_this$_options2 = this._options) === null || _this$_options2 === void 0 ? void 0 : _this$_options2.allowLegacySDLImplementsInterfaces) === true) {\n var types = []; // Optional leading ampersand\n\n this.expectOptionalToken(TokenKind.AMP);\n\n do {\n types.push(this.parseNamedType());\n } while (this.expectOptionalToken(TokenKind.AMP) || this.peek(TokenKind.NAME));\n\n return types;\n }\n\n return this.delimitedMany(TokenKind.AMP, this.parseNamedType);\n }\n /**\n * FieldsDefinition : { FieldDefinition+ }\n */\n ;\n\n _proto.parseFieldsDefinition = function parseFieldsDefinition() {\n var _this$_options3;\n\n // Legacy support for the SDL?\n if (((_this$_options3 = this._options) === null || _this$_options3 === void 0 ? void 0 : _this$_options3.allowLegacySDLEmptyFields) === true && this.peek(TokenKind.BRACE_L) && this._lexer.lookahead().kind === TokenKind.BRACE_R) {\n this._lexer.advance();\n\n this._lexer.advance();\n\n return [];\n }\n\n return this.optionalMany(TokenKind.BRACE_L, this.parseFieldDefinition, TokenKind.BRACE_R);\n }\n /**\n * FieldDefinition :\n * - Description? Name ArgumentsDefinition? : Type Directives[Const]?\n */\n ;\n\n _proto.parseFieldDefinition = function parseFieldDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n var args = this.parseArgumentDefs();\n this.expectToken(TokenKind.COLON);\n var type = this.parseTypeReference();\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.FIELD_DEFINITION,\n description: description,\n name: name,\n arguments: args,\n type: type,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ArgumentsDefinition : ( InputValueDefinition+ )\n */\n ;\n\n _proto.parseArgumentDefs = function parseArgumentDefs() {\n return this.optionalMany(TokenKind.PAREN_L, this.parseInputValueDef, TokenKind.PAREN_R);\n }\n /**\n * InputValueDefinition :\n * - Description? Name : Type DefaultValue? Directives[Const]?\n */\n ;\n\n _proto.parseInputValueDef = function parseInputValueDef() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n this.expectToken(TokenKind.COLON);\n var type = this.parseTypeReference();\n var defaultValue;\n\n if (this.expectOptionalToken(TokenKind.EQUALS)) {\n defaultValue = this.parseValueLiteral(true);\n }\n\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.INPUT_VALUE_DEFINITION,\n description: description,\n name: name,\n type: type,\n defaultValue: defaultValue,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * InterfaceTypeDefinition :\n * - Description? interface Name Directives[Const]? FieldsDefinition?\n */\n ;\n\n _proto.parseInterfaceTypeDefinition = function parseInterfaceTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('interface');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n return {\n kind: Kind.INTERFACE_TYPE_DEFINITION,\n description: description,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * UnionTypeDefinition :\n * - Description? union Name Directives[Const]? UnionMemberTypes?\n */\n ;\n\n _proto.parseUnionTypeDefinition = function parseUnionTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('union');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var types = this.parseUnionMemberTypes();\n return {\n kind: Kind.UNION_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n }\n /**\n * UnionMemberTypes :\n * - = `|`? NamedType\n * - UnionMemberTypes | NamedType\n */\n ;\n\n _proto.parseUnionMemberTypes = function parseUnionMemberTypes() {\n return this.expectOptionalToken(TokenKind.EQUALS) ? this.delimitedMany(TokenKind.PIPE, this.parseNamedType) : [];\n }\n /**\n * EnumTypeDefinition :\n * - Description? enum Name Directives[Const]? EnumValuesDefinition?\n */\n ;\n\n _proto.parseEnumTypeDefinition = function parseEnumTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('enum');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var values = this.parseEnumValuesDefinition();\n return {\n kind: Kind.ENUM_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n }\n /**\n * EnumValuesDefinition : { EnumValueDefinition+ }\n */\n ;\n\n _proto.parseEnumValuesDefinition = function parseEnumValuesDefinition() {\n return this.optionalMany(TokenKind.BRACE_L, this.parseEnumValueDefinition, TokenKind.BRACE_R);\n }\n /**\n * EnumValueDefinition : Description? EnumValue Directives[Const]?\n *\n * EnumValue : Name\n */\n ;\n\n _proto.parseEnumValueDefinition = function parseEnumValueDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n return {\n kind: Kind.ENUM_VALUE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * InputObjectTypeDefinition :\n * - Description? input Name Directives[Const]? InputFieldsDefinition?\n */\n ;\n\n _proto.parseInputObjectTypeDefinition = function parseInputObjectTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('input');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var fields = this.parseInputFieldsDefinition();\n return {\n kind: Kind.INPUT_OBJECT_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * InputFieldsDefinition : { InputValueDefinition+ }\n */\n ;\n\n _proto.parseInputFieldsDefinition = function parseInputFieldsDefinition() {\n return this.optionalMany(TokenKind.BRACE_L, this.parseInputValueDef, TokenKind.BRACE_R);\n }\n /**\n * TypeSystemExtension :\n * - SchemaExtension\n * - TypeExtension\n *\n * TypeExtension :\n * - ScalarTypeExtension\n * - ObjectTypeExtension\n * - InterfaceTypeExtension\n * - UnionTypeExtension\n * - EnumTypeExtension\n * - InputObjectTypeDefinition\n */\n ;\n\n _proto.parseTypeSystemExtension = function parseTypeSystemExtension() {\n var keywordToken = this._lexer.lookahead();\n\n if (keywordToken.kind === TokenKind.NAME) {\n switch (keywordToken.value) {\n case 'schema':\n return this.parseSchemaExtension();\n\n case 'scalar':\n return this.parseScalarTypeExtension();\n\n case 'type':\n return this.parseObjectTypeExtension();\n\n case 'interface':\n return this.parseInterfaceTypeExtension();\n\n case 'union':\n return this.parseUnionTypeExtension();\n\n case 'enum':\n return this.parseEnumTypeExtension();\n\n case 'input':\n return this.parseInputObjectTypeExtension();\n }\n }\n\n throw this.unexpected(keywordToken);\n }\n /**\n * SchemaExtension :\n * - extend schema Directives[Const]? { OperationTypeDefinition+ }\n * - extend schema Directives[Const]\n */\n ;\n\n _proto.parseSchemaExtension = function parseSchemaExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('schema');\n var directives = this.parseDirectives(true);\n var operationTypes = this.optionalMany(TokenKind.BRACE_L, this.parseOperationTypeDefinition, TokenKind.BRACE_R);\n\n if (directives.length === 0 && operationTypes.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.SCHEMA_EXTENSION,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n }\n /**\n * ScalarTypeExtension :\n * - extend scalar Name Directives[Const]\n */\n ;\n\n _proto.parseScalarTypeExtension = function parseScalarTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('scalar');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n\n if (directives.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.SCALAR_TYPE_EXTENSION,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ObjectTypeExtension :\n * - extend type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition\n * - extend type Name ImplementsInterfaces? Directives[Const]\n * - extend type Name ImplementsInterfaces\n */\n ;\n\n _proto.parseObjectTypeExtension = function parseObjectTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('type');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n\n if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.OBJECT_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * InterfaceTypeExtension :\n * - extend interface Name ImplementsInterfaces? Directives[Const]? FieldsDefinition\n * - extend interface Name ImplementsInterfaces? Directives[Const]\n * - extend interface Name ImplementsInterfaces\n */\n ;\n\n _proto.parseInterfaceTypeExtension = function parseInterfaceTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('interface');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n\n if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.INTERFACE_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * UnionTypeExtension :\n * - extend union Name Directives[Const]? UnionMemberTypes\n * - extend union Name Directives[Const]\n */\n ;\n\n _proto.parseUnionTypeExtension = function parseUnionTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('union');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var types = this.parseUnionMemberTypes();\n\n if (directives.length === 0 && types.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.UNION_TYPE_EXTENSION,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n }\n /**\n * EnumTypeExtension :\n * - extend enum Name Directives[Const]? EnumValuesDefinition\n * - extend enum Name Directives[Const]\n */\n ;\n\n _proto.parseEnumTypeExtension = function parseEnumTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('enum');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var values = this.parseEnumValuesDefinition();\n\n if (directives.length === 0 && values.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.ENUM_TYPE_EXTENSION,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n }\n /**\n * InputObjectTypeExtension :\n * - extend input Name Directives[Const]? InputFieldsDefinition\n * - extend input Name Directives[Const]\n */\n ;\n\n _proto.parseInputObjectTypeExtension = function parseInputObjectTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('input');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var fields = this.parseInputFieldsDefinition();\n\n if (directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: Kind.INPUT_OBJECT_TYPE_EXTENSION,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * DirectiveDefinition :\n * - Description? directive @ Name ArgumentsDefinition? `repeatable`? on DirectiveLocations\n */\n ;\n\n _proto.parseDirectiveDefinition = function parseDirectiveDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('directive');\n this.expectToken(TokenKind.AT);\n var name = this.parseName();\n var args = this.parseArgumentDefs();\n var repeatable = this.expectOptionalKeyword('repeatable');\n this.expectKeyword('on');\n var locations = this.parseDirectiveLocations();\n return {\n kind: Kind.DIRECTIVE_DEFINITION,\n description: description,\n name: name,\n arguments: args,\n repeatable: repeatable,\n locations: locations,\n loc: this.loc(start)\n };\n }\n /**\n * DirectiveLocations :\n * - `|`? DirectiveLocation\n * - DirectiveLocations | DirectiveLocation\n */\n ;\n\n _proto.parseDirectiveLocations = function parseDirectiveLocations() {\n return this.delimitedMany(TokenKind.PIPE, this.parseDirectiveLocation);\n }\n /*\n * DirectiveLocation :\n * - ExecutableDirectiveLocation\n * - TypeSystemDirectiveLocation\n *\n * ExecutableDirectiveLocation : one of\n * `QUERY`\n * `MUTATION`\n * `SUBSCRIPTION`\n * `FIELD`\n * `FRAGMENT_DEFINITION`\n * `FRAGMENT_SPREAD`\n * `INLINE_FRAGMENT`\n *\n * TypeSystemDirectiveLocation : one of\n * `SCHEMA`\n * `SCALAR`\n * `OBJECT`\n * `FIELD_DEFINITION`\n * `ARGUMENT_DEFINITION`\n * `INTERFACE`\n * `UNION`\n * `ENUM`\n * `ENUM_VALUE`\n * `INPUT_OBJECT`\n * `INPUT_FIELD_DEFINITION`\n */\n ;\n\n _proto.parseDirectiveLocation = function parseDirectiveLocation() {\n var start = this._lexer.token;\n var name = this.parseName();\n\n if (DirectiveLocation[name.value] !== undefined) {\n return name;\n }\n\n throw this.unexpected(start);\n } // Core parsing utility functions\n\n /**\n * Returns a location object, used to identify the place in the source that created a given parsed object.\n */\n ;\n\n _proto.loc = function loc(startToken) {\n var _this$_options4;\n\n if (((_this$_options4 = this._options) === null || _this$_options4 === void 0 ? void 0 : _this$_options4.noLocation) !== true) {\n return new Location(startToken, this._lexer.lastToken, this._lexer.source);\n }\n }\n /**\n * Determines if the next token is of a given kind\n */\n ;\n\n _proto.peek = function peek(kind) {\n return this._lexer.token.kind === kind;\n }\n /**\n * If the next token is of the given kind, return that token after advancing the lexer.\n * Otherwise, do not change the parser state and throw an error.\n */\n ;\n\n _proto.expectToken = function expectToken(kind) {\n var token = this._lexer.token;\n\n if (token.kind === kind) {\n this._lexer.advance();\n\n return token;\n }\n\n throw syntaxError(this._lexer.source, token.start, \"Expected \".concat(getTokenKindDesc(kind), \", found \").concat(getTokenDesc(token), \".\"));\n }\n /**\n * If the next token is of the given kind, return that token after advancing the lexer.\n * Otherwise, do not change the parser state and return undefined.\n */\n ;\n\n _proto.expectOptionalToken = function expectOptionalToken(kind) {\n var token = this._lexer.token;\n\n if (token.kind === kind) {\n this._lexer.advance();\n\n return token;\n }\n\n return undefined;\n }\n /**\n * If the next token is a given keyword, advance the lexer.\n * Otherwise, do not change the parser state and throw an error.\n */\n ;\n\n _proto.expectKeyword = function expectKeyword(value) {\n var token = this._lexer.token;\n\n if (token.kind === TokenKind.NAME && token.value === value) {\n this._lexer.advance();\n } else {\n throw syntaxError(this._lexer.source, token.start, \"Expected \\\"\".concat(value, \"\\\", found \").concat(getTokenDesc(token), \".\"));\n }\n }\n /**\n * If the next token is a given keyword, return \"true\" after advancing the lexer.\n * Otherwise, do not change the parser state and return \"false\".\n */\n ;\n\n _proto.expectOptionalKeyword = function expectOptionalKeyword(value) {\n var token = this._lexer.token;\n\n if (token.kind === TokenKind.NAME && token.value === value) {\n this._lexer.advance();\n\n return true;\n }\n\n return false;\n }\n /**\n * Helper function for creating an error when an unexpected lexed token is encountered.\n */\n ;\n\n _proto.unexpected = function unexpected(atToken) {\n var token = atToken !== null && atToken !== void 0 ? atToken : this._lexer.token;\n return syntaxError(this._lexer.source, token.start, \"Unexpected \".concat(getTokenDesc(token), \".\"));\n }\n /**\n * Returns a possibly empty list of parse nodes, determined by the parseFn.\n * This list begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.any = function any(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n\n while (!this.expectOptionalToken(closeKind)) {\n nodes.push(parseFn.call(this));\n }\n\n return nodes;\n }\n /**\n * Returns a list of parse nodes, determined by the parseFn.\n * It can be empty only if open token is missing otherwise it will always return non-empty list\n * that begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.optionalMany = function optionalMany(openKind, parseFn, closeKind) {\n if (this.expectOptionalToken(openKind)) {\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (!this.expectOptionalToken(closeKind));\n\n return nodes;\n }\n\n return [];\n }\n /**\n * Returns a non-empty list of parse nodes, determined by the parseFn.\n * This list begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.many = function many(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (!this.expectOptionalToken(closeKind));\n\n return nodes;\n }\n /**\n * Returns a non-empty list of parse nodes, determined by the parseFn.\n * This list may begin with a lex token of delimiterKind followed by items separated by lex tokens of tokenKind.\n * Advances the parser to the next lex token after last item in the list.\n */\n ;\n\n _proto.delimitedMany = function delimitedMany(delimiterKind, parseFn) {\n this.expectOptionalToken(delimiterKind);\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (this.expectOptionalToken(delimiterKind));\n\n return nodes;\n };\n\n return Parser;\n}();\n/**\n * A helper function to describe a token as a string for debugging.\n */\n\nfunction getTokenDesc(token) {\n var value = token.value;\n return getTokenKindDesc(token.kind) + (value != null ? \" \\\"\".concat(value, \"\\\"\") : '');\n}\n/**\n * A helper function to describe a token kind as a string for debugging.\n */\n\n\nfunction getTokenKindDesc(kind) {\n return isPunctuatorTokenKind(kind) ? \"\\\"\".concat(kind, \"\\\"\") : kind;\n}\n","// In ES2015 (or a polyfilled) environment, this will be Symbol.iterator\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\nexport var SYMBOL_ITERATOR = typeof Symbol === 'function' && Symbol.iterator != null ? Symbol.iterator : '@@iterator'; // In ES2017 (or a polyfilled) environment, this will be Symbol.asyncIterator\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nexport var SYMBOL_ASYNC_ITERATOR = typeof Symbol === 'function' && Symbol.asyncIterator != null ? Symbol.asyncIterator : '@@asyncIterator'; // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nexport var SYMBOL_TO_STRING_TAG = typeof Symbol === 'function' && Symbol.toStringTag != null ? Symbol.toStringTag : '@@toStringTag';\n","/**\n * The set of allowed kind values for AST nodes.\n */\nexport var Kind = Object.freeze({\n // Name\n NAME: 'Name',\n // Document\n DOCUMENT: 'Document',\n OPERATION_DEFINITION: 'OperationDefinition',\n VARIABLE_DEFINITION: 'VariableDefinition',\n SELECTION_SET: 'SelectionSet',\n FIELD: 'Field',\n ARGUMENT: 'Argument',\n // Fragments\n FRAGMENT_SPREAD: 'FragmentSpread',\n INLINE_FRAGMENT: 'InlineFragment',\n FRAGMENT_DEFINITION: 'FragmentDefinition',\n // Values\n VARIABLE: 'Variable',\n INT: 'IntValue',\n FLOAT: 'FloatValue',\n STRING: 'StringValue',\n BOOLEAN: 'BooleanValue',\n NULL: 'NullValue',\n ENUM: 'EnumValue',\n LIST: 'ListValue',\n OBJECT: 'ObjectValue',\n OBJECT_FIELD: 'ObjectField',\n // Directives\n DIRECTIVE: 'Directive',\n // Types\n NAMED_TYPE: 'NamedType',\n LIST_TYPE: 'ListType',\n NON_NULL_TYPE: 'NonNullType',\n // Type System Definitions\n SCHEMA_DEFINITION: 'SchemaDefinition',\n OPERATION_TYPE_DEFINITION: 'OperationTypeDefinition',\n // Type Definitions\n SCALAR_TYPE_DEFINITION: 'ScalarTypeDefinition',\n OBJECT_TYPE_DEFINITION: 'ObjectTypeDefinition',\n FIELD_DEFINITION: 'FieldDefinition',\n INPUT_VALUE_DEFINITION: 'InputValueDefinition',\n INTERFACE_TYPE_DEFINITION: 'InterfaceTypeDefinition',\n UNION_TYPE_DEFINITION: 'UnionTypeDefinition',\n ENUM_TYPE_DEFINITION: 'EnumTypeDefinition',\n ENUM_VALUE_DEFINITION: 'EnumValueDefinition',\n INPUT_OBJECT_TYPE_DEFINITION: 'InputObjectTypeDefinition',\n // Directive Definitions\n DIRECTIVE_DEFINITION: 'DirectiveDefinition',\n // Type System Extensions\n SCHEMA_EXTENSION: 'SchemaExtension',\n // Type Extensions\n SCALAR_TYPE_EXTENSION: 'ScalarTypeExtension',\n OBJECT_TYPE_EXTENSION: 'ObjectTypeExtension',\n INTERFACE_TYPE_EXTENSION: 'InterfaceTypeExtension',\n UNION_TYPE_EXTENSION: 'UnionTypeExtension',\n ENUM_TYPE_EXTENSION: 'EnumTypeExtension',\n INPUT_OBJECT_TYPE_EXTENSION: 'InputObjectTypeExtension'\n});\n/**\n * The enum type representing the possible kind values of AST nodes.\n */\n","/**\n * An exported enum describing the different kinds of tokens that the\n * lexer emits.\n */\nexport var TokenKind = Object.freeze({\n SOF: '',\n EOF: '',\n BANG: '!',\n DOLLAR: '$',\n AMP: '&',\n PAREN_L: '(',\n PAREN_R: ')',\n SPREAD: '...',\n COLON: ':',\n EQUALS: '=',\n AT: '@',\n BRACKET_L: '[',\n BRACKET_R: ']',\n BRACE_L: '{',\n PIPE: '|',\n BRACE_R: '}',\n NAME: 'Name',\n INT: 'Int',\n FLOAT: 'Float',\n STRING: 'String',\n BLOCK_STRING: 'BlockString',\n COMMENT: 'Comment'\n});\n/**\n * The enum type representing the token kinds values.\n */\n","/**\n * A replacement for instanceof which includes an error warning when multi-realm\n * constructors are detected.\n */\n// See: https://expressjs.com/en/advanced/best-practice-performance.html#set-node_env-to-production\n// See: https://webpack.js.org/guides/production/\nexport default process.env.NODE_ENV === 'production' ? // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n// eslint-disable-next-line no-shadow\nfunction instanceOf(value, constructor) {\n return value instanceof constructor;\n} : // eslint-disable-next-line no-shadow\nfunction instanceOf(value, constructor) {\n if (value instanceof constructor) {\n return true;\n }\n\n if (value) {\n var valueClass = value.constructor;\n var className = constructor.name;\n\n if (className && valueClass && valueClass.name === className) {\n throw new Error(\"Cannot use \".concat(className, \" \\\"\").concat(value, \"\\\" from another module or realm.\\n\\nEnsure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory. If different versions of \\\"graphql\\\" are the dependencies of other\\nrelied on modules, use \\\"resolutions\\\" to ensure only one version is installed.\\n\\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\\n\\nDuplicate \\\"graphql\\\" modules cannot be used at the same time since different\\nversions may have different capabilities and behavior. The data from one\\nversion used in the function from another could produce confusing and\\nspurious results.\"));\n }\n }\n\n return false;\n};\n","/**\n * The set of allowed directive location values.\n */\nexport var DirectiveLocation = Object.freeze({\n // Request Definitions\n QUERY: 'QUERY',\n MUTATION: 'MUTATION',\n SUBSCRIPTION: 'SUBSCRIPTION',\n FIELD: 'FIELD',\n FRAGMENT_DEFINITION: 'FRAGMENT_DEFINITION',\n FRAGMENT_SPREAD: 'FRAGMENT_SPREAD',\n INLINE_FRAGMENT: 'INLINE_FRAGMENT',\n VARIABLE_DEFINITION: 'VARIABLE_DEFINITION',\n // Type System Definitions\n SCHEMA: 'SCHEMA',\n SCALAR: 'SCALAR',\n OBJECT: 'OBJECT',\n FIELD_DEFINITION: 'FIELD_DEFINITION',\n ARGUMENT_DEFINITION: 'ARGUMENT_DEFINITION',\n INTERFACE: 'INTERFACE',\n UNION: 'UNION',\n ENUM: 'ENUM',\n ENUM_VALUE: 'ENUM_VALUE',\n INPUT_OBJECT: 'INPUT_OBJECT',\n INPUT_FIELD_DEFINITION: 'INPUT_FIELD_DEFINITION'\n});\n/**\n * The enum type representing the directive location values.\n */\n","//! moment.js locale configuration\n//! locale : Frisian [fy]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n\nimport moment from '../moment';\n\nvar monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split(\n '_'\n ),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split(\n '_'\n );\n\nexport default moment.defineLocale('fy', {\n months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n monthsParseExact: true,\n weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split(\n '_'\n ),\n weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'),\n weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[hjoed om] LT',\n nextDay: '[moarn om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[juster om] LT',\n lastWeek: '[ôfrûne] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oer %s',\n past: '%s lyn',\n s: 'in pear sekonden',\n ss: '%d sekonden',\n m: 'ien minút',\n mm: '%d minuten',\n h: 'ien oere',\n hh: '%d oeren',\n d: 'ien dei',\n dd: '%d dagen',\n M: 'ien moanne',\n MM: '%d moannen',\n y: 'ien jier',\n yy: '%d jierren',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import * as cookie from 'cookie';\r\nexport function hasDocumentCookie() {\r\n // Can we get/set cookies on document.cookie?\r\n return typeof document === 'object' && typeof document.cookie === 'string';\r\n}\r\nexport function cleanCookies() {\r\n document.cookie.split(';').forEach(function (c) {\r\n document.cookie = c\r\n .replace(/^ +/, '')\r\n .replace(/=.*/, '=;expires=' + new Date().toUTCString() + ';path=/');\r\n });\r\n}\r\nexport function parseCookies(cookies, options) {\r\n if (typeof cookies === 'string') {\r\n return cookie.parse(cookies, options);\r\n }\r\n else if (typeof cookies === 'object' && cookies !== null) {\r\n return cookies;\r\n }\r\n else {\r\n return {};\r\n }\r\n}\r\nexport function isParsingCookie(value, doNotParse) {\r\n if (typeof doNotParse === 'undefined') {\r\n // We guess if the cookie start with { or [, it has been serialized\r\n doNotParse =\r\n !value || (value[0] !== '{' && value[0] !== '[' && value[0] !== '\"');\r\n }\r\n return !doNotParse;\r\n}\r\nexport function readCookie(value, options) {\r\n if (options === void 0) { options = {}; }\r\n var cleanValue = cleanupCookieValue(value);\r\n if (isParsingCookie(cleanValue, options.doNotParse)) {\r\n try {\r\n return JSON.parse(cleanValue);\r\n }\r\n catch (e) {\r\n // At least we tried\r\n }\r\n }\r\n // Ignore clean value if we failed the deserialization\r\n // It is not relevant anymore to trim those values\r\n return value;\r\n}\r\nfunction cleanupCookieValue(value) {\r\n // express prepend j: before serializing a cookie\r\n if (value && value[0] === 'j' && value[1] === ':') {\r\n return value.substr(2);\r\n }\r\n return value;\r\n}\r\n","var __assign = (this && this.__assign) || function () {\r\n __assign = Object.assign || function(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))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\nimport * as cookie from 'cookie';\r\nimport { hasDocumentCookie, parseCookies, readCookie } from './utils';\r\nvar Cookies = /** @class */ (function () {\r\n function Cookies(cookies, options) {\r\n var _this = this;\r\n this.changeListeners = [];\r\n this.HAS_DOCUMENT_COOKIE = false;\r\n this.cookies = parseCookies(cookies, options);\r\n new Promise(function () {\r\n _this.HAS_DOCUMENT_COOKIE = hasDocumentCookie();\r\n }).catch(function () { });\r\n }\r\n Cookies.prototype._updateBrowserValues = function (parseOptions) {\r\n if (!this.HAS_DOCUMENT_COOKIE) {\r\n return;\r\n }\r\n this.cookies = cookie.parse(document.cookie, parseOptions);\r\n };\r\n Cookies.prototype._emitChange = function (params) {\r\n for (var i = 0; i < this.changeListeners.length; ++i) {\r\n this.changeListeners[i](params);\r\n }\r\n };\r\n Cookies.prototype.get = function (name, options, parseOptions) {\r\n if (options === void 0) { options = {}; }\r\n this._updateBrowserValues(parseOptions);\r\n return readCookie(this.cookies[name], options);\r\n };\r\n Cookies.prototype.getAll = function (options, parseOptions) {\r\n if (options === void 0) { options = {}; }\r\n this._updateBrowserValues(parseOptions);\r\n var result = {};\r\n for (var name_1 in this.cookies) {\r\n result[name_1] = readCookie(this.cookies[name_1], options);\r\n }\r\n return result;\r\n };\r\n Cookies.prototype.set = function (name, value, options) {\r\n var _a;\r\n if (typeof value === 'object') {\r\n value = JSON.stringify(value);\r\n }\r\n this.cookies = __assign(__assign({}, this.cookies), (_a = {}, _a[name] = value, _a));\r\n if (this.HAS_DOCUMENT_COOKIE) {\r\n document.cookie = cookie.serialize(name, value, options);\r\n }\r\n this._emitChange({ name: name, value: value, options: options });\r\n };\r\n Cookies.prototype.remove = function (name, options) {\r\n var finalOptions = (options = __assign(__assign({}, options), { expires: new Date(1970, 1, 1, 0, 0, 1), maxAge: 0 }));\r\n this.cookies = __assign({}, this.cookies);\r\n delete this.cookies[name];\r\n if (this.HAS_DOCUMENT_COOKIE) {\r\n document.cookie = cookie.serialize(name, '', finalOptions);\r\n }\r\n this._emitChange({ name: name, value: undefined, options: options });\r\n };\r\n Cookies.prototype.addChangeListener = function (callback) {\r\n this.changeListeners.push(callback);\r\n };\r\n Cookies.prototype.removeChangeListener = function (callback) {\r\n var idx = this.changeListeners.indexOf(callback);\r\n if (idx >= 0) {\r\n this.changeListeners.splice(idx, 1);\r\n }\r\n };\r\n return Cookies;\r\n}());\r\nexport default Cookies;\r\n","import Cookies from 'universal-cookie';\r\nexport default Cookies;\r\n","import { \r\n ApolloClient, \r\n NormalizedCacheObject, \r\n} from \"@apollo/client\";\r\n\r\nimport { \r\n LogLevel, \r\n} from \"@azure/msal-browser\";\r\n\r\nimport psl from 'psl';\r\n\r\nimport { \r\n Cookies, \r\n} from \"react-cookie\";\r\n\r\nimport root from 'window-or-global';\r\n\r\nconst authority = `https://${process.env.PREACT_APP_ADB2C_HOSTNAME}/${process.env.PREACT_APP_ADB2C_TENANT}`;\r\nconst signUpSignInAuthority = `${authority}/${process.env.PREACT_APP_ADB2C_SIGNUP_SIGNIN_POLICY}`;\r\nconst authorityDomain = process.env.PREACT_APP_ADB2C_HOSTNAME;\r\n\r\nexport const config = {\r\n b2cPolicies: {\r\n names: {\r\n signUpSignIn: process.env.PREACT_APP_ADB2C_SIGNUP_SIGNIN_POLICY\r\n },\r\n authorities: {\r\n signUpSignIn: {\r\n authority: signUpSignInAuthority,\r\n }\r\n },\r\n authorityDomain\r\n },\r\n msalConfig: {\r\n auth: {\r\n clientId: process.env.PREACT_APP_ADB2C_CLIENT_ID, // This is the ONLY mandatory field that you need to supply.\r\n authority: signUpSignInAuthority, // Use a sign-up/sign-in user-flow as a default authority\r\n knownAuthorities: [authorityDomain], // Mark your B2C tenant's domain as trusted.\r\n redirectUri: \"/\", // Points to window.location.origin. You must register this URI on Azure Portal/App Registration.\r\n postLogoutRedirectUri: \"/login\", // Indicates the page to navigate after logout.\r\n navigateToLoginRequestUrl: false, // If \"true\", will navigate back to the original request location before processing the auth code response.\r\n },\r\n cache: {\r\n cacheLocation: \"localStorage\", // Configures cache location. \"localStorage\" is more secure, but \"localStorage\" gives you SSO between tabs.\r\n storeAuthStateInCookie: true, // Set this to \"true\" if you are having issues on IE11 or Edge\r\n },\r\n system: {\t\r\n loggerOptions: {\t\r\n loggerCallback: (level, message, containsPii) => {\t\r\n if (containsPii) {\t\t\r\n return;\t\t\r\n }\t\t\r\n switch (level) {\t\t\r\n case LogLevel.Error:\t\t\r\n console.error(message);\t\t\r\n return;\t\t\r\n case LogLevel.Info:\t\t\r\n // console.info(message);\t\t\r\n return;\t\t\r\n case LogLevel.Verbose:\t\t\r\n // console.debug(message);\t\t\r\n return;\t\t\r\n case LogLevel.Warning:\t\t\r\n console.warn(message);\t\t\r\n return;\t\t\r\n }\t\r\n }\t\r\n }\t\r\n }\r\n }\r\n};\r\n\r\n/**\r\n * Scopes you add here will be prompted for user consent during sign-in.\r\n * By default, MSAL.js will add OIDC scopes (openid, profile, email) to any login request.\r\n * For more information about OIDC scopes, visit: \r\n * https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and-consent#openid-connect-scopes\r\n */\r\nexport const loginRequest = {\r\n scopes: []\r\n};\r\n\r\nexport const clearStoreAndCookies = async (client: ApolloClient) => {\r\n localStorage.clear();\r\n\r\n sessionStorage.clear();\r\n\r\n await client.clearStore();\r\n\r\n // Remove msal.interaction.status cookie to prevent interaction in progress issue\r\n const cookies = new Cookies();\r\n let interactionStatusCookie = cookies.get('msal.interaction.status');\r\n\r\n if (interactionStatusCookie) {\r\n const hostname = root.location.hostname;\r\n const parsed = psl.parse(hostname);\r\n const path = root.location.pathname;\r\n const domain = parsed.domain;\r\n\r\n cookies\r\n .remove(\r\n 'msal.interaction.status',\r\n {\r\n path,\r\n domain\r\n }\r\n );\r\n\r\n // Confirm if cookie is no longer available\r\n interactionStatusCookie = cookies.get('msal.interaction.status');\r\n\r\n if (interactionStatusCookie) {\r\n // In case cookie wasn't deleted properly, set expiration date to past\r\n root.document.cookie = 'msal.interaction.status= ; expires = Thu, 01 Jan 1970 00:00:00 GMT';\r\n\r\n root.location.reload();\r\n\r\n return;\r\n }\r\n }\r\n};","//! moment.js locale configuration\n//! locale : Malay [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ms', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","/*!\n * cookie\n * Copyright(c) 2012-2014 Roman Shtylman\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module exports.\n * @public\n */\n\nexports.parse = parse;\nexports.serialize = serialize;\n\n/**\n * Module variables.\n * @private\n */\n\nvar decode = decodeURIComponent;\nvar encode = encodeURIComponent;\nvar pairSplitRegExp = /; */;\n\n/**\n * RegExp to match field-content in RFC 7230 sec 3.2\n *\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n * obs-text = %x80-FF\n */\n\nvar fieldContentRegExp = /^[\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+$/;\n\n/**\n * Parse a cookie header.\n *\n * Parse the given cookie header string into an object\n * The object has the various cookies as keys(names) => values\n *\n * @param {string} str\n * @param {object} [options]\n * @return {object}\n * @public\n */\n\nfunction parse(str, options) {\n if (typeof str !== 'string') {\n throw new TypeError('argument str must be a string');\n }\n\n var obj = {}\n var opt = options || {};\n var pairs = str.split(pairSplitRegExp);\n var dec = opt.decode || decode;\n\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i];\n var eq_idx = pair.indexOf('=');\n\n // skip things that don't look like key=value\n if (eq_idx < 0) {\n continue;\n }\n\n var key = pair.substr(0, eq_idx).trim()\n var val = pair.substr(++eq_idx, pair.length).trim();\n\n // quoted values\n if ('\"' == val[0]) {\n val = val.slice(1, -1);\n }\n\n // only assign once\n if (undefined == obj[key]) {\n obj[key] = tryDecode(val, dec);\n }\n }\n\n return obj;\n}\n\n/**\n * Serialize data into a cookie header.\n *\n * Serialize the a name value pair into a cookie string suitable for\n * http headers. An optional options object specified cookie parameters.\n *\n * serialize('foo', 'bar', { httpOnly: true })\n * => \"foo=bar; httpOnly\"\n *\n * @param {string} name\n * @param {string} val\n * @param {object} [options]\n * @return {string}\n * @public\n */\n\nfunction serialize(name, val, options) {\n var opt = options || {};\n var enc = opt.encode || encode;\n\n if (typeof enc !== 'function') {\n throw new TypeError('option encode is invalid');\n }\n\n if (!fieldContentRegExp.test(name)) {\n throw new TypeError('argument name is invalid');\n }\n\n var value = enc(val);\n\n if (value && !fieldContentRegExp.test(value)) {\n throw new TypeError('argument val is invalid');\n }\n\n var str = name + '=' + value;\n\n if (null != opt.maxAge) {\n var maxAge = opt.maxAge - 0;\n\n if (isNaN(maxAge) || !isFinite(maxAge)) {\n throw new TypeError('option maxAge is invalid')\n }\n\n str += '; Max-Age=' + Math.floor(maxAge);\n }\n\n if (opt.domain) {\n if (!fieldContentRegExp.test(opt.domain)) {\n throw new TypeError('option domain is invalid');\n }\n\n str += '; Domain=' + opt.domain;\n }\n\n if (opt.path) {\n if (!fieldContentRegExp.test(opt.path)) {\n throw new TypeError('option path is invalid');\n }\n\n str += '; Path=' + opt.path;\n }\n\n if (opt.expires) {\n if (typeof opt.expires.toUTCString !== 'function') {\n throw new TypeError('option expires is invalid');\n }\n\n str += '; Expires=' + opt.expires.toUTCString();\n }\n\n if (opt.httpOnly) {\n str += '; HttpOnly';\n }\n\n if (opt.secure) {\n str += '; Secure';\n }\n\n if (opt.sameSite) {\n var sameSite = typeof opt.sameSite === 'string'\n ? opt.sameSite.toLowerCase() : opt.sameSite;\n\n switch (sameSite) {\n case true:\n str += '; SameSite=Strict';\n break;\n case 'lax':\n str += '; SameSite=Lax';\n break;\n case 'strict':\n str += '; SameSite=Strict';\n break;\n case 'none':\n str += '; SameSite=None';\n break;\n default:\n throw new TypeError('option sameSite is invalid');\n }\n }\n\n return str;\n}\n\n/**\n * Try decoding a string using a decoding function.\n *\n * @param {string} str\n * @param {function} decode\n * @private\n */\n\nfunction tryDecode(str, decode) {\n try {\n return decode(str);\n } catch (e) {\n return str;\n }\n}\n","import invariant from \"./invariant.mjs\";\nimport nodejsCustomInspectSymbol from \"./nodejsCustomInspectSymbol.mjs\";\n/**\n * The `defineInspect()` function defines `inspect()` prototype method as alias of `toJSON`\n */\n\nexport default function defineInspect(classObject) {\n var fn = classObject.prototype.toJSON;\n typeof fn === 'function' || invariant(0);\n classObject.prototype.inspect = fn; // istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\n if (nodejsCustomInspectSymbol) {\n classObject.prototype[nodejsCustomInspectSymbol] = fn;\n }\n}\n","import defineInspect from \"../jsutils/defineInspect.mjs\";\n\n/**\n * Contains a range of UTF-8 character offsets and token references that\n * identify the region of the source from which the AST derived.\n */\nexport var Location = /*#__PURE__*/function () {\n /**\n * The character offset at which this Node begins.\n */\n\n /**\n * The character offset at which this Node ends.\n */\n\n /**\n * The Token at which this Node begins.\n */\n\n /**\n * The Token at which this Node ends.\n */\n\n /**\n * The Source document the AST represents.\n */\n function Location(startToken, endToken, source) {\n this.start = startToken.start;\n this.end = endToken.end;\n this.startToken = startToken;\n this.endToken = endToken;\n this.source = source;\n }\n\n var _proto = Location.prototype;\n\n _proto.toJSON = function toJSON() {\n return {\n start: this.start,\n end: this.end\n };\n };\n\n return Location;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n\ndefineInspect(Location);\n/**\n * Represents a range of characters represented by a lexical token\n * within a Source.\n */\n\nexport var Token = /*#__PURE__*/function () {\n /**\n * The kind of Token.\n */\n\n /**\n * The character offset at which this Node begins.\n */\n\n /**\n * The character offset at which this Node ends.\n */\n\n /**\n * The 1-indexed line number on which this Token appears.\n */\n\n /**\n * The 1-indexed column number at which this Token begins.\n */\n\n /**\n * For non-punctuation tokens, represents the interpreted value of the token.\n */\n\n /**\n * Tokens exist as nodes in a double-linked-list amongst all tokens\n * including ignored tokens. is always the first node and \n * the last.\n */\n function Token(kind, start, end, line, column, prev, value) {\n this.kind = kind;\n this.start = start;\n this.end = end;\n this.line = line;\n this.column = column;\n this.value = value;\n this.prev = prev;\n this.next = null;\n }\n\n var _proto2 = Token.prototype;\n\n _proto2.toJSON = function toJSON() {\n return {\n kind: this.kind,\n value: this.value,\n line: this.line,\n column: this.column\n };\n };\n\n return Token;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n\ndefineInspect(Token);\n/**\n * @internal\n */\n\nexport function isNode(maybeNode) {\n return maybeNode != null && typeof maybeNode.kind === 'string';\n}\n/**\n * The list of all possible AST node types.\n */\n","//! moment.js locale configuration\n//! locale : French [fr]\n//! author : John Fischer : https://github.com/jfroffice\n\nimport moment from '../moment';\n\nvar monthsStrictRegex = /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsShortStrictRegex = /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?)/i,\n monthsRegex = /(janv\\.?|févr\\.?|mars|avr\\.?|mai|juin|juil\\.?|août|sept\\.?|oct\\.?|nov\\.?|déc\\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,\n monthsParse = [\n /^janv/i,\n /^févr/i,\n /^mars/i,\n /^avr/i,\n /^mai/i,\n /^juin/i,\n /^juil/i,\n /^août/i,\n /^sept/i,\n /^oct/i,\n /^nov/i,\n /^déc/i,\n ];\n\nexport default moment.defineLocale('fr', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort: 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: monthsStrictRegex,\n monthsShortStrictRegex: monthsShortStrictRegex,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n w: 'une semaine',\n ww: '%d semaines',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|)/,\n ordinal: function (number, period) {\n switch (period) {\n // TODO: Return 'e' when day of month > 1. Move this case inside\n // block for masculine words below.\n // See https://github.com/moment/moment/issues/3375\n case 'D':\n return number + (number === 1 ? 'er' : '');\n\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Konkani Devanagari script [gom-deva]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'],\n ss: [number + ' सॅकंडांनी', number + ' सॅकंड'],\n m: ['एका मिणटान', 'एक मिनूट'],\n mm: [number + ' मिणटांनी', number + ' मिणटां'],\n h: ['एका वरान', 'एक वर'],\n hh: [number + ' वरांनी', number + ' वरां'],\n d: ['एका दिसान', 'एक दीस'],\n dd: [number + ' दिसांनी', number + ' दीस'],\n M: ['एका म्हयन्यान', 'एक म्हयनो'],\n MM: [number + ' म्हयन्यानी', number + ' म्हयने'],\n y: ['एका वर्सान', 'एक वर्स'],\n yy: [number + ' वर्सांनी', number + ' वर्सां'],\n };\n return isFuture ? format[key][0] : format[key][1];\n}\n\nexport default moment.defineLocale('gom-deva', {\n months: {\n standalone: 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split(\n '_'\n ),\n format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort: 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'),\n weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'),\n weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [वाजतां]',\n LTS: 'A h:mm:ss [वाजतां]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [वाजतां]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]',\n llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]',\n },\n calendar: {\n sameDay: '[आयज] LT',\n nextDay: '[फाल्यां] LT',\n nextWeek: '[फुडलो] dddd[,] LT',\n lastDay: '[काल] LT',\n lastWeek: '[फाटलो] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s आदीं',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(वेर)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'वेर' only applies to day of the month\n case 'D':\n return number + 'वेर';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'राती') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'सकाळीं') {\n return hour;\n } else if (meridiem === 'दनपारां') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'सांजे') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'राती';\n } else if (hour < 12) {\n return 'सकाळीं';\n } else if (hour < 16) {\n return 'दनपारां';\n } else if (hour < 20) {\n return 'सांजे';\n } else {\n return 'राती';\n }\n },\n});\n","//! moment.js locale configuration\n//! locale : Konkani Latin script [gom-latn]\n//! author : The Discoverer : https://github.com/WikiDiscoverer\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['thoddea sekondamni', 'thodde sekond'],\n ss: [number + ' sekondamni', number + ' sekond'],\n m: ['eka mintan', 'ek minut'],\n mm: [number + ' mintamni', number + ' mintam'],\n h: ['eka voran', 'ek vor'],\n hh: [number + ' voramni', number + ' voram'],\n d: ['eka disan', 'ek dis'],\n dd: [number + ' disamni', number + ' dis'],\n M: ['eka mhoinean', 'ek mhoino'],\n MM: [number + ' mhoineamni', number + ' mhoine'],\n y: ['eka vorsan', 'ek voros'],\n yy: [number + ' vorsamni', number + ' vorsam'],\n };\n return isFuture ? format[key][0] : format[key][1];\n}\n\nexport default moment.defineLocale('gom-latn', {\n months: {\n standalone: 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split(\n '_'\n ),\n format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split(\n '_'\n ),\n isFormat: /MMMM(\\s)+D[oD]?/,\n },\n monthsShort: 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: \"Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var\".split('_'),\n weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'),\n weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'A h:mm [vazta]',\n LTS: 'A h:mm:ss [vazta]',\n L: 'DD-MM-YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY A h:mm [vazta]',\n LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]',\n llll: 'ddd, D MMM YYYY, A h:mm [vazta]',\n },\n calendar: {\n sameDay: '[Aiz] LT',\n nextDay: '[Faleam] LT',\n nextWeek: '[Fuddlo] dddd[,] LT',\n lastDay: '[Kal] LT',\n lastWeek: '[Fattlo] dddd[,] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s',\n past: '%s adim',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er)/,\n ordinal: function (number, period) {\n switch (period) {\n // the ordinal 'er' only applies to day of the month\n case 'D':\n return number + 'er';\n default:\n case 'M':\n case 'Q':\n case 'DDD':\n case 'd':\n case 'w':\n case 'W':\n return number;\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week\n doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4)\n },\n meridiemParse: /rati|sokallim|donparam|sanje/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'rati') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'sokallim') {\n return hour;\n } else if (meridiem === 'donparam') {\n return hour > 12 ? hour : hour + 12;\n } else if (meridiem === 'sanje') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'rati';\n } else if (hour < 12) {\n return 'sokallim';\n } else if (hour < 16) {\n return 'donparam';\n } else if (hour < 20) {\n return 'sanje';\n } else {\n return 'rati';\n }\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-login\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Sinhalese [si]\n//! author : Sampath Sitinamaluwa : https://github.com/sampathsris\n\nimport moment from '../moment';\n\n/*jshint -W100*/\nexport default moment.defineLocale('si', {\n months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split(\n '_'\n ),\n monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split(\n '_'\n ),\n weekdays: 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split(\n '_'\n ),\n weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),\n weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'a h:mm',\n LTS: 'a h:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY MMMM D',\n LLL: 'YYYY MMMM D, a h:mm',\n LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss',\n },\n calendar: {\n sameDay: '[අද] LT[ට]',\n nextDay: '[හෙට] LT[ට]',\n nextWeek: 'dddd LT[ට]',\n lastDay: '[ඊයේ] LT[ට]',\n lastWeek: '[පසුගිය] dddd LT[ට]',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%sකින්',\n past: '%sකට පෙර',\n s: 'තත්පර කිහිපය',\n ss: 'තත්පර %d',\n m: 'මිනිත්තුව',\n mm: 'මිනිත්තු %d',\n h: 'පැය',\n hh: 'පැය %d',\n d: 'දිනය',\n dd: 'දින %d',\n M: 'මාසය',\n MM: 'මාස %d',\n y: 'වසර',\n yy: 'වසර %d',\n },\n dayOfMonthOrdinalParse: /\\d{1,2} වැනි/,\n ordinal: function (number) {\n return number + ' වැනි';\n },\n meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,\n isPM: function (input) {\n return input === 'ප.ව.' || input === 'පස් වරු';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'ප.ව.' : 'පස් වරු';\n } else {\n return isLower ? 'පෙ.ව.' : 'පෙර වරු';\n }\n },\n});\n","export default {\r\n account: {\r\n accountNameError: 'Le nom du compte doit comporter au moins (1) caractère',\r\n accountAddressError: 'Vous devez entrer une adresse valide',\r\n accountCityError: 'Vous devez entrer un nom de ville valide',\r\n accountZipPostalError: 'Doit entrer un code postal valide',\r\n accountRegionError: \"Vous devez saisir une région valide\",\r\n accountList: { title: \"Liste des comptes\" },\r\n addNewReportingEmail: \"Ajouter un nouvel e-mail de rapport\",\r\n baitListWarning: \"Si vous ne voyez pas la liste des appâts de votre pays dans le menu déroulant ci-dessous, veuillez visiter le lien suivant pour l'ajouter.\",\r\n createNewAccount: \"Créer un nouveau compte\",\r\n newAccount: \"Nouveau compte\",\r\n createAccount: \"Créer un compte\",\r\n disableAccount: \"Désactiver le compte\",\r\n enableAccount: \"Activer le compte\",\r\n editAccount: \"Modifier le compte\",\r\n editAccountWarningMessage: \"Êtes-vous sûr de vouloir mettre à jour l'adhésion à la branche du compte : {{accountName}} ? La mise à jour de l'adhésion à la succursale à ce moment peut entraîner la perte de toutes les données de visite en attente. Pour garantir la sécurité des données, veuillez confirmer qu'il n'y a pas de visites en attente avec les utilisateurs suivants : {{users}}\",\r\n editAccountWarningMessageNoUser: \"Voulez-vous vraiment mettre à jour l'adhésion à la branche du compte : {{accountName}} ? Pour assurer la sécurité des données, veuillez confirmer qu'il n'y a pas de visites en attente\",\r\n eventsMap: \"Carte des Evénements\",\r\n heatMap: \"Carte de Chaleur\",\r\n accountInfo: \"Informations de compte\",\r\n accountSpecifications: \"Spécifications du compte\",\r\n clientContactInfo: \"Coordonnées du client\",\r\n devicesWithEvents: \"Appareils avec événements\",\r\n devicesWithoutEvents: \"Périphériques sans événements\",\r\n proofOfService: \"Preuve de service\",\r\n selectProofOfService: \"Sélectionnez une preuve de service\",\r\n customizeServiceReport: \"Personnaliser le rapport de service\",\r\n serviceFrequency: \"Fréquence d'entretien\",\r\n serviceRules: \"Règles de service\",\r\n serviceRulesInfo:\r\n \"Ces règles déterminent les exigences d'inspection pour un type d'appareil sur un compte. Par exemple, les inspections de tous les appareils Ambush sur le « Compte 1 » peuvent être configurées pour être effectuées uniquement lorsque l'appareil enregistre l'activité, ou peuvent être rendues obligatoires pour chaque visite.\",\r\n size: \"Taille (pi carré)\",\r\n sizeMetric: \"Taille (mètres carrés)\",\r\n industryClassification: \"Industrie/Classification\",\r\n accountLocation: \"Emplacement du compte\",\r\n deviceInspectionDetail: \"Détails de l'inspection de l'appareil\",\r\n deviceInspectionSummary: \"Résumé de l'inspection de l'appareil\",\r\n generalCommentsInstructions: \"Commentaires/Instructions Générales\",\r\n productApplicationDetail: \"Détails de l'application du produit\",\r\n productApplicationSummary: \"Résumé de l'application du produit\",\r\n serviceDetail: \"Détail du service\",\r\n floorPlan: \"Plan d'étage\",\r\n deleteFloorPlan: \"Supprimer l'image\",\r\n rotateFloorPlan: \"Tourner à droite\",\r\n updateFloorPlan: \"Mettre à jour le plan d'étage\",\r\n reportingEmails: \"Signaler des e-mails\",\r\n reportingEmailNote: \"Les adresses e-mail répertoriées ci-dessus recevront un e-mail de notification chaque fois qu'une visite de service est téléchargée.\",\r\n scheduledVisits: \"Visites programmées\",\r\n confirmDisableTitle: \"Êtes-vous sûr de vouloir désactiver ce compte\",\r\n confirmDisableMessage:\r\n \"Les comptes désactivés ne peuvent pas être téléchargés sur votre appareil mobile ou affichés à partir du tableau de bord de votre organisation. Cependant, toutes les visites de compte existantes peuvent toujours être terminées et publiées sur le portail de votre organisation.\",\r\n confirmReactivateBranchTitle: \"Réactiver la branche\",\r\n confirmReactivateBranchMessage: \"La succursale de ce compte est désactivée et doit être réactivée pour continuer, consultez la page des détails de la succursale ou la liste des succursales\",\r\n visitsThisYear: \"Visites cette année\",\r\n manageAccounts: \"Gérer les Comptes\",\r\n serviceRuleOptions: {\r\n baitingRules: \"Règles d'appâtage\",\r\n days: \"Jours\",\r\n deviceRules: \"Règles de l'appareil\",\r\n trappingRules: \"Règles de piégeage\",\r\n visualInspection: \"Inspection visuelle\",\r\n replaceBait: \"Remplacer l'appât\",\r\n bait: {\r\n definedDays: \"Remplacer tous les jours\",\r\n withActivity: \"Remplacer selon les besoins\",\r\n },\r\n device: {\r\n definedDays: \"Tous les _ jours\",\r\n everyVisit: \"Chaque visite\",\r\n everyOtherVisit: \"Toutes les autres visites\",\r\n withActivity: \"Avec tout événement\",\r\n },\r\n trap: {\r\n definedDays: \"Remplacer l'attracteur tous les _ jours\",\r\n everyVisit: \"Inspection de toutes les visites\",\r\n everyOtherVisit: \"Inspection de toutes les autres visites\",\r\n withActivity: \"Avec tout événement\",\r\n },\r\n },\r\n serviceRulesApplyToModels: \"Les règles de service s'appliquent aux modèles suivants\",\r\n },\r\n baitType: {\r\n activeIngredientPercentage: \"Pourcentage d'ingrédient actif\",\r\n addRodenticideToCompare: \"Ajouter un rodenticide pour comparer\",\r\n baitApplied: \"Appât appliqué\",\r\n baitMaterial: \"Matériel d'appât\",\r\n baitTypeName: \"Nom du type d'appât\",\r\n confirmDisableTitle: \"Voulez-vous vraiment désactiver ce type d'appât?\",\r\n confirmDisableMessage: \"Les types d'appâts inactifs ne seront pas disponibles sur l'application.\",\r\n confirmEnableTitle: \"Voulez-vous vraiment activer ce type d'appât?\",\r\n confirmEnableMessage: \"Les types d'appâts actifs seront disponibles sur l'application.\",\r\n contactSales: \"Contacter le service commercial\",\r\n editBaitType: \"Modifier le type d'appât\",\r\n errorInvalidBaitType: \"ID de type d'appât non valide.\",\r\n epaNumber: \"EPA #\",\r\n grams: \"Grammes (g)\",\r\n productLineUp: \"Gamme de Produits\",\r\n rodenticideList: \"Liste des Rodenticides\",\r\n rodenticideDescription: {\r\n contrac: \"Acceptation exceptionnelle des rongeurs\",\r\n final: \"Appât extrudé au Brodifacoum\",\r\n detex: \"Appât de surveillance et de suivi non toxique\",\r\n ditrac: \"Blox extrudé avec diphacinone\",\r\n fastrac: \"Notre Blox rodenticide à action la plus rapide\",\r\n formus: \"15g Bordifacoum BLOX contrôle souris\",\r\n liquaTox: \"Appât liquide soluble dans l'eau\",\r\n pcq: \"Appât de terrier pour campagnols et plus\",\r\n terad3: \"Formule Premier avec Vitamine D3\",\r\n zp: \"Tue les rats, les souris et les spermophiles\",\r\n },\r\n form: \"Forme\",\r\n inputNumberAsPercentage: \"Entrer le nombre en pourcentage, par exemple 0,1\",\r\n manageBaitList: \"Gérer la liste d'appâts\",\r\n manageBaitTypes: \"Gérer les types d'appâts\",\r\n newBaitType: \"Nouveau type d'appât\",\r\n pieceSize: \"Taille de la pièce\",\r\n provider: \"Fournisseur\",\r\n quantityApplied: \"Quantité appliquée\",\r\n selectRodenticide: \"Sélectionnez Rodenticide\",\r\n },\r\n branch: {\r\n newBranch: \"Nouvelle branche\",\r\n manageBranches: \"Gérer les succursales\",\r\n branchList: { \r\n title: \"Liste des succursales\", \r\n },\r\n createNewBranch: \"Créer une nouvelle branche\",\r\n branchInfo: \"Informations sur la succursale\",\r\n branchAddress: \"Adresse de la succursale\",\r\n branchLogo: \"Logo de la succursale\",\r\n editBranch: \"Modifier la branche\",\r\n disableBranch: \"Désactiver la branche\",\r\n enableBranch: \"Activer la branche\",\r\n branchesLocation: \"Emplacement des succursales\",\r\n confirmDisableTitle: \"Voulez-vous vraiment désactiver cette branche?\",\r\n confirmEnableTitle: \"Voulez-vous vraiment activer cette branche?\",\r\n confirmDisableMessage:\r\n \"Les comptes appartenant aux succursales désactivées ne peuvent pas être téléchargés sur votre appareil mobile ou affichés à partir du tableau de bord de votre organisation. Cependant, toutes les visites de compte existantes peuvent toujours être terminées et publiées sur le portail de votre organisation.\",\r\n confirmEnableMessage: \"Les comptes appartenant à cette succursale doivent être activés manuellement, voir la liste des comptes de succursale.\",\r\n },\r\n cardTable: { \r\n searchBar: \"Barre de recherche...\" \r\n },\r\n changePassword: {\r\n title: \"Changer le mot de passe\",\r\n currentPassword: \"Mot de passe actuel\",\r\n },\r\n device: {\r\n manageDevices: \"Gérer les appareils\",\r\n deviceDetails: \"Détails de l'appareil\",\r\n deviceName: \"Nom de l'appareil\",\r\n deviceNameTooltip: \"Filtrer les captures par nom de périphérique\",\r\n deviceTypeTooltip: \"Filtrer les captures par type de périphérique\",\r\n deviceInformation: \"Informations sur l'appareil\",\r\n disableDevice: \"Désactiver l'appareil\",\r\n editDevice: \"Modifier l'appareil\",\r\n enableDevice: \"Activer l'appareil\",\r\n eventFrequency: \"Fréquence de l'événement\",\r\n lookup: \"Recherche de périphérique\",\r\n lookupHelperText:\r\n \"Veuillez introduire le numéro de série pour obtenir les détails de l'appareil\",\r\n lastServiced: \"Dernière révision\",\r\n lifetimeEvents: \"Événements à vie\",\r\n lifetimeEventsTooltip: \"Nombre d'événements sur la durée de vie de l'appareil\",\r\n deviceTypeBreakdown: \"Répartition des types d'appareils\",\r\n deviceLocation: \"Emplacement de l'appareil\",\r\n deviceMapInfo: \"Pendant les services de technicien, des autorisations de localisation mobile sont nécessaires pour obtenir les coordonnées de cette carte !\",\r\n deviceSerial: \"Série de l'appareil\",\r\n serialNumber: \"Numéro de série\",\r\n temperature: \"Température\",\r\n highTemp: \"Haute Temp.\",\r\n mediumTemp: \"Moyenne Temp.\",\r\n lowTemp: \"Basse Temp.\",\r\n deviceType: \"Type d'appareil\",\r\n confirmDisableTitle: \"Êtes-vous sûr de vouloir désactiver cet appareil ?\",\r\n confirmDisableMessage:\r\n \"Les appareils inactifs ne seront pas disponibles sur l'application.\",\r\n weeklyTooltip: \"Cliquez pour sélectionner des plages de dates hebdomadaires\",\r\n fullRangeTooltip: \"Cliquez pour voir l'historique complet des événements\",\r\n deviceList: {\r\n title: \"Liste des périphériques\",\r\n accountEvents: \"Événements dans le compte\",\r\n currentAccountCaptures: \"Captures de compte actuel\",\r\n currentAccountCapturesTooltip: \"Nombre de captures depuis que l'appareil a rejoint le compte actuel\",\r\n currentAccountEvents: \"Événements du compte actuel\",\r\n currentAccountTooltip: \"Nombre d'événements depuis que l'appareil a rejoint le compte actuel\",\r\n battery: \"La batterie\",\r\n good: \"Bien\",\r\n medium: \"Moyen\",\r\n bad: \"Mal\",\r\n ready: \"Prêt\",\r\n replace: \"Remplacer\",\r\n },\r\n deviceLookupResults: {\r\n title: \"Résultats de la recherche de périphérique\",\r\n firmwareVersion: \"Version du firmware\",\r\n hardwareVersion: \"Version matérielle\",\r\n },\r\n deviceServiceHistory: { title: \"Historique des services de l'appareil\" },\r\n deviceStatusLog: {\r\n title: \"Journal d'état de l'appareil\",\r\n viewedTime: \"Temps de visionnage\",\r\n },\r\n sensorTemperature: {\r\n title: \"Température du capteur\",\r\n averageTemp: \"Température moyenne.\",\r\n },\r\n totalActiveDevices: \"Nombre total d'appareils actifs\",\r\n\ttRex: \"T-Rex\",\r\n },\r\n forgotPassword: {\r\n title: \"Mot de passe oublié?\",\r\n helperText:\r\n \"Si vous oubliez votre mot de passe, veuillez saisir votre adresse e-mail ci-dessous pour recevoir par e-mail un lien de réinitialisation\",\r\n reset: \"Réinitialiser\",\r\n resetPassword: \"réinitialiser le mot de passe\",\r\n iRememberNow: \"Oh! Je m'en souviens maintenant.\",\r\n },\r\n home: {\r\n editDetails: {\r\n organizationInfo: \"Informations sur l'organisation\",\r\n content: \"Des détails\",\r\n companyName: \"Nom de la compagnie\",\r\n },\r\n },\r\n hierarchyExplanation: {\r\n metaphor: \"Métaphore\",\r\n tree: \"Arbre\",\r\n treeBranch: \"Branche d'arbre\",\r\n fruit: \"Fruit\",\r\n seeds: \"Des graines\",\r\n example: \"Exemple\",\r\n organizationExplain: \"C'est un terme pour l'entreprise dans son ensemble. Lors de l'inscription initiale, c'est ce qui est créé. Une organisation est requise avant la création de succursales, de comptes et d'utilisateurs.\",\r\n branchExplain: \"L'organisation peut être séparée en succursales, pour permettre un contrôle plus approfondi des opérations et des méthodes de paiement.\",\r\n siteExplain: \"Peut aussi être appelé 'site', c'est ainsi que nous appelons nos clients. Des comptes peuvent être créés au sein d'une succursale, et cette succursale aurait alors un contrôle direct sur leurs opérations.\",\r\n deviceExplain: \"Une autre façon de désigner nos pièges. Plus précisément, les capteurs de nos pièges.\"\r\n },\r\n login: {\r\n hello: \"Bonjour!\",\r\n logIntoYourAccount: \"Connectez-vous à votre compte\",\r\n emailAddress: \"Adresse e-mail\",\r\n rememberMe: \"Souviens-toi de moi\",\r\n forgotPassword: \"Mot de passe oublié?\",\r\n logIn: \"Connexion\",\r\n dontHaveAnAccount: \"Vous n'avez pas de compte ?\",\r\n register: \"S'inscrire\",\r\n },\r\n loraWan: {\r\n acknowledgePackage: \"Reconnaître le paquet\",\r\n applicationNetwork: \"Réseau d'applications\",\r\n applicationNetworks: \"Application Networks\",\r\n applicationNetworkChangeText: \"You are about to change your Application Network. All devices within your {{2}} were found in {{0}} and will be moved into {{1}}.\",\r\n applicationNetworkChangeDevicesText: \"You are about to change your Application Network. All devices within your {{3}} were found in {{0}} and will be moved into {{1}}. {{2}} Devices were not found in {{0}}, they will also be transferred but might not work as expected.\",\r\n applicationNetworkChangeNoCheckText: \"You are about to change your Application Network. All devices within your {{1}} will be moved into {{0}}.
A report will be emailed to you once this process is complete.
Warning: Some devices might not be moved properly..\",\r\n applicationNetworkLookup: \"Application Network Lookup\",\r\n applicationNetworkName: \"Application Network Name\",\r\n applicationNetworkSetText: \"You are about to set up your Application Network. All devices within your {{1}} will belong to {{0}}\",\r\n applicationNetworkText: \"Please select an available \\\"Application Network\\\" for your organization or create a new one\",\r\n applicationNetworkText2: \"You can modify your preferred networks list by adding and removing items from your LENS application list.\",\r\n applied: \"Applied\",\r\n appliedApplicationNetwork: \"Applied Application Network:\",\r\n autoEnableLoraWanHierarchyOrganization: \"Activer automatiquement LoRaWAN dans toutes les succursales et tous les comptes\",\r\n autoEnableLoraWanHierarchyBranch: \"Activer automatiquement LoRaWAN sur tous les comptes de cette branche\",\r\n batteryPercentage: \"Pourcentage de batterie\",\r\n confirmDisableRemoteMonitoringOrganization: \"Are you sure you want to disable Remote Monitoring?\",\r\n confirmDisableRemoteMonitoringOrganizationText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n confirmDisableRemoteMonitoringOrganizationNoLensText: \"This will disable all Remote Monitoring features within your organization.\",\r\n confirmLensAccountSwapText: \"It seems that you are trying to connect to a LENS account belonging to a different organization. To connect, please remove any existing Remote Monitoring Traps from all your accounts then try again.\",\r\n confirmLensLogout: \"Are you sure you want to Logout from LENS?\",\r\n confirmLensLogoutText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n connect: \"Connect\",\r\n customConfigurationsFound: \"Paramètres personnalisés trouvés\",\r\n customConfigurationsBranchesAndSitesFoundText: \"There are {{branches}} Branches and {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n customConfigurationsSitesFoundText: \"There are {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n dataPackageOrigin: \"Origine du paquet de données\",\r\n devEui: \"DevEUI\",\r\n devEuiInfoTitle: \"DevEUI - (Format Excel et CSV)\",\r\n deviceSummaryRemoteMonitor: \"Résumé de l'appareil (moniteur à distance)\",\r\n disabled: \"Desactivé\",\r\n disableRemoteMonitoring: \"Désactiver la surveillance à distance\",\r\n enabled: \"Activé\",\r\n enableRemoteMonitoring: \"Activer la surveillance à distance\",\r\n eventNotificationThreshold: \"Event Notification Threshold\",\r\n failedLoraJoinAttempts: \"Échec des tentatives d'adhésion à LoRa\",\r\n formatCells: \"Formater les cellules\",\r\n formatCellsItem1: \"Cliquez avec le bouton droit sur l'en-tête de colonne, sélectionnez Formater les cellules\",\r\n formatCellsItem2: \"Choisissez Personnalisé et dans Type écrivez 16 zéros : \\\"0000000000000000\\\"\",\r\n formatCellsItem3: \"Cliquez sur le bouton \\\"OK\\\" pour confirmer les modifications\",\r\n fullList: \"Full List\",\r\n heartBeatTime: \"Temps de battement de coeur\",\r\n\tinvalid: \"Invalide\",\r\n\tjoinDelay: \"Join Delay\",\r\n keepCustom: \"Garder la coutume\",\r\n lastPackageReceived: \"Dernier colis reçu\",\r\n lensLogout: \"LENS Logout\",\r\n linkedLensAccount: \"Compte LENS lié\",\r\n loraDataRate: \"Taux de données LoRa\",\r\n loraJoinAttempts: \"Tentatives d'adhésion à LoRa\",\r\n loraJoinStatus: \"Statut d'adhésion à LoRa\",\r\n loraPowerLevel: \"Niveau de puissance LoRa\",\r\n loraSNRMinimum: \"LoRa SNR Minimum\",\r\n loraSNRMaximum: \"LoRa SNR Maximum\",\r\n loraSubChannelPlan: \"Plan de sous-canal LoRa\",\r\n loraWan: \"LoRaWan\",\r\n loraWanModeDevice: \"Mode LoRaWan (Appareil)\",\r\n loraWanNetwork: \"Réseau LoRaWan\",\r\n loraWanNetworkAccount: \"Réseau LoRaWan (Compte)\",\r\n loraWanNetworkBranch: \"Réseau LoRaWan (Succursale)\",\r\n loraWanNetworkOrganization: \"Réseau LoRaWan (Organisme)\",\r\n loraWanNetworkTrap: \"Réseau LoRaWan (Piège)\",\r\n loraWanInformation: \"Informations LoRaWan\",\r\n loraWanDataPackage: \"Paquet de données LoRaWan\",\r\n loraWanEnabledBranchText: \"La surveillance à distance sera activée/désactivée pour tous les comptes de cette succursale.\",\r\n loraWanEnabledOrganizationText: \"La surveillance à distance sera activée/désactivée pour toutes les succursales et tous les comptes de cette organisation.\",\r\n loraWanEnabledSiteText: \"La surveillance à distance sera activée/désactivée pour ce compte uniquement.\",\r\n loraWanHealth: \"LoRaWan Santé\",\r\n loraWanSignal: \"Signal LoRaWan\",\r\n loraWanSignalTrap: \"Signal LoRaWan (Piège)\",\r\n loraWanStatus: \"Statut LoRaWan\",\r\n loraWanRegion: \"Région LoRaWan\",\r\n\tnetworkDelay: \"Network Delay\",\r\n networkName: \"Network Name\",\r\n newNetwork: \"New Network\",\r\n noApplicationNetworkApplied: \"No application network applied, please select one to continue.\",\r\n noNetwork: \"Pas de réseau\",\r\n\tnoSignal: \"Pas de signal\",\r\n numberOfRetries: \"Nombre de tentatives\",\r\n optional: \"Optional\",\r\n organizationBranchesAndAccounts: \"Organization, Branches and Accounts\",\r\n organizationOnly: \"Organization Only\",\r\n overwrite: \"Écraser\",\r\n packageAcknowledge: \"Confirmation de colis\",\r\n preferredNetworks: \"Preferred Networks\",\r\n remoteMonitor: \"Moniteur à distance\",\r\n remoteMonitorAccount: \"Moniteur à distance (Compte)\",\r\n remoteMonitorBranch: \"Moniteur à distance (Succursale)\",\r\n remoteMonitorLastPackage: \"Moniteur à distance (Last Package)\",\r\n remoteMonitorLoraWan: \"Moniteur à distance (LoRaWan)\",\r\n remoteMonitorOrganization: \"Moniteur à distance (Organisme)\",\r\n remove: \"Remove\",\r\n retrySentPackage: \"Réessayer le paquet envoyé\",\r\n ribbonShortcuts: \"Raccourcis du ruban\",\r\n ribbonShortcutsItem1: \"Cliquez avec le bouton droit sur l'en-tête de colonne, sélectionnez Formater les cellules\",\r\n ribbonShortcutsItem2: \"Choisissez Personnalisé et dans Type écrivez 16 zéros : \\\"0000000000000000\\\"\",\r\n ribbonShortcutsItem3: \"Cliquez sur le bouton \\\"OK\\\" pour confirmer les modifications\",\r\n scientificNotation: \"Notation scientifique\",\r\n scientificNotationText: \"Lorsque le fichier Excel ou CSV est téléchargé, certaines des lectures DevEUI seront affichées en notation scientifique par défaut \\\"8e+13\\\". Si vous avez un nombre de plus de 12 chiffres dans une feuille de calcul Excel, il corrige automatiquement le nombre en notation scientifique pour plus de concision.\",\r\n selected: \"Selected\",\r\n solution: \"Solution\",\r\n strong: \"Fort\",\r\n successfulLoraJoinAttempts: \"Tentatives d'adhésion LoRa réussies\",\r\n supportImage: \"Image de soutien\",\r\n swap: \"Swap\",\r\n swapLensAccount: \"Swap LENS Account\",\r\n totalLoraPayloadsFailed: \"Le total des charges utiles LoRa a échoué\",\r\n totalLoraPayloadsSent: \"Total des charges utiles LoRa envoyées\",\r\n transmissionFrequency: \"Transmission Frequency\",\r\n unableToConnect: \"Unable To Connect\",\r\n unapplied: \"Unapplied\",\r\n unselected: \"Unselected\",\r\n updateNetwork: \"Update Network\",\r\n updateSettings: \"Update Settings\",\r\n usingFormatCellsPopUp: \"Utilisation de la fenêtre contextuelle Formater les cellules\",\r\n usingRibbonShortcuts: \"Utilisation des raccourcis du ruban\",\r\n weak: \"Faible\",\r\n willBeUpdatedTo: \"will be updated to:\",\r\n },\r\n manageAdminAccount: {\r\n manageAdminAccount: \"Gérer le compte administrateur\",\r\n adminOverview: {\r\n scheduledPayment: \"Paiement programmé\",\r\n nextPaymentScheduledFor: \"Le prochain paiement est prévu pour\",\r\n noScheduledPayments: \"Vous n'avez aucun paiement programmé!\",\r\n paymentsPhaseOutNotice: \"À compter du 22 octobre 2022, nous supprimerons progressivement les paiements.\",\r\n },\r\n billingHistory: {\r\n selectYear: \"Sélectionnez l'année\",\r\n moneySpentThisMonth: \"Argent dépensé ce mois-ci\",\r\n },\r\n manageSubscription: {\r\n billing: \"Facturation\",\r\n billingFrequency: \"Fréquence de facturation\",\r\n billingMethod: \"Méthode de facturation\",\r\n cancelSubscription: \"Annuler l'abonnement\",\r\n confirmCancelSubscriptionMessage:\r\n \"Vous êtes actuellement connecté en tant que . Si ce n'est pas le compte Bell Sensing qui a votre abonnement, passez au bon.\",\r\n confirmCancelSubscriptionMessage2:\r\n \"Les abonnements à Bell Sensing se renouvellent automatiquement, sauf si vous vous désabonnez.\",\r\n pleaseReadBeforeProceeding: \"Veuillez lire avant de continuer\",\r\n title: \"Gérer l'abonnement\",\r\n receipts: {\r\n title: \"Reçus\",\r\n type: \"Genre\",\r\n unit: \"Unité\",\r\n amount: \"Montante\",\r\n receipt: \"Reçu\",\r\n },\r\n subscription: \"Abonnement\",\r\n totalAmount: \"Montant total\",\r\n activeBillableUsers: \"Utilisateurs facturables actifs\",\r\n activeLicenses: \"Licences actives\",\r\n pendingLicenses: \"Licences en attente\",\r\n },\r\n paymentMethod: {\r\n method: 'Méthode',\r\n payment: 'Paiement',\r\n paymentMethod: \"Mode de paiement\",\r\n currentPaymentMethod: \"Mode de paiement actuel\",\r\n nameOnCard: \"Nom sur la carte\",\r\n cardNumber: \"Numéro de carte\",\r\n expiresOnMMYY: \"Expire le (MMAA)\",\r\n cvv: \"CVV\",\r\n helperText:\r\n \"Les types de cartes acceptées varient selon l'emplacement et le produit. Nous vous encourageons fortement à maintenir à jour toutes les informations de contact et de facturation.\",\r\n lastModified: \"Dernière modification\",\r\n typeOfCard: \"Type de carte\",\r\n billingInformation: \"Détails de facturation\",\r\n balanceTrend: \"Tendance de l'équilibre\"\r\n },\r\n },\r\n mostActiveUser: {\r\n title: \"Utilisateur le plus actif\",\r\n name: \"Nom\",\r\n lastReported: \"Dernier rapport\",\r\n noOfVisits: \"Nombre de visites\",\r\n },\r\n navigation: {\r\n clickHere: \"Cliquez ici\",\r\n contactSupport: \"Contactez le support\",\r\n generalSettings: \"Réglages Généraux\",\r\n home: \"Domicile\",\r\n manageAccount: \"Gérer son compte\",\r\n reports: \"Rapports\",\r\n subject: \"Matière\",\r\n yourEmailAddress: \"Votre adresse email\",\r\n },\r\n remoteMonitor: {\r\n latestGatewayReadings: \"Dernières lectures de la passerelle\",\r\n latestServiceReadings: \"Dernières lectures de service\",\r\n },\r\n recentActivities: {\r\n title: \"Activités récentes\",\r\n time: \"Temps\",\r\n description: \"La description\",\r\n reported: \"Signalé\",\r\n details: \"Des détails\",\r\n },\r\n register: {\r\n createAccountTitle: \"Créez votre premier compte\",\r\n createAccountText: \"Pour commencer à utiliser nos services et ajouter des appareils à un emplacement, vous devez créer votre premier compte.\",\r\n createCustomAccount: \"Créer un compte personnalisé\",\r\n createDefaultAccount: \"Créer un compte par défaut\",\r\n addDetailsText: \"Vous pourrez modifier et ajouter des détails à votre compte une fois connecté.\",\r\n passwordRequirements: \"Exigences de mot de passe\",\r\n termsAndConditions: \"Termes et conditions\",\r\n passwordNumberRequired: \"Doit avoir un chiffre numérique ('0'-'9')\",\r\n passwordLowercaseRequired:\r\n \"Doit avoir au moins une lettre minuscule ('a'-'z')\",\r\n passwordUppercaseRequired:\r\n \"Doit avoir au moins une lettre majuscule ('A'-'Z')\",\r\n passwordMinimumLength: \"Doit être au moins composé de 8 caractères.\",\r\n confirmPasswordMismatch:\r\n \"Le mot de passe et le mot de passe de confirmation ne correspondent pas.\",\r\n serviceProviders: \"Les fournisseurs de services\",\r\n selectDefault: \"Veuillez sélectionner l'une des options suivantes:\",\r\n duplicateEmail: \"Cet e-mail a déjà été ajouté\",\r\n validEmail: \"S'il vous plaît, mettez une adresse email valide.\",\r\n productInfo: \"Information sur le produit\",\r\n userProfile: \"Profil de l'utilisateur\",\r\n companyProfile: \"Profil de la société\",\r\n companyDetails: \"Détails de l'entreprise\",\r\n paymentDetails: \"Détails de paiement\",\r\n accountDetails: \"Détails du compte\",\r\n success: \"Succès\",\r\n areYouAuthorized: \"Êtes-vous autorisé par votre entreprise à créer un compte Bell Sensing Technology?*\",\r\n back: \"Retour\",\r\n next: \"Suivant\",\r\n alreadyHaveAnAccount: \"Vous avez déjà un compte?\",\r\n iAcceptAgreement: \"J'accepte les termes et conditions\",\r\n almostDone: \"Presque fini!\",\r\n pleaseCheckEmail: \"Veuillez vérifier votre e-mail pour activer votre compte. Si vous ne le recevez pas, vérifiez votre dossier de courrier indésirable!\",\r\n numberOfTechnicians: \"Nombre de techniciens\",\r\n distributor: \"Distributeur\",\r\n pleaseIdentify: \"Veuillez identifier les services que vous fournissez:*\",\r\n howDidYouHear: \"Comment avez-vous entendu parler de nous?*\"\r\n },\r\n relativeTime: {\r\n future: \"dans %s\",\r\n past: \"%s derrière\",\r\n seconds: \"seconds\",\r\n minutes: \"minutes\",\r\n hour: \"une heure\",\r\n hours: \"%d heures\",\r\n day: \"un jour\",\r\n days: \"%d jours\",\r\n month: \"un mois\",\r\n months: \"%d mois\",\r\n year: \"une année\",\r\n years: \"%d années\",\r\n },\r\n report: {\r\n manageReports: \"Gérer les rapports\",\r\n report: \"Signaler\",\r\n accountHistorical: \"Historique du compte\",\r\n filter: \"Filtre\",\r\n filterDesc:\r\n \"Veuillez sélectionner ci-dessous les paramètres par lesquels vous souhaitez filtrer votre rapport\",\r\n selectUser: \"Sélectionnez l'utilisateur\",\r\n serviceTech: \"Technicien de service\",\r\n summaryReport: \"Rapport sommaire\",\r\n baitSummary: \"Résumé des appâts\",\r\n note: \"Noter\",\r\n name: \"Nom\",\r\n includeExpansion: \"Inclure l'extension\",\r\n historicalReport: \"Rapport historique\",\r\n accountHistoricalReport: {\r\n title: \"Rapport historique du compte\",\r\n installed: \"installée\",\r\n detected: \"Détectée\",\r\n serviced: \"desservis\",\r\n status: \"Statut\",\r\n },\r\n serviceTechSummaryReport: {\r\n title: \"Rapport de synthèse technique de service\",\r\n dateOfService: \"Date de service\",\r\n details: \"Des détails\",\r\n pdf: \"PDF\",\r\n },\r\n noteReport: {\r\n title: \"Remarque Rapport\",\r\n replies: \"réponses\",\r\n time: \"Temps\",\r\n user: \"Utilisateur\",\r\n },\r\n baitSummaryReport: { \r\n title: \"Rapport récapitulatif sur les appâts\",\r\n totalPieces: \"Nombre total de pièces\", \r\n },\r\n },\r\n searchBar: {\r\n placeholder: \"Entrez un mot-clé pour rechercher...\"\r\n },\r\n serviceHistory: {\r\n title: \"Historique des services\",\r\n servicedBy: \"Desservi par\",\r\n branch: \"Succursale\",\r\n location: \"Emplacements\",\r\n serviceNotes: \"Notes de service\",\r\n },\r\n setPassword: { \r\n activateAccount: \"Activer le compte\",\r\n title: \"Définir le mot de passe\", \r\n },\r\n resendVerification: {\r\n linkExpired: \"Le lien a expiré\",\r\n resendLink: \"Le lien d'activation auquel vous essayez d'accéder a expiré. Un nouveau lien a été envoyé à votre adresse e-mail. Veuillez noter que le lien expirera dans 72 heures et que tout utilisateur actuellement connecté sur cet ordinateur sera automatiquement déconnecté une fois le lien cliqué !\"\r\n },\r\n shared: {\r\n action: \"Action\",\r\n actions: \"Actions\",\r\n activationDate: \"Date d'activation\",\r\n activeIngredient: \"Ingrédient actif\",\r\n account: \"Compte\",\r\n accounts: \"Comptes\",\r\n accountsDetails: \"Détails des comptes\",\r\n accountName: \"Nom du compte\",\r\n accountPerformance: \"Performances du compte\",\r\n active: \"Actif\",\r\n activeBranches: \"Succursales actives\",\r\n activeAccounts: \"Comptes actifs\",\r\n activeTechnicians: \"Techniciens actifs\",\r\n activeBaits: \"Appâts actifs\",\r\n averageVisitTime: \"Temps de visite moyen\",\r\n activity: \"Activité\",\r\n activities: \"Activités\",\r\n add: \"Ajouter\",\r\n address: \"Adresse\",\r\n addAccountToCompare: \"Ajouter un compte à comparer\",\r\n addBranchToCompare: \"Ajouter une succursale à comparer\",\r\n addDeviceToCompare: \"Ajouter un appareil à comparer\",\r\n address2: \"Adresse 2\",\r\n all: \"Tout\",\r\n average: \"Moyenne\",\r\n averageBaitApplicationRate: \"Taux moyen d'application d'appât\",\r\n averageBaitRefillPerVisit: \"Recharge moyenne d'appâts par visite\",\r\n averageRefill: \"Recharge moyenne\",\r\n baits: \"Appâts\",\r\n baitApplicationRate: \"Taux d'application des appâts\",\r\n baitApplied: \"Appât appliqué\",\r\n baitName: \"Nom de l'appât\",\r\n baitTypes: \"Types d'appâts\",\r\n baitTypesDetails: \"Détails sur les types d'appâts\",\r\n batteryLevel: \"Niveau de batterie\",\r\n branch: \"Succursale\",\r\n branches: \"Succursales\",\r\n branchesDetails: \"Détails des succursales\",\r\n branchLocation: \"Emplacement de la succursale\",\r\n branchName: \"Nom de la filiale\",\r\n branchPerformance: \"Rendement de la succursale\",\r\n cancel: \"Annuler\",\r\n captureTotals: \"Capturer les totaux\",\r\n captures: \"Captures\",\r\n category: \"Catégorie\",\r\n city: \"Ville\",\r\n close: \"Fermer\",\r\n create: \"Créer\",\r\n continue: \"Continuez\",\r\n company: \"Compagnie\",\r\n confirmPassword: \"Confirmez le mot de passe\",\r\n confirm: \"Confirmez\",\r\n country: \"Pays\",\r\n dashboard: \"Tableau de bord\",\r\n date: \"Date\",\r\n dateRangeOptionText: \"Option de plage de dates\",\r\n description: \"La description\",\r\n details: \"Des détails\",\r\n device: \"Dispositif\",\r\n devices: \"Dispositifs\",\r\n deviceModel: \"Modèle d'appareil\",\r\n disable: \"Désactiver\",\r\n download: \"Télécharger\",\r\n downloadChart: \"Télécharger le graphique\",\r\n downloadTooltip: \"Cette action demandera et téléchargera tous les journaux disponibles, le traitement peut prendre plus de temps.\",\r\n edit: \"Edit\",\r\n editDetails: \"Modifier les détails\",\r\n email: \"E-mail\",\r\n emailAddress: \"Adresse E-mail\",\r\n enable: \"Activer\",\r\n event: \"Événement\",\r\n events: \"Événements\",\r\n eventTotals: \"Totaux d'événements\",\r\n eventTooltip : \"La plage des données affichées va de la première date d'événement de cette visite à la date de début de cette visite.\",\r\n error: \"Une erreur s'est produite.\",\r\n errorAccountText: \"Le compte ne peut pas avoir le même nom qu'un compte existant, veuillez utiliser un nom différent.\",\r\n errorBranchText: \"La succursale ne peut pas avoir le même nom qu'une succursale existante, veuillez utiliser un nom différent.\",\r\n errorUserText: \"Cet email est déjà pris.\",\r\n expand: \"Développer\",\r\n fullRange: \"Gamme complète\",\r\n weekly: \"Hebdomadaire\",\r\n fullName: \"Nom et prénom\",\r\n generalInfo: \"Informations Générales\",\r\n hierarchyExplanation: \"Explication de la hiérarchie\",\r\n history: \"Histoire\",\r\n inactive: \"Inactif\",\r\n information: \"Informations\",\r\n organization: \"Organisation\",\r\n organizationDetails: \"Détails de l'organisation\",\r\n language: \"Langue\",\r\n last: \"Durer\",\r\n lastVisit: \"Derniere visite\",\r\n latitude: \"Latitude\",\r\n longitude: \"Longitude\",\r\n loading: \"Chargement\",\r\n logOut: \"Se déconnecter\",\r\n mainAddress: \"Adresse principale\",\r\n mainContactPhone: \"Téléphone du contact principal\",\r\n manage: \"Faire en sorte\",\r\n modify: \"Modifier\",\r\n mostActiveBranches: \"Succursales les plus actives\",\r\n mostUsedBait: \"Appâts les plus utilisés\",\r\n mostUsedBaits: \"Appâts les plus utilisés\",\r\n name: \"Nom\",\r\n newPassword: \"nouveau mot de passe\",\r\n no: \"Non\",\r\n notes: \"Remarques\",\r\n noDataFound: \"Aucune donnée disponible\",\r\n noneSelected: \"Aucune sélection\",\r\n noneSelectedMessage: \"Veuillez sélectionner l'une des options ci-dessus\",\r\n numberOfEvents: \"Nombre d'événements\",\r\n ok: \"Ok\",\r\n overview: \"Aperçu\",\r\n password: \"Mot de passe\",\r\n pending: \"En attente\",\r\n percentage: \"Pourcentage\",\r\n phoneNumber: \"Numéro de téléphone\",\r\n quantity: \"Quantité\",\r\n rangeTooltip: \"La plage des données affichées va de la date de fin de la visite précédente à la date de début de cette visite.\",\r\n recent: \"Récent\",\r\n regulatoryNumber: \"Numéro de réglementation\",\r\n results: \"Résultats\",\r\n rows: \"Lignes\",\r\n rowsPerPage: \"Lignes par page\",\r\n location: \"Emplacement\",\r\n save: \"Sauvegarder\",\r\n saveChanges: \"Sauvegarder les modifications\",\r\n scrollDownToViewMore: \"Faites défiler vers le bas pour en voir plus\",\r\n stateProvince: \"État/Province\",\r\n status: \"Statut\",\r\n select: \"Sélectionner\",\r\n selectAll: \"Tout sélectionner\",\r\n searchAddress: \"Adresse de recherche\",\r\n selectAccount: \"Sélectionnez un compte\",\r\n selectBranch: \"Sélectionnez une succursale\",\r\n selectCountry: \"Sélectionnez le pays\",\r\n selectDevice: \"Choisir un appareil\",\r\n selectLanguage: \"Veuillez sélectionner votre langue\",\r\n selectIndustry: \"Sélectionnez l'industrie\",\r\n selectRegion: \"Sélectionnez une région\",\r\n selectServiceFrequency: \"Sélectionnez la fréquence de service\",\r\n selectSize: \"Sélectionnez la taille\",\r\n sendEmail: \"Envoyer un e-mail\",\r\n service: \"Un service\",\r\n serviceBaitType : \"Type d'appât du service\",\r\n serviceBaitUsed : \"Appât utilisé dans le service\",\r\n serviceDate: \"Date d'entretien\",\r\n serviceIsCapture : \"Le service a une capture\",\r\n services: \"Services\",\r\n trendAnalysis: \"Analyse de tendance\",\r\n true: \"Vrai\",\r\n false: \"Faux\",\r\n unit: \"Unité\",\r\n units: \"Unités\",\r\n update: \"Mettre à jour\",\r\n updated: \"Mis à jour\",\r\n updatedBy: \"Mis à jour par\",\r\n users: \"Utilisateurs\",\r\n usersDetails: \"Détails des utilisateurs\",\r\n usersRecords: \"Enregistrement des utilisateurs\",\r\n technicians: \"Techniciens\",\r\n view: \"Vue\",\r\n visitTime: \"Heure de visite\",\r\n visit: \"Visite\",\r\n visits: \"Visites\",\r\n warning: \"Avertissement\",\r\n yes: \"Oui\",\r\n zipPostal: \"Zip / code postal\",\r\n },\r\n terms: {\r\n subscriptionAgreement: \"Contrat d'abonnement\",\r\n read: \"Lis\",\r\n agreement: \"Accord\",\r\n estimatedReadingTime: \"Temps de lecture estimé:\",\r\n readingTimeMinutes: \"30-40 minutes\",\r\n readingTimeCalculation: \"** Le calcul est basé sur la vitesse de lecture moyenne qui est d'environ 300 mots par minute (wpm).\",\r\n title: \"Termes et Conditions\",\r\n },\r\n user: {\r\n accountsVisited: \"Comptes visités\",\r\n activeUsers: \"Utilisateurs actifs\",\r\n allUsers: \"Tous les utilisateurs\",\r\n confirmDisableTitle: \"Êtes-vous sûr de vouloir désactiver cet utilisateur\",\r\n confirmDisableMessage:\r\n \"Vous êtes sur le point de désactiver un utilisateur sur ce compte, la licence expirera à la fin du cycle de facturation.\",\r\n corporate: \"Entreprise\",\r\n disableUser: \"Désactiver l'utilisateur\",\r\n user: \"Utilisateur\",\r\n usersList: {\r\n title: \"Liste des utilisateurs\",\r\n role: \"Rôle\",\r\n accessLevel: \"Niveau d'accès\",\r\n },\r\n accountServiced: {\r\n title: \"Comptes desservis\",\r\n duration: \"Durée\",\r\n baitApplied: \"Appât appliqué\",\r\n },\r\n personalInfo: \"Informations personnelles\",\r\n pendingUsers: \"Utilisateurs en attente\",\r\n inactiveUsers: \"Utilisateurs inactifs\",\r\n manageUsers: \"gérer les utilisateurs\",\r\n mostActiveAccounts: \"Comptes les plus actifs\",\r\n accessLevels: \"Niveaux d'accès\",\r\n generalSettings: \"Réglages Généraux\",\r\n branchAccess: \"Accès aux succursales\",\r\n timezone: \"Fuseau horaire\",\r\n dateFormat: \"Format de date\",\r\n editUser: \"Modifier l'utilisateur\",\r\n enableUser: \"Activer l'utilisateur\",\r\n firstName: 'Prénom',\r\n lastName: 'Nom de Famille',\r\n newUser: \"Nouvel utilisateur\",\r\n profilePicture: 'Image de Profil',\r\n selectOneAccessLevel: \"Doit sélectionner au moins (1) niveau d'accès\",\r\n selectOneBranch: \"Doit sélectionner au moins (1) succursale\",\r\n sendVerification: \"Envoyer la vérification\",\r\n serviceLocations: \"Lieux de service\",\r\n visitsLog: \"Journal des visites\",\r\n lastAccountVisited: \"Dernier compte visité\",\r\n },\r\n visit: {\r\n eventLog: \"Journal des événements\",\r\n timestamp: \"Horodatage\",\r\n manual: \"Manuel\",\r\n auto: \"Auto\",\r\n serviceType: \"Type de Service\",\r\n totalCaptures: \"Total des Captures\",\r\n totalEvents: \"Nombre total d'événements\",\r\n devicesServiced: \"Appareils desservis\",\r\n totalActiveDevices: \"Nombre total d'appareils actifs\"\r\n },\r\n};\r\n","//! moment.js locale configuration\n//! locale : Talossan [tzl]\n//! author : Robin van der Vliet : https://github.com/robin0van0der0v\n//! author : Iustì Canun\n\nimport moment from '../moment';\n\n// After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals.\n// This is currently too difficult (maybe even impossible) to add.\nexport default moment.defineLocale('tzl', {\n months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split(\n '_'\n ),\n monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),\n weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),\n weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),\n weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM [dallas] YYYY',\n LLL: 'D. MMMM [dallas] YYYY HH.mm',\n LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',\n },\n meridiemParse: /d\\'o|d\\'a/i,\n isPM: function (input) {\n return \"d'o\" === input.toLowerCase();\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? \"d'o\" : \"D'O\";\n } else {\n return isLower ? \"d'a\" : \"D'A\";\n }\n },\n calendar: {\n sameDay: '[oxhi à] LT',\n nextDay: '[demà à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[ieiri à] LT',\n lastWeek: '[sür el] dddd [lasteu à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'osprei %s',\n past: 'ja%s',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: processRelativeTime,\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['viensas secunds', \"'iensas secunds\"],\n ss: [number + ' secunds', '' + number + ' secunds'],\n m: [\"'n míut\", \"'iens míut\"],\n mm: [number + ' míuts', '' + number + ' míuts'],\n h: [\"'n þora\", \"'iensa þora\"],\n hh: [number + ' þoras', '' + number + ' þoras'],\n d: [\"'n ziua\", \"'iensa ziua\"],\n dd: [number + ' ziuas', '' + number + ' ziuas'],\n M: [\"'n mes\", \"'iens mes\"],\n MM: [number + ' mesen', '' + number + ' mesen'],\n y: [\"'n ar\", \"'iens ar\"],\n yy: [number + ' ars', '' + number + ' ars'],\n };\n return isFuture\n ? format[key][0]\n : withoutSuffix\n ? format[key][0]\n : format[key][1];\n}\n","//! moment.js locale configuration\n//! locale : Spanish (United States) [es-us]\n//! author : bustta : https://github.com/bustta\n//! author : chrisrodz : https://github.com/chrisrodz\n\nimport moment from '../moment';\n\nvar monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\nexport default moment.defineLocale('es-us', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'MM/DD/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","import arrayWithoutHoles from \"@babel/runtime/helpers/esm/arrayWithoutHoles\";\nimport iterableToArray from \"@babel/runtime/helpers/esm/iterableToArray\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableSpread from \"@babel/runtime/helpers/esm/nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\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}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nexport function isPlainObject(item) {\n return item && _typeof(item) === 'object' && item.constructor === Object;\n}\nexport default function deepmerge(target, source) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n clone: true\n };\n var output = options.clone ? _extends({}, target) : target;\n\n if (isPlainObject(target) && isPlainObject(source)) {\n Object.keys(source).forEach(function (key) {\n // Avoid prototype pollution\n if (key === '__proto__') {\n return;\n }\n\n if (isPlainObject(source[key]) && key in target) {\n output[key] = deepmerge(target[key], source[key], options);\n } else {\n output[key] = source[key];\n }\n });\n }\n\n return output;\n}","//! moment.js locale configuration\n//! locale : German [de]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n}\n\nexport default moment.defineLocale('de', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort: 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Telugu [te]\n//! author : Krishna Chaitanya Thota : https://github.com/kcthota\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('te', {\n months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split(\n '_'\n ),\n monthsShort: 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split(\n '_'\n ),\n weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'),\n weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[నేడు] LT',\n nextDay: '[రేపు] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[నిన్న] LT',\n lastWeek: '[గత] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s లో',\n past: '%s క్రితం',\n s: 'కొన్ని క్షణాలు',\n ss: '%d సెకన్లు',\n m: 'ఒక నిమిషం',\n mm: '%d నిమిషాలు',\n h: 'ఒక గంట',\n hh: '%d గంటలు',\n d: 'ఒక రోజు',\n dd: '%d రోజులు',\n M: 'ఒక నెల',\n MM: '%d నెలలు',\n y: 'ఒక సంవత్సరం',\n yy: '%d సంవత్సరాలు',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}వ/,\n ordinal: '%dవ',\n meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'రాత్రి') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ఉదయం') {\n return hour;\n } else if (meridiem === 'మధ్యాహ్నం') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'సాయంత్రం') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'రాత్రి';\n } else if (hour < 10) {\n return 'ఉదయం';\n } else if (hour < 17) {\n return 'మధ్యాహ్నం';\n } else if (hour < 20) {\n return 'సాయంత్రం';\n } else {\n return 'రాత్రి';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-visit\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Catalan [ca]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ca', {\n months: {\n standalone: 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split(\n '_'\n ),\n format: \"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort: 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a les] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextDay: function () {\n return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastDay: function () {\n return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [passat a ' +\n (this.hours() !== 1 ? 'les' : 'la') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'uns segons',\n ss: '%d segons',\n m: 'un minut',\n mm: '%d minuts',\n h: 'una hora',\n hh: '%d hores',\n d: 'un dia',\n dd: '%d dies',\n M: 'un mes',\n MM: '%d mesos',\n y: 'un any',\n yy: '%d anys',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Central Atlas Tamazight [tzm]\n//! author : Abdel Said : https://github.com/abdelsaid\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('tzm', {\n months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n monthsShort: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split(\n '_'\n ),\n weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',\n nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',\n nextWeek: 'dddd [ⴴ] LT',\n lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',\n lastWeek: 'dddd [ⴴ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',\n past: 'ⵢⴰⵏ %s',\n s: 'ⵉⵎⵉⴽ',\n ss: '%d ⵉⵎⵉⴽ',\n m: 'ⵎⵉⵏⵓⴺ',\n mm: '%d ⵎⵉⵏⵓⴺ',\n h: 'ⵙⴰⵄⴰ',\n hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',\n d: 'ⴰⵙⵙ',\n dd: '%d oⵙⵙⴰⵏ',\n M: 'ⴰⵢoⵓⵔ',\n MM: '%d ⵉⵢⵢⵉⵔⵏ',\n y: 'ⴰⵙⴳⴰⵙ',\n yy: '%d ⵉⵙⴳⴰⵙⵏ',\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n});\n","'use strict';\n\n/**\n * Used to mark a\n * [React Native `File` substitute]{@link ReactNativeFileSubstitute}\n * in an object tree for [`extractFiles`]{@link extractFiles}. It’s too risky to\n * assume all objects with `uri`, `type` and `name` properties are files to\n * extract.\n * @kind class\n * @name ReactNativeFile\n * @param {ReactNativeFileSubstitute} file A [React Native](https://reactnative.dev) [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File) substitute.\n * @example Ways to `import`.\n * ```js\n * import { ReactNativeFile } from 'extract-files';\n * ```\n *\n * ```js\n * import ReactNativeFile from 'extract-files/public/ReactNativeFile.js';\n * ```\n * @example Ways to `require`.\n * ```js\n * const { ReactNativeFile } = require('extract-files');\n * ```\n *\n * ```js\n * const ReactNativeFile = require('extract-files/public/ReactNativeFile.js');\n * ```\n * @example An extractable file in [React Native](https://reactnative.dev).\n * ```js\n * const file = new ReactNativeFile({\n * uri: uriFromCameraRoll,\n * name: 'a.jpg',\n * type: 'image/jpeg',\n * });\n * ```\n */\nmodule.exports = class ReactNativeFile {\n constructor({ uri, name, type }) {\n this.uri = uri;\n this.name = name;\n this.type = type;\n }\n};\n","//! moment.js locale configuration\n//! locale : Pseudo [x-pseudo]\n//! author : Andrew Hood : https://github.com/andrewhood125\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('x-pseudo', {\n months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split(\n '_'\n ),\n monthsShort: 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split(\n '_'\n ),\n weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'),\n weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[T~ódá~ý át] LT',\n nextDay: '[T~ómó~rró~w át] LT',\n nextWeek: 'dddd [át] LT',\n lastDay: '[Ý~ést~érdá~ý át] LT',\n lastWeek: '[L~ást] dddd [át] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'í~ñ %s',\n past: '%s á~gó',\n s: 'á ~féw ~sécó~ñds',\n ss: '%d s~écóñ~ds',\n m: 'á ~míñ~úté',\n mm: '%d m~íñú~tés',\n h: 'á~ñ hó~úr',\n hh: '%d h~óúrs',\n d: 'á ~dáý',\n dd: '%d d~áýs',\n M: 'á ~móñ~th',\n MM: '%d m~óñt~hs',\n y: 'á ~ýéár',\n yy: '%d ý~éárs',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Uyghur (China) [ug-cn]\n//! author: boyaq : https://github.com/boyaq\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ug-cn', {\n months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n monthsShort: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split(\n '_'\n ),\n weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split(\n '_'\n ),\n weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى',\n LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',\n },\n meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n meridiem === 'يېرىم كېچە' ||\n meridiem === 'سەھەر' ||\n meridiem === 'چۈشتىن بۇرۇن'\n ) {\n return hour;\n } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') {\n return hour + 12;\n } else {\n return hour >= 11 ? hour : hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return 'يېرىم كېچە';\n } else if (hm < 900) {\n return 'سەھەر';\n } else if (hm < 1130) {\n return 'چۈشتىن بۇرۇن';\n } else if (hm < 1230) {\n return 'چۈش';\n } else if (hm < 1800) {\n return 'چۈشتىن كېيىن';\n } else {\n return 'كەچ';\n }\n },\n calendar: {\n sameDay: '[بۈگۈن سائەت] LT',\n nextDay: '[ئەتە سائەت] LT',\n nextWeek: '[كېلەركى] dddd [سائەت] LT',\n lastDay: '[تۆنۈگۈن] LT',\n lastWeek: '[ئالدىنقى] dddd [سائەت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s كېيىن',\n past: '%s بۇرۇن',\n s: 'نەچچە سېكونت',\n ss: '%d سېكونت',\n m: 'بىر مىنۇت',\n mm: '%d مىنۇت',\n h: 'بىر سائەت',\n hh: '%d سائەت',\n d: 'بىر كۈن',\n dd: '%d كۈن',\n M: 'بىر ئاي',\n MM: '%d ئاي',\n y: 'بىر يىل',\n yy: '%d يىل',\n },\n\n dayOfMonthOrdinalParse: /\\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '-كۈنى';\n case 'w':\n case 'W':\n return number + '-ھەپتە';\n default:\n return number;\n }\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1st is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Portuguese (Brazil) [pt-br]\n//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('pt-br', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays: 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split(\n '_'\n ),\n weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'),\n weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY [às] HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'poucos segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n invalidDate: 'Data inválida',\n});\n","//! moment.js locale configuration\n//! locale : Thai [th]\n//! author : Kridsada Thanabulpong : https://github.com/sirn\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('th', {\n months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split(\n '_'\n ),\n monthsShort: 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),\n weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference\n weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY เวลา H:mm',\n LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm',\n },\n meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,\n isPM: function (input) {\n return input === 'หลังเที่ยง';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ก่อนเที่ยง';\n } else {\n return 'หลังเที่ยง';\n }\n },\n calendar: {\n sameDay: '[วันนี้ เวลา] LT',\n nextDay: '[พรุ่งนี้ เวลา] LT',\n nextWeek: 'dddd[หน้า เวลา] LT',\n lastDay: '[เมื่อวานนี้ เวลา] LT',\n lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'อีก %s',\n past: '%sที่แล้ว',\n s: 'ไม่กี่วินาที',\n ss: '%d วินาที',\n m: '1 นาที',\n mm: '%d นาที',\n h: '1 ชั่วโมง',\n hh: '%d ชั่วโมง',\n d: '1 วัน',\n dd: '%d วัน',\n w: '1 สัปดาห์',\n ww: '%d สัปดาห์',\n M: '1 เดือน',\n MM: '%d เดือน',\n y: '1 ปี',\n yy: '%d ปี',\n },\n});\n","//! moment.js locale configuration\n//! locale : Japanese [ja]\n//! author : LI Long : https://github.com/baryon\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ja', {\n eras: [\n {\n since: '2019-05-01',\n offset: 1,\n name: '令和',\n narrow: '㋿',\n abbr: 'R',\n },\n {\n since: '1989-01-08',\n until: '2019-04-30',\n offset: 1,\n name: '平成',\n narrow: '㍻',\n abbr: 'H',\n },\n {\n since: '1926-12-25',\n until: '1989-01-07',\n offset: 1,\n name: '昭和',\n narrow: '㍼',\n abbr: 'S',\n },\n {\n since: '1912-07-30',\n until: '1926-12-24',\n offset: 1,\n name: '大正',\n narrow: '㍽',\n abbr: 'T',\n },\n {\n since: '1873-01-01',\n until: '1912-07-29',\n offset: 6,\n name: '明治',\n narrow: '㍾',\n abbr: 'M',\n },\n {\n since: '0001-01-01',\n until: '1873-12-31',\n offset: 1,\n name: '西暦',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: '紀元前',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n eraYearOrdinalRegex: /(元|\\d+)年/,\n eraYearOrdinalParse: function (input, match) {\n return match[1] === '元' ? 1 : parseInt(match[1] || input, 10);\n },\n months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),\n weekdaysShort: '日_月_火_水_木_金_土'.split('_'),\n weekdaysMin: '日_月_火_水_木_金_土'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日 dddd HH:mm',\n l: 'YYYY/MM/DD',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日(ddd) HH:mm',\n },\n meridiemParse: /午前|午後/i,\n isPM: function (input) {\n return input === '午後';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return '午前';\n } else {\n return '午後';\n }\n },\n calendar: {\n sameDay: '[今日] LT',\n nextDay: '[明日] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n return '[来週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n lastDay: '[昨日] LT',\n lastWeek: function (now) {\n if (this.week() !== now.week()) {\n return '[先週]dddd LT';\n } else {\n return 'dddd LT';\n }\n },\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}日/,\n ordinal: function (number, period) {\n switch (period) {\n case 'y':\n return number === 1 ? '元年' : number + '年';\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '数秒',\n ss: '%d秒',\n m: '1分',\n mm: '%d分',\n h: '1時間',\n hh: '%d時間',\n d: '1日',\n dd: '%d日',\n M: '1ヶ月',\n MM: '%dヶ月',\n y: '1年',\n yy: '%d年',\n },\n});\n","//! moment.js locale configuration\n//! locale : Arabic (Algeria) [ar-dz]\n//! author : Amine Roukh: https://github.com/Amine27\n//! author : Abdel Said: https://github.com/abdelsaid\n//! author : Ahmed Elkhatib\n//! author : forabi https://github.com/forabi\n//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem\n\nimport moment from '../moment';\n\nvar pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'جانفي',\n 'فيفري',\n 'مارس',\n 'أفريل',\n 'ماي',\n 'جوان',\n 'جويلية',\n 'أوت',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\nexport default moment.defineLocale('ar-dz', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Portuguese [pt]\n//! author : Jefferson : https://github.com/jalex79\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('pt', {\n months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split(\n '_'\n ),\n monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n weekdays: 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split(\n '_'\n ),\n weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),\n weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY HH:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Hoje às] LT',\n nextDay: '[Amanhã às] LT',\n nextWeek: 'dddd [às] LT',\n lastDay: '[Ontem às] LT',\n lastWeek: function () {\n return this.day() === 0 || this.day() === 6\n ? '[Último] dddd [às] LT' // Saturday + Sunday\n : '[Última] dddd [às] LT'; // Monday - Friday\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'em %s',\n past: 'há %s',\n s: 'segundos',\n ss: '%d segundos',\n m: 'um minuto',\n mm: '%d minutos',\n h: 'uma hora',\n hh: '%d horas',\n d: 'um dia',\n dd: '%d dias',\n w: 'uma semana',\n ww: '%d semanas',\n M: 'um mês',\n MM: '%d meses',\n y: 'um ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Swedish [sv]\n//! author : Jens Alm : https://github.com/ulmus\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('sv', {\n months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),\n weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'),\n weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [kl.] HH:mm',\n LLLL: 'dddd D MMMM YYYY [kl.] HH:mm',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Idag] LT',\n nextDay: '[Imorgon] LT',\n lastDay: '[Igår] LT',\n nextWeek: '[På] dddd LT',\n lastWeek: '[I] dddd[s] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: 'för %s sedan',\n s: 'några sekunder',\n ss: '%d sekunder',\n m: 'en minut',\n mm: '%d minuter',\n h: 'en timme',\n hh: '%d timmar',\n d: 'en dag',\n dd: '%d dagar',\n M: 'en månad',\n MM: '%d månader',\n y: 'ett år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(\\:e|\\:a)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? ':e'\n : b === 1\n ? ':a'\n : b === 2\n ? ':a'\n : b === 3\n ? ':e'\n : ':e';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","'use strict';\n\nconst { ApolloLink, Observable } = require('@apollo/client/core');\nconst {\n createSignalIfSupported,\n fallbackHttpConfig,\n parseAndCheckHttpResponse,\n rewriteURIForGET,\n selectHttpOptionsAndBody,\n selectURI,\n serializeFetchParameter,\n} = require('@apollo/client/link/http');\nconst extractFiles = require('extract-files/public/extractFiles.js');\nconst formDataAppendFile = require('./formDataAppendFile.js');\nconst isExtractableFile = require('./isExtractableFile.js');\n\n/**\n * Creates a\n * [terminating Apollo Link](https://apollographql.com/docs/react/api/link/introduction/#the-terminating-link)\n * for [Apollo Client](https://apollographql.com/docs/react) that fetches a\n * [GraphQL multipart request](https://github.com/jaydenseric/graphql-multipart-request-spec)\n * if the GraphQL variables contain files (by default\n * [`FileList`](https://developer.mozilla.org/en-US/docs/Web/API/FileList),\n * [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File),\n * [`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob), or\n * [`ReactNativeFile`](#class-reactnativefile) instances), or else fetches a\n * regular\n * [GraphQL POST or GET request](https://apollographql.com/docs/apollo-server/requests)\n * (depending on the config and GraphQL operation).\n *\n * Some of the options are similar to the\n * [`createHttpLink` options](https://apollographql.com/docs/react/api/link/apollo-link-http/#httplink-constructor-options).\n * @see [GraphQL multipart request spec](https://github.com/jaydenseric/graphql-multipart-request-spec).\n * @kind function\n * @name createUploadLink\n * @param {object} options Options.\n * @param {string} [options.uri='/graphql'] GraphQL endpoint URI.\n * @param {boolean} [options.useGETForQueries] Should GET be used to fetch queries, if there are no files to upload.\n * @param {ExtractableFileMatcher} [options.isExtractableFile=isExtractableFile] Customizes how files are matched in the GraphQL operation for extraction.\n * @param {class} [options.FormData] [`FormData`](https://developer.mozilla.org/en-US/docs/Web/API/FormData) implementation to use, defaulting to the [`FormData`](https://developer.mozilla.org/en-US/docs/Web/API/FormData) global.\n * @param {FormDataFileAppender} [options.formDataAppendFile=formDataAppendFile] Customizes how extracted files are appended to the [`FormData`](https://developer.mozilla.org/en-US/docs/Web/API/FormData) instance.\n * @param {Function} [options.fetch] [`fetch`](https://fetch.spec.whatwg.org) implementation to use, defaulting to the [`fetch`](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch) global.\n * @param {FetchOptions} [options.fetchOptions] [`fetch` options]{@link FetchOptions}; overridden by upload requirements.\n * @param {string} [options.credentials] Overrides `options.fetchOptions.credentials`.\n * @param {object} [options.headers] Merges with and overrides `options.fetchOptions.headers`.\n * @param {boolean} [options.includeExtensions=false] Toggles sending `extensions` fields to the GraphQL server.\n * @returns {ApolloLink} A [terminating Apollo Link](https://apollographql.com/docs/react/api/link/introduction/#the-terminating-link).\n * @example Ways to `import`.\n * ```js\n * import { createUploadLink } from 'apollo-upload-client';\n * ```\n *\n * ```js\n * import createUploadLink from 'apollo-upload-client/public/createUploadLink.js';\n * ```\n * @example Ways to `require`.\n * ```js\n * const { createUploadLink } = require('apollo-upload-client');\n * ```\n *\n * ```js\n * const createUploadLink = require('apollo-upload-client/public/createUploadLink.js');\n * ```\n * @example A basic Apollo Client setup.\n * ```js\n * import { ApolloClient, InMemoryCache } from '@apollo/client';\n * import { createUploadLink } from 'apollo-upload-client';\n *\n * const client = new ApolloClient({\n * cache: new InMemoryCache(),\n * link: createUploadLink(),\n * });\n * ```\n */\nmodule.exports = function createUploadLink({\n uri: fetchUri = '/graphql',\n useGETForQueries,\n isExtractableFile: customIsExtractableFile = isExtractableFile,\n FormData: CustomFormData,\n formDataAppendFile: customFormDataAppendFile = formDataAppendFile,\n fetch: customFetch,\n fetchOptions,\n credentials,\n headers,\n includeExtensions,\n} = {}) {\n const linkConfig = {\n http: { includeExtensions },\n options: fetchOptions,\n credentials,\n headers,\n };\n\n return new ApolloLink((operation) => {\n const context = operation.getContext();\n const {\n // Apollo Studio client awareness `name` and `version` can be configured\n // via `ApolloClient` constructor options:\n // https://apollographql.com/docs/studio/client-awareness/#using-apollo-server-and-apollo-client\n clientAwareness: { name, version } = {},\n headers,\n } = context;\n\n const contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: {\n // Client awareness headers can be overridden by context `headers`.\n ...(name && { 'apollographql-client-name': name }),\n ...(version && { 'apollographql-client-version': version }),\n ...headers,\n },\n };\n\n const { options, body } = selectHttpOptionsAndBody(\n operation,\n fallbackHttpConfig,\n linkConfig,\n contextConfig\n );\n\n const { clone, files } = extractFiles(body, '', customIsExtractableFile);\n\n let uri = selectURI(operation, fetchUri);\n\n if (files.size) {\n // Automatically set by `fetch` when the `body` is a `FormData` instance.\n delete options.headers['content-type'];\n\n // GraphQL multipart request spec:\n // https://github.com/jaydenseric/graphql-multipart-request-spec\n\n const RuntimeFormData = CustomFormData || FormData;\n\n const form = new RuntimeFormData();\n\n form.append('operations', serializeFetchParameter(clone, 'Payload'));\n\n const map = {};\n let i = 0;\n files.forEach((paths) => {\n map[++i] = paths;\n });\n form.append('map', JSON.stringify(map));\n\n i = 0;\n files.forEach((paths, file) => {\n customFormDataAppendFile(form, ++i, file);\n });\n\n options.body = form;\n } else {\n if (\n useGETForQueries &&\n // If the operation contains some mutations GET shouldn’t be used.\n !operation.query.definitions.some(\n (definition) =>\n definition.kind === 'OperationDefinition' &&\n definition.operation === 'mutation'\n )\n )\n options.method = 'GET';\n\n if (options.method === 'GET') {\n const { newURI, parseError } = rewriteURIForGET(uri, body);\n if (parseError)\n // Apollo’s `HttpLink` uses `fromError` for this, but it's not\n // exported from `@apollo/client/link/http`.\n return new Observable((observer) => {\n observer.error(parseError);\n });\n uri = newURI;\n } else options.body = serializeFetchParameter(clone, 'Payload');\n }\n\n const { controller } = createSignalIfSupported();\n\n if (controller) {\n if (options.signal)\n // Respect the user configured abort controller signal.\n options.signal.aborted\n ? // Signal already aborted, so immediately abort.\n controller.abort()\n : // Signal not already aborted, so setup a listener to abort when it\n // does.\n options.signal.addEventListener(\n 'abort',\n () => {\n controller.abort();\n },\n {\n // Prevent a memory leak if the user configured abort controller\n // is long lasting, or controls multiple things.\n once: true,\n }\n );\n\n options.signal = controller.signal;\n }\n\n const runtimeFetch = customFetch || fetch;\n\n return new Observable((observer) => {\n // Used to track if the observable is being cleaned up.\n let cleaningUp;\n\n runtimeFetch(uri, options)\n .then((response) => {\n // Forward the response on the context.\n operation.setContext({ response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then((result) => {\n observer.next(result);\n observer.complete();\n })\n .catch((error) => {\n // If the observable is being cleaned up, there is no need to call\n // next or error because there are no more subscribers. An error after\n // cleanup begins is likely from the cleanup function aborting the\n // fetch.\n if (!cleaningUp) {\n // For errors such as an invalid fetch URI there will be no GraphQL\n // result with errors or data to forward.\n if (error.result && error.result.errors && error.result.data)\n observer.next(error.result);\n\n observer.error(error);\n }\n });\n\n // Cleanup function.\n return () => {\n cleaningUp = true;\n\n // Abort fetch. It’s ok to signal an abort even when not fetching.\n if (controller) controller.abort();\n };\n });\n });\n};\n","import { GraphQLError } from 'graphql';\n\nimport { isNonEmptyArray } from '../utilities';\nimport { ServerParseError } from '../link/http';\nimport { ServerError } from '../link/utils';\n\nexport function isApolloError(err: Error): err is ApolloError {\n return err.hasOwnProperty('graphQLErrors');\n}\n\n// Sets the error message on this error according to the\n// the GraphQL and network errors that are present.\n// If the error message has already been set through the\n// constructor or otherwise, this function is a nop.\nconst generateErrorMessage = (err: ApolloError) => {\n let message = '';\n // If we have GraphQL errors present, add that to the error message.\n if (isNonEmptyArray(err.graphQLErrors)) {\n err.graphQLErrors.forEach((graphQLError: GraphQLError) => {\n const errorMessage = graphQLError\n ? graphQLError.message\n : 'Error message not found.';\n message += `${errorMessage}\\n`;\n });\n }\n\n if (err.networkError) {\n message += `${err.networkError.message}\\n`;\n }\n\n // strip newline from the end of the message\n message = message.replace(/\\n$/, '');\n return message;\n};\n\nexport class ApolloError extends Error {\n public message: string;\n public graphQLErrors: ReadonlyArray;\n public networkError: Error | ServerParseError | ServerError | null;\n\n // An object that can be used to provide some additional information\n // about an error, e.g. specifying the type of error this is. Used\n // internally within Apollo Client.\n public extraInfo: any;\n\n // Constructs an instance of ApolloError given a GraphQLError\n // or a network error. Note that one of these has to be a valid\n // value or the constructed error will be meaningless.\n constructor({\n graphQLErrors,\n networkError,\n errorMessage,\n extraInfo,\n }: {\n graphQLErrors?: ReadonlyArray;\n networkError?: Error | ServerParseError | ServerError | null;\n errorMessage?: string;\n extraInfo?: any;\n }) {\n super(errorMessage);\n this.graphQLErrors = graphQLErrors || [];\n this.networkError = networkError || null;\n this.message = errorMessage || generateErrorMessage(this);\n this.extraInfo = extraInfo;\n\n // We're not using `Object.setPrototypeOf` here as it isn't fully\n // supported on Android (see issue #3236).\n (this as any).__proto__ = ApolloError.prototype;\n }\n}\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nexport enum EventType {\r\n LOGIN_START = \"msal:loginStart\",\r\n LOGIN_SUCCESS = \"msal:loginSuccess\",\r\n LOGIN_FAILURE = \"msal:loginFailure\",\r\n ACQUIRE_TOKEN_START = \"msal:acquireTokenStart\",\r\n ACQUIRE_TOKEN_SUCCESS = \"msal:acquireTokenSuccess\",\r\n ACQUIRE_TOKEN_FAILURE = \"msal:acquireTokenFailure\",\r\n ACQUIRE_TOKEN_NETWORK_START = \"msal:acquireTokenFromNetworkStart\",\r\n SSO_SILENT_START = \"msal:ssoSilentStart\",\r\n SSO_SILENT_SUCCESS = \"msal:ssoSilentSuccess\",\r\n SSO_SILENT_FAILURE = \"msal:ssoSilentFailure\",\r\n HANDLE_REDIRECT_START = \"msal:handleRedirectStart\",\r\n HANDLE_REDIRECT_END = \"msal:handleRedirectEnd\",\r\n POPUP_OPENED = \"msal:popupOpened\",\r\n LOGOUT_START = \"msal:logoutStart\",\r\n LOGOUT_SUCCESS = \"msal:logoutSuccess\",\r\n LOGOUT_FAILURE = \"msal:logoutFailure\",\r\n LOGOUT_END = \"msal:logoutEnd\"\r\n}\r\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-register\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Punjabi (India) [pa-in]\n//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '੧',\n 2: '੨',\n 3: '੩',\n 4: '੪',\n 5: '੫',\n 6: '੬',\n 7: '੭',\n 8: '੮',\n 9: '੯',\n 0: '੦',\n },\n numberMap = {\n '੧': '1',\n '੨': '2',\n '੩': '3',\n '੪': '4',\n '੫': '5',\n '੬': '6',\n '੭': '7',\n '੮': '8',\n '੯': '9',\n '੦': '0',\n };\n\nexport default moment.defineLocale('pa-in', {\n // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi.\n months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n monthsShort: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split(\n '_'\n ),\n weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split(\n '_'\n ),\n weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm ਵਜੇ',\n LTS: 'A h:mm:ss ਵਜੇ',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm ਵਜੇ',\n LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',\n },\n calendar: {\n sameDay: '[ਅਜ] LT',\n nextDay: '[ਕਲ] LT',\n nextWeek: '[ਅਗਲਾ] dddd, LT',\n lastDay: '[ਕਲ] LT',\n lastWeek: '[ਪਿਛਲੇ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ਵਿੱਚ',\n past: '%s ਪਿਛਲੇ',\n s: 'ਕੁਝ ਸਕਿੰਟ',\n ss: '%d ਸਕਿੰਟ',\n m: 'ਇਕ ਮਿੰਟ',\n mm: '%d ਮਿੰਟ',\n h: 'ਇੱਕ ਘੰਟਾ',\n hh: '%d ਘੰਟੇ',\n d: 'ਇੱਕ ਦਿਨ',\n dd: '%d ਦਿਨ',\n M: 'ਇੱਕ ਮਹੀਨਾ',\n MM: '%d ਮਹੀਨੇ',\n y: 'ਇੱਕ ਸਾਲ',\n yy: '%d ਸਾਲ',\n },\n preparse: function (string) {\n return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Punjabi notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.\n meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ਰਾਤ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ਸਵੇਰ') {\n return hour;\n } else if (meridiem === 'ਦੁਪਹਿਰ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ਸ਼ਾਮ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ਰਾਤ';\n } else if (hour < 10) {\n return 'ਸਵੇਰ';\n } else if (hour < 17) {\n return 'ਦੁਪਹਿਰ';\n } else if (hour < 20) {\n return 'ਸ਼ਾਮ';\n } else {\n return 'ਰਾਤ';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { ClientAuthError } from \"../error/ClientAuthError\";\r\nimport { StringUtils } from \"../utils/StringUtils\";\r\nimport { ICrypto } from \"../crypto/ICrypto\";\r\nimport { Separators, Constants } from \"../utils/Constants\";\r\n\r\n/**\r\n * Client info object which consists of two IDs. Need to add more info here.\r\n */\r\nexport type ClientInfo = {\r\n uid: string,\r\n utid: string\r\n};\r\n\r\n/**\r\n * Function to build a client info object from server clientInfo string\r\n * @param rawClientInfo\r\n * @param crypto\r\n */\r\nexport function buildClientInfo(rawClientInfo: string, crypto: ICrypto): ClientInfo {\r\n if (StringUtils.isEmpty(rawClientInfo)) {\r\n throw ClientAuthError.createClientInfoEmptyError();\r\n }\r\n\r\n try {\r\n const decodedClientInfo: string = crypto.base64Decode(rawClientInfo);\r\n return JSON.parse(decodedClientInfo) as ClientInfo;\r\n } catch (e) {\r\n throw ClientAuthError.createClientInfoDecodingError(e);\r\n }\r\n}\r\n\r\n/**\r\n * Function to build a client info object from cached homeAccountId string\r\n * @param homeAccountId \r\n */\r\nexport function buildClientInfoFromHomeAccountId(homeAccountId: string): ClientInfo {\r\n if (StringUtils.isEmpty(homeAccountId)) {\r\n throw ClientAuthError.createClientInfoDecodingError(\"Home account ID was empty.\");\r\n }\r\n const clientInfoParts: string[] = homeAccountId.split(Separators.CLIENT_INFO_SEPARATOR, 2);\r\n return {\r\n uid: clientInfoParts[0],\r\n utid: clientInfoParts.length < 2 ? Constants.EMPTY_STRING : clientInfoParts[1]\r\n };\r\n}\r\n","//! moment.js locale configuration\n//! locale : Serbian [sr]\n//! author : Milan Janačković : https://github.com/milan-j\n//! author : Stefan Crnjaković : https://github.com/crnjakovic\n\nimport moment from '../moment';\n\nvar translator = {\n words: {\n //Different grammatical cases\n ss: ['sekunda', 'sekunde', 'sekundi'],\n m: ['jedan minut', 'jedne minute'],\n mm: ['minut', 'minute', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mesec', 'meseca', 'meseci'],\n yy: ['godina', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1\n ? wordKey[0]\n : number >= 2 && number <= 4\n ? wordKey[1]\n : wordKey[2];\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return (\n number +\n ' ' +\n translator.correctGrammaticalCase(number, wordKey)\n );\n }\n },\n};\n\nexport default moment.defineLocale('sr', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort: 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'D. M. YYYY.',\n LL: 'D. MMMM YYYY.',\n LLL: 'D. MMMM YYYY. H:mm',\n LLLL: 'dddd, D. MMMM YYYY. H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedelju] [u] LT';\n case 3:\n return '[u] [sredu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedelje] [u] LT',\n '[prošlog] [ponedeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'pre %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: 'dan',\n dd: translator.translate,\n M: 'mesec',\n MM: translator.translate,\n y: 'godinu',\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Bengali [bn]\n//! author : Kaushik Gandhi : https://github.com/kaushikgandhi\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '১',\n 2: '২',\n 3: '৩',\n 4: '৪',\n 5: '৫',\n 6: '৬',\n 7: '৭',\n 8: '৮',\n 9: '৯',\n 0: '০',\n },\n numberMap = {\n '১': '1',\n '২': '2',\n '৩': '3',\n '৪': '4',\n '৫': '5',\n '৬': '6',\n '৭': '7',\n '৮': '8',\n '৯': '9',\n '০': '0',\n };\n\nexport default moment.defineLocale('bn', {\n months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split(\n '_'\n ),\n monthsShort: 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split(\n '_'\n ),\n weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split(\n '_'\n ),\n weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'),\n weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'),\n longDateFormat: {\n LT: 'A h:mm সময়',\n LTS: 'A h:mm:ss সময়',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm সময়',\n LLLL: 'dddd, D MMMM YYYY, A h:mm সময়',\n },\n calendar: {\n sameDay: '[আজ] LT',\n nextDay: '[আগামীকাল] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[গতকাল] LT',\n lastWeek: '[গত] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s পরে',\n past: '%s আগে',\n s: 'কয়েক সেকেন্ড',\n ss: '%d সেকেন্ড',\n m: 'এক মিনিট',\n mm: '%d মিনিট',\n h: 'এক ঘন্টা',\n hh: '%d ঘন্টা',\n d: 'এক দিন',\n dd: '%d দিন',\n M: 'এক মাস',\n MM: '%d মাস',\n y: 'এক বছর',\n yy: '%d বছর',\n },\n preparse: function (string) {\n return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'রাত' && hour >= 4) ||\n (meridiem === 'দুপুর' && hour < 5) ||\n meridiem === 'বিকাল'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'রাত';\n } else if (hour < 10) {\n return 'সকাল';\n } else if (hour < 17) {\n return 'দুপুর';\n } else if (hour < 20) {\n return 'বিকাল';\n } else {\n return 'রাত';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Georgian [ka]\n//! author : Irakli Janiashvili : https://github.com/IrakliJani\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ka', {\n months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split(\n '_'\n ),\n monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),\n weekdays: {\n standalone: 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split(\n '_'\n ),\n format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split(\n '_'\n ),\n isFormat: /(წინა|შემდეგ)/,\n },\n weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),\n weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[დღეს] LT[-ზე]',\n nextDay: '[ხვალ] LT[-ზე]',\n lastDay: '[გუშინ] LT[-ზე]',\n nextWeek: '[შემდეგ] dddd LT[-ზე]',\n lastWeek: '[წინა] dddd LT-ზე',\n sameElse: 'L',\n },\n relativeTime: {\n future: function (s) {\n return s.replace(/(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/, function (\n $0,\n $1,\n $2\n ) {\n return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში';\n });\n },\n past: function (s) {\n if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) {\n return s.replace(/(ი|ე)$/, 'ის წინ');\n }\n if (/წელი/.test(s)) {\n return s.replace(/წელი$/, 'წლის წინ');\n }\n return s;\n },\n s: 'რამდენიმე წამი',\n ss: '%d წამი',\n m: 'წუთი',\n mm: '%d წუთი',\n h: 'საათი',\n hh: '%d საათი',\n d: 'დღე',\n dd: '%d დღე',\n M: 'თვე',\n MM: '%d თვე',\n y: 'წელი',\n yy: '%d წელი',\n },\n dayOfMonthOrdinalParse: /0|1-ლი|მე-\\d{1,2}|\\d{1,2}-ე/,\n ordinal: function (number) {\n if (number === 0) {\n return number;\n }\n if (number === 1) {\n return number + '-ლი';\n }\n if (\n number < 20 ||\n (number <= 100 && number % 20 === 0) ||\n number % 100 === 0\n ) {\n return 'მე-' + number;\n }\n return number + '-ე';\n },\n week: {\n dow: 1,\n doy: 7,\n },\n});\n","//! moment.js locale configuration\n//! locale : Esperanto [eo]\n//! author : Colin Dean : https://github.com/colindean\n//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia\n//! comment : miestasmia corrected the translation by colindean\n//! comment : Vivakvo corrected the translation by colindean and miestasmia\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('eo', {\n months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'),\n weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'),\n weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'),\n weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: '[la] D[-an de] MMMM, YYYY',\n LLL: '[la] D[-an de] MMMM, YYYY HH:mm',\n LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm',\n llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm',\n },\n meridiemParse: /[ap]\\.t\\.m/i,\n isPM: function (input) {\n return input.charAt(0).toLowerCase() === 'p';\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'p.t.m.' : 'P.T.M.';\n } else {\n return isLower ? 'a.t.m.' : 'A.T.M.';\n }\n },\n calendar: {\n sameDay: '[Hodiaŭ je] LT',\n nextDay: '[Morgaŭ je] LT',\n nextWeek: 'dddd[n je] LT',\n lastDay: '[Hieraŭ je] LT',\n lastWeek: '[pasintan] dddd[n je] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'post %s',\n past: 'antaŭ %s',\n s: 'kelkaj sekundoj',\n ss: '%d sekundoj',\n m: 'unu minuto',\n mm: '%d minutoj',\n h: 'unu horo',\n hh: '%d horoj',\n d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo\n dd: '%d tagoj',\n M: 'unu monato',\n MM: '%d monatoj',\n y: 'unu jaro',\n yy: '%d jaroj',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}a/,\n ordinal: '%da',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","import { invariant } from 'ts-invariant';\nimport { equal } from '@wry/equality';\n\nimport { NetworkStatus, isNetworkRequestInFlight } from './networkStatus';\nimport {\n cloneDeep,\n getOperationDefinition,\n Observable,\n Observer,\n ObservableSubscription,\n iterateObserversSafely,\n isNonEmptyArray,\n} from '../utilities';\nimport { ApolloError } from '../errors';\nimport { QueryManager } from './QueryManager';\nimport { ApolloQueryResult, OperationVariables } from './types';\nimport {\n WatchQueryOptions,\n FetchMoreQueryOptions,\n SubscribeToMoreOptions,\n} from './watchQueryOptions';\nimport { Reobserver } from './Reobserver';\nimport { QueryInfo } from './QueryInfo';\n\nexport interface FetchMoreOptions<\n TData = any,\n TVariables = OperationVariables\n> {\n updateQuery?: (\n previousQueryResult: TData,\n options: {\n fetchMoreResult?: TData;\n variables?: TVariables;\n },\n ) => TData;\n}\n\nexport interface UpdateQueryOptions {\n variables?: TVariables;\n}\n\nlet warnedAboutUpdateQuery = false;\n\nexport class ObservableQuery<\n TData = any,\n TVariables = OperationVariables\n> extends Observable> {\n public readonly options: WatchQueryOptions;\n public readonly queryId: string;\n public readonly queryName?: string;\n\n // Computed shorthand for this.options.variables, preserved for\n // backwards compatibility.\n public get variables(): TVariables | undefined {\n return this.options.variables;\n }\n\n private isTornDown: boolean;\n private queryManager: QueryManager;\n private observers = new Set>>();\n private subscriptions = new Set();\n\n private lastResult: ApolloQueryResult;\n private lastResultSnapshot: ApolloQueryResult;\n private lastError: ApolloError;\n private queryInfo: QueryInfo;\n\n constructor({\n queryManager,\n queryInfo,\n options,\n }: {\n queryManager: QueryManager;\n queryInfo: QueryInfo;\n options: WatchQueryOptions;\n }) {\n super((observer: Observer>) =>\n this.onSubscribe(observer),\n );\n\n // active state\n this.isTornDown = false;\n\n // query information\n this.options = options;\n this.queryId = queryManager.generateQueryId();\n\n const opDef = getOperationDefinition(options.query);\n this.queryName = opDef && opDef.name && opDef.name.value;\n\n // related classes\n this.queryManager = queryManager;\n\n this.queryInfo = queryInfo;\n }\n\n public result(): Promise> {\n return new Promise((resolve, reject) => {\n const observer: Observer> = {\n next: (result: ApolloQueryResult) => {\n resolve(result);\n\n // Stop the query within the QueryManager if we can before\n // this function returns.\n //\n // We do this in order to prevent observers piling up within\n // the QueryManager. Notice that we only fully unsubscribe\n // from the subscription in a setTimeout(..., 0) call. This call can\n // actually be handled by the browser at a much later time. If queries\n // are fired in the meantime, observers that should have been removed\n // from the QueryManager will continue to fire, causing an unnecessary\n // performance hit.\n this.observers.delete(observer);\n if (!this.observers.size) {\n this.queryManager.removeQuery(this.queryId);\n }\n\n setTimeout(() => {\n subscription.unsubscribe();\n }, 0);\n },\n error: reject,\n };\n const subscription = this.subscribe(observer);\n });\n }\n\n public getCurrentResult(saveAsLastResult = true): ApolloQueryResult {\n const { lastResult } = this;\n\n const networkStatus =\n this.queryInfo.networkStatus ||\n (lastResult && lastResult.networkStatus) ||\n NetworkStatus.ready;\n\n const result: ApolloQueryResult = {\n ...lastResult,\n loading: isNetworkRequestInFlight(networkStatus),\n networkStatus,\n };\n\n if (this.isTornDown) {\n return result;\n }\n\n const { fetchPolicy = 'cache-first' } = this.options;\n if (fetchPolicy === 'no-cache' ||\n fetchPolicy === 'network-only') {\n // Similar to setting result.partial to false, but taking advantage\n // of the falsiness of missing fields.\n delete result.partial;\n } else if (\n !result.data ||\n // If this.options.query has @client(always: true) fields, we cannot\n // trust result.data, since it was read from the cache without\n // running local resolvers (and it's too late to run resolvers now,\n // since we must return a result synchronously). TODO In the future\n // (after Apollo Client 3.0), we should find a way to trust\n // this.lastResult in more cases, and read from the cache only in\n // cases when no result has been received yet.\n !this.queryManager.transform(this.options.query).hasForcedResolvers\n ) {\n const diff = this.queryInfo.getDiff();\n result.data = (\n diff.complete ||\n this.options.returnPartialData\n ) ? diff.result : void 0;\n if (diff.complete) {\n // If the diff is complete, and we're using a FetchPolicy that\n // terminates after a complete cache read, we can assume the next\n // result we receive will have NetworkStatus.ready and !loading.\n if (result.networkStatus === NetworkStatus.loading &&\n (fetchPolicy === 'cache-first' ||\n fetchPolicy === 'cache-only')) {\n result.networkStatus = NetworkStatus.ready;\n result.loading = false;\n }\n delete result.partial;\n } else {\n result.partial = true;\n }\n }\n\n if (saveAsLastResult) {\n this.updateLastResult(result);\n }\n\n return result;\n }\n\n // Compares newResult to the snapshot we took of this.lastResult when it was\n // first received.\n public isDifferentFromLastResult(newResult: ApolloQueryResult) {\n return !equal(this.lastResultSnapshot, newResult);\n }\n\n // Returns the last result that observer.next was called with. This is not the same as\n // getCurrentResult! If you're not sure which you need, then you probably need getCurrentResult.\n public getLastResult(): ApolloQueryResult {\n return this.lastResult;\n }\n\n public getLastError(): ApolloError {\n return this.lastError;\n }\n\n public resetLastResults(): void {\n delete this.lastResult;\n delete this.lastResultSnapshot;\n delete this.lastError;\n this.isTornDown = false;\n }\n\n public resetQueryStoreErrors() {\n this.queryManager.resetErrors(this.queryId);\n }\n\n /**\n * Update the variables of this observable query, and fetch the new results.\n * This method should be preferred over `setVariables` in most use cases.\n *\n * @param variables: The new set of variables. If there are missing variables,\n * the previous values of those variables will be used.\n */\n public refetch(variables?: Partial): Promise> {\n const reobserveOptions: Partial> = {\n // Always disable polling for refetches.\n pollInterval: 0,\n };\n\n // Unless the provided fetchPolicy always consults the network\n // (no-cache, network-only, or cache-and-network), override it with\n // network-only to force the refetch for this fetchQuery call.\n const { fetchPolicy } = this.options;\n if (fetchPolicy !== 'no-cache' &&\n fetchPolicy !== 'cache-and-network') {\n reobserveOptions.fetchPolicy = 'network-only';\n // Go back to the original options.fetchPolicy after this refetch.\n reobserveOptions.nextFetchPolicy = fetchPolicy || \"cache-first\";\n }\n\n if (variables && !equal(this.options.variables, variables)) {\n // Update the existing options with new variables\n reobserveOptions.variables = this.options.variables = {\n ...this.options.variables,\n ...variables,\n } as TVariables;\n }\n\n return this.newReobserver(false).reobserve(\n reobserveOptions,\n NetworkStatus.refetch,\n );\n }\n\n public fetchMore(\n fetchMoreOptions: FetchMoreQueryOptions &\n FetchMoreOptions,\n ): Promise> {\n const combinedOptions = {\n ...(fetchMoreOptions.query ? fetchMoreOptions : {\n ...this.options,\n ...fetchMoreOptions,\n variables: {\n ...this.options.variables,\n ...fetchMoreOptions.variables,\n },\n }),\n // The fetchMore request goes immediately to the network and does\n // not automatically write its result to the cache (hence no-cache\n // instead of network-only), because we allow the caller of\n // fetchMore to provide an updateQuery callback that determines how\n // the data gets written to the cache.\n fetchPolicy: \"no-cache\",\n } as WatchQueryOptions;\n\n const qid = this.queryManager.generateQueryId();\n\n // Simulate a loading result for the original query with\n // result.networkStatus === NetworkStatus.fetchMore.\n if (combinedOptions.notifyOnNetworkStatusChange) {\n this.queryInfo.networkStatus = NetworkStatus.fetchMore;\n this.observe();\n }\n\n return this.queryManager.fetchQuery(\n qid,\n combinedOptions,\n NetworkStatus.fetchMore,\n ).then(fetchMoreResult => {\n const data = fetchMoreResult.data as TData;\n const { updateQuery } = fetchMoreOptions;\n\n if (updateQuery) {\n if (process.env.NODE_ENV !== \"production\" &&\n !warnedAboutUpdateQuery) {\n invariant.warn(\n`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(previous => updateQuery(previous, {\n fetchMoreResult: data,\n variables: combinedOptions.variables as TVariables,\n }));\n } else {\n // If we're using a field policy instead of updateQuery, the only\n // thing we need to do is write the new data to the cache using\n // combinedOptions.variables (instead of this.variables, which is\n // what this.updateQuery uses, because it works by abusing the\n // original field value, keyed by the original variables).\n this.queryManager.cache.writeQuery({\n query: combinedOptions.query,\n variables: combinedOptions.variables,\n data,\n });\n }\n\n return fetchMoreResult as ApolloQueryResult;\n\n }).finally(() => {\n this.queryManager.stopQuery(qid);\n this.reobserve();\n });\n }\n\n // XXX the subscription variables are separate from the query variables.\n // if you want to update subscription variables, right now you have to do that separately,\n // and you can only do it by stopping the subscription and then subscribing again with new variables.\n public subscribeToMore<\n TSubscriptionData = TData,\n TSubscriptionVariables = TVariables\n >(\n options: SubscribeToMoreOptions<\n TData,\n TSubscriptionVariables,\n TSubscriptionData\n >,\n ) {\n const subscription = this.queryManager\n .startGraphQLSubscription({\n query: options.document,\n variables: options.variables,\n context: options.context,\n })\n .subscribe({\n next: (subscriptionData: { data: TSubscriptionData }) => {\n const { updateQuery } = options;\n if (updateQuery) {\n this.updateQuery(\n (previous, { variables }) =>\n updateQuery(previous, {\n subscriptionData,\n variables,\n }),\n );\n }\n },\n error: (err: any) => {\n if (options.onError) {\n options.onError(err);\n return;\n }\n invariant.error('Unhandled GraphQL subscription error', err);\n },\n });\n\n this.subscriptions.add(subscription);\n\n return () => {\n if (this.subscriptions.delete(subscription)) {\n subscription.unsubscribe();\n }\n };\n }\n\n public setOptions(\n newOptions: Partial>,\n ): Promise> {\n return this.reobserve(newOptions);\n }\n\n /**\n * This is for *internal* use only. Most users should instead use `refetch`\n * in order to be properly notified of results even when they come from cache.\n *\n * Update the variables of this observable query, and fetch the new results\n * if they've changed. If you want to force new results, use `refetch`.\n *\n * Note: the `next` callback will *not* fire if the variables have not changed\n * or if the result is coming from cache.\n *\n * Note: the promise will return the old results immediately if the variables\n * have not changed.\n *\n * Note: the promise will return null immediately if the query is not active\n * (there are no subscribers).\n *\n * @private\n *\n * @param variables: The new set of variables. If there are missing variables,\n * the previous values of those variables will be used.\n *\n * @param tryFetch: Try and fetch new results even if the variables haven't\n * changed (we may still just hit the store, but if there's nothing in there\n * this will refetch)\n */\n public setVariables(\n variables: TVariables,\n ): Promise | void> {\n if (equal(this.variables, variables)) {\n // If we have no observers, then we don't actually want to make a network\n // request. As soon as someone observes the query, the request will kick\n // off. For now, we just store any changes. (See #1077)\n return this.observers.size\n ? this.result()\n : Promise.resolve();\n }\n\n this.options.variables = variables;\n\n // See comment above\n if (!this.observers.size) {\n return Promise.resolve();\n }\n\n let { fetchPolicy = 'cache-first' } = this.options;\n const reobserveOptions: Partial> = {\n fetchPolicy,\n variables,\n };\n\n if (fetchPolicy !== 'cache-first' &&\n fetchPolicy !== 'no-cache' &&\n fetchPolicy !== 'network-only') {\n reobserveOptions.fetchPolicy = 'cache-and-network';\n reobserveOptions.nextFetchPolicy = fetchPolicy;\n }\n\n return this.reobserve(\n reobserveOptions,\n NetworkStatus.setVariables,\n );\n }\n\n public updateQuery(\n mapFn: (\n previousQueryResult: TData,\n options: Pick, \"variables\">,\n ) => TData,\n ): void {\n const { queryManager } = this;\n const { result } = queryManager.cache.diff({\n query: this.options.query,\n variables: this.variables,\n previousResult: this.lastResult?.data,\n returnPartialData: true,\n optimistic: false,\n });\n\n const newResult = mapFn(result!, {\n variables: (this as any).variables,\n });\n\n if (newResult) {\n queryManager.cache.writeQuery({\n query: this.options.query,\n data: newResult,\n variables: this.variables,\n });\n\n queryManager.broadcastQueries();\n }\n }\n\n public startPolling(pollInterval: number) {\n this.getReobserver().updateOptions({ pollInterval });\n }\n\n public stopPolling() {\n if (this.reobserver) {\n this.reobserver.updateOptions({ pollInterval: 0 });\n }\n }\n\n private updateLastResult(newResult: ApolloQueryResult) {\n const 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\n private onSubscribe(observer: Observer>) {\n // Subscribing using this.observer will create an infinite notificaion\n // loop, but the intent of broadcasting results to all the other\n // this.observers can be satisfied without doing anything, which is\n // why we do not bother throwing an error here.\n if (observer === this.observer) {\n return () => {};\n }\n\n // Zen Observable has its own error function, so in order to log correctly\n // we need to provide a custom error callback.\n try {\n var subObserver = (observer as any)._subscription._observer;\n if (subObserver && !subObserver.error) {\n subObserver.error = defaultSubscriptionObserverErrorCallback;\n }\n } catch {}\n\n const first = !this.observers.size;\n this.observers.add(observer);\n\n // Deliver most recent error or result.\n if (this.lastError) {\n observer.error && observer.error(this.lastError);\n } else if (this.lastResult) {\n observer.next && observer.next(this.lastResult);\n }\n\n // Initiate observation of this query if it hasn't been reported to\n // the QueryManager yet.\n if (first) {\n this.reobserve().catch(_ => {\n // Blindly catching here prevents unhandled promise rejections,\n // and is safe because the ObservableQuery handles this error with\n // this.observer.error, so we're not just swallowing the error by\n // ignoring it here.\n });\n }\n\n return () => {\n if (this.observers.delete(observer) && !this.observers.size) {\n this.tearDownQuery();\n }\n };\n }\n\n private reobserver?: Reobserver;\n\n private getReobserver(): Reobserver {\n return this.reobserver || (this.reobserver = this.newReobserver(true));\n }\n\n private newReobserver(shareOptions: boolean) {\n const { queryManager, queryId } = this;\n queryManager.setObservableQuery(this);\n return new Reobserver(\n this.observer,\n // Sharing options allows this.reobserver.options to be ===\n // this.options, so we don't have to worry about synchronizing the\n // properties of two distinct objects.\n shareOptions ? this.options : { ...this.options },\n (currentOptions, newNetworkStatus) => {\n queryManager.setObservableQuery(this);\n return queryManager.fetchQueryObservable(\n queryId,\n currentOptions,\n newNetworkStatus,\n );\n },\n // Avoid polling during SSR and when the query is already in flight.\n !queryManager.ssrMode && (\n () => !isNetworkRequestInFlight(this.queryInfo.networkStatus))\n );\n }\n\n public reobserve(\n newOptions?: Partial>,\n newNetworkStatus?: NetworkStatus,\n ): Promise> {\n this.isTornDown = false;\n return this.getReobserver().reobserve(newOptions, newNetworkStatus);\n }\n\n // Pass the current result to this.observer.next without applying any\n // fetch policies, bypassing the Reobserver.\n private observe() {\n // Passing false is important so that this.getCurrentResult doesn't\n // save the fetchMore result as this.lastResult, causing it to be\n // ignored due to the this.isDifferentFromLastResult check in\n // this.observer.next.\n this.observer.next(this.getCurrentResult(false));\n }\n\n private observer = {\n next: (result: ApolloQueryResult) => {\n if (this.lastError || this.isDifferentFromLastResult(result)) {\n this.updateLastResult(result);\n iterateObserversSafely(this.observers, 'next', result);\n }\n },\n\n error: (error: ApolloError) => {\n // Since we don't get the current result on errors, only the error, we\n // must mirror the updates that occur in QueryStore.markQueryError here\n this.updateLastResult({\n ...this.lastResult,\n error,\n errors: error.graphQLErrors,\n networkStatus: NetworkStatus.error,\n loading: false,\n });\n\n iterateObserversSafely(this.observers, 'error', this.lastError = error);\n },\n };\n\n public hasObservers() {\n return this.observers.size > 0;\n }\n\n private tearDownQuery() {\n if (this.isTornDown) return;\n\n if (this.reobserver) {\n this.reobserver.stop();\n delete this.reobserver;\n }\n\n // Since the user-provided context object can retain arbitrarily large\n // amounts of memory, we delete it when the ObservableQuery is torn\n // down, to avoid the possibility of memory leaks.\n delete this.options.context;\n\n // stop all active GraphQL subscriptions\n this.subscriptions.forEach(sub => sub.unsubscribe());\n this.subscriptions.clear();\n\n this.queryManager.stopQuery(this.queryId);\n\n this.observers.clear();\n\n this.isTornDown = true;\n }\n}\n\nfunction defaultSubscriptionObserverErrorCallback(error: ApolloError) {\n invariant.error('Unhandled error', error.message, error.stack);\n}\n","import { WatchQueryOptions } from './watchQueryOptions';\nimport { NetworkStatus } from './networkStatus';\nimport { ApolloQueryResult } from './types';\nimport { Observer, Concast, compact } from '../utilities';\nimport { invariant } from 'ts-invariant';\n\n// Given that QueryManager#fetchQueryObservable returns only a single\n// query's worth of results, other code must be responsible for repeatedly\n// calling fetchQueryObservable, while ensuring that the ObservableQuery\n// consuming those results remains subscribed to the concatenation of all\n// the observables returned by fetchQueryObservable. That responsibility\n// falls to this Reobserver class. As a bonus, the Reobserver class is\n// perfectly poised to handle polling logic, since polling is essentially\n// repeated reobservation. In principle, this code could have remained in\n// the ObservableQuery class, but I felt it would be easier to explain and\n// understand reobservation if it was confined to a separate class.\nexport class Reobserver {\n constructor(\n private observer: Observer>,\n private options: WatchQueryOptions,\n // Almost certainly just a wrapper function around\n // QueryManager#fetchQueryObservable, but this small dose of\n // indirection means the Reobserver doesn't have to know/assume\n // anything about the QueryManager class.\n private fetch: (\n options: WatchQueryOptions,\n newNetworkStatus?: NetworkStatus,\n ) => Concast>,\n // If we're polling, there may be times when we should avoid fetching,\n // such as when the query is already in flight, or polling has been\n // completely disabled for server-side rendering. Passing false for\n // this parameter disables polling completely, and passing a boolean\n // function allows determining fetch safety dynamically.\n private shouldFetch: false | (() => boolean),\n ) {}\n\n private concast?: Concast>;\n\n public reobserve(\n newOptions?: Partial>,\n newNetworkStatus?: NetworkStatus,\n ): Promise> {\n if (newOptions) {\n this.updateOptions(newOptions);\n } else {\n // When we call this.updateOptions(newOptions) in the branch above,\n // it takes care of calling this.updatePolling(). In this branch, we\n // still need to update polling, even if there were no newOptions.\n this.updatePolling();\n }\n\n const concast = this.fetch(this.options, newNetworkStatus);\n\n if (this.concast) {\n // We use the {add,remove}Observer methods directly to avoid\n // wrapping observer with an unnecessary SubscriptionObserver\n // object, in part so that we can remove it here without triggering\n // any unsubscriptions, because we just want to ignore the old\n // observable, not prematurely shut it down, since other consumers\n // may be awaiting this.concast.promise.\n this.concast.removeObserver(this.observer, true);\n }\n\n concast.addObserver(this.observer);\n\n return (this.concast = concast).promise;\n }\n\n public updateOptions(newOptions: Partial>) {\n Object.assign(this.options, compact(newOptions));\n this.updatePolling();\n return this;\n }\n\n public stop() {\n if (this.concast) {\n this.concast.removeObserver(this.observer);\n delete this.concast;\n }\n\n if (this.pollingInfo) {\n clearTimeout(this.pollingInfo.timeout);\n this.options.pollInterval = 0;\n this.updatePolling();\n }\n }\n\n private pollingInfo?: {\n interval: number;\n timeout: ReturnType;\n };\n\n // Turns polling on or off based on this.options.pollInterval.\n private updatePolling() {\n const {\n pollingInfo,\n options: {\n pollInterval,\n },\n } = this;\n\n if (!pollInterval) {\n if (pollingInfo) {\n clearTimeout(pollingInfo.timeout);\n delete this.pollingInfo;\n }\n return;\n }\n\n if (pollingInfo &&\n pollingInfo.interval === pollInterval) {\n return;\n }\n\n invariant(\n pollInterval,\n 'Attempted to start a polling query without a polling interval.',\n );\n\n // Go no further if polling is disabled.\n if (this.shouldFetch === false) {\n return;\n }\n\n const info = pollingInfo || (\n this.pollingInfo = {} as Reobserver[\"pollingInfo\"]\n )!;\n\n info.interval = pollInterval;\n\n const maybeFetch = () => {\n if (this.pollingInfo) {\n if (this.shouldFetch && this.shouldFetch()) {\n this.reobserve({\n fetchPolicy: \"network-only\",\n nextFetchPolicy: this.options.fetchPolicy || \"cache-first\",\n }, NetworkStatus.poll).then(poll, poll);\n } else {\n poll();\n }\n };\n };\n\n const poll = () => {\n const info = this.pollingInfo;\n if (info) {\n clearTimeout(info.timeout);\n info.timeout = setTimeout(maybeFetch, info.interval);\n }\n };\n\n poll();\n }\n}\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default {\r\n account: {\r\n accountNameError: 'Der Kontoname muss mindestens (1) Zeichen haben',\r\n accountAddressError: 'Sie müssen eine gültige Adresse eintragen',\r\n accountCityError: 'Sie müssen einen gültigen Städtenamen eingeben',\r\n accountZipPostalError: 'Es muss eine gültige Postleitzahl/Postleitzahl eingegeben werden',\r\n accountRegionError: \"Sie müssen eine gültige Region eingeben\",\r\n accountList: { title: \"Kontoliste\" },\r\n addNewReportingEmail: \"Neue Berichts-E-Mail hinzufügen\",\r\n baitListWarning: \"Wenn Sie die Köderliste Ihres Landes im Dropdown-Menü unten nicht sehen können, besuchen Sie bitte den folgenden Link, um sie hinzuzufügen.\",\r\n createNewAccount: \"Neuen Account erstellen\",\r\n newAccount: \"Neues Konto\",\r\n createAccount: \"Benutzerkonto erstellen\",\r\n disableAccount: \"Konto deaktivieren\",\r\n enableAccount: \"Konto aktivieren\",\r\n editAccount: \"Konto bearbeiten\",\r\n editAccountWarningMessage: \"Sind Sie sicher, dass Sie die Zweigstellenmitgliedschaft des Kontos aktualisieren möchten: {{accountName}}? Die Aktualisierung der Filialmitgliedschaft zu diesem Zeitpunkt kann zum Verlust ausstehender Besuchsdaten führen. Um die Datensicherheit zu gewährleisten, bestätigen Sie bitte, dass es keine ausstehenden Besuche bei den folgenden Benutzern gibt: {{users}}\",\r\n editAccountWarningMessageNoUser: \"Möchten Sie die Zweigstellenmitgliedschaft des Kontos wirklich aktualisieren: {{accountName}}? Um die Datensicherheit zu gewährleisten, bestätigen Sie bitte, dass keine ausstehenden Besuche vorhanden sind\",\r\n eventsMap: \"Veranstaltungskarte\",\r\n heatMap: \"Heatmap\",\r\n accountInfo: \"Kontoinformation\",\r\n accountSpecifications: \"Kontospezifikationen\",\r\n clientContactInfo: \"Kundenkontaktinformationen\",\r\n devicesWithEvents: \"Geräte mit Ereignissen\",\r\n devicesWithoutEvents: \"Geräte ohne Ereignisse\",\r\n proofOfService: \"Nachweis des Dienstes\",\r\n selectProofOfService: \"Servicenachweis auswählen\",\r\n customizeServiceReport: \"Servicebericht anpassen\",\r\n serviceFrequency: \"Servicehäufigkeit\",\r\n serviceRules: \"Serviceregeln\",\r\n serviceRulesInfo:\r\n \"Diese Regeln legen die Prüfpflicht für einen Gerätetyp auf einem Konto fest. Beispielsweise können Inspektionen für alle Ambush-Geräte auf „Konto 1“ so eingestellt werden, dass sie nur durchgeführt werden, wenn das Gerät Aktivitäten protokolliert, oder sie können für jeden Besuch obligatorisch gemacht werden.\",\r\n size: \"Größe (Quadratfuß)\",\r\n sizeMetric: \"Größe (Quadratmeter)\",\r\n industryClassification: \"Branche/Klassifizierung\",\r\n accountLocation: \"Kontostandort\",\r\n deviceInspectionDetail: \"Details zur Geräteinspektion\",\r\n deviceInspectionSummary: \"Zusammenfassung der Geräteinspektion\",\r\n generalCommentsInstructions: \"Allgemeine Bemerkungen/Anweisungen\",\r\n productApplicationDetail: \"Produktanwendungsdetails\",\r\n productApplicationSummary: \"Zusammenfassung der Produktanwendung\",\r\n serviceDetail: \"Servicedetails\",\r\n floorPlan: \"Gebäudeplan\",\r\n deleteFloorPlan: \"Lösche Bild\",\r\n rotateFloorPlan: \"Drehe Nach Rechts\",\r\n updateFloorPlan: \"Grundriss Aktualisieren\",\r\n reportingEmails: \"Melde-E-Mails\",\r\n reportingEmailNote: \"Die oben aufgeführten E-Mail-Adressen erhalten jedes Mal eine Benachrichtigungs-E-Mail, wenn ein Servicebesuch hochgeladen wird.\",\r\n scheduledVisits: \"Geplante Besuche\",\r\n confirmDisableTitle: \"Möchten Sie dieses Konto wirklich deaktivieren?\",\r\n confirmDisableMessage:\r\n \"Deaktivierte Konten können nicht auf Ihr Mobilgerät heruntergeladen oder über das Dashboard Ihrer Organisation angezeigt werden. Alle zuvor bestehenden Kontobesuche können jedoch weiterhin abgeschlossen und im Portal Ihrer Organisation veröffentlicht werden.\",\r\n confirmReactivateBranchTitle: \"Filiale reaktivieren\",\r\n confirmReactivateBranchMessage: \"Die Filiale dieses Kontos ist deaktiviert und muss reaktiviert werden, um fortzufahren, siehe die Detailseite der Filiale oder die Filialliste\",\r\n visitsThisYear: \"Besuche dieses Jahr\",\r\n manageAccounts: \"Konten verwalten\",\r\n serviceRuleOptions: {\r\n baitingRules: \"Köderregeln\",\r\n days: \"Tage\",\r\n deviceRules: \"Geräteregeln\",\r\n trappingRules: \"Trapping-Regeln\",\r\n visualInspection: \"Visuelle Inspektion\",\r\n replaceBait: \"Köder ersetzen\",\r\n bait: {\r\n definedDays: \"Ersetzen alle _ Tage\",\r\n withActivity: \"Bei Bedarf ersetzen\",\r\n },\r\n device: {\r\n definedDays: \"Alle _ Tage\",\r\n everyVisit: \"Jeder Besuch\",\r\n everyOtherVisit: \"Jeder zweite Besuch\",\r\n withActivity: \"Mit irgendwelchen Ereignissen\",\r\n },\r\n trap: {\r\n definedDays: \"Lockstoffe alle _ Tage ersetzen\",\r\n everyVisit: \"Inspektion bei jedem Besuch\",\r\n everyOtherVisit: \"Inspektion bei jedem zweiten Besuch\",\r\n withActivity: \"Mit irgendwelchen Ereignissen\",\r\n },\r\n },\r\n serviceRulesApplyToModels: \"Die Serviceregeln gelten für die folgenden Modelle\",\r\n },\r\n baitType: {\r\n activeIngredientPercentage: \"Wirkstoffanteil\",\r\n addRodenticideToCompare: \"Rodentizid zum Vergleich hinzufügen\",\r\n baitApplied: \"Köder angewendet\",\r\n baitMaterial: \"Ködermaterial\",\r\n baitTypeName: \"Name des Ködertyps\",\r\n confirmDisableTitle: \"Möchten Sie diesen Ködertyp wirklich deaktivieren?\",\r\n confirmDisableMessage: \"Inaktive Ködertypen sind in der App nicht verfügbar.\",\r\n confirmEnableTitle: \"Sind Sie sicher, dass Sie diesen Ködertyp aktivieren möchten?\",\r\n confirmEnableMessage: \"Aktive Ködertypen sind in der App verfügbar.\",\r\n contactSales: \"Vertrieb kontaktieren\",\r\n editBaitType: \"Ködertyp bearbeiten\",\r\n errorInvalidBaitType: \"Ungültige Ködertyp-ID.\",\r\n epaNumber: \"EPA #\",\r\n grams: \"Gramm (g)\",\r\n productLineUp: \"Produktpalette\",\r\n rodenticideList: \"Liste der Rodentizide\",\r\n rodenticideDescription: {\r\n contrac: \"Hervorragende Akzeptanz von Nagetieren\",\r\n final: \"Extrudierter Köder mit Brodifacoum\",\r\n detex: \"Ungiftiger Überwachungs- und Tracking-Köder\",\r\n ditrac: \"Extrudierter Blox mit Diphacinon\",\r\n fastrac: \"Unser am schnellsten wirkendes Rodentizid Blox\",\r\n formus: \"15g Bordifacoum BLOX kontrolliert Mäuse\",\r\n liquaTox: \"Wasserlöslicher flüssiger Köder\",\r\n pcq: \"Bauköder für Wühlmäuse und mehr\",\r\n terad3: \"Premier-Formulierung mit Vitamin D3\",\r\n zp: \"Tötet Ratten, Mäuse & Gophers\",\r\n },\r\n form: \"Bilden\",\r\n inputNumberAsPercentage: \"Zahl in Prozent eingeben, zB 0.1\",\r\n manageBaitList: \"Köderliste verwalten\",\r\n manageBaitTypes: \"Köderarten verwalten\",\r\n newBaitType: \"Neuer Ködertyp\",\r\n pieceSize: \"Stückgröße\",\r\n provider: \"Anbieter\",\r\n quantityApplied: \"Angewandte Menge\",\r\n selectRodenticide: \"Rodentizid auswählen\",\r\n },\r\n branch: {\r\n newBranch: \"Neue Abteilung\",\r\n manageBranches: \"Filialen verwalten\",\r\n branchList: {\r\n title: \"Filialliste\",\r\n },\r\n createNewBranch: \"Neue Filiale erstellen\",\r\n branchInfo: \"Filialinfo\",\r\n branchAddress: \"Anschrift der Filiale\",\r\n branchLogo: \"Filiallogo\",\r\n editBranch: \"Filiale bearbeiten\",\r\n disableBranch: \"Filiale deaktivieren\",\r\n enableBranch: \"Verzweigung aktivieren\",\r\n branchesLocation: \"Standort der Filialen\",\r\n confirmDisableTitle: \"Möchten Sie diesen Branch wirklich deaktivieren?\",\r\n confirmEnableTitle: \"Möchten Sie diese Verzweigung wirklich aktivieren?\",\r\n confirmDisableMessage:\r\n \"Konten, die zu deaktivierten Zweigstellen gehören, können nicht auf Ihr Mobilgerät heruntergeladen oder über das Dashboard Ihrer Organisation angezeigt werden. Alle zuvor bestehenden Kontobesuche können jedoch weiterhin abgeschlossen und im Portal Ihrer Organisation veröffentlicht werden.\",\r\n confirmEnableMessage: \"Die Konten, die zu dieser Filiale gehören, müssen manuell aktiviert werden, siehe Liste der Filialkonten.\",\r\n },\r\n cardTable: {\r\n searchBar: \"Suchleiste...\"\r\n },\r\n changePassword: {\r\n title: \"Kennwort ändern\",\r\n currentPassword: \"Jetziges Passwort\",\r\n },\r\n device: {\r\n manageDevices: \"Geräte verwalten\",\r\n deviceDetails: \"Gerätedetails\",\r\n deviceName: \"Gerätename\",\r\n deviceNameTooltip: \"Captures nach Gerätename filtern\",\r\n deviceTypeTooltip: \"Filtern Sie Aufnahmen nach Gerätetyp\",\r\n deviceInformation: \"Geräteinformation\",\r\n disableDevice: \"Gerät deaktivieren\",\r\n editDevice: \"Gerät bearbeiten\",\r\n enableDevice: \"Gerät aktivieren\",\r\n eventFrequency: \"Ereignishäufigkeit\",\r\n lookup: \"Gerätesuche\",\r\n lookupHelperText:\r\n \"Bitte geben Sie die Seriennummer ein, um die Gerätedetails zu erhalten\",\r\n lastServiced: \"Zuletzt gewartet\",\r\n lifetimeEvents: \"Lebenslange Ereignisse\",\r\n lifetimeEventsTooltip: \"Anzahl der Ereignisse während der Gerätelebensdauer\",\r\n deviceTypeBreakdown: \"Aufschlüsselung des Gerätetyps\",\r\n deviceLocation: \"Gerätestandort\",\r\n deviceMapInfo: \"Während der Technikerdienste sind mobile Standortberechtigungen erforderlich, um Koordinaten für diese Karte zu erhalten!\",\r\n deviceSerial: \"Geräteserien\",\r\n serialNumber: \"Ordnungsnummer\",\r\n temperature: \"Temperatur\",\r\n highTemp: \"Hohe Temp.\",\r\n mediumTemp: \"Mittlere Temp.\",\r\n lowTemp: \"Niedrige Temp.\",\r\n deviceType: \"Gerätetyp\",\r\n confirmDisableTitle: \"Möchten Sie dieses Gerät wirklich deaktivieren?\",\r\n confirmDisableMessage: \"Inaktive Geräte sind in der App nicht verfügbar.\",\r\n deviceList: {\r\n title: \"Geräteliste\",\r\n accountEvents: \"Ereignisse im Konto\",\r\n currentAccountCaptures: \"Girokontoerfassungen\",\r\n currentAccountCapturesTooltip: \"Anzahl der Aufnahmen, seit das Gerät dem aktuellen Konto beigetreten ist\",\r\n currentAccountEvents: \"Aktuelle Kontoereignisse\",\r\n currentAccountTooltip: \"Anzahl der Ereignisse, seit das Gerät dem aktuellen Konto beigetreten ist\",\r\n battery: \"Batterie\",\r\n good: \"Gut\",\r\n medium: \"Mittel\",\r\n bad: \"Schlecht\",\r\n ready: \"Bereit\",\r\n replace: \"Ersetzen\",\r\n },\r\n deviceLookupResults: {\r\n title: \"Ergebnisse der Gerätesuche\",\r\n firmwareVersion: \"Firmware Version\",\r\n hardwareVersion: \"Hardware Version\",\r\n },\r\n deviceServiceHistory: { title: \"Gerätedienstverlauf\" },\r\n deviceStatusLog: {\r\n title: \"Gerätestatusprotokoll\",\r\n viewedTime: \"Angesehene Zeit\",\r\n },\r\n sensorTemperature: {\r\n title: \"Sensortemperatur\",\r\n averageTemp: \"Durchschnittliche Temp.\",\r\n },\r\n totalActiveDevices: \"Aktive Geräte insgesamt\",\r\n weeklyTooltip: \"Klicken Sie hier, um wöchentliche Datumsbereiche auszuwählen\",\r\n fullRangeTooltip: \"Klicken Sie hier, um den vollständigen Ereignisverlauf anzuzeigen\",\r\n tRex: \"T-Rex\",\r\n },\r\n forgotPassword: {\r\n title: \"Passwort vergessen?\",\r\n helperText:\r\n \"Wenn Sie Ihr Passwort vergessen haben, geben Sie bitte unten Ihre E-Mail-Adresse ein, um einen Link zum Zurücksetzen per E-Mail zu erhalten\",\r\n reset: \"Zurücksetzen\",\r\n resetPassword: \"Passwort zurücksetzen\",\r\n iRememberNow: \"Oh! Ich erinnere mich jetzt daran.\",\r\n },\r\n home: {\r\n editDetails: {\r\n organizationInfo: \"Informationen zur Organisation\",\r\n content: \"Einzelheiten\",\r\n companyName: \"Name der Firma\",\r\n },\r\n },\r\n hierarchyExplanation: {\r\n metaphor: \"Metapher\",\r\n tree: \"Baum\",\r\n treeBranch: \"Ast\",\r\n fruit: \"Frucht\",\r\n seeds: \"Samen\",\r\n example: \"Beispiel\",\r\n organizationExplain: \"Dies ist ein Begriff für das gesamte Unternehmen. Bei der Erstanmeldung wird dies erstellt. Vor der Erstellung von Niederlassungen, Konten und Benutzern ist zunächst eine Organisation erforderlich.\",\r\n branchExplain: \"Die Organisation kann in Filialen unterteilt werden, um eine tiefere Kontrolle über Vorgänge und Zahlungsmethoden zu ermöglichen.\",\r\n siteExplain: \"Kann auch als „Site“ bezeichnet werden, so nennen wir unsere Kunden. Konten können innerhalb einer Filiale erstellt werden, und diese Filiale hätte dann die direkte Kontrolle über ihren Betrieb.\",\r\n deviceExplain: \"Eine andere Art, sich auf unsere Fallen zu beziehen. Insbesondere die Sensoren in unseren Fallen.\"\r\n },\r\n login: {\r\n hello: \"Hallo!\",\r\n logIntoYourAccount: \"Ins Konto einloggen\",\r\n emailAddress: \"E-Mail-Addresse\",\r\n rememberMe: \"Mich erinnern\",\r\n forgotPassword: \"Passwort vergessen?\",\r\n logIn: \"Einloggen\",\r\n dontHaveAnAccount: \"Sie haben kein Konto?\",\r\n register: \"Registrieren\",\r\n },\r\n loraWan: {\r\n acknowledgePackage: \"Paket bestätigen\",\r\n applicationNetwork: \"Anwendungsnetzwerk\",\r\n applicationNetworks: \"Application Networks\",\r\n applicationNetworkChangeText: \"You are about to change your Application Network. All devices within your {{2}} were found in {{0}} and will be moved into {{1}}.\",\r\n applicationNetworkChangeDevicesText: \"You are about to change your Application Network. All devices within your {{3}} were found in {{0}} and will be moved into {{1}}. {{2}} Devices were not found in {{0}}, they will also be transferred but might not work as expected.\",\r\n applicationNetworkChangeNoCheckText: \"You are about to change your Application Network. All devices within your {{1}} will be moved into {{0}}.
A report will be emailed to you once this process is complete.
Warning: Some devices might not be moved properly..\",\r\n applicationNetworkLookup: \"Application Network Lookup\",\r\n applicationNetworkName: \"Application Network Name\",\r\n applicationNetworkSetText: \"You are about to set up your Application Network. All devices within your {{1}} will belong to {{0}}\",\r\n applicationNetworkText: \"Please select an available \\\"Application Network\\\" for your organization or create a new one\",\r\n applicationNetworkText2: \"You can modify your preferred networks list by adding and removing items from your LENS application list.\",\r\n applied: \"Applied\",\r\n appliedApplicationNetwork: \"Applied Application Network:\",\r\n autoEnableLoraWanHierarchyOrganization: \"Aktivieren Sie LoRaWAN automatisch in allen Filialen und Konten\",\r\n autoEnableLoraWanHierarchyBranch: \"Aktivieren Sie LoRaWAN automatisch auf allen Konten in diesem Zweig\",\r\n batteryPercentage: \"Batterieprozentsatz\",\r\n confirmDisableRemoteMonitoringOrganization: \"Are you sure you want to disable Remote Monitoring?\",\r\n confirmDisableRemoteMonitoringOrganizationText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n confirmDisableRemoteMonitoringOrganizationNoLensText: \"This will disable all Remote Monitoring features within your organization.\",\r\n confirmLensAccountSwapText: \"It seems that you are trying to connect to a LENS account belonging to a different organization. To connect, please remove any existing Remote Monitoring Traps from all your accounts then try again.\",\r\n confirmLensLogout: \"Are you sure you want to Logout from LENS?\",\r\n confirmLensLogoutText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n connect: \"Connect\",\r\n customConfigurationsFound: \"Benutzerdefinierte Einstellungen gefunden\",\r\n customConfigurationsBranchesAndSitesFoundText: \"There are {{branches}} Branches and {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n customConfigurationsSitesFoundText: \"There are {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n dataPackageOrigin: \"Ursprung des Datenpakets\",\r\n devEui: \"DevEUI\",\r\n devEuiInfoTitle: \"DevEUI - (Excel- und CSV-Format)\",\r\n deviceSummaryRemoteMonitor: \"Gerätezusammenfassung (Remote Monitor)\",\r\n disabled: \"Deaktiviert\",\r\n disableRemoteMonitoring: \"Deaktivieren Sie die Fernüberwachung\",\r\n enabled: \"Ermöglicht\",\r\n enableRemoteMonitoring: \"Aktivieren Sie die Fernüberwachung\",\r\n eventNotificationThreshold: \"Event Notification Threshold\",\r\n failedLoraJoinAttempts: \"Fehlgeschlagene LoRa-Beitrittsversuche\",\r\n formatCells: \"Zellen formatieren\",\r\n formatCellsItem1: \"Klicken Sie mit der rechten Maustaste auf die Spaltenüberschrift und wählen Sie Zellen formatieren aus\",\r\n formatCellsItem2: \"Wählen Sie Benutzerdefiniert und schreiben Sie in Typ 16 Nullen: \\\"0000000000000000\\\"\",\r\n formatCellsItem3: \"Klicken Sie auf \\\"OK\\\", um die Änderungen zu bestätigen\",\r\n fullList: \"Full List\",\r\n heartBeatTime: \"Herzschlagzeit\",\r\n\tinvalid: \"Ungültig\",\r\n\tjoinDelay: \"Join Delay\",\r\n keepCustom: \"Brauch halten\",\r\n lastPackageReceived: \"Letztes Paket erhalten\",\r\n lensLogout: \"LENS Logout\",\r\n linkedLensAccount: \"Verknüpftes Lens-Konto\",\r\n loraDataRate: \"LoRa-Datenrate\",\r\n loraJoinAttempts: \"LoRa Beitrittsversuche\",\r\n loraJoinStatus: \"LoRa-Beitrittsstatus\",\r\n loraPowerLevel: \"LoRa-Powerlevel\",\r\n loraSNRMinimum: \"LoRa-SNR-Mindestwert\",\r\n loraSNRMaximum: \"LoRa Maximales SNR\",\r\n loraSubChannelPlan: \"LoRa Subkanalplan\",\r\n loraWan: \"LoRaWan\",\r\n loraWanModeDevice: \"LoRaWan-Modus (Gerät)\",\r\n loraWanNetwork: \"LoRaWan-Netzwerk\",\r\n loraWanNetworkAccount: \"LoRaWan-Netzwerk (Konto)\",\r\n loraWanNetworkBranch: \"LoRaWan-Netzwerk (Niederlassung)\",\r\n loraWanNetworkOrganization: \"LoRaWan-Netzwerk (Organisation)\",\r\n loraWanNetworkTrap: \"LoRaWan-Netzwerk (Fangen)\",\r\n loraWanInformation: \"LoRaWan-Informationen\",\r\n loraWanDataPackage: \"LoRaWan-Datenpaket\",\r\n loraWanEnabledBranchText: \"Die Fernüberwachung wird für alle Konten in dieser Filiale aktiviert/deaktiviert.\",\r\n loraWanEnabledOrganizationText: \"Die Fernüberwachung wird für alle Niederlassungen und Konten in dieser Organisation aktiviert/deaktiviert.\",\r\n loraWanEnabledSiteText: \"Die Fernüberwachung wird nur für dieses Konto aktiviert/deaktiviert.\",\r\n loraWanHealth: \"LoRaWan Gesundheit\",\r\n loraWanSignal: \"LoRaWan-Signal\",\r\n loraWanSignalTrap: \"LoRaWan-Signal (Fangen)\",\r\n loraWanStatus: \"LoRaWan-Status\",\r\n loraWanRegion: \"LoRaWan-Region\",\r\n\tnetworkDelay: \"Network Delay\",\r\n networkName: \"Network Name\",\r\n newNetwork: \"New Network\",\r\n noApplicationNetworkApplied: \"No application network applied, please select one to continue.\",\r\n noNetwork: \"Kein Netzwerk\",\r\n\tnoSignal: \"Kein Signal\",\r\n numberOfRetries: \"Anzahl der Wiederholungen\",\r\n optional: \"Optional\",\r\n organizationBranchesAndAccounts: \"Organization, Branches and Accounts\",\r\n organizationOnly: \"Organization Only\",\r\n overwrite: \"überschreiben\",\r\n packageAcknowledge: \"Paketbestätigung\",\r\n preferredNetworks: \"Preferred Networks\",\r\n remoteMonitor: \"Ferner Monitor\",\r\n remoteMonitorAccount: \"Ferner Monitor (Konto)\",\r\n remoteMonitorBranch: \"Ferner Monitor (Niederlassung)\",\r\n remoteMonitorLastPackage: \"Ferner Monitor (Last Package)\",\r\n remoteMonitorLoraWan: \"Ferner Monitor (LoRaWan)\",\r\n remoteMonitorOrganization: \"Ferner Monitor (Organisation)\",\r\n remove: \"Remove\",\r\n retrySentPackage: \"Gesendetes Paket erneut versuchen\",\r\n ribbonShortcuts: \"Multifunktionsleisten-Verknüpfungen\",\r\n ribbonShortcutsItem1: \"Klicken Sie mit der rechten Maustaste auf die Spaltenüberschrift und wählen Sie Zellen formatieren aus\",\r\n ribbonShortcutsItem2: \"Wählen Sie Benutzerdefiniert und schreiben Sie in Typ 16 Nullen: \\\"0000000000000000\\\"\",\r\n ribbonShortcutsItem3: \"Klicken Sie auf \\\"OK\\\", um die Änderungen zu bestätigen\",\r\n scientificNotation: \"Wissenschaftliche Schreibweise\",\r\n scientificNotationText: \"Wenn die Excel- oder CSV-Datei heruntergeladen wird, werden einige der DevEUI-Messwerte standardmäßig in wissenschaftlicher Notation „8e+13“ angezeigt. Wenn Sie eine Zahl mit mehr als 12 Ziffern in einer Excel-Tabelle haben, wird die Zahl der Kürze halber automatisch in die wissenschaftliche Notation korrigiert.\",\r\n selected: \"Selected\",\r\n solution: \"Lösung\",\r\n strong: \"Stark\",\r\n successfulLoraJoinAttempts: \"Erfolgreiche LoRa-Beitrittsversuche\",\r\n supportImage: \"Support-Bild\",\r\n swap: \"Swap\",\r\n swapLensAccount: \"Swap LENS Account\",\r\n totalLoraPayloadsFailed: \"Gesamtzahl der LoRa-Nutzlasten fehlgeschlagen\",\r\n totalLoraPayloadsSent: \"Gesamte gesendete LoRa-Nutzlasten\",\r\n transmissionFrequency: \"Transmission Frequency\",\r\n unableToConnect: \"Unable To Connect\",\r\n unapplied: \"Unapplied\",\r\n unselected: \"Unselected\",\r\n updateNetwork: \"Update Network\",\r\n updateSettings: \"Update Settings\",\r\n usingFormatCellsPopUp: \"Verwenden des Popup-Fensters Zellen formatieren\",\r\n usingRibbonShortcuts: \"Verwenden von Multifunktionsleisten-Verknüpfungen\",\r\n weak: \"Schwach\",\r\n willBeUpdatedTo: \"will be updated to:\",\r\n },\r\n manageAdminAccount: {\r\n manageAdminAccount: \"Administratorkonto verwalten\",\r\n adminOverview: {\r\n scheduledPayment: \"Geplante Zahlung\",\r\n nextPaymentScheduledFor: \"Die nächste Zahlung ist geplant für\",\r\n noScheduledPayments: \"Sie haben keine geplanten Zahlungen!\",\r\n paymentsPhaseOutNotice: \"Ab dem 22. Oktober 2022 werden wir Zahlungen schrittweise einstellen.\",\r\n },\r\n billingHistory: {\r\n selectYear: \"Jahr auswählen\",\r\n moneySpentThisMonth: \"In diesem Monat ausgegebenes Geld\",\r\n },\r\n manageSubscription: {\r\n billing: \"Abrechnung\",\r\n billingFrequency: \"Abrechnungshäufigkeit\",\r\n billingMethod: \"Abrechnungsmethode\",\r\n cancelSubscription: \"Abonnement kündigen\",\r\n confirmCancelSubscriptionMessage:\r\n \"Sie sind derzeit als angemeldet. Wenn dies nicht das Bell Sensing-Konto ist, das Ihr Abonnement hat, wechseln Sie zum richtigen Konto.\",\r\n confirmCancelSubscriptionMessage2:\r\n \"Abonnements bei Bell Sensing verlängern sich automatisch, sofern Sie sich nicht abmelden.\",\r\n pleaseReadBeforeProceeding: \"Bitte lesen, bevor Sie fortfahren\",\r\n title: \"Abonnement verwalten\",\r\n receipts: {\r\n title: \"Quittungen\",\r\n type: \"Typ\",\r\n unit: \"Einheit\",\r\n amount: \"Betragen\",\r\n receipt: \"Erhalt\",\r\n },\r\n subscription: \"Abonnement\",\r\n totalAmount: \"Gesamtmenge\",\r\n activeBillableUsers: \"Aktive abrechenbare Nutzer\",\r\n activeLicenses: \"Aktive Lizenzen\",\r\n pendingLicenses: \"Ausstehende Lizenzen\",\r\n },\r\n paymentMethod: {\r\n method: 'Methode',\r\n payment: 'Zahlung',\r\n paymentMethod: \"Zahlungsmethode\",\r\n currentPaymentMethod: \"Aktuelle Zahlungsmethode\",\r\n nameOnCard: \"Name auf der Karte\",\r\n cardNumber: \"Kartennummer\",\r\n expiresOnMMYY: \"Läuft ab am (MMJJ)\",\r\n cvv: \"CVV\",\r\n helperText:\r\n \"Die akzeptierten Kartentypen variieren je nach Standort und Produkt. Wir empfehlen Ihnen dringend, alle Kontakt- und Rechnungsinformationen auf dem neuesten Stand zu halten.\",\r\n lastModified: \"Zuletzt geändert\",\r\n typeOfCard: \"Kartentyp\",\r\n billingInformation: \"Abrechnungsdaten\",\r\n balanceTrend: \"Saldotrend\"\r\n },\r\n },\r\n mostActiveUser: {\r\n title: \"Aktivster Benutzer\",\r\n name: \"Name\",\r\n lastReported: \"Zuletzt gemeldet\",\r\n noOfVisits: \"Anzahl der Besuche\",\r\n },\r\n navigation: {\r\n clickHere: \"Klicken Sie hier\",\r\n contactSupport: \"Kontaktieren Sie Support\",\r\n generalSettings: \"Allgemeine Einstellungen\",\r\n home: \"Zuhause\",\r\n manageAccount: \"Konto verwalten\",\r\n reports: \"Berichte\",\r\n subject: \"Gegenstand\",\r\n yourEmailAddress: \"Deine Emailadresse\",\r\n },\r\n remoteMonitor: {\r\n latestGatewayReadings: \"Neueste Gateway-Messwerte\",\r\n latestServiceReadings: \"Neueste Service-Lesungen\",\r\n },\r\n recentActivities: {\r\n title: \"Kürzliche Aktivitäten\",\r\n time: \"Zeit\",\r\n description: \"Beschreibung\",\r\n reported: \"Gemeldet\",\r\n details: \"Einzelheiten\",\r\n },\r\n register: {\r\n createAccountTitle: \"Maak uw eerste account aan\",\r\n createAccountText: \"Om onze diensten te kunnen gebruiken en apparaten aan een locatie toe te voegen, moet u uw eerste account aanmaken.\",\r\n createDefaultAccount: \"Erstellen Sie ein Standardkonto\",\r\n createCustomAccount: \"Erstellen Sie ein benutzerdefiniertes Konto\",\r\n addDetailsText: \"Sie können Details zu Ihrem Konto bearbeiten und hinzufügen, sobald Sie angemeldet sind.\",\r\n passwordRequirements: \"Passwortanforderungen\",\r\n termsAndConditions: \"Geschäftsbedingungen\",\r\n passwordNumberRequired: \"Muss eine numerische Ziffer haben ('0'-'9')\",\r\n passwordLowercaseRequired:\r\n \"Muss mindestens einen Kleinbuchstaben enthalten ('a'-'z')\",\r\n passwordUppercaseRequired:\r\n \"Muss mindestens einen Großbuchstaben enthalten ('A'-'Z')\",\r\n passwordMinimumLength: \"Muss mindestens 8 Zeichen lang sein.\",\r\n confirmPasswordMismatch:\r\n \"Das Kennwort und das Bestätigungskennwort stimmen nicht überein.\",\r\n serviceProviders: \"Dienstleister\",\r\n selectDefault: \"Bitte wählen Sie eine der folgenden Optionen:\",\r\n duplicateEmail: \"Diese E-Mail wurde bereits hinzugefügt\",\r\n validEmail: \"Bitte geben Sie eine gültige E-Mail-Adresse ein.\",\r\n productInfo: \"Produktinformation\",\r\n userProfile: \"Benutzerprofil\",\r\n companyProfile: \"Unternehmensprofil\",\r\n companyDetails: \"Unternehmens-Details\",\r\n paymentDetails: \"Zahlungsdetails\",\r\n accountDetails: \"Kontodetails\",\r\n success: \"Erfolg\",\r\n areYouAuthorized: \"Sind Sie von Ihrem Unternehmen autorisiert, ein Konto bei Bell Sensing Technology einzurichten??*\",\r\n back: \"Zurück\",\r\n next: \"Nächste\",\r\n alreadyHaveAnAccount: \"Sie haben bereits ein Konto?\",\r\n iAcceptAgreement: \"Ich akzeptiere die allgemeinen Geschäftsbedingungen\",\r\n almostDone: \"Fast fertig!\",\r\n pleaseCheckEmail: \"Bitte überprüfen Sie Ihre E-Mail, um Ihr Konto zu aktivieren. Wenn Sie es nicht erhalten, überprüfen Sie Ihren Junk-E-Mail-Ordner!\",\r\n numberOfTechnicians: \"Anzahl der Techniker\",\r\n distributor: \"Verteiler\",\r\n pleaseIdentify: \"Bitte geben Sie die von Ihnen erbrachten Dienstleistungen an:*\",\r\n howDidYouHear: \"Wie sind Sie auf uns aufmerksam geworden?*\"\r\n },\r\n relativeTime: {\r\n future: \"in %s\",\r\n past: \"%s hinter\",\r\n seconds: \"seconds\",\r\n minutes: \"Minuten\",\r\n hour: \"eine Stunde\",\r\n hours: \"%d Stunden\",\r\n day: \"ein Tag\",\r\n days: \"%d Tage\",\r\n month: \"ein Monat\",\r\n months: \"%d Monate\",\r\n year: \"ein Jahr\",\r\n years: \"%d Jahre\",\r\n },\r\n report: {\r\n manageReports: \"Berichte verwalten\",\r\n report: \"Bericht\",\r\n accountHistorical: \"Kontoverlauf\",\r\n filter: \"Filter\",\r\n filterDesc:\r\n \"Bitte wählen Sie unten die Einstellungen aus, nach denen Sie Ihren Bericht filtern möchten\",\r\n selectUser: \"Wähle den Benutzer\",\r\n serviceTech: \"Servicetechnik\",\r\n summaryReport: \"Kurzbericht\",\r\n baitSummary: \"Zusammenfassung der Köder\",\r\n note: \"Hinweis\",\r\n name: \"Name\",\r\n includeExpansion: \"Erweiterung einschließen\",\r\n historicalReport: \"Historischer Bericht\",\r\n accountHistoricalReport: {\r\n title: \"Kontoverlaufsbericht\",\r\n installed: \"Eingerichtet\",\r\n detected: \"Erkannt\",\r\n serviced: \"Gewartet\",\r\n status: \"Status\",\r\n },\r\n serviceTechSummaryReport: {\r\n title: \"Zusammenfassungsbericht der Servicetechnik\",\r\n dateOfService: \"Datum der Zustellung\",\r\n details: \"Einzelheiten\",\r\n pdf: \"PDF\",\r\n },\r\n noteReport: {\r\n title: \"Hinweisbericht\",\r\n replies: \"Antworten\",\r\n time: \"Zeit\",\r\n user: \"Benutzer\",\r\n },\r\n baitSummaryReport: {\r\n title: \"Zusammenfassungsbericht zum Köder\",\r\n totalPieces: \"Gesamtstückzahl\",\r\n },\r\n },\r\n searchBar: {\r\n placeholder: \"Geben Sie ein Stichwort ein, um zu suchen...\"\r\n },\r\n serviceHistory: {\r\n title: \"Servicehistorie\",\r\n servicedBy: \"Gewartet von\",\r\n branch: \"Ast\",\r\n location: \"Standorte\",\r\n serviceNotes: \"Servicehinweise\",\r\n },\r\n setPassword: {\r\n activateAccount: \"Konto aktivieren\",\r\n title: \"Passwort festlegen\",\r\n },\r\n resendVerification: {\r\n linkExpired: \"Link abgelaufen\",\r\n resendLink: \"Der Aktivierungslink, auf den Sie zuzugreifen versuchen, ist abgelaufen. Ein neuer Link wurde an Ihre E-Mail gesendet. Bitte beachten Sie, dass der Link in 72 Stunden abläuft und alle Benutzer, die derzeit auf diesem Computer angemeldet sind, automatisch abgemeldet werden, sobald auf den Link geklickt wird!\"\r\n },\r\n shared: {\r\n action: \"Aktion\",\r\n actions: \"Aktionen\",\r\n activationDate: \"Aktivierungszeitpunkt\",\r\n activeIngredient: \"Wirkstoff\",\r\n account: \"Konto\",\r\n accounts: \"Konten\",\r\n accountsDetails: \"Kontodetails\",\r\n accountName: \"Kontobezeichnung\",\r\n accountPerformance: \"Kontoleistung\",\r\n active: \"Aktiv\",\r\n activeBranches: \"Aktive Filialen\",\r\n activeAccounts: \"Aktive Konten\",\r\n activeTechnicians: \"Aktive Techniker\",\r\n activeBaits: \"Aktive Köder\",\r\n averageVisitTime: \"Durchschnittliche Besuchszeit\",\r\n activity: \"Aktivität\",\r\n activities: \"Aktivitäten\",\r\n add: \"Addieren\",\r\n address: \"Adresse\",\r\n addAccountToCompare: \"Konto zum Vergleich hinzufügen\",\r\n addBranchToCompare: \"Filiale zum Vergleich hinzufügen\",\r\n addDeviceToCompare: \"Gerät zum Vergleich hinzufügen\",\r\n address2: \"Adresse 2\",\r\n all: \"Alle\",\r\n average: \"Durchschnittlich\",\r\n averageBaitApplicationRate: \"Durchschnittliche Köderanwendungsrate\",\r\n averageBaitRefillPerVisit:\r\n \"Durchschnittliche Nachfüllung von Ködern pro Besuch\",\r\n averageRefill: \"Durchschnittliche Nachfüllung\",\r\n baits: \"Köder\",\r\n baitApplicationRate: \"Köder-Anwendungsrate\",\r\n baitApplied: \"Köder angewendet\",\r\n baitName: \"Ködername\",\r\n baitTypes: \"Köderarten\",\r\n baitTypesDetails: \"Details zu Köderarten\",\r\n batteryLevel: \"Batterie Level\",\r\n branch: \"Ast\",\r\n branches: \"Geäst\",\r\n branchesDetails: \"Filialen-Details\",\r\n branchLocation: \"Zweigstelle\",\r\n branchName: \"Zweigname\",\r\n branchPerformance: \"Filialleistung\",\r\n cancel: \"Stornieren\",\r\n captureTotals: \"Gesamtsummen erfassen\",\r\n captures: \"Aufnahmen\",\r\n category: \"Kategorie\",\r\n city: \"Stadt\",\r\n close: \"Schließen\",\r\n create: \"Erstellen\",\r\n company: \"Unternehmen\",\r\n confirmPassword: \"Kennwort bestätigen\",\r\n confirm: \"Bestätigen\",\r\n country: \"Land\",\r\n continue: \"Fortsetzen\",\r\n dashboard: \"Armaturenbrett\",\r\n date: \"Datum\",\r\n dateRangeOptionText: \"Datumsbereichsoption\",\r\n description: \"Beschreibung\",\r\n details: \"Einzelheiten\",\r\n device: \"Gerät\",\r\n devices: \"Geräte\",\r\n deviceModel: \"Gerätemodell\",\r\n disable: \"Deaktivieren\",\r\n download: \"Herunterladen\",\r\n downloadChart: \"Diagramm herunterladen\",\r\n downloadTooltip: \"Diese Aktion fordert alle verfügbaren Protokolle an und lädt sie herunter. Die Verarbeitung kann länger dauern.\",\r\n edit: \"Edit\",\r\n editDetails: \"Details bearbeiten\",\r\n email: \"Email\",\r\n emailAddress: \"E-Mail-Addresse\",\r\n enable: \"Aktivieren\",\r\n event: \"Vorfall\",\r\n events: \"Veranstaltungen\",\r\n eventTotals: \"Ereignissummen\",\r\n eventTooltip: \"Der Bereich der angezeigten Daten reicht vom Datum des ersten Ereignisses dieses Besuchs bis zum Startdatum dieses Besuchs.\",\r\n error: \"Ein Fehler ist aufgetreten.\",\r\n errorAccountText: \"Konto darf nicht denselben Namen wie ein bestehendes Konto haben, bitte verwenden Sie einen anderen Namen.\",\r\n errorBranchText: \"Die Filiale darf nicht den gleichen Namen einer bestehenden Filiale haben, bitte verwenden Sie einen anderen Namen.\",\r\n errorUserText: \"E-Mail ist bereits vergeben.\",\r\n expand: \"Expandieren\",\r\n fullRange: \"Vollständige Palette\",\r\n weekly: \"Wöchentlich\",\r\n fullName: \"Vollständiger Name\",\r\n generalInfo: \"Allgemeine Information\",\r\n hierarchyExplanation: \"Hierarchie Erklärung\",\r\n history: \"Historie\",\r\n inactive: \"Inaktiv\",\r\n information: \"Information\",\r\n organization: \"Organisation\",\r\n organizationDetails: \"Organisationsdetails\",\r\n language: \"Sprache\",\r\n last: \"Letzte\",\r\n lastVisit: \"Letzter Besuch\",\r\n latitude: \"Breite\",\r\n longitude: \"Längengrad\",\r\n loading: \"Wird geladen\",\r\n logOut: \"Ausloggen\",\r\n mainAddress: \"Hauptadresse\",\r\n mainContactPhone: \"Hauptkontakt Telefon\",\r\n manage: \"Verwalten\",\r\n modify: \"Ändern\",\r\n mostActiveBranches: \"Aktivste Filialen\",\r\n mostUsedBait: \"Am häufigsten verwendeter Köder\",\r\n mostUsedBaits: \"Am häufigsten verwendete Köder\",\r\n name: \"Name\",\r\n newPassword: \"Neues Kennwort\",\r\n no: \"Nein\",\r\n notes: \"Anmerkungen\",\r\n noDataFound: \"Keine Daten gefunden\",\r\n noneSelected: \"Nichts ausgewählt\",\r\n noneSelectedMessage: \"Bitte wählen Sie eine der oben genannten Optionen aus\",\r\n numberOfEvents: \"Anzahl der Ereignisse\",\r\n ok: \"Ok\",\r\n overview: \"Überblick\",\r\n password: \"Passwort\",\r\n pending: \"Ausstehend\",\r\n percentage: \"Prozentsatz\",\r\n phoneNumber: \"Telefonnummer\",\r\n quantity: \"Menge\",\r\n rangeTooltip: \"Der Bereich der angezeigten Daten reicht vom Enddatum des vorherigen Besuchs bis zum Startdatum dieses Besuchs.\",\r\n recent: \"Kürzlich\",\r\n regulatoryNumber: \"Zulassungsnummer\",\r\n results: \"Ergebnisse\",\r\n rows: \"Zeilen\",\r\n rowsPerPage: \"Zeilen pro Seite\",\r\n location: \"Ort\",\r\n save: \"speichern\",\r\n saveChanges: \"Änderungen speichern\",\r\n scrollDownToViewMore: \"Scrollen Sie nach unten, um mehr zu sehen\",\r\n stateProvince: \"Bundesland/Provinz\",\r\n status: \"Status\",\r\n searchAddress: \"Adresse suchen\",\r\n select: \"Wählen\",\r\n selectAll: \"Wählen Sie Alle\",\r\n selectAccount: \"Konto auswählen\",\r\n selectBranch: \"Filiale auswählen\",\r\n selectCountry: \"Land auswählen\",\r\n selectDevice: \"Gerät auswählen\",\r\n selectLanguage: \"Bitte wählen Sie Ihre Sprache\",\r\n selectIndustry: \"Branche auswählen\",\r\n selectRegion: \"Region wählen\",\r\n selectServiceFrequency: \"Wählen Sie die Servicefrequenz\",\r\n selectSize: \"Wähle die Größe aus\",\r\n sendEmail: \"E-Mail senden\",\r\n service: \"Bedienung\",\r\n serviceBaitType: \"Ködertyp des Dienstes\",\r\n serviceBaitUsed: \"Im Service verwendeter Köder\",\r\n serviceDate: \"Servicedatum\",\r\n serviceIsCapture: \"Dienst hat Erfassung\",\r\n services: \"Dienstleistungen\",\r\n trendAnalysis: \"Trend analysen\",\r\n true: \"Wahr\",\r\n false: \"Gefälscht\",\r\n unit: \"Einheit\",\r\n units: \"Einheiten\",\r\n update: \"Aktualisieren\",\r\n updated: \"Aktualisiert\",\r\n updatedBy: \"Aktualisiert von\",\r\n users: \"Benutzer\",\r\n usersDetails: \"Benutzerdetails\",\r\n usersRecords: \"Benutzerdatensatz\",\r\n technicians: \"Techniker\",\r\n view: \"Aussicht\",\r\n visitTime: \"Besuchszeit\",\r\n visit: \"Besuch\",\r\n visits: \"Besuche\",\r\n warning: \"Warnung\",\r\n yes: \"Ja\",\r\n zipPostal: \"Postleitzahl\",\r\n },\r\n terms: {\r\n subscriptionAgreement: \"Abonnentenvereinbarung\",\r\n read: \"Lesen\",\r\n agreement: \"Zustimmung\",\r\n estimatedReadingTime: \"Geschätzte Lesezeit:\",\r\n readingTimeMinutes: \"30-40 Minuten\",\r\n readingTimeCalculation: \"** Berechnung basiert auf der durchschnittlichen Lesegeschwindigkeit von etwa 300 Wörtern pro Minute (wpm).\",\r\n title: \"Geschäftsbedingungen\",\r\n },\r\n user: {\r\n accountsVisited: \"Besuchte Konten\",\r\n activeUsers: \"Aktive Benutzer\",\r\n allUsers: \"Alle Nutzer\",\r\n confirmDisableTitle: \"Möchten Sie diesen Benutzer wirklich deaktivieren?\",\r\n confirmDisableMessage:\r\n \"Sie sind dabei, einen Benutzer für dieses Konto zu deaktivieren, die Lizenz läuft am Ende des Abrechnungszeitraums ab.\",\r\n corporate: \"Unternehmen\",\r\n disableUser: \"Benutzer deaktivieren\",\r\n user: \"Benutzer\",\r\n usersList: {\r\n title: \"Benutzerliste\",\r\n role: \"Rolle\",\r\n accessLevel: \"Zugriffsebene\",\r\n },\r\n accountServiced: {\r\n title: \"Betreute Konten\",\r\n duration: \"Dauer\",\r\n baitApplied: \"Köder angewendet\",\r\n },\r\n personalInfo: \"Persönliche Informationen\",\r\n pendingUsers: \"Ausstehende Benutzer\",\r\n inactiveUsers: \"Inaktive Benutzer\",\r\n manageUsers: \"Benutzer verwalten\",\r\n mostActiveAccounts: \"Aktivste Konten\",\r\n accessLevels: \"Zugriffsebenen\",\r\n generalSettings: \"Allgemeine Einstellungen\", \r\n branchAccess: \"Filialzugang\",\r\n timezone: \"Zeitzone\",\r\n dateFormat: \"Datumsformat\",\r\n editUser: \"Benutzer bearbeiten\",\r\n enableUser: \"Benutzer aktivieren\",\r\n firstName: 'Vorname',\r\n lastName: 'Nachname',\r\n newUser: \"Neuer Benutzer\",\r\n profilePicture: 'Profilbild',\r\n selectOneAccessLevel: \"Muss mindestens (1) Zugriffsebene auswählen\",\r\n selectOneBranch: \"Muss mindestens (1) Filiale auswählen\",\r\n sendVerification: \"Bestätigung senden\",\r\n serviceLocations: \"Servicestandorte\",\r\n visitsLog: \"Besuchsprotokoll\",\r\n lastAccountVisited: \"Zuletzt besuchtes Konto\",\r\n },\r\n visit: {\r\n eventLog: \"Ereignisprotokoll\",\r\n timestamp: \"Zeitstempel\",\r\n manual: \"Handbuch\",\r\n auto: \"Auto\",\r\n serviceType: \"Servicetyp\",\r\n totalCaptures: \"Gesamtzahl der Aufnahmen\",\r\n totalEvents: \"Gesamte Ereignisse\",\r\n devicesServiced: \"Gewartete Geräte\",\r\n totalActiveDevices: \"Aktive Geräte insgesamt\"\r\n },\r\n};\r\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n/* eslint-disable flowtype/no-weak-types */\nimport nodejsCustomInspectSymbol from \"./nodejsCustomInspectSymbol.mjs\";\nvar MAX_ARRAY_LENGTH = 10;\nvar MAX_RECURSIVE_DEPTH = 2;\n/**\n * Used to print values in error messages.\n */\n\nexport default function inspect(value) {\n return formatValue(value, []);\n}\n\nfunction formatValue(value, seenValues) {\n switch (_typeof(value)) {\n case 'string':\n return JSON.stringify(value);\n\n case 'function':\n return value.name ? \"[function \".concat(value.name, \"]\") : '[function]';\n\n case 'object':\n if (value === null) {\n return 'null';\n }\n\n return formatObjectValue(value, seenValues);\n\n default:\n return String(value);\n }\n}\n\nfunction formatObjectValue(value, previouslySeenValues) {\n if (previouslySeenValues.indexOf(value) !== -1) {\n return '[Circular]';\n }\n\n var seenValues = [].concat(previouslySeenValues, [value]);\n var customInspectFn = getCustomFn(value);\n\n if (customInspectFn !== undefined) {\n var customValue = customInspectFn.call(value); // check for infinite recursion\n\n if (customValue !== value) {\n return typeof customValue === 'string' ? customValue : formatValue(customValue, seenValues);\n }\n } else if (Array.isArray(value)) {\n return formatArray(value, seenValues);\n }\n\n return formatObject(value, seenValues);\n}\n\nfunction formatObject(object, seenValues) {\n var keys = Object.keys(object);\n\n if (keys.length === 0) {\n return '{}';\n }\n\n if (seenValues.length > MAX_RECURSIVE_DEPTH) {\n return '[' + getObjectTag(object) + ']';\n }\n\n var properties = keys.map(function (key) {\n var value = formatValue(object[key], seenValues);\n return key + ': ' + value;\n });\n return '{ ' + properties.join(', ') + ' }';\n}\n\nfunction formatArray(array, seenValues) {\n if (array.length === 0) {\n return '[]';\n }\n\n if (seenValues.length > MAX_RECURSIVE_DEPTH) {\n return '[Array]';\n }\n\n var len = Math.min(MAX_ARRAY_LENGTH, array.length);\n var remaining = array.length - len;\n var items = [];\n\n for (var i = 0; i < len; ++i) {\n items.push(formatValue(array[i], seenValues));\n }\n\n if (remaining === 1) {\n items.push('... 1 more item');\n } else if (remaining > 1) {\n items.push(\"... \".concat(remaining, \" more items\"));\n }\n\n return '[' + items.join(', ') + ']';\n}\n\nfunction getCustomFn(object) {\n var customInspectFn = object[String(nodejsCustomInspectSymbol)];\n\n if (typeof customInspectFn === 'function') {\n return customInspectFn;\n }\n\n if (typeof object.inspect === 'function') {\n return object.inspect;\n }\n}\n\nfunction getObjectTag(object) {\n var tag = Object.prototype.toString.call(object).replace(/^\\[object /, '').replace(/]$/, '');\n\n if (tag === 'Object' && typeof object.constructor === 'function') {\n var name = object.constructor.name;\n\n if (typeof name === 'string' && name !== '') {\n return name;\n }\n }\n\n return tag;\n}\n","//! moment.js locale configuration\n//! locale : Montenegrin [me]\n//! author : Miodrag Nikač : https://github.com/miodragnikac\n\nimport moment from '../moment';\n\nvar translator = {\n words: {\n //Different grammatical cases\n ss: ['sekund', 'sekunda', 'sekundi'],\n m: ['jedan minut', 'jednog minuta'],\n mm: ['minut', 'minuta', 'minuta'],\n h: ['jedan sat', 'jednog sata'],\n hh: ['sat', 'sata', 'sati'],\n dd: ['dan', 'dana', 'dana'],\n MM: ['mjesec', 'mjeseca', 'mjeseci'],\n yy: ['godina', 'godine', 'godina'],\n },\n correctGrammaticalCase: function (number, wordKey) {\n return number === 1\n ? wordKey[0]\n : number >= 2 && number <= 4\n ? wordKey[1]\n : wordKey[2];\n },\n translate: function (number, withoutSuffix, key) {\n var wordKey = translator.words[key];\n if (key.length === 1) {\n return withoutSuffix ? wordKey[0] : wordKey[1];\n } else {\n return (\n number +\n ' ' +\n translator.correctGrammaticalCase(number, wordKey)\n );\n }\n },\n};\n\nexport default moment.defineLocale('me', {\n months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort: 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sjutra u] LT',\n\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[juče u] LT',\n lastWeek: function () {\n var lastWeekDays = [\n '[prošle] [nedjelje] [u] LT',\n '[prošlog] [ponedjeljka] [u] LT',\n '[prošlog] [utorka] [u] LT',\n '[prošle] [srijede] [u] LT',\n '[prošlog] [četvrtka] [u] LT',\n '[prošlog] [petka] [u] LT',\n '[prošle] [subote] [u] LT',\n ];\n return lastWeekDays[this.day()];\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'nekoliko sekundi',\n ss: translator.translate,\n m: translator.translate,\n mm: translator.translate,\n h: translator.translate,\n hh: translator.translate,\n d: 'dan',\n dd: translator.translate,\n M: 'mjesec',\n MM: translator.translate,\n y: 'godinu',\n yy: translator.translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","interface Node {\n key: K;\n value: V;\n newer: Node | null;\n older: Node | null;\n}\n\nfunction defaultDispose() {}\n\nexport class Cache {\n private map = new Map>();\n private newest: Node | null = null;\n private oldest: Node | null = null;\n\n constructor(\n private max = Infinity,\n public dispose: (value: V, key: K) => void = defaultDispose,\n ) {}\n\n public has(key: K): boolean {\n return this.map.has(key);\n }\n\n public get(key: K): V | undefined {\n const entry = this.getEntry(key);\n return entry && entry.value;\n }\n\n private getEntry(key: K): Node | undefined {\n const entry = this.map.get(key);\n\n if (entry && entry !== this.newest) {\n const { older, newer } = entry;\n\n if (newer) {\n newer.older = older;\n }\n\n if (older) {\n older.newer = newer;\n }\n\n entry.older = this.newest;\n entry.older!.newer = entry;\n\n entry.newer = null;\n this.newest = entry;\n\n if (entry === this.oldest) {\n this.oldest = newer;\n }\n }\n\n return entry;\n }\n\n public set(key: K, value: V): V {\n let entry = this.getEntry(key);\n if (entry) {\n return entry.value = value;\n }\n\n entry = {\n key: key,\n value: value,\n newer: null,\n older: this.newest\n };\n\n if (this.newest) {\n this.newest.newer = entry;\n }\n\n this.newest = entry;\n this.oldest = this.oldest || entry;\n\n this.map.set(key, entry);\n\n return entry.value;\n }\n\n public clean() {\n while (this.oldest && this.map.size > this.max) {\n this.delete(this.oldest.key);\n }\n }\n\n public delete(key: K): boolean {\n const entry = this.map.get(key);\n if (entry) {\n if (entry === this.newest) {\n this.newest = entry.older;\n }\n\n if (entry === this.oldest) {\n this.oldest = entry.newer;\n }\n\n if (entry.newer) {\n entry.newer.older = entry.older;\n }\n\n if (entry.older) {\n entry.older.newer = entry.newer;\n }\n\n this.map.delete(key);\n this.dispose(entry.value, key);\n\n return true;\n }\n\n return false;\n }\n}\n","export type Unsubscribable = {\n unsubscribe?: void | (() => any);\n}\n\nexport function maybeUnsubscribe(entryOrDep: Unsubscribable) {\n const { unsubscribe } = entryOrDep;\n if (typeof unsubscribe === \"function\") {\n entryOrDep.unsubscribe = void 0;\n unsubscribe();\n }\n}\n","import { parentEntrySlot } from \"./context\";\nimport { OptimisticWrapOptions } from \"./index\";\nimport { Dep } from \"./dep\";\nimport { maybeUnsubscribe, Unsubscribable } from \"./helpers\";\n\nconst emptySetPool: Set[] = [];\nconst POOL_TARGET_SIZE = 100;\n\n// Since this package might be used browsers, we should avoid using the\n// Node built-in assert module.\nfunction assert(condition: any, optionalMessage?: string) {\n if (! condition) {\n throw new Error(optionalMessage || \"assertion failure\");\n }\n}\n\n// Since exceptions are cached just like normal values, we need an efficient\n// way of representing unknown, ordinary, and exceptional values.\ntype Value =\n | [] // unknown\n | [T] // known value\n | [void, any]; // known exception\n\nfunction valueIs(a: Value, b: Value) {\n const len = a.length;\n return (\n // Unknown values are not equal to each other.\n len > 0 &&\n // Both values must be ordinary (or both exceptional) to be equal.\n len === b.length &&\n // The underlying value or exception must be the same.\n a[len - 1] === b[len - 1]\n );\n}\n\nfunction valueGet(value: Value): T {\n switch (value.length) {\n case 0: throw new Error(\"unknown value\");\n case 1: return value[0];\n case 2: throw value[1];\n }\n}\n\nfunction valueCopy(value: Value): Value {\n return value.slice(0) as Value;\n}\n\nexport type AnyEntry = Entry;\n\nexport class Entry {\n public static count = 0;\n\n public subscribe: OptimisticWrapOptions[\"subscribe\"];\n public unsubscribe: Unsubscribable[\"unsubscribe\"];\n\n public readonly parents = new Set();\n public readonly childValues = new Map>();\n\n // When this Entry has children that are dirty, this property becomes\n // a Set containing other Entry objects, borrowed from emptySetPool.\n // When the set becomes empty, it gets recycled back to emptySetPool.\n public dirtyChildren: Set | null = null;\n\n public dirty = true;\n public recomputing = false;\n public readonly value: Value = [];\n\n constructor(\n public readonly fn: (...args: TArgs) => TValue,\n ) {\n ++Entry.count;\n }\n\n public peek(): TValue | undefined {\n if (this.value.length === 1 && !mightBeDirty(this)) {\n return this.value[0];\n }\n }\n\n // This is the most important method of the Entry API, because it\n // determines whether the cached this.value can be returned immediately,\n // or must be recomputed. The overall performance of the caching system\n // depends on the truth of the following observations: (1) this.dirty is\n // usually false, (2) this.dirtyChildren is usually null/empty, and thus\n // (3) valueGet(this.value) is usually returned without recomputation.\n public recompute(args: TArgs): TValue {\n assert(! this.recomputing, \"already recomputing\");\n rememberParent(this);\n return mightBeDirty(this)\n ? reallyRecompute(this, args)\n : valueGet(this.value);\n }\n\n public setDirty() {\n if (this.dirty) return;\n this.dirty = true;\n this.value.length = 0;\n reportDirty(this);\n forgetChildren(this);\n // We can go ahead and unsubscribe here, since any further dirty\n // notifications we receive will be redundant, and unsubscribing may\n // free up some resources, e.g. file watchers.\n maybeUnsubscribe(this);\n }\n\n public dispose() {\n forgetChildren(this);\n maybeUnsubscribe(this);\n\n // Because this entry has been kicked out of the cache (in index.js),\n // we've lost the ability to find out if/when this entry becomes dirty,\n // whether that happens through a subscription, because of a direct call\n // to entry.setDirty(), or because one of its children becomes dirty.\n // Because of this loss of future information, we have to assume the\n // worst (that this entry might have become dirty very soon), so we must\n // immediately mark this entry's parents as dirty. Normally we could\n // just call entry.setDirty() rather than calling parent.setDirty() for\n // each parent, but that would leave this entry in parent.childValues\n // and parent.dirtyChildren, which would prevent the child from being\n // truly forgotten.\n this.parents.forEach(parent => {\n parent.setDirty();\n forgetChild(parent, this);\n });\n }\n\n private deps: Set> | null = null;\n\n public dependOn(dep: Dep) {\n dep.add(this);\n if (! this.deps) {\n this.deps = emptySetPool.pop() || new Set>();\n }\n this.deps.add(dep);\n }\n\n public forgetDeps() {\n if (this.deps) {\n this.deps.forEach(dep => dep.delete(this));\n this.deps.clear();\n emptySetPool.push(this.deps);\n this.deps = null;\n }\n }\n}\n\nfunction rememberParent(child: AnyEntry) {\n const parent = parentEntrySlot.getValue();\n if (parent) {\n child.parents.add(parent);\n\n if (! parent.childValues.has(child)) {\n parent.childValues.set(child, []);\n }\n\n if (mightBeDirty(child)) {\n reportDirtyChild(parent, child);\n } else {\n reportCleanChild(parent, child);\n }\n\n return parent;\n }\n}\n\nfunction reallyRecompute(entry: AnyEntry, args: any[]) {\n forgetChildren(entry);\n\n // Set entry as the parent entry while calling recomputeNewValue(entry).\n parentEntrySlot.withValue(entry, recomputeNewValue, [entry, args]);\n\n if (maybeSubscribe(entry, args)) {\n // If we successfully recomputed entry.value and did not fail to\n // (re)subscribe, then this Entry is no longer explicitly dirty.\n setClean(entry);\n }\n\n return valueGet(entry.value);\n}\n\nfunction recomputeNewValue(entry: AnyEntry, args: any[]) {\n entry.recomputing = true;\n // Set entry.value as unknown.\n entry.value.length = 0;\n try {\n // If entry.fn succeeds, entry.value will become a normal Value.\n entry.value[0] = entry.fn.apply(null, args);\n } catch (e) {\n // If entry.fn throws, entry.value will become exceptional.\n entry.value[1] = e;\n }\n // Either way, this line is always reached.\n entry.recomputing = false;\n}\n\nfunction mightBeDirty(entry: AnyEntry) {\n return entry.dirty || !!(entry.dirtyChildren && entry.dirtyChildren.size);\n}\n\nfunction setClean(entry: AnyEntry) {\n entry.dirty = false;\n\n if (mightBeDirty(entry)) {\n // This Entry may still have dirty children, in which case we can't\n // let our parents know we're clean just yet.\n return;\n }\n\n reportClean(entry);\n}\n\nfunction reportDirty(child: AnyEntry) {\n child.parents.forEach(parent => reportDirtyChild(parent, child));\n}\n\nfunction reportClean(child: AnyEntry) {\n child.parents.forEach(parent => reportCleanChild(parent, child));\n}\n\n// Let a parent Entry know that one of its children may be dirty.\nfunction reportDirtyChild(parent: AnyEntry, child: AnyEntry) {\n // Must have called rememberParent(child) before calling\n // reportDirtyChild(parent, child).\n assert(parent.childValues.has(child));\n assert(mightBeDirty(child));\n\n if (! parent.dirtyChildren) {\n parent.dirtyChildren = emptySetPool.pop() || new Set;\n\n } else if (parent.dirtyChildren.has(child)) {\n // If we already know this child is dirty, then we must have already\n // informed our own parents that we are dirty, so we can terminate\n // the recursion early.\n return;\n }\n\n parent.dirtyChildren.add(child);\n reportDirty(parent);\n}\n\n// Let a parent Entry know that one of its children is no longer dirty.\nfunction reportCleanChild(parent: AnyEntry, child: AnyEntry) {\n // Must have called rememberChild(child) before calling\n // reportCleanChild(parent, child).\n assert(parent.childValues.has(child));\n assert(! mightBeDirty(child));\n\n const childValue = parent.childValues.get(child)!;\n if (childValue.length === 0) {\n parent.childValues.set(child, valueCopy(child.value));\n } else if (! valueIs(childValue, child.value)) {\n parent.setDirty();\n }\n\n removeDirtyChild(parent, child);\n\n if (mightBeDirty(parent)) {\n return;\n }\n\n reportClean(parent);\n}\n\nfunction removeDirtyChild(parent: AnyEntry, child: AnyEntry) {\n const dc = parent.dirtyChildren;\n if (dc) {\n dc.delete(child);\n if (dc.size === 0) {\n if (emptySetPool.length < POOL_TARGET_SIZE) {\n emptySetPool.push(dc);\n }\n parent.dirtyChildren = null;\n }\n }\n}\n\n// Removes all children from this entry and returns an array of the\n// removed children.\nfunction forgetChildren(parent: AnyEntry) {\n if (parent.childValues.size > 0) {\n parent.childValues.forEach((_value, child) => {\n forgetChild(parent, child);\n });\n }\n\n // Remove this parent Entry from any sets to which it was added by the\n // addToSet method.\n parent.forgetDeps();\n\n // After we forget all our children, this.dirtyChildren must be empty\n // and therefore must have been reset to null.\n assert(parent.dirtyChildren === null);\n}\n\nfunction forgetChild(parent: AnyEntry, child: AnyEntry) {\n child.parents.delete(parent);\n parent.childValues.delete(child);\n removeDirtyChild(parent, child);\n}\n\nfunction maybeSubscribe(entry: AnyEntry, args: any[]) {\n if (typeof entry.subscribe === \"function\") {\n try {\n maybeUnsubscribe(entry); // Prevent double subscriptions.\n entry.unsubscribe = entry.subscribe.apply(null, args);\n } catch (e) {\n // If this Entry has a subscribe function and it threw an exception\n // (or an unsubscribe function it previously returned now throws),\n // return false to indicate that we were not able to subscribe (or\n // unsubscribe), and this Entry should remain dirty.\n entry.setDirty();\n return false;\n }\n }\n\n // Returning true indicates either that there was no entry.subscribe\n // function or that it succeeded.\n return true;\n}\n","import { AnyEntry } from \"./entry\";\nimport { OptimisticWrapOptions } from \"./index\";\nimport { parentEntrySlot } from \"./context\";\nimport { Unsubscribable, maybeUnsubscribe } from \"./helpers\";\n\nexport type OptimisticDependencyFunction =\n ((key: TKey) => void) & {\n dirty: (key: TKey) => void;\n };\n\nexport type Dep = Set & {\n subscribe: OptimisticWrapOptions<[TKey]>[\"subscribe\"];\n} & Unsubscribable;\n\nexport function dep(options?: {\n subscribe: Dep[\"subscribe\"];\n}) {\n const depsByKey = new Map>();\n const subscribe = options && options.subscribe;\n\n function depend(key: TKey) {\n const parent = parentEntrySlot.getValue();\n if (parent) {\n let dep = depsByKey.get(key);\n if (!dep) {\n depsByKey.set(key, dep = new Set as Dep);\n }\n parent.dependOn(dep);\n if (typeof subscribe === \"function\") {\n maybeUnsubscribe(dep);\n dep.unsubscribe = subscribe(key);\n }\n }\n }\n\n depend.dirty = function dirty(key: TKey) {\n const dep = depsByKey.get(key);\n if (dep) {\n dep.forEach(entry => entry.setDirty());\n depsByKey.delete(key);\n maybeUnsubscribe(dep);\n }\n };\n\n return depend as OptimisticDependencyFunction;\n}\n","export * from './core';\nexport * from './react';\n","// A [trie](https://en.wikipedia.org/wiki/Trie) data structure that holds\n// object keys weakly, yet can also hold non-object keys, unlike the\n// native `WeakMap`.\n\n// If no makeData function is supplied, the looked-up data will be an empty,\n// null-prototype Object.\nconst defaultMakeData = () => Object.create(null);\n\n// Useful for processing arguments objects as well as arrays.\nconst { forEach, slice } = Array.prototype;\n\nexport class Trie {\n // Since a `WeakMap` cannot hold primitive values as keys, we need a\n // backup `Map` instance to hold primitive keys. Both `this._weakMap`\n // and `this._strongMap` are lazily initialized.\n private weak?: WeakMap>;\n private strong?: Map>;\n private data?: Data;\n\n constructor(\n private weakness = true,\n private makeData: (array: any[]) => Data = defaultMakeData,\n ) {}\n\n public lookup(...array: T): Data {\n return this.lookupArray(array);\n }\n\n public lookupArray(array: T): Data {\n let node: Trie = this;\n forEach.call(array, key => node = node.getChildTrie(key));\n return node.data || (node.data = this.makeData(slice.call(array)));\n }\n\n private getChildTrie(key: any) {\n const map = this.weakness && isObjRef(key)\n ? this.weak || (this.weak = new WeakMap>())\n : this.strong || (this.strong = new Map>());\n let child = map.get(key);\n if (!child) map.set(key, child = new Trie(this.weakness, this.makeData));\n return child;\n }\n}\n\nfunction isObjRef(value: any) {\n switch (typeof value) {\n case \"object\":\n if (value === null) break;\n // Fall through to return true...\n case \"function\":\n return true;\n }\n return false;\n}\n","import { Slot } from \"./slot\";\nexport { Slot }\nexport const { bind, noContext } = Slot;\n\n// Relying on the @types/node declaration of global.setTimeout can make\n// things tricky for dowstream projects (see PR #7).\ndeclare function setTimeout(\n callback: (...args: any[]) => any,\n ms?: number,\n ...args: any[]\n): any;\n\n// Like global.setTimeout, except the callback runs with captured context.\nexport { setTimeoutWithContext as setTimeout };\nfunction setTimeoutWithContext(callback: () => any, delay: number) {\n return setTimeout(bind(callback), delay);\n}\n\n// Turn any generator function into an async function (using yield instead\n// of await), with context automatically preserved across yields.\nexport function asyncFromGen(\n genFn: (...args: TArgs) => any\n) {\n return function (this: any) {\n const gen = genFn.apply(this, arguments as any);\n const boundNext = bind(gen.next);\n const boundThrow = bind(gen.throw!);\n type Method = typeof boundNext | typeof boundThrow;\n\n return new Promise((resolve, reject) => {\n function invoke(method: Method, argument: any) {\n try {\n var result: any = method.call(gen, argument);\n } catch (error) {\n return reject(error);\n }\n const next = result.done ? resolve : invokeNext;\n if (isPromiseLike(result.value)) {\n result.value.then(next, result.done ? reject : invokeThrow);\n } else {\n next(result.value);\n }\n }\n const invokeNext = (value?: any) => invoke(boundNext, value);\n const invokeThrow = (error: any) => invoke(boundThrow, error);\n invokeNext();\n });\n } as (...args: TArgs) => Promise;\n}\n\nfunction isPromiseLike(value: any): value is PromiseLike {\n return value && typeof value.then === \"function\";\n}\n\n// If you use the fibers npm package to implement coroutines in Node.js,\n// you should call this function at least once to ensure context management\n// remains coherent across any yields.\nconst wrappedFibers: Function[] = [];\nexport function wrapYieldingFiberMethods(Fiber: F): F {\n // There can be only one implementation of Fiber per process, so this array\n // should never grow longer than one element.\n if (wrappedFibers.indexOf(Fiber) < 0) {\n const wrap = (obj: any, method: string) => {\n const fn = obj[method];\n obj[method] = function () {\n return noContext(fn, arguments as any, this);\n };\n }\n // These methods can yield, according to\n // https://github.com/laverdet/node-fibers/blob/ddebed9b8ae3883e57f822e2108e6943e5c8d2a8/fibers.js#L97-L100\n wrap(Fiber, \"yield\");\n wrap(Fiber.prototype, \"run\");\n wrap(Fiber.prototype, \"throwInto\");\n wrappedFibers.push(Fiber);\n }\n return Fiber;\n}\n","import { DocumentNode } from 'graphql';\nimport { wrap } from 'optimism';\n\nimport {\n StoreObject,\n Reference,\n getFragmentQueryDocument,\n} from '../../utilities';\nimport { DataProxy } from './types/DataProxy';\nimport { Cache } from './types/Cache';\n\nexport type Transaction = (c: ApolloCache) => void;\n\nexport abstract class ApolloCache implements DataProxy {\n // required to implement\n // core API\n public abstract read(\n query: Cache.ReadOptions,\n ): T | null;\n public abstract write(\n write: Cache.WriteOptions,\n ): Reference | undefined;\n public abstract diff(query: Cache.DiffOptions): Cache.DiffResult;\n public abstract watch(watch: Cache.WatchOptions): () => void;\n public abstract reset(): Promise;\n\n // Remove whole objects from the cache by passing just options.id, or\n // specific fields by passing options.field and/or options.args. If no\n // options.args are provided, all fields matching options.field (even\n // those with arguments) will be removed. Returns true iff any data was\n // removed from the cache.\n public abstract evict(options: Cache.EvictOptions): boolean;\n\n // intializer / offline / ssr API\n /**\n * Replaces existing state in the cache (if any) with the values expressed by\n * `serializedState`.\n *\n * Called when hydrating a cache (server side rendering, or offline storage),\n * and also (potentially) during hot reloads.\n */\n public abstract restore(\n serializedState: TSerialized,\n ): ApolloCache;\n\n /**\n * Exposes the cache's complete state, in a serializable format for later restoration.\n */\n public abstract extract(optimistic?: boolean): TSerialized;\n\n // Optimistic API\n\n public abstract removeOptimistic(id: string): void;\n\n // Transactional API\n\n public abstract performTransaction(\n transaction: Transaction,\n // Although subclasses may implement recordOptimisticTransaction\n // however they choose, the default implementation simply calls\n // performTransaction with a string as the second argument, allowing\n // performTransaction to handle both optimistic and non-optimistic\n // (broadcast-batching) transactions. Passing null for optimisticId is\n // also allowed, and indicates that performTransaction should apply\n // the transaction non-optimistically (ignoring optimistic data).\n optimisticId?: string | null,\n ): void;\n\n public recordOptimisticTransaction(\n transaction: Transaction,\n optimisticId: string,\n ) {\n this.performTransaction(transaction, optimisticId);\n }\n\n // Optional API\n\n public transformDocument(document: DocumentNode): DocumentNode {\n return document;\n }\n\n public identify(object: StoreObject | Reference): string | undefined {\n return;\n }\n\n public gc(): string[] {\n return [];\n }\n\n public modify(options: Cache.ModifyOptions): boolean {\n return false;\n }\n\n // Experimental API\n\n public transformForLink(document: DocumentNode): DocumentNode {\n return document;\n }\n\n // DataProxy API\n /**\n *\n * @param options\n * @param optimistic\n */\n public readQuery(\n options: Cache.ReadQueryOptions,\n optimistic = !!options.optimistic,\n ): QueryType | null {\n return this.read({\n rootId: options.id || 'ROOT_QUERY',\n query: options.query,\n variables: options.variables,\n returnPartialData: options.returnPartialData,\n optimistic,\n });\n }\n\n // Make sure we compute the same (===) fragment query document every\n // time we receive the same fragment in readFragment.\n private getFragmentDoc = wrap(getFragmentQueryDocument);\n\n public readFragment(\n options: Cache.ReadFragmentOptions,\n optimistic = !!options.optimistic,\n ): FragmentType | null {\n return this.read({\n query: this.getFragmentDoc(options.fragment, options.fragmentName),\n variables: options.variables,\n rootId: options.id,\n returnPartialData: options.returnPartialData,\n optimistic,\n });\n }\n\n public writeQuery(\n options: Cache.WriteQueryOptions,\n ): Reference | undefined {\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\n public writeFragment(\n options: Cache.WriteFragmentOptions,\n ): Reference | undefined {\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}\n","//! moment.js locale configuration\n//! locale : Dutch (Belgium) [nl-be]\n//! author : Joris Röling : https://github.com/jorisroling\n//! author : Jacob Middag : https://github.com/middagj\n\nimport moment from '../moment';\n\nvar monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split(\n '_'\n ),\n monthsParse = [\n /^jan/i,\n /^feb/i,\n /^maart|mrt.?$/i,\n /^apr/i,\n /^mei$/i,\n /^jun[i.]?$/i,\n /^jul[i.]?$/i,\n /^aug/i,\n /^sep/i,\n /^okt/i,\n /^nov/i,\n /^dec/i,\n ],\n monthsRegex = /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\\.?|feb\\.?|mrt\\.?|apr\\.?|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i;\n\nexport default moment.defineLocale('nl-be', {\n months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortWithDots;\n } else if (/-MMM-/.test(format)) {\n return monthsShortWithoutDots[m.month()];\n } else {\n return monthsShortWithDots[m.month()];\n }\n },\n\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,\n monthsShortStrictRegex: /^(jan\\.?|feb\\.?|mrt\\.?|apr\\.?|mei|ju[nl]\\.?|aug\\.?|sep\\.?|okt\\.?|nov\\.?|dec\\.?)/i,\n\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n weekdays: 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split(\n '_'\n ),\n weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'),\n weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[vandaag om] LT',\n nextDay: '[morgen om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[gisteren om] LT',\n lastWeek: '[afgelopen] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'over %s',\n past: '%s geleden',\n s: 'een paar seconden',\n ss: '%d seconden',\n m: 'één minuut',\n mm: '%d minuten',\n h: 'één uur',\n hh: '%d uur',\n d: 'één dag',\n dd: '%d dagen',\n M: 'één maand',\n MM: '%d maanden',\n y: 'één jaar',\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n );\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","export default {\r\n\taccount: {\r\n\t\taccountNameError: 'Accountnaam moet minimaal (1) teken bevatten',\r\n\t\taccountAddressError: 'Je moet een geldig adres invoeren',\r\n\t\taccountCityError: 'U moet een geldige plaatsnaam invoeren',\r\n\t\taccountZipPostalError: 'Moet een geldige postcode / postcode invoeren',\r\n\t\taccountRegionError: \"U moet een geldige regio invoeren\",\r\n\t\taccountInfo: \"Accountinfo\",\r\n\t\taccountList: {\r\n\t\t\ttitle: \"Accountlijst\"\r\n\t\t},\r\n\t\taccountLocation: \"Locatie account\",\r\n\t\taccountSpecifications: \"Accountspecificaties\",\r\n\t\tbaitListWarning: \"Als u de aaslijst van uw land niet kunt zien in het vervolgkeuzemenu hieronder, gaat u naar de volgende link om deze toe te voegen.\",\r\n\t\tclientContactInfo: \"Contactinformatie klant\",\r\n\t\tconfirmDisableMessage: \"Uitgeschakelde accounts kunnen niet worden gedownload naar uw mobiele apparaat of worden bekeken vanaf het dashboard van uw organisatie. Eerder bestaande accountbezoeken kunnen echter nog steeds worden voltooid en op de portal van uw organisatie worden geplaatst.\",\r\n\t\tconfirmDisableTitle: \"Weet u zeker dat u dit account wilt uitschakelen?\",\r\n\t\tconfirmReactivateBranchTitle: \"Filiaal opnieuw activeren\",\r\n\t\tconfirmReactivateBranchMessage: \"Het filiaal van dit account is uitgeschakeld en moet opnieuw worden geactiveerd om door te gaan, zie de filiaaldetailspagina of filiaallijst\",\r\n\t\tcreateAccount: \"Maak een account aan\",\r\n\t\tcreateNewAccount: \"Maak een nieuw account aan\",\r\n\t\tcustomizeServiceReport: \"Onderhoudsrapport op maat maken\",\r\n\t\tdeviceInspectionDetail: \"Apparaatinspectie Details\",\r\n\t\tdeviceInspectionSummary: \"Apparaatinspectie Samenvatting\",\r\n\t\tdisableAccount: \"Account uitschakelen\",\r\n\t\teditAccount: \"Account bewerken\",\r\n\t\teditAccountWarningMessage: \"Weet u zeker dat u het filiaallidmaatschap van het account: {{accountName}} wilt bijwerken? Bevestig dat er geen openstaande bezoeken zijn om de gegevensveiligheid te dragenWeet je zeker dat je het vertakkingslidmaatschap van account: {{accountName}} wilt bijwerken? Het bijwerken van het lidmaatschap van een filiaal op dit moment kan leiden tot het verlies van openstaande bezoekgegevens. Bevestig om de veiligheid van gegevens te garanderen dat er geen openstaande bezoeken zijn bij de volgende gebruikers: {{users}}\",\r\n\t\teditAccountWarningMessageNoUser: \"Weet u zeker dat u het filiaallidmaatschap van het account: {{accountName}} wilt bijwerken? Bevestig dat er geen openstaande bezoeken zijn om de gegevensveiligheid te garanderen\",\r\n\t\tenableAccount: \"Account inschakelen\",\r\n\t\tfloorPlan: \"Plattegrond\",\r\n\t\tdeleteFloorPlan: \"Verwijder afbeelding\",\r\n\t\trotateFloorPlan: \"Draai naar rechts\",\r\n\t\tupdateFloorPlan: \"Plattegrond bijwerken\",\r\n\t\tgeneralCommentsInstructions: \"Algemene opmerkingen/instructies\",\r\n\t\teventsMap: \"Evenementen kaart\",\r\n\t\theatMap: \"Hittekaart\",\r\n\t\tindustryClassification: \"Indeling industrie\",\r\n\t\tmanageAccounts: \"Accounts beheren\",\r\n\t\tnewAccount: \"Nieuw Account\",\r\n\t\tproductApplicationDetail: \"Detail van de producttoepassing\",\r\n\t\tproductApplicationSummary: \"Samenvatting van de producttoepassing\",\r\n\t\tproofOfService: \"Bewijs van onderhoud\",\r\n\t\treportingEmails: \"Rapportage-e-mails\",\r\n\t\treportingEmailNote: \"De e-mailadressen die hierboven worden vermeld, ontvangen een e-mailmelding telkens wanneer een servicebezoek wordt geüpload.\",\r\n\t\tscheduledVisits: \"Geplande bezoeken\",\r\n\t\tselectProofOfService: \"Selecteer Bewijs van Onderhoud\",\r\n\t\tserviceDetail: \"Detail Onderhoud\",\r\n\t\tserviceFrequency: \"Onderhoudsfrequentie\",\r\n\t\tserviceRuleOptions: {\r\n\t\t\tbait: {\r\n\t\t\t\tdefinedDays: \"Vaste dagen\",\r\n\t\t\t\twithActivity: \"Na activiteit\"\r\n\t\t\t},\r\n\t\t\tbaitingRules: \"Aasvoorschriften\",\r\n\t\t\tdays: \"Dagen\",\r\n\t\t\tdevice: {\r\n\t\t\t\tdefinedDays: \"Vaste dagen\",\r\n\t\t\t\teveryOtherVisit: \"1 bezoek op 2\",\r\n\t\t\t\teveryVisit: \"Elk bezoek\",\r\n\t\t\t\twithActivity: \"Na activiteit\"\r\n\t\t\t},\r\n\t\t\tdeviceRules: \"Apparaatonderhoud\",\r\n\t\t\treplaceBait: \"Vervang aas\",\r\n\t\t\ttrap: {\r\n\t\t\t\tdefinedDays: \"Vaste dagen\",\r\n\t\t\t\teveryOtherVisit: \"1 bezoek op 2\",\r\n\t\t\t\teveryVisit: \"Elk bezoek\",\r\n\t\t\t\twithActivity: \"Na activiteit\"\r\n\t\t\t},\r\n\t\t\ttrappingRules: \"Regels voor vallen\",\r\n\t\t\tvisualInspection: \"Visuele inspectie\"\r\n\t\t},\r\n\t\tserviceRules: \"Onderhoudsvoorschriften\",\r\n\t\tvisitsThisYear: \"Bezoeken dit jaar\",\r\n\t\taddNewReportingEmail: \"Nieuwe Rapportage-e-mail Toevoegen\",\r\n\t\tdevicesWithEvents: \" Apparaten met Events\",\r\n\t\tdevicesWithoutEvents: \" Apparaten Zonder Events\",\r\n\t\tsize: \"Omvang (Vierkante voet)\",\r\n\t\tsizeMetric: \"Omvang (vierkante meters)\",\r\n\t\tserviceRulesInfo: \"Dit Reglement bepaalt de controlevoorschriften voor een soort apparaat op een account. Inspecties voor alle Ambush-apparaten op 'Account 1' kunnen bijvoorbeeld worden ingesteld om alleen te worden uitgevoerd wanneer het apparaat activiteit registreert, of kunnen voor ieder bezoek verplicht gesteld worden.\",\r\n\t\tserviceRulesApplyToModels: \"Serviceregels zijn van toepassing op modellen\",\r\n\t},\r\n\tbaitType: {\r\n\t\tactiveIngredientPercentage: \"Percentage actief ingrediënt \",\r\n\t\tbaitApplied: \"Aangebracht aas\",\r\n\t\tbaitMaterial: \"Aasmateriaal\",\r\n\t\teditBaitType: \"Bewerk aassoort\",\r\n\t\terrorInvalidBaitType: \"Ongeldig aastype-ID.\",\r\n\t\tepaNumber: \"EPA-nummer\",\r\n\t\tform: \"Formulier\",\r\n\t\tgrams: \"Gram (g)\",\r\n\t\tmanageBaitList: \"Aaslijst beheren\",\r\n\t\tnewBaitType: \"Nieuw type aas\",\r\n\t\tpieceSize: \"Stukgrootte\",\r\n\t\tprovider: \"Aanbieder\",\r\n\t\tquantityApplied: \"Aangebrachte hoeveelheid\",\r\n\t\trodenticideDescription: {\r\n\t\t\tformus: \"15g Bordifacoum BLOX controleert muizen\",\r\n\t\t\tpcq: \"Holaas voor Woelmuizen en Meer\",\r\n\t\t\tfinal: \"Geëxtrudeerd aas met Brodifacoum\",\r\n\t\t\tditrac: \"Geëxtrudeerde Blox met Diphacinone\",\r\n\t\t\tzp: \"Doodt Ratten, Muizen & Goffers\",\r\n\t\t\tdetex: \"Niet-giftig aas voor Monitoren & Volgen van Aas\",\r\n\t\t\tfastrac: \"Onze Snelst Werkende Rodenticide Blox\",\r\n\t\t\tcontrac: \"Werkt Uitstekend Voor Knaagdieren\",\r\n\t\t\tterad3: \"Eersteklas samenstelling met vitamine D3\",\r\n\t\t\tliquaTox: \"In Water Oplosbaar Vloeibaar Aas\"\r\n\t\t},\r\n\t\taddRodenticideToCompare: \"Voeg Rodenticide toe om te Vergelijken\",\r\n\t\tbaitTypeName: \"Naam Aastype\",\r\n\t\tconfirmDisableTitle: \"Weet je zeker dat je dit aastype wilt uitschakelen?\",\r\n\t\tconfirmDisableMessage: \"Inactieve soorten aas zijn niet beschikbaar in de app.\",\r\n\t\tconfirmEnableTitle: \"Weet je zeker dat je dit aastype wilt inschakelen?\",\r\n\t\tconfirmEnableMessage: \"Actieve soorten aas zullen beschikbaar zijn in de app.\",\r\n\t\tcontactSales: \"Neem contact op met Sales\",\r\n\t\tinputNumberAsPercentage: \"Voer het getal in als percentage, bv. 0,1\",\r\n\t\tmanageBaitTypes: \"Aastypes Beheren\",\r\n\t\tproductLineUp: \"Productline-up\",\r\n\t\trodenticideList: \"Lijst met Rodenticiden\",\r\n\t\tselectRodenticide: \"Selecteer Rodenticide\"\r\n\t},\r\n\tbranch: {\r\n\t\tbranchAddress: \"Adres vestiging\",\r\n\t\tbranchInfo: \"Informatie vestiging\",\r\n\t\tbranchList: {\r\n\t\t\ttitle: \"Lijst vestigingen\"\r\n\t\t},\r\n\t\tbranchLogo: \"Logo vestiging\",\r\n\t\tcreateNewBranch: \"Creëer een nieuwe vestiging\",\r\n\t\teditBranch: \"Vestiging bewerken\",\r\n\t\tmanageBranches: \"Vestigingen beheren\",\r\n\t\tnewBranch: \"Nieuwe vestiging\",\r\n\t\tconfirmDisableMessage: \"Accounts die behoren tot uitgeschakelde Vestigingen kun je niet downloaden op je mobiele apparaat of bekijken vanuit het dashboard van je organisatie. Eventuele eerder bestaande accountbezoeken kun je echter nog steeds afronden en op het portaal van je organisatie plaatsen.\",\r\n\t\tconfirmDisableTitle: \"Weet je zeker dat je deze Vestiging wil uitschakelen?\",\r\n\t\tbranchesLocation: \"Locaties van Vestigingen\",\r\n\t\tdisableBranch: \"Vestiging Uitschakelen\",\r\n\t\tenableBranch: \"Vestiging Inschakelen\",\r\n\t\tconfirmEnableMessage: \"De rekeningen die bij dit filiaal horen, moeten handmatig worden ingeschakeld, zie de lijst met filiaalrekeningen.\",\r\n\t\tconfirmEnableTitle: \"Weet u zeker dat u deze tak wilt inschakelen?\",\r\n\t},\r\n\tchangePassword: {\r\n\t\tcurrentPassword: \"Huidig wachtwoord\",\r\n\t\ttitle: \"Wijzig wachtwoord\"\r\n\t},\r\n\tdevice: {\r\n\t\tdeviceInformation: \"Apparaatinformatie\",\r\n\t\tdeviceList: {\r\n\t\t\taccountEvents: \"Accountgebeurtenissen\",\r\n\t\t\tcurrentAccountCaptures: \"Opnames van lopende rekeningen\",\r\n\t\t\tcurrentAccountCapturesTooltip: \"Aantal opnames sinds het apparaat lid is geworden van het huidige account\",\r\n\t\t\tcurrentAccountEvents: \"Huidige accountgebeurtenissen\",\r\n\t\t\tcurrentAccountTooltip: \"Aantal gebeurtenissen sinds het apparaat lid is geworden van het huidige account\",\r\n\t\t\tbattery: \"Batterij\",\r\n\t\t\tgood: \"Goed\",\r\n\t\t\tready: \"Klaar\",\r\n\t\t\treplace: \"Vervang\",\r\n\t\t\ttitle: \"Apparatenlijst\",\r\n\t\t\tbad: \"Slecht\",\r\n\t\t\tmedium: \"Gemiddeld\",\r\n\t\t},\r\n\t\tdeviceLocation: \"Plaats van het apparaat\",\r\n\t\tdeviceMapInfo: \"Tijdens technicusservices zijn mobiele locatietoestemmingen nodig om coördinaten voor deze kaart te krijgen!\",\r\n\t\tdeviceLookupResults: {\r\n\t\t\tfirmwareVersion: \"Firmwareversie\",\r\n\t\t\thardwareVersion: \"Hardwareversie\",\r\n\t\t\ttitle: \"Opzoekresultaten van Apparaat\",\r\n\t\t},\r\n\t\tdeviceName: \"Apparaatnaam\",\r\n\t\tdeviceSerial: \"Apparaatreeks\",\r\n\t\tdeviceServiceHistory: {\r\n\t\t\ttitle: \"Geschiedenis van het apparaatonderhoud\"\r\n\t\t},\r\n\t\tdeviceStatusLog: {\r\n\t\t\ttitle: \"Apparaatstatuslogboek\",\r\n\t\t\tviewedTime: \"Bekeken tijd\"\r\n\t\t},\r\n\t\tdeviceNameTooltip: \"Filter opnames op apparaatnaam\",\r\n\t\tdeviceTypeTooltip: \"Filter opnames op apparaattype\",\r\n\t\tdeviceType: \"Type apparaat.\",\r\n\t\tdeviceTypeBreakdown: \"Onderverdeling apparaattype \",\r\n\t\tdisableDevice: \"Apparaat uitschakelen\",\r\n\t\teditDevice: \"Apparaat bewerken\",\r\n\t\tenableDevice: \"Apparaat inschakelen\",\r\n\t\teventFrequency: \"Onderhoudsfrequentie\",\r\n\t\tlastServiced: \"Laatste onderhoud\",\r\n\t\tlifetimeEvents: \"Levenslange events\",\r\n\t\tlifetimeEventsTooltip: \"Aantal gebeurtenissen gedurende de levensduur van het apparaat\",\r\n\t\tlookup: \"Opzoeking\",\r\n\t\tsensorTemperature: {\r\n\t\t\taverageTemp: \"Gemiddelde temperatuur\",\r\n\t\t\ttitle: \"Sensortemperatuur\"\r\n\t\t},\r\n\t\tserialNumber: \"Serienummer\",\r\n\t\ttemperature: \"Temperatuur\",\r\n\t\ttotalActiveDevices: \"Totaal aantal actieve apparaten\",\r\n\t\tconfirmDisableTitle: \"Weet je zeker dat je dit Apparaat wil uitschakelen?\",\r\n\t\tdeviceDetails: \"Apparaatgegevens\",\r\n\t\thighTemp: \"Hoge Temp.\",\r\n\t\tconfirmDisableMessage: \"Inactieve apparaten zijn niet beschikbaar in de app.\",\r\n\t\tlowTemp: \"Lage Temp.\",\r\n\t\tmanageDevices: \"Apparaten Beheren\",\r\n\t\tmediumTemp: \"Gemiddelde Temp.\",\r\n\t\tlookupHelperText: \"Voer het serienummer in om de apparaatgegevens te bekijken\",\r\n\t\tweeklyTooltip: \"Klik om wekelijkse periodes te selecteren\",\r\n\t\tfullRangeTooltip: \"Klik om de volledige geschiedenis van evenementen te bekijken\",\r\n\t\ttRex: \"T-Rex\",\r\n\t},\r\n\tforgotPassword: {\r\n\t\treset: \"Resetten\",\r\n\t\tresetPassword: \"Wachtwoord resetten\",\r\n\t\ttitle: \"Wachtwoord vergeten?\",\r\n\t\thelperText: \"Als je je wachtwoord bent vergeten, voer dan hieronder je e-mailadres in om een ​​herstellink via e-mail te ontvangen\",\r\n\t\tiRememberNow: \"Oh! Ik weet het weer.\"\r\n\t},\r\n\thome: {\r\n\t\teditDetails: {\r\n\t\t\tcompanyName: \"Bedrijfsnaam\",\r\n\t\t\tcontent: \"Details\",\r\n\t\t\torganizationInfo: \"Informatie over de organisatie\"\r\n\t\t}\r\n\t},\r\n\tsearchBar: {\r\n\t\tplaceholder: \"Voer een trefwoord in om te zoeken...\"\r\n\t},\r\n\tlogin: {\r\n\t\temailAddress: \"E-mailadres\",\r\n\t\tforgotPassword: \"Ben je je wachtwoord vergeten?\",\r\n\t\tlogIntoYourAccount: \"Log in op je account\",\r\n\t\tregister: \"Schrijf je in\",\r\n\t\trememberMe: \"Onthoud mij\",\r\n\t\tdontHaveAnAccount: \"Heb je geen account?\",\r\n\t\thello: \"Hallo!\",\r\n\t\tlogIn: \"Inloggen\"\r\n\t},\r\n\tloraWan: {\r\n\t\tacknowledgePackage: \"Erken Pakket\",\r\n\t\tapplicationNetwork: \"Applicatienetwerk\",\r\n\t\tapplicationNetworks: \"Application Networks\",\r\n\t\tapplicationNetworkChangeText: \"You are about to change your Application Network. All devices within your {{2}} were found in {{0}} and will be moved into {{1}}.\",\r\n\t\tapplicationNetworkChangeDevicesText: \"You are about to change your Application Network. All devices within your {{3}} were found in {{0}} and will be moved into {{1}}. {{2}} Devices were not found in {{0}}, they will also be transferred but might not work as expected.\",\r\n\t\tapplicationNetworkChangeNoCheckText: \"You are about to change your Application Network. All devices within your {{1}} will be moved into {{0}}.
A report will be emailed to you once this process is complete.
Warning: Some devices might not be moved properly..\",\r\n\t\tapplicationNetworkLookup: \"Application Network Lookup\",\r\n\t\tapplicationNetworkName: \"Application Network Name\",\r\n\t\tapplicationNetworkSetText: \"You are about to set up your Application Network. All devices within your {{1}} will belong to {{0}}\",\r\n\t\tapplicationNetworkText: \"Please select an available \\\"Application Network\\\" for your organization or create a new one\",\r\n\t\tapplicationNetworkText2: \"You can modify your preferred networks list by adding and removing items from your LENS application list.\",\r\n\t\tapplied: \"Applied\",\r\n\t\tappliedApplicationNetwork: \"Applied Application Network:\",\r\n\t\tautoEnableLoraWanHierarchyOrganization: \"Schakel LoRaWAN automatisch in alle filialen en accounts in\",\r\n\t\tautoEnableLoraWanHierarchyBranch: \"Schakel LoRaWAN automatisch in op alle accounts in deze branche\",\r\n\t\tbatteryPercentage: \"Batterij percentage\",\r\n\t\tconfirmDisableRemoteMonitoringOrganization: \"Are you sure you want to disable Remote Monitoring?\",\r\n\t\tconfirmDisableRemoteMonitoringOrganizationText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n\t\tconfirmDisableRemoteMonitoringOrganizationNoLensText: \"This will disable all Remote Monitoring features within your organization.\",\r\n\t\tconfirmLensAccountSwapText: \"It seems that you are trying to connect to a LENS account belonging to a different organization. To connect, please remove any existing Remote Monitoring Traps from all your accounts then try again.\",\r\n\t\tconfirmLensLogout: \"Are you sure you want to Logout from LENS?\",\r\n\t\tconfirmLensLogoutText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n\t\tconnect: \"Connect\",\r\n\t\tcustomConfigurationsFound: \"Aangepaste instellingen gevonden\",\r\n\t\tcustomConfigurationsBranchesAndSitesFoundText: \"There are {{branches}} Branches and {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n\t\tcustomConfigurationsSitesFoundText: \"There are {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n\t\tdataPackageOrigin: \"Oorsprong gegevenspakket\",\r\n\t\tdevEui: \"DevEUI\",\r\n\t\tdevEuiInfoTitle: \"DevEUI - (Excel- en CSV-indeling)\",\r\n\t\tdeviceSummaryRemoteMonitor: \"Apparaatoverzicht (monitor op afstand)\",\r\n\t\tdisabled: \"Uitgeschakeld\",\r\n\t\tdisableRemoteMonitoring: \"Schakel toezicht op afstand uit\",\r\n\t\tenabled: \"Ingeschakeld\",\r\n\t\tenableRemoteMonitoring: \"Schakel bewaking op afstand in\",\r\n\t\teventNotificationThreshold: \"Event Notification Threshold\",\r\n\t\tfailedLoraJoinAttempts: \"Mislukte LoRa-deelnamepogingen\",\r\n\t\tformatCells: \"Cellen opmaken\",\r\n\t\tformatCellsItem1: \"Klik met de rechtermuisknop op de kolomkop, selecteer Cellen opmaken\",\r\n\t\tformatCellsItem2: \"Kies Aangepast en typ 16 nullen: \\\"0000000000000000\\\"\",\r\n\t\tformatCellsItem3: \"Klik op de knop \\\"OK\\\" om de wijzigingen te bevestigen\",\r\n\t\tfullList: \"Full List\",\r\n\t\theartBeatTime: \"Hartslag tijd\",\r\n\t\tinvalid: \"Ongeldig\",\r\n\t\tjoinDelay: \"Join Delay\",\r\n\t\tkeepCustom: \"Blijf op maat\",\r\n\t\tlastPackageReceived: \"Laatst ontvangen pakket\",\r\n\t\tlensLogout: \"LENS Logout\",\r\n\t\tlinkedLensAccount: \"Gelinkt lensaccount\",\r\n\t\tloraDataRate: \"LoRa-datumtarief\",\r\n\t\tloraJoinAttempts: \"LoRa Deelname Pogingen\",\r\n\t\tloraJoinStatus: \"LoRa-lidmaatschapsstatus\",\r\n\t\tloraPowerLevel: \"LoRa-vermogensniveau\",\r\n\t\tloraSNRMinimum: \"LoRa SNR-minimum\",\r\n\t\tloraSNRMaximum: \"LoRa Maximale SNR\",\r\n\t\tloraSubChannelPlan: \"LoRa-subkanaalplan\",\r\n\t\tloraWan: \"LoRaWan\",\r\n\t\tloraWanModeDevice: \"LoRaWan-modus (apparaat)\",\r\n\t\tloraWanNetwork: \"LoRaWan-netwerk\",\r\n\t\tloraWanNetworkAccount: \"LoRaWan-netwerk (Account)\",\r\n\t\tloraWanNetworkBranch: \"LoRaWan-netwerk (Bijkantoor)\",\r\n\t\tloraWanNetworkOrganization: \"LoRaWan-netwerk (Organisatie)\",\r\n\t\tloraWanNetworkTrap: \"LoRaWan-netwerk (Val)\",\r\n\t\tloraWanInformation: \"LoRaWan-informatie\",\r\n\t\tloraWanDataPackage: \"LoRaWan-gegevenspakket\",\r\n\t\tloraWanEnabledBranchText: \"Bewaking op afstand wordt in-/uitgeschakeld voor alle accounts in dit filiaal.\",\r\n\t\tloraWanEnabledOrganizationText: \"Bewaking op afstand wordt in-/uitgeschakeld voor alle filialen en accounts in deze organisatie.\",\r\n\t\tloraWanEnabledSiteText: \"Bewaking op afstand wordt alleen voor dit account in-/uitgeschakeld.\",\r\n\t\tloraWanHealth: \"LoRaWan Gezondheid\",\r\n\t\tloraWanSignal: \"LoRaWan-signaal\",\r\n\t\tloraWanSignalTrap: \"LoRaWan-signaal (Val)\",\r\n\t\tloraWanStatus: \"LoRaWan-status\",\r\n\t\tloraWanRegion: \"LoRaWan-regio\",\r\n\t\tnetworkDelay: \"Network Delay\",\r\n\t\tnetworkName: \"Network Name\",\r\n\t\tnewNetwork: \"New Network\",\r\n\t\tnoApplicationNetworkApplied: \"No application network applied, please select one to continue.\",\r\n\t\tnoNetwork: \"Geen netwerk\",\r\n\t\tnoSignal: \"Geen signaal\",\r\n\t\tnumberOfRetries: \"Aantal nieuwe pogingen\",\r\n\t\toptional: \"Optional\",\r\n\t\torganizationBranchesAndAccounts: \"Organization, Branches and Accounts\",\r\n\t\torganizationOnly: \"Organization Only\",\r\n\t\toverwrite: \"Overschrijven\",\r\n\t\tpackageAcknowledge: \"Pakket bevestiging\",\r\n\t\tpreferredNetworks: \"Preferred Networks\",\r\n\t\tremoteMonitor: \"Externe monitor\",\r\n\t\tremoteMonitorAccount: \"Externe monitor (Account)\",\r\n\t\tremoteMonitorBranch: \"Externe monitor (Bijkantoor)\",\r\n\t\tremoteMonitorLastPackage: \"Externe monitor (Last Package)\",\r\n\t\tremoteMonitorLoraWan: \"Externe monitor (LoRaWan)\",\r\n\t\tremoteMonitorOrganization: \"Externe monitor (Organisatie)\",\r\n\t\tremove: \"Remove\",\r\n\t\tretrySentPackage: \"Verzonden pakket opnieuw proberen\",\r\n\t\tribbonShortcuts: \"Lintsnelkoppelingen\",\r\n\t\tribbonShortcutsItem1: \"Klik met de rechtermuisknop op de kolomkop, selecteer Cellen opmaken\",\r\n\t\tribbonShortcutsItem2: \"Kies Aangepast en typ 16 nullen: \\\"0000000000000000\\\"\",\r\n\t\tribbonShortcutsItem3: \"Klik op de knop \\\"OK\\\" om de wijzigingen te bevestigen\",\r\n\t\tscientificNotation: \"Wetenschappelijke notatie\",\r\n\t\tscientificNotationText: \"Wanneer het Excel- of CSV-bestand is gedownload, worden sommige DevEUI-metingen standaard weergegeven in wetenschappelijke notatie \\\"8e+13\\\". Als u een getal van meer dan 12 cijfers in een Excel-spreadsheet hebt, wordt het getal automatisch gecorrigeerd naar wetenschappelijke notatie voor de beknoptheid.\",\r\n\t\tselected: \"Selected\",\r\n\t\tsolution: \"Oplossing\",\r\n\t\tstrong: \"Krachtig\",\r\n\t\tsuccessfulLoraJoinAttempts: \"Succesvolle LoRa-deelnamepogingen\",\r\n\t\tsupportImage: \"Ondersteuning Afbeelding\",\r\n\t\tswap: \"Swap\",\r\n\t\tswapLensAccount: \"Swap LENS Account\",\r\n\t\ttotalLoraPayloadsFailed: \"Totaal LoRa-payloads mislukt\",\r\n\t\ttotalLoraPayloadsSent: \"Totaal verzonden LoRa-payloads\",\r\n\t\ttransmissionFrequency: \"Transmission Frequency\",\r\n\t\tunableToConnect: \"Unable To Connect\",\r\n\t\tunapplied: \"Unapplied\",\r\n\t\tunselected: \"Unselected\",\r\n\t\tupdateNetwork: \"Update Network\",\r\n\t\tupdateSettings: \"Update Settings\",\r\n\t\tusingFormatCellsPopUp: \"Pop-up Cellen opmaken gebruiken\",\r\n\t\tusingRibbonShortcuts: \"Lintsnelkoppelingen gebruiken\",\r\n\t\tweak: \"Zwak\",\r\n\t\twillBeUpdatedTo: \"will be updated to:\",\r\n\t},\r\n\tmanageAdminAccount: {\r\n\t\tadminOverview: {\r\n\t\t\tnextPaymentScheduledFor: \"Volgende betaling is gepland voor\",\r\n\t\t\tscheduledPayment: \"Geplande Betaling\",\r\n\t\t\tnoScheduledPayments: \"U heeft geen geplande betalingen!\",\r\n\t\t\tpaymentsPhaseOutNotice: \"Vanaf 22 oktober 2022 gaan we het betalen uitfaseren.\",\r\n\t\t},\r\n\t\tbillingHistory: {\r\n\t\t\tselectYear: \"Selecteer Jaar\",\r\n\t\t\tmoneySpentThisMonth: \"Uitgegeven Geld Deze Maand\",\r\n\t\t},\r\n\t\tmanageSubscription: {\r\n\t\t\tactiveBillableUsers: \"Actieve factureerbare gebruikers\",\r\n\t\t\tactiveLicenses: \"Actieve licenties\",\r\n\t\t\tbilling: \"Facturering\",\r\n\t\t\tbillingFrequency: \"Factureringsfrequentie\",\r\n\t\t\tbillingMethod: \"Factureringsmethode\",\r\n\t\t\tpendingLicenses: \"In afwachting van de licenties\",\r\n\t\t\treceipts: {\r\n\t\t\t\tamount: \"Bedrag\",\r\n\t\t\t\treceipt: \"Ontvangstbewijs\",\r\n\t\t\t\ttype: \"Type\",\r\n\t\t\t\ttitle: \"Bonnetjes\",\r\n\t\t\t\tunit: \"Eenheid\"\r\n\t\t\t},\r\n\t\t\tsubscription: \"Abonnement\",\r\n\t\t\ttitle: \"Abonnement beheren\",\r\n\t\t\tcancelSubscription: \"Abonnement Opzeggen\",\r\n\t\t\tpleaseReadBeforeProceeding: \"Lees eerst voor je verdergaat\",\r\n\t\t\tconfirmCancelSubscriptionMessage2: \"Abonnementen op Bell Sensing worden automatisch verlengd, tenzij je je ervoor afmeldt.\",\r\n\t\t\ttotalAmount: \"Totale Hoeveelheid\",\r\n\t\t\tconfirmCancelSubscriptionMessage: \"Je bent momenteel aangemeld als . Als dit niet het Bell Sensing-account van je abonnement is, schakel dan over naar het juiste account.\"\r\n\t\t},\r\n\t\tpaymentMethod: {\r\n\t\t\tbillingInformation: \"Facturatie-informatie\",\r\n\t\t\tcardNumber: \"Kaartnummer\",\r\n\t\t\tcurrentPaymentMethod: \"Huidige betaalmethode\",\r\n\t\t\tcvv: \"CVV\",\r\n\t\t\texpiresOnMMYY: \"Verloopt op (MMJJ)\",\r\n\t\t\tmethod: \"Methode\",\r\n\t\t\tpayment: \"Betaling\",\r\n\t\t\tpaymentMethod: \"Betalingsmethode\",\r\n\t\t\tbalanceTrend: \"Saldotrend\",\r\n\t\t\tlastModified: \"Laatst Gewijzigd\",\r\n\t\t\tnameOnCard: \"Naam op Kaart\",\r\n\t\t\thelperText: \"De soorten kaarten die geaccepteerd worden, verschillen per locatie en product. We raden je aan om alle contact- en factuurgegevens bij te houden.\",\r\n\t\t\ttypeOfCard: \"Type Kaart\",\r\n\t\t},\r\n\t\tmanageAdminAccount: \"Beheer Beheerdersaccount\",\r\n\t},\r\n\tmostActiveUser: {\r\n\t\tname: \"Naam\",\r\n\t\tnoOfVisits: \"Aantal uitgevoerde bezoeken\",\r\n\t\tlastReported: \"Laatst Gerapporteerd\",\r\n\t\ttitle: \"Meest Actieve Gebruiker\"\r\n\t},\r\n\tnavigation: {\r\n\t\tclickHere: \"Klik hier\",\r\n\t\thome: \"Home\",\r\n\t\tmanageAccount: \"Beheer Account\",\r\n\t\treports: \"Rapporten\",\r\n\t\tcontactSupport: \"Neem contact op met Support\",\r\n\t\tgeneralSettings: \"Algemene Instellingen\",\r\n\t\tsubject: \"Onderwerp\",\r\n\t\twourEmailAddress: \"Je e-mailadres\"\r\n\t},\r\n\tremoteMonitor: {\r\n\t\tlatestGatewayReadings: \"Laatste gateway-metingen\",\r\n\t\tlatestServiceReadings: \"Laatste onderhoudsgegevens\",\r\n\t},\r\n\trecentActivities: {\r\n\t\tdescription: \"Beschrijving\",\r\n\t\tdetails: \"Details\",\r\n\t\ttime: \"Tijd\",\r\n\t\ttitle: \"Recente activiteiten\",\r\n\t\treported: \"Gerapporteerd\"\r\n\t},\r\n\tregister: {\r\n\t\tcreateAccountTitle: \"Maak uw eerste account aan\",\r\n\t\tcreateAccountText: \"Om onze diensten te kunnen gebruiken en apparaten aan een locatie toe te voegen, moet u uw eerste account aanmaken.\",\r\n\t\tcreateDefaultAccount: \"Maak een standaardaccount\",\r\n\t\tcreateCustomAccount: \"Maak een aangepast account\",\r\n\t\taddDetailsText: \"Zodra u bent ingelogd, kunt u uw accountgegevens bewerken en toevoegen.\",\r\n\t\tpasswordRequirements: \"Vereisten voor het wachtwoord\",\r\n\t\ttermsAndConditions: \"Algemene voorwaarden\",\r\n\t\tpasswordMinimumLength: \"Moet ten minste 8 tekens bevatten.\",\r\n\t\tpasswordNumberRequired: \"Moet een numeriek cijfer bevatten ('0'-'9')\",\r\n\t\tpasswordLowercaseRequired: \"Moet ten minste één kleine letter ('a'-'z') bevatten\",\r\n\t\tpasswordUppercaseRequired: \"Moet ten minste één hoofdletter ('A'-'Z') bevatten\",\r\n\t\tduplicateEmail: \"Dit e-mailadres is al toegevoegd\",\r\n\t\tvalidEmail: \"Vul een geldig e-mailadres in.\",\r\n\t\tserviceProviders: \"Dienstverleners\",\r\n\t\tselectDefault: \"Kies alstublieft een van de volgende opties:\",\r\n\t\tconfirmPasswordMismatch: \"Het wachtwoord en het bevestigingswachtwoord komen niet overeen.\",\r\n\t\tproductInfo: \"Product informatie\",\r\n\t\tuserProfile: \"Gebruikersprofiel\",\r\n\t\tcompanyProfile: \"Bedrijfsprofiel\",\r\n\t\tcompanyDetails: \"Bedrijfsgegevens\",\r\n\t\tpaymentDetails: \"Betalingsdetails\",\r\n\t\taccountDetails: \"Accountgegevens\",\r\n\t\tsuccess: \"Succes\",\r\n\t\tareYouAuthorized: \"Bent u door uw bedrijf geautoriseerd om een Bell Sensing Technology-account aan te maken?*\",\r\n\t\tback: \"Rug\",\r\n\t\tnext: \"Volgende\",\r\n\t\talreadyHaveAnAccount: \"Heb je al een account?\",\r\n\t\tiAcceptAgreement: \"Ik accepteer de algemene voorwaarden\",\r\n\t\talmostDone: \"Bijna klaar!\",\r\n\t\tpleaseCheckEmail: \"Controleer uw e-mail om uw account te activeren. Als u deze niet ontvangt, controleer dan uw map met ongewenste e-mail!\",\r\n\t\tnumberOfTechnicians: \"Aantal technici\",\r\n\t\tdistributor: \"Distributeur\",\r\n\t\tpleaseIdentify: \"Geef aan welke diensten u levert:*\",\r\n\t\thowDidYouHear: \"hoe heb je over ons gehoord?*\"\r\n\t},\r\n\tcardTable: {\r\n\t\tsearchBar: \"Zoekbalk...\"\r\n\t},\r\n\trelativeTime: {\r\n\t\tfuture: \"in %s\",\r\n\t\tpast: \"%s geleden\",\r\n\t\tseconds: \"seconden\",\r\n\t\tminutes: \"minuten\",\r\n\t\thour: \"een uur\",\r\n\t\thours: \"%d uur\",\r\n\t\tday: \"een dag\",\r\n\t\tdays: \"%d dagen\",\r\n\t\tmonth: \"een maand\",\r\n\t\tmonths: \"%d maanden\",\r\n\t\tyear: \"een jaar\",\r\n\t\tyears: \"%d jaar\",\r\n\t},\r\n\thierarchyExplanation: {\r\n\t\tmetaphor: \"Metafoor\",\r\n\t\ttree: \"Boom\",\r\n\t\ttreeBranch: \"Boomtak\",\r\n\t\tfruit: \"Fruit\",\r\n\t\tseeds: \"zaden\",\r\n\t\texample: \"Voorbeeld\",\r\n\t\torganizationExplain: \"Dit is een term voor het bedrijf als geheel. Bij de eerste aanmelding wordt dit gemaakt. Er is eerst een organisatie vereist voordat filialen, accounts en gebruikers worden aangemaakt.\",\r\n\t\tbranchExplain: \"De organisatie kan worden opgesplitst in filialen om een diepere controle over de activiteiten en betalingsmethoden mogelijk te maken.\",\r\n\t\tsiteExplain: \"Mag ook wel een 'site' genoemd worden, zo noemen wij onze klanten. Accounts kunnen binnen een filiaal worden aangemaakt en dat filiaal heeft dan directe controle over hun activiteiten.\",\r\n\t\tdeviceExplain: \"Een andere manier om naar onze vallen te verwijzen. Met name de sensoren in onze vallen.\"\r\n\t},\r\n\treport: {\r\n\t\taccountHistorical: \"Geschiedenis account\",\r\n\t\taccountHistoricalReport: {\r\n\t\t\tdetected: \"Gedetecteerd\",\r\n\t\t\tinstalled: \"Geïnstalleerd\",\r\n\t\t\tserviced: \"Onderhouden\",\r\n\t\t\tstatus: \"Status\",\r\n\t\t\ttitle: \"Historische Rapportage Account\",\r\n\t\t},\r\n\t\tbaitSummaryReport: {\r\n\t\t\ttitle: \"Samenvattend rapport van het aas\",\r\n\t\t\ttotalPieces: \"Totaal aantal stukken\",\r\n\t\t},\r\n\t\tfilter: \"Filter\",\r\n\t\thistoricalReport: \"Historisch rapport\",\r\n\t\tincludeExpansion: \"Uitbreiding opnemen\",\r\n\t\tname: \"Naam\",\r\n\t\tnote: \"Opmerkingen\",\r\n\t\tnoteReport: {\r\n\t\t\treplies: \"Antwoorden\",\r\n\t\t\ttime: \"Tijd\",\r\n\t\t\ttitle: \"Opmerking Rapport\",\r\n\t\t\tuser: \"Gebruiker\"\r\n\t\t},\r\n\t\treport: \"Rapport\",\r\n\t\tserviceTech: \"Onderhoudstechniek\",\r\n\t\tserviceTechSummaryReport: {\r\n\t\t\tdateOfService: \"Datum onderhoud\",\r\n\t\t\tdetails: \"Details\",\r\n\t\t\tpdf: \"PDF\",\r\n\t\t\ttitle: \"Samenvattend rapport onderhoudstechniek\"\r\n\t\t},\r\n\t\tbaitSummary: \"Samenvatting van Aas\",\r\n\t\tmanageReports: \"Rapporten Beheren\",\r\n\t\tfilterDesc: \"Selecteer hieronder de instellingen waarop je je rapport wilt filteren\",\r\n\t\tselectUser: \"Selecteer Gebruiker\",\r\n\t\tsummaryReport: \"Samenvattend verslag\"\r\n\t},\r\n\tserviceHistory: {\r\n\t\tbranch: \"Vestiging\",\r\n\t\tlocation: \"Locatie\",\r\n\t\tservicedBy: \"Onderhouden door\",\r\n\t\tserviceNotes: \"Onderhoudsnota's\",\r\n\t\ttitle: \"Onderhoudsgeschiedenis\"\r\n\t},\r\n\tsetPassword: {\r\n\t\tactivateAccount: \"Activeer account\",\r\n\t\ttitle: \"Stel een wachtwoord in\",\r\n\t},\r\n\tresendVerification: {\r\n\t\tlinkExpired: \"Link verlopen\",\r\n\t\tresendLink: \"De activeringslink die u probeert te openen, is verlopen. Er is een nieuwe link naar uw e-mail verzonden. Let op: de link verloopt over 72 uur en elke gebruiker die momenteel is ingelogd op deze computer wordt automatisch uitgelogd zodra op de link wordt geklikt!\"\r\n\t},\r\n\tshared: {\r\n\t\taccount: \"Account\",\r\n\t\taccountName: \"Accountnaam\",\r\n\t\taccounts: \"Accounts\",\r\n\t\taccountsDetails: \"Accountdetails\",\r\n\t\tactions: \"Acties\",\r\n\t\tactivationDate: \"Activeringsdatum\",\r\n\t\tactive: \"Actief\",\r\n\t\tactiveBaits: \"Actief aas\",\r\n\t\tactiveBranches: \"Actieve vestigingen\",\r\n\t\tactiveIngredient: \"Actief ingrediënt\",\r\n\t\tactiveTechnicians: \"Actieve Technici\",\r\n\t\tadd: \"Voeg toe\",\r\n\t\taddress: \"Adres\",\r\n\t\taddress2: \"Adres 2\",\r\n\t\tall: \"Alle\",\r\n\t\taverage: \"Gemiddeld\",\r\n\t\tbaitApplicationRate: \"Toepassingsdosering aas\",\r\n\t\tbaitApplied: \"Toegepast aas\",\r\n\t\tbaits: \"Aas\",\r\n\t\tbaitTypes: \"Aassoorten\",\r\n\t\tbatteryLevel: \"Batterijniveau\",\r\n\t\tbranch: \"Vestiging\",\r\n\t\tbranches: \"Vestigingen\",\r\n\t\tbranchName: \"Naam vestiging\",\r\n\t\tcancel: \"Annuleer\",\r\n\t\tcaptures: \"Vangsten\",\r\n\t\tcaptureTotals: \"Totaal aantal vangsten\",\r\n\t\tcategory: \"Categorie\",\r\n\t\tcity: \"Stad\",\r\n\t\tclose: \"Sluiten\",\r\n\t\tcompany: \"Bedrijf\",\r\n\t\tconfirmPassword: \"Bevestig het wachtwoord\",\r\n\t\tconfirm: \"Bevestig\",\r\n\t\tcountry: \"Land\",\r\n\t\tcontinue: \"Doorgaan\",\r\n\t\tcreate: \"Creëren\",\r\n\t\tdashboard: \"Dashboard\",\r\n\t\tdate: \"Datum\",\r\n\t\tdateRangeOptionText: \"Datumbereik optie\",\r\n\t\tdescription: \"Beschrijving\",\r\n\t\tdetails: \"Details\",\r\n\t\tdevice: \"Apparaat\",\r\n\t\tdeviceModel: \"Apparaatmodel\",\r\n\t\tdevices: \"Apparaten\",\r\n\t\tdisable: \"Schakel uit.\",\r\n\t\tdownload: \"Download\",\r\n\t\tdownloadChart: \"Kaart downloaden\",\r\n\t\tdownloadTooltip: \"Deze actie zal alle beschikbare logboeken opvragen en downloaden, het kan langer duren om te verwerken.\",\r\n\t\tedit: \"Edit\",\r\n\t\teditDetails: \"Bewerk Details\",\r\n\t\temail: \"E-mail\",\r\n\t\temailAddress: \"E-mailadres\",\r\n\t\tenable: \"Schakel in.\",\r\n\t\tevent: \"Event\",\r\n\t\tevents: \"Events\",\r\n\t\teventTotals: \"Totaal aantal events\",\r\n\t\teventTooltip : \"L'intervallo dei dati visualizzati va dalla data del primo evento di questa visita alla data di inizio di questa visita.\",\r\n\t\tfullRange: \"Volledig bereik\",\r\n\t\tweekly: \"Wekelijks\",\r\n\t\tfullName: \"Volledige naam\",\r\n\t\tgeneralInfo: \"Algemene informatie\",\r\n\t\thistory: \"Geschiedenis\",\r\n\t\tinformation: \"Informatie\",\r\n\t\tlanguage: \"Taal\",\r\n\t\tlastVisit: \"Laatste bezoek\",\r\n\t\tlatitude: \"Breedtegraad\",\r\n\t\tlongitude: \"Lengtegraad\",\r\n\t\tlocation: \"Locatie\",\r\n\t\tmainContactPhone: \"Hoofdcontacttelefoon\",\r\n\t\tmanage: \"Beheer\",\r\n\t\tmostActiveDevice: \"Meest actieve apparaat:\",\r\n\t\tname: \"Naam\",\r\n\t\tnewPassword: \"Nieuw wachtwoord\",\r\n\t\tno: \"Geen\",\r\n\t\tnotes: \"Opmerkingen\",\r\n\t\tnoVisitsYet: \"Nog geen bezoeken\",\r\n\t\tnumberOfEvents: \"Aantal events\",\r\n\t\tok: \"Ok\",\r\n\t\torganization: \"Organisatie\",\r\n\t\toverview: \"Overzicht\",\r\n\t\tpassword: \"Wachtwoord\",\r\n\t\tpending: \"In afwachting van\",\r\n\t\tpercentage: \"Percentage\",\r\n\t\tphoneNumber: \"Telefoonnummer\",\r\n\t\tquantity: \"Hoeveelheid\",\r\n\t\trangeTooltip: \"Het bereik van de weergegeven gegevens loopt van de einddatum van het vorige bezoek tot de startdatum van dit bezoek.\",\r\n\t\tregulatoryNumber: \"Regelgevend aantal\",\r\n\t\tsave: \"Opslaan\",\r\n\t\tsaveChanges: \"Wijzigingen opslaan\",\r\n\t\tsearchAddress: \"Zoek adres\",\r\n\t\tselect: \"Selecteer\",\r\n\t\tselectBranch: \"Selecteer vestiging\",\r\n\t\tservice: \"Onderhoud\",\r\n\t\tserviceBaitType: \"Aassoort onderhoud\",\r\n\t\tserviceBaitUsed: \"Gebruikte aas onderhoud\",\r\n\t\tserviceDate: \"Onderhoudsdatum\",\r\n\t\tserviceIsCapture: \"Onderhoud vastleggen\",\r\n\t\tservices: \"Onderhoudsbeurten\",\r\n\t\tstatus: \"Status\",\r\n\t\ttechnicians: \"Technici\",\r\n\t\ttrendAnalysis: \"Trendanalyse\",\r\n\t\tunit: \"Eenheid\",\r\n\t\tunits: \"Eenheden\",\r\n\t\tupdate: \"Bijwerken\",\r\n\t\tupdated: \"Bijgewerkt\",\r\n\t\tupdatedBy: \"Bijgewerkt door\",\r\n\t\tusers: \"Gebruikers\",\r\n\t\tview: \"Bekijk\",\r\n\t\tvisit: \"Bezoek\",\r\n\t\tvisits: \"Bezoeken\",\r\n\t\tvisitTime: \"Bezoektijd\",\r\n\t\twarning: \"Waarschuwing\",\r\n\t\tyes: \"Ja\",\r\n\t\tzipPostal: \"Postcode\",\r\n\t\taccountPerformance: \"Accountprestaties\",\r\n\t\taction: \"Actie\",\r\n\t\tactiveAccounts: \"Actieve Accounts\",\r\n\t\tactivity: \"Activiteit\",\r\n\t\tactivities: \"Activiteiten\",\r\n\t\taddAccountToCompare: \"Voeg Account toe om te Vergelijken\",\r\n\t\taddBranchToCompare: \"Voeg Vestiging toe om te Vergelijken\",\r\n\t\taddDeviceToCompare: \"Voeg Apparaat toe om te Vergelijken\",\r\n\t\taverageBaitApplicationRate: \"Gemiddelde Dosering van Aas\",\r\n\t\taverageBaitRefillPerVisit: \"Gemiddeld Aas Bijvullen per Bezoek\",\r\n\t\taverageRefill: \"Gemiddelde Vulling\",\r\n\t\taverageVisitTime: \"Gemiddelde Bezoektijd\",\r\n\t\tbaitName: \"Naam van Aas\",\r\n\t\tbaitTypesDetails: \"Gegevens van Aastypes\",\r\n\t\tbranchLocation: \"Vestigingslocatie\",\r\n\t\tbranchPerformance: \"Prestaties van Vestiging\",\r\n\t\tbranchesDetails: \"Gegevens van Vestiging\",\r\n\t\tfalse: \"ONJUIST\",\r\n\t\thierarchyExplanation: \"Uitleg van Hiërarchie\",\r\n\t\tinactive: \"Inactief\",\r\n\t\tlast: \"Laatst\",\r\n\t\tloading: \"Bezig met laden\",\r\n\t\tlogOut: \"Uitloggen\",\r\n\t\tmainAddress: \"Hoofdadres\",\r\n\t\tmodify: \"Aanpassen\",\r\n\t\tmostActiveBranches: \"Meest Actieve Vestigingen\",\r\n\t\tmostUsedBait: \"Meest Gebruikte Aas\",\r\n\t\tmostUsedBaits: \"Meest Gebruikte Soorten Aas\",\r\n\t\tmostVisitedAccount: \"Meest Bezochte Account\",\r\n\t\tnoDataFound: \"Geen Data Gevonden\",\r\n\t\tnoneSelected: \"Geen geselecteerd\",\r\n\t\tnoneSelectedMessage: \"Maak uw keuze uit een van de bovenstaande opties\",\r\n\t\torganizationDetails: \"Organisatiegegevens\",\r\n\t\tselectLanguage: \"Selecteer je taal\",\r\n\t\trecent: \"Recent\",\r\n\t\tresults: \"Resultaten\",\r\n\t\trows: \"Rijen\",\r\n\t\trowsPerPage: \"Rijen per pagina\",\r\n\t\tscrollDownToViewMore: \"Scroll naar beneden om meer te bekijken\",\r\n\t\tselectAccount: \"Selecteer Account\",\r\n\t\tselectCountry: \"Selecteer Land\",\r\n\t\tselectDevice: \"Selecteer Apparaat\",\r\n\t\tselectIndustry: \"Selecteer Industrie\",\r\n\t\tselectRegion: \"Selecteer Regio\",\r\n\t\tselectServiceFrequency: \"Selecteer Onderhoudsfrequentie\",\r\n\t\tselectSize: \"Selecteer Omvang\",\r\n\t\tsendEmail: \"Verstuur E-mail\",\r\n\t\tstateProvince: \"Staat/Provincie\",\r\n\t\tsummary: \"Overzicht\",\r\n\t\ttrue: \"JUIST\",\r\n\t\tusersDetails: \"Gebruikersgegevens\",\r\n\t\tusersRecords: \"Gebruikersrecord\",\r\n\t\tselectAll: \"Selecteer alles\",\r\n\t\terror: \"Er is een fout opgetreden.\",\r\n\t\terrorAccountText: \"Account mag niet dezelfde naam hebben als een bestaand account, gebruik een andere naam.\",\r\n\t\terrorBranchText: \"Branch kan niet dezelfde naam hebben als een bestaande Branch, gebruik een andere naam.\",\r\n\t\texpand: \"Uitbreiden\",\r\n\t\terrorUserText: \"Deze Email is al in gebruik.\",\r\n\t},\r\n\tterms: {\r\n\t\tsubscriptionAgreement: \"Abonnementsovereenkomst\",\r\n\t\tread: \"Lezen\",\r\n\t\ttitle: \"Algemene voorwaarden\",\r\n\t\treadingTimeCalculation: \"** De berekening is gebaseerd op de gemiddelde leessnelheid van ongeveer 300 woorden per minuut (wpm).\",\r\n\t\treadingTimeMinutes: \"30-40 minuten\",\r\n\t\tagreement: \"Overeenkomst\",\r\n\t\testimatedReadingTime: \"Geschatte leestijd:\"\r\n\t},\r\n\tuser: {\r\n\t\taccessLevels: \"Toegangsniveaus\",\r\n\t\tgeneralSettings: \"Algemene Instellingen\",\r\n\t\taccountServiced: {\r\n\t\t\tbaitApplied: \"Toegepast aas\",\r\n\t\t\tduration: \"Duur\",\r\n\t\t\ttitle: \"Onderhouden account\"\r\n\t\t},\r\n\t\tactiveUsers: \"Actieve gebruikers\",\r\n\t\tallUsers: \"Alle gebruikers\",\r\n\t\tbranchAccess: \"Toegang vestiging\",\r\n\t\tcorporate: \"Zakelijke\",\r\n\t\tcreateNewUser: \"Nieuwe gebruiker aanmaken\",\r\n\t\tdisableUser: \"Gebruiker uitschakelen\",\r\n\t\teditUser: \"Gebruiker bewerken\",\r\n\t\tenableUser: \"Gebruiker inschakelen\",\r\n\t\tfirstName: \"Voornaam\",\r\n\t\tinactiveUsers: \"Inactieve gebruikers\",\r\n\t\tlastName: \"Achternaam\",\r\n\t\tmanageUsers: \"Gebruikers beheren\",\r\n\t\tnewUser: \"Nieuwe gebruiker\",\r\n\t\tpendingUsers: \"In afwachting van de gebruikers\",\r\n\t\tpersonalInfo: \"Persoonlijke gegevens\",\r\n\t\tserviceLocations: \"Onderhoudslocaties\",\r\n\t\tuser: \"Gebruiker\",\r\n\t\tusersList: {\r\n\t\t\taccessLevel: \"Toegangsniveau\",\r\n\t\t\trole: \"Rol\",\r\n\t\t\texpirationDate: \"Uiterste Houdbaarheidsdatum\",\r\n\t\t\ttitle: \"Gebruikerslijst\",\r\n\t\t},\r\n\t\taccountsVisited: \"Bezochte Accounts\",\r\n\t\tconfirmDisableTitle: \"Weet je zeker dat je deze Gebruiker wil uitschakelen?\",\r\n\t\tlastAccountVisited: \"Laatst Bezochte Account\",\r\n\t\tmostActiveAccounts: \"Meest Actieve Accounts\",\r\n\t\tprofilePicture: \"Profielfoto\",\r\n\t\tsendVerification: \"Verificatie verzenden\",\r\n\t\ttimezone: \"Tijdzone\",\r\n\t\tdateFormat: \"Datumnotatie\",\r\n\t\tvisitsLog: \"Bezoeklogboek\",\r\n\t\tconfirmDisableMessage: \"Je staat op het punt een gebruiker van dit account te deactiveren. De licentie verloopt aan het einde van de factureringsperiode.\",\r\n\t\tselectOneAccessLevel: \"Moet minimaal (1) toegangsniveau selecteren\",\r\n\t\tselectOneBranch: \"Moet minimaal (1) filiaal selecteren\",\r\n\t},\r\n\tvisit: {\r\n\t\tdevicesServiced: \"Onderhouden apparaten\",\r\n\t\teventLog: \"Logboek events\",\r\n\t\ttimestamp: \"Tijdstempel\",\r\n\t\ttotalActiveDevices: \"Totaal aantal actieve apparaten\",\r\n\t\ttotalCaptures: \"Totaal aantal vangsten\",\r\n\t\ttotalEvents: \"Totaal aantal events\",\r\n\t\tauto: \"Auto\",\r\n\t\tmanual: \"Handleiding\",\r\n\t\tserviceType: \"Type Onderhoud\"\r\n\t}\r\n}\r\n","//! moment.js locale configuration\n//! locale : Sindhi [sd]\n//! author : Narain Sagar : https://github.com/narainsagar\n\nimport moment from '../moment';\n\nvar months = [\n 'جنوري',\n 'فيبروري',\n 'مارچ',\n 'اپريل',\n 'مئي',\n 'جون',\n 'جولاءِ',\n 'آگسٽ',\n 'سيپٽمبر',\n 'آڪٽوبر',\n 'نومبر',\n 'ڊسمبر',\n ],\n days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر'];\n\nexport default moment.defineLocale('sd', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[اڄ] LT',\n nextDay: '[سڀاڻي] LT',\n nextWeek: 'dddd [اڳين هفتي تي] LT',\n lastDay: '[ڪالهه] LT',\n lastWeek: '[گزريل هفتي] dddd [تي] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s پوء',\n past: '%s اڳ',\n s: 'چند سيڪنڊ',\n ss: '%d سيڪنڊ',\n m: 'هڪ منٽ',\n mm: '%d منٽ',\n h: 'هڪ ڪلاڪ',\n hh: '%d ڪلاڪ',\n d: 'هڪ ڏينهن',\n dd: '%d ڏينهن',\n M: 'هڪ مهينو',\n MM: '%d مهينا',\n y: 'هڪ سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : German (Austria) [de-at]\n//! author : lluchs : https://github.com/lluchs\n//! author: Menelion Elensúle: https://github.com/Oire\n//! author : Martin Groller : https://github.com/MadMG\n//! author : Mikolaj Dadela : https://github.com/mik01aj\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n}\n\nexport default moment.defineLocale('de-at', {\n months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort: 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Bambara [bm]\n//! author : Estelle Comment : https://github.com/estellecomment\n// Language contact person : Abdoufata Kane : https://github.com/abdoufata\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('bm', {\n months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split(\n '_'\n ),\n monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'),\n weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'),\n weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'),\n weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'MMMM [tile] D [san] YYYY',\n LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',\n },\n calendar: {\n sameDay: '[Bi lɛrɛ] LT',\n nextDay: '[Sini lɛrɛ] LT',\n nextWeek: 'dddd [don lɛrɛ] LT',\n lastDay: '[Kunu lɛrɛ] LT',\n lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s kɔnɔ',\n past: 'a bɛ %s bɔ',\n s: 'sanga dama dama',\n ss: 'sekondi %d',\n m: 'miniti kelen',\n mm: 'miniti %d',\n h: 'lɛrɛ kelen',\n hh: 'lɛrɛ %d',\n d: 'tile kelen',\n dd: 'tile %d',\n M: 'kalo kelen',\n MM: 'kalo %d',\n y: 'san kelen',\n yy: 'san %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Chinese (Taiwan) [zh-tw]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('zh-tw', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n});\n","//! moment.js locale configuration\n//! locale : Arabic (Tunisia) [ar-tn]\n//! author : Nader Toukabri : https://github.com/naderio\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ar-tn', {\n months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","import { Observable } from '../../utilities';\n\nexport function fromError(errorValue: any): Observable {\n return new Observable(observer => {\n observer.error(errorValue);\n });\n}\n","import { invariant } from 'ts-invariant';\n\nimport { Observable } from '../../utilities';\n\nexport function toPromise(observable: Observable): Promise {\n let completed = false;\n return new Promise((resolve, reject) => {\n observable.subscribe({\n next: data => {\n if (completed) {\n invariant.warn(\n `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","import { Observable } from '../../utilities';\n\nexport function fromPromise(promise: Promise): Observable {\n return new Observable(observer => {\n promise\n .then((value: T) => {\n observer.next(value);\n observer.complete();\n })\n .catch(observer.error.bind(observer));\n });\n}\n","import { InvariantError } from 'ts-invariant';\n\nimport { GraphQLRequest } from '../core';\n\nexport function validateOperation(operation: GraphQLRequest): GraphQLRequest {\n const OPERATION_FIELDS = [\n 'query',\n 'operationName',\n 'variables',\n 'extensions',\n 'context',\n ];\n for (let key of Object.keys(operation)) {\n if (OPERATION_FIELDS.indexOf(key) < 0) {\n throw new InvariantError(`illegal argument: ${key}`);\n }\n }\n\n return operation;\n}\n","import { GraphQLRequest, Operation } from '../core';\n\nexport function createOperation(\n starting: any,\n operation: GraphQLRequest,\n): Operation {\n let context = { ...starting };\n const setContext = (next: any) => {\n if (typeof next === 'function') {\n context = { ...context, ...next(context) };\n } else {\n context = { ...context, ...next };\n }\n };\n const getContext = () => ({ ...context });\n\n Object.defineProperty(operation, 'setContext', {\n enumerable: false,\n value: setContext,\n });\n\n Object.defineProperty(operation, 'getContext', {\n enumerable: false,\n value: getContext,\n });\n\n return operation as Operation;\n}\n","import { GraphQLRequest, Operation } from '../core';\nimport { getOperationName } from '../../utilities';\n\nexport function transformOperation(operation: GraphQLRequest): GraphQLRequest {\n const transformedOperation: GraphQLRequest = {\n variables: operation.variables || {},\n extensions: operation.extensions || {},\n operationName: operation.operationName,\n query: operation.query,\n };\n\n // Best guess at an operation name\n if (!transformedOperation.operationName) {\n transformedOperation.operationName =\n typeof transformedOperation.query !== 'string'\n ? getOperationName(transformedOperation.query) || undefined\n : '';\n }\n\n return transformedOperation as Operation;\n}\n","export type ServerError = Error & {\n response: Response;\n result: Record;\n statusCode: number;\n};\n\nexport const throwServerError = (\n response: Response,\n result: any,\n message: string\n) => {\n const error = new Error(message) as ServerError;\n error.name = 'ServerError';\n error.response = response;\n error.statusCode = response.status;\n error.result = result;\n throw error;\n};\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-bait-types\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Scottish Gaelic [gd]\n//! author : Jon Ashdown : https://github.com/jonashdown\n\nimport moment from '../moment';\n\nvar months = [\n 'Am Faoilleach',\n 'An Gearran',\n 'Am Màrt',\n 'An Giblean',\n 'An Cèitean',\n 'An t-Ògmhios',\n 'An t-Iuchar',\n 'An Lùnastal',\n 'An t-Sultain',\n 'An Dàmhair',\n 'An t-Samhain',\n 'An Dùbhlachd',\n ],\n monthsShort = [\n 'Faoi',\n 'Gear',\n 'Màrt',\n 'Gibl',\n 'Cèit',\n 'Ògmh',\n 'Iuch',\n 'Lùn',\n 'Sult',\n 'Dàmh',\n 'Samh',\n 'Dùbh',\n ],\n weekdays = [\n 'Didòmhnaich',\n 'Diluain',\n 'Dimàirt',\n 'Diciadain',\n 'Diardaoin',\n 'Dihaoine',\n 'Disathairne',\n ],\n weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],\n weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'];\n\nexport default moment.defineLocale('gd', {\n months: months,\n monthsShort: monthsShort,\n monthsParseExact: true,\n weekdays: weekdays,\n weekdaysShort: weekdaysShort,\n weekdaysMin: weekdaysMin,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[An-diugh aig] LT',\n nextDay: '[A-màireach aig] LT',\n nextWeek: 'dddd [aig] LT',\n lastDay: '[An-dè aig] LT',\n lastWeek: 'dddd [seo chaidh] [aig] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ann an %s',\n past: 'bho chionn %s',\n s: 'beagan diogan',\n ss: '%d diogan',\n m: 'mionaid',\n mm: '%d mionaidean',\n h: 'uair',\n hh: '%d uairean',\n d: 'latha',\n dd: '%d latha',\n M: 'mìos',\n MM: '%d mìosan',\n y: 'bliadhna',\n yy: '%d bliadhna',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(d|na|mh)/,\n ordinal: function (number) {\n var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { OIDC_DEFAULT_SCOPES } from \"@azure/msal-common\";\r\nimport { PopupRequest } from \"../request/PopupRequest\";\r\nimport { RedirectRequest } from \"../request/RedirectRequest\";\r\n\r\n/**\r\n * Constants\r\n */\r\nexport const BrowserConstants = {\r\n /**\r\n * Interaction in progress cache value\r\n */\r\n INTERACTION_IN_PROGRESS_VALUE: \"interaction_in_progress\",\r\n /**\r\n * Invalid grant error code\r\n */\r\n INVALID_GRANT_ERROR: \"invalid_grant\",\r\n /**\r\n * Default popup window width\r\n */\r\n POPUP_WIDTH: 483,\r\n /**\r\n * Default popup window height\r\n */\r\n POPUP_HEIGHT: 600,\r\n /**\r\n * Name of the popup window starts with\r\n */\r\n POPUP_NAME_PREFIX: \"msal\",\r\n /**\r\n * Default popup monitor poll interval in milliseconds\r\n */\r\n POLL_INTERVAL_MS: 50,\r\n /**\r\n * Msal-browser SKU\r\n */\r\n MSAL_SKU: \"msal.js.browser\",\r\n};\r\n\r\nexport enum BrowserCacheLocation {\r\n LocalStorage = \"localStorage\",\r\n SessionStorage = \"sessionStorage\",\r\n MemoryStorage = \"memoryStorage\"\r\n}\r\n\r\n/**\r\n * HTTP Request types supported by MSAL.\r\n */\r\nexport enum HTTP_REQUEST_TYPE {\r\n GET = \"GET\",\r\n POST = \"POST\"\r\n}\r\n\r\n/**\r\n * Temporary cache keys for MSAL, deleted after any request.\r\n */\r\nexport enum TemporaryCacheKeys {\r\n AUTHORITY = \"authority\",\r\n ACQUIRE_TOKEN_ACCOUNT = \"acquireToken.account\",\r\n SESSION_STATE = \"session.state\",\r\n REQUEST_STATE = \"request.state\",\r\n NONCE_IDTOKEN = \"nonce.id_token\",\r\n ORIGIN_URI = \"request.origin\",\r\n RENEW_STATUS = \"token.renew.status\",\r\n URL_HASH = \"urlHash\",\r\n REQUEST_PARAMS = \"request.params\",\r\n SCOPES = \"scopes\",\r\n INTERACTION_STATUS_KEY = \"interaction.status\",\r\n CCS_CREDENTIAL = \"ccs.credential\",\r\n CORRELATION_ID = \"request.correlationId\"\r\n}\r\n\r\n/**\r\n * Cache keys stored in-memory\r\n */\r\nexport enum InMemoryCacheKeys {\r\n WRAPPER_SKU = \"wrapper.sku\",\r\n WRAPPER_VER = \"wrapper.version\"\r\n}\r\n\r\n/**\r\n * API Codes for Telemetry purposes. \r\n * Before adding a new code you must claim it in the MSAL Telemetry tracker as these number spaces are shared across all MSALs\r\n * 0-99 Silent Flow\r\n * 800-899 Auth Code Flow\r\n */\r\nexport enum ApiId {\r\n acquireTokenRedirect = 861,\r\n acquireTokenPopup = 862,\r\n ssoSilent = 863,\r\n acquireTokenSilent_authCode = 864,\r\n handleRedirectPromise = 865,\r\n acquireTokenSilent_silentFlow = 61,\r\n logout = 961,\r\n logoutPopup = 962\r\n}\r\n\r\n/*\r\n * Interaction type of the API - used for state and telemetry\r\n */\r\nexport enum InteractionType {\r\n Redirect = \"redirect\",\r\n Popup = \"popup\",\r\n Silent = \"silent\"\r\n}\r\n\r\n/**\r\n * Types of interaction currently in progress.\r\n * Used in events in wrapper libraries to invoke functions when certain interaction is in progress or all interactions are complete.\r\n */\r\nexport enum InteractionStatus {\r\n /**\r\n * Initial status before interaction occurs\r\n */\r\n Startup = \"startup\",\r\n /**\r\n * Status set when all login calls occuring\r\n */\r\n Login = \"login\",\r\n /**\r\n * Status set when logout call occuring\r\n */ \r\n Logout = \"logout\",\r\n /**\r\n * Status set for acquireToken calls\r\n */\r\n AcquireToken = \"acquireToken\",\r\n /**\r\n * Status set for ssoSilent calls\r\n */\r\n SsoSilent = \"ssoSilent\",\r\n /**\r\n * Status set when handleRedirect in progress\r\n */\r\n HandleRedirect = \"handleRedirect\",\r\n /**\r\n * Status set when interaction is complete\r\n */\r\n None = \"none\"\r\n}\r\n\r\nexport const DEFAULT_REQUEST: RedirectRequest|PopupRequest = {\r\n scopes: OIDC_DEFAULT_SCOPES\r\n};\r\n\r\n/**\r\n * JWK Key Format string (Type MUST be defined for window crypto APIs)\r\n */\r\nexport const KEY_FORMAT_JWK = \"jwk\";\r\n\r\n// Supported wrapper SKUs\r\nexport enum WrapperSKU {\r\n React = \"@azure/msal-react\",\r\n Angular = \"@azure/msal-angular\"\r\n}\r\n","'use strict';\n\nconst ReactNativeFile = require('./ReactNativeFile.js');\n\n/**\n * Checks if a value is an [extractable file]{@link ExtractableFile}.\n * @kind function\n * @name isExtractableFile\n * @type {ExtractableFileMatcher}\n * @param {*} value Value to check.\n * @returns {boolean} Is the value an [extractable file]{@link ExtractableFile}.\n * @example Ways to `import`.\n * ```js\n * import { isExtractableFile } from 'extract-files';\n * ```\n *\n * ```js\n * import isExtractableFile from 'extract-files/public/isExtractableFile.js';\n * ```\n * @example Ways to `require`.\n * ```js\n * const { isExtractableFile } = require('extract-files');\n * ```\n *\n * ```js\n * const isExtractableFile = require('extract-files/public/isExtractableFile.js');\n * ```\n */\nmodule.exports = function isExtractableFile(value) {\n return (\n (typeof File !== 'undefined' && value instanceof File) ||\n (typeof Blob !== 'undefined' && value instanceof Blob) ||\n value instanceof ReactNativeFile\n );\n};\n","/* Core */\n\nexport {\n ApolloClient,\n ApolloClientOptions,\n DefaultOptions,\n mergeOptions,\n} from './ApolloClient';\nexport {\n ObservableQuery,\n FetchMoreOptions,\n UpdateQueryOptions,\n} from './ObservableQuery';\nexport {\n QueryOptions,\n WatchQueryOptions,\n MutationOptions,\n SubscriptionOptions,\n FetchPolicy,\n WatchQueryFetchPolicy,\n ErrorPolicy,\n FetchMoreQueryOptions,\n SubscribeToMoreOptions,\n MutationUpdaterFn,\n} from './watchQueryOptions';\nexport { NetworkStatus } from './networkStatus';\nexport * from './types';\nexport {\n Resolver,\n FragmentMatcher,\n} from './LocalState';\nexport { isApolloError, ApolloError } from '../errors';\n\n/* Cache */\n\nexport {\n // All the exports (types and values) from ../cache, minus cacheSlot,\n // which we want to keep semi-private.\n Cache,\n ApolloCache,\n Transaction,\n DataProxy,\n InMemoryCache,\n InMemoryCacheConfig,\n MissingFieldError,\n defaultDataIdFromObject,\n ReactiveVar,\n makeVar,\n TypePolicies,\n TypePolicy,\n FieldPolicy,\n FieldReadFunction,\n FieldMergeFunction,\n FieldFunctionOptions,\n PossibleTypesMap,\n} from '../cache';\n\nexport * from '../cache/inmemory/types';\n\n/* Link */\n\nexport * from '../link/core';\nexport * from '../link/http';\nexport {\n fromError,\n toPromise,\n fromPromise,\n ServerError,\n throwServerError,\n} from '../link/utils';\n\n/* Utilities */\n\nexport {\n Observable,\n Observer,\n ObservableSubscription,\n Reference,\n isReference,\n makeReference,\n StoreObject,\n} from '../utilities';\n\n/* Supporting */\n\n// The verbosity of invariant.{log,warn,error} can be controlled globally\n// (for anyone using the same ts-invariant package) by passing \"log\",\n// \"warn\", \"error\", or \"silent\" to setVerbosity (\"log\" is the default).\n// Note that all invariant.* logging is hidden in production.\nimport { setVerbosity } from \"ts-invariant\";\nexport { setVerbosity as setLogVerbosity }\nsetVerbosity(\"log\");\n\n// Note that importing `gql` by itself, then destructuring\n// additional properties separately before exporting, is intentional.\n// Due to the way the `graphql-tag` library is setup, certain bundlers\n// can't find the properties added to the exported `gql` function without\n// additional guidance (e.g. Rollup - see\n// https://rollupjs.org/guide/en/#error-name-is-not-exported-by-module).\n// Instead of having people that are using bundlers with `@apollo/client` add\n// extra bundler config to help `graphql-tag` exports be found (which would be\n// awkward since they aren't importing `graphql-tag` themselves), this\n// workaround of pulling the extra properties off the `gql` function,\n// then re-exporting them separately, helps keeps bundlers happy without any\n// additional config changes.\nimport gql from 'graphql-tag';\nexport const {\n resetCaches,\n disableFragmentWarnings,\n enableExperimentalFragmentVariables,\n disableExperimentalFragmentVariables\n} = gql;\nexport { gql };\n","export { Transaction, ApolloCache } from './core/cache';\nexport { Cache } from './core/types/Cache';\nexport { DataProxy } from './core/types/DataProxy';\nexport { MissingFieldError } from './core/types/common';\n\nexport {\n Reference,\n isReference,\n makeReference,\n} from '../utilities';\n\nexport {\n InMemoryCache,\n InMemoryCacheConfig,\n} from './inmemory/inMemoryCache';\n\nexport {\n ReactiveVar,\n makeVar,\n cacheSlot,\n} from './inmemory/reactiveVars';\n\nexport {\n defaultDataIdFromObject,\n TypePolicies,\n TypePolicy,\n FieldPolicy,\n FieldReadFunction,\n FieldMergeFunction,\n FieldFunctionOptions,\n PossibleTypesMap,\n} from './inmemory/policies';\n\nexport * from './inmemory/types';\n","//! moment.js locale configuration\n//! locale : Spanish (Dominican Republic) [es-do]\n\nimport moment from '../moment';\n\nvar monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\nexport default moment.defineLocale('es-do', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY h:mm A',\n LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { DecodedAuthToken } from \"../account/DecodedAuthToken\";\r\nimport { ClientAuthError } from \"../error/ClientAuthError\";\r\n\r\n/**\r\n * @hidden\r\n */\r\nexport class StringUtils {\r\n\r\n /**\r\n * decode a JWT\r\n *\r\n * @param authToken\r\n */\r\n static decodeAuthToken(authToken: string): DecodedAuthToken {\r\n if (StringUtils.isEmpty(authToken)) {\r\n throw ClientAuthError.createTokenNullOrEmptyError(authToken);\r\n }\r\n const tokenPartsRegex = /^([^\\.\\s]*)\\.([^\\.\\s]+)\\.([^\\.\\s]*)$/;\r\n const matches = tokenPartsRegex.exec(authToken);\r\n if (!matches || matches.length < 4) {\r\n throw ClientAuthError.createTokenParsingError(`Given token is malformed: ${JSON.stringify(authToken)}`);\r\n }\r\n const crackedToken: DecodedAuthToken = {\r\n header: matches[1],\r\n JWSPayload: matches[2],\r\n JWSSig: matches[3]\r\n };\r\n return crackedToken;\r\n }\r\n\r\n /**\r\n * Check if a string is empty.\r\n *\r\n * @param str\r\n */\r\n static isEmpty(str?: string): boolean {\r\n return (typeof str === \"undefined\" || !str || 0 === str.length);\r\n }\r\n\r\n /**\r\n * Check if stringified object is empty\r\n * @param strObj \r\n */\r\n static isEmptyObj(strObj?: string): boolean {\r\n if (strObj && !StringUtils.isEmpty(strObj)) {\r\n try {\r\n const obj = JSON.parse(strObj);\r\n return Object.keys(obj).length === 0;\r\n } catch (e) {}\r\n }\r\n return true;\r\n }\r\n\r\n static startsWith(str: string, search: string): boolean {\r\n return str.indexOf(search) === 0;\r\n }\r\n\r\n static endsWith(str: string, search: string): boolean {\r\n return (str.length >= search.length) && (str.lastIndexOf(search) === (str.length - search.length));\r\n }\r\n\r\n /**\r\n * Parses string into an object.\r\n *\r\n * @param query\r\n */\r\n static queryStringToObject(query: string): T {\r\n const obj: {} = {};\r\n const params = query.split(\"&\");\r\n const decode = (s: string) => decodeURIComponent(s.replace(/\\+/g, \" \"));\r\n params.forEach((pair) => {\r\n if (pair.trim()) {\r\n const [key, value] = pair.split(/=(.+)/g, 2); // Split on the first occurence of the '=' character\r\n if (key && value) {\r\n obj[decode(key)] = decode(value);\r\n }\r\n }\r\n });\r\n return obj as T;\r\n }\r\n\r\n /**\r\n * Trims entries in an array.\r\n *\r\n * @param arr\r\n */\r\n static trimArrayEntries(arr: Array): Array {\r\n return arr.map(entry => entry.trim());\r\n }\r\n\r\n /**\r\n * Removes empty strings from array\r\n * @param arr\r\n */\r\n static removeEmptyStringsFromArray(arr: Array): Array {\r\n return arr.filter(entry => {\r\n return !StringUtils.isEmpty(entry);\r\n });\r\n }\r\n\r\n /**\r\n * Attempts to parse a string into JSON\r\n * @param str\r\n */\r\n static jsonParseHelper(str: string): T | null {\r\n try {\r\n return JSON.parse(str) as T;\r\n } catch (e) {\r\n return null;\r\n }\r\n }\r\n\r\n /**\r\n * Tests if a given string matches a given pattern, with support for wildcards and queries.\r\n * @param pattern Wildcard pattern to string match. Supports \"*\" for wildcards and \"?\" for queries\r\n * @param input String to match against\r\n */\r\n static matchPattern(pattern: string, input: string): boolean {\r\n /**\r\n * Wildcard support: https://stackoverflow.com/a/3117248/4888559\r\n * Queries: replaces \"?\" in string with escaped \"\\?\" for regex test\r\n */\r\n const regex: RegExp = new RegExp(pattern.replace(/\\\\/g, \"\\\\\\\\\").replace(/\\*/g, \"[^ ]*\").replace(/\\?/g, \"\\\\\\?\")); // eslint-disable-line security/detect-non-literal-regexp\r\n\r\n return regex.test(input);\r\n }\r\n}\r\n","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","//! moment.js locale configuration\n//! locale : Galician [gl]\n//! author : Juan G. Hurtado : https://github.com/juanghurtado\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('gl', {\n months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split(\n '_'\n ),\n monthsShort: 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextDay: function () {\n return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT';\n },\n lastDay: function () {\n return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT';\n },\n lastWeek: function () {\n return (\n '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: function (str) {\n if (str.indexOf('un') === 0) {\n return 'n' + str;\n }\n return 'en ' + str;\n },\n past: 'hai %s',\n s: 'uns segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'unha hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n M: 'un mes',\n MM: '%d meses',\n y: 'un ano',\n yy: '%d anos',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import { dep, OptimisticDependencyFunction, KeyTrie } from 'optimism';\nimport { equal } from '@wry/equality';\n\nimport {\n isReference,\n StoreValue,\n StoreObject,\n Reference,\n makeReference,\n DeepMerger,\n maybeDeepFreeze,\n canUseWeakMap,\n} from '../../utilities';\nimport { NormalizedCache, NormalizedCacheObject } from './types';\nimport { hasOwn, fieldNameFromStoreName } from './helpers';\nimport { Policies, StorageType } from './policies';\nimport { Cache } from '../core/types/Cache';\nimport {\n SafeReadonly,\n Modifier,\n Modifiers,\n ReadFieldOptions,\n ToReferenceFunction,\n CanReadFunction,\n} from '../core/types/common';\n\nconst DELETE: any = Object.create(null);\nconst delModifier: Modifier = () => DELETE;\nconst INVALIDATE: any = Object.create(null);\n\nexport abstract class EntityStore implements NormalizedCache {\n protected data: NormalizedCacheObject = Object.create(null);\n\n constructor(\n public readonly policies: Policies,\n public readonly group: CacheGroup,\n ) {}\n\n public abstract addLayer(\n layerId: string,\n replay: (layer: EntityStore) => any,\n ): Layer;\n\n public abstract removeLayer(layerId: string): EntityStore;\n\n // Although the EntityStore class is abstract, it contains concrete\n // implementations of the various NormalizedCache interface methods that\n // are inherited by the Root and Layer subclasses.\n\n public toObject(): NormalizedCacheObject {\n return { ...this.data };\n }\n\n public has(dataId: string): boolean {\n return this.lookup(dataId, true) !== void 0;\n }\n\n public get(dataId: string, fieldName: string): StoreValue {\n this.group.depend(dataId, fieldName);\n if (hasOwn.call(this.data, dataId)) {\n const 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\n protected lookup(dataId: string, dependOnExistence?: boolean): StoreObject | undefined {\n // The has method (above) calls lookup with dependOnExistence = true, so\n // that it can later be invalidated when we add or remove a StoreObject for\n // this dataId. Any consumer who cares about the contents of the StoreObject\n // should not rely on this dependency, since the contents could change\n // without the object being added or removed.\n if (dependOnExistence) this.group.depend(dataId, \"__exists\");\n\n if (hasOwn.call(this.data, dataId)) {\n return this.data[dataId];\n }\n\n if (this instanceof Layer) {\n return this.parent.lookup(dataId, dependOnExistence);\n }\n\n if (this.policies.rootTypenamesById[dataId]) {\n return Object.create(null);\n }\n }\n\n public merge(dataId: string, incoming: StoreObject): void {\n const existing = this.lookup(dataId);\n const merged: StoreObject =\n new DeepMerger(storeObjectReconciler).merge(existing, incoming);\n // Even if merged === existing, existing may have come from a lower\n // layer, so we always need to set this.data[dataId] on this level.\n this.data[dataId] = merged;\n if (merged !== existing) {\n delete this.refs[dataId];\n if (this.group.caching) {\n const fieldsToDirty: Record = Object.create(null);\n\n // If we added a new StoreObject where there was previously none, dirty\n // anything that depended on the existence of this dataId, such as the\n // EntityStore#has method.\n if (!existing) fieldsToDirty.__exists = 1;\n\n // Now invalidate dependents who called getFieldValue for any fields\n // that are changing as a result of this merge.\n Object.keys(incoming).forEach(storeFieldName => {\n if (!existing || existing[storeFieldName] !== merged[storeFieldName]) {\n // Always dirty the full storeFieldName, which may include\n // serialized arguments following the fieldName prefix.\n fieldsToDirty[storeFieldName] = 1;\n\n // Also dirty fieldNameFromStoreName(storeFieldName) if it's\n // different from storeFieldName and this field does not have\n // keyArgs configured, because that means the cache can't make\n // any assumptions about how field values with the same field\n // name but different arguments might be interrelated, so it\n // must err on the side of invalidating all field values that\n // share the same short fieldName, regardless of arguments.\n const fieldName = fieldNameFromStoreName(storeFieldName);\n if (fieldName !== storeFieldName &&\n !this.policies.hasKeyArgs(merged.__typename, fieldName)) {\n fieldsToDirty[fieldName] = 1;\n }\n\n // If merged[storeFieldName] has become undefined, and this is the\n // Root layer, actually delete the property from the merged object,\n // which is guaranteed to have been created fresh in this method.\n if (merged[storeFieldName] === void 0 && !(this instanceof Layer)) {\n delete merged[storeFieldName];\n }\n }\n });\n\n Object.keys(fieldsToDirty).forEach(\n fieldName => this.group.dirty(dataId, fieldName));\n }\n }\n }\n\n public modify(\n dataId: string,\n fields: Modifier | Modifiers,\n ): boolean {\n const storeObject = this.lookup(dataId);\n\n if (storeObject) {\n const changedFields: Record = Object.create(null);\n let needToMerge = false;\n let allDeleted = true;\n\n const sharedDetails = {\n DELETE,\n INVALIDATE,\n isReference,\n toReference: this.toReference,\n canRead: this.canRead,\n readField: (\n fieldNameOrOptions: string | ReadFieldOptions,\n from?: StoreObject | Reference,\n ) => this.policies.readField(\n typeof fieldNameOrOptions === \"string\" ? {\n fieldName: fieldNameOrOptions,\n from: from || makeReference(dataId),\n } : fieldNameOrOptions,\n { store: this },\n ),\n };\n\n Object.keys(storeObject).forEach(storeFieldName => {\n const fieldName = fieldNameFromStoreName(storeFieldName);\n let fieldValue = storeObject[storeFieldName];\n if (fieldValue === void 0) return;\n const modify: Modifier = typeof fields === \"function\"\n ? fields\n : fields[storeFieldName] || fields[fieldName];\n if (modify) {\n let newValue = modify === delModifier ? DELETE :\n modify(maybeDeepFreeze(fieldValue), {\n ...sharedDetails,\n fieldName,\n storeFieldName,\n storage: this.getStorage(dataId, storeFieldName),\n });\n if (newValue === INVALIDATE) {\n this.group.dirty(dataId, storeFieldName);\n } else {\n if (newValue === DELETE) newValue = void 0;\n if (newValue !== fieldValue) {\n changedFields[storeFieldName] = newValue;\n needToMerge = true;\n fieldValue = newValue;\n }\n }\n }\n if (fieldValue !== void 0) {\n allDeleted = false;\n }\n });\n\n if (needToMerge) {\n this.merge(dataId, changedFields);\n\n if (allDeleted) {\n if (this instanceof Layer) {\n this.data[dataId] = void 0;\n } else {\n delete this.data[dataId];\n }\n this.group.dirty(dataId, \"__exists\");\n }\n\n return true;\n }\n }\n\n return false;\n }\n\n // If called with only one argument, removes the entire entity\n // identified by dataId. If called with a fieldName as well, removes all\n // fields of that entity whose names match fieldName according to the\n // fieldNameFromStoreName helper function. If called with a fieldName\n // and variables, removes all fields of that entity whose names match fieldName\n // and whose arguments when cached exactly match the variables passed.\n public delete(\n dataId: string,\n fieldName?: string,\n args?: Record,\n ) {\n const storeObject = this.lookup(dataId);\n if (storeObject) {\n const typename = this.getFieldValue(storeObject, \"__typename\");\n const storeFieldName = fieldName && args\n ? this.policies.getStoreFieldName({ typename, fieldName, args })\n : fieldName;\n return this.modify(dataId, storeFieldName ? {\n [storeFieldName]: delModifier,\n } : delModifier);\n }\n return false;\n }\n\n public evict(options: Cache.EvictOptions): boolean {\n let 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 // Always invalidate the field to trigger rereading of watched\n // queries, even if no cache data was modified by the eviction,\n // because queries may depend on computed fields with custom read\n // functions, whose values are not stored in the EntityStore.\n if (options.fieldName || evicted) {\n this.group.dirty(options.id, options.fieldName || \"__exists\");\n }\n }\n return evicted;\n }\n\n public clear(): void {\n this.replace(null);\n }\n\n public extract(): NormalizedCacheObject {\n const obj = this.toObject();\n const extraRootIds: string[] = [];\n this.getRootIdSet().forEach(id => {\n if (!hasOwn.call(this.policies.rootTypenamesById, id)) {\n extraRootIds.push(id);\n }\n });\n if (extraRootIds.length) {\n obj.__META = { extraRootIds: extraRootIds.sort() };\n }\n return obj;\n }\n\n public replace(newData: NormalizedCacheObject | null): void {\n Object.keys(this.data).forEach(dataId => {\n if (!(newData && hasOwn.call(newData, dataId))) {\n this.delete(dataId);\n }\n });\n if (newData) {\n const { __META, ...rest } = newData;\n Object.keys(rest).forEach(dataId => {\n this.merge(dataId, rest[dataId] as StoreObject);\n });\n if (__META) {\n __META.extraRootIds.forEach(this.retain, this);\n }\n }\n }\n\n public abstract getStorage(\n idOrObj: string | StoreObject,\n ...storeFieldNames: (string | number)[]\n ): StorageType;\n\n // Maps root entity IDs to the number of times they have been retained, minus\n // the number of times they have been released. Retained entities keep other\n // entities they reference (even indirectly) from being garbage collected.\n private rootIds: {\n [rootId: string]: number;\n } = Object.create(null);\n\n public retain(rootId: string): number {\n return this.rootIds[rootId] = (this.rootIds[rootId] || 0) + 1;\n }\n\n public release(rootId: string): number {\n if (this.rootIds[rootId] > 0) {\n const count = --this.rootIds[rootId];\n if (!count) delete this.rootIds[rootId];\n return count;\n }\n return 0;\n }\n\n // Return a Set of all the ID strings that have been retained by\n // this layer/root *and* any layers/roots beneath it.\n public getRootIdSet(ids = new Set()) {\n Object.keys(this.rootIds).forEach(ids.add, ids);\n if (this instanceof Layer) {\n this.parent.getRootIdSet(ids);\n } else {\n // Official singleton IDs like ROOT_QUERY and ROOT_MUTATION are\n // always considered roots for garbage collection, regardless of\n // their retainment counts in this.rootIds.\n Object.keys(this.policies.rootTypenamesById).forEach(ids.add, ids);\n }\n return ids;\n }\n\n // The goal of garbage collection is to remove IDs from the Root layer of the\n // store that are no longer reachable starting from any IDs that have been\n // explicitly retained (see retain and release, above). Returns an array of\n // dataId strings that were removed from the store.\n public gc() {\n const ids = this.getRootIdSet();\n const snapshot = this.toObject();\n ids.forEach(id => {\n if (hasOwn.call(snapshot, id)) {\n // Because we are iterating over an ECMAScript Set, the IDs we add here\n // will be visited in later iterations of the forEach loop only if they\n // were not previously contained by the Set.\n Object.keys(this.findChildRefIds(id)).forEach(ids.add, ids);\n // By removing IDs from the snapshot object here, we protect them from\n // getting removed from the root store layer below.\n delete snapshot[id];\n }\n });\n const idsToRemove = Object.keys(snapshot);\n if (idsToRemove.length) {\n let root: EntityStore = this;\n while (root instanceof Layer) root = root.parent;\n idsToRemove.forEach(id => root.delete(id));\n }\n return idsToRemove;\n }\n\n // Lazily tracks { __ref: } strings contained by this.data[dataId].\n private refs: {\n [dataId: string]: Record;\n } = Object.create(null);\n\n public findChildRefIds(dataId: string): Record {\n if (!hasOwn.call(this.refs, dataId)) {\n const found = this.refs[dataId] = Object.create(null);\n const workSet = new Set([this.data[dataId]]);\n // Within the store, only arrays and objects can contain child entity\n // references, so we can prune the traversal using this predicate:\n const canTraverse = (obj: any) => obj !== null && typeof obj === 'object';\n workSet.forEach(obj => {\n if (isReference(obj)) {\n found[obj.__ref] = true;\n } else if (canTraverse(obj)) {\n Object.values(obj!)\n // No need to add primitive values to the workSet, since they cannot\n // contain reference objects.\n .filter(canTraverse)\n .forEach(workSet.add, workSet);\n }\n });\n }\n return this.refs[dataId];\n }\n\n // Used to compute cache keys specific to this.group.\n public makeCacheKey(...args: any[]) {\n return this.group.keyMaker.lookupArray(args);\n }\n\n // Bound function that can be passed around to provide easy access to fields\n // of Reference objects as well as ordinary objects.\n public getFieldValue = (\n objectOrReference: StoreObject | Reference | undefined,\n storeFieldName: string,\n ) => maybeDeepFreeze(\n isReference(objectOrReference)\n ? this.get(objectOrReference.__ref, storeFieldName)\n : objectOrReference && objectOrReference[storeFieldName]\n ) as SafeReadonly;\n\n // Returns true for non-normalized StoreObjects and non-dangling\n // References, indicating that readField(name, objOrRef) has a chance of\n // working. Useful for filtering out dangling references from lists.\n public canRead: CanReadFunction = objOrRef => {\n return isReference(objOrRef)\n ? this.has(objOrRef.__ref)\n : typeof objOrRef === \"object\";\n };\n\n // Bound function that converts an id or an object with a __typename and\n // primary key fields to a Reference object. If called with a Reference object,\n // that same Reference object is returned. Pass true for mergeIntoStore to persist\n // an object into the store.\n public toReference: ToReferenceFunction = (\n objOrIdOrRef,\n mergeIntoStore,\n ) => {\n if (typeof objOrIdOrRef === \"string\") {\n return makeReference(objOrIdOrRef);\n }\n\n if (isReference(objOrIdOrRef)) {\n return objOrIdOrRef;\n }\n\n const [id] = this.policies.identify(objOrIdOrRef);\n\n if (id) {\n const ref = makeReference(id);\n if (mergeIntoStore) {\n this.merge(id, objOrIdOrRef);\n }\n return ref;\n }\n };\n}\n\nexport type FieldValueGetter = EntityStore[\"getFieldValue\"];\n\n// A single CacheGroup represents a set of one or more EntityStore objects,\n// typically the Root store in a CacheGroup by itself, and all active Layer\n// stores in a group together. A single EntityStore object belongs to only\n// one CacheGroup, store.group. The CacheGroup is responsible for tracking\n// dependencies, so store.group is helpful for generating unique keys for\n// cached results that need to be invalidated when/if those dependencies\n// change. If we used the EntityStore objects themselves as cache keys (that\n// is, store rather than store.group), the cache would become unnecessarily\n// fragmented by all the different Layer objects. Instead, the CacheGroup\n// approach allows all optimistic Layer objects in the same linked list to\n// belong to one CacheGroup, with the non-optimistic Root object belonging\n// to another CacheGroup, allowing resultCaching dependencies to be tracked\n// separately for optimistic and non-optimistic entity data.\nclass CacheGroup {\n private d: OptimisticDependencyFunction | null = null;\n\n constructor(public readonly caching: boolean) {\n this.d = caching ? dep() : null;\n }\n\n public depend(dataId: string, storeFieldName: string) {\n if (this.d) {\n this.d(makeDepKey(dataId, storeFieldName));\n const fieldName = fieldNameFromStoreName(storeFieldName);\n if (fieldName !== storeFieldName) {\n // Fields with arguments that contribute extra identifying\n // information to the fieldName (thus forming the storeFieldName)\n // depend not only on the full storeFieldName but also on the\n // short fieldName, so the field can be invalidated using either\n // level of specificity.\n this.d(makeDepKey(dataId, fieldName));\n }\n }\n }\n\n public dirty(dataId: string, storeFieldName: string) {\n if (this.d) {\n this.d.dirty(makeDepKey(dataId, storeFieldName));\n }\n }\n\n // Used by the EntityStore#makeCacheKey method to compute cache keys\n // specific to this CacheGroup.\n public readonly keyMaker = new KeyTrie(canUseWeakMap);\n}\n\nfunction makeDepKey(dataId: string, storeFieldName: string) {\n // Since field names cannot have '#' characters in them, this method\n // of joining the field name and the ID should be unambiguous, and much\n // cheaper than JSON.stringify([dataId, fieldName]).\n return storeFieldName + '#' + dataId;\n}\n\nexport namespace EntityStore {\n // Refer to this class as EntityStore.Root outside this namespace.\n export class Root extends EntityStore {\n // Although each Root instance gets its own unique CacheGroup object,\n // any Layer instances created by calling addLayer need to share a\n // single distinct CacheGroup object. Since this shared object must\n // outlast the Layer instances themselves, it needs to be created and\n // owned by the Root instance.\n private sharedLayerGroup: CacheGroup;\n\n constructor({\n policies,\n resultCaching = true,\n seed,\n }: {\n policies: Policies;\n resultCaching?: boolean;\n seed?: NormalizedCacheObject;\n }) {\n super(policies, new CacheGroup(resultCaching));\n this.sharedLayerGroup = new CacheGroup(resultCaching);\n if (seed) this.replace(seed);\n }\n\n public addLayer(\n layerId: string,\n replay: (layer: EntityStore) => any,\n ): Layer {\n // The replay function will be called in the Layer constructor.\n return new Layer(layerId, this, replay, this.sharedLayerGroup);\n }\n\n public removeLayer(): Root {\n // Never remove the root layer.\n return this;\n }\n\n public readonly storageTrie = new KeyTrie(canUseWeakMap);\n public getStorage(): StorageType {\n return this.storageTrie.lookupArray(arguments);\n }\n }\n}\n\n// Not exported, since all Layer instances are created by the addLayer method\n// of the EntityStore.Root class.\nclass Layer extends EntityStore {\n constructor(\n public readonly id: string,\n public readonly parent: EntityStore,\n public readonly replay: (layer: EntityStore) => any,\n public readonly group: CacheGroup,\n ) {\n super(parent.policies, group);\n replay(this);\n }\n\n public addLayer(\n layerId: string,\n replay: (layer: EntityStore) => any,\n ): Layer {\n return new Layer(layerId, this, replay, this.group);\n }\n\n public removeLayer(layerId: string): EntityStore {\n // Remove all instances of the given id, not just the first one.\n const parent = this.parent.removeLayer(layerId);\n\n if (layerId === this.id) {\n // Dirty every ID we're removing.\n if (this.group.caching) {\n Object.keys(this.data).forEach(dataId => {\n // If this.data[dataId] contains nothing different from what\n // lies beneath, we can avoid dirtying this dataId and all of\n // its fields, and simply discard this Layer. The only reason we\n // call this.delete here is to dirty the removed fields.\n if (this.data[dataId] !== (parent as Layer).lookup(dataId)) {\n this.delete(dataId);\n }\n });\n }\n return parent;\n }\n\n // No changes are necessary if the parent chain remains identical.\n if (parent === this.parent) return this;\n\n // Recreate this layer on top of the new parent.\n return parent.addLayer(this.id, this.replay);\n }\n\n public toObject(): NormalizedCacheObject {\n return {\n ...this.parent.toObject(),\n ...this.data,\n };\n }\n\n public findChildRefIds(dataId: string): Record {\n const fromParent = this.parent.findChildRefIds(dataId);\n return hasOwn.call(this.data, dataId) ? {\n ...fromParent,\n ...super.findChildRefIds(dataId),\n } : fromParent;\n }\n\n public getStorage(): StorageType {\n let p: EntityStore = this.parent;\n while ((p as Layer).parent) p = (p as Layer).parent;\n return p.getStorage.apply(p, arguments);\n }\n}\n\nfunction storeObjectReconciler(\n existingObject: StoreObject,\n incomingObject: StoreObject,\n property: string,\n): StoreValue {\n const existingValue = existingObject[property];\n const incomingValue = incomingObject[property];\n // Wherever there is a key collision, prefer the incoming value, unless\n // it is deeply equal to the existing value. It's worth checking deep\n // equality here (even though blindly returning incoming would be\n // logically correct) because preserving the referential identity of\n // existing data can prevent needless rereading and rerendering.\n return equal(existingValue, incomingValue) ? existingValue : incomingValue;\n}\n\nexport function supportsResultCaching(store: any): store is EntityStore {\n // When result caching is disabled, store.depend will be null.\n return !!(store instanceof EntityStore && store.group.caching);\n}\n","import {\n DocumentNode,\n FieldNode,\n SelectionSetNode,\n} from 'graphql';\nimport { wrap, OptimisticWrapperFunction } from 'optimism';\nimport { invariant, InvariantError } from 'ts-invariant';\n\nimport {\n isField,\n resultKeyNameFromField,\n Reference,\n isReference,\n makeReference,\n StoreObject,\n createFragmentMap,\n FragmentMap,\n shouldInclude,\n addTypenameToDocument,\n getDefaultValues,\n getFragmentDefinitions,\n getMainDefinition,\n getQueryDefinition,\n maybeDeepFreeze,\n mergeDeepArray,\n getFragmentFromSelection,\n} from '../../utilities';\nimport { Cache } from '../core/types/Cache';\nimport {\n DiffQueryAgainstStoreOptions,\n NormalizedCache,\n ReadMergeModifyContext,\n} from './types';\nimport { supportsResultCaching } from './entityStore';\nimport { getTypenameFromStoreObject } from './helpers';\nimport { Policies } from './policies';\nimport { InMemoryCache } from './inMemoryCache';\nimport { MissingFieldError } from '../core/types/common';\n\nexport type VariableMap = { [name: string]: any };\n\ninterface ReadContext extends ReadMergeModifyContext {\n query: DocumentNode;\n policies: Policies;\n fragmentMap: FragmentMap;\n path: (string | number)[];\n clientOnly: boolean;\n};\n\nexport type ExecResult = {\n result: R;\n missing?: MissingFieldError[];\n};\n\nfunction missingFromInvariant(\n err: InvariantError,\n context: ReadContext,\n) {\n return new MissingFieldError(\n err.message,\n context.path.slice(),\n context.query,\n context.clientOnly,\n context.variables,\n );\n}\n\ntype ExecSelectionSetOptions = {\n selectionSet: SelectionSetNode;\n objectOrReference: StoreObject | Reference;\n context: ReadContext;\n};\n\ntype ExecSubSelectedArrayOptions = {\n field: FieldNode;\n array: any[];\n context: ReadContext;\n};\n\nexport interface StoreReaderConfig {\n cache: InMemoryCache,\n addTypename?: boolean;\n}\n\nexport class StoreReader {\n constructor(private config: StoreReaderConfig) {\n this.config = { addTypename: true, ...config };\n }\n\n /**\n * Given a store and a query, return as much of the result as possible and\n * identify if any data was missing from the store.\n * @param {DocumentNode} query A parsed GraphQL query document\n * @param {Store} store The Apollo Client store object\n * @return {result: Object, complete: [boolean]}\n */\n public diffQueryAgainstStore({\n store,\n query,\n rootId = 'ROOT_QUERY',\n variables,\n returnPartialData = true,\n }: DiffQueryAgainstStoreOptions): Cache.DiffResult {\n const policies = this.config.cache.policies;\n\n variables = {\n ...getDefaultValues(getQueryDefinition(query)),\n ...variables,\n };\n\n const execResult = this.executeSelectionSet({\n selectionSet: getMainDefinition(query).selectionSet,\n objectOrReference: makeReference(rootId),\n context: {\n store,\n query,\n policies,\n variables,\n varString: JSON.stringify(variables),\n fragmentMap: createFragmentMap(getFragmentDefinitions(query)),\n path: [],\n clientOnly: false,\n },\n });\n\n const hasMissingFields =\n execResult.missing && execResult.missing.length > 0;\n if (hasMissingFields && !returnPartialData) {\n throw execResult.missing![0];\n }\n\n return {\n result: execResult.result,\n missing: execResult.missing,\n complete: !hasMissingFields,\n };\n }\n\n public isFresh(\n result: Record,\n parent: StoreObject | Reference,\n selectionSet: SelectionSetNode,\n context: ReadMergeModifyContext,\n ): boolean {\n if (supportsResultCaching(context.store) &&\n this.knownResults.get(result) === selectionSet) {\n const latest = this.executeSelectionSet.peek(selectionSet, parent, context);\n if (latest && result === latest.result) {\n return true;\n }\n }\n return false;\n }\n\n // Cached version of execSelectionSetImpl.\n private executeSelectionSet: OptimisticWrapperFunction<\n [ExecSelectionSetOptions], // Actual arguments tuple type.\n ExecResult, // Actual return type.\n // Arguments type after keyArgs translation.\n [SelectionSetNode, StoreObject | Reference, ReadMergeModifyContext]\n > = wrap(options => this.execSelectionSetImpl(options), {\n keyArgs(options) {\n return [\n options.selectionSet,\n options.objectOrReference,\n options.context,\n ];\n },\n // Note that the parameters of makeCacheKey are determined by the\n // array returned by keyArgs.\n makeCacheKey(selectionSet, parent, context) {\n if (supportsResultCaching(context.store)) {\n return context.store.makeCacheKey(\n selectionSet,\n isReference(parent) ? parent.__ref : parent,\n context.varString,\n );\n }\n }\n });\n\n // Uncached version of executeSelectionSet.\n private execSelectionSetImpl({\n selectionSet,\n objectOrReference,\n context,\n }: ExecSelectionSetOptions): ExecResult {\n if (isReference(objectOrReference) &&\n !context.policies.rootTypenamesById[objectOrReference.__ref] &&\n !context.store.has(objectOrReference.__ref)) {\n return {\n result: {},\n missing: [missingFromInvariant(\n new InvariantError(\n `Dangling reference to missing ${objectOrReference.__ref} object`\n ),\n context,\n )],\n };\n }\n\n const { variables, policies, store } = context;\n const objectsToMerge: { [key: string]: any }[] = [];\n const finalResult: ExecResult = { result: null };\n const typename = store.getFieldValue(objectOrReference, \"__typename\");\n\n if (this.config.addTypename &&\n typeof typename === \"string\" &&\n !policies.rootIdsByTypename[typename]) {\n // Ensure we always include a default value for the __typename\n // field, if we have one, and this.config.addTypename is true. Note\n // that this field can be overridden by other merged objects.\n objectsToMerge.push({ __typename: typename });\n }\n\n function getMissing() {\n return finalResult.missing || (finalResult.missing = []);\n }\n\n function handleMissing(result: ExecResult): T {\n if (result.missing) getMissing().push(...result.missing);\n return result.result;\n }\n\n const workSet = new Set(selectionSet.selections);\n\n workSet.forEach(selection => {\n // Omit fields with directives @skip(if: ) or\n // @include(if: ).\n if (!shouldInclude(selection, variables)) return;\n\n if (isField(selection)) {\n let fieldValue = policies.readField({\n fieldName: selection.name.value,\n field: selection,\n variables: context.variables,\n from: objectOrReference,\n }, context);\n\n const resultName = resultKeyNameFromField(selection);\n context.path.push(resultName);\n\n // If this field has an @client directive, then the field and\n // everything beneath it is client-only, meaning it will never be\n // sent to the server.\n const wasClientOnly = context.clientOnly;\n // Once we enter a client-only subtree of the query, we can avoid\n // repeatedly checking selection.directives.\n context.clientOnly = wasClientOnly || !!(\n // We don't use the hasDirectives helper here, because it looks\n // for directives anywhere inside the AST node, whereas we only\n // care about directives directly attached to this field.\n selection.directives &&\n selection.directives.some(d => d.name.value === \"client\")\n );\n\n if (fieldValue === void 0) {\n if (!addTypenameToDocument.added(selection)) {\n getMissing().push(\n missingFromInvariant(\n new InvariantError(`Can't find field '${\n selection.name.value\n }' on ${\n isReference(objectOrReference)\n ? objectOrReference.__ref + \" object\"\n : \"object \" + JSON.stringify(objectOrReference, null, 2)\n }`),\n context,\n ),\n );\n }\n\n } else if (Array.isArray(fieldValue)) {\n fieldValue = handleMissing(this.executeSubSelectedArray({\n field: selection,\n array: fieldValue,\n context,\n }));\n\n } else if (!selection.selectionSet) {\n // If the field does not have a selection set, then we handle it\n // as a scalar value. However, that value should not contain any\n // Reference objects, and should be frozen in development, if it\n // happens to be an object that is mutable.\n if (process.env.NODE_ENV !== 'production') {\n assertSelectionSetForIdValue(\n context.store,\n selection,\n fieldValue,\n );\n maybeDeepFreeze(fieldValue);\n }\n\n } else if (fieldValue != null) {\n // In this case, because we know the field has a selection set,\n // it must be trying to query a GraphQLObjectType, which is why\n // fieldValue must be != null.\n fieldValue = handleMissing(this.executeSelectionSet({\n selectionSet: selection.selectionSet,\n objectOrReference: fieldValue as StoreObject | Reference,\n context,\n }));\n }\n\n if (fieldValue !== void 0) {\n objectsToMerge.push({ [resultName]: fieldValue });\n }\n\n context.clientOnly = wasClientOnly;\n\n invariant(context.path.pop() === resultName);\n\n } else {\n const fragment = getFragmentFromSelection(\n selection,\n context.fragmentMap,\n );\n\n if (fragment && policies.fragmentMatches(fragment, typename)) {\n fragment.selectionSet.selections.forEach(workSet.add, workSet);\n }\n }\n });\n\n // Perform a single merge at the end so that we can avoid making more\n // defensive shallow copies than necessary.\n finalResult.result = mergeDeepArray(objectsToMerge);\n\n if (process.env.NODE_ENV !== 'production') {\n Object.freeze(finalResult.result);\n }\n\n // Store this result with its selection set so that we can quickly\n // recognize it again in the StoreReader#isFresh method.\n this.knownResults.set(finalResult.result, selectionSet);\n\n return finalResult;\n }\n\n private knownResults = new WeakMap, SelectionSetNode>();\n\n // Cached version of execSubSelectedArrayImpl.\n private executeSubSelectedArray = wrap((options: ExecSubSelectedArrayOptions) => {\n return this.execSubSelectedArrayImpl(options);\n }, {\n makeCacheKey({ field, array, context }) {\n if (supportsResultCaching(context.store)) {\n return context.store.makeCacheKey(\n field,\n array,\n context.varString,\n );\n }\n }\n });\n\n // Uncached version of executeSubSelectedArray.\n private execSubSelectedArrayImpl({\n field,\n array,\n context,\n }: ExecSubSelectedArrayOptions): ExecResult {\n let missing: MissingFieldError[] | undefined;\n\n function handleMissing(childResult: ExecResult, i: number): T {\n if (childResult.missing) {\n missing = missing || [];\n missing.push(...childResult.missing);\n }\n\n invariant(context.path.pop() === i);\n\n return childResult.result;\n }\n\n if (field.selectionSet) {\n array = array.filter(context.store.canRead);\n }\n\n array = array.map((item, i) => {\n // null value in array\n if (item === null) {\n return null;\n }\n\n context.path.push(i);\n\n // This is a nested array, recurse\n if (Array.isArray(item)) {\n return handleMissing(this.executeSubSelectedArray({\n field,\n array: item,\n context,\n }), i);\n }\n\n // This is an object, run the selection set on it\n if (field.selectionSet) {\n return handleMissing(this.executeSelectionSet({\n selectionSet: field.selectionSet,\n objectOrReference: item,\n context,\n }), i);\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assertSelectionSetForIdValue(context.store, field, item);\n }\n\n invariant(context.path.pop() === i);\n\n return item;\n });\n\n if (process.env.NODE_ENV !== 'production') {\n Object.freeze(array);\n }\n\n return { result: array, missing };\n }\n}\n\nfunction assertSelectionSetForIdValue(\n store: NormalizedCache,\n field: FieldNode,\n fieldValue: any,\n) {\n if (!field.selectionSet) {\n const workSet = new Set([fieldValue]);\n workSet.forEach(value => {\n if (value && typeof value === \"object\") {\n invariant(\n !isReference(value),\n `Missing selection set for object of type ${\n getTypenameFromStoreObject(store, value)\n } returned for query field ${field.name.value}`,\n );\n Object.values(value).forEach(workSet.add, workSet);\n }\n });\n }\n}\n","import { SelectionSetNode, FieldNode, DocumentNode } from 'graphql';\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { equal } from '@wry/equality';\n\nimport {\n createFragmentMap,\n FragmentMap,\n getFragmentFromSelection,\n getDefaultValues,\n getFragmentDefinitions,\n getOperationDefinition,\n getTypenameFromResult,\n makeReference,\n isField,\n resultKeyNameFromField,\n StoreValue,\n StoreObject,\n Reference,\n isReference,\n shouldInclude,\n hasDirectives,\n cloneDeep,\n} from '../../utilities';\n\nimport { NormalizedCache, ReadMergeModifyContext, MergeTree } from './types';\nimport { makeProcessedFieldsMerger, fieldNameFromStoreName, storeValueIsStoreObject } from './helpers';\nimport { StoreReader } from './readFromStore';\nimport { InMemoryCache } from './inMemoryCache';\nimport { EntityStore } from './entityStore';\n\nexport interface WriteContext extends ReadMergeModifyContext {\n readonly written: {\n [dataId: string]: SelectionSetNode[];\n };\n readonly fragmentMap?: FragmentMap;\n // General-purpose deep-merge function for use during writes.\n merge(existing: T, incoming: T): T;\n};\n\ninterface ProcessSelectionSetOptions {\n dataId?: string,\n result: Record;\n selectionSet: SelectionSetNode;\n context: WriteContext;\n mergeTree: MergeTree;\n}\n\nexport interface WriteToStoreOptions {\n query: DocumentNode;\n result: Object;\n dataId?: string;\n store: NormalizedCache;\n variables?: Object;\n}\n\nexport class StoreWriter {\n constructor(\n public readonly cache: InMemoryCache,\n private reader?: StoreReader,\n ) {}\n\n /**\n * Writes the result of a query to the store.\n *\n * @param result The result object returned for the query document.\n *\n * @param query The query document whose result we are writing to the store.\n *\n * @param store The {@link NormalizedCache} used by Apollo for the `data` portion of the store.\n *\n * @param variables A map from the name of a variable to its value. These variables can be\n * referenced by the query document.\n *\n * @return A `Reference` to the written object.\n */\n public writeToStore({\n query,\n result,\n dataId,\n store,\n variables,\n }: WriteToStoreOptions): Reference | undefined {\n const operationDefinition = getOperationDefinition(query)!;\n const merger = makeProcessedFieldsMerger();\n\n variables = {\n ...getDefaultValues(operationDefinition),\n ...variables,\n };\n\n const ref = this.processSelectionSet({\n result: result || Object.create(null),\n dataId,\n selectionSet: operationDefinition.selectionSet,\n mergeTree: { map: new Map },\n context: {\n store,\n written: Object.create(null),\n merge(existing: T, incoming: T) {\n return merger.merge(existing, incoming) as T;\n },\n variables,\n varString: JSON.stringify(variables),\n fragmentMap: createFragmentMap(getFragmentDefinitions(query)),\n },\n });\n\n if (!isReference(ref)) {\n throw new InvariantError(`Could not identify object ${JSON.stringify(result)}`);\n }\n\n // Any IDs written explicitly to the cache will be retained as\n // reachable root IDs for garbage collection purposes. Although this\n // logic includes root IDs like ROOT_QUERY and ROOT_MUTATION, their\n // retainment counts are effectively ignored because cache.gc() always\n // includes them in its root ID set.\n store.retain(ref.__ref);\n\n return ref;\n }\n\n private processSelectionSet({\n dataId,\n result,\n selectionSet,\n context,\n // This object allows processSelectionSet to report useful information\n // to its callers without explicitly returning that information.\n mergeTree,\n }: ProcessSelectionSetOptions): StoreObject | Reference {\n const { policies } = this.cache;\n\n // Identify the result object, even if dataId was already provided,\n // since we always need keyObject below.\n const [id, keyObject] = policies.identify(\n result, selectionSet, context.fragmentMap);\n\n // If dataId was not provided, fall back to the id just generated by\n // policies.identify.\n dataId = dataId || id;\n\n if (\"string\" === typeof dataId) {\n // Avoid processing the same entity object using the same selection\n // set more than once. We use an array instead of a Set since most\n // entity IDs will be written using only one selection set, so the\n // size of this array is likely to be very small, meaning indexOf is\n // likely to be faster than Set.prototype.has.\n const sets = context.written[dataId] || (context.written[dataId] = []);\n const ref = makeReference(dataId);\n if (sets.indexOf(selectionSet) >= 0) return ref;\n sets.push(selectionSet);\n\n // If we're about to write a result object into the store, but we\n // happen to know that the exact same (===) result object would be\n // returned if we were to reread the result with the same inputs,\n // then we can skip the rest of the processSelectionSet work for\n // this object, and immediately return a Reference to it.\n if (this.reader && this.reader.isFresh(\n result,\n ref,\n selectionSet,\n context,\n )) {\n return ref;\n }\n }\n\n // This variable will be repeatedly updated using context.merge to\n // accumulate all fields that need to be written into the store.\n let incomingFields: StoreObject = Object.create(null);\n\n // Write any key fields that were used during identification, even if\n // they were not mentioned in the original query.\n if (keyObject) {\n incomingFields = context.merge(incomingFields, keyObject);\n }\n\n // If typename was not passed in, infer it. Note that typename is\n // always passed in for tricky-to-infer cases such as \"Query\" for\n // ROOT_QUERY.\n const typename =\n (dataId && policies.rootTypenamesById[dataId]) ||\n getTypenameFromResult(result, selectionSet, context.fragmentMap) ||\n (dataId && context.store.get(dataId, \"__typename\") as string);\n\n if (\"string\" === typeof typename) {\n incomingFields.__typename = typename;\n }\n\n const workSet = new Set(selectionSet.selections);\n\n workSet.forEach(selection => {\n if (!shouldInclude(selection, context.variables)) return;\n\n if (isField(selection)) {\n const resultFieldKey = resultKeyNameFromField(selection);\n const value = result[resultFieldKey];\n\n if (typeof value !== 'undefined') {\n const storeFieldName = policies.getStoreFieldName({\n typename,\n fieldName: selection.name.value,\n field: selection,\n variables: context.variables,\n });\n\n const childTree = getChildMergeTree(mergeTree, storeFieldName);\n\n let incomingValue =\n this.processFieldValue(value, selection, context, childTree);\n\n const childTypename = selection.selectionSet\n && context.store.getFieldValue(incomingValue as StoreObject, \"__typename\")\n || void 0;\n\n const merge = policies.getMergeFunction(\n typename,\n selection.name.value,\n childTypename,\n );\n\n if (merge) {\n childTree.info = {\n // TODO Check compatibility against any existing\n // childTree.field?\n field: selection,\n typename,\n merge,\n };\n } else {\n maybeRecycleChildMergeTree(mergeTree, storeFieldName);\n }\n\n incomingFields = context.merge(incomingFields, {\n [storeFieldName]: incomingValue,\n });\n\n } else if (\n policies.usingPossibleTypes &&\n !hasDirectives([\"defer\", \"client\"], selection)\n ) {\n throw new InvariantError(\n `Missing field '${resultFieldKey}' in ${JSON.stringify(\n result,\n null,\n 2,\n ).substring(0, 100)}`,\n );\n }\n } else {\n // This is not a field, so it must be a fragment, either inline or named\n const fragment = getFragmentFromSelection(\n selection,\n context.fragmentMap,\n );\n\n if (fragment &&\n // By passing result and context.variables, we enable\n // policies.fragmentMatches to bend the rules when typename is\n // not a known subtype of the fragment type condition, but the\n // result object contains all the keys requested by the\n // fragment, which strongly suggests the fragment probably\n // matched. This fuzzy matching behavior must be enabled by\n // including a regular expression string (such as \".*\" or\n // \"Prefix.*\" or \".*Suffix\") in the possibleTypes array for\n // specific supertypes; otherwise, all matching remains exact.\n // Fuzzy matches are remembered by the Policies object and\n // later used when reading from the cache. Since there is no\n // incoming result object to check when reading, reading does\n // not involve the same fuzzy inference, so the StoreReader\n // class calls policies.fragmentMatches without passing result\n // or context.variables. The flexibility of fuzzy matching\n // allows existing clients to accommodate previously unknown\n // __typename strings produced by server/schema changes, which\n // would otherwise be breaking changes.\n policies.fragmentMatches(fragment, typename, result, context.variables)) {\n fragment.selectionSet.selections.forEach(workSet.add, workSet);\n }\n }\n });\n\n if (\"string\" === typeof dataId) {\n const entityRef = makeReference(dataId);\n\n if (mergeTree.map.size) {\n incomingFields = this.applyMerges(mergeTree, entityRef, incomingFields, context);\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n const hasSelectionSet = (storeFieldName: string) =>\n fieldsWithSelectionSets.has(fieldNameFromStoreName(storeFieldName));\n const fieldsWithSelectionSets = new Set();\n workSet.forEach(selection => {\n if (isField(selection) && selection.selectionSet) {\n fieldsWithSelectionSets.add(selection.name.value);\n }\n });\n\n const hasMergeFunction = (storeFieldName: string) => {\n const childTree = mergeTree.map.get(storeFieldName);\n return Boolean(childTree && childTree.info && childTree.info.merge);\n };\n\n Object.keys(incomingFields).forEach(storeFieldName => {\n // If a merge function was defined for this field, trust that it\n // did the right thing about (not) clobbering data. If the field\n // has no selection set, it's a scalar field, so it doesn't need\n // a merge function (even if it's an object, like JSON data).\n if (hasSelectionSet(storeFieldName) &&\n !hasMergeFunction(storeFieldName)) {\n warnAboutDataLoss(\n entityRef,\n incomingFields,\n storeFieldName,\n context.store,\n );\n }\n });\n }\n\n context.store.merge(dataId, incomingFields);\n\n return entityRef;\n }\n\n return incomingFields;\n }\n\n private processFieldValue(\n value: any,\n field: FieldNode,\n context: WriteContext,\n mergeTree: MergeTree,\n ): StoreValue {\n if (!field.selectionSet || value === null) {\n // In development, we need to clone scalar values so that they can be\n // safely frozen with maybeDeepFreeze in readFromStore.ts. In production,\n // it's cheaper to store the scalar values directly in the cache.\n return process.env.NODE_ENV === 'production' ? value : cloneDeep(value);\n }\n\n if (Array.isArray(value)) {\n return value.map((item, i) => {\n const value = this.processFieldValue(\n item, field, context, getChildMergeTree(mergeTree, i));\n maybeRecycleChildMergeTree(mergeTree, i);\n return value;\n });\n }\n\n return this.processSelectionSet({\n result: value,\n selectionSet: field.selectionSet,\n context,\n mergeTree,\n });\n }\n\n private applyMerges(\n mergeTree: MergeTree,\n existing: StoreValue,\n incoming: T,\n context: ReadMergeModifyContext,\n getStorageArgs?: Parameters,\n ): T {\n if (mergeTree.map.size && !isReference(incoming)) {\n const e: StoreObject | Reference | undefined = (\n // Items in the same position in different arrays are not\n // necessarily related to each other, so when incoming is an array\n // we process its elements as if there was no existing data.\n !Array.isArray(incoming) &&\n // Likewise, existing must be either a Reference or a StoreObject\n // in order for its fields to be safe to merge with the fields of\n // the incoming object.\n (isReference(existing) || storeValueIsStoreObject(existing))\n ) ? existing : void 0;\n\n // This narrowing is implied by mergeTree.map.size > 0 and\n // !isReference(incoming), though TypeScript understandably cannot\n // hope to infer this type.\n const i = incoming as StoreObject | StoreValue[];\n\n // The options.storage objects provided to read and merge functions\n // are derived from the identity of the parent object plus a\n // sequence of storeFieldName strings/numbers identifying the nested\n // field name path of each field value to be merged.\n if (e && !getStorageArgs) {\n getStorageArgs = [isReference(e) ? e.__ref : e];\n }\n\n // It's possible that applying merge functions to this subtree will\n // not change the incoming data, so this variable tracks the fields\n // that did change, so we can create a new incoming object when (and\n // only when) at least one incoming field has changed. We use a Map\n // to preserve the type of numeric keys.\n let changedFields: Map | undefined;\n\n const getValue = (\n from: typeof e | typeof i,\n name: string | number,\n ): StoreValue => {\n return Array.isArray(from)\n ? (typeof name === \"number\" ? from[name] : void 0)\n : context.store.getFieldValue(from, String(name))\n };\n\n mergeTree.map.forEach((childTree, storeFieldName) => {\n if (getStorageArgs) {\n getStorageArgs.push(storeFieldName);\n }\n const eVal = getValue(e, storeFieldName);\n const iVal = getValue(i, storeFieldName);\n const aVal = this.applyMerges(\n childTree,\n eVal,\n iVal,\n context,\n getStorageArgs,\n );\n if (aVal !== iVal) {\n changedFields = changedFields || new Map;\n changedFields.set(storeFieldName, aVal);\n }\n if (getStorageArgs) {\n invariant(getStorageArgs.pop() === storeFieldName);\n }\n });\n\n if (changedFields) {\n // Shallow clone i so we can add changed fields to it.\n incoming = (Array.isArray(i) ? i.slice(0) : { ...i }) as T;\n changedFields.forEach((value, name) => {\n (incoming as any)[name] = value;\n });\n }\n }\n\n if (mergeTree.info) {\n return this.cache.policies.runMergeFunction(\n existing,\n incoming,\n mergeTree.info,\n context,\n getStorageArgs && context.store.getStorage(...getStorageArgs),\n );\n }\n\n return incoming;\n }\n}\n\nconst emptyMergeTreePool: MergeTree[] = [];\n\nfunction getChildMergeTree(\n { map }: MergeTree,\n name: string | number,\n): MergeTree {\n if (!map.has(name)) {\n map.set(name, emptyMergeTreePool.pop() || { map: new Map });\n }\n return map.get(name)!;\n}\n\nfunction maybeRecycleChildMergeTree(\n { map }: MergeTree,\n name: string | number,\n) {\n const childTree = map.get(name);\n if (childTree &&\n !childTree.info &&\n !childTree.map.size) {\n emptyMergeTreePool.push(childTree);\n map.delete(name);\n }\n}\n\nconst warnings = new Set();\n\n// Note that this function is unused in production, and thus should be\n// pruned by any well-configured minifier.\nfunction warnAboutDataLoss(\n existingRef: Reference,\n incomingObj: StoreObject,\n storeFieldName: string,\n store: NormalizedCache,\n) {\n const getChild = (objOrRef: StoreObject | Reference): StoreObject | false => {\n const child = store.getFieldValue(objOrRef, storeFieldName);\n return typeof child === \"object\" && child;\n };\n\n const existing = getChild(existingRef);\n if (!existing) return;\n\n const incoming = getChild(incomingObj);\n if (!incoming) return;\n\n // It's always safe to replace a reference, since it refers to data\n // safely stored elsewhere.\n if (isReference(existing)) return;\n\n // If the values are structurally equivalent, we do not need to worry\n // about incoming replacing existing.\n if (equal(existing, incoming)) return;\n\n // If we're replacing every key of the existing object, then the\n // existing data would be overwritten even if the objects were\n // normalized, so warning would not be helpful here.\n if (Object.keys(existing).every(\n key => store.getFieldValue(incoming, key) !== void 0)) {\n return;\n }\n\n const parentType =\n store.getFieldValue(existingRef, \"__typename\") ||\n store.getFieldValue(incomingObj, \"__typename\");\n const fieldName = fieldNameFromStoreName(storeFieldName);\n const typeDotName = `${parentType}.${fieldName}`;\n // Avoid warning more than once for the same type and field name.\n if (warnings.has(typeDotName)) return;\n warnings.add(typeDotName);\n\n const childTypenames: string[] = [];\n // Arrays do not have __typename fields, and always need a custom merge\n // function, even if their elements are normalized entities.\n if (!Array.isArray(existing) &&\n !Array.isArray(incoming)) {\n [existing, incoming].forEach(child => {\n const typename = store.getFieldValue(child, \"__typename\");\n if (typeof typename === \"string\" &&\n !childTypenames.includes(typename)) {\n childTypenames.push(typename);\n }\n });\n }\n\n invariant.warn(\n`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), ${\n childTypenames.length\n ? \"either ensure all objects of type \" +\n childTypenames.join(\" and \") + \" have an ID or a custom merge function, or \"\n : \"\"\n}define a custom merge function for the ${\n typeDotName\n} 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","// Make builtins like Map and Set safe to use with non-extensible objects.\nimport './fixPolyfills';\n\nimport { DocumentNode } from 'graphql';\nimport { dep, wrap } from 'optimism';\n\nimport { ApolloCache } from '../core/cache';\nimport { Cache } from '../core/types/Cache';\nimport { MissingFieldError } from '../core/types/common';\nimport {\n addTypenameToDocument,\n StoreObject,\n Reference,\n isReference,\n} from '../../utilities';\nimport {\n ApolloReducerConfig,\n NormalizedCacheObject,\n} from './types';\nimport { StoreReader } from './readFromStore';\nimport { StoreWriter } from './writeToStore';\nimport { EntityStore, supportsResultCaching } from './entityStore';\nimport { makeVar, forgetCache } from './reactiveVars';\nimport {\n defaultDataIdFromObject,\n PossibleTypesMap,\n Policies,\n TypePolicies,\n} from './policies';\nimport { hasOwn } from './helpers';\n\nexport interface InMemoryCacheConfig extends ApolloReducerConfig {\n resultCaching?: boolean;\n possibleTypes?: PossibleTypesMap;\n typePolicies?: TypePolicies;\n}\n\nconst defaultConfig: InMemoryCacheConfig = {\n dataIdFromObject: defaultDataIdFromObject,\n addTypename: true,\n resultCaching: true,\n typePolicies: {},\n};\n\nexport class InMemoryCache extends ApolloCache {\n private data: EntityStore;\n private optimisticData: EntityStore;\n\n protected config: InMemoryCacheConfig;\n private watches = new Set();\n private addTypename: boolean;\n\n private typenameDocumentCache = new Map();\n private storeReader: StoreReader;\n private storeWriter: StoreWriter;\n\n // Dynamically imported code can augment existing typePolicies or\n // possibleTypes by calling cache.policies.addTypePolicies or\n // cache.policies.addPossibletypes.\n public readonly policies: Policies;\n\n public readonly makeVar = makeVar;\n\n constructor(config: InMemoryCacheConfig = {}) {\n super();\n this.config = { ...defaultConfig, ...config };\n this.addTypename = !!this.config.addTypename;\n\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\n // Passing { resultCaching: false } in the InMemoryCache constructor options\n // will completely disable dependency tracking, which will improve memory\n // usage but worsen the performance of repeated reads.\n this.data = new EntityStore.Root({\n policies: this.policies,\n resultCaching: this.config.resultCaching,\n });\n\n // When no optimistic writes are currently active, cache.optimisticData ===\n // cache.data, so there are no additional layers on top of the actual data.\n // When an optimistic update happens, this.optimisticData will become a\n // linked list of OptimisticCacheLayer objects that terminates with the\n // original this.data cache object.\n this.optimisticData = this.data;\n\n this.storeWriter = new StoreWriter(\n this,\n this.storeReader = new StoreReader({\n cache: this,\n addTypename: this.addTypename,\n }),\n );\n }\n\n public restore(data: NormalizedCacheObject): this {\n if (data) this.data.replace(data);\n return this;\n }\n\n public extract(optimistic: boolean = false): NormalizedCacheObject {\n return (optimistic ? this.optimisticData : this.data).extract();\n }\n\n public read(options: Cache.ReadOptions): T | null {\n const {\n // Since read returns data or null, without any additional metadata\n // about whether/where there might have been missing fields, the\n // default behavior cannot be returnPartialData = true (like it is\n // for the diff method), since defaulting to true would violate the\n // integrity of the T in the return type. However, partial data may\n // be useful in some cases, so returnPartialData:true may be\n // specified explicitly.\n returnPartialData = false,\n } = options;\n try {\n return this.storeReader.diffQueryAgainstStore({\n store: options.optimistic ? this.optimisticData : this.data,\n query: options.query,\n variables: options.variables,\n rootId: options.rootId,\n config: this.config,\n returnPartialData,\n }).result || null;\n } catch (e) {\n if (e instanceof MissingFieldError) {\n // Swallow MissingFieldError and return null, so callers do not\n // need to worry about catching \"normal\" exceptions resulting from\n // incomplete cache data. Unexpected errors will be re-thrown. If\n // you need more information about which fields were missing, use\n // cache.diff instead, and examine diffResult.missing.\n return null;\n }\n throw e;\n }\n }\n\n public write(options: Cache.WriteOptions): Reference | undefined {\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 } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public modify(options: Cache.ModifyOptions): boolean {\n if (hasOwn.call(options, \"id\") && !options.id) {\n // To my knowledge, TypeScript does not currently provide a way to\n // enforce that an optional property?:type must *not* be undefined\n // when present. That ability would be useful here, because we want\n // options.id to default to ROOT_QUERY only when no options.id was\n // provided. If the caller attempts to pass options.id with a\n // falsy/undefined value (perhaps because cache.identify failed), we\n // should not assume the goal was to modify the ROOT_QUERY object.\n // We could throw, but it seems natural to return false to indicate\n // that nothing was modified.\n return false;\n }\n const store = options.optimistic // Defaults to false.\n ? this.optimisticData\n : this.data;\n try {\n ++this.txCount;\n return store.modify(options.id || \"ROOT_QUERY\", options.fields);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public diff(options: Cache.DiffOptions): Cache.DiffResult {\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\n public watch(watch: Cache.WatchOptions): () => void {\n this.watches.add(watch);\n if (watch.immediate) {\n this.maybeBroadcastWatch(watch);\n }\n return () => {\n // Once we remove the last watch from this.watches, cache.broadcastWatches\n // no longer does anything, so we preemptively tell the reactive variable\n // system to exclude this cache from future broadcasts.\n if (this.watches.delete(watch) && !this.watches.size) {\n forgetCache(this);\n }\n this.watchDep.dirty(watch);\n // Remove this watch from the LRU cache managed by the\n // maybeBroadcastWatch OptimisticWrapperFunction, to prevent memory\n // leaks involving the closure of watch.callback.\n this.maybeBroadcastWatch.forget(watch);\n };\n }\n\n // Request garbage collection of unreachable normalized entities.\n public gc() {\n return this.optimisticData.gc();\n }\n\n // Call this method to ensure the given root ID remains in the cache after\n // garbage collection, along with its transitive child entities. Note that\n // the cache automatically retains all directly written entities. By default,\n // the retainment persists after optimistic updates are removed. Pass true\n // for the optimistic argument if you would prefer for the retainment to be\n // discarded when the top-most optimistic layer is removed. Returns the\n // resulting (non-negative) retainment count.\n public retain(rootId: string, optimistic?: boolean): number {\n return (optimistic ? this.optimisticData : this.data).retain(rootId);\n }\n\n // Call this method to undo the effect of the retain method, above. Once the\n // retainment count falls to zero, the given ID will no longer be preserved\n // during garbage collection, though it may still be preserved by other safe\n // entities that refer to it. Returns the resulting (non-negative) retainment\n // count, in case that's useful.\n public release(rootId: string, optimistic?: boolean): number {\n return (optimistic ? this.optimisticData : this.data).release(rootId);\n }\n\n // Returns the canonical ID for a given StoreObject, obeying typePolicies\n // and keyFields (and dataIdFromObject, if you still use that). At minimum,\n // the object must contain a __typename and any primary key fields required\n // to identify entities of that type. If you pass a query result object, be\n // sure that none of the primary key fields have been renamed by aliasing.\n // If you pass a Reference object, its __ref ID string will be returned.\n public identify(object: StoreObject | Reference): string | undefined {\n return isReference(object) ? object.__ref :\n this.policies.identify(object)[0];\n }\n\n public evict(options: Cache.EvictOptions): boolean {\n if (!options.id) {\n if (hasOwn.call(options, \"id\")) {\n // See comment in modify method about why we return false when\n // options.id exists but is falsy/undefined.\n return false;\n }\n options = { ...options, id: \"ROOT_QUERY\" };\n }\n try {\n // It's unlikely that the eviction will end up invoking any other\n // cache update operations while it's running, but {in,de}crementing\n // this.txCount still seems like a good idea, for uniformity with\n // the other update methods.\n ++this.txCount;\n return this.optimisticData.evict(options);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public reset(): Promise {\n this.data.clear();\n this.optimisticData = this.data;\n this.broadcastWatches();\n return Promise.resolve();\n }\n\n public removeOptimistic(idToRemove: string) {\n const newOptimisticData = this.optimisticData.removeLayer(idToRemove);\n if (newOptimisticData !== this.optimisticData) {\n this.optimisticData = newOptimisticData;\n this.broadcastWatches();\n }\n }\n\n private txCount = 0;\n\n public performTransaction(\n transaction: (cache: InMemoryCache) => any,\n optimisticId?: string | null,\n ) {\n const perform = (layer?: EntityStore) => {\n const { data, optimisticData } = this;\n ++this.txCount;\n if (layer) {\n this.data = this.optimisticData = layer;\n }\n try {\n transaction(this);\n } finally {\n --this.txCount;\n this.data = data;\n this.optimisticData = optimisticData;\n }\n };\n\n let fromOptimisticTransaction = false;\n\n if (typeof optimisticId === 'string') {\n // Note that there can be multiple layers with the same optimisticId.\n // When removeOptimistic(id) is called for that id, all matching layers\n // will be removed, and the remaining layers will be reapplied.\n this.optimisticData = this.optimisticData.addLayer(optimisticId, perform);\n fromOptimisticTransaction = true;\n } else if (optimisticId === null) {\n // Ensure both this.data and this.optimisticData refer to the root\n // (non-optimistic) layer of the cache during the transaction. Note\n // that this.data could be a Layer if we are currently executing an\n // optimistic transaction function, but otherwise will always be an\n // EntityStore.Root instance.\n perform(this.data);\n } else {\n // Otherwise, leave this.data and this.optimisticData unchanged and\n // run the transaction with broadcast batching.\n perform();\n }\n\n // This broadcast does nothing if this.txCount > 0.\n this.broadcastWatches(fromOptimisticTransaction);\n }\n\n public transformDocument(document: DocumentNode): DocumentNode {\n if (this.addTypename) {\n let result = this.typenameDocumentCache.get(document);\n if (!result) {\n result = addTypenameToDocument(document);\n this.typenameDocumentCache.set(document, result);\n // If someone calls transformDocument and then mistakenly passes the\n // result back into an API that also calls transformDocument, make sure\n // we don't keep creating new query documents.\n this.typenameDocumentCache.set(result, result);\n }\n return result;\n }\n return document;\n }\n\n protected broadcastWatches(fromOptimisticTransaction?: boolean) {\n if (!this.txCount) {\n this.watches.forEach(c => this.maybeBroadcastWatch(c, fromOptimisticTransaction));\n }\n }\n\n private maybeBroadcastWatch = wrap((\n c: Cache.WatchOptions,\n fromOptimisticTransaction?: boolean,\n ) => {\n return this.broadcastWatch.call(this, c, !!fromOptimisticTransaction);\n }, {\n makeCacheKey: (c: Cache.WatchOptions) => {\n // Return a cache key (thus enabling result caching) only if we're\n // currently using a data store that can track cache dependencies.\n const store = c.optimistic ? this.optimisticData : this.data;\n if (supportsResultCaching(store)) {\n const { optimistic, rootId, variables } = c;\n return store.makeCacheKey(\n c.query,\n // Different watches can have the same query, optimistic\n // status, rootId, and variables, but if their callbacks are\n // different, the (identical) result needs to be delivered to\n // each distinct callback. The easiest way to achieve that\n // separation is to include c.callback in the cache key for\n // maybeBroadcastWatch calls. See issue #5733.\n c.callback,\n JSON.stringify({ optimistic, rootId, variables }),\n );\n }\n }\n });\n\n private watchDep = dep();\n\n // This method is wrapped by maybeBroadcastWatch, which is called by\n // broadcastWatches, so that we compute and broadcast results only when\n // the data that would be broadcast might have changed. It would be\n // simpler to check for changes after recomputing a result but before\n // broadcasting it, but this wrapping approach allows us to skip both\n // the recomputation and the broadcast, in most cases.\n private broadcastWatch(\n c: Cache.WatchOptions,\n fromOptimisticTransaction: boolean,\n ) {\n // First, invalidate any other maybeBroadcastWatch wrapper functions\n // currently depending on this Cache.WatchOptions object (including\n // the one currently calling broadcastWatch), so they will be included\n // in the next broadcast, even if the result they receive is the same\n // as the previous result they received. This is important because we\n // are about to deliver a different result to c.callback, so any\n // previous results should have a chance to be redelivered.\n this.watchDep.dirty(c);\n\n // Next, re-depend on this.watchDep for just this invocation of\n // maybeBroadcastWatch (this is a no-op if broadcastWatch was not\n // called by maybeBroadcastWatch). This allows only the most recent\n // maybeBroadcastWatch invocation for this watcher to remain cached,\n // enabling re-broadcast of previous results even if they have not\n // changed since they were previously delivered.\n this.watchDep(c);\n\n const diff = this.diff({\n query: c.query,\n variables: c.variables,\n optimistic: c.optimistic,\n });\n\n if (c.optimistic && fromOptimisticTransaction) {\n diff.fromOptimisticTransaction = true;\n }\n\n c.callback(diff);\n }\n}\n","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nexport function isUnitless(value) {\n return String(parseFloat(value)).length === String(value).length;\n} // Ported from Compass\n// https://github.com/Compass/compass/blob/master/core/stylesheets/compass/typography/_units.scss\n// Emulate the sass function \"unit\"\n\nexport function getUnit(input) {\n return String(input).match(/[\\d.\\-+]*\\s*(.*)/)[1] || '';\n} // Emulate the sass function \"unitless\"\n\nexport function toUnitless(length) {\n return parseFloat(length);\n} // Convert any CSS or value to any another.\n// From https://github.com/KyleAMathews/convert-css-length\n\nexport function convertLength(baseFontSize) {\n return function (length, toUnit) {\n var fromUnit = getUnit(length); // Optimize for cases where `from` and `to` units are accidentally the same.\n\n if (fromUnit === toUnit) {\n return length;\n } // Convert input length to pixels.\n\n\n var pxLength = toUnitless(length);\n\n if (fromUnit !== 'px') {\n if (fromUnit === 'em') {\n pxLength = toUnitless(length) * toUnitless(baseFontSize);\n } else if (fromUnit === 'rem') {\n pxLength = toUnitless(length) * toUnitless(baseFontSize);\n return length;\n }\n } // Convert length in pixels to the output unit\n\n\n var outputLength = pxLength;\n\n if (toUnit !== 'px') {\n if (toUnit === 'em') {\n outputLength = pxLength / toUnitless(baseFontSize);\n } else if (toUnit === 'rem') {\n outputLength = pxLength / toUnitless(baseFontSize);\n } else {\n return length;\n }\n }\n\n return parseFloat(outputLength.toFixed(5)) + toUnit;\n };\n}\nexport function alignProperty(_ref) {\n var size = _ref.size,\n grid = _ref.grid;\n var sizeBelow = size - size % grid;\n var sizeAbove = sizeBelow + grid;\n return size - sizeBelow < sizeAbove - size ? sizeBelow : sizeAbove;\n} // fontGrid finds a minimal grid (in rem) for the fontSize values so that the\n// lineHeight falls under a x pixels grid, 4px in the case of Material Design,\n// without changing the relative line height\n\nexport function fontGrid(_ref2) {\n var lineHeight = _ref2.lineHeight,\n pixels = _ref2.pixels,\n htmlFontSize = _ref2.htmlFontSize;\n return pixels / (lineHeight * htmlFontSize);\n}\n/**\n * generate a responsive version of a given CSS property\n * @example\n * responsiveProperty({\n * cssProperty: 'fontSize',\n * min: 15,\n * max: 20,\n * unit: 'px',\n * breakpoints: [300, 600],\n * })\n *\n * // this returns\n *\n * {\n * fontSize: '15px',\n * '@media (min-width:300px)': {\n * fontSize: '17.5px',\n * },\n * '@media (min-width:600px)': {\n * fontSize: '20px',\n * },\n * }\n *\n * @param {Object} params\n * @param {string} params.cssProperty - The CSS property to be made responsive\n * @param {number} params.min - The smallest value of the CSS property\n * @param {number} params.max - The largest value of the CSS property\n * @param {string} [params.unit] - The unit to be used for the CSS property\n * @param {Array.number} [params.breakpoints] - An array of breakpoints\n * @param {number} [params.alignStep] - Round scaled value to fall under this grid\n * @returns {Object} responsive styles for {params.cssProperty}\n */\n\nexport function responsiveProperty(_ref3) {\n var cssProperty = _ref3.cssProperty,\n min = _ref3.min,\n max = _ref3.max,\n _ref3$unit = _ref3.unit,\n unit = _ref3$unit === void 0 ? 'rem' : _ref3$unit,\n _ref3$breakpoints = _ref3.breakpoints,\n breakpoints = _ref3$breakpoints === void 0 ? [600, 960, 1280] : _ref3$breakpoints,\n _ref3$transform = _ref3.transform,\n transform = _ref3$transform === void 0 ? null : _ref3$transform;\n\n var output = _defineProperty({}, cssProperty, \"\".concat(min).concat(unit));\n\n var factor = (max - min) / breakpoints[breakpoints.length - 1];\n breakpoints.forEach(function (breakpoint) {\n var value = min + factor * breakpoint;\n\n if (transform !== null) {\n value = transform(value);\n }\n\n output[\"@media (min-width:\".concat(breakpoint, \"px)\")] = _defineProperty({}, cssProperty, \"\".concat(Math.round(value * 10000) / 10000).concat(unit));\n });\n return output;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@material-ui/utils\";\nimport { isUnitless, convertLength, responsiveProperty, alignProperty, fontGrid } from './cssUtils';\nexport default function responsiveFontSizes(themeInput) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _options$breakpoints = options.breakpoints,\n breakpoints = _options$breakpoints === void 0 ? ['sm', 'md', 'lg'] : _options$breakpoints,\n _options$disableAlign = options.disableAlign,\n disableAlign = _options$disableAlign === void 0 ? false : _options$disableAlign,\n _options$factor = options.factor,\n factor = _options$factor === void 0 ? 2 : _options$factor,\n _options$variants = options.variants,\n variants = _options$variants === void 0 ? ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'subtitle1', 'subtitle2', 'body1', 'body2', 'caption', 'button', 'overline'] : _options$variants;\n\n var theme = _extends({}, themeInput);\n\n theme.typography = _extends({}, theme.typography);\n var typography = theme.typography; // Convert between css lengths e.g. em->px or px->rem\n // Set the baseFontSize for your project. Defaults to 16px (also the browser default).\n\n var convert = convertLength(typography.htmlFontSize);\n var breakpointValues = breakpoints.map(function (x) {\n return theme.breakpoints.values[x];\n });\n variants.forEach(function (variant) {\n var style = typography[variant];\n var remFontSize = parseFloat(convert(style.fontSize, 'rem'));\n\n if (remFontSize <= 1) {\n return;\n }\n\n var maxFontSize = remFontSize;\n var minFontSize = 1 + (maxFontSize - 1) / factor;\n var lineHeight = style.lineHeight;\n\n if (!isUnitless(lineHeight) && !disableAlign) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? \"Material-UI: Unsupported non-unitless line height with grid alignment.\\nUse unitless line heights instead.\" : _formatMuiErrorMessage(6));\n }\n\n if (!isUnitless(lineHeight)) {\n // make it unitless\n lineHeight = parseFloat(convert(lineHeight, 'rem')) / parseFloat(remFontSize);\n }\n\n var transform = null;\n\n if (!disableAlign) {\n transform = function transform(value) {\n return alignProperty({\n size: value,\n grid: fontGrid({\n pixels: 4,\n lineHeight: lineHeight,\n htmlFontSize: typography.htmlFontSize\n })\n });\n };\n }\n\n typography[variant] = _extends({}, style, responsiveProperty({\n cssProperty: 'fontSize',\n min: minFontSize,\n max: maxFontSize,\n unit: 'rem',\n breakpoints: breakpointValues,\n transform: transform\n }));\n });\n return theme;\n}","//! moment.js locale configuration\n//! locale : Spanish (Mexico) [es-mx]\n//! author : JC Franco : https://github.com/jcfranco\n\nimport moment from '../moment';\n\nvar monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\nexport default moment.defineLocale('es-mx', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-branches\");\n\t\t}\n\n\t\texport default Async(load);\n\t","import { Operation } from '../core';\nimport { throwServerError } from '../utils';\n\nconst { hasOwnProperty } = Object.prototype;\n\nexport type ServerParseError = Error & {\n response: Response;\n statusCode: number;\n bodyText: string;\n};\n\nexport function parseAndCheckHttpResponse(\n operations: Operation | Operation[],\n) {\n return (response: Response) => response\n .text()\n .then(bodyText => {\n try {\n return JSON.parse(bodyText);\n } catch (err) {\n const parseError = err as ServerParseError;\n parseError.name = 'ServerParseError';\n parseError.response = response;\n parseError.statusCode = response.status;\n parseError.bodyText = bodyText;\n throw parseError;\n }\n })\n .then((result: any) => {\n if (response.status >= 300) {\n // Network error\n throwServerError(\n response,\n result,\n `Response not successful: Received status code ${response.status}`,\n );\n }\n\n if (\n !Array.isArray(result) &&\n !hasOwnProperty.call(result, 'data') &&\n !hasOwnProperty.call(result, 'errors')\n ) {\n // Data error\n throwServerError(\n response,\n result,\n `Server response was missing for query '${\n Array.isArray(operations)\n ? operations.map(op => op.operationName)\n : operations.operationName\n }'.`,\n );\n }\n return result;\n });\n}\n","import { visit } from \"./visitor.mjs\";\nimport { printBlockString } from \"./blockString.mjs\";\n/**\n * Converts an AST into a string, using one set of reasonable\n * formatting rules.\n */\n\nexport function print(ast) {\n return visit(ast, {\n leave: printDocASTReducer\n });\n}\nvar MAX_LINE_LENGTH = 80; // TODO: provide better type coverage in future\n\nvar printDocASTReducer = {\n Name: function Name(node) {\n return node.value;\n },\n Variable: function Variable(node) {\n return '$' + node.name;\n },\n // Document\n Document: function Document(node) {\n return join(node.definitions, '\\n\\n') + '\\n';\n },\n OperationDefinition: function OperationDefinition(node) {\n var op = node.operation;\n var name = node.name;\n var varDefs = wrap('(', join(node.variableDefinitions, ', '), ')');\n var directives = join(node.directives, ' ');\n var selectionSet = node.selectionSet; // Anonymous queries with no directives or variable definitions can use\n // the query short form.\n\n return !name && !directives && !varDefs && op === 'query' ? selectionSet : join([op, join([name, varDefs]), directives, selectionSet], ' ');\n },\n VariableDefinition: function VariableDefinition(_ref) {\n var variable = _ref.variable,\n type = _ref.type,\n defaultValue = _ref.defaultValue,\n directives = _ref.directives;\n return variable + ': ' + type + wrap(' = ', defaultValue) + wrap(' ', join(directives, ' '));\n },\n SelectionSet: function SelectionSet(_ref2) {\n var selections = _ref2.selections;\n return block(selections);\n },\n Field: function Field(_ref3) {\n var alias = _ref3.alias,\n name = _ref3.name,\n args = _ref3.arguments,\n directives = _ref3.directives,\n selectionSet = _ref3.selectionSet;\n var prefix = wrap('', alias, ': ') + name;\n var argsLine = prefix + wrap('(', join(args, ', '), ')');\n\n if (argsLine.length > MAX_LINE_LENGTH) {\n argsLine = prefix + wrap('(\\n', indent(join(args, '\\n')), '\\n)');\n }\n\n return join([argsLine, join(directives, ' '), selectionSet], ' ');\n },\n Argument: function Argument(_ref4) {\n var name = _ref4.name,\n value = _ref4.value;\n return name + ': ' + value;\n },\n // Fragments\n FragmentSpread: function FragmentSpread(_ref5) {\n var name = _ref5.name,\n directives = _ref5.directives;\n return '...' + name + wrap(' ', join(directives, ' '));\n },\n InlineFragment: function InlineFragment(_ref6) {\n var typeCondition = _ref6.typeCondition,\n directives = _ref6.directives,\n selectionSet = _ref6.selectionSet;\n return join(['...', wrap('on ', typeCondition), join(directives, ' '), selectionSet], ' ');\n },\n FragmentDefinition: function FragmentDefinition(_ref7) {\n var name = _ref7.name,\n typeCondition = _ref7.typeCondition,\n variableDefinitions = _ref7.variableDefinitions,\n directives = _ref7.directives,\n selectionSet = _ref7.selectionSet;\n return (// Note: fragment variable definitions are experimental and may be changed\n // or removed in the future.\n \"fragment \".concat(name).concat(wrap('(', join(variableDefinitions, ', '), ')'), \" \") + \"on \".concat(typeCondition, \" \").concat(wrap('', join(directives, ' '), ' ')) + selectionSet\n );\n },\n // Value\n IntValue: function IntValue(_ref8) {\n var value = _ref8.value;\n return value;\n },\n FloatValue: function FloatValue(_ref9) {\n var value = _ref9.value;\n return value;\n },\n StringValue: function StringValue(_ref10, key) {\n var value = _ref10.value,\n isBlockString = _ref10.block;\n return isBlockString ? printBlockString(value, key === 'description' ? '' : ' ') : JSON.stringify(value);\n },\n BooleanValue: function BooleanValue(_ref11) {\n var value = _ref11.value;\n return value ? 'true' : 'false';\n },\n NullValue: function NullValue() {\n return 'null';\n },\n EnumValue: function EnumValue(_ref12) {\n var value = _ref12.value;\n return value;\n },\n ListValue: function ListValue(_ref13) {\n var values = _ref13.values;\n return '[' + join(values, ', ') + ']';\n },\n ObjectValue: function ObjectValue(_ref14) {\n var fields = _ref14.fields;\n return '{' + join(fields, ', ') + '}';\n },\n ObjectField: function ObjectField(_ref15) {\n var name = _ref15.name,\n value = _ref15.value;\n return name + ': ' + value;\n },\n // Directive\n Directive: function Directive(_ref16) {\n var name = _ref16.name,\n args = _ref16.arguments;\n return '@' + name + wrap('(', join(args, ', '), ')');\n },\n // Type\n NamedType: function NamedType(_ref17) {\n var name = _ref17.name;\n return name;\n },\n ListType: function ListType(_ref18) {\n var type = _ref18.type;\n return '[' + type + ']';\n },\n NonNullType: function NonNullType(_ref19) {\n var type = _ref19.type;\n return type + '!';\n },\n // Type System Definitions\n SchemaDefinition: addDescription(function (_ref20) {\n var directives = _ref20.directives,\n operationTypes = _ref20.operationTypes;\n return join(['schema', join(directives, ' '), block(operationTypes)], ' ');\n }),\n OperationTypeDefinition: function OperationTypeDefinition(_ref21) {\n var operation = _ref21.operation,\n type = _ref21.type;\n return operation + ': ' + type;\n },\n ScalarTypeDefinition: addDescription(function (_ref22) {\n var name = _ref22.name,\n directives = _ref22.directives;\n return join(['scalar', name, join(directives, ' ')], ' ');\n }),\n ObjectTypeDefinition: addDescription(function (_ref23) {\n var name = _ref23.name,\n interfaces = _ref23.interfaces,\n directives = _ref23.directives,\n fields = _ref23.fields;\n return join(['type', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n }),\n FieldDefinition: addDescription(function (_ref24) {\n var name = _ref24.name,\n args = _ref24.arguments,\n type = _ref24.type,\n directives = _ref24.directives;\n return name + (hasMultilineItems(args) ? wrap('(\\n', indent(join(args, '\\n')), '\\n)') : wrap('(', join(args, ', '), ')')) + ': ' + type + wrap(' ', join(directives, ' '));\n }),\n InputValueDefinition: addDescription(function (_ref25) {\n var name = _ref25.name,\n type = _ref25.type,\n defaultValue = _ref25.defaultValue,\n directives = _ref25.directives;\n return join([name + ': ' + type, wrap('= ', defaultValue), join(directives, ' ')], ' ');\n }),\n InterfaceTypeDefinition: addDescription(function (_ref26) {\n var name = _ref26.name,\n interfaces = _ref26.interfaces,\n directives = _ref26.directives,\n fields = _ref26.fields;\n return join(['interface', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n }),\n UnionTypeDefinition: addDescription(function (_ref27) {\n var name = _ref27.name,\n directives = _ref27.directives,\n types = _ref27.types;\n return join(['union', name, join(directives, ' '), types && types.length !== 0 ? '= ' + join(types, ' | ') : ''], ' ');\n }),\n EnumTypeDefinition: addDescription(function (_ref28) {\n var name = _ref28.name,\n directives = _ref28.directives,\n values = _ref28.values;\n return join(['enum', name, join(directives, ' '), block(values)], ' ');\n }),\n EnumValueDefinition: addDescription(function (_ref29) {\n var name = _ref29.name,\n directives = _ref29.directives;\n return join([name, join(directives, ' ')], ' ');\n }),\n InputObjectTypeDefinition: addDescription(function (_ref30) {\n var name = _ref30.name,\n directives = _ref30.directives,\n fields = _ref30.fields;\n return join(['input', name, join(directives, ' '), block(fields)], ' ');\n }),\n DirectiveDefinition: addDescription(function (_ref31) {\n var name = _ref31.name,\n args = _ref31.arguments,\n repeatable = _ref31.repeatable,\n locations = _ref31.locations;\n return 'directive @' + name + (hasMultilineItems(args) ? wrap('(\\n', indent(join(args, '\\n')), '\\n)') : wrap('(', join(args, ', '), ')')) + (repeatable ? ' repeatable' : '') + ' on ' + join(locations, ' | ');\n }),\n SchemaExtension: function SchemaExtension(_ref32) {\n var directives = _ref32.directives,\n operationTypes = _ref32.operationTypes;\n return join(['extend schema', join(directives, ' '), block(operationTypes)], ' ');\n },\n ScalarTypeExtension: function ScalarTypeExtension(_ref33) {\n var name = _ref33.name,\n directives = _ref33.directives;\n return join(['extend scalar', name, join(directives, ' ')], ' ');\n },\n ObjectTypeExtension: function ObjectTypeExtension(_ref34) {\n var name = _ref34.name,\n interfaces = _ref34.interfaces,\n directives = _ref34.directives,\n fields = _ref34.fields;\n return join(['extend type', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n },\n InterfaceTypeExtension: function InterfaceTypeExtension(_ref35) {\n var name = _ref35.name,\n interfaces = _ref35.interfaces,\n directives = _ref35.directives,\n fields = _ref35.fields;\n return join(['extend interface', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n },\n UnionTypeExtension: function UnionTypeExtension(_ref36) {\n var name = _ref36.name,\n directives = _ref36.directives,\n types = _ref36.types;\n return join(['extend union', name, join(directives, ' '), types && types.length !== 0 ? '= ' + join(types, ' | ') : ''], ' ');\n },\n EnumTypeExtension: function EnumTypeExtension(_ref37) {\n var name = _ref37.name,\n directives = _ref37.directives,\n values = _ref37.values;\n return join(['extend enum', name, join(directives, ' '), block(values)], ' ');\n },\n InputObjectTypeExtension: function InputObjectTypeExtension(_ref38) {\n var name = _ref38.name,\n directives = _ref38.directives,\n fields = _ref38.fields;\n return join(['extend input', name, join(directives, ' '), block(fields)], ' ');\n }\n};\n\nfunction addDescription(cb) {\n return function (node) {\n return join([node.description, cb(node)], '\\n');\n };\n}\n/**\n * Given maybeArray, print an empty string if it is null or empty, otherwise\n * print all items together separated by separator if provided\n */\n\n\nfunction join(maybeArray) {\n var _maybeArray$filter$jo;\n\n var separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n return (_maybeArray$filter$jo = maybeArray === null || maybeArray === void 0 ? void 0 : maybeArray.filter(function (x) {\n return x;\n }).join(separator)) !== null && _maybeArray$filter$jo !== void 0 ? _maybeArray$filter$jo : '';\n}\n/**\n * Given array, print each item on its own line, wrapped in an\n * indented \"{ }\" block.\n */\n\n\nfunction block(array) {\n return wrap('{\\n', indent(join(array, '\\n')), '\\n}');\n}\n/**\n * If maybeString is not null or empty, then wrap with start and end, otherwise print an empty string.\n */\n\n\nfunction wrap(start, maybeString) {\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n return maybeString != null && maybeString !== '' ? start + maybeString + end : '';\n}\n\nfunction indent(str) {\n return wrap(' ', str.replace(/\\n/g, '\\n '));\n}\n\nfunction isMultiline(str) {\n return str.indexOf('\\n') !== -1;\n}\n\nfunction hasMultilineItems(maybeArray) {\n return maybeArray != null && maybeArray.some(isMultiline);\n}\n","import { serializeFetchParameter } from './serializeFetchParameter';\nimport { Body } from './selectHttpOptionsAndBody';\n\n// For GET operations, returns the given URI rewritten with parameters, or a\n// parse error.\nexport function rewriteURIForGET(chosenURI: string, body: Body) {\n // Implement the standard HTTP GET serialization, plus 'extensions'. Note\n // the extra level of JSON serialization!\n const queryParams: string[] = [];\n const addQueryParam = (key: string, value: string) => {\n queryParams.push(`${key}=${encodeURIComponent(value)}`);\n };\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 let serializedVariables;\n try {\n serializedVariables = serializeFetchParameter(\n body.variables,\n 'Variables map',\n );\n } catch (parseError) {\n return { parseError };\n }\n addQueryParam('variables', serializedVariables);\n }\n if (body.extensions) {\n let serializedExtensions;\n try {\n serializedExtensions = serializeFetchParameter(\n body.extensions,\n 'Extensions map',\n );\n } catch (parseError) {\n return { parseError };\n }\n addQueryParam('extensions', serializedExtensions);\n }\n\n // Reconstruct the URI with added query params.\n // XXX This assumes that the URI is well-formed and that it doesn't\n // already contain any of these query params. We could instead use the\n // URL API and take a polyfill (whatwg-url@6) for older browsers that\n // don't support URLSearchParams. Note that some browsers (and\n // versions of whatwg-url) support URL but not URLSearchParams!\n let fragment = '',\n preFragment = chosenURI;\n const fragmentStart = chosenURI.indexOf('#');\n if (fragmentStart !== -1) {\n fragment = chosenURI.substr(fragmentStart);\n preFragment = chosenURI.substr(0, fragmentStart);\n }\n const queryParamsPrefix = preFragment.indexOf('?') === -1 ? '?' : '&';\n const newURI =\n preFragment + queryParamsPrefix + queryParams.join('&') + fragment;\n return { newURI };\n}\n","import { InvariantError } from 'ts-invariant';\n\nexport type ClientParseError = InvariantError & {\n parseError: Error;\n};\n\nexport const serializeFetchParameter = (p: any, label: string) => {\n let serialized;\n try {\n serialized = JSON.stringify(p);\n } catch (e) {\n const parseError = new InvariantError(\n `Network request failed. ${label} is not serializable: ${e.message}`,\n ) as ClientParseError;\n parseError.parseError = e;\n throw parseError;\n }\n return serialized;\n};\n","import { print } from 'graphql';\n\nimport { Operation } from '../core';\n\nexport interface UriFunction {\n (operation: Operation): string;\n}\n\nexport interface Body {\n query?: string;\n operationName?: string;\n variables?: Record;\n extensions?: Record;\n}\n\nexport interface HttpOptions {\n /**\n * The URI to use when fetching operations.\n *\n * Defaults to '/graphql'.\n */\n uri?: string | UriFunction;\n\n /**\n * Passes the extensions field to your graphql server.\n *\n * Defaults to false.\n */\n includeExtensions?: boolean;\n\n /**\n * A `fetch`-compatible API to use when making requests.\n */\n fetch?: WindowOrWorkerGlobalScope['fetch'];\n\n /**\n * An object representing values to be sent as headers on the request.\n */\n headers?: any;\n\n /**\n * The credentials policy you want to use for the fetch call.\n */\n credentials?: string;\n\n /**\n * Any overrides of the fetch options argument to pass to the fetch call.\n */\n fetchOptions?: any;\n\n /**\n * If set to true, use the HTTP GET method for query operations. Mutations\n * will still use the method specified in fetchOptions.method (which defaults\n * to POST).\n */\n useGETForQueries?: boolean;\n\n /**\n * If set to true, the default behavior of stripping unused variables\n * from the request will be disabled.\n *\n * Unused variables are likely to trigger server-side validation errors,\n * per https://spec.graphql.org/draft/#sec-All-Variables-Used, but this\n * includeUnusedVariables option can be useful if your server deviates\n * from the GraphQL specification by not strictly enforcing that rule.\n */\n includeUnusedVariables?: boolean;\n}\n\nexport interface HttpQueryOptions {\n includeQuery?: boolean;\n includeExtensions?: boolean;\n}\n\nexport interface HttpConfig {\n http?: HttpQueryOptions;\n options?: any;\n headers?: any;\n credentials?: any;\n}\n\nconst defaultHttpOptions: HttpQueryOptions = {\n includeQuery: true,\n includeExtensions: false,\n};\n\nconst defaultHeaders = {\n // headers are case insensitive (https://stackoverflow.com/a/5259004)\n accept: '*/*',\n 'content-type': 'application/json',\n};\n\nconst defaultOptions = {\n method: 'POST',\n};\n\nexport const fallbackHttpConfig = {\n http: defaultHttpOptions,\n headers: defaultHeaders,\n options: defaultOptions,\n};\n\nexport const selectHttpOptionsAndBody = (\n operation: Operation,\n fallbackConfig: HttpConfig,\n ...configs: Array\n) => {\n let options: HttpConfig & Record = {\n ...fallbackConfig.options,\n headers: fallbackConfig.headers,\n credentials: fallbackConfig.credentials,\n };\n let http: HttpQueryOptions = fallbackConfig.http || {};\n\n /*\n * use the rest of the configs to populate the options\n * configs later in the list will overwrite earlier fields\n */\n configs.forEach(config => {\n options = {\n ...options,\n ...config.options,\n headers: {\n ...options.headers,\n ...config.headers,\n },\n };\n if (config.credentials) options.credentials = config.credentials;\n\n http = {\n ...http,\n ...config.http,\n };\n });\n\n //The body depends on the http options\n const { operationName, extensions, variables, query } = operation;\n const body: Body = { operationName, variables };\n\n if (http.includeExtensions) (body as any).extensions = extensions;\n\n // not sending the query (i.e persisted queries)\n if (http.includeQuery) (body as any).query = print(query);\n\n return {\n options,\n body,\n };\n};\n","import { InvariantError } from 'ts-invariant';\n\nexport const checkFetcher = (fetcher: WindowOrWorkerGlobalScope['fetch'] | undefined) => {\n if (!fetcher && typeof fetch === 'undefined') {\n throw new InvariantError(`\n\"fetch\" has not been found globally and no fetcher has been \\\nconfigured. To fix this, install a fetch package (like \\\nhttps://www.npmjs.com/package/cross-fetch), instantiate the \\\nfetcher, 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","export const createSignalIfSupported = () => {\n if (typeof AbortController === 'undefined')\n return { controller: false, signal: false };\n\n const controller = new AbortController();\n const signal = controller.signal;\n return { controller, signal };\n};\n","import { Operation } from '../core';\n\nexport const selectURI = (\n operation: Operation,\n fallbackURI?: string | ((operation: Operation) => string),\n) => {\n const context = operation.getContext();\n const contextURI = context.uri;\n\n if (contextURI) {\n return contextURI;\n } else if (typeof fallbackURI === 'function') {\n return fallbackURI(operation);\n } else {\n return (fallbackURI as string) || '/graphql';\n }\n};\n","import { DefinitionNode, VariableDefinitionNode } from 'graphql';\nimport { visit } from 'graphql/language/visitor';\n\nimport { ApolloLink } from '../core';\nimport { Observable } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport { parseAndCheckHttpResponse } from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport {\n selectHttpOptionsAndBody,\n fallbackHttpConfig,\n HttpOptions\n} from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\n\nexport const createHttpLink = (linkOptions: HttpOptions = {}) => {\n let {\n uri = '/graphql',\n // use default global fetch if nothing passed in\n fetch: fetcher,\n includeExtensions,\n useGETForQueries,\n includeUnusedVariables = false,\n ...requestOptions\n } = linkOptions;\n\n // dev warnings to ensure fetch is present\n checkFetcher(fetcher);\n\n //fetcher is set here rather than the destructuring to ensure fetch is\n //declared before referencing it. Reference in the destructuring would cause\n //a ReferenceError\n if (!fetcher) {\n fetcher = fetch;\n }\n\n const linkConfig = {\n http: { includeExtensions },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n\n return new ApolloLink(operation => {\n let chosenURI = selectURI(operation, uri);\n\n const context = operation.getContext();\n\n // `apollographql-client-*` headers are automatically set if a\n // `clientAwareness` object is found in the context. These headers are\n // set first, followed by the rest of the headers pulled from\n // `context.headers`. If desired, `apollographql-client-*` headers set by\n // the `clientAwareness` object can be overridden by\n // `apollographql-client-*` headers set in `context.headers`.\n const clientAwarenessHeaders: {\n 'apollographql-client-name'?: string;\n 'apollographql-client-version'?: string;\n } = {};\n\n if (context.clientAwareness) {\n const { name, version } = context.clientAwareness;\n if (name) {\n clientAwarenessHeaders['apollographql-client-name'] = name;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n\n const contextHeaders = { ...clientAwarenessHeaders, ...context.headers };\n\n const contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n\n //uses fallback, link, and then context to build options\n const { options, body } = selectHttpOptionsAndBody(\n operation,\n fallbackHttpConfig,\n linkConfig,\n contextConfig,\n );\n\n if (body.variables && !includeUnusedVariables) {\n const unusedNames = new Set(Object.keys(body.variables));\n visit(operation.query, {\n Variable(node, _key, parent) {\n // A variable type definition at the top level of a query is not\n // enough to silence server-side errors about the variable being\n // unused, so variable definitions do not count as usage.\n // https://spec.graphql.org/draft/#sec-All-Variables-Used\n if (parent && (parent as VariableDefinitionNode).kind !== 'VariableDefinition') {\n unusedNames.delete(node.name.value);\n }\n },\n });\n if (unusedNames.size) {\n // Make a shallow copy of body.variables (with keys in the same\n // order) and then delete unused variables from the copy.\n body.variables = { ...body.variables };\n unusedNames.forEach(name => {\n delete body.variables![name];\n });\n }\n }\n\n let controller: any;\n if (!(options as any).signal) {\n const { controller: _controller, signal } = createSignalIfSupported();\n controller = _controller;\n if (controller) (options as any).signal = signal;\n }\n\n // If requested, set method to GET if there are no mutations.\n const definitionIsMutation = (d: DefinitionNode) => {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (\n useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)\n ) {\n options.method = 'GET';\n }\n\n if (options.method === 'GET') {\n const { newURI, parseError } = rewriteURIForGET(chosenURI, body);\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n } else {\n try {\n (options as any).body = serializeFetchParameter(body, 'Payload');\n } catch (parseError) {\n return fromError(parseError);\n }\n }\n\n return new Observable(observer => {\n fetcher!(chosenURI, options)\n .then(response => {\n operation.setContext({ response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then(result => {\n // we have data and can send it to back up the link chain\n observer.next(result);\n observer.complete();\n return result;\n })\n .catch(err => {\n // fetch was cancelled so it's already been cleaned up in the unsubscribe\n if (err.name === 'AbortError') return;\n // if it is a network error, BUT there is graphql result info\n // fire the next observer before calling error\n // this gives apollo-client (and react-apollo) the `graphqlErrors` and `networErrors`\n // to pass to UI\n // this should only happen if we *also* have data as part of the response key per\n // the spec\n if (err.result && err.result.errors && err.result.data) {\n // if we don't call next, the UI can only show networkError because AC didn't\n // get any graphqlErrors\n // this is graphql execution result info (i.e errors and possibly data)\n // this is because there is no formal spec how errors should translate to\n // http status codes. So an auth error (401) could have both data\n // from a public field, errors from a private field, and a status of 401\n // {\n // user { // this will have errors\n // firstName\n // }\n // products { // this is public so will have data\n // cost\n // }\n // }\n //\n // the result of above *could* look like this:\n // {\n // data: { products: [{ cost: \"$10\" }] },\n // errors: [{\n // message: 'your session has timed out',\n // path: []\n // }]\n // }\n // status code of above would be a 401\n // in the UI you want to show data where you can, errors as data where you can\n // and use correct http status codes\n observer.next(err.result);\n }\n observer.error(err);\n });\n\n return () => {\n // XXX support canceling this request\n // https://developers.google.com/web/updates/2017/09/abortable-fetch\n if (controller) controller.abort();\n };\n });\n });\n};\n","import { ApolloLink, RequestHandler } from '../core';\nimport { HttpOptions } from './selectHttpOptionsAndBody';\nimport { createHttpLink } from './createHttpLink';\n\nexport class HttpLink extends ApolloLink {\n public requester: RequestHandler;\n constructor(public options: HttpOptions = {}) {\n super(createHttpLink(options).request);\n }\n}\n","/**\n * Produces the value of a block string from its parsed raw value, similar to\n * CoffeeScript's block string, Python's docstring trim or Ruby's strip_heredoc.\n *\n * This implements the GraphQL spec's BlockStringValue() static algorithm.\n *\n * @internal\n */\nexport function dedentBlockStringValue(rawString) {\n // Expand a block string's raw value into independent lines.\n var lines = rawString.split(/\\r\\n|[\\n\\r]/g); // Remove common indentation from all lines but first.\n\n var commonIndent = getBlockStringIndentation(rawString);\n\n if (commonIndent !== 0) {\n for (var i = 1; i < lines.length; i++) {\n lines[i] = lines[i].slice(commonIndent);\n }\n } // Remove leading and trailing blank lines.\n\n\n var startLine = 0;\n\n while (startLine < lines.length && isBlank(lines[startLine])) {\n ++startLine;\n }\n\n var endLine = lines.length;\n\n while (endLine > startLine && isBlank(lines[endLine - 1])) {\n --endLine;\n } // Return a string of the lines joined with U+000A.\n\n\n return lines.slice(startLine, endLine).join('\\n');\n}\n\nfunction isBlank(str) {\n for (var i = 0; i < str.length; ++i) {\n if (str[i] !== ' ' && str[i] !== '\\t') {\n return false;\n }\n }\n\n return true;\n}\n/**\n * @internal\n */\n\n\nexport function getBlockStringIndentation(value) {\n var _commonIndent;\n\n var isFirstLine = true;\n var isEmptyLine = true;\n var indent = 0;\n var commonIndent = null;\n\n for (var i = 0; i < value.length; ++i) {\n switch (value.charCodeAt(i)) {\n case 13:\n // \\r\n if (value.charCodeAt(i + 1) === 10) {\n ++i; // skip \\r\\n as one symbol\n }\n\n // falls through\n\n case 10:\n // \\n\n isFirstLine = false;\n isEmptyLine = true;\n indent = 0;\n break;\n\n case 9: // \\t\n\n case 32:\n // \n ++indent;\n break;\n\n default:\n if (isEmptyLine && !isFirstLine && (commonIndent === null || indent < commonIndent)) {\n commonIndent = indent;\n }\n\n isEmptyLine = false;\n }\n }\n\n return (_commonIndent = commonIndent) !== null && _commonIndent !== void 0 ? _commonIndent : 0;\n}\n/**\n * Print a block string in the indented block form by adding a leading and\n * trailing blank line. However, if a block string starts with whitespace and is\n * a single-line, adding a leading blank line would strip that whitespace.\n *\n * @internal\n */\n\nexport function printBlockString(value) {\n var indentation = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var preferMultipleLines = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var isSingleLine = value.indexOf('\\n') === -1;\n var hasLeadingSpace = value[0] === ' ' || value[0] === '\\t';\n var hasTrailingQuote = value[value.length - 1] === '\"';\n var hasTrailingSlash = value[value.length - 1] === '\\\\';\n var printAsMultipleLines = !isSingleLine || hasTrailingQuote || hasTrailingSlash || preferMultipleLines;\n var result = ''; // Format a multi-line block quote to account for leading space.\n\n if (printAsMultipleLines && !(isSingleLine && hasLeadingSpace)) {\n result += '\\n' + indentation;\n }\n\n result += indentation ? value.replace(/\\n/g, '\\n' + indentation) : value;\n\n if (printAsMultipleLines) {\n result += '\\n';\n }\n\n return '\"\"\"' + result.replace(/\"\"\"/g, '\\\\\"\"\"') + '\"\"\"';\n}\n","module.exports = require('./lib/Observable.js').Observable;\n","//! moment.js locale configuration\n//! locale : Ukrainian [uk]\n//! author : zemlanin : https://github.com/zemlanin\n//! Author : Menelion Elensúle : https://github.com/Oire\n\nimport moment from '../moment';\n\nfunction plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n}\nfunction relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд',\n mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин',\n hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин',\n dd: 'день_дні_днів',\n MM: 'місяць_місяці_місяців',\n yy: 'рік_роки_років',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвилина' : 'хвилину';\n } else if (key === 'h') {\n return withoutSuffix ? 'година' : 'годину';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n}\nfunction weekdaysCaseReplace(m, format) {\n var weekdays = {\n nominative: 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split(\n '_'\n ),\n accusative: 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split(\n '_'\n ),\n genitive: 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split(\n '_'\n ),\n },\n nounCase;\n\n if (m === true) {\n return weekdays['nominative']\n .slice(1, 7)\n .concat(weekdays['nominative'].slice(0, 1));\n }\n if (!m) {\n return weekdays['nominative'];\n }\n\n nounCase = /(\\[[ВвУу]\\]) ?dddd/.test(format)\n ? 'accusative'\n : /\\[?(?:минулої|наступної)? ?\\] ?dddd/.test(format)\n ? 'genitive'\n : 'nominative';\n return weekdays[nounCase][m.day()];\n}\nfunction processHoursFunction(str) {\n return function () {\n return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';\n };\n}\n\nexport default moment.defineLocale('uk', {\n months: {\n format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split(\n '_'\n ),\n standalone: 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split(\n '_'\n ),\n },\n monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split(\n '_'\n ),\n weekdays: weekdaysCaseReplace,\n weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY р.',\n LLL: 'D MMMM YYYY р., HH:mm',\n LLLL: 'dddd, D MMMM YYYY р., HH:mm',\n },\n calendar: {\n sameDay: processHoursFunction('[Сьогодні '),\n nextDay: processHoursFunction('[Завтра '),\n lastDay: processHoursFunction('[Вчора '),\n nextWeek: processHoursFunction('[У] dddd ['),\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return processHoursFunction('[Минулої] dddd [').call(this);\n case 1:\n case 2:\n case 4:\n return processHoursFunction('[Минулого] dddd [').call(this);\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'за %s',\n past: '%s тому',\n s: 'декілька секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'годину',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n M: 'місяць',\n MM: relativeTimeWithPlural,\n y: 'рік',\n yy: relativeTimeWithPlural,\n },\n // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n meridiemParse: /ночі|ранку|дня|вечора/,\n isPM: function (input) {\n return /^(дня|вечора)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночі';\n } else if (hour < 12) {\n return 'ранку';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечора';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return number + '-й';\n case 'D':\n return number + '-го';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\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}","//! moment.js locale configuration\n//! locale : Hebrew [he]\n//! author : Tomer Cohen : https://github.com/tomer\n//! author : Moshe Simantov : https://github.com/DevelopmentIL\n//! author : Tal Ater : https://github.com/TalAter\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('he', {\n months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split(\n '_'\n ),\n monthsShort: 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split(\n '_'\n ),\n weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),\n weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),\n weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [ב]MMMM YYYY',\n LLL: 'D [ב]MMMM YYYY HH:mm',\n LLLL: 'dddd, D [ב]MMMM YYYY HH:mm',\n l: 'D/M/YYYY',\n ll: 'D MMM YYYY',\n lll: 'D MMM YYYY HH:mm',\n llll: 'ddd, D MMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[היום ב־]LT',\n nextDay: '[מחר ב־]LT',\n nextWeek: 'dddd [בשעה] LT',\n lastDay: '[אתמול ב־]LT',\n lastWeek: '[ביום] dddd [האחרון בשעה] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'בעוד %s',\n past: 'לפני %s',\n s: 'מספר שניות',\n ss: '%d שניות',\n m: 'דקה',\n mm: '%d דקות',\n h: 'שעה',\n hh: function (number) {\n if (number === 2) {\n return 'שעתיים';\n }\n return number + ' שעות';\n },\n d: 'יום',\n dd: function (number) {\n if (number === 2) {\n return 'יומיים';\n }\n return number + ' ימים';\n },\n M: 'חודש',\n MM: function (number) {\n if (number === 2) {\n return 'חודשיים';\n }\n return number + ' חודשים';\n },\n y: 'שנה',\n yy: function (number) {\n if (number === 2) {\n return 'שנתיים';\n } else if (number % 10 === 0 && number !== 10) {\n return number + ' שנה';\n }\n return number + ' שנים';\n },\n },\n meridiemParse: /אחה\"צ|לפנה\"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,\n isPM: function (input) {\n return /^(אחה\"צ|אחרי הצהריים|בערב)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 5) {\n return 'לפנות בוקר';\n } else if (hour < 10) {\n return 'בבוקר';\n } else if (hour < 12) {\n return isLower ? 'לפנה\"צ' : 'לפני הצהריים';\n } else if (hour < 18) {\n return isLower ? 'אחה\"צ' : 'אחרי הצהריים';\n } else {\n return 'בערב';\n }\n },\n});\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-my-account\");\n\t\t}\n\n\t\texport default Async(load);\n\t","import { ApolloLink } from './ApolloLink';\n\nexport const concat = ApolloLink.concat;\n","import { FieldNode } from 'graphql';\n\nimport {\n Reference,\n StoreObject,\n StoreValue,\n isReference,\n} from '../../../utilities';\n\nimport { StorageType } from '../../inmemory/policies';\n\n// The Readonly type only really works for object types, since it marks\n// all of the object's properties as readonly, but there are many cases when\n// a generic type parameter like TExisting might be a string or some other\n// primitive type, in which case we need to avoid wrapping it with Readonly.\n// SafeReadonly collapses to just string, which makes string\n// assignable to SafeReadonly, whereas string is not assignable to\n// Readonly, somewhat surprisingly.\nexport type SafeReadonly = T extends object ? Readonly : T;\n\nexport class MissingFieldError {\n constructor(\n public readonly message: string,\n public readonly path: (string | number)[],\n public readonly query: import('graphql').DocumentNode,\n public readonly clientOnly: boolean,\n public readonly variables?: Record,\n ) {}\n}\n\nexport interface FieldSpecifier {\n typename?: string;\n fieldName: string;\n field?: FieldNode;\n args?: Record;\n variables?: Record;\n}\n\nexport interface ReadFieldOptions extends FieldSpecifier {\n from?: StoreObject | Reference;\n}\n\nexport interface ReadFieldFunction {\n (options: ReadFieldOptions): SafeReadonly | undefined;\n (\n fieldName: string,\n from?: StoreObject | Reference,\n ): SafeReadonly | undefined;\n}\n\nexport type ToReferenceFunction = (\n objOrIdOrRef: StoreObject | string | Reference,\n mergeIntoStore?: boolean,\n) => Reference | undefined;\n\nexport type CanReadFunction = (value: StoreValue) => boolean;\n\nexport type Modifier = (value: T, details: {\n DELETE: any;\n INVALIDATE: any;\n fieldName: string;\n storeFieldName: string;\n readField: ReadFieldFunction;\n canRead: CanReadFunction;\n isReference: typeof isReference;\n toReference: ToReferenceFunction;\n storage: StorageType;\n}) => T;\n\nexport type Modifiers = {\n [fieldName: string]: Modifier;\n};\n","//! moment.js locale configuration\n//! locale : Arabic (Morocco) [ar-ma]\n//! author : ElFadili Yassine : https://github.com/ElFadiliY\n//! author : Abdel Said : https://github.com/abdelsaid\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ar-ma', {\n months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n monthsShort: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-set-password\");\n\t\t}\n\n\t\texport default Async(load);\n\t","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-home\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Arabic (Saudi Arabia) [ar-sa]\n//! author : Suhail Alkowaileet : https://github.com/xsoh\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '١',\n 2: '٢',\n 3: '٣',\n 4: '٤',\n 5: '٥',\n 6: '٦',\n 7: '٧',\n 8: '٨',\n 9: '٩',\n 0: '٠',\n },\n numberMap = {\n '١': '1',\n '٢': '2',\n '٣': '3',\n '٤': '4',\n '٥': '5',\n '٦': '6',\n '٧': '7',\n '٨': '8',\n '٩': '9',\n '٠': '0',\n };\n\nexport default moment.defineLocale('ar-sa', {\n months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n monthsShort: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(\n '_'\n ),\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم على الساعة] LT',\n nextDay: '[غدا على الساعة] LT',\n nextWeek: 'dddd [على الساعة] LT',\n lastDay: '[أمس على الساعة] LT',\n lastWeek: 'dddd [على الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'في %s',\n past: 'منذ %s',\n s: 'ثوان',\n ss: '%d ثانية',\n m: 'دقيقة',\n mm: '%d دقائق',\n h: 'ساعة',\n hh: '%d ساعات',\n d: 'يوم',\n dd: '%d أيام',\n M: 'شهر',\n MM: '%d أشهر',\n y: 'سنة',\n yy: '%d سنوات',\n },\n preparse: function (string) {\n return string\n .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {\n return numberMap[match];\n })\n .replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Nynorsk [nn]\n//! authors : https://github.com/mechuwind\n//! Stephen Ramthun : https://github.com/stephenramthun\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('nn', {\n months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'),\n weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[I dag klokka] LT',\n nextDay: '[I morgon klokka] LT',\n nextWeek: 'dddd [klokka] LT',\n lastDay: '[I går klokka] LT',\n lastWeek: '[Føregåande] dddd [klokka] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s sidan',\n s: 'nokre sekund',\n ss: '%d sekund',\n m: 'eit minutt',\n mm: '%d minutt',\n h: 'ein time',\n hh: '%d timar',\n d: 'ein dag',\n dd: '%d dagar',\n w: 'ei veke',\n ww: '%d veker',\n M: 'ein månad',\n MM: '%d månader',\n y: 'eit år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Estonian [et]\n//! author : Henry Kehlmann : https://github.com/madhenry\n//! improvements : Illimar Tambek : https://github.com/ragulka\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'],\n ss: [number + 'sekundi', number + 'sekundit'],\n m: ['ühe minuti', 'üks minut'],\n mm: [number + ' minuti', number + ' minutit'],\n h: ['ühe tunni', 'tund aega', 'üks tund'],\n hh: [number + ' tunni', number + ' tundi'],\n d: ['ühe päeva', 'üks päev'],\n M: ['kuu aja', 'kuu aega', 'üks kuu'],\n MM: [number + ' kuu', number + ' kuud'],\n y: ['ühe aasta', 'aasta', 'üks aasta'],\n yy: [number + ' aasta', number + ' aastat'],\n };\n if (withoutSuffix) {\n return format[key][2] ? format[key][2] : format[key][1];\n }\n return isFuture ? format[key][0] : format[key][1];\n}\n\nexport default moment.defineLocale('et', {\n months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split(\n '_'\n ),\n monthsShort: 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split(\n '_'\n ),\n weekdays: 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split(\n '_'\n ),\n weekdaysShort: 'P_E_T_K_N_R_L'.split('_'),\n weekdaysMin: 'P_E_T_K_N_R_L'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[Täna,] LT',\n nextDay: '[Homme,] LT',\n nextWeek: '[Järgmine] dddd LT',\n lastDay: '[Eile,] LT',\n lastWeek: '[Eelmine] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s pärast',\n past: '%s tagasi',\n s: processRelativeTime,\n ss: processRelativeTime,\n m: processRelativeTime,\n mm: processRelativeTime,\n h: processRelativeTime,\n hh: processRelativeTime,\n d: processRelativeTime,\n dd: '%d päeva',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Faroese [fo]\n//! author : Ragnar Johannesen : https://github.com/ragnar123\n//! author : Kristian Sakarisson : https://github.com/sakarisson\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('fo', {\n months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n weekdays: 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'),\n weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D. MMMM, YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Í dag kl.] LT',\n nextDay: '[Í morgin kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[Í gjár kl.] LT',\n lastWeek: '[síðstu] dddd [kl] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'um %s',\n past: '%s síðani',\n s: 'fá sekund',\n ss: '%d sekundir',\n m: 'ein minuttur',\n mm: '%d minuttir',\n h: 'ein tími',\n hh: '%d tímar',\n d: 'ein dagur',\n dd: '%d dagar',\n M: 'ein mánaður',\n MM: '%d mánaðir',\n y: 'eitt ár',\n yy: '%d ár',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import React from 'react';\nimport { invariant } from 'ts-invariant';\n\nimport { ApolloClient } from '../../core';\nimport { getApolloContext } from '../context';\n\nexport function useApolloClient(): ApolloClient {\n const { client } = React.useContext(getApolloContext());\n invariant(\n client,\n 'No Apollo Client instance can be found. Please ensure that you ' +\n 'have called `ApolloProvider` higher up in your tree.'\n );\n return client!;\n}\n","import { useContext, useEffect, useReducer, useRef } from 'react';\nimport { DocumentNode } from 'graphql';\nimport { TypedDocumentNode } from '@graphql-typed-document-node/core';\n\nimport {\n QueryHookOptions,\n QueryDataOptions,\n QueryTuple,\n QueryResult,\n} from '../../types/types';\nimport { QueryData } from '../../data';\nimport { useDeepMemo } from './useDeepMemo';\nimport { OperationVariables } from '../../../core';\nimport { getApolloContext } from '../../context';\n\nexport function useBaseQuery(\n query: DocumentNode | TypedDocumentNode,\n options?: QueryHookOptions,\n lazy = false\n) {\n const context = useContext(getApolloContext());\n const [tick, forceUpdate] = useReducer(x => x + 1, 0);\n const updatedOptions = options ? { ...options, query } : { query };\n\n const queryDataRef = useRef>();\n const queryData =\n queryDataRef.current ||\n new QueryData({\n options: updatedOptions as QueryDataOptions,\n context,\n onNewData() {\n if (!queryData.ssrInitiated()) {\n // When new data is received from the `QueryData` object, we want to\n // force a re-render to make sure the new data is displayed. We can't\n // force that re-render if we're already rendering however so to be\n // safe we'll trigger the re-render in a microtask.\n Promise.resolve().then(forceUpdate);\n } else {\n // If we're rendering on the server side we can force an update at\n // any point.\n forceUpdate();\n }\n }\n });\n\n queryData.setOptions(updatedOptions);\n queryData.context = context;\n\n // SSR won't trigger the effect hook below that stores the current\n // `QueryData` instance for future renders, so we'll handle that here if\n // the current render is happening on the server side.\n if (queryData.ssrInitiated() && !queryDataRef.current) {\n queryDataRef.current = queryData;\n }\n\n // `onError` and `onCompleted` callback functions will not always have a\n // stable identity, so we'll exclude them from the memoization key to\n // prevent `afterExecute` from being triggered un-necessarily.\n const memo = {\n options: {\n ...updatedOptions,\n onError: undefined,\n onCompleted: undefined\n } as QueryHookOptions,\n context,\n tick\n };\n\n const result = useDeepMemo(\n () => (lazy ? queryData.executeLazy() : queryData.execute()),\n memo\n );\n\n const queryResult = lazy\n ? (result as QueryTuple)[1]\n : (result as QueryResult);\n\n useEffect(() => {\n // We only need one instance of the `QueryData` class, so we'll store it\n // as a ref to make it available on subsequent renders.\n if (!queryDataRef.current) {\n queryDataRef.current = queryData;\n }\n\n return () => queryData.cleanup();\n }, []);\n\n useEffect(() => queryData.afterExecute({ lazy }), [\n queryResult.loading,\n queryResult.networkStatus,\n queryResult.error,\n queryResult.data,\n ]);\n\n return result;\n}\n","import { useRef } from 'react';\nimport { equal } from '@wry/equality';\n\n/**\n * Memoize a result using deep equality. This hook has two advantages over\n * React.useMemo: it uses deep equality to compare memo keys, and it guarantees\n * that the memo function will only be called if the keys are unequal.\n * React.useMemo cannot be relied on to do this, since it is only a performance\n * optimization (see https://reactjs.org/docs/hooks-reference.html#usememo).\n */\nexport function useDeepMemo(\n memoFn: () => TValue,\n key: TKey\n): TValue {\n const ref = useRef<{ key: TKey; value: TValue }>();\n\n if (!ref.current || !equal(key, ref.current.key)) {\n ref.current = { key, value: memoFn() };\n }\n\n return ref.current.value;\n}\n","import { DocumentNode } from 'graphql';\nimport { TypedDocumentNode } from '@graphql-typed-document-node/core';\n\nimport { LazyQueryHookOptions, QueryTuple } from '../types/types';\nimport { useBaseQuery } from './utils/useBaseQuery';\nimport { OperationVariables } from '../../core';\n\nexport function useLazyQuery(\n query: DocumentNode | TypedDocumentNode,\n options?: LazyQueryHookOptions\n) {\n return useBaseQuery(query, options, true) as QueryTuple<\n TData,\n TVariables\n >;\n}\n","import { useContext, useState, useRef, useEffect } from 'react';\nimport { DocumentNode } from 'graphql';\nimport { TypedDocumentNode } from '@graphql-typed-document-node/core';\n\nimport { MutationHookOptions, MutationTuple } from '../types/types';\nimport { MutationData } from '../data';\nimport { OperationVariables } from '../../core';\nimport { getApolloContext } from '../context';\n\nexport function useMutation(\n mutation: DocumentNode | TypedDocumentNode,\n options?: MutationHookOptions\n): MutationTuple {\n const context = useContext(getApolloContext());\n const [result, setResult] = useState({ called: false, loading: false });\n const updatedOptions = options ? { ...options, mutation } : { mutation };\n\n const mutationDataRef = useRef>();\n function getMutationDataRef() {\n if (!mutationDataRef.current) {\n mutationDataRef.current = new MutationData({\n options: updatedOptions,\n context,\n result,\n setResult\n });\n }\n return mutationDataRef.current;\n }\n\n const mutationData = getMutationDataRef();\n mutationData.setOptions(updatedOptions);\n mutationData.context = context;\n\n useEffect(() => mutationData.afterExecute());\n\n return mutationData.execute(result);\n}\n","import { DocumentNode } from 'graphql';\nimport { TypedDocumentNode } from '@graphql-typed-document-node/core';\n\nimport { QueryHookOptions, QueryResult } from '../types/types';\nimport { useBaseQuery } from './utils/useBaseQuery';\nimport { OperationVariables } from '../../core';\n\nexport function useQuery(\n query: DocumentNode | TypedDocumentNode,\n options?: QueryHookOptions\n) {\n return useBaseQuery(query, options, false) as QueryResult<\n TData,\n TVariables\n >;\n}\n","import { DocumentNode } from 'graphql';\nimport { equal } from '@wry/equality';\nimport { invariant } from 'ts-invariant';\n\nimport { ApolloClient } from '../../core';\nimport { DocumentType, parser, operationName } from '../parser';\nimport { CommonOptions } from '../types/types';\n\nexport abstract class OperationData {\n public isMounted: boolean = false;\n public previousOptions: CommonOptions = {} as CommonOptions<\n TOptions\n >;\n public context: any = {};\n public client: ApolloClient;\n\n private options: CommonOptions = {} as CommonOptions;\n\n constructor(options?: CommonOptions, context?: any) {\n this.options = options || ({} as CommonOptions);\n this.context = context || {};\n }\n\n public getOptions(): CommonOptions {\n return this.options;\n }\n\n public setOptions(\n newOptions: CommonOptions,\n storePrevious: boolean = false\n ) {\n if (storePrevious && !equal(this.options, newOptions)) {\n this.previousOptions = this.options;\n }\n this.options = newOptions;\n }\n\n public abstract execute(...args: any): any;\n public abstract afterExecute(...args: any): void | (() => void);\n public abstract cleanup(): void;\n\n protected unmount() {\n this.isMounted = false;\n }\n\n protected refreshClient() {\n const client =\n (this.options && this.options.client) ||\n (this.context && this.context.client);\n\n invariant(\n !!client,\n '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 );\n\n let isNew = false;\n if (client !== this.client) {\n isNew = true;\n this.client = client;\n this.cleanup();\n }\n return {\n client: this.client as ApolloClient,\n isNew\n };\n }\n\n protected verifyDocumentType(document: DocumentNode, type: DocumentType) {\n const operation = parser(document);\n const requiredOperationName = operationName(type);\n const usedOperationName = operationName(operation.type);\n invariant(\n operation.type === type,\n `Running a ${requiredOperationName} requires a graphql ` +\n `${requiredOperationName}, but a ${usedOperationName} was used instead.`\n );\n }\n}\n","import { equal } from '@wry/equality';\n\nimport { OperationData } from './OperationData';\nimport {\n SubscriptionCurrentObservable,\n SubscriptionDataOptions,\n SubscriptionResult\n} from '../types/types';\n\nexport class SubscriptionData<\n TData = any,\n TVariables = any\n> extends OperationData> {\n private setResult: any;\n private currentObservable: SubscriptionCurrentObservable = {};\n\n constructor({\n options,\n context,\n setResult\n }: {\n options: SubscriptionDataOptions;\n context: any;\n setResult: any;\n }) {\n super(options, context);\n this.setResult = setResult;\n this.initialize(options);\n }\n\n public execute(result: SubscriptionResult) {\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\n let currentResult = result;\n if (this.refreshClient().isNew) {\n currentResult = this.getLoadingResult();\n }\n\n let { shouldResubscribe } = this.getOptions();\n if (typeof shouldResubscribe === 'function') {\n shouldResubscribe = !!shouldResubscribe(this.getOptions());\n }\n\n if (\n 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 ) {\n this.cleanup();\n currentResult = this.getLoadingResult();\n }\n\n this.initialize(this.getOptions());\n this.startSubscription();\n\n this.previousOptions = this.getOptions();\n return { ...currentResult, variables: this.getOptions().variables };\n }\n\n public afterExecute() {\n this.isMounted = true;\n }\n\n public cleanup() {\n this.endSubscription();\n delete this.currentObservable.query;\n }\n\n private initialize(options: SubscriptionDataOptions) {\n if (this.currentObservable.query || this.getOptions().skip === true) return;\n this.currentObservable.query = this.refreshClient().client.subscribe({\n query: options.subscription,\n variables: options.variables,\n fetchPolicy: options.fetchPolicy\n });\n }\n\n private startSubscription() {\n if (this.currentObservable.subscription) return;\n this.currentObservable.subscription = this.currentObservable.query!.subscribe(\n {\n next: this.updateCurrentData.bind(this),\n error: this.updateError.bind(this),\n complete: this.completeSubscription.bind(this)\n }\n );\n }\n\n private getLoadingResult() {\n return {\n loading: true,\n error: undefined,\n data: undefined\n } as SubscriptionResult;\n }\n\n private updateResult(result: SubscriptionResult) {\n if (this.isMounted) {\n this.setResult(result);\n }\n }\n\n private updateCurrentData(result: SubscriptionResult) {\n const { onSubscriptionData } = this.getOptions();\n\n this.updateResult({\n data: result.data,\n loading: false,\n error: undefined\n });\n\n if (onSubscriptionData) {\n onSubscriptionData({\n client: this.refreshClient().client,\n subscriptionData: result\n });\n }\n }\n\n private updateError(error: any) {\n this.updateResult({\n error,\n loading: false\n });\n }\n\n private completeSubscription() {\n const { onSubscriptionComplete } = this.getOptions();\n if (onSubscriptionComplete) onSubscriptionComplete();\n this.endSubscription();\n }\n\n private endSubscription() {\n if (this.currentObservable.subscription) {\n this.currentObservable.subscription.unsubscribe();\n delete this.currentObservable.subscription;\n }\n }\n}\n","import { equal } from '@wry/equality';\n\nimport { DocumentType } from '../parser';\nimport { ApolloError } from '../../errors';\nimport {\n MutationDataOptions,\n MutationTuple,\n MutationFunctionOptions,\n MutationResult,\n} from '../types/types';\nimport { OperationData } from './OperationData';\nimport { OperationVariables, MutationOptions, mergeOptions } from '../../core';\nimport { FetchResult } from '../../link/core';\n\ntype MutationResultWithoutClient = Omit, 'client'>;\n\nexport class MutationData<\n TData = any,\n TVariables = OperationVariables\n> extends OperationData {\n private mostRecentMutationId: number;\n private result: MutationResultWithoutClient;\n private previousResult?: MutationResultWithoutClient;\n private setResult: (result: MutationResultWithoutClient) => any;\n\n constructor({\n options,\n context,\n result,\n setResult\n }: {\n options: MutationDataOptions;\n context: any;\n result: MutationResultWithoutClient;\n setResult: (result: MutationResultWithoutClient) => any;\n }) {\n super(options, context);\n this.verifyDocumentType(options.mutation, DocumentType.Mutation);\n this.result = result;\n this.setResult = setResult;\n this.mostRecentMutationId = 0;\n }\n\n public execute(result: MutationResultWithoutClient): MutationTuple {\n this.isMounted = true;\n this.verifyDocumentType(this.getOptions().mutation, DocumentType.Mutation);\n return [\n this.runMutation,\n { ...result, client: this.refreshClient().client }\n ] as MutationTuple;\n }\n\n public afterExecute() {\n this.isMounted = true;\n return this.unmount.bind(this);\n }\n\n public cleanup() {\n // No cleanup required.\n }\n\n private runMutation = (\n mutationFunctionOptions: MutationFunctionOptions<\n TData,\n TVariables\n > = {} as MutationFunctionOptions\n ) => {\n this.onMutationStart();\n const mutationId = this.generateNewMutationId();\n\n return this.mutate(mutationFunctionOptions)\n .then((response: FetchResult) => {\n this.onMutationCompleted(response, mutationId);\n return response;\n })\n .catch((error: ApolloError) => {\n this.onMutationError(error, mutationId);\n if (!this.getOptions().onError) throw error;\n });\n };\n\n private mutate(\n options: MutationFunctionOptions\n ) {\n return this.refreshClient().client.mutate(\n mergeOptions(\n this.getOptions(),\n options as MutationOptions,\n ),\n );\n }\n\n private onMutationStart() {\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\n private onMutationCompleted(\n response: FetchResult,\n mutationId: number\n ) {\n const { onCompleted, ignoreResults } = this.getOptions();\n\n const { data, errors } = response;\n const error =\n errors && errors.length > 0\n ? new ApolloError({ graphQLErrors: errors })\n : undefined;\n\n const callOncomplete = () =>\n onCompleted ? onCompleted(data as TData) : null;\n\n if (this.isMostRecentMutation(mutationId) && !ignoreResults) {\n this.updateResult({\n called: true,\n loading: false,\n data,\n error\n });\n }\n callOncomplete();\n }\n\n private onMutationError(error: ApolloError, mutationId: number) {\n const { onError } = this.getOptions();\n\n if (this.isMostRecentMutation(mutationId)) {\n this.updateResult({\n loading: false,\n error,\n data: undefined,\n called: true\n });\n }\n\n if (onError) {\n onError(error);\n }\n }\n\n private generateNewMutationId(): number {\n return ++this.mostRecentMutationId;\n }\n\n private isMostRecentMutation(mutationId: number) {\n return this.mostRecentMutationId === mutationId;\n }\n\n private updateResult(result: MutationResultWithoutClient) {\n if (\n this.isMounted &&\n (!this.previousResult || !equal(this.previousResult, result))\n ) {\n this.setResult(result);\n this.previousResult = result;\n }\n }\n}\n","import { equal } from '@wry/equality';\n\nimport { ApolloError } from '../../errors';\n\nimport {\n ApolloClient,\n NetworkStatus,\n FetchMoreQueryOptions,\n SubscribeToMoreOptions,\n ObservableQuery,\n FetchMoreOptions,\n UpdateQueryOptions,\n DocumentNode,\n TypedDocumentNode\n} from '../../core';\n\nimport {\n ObservableSubscription\n} from '../../utilities';\n\nimport { DocumentType } from '../parser';\nimport {\n QueryResult,\n QueryDataOptions,\n QueryTuple,\n QueryLazyOptions,\n ObservableQueryFields,\n} from '../types/types';\nimport { OperationData } from './OperationData';\n\nexport class QueryData extends OperationData {\n public onNewData: () => void;\n private currentObservable?: ObservableQuery;\n private currentSubscription?: ObservableSubscription;\n private runLazy: boolean = false;\n private lazyOptions?: QueryLazyOptions;\n private previous: {\n client?: ApolloClient;\n query?: DocumentNode | TypedDocumentNode;\n observableQueryOptions?: {};\n result?: QueryResult;\n loading?: boolean;\n options?: QueryDataOptions;\n error?: ApolloError;\n } = Object.create(null);\n\n constructor({\n options,\n context,\n onNewData\n }: {\n options: QueryDataOptions;\n context: any;\n onNewData: () => void;\n }) {\n super(options, context);\n this.onNewData = onNewData;\n }\n\n public execute(): QueryResult {\n this.refreshClient();\n\n const { skip, query } = this.getOptions();\n if (skip || query !== this.previous.query) {\n this.removeQuerySubscription();\n this.removeObservable(!skip);\n this.previous.query = query;\n }\n\n this.updateObservableQuery();\n\n if (this.isMounted) this.startQuerySubscription();\n\n return this.getExecuteSsrResult() || this.getExecuteResult();\n }\n\n public executeLazy(): QueryTuple {\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\n // For server-side rendering\n public fetchData(): Promise | boolean {\n const options = this.getOptions();\n if (options.skip || options.ssr === false) return false;\n return new Promise(resolve => this.startQuerySubscription(resolve));\n }\n\n public afterExecute({ lazy = false }: { lazy?: boolean } = {}) {\n this.isMounted = true;\n\n if (!lazy || this.runLazy) {\n this.handleErrorOrCompleted();\n }\n\n this.previousOptions = this.getOptions();\n return this.unmount.bind(this);\n }\n\n public cleanup() {\n this.removeQuerySubscription();\n this.removeObservable(true);\n delete this.previous.result;\n }\n\n public getOptions() {\n const options = super.getOptions();\n\n if (this.lazyOptions) {\n options.variables = {\n ...options.variables,\n ...this.lazyOptions.variables\n };\n options.context = {\n ...options.context,\n ...this.lazyOptions.context\n };\n }\n\n // skip is not supported when using lazy query execution.\n if (this.runLazy) {\n delete options.skip;\n }\n\n return options;\n }\n\n public ssrInitiated() {\n return this.context && this.context.renderPromises;\n }\n\n private runLazyQuery = (options?: QueryLazyOptions) => {\n this.cleanup();\n this.runLazy = true;\n this.lazyOptions = options;\n this.onNewData();\n };\n\n private getExecuteResult(): QueryResult {\n const result = this.getQueryResult();\n this.startQuerySubscription();\n return result;\n };\n\n private getExecuteSsrResult() {\n const { ssr, skip } = this.getOptions();\n const ssrDisabled = ssr === false;\n const fetchDisabled = this.refreshClient().client.disableNetworkFetches;\n\n const ssrLoading = {\n loading: true,\n networkStatus: NetworkStatus.loading,\n called: true,\n data: undefined,\n stale: false,\n client: this.client,\n ...this.observableQueryFields(),\n } as QueryResult;\n\n // If SSR has been explicitly disabled, and this function has been called\n // on the server side, return the default loading state.\n if (ssrDisabled && (this.ssrInitiated() || fetchDisabled)) {\n this.previous.result = ssrLoading;\n return ssrLoading;\n }\n\n let result;\n if (this.ssrInitiated()) {\n if (skip) {\n result = this.getQueryResult();\n } else {\n result =\n this.context.renderPromises!.addQueryPromise(\n this,\n this.getQueryResult\n ) || ssrLoading;\n };\n }\n\n return result;\n }\n\n private prepareObservableQueryOptions() {\n const options = this.getOptions();\n this.verifyDocumentType(options.query, DocumentType.Query);\n const displayName = options.displayName || 'Query';\n\n // Set the fetchPolicy to cache-first for network-only and cache-and-network\n // fetches for server side renders.\n if (\n this.ssrInitiated() &&\n (options.fetchPolicy === 'network-only' ||\n options.fetchPolicy === 'cache-and-network')\n ) {\n options.fetchPolicy = 'cache-first';\n }\n\n return {\n ...options,\n displayName,\n context: options.context,\n };\n }\n\n private initializeObservableQuery() {\n // See if there is an existing observable that was used to fetch the same\n // data and if so, use it instead since it will contain the proper queryId\n // to fetch the result set. This is used during SSR.\n if (this.ssrInitiated()) {\n this.currentObservable = this.context!.renderPromises!.getSSRObservable(\n this.getOptions()\n );\n }\n\n if (!this.currentObservable) {\n const observableQueryOptions = this.prepareObservableQueryOptions();\n\n this.previous.observableQueryOptions = {\n ...observableQueryOptions,\n children: null\n };\n this.currentObservable = this.refreshClient().client.watchQuery({\n ...observableQueryOptions\n });\n\n if (this.ssrInitiated()) {\n this.context!.renderPromises!.registerSSRObservable(\n this.currentObservable,\n observableQueryOptions\n );\n }\n }\n }\n\n private updateObservableQuery() {\n // If we skipped initially, we may not have yet created the observable\n if (!this.currentObservable) {\n this.initializeObservableQuery();\n return;\n }\n\n if (this.getOptions().skip) return;\n\n const newObservableQueryOptions = {\n ...this.prepareObservableQueryOptions(),\n children: null\n };\n\n if (\n !equal(\n newObservableQueryOptions,\n this.previous.observableQueryOptions\n )\n ) {\n this.previous.observableQueryOptions = newObservableQueryOptions;\n this.currentObservable\n .setOptions(newObservableQueryOptions)\n // The error will be passed to the child container, so we don't\n // need to log it here. We could conceivably log something if\n // an option was set. OTOH we don't log errors w/ the original\n // query. See https://github.com/apollostack/react-apollo/issues/404\n .catch(() => {});\n }\n }\n\n // Setup a subscription to watch for Apollo Client `ObservableQuery` changes.\n // When new data is received, and it doesn't match the data that was used\n // during the last `QueryData.execute` call (and ultimately the last query\n // component render), trigger the `onNewData` callback. If not specified,\n // `onNewData` will fallback to the default `QueryData.onNewData` function\n // (which usually leads to a query component re-render).\n private startQuerySubscription(onNewData: () => void = this.onNewData) {\n if (this.currentSubscription || this.getOptions().skip) return;\n\n this.currentSubscription = this.currentObservable!.subscribe({\n next: ({ loading, networkStatus, data }) => {\n const previousResult = this.previous.result;\n\n // Make sure we're not attempting to re-render similar results\n if (\n previousResult &&\n previousResult.loading === loading &&\n previousResult.networkStatus === networkStatus &&\n equal(previousResult.data, data)\n ) {\n return;\n }\n\n onNewData();\n },\n error: error => {\n this.resubscribeToQuery();\n if (!error.hasOwnProperty('graphQLErrors')) throw error;\n\n const previousResult = this.previous.result;\n if (\n (previousResult && previousResult.loading) ||\n !equal(error, this.previous.error)\n ) {\n this.previous.error = error;\n onNewData();\n }\n }\n });\n }\n\n private resubscribeToQuery() {\n this.removeQuerySubscription();\n\n // Unfortunately, if `lastError` is set in the current\n // `observableQuery` when the subscription is re-created,\n // the subscription will immediately receive the error, which will\n // cause it to terminate again. To avoid this, we first clear\n // the last error/result from the `observableQuery` before re-starting\n // the subscription, and restore it afterwards (so the subscription\n // has a chance to stay open).\n const { currentObservable } = this;\n if (currentObservable) {\n const lastError = currentObservable.getLastError();\n const lastResult = currentObservable.getLastResult();\n currentObservable.resetLastResults();\n this.startQuerySubscription();\n Object.assign(currentObservable, {\n lastError,\n lastResult\n });\n }\n }\n\n private getQueryResult = (): QueryResult => {\n let result = this.observableQueryFields() as QueryResult;\n const options = this.getOptions();\n\n // When skipping a query (ie. we're not querying for data but still want\n // to render children), make sure the `data` is cleared out and\n // `loading` is set to `false` (since we aren't loading anything).\n //\n // NOTE: We no longer think this is the correct behavior. Skipping should\n // not automatically set `data` to `undefined`, but instead leave the\n // previous data in place. In other words, skipping should not mandate\n // that previously received data is all of a sudden removed. Unfortunately,\n // changing this is breaking, so we'll have to wait until Apollo Client\n // 4.0 to address this.\n if (options.skip) {\n result = {\n ...result,\n data: undefined,\n error: undefined,\n loading: false,\n networkStatus: NetworkStatus.ready,\n called: true,\n };\n } else if (this.currentObservable) {\n // Fetch the current result (if any) from the store.\n const currentResult = this.currentObservable.getCurrentResult();\n const { data, loading, partial, networkStatus, errors } = currentResult;\n let { error } = currentResult;\n\n // Until a set naming convention for networkError and graphQLErrors is\n // decided upon, we map errors (graphQLErrors) to the error options.\n if (errors && errors.length > 0) {\n error = new ApolloError({ graphQLErrors: errors });\n }\n\n result = {\n ...result,\n data,\n loading,\n networkStatus,\n error,\n called: true\n };\n\n if (loading) {\n // Fall through without modifying result...\n } else if (error) {\n Object.assign(result, {\n data: (this.currentObservable.getLastResult() || ({} as any))\n .data\n });\n } else {\n const { fetchPolicy } = this.currentObservable.options;\n const { partialRefetch } = options;\n if (\n partialRefetch &&\n partial &&\n (!data || Object.keys(data).length === 0) &&\n fetchPolicy !== 'cache-only'\n ) {\n // When a `Query` component is mounted, and a mutation is executed\n // that returns the same ID as the mounted `Query`, but has less\n // fields in its result, Apollo Client's `QueryManager` returns the\n // data as `undefined` since a hit can't be found in the cache.\n // This can lead to application errors when the UI elements rendered by\n // the original `Query` component are expecting certain data values to\n // exist, and they're all of a sudden stripped away. To help avoid\n // this we'll attempt to refetch the `Query` data.\n Object.assign(result, {\n loading: true,\n networkStatus: NetworkStatus.loading\n });\n result.refetch();\n return result;\n }\n }\n }\n\n result.client = this.client;\n // Store options as this.previousOptions.\n this.setOptions(options, true);\n\n const previousResult = this.previous.result;\n\n this.previous.loading =\n previousResult && previousResult.loading || false;\n\n // Ensure the returned result contains previousData as a separate\n // property, to give developers the flexibility of leveraging outdated\n // data while new data is loading from the network. Falling back to\n // previousResult.previousData when previousResult.data is falsy here\n // allows result.previousData to persist across multiple results.\n result.previousData = previousResult &&\n (previousResult.data || previousResult.previousData);\n\n this.previous.result = result;\n\n // Any query errors that exist are now available in `result`, so we'll\n // remove the original errors from the `ObservableQuery` query store to\n // make sure they aren't re-displayed on subsequent (potentially error\n // free) requests/responses.\n this.currentObservable && this.currentObservable.resetQueryStoreErrors();\n\n return result;\n }\n\n private handleErrorOrCompleted() {\n if (!this.currentObservable || !this.previous.result) return;\n\n const { data, loading, error } = this.previous.result;\n\n if (!loading) {\n const {\n query,\n variables,\n onCompleted,\n onError,\n skip\n } = this.getOptions();\n\n // No changes, so we won't call onError/onCompleted.\n if (\n this.previousOptions &&\n !this.previous.loading &&\n equal(this.previousOptions.query, query) &&\n equal(this.previousOptions.variables, variables)\n ) {\n return;\n }\n\n if (onCompleted && !error && !skip) {\n onCompleted(data);\n } else if (onError && error) {\n onError(error);\n }\n }\n }\n\n private removeQuerySubscription() {\n if (this.currentSubscription) {\n this.currentSubscription.unsubscribe();\n delete this.currentSubscription;\n }\n }\n\n private removeObservable(andDelete: boolean) {\n if (this.currentObservable) {\n this.currentObservable[\"tearDownQuery\"]();\n if (andDelete) {\n delete this.currentObservable;\n }\n }\n }\n\n private obsRefetch = (variables?: Partial) =>\n this.currentObservable?.refetch(variables);\n\n private obsFetchMore = (\n fetchMoreOptions: FetchMoreQueryOptions &\n FetchMoreOptions\n ) => this.currentObservable!.fetchMore(fetchMoreOptions);\n\n private obsUpdateQuery = (\n mapFn: (\n previousQueryResult: TData,\n options: UpdateQueryOptions\n ) => TData\n ) => this.currentObservable!.updateQuery(mapFn);\n\n private obsStartPolling = (pollInterval: number) => {\n this.currentObservable?.startPolling(pollInterval);\n };\n\n private obsStopPolling = () => {\n this.currentObservable?.stopPolling();\n };\n\n private obsSubscribeToMore = <\n TSubscriptionData = TData,\n TSubscriptionVariables = TVariables\n >(\n options: SubscribeToMoreOptions<\n TData,\n TSubscriptionVariables,\n TSubscriptionData\n >\n ) => this.currentObservable!.subscribeToMore(options);\n\n private observableQueryFields() {\n return {\n variables: this.currentObservable?.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 } as ObservableQueryFields;\n }\n}\n","import { ApolloLink, Operation, GraphQLRequest, NextLink } from '../core';\nimport { Observable } from '../../utilities';\n\nexport type ContextSetter = (\n operation: GraphQLRequest,\n prevContext: any,\n) => Promise | any;\n\nexport function setContext(setter: ContextSetter): ApolloLink {\n return new ApolloLink((operation: Operation, forward: NextLink) => {\n const { ...request } = operation;\n\n return new Observable(observer => {\n let handle: ZenObservable.Subscription;\n Promise.resolve(request)\n .then(req => setter(req, operation.getContext()))\n .then(operation.setContext)\n .then(() => {\n handle = forward(operation).subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer),\n });\n })\n .catch(observer.error.bind(observer));\n\n return () => {\n if (handle) handle.unsubscribe();\n };\n });\n });\n}\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport React, { useState, useEffect, useRef, PropsWithChildren, useMemo } from \"react\";\r\nimport {\r\n IPublicClientApplication,\r\n EventType,\r\n EventMessage,\r\n EventMessageUtils,\r\n InteractionStatus,\r\n Logger,\r\n WrapperSKU,\r\n AccountInfo\r\n} from \"@azure/msal-browser\";\r\nimport { MsalContext, IMsalContext } from \"./MsalContext\";\r\nimport { accountArraysAreEqual } from \"./utils/utilities\";\r\nimport { name as SKU, version } from \"./packageMetadata\";\r\n\r\nexport type MsalProviderProps = PropsWithChildren<{\r\n instance: IPublicClientApplication;\r\n}>;\r\n\r\nexport function MsalProvider({instance, children}: MsalProviderProps): React.ReactElement {\r\n useEffect(() => {\r\n instance.initializeWrapperLibrary(WrapperSKU.React, version);\r\n }, [instance]);\r\n // Create a logger instance for msal-react with the same options as PublicClientApplication\r\n const logger: Logger = useMemo(() => {\r\n return instance.getLogger().clone(SKU, version);\r\n }, [instance]);\r\n\r\n // State hook to store accounts\r\n const [accounts, setAccounts] = useState([]);\r\n // State hook to store in progress value\r\n const [inProgress, setInProgress] = useState(InteractionStatus.Startup);\r\n // Mutable object used in the event callback\r\n const inProgressRef = useRef(inProgress);\r\n \r\n useEffect(() => {\r\n const callbackId = instance.addEventCallback((message: EventMessage) => {\r\n switch (message.eventType) {\r\n case EventType.LOGIN_SUCCESS:\r\n case EventType.SSO_SILENT_SUCCESS:\r\n case EventType.HANDLE_REDIRECT_END:\r\n case EventType.LOGIN_FAILURE:\r\n case EventType.SSO_SILENT_FAILURE:\r\n case EventType.LOGOUT_END:\r\n case EventType.ACQUIRE_TOKEN_SUCCESS:\r\n case EventType.ACQUIRE_TOKEN_FAILURE:\r\n const currentAccounts = instance.getAllAccounts();\r\n if (!accountArraysAreEqual(currentAccounts, accounts)) {\r\n logger.info(\"MsalProvider - updating account state\");\r\n setAccounts(currentAccounts);\r\n } else {\r\n logger.info(\"MsalProvider - no account changes\");\r\n }\r\n break;\r\n }\r\n });\r\n logger.verbose(`MsalProvider - Registered event callback with id: ${callbackId}`);\r\n\r\n return () => {\r\n // Remove callback when component unmounts or accounts change\r\n if (callbackId) {\r\n logger.verbose(`MsalProvider - Removing event callback ${callbackId}`);\r\n instance.removeEventCallback(callbackId);\r\n }\r\n };\r\n }, [instance, accounts, logger]);\r\n\r\n useEffect(() => {\r\n const callbackId = instance.addEventCallback((message: EventMessage) => {\r\n const status = EventMessageUtils.getInteractionStatusFromEvent(message, inProgressRef.current);\r\n if (status !== null) {\r\n logger.info(`MsalProvider - ${message.eventType} results in setting inProgress from ${inProgressRef.current} to ${status}`);\r\n inProgressRef.current = status;\r\n setInProgress(status);\r\n }\r\n });\r\n logger.verbose(`MsalProvider - Registered event callback with id: ${callbackId}`);\r\n\r\n instance.handleRedirectPromise().catch(() => {\r\n // Errors should be handled by listening to the LOGIN_FAILURE event\r\n return;\r\n });\r\n\r\n return () => {\r\n if (callbackId) {\r\n logger.verbose(`MsalProvider - Removing event callback ${callbackId}`);\r\n instance.removeEventCallback(callbackId);\r\n }\r\n };\r\n }, [instance, logger]);\r\n\r\n const contextValue: IMsalContext = {\r\n instance,\r\n inProgress,\r\n accounts,\r\n logger\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\n","/* eslint-disable header/header */\nexport const name = \"@azure/msal-browser\";\nexport const version = \"2.17.0\";\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { AccountIdentifiers } from \"../types/AccountIdentifiers\";\r\n\r\ntype FaaCFunction = (args: T) => React.ReactNode;\r\n\r\nexport function getChildrenOrFunction(\r\n children: React.ReactNode | FaaCFunction,\r\n args: T\r\n): React.ReactNode {\r\n if (typeof children === \"function\") {\r\n return children(args);\r\n }\r\n return children;\r\n}\r\n\r\n/*\r\n * Utility types\r\n * Reference: https://github.com/piotrwitek/utility-types\r\n */\r\ntype SetDifference = A extends B ? never : A;\r\ntype SetComplement = SetDifference;\r\nexport type Subtract = Pick>;\r\n\r\n/**\r\n * Helper function to determine whether 2 arrays are equal\r\n * Used to avoid unnecessary state updates\r\n * @param arrayA \r\n * @param arrayB \r\n */\r\nexport function accountArraysAreEqual(arrayA: Array, arrayB: Array): boolean {\r\n if (arrayA.length !== arrayB.length) {\r\n return false;\r\n }\r\n\r\n const comparisonArray = [...arrayB];\r\n\r\n return arrayA.every((elementA) => {\r\n const elementB = comparisonArray.shift();\r\n if (!elementA || !elementB) {\r\n return false;\r\n }\r\n\r\n return (elementA.homeAccountId === elementB.homeAccountId) && \r\n (elementA.localAccountId === elementB.localAccountId) &&\r\n (elementA.username === elementB.username);\r\n });\r\n}\r\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { AuthenticationResult, AccountInfo, Logger } from \"@azure/msal-common\";\r\nimport { RedirectRequest } from \"../request/RedirectRequest\";\r\nimport { PopupRequest } from \"../request/PopupRequest\";\r\nimport { SilentRequest } from \"../request/SilentRequest\";\r\nimport { SsoSilentRequest } from \"../request/SsoSilentRequest\";\r\nimport { EndSessionRequest } from \"../request/EndSessionRequest\";\r\nimport { BrowserConfigurationAuthError } from \"../error/BrowserConfigurationAuthError\";\r\nimport { WrapperSKU } from \"../utils/BrowserConstants\";\r\nimport { INavigationClient } from \"../navigation/INavigationClient\";\r\nimport { EndSessionPopupRequest } from \"../request/EndSessionPopupRequest\";\r\nimport { ITokenCache } from \"../cache/ITokenCache\";\r\n\r\nexport interface IPublicClientApplication {\r\n acquireTokenPopup(request: PopupRequest): Promise;\r\n acquireTokenRedirect(request: RedirectRequest): Promise;\r\n acquireTokenSilent(silentRequest: SilentRequest): Promise;\r\n addEventCallback(callback: Function): string | null;\r\n removeEventCallback(callbackId: string): void;\r\n getAccountByHomeId(homeAccountId: string): AccountInfo | null;\r\n getAccountByLocalId(localId: string): AccountInfo | null;\r\n getAccountByUsername(userName: string): AccountInfo | null;\r\n getAllAccounts(): AccountInfo[];\r\n handleRedirectPromise(hash?: string): Promise;\r\n loginPopup(request?: PopupRequest): Promise;\r\n loginRedirect(request?: RedirectRequest): Promise;\r\n logout(logoutRequest?: EndSessionRequest): Promise;\r\n logoutRedirect(logoutRequest?: EndSessionRequest): Promise;\r\n logoutPopup(logoutRequest?: EndSessionPopupRequest): Promise;\r\n ssoSilent(request: SsoSilentRequest): Promise;\r\n getTokenCache(): ITokenCache;\r\n getLogger(): Logger;\r\n setLogger(logger: Logger): void;\r\n setActiveAccount(account: AccountInfo | null): void;\r\n getActiveAccount(): AccountInfo | null;\r\n initializeWrapperLibrary(sku: WrapperSKU, version: string): void;\r\n setNavigationClient(navigationClient: INavigationClient): void;\r\n}\r\n\r\nexport const stubbedPublicClientApplication: IPublicClientApplication = {\r\n acquireTokenPopup: () => {\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\r\n },\r\n acquireTokenRedirect: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\t\r\n acquireTokenSilent: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\t\r\n getAllAccounts: () => {\r\n return [];\t\r\n },\t\r\n getAccountByHomeId: () => {\r\n return null;\r\n },\r\n getAccountByUsername: () => {\t\r\n return null;\t\r\n },\t\r\n getAccountByLocalId: () => {\r\n return null;\r\n },\r\n handleRedirectPromise: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\t\r\n loginPopup: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\t\r\n loginRedirect: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\t\r\n logout: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\t\r\n logoutRedirect: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\r\n logoutPopup: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\r\n ssoSilent: () => {\t\r\n return Promise.reject(BrowserConfigurationAuthError.createStubPcaInstanceCalledError());\t\r\n },\r\n addEventCallback: () => {\r\n return null;\r\n },\r\n removeEventCallback: () => {\r\n return;\r\n },\r\n getTokenCache: () => {\r\n throw BrowserConfigurationAuthError.createStubPcaInstanceCalledError();\r\n },\r\n getLogger: () => {\r\n throw BrowserConfigurationAuthError.createStubPcaInstanceCalledError();\r\n },\r\n setLogger: () => {\r\n return;\r\n },\r\n setActiveAccount: () => {\r\n return;\r\n },\r\n getActiveAccount: () => {\r\n return null;\r\n },\r\n initializeWrapperLibrary: () => {\r\n return;\r\n },\r\n setNavigationClient: () => {\r\n return;\r\n }\r\n};\r\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { AuthenticationResult, AuthError } from \"@azure/msal-common\";\r\nimport { EventType } from \"./EventType\";\r\nimport { InteractionStatus, InteractionType } from \"../utils/BrowserConstants\";\r\nimport { PopupRequest, RedirectRequest, SilentRequest, SsoSilentRequest, EndSessionRequest } from \"..\";\r\n\r\nexport type EventMessage = {\r\n eventType: EventType;\r\n interactionType: InteractionType | null;\r\n payload: EventPayload;\r\n error: EventError;\r\n timestamp: number;\r\n};\r\n\r\nexport type PopupEvent = {\r\n popupWindow: Window;\r\n};\r\n\r\nexport type EventPayload = PopupRequest | RedirectRequest | SilentRequest | SsoSilentRequest | EndSessionRequest | AuthenticationResult | PopupEvent | null;\r\n\r\nexport type EventError = AuthError | Error | null;\r\n\r\nexport type EventCallbackFunction = (message: EventMessage) => void;\r\n\r\nexport class EventMessageUtils {\r\n\r\n /**\r\n * Gets interaction status from event message\r\n * @param message\r\n * @param currentStatus\r\n */\r\n static getInteractionStatusFromEvent(message: EventMessage, currentStatus?: InteractionStatus): InteractionStatus|null {\r\n switch (message.eventType) {\r\n case EventType.LOGIN_START:\r\n return InteractionStatus.Login;\r\n case EventType.SSO_SILENT_START:\r\n return InteractionStatus.SsoSilent;\r\n case EventType.ACQUIRE_TOKEN_START:\r\n if (message.interactionType === InteractionType.Redirect || message.interactionType === InteractionType.Popup) {\r\n return InteractionStatus.AcquireToken;\r\n }\r\n break;\r\n case EventType.HANDLE_REDIRECT_START:\r\n return InteractionStatus.HandleRedirect;\r\n case EventType.LOGOUT_START:\r\n return InteractionStatus.Logout;\r\n case EventType.SSO_SILENT_SUCCESS:\r\n case EventType.SSO_SILENT_FAILURE:\r\n if (currentStatus && currentStatus !== InteractionStatus.SsoSilent) {\r\n // Prevent this event from clearing any status other than ssoSilent\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n case EventType.LOGOUT_END:\r\n if (currentStatus && currentStatus !== InteractionStatus.Logout) {\r\n // Prevent this event from clearing any status other than logout\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n case EventType.HANDLE_REDIRECT_END:\r\n if (currentStatus && currentStatus !== InteractionStatus.HandleRedirect) {\r\n // Prevent this event from clearing any status other than handleRedirect\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n case EventType.LOGIN_SUCCESS:\r\n case EventType.LOGIN_FAILURE:\r\n case EventType.ACQUIRE_TOKEN_SUCCESS:\r\n case EventType.ACQUIRE_TOKEN_FAILURE:\r\n if (message.interactionType === InteractionType.Redirect || message.interactionType === InteractionType.Popup) {\r\n if (currentStatus && currentStatus !== InteractionStatus.Login && currentStatus !== InteractionStatus.AcquireToken) {\r\n // Prevent this event from clearing any status other than login or acquireToken\r\n break;\r\n }\r\n return InteractionStatus.None;\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n return null;\r\n }\r\n}\r\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { IPublicClientApplication, stubbedPublicClientApplication, Logger, InteractionStatus, AccountInfo } from \"@azure/msal-browser\";\r\n\r\nexport interface IMsalContext {\r\n instance: IPublicClientApplication;\r\n inProgress: InteractionStatus;\r\n accounts: AccountInfo[];\r\n logger: Logger;\r\n}\r\n\r\n/*\r\n * Stubbed context implementation\r\n * Only used when there is no provider, which is an unsupported scenario\r\n */\r\nconst defaultMsalContext: IMsalContext = {\r\n instance: stubbedPublicClientApplication,\r\n inProgress: InteractionStatus.None,\r\n accounts: [],\r\n logger: new Logger({})\r\n};\r\n\r\nexport const MsalContext = React.createContext(\r\n defaultMsalContext\r\n);\r\nexport const MsalConsumer = MsalContext.Consumer;\r\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { useContext } from \"react\";\r\nimport { IMsalContext, MsalContext } from \"../MsalContext\";\r\n\r\n/**\r\n * Returns Msal Context values\r\n */\r\nexport const useMsal = (): IMsalContext => useContext(MsalContext);\r\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { exactProp } from '@material-ui/utils';\nimport ThemeContext from '../useTheme/ThemeContext';\nimport useTheme from '../useTheme';\nimport nested from './nested'; // To support composition of theme.\n\nfunction mergeOuterLocalTheme(outerTheme, localTheme) {\n if (typeof localTheme === 'function') {\n var mergedTheme = localTheme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production') {\n if (!mergedTheme) {\n console.error(['Material-UI: You should return an object from your theme function, i.e.', ' ({})} />'].join('\\n'));\n }\n }\n\n return mergedTheme;\n }\n\n return _extends({}, outerTheme, localTheme);\n}\n/**\n * This component takes a `theme` prop.\n * It makes the `theme` available down the React tree thanks to React context.\n * This component should preferably be used at **the root of your component tree**.\n */\n\n\nfunction ThemeProvider(props) {\n var children = props.children,\n localTheme = props.theme;\n var outerTheme = useTheme();\n\n if (process.env.NODE_ENV !== 'production') {\n if (outerTheme === null && typeof localTheme === 'function') {\n console.error(['Material-UI: You are providing a theme function prop to the ThemeProvider component:', ' outerTheme} />', '', 'However, no outer theme is present.', 'Make sure a theme is already injected higher in the React tree ' + 'or provide a theme object.'].join('\\n'));\n }\n }\n\n var theme = React.useMemo(function () {\n var output = outerTheme === null ? localTheme : mergeOuterLocalTheme(outerTheme, localTheme);\n\n if (output != null) {\n output[nested] = outerTheme !== null;\n }\n\n return output;\n }, [localTheme, outerTheme]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, children);\n}\n\nprocess.env.NODE_ENV !== \"production\" ? ThemeProvider.propTypes = {\n /**\n * Your component tree.\n */\n children: PropTypes.node.isRequired,\n\n /**\n * A theme object. You can provide a function to extend the outer theme.\n */\n theme: PropTypes.oneOfType([PropTypes.object, PropTypes.func]).isRequired\n} : void 0;\n\nif (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? ThemeProvider.propTypes = exactProp(ThemeProvider.propTypes) : void 0;\n}\n\nexport default ThemeProvider;","export default {\r\n account: {\r\n accountNameError: 'Account Name must have at least (1) character',\r\n accountAddressError: 'You must enter a valid address',\r\n accountCityError: 'You must enter a valid city name',\r\n accountRegionError: \"You must enter a valid Region\",\r\n accountZipPostalError: 'Must enter a valid Zip Code/ Postal Code',\r\n accountList: {\r\n title: \"Account List\",\r\n },\r\n addNewReportingEmail: \"Add New Reporting Email\",\r\n baitListWarning: \"If you cannot see your country's Bait List in the dropdown menu below, please visit the following link to add it.\",\r\n createNewAccount: \"Create New Account\",\r\n newAccount: \"New Account\",\r\n createAccount: \"Create Account\",\r\n disableAccount: \"Disable Account\",\r\n enableAccount: \"Enable Account\",\r\n editAccount: \"Edit Account\",\r\n editAccountWarningMessage: \"Are you sure you wish to update the branch membership of account: {{accountName}}? Updating branch membership at this time may result in the loss of any outstanding visit data. To ensure data safety, please confirm there are no outstanding visits with the following users: {{users}}\",\r\n editAccountWarningMessageNoUser: \"Are you sure you wish to update the branch membership of the account: {{accountName}}? To ensure data safety, please confirm there are no outstanding visits\",\r\n eventsMap: \"Events Map\",\r\n heatMap: \"Heat Map\",\r\n accountInfo: \"Account Info\",\r\n accountSpecifications: \"Account Specifications\",\r\n clientContactInfo: \"Client Contact Information\",\r\n devicesWithEvents: \"Devices With Events\",\r\n devicesWithoutEvents: \"Devices Without Events\",\r\n proofOfService: \"Proof Of Service\",\r\n selectProofOfService: \"Select Proof Of Service\",\r\n customizeServiceReport: \"Customize Service Report\",\r\n serviceFrequency: \"Service Frequency\",\r\n serviceRules: \"Service Rules\",\r\n serviceRulesInfo:\r\n \"These Rules determine the inspection requirement for a type of device on an account. For example, inspections for all Ambush devices on 'Account 1' can be set to be performed only when the device logs activity, or can be made mandatory for every visit.\",\r\n size: \"Size (Square ft)\",\r\n sizeMetric: \"Size (Square m)\",\r\n industryClassification: \"Industry/Classification\",\r\n accountLocation: \"Account Location\",\r\n deviceInspectionDetail: \"Device Inspection Detail\",\r\n deviceInspectionSummary: \"Device Inspection Summary\",\r\n generalCommentsInstructions: \"General Comments/Instructions\",\r\n productApplicationDetail: \"Product Application Detail\",\r\n productApplicationSummary: \"Product Application Summary\",\r\n serviceDetail: \"Service Detail\",\r\n floorPlan: \"Floor Plan\",\r\n deleteFloorPlan: \"Delete Image\",\r\n rotateFloorPlan: \"Rotate Right\",\r\n updateFloorPlan: \"Update Floor Plan\",\r\n reportingEmails: \"Reporting Emails\",\r\n reportingEmailNote: \"Email addresses listed above will be sent a notification email each time a service visit is uploaded.\",\r\n scheduledVisits: \"Scheduled Visits\",\r\n confirmDisableTitle: \"Are you sure you want to disable this Account\",\r\n confirmDisableMessage:\r\n \"Disabled Accounts cannot be downloaded to your mobile device or viewed from your Organization's Dashboard. However, any previously existing Account Visits can still be finished and posted to your Organization's Portal.\",\r\n confirmReactivateBranchTitle: \"Reactivate Branch\",\r\n confirmReactivateBranchMessage: \"This account's branch is disabled and needs to be reactivated in order to continue, please refer to the Branch's details page or the Branch List\",\r\n visitsThisYear: \"Visits This Year\",\r\n manageAccounts: \"Manage Accounts\",\r\n serviceRuleOptions: {\r\n baitingRules: \"Baiting Rules\",\r\n days: \"Days\",\r\n deviceRules: \"Device Rules\",\r\n trappingRules: \"Trapping Rules\",\r\n visualInspection: \"Visual Inspection\",\r\n replaceBait: \"Replace Bait\",\r\n bait: {\r\n definedDays: \"Replace Every _ Days\",\r\n withActivity: \"Replace As Needed\",\r\n },\r\n device: {\r\n definedDays: \"Every _ Days\",\r\n everyVisit: \"Every Visit\",\r\n everyOtherVisit: \"Every Other Visit\",\r\n withActivity: \"With Any Activity\",\r\n },\r\n trap: {\r\n definedDays: \"Replace Attractant Every _ Days\",\r\n everyVisit: \"Inspection Every Visit\",\r\n everyOtherVisit: \"Inspection Every Other Visit\",\r\n withActivity: \"With Any Events\",\r\n },\r\n },\r\n serviceRulesApplyToModels: \"Service rules apply to models\",\r\n },\r\n baitType: {\r\n activeIngredientPercentage: \"Active Ingredient Percentage\",\r\n addRodenticideToCompare: \"Add Rodenticide To Compare\",\r\n baitApplied: \"Bait Applied\",\r\n baitMaterial: \"Bait Material\",\r\n baitTypeName: \"Bait Type Name\",\r\n confirmDisableTitle: \"Are you sure you want to disable this bait type?\",\r\n confirmDisableMessage: \"Inactive bait types will not be available on the app.\",\r\n confirmEnableTitle: \"Are you sure you want to enable this bait type?\",\r\n confirmEnableMessage: \"Active bait types will be available on the app.\",\r\n contactSales: \"Contact Sales\",\r\n customBaitType: \"Custom Bait Type\",\r\n epaNumber: \"EPA #\",\r\n editBaitType: \"Edit Bait Type\",\r\n errorInvalidBaitType: \"Invalid bait type ID.\",\r\n grams: \"Grams (g)\",\r\n productLineUp: \"Product Line Up\",\r\n rodenticideList: \"Rodenticide List\",\r\n rodenticideDescription: {\r\n contrac: \"Outstanding Rodent Acceptance\",\r\n final: \"Extruded Bait with Brodifacoum\",\r\n detex: \"Non-Toxic Monitoring & Tracking Bait\",\r\n ditrac: \"Extruded Blox with Diphacinone\",\r\n fastrac: \"Our Fastest-Acting Rodenticide Blox\",\r\n formus: \"15g Bordifacoum BLOX controls mice\",\r\n liquaTox: \"Water Soluble Liquid Bait\",\r\n pcq: \"Burrow Bait for Voles and More\",\r\n terad3: \"Premier Formulation with Vitamin D3\",\r\n zp: \"Kills Rats, Mice & Gophers\",\r\n },\r\n form: \"Form\",\r\n inputNumberAsPercentage: \"Input number as percentage, e.g. 0.1\",\r\n manageBaitList: \"Manage Bait List\",\r\n manageBaitTypes: \"Manage Bait Types\",\r\n newBaitType: \"New Bait Type\",\r\n pieceSize: \"Piece Size\",\r\n provider: \"Provider\",\r\n quantityApplied: \"Quantity Applied\",\r\n selectRodenticide: \"Select Rodenticide\",\r\n },\r\n branch: {\r\n newBranch: \"New Branch\",\r\n manageBranches: \"Manage Branches\",\r\n branchList: {\r\n title: \"Branch List\",\r\n },\r\n createNewBranch: \"Create New Branch\",\r\n branchInfo: \"Branch Info\",\r\n branchLogo: \"Branch Logo\",\r\n branchAddress: \"Branch Address\",\r\n editBranch: \"Edit Branch\",\r\n disableBranch: \"Disable Branch\",\r\n enableBranch: \"Enable Branch\",\r\n branchesLocation: \"Branches Location\",\r\n confirmDisableTitle: \"Are you sure you want to disable this Branch?\",\r\n confirmEnableTitle: \"Are you sure you want to enable this Branch?\",\r\n confirmDisableMessage:\r\n \"Accounts belonging to this Branch will be automatically disabled and will not be available for download on your mobile device. However, any previously existing Account Visits can still be finished and posted to your Organization's Portal.\",\r\n confirmEnableMessage: \"Accounts belonging to this Branch will need to be manually enabled, please refer to the Branch's Account List.\",\r\n },\r\n cardTable: {\r\n searchBar: \"Search Bar...\",\r\n },\r\n changePassword: {\r\n title: \"Change Password\",\r\n currentPassword: \"Current Password\",\r\n },\r\n device: {\r\n manageDevices: \"Manage Devices\",\r\n deviceDetails: \"Device Details\",\r\n deviceName: \"Device Name\",\r\n deviceNameTooltip: \"Filter Captures by Device Name\",\r\n deviceTypeTooltip: \"Filter Captures by Device Type\",\r\n deviceInformation: \"Device Information\",\r\n disableDevice: \"Disable Device\",\r\n editDevice: \"Edit Device\",\r\n enableDevice: \"Enable Device\",\r\n eventFrequency: \"Event Frequency\",\r\n lookup: \"Device Lookup\",\r\n lookupHelperText: \"Please introduce the serial number to get the device details\",\r\n lastServiced: \"Last Serviced\",\r\n lifetimeEvents: \"Lifetime Events\",\r\n lifetimeEventsTooltip: \"Device lifetime number of events\",\r\n deviceTypeBreakdown: \"Device Type Breakdown\",\r\n deviceLocation: \"Device Location\",\r\n deviceMapInfo: \"During Technician services, mobile location permissions are needed to get coordinates for this map!\",\r\n deviceSerial: \"Device Serial\",\r\n serialNumber: \"Serial Number\",\r\n temperature: \"Temperature\",\r\n highTemp: \"High Temp.\",\r\n mediumTemp: \"Medium Temp.\",\r\n lowTemp: \"Low Temp.\",\r\n deviceType: \"Device Type\",\r\n confirmDisableTitle: \"Are you sure you want to disable this Device?\",\r\n confirmDisableMessage: \"Inactive devices will not be available on the app.\",\r\n weeklyTooltip: \"Click to select weekly date ranges\",\r\n fullRangeTooltip: \"Click to view full events history\",\r\n deviceList: {\r\n title: \"Device List\",\r\n currentAccountCaptures: \"Current Account Captures\",\r\n currentAccountCapturesTooltip: \"Number of Captures since the device joined the current account\",\r\n accountEvents: \"Account Events\",\r\n currentAccountEvents: \"Current Account Events\",\r\n currentAccountTooltip: \"Number of events since the device joined the current account\",\r\n battery: \"Battery\",\r\n good: \"Good\",\r\n medium: \"Medium\",\r\n bad: \"Bad\",\r\n ready: \"Ready\",\r\n replace: \"Replace\",\r\n },\r\n deviceLookupResults: {\r\n title: \"Device Lookup Results\",\r\n firmwareVersion: \"Firmware Version\",\r\n hardwareVersion: \"Hardware Version\",\r\n },\r\n deviceServiceHistory: {\r\n title: \"Device Service History\",\r\n },\r\n deviceStatusLog: {\r\n title: \"Device Status Log\",\r\n viewedTime: \"Viewed Time\",\r\n },\r\n sensorTemperature: {\r\n title: \"Sensor Temperature\",\r\n averageTemp: \"Average Temp.\",\r\n },\r\n totalActiveDevices: \"Total Active Devices\",\r\n tRex: \"T-Rex\",\r\n },\r\n forgotPassword: {\r\n title: \"Forgot Your Password?\",\r\n helperText: \"If you forget your password, please enter you email address below to be emailed a reset link\",\r\n reset: \"Reset\",\r\n resetPassword: \"Reset Password\",\r\n iRememberNow: \"Oh! I remember it now.\"\r\n },\r\n home: {\r\n editDetails: {\r\n organizationInfo: \"Organization Information\",\r\n content: \"Details\",\r\n companyName: \"Company Name\",\r\n },\r\n },\r\n hierarchyExplanation: {\r\n metaphor: \"Metaphor\",\r\n tree: \"Tree\",\r\n treeBranch: \"Tree Branch\",\r\n fruit: \"Fruit\",\r\n seeds: \"Seeds\",\r\n example: \"Example\",\r\n organizationExplain: \"This is a term for the company as a whole. Upon initial sign-up, this is what is created. An Organization is required first before creation of Branches, Accounts and Users.\",\r\n branchExplain: \"Organization can be separated into Branches, to allow a deeper control of operations and payment methods.\",\r\n siteExplain: \"May also be referred to as a 'site', this is what we call our customers. Accounts can be created within a Branch, and that Branch would then have direct control over their operations.\",\r\n deviceExplain: \"Another way to refer to our traps. Specifically, the sensors in our traps.\"\r\n },\r\n login: {\r\n hello: \"Hello!\",\r\n logIntoYourAccount: \"Log into your Account\",\r\n emailAddress: \"Email Address\",\r\n rememberMe: \"Remember Me\",\r\n forgotPassword: \"Forgot Password?\",\r\n logIn: \"Log In\",\r\n dontHaveAnAccount: \"Don't have an account?\",\r\n register: \"Register\",\r\n },\r\n loraWan: {\r\n accessToLens: \"Access to LENS\",\r\n accessToLensText: \"In order to enable the LoRaWan Network, you need to access to your LENS account. The fields can not be empty.\",\r\n acknowledgePackage: \"Acknowledge Package\",\r\n applicationNetwork: \"Application Network\",\r\n applicationNetworks: \"Application Networks\",\r\n applicationNetworkChangeText: \"You are about to change your Application Network. All devices within your {{2}} were found in {{0}} and will be moved into {{1}}.\",\r\n applicationNetworkChangeDevicesText: \"You are about to change your Application Network. All devices within your {{3}} were found in {{0}} and will be moved into {{1}}. {{2}} Devices were not found in {{0}}, they will also be transferred but might not work as expected.\",\r\n applicationNetworkChangeNoCheckText: \"You are about to change your Application Network. All devices within your {{1}} will be moved into {{0}}.
A report will be emailed to you once this process is complete.
Warning: Some devices might not be moved properly..\",\r\n applicationNetworkLookup: \"Application Network Lookup\",\r\n applicationNetworkName: \"Application Network Name\",\r\n applicationNetworkSetText: \"You are about to set up your Application Network. All devices within your {{1}} will belong to {{0}}\",\r\n applicationNetworkText: \"Please select an available \\\"Application Network\\\" for your organization or create a new one\",\r\n applicationNetworkText2: \"You can modify your preferred networks list by adding and removing items from your LENS application list.\",\r\n applied: \"Applied\",\r\n appliedApplicationNetwork: \"Applied Application Network:\",\r\n autoEnableLoraWanHierarchyOrganization: \"Automatically Enable LoRaWAN on all branches & accounts\",\r\n autoEnableLoraWanHierarchyBranch: \"Automatically Enable LoRaWAN on all accounts for this branch\",\r\n availableNetworks: \"Available Networks\",\r\n availableApplicationNetworks: \"Available Application Networks\",\r\n batteryPercentage: \"Battery Percentage\",\r\n branchOnly: \"Branch Only\",\r\n branchAndAccounts: \"Branch and Accounts\",\r\n confirmDisableRemoteMonitoringOrganization: \"Are you sure you want to disable Remote Monitoring?\",\r\n confirmDisableRemoteMonitoringOrganizationText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n confirmDisableRemoteMonitoringOrganizationNoLensText: \"This will disable all Remote Monitoring features within your organization.\",\r\n confirmEnableRemoteMonitoringBranch: \"Do you wish to enable remote monitoring for this branch only, or for this branch and it's accounts?\",\r\n confirmEnableRemoteMonitoringOrganization: \"Do you wish to enable remote monitoring for this branch only, or for this branch and it's accounts?\",\r\n confirmLensAccountSwapText: \"It seems that you are trying to connect to a LENS account belonging to a different organization. To connect, please remove any existing Remote Monitoring Traps from all your accounts then try again.\",\r\n confirmLensLogout: \"Are you sure you want to Logout from LENS?\",\r\n confirmLensLogoutText: \"This will log you out of your LENS account and disable all Remote Monitoring features within your organization.\",\r\n connect: \"Connect\",\r\n createNewNetwork: \"Create New Network\",\r\n currentApplicationNetwork: \"Current Application Network\",\r\n customConfigurationsFound: \"Custom Configurations Found\",\r\n customConfigurationsFoundText: \"Custom configurations were found for {{count}} accounts belonging to this branch. Do you wish to overwrite or keep these custom configurations?\",\r\n customConfigurationsBranchesAndSitesFoundText: \"There are {{branches}} Branches and {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n customConfigurationsSitesFoundText: \"There are {{sites}} Accounts with custom settings, do you wish to overwrite or keep these custom settings?\",\r\n customConfigurationsFoundWarning: \"Warning: Overwriting custom configurations is final and cannot be undone.\",\r\n dataPackageOrigin: \"Data Package Origin\",\r\n devEui: \"Dev EUI\",\r\n devEuiInfoTitle: \"Dev EUI - (Excel and CSV format)\",\r\n deviceSummaryRemoteMonitor: \"Device Summary (Remote Monitor)\",\r\n disabled: \"Disabled\",\r\n disableRemoteMonitoring: \"Disable Remote Monitoring\",\r\n enabled: \"Enabled\",\r\n enableRemoteMonitoring: \"Enable Remote Monitoring\",\r\n enableRemoteMonitoringText: \"Do you wish to enable remote monitoring for this branch only, or for this branch and its accounts? \",\r\n eventNotificationThreshold: \"Event Notification Threshold\",\r\n eventNotificationThresholdHelper: \"Notify when the events exceed the threshold.\",\r\n failedLoraJoinAttempts: \"Failed Join Attempts\",\r\n formatCells: \"Using Format Cells Pop-Up\",\r\n formatCellsItem1: \"Right-click column header and select Format Cells\",\r\n formatCellsItem2: \"Choose Custom and in Type write 16 zeros: \\\"0000000000000000\\\"\",\r\n formatCellsItem3: \"Click on \\\"OK\\\" button to confirm changes\",\r\n fullList: \"Full List\",\r\n heartBeatTime: \"Heart Beat Time\",\r\n\tinvalid: \"Invalid\",\r\n\tjoinDelay: \"Join Delay\",\r\n keepCustom: \"Keep Custom\",\r\n lastPackageReceived: \"Last Package Received\",\r\n lensAccount: \"LENS Account\",\r\n lensLogout: \"LENS Logout\",\r\n lensPassword: \"LENS Password\",\r\n linkedLensAccount: \"Linked Lens Account\",\r\n loraDataRate: \"Data Rate\",\r\n loraJoinAttempts: \"Join Attempts\",\r\n loraJoinStatus: \"Join Status\",\r\n loraPowerLevel: \"Power Level\",\r\n loraSNRMinimum: \"SNR Minimum\",\r\n loraSNRMaximum: \"sSNR Maximum\",\r\n loraSubChannelPlan: \"Sub Channel Plan\",\r\n loraWan: \"LoRaWan\",\r\n loraWanModeDevice: \"LoRaWan Mode (Device)\",\r\n loraWanModeDisabled: \"LoRaWan Mode Disabled\",\r\n loraWanModeEnabled: \"LoRaWan Mode Enabled\",\r\n loraWanModeHelper: \"By default, the LoRaWan Network will be active.\",\r\n loraWanNetwork: \"LoRaWan Network\",\r\n loraWanNetworkAccount: \"LoRaWan Network (Account)\",\r\n loraWanNetworkBranch: \"LoRaWan Network (Branch)\",\r\n loraWanNetworkOrganization: \"Remote Monitor Network (Organization)\",\r\n loraWanNetworkTrap: \"LoRaWan Network (Trap)\",\r\n loraWanInformation: \"LoRaWan Information\",\r\n loraWanDataPackage: \"LoRaWan Data Package\",\r\n loraWanEnabledBranchText: \"Remote monitoring will be enabled/disabled for all Accounts in this Branch.\",\r\n loraWanEnabledOrganizationText: \"Remote monitoring will be enabled/disabled for all Branches and Accounts in this Organization.\",\r\n loraWanEnabledSiteText: \"Remote monitoring will be enabled/disabled for this Account only.\",\r\n loraWanHealth: \"LoRaWan Health\",\r\n loraWanSettingsDevices: \"LoRaWan Settings (Devices)\",\r\n loraWanSignal: \"LoRaWan Signal\",\r\n loraWanSignalTrap: \"LoRaWan Signal (Trap)\",\r\n loraWanStatus: \"LoRaWan Status\",\r\n loraWanTransmissionFrequency: \"LoRaWan Transmission Frequency\",\r\n loraWanTransmissionFrequencyHelper: \"How often do you want to synchronize.\",\r\n loraWanRegion: \"LoRaWan Region\",\r\n networkDelay: \"Network Delay\",\r\n networkName: \"Network Name\",\r\n newNetwork: \"New Network\",\r\n noApplicationNetworkApplied: \"No application network applied, please select one to continue.\",\r\n noNetwork: \"No Network\",\r\n noSignal: \"No Signal\",\r\n numberOfEvents: \"Number of Events\",\r\n numberOfEventsHelper: \"Select the number between 1-255.\",\r\n numberOfRetries: \"No. Of Retries\",\r\n optional: \"Optional\",\r\n organizationBranchesAndAccounts: \"Organization, Branches and Accounts\",\r\n organizationOnly: \"Organization Only\",\r\n overwrite: \"Overwrite\",\r\n packageAcknowledge: \"Package Acknowledge\",\r\n preferredNetworks: \"Preferred Networks\",\r\n remoteMonitor: \"Remote Monitor\",\r\n remoteMonitorAccount: \"Remote Monitor (Account)\",\r\n remoteMonitorBranch: \"Remote Monitor (Branch)\",\r\n remoteMonitorDevice: \"Remote Monitor (Device)\",\r\n remoteMonitorLastPackage: \"Remote Monitor (Last Package)\",\r\n remoteMonitorLoraWan: \"Remote Monitor (LoRaWan)\",\r\n remoteMonitorOrganization: \"Remote Monitor (Organization)\",\r\n remove: \"Remove\",\r\n retrySentPackage: \"Retry Sent Package\",\r\n ribbonShortcuts: \"Ribbon Shortcuts\",\r\n ribbonShortcutsItem1: \"Right-click column header and select Format Cells\",\r\n ribbonShortcutsItem2: \"Choose Custom and in Type write 16 zeros: \\\"0000000000000000\\\"\",\r\n ribbonShortcutsItem3: \"Click on \\\"OK\\\" button to confirm changes\",\r\n scientificNotation: \"Scientific Notation\",\r\n scientificNotationText: \"When the Excel or CSV file is downloaded, some of the DevEUI readings will be shown in scientific notation by default \\\"8e+13\\\". If you have a number over 12 digits in an Excel spreadsheet, it auto-corrects the number to scientific notation for brevity.\",\r\n selected: \"Selected\",\r\n solution: \"Solution\",\r\n strong: \"Strong\",\r\n successfulLoraJoinAttempts: \"Successful Join Attempts\",\r\n supportImage: \"Support Image\",\r\n swap: \"Swap\",\r\n swapLensAccount: \"Swap LENS Account\",\r\n transmissionFrequency: \"Transmission Frequency\",\r\n totalLoraPayloadsFailed: \"Total Payloads Failed\",\r\n totalLoraPayloadsSent: \"Total Payloads Sent\",\r\n unableToConnect: \"Unable To Connect\",\r\n unapplied: \"Unapplied\",\r\n unselected: \"Unselected\",\r\n updateNetwork: \"Update Network\",\r\n updateSettings: \"Update Settings\",\r\n usingFormatCellsPopUp: \"Using Format Cells Pop-Up\",\r\n usingRibbonShortcuts: \"Using Ribbon Shortcuts\",\r\n weak: \"Weak\",\r\n willBeUpdatedTo: \"will be updated to:\",\r\n },\r\n manageAdminAccount: {\r\n manageAdminAccount: \"Manage Admin Account\",\r\n adminOverview: {\r\n scheduledPayment: \"Scheduled Payment\",\r\n nextPaymentScheduledFor: \"Next payment is scheduled for\",\r\n noScheduledPayments: \"You have no scheduled payments!\",\r\n paymentsPhaseOutNotice: \"As of October 22, 2022, we will be phasing out payments.\",\r\n },\r\n billingHistory: {\r\n selectYear: \"Select Year\",\r\n moneySpentThisMonth: \"Money Spent This Month\",\r\n },\r\n manageSubscription: {\r\n billing: \"Billing\",\r\n billingFrequency: \"Billing Frequency\",\r\n billingMethod: \"Billing Method\",\r\n cancelSubscription: \"Cancel Subscription\",\r\n confirmCancelSubscriptionMessage:\r\n \"You're currently signed in as . If this isn't the Bell Sensing Account that has your subscription, switch to the correct one.\",\r\n confirmCancelSubscriptionMessage2:\r\n \"Subscriptions on Bell Sensing renew automatically unless you unsubscribe.\",\r\n pleaseReadBeforeProceeding: \"Please Read Before Proceeding\",\r\n title: \"Manage Subscription\",\r\n receipts: {\r\n title: \"Receipts\",\r\n type: \"Type\",\r\n unit: \"Unit\",\r\n amount: \"Amount\",\r\n receipt: \"Receipt\",\r\n },\r\n subscription: \"Subscription\",\r\n totalAmount: \"Total Amount\",\r\n activeBillableUsers: \"Active Billable Users\",\r\n activeLicenses: \"Active Licenses\",\r\n pendingLicenses: \"Pending Licenses\",\r\n },\r\n paymentMethod: {\r\n method: \"Method\",\r\n payment: \"Payment\",\r\n paymentMethod: \"Payment Method\",\r\n currentPaymentMethod: \"Current Payment Method\",\r\n nameOnCard: \"Name on Card\",\r\n cardNumber: \"Card Number\",\r\n expiresOnMMYY: \"Expires On (MMYY)\",\r\n cvv: \"CVV\",\r\n helperText:\r\n \"The types of cards accepted, vary by location and product. We strongly encourage you to keep all contact and billing information up to date.\",\r\n lastModified: \"Last Modified\",\r\n typeOfCard: \"Type of Card\",\r\n billingInformation: \"Billing Information\",\r\n balanceTrend: \"Balance Trend\"\r\n },\r\n },\r\n mostActiveUser: {\r\n title: \"Most Active User\",\r\n name: \"Name\",\r\n lastReported: \"Last Reported\",\r\n noOfVisits: \"No. of Visits\",\r\n },\r\n navigation: {\r\n clickHere: \"Click Here\",\r\n contactSupport: \"Contact Support\",\r\n generalSettings: \"General Settings\",\r\n home: \"Home\",\r\n manageAccount: \"Manage Account\",\r\n productionLine: \"Production Line\",\r\n reports: \"Reports\",\r\n remoteMonitor: \"Remote Monitor\",\r\n subject: \"Subject\",\r\n\r\n yourEmailAddress: \"Your Email Address\",\r\n },\r\n remoteMonitor: {\r\n accountApplied: \"Account Applied\",\r\n alertCategory: \"Alert Category\",\r\n alertManager: \"Alert Manager\",\r\n alertMeWhen: \"Alert me when \",\r\n alertType: \"Alert Type\",\r\n alertSummary: {\r\n alertsSummary: \"Alerts Summary\",\r\n },\r\n alertsList: \"Alerts List\",\r\n alreadyPreProvisionedDevices: \"Devices Already Provisioned\",\r\n averageDeviceSignal: \"Average Device Signal\",\r\n averageSensorTemperature: \"Average Sensor Temperature\",\r\n batteryCapacity: \"Battery Capacity\",\r\n batteryAlerts: \"Battery Alerts\",\r\n batteryAlertsText: \"Receive alerts about the battery of devices when any of the following conditions are met.\",\r\n batteryMonitoring: \"Battery Monitoring\",\r\n batterySummary: \"Battery Summary\",\r\n bestBatteryPerformance: \"Best Battery Performance\",\r\n branchApplied: \"Branch Applied\",\r\n createdAlerts: \"Created Alerts\",\r\n critical: \"Critical\",\r\n criticalAlerts: \"Critical Alerts\",\r\n criticalBatteryDevices: \"Critical Battery Devices\",\r\n dateOfLastService: \"Date of Last Service\",\r\n dateOfPreProvision: \"Date of Preprovision\",\r\n devEUI: \"DevEUI\",\r\n deviceSummary: \"Device Summary\",\r\n devicesOverdue: \"Devices Overdue\",\r\n enabledAlerts: \"Enabled Alerts\",\r\n errorMessage: \"Error Message\",\r\n eventsAlerts: \"Events Alerts\",\r\n eventsAlertsText: \"Receive alerts about the events of devices when any of the following conditions are met.\",\r\n eventsDiagnose: \"Events Diagnose\",\r\n eventsMonitoring: \"Events Monitoring\",\r\n eventsSummary: \"Events Summary\",\r\n eventsTrend: \"Events Trend\",\r\n failedJoinAttempts: \"Failed Join Attempts\",\r\n failedPreProvisionDevices: \"Failed Pre-Provision Devices\",\r\n failedPreProvisioned: \"Failed Pre-Provisioned\",\r\n failedTransmissions: \"Failed Transmissions\",\r\n filtersApplied: \"Filters Applied\",\r\n goodBatteryDevices: \"Good Battery Devices\",\r\n high: \"High\",\r\n highBatteryDevices: \"High Battery Devices\",\r\n highTemperatureDevices: \"Devices - High Temperature\",\r\n historicPreProvisionedReports: \"Historic Pre-Provisioned Reports\",\r\n historicalGatewayReading: \"Historical Gateway Reading\",\r\n historicalServiceReadings: \"Historical Service Readings\",\r\n ideal: \"Ideal\",\r\n idealTemperatureDevices: \"Devices - Ideal Temperature\",\r\n joinAttempts: \"Join Attempts\",\r\n joinRequests: \"Join Requests\",\r\n joinStatus: \"Join Status\",\r\n joined: \"Joined\",\r\n lastConnectionServiceReadings: \"Last Connection Service Readings\",\r\n lastPreProvisioned: \"Last Pre-Provisioned\",\r\n lastReading: \"Last Reading\",\r\n lastReadings: \"Remote Monitor Last Readings\",\r\n latestGatewayReadings: \"Latest Gateway Readings\",\r\n latestServiceReadings: \"Latest Service Readings\",\r\n loRaWanMonitoring: \"LoRaWan Monitoring\",\r\n loRaWanSignal: \"LoRaWan Signal\",\r\n loRaWanSummary: \"LoRaWan Summary\",\r\n low: \"Low\",\r\n lowBatteryDevices: \"Low Battery Devices\",\r\n lowTemperatureDevices: \"Devices - Low Temperature\",\r\n mediumBatteryDevices: \"Medium Battery Devices\",\r\n mediumSignalDevices: \"Devices - Medium Signal\",\r\n mediumTemperatureDevices: \"Devices - Medium Temperature\",\r\n numberOfAccounts: \"Number of Accounts\",\r\n networkSignalMonitoring: \"Network Signal Monitoring\",\r\n networkStatus: \"Network Status\",\r\n notJoined: \"Not Joined\",\r\n notifications: \"Notifications\",\r\n notificationEmails: \"Notification Emails\",\r\n notificationEmailsText: \"The following emails will be notified about these alerts\",\r\n organizationNotifications: \"Organization Notifications\",\r\n overdue: \"Overdue\",\r\n pdfReports: \"PDF Reports\",\r\n pendingPreProvisionDevices: \"Devices Pending Pre-Provision\",\r\n pendingPreProvisionedDevices: \"Pending Pre-Provisioned Devices\",\r\n percentageOfTheTrapsHave: \"% of the traps have \",\r\n preProvision: \"Pre-Provision\",\r\n preProvisionedBy: \"Pre-Provisioned By\",\r\n preProvisionDate: \"Preprovision Date\",\r\n preProvisionedDevices: \"Pre-Provisioned Devices\",\r\n region: \"Region\",\r\n remoteMonitorAlerts: \"Remote Monitor Alerts\",\r\n remoteMonitorHistorical: \"Remote Monitor Historical\",\r\n remoteMonitorModeDevice: \"Remote Monitor Mode (Device)\",\r\n remoteMonitorOverview: \"Remote Monitor Overview\",\r\n remoteMonitorSignal: \"Remote Monitor Signal\",\r\n remoteMonitorStatus: \"Remote Monitor Status\",\r\n remoteMonitorStatusText: \"Receive alerts about the status of devices when any of the following conditions are met.\",\r\n remoteMonitorSummary: \"Remote Monitor Summary\",\r\n reportedOn: \"Reported On\",\r\n selectAvailableAccount: \"Please select one of the available accounts\", \r\n selectAvailableBranch: \"Please select one of the available branches\", \r\n selectDeviceType: \"Select Device Type\",\r\n selectOrganization: \"Select Organization\",\r\n serviceReadingPackage: \"Service Reading Package\",\r\n signal: \"Signal\",\r\n strongSignalDevices: \"Devices - Strong Signal\",\r\n successfulPreProvisioned: \"Successful Pre-Provisioned\",\r\n totalPreProvisioned: \"Total Pre-Provisioned\",\r\n temperatureAlerts: \"Temperature Alerts\",\r\n temperatureAlertsText: \"Receive alerts about the temperature of devices when any of the following conditions are met.\",\r\n temperatureLevel: \"Temperature Level\",\r\n temperatureMonitoring: \"Temperature Monitoring\",\r\n temperatureReading: \"Temperature Reading\",\r\n temperatureSummary: \"Temperature Summary\",\r\n temperatureTrend: \"Temperature Trend\",\r\n transmissionFrequency: \"Transmission Frequency\",\r\n trapEvents: \"Trap Events\",\r\n totalAlerts: \"Total Alerts\",\r\n totalPayloadsFailed: \"Total Payloads Failed\",\r\n totalPayloadsSent: \"Total Payloads Sent\",\r\n value: \"Value\",\r\n warning: \"Warning\",\r\n warningAlerts: \"Warning Alerts\",\r\n weak: \"Weak\",\r\n weakSignalDevices: \"Devices - Weak Signal\",\r\n },\r\n recentActivities: {\r\n title: \"Recent Activities\",\r\n time: \"Time\",\r\n description: \"Description\",\r\n reported: \"Reported\",\r\n details: \"Details\",\r\n },\r\n register: { \r\n createAccountTitle: \"Create Your First Account\",\r\n createAccountText: \"In order to start using our services, and add devices to a location, you need to create your first account.\",\r\n createDefaultAccount: \"Create Default Account\",\r\n createCustomAccount: \"Create Custom Account\",\r\n addDetailsText: \"You will be able to edit and add details to your account once you are logged in.\",\r\n passwordRequirements: \"Password Requirements\",\r\n termsAndConditions: \"Terms And Conditions\",\r\n passwordNumberRequired: \"Must have a numeric digit ('0'-'9')\",\r\n passwordLowercaseRequired:\r\n \"Must have at least one lowercase letter ('a'-'z')\",\r\n passwordUppercaseRequired:\r\n \"Must have at least one uppercase letter ('A'-'Z')\",\r\n passwordMinimumLength: \"Must be at least 8 characters long.\",\r\n confirmPasswordMismatch:\r\n \"The password and confirmation password do not match.\",\r\n serviceProviders: \"Service Providers\",\r\n selectDefault: \"Please select one of the following options:\",\r\n duplicateEmail: \"This email has already been added\",\r\n validEmail: \"Please enter a valid email address.\",\r\n productInfo: \"Product Info\",\r\n userProfile: \"User Profile\",\r\n companyProfile: \"Company Profile\",\r\n companyDetails: \"Company Details\",\r\n paymentDetails: \"Payment Details\",\r\n accountDetails: \"Account Details\",\r\n success: \"Success\",\r\n areYouAuthorized: \"Are you authorized by your company to establish a Bell Sensing Technology account?*\",\r\n back: \"Back\",\r\n next: \"Next\",\r\n alreadyHaveAnAccount: \"Already have an account?\",\r\n iAcceptAgreement: \"I Accept The Terms And Conditions\",\r\n almostDone: \"Almost Done!\",\r\n pleaseCheckEmail: \"Please check your email to activate your account. If you don't receive it, check your junk email folder!\",\r\n numberOfTechnicians: \"Number of Technicians\",\r\n distributor: \"Distributor\",\r\n pleaseIdentify: \"Please identify the services you provide:*\",\r\n howDidYouHear: \"How did you hear about us?*\"\r\n },\r\n relativeTime: {\r\n future: \"in %s\",\r\n past: \"%s ago\",\r\n minutes: \"minutes\",\r\n seconds: \"seconds\",\r\n hour: \"an hour\",\r\n hoursLabel: \"hours\",\r\n hours: \"%d hours\",\r\n day: \"a day\",\r\n daysLabel: \"days\",\r\n days: \"%d days\",\r\n month: \"a month\",\r\n months: \"%d months\",\r\n year: \"a year\",\r\n years: \"%d years\",\r\n },\r\n report: {\r\n manageReports: \"Manage Reports\",\r\n report: \"Report\",\r\n accountHistorical: \"Account Historical\",\r\n historicalReport: \"Historical Report\",\r\n filter: \"Filter\",\r\n filterDesc:\r\n \"Please select below the settings that you would like to filter your report by\",\r\n selectUser: \"Select User\",\r\n serviceTech: \"Service Tech\",\r\n summaryReport: \"Summary Report\",\r\n baitSummary: \"Bait Summary\",\r\n note: \"Note\",\r\n name: \"Name\",\r\n includeExpansion: \"Include Expansion\",\r\n accountHistoricalReport: {\r\n title: \"Account Historical Report\",\r\n installed: \"Installed\",\r\n detected: \"Detected\",\r\n serviced: \"Serviced\",\r\n status: \"Status\",\r\n },\r\n serviceTechSummaryReport: {\r\n title: \"Service Tech Summary Report\",\r\n dateOfService: \"Date Of Service\",\r\n details: \"Details\",\r\n pdf: \"PDF\",\r\n },\r\n noteReport: {\r\n title: \"Note Report\",\r\n replies: \"Replies\",\r\n time: \"Time\",\r\n user: \"User\",\r\n },\r\n baitSummaryReport: {\r\n title: \"Bait Summary Report\",\r\n totalPieces: \"Total Pieces\",\r\n },\r\n },\r\n searchBar: {\r\n placeholder: \"Enter a keyword to search...\"\r\n },\r\n serviceHistory: {\r\n title: \"Service History\",\r\n servicedBy: \"Serviced By\",\r\n branch: \"Branch\",\r\n location: \"Locations\",\r\n serviceNotes: \"Service Notes\",\r\n },\r\n setPassword: {\r\n activateAccount: \"Activate Account\",\r\n title: \"Set Password\",\r\n },\r\n resendVerification: {\r\n linkExpired: \"Link Expired\",\r\n resendLink: \"The Activation link you are trying to access has expired and a new link has been sent to your email. Please note the new link will expire in 72 hours. Any user currently logged in on this computer will be logged out automatically after clicking the link!\"\r\n },\r\n shared: {\r\n action: \"Action\",\r\n actions: \"Actions\",\r\n activationDate: \"Activation Date\",\r\n activeIngredient: \"Active Ingredient\",\r\n account: \"Account\",\r\n accounts: \"Accounts\",\r\n accountsDetails: \"Accounts Details\",\r\n accountName: \"Account Name\",\r\n accountPerformance: \"Account Performance\",\r\n active: \"Active\",\r\n activeBranches: \"Active Branches\",\r\n activeAccounts: \"Active Accounts\",\r\n activeTechnicians: \"Active Technicians\",\r\n activeBaits: \"Active Baits\",\r\n activity: \"Activity\",\r\n activities: \"Activities\",\r\n add: \"Add\",\r\n address: \"Address\",\r\n addAccountToCompare: \"Add Account To Compare\",\r\n addBranchToCompare: \"Add Branch To Compare\",\r\n addDeviceToCompare: \"Add Device To Compare\",\r\n address2: \"Address 2\",\r\n all: \"All\",\r\n average: \"Average\",\r\n averageBaitApplicationRate: \"Average Bait Application Rate\",\r\n averageBaitRefillPerVisit: \"Average Bait Refill Per Visit\",\r\n averageRefill: \"Average Refill\",\r\n averageVisitTime: \"Average Visit Time\",\r\n baits: \"Baits\",\r\n baitApplicationRate: \"Bait Application Rate\",\r\n baitApplied: \"Bait Applied\",\r\n baitName: \"Bait Name\",\r\n baitTypes: \"Bait Types\",\r\n baitTypesDetails: \"Bait Types Details\",\r\n batteryLevel: \"Battery Level\",\r\n branch: \"Branch\",\r\n branches: \"Branches\",\r\n branchesDetails: \"Branches Details\",\r\n branchLocation: \"Branch Location\",\r\n branchName: \"Branch Name\",\r\n branchPerformance: \"Branch Performance \",\r\n cancel: \"Cancel\",\r\n captureTotals: \"Capture Totals\",\r\n captures: \"Captures\",\r\n category: \"Category\",\r\n city: \"City\",\r\n close: \"Close\",\r\n create: \"Create\",\r\n company: \"Company\",\r\n confirmPassword: \"Confirm Password\",\r\n confirm: \"Confirm\",\r\n country: \"Country\",\r\n continue: \"Continue\",\r\n dashboard: \"Dashboard\",\r\n date: \"Date\",\r\n dateRangeOptionText: \"Date Range Option\",\r\n description: \"Description\",\r\n details: \"Details\",\r\n device: \"Device\",\r\n devices: \"Devices\",\r\n deviceModel: \"Device Model\",\r\n disable: \"Disable\",\r\n download: \"Download\",\r\n downloadChart: \"Download Chart\",\r\n downloadTooltip: \"This action will request and download all available records, it might take longer to process.\",\r\n edit: \"Edit\",\r\n editDetails: \"Edit Details\",\r\n email: \"Email\",\r\n emailAddress: \"Email Address\",\r\n enable: \"Enable\",\r\n event: \"Event\",\r\n events: \"Events\",\r\n eventTotals: \"Event Totals\",\r\n eventTooltip : \"The range of the data displayed is from the First Event Date of this Visit to the Start Date of this visit.\",\r\n error: \"An error occurred.\",\r\n errorAccountText: \"Account can not have same name of an existing Account, please use a different name.\",\r\n errorBranchText: \"Branch can not have same name of an existing Branch, please use a different name.\",\r\n errorUserText: \"Email is already taken.\",\r\n expand: \"Expand\",\r\n false: \"False\",\r\n failed: \"Failed\",\r\n fullName: \"Full Name\",\r\n fullRange: \"Full Range\",\r\n generalInfo: \"General Info\",\r\n hierarchyExplanation: \"Hierarchy Explanation\",\r\n history: \"History\",\r\n inactive: \"Inactive\",\r\n information: \"Information\",\r\n organization: \"Organization\",\r\n organizationDetails: \"Organization Details\",\r\n language: \"Language\",\r\n last: \"Last\",\r\n lastVisit: \"Last Visit\",\r\n latitude: \"Latitude\",\r\n longitude: \"Longitude\",\r\n loading: \"Loading\",\r\n logOut: \"Log Out\",\r\n mainAddress: \"Main Address\",\r\n mainContactPhone: \"Main Contact Phone\",\r\n manage: \"Manage\",\r\n modify: \"Modify\",\r\n mostActiveBranches: \"Most Active Branches\",\r\n mostActiveDevice: \"Most Active Device\",\r\n mostVisitedAccount: \"Most Visited Account\",\r\n mostUsedBait: \"Most Used Bait\",\r\n mostUsedBaits: \"Most Used Baits\",\r\n name: \"Name\",\r\n newPassword: \"New Password\",\r\n no: \"No\",\r\n notes: \"Notes\",\r\n noDataFound: \"No Data Found\",\r\n noEvents: \"No Events\",\r\n noneSelected: \"None Selected\",\r\n noVisitsYet: \"No Visits Yet\",\r\n number: \"Number\",\r\n numberOfEvents: \"Number of Events\",\r\n ok: \"Ok\",\r\n overview: \"Overview\",\r\n password: \"Password\",\r\n pending: \"Pending\",\r\n percentage: \"Percentage\",\r\n noneSelectedMessage: \"Please select from one of the options above\",\r\n phoneNumber: \"Phone Number\",\r\n quantity: \"Quantity\",\r\n rangeTooltip: \"The range of the data displayed is from the End Date of the previous Visit to the Start Date of this visit.\",\r\n recent: \"Recent\",\r\n regulatoryNumber: \"Regulatory Number\",\r\n results: \"Results\",\r\n rows: \"Rows\",\r\n rowsPerPage: \"Rows per page\",\r\n location: \"Location\",\r\n save: \"Save\",\r\n saveChanges: \"Save Changes\",\r\n scrollDownToViewMore: \"Scroll down to view more\",\r\n stateProvince: \"State/Province\",\r\n status: \"Status\",\r\n searchAddress: \"Search Address\",\r\n select: \"Select\",\r\n selectAll: \"Select All\",\r\n selectAccount: \"Select Account\",\r\n selectBranch: \"Select Branch\",\r\n selectDevice: \"Select Device\",\r\n selectCountry: \"Select Country\",\r\n selectLanguage: \"Please Select Your Language\",\r\n selectIndustry: \"Select Industry\",\r\n selectRegion: \"Select Region\",\r\n selectServiceFrequency: \"Select Service Frequency\",\r\n selectSize: \"Select Size\",\r\n sendEmail: \"Send Email\",\r\n service: \"Service\",\r\n serviceBaitType: \"Service Bait Type\",\r\n serviceBaitUsed: \"Service Bait Used\",\r\n serviceDate: \"Service Date\",\r\n serviceIsCapture: \"Service Is Capture\",\r\n services: \"Services\",\r\n summary: \"Summary\",\r\n temp: \"Temp.\",\r\n trendAnalysis: \"Trend Analysis\",\r\n true: \"True\",\r\n warning: \"Warning\",\r\n weekly: \"Weekly\",\r\n unit: \"Unit\",\r\n units: \"Units\",\r\n update: \"Update\",\r\n updated: \"Updated\",\r\n updatedBy: \"Updated By\",\r\n users: \"Users\",\r\n usersDetails: \"Users Details\",\r\n usersRecords: \"Users Record\",\r\n technicians: \"Technicians\",\r\n view: \"View\",\r\n visitTime: \"Visit Time\",\r\n visit: \"Visit\",\r\n visits: \"Visits\",\r\n yes: \"Yes\",\r\n zipPostal: \"ZIP/Postal Code\",\r\n },\r\n terms: {\r\n subscriptionAgreement: \"Subscription Agreement\",\r\n read: \"Read\",\r\n agreement: \"Agreement\",\r\n estimatedReadingTime: \"Estimated reading time:\",\r\n readingTimeMinutes: \"30-40 Minutes\",\r\n readingTimeCalculation: \"** Calculation is based on the avergae reading speed that around 300 words per minute (wpm).\",\r\n title: \"Terms & Conditions\",\r\n },\r\n user: {\r\n accountsVisited: \"Accounts Visited\",\r\n activeUsers: \"Active Users\",\r\n allUsers: \"All Users\",\r\n confirmDisableTitle: \"Are you sure you want to disable this User\",\r\n confirmDisableMessage:\r\n \"You are about to deactivate a user on this account, the license will expire at the end of the billing cycle.\",\r\n corporate: \"Corporate\",\r\n createNewUser: \"Create New User\",\r\n disableUser: \"Disable User\",\r\n user: \"User\",\r\n usersList: {\r\n title: \"Users List\",\r\n role: \"Role\",\r\n accessLevel: \"Access Level\",\r\n expirationDate: \"Expiration Date\"\r\n },\r\n accountServiced: {\r\n title: \"Accounts Serviced\",\r\n duration: \"Duration\",\r\n baitApplied: \"Bait Applied\",\r\n },\r\n personalInfo: \"Personal Info\",\r\n pendingUsers: \"Pending Users\",\r\n inactiveUsers: \"Inactive Users\",\r\n manageUsers: \"Manage Users\",\r\n mostActiveAccounts: \"Most Active Accounts\",\r\n accessLevels: \"Access Levels\",\r\n generalSettings: \"General Settings\",\r\n branchAccess: \"Branch Access\",\r\n timezone: \"Timezone\",\r\n dateFormat: \"Date Format\",\r\n editUser: \"Edit User\",\r\n enableUser: \"Enable User\",\r\n firstName: \"First Name\",\r\n lastName: \"Last Name\",\r\n newUser: \"New User\",\r\n profilePicture: \"Profile Picture\",\r\n selectOneAccessLevel: \"Must Select at least (1) Access Level\",\r\n selectOneBranch: \"Must Select at least (1) Branch\",\r\n sendVerification: \"Send Verification\",\r\n serviceLocations: \"Service Locations\",\r\n visitsLog: \"Visits Log\",\r\n lastAccountVisited: \"Last Account Visited\",\r\n },\r\n visit: {\r\n eventLog: \"Event Log\",\r\n timestamp: \"Timestamp\",\r\n manual: \"Manual\",\r\n auto: \"Auto\",\r\n serviceType: \"Service Type\",\r\n totalCaptures: \"Total Captures\",\r\n totalEvents: \"Total Events\",\r\n devicesServiced: \"Devices Serviced\",\r\n totalActiveDevices: \"Total Active Devices\"\r\n }\r\n};","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","import { DocumentNode, GraphQLError } from 'graphql';\nimport { equal } from \"@wry/equality\";\n\nimport { Cache, ApolloCache } from '../cache';\nimport { WatchQueryOptions, ErrorPolicy } from './watchQueryOptions';\nimport { ObservableQuery } from './ObservableQuery';\nimport { QueryListener } from './types';\nimport { FetchResult } from '../link/core';\nimport {\n ObservableSubscription,\n isNonEmptyArray,\n graphQLResultHasError,\n canUseWeakMap,\n} from '../utilities';\nimport {\n NetworkStatus,\n isNetworkRequestInFlight,\n} from './networkStatus';\nimport { ApolloError } from '../errors';\n\nexport type QueryStoreValue = Pick;\n\nconst destructiveMethodCounts = new (\n canUseWeakMap ? WeakMap : Map\n), number>();\n\nfunction wrapDestructiveCacheMethod(\n cache: ApolloCache,\n methodName: keyof ApolloCache,\n) {\n const original = cache[methodName];\n if (typeof original === \"function\") {\n cache[methodName] = function () {\n destructiveMethodCounts.set(\n cache,\n // The %1e15 allows the count to wrap around to 0 safely every\n // quadrillion evictions, so there's no risk of overflow. To be\n // clear, this is more of a pedantic principle than something\n // that matters in any conceivable practical scenario.\n (destructiveMethodCounts.get(cache)! + 1) % 1e15,\n );\n return original.apply(this, arguments);\n };\n }\n}\n\nfunction cancelNotifyTimeout(info: QueryInfo) {\n if (info[\"notifyTimeout\"]) {\n clearTimeout(info[\"notifyTimeout\"]);\n info[\"notifyTimeout\"] = void 0;\n }\n}\n\n// A QueryInfo object represents a single query managed by the\n// QueryManager, which tracks all QueryInfo objects by queryId in its\n// this.queries Map. QueryInfo objects store the latest results and errors\n// for the given query, and are responsible for reporting those results to\n// the corresponding ObservableQuery, via the QueryInfo.notify method.\n// Results are reported asynchronously whenever setDiff marks the\n// QueryInfo object as dirty, though a call to the QueryManager's\n// broadcastQueries method may trigger the notification before it happens\n// automatically. This class used to be a simple interface type without\n// any field privacy or meaningful methods, which is why it still has so\n// many public fields. The effort to lock down and simplify the QueryInfo\n// interface is ongoing, and further improvements are welcome.\nexport class QueryInfo {\n listeners = new Set();\n document: DocumentNode | null = null;\n lastRequestId = 1;\n subscriptions = new Set();\n variables?: Record;\n networkStatus?: NetworkStatus;\n networkError?: Error | null;\n graphQLErrors?: ReadonlyArray;\n stopped = false;\n\n constructor(private cache: ApolloCache) {\n // Track how often cache.evict is called, since we want eviction to\n // override the feud-stopping logic in the markResult method, by\n // causing shouldWrite to return true. Wrapping the cache.evict method\n // is a bit of a hack, but it saves us from having to make eviction\n // counting an official part of the ApolloCache API.\n if (!destructiveMethodCounts.has(cache)) {\n destructiveMethodCounts.set(cache, 0);\n wrapDestructiveCacheMethod(cache, \"evict\");\n wrapDestructiveCacheMethod(cache, \"modify\");\n wrapDestructiveCacheMethod(cache, \"reset\");\n }\n }\n\n public init(query: {\n document: DocumentNode;\n variables: Record | undefined,\n // The initial networkStatus for this fetch, most often\n // NetworkStatus.loading, but also possibly fetchMore, poll, refetch,\n // or setVariables.\n networkStatus?: NetworkStatus,\n observableQuery?: ObservableQuery;\n lastRequestId?: number;\n }): this {\n let 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\n if (!equal(query.variables, this.variables)) {\n this.diff = null;\n }\n\n Object.assign(this, {\n document: query.document,\n variables: query.variables,\n networkError: null,\n graphQLErrors: this.graphQLErrors || [],\n networkStatus,\n });\n\n if (query.observableQuery) {\n this.setObservableQuery(query.observableQuery);\n }\n\n if (query.lastRequestId) {\n this.lastRequestId = query.lastRequestId;\n }\n\n return this;\n }\n\n private dirty: boolean = false;\n\n private notifyTimeout?: ReturnType;\n\n private diff: Cache.DiffResult | null = null;\n\n getDiff(variables = this.variables): Cache.DiffResult {\n if (this.diff && equal(variables, this.variables)) {\n return this.diff;\n }\n\n this.updateWatch(this.variables = variables);\n\n return this.diff = this.cache.diff({\n query: this.document!,\n variables,\n returnPartialData: true,\n optimistic: true,\n });\n }\n\n setDiff(diff: Cache.DiffResult | null) {\n const oldDiff = this.diff;\n this.diff = diff;\n if (!this.dirty &&\n (diff && diff.result) !== (oldDiff && oldDiff.result)) {\n this.dirty = true;\n if (!this.notifyTimeout) {\n this.notifyTimeout = setTimeout(() => this.notify(), 0);\n }\n }\n }\n\n public readonly observableQuery: ObservableQuery | null = null;\n private oqListener?: QueryListener;\n\n setObservableQuery(oq: ObservableQuery | null) {\n if (oq === this.observableQuery) return;\n\n if (this.oqListener) {\n this.listeners.delete(this.oqListener);\n }\n\n (this as any).observableQuery = oq;\n\n if (oq) {\n oq[\"queryInfo\"] = this;\n this.listeners.add(this.oqListener = () => {\n // If this.diff came from an optimistic transaction, deliver the\n // current cache data to the ObservableQuery, but don't perform a\n // full reobservation, since oq.reobserve might make a network\n // request, and we don't want to trigger network requests for\n // optimistic updates.\n if (this.getDiff().fromOptimisticTransaction) {\n oq[\"observe\"]();\n } else {\n oq.reobserve();\n }\n });\n } else {\n delete this.oqListener;\n }\n }\n\n notify() {\n cancelNotifyTimeout(this);\n\n if (this.shouldNotify()) {\n this.listeners.forEach(listener => listener(this));\n }\n\n this.dirty = false;\n }\n\n private shouldNotify() {\n if (!this.dirty || !this.listeners.size) {\n return false;\n }\n\n if (isNetworkRequestInFlight(this.networkStatus) &&\n this.observableQuery) {\n const { fetchPolicy } = this.observableQuery.options;\n if (fetchPolicy !== \"cache-only\" &&\n fetchPolicy !== \"cache-and-network\") {\n return false;\n }\n }\n\n return true;\n }\n\n public stop() {\n if (!this.stopped) {\n this.stopped = true;\n\n this.cancel();\n // Revert back to the no-op version of cancel inherited from\n // QueryInfo.prototype.\n delete this.cancel;\n\n this.subscriptions.forEach(sub => sub.unsubscribe());\n\n const oq = this.observableQuery;\n if (oq) oq.stopPolling();\n }\n }\n\n // This method is a no-op by default, until/unless overridden by the\n // updateWatch method.\n private cancel() {}\n\n private lastWatch?: Cache.WatchOptions;\n\n private updateWatch(variables = this.variables) {\n const 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,\n optimistic: true,\n callback: diff => this.setDiff(diff),\n });\n }\n }\n\n private lastWrite?: {\n result: FetchResult;\n variables: WatchQueryOptions[\"variables\"];\n dmCount: number | undefined;\n };\n\n private shouldWrite(\n result: FetchResult,\n variables: WatchQueryOptions[\"variables\"],\n ) {\n const { lastWrite } = this;\n return !(\n lastWrite &&\n // If cache.evict has been called since the last time we wrote this\n // data into the cache, there's a chance writing this result into\n // the cache will repair what was evicted.\n lastWrite.dmCount === destructiveMethodCounts.get(this.cache) &&\n equal(variables, lastWrite.variables) &&\n equal(result.data, lastWrite.result.data)\n );\n }\n\n public markResult(\n result: FetchResult,\n options: Pick,\n allowCacheWrite: boolean,\n ) {\n this.graphQLErrors = isNonEmptyArray(result.errors) ? result.errors : [];\n\n // If there is a pending notify timeout, cancel it because we are\n // about to update this.diff to hold the latest data, and we can\n // assume the data will be broadcast through some other mechanism.\n cancelNotifyTimeout(this);\n\n if (options.fetchPolicy === 'no-cache') {\n this.diff = { result: result.data, complete: true };\n\n } else if (allowCacheWrite) {\n if (shouldWriteResult(result, options.errorPolicy)) {\n // Using a transaction here so we have a chance to read the result\n // back from the cache before the watch callback fires as a result\n // of writeQuery, so we can store the new diff quietly and ignore\n // it when we receive it redundantly from the watch callback.\n this.cache.performTransaction(cache => {\n if (this.shouldWrite(result, options.variables)) {\n cache.writeQuery({\n query: this.document!,\n data: result.data as T,\n variables: options.variables,\n });\n\n this.lastWrite = {\n result,\n variables: options.variables,\n dmCount: destructiveMethodCounts.get(this.cache),\n };\n } else {\n // If result is the same as the last result we received from\n // the network (and the variables match too), avoid writing\n // result into the cache again. The wisdom of skipping this\n // cache write is far from obvious, since any cache write\n // could be the one that puts the cache back into a desired\n // state, fixing corruption or missing data. However, if we\n // always write every network result into the cache, we enable\n // feuds between queries competing to update the same data in\n // incompatible ways, which can lead to an endless cycle of\n // cache broadcasts and useless network requests. As with any\n // feud, eventually one side must step back from the brink,\n // letting the other side(s) have the last word(s). There may\n // be other points where we could break this cycle, such as\n // silencing the broadcast for cache.writeQuery (not a good\n // idea, since it just delays the feud a bit) or somehow\n // avoiding the network request that just happened (also bad,\n // because the server could return useful new data). All\n // options considered, skipping this cache write seems to be\n // the least damaging place to break the cycle, because it\n // reflects the intuition that we recently wrote this exact\n // result into the cache, so the cache *should* already/still\n // contain this data. If some other query has clobbered that\n // data in the meantime, that's too bad, but there will be no\n // winners if every query blindly reverts to its own version\n // of the data. This approach also gives the network a chance\n // to return new data, which will be written into the cache as\n // usual, notifying only those queries that are directly\n // affected by the cache updates, as usual. In the future, an\n // even more sophisticated cache could perhaps prevent or\n // mitigate the clobbering somehow, but that would make this\n // particular cache write even less important, and thus\n // skipping it would be even safer than it is today.\n if (this.diff && this.diff.complete) {\n // Reuse data from the last good (complete) diff that we\n // received, when possible.\n result.data = this.diff.result;\n return;\n }\n // If the previous this.diff was incomplete, fall through to\n // re-reading the latest data with cache.diff, below.\n }\n\n const diff = cache.diff({\n query: this.document!,\n variables: options.variables,\n returnPartialData: true,\n optimistic: true,\n });\n\n // In case the QueryManager stops this QueryInfo before its\n // results are delivered, it's important to avoid restarting the\n // cache watch when markResult is called.\n if (!this.stopped) {\n // Any time we're about to update this.diff, we need to make\n // sure we've started watching the cache.\n this.updateWatch(options.variables);\n }\n\n // If we're allowed to write to the cache, and we can read a\n // complete result from the cache, update result.data to be the\n // result from the cache, rather than the raw network result.\n // Set without setDiff to avoid triggering a notify call, since\n // we have other ways of notifying for this result.\n this.diff = diff;\n if (diff.complete) {\n result.data = diff.result;\n }\n });\n\n } else {\n this.lastWrite = void 0;\n }\n }\n }\n\n public markReady() {\n this.networkError = null;\n return this.networkStatus = NetworkStatus.ready;\n }\n\n public markError(error: ApolloError) {\n this.networkStatus = NetworkStatus.error;\n this.lastWrite = void 0;\n\n cancelNotifyTimeout(this);\n\n if (error.graphQLErrors) {\n this.graphQLErrors = error.graphQLErrors;\n }\n\n if (error.networkError) {\n this.networkError = error.networkError;\n }\n\n return error;\n }\n}\n\nexport function shouldWriteResult(\n result: FetchResult,\n errorPolicy: ErrorPolicy = \"none\",\n) {\n const ignoreErrors =\n errorPolicy === \"ignore\" ||\n errorPolicy === \"all\";\n let writeWithErrors = !graphQLResultHasError(result);\n if (!writeWithErrors && ignoreErrors && result.data) {\n writeWithErrors = true;\n }\n return writeWithErrors;\n}\n","import { ExecutionResult, DocumentNode } from 'graphql';\nimport { invariant, InvariantError } from 'ts-invariant';\n\nimport { ApolloLink, FetchResult, GraphQLRequest, execute } from '../link/core';\nimport { ApolloCache, DataProxy } from '../cache';\nimport { Observable, compact } from '../utilities';\nimport { version } from '../version';\nimport { HttpLink, UriFunction } from '../link/http';\n\nimport { QueryManager } from './QueryManager';\nimport { ObservableQuery } from './ObservableQuery';\n\nimport {\n ApolloQueryResult,\n OperationVariables,\n Resolvers,\n} from './types';\n\nimport {\n QueryOptions,\n WatchQueryOptions,\n MutationOptions,\n SubscriptionOptions,\n WatchQueryFetchPolicy,\n} from './watchQueryOptions';\n\nimport {\n LocalState,\n FragmentMatcher,\n} from './LocalState';\n\nexport interface DefaultOptions {\n watchQuery?: Partial>;\n query?: Partial>;\n mutate?: Partial>;\n}\n\nlet hasSuggestedDevtools = false;\n\nexport type ApolloClientOptions = {\n uri?: string | UriFunction;\n credentials?: string;\n headers?: Record;\n link?: ApolloLink;\n cache: ApolloCache;\n ssrForceFetchDelay?: number;\n ssrMode?: boolean;\n connectToDevTools?: boolean;\n queryDeduplication?: boolean;\n defaultOptions?: DefaultOptions;\n assumeImmutableResults?: boolean;\n resolvers?: Resolvers | Resolvers[];\n typeDefs?: string | string[] | DocumentNode | DocumentNode[];\n fragmentMatcher?: FragmentMatcher;\n name?: string;\n version?: string;\n};\n\ntype OptionsUnion =\n | WatchQueryOptions\n | QueryOptions\n | MutationOptions;\n\nexport function mergeOptions<\n TOptions extends OptionsUnion\n>(\n defaults: Partial,\n options: TOptions,\n): TOptions {\n return compact(defaults, options, options.variables && {\n variables: {\n ...defaults.variables,\n ...options.variables,\n },\n });\n}\n\n/**\n * This is the primary Apollo Client class. It is used to send GraphQL documents (i.e. queries\n * and mutations) to a GraphQL spec-compliant server over a {@link NetworkInterface} instance,\n * receive results from the server and cache the results in a store. It also delivers updates\n * to GraphQL queries through {@link Observable} instances.\n */\nexport class ApolloClient implements DataProxy {\n public link: ApolloLink;\n public cache: ApolloCache;\n public disableNetworkFetches: boolean;\n public version: string;\n public queryDeduplication: boolean;\n public defaultOptions: DefaultOptions = {};\n public readonly typeDefs: ApolloClientOptions['typeDefs'];\n\n private queryManager: QueryManager;\n private devToolsHookCb: Function;\n private resetStoreCallbacks: Array<() => Promise> = [];\n private clearStoreCallbacks: Array<() => Promise> = [];\n private localState: LocalState;\n\n /**\n * Constructs an instance of {@link ApolloClient}.\n *\n * @param uri The GraphQL endpoint that Apollo Client will connect to. If\n * `link` is configured, this option is ignored.\n * @param link The {@link ApolloLink} over which GraphQL documents will be resolved into a response.\n *\n * @param cache The initial cache to use in the data store.\n *\n * @param ssrMode Determines whether this is being run in Server Side Rendering (SSR) mode.\n *\n * @param ssrForceFetchDelay Determines the time interval before we force fetch queries for a\n * server side render.\n *\n * @param queryDeduplication If set to false, a query will still be sent to the server even if a query\n * with identical parameters (query, variables, operationName) is already in flight.\n *\n * @param defaultOptions Used to set application wide defaults for the\n * options supplied to `watchQuery`, `query`, or\n * `mutate`.\n *\n * @param assumeImmutableResults When this option is true, the client will assume results\n * read from the cache are never mutated by application code,\n * which enables substantial performance optimizations. Passing\n * `{ freezeResults: true }` to the `InMemoryCache` constructor\n * can help enforce this immutability.\n *\n * @param name A custom name that can be used to identify this client, when\n * using Apollo client awareness features. E.g. \"iOS\".\n *\n * @param version A custom version that can be used to identify this client,\n * when using Apollo client awareness features. This is the\n * version of your client, which you may want to increment on\n * new builds. This is NOT the version of Apollo Client that\n * you are using.\n */\n constructor(options: ApolloClientOptions) {\n const {\n uri,\n credentials,\n headers,\n cache,\n ssrMode = false,\n ssrForceFetchDelay = 0,\n connectToDevTools =\n // Expose the client instance as window.__APOLLO_CLIENT__ and call\n // onBroadcast in queryManager.broadcastQueries to enable browser\n // devtools, but disable them by default in production.\n typeof window === 'object' &&\n !(window as any).__APOLLO_CLIENT__ &&\n process.env.NODE_ENV !== 'production',\n queryDeduplication = true,\n defaultOptions,\n assumeImmutableResults = false,\n resolvers,\n typeDefs,\n fragmentMatcher,\n name: clientAwarenessName,\n version: clientAwarenessVersion,\n } = options;\n\n let { link } = options;\n\n if (!link) {\n link = uri\n ? new HttpLink({ uri, credentials, headers })\n : ApolloLink.empty();\n }\n\n if (!cache) {\n throw new InvariantError(\n \"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 }\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\n if (ssrForceFetchDelay) {\n setTimeout(\n () => (this.disableNetworkFetches = false),\n ssrForceFetchDelay,\n );\n }\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\n if (connectToDevTools && typeof window === 'object') {\n (window as any).__APOLLO_CLIENT__ = this;\n }\n\n /**\n * Suggest installing the devtools for developers who don't have them\n */\n if (!hasSuggestedDevtools && process.env.NODE_ENV !== 'production') {\n hasSuggestedDevtools = true;\n if (\n typeof window !== 'undefined' &&\n window.document &&\n window.top === window.self &&\n !(window as any).__APOLLO_DEVTOOLS_GLOBAL_HOOK__\n ) {\n const nav = window.navigator;\n const ua = nav && nav.userAgent;\n let url: string | undefined;\n if (typeof ua === \"string\") {\n if (ua.indexOf(\"Chrome/\") > -1) {\n url = \"https://chrome.google.com/webstore/detail/\" +\n \"apollo-client-developer-t/jdkknkkbebbapilgoeccciglkfbmbnfm\";\n } else if (ua.indexOf(\"Firefox/\") > -1) {\n url = \"https://addons.mozilla.org/en-US/firefox/addon/apollo-developer-tools/\";\n }\n }\n if (url) {\n invariant.log(\n \"Download the Apollo DevTools for a better development \" +\n \"experience: \" + url\n );\n }\n }\n }\n\n this.version = version;\n\n this.localState = new LocalState({\n cache,\n client: this,\n resolvers,\n fragmentMatcher,\n });\n\n this.queryManager = new QueryManager({\n cache: this.cache,\n link: this.link,\n queryDeduplication,\n ssrMode,\n clientAwareness: {\n name: clientAwarenessName!,\n version: clientAwarenessVersion!,\n },\n localState: this.localState,\n assumeImmutableResults,\n onBroadcast: connectToDevTools ? () => {\n if (this.devToolsHookCb) {\n this.devToolsHookCb({\n action: {},\n state: {\n queries: this.queryManager.getQueryStore(),\n mutations: this.queryManager.mutationStore || {},\n },\n dataWithOptimisticResults: this.cache.extract(true),\n });\n }\n } : void 0,\n });\n }\n\n /**\n * Call this method to terminate any active client processes, making it safe\n * to dispose of this `ApolloClient` instance.\n */\n public stop() {\n this.queryManager.stop();\n }\n\n /**\n * This watches the cache store of the query according to the options specified and\n * returns an {@link ObservableQuery}. We can subscribe to this {@link ObservableQuery} and\n * receive updated results through a GraphQL observer when the cache store changes.\n *

\n * Note that this method is not an implementation of GraphQL subscriptions. Rather,\n * it uses Apollo's store in order to reactively deliver updates to your query results.\n *

\n * For example, suppose you call watchQuery on a GraphQL query that fetches a person's\n * first and last name and this person has a particular object identifer, provided by\n * dataIdFromObject. Later, a different query fetches that same person's\n * first and last name and the first name has now changed. Then, any observers associated\n * with the results of the first query will be updated with a new result object.\n *

\n * Note that if the cache does not change, the subscriber will *not* be notified.\n *

\n * See [here](https://medium.com/apollo-stack/the-concepts-of-graphql-bc68bd819be3#.3mb0cbcmc) for\n * a description of store reactivity.\n */\n public watchQuery(\n options: WatchQueryOptions,\n ): ObservableQuery {\n if (this.defaultOptions.watchQuery) {\n options = mergeOptions(this.defaultOptions.watchQuery, options);\n }\n\n // XXX Overwriting options is probably not the best way to do this long term...\n if (\n this.disableNetworkFetches &&\n (options.fetchPolicy === 'network-only' ||\n options.fetchPolicy === 'cache-and-network')\n ) {\n options = { ...options, fetchPolicy: 'cache-first' };\n }\n\n return this.queryManager.watchQuery(options);\n }\n\n /**\n * This resolves a single query according to the options specified and\n * returns a {@link Promise} which is either resolved with the resulting data\n * or rejected with an error.\n *\n * @param options An object of type {@link QueryOptions} that allows us to\n * describe how this query should be treated e.g. whether it should hit the\n * server at all or just resolve from the cache, etc.\n */\n public query(\n options: QueryOptions,\n ): Promise> {\n if (this.defaultOptions.query) {\n options = mergeOptions(this.defaultOptions.query, options);\n }\n\n invariant(\n (options.fetchPolicy as WatchQueryFetchPolicy) !== 'cache-and-network',\n '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 );\n\n if (this.disableNetworkFetches && options.fetchPolicy === 'network-only') {\n options = { ...options, fetchPolicy: 'cache-first' };\n }\n\n return this.queryManager.query(options);\n }\n\n /**\n * This resolves a single mutation according to the options specified and returns a\n * {@link Promise} which is either resolved with the resulting data or rejected with an\n * error.\n *\n * It takes options as an object with the following keys and values:\n */\n public mutate(\n options: MutationOptions,\n ): Promise> {\n if (this.defaultOptions.mutate) {\n options = mergeOptions(this.defaultOptions.mutate, options);\n }\n return this.queryManager.mutate(options);\n }\n\n /**\n * This subscribes to a graphql subscription according to the options specified and returns an\n * {@link Observable} which either emits received data or an error.\n */\n public subscribe(\n options: SubscriptionOptions,\n ): Observable> {\n return this.queryManager.startGraphQLSubscription(options);\n }\n\n /**\n * Tries to read some data from the store in the shape of the provided\n * GraphQL query without making a network request. This method will start at\n * the root query. To start at a specific id returned by `dataIdFromObject`\n * use `readFragment`.\n *\n * @param optimistic Set to `true` to allow `readQuery` to return\n * optimistic results. Is `false` by default.\n */\n public readQuery(\n options: DataProxy.Query,\n optimistic: boolean = false,\n ): T | null {\n return this.cache.readQuery(options, optimistic);\n }\n\n /**\n * Tries to read some data from the store in the shape of the provided\n * GraphQL fragment without making a network request. This method will read a\n * GraphQL fragment from any arbitrary id that is currently cached, unlike\n * `readQuery` which will only read from the root query.\n *\n * You must pass in a GraphQL document with a single fragment or a document\n * with multiple fragments that represent what you are reading. If you pass\n * in a document with multiple fragments then you must also specify a\n * `fragmentName`.\n *\n * @param optimistic Set to `true` to allow `readFragment` to return\n * optimistic results. Is `false` by default.\n */\n public readFragment(\n options: DataProxy.Fragment,\n optimistic: boolean = false,\n ): T | null {\n return this.cache.readFragment(options, optimistic);\n }\n\n /**\n * Writes some data in the shape of the provided GraphQL query directly to\n * the store. This method will start at the root query. To start at a\n * specific id returned by `dataIdFromObject` then use `writeFragment`.\n */\n public writeQuery(\n options: DataProxy.WriteQueryOptions,\n ): void {\n this.cache.writeQuery(options);\n this.queryManager.broadcastQueries();\n }\n\n /**\n * Writes some data in the shape of the provided GraphQL fragment directly to\n * the store. This method will write to a GraphQL fragment from any arbitrary\n * id that is currently cached, unlike `writeQuery` which will only write\n * from the root query.\n *\n * You must pass in a GraphQL document with a single fragment or a document\n * with multiple fragments that represent what you are writing. If you pass\n * in a document with multiple fragments then you must also specify a\n * `fragmentName`.\n */\n public writeFragment(\n options: DataProxy.WriteFragmentOptions,\n ): void {\n this.cache.writeFragment(options);\n this.queryManager.broadcastQueries();\n }\n\n public __actionHookForDevTools(cb: () => any) {\n this.devToolsHookCb = cb;\n }\n\n public __requestRaw(payload: GraphQLRequest): Observable {\n return execute(this.link, payload);\n }\n\n /**\n * Resets your entire store by clearing out your cache and then re-executing\n * all of your active queries. This makes it so that you may guarantee that\n * there is no data left in your store from a time before you called this\n * method.\n *\n * `resetStore()` is useful when your user just logged out. You’ve removed the\n * user session, and you now want to make sure that any references to data you\n * might have fetched while the user session was active is gone.\n *\n * It is important to remember that `resetStore()` *will* refetch any active\n * queries. This means that any components that might be mounted will execute\n * their queries again using your network interface. If you do not want to\n * re-execute any queries then you should make sure to stop watching any\n * active queries.\n */\n public resetStore(): Promise[] | null> {\n return Promise.resolve()\n .then(() => this.queryManager.clearStore())\n .then(() => Promise.all(this.resetStoreCallbacks.map(fn => fn())))\n .then(() => this.reFetchObservableQueries());\n }\n\n /**\n * Remove all data from the store. Unlike `resetStore`, `clearStore` will\n * not refetch any active queries.\n */\n public clearStore(): Promise {\n return Promise.resolve()\n .then(() => this.queryManager.clearStore())\n .then(() => Promise.all(this.clearStoreCallbacks.map(fn => fn())));\n }\n\n /**\n * Allows callbacks to be registered that are executed when the store is\n * reset. `onResetStore` returns an unsubscribe function that can be used\n * to remove registered callbacks.\n */\n public onResetStore(cb: () => Promise): () => void {\n this.resetStoreCallbacks.push(cb);\n return () => {\n this.resetStoreCallbacks = this.resetStoreCallbacks.filter(c => c !== cb);\n };\n }\n\n /**\n * Allows callbacks to be registered that are executed when the store is\n * cleared. `onClearStore` returns an unsubscribe function that can be used\n * to remove registered callbacks.\n */\n public onClearStore(cb: () => Promise): () => void {\n this.clearStoreCallbacks.push(cb);\n return () => {\n this.clearStoreCallbacks = this.clearStoreCallbacks.filter(c => c !== cb);\n };\n }\n\n /**\n * Refetches all of your active queries.\n *\n * `reFetchObservableQueries()` is useful if you want to bring the client back to proper state in case of a network outage\n *\n * It is important to remember that `reFetchObservableQueries()` *will* refetch any active\n * queries. This means that any components that might be mounted will execute\n * their queries again using your network interface. If you do not want to\n * re-execute any queries then you should make sure to stop watching any\n * active queries.\n * Takes optional parameter `includeStandby` which will include queries in standby-mode when refetching.\n */\n public reFetchObservableQueries(\n includeStandby?: boolean,\n ): Promise[]> {\n return this.queryManager.reFetchObservableQueries(includeStandby);\n }\n\n /**\n * Exposes the cache's complete state, in a serializable format for later restoration.\n */\n public extract(optimistic?: boolean): TCacheShape {\n return this.cache.extract(optimistic);\n }\n\n /**\n * Replaces existing state in the cache (if any) with the values expressed by\n * `serializedState`.\n *\n * Called when hydrating a cache (server side rendering, or offline storage),\n * and also (potentially) during hot reloads.\n */\n public restore(serializedState: TCacheShape): ApolloCache {\n return this.cache.restore(serializedState);\n }\n\n /**\n * Add additional local resolvers.\n */\n public addResolvers(resolvers: Resolvers | Resolvers[]) {\n this.localState.addResolvers(resolvers);\n }\n\n /**\n * Set (override existing) local resolvers.\n */\n public setResolvers(resolvers: Resolvers | Resolvers[]) {\n this.localState.setResolvers(resolvers);\n }\n\n /**\n * Get all registered local resolvers.\n */\n public getResolvers() {\n return this.localState.getResolvers();\n }\n\n /**\n * Set a custom local state fragment matcher.\n */\n public setLocalStateFragmentMatcher(fragmentMatcher: FragmentMatcher) {\n this.localState.setFragmentMatcher(fragmentMatcher);\n }\n\n /**\n * Define a new ApolloLink (or link chain) that Apollo Client will use.\n */\n public setLink(newLink: ApolloLink) {\n this.link = this.queryManager.link = newLink;\n }\n}\n","import {\n DocumentNode,\n OperationDefinitionNode,\n SelectionSetNode,\n SelectionNode,\n InlineFragmentNode,\n FragmentDefinitionNode,\n FieldNode,\n ASTNode,\n visit,\n BREAK,\n} from 'graphql';\nimport { invariant } from 'ts-invariant';\n\nimport { ApolloCache } from '../cache';\nimport {\n FragmentMap,\n StoreObject,\n argumentsObjectFromField,\n buildQueryFromSelectionSet,\n createFragmentMap,\n getFragmentDefinitions,\n getMainDefinition,\n hasDirectives,\n isField,\n isInlineFragment,\n mergeDeep,\n mergeDeepArray,\n removeClientSetsFromDocument,\n resultKeyNameFromField,\n shouldInclude,\n} from '../utilities';\nimport { ApolloClient } from './ApolloClient';\nimport { Resolvers, OperationVariables } from './types';\nimport { FetchResult } from '../link/core';\nimport { cacheSlot } from '../cache';\n\nexport type Resolver = (\n rootValue?: any,\n args?: any,\n context?: any,\n info?: {\n field: FieldNode;\n fragmentMap: FragmentMap;\n },\n) => any;\n\nexport type VariableMap = { [name: string]: any };\n\nexport type FragmentMatcher = (\n rootValue: any,\n typeCondition: string,\n context: any,\n) => boolean;\n\nexport type ExecContext = {\n fragmentMap: FragmentMap;\n context: any;\n variables: VariableMap;\n fragmentMatcher: FragmentMatcher;\n defaultOperationType: string;\n exportedVariables: Record;\n onlyRunForcedResolvers: boolean;\n};\n\nexport type LocalStateOptions = {\n cache: ApolloCache;\n client?: ApolloClient;\n resolvers?: Resolvers | Resolvers[];\n fragmentMatcher?: FragmentMatcher;\n};\n\nexport class LocalState {\n private cache: ApolloCache;\n private client: ApolloClient;\n private resolvers?: Resolvers;\n private fragmentMatcher: FragmentMatcher;\n\n constructor({\n cache,\n client,\n resolvers,\n fragmentMatcher,\n }: LocalStateOptions) {\n this.cache = cache;\n\n if (client) {\n this.client = client;\n }\n\n if (resolvers) {\n this.addResolvers(resolvers);\n }\n\n if (fragmentMatcher) {\n this.setFragmentMatcher(fragmentMatcher);\n }\n }\n\n public addResolvers(resolvers: Resolvers | Resolvers[]) {\n this.resolvers = this.resolvers || {};\n if (Array.isArray(resolvers)) {\n resolvers.forEach(resolverGroup => {\n this.resolvers = mergeDeep(this.resolvers, resolverGroup);\n });\n } else {\n this.resolvers = mergeDeep(this.resolvers, resolvers);\n }\n }\n\n public setResolvers(resolvers: Resolvers | Resolvers[]) {\n this.resolvers = {};\n this.addResolvers(resolvers);\n }\n\n public getResolvers() {\n return this.resolvers || {};\n }\n\n // Run local client resolvers against the incoming query and remote data.\n // Locally resolved field values are merged with the incoming remote data,\n // and returned. Note that locally resolved fields will overwrite\n // remote data using the same field name.\n public async runResolvers({\n document,\n remoteResult,\n context,\n variables,\n onlyRunForcedResolvers = false,\n }: {\n document: DocumentNode | null;\n remoteResult: FetchResult;\n context?: Record;\n variables?: Record;\n onlyRunForcedResolvers?: boolean;\n }): Promise> {\n if (document) {\n return this.resolveDocument(\n document,\n remoteResult.data,\n context,\n variables,\n this.fragmentMatcher,\n onlyRunForcedResolvers,\n ).then(localResult => ({\n ...remoteResult,\n data: localResult.result,\n }));\n }\n\n return remoteResult;\n }\n\n public setFragmentMatcher(fragmentMatcher: FragmentMatcher) {\n this.fragmentMatcher = fragmentMatcher;\n }\n\n public getFragmentMatcher(): FragmentMatcher {\n return this.fragmentMatcher;\n }\n\n // Client queries contain everything in the incoming document (if a @client\n // directive is found).\n public clientQuery(document: DocumentNode) {\n if (hasDirectives(['client'], document)) {\n if (this.resolvers) {\n return document;\n }\n }\n return null;\n }\n\n // Server queries are stripped of all @client based selection sets.\n public serverQuery(document: DocumentNode) {\n return removeClientSetsFromDocument(document);\n }\n\n public prepareContext(context?: Record) {\n const { cache } = this;\n return {\n ...context,\n cache,\n // Getting an entry's cache key is useful for local state resolvers.\n getCacheKey(obj: StoreObject) {\n return cache.identify(obj);\n },\n };\n }\n\n // To support `@client @export(as: \"someVar\")` syntax, we'll first resolve\n // @client @export fields locally, then pass the resolved values back to be\n // used alongside the original operation variables.\n public async addExportedVariables(\n document: DocumentNode,\n variables: OperationVariables = {},\n context = {},\n ) {\n if (document) {\n return this.resolveDocument(\n document,\n this.buildRootValueFromCache(document, variables) || {},\n this.prepareContext(context),\n variables,\n ).then(data => ({\n ...variables,\n ...data.exportedVariables,\n }));\n }\n\n return {\n ...variables,\n };\n }\n\n public shouldForceResolvers(document: ASTNode) {\n let forceResolvers = false;\n visit(document, {\n Directive: {\n enter(node) {\n if (node.name.value === 'client' && node.arguments) {\n forceResolvers = node.arguments.some(\n arg =>\n 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\n // Query the cache and return matching data.\n private buildRootValueFromCache(\n document: DocumentNode,\n variables?: Record,\n ) {\n return this.cache.diff({\n query: buildQueryFromSelectionSet(document),\n variables,\n returnPartialData: true,\n optimistic: false,\n }).result;\n }\n\n private async resolveDocument(\n document: DocumentNode,\n rootValue: TData,\n context: any = {},\n variables: VariableMap = {},\n fragmentMatcher: FragmentMatcher = () => true,\n onlyRunForcedResolvers: boolean = false,\n ) {\n const mainDefinition = getMainDefinition(document);\n const fragments = getFragmentDefinitions(document);\n const fragmentMap = createFragmentMap(fragments);\n\n const definitionOperation = (mainDefinition as OperationDefinitionNode)\n .operation;\n\n const defaultOperationType = definitionOperation\n ? definitionOperation.charAt(0).toUpperCase() +\n definitionOperation.slice(1)\n : 'Query';\n\n const { cache, client } = this;\n const execContext: ExecContext = {\n fragmentMap,\n context: {\n ...context,\n cache,\n client,\n },\n variables,\n fragmentMatcher,\n defaultOperationType,\n exportedVariables: {},\n onlyRunForcedResolvers,\n };\n\n return this.resolveSelectionSet(\n mainDefinition.selectionSet,\n rootValue,\n execContext,\n ).then(result => ({\n result,\n exportedVariables: execContext.exportedVariables,\n }));\n }\n\n private async resolveSelectionSet(\n selectionSet: SelectionSetNode,\n rootValue: TData,\n execContext: ExecContext,\n ) {\n const { fragmentMap, context, variables } = execContext;\n const resultsToMerge: TData[] = [rootValue];\n\n const execute = async (selection: SelectionNode): Promise => {\n if (!shouldInclude(selection, variables)) {\n // Skip this entirely.\n return;\n }\n\n if (isField(selection)) {\n return this.resolveField(selection, rootValue, execContext).then(\n fieldResult => {\n if (typeof fieldResult !== 'undefined') {\n resultsToMerge.push({\n [resultKeyNameFromField(selection)]: fieldResult,\n } as TData);\n }\n },\n );\n }\n\n let fragment: InlineFragmentNode | FragmentDefinitionNode;\n\n if (isInlineFragment(selection)) {\n fragment = selection;\n } else {\n // This is a named fragment.\n fragment = fragmentMap[selection.name.value];\n invariant(fragment, `No fragment named ${selection.name.value}`);\n }\n\n if (fragment && fragment.typeCondition) {\n const typeCondition = fragment.typeCondition.name.value;\n if (execContext.fragmentMatcher(rootValue, typeCondition, context)) {\n return this.resolveSelectionSet(\n fragment.selectionSet,\n rootValue,\n execContext,\n ).then(fragmentResult => {\n resultsToMerge.push(fragmentResult);\n });\n }\n }\n };\n\n return Promise.all(selectionSet.selections.map(execute)).then(function() {\n return mergeDeepArray(resultsToMerge);\n });\n }\n\n private async resolveField(\n field: FieldNode,\n rootValue: any,\n execContext: ExecContext,\n ): Promise {\n const { variables } = execContext;\n const fieldName = field.name.value;\n const aliasedFieldName = resultKeyNameFromField(field);\n const aliasUsed = fieldName !== aliasedFieldName;\n const defaultResult = rootValue[aliasedFieldName] || rootValue[fieldName];\n let resultPromise = Promise.resolve(defaultResult);\n\n // Usually all local resolvers are run when passing through here, but\n // if we've specifically identified that we only want to run forced\n // resolvers (that is, resolvers for fields marked with\n // `@client(always: true)`), then we'll skip running non-forced resolvers.\n if (\n !execContext.onlyRunForcedResolvers ||\n this.shouldForceResolvers(field)\n ) {\n const resolverType =\n rootValue.__typename || execContext.defaultOperationType;\n const resolverMap = this.resolvers && this.resolvers[resolverType];\n if (resolverMap) {\n const resolve = resolverMap[aliasUsed ? fieldName : aliasedFieldName];\n if (resolve) {\n resultPromise = Promise.resolve(\n // In case the resolve function accesses reactive variables,\n // set cacheSlot to the current cache instance.\n cacheSlot.withValue(this.cache, resolve, [\n rootValue,\n argumentsObjectFromField(field, variables),\n execContext.context,\n { field, fragmentMap: execContext.fragmentMap },\n ])\n );\n }\n }\n }\n\n return resultPromise.then((result = defaultResult) => {\n // If an @export directive is associated with the current field, store\n // the `as` export variable name and current result for later use.\n if (field.directives) {\n field.directives.forEach(directive => {\n if (directive.name.value === 'export' && directive.arguments) {\n directive.arguments.forEach(arg => {\n if (arg.name.value === 'as' && arg.value.kind === 'StringValue') {\n execContext.exportedVariables[arg.value.value] = result;\n }\n });\n }\n });\n }\n\n // Handle all scalar types here.\n if (!field.selectionSet) {\n return result;\n }\n\n // From here down, the field has a selection set, which means it's trying\n // to query a GraphQLObjectType.\n if (result == null) {\n // Basically any field in a GraphQL response can be null, or missing\n return result;\n }\n\n if (Array.isArray(result)) {\n return this.resolveSubSelectedArray(field, result, execContext);\n }\n\n // Returned value is an object, and the query has a sub-selection. Recurse.\n if (field.selectionSet) {\n return this.resolveSelectionSet(\n field.selectionSet,\n result,\n execContext,\n );\n }\n });\n }\n\n private resolveSubSelectedArray(\n field: FieldNode,\n result: any[],\n execContext: ExecContext,\n ): any {\n return Promise.all(\n result.map(item => {\n if (item === null) {\n return null;\n }\n\n // This is a nested array, recurse.\n if (Array.isArray(item)) {\n return this.resolveSubSelectedArray(field, item, execContext);\n }\n\n // This is an object, run the selection set on it.\n if (field.selectionSet) {\n return this.resolveSelectionSet(field.selectionSet, item, execContext);\n }\n }),\n );\n }\n}\n","import { DocumentNode } from 'graphql';\nimport { invariant, InvariantError } from 'ts-invariant';\nimport { equal } from '@wry/equality';\n\nimport { ApolloLink, execute, FetchResult } from '../link/core';\nimport { Cache, ApolloCache } from '../cache';\n\nimport {\n getDefaultValues,\n getOperationDefinition,\n getOperationName,\n hasClientExports,\n graphQLResultHasError,\n removeConnectionDirectiveFromDocument,\n canUseWeakMap,\n ObservableSubscription,\n Observable,\n asyncMap,\n isNonEmptyArray,\n Concast,\n ConcastSourcesIterable,\n} from '../utilities';\nimport { ApolloError, isApolloError } from '../errors';\nimport {\n QueryOptions,\n WatchQueryOptions,\n SubscriptionOptions,\n MutationOptions,\n WatchQueryFetchPolicy,\n ErrorPolicy,\n} from './watchQueryOptions';\nimport { ObservableQuery } from './ObservableQuery';\nimport { NetworkStatus, isNetworkRequestInFlight } from './networkStatus';\nimport {\n ApolloQueryResult,\n OperationVariables,\n} from './types';\nimport { LocalState } from './LocalState';\n\nimport { QueryInfo, QueryStoreValue, shouldWriteResult } from './QueryInfo';\n\nconst { hasOwnProperty } = Object.prototype;\n\ninterface MutationStoreValue {\n mutation: DocumentNode;\n variables: Record;\n loading: boolean;\n error: Error | null;\n}\n\nexport class QueryManager {\n public cache: ApolloCache;\n public link: ApolloLink;\n public readonly assumeImmutableResults: boolean;\n public readonly ssrMode: boolean;\n\n private queryDeduplication: boolean;\n private clientAwareness: Record = {};\n private localState: LocalState;\n\n private onBroadcast?: () => void;\n public mutationStore?: {\n [mutationId: string]: MutationStoreValue;\n };\n\n // All the queries that the QueryManager is currently managing (not\n // including mutations and subscriptions).\n private queries = new Map();\n\n // Maps from queryId strings to Promise rejection functions for\n // currently active queries and fetches.\n private fetchCancelFns = new Map any>();\n\n constructor({\n cache,\n link,\n queryDeduplication = false,\n onBroadcast,\n ssrMode = false,\n clientAwareness = {},\n localState,\n assumeImmutableResults,\n }: {\n cache: ApolloCache;\n link: ApolloLink;\n queryDeduplication?: boolean;\n onBroadcast?: () => void;\n ssrMode?: boolean;\n clientAwareness?: Record;\n localState?: LocalState;\n assumeImmutableResults?: boolean;\n }) {\n this.cache = cache;\n this.link = link;\n this.queryDeduplication = queryDeduplication;\n this.clientAwareness = clientAwareness;\n this.localState = localState || new LocalState({ cache });\n this.ssrMode = ssrMode;\n this.assumeImmutableResults = !!assumeImmutableResults;\n if ((this.onBroadcast = onBroadcast)) {\n this.mutationStore = Object.create(null);\n }\n }\n\n /**\n * Call this method to terminate any active query processes, making it safe\n * to dispose of this QueryManager instance.\n */\n public stop() {\n this.queries.forEach((_info, queryId) => {\n this.stopQueryNoBroadcast(queryId);\n });\n\n this.cancelPendingFetches(\n new InvariantError('QueryManager stopped while query was in flight'),\n );\n }\n\n private cancelPendingFetches(error: Error) {\n this.fetchCancelFns.forEach(cancel => cancel(error));\n this.fetchCancelFns.clear();\n }\n\n public async mutate({\n mutation,\n variables,\n optimisticResponse,\n updateQueries,\n refetchQueries = [],\n awaitRefetchQueries = false,\n update: updateWithProxyFn,\n errorPolicy = 'none',\n fetchPolicy,\n context = {},\n }: MutationOptions): Promise> {\n invariant(\n mutation,\n 'mutation option is required. You must specify your GraphQL document in the mutation option.',\n );\n\n invariant(\n !fetchPolicy || fetchPolicy === 'no-cache',\n \"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 );\n\n const mutationId = this.generateMutationId();\n mutation = this.transform(mutation).document;\n\n variables = this.getVariables(mutation, variables);\n\n if (this.transform(mutation).hasClientExports) {\n variables = await this.localState.addExportedVariables(mutation, variables, context);\n }\n\n const mutationStoreValue =\n this.mutationStore &&\n (this.mutationStore[mutationId] = {\n mutation,\n variables,\n loading: true,\n error: null,\n } as MutationStoreValue);\n\n if (optimisticResponse) {\n this.markMutationOptimistic(optimisticResponse, {\n mutationId,\n document: mutation,\n variables,\n errorPolicy,\n updateQueries,\n update: updateWithProxyFn,\n });\n }\n\n this.broadcastQueries();\n\n const self = this;\n\n return new Promise((resolve, reject) => {\n let storeResult: FetchResult | null;\n let error: ApolloError;\n\n self.getObservableFromLink(\n mutation,\n {\n ...context,\n optimisticResponse,\n },\n variables,\n false,\n ).subscribe({\n next(result: FetchResult) {\n if (graphQLResultHasError(result) && errorPolicy === 'none') {\n error = new ApolloError({\n graphQLErrors: result.errors,\n });\n return;\n }\n\n if (mutationStoreValue) {\n mutationStoreValue.loading = false;\n mutationStoreValue.error = null;\n }\n\n if (fetchPolicy !== 'no-cache') {\n try {\n self.markMutationResult({\n mutationId,\n result,\n document: mutation,\n variables,\n errorPolicy,\n updateQueries,\n update: updateWithProxyFn,\n });\n } catch (e) {\n error = new ApolloError({\n networkError: e,\n });\n return;\n }\n }\n\n storeResult = result;\n },\n\n error(err: Error) {\n if (mutationStoreValue) {\n mutationStoreValue.loading = false;\n mutationStoreValue.error = err;\n }\n if (optimisticResponse) {\n self.cache.removeOptimistic(mutationId);\n }\n self.broadcastQueries();\n reject(\n new ApolloError({\n networkError: err,\n }),\n );\n },\n\n complete() {\n if (error && mutationStoreValue) {\n mutationStoreValue.loading = false;\n mutationStoreValue.error = error;\n }\n\n if (optimisticResponse) {\n self.cache.removeOptimistic(mutationId);\n }\n\n self.broadcastQueries();\n\n if (error) {\n reject(error);\n return;\n }\n\n // allow for conditional refetches\n // XXX do we want to make this the only API one day?\n if (typeof refetchQueries === 'function') {\n refetchQueries = refetchQueries(storeResult!);\n }\n\n const refetchQueryPromises: Promise<\n ApolloQueryResult[] | ApolloQueryResult<{}>\n >[] = [];\n\n if (isNonEmptyArray(refetchQueries)) {\n refetchQueries.forEach(refetchQuery => {\n if (typeof refetchQuery === 'string') {\n self.queries.forEach(({ observableQuery }) => {\n if (observableQuery &&\n observableQuery.queryName === refetchQuery) {\n refetchQueryPromises.push(observableQuery.refetch());\n }\n });\n } else {\n const queryOptions: QueryOptions = {\n query: refetchQuery.query,\n variables: refetchQuery.variables,\n fetchPolicy: 'network-only',\n };\n\n if (refetchQuery.context) {\n queryOptions.context = refetchQuery.context;\n }\n\n refetchQueryPromises.push(self.query(queryOptions));\n }\n });\n }\n\n Promise.all(\n awaitRefetchQueries ? refetchQueryPromises : [],\n ).then(() => {\n if (\n errorPolicy === 'ignore' &&\n storeResult &&\n graphQLResultHasError(storeResult)\n ) {\n delete storeResult.errors;\n }\n\n resolve(storeResult!);\n }, reject);\n },\n });\n });\n }\n\n public markMutationResult(\n mutation: {\n mutationId: string;\n result: FetchResult;\n document: DocumentNode;\n variables?: OperationVariables;\n errorPolicy: ErrorPolicy;\n updateQueries: MutationOptions[\"updateQueries\"],\n update?: (\n cache: ApolloCache,\n result: FetchResult,\n ) => void;\n },\n cache = this.cache,\n ) {\n if (shouldWriteResult(mutation.result, mutation.errorPolicy)) {\n const cacheWrites: Cache.WriteOptions[] = [{\n result: mutation.result.data,\n dataId: 'ROOT_MUTATION',\n query: mutation.document,\n variables: mutation.variables,\n }];\n\n const { updateQueries } = mutation;\n if (updateQueries) {\n this.queries.forEach(({ observableQuery }, queryId) => {\n const queryName = observableQuery && observableQuery.queryName;\n if (!queryName || !hasOwnProperty.call(updateQueries, queryName)) {\n return;\n }\n const updater = updateQueries[queryName];\n const { document, variables } = this.queries.get(queryId)!;\n\n // Read the current query result from the store.\n const { result: currentQueryResult, complete } = cache.diff({\n query: document!,\n variables,\n returnPartialData: true,\n optimistic: false,\n });\n\n if (complete && currentQueryResult) {\n // Run our reducer using the current query result and the mutation result.\n const nextQueryResult = updater(currentQueryResult, {\n mutationResult: mutation.result,\n queryName: document && getOperationName(document) || void 0,\n queryVariables: variables!,\n });\n\n // Write the modified result back into the store if we got a new result.\n if (nextQueryResult) {\n cacheWrites.push({\n result: nextQueryResult,\n dataId: 'ROOT_QUERY',\n query: document!,\n variables,\n });\n }\n }\n });\n }\n\n cache.performTransaction(c => {\n cacheWrites.forEach(write => c.write(write));\n\n // If the mutation has some writes associated with it then we need to\n // apply those writes to the store by running this reducer again with a\n // write action.\n const { update } = mutation;\n if (update) {\n update(c, mutation.result);\n }\n }, /* non-optimistic transaction: */ null);\n }\n }\n\n public markMutationOptimistic(\n optimisticResponse: any,\n mutation: {\n mutationId: string;\n document: DocumentNode;\n variables?: OperationVariables;\n errorPolicy: ErrorPolicy;\n updateQueries: MutationOptions[\"updateQueries\"],\n update?: (\n cache: ApolloCache,\n result: FetchResult,\n ) => void;\n },\n ) {\n const data = typeof optimisticResponse === \"function\"\n ? optimisticResponse(mutation.variables)\n : optimisticResponse;\n\n return this.cache.recordOptimisticTransaction(cache => {\n try {\n this.markMutationResult({\n ...mutation,\n result: { data },\n }, cache);\n } catch (error) {\n invariant.error(error);\n }\n }, mutation.mutationId);\n }\n\n public fetchQuery(\n queryId: string,\n options: WatchQueryOptions,\n networkStatus?: NetworkStatus,\n ): Promise> {\n return this.fetchQueryObservable(\n queryId,\n options,\n networkStatus,\n ).promise;\n }\n\n public getQueryStore() {\n const store: Record = Object.create(null);\n this.queries.forEach((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\n public resetErrors(queryId: string) {\n const queryInfo = this.queries.get(queryId);\n if (queryInfo) {\n queryInfo.networkError = undefined;\n queryInfo.graphQLErrors = [];\n }\n }\n\n private transformCache = new (canUseWeakMap ? WeakMap : Map)<\n DocumentNode,\n Readonly<{\n document: Readonly;\n hasClientExports: boolean;\n hasForcedResolvers: boolean;\n clientQuery: Readonly | null;\n serverQuery: Readonly | null;\n defaultVars: Readonly;\n }>\n >();\n\n public transform(document: DocumentNode) {\n const { transformCache } = this;\n\n if (!transformCache.has(document)) {\n const transformed = this.cache.transformDocument(document);\n const forLink = removeConnectionDirectiveFromDocument(\n this.cache.transformForLink(transformed));\n\n const clientQuery = this.localState.clientQuery(transformed);\n const serverQuery = forLink && this.localState.serverQuery(forLink);\n\n const cacheEntry = {\n document: transformed,\n // TODO These two calls (hasClientExports and shouldForceResolvers)\n // could probably be merged into a single traversal.\n hasClientExports: hasClientExports(transformed),\n hasForcedResolvers: this.localState.shouldForceResolvers(transformed),\n clientQuery,\n serverQuery,\n defaultVars: getDefaultValues(\n getOperationDefinition(transformed)\n ) as OperationVariables,\n };\n\n const add = (doc: DocumentNode | null) => {\n if (doc && !transformCache.has(doc)) {\n transformCache.set(doc, cacheEntry);\n }\n }\n // Add cacheEntry to the transformCache using several different keys,\n // since any one of these documents could end up getting passed to the\n // transform method again in the future.\n add(document);\n add(transformed);\n add(clientQuery);\n add(serverQuery);\n }\n\n return transformCache.get(document)!;\n }\n\n private getVariables(\n document: DocumentNode,\n variables?: OperationVariables,\n ): OperationVariables {\n return {\n ...this.transform(document).defaultVars,\n ...variables,\n };\n }\n\n public watchQuery(\n options: WatchQueryOptions,\n ): ObservableQuery {\n // assign variable default values if supplied\n options = {\n ...options,\n variables: this.getVariables(\n options.query,\n options.variables,\n ) as TVariables,\n };\n\n if (typeof options.notifyOnNetworkStatusChange === 'undefined') {\n options.notifyOnNetworkStatusChange = false;\n }\n\n const queryInfo = new QueryInfo(this.cache);\n const observable = new ObservableQuery({\n queryManager: this,\n queryInfo,\n options,\n });\n\n this.queries.set(observable.queryId, queryInfo);\n\n queryInfo.init({\n document: options.query,\n observableQuery: observable,\n variables: options.variables,\n });\n\n return observable;\n }\n\n public query(\n options: QueryOptions,\n ): Promise> {\n invariant(\n options.query,\n 'query option is required. You must specify your GraphQL document ' +\n 'in the query option.',\n );\n\n invariant(\n options.query.kind === 'Document',\n 'You must wrap the query string in a \"gql\" tag.',\n );\n\n invariant(\n !(options as any).returnPartialData,\n 'returnPartialData option only supported on watchQuery.',\n );\n\n invariant(\n !(options as any).pollInterval,\n 'pollInterval option only supported on watchQuery.',\n );\n\n const queryId = this.generateQueryId();\n return this.fetchQuery(\n queryId,\n options,\n ).finally(() => this.stopQuery(queryId));\n }\n\n private queryIdCounter = 1;\n public generateQueryId() {\n return String(this.queryIdCounter++);\n }\n\n private requestIdCounter = 1;\n public generateRequestId() {\n return this.requestIdCounter++;\n }\n\n private mutationIdCounter = 1;\n public generateMutationId() {\n return String(this.mutationIdCounter++);\n }\n\n public stopQueryInStore(queryId: string) {\n this.stopQueryInStoreNoBroadcast(queryId);\n this.broadcastQueries();\n }\n\n private stopQueryInStoreNoBroadcast(queryId: string) {\n const queryInfo = this.queries.get(queryId);\n if (queryInfo) queryInfo.stop();\n }\n\n public clearStore(): Promise {\n // Before we have sent the reset action to the store, we can no longer\n // rely on the results returned by in-flight requests since these may\n // depend on values that previously existed in the data portion of the\n // store. So, we cancel the promises and observers that we have issued\n // so far and not yet resolved (in the case of queries).\n this.cancelPendingFetches(new InvariantError(\n 'Store reset while query was in flight (not completed in link chain)',\n ));\n\n this.queries.forEach(queryInfo => {\n if (queryInfo.observableQuery) {\n // Set loading to true so listeners don't trigger unless they want\n // results with partial data.\n queryInfo.networkStatus = NetworkStatus.loading;\n } else {\n queryInfo.stop();\n }\n });\n\n if (this.mutationStore) {\n this.mutationStore = Object.create(null);\n }\n\n // begin removing data from the store\n return this.cache.reset();\n }\n\n public resetStore(): Promise[]> {\n // Similarly, we have to have to refetch each of the queries currently being\n // observed. We refetch instead of error'ing on these since the assumption is that\n // resetting the store doesn't eliminate the need for the queries currently being\n // watched. If there is an existing query in flight when the store is reset,\n // the promise for it will be rejected and its results will not be written to the\n // store.\n return this.clearStore().then(() => {\n return this.reFetchObservableQueries();\n });\n }\n\n public reFetchObservableQueries(\n includeStandby: boolean = false,\n ): Promise[]> {\n const observableQueryPromises: Promise>[] = [];\n\n this.queries.forEach(({ observableQuery }, queryId) => {\n if (observableQuery && observableQuery.hasObservers()) {\n const fetchPolicy = observableQuery.options.fetchPolicy;\n\n observableQuery.resetLastResults();\n if (\n fetchPolicy !== 'cache-only' &&\n (includeStandby || fetchPolicy !== 'standby')\n ) {\n observableQueryPromises.push(observableQuery.refetch());\n }\n\n this.getQuery(queryId).setDiff(null);\n }\n });\n\n this.broadcastQueries();\n\n return Promise.all(observableQueryPromises);\n }\n\n public setObservableQuery(observableQuery: ObservableQuery) {\n this.getQuery(observableQuery.queryId).setObservableQuery(observableQuery);\n }\n\n public startGraphQLSubscription({\n query,\n fetchPolicy,\n errorPolicy,\n variables,\n context = {},\n }: SubscriptionOptions): Observable> {\n query = this.transform(query).document;\n variables = this.getVariables(query, variables);\n\n const makeObservable = (variables: OperationVariables) =>\n this.getObservableFromLink(\n query,\n context,\n variables,\n false,\n ).map(result => {\n if (fetchPolicy !== 'no-cache') {\n // the subscription interface should handle not sending us results we no longer subscribe to.\n // XXX I don't think we ever send in an object with errors, but we might in the future...\n if (shouldWriteResult(result, errorPolicy)) {\n this.cache.write({\n query,\n result: result.data,\n dataId: 'ROOT_SUBSCRIPTION',\n variables: variables,\n });\n }\n\n this.broadcastQueries();\n }\n\n if (graphQLResultHasError(result)) {\n throw new ApolloError({\n graphQLErrors: result.errors,\n });\n }\n\n return result;\n });\n\n if (this.transform(query).hasClientExports) {\n const observablePromise = this.localState.addExportedVariables(\n query,\n variables,\n context,\n ).then(makeObservable);\n\n return new Observable>(observer => {\n let sub: ObservableSubscription | null = null;\n observablePromise.then(\n observable => sub = observable.subscribe(observer),\n observer.error,\n );\n return () => sub && sub.unsubscribe();\n });\n }\n\n return makeObservable(variables);\n }\n\n public stopQuery(queryId: string) {\n this.stopQueryNoBroadcast(queryId);\n this.broadcastQueries();\n }\n\n private stopQueryNoBroadcast(queryId: string) {\n this.stopQueryInStoreNoBroadcast(queryId);\n this.removeQuery(queryId);\n }\n\n public removeQuery(queryId: string) {\n // teardown all links\n // Both `QueryManager.fetchRequest` and `QueryManager.query` create separate promises\n // that each add their reject functions to fetchCancelFns.\n // A query created with `QueryManager.query()` could trigger a `QueryManager.fetchRequest`.\n // The same queryId could have two rejection fns for two promises\n this.fetchCancelFns.delete(queryId);\n this.getQuery(queryId).stop();\n this.queries.delete(queryId);\n }\n\n public broadcastQueries() {\n if (this.onBroadcast) this.onBroadcast();\n this.queries.forEach(info => info.notify());\n }\n\n public getLocalState(): LocalState {\n return this.localState;\n }\n\n private inFlightLinkObservables = new Map<\n DocumentNode,\n Map>\n >();\n\n private getObservableFromLink(\n query: DocumentNode,\n context: any,\n variables?: OperationVariables,\n deduplication: boolean =\n // Prefer context.queryDeduplication if specified.\n context?.queryDeduplication ??\n this.queryDeduplication,\n ): Observable> {\n let observable: Observable>;\n\n const { serverQuery } = this.transform(query);\n if (serverQuery) {\n const { inFlightLinkObservables, link } = this;\n\n const operation = {\n query: serverQuery,\n variables,\n operationName: getOperationName(serverQuery) || void 0,\n context: this.prepareContext({\n ...context,\n forceFetch: !deduplication\n }),\n };\n\n context = operation.context;\n\n if (deduplication) {\n const byVariables = inFlightLinkObservables.get(serverQuery) || new Map();\n inFlightLinkObservables.set(serverQuery, byVariables);\n\n const varJson = JSON.stringify(variables);\n observable = byVariables.get(varJson);\n\n if (!observable) {\n const concast = new Concast([\n execute(link, operation) as Observable>\n ]);\n\n byVariables.set(varJson, observable = concast);\n\n concast.cleanup(() => {\n if (byVariables.delete(varJson) &&\n byVariables.size < 1) {\n inFlightLinkObservables.delete(serverQuery);\n }\n });\n }\n\n } else {\n observable = new Concast([\n execute(link, operation) as Observable>\n ]);\n }\n } else {\n observable = new Concast([\n Observable.of({ data: {} } as FetchResult)\n ]);\n context = this.prepareContext(context);\n }\n\n const { clientQuery } = this.transform(query);\n if (clientQuery) {\n observable = asyncMap(observable, result => {\n return this.localState.runResolvers({\n document: clientQuery,\n remoteResult: result,\n context,\n variables,\n });\n });\n }\n\n return observable;\n }\n\n private getResultsFromLink(\n queryInfo: QueryInfo,\n allowCacheWrite: boolean,\n options: Pick,\n | \"variables\"\n | \"context\"\n | \"fetchPolicy\"\n | \"errorPolicy\">,\n ): Observable> {\n const { lastRequestId } = queryInfo;\n\n return asyncMap(\n this.getObservableFromLink(\n queryInfo.document!,\n options.context,\n options.variables,\n ),\n\n result => {\n const hasErrors = isNonEmptyArray(result.errors);\n\n if (lastRequestId >= queryInfo.lastRequestId) {\n if (hasErrors && options.errorPolicy === \"none\") {\n // Throwing here effectively calls observer.error.\n throw queryInfo.markError(new ApolloError({\n graphQLErrors: result.errors,\n }));\n }\n queryInfo.markResult(result, options, allowCacheWrite);\n queryInfo.markReady();\n }\n\n const aqr: ApolloQueryResult = {\n data: result.data,\n loading: false,\n networkStatus: queryInfo.networkStatus || NetworkStatus.ready,\n };\n\n if (hasErrors && options.errorPolicy !== \"ignore\") {\n aqr.errors = result.errors;\n }\n\n return aqr;\n },\n\n networkError => {\n const error = isApolloError(networkError)\n ? networkError\n : new ApolloError({ networkError });\n\n if (lastRequestId >= queryInfo.lastRequestId) {\n queryInfo.markError(error);\n }\n\n throw error;\n },\n );\n }\n\n public fetchQueryObservable(\n queryId: string,\n options: WatchQueryOptions,\n // The initial networkStatus for this fetch, most often\n // NetworkStatus.loading, but also possibly fetchMore, poll, refetch,\n // or setVariables.\n networkStatus = NetworkStatus.loading,\n ): Concast> {\n const query = this.transform(options.query).document;\n const variables = this.getVariables(query, options.variables) as TVars;\n const queryInfo = this.getQuery(queryId);\n const oldNetworkStatus = queryInfo.networkStatus;\n\n let {\n fetchPolicy = \"cache-first\" as WatchQueryFetchPolicy,\n errorPolicy = \"none\" as ErrorPolicy,\n returnPartialData = false,\n notifyOnNetworkStatusChange = false,\n context = {},\n } = options;\n\n const mightUseNetwork =\n fetchPolicy === \"cache-first\" ||\n fetchPolicy === \"cache-and-network\" ||\n fetchPolicy === \"network-only\" ||\n fetchPolicy === \"no-cache\";\n\n if (mightUseNetwork &&\n notifyOnNetworkStatusChange &&\n typeof oldNetworkStatus === \"number\" &&\n oldNetworkStatus !== networkStatus &&\n isNetworkRequestInFlight(networkStatus)) {\n // In order to force delivery of an incomplete cache result with\n // loading:true, we tweak the fetchPolicy to include the cache, and\n // pretend that returnPartialData was enabled.\n if (fetchPolicy !== \"cache-first\") {\n fetchPolicy = \"cache-and-network\";\n }\n returnPartialData = true;\n }\n\n const normalized = Object.assign({}, options, {\n query,\n variables,\n fetchPolicy,\n errorPolicy,\n returnPartialData,\n notifyOnNetworkStatusChange,\n context,\n });\n\n const fromVariables = (variables: TVars) => {\n // Since normalized is always a fresh copy of options, it's safe to\n // modify its properties here, rather than creating yet another new\n // WatchQueryOptions object.\n normalized.variables = variables;\n return this.fetchQueryByPolicy(\n queryInfo,\n normalized,\n networkStatus,\n );\n };\n\n // This cancel function needs to be set before the concast is created,\n // in case concast creation synchronously cancels the request.\n this.fetchCancelFns.set(queryId, reason => {\n // Delaying the cancellation using a Promise ensures that the\n // concast variable has been initialized.\n Promise.resolve().then(() => concast.cancel(reason));\n });\n\n // A Concast can be created either from an Iterable>\n // or from a PromiseLike>>, where T in this\n // case is ApolloQueryResult.\n const concast = new Concast(\n // If the query has @export(as: ...) directives, then we need to\n // process those directives asynchronously. When there are no\n // @export directives (the common case), we deliberately avoid\n // wrapping the result of this.fetchQueryByPolicy in a Promise,\n // since the timing of result delivery is (unfortunately) important\n // for backwards compatibility. TODO This code could be simpler if\n // we deprecated and removed LocalState.\n this.transform(normalized.query).hasClientExports\n ? this.localState.addExportedVariables(\n normalized.query,\n normalized.variables,\n normalized.context,\n ).then(fromVariables)\n : fromVariables(normalized.variables!)\n );\n\n concast.cleanup(() => {\n this.fetchCancelFns.delete(queryId);\n\n const { nextFetchPolicy } = options;\n if (nextFetchPolicy) {\n // The options.nextFetchPolicy transition should happen only once,\n // but it should be possible for a nextFetchPolicy function to set\n // this.nextFetchPolicy to perform an additional transition.\n options.nextFetchPolicy = void 0;\n\n // When someone chooses cache-and-network or network-only as their\n // initial FetchPolicy, they often do not want future cache updates to\n // trigger unconditional network requests, which is what repeatedly\n // applying the cache-and-network or network-only policies would seem\n // to imply. Instead, when the cache reports an update after the\n // initial network request, it may be desirable for subsequent network\n // requests to be triggered only if the cache result is incomplete.\n // The options.nextFetchPolicy option provides an easy way to update\n // options.fetchPolicy after the intial network request, without\n // having to call observableQuery.setOptions.\n options.fetchPolicy = typeof nextFetchPolicy === \"function\"\n ? nextFetchPolicy.call(options, options.fetchPolicy || \"cache-first\")\n : nextFetchPolicy;\n }\n });\n\n return concast;\n }\n\n private fetchQueryByPolicy(\n queryInfo: QueryInfo,\n options: WatchQueryOptions,\n // The initial networkStatus for this fetch, most often\n // NetworkStatus.loading, but also possibly fetchMore, poll, refetch,\n // or setVariables.\n networkStatus: NetworkStatus,\n ): ConcastSourcesIterable> {\n const {\n query,\n variables,\n fetchPolicy,\n errorPolicy,\n returnPartialData,\n context,\n } = options;\n\n queryInfo.init({\n document: query,\n variables,\n lastRequestId: this.generateRequestId(),\n networkStatus,\n });\n\n const readCache = () => queryInfo.getDiff(variables);\n\n const resultsFromCache = (\n diff: Cache.DiffResult,\n networkStatus = queryInfo.networkStatus || NetworkStatus.loading,\n ) => {\n const data = diff.result as TData;\n\n if (process.env.NODE_ENV !== 'production' &&\n isNonEmptyArray(diff.missing) &&\n !equal(data, {}) &&\n !returnPartialData) {\n invariant.warn(`Missing cache result fields: ${\n diff.missing.map(m => m.path.join('.')).join(', ')\n }`, diff.missing);\n }\n\n const fromData = (data: TData) => Observable.of({\n data,\n loading: isNetworkRequestInFlight(networkStatus),\n networkStatus,\n ...(diff.complete ? null : { partial: true }),\n } as ApolloQueryResult);\n\n if (this.transform(query).hasForcedResolvers) {\n return this.localState.runResolvers({\n document: query,\n remoteResult: { data },\n context,\n variables,\n onlyRunForcedResolvers: true,\n }).then(resolved => fromData(resolved.data!));\n }\n\n return fromData(data);\n };\n\n const resultsFromLink = (allowCacheWrite: boolean) =>\n this.getResultsFromLink(queryInfo, allowCacheWrite, {\n variables,\n context,\n fetchPolicy,\n errorPolicy,\n });\n\n switch (fetchPolicy) {\n default: case \"cache-first\": {\n const diff = readCache();\n\n if (diff.complete) {\n return [\n resultsFromCache(diff, queryInfo.markReady()),\n ];\n }\n\n if (returnPartialData) {\n return [\n resultsFromCache(diff),\n resultsFromLink(true),\n ];\n }\n\n return [\n resultsFromLink(true),\n ];\n }\n\n case \"cache-and-network\": {\n const diff = readCache();\n\n if (diff.complete || returnPartialData) {\n return [\n resultsFromCache(diff),\n resultsFromLink(true),\n ];\n }\n\n return [\n resultsFromLink(true),\n ];\n }\n\n case \"cache-only\":\n return [\n resultsFromCache(readCache(), queryInfo.markReady()),\n ];\n\n case \"network-only\":\n return [resultsFromLink(true)];\n\n case \"no-cache\":\n return [resultsFromLink(false)];\n\n case \"standby\":\n return [];\n }\n }\n\n private getQuery(queryId: string): QueryInfo {\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\n private prepareContext(context = {}) {\n const newContext = this.localState.prepareContext(context);\n return {\n ...newContext,\n clientAwareness: this.clientAwareness,\n };\n }\n}\n","export const version = 'local';\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-production-line\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Indonesian [id]\n//! author : Mohammad Satrio Utomo : https://github.com/tyok\n//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('id', {\n months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|siang|sore|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'siang') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'sore' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'siang';\n } else if (hours < 19) {\n return 'sore';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Besok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kemarin pukul] LT',\n lastWeek: 'dddd [lalu pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lalu',\n s: 'beberapa detik',\n ss: '%d detik',\n m: 'semenit',\n mm: '%d menit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport {\r\n Separators,\r\n CacheAccountType,\r\n CacheType,\r\n Constants,\r\n} from \"../../utils/Constants\";\r\nimport { Authority } from \"../../authority/Authority\";\r\nimport { AuthToken } from \"../../account/AuthToken\";\r\nimport { ICrypto } from \"../../crypto/ICrypto\";\r\nimport { buildClientInfo } from \"../../account/ClientInfo\";\r\nimport { StringUtils } from \"../../utils/StringUtils\";\r\nimport { AccountInfo } from \"../../account/AccountInfo\";\r\nimport { ClientAuthError } from \"../../error/ClientAuthError\";\r\nimport { AuthorityType } from \"../../authority/AuthorityType\";\r\nimport { Logger } from \"../../logger/Logger\";\r\nimport { TokenClaims } from \"../../account/TokenClaims\";\r\n\r\n/**\r\n * Type that defines required and optional parameters for an Account field (based on universal cache schema implemented by all MSALs).\r\n *\r\n * Key : Value Schema\r\n *\r\n * Key: --\r\n *\r\n * Value Schema:\r\n * {\r\n * homeAccountId: home account identifier for the auth scheme,\r\n * environment: entity that issued the token, represented as a full host\r\n * realm: Full tenant or organizational identifier that the account belongs to\r\n * localAccountId: Original tenant-specific accountID, usually used for legacy cases\r\n * username: primary username that represents the user, usually corresponds to preferred_username in the v2 endpt\r\n * authorityType: Accounts authority type as a string\r\n * name: Full name for the account, including given name and family name,\r\n * clientInfo: Full base64 encoded client info received from ESTS\r\n * lastModificationTime: last time this entity was modified in the cache\r\n * lastModificationApp:\r\n * oboAssertion: access token passed in as part of OBO request\r\n * idTokenClaims: Object containing claims parsed from ID token\r\n * }\r\n */\r\nexport class AccountEntity {\r\n homeAccountId: string;\r\n environment: string;\r\n realm: string;\r\n localAccountId: string;\r\n username: string;\r\n authorityType: string;\r\n name?: string;\r\n clientInfo?: string;\r\n lastModificationTime?: string;\r\n lastModificationApp?: string;\r\n oboAssertion?: string;\r\n cloudGraphHostName?: string;\r\n msGraphHost?: string; \r\n idTokenClaims?: TokenClaims;\r\n\r\n /**\r\n * Generate Account Id key component as per the schema: -\r\n */\r\n generateAccountId(): string {\r\n const accountId: Array = [this.homeAccountId, this.environment];\r\n return accountId.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();\r\n }\r\n\r\n /**\r\n * Generate Account Cache Key as per the schema: --\r\n */\r\n generateAccountKey(): string {\r\n return AccountEntity.generateAccountCacheKey({\r\n homeAccountId: this.homeAccountId,\r\n environment: this.environment,\r\n tenantId: this.realm,\r\n username: this.username,\r\n localAccountId: this.localAccountId\r\n });\r\n }\r\n\r\n /**\r\n * returns the type of the cache (in this case account)\r\n */\r\n generateType(): number {\r\n switch (this.authorityType) {\r\n case CacheAccountType.ADFS_ACCOUNT_TYPE:\r\n return CacheType.ADFS;\r\n case CacheAccountType.MSAV1_ACCOUNT_TYPE:\r\n return CacheType.MSA;\r\n case CacheAccountType.MSSTS_ACCOUNT_TYPE:\r\n return CacheType.MSSTS;\r\n case CacheAccountType.GENERIC_ACCOUNT_TYPE:\r\n return CacheType.GENERIC;\r\n default: {\r\n throw ClientAuthError.createUnexpectedAccountTypeError();\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Returns the AccountInfo interface for this account.\r\n */\r\n getAccountInfo(): AccountInfo {\r\n return {\r\n homeAccountId: this.homeAccountId,\r\n environment: this.environment,\r\n tenantId: this.realm,\r\n username: this.username,\r\n localAccountId: this.localAccountId,\r\n name: this.name,\r\n idTokenClaims: this.idTokenClaims\r\n };\r\n }\r\n\r\n /**\r\n * Generates account key from interface\r\n * @param accountInterface\r\n */\r\n static generateAccountCacheKey(accountInterface: AccountInfo): string {\r\n const accountKey = [\r\n accountInterface.homeAccountId,\r\n accountInterface.environment || \"\",\r\n accountInterface.tenantId || \"\",\r\n ];\r\n\r\n return accountKey.join(Separators.CACHE_KEY_SEPARATOR).toLowerCase();\r\n }\r\n\r\n /**\r\n * Build Account cache from IdToken, clientInfo and authority/policy. Associated with AAD.\r\n * @param clientInfo\r\n * @param authority\r\n * @param idToken\r\n * @param policy\r\n */\r\n static createAccount(\r\n clientInfo: string,\r\n homeAccountId: string,\r\n idToken: AuthToken,\r\n authority?: Authority,\r\n oboAssertion?: string,\r\n cloudGraphHostName?: string,\r\n msGraphHost?: string,\r\n environment?: string\r\n ): AccountEntity {\r\n const account: AccountEntity = new AccountEntity();\r\n\r\n account.authorityType = CacheAccountType.MSSTS_ACCOUNT_TYPE;\r\n account.clientInfo = clientInfo;\r\n account.homeAccountId = homeAccountId;\r\n\r\n const env = environment || (authority && authority.getPreferredCache());\r\n\r\n if (!env) {\r\n throw ClientAuthError.createInvalidCacheEnvironmentError();\r\n }\r\n\r\n account.environment = env;\r\n // non AAD scenarios can have empty realm\r\n account.realm = idToken?.claims?.tid || \"\";\r\n account.oboAssertion = oboAssertion;\r\n \r\n if (idToken) {\r\n account.idTokenClaims = idToken.claims;\r\n\r\n // How do you account for MSA CID here?\r\n account.localAccountId = idToken?.claims?.oid || idToken?.claims?.sub || \"\";\r\n\r\n /*\r\n * In B2C scenarios the emails claim is used instead of preferred_username and it is an array. In most cases it will contain a single email.\r\n * This field should not be relied upon if a custom policy is configured to return more than 1 email.\r\n */\r\n account.username = idToken?.claims?.preferred_username || (idToken?.claims?.emails? idToken.claims.emails[0]: \"\");\r\n account.name = idToken?.claims?.name;\r\n }\r\n\r\n account.cloudGraphHostName = cloudGraphHostName;\r\n account.msGraphHost = msGraphHost;\r\n\r\n return account;\r\n }\r\n\r\n /**\r\n * Builds non-AAD/ADFS account.\r\n * @param authority\r\n * @param idToken\r\n */\r\n static createGenericAccount(\r\n homeAccountId: string,\r\n idToken: AuthToken,\r\n authority?: Authority,\r\n oboAssertion?: string,\r\n cloudGraphHostName?: string,\r\n msGraphHost?: string,\r\n environment?: string\r\n ): AccountEntity {\r\n const account: AccountEntity = new AccountEntity();\r\n\r\n account.authorityType = (authority && authority.authorityType === AuthorityType.Adfs) ? CacheAccountType.ADFS_ACCOUNT_TYPE : CacheAccountType.GENERIC_ACCOUNT_TYPE;\r\n account.homeAccountId = homeAccountId;\r\n // non AAD scenarios can have empty realm\r\n account.realm = \"\";\r\n account.oboAssertion = oboAssertion;\r\n\r\n const env = environment || authority && authority.getPreferredCache();\r\n\r\n if (!env) {\r\n throw ClientAuthError.createInvalidCacheEnvironmentError();\r\n }\r\n\r\n if (idToken) {\r\n // How do you account for MSA CID here?\r\n account.localAccountId = idToken?.claims?.oid || idToken?.claims?.sub || \"\";\r\n // upn claim for most ADFS scenarios\r\n account.username = idToken?.claims?.upn || \"\";\r\n account.name = idToken?.claims?.name || \"\";\r\n account.idTokenClaims = idToken?.claims;\r\n }\r\n\r\n account.environment = env;\r\n\r\n account.cloudGraphHostName = cloudGraphHostName;\r\n account.msGraphHost = msGraphHost;\r\n\r\n /*\r\n * add uniqueName to claims\r\n * account.name = idToken.claims.uniqueName;\r\n */\r\n\r\n return account;\r\n }\r\n\r\n /**\r\n * Generate HomeAccountId from server response\r\n * @param serverClientInfo\r\n * @param authType\r\n */\r\n static generateHomeAccountId(serverClientInfo: string, authType: AuthorityType, logger: Logger, cryptoObj: ICrypto, idToken?: AuthToken): string {\r\n\r\n const accountId = idToken?.claims?.sub ? idToken.claims.sub : Constants.EMPTY_STRING;\r\n\r\n // since ADFS does not have tid and does not set client_info\r\n if (authType === AuthorityType.Adfs) {\r\n return accountId;\r\n }\r\n\r\n // for cases where there is clientInfo\r\n if (serverClientInfo) {\r\n try {\r\n const clientInfo = buildClientInfo(serverClientInfo, cryptoObj);\r\n if (!StringUtils.isEmpty(clientInfo.uid) && !StringUtils.isEmpty(clientInfo.utid)) {\r\n return `${clientInfo.uid}${Separators.CLIENT_INFO_SEPARATOR}${clientInfo.utid}`;\r\n }\r\n } catch (e) {}\r\n }\r\n\r\n // default to \"sub\" claim\r\n logger.verbose(\"No client info in response\");\r\n return accountId;\r\n }\r\n\r\n /**\r\n * Validates an entity: checks for all expected params\r\n * @param entity\r\n */\r\n static isAccountEntity(entity: object): boolean {\r\n\r\n if (!entity) {\r\n return false;\r\n }\r\n\r\n return (\r\n entity.hasOwnProperty(\"homeAccountId\") &&\r\n entity.hasOwnProperty(\"environment\") &&\r\n entity.hasOwnProperty(\"realm\") &&\r\n entity.hasOwnProperty(\"localAccountId\") &&\r\n entity.hasOwnProperty(\"username\") &&\r\n entity.hasOwnProperty(\"authorityType\")\r\n );\r\n }\r\n\r\n /**\r\n * Helper function to determine whether 2 accountInfo objects represent the same account\r\n * @param accountA \r\n * @param accountB \r\n * @param compareClaims - If set to true idTokenClaims will also be compared to determine account equality\r\n */\r\n static accountInfoIsEqual(accountA: AccountInfo | null, accountB: AccountInfo | null, compareClaims?: boolean): boolean {\r\n if (!accountA || !accountB) {\r\n return false;\r\n }\r\n\r\n let claimsMatch = true; // default to true so as to not fail comparison below if compareClaims: false\r\n if (compareClaims) {\r\n const accountAClaims = (accountA.idTokenClaims || {}) as TokenClaims;\r\n const accountBClaims = (accountB.idTokenClaims || {}) as TokenClaims;\r\n\r\n // issued at timestamp and nonce are expected to change each time a new id token is acquired\r\n claimsMatch = (accountAClaims.iat === accountBClaims.iat) &&\r\n (accountAClaims.nonce === accountBClaims.nonce);\r\n }\r\n\r\n return (accountA.homeAccountId === accountB.homeAccountId) && \r\n (accountA.localAccountId === accountB.localAccountId) &&\r\n (accountA.username === accountB.username) &&\r\n (accountA.tenantId === accountB.tenantId) &&\r\n (accountA.environment === accountB.environment) &&\r\n claimsMatch;\r\n }\r\n}\r\n","//! moment.js locale configuration\n//! locale : Chinese (Hong Kong) [zh-hk]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Konstantin : https://github.com/skfd\n//! author : Anthony : https://github.com/anthonylau\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('zh-hk', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY/MM/DD',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'YYYY/M/D',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1200) {\n return '上午';\n } else if (hm === 1200) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天]LT',\n nextDay: '[明天]LT',\n nextWeek: '[下]ddddLT',\n lastDay: '[昨天]LT',\n lastWeek: '[上]ddddLT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s後',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n});\n","/** Check if an object is not null or undefined\n *\t@private\n */\nexport function defined(obj) {\n\treturn obj!==null && obj!==undefined;\n}\n\n\n/** A simpler Object.assign\n * @private\n */\nexport function assign(obj, props) {\n\tfor (let i in props) {\n\t\tobj[i] = props[i];\n\t}\n\treturn obj;\n}\n\n\n/** Recursively copy keys from `source` to `target`, skipping truthy values already in `target`.\n *\t@private\n */\nexport function deepAssign(target, source) {\n\tlet out = assign({}, target);\n\tfor (let i in source) {\n\t\tif (source.hasOwnProperty(i)) {\n\t\t\tif (target[i] && source[i] && typeof target[i]==='object' && typeof source[i]==='object') {\n\t\t\t\tout[i] = deepAssign(target[i], source[i]);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tout[i] = target[i] || source[i];\n\t\t\t}\n\t\t}\n\t}\n\treturn out;\n}\n\n/** select('foo,bar') creates a mapping: `{ foo, bar }`\n *\t@private\n */\nexport function select(properties) {\n\tproperties = properties || {};\n\tif (typeof properties==='string') {\n\t\tproperties = properties.split(',');\n\t}\n\tif ('join' in properties) {\n\t\tlet selected = {};\n\t\tfor (let i=0; i` is a nestable internationalization definition provider.\n *\tIt exposes an Intl scope & definition into the tree,\n *\tmaking them available to descendant components.\n *\n *\t> **Note:** When nested, gives precedence to keys higher up the tree!\n *\t> This means lower-level components can set their defaults by wrapping themselves\n *\t> in an ``, but still remain localizable by their parent components.\n *\n *\t@name IntlProvider\n *\t@param props\n *\t@param {String} [props.scope]\t\t\tNest `definition` under a root key, and set the active scope for the tree (essentially prefixing all `` keys).\n *\t@param {Boolean} [props.mark=false]\t\tIf `true`, all `` elements will be shown with a red/green background indicating whether they have valid Intl keys.\n *\t@param {Object} [props.definition={}]\tMerge the given definition into the current intl definition, giving the *current* definition precedence (i.e., only adding keys, acting as defaults)\n *\n *\t@example\n *\t// generally imported from a JSON file:\n *\tlet definition = {\n *\t\tfoo: 'Le Feux'\n *\t};\n *\n *\t\n *\t\tThe Foo\n *\t\n *\n *\t// This will render the text:\n *\t\"Le Feux\"\n */\n\nexport function IntlProvider({ scope, mark, definition, ...props }) {\n\tconst { intl: parentIntl } = useContext(IntlContext);\n\tlet intl = assign({}, parentIntl || {});\n\n\t// set active scope for the tree if given\n\tif (scope) intl.scope = scope;\n\n\t// merge definition into current with lower precedence\n\tif (definition) {\n\t\tintl.dictionary = deepAssign(intl.dictionary || {}, definition);\n\t}\n\n\tif (mark || (typeof location!=='undefined' && String(location).match(URL_FLAG))) {\n\t\tintl.mark = true;\n\t}\n\n\treturn (\n\t\t\n\t\t\t{props.children}\n\t\t\n\t);\n}\n","import { h } from 'preact';\nimport { IntlProvider } from './components/intl-provider';\n\n\n/**\n * Higher-order function that creates an `` wrapper component for the given component. It\n * takes two forms depending on how many arguments it's given:\n * It can take a functional form like:\n * intl(ComponentToWrap, options)\n *\n * or it can take an annotation form like:\n * @intl(options)\n * class ComponentToWrap extends Component {}\n *\n *\t@param {Component or Object} args[0] If there are two arguments, the first argument is the Component to wrap in ``. If there is just one argument, this is the options object to pass as `props` to ``. See the definition of the options param below for details.\n *\t@param {Object} options If there are two arguments, the second argument is Passed as `props` to ``\n *\t@param [options.scope]\t\t\tNest `definition` under a root key, and set the active scope for the tree (essentially prefixing all `` keys).\n *\t@param [options.definition={}]\tMerge the given definition into the current intl definition, giving the *current* definition precedence (i.e., only adding keys, acting as defaults)\n */\nexport function intl(Child, options) {\n\tif (arguments.length<2) {\n\t\toptions = Child;\n\t\treturn Child => intl(Child, options);\n\t}\n\tfunction IntlProviderWrapper(props) {\n\t\treturn h(\n\t\t\tIntlProvider,\n\t\t\toptions || {},\n\t\t\th(Child, props)\n\t\t);\n\t}\n\n\tIntlProviderWrapper.getWrappedComponent = Child && Child.getWrappedComponent || (() => Child);\n\treturn IntlProviderWrapper;\n}\n","import { Text } from '../components/text';\nimport translate from './translate';\n\nconst EMPTY = {};\n\n/** Populate {{template.fields}} within a given string.\n *\n *\t@private\n *\t@param {String} template\tThe string containing fields to be resolved\n *\t@param {Object} [fields={}]\tOptionally nested object of fields, referencable from `template`.\n *\t@example\n *\t\ttemplate('foo{{bar}}', { bar:'baz' }) === 'foobaz'\n */\nexport default function template(template, fields, scope, dictionary) {\n\treturn template && template.replace(/\\{\\{([\\w.-]+)\\}\\}/g, replacer.bind(null, fields || EMPTY, scope, dictionary));\n}\n\n/** Replacement callback for injecting fields into a String\n *\t@private\n */\nfunction replacer(currentFields, scope, dictionary, s, field) {\n\tlet parts = field.split('.'),\n\t\tv = currentFields;\n\tfor (let i=0; i nodes\n\t\tif (v && v.type === Text) {\n\t\t\treturn translate(v.props.id, scope, dictionary, v.props.fields, v.props.plural, v.props.fallback);\n\t\t}\n\t}\n\t// allow for recursive {{config.xx}} references:\n\tif (typeof v==='string' && v.match(/\\{\\{/)) {\n\t\tv = template(v, currentFields);\n\t}\n\treturn v;\n}\n","import delve from 'dlv';\nimport { defined } from './util';\nimport template from './template';\n\n/** Attempts to look up a translated value from a given dictionary.\n * Also supports json templating using the format: {{variable}}\n * Falls back to default text.\n *\n * @param {String} id \t\t\tIntl field name/id (subject to scope)\n * @param {String} [scope='']\t\tScope, which prefixes `id` with `${scope}.`\n * @param {Object} dictionary\t\tA nested object containing translations\n * @param {Object} [fields={}]\t\tTemplate fields for use by translated strings\n * @param {Number} [plural]\t\tIndicates a quantity, used to trigger pluralization\n * @param {String|Array} [fallback]\tText to return if no translation is found\n * @returns {String} translated\n */\nexport default function translate(id, scope, dictionary, fields, plural, fallback) {\n\tif (scope) id = scope + '.' + id;\n\n\tlet value = dictionary && delve(dictionary, id);\n\n\t// plural forms:\n\t// key: ['plural', 'singular']\n\t// key: { none, one, many }\n\t// key: { singular, plural }\n\tif ((plural || plural===0) && value && typeof value==='object') {\n\t\tif (value.splice) {\n\t\t\tvalue = value[plural] || value[0];\n\t\t}\n\t\telse if (plural===0 && defined(value.none)) {\n\t\t\tvalue = value.none;\n\t\t}\n\t\telse if (plural===1 && defined(value.one || value.singular)) {\n\t\t\tvalue = value.one || value.singular;\n\t\t}\n\t\telse {\n\t\t\tvalue = value.some || value.many || value.plural || value.other || value;\n\t\t}\n\t}\n\n\treturn value && template(value, fields, scope, dictionary) || fallback || null;\n}\n","import { h } from 'preact';\nimport { useContext } from 'preact/hooks';\nimport { IntlContext } from '../contexts/intl-context';\nimport delve from 'dlv';\n\n\n/** Highlight/colorize the i18n'd node if `mark` is set on `intl` in context. If not, just returns `value`\n *\n *\t@private\n *\t@param {String|VNode} value\tThe l10n'd text/vnode to highlight or pass through\n *\t@param {string} id\tThe key used to lookup the value in the intl dictionary\n */\nexport function HighlightI18N({ value, id }) {\n\tconst { intl } = useContext(IntlContext);\n\n\tif (intl && intl.mark) {\n\t\tconst dictionaryKey = `dictionary${intl && intl.scope ? `.${intl.scope}` : ''}.${id}`;\n\t\treturn (\n\t\t\t\n\t\t\t\t{value}\n\t\t\t\n\t\t);\n\t}\n\n\treturn value;\n}\n","import { h } from 'preact';\nimport { useContext } from 'preact/hooks';\nimport { IntlContext } from '../contexts/intl-context';\nimport translate from '../lib/translate';\nimport { HighlightI18N } from './highlight-i18n';\n\n/** `` renders internationalized text.\n *\tIt attempts to look up translated values from a dictionary in context.\n *\n *\tTemplate strings can contain `{{field}}` placeholders,\n *\twhich injects values from the `fields` prop.\n *\n *\tWhen string lookup fails, renders its children as fallback text.\n *\n *\t@param {Object} props props\n *\t@param {String} props.id Key to look up in intl dictionary, within any parent scopes (`$scope1.$scope2.$id`)\n *\t@param {ReactElement} [props.children] Fallback text if no definition is found\n *\t@param {Object} [props.fields={}] Values to inject into template `{{fields}}`. Values in the `fields` object will be coerced to strings, with the exception of `` nodes which will be resolved to their translated value\n *\t@param {Number} [props.plural] Integer \"count\", used to select plural forms\n *\n *\t@example\n *\t// If there is no dictionary in context..\n *\tThe Foo\n *\t// ..produces the text:\n *\t\"The Foo\"\n *\n *\t@example\n *\t// Given a dictionary and some fields..\n *\t\n *\t\tThe Foo\n *\t\n *\t// ..produces the text:\n *\t\"Le Feux BEAR\"\n *\n *\t@example\n *\t// Within a scope, both `id` and the definition are namespaced..\n *\t\n *\t\tThe Foo\n *\t\n *\t// ..produces the text:\n *\t\"Le Feux\"\n */\nexport function Text({ id, children: fallback, plural, fields }) {\n\tconst { intl } = useContext(IntlContext);\n\n\tlet value = translate(\n\t\tid,\n\t\tintl && intl.scope,\n\t\tintl && intl.dictionary,\n\t\tfields,\n\t\tplural,\n\t\tfallback\n\t);\n\n\treturn ;\n}\n","import { assign, select } from './util';\nimport translate from './translate';\nimport { Text } from '../components/text';\n\n/** Translates the property values in an Object, returning a copy.\n *\t**Note:** By default, `String` keys will be treated as Intl ID's.\n *\tPass `true` to return an Object containing *only* translated\n *\tvalues where the prop is a node.\n *\n *\t@private\n *\t@param {Object} props\tAn object with values to translate\n *\t@param {Object} intl\tAn intl context object (eg: `context.intl`)\n *\t@param {Boolean} [onlyTextNodes=false]\tOnly process `` values\n *\t@returns {Object} translatedProps\n */\nexport default function translateMapping(props, intl, onlyTextNodes) {\n\tlet out = {};\n\tintl = intl || {};\n\tprops = select(props);\n\tfor (let name in props) {\n\t\tif (props.hasOwnProperty(name) && props[name]) {\n\t\t\tlet def = props[name];\n\n\t\t\t// if onlyTextNodes=true, skip any props that aren't vnodes\n\t\t\tif (!onlyTextNodes && typeof def==='string') {\n\t\t\t\tout[name] = translate(def, intl.scope, intl.dictionary);\n\t\t\t}\n\t\t\telse if (def.type===Text) {\n\t\t\t\t// it's a , just grab its props:\n\t\t\t\tdef = assign({\n\t\t\t\t\t// use children as fallback content\n\t\t\t\t\tfallback: def.props.children\n\t\t\t\t}, def.props);\n\t\t\t\tout[name] = translate(def.id, intl.scope, intl.dictionary, def.fields, def.plural, def.fallback);\n\t\t\t}\n\t\t}\n\t}\n\treturn out;\n}\n","import { cloneElement } from 'preact';\nimport { useContext } from 'preact/hooks';\nimport { IntlContext } from '../contexts/intl-context';\nimport translateMapping from '../lib/translate-mapping';\n\n/** `` is a Compositional Component.\n *\tIt \"renders\" out any `` values in its child's props.\n *\n *\t@name Localizer\n *\t@param {Object} props\n *\t@param {Object} props.children\tChild components with props to localize.\n *\t@param {Object} context\n *\t@param {Object} context.intl\t\t[internal] dictionary and scope info\n *\t@example\n *\t\n *\t\t} />\n *\t\n *\t// produces:\n *\t\n *\n *\t@example\n *\t\n *\t\tOpen Source Software}>\n *\t\t\tOSS\n *\t\t\n *\t\n *\t// produces:\n *\tOSS\n */\nexport function Localizer({ children }) {\n\tconst { intl } = useContext(IntlContext);\n\n\treturn children && children.length\n\t\t? children.map((child) => cloneElement(child, translateMapping(child.props, intl, true)))\n\t\t: children && cloneElement(children, translateMapping(children.props, intl, true));\n}\n","import { h } from 'preact';\nimport { Text } from './text';\nimport { Localizer } from './localizer';\nimport { HighlightI18N } from './highlight-i18n';\n\n/* eslint-disable react/no-danger */\n\n/** `` is just like {@link Text} but it can also contain html markup in rendered strings. It wraps its contents in a `` tag.\n *\n *\t@param {Object} props\t\t\t\tprops\n *\t@param {String} props.id\t\t\tKey to look up in intl dictionary, within any parent scopes (`$scope1.$scope2.$id`)\n *\t@param {Object} [props.fields={}]\tValues to inject into template `{{fields}}`. Values in the `fields` object will be coerced to strings, with the exception of `` nodes which will be resolved to their translated value\n *\t@param {Number} [props.plural]\t\tInteger \"count\", used to select plural forms\n *\t@param {Object} context\n *\t@param {Object} context.intl\t\t[internal] dictionary and scope info\n *\n *\t@example\n *\t// If there is no dictionary in context..\n *\tThe Foo\n *\t// ..produces the vnode:\n *\tThe Foo\n *\n *\t@example\n *\t// Given a dictionary and some fields..\n *\t{{bar}}' }}>\n *\t\tThe Foo\n *\t\n *\t// ..produces the vnode:\n *\tLe Feux BEAR\n *\n *\t@example\n *\t// Within a scope, both `id` and the definition are namespaced..\n *\tFeux' }}>\n *\t\tThe Foo\n *\t\n *\t// ..produces the vnode:\n *\tLe Feux\n *\n *\t@example\n *\t// renders nothing if there is no key match and no fallback\n *\t

\n *\t// ..produces the vnode:\n *\t
\n */\nexport function MarkupText(props) {\n\treturn (\n\t\t\n\t\t\t} id={props.id} />\n\t\t\n\t);\n}\n\nfunction Html({ html, id }) {\n\tlet value = !html ? html : typeof html === 'string' ? : {html} ;\n\treturn ;\n}\n","import { h } from 'preact';\nimport { useContext } from 'preact/hooks';\nimport { IntlContext } from '../contexts/intl-context';\nimport translateMapping from '../lib/translate-mapping';\nimport { assign } from '../lib/util';\n\n/** `@withText()` is a Higher Order Component, often used as a decorator.\n *\n *\tIt wraps a child component and passes it translations\n *\tbased on a mapping to the dictionary & scope in context.\n *\n *\t@param {Object|Function|String} mapping\t\tMaps prop names to intl keys (or `` nodes).\n *\n *\t@example @withText({\n *\t\tplaceholder: 'user.placeholder'\n *\t})\n *\tclass Foo {\n *\t\t// now the `placeholder` prop is our localized String:\n *\t\trender({ placeholder }) {\n *\t\t\treturn \n *\t\t}\n *\t}\n *\n *\t@example @withText({\n *\t\tplaceholder: fallback text\n *\t})\n *\tclass Foo {\n *\t\trender({ placeholder }) {\n *\t\t\treturn \n *\t\t}\n *\t}\n *\n *\t@example @withText('user.placeholder')\n *\tclass Foo {\n *\t\t// for Strings/Arrays, the last path segment becomes the prop name:\n *\t\trender({ placeholder }) {\n *\t\t\treturn \n *\t\t}\n *\t}\n *\n *\t@example Works with functional components, too\n *\tconst Foo = withText('user.placeholder')( props =>\n *\t\t\n *\t)\n *\n * \t@example getWrappedComponent() returns wrapped child Component\n *\tconst Foo = () =>
;\n *\tconst WrappedFoo = withText('user.placeholer')(Foo);\n *\tWrappedFoo.getWrappedComponent() === Foo; // true\n */\nexport function withText(mapping) {\n\treturn function withTextWrapper(Child) {\n\t\tfunction WithTextWrapper(props, context) {\n\t\t\tconst { intl } = useContext(IntlContext);\n\n\t\t\tlet map = typeof mapping==='function' ? mapping(props, { intl }) : mapping;\n\t\t\tlet translations = translateMapping(map, intl);\n\t\t\treturn h(Child, assign(assign({}, props), translations));\n\t\t}\n\n\t\tWithTextWrapper.getWrappedComponent = Child && Child.getWrappedComponent || (() => Child);\n\t\treturn WithTextWrapper;\n\t};\n}\n","export default function dlv(obj, key, def, p, undef) {\n\tkey = key.split ? key.split('.') : key;\n\tfor (p = 0; p < key.length; p++) {\n\t\tobj = obj ? obj[key[p]] : undef;\n\t}\n\treturn obj === undef ? def : obj;\n}\n","import { createContext } from 'preact';\n\nexport const IntlContext = createContext({ intl: {} });\n","import {\n\tcreateElement,\n\trender as preactRender,\n\tcloneElement as preactCloneElement,\n\tcreateRef,\n\tComponent,\n\tcreateContext,\n\tFragment\n} from 'preact';\nimport {\n\tuseState,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue\n} from 'preact/hooks';\nimport { PureComponent } from './PureComponent';\nimport { memo } from './memo';\nimport { forwardRef } from './forwardRef';\nimport { Children } from './Children';\nimport { Suspense, lazy } from './suspense';\nimport { SuspenseList } from './suspense-list';\nimport { createPortal } from './portals';\nimport {\n\thydrate,\n\trender,\n\tREACT_ELEMENT_TYPE,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n} from './render';\nexport * from './scheduler';\n\nconst version = '16.8.0'; // trick libraries to think we are react\n\n/**\n * Legacy version of createElement.\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component constructor\n */\nfunction createFactory(type) {\n\treturn createElement.bind(null, type);\n}\n\n/**\n * Check if the passed element is a valid (p)react node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isValidElement(element) {\n\treturn !!element && element.$$typeof === REACT_ELEMENT_TYPE;\n}\n\n/**\n * Wrap `cloneElement` to abort if the passed element is not a valid element and apply\n * all vnode normalizations.\n * @param {import('./internal').VNode} element The vnode to clone\n * @param {object} props Props to add when cloning\n * @param {Array} rest Optional component children\n */\nfunction cloneElement(element) {\n\tif (!isValidElement(element)) return element;\n\treturn preactCloneElement.apply(null, arguments);\n}\n\n/**\n * Remove a component tree from the DOM, including state and event handlers.\n * @param {import('./internal').PreactElement} container\n * @returns {boolean}\n */\nfunction unmountComponentAtNode(container) {\n\tif (container._children) {\n\t\tpreactRender(null, container);\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/**\n * Get the matching DOM node for a component\n * @param {import('./internal').Component} component\n * @returns {import('./internal').PreactElement | null}\n */\nfunction findDOMNode(component) {\n\treturn (\n\t\t(component &&\n\t\t\t(component.base || (component.nodeType === 1 && component))) ||\n\t\tnull\n\t);\n}\n\n/**\n * Deprecated way to control batched rendering inside the reconciler, but we\n * already schedule in batches inside our rendering code\n * @template Arg\n * @param {(arg: Arg) => void} callback function that triggers the updated\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n */\n// eslint-disable-next-line camelcase\nconst unstable_batchedUpdates = (callback, arg) => callback(arg);\n\n/**\n * Strict Mode is not implemented in Preact, so we provide a stand-in for it\n * that just renders its children without imposing any restrictions.\n */\nconst StrictMode = Fragment;\n\nexport * from 'preact/hooks';\nexport {\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n\n// React copies the named exports to the default one.\nexport default {\n\tuseState,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue,\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n","import { useContext } from 'preact/hooks';\nimport { IntlContext } from '../contexts/intl-context';\nimport translateMapping from '../lib/translate-mapping';\n\n/** `useText` is the hook version of {@link withText}\n *\n *\t@param {Object|Function|String} mapping\t\tMaps prop names to intl keys (or `` nodes).\n *\n *\t@example function MyComponent() {\n *\t\tconst { placeholder } = useText({\n *\t\t\tplaceholder: 'user.placeholder'\n *\t\t});\n *\t\treturn \n *\t}\n *\n *\t@example function MyComponent() {\n *\t\tconst { placeholder } = useText({\n *\t\t\tplaceholder: fallback text\n *\t\t});\n *\t\treturn \n *\t}\n *\n *\t@example function MyComponent() {\n *\t\t// for Strings/Arrays, the last path segment becomes the prop name:\n *\t\tconst { placeholder } = useText('user.placeholder');\n *\n *\t\treturn \n *\t}\n */\nexport function useText(mapping) {\n\tconst { intl } = useContext(IntlContext);\n\n\treturn translateMapping(\n\t\ttypeof mapping==='function' ? mapping({ intl }) : mapping,\n\t\tintl\n\t);\n}\n","module.exports = function(originalModule) {\n\tif (!originalModule.webpackPolyfill) {\n\t\tvar module = Object.create(originalModule);\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"exports\", {\n\t\t\tenumerable: true\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nexport default function createMixins(breakpoints, spacing, mixins) {\n var _toolbar;\n\n return _extends({\n gutters: function gutters() {\n var styles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // To deprecate in v4.1\n // warning(\n // false,\n // [\n // 'Material-UI: Theme.mixins.gutters() is deprecated.',\n // 'You can use the source of the mixin directly:',\n // `\n // paddingLeft: theme.spacing(2),\n // paddingRight: theme.spacing(2),\n // [theme.breakpoints.up('sm')]: {\n // paddingLeft: theme.spacing(3),\n // paddingRight: theme.spacing(3),\n // },\n // `,\n // ].join('\\n'),\n // );\n return _extends({\n paddingLeft: spacing(2),\n paddingRight: spacing(2)\n }, styles, _defineProperty({}, breakpoints.up('sm'), _extends({\n paddingLeft: spacing(3),\n paddingRight: spacing(3)\n }, styles[breakpoints.up('sm')])));\n },\n toolbar: (_toolbar = {\n minHeight: 56\n }, _defineProperty(_toolbar, \"\".concat(breakpoints.up('xs'), \" and (orientation: landscape)\"), {\n minHeight: 48\n }), _defineProperty(_toolbar, breakpoints.up('sm'), {\n minHeight: 64\n }), _toolbar)\n }, mixins);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@material-ui/utils\";\nimport { deepmerge } from '@material-ui/utils';\nimport common from '../colors/common';\nimport grey from '../colors/grey';\nimport indigo from '../colors/indigo';\nimport pink from '../colors/pink';\nimport red from '../colors/red';\nimport orange from '../colors/orange';\nimport blue from '../colors/blue';\nimport green from '../colors/green';\nimport { darken, getContrastRatio, lighten } from './colorManipulator';\nexport var light = {\n // The colors used to style the text.\n text: {\n // The most important text.\n primary: 'rgba(0, 0, 0, 0.87)',\n // Secondary text.\n secondary: 'rgba(0, 0, 0, 0.54)',\n // Disabled text have even lower visual prominence.\n disabled: 'rgba(0, 0, 0, 0.38)',\n // Text hints.\n hint: 'rgba(0, 0, 0, 0.38)'\n },\n // The color used to divide different elements.\n divider: 'rgba(0, 0, 0, 0.12)',\n // The background colors used to style the surfaces.\n // Consistency between these values is important.\n background: {\n paper: common.white,\n default: grey[50]\n },\n // The colors used to style the action elements.\n action: {\n // The color of an active action like an icon button.\n active: 'rgba(0, 0, 0, 0.54)',\n // The color of an hovered action.\n hover: 'rgba(0, 0, 0, 0.04)',\n hoverOpacity: 0.04,\n // The color of a selected action.\n selected: 'rgba(0, 0, 0, 0.08)',\n selectedOpacity: 0.08,\n // The color of a disabled action.\n disabled: 'rgba(0, 0, 0, 0.26)',\n // The background color of a disabled action.\n disabledBackground: 'rgba(0, 0, 0, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(0, 0, 0, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.12\n }\n};\nexport var dark = {\n text: {\n primary: common.white,\n secondary: 'rgba(255, 255, 255, 0.7)',\n disabled: 'rgba(255, 255, 255, 0.5)',\n hint: 'rgba(255, 255, 255, 0.5)',\n icon: 'rgba(255, 255, 255, 0.5)'\n },\n divider: 'rgba(255, 255, 255, 0.12)',\n background: {\n paper: grey[800],\n default: '#303030'\n },\n action: {\n active: common.white,\n hover: 'rgba(255, 255, 255, 0.08)',\n hoverOpacity: 0.08,\n selected: 'rgba(255, 255, 255, 0.16)',\n selectedOpacity: 0.16,\n disabled: 'rgba(255, 255, 255, 0.3)',\n disabledBackground: 'rgba(255, 255, 255, 0.12)',\n disabledOpacity: 0.38,\n focus: 'rgba(255, 255, 255, 0.12)',\n focusOpacity: 0.12,\n activatedOpacity: 0.24\n }\n};\n\nfunction addLightOrDark(intent, direction, shade, tonalOffset) {\n var tonalOffsetLight = tonalOffset.light || tonalOffset;\n var tonalOffsetDark = tonalOffset.dark || tonalOffset * 1.5;\n\n if (!intent[direction]) {\n if (intent.hasOwnProperty(shade)) {\n intent[direction] = intent[shade];\n } else if (direction === 'light') {\n intent.light = lighten(intent.main, tonalOffsetLight);\n } else if (direction === 'dark') {\n intent.dark = darken(intent.main, tonalOffsetDark);\n }\n }\n}\n\nexport default function createPalette(palette) {\n var _palette$primary = palette.primary,\n primary = _palette$primary === void 0 ? {\n light: indigo[300],\n main: indigo[500],\n dark: indigo[700]\n } : _palette$primary,\n _palette$secondary = palette.secondary,\n secondary = _palette$secondary === void 0 ? {\n light: pink.A200,\n main: pink.A400,\n dark: pink.A700\n } : _palette$secondary,\n _palette$error = palette.error,\n error = _palette$error === void 0 ? {\n light: red[300],\n main: red[500],\n dark: red[700]\n } : _palette$error,\n _palette$warning = palette.warning,\n warning = _palette$warning === void 0 ? {\n light: orange[300],\n main: orange[500],\n dark: orange[700]\n } : _palette$warning,\n _palette$info = palette.info,\n info = _palette$info === void 0 ? {\n light: blue[300],\n main: blue[500],\n dark: blue[700]\n } : _palette$info,\n _palette$success = palette.success,\n success = _palette$success === void 0 ? {\n light: green[300],\n main: green[500],\n dark: green[700]\n } : _palette$success,\n _palette$type = palette.type,\n type = _palette$type === void 0 ? 'light' : _palette$type,\n _palette$contrastThre = palette.contrastThreshold,\n contrastThreshold = _palette$contrastThre === void 0 ? 3 : _palette$contrastThre,\n _palette$tonalOffset = palette.tonalOffset,\n tonalOffset = _palette$tonalOffset === void 0 ? 0.2 : _palette$tonalOffset,\n other = _objectWithoutProperties(palette, [\"primary\", \"secondary\", \"error\", \"warning\", \"info\", \"success\", \"type\", \"contrastThreshold\", \"tonalOffset\"]); // Use the same logic as\n // Bootstrap: https://github.com/twbs/bootstrap/blob/1d6e3710dd447de1a200f29e8fa521f8a0908f70/scss/_functions.scss#L59\n // and material-components-web https://github.com/material-components/material-components-web/blob/ac46b8863c4dab9fc22c4c662dc6bd1b65dd652f/packages/mdc-theme/_functions.scss#L54\n\n\n function getContrastText(background) {\n var contrastText = getContrastRatio(background, dark.text.primary) >= contrastThreshold ? dark.text.primary : light.text.primary;\n\n if (process.env.NODE_ENV !== 'production') {\n var contrast = getContrastRatio(background, contrastText);\n\n if (contrast < 3) {\n console.error([\"Material-UI: The contrast ratio of \".concat(contrast, \":1 for \").concat(contrastText, \" on \").concat(background), 'falls below the WCAG recommended absolute minimum contrast ratio of 3:1.', 'https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast'].join('\\n'));\n }\n }\n\n return contrastText;\n }\n\n var augmentColor = function augmentColor(color) {\n var mainShade = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;\n var lightShade = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 300;\n var darkShade = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 700;\n color = _extends({}, color);\n\n if (!color.main && color[mainShade]) {\n color.main = color[mainShade];\n }\n\n if (!color.main) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? \"Material-UI: The color provided to augmentColor(color) is invalid.\\nThe color object needs to have a `main` property or a `\".concat(mainShade, \"` property.\") : _formatMuiErrorMessage(4, mainShade));\n }\n\n if (typeof color.main !== 'string') {\n throw new Error(process.env.NODE_ENV !== \"production\" ? \"Material-UI: The color provided to augmentColor(color) is invalid.\\n`color.main` should be a string, but `\".concat(JSON.stringify(color.main), \"` was provided instead.\\n\\nDid you intend to use one of the following approaches?\\n\\nimport {\\xA0green } from \\\"@material-ui/core/colors\\\";\\n\\nconst theme1 = createMuiTheme({ palette: {\\n primary: green,\\n} });\\n\\nconst theme2 = createMuiTheme({ palette: {\\n primary: { main: green[500] },\\n} });\") : _formatMuiErrorMessage(5, JSON.stringify(color.main)));\n }\n\n addLightOrDark(color, 'light', lightShade, tonalOffset);\n addLightOrDark(color, 'dark', darkShade, tonalOffset);\n\n if (!color.contrastText) {\n color.contrastText = getContrastText(color.main);\n }\n\n return color;\n };\n\n var types = {\n dark: dark,\n light: light\n };\n\n if (process.env.NODE_ENV !== 'production') {\n if (!types[type]) {\n console.error(\"Material-UI: The palette type `\".concat(type, \"` is not supported.\"));\n }\n }\n\n var paletteOutput = deepmerge(_extends({\n // A collection of common colors.\n common: common,\n // The palette type, can be light or dark.\n type: type,\n // The colors used to represent primary interface elements for a user.\n primary: augmentColor(primary),\n // The colors used to represent secondary interface elements for a user.\n secondary: augmentColor(secondary, 'A400', 'A200', 'A700'),\n // The colors used to represent interface elements that the user should be made aware of.\n error: augmentColor(error),\n // The colors used to represent potentially dangerous actions or important messages.\n warning: augmentColor(warning),\n // The colors used to present information to the user that is neutral and not necessarily important.\n info: augmentColor(info),\n // The colors used to indicate the successful completion of an action that user triggered.\n success: augmentColor(success),\n // The grey colors.\n grey: grey,\n // Used by `getContrastText()` to maximize the contrast between\n // the background and the text.\n contrastThreshold: contrastThreshold,\n // Takes a background color and returns the text color that maximizes the contrast.\n getContrastText: getContrastText,\n // Generate a rich color object.\n augmentColor: augmentColor,\n // Used by the functions below to shift a color's luminance by approximately\n // two indexes within its tonal palette.\n // E.g., shift from Red 500 to Red 300 or Red 700.\n tonalOffset: tonalOffset\n }, types[type]), other);\n return paletteOutput;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport { deepmerge } from '@material-ui/utils';\n\nfunction round(value) {\n return Math.round(value * 1e5) / 1e5;\n}\n\nvar caseAllCaps = {\n textTransform: 'uppercase'\n};\nvar defaultFontFamily = '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif';\n/**\n * @see @link{https://material.io/design/typography/the-type-system.html}\n * @see @link{https://material.io/design/typography/understanding-typography.html}\n */\n\nexport default function createTypography(palette, typography) {\n var _ref = typeof typography === 'function' ? typography(palette) : typography,\n _ref$fontFamily = _ref.fontFamily,\n fontFamily = _ref$fontFamily === void 0 ? defaultFontFamily : _ref$fontFamily,\n _ref$fontSize = _ref.fontSize,\n fontSize = _ref$fontSize === void 0 ? 14 : _ref$fontSize,\n _ref$fontWeightLight = _ref.fontWeightLight,\n fontWeightLight = _ref$fontWeightLight === void 0 ? 300 : _ref$fontWeightLight,\n _ref$fontWeightRegula = _ref.fontWeightRegular,\n fontWeightRegular = _ref$fontWeightRegula === void 0 ? 400 : _ref$fontWeightRegula,\n _ref$fontWeightMedium = _ref.fontWeightMedium,\n fontWeightMedium = _ref$fontWeightMedium === void 0 ? 500 : _ref$fontWeightMedium,\n _ref$fontWeightBold = _ref.fontWeightBold,\n fontWeightBold = _ref$fontWeightBold === void 0 ? 700 : _ref$fontWeightBold,\n _ref$htmlFontSize = _ref.htmlFontSize,\n htmlFontSize = _ref$htmlFontSize === void 0 ? 16 : _ref$htmlFontSize,\n allVariants = _ref.allVariants,\n pxToRem2 = _ref.pxToRem,\n other = _objectWithoutProperties(_ref, [\"fontFamily\", \"fontSize\", \"fontWeightLight\", \"fontWeightRegular\", \"fontWeightMedium\", \"fontWeightBold\", \"htmlFontSize\", \"allVariants\", \"pxToRem\"]);\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof fontSize !== 'number') {\n console.error('Material-UI: `fontSize` is required to be a number.');\n }\n\n if (typeof htmlFontSize !== 'number') {\n console.error('Material-UI: `htmlFontSize` is required to be a number.');\n }\n }\n\n var coef = fontSize / 14;\n\n var pxToRem = pxToRem2 || function (size) {\n return \"\".concat(size / htmlFontSize * coef, \"rem\");\n };\n\n var buildVariant = function buildVariant(fontWeight, size, lineHeight, letterSpacing, casing) {\n return _extends({\n fontFamily: fontFamily,\n fontWeight: fontWeight,\n fontSize: pxToRem(size),\n // Unitless following https://meyerweb.com/eric/thoughts/2006/02/08/unitless-line-heights/\n lineHeight: lineHeight\n }, fontFamily === defaultFontFamily ? {\n letterSpacing: \"\".concat(round(letterSpacing / size), \"em\")\n } : {}, casing, allVariants);\n };\n\n var variants = {\n h1: buildVariant(fontWeightLight, 96, 1.167, -1.5),\n h2: buildVariant(fontWeightLight, 60, 1.2, -0.5),\n h3: buildVariant(fontWeightRegular, 48, 1.167, 0),\n h4: buildVariant(fontWeightRegular, 34, 1.235, 0.25),\n h5: buildVariant(fontWeightRegular, 24, 1.334, 0),\n h6: buildVariant(fontWeightMedium, 20, 1.6, 0.15),\n subtitle1: buildVariant(fontWeightRegular, 16, 1.75, 0.15),\n subtitle2: buildVariant(fontWeightMedium, 14, 1.57, 0.1),\n body1: buildVariant(fontWeightRegular, 16, 1.5, 0.15),\n body2: buildVariant(fontWeightRegular, 14, 1.43, 0.15),\n button: buildVariant(fontWeightMedium, 14, 1.75, 0.4, caseAllCaps),\n caption: buildVariant(fontWeightRegular, 12, 1.66, 0.4),\n overline: buildVariant(fontWeightRegular, 12, 2.66, 1, caseAllCaps)\n };\n return deepmerge(_extends({\n htmlFontSize: htmlFontSize,\n pxToRem: pxToRem,\n round: round,\n // TODO v5: remove\n fontFamily: fontFamily,\n fontSize: fontSize,\n fontWeightLight: fontWeightLight,\n fontWeightRegular: fontWeightRegular,\n fontWeightMedium: fontWeightMedium,\n fontWeightBold: fontWeightBold\n }, variants), other, {\n clone: false // No need to clone deep\n\n });\n}","var shadowKeyUmbraOpacity = 0.2;\nvar shadowKeyPenumbraOpacity = 0.14;\nvar shadowAmbientShadowOpacity = 0.12;\n\nfunction createShadow() {\n return [\"\".concat(arguments.length <= 0 ? undefined : arguments[0], \"px \").concat(arguments.length <= 1 ? undefined : arguments[1], \"px \").concat(arguments.length <= 2 ? undefined : arguments[2], \"px \").concat(arguments.length <= 3 ? undefined : arguments[3], \"px rgba(0,0,0,\").concat(shadowKeyUmbraOpacity, \")\"), \"\".concat(arguments.length <= 4 ? undefined : arguments[4], \"px \").concat(arguments.length <= 5 ? undefined : arguments[5], \"px \").concat(arguments.length <= 6 ? undefined : arguments[6], \"px \").concat(arguments.length <= 7 ? undefined : arguments[7], \"px rgba(0,0,0,\").concat(shadowKeyPenumbraOpacity, \")\"), \"\".concat(arguments.length <= 8 ? undefined : arguments[8], \"px \").concat(arguments.length <= 9 ? undefined : arguments[9], \"px \").concat(arguments.length <= 10 ? undefined : arguments[10], \"px \").concat(arguments.length <= 11 ? undefined : arguments[11], \"px rgba(0,0,0,\").concat(shadowAmbientShadowOpacity, \")\")].join(',');\n} // Values from https://github.com/material-components/material-components-web/blob/be8747f94574669cb5e7add1a7c54fa41a89cec7/packages/mdc-elevation/_variables.scss\n\n\nvar shadows = ['none', createShadow(0, 2, 1, -1, 0, 1, 1, 0, 0, 1, 3, 0), createShadow(0, 3, 1, -2, 0, 2, 2, 0, 0, 1, 5, 0), createShadow(0, 3, 3, -2, 0, 3, 4, 0, 0, 1, 8, 0), createShadow(0, 2, 4, -1, 0, 4, 5, 0, 0, 1, 10, 0), createShadow(0, 3, 5, -1, 0, 5, 8, 0, 0, 1, 14, 0), createShadow(0, 3, 5, -1, 0, 6, 10, 0, 0, 1, 18, 0), createShadow(0, 4, 5, -2, 0, 7, 10, 1, 0, 2, 16, 1), createShadow(0, 5, 5, -3, 0, 8, 10, 1, 0, 3, 14, 2), createShadow(0, 5, 6, -3, 0, 9, 12, 1, 0, 3, 16, 2), createShadow(0, 6, 6, -3, 0, 10, 14, 1, 0, 4, 18, 3), createShadow(0, 6, 7, -4, 0, 11, 15, 1, 0, 4, 20, 3), createShadow(0, 7, 8, -4, 0, 12, 17, 2, 0, 5, 22, 4), createShadow(0, 7, 8, -4, 0, 13, 19, 2, 0, 5, 24, 4), createShadow(0, 7, 9, -4, 0, 14, 21, 2, 0, 5, 26, 4), createShadow(0, 8, 9, -5, 0, 15, 22, 2, 0, 6, 28, 5), createShadow(0, 8, 10, -5, 0, 16, 24, 2, 0, 6, 30, 5), createShadow(0, 8, 11, -5, 0, 17, 26, 2, 0, 6, 32, 5), createShadow(0, 9, 11, -5, 0, 18, 28, 2, 0, 7, 34, 6), createShadow(0, 9, 12, -6, 0, 19, 29, 2, 0, 7, 36, 6), createShadow(0, 10, 13, -6, 0, 20, 31, 3, 0, 8, 38, 7), createShadow(0, 10, 13, -6, 0, 21, 33, 3, 0, 8, 40, 7), createShadow(0, 10, 14, -6, 0, 22, 35, 3, 0, 8, 42, 7), createShadow(0, 11, 14, -7, 0, 23, 36, 3, 0, 9, 44, 8), createShadow(0, 11, 15, -7, 0, 24, 38, 3, 0, 9, 46, 8)];\nexport default shadows;","import { createUnarySpacing } from '@material-ui/system';\nvar warnOnce;\nexport default function createSpacing() {\n var spacingInput = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 8;\n\n // Already transformed.\n if (spacingInput.mui) {\n return spacingInput;\n } // Material Design layouts are visually balanced. Most measurements align to an 8dp grid applied, which aligns both spacing and the overall layout.\n // Smaller components, such as icons and type, can align to a 4dp grid.\n // https://material.io/design/layout/understanding-layout.html#usage\n\n\n var transform = createUnarySpacing({\n spacing: spacingInput\n });\n\n var spacing = function spacing() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (!(args.length <= 4)) {\n console.error(\"Material-UI: Too many arguments provided, expected between 0 and 4, got \".concat(args.length));\n }\n }\n\n if (args.length === 0) {\n return transform(1);\n }\n\n if (args.length === 1) {\n return transform(args[0]);\n }\n\n return args.map(function (argument) {\n if (typeof argument === 'string') {\n return argument;\n }\n\n var output = transform(argument);\n return typeof output === 'number' ? \"\".concat(output, \"px\") : output;\n }).join(' ');\n }; // Backward compatibility, to remove in v5.\n\n\n Object.defineProperty(spacing, 'unit', {\n get: function get() {\n if (process.env.NODE_ENV !== 'production') {\n if (!warnOnce || process.env.NODE_ENV === 'test') {\n console.error(['Material-UI: theme.spacing.unit usage has been deprecated.', 'It will be removed in v5.', 'You can replace `theme.spacing.unit * y` with `theme.spacing(y)`.', '', 'You can use the `https://github.com/mui-org/material-ui/tree/master/packages/material-ui-codemod/README.md#theme-spacing-api` migration helper to make the process smoother.'].join('\\n'));\n }\n\n warnOnce = true;\n }\n\n return spacingInput;\n }\n });\n spacing.mui = true;\n return spacing;\n}","var common = {\n black: '#000',\n white: '#fff'\n};\nexport default common;","var grey = {\n 50: '#fafafa',\n 100: '#f5f5f5',\n 200: '#eeeeee',\n 300: '#e0e0e0',\n 400: '#bdbdbd',\n 500: '#9e9e9e',\n 600: '#757575',\n 700: '#616161',\n 800: '#424242',\n 900: '#212121',\n A100: '#d5d5d5',\n A200: '#aaaaaa',\n A400: '#303030',\n A700: '#616161'\n};\nexport default grey;","var indigo = {\n 50: '#e8eaf6',\n 100: '#c5cae9',\n 200: '#9fa8da',\n 300: '#7986cb',\n 400: '#5c6bc0',\n 500: '#3f51b5',\n 600: '#3949ab',\n 700: '#303f9f',\n 800: '#283593',\n 900: '#1a237e',\n A100: '#8c9eff',\n A200: '#536dfe',\n A400: '#3d5afe',\n A700: '#304ffe'\n};\nexport default indigo;","var pink = {\n 50: '#fce4ec',\n 100: '#f8bbd0',\n 200: '#f48fb1',\n 300: '#f06292',\n 400: '#ec407a',\n 500: '#e91e63',\n 600: '#d81b60',\n 700: '#c2185b',\n 800: '#ad1457',\n 900: '#880e4f',\n A100: '#ff80ab',\n A200: '#ff4081',\n A400: '#f50057',\n A700: '#c51162'\n};\nexport default pink;","var red = {\n 50: '#ffebee',\n 100: '#ffcdd2',\n 200: '#ef9a9a',\n 300: '#e57373',\n 400: '#ef5350',\n 500: '#f44336',\n 600: '#e53935',\n 700: '#d32f2f',\n 800: '#c62828',\n 900: '#b71c1c',\n A100: '#ff8a80',\n A200: '#ff5252',\n A400: '#ff1744',\n A700: '#d50000'\n};\nexport default red;","var orange = {\n 50: '#fff3e0',\n 100: '#ffe0b2',\n 200: '#ffcc80',\n 300: '#ffb74d',\n 400: '#ffa726',\n 500: '#ff9800',\n 600: '#fb8c00',\n 700: '#f57c00',\n 800: '#ef6c00',\n 900: '#e65100',\n A100: '#ffd180',\n A200: '#ffab40',\n A400: '#ff9100',\n A700: '#ff6d00'\n};\nexport default orange;","var blue = {\n 50: '#e3f2fd',\n 100: '#bbdefb',\n 200: '#90caf9',\n 300: '#64b5f6',\n 400: '#42a5f5',\n 500: '#2196f3',\n 600: '#1e88e5',\n 700: '#1976d2',\n 800: '#1565c0',\n 900: '#0d47a1',\n A100: '#82b1ff',\n A200: '#448aff',\n A400: '#2979ff',\n A700: '#2962ff'\n};\nexport default blue;","var green = {\n 50: '#e8f5e9',\n 100: '#c8e6c9',\n 200: '#a5d6a7',\n 300: '#81c784',\n 400: '#66bb6a',\n 500: '#4caf50',\n 600: '#43a047',\n 700: '#388e3c',\n 800: '#2e7d32',\n 900: '#1b5e20',\n A100: '#b9f6ca',\n A200: '#69f0ae',\n A400: '#00e676',\n A700: '#00c853'\n};\nexport default green;","var shape = {\n borderRadius: 4\n};\nexport default shape;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport { deepmerge } from '@material-ui/utils';\nimport createBreakpoints from './createBreakpoints';\nimport createMixins from './createMixins';\nimport createPalette from './createPalette';\nimport createTypography from './createTypography';\nimport shadows from './shadows';\nimport shape from './shape';\nimport createSpacing from './createSpacing';\nimport transitions from './transitions';\nimport zIndex from './zIndex';\n\nfunction createMuiTheme() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _options$breakpoints = options.breakpoints,\n breakpointsInput = _options$breakpoints === void 0 ? {} : _options$breakpoints,\n _options$mixins = options.mixins,\n mixinsInput = _options$mixins === void 0 ? {} : _options$mixins,\n _options$palette = options.palette,\n paletteInput = _options$palette === void 0 ? {} : _options$palette,\n spacingInput = options.spacing,\n _options$typography = options.typography,\n typographyInput = _options$typography === void 0 ? {} : _options$typography,\n other = _objectWithoutProperties(options, [\"breakpoints\", \"mixins\", \"palette\", \"spacing\", \"typography\"]);\n\n var palette = createPalette(paletteInput);\n var breakpoints = createBreakpoints(breakpointsInput);\n var spacing = createSpacing(spacingInput);\n var muiTheme = deepmerge({\n breakpoints: breakpoints,\n direction: 'ltr',\n mixins: createMixins(breakpoints, spacing, mixinsInput),\n overrides: {},\n // Inject custom styles\n palette: palette,\n props: {},\n // Provide default props\n shadows: shadows,\n typography: createTypography(palette, typographyInput),\n spacing: spacing,\n shape: shape,\n transitions: transitions,\n zIndex: zIndex\n }, other);\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n muiTheme = args.reduce(function (acc, argument) {\n return deepmerge(acc, argument);\n }, muiTheme);\n\n if (process.env.NODE_ENV !== 'production') {\n var pseudoClasses = ['checked', 'disabled', 'error', 'focused', 'focusVisible', 'required', 'expanded', 'selected'];\n\n var traverse = function traverse(node, parentKey) {\n var depth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var key; // eslint-disable-next-line guard-for-in, no-restricted-syntax\n\n for (key in node) {\n var child = node[key];\n\n if (depth === 1) {\n if (key.indexOf('Mui') === 0 && child) {\n traverse(child, key, depth + 1);\n }\n } else if (pseudoClasses.indexOf(key) !== -1 && Object.keys(child).length > 0) {\n if (process.env.NODE_ENV !== 'production') {\n console.error([\"Material-UI: The `\".concat(parentKey, \"` component increases \") + \"the CSS specificity of the `\".concat(key, \"` internal state.\"), 'You can not override it like this: ', JSON.stringify(node, null, 2), '', 'Instead, you need to use the $ruleName syntax:', JSON.stringify({\n root: _defineProperty({}, \"&$\".concat(key), child)\n }, null, 2), '', 'https://material-ui.com/r/pseudo-classes-guide'].join('\\n'));\n } // Remove the style to prevent global conflicts.\n\n\n node[key] = {};\n }\n }\n };\n\n traverse(muiTheme.overrides);\n }\n\n return muiTheme;\n}\n\nexport default createMuiTheme;","//! moment.js locale configuration\n//! locale : Afrikaans [af]\n//! author : Werner Mollentze : https://github.com/wernerm\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('af', {\n months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split(\n '_'\n ),\n weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n meridiemParse: /vm|nm/i,\n isPM: function (input) {\n return /^nm$/i.test(input);\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'vm' : 'VM';\n } else {\n return isLower ? 'nm' : 'NM';\n }\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Vandag om] LT',\n nextDay: '[Môre om] LT',\n nextWeek: 'dddd [om] LT',\n lastDay: '[Gister om] LT',\n lastWeek: '[Laas] dddd [om] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'oor %s',\n past: '%s gelede',\n s: \"'n paar sekondes\",\n ss: '%d sekondes',\n m: \"'n minuut\",\n mm: '%d minute',\n h: \"'n uur\",\n hh: '%d ure',\n d: \"'n dag\",\n dd: '%d dae',\n M: \"'n maand\",\n MM: '%d maande',\n y: \"'n jaar\",\n yy: '%d jaar',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ste|de)/,\n ordinal: function (number) {\n return (\n number +\n (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de')\n ); // Thanks to Joris Röling : https://github.com/jjupiter\n },\n week: {\n dow: 1, // Maandag is die eerste dag van die week.\n doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n },\n});\n","//! moment.js locale configuration\n//! locale : Bosnian [bs]\n//! author : Nedim Cholich : https://github.com/frontyard\n//! based on (hr) translation by Bojan Marković\n\nimport moment from '../moment';\n\nfunction translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n}\n\nexport default moment.defineLocale('bs', {\n months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split(\n '_'\n ),\n monthsShort: 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm',\n LLLL: 'dddd, D. MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n return '[prošlu] dddd [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","export {\n ApolloProvider,\n ApolloConsumer,\n getApolloContext,\n resetApolloContext,\n ApolloContextValue\n} from './context';\n\nexport * from './hooks';\n\nexport {\n DocumentType,\n IDocumentDefinition,\n operationName,\n parser\n} from './parser';\n\nexport * from './types/types';\n","//! moment.js\n//! version : 2.29.1\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\nvar hookCallback;\n\nfunction hooks() {\n return hookCallback.apply(null, arguments);\n}\n\n// This is done to register the method called with moment()\n// without creating circular dependencies.\nfunction setHookCallback(callback) {\n hookCallback = callback;\n}\n\nfunction isArray(input) {\n return (\n input instanceof Array ||\n Object.prototype.toString.call(input) === '[object Array]'\n );\n}\n\nfunction isObject(input) {\n // IE8 will treat undefined and null as object if it wasn't for\n // input != null\n return (\n input != null &&\n Object.prototype.toString.call(input) === '[object Object]'\n );\n}\n\nfunction hasOwnProp(a, b) {\n return Object.prototype.hasOwnProperty.call(a, b);\n}\n\nfunction isObjectEmpty(obj) {\n if (Object.getOwnPropertyNames) {\n return Object.getOwnPropertyNames(obj).length === 0;\n } else {\n var k;\n for (k in obj) {\n if (hasOwnProp(obj, k)) {\n return false;\n }\n }\n return true;\n }\n}\n\nfunction isUndefined(input) {\n return input === void 0;\n}\n\nfunction isNumber(input) {\n return (\n typeof input === 'number' ||\n Object.prototype.toString.call(input) === '[object Number]'\n );\n}\n\nfunction isDate(input) {\n return (\n input instanceof Date ||\n Object.prototype.toString.call(input) === '[object Date]'\n );\n}\n\nfunction map(arr, fn) {\n var res = [],\n i;\n for (i = 0; i < arr.length; ++i) {\n res.push(fn(arr[i], i));\n }\n return res;\n}\n\nfunction extend(a, b) {\n for (var i in b) {\n if (hasOwnProp(b, i)) {\n a[i] = b[i];\n }\n }\n\n if (hasOwnProp(b, 'toString')) {\n a.toString = b.toString;\n }\n\n if (hasOwnProp(b, 'valueOf')) {\n a.valueOf = b.valueOf;\n }\n\n return a;\n}\n\nfunction createUTC(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, true).utc();\n}\n\nfunction defaultParsingFlags() {\n // We need to deep clone this object.\n return {\n empty: false,\n unusedTokens: [],\n unusedInput: [],\n overflow: -2,\n charsLeftOver: 0,\n nullInput: false,\n invalidEra: null,\n invalidMonth: null,\n invalidFormat: false,\n userInvalidated: false,\n iso: false,\n parsedDateParts: [],\n era: null,\n meridiem: null,\n rfc2822: false,\n weekdayMismatch: false,\n };\n}\n\nfunction getParsingFlags(m) {\n if (m._pf == null) {\n m._pf = defaultParsingFlags();\n }\n return m._pf;\n}\n\nvar some;\nif (Array.prototype.some) {\n some = Array.prototype.some;\n} else {\n some = function (fun) {\n var t = Object(this),\n len = t.length >>> 0,\n i;\n\n for (i = 0; i < len; i++) {\n if (i in t && fun.call(this, t[i], i, t)) {\n return true;\n }\n }\n\n return false;\n };\n}\n\nfunction isValid(m) {\n if (m._isValid == null) {\n var flags = getParsingFlags(m),\n parsedParts = some.call(flags.parsedDateParts, function (i) {\n return i != null;\n }),\n isNowValid =\n !isNaN(m._d.getTime()) &&\n flags.overflow < 0 &&\n !flags.empty &&\n !flags.invalidEra &&\n !flags.invalidMonth &&\n !flags.invalidWeekday &&\n !flags.weekdayMismatch &&\n !flags.nullInput &&\n !flags.invalidFormat &&\n !flags.userInvalidated &&\n (!flags.meridiem || (flags.meridiem && parsedParts));\n\n if (m._strict) {\n isNowValid =\n isNowValid &&\n flags.charsLeftOver === 0 &&\n flags.unusedTokens.length === 0 &&\n flags.bigHour === undefined;\n }\n\n if (Object.isFrozen == null || !Object.isFrozen(m)) {\n m._isValid = isNowValid;\n } else {\n return isNowValid;\n }\n }\n return m._isValid;\n}\n\nfunction createInvalid(flags) {\n var m = createUTC(NaN);\n if (flags != null) {\n extend(getParsingFlags(m), flags);\n } else {\n getParsingFlags(m).userInvalidated = true;\n }\n\n return m;\n}\n\n// Plugins that add properties should also add the key here (null value),\n// so we can properly clone ourselves.\nvar momentProperties = (hooks.momentProperties = []),\n updateInProgress = false;\n\nfunction copyConfig(to, from) {\n var i, prop, val;\n\n if (!isUndefined(from._isAMomentObject)) {\n to._isAMomentObject = from._isAMomentObject;\n }\n if (!isUndefined(from._i)) {\n to._i = from._i;\n }\n if (!isUndefined(from._f)) {\n to._f = from._f;\n }\n if (!isUndefined(from._l)) {\n to._l = from._l;\n }\n if (!isUndefined(from._strict)) {\n to._strict = from._strict;\n }\n if (!isUndefined(from._tzm)) {\n to._tzm = from._tzm;\n }\n if (!isUndefined(from._isUTC)) {\n to._isUTC = from._isUTC;\n }\n if (!isUndefined(from._offset)) {\n to._offset = from._offset;\n }\n if (!isUndefined(from._pf)) {\n to._pf = getParsingFlags(from);\n }\n if (!isUndefined(from._locale)) {\n to._locale = from._locale;\n }\n\n if (momentProperties.length > 0) {\n for (i = 0; i < momentProperties.length; i++) {\n prop = momentProperties[i];\n val = from[prop];\n if (!isUndefined(val)) {\n to[prop] = val;\n }\n }\n }\n\n return to;\n}\n\n// Moment prototype object\nfunction Moment(config) {\n copyConfig(this, config);\n this._d = new Date(config._d != null ? config._d.getTime() : NaN);\n if (!this.isValid()) {\n this._d = new Date(NaN);\n }\n // Prevent infinite loop in case updateOffset creates new moment\n // objects.\n if (updateInProgress === false) {\n updateInProgress = true;\n hooks.updateOffset(this);\n updateInProgress = false;\n }\n}\n\nfunction isMoment(obj) {\n return (\n obj instanceof Moment || (obj != null && obj._isAMomentObject != null)\n );\n}\n\nfunction warn(msg) {\n if (\n hooks.suppressDeprecationWarnings === false &&\n typeof console !== 'undefined' &&\n console.warn\n ) {\n console.warn('Deprecation warning: ' + msg);\n }\n}\n\nfunction deprecate(msg, fn) {\n var firstTime = true;\n\n return extend(function () {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(null, msg);\n }\n if (firstTime) {\n var args = [],\n arg,\n i,\n key;\n for (i = 0; i < arguments.length; i++) {\n arg = '';\n if (typeof arguments[i] === 'object') {\n arg += '\\n[' + i + '] ';\n for (key in arguments[0]) {\n if (hasOwnProp(arguments[0], key)) {\n arg += key + ': ' + arguments[0][key] + ', ';\n }\n }\n arg = arg.slice(0, -2); // Remove trailing comma and space\n } else {\n arg = arguments[i];\n }\n args.push(arg);\n }\n warn(\n msg +\n '\\nArguments: ' +\n Array.prototype.slice.call(args).join('') +\n '\\n' +\n new Error().stack\n );\n firstTime = false;\n }\n return fn.apply(this, arguments);\n }, fn);\n}\n\nvar deprecations = {};\n\nfunction deprecateSimple(name, msg) {\n if (hooks.deprecationHandler != null) {\n hooks.deprecationHandler(name, msg);\n }\n if (!deprecations[name]) {\n warn(msg);\n deprecations[name] = true;\n }\n}\n\nhooks.suppressDeprecationWarnings = false;\nhooks.deprecationHandler = null;\n\nfunction isFunction(input) {\n return (\n (typeof Function !== 'undefined' && input instanceof Function) ||\n Object.prototype.toString.call(input) === '[object Function]'\n );\n}\n\nfunction set(config) {\n var prop, i;\n for (i in config) {\n if (hasOwnProp(config, i)) {\n prop = config[i];\n if (isFunction(prop)) {\n this[i] = prop;\n } else {\n this['_' + i] = prop;\n }\n }\n }\n this._config = config;\n // Lenient ordinal parsing accepts just a number in addition to\n // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n this._dayOfMonthOrdinalParseLenient = new RegExp(\n (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +\n '|' +\n /\\d{1,2}/.source\n );\n}\n\nfunction mergeConfigs(parentConfig, childConfig) {\n var res = extend({}, parentConfig),\n prop;\n for (prop in childConfig) {\n if (hasOwnProp(childConfig, prop)) {\n if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {\n res[prop] = {};\n extend(res[prop], parentConfig[prop]);\n extend(res[prop], childConfig[prop]);\n } else if (childConfig[prop] != null) {\n res[prop] = childConfig[prop];\n } else {\n delete res[prop];\n }\n }\n }\n for (prop in parentConfig) {\n if (\n hasOwnProp(parentConfig, prop) &&\n !hasOwnProp(childConfig, prop) &&\n isObject(parentConfig[prop])\n ) {\n // make sure changes to properties don't modify parent config\n res[prop] = extend({}, res[prop]);\n }\n }\n return res;\n}\n\nfunction Locale(config) {\n if (config != null) {\n this.set(config);\n }\n}\n\nvar keys;\n\nif (Object.keys) {\n keys = Object.keys;\n} else {\n keys = function (obj) {\n var i,\n res = [];\n for (i in obj) {\n if (hasOwnProp(obj, i)) {\n res.push(i);\n }\n }\n return res;\n };\n}\n\nvar defaultCalendar = {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n};\n\nfunction calendar(key, mom, now) {\n var output = this._calendar[key] || this._calendar['sameElse'];\n return isFunction(output) ? output.call(mom, now) : output;\n}\n\nfunction zeroFill(number, targetLength, forceSign) {\n var absNumber = '' + Math.abs(number),\n zerosToFill = targetLength - absNumber.length,\n sign = number >= 0;\n return (\n (sign ? (forceSign ? '+' : '') : '-') +\n Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +\n absNumber\n );\n}\n\nvar formattingTokens = /(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,\n localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n formatFunctions = {},\n formatTokenFunctions = {};\n\n// token: 'M'\n// padded: ['MM', 2]\n// ordinal: 'Mo'\n// callback: function () { this.month() + 1 }\nfunction addFormatToken(token, padded, ordinal, callback) {\n var func = callback;\n if (typeof callback === 'string') {\n func = function () {\n return this[callback]();\n };\n }\n if (token) {\n formatTokenFunctions[token] = func;\n }\n if (padded) {\n formatTokenFunctions[padded[0]] = function () {\n return zeroFill(func.apply(this, arguments), padded[1], padded[2]);\n };\n }\n if (ordinal) {\n formatTokenFunctions[ordinal] = function () {\n return this.localeData().ordinal(\n func.apply(this, arguments),\n token\n );\n };\n }\n}\n\nfunction removeFormattingTokens(input) {\n if (input.match(/\\[[\\s\\S]/)) {\n return input.replace(/^\\[|\\]$/g, '');\n }\n return input.replace(/\\\\/g, '');\n}\n\nfunction makeFormatFunction(format) {\n var array = format.match(formattingTokens),\n i,\n length;\n\n for (i = 0, length = array.length; i < length; i++) {\n if (formatTokenFunctions[array[i]]) {\n array[i] = formatTokenFunctions[array[i]];\n } else {\n array[i] = removeFormattingTokens(array[i]);\n }\n }\n\n return function (mom) {\n var output = '',\n i;\n for (i = 0; i < length; i++) {\n output += isFunction(array[i])\n ? array[i].call(mom, format)\n : array[i];\n }\n return output;\n };\n}\n\n// format date using native date object\nfunction formatMoment(m, format) {\n if (!m.isValid()) {\n return m.localeData().invalidDate();\n }\n\n format = expandFormat(format, m.localeData());\n formatFunctions[format] =\n formatFunctions[format] || makeFormatFunction(format);\n\n return formatFunctions[format](m);\n}\n\nfunction expandFormat(format, locale) {\n var i = 5;\n\n function replaceLongDateFormatTokens(input) {\n return locale.longDateFormat(input) || input;\n }\n\n localFormattingTokens.lastIndex = 0;\n while (i >= 0 && localFormattingTokens.test(format)) {\n format = format.replace(\n localFormattingTokens,\n replaceLongDateFormatTokens\n );\n localFormattingTokens.lastIndex = 0;\n i -= 1;\n }\n\n return format;\n}\n\nvar defaultLongDateFormat = {\n LTS: 'h:mm:ss A',\n LT: 'h:mm A',\n L: 'MM/DD/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY h:mm A',\n LLLL: 'dddd, MMMM D, YYYY h:mm A',\n};\n\nfunction longDateFormat(key) {\n var format = this._longDateFormat[key],\n formatUpper = this._longDateFormat[key.toUpperCase()];\n\n if (format || !formatUpper) {\n return format;\n }\n\n this._longDateFormat[key] = formatUpper\n .match(formattingTokens)\n .map(function (tok) {\n if (\n tok === 'MMMM' ||\n tok === 'MM' ||\n tok === 'DD' ||\n tok === 'dddd'\n ) {\n return tok.slice(1);\n }\n return tok;\n })\n .join('');\n\n return this._longDateFormat[key];\n}\n\nvar defaultInvalidDate = 'Invalid date';\n\nfunction invalidDate() {\n return this._invalidDate;\n}\n\nvar defaultOrdinal = '%d',\n defaultDayOfMonthOrdinalParse = /\\d{1,2}/;\n\nfunction ordinal(number) {\n return this._ordinal.replace('%d', number);\n}\n\nvar defaultRelativeTime = {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n w: 'a week',\n ww: '%d weeks',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n};\n\nfunction relativeTime(number, withoutSuffix, string, isFuture) {\n var output = this._relativeTime[string];\n return isFunction(output)\n ? output(number, withoutSuffix, string, isFuture)\n : output.replace(/%d/i, number);\n}\n\nfunction pastFuture(diff, output) {\n var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n return isFunction(format) ? format(output) : format.replace(/%s/i, output);\n}\n\nvar aliases = {};\n\nfunction addUnitAlias(unit, shorthand) {\n var lowerCase = unit.toLowerCase();\n aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;\n}\n\nfunction normalizeUnits(units) {\n return typeof units === 'string'\n ? aliases[units] || aliases[units.toLowerCase()]\n : undefined;\n}\n\nfunction normalizeObjectUnits(inputObject) {\n var normalizedInput = {},\n normalizedProp,\n prop;\n\n for (prop in inputObject) {\n if (hasOwnProp(inputObject, prop)) {\n normalizedProp = normalizeUnits(prop);\n if (normalizedProp) {\n normalizedInput[normalizedProp] = inputObject[prop];\n }\n }\n }\n\n return normalizedInput;\n}\n\nvar priorities = {};\n\nfunction addUnitPriority(unit, priority) {\n priorities[unit] = priority;\n}\n\nfunction getPrioritizedUnits(unitsObj) {\n var units = [],\n u;\n for (u in unitsObj) {\n if (hasOwnProp(unitsObj, u)) {\n units.push({ unit: u, priority: priorities[u] });\n }\n }\n units.sort(function (a, b) {\n return a.priority - b.priority;\n });\n return units;\n}\n\nfunction isLeapYear(year) {\n return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n}\n\nfunction absFloor(number) {\n if (number < 0) {\n // -0 -> 0\n return Math.ceil(number) || 0;\n } else {\n return Math.floor(number);\n }\n}\n\nfunction toInt(argumentForCoercion) {\n var coercedNumber = +argumentForCoercion,\n value = 0;\n\n if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n value = absFloor(coercedNumber);\n }\n\n return value;\n}\n\nfunction makeGetSet(unit, keepTime) {\n return function (value) {\n if (value != null) {\n set$1(this, unit, value);\n hooks.updateOffset(this, keepTime);\n return this;\n } else {\n return get(this, unit);\n }\n };\n}\n\nfunction get(mom, unit) {\n return mom.isValid()\n ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]()\n : NaN;\n}\n\nfunction set$1(mom, unit, value) {\n if (mom.isValid() && !isNaN(value)) {\n if (\n unit === 'FullYear' &&\n isLeapYear(mom.year()) &&\n mom.month() === 1 &&\n mom.date() === 29\n ) {\n value = toInt(value);\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](\n value,\n mom.month(),\n daysInMonth(value, mom.month())\n );\n } else {\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n }\n }\n}\n\n// MOMENTS\n\nfunction stringGet(units) {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units]();\n }\n return this;\n}\n\nfunction stringSet(units, value) {\n if (typeof units === 'object') {\n units = normalizeObjectUnits(units);\n var prioritized = getPrioritizedUnits(units),\n i;\n for (i = 0; i < prioritized.length; i++) {\n this[prioritized[i].unit](units[prioritized[i].unit]);\n }\n } else {\n units = normalizeUnits(units);\n if (isFunction(this[units])) {\n return this[units](value);\n }\n }\n return this;\n}\n\nvar match1 = /\\d/, // 0 - 9\n match2 = /\\d\\d/, // 00 - 99\n match3 = /\\d{3}/, // 000 - 999\n match4 = /\\d{4}/, // 0000 - 9999\n match6 = /[+-]?\\d{6}/, // -999999 - 999999\n match1to2 = /\\d\\d?/, // 0 - 99\n match3to4 = /\\d\\d\\d\\d?/, // 999 - 9999\n match5to6 = /\\d\\d\\d\\d\\d\\d?/, // 99999 - 999999\n match1to3 = /\\d{1,3}/, // 0 - 999\n match1to4 = /\\d{1,4}/, // 0 - 9999\n match1to6 = /[+-]?\\d{1,6}/, // -999999 - 999999\n matchUnsigned = /\\d+/, // 0 - inf\n matchSigned = /[+-]?\\d+/, // -inf - inf\n matchOffset = /Z|[+-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n matchShortOffset = /Z|[+-]\\d\\d(?::?\\d\\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z\n matchTimestamp = /[+-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n // any word (or two) characters or numbers including two/three word month in arabic.\n // includes scottish gaelic two word and hyphenated months\n matchWord = /[0-9]{0,256}['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFF07\\uFF10-\\uFFEF]{1,256}|[\\u0600-\\u06FF\\/]{1,256}(\\s*?[\\u0600-\\u06FF]{1,256}){1,2}/i,\n regexes;\n\nregexes = {};\n\nfunction addRegexToken(token, regex, strictRegex) {\n regexes[token] = isFunction(regex)\n ? regex\n : function (isStrict, localeData) {\n return isStrict && strictRegex ? strictRegex : regex;\n };\n}\n\nfunction getParseRegexForToken(token, config) {\n if (!hasOwnProp(regexes, token)) {\n return new RegExp(unescapeFormat(token));\n }\n\n return regexes[token](config._strict, config._locale);\n}\n\n// Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\nfunction unescapeFormat(s) {\n return regexEscape(\n s\n .replace('\\\\', '')\n .replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g, function (\n matched,\n p1,\n p2,\n p3,\n p4\n ) {\n return p1 || p2 || p3 || p4;\n })\n );\n}\n\nfunction regexEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n}\n\nvar tokens = {};\n\nfunction addParseToken(token, callback) {\n var i,\n func = callback;\n if (typeof token === 'string') {\n token = [token];\n }\n if (isNumber(callback)) {\n func = function (input, array) {\n array[callback] = toInt(input);\n };\n }\n for (i = 0; i < token.length; i++) {\n tokens[token[i]] = func;\n }\n}\n\nfunction addWeekParseToken(token, callback) {\n addParseToken(token, function (input, array, config, token) {\n config._w = config._w || {};\n callback(input, config._w, config, token);\n });\n}\n\nfunction addTimeToArrayFromToken(token, input, config) {\n if (input != null && hasOwnProp(tokens, token)) {\n tokens[token](input, config._a, config, token);\n }\n}\n\nvar YEAR = 0,\n MONTH = 1,\n DATE = 2,\n HOUR = 3,\n MINUTE = 4,\n SECOND = 5,\n MILLISECOND = 6,\n WEEK = 7,\n WEEKDAY = 8;\n\nfunction mod(n, x) {\n return ((n % x) + x) % x;\n}\n\nvar indexOf;\n\nif (Array.prototype.indexOf) {\n indexOf = Array.prototype.indexOf;\n} else {\n indexOf = function (o) {\n // I know\n var i;\n for (i = 0; i < this.length; ++i) {\n if (this[i] === o) {\n return i;\n }\n }\n return -1;\n };\n}\n\nfunction daysInMonth(year, month) {\n if (isNaN(year) || isNaN(month)) {\n return NaN;\n }\n var modMonth = mod(month, 12);\n year += (month - modMonth) / 12;\n return modMonth === 1\n ? isLeapYear(year)\n ? 29\n : 28\n : 31 - ((modMonth % 7) % 2);\n}\n\n// FORMATTING\n\naddFormatToken('M', ['MM', 2], 'Mo', function () {\n return this.month() + 1;\n});\n\naddFormatToken('MMM', 0, 0, function (format) {\n return this.localeData().monthsShort(this, format);\n});\n\naddFormatToken('MMMM', 0, 0, function (format) {\n return this.localeData().months(this, format);\n});\n\n// ALIASES\n\naddUnitAlias('month', 'M');\n\n// PRIORITY\n\naddUnitPriority('month', 8);\n\n// PARSING\n\naddRegexToken('M', match1to2);\naddRegexToken('MM', match1to2, match2);\naddRegexToken('MMM', function (isStrict, locale) {\n return locale.monthsShortRegex(isStrict);\n});\naddRegexToken('MMMM', function (isStrict, locale) {\n return locale.monthsRegex(isStrict);\n});\n\naddParseToken(['M', 'MM'], function (input, array) {\n array[MONTH] = toInt(input) - 1;\n});\n\naddParseToken(['MMM', 'MMMM'], function (input, array, config, token) {\n var month = config._locale.monthsParse(input, token, config._strict);\n // if we didn't find a month name, mark the date as invalid.\n if (month != null) {\n array[MONTH] = month;\n } else {\n getParsingFlags(config).invalidMonth = input;\n }\n});\n\n// LOCALES\n\nvar defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split(\n '_'\n ),\n MONTHS_IN_FORMAT = /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/,\n defaultMonthsShortRegex = matchWord,\n defaultMonthsRegex = matchWord;\n\nfunction localeMonths(m, format) {\n if (!m) {\n return isArray(this._months)\n ? this._months\n : this._months['standalone'];\n }\n return isArray(this._months)\n ? this._months[m.month()]\n : this._months[\n (this._months.isFormat || MONTHS_IN_FORMAT).test(format)\n ? 'format'\n : 'standalone'\n ][m.month()];\n}\n\nfunction localeMonthsShort(m, format) {\n if (!m) {\n return isArray(this._monthsShort)\n ? this._monthsShort\n : this._monthsShort['standalone'];\n }\n return isArray(this._monthsShort)\n ? this._monthsShort[m.month()]\n : this._monthsShort[\n MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'\n ][m.month()];\n}\n\nfunction handleStrictParse(monthName, format, strict) {\n var i,\n ii,\n mom,\n llc = monthName.toLocaleLowerCase();\n if (!this._monthsParse) {\n // this is not used\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n for (i = 0; i < 12; ++i) {\n mom = createUTC([2000, i]);\n this._shortMonthsParse[i] = this.monthsShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'MMM') {\n ii = indexOf.call(this._shortMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._longMonthsParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._longMonthsParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortMonthsParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n}\n\nfunction localeMonthsParse(monthName, format, strict) {\n var i, mom, regex;\n\n if (this._monthsParseExact) {\n return handleStrictParse.call(this, monthName, format, strict);\n }\n\n if (!this._monthsParse) {\n this._monthsParse = [];\n this._longMonthsParse = [];\n this._shortMonthsParse = [];\n }\n\n // TODO: add sorting\n // Sorting makes sure if one month (or abbr) is a prefix of another\n // see sorting in computeMonthsParse\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n if (strict && !this._longMonthsParse[i]) {\n this._longMonthsParse[i] = new RegExp(\n '^' + this.months(mom, '').replace('.', '') + '$',\n 'i'\n );\n this._shortMonthsParse[i] = new RegExp(\n '^' + this.monthsShort(mom, '').replace('.', '') + '$',\n 'i'\n );\n }\n if (!strict && !this._monthsParse[i]) {\n regex =\n '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'MMMM' &&\n this._longMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'MMM' &&\n this._shortMonthsParse[i].test(monthName)\n ) {\n return i;\n } else if (!strict && this._monthsParse[i].test(monthName)) {\n return i;\n }\n }\n}\n\n// MOMENTS\n\nfunction setMonth(mom, value) {\n var dayOfMonth;\n\n if (!mom.isValid()) {\n // No op\n return mom;\n }\n\n if (typeof value === 'string') {\n if (/^\\d+$/.test(value)) {\n value = toInt(value);\n } else {\n value = mom.localeData().monthsParse(value);\n // TODO: Another silent failure?\n if (!isNumber(value)) {\n return mom;\n }\n }\n }\n\n dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));\n mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n return mom;\n}\n\nfunction getSetMonth(value) {\n if (value != null) {\n setMonth(this, value);\n hooks.updateOffset(this, true);\n return this;\n } else {\n return get(this, 'Month');\n }\n}\n\nfunction getDaysInMonth() {\n return daysInMonth(this.year(), this.month());\n}\n\nfunction monthsShortRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsShortStrictRegex;\n } else {\n return this._monthsShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsShortRegex')) {\n this._monthsShortRegex = defaultMonthsShortRegex;\n }\n return this._monthsShortStrictRegex && isStrict\n ? this._monthsShortStrictRegex\n : this._monthsShortRegex;\n }\n}\n\nfunction monthsRegex(isStrict) {\n if (this._monthsParseExact) {\n if (!hasOwnProp(this, '_monthsRegex')) {\n computeMonthsParse.call(this);\n }\n if (isStrict) {\n return this._monthsStrictRegex;\n } else {\n return this._monthsRegex;\n }\n } else {\n if (!hasOwnProp(this, '_monthsRegex')) {\n this._monthsRegex = defaultMonthsRegex;\n }\n return this._monthsStrictRegex && isStrict\n ? this._monthsStrictRegex\n : this._monthsRegex;\n }\n}\n\nfunction computeMonthsParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom;\n for (i = 0; i < 12; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, i]);\n shortPieces.push(this.monthsShort(mom, ''));\n longPieces.push(this.months(mom, ''));\n mixedPieces.push(this.months(mom, ''));\n mixedPieces.push(this.monthsShort(mom, ''));\n }\n // Sorting makes sure if one month (or abbr) is a prefix of another it\n // will match the longer piece.\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n for (i = 0; i < 12; i++) {\n shortPieces[i] = regexEscape(shortPieces[i]);\n longPieces[i] = regexEscape(longPieces[i]);\n }\n for (i = 0; i < 24; i++) {\n mixedPieces[i] = regexEscape(mixedPieces[i]);\n }\n\n this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._monthsShortRegex = this._monthsRegex;\n this._monthsStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._monthsShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n}\n\n// FORMATTING\n\naddFormatToken('Y', 0, 0, function () {\n var y = this.year();\n return y <= 9999 ? zeroFill(y, 4) : '+' + y;\n});\n\naddFormatToken(0, ['YY', 2], 0, function () {\n return this.year() % 100;\n});\n\naddFormatToken(0, ['YYYY', 4], 0, 'year');\naddFormatToken(0, ['YYYYY', 5], 0, 'year');\naddFormatToken(0, ['YYYYYY', 6, true], 0, 'year');\n\n// ALIASES\n\naddUnitAlias('year', 'y');\n\n// PRIORITIES\n\naddUnitPriority('year', 1);\n\n// PARSING\n\naddRegexToken('Y', matchSigned);\naddRegexToken('YY', match1to2, match2);\naddRegexToken('YYYY', match1to4, match4);\naddRegexToken('YYYYY', match1to6, match6);\naddRegexToken('YYYYYY', match1to6, match6);\n\naddParseToken(['YYYYY', 'YYYYYY'], YEAR);\naddParseToken('YYYY', function (input, array) {\n array[YEAR] =\n input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);\n});\naddParseToken('YY', function (input, array) {\n array[YEAR] = hooks.parseTwoDigitYear(input);\n});\naddParseToken('Y', function (input, array) {\n array[YEAR] = parseInt(input, 10);\n});\n\n// HELPERS\n\nfunction daysInYear(year) {\n return isLeapYear(year) ? 366 : 365;\n}\n\n// HOOKS\n\nhooks.parseTwoDigitYear = function (input) {\n return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n};\n\n// MOMENTS\n\nvar getSetYear = makeGetSet('FullYear', true);\n\nfunction getIsLeapYear() {\n return isLeapYear(this.year());\n}\n\nfunction createDate(y, m, d, h, M, s, ms) {\n // can't just apply() to create a date:\n // https://stackoverflow.com/q/181348\n var date;\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n date = new Date(y + 400, m, d, h, M, s, ms);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(y);\n }\n } else {\n date = new Date(y, m, d, h, M, s, ms);\n }\n\n return date;\n}\n\nfunction createUTCDate(y) {\n var date, args;\n // the Date.UTC function remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n args = Array.prototype.slice.call(arguments);\n // preserve leap years using a full 400 year cycle, then reset\n args[0] = y + 400;\n date = new Date(Date.UTC.apply(null, args));\n if (isFinite(date.getUTCFullYear())) {\n date.setUTCFullYear(y);\n }\n } else {\n date = new Date(Date.UTC.apply(null, arguments));\n }\n\n return date;\n}\n\n// start-of-first-week - start-of-year\nfunction firstWeekOffset(year, dow, doy) {\n var // first-week day -- which january is always in the first week (4 for iso, 1 for other)\n fwd = 7 + dow - doy,\n // first-week day local weekday -- which local weekday is fwd\n fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;\n\n return -fwdlw + fwd - 1;\n}\n\n// https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\nfunction dayOfYearFromWeeks(year, week, weekday, dow, doy) {\n var localWeekday = (7 + weekday - dow) % 7,\n weekOffset = firstWeekOffset(year, dow, doy),\n dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,\n resYear,\n resDayOfYear;\n\n if (dayOfYear <= 0) {\n resYear = year - 1;\n resDayOfYear = daysInYear(resYear) + dayOfYear;\n } else if (dayOfYear > daysInYear(year)) {\n resYear = year + 1;\n resDayOfYear = dayOfYear - daysInYear(year);\n } else {\n resYear = year;\n resDayOfYear = dayOfYear;\n }\n\n return {\n year: resYear,\n dayOfYear: resDayOfYear,\n };\n}\n\nfunction weekOfYear(mom, dow, doy) {\n var weekOffset = firstWeekOffset(mom.year(), dow, doy),\n week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,\n resWeek,\n resYear;\n\n if (week < 1) {\n resYear = mom.year() - 1;\n resWeek = week + weeksInYear(resYear, dow, doy);\n } else if (week > weeksInYear(mom.year(), dow, doy)) {\n resWeek = week - weeksInYear(mom.year(), dow, doy);\n resYear = mom.year() + 1;\n } else {\n resYear = mom.year();\n resWeek = week;\n }\n\n return {\n week: resWeek,\n year: resYear,\n };\n}\n\nfunction weeksInYear(year, dow, doy) {\n var weekOffset = firstWeekOffset(year, dow, doy),\n weekOffsetNext = firstWeekOffset(year + 1, dow, doy);\n return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;\n}\n\n// FORMATTING\n\naddFormatToken('w', ['ww', 2], 'wo', 'week');\naddFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');\n\n// ALIASES\n\naddUnitAlias('week', 'w');\naddUnitAlias('isoWeek', 'W');\n\n// PRIORITIES\n\naddUnitPriority('week', 5);\naddUnitPriority('isoWeek', 5);\n\n// PARSING\n\naddRegexToken('w', match1to2);\naddRegexToken('ww', match1to2, match2);\naddRegexToken('W', match1to2);\naddRegexToken('WW', match1to2, match2);\n\naddWeekParseToken(['w', 'ww', 'W', 'WW'], function (\n input,\n week,\n config,\n token\n) {\n week[token.substr(0, 1)] = toInt(input);\n});\n\n// HELPERS\n\n// LOCALES\n\nfunction localeWeek(mom) {\n return weekOfYear(mom, this._week.dow, this._week.doy).week;\n}\n\nvar defaultLocaleWeek = {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n};\n\nfunction localeFirstDayOfWeek() {\n return this._week.dow;\n}\n\nfunction localeFirstDayOfYear() {\n return this._week.doy;\n}\n\n// MOMENTS\n\nfunction getSetWeek(input) {\n var week = this.localeData().week(this);\n return input == null ? week : this.add((input - week) * 7, 'd');\n}\n\nfunction getSetISOWeek(input) {\n var week = weekOfYear(this, 1, 4).week;\n return input == null ? week : this.add((input - week) * 7, 'd');\n}\n\n// FORMATTING\n\naddFormatToken('d', 0, 'do', 'day');\n\naddFormatToken('dd', 0, 0, function (format) {\n return this.localeData().weekdaysMin(this, format);\n});\n\naddFormatToken('ddd', 0, 0, function (format) {\n return this.localeData().weekdaysShort(this, format);\n});\n\naddFormatToken('dddd', 0, 0, function (format) {\n return this.localeData().weekdays(this, format);\n});\n\naddFormatToken('e', 0, 0, 'weekday');\naddFormatToken('E', 0, 0, 'isoWeekday');\n\n// ALIASES\n\naddUnitAlias('day', 'd');\naddUnitAlias('weekday', 'e');\naddUnitAlias('isoWeekday', 'E');\n\n// PRIORITY\naddUnitPriority('day', 11);\naddUnitPriority('weekday', 11);\naddUnitPriority('isoWeekday', 11);\n\n// PARSING\n\naddRegexToken('d', match1to2);\naddRegexToken('e', match1to2);\naddRegexToken('E', match1to2);\naddRegexToken('dd', function (isStrict, locale) {\n return locale.weekdaysMinRegex(isStrict);\n});\naddRegexToken('ddd', function (isStrict, locale) {\n return locale.weekdaysShortRegex(isStrict);\n});\naddRegexToken('dddd', function (isStrict, locale) {\n return locale.weekdaysRegex(isStrict);\n});\n\naddWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {\n var weekday = config._locale.weekdaysParse(input, token, config._strict);\n // if we didn't get a weekday name, mark the date as invalid\n if (weekday != null) {\n week.d = weekday;\n } else {\n getParsingFlags(config).invalidWeekday = input;\n }\n});\n\naddWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {\n week[token] = toInt(input);\n});\n\n// HELPERS\n\nfunction parseWeekday(input, locale) {\n if (typeof input !== 'string') {\n return input;\n }\n\n if (!isNaN(input)) {\n return parseInt(input, 10);\n }\n\n input = locale.weekdaysParse(input);\n if (typeof input === 'number') {\n return input;\n }\n\n return null;\n}\n\nfunction parseIsoWeekday(input, locale) {\n if (typeof input === 'string') {\n return locale.weekdaysParse(input) % 7 || 7;\n }\n return isNaN(input) ? null : input;\n}\n\n// LOCALES\nfunction shiftWeekdays(ws, n) {\n return ws.slice(n, 7).concat(ws.slice(0, n));\n}\n\nvar defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n defaultWeekdaysRegex = matchWord,\n defaultWeekdaysShortRegex = matchWord,\n defaultWeekdaysMinRegex = matchWord;\n\nfunction localeWeekdays(m, format) {\n var weekdays = isArray(this._weekdays)\n ? this._weekdays\n : this._weekdays[\n m && m !== true && this._weekdays.isFormat.test(format)\n ? 'format'\n : 'standalone'\n ];\n return m === true\n ? shiftWeekdays(weekdays, this._week.dow)\n : m\n ? weekdays[m.day()]\n : weekdays;\n}\n\nfunction localeWeekdaysShort(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysShort, this._week.dow)\n : m\n ? this._weekdaysShort[m.day()]\n : this._weekdaysShort;\n}\n\nfunction localeWeekdaysMin(m) {\n return m === true\n ? shiftWeekdays(this._weekdaysMin, this._week.dow)\n : m\n ? this._weekdaysMin[m.day()]\n : this._weekdaysMin;\n}\n\nfunction handleStrictParse$1(weekdayName, format, strict) {\n var i,\n ii,\n mom,\n llc = weekdayName.toLocaleLowerCase();\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._minWeekdaysParse = [];\n\n for (i = 0; i < 7; ++i) {\n mom = createUTC([2000, 1]).day(i);\n this._minWeekdaysParse[i] = this.weekdaysMin(\n mom,\n ''\n ).toLocaleLowerCase();\n this._shortWeekdaysParse[i] = this.weekdaysShort(\n mom,\n ''\n ).toLocaleLowerCase();\n this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();\n }\n }\n\n if (strict) {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n } else {\n if (format === 'dddd') {\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else if (format === 'ddd') {\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._minWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n } else {\n ii = indexOf.call(this._minWeekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._weekdaysParse, llc);\n if (ii !== -1) {\n return ii;\n }\n ii = indexOf.call(this._shortWeekdaysParse, llc);\n return ii !== -1 ? ii : null;\n }\n }\n}\n\nfunction localeWeekdaysParse(weekdayName, format, strict) {\n var i, mom, regex;\n\n if (this._weekdaysParseExact) {\n return handleStrictParse$1.call(this, weekdayName, format, strict);\n }\n\n if (!this._weekdaysParse) {\n this._weekdaysParse = [];\n this._minWeekdaysParse = [];\n this._shortWeekdaysParse = [];\n this._fullWeekdaysParse = [];\n }\n\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n\n mom = createUTC([2000, 1]).day(i);\n if (strict && !this._fullWeekdaysParse[i]) {\n this._fullWeekdaysParse[i] = new RegExp(\n '^' + this.weekdays(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._shortWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysShort(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n this._minWeekdaysParse[i] = new RegExp(\n '^' + this.weekdaysMin(mom, '').replace('.', '\\\\.?') + '$',\n 'i'\n );\n }\n if (!this._weekdaysParse[i]) {\n regex =\n '^' +\n this.weekdays(mom, '') +\n '|^' +\n this.weekdaysShort(mom, '') +\n '|^' +\n this.weekdaysMin(mom, '');\n this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n }\n // test the regex\n if (\n strict &&\n format === 'dddd' &&\n this._fullWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'ddd' &&\n this._shortWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (\n strict &&\n format === 'dd' &&\n this._minWeekdaysParse[i].test(weekdayName)\n ) {\n return i;\n } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {\n return i;\n }\n }\n}\n\n// MOMENTS\n\nfunction getSetDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n if (input != null) {\n input = parseWeekday(input, this.localeData());\n return this.add(input - day, 'd');\n } else {\n return day;\n }\n}\n\nfunction getSetLocaleDayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n return input == null ? weekday : this.add(input - weekday, 'd');\n}\n\nfunction getSetISODayOfWeek(input) {\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n\n // behaves the same as moment#day except\n // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n // as a setter, sunday should belong to the previous week.\n\n if (input != null) {\n var weekday = parseIsoWeekday(input, this.localeData());\n return this.day(this.day() % 7 ? weekday : weekday - 7);\n } else {\n return this.day() || 7;\n }\n}\n\nfunction weekdaysRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysStrictRegex;\n } else {\n return this._weekdaysRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n this._weekdaysRegex = defaultWeekdaysRegex;\n }\n return this._weekdaysStrictRegex && isStrict\n ? this._weekdaysStrictRegex\n : this._weekdaysRegex;\n }\n}\n\nfunction weekdaysShortRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysShortStrictRegex;\n } else {\n return this._weekdaysShortRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysShortRegex')) {\n this._weekdaysShortRegex = defaultWeekdaysShortRegex;\n }\n return this._weekdaysShortStrictRegex && isStrict\n ? this._weekdaysShortStrictRegex\n : this._weekdaysShortRegex;\n }\n}\n\nfunction weekdaysMinRegex(isStrict) {\n if (this._weekdaysParseExact) {\n if (!hasOwnProp(this, '_weekdaysRegex')) {\n computeWeekdaysParse.call(this);\n }\n if (isStrict) {\n return this._weekdaysMinStrictRegex;\n } else {\n return this._weekdaysMinRegex;\n }\n } else {\n if (!hasOwnProp(this, '_weekdaysMinRegex')) {\n this._weekdaysMinRegex = defaultWeekdaysMinRegex;\n }\n return this._weekdaysMinStrictRegex && isStrict\n ? this._weekdaysMinStrictRegex\n : this._weekdaysMinRegex;\n }\n}\n\nfunction computeWeekdaysParse() {\n function cmpLenRev(a, b) {\n return b.length - a.length;\n }\n\n var minPieces = [],\n shortPieces = [],\n longPieces = [],\n mixedPieces = [],\n i,\n mom,\n minp,\n shortp,\n longp;\n for (i = 0; i < 7; i++) {\n // make the regex if we don't have it already\n mom = createUTC([2000, 1]).day(i);\n minp = regexEscape(this.weekdaysMin(mom, ''));\n shortp = regexEscape(this.weekdaysShort(mom, ''));\n longp = regexEscape(this.weekdays(mom, ''));\n minPieces.push(minp);\n shortPieces.push(shortp);\n longPieces.push(longp);\n mixedPieces.push(minp);\n mixedPieces.push(shortp);\n mixedPieces.push(longp);\n }\n // Sorting makes sure if one weekday (or abbr) is a prefix of another it\n // will match the longer piece.\n minPieces.sort(cmpLenRev);\n shortPieces.sort(cmpLenRev);\n longPieces.sort(cmpLenRev);\n mixedPieces.sort(cmpLenRev);\n\n this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._weekdaysShortRegex = this._weekdaysRegex;\n this._weekdaysMinRegex = this._weekdaysRegex;\n\n this._weekdaysStrictRegex = new RegExp(\n '^(' + longPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysShortStrictRegex = new RegExp(\n '^(' + shortPieces.join('|') + ')',\n 'i'\n );\n this._weekdaysMinStrictRegex = new RegExp(\n '^(' + minPieces.join('|') + ')',\n 'i'\n );\n}\n\n// FORMATTING\n\nfunction hFormat() {\n return this.hours() % 12 || 12;\n}\n\nfunction kFormat() {\n return this.hours() || 24;\n}\n\naddFormatToken('H', ['HH', 2], 0, 'hour');\naddFormatToken('h', ['hh', 2], 0, hFormat);\naddFormatToken('k', ['kk', 2], 0, kFormat);\n\naddFormatToken('hmm', 0, 0, function () {\n return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);\n});\n\naddFormatToken('hmmss', 0, 0, function () {\n return (\n '' +\n hFormat.apply(this) +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n});\n\naddFormatToken('Hmm', 0, 0, function () {\n return '' + this.hours() + zeroFill(this.minutes(), 2);\n});\n\naddFormatToken('Hmmss', 0, 0, function () {\n return (\n '' +\n this.hours() +\n zeroFill(this.minutes(), 2) +\n zeroFill(this.seconds(), 2)\n );\n});\n\nfunction meridiem(token, lowercase) {\n addFormatToken(token, 0, 0, function () {\n return this.localeData().meridiem(\n this.hours(),\n this.minutes(),\n lowercase\n );\n });\n}\n\nmeridiem('a', true);\nmeridiem('A', false);\n\n// ALIASES\n\naddUnitAlias('hour', 'h');\n\n// PRIORITY\naddUnitPriority('hour', 13);\n\n// PARSING\n\nfunction matchMeridiem(isStrict, locale) {\n return locale._meridiemParse;\n}\n\naddRegexToken('a', matchMeridiem);\naddRegexToken('A', matchMeridiem);\naddRegexToken('H', match1to2);\naddRegexToken('h', match1to2);\naddRegexToken('k', match1to2);\naddRegexToken('HH', match1to2, match2);\naddRegexToken('hh', match1to2, match2);\naddRegexToken('kk', match1to2, match2);\n\naddRegexToken('hmm', match3to4);\naddRegexToken('hmmss', match5to6);\naddRegexToken('Hmm', match3to4);\naddRegexToken('Hmmss', match5to6);\n\naddParseToken(['H', 'HH'], HOUR);\naddParseToken(['k', 'kk'], function (input, array, config) {\n var kInput = toInt(input);\n array[HOUR] = kInput === 24 ? 0 : kInput;\n});\naddParseToken(['a', 'A'], function (input, array, config) {\n config._isPm = config._locale.isPM(input);\n config._meridiem = input;\n});\naddParseToken(['h', 'hh'], function (input, array, config) {\n array[HOUR] = toInt(input);\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n getParsingFlags(config).bigHour = true;\n});\naddParseToken('Hmm', function (input, array, config) {\n var pos = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos));\n array[MINUTE] = toInt(input.substr(pos));\n});\naddParseToken('Hmmss', function (input, array, config) {\n var pos1 = input.length - 4,\n pos2 = input.length - 2;\n array[HOUR] = toInt(input.substr(0, pos1));\n array[MINUTE] = toInt(input.substr(pos1, 2));\n array[SECOND] = toInt(input.substr(pos2));\n});\n\n// LOCALES\n\nfunction localeIsPM(input) {\n // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n // Using charAt should be more compatible.\n return (input + '').toLowerCase().charAt(0) === 'p';\n}\n\nvar defaultLocaleMeridiemParse = /[ap]\\.?m?\\.?/i,\n // Setting the hour should keep the time, because the user explicitly\n // specified which hour they want. So trying to maintain the same hour (in\n // a new timezone) makes sense. Adding/subtracting hours does not follow\n // this rule.\n getSetHour = makeGetSet('Hours', true);\n\nfunction localeMeridiem(hours, minutes, isLower) {\n if (hours > 11) {\n return isLower ? 'pm' : 'PM';\n } else {\n return isLower ? 'am' : 'AM';\n }\n}\n\nvar baseConfig = {\n calendar: defaultCalendar,\n longDateFormat: defaultLongDateFormat,\n invalidDate: defaultInvalidDate,\n ordinal: defaultOrdinal,\n dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,\n relativeTime: defaultRelativeTime,\n\n months: defaultLocaleMonths,\n monthsShort: defaultLocaleMonthsShort,\n\n week: defaultLocaleWeek,\n\n weekdays: defaultLocaleWeekdays,\n weekdaysMin: defaultLocaleWeekdaysMin,\n weekdaysShort: defaultLocaleWeekdaysShort,\n\n meridiemParse: defaultLocaleMeridiemParse,\n};\n\n// internal storage for locale config files\nvar locales = {},\n localeFamilies = {},\n globalLocale;\n\nfunction commonPrefix(arr1, arr2) {\n var i,\n minl = Math.min(arr1.length, arr2.length);\n for (i = 0; i < minl; i += 1) {\n if (arr1[i] !== arr2[i]) {\n return i;\n }\n }\n return minl;\n}\n\nfunction normalizeLocale(key) {\n return key ? key.toLowerCase().replace('_', '-') : key;\n}\n\n// pick the locale from the array\n// try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n// substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\nfunction chooseLocale(names) {\n var i = 0,\n j,\n next,\n locale,\n split;\n\n while (i < names.length) {\n split = normalizeLocale(names[i]).split('-');\n j = split.length;\n next = normalizeLocale(names[i + 1]);\n next = next ? next.split('-') : null;\n while (j > 0) {\n locale = loadLocale(split.slice(0, j).join('-'));\n if (locale) {\n return locale;\n }\n if (\n next &&\n next.length >= j &&\n commonPrefix(split, next) >= j - 1\n ) {\n //the next array item is better than a shallower substring of this one\n break;\n }\n j--;\n }\n i++;\n }\n return globalLocale;\n}\n\nfunction loadLocale(name) {\n var oldLocale = null,\n aliasedRequire;\n // TODO: Find a better way to register and load all the locales in Node\n if (\n locales[name] === undefined &&\n typeof module !== 'undefined' &&\n module &&\n module.exports\n ) {\n try {\n oldLocale = globalLocale._abbr;\n aliasedRequire = require;\n aliasedRequire('./locale/' + name);\n getSetGlobalLocale(oldLocale);\n } catch (e) {\n // mark as not found to avoid repeating expensive file require call causing high CPU\n // when trying to find en-US, en_US, en-us for every format call\n locales[name] = null; // null means not found\n }\n }\n return locales[name];\n}\n\n// This function will load locale and then set the global locale. If\n// no arguments are passed in, it will simply return the current global\n// locale key.\nfunction getSetGlobalLocale(key, values) {\n var data;\n if (key) {\n if (isUndefined(values)) {\n data = getLocale(key);\n } else {\n data = defineLocale(key, values);\n }\n\n if (data) {\n // moment.duration._locale = moment._locale = data;\n globalLocale = data;\n } else {\n if (typeof console !== 'undefined' && console.warn) {\n //warn user if arguments are passed but the locale could not be set\n console.warn(\n 'Locale ' + key + ' not found. Did you forget to load it?'\n );\n }\n }\n }\n\n return globalLocale._abbr;\n}\n\nfunction defineLocale(name, config) {\n if (config !== null) {\n var locale,\n parentConfig = baseConfig;\n config.abbr = name;\n if (locales[name] != null) {\n deprecateSimple(\n 'defineLocaleOverride',\n 'use moment.updateLocale(localeName, config) to change ' +\n 'an existing locale. moment.defineLocale(localeName, ' +\n 'config) should only be used for creating a new locale ' +\n 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'\n );\n parentConfig = locales[name]._config;\n } else if (config.parentLocale != null) {\n if (locales[config.parentLocale] != null) {\n parentConfig = locales[config.parentLocale]._config;\n } else {\n locale = loadLocale(config.parentLocale);\n if (locale != null) {\n parentConfig = locale._config;\n } else {\n if (!localeFamilies[config.parentLocale]) {\n localeFamilies[config.parentLocale] = [];\n }\n localeFamilies[config.parentLocale].push({\n name: name,\n config: config,\n });\n return null;\n }\n }\n }\n locales[name] = new Locale(mergeConfigs(parentConfig, config));\n\n if (localeFamilies[name]) {\n localeFamilies[name].forEach(function (x) {\n defineLocale(x.name, x.config);\n });\n }\n\n // backwards compat for now: also set the locale\n // make sure we set the locale AFTER all child locales have been\n // created, so we won't end up with the child locale set.\n getSetGlobalLocale(name);\n\n return locales[name];\n } else {\n // useful for testing\n delete locales[name];\n return null;\n }\n}\n\nfunction updateLocale(name, config) {\n if (config != null) {\n var locale,\n tmpLocale,\n parentConfig = baseConfig;\n\n if (locales[name] != null && locales[name].parentLocale != null) {\n // Update existing child locale in-place to avoid memory-leaks\n locales[name].set(mergeConfigs(locales[name]._config, config));\n } else {\n // MERGE\n tmpLocale = loadLocale(name);\n if (tmpLocale != null) {\n parentConfig = tmpLocale._config;\n }\n config = mergeConfigs(parentConfig, config);\n if (tmpLocale == null) {\n // updateLocale is called for creating a new locale\n // Set abbr so it will have a name (getters return\n // undefined otherwise).\n config.abbr = name;\n }\n locale = new Locale(config);\n locale.parentLocale = locales[name];\n locales[name] = locale;\n }\n\n // backwards compat for now: also set the locale\n getSetGlobalLocale(name);\n } else {\n // pass null for config to unupdate, useful for tests\n if (locales[name] != null) {\n if (locales[name].parentLocale != null) {\n locales[name] = locales[name].parentLocale;\n if (name === getSetGlobalLocale()) {\n getSetGlobalLocale(name);\n }\n } else if (locales[name] != null) {\n delete locales[name];\n }\n }\n }\n return locales[name];\n}\n\n// returns locale data\nfunction getLocale(key) {\n var locale;\n\n if (key && key._locale && key._locale._abbr) {\n key = key._locale._abbr;\n }\n\n if (!key) {\n return globalLocale;\n }\n\n if (!isArray(key)) {\n //short-circuit everything else\n locale = loadLocale(key);\n if (locale) {\n return locale;\n }\n key = [key];\n }\n\n return chooseLocale(key);\n}\n\nfunction listLocales() {\n return keys(locales);\n}\n\nfunction checkOverflow(m) {\n var overflow,\n a = m._a;\n\n if (a && getParsingFlags(m).overflow === -2) {\n overflow =\n a[MONTH] < 0 || a[MONTH] > 11\n ? MONTH\n : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])\n ? DATE\n : a[HOUR] < 0 ||\n a[HOUR] > 24 ||\n (a[HOUR] === 24 &&\n (a[MINUTE] !== 0 ||\n a[SECOND] !== 0 ||\n a[MILLISECOND] !== 0))\n ? HOUR\n : a[MINUTE] < 0 || a[MINUTE] > 59\n ? MINUTE\n : a[SECOND] < 0 || a[SECOND] > 59\n ? SECOND\n : a[MILLISECOND] < 0 || a[MILLISECOND] > 999\n ? MILLISECOND\n : -1;\n\n if (\n getParsingFlags(m)._overflowDayOfYear &&\n (overflow < YEAR || overflow > DATE)\n ) {\n overflow = DATE;\n }\n if (getParsingFlags(m)._overflowWeeks && overflow === -1) {\n overflow = WEEK;\n }\n if (getParsingFlags(m)._overflowWeekday && overflow === -1) {\n overflow = WEEKDAY;\n }\n\n getParsingFlags(m).overflow = overflow;\n }\n\n return m;\n}\n\n// iso 8601 regex\n// 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\nvar extendedIsoRegex = /^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n basicIsoRegex = /^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d|))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([+-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n tzRegex = /Z|[+-]\\d\\d(?::?\\d\\d)?/,\n isoDates = [\n ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d\\d-\\d\\d/],\n ['YYYY-MM-DD', /\\d{4}-\\d\\d-\\d\\d/],\n ['GGGG-[W]WW-E', /\\d{4}-W\\d\\d-\\d/],\n ['GGGG-[W]WW', /\\d{4}-W\\d\\d/, false],\n ['YYYY-DDD', /\\d{4}-\\d{3}/],\n ['YYYY-MM', /\\d{4}-\\d\\d/, false],\n ['YYYYYYMMDD', /[+-]\\d{10}/],\n ['YYYYMMDD', /\\d{8}/],\n ['GGGG[W]WWE', /\\d{4}W\\d{3}/],\n ['GGGG[W]WW', /\\d{4}W\\d{2}/, false],\n ['YYYYDDD', /\\d{7}/],\n ['YYYYMM', /\\d{6}/, false],\n ['YYYY', /\\d{4}/, false],\n ],\n // iso time formats and regexes\n isoTimes = [\n ['HH:mm:ss.SSSS', /\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n ['HH:mm:ss,SSSS', /\\d\\d:\\d\\d:\\d\\d,\\d+/],\n ['HH:mm:ss', /\\d\\d:\\d\\d:\\d\\d/],\n ['HH:mm', /\\d\\d:\\d\\d/],\n ['HHmmss.SSSS', /\\d\\d\\d\\d\\d\\d\\.\\d+/],\n ['HHmmss,SSSS', /\\d\\d\\d\\d\\d\\d,\\d+/],\n ['HHmmss', /\\d\\d\\d\\d\\d\\d/],\n ['HHmm', /\\d\\d\\d\\d/],\n ['HH', /\\d\\d/],\n ],\n aspNetJsonRegex = /^\\/?Date\\((-?\\d+)/i,\n // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3\n rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/,\n obsOffsets = {\n UT: 0,\n GMT: 0,\n EDT: -4 * 60,\n EST: -5 * 60,\n CDT: -5 * 60,\n CST: -6 * 60,\n MDT: -6 * 60,\n MST: -7 * 60,\n PDT: -7 * 60,\n PST: -8 * 60,\n };\n\n// date from iso format\nfunction configFromISO(config) {\n var i,\n l,\n string = config._i,\n match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),\n allowTime,\n dateFormat,\n timeFormat,\n tzFormat;\n\n if (match) {\n getParsingFlags(config).iso = true;\n\n for (i = 0, l = isoDates.length; i < l; i++) {\n if (isoDates[i][1].exec(match[1])) {\n dateFormat = isoDates[i][0];\n allowTime = isoDates[i][2] !== false;\n break;\n }\n }\n if (dateFormat == null) {\n config._isValid = false;\n return;\n }\n if (match[3]) {\n for (i = 0, l = isoTimes.length; i < l; i++) {\n if (isoTimes[i][1].exec(match[3])) {\n // match[2] should be 'T' or space\n timeFormat = (match[2] || ' ') + isoTimes[i][0];\n break;\n }\n }\n if (timeFormat == null) {\n config._isValid = false;\n return;\n }\n }\n if (!allowTime && timeFormat != null) {\n config._isValid = false;\n return;\n }\n if (match[4]) {\n if (tzRegex.exec(match[4])) {\n tzFormat = 'Z';\n } else {\n config._isValid = false;\n return;\n }\n }\n config._f = dateFormat + (timeFormat || '') + (tzFormat || '');\n configFromStringAndFormat(config);\n } else {\n config._isValid = false;\n }\n}\n\nfunction extractFromRFC2822Strings(\n yearStr,\n monthStr,\n dayStr,\n hourStr,\n minuteStr,\n secondStr\n) {\n var result = [\n untruncateYear(yearStr),\n defaultLocaleMonthsShort.indexOf(monthStr),\n parseInt(dayStr, 10),\n parseInt(hourStr, 10),\n parseInt(minuteStr, 10),\n ];\n\n if (secondStr) {\n result.push(parseInt(secondStr, 10));\n }\n\n return result;\n}\n\nfunction untruncateYear(yearStr) {\n var year = parseInt(yearStr, 10);\n if (year <= 49) {\n return 2000 + year;\n } else if (year <= 999) {\n return 1900 + year;\n }\n return year;\n}\n\nfunction preprocessRFC2822(s) {\n // Remove comments and folding whitespace and replace multiple-spaces with a single space\n return s\n .replace(/\\([^)]*\\)|[\\n\\t]/g, ' ')\n .replace(/(\\s\\s+)/g, ' ')\n .replace(/^\\s\\s*/, '')\n .replace(/\\s\\s*$/, '');\n}\n\nfunction checkWeekday(weekdayStr, parsedInput, config) {\n if (weekdayStr) {\n // TODO: Replace the vanilla JS Date object with an independent day-of-week check.\n var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),\n weekdayActual = new Date(\n parsedInput[0],\n parsedInput[1],\n parsedInput[2]\n ).getDay();\n if (weekdayProvided !== weekdayActual) {\n getParsingFlags(config).weekdayMismatch = true;\n config._isValid = false;\n return false;\n }\n }\n return true;\n}\n\nfunction calculateOffset(obsOffset, militaryOffset, numOffset) {\n if (obsOffset) {\n return obsOffsets[obsOffset];\n } else if (militaryOffset) {\n // the only allowed military tz is Z\n return 0;\n } else {\n var hm = parseInt(numOffset, 10),\n m = hm % 100,\n h = (hm - m) / 100;\n return h * 60 + m;\n }\n}\n\n// date and time from ref 2822 format\nfunction configFromRFC2822(config) {\n var match = rfc2822.exec(preprocessRFC2822(config._i)),\n parsedArray;\n if (match) {\n parsedArray = extractFromRFC2822Strings(\n match[4],\n match[3],\n match[2],\n match[5],\n match[6],\n match[7]\n );\n if (!checkWeekday(match[1], parsedArray, config)) {\n return;\n }\n\n config._a = parsedArray;\n config._tzm = calculateOffset(match[8], match[9], match[10]);\n\n config._d = createUTCDate.apply(null, config._a);\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n\n getParsingFlags(config).rfc2822 = true;\n } else {\n config._isValid = false;\n }\n}\n\n// date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict\nfunction configFromString(config) {\n var matched = aspNetJsonRegex.exec(config._i);\n if (matched !== null) {\n config._d = new Date(+matched[1]);\n return;\n }\n\n configFromISO(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n configFromRFC2822(config);\n if (config._isValid === false) {\n delete config._isValid;\n } else {\n return;\n }\n\n if (config._strict) {\n config._isValid = false;\n } else {\n // Final attempt, use Input Fallback\n hooks.createFromInputFallback(config);\n }\n}\n\nhooks.createFromInputFallback = deprecate(\n 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +\n 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +\n 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',\n function (config) {\n config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n }\n);\n\n// Pick the first defined of two or three arguments.\nfunction defaults(a, b, c) {\n if (a != null) {\n return a;\n }\n if (b != null) {\n return b;\n }\n return c;\n}\n\nfunction currentDateArray(config) {\n // hooks is actually the exported moment object\n var nowValue = new Date(hooks.now());\n if (config._useUTC) {\n return [\n nowValue.getUTCFullYear(),\n nowValue.getUTCMonth(),\n nowValue.getUTCDate(),\n ];\n }\n return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];\n}\n\n// convert an array to a date.\n// the array should mirror the parameters below\n// note: all values past the year are optional and will default to the lowest possible value.\n// [year, month, day , hour, minute, second, millisecond]\nfunction configFromArray(config) {\n var i,\n date,\n input = [],\n currentDate,\n expectedWeekday,\n yearToUse;\n\n if (config._d) {\n return;\n }\n\n currentDate = currentDateArray(config);\n\n //compute day of the year from weeks and weekdays\n if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n dayOfYearFromWeekInfo(config);\n }\n\n //if the day of the year is set, figure out what it is\n if (config._dayOfYear != null) {\n yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);\n\n if (\n config._dayOfYear > daysInYear(yearToUse) ||\n config._dayOfYear === 0\n ) {\n getParsingFlags(config)._overflowDayOfYear = true;\n }\n\n date = createUTCDate(yearToUse, 0, config._dayOfYear);\n config._a[MONTH] = date.getUTCMonth();\n config._a[DATE] = date.getUTCDate();\n }\n\n // Default to current date.\n // * if no year, month, day of month are given, default to today\n // * if day of month is given, default month and year\n // * if month is given, default only year\n // * if year is given, don't default anything\n for (i = 0; i < 3 && config._a[i] == null; ++i) {\n config._a[i] = input[i] = currentDate[i];\n }\n\n // Zero out whatever was not defaulted, including time\n for (; i < 7; i++) {\n config._a[i] = input[i] =\n config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];\n }\n\n // Check for 24:00:00.000\n if (\n config._a[HOUR] === 24 &&\n config._a[MINUTE] === 0 &&\n config._a[SECOND] === 0 &&\n config._a[MILLISECOND] === 0\n ) {\n config._nextDay = true;\n config._a[HOUR] = 0;\n }\n\n config._d = (config._useUTC ? createUTCDate : createDate).apply(\n null,\n input\n );\n expectedWeekday = config._useUTC\n ? config._d.getUTCDay()\n : config._d.getDay();\n\n // Apply timezone offset from input. The actual utcOffset can be changed\n // with parseZone.\n if (config._tzm != null) {\n config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n }\n\n if (config._nextDay) {\n config._a[HOUR] = 24;\n }\n\n // check for mismatching day of week\n if (\n config._w &&\n typeof config._w.d !== 'undefined' &&\n config._w.d !== expectedWeekday\n ) {\n getParsingFlags(config).weekdayMismatch = true;\n }\n}\n\nfunction dayOfYearFromWeekInfo(config) {\n var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;\n\n w = config._w;\n if (w.GG != null || w.W != null || w.E != null) {\n dow = 1;\n doy = 4;\n\n // TODO: We need to take the current isoWeekYear, but that depends on\n // how we interpret now (local, utc, fixed offset). So create\n // a now version of current config (take local/utc/offset flags, and\n // create now).\n weekYear = defaults(\n w.GG,\n config._a[YEAR],\n weekOfYear(createLocal(), 1, 4).year\n );\n week = defaults(w.W, 1);\n weekday = defaults(w.E, 1);\n if (weekday < 1 || weekday > 7) {\n weekdayOverflow = true;\n }\n } else {\n dow = config._locale._week.dow;\n doy = config._locale._week.doy;\n\n curWeek = weekOfYear(createLocal(), dow, doy);\n\n weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);\n\n // Default to current week.\n week = defaults(w.w, curWeek.week);\n\n if (w.d != null) {\n // weekday -- low day numbers are considered next week\n weekday = w.d;\n if (weekday < 0 || weekday > 6) {\n weekdayOverflow = true;\n }\n } else if (w.e != null) {\n // local weekday -- counting starts from beginning of week\n weekday = w.e + dow;\n if (w.e < 0 || w.e > 6) {\n weekdayOverflow = true;\n }\n } else {\n // default to beginning of week\n weekday = dow;\n }\n }\n if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {\n getParsingFlags(config)._overflowWeeks = true;\n } else if (weekdayOverflow != null) {\n getParsingFlags(config)._overflowWeekday = true;\n } else {\n temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);\n config._a[YEAR] = temp.year;\n config._dayOfYear = temp.dayOfYear;\n }\n}\n\n// constant that refers to the ISO standard\nhooks.ISO_8601 = function () {};\n\n// constant that refers to the RFC 2822 form\nhooks.RFC_2822 = function () {};\n\n// date from string and format string\nfunction configFromStringAndFormat(config) {\n // TODO: Move this to another part of the creation flow to prevent circular deps\n if (config._f === hooks.ISO_8601) {\n configFromISO(config);\n return;\n }\n if (config._f === hooks.RFC_2822) {\n configFromRFC2822(config);\n return;\n }\n config._a = [];\n getParsingFlags(config).empty = true;\n\n // This array is used to make a Date, either with `new Date` or `Date.UTC`\n var string = '' + config._i,\n i,\n parsedInput,\n tokens,\n token,\n skipped,\n stringLength = string.length,\n totalParsedInputLength = 0,\n era;\n\n tokens =\n expandFormat(config._f, config._locale).match(formattingTokens) || [];\n\n for (i = 0; i < tokens.length; i++) {\n token = tokens[i];\n parsedInput = (string.match(getParseRegexForToken(token, config)) ||\n [])[0];\n if (parsedInput) {\n skipped = string.substr(0, string.indexOf(parsedInput));\n if (skipped.length > 0) {\n getParsingFlags(config).unusedInput.push(skipped);\n }\n string = string.slice(\n string.indexOf(parsedInput) + parsedInput.length\n );\n totalParsedInputLength += parsedInput.length;\n }\n // don't parse if it's not a known token\n if (formatTokenFunctions[token]) {\n if (parsedInput) {\n getParsingFlags(config).empty = false;\n } else {\n getParsingFlags(config).unusedTokens.push(token);\n }\n addTimeToArrayFromToken(token, parsedInput, config);\n } else if (config._strict && !parsedInput) {\n getParsingFlags(config).unusedTokens.push(token);\n }\n }\n\n // add remaining unparsed input length to the string\n getParsingFlags(config).charsLeftOver =\n stringLength - totalParsedInputLength;\n if (string.length > 0) {\n getParsingFlags(config).unusedInput.push(string);\n }\n\n // clear _12h flag if hour is <= 12\n if (\n config._a[HOUR] <= 12 &&\n getParsingFlags(config).bigHour === true &&\n config._a[HOUR] > 0\n ) {\n getParsingFlags(config).bigHour = undefined;\n }\n\n getParsingFlags(config).parsedDateParts = config._a.slice(0);\n getParsingFlags(config).meridiem = config._meridiem;\n // handle meridiem\n config._a[HOUR] = meridiemFixWrap(\n config._locale,\n config._a[HOUR],\n config._meridiem\n );\n\n // handle era\n era = getParsingFlags(config).era;\n if (era !== null) {\n config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);\n }\n\n configFromArray(config);\n checkOverflow(config);\n}\n\nfunction meridiemFixWrap(locale, hour, meridiem) {\n var isPm;\n\n if (meridiem == null) {\n // nothing to do\n return hour;\n }\n if (locale.meridiemHour != null) {\n return locale.meridiemHour(hour, meridiem);\n } else if (locale.isPM != null) {\n // Fallback\n isPm = locale.isPM(meridiem);\n if (isPm && hour < 12) {\n hour += 12;\n }\n if (!isPm && hour === 12) {\n hour = 0;\n }\n return hour;\n } else {\n // this is not supposed to happen\n return hour;\n }\n}\n\n// date from string and array of format strings\nfunction configFromStringAndArray(config) {\n var tempConfig,\n bestMoment,\n scoreToBeat,\n i,\n currentScore,\n validFormatFound,\n bestFormatIsValid = false;\n\n if (config._f.length === 0) {\n getParsingFlags(config).invalidFormat = true;\n config._d = new Date(NaN);\n return;\n }\n\n for (i = 0; i < config._f.length; i++) {\n currentScore = 0;\n validFormatFound = false;\n tempConfig = copyConfig({}, config);\n if (config._useUTC != null) {\n tempConfig._useUTC = config._useUTC;\n }\n tempConfig._f = config._f[i];\n configFromStringAndFormat(tempConfig);\n\n if (isValid(tempConfig)) {\n validFormatFound = true;\n }\n\n // if there is any input that was not parsed add a penalty for that format\n currentScore += getParsingFlags(tempConfig).charsLeftOver;\n\n //or tokens\n currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;\n\n getParsingFlags(tempConfig).score = currentScore;\n\n if (!bestFormatIsValid) {\n if (\n scoreToBeat == null ||\n currentScore < scoreToBeat ||\n validFormatFound\n ) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n if (validFormatFound) {\n bestFormatIsValid = true;\n }\n }\n } else {\n if (currentScore < scoreToBeat) {\n scoreToBeat = currentScore;\n bestMoment = tempConfig;\n }\n }\n }\n\n extend(config, bestMoment || tempConfig);\n}\n\nfunction configFromObject(config) {\n if (config._d) {\n return;\n }\n\n var i = normalizeObjectUnits(config._i),\n dayOrDate = i.day === undefined ? i.date : i.day;\n config._a = map(\n [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],\n function (obj) {\n return obj && parseInt(obj, 10);\n }\n );\n\n configFromArray(config);\n}\n\nfunction createFromConfig(config) {\n var res = new Moment(checkOverflow(prepareConfig(config)));\n if (res._nextDay) {\n // Adding is smart enough around DST\n res.add(1, 'd');\n res._nextDay = undefined;\n }\n\n return res;\n}\n\nfunction prepareConfig(config) {\n var input = config._i,\n format = config._f;\n\n config._locale = config._locale || getLocale(config._l);\n\n if (input === null || (format === undefined && input === '')) {\n return createInvalid({ nullInput: true });\n }\n\n if (typeof input === 'string') {\n config._i = input = config._locale.preparse(input);\n }\n\n if (isMoment(input)) {\n return new Moment(checkOverflow(input));\n } else if (isDate(input)) {\n config._d = input;\n } else if (isArray(format)) {\n configFromStringAndArray(config);\n } else if (format) {\n configFromStringAndFormat(config);\n } else {\n configFromInput(config);\n }\n\n if (!isValid(config)) {\n config._d = null;\n }\n\n return config;\n}\n\nfunction configFromInput(config) {\n var input = config._i;\n if (isUndefined(input)) {\n config._d = new Date(hooks.now());\n } else if (isDate(input)) {\n config._d = new Date(input.valueOf());\n } else if (typeof input === 'string') {\n configFromString(config);\n } else if (isArray(input)) {\n config._a = map(input.slice(0), function (obj) {\n return parseInt(obj, 10);\n });\n configFromArray(config);\n } else if (isObject(input)) {\n configFromObject(config);\n } else if (isNumber(input)) {\n // from milliseconds\n config._d = new Date(input);\n } else {\n hooks.createFromInputFallback(config);\n }\n}\n\nfunction createLocalOrUTC(input, format, locale, strict, isUTC) {\n var c = {};\n\n if (format === true || format === false) {\n strict = format;\n format = undefined;\n }\n\n if (locale === true || locale === false) {\n strict = locale;\n locale = undefined;\n }\n\n if (\n (isObject(input) && isObjectEmpty(input)) ||\n (isArray(input) && input.length === 0)\n ) {\n input = undefined;\n }\n // object construction must be done this way.\n // https://github.com/moment/moment/issues/1423\n c._isAMomentObject = true;\n c._useUTC = c._isUTC = isUTC;\n c._l = locale;\n c._i = input;\n c._f = format;\n c._strict = strict;\n\n return createFromConfig(c);\n}\n\nfunction createLocal(input, format, locale, strict) {\n return createLocalOrUTC(input, format, locale, strict, false);\n}\n\nvar prototypeMin = deprecate(\n 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other < this ? this : other;\n } else {\n return createInvalid();\n }\n }\n ),\n prototypeMax = deprecate(\n 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',\n function () {\n var other = createLocal.apply(null, arguments);\n if (this.isValid() && other.isValid()) {\n return other > this ? this : other;\n } else {\n return createInvalid();\n }\n }\n );\n\n// Pick a moment m from moments so that m[fn](other) is true for all\n// other. This relies on the function fn to be transitive.\n//\n// moments should either be an array of moment objects or an array, whose\n// first element is an array of moment objects.\nfunction pickBy(fn, moments) {\n var res, i;\n if (moments.length === 1 && isArray(moments[0])) {\n moments = moments[0];\n }\n if (!moments.length) {\n return createLocal();\n }\n res = moments[0];\n for (i = 1; i < moments.length; ++i) {\n if (!moments[i].isValid() || moments[i][fn](res)) {\n res = moments[i];\n }\n }\n return res;\n}\n\n// TODO: Use [].sort instead?\nfunction min() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isBefore', args);\n}\n\nfunction max() {\n var args = [].slice.call(arguments, 0);\n\n return pickBy('isAfter', args);\n}\n\nvar now = function () {\n return Date.now ? Date.now() : +new Date();\n};\n\nvar ordering = [\n 'year',\n 'quarter',\n 'month',\n 'week',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'millisecond',\n];\n\nfunction isDurationValid(m) {\n var key,\n unitHasDecimal = false,\n i;\n for (key in m) {\n if (\n hasOwnProp(m, key) &&\n !(\n indexOf.call(ordering, key) !== -1 &&\n (m[key] == null || !isNaN(m[key]))\n )\n ) {\n return false;\n }\n }\n\n for (i = 0; i < ordering.length; ++i) {\n if (m[ordering[i]]) {\n if (unitHasDecimal) {\n return false; // only allow non-integers for smallest unit\n }\n if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {\n unitHasDecimal = true;\n }\n }\n }\n\n return true;\n}\n\nfunction isValid$1() {\n return this._isValid;\n}\n\nfunction createInvalid$1() {\n return createDuration(NaN);\n}\n\nfunction Duration(duration) {\n var normalizedInput = normalizeObjectUnits(duration),\n years = normalizedInput.year || 0,\n quarters = normalizedInput.quarter || 0,\n months = normalizedInput.month || 0,\n weeks = normalizedInput.week || normalizedInput.isoWeek || 0,\n days = normalizedInput.day || 0,\n hours = normalizedInput.hour || 0,\n minutes = normalizedInput.minute || 0,\n seconds = normalizedInput.second || 0,\n milliseconds = normalizedInput.millisecond || 0;\n\n this._isValid = isDurationValid(normalizedInput);\n\n // representation for dateAddRemove\n this._milliseconds =\n +milliseconds +\n seconds * 1e3 + // 1000\n minutes * 6e4 + // 1000 * 60\n hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978\n // Because of dateAddRemove treats 24 hours as different from a\n // day when working around DST, we need to store them separately\n this._days = +days + weeks * 7;\n // It is impossible to translate months into days without knowing\n // which months you are are talking about, so we have to store\n // it separately.\n this._months = +months + quarters * 3 + years * 12;\n\n this._data = {};\n\n this._locale = getLocale();\n\n this._bubble();\n}\n\nfunction isDuration(obj) {\n return obj instanceof Duration;\n}\n\nfunction absRound(number) {\n if (number < 0) {\n return Math.round(-1 * number) * -1;\n } else {\n return Math.round(number);\n }\n}\n\n// compare two arrays, return the number of differences\nfunction compareArrays(array1, array2, dontConvert) {\n var len = Math.min(array1.length, array2.length),\n lengthDiff = Math.abs(array1.length - array2.length),\n diffs = 0,\n i;\n for (i = 0; i < len; i++) {\n if (\n (dontConvert && array1[i] !== array2[i]) ||\n (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))\n ) {\n diffs++;\n }\n }\n return diffs + lengthDiff;\n}\n\n// FORMATTING\n\nfunction offset(token, separator) {\n addFormatToken(token, 0, 0, function () {\n var offset = this.utcOffset(),\n sign = '+';\n if (offset < 0) {\n offset = -offset;\n sign = '-';\n }\n return (\n sign +\n zeroFill(~~(offset / 60), 2) +\n separator +\n zeroFill(~~offset % 60, 2)\n );\n });\n}\n\noffset('Z', ':');\noffset('ZZ', '');\n\n// PARSING\n\naddRegexToken('Z', matchShortOffset);\naddRegexToken('ZZ', matchShortOffset);\naddParseToken(['Z', 'ZZ'], function (input, array, config) {\n config._useUTC = true;\n config._tzm = offsetFromString(matchShortOffset, input);\n});\n\n// HELPERS\n\n// timezone chunker\n// '+10:00' > ['10', '00']\n// '-1530' > ['-15', '30']\nvar chunkOffset = /([\\+\\-]|\\d\\d)/gi;\n\nfunction offsetFromString(matcher, string) {\n var matches = (string || '').match(matcher),\n chunk,\n parts,\n minutes;\n\n if (matches === null) {\n return null;\n }\n\n chunk = matches[matches.length - 1] || [];\n parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];\n minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;\n}\n\n// Return a moment from input, that is local/utc/zone equivalent to model.\nfunction cloneWithOffset(input, model) {\n var res, diff;\n if (model._isUTC) {\n res = model.clone();\n diff =\n (isMoment(input) || isDate(input)\n ? input.valueOf()\n : createLocal(input).valueOf()) - res.valueOf();\n // Use low-level api, because this fn is low-level api.\n res._d.setTime(res._d.valueOf() + diff);\n hooks.updateOffset(res, false);\n return res;\n } else {\n return createLocal(input).local();\n }\n}\n\nfunction getDateOffset(m) {\n // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n // https://github.com/moment/moment/pull/1871\n return -Math.round(m._d.getTimezoneOffset());\n}\n\n// HOOKS\n\n// This function will be called whenever a moment is mutated.\n// It is intended to keep the offset in sync with the timezone.\nhooks.updateOffset = function () {};\n\n// MOMENTS\n\n// keepLocalTime = true means only change the timezone, without\n// affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n// +0200, so we adjust the time as needed, to be valid.\n//\n// Keeping the time actually adds/subtracts (one hour)\n// from the actual represented time. That is why we call updateOffset\n// a second time. In case it wants us to change the offset again\n// _changeInProgress == true case, then we have to adjust, because\n// there is no such time in the given timezone.\nfunction getSetOffset(input, keepLocalTime, keepMinutes) {\n var offset = this._offset || 0,\n localAdjust;\n if (!this.isValid()) {\n return input != null ? this : NaN;\n }\n if (input != null) {\n if (typeof input === 'string') {\n input = offsetFromString(matchShortOffset, input);\n if (input === null) {\n return this;\n }\n } else if (Math.abs(input) < 16 && !keepMinutes) {\n input = input * 60;\n }\n if (!this._isUTC && keepLocalTime) {\n localAdjust = getDateOffset(this);\n }\n this._offset = input;\n this._isUTC = true;\n if (localAdjust != null) {\n this.add(localAdjust, 'm');\n }\n if (offset !== input) {\n if (!keepLocalTime || this._changeInProgress) {\n addSubtract(\n this,\n createDuration(input - offset, 'm'),\n 1,\n false\n );\n } else if (!this._changeInProgress) {\n this._changeInProgress = true;\n hooks.updateOffset(this, true);\n this._changeInProgress = null;\n }\n }\n return this;\n } else {\n return this._isUTC ? offset : getDateOffset(this);\n }\n}\n\nfunction getSetZone(input, keepLocalTime) {\n if (input != null) {\n if (typeof input !== 'string') {\n input = -input;\n }\n\n this.utcOffset(input, keepLocalTime);\n\n return this;\n } else {\n return -this.utcOffset();\n }\n}\n\nfunction setOffsetToUTC(keepLocalTime) {\n return this.utcOffset(0, keepLocalTime);\n}\n\nfunction setOffsetToLocal(keepLocalTime) {\n if (this._isUTC) {\n this.utcOffset(0, keepLocalTime);\n this._isUTC = false;\n\n if (keepLocalTime) {\n this.subtract(getDateOffset(this), 'm');\n }\n }\n return this;\n}\n\nfunction setOffsetToParsedOffset() {\n if (this._tzm != null) {\n this.utcOffset(this._tzm, false, true);\n } else if (typeof this._i === 'string') {\n var tZone = offsetFromString(matchOffset, this._i);\n if (tZone != null) {\n this.utcOffset(tZone);\n } else {\n this.utcOffset(0, true);\n }\n }\n return this;\n}\n\nfunction hasAlignedHourOffset(input) {\n if (!this.isValid()) {\n return false;\n }\n input = input ? createLocal(input).utcOffset() : 0;\n\n return (this.utcOffset() - input) % 60 === 0;\n}\n\nfunction isDaylightSavingTime() {\n return (\n this.utcOffset() > this.clone().month(0).utcOffset() ||\n this.utcOffset() > this.clone().month(5).utcOffset()\n );\n}\n\nfunction isDaylightSavingTimeShifted() {\n if (!isUndefined(this._isDSTShifted)) {\n return this._isDSTShifted;\n }\n\n var c = {},\n other;\n\n copyConfig(c, this);\n c = prepareConfig(c);\n\n if (c._a) {\n other = c._isUTC ? createUTC(c._a) : createLocal(c._a);\n this._isDSTShifted =\n this.isValid() && compareArrays(c._a, other.toArray()) > 0;\n } else {\n this._isDSTShifted = false;\n }\n\n return this._isDSTShifted;\n}\n\nfunction isLocal() {\n return this.isValid() ? !this._isUTC : false;\n}\n\nfunction isUtcOffset() {\n return this.isValid() ? this._isUTC : false;\n}\n\nfunction isUtc() {\n return this.isValid() ? this._isUTC && this._offset === 0 : false;\n}\n\n// ASP.NET json date format regex\nvar aspNetRegex = /^(-|\\+)?(?:(\\d*)[. ])?(\\d+):(\\d+)(?::(\\d+)(\\.\\d*)?)?$/,\n // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n // and further modified to allow for strings containing both week and day\n isoRegex = /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\nfunction createDuration(input, key) {\n var duration = input,\n // matching against regexp is expensive, do it on demand\n match = null,\n sign,\n ret,\n diffRes;\n\n if (isDuration(input)) {\n duration = {\n ms: input._milliseconds,\n d: input._days,\n M: input._months,\n };\n } else if (isNumber(input) || !isNaN(+input)) {\n duration = {};\n if (key) {\n duration[key] = +input;\n } else {\n duration.milliseconds = +input;\n }\n } else if ((match = aspNetRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: 0,\n d: toInt(match[DATE]) * sign,\n h: toInt(match[HOUR]) * sign,\n m: toInt(match[MINUTE]) * sign,\n s: toInt(match[SECOND]) * sign,\n ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match\n };\n } else if ((match = isoRegex.exec(input))) {\n sign = match[1] === '-' ? -1 : 1;\n duration = {\n y: parseIso(match[2], sign),\n M: parseIso(match[3], sign),\n w: parseIso(match[4], sign),\n d: parseIso(match[5], sign),\n h: parseIso(match[6], sign),\n m: parseIso(match[7], sign),\n s: parseIso(match[8], sign),\n };\n } else if (duration == null) {\n // checks for null or undefined\n duration = {};\n } else if (\n typeof duration === 'object' &&\n ('from' in duration || 'to' in duration)\n ) {\n diffRes = momentsDifference(\n createLocal(duration.from),\n createLocal(duration.to)\n );\n\n duration = {};\n duration.ms = diffRes.milliseconds;\n duration.M = diffRes.months;\n }\n\n ret = new Duration(duration);\n\n if (isDuration(input) && hasOwnProp(input, '_locale')) {\n ret._locale = input._locale;\n }\n\n if (isDuration(input) && hasOwnProp(input, '_isValid')) {\n ret._isValid = input._isValid;\n }\n\n return ret;\n}\n\ncreateDuration.fn = Duration.prototype;\ncreateDuration.invalid = createInvalid$1;\n\nfunction parseIso(inp, sign) {\n // We'd normally use ~~inp for this, but unfortunately it also\n // converts floats to ints.\n // inp may be undefined, so careful calling replace on it.\n var res = inp && parseFloat(inp.replace(',', '.'));\n // apply sign while we're at it\n return (isNaN(res) ? 0 : res) * sign;\n}\n\nfunction positiveMomentsDifference(base, other) {\n var res = {};\n\n res.months =\n other.month() - base.month() + (other.year() - base.year()) * 12;\n if (base.clone().add(res.months, 'M').isAfter(other)) {\n --res.months;\n }\n\n res.milliseconds = +other - +base.clone().add(res.months, 'M');\n\n return res;\n}\n\nfunction momentsDifference(base, other) {\n var res;\n if (!(base.isValid() && other.isValid())) {\n return { milliseconds: 0, months: 0 };\n }\n\n other = cloneWithOffset(other, base);\n if (base.isBefore(other)) {\n res = positiveMomentsDifference(base, other);\n } else {\n res = positiveMomentsDifference(other, base);\n res.milliseconds = -res.milliseconds;\n res.months = -res.months;\n }\n\n return res;\n}\n\n// TODO: remove 'name' arg after deprecation is removed\nfunction createAdder(direction, name) {\n return function (val, period) {\n var dur, tmp;\n //invert the arguments, but complain about it\n if (period !== null && !isNaN(+period)) {\n deprecateSimple(\n name,\n 'moment().' +\n name +\n '(period, number) is deprecated. Please use moment().' +\n name +\n '(number, period). ' +\n 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'\n );\n tmp = val;\n val = period;\n period = tmp;\n }\n\n dur = createDuration(val, period);\n addSubtract(this, dur, direction);\n return this;\n };\n}\n\nfunction addSubtract(mom, duration, isAdding, updateOffset) {\n var milliseconds = duration._milliseconds,\n days = absRound(duration._days),\n months = absRound(duration._months);\n\n if (!mom.isValid()) {\n // No op\n return;\n }\n\n updateOffset = updateOffset == null ? true : updateOffset;\n\n if (months) {\n setMonth(mom, get(mom, 'Month') + months * isAdding);\n }\n if (days) {\n set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);\n }\n if (milliseconds) {\n mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);\n }\n if (updateOffset) {\n hooks.updateOffset(mom, days || months);\n }\n}\n\nvar add = createAdder(1, 'add'),\n subtract = createAdder(-1, 'subtract');\n\nfunction isString(input) {\n return typeof input === 'string' || input instanceof String;\n}\n\n// type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined\nfunction isMomentInput(input) {\n return (\n isMoment(input) ||\n isDate(input) ||\n isString(input) ||\n isNumber(input) ||\n isNumberOrStringArray(input) ||\n isMomentInputObject(input) ||\n input === null ||\n input === undefined\n );\n}\n\nfunction isMomentInputObject(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'years',\n 'year',\n 'y',\n 'months',\n 'month',\n 'M',\n 'days',\n 'day',\n 'd',\n 'dates',\n 'date',\n 'D',\n 'hours',\n 'hour',\n 'h',\n 'minutes',\n 'minute',\n 'm',\n 'seconds',\n 'second',\n 's',\n 'milliseconds',\n 'millisecond',\n 'ms',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n}\n\nfunction isNumberOrStringArray(input) {\n var arrayTest = isArray(input),\n dataTypeTest = false;\n if (arrayTest) {\n dataTypeTest =\n input.filter(function (item) {\n return !isNumber(item) && isString(input);\n }).length === 0;\n }\n return arrayTest && dataTypeTest;\n}\n\nfunction isCalendarSpec(input) {\n var objectTest = isObject(input) && !isObjectEmpty(input),\n propertyTest = false,\n properties = [\n 'sameDay',\n 'nextDay',\n 'lastDay',\n 'nextWeek',\n 'lastWeek',\n 'sameElse',\n ],\n i,\n property;\n\n for (i = 0; i < properties.length; i += 1) {\n property = properties[i];\n propertyTest = propertyTest || hasOwnProp(input, property);\n }\n\n return objectTest && propertyTest;\n}\n\nfunction getCalendarFormat(myMoment, now) {\n var diff = myMoment.diff(now, 'days', true);\n return diff < -6\n ? 'sameElse'\n : diff < -1\n ? 'lastWeek'\n : diff < 0\n ? 'lastDay'\n : diff < 1\n ? 'sameDay'\n : diff < 2\n ? 'nextDay'\n : diff < 7\n ? 'nextWeek'\n : 'sameElse';\n}\n\nfunction calendar$1(time, formats) {\n // Support for single parameter, formats only overload to the calendar function\n if (arguments.length === 1) {\n if (!arguments[0]) {\n time = undefined;\n formats = undefined;\n } else if (isMomentInput(arguments[0])) {\n time = arguments[0];\n formats = undefined;\n } else if (isCalendarSpec(arguments[0])) {\n formats = arguments[0];\n time = undefined;\n }\n }\n // We want to compare the start of today, vs this.\n // Getting start-of-today depends on whether we're local/utc/offset or not.\n var now = time || createLocal(),\n sod = cloneWithOffset(now, this).startOf('day'),\n format = hooks.calendarFormat(this, sod) || 'sameElse',\n output =\n formats &&\n (isFunction(formats[format])\n ? formats[format].call(this, now)\n : formats[format]);\n\n return this.format(\n output || this.localeData().calendar(format, this, createLocal(now))\n );\n}\n\nfunction clone() {\n return new Moment(this);\n}\n\nfunction isAfter(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() > localInput.valueOf();\n } else {\n return localInput.valueOf() < this.clone().startOf(units).valueOf();\n }\n}\n\nfunction isBefore(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input);\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() < localInput.valueOf();\n } else {\n return this.clone().endOf(units).valueOf() < localInput.valueOf();\n }\n}\n\nfunction isBetween(from, to, units, inclusivity) {\n var localFrom = isMoment(from) ? from : createLocal(from),\n localTo = isMoment(to) ? to : createLocal(to);\n if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {\n return false;\n }\n inclusivity = inclusivity || '()';\n return (\n (inclusivity[0] === '('\n ? this.isAfter(localFrom, units)\n : !this.isBefore(localFrom, units)) &&\n (inclusivity[1] === ')'\n ? this.isBefore(localTo, units)\n : !this.isAfter(localTo, units))\n );\n}\n\nfunction isSame(input, units) {\n var localInput = isMoment(input) ? input : createLocal(input),\n inputMs;\n if (!(this.isValid() && localInput.isValid())) {\n return false;\n }\n units = normalizeUnits(units) || 'millisecond';\n if (units === 'millisecond') {\n return this.valueOf() === localInput.valueOf();\n } else {\n inputMs = localInput.valueOf();\n return (\n this.clone().startOf(units).valueOf() <= inputMs &&\n inputMs <= this.clone().endOf(units).valueOf()\n );\n }\n}\n\nfunction isSameOrAfter(input, units) {\n return this.isSame(input, units) || this.isAfter(input, units);\n}\n\nfunction isSameOrBefore(input, units) {\n return this.isSame(input, units) || this.isBefore(input, units);\n}\n\nfunction diff(input, units, asFloat) {\n var that, zoneDelta, output;\n\n if (!this.isValid()) {\n return NaN;\n }\n\n that = cloneWithOffset(input, this);\n\n if (!that.isValid()) {\n return NaN;\n }\n\n zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;\n\n units = normalizeUnits(units);\n\n switch (units) {\n case 'year':\n output = monthDiff(this, that) / 12;\n break;\n case 'month':\n output = monthDiff(this, that);\n break;\n case 'quarter':\n output = monthDiff(this, that) / 3;\n break;\n case 'second':\n output = (this - that) / 1e3;\n break; // 1000\n case 'minute':\n output = (this - that) / 6e4;\n break; // 1000 * 60\n case 'hour':\n output = (this - that) / 36e5;\n break; // 1000 * 60 * 60\n case 'day':\n output = (this - that - zoneDelta) / 864e5;\n break; // 1000 * 60 * 60 * 24, negate dst\n case 'week':\n output = (this - that - zoneDelta) / 6048e5;\n break; // 1000 * 60 * 60 * 24 * 7, negate dst\n default:\n output = this - that;\n }\n\n return asFloat ? output : absFloor(output);\n}\n\nfunction monthDiff(a, b) {\n if (a.date() < b.date()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -monthDiff(b, a);\n }\n // difference in months\n var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),\n // b is in (anchor - 1 month, anchor + 1 month)\n anchor = a.clone().add(wholeMonthDiff, 'months'),\n anchor2,\n adjust;\n\n if (b - anchor < 0) {\n anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n // linear across the month\n adjust = (b - anchor) / (anchor2 - anchor);\n }\n\n //check for negative zero, return zero if negative zero\n return -(wholeMonthDiff + adjust) || 0;\n}\n\nhooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';\nhooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';\n\nfunction toString() {\n return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n}\n\nfunction toISOString(keepOffset) {\n if (!this.isValid()) {\n return null;\n }\n var utc = keepOffset !== true,\n m = utc ? this.clone().utc() : this;\n if (m.year() < 0 || m.year() > 9999) {\n return formatMoment(\n m,\n utc\n ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'\n : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n }\n if (isFunction(Date.prototype.toISOString)) {\n // native implementation is ~50x faster, use it when we can\n if (utc) {\n return this.toDate().toISOString();\n } else {\n return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)\n .toISOString()\n .replace('Z', formatMoment(m, 'Z'));\n }\n }\n return formatMoment(\n m,\n utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'\n );\n}\n\n/**\n * Return a human readable representation of a moment that can\n * also be evaluated to get a new moment which is the same\n *\n * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects\n */\nfunction inspect() {\n if (!this.isValid()) {\n return 'moment.invalid(/* ' + this._i + ' */)';\n }\n var func = 'moment',\n zone = '',\n prefix,\n year,\n datetime,\n suffix;\n if (!this.isLocal()) {\n func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';\n zone = 'Z';\n }\n prefix = '[' + func + '(\"]';\n year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';\n datetime = '-MM-DD[T]HH:mm:ss.SSS';\n suffix = zone + '[\")]';\n\n return this.format(prefix + year + datetime + suffix);\n}\n\nfunction format(inputString) {\n if (!inputString) {\n inputString = this.isUtc()\n ? hooks.defaultFormatUtc\n : hooks.defaultFormat;\n }\n var output = formatMoment(this, inputString);\n return this.localeData().postformat(output);\n}\n\nfunction from(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ to: this, from: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction fromNow(withoutSuffix) {\n return this.from(createLocal(), withoutSuffix);\n}\n\nfunction to(time, withoutSuffix) {\n if (\n this.isValid() &&\n ((isMoment(time) && time.isValid()) || createLocal(time).isValid())\n ) {\n return createDuration({ from: this, to: time })\n .locale(this.locale())\n .humanize(!withoutSuffix);\n } else {\n return this.localeData().invalidDate();\n }\n}\n\nfunction toNow(withoutSuffix) {\n return this.to(createLocal(), withoutSuffix);\n}\n\n// If passed a locale key, it will set the locale for this\n// instance. Otherwise, it will return the locale configuration\n// variables for this instance.\nfunction locale(key) {\n var newLocaleData;\n\n if (key === undefined) {\n return this._locale._abbr;\n } else {\n newLocaleData = getLocale(key);\n if (newLocaleData != null) {\n this._locale = newLocaleData;\n }\n return this;\n }\n}\n\nvar lang = deprecate(\n 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n function (key) {\n if (key === undefined) {\n return this.localeData();\n } else {\n return this.locale(key);\n }\n }\n);\n\nfunction localeData() {\n return this._locale;\n}\n\nvar MS_PER_SECOND = 1000,\n MS_PER_MINUTE = 60 * MS_PER_SECOND,\n MS_PER_HOUR = 60 * MS_PER_MINUTE,\n MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;\n\n// actual modulo - handles negative numbers (for dates before 1970):\nfunction mod$1(dividend, divisor) {\n return ((dividend % divisor) + divisor) % divisor;\n}\n\nfunction localStartOfDate(y, m, d) {\n // the date constructor remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return new Date(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return new Date(y, m, d).valueOf();\n }\n}\n\nfunction utcStartOfDate(y, m, d) {\n // Date.UTC remaps years 0-99 to 1900-1999\n if (y < 100 && y >= 0) {\n // preserve leap years using a full 400 year cycle, then reset\n return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;\n } else {\n return Date.UTC(y, m, d);\n }\n}\n\nfunction startOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year(), 0, 1);\n break;\n case 'quarter':\n time = startOfDate(\n this.year(),\n this.month() - (this.month() % 3),\n 1\n );\n break;\n case 'month':\n time = startOfDate(this.year(), this.month(), 1);\n break;\n case 'week':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday()\n );\n break;\n case 'isoWeek':\n time = startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1)\n );\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date());\n break;\n case 'hour':\n time = this._d.valueOf();\n time -= mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n );\n break;\n case 'minute':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_MINUTE);\n break;\n case 'second':\n time = this._d.valueOf();\n time -= mod$1(time, MS_PER_SECOND);\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n}\n\nfunction endOf(units) {\n var time, startOfDate;\n units = normalizeUnits(units);\n if (units === undefined || units === 'millisecond' || !this.isValid()) {\n return this;\n }\n\n startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;\n\n switch (units) {\n case 'year':\n time = startOfDate(this.year() + 1, 0, 1) - 1;\n break;\n case 'quarter':\n time =\n startOfDate(\n this.year(),\n this.month() - (this.month() % 3) + 3,\n 1\n ) - 1;\n break;\n case 'month':\n time = startOfDate(this.year(), this.month() + 1, 1) - 1;\n break;\n case 'week':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - this.weekday() + 7\n ) - 1;\n break;\n case 'isoWeek':\n time =\n startOfDate(\n this.year(),\n this.month(),\n this.date() - (this.isoWeekday() - 1) + 7\n ) - 1;\n break;\n case 'day':\n case 'date':\n time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;\n break;\n case 'hour':\n time = this._d.valueOf();\n time +=\n MS_PER_HOUR -\n mod$1(\n time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),\n MS_PER_HOUR\n ) -\n 1;\n break;\n case 'minute':\n time = this._d.valueOf();\n time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;\n break;\n case 'second':\n time = this._d.valueOf();\n time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;\n break;\n }\n\n this._d.setTime(time);\n hooks.updateOffset(this, true);\n return this;\n}\n\nfunction valueOf() {\n return this._d.valueOf() - (this._offset || 0) * 60000;\n}\n\nfunction unix() {\n return Math.floor(this.valueOf() / 1000);\n}\n\nfunction toDate() {\n return new Date(this.valueOf());\n}\n\nfunction toArray() {\n var m = this;\n return [\n m.year(),\n m.month(),\n m.date(),\n m.hour(),\n m.minute(),\n m.second(),\n m.millisecond(),\n ];\n}\n\nfunction toObject() {\n var m = this;\n return {\n years: m.year(),\n months: m.month(),\n date: m.date(),\n hours: m.hours(),\n minutes: m.minutes(),\n seconds: m.seconds(),\n milliseconds: m.milliseconds(),\n };\n}\n\nfunction toJSON() {\n // new Date(NaN).toJSON() === null\n return this.isValid() ? this.toISOString() : null;\n}\n\nfunction isValid$2() {\n return isValid(this);\n}\n\nfunction parsingFlags() {\n return extend({}, getParsingFlags(this));\n}\n\nfunction invalidAt() {\n return getParsingFlags(this).overflow;\n}\n\nfunction creationData() {\n return {\n input: this._i,\n format: this._f,\n locale: this._locale,\n isUTC: this._isUTC,\n strict: this._strict,\n };\n}\n\naddFormatToken('N', 0, 0, 'eraAbbr');\naddFormatToken('NN', 0, 0, 'eraAbbr');\naddFormatToken('NNN', 0, 0, 'eraAbbr');\naddFormatToken('NNNN', 0, 0, 'eraName');\naddFormatToken('NNNNN', 0, 0, 'eraNarrow');\n\naddFormatToken('y', ['y', 1], 'yo', 'eraYear');\naddFormatToken('y', ['yy', 2], 0, 'eraYear');\naddFormatToken('y', ['yyy', 3], 0, 'eraYear');\naddFormatToken('y', ['yyyy', 4], 0, 'eraYear');\n\naddRegexToken('N', matchEraAbbr);\naddRegexToken('NN', matchEraAbbr);\naddRegexToken('NNN', matchEraAbbr);\naddRegexToken('NNNN', matchEraName);\naddRegexToken('NNNNN', matchEraNarrow);\n\naddParseToken(['N', 'NN', 'NNN', 'NNNN', 'NNNNN'], function (\n input,\n array,\n config,\n token\n) {\n var era = config._locale.erasParse(input, token, config._strict);\n if (era) {\n getParsingFlags(config).era = era;\n } else {\n getParsingFlags(config).invalidEra = input;\n }\n});\n\naddRegexToken('y', matchUnsigned);\naddRegexToken('yy', matchUnsigned);\naddRegexToken('yyy', matchUnsigned);\naddRegexToken('yyyy', matchUnsigned);\naddRegexToken('yo', matchEraYearOrdinal);\n\naddParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);\naddParseToken(['yo'], function (input, array, config, token) {\n var match;\n if (config._locale._eraYearOrdinalRegex) {\n match = input.match(config._locale._eraYearOrdinalRegex);\n }\n\n if (config._locale.eraYearOrdinalParse) {\n array[YEAR] = config._locale.eraYearOrdinalParse(input, match);\n } else {\n array[YEAR] = parseInt(input, 10);\n }\n});\n\nfunction localeEras(m, format) {\n var i,\n l,\n date,\n eras = this._eras || getLocale('en')._eras;\n for (i = 0, l = eras.length; i < l; ++i) {\n switch (typeof eras[i].since) {\n case 'string':\n // truncate time\n date = hooks(eras[i].since).startOf('day');\n eras[i].since = date.valueOf();\n break;\n }\n\n switch (typeof eras[i].until) {\n case 'undefined':\n eras[i].until = +Infinity;\n break;\n case 'string':\n // truncate time\n date = hooks(eras[i].until).startOf('day').valueOf();\n eras[i].until = date.valueOf();\n break;\n }\n }\n return eras;\n}\n\nfunction localeErasParse(eraName, format, strict) {\n var i,\n l,\n eras = this.eras(),\n name,\n abbr,\n narrow;\n eraName = eraName.toUpperCase();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n name = eras[i].name.toUpperCase();\n abbr = eras[i].abbr.toUpperCase();\n narrow = eras[i].narrow.toUpperCase();\n\n if (strict) {\n switch (format) {\n case 'N':\n case 'NN':\n case 'NNN':\n if (abbr === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNN':\n if (name === eraName) {\n return eras[i];\n }\n break;\n\n case 'NNNNN':\n if (narrow === eraName) {\n return eras[i];\n }\n break;\n }\n } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {\n return eras[i];\n }\n }\n}\n\nfunction localeErasConvertYear(era, year) {\n var dir = era.since <= era.until ? +1 : -1;\n if (year === undefined) {\n return hooks(era.since).year();\n } else {\n return hooks(era.since).year() + (year - era.offset) * dir;\n }\n}\n\nfunction getEraName() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].name;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].name;\n }\n }\n\n return '';\n}\n\nfunction getEraNarrow() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].narrow;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].narrow;\n }\n }\n\n return '';\n}\n\nfunction getEraAbbr() {\n var i,\n l,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (eras[i].since <= val && val <= eras[i].until) {\n return eras[i].abbr;\n }\n if (eras[i].until <= val && val <= eras[i].since) {\n return eras[i].abbr;\n }\n }\n\n return '';\n}\n\nfunction getEraYear() {\n var i,\n l,\n dir,\n val,\n eras = this.localeData().eras();\n for (i = 0, l = eras.length; i < l; ++i) {\n dir = eras[i].since <= eras[i].until ? +1 : -1;\n\n // truncate time\n val = this.clone().startOf('day').valueOf();\n\n if (\n (eras[i].since <= val && val <= eras[i].until) ||\n (eras[i].until <= val && val <= eras[i].since)\n ) {\n return (\n (this.year() - hooks(eras[i].since).year()) * dir +\n eras[i].offset\n );\n }\n }\n\n return this.year();\n}\n\nfunction erasNameRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNameRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNameRegex : this._erasRegex;\n}\n\nfunction erasAbbrRegex(isStrict) {\n if (!hasOwnProp(this, '_erasAbbrRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasAbbrRegex : this._erasRegex;\n}\n\nfunction erasNarrowRegex(isStrict) {\n if (!hasOwnProp(this, '_erasNarrowRegex')) {\n computeErasParse.call(this);\n }\n return isStrict ? this._erasNarrowRegex : this._erasRegex;\n}\n\nfunction matchEraAbbr(isStrict, locale) {\n return locale.erasAbbrRegex(isStrict);\n}\n\nfunction matchEraName(isStrict, locale) {\n return locale.erasNameRegex(isStrict);\n}\n\nfunction matchEraNarrow(isStrict, locale) {\n return locale.erasNarrowRegex(isStrict);\n}\n\nfunction matchEraYearOrdinal(isStrict, locale) {\n return locale._eraYearOrdinalRegex || matchUnsigned;\n}\n\nfunction computeErasParse() {\n var abbrPieces = [],\n namePieces = [],\n narrowPieces = [],\n mixedPieces = [],\n i,\n l,\n eras = this.eras();\n\n for (i = 0, l = eras.length; i < l; ++i) {\n namePieces.push(regexEscape(eras[i].name));\n abbrPieces.push(regexEscape(eras[i].abbr));\n narrowPieces.push(regexEscape(eras[i].narrow));\n\n mixedPieces.push(regexEscape(eras[i].name));\n mixedPieces.push(regexEscape(eras[i].abbr));\n mixedPieces.push(regexEscape(eras[i].narrow));\n }\n\n this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');\n this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');\n this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');\n this._erasNarrowRegex = new RegExp(\n '^(' + narrowPieces.join('|') + ')',\n 'i'\n );\n}\n\n// FORMATTING\n\naddFormatToken(0, ['gg', 2], 0, function () {\n return this.weekYear() % 100;\n});\n\naddFormatToken(0, ['GG', 2], 0, function () {\n return this.isoWeekYear() % 100;\n});\n\nfunction addWeekYearFormatToken(token, getter) {\n addFormatToken(0, [token, token.length], 0, getter);\n}\n\naddWeekYearFormatToken('gggg', 'weekYear');\naddWeekYearFormatToken('ggggg', 'weekYear');\naddWeekYearFormatToken('GGGG', 'isoWeekYear');\naddWeekYearFormatToken('GGGGG', 'isoWeekYear');\n\n// ALIASES\n\naddUnitAlias('weekYear', 'gg');\naddUnitAlias('isoWeekYear', 'GG');\n\n// PRIORITY\n\naddUnitPriority('weekYear', 1);\naddUnitPriority('isoWeekYear', 1);\n\n// PARSING\n\naddRegexToken('G', matchSigned);\naddRegexToken('g', matchSigned);\naddRegexToken('GG', match1to2, match2);\naddRegexToken('gg', match1to2, match2);\naddRegexToken('GGGG', match1to4, match4);\naddRegexToken('gggg', match1to4, match4);\naddRegexToken('GGGGG', match1to6, match6);\naddRegexToken('ggggg', match1to6, match6);\n\naddWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (\n input,\n week,\n config,\n token\n) {\n week[token.substr(0, 2)] = toInt(input);\n});\n\naddWeekParseToken(['gg', 'GG'], function (input, week, config, token) {\n week[token] = hooks.parseTwoDigitYear(input);\n});\n\n// MOMENTS\n\nfunction getSetWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.week(),\n this.weekday(),\n this.localeData()._week.dow,\n this.localeData()._week.doy\n );\n}\n\nfunction getSetISOWeekYear(input) {\n return getSetWeekYearHelper.call(\n this,\n input,\n this.isoWeek(),\n this.isoWeekday(),\n 1,\n 4\n );\n}\n\nfunction getISOWeeksInYear() {\n return weeksInYear(this.year(), 1, 4);\n}\n\nfunction getISOWeeksInISOWeekYear() {\n return weeksInYear(this.isoWeekYear(), 1, 4);\n}\n\nfunction getWeeksInYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n}\n\nfunction getWeeksInWeekYear() {\n var weekInfo = this.localeData()._week;\n return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);\n}\n\nfunction getSetWeekYearHelper(input, week, weekday, dow, doy) {\n var weeksTarget;\n if (input == null) {\n return weekOfYear(this, dow, doy).year;\n } else {\n weeksTarget = weeksInYear(input, dow, doy);\n if (week > weeksTarget) {\n week = weeksTarget;\n }\n return setWeekAll.call(this, input, week, weekday, dow, doy);\n }\n}\n\nfunction setWeekAll(weekYear, week, weekday, dow, doy) {\n var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),\n date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);\n\n this.year(date.getUTCFullYear());\n this.month(date.getUTCMonth());\n this.date(date.getUTCDate());\n return this;\n}\n\n// FORMATTING\n\naddFormatToken('Q', 0, 'Qo', 'quarter');\n\n// ALIASES\n\naddUnitAlias('quarter', 'Q');\n\n// PRIORITY\n\naddUnitPriority('quarter', 7);\n\n// PARSING\n\naddRegexToken('Q', match1);\naddParseToken('Q', function (input, array) {\n array[MONTH] = (toInt(input) - 1) * 3;\n});\n\n// MOMENTS\n\nfunction getSetQuarter(input) {\n return input == null\n ? Math.ceil((this.month() + 1) / 3)\n : this.month((input - 1) * 3 + (this.month() % 3));\n}\n\n// FORMATTING\n\naddFormatToken('D', ['DD', 2], 'Do', 'date');\n\n// ALIASES\n\naddUnitAlias('date', 'D');\n\n// PRIORITY\naddUnitPriority('date', 9);\n\n// PARSING\n\naddRegexToken('D', match1to2);\naddRegexToken('DD', match1to2, match2);\naddRegexToken('Do', function (isStrict, locale) {\n // TODO: Remove \"ordinalParse\" fallback in next major release.\n return isStrict\n ? locale._dayOfMonthOrdinalParse || locale._ordinalParse\n : locale._dayOfMonthOrdinalParseLenient;\n});\n\naddParseToken(['D', 'DD'], DATE);\naddParseToken('Do', function (input, array) {\n array[DATE] = toInt(input.match(match1to2)[0]);\n});\n\n// MOMENTS\n\nvar getSetDayOfMonth = makeGetSet('Date', true);\n\n// FORMATTING\n\naddFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');\n\n// ALIASES\n\naddUnitAlias('dayOfYear', 'DDD');\n\n// PRIORITY\naddUnitPriority('dayOfYear', 4);\n\n// PARSING\n\naddRegexToken('DDD', match1to3);\naddRegexToken('DDDD', match3);\naddParseToken(['DDD', 'DDDD'], function (input, array, config) {\n config._dayOfYear = toInt(input);\n});\n\n// HELPERS\n\n// MOMENTS\n\nfunction getSetDayOfYear(input) {\n var dayOfYear =\n Math.round(\n (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5\n ) + 1;\n return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');\n}\n\n// FORMATTING\n\naddFormatToken('m', ['mm', 2], 0, 'minute');\n\n// ALIASES\n\naddUnitAlias('minute', 'm');\n\n// PRIORITY\n\naddUnitPriority('minute', 14);\n\n// PARSING\n\naddRegexToken('m', match1to2);\naddRegexToken('mm', match1to2, match2);\naddParseToken(['m', 'mm'], MINUTE);\n\n// MOMENTS\n\nvar getSetMinute = makeGetSet('Minutes', false);\n\n// FORMATTING\n\naddFormatToken('s', ['ss', 2], 0, 'second');\n\n// ALIASES\n\naddUnitAlias('second', 's');\n\n// PRIORITY\n\naddUnitPriority('second', 15);\n\n// PARSING\n\naddRegexToken('s', match1to2);\naddRegexToken('ss', match1to2, match2);\naddParseToken(['s', 'ss'], SECOND);\n\n// MOMENTS\n\nvar getSetSecond = makeGetSet('Seconds', false);\n\n// FORMATTING\n\naddFormatToken('S', 0, 0, function () {\n return ~~(this.millisecond() / 100);\n});\n\naddFormatToken(0, ['SS', 2], 0, function () {\n return ~~(this.millisecond() / 10);\n});\n\naddFormatToken(0, ['SSS', 3], 0, 'millisecond');\naddFormatToken(0, ['SSSS', 4], 0, function () {\n return this.millisecond() * 10;\n});\naddFormatToken(0, ['SSSSS', 5], 0, function () {\n return this.millisecond() * 100;\n});\naddFormatToken(0, ['SSSSSS', 6], 0, function () {\n return this.millisecond() * 1000;\n});\naddFormatToken(0, ['SSSSSSS', 7], 0, function () {\n return this.millisecond() * 10000;\n});\naddFormatToken(0, ['SSSSSSSS', 8], 0, function () {\n return this.millisecond() * 100000;\n});\naddFormatToken(0, ['SSSSSSSSS', 9], 0, function () {\n return this.millisecond() * 1000000;\n});\n\n// ALIASES\n\naddUnitAlias('millisecond', 'ms');\n\n// PRIORITY\n\naddUnitPriority('millisecond', 16);\n\n// PARSING\n\naddRegexToken('S', match1to3, match1);\naddRegexToken('SS', match1to3, match2);\naddRegexToken('SSS', match1to3, match3);\n\nvar token, getSetMillisecond;\nfor (token = 'SSSS'; token.length <= 9; token += 'S') {\n addRegexToken(token, matchUnsigned);\n}\n\nfunction parseMs(input, array) {\n array[MILLISECOND] = toInt(('0.' + input) * 1000);\n}\n\nfor (token = 'S'; token.length <= 9; token += 'S') {\n addParseToken(token, parseMs);\n}\n\ngetSetMillisecond = makeGetSet('Milliseconds', false);\n\n// FORMATTING\n\naddFormatToken('z', 0, 0, 'zoneAbbr');\naddFormatToken('zz', 0, 0, 'zoneName');\n\n// MOMENTS\n\nfunction getZoneAbbr() {\n return this._isUTC ? 'UTC' : '';\n}\n\nfunction getZoneName() {\n return this._isUTC ? 'Coordinated Universal Time' : '';\n}\n\nvar proto = Moment.prototype;\n\nproto.add = add;\nproto.calendar = calendar$1;\nproto.clone = clone;\nproto.diff = diff;\nproto.endOf = endOf;\nproto.format = format;\nproto.from = from;\nproto.fromNow = fromNow;\nproto.to = to;\nproto.toNow = toNow;\nproto.get = stringGet;\nproto.invalidAt = invalidAt;\nproto.isAfter = isAfter;\nproto.isBefore = isBefore;\nproto.isBetween = isBetween;\nproto.isSame = isSame;\nproto.isSameOrAfter = isSameOrAfter;\nproto.isSameOrBefore = isSameOrBefore;\nproto.isValid = isValid$2;\nproto.lang = lang;\nproto.locale = locale;\nproto.localeData = localeData;\nproto.max = prototypeMax;\nproto.min = prototypeMin;\nproto.parsingFlags = parsingFlags;\nproto.set = stringSet;\nproto.startOf = startOf;\nproto.subtract = subtract;\nproto.toArray = toArray;\nproto.toObject = toObject;\nproto.toDate = toDate;\nproto.toISOString = toISOString;\nproto.inspect = inspect;\nif (typeof Symbol !== 'undefined' && Symbol.for != null) {\n proto[Symbol.for('nodejs.util.inspect.custom')] = function () {\n return 'Moment<' + this.format() + '>';\n };\n}\nproto.toJSON = toJSON;\nproto.toString = toString;\nproto.unix = unix;\nproto.valueOf = valueOf;\nproto.creationData = creationData;\nproto.eraName = getEraName;\nproto.eraNarrow = getEraNarrow;\nproto.eraAbbr = getEraAbbr;\nproto.eraYear = getEraYear;\nproto.year = getSetYear;\nproto.isLeapYear = getIsLeapYear;\nproto.weekYear = getSetWeekYear;\nproto.isoWeekYear = getSetISOWeekYear;\nproto.quarter = proto.quarters = getSetQuarter;\nproto.month = getSetMonth;\nproto.daysInMonth = getDaysInMonth;\nproto.week = proto.weeks = getSetWeek;\nproto.isoWeek = proto.isoWeeks = getSetISOWeek;\nproto.weeksInYear = getWeeksInYear;\nproto.weeksInWeekYear = getWeeksInWeekYear;\nproto.isoWeeksInYear = getISOWeeksInYear;\nproto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;\nproto.date = getSetDayOfMonth;\nproto.day = proto.days = getSetDayOfWeek;\nproto.weekday = getSetLocaleDayOfWeek;\nproto.isoWeekday = getSetISODayOfWeek;\nproto.dayOfYear = getSetDayOfYear;\nproto.hour = proto.hours = getSetHour;\nproto.minute = proto.minutes = getSetMinute;\nproto.second = proto.seconds = getSetSecond;\nproto.millisecond = proto.milliseconds = getSetMillisecond;\nproto.utcOffset = getSetOffset;\nproto.utc = setOffsetToUTC;\nproto.local = setOffsetToLocal;\nproto.parseZone = setOffsetToParsedOffset;\nproto.hasAlignedHourOffset = hasAlignedHourOffset;\nproto.isDST = isDaylightSavingTime;\nproto.isLocal = isLocal;\nproto.isUtcOffset = isUtcOffset;\nproto.isUtc = isUtc;\nproto.isUTC = isUtc;\nproto.zoneAbbr = getZoneAbbr;\nproto.zoneName = getZoneName;\nproto.dates = deprecate(\n 'dates accessor is deprecated. Use date instead.',\n getSetDayOfMonth\n);\nproto.months = deprecate(\n 'months accessor is deprecated. Use month instead',\n getSetMonth\n);\nproto.years = deprecate(\n 'years accessor is deprecated. Use year instead',\n getSetYear\n);\nproto.zone = deprecate(\n 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',\n getSetZone\n);\nproto.isDSTShifted = deprecate(\n 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',\n isDaylightSavingTimeShifted\n);\n\nfunction createUnix(input) {\n return createLocal(input * 1000);\n}\n\nfunction createInZone() {\n return createLocal.apply(null, arguments).parseZone();\n}\n\nfunction preParsePostFormat(string) {\n return string;\n}\n\nvar proto$1 = Locale.prototype;\n\nproto$1.calendar = calendar;\nproto$1.longDateFormat = longDateFormat;\nproto$1.invalidDate = invalidDate;\nproto$1.ordinal = ordinal;\nproto$1.preparse = preParsePostFormat;\nproto$1.postformat = preParsePostFormat;\nproto$1.relativeTime = relativeTime;\nproto$1.pastFuture = pastFuture;\nproto$1.set = set;\nproto$1.eras = localeEras;\nproto$1.erasParse = localeErasParse;\nproto$1.erasConvertYear = localeErasConvertYear;\nproto$1.erasAbbrRegex = erasAbbrRegex;\nproto$1.erasNameRegex = erasNameRegex;\nproto$1.erasNarrowRegex = erasNarrowRegex;\n\nproto$1.months = localeMonths;\nproto$1.monthsShort = localeMonthsShort;\nproto$1.monthsParse = localeMonthsParse;\nproto$1.monthsRegex = monthsRegex;\nproto$1.monthsShortRegex = monthsShortRegex;\nproto$1.week = localeWeek;\nproto$1.firstDayOfYear = localeFirstDayOfYear;\nproto$1.firstDayOfWeek = localeFirstDayOfWeek;\n\nproto$1.weekdays = localeWeekdays;\nproto$1.weekdaysMin = localeWeekdaysMin;\nproto$1.weekdaysShort = localeWeekdaysShort;\nproto$1.weekdaysParse = localeWeekdaysParse;\n\nproto$1.weekdaysRegex = weekdaysRegex;\nproto$1.weekdaysShortRegex = weekdaysShortRegex;\nproto$1.weekdaysMinRegex = weekdaysMinRegex;\n\nproto$1.isPM = localeIsPM;\nproto$1.meridiem = localeMeridiem;\n\nfunction get$1(format, index, field, setter) {\n var locale = getLocale(),\n utc = createUTC().set(setter, index);\n return locale[field](utc, format);\n}\n\nfunction listMonthsImpl(format, index, field) {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n\n if (index != null) {\n return get$1(format, index, field, 'month');\n }\n\n var i,\n out = [];\n for (i = 0; i < 12; i++) {\n out[i] = get$1(format, i, field, 'month');\n }\n return out;\n}\n\n// ()\n// (5)\n// (fmt, 5)\n// (fmt)\n// (true)\n// (true, 5)\n// (true, fmt, 5)\n// (true, fmt)\nfunction listWeekdaysImpl(localeSorted, format, index, field) {\n if (typeof localeSorted === 'boolean') {\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n } else {\n format = localeSorted;\n index = format;\n localeSorted = false;\n\n if (isNumber(format)) {\n index = format;\n format = undefined;\n }\n\n format = format || '';\n }\n\n var locale = getLocale(),\n shift = localeSorted ? locale._week.dow : 0,\n i,\n out = [];\n\n if (index != null) {\n return get$1(format, (index + shift) % 7, field, 'day');\n }\n\n for (i = 0; i < 7; i++) {\n out[i] = get$1(format, (i + shift) % 7, field, 'day');\n }\n return out;\n}\n\nfunction listMonths(format, index) {\n return listMonthsImpl(format, index, 'months');\n}\n\nfunction listMonthsShort(format, index) {\n return listMonthsImpl(format, index, 'monthsShort');\n}\n\nfunction listWeekdays(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdays');\n}\n\nfunction listWeekdaysShort(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');\n}\n\nfunction listWeekdaysMin(localeSorted, format, index) {\n return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');\n}\n\ngetSetGlobalLocale('en', {\n eras: [\n {\n since: '0001-01-01',\n until: +Infinity,\n offset: 1,\n name: 'Anno Domini',\n narrow: 'AD',\n abbr: 'AD',\n },\n {\n since: '0000-12-31',\n until: -Infinity,\n offset: 1,\n name: 'Before Christ',\n narrow: 'BC',\n abbr: 'BC',\n },\n ],\n dayOfMonthOrdinalParse: /\\d{1,2}(th|st|nd|rd)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n toInt((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n});\n\n// Side effect imports\n\nhooks.lang = deprecate(\n 'moment.lang is deprecated. Use moment.locale instead.',\n getSetGlobalLocale\n);\nhooks.langData = deprecate(\n 'moment.langData is deprecated. Use moment.localeData instead.',\n getLocale\n);\n\nvar mathAbs = Math.abs;\n\nfunction abs() {\n var data = this._data;\n\n this._milliseconds = mathAbs(this._milliseconds);\n this._days = mathAbs(this._days);\n this._months = mathAbs(this._months);\n\n data.milliseconds = mathAbs(data.milliseconds);\n data.seconds = mathAbs(data.seconds);\n data.minutes = mathAbs(data.minutes);\n data.hours = mathAbs(data.hours);\n data.months = mathAbs(data.months);\n data.years = mathAbs(data.years);\n\n return this;\n}\n\nfunction addSubtract$1(duration, input, value, direction) {\n var other = createDuration(input, value);\n\n duration._milliseconds += direction * other._milliseconds;\n duration._days += direction * other._days;\n duration._months += direction * other._months;\n\n return duration._bubble();\n}\n\n// supports only 2.0-style add(1, 's') or add(duration)\nfunction add$1(input, value) {\n return addSubtract$1(this, input, value, 1);\n}\n\n// supports only 2.0-style subtract(1, 's') or subtract(duration)\nfunction subtract$1(input, value) {\n return addSubtract$1(this, input, value, -1);\n}\n\nfunction absCeil(number) {\n if (number < 0) {\n return Math.floor(number);\n } else {\n return Math.ceil(number);\n }\n}\n\nfunction bubble() {\n var milliseconds = this._milliseconds,\n days = this._days,\n months = this._months,\n data = this._data,\n seconds,\n minutes,\n hours,\n years,\n monthsFromDays;\n\n // if we have a mix of positive and negative values, bubble down first\n // check: https://github.com/moment/moment/issues/2166\n if (\n !(\n (milliseconds >= 0 && days >= 0 && months >= 0) ||\n (milliseconds <= 0 && days <= 0 && months <= 0)\n )\n ) {\n milliseconds += absCeil(monthsToDays(months) + days) * 864e5;\n days = 0;\n months = 0;\n }\n\n // The following code bubbles up values, see the tests for\n // examples of what that means.\n data.milliseconds = milliseconds % 1000;\n\n seconds = absFloor(milliseconds / 1000);\n data.seconds = seconds % 60;\n\n minutes = absFloor(seconds / 60);\n data.minutes = minutes % 60;\n\n hours = absFloor(minutes / 60);\n data.hours = hours % 24;\n\n days += absFloor(hours / 24);\n\n // convert days to months\n monthsFromDays = absFloor(daysToMonths(days));\n months += monthsFromDays;\n days -= absCeil(monthsToDays(monthsFromDays));\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n data.days = days;\n data.months = months;\n data.years = years;\n\n return this;\n}\n\nfunction daysToMonths(days) {\n // 400 years have 146097 days (taking into account leap year rules)\n // 400 years have 12 months === 4800\n return (days * 4800) / 146097;\n}\n\nfunction monthsToDays(months) {\n // the reverse of daysToMonths\n return (months * 146097) / 4800;\n}\n\nfunction as(units) {\n if (!this.isValid()) {\n return NaN;\n }\n var days,\n months,\n milliseconds = this._milliseconds;\n\n units = normalizeUnits(units);\n\n if (units === 'month' || units === 'quarter' || units === 'year') {\n days = this._days + milliseconds / 864e5;\n months = this._months + daysToMonths(days);\n switch (units) {\n case 'month':\n return months;\n case 'quarter':\n return months / 3;\n case 'year':\n return months / 12;\n }\n } else {\n // handle milliseconds separately because of floating point math errors (issue #1867)\n days = this._days + Math.round(monthsToDays(this._months));\n switch (units) {\n case 'week':\n return days / 7 + milliseconds / 6048e5;\n case 'day':\n return days + milliseconds / 864e5;\n case 'hour':\n return days * 24 + milliseconds / 36e5;\n case 'minute':\n return days * 1440 + milliseconds / 6e4;\n case 'second':\n return days * 86400 + milliseconds / 1000;\n // Math.floor prevents floating point math errors here\n case 'millisecond':\n return Math.floor(days * 864e5) + milliseconds;\n default:\n throw new Error('Unknown unit ' + units);\n }\n }\n}\n\n// TODO: Use this.as('ms')?\nfunction valueOf$1() {\n if (!this.isValid()) {\n return NaN;\n }\n return (\n this._milliseconds +\n this._days * 864e5 +\n (this._months % 12) * 2592e6 +\n toInt(this._months / 12) * 31536e6\n );\n}\n\nfunction makeAs(alias) {\n return function () {\n return this.as(alias);\n };\n}\n\nvar asMilliseconds = makeAs('ms'),\n asSeconds = makeAs('s'),\n asMinutes = makeAs('m'),\n asHours = makeAs('h'),\n asDays = makeAs('d'),\n asWeeks = makeAs('w'),\n asMonths = makeAs('M'),\n asQuarters = makeAs('Q'),\n asYears = makeAs('y');\n\nfunction clone$1() {\n return createDuration(this);\n}\n\nfunction get$2(units) {\n units = normalizeUnits(units);\n return this.isValid() ? this[units + 's']() : NaN;\n}\n\nfunction makeGetter(name) {\n return function () {\n return this.isValid() ? this._data[name] : NaN;\n };\n}\n\nvar milliseconds = makeGetter('milliseconds'),\n seconds = makeGetter('seconds'),\n minutes = makeGetter('minutes'),\n hours = makeGetter('hours'),\n days = makeGetter('days'),\n months = makeGetter('months'),\n years = makeGetter('years');\n\nfunction weeks() {\n return absFloor(this.days() / 7);\n}\n\nvar round = Math.round,\n thresholds = {\n ss: 44, // a few seconds to seconds\n s: 45, // seconds to minute\n m: 45, // minutes to hour\n h: 22, // hours to day\n d: 26, // days to month/week\n w: null, // weeks to month\n M: 11, // months to year\n };\n\n// helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\nfunction substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n}\n\nfunction relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {\n var duration = createDuration(posNegDuration).abs(),\n seconds = round(duration.as('s')),\n minutes = round(duration.as('m')),\n hours = round(duration.as('h')),\n days = round(duration.as('d')),\n months = round(duration.as('M')),\n weeks = round(duration.as('w')),\n years = round(duration.as('y')),\n a =\n (seconds <= thresholds.ss && ['s', seconds]) ||\n (seconds < thresholds.s && ['ss', seconds]) ||\n (minutes <= 1 && ['m']) ||\n (minutes < thresholds.m && ['mm', minutes]) ||\n (hours <= 1 && ['h']) ||\n (hours < thresholds.h && ['hh', hours]) ||\n (days <= 1 && ['d']) ||\n (days < thresholds.d && ['dd', days]);\n\n if (thresholds.w != null) {\n a =\n a ||\n (weeks <= 1 && ['w']) ||\n (weeks < thresholds.w && ['ww', weeks]);\n }\n a = a ||\n (months <= 1 && ['M']) ||\n (months < thresholds.M && ['MM', months]) ||\n (years <= 1 && ['y']) || ['yy', years];\n\n a[2] = withoutSuffix;\n a[3] = +posNegDuration > 0;\n a[4] = locale;\n return substituteTimeAgo.apply(null, a);\n}\n\n// This function allows you to set the rounding function for relative time strings\nfunction getSetRelativeTimeRounding(roundingFunction) {\n if (roundingFunction === undefined) {\n return round;\n }\n if (typeof roundingFunction === 'function') {\n round = roundingFunction;\n return true;\n }\n return false;\n}\n\n// This function allows you to set a threshold for relative time strings\nfunction getSetRelativeTimeThreshold(threshold, limit) {\n if (thresholds[threshold] === undefined) {\n return false;\n }\n if (limit === undefined) {\n return thresholds[threshold];\n }\n thresholds[threshold] = limit;\n if (threshold === 's') {\n thresholds.ss = limit - 1;\n }\n return true;\n}\n\nfunction humanize(argWithSuffix, argThresholds) {\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var withSuffix = false,\n th = thresholds,\n locale,\n output;\n\n if (typeof argWithSuffix === 'object') {\n argThresholds = argWithSuffix;\n argWithSuffix = false;\n }\n if (typeof argWithSuffix === 'boolean') {\n withSuffix = argWithSuffix;\n }\n if (typeof argThresholds === 'object') {\n th = Object.assign({}, thresholds, argThresholds);\n if (argThresholds.s != null && argThresholds.ss == null) {\n th.ss = argThresholds.s - 1;\n }\n }\n\n locale = this.localeData();\n output = relativeTime$1(this, !withSuffix, th, locale);\n\n if (withSuffix) {\n output = locale.pastFuture(+this, output);\n }\n\n return locale.postformat(output);\n}\n\nvar abs$1 = Math.abs;\n\nfunction sign(x) {\n return (x > 0) - (x < 0) || +x;\n}\n\nfunction toISOString$1() {\n // for ISO strings we do not use the normal bubbling rules:\n // * milliseconds bubble up until they become hours\n // * days do not bubble at all\n // * months bubble up until they become years\n // This is because there is no context-free conversion between hours and days\n // (think of clock changes)\n // and also not between days and months (28-31 days per month)\n if (!this.isValid()) {\n return this.localeData().invalidDate();\n }\n\n var seconds = abs$1(this._milliseconds) / 1000,\n days = abs$1(this._days),\n months = abs$1(this._months),\n minutes,\n hours,\n years,\n s,\n total = this.asSeconds(),\n totalSign,\n ymSign,\n daysSign,\n hmsSign;\n\n if (!total) {\n // this is the same as C#'s (Noda) and python (isodate)...\n // but not other JS (goog.date)\n return 'P0D';\n }\n\n // 3600 seconds -> 60 minutes -> 1 hour\n minutes = absFloor(seconds / 60);\n hours = absFloor(minutes / 60);\n seconds %= 60;\n minutes %= 60;\n\n // 12 months -> 1 year\n years = absFloor(months / 12);\n months %= 12;\n\n // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n s = seconds ? seconds.toFixed(3).replace(/\\.?0+$/, '') : '';\n\n totalSign = total < 0 ? '-' : '';\n ymSign = sign(this._months) !== sign(total) ? '-' : '';\n daysSign = sign(this._days) !== sign(total) ? '-' : '';\n hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';\n\n return (\n totalSign +\n 'P' +\n (years ? ymSign + years + 'Y' : '') +\n (months ? ymSign + months + 'M' : '') +\n (days ? daysSign + days + 'D' : '') +\n (hours || minutes || seconds ? 'T' : '') +\n (hours ? hmsSign + hours + 'H' : '') +\n (minutes ? hmsSign + minutes + 'M' : '') +\n (seconds ? hmsSign + s + 'S' : '')\n );\n}\n\nvar proto$2 = Duration.prototype;\n\nproto$2.isValid = isValid$1;\nproto$2.abs = abs;\nproto$2.add = add$1;\nproto$2.subtract = subtract$1;\nproto$2.as = as;\nproto$2.asMilliseconds = asMilliseconds;\nproto$2.asSeconds = asSeconds;\nproto$2.asMinutes = asMinutes;\nproto$2.asHours = asHours;\nproto$2.asDays = asDays;\nproto$2.asWeeks = asWeeks;\nproto$2.asMonths = asMonths;\nproto$2.asQuarters = asQuarters;\nproto$2.asYears = asYears;\nproto$2.valueOf = valueOf$1;\nproto$2._bubble = bubble;\nproto$2.clone = clone$1;\nproto$2.get = get$2;\nproto$2.milliseconds = milliseconds;\nproto$2.seconds = seconds;\nproto$2.minutes = minutes;\nproto$2.hours = hours;\nproto$2.days = days;\nproto$2.weeks = weeks;\nproto$2.months = months;\nproto$2.years = years;\nproto$2.humanize = humanize;\nproto$2.toISOString = toISOString$1;\nproto$2.toString = toISOString$1;\nproto$2.toJSON = toISOString$1;\nproto$2.locale = locale;\nproto$2.localeData = localeData;\n\nproto$2.toIsoString = deprecate(\n 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',\n toISOString$1\n);\nproto$2.lang = lang;\n\n// FORMATTING\n\naddFormatToken('X', 0, 0, 'unix');\naddFormatToken('x', 0, 0, 'valueOf');\n\n// PARSING\n\naddRegexToken('x', matchSigned);\naddRegexToken('X', matchTimestamp);\naddParseToken('X', function (input, array, config) {\n config._d = new Date(parseFloat(input) * 1000);\n});\naddParseToken('x', function (input, array, config) {\n config._d = new Date(toInt(input));\n});\n\n//! moment.js\n\nhooks.version = '2.29.1';\n\nsetHookCallback(createLocal);\n\nhooks.fn = proto;\nhooks.min = min;\nhooks.max = max;\nhooks.now = now;\nhooks.utc = createUTC;\nhooks.unix = createUnix;\nhooks.months = listMonths;\nhooks.isDate = isDate;\nhooks.locale = getSetGlobalLocale;\nhooks.invalid = createInvalid;\nhooks.duration = createDuration;\nhooks.isMoment = isMoment;\nhooks.weekdays = listWeekdays;\nhooks.parseZone = createInZone;\nhooks.localeData = getLocale;\nhooks.isDuration = isDuration;\nhooks.monthsShort = listMonthsShort;\nhooks.weekdaysMin = listWeekdaysMin;\nhooks.defineLocale = defineLocale;\nhooks.updateLocale = updateLocale;\nhooks.locales = listLocales;\nhooks.weekdaysShort = listWeekdaysShort;\nhooks.normalizeUnits = normalizeUnits;\nhooks.relativeTimeRounding = getSetRelativeTimeRounding;\nhooks.relativeTimeThreshold = getSetRelativeTimeThreshold;\nhooks.calendarFormat = getCalendarFormat;\nhooks.prototype = proto;\n\n// currently HTML5 input type only supports 24-hour formats\nhooks.HTML5_FMT = {\n DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // \n DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // \n DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // \n DATE: 'YYYY-MM-DD', // \n TIME: 'HH:mm', // \n TIME_SECONDS: 'HH:mm:ss', // \n TIME_MS: 'HH:mm:ss.SSS', // \n WEEK: 'GGGG-[W]WW', // \n MONTH: 'YYYY-MM', // \n};\n\nexport default hooks;\n","//! moment.js locale configuration\n//! locale : Occitan, lengadocian dialecte [oc-lnc]\n//! author : Quentin PAGÈS : https://github.com/Quenty31\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('oc-lnc', {\n months: {\n standalone: 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split(\n '_'\n ),\n format: \"de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre\".split(\n '_'\n ),\n isFormat: /D[oD]?(\\s)+MMMM/,\n },\n monthsShort: 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split(\n '_'\n ),\n weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'),\n weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM [de] YYYY',\n ll: 'D MMM YYYY',\n LLL: 'D MMMM [de] YYYY [a] H:mm',\n lll: 'D MMM YYYY, H:mm',\n LLLL: 'dddd D MMMM [de] YYYY [a] H:mm',\n llll: 'ddd D MMM YYYY, H:mm',\n },\n calendar: {\n sameDay: '[uèi a] LT',\n nextDay: '[deman a] LT',\n nextWeek: 'dddd [a] LT',\n lastDay: '[ièr a] LT',\n lastWeek: 'dddd [passat a] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: \"d'aquí %s\",\n past: 'fa %s',\n s: 'unas segondas',\n ss: '%d segondas',\n m: 'una minuta',\n mm: '%d minutas',\n h: 'una ora',\n hh: '%d oras',\n d: 'un jorn',\n dd: '%d jorns',\n M: 'un mes',\n MM: '%d meses',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(r|n|t|è|a)/,\n ordinal: function (number, period) {\n var output =\n number === 1\n ? 'r'\n : number === 2\n ? 'n'\n : number === 3\n ? 'r'\n : number === 4\n ? 't'\n : 'è';\n if (period === 'w' || period === 'W') {\n output = 'a';\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4,\n },\n});\n","//! moment.js locale configuration\n//! locale : Luxembourgish [lb]\n//! author : mweimerskirch : https://github.com/mweimerskirch\n//! author : David Raison : https://github.com/kwisatz\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eng Minutt', 'enger Minutt'],\n h: ['eng Stonn', 'enger Stonn'],\n d: ['een Dag', 'engem Dag'],\n M: ['ee Mount', 'engem Mount'],\n y: ['ee Joer', 'engem Joer'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n}\nfunction processFutureTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'a ' + string;\n }\n return 'an ' + string;\n}\nfunction processPastTime(string) {\n var number = string.substr(0, string.indexOf(' '));\n if (eifelerRegelAppliesToNumber(number)) {\n return 'viru ' + string;\n }\n return 'virun ' + string;\n}\n/**\n * Returns true if the word before the given number loses the '-n' ending.\n * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n *\n * @param number {integer}\n * @returns {boolean}\n */\nfunction eifelerRegelAppliesToNumber(number) {\n number = parseInt(number, 10);\n if (isNaN(number)) {\n return false;\n }\n if (number < 0) {\n // Negative Number --> always true\n return true;\n } else if (number < 10) {\n // Only 1 digit\n if (4 <= number && number <= 7) {\n return true;\n }\n return false;\n } else if (number < 100) {\n // 2 digits\n var lastDigit = number % 10,\n firstDigit = number / 10;\n if (lastDigit === 0) {\n return eifelerRegelAppliesToNumber(firstDigit);\n }\n return eifelerRegelAppliesToNumber(lastDigit);\n } else if (number < 10000) {\n // 3 or 4 digits --> recursively check first digit\n while (number >= 10) {\n number = number / 10;\n }\n return eifelerRegelAppliesToNumber(number);\n } else {\n // Anything larger than 4 digits: recursively check first n-3 digits\n number = number / 1000;\n return eifelerRegelAppliesToNumber(number);\n }\n}\n\nexport default moment.defineLocale('lb', {\n months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort: 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split(\n '_'\n ),\n weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),\n weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm [Auer]',\n LTS: 'H:mm:ss [Auer]',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY H:mm [Auer]',\n LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]',\n },\n calendar: {\n sameDay: '[Haut um] LT',\n sameElse: 'L',\n nextDay: '[Muer um] LT',\n nextWeek: 'dddd [um] LT',\n lastDay: '[Gëschter um] LT',\n lastWeek: function () {\n // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n switch (this.day()) {\n case 2:\n case 4:\n return '[Leschten] dddd [um] LT';\n default:\n return '[Leschte] dddd [um] LT';\n }\n },\n },\n relativeTime: {\n future: processFutureTime,\n past: processPastTime,\n s: 'e puer Sekonnen',\n ss: '%d Sekonnen',\n m: processRelativeTime,\n mm: '%d Minutten',\n h: processRelativeTime,\n hh: '%d Stonnen',\n d: processRelativeTime,\n dd: '%d Deeg',\n M: processRelativeTime,\n MM: '%d Méint',\n y: processRelativeTime,\n yy: '%d Joer',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","'use strict';\n\nconst defaultIsExtractableFile = require('./isExtractableFile.js');\n\n/**\n * Clones a value, recursively extracting\n * [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File),\n * [`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob) and\n * [`ReactNativeFile`]{@link ReactNativeFile} instances with their\n * [object paths]{@link ObjectPath}, replacing them with `null`.\n * [`FileList`](https://developer.mozilla.org/en-US/docs/Web/API/Filelist) instances\n * are treated as [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File)\n * instance arrays.\n * @kind function\n * @name extractFiles\n * @param {*} value Value (typically an object tree) to extract files from.\n * @param {ObjectPath} [path=''] Prefix for object paths for extracted files.\n * @param {ExtractableFileMatcher} [isExtractableFile=isExtractableFile] The function used to identify extractable files.\n * @returns {ExtractFilesResult} Result.\n * @example Ways to `import`.\n * ```js\n * import { extractFiles } from 'extract-files';\n * ```\n *\n * ```js\n * import extractFiles from 'extract-files/public/extractFiles.js';\n * ```\n * @example Ways to `require`.\n * ```js\n * const { extractFiles } = require('extract-files');\n * ```\n *\n * ```js\n * const extractFiles = require('extract-files/public/extractFiles.js');\n * ```\n * @example Extract files from an object.\n * For the following:\n *\n * ```js\n * const file1 = new File(['1'], '1.txt', { type: 'text/plain' });\n * const file2 = new File(['2'], '2.txt', { type: 'text/plain' });\n * const value = {\n * a: file1,\n * b: [file1, file2],\n * };\n *\n * const { clone, files } = extractFiles(value, 'prefix');\n * ```\n *\n * `value` remains the same.\n *\n * `clone` is:\n *\n * ```json\n * {\n * \"a\": null,\n * \"b\": [null, null]\n * }\n * ```\n *\n * `files` is a [`Map`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) instance containing:\n *\n * | Key | Value |\n * | :------ | :--------------------------- |\n * | `file1` | `['prefix.a', 'prefix.b.0']` |\n * | `file2` | `['prefix.b.1']` |\n */\nmodule.exports = function extractFiles(\n value,\n path = '',\n isExtractableFile = defaultIsExtractableFile\n) {\n let clone;\n const files = new Map();\n\n /**\n * Adds a file to the extracted files map.\n * @kind function\n * @name extractFiles~addFile\n * @param {Array} paths File object paths.\n * @param {ExtractableFile} file Extracted file.\n * @ignore\n */\n function addFile(paths, file) {\n const storedPaths = files.get(file);\n if (storedPaths) storedPaths.push(...paths);\n else files.set(file, paths);\n }\n\n if (isExtractableFile(value)) {\n clone = null;\n addFile([path], value);\n } else {\n const prefix = path ? `${path}.` : '';\n\n if (typeof FileList !== 'undefined' && value instanceof FileList)\n clone = Array.prototype.map.call(value, (file, i) => {\n addFile([`${prefix}${i}`], file);\n return null;\n });\n else if (Array.isArray(value))\n clone = value.map((child, i) => {\n const result = extractFiles(child, `${prefix}${i}`, isExtractableFile);\n result.files.forEach(addFile);\n return result.clone;\n });\n else if (value && value.constructor === Object) {\n clone = {};\n for (const i in value) {\n const result = extractFiles(\n value[i],\n `${prefix}${i}`,\n isExtractableFile\n );\n result.files.forEach(addFile);\n clone[i] = result.clone;\n }\n } else clone = value;\n }\n\n return { clone, files };\n};\n","//! moment.js locale configuration\n//! locale : Welsh [cy]\n//! author : Robert Allen : https://github.com/robgallen\n//! author : https://github.com/ryangreaves\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('cy', {\n months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split(\n '_'\n ),\n monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split(\n '_'\n ),\n weekdays: 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split(\n '_'\n ),\n weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n weekdaysParseExact: true,\n // time formats are the same as en-gb\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Heddiw am] LT',\n nextDay: '[Yfory am] LT',\n nextWeek: 'dddd [am] LT',\n lastDay: '[Ddoe am] LT',\n lastWeek: 'dddd [diwethaf am] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'mewn %s',\n past: '%s yn ôl',\n s: 'ychydig eiliadau',\n ss: '%d eiliad',\n m: 'munud',\n mm: '%d munud',\n h: 'awr',\n hh: '%d awr',\n d: 'diwrnod',\n dd: '%d diwrnod',\n M: 'mis',\n MM: '%d mis',\n y: 'blwyddyn',\n yy: '%d flynedd',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n ordinal: function (number) {\n var b = number,\n output = '',\n lookup = [\n '',\n 'af',\n 'il',\n 'ydd',\n 'ydd',\n 'ed',\n 'ed',\n 'ed',\n 'fed',\n 'fed',\n 'fed', // 1af to 10fed\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'eg',\n 'fed',\n 'eg',\n 'fed', // 11eg to 20fed\n ];\n if (b > 20) {\n if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n output = 'fed'; // not 30ain, 70ain or 90ain\n } else {\n output = 'ain';\n }\n } else if (b > 0) {\n output = lookup[b];\n }\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","/* global window */\nimport ponyfill from './ponyfill.js';\n\nvar root;\n\nif (typeof self !== 'undefined') {\n root = self;\n} else if (typeof window !== 'undefined') {\n root = window;\n} else if (typeof global !== 'undefined') {\n root = global;\n} else if (typeof module !== 'undefined') {\n root = module;\n} else {\n root = Function('return this')();\n}\n\nvar result = ponyfill(root);\nexport default result;\n","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n","import { formatMuiErrorMessage as _formatMuiErrorMessage } from \"@material-ui/utils\";\n\n/* eslint-disable no-use-before-define */\n\n/**\n * Returns a number whose value is limited to the given range.\n *\n * @param {number} value The value to be clamped\n * @param {number} min The lower boundary of the output range\n * @param {number} max The upper boundary of the output range\n * @returns {number} A number in the range [min, max]\n */\nfunction clamp(value) {\n var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n\n if (process.env.NODE_ENV !== 'production') {\n if (value < min || value > max) {\n console.error(\"Material-UI: The value provided \".concat(value, \" is out of range [\").concat(min, \", \").concat(max, \"].\"));\n }\n }\n\n return Math.min(Math.max(min, value), max);\n}\n/**\n * Converts a color from CSS hex format to CSS rgb format.\n *\n * @param {string} color - Hex color, i.e. #nnn or #nnnnnn\n * @returns {string} A CSS rgb color string\n */\n\n\nexport function hexToRgb(color) {\n color = color.substr(1);\n var re = new RegExp(\".{1,\".concat(color.length >= 6 ? 2 : 1, \"}\"), 'g');\n var colors = color.match(re);\n\n if (colors && colors[0].length === 1) {\n colors = colors.map(function (n) {\n return n + n;\n });\n }\n\n return colors ? \"rgb\".concat(colors.length === 4 ? 'a' : '', \"(\").concat(colors.map(function (n, index) {\n return index < 3 ? parseInt(n, 16) : Math.round(parseInt(n, 16) / 255 * 1000) / 1000;\n }).join(', '), \")\") : '';\n}\n\nfunction intToHex(int) {\n var hex = int.toString(16);\n return hex.length === 1 ? \"0\".concat(hex) : hex;\n}\n/**\n * Converts a color from CSS rgb format to CSS hex format.\n *\n * @param {string} color - RGB color, i.e. rgb(n, n, n)\n * @returns {string} A CSS rgb color string, i.e. #nnnnnn\n */\n\n\nexport function rgbToHex(color) {\n // Idempotent\n if (color.indexOf('#') === 0) {\n return color;\n }\n\n var _decomposeColor = decomposeColor(color),\n values = _decomposeColor.values;\n\n return \"#\".concat(values.map(function (n) {\n return intToHex(n);\n }).join(''));\n}\n/**\n * Converts a color from hsl format to rgb format.\n *\n * @param {string} color - HSL color values\n * @returns {string} rgb color values\n */\n\nexport function hslToRgb(color) {\n color = decomposeColor(color);\n var _color = color,\n values = _color.values;\n var h = values[0];\n var s = values[1] / 100;\n var l = values[2] / 100;\n var a = s * Math.min(l, 1 - l);\n\n var f = function f(n) {\n var k = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : (n + h / 30) % 12;\n return l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n };\n\n var type = 'rgb';\n var rgb = [Math.round(f(0) * 255), Math.round(f(8) * 255), Math.round(f(4) * 255)];\n\n if (color.type === 'hsla') {\n type += 'a';\n rgb.push(values[3]);\n }\n\n return recomposeColor({\n type: type,\n values: rgb\n });\n}\n/**\n * Returns an object with the type and values of a color.\n *\n * Note: Does not support rgb % values.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @returns {object} - A MUI color object: {type: string, values: number[]}\n */\n\nexport function decomposeColor(color) {\n // Idempotent\n if (color.type) {\n return color;\n }\n\n if (color.charAt(0) === '#') {\n return decomposeColor(hexToRgb(color));\n }\n\n var marker = color.indexOf('(');\n var type = color.substring(0, marker);\n\n if (['rgb', 'rgba', 'hsl', 'hsla'].indexOf(type) === -1) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? \"Material-UI: Unsupported `\".concat(color, \"` color.\\nWe support the following formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla().\") : _formatMuiErrorMessage(3, color));\n }\n\n var values = color.substring(marker + 1, color.length - 1).split(',');\n values = values.map(function (value) {\n return parseFloat(value);\n });\n return {\n type: type,\n values: values\n };\n}\n/**\n * Converts a color object with type and values to a string.\n *\n * @param {object} color - Decomposed color\n * @param {string} color.type - One of: 'rgb', 'rgba', 'hsl', 'hsla'\n * @param {array} color.values - [n,n,n] or [n,n,n,n]\n * @returns {string} A CSS color string\n */\n\nexport function recomposeColor(color) {\n var type = color.type;\n var values = color.values;\n\n if (type.indexOf('rgb') !== -1) {\n // Only convert the first 3 values to int (i.e. not alpha)\n values = values.map(function (n, i) {\n return i < 3 ? parseInt(n, 10) : n;\n });\n } else if (type.indexOf('hsl') !== -1) {\n values[1] = \"\".concat(values[1], \"%\");\n values[2] = \"\".concat(values[2], \"%\");\n }\n\n return \"\".concat(type, \"(\").concat(values.join(', '), \")\");\n}\n/**\n * Calculates the contrast ratio between two colors.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n *\n * @param {string} foreground - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {string} background - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @returns {number} A contrast ratio value in the range 0 - 21.\n */\n\nexport function getContrastRatio(foreground, background) {\n var lumA = getLuminance(foreground);\n var lumB = getLuminance(background);\n return (Math.max(lumA, lumB) + 0.05) / (Math.min(lumA, lumB) + 0.05);\n}\n/**\n * The relative brightness of any point in a color space,\n * normalized to 0 for darkest black and 1 for lightest white.\n *\n * Formula: https://www.w3.org/TR/WCAG20-TECHS/G17.html#G17-tests\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @returns {number} The relative brightness of the color in the range 0 - 1\n */\n\nexport function getLuminance(color) {\n color = decomposeColor(color);\n var rgb = color.type === 'hsl' ? decomposeColor(hslToRgb(color)).values : color.values;\n rgb = rgb.map(function (val) {\n val /= 255; // normalized\n\n return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4);\n }); // Truncate at 3 digits\n\n return Number((0.2126 * rgb[0] + 0.7152 * rgb[1] + 0.0722 * rgb[2]).toFixed(3));\n}\n/**\n * Darken or lighten a color, depending on its luminance.\n * Light colors are darkened, dark colors are lightened.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {number} coefficient=0.15 - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\n\nexport function emphasize(color) {\n var coefficient = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0.15;\n return getLuminance(color) > 0.5 ? darken(color, coefficient) : lighten(color, coefficient);\n}\n/**\n * Set the absolute transparency of a color.\n * Any existing alpha values are overwritten.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {number} value - value to set the alpha channel to in the range 0 -1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\n\nexport function fade(color, value) {\n color = decomposeColor(color);\n value = clamp(value);\n\n if (color.type === 'rgb' || color.type === 'hsl') {\n color.type += 'a';\n }\n\n color.values[3] = value;\n return recomposeColor(color);\n}\n/**\n * Darkens a color.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\n\nexport function darken(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clamp(coefficient);\n\n if (color.type.indexOf('hsl') !== -1) {\n color.values[2] *= 1 - coefficient;\n } else if (color.type.indexOf('rgb') !== -1) {\n for (var i = 0; i < 3; i += 1) {\n color.values[i] *= 1 - coefficient;\n }\n }\n\n return recomposeColor(color);\n}\n/**\n * Lightens a color.\n *\n * @param {string} color - CSS color, i.e. one of: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla()\n * @param {number} coefficient - multiplier in the range 0 - 1\n * @returns {string} A CSS color string. Hex input values are returned as rgb\n */\n\nexport function lighten(color, coefficient) {\n color = decomposeColor(color);\n coefficient = clamp(coefficient);\n\n if (color.type.indexOf('hsl') !== -1) {\n color.values[2] += (100 - color.values[2]) * coefficient;\n } else if (color.type.indexOf('rgb') !== -1) {\n for (var i = 0; i < 3; i += 1) {\n color.values[i] += (255 - color.values[i]) * coefficient;\n }\n }\n\n return recomposeColor(color);\n}","//! moment.js locale configuration\n//! locale : Malayalam [ml]\n//! author : Floyd Pink : https://github.com/floydpink\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ml', {\n months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split(\n '_'\n ),\n monthsShort: 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split(\n '_'\n ),\n weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),\n weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm -നു',\n LTS: 'A h:mm:ss -നു',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm -നു',\n LLLL: 'dddd, D MMMM YYYY, A h:mm -നു',\n },\n calendar: {\n sameDay: '[ഇന്ന്] LT',\n nextDay: '[നാളെ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ഇന്നലെ] LT',\n lastWeek: '[കഴിഞ്ഞ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s കഴിഞ്ഞ്',\n past: '%s മുൻപ്',\n s: 'അൽപ നിമിഷങ്ങൾ',\n ss: '%d സെക്കൻഡ്',\n m: 'ഒരു മിനിറ്റ്',\n mm: '%d മിനിറ്റ്',\n h: 'ഒരു മണിക്കൂർ',\n hh: '%d മണിക്കൂർ',\n d: 'ഒരു ദിവസം',\n dd: '%d ദിവസം',\n M: 'ഒരു മാസം',\n MM: '%d മാസം',\n y: 'ഒരു വർഷം',\n yy: '%d വർഷം',\n },\n meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (\n (meridiem === 'രാത്രി' && hour >= 4) ||\n meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||\n meridiem === 'വൈകുന്നേരം'\n ) {\n return hour + 12;\n } else {\n return hour;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'രാത്രി';\n } else if (hour < 12) {\n return 'രാവിലെ';\n } else if (hour < 17) {\n return 'ഉച്ച കഴിഞ്ഞ്';\n } else if (hour < 20) {\n return 'വൈകുന്നേരം';\n } else {\n return 'രാത്രി';\n }\n },\n});\n","/*eslint no-var:0, prefer-arrow-callback: 0, object-shorthand: 0 */\n'use strict';\n\n\nvar Punycode = require('punycode');\n\n\nvar internals = {};\n\n\n//\n// Read rules from file.\n//\ninternals.rules = require('./data/rules.json').map(function (rule) {\n\n return {\n rule: rule,\n suffix: rule.replace(/^(\\*\\.|\\!)/, ''),\n punySuffix: -1,\n wildcard: rule.charAt(0) === '*',\n exception: rule.charAt(0) === '!'\n };\n});\n\n\n//\n// Check is given string ends with `suffix`.\n//\ninternals.endsWith = function (str, suffix) {\n\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n};\n\n\n//\n// Find rule for a given domain.\n//\ninternals.findRule = function (domain) {\n\n var punyDomain = Punycode.toASCII(domain);\n return internals.rules.reduce(function (memo, rule) {\n\n if (rule.punySuffix === -1){\n rule.punySuffix = Punycode.toASCII(rule.suffix);\n }\n if (!internals.endsWith(punyDomain, '.' + rule.punySuffix) && punyDomain !== rule.punySuffix) {\n return memo;\n }\n // This has been commented out as it never seems to run. This is because\n // sub tlds always appear after their parents and we never find a shorter\n // match.\n //if (memo) {\n // var memoSuffix = Punycode.toASCII(memo.suffix);\n // if (memoSuffix.length >= punySuffix.length) {\n // return memo;\n // }\n //}\n return rule;\n }, null);\n};\n\n\n//\n// Error codes and messages.\n//\nexports.errorCodes = {\n DOMAIN_TOO_SHORT: 'Domain name too short.',\n DOMAIN_TOO_LONG: 'Domain name too long. It should be no more than 255 chars.',\n LABEL_STARTS_WITH_DASH: 'Domain name label can not start with a dash.',\n LABEL_ENDS_WITH_DASH: 'Domain name label can not end with a dash.',\n LABEL_TOO_LONG: 'Domain name label should be at most 63 chars long.',\n LABEL_TOO_SHORT: 'Domain name label should be at least 1 character long.',\n LABEL_INVALID_CHARS: 'Domain name label can only contain alphanumeric characters or dashes.'\n};\n\n\n//\n// Validate domain name and throw if not valid.\n//\n// From wikipedia:\n//\n// Hostnames are composed of series of labels concatenated with dots, as are all\n// domain names. Each label must be between 1 and 63 characters long, and the\n// entire hostname (including the delimiting dots) has a maximum of 255 chars.\n//\n// Allowed chars:\n//\n// * `a-z`\n// * `0-9`\n// * `-` but not as a starting or ending character\n// * `.` as a separator for the textual portions of a domain name\n//\n// * http://en.wikipedia.org/wiki/Domain_name\n// * http://en.wikipedia.org/wiki/Hostname\n//\ninternals.validate = function (input) {\n\n // Before we can validate we need to take care of IDNs with unicode chars.\n var ascii = Punycode.toASCII(input);\n\n if (ascii.length < 1) {\n return 'DOMAIN_TOO_SHORT';\n }\n if (ascii.length > 255) {\n return 'DOMAIN_TOO_LONG';\n }\n\n // Check each part's length and allowed chars.\n var labels = ascii.split('.');\n var label;\n\n for (var i = 0; i < labels.length; ++i) {\n label = labels[i];\n if (!label.length) {\n return 'LABEL_TOO_SHORT';\n }\n if (label.length > 63) {\n return 'LABEL_TOO_LONG';\n }\n if (label.charAt(0) === '-') {\n return 'LABEL_STARTS_WITH_DASH';\n }\n if (label.charAt(label.length - 1) === '-') {\n return 'LABEL_ENDS_WITH_DASH';\n }\n if (!/^[a-z0-9\\-]+$/.test(label)) {\n return 'LABEL_INVALID_CHARS';\n }\n }\n};\n\n\n//\n// Public API\n//\n\n\n//\n// Parse domain.\n//\nexports.parse = function (input) {\n\n if (typeof input !== 'string') {\n throw new TypeError('Domain name must be a string.');\n }\n\n // Force domain to lowercase.\n var domain = input.slice(0).toLowerCase();\n\n // Handle FQDN.\n // TODO: Simply remove trailing dot?\n if (domain.charAt(domain.length - 1) === '.') {\n domain = domain.slice(0, domain.length - 1);\n }\n\n // Validate and sanitise input.\n var error = internals.validate(domain);\n if (error) {\n return {\n input: input,\n error: {\n message: exports.errorCodes[error],\n code: error\n }\n };\n }\n\n var parsed = {\n input: input,\n tld: null,\n sld: null,\n domain: null,\n subdomain: null,\n listed: false\n };\n\n var domainParts = domain.split('.');\n\n // Non-Internet TLD\n if (domainParts[domainParts.length - 1] === 'local') {\n return parsed;\n }\n\n var handlePunycode = function () {\n\n if (!/xn--/.test(domain)) {\n return parsed;\n }\n if (parsed.domain) {\n parsed.domain = Punycode.toASCII(parsed.domain);\n }\n if (parsed.subdomain) {\n parsed.subdomain = Punycode.toASCII(parsed.subdomain);\n }\n return parsed;\n };\n\n var rule = internals.findRule(domain);\n\n // Unlisted tld.\n if (!rule) {\n if (domainParts.length < 2) {\n return parsed;\n }\n parsed.tld = domainParts.pop();\n parsed.sld = domainParts.pop();\n parsed.domain = [parsed.sld, parsed.tld].join('.');\n if (domainParts.length) {\n parsed.subdomain = domainParts.pop();\n }\n return handlePunycode();\n }\n\n // At this point we know the public suffix is listed.\n parsed.listed = true;\n\n var tldParts = rule.suffix.split('.');\n var privateParts = domainParts.slice(0, domainParts.length - tldParts.length);\n\n if (rule.exception) {\n privateParts.push(tldParts.shift());\n }\n\n parsed.tld = tldParts.join('.');\n\n if (!privateParts.length) {\n return handlePunycode();\n }\n\n if (rule.wildcard) {\n tldParts.unshift(privateParts.pop());\n parsed.tld = tldParts.join('.');\n }\n\n if (!privateParts.length) {\n return handlePunycode();\n }\n\n parsed.sld = privateParts.pop();\n parsed.domain = [parsed.sld, parsed.tld].join('.');\n\n if (privateParts.length) {\n parsed.subdomain = privateParts.join('.');\n }\n\n return handlePunycode();\n};\n\n\n//\n// Get domain.\n//\nexports.get = function (domain) {\n\n if (!domain) {\n return null;\n }\n return exports.parse(domain).domain || null;\n};\n\n\n//\n// Check whether domain belongs to a known public suffix.\n//\nexports.isValid = function (domain) {\n\n var parsed = exports.parse(domain);\n return Boolean(parsed.domain && parsed.listed);\n};\n","//! moment.js locale configuration\n//! locale : Kannada [kn]\n//! author : Rajeev Naik : https://github.com/rajeevnaikte\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '೧',\n 2: '೨',\n 3: '೩',\n 4: '೪',\n 5: '೫',\n 6: '೬',\n 7: '೭',\n 8: '೮',\n 9: '೯',\n 0: '೦',\n },\n numberMap = {\n '೧': '1',\n '೨': '2',\n '೩': '3',\n '೪': '4',\n '೫': '5',\n '೬': '6',\n '೭': '7',\n '೮': '8',\n '೯': '9',\n '೦': '0',\n };\n\nexport default moment.defineLocale('kn', {\n months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split(\n '_'\n ),\n monthsShort: 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split(\n '_'\n ),\n weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'),\n weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm',\n LTS: 'A h:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm',\n LLLL: 'dddd, D MMMM YYYY, A h:mm',\n },\n calendar: {\n sameDay: '[ಇಂದು] LT',\n nextDay: '[ನಾಳೆ] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ನಿನ್ನೆ] LT',\n lastWeek: '[ಕೊನೆಯ] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ನಂತರ',\n past: '%s ಹಿಂದೆ',\n s: 'ಕೆಲವು ಕ್ಷಣಗಳು',\n ss: '%d ಸೆಕೆಂಡುಗಳು',\n m: 'ಒಂದು ನಿಮಿಷ',\n mm: '%d ನಿಮಿಷ',\n h: 'ಒಂದು ಗಂಟೆ',\n hh: '%d ಗಂಟೆ',\n d: 'ಒಂದು ದಿನ',\n dd: '%d ದಿನ',\n M: 'ಒಂದು ತಿಂಗಳು',\n MM: '%d ತಿಂಗಳು',\n y: 'ಒಂದು ವರ್ಷ',\n yy: '%d ವರ್ಷ',\n },\n preparse: function (string) {\n return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'ರಾತ್ರಿ') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') {\n return hour;\n } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'ಸಂಜೆ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ರಾತ್ರಿ';\n } else if (hour < 10) {\n return 'ಬೆಳಿಗ್ಗೆ';\n } else if (hour < 17) {\n return 'ಮಧ್ಯಾಹ್ನ';\n } else if (hour < 20) {\n return 'ಸಂಜೆ';\n } else {\n return 'ರಾತ್ರಿ';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(ನೇ)/,\n ordinal: function (number) {\n return number + 'ನೇ';\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Russian [ru]\n//! author : Viktorminator : https://github.com/Viktorminator\n//! author : Menelion Elensúle : https://github.com/Oire\n//! author : Коренберг Марк : https://github.com/socketpair\n\nimport moment from '../moment';\n\nfunction plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n}\nfunction relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',\n hh: 'час_часа_часов',\n dd: 'день_дня_дней',\n ww: 'неделя_недели_недель',\n MM: 'месяц_месяца_месяцев',\n yy: 'год_года_лет',\n };\n if (key === 'm') {\n return withoutSuffix ? 'минута' : 'минуту';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n}\nvar monthsParse = [\n /^янв/i,\n /^фев/i,\n /^мар/i,\n /^апр/i,\n /^ма[йя]/i,\n /^июн/i,\n /^июл/i,\n /^авг/i,\n /^сен/i,\n /^окт/i,\n /^ноя/i,\n /^дек/i,\n];\n\n// http://new.gramota.ru/spravka/rules/139-prop : § 103\n// Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637\n// CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753\nexport default moment.defineLocale('ru', {\n months: {\n format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split(\n '_'\n ),\n standalone: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split(\n '_'\n ),\n },\n monthsShort: {\n // по CLDR именно \"июл.\" и \"июн.\", но какой смысл менять букву на точку?\n format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n standalone: 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split(\n '_'\n ),\n },\n weekdays: {\n standalone: 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split(\n '_'\n ),\n format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split(\n '_'\n ),\n isFormat: /\\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/,\n },\n weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'),\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n\n // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки\n monthsRegex: /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // копия предыдущего\n monthsShortRegex: /^(январ[ья]|янв\\.?|феврал[ья]|февр?\\.?|марта?|мар\\.?|апрел[ья]|апр\\.?|ма[йя]|июн[ья]|июн\\.?|июл[ья]|июл\\.?|августа?|авг\\.?|сентябр[ья]|сент?\\.?|октябр[ья]|окт\\.?|ноябр[ья]|нояб?\\.?|декабр[ья]|дек\\.?)/i,\n\n // полные названия с падежами\n monthsStrictRegex: /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,\n\n // Выражение, которое соответствует только сокращённым формам\n monthsShortStrictRegex: /^(янв\\.|февр?\\.|мар[т.]|апр\\.|ма[яй]|июн[ья.]|июл[ья.]|авг\\.|сент?\\.|окт\\.|нояб?\\.|дек\\.)/i,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., H:mm',\n LLLL: 'dddd, D MMMM YYYY г., H:mm',\n },\n calendar: {\n sameDay: '[Сегодня, в] LT',\n nextDay: '[Завтра, в] LT',\n lastDay: '[Вчера, в] LT',\n nextWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В следующее] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В следующий] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В следующую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n lastWeek: function (now) {\n if (now.week() !== this.week()) {\n switch (this.day()) {\n case 0:\n return '[В прошлое] dddd, [в] LT';\n case 1:\n case 2:\n case 4:\n return '[В прошлый] dddd, [в] LT';\n case 3:\n case 5:\n case 6:\n return '[В прошлую] dddd, [в] LT';\n }\n } else {\n if (this.day() === 2) {\n return '[Во] dddd, [в] LT';\n } else {\n return '[В] dddd, [в] LT';\n }\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'через %s',\n past: '%s назад',\n s: 'несколько секунд',\n ss: relativeTimeWithPlural,\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: 'час',\n hh: relativeTimeWithPlural,\n d: 'день',\n dd: relativeTimeWithPlural,\n w: 'неделя',\n ww: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночи|утра|дня|вечера/i,\n isPM: function (input) {\n return /^(дня|вечера)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночи';\n } else if (hour < 12) {\n return 'утра';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечера';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(й|го|я)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n return number + '-й';\n case 'D':\n return number + '-го';\n case 'w':\n case 'W':\n return number + '-я';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : English (Australia) [en-au]\n//! author : Jared Morse : https://github.com/jarcoal\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-au', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\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}","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-account\");\n\t\t}\n\n\t\texport default Async(load);\n\t","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-device\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Spanish [es]\n//! author : Julio Napurí : https://github.com/julionc\n\nimport moment from '../moment';\n\nvar monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split(\n '_'\n ),\n monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'),\n monthsParse = [\n /^ene/i,\n /^feb/i,\n /^mar/i,\n /^abr/i,\n /^may/i,\n /^jun/i,\n /^jul/i,\n /^ago/i,\n /^sep/i,\n /^oct/i,\n /^nov/i,\n /^dic/i,\n ],\n monthsRegex = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i;\n\nexport default moment.defineLocale('es', {\n months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split(\n '_'\n ),\n monthsShort: function (m, format) {\n if (!m) {\n return monthsShortDot;\n } else if (/-MMM-/.test(format)) {\n return monthsShort[m.month()];\n } else {\n return monthsShortDot[m.month()];\n }\n },\n monthsRegex: monthsRegex,\n monthsShortRegex: monthsRegex,\n monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,\n monthsShortStrictRegex: /^(ene\\.?|feb\\.?|mar\\.?|abr\\.?|may\\.?|jun\\.?|jul\\.?|ago\\.?|sep\\.?|oct\\.?|nov\\.?|dic\\.?)/i,\n monthsParse: monthsParse,\n longMonthsParse: monthsParse,\n shortMonthsParse: monthsParse,\n weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'),\n weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'),\n weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D [de] MMMM [de] YYYY',\n LLL: 'D [de] MMMM [de] YYYY H:mm',\n LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm',\n },\n calendar: {\n sameDay: function () {\n return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextDay: function () {\n return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n nextWeek: function () {\n return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastDay: function () {\n return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT';\n },\n lastWeek: function () {\n return (\n '[el] dddd [pasado a la' +\n (this.hours() !== 1 ? 's' : '') +\n '] LT'\n );\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'en %s',\n past: 'hace %s',\n s: 'unos segundos',\n ss: '%d segundos',\n m: 'un minuto',\n mm: '%d minutos',\n h: 'una hora',\n hh: '%d horas',\n d: 'un día',\n dd: '%d días',\n w: 'una semana',\n ww: '%d semanas',\n M: 'un mes',\n MM: '%d meses',\n y: 'un año',\n yy: '%d años',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n invalidDate: 'Fecha inválida',\n});\n","//! moment.js locale configuration\n//! locale : Filipino [fil]\n//! author : Dan Hagman : https://github.com/hagmandan\n//! author : Matthew Co : https://github.com/matthewdeeco\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('fil', {\n months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split(\n '_'\n ),\n monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split(\n '_'\n ),\n weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'MM/D/YYYY',\n LL: 'MMMM D, YYYY',\n LLL: 'MMMM D, YYYY HH:mm',\n LLLL: 'dddd, MMMM DD, YYYY HH:mm',\n },\n calendar: {\n sameDay: 'LT [ngayong araw]',\n nextDay: '[Bukas ng] LT',\n nextWeek: 'LT [sa susunod na] dddd',\n lastDay: 'LT [kahapon]',\n lastWeek: 'LT [noong nakaraang] dddd',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'sa loob ng %s',\n past: '%s ang nakalipas',\n s: 'ilang segundo',\n ss: '%d segundo',\n m: 'isang minuto',\n mm: '%d minuto',\n h: 'isang oras',\n hh: '%d oras',\n d: 'isang araw',\n dd: '%d araw',\n M: 'isang buwan',\n MM: '%d buwan',\n y: 'isang taon',\n yy: '%d taon',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}/,\n ordinal: function (number) {\n return number;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Burmese [my]\n//! author : Squar team, mysquar.com\n//! author : David Rossellat : https://github.com/gholadr\n//! author : Tin Aung Lin : https://github.com/thanyawzinmin\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '၁',\n 2: '၂',\n 3: '၃',\n 4: '၄',\n 5: '၅',\n 6: '၆',\n 7: '၇',\n 8: '၈',\n 9: '၉',\n 0: '၀',\n },\n numberMap = {\n '၁': '1',\n '၂': '2',\n '၃': '3',\n '၄': '4',\n '၅': '5',\n '၆': '6',\n '၇': '7',\n '၈': '8',\n '၉': '9',\n '၀': '0',\n };\n\nexport default moment.defineLocale('my', {\n months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split(\n '_'\n ),\n monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),\n weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split(\n '_'\n ),\n weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),\n\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[ယနေ.] LT [မှာ]',\n nextDay: '[မနက်ဖြန်] LT [မှာ]',\n nextWeek: 'dddd LT [မှာ]',\n lastDay: '[မနေ.က] LT [မှာ]',\n lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'လာမည့် %s မှာ',\n past: 'လွန်ခဲ့သော %s က',\n s: 'စက္ကန်.အနည်းငယ်',\n ss: '%d စက္ကန့်',\n m: 'တစ်မိနစ်',\n mm: '%d မိနစ်',\n h: 'တစ်နာရီ',\n hh: '%d နာရီ',\n d: 'တစ်ရက်',\n dd: '%d ရက်',\n M: 'တစ်လ',\n MM: '%d လ',\n y: 'တစ်နှစ်',\n yy: '%d နှစ်',\n },\n preparse: function (string) {\n return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : English (Ireland) [en-ie]\n//! author : Chris Cartlidge : https://github.com/chriscartlidge\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-ie', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Maori [mi]\n//! author : John Corrigan : https://github.com/johnideal\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('mi', {\n months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split(\n '_'\n ),\n monthsShort: 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split(\n '_'\n ),\n monthsRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,3}/i,\n monthsShortStrictRegex: /(?:['a-z\\u0101\\u014D\\u016B]+\\-?){1,2}/i,\n weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'),\n weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [i] HH:mm',\n LLLL: 'dddd, D MMMM YYYY [i] HH:mm',\n },\n calendar: {\n sameDay: '[i teie mahana, i] LT',\n nextDay: '[apopo i] LT',\n nextWeek: 'dddd [i] LT',\n lastDay: '[inanahi i] LT',\n lastWeek: 'dddd [whakamutunga i] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'i roto i %s',\n past: '%s i mua',\n s: 'te hēkona ruarua',\n ss: '%d hēkona',\n m: 'he meneti',\n mm: '%d meneti',\n h: 'te haora',\n hh: '%d haora',\n d: 'he ra',\n dd: '%d ra',\n M: 'he marama',\n MM: '%d marama',\n y: 'he tau',\n yy: '%d tau',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : English (Singapore) [en-sg]\n//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-sg', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : German (Switzerland) [de-ch]\n//! author : sschueller : https://github.com/sschueller\n\n// based on: https://www.bk.admin.ch/dokumentation/sprachen/04915/05016/index.html?lang=de#\n\nimport moment from '../moment';\n\nfunction processRelativeTime(number, withoutSuffix, key, isFuture) {\n var format = {\n m: ['eine Minute', 'einer Minute'],\n h: ['eine Stunde', 'einer Stunde'],\n d: ['ein Tag', 'einem Tag'],\n dd: [number + ' Tage', number + ' Tagen'],\n w: ['eine Woche', 'einer Woche'],\n M: ['ein Monat', 'einem Monat'],\n MM: [number + ' Monate', number + ' Monaten'],\n y: ['ein Jahr', 'einem Jahr'],\n yy: [number + ' Jahre', number + ' Jahren'],\n };\n return withoutSuffix ? format[key][0] : format[key][1];\n}\n\nexport default moment.defineLocale('de-ch', {\n months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split(\n '_'\n ),\n monthsShort: 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split(\n '_'\n ),\n weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd, D. MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[heute um] LT [Uhr]',\n sameElse: 'L',\n nextDay: '[morgen um] LT [Uhr]',\n nextWeek: 'dddd [um] LT [Uhr]',\n lastDay: '[gestern um] LT [Uhr]',\n lastWeek: '[letzten] dddd [um] LT [Uhr]',\n },\n relativeTime: {\n future: 'in %s',\n past: 'vor %s',\n s: 'ein paar Sekunden',\n ss: '%d Sekunden',\n m: processRelativeTime,\n mm: '%d Minuten',\n h: processRelativeTime,\n hh: '%d Stunden',\n d: processRelativeTime,\n dd: processRelativeTime,\n w: processRelativeTime,\n ww: '%d Wochen',\n M: processRelativeTime,\n MM: processRelativeTime,\n y: processRelativeTime,\n yy: processRelativeTime,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","// We need to centralize the zIndex definitions as they work\n// like global values in the browser.\nvar zIndex = {\n mobileStepper: 1000,\n speedDial: 1050,\n appBar: 1100,\n drawer: 1200,\n modal: 1300,\n snackbar: 1400,\n tooltip: 1500\n};\nexport default zIndex;","import {\n InlineFragmentNode,\n FragmentDefinitionNode,\n SelectionSetNode,\n FieldNode,\n} from 'graphql';\n\nimport { KeyTrie } from 'optimism';\nimport { invariant, InvariantError } from 'ts-invariant';\n\nimport {\n FragmentMap,\n getFragmentFromSelection,\n isField,\n getTypenameFromResult,\n storeKeyNameFromField,\n StoreValue,\n StoreObject,\n argumentsObjectFromField,\n Reference,\n isReference,\n getStoreKeyName,\n canUseWeakMap,\n compact,\n} from '../../utilities';\nimport { IdGetter, ReadMergeModifyContext, MergeInfo } from \"./types\";\nimport {\n hasOwn,\n fieldNameFromStoreName,\n storeValueIsStoreObject,\n selectionSetMatchesResult,\n TypeOrFieldNameRegExp,\n} from './helpers';\nimport { cacheSlot } from './reactiveVars';\nimport { InMemoryCache } from './inMemoryCache';\nimport {\n SafeReadonly,\n FieldSpecifier,\n ToReferenceFunction,\n ReadFieldFunction,\n ReadFieldOptions,\n CanReadFunction,\n} from '../core/types/common';\nimport { FieldValueGetter } from './entityStore';\n\nexport type TypePolicies = {\n [__typename: string]: TypePolicy;\n}\n\n// TypeScript 3.7 will allow recursive type aliases, so this should work:\n// type KeySpecifier = (string | KeySpecifier)[]\ntype KeySpecifier = (string | any[])[];\n\ntype KeyFieldsContext = {\n typename?: string;\n selectionSet?: SelectionSetNode;\n fragmentMap?: FragmentMap;\n // May be set by the KeyFieldsFunction to report fields that were involved\n // in computing the ID. Never passed in by the caller.\n keyObject?: Record;\n};\n\nexport type KeyFieldsFunction = (\n object: Readonly,\n context: KeyFieldsContext,\n) => KeySpecifier | ReturnType;\n\n// TODO Should TypePolicy be a generic type, with a TObject or TEntity\n// type parameter?\nexport type TypePolicy = {\n // Allows defining the primary key fields for this type, either using an\n // array of field names or a function that returns an arbitrary string.\n keyFields?: KeySpecifier | KeyFieldsFunction | false;\n\n // Allows defining a merge function (or merge:true/false shorthand) to\n // be used for merging objects of this type wherever they appear, unless\n // the parent field also defines a merge function/boolean (that is,\n // parent field merge functions take precedence over type policy merge\n // functions). In many cases, defining merge:true for a given type\n // policy can save you from specifying merge:true for all the field\n // policies where that type might be encountered.\n merge?: FieldMergeFunction | boolean;\n\n // In the rare event that your schema happens to use a different\n // __typename for the root Query, Mutation, and/or Schema types, you can\n // express your deviant preferences by enabling one of these options.\n queryType?: true,\n mutationType?: true,\n subscriptionType?: true,\n\n fields?: {\n [fieldName: string]:\n | FieldPolicy\n | FieldReadFunction;\n }\n};\n\nexport type KeyArgsFunction = (\n args: Record | null,\n context: {\n typename: string;\n fieldName: string;\n field: FieldNode | null;\n variables?: Record;\n },\n) => KeySpecifier | ReturnType;\n\nexport type FieldPolicy<\n // The internal representation used to store the field's data in the\n // cache. Must be JSON-serializable if you plan to serialize the result\n // of cache.extract() using JSON.\n TExisting = any,\n // The type of the incoming parameter passed to the merge function,\n // typically matching the GraphQL response format, but with Reference\n // objects substituted for any identifiable child objects. Often the\n // same as TExisting, but not necessarily.\n TIncoming = TExisting,\n // The type that the read function actually returns, using TExisting\n // data and options.args as input. Usually the same as TIncoming.\n TReadResult = TIncoming,\n> = {\n keyArgs?: KeySpecifier | KeyArgsFunction | false;\n read?: FieldReadFunction;\n merge?: FieldMergeFunction | boolean;\n};\n\nexport type StorageType = Record;\n\nfunction argsFromFieldSpecifier(spec: FieldSpecifier) {\n return spec.args !== void 0 ? spec.args :\n spec.field ? argumentsObjectFromField(spec.field, spec.variables) : null;\n}\n\nexport interface FieldFunctionOptions<\n TArgs = Record,\n TVars = Record,\n> {\n args: TArgs | null;\n\n // The name of the field, equal to options.field.name.value when\n // options.field is available. Useful if you reuse the same function for\n // multiple fields, and you need to know which field you're currently\n // processing. Always a string, even when options.field is null.\n fieldName: string;\n\n // The full field key used internally, including serialized key arguments.\n storeFieldName: string;\n\n // The FieldNode object used to read this field. Useful if you need to\n // know about other attributes of the field, such as its directives. This\n // option will be null when a string was passed to options.readField.\n field: FieldNode | null;\n\n variables?: TVars;\n\n // Utilities for dealing with { __ref } objects.\n isReference: typeof isReference;\n toReference: ToReferenceFunction;\n\n // A handy place to put field-specific data that you want to survive\n // across multiple read function calls. Useful for field-level caching,\n // if your read function does any expensive work.\n storage: StorageType;\n\n cache: InMemoryCache;\n\n // Helper function for reading other fields within the current object.\n // If a foreign object or reference is provided, the field will be read\n // from that object instead of the current object, so this function can\n // be used (together with isReference) to examine the cache outside the\n // current object. If a FieldNode is passed instead of a string, and\n // that FieldNode has arguments, the same options.variables will be used\n // to compute the argument values. Note that this function will invoke\n // custom read functions for other fields, if defined. Always returns\n // immutable data (enforced with Object.freeze in development).\n readField: ReadFieldFunction;\n\n // Returns true for non-normalized StoreObjects and non-dangling\n // References, indicating that readField(name, objOrRef) has a chance of\n // working. Useful for filtering out dangling references from lists.\n canRead: CanReadFunction;\n\n // Instead of just merging objects with { ...existing, ...incoming }, this\n // helper function can be used to merge objects in a way that respects any\n // custom merge functions defined for their fields.\n mergeObjects: MergeObjectsFunction;\n}\n\ntype MergeObjectsFunction = (\n existing: T,\n incoming: T,\n) => T;\n\nexport type FieldReadFunction = (\n // When reading a field, one often needs to know about any existing\n // value stored for that field. If the field is read before any value\n // has been written to the cache, this existing parameter will be\n // undefined, which makes it easy to use a default parameter expression\n // to supply the initial value. This parameter is positional (rather\n // than one of the named options) because that makes it possible for the\n // developer to annotate it with a type, without also having to provide\n // a whole new type for the options object.\n existing: SafeReadonly | undefined,\n options: FieldFunctionOptions,\n) => TReadResult | undefined;\n\nexport type FieldMergeFunction = (\n existing: SafeReadonly | undefined,\n // The incoming parameter needs to be positional as well, for the same\n // reasons discussed in FieldReadFunction above.\n incoming: SafeReadonly,\n options: FieldFunctionOptions,\n) => SafeReadonly;\n\nexport const defaultDataIdFromObject = (\n { __typename, id, _id }: Readonly,\n context?: KeyFieldsContext,\n) => {\n if (typeof __typename === \"string\") {\n if (context) {\n context.keyObject =\n id !== void 0 ? { id } :\n _id !== void 0 ? { _id } :\n void 0;\n }\n // If there is no object.id, fall back to object._id.\n if (id === void 0) id = _id;\n if (id !== void 0) {\n return `${__typename}:${(\n typeof id === \"number\" ||\n typeof id === \"string\"\n ) ? id : JSON.stringify(id)}`;\n }\n }\n};\n\nconst nullKeyFieldsFn: KeyFieldsFunction = () => void 0;\nconst simpleKeyArgsFn: KeyArgsFunction = (_args, context) => context.fieldName;\n\n// These merge functions can be selected by specifying merge:true or\n// merge:false in a field policy.\nconst mergeTrueFn: FieldMergeFunction =\n (existing, incoming, { mergeObjects }) => mergeObjects(existing, incoming);\nconst mergeFalseFn: FieldMergeFunction = (_, incoming) => incoming;\n\nexport type PossibleTypesMap = {\n [supertype: string]: string[];\n};\n\nexport class Policies {\n private typePolicies: {\n [__typename: string]: {\n keyFn?: KeyFieldsFunction;\n merge?: FieldMergeFunction;\n fields: {\n [fieldName: string]: {\n keyFn?: KeyArgsFunction;\n read?: FieldReadFunction;\n merge?: FieldMergeFunction;\n };\n };\n };\n } = Object.create(null);\n\n private toBeAdded: {\n [__typename: string]: TypePolicy[];\n } = Object.create(null);\n\n // Map from subtype names to sets of supertype names. Note that this\n // representation inverts the structure of possibleTypes (whose keys are\n // supertypes and whose values are arrays of subtypes) because it tends\n // to be much more efficient to search upwards than downwards.\n private supertypeMap = new Map>();\n\n // Any fuzzy subtypes specified by possibleTypes will be converted to\n // RegExp objects and recorded here. Every key of this map can also be\n // found in supertypeMap. In many cases this Map will be empty, which\n // means no fuzzy subtype checking will happen in fragmentMatches.\n private fuzzySubtypes = new Map();\n\n public readonly cache: InMemoryCache;\n\n public readonly rootIdsByTypename: Record = Object.create(null);\n public readonly rootTypenamesById: Record = Object.create(null);\n\n public readonly usingPossibleTypes = false;\n\n constructor(private config: {\n cache: InMemoryCache;\n dataIdFromObject?: KeyFieldsFunction;\n possibleTypes?: PossibleTypesMap;\n typePolicies?: TypePolicies;\n }) {\n this.config = {\n dataIdFromObject: defaultDataIdFromObject,\n ...config,\n };\n\n this.cache = this.config.cache;\n\n this.setRootTypename(\"Query\");\n this.setRootTypename(\"Mutation\");\n this.setRootTypename(\"Subscription\");\n\n if (config.possibleTypes) {\n this.addPossibleTypes(config.possibleTypes);\n }\n\n if (config.typePolicies) {\n this.addTypePolicies(config.typePolicies);\n }\n }\n\n public identify(\n object: StoreObject,\n selectionSet?: SelectionSetNode,\n fragmentMap?: FragmentMap,\n ): [string?, StoreObject?] {\n // TODO Use an AliasMap here?\n const typename = selectionSet && fragmentMap\n ? getTypenameFromResult(object, selectionSet, fragmentMap)\n : object.__typename;\n\n // It should be possible to write root Query fields with\n // writeFragment, using { __typename: \"Query\", ... } as the data, but\n // it does not make sense to allow the same identification behavior\n // for the Mutation and Subscription types, since application code\n // should never be writing directly to (or reading directly from)\n // those root objects.\n if (typename === this.rootTypenamesById.ROOT_QUERY) {\n return [\"ROOT_QUERY\"];\n }\n\n const context: KeyFieldsContext = {\n typename,\n selectionSet,\n fragmentMap,\n };\n\n let id: string | undefined;\n\n const policy = typename && this.getTypePolicy(typename);\n let keyFn = policy && policy.keyFn || this.config.dataIdFromObject;\n while (keyFn) {\n const specifierOrId = keyFn(object, context);\n if (Array.isArray(specifierOrId)) {\n keyFn = keyFieldsFnFromSpecifier(specifierOrId);\n } else {\n id = specifierOrId;\n break;\n }\n }\n\n id = id && String(id);\n\n return context.keyObject ? [id, context.keyObject] : [id];\n }\n\n public addTypePolicies(typePolicies: TypePolicies) {\n Object.keys(typePolicies).forEach(typename => {\n const {\n queryType,\n mutationType,\n subscriptionType,\n ...incoming\n } = typePolicies[typename];\n\n // Though {query,mutation,subscription}Type configurations are rare,\n // it's important to call setRootTypename as early as possible,\n // since these configurations should apply consistently for the\n // entire lifetime of the cache. Also, since only one __typename can\n // qualify as one of these root types, these three properties cannot\n // be inherited, unlike the rest of the incoming properties. That\n // restriction is convenient, because the purpose of this.toBeAdded\n // is to delay the processing of type/field policies until the first\n // time they're used, allowing policies to be added in any order as\n // long as all relevant policies (including policies for supertypes)\n // have been added by the time a given policy is used for the first\n // time. In other words, since inheritance doesn't matter for these\n // properties, there's also no need to delay their processing using\n // the this.toBeAdded queue.\n if (queryType) this.setRootTypename(\"Query\", typename);\n if (mutationType) this.setRootTypename(\"Mutation\", typename);\n if (subscriptionType) this.setRootTypename(\"Subscription\", typename);\n\n if (hasOwn.call(this.toBeAdded, typename)) {\n this.toBeAdded[typename].push(incoming);\n } else {\n this.toBeAdded[typename] = [incoming];\n }\n });\n }\n\n private updateTypePolicy(typename: string, incoming: TypePolicy) {\n const existing = this.getTypePolicy(typename);\n const { keyFields, fields } = incoming;\n\n function setMerge(\n existing: { merge?: FieldMergeFunction | boolean; },\n merge?: FieldMergeFunction | boolean,\n ) {\n existing.merge =\n typeof merge === \"function\" ? merge :\n // Pass merge:true as a shorthand for a merge implementation\n // that returns options.mergeObjects(existing, incoming).\n merge === true ? mergeTrueFn :\n // Pass merge:false to make incoming always replace existing\n // without any warnings about data clobbering.\n merge === false ? mergeFalseFn :\n existing.merge;\n }\n\n // Type policies can define merge functions, as an alternative to\n // using field policies to merge child objects.\n setMerge(existing, incoming.merge);\n\n existing.keyFn =\n // Pass false to disable normalization for this typename.\n keyFields === false ? nullKeyFieldsFn :\n // Pass an array of strings to use those fields to compute a\n // composite ID for objects of this typename.\n Array.isArray(keyFields) ? keyFieldsFnFromSpecifier(keyFields) :\n // Pass a function to take full control over identification.\n typeof keyFields === \"function\" ? keyFields :\n // Leave existing.keyFn unchanged if above cases fail.\n existing.keyFn;\n\n if (fields) {\n Object.keys(fields).forEach(fieldName => {\n const existing = this.getFieldPolicy(typename, fieldName, true)!;\n const incoming = fields[fieldName];\n\n if (typeof incoming === \"function\") {\n existing.read = incoming;\n } else {\n const { keyArgs, read, merge } = incoming;\n\n existing.keyFn =\n // Pass false to disable argument-based differentiation of\n // field identities.\n keyArgs === false ? simpleKeyArgsFn :\n // Pass an array of strings to use named arguments to\n // compute a composite identity for the field.\n Array.isArray(keyArgs) ? keyArgsFnFromSpecifier(keyArgs) :\n // Pass a function to take full control over field identity.\n typeof keyArgs === \"function\" ? keyArgs :\n // Leave existing.keyFn unchanged if above cases fail.\n existing.keyFn;\n\n if (typeof read === \"function\") {\n existing.read = read;\n }\n\n setMerge(existing, merge);\n }\n\n if (existing.read && existing.merge) {\n // If we have both a read and a merge function, assume\n // keyArgs:false, because read and merge together can take\n // responsibility for interpreting arguments in and out. This\n // default assumption can always be overridden by specifying\n // keyArgs explicitly in the FieldPolicy.\n existing.keyFn = existing.keyFn || simpleKeyArgsFn;\n }\n });\n }\n }\n\n private setRootTypename(\n which: \"Query\" | \"Mutation\" | \"Subscription\",\n typename: string = which,\n ) {\n const rootId = \"ROOT_\" + which.toUpperCase();\n const old = this.rootTypenamesById[rootId];\n if (typename !== old) {\n invariant(!old || old === which, `Cannot change root ${which} __typename more than once`);\n // First, delete any old __typename associated with this rootId from\n // rootIdsByTypename.\n if (old) delete this.rootIdsByTypename[old];\n // Now make this the only __typename that maps to this rootId.\n this.rootIdsByTypename[typename] = rootId;\n // Finally, update the __typename associated with this rootId.\n this.rootTypenamesById[rootId] = typename;\n }\n }\n\n public addPossibleTypes(possibleTypes: PossibleTypesMap) {\n (this.usingPossibleTypes as boolean) = true;\n Object.keys(possibleTypes).forEach(supertype => {\n // Make sure all types have an entry in this.supertypeMap, even if\n // their supertype set is empty, so we can return false immediately\n // from policies.fragmentMatches for unknown supertypes.\n this.getSupertypeSet(supertype, true);\n\n possibleTypes[supertype].forEach(subtype => {\n this.getSupertypeSet(subtype, true)!.add(supertype);\n const match = subtype.match(TypeOrFieldNameRegExp);\n if (!match || match[0] !== subtype) {\n // TODO Don't interpret just any invalid typename as a RegExp.\n this.fuzzySubtypes.set(subtype, new RegExp(subtype));\n }\n });\n });\n }\n\n private getTypePolicy(typename: string): Policies[\"typePolicies\"][string] {\n if (!hasOwn.call(this.typePolicies, typename)) {\n const policy: Policies[\"typePolicies\"][string] =\n this.typePolicies[typename] = Object.create(null);\n policy.fields = Object.create(null);\n\n // When the TypePolicy for typename is first accessed, instead of\n // starting with an empty policy object, inherit any properties or\n // fields from the type policies of the supertypes of typename.\n //\n // Any properties or fields defined explicitly within the TypePolicy\n // for typename will take precedence, and if there are multiple\n // supertypes, the properties of policies whose types were added\n // later via addPossibleTypes will take precedence over those of\n // earlier supertypes. TODO Perhaps we should warn about these\n // conflicts in development, and recommend defining the property\n // explicitly in the subtype policy?\n //\n // Field policy inheritance is atomic/shallow: you can't inherit a\n // field policy and then override just its read function, since read\n // and merge functions often need to cooperate, so changing only one\n // of them would be a recipe for inconsistency.\n //\n // Once the TypePolicy for typename has been accessed, its\n // properties can still be updated directly using addTypePolicies,\n // but future changes to supertype policies will not be reflected in\n // this policy, because this code runs at most once per typename.\n const supertypes = this.supertypeMap.get(typename);\n if (supertypes && supertypes.size) {\n supertypes.forEach(supertype => {\n const { fields, ...rest } = this.getTypePolicy(supertype);\n Object.assign(policy, rest);\n Object.assign(policy.fields, fields);\n });\n }\n }\n\n const inbox = this.toBeAdded[typename];\n if (inbox && inbox.length) {\n this.updateTypePolicy(typename, compact(...inbox.splice(0)));\n }\n\n return this.typePolicies[typename];\n }\n\n private getFieldPolicy(\n typename: string | undefined,\n fieldName: string,\n createIfMissing: boolean,\n ): {\n keyFn?: KeyArgsFunction;\n read?: FieldReadFunction;\n merge?: FieldMergeFunction;\n } | undefined {\n if (typename) {\n const fieldPolicies = this.getTypePolicy(typename).fields;\n return fieldPolicies[fieldName] || (\n createIfMissing && (fieldPolicies[fieldName] = Object.create(null)));\n }\n }\n\n private getSupertypeSet(\n subtype: string,\n createIfMissing: boolean,\n ): Set | undefined {\n let supertypeSet = this.supertypeMap.get(subtype);\n if (!supertypeSet && createIfMissing) {\n this.supertypeMap.set(subtype, supertypeSet = new Set());\n }\n return supertypeSet;\n }\n\n public fragmentMatches(\n fragment: InlineFragmentNode | FragmentDefinitionNode,\n typename: string | undefined,\n result?: Record,\n variables?: Record,\n ): boolean {\n if (!fragment.typeCondition) return true;\n\n // If the fragment has a type condition but the object we're matching\n // against does not have a __typename, the fragment cannot match.\n if (!typename) return false;\n\n const supertype = fragment.typeCondition.name.value;\n // Common case: fragment type condition and __typename are the same.\n if (typename === supertype) return true;\n\n if (this.usingPossibleTypes &&\n this.supertypeMap.has(supertype)) {\n const typenameSupertypeSet = this.getSupertypeSet(typename, true)!;\n const workQueue = [typenameSupertypeSet];\n const maybeEnqueue = (subtype: string) => {\n const supertypeSet = this.getSupertypeSet(subtype, false);\n if (supertypeSet &&\n supertypeSet.size &&\n workQueue.indexOf(supertypeSet) < 0) {\n workQueue.push(supertypeSet);\n }\n };\n\n // We need to check fuzzy subtypes only if we encountered fuzzy\n // subtype strings in addPossibleTypes, and only while writing to\n // the cache, since that's when selectionSetMatchesResult gives a\n // strong signal of fragment matching. The StoreReader class calls\n // policies.fragmentMatches without passing a result object, so\n // needToCheckFuzzySubtypes is always false while reading.\n let needToCheckFuzzySubtypes = !!(result && this.fuzzySubtypes.size);\n let checkingFuzzySubtypes = false;\n\n // It's important to keep evaluating workQueue.length each time through\n // the loop, because the queue can grow while we're iterating over it.\n for (let i = 0; i < workQueue.length; ++i) {\n const supertypeSet = workQueue[i];\n\n if (supertypeSet.has(supertype)) {\n if (!typenameSupertypeSet.has(supertype)) {\n if (checkingFuzzySubtypes) {\n invariant.warn(`Inferring subtype ${typename} of supertype ${supertype}`);\n }\n // Record positive results for faster future lookup.\n // Unfortunately, we cannot safely cache negative results,\n // because new possibleTypes data could always be added to the\n // Policies class.\n typenameSupertypeSet.add(supertype);\n }\n return true;\n }\n\n supertypeSet.forEach(maybeEnqueue);\n\n if (needToCheckFuzzySubtypes &&\n // Start checking fuzzy subtypes only after exhausting all\n // non-fuzzy subtypes (after the final iteration of the loop).\n i === workQueue.length - 1 &&\n // We could wait to compare fragment.selectionSet to result\n // after we verify the supertype, but this check is often less\n // expensive than that search, and we will have to do the\n // comparison anyway whenever we find a potential match.\n selectionSetMatchesResult(fragment.selectionSet, result!, variables)) {\n // We don't always need to check fuzzy subtypes (if no result\n // was provided, or !this.fuzzySubtypes.size), but, when we do,\n // we only want to check them once.\n needToCheckFuzzySubtypes = false;\n checkingFuzzySubtypes = true;\n\n // If we find any fuzzy subtypes that match typename, extend the\n // workQueue to search through the supertypes of those fuzzy\n // subtypes. Otherwise the for-loop will terminate and we'll\n // return false below.\n this.fuzzySubtypes.forEach((regExp, fuzzyString) => {\n const match = typename.match(regExp);\n if (match && match[0] === typename) {\n maybeEnqueue(fuzzyString);\n }\n });\n }\n }\n }\n\n return false;\n }\n\n public hasKeyArgs(typename: string | undefined, fieldName: string) {\n const policy = this.getFieldPolicy(typename, fieldName, false);\n return !!(policy && policy.keyFn);\n }\n\n public getStoreFieldName(fieldSpec: FieldSpecifier): string {\n const { typename, fieldName } = fieldSpec;\n const policy = this.getFieldPolicy(typename, fieldName, false);\n let storeFieldName: string | undefined;\n\n let keyFn = policy && policy.keyFn;\n if (keyFn && typename) {\n const context: Parameters[1] = {\n typename,\n fieldName,\n field: fieldSpec.field || null,\n variables: fieldSpec.variables,\n };\n const args = argsFromFieldSpecifier(fieldSpec);\n while (keyFn) {\n const specifierOrString = keyFn(args, context);\n if (Array.isArray(specifierOrString)) {\n keyFn = keyArgsFnFromSpecifier(specifierOrString);\n } else {\n // If the custom keyFn returns a falsy value, fall back to\n // fieldName instead.\n storeFieldName = specifierOrString || fieldName;\n break;\n }\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\n // Make sure custom field names start with the actual field.name.value\n // of the field, so we can always figure out which properties of a\n // StoreObject correspond to which original field names.\n return fieldName === fieldNameFromStoreName(storeFieldName)\n ? storeFieldName\n : fieldName + \":\" + storeFieldName;\n }\n\n public readField(\n options: ReadFieldOptions,\n context: ReadMergeModifyContext,\n ): SafeReadonly | undefined {\n const objectOrReference = options.from;\n if (!objectOrReference) return;\n\n const nameOrField = options.field || options.fieldName;\n if (!nameOrField) return;\n\n if (options.typename === void 0) {\n const typename = context.store.getFieldValue(objectOrReference, \"__typename\");\n if (typename) options.typename = typename;\n }\n\n const storeFieldName = this.getStoreFieldName(options);\n const fieldName = fieldNameFromStoreName(storeFieldName);\n const existing = context.store.getFieldValue(objectOrReference, storeFieldName);\n const policy = this.getFieldPolicy(options.typename, fieldName, false);\n const read = policy && policy.read;\n\n if (read) {\n const readOptions = makeFieldFunctionOptions(\n this,\n objectOrReference,\n options,\n context,\n context.store.getStorage(\n isReference(objectOrReference)\n ? objectOrReference.__ref\n : objectOrReference,\n storeFieldName,\n ),\n );\n\n // Call read(existing, readOptions) with cacheSlot holding this.cache.\n return cacheSlot.withValue(\n this.cache,\n read,\n [existing, readOptions],\n ) as SafeReadonly;\n }\n\n return existing;\n }\n\n public getMergeFunction(\n parentTypename: string | undefined,\n fieldName: string,\n childTypename: string | undefined,\n ): FieldMergeFunction | undefined {\n let policy:\n | Policies[\"typePolicies\"][string]\n | Policies[\"typePolicies\"][string][\"fields\"][string]\n | undefined =\n this.getFieldPolicy(parentTypename, fieldName, false);\n let merge = policy && policy.merge;\n if (!merge && childTypename) {\n policy = this.getTypePolicy(childTypename);\n merge = policy && policy.merge;\n }\n return merge;\n }\n\n public runMergeFunction(\n existing: StoreValue,\n incoming: StoreValue,\n { field, typename, merge }: MergeInfo,\n context: ReadMergeModifyContext,\n storage?: StorageType,\n ) {\n if (merge === mergeTrueFn) {\n // Instead of going to the trouble of creating a full\n // FieldFunctionOptions object and calling mergeTrueFn, we can\n // simply call mergeObjects, as mergeTrueFn would.\n return makeMergeObjectsFunction(\n context.store.getFieldValue\n )(existing as StoreObject,\n incoming as StoreObject);\n }\n\n if (merge === mergeFalseFn) {\n // Likewise for mergeFalseFn, whose implementation is even simpler.\n return incoming;\n }\n\n return merge(existing, incoming, makeFieldFunctionOptions(\n this,\n // Unlike options.readField for read functions, we do not fall\n // back to the current object if no foreignObjOrRef is provided,\n // because it's not clear what the current object should be for\n // merge functions: the (possibly undefined) existing object, or\n // the incoming object? If you think your merge function needs\n // to read sibling fields in order to produce a new value for\n // the current field, you might want to rethink your strategy,\n // because that's a recipe for making merge behavior sensitive\n // to the order in which fields are written into the cache.\n // However, readField(name, ref) is useful for merge functions\n // that need to deduplicate child objects and references.\n void 0,\n { typename,\n fieldName: field.name.value,\n field,\n variables: context.variables },\n context,\n storage || Object.create(null),\n ));\n }\n}\n\nfunction makeFieldFunctionOptions(\n policies: Policies,\n objectOrReference: StoreObject | Reference | undefined,\n fieldSpec: FieldSpecifier,\n context: ReadMergeModifyContext,\n storage: StorageType,\n): FieldFunctionOptions {\n const storeFieldName = policies.getStoreFieldName(fieldSpec);\n const fieldName = fieldNameFromStoreName(storeFieldName);\n const variables = fieldSpec.variables || context.variables;\n const { getFieldValue, toReference, canRead } = context.store;\n\n return {\n args: argsFromFieldSpecifier(fieldSpec),\n field: fieldSpec.field || null,\n fieldName,\n storeFieldName,\n variables,\n isReference,\n toReference,\n storage,\n cache: policies.cache,\n canRead,\n\n readField(\n fieldNameOrOptions: string | ReadFieldOptions,\n from?: StoreObject | Reference,\n ) {\n const options: ReadFieldOptions =\n typeof fieldNameOrOptions === \"string\" ? {\n fieldName: fieldNameOrOptions,\n from,\n } : { ...fieldNameOrOptions };\n\n if (void 0 === options.from) {\n options.from = objectOrReference;\n }\n\n if (void 0 === options.variables) {\n options.variables = variables;\n }\n\n return policies.readField(options, context);\n },\n\n mergeObjects: makeMergeObjectsFunction(getFieldValue),\n };\n}\n\nfunction makeMergeObjectsFunction(\n getFieldValue: FieldValueGetter,\n): MergeObjectsFunction {\n return function mergeObjects(existing, incoming) {\n if (Array.isArray(existing) || Array.isArray(incoming)) {\n throw new InvariantError(\"Cannot automatically merge arrays\");\n }\n\n // These dynamic checks are necessary because the parameters of a\n // custom merge function can easily have the any type, so the type\n // system cannot always enforce the StoreObject | Reference parameter\n // types of options.mergeObjects.\n if (existing && typeof existing === \"object\" &&\n incoming && typeof incoming === \"object\") {\n const eType = getFieldValue(existing, \"__typename\");\n const iType = getFieldValue(incoming, \"__typename\");\n const typesDiffer = eType && iType && eType !== iType;\n\n if (typesDiffer ||\n !storeValueIsStoreObject(existing) ||\n !storeValueIsStoreObject(incoming)) {\n return incoming;\n }\n\n return { ...existing, ...incoming };\n }\n\n return incoming;\n };\n}\n\nfunction keyArgsFnFromSpecifier(\n specifier: KeySpecifier,\n): KeyArgsFunction {\n return (args, context) => {\n return args ? `${context.fieldName}:${\n JSON.stringify(computeKeyObject(args, specifier, false))\n }` : context.fieldName;\n };\n}\n\nfunction keyFieldsFnFromSpecifier(\n specifier: KeySpecifier,\n): KeyFieldsFunction {\n const trie = new KeyTrie<{\n aliasMap?: AliasMap;\n }>(canUseWeakMap);\n\n return (object, context) => {\n let aliasMap: AliasMap | undefined;\n if (context.selectionSet && context.fragmentMap) {\n const info = trie.lookupArray([\n context.selectionSet,\n context.fragmentMap,\n ]);\n aliasMap = info.aliasMap || (\n info.aliasMap = makeAliasMap(context.selectionSet, context.fragmentMap)\n );\n }\n\n const keyObject = context.keyObject =\n computeKeyObject(object, specifier, true, aliasMap);\n\n return `${context.typename}:${JSON.stringify(keyObject)}`;\n };\n}\n\ntype AliasMap = {\n // Map from store key to corresponding response key. Undefined when there are\n // no aliased fields in this selection set.\n aliases?: Record;\n // Map from store key to AliasMap correponding to a child selection set.\n // Undefined when there are no child selection sets.\n subsets?: Record;\n};\n\nfunction makeAliasMap(\n selectionSet: SelectionSetNode,\n fragmentMap: FragmentMap,\n): AliasMap {\n let map: AliasMap = Object.create(null);\n // TODO Cache this work, perhaps by storing selectionSet._aliasMap?\n const workQueue = new Set([selectionSet]);\n workQueue.forEach(selectionSet => {\n selectionSet.selections.forEach(selection => {\n if (isField(selection)) {\n if (selection.alias) {\n const responseKey = selection.alias.value;\n const storeKey = selection.name.value;\n if (storeKey !== responseKey) {\n const aliases = map.aliases || (map.aliases = Object.create(null));\n aliases[storeKey] = responseKey;\n }\n }\n if (selection.selectionSet) {\n const subsets = map.subsets || (map.subsets = Object.create(null));\n subsets[selection.name.value] =\n makeAliasMap(selection.selectionSet, fragmentMap);\n }\n } else {\n const fragment = getFragmentFromSelection(selection, fragmentMap);\n if (fragment) {\n workQueue.add(fragment.selectionSet);\n }\n }\n });\n });\n return map;\n}\n\nfunction computeKeyObject(\n response: Record,\n specifier: KeySpecifier,\n strict: boolean,\n aliasMap?: AliasMap,\n): Record {\n // The order of adding properties to keyObj affects its JSON serialization,\n // so we are careful to build keyObj in the order of keys given in\n // specifier.\n const keyObj = Object.create(null);\n let prevKey: string | undefined;\n specifier.forEach(s => {\n if (Array.isArray(s)) {\n if (typeof prevKey === \"string\") {\n const subsets = aliasMap && aliasMap.subsets;\n const subset = subsets && subsets[prevKey];\n keyObj[prevKey] = computeKeyObject(response[prevKey], s, strict, subset);\n }\n } else {\n const aliases = aliasMap && aliasMap.aliases;\n const responseName = aliases && aliases[s] || s;\n if (hasOwn.call(response, responseName)) {\n keyObj[prevKey = s] = response[responseName];\n } else {\n invariant(!strict, `Missing field '${responseName}' while computing key fields`);\n prevKey = void 0;\n }\n }\n });\n return keyObj;\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","//! moment.js locale configuration\n//! locale : Gujarati [gu]\n//! author : Kaushik Thanki : https://github.com/Kaushik1987\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '૧',\n 2: '૨',\n 3: '૩',\n 4: '૪',\n 5: '૫',\n 6: '૬',\n 7: '૭',\n 8: '૮',\n 9: '૯',\n 0: '૦',\n },\n numberMap = {\n '૧': '1',\n '૨': '2',\n '૩': '3',\n '૪': '4',\n '૫': '5',\n '૬': '6',\n '૭': '7',\n '૮': '8',\n '૯': '9',\n '૦': '0',\n };\n\nexport default moment.defineLocale('gu', {\n months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split(\n '_'\n ),\n monthsShort: 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split(\n '_'\n ),\n weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'),\n weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'),\n longDateFormat: {\n LT: 'A h:mm વાગ્યે',\n LTS: 'A h:mm:ss વાગ્યે',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY, A h:mm વાગ્યે',\n LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે',\n },\n calendar: {\n sameDay: '[આજ] LT',\n nextDay: '[કાલે] LT',\n nextWeek: 'dddd, LT',\n lastDay: '[ગઇકાલે] LT',\n lastWeek: '[પાછલા] dddd, LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s મા',\n past: '%s પહેલા',\n s: 'અમુક પળો',\n ss: '%d સેકંડ',\n m: 'એક મિનિટ',\n mm: '%d મિનિટ',\n h: 'એક કલાક',\n hh: '%d કલાક',\n d: 'એક દિવસ',\n dd: '%d દિવસ',\n M: 'એક મહિનો',\n MM: '%d મહિનો',\n y: 'એક વર્ષ',\n yy: '%d વર્ષ',\n },\n preparse: function (string) {\n return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) {\n return numberMap[match];\n });\n },\n postformat: function (string) {\n return string.replace(/\\d/g, function (match) {\n return symbolMap[match];\n });\n },\n // Gujarati notation for meridiems are quite fuzzy in practice. While there exists\n // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati.\n meridiemParse: /રાત|બપોર|સવાર|સાંજ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'રાત') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'સવાર') {\n return hour;\n } else if (meridiem === 'બપોર') {\n return hour >= 10 ? hour : hour + 12;\n } else if (meridiem === 'સાંજ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'રાત';\n } else if (hour < 10) {\n return 'સવાર';\n } else if (hour < 17) {\n return 'બપોર';\n } else if (hour < 20) {\n return 'સાંજ';\n } else {\n return 'રાત';\n }\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 6th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Uzbek [uz]\n//! author : Sardor Muminov : https://github.com/muminoff\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('uz', {\n months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),\n weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),\n weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Бугун соат] LT [да]',\n nextDay: '[Эртага] LT [да]',\n nextWeek: 'dddd [куни соат] LT [да]',\n lastDay: '[Кеча соат] LT [да]',\n lastWeek: '[Утган] dddd [куни соат] LT [да]',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Якин %s ичида',\n past: 'Бир неча %s олдин',\n s: 'фурсат',\n ss: '%d фурсат',\n m: 'бир дакика',\n mm: '%d дакика',\n h: 'бир соат',\n hh: '%d соат',\n d: 'бир кун',\n dd: '%d кун',\n M: 'бир ой',\n MM: '%d ой',\n y: 'бир йил',\n yy: '%d йил',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Lao [lo]\n//! author : Ryan Hart : https://github.com/ryanhart2\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('lo', {\n months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n monthsShort: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split(\n '_'\n ),\n weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'),\n weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'ວັນdddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,\n isPM: function (input) {\n return input === 'ຕອນແລງ';\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ຕອນເຊົ້າ';\n } else {\n return 'ຕອນແລງ';\n }\n },\n calendar: {\n sameDay: '[ມື້ນີ້ເວລາ] LT',\n nextDay: '[ມື້ອື່ນເວລາ] LT',\n nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT',\n lastDay: '[ມື້ວານນີ້ເວລາ] LT',\n lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ອີກ %s',\n past: '%sຜ່ານມາ',\n s: 'ບໍ່ເທົ່າໃດວິນາທີ',\n ss: '%d ວິນາທີ',\n m: '1 ນາທີ',\n mm: '%d ນາທີ',\n h: '1 ຊົ່ວໂມງ',\n hh: '%d ຊົ່ວໂມງ',\n d: '1 ມື້',\n dd: '%d ມື້',\n M: '1 ເດືອນ',\n MM: '%d ເດືອນ',\n y: '1 ປີ',\n yy: '%d ປີ',\n },\n dayOfMonthOrdinalParse: /(ທີ່)\\d{1,2}/,\n ordinal: function (number) {\n return 'ທີ່' + number;\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-resend-verification\");\n\t\t}\n\n\t\texport default Async(load);\n\t","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { StringUtils } from \"../utils/StringUtils\";\r\nimport { LoggerOptions } from \"../config/ClientConfiguration\";\r\nimport { Constants } from \"../utils/Constants\";\r\n\r\n/**\r\n * Options for logger messages.\r\n */\r\nexport type LoggerMessageOptions = {\r\n logLevel: LogLevel,\r\n containsPii?: boolean,\r\n context?: string,\r\n correlationId?: string\r\n};\r\n\r\n/**\r\n * Log message level.\r\n */\r\nexport enum LogLevel {\r\n Error,\r\n Warning,\r\n Info,\r\n Verbose,\r\n Trace\r\n}\r\n\r\n/**\r\n * Callback to send the messages to.\r\n */\r\nexport interface ILoggerCallback {\r\n (level: LogLevel, message: string, containsPii: boolean): void;\r\n}\r\n\r\n/**\r\n * Class which facilitates logging of messages to a specific place.\r\n */\r\nexport class Logger {\r\n\r\n // Correlation ID for request, usually set by user.\r\n private correlationId: string;\r\n\r\n // Current log level, defaults to info.\r\n private level: LogLevel = LogLevel.Info;\r\n\r\n // Boolean describing whether PII logging is allowed.\r\n private piiLoggingEnabled: boolean;\r\n\r\n // Callback to send messages to.\r\n private localCallback: ILoggerCallback;\r\n\r\n // Package name implementing this logger\r\n private packageName: string;\r\n\r\n // Package version implementing this logger\r\n private packageVersion: string;\r\n\r\n constructor(loggerOptions: LoggerOptions, packageName?: string, packageVersion?: string) {\r\n const defaultLoggerCallback = () => {\r\n return;\r\n };\r\n this.localCallback = loggerOptions.loggerCallback || defaultLoggerCallback;\r\n this.piiLoggingEnabled = loggerOptions.piiLoggingEnabled || false;\r\n this.level = typeof(loggerOptions.logLevel) === \"number\" ? loggerOptions.logLevel : LogLevel.Info;\r\n this.correlationId = loggerOptions.correlationId || \"\";\r\n\r\n this.packageName = packageName || Constants.EMPTY_STRING;\r\n this.packageVersion = packageVersion || Constants.EMPTY_STRING;\r\n }\r\n\r\n /**\r\n * Create new Logger with existing configurations.\r\n */\r\n public clone(packageName: string, packageVersion: string, correlationId?: string): Logger {\r\n return new Logger({loggerCallback: this.localCallback, piiLoggingEnabled: this.piiLoggingEnabled, logLevel: this.level, correlationId: correlationId || this.correlationId}, packageName, packageVersion);\r\n }\r\n\r\n /**\r\n * Log message with required options.\r\n */\r\n private logMessage(logMessage: string, options: LoggerMessageOptions): void {\r\n if ((options.logLevel > this.level) || (!this.piiLoggingEnabled && options.containsPii)) {\r\n return;\r\n }\r\n const timestamp = new Date().toUTCString();\r\n\r\n // Add correlationId to logs if set, correlationId provided on log messages take precedence\r\n let logHeader: string;\r\n if (!StringUtils.isEmpty(options.correlationId)) {\r\n logHeader = `[${timestamp}] : [${options.correlationId}]`;\r\n } else if (!StringUtils.isEmpty(this.correlationId)) {\r\n logHeader = `[${timestamp}] : [${this.correlationId}]`;\r\n } else {\r\n logHeader = `[${timestamp}]`;\r\n }\r\n\r\n const log = `${logHeader} : ${this.packageName}@${this.packageVersion} : ${LogLevel[options.logLevel]} - ${logMessage}`;\r\n // debug(`msal:${LogLevel[options.logLevel]}${options.containsPii ? \"-Pii\": \"\"}${options.context ? `:${options.context}` : \"\"}`)(logMessage);\r\n this.executeCallback(options.logLevel, log, options.containsPii || false);\r\n }\r\n\r\n /**\r\n * Execute callback with message.\r\n */\r\n executeCallback(level: LogLevel, message: string, containsPii: boolean): void {\r\n if (this.localCallback) {\r\n this.localCallback(level, message, containsPii);\r\n }\r\n }\r\n\r\n /**\r\n * Logs error messages.\r\n */\r\n error(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Error,\r\n containsPii: false,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs error messages with PII.\r\n */\r\n errorPii(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Error,\r\n containsPii: true,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs warning messages.\r\n */\r\n warning(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Warning,\r\n containsPii: false,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs warning messages with PII.\r\n */\r\n warningPii(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Warning,\r\n containsPii: true,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs info messages.\r\n */\r\n info(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Info,\r\n containsPii: false,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs info messages with PII.\r\n */\r\n infoPii(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Info,\r\n containsPii: true,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs verbose messages.\r\n */\r\n verbose(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Verbose,\r\n containsPii: false,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs verbose messages with PII.\r\n */\r\n verbosePii(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Verbose,\r\n containsPii: true,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs trace messages.\r\n */\r\n trace(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Trace,\r\n containsPii: false,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Logs trace messages with PII.\r\n */\r\n tracePii(message: string, correlationId?: string): void {\r\n this.logMessage(message, {\r\n logLevel: LogLevel.Trace,\r\n containsPii: true,\r\n correlationId: correlationId || \"\"\r\n });\r\n }\r\n\r\n /**\r\n * Returns whether PII Logging is enabled or not.\r\n */\r\n isPiiLoggingEnabled(): boolean {\r\n return this.piiLoggingEnabled || false;\r\n }\r\n}\r\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { AuthError } from \"./AuthError\";\r\n\r\n/**\r\n * ClientAuthErrorMessage class containing string constants used by error codes and messages.\r\n */\r\nexport const ClientAuthErrorMessage = {\r\n clientInfoDecodingError: {\r\n code: \"client_info_decoding_error\",\r\n desc: \"The client info could not be parsed/decoded correctly. Please review the trace to determine the root cause.\"\r\n },\r\n clientInfoEmptyError: {\r\n code: \"client_info_empty_error\",\r\n desc: \"The client info was empty. Please review the trace to determine the root cause.\"\r\n },\r\n tokenParsingError: {\r\n code: \"token_parsing_error\",\r\n desc: \"Token cannot be parsed. Please review stack trace to determine root cause.\"\r\n },\r\n nullOrEmptyToken: {\r\n code: \"null_or_empty_token\",\r\n desc: \"The token is null or empty. Please review the trace to determine the root cause.\"\r\n },\r\n endpointResolutionError: {\r\n code: \"endpoints_resolution_error\",\r\n desc: \"Error: could not resolve endpoints. Please check network and try again.\"\r\n },\r\n networkError: {\r\n code: \"network_error\",\r\n desc: \"Network request failed. Please check network trace to determine root cause.\"\r\n },\r\n unableToGetOpenidConfigError: {\r\n code: \"openid_config_error\",\r\n desc: \"Could not retrieve endpoints. Check your authority and verify the .well-known/openid-configuration endpoint returns the required endpoints.\"\r\n },\r\n hashNotDeserialized: {\r\n code: \"hash_not_deserialized\",\r\n desc: \"The hash parameters could not be deserialized. Please review the trace to determine the root cause.\"\r\n },\r\n blankGuidGenerated: {\r\n code: \"blank_guid_generated\",\r\n desc: \"The guid generated was blank. Please review the trace to determine the root cause.\"\r\n },\r\n invalidStateError: {\r\n code: \"invalid_state\",\r\n desc: \"State was not the expected format. Please check the logs to determine whether the request was sent using ProtocolUtils.setRequestState().\"\r\n },\r\n stateMismatchError: {\r\n code: \"state_mismatch\",\r\n desc: \"State mismatch error. Please check your network. Continued requests may cause cache overflow.\"\r\n },\r\n stateNotFoundError: {\r\n code: \"state_not_found\",\r\n desc: \"State not found\"\r\n },\r\n nonceMismatchError: {\r\n code: \"nonce_mismatch\",\r\n desc: \"Nonce mismatch error. This may be caused by a race condition in concurrent requests.\"\r\n },\r\n nonceNotFoundError: {\r\n code: \"nonce_not_found\",\r\n desc: \"nonce not found\"\r\n },\r\n noTokensFoundError: {\r\n code: \"no_tokens_found\",\r\n desc: \"No tokens were found for the given scopes, and no authorization code was passed to acquireToken. You must retrieve an authorization code before making a call to acquireToken().\"\r\n },\r\n multipleMatchingTokens: {\r\n code: \"multiple_matching_tokens\",\r\n desc: \"The cache contains multiple tokens satisfying the requirements. \" +\r\n \"Call AcquireToken again providing more requirements such as authority or account.\"\r\n },\r\n multipleMatchingAccounts: {\r\n code: \"multiple_matching_accounts\",\r\n desc: \"The cache contains multiple accounts satisfying the given parameters. Please pass more info to obtain the correct account\"\r\n },\r\n multipleMatchingAppMetadata: {\r\n code: \"multiple_matching_appMetadata\",\r\n desc: \"The cache contains multiple appMetadata satisfying the given parameters. Please pass more info to obtain the correct appMetadata\"\r\n },\r\n tokenRequestCannotBeMade: {\r\n code: \"request_cannot_be_made\",\r\n desc: \"Token request cannot be made without authorization code or refresh token.\"\r\n },\r\n appendEmptyScopeError: {\r\n code: \"cannot_append_empty_scope\",\r\n desc: \"Cannot append null or empty scope to ScopeSet. Please check the stack trace for more info.\"\r\n },\r\n removeEmptyScopeError: {\r\n code: \"cannot_remove_empty_scope\",\r\n desc: \"Cannot remove null or empty scope from ScopeSet. Please check the stack trace for more info.\"\r\n },\r\n appendScopeSetError: {\r\n code: \"cannot_append_scopeset\",\r\n desc: \"Cannot append ScopeSet due to error.\"\r\n },\r\n emptyInputScopeSetError: {\r\n code: \"empty_input_scopeset\",\r\n desc: \"Empty input ScopeSet cannot be processed.\"\r\n },\r\n DeviceCodePollingCancelled: {\r\n code: \"device_code_polling_cancelled\",\r\n desc: \"Caller has cancelled token endpoint polling during device code flow by setting DeviceCodeRequest.cancel = true.\"\r\n },\r\n DeviceCodeExpired: {\r\n code: \"device_code_expired\",\r\n desc: \"Device code is expired.\"\r\n },\r\n DeviceCodeUnknownError: {\r\n code: \"device_code_unknown_error\",\r\n desc: \"Device code stopped polling for unknown reasons.\"\r\n },\r\n NoAccountInSilentRequest: {\r\n code: \"no_account_in_silent_request\",\r\n desc: \"Please pass an account object, silent flow is not supported without account information\"\r\n },\r\n invalidCacheRecord: {\r\n code: \"invalid_cache_record\",\r\n desc: \"Cache record object was null or undefined.\"\r\n },\r\n invalidCacheEnvironment: {\r\n code: \"invalid_cache_environment\",\r\n desc: \"Invalid environment when attempting to create cache entry\"\r\n },\r\n noAccountFound: {\r\n code: \"no_account_found\",\r\n desc: \"No account found in cache for given key.\"\r\n },\r\n CachePluginError: {\r\n code: \"no cache plugin set on CacheManager\",\r\n desc: \"ICachePlugin needs to be set before using readFromStorage or writeFromStorage\"\r\n },\r\n noCryptoObj: {\r\n code: \"no_crypto_object\",\r\n desc: \"No crypto object detected. This is required for the following operation: \"\r\n },\r\n invalidCacheType: {\r\n code: \"invalid_cache_type\",\r\n desc: \"Invalid cache type\"\r\n },\r\n unexpectedAccountType: {\r\n code: \"unexpected_account_type\",\r\n desc: \"Unexpected account type.\"\r\n },\r\n unexpectedCredentialType: {\r\n code: \"unexpected_credential_type\",\r\n desc: \"Unexpected credential type.\"\r\n },\r\n invalidAssertion: {\r\n code: \"invalid_assertion\",\r\n desc: \"Client assertion must meet requirements described in https://tools.ietf.org/html/rfc7515\"\r\n },\r\n invalidClientCredential: {\r\n code: \"invalid_client_credential\",\r\n desc: \"Client credential (secret, certificate, or assertion) must not be empty when creating a confidential client. An application should at most have one credential\"\r\n },\r\n tokenRefreshRequired: {\r\n code: \"token_refresh_required\",\r\n desc: \"Cannot return token from cache because it must be refreshed. This may be due to one of the following reasons: forceRefresh parameter is set to true, claims have been requested, there is no cached access token or it is expired.\"\r\n },\r\n userTimeoutReached: {\r\n code: \"user_timeout_reached\",\r\n desc: \"User defined timeout for device code polling reached\",\r\n },\r\n tokenClaimsRequired: {\r\n code: \"token_claims_cnf_required_for_signedjwt\",\r\n desc: \"Cannot generate a POP jwt if the token_claims are not populated\"\r\n },\r\n noAuthorizationCodeFromServer: {\r\n code: \"authorization_code_missing_from_server_response\",\r\n desc: \"Server response does not contain an authorization code to proceed\"\r\n },\r\n noAzureRegionDetected: {\r\n code: \"no_azure_region_detected\",\r\n desc: \"No azure region was detected and no fallback was made available\"\r\n },\r\n accessTokenEntityNullError: {\r\n code: \"access_token_entity_null\",\r\n desc: \"Access token entity is null, please check logs and cache to ensure a valid access token is present.\"\r\n },\r\n bindingKeyNotRemovedError: {\r\n code: \"binding_key_not_removed\",\r\n desc: \"Could not remove the credential's binding key from storage.\"\r\n }\r\n};\r\n\r\n/**\r\n * Error thrown when there is an error in the client code running on the browser.\r\n */\r\nexport class ClientAuthError extends AuthError {\r\n\r\n constructor(errorCode: string, errorMessage?: string) {\r\n super(errorCode, errorMessage);\r\n this.name = \"ClientAuthError\";\r\n\r\n Object.setPrototypeOf(this, ClientAuthError.prototype);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when client info object doesn't decode correctly.\r\n * @param caughtError\r\n */\r\n static createClientInfoDecodingError(caughtError: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.clientInfoDecodingError.code,\r\n `${ClientAuthErrorMessage.clientInfoDecodingError.desc} Failed with error: ${caughtError}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown if the client info is empty.\r\n * @param rawClientInfo\r\n */\r\n static createClientInfoEmptyError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.clientInfoEmptyError.code,\r\n `${ClientAuthErrorMessage.clientInfoEmptyError.desc}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the id token extraction errors out.\r\n * @param err\r\n */\r\n static createTokenParsingError(caughtExtractionError: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.tokenParsingError.code,\r\n `${ClientAuthErrorMessage.tokenParsingError.desc} Failed with error: ${caughtExtractionError}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the id token string is null or empty.\r\n * @param invalidRawTokenString\r\n */\r\n static createTokenNullOrEmptyError(invalidRawTokenString: string) : ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.nullOrEmptyToken.code,\r\n `${ClientAuthErrorMessage.nullOrEmptyToken.desc} Raw Token Value: ${invalidRawTokenString}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the endpoint discovery doesn't complete correctly.\r\n */\r\n static createEndpointDiscoveryIncompleteError(errDetail: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.endpointResolutionError.code,\r\n `${ClientAuthErrorMessage.endpointResolutionError.desc} Detail: ${errDetail}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the fetch client throws\r\n */\r\n static createNetworkError(endpoint: string, errDetail: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.networkError.code,\r\n `${ClientAuthErrorMessage.networkError.desc} | Fetch client threw: ${errDetail} | Attempted to reach: ${endpoint.split(\"?\")[0]}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the openid-configuration endpoint cannot be reached or does not contain the required data\r\n */\r\n static createUnableToGetOpenidConfigError(errDetail: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.unableToGetOpenidConfigError.code,\r\n `${ClientAuthErrorMessage.unableToGetOpenidConfigError.desc} Attempted to retrieve endpoints from: ${errDetail}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the hash cannot be deserialized.\r\n * @param hashParamObj\r\n */\r\n static createHashNotDeserializedError(hashParamObj: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.hashNotDeserialized.code,\r\n `${ClientAuthErrorMessage.hashNotDeserialized.desc} Given Object: ${hashParamObj}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the state cannot be parsed.\r\n * @param invalidState\r\n */\r\n static createInvalidStateError(invalidState: string, errorString?: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidStateError.code,\r\n `${ClientAuthErrorMessage.invalidStateError.desc} Invalid State: ${invalidState}, Root Err: ${errorString}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when two states do not match.\r\n */\r\n static createStateMismatchError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.stateMismatchError.code,\r\n ClientAuthErrorMessage.stateMismatchError.desc);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the state is not present\r\n * @param missingState\r\n */\r\n static createStateNotFoundError(missingState: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.stateNotFoundError.code,\r\n `${ClientAuthErrorMessage.stateNotFoundError.desc}: ${missingState}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the nonce does not match.\r\n */\r\n static createNonceMismatchError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.nonceMismatchError.code,\r\n ClientAuthErrorMessage.nonceMismatchError.desc);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the mnonce is not present\r\n * @param missingNonce\r\n */\r\n static createNonceNotFoundError(missingNonce: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.nonceNotFoundError.code,\r\n `${ClientAuthErrorMessage.nonceNotFoundError.desc}: ${missingNonce}`);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the authorization code required for a token request is null or empty.\r\n */\r\n static createNoTokensFoundError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.noTokensFoundError.code, ClientAuthErrorMessage.noTokensFoundError.desc);\r\n }\r\n\r\n /**\r\n * Throws error when multiple tokens are in cache.\r\n */\r\n static createMultipleMatchingTokensInCacheError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.multipleMatchingTokens.code,\r\n `${ClientAuthErrorMessage.multipleMatchingTokens.desc}.`);\r\n }\r\n\r\n /**\r\n * Throws error when multiple accounts are in cache for the given params\r\n */\r\n static createMultipleMatchingAccountsInCacheError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.multipleMatchingAccounts.code,\r\n ClientAuthErrorMessage.multipleMatchingAccounts.desc);\r\n }\r\n\r\n /**\r\n * Throws error when multiple appMetada are in cache for the given clientId.\r\n */\r\n static createMultipleMatchingAppMetadataInCacheError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.multipleMatchingAppMetadata.code,\r\n ClientAuthErrorMessage.multipleMatchingAppMetadata.desc);\r\n }\r\n\r\n /**\r\n * Throws error when no auth code or refresh token is given to ServerTokenRequestParameters.\r\n */\r\n static createTokenRequestCannotBeMadeError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.tokenRequestCannotBeMade.code, ClientAuthErrorMessage.tokenRequestCannotBeMade.desc);\r\n }\r\n\r\n /**\r\n * Throws error when attempting to append a null, undefined or empty scope to a set\r\n * @param givenScope\r\n */\r\n static createAppendEmptyScopeToSetError(givenScope: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.appendEmptyScopeError.code, `${ClientAuthErrorMessage.appendEmptyScopeError.desc} Given Scope: ${givenScope}`);\r\n }\r\n\r\n /**\r\n * Throws error when attempting to append a null, undefined or empty scope to a set\r\n * @param givenScope\r\n */\r\n static createRemoveEmptyScopeFromSetError(givenScope: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.removeEmptyScopeError.code, `${ClientAuthErrorMessage.removeEmptyScopeError.desc} Given Scope: ${givenScope}`);\r\n }\r\n\r\n /**\r\n * Throws error when attempting to append null or empty ScopeSet.\r\n * @param appendError\r\n */\r\n static createAppendScopeSetError(appendError: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.appendScopeSetError.code, `${ClientAuthErrorMessage.appendScopeSetError.desc} Detail Error: ${appendError}`);\r\n }\r\n\r\n /**\r\n * Throws error if ScopeSet is null or undefined.\r\n * @param givenScopeSet\r\n */\r\n static createEmptyInputScopeSetError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.emptyInputScopeSetError.code, `${ClientAuthErrorMessage.emptyInputScopeSetError.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if user sets CancellationToken.cancel = true during polling of token endpoint during device code flow\r\n */\r\n static createDeviceCodeCancelledError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.DeviceCodePollingCancelled.code, `${ClientAuthErrorMessage.DeviceCodePollingCancelled.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if device code is expired\r\n */\r\n static createDeviceCodeExpiredError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.DeviceCodeExpired.code, `${ClientAuthErrorMessage.DeviceCodeExpired.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if device code is expired\r\n */\r\n static createDeviceCodeUnknownError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.DeviceCodeUnknownError.code, `${ClientAuthErrorMessage.DeviceCodeUnknownError.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error when silent requests are made without an account object\r\n */\r\n static createNoAccountInSilentRequestError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.NoAccountInSilentRequest.code, `${ClientAuthErrorMessage.NoAccountInSilentRequest.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error when cache record is null or undefined.\r\n */\r\n static createNullOrUndefinedCacheRecord(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidCacheRecord.code, ClientAuthErrorMessage.invalidCacheRecord.desc);\r\n }\r\n\r\n /**\r\n * Throws error when provided environment is not part of the CloudDiscoveryMetadata object\r\n */\r\n static createInvalidCacheEnvironmentError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidCacheEnvironment.code, ClientAuthErrorMessage.invalidCacheEnvironment.desc);\r\n }\r\n\r\n /**\r\n * Throws error when account is not found in cache.\r\n */\r\n static createNoAccountFoundError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.noAccountFound.code, ClientAuthErrorMessage.noAccountFound.desc);\r\n }\r\n\r\n /**\r\n * Throws error if ICachePlugin not set on CacheManager.\r\n */\r\n static createCachePluginError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.CachePluginError.code, `${ClientAuthErrorMessage.CachePluginError.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if crypto object not found.\r\n * @param operationName\r\n */\r\n static createNoCryptoObjectError(operationName: string): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.noCryptoObj.code, `${ClientAuthErrorMessage.noCryptoObj.desc}${operationName}`);\r\n }\r\n\r\n /**\r\n * Throws error if cache type is invalid.\r\n */\r\n static createInvalidCacheTypeError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidCacheType.code, `${ClientAuthErrorMessage.invalidCacheType.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if unexpected account type.\r\n */\r\n static createUnexpectedAccountTypeError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.unexpectedAccountType.code, `${ClientAuthErrorMessage.unexpectedAccountType.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if unexpected credential type.\r\n */\r\n static createUnexpectedCredentialTypeError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.unexpectedCredentialType.code, `${ClientAuthErrorMessage.unexpectedCredentialType.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if client assertion is not valid.\r\n */\r\n static createInvalidAssertionError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidAssertion.code, `${ClientAuthErrorMessage.invalidAssertion.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if client assertion is not valid.\r\n */\r\n static createInvalidCredentialError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.invalidClientCredential.code, `${ClientAuthErrorMessage.invalidClientCredential.desc}`);\r\n }\r\n\r\n /**\r\n * Throws error if token cannot be retrieved from cache due to refresh being required.\r\n */\r\n static createRefreshRequiredError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.tokenRefreshRequired.code, ClientAuthErrorMessage.tokenRefreshRequired.desc);\r\n }\r\n\r\n /**\r\n * Throws error if the user defined timeout is reached.\r\n */\r\n static createUserTimeoutReachedError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.userTimeoutReached.code, ClientAuthErrorMessage.userTimeoutReached.desc);\r\n }\r\n\r\n /*\r\n * Throws error if token claims are not populated for a signed jwt generation\r\n */\r\n static createTokenClaimsRequiredError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.tokenClaimsRequired.code, ClientAuthErrorMessage.tokenClaimsRequired.desc);\r\n }\r\n\r\n /**\r\n * Throws error when the authorization code is missing from the server response\r\n */\r\n static createNoAuthCodeInServerResponseError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.noAuthorizationCodeFromServer.code, ClientAuthErrorMessage.noAuthorizationCodeFromServer.desc);\r\n }\r\n\r\n static createBindingKeyNotRemovedError(): ClientAuthError {\r\n return new ClientAuthError(ClientAuthErrorMessage.bindingKeyNotRemovedError.code, ClientAuthErrorMessage.bindingKeyNotRemovedError.desc);\r\n }\r\n}\r\n","'use strict';\n\n/**\n * Used to mark\n * [React Native `File` substitutes]{@link ReactNativeFileSubstitute} as it’s\n * too risky to assume all objects with `uri`, `type` and `name` properties are\n * extractable files.\n * @kind class\n * @name ReactNativeFile\n * @param {ReactNativeFileSubstitute} file A [React Native](https://reactnative.dev) [`File`](https://developer.mozilla.org/en-US/docs/Web/API/File) substitute.\n * @see [`extract-files` `ReactNativeFile` docs](https://github.com/jaydenseric/extract-files#class-reactnativefile).\n * @example Ways to `import`.\n * ```js\n * import { ReactNativeFile } from 'apollo-upload-client';\n * ```\n *\n * ```js\n * import ReactNativeFile from 'apollo-upload-client/public/ReactNativeFile.js';\n * ```\n * @example Ways to `require`.\n * ```js\n * const { ReactNativeFile } = require('apollo-upload-client');\n * ```\n *\n * ```js\n * const ReactNativeFile = require('apollo-upload-client/public/ReactNativeFile.js');\n * ```\n * @example A file in [React Native](https://reactnative.dev) that can be used in query or mutation variables.\n * ```js\n * const file = new ReactNativeFile({\n * uri: uriFromCameraRoll,\n * name: 'a.jpg',\n * type: 'image/jpeg',\n * });\n * ```\n */\nmodule.exports = require('extract-files/public/ReactNativeFile.js');\n","export default function symbolObservablePonyfill(root) {\n\tvar result;\n\tvar Symbol = root.Symbol;\n\n\tif (typeof Symbol === 'function') {\n\t\tif (Symbol.observable) {\n\t\t\tresult = Symbol.observable;\n\t\t} else {\n\n\t\t\t// This just needs to be something that won't trample other user's Symbol.for use\n\t\t\t// It also will guide people to the source of their issues, if this is problematic.\n\t\t\t// META: It's a resource locator!\n\t\t\tresult = Symbol.for('https://github.com/benlesh/symbol-observable');\n\t\t\ttry {\n\t\t\t\tSymbol.observable = result;\n\t\t\t} catch (err) {\n\t\t\t\t// Do nothing. In some environments, users have frozen `Symbol` for security reasons,\n\t\t\t\t// if it is frozen assigning to it will throw. In this case, we don't care, because\n\t\t\t\t// they will need to use the returned value from the ponyfill.\n\t\t\t}\n\t\t}\n\t} else {\n\t\tresult = '@@observable';\n\t}\n\n\treturn result;\n};\n","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","const { toString, hasOwnProperty } = Object.prototype;\nconst fnToStr = Function.prototype.toString;\nconst previousComparisons = new Map>();\n\n/**\n * Performs a deep equality check on two JavaScript values, tolerating cycles.\n */\nexport function equal(a: any, b: any): boolean {\n try {\n return check(a, b);\n } finally {\n previousComparisons.clear();\n }\n}\n\n// Allow default imports as well.\nexport default equal;\n\nfunction check(a: any, b: any): boolean {\n // If the two values are strictly equal, our job is easy.\n if (a === b) {\n return true;\n }\n\n // Object.prototype.toString returns a representation of the runtime type of\n // the given value that is considerably more precise than typeof.\n const aTag = toString.call(a);\n const bTag = toString.call(b);\n\n // If the runtime types of a and b are different, they could maybe be equal\n // under some interpretation of equality, but for simplicity and performance\n // we just return false instead.\n if (aTag !== bTag) {\n return false;\n }\n\n switch (aTag) {\n case '[object Array]':\n // Arrays are a lot like other objects, but we can cheaply compare their\n // lengths as a short-cut before comparing their elements.\n if (a.length !== b.length) return false;\n // Fall through to object case...\n case '[object Object]': {\n if (previouslyCompared(a, b)) return true;\n\n const aKeys = definedKeys(a);\n const bKeys = definedKeys(b);\n\n // If `a` and `b` have a different number of enumerable keys, they\n // must be different.\n const keyCount = aKeys.length;\n if (keyCount !== bKeys.length) return false;\n\n // Now make sure they have the same keys.\n for (let k = 0; k < keyCount; ++k) {\n if (!hasOwnProperty.call(b, aKeys[k])) {\n return false;\n }\n }\n\n // Finally, check deep equality of all child properties.\n for (let k = 0; k < keyCount; ++k) {\n const key = aKeys[k];\n if (!check(a[key], b[key])) {\n return false;\n }\n }\n\n return true;\n }\n\n case '[object Error]':\n return a.name === b.name && a.message === b.message;\n\n case '[object Number]':\n // Handle NaN, which is !== itself.\n if (a !== a) return b !== b;\n // Fall through to shared +a === +b case...\n case '[object Boolean]':\n case '[object Date]':\n return +a === +b;\n\n case '[object RegExp]':\n case '[object String]':\n return a == `${b}`;\n\n case '[object Map]':\n case '[object Set]': {\n if (a.size !== b.size) return false;\n if (previouslyCompared(a, b)) return true;\n\n const aIterator = a.entries();\n const isMap = aTag === '[object Map]';\n\n while (true) {\n const info = aIterator.next();\n if (info.done) break;\n\n // If a instanceof Set, aValue === aKey.\n const [aKey, aValue] = info.value;\n\n // So this works the same way for both Set and Map.\n if (!b.has(aKey)) {\n return false;\n }\n\n // However, we care about deep equality of values only when dealing\n // with Map structures.\n if (isMap && !check(aValue, b.get(aKey))) {\n return false;\n }\n }\n\n return true;\n }\n\n case '[object Function]': {\n const aCode = fnToStr.call(a);\n if (aCode !== fnToStr.call(b)) {\n return false;\n }\n\n // We consider non-native functions equal if they have the same code\n // (native functions require === because their code is censored).\n // Note that this behavior is not entirely sound, since !== function\n // objects with the same code can behave differently depending on\n // their closure scope. However, any function can behave differently\n // depending on the values of its input arguments (including this)\n // and its calling context (including its closure scope), even\n // though the function object is === to itself; and it is entirely\n // possible for functions that are not === to behave exactly the\n // same under all conceivable circumstances. Because none of these\n // factors are statically decidable in JavaScript, JS function\n // equality is not well-defined. This ambiguity allows us to\n // consider the best possible heuristic among various imperfect\n // options, and equating non-native functions that have the same\n // code has enormous practical benefits, such as when comparing\n // functions that are repeatedly passed as fresh function\n // expressions within objects that are otherwise deeply equal. Since\n // any function created from the same syntactic expression (in the\n // same code location) will always stringify to the same code\n // according to fnToStr.call, we can reasonably expect these\n // repeatedly passed function expressions to have the same code, and\n // thus behave \"the same\" (with all the caveats mentioned above),\n // even though the runtime function objects are !== to one another.\n return !endsWith(aCode, nativeCodeSuffix);\n }\n }\n\n // Otherwise the values are not equal.\n return false;\n}\n\nfunction definedKeys(obj: TObject) {\n // Remember that the second argument to Array.prototype.filter will be\n // used as `this` within the callback function.\n return Object.keys(obj).filter(isDefinedKey, obj);\n}\nfunction isDefinedKey(\n this: TObject,\n key: keyof TObject,\n) {\n return this[key] !== void 0;\n}\n\nconst nativeCodeSuffix = \"{ [native code] }\";\n\nfunction endsWith(full: string, suffix: string) {\n const fromIndex = full.length - suffix.length;\n return fromIndex >= 0 &&\n full.indexOf(suffix, fromIndex) === fromIndex;\n}\n\nfunction previouslyCompared(a: object, b: object): boolean {\n // Though cyclic references can make an object graph appear infinite from the\n // perspective of a depth-first traversal, the graph still contains a finite\n // number of distinct object references. We use the previousComparisons cache\n // to avoid comparing the same pair of object references more than once, which\n // guarantees termination (even if we end up comparing every object in one\n // graph to every object in the other graph, which is extremely unlikely),\n // while still allowing weird isomorphic structures (like rings with different\n // lengths) a chance to pass the equality test.\n let bSet = previousComparisons.get(a);\n if (bSet) {\n // Return true here because we can be sure false will be returned somewhere\n // else if the objects are not equivalent.\n if (bSet.has(b)) return true;\n } else {\n previousComparisons.set(a, bSet = new Set);\n }\n bSet.add(b);\n return false;\n}\n","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport PropTypes from 'prop-types';\nimport merge from './merge'; // The breakpoint **start** at this value.\n// For instance with the first breakpoint xs: [xs, sm[.\n\nvar values = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920\n};\nvar defaultBreakpoints = {\n // Sorted ASC by size. That's important.\n // It can't be configured as it's used statically for propTypes.\n keys: ['xs', 'sm', 'md', 'lg', 'xl'],\n up: function up(key) {\n return \"@media (min-width:\".concat(values[key], \"px)\");\n }\n};\nexport function handleBreakpoints(props, propValue, styleFromPropValue) {\n if (process.env.NODE_ENV !== 'production') {\n if (!props.theme) {\n console.error('Material-UI: You are calling a style function without a theme value.');\n }\n }\n\n if (Array.isArray(propValue)) {\n var themeBreakpoints = props.theme.breakpoints || defaultBreakpoints;\n return propValue.reduce(function (acc, item, index) {\n acc[themeBreakpoints.up(themeBreakpoints.keys[index])] = styleFromPropValue(propValue[index]);\n return acc;\n }, {});\n }\n\n if (_typeof(propValue) === 'object') {\n var _themeBreakpoints = props.theme.breakpoints || defaultBreakpoints;\n\n return Object.keys(propValue).reduce(function (acc, breakpoint) {\n acc[_themeBreakpoints.up(breakpoint)] = styleFromPropValue(propValue[breakpoint]);\n return acc;\n }, {});\n }\n\n var output = styleFromPropValue(propValue);\n return output;\n}\n\nfunction breakpoints(styleFunction) {\n var newStyleFunction = function newStyleFunction(props) {\n var base = styleFunction(props);\n var themeBreakpoints = props.theme.breakpoints || defaultBreakpoints;\n var extended = themeBreakpoints.keys.reduce(function (acc, key) {\n if (props[key]) {\n acc = acc || {};\n acc[themeBreakpoints.up(key)] = styleFunction(_extends({\n theme: props.theme\n }, props[key]));\n }\n\n return acc;\n }, null);\n return merge(base, extended);\n };\n\n newStyleFunction.propTypes = process.env.NODE_ENV !== 'production' ? _extends({}, styleFunction.propTypes, {\n xs: PropTypes.object,\n sm: PropTypes.object,\n md: PropTypes.object,\n lg: PropTypes.object,\n xl: PropTypes.object\n }) : {};\n newStyleFunction.filterProps = ['xs', 'sm', 'md', 'lg', 'xl'].concat(_toConsumableArray(styleFunction.filterProps));\n return newStyleFunction;\n}\n\nexport default breakpoints;","//! moment.js locale configuration\n//! locale : Swahili [sw]\n//! author : Fahad Kassim : https://github.com/fadsel\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('sw', {\n months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'),\n weekdays: 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split(\n '_'\n ),\n weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'),\n weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'hh:mm A',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[leo saa] LT',\n nextDay: '[kesho saa] LT',\n nextWeek: '[wiki ijayo] dddd [saat] LT',\n lastDay: '[jana] LT',\n lastWeek: '[wiki iliyopita] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s baadaye',\n past: 'tokea %s',\n s: 'hivi punde',\n ss: 'sekunde %d',\n m: 'dakika moja',\n mm: 'dakika %d',\n h: 'saa limoja',\n hh: 'masaa %d',\n d: 'siku moja',\n dd: 'siku %d',\n M: 'mwezi mmoja',\n MM: 'miezi %d',\n y: 'mwaka mmoja',\n yy: 'miaka %d',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","import {\n DocumentNode,\n DefinitionNode,\n VariableDefinitionNode,\n OperationDefinitionNode\n} from 'graphql';\nimport { invariant } from 'ts-invariant';\n\nexport enum DocumentType {\n Query,\n Mutation,\n Subscription\n}\n\nexport interface IDocumentDefinition {\n type: DocumentType;\n name: string;\n variables: ReadonlyArray;\n}\n\nconst cache = new Map();\n\nexport function operationName(type: DocumentType) {\n let 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}\n\n// This parser is mostly used to saftey check incoming documents.\nexport function parser(document: DocumentNode): IDocumentDefinition {\n const cached = cache.get(document);\n if (cached) return cached;\n\n let variables, type, name;\n\n invariant(\n !!document && !!document.kind,\n `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 );\n\n const fragments = document.definitions.filter(\n (x: DefinitionNode) => x.kind === 'FragmentDefinition'\n );\n\n const queries = document.definitions.filter(\n (x: DefinitionNode) =>\n x.kind === 'OperationDefinition' && x.operation === 'query'\n );\n\n const mutations = document.definitions.filter(\n (x: DefinitionNode) =>\n x.kind === 'OperationDefinition' && x.operation === 'mutation'\n );\n\n const subscriptions = document.definitions.filter(\n (x: DefinitionNode) =>\n x.kind === 'OperationDefinition' && x.operation === 'subscription'\n );\n\n invariant(\n !fragments.length ||\n (queries.length || mutations.length || subscriptions.length),\n `Passing only a fragment to 'graphql' is not yet supported. ` +\n `You must include a query, subscription or mutation as well`\n );\n\n invariant(\n queries.length + mutations.length + subscriptions.length <= 1,\n `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 );\n\n type = queries.length ? DocumentType.Query : DocumentType.Mutation;\n if (!queries.length && !mutations.length) type = DocumentType.Subscription;\n\n const definitions = queries.length\n ? queries\n : mutations.length\n ? mutations\n : subscriptions;\n\n invariant(\n definitions.length === 1,\n `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 );\n\n const definition = definitions[0] as OperationDefinitionNode;\n variables = definition.variableDefinitions || [];\n\n if (definition.name && definition.name.kind === 'Name') {\n name = definition.name.value;\n } else {\n name = 'data'; // fallback to using data if no name\n }\n\n const payload = { name, type, variables };\n cache.set(document, payload);\n return payload;\n}\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-reports\");\n\t\t}\n\n\t\texport default Async(load);\n\t","/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Check if two objects have a different shape\n * @param {object} a\n * @param {object} b\n * @returns {boolean}\n */\nexport function shallowDiffers(a, b) {\n\tfor (let i in a) if (i !== '__source' && !(i in b)) return true;\n\tfor (let i in b) if (i !== '__source' && a[i] !== b[i]) return true;\n\treturn false;\n}\n","import React from 'react';\nimport { ApolloClient } from '../../core';\nimport { canUseWeakMap } from '../../utilities';\n\nexport interface ApolloContextValue {\n client?: ApolloClient;\n renderPromises?: Record;\n}\n\n// To make sure Apollo Client doesn't create more than one React context\n// (which can lead to problems like having an Apollo Client instance added\n// in one context, then attempting to retrieve it from another different\n// context), a single Apollo context is created and tracked in global state.\n// We use React.createContext as the key instead of just React to avoid\n// ambiguities between default and namespace React imports.\n\nconst cache = new (canUseWeakMap ? WeakMap : Map)<\n typeof React.createContext,\n React.Context\n>();\n\nexport function getApolloContext() {\n let context = cache.get(React.createContext)!;\n if (!context) {\n context = React.createContext({});\n context.displayName = 'ApolloContext';\n cache.set(React.createContext, context);\n }\n return context;\n}\n\nexport { getApolloContext as resetApolloContext }\n","import React from 'react';\nimport { invariant } from 'ts-invariant';\n\nimport { ApolloClient } from '../../core';\nimport { getApolloContext } from './ApolloContext';\n\nexport interface ApolloProviderProps {\n client: ApolloClient;\n children: React.ReactNode | React.ReactNode[] | null;\n}\n\nexport const ApolloProvider: React.FC> = ({\n client,\n children\n}) => {\n const ApolloContext = getApolloContext();\n return (\n \n {(context: any = {}) => {\n if (client && context.client !== client) {\n context = Object.assign({}, context, { client });\n }\n\n invariant(\n context.client,\n 'ApolloProvider was not passed a client instance. Make ' +\n 'sure you pass in your client via the \"client\" prop.'\n );\n\n return (\n \n {children}\n \n );\n }}\n \n );\n};\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","//! moment.js locale configuration\n//! locale : English (New Zealand) [en-nz]\n//! author : Luke McGregor : https://github.com/lukemcgregor\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-nz', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Tajik [tg]\n//! author : Orif N. Jr. : https://github.com/orif-jr\n\nimport moment from '../moment';\n\nvar suffixes = {\n 0: '-ум',\n 1: '-ум',\n 2: '-юм',\n 3: '-юм',\n 4: '-ум',\n 5: '-ум',\n 6: '-ум',\n 7: '-ум',\n 8: '-ум',\n 9: '-ум',\n 10: '-ум',\n 12: '-ум',\n 13: '-ум',\n 20: '-ум',\n 30: '-юм',\n 40: '-ум',\n 50: '-ум',\n 60: '-ум',\n 70: '-ум',\n 80: '-ум',\n 90: '-ум',\n 100: '-ум',\n};\n\nexport default moment.defineLocale('tg', {\n months: {\n format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split(\n '_'\n ),\n standalone: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split(\n '_'\n ),\n },\n monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),\n weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split(\n '_'\n ),\n weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'),\n weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Имрӯз соати] LT',\n nextDay: '[Фардо соати] LT',\n lastDay: '[Дирӯз соати] LT',\n nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT',\n lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'баъди %s',\n past: '%s пеш',\n s: 'якчанд сония',\n m: 'як дақиқа',\n mm: '%d дақиқа',\n h: 'як соат',\n hh: '%d соат',\n d: 'як рӯз',\n dd: '%d рӯз',\n M: 'як моҳ',\n MM: '%d моҳ',\n y: 'як сол',\n yy: '%d сол',\n },\n meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'шаб') {\n return hour < 4 ? hour : hour + 12;\n } else if (meridiem === 'субҳ') {\n return hour;\n } else if (meridiem === 'рӯз') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'бегоҳ') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'шаб';\n } else if (hour < 11) {\n return 'субҳ';\n } else if (hour < 16) {\n return 'рӯз';\n } else if (hour < 19) {\n return 'бегоҳ';\n } else {\n return 'шаб';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ум|юм)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 1th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Danish [da]\n//! author : Ulrik Nielsen : https://github.com/mrbase\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('da', {\n months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),\n weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'),\n weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY HH:mm',\n LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',\n },\n calendar: {\n sameDay: '[i dag kl.] LT',\n nextDay: '[i morgen kl.] LT',\n nextWeek: 'på dddd [kl.] LT',\n lastDay: '[i går kl.] LT',\n lastWeek: '[i] dddd[s kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'om %s',\n past: '%s siden',\n s: 'få sekunder',\n ss: '%d sekunder',\n m: 'et minut',\n mm: '%d minutter',\n h: 'en time',\n hh: '%d timer',\n d: 'en dag',\n dd: '%d dage',\n M: 'en måned',\n MM: '%d måneder',\n y: 'et år',\n yy: '%d år',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Turkish [tr]\n//! authors : Erhan Gundogan : https://github.com/erhangundogan,\n//! Burak Yiğit Kaya: https://github.com/BYK\n\nimport moment from '../moment';\n\nvar suffixes = {\n 1: \"'inci\",\n 5: \"'inci\",\n 8: \"'inci\",\n 70: \"'inci\",\n 80: \"'inci\",\n 2: \"'nci\",\n 7: \"'nci\",\n 20: \"'nci\",\n 50: \"'nci\",\n 3: \"'üncü\",\n 4: \"'üncü\",\n 100: \"'üncü\",\n 6: \"'ncı\",\n 9: \"'uncu\",\n 10: \"'uncu\",\n 30: \"'uncu\",\n 60: \"'ıncı\",\n 90: \"'ıncı\",\n};\n\nexport default moment.defineLocale('tr', {\n months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split(\n '_'\n ),\n monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),\n weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split(\n '_'\n ),\n weekdaysShort: 'Paz_Pts_Sal_Çar_Per_Cum_Cts'.split('_'),\n weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),\n meridiem: function (hours, minutes, isLower) {\n if (hours < 12) {\n return isLower ? 'öö' : 'ÖÖ';\n } else {\n return isLower ? 'ös' : 'ÖS';\n }\n },\n meridiemParse: /öö|ÖÖ|ös|ÖS/,\n isPM: function (input) {\n return input === 'ös' || input === 'ÖS';\n },\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün saat] LT',\n nextDay: '[yarın saat] LT',\n nextWeek: '[gelecek] dddd [saat] LT',\n lastDay: '[dün] LT',\n lastWeek: '[geçen] dddd [saat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s sonra',\n past: '%s önce',\n s: 'birkaç saniye',\n ss: '%d saniye',\n m: 'bir dakika',\n mm: '%d dakika',\n h: 'bir saat',\n hh: '%d saat',\n d: 'bir gün',\n dd: '%d gün',\n w: 'bir hafta',\n ww: '%d hafta',\n M: 'bir ay',\n MM: '%d ay',\n y: 'bir yıl',\n yy: '%d yıl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'ıncı\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-user\");\n\t\t}\n\n\t\texport default Async(load);\n\t","import { ApolloLink } from './ApolloLink';\n\nexport const execute = ApolloLink.execute;\n","//! moment.js locale configuration\n//! locale : English (Israel) [en-il]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-il', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n});\n","import arrayWithHoles from \"@babel/runtime/helpers/esm/arrayWithHoles\";\nimport iterableToArrayLimit from \"@babel/runtime/helpers/esm/iterableToArrayLimit\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableRest from \"@babel/runtime/helpers/esm/nonIterableRest\";\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 if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","import { useContext } from 'react';\nimport { IUtils } from '@date-io/core/IUtils';\nimport { MaterialUiPickersDate } from '../../typings/date';\nimport { MuiPickersContext } from '../../MuiPickersUtilsProvider';\n\nexport const checkUtils = (utils: IUtils | null | undefined) => {\n if (!utils) {\n // tslint:disable-next-line\n throw new Error(\n 'Can not find utils in context. You either a) forgot to wrap your component tree in MuiPickersUtilsProvider; or b) mixed named and direct file imports. Recommendation: use named imports from the module index.'\n );\n }\n};\n\nexport function useUtils() {\n const utils = useContext(MuiPickersContext);\n checkUtils(utils);\n\n return utils!;\n}\n","import * as React from 'react';\nimport * as PropTypes from 'prop-types';\nimport { IUtils } from '@date-io/core/IUtils';\nimport { MaterialUiPickersDate } from './typings/date';\n\nexport const MuiPickersContext = React.createContext | null>(null);\n\nexport interface MuiPickersUtilsProviderProps {\n utils: any;\n children: React.ReactNode;\n locale?: any;\n libInstance?: any;\n}\n\nexport const MuiPickersUtilsProvider: React.FC = ({\n utils: Utils,\n children,\n locale,\n libInstance,\n}) => {\n const utils = React.useMemo(() => new Utils({ locale, instance: libInstance }), [\n Utils,\n libInstance,\n locale,\n ]);\n\n return ;\n};\n\nMuiPickersUtilsProvider.propTypes = {\n utils: PropTypes.func.isRequired,\n locale: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n children: PropTypes.oneOfType([\n PropTypes.element.isRequired,\n PropTypes.arrayOf(PropTypes.element.isRequired),\n ]).isRequired,\n};\n\nexport default MuiPickersUtilsProvider;\n","/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { AuthError } from \"@azure/msal-common\";\r\n\r\n/**\r\n * BrowserAuthErrorMessage class containing string constants used by error codes and messages.\r\n */\r\nexport const BrowserConfigurationAuthErrorMessage = {\r\n redirectUriNotSet: {\r\n code: \"redirect_uri_empty\",\r\n desc: \"A redirect URI is required for all calls, and none has been set.\"\r\n },\r\n postLogoutUriNotSet: {\r\n code: \"post_logout_uri_empty\",\r\n desc: \"A post logout redirect has not been set.\"\r\n },\r\n storageNotSupportedError: {\r\n code: \"storage_not_supported\",\r\n desc: \"Given storage configuration option was not supported.\"\r\n },\r\n noRedirectCallbacksSet: {\r\n code: \"no_redirect_callbacks\",\r\n desc: \"No redirect callbacks have been set. Please call setRedirectCallbacks() with the appropriate function arguments before continuing. \" +\r\n \"More information is available here: https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/MSAL-basics.\"\r\n },\r\n invalidCallbackObject: {\r\n code: \"invalid_callback_object\",\r\n desc: \"The object passed for the callback was invalid. \" +\r\n \"More information is available here: https://github.com/AzureAD/microsoft-authentication-library-for-js/wiki/MSAL-basics.\"\r\n },\r\n stubPcaInstanceCalled: {\r\n code: \"stubbed_public_client_application_called\",\r\n desc: \"Stub instance of Public Client Application was called. If using msal-react, please ensure context is not used without a provider. For more visit: aka.ms/msaljs/browser-errors\"\r\n },\r\n inMemRedirectUnavailable: {\r\n code: \"in_mem_redirect_unavailable\",\r\n desc: \"Redirect cannot be supported. In-memory storage was selected and storeAuthStateInCookie=false, which would cause the library to be unable to handle the incoming hash. If you would like to use the redirect API, please use session/localStorage or set storeAuthStateInCookie=true.\"\r\n }\r\n};\r\n\r\n/**\r\n * Browser library error class thrown by the MSAL.js library for SPAs\r\n */\r\nexport class BrowserConfigurationAuthError extends AuthError {\r\n\r\n constructor(errorCode: string, errorMessage?: string) {\r\n super(errorCode, errorMessage);\r\n this.name = \"BrowserConfigurationAuthError\";\r\n\r\n Object.setPrototypeOf(this, BrowserConfigurationAuthError.prototype);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the redirect uri is empty (not set by caller)\r\n */\r\n static createRedirectUriEmptyError(): BrowserConfigurationAuthError {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.redirectUriNotSet.code,\r\n BrowserConfigurationAuthErrorMessage.redirectUriNotSet.desc);\r\n }\r\n\r\n /**\r\n * Creates an error thrown when the post-logout redirect uri is empty (not set by caller)\r\n */\r\n static createPostLogoutRedirectUriEmptyError(): BrowserConfigurationAuthError {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.postLogoutUriNotSet.code,\r\n BrowserConfigurationAuthErrorMessage.postLogoutUriNotSet.desc);\r\n }\r\n\r\n /**\r\n * Creates error thrown when given storage location is not supported.\r\n * @param givenStorageLocation \r\n */\r\n static createStorageNotSupportedError(givenStorageLocation: string): BrowserConfigurationAuthError {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.storageNotSupportedError.code, `${BrowserConfigurationAuthErrorMessage.storageNotSupportedError.desc} Given Location: ${givenStorageLocation}`);\r\n }\r\n\r\n /**\r\n * Creates error thrown when redirect callbacks are not set before calling loginRedirect() or acquireTokenRedirect().\r\n */\r\n static createRedirectCallbacksNotSetError(): BrowserConfigurationAuthError {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.noRedirectCallbacksSet.code, \r\n BrowserConfigurationAuthErrorMessage.noRedirectCallbacksSet.desc);\r\n }\r\n\r\n /**\r\n * Creates error thrown when the stub instance of PublicClientApplication is called.\r\n */\r\n static createStubPcaInstanceCalledError(): BrowserConfigurationAuthError {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.stubPcaInstanceCalled.code,\r\n BrowserConfigurationAuthErrorMessage.stubPcaInstanceCalled.desc);\r\n }\r\n\r\n /*\r\n * Create an error thrown when in-memory storage is used and storeAuthStateInCookie=false.\r\n */\r\n static createInMemoryRedirectUnavailableError(): BrowserConfigurationAuthError {\r\n return new BrowserConfigurationAuthError(BrowserConfigurationAuthErrorMessage.inMemRedirectUnavailable.code, BrowserConfigurationAuthErrorMessage.inMemRedirectUnavailable.desc);\r\n }\r\n}\r\n","//! moment.js locale configuration\n//! locale : Urdu [ur]\n//! author : Sawood Alam : https://github.com/ibnesayeed\n//! author : Zack : https://github.com/ZackVision\n\nimport moment from '../moment';\n\nvar months = [\n 'جنوری',\n 'فروری',\n 'مارچ',\n 'اپریل',\n 'مئی',\n 'جون',\n 'جولائی',\n 'اگست',\n 'ستمبر',\n 'اکتوبر',\n 'نومبر',\n 'دسمبر',\n ],\n days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ'];\n\nexport default moment.defineLocale('ur', {\n months: months,\n monthsShort: months,\n weekdays: days,\n weekdaysShort: days,\n weekdaysMin: days,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd، D MMMM YYYY HH:mm',\n },\n meridiemParse: /صبح|شام/,\n isPM: function (input) {\n return 'شام' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'صبح';\n }\n return 'شام';\n },\n calendar: {\n sameDay: '[آج بوقت] LT',\n nextDay: '[کل بوقت] LT',\n nextWeek: 'dddd [بوقت] LT',\n lastDay: '[گذشتہ روز بوقت] LT',\n lastWeek: '[گذشتہ] dddd [بوقت] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s بعد',\n past: '%s قبل',\n s: 'چند سیکنڈ',\n ss: '%d سیکنڈ',\n m: 'ایک منٹ',\n mm: '%d منٹ',\n h: 'ایک گھنٹہ',\n hh: '%d گھنٹے',\n d: 'ایک دن',\n dd: '%d دن',\n M: 'ایک ماہ',\n MM: '%d ماہ',\n y: 'ایک سال',\n yy: '%d سال',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import { ApolloLink } from './ApolloLink';\n\nexport const empty = ApolloLink.empty;\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","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-accounts\");\n\t\t}\n\n\t\texport default Async(load);\n\t","//! moment.js locale configuration\n//! locale : Italian [it]\n//! author : Lorenzo : https://github.com/aliem\n//! author: Mattia Larentis: https://github.com/nostalgiaz\n//! author: Marco : https://github.com/Manfre98\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('it', {\n months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split(\n '_'\n ),\n monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split(\n '_'\n ),\n weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'),\n weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: function () {\n return (\n '[Oggi a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextDay: function () {\n return (\n '[Domani a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n nextWeek: function () {\n return (\n 'dddd [a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastDay: function () {\n return (\n '[Ieri a' +\n (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : \"ll'\") +\n ']LT'\n );\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return (\n '[La scorsa] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n default:\n return (\n '[Lo scorso] dddd [a' +\n (this.hours() > 1\n ? 'lle '\n : this.hours() === 0\n ? ' '\n : \"ll'\") +\n ']LT'\n );\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'tra %s',\n past: '%s fa',\n s: 'alcuni secondi',\n ss: '%d secondi',\n m: 'un minuto',\n mm: '%d minuti',\n h: \"un'ora\",\n hh: '%d ore',\n d: 'un giorno',\n dd: '%d giorni',\n w: 'una settimana',\n ww: '%d settimane',\n M: 'un mese',\n MM: '%d mesi',\n y: 'un anno',\n yy: '%d anni',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}º/,\n ordinal: '%dº',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Lithuanian [lt]\n//! author : Mindaugas Mozūras : https://github.com/mmozuras\n\nimport moment from '../moment';\n\nvar units = {\n ss: 'sekundė_sekundžių_sekundes',\n m: 'minutė_minutės_minutę',\n mm: 'minutės_minučių_minutes',\n h: 'valanda_valandos_valandą',\n hh: 'valandos_valandų_valandas',\n d: 'diena_dienos_dieną',\n dd: 'dienos_dienų_dienas',\n M: 'mėnuo_mėnesio_mėnesį',\n MM: 'mėnesiai_mėnesių_mėnesius',\n y: 'metai_metų_metus',\n yy: 'metai_metų_metus',\n};\nfunction translateSeconds(number, withoutSuffix, key, isFuture) {\n if (withoutSuffix) {\n return 'kelios sekundės';\n } else {\n return isFuture ? 'kelių sekundžių' : 'kelias sekundes';\n }\n}\nfunction translateSingular(number, withoutSuffix, key, isFuture) {\n return withoutSuffix\n ? forms(key)[0]\n : isFuture\n ? forms(key)[1]\n : forms(key)[2];\n}\nfunction special(number) {\n return number % 10 === 0 || (number > 10 && number < 20);\n}\nfunction forms(key) {\n return units[key].split('_');\n}\nfunction translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n if (number === 1) {\n return (\n result + translateSingular(number, withoutSuffix, key[0], isFuture)\n );\n } else if (withoutSuffix) {\n return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n } else {\n if (isFuture) {\n return result + forms(key)[1];\n } else {\n return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n }\n }\n}\nexport default moment.defineLocale('lt', {\n months: {\n format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split(\n '_'\n ),\n standalone: 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split(\n '_'\n ),\n isFormat: /D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?|MMMM?(\\[[^\\[\\]]*\\]|\\s)+D[oD]?/,\n },\n monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n weekdays: {\n format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split(\n '_'\n ),\n standalone: 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split(\n '_'\n ),\n isFormat: /dddd HH:mm/,\n },\n weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),\n weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'YYYY [m.] MMMM D [d.]',\n LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',\n l: 'YYYY-MM-DD',\n ll: 'YYYY [m.] MMMM D [d.]',\n lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]',\n llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]',\n },\n calendar: {\n sameDay: '[Šiandien] LT',\n nextDay: '[Rytoj] LT',\n nextWeek: 'dddd LT',\n lastDay: '[Vakar] LT',\n lastWeek: '[Praėjusį] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'po %s',\n past: 'prieš %s',\n s: translateSeconds,\n ss: translate,\n m: translateSingular,\n mm: translate,\n h: translateSingular,\n hh: translate,\n d: translateSingular,\n dd: translate,\n M: translateSingular,\n MM: translate,\n y: translateSingular,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-oji/,\n ordinal: function (number) {\n return number + '-oji';\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : French (Canada) [fr-ca]\n//! author : Jonathan Abourbih : https://github.com/jonbca\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('fr-ca', {\n months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split(\n '_'\n ),\n monthsShort: 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'YYYY-MM-DD',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Aujourd’hui à] LT',\n nextDay: '[Demain à] LT',\n nextWeek: 'dddd [à] LT',\n lastDay: '[Hier à] LT',\n lastWeek: 'dddd [dernier à] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dans %s',\n past: 'il y a %s',\n s: 'quelques secondes',\n ss: '%d secondes',\n m: 'une minute',\n mm: '%d minutes',\n h: 'une heure',\n hh: '%d heures',\n d: 'un jour',\n dd: '%d jours',\n M: 'un mois',\n MM: '%d mois',\n y: 'un an',\n yy: '%d ans',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(er|e)/,\n ordinal: function (number, period) {\n switch (period) {\n // Words with masculine grammatical gender: mois, trimestre, jour\n default:\n case 'M':\n case 'Q':\n case 'D':\n case 'DDD':\n case 'd':\n return number + (number === 1 ? 'er' : 'e');\n\n // Words with feminine grammatical gender: semaine\n case 'w':\n case 'W':\n return number + (number === 1 ? 're' : 'e');\n }\n },\n});\n","//! moment.js locale configuration\n//! locale : Uzbek Latin [uz-latn]\n//! author : Rasulbek Mirzayev : github.com/Rasulbeeek\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('uz-latn', {\n months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'),\n weekdays: 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split(\n '_'\n ),\n weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'),\n weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'D MMMM YYYY, dddd HH:mm',\n },\n calendar: {\n sameDay: '[Bugun soat] LT [da]',\n nextDay: '[Ertaga] LT [da]',\n nextWeek: 'dddd [kuni soat] LT [da]',\n lastDay: '[Kecha soat] LT [da]',\n lastWeek: \"[O'tgan] dddd [kuni soat] LT [da]\",\n sameElse: 'L',\n },\n relativeTime: {\n future: 'Yaqin %s ichida',\n past: 'Bir necha %s oldin',\n s: 'soniya',\n ss: '%d soniya',\n m: 'bir daqiqa',\n mm: '%d daqiqa',\n h: 'bir soat',\n hh: '%d soat',\n d: 'bir kun',\n dd: '%d kun',\n M: 'bir oy',\n MM: '%d oy',\n y: 'bir yil',\n yy: '%d yil',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : English (India) [en-in]\n//! author : Jatin Agrawal : https://github.com/jatinag22\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-in', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'h:mm A',\n LTS: 'h:mm:ss A',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY h:mm A',\n LLLL: 'dddd, D MMMM YYYY h:mm A',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 0, // Sunday is the first day of the week.\n doy: 6, // The week that contains Jan 1st is the first week of the year.\n },\n});\n","import { ApolloLink } from './ApolloLink';\n\nexport const from = ApolloLink.from;\n","import objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}","export { empty } from './empty';\nexport { from } from './from';\nexport { split } from './split';\nexport { concat } from './concat';\nexport { execute } from './execute';\nexport { ApolloLink } from './ApolloLink';\n\nexport * from './types';\n","//! moment.js locale configuration\n//! locale : Kazakh [kk]\n//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan\n\nimport moment from '../moment';\n\nvar suffixes = {\n 0: '-ші',\n 1: '-ші',\n 2: '-ші',\n 3: '-ші',\n 4: '-ші',\n 5: '-ші',\n 6: '-шы',\n 7: '-ші',\n 8: '-ші',\n 9: '-шы',\n 10: '-шы',\n 20: '-шы',\n 30: '-шы',\n 40: '-шы',\n 50: '-ші',\n 60: '-шы',\n 70: '-ші',\n 80: '-ші',\n 90: '-шы',\n 100: '-ші',\n};\n\nexport default moment.defineLocale('kk', {\n months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split(\n '_'\n ),\n monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'),\n weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split(\n '_'\n ),\n weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'),\n weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Бүгін сағат] LT',\n nextDay: '[Ертең сағат] LT',\n nextWeek: 'dddd [сағат] LT',\n lastDay: '[Кеше сағат] LT',\n lastWeek: '[Өткен аптаның] dddd [сағат] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s ішінде',\n past: '%s бұрын',\n s: 'бірнеше секунд',\n ss: '%d секунд',\n m: 'бір минут',\n mm: '%d минут',\n h: 'бір сағат',\n hh: '%d сағат',\n d: 'бір күн',\n dd: '%d күн',\n M: 'бір ай',\n MM: '%d ай',\n y: 'бір жыл',\n yy: '%d жыл',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(ші|шы)/,\n ordinal: function (number) {\n var a = number % 10,\n b = number >= 100 ? 100 : null;\n return number + (suffixes[number] || suffixes[a] || suffixes[b]);\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","import {\r\n\tRouter,\r\n\troute,\r\n} from 'preact-router';\r\n\r\nimport {\r\n\tuseState,\r\n} from 'preact/hooks';\r\n\r\n// Azure AD B2C\r\nimport {\r\n\tMsalProvider,\r\n} from \"@azure/msal-react\";\r\n\r\nimport {\r\n\tAuthenticationResult,\r\n\tEventType,\r\n\tPublicClientApplication,\r\n} from \"@azure/msal-browser\";\r\n\r\nimport Cookies from 'universal-cookie';\r\n\r\nimport psl from 'psl';\r\n\r\n// Material UI\r\nimport {\r\n\tcreateMuiTheme,\r\n\tresponsiveFontSizes,\r\n\tThemeProvider\r\n} from '@material-ui/core';\r\n\r\n// Apollo Client (GraphQL)\r\nimport {\r\n\tfrom,\r\n\tApolloClient,\r\n\tApolloProvider,\r\n\tInMemoryCache,\r\n} from '@apollo/client';\r\n\r\nimport {\r\n\tonError,\r\n} from \"@apollo/client/link/error\";\r\n\r\nimport {\r\n\tsetContext\r\n} from \"@apollo/client/link/context\";\r\n\r\nimport {\r\n\tcreateUploadLink,\r\n} from 'apollo-upload-client'\r\n\r\n// Internationalization\r\nimport {\r\n\tIntlProvider,\r\n} from 'preact-i18n';\r\n\r\nimport englishDefinition from '../i18n/en-US.js';\r\nimport spanishDefinition from '../i18n/es-ES.js';\r\nimport frenchDefinition from '../i18n/fr-FR.js';\r\nimport germanDefinition from '../i18n/de-DE.js';\r\nimport italianDefinition from '../i18n/it-IT.js';\r\nimport dutchDefinition from '../i18n/nl-NL.js';\r\n\r\n// Date/time pickers\r\nimport {\r\n\tMuiPickersUtilsProvider,\r\n} from '@material-ui/pickers';\r\n\r\nimport MomentUtils from '@date-io/moment';\r\n\r\nimport root from 'window-or-global';\r\n\r\nimport {\r\n\tclearStoreAndCookies,\r\n\tconfig,\r\n} from '../services/authService';\r\n\r\n// Code-splitting is automated for `routes` directory\r\nimport Account from \"../routes/account\";\r\nimport Accounts from \"../routes/accounts\";\r\nimport BaitTypes from \"../routes/bait-types\";\r\nimport Branch from \"../routes/branch\";\r\nimport Branches from \"../routes/branches\";\r\nimport Device from \"../routes/device\";\r\nimport Devices from \"../routes/devices\";\r\nimport ForgotPassword from \"../routes/forgot-password\";\r\nimport Home from \"../routes/home\";\r\nimport Login from \"../routes/login\";\r\nimport MyAccount from \"../routes/my-account\";\r\nimport ProductionLine from '../routes/production-line';\r\nimport Register from \"../routes/register\";\r\nimport RemoteMonitor from '../routes/remote-monitor';\r\nimport Reports from \"../routes/reports\";\r\nimport ResendVerification from \"../routes/resend-verification\";\r\nimport ResetPassword from \"../routes/reset-password\";\r\nimport SetPassword from \"../routes/set-password\";\r\nimport TermsAndConditions from \"../routes/terms-and-conditions\";\r\nimport User from \"../routes/user\";\r\nimport Users from \"../routes/users\";\r\nimport Visit from \"../routes/visit\";\r\n\r\nconst msalInstance = new PublicClientApplication(config.msalConfig);\r\n\r\n// Apollo GraphQL config\r\nconst httpLink = createUploadLink({\r\n\tcredentials: 'include',\r\n\turi: process.env.PREACT_APP_GRAPHQL_URL,\r\n});\r\n\r\nconst errorLink = onError(({ graphQLErrors, networkError, operation, forward }) => {\r\n\tif (graphQLErrors)\r\n\t\tgraphQLErrors.forEach(({ message, locations, path, extensions }) => {\r\n\t\t\t// console.log(\r\n\t\t\t// \t`[GraphQL error]: Message: ${message}, Location: ${locations}, Path: ${path}, Extensions: ${extensions}`,\r\n\t\t\t// );\r\n\r\n\t\t\tif (extensions && extensions.code === 'authorization') {\r\n\t\t\t\t// Retry the request, returning the new observable\r\n\t\t\t\treturn forward(operation);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t// if (networkError)\r\n\t// \tconsole.log(`[Network error]: ${networkError}`);\r\n});\r\n\r\nconst authLink = setContext(async (_, { headers }) => {\r\n\tconst activeAccount = msalInstance.getActiveAccount();\r\n\r\n\tlet result = {\r\n\t\theaders: {\r\n\t\t\t...headers\r\n\t\t}\r\n\t};\r\n\r\n\tif (activeAccount) {\r\n\t\ttry {\r\n\t\t\tif (!activeAccount.username && activeAccount.idTokenClaims['unique_name']) {\r\n\t\t\t\t// Make sure active account has username set properly (fixes loginHint error)\r\n\t\t\t\tactiveAccount.username = activeAccount.idTokenClaims['unique_name'];\r\n\t\t\t}\r\n\r\n\t\t\tconst response = await msalInstance\r\n\t\t\t\t.acquireTokenSilent({\r\n\t\t\t\t\taccount: activeAccount,\r\n\t\t\t\t\tscopes: []\r\n\t\t\t\t});\r\n\r\n\t\t\tresult = {\r\n\t\t\t\theaders: {\r\n\t\t\t\t\t...headers,\r\n\t\t\t\t\tauthorization: response && response.idToken ? `Bearer ${response.idToken}` : \"\",\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t\t} catch (error) {\r\n\t\t\tconsole.error(error);\r\n\r\n\t\t\tawait msalInstance.loginRedirect();\r\n\t\t}\r\n\t}\r\n\r\n\treturn result;\r\n})\r\n\r\nconst link = from([\r\n\tauthLink,\r\n\terrorLink,\r\n\thttpLink\r\n]);\r\n\r\nconst client = new ApolloClient({\r\n\tconnectToDevTools: true,\r\n\tcache: new InMemoryCache(),\r\n\tlink,\r\n});\r\n\r\nconst theme = responsiveFontSizes(\r\n\tcreateMuiTheme({\r\n\t\tbreakpoints: {\r\n\t\t\tvalues: {\r\n\t\t\t\txs: 0,\r\n\t\t\t\tsm: 600,\r\n\t\t\t\tmd: 960,\r\n\t\t\t\tlg: 1440,\r\n\t\t\t\txl: 1920,\r\n\t\t\t},\r\n\t\t},\r\n\t\tpalette: {\r\n\t\t\tprimary: {\r\n\t\t\t\tmain: \"#BA0C2F\"\r\n\t\t\t},\r\n\t\t\tsecondary: {\r\n\t\t\t\tmain: \"#02A2B2\"\r\n\t\t\t},\r\n\t\t\tinfo: {\r\n\t\t\t\tmain: \"#FFFFFF\",\r\n\t\t\t\tlight: \"#707070\"\r\n\t\t\t}\r\n\t\t},\r\n\t\ttypography: {\r\n\t\t\tfontFamily: [\r\n\t\t\t\t'Lato',\r\n\t\t\t\t'sans-serif'\r\n\t\t\t].join(','),\r\n\t\t\th2: {\r\n\t\t\t\tcolor: \"#BA0C2F\",\r\n\t\t\t\tfontWeight: 'bold'\r\n\t\t\t},\r\n\t\t\th3: {\r\n\t\t\t\tcolor: \"#BA0C2F\",\r\n\t\t\t\tfontWeight: 'bold'\r\n\t\t\t},\r\n\t\t\th4: {\r\n\t\t\t\tcolor: \"#BA0C2F\",\r\n\t\t\t\tfontWeight: 'bold'\r\n\t\t\t}\r\n\t\t},\r\n\t})\r\n);\r\n\r\nconst MainContent = (props) => {\r\n\tconst {\r\n\t\tsetLanguageDefinition,\r\n\t} = props;\r\n\tconst [tokenReceived, setTokenReceived] = useState(false);\r\n\r\n\t// Call this function to change language \r\n\tconst changeLanguage = (lang) => {\r\n\r\n\t\tswitch (lang) {\r\n\t\t\tcase 'es-ES':\r\n\t\t\t\tsetLanguageDefinition(spanishDefinition);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'fr-FR':\r\n\t\t\t\tsetLanguageDefinition(frenchDefinition);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'de-DE':\r\n\t\t\t\tsetLanguageDefinition(germanDefinition);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'it-IT':\r\n\t\t\t\tsetLanguageDefinition(italianDefinition);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'nl-NL':\r\n\t\t\t\tsetLanguageDefinition(dutchDefinition);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'en-US':\r\n\t\t\tdefault:\r\n\t\t\t\tsetLanguageDefinition(englishDefinition);\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t};\r\n\r\n\t// Handle routes separately if needed\r\n\tconst handleRoute = async (args) => {\r\n\t\tconst allowAnonymous = [\r\n\t\t\t'/forgot-password',\r\n\t\t\t'/login',\r\n\t\t\t'/register',\r\n\t\t\t'/reset-password',\r\n\t\t\t'/set-password',\r\n\t\t\t'/resend-verification'\r\n\t\t];\r\n\r\n\t\t// Scroll to top\r\n\t\troot.scrollTo({\r\n\t\t\ttop: 0\r\n\t\t});\r\n\r\n\t\tif (\r\n\t\t\targs.url.startsWith('/set-password') ||\r\n\t\t\targs.url.startsWith('/reset-password')\r\n\t\t) {\r\n\t\t\t// Validate email and token before routing\r\n\t\t\tif (\r\n\t\t\t\t!args.current.props.email ||\r\n\t\t\t\t!args.current.props.token\r\n\t\t\t) {\r\n\t\t\t\troute('/login', true);\r\n\t\t\t}\r\n\r\n\t\t} else if (\r\n\t\t\targs.url.startsWith('/Account/Login')\r\n\t\t) {\r\n\t\t\t// Validate for incorrect URL coming from bellsensing.com (Task #2252)\r\n\t\t\troute('/', true);\r\n\t\t} else if (!allowAnonymous.includes(args.url)) {\r\n\t\t\tmsalInstance\r\n\t\t\t\t.addEventCallback(async (event) => {\r\n\t\t\t\t\t// set active account after redirect\r\n\t\t\t\t\tif (event.eventType === EventType.LOGIN_SUCCESS && event.payload) {\r\n\t\t\t\t\t\tconst payload = event.payload as AuthenticationResult;\r\n\r\n\t\t\t\t\t\t/**\r\n\t\t\t\t\t\t * We need to reject id tokens that were not issued with the default sign-in policy.\r\n\t\t\t\t\t\t * \"acr\" claim in the token tells us what policy is used (NOTE: for new policies (v2.0), use \"tfp\" instead of \"acr\").\r\n\t\t\t\t\t\t * To learn more about B2C tokens, visit https://docs.microsoft.com/en-us/azure/active-directory-b2c/tokens-overview\r\n\t\t\t\t\t\t */\r\n\t\t\t\t\t\tif (payload && payload.idTokenClaims && !payload.idTokenClaims[\"unique_name\"]) {\r\n\t\t\t\t\t\t\t// window.alert(\"Password has been reset successfully. \\nPlease sign-in with your new password\");\r\n\r\n\t\t\t\t\t\t\treturn await msalInstance.logoutRedirect();\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tconst account = payload.account;\r\n\r\n\t\t\t\t\t\tmsalInstance.setActiveAccount(account);\r\n\r\n\t\t\t\t\t\tsetTokenReceived(true);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t// Handle auth redired/do all initial setup for msal\r\n\t\t\ttry {\r\n\t\t\t\tlet authResult = await msalInstance.handleRedirectPromise();\r\n\r\n\t\t\t\t// Account selection logic is app dependent. Adjust as needed for different use cases.\r\n\t\t\t\t// Set active acccount on page load\r\n\t\t\t\tconst accounts = msalInstance.getAllAccounts();\r\n\r\n\t\t\t\tif (accounts.length > 0) {\r\n\t\t\t\t\tmsalInstance.setActiveAccount(accounts[0]);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlet account;\r\n\r\n\t\t\t\tif (authResult) {\r\n\t\t\t\t\taccount = authResult.account;\r\n\t\t\t\t} else {\r\n\t\t\t\t\taccount = msalInstance.getActiveAccount();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (account && authResult) {\r\n\t\t\t\t\tsetTokenReceived(true);\r\n\t\t\t\t} else if (account) {\r\n\t\t\t\t\tmsalInstance.setActiveAccount(account);\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await msalInstance\r\n\t\t\t\t\t\t\t.acquireTokenSilent({\r\n\t\t\t\t\t\t\t\taccount,\r\n\t\t\t\t\t\t\t\tscopes: []\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tif (response)\r\n\t\t\t\t\t\t\tsetTokenReceived(true);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tawait msalInstance.loginRedirect();\r\n\r\n\t\t\t\t\t} catch (err) {\r\n\t\t\t\t\t\tconsole.error(err);\r\n\r\n\t\t\t\t\t\t// Prevent blank page issue\r\n\t\t\t\t\t\tawait clearStoreAndCookies(client);\r\n\r\n\t\t\t\t\t\tawait msalInstance.loginRedirect();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Prevent blank page issue\r\n\t\t\t\t\tawait clearStoreAndCookies(client);\r\n\r\n\t\t\t\t\t// Redirect anonymous user to login page \r\n\t\t\t\t\tawait msalInstance.loginRedirect();\r\n\t\t\t\t}\r\n\t\t\t} catch (err) {\r\n\t\t\t\tconsole.error(err);\r\n\r\n\t\t\t\t// Redirect anonymous user to login page \r\n\t\t\t\tawait msalInstance.loginRedirect();\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t{/* @ts-ignore */}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t)\r\n};\r\n\r\nconst App = () => {\r\n\tconst [languageDefinition, setLanguageDefinition] = useState(englishDefinition);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t)\r\n};\r\n\r\nexport default App;\r\n","'use strict';\n\nmodule.exports = function (data, opts) {\n if (!opts) opts = {};\n if (typeof opts === 'function') opts = { cmp: opts };\n var cycles = (typeof opts.cycles === 'boolean') ? opts.cycles : false;\n\n var cmp = opts.cmp && (function (f) {\n return function (node) {\n return function (a, b) {\n var aobj = { key: a, value: node[a] };\n var bobj = { key: b, value: node[b] };\n return f(aobj, bobj);\n };\n };\n })(opts.cmp);\n\n var seen = [];\n return (function stringify (node) {\n if (node && node.toJSON && typeof node.toJSON === 'function') {\n node = node.toJSON();\n }\n\n if (node === undefined) return;\n if (typeof node == 'number') return isFinite(node) ? '' + node : 'null';\n if (typeof node !== 'object') return JSON.stringify(node);\n\n var i, out;\n if (Array.isArray(node)) {\n out = '[';\n for (i = 0; i < node.length; i++) {\n if (i) out += ',';\n out += stringify(node[i]) || 'null';\n }\n return out + ']';\n }\n\n if (node === null) return 'null';\n\n if (seen.indexOf(node) !== -1) {\n if (cycles) return JSON.stringify('__cycle__');\n throw new TypeError('Converting circular structure to JSON');\n }\n\n var seenIndex = seen.push(node) - 1;\n var keys = Object.keys(node).sort(cmp && cmp(node));\n out = '';\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n var value = stringify(node[key]);\n\n if (!value) continue;\n if (out) out += ',';\n out += JSON.stringify(key) + ':' + value;\n }\n seen.splice(seenIndex, 1);\n return '{' + out + '}';\n })(data);\n};\n","//! moment.js locale configuration\n//! locale : Malay [ms-my]\n//! note : DEPRECATED, the correct one is [ms]\n//! author : Weldan Jamili : https://github.com/weldan\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('ms-my', {\n months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY [pukul] HH.mm',\n LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm',\n },\n meridiemParse: /pagi|tengahari|petang|malam/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === 'pagi') {\n return hour;\n } else if (meridiem === 'tengahari') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === 'petang' || meridiem === 'malam') {\n return hour + 12;\n }\n },\n meridiem: function (hours, minutes, isLower) {\n if (hours < 11) {\n return 'pagi';\n } else if (hours < 15) {\n return 'tengahari';\n } else if (hours < 19) {\n return 'petang';\n } else {\n return 'malam';\n }\n },\n calendar: {\n sameDay: '[Hari ini pukul] LT',\n nextDay: '[Esok pukul] LT',\n nextWeek: 'dddd [pukul] LT',\n lastDay: '[Kelmarin pukul] LT',\n lastWeek: 'dddd [lepas pukul] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'dalam %s',\n past: '%s yang lepas',\n s: 'beberapa saat',\n ss: '%d saat',\n m: 'seminit',\n mm: '%d minit',\n h: 'sejam',\n hh: '%d jam',\n d: 'sehari',\n dd: '%d hari',\n M: 'sebulan',\n MM: '%d bulan',\n y: 'setahun',\n yy: '%d tahun',\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Arabic (Lybia) [ar-ly]\n//! author : Ali Hmer: https://github.com/kikoanis\n\nimport moment from '../moment';\n\nvar symbolMap = {\n 1: '1',\n 2: '2',\n 3: '3',\n 4: '4',\n 5: '5',\n 6: '6',\n 7: '7',\n 8: '8',\n 9: '9',\n 0: '0',\n },\n pluralForm = function (n) {\n return n === 0\n ? 0\n : n === 1\n ? 1\n : n === 2\n ? 2\n : n % 100 >= 3 && n % 100 <= 10\n ? 3\n : n % 100 >= 11\n ? 4\n : 5;\n },\n plurals = {\n s: [\n 'أقل من ثانية',\n 'ثانية واحدة',\n ['ثانيتان', 'ثانيتين'],\n '%d ثوان',\n '%d ثانية',\n '%d ثانية',\n ],\n m: [\n 'أقل من دقيقة',\n 'دقيقة واحدة',\n ['دقيقتان', 'دقيقتين'],\n '%d دقائق',\n '%d دقيقة',\n '%d دقيقة',\n ],\n h: [\n 'أقل من ساعة',\n 'ساعة واحدة',\n ['ساعتان', 'ساعتين'],\n '%d ساعات',\n '%d ساعة',\n '%d ساعة',\n ],\n d: [\n 'أقل من يوم',\n 'يوم واحد',\n ['يومان', 'يومين'],\n '%d أيام',\n '%d يومًا',\n '%d يوم',\n ],\n M: [\n 'أقل من شهر',\n 'شهر واحد',\n ['شهران', 'شهرين'],\n '%d أشهر',\n '%d شهرا',\n '%d شهر',\n ],\n y: [\n 'أقل من عام',\n 'عام واحد',\n ['عامان', 'عامين'],\n '%d أعوام',\n '%d عامًا',\n '%d عام',\n ],\n },\n pluralize = function (u) {\n return function (number, withoutSuffix, string, isFuture) {\n var f = pluralForm(number),\n str = plurals[u][pluralForm(number)];\n if (f === 2) {\n str = str[withoutSuffix ? 0 : 1];\n }\n return str.replace(/%d/i, number);\n };\n },\n months = [\n 'يناير',\n 'فبراير',\n 'مارس',\n 'أبريل',\n 'مايو',\n 'يونيو',\n 'يوليو',\n 'أغسطس',\n 'سبتمبر',\n 'أكتوبر',\n 'نوفمبر',\n 'ديسمبر',\n ];\n\nexport default moment.defineLocale('ar-ly', {\n months: months,\n monthsShort: months,\n weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),\n weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),\n weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/\\u200FM/\\u200FYYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /ص|م/,\n isPM: function (input) {\n return 'م' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'ص';\n } else {\n return 'م';\n }\n },\n calendar: {\n sameDay: '[اليوم عند الساعة] LT',\n nextDay: '[غدًا عند الساعة] LT',\n nextWeek: 'dddd [عند الساعة] LT',\n lastDay: '[أمس عند الساعة] LT',\n lastWeek: 'dddd [عند الساعة] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'بعد %s',\n past: 'منذ %s',\n s: pluralize('s'),\n ss: pluralize('s'),\n m: pluralize('m'),\n mm: pluralize('m'),\n h: pluralize('h'),\n hh: pluralize('h'),\n d: pluralize('d'),\n dd: pluralize('d'),\n M: pluralize('M'),\n MM: pluralize('M'),\n y: pluralize('y'),\n yy: pluralize('y'),\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string\n .replace(/\\d/g, function (match) {\n return symbolMap[match];\n })\n .replace(/,/g, '،');\n },\n week: {\n dow: 6, // Saturday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Finnish [fi]\n//! author : Tarmo Aidantausta : https://github.com/bleadof\n\nimport moment from '../moment';\n\nvar numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(\n ' '\n ),\n numbersFuture = [\n 'nolla',\n 'yhden',\n 'kahden',\n 'kolmen',\n 'neljän',\n 'viiden',\n 'kuuden',\n numbersPast[7],\n numbersPast[8],\n numbersPast[9],\n ];\nfunction translate(number, withoutSuffix, key, isFuture) {\n var result = '';\n switch (key) {\n case 's':\n return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n case 'ss':\n result = isFuture ? 'sekunnin' : 'sekuntia';\n break;\n case 'm':\n return isFuture ? 'minuutin' : 'minuutti';\n case 'mm':\n result = isFuture ? 'minuutin' : 'minuuttia';\n break;\n case 'h':\n return isFuture ? 'tunnin' : 'tunti';\n case 'hh':\n result = isFuture ? 'tunnin' : 'tuntia';\n break;\n case 'd':\n return isFuture ? 'päivän' : 'päivä';\n case 'dd':\n result = isFuture ? 'päivän' : 'päivää';\n break;\n case 'M':\n return isFuture ? 'kuukauden' : 'kuukausi';\n case 'MM':\n result = isFuture ? 'kuukauden' : 'kuukautta';\n break;\n case 'y':\n return isFuture ? 'vuoden' : 'vuosi';\n case 'yy':\n result = isFuture ? 'vuoden' : 'vuotta';\n break;\n }\n result = verbalNumber(number, isFuture) + ' ' + result;\n return result;\n}\nfunction verbalNumber(number, isFuture) {\n return number < 10\n ? isFuture\n ? numbersFuture[number]\n : numbersPast[number]\n : number;\n}\n\nexport default moment.defineLocale('fi', {\n months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split(\n '_'\n ),\n monthsShort: 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split(\n '_'\n ),\n weekdays: 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split(\n '_'\n ),\n weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'),\n weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'),\n longDateFormat: {\n LT: 'HH.mm',\n LTS: 'HH.mm.ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM[ta] YYYY',\n LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm',\n LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',\n l: 'D.M.YYYY',\n ll: 'Do MMM YYYY',\n lll: 'Do MMM YYYY, [klo] HH.mm',\n llll: 'ddd, Do MMM YYYY, [klo] HH.mm',\n },\n calendar: {\n sameDay: '[tänään] [klo] LT',\n nextDay: '[huomenna] [klo] LT',\n nextWeek: 'dddd [klo] LT',\n lastDay: '[eilen] [klo] LT',\n lastWeek: '[viime] dddd[na] [klo] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s päästä',\n past: '%s sitten',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","import { h, Component } from 'preact';\n\nconst PENDING = {};\n\n// Given a VNode, finds its previous element sibling\nfunction getPreviousSibling(vnode, inner) {\n\t// in an element parent with no preceeding siblings means we're the first child\n\tif (typeof vnode.type === 'string') return null;\n\tconst parent = vnode.__;\n\tif (!parent) return;\n\tlet children = parent.__k;\n\tif (children) {\n\t\tif (!Array.isArray(children)) children = [children];\n\t\t// only search previous children\n\t\tlet end = children.indexOf(vnode);\n\t\tif (end === -1) end = children.length;\n\t\tfor (let i=end; i--; ) {\n\t\t\tconst child = children[i];\n\t\t\tconst dom = child && child.__e || getPreviousSibling(child, true);\n\t\t\tif (dom) return dom;\n\t\t}\n\t}\n\tif (!inner) return getPreviousSibling(parent);\n}\n\nexport default function async(load) {\n\tlet component;\n\n\tfunction AsyncComponent() {\n\t\tComponent.call(this);\n\n\t\tif (!component) {\n\t\t\tthis.componentWillMount = () => {\n\t\t\t\tload((mod) => {\n\t\t\t\t\tcomponent = (mod && mod.default) || mod;\n\t\t\t\t\tthis.setState({});\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tthis.shouldComponentUpdate = () => component != null;\n\t\t}\n\n\t\tthis.render = (props) => {\n\t\t\tif (component) {\n\t\t\t\treturn h(component, props);\n\t\t\t}\n\n\t\t\tconst prev = getPreviousSibling(this.__v);\n\t\t\tconst me = prev && prev.nextSibling || (this.__P || this._parentDom).firstChild;\n\n\t\t\treturn (\n\t\t\t\tme &&\n\t\t\t\th(me.localName, {\n\t\t\t\t\tdangerouslySetInnerHTML: PENDING,\n\t\t\t\t})\n\t\t\t);\n\t\t};\n\t}\n\n\tAsyncComponent.preload = load;\n\t(AsyncComponent.prototype = new Component()).constructor = AsyncComponent;\n\n\treturn AsyncComponent;\n}\n","//! moment.js locale configuration\n//! locale : Belarusian [be]\n//! author : Dmitry Demidov : https://github.com/demidov91\n//! author: Praleska: http://praleska.pro/\n//! Author : Menelion Elensúle : https://github.com/Oire\n\nimport moment from '../moment';\n\nfunction plural(word, num) {\n var forms = word.split('_');\n return num % 10 === 1 && num % 100 !== 11\n ? forms[0]\n : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)\n ? forms[1]\n : forms[2];\n}\nfunction relativeTimeWithPlural(number, withoutSuffix, key) {\n var format = {\n ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',\n mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',\n hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',\n dd: 'дзень_дні_дзён',\n MM: 'месяц_месяцы_месяцаў',\n yy: 'год_гады_гадоў',\n };\n if (key === 'm') {\n return withoutSuffix ? 'хвіліна' : 'хвіліну';\n } else if (key === 'h') {\n return withoutSuffix ? 'гадзіна' : 'гадзіну';\n } else {\n return number + ' ' + plural(format[key], +number);\n }\n}\n\nexport default moment.defineLocale('be', {\n months: {\n format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split(\n '_'\n ),\n standalone: 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split(\n '_'\n ),\n },\n monthsShort: 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split(\n '_'\n ),\n weekdays: {\n format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split(\n '_'\n ),\n standalone: 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split(\n '_'\n ),\n isFormat: /\\[ ?[Ууў] ?(?:мінулую|наступную)? ?\\] ?dddd/,\n },\n weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY г.',\n LLL: 'D MMMM YYYY г., HH:mm',\n LLLL: 'dddd, D MMMM YYYY г., HH:mm',\n },\n calendar: {\n sameDay: '[Сёння ў] LT',\n nextDay: '[Заўтра ў] LT',\n lastDay: '[Учора ў] LT',\n nextWeek: function () {\n return '[У] dddd [ў] LT';\n },\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n case 3:\n case 5:\n case 6:\n return '[У мінулую] dddd [ў] LT';\n case 1:\n case 2:\n case 4:\n return '[У мінулы] dddd [ў] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'праз %s',\n past: '%s таму',\n s: 'некалькі секунд',\n m: relativeTimeWithPlural,\n mm: relativeTimeWithPlural,\n h: relativeTimeWithPlural,\n hh: relativeTimeWithPlural,\n d: 'дзень',\n dd: relativeTimeWithPlural,\n M: 'месяц',\n MM: relativeTimeWithPlural,\n y: 'год',\n yy: relativeTimeWithPlural,\n },\n meridiemParse: /ночы|раніцы|дня|вечара/,\n isPM: function (input) {\n return /^(дня|вечара)$/.test(input);\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 4) {\n return 'ночы';\n } else if (hour < 12) {\n return 'раніцы';\n } else if (hour < 17) {\n return 'дня';\n } else {\n return 'вечара';\n }\n },\n dayOfMonthOrdinalParse: /\\d{1,2}-(і|ы|га)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'M':\n case 'd':\n case 'DDD':\n case 'w':\n case 'W':\n return (number % 10 === 2 || number % 10 === 3) &&\n number % 100 !== 12 &&\n number % 100 !== 13\n ? number + '-і'\n : number + '-ы';\n case 'D':\n return number + '-га';\n default:\n return number;\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : English (United Kingdom) [en-gb]\n//! author : Chris Gedrim : https://github.com/chrisgedrim\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('en-gb', {\n months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split(\n '_'\n ),\n monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split(\n '_'\n ),\n weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[Today at] LT',\n nextDay: '[Tomorrow at] LT',\n nextWeek: 'dddd [at] LT',\n lastDay: '[Yesterday at] LT',\n lastWeek: '[Last] dddd [at] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'in %s',\n past: '%s ago',\n s: 'a few seconds',\n ss: '%d seconds',\n m: 'a minute',\n mm: '%d minutes',\n h: 'an hour',\n hh: '%d hours',\n d: 'a day',\n dd: '%d days',\n M: 'a month',\n MM: '%d months',\n y: 'a year',\n yy: '%d years',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(st|nd|rd|th)/,\n ordinal: function (number) {\n var b = number % 10,\n output =\n ~~((number % 100) / 10) === 1\n ? 'th'\n : b === 1\n ? 'st'\n : b === 2\n ? 'nd'\n : b === 3\n ? 'rd'\n : 'th';\n return number + output;\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Chinese (Macau) [zh-mo]\n//! author : Ben : https://github.com/ben-lin\n//! author : Chris Lam : https://github.com/hehachris\n//! author : Tan Yuanhong : https://github.com/le0tan\n\nimport moment from '../moment';\n\nexport default moment.defineLocale('zh-mo', {\n months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(\n '_'\n ),\n monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(\n '_'\n ),\n weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),\n weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'),\n weekdaysMin: '日_一_二_三_四_五_六'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD/MM/YYYY',\n LL: 'YYYY年M月D日',\n LLL: 'YYYY年M月D日 HH:mm',\n LLLL: 'YYYY年M月D日dddd HH:mm',\n l: 'D/M/YYYY',\n ll: 'YYYY年M月D日',\n lll: 'YYYY年M月D日 HH:mm',\n llll: 'YYYY年M月D日dddd HH:mm',\n },\n meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,\n meridiemHour: function (hour, meridiem) {\n if (hour === 12) {\n hour = 0;\n }\n if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {\n return hour;\n } else if (meridiem === '中午') {\n return hour >= 11 ? hour : hour + 12;\n } else if (meridiem === '下午' || meridiem === '晚上') {\n return hour + 12;\n }\n },\n meridiem: function (hour, minute, isLower) {\n var hm = hour * 100 + minute;\n if (hm < 600) {\n return '凌晨';\n } else if (hm < 900) {\n return '早上';\n } else if (hm < 1130) {\n return '上午';\n } else if (hm < 1230) {\n return '中午';\n } else if (hm < 1800) {\n return '下午';\n } else {\n return '晚上';\n }\n },\n calendar: {\n sameDay: '[今天] LT',\n nextDay: '[明天] LT',\n nextWeek: '[下]dddd LT',\n lastDay: '[昨天] LT',\n lastWeek: '[上]dddd LT',\n sameElse: 'L',\n },\n dayOfMonthOrdinalParse: /\\d{1,2}(日|月|週)/,\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'DDD':\n return number + '日';\n case 'M':\n return number + '月';\n case 'w':\n case 'W':\n return number + '週';\n default:\n return number;\n }\n },\n relativeTime: {\n future: '%s內',\n past: '%s前',\n s: '幾秒',\n ss: '%d 秒',\n m: '1 分鐘',\n mm: '%d 分鐘',\n h: '1 小時',\n hh: '%d 小時',\n d: '1 天',\n dd: '%d 天',\n M: '1 個月',\n MM: '%d 個月',\n y: '1 年',\n yy: '%d 年',\n },\n});\n","//! moment.js locale configuration\n//! locale : Icelandic [is]\n//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik\n\nimport moment from '../moment';\n\nfunction plural(n) {\n if (n % 100 === 11) {\n return true;\n } else if (n % 10 === 1) {\n return false;\n }\n return true;\n}\nfunction translate(number, withoutSuffix, key, isFuture) {\n var result = number + ' ';\n switch (key) {\n case 's':\n return withoutSuffix || isFuture\n ? 'nokkrar sekúndur'\n : 'nokkrum sekúndum';\n case 'ss':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum')\n );\n }\n return result + 'sekúnda';\n case 'm':\n return withoutSuffix ? 'mínúta' : 'mínútu';\n case 'mm':\n if (plural(number)) {\n return (\n result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum')\n );\n } else if (withoutSuffix) {\n return result + 'mínúta';\n }\n return result + 'mínútu';\n case 'hh':\n if (plural(number)) {\n return (\n result +\n (withoutSuffix || isFuture\n ? 'klukkustundir'\n : 'klukkustundum')\n );\n }\n return result + 'klukkustund';\n case 'd':\n if (withoutSuffix) {\n return 'dagur';\n }\n return isFuture ? 'dag' : 'degi';\n case 'dd':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'dagar';\n }\n return result + (isFuture ? 'daga' : 'dögum');\n } else if (withoutSuffix) {\n return result + 'dagur';\n }\n return result + (isFuture ? 'dag' : 'degi');\n case 'M':\n if (withoutSuffix) {\n return 'mánuður';\n }\n return isFuture ? 'mánuð' : 'mánuði';\n case 'MM':\n if (plural(number)) {\n if (withoutSuffix) {\n return result + 'mánuðir';\n }\n return result + (isFuture ? 'mánuði' : 'mánuðum');\n } else if (withoutSuffix) {\n return result + 'mánuður';\n }\n return result + (isFuture ? 'mánuð' : 'mánuði');\n case 'y':\n return withoutSuffix || isFuture ? 'ár' : 'ári';\n case 'yy':\n if (plural(number)) {\n return result + (withoutSuffix || isFuture ? 'ár' : 'árum');\n }\n return result + (withoutSuffix || isFuture ? 'ár' : 'ári');\n }\n}\n\nexport default moment.defineLocale('is', {\n months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split(\n '_'\n ),\n monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),\n weekdays: 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split(\n '_'\n ),\n weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'),\n weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D. MMMM YYYY',\n LLL: 'D. MMMM YYYY [kl.] H:mm',\n LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm',\n },\n calendar: {\n sameDay: '[í dag kl.] LT',\n nextDay: '[á morgun kl.] LT',\n nextWeek: 'dddd [kl.] LT',\n lastDay: '[í gær kl.] LT',\n lastWeek: '[síðasta] dddd [kl.] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'eftir %s',\n past: 'fyrir %s síðan',\n s: translate,\n ss: translate,\n m: translate,\n mm: translate,\n h: 'klukkustund',\n hh: translate,\n d: translate,\n dd: translate,\n M: translate,\n MM: translate,\n y: translate,\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 4, // The week that contains Jan 4th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Turkmen [tk]\n//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy\n\nimport moment from '../moment';\n\nvar suffixes = {\n 1: \"'inji\",\n 5: \"'inji\",\n 8: \"'inji\",\n 70: \"'inji\",\n 80: \"'inji\",\n 2: \"'nji\",\n 7: \"'nji\",\n 20: \"'nji\",\n 50: \"'nji\",\n 3: \"'ünji\",\n 4: \"'ünji\",\n 100: \"'ünji\",\n 6: \"'njy\",\n 9: \"'unjy\",\n 10: \"'unjy\",\n 30: \"'unjy\",\n 60: \"'ynjy\",\n 90: \"'ynjy\",\n};\n\nexport default moment.defineLocale('tk', {\n months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split(\n '_'\n ),\n monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'),\n weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split(\n '_'\n ),\n weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'),\n weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd, D MMMM YYYY HH:mm',\n },\n calendar: {\n sameDay: '[bugün sagat] LT',\n nextDay: '[ertir sagat] LT',\n nextWeek: '[indiki] dddd [sagat] LT',\n lastDay: '[düýn] LT',\n lastWeek: '[geçen] dddd [sagat] LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: '%s soň',\n past: '%s öň',\n s: 'birnäçe sekunt',\n m: 'bir minut',\n mm: '%d minut',\n h: 'bir sagat',\n hh: '%d sagat',\n d: 'bir gün',\n dd: '%d gün',\n M: 'bir aý',\n MM: '%d aý',\n y: 'bir ýyl',\n yy: '%d ýyl',\n },\n ordinal: function (number, period) {\n switch (period) {\n case 'd':\n case 'D':\n case 'Do':\n case 'DD':\n return number;\n default:\n if (number === 0) {\n // special case for zero\n return number + \"'unjy\";\n }\n var a = number % 10,\n b = (number % 100) - a,\n c = number >= 100 ? 100 : null;\n return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n }\n },\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\nvar nodejsCustomInspectSymbol = typeof Symbol === 'function' && typeof Symbol.for === 'function' ? Symbol.for('nodejs.util.inspect.custom') : undefined;\nexport default nodejsCustomInspectSymbol;\n","//! moment.js locale configuration\n//! locale : Croatian [hr]\n//! author : Bojan Marković : https://github.com/bmarkovic\n\nimport moment from '../moment';\n\nfunction translate(number, withoutSuffix, key) {\n var result = number + ' ';\n switch (key) {\n case 'ss':\n if (number === 1) {\n result += 'sekunda';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sekunde';\n } else {\n result += 'sekundi';\n }\n return result;\n case 'm':\n return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n case 'mm':\n if (number === 1) {\n result += 'minuta';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'minute';\n } else {\n result += 'minuta';\n }\n return result;\n case 'h':\n return withoutSuffix ? 'jedan sat' : 'jednog sata';\n case 'hh':\n if (number === 1) {\n result += 'sat';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'sata';\n } else {\n result += 'sati';\n }\n return result;\n case 'dd':\n if (number === 1) {\n result += 'dan';\n } else {\n result += 'dana';\n }\n return result;\n case 'MM':\n if (number === 1) {\n result += 'mjesec';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'mjeseca';\n } else {\n result += 'mjeseci';\n }\n return result;\n case 'yy':\n if (number === 1) {\n result += 'godina';\n } else if (number === 2 || number === 3 || number === 4) {\n result += 'godine';\n } else {\n result += 'godina';\n }\n return result;\n }\n}\n\nexport default moment.defineLocale('hr', {\n months: {\n format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split(\n '_'\n ),\n standalone: 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split(\n '_'\n ),\n },\n monthsShort: 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split(\n '_'\n ),\n monthsParseExact: true,\n weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split(\n '_'\n ),\n weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),\n weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),\n weekdaysParseExact: true,\n longDateFormat: {\n LT: 'H:mm',\n LTS: 'H:mm:ss',\n L: 'DD.MM.YYYY',\n LL: 'Do MMMM YYYY',\n LLL: 'Do MMMM YYYY H:mm',\n LLLL: 'dddd, Do MMMM YYYY H:mm',\n },\n calendar: {\n sameDay: '[danas u] LT',\n nextDay: '[sutra u] LT',\n nextWeek: function () {\n switch (this.day()) {\n case 0:\n return '[u] [nedjelju] [u] LT';\n case 3:\n return '[u] [srijedu] [u] LT';\n case 6:\n return '[u] [subotu] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[u] dddd [u] LT';\n }\n },\n lastDay: '[jučer u] LT',\n lastWeek: function () {\n switch (this.day()) {\n case 0:\n return '[prošlu] [nedjelju] [u] LT';\n case 3:\n return '[prošlu] [srijedu] [u] LT';\n case 6:\n return '[prošle] [subote] [u] LT';\n case 1:\n case 2:\n case 4:\n case 5:\n return '[prošli] dddd [u] LT';\n }\n },\n sameElse: 'L',\n },\n relativeTime: {\n future: 'za %s',\n past: 'prije %s',\n s: 'par sekundi',\n ss: translate,\n m: translate,\n mm: translate,\n h: translate,\n hh: translate,\n d: 'dan',\n dd: translate,\n M: 'mjesec',\n MM: translate,\n y: 'godinu',\n yy: translate,\n },\n dayOfMonthOrdinalParse: /\\d{1,2}\\./,\n ordinal: '%d.',\n week: {\n dow: 1, // Monday is the first day of the week.\n doy: 7, // The week that contains Jan 7th is the first week of the year.\n },\n});\n","//! moment.js locale configuration\n//! locale : Maldivian [dv]\n//! author : Jawish Hameed : https://github.com/jawish\n\nimport moment from '../moment';\n\nvar months = [\n 'ޖެނުއަރީ',\n 'ފެބްރުއަރީ',\n 'މާރިޗު',\n 'އޭޕްރީލު',\n 'މޭ',\n 'ޖޫން',\n 'ޖުލައި',\n 'އޯގަސްޓު',\n 'ސެޕްޓެމްބަރު',\n 'އޮކްޓޯބަރު',\n 'ނޮވެމްބަރު',\n 'ޑިސެމްބަރު',\n ],\n weekdays = [\n 'އާދިއްތަ',\n 'ހޯމަ',\n 'އަންގާރަ',\n 'ބުދަ',\n 'ބުރާސްފަތި',\n 'ހުކުރު',\n 'ހޮނިހިރު',\n ];\n\nexport default moment.defineLocale('dv', {\n months: months,\n monthsShort: months,\n weekdays: weekdays,\n weekdaysShort: weekdays,\n weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'),\n longDateFormat: {\n LT: 'HH:mm',\n LTS: 'HH:mm:ss',\n L: 'D/M/YYYY',\n LL: 'D MMMM YYYY',\n LLL: 'D MMMM YYYY HH:mm',\n LLLL: 'dddd D MMMM YYYY HH:mm',\n },\n meridiemParse: /މކ|މފ/,\n isPM: function (input) {\n return 'މފ' === input;\n },\n meridiem: function (hour, minute, isLower) {\n if (hour < 12) {\n return 'މކ';\n } else {\n return 'މފ';\n }\n },\n calendar: {\n sameDay: '[މިއަދު] LT',\n nextDay: '[މާދަމާ] LT',\n nextWeek: 'dddd LT',\n lastDay: '[އިއްޔެ] LT',\n lastWeek: '[ފާއިތުވި] dddd LT',\n sameElse: 'L',\n },\n relativeTime: {\n future: 'ތެރޭގައި %s',\n past: 'ކުރިން %s',\n s: 'ސިކުންތުކޮޅެއް',\n ss: 'd% ސިކުންތު',\n m: 'މިނިޓެއް',\n mm: 'މިނިޓު %d',\n h: 'ގަޑިއިރެއް',\n hh: 'ގަޑިއިރު %d',\n d: 'ދުވަހެއް',\n dd: 'ދުވަސް %d',\n M: 'މަހެއް',\n MM: 'މަސް %d',\n y: 'އަހަރެއް',\n yy: 'އަހަރު %d',\n },\n preparse: function (string) {\n return string.replace(/،/g, ',');\n },\n postformat: function (string) {\n return string.replace(/,/g, '،');\n },\n week: {\n dow: 7, // Sunday is the first day of the week.\n doy: 12, // The week that contains Jan 12th is the first week of the year.\n },\n});\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Observable = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n// === Symbol Support ===\nvar hasSymbols = function () {\n return typeof Symbol === 'function';\n};\n\nvar hasSymbol = function (name) {\n return hasSymbols() && Boolean(Symbol[name]);\n};\n\nvar getSymbol = function (name) {\n return hasSymbol(name) ? Symbol[name] : '@@' + name;\n};\n\nif (hasSymbols() && !hasSymbol('observable')) {\n Symbol.observable = Symbol('observable');\n}\n\nvar SymbolIterator = getSymbol('iterator');\nvar SymbolObservable = getSymbol('observable');\nvar SymbolSpecies = getSymbol('species'); // === Abstract Operations ===\n\nfunction getMethod(obj, key) {\n var value = obj[key];\n if (value == null) return undefined;\n if (typeof value !== 'function') throw new TypeError(value + ' is not a function');\n return value;\n}\n\nfunction getSpecies(obj) {\n var ctor = obj.constructor;\n\n if (ctor !== undefined) {\n ctor = ctor[SymbolSpecies];\n\n if (ctor === null) {\n ctor = undefined;\n }\n }\n\n return ctor !== undefined ? ctor : Observable;\n}\n\nfunction isObservable(x) {\n return x instanceof Observable; // SPEC: Brand check\n}\n\nfunction hostReportError(e) {\n if (hostReportError.log) {\n hostReportError.log(e);\n } else {\n setTimeout(function () {\n throw e;\n });\n }\n}\n\nfunction enqueue(fn) {\n Promise.resolve().then(function () {\n try {\n fn();\n } catch (e) {\n hostReportError(e);\n }\n });\n}\n\nfunction cleanupSubscription(subscription) {\n var cleanup = subscription._cleanup;\n if (cleanup === undefined) return;\n subscription._cleanup = undefined;\n\n if (!cleanup) {\n return;\n }\n\n try {\n if (typeof cleanup === 'function') {\n cleanup();\n } else {\n var unsubscribe = getMethod(cleanup, 'unsubscribe');\n\n if (unsubscribe) {\n unsubscribe.call(cleanup);\n }\n }\n } catch (e) {\n hostReportError(e);\n }\n}\n\nfunction closeSubscription(subscription) {\n subscription._observer = undefined;\n subscription._queue = undefined;\n subscription._state = 'closed';\n}\n\nfunction flushSubscription(subscription) {\n var queue = subscription._queue;\n\n if (!queue) {\n return;\n }\n\n subscription._queue = undefined;\n subscription._state = 'ready';\n\n for (var i = 0; i < queue.length; ++i) {\n notifySubscription(subscription, queue[i].type, queue[i].value);\n if (subscription._state === 'closed') break;\n }\n}\n\nfunction notifySubscription(subscription, type, value) {\n subscription._state = 'running';\n var observer = subscription._observer;\n\n try {\n var m = getMethod(observer, type);\n\n switch (type) {\n case 'next':\n if (m) m.call(observer, value);\n break;\n\n case 'error':\n closeSubscription(subscription);\n if (m) m.call(observer, value);else throw value;\n break;\n\n case 'complete':\n closeSubscription(subscription);\n if (m) m.call(observer);\n break;\n }\n } catch (e) {\n hostReportError(e);\n }\n\n if (subscription._state === 'closed') cleanupSubscription(subscription);else if (subscription._state === 'running') subscription._state = 'ready';\n}\n\nfunction onNotify(subscription, type, value) {\n if (subscription._state === 'closed') return;\n\n if (subscription._state === 'buffering') {\n subscription._queue.push({\n type: type,\n value: value\n });\n\n return;\n }\n\n if (subscription._state !== 'ready') {\n subscription._state = 'buffering';\n subscription._queue = [{\n type: type,\n value: value\n }];\n enqueue(function () {\n return flushSubscription(subscription);\n });\n return;\n }\n\n notifySubscription(subscription, type, value);\n}\n\nvar Subscription =\n/*#__PURE__*/\nfunction () {\n function Subscription(observer, subscriber) {\n _classCallCheck(this, Subscription);\n\n // ASSERT: observer is an object\n // ASSERT: subscriber is callable\n this._cleanup = undefined;\n this._observer = observer;\n this._queue = undefined;\n this._state = 'initializing';\n var subscriptionObserver = new SubscriptionObserver(this);\n\n try {\n this._cleanup = subscriber.call(undefined, subscriptionObserver);\n } catch (e) {\n subscriptionObserver.error(e);\n }\n\n if (this._state === 'initializing') this._state = 'ready';\n }\n\n _createClass(Subscription, [{\n key: \"unsubscribe\",\n value: function unsubscribe() {\n if (this._state !== 'closed') {\n closeSubscription(this);\n cleanupSubscription(this);\n }\n }\n }, {\n key: \"closed\",\n get: function () {\n return this._state === 'closed';\n }\n }]);\n\n return Subscription;\n}();\n\nvar SubscriptionObserver =\n/*#__PURE__*/\nfunction () {\n function SubscriptionObserver(subscription) {\n _classCallCheck(this, SubscriptionObserver);\n\n this._subscription = subscription;\n }\n\n _createClass(SubscriptionObserver, [{\n key: \"next\",\n value: function next(value) {\n onNotify(this._subscription, 'next', value);\n }\n }, {\n key: \"error\",\n value: function error(value) {\n onNotify(this._subscription, 'error', value);\n }\n }, {\n key: \"complete\",\n value: function complete() {\n onNotify(this._subscription, 'complete');\n }\n }, {\n key: \"closed\",\n get: function () {\n return this._subscription._state === 'closed';\n }\n }]);\n\n return SubscriptionObserver;\n}();\n\nvar Observable =\n/*#__PURE__*/\nfunction () {\n function Observable(subscriber) {\n _classCallCheck(this, Observable);\n\n if (!(this instanceof Observable)) throw new TypeError('Observable cannot be called as a function');\n if (typeof subscriber !== 'function') throw new TypeError('Observable initializer must be a function');\n this._subscriber = subscriber;\n }\n\n _createClass(Observable, [{\n key: \"subscribe\",\n value: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n observer = {\n next: observer,\n error: arguments[1],\n complete: arguments[2]\n };\n }\n\n return new Subscription(observer, this._subscriber);\n }\n }, {\n key: \"forEach\",\n value: function forEach(fn) {\n var _this = this;\n\n return new Promise(function (resolve, reject) {\n if (typeof fn !== 'function') {\n reject(new TypeError(fn + ' is not a function'));\n return;\n }\n\n function done() {\n subscription.unsubscribe();\n resolve();\n }\n\n var subscription = _this.subscribe({\n next: function (value) {\n try {\n fn(value, done);\n } catch (e) {\n reject(e);\n subscription.unsubscribe();\n }\n },\n error: reject,\n complete: resolve\n });\n });\n }\n }, {\n key: \"map\",\n value: function map(fn) {\n var _this2 = this;\n\n if (typeof fn !== 'function') throw new TypeError(fn + ' is not a function');\n var C = getSpecies(this);\n return new C(function (observer) {\n return _this2.subscribe({\n next: function (value) {\n try {\n value = fn(value);\n } catch (e) {\n return observer.error(e);\n }\n\n observer.next(value);\n },\n error: function (e) {\n observer.error(e);\n },\n complete: function () {\n observer.complete();\n }\n });\n });\n }\n }, {\n key: \"filter\",\n value: function filter(fn) {\n var _this3 = this;\n\n if (typeof fn !== 'function') throw new TypeError(fn + ' is not a function');\n var C = getSpecies(this);\n return new C(function (observer) {\n return _this3.subscribe({\n next: function (value) {\n try {\n if (!fn(value)) return;\n } catch (e) {\n return observer.error(e);\n }\n\n observer.next(value);\n },\n error: function (e) {\n observer.error(e);\n },\n complete: function () {\n observer.complete();\n }\n });\n });\n }\n }, {\n key: \"reduce\",\n value: function reduce(fn) {\n var _this4 = this;\n\n if (typeof fn !== 'function') throw new TypeError(fn + ' is not a function');\n var C = getSpecies(this);\n var hasSeed = arguments.length > 1;\n var hasValue = false;\n var seed = arguments[1];\n var acc = seed;\n return new C(function (observer) {\n return _this4.subscribe({\n next: function (value) {\n var first = !hasValue;\n hasValue = true;\n\n if (!first || hasSeed) {\n try {\n acc = fn(acc, value);\n } catch (e) {\n return observer.error(e);\n }\n } else {\n acc = value;\n }\n },\n error: function (e) {\n observer.error(e);\n },\n complete: function () {\n if (!hasValue && !hasSeed) return observer.error(new TypeError('Cannot reduce an empty sequence'));\n observer.next(acc);\n observer.complete();\n }\n });\n });\n }\n }, {\n key: \"concat\",\n value: function concat() {\n var _this5 = this;\n\n for (var _len = arguments.length, sources = new Array(_len), _key = 0; _key < _len; _key++) {\n sources[_key] = arguments[_key];\n }\n\n var C = getSpecies(this);\n return new C(function (observer) {\n var subscription;\n var index = 0;\n\n function startNext(next) {\n subscription = next.subscribe({\n next: function (v) {\n observer.next(v);\n },\n error: function (e) {\n observer.error(e);\n },\n complete: function () {\n if (index === sources.length) {\n subscription = undefined;\n observer.complete();\n } else {\n startNext(C.from(sources[index++]));\n }\n }\n });\n }\n\n startNext(_this5);\n return function () {\n if (subscription) {\n subscription.unsubscribe();\n subscription = undefined;\n }\n };\n });\n }\n }, {\n key: \"flatMap\",\n value: function flatMap(fn) {\n var _this6 = this;\n\n if (typeof fn !== 'function') throw new TypeError(fn + ' is not a function');\n var C = getSpecies(this);\n return new C(function (observer) {\n var subscriptions = [];\n\n var outer = _this6.subscribe({\n next: function (value) {\n if (fn) {\n try {\n value = fn(value);\n } catch (e) {\n return observer.error(e);\n }\n }\n\n var inner = C.from(value).subscribe({\n next: function (value) {\n observer.next(value);\n },\n error: function (e) {\n observer.error(e);\n },\n complete: function () {\n var i = subscriptions.indexOf(inner);\n if (i >= 0) subscriptions.splice(i, 1);\n completeIfDone();\n }\n });\n subscriptions.push(inner);\n },\n error: function (e) {\n observer.error(e);\n },\n complete: function () {\n completeIfDone();\n }\n });\n\n function completeIfDone() {\n if (outer.closed && subscriptions.length === 0) observer.complete();\n }\n\n return function () {\n subscriptions.forEach(function (s) {\n return s.unsubscribe();\n });\n outer.unsubscribe();\n };\n });\n }\n }, {\n key: SymbolObservable,\n value: function () {\n return this;\n }\n }], [{\n key: \"from\",\n value: function from(x) {\n var C = typeof this === 'function' ? this : Observable;\n if (x == null) throw new TypeError(x + ' is not an object');\n var method = getMethod(x, SymbolObservable);\n\n if (method) {\n var observable = method.call(x);\n if (Object(observable) !== observable) throw new TypeError(observable + ' is not an object');\n if (isObservable(observable) && observable.constructor === C) return observable;\n return new C(function (observer) {\n return observable.subscribe(observer);\n });\n }\n\n if (hasSymbol('iterator')) {\n method = getMethod(x, SymbolIterator);\n\n if (method) {\n return new C(function (observer) {\n enqueue(function () {\n if (observer.closed) return;\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = method.call(x)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var _item = _step.value;\n observer.next(_item);\n if (observer.closed) return;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n observer.complete();\n });\n });\n }\n }\n\n if (Array.isArray(x)) {\n return new C(function (observer) {\n enqueue(function () {\n if (observer.closed) return;\n\n for (var i = 0; i < x.length; ++i) {\n observer.next(x[i]);\n if (observer.closed) return;\n }\n\n observer.complete();\n });\n });\n }\n\n throw new TypeError(x + ' is not observable');\n }\n }, {\n key: \"of\",\n value: function of() {\n for (var _len2 = arguments.length, items = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n items[_key2] = arguments[_key2];\n }\n\n var C = typeof this === 'function' ? this : Observable;\n return new C(function (observer) {\n enqueue(function () {\n if (observer.closed) return;\n\n for (var i = 0; i < items.length; ++i) {\n observer.next(items[i]);\n if (observer.closed) return;\n }\n\n observer.complete();\n });\n });\n }\n }, {\n key: SymbolSpecies,\n get: function () {\n return this;\n }\n }]);\n\n return Observable;\n}();\n\nexports.Observable = Observable;\n\nif (hasSymbols()) {\n Object.defineProperty(Observable, Symbol('extensions'), {\n value: {\n symbol: SymbolObservable,\n hostReportError: hostReportError\n },\n configurable: true\n });\n}","import React from 'react';\nvar ThemeContext = React.createContext(null);\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'ThemeContext';\n}\n\nexport default ThemeContext;","/**\n * WARNING: Don't import this directly.\n * Use `MuiError` from `@material-ui/utils/macros/MuiError.macro` instead.\n * @param {number} code\n */\nexport default function formatMuiErrorMessage(code) {\n // Apply babel-plugin-transform-template-literals in loose mode\n // loose mode is safe iff we're concatenating primitives\n // see https://babeljs.io/docs/en/babel-plugin-transform-template-literals#loose\n\n /* eslint-disable prefer-template */\n var url = 'https://material-ui.com/production-error/?code=' + code;\n\n for (var i = 1; i < arguments.length; i += 1) {\n // rest params over-transpile for this case\n // eslint-disable-next-line prefer-rest-params\n url += '&args[]=' + encodeURIComponent(arguments[i]);\n }\n\n return 'Minified Material-UI error #' + code + '; visit ' + url + ' for the full message.';\n /* eslint-enable prefer-template */\n}","import options from './options';\n\n/**\n * Create an virtual node (used for JSX)\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component\n * constructor for this virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the virtual node\n * @returns {import('./internal').VNode}\n */\nexport function createElement(type, props, children) {\n\tlet normalizedProps = {},\n\t\tkey,\n\t\tref,\n\t\ti;\n\tfor (i in props) {\n\t\tif (i == 'key') key = props[i];\n\t\telse if (i == 'ref') ref = props[i];\n\t\telse normalizedProps[i] = props[i];\n\t}\n\n\tif (arguments.length > 3) {\n\t\tchildren = [children];\n\t\t// https://github.com/preactjs/preact/issues/1916\n\t\tfor (i = 3; i < arguments.length; i++) {\n\t\t\tchildren.push(arguments[i]);\n\t\t}\n\t}\n\tif (children != null) {\n\t\tnormalizedProps.children = children;\n\t}\n\n\t// If a Component VNode, check for and apply defaultProps\n\t// Note: type may be undefined in development, must never error here.\n\tif (typeof type == 'function' && type.defaultProps != null) {\n\t\tfor (i in type.defaultProps) {\n\t\t\tif (normalizedProps[i] === undefined) {\n\t\t\t\tnormalizedProps[i] = type.defaultProps[i];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn createVNode(type, normalizedProps, key, ref, null);\n}\n\n/**\n * Create a VNode (used internally by Preact)\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component\n * Constructor for this virtual node\n * @param {object | string | number | null} props The properties of this virtual node.\n * If this virtual node represents a text node, this is the text of the node (string or number).\n * @param {string | number | null} key The key for this virtual node, used when\n * diffing it against its children\n * @param {import('./internal').VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {import('./internal').VNode}\n */\nexport function createVNode(type, props, key, ref, original) {\n\t// V8 seems to be better at detecting type shapes if the object is allocated from the same call site\n\t// Do not inline into createElement and coerceToVNode!\n\tconst vnode = {\n\t\ttype,\n\t\tprops,\n\t\tkey,\n\t\tref,\n\t\t_children: null,\n\t\t_parent: null,\n\t\t_depth: 0,\n\t\t_dom: null,\n\t\t// _nextDom must be initialized to undefined b/c it will eventually\n\t\t// be set to dom.nextSibling which can return `null` and it is important\n\t\t// to be able to distinguish between an uninitialized _nextDom and\n\t\t// a _nextDom that has been set to `null`\n\t\t_nextDom: undefined,\n\t\t_component: null,\n\t\t_hydrating: null,\n\t\tconstructor: undefined,\n\t\t_original: original == null ? ++options._vnodeId : original\n\t};\n\n\tif (options.vnode != null) options.vnode(vnode);\n\n\treturn vnode;\n}\n\nexport function createRef() {\n\treturn { current: null };\n}\n\nexport function Fragment(props) {\n\treturn props.children;\n}\n\n/**\n * Check if a the argument is a valid Preact VNode.\n * @param {*} vnode\n * @returns {vnode is import('./internal').VNode}\n */\nexport const isValidElement = vnode =>\n\tvnode != null && vnode.constructor === undefined;\n","import { assign } from './util';\nimport { diff, commitRoot } from './diff/index';\nimport options from './options';\nimport { Fragment } from './create-element';\n\n/**\n * Base Component class. Provides `setState()` and `forceUpdate()`, which\n * trigger rendering\n * @param {object} props The initial component props\n * @param {object} context The initial context from parent components'\n * getChildContext\n */\nexport function Component(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {import('./internal').Component}\n * @param {object | ((s: object, p: object) => object)} update A hash of state\n * properties to update with new values or a function that given the current\n * state and props returns a new partial state\n * @param {() => void} [callback] A function to be called once component state is\n * updated\n */\nComponent.prototype.setState = function(update, callback) {\n\t// only clone state when copying to nextState the first time.\n\tlet s;\n\tif (this._nextState != null && this._nextState !== this.state) {\n\t\ts = this._nextState;\n\t} else {\n\t\ts = this._nextState = assign({}, this.state);\n\t}\n\n\tif (typeof update == 'function') {\n\t\t// Some libraries like `immer` mark the current state as readonly,\n\t\t// preventing us from mutating it, so we need to clone it. See #2716\n\t\tupdate = update(assign({}, s), this.props);\n\t}\n\n\tif (update) {\n\t\tassign(s, update);\n\t}\n\n\t// Skip update if updater function returned null\n\tif (update == null) return;\n\n\tif (this._vnode) {\n\t\tif (callback) this._renderCallbacks.push(callback);\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {import('./internal').Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._vnode) {\n\t\t// Set render mode so that we can differentiate where the render request\n\t\t// is coming from. We need this because forceUpdate should never call\n\t\t// shouldComponentUpdate\n\t\tthis._force = true;\n\t\tif (callback) this._renderCallbacks.push(callback);\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Accepts `props` and `state`, and returns a new Virtual DOM tree to build.\n * Virtual DOM is generally constructed via [JSX](http://jasonformat.com/wtf-is-jsx).\n * @param {object} props Props (eg: JSX attributes) received from parent\n * element/component\n * @param {object} state The component's current state\n * @param {object} context Context object, as returned by the nearest\n * ancestor's `getChildContext()`\n * @returns {import('./index').ComponentChildren | void}\n */\nComponent.prototype.render = Fragment;\n\n/**\n * @param {import('./internal').VNode} vnode\n * @param {number | null} [childIndex]\n */\nexport function getDomSibling(vnode, childIndex) {\n\tif (childIndex == null) {\n\t\t// Use childIndex==null as a signal to resume the search from the vnode's sibling\n\t\treturn vnode._parent\n\t\t\t? getDomSibling(vnode._parent, vnode._parent._children.indexOf(vnode) + 1)\n\t\t\t: null;\n\t}\n\n\tlet sibling;\n\tfor (; childIndex < vnode._children.length; childIndex++) {\n\t\tsibling = vnode._children[childIndex];\n\n\t\tif (sibling != null && sibling._dom != null) {\n\t\t\t// Since updateParentDomPointers keeps _dom pointer correct,\n\t\t\t// we can rely on _dom to tell us if this subtree contains a\n\t\t\t// rendered DOM node, and what the first rendered DOM node is\n\t\t\treturn sibling._dom;\n\t\t}\n\t}\n\n\t// If we get here, we have not found a DOM node in this vnode's children.\n\t// We must resume from this vnode's sibling (in it's parent _children array)\n\t// Only climb up and search the parent if we aren't searching through a DOM\n\t// VNode (meaning we reached the DOM parent of the original vnode that began\n\t// the search)\n\treturn typeof vnode.type == 'function' ? getDomSibling(vnode) : null;\n}\n\n/**\n * Trigger in-place re-rendering of a component.\n * @param {import('./internal').Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet vnode = component._vnode,\n\t\toldDom = vnode._dom,\n\t\tparentDom = component._parentDom;\n\n\tif (parentDom) {\n\t\tlet commitQueue = [];\n\t\tconst oldVNode = assign({}, vnode);\n\t\toldVNode._original = vnode._original + 1;\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tvnode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\tvnode._hydrating != null ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(vnode) : oldDom,\n\t\t\tvnode._hydrating\n\t\t);\n\t\tcommitRoot(commitQueue, vnode);\n\n\t\tif (vnode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(vnode);\n\t\t}\n\t}\n}\n\n/**\n * @param {import('./internal').VNode} vnode\n */\nfunction updateParentDomPointers(vnode) {\n\tif ((vnode = vnode._parent) != null && vnode._component != null) {\n\t\tvnode._dom = vnode._component.base = null;\n\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\tlet child = vnode._children[i];\n\t\t\tif (child != null && child._dom != null) {\n\t\t\t\tvnode._dom = vnode._component.base = child._dom;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn updateParentDomPointers(vnode);\n\t}\n}\n\n/**\n * The render queue\n * @type {Array}\n */\nlet rerenderQueue = [];\n\n/**\n * Asynchronously schedule a callback\n * @type {(cb: () => void) => void}\n */\n/* istanbul ignore next */\n// Note the following line isn't tree-shaken by rollup cuz of rollup/rollup#2566\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/*\n * The value of `Component.debounce` must asynchronously invoke the passed in callback. It is\n * important that contributors to Preact can consistently reason about what calls to `setState`, etc.\n * do, and when their effects will be applied. See the links below for some further reading on designing\n * asynchronous APIs.\n * * [Designing APIs for Asynchrony](https://blog.izs.me/2013/08/designing-apis-for-asynchrony)\n * * [Callbacks synchronous and asynchronous](https://blog.ometer.com/2011/07/24/callbacks-synchronous-and-asynchronous/)\n */\n\nlet prevDebounce;\n\n/**\n * Enqueue a rerender of a component\n * @param {import('./internal').Component} c The component to rerender\n */\nexport function enqueueRender(c) {\n\tif (\n\t\t(!c._dirty &&\n\t\t\t(c._dirty = true) &&\n\t\t\trerenderQueue.push(c) &&\n\t\t\t!process._rerenderCount++) ||\n\t\tprevDebounce !== options.debounceRendering\n\t) {\n\t\tprevDebounce = options.debounceRendering;\n\t\t(prevDebounce || defer)(process);\n\t}\n}\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet queue;\n\twhile ((process._rerenderCount = rerenderQueue.length)) {\n\t\tqueue = rerenderQueue.sort((a, b) => a._vnode._depth - b._vnode._depth);\n\t\trerenderQueue = [];\n\t\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t\t// process() calls from getting scheduled while `queue` is still being consumed.\n\t\tqueue.some(c => {\n\t\t\tif (c._dirty) renderComponent(c);\n\t\t});\n\t}\n}\nprocess._rerenderCount = 0;\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR } from '../constants';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {import('../internal').PreactElement} parentDom The DOM element whose\n * children are being diffed\n * @param {import('../internal').ComponentChildren[]} renderResult\n * @param {import('../internal').VNode} newParentVNode The new virtual\n * node whose children should be diff'ed against oldParentVNode\n * @param {import('../internal').VNode} oldParentVNode The old virtual\n * node whose children should be diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by getChildContext\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node\n * @param {Array} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').PreactElement} oldDom The current attached DOM\n * element any new dom elements should be placed around. Likely `null` on first\n * render (except when hydrating). Can be a sibling DOM element when diffing\n * Fragments that have siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n */\nexport function diffChildren(\n\tparentDom,\n\trenderResult,\n\tnewParentVNode,\n\toldParentVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating\n) {\n\tlet i, j, oldVNode, childVNode, newDom, firstChildDom, refs;\n\n\t// This is a compression of oldParentVNode!=null && oldParentVNode != EMPTY_OBJ && oldParentVNode._children || EMPTY_ARR\n\t// as EMPTY_OBJ._children should be `undefined`.\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet oldChildrenLength = oldChildren.length;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < renderResult.length; i++) {\n\t\tchildVNode = renderResult[i];\n\n\t\tif (childVNode == null || typeof childVNode == 'boolean') {\n\t\t\tchildVNode = newParentVNode._children[i] = null;\n\t\t}\n\t\t// If this newVNode is being reused (e.g.
{reuse}{reuse}
) in the same diff,\n\t\t// or we are rendering a component (e.g. setState) copy the oldVNodes so it can have\n\t\t// it's own DOM & etc. pointers\n\t\telse if (typeof childVNode == 'string' || typeof childVNode == 'number') {\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tnull,\n\t\t\t\tchildVNode,\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t} else if (Array.isArray(childVNode)) {\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tFragment,\n\t\t\t\t{ children: childVNode },\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\tnull\n\t\t\t);\n\t\t} else if (childVNode._depth > 0) {\n\t\t\t// VNode is already in use, clone it. This can happen in the following\n\t\t\t// scenario:\n\t\t\t// const reuse =
\n\t\t\t//
{reuse}{reuse}
\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tchildVNode.type,\n\t\t\t\tchildVNode.props,\n\t\t\t\tchildVNode.key,\n\t\t\t\tnull,\n\t\t\t\tchildVNode._original\n\t\t\t);\n\t\t} else {\n\t\t\tchildVNode = newParentVNode._children[i] = childVNode;\n\t\t}\n\n\t\t// Terser removes the `continue` here and wraps the loop body\n\t\t// in a `if (childVNode) { ... } condition\n\t\tif (childVNode == null) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\t// Check if we find a corresponding element in oldChildren.\n\t\t// If found, delete the array item by setting to `undefined`.\n\t\t// We use `undefined`, as `null` is reserved for empty placeholders\n\t\t// (holes).\n\t\toldVNode = oldChildren[i];\n\n\t\tif (\n\t\t\toldVNode === null ||\n\t\t\t(oldVNode &&\n\t\t\t\tchildVNode.key == oldVNode.key &&\n\t\t\t\tchildVNode.type === oldVNode.type)\n\t\t) {\n\t\t\toldChildren[i] = undefined;\n\t\t} else {\n\t\t\t// Either oldVNode === undefined or oldChildrenLength > 0,\n\t\t\t// so after this loop oldVNode == null or oldVNode is a valid value.\n\t\t\tfor (j = 0; j < oldChildrenLength; j++) {\n\t\t\t\toldVNode = oldChildren[j];\n\t\t\t\t// If childVNode is unkeyed, we only match similarly unkeyed nodes, otherwise we match by key.\n\t\t\t\t// We always match by type (in either case).\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\tchildVNode.key == oldVNode.key &&\n\t\t\t\t\tchildVNode.type === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\toldChildren[j] = undefined;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toldVNode = null;\n\t\t\t}\n\t\t}\n\n\t\toldVNode = oldVNode || EMPTY_OBJ;\n\n\t\t// Morph the old element into the new one, but don't append it to the dom yet\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tchildVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\toldDom,\n\t\t\tisHydrating\n\t\t);\n\n\t\tnewDom = childVNode._dom;\n\n\t\tif ((j = childVNode.ref) && oldVNode.ref != j) {\n\t\t\tif (!refs) refs = [];\n\t\t\tif (oldVNode.ref) refs.push(oldVNode.ref, null, childVNode);\n\t\t\trefs.push(j, childVNode._component || newDom, childVNode);\n\t\t}\n\n\t\tif (newDom != null) {\n\t\t\tif (firstChildDom == null) {\n\t\t\t\tfirstChildDom = newDom;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\t\tchildVNode._children != null && // Can be null if childVNode suspended\n\t\t\t\tchildVNode._children === oldVNode._children\n\t\t\t) {\n\t\t\t\tchildVNode._nextDom = oldDom = reorderChildren(\n\t\t\t\t\tchildVNode,\n\t\t\t\t\toldDom,\n\t\t\t\t\tparentDom\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\toldDom = placeChild(\n\t\t\t\t\tparentDom,\n\t\t\t\t\tchildVNode,\n\t\t\t\t\toldVNode,\n\t\t\t\t\toldChildren,\n\t\t\t\t\tnewDom,\n\t\t\t\t\toldDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Browsers will infer an option's `value` from `textContent` when\n\t\t\t// no value is present. This essentially bypasses our code to set it\n\t\t\t// later in `diff()`. It works fine in all browsers except for IE11\n\t\t\t// where it breaks setting `select.value`. There it will be always set\n\t\t\t// to an empty string. Re-applying an options value will fix that, so\n\t\t\t// there are probably some internal data structures that aren't\n\t\t\t// updated properly.\n\t\t\t//\n\t\t\t// To fix it we make sure to reset the inferred value, so that our own\n\t\t\t// value check in `diff()` won't be skipped.\n\t\t\tif (!isHydrating && newParentVNode.type === 'option') {\n\t\t\t\t// @ts-ignore We have validated that the type of parentDOM is 'option'\n\t\t\t\t// in the above check\n\t\t\t\tparentDom.value = '';\n\t\t\t} else if (typeof newParentVNode.type == 'function') {\n\t\t\t\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t\t\t\t// _nextDom property to the nextSibling of its last child DOM node.\n\t\t\t\t//\n\t\t\t\t// `oldDom` contains the correct value here because if the last child\n\t\t\t\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t\t\t\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t\t\t\t// node's nextSibling.\n\t\t\t\tnewParentVNode._nextDom = oldDom;\n\t\t\t}\n\t\t} else if (\n\t\t\toldDom &&\n\t\t\toldVNode._dom == oldDom &&\n\t\t\toldDom.parentNode != parentDom\n\t\t) {\n\t\t\t// The above condition is to handle null placeholders. See test in placeholder.test.js:\n\t\t\t// `efficiently replace null placeholders in parent rerenders`\n\t\t\toldDom = getDomSibling(oldVNode);\n\t\t}\n\t}\n\n\tnewParentVNode._dom = firstChildDom;\n\n\t// Remove remaining oldChildren if there are any.\n\tfor (i = oldChildrenLength; i--; ) {\n\t\tif (oldChildren[i] != null) {\n\t\t\tif (\n\t\t\t\ttypeof newParentVNode.type == 'function' &&\n\t\t\t\toldChildren[i]._dom != null &&\n\t\t\t\toldChildren[i]._dom == newParentVNode._nextDom\n\t\t\t) {\n\t\t\t\t// If the newParentVNode.__nextDom points to a dom node that is about to\n\t\t\t\t// be unmounted, then get the next sibling of that vnode and set\n\t\t\t\t// _nextDom to it\n\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldParentVNode, i + 1);\n\t\t\t}\n\n\t\t\tunmount(oldChildren[i], oldChildren[i]);\n\t\t}\n\t}\n\n\t// Set refs only after unmount\n\tif (refs) {\n\t\tfor (i = 0; i < refs.length; i++) {\n\t\t\tapplyRef(refs[i], refs[++i], refs[++i]);\n\t\t}\n\t}\n}\n\nfunction reorderChildren(childVNode, oldDom, parentDom) {\n\tfor (let tmp = 0; tmp < childVNode._children.length; tmp++) {\n\t\tlet vnode = childVNode._children[tmp];\n\t\tif (vnode) {\n\t\t\t// We typically enter this code path on sCU bailout, where we copy\n\t\t\t// oldVNode._children to newVNode._children. If that is the case, we need\n\t\t\t// to update the old children's _parent pointer to point to the newVNode\n\t\t\t// (childVNode here).\n\t\t\tvnode._parent = childVNode;\n\n\t\t\tif (typeof vnode.type == 'function') {\n\t\t\t\toldDom = reorderChildren(vnode, oldDom, parentDom);\n\t\t\t} else {\n\t\t\t\toldDom = placeChild(\n\t\t\t\t\tparentDom,\n\t\t\t\t\tvnode,\n\t\t\t\t\tvnode,\n\t\t\t\t\tchildVNode._children,\n\t\t\t\t\tvnode._dom,\n\t\t\t\t\toldDom\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn oldDom;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {import('../index').ComponentChildren} children The unflattened\n * children of a virtual node\n * @returns {import('../internal').VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (Array.isArray(children)) {\n\t\tchildren.some(child => {\n\t\t\ttoChildArray(child, out);\n\t\t});\n\t} else {\n\t\tout.push(children);\n\t}\n\treturn out;\n}\n\nfunction placeChild(\n\tparentDom,\n\tchildVNode,\n\toldVNode,\n\toldChildren,\n\tnewDom,\n\toldDom\n) {\n\tlet nextDom;\n\tif (childVNode._nextDom !== undefined) {\n\t\t// Only Fragments or components that return Fragment like VNodes will\n\t\t// have a non-undefined _nextDom. Continue the diff from the sibling\n\t\t// of last DOM child of this child VNode\n\t\tnextDom = childVNode._nextDom;\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because\n\t\t// it is only used by `diffChildren` to determine where to resume the diff after\n\t\t// diffing Components and Fragments. Once we store it the nextDOM local var, we\n\t\t// can clean up the property\n\t\tchildVNode._nextDom = undefined;\n\t} else if (\n\t\toldVNode == null ||\n\t\tnewDom != oldDom ||\n\t\tnewDom.parentNode == null\n\t) {\n\t\touter: if (oldDom == null || oldDom.parentNode !== parentDom) {\n\t\t\tparentDom.appendChild(newDom);\n\t\t\tnextDom = null;\n\t\t} else {\n\t\t\t// `j href (xlink:href was removed from SVG and isn't needed)\n\t\t\t// - className --> class\n\t\t\tname = name.replace(/xlink[H:h]/, 'h').replace(/sName$/, 's');\n\t\t} else if (\n\t\t\tname !== 'href' &&\n\t\t\tname !== 'list' &&\n\t\t\tname !== 'form' &&\n\t\t\tname !== 'download' &&\n\t\t\tname in dom\n\t\t) {\n\t\t\ttry {\n\t\t\t\tdom[name] = value == null ? '' : value;\n\t\t\t\t// labelled break is 1b smaller here than a return statement (sorry)\n\t\t\t\tbreak o;\n\t\t\t} catch (e) {}\n\t\t}\n\n\t\t// ARIA-attributes have a different notion of boolean values.\n\t\t// The value `false` is different from the attribute not\n\t\t// existing on the DOM, so we can't remove it. For non-boolean\n\t\t// ARIA-attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost us too many bytes. On top of\n\t\t// that other VDOM frameworks also always stringify `false`.\n\n\t\tif (typeof value === 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (\n\t\t\tvalue != null &&\n\t\t\t(value !== false || (name[0] === 'a' && name[1] === 'r'))\n\t\t) {\n\t\t\tdom.setAttribute(name, value);\n\t\t} else {\n\t\t\tdom.removeAttribute(name);\n\t\t}\n\t}\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {Event} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tthis._listeners[e.type + false](options.event ? options.event(e) : e);\n}\n\nfunction eventProxyCapture(e) {\n\tthis._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import { EMPTY_OBJ, EMPTY_ARR } from '../constants';\nimport { Component } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { diffProps, setProperty } from './props';\nimport { assign, removeNode } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {import('../internal').PreactElement} parentDom The parent of the DOM element\n * @param {import('../internal').VNode} newVNode The new virtual node\n * @param {import('../internal').VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by getChildContext\n * @param {boolean} isSvg Whether or not this element is an SVG node\n * @param {Array} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').PreactElement} oldDom The current attached DOM\n * element any new dom elements should be placed around. Likely `null` on first\n * render (except when hydrating). Can be a sibling DOM element when diffing\n * Fragments that have siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} [isHydrating] Whether or not we are in hydration\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating\n) {\n\tlet tmp,\n\t\tnewType = newVNode.type;\n\n\t// When passing through createElement it assigns the object\n\t// constructor as undefined. This to prevent JSON-injection.\n\tif (newVNode.constructor !== undefined) return null;\n\n\t// If the previous diff bailed out, resume creating/hydrating.\n\tif (oldVNode._hydrating != null) {\n\t\tisHydrating = oldVNode._hydrating;\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\t// if we resume, we want the tree to be \"unlocked\"\n\t\tnewVNode._hydrating = null;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\ttry {\n\t\touter: if (typeof newType == 'function') {\n\t\t\tlet c, isNew, oldProps, oldState, snapshot, clearProcessingException;\n\t\t\tlet newProps = newVNode.props;\n\n\t\t\t// Necessary for createContext api. Setting this property will pass\n\t\t\t// the context value as `this.context` just for this component.\n\t\t\ttmp = newType.contextType;\n\t\t\tlet provider = tmp && globalContext[tmp._id];\n\t\t\tlet componentContext = tmp\n\t\t\t\t? provider\n\t\t\t\t\t? provider.props.value\n\t\t\t\t\t: tmp._defaultValue\n\t\t\t\t: globalContext;\n\n\t\t\t// Get component and set it to `c`\n\t\t\tif (oldVNode._component) {\n\t\t\t\tc = newVNode._component = oldVNode._component;\n\t\t\t\tclearProcessingException = c._processingException = c._pendingError;\n\t\t\t} else {\n\t\t\t\t// Instantiate the new component\n\t\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\t\t// @ts-ignore The check above verifies that newType is suppose to be constructed\n\t\t\t\t\tnewVNode._component = c = new newType(newProps, componentContext); // eslint-disable-line new-cap\n\t\t\t\t} else {\n\t\t\t\t\t// @ts-ignore Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new Component(newProps, componentContext);\n\t\t\t\t\tc.constructor = newType;\n\t\t\t\t\tc.render = doRender;\n\t\t\t\t}\n\t\t\t\tif (provider) provider.sub(c);\n\n\t\t\t\tc.props = newProps;\n\t\t\t\tif (!c.state) c.state = {};\n\t\t\t\tc.context = componentContext;\n\t\t\t\tc._globalContext = globalContext;\n\t\t\t\tisNew = c._dirty = true;\n\t\t\t\tc._renderCallbacks = [];\n\t\t\t}\n\n\t\t\t// Invoke getDerivedStateFromProps\n\t\t\tif (c._nextState == null) {\n\t\t\t\tc._nextState = c.state;\n\t\t\t}\n\t\t\tif (newType.getDerivedStateFromProps != null) {\n\t\t\t\tif (c._nextState == c.state) {\n\t\t\t\t\tc._nextState = assign({}, c._nextState);\n\t\t\t\t}\n\n\t\t\t\tassign(\n\t\t\t\t\tc._nextState,\n\t\t\t\t\tnewType.getDerivedStateFromProps(newProps, c._nextState)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\toldProps = c.props;\n\t\t\toldState = c.state;\n\n\t\t\t// Invoke pre-render lifecycle methods\n\t\t\tif (isNew) {\n\t\t\t\tif (\n\t\t\t\t\tnewType.getDerivedStateFromProps == null &&\n\t\t\t\t\tc.componentWillMount != null\n\t\t\t\t) {\n\t\t\t\t\tc.componentWillMount();\n\t\t\t\t}\n\n\t\t\t\tif (c.componentDidMount != null) {\n\t\t\t\t\tc._renderCallbacks.push(c.componentDidMount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tnewType.getDerivedStateFromProps == null &&\n\t\t\t\t\tnewProps !== oldProps &&\n\t\t\t\t\tc.componentWillReceiveProps != null\n\t\t\t\t) {\n\t\t\t\t\tc.componentWillReceiveProps(newProps, componentContext);\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t(!c._force &&\n\t\t\t\t\t\tc.shouldComponentUpdate != null &&\n\t\t\t\t\t\tc.shouldComponentUpdate(\n\t\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\t\tc._nextState,\n\t\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t\t) === false) ||\n\t\t\t\t\tnewVNode._original === oldVNode._original\n\t\t\t\t) {\n\t\t\t\t\tc.props = newProps;\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t// More info about this here: https://gist.github.com/JoviDeCroock/bec5f2ce93544d2e6070ef8e0036e4e8\n\t\t\t\t\tif (newVNode._original !== oldVNode._original) c._dirty = false;\n\t\t\t\t\tc._vnode = newVNode;\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t\tif (c._renderCallbacks.length) {\n\t\t\t\t\t\tcommitQueue.push(c);\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\n\t\t\t\tif (c.componentWillUpdate != null) {\n\t\t\t\t\tc.componentWillUpdate(newProps, c._nextState, componentContext);\n\t\t\t\t}\n\n\t\t\t\tif (c.componentDidUpdate != null) {\n\t\t\t\t\tc._renderCallbacks.push(() => {\n\t\t\t\t\t\tc.componentDidUpdate(oldProps, oldState, snapshot);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tc.context = componentContext;\n\t\t\tc.props = newProps;\n\t\t\tc.state = c._nextState;\n\n\t\t\tif ((tmp = options._render)) tmp(newVNode);\n\n\t\t\tc._dirty = false;\n\t\t\tc._vnode = newVNode;\n\t\t\tc._parentDom = parentDom;\n\n\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t// Handle setState called in render, see #2553\n\t\t\tc.state = c._nextState;\n\n\t\t\tif (c.getChildContext != null) {\n\t\t\t\tglobalContext = assign(assign({}, globalContext), c.getChildContext());\n\t\t\t}\n\n\t\t\tif (!isNew && c.getSnapshotBeforeUpdate != null) {\n\t\t\t\tsnapshot = c.getSnapshotBeforeUpdate(oldProps, oldState);\n\t\t\t}\n\n\t\t\tlet isTopLevelFragment =\n\t\t\t\ttmp != null && tmp.type === Fragment && tmp.key == null;\n\t\t\tlet renderResult = isTopLevelFragment ? tmp.props.children : tmp;\n\n\t\t\tdiffChildren(\n\t\t\t\tparentDom,\n\t\t\t\tArray.isArray(renderResult) ? renderResult : [renderResult],\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg,\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\toldDom,\n\t\t\t\tisHydrating\n\t\t\t);\n\n\t\t\tc.base = newVNode._dom;\n\n\t\t\t// We successfully rendered this VNode, unset any stored hydration/bailout state:\n\t\t\tnewVNode._hydrating = null;\n\n\t\t\tif (c._renderCallbacks.length) {\n\t\t\t\tcommitQueue.push(c);\n\t\t\t}\n\n\t\t\tif (clearProcessingException) {\n\t\t\t\tc._pendingError = c._processingException = null;\n\t\t\t}\n\n\t\t\tc._force = false;\n\t\t} else if (\n\t\t\texcessDomChildren == null &&\n\t\t\tnewVNode._original === oldVNode._original\n\t\t) {\n\t\t\tnewVNode._children = oldVNode._children;\n\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t} else {\n\t\t\tnewVNode._dom = diffElementNodes(\n\t\t\t\toldVNode._dom,\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg,\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\tisHydrating\n\t\t\t);\n\t\t}\n\n\t\tif ((tmp = options.diffed)) tmp(newVNode);\n\t} catch (e) {\n\t\tnewVNode._original = null;\n\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\tnewVNode._dom = oldDom;\n\t\t\tnewVNode._hydrating = !!isHydrating;\n\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t// ^ could possibly be simplified to:\n\t\t\t// excessDomChildren.length = 0;\n\t\t}\n\t\toptions._catchError(e, newVNode, oldVNode);\n\t}\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').VNode} root\n */\nexport function commitRoot(commitQueue, root) {\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-ignore Reuse the commitQueue variable here so the type changes\n\t\t\tcommitQueue = c._renderCallbacks;\n\t\t\tc._renderCallbacks = [];\n\t\t\tcommitQueue.some(cb => {\n\t\t\t\t// @ts-ignore See above ts-ignore on commitQueue\n\t\t\t\tcb.call(c);\n\t\t\t});\n\t\t} catch (e) {\n\t\t\toptions._catchError(e, c._vnode);\n\t\t}\n\t});\n}\n\n/**\n * Diff two virtual nodes representing DOM element\n * @param {import('../internal').PreactElement} dom The DOM element representing\n * the virtual nodes being diffed\n * @param {import('../internal').VNode} newVNode The new virtual node\n * @param {import('../internal').VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node\n * @param {*} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @returns {import('../internal').PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating\n) {\n\tlet i;\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = newVNode.type;\n\n\t// Tracks entering and exiting SVG namespace when descending through the tree.\n\tif (nodeType === 'svg') isSvg = true;\n\n\tif (excessDomChildren != null) {\n\t\tfor (i = 0; i < excessDomChildren.length; i++) {\n\t\t\tconst child = excessDomChildren[i];\n\n\t\t\t// if newVNode matches an element in excessDomChildren or the `dom`\n\t\t\t// argument matches an element in excessDomChildren, remove it from\n\t\t\t// excessDomChildren so it isn't later removed in diffChildren\n\t\t\t//\n\t\t\t// Note: This takes advantage of Text nodes having `.localName=undefined`,\n\t\t\t// which is loosely equal to Text VNodes' `.type=null`. Elements use string equality.\n\t\t\tif (child != null && (dom == child || child.localName == nodeType)) {\n\t\t\t\tdom = child;\n\t\t\t\texcessDomChildren[i] = null;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (dom == null) {\n\t\tif (nodeType === null) {\n\t\t\t// @ts-ignore createTextNode returns Text, we expect PreactElement\n\t\t\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS(\n\t\t\t\t'http://www.w3.org/2000/svg',\n\t\t\t\t// @ts-ignore We know `newVNode.type` is a string\n\t\t\t\tnodeType\n\t\t\t);\n\t\t} else {\n\t\t\tdom = document.createElement(\n\t\t\t\t// @ts-ignore We know `newVNode.type` is a string\n\t\t\t\tnodeType,\n\t\t\t\tnewProps.is && newProps\n\t\t\t);\n\t\t}\n\n\t\t// we created a new parent, so none of the previously attached children can be reused:\n\t\texcessDomChildren = null;\n\t\t// we are creating a new node, so we can assume this is a new subtree (in case we are hydrating), this deopts the hydrate\n\t\tisHydrating = false;\n\t}\n\n\tif (nodeType === null) {\n\t\t// During hydration, we still have to split merged text from SSR'd HTML.\n\t\tif (oldProps !== newProps && (!isHydrating || dom.data !== newProps)) {\n\t\t\tdom.data = newProps;\n\t\t}\n\t} else {\n\t\tif (excessDomChildren != null) {\n\t\t\texcessDomChildren = EMPTY_ARR.slice.call(dom.childNodes);\n\t\t}\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\tlet oldHtml = oldProps.dangerouslySetInnerHTML;\n\t\tlet newHtml = newProps.dangerouslySetInnerHTML;\n\n\t\t// During hydration, props are not diffed at all (including dangerouslySetInnerHTML)\n\t\t// @TODO we should warn in debug mode when props don't match here.\n\t\tif (!isHydrating) {\n\t\t\t// But, if we are in a situation where we are using existing DOM (e.g. replaceNode)\n\t\t\t// we should read the existing DOM attributes to diff them\n\t\t\tif (excessDomChildren != null) {\n\t\t\t\toldProps = {};\n\t\t\t\tfor (let i = 0; i < dom.attributes.length; i++) {\n\t\t\t\t\toldProps[dom.attributes[i].name] = dom.attributes[i].value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (newHtml || oldHtml) {\n\t\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\t\tif (\n\t\t\t\t\t!newHtml ||\n\t\t\t\t\t((!oldHtml || newHtml.__html != oldHtml.__html) &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML)\n\t\t\t\t) {\n\t\t\t\t\tdom.innerHTML = (newHtml && newHtml.__html) || '';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdiffProps(dom, newProps, oldProps, isSvg, isHydrating);\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\ti = newVNode.props.children;\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tArray.isArray(i) ? i : [i],\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg && nodeType !== 'foreignObject',\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\tdom.firstChild,\n\t\t\t\tisHydrating\n\t\t\t);\n\n\t\t\t// Remove children that are not part of any vnode.\n\t\t\tif (excessDomChildren != null) {\n\t\t\t\tfor (i = excessDomChildren.length; i--; ) {\n\t\t\t\t\tif (excessDomChildren[i] != null) removeNode(excessDomChildren[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// (as above, don't diff props during hydration)\n\t\tif (!isHydrating) {\n\t\t\tif (\n\t\t\t\t'value' in newProps &&\n\t\t\t\t(i = newProps.value) !== undefined &&\n\t\t\t\t// #2756 For the -element the initial value is 0,\n\t\t\t\t// despite the attribute not being present. When the attribute\n\t\t\t\t// is missing the progress bar is treated as indeterminate.\n\t\t\t\t// To fix that we'll always update it when it is 0 for progress elements\n\t\t\t\t(i !== dom.value || (nodeType === 'progress' && !i))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, 'value', i, oldProps.value, false);\n\t\t\t}\n\t\t\tif (\n\t\t\t\t'checked' in newProps &&\n\t\t\t\t(i = newProps.checked) !== undefined &&\n\t\t\t\ti !== dom.checked\n\t\t\t) {\n\t\t\t\tsetProperty(dom, 'checked', i, oldProps.checked, false);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn dom;\n}\n\n/**\n * Invoke or update a ref, depending on whether it is a function or object ref.\n * @param {object|function} ref\n * @param {any} value\n * @param {import('../internal').VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') ref(value);\n\t\telse ref.current = value;\n\t} catch (e) {\n\t\toptions._catchError(e, vnode);\n\t}\n}\n\n/**\n * Unmount a virtual node from the tree and apply DOM changes\n * @param {import('../internal').VNode} vnode The virtual node to unmount\n * @param {import('../internal').VNode} parentVNode The parent of the VNode that\n * initiated the unmount\n * @param {boolean} [skipRemove] Flag that indicates that a parent node of the\n * current element is already detached from the DOM.\n */\nexport function unmount(vnode, parentVNode, skipRemove) {\n\tlet r;\n\tif (options.unmount) options.unmount(vnode);\n\n\tif ((r = vnode.ref)) {\n\t\tif (!r.current || r.current === vnode._dom) applyRef(r, null, parentVNode);\n\t}\n\n\tlet dom;\n\tif (!skipRemove && typeof vnode.type != 'function') {\n\t\tskipRemove = (dom = vnode._dom) != null;\n\t}\n\n\t// Must be set to `undefined` to properly clean up `_nextDom`\n\t// for which `null` is a valid value. See comment in `create-element.js`\n\tvnode._dom = vnode._nextDom = undefined;\n\n\tif ((r = vnode._component) != null) {\n\t\tif (r.componentWillUnmount) {\n\t\t\ttry {\n\t\t\t\tr.componentWillUnmount();\n\t\t\t} catch (e) {\n\t\t\t\toptions._catchError(e, parentVNode);\n\t\t\t}\n\t\t}\n\n\t\tr.base = r._parentDom = null;\n\t}\n\n\tif ((r = vnode._children)) {\n\t\tfor (let i = 0; i < r.length; i++) {\n\t\t\tif (r[i]) unmount(r[i], parentVNode, skipRemove);\n\t\t}\n\t}\n\n\tif (dom != null) removeNode(dom);\n}\n\n/** The `.render()` method for a PFC backing instance. */\nfunction doRender(props, state, context) {\n\treturn this.constructor(props, context);\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\n\nconst CAMEL_PROPS = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;\n\n// Input types for which onchange should not be converted to oninput.\n// type=\"file|checkbox|radio\", plus \"range\" in IE11.\n// (IE11 doesn't support Symbol, which we use here to turn `rad` into `ra` which matches \"range\")\nconst onChangeInputType = type =>\n\t(typeof Symbol != 'undefined' && typeof Symbol() == 'symbol'\n\t\t? /fil|che|rad/i\n\t\t: /fil|che|ra/i\n\t).test(type);\n\n// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\n// `UNSAFE_*` lifecycle hooks\n// Preact only ever invokes the unprefixed methods.\n// Here we provide a base \"fallback\" implementation that calls any defined UNSAFE_ prefixed method.\n// - If a component defines its own `componentDidMount()` (including via defineProperty), use that.\n// - If a component defines `UNSAFE_componentDidMount()`, `componentDidMount` is the alias getter/setter.\n// - If anything assigns to an `UNSAFE_*` property, the assignment is forwarded to the unprefixed property.\n// See https://github.com/preactjs/preact/issues/1941\n[\n\t'componentWillMount',\n\t'componentWillReceiveProps',\n\t'componentWillUpdate'\n].forEach(key => {\n\tObject.defineProperty(Component.prototype, key, {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn this['UNSAFE_' + key];\n\t\t},\n\t\tset(v) {\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: v\n\t\t\t});\n\t\t}\n\t});\n});\n\n/**\n * Proxy render() since React returns a Component reference.\n * @param {import('./internal').VNode} vnode VNode tree to render\n * @param {import('./internal').PreactElement} parent DOM node to render vnode tree into\n * @param {() => void} [callback] Optional callback that will be called after rendering\n * @returns {import('./internal').Component | null} The root component reference or null\n */\nexport function render(vnode, parent, callback) {\n\t// React destroys any existing DOM nodes, see #1727\n\t// ...but only on the first render, see #1828\n\tif (parent._children == null) {\n\t\tparent.textContent = '';\n\t}\n\n\tpreactRender(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nexport function hydrate(vnode, parent, callback) {\n\tpreactHydrate(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nlet oldEventHook = options.event;\noptions.event = e => {\n\tif (oldEventHook) e = oldEventHook(e);\n\te.persist = empty;\n\te.isPropagationStopped = isPropagationStopped;\n\te.isDefaultPrevented = isDefaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\nfunction empty() {}\n\nfunction isPropagationStopped() {\n\treturn this.cancelBubble;\n}\n\nfunction isDefaultPrevented() {\n\treturn this.defaultPrevented;\n}\n\nlet classNameDescriptor = {\n\tconfigurable: true,\n\tget() {\n\t\treturn this.class;\n\t}\n};\n\nlet oldVNodeHook = options.vnode;\noptions.vnode = vnode => {\n\tlet type = vnode.type;\n\tlet props = vnode.props;\n\tlet normalizedProps = props;\n\n\t// only normalize props on Element nodes\n\tif (typeof type === 'string') {\n\t\tnormalizedProps = {};\n\n\t\tfor (let i in props) {\n\t\t\tlet value = props[i];\n\n\t\t\tif (i === 'defaultValue' && 'value' in props && props.value == null) {\n\t\t\t\t// `defaultValue` is treated as a fallback `value` when a value prop is present but null/undefined.\n\t\t\t\t// `defaultValue` for Elements with no value prop is the same as the DOM defaultValue property.\n\t\t\t\ti = 'value';\n\t\t\t} else if (i === 'download' && value === true) {\n\t\t\t\t// Calling `setAttribute` with a truthy value will lead to it being\n\t\t\t\t// passed as a stringified value, e.g. `download=\"true\"`. React\n\t\t\t\t// converts it to an empty string instead, otherwise the attribute\n\t\t\t\t// value will be used as the file name and the file will be called\n\t\t\t\t// \"true\" upon downloading it.\n\t\t\t\tvalue = '';\n\t\t\t} else if (/ondoubleclick/i.test(i)) {\n\t\t\t\ti = 'ondblclick';\n\t\t\t} else if (\n\t\t\t\t/^onchange(textarea|input)/i.test(i + type) &&\n\t\t\t\t!onChangeInputType(props.type)\n\t\t\t) {\n\t\t\t\ti = 'oninput';\n\t\t\t} else if (/^on(Ani|Tra|Tou|BeforeInp)/.test(i)) {\n\t\t\t\ti = i.toLowerCase();\n\t\t\t} else if (CAMEL_PROPS.test(i)) {\n\t\t\t\ti = i.replace(/[A-Z0-9]/, '-$&').toLowerCase();\n\t\t\t} else if (value === null) {\n\t\t\t\tvalue = undefined;\n\t\t\t}\n\n\t\t\tnormalizedProps[i] = value;\n\t\t}\n\n\t\t// Add support for array select values: